[Groonga-commit] groonga/groonga at 318087d [master] Update mruby

Back to archive index

Kouhei Sutou null+****@clear*****
Tue Sep 24 12:27:17 JST 2013


Kouhei Sutou	2013-09-24 12:27:17 +0900 (Tue, 24 Sep 2013)

  New Revision: 318087d54a7d9b525846494717f098918544ddc4
  https://github.com/groonga/groonga/commit/318087d54a7d9b525846494717f098918544ddc4

  Message:
    Update mruby
    
    4728070 ->
    eeac4be

  Added files:
    vendor/mruby-eeac4be/.travis.yml
    vendor/mruby-eeac4be/Rakefile
    vendor/mruby-eeac4be/benchmark/fib39.rb
    vendor/mruby-eeac4be/build_config.rb
    vendor/mruby-eeac4be/doc/compile/README.md
    vendor/mruby-eeac4be/doc/mrbgems/README.md
    vendor/mruby-eeac4be/examples/mrbgems/c_and_ruby_extension_example/mrbgem.rake
    vendor/mruby-eeac4be/examples/mrbgems/c_extension_example/mrbgem.rake
    vendor/mruby-eeac4be/examples/mrbgems/ruby_extension_example/mrbgem.rake
    vendor/mruby-eeac4be/examples/targets/ArduinoDue.rb
    vendor/mruby-eeac4be/examples/targets/chipKitMax32.rb
    vendor/mruby-eeac4be/include/mrbconf.h
    vendor/mruby-eeac4be/include/mruby/data.h
    vendor/mruby-eeac4be/include/mruby/debug.h
    vendor/mruby-eeac4be/include/mruby/dump.h
    vendor/mruby-eeac4be/include/mruby/gc.h
    vendor/mruby-eeac4be/include/mruby/value.h
    vendor/mruby-eeac4be/mrbgems/default.gembox
    vendor/mruby-eeac4be/mrbgems/full-core.gembox
    vendor/mruby-eeac4be/mrbgems/mruby-array-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-array-ext/mrblib/array.rb
    vendor/mruby-eeac4be/mrbgems/mruby-array-ext/src/array.c
    vendor/mruby-eeac4be/mrbgems/mruby-array-ext/test/array.rb
    vendor/mruby-eeac4be/mrbgems/mruby-bin-mirb/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-bin-mruby/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-enum-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-enum-ext/mrblib/enum.rb
    vendor/mruby-eeac4be/mrbgems/mruby-enum-ext/test/enum.rb
    vendor/mruby-eeac4be/mrbgems/mruby-eval/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-eval/src/eval.c
    vendor/mruby-eeac4be/mrbgems/mruby-exit/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-exit/src/mruby-exit.c
    vendor/mruby-eeac4be/mrbgems/mruby-fiber/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-fiber/src/fiber.c
    vendor/mruby-eeac4be/mrbgems/mruby-fiber/test/fiber.rb
    vendor/mruby-eeac4be/mrbgems/mruby-hash-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-hash-ext/mrblib/hash.rb
    vendor/mruby-eeac4be/mrbgems/mruby-hash-ext/src/hash-ext.c
    vendor/mruby-eeac4be/mrbgems/mruby-hash-ext/test/hash.rb
    vendor/mruby-eeac4be/mrbgems/mruby-math/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-math/test/math.rb
    vendor/mruby-eeac4be/mrbgems/mruby-numeric-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-numeric-ext/src/numeric_ext.c
    vendor/mruby-eeac4be/mrbgems/mruby-numeric-ext/test/numeric.rb
    vendor/mruby-eeac4be/mrbgems/mruby-object-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-object-ext/src/object.c
    vendor/mruby-eeac4be/mrbgems/mruby-object-ext/test/nil.rb
    vendor/mruby-eeac4be/mrbgems/mruby-object-ext/test/object.rb
    vendor/mruby-eeac4be/mrbgems/mruby-objectspace/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-objectspace/src/mruby_objectspace.c
    vendor/mruby-eeac4be/mrbgems/mruby-objectspace/test/objectspace.rb
    vendor/mruby-eeac4be/mrbgems/mruby-print/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-print/mrblib/print.rb
    vendor/mruby-eeac4be/mrbgems/mruby-print/src/print.c
    vendor/mruby-eeac4be/mrbgems/mruby-proc-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-proc-ext/mrblib/proc.rb
    vendor/mruby-eeac4be/mrbgems/mruby-proc-ext/src/proc.c
    vendor/mruby-eeac4be/mrbgems/mruby-proc-ext/test/proc.rb
    vendor/mruby-eeac4be/mrbgems/mruby-random/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-random/src/mt19937ar.c
    vendor/mruby-eeac4be/mrbgems/mruby-random/src/mt19937ar.h
    vendor/mruby-eeac4be/mrbgems/mruby-random/src/random.c
    vendor/mruby-eeac4be/mrbgems/mruby-random/src/random.h
    vendor/mruby-eeac4be/mrbgems/mruby-random/test/random.rb
    vendor/mruby-eeac4be/mrbgems/mruby-range-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-range-ext/src/range.c
    vendor/mruby-eeac4be/mrbgems/mruby-range-ext/test/range.rb
    vendor/mruby-eeac4be/mrbgems/mruby-sprintf/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-sprintf/src/kernel.c
    vendor/mruby-eeac4be/mrbgems/mruby-sprintf/test/sprintf.rb
    vendor/mruby-eeac4be/mrbgems/mruby-string-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-string-ext/mrblib/string.rb
    vendor/mruby-eeac4be/mrbgems/mruby-string-ext/src/string.c
    vendor/mruby-eeac4be/mrbgems/mruby-string-ext/test/string.rb
    vendor/mruby-eeac4be/mrbgems/mruby-struct/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-symbol-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-symbol-ext/mrblib/symbol.rb
    vendor/mruby-eeac4be/mrbgems/mruby-symbol-ext/src/symbol.c
    vendor/mruby-eeac4be/mrbgems/mruby-symbol-ext/test/symbol.rb
    vendor/mruby-eeac4be/mrbgems/mruby-time/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-toplevel-ext/mrbgem.rake
    vendor/mruby-eeac4be/mrbgems/mruby-toplevel-ext/mrblib/toplevel.rb
    vendor/mruby-eeac4be/mrbgems/mruby-toplevel-ext/test/toplevel.rb
    vendor/mruby-eeac4be/mrblib/class.rb
    vendor/mruby-eeac4be/mrblib/mrblib.rake
    vendor/mruby-eeac4be/mrblib/print.rb
    vendor/mruby-eeac4be/src/backtrace.c
    vendor/mruby-eeac4be/src/debug.c
    vendor/mruby-eeac4be/src/dump.c
    vendor/mruby-eeac4be/src/keywords
    vendor/mruby-eeac4be/src/load.c
    vendor/mruby-eeac4be/src/mrblib.c
    vendor/mruby-eeac4be/src/mruby_core.rake
    vendor/mruby-eeac4be/src/opcode.h
    vendor/mruby-eeac4be/src/parse.c
    vendor/mruby-eeac4be/src/print.c
    vendor/mruby-eeac4be/src/re.h
    vendor/mruby-eeac4be/src/value_array.h
    vendor/mruby-eeac4be/tasks/libmruby.rake
    vendor/mruby-eeac4be/tasks/mrbgem_spec.rake
    vendor/mruby-eeac4be/tasks/mrbgems.rake
    vendor/mruby-eeac4be/tasks/mruby_build.rake
    vendor/mruby-eeac4be/tasks/mruby_build_commands.rake
    vendor/mruby-eeac4be/tasks/mruby_build_gem.rake
    vendor/mruby-eeac4be/tasks/ruby_ext.rake
    vendor/mruby-eeac4be/tasks/toolchains/androideabi.rake
    vendor/mruby-eeac4be/tasks/toolchains/clang.rake
    vendor/mruby-eeac4be/tasks/toolchains/gcc.rake
    vendor/mruby-eeac4be/tasks/toolchains/vs2010.rake
    vendor/mruby-eeac4be/tasks/toolchains/vs2012.rake
    vendor/mruby-eeac4be/test/assert.rb
    vendor/mruby-eeac4be/test/mrbtest.rake
    vendor/mruby-eeac4be/test/t/comparable.rb
    vendor/mruby-eeac4be/test/t/enumerable.rb
    vendor/mruby-eeac4be/test/t/kernel.rb
    vendor/mruby-eeac4be/test/t/literals.rb
    vendor/mruby-eeac4be/test/t/methods.rb
    vendor/mruby-eeac4be/test/t/module.rb
    vendor/mruby-eeac4be/test/t/nameerror.rb
    vendor/mruby-eeac4be/test/t/proc.rb
    vendor/mruby-eeac4be/test/t/range.rb
    vendor/mruby-eeac4be/test/t/string.rb
    vendor/mruby-eeac4be/tools/mrbc/mrbc.c
    vendor/mruby-eeac4be/tools/mrbc/mrbc.rake
    vendor/mruby-eeac4be/travis_config.rb
  Copied files:
    vendor/mruby-eeac4be/doc/.gitkeep
      (from vendor/mruby-4728070/doc/.gitkeep)
  Removed files:
    vendor/mruby-4728070/.travis.yml
    vendor/mruby-4728070/Rakefile
    vendor/mruby-4728070/build_config.rb
    vendor/mruby-4728070/doc/compile/README.md
    vendor/mruby-4728070/doc/mrbgems/README.md
    vendor/mruby-4728070/doc/mrbgems/c_and_ruby_extension_example/mrbgem.rake
    vendor/mruby-4728070/doc/mrbgems/c_extension_example/mrbgem.rake
    vendor/mruby-4728070/doc/mrbgems/ruby_extension_example/mrbgem.rake
    vendor/mruby-4728070/include/mrbconf.h
    vendor/mruby-4728070/include/mruby/cdump.h
    vendor/mruby-4728070/include/mruby/data.h
    vendor/mruby-4728070/include/mruby/dump.h
    vendor/mruby-4728070/include/mruby/struct.h
    vendor/mruby-4728070/include/mruby/value.h
    vendor/mruby-4728070/mrblib/class.rb
    vendor/mruby-4728070/mrblib/mrblib.rake
    vendor/mruby-4728070/mrblib/print.rb
    vendor/mruby-4728070/src/cdump.c
    vendor/mruby-4728070/src/dump.c
    vendor/mruby-4728070/src/encoding.h
    vendor/mruby-4728070/src/init_ext.c
    vendor/mruby-4728070/src/keywords
    vendor/mruby-4728070/src/load.c
    vendor/mruby-4728070/src/mrblib.c
    vendor/mruby-4728070/src/mruby_core.rake
    vendor/mruby-4728070/src/name2ctype.h
    vendor/mruby-4728070/src/oniguruma.h
    vendor/mruby-4728070/src/opcode.h
    vendor/mruby-4728070/src/parse.c
    vendor/mruby-4728070/src/print.c
    vendor/mruby-4728070/src/re.c
    vendor/mruby-4728070/src/re.h
    vendor/mruby-4728070/src/regcomp.c
    vendor/mruby-4728070/src/regenc.c
    vendor/mruby-4728070/src/regenc.h
    vendor/mruby-4728070/src/regerror.c
    vendor/mruby-4728070/src/regex.h
    vendor/mruby-4728070/src/regexec.c
    vendor/mruby-4728070/src/regint.h
    vendor/mruby-4728070/src/regparse.c
    vendor/mruby-4728070/src/regparse.h
    vendor/mruby-4728070/src/st.c
    vendor/mruby-4728070/src/st.h
    vendor/mruby-4728070/tasks/libmruby.rake
    vendor/mruby-4728070/tasks/mrbgems.rake
    vendor/mruby-4728070/tasks/mruby_build.rake
    vendor/mruby-4728070/tasks/mruby_gem_spec.rake
    vendor/mruby-4728070/tasks/ruby_ext.rake
    vendor/mruby-4728070/tasks/rules.rake
    vendor/mruby-4728070/test/assert.rb
    vendor/mruby-4728070/test/mrbtest.rake
    vendor/mruby-4728070/test/t/comparable.rb
    vendor/mruby-4728070/test/t/enumerable.rb
    vendor/mruby-4728070/test/t/kernel.rb
    vendor/mruby-4728070/test/t/literals.rb
    vendor/mruby-4728070/test/t/math.rb
    vendor/mruby-4728070/test/t/module.rb
    vendor/mruby-4728070/test/t/nameerror.rb
    vendor/mruby-4728070/test/t/proc.rb
    vendor/mruby-4728070/test/t/range.rb
    vendor/mruby-4728070/test/t/string.rb
    vendor/mruby-4728070/tools/mirb/mirb.rake
    vendor/mruby-4728070/tools/mrbc/mrbc.c
    vendor/mruby-4728070/tools/mrbc/mrbc.rake
    vendor/mruby-4728070/tools/mruby/mruby.rake
  Modified files:
    mruby_version
    vendor/mruby/sources.am
  Renamed files:
    vendor/mruby-eeac4be/.gitignore
      (from vendor/mruby-4728070/.gitignore)
    vendor/mruby-eeac4be/AUTHORS
      (from vendor/mruby-4728070/AUTHORS)
    vendor/mruby-eeac4be/CONTRIBUTING.md
      (from vendor/mruby-4728070/CONTRIBUTING.md)
    vendor/mruby-eeac4be/ChangeLog
      (from vendor/mruby-4728070/ChangeLog)
    vendor/mruby-eeac4be/INSTALL
      (from vendor/mruby-4728070/INSTALL)
    vendor/mruby-eeac4be/LEGAL
      (from vendor/mruby-4728070/LEGAL)
    vendor/mruby-eeac4be/MITL
      (from vendor/mruby-4728070/MITL)
    vendor/mruby-eeac4be/NEWS
      (from vendor/mruby-4728070/NEWS)
    vendor/mruby-eeac4be/README.md
      (from vendor/mruby-4728070/README.md)
    vendor/mruby-eeac4be/TODO
      (from vendor/mruby-4728070/TODO)
    vendor/mruby-eeac4be/benchmark/ao-render.rb
      (from vendor/mruby-4728070/benchmark/ao-render.rb)
    vendor/mruby-eeac4be/benchmark/bm_so_lists.rb
      (from vendor/mruby-4728070/benchmark/bm_so_lists.rb)
    vendor/mruby-eeac4be/examples/mrbgems/c_and_ruby_extension_example/README.md
      (from vendor/mruby-4728070/doc/mrbgems/c_and_ruby_extension_example/README.md)
    vendor/mruby-eeac4be/examples/mrbgems/c_and_ruby_extension_example/mrblib/example.rb
      (from vendor/mruby-4728070/doc/mrbgems/c_and_ruby_extension_example/mrblib/example.rb)
    vendor/mruby-eeac4be/examples/mrbgems/c_and_ruby_extension_example/src/example.c
      (from vendor/mruby-4728070/doc/mrbgems/c_and_ruby_extension_example/src/example.c)
    vendor/mruby-eeac4be/examples/mrbgems/c_and_ruby_extension_example/test/example.rb
      (from vendor/mruby-4728070/doc/mrbgems/c_and_ruby_extension_example/test/example.rb)
    vendor/mruby-eeac4be/examples/mrbgems/c_extension_example/README.md
      (from vendor/mruby-4728070/doc/mrbgems/c_extension_example/README.md)
    vendor/mruby-eeac4be/examples/mrbgems/c_extension_example/src/example.c
      (from vendor/mruby-4728070/doc/mrbgems/c_extension_example/src/example.c)
    vendor/mruby-eeac4be/examples/mrbgems/c_extension_example/test/example.c
      (from vendor/mruby-4728070/doc/mrbgems/c_extension_example/test/example.c)
    vendor/mruby-eeac4be/examples/mrbgems/c_extension_example/test/example.rb
      (from vendor/mruby-4728070/doc/mrbgems/c_extension_example/test/example.rb)
    vendor/mruby-eeac4be/examples/mrbgems/ruby_extension_example/README.md
      (from vendor/mruby-4728070/doc/mrbgems/ruby_extension_example/README.md)
    vendor/mruby-eeac4be/examples/mrbgems/ruby_extension_example/mrblib/example.rb
      (from vendor/mruby-4728070/doc/mrbgems/ruby_extension_example/mrblib/example.rb)
    vendor/mruby-eeac4be/examples/mrbgems/ruby_extension_example/test/example.rb
      (from vendor/mruby-4728070/doc/mrbgems/ruby_extension_example/test/example.rb)
    vendor/mruby-eeac4be/include/mruby.h
      (from vendor/mruby-4728070/include/mruby.h)
    vendor/mruby-eeac4be/include/mruby/array.h
      (from vendor/mruby-4728070/include/mruby/array.h)
    vendor/mruby-eeac4be/include/mruby/class.h
      (from vendor/mruby-4728070/include/mruby/class.h)
    vendor/mruby-eeac4be/include/mruby/compile.h
      (from vendor/mruby-4728070/include/mruby/compile.h)
    vendor/mruby-eeac4be/include/mruby/hash.h
      (from vendor/mruby-4728070/include/mruby/hash.h)
    vendor/mruby-eeac4be/include/mruby/irep.h
      (from vendor/mruby-4728070/include/mruby/irep.h)
    vendor/mruby-eeac4be/include/mruby/khash.h
      (from vendor/mruby-4728070/include/mruby/khash.h)
    vendor/mruby-eeac4be/include/mruby/numeric.h
      (from vendor/mruby-4728070/include/mruby/numeric.h)
    vendor/mruby-eeac4be/include/mruby/proc.h
      (from vendor/mruby-4728070/include/mruby/proc.h)
    vendor/mruby-eeac4be/include/mruby/range.h
      (from vendor/mruby-4728070/include/mruby/range.h)
    vendor/mruby-eeac4be/include/mruby/string.h
      (from vendor/mruby-4728070/include/mruby/string.h)
    vendor/mruby-eeac4be/include/mruby/variable.h
      (from vendor/mruby-4728070/include/mruby/variable.h)
    vendor/mruby-eeac4be/minirake
      (from vendor/mruby-4728070/minirake)
    vendor/mruby-eeac4be/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c
      (from vendor/mruby-4728070/tools/mirb/mirb.c)
    vendor/mruby-eeac4be/mrbgems/mruby-bin-mruby/tools/mruby/mruby.c
      (from vendor/mruby-4728070/tools/mruby/mruby.c)
    vendor/mruby-eeac4be/mrbgems/mruby-math/src/math.c
      (from vendor/mruby-4728070/src/math.c)
    vendor/mruby-eeac4be/mrbgems/mruby-sprintf/src/sprintf.c
      (from vendor/mruby-4728070/src/sprintf.c)
    vendor/mruby-eeac4be/mrbgems/mruby-struct/mrblib/struct.rb
      (from vendor/mruby-4728070/mrblib/struct.rb)
    vendor/mruby-eeac4be/mrbgems/mruby-struct/src/struct.c
      (from vendor/mruby-4728070/src/struct.c)
    vendor/mruby-eeac4be/mrbgems/mruby-struct/test/struct.rb
      (from vendor/mruby-4728070/test/t/struct.rb)
    vendor/mruby-eeac4be/mrbgems/mruby-time/src/time.c
      (from vendor/mruby-4728070/src/time.c)
    vendor/mruby-eeac4be/mrbgems/mruby-time/test/time.rb
      (from vendor/mruby-4728070/test/t/time.rb)
    vendor/mruby-eeac4be/mrblib/array.rb
      (from vendor/mruby-4728070/mrblib/array.rb)
    vendor/mruby-eeac4be/mrblib/compar.rb
      (from vendor/mruby-4728070/mrblib/compar.rb)
    vendor/mruby-eeac4be/mrblib/enum.rb
      (from vendor/mruby-4728070/mrblib/enum.rb)
    vendor/mruby-eeac4be/mrblib/error.rb
      (from vendor/mruby-4728070/mrblib/error.rb)
    vendor/mruby-eeac4be/mrblib/hash.rb
      (from vendor/mruby-4728070/mrblib/hash.rb)
    vendor/mruby-eeac4be/mrblib/init_mrblib.c
      (from vendor/mruby-4728070/mrblib/init_mrblib.c)
    vendor/mruby-eeac4be/mrblib/kernel.rb
      (from vendor/mruby-4728070/mrblib/kernel.rb)
    vendor/mruby-eeac4be/mrblib/numeric.rb
      (from vendor/mruby-4728070/mrblib/numeric.rb)
    vendor/mruby-eeac4be/mrblib/range.rb
      (from vendor/mruby-4728070/mrblib/range.rb)
    vendor/mruby-eeac4be/mrblib/string.rb
      (from vendor/mruby-4728070/mrblib/string.rb)
    vendor/mruby-eeac4be/src/.dirstamp
      (from vendor/mruby-4728070/src/ext/.gitkeep)
    vendor/mruby-eeac4be/src/array.c
      (from vendor/mruby-4728070/src/array.c)
    vendor/mruby-eeac4be/src/class.c
      (from vendor/mruby-4728070/src/class.c)
    vendor/mruby-eeac4be/src/codegen.c
      (from vendor/mruby-4728070/src/codegen.c)
    vendor/mruby-eeac4be/src/compar.c
      (from vendor/mruby-4728070/src/compar.c)
    vendor/mruby-eeac4be/src/crc.c
      (from vendor/mruby-4728070/src/crc.c)
    vendor/mruby-eeac4be/src/enum.c
      (from vendor/mruby-4728070/src/enum.c)
    vendor/mruby-eeac4be/src/error.c
      (from vendor/mruby-4728070/src/error.c)
    vendor/mruby-eeac4be/src/error.h
      (from vendor/mruby-4728070/src/error.h)
    vendor/mruby-eeac4be/src/etc.c
      (from vendor/mruby-4728070/src/etc.c)
    vendor/mruby-eeac4be/src/ext/.gitkeep
      (from vendor/mruby-4728070/doc/.gitkeep)
    vendor/mruby-eeac4be/src/gc.c
      (from vendor/mruby-4728070/src/gc.c)
    vendor/mruby-eeac4be/src/hash.c
      (from vendor/mruby-4728070/src/hash.c)
    vendor/mruby-eeac4be/src/init.c
      (from vendor/mruby-4728070/src/init.c)
    vendor/mruby-eeac4be/src/kernel.c
      (from vendor/mruby-4728070/src/kernel.c)
    vendor/mruby-eeac4be/src/lex.def
      (from vendor/mruby-4728070/src/lex.def)
    vendor/mruby-eeac4be/src/node.h
      (from vendor/mruby-4728070/src/node.h)
    vendor/mruby-eeac4be/src/numeric.c
      (from vendor/mruby-4728070/src/numeric.c)
    vendor/mruby-eeac4be/src/object.c
      (from vendor/mruby-4728070/src/object.c)
    vendor/mruby-eeac4be/src/parse.y
      (from vendor/mruby-4728070/src/parse.y)
    vendor/mruby-eeac4be/src/pool.c
      (from vendor/mruby-4728070/src/pool.c)
    vendor/mruby-eeac4be/src/proc.c
      (from vendor/mruby-4728070/src/proc.c)
    vendor/mruby-eeac4be/src/range.c
      (from vendor/mruby-4728070/src/range.c)
    vendor/mruby-eeac4be/src/state.c
      (from vendor/mruby-4728070/src/state.c)
    vendor/mruby-eeac4be/src/string.c
      (from vendor/mruby-4728070/src/string.c)
    vendor/mruby-eeac4be/src/symbol.c
      (from vendor/mruby-4728070/src/symbol.c)
    vendor/mruby-eeac4be/src/variable.c
      (from vendor/mruby-4728070/src/variable.c)
    vendor/mruby-eeac4be/src/vm.c
      (from vendor/mruby-4728070/src/vm.c)
    vendor/mruby-eeac4be/tasks/mrbgems_test.rake
      (from vendor/mruby-4728070/tasks/mrbgems_test.rake)
    vendor/mruby-eeac4be/test/README.md
      (from vendor/mruby-4728070/test/README.md)
    vendor/mruby-eeac4be/test/driver.c
      (from vendor/mruby-4728070/test/driver.c)
    vendor/mruby-eeac4be/test/init_mrbtest.c
      (from vendor/mruby-4728070/test/init_mrbtest.c)
    vendor/mruby-eeac4be/test/report.rb
      (from vendor/mruby-4728070/test/report.rb)
    vendor/mruby-eeac4be/test/t/argumenterror.rb
      (from vendor/mruby-4728070/test/t/argumenterror.rb)
    vendor/mruby-eeac4be/test/t/array.rb
      (from vendor/mruby-4728070/test/t/array.rb)
    vendor/mruby-eeac4be/test/t/basicobject.rb
      (from vendor/mruby-4728070/test/t/basicobject.rb)
    vendor/mruby-eeac4be/test/t/bs_block.rb
      (from vendor/mruby-4728070/test/t/bs_block.rb)
    vendor/mruby-eeac4be/test/t/bs_literal.rb
      (from vendor/mruby-4728070/test/t/bs_literal.rb)
    vendor/mruby-eeac4be/test/t/class.rb
      (from vendor/mruby-4728070/test/t/class.rb)
    vendor/mruby-eeac4be/test/t/exception.rb
      (from vendor/mruby-4728070/test/t/exception.rb)
    vendor/mruby-eeac4be/test/t/false.rb
      (from vendor/mruby-4728070/test/t/false.rb)
    vendor/mruby-eeac4be/test/t/float.rb
      (from vendor/mruby-4728070/test/t/float.rb)
    vendor/mruby-eeac4be/test/t/gc.rb
      (from vendor/mruby-4728070/test/t/gc.rb)
    vendor/mruby-eeac4be/test/t/hash.rb
      (from vendor/mruby-4728070/test/t/hash.rb)
    vendor/mruby-eeac4be/test/t/indexerror.rb
      (from vendor/mruby-4728070/test/t/indexerror.rb)
    vendor/mruby-eeac4be/test/t/integer.rb
      (from vendor/mruby-4728070/test/t/integer.rb)
    vendor/mruby-eeac4be/test/t/localjumperror.rb
      (from vendor/mruby-4728070/test/t/localjumperror.rb)
    vendor/mruby-eeac4be/test/t/nil.rb
      (from vendor/mruby-4728070/test/t/nil.rb)
    vendor/mruby-eeac4be/test/t/nomethoderror.rb
      (from vendor/mruby-4728070/test/t/nomethoderror.rb)
    vendor/mruby-eeac4be/test/t/numeric.rb
      (from vendor/mruby-4728070/test/t/numeric.rb)
    vendor/mruby-eeac4be/test/t/object.rb
      (from vendor/mruby-4728070/test/t/object.rb)
    vendor/mruby-eeac4be/test/t/rangeerror.rb
      (from vendor/mruby-4728070/test/t/rangeerror.rb)
    vendor/mruby-eeac4be/test/t/regexperror.rb
      (from vendor/mruby-4728070/test/t/regexperror.rb)
    vendor/mruby-eeac4be/test/t/runtimeerror.rb
      (from vendor/mruby-4728070/test/t/runtimeerror.rb)
    vendor/mruby-eeac4be/test/t/standarderror.rb
      (from vendor/mruby-4728070/test/t/standarderror.rb)
    vendor/mruby-eeac4be/test/t/symbol.rb
      (from vendor/mruby-4728070/test/t/symbol.rb)
    vendor/mruby-eeac4be/test/t/syntax.rb
      (from vendor/mruby-4728070/test/t/syntax.rb)
    vendor/mruby-eeac4be/test/t/true.rb
      (from vendor/mruby-4728070/test/t/true.rb)
    vendor/mruby-eeac4be/test/t/typeerror.rb
      (from vendor/mruby-4728070/test/t/typeerror.rb)

  Modified: mruby_version (+1 -1)
===================================================================
--- mruby_version    2013-09-24 12:23:02 +0900 (38928b1)
+++ mruby_version    2013-09-24 12:27:17 +0900 (43b6724)
@@ -1 +1 @@
-4728070
+eeac4be

  Deleted: vendor/mruby-4728070/.travis.yml (+0 -3) 100644
===================================================================
--- vendor/mruby-4728070/.travis.yml    2013-09-24 12:23:02 +0900 (109013b)
+++ /dev/null
@@ -1,3 +0,0 @@
-# no installation...
-
-script: "./minirake all test"

  Deleted: vendor/mruby-4728070/Rakefile (+0 -62) 100644
===================================================================
--- vendor/mruby-4728070/Rakefile    2013-09-24 12:23:02 +0900 (fd03360)
+++ /dev/null
@@ -1,62 +0,0 @@
-# encoding: utf-8
-# Build description.
-# basic build file for mruby
-
-load 'tasks/ruby_ext.rake'
-load 'tasks/mruby_build.rake'
-load 'tasks/mruby_gem_spec.rake'
-
-##############################
-# compile flags
-MRUBY_CONFIG = File.expand_path(ENV['MRUBY_CONFIG'] || './build_config.rb')
-load MRUBY_CONFIG
-
-load 'tasks/rules.rake'
-load 'src/mruby_core.rake'
-load 'mrblib/mrblib.rake'
-load 'tools/mrbc/mrbc.rake'
-
-load 'tasks/mrbgems.rake'
-load 'tasks/libmruby.rake'
-load 'tools/mruby/mruby.rake'
-load 'tools/mirb/mirb.rake'
-
-load 'tasks/mrbgems_test.rake'
-load 'test/mrbtest.rake'
-
-##############################
-# generic build targets, rules
-task :default => :all
-
-depfiles = MRuby.targets['host'].bins.map do |bin|
-  install_path = exefile("bin/#{bin}")
-  
-  file install_path => exefile("build/host/bin/#{bin}") do |t|
-    FileUtils.cp t.prerequisites.first, t.name
-  end
-   
-  install_path
-end
-
-depfiles += MRuby.targets.reject {|n,t| n == 'host' }.map { |n, t|
-  ["#{t.build_dir}/lib/libmruby.a"] + t.bins.map { |bin| exefile("#{t.build_dir}/bin/#{bin}") }
-}.flatten
-
-desc "build all targets, install (locally) in-repo"
-task :all => depfiles
-
-desc "run all mruby tests"
-task :test => MRuby.targets.values.map { |t| exefile("#{t.build_dir}/test/mrbtest") } do
-  sh "#{filename exefile('build/host/test/mrbtest')}"
-  if MRuby.targets.count > 1
-    puts "\nYou should run #{MRuby.targets.map{ |t| t.name == 'host' ? nil : "#{t.build_dir}/test/mrbtest" }.compact.join(', ')} on target device."
-  end
-end
-
-desc "clean all built and in-repo installed artifacts"
-task :clean do
-  MRuby.each_target do |t|
-    FileUtils.rm_rf t.build_dir
-  end
-  FileUtils.rm_f depfiles
-end

  Deleted: vendor/mruby-4728070/build_config.rb (+0 -55) 100644
===================================================================
--- vendor/mruby-4728070/build_config.rb    2013-09-24 12:23:02 +0900 (4e80a25)
+++ /dev/null
@@ -1,55 +0,0 @@
-MRuby::Build.new do |conf|
-  conf.cc = ENV['CC'] || 'gcc'
-  conf.ld = ENV['LD'] || 'gcc'
-  conf.ar = ENV['AR'] || 'ar'
-  # conf.bins = %w(mrbc mruby mirb)
-  # conf.cxx = conf.cc
-  # conf.objcc = conf.cc
-  # conf.asm = conf.cc
-  # conf.yacc = 'bison'
-  # conf.gperf = 'gperf'
-  # conf.cat = 'cat'
-  # conf.git = 'git'
-
-  conf.cflags << (ENV['CFLAGS'] || %w(-g -O3 -Wall -Werror-implicit-function-declaration))
-  conf.ldflags << (ENV['LDFLAGS'] || %w(-lm))
-  # conf.cxxflags = []
-  # conf.objccflags = []
-  # conf.asmflags = []
-
-  # conf.gem 'doc/mrbgems/ruby_extension_example'
-  # conf.gem 'doc/mrbgems/c_extension_example'
-  # conf.gem 'doc/mrbgems/c_and_ruby_extension_example'
-  # conf.gem :git => 'git �� github.com:masuidrive/mrbgems-example.git', :branch => 'master'
-end
-
-=begin
-MRuby::CrossBuild.new('i386') do |conf|
-  conf.cc = ENV['CC'] || 'gcc'
-  conf.ld = ENV['LD'] || 'gcc'
-  conf.ar = ENV['AR'] || 'ar'
-  # conf.bins = %w(mrbc mruby mirb)
-  # conf.cxx = 'gcc'
-  # conf.objcc = 'gcc'
-  # conf.asm = 'gcc'
-  # conf.yacc = 'bison'
-  # conf.gperf = 'gperf'
-  # conf.cat = 'cat'
-  # conf.git = 'git'
-
-  if ENV['OS'] == 'Windows_NT' # MinGW
-    conf.cflags = %w(-g -O3 -Wall -Werror-implicit-function-declaration -Di386_MARK)
-    conf.ldflags = %w(-s -static)
-  else
-    conf.cflags << %w(-g -O3 -Wall -Werror-implicit-function-declaration -arch i386)
-    conf.ldflags << %w(-arch i386)
-  end
-  # conf.cxxflags << []
-  # conf.objccflags << []
-  # conf.asmflags << []
-
-  # conf.gem 'doc/mrbgems/ruby_extension_example'
-  # conf.gem 'doc/mrbgems/c_extension_example'
-  # conf.gem 'doc/mrbgems/c_and_ruby_extension_example'
-end
-=end
\ No newline at end of file

  Deleted: vendor/mruby-4728070/doc/compile/README.md (+0 -213) 100644
===================================================================
--- vendor/mruby-4728070/doc/compile/README.md    2013-09-24 12:23:02 +0900 (1684179)
+++ /dev/null
@@ -1,213 +0,0 @@
-# Compile
-
-mruby is using Rake to compile and cross-compile all libraries and
-binaries.
-
-## Prerequisites
-
-To compile mruby out of the source code you need the following tools:
-* C Compiler (i.e. ```gcc```)
-* Linker (i.e. ```gcc```)
-* Archive utility (i.e. ```ar```)
-* Parser generator (i.e. ```bison```)
-* Ruby 1.8 or 1.9
-
-Optional:
-* GIT (to update mruby source and integrate mrbgems easier)
-* C++ compiler (to use GEMs which include *.cpp)
-* Assembler (to use GEMs which include *.asm)
-
-## Usage
-
-Inside of the root directory of the mruby source exist a file
-called *build_config.rb*. This file contains the build configuration
-of mruby and looks like this for example:
-
-```
-MRuby::Build.new do |conf|
-  conf.cc = ENV['CC'] || 'gcc'
-  conf.ld = ENV['LD'] || 'gcc'
-  conf.ar = ENV['AR'] || 'ar'
-
-  conf.cflags << (ENV['CFLAGS'] || %w(-g -O3 -Wall -Werror-implicit-function-declaration))
-  conf.ldflags << (ENV['LDFLAGS'] || %w(-lm))
-end
-```
-
-All tools necessary to compile mruby can be set or modified here.
-The following options can be configurated:
-
-* conf.cc (C compiler)
-* conf.ld (Linker)
-* conf.ar (Archive utility)
-* conf.cxx (C++ compiler)
-* conf.objcc (Object compiler)
-* conf.asm (Assembler)
-* conf.yacc (Parser Generator)
-* conf.gperf (Hash function Generator)
-* conf.cat (Concatenate utility)
-* conf.git (GIT content tracker)
-* conf.cflags (C compiler flags)
-* conf.ldflags (Linker flags)
-* conf.cxxflags (C++ compiler flags) 
-* conf.objccflags (Object compiler flags)
-* conf.asmflags (Assembler flags)
-* conf.gem (A GEM which should be integrated - can be set several times)
-* conf.bins (Build binaries)
-
-To compile just call ```./minirake``` inside of the mruby source root. To
-generate the test tool environment call ```./minirake test```. To clean
-all build files call ```./minirake clean```.
-
-### Cross-Compilation
-
-mruby can also be cross-compiled from one platform to another. To
-achive this the *build_config.rb* needs to contain an instance of
-```MRuby::CrossBuild```. This instance defines the compilation
-tools and flags for the target platform. An example could look
-like this for example:
-
-```
-MRuby::CrossBuild.new('i386') do |conf|
-  conf.cc = ENV['CC'] || 'gcc'
-  conf.ld = ENV['LD'] || 'gcc'
-  conf.ar = ENV['AR'] || 'ar'
-
-  if ENV['OS'] == 'Windows_NT' # MinGW
-    conf.cflags = %w(-g -O3 -Wall -Werror-implicit-function-declaration -Di386_MARK)
-    conf.ldflags = %w(-s -static)
-  else
-    conf.cflags << %w(-g -O3 -Wall -Werror-implicit-function-declaration -arch i386)
-    conf.ldflags << %w(-arch i386)
-  end
-end
-```
-
-You can configurate the same options as for a normal build. You can specified your own build_config.rb with *$MRUBY_CONFIG*.
-
-## Build process
-
-During the build process the directory *build* will be created. The
-directory structure will look like this:
-
-```
-+- build
-   |
-   +-  host
-       |
-       +- bin          <- Binaries (mirb, mrbc and mruby)
-       |
-       +- lib          <- Libraries (libmruby.a and libmruby_core.a)
-       |
-       +- mrblib
-       |
-       +- src
-       |
-       +- test         <- mrbtest tool
-       |
-       +- tools
-          |
-          +- mirb
-          |
-          +- mrbc
-          | 
-          +- mruby
-```
-
-The compilation workflow will look like this:
-* compile all files under *src* (object files will be stored 
-in *build/host/src*
-* generate parser grammar out of *src/parse.y* (generated
-result will be stored in *build/host/src/y.tab.c*
-* compile  *build/host/src/y.tab.c* to  *build/host/src/y.tab.o*
-* create *build/host/lib/libmruby_core.a* out of all object files (C only)
-* create ```build/host/bin/mrbc``` by compile *tools/mrbc/mrbc.c* and
-link with *build/host/lib/libmruby_core.a* 
-* create *build/host/mrblib/mrblib.c* by compiling all *.rb files
-under *mrblib* with ```build/host/bin/mrbc```
-* compile *build/host/mrblib/mrblib.c* to *build/host/mrblib/mrblib.o* 
-* create *build/host/lib/libmruby.a* out of all object files (C and Ruby)
-* create ```build/host/bin/mruby``` by compile *tools/mruby/mruby.c* and
-link with *build/host/lib/libmruby.a*
-* create ```build/host/bin/mirb``` by compile *tools/mirb/mirb.c* and
-link with *build/host/lib/libmruby.a*
-
-### Cross-Compilation
-
-In case of a cross-compilation to *i386* the *build* directory structure looks
-like this:
-
-```
-+- build
-   |
-   +-  host
-   |   |
-   |   +- bin           <- Native Binaries
-   |   |
-   |   +- lib           <- Native Libraries
-   |   |
-   |   +- mrblib
-   |   |
-   |   +- src
-   |   |
-   |   +- test          <- Native mrbtest tool
-   |   |
-   |   +- tools
-   |      |
-   |      +- mirb
-   |      |
-   |      +- mrbc
-   |      | 
-   |      +- mruby 
-   +- i386
-      |
-      +- bin            <- Cross-compiled Binaries
-      |
-      +- lib            <- Cross-compiled Libraries
-      |
-      +- mrblib
-      |
-      +- src
-      |
-      +- test           <- Cross-compiled mrbtest tool
-      |
-      +- tools
-         |
-         +- mirb
-         |
-         +- mrbc
-         | 
-         +- mruby
-```
-
-An extra directory is created for the target platform. In case you
-compile for *i386* a directory called *i386* is created under the
-build direcotry.
-
-The cross compilation workflow starts in the same way as the normal
-compilation by compiling all *native* libraries and binaries.
-Aftwards the cross compilation process proceeds like this:
-* cross-compile all files under *src* (object files will be stored 
-in *build/i386/src*
-* generate parser grammar out of *src/parse.y* (generated
-result will be stored in *build/i386/src/y.tab.c*
-* cross-compile  *build/i386/src/y.tab.c* to  *build/i386/src/y.tab.o*
-* create *build/i386/mrblib/mrblib.c* by compiling all *.rb files
-under *mrblib* with the native ```build/host/bin/mrbc```
-* cross-compile *build/host/mrblib/mrblib.c* to *build/host/mrblib/mrblib.o*
-* create *build/i386/lib/libmruby.a* out of all object files (C and Ruby)
-* create ```build/i386/bin/mruby``` by cross-compile *tools/mruby/mruby.c* and
-link with *build/i386/lib/libmruby.a*
-* create ```build/i386/bin/mirb``` by cross-compile *tools/mirb/mirb.c* and
-link with *build/i386/lib/libmruby.a*
-* create *build/i386/lib/libmruby_core.a* out of all object files (C only)
-* create ```build/i386/bin/mrbc``` by cross-compile *tools/mrbc/mrbc.c* and
-link with *build/i386/lib/libmruby_core.a* 
-
-## Test Environment
-
-mruby's build process includes a test environment. In case you start the testing
-of mruby, a native binary called ```mrbtest``` will be generated and executed.
-This binary contains all test cases which are defined under *test/t*. In case
-of a cross-compilation an additional cross-compiled *mrbtest* binary is 
-generated. This binary you can copy and run on your target system.

  Deleted: vendor/mruby-4728070/doc/mrbgems/README.md (+0 -184) 100644
===================================================================
--- vendor/mruby-4728070/doc/mrbgems/README.md    2013-09-24 12:23:02 +0900 (9e930d8)
+++ /dev/null
@@ -1,184 +0,0 @@
-# mrbgems
-
-mrbgems is a library manager to integrate C and Ruby extension in an easy and
-standardised way into mruby.
-
-## Usage
-
-By default mrbgems is currently deactivated. As soon as you add a GEM to your
-build configuration (*build_config.rb*), mrbgems will be activated and the
-extension integrated.
-
-To add a GEM into the build_config.rb add the following line for example:
-
-```
-conf.gem '/path/to/your/gem/dir'
-```
-
-You can also use a relative path which would be relative from the mruby root:
-
-```
-conf.gem 'doc/mrbgems/ruby_extension_example'
-```
-
-A remote GIT repository location for a GEM is also supported:
-
-```
-conf.gem :git => 'https://github.com/masuidrive/mrbgems-example.git', :branch => 'master'
-```
-
-```
-conf.gem :github => 'masuidrive/mrbgems-example', :branch => 'master'
-```
-
-
-## GEM Structure
-
-The maximal GEM structure looks like this:
-
-```
-+- GEM_NAME         <- Name of GEM
-   |
-   +- mrblib/       <- Source for Ruby extension
-   |
-   +- src/          <- Source for C extension
-   |
-   +- test/         <- Test code (Ruby)
-   |
-   +- mrbgem.rake   <- GEM Specification
-   |
-   +- README.md     <- Readme for GEM
-```
-
-The folder *mrblib* contains pure Ruby files to extend mruby. The folder *src*
-contains C files to extend mruby. The folder *test* contains C and pure Ruby files
-for testing purposes which will be used by ```mrbtest```. *mrbgem.rake* contains
-the specification to compile C and Ruby files. *README.md* is a short description
-of your GEM.
-
-## Build process
-
-mrbgems expects a specifcation file called *mrbgem.rake* inside of your
-GEM direcotry. A typical GEM specification could look like this for example:
-
-```
-MRuby::Gem::Specification.new('c_and_ruby_extension_example') do |spec|
-  spec.license = 'MIT'
-  spec.authors = 'mruby developers'
-end
-```
-
-The mrbgems build process will use this specification to compile Object and Ruby
-files. The compilation results will be add to *lib/libmruby.a*. This file is used
-by tools like ```mruby``` and ```mirb``` to empower the GEM functionality.
-
-In case your GEM has more complex build requirements you can use
-the following options additionally inside of your GEM specification:
-
-* spec.cflags (C compiler flags for this GEM)
-* spec.mruby_cflags (global C compiler flags for everything)
-* spec.mruby_ldflags (global linker flags for everything)
-* spec.mruby_libs (global libraries for everything)
-* spec.mruby_includes (global includes for everything)
-* spec.rbfiles (Ruby files to compile)
-* spec.objs (Object files to compile)
-* spec.test_rbfiles (Ruby test files for integration into mrbtest)
-* spec.test_objs (Object test files for integration into mrbtest)
-* spec.test_preload (Initialization files for mrbtest)
-
-## C Extension
-
-mruby can be extended with C. This is possible by using the C API to
-integrate C libraries into mruby.
-
-### Pre-Conditions
-
-mrbgems expects that you have implemented a C method called
-```mrb_YOURGEMNAME_gem_init(mrb_state)```. ```YOURGEMNAME``` will be replaced
-by the name of your GEM. If you call your GEM *c_extension_example*, your
-initialisation method could look like this:
-
-```
-void
-mrb_c_extension_example_gem_init(mrb_state* mrb) {
-  struct RClass *class_cextension = mrb_define_module(mrb, "CExtension");
-  mrb_define_class_method(mrb, class_cextension, "c_method", mrb_c_method, ARGS_NONE());
-}
-```
-
-### Example
-
-```
-+- c_extension_example/
-   |
-   +- src/
-   |  |
-   |  +- example.c         <- C extension source
-   |
-   +- test/
-   |  |
-   |  +- example.rb        <- Test code for C extension
-   |
-   +- mrbgem.rake          <- GEM specification
-   |
-   +- README.md
-```
-
-## Ruby Extension
-
-mruby can be extended with pure Ruby. It is possible to override existing
-classes or add new ones in this way. Put all Ruby files into the *mrblib*
-folder.
-
-### Pre-Conditions
-
-none
-
-### Example
-
-```
-+- ruby_extension_example/
-   |
-   +- mrblib/
-   |  |
-   |  +- example.rb        <- Ruby extension source
-   |
-   +- test/
-   |  |
-   |  +- example.rb        <- Test code for Ruby extension
-   |
-   +- mrbgem.rake          <- GEM specification
-   |
-   +- README.md
-```
-
-## C and Ruby Extension
-
-mruby can be extended with C and Ruby at the same time. It is possible to
-override existing classes or add new ones in this way. Put all Ruby files
-into the *mrblib* folder and all C files into the *src* folder.
-
-### Pre-Conditions
-
-See C and Ruby example.
-
-### Example
-
-```
-+- c_and_ruby_extension_example/
-   |
-   +- mrblib/
-   |  |
-   |  +- example.rb        <- Ruby extension source
-   |
-   +- src/
-   |  |
-   |  +- example.c         <- C extension source
-   |
-   +- test/
-   |  |
-   |  +- example.rb        <- Test code for C and Ruby extension
-   |
-   +- mrbgem.rake          <- GEM specification
-   |
-   +- README.md

  Deleted: vendor/mruby-4728070/doc/mrbgems/c_and_ruby_extension_example/mrbgem.rake (+0 -17) 100644
===================================================================
--- vendor/mruby-4728070/doc/mrbgems/c_and_ruby_extension_example/mrbgem.rake    2013-09-24 12:23:02 +0900 (9309436)
+++ /dev/null
@@ -1,17 +0,0 @@
-MRuby::Gem::Specification.new('c_and_ruby_extension_example') do |spec|
-  spec.license = 'MIT'
-  spec.authors = 'mruby developers'
- 
-  # spec.cflags = ''
- 
-  # spec.mruby_cflags = ''
-  # spec.mruby_ldflags = ''
-  # spec.mruby_libs = ''
-  # spec.mruby_includes = ["#{spec.dir}/include"]
- 
-  # spec.rbfiles = Dir.glob("#{dir}/mrblib/*.rb")
-  # spec.objs = Dir.glob("#{dir}/src/*.{c,cpp,m,asm,S}").map { |f| f.relative_path_from(dir).pathmap("#{build_dir}/%X.o") }
-  # spec.test_rbfiles = Dir.glob("#{dir}/test/*.rb")
-  # spec.test_objs = Dir.glob("#{dir}/test/*.{c,cpp,m,asm,S}").map { |f| f.relative_path_from(dir).pathmap("#{build_dir}/%X.o") }
-  # spec.test_preload = 'test/assert.rb'
-end

  Deleted: vendor/mruby-4728070/doc/mrbgems/c_extension_example/mrbgem.rake (+0 -17) 100644
===================================================================
--- vendor/mruby-4728070/doc/mrbgems/c_extension_example/mrbgem.rake    2013-09-24 12:23:02 +0900 (289f87d)
+++ /dev/null
@@ -1,17 +0,0 @@
-MRuby::Gem::Specification.new('c_extension_example') do |spec|
-  spec.license = 'MIT'
-  spec.authors = 'mruby developers'
- 
-  # spec.cflags = ''
- 
-  # spec.mruby_cflags = ''
-  # spec.mruby_ldflags = ''
-  # spec.mruby_libs = ''
-  # spec.mruby_includes = ["#{spec.dir}/include"]
-
-  # spec.rbfiles = Dir.glob("#{dir}/mrblib/*.rb")
-  # spec.objs = Dir.glob("#{dir}/src/*.{c,cpp,m,asm,S}").map { |f| f.relative_path_from(dir).pathmap("#{build_dir}/%X.o") }
-  # spec.test_rbfiles = Dir.glob("#{dir}/test/*.rb")
-  # spec.test_objs = Dir.glob("#{dir}/test/*.{c,cpp,m,asm,S}").map { |f| f.relative_path_from(dir).pathmap("#{build_dir}/%X.o") }
-  # spec.test_preload = 'test/assert.rb'
-end

  Deleted: vendor/mruby-4728070/doc/mrbgems/ruby_extension_example/mrbgem.rake (+0 -17) 100644
===================================================================
--- vendor/mruby-4728070/doc/mrbgems/ruby_extension_example/mrbgem.rake    2013-09-24 12:23:02 +0900 (80a2991)
+++ /dev/null
@@ -1,17 +0,0 @@
-MRuby::Gem::Specification.new('ruby_extension_example') do |spec|
-  spec.license = 'MIT'
-  spec.authors = 'mruby developers'
- 
-  # spec.cflags = ''
- 
-  # spec.mruby_cflags = ''
-  # spec.mruby_ldflags = ''
-  # spec.mruby_libs = ''
-  # spec.mruby_includes = ["#{spec.dir}/include"]
- 
-  # spec.rbfiles = Dir.glob("#{dir}/mrblib/*.rb")
-  # spec.objs = Dir.glob("#{dir}/src/*.{c,cpp,m,asm,S}").map { |f| f.relative_path_from(dir).pathmap("#{build_dir}/%X.o") }
-  # spec.test_rbfiles = Dir.glob("#{dir}/test/*.rb")
-  # spec.test_objs = Dir.glob("#{dir}/test/*.{c,cpp,m,asm,S}").map { |f| f.relative_path_from(dir).pathmap("#{build_dir}/%X.o") }
-  # spec.test_preload = 'test/assert.rb'
-end

  Deleted: vendor/mruby-4728070/include/mrbconf.h (+0 -135) 100644
===================================================================
--- vendor/mruby-4728070/include/mrbconf.h    2013-09-24 12:23:02 +0900 (80c8bd6)
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
-** mrbconf.h - mruby core configuration
-**
-** See Copyright Notice in mruby.h
-*/
-
-#ifndef MRUBYCONF_H
-#define MRUBYCONF_H
-
-#include <stdint.h>
-
-/* configuration options: */
-/* add -DMRB_USE_FLOAT to use float instead of double for floating point numbers */
-//#define MRB_USE_FLOAT
-
-/* add -DMRB_INT64 to use 64bit integer for mrb_int */
-//#define MRB_INT64
-
-/* represent mrb_value in boxed double; conflict with MRB_USE_FLOAT */
-//#define MRB_NAN_BOXING
-
-/* define on big endian machines; used by MRB_NAN_BOXING */
-//#define MRB_ENDIAN_BIG
-
-/* argv max size in mrb_funcall */
-//#define MRB_FUNCALL_ARGC_MAX 16 
-
-/* number of object per heap page */
-//#define MRB_HEAP_PAGE_SIZE 1024
-
-/* use segmented list for IV table */
-//#define MRB_USE_IV_SEGLIST
-
-/* initial size for IV khash; ignored when MRB_USE_IV_SEGLIST is set */
-//#define MRB_IVHASH_INIT_SIZE 8
-
-/* default size of khash table bucket */
-//#define KHASH_DEFAULT_SIZE 32
-
-/* allocated memory address alignment */
-//#define POOL_ALIGNMENT 4
-
-/* page size of memory pool */
-//#define POOL_PAGE_SIZE 16000
-
-/* -DDISABLE_XXXX to drop the feature */
-#define DISABLE_REGEXP	        /* regular expression classes */
-//#define DISABLE_SPRINTF	/* Kernel.sprintf method */
-//#define DISABLE_MATH		/* Math functions */
-//#define DISABLE_TIME		/* Time class */
-//#define DISABLE_STRUCT	/* Struct class */
-//#define DISABLE_STDIO		/* use of stdio */
-
-/* Now DISABLE_GEMS is added as a command line flag in Rakefile, */
-/* we do not need to set it here. */
-
-#undef  HAVE_UNISTD_H /* WINDOWS */
-#define HAVE_UNISTD_H /* LINUX */
-
-/* end of configuration */
-
-#ifdef MRB_USE_FLOAT
-  typedef float mrb_float;
-# define mrb_float_to_str(buf, i) sprintf((buf), "%.7e", (i))
-# define str_to_mrb_float(buf) (mrb_float)strtof((buf),NULL)
-#else
-  typedef double mrb_float;
-# define mrb_float_to_str(buf, i) sprintf((buf), "%.16e", (i))
-# define str_to_mrb_float(buf) (mrb_float)strtod((buf),NULL)
-#endif
-
-#ifdef MRB_NAN_BOXING
-# ifdef MRB_INT64
-#  error Cannot use NaN boxing when mrb_int is 64bit
-# else
-   typedef int32_t mrb_int;
-#  define MRB_INT_MIN INT32_MIN
-#  define MRB_INT_MAX INT32_MAX
-#  define mrb_int_to_str(buf, i) sprintf((buf), "%d", (i))
-#  define str_to_mrb_int(buf) (mrb_int)strtol((buf), NULL, 10)
-# endif
-#else
-# ifdef MRB_INT64
-   typedef int64_t mrb_int;
-#  define MRB_INT_MIN INT64_MIN
-#  define MRB_INT_MAX INT64_MAX
-#  define mrb_int_to_str(buf, i) sprintf((buf), "%ld", (i))
-#  define str_to_mrb_int(buf) (mrb_int)strtoll((buf), NULL, 10)
-# else
-   typedef int mrb_int;
-#  define MRB_INT_MIN INT_MIN
-#  define MRB_INT_MAX INT_MAX
-#  define mrb_int_to_str(buf, i) sprintf((buf), "%d", (i))
-#  define str_to_mrb_int(buf) (mrb_int)strtol((buf), NULL, 10)
-# endif
-#endif
-typedef short mrb_sym;
-
-/* define ENABLE_XXXX from DISABLE_XXX */
-#ifndef DISABLE_REGEXP
-#define ENABLE_REGEXP
-#endif
-#ifndef DISABLE_SPRINTF
-#define ENABLE_SPRINTF
-#endif
-#ifndef DISABLE_MATH
-#define ENABLE_MATH
-#endif
-#ifndef DISABLE_TIME
-#define ENABLE_TIME
-#endif
-#ifndef DISABLE_STRUCT
-#define ENABLE_STRUCT
-#endif
-#ifndef DISABLE_STDIO
-#define ENABLE_STDIO
-#endif
-
-#ifndef FALSE
-# define FALSE 0
-#endif
-
-#ifndef TRUE
-# define TRUE 1
-#endif
-
-#ifdef _MSC_VER
-# define inline __inline
-# define snprintf _snprintf
-# define isnan _isnan
-# define isinf(n) (!_finite(n) && !_isnan(n))
-# define strtoll _strtoi64
-#endif
-
-#endif  /* MRUBYCONF_H */

  Deleted: vendor/mruby-4728070/include/mruby/cdump.h (+0 -34) 100644
===================================================================
--- vendor/mruby-4728070/include/mruby/cdump.h    2013-09-24 12:23:02 +0900 (ccb5fc0)
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
-** mruby/cdump.h - mruby binary dumper (C source format)
-**
-** See Copyright Notice in mruby.h
-*/
-
-#ifndef MRUBY_CDUMP_H
-#define MRUBY_CDUMP_H
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-#include "mruby.h"
-#ifdef DISABLE_STDIO
-# error "Configuration conflict. Can't use with DISABLE_STDIO option."
-#else
-# include <stdio.h>
-#endif
-
-int mrb_cdump_irep(mrb_state *mrb, int n, FILE *f,const char *initname);
-
-/* error code */
-#define MRB_CDUMP_OK                     0
-#define MRB_CDUMP_GENERAL_FAILURE        -1
-#define MRB_CDUMP_WRITE_FAULT            -2
-#define MRB_CDUMP_INVALID_IREP           -6
-#define MRB_CDUMP_INVALID_ARGUMENT       -7
-
-#if defined(__cplusplus)
-}  /* extern "C" { */
-#endif
-
-#endif  /* MRUBY_CDUMP_H */

  Deleted: vendor/mruby-4728070/include/mruby/data.h (+0 -50) 100644
===================================================================
--- vendor/mruby-4728070/include/mruby/data.h    2013-09-24 12:23:02 +0900 (ed49393)
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
-** mruby/data.h - Data class
-**
-** See Copyright Notice in mruby.h
-*/
-
-#ifndef MRUBY_DATA_H
-#define MRUBY_DATA_H 1
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-struct mrb_data_type {
-  const char *struct_name;
-  void (*dfree)(mrb_state *mrb, void*);
-};
-
-struct RData {
-  MRB_OBJECT_HEADER;
-  struct iv_tbl *iv;
-  struct mrb_data_type *type;
-  void *data;
-};
-
-struct RData *mrb_data_object_alloc(mrb_state *mrb, struct RClass* klass, void *datap, const struct mrb_data_type *type);
-
-#define Data_Wrap_Struct(mrb,klass,type,ptr)\
-  mrb_data_object_alloc(mrb,klass,ptr,type)
-
-#define Data_Make_Struct(mrb,klass,strct,type,sval) (\
-  sval = mrb_malloc(mrb, sizeof(strct)),\
-  { static const strct zero = { 0 }; *sval = zero},\
-  Data_Wrap_Struct(mrb,klass,type,sval)\
-)
-
-#define RDATA(obj)         ((struct RData *)((obj).value.p))
-#define DATA_PTR(d)        (RDATA(d)->data)
-#define DATA_TYPE(d)       (RDATA(d)->type)
-void *mrb_get_datatype(mrb_state *mrb, mrb_value, const struct mrb_data_type*);
-void *mrb_check_datatype(mrb_state *mrb, mrb_value, const struct mrb_data_type*);
-#define Data_Get_Struct(mrb,obj,type,sval) do {\
-  *(void**)&sval = mrb_check_datatype(mrb, obj, type); \
-} while (0)
-
-#if defined(__cplusplus)
-}  /* extern "C" { */
-#endif
-
-#endif /* MRUBY_DATA_H */

  Deleted: vendor/mruby-4728070/include/mruby/dump.h (+0 -143) 100644
===================================================================
--- vendor/mruby-4728070/include/mruby/dump.h    2013-09-24 12:23:02 +0900 (650651a)
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
-** mruby/dump.h - mruby binary dumper (Rite binary format)
-**
-** See Copyright Notice in mruby.h
-*/
-
-#ifndef MRUBY_DUMP_H
-#define MRUBY_DUMP_H
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-#include "mruby.h"
-#include <stdio.h>
-#include <stdint.h>
-
-int mrb_dump_irep(mrb_state*,int,FILE*);
-int mrb_read_irep(mrb_state*,const char*);
-int mrb_read_irep_file(mrb_state*,FILE*);
-/* mrb_value mrb_load_irep(mrb_state*,const char*); */ /* declared in <irep.h> */
-mrb_value mrb_load_irep_file(mrb_state*,FILE*);
-
-int mrb_bdump_irep(mrb_state *mrb, int n, FILE *f,const char *initname);
-
-/* dump type */
-#define DUMP_TYPE_CODE 0
-#define DUMP_TYPE_BIN  1
-#define DUMP_TYPE_HEX  2
-
-/* dump/load error code
- *
- * NOTE: MRB_DUMP_GENERAL_FAILURE is caused by
- * unspecified issues like malloc failed.
- */
-#define MRB_DUMP_OK                     0
-#define MRB_DUMP_GENERAL_FAILURE        -1
-#define MRB_DUMP_WRITE_FAULT            -2
-#define MRB_DUMP_READ_FAULT             -3
-#define MRB_DUMP_CRC_ERROR              -4
-#define MRB_DUMP_INVALID_FILE_HEADER    -5
-#define MRB_DUMP_INVALID_IREP           -6
-#define MRB_DUMP_INVALID_ARGUMENT       -7
-
-/* size of long/int/short value on dump/load */
-#define MRB_DUMP_SIZE_OF_LONG          4
-#define MRB_DUMP_SIZE_OF_INT           4
-#define MRB_DUMP_SIZE_OF_SHORT         2
-#define MRB_DUMP_SIZE_OF_CHAR          1
-
-/* null symbol length */
-#define MRB_DUMP_NULL_SYM_LEN          0xFFFF
-
-/* Use HEX format string */
-#define RITE_FILE_IS_HEX
-
-#ifdef RITE_FILE_IS_HEX
-#define RITE_FILE_HEX_SIZE             2
-#else
-#define RITE_FILE_HEX_SIZE             1
-#endif
-
-/* Rite Binary File header */
-#define RITE_FILE_IDENFIFIER           "RITE"
-#define RITE_FILE_FORMAT_VER           "00090000"
-#define RITE_VM_VER                    "00090000"
-#define RITE_COMPILER_TYPE             "MATZ    "
-#define RITE_COMPILER_VER              "00090000"
-#define RITE_RESERVED                  "        "
-
-/* irep header */
-#define RITE_IREP_IDENFIFIER           'S'
-#define RITE_IREP_TYPE_CLASS           'C'
-#define RITE_IREP_TYPE_MODULE          'M'
-
-#define MRB_DUMP_DEFAULT_STR_LEN       128
-
-//Rite Binary file_header
-typedef struct _rite_binary_header {
-  unsigned char    rbfi[4];        //Rite Binary File Identify
-  unsigned char    rbfv[8];        //Rite Binary File Format Version
-  unsigned char    risv[8];        //Rite Instruction Specification Version
-  unsigned char    rct[8];         //Rite Compiler Type
-  unsigned char    rcv[8];         //Rite Compiler Version
-  unsigned char    rbds[4];        //Rite Binary Data Size
-  unsigned char    nirep[2];       //Number of ireps
-  unsigned char    sirep[2];       //Start index
-  unsigned char    rsv[8];         //Reserved
-} rite_binary_header;
-
-// Rite File file_header
-typedef struct _rite_file_header {
-  unsigned char    rbfi[4];        //Rite Binary File Identify
-  unsigned char    rbfv[8];        //Rite Binary File Format Version
-  unsigned char    risv[8];        //Rite Instruction Specification Version
-  unsigned char    rct[8];         //Rite Compiler Type
-  unsigned char    rcv[8];         //Rite Compiler Version
-  unsigned char    rbds[8];        //Rite Binary Data Size
-  unsigned char    nirep[4];       //Number of ireps
-  unsigned char    sirep[4];       //Start index
-  unsigned char    rsv[8];         //Reserved
-  unsigned char    hcrc[4];        //HCRC
-} rite_file_header;
-
-static inline int
-uint16_to_bin(uint16_t s, char *bin)
-{
-  *bin++ = (s >> 8) & 0xff;
-  *bin   = s & 0xff;
-  return (MRB_DUMP_SIZE_OF_SHORT);
-}
-
-static inline int
-uint32_to_bin(uint32_t l, char *bin)
-{
-  *bin++ = (l >> 24) & 0xff;
-  *bin++ = (l >> 16) & 0xff;
-  *bin++ = (l >> 8) & 0xff;
-  *bin   = l & 0xff;
-  return (MRB_DUMP_SIZE_OF_LONG);
-}
-
-static inline uint32_t
-bin_to_uint32(unsigned char bin[])
-{
-  return (uint32_t)bin[0] << 24 |
-         (uint32_t)bin[1] << 16 |
-         (uint32_t)bin[2] << 8  |
-         (uint32_t)bin[3];
-}
-
-static inline uint16_t
-bin_to_uint16(unsigned char bin[])
-{
-  return (uint16_t)bin[0] << 8 |
-         (uint16_t)bin[1];
-}
-
-#if defined(__cplusplus)
-}  /* extern "C" { */
-#endif
-
-#endif  /* MRUBY_DUMP_H */

  Deleted: vendor/mruby-4728070/include/mruby/struct.h (+0 -27) 100644
===================================================================
--- vendor/mruby-4728070/include/mruby/struct.h    2013-09-24 12:23:02 +0900 (cfe6df1)
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
-** mruby/struct.h - Struct class
-**
-** See Copyright Notice in mruby.h
-*/
-
-#ifndef MRUBY_STRUCT_H
-#define MRUBY_STRUCT_H
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-struct RStruct {
-    struct RBasic basic;
-    long len;
-    mrb_value *ptr;
-};
-#define RSTRUCT(st)     ((struct RStruct*)((st).value.p))
-#define RSTRUCT_LEN(st) ((int)(RSTRUCT(st)->len))
-#define RSTRUCT_PTR(st) (RSTRUCT(st)->ptr)
-
-#if defined(__cplusplus)
-}  /* extern "C" { */
-#endif
-
-#endif /* MRUBY_STRUCT_H */

  Deleted: vendor/mruby-4728070/include/mruby/value.h (+0 -280) 100644
===================================================================
--- vendor/mruby-4728070/include/mruby/value.h    2013-09-24 12:23:02 +0900 (ab56c97)
+++ /dev/null
@@ -1,280 +0,0 @@
-/*
-** mruby/value.h - mrb_value definition
-**
-** See Copyright Notice in mruby.h
-*/
-
-#ifndef MRUBY_VALUE_H
-#define MRUBY_VALUE_H
-
-#ifndef MRB_NAN_BOXING
-
-enum mrb_vtype {
-  MRB_TT_FALSE = 0,   /*   0 */
-  MRB_TT_FREE,        /*   1 */
-  MRB_TT_TRUE,        /*   2 */
-  MRB_TT_FIXNUM,      /*   3 */
-  MRB_TT_SYMBOL,      /*   4 */
-  MRB_TT_UNDEF,       /*   5 */
-  MRB_TT_FLOAT,       /*   6 */
-  MRB_TT_VOIDP,       /*   7 */
-  MRB_TT_MAIN,        /*   8 */
-  MRB_TT_OBJECT,      /*   9 */
-  MRB_TT_CLASS,       /*  10 */
-  MRB_TT_MODULE,      /*  11 */
-  MRB_TT_ICLASS,      /*  12 */
-  MRB_TT_SCLASS,      /*  13 */
-  MRB_TT_PROC,        /*  14 */
-  MRB_TT_ARRAY,       /*  15 */
-  MRB_TT_HASH,        /*  16 */
-  MRB_TT_STRING,      /*  17 */
-  MRB_TT_RANGE,       /*  18 */
-  MRB_TT_REGEX,       /*  19 */
-  MRB_TT_STRUCT,      /*  20 */
-  MRB_TT_EXCEPTION,   /*  21 */
-  MRB_TT_MATCH,       /*  22 */
-  MRB_TT_FILE,        /*  23 */
-  MRB_TT_ENV,         /*  24 */
-  MRB_TT_DATA,        /*  25 */
-  MRB_TT_MAXDEFINE    /*  26 */
-};
-
-typedef struct mrb_value {
-  union {
-    mrb_float f;
-    void *p;
-    mrb_int i;
-    mrb_sym sym;
-  } value;
-  enum mrb_vtype tt:8;
-} mrb_value;
-
-#define mrb_type(o)   (o).tt
-#define mrb_float(o)  (o).value.f
-
-#define MRB_SET_VALUE(o, ttt, attr, v) do {\
-  (o).tt = ttt;\
-  (o).attr = v;\
-} while (0);
-
-static inline mrb_value
-mrb_float_value(mrb_float f)
-{
-  mrb_value v;
-
-  MRB_SET_VALUE(v, MRB_TT_FLOAT, value.f, f);
-  return v;
-}
-#else  /* MRB_NAN_BOXING */
-
-#ifdef MRB_USE_FLOAT
-# error ---->> MRB_NAN_BOXING and MRB_USE_FLOAT conflict <<----
-#endif
-
-enum mrb_vtype {
-  MRB_TT_FALSE = 1,   /*   1 */
-  MRB_TT_FREE,        /*   2 */
-  MRB_TT_TRUE,        /*   3 */
-  MRB_TT_FIXNUM,      /*   4 */
-  MRB_TT_SYMBOL,      /*   5 */
-  MRB_TT_UNDEF,       /*   6 */
-  MRB_TT_FLOAT,       /*   7 */
-  MRB_TT_VOIDP,       /*   8 */
-  MRB_TT_MAIN,        /*   9 */
-  MRB_TT_OBJECT,      /*  10 */
-  MRB_TT_CLASS,       /*  11 */
-  MRB_TT_MODULE,      /*  12 */
-  MRB_TT_ICLASS,      /*  13 */
-  MRB_TT_SCLASS,      /*  14 */
-  MRB_TT_PROC,        /*  15 */
-  MRB_TT_ARRAY,       /*  16 */
-  MRB_TT_HASH,        /*  17 */
-  MRB_TT_STRING,      /*  18 */
-  MRB_TT_RANGE,       /*  19 */
-  MRB_TT_REGEX,       /*  20 */
-  MRB_TT_STRUCT,      /*  21 */
-  MRB_TT_EXCEPTION,   /*  22 */
-  MRB_TT_MATCH,       /*  23 */
-  MRB_TT_FILE,        /*  24 */
-  MRB_TT_ENV,         /*  25 */
-  MRB_TT_DATA,        /*  26 */
-  MRB_TT_MAXDEFINE    /*  27 */
-};
-
-#ifdef MRB_ENDIAN_BIG
-#define MRB_ENDIAN_LOHI(a,b) a b
-#else
-#define MRB_ENDIAN_LOHI(a,b) b a
-#endif
-
-typedef struct mrb_value {
-  union {
-    mrb_float f;
-    struct {
-      MRB_ENDIAN_LOHI(
- 	uint32_t ttt;
-        ,union {
-	  void *p;
-	  mrb_int i;
-	  mrb_sym sym;
-	} value;
-       )
-    };
-  };
-} mrb_value;
-
-#define mrb_tt(o)     ((o).ttt & 0xff)
-#define mrb_mktt(tt)  (0xfff00000|(tt))
-#define mrb_type(o)   ((uint32_t)0xfff00000 < (o).ttt ? mrb_tt(o) : MRB_TT_FLOAT)
-#define mrb_float(o)  (o).f
-
-#define MRB_SET_VALUE(o, tt, attr, v) do {\
-  (o).ttt = mrb_mktt(tt);\
-  (o).attr = v;\
-} while (0);
-
-static inline mrb_value
-mrb_float_value(mrb_float f)
-{
-  mrb_value v;
-
-  if (f != f) {
-    v.ttt = 0x7ff80000;
-    v.value.i = 0;
-  } else {
-    v.f = f;
-  }
-  return v;
-}
-#endif	/* MRB_NAN_BOXING */
-
-#define mrb_fixnum(o) (o).value.i
-#define mrb_symbol(o) (o).value.sym
-#define mrb_object(o) ((struct RBasic *) (o).value.p)
-#define mrb_voidp(o) (o).value.p
-#define mrb_fixnum_p(o) (mrb_type(o) == MRB_TT_FIXNUM)
-#define mrb_float_p(o) (mrb_type(o) == MRB_TT_FLOAT)
-#define mrb_undef_p(o) (mrb_type(o) == MRB_TT_UNDEF)
-#define mrb_nil_p(o)  (mrb_type(o) == MRB_TT_FALSE && !(o).value.i)
-#define mrb_symbol_p(o) (mrb_type(o) == MRB_TT_SYMBOL)
-#define mrb_array_p(o) (mrb_type(o) == MRB_TT_ARRAY)
-#define mrb_string_p(o) (mrb_type(o) == MRB_TT_STRING)
-#define mrb_hash_p(o) (mrb_type(o) == MRB_TT_HASH)
-#define mrb_voidp_p(o) (mrb_type(o) == MRB_TT_VOIDP)
-#define mrb_test(o)   (mrb_type(o) != MRB_TT_FALSE)
-
-#define MRB_OBJECT_HEADER \
-  enum mrb_vtype tt:8;\
-  unsigned int color:3;\
-  unsigned int flags:21;\
-  struct RClass *c;\
-  struct RBasic *gcnext
-
-/* white: 011, black: 100, gray: 000 */
-#define MRB_GC_GRAY 0
-#define MRB_GC_WHITE_A 1
-#define MRB_GC_WHITE_B (1 << 1)
-#define MRB_GC_BLACK (1 << 2)
-#define MRB_GC_WHITES (MRB_GC_WHITE_A | MRB_GC_WHITE_B)
-#define MRB_GC_COLOR_MASK 7
-
-#define paint_gray(o) ((o)->color = MRB_GC_GRAY)
-#define paint_black(o) ((o)->color = MRB_GC_BLACK)
-#define paint_white(o) ((o)->color = MRB_GC_WHITES)
-#define paint_partial_white(s, o) ((o)->color = (s)->current_white_part)
-#define is_gray(o) ((o)->color == MRB_GC_GRAY)
-#define is_white(o) ((o)->color & MRB_GC_WHITES)
-#define is_black(o) ((o)->color & MRB_GC_BLACK)
-#define is_dead(s, o) (((o)->color & other_white_part(s) & MRB_GC_WHITES) || (o)->tt == MRB_TT_FREE)
-#define flip_white_part(s) ((s)->current_white_part = other_white_part(s))
-#define other_white_part(s) ((s)->current_white_part ^ MRB_GC_WHITES)
-
-struct RBasic {
-  MRB_OBJECT_HEADER;
-};
-
-#define mrb_basic(v)     ((struct RBasic*)((v).value.p))
-
-struct RObject {
-  MRB_OBJECT_HEADER;
-  struct iv_tbl *iv;
-};
-
-#define mrb_obj_ptr(v)   ((struct RObject*)((v).value.p))
-#define mrb_immediate_p(x) (mrb_type(x) <= MRB_TT_MAIN)
-#define mrb_special_const_p(x) mrb_immediate_p(x)
-
-static inline mrb_value
-mrb_fixnum_value(mrb_int i)
-{
-  mrb_value v;
-
-  MRB_SET_VALUE(v, MRB_TT_FIXNUM, value.i, i);
-  return v;
-}
-
-static inline mrb_value
-mrb_symbol_value(mrb_sym i)
-{
-  mrb_value v;
-
-  MRB_SET_VALUE(v, MRB_TT_SYMBOL, value.sym, i);
-  return v;
-}
-
-static inline mrb_value
-mrb_obj_value(void *p)
-{
-  mrb_value v;
-  struct RBasic *b = (struct RBasic*)p;
-
-  MRB_SET_VALUE(v, b->tt, value.p, p);
-  return v;
-}
-
-static inline mrb_value
-mrb_voidp_value(void *p)
-{
-  mrb_value v;
-
-  MRB_SET_VALUE(v, MRB_TT_VOIDP, value.p, p);
-  return v;
-}
-
-static inline mrb_value
-mrb_false_value(void)
-{
-  mrb_value v;
-
-  MRB_SET_VALUE(v, MRB_TT_FALSE, value.i, 1);
-  return v;
-}
-
-static inline mrb_value
-mrb_nil_value(void)
-{
-  mrb_value v;
-
-  MRB_SET_VALUE(v, MRB_TT_FALSE, value.i, 0);
-  return v;
-}
-
-static inline mrb_value
-mrb_true_value(void)
-{
-  mrb_value v;
-
-  MRB_SET_VALUE(v, MRB_TT_TRUE, value.i, 1);
-  return v;
-}
-
-static inline mrb_value
-mrb_undef_value(void)
-{
-  mrb_value v;
-
-  MRB_SET_VALUE(v, MRB_TT_UNDEF, value.i, 0);
-  return v;
-}
-
-#endif  /* MRUBY_OBJECT_H */

  Deleted: vendor/mruby-4728070/mrblib/class.rb (+0 -26) 100644
===================================================================
--- vendor/mruby-4728070/mrblib/class.rb    2013-09-24 12:23:02 +0900 (4f268b6)
+++ /dev/null
@@ -1,26 +0,0 @@
-class Module
-  # 15.2.2.4.13
-  def attr_reader(*names)
-    names.each{|name|
-      name2 = ('@'+name.to_s).intern
-      define_method(name){self.instance_variable_get(name2)}
-    }
-  end
-  # 15.2.2.4.14
-  def attr_writer(*names)
-    names.each{|name|
-      name2 = ('@'+name.to_s).intern
-      name = (name.to_s+"=").intern
-      define_method(name){|v|self.instance_variable_set(name2,v)}
-    }
-  end
-  # 15.2.2.4.12
-  def attr_accessor(*names)
-    attr_reader(*names)
-    attr_writer(*names)
-  end
-  # 15.2.2.4.11
-  def attr(name)
-    attr_reader(name)
-  end
-end

  Deleted: vendor/mruby-4728070/mrblib/mrblib.rake (+0 -15) 100644
===================================================================
--- vendor/mruby-4728070/mrblib/mrblib.rake    2013-09-24 12:23:02 +0900 (5dab4ce)
+++ /dev/null
@@ -1,15 +0,0 @@
-dir = File.dirname(__FILE__).sub(%r|^\./|, '')
-
-MRuby.each_target do
-  self.libmruby << "#{build_dir}/#{dir}/mrblib.o"
-
-  file "#{build_dir}/#{dir}/mrblib.o" => "#{build_dir}/#{dir}/mrblib.c"
-  file "#{build_dir}/#{dir}/mrblib.c" => [mrbcfile] + Dir.glob("#{dir}/*.rb") do |t|
-    mrbc, *rbfiles = t.prerequisites
-    FileUtils.mkdir_p File.dirname(t.name)
-    open(t.name, 'w') do |f|
-      f.puts File.read("#{dir}/init_mrblib.c")
-      compile_mruby f, rbfiles, 'mrblib_irep'
-    end
-  end
-end

  Deleted: vendor/mruby-4728070/mrblib/print.rb (+0 -80) 100644
===================================================================
--- vendor/mruby-4728070/mrblib/print.rb    2013-09-24 12:23:02 +0900 (68c7837)
+++ /dev/null
@@ -1,80 +0,0 @@
-##
-# Kernel
-#
-# ISO 15.3.1
-module Kernel
-  unless Kernel.respond_to?(:__printstr__)
-    def print(*a)
-      raise NotImplementedError.new('print not available')
-    end
-    def puts(*a)
-      raise NotImplementedError.new('puts not available')
-    end
-    def p(*a)
-      raise NotImplementedError.new('p not available')
-    end
-    def printf(*args)
-      raise NotImplementedError.new('printf not available')
-    end
-  else
-    unless Kernel.respond_to?(:sprintf)
-      def printf(*args)
-        raise NotImplementedError.new('printf not available')
-      end
-      def sprintf(*args)
-        raise NotImplementedError.new('sprintf not available')
-      end
-    end
-
-
-    ##
-    # Invoke method +print+ on STDOUT and passing +*args+
-    #
-    # ISO 15.3.1.2.10
-    def print(*args)
-      i = 0
-      len = args.size
-      while i < len
-        __printstr__ args[i].to_s
-        i += 1
-      end
-    end
-
-    ##
-    # Invoke method +puts+ on STDOUT and passing +*args*+
-    #
-    # ISO 15.3.1.2.11
-    def puts(*args)
-      i = 0
-      len = args.size
-      while i < len
-        s = args[i].to_s
-        __printstr__ s
-        __printstr__ "\n" if (s[-1] != "\n")
-        i += 1
-      end
-      __printstr__ "\n" if len == 0
-      nil
-    end
-
-    ##
-    # Print human readable object description
-    #
-    # ISO 15.3.1.3.34
-    def p(*args)
-      i = 0
-      len = args.size
-      while i < len
-        __printstr__ args[i].inspect
-        __printstr__ "\n"
-        i += 1
-      end
-      args[0]
-    end
-
-    def printf(*args)
-      __printstr__(sprintf(*args))
-      nil
-    end
-  end
-end

  Deleted: vendor/mruby-4728070/src/cdump.c (+0 -214) 100644
===================================================================
--- vendor/mruby-4728070/src/cdump.c    2013-09-24 12:23:02 +0900 (247511f)
+++ /dev/null
@@ -1,214 +0,0 @@
-/*
-** cdump.c - mruby binary dumper (C source format)
-**
-** See Copyright Notice in mruby.h
-*/
-
-#include "mruby/cdump.h"
-
-#include <string.h>
-
-#include "mruby/irep.h"
-#include "mruby/string.h"
-
-#define MRB_CDUMP_LINE_LEN 128
-
-#define SOURCE_CODE(fmt, ...)  fprintf(f, fmt"\n", __VA_ARGS__)
-#define SOURCE_CODE0(str)      do {fputs(str, f); putc('\n', f);} while (0)
-
-static int
-make_cdump_isec(mrb_state *mrb, int irep_no, FILE *f)
-{
-  int i;
-  mrb_irep *irep = mrb->irep[irep_no];
-
-  if (irep == NULL)
-    return MRB_CDUMP_INVALID_IREP;
-
-  /* dump isec struct*/
-  if (irep->ilen > 0) {
-    SOURCE_CODE  ("static mrb_code iseq_%d[] = {", irep_no);
-    for (i=0; i<irep->ilen; i++)
-      SOURCE_CODE("  0x%08x,"                    , irep->iseq[i]);
-    SOURCE_CODE0 ("};");
-    SOURCE_CODE0 ("");
-  }
-
-  return MRB_CDUMP_OK;
-}
-
-static size_t
-str_format_len(mrb_value str)
-{
-  size_t dump_len = 0;
-
-  char *src;
-
-  for (src = RSTRING_PTR(str); src < RSTRING_END(str); src++) {
-    switch (*src) {
-    case 0x07:/* BEL */ /* fall through */
-    case 0x08:/* BS  */ /* fall through */
-    case 0x09:/* HT  */ /* fall through */
-    case 0x0A:/* LF  */ /* fall through */
-    case 0x0B:/* VT  */ /* fall through */
-    case 0x0C:/* FF  */ /* fall through */
-    case 0x0D:/* CR  */ /* fall through */
-    case 0x22:/* "   */ /* fall through */
-    case 0x27:/* '   */ /* fall through */
-    case 0x3F:/* ?   */ /* fall through */
-    case 0x5C:/* \   */ /* fall through */
-      dump_len += 2;
-      break;
-
-    default:
-      dump_len++;
-      break;
-    }
-  }
-
-  return dump_len;
-}
-
-static char*
-str_to_format(mrb_value str, char *buf)
-{
-  char *src;
-  char *dst;
-
-  for (src = RSTRING_PTR(str), dst = buf; src < RSTRING_END(str); src++) {
-    switch (*src) {
-    case 0x07:/* BEL */  *dst++ = '\\'; *dst++ = 'a'; break;
-    case 0x08:/* BS  */  *dst++ = '\\'; *dst++ = 'b'; break;
-    case 0x09:/* HT  */  *dst++ = '\\'; *dst++ = 't'; break;
-    case 0x0A:/* LF  */  *dst++ = '\\'; *dst++ = 'n'; break;
-    case 0x0B:/* VT  */  *dst++ = '\\'; *dst++ = 'v'; break;
-    case 0x0C:/* FF  */  *dst++ = '\\'; *dst++ = 'f'; break;
-    case 0x0D:/* CR  */  *dst++ = '\\'; *dst++ = 'r'; break;
-    case 0x22:/* "   */  *dst++ = '\\'; *dst++ = '\"'; break;
-    case 0x27:/* '   */  *dst++ = '\\'; *dst++ = '\''; break;
-    case 0x3F:/* ?   */  *dst++ = '\\'; *dst++ = '\?'; break;
-    case 0x5C:/* \   */  *dst++ = '\\'; *dst++ = '\\'; break;
-    default: *dst++ = *src; break;
-    }
-  }
-
-  return buf;
-}
-
-int
-make_cdump_irep(mrb_state *mrb, int irep_no, FILE *f)
-{
-  mrb_irep *irep = mrb->irep[irep_no];
-  int n;
-  char *buf = 0;
-  size_t buf_len, str_len;
-
-  if (irep == NULL)
-    return MRB_CDUMP_INVALID_IREP;
-
-  buf_len = MRB_CDUMP_LINE_LEN;
-  if ((buf = (char *)mrb_malloc(mrb, buf_len)) == NULL) {
-    return MRB_CDUMP_GENERAL_FAILURE;
-  }
-
-  SOURCE_CODE0     ("  ai = mrb->arena_idx;");
-  SOURCE_CODE0     ("  irep = mrb_add_irep(mrb);");
-  SOURCE_CODE0     ("  irep->flags = MRB_ISEQ_NO_FREE;");
-  SOURCE_CODE      ("  irep->nlocals = %d;",                                          irep->nlocals);
-  SOURCE_CODE      ("  irep->nregs = %d;",                                            irep->nregs);
-  SOURCE_CODE      ("  irep->ilen = %d;",                                             irep->ilen);
-  SOURCE_CODE      ("  irep->iseq = iseq_%d;",                                        irep_no);
-
-  SOURCE_CODE      ("  irep->slen = %d;",                                             irep->slen);
-  if(irep->slen > 0) {
-    SOURCE_CODE    ("  irep->syms = mrb_malloc(mrb, sizeof(mrb_sym)*%d);",            irep->slen);
-    for (n=0; n<irep->slen; n++)
-      if (irep->syms[n]) {
-	const char *name;
-	int len;
-
-	name = mrb_sym2name_len(mrb, irep->syms[n], &len);
-        SOURCE_CODE  ("  irep->syms[%d] = mrb_intern2(mrb, \"%s\", %d);",             n, name, len);
-      }
-  }
-  else
-    SOURCE_CODE0   ("  irep->syms = NULL;");
-
-  SOURCE_CODE0     ("  irep->pool = NULL;");
-  SOURCE_CODE0     ("  irep->lines = NULL;");
-  SOURCE_CODE0     ("  mrb->irep_len = idx;");
-  SOURCE_CODE0     ("  irep->plen = 0;");
-  if(irep->plen > 0) {
-    SOURCE_CODE    ("  irep->pool = mrb_malloc(mrb, sizeof(mrb_value)*%d);",          irep->plen);
-    for (n=0; n<irep->plen; n++) {
-      switch (mrb_type(irep->pool[n])) {
-      case MRB_TT_FLOAT:
-        SOURCE_CODE("  irep->pool[%d] = mrb_float_value(%.16e);",                     n, mrb_float(irep->pool[n])); break;
-      case MRB_TT_FIXNUM:
-        SOURCE_CODE("  irep->pool[%d] = mrb_fixnum_value(%d);",                       n, mrb_fixnum(irep->pool[n])); break; 
-     case MRB_TT_STRING:
-        str_len = str_format_len(irep->pool[n]) + 1;
-        if ( str_len > buf_len ) {
-          buf_len = str_len;
-          if ((buf = (char *)mrb_realloc(mrb, buf, buf_len)) == NULL) {
-            return MRB_CDUMP_GENERAL_FAILURE;
-          }
-        }
-        memset(buf, 0, buf_len);
-        SOURCE_CODE("  irep->pool[%d] = mrb_str_new(mrb, \"%s\", %d);",               n, str_to_format(irep->pool[n], buf), RSTRING_LEN(irep->pool[n]));
-	SOURCE_CODE0     ("  mrb->arena_idx = ai;");
-	break;
-      /* TODO MRB_TT_REGEX */
-      default: break;
-      }
-      SOURCE_CODE0("  irep->plen++;");
-    }
-  }
-  else
-  SOURCE_CODE0("");
-
-  mrb_free(mrb, buf);
-
-  return MRB_CDUMP_OK;
-}
-
-int
-mrb_cdump_irep(mrb_state *mrb, int n, FILE *f,const char *initname)
-{
-  int irep_no;
-  int error;
-
-  if (mrb == NULL || n < 0 || n >= mrb->irep_len || f == NULL || initname == NULL)
-    return MRB_CDUMP_INVALID_ARGUMENT;
-
-  SOURCE_CODE0("#include \"mruby.h\"");
-  SOURCE_CODE0("#include \"mruby/irep.h\"");
-  SOURCE_CODE0("#include \"mruby/string.h\"");
-  SOURCE_CODE0("#include \"mruby/proc.h\"");
-  SOURCE_CODE0("");
-
-  for (irep_no=n; irep_no<mrb->irep_len; irep_no++) {
-    error = make_cdump_isec(mrb, irep_no, f);
-    if (error != MRB_CDUMP_OK)
-      return error;
-  }
-
-  SOURCE_CODE0("void");
-  SOURCE_CODE ("%s(mrb_state *mrb)",            initname);
-  SOURCE_CODE0("{");
-  SOURCE_CODE0("  int n = mrb->irep_len;");
-  SOURCE_CODE0("  int idx = n;");
-  SOURCE_CODE0("  int ai;");
-  SOURCE_CODE0("  mrb_irep *irep;");
-  SOURCE_CODE0("");
-  for (irep_no=n; irep_no<mrb->irep_len; irep_no++) {
-    error = make_cdump_irep(mrb, irep_no, f);
-    if (error != MRB_CDUMP_OK)
-      return error;
-  }
-
-  SOURCE_CODE0("  mrb_run(mrb, mrb_proc_new(mrb, mrb->irep[n]), mrb_top_self(mrb));");
-  SOURCE_CODE0("}");
-
-  return MRB_CDUMP_OK;
-}

  Deleted: vendor/mruby-4728070/src/dump.c (+0 -771) 100644
===================================================================
--- vendor/mruby-4728070/src/dump.c    2013-09-24 12:23:02 +0900 (884a914)
+++ /dev/null
@@ -1,771 +0,0 @@
-/*
-** dump.c - mruby binary dumper (Rite binary format)
-**
-** See Copyright Notice in mruby.h
-*/
-
-#include <string.h>
-#include "mruby/dump.h"
-#include <ctype.h>
-
-#include "mruby/string.h"
-#ifdef ENABLE_REGEXP
-#include "re.h"
-#endif
-#include "mruby/irep.h"
-
-static const unsigned char def_rite_binary_header[] =
-  RITE_FILE_IDENFIFIER
-  RITE_FILE_FORMAT_VER
-  RITE_VM_VER
-  RITE_COMPILER_TYPE
-  RITE_COMPILER_VER
-  "0000"     //Binary data size
-  "00"       //Number of ireps
-  "00"       //Start index
-  RITE_RESERVED
-;
-
-static const unsigned char def_rite_file_header[] =
-  RITE_FILE_IDENFIFIER
-  RITE_FILE_FORMAT_VER
-  RITE_VM_VER
-  RITE_COMPILER_TYPE
-  RITE_COMPILER_VER
-  "00000000" //Binary data size
-  "0000"     //Number of ireps
-  "0000"     //Start index
-  RITE_RESERVED
-  "0000"     //CRC
-;
-
-const char bin2hex[] = {
-  '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'
-};
-
-#define DUMP_SIZE(size, type) ((type == DUMP_TYPE_BIN) ? size : size * RITE_FILE_HEX_SIZE)
-
-enum {
-  DUMP_IREP_HEADER = 0,
-  DUMP_ISEQ_BLOCK,
-  DUMP_POOL_BLOCK,
-  DUMP_SYMS_BLOCK,
-  DUMP_SECTION_NUM,
-};
-
-uint16_t calc_crc_16_ccitt(unsigned char*,int);
-static inline int uint8_dump(uint8_t,char*,int);
-static inline int uint16_dump(uint16_t,char*,int);
-static inline int uint32_dump(uint32_t,char*,int);
-static char* str_dump(char*,char*,uint16_t,int);
-static uint16_t str_dump_len(char*,uint16_t, int);
-static uint32_t get_irep_header_size(mrb_state*,mrb_irep*,int);
-static uint32_t get_iseq_block_size(mrb_state*,mrb_irep*,int);
-static uint32_t get_pool_block_size(mrb_state*,mrb_irep*,int);
-static uint32_t get_syms_block_size(mrb_state*,mrb_irep*,int);
-static uint32_t get_irep_record_size(mrb_state*,int,int);
-static int write_irep_header(mrb_state*,mrb_irep*,char*,int);
-static int write_iseq_block(mrb_state*,mrb_irep*,char*,int);
-static int write_pool_block(mrb_state*,mrb_irep*,char*,int);
-static int write_syms_block(mrb_state*,mrb_irep*,char*,int);
-static int calc_crc_section(mrb_state*,mrb_irep*,uint16_t*,int);
-static int write_rite_header(mrb_state*,int,char*,uint32_t);
-static int dump_rite_header(mrb_state*,int,FILE*,uint32_t);
-static int write_irep_record(mrb_state*,int,char*,uint32_t*,int);
-static int dump_irep_record(mrb_state*,int,FILE*,uint32_t*);
-static int mrb_write_irep(mrb_state*,int,char*);
-
-
-static inline int
-uint8_dump(uint8_t bin, char *hex, int type)
-{
-  if (type == DUMP_TYPE_BIN) {
-    *hex = bin;
-  } else {
-    *hex++  = bin2hex[(bin >> 4) & 0x0f];
-    *hex    = bin2hex[bin & 0x0f];
-  }
-  return DUMP_SIZE(MRB_DUMP_SIZE_OF_CHAR, type);
-}
-
-static inline int
-uint16_dump(uint16_t bin, char *hex, int type)
-{
-  if (type == DUMP_TYPE_BIN) {
-    return (uint16_to_bin(bin, hex));
-  } else {
-    *hex++  = bin2hex[(bin >> 12)& 0x0f];
-    *hex++  = bin2hex[(bin >> 8) & 0x0f];
-    *hex++  = bin2hex[(bin >> 4) & 0x0f];
-    *hex    = bin2hex[bin & 0x0f];
-    return DUMP_SIZE(MRB_DUMP_SIZE_OF_SHORT, type);
-  }
-}
-
-static inline int
-uint32_dump(uint32_t bin, char *hex, int type)
-{
-  if (type == DUMP_TYPE_BIN) {
-    return (uint32_to_bin(bin, hex));
-  } else {
-    *hex++  = bin2hex[(bin >> 28) & 0x0f];
-    *hex++  = bin2hex[(bin >> 24) & 0x0f];
-    *hex++  = bin2hex[(bin >> 20) & 0x0f];
-    *hex++  = bin2hex[(bin >> 16) & 0x0f];
-    *hex++  = bin2hex[(bin >> 12) & 0x0f];
-    *hex++  = bin2hex[(bin >> 8)  & 0x0f];
-    *hex++  = bin2hex[(bin >> 4)  & 0x0f];
-    *hex    = bin2hex[bin & 0x0f];
-    return DUMP_SIZE(MRB_DUMP_SIZE_OF_LONG, type);
-  }
-}
-
-#define CHAR_ESC_LEN 13 /* sizeof(\x{ hex of 32bit unsigned int } \0) */
-
-static char*
-str_dump(char *str, char *hex, uint16_t len, int type)
-{
-  if (type == DUMP_TYPE_BIN)
-    memcpy(hex, str, len);
-  else {
-    char *src, *dst, buf[CHAR_ESC_LEN + 1];
-    int n;
-
-    for (src = str, dst = hex; len > 0; src++, dst++, len--) {
-      switch (*src) {
-      case 0x07:/* BEL */ *dst++ = '\\'; *dst = 'a'; break;
-      case 0x08:/* BS  */ *dst++ = '\\'; *dst = 'b'; break;
-      case 0x09:/* HT  */ *dst++ = '\\'; *dst = 't'; break;
-      case 0x0A:/* LF  */ *dst++ = '\\'; *dst = 'n'; break;
-      case 0x0B:/* VT  */ *dst++ = '\\'; *dst = 'v'; break;
-      case 0x0C:/* FF  */ *dst++ = '\\'; *dst = 'f'; break;
-      case 0x0D:/* CR  */ *dst++ = '\\'; *dst = 'r'; break;
-      case 0x5C:/* \   */ *dst++ = '\\'; *dst = '\\'; break;
-      case 0x22:/* "   */ /* fall through */
-      case 0x27:/* '   */ /* fall through */
-  //  case 0x3F:/* ?   */ /* fall through */
-      default:
-        if (*src >= ' ' && *src <= '~') {
-          *dst = *src;
-        } else {
-          n = sprintf(buf, "\\%03o", *src & 0377);
-          memcpy(dst, buf, n);
-          dst += (n-1);
-        }
-        break;
-      }
-    }
-  }
-
-  return hex;
-}
-
-static uint16_t
-str_dump_len(char *str, uint16_t len, int type)
-{
-  uint16_t dump_len = 0;
-
-  if (type == DUMP_TYPE_BIN)
-    dump_len = len;
-  else {
-    char *src;
-
-    for (src = str; len > 0; src++, len--) {
-      switch (*src) {
-      case 0x07:/* BEL */ /* fall through */
-      case 0x08:/* BS  */ /* fall through */
-      case 0x09:/* HT  */ /* fall through */
-      case 0x0A:/* LF  */ /* fall through */
-      case 0x0B:/* VT  */ /* fall through */
-      case 0x0C:/* FF  */ /* fall through */
-      case 0x0D:/* CR  */ /* fall through */
-      case 0x5C:/* \   */ /* fall through */
-        dump_len += 2;
-        break;
-
-      case 0x22:/* "   */ /* fall through */
-      case 0x27:/* '   */ /* fall through */
-  //  case 0x3F:/* ?   */ /* fall through */
-      default:
-        if (*src >= ' ' && *src <= '~') {
-          dump_len++;
-        } else {
-          // dump_len += sprintf(buf, "\\%03o", *src & 0377);
-          dump_len += 4;
-        }
-        break;
-      }
-    }
-  }
-
-  return dump_len;
-}
-
-static uint32_t
-get_irep_header_size(mrb_state *mrb, mrb_irep *irep, int type)
-{
-  uint32_t size = 0;
-
-  size += 2;
-  size += DUMP_SIZE(MRB_DUMP_SIZE_OF_SHORT, type) * 4;
-
-  return size;
-}
-
-static uint32_t
-get_iseq_block_size(mrb_state *mrb, mrb_irep *irep, int type)
-{
-  uint32_t size = 0;
-
-  size += MRB_DUMP_SIZE_OF_LONG; /* ilen */
-  size += irep->ilen * MRB_DUMP_SIZE_OF_LONG; /* iseq(n) */
-  size += MRB_DUMP_SIZE_OF_SHORT; /* crc */
-
-  return DUMP_SIZE(size, type);
-}
-
-static uint32_t
-get_pool_block_size(mrb_state *mrb, mrb_irep *irep, int type)
-{
-  uint32_t size = 0;
-  int pool_no;
-  mrb_value str;
-  char buf[32];
-
-  size += MRB_DUMP_SIZE_OF_LONG; /* plen */
-  size += irep->plen; /* tt(n) */
-  size += irep->plen * MRB_DUMP_SIZE_OF_SHORT; /* len(n) */
-  size += MRB_DUMP_SIZE_OF_SHORT; /* crc */
-  size = DUMP_SIZE(size, type);
-
-  for (pool_no = 0; pool_no < irep->plen; pool_no++) {
-    uint16_t nlen =0;
-    int len;
-
-    switch (mrb_type(irep->pool[pool_no])) {
-    case MRB_TT_FIXNUM:
-      len = mrb_int_to_str( buf, mrb_fixnum(irep->pool[pool_no]));
-      size += (uint32_t)len;
-      break;
-    case MRB_TT_FLOAT:
-      len = mrb_float_to_str( buf, mrb_float(irep->pool[pool_no]));
-      size += (uint32_t)len;
-      break;
-    case MRB_TT_STRING:
-      str = mrb_string_value( mrb, &irep->pool[pool_no]);
-      nlen = str_dump_len(RSTRING_PTR(str), RSTRING_LEN(str), type);
-      size += nlen;
-      break;
-#ifdef ENABLE_REGEXP
-    case MRB_TT_REGEX:
-      str = mrb_reg_to_s(mrb, irep->pool[pool_no]);
-      nlen = str_dump_len(RSTRING_PTR(str), RSTRING_LEN(str), type);
-      size += nlen;
-      break;
-#endif
-    default:
-      break;
-    }
-  }
-
-  return size;
-}
-
-static uint32_t
-get_syms_block_size(mrb_state *mrb, mrb_irep *irep, int type)
-{
-  uint32_t size = 0;
-  int sym_no;
-
-  size += MRB_DUMP_SIZE_OF_LONG; /* slen */
-  size += MRB_DUMP_SIZE_OF_SHORT; /* crc */
-  size = DUMP_SIZE(size, type);
-
-  for (sym_no = 0; sym_no < irep->slen; sym_no++) {
-    const char * name;
-    uint16_t nlen =0;
-
-    size += DUMP_SIZE(MRB_DUMP_SIZE_OF_SHORT, type); /* snl(n) */
-    if (irep->syms[sym_no] != 0) {
-      int len;
-
-      name = mrb_sym2name_len(mrb, irep->syms[sym_no], &len);
-      nlen = str_dump_len((char*)name, len, type);
-      size += nlen; /* sn(n) */
-    }
-  }
-
-  return size;
-}
-
-static uint32_t
-get_irep_record_size(mrb_state *mrb, int irep_no, int type)
-{
-  uint32_t size = 0;
-  mrb_irep *irep = mrb->irep[irep_no];
-
-  size += DUMP_SIZE(MRB_DUMP_SIZE_OF_LONG, type); /* rlen */
-  size += get_irep_header_size(mrb, irep, type);
-  size += get_iseq_block_size(mrb, irep, type);
-  size += get_pool_block_size(mrb, irep, type);
-  size += get_syms_block_size(mrb, irep, type);
-
-  return size;
-}
-
-static int
-write_irep_header(mrb_state *mrb, mrb_irep *irep, char *buf, int type)
-{
-  char *buf_top = buf;
-
-  *buf++ = RITE_IREP_IDENFIFIER; /* record identifier */
-  *buf++ = RITE_IREP_TYPE_CLASS; /* class or module */
-  buf += uint16_dump((uint16_t)irep->nlocals, buf, type);  /* number of local variable */
-  buf += uint16_dump((uint16_t)irep->nregs, buf, type);  /* number of register variable */
-  buf += uint16_dump(DUMP_SIZE(MRB_DUMP_SIZE_OF_SHORT, type)/* crc */, buf, type); /* offset of isec block */
-
-  return (int)(buf - buf_top);
-}
-
-static int
-write_iseq_block(mrb_state *mrb, mrb_irep *irep, char *buf, int type)
-{
-  char *buf_top = buf;
-  int iseq_no;
-
-  buf += uint32_dump((uint32_t)irep->ilen, buf, type); /* number of opcode */
-
-  for (iseq_no = 0; iseq_no < irep->ilen; iseq_no++) {
-    buf += uint32_dump((uint32_t)irep->iseq[iseq_no], buf, type); /* opcode */
-  }
-
-  return (int)(buf - buf_top);
-}
-
-static int
-write_pool_block(mrb_state *mrb, mrb_irep *irep, char *buf, int type)
-{
-  int pool_no;
-  mrb_value str;
-  char *buf_top = buf;
-  char *char_buf;
-  uint16_t buf_size =0;
-  uint16_t len =0;
-  int result;
-
-  buf_size = MRB_DUMP_DEFAULT_STR_LEN;
-  char_buf = (char *)mrb_malloc(mrb, buf_size);
-  if (char_buf == NULL) {
-    result = MRB_DUMP_GENERAL_FAILURE;
-    goto error_exit;
-  }
-
-  buf += uint32_dump((uint32_t)irep->plen, buf, type); /* number of pool */
-
-  for (pool_no = 0; pool_no < irep->plen; pool_no++) {
-    buf += uint8_dump(mrb_type(irep->pool[pool_no]), buf, type); /* data type */
-    memset(char_buf, 0, buf_size);
-
-    switch (mrb_type(irep->pool[pool_no])) {
-    case MRB_TT_FIXNUM:
-      len = mrb_int_to_str(char_buf, mrb_fixnum(irep->pool[pool_no]));
-      break;
-
-    case MRB_TT_FLOAT:
-      len = mrb_float_to_str(char_buf, mrb_float(irep->pool[pool_no]));
-      break;
-
-    case MRB_TT_STRING:
-      str = irep->pool[pool_no];
-      len = str_dump_len(RSTRING_PTR(str), RSTRING_LEN(str), type);
-      if (len > buf_size - 1) {
-        buf_size = len + 1;
-        char_buf = (char *)mrb_realloc(mrb, char_buf, buf_size);
-        if (char_buf == NULL) {
-          result = MRB_DUMP_GENERAL_FAILURE;
-          goto error_exit;
-        }
-        memset(char_buf, 0, buf_size);
-      }
-      str_dump(RSTRING_PTR(str), char_buf, RSTRING_LEN(str), type);
-      break;
-
-#ifdef ENABLE_REGEXP
-    case MRB_TT_REGEX:
-      str = mrb_reg_to_s(mrb, irep->pool[pool_no]);
-      len = str_dump_len(RSTRING_PTR(str), RSTRING_LEN(str), type);
-      if ( len > buf_size - 1) {
-        buf_size = len + 1;
-        char_buf = mrb_realloc(mrb, char_buf, buf_size);
-        if (char_buf == NULL) {
-          result = MRB_DUMP_GENERAL_FAILURE;
-          goto error_exit;
-        }
-        memset(char_buf, 0, buf_size);
-      }
-      str_dump(RSTRING_PTR(str), char_buf, RSTRING_LEN(str), type);
-      break;
-#endif
-
-    default:
-      buf += uint16_dump(0, buf, type); /* data length = 0 */
-      continue;
-    }
-
-    buf += uint16_dump(len, buf, type); /* data length */
-
-    memcpy(buf, char_buf, len);
-    buf += len;
-  }
-
-  result = (int)(buf - buf_top);
-error_exit:
-  mrb_free(mrb, char_buf);
-  return result;
-}
-
-static int
-write_syms_block(mrb_state *mrb, mrb_irep *irep, char *buf, int type)
-{
-  int sym_no;
-  char *buf_top = buf;
-  char *char_buf;
-  uint16_t buf_size =0;
-
-  buf_size = MRB_DUMP_DEFAULT_STR_LEN;
-  char_buf = (char *)mrb_malloc(mrb, buf_size);
-  if (char_buf == NULL)
-    goto error_exit;
-
-  buf += uint32_dump((uint32_t)irep->slen, buf, type); /* number of symbol */
-
-  for (sym_no = 0; sym_no < irep->slen; sym_no++) {
-    const char * name;
-    uint16_t nlen =0;
-
-    if (irep->syms[sym_no] != 0) {
-      int len;
-
-      name = mrb_sym2name_len(mrb, irep->syms[sym_no], &len);
-      nlen = str_dump_len((char*)name, len, type);
-      if ( nlen > buf_size - 1) {
-        buf_size = nlen + 1;
-        char_buf = (char *)mrb_realloc(mrb, char_buf, buf_size);
-        if (char_buf == NULL)
-          goto error_exit;
-      }
-      memset(char_buf, 0, buf_size);
-      str_dump((char*)name, char_buf, len, type);
-
-      buf += uint16_dump(nlen, buf, type); /* length of symbol name */
-      memcpy(buf, char_buf, nlen); /* symbol name */
-      buf += nlen;
-    }
-    else {
-      buf += uint16_dump(MRB_DUMP_NULL_SYM_LEN, buf, type); /* length of symbol name */
-    }
-  }
-
-error_exit:
-  mrb_free(mrb, char_buf);
-  return (int)(buf - buf_top);
-}
-
-static int
-calc_crc_section(mrb_state *mrb, mrb_irep *irep, uint16_t *crc, int section)
-{
-  char *buf, *buf_top;
-  uint32_t buf_size;
-  int type = DUMP_TYPE_BIN;
-  int result;
-
-  switch (section) {
-  case DUMP_IREP_HEADER: buf_size = get_irep_header_size(mrb, irep, type); break;
-  case DUMP_ISEQ_BLOCK:  buf_size = get_iseq_block_size(mrb, irep, type); break;
-  case DUMP_POOL_BLOCK:  buf_size = get_pool_block_size(mrb, irep, type); break;
-  case DUMP_SYMS_BLOCK:  buf_size = get_syms_block_size(mrb, irep, type); break;
-  default: return MRB_DUMP_GENERAL_FAILURE;
-  }
-
-  buf = (char *)mrb_calloc(mrb, 1, buf_size);
-  if (buf == NULL)
-    return MRB_DUMP_GENERAL_FAILURE;
-
-  buf_top = buf;
-
-  switch (section) {
-  case DUMP_IREP_HEADER:
-    result = write_irep_header(mrb, irep, buf, type);
-    break;
-  case DUMP_ISEQ_BLOCK:
-    result = write_iseq_block(mrb, irep, buf, type);
-    break;
-  case DUMP_POOL_BLOCK:
-    result = write_pool_block(mrb, irep, buf, type);
-    break;
-  case DUMP_SYMS_BLOCK:
-    result = write_syms_block(mrb, irep, buf, type);
-    break;
-  default:
-    result = MRB_DUMP_GENERAL_FAILURE;
-    break; /* Already checked above. */
-  }
-  if (result < 0) {
-    goto error_exit;
-  }
-  buf += result;
-
-  *crc = calc_crc_16_ccitt((unsigned char*)buf_top, (int)(buf - buf_top));
-
-  mrb_free(mrb, buf_top);
-
-  result = MRB_DUMP_OK;
- error_exit:
-  return result;
-}
-
-static uint16_t
-calc_rite_header_crc(mrb_state *mrb, int top, rite_binary_header *binary_header, uint32_t rbds, int type)
-{
-  memcpy( binary_header, def_rite_binary_header, sizeof(*binary_header));
-
-  uint32_dump(rbds, (char*)binary_header->rbds, type);
-  uint16_dump((uint16_t)mrb->irep_len, (char*)binary_header->nirep, type);
-  uint16_dump((uint16_t)top, (char*)binary_header->sirep, type);
-
-  return calc_crc_16_ccitt((unsigned char*)binary_header, sizeof(*binary_header));
-}
-
-static int
-write_rite_header(mrb_state *mrb, int top, char* bin, uint32_t rbds)
-{
-  rite_binary_header *binary_header;
-  uint16_t crc;
-  int type = DUMP_TYPE_BIN;
-
-  binary_header = (rite_binary_header*)bin;
-  crc = calc_rite_header_crc(mrb, top, binary_header, rbds, type);
-  bin += sizeof(*binary_header);
-  uint16_dump(crc, bin, type);
-
-  return MRB_DUMP_OK;
-}
-
-static int
-calc_rite_file_header(mrb_state *mrb, int top, uint32_t rbds, rite_file_header *file_header)
-{
-  rite_binary_header *binary_header, b_header;
-  uint16_t crc;
-  int type;
-
-  /* calc crc */
-  type = DUMP_TYPE_BIN;
-  binary_header = &b_header;
-  crc = calc_rite_header_crc(mrb, top, binary_header, rbds, type);
-
-  /* dump rbc header */
-  memcpy( file_header, def_rite_file_header, sizeof(*file_header));
-
-  type = DUMP_TYPE_HEX;
-  uint32_dump(rbds, (char*)file_header->rbds, type);
-  uint16_dump((uint16_t)mrb->irep_len, (char*)file_header->nirep, type);
-  uint16_dump((uint16_t)top, (char*)file_header->sirep, type);
-  uint16_dump(crc, (char*)file_header->hcrc, type);
-
-  return MRB_DUMP_OK;
-}
-
-static int
-dump_rite_header(mrb_state *mrb, int top, FILE* fp, uint32_t rbds)
-{
-  int rc = MRB_DUMP_OK;
-  rite_file_header file_header;
-
-  if (fseek(fp, 0, SEEK_SET) != 0)
-    return MRB_DUMP_GENERAL_FAILURE;
-
-  rc = calc_rite_file_header(mrb, top, rbds, &file_header);
-  if (rc != MRB_DUMP_OK)
-    return rc;
-
-  if (fwrite(&file_header, sizeof(file_header), 1, fp) != 1)
-    return MRB_DUMP_WRITE_FAULT;
-
-  return MRB_DUMP_OK;
-}
-
-static int
-write_irep_record(mrb_state *mrb, int irep_no, char* bin, uint32_t *rlen, int type)
-{
-  uint32_t irep_record_size;
-  mrb_irep *irep = mrb->irep[irep_no];
-  int section;
-
-  if (irep == NULL)
-    return MRB_DUMP_INVALID_IREP;
-
-  /* buf alloc */
-  irep_record_size = get_irep_record_size(mrb, irep_no, type);
-  if (irep_record_size == 0)
-    return MRB_DUMP_GENERAL_FAILURE;
-
-  memset( bin, 0, irep_record_size);
-
-  /* rlen */
-  *rlen = irep_record_size - DUMP_SIZE(MRB_DUMP_SIZE_OF_LONG, type);
-
-  bin += uint32_dump(*rlen, bin, type);
-
-  for (section = 0; section < DUMP_SECTION_NUM; section++) {
-    int rc;
-    uint16_t crc;
-
-    switch (section) {
-    case DUMP_IREP_HEADER: bin += write_irep_header(mrb, irep, bin, type); break;
-    case DUMP_ISEQ_BLOCK: bin += write_iseq_block(mrb, irep, bin, type); break;
-    case DUMP_POOL_BLOCK: bin += write_pool_block(mrb, irep, bin, type); break;
-    case DUMP_SYMS_BLOCK: bin += write_syms_block(mrb, irep, bin, type); break;
-    default: break;
-    }
-
-    rc = calc_crc_section(mrb, irep, &crc, section);
-    if (rc != MRB_DUMP_OK)
-      return rc;
-
-    bin += uint16_dump(crc, bin, type); /* crc */
-  }
-
-  return MRB_DUMP_OK;
-}
-
-static int
-dump_irep_record(mrb_state *mrb, int irep_no, FILE* fp, uint32_t *rlen)
-{
-  int rc = MRB_DUMP_OK;
-  uint32_t irep_record_size;
-  char *buf;
-  mrb_irep *irep = mrb->irep[irep_no];
-
-  if (irep == NULL)
-    return MRB_DUMP_INVALID_IREP;
-
-  /* buf alloc */
-  irep_record_size = get_irep_record_size(mrb, irep_no, DUMP_TYPE_HEX);
-  if (irep_record_size == 0)
-    return MRB_DUMP_GENERAL_FAILURE;
-
-  buf = (char *)mrb_calloc(mrb, 1, irep_record_size);
-  if (buf == NULL)
-    return MRB_DUMP_GENERAL_FAILURE;
-
-  rc = write_irep_record(mrb, irep_no, buf, rlen, DUMP_TYPE_HEX);
-  if (rc != MRB_DUMP_OK) {
-    rc = MRB_DUMP_GENERAL_FAILURE;
-    goto error_exit;
-  }
-
-
-  if (fwrite(buf, irep_record_size, 1, fp) != 1)
-    rc = MRB_DUMP_WRITE_FAULT;
-
-error_exit:
-  mrb_free(mrb, buf);
-
-  return rc;
-}
-
-static int
-mrb_write_irep(mrb_state *mrb, int top, char *bin)
-{
-  int rc;
-  uint32_t rlen=0; /* size of irep record */
-  int irep_no;
-  char *bin_top;
-
-  if (mrb == NULL || top < 0 || top >= mrb->irep_len || bin == NULL)
-    return MRB_DUMP_INVALID_ARGUMENT;
-
-  bin_top = bin;
-  bin += sizeof(rite_binary_header) + MRB_DUMP_SIZE_OF_SHORT/* crc */;
-
-  for (irep_no=top; irep_no<mrb->irep_len; irep_no++) {
-    rc = write_irep_record(mrb, irep_no, bin, &rlen, DUMP_TYPE_BIN);
-    if (rc != MRB_DUMP_OK)
-      return rc;
-
-    bin += (rlen + DUMP_SIZE(MRB_DUMP_SIZE_OF_LONG, DUMP_TYPE_BIN));
-  }
-
-  bin += uint32_dump(0, bin, DUMP_TYPE_BIN); /* end of file */
-
-  rc = write_rite_header(mrb, top, bin_top, (bin - bin_top));    //TODO: Remove top(SIREP)
-
-  return rc;
-}
-
-int
-mrb_dump_irep(mrb_state *mrb, int top, FILE* fp)
-{
-  int rc;
-  uint32_t rbds=0; /* size of Rite Binary Data */
-  uint32_t rlen=0; /* size of irep record */
-  int irep_no;
-
-  if (mrb == NULL || top < 0 || top >= mrb->irep_len || fp == NULL)
-    return MRB_DUMP_INVALID_ARGUMENT;
-
-  if (fwrite(&def_rite_file_header, sizeof(rite_file_header), 1, fp) != 1) /* dummy write */
-    return MRB_DUMP_WRITE_FAULT;
-
-  for (irep_no=top; irep_no<mrb->irep_len; irep_no++) {
-    rc = dump_irep_record(mrb, irep_no, fp, &rlen);
-    if (rc != MRB_DUMP_OK)
-      return rc;
-
-    rbds += rlen;
-  }
-
-  if (fwrite("00000000"/* end of file */, 8, 1, fp) != 1)
-    return MRB_DUMP_WRITE_FAULT;
-
-  rc = dump_rite_header(mrb, top, fp, rbds);    //TODO: Remove top(SIREP)
-
-  return rc;
-}
-
-int
-mrb_bdump_irep(mrb_state *mrb, int n, FILE *f,const char *initname)
-{
-  int rc;
-  int irep_no;
-  char *buf;
-  int buf_size = 0;
-  int buf_idx = 0;
-
-  if (mrb == NULL || n < 0 || n >= mrb->irep_len || f == NULL || initname == NULL)
-    return MRB_DUMP_INVALID_ARGUMENT;
-
-  buf_size = sizeof(rite_binary_header) + MRB_DUMP_SIZE_OF_SHORT/* crc */;
-  for (irep_no=n; irep_no<mrb->irep_len; irep_no++)
-    buf_size += get_irep_record_size(mrb, irep_no, DUMP_TYPE_BIN);
-  buf_size += MRB_DUMP_SIZE_OF_LONG; /* end of file */
-
-  buf = (char *)mrb_malloc(mrb, buf_size);
-  if (buf == NULL)
-    return MRB_DUMP_GENERAL_FAILURE;
-
-  rc = mrb_write_irep(mrb, n, buf);
-
-  if (rc == MRB_DUMP_OK) {
-    fprintf(f, "const char %s[] = {", initname);
-    while (buf_idx < buf_size ) {
-      if (buf_idx % 16 == 0 ) fputs("\n", f);
-      fprintf(f, "0x%02x,", (unsigned char)buf[buf_idx++]);
-    }
-    fputs("\n};\n", f);
-  }
-
-  mrb_free(mrb, buf);
-
-  return rc;
-}

  Deleted: vendor/mruby-4728070/src/encoding.h (+0 -345) 100644
===================================================================
--- vendor/mruby-4728070/src/encoding.h    2013-09-24 12:23:02 +0900 (7bc0d9e)
+++ /dev/null
@@ -1,345 +0,0 @@
-/*
-** encoding.h - Encoding class
-**
-** See Copyright Notice in mruby.h
-*/
-
-#ifndef RUBY_ENCODING_H
-#define RUBY_ENCODING_H 1
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-#include <stdarg.h>
-#include "oniguruma.h"
-#include "mruby/data.h"
-
-#define FL_USHIFT    12
-
-#define FL_USER0     (((int)1)<<(FL_USHIFT+0))
-#define FL_USER1     (((int)1)<<(FL_USHIFT+1))
-#define FL_USER2     (((int)1)<<(FL_USHIFT+2))
-#define FL_USER3     (((int)1)<<(FL_USHIFT+3))
-#define FL_USER4     (((int)1)<<(FL_USHIFT+4))
-#define FL_USER5     (((int)1)<<(FL_USHIFT+5))
-#define FL_USER6     (((int)1)<<(FL_USHIFT+6))
-#define FL_USER7     (((int)1)<<(FL_USHIFT+7))
-#define FL_USER8     (((int)1)<<(FL_USHIFT+8))
-#define FL_USER9     (((int)1)<<(FL_USHIFT+9))
-
-#define ENCODING_INLINE_MAX 1023
-/* 1023 = 0x03FF */
-/*#define ENCODING_SHIFT (FL_USHIFT+10)*/
-#define ENCODING_SHIFT (10)
-#define ENCODING_MASK (((unsigned int)ENCODING_INLINE_MAX)<<ENCODING_SHIFT)
-
-#define ENCODING_SET_INLINED(obj,i) do {\
-    mrb_obj_ptr(obj)->flags &= ~ENCODING_MASK;\
-    mrb_obj_ptr(obj)->flags |= (unsigned int)(i) << ENCODING_SHIFT;\
-} while (0)
-#define ENCODING_SET(mrb, obj,i) do {\
-    mrb_value mrb_encoding_set_obj = (obj); \
-    int encoding_set_enc_index = (i); \
-    if (encoding_set_enc_index < ENCODING_INLINE_MAX) \
-        ENCODING_SET_INLINED(mrb_encoding_set_obj, encoding_set_enc_index); \
-    else \
-        mrb_enc_set_index(mrb, mrb_encoding_set_obj, encoding_set_enc_index); \
-} while (0)
-
-#define ENCODING_GET_INLINED(obj) (unsigned int)((RSTRING(obj)->flags & ENCODING_MASK)>>ENCODING_SHIFT)
-#define ENCODING_GET(mrb, obj) \
-    (ENCODING_GET_INLINED(obj) != ENCODING_INLINE_MAX ? \
-     ENCODING_GET_INLINED(obj) : \
-     mrb_enc_get_index(mrb, obj))
-
-#define ENCODING_IS_ASCII8BIT(obj) (ENCODING_GET_INLINED(obj) == 0)
-
-#define ENCODING_MAXNAMELEN 42
-
-#define ENC_CODERANGE_MASK      ((int)(FL_USER8|FL_USER9))
-#define ENC_CODERANGE_UNKNOWN   0
-#define ENC_CODERANGE_7BIT      ((int)FL_USER8)
-#define ENC_CODERANGE_VALID     ((int)FL_USER9)
-#define ENC_CODERANGE_BROKEN    ((int)(FL_USER8|FL_USER9))
-#define ENC_CODERANGE(obj) ((int)(RSTRING(obj)->flags & ENC_CODERANGE_MASK))
-#define ENC_CODERANGE_ASCIIONLY(obj) (ENC_CODERANGE(obj) == ENC_CODERANGE_7BIT)
-#ifdef INCLUDE_ENCODING
-#define ENC_CODERANGE_SET(obj,cr) (RSTRING(obj)->flags = \
-                                   (RSTRING(obj)->flags & ~ENC_CODERANGE_MASK) | (cr))
-#else
-#define ENC_CODERANGE_SET(obj,cr)
-#endif //INCLUDE_ENCODING
-#define ENC_CODERANGE_CLEAR(obj) ENC_CODERANGE_SET(obj,0)
-
-/* assumed ASCII compatibility */
-#define ENC_CODERANGE_AND(a, b) \
-    (a == ENC_CODERANGE_7BIT ? b : \
-     a == ENC_CODERANGE_VALID ? (b == ENC_CODERANGE_7BIT ? ENC_CODERANGE_VALID : b) : \
-     ENC_CODERANGE_UNKNOWN)
-
-#define ENCODING_CODERANGE_SET(mrb, obj, encindex, cr) \
-    do { \
-        mrb_value mrb_encoding_coderange_obj = (obj); \
-        ENCODING_SET(mrb, mrb_encoding_coderange_obj, (encindex)); \
-        ENC_CODERANGE_SET(mrb_encoding_coderange_obj, (cr)); \
-    } while (0)
-
-typedef OnigEncodingType mrb_encoding;
-
-/* mrb_encoding * -> name */
-#define mrb_enc_name(enc) (enc)->name
-int mrb_enc_get_index(mrb_state *mrb, mrb_value obj);
-
-int mrb_enc_replicate(mrb_state *, const char *, mrb_encoding *);
-int mrb_define_dummy_encoding(mrb_state *mrb, const char *);
-#define mrb_enc_to_index(enc) ((enc) ? ENC_TO_ENCINDEX(enc) : 0)
-void mrb_enc_set_index(mrb_state *mrb, mrb_value obj, int encindex);
-int mrb_enc_find_index(mrb_state *mrb, const char *name);
-int mrb_to_encoding_index(mrb_state *mrb, mrb_value);
-mrb_encoding* mrb_to_encoding(mrb_state *mrb, mrb_value);
-mrb_encoding* mrb_enc_get(mrb_state *, mrb_value);
-mrb_encoding* mrb_enc_compatible(mrb_state *, mrb_value, mrb_value);
-mrb_encoding* mrb_enc_check(mrb_state *, mrb_value, mrb_value);
-mrb_value mrb_enc_associate_index(mrb_state *mrb, mrb_value, int);
-#ifdef INCLUDE_ENCODING
-mrb_value mrb_enc_associate(mrb_state *mrb, mrb_value, mrb_encoding*);
-#else
-#define mrb_enc_associate(mrb,value,enc)
-#endif //INCLUDE_ENCODING
-void mrb_enc_copy(mrb_state *mrb, mrb_value dst, mrb_value src);
-
-mrb_value mrb_enc_reg_new(const char*, long, mrb_encoding*, int);
-//PRINTF_ARGS(mrb_value rb_enc_sprintf(mrb_encoding *, const char*, ...), 2, 3);
-mrb_value mrb_enc_vsprintf(mrb_encoding *, const char*, va_list);
-long mrb_enc_strlen(const char*, const char*, mrb_encoding*);
-char* mrb_enc_nth(mrb_state *, const char*, const char*, long, mrb_encoding*);
-mrb_value mrb_obj_encoding(mrb_state *, mrb_value);
-mrb_value mrb_enc_str_buf_cat(mrb_state *mrb, mrb_value str, const char *ptr, long len, mrb_encoding *enc);
-mrb_value rb_enc_uint_chr(mrb_state *mrb, unsigned int code, mrb_encoding *enc);
-
-mrb_value mrb_external_str_new_with_enc(mrb_state *mrb, const char *ptr, long len, mrb_encoding *);
-mrb_value mrb_str_export_to_enc(mrb_value, mrb_encoding *);
-
-/* index -> mrb_encoding */
-mrb_encoding* mrb_enc_from_index(mrb_state *mrb, int idx);
-
-/* name -> mrb_encoding */
-mrb_encoding * mrb_enc_find(mrb_state *mrb, const char *name);
-
-/* mrb_encoding * -> name */
-#define mrb_enc_name(enc) (enc)->name
-
-/* mrb_encoding * -> minlen/maxlen */
-#define mrb_enc_mbminlen(enc) (enc)->min_enc_len
-#define mrb_enc_mbmaxlen(enc) (enc)->max_enc_len
-
-/* -> mbclen (no error notification: 0 < ret <= e-p, no exception) */
-int mrb_enc_mbclen(const char *p, const char *e, mrb_encoding *enc);
-
-/* -> mbclen (only for valid encoding) */
-int mrb_enc_fast_mbclen(const char *p, const char *e, mrb_encoding *enc);
-
-/* -> chlen, invalid or needmore */
-int mrb_enc_precise_mbclen(const char *p, const char *e, mrb_encoding *enc);
-#define MBCLEN_CHARFOUND_P(ret)     ONIGENC_MBCLEN_CHARFOUND_P(ret)
-#define MBCLEN_CHARFOUND_LEN(ret)     ONIGENC_MBCLEN_CHARFOUND_LEN(ret)
-#define MBCLEN_INVALID_P(ret)       ONIGENC_MBCLEN_INVALID_P(ret)
-#define MBCLEN_NEEDMORE_P(ret)      ONIGENC_MBCLEN_NEEDMORE_P(ret)
-#define MBCLEN_NEEDMORE_LEN(ret)      ONIGENC_MBCLEN_NEEDMORE_LEN(ret)
-
-/* -> 0x00..0x7f, -1 */
-int mrb_enc_ascget(mrb_state *mrb, const char *p, const char *e, int *len, mrb_encoding *enc);
-
-
-/* -> code (and len) or raise exception */
-unsigned int mrb_enc_codepoint_len(mrb_state *mrb, const char *p, const char *e, int *len, mrb_encoding *enc);
-
-/* prototype for obsolete function */
-unsigned int mrb_enc_codepoint(mrb_state *mrb, const char *p, const char *e, mrb_encoding *enc);
-/* overriding macro */
-#define mrb_enc_codepoint(mrb,p,e,enc) mrb_enc_codepoint_len((mrb),(p),(e),0,(enc))
-#define mrb_enc_mbc_to_codepoint(p, e, enc) ONIGENC_MBC_TO_CODE(enc,(UChar*)(p),(UChar*)(e))
-
-/* -> codelen>0 or raise exception */
-#ifdef INCLUDE_ENCODING
-int mrb_enc_codelen(mrb_state *mrb, int code, mrb_encoding *enc);
-#else
-#define mrb_enc_codelen(mrb,code,enc) 1
-#endif //INCLUDE_ENCODING
-
-/* code,ptr,encoding -> write buf */
-#define mrb_enc_mbcput(c,buf,enc) ((*(buf) = (char)(c)),1)
-
-/* start, ptr, end, encoding -> prev_char */
-#define mrb_enc_prev_char(s,p,e,enc) (char *)onigenc_get_prev_char_head(enc,(UChar*)(s),(UChar*)(p),(UChar*)(e))
-/* start, ptr, end, encoding -> next_char */
-#define mrb_enc_left_char_head(s,p,e,enc) (char *)onigenc_get_left_adjust_char_head(enc,(UChar*)(s),(UChar*)(p),(UChar*)(e))
-#define mrb_enc_right_char_head(s,p,e,enc) (char *)onigenc_get_right_adjust_char_head(enc,(UChar*)(s),(UChar*)(p),(UChar*)(e))
-
-/* ptr, ptr, encoding -> newline_or_not */
-#define mrb_enc_is_newline(p,end,enc)  ONIGENC_IS_MBC_NEWLINE(enc,(UChar*)(p),(UChar*)(end))
-
-#define mrb_enc_isctype(c,t,enc) ONIGENC_IS_CODE_CTYPE(enc,c,t)
-#define mrb_enc_isascii(c,enc) ONIGENC_IS_CODE_ASCII(c)
-#define mrb_enc_isalpha(c,enc) ONIGENC_IS_CODE_ALPHA(enc,c)
-#define mrb_enc_islower(c,enc) ONIGENC_IS_CODE_LOWER(enc,c)
-#define mrb_enc_isupper(c,enc) ONIGENC_IS_CODE_UPPER(enc,c)
-#define mrb_enc_ispunct(c,enc) ONIGENC_IS_CODE_PUNCT(enc,c)
-#define mrb_enc_isalnum(c,enc) ONIGENC_IS_CODE_ALNUM(enc,c)
-#define mrb_enc_isprint(c,enc) ONIGENC_IS_CODE_PRINT(enc,c)
-#define mrb_enc_isspace(c,enc) ONIGENC_IS_CODE_SPACE(enc,c)
-#define mrb_enc_isdigit(c,enc) ONIGENC_IS_CODE_DIGIT(enc,c)
-
-#define mrb_enc_asciicompat(mrb, enc) (mrb_enc_mbminlen(enc)==1 && !mrb_enc_dummy_p(enc))
-
-int mrb_enc_casefold(char *to, const char *p, const char *e, mrb_encoding *enc);
-int mrb_enc_toupper(int c, mrb_encoding *enc);
-int mrb_enc_tolower(int c, mrb_encoding *enc);
-//ID mrb_intern3(const char*, long, mrb_encoding*);
-//ID mrb_interned_id_p(const char *, long, mrb_encoding *);
-int mrb_enc_symname_p(const char*, mrb_encoding*);
-int mrb_enc_symname2_p(const char*, long, mrb_encoding*);
-int mrb_enc_str_coderange(mrb_state *mrb, mrb_value);
-long mrb_str_coderange_scan_restartable(const char*, const char*, mrb_encoding*, int*);
-int mrb_enc_str_asciionly_p(mrb_state *mrb, mrb_value);
-#define mrb_enc_str_asciicompat_p(mrb, str) mrb_enc_asciicompat(mrb, mrb_enc_get(mrb, str))
-mrb_value mrb_enc_from_encoding(mrb_state *mrb, mrb_encoding *enc);
-int mrb_enc_unicode_p(mrb_encoding *enc);
-mrb_encoding *mrb_ascii8bit_encoding(mrb_state *mrb);
-mrb_encoding *mrb_utf8_encoding(mrb_state *mrb);
-mrb_encoding *mrb_usascii_encoding(mrb_state *mrb);
-mrb_encoding *mrb_locale_encoding(mrb_state *mrb);
-mrb_encoding *mrb_filesystem_encoding(mrb_state *mrb);
-mrb_encoding *mrb_default_external_encoding(mrb_state *mrb);
-mrb_encoding *mrb_default_internal_encoding(mrb_state *mrb);
-int mrb_ascii8bit_encindex(void);
-int mrb_utf8_encindex(void);
-int mrb_usascii_encindex(void);
-int mrb_locale_encindex(mrb_state *mrb);
-int mrb_filesystem_encindex(void);
-mrb_value mrb_enc_default_external(mrb_state *mrb);
-mrb_value mrb_enc_default_internal(mrb_state *mrb);
-void mrb_enc_set_default_external(mrb_state *mrb, mrb_value encoding);
-void mrb_enc_set_default_internal(mrb_state *mrb, mrb_value encoding);
-mrb_value mrb_locale_charmap(mrb_state *mrb, mrb_value klass);
-mrb_value mrb_usascii_str_new_cstr(mrb_state *mrb, const char *ptr);
-int mrb_str_buf_cat_escaped_char(mrb_state *mrb, mrb_value result, unsigned int c, int unicode_p);
-
-#define ENC_DUMMY_FLAG (1<<24)
-#define ENC_INDEX_MASK (~(~0U<<24))
-
-#define ENC_TO_ENCINDEX(enc) (int)((enc)->ruby_encoding_index & ENC_INDEX_MASK)
-
-#define ENC_DUMMY_P(enc) ((enc)->ruby_encoding_index & ENC_DUMMY_FLAG)
-#define ENC_SET_DUMMY(enc) ((enc)->ruby_encoding_index |= ENC_DUMMY_FLAG)
-
-static inline int
-mrb_enc_dummy_p(mrb_encoding *enc)
-{
-    return ENC_DUMMY_P(enc) != 0;
-}
-
-/* econv stuff */
-
-typedef enum {
-    econv_invalid_byte_sequence,
-    econv_undefined_conversion,
-    econv_destination_buffer_full,
-    econv_source_buffer_empty,
-    econv_finished,
-    econv_after_output,
-    econv_incomplete_input
-} mrb_econv_result_t;
-
-typedef struct mrb_econv_t mrb_econv_t;
-
-mrb_value mrb_str_encode(mrb_state *mrb, mrb_value str, mrb_value to, int ecflags, mrb_value ecopts);
-int mrb_econv_has_convpath_p(mrb_state *mrb, const char* from_encoding, const char* to_encoding);
-
-int mrb_econv_prepare_opts(mrb_state *mrb, mrb_value opthash, mrb_value *ecopts);
-
-mrb_econv_t *mrb_econv_open(mrb_state *mrb, const char *source_encoding, const char *destination_encoding, int ecflags);
-mrb_econv_t *mrb_econv_open_opts(mrb_state *mrb, const char *source_encoding, const char *destination_encoding, int ecflags, mrb_value ecopts);
-
-mrb_econv_result_t mrb_econv_convert(mrb_state *mrb, mrb_econv_t *ec,
-    const unsigned char **source_buffer_ptr, const unsigned char *source_buffer_end,
-    unsigned char **destination_buffer_ptr, unsigned char *destination_buffer_end,
-    int flags);
-void mrb_econv_close(mrb_econv_t *ec);
-
-/* result: 0:success -1:failure */
-int mrb_econv_set_replacement(mrb_state *mrb, mrb_econv_t *ec, const unsigned char *str, size_t len, const char *encname);
-
-/* result: 0:success -1:failure */
-int mrb_econv_decorate_at_first(mrb_state *mrb, mrb_econv_t *ec, const char *decorator_name);
-int mrb_econv_decorate_at_last(mrb_state *mrb, mrb_econv_t *ec, const char *decorator_name);
-
-mrb_value mrb_econv_open_exc(mrb_state *mrb, const char *senc, const char *denc, int ecflags);
-
-/* result: 0:success -1:failure */
-int mrb_econv_insert_output(mrb_state *mrb, mrb_econv_t *ec,
-    const unsigned char *str, size_t len, const char *str_encoding);
-
-/* encoding that mrb_econv_insert_output doesn't need conversion */
-const char *mrb_econv_encoding_to_insert_output(mrb_econv_t *ec);
-
-/* raise an error if the last mrb_econv_convert is error */
-void mrb_econv_check_error(mrb_state *mrb, mrb_econv_t *ec);
-
-/* returns an exception object or nil */
-mrb_value mrb_econv_make_exception(mrb_state *mrb, mrb_econv_t *ec);
-
-int mrb_econv_putbackable(mrb_econv_t *ec);
-void mrb_econv_putback(mrb_econv_t *ec, unsigned char *p, int n);
-
-/* returns the corresponding ASCII compatible encoding for encname,
- * or NULL if encname is not ASCII incompatible encoding. */
-const char *mrb_econv_asciicompat_encoding(const char *encname);
-
-mrb_value mrb_econv_str_convert(mrb_state *mrb, mrb_econv_t *ec, mrb_value src, int flags);
-mrb_value mrb_econv_substr_convert(mrb_state *mrb, mrb_econv_t *ec, mrb_value src, long byteoff, long bytesize, int flags);
-mrb_value mrb_econv_str_append(mrb_state *mrb, mrb_econv_t *ec, mrb_value src, mrb_value dst, int flags);
-mrb_value mrb_econv_substr_append(mrb_state *mrb, mrb_econv_t *ec, mrb_value src, long byteoff, long bytesize, mrb_value dst, int flags);
-
-void mrb_econv_binmode(mrb_econv_t *ec);
-
-/* flags for mrb_econv_open */
-
-#define ECONV_ERROR_HANDLER_MASK                0x000000ff
-
-#define ECONV_INVALID_MASK                      0x0000000f
-#define ECONV_INVALID_REPLACE                   0x00000002
-
-#define ECONV_UNDEF_MASK                        0x000000f0
-#define ECONV_UNDEF_REPLACE                     0x00000020
-#define ECONV_UNDEF_HEX_CHARREF                 0x00000030
-
-#define ECONV_DECORATOR_MASK                    0x0000ff00
-
-#define ECONV_UNIVERSAL_NEWLINE_DECORATOR       0x00000100
-#define ECONV_CRLF_NEWLINE_DECORATOR            0x00001000
-#define ECONV_CR_NEWLINE_DECORATOR              0x00002000
-#define ECONV_XML_TEXT_DECORATOR                0x00004000
-#define ECONV_XML_ATTR_CONTENT_DECORATOR        0x00008000
-
-#define ECONV_STATEFUL_DECORATOR_MASK           0x00f00000
-#define ECONV_XML_ATTR_QUOTE_DECORATOR          0x00100000
-
-/* end of flags for mrb_econv_open */
-
-/* flags for mrb_econv_convert */
-#define ECONV_PARTIAL_INPUT                     0x00010000
-#define ECONV_AFTER_OUTPUT                      0x00020000
-/* end of flags for mrb_econv_convert */
-
-int mrb_isspace(int c);
-
-#define ENCODE_CLASS (mrb_class_obj_get(mrb, "Encoding"))
-#define CONVERTER_CLASS (mrb_class_obj_get(mrb, "Converter"))
-
-#if defined(__cplusplus)
-}  /* extern "C" { */
-#endif
-
-#endif /* RUBY_ENCODING_H */

  Deleted: vendor/mruby-4728070/src/init_ext.c (+0 -16) 100644
===================================================================
--- vendor/mruby-4728070/src/init_ext.c    2013-09-24 12:23:02 +0900 (96ee34d)
+++ /dev/null
@@ -1,16 +0,0 @@
-/*
-** init_ext.c - initialize extend libraries
-**
-** See Copyright Notice in mruby.h
-*/
-
-#include "mruby.h"
-
-void
-mrb_init_ext(mrb_state *mrb)
-{
-#ifdef INCLUDE_SOCKET
-  extern void mrb_init_socket(mrb_state *mrb);
-  mrb_init_socket(mrb);
-#endif
-}

  Deleted: vendor/mruby-4728070/src/keywords (+0 -50) 100644
===================================================================
--- vendor/mruby-4728070/src/keywords    2013-09-24 12:23:02 +0900 (be53248)
+++ /dev/null
@@ -1,50 +0,0 @@
-%{
-struct kwtable {const char *name; int id[2]; enum mrb_lex_state_enum state;};
-const struct kwtable *mrb_reserved_word(const char *, unsigned int);
-static const struct kwtable *reserved_word(const char *, unsigned int);
-#define mrb_reserved_word(str, len) reserved_word(str, len)
-%}
-
-struct kwtable;
-%%
-__ENCODING__, {keyword__ENCODING__, keyword__ENCODING__}, EXPR_END
-__LINE__, {keyword__LINE__, keyword__LINE__}, EXPR_END
-__FILE__, {keyword__FILE__, keyword__FILE__}, EXPR_END
-BEGIN, {keyword_BEGIN, keyword_BEGIN}, EXPR_END
-END, {keyword_END, keyword_END}, EXPR_END
-alias, {keyword_alias, keyword_alias}, EXPR_FNAME
-and, {keyword_and, keyword_and}, EXPR_VALUE
-begin, {keyword_begin, keyword_begin}, EXPR_BEG
-break, {keyword_break, keyword_break}, EXPR_MID
-case, {keyword_case, keyword_case}, EXPR_VALUE
-class, {keyword_class, keyword_class}, EXPR_CLASS
-def, {keyword_def, keyword_def}, EXPR_FNAME
-do, {keyword_do, keyword_do}, EXPR_BEG
-else, {keyword_else, keyword_else}, EXPR_BEG
-elsif, {keyword_elsif, keyword_elsif}, EXPR_VALUE
-end, {keyword_end, keyword_end}, EXPR_END
-ensure, {keyword_ensure, keyword_ensure}, EXPR_BEG
-false, {keyword_false, keyword_false}, EXPR_END
-for, {keyword_for, keyword_for}, EXPR_VALUE
-if, {keyword_if, modifier_if}, EXPR_VALUE
-in, {keyword_in, keyword_in}, EXPR_VALUE
-module, {keyword_module, keyword_module}, EXPR_VALUE
-next, {keyword_next, keyword_next}, EXPR_MID
-nil, {keyword_nil, keyword_nil}, EXPR_END
-not, {keyword_not, keyword_not}, EXPR_ARG
-or, {keyword_or, keyword_or}, EXPR_VALUE
-redo, {keyword_redo, keyword_redo}, EXPR_END
-rescue, {keyword_rescue, modifier_rescue}, EXPR_MID
-retry, {keyword_retry, keyword_retry}, EXPR_END
-return, {keyword_return, keyword_return}, EXPR_MID
-self, {keyword_self, keyword_self}, EXPR_END
-super, {keyword_super, keyword_super}, EXPR_ARG
-then, {keyword_then, keyword_then}, EXPR_BEG
-true, {keyword_true, keyword_true}, EXPR_END
-undef, {keyword_undef, keyword_undef}, EXPR_FNAME
-unless, {keyword_unless, modifier_unless}, EXPR_VALUE
-until, {keyword_until, modifier_until}, EXPR_VALUE
-when, {keyword_when, keyword_when}, EXPR_VALUE
-while, {keyword_while, modifier_while}, EXPR_VALUE
-yield, {keyword_yield, keyword_yield}, EXPR_ARG
-%%

  Deleted: vendor/mruby-4728070/src/load.c (+0 -703) 100644
===================================================================
--- vendor/mruby-4728070/src/load.c    2013-09-24 12:23:02 +0900 (5042467)
+++ /dev/null
@@ -1,703 +0,0 @@
-/*
-** load.c - mruby binary loader
-**
-** See Copyright Notice in mruby.h
-*/
-
-#include <string.h>
-#include "mruby/dump.h"
-
-#include "mruby/string.h"
-#ifdef ENABLE_REGEXP
-#include "re.h"
-#endif
-#include "mruby/proc.h"
-#include "mruby/irep.h"
-
-typedef struct _RiteFILE
-{
-  FILE* fp;
-  unsigned char buf[256];
-  int cnt;
-  int readlen;
-} RiteFILE;
-
-const char hex2bin[256] = {
-  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  //00-0f
-  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  //10-1f
-  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  //20-2f
-  0,  1,  2,  3,  4,  5,  6,  7,  8,  9,  0,  0,  0,  0,  0,  0,  //30-3f
-  0, 10, 11, 12, 13, 14, 15,  0,  0,  0,  0,  0,  0,  0,  0,  0,  //40-4f
-  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  //50-5f
-  0, 10, 11, 12, 13, 14, 15,  0,  0,  0,  0,  0,  0,  0,  0,  0   //60-6f
-  //70-ff
-};
-
-static uint16_t hex_to_bin8(unsigned char*,unsigned char*);
-static uint16_t hex_to_bin16(unsigned char*,unsigned char*);
-static uint16_t hex_to_bin32(unsigned char*,unsigned char*);
-static uint8_t hex_to_uint8(unsigned char*);
-static uint16_t hex_to_uint16(unsigned char*);
-static uint32_t hex_to_uint32(unsigned char*);
-static char* hex_to_str(char*,char*,uint16_t*);
-uint16_t calc_crc_16_ccitt(unsigned char*,int);
-static unsigned char rite_fgetcSub(RiteFILE*);
-static unsigned char rite_fgetc(RiteFILE*,int);
-static unsigned char* rite_fgets(RiteFILE*,unsigned char*,int,int);
-static int load_rite_header(FILE*,rite_binary_header*,unsigned char*);
-static int load_rite_irep_record(mrb_state*, RiteFILE*,unsigned char*,uint32_t*);
-static int read_rite_header(mrb_state*,unsigned char*,rite_binary_header*);
-static int read_rite_irep_record(mrb_state*,unsigned char*,uint32_t*);
-
-
-static unsigned char
-rite_fgetcSub(RiteFILE* rfp)
-{
-  //only first call
-  if (rfp->buf[0] == '\0') {
-    rfp->readlen = fread(rfp->buf, 1, sizeof(rfp->buf), rfp->fp);
-    rfp->cnt = 0;
-  }
-
-  if (rfp->readlen == rfp->cnt) {
-    rfp->readlen = fread(rfp->buf, 1, sizeof(rfp->buf), rfp->fp);
-    rfp->cnt = 0;
-    if (rfp->readlen == 0) {
-      return '\0';
-    }
-  }
-  return rfp->buf[(rfp->cnt)++];
-}
-
-static unsigned char
-rite_fgetc(RiteFILE* rfp, int ignorecomment)
-{
-  unsigned char  tmp;
-
-  for (;;) {
-    tmp = rite_fgetcSub(rfp);
-    if (tmp == '\n' || tmp == '\r') {
-      continue;
-    }
-    else if (ignorecomment && tmp == '#') {
-      while (tmp != '\n' && tmp != '\r' && tmp != '\0')
-        tmp = rite_fgetcSub(rfp);
-      if (tmp == '\0')
-        return '\0';
-    }
-    else {
-      return tmp;
-    }
-  }
-}
-
-static unsigned char*
-rite_fgets(RiteFILE* rfp, unsigned char* dst, int len, int ignorecomment)
-{
-  int i;
-
-  for (i=0; i<len; i++) {
-    if ('\0' == (dst[i] = rite_fgetc(rfp, ignorecomment))) {
-      return NULL;
-    }
-  }
-  return dst;
-}
-
-static int
-load_rite_header(FILE* fp, rite_binary_header* bin_header, unsigned char* hcrc)
-{
-  rite_file_header    file_header;
-
-  if (fread(&file_header, 1, sizeof(file_header), fp) < sizeof(file_header)) {
-    return MRB_DUMP_READ_FAULT;
-  }
-  memcpy(bin_header->rbfi, file_header.rbfi, sizeof(file_header.rbfi));
-  if (memcmp(bin_header->rbfi, RITE_FILE_IDENFIFIER, sizeof(bin_header->rbfi)) != 0) {
-    return MRB_DUMP_INVALID_FILE_HEADER;    //File identifier error
-  }
-  memcpy(bin_header->rbfv, file_header.rbfv, sizeof(file_header.rbfv));
-  if (memcmp(bin_header->rbfv, RITE_FILE_FORMAT_VER, sizeof(bin_header->rbfv)) != 0) {
-    return MRB_DUMP_INVALID_FILE_HEADER;    //File format version error
-  }
-  memcpy(bin_header->risv, file_header.risv, sizeof(file_header.risv));
-  memcpy(bin_header->rct, file_header.rct, sizeof(file_header.rct));
-  memcpy(bin_header->rcv, file_header.rcv, sizeof(file_header.rcv));
-  hex_to_bin32(bin_header->rbds, file_header.rbds);
-  hex_to_bin16(bin_header->nirep, file_header.nirep);
-  hex_to_bin16(bin_header->sirep, file_header.sirep);
-  memcpy(bin_header->rsv, file_header.rsv, sizeof(file_header.rsv));
-  memcpy(hcrc, file_header.hcrc, sizeof(file_header.hcrc));
-
-  return MRB_DUMP_OK;
-}
-
-static int
-load_rite_irep_record(mrb_state *mrb, RiteFILE* rfp, unsigned char* dst, uint32_t* len)
-{
-  int i;
-  uint32_t blocklen;
-  uint16_t offset, pdl, snl, clen;
-  unsigned char hex2[2], hex4[4], hex8[8], hcrc[4];
-  unsigned char *pStart;
-  char *char_buf;
-  uint16_t buf_size =0;
-  int result;
-
-  buf_size = MRB_DUMP_DEFAULT_STR_LEN;
-  char_buf = (char *)mrb_malloc(mrb, buf_size);
-  if (char_buf == NULL) {
-    result = MRB_DUMP_GENERAL_FAILURE;
-    goto error_exit;
-  }
-
-  pStart = dst;
-
-  //IREP HEADER BLOCK
-  *dst = rite_fgetc(rfp, TRUE);                         //record identifier
-  if (*dst != RITE_IREP_IDENFIFIER)
-    return MRB_DUMP_INVALID_IREP;
-  dst += sizeof(unsigned char);
-  *dst = rite_fgetc(rfp, TRUE);                         //class or module
-  dst += sizeof(unsigned char);
-  rite_fgets(rfp, hex4, sizeof(hex4), TRUE);            //number of local variable
-  dst += hex_to_bin16(dst, hex4);
-  rite_fgets(rfp, hex4, sizeof(hex4), TRUE);            //number of register variable
-  dst += hex_to_bin16(dst, hex4);
-  rite_fgets(rfp, hex4, sizeof(hex4), TRUE);            //offset of isec block
-  offset = hex_to_uint16(hex4);
-  rite_fgets(rfp, hcrc, sizeof(hcrc), TRUE);            //header CRC
-  memset( char_buf, '\0', buf_size);
-  rite_fgets(rfp, (unsigned char*)char_buf, (offset - (MRB_DUMP_SIZE_OF_SHORT * RITE_FILE_HEX_SIZE)), TRUE); //class or module name
-  hex_to_str(char_buf, (char*)(dst + MRB_DUMP_SIZE_OF_SHORT + MRB_DUMP_SIZE_OF_SHORT), &clen); //class or module name
-  dst += uint16_to_bin((MRB_DUMP_SIZE_OF_SHORT/*crc*/ + clen), (char*)dst); //offset of isec block
-  dst += hex_to_bin16(dst, hcrc);                 //header CRC
-  dst += clen;
-
-  //ISEQ BLOCK
-  rite_fgets(rfp, hex8, sizeof(hex8), TRUE);            //iseq length
-  dst += hex_to_bin32(dst, hex8);
-  blocklen = hex_to_uint32(hex8);
-  for (i=0; i<blocklen; i++) {
-    rite_fgets(rfp, hex8, sizeof(hex8), TRUE);          //iseq
-    dst += hex_to_bin32(dst, hex8);
-  }
-  rite_fgets(rfp, hcrc, sizeof(hcrc), TRUE);            //iseq CRC
-  dst += hex_to_bin16(dst, hcrc);
-
-  //POOL BLOCK
-  rite_fgets(rfp, hex8, sizeof(hex8), TRUE);            //pool length
-  dst += hex_to_bin32(dst, hex8);
-  blocklen = hex_to_uint32(hex8);
-  for (i=0; i<blocklen; i++) {
-    rite_fgets(rfp, hex2, sizeof(hex2), TRUE);          //TT
-    dst += hex_to_bin8(dst, hex2);
-    rite_fgets(rfp, hex4, sizeof(hex4), TRUE);          //pool data length
-    pdl = hex_to_uint16(hex4);
-
-    if ( pdl > buf_size - 1) {
-      buf_size = pdl + 1;
-      char_buf = (char *)mrb_realloc(mrb, char_buf, buf_size);
-      if (char_buf == NULL) {
-        result = MRB_DUMP_GENERAL_FAILURE;
-        goto error_exit;
-      }
-    }
-    memset(char_buf, '\0', buf_size);
-    rite_fgets(rfp, (unsigned char*)char_buf, pdl, FALSE); //pool
-    hex_to_str(char_buf, (char*)(dst + MRB_DUMP_SIZE_OF_SHORT), &clen);
-    dst += uint16_to_bin(clen, (char*)dst);
-    dst += clen;
-  }
-  rite_fgets(rfp, hcrc, sizeof(hcrc), TRUE);            //pool CRC
-  dst += hex_to_bin16(dst, hcrc);
-
-  //SYMS BLOCK
-  rite_fgets(rfp, hex8, sizeof(hex8), TRUE);            //syms length
-  dst += hex_to_bin32(dst, hex8);
-  blocklen = hex_to_uint32(hex8);
-  for (i=0; i<blocklen; i++) {
-    rite_fgets(rfp, hex4, sizeof(hex4), TRUE);          //symbol name length
-    snl = hex_to_uint16(hex4);
-
-    if (snl == MRB_DUMP_NULL_SYM_LEN) {
-      dst += uint16_to_bin(snl, (char*)dst);
-      continue;
-    }
-
-    if ( snl > buf_size - 1) {
-      buf_size = snl + 1;
-      char_buf = (char *)mrb_realloc(mrb, char_buf, buf_size);
-      if (char_buf == NULL) {
-        result = MRB_DUMP_GENERAL_FAILURE;
-        goto error_exit;
-      }
-    }
-    memset(char_buf, '\0', buf_size);
-    rite_fgets(rfp, (unsigned char*)char_buf, snl, FALSE); //symbol name
-    hex_to_str(char_buf, (char*)(dst + MRB_DUMP_SIZE_OF_SHORT), &clen);
-    dst += uint16_to_bin(clen, (char*)dst);
-    dst += clen;
-  }
-  rite_fgets(rfp, hcrc, sizeof(hcrc), TRUE);            //syms CRC
-  dst += hex_to_bin16(dst, hcrc);
-
-  *len = dst - pStart;
-
-  result = MRB_DUMP_OK;
-error_exit:
-  mrb_free(mrb, char_buf);
-
-  return result;
-}
-
-int
-mrb_read_irep_file(mrb_state *mrb, FILE* fp)
-{
-  int ret, i;
-  uint32_t  len, rlen = 0;
-  unsigned char hex8[8], hcrc[4];
-  unsigned char *dst, *rite_dst = NULL;
-  rite_binary_header  bin_header;
-  RiteFILE ritefp = { 0 };
-  RiteFILE *rfp;
-
-  if ((mrb == NULL) || (fp == NULL)) {
-    return MRB_DUMP_INVALID_ARGUMENT;
-  }
-  ritefp.fp = fp;
-  rfp = &ritefp;
-
-  //Read File Header Section
-  ret = load_rite_header(fp, &bin_header, hcrc);
-  if (ret != MRB_DUMP_OK)
-    return ret;
-
-  len = sizeof(rite_binary_header) + bin_to_uint32(bin_header.rbds);
-  rite_dst = (unsigned char *)mrb_malloc(mrb, len);
-  if (rite_dst == NULL)
-    return MRB_DUMP_GENERAL_FAILURE;
-
-  dst = rite_dst;
-  memset(dst, 0x00, len);
-  *(rite_binary_header *)dst = bin_header;
-  dst += sizeof(rite_binary_header);
-  dst += hex_to_bin16(dst, hcrc);
-
-  //Read Binary Data Section
-  len = bin_to_uint16(bin_header.nirep);
-  for (i=0; i<len; i++) {
-    rite_fgets(rfp, hex8, sizeof(hex8), TRUE);                      //record len
-    dst += hex_to_bin32(dst, hex8);
-    ret = load_rite_irep_record(mrb, rfp, dst, &rlen);
-    if (ret != MRB_DUMP_OK) //irep info
-      goto error_exit;
-    dst += rlen;
-  }
-  rite_fgets(rfp, hex8, sizeof(hex8), TRUE);                        //dummy record len
-  hex_to_bin32(dst, hex8);  /* dst += hex_to_bin32(dst, hex8); */
-  if (0 != hex_to_uint32(hex8)) {
-    ret = MRB_DUMP_INVALID_IREP;
-    goto error_exit;
-  }
-
-  if (ret == MRB_DUMP_OK)
-    ret = mrb_read_irep(mrb, (char*)rite_dst);
-
-error_exit:
-  mrb_free(mrb, rite_dst);
-
-  return ret;
-}
-
-static int
-read_rite_header(mrb_state *mrb, unsigned char *bin, rite_binary_header*  bin_header)
-{
-  uint16_t crc;
-
-  *bin_header = *(rite_binary_header *)bin;
-  bin += sizeof(rite_binary_header);
-  if (memcmp(bin_header->rbfi, RITE_FILE_IDENFIFIER, sizeof(bin_header->rbfi)) != 0) {
-    return MRB_DUMP_INVALID_FILE_HEADER;    //File identifier error
-  }
-  if (memcmp(bin_header->risv, RITE_VM_VER, sizeof(bin_header->risv)) != 0) {
-    return MRB_DUMP_INVALID_FILE_HEADER;    //Instruction set version check
-  }
-
-  crc = calc_crc_16_ccitt((unsigned char*)bin_header, sizeof(*bin_header));   //Calculate CRC
-  if (crc != bin_to_uint16(bin)) {
-    return MRB_DUMP_INVALID_FILE_HEADER;    //CRC error
-  }
-
-  return bin_to_uint16(bin_header->nirep);
-}
-
-static int
-read_rite_irep_record(mrb_state *mrb, unsigned char *src, uint32_t* len)
-{
-  int i, ret = MRB_DUMP_OK;
-  char *buf;
-  unsigned char *recordStart, *pStart;
-  uint16_t crc, tt, pdl, snl, offset, bufsize=MRB_DUMP_DEFAULT_STR_LEN;
-  mrb_int fix_num;
-  mrb_float f;
-  int plen;
-  int ai = mrb_gc_arena_save(mrb);
-  mrb_irep *irep = mrb_add_irep(mrb);
-
-  recordStart = src;
-  buf = (char *)mrb_malloc(mrb, bufsize);
-  if (buf == NULL) {
-    ret = MRB_DUMP_GENERAL_FAILURE;
-    goto error_exit;
-  }
-
-  //Header Section
-  pStart = src;
-  if (*src != RITE_IREP_IDENFIFIER)
-    return MRB_DUMP_INVALID_IREP;
-  src += (sizeof(unsigned char) * 2);
-  irep->nlocals = bin_to_uint16(src);       //number of local variable
-  src += MRB_DUMP_SIZE_OF_SHORT;
-  irep->nregs = bin_to_uint16(src);         //number of register variable
-  src += MRB_DUMP_SIZE_OF_SHORT;
-  offset = bin_to_uint16(src);              //offset of isec block
-  src += MRB_DUMP_SIZE_OF_SHORT;
-  crc = calc_crc_16_ccitt(pStart, src - pStart);     //Calculate CRC
-  if (crc != bin_to_uint16(src))             //header CRC
-    return MRB_DUMP_INVALID_IREP;
-  src += offset;
-
-  //Binary Data Section
-  //ISEQ BLOCK
-  pStart = src;
-  irep->ilen = bin_to_uint32(src);          //iseq length
-  src += MRB_DUMP_SIZE_OF_LONG;
-  if (irep->ilen > 0) {
-    irep->iseq = (mrb_code *)mrb_malloc(mrb, sizeof(mrb_code) * irep->ilen);
-    if (irep->iseq == NULL) {
-      ret = MRB_DUMP_GENERAL_FAILURE;
-      goto error_exit;
-    }
-    for (i=0; i<irep->ilen; i++) {
-      irep->iseq[i] = bin_to_uint32(src);     //iseq
-      src += MRB_DUMP_SIZE_OF_LONG;
-    }
-  }
-  crc = calc_crc_16_ccitt((unsigned char*)pStart, src - pStart);     //Calculate CRC
-  if (crc != bin_to_uint16(src)) {          //iseq CRC
-    ret = MRB_DUMP_INVALID_IREP;
-    goto error_exit;
-  }
-  src += MRB_DUMP_SIZE_OF_SHORT;
-
-  //POOL BLOCK
-  pStart = src;
-  plen = bin_to_uint32(src);          //pool length
-  src += MRB_DUMP_SIZE_OF_LONG;
-  if (plen > 0) {
-    irep->pool = (mrb_value *)mrb_malloc(mrb, sizeof(mrb_value) * plen);
-    if (irep->pool == NULL) {
-      ret = MRB_DUMP_GENERAL_FAILURE;
-      goto error_exit;
-    }
-
-    for (i=0; i<plen; i++) {
-      tt = *src;                              //pool TT
-      src += sizeof(unsigned char);
-      pdl = bin_to_uint16(src);               //pool data length
-      src += MRB_DUMP_SIZE_OF_SHORT;
-      if (pdl > bufsize - 1) {
-        mrb_free(mrb, buf);
-        bufsize = pdl + 1;
-        buf = (char *)mrb_malloc(mrb, bufsize);
-        if (buf == NULL) {
-          ret = MRB_DUMP_GENERAL_FAILURE;
-          goto error_exit;
-        }
-      }
-      memcpy(buf, src, pdl);
-      src += pdl;
-      buf[pdl] = '\0';
-
-      switch (tt) {                           //pool data
-      case MRB_TT_FIXNUM:
-        fix_num = str_to_mrb_int(buf);
-        irep->pool[i] = mrb_fixnum_value(fix_num);
-        break;
-
-      case MRB_TT_FLOAT:
-        f = str_to_mrb_float(buf);
-        irep->pool[i] = mrb_float_value(f);
-        break;
-
-      case MRB_TT_STRING:
-        irep->pool[i] = mrb_str_new(mrb, buf, pdl);
-        break;
-
-#ifdef ENABLE_REGEXP
-      case MRB_TT_REGEX:
-        str = mrb_str_new(mrb, buf, pdl);
-        irep->pool[i] = mrb_reg_quote(mrb, str);
-        break;
-#endif
-
-      default:
-        irep->pool[i] = mrb_nil_value();
-        break;
-      }
-      irep->plen++;
-      mrb_gc_arena_restore(mrb, ai);
-    }
-  }
-  crc = calc_crc_16_ccitt((unsigned char*)pStart, src - pStart);     //Calculate CRC
-  if (crc != bin_to_uint16(src)) {          //pool CRC
-    ret = MRB_DUMP_INVALID_IREP;
-    goto error_exit;
-  }
-  src += MRB_DUMP_SIZE_OF_SHORT;
-
-  //SYMS BLOCK
-  pStart = src;
-  irep->slen = bin_to_uint32(src);          //syms length
-  src += MRB_DUMP_SIZE_OF_LONG;
-  if (irep->slen > 0) {
-    irep->syms = (mrb_sym *)mrb_malloc(mrb, sizeof(mrb_sym) * irep->slen);
-    if (irep->syms == NULL) {
-      ret = MRB_DUMP_GENERAL_FAILURE;
-      goto error_exit;
-    }
-
-    for (i = 0; i < irep->slen; i++) {
-      static const mrb_sym mrb_sym_zero = { 0 };
-      *irep->syms = mrb_sym_zero;
-    }
-    for (i=0; i<irep->slen; i++) {
-      snl = bin_to_uint16(src);               //symbol name length
-      src += MRB_DUMP_SIZE_OF_SHORT;
-
-      if (snl == MRB_DUMP_NULL_SYM_LEN) {
-        irep->syms[i] = 0;
-        continue;
-      }
-
-      if (snl > bufsize - 1) {
-        mrb_free(mrb, buf);
-        bufsize = snl + 1;
-        buf = (char *)mrb_malloc(mrb, bufsize);
-        if (buf == NULL) {
-          ret = MRB_DUMP_GENERAL_FAILURE;
-          goto error_exit;
-        }
-      }
-      memcpy(buf, src, snl);                  //symbol name
-      src += snl;
-      buf[snl] = '\0';
-      irep->syms[i] = mrb_intern2(mrb, buf, snl);
-    }
-  }
-  crc = calc_crc_16_ccitt((unsigned char*)pStart, src - pStart);     //Calculate CRC
-  if (crc != bin_to_uint16(src)) {           //syms CRC
-    ret = MRB_DUMP_INVALID_IREP;
-    goto error_exit;
-  }
-  src += MRB_DUMP_SIZE_OF_SHORT;
-
-  *len = src - recordStart;
-error_exit:
-  mrb_free(mrb, buf);
-
-  return ret;
-}
-
-int
-mrb_read_irep(mrb_state *mrb, const char *bin)
-{
-  int ret = MRB_DUMP_OK, i, n, nirep, sirep;
-  uint32_t len = 0;
-  unsigned char *src;
-  rite_binary_header  bin_header;
-
-  if ((mrb == NULL) || (bin == NULL)) {
-    return MRB_DUMP_INVALID_ARGUMENT;
-  }
-  src = (unsigned char*)bin;
-  sirep = mrb->irep_len;
-
-  //Read File Header Section
-  nirep = read_rite_header(mrb, src, &bin_header);
-  if (nirep < 0)
-    return nirep;
-  
-  src += sizeof(bin_header) + MRB_DUMP_SIZE_OF_SHORT;  //header + crc
-
-  //Read Binary Data Section
-  for (n=0,i=sirep; n<nirep; n++,i++) {
-    src += MRB_DUMP_SIZE_OF_LONG;                      //record ren
-    ret = read_rite_irep_record(mrb, src, &len);
-    if (ret != MRB_DUMP_OK)
-      goto error_exit;
-    src += len;
-  }
-  if (0 != bin_to_uint32(src)) {              //dummy record len
-    ret = MRB_DUMP_GENERAL_FAILURE;
-  }
-
-error_exit:
-  if (ret != MRB_DUMP_OK) {
-    for (n=0,i=sirep; i<mrb->irep_len; n++,i++) {
-      if (mrb->irep[i]) {
-        if (mrb->irep[i]->iseq)
-          mrb_free(mrb, mrb->irep[i]->iseq);
-
-        if (mrb->irep[i]->pool)
-          mrb_free(mrb, mrb->irep[i]->pool);
-
-        if (mrb->irep[i]->syms)
-          mrb_free(mrb, mrb->irep[i]->syms);
-
-        mrb_free(mrb, mrb->irep[i]);
-      }
-    }
-    //    mrb->irep_len = sirep;
-    return ret;
-  }
-  return sirep + hex_to_uint8(bin_header.sirep);
-}
-
-static uint16_t
-hex_to_bin8(unsigned char *dst, unsigned char *src)
-{
-  dst[0] = (hex2bin[src[0]] << 4) | (hex2bin[src[1]]);
-  return 1;
-}
-
-static uint16_t
-hex_to_bin16(unsigned char *dst, unsigned char *src)
-{
-  dst[0] = (hex2bin[src[0]] << 4) | (hex2bin[src[1]]);
-  dst[1] = (hex2bin[src[2]] << 4) | (hex2bin[src[3]]);
-  return 2;
-}
-
-static uint16_t
-hex_to_bin32(unsigned char *dst, unsigned char *src)
-{
-  dst[0] = (hex2bin[src[0]] << 4) | (hex2bin[src[1]]);
-  dst[1] = (hex2bin[src[2]] << 4) | (hex2bin[src[3]]);
-  dst[2] = (hex2bin[src[4]] << 4) | (hex2bin[src[5]]);
-  dst[3] = (hex2bin[src[6]] << 4) | (hex2bin[src[7]]);
-  return 4;
-}
-
-static uint8_t
-hex_to_uint8(unsigned char *hex)
-{
-  return (unsigned char)hex2bin[hex[0]] << 4  |
-         (unsigned char)hex2bin[hex[1]];
-}
-
-static uint16_t
-hex_to_uint16(unsigned char *hex)
-{
-  return (uint16_t)hex2bin[hex[0]] << 12 |
-         (uint16_t)hex2bin[hex[1]] << 8  |
-         (uint16_t)hex2bin[hex[2]] << 4  |
-         (uint16_t)hex2bin[hex[3]];
-}
-
-static uint32_t
-hex_to_uint32(unsigned char *hex)
-{
-  return (uint32_t)hex2bin[hex[0]] << 28  |
-         (uint32_t)hex2bin[hex[1]] << 24  |
-         (uint32_t)hex2bin[hex[2]] << 20  |
-         (uint32_t)hex2bin[hex[3]] << 16  |
-         (uint32_t)hex2bin[hex[4]] << 12  |
-         (uint32_t)hex2bin[hex[5]] << 8   |
-         (uint32_t)hex2bin[hex[6]] << 4   |
-         (uint32_t)hex2bin[hex[7]];
-}
-
-static char*
-hex_to_str(char *hex, char *str, uint16_t *str_len)
-{
-  char *src, *dst, buf[4];
-  int escape = 0, base = 0;
-  char *err_ptr;
-
-  *str_len = 0;
-  for (src = hex, dst = str; *src != '\0'; src++) {
-    if (escape) {
-      switch(*src) {
-      case 'a':  *dst++ = '\a'/* BEL */; break;
-      case 'b':  *dst++ = '\b'/* BS  */; break;
-      case 't':  *dst++ = '\t'/* HT  */; break;
-      case 'n':  *dst++ = '\n'/* LF  */; break;
-      case 'v':  *dst++ = '\v'/* VT  */; break;
-      case 'f':  *dst++ = '\f'/* FF  */; break;
-      case 'r':  *dst++ = '\r'/* CR  */; break;
-      case '\"': /* fall through */
-      case '\'': /* fall through */
-      case '\?': /* fall through */
-      case '\\': *dst++ = *src; break;
-      default:
-        if (*src >= '0' && *src <= '7') {
-          base = 8;
-          strncpy(buf, src, 3);
-        } else if (*src == 'x' || *src == 'X') {
-          base = 16;
-          src++;
-          strncpy(buf, src, 2);
-        }
-
-        *dst++ = (unsigned char) strtol(buf, &err_ptr, base) & 0xff;
-        src += (err_ptr - buf - 1);
-        break;
-      }
-      escape = 0;
-    } else {
-      if (*src == '\\') {
-        escape = 1;
-      } else {
-        escape = 0;
-        *dst++ = *src;
-      }
-    }
-    if (!escape) {
-      (*str_len)++;
-    }
-  }
-  return str;
-}
-
-static void
-irep_error(mrb_state *mrb, int n)
-{
-  static const char msg[] = "irep load error";
-  mrb->exc = (struct RObject*)mrb_object(mrb_exc_new(mrb, E_SCRIPT_ERROR, msg, sizeof(msg) - 1));
-}
-
-mrb_value
-mrb_load_irep_file(mrb_state *mrb, FILE* fp)
-{
-  int n = mrb_read_irep_file(mrb, fp);
-
-  if (n < 0) {
-    irep_error(mrb, n);
-    return mrb_nil_value();
-  }
-  return mrb_run(mrb, mrb_proc_new(mrb, mrb->irep[n]), mrb_top_self(mrb));
-}
-
-mrb_value
-mrb_load_irep(mrb_state *mrb, const char *bin)
-{
-  int n = mrb_read_irep(mrb, bin);
-
-  if (n < 0) {
-    irep_error(mrb, n);
-    return mrb_nil_value();
-  }
-  return mrb_run(mrb, mrb_proc_new(mrb, mrb->irep[n]), mrb_top_self(mrb));
-}

  Deleted: vendor/mruby-4728070/src/mrblib.c (+0 -1084) 100644
===================================================================
--- vendor/mruby-4728070/src/mrblib.c    2013-09-24 12:23:02 +0900 (b97ef33)
+++ /dev/null
@@ -1,1084 +0,0 @@
-#include "mruby.h"
-#include "mruby/irep.h"
-#include "mruby/dump.h"
-#include "mruby/string.h"
-#include "mruby/proc.h"
-
-extern const char mrblib_irep[];
-
-void
-mrb_init_mrblib(mrb_state *mrb)
-{
-  mrb_load_irep(mrb, mrblib_irep);
-}
-
-const char mrblib_irep[] = {
-0x52,0x49,0x54,0x45,0x30,0x30,0x30,0x39,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x39,
-0x30,0x30,0x30,0x30,0x4d,0x41,0x54,0x5a,0x20,0x20,0x20,0x20,0x30,0x30,0x30,0x39,
-0x30,0x30,0x30,0x30,0x00,0x00,0x42,0xbc,0x00,0x94,0x00,0x00,0x20,0x20,0x20,0x20,
-0x20,0x20,0x20,0x20,0x87,0x86,0x00,0x00,0x03,0x5f,0x53,0x43,0x00,0x01,0x00,0x03,
-0x00,0x02,0x46,0x9f,0x00,0x00,0x00,0x83,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x05,
-0x00,0x80,0x00,0x43,0x00,0x80,0x00,0xc5,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x91,
-0x00,0x80,0x80,0x43,0x00,0x80,0x01,0xc5,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x91,
-0x00,0x80,0xc0,0x43,0x00,0x80,0x02,0x45,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x91,
-0x00,0x81,0x00,0x43,0x00,0x80,0x02,0xc5,0x00,0x80,0x00,0x05,0x01,0x00,0x02,0x11,
-0x00,0x81,0x40,0x43,0x00,0x80,0x03,0x45,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x91,
-0x00,0x81,0x80,0x43,0x00,0x80,0x03,0xc5,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x91,
-0x00,0x81,0xc0,0x43,0x00,0x80,0x04,0x45,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x91,
-0x00,0x82,0x00,0x43,0x00,0x80,0x04,0xc5,0x00,0x80,0x00,0x05,0x01,0x00,0x04,0x11,
-0x00,0x82,0x40,0x43,0x00,0x80,0x05,0x45,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x91,
-0x00,0x82,0x80,0x43,0x00,0x80,0x05,0xc5,0x00,0x80,0x00,0x05,0x01,0x00,0x05,0x11,
-0x00,0x82,0xc0,0x43,0x00,0x80,0x06,0x45,0x00,0x80,0x00,0x05,0x01,0x00,0x06,0x11,
-0x00,0x83,0x40,0x43,0x00,0x80,0x06,0xc5,0x00,0x80,0x00,0x05,0x00,0x83,0x80,0x44,
-0x00,0x80,0x07,0x45,0x00,0x80,0x00,0x05,0x00,0x83,0xc0,0x44,0x00,0x80,0x19,0x45,
-0x00,0x80,0x08,0x11,0x01,0x00,0x09,0x04,0x00,0x84,0x40,0xa0,0x00,0xc0,0x02,0x19,
-0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x05,0x00,0x84,0x80,0x43,0x00,0x80,0x1e,0xc5,
-0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x05,0x00,0x84,0xc0,0x43,0x00,0x80,0x22,0x45,
-0x00,0x80,0x00,0x05,0x00,0x85,0x00,0x44,0x00,0x80,0x27,0x45,0x00,0x80,0x00,0x05,
-0x01,0x00,0x00,0x05,0x00,0x84,0xc0,0x43,0x00,0x80,0x27,0xc5,0x00,0x80,0x00,0x05,
-0x01,0x00,0x00,0x05,0x00,0x85,0x40,0x43,0x00,0x80,0x28,0x45,0x00,0x80,0x00,0x05,
-0x01,0x00,0x00,0x05,0x00,0x85,0x80,0x43,0x00,0x80,0x2c,0xc5,0x00,0x80,0x00,0x05,
-0x00,0x83,0x80,0x44,0x00,0x80,0x2d,0xc5,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x05,
-0x00,0x85,0x80,0x43,0x00,0x80,0x2e,0x45,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x05,
-0x00,0x85,0xc0,0x43,0x00,0x80,0x2e,0xc5,0x00,0x80,0x00,0x05,0x00,0x85,0x00,0x44,
-0x00,0x80,0x31,0x45,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x05,0x00,0x86,0x00,0x43,
-0x00,0x80,0x31,0xc5,0x00,0x80,0x00,0x05,0x00,0x85,0x00,0x44,0x00,0x80,0x32,0x45,
-0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x05,0x00,0x86,0x40,0x43,0x00,0x80,0x35,0xc5,
-0x00,0x80,0x00,0x05,0x00,0x83,0x80,0x44,0x00,0x80,0x41,0x45,0x00,0x80,0x00,0x05,
-0x01,0x00,0x00,0x05,0x00,0x86,0x40,0x43,0x00,0x80,0x41,0xc5,0x00,0x80,0x00,0x05,
-0x00,0x83,0xc0,0x44,0x00,0x80,0x42,0x45,0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x05,
-0x00,0x86,0x80,0x43,0x00,0x80,0x44,0xc5,0x00,0x80,0x00,0x05,0x00,0x83,0x80,0x44,
-0x00,0x80,0x48,0x45,0x00,0x80,0x00,0x05,0x00,0x85,0x00,0x44,0x00,0x80,0x48,0xc5,
-0x00,0x80,0x00,0x05,0x01,0x00,0x00,0x05,0x00,0x86,0x80,0x43,0x00,0x80,0x49,0x45,
-0x00,0x00,0x00,0x4a,0x0f,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1b,
-0x00,0x09,0x45,0x78,0x63,0x65,0x70,0x74,0x69,0x6f,0x6e,0x00,0x0d,0x53,0x74,0x61,
-0x6e,0x64,0x61,0x72,0x64,0x45,0x72,0x72,0x6f,0x72,0x00,0x0d,0x41,0x72,0x67,0x75,
-0x6d,0x65,0x6e,0x74,0x45,0x72,0x72,0x6f,0x72,0x00,0x0e,0x4c,0x6f,0x63,0x61,0x6c,
-0x4a,0x75,0x6d,0x70,0x45,0x72,0x72,0x6f,0x72,0x00,0x0a,0x52,0x61,0x6e,0x67,0x65,
-0x45,0x72,0x72,0x6f,0x72,0x00,0x10,0x46,0x6c,0x6f,0x61,0x74,0x44,0x6f,0x6d,0x61,
-0x69,0x6e,0x45,0x72,0x72,0x6f,0x72,0x00,0x0b,0x52,0x65,0x67,0x65,0x78,0x70,0x45,
-0x72,0x72,0x6f,0x72,0x00,0x09,0x54,0x79,0x70,0x65,0x45,0x72,0x72,0x6f,0x72,0x00,
-0x09,0x4e,0x61,0x6d,0x65,0x45,0x72,0x72,0x6f,0x72,0x00,0x0d,0x4e,0x6f,0x4d,0x65,
-0x74,0x68,0x6f,0x64,0x45,0x72,0x72,0x6f,0x72,0x00,0x0a,0x49,0x6e,0x64,0x65,0x78,
-0x45,0x72,0x72,0x6f,0x72,0x00,0x08,0x4b,0x65,0x79,0x45,0x72,0x72,0x6f,0x72,0x00,
-0x0b,0x53,0x63,0x72,0x69,0x70,0x74,0x45,0x72,0x72,0x6f,0x72,0x00,0x13,0x4e,0x6f,
-0x74,0x49,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x45,0x72,0x72,0x6f,
-0x72,0x00,0x0a,0x45,0x6e,0x75,0x6d,0x65,0x72,0x61,0x62,0x6c,0x65,0x00,0x06,0x4b,
-0x65,0x72,0x6e,0x65,0x6c,0x00,0x06,0x4f,0x62,0x6a,0x65,0x63,0x74,0x00,0x0e,0x63,
-0x6f,0x6e,0x73,0x74,0x5f,0x64,0x65,0x66,0x69,0x6e,0x65,0x64,0x3f,0x00,0x06,0x53,
-0x74,0x72,0x75,0x63,0x74,0x00,0x06,0x53,0x74,0x72,0x69,0x6e,0x67,0x00,0x0a,0x43,
-0x6f,0x6d,0x70,0x61,0x72,0x61,0x62,0x6c,0x65,0x00,0x06,0x4d,0x6f,0x64,0x75,0x6c,
-0x65,0x00,0x05,0x52,0x61,0x6e,0x67,0x65,0x00,0x07,0x49,0x6e,0x74,0x65,0x67,0x65,
-0x72,0x00,0x07,0x4e,0x75,0x6d,0x65,0x72,0x69,0x63,0x00,0x04,0x48,0x61,0x73,0x68,
-0x00,0x05,0x41,0x72,0x72,0x61,0x79,0xb5,0xf3,0x00,0x00,0x00,0x3f,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x06,0x00,0x80,0x00,0x06,0x00,
-0x80,0x40,0x47,0x01,0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0x2a,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,
-0x09,0x65,0x78,0x63,0x65,0x70,0x74,0x69,0x6f,0x6e,0x28,0xc2,0x00,0x00,0x00,0x41,
-0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x08,0x00,0x08,
-0x00,0xa6,0x01,0x80,0x00,0x06,0x02,0x01,0x00,0x37,0x02,0x80,0x40,0x01,0x02,0x01,
-0x40,0x38,0x02,0x80,0x80,0x01,0x01,0x80,0x3f,0xa1,0x01,0x80,0x00,0x29,0xfd,0x47,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x03,0x6e,0x65,0x77,0xcb,
-0xf8,0x00,0x00,0x00,0x24,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,
-0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,
-0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,
-0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,
-0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,
-0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,
-0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x1a,0x53,0x43,0x00,
-0x01,0x00,0x04,0x00,0x02,0x36,0x78,0x00,0x00,0x00,0x4f,0x00,0x80,0x00,0x48,0x01,
-0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x08,0xc0,0x00,
-0x80,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0e,0xc0,0x00,0x80,0x80,0x46,0x00,
-0x80,0x00,0x48,0x01,0x00,0x12,0xc0,0x00,0x80,0xc0,0x46,0x00,0x80,0x00,0x48,0x01,
-0x00,0x16,0xc0,0x00,0x81,0x00,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x1a,0xc0,0x00,
-0x81,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x03,0x04,0x01,0x80,0x01,0x84,0x02,
-0x00,0x00,0x05,0x00,0x81,0xc1,0x20,0x00,0x80,0x00,0x48,0x01,0x00,0x1e,0xc0,0x00,
-0x82,0x00,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x22,0xc0,0x00,0x82,0x40,0x46,0x00,
-0x80,0x00,0x48,0x01,0x00,0x26,0xc0,0x00,0x82,0x80,0x46,0x00,0x80,0x00,0x48,0x01,
-0x00,0x2a,0xc0,0x00,0x82,0xc0,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x06,0x04,0x01,
-0x80,0x05,0x84,0x02,0x00,0x00,0x05,0x00,0x81,0xc1,0x20,0x00,0x80,0x00,0x48,0x01,
-0x00,0x06,0x84,0x01,0x80,0x01,0x04,0x02,0x00,0x00,0x05,0x00,0x81,0xc1,0x20,0x00,
-0x80,0x00,0x48,0x01,0x00,0x30,0xc0,0x00,0x83,0x80,0x46,0x00,0x80,0x00,0x48,0x01,
-0x00,0x34,0xc0,0x00,0x83,0xc0,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x08,0x04,0x01,
-0x80,0x05,0x04,0x02,0x00,0x00,0x05,0x00,0x81,0xc1,0x20,0x00,0x80,0x00,0x48,0x01,
-0x00,0x38,0xc0,0x00,0x84,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x3c,0xc0,0x00,
-0x84,0x80,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x09,0x84,0x01,0x80,0x04,0x04,0x02,
-0x00,0x00,0x05,0x00,0x81,0xc1,0x20,0x00,0x80,0x00,0x48,0x01,0x00,0x40,0xc0,0x00,
-0x85,0x00,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x44,0xc0,0x00,0x85,0x40,0x46,0x00,
-0x80,0x00,0x48,0x01,0x00,0x0b,0x04,0x01,0x80,0x02,0x84,0x02,0x00,0x00,0x05,0x00,
-0x81,0xc1,0x20,0x01,0x00,0x00,0x29,0x5e,0x8d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x17,0x00,0x04,0x61,0x6c,0x6c,0x3f,0x00,0x04,0x61,0x6e,0x79,0x3f,0x00,
-0x07,0x63,0x6f,0x6c,0x6c,0x65,0x63,0x74,0x00,0x06,0x64,0x65,0x74,0x65,0x63,0x74,
-0x00,0x0f,0x65,0x61,0x63,0x68,0x5f,0x77,0x69,0x74,0x68,0x5f,0x69,0x6e,0x64,0x65,
-0x78,0x00,0x07,0x65,0x6e,0x74,0x72,0x69,0x65,0x73,0x00,0x04,0x66,0x69,0x6e,0x64,
-0x00,0x0c,0x61,0x6c,0x69,0x61,0x73,0x5f,0x6d,0x65,0x74,0x68,0x6f,0x64,0x00,0x08,
-0x66,0x69,0x6e,0x64,0x5f,0x61,0x6c,0x6c,0x00,0x04,0x67,0x72,0x65,0x70,0x00,0x08,
-0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x3f,0x00,0x06,0x69,0x6e,0x6a,0x65,0x63,0x74,
-0x00,0x06,0x72,0x65,0x64,0x75,0x63,0x65,0x00,0x03,0x6d,0x61,0x70,0x00,0x03,0x6d,
-0x61,0x78,0x00,0x03,0x6d,0x69,0x6e,0x00,0x07,0x6d,0x65,0x6d,0x62,0x65,0x72,0x3f,
-0x00,0x09,0x70,0x61,0x72,0x74,0x69,0x74,0x69,0x6f,0x6e,0x00,0x06,0x72,0x65,0x6a,
-0x65,0x63,0x74,0x00,0x06,0x73,0x65,0x6c,0x65,0x63,0x74,0x00,0x0c,0x5f,0x5f,0x73,
-0x6f,0x72,0x74,0x5f,0x73,0x75,0x62,0x5f,0x5f,0x00,0x04,0x73,0x6f,0x72,0x74,0x00,
-0x04,0x74,0x6f,0x5f,0x61,0xfb,0x20,0x00,0x00,0x00,0x52,0x53,0x43,0x00,0x03,0x00,
-0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x0c,0x00,0x00,0x00,0xa6,0x01,0x00,0x00,
-0x07,0x01,0x80,0x40,0x01,0x01,0xc0,0x02,0x19,0x01,0x80,0x00,0x06,0x02,0x00,0x03,
-0x40,0x01,0x80,0x00,0x21,0x00,0x40,0x01,0x97,0x01,0x80,0x00,0x06,0x02,0x00,0x05,
-0x40,0x01,0x80,0x00,0x21,0x01,0x00,0x00,0x29,0xc0,0xb7,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,
-0x4e,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x0b,0x02,
-0x00,0x00,0x26,0x01,0x80,0x40,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,
-0xc0,0x01,0x19,0x01,0x80,0x00,0x05,0x00,0x40,0x01,0x97,0x01,0x80,0x00,0x08,0x01,
-0x80,0x80,0x16,0x01,0x80,0x40,0x29,0x01,0x80,0x00,0x29,0xf1,0xb6,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x63,0x61,0x6c,0x6c,0x38,0x03,0x00,
-0x00,0x00,0x40,0x53,0x43,0x00,0x03,0x00,0x04,0x00,0x02,0x58,0x18,0x00,0x00,0x00,
-0x09,0x02,0x00,0x00,0x26,0x01,0x80,0x40,0x01,0x01,0xc0,0x01,0x19,0x01,0x80,0x00,
-0x05,0x00,0x40,0x01,0x97,0x01,0x80,0x00,0x08,0x01,0x80,0x80,0x16,0x01,0x80,0x40,
-0x29,0x01,0x80,0x00,0x29,0xcd,0xbc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x52,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,
-0x39,0x00,0x00,0x00,0x0c,0x00,0x00,0x00,0xa6,0x01,0x00,0x00,0x08,0x01,0x80,0x40,
-0x01,0x01,0xc0,0x02,0x19,0x01,0x80,0x00,0x06,0x02,0x00,0x03,0x40,0x01,0x80,0x00,
-0x21,0x00,0x40,0x01,0x97,0x01,0x80,0x00,0x06,0x02,0x00,0x05,0x40,0x01,0x80,0x00,
-0x21,0x01,0x00,0x00,0x29,0x14,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,0x4e,0x53,0x43,0x00,
-0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x0b,0x02,0x00,0x00,0x26,0x01,
-0x80,0x40,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0xc0,0x02,0x19,0x01,
-0x80,0x00,0x07,0x01,0x80,0x80,0x16,0x01,0x80,0x40,0x29,0x00,0x40,0x00,0x97,0x01,
-0x80,0x00,0x05,0x01,0x80,0x00,0x29,0x75,0x55,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x01,0x00,0x04,0x63,0x61,0x6c,0x6c,0x38,0x03,0x00,0x00,0x00,0x40,0x53,
-0x43,0x00,0x03,0x00,0x04,0x00,0x02,0x58,0x18,0x00,0x00,0x00,0x09,0x02,0x00,0x00,
-0x26,0x01,0x80,0x40,0x01,0x01,0xc0,0x02,0x19,0x01,0x80,0x00,0x07,0x01,0x80,0x80,
-0x16,0x01,0x80,0x40,0x29,0x00,0x40,0x00,0x97,0x01,0x80,0x00,0x05,0x01,0x80,0x00,
-0x29,0x49,0x5f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x3a,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,
-0x06,0x00,0x00,0x00,0xa6,0x01,0x00,0xc0,0x37,0x01,0x80,0x00,0x06,0x02,0x00,0x03,
-0x40,0x01,0x80,0x00,0x21,0x01,0x00,0x00,0x29,0x96,0xb1,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,
-0x44,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x07,0x02,
-0x00,0x00,0x26,0x01,0x80,0x80,0x15,0x02,0x00,0x40,0x15,0x02,0x80,0x40,0x01,0x02,
-0x00,0x40,0xa0,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0x4f,0x59,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x70,0x75,0x73,0x68,0x00,0x04,0x63,
-0x61,0x6c,0x6c,0x73,0x49,0x00,0x00,0x00,0x46,0x53,0x43,0x00,0x04,0x00,0x06,0x00,
-0x02,0xfd,0xca,0x00,0x00,0x00,0x09,0x00,0x10,0x00,0xa6,0x00,0x40,0x00,0x97,0x00,
-0x40,0x00,0x97,0x00,0x80,0x00,0x05,0x01,0x80,0x40,0x01,0x02,0x00,0x00,0x06,0x02,
-0x80,0x03,0x40,0x02,0x00,0x00,0x21,0x01,0x80,0x00,0x29,0xb3,0x01,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,
-0x00,0x00,0x4a,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,
-0x0a,0x02,0x00,0x00,0x26,0x01,0x80,0x80,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x00,
-0xa0,0x01,0xc0,0x01,0x99,0x00,0x80,0xc0,0x16,0x01,0x80,0x40,0x29,0x00,0x40,0x00,
-0x97,0x01,0x80,0x00,0x05,0x01,0x80,0x00,0x29,0x4d,0x95,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x63,0x61,0x6c,0x6c,0x38,0x03,0x00,0x00,0x00,
-0x3e,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x07,0x00,
-0x00,0x00,0xa6,0x01,0x3f,0xff,0x83,0x01,0x80,0x00,0x06,0x02,0x00,0x03,0x40,0x01,
-0x80,0x00,0x21,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,0x95,0x35,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,
-0x00,0x00,0x49,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,
-0x09,0x02,0x00,0x00,0x26,0x01,0x80,0x40,0x15,0x02,0x00,0x40,0x01,0x02,0x80,0x80,
-0x15,0x01,0x80,0x01,0x20,0x01,0x80,0x80,0x15,0x01,0x80,0x40,0xad,0x01,0x80,0x80,
-0x16,0x01,0x80,0x00,0x29,0xd2,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x02,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x01,0x2b,0xf0,0x09,0x00,0x00,0x00,0x3a,
-0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x06,0x00,0x00,
-0x00,0x26,0x01,0x00,0xc0,0x37,0x01,0x80,0x00,0x06,0x02,0x00,0x03,0x40,0x01,0x80,
-0x00,0x21,0x01,0x00,0x00,0x29,0x04,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,0x36,0x53,0x43,
-0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x05,0x02,0x00,0x00,0x26,
-0x01,0x80,0x80,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,
-0x7d,0x28,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x70,0x75,
-0x73,0x68,0x23,0x92,0x00,0x00,0x00,0x3a,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,
-0x48,0x39,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0xa6,0x01,0x00,0xc0,0x37,0x01,0x80,
-0x00,0x06,0x02,0x00,0x03,0x40,0x01,0x80,0x00,0x21,0x01,0x00,0x00,0x29,0x96,0xb1,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,
-0x9d,0xa1,0x00,0x00,0x00,0x54,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,
-0x00,0x00,0x00,0x0b,0x02,0x00,0x00,0x26,0x01,0x80,0x40,0x15,0x02,0x00,0x40,0x01,
-0x01,0x80,0x00,0xa0,0x01,0xc0,0x02,0x19,0x01,0x80,0x80,0x15,0x02,0x00,0x40,0x01,
-0x01,0x80,0x40,0xa0,0x00,0x40,0x00,0x97,0x01,0x80,0x00,0x05,0x01,0x80,0x00,0x29,
-0x32,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x63,0x61,
-0x6c,0x6c,0x00,0x04,0x70,0x75,0x73,0x68,0x3d,0x25,0x00,0x00,0x00,0x3a,0x53,0x43,
-0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x06,0x02,0x00,0x00,0xa6,
-0x01,0x81,0x00,0x37,0x02,0x00,0x00,0x06,0x02,0x80,0x03,0x40,0x02,0x00,0x00,0x21,
-0x01,0x80,0x00,0x29,0xd3,0xbb,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
-0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,0x71,0x53,0x43,0x00,0x03,
-0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x11,0x02,0x00,0x00,0x26,0x01,0x80,
-0x40,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0xc0,0x05,0x19,0x01,0x80,
-0xc0,0x15,0x02,0x00,0x80,0x15,0x02,0x40,0x02,0x19,0x02,0x00,0x80,0x15,0x02,0x80,
-0x40,0x01,0x02,0x00,0x80,0xa0,0x00,0x40,0x00,0x97,0x02,0x00,0x40,0x01,0x01,0x80,
-0x40,0xa0,0x00,0x40,0x00,0x97,0x01,0x80,0x00,0x05,0x01,0x80,0x00,0x29,0xb8,0xef,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x03,0x3d,0x3d,0x3d,0x00,
-0x04,0x70,0x75,0x73,0x68,0x00,0x04,0x63,0x61,0x6c,0x6c,0x5e,0x62,0x00,0x00,0x00,
-0x3a,0x53,0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x06,0x02,
-0x00,0x00,0x26,0x01,0x80,0x00,0x08,0x02,0x00,0x00,0x06,0x02,0x80,0x03,0x40,0x02,
-0x00,0x00,0x21,0x01,0x80,0x00,0x29,0xdd,0xdc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,0x4c,0x53,
-0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x0b,0x02,0x00,0x00,
-0x26,0x01,0x80,0x40,0x01,0x02,0x00,0x40,0x15,0x01,0x80,0x00,0xb2,0x01,0xc0,0x02,
-0x19,0x01,0x80,0x00,0x07,0x01,0x80,0xc0,0x16,0x01,0x80,0x40,0x29,0x00,0x40,0x00,
-0x97,0x01,0x80,0x00,0x05,0x01,0x80,0x00,0x29,0x71,0xed,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x01,0x00,0x02,0x3d,0x3d,0x2a,0x4f,0x00,0x00,0x01,0x10,0x53,
-0x43,0x00,0x06,0x00,0x09,0x00,0x02,0x62,0x45,0x00,0x00,0x00,0x27,0x00,0x08,0x00,
-0xa6,0x03,0x00,0x40,0x01,0x03,0x00,0x00,0x20,0x03,0xc0,0x00,0x83,0x03,0x00,0x40,
-0xb5,0x03,0x40,0x02,0x19,0x03,0x00,0x00,0x06,0x03,0x80,0x01,0x91,0x04,0x00,0x00,
-0x3d,0x03,0x00,0x81,0x20,0x03,0x00,0x02,0x11,0x03,0x80,0x40,0x01,0x04,0x3f,0xff,
-0x03,0x03,0x81,0x80,0xa0,0x03,0x01,0x40,0xa0,0x03,0x40,0x04,0x19,0x03,0x00,0x40,
-0x01,0x03,0xbf,0xff,0x03,0x03,0x01,0x80,0xa0,0x01,0x81,0x80,0x01,0x03,0x00,0x03,
-0xc0,0x01,0x01,0x80,0x01,0x03,0x00,0x40,0x01,0x03,0x01,0xc0,0x20,0x03,0x00,0x40,
-0x01,0x03,0x02,0x00,0x20,0x03,0x40,0x01,0x99,0x02,0x00,0x00,0x07,0x02,0x80,0x00,
-0x05,0x00,0x40,0x02,0x97,0x02,0x00,0x00,0x08,0x03,0x00,0x40,0x01,0x03,0xbf,0xff,
-0x83,0x03,0x01,0x80,0xa0,0x02,0x81,0x80,0x01,0x03,0x00,0x00,0x06,0x03,0x80,0x05,
-0x40,0x03,0x02,0x40,0x21,0x02,0x80,0x00,0x29,0xa0,0x27,0x00,0x00,0x00,0x01,0x11,
-0x00,0x12,0x74,0x6f,0x6f,0x20,0x6d,0x61,0x6e,0x79,0x20,0x61,0x72,0x67,0x75,0x6d,
-0x65,0x6e,0x74,0x73,0x04,0x88,0x00,0x00,0x00,0x0a,0x00,0x04,0x73,0x69,0x7a,0x65,
-0x00,0x01,0x3e,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x0d,0x41,0x72,0x67,0x75,
-0x6d,0x65,0x6e,0x74,0x45,0x72,0x72,0x6f,0x72,0x00,0x06,0x53,0x79,0x6d,0x62,0x6f,
-0x6c,0x00,0x03,0x3d,0x3d,0x3d,0x00,0x02,0x5b,0x5d,0x00,0x03,0x70,0x6f,0x70,0x00,
-0x06,0x65,0x6d,0x70,0x74,0x79,0x3f,0x00,0x04,0x65,0x61,0x63,0x68,0x6c,0x50,0x00,
-0x00,0x00,0x3a,0x53,0x43,0x00,0x04,0x00,0x07,0x00,0x02,0xed,0xeb,0x00,0x00,0x00,
-0x06,0x04,0x00,0x00,0x26,0x02,0x00,0x40,0x01,0x02,0x80,0xc0,0x15,0x03,0x00,0x80,
-0x01,0x02,0x00,0x01,0x20,0x02,0x00,0x00,0x29,0xbe,0x91,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x73,0x65,0x6e,0x64,0x79,0xfc,0x00,0x00,0x00,
-0x5a,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x0e,0x02,
-0x00,0x00,0x26,0x01,0x81,0x00,0x15,0x01,0xc0,0x02,0x99,0x01,0x80,0x00,0x08,0x01,
-0x81,0x00,0x16,0x01,0x80,0x40,0x01,0x01,0x81,0x40,0x16,0x00,0x40,0x02,0x97,0x01,
-0x80,0x80,0x15,0x02,0x01,0x40,0x15,0x02,0x80,0x40,0x01,0x01,0x80,0x01,0x20,0x01,
-0x81,0x40,0x16,0x01,0x80,0x00,0x29,0xb0,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x01,0x00,0x04,0x63,0x61,0x6c,0x6c,0x38,0x03,0x00,0x00,0x00,0x3e,0x53,
-0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
-0xa6,0x01,0x00,0x00,0x07,0x01,0x80,0x00,0x05,0x02,0x00,0x00,0x06,0x02,0x80,0x03,
-0x40,0x02,0x00,0x00,0x21,0x01,0x80,0x00,0x29,0x5e,0x55,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,
-0xaa,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x20,0x02,
-0x00,0x00,0x26,0x01,0x80,0x80,0x15,0x01,0xc0,0x02,0x19,0x00,0x80,0xc0,0x16,0x01,
-0x80,0x00,0x08,0x01,0x80,0x80,0x16,0x00,0x40,0x0c,0x17,0x01,0x80,0x40,0x15,0x01,
-0xc0,0x06,0x19,0x01,0x80,0x40,0x15,0x02,0x00,0x40,0x01,0x02,0x80,0xc0,0x15,0x01,
-0x80,0x01,0x20,0x02,0x3f,0xff,0x83,0x01,0x80,0x40,0xb5,0x01,0xc0,0x01,0x99,0x01,
-0x80,0x40,0x01,0x01,0x80,0xc0,0x16,0x00,0x40,0x00,0x97,0x01,0x80,0x00,0x05,0x00,
-0x40,0x05,0x17,0x01,0x80,0x40,0x01,0x02,0x00,0xc0,0x15,0x01,0x80,0x80,0xa0,0x02,
-0x3f,0xff,0x83,0x01,0x80,0x40,0xb5,0x01,0xc0,0x01,0x99,0x01,0x80,0x40,0x01,0x01,
-0x80,0xc0,0x16,0x00,0x40,0x00,0x97,0x01,0x80,0x00,0x05,0x01,0x80,0x00,0x29,0x56,
-0xfe,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x04,0x63,0x61,0x6c,
-0x6c,0x00,0x01,0x3e,0x00,0x03,0x3c,0x3d,0x3e,0xb1,0x12,0x00,0x00,0x00,0x3e,0x53,
-0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
-0xa6,0x01,0x00,0x00,0x07,0x01,0x80,0x00,0x05,0x02,0x00,0x00,0x06,0x02,0x80,0x03,
-0x40,0x02,0x00,0x00,0x21,0x01,0x80,0x00,0x29,0x5e,0x55,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,
-0xaa,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x20,0x02,
-0x00,0x00,0x26,0x01,0x80,0x80,0x15,0x01,0xc0,0x02,0x19,0x00,0x80,0xc0,0x16,0x01,
-0x80,0x00,0x08,0x01,0x80,0x80,0x16,0x00,0x40,0x0c,0x17,0x01,0x80,0x40,0x15,0x01,
-0xc0,0x06,0x19,0x01,0x80,0x40,0x15,0x02,0x00,0x40,0x01,0x02,0x80,0xc0,0x15,0x01,
-0x80,0x01,0x20,0x02,0x3f,0xff,0x83,0x01,0x80,0x40,0xb3,0x01,0xc0,0x01,0x99,0x01,
-0x80,0x40,0x01,0x01,0x80,0xc0,0x16,0x00,0x40,0x00,0x97,0x01,0x80,0x00,0x05,0x00,
-0x40,0x05,0x17,0x01,0x80,0x40,0x01,0x02,0x00,0xc0,0x15,0x01,0x80,0x80,0xa0,0x02,
-0x3f,0xff,0x83,0x01,0x80,0x40,0xb3,0x01,0xc0,0x01,0x99,0x01,0x80,0x40,0x01,0x01,
-0x80,0xc0,0x16,0x00,0x40,0x00,0x97,0x01,0x80,0x00,0x05,0x01,0x80,0x00,0x29,0x6d,
-0x55,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x04,0x63,0x61,0x6c,
-0x6c,0x00,0x01,0x3c,0x00,0x03,0x3c,0x3d,0x3e,0x5c,0x7a,0x00,0x00,0x00,0x4a,0x53,
-0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x0a,0x00,0x00,0x00,
-0xa6,0x01,0x01,0x00,0x37,0x01,0x81,0x00,0x37,0x02,0x00,0x00,0x06,0x02,0x80,0x03,
-0x40,0x02,0x00,0x00,0x21,0x02,0x00,0x80,0x01,0x02,0x80,0xc0,0x01,0x00,0x01,0x01,
-0x37,0x00,0x00,0x00,0x29,0x16,0x29,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,0x5c,0x53,0x43,0x00,
-0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x0d,0x02,0x00,0x00,0x26,0x01,
-0x80,0x40,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0xc0,0x02,0x19,0x01,
-0x80,0x80,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x40,0xa0,0x00,0x40,0x01,0x97,0x01,
-0x80,0xc0,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x40,0xa0,0x01,0x80,0x00,0x29,0xa1,
-0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x63,0x61,0x6c,
-0x6c,0x00,0x04,0x70,0x75,0x73,0x68,0x3d,0x25,0x00,0x00,0x00,0x3a,0x53,0x43,0x00,
-0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0xa6,0x01,
-0x00,0xc0,0x37,0x01,0x80,0x00,0x06,0x02,0x00,0x03,0x40,0x01,0x80,0x00,0x21,0x01,
-0x00,0x00,0x29,0x96,0xb1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,
-0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,0x54,0x53,0x43,0x00,0x03,0x00,
-0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x0b,0x02,0x00,0x00,0x26,0x01,0x80,0x40,
-0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0xc0,0x01,0x19,0x01,0x80,0x00,
-0x05,0x00,0x40,0x01,0x97,0x01,0x80,0x80,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x40,
-0xa0,0x01,0x80,0x00,0x29,0xab,0x72,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x02,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x04,0x70,0x75,0x73,0x68,0x3d,0x25,0x00,
-0x00,0x01,0x94,0x53,0x43,0x00,0x0c,0x00,0x13,0x00,0x02,0x16,0xff,0x00,0x00,0x00,
-0x52,0x0a,0x00,0x00,0xa6,0x06,0x01,0x00,0x01,0x06,0x81,0x40,0x01,0x06,0x00,0x00,
-0xb2,0x06,0x40,0x06,0x19,0x06,0x00,0xc0,0x01,0x06,0xc0,0x00,0x03,0x06,0x00,0x00,
-0xb2,0x06,0x40,0x03,0x99,0x06,0x00,0x80,0x01,0x06,0x81,0x00,0x01,0x06,0x00,0x40,
-0xa0,0x06,0x80,0x40,0x01,0x07,0x01,0x00,0x01,0x07,0x83,0x00,0x01,0x06,0x80,0x81,
-0x20,0x05,0x80,0x00,0x29,0x06,0x00,0xc0,0x01,0x06,0xbf,0xff,0x83,0x06,0x00,0x00,
-0xb2,0x06,0x40,0x02,0x99,0x06,0x00,0x40,0x01,0x06,0x80,0x80,0x01,0x03,0x83,0x00,
-0x01,0x04,0x03,0x40,0x01,0x00,0x40,0x02,0x17,0x06,0x00,0x80,0x01,0x06,0x80,0x40,
-0x01,0x03,0x83,0x00,0x01,0x04,0x03,0x40,0x01,0x06,0x01,0xc0,0x01,0x06,0x81,0x00,
-0x01,0x06,0x00,0x40,0xa0,0x04,0x83,0x00,0x01,0x06,0x01,0x00,0x01,0x06,0x81,0x40,
-0x01,0x05,0x03,0x00,0x01,0x05,0x83,0x40,0x01,0x06,0x01,0x00,0x01,0x06,0x00,0xc0,
-0xad,0x06,0x81,0x40,0x01,0x07,0x00,0x03,0x40,0x06,0x01,0x00,0xa1,0x06,0x02,0x40,
-0x01,0x06,0x80,0x40,0x01,0x07,0x02,0x80,0x01,0x07,0x83,0x00,0x01,0x06,0x80,0x81,
-0x20,0x06,0x00,0xc0,0x01,0x06,0x00,0xc0,0xad,0x06,0xc0,0x00,0x83,0x06,0x01,0x40,
-0xa0,0x01,0x83,0x00,0x01,0x06,0x02,0x80,0x01,0x06,0x81,0x00,0x01,0x06,0x01,0x80,
-0xb5,0x06,0x40,0x04,0x99,0x06,0x00,0x00,0x06,0x06,0x80,0x40,0x01,0x07,0x00,0x80,
-0x01,0x07,0x80,0xc0,0x01,0x08,0x01,0x00,0x01,0x08,0x82,0x80,0x01,0x08,0x82,0x00,
-0xaf,0x09,0x01,0x80,0x01,0x06,0x01,0xc2,0xa1,0x06,0x02,0x80,0x01,0x06,0x81,0x40,
-0x01,0x06,0x02,0x40,0xb3,0x06,0x40,0x05,0x19,0x06,0x00,0x00,0x06,0x06,0x80,0x40,
-0x01,0x07,0x00,0x80,0x01,0x07,0x80,0xc0,0x01,0x08,0x02,0x80,0x01,0x08,0x00,0xc0,
-0xad,0x08,0x81,0x40,0x01,0x09,0x01,0x80,0x01,0x06,0x01,0xc2,0xa1,0x00,0x40,0x00,
-0x97,0x06,0x00,0x00,0x05,0x06,0x00,0x00,0x29,0xaf,0x66,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x0a,0x00,0x02,0x3d,0x3d,0x00,0x02,0x5b,0x5d,0x00,0x03,0x5b,
-0x5d,0x3d,0x00,0x01,0x2b,0x00,0x04,0x75,0x70,0x74,0x6f,0x00,0x01,0x25,0x00,0x01,
-0x3e,0x00,0x0c,0x5f,0x5f,0x73,0x6f,0x72,0x74,0x5f,0x73,0x75,0x62,0x5f,0x5f,0x00,
-0x01,0x2d,0x00,0x01,0x3c,0xdc,0x00,0x00,0x00,0x00,0xd9,0x53,0x43,0x00,0x03,0x00,
-0x07,0x00,0x02,0x68,0x7b,0x00,0x00,0x00,0x28,0x02,0x00,0x00,0x26,0x01,0x81,0x80,
-0x15,0x01,0xc0,0x03,0x99,0x01,0x81,0x80,0x15,0x02,0x01,0xc0,0x15,0x02,0x80,0x40,
-0x01,0x02,0x00,0x40,0xa0,0x02,0x82,0x40,0x15,0x01,0x80,0x01,0x20,0x00,0x40,0x02,
-0x97,0x01,0x81,0xc0,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x40,0xa0,0x02,0x02,0x40,
-0x15,0x01,0x80,0x80,0xa0,0x02,0x3f,0xff,0x83,0x01,0x80,0xc0,0xb5,0x01,0xc0,0x05,
-0x99,0x01,0x81,0xc0,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x40,0xa0,0x02,0x02,0x00,
-0x15,0x02,0x82,0xc0,0x15,0x03,0x00,0xc0,0x01,0x02,0x01,0x01,0x20,0x01,0x82,0xc0,
-0x15,0x01,0x81,0x40,0xaf,0x01,0x82,0xc0,0x16,0x00,0x40,0x05,0x17,0x01,0x81,0xc0,
-0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x40,0xa0,0x02,0x02,0x00,0x15,0x02,0x82,0x80,
-0x15,0x03,0x00,0xc0,0x01,0x02,0x01,0x01,0x20,0x01,0x82,0x80,0x15,0x01,0x81,0x80,
-0xad,0x01,0x82,0x80,0x16,0x01,0x80,0x00,0x29,0x42,0xcd,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x07,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x02,0x5b,0x5d,0x00,
-0x03,0x3c,0x3d,0x3e,0x00,0x01,0x3e,0x00,0x03,0x5b,0x5d,0x3d,0x00,0x01,0x2d,0x00,
-0x01,0x2b,0xdb,0x0e,0x00,0x00,0x00,0xad,0x53,0x43,0x00,0x03,0x00,0x0a,0x00,0x02,
-0xb9,0xd6,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0xa6,0x01,0x00,0xc0,0x37,0x01,0x80,
-0x00,0x06,0x02,0x00,0x03,0x40,0x01,0x80,0x00,0x21,0x01,0x80,0x80,0x01,0x01,0x80,
-0x40,0x20,0x01,0xc0,0x00,0x99,0x00,0x40,0x07,0x17,0x01,0x80,0x00,0x06,0x02,0x00,
-0x80,0x01,0x02,0x80,0x00,0x42,0x02,0x80,0x01,0x93,0x03,0x00,0x80,0x01,0x03,0x01,
-0x40,0x20,0x02,0x81,0x00,0xa0,0x03,0x3f,0xff,0x83,0x03,0xbf,0xff,0x83,0x04,0x00,
-0x80,0x01,0x04,0x01,0x40,0x20,0x04,0x01,0x80,0xaf,0x04,0x80,0x40,0x01,0x01,0x80,
-0x82,0xa1,0x01,0x00,0x00,0x29,0xe7,0x8c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x07,0x00,0x04,0x65,0x61,0x63,0x68,0x00,0x06,0x65,0x6d,0x70,0x74,0x79,0x3f,
-0x00,0x0c,0x5f,0x5f,0x73,0x6f,0x72,0x74,0x5f,0x73,0x75,0x62,0x5f,0x5f,0x00,0x05,
-0x41,0x72,0x72,0x61,0x79,0x00,0x03,0x6e,0x65,0x77,0x00,0x04,0x73,0x69,0x7a,0x65,
-0x00,0x01,0x2d,0x10,0x10,0x00,0x00,0x00,0x36,0x53,0x43,0x00,0x03,0x00,0x05,0x00,
-0x02,0x48,0x39,0x00,0x00,0x00,0x05,0x02,0x00,0x00,0x26,0x01,0x80,0x80,0x15,0x02,
-0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0x7d,0x28,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x70,0x75,0x73,0x68,0x23,0x92,0x00,
-0x00,0x01,0x0c,0x53,0x43,0x00,0x01,0x00,0x03,0x00,0x02,0x46,0x9f,0x00,0x00,0x00,
-0x2b,0x00,0x80,0x00,0x11,0x01,0x00,0x01,0x04,0x00,0x80,0x40,0xa0,0x00,0xc0,0x0c,
-0x99,0x00,0x80,0x00,0x11,0x01,0x00,0x01,0x84,0x00,0x80,0x40,0xa0,0x00,0xc0,0x00,
-0x99,0x00,0x40,0x03,0x17,0x00,0x80,0x00,0x48,0x01,0x00,0x02,0xc0,0x00,0x81,0x00,
-0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x04,0xc0,0x00,0x80,0xc0,0x46,0x00,0x80,0x00,
-0x48,0x01,0x00,0x06,0xc0,0x00,0x81,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x08,
-0xc0,0x00,0x81,0x80,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0a,0xc0,0x00,0x81,0xc0,
-0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0c,0xc0,0x00,0x81,0x00,0x46,0x00,0x80,0x00,
-0x05,0x00,0x40,0x06,0x97,0x00,0x00,0x00,0x48,0x00,0x80,0x0e,0xc0,0x00,0x01,0x40,
-0x46,0x00,0x00,0x00,0x48,0x00,0x80,0x10,0xc0,0x00,0x01,0x80,0x46,0x00,0x00,0x00,
-0x48,0x00,0x80,0x12,0xc0,0x00,0x01,0xc0,0x46,0x00,0x00,0x00,0x48,0x00,0x80,0x14,
-0xc0,0x00,0x01,0x00,0x46,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x26,0xf2,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x06,0x4b,0x65,0x72,0x6e,0x65,
-0x6c,0x00,0x0b,0x72,0x65,0x73,0x70,0x6f,0x6e,0x64,0x5f,0x74,0x6f,0x3f,0x00,0x0c,
-0x5f,0x5f,0x70,0x72,0x69,0x6e,0x74,0x73,0x74,0x72,0x5f,0x5f,0x00,0x07,0x73,0x70,
-0x72,0x69,0x6e,0x74,0x66,0x00,0x06,0x70,0x72,0x69,0x6e,0x74,0x66,0x00,0x05,0x70,
-0x72,0x69,0x6e,0x74,0x00,0x04,0x70,0x75,0x74,0x73,0x00,0x01,0x70,0xcd,0x54,0x00,
-0x00,0x00,0x70,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,
-0x07,0x00,0x08,0x00,0x26,0x01,0x80,0x00,0x06,0x02,0x00,0x00,0x91,0x02,0x80,0x00,
-0x3d,0x02,0x00,0x80,0xa0,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0xbb,0xe9,0x00,
-0x00,0x00,0x01,0x11,0x00,0x14,0x70,0x72,0x69,0x6e,0x74,0x66,0x20,0x6e,0x6f,0x74,
-0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x27,0xb3,0x00,0x00,0x00,0x03,
-0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x13,0x4e,0x6f,0x74,0x49,0x6d,0x70,0x6c,
-0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x45,0x72,0x72,0x6f,0x72,0x00,0x03,0x6e,0x65,
-0x77,0x64,0x27,0x00,0x00,0x00,0x71,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,
-0x5a,0x00,0x00,0x00,0x07,0x00,0x08,0x00,0x26,0x01,0x80,0x00,0x06,0x02,0x00,0x00,
-0x91,0x02,0x80,0x00,0x3d,0x02,0x00,0x80,0xa0,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,
-0x29,0xbb,0xe9,0x00,0x00,0x00,0x01,0x11,0x00,0x15,0x73,0x70,0x72,0x69,0x6e,0x74,
-0x66,0x20,0x6e,0x6f,0x74,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0xb7,
-0x38,0x00,0x00,0x00,0x03,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x13,0x4e,0x6f,
-0x74,0x49,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x45,0x72,0x72,0x6f,
-0x72,0x00,0x03,0x6e,0x65,0x77,0x64,0x27,0x00,0x00,0x00,0x94,0x53,0x43,0x00,0x05,
-0x00,0x08,0x00,0x02,0x2b,0x34,0x00,0x00,0x00,0x15,0x00,0x08,0x00,0x26,0x01,0xbf,
-0xff,0x83,0x02,0x80,0x40,0x01,0x02,0x80,0x00,0x20,0x02,0x01,0x40,0x01,0x00,0x40,
-0x04,0x97,0x02,0x80,0x00,0x06,0x03,0x00,0x40,0x01,0x03,0x80,0xc0,0x01,0x03,0x00,
-0x80,0xa0,0x03,0x00,0xc0,0x20,0x02,0x80,0x40,0xa0,0x02,0x80,0xc0,0x01,0x02,0x81,
-0x00,0xad,0x01,0x81,0x40,0x01,0x02,0x80,0xc0,0x01,0x03,0x01,0x00,0x01,0x02,0x81,
-0x40,0xb3,0x02,0xbf,0xf9,0x98,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x1d,0x91,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x04,0x73,0x69,0x7a,0x65,
-0x00,0x0c,0x5f,0x5f,0x70,0x72,0x69,0x6e,0x74,0x73,0x74,0x72,0x5f,0x5f,0x00,0x02,
-0x5b,0x5d,0x00,0x04,0x74,0x6f,0x5f,0x73,0x00,0x01,0x2b,0x00,0x01,0x3c,0x20,0x74,
-0x00,0x00,0x00,0xf0,0x53,0x43,0x00,0x06,0x00,0x08,0x00,0x02,0x72,0x64,0x00,0x00,
-0x00,0x27,0x00,0x08,0x00,0x26,0x01,0xbf,0xff,0x83,0x03,0x00,0x40,0x01,0x03,0x00,
-0x00,0x20,0x02,0x01,0x80,0x01,0x00,0x40,0x0a,0x17,0x03,0x00,0x40,0x01,0x03,0x80,
-0xc0,0x01,0x03,0x00,0x40,0xa0,0x03,0x00,0x80,0x20,0x02,0x81,0x80,0x01,0x03,0x00,
-0x00,0x06,0x03,0x81,0x40,0x01,0x03,0x00,0xc0,0xa0,0x03,0x01,0x40,0x01,0x03,0xbf,
-0xff,0x03,0x03,0x00,0x40,0xa0,0x03,0x80,0x00,0x3d,0x03,0x01,0x00,0xa0,0x03,0x40,
-0x01,0x99,0x03,0x00,0x00,0x06,0x03,0x80,0x00,0xbd,0x03,0x00,0xc0,0xa0,0x03,0x00,
-0xc0,0x01,0x03,0x01,0x40,0xad,0x01,0x81,0x80,0x01,0x03,0x00,0xc0,0x01,0x03,0x81,
-0x00,0x01,0x03,0x01,0x80,0xb3,0x03,0x3f,0xf4,0x18,0x03,0x01,0x00,0x01,0x03,0xbf,
-0xff,0x83,0x03,0x01,0xc0,0xb2,0x03,0x40,0x01,0x99,0x03,0x00,0x00,0x06,0x03,0x80,
-0x01,0x3d,0x03,0x00,0xc0,0xa0,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x5c,0x1b,
-0x00,0x00,0x00,0x03,0x11,0x00,0x01,0x0a,0x11,0x00,0x01,0x0a,0x11,0x00,0x01,0x0a,
-0xe8,0xad,0x00,0x00,0x00,0x08,0x00,0x04,0x73,0x69,0x7a,0x65,0x00,0x02,0x5b,0x5d,
-0x00,0x04,0x74,0x6f,0x5f,0x73,0x00,0x0c,0x5f,0x5f,0x70,0x72,0x69,0x6e,0x74,0x73,
-0x74,0x72,0x5f,0x5f,0x00,0x02,0x21,0x3d,0x00,0x01,0x2b,0x00,0x01,0x3c,0x00,0x02,
-0x3d,0x3d,0x26,0xfc,0x00,0x00,0x00,0xaf,0x53,0x43,0x00,0x05,0x00,0x08,0x00,0x02,
-0x2b,0x34,0x00,0x00,0x00,0x1a,0x00,0x08,0x00,0x26,0x01,0xbf,0xff,0x83,0x02,0x80,
-0x40,0x01,0x02,0x80,0x00,0x20,0x02,0x01,0x40,0x01,0x00,0x40,0x06,0x17,0x02,0x80,
-0x00,0x06,0x03,0x00,0x40,0x01,0x03,0x80,0xc0,0x01,0x03,0x00,0x80,0xa0,0x03,0x00,
-0xc0,0x20,0x02,0x80,0x40,0xa0,0x02,0x80,0x00,0x06,0x03,0x00,0x00,0x3d,0x02,0x80,
-0x40,0xa0,0x02,0x80,0xc0,0x01,0x02,0x81,0x00,0xad,0x01,0x81,0x40,0x01,0x02,0x80,
-0xc0,0x01,0x03,0x01,0x00,0x01,0x02,0x81,0x40,0xb3,0x02,0xbf,0xf8,0x18,0x02,0x80,
-0x40,0x01,0x03,0x3f,0xff,0x83,0x02,0x80,0x80,0xa0,0x02,0x80,0x00,0x29,0x00,0x1a,
-0x00,0x00,0x00,0x01,0x11,0x00,0x01,0x0a,0x06,0x78,0x00,0x00,0x00,0x06,0x00,0x04,
-0x73,0x69,0x7a,0x65,0x00,0x0c,0x5f,0x5f,0x70,0x72,0x69,0x6e,0x74,0x73,0x74,0x72,
-0x5f,0x5f,0x00,0x02,0x5b,0x5d,0x00,0x07,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x00,
-0x01,0x2b,0x00,0x01,0x3c,0x79,0x53,0x00,0x00,0x00,0x5b,0x53,0x43,0x00,0x03,0x00,
-0x07,0x00,0x02,0x68,0x7b,0x00,0x00,0x00,0x0a,0x00,0x08,0x00,0x26,0x01,0x80,0x00,
-0x06,0x02,0x00,0x00,0x06,0x02,0x81,0x40,0x37,0x03,0x00,0x40,0x01,0x02,0x81,0x80,
-0x38,0x02,0x00,0x7f,0xa0,0x01,0x80,0x00,0xa0,0x00,0x00,0x00,0x05,0x00,0x00,0x00,
-0x29,0xc0,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x0c,0x5f,
-0x5f,0x70,0x72,0x69,0x6e,0x74,0x73,0x74,0x72,0x5f,0x5f,0x00,0x07,0x73,0x70,0x72,
-0x69,0x6e,0x74,0x66,0x77,0xa6,0x00,0x00,0x00,0x6f,0x53,0x43,0x00,0x03,0x00,0x06,
-0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x07,0x00,0x08,0x00,0x26,0x01,0x80,0x00,0x06,
-0x02,0x00,0x00,0x91,0x02,0x80,0x00,0x3d,0x02,0x00,0x80,0xa0,0x01,0x80,0x00,0xa0,
-0x01,0x80,0x00,0x29,0xbb,0xe9,0x00,0x00,0x00,0x01,0x11,0x00,0x13,0x70,0x72,0x69,
-0x6e,0x74,0x20,0x6e,0x6f,0x74,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,
-0x28,0x8b,0x00,0x00,0x00,0x03,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x13,0x4e,
-0x6f,0x74,0x49,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x45,0x72,0x72,
-0x6f,0x72,0x00,0x03,0x6e,0x65,0x77,0x64,0x27,0x00,0x00,0x00,0x6e,0x53,0x43,0x00,
-0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x07,0x00,0x08,0x00,0x26,0x01,
-0x80,0x00,0x06,0x02,0x00,0x00,0x91,0x02,0x80,0x00,0x3d,0x02,0x00,0x80,0xa0,0x01,
-0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0xbb,0xe9,0x00,0x00,0x00,0x01,0x11,0x00,0x12,
-0x70,0x75,0x74,0x73,0x20,0x6e,0x6f,0x74,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,
-0x6c,0x65,0x4c,0x61,0x00,0x00,0x00,0x03,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,
-0x13,0x4e,0x6f,0x74,0x49,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x45,
-0x72,0x72,0x6f,0x72,0x00,0x03,0x6e,0x65,0x77,0x64,0x27,0x00,0x00,0x00,0x6b,0x53,
-0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x07,0x00,0x08,0x00,
-0x26,0x01,0x80,0x00,0x06,0x02,0x00,0x00,0x91,0x02,0x80,0x00,0x3d,0x02,0x00,0x80,
-0xa0,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0xbb,0xe9,0x00,0x00,0x00,0x01,0x11,
-0x00,0x0f,0x70,0x20,0x6e,0x6f,0x74,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,
-0x65,0xcf,0x9c,0x00,0x00,0x00,0x03,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x13,
-0x4e,0x6f,0x74,0x49,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x45,0x72,
-0x72,0x6f,0x72,0x00,0x03,0x6e,0x65,0x77,0x64,0x27,0x00,0x00,0x00,0x70,0x53,0x43,
-0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x07,0x00,0x08,0x00,0x26,
-0x01,0x80,0x00,0x06,0x02,0x00,0x00,0x91,0x02,0x80,0x00,0x3d,0x02,0x00,0x80,0xa0,
-0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0xbb,0xe9,0x00,0x00,0x00,0x01,0x11,0x00,
-0x14,0x70,0x72,0x69,0x6e,0x74,0x66,0x20,0x6e,0x6f,0x74,0x20,0x61,0x76,0x61,0x69,
-0x6c,0x61,0x62,0x6c,0x65,0x27,0xb3,0x00,0x00,0x00,0x03,0x00,0x05,0x72,0x61,0x69,
-0x73,0x65,0x00,0x13,0x4e,0x6f,0x74,0x49,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,
-0x65,0x64,0x45,0x72,0x72,0x6f,0x72,0x00,0x03,0x6e,0x65,0x77,0x64,0x27,0x00,0x00,
-0x00,0x61,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x0b,
-0x00,0x80,0x00,0x48,0x01,0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,0x80,0x00,0x48,
-0x01,0x00,0x06,0xc0,0x00,0x80,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0a,0xc0,
-0x00,0x80,0x80,0x46,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x49,0x4d,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x04,0x65,0x61,0x63,0x68,0x00,0x09,
-0x65,0x61,0x63,0x68,0x5f,0x70,0x61,0x69,0x72,0x00,0x06,0x73,0x65,0x6c,0x65,0x63,
-0x74,0xdd,0x03,0x00,0x00,0x00,0x52,0x53,0x43,0x00,0x02,0x00,0x04,0x00,0x02,0x6f,
-0x28,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0xa6,0x01,0x00,0x00,0x06,0x01,0x00,0x00,
-0x20,0x01,0x00,0x40,0x20,0x01,0x80,0x03,0x40,0x01,0x00,0x80,0x21,0x00,0x00,0x00,
-0x06,0x00,0x00,0x00,0x29,0xa7,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x03,0x00,0x05,0x63,0x6c,0x61,0x73,0x73,0x00,0x07,0x6d,0x65,0x6d,0x62,0x65,0x72,
-0x73,0x00,0x04,0x65,0x61,0x63,0x68,0xd3,0xd7,0x00,0x00,0x00,0x42,0x53,0x43,0x00,
-0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x07,0x02,0x00,0x00,0x26,0x01,
-0x80,0x40,0x15,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x40,0xa0,0x01,
-0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0xb9,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x02,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x02,0x5b,0x5d,0xa6,0x21,0x00,
-0x00,0x00,0x52,0x53,0x43,0x00,0x02,0x00,0x04,0x00,0x02,0x6f,0x28,0x00,0x00,0x00,
-0x08,0x00,0x00,0x00,0xa6,0x01,0x00,0x00,0x06,0x01,0x00,0x00,0x20,0x01,0x00,0x40,
-0x20,0x01,0x80,0x03,0x40,0x01,0x00,0x80,0x21,0x00,0x00,0x00,0x06,0x00,0x00,0x00,
-0x29,0xa7,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x05,0x63,
-0x6c,0x61,0x73,0x73,0x00,0x07,0x6d,0x65,0x6d,0x62,0x65,0x72,0x73,0x00,0x04,0x65,
-0x61,0x63,0x68,0xd3,0xd7,0x00,0x00,0x00,0x52,0x53,0x43,0x00,0x03,0x00,0x07,0x00,
-0x02,0x68,0x7b,0x00,0x00,0x00,0x09,0x02,0x00,0x00,0x26,0x01,0x80,0x40,0x15,0x02,
-0x00,0x40,0x01,0x02,0x00,0x40,0x20,0x02,0x80,0x00,0x06,0x03,0x00,0x40,0x01,0x02,
-0x80,0x80,0xa0,0x01,0x80,0x01,0x20,0x01,0x80,0x00,0x29,0xaa,0x6a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x06,0x74,
-0x6f,0x5f,0x73,0x79,0x6d,0x00,0x02,0x5b,0x5d,0x92,0x98,0x00,0x00,0x00,0x52,0x53,
-0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x08,0x00,0x00,0x00,
-0xa6,0x01,0x00,0xc0,0x37,0x01,0x80,0x00,0x06,0x01,0x80,0x00,0x20,0x01,0x80,0x40,
-0x20,0x02,0x00,0x03,0x40,0x01,0x80,0x80,0x21,0x01,0x00,0x00,0x29,0x5c,0x5b,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x05,0x63,0x6c,0x61,0x73,0x73,
-0x00,0x07,0x6d,0x65,0x6d,0x62,0x65,0x72,0x73,0x00,0x04,0x65,0x61,0x63,0x68,0xd3,
-0xd7,0x00,0x00,0x00,0x68,0x53,0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,
-0x00,0x00,0x0f,0x02,0x00,0x00,0x26,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,
-0x00,0x00,0xa0,0x01,0x81,0x00,0x01,0x02,0x00,0x40,0x15,0x02,0x80,0xc0,0x01,0x02,
-0x00,0x40,0xa0,0x02,0x40,0x02,0x19,0x02,0x00,0x80,0x15,0x02,0x80,0xc0,0x01,0x02,
-0x00,0x80,0xa0,0x00,0x40,0x00,0x97,0x02,0x00,0x00,0x05,0x02,0x00,0x00,0x29,0x7e,
-0x4a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x02,0x5b,0x5d,0x00,
-0x04,0x63,0x61,0x6c,0x6c,0x00,0x04,0x70,0x75,0x73,0x68,0x3a,0x3a,0x00,0x00,0x00,
-0xd4,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x1d,0x00,
-0x80,0x00,0x48,0x01,0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,0x80,0x00,0x48,0x01,
-0x00,0x04,0xc0,0x00,0x80,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x06,0xc0,0x00,
-0x80,0x80,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x08,0xc0,0x00,0x80,0xc0,0x46,0x00,
-0x80,0x00,0x48,0x01,0x00,0x0a,0xc0,0x00,0x81,0x00,0x46,0x00,0x80,0x00,0x48,0x01,
-0x00,0x0c,0xc0,0x00,0x81,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0e,0xc0,0x00,
-0x81,0x80,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x10,0xc0,0x00,0x81,0xc0,0x46,0x00,
-0x80,0x00,0x48,0x01,0x00,0x12,0xc0,0x00,0x82,0x00,0x46,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0x69,0x49,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x09,0x00,
-0x09,0x65,0x61,0x63,0x68,0x5f,0x6c,0x69,0x6e,0x65,0x00,0x04,0x67,0x73,0x75,0x62,
-0x00,0x05,0x67,0x73,0x75,0x62,0x21,0x00,0x04,0x73,0x63,0x61,0x6e,0x00,0x03,0x73,
-0x75,0x62,0x00,0x04,0x73,0x75,0x62,0x21,0x00,0x09,0x65,0x61,0x63,0x68,0x5f,0x63,
-0x68,0x61,0x72,0x00,0x09,0x65,0x61,0x63,0x68,0x5f,0x62,0x79,0x74,0x65,0x00,0x03,
-0x5b,0x5d,0x3d,0xd3,0x19,0x00,0x00,0x00,0xd0,0x53,0x43,0x00,0x04,0x00,0x09,0x00,
-0x02,0x0c,0x25,0x00,0x00,0x00,0x25,0x00,0x00,0x00,0xa6,0x01,0x3f,0xff,0x83,0x00,
-0x40,0x06,0x17,0x02,0x00,0x40,0x01,0x02,0x80,0x00,0x06,0x03,0x00,0x80,0x01,0x03,
-0x80,0xc0,0x01,0x03,0x80,0x80,0xad,0x04,0x00,0x80,0x01,0x03,0x80,0xc0,0xae,0x02,
-0x80,0x41,0x20,0x02,0x00,0x00,0xa0,0x02,0x00,0xc0,0x01,0x02,0x00,0x80,0xad,0x01,
-0x01,0x00,0x01,0x02,0x00,0x00,0x06,0x02,0xc0,0x04,0x83,0x03,0x00,0x80,0x01,0x02,
-0x01,0x01,0x20,0x01,0x81,0x00,0x01,0x02,0x3f,0xf7,0x18,0x02,0x00,0x00,0x06,0x02,
-0x01,0x40,0x20,0x02,0x80,0x80,0x01,0x02,0x01,0x80,0xb5,0x02,0x40,0x04,0x99,0x02,
-0x00,0x40,0x01,0x02,0x80,0x00,0x06,0x03,0x00,0x80,0x01,0x03,0x80,0x00,0x06,0x03,
-0x81,0x40,0x20,0x04,0x00,0x80,0x01,0x03,0x80,0xc0,0xae,0x02,0x80,0x41,0x20,0x02,
-0x00,0x00,0xa0,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,0xde,0x8a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x02,0x5b,
-0x5d,0x00,0x01,0x2b,0x00,0x01,0x2d,0x00,0x05,0x69,0x6e,0x64,0x65,0x78,0x00,0x04,
-0x73,0x69,0x7a,0x65,0x00,0x01,0x3e,0x3b,0xee,0x00,0x00,0x01,0x1c,0x53,0x43,0x00,
-0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x1d,0x00,0x08,0x00,0xa6,0x01,
-0x80,0x40,0x01,0x01,0x80,0x00,0x20,0x02,0x40,0x00,0x03,0x01,0x80,0x40,0xb2,0x01,
-0xc0,0x00,0x99,0x01,0x80,0x80,0x01,0x01,0xc0,0x02,0x18,0x01,0x80,0x40,0x01,0x01,
-0x80,0x00,0x20,0x02,0x40,0x00,0x83,0x01,0x80,0x40,0xb2,0x01,0xc0,0x00,0x99,0x00,
-0x40,0x02,0x17,0x01,0x80,0x00,0x06,0x02,0x00,0x01,0x91,0x02,0x80,0x00,0x3d,0x01,
-0x80,0x81,0x20,0x01,0x80,0x02,0x11,0x02,0x00,0x03,0x04,0x01,0x81,0x40,0xa0,0x01,
-0xc0,0x01,0x19,0x01,0x80,0x00,0x05,0x00,0x40,0x02,0x17,0x01,0x80,0x00,0x06,0x02,
-0x00,0x03,0x91,0x02,0x80,0x00,0xbd,0x01,0x80,0x81,0x20,0x01,0x80,0x00,0x29,0xe1,
-0x20,0x00,0x00,0x00,0x02,0x11,0x00,0x19,0x77,0x72,0x6f,0x6e,0x67,0x20,0x6e,0x75,
-0x6d,0x62,0x65,0x72,0x20,0x6f,0x66,0x20,0x61,0x72,0x67,0x75,0x6d,0x65,0x6e,0x74,
-0x73,0x11,0x00,0x18,0x67,0x73,0x75,0x62,0x20,0x6e,0x6f,0x74,0x20,0x61,0x76,0x61,
-0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x28,0x79,0x65,0x74,0x29,0x70,0x08,0x00,0x00,
-0x00,0x08,0x00,0x04,0x73,0x69,0x7a,0x65,0x00,0x02,0x3d,0x3d,0x00,0x05,0x72,0x61,
-0x69,0x73,0x65,0x00,0x0d,0x41,0x72,0x67,0x75,0x6d,0x65,0x6e,0x74,0x45,0x72,0x72,
-0x6f,0x72,0x00,0x06,0x4f,0x62,0x6a,0x65,0x63,0x74,0x00,0x0e,0x63,0x6f,0x6e,0x73,
-0x74,0x5f,0x64,0x65,0x66,0x69,0x6e,0x65,0x64,0x3f,0x00,0x06,0x52,0x65,0x67,0x65,
-0x78,0x70,0x00,0x13,0x4e,0x6f,0x74,0x49,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,
-0x65,0x64,0x45,0x72,0x72,0x6f,0x72,0xca,0xc5,0x00,0x00,0x00,0x7b,0x53,0x43,0x00,
-0x04,0x00,0x07,0x00,0x02,0xed,0xeb,0x00,0x00,0x00,0x13,0x00,0x08,0x00,0xa6,0x02,
-0x00,0x00,0x06,0x02,0x81,0x40,0x37,0x03,0x00,0x40,0x01,0x02,0x81,0x80,0x38,0x03,
-0x00,0x80,0x01,0x02,0x00,0x3f,0xa1,0x01,0x81,0x00,0x01,0x02,0x00,0xc0,0x01,0x02,
-0x80,0x00,0x06,0x02,0x00,0x40,0xa0,0x02,0x40,0x02,0x99,0x02,0x00,0x00,0x06,0x02,
-0x80,0xc0,0x01,0x02,0x00,0x80,0xa0,0x02,0x00,0x00,0x06,0x00,0x40,0x00,0x97,0x02,
-0x00,0x00,0x05,0x02,0x00,0x00,0x29,0x2f,0xb5,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x03,0x00,0x04,0x67,0x73,0x75,0x62,0x00,0x02,0x21,0x3d,0x00,0x07,0x72,
-0x65,0x70,0x6c,0x61,0x63,0x65,0x59,0x55,0x00,0x00,0x00,0xa3,0x53,0x43,0x00,0x03,
-0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x0c,0x02,0x00,0x00,0xa6,0x01,0x80,
-0x00,0x11,0x02,0x00,0x01,0x04,0x01,0x80,0x40,0xa0,0x01,0xc0,0x01,0x19,0x01,0x80,
-0x00,0x05,0x00,0x40,0x02,0x17,0x01,0x80,0x00,0x06,0x02,0x00,0x02,0x11,0x02,0x80,
-0x00,0x3d,0x01,0x80,0xc1,0x20,0x01,0x80,0x00,0x29,0xab,0xa4,0x00,0x00,0x00,0x01,
-0x11,0x00,0x18,0x73,0x63,0x61,0x6e,0x20,0x6e,0x6f,0x74,0x20,0x61,0x76,0x61,0x69,
-0x6c,0x61,0x62,0x6c,0x65,0x20,0x28,0x79,0x65,0x74,0x29,0xb8,0x0d,0x00,0x00,0x00,
-0x05,0x00,0x06,0x4f,0x62,0x6a,0x65,0x63,0x74,0x00,0x0e,0x63,0x6f,0x6e,0x73,0x74,
-0x5f,0x64,0x65,0x66,0x69,0x6e,0x65,0x64,0x3f,0x00,0x06,0x52,0x65,0x67,0x65,0x78,
-0x70,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x13,0x4e,0x6f,0x74,0x49,0x6d,0x70,
-0x6c,0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x45,0x72,0x72,0x6f,0x72,0xa5,0xea,0x00,
-0x00,0x01,0x1b,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,
-0x1d,0x00,0x08,0x00,0xa6,0x01,0x80,0x40,0x01,0x01,0x80,0x00,0x20,0x02,0x40,0x00,
-0x03,0x01,0x80,0x40,0xb2,0x01,0xc0,0x00,0x99,0x01,0x80,0x80,0x01,0x01,0xc0,0x02,
-0x18,0x01,0x80,0x40,0x01,0x01,0x80,0x00,0x20,0x02,0x40,0x00,0x83,0x01,0x80,0x40,
-0xb2,0x01,0xc0,0x00,0x99,0x00,0x40,0x02,0x17,0x01,0x80,0x00,0x06,0x02,0x00,0x01,
-0x91,0x02,0x80,0x00,0x3d,0x01,0x80,0x81,0x20,0x01,0x80,0x02,0x11,0x02,0x00,0x03,
-0x04,0x01,0x81,0x40,0xa0,0x01,0xc0,0x01,0x19,0x01,0x80,0x00,0x05,0x00,0x40,0x02,
-0x17,0x01,0x80,0x00,0x06,0x02,0x00,0x03,0x91,0x02,0x80,0x00,0xbd,0x01,0x80,0x81,
-0x20,0x01,0x80,0x00,0x29,0xe1,0x20,0x00,0x00,0x00,0x02,0x11,0x00,0x19,0x77,0x72,
-0x6f,0x6e,0x67,0x20,0x6e,0x75,0x6d,0x62,0x65,0x72,0x20,0x6f,0x66,0x20,0x61,0x72,
-0x67,0x75,0x6d,0x65,0x6e,0x74,0x73,0x11,0x00,0x17,0x73,0x75,0x62,0x20,0x6e,0x6f,
-0x74,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x28,0x79,0x65,0x74,
-0x29,0xf7,0x53,0x00,0x00,0x00,0x08,0x00,0x04,0x73,0x69,0x7a,0x65,0x00,0x02,0x3d,
-0x3d,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x0d,0x41,0x72,0x67,0x75,0x6d,0x65,
-0x6e,0x74,0x45,0x72,0x72,0x6f,0x72,0x00,0x06,0x4f,0x62,0x6a,0x65,0x63,0x74,0x00,
-0x0e,0x63,0x6f,0x6e,0x73,0x74,0x5f,0x64,0x65,0x66,0x69,0x6e,0x65,0x64,0x3f,0x00,
-0x06,0x52,0x65,0x67,0x65,0x78,0x70,0x00,0x13,0x4e,0x6f,0x74,0x49,0x6d,0x70,0x6c,
-0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x45,0x72,0x72,0x6f,0x72,0xca,0xc5,0x00,0x00,
-0x00,0x7a,0x53,0x43,0x00,0x04,0x00,0x07,0x00,0x02,0xed,0xeb,0x00,0x00,0x00,0x13,
-0x00,0x08,0x00,0xa6,0x02,0x00,0x00,0x06,0x02,0x81,0x40,0x37,0x03,0x00,0x40,0x01,
-0x02,0x81,0x80,0x38,0x03,0x00,0x80,0x01,0x02,0x00,0x3f,0xa1,0x01,0x81,0x00,0x01,
-0x02,0x00,0xc0,0x01,0x02,0x80,0x00,0x06,0x02,0x00,0x40,0xa0,0x02,0x40,0x02,0x99,
-0x02,0x00,0x00,0x06,0x02,0x80,0xc0,0x01,0x02,0x00,0x80,0xa0,0x02,0x00,0x00,0x06,
-0x00,0x40,0x00,0x97,0x02,0x00,0x00,0x05,0x02,0x00,0x00,0x29,0x2f,0xb5,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x03,0x73,0x75,0x62,0x00,0x02,0x21,
-0x3d,0x00,0x07,0x72,0x65,0x70,0x6c,0x61,0x63,0x65,0xc4,0x7c,0x00,0x00,0x00,0x7a,
-0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x12,0x00,0x00,
-0x00,0xa6,0x01,0x3f,0xff,0x83,0x00,0x40,0x04,0x17,0x01,0x80,0x40,0x01,0x02,0x00,
-0x00,0x06,0x02,0x80,0x80,0x01,0x02,0x00,0x40,0xa0,0x01,0x80,0x00,0xa0,0x01,0x80,
-0x80,0x01,0x01,0x80,0x80,0xad,0x01,0x00,0xc0,0x01,0x01,0x80,0x80,0x01,0x02,0x00,
-0x00,0x06,0x02,0x01,0x00,0x20,0x01,0x80,0xc0,0xb3,0x01,0xbf,0xf9,0x98,0x00,0x00,
-0x00,0x06,0x00,0x00,0x00,0x29,0xfe,0x64,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x05,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x02,0x5b,0x5d,0x00,0x01,0x2b,0x00,
-0x01,0x3c,0x00,0x04,0x73,0x69,0x7a,0x65,0x36,0x2d,0x00,0x00,0x00,0x8d,0x53,0x43,
-0x00,0x04,0x00,0x07,0x00,0x02,0xed,0xeb,0x00,0x00,0x00,0x15,0x00,0x00,0x00,0xa6,
-0x02,0x00,0x00,0x06,0x02,0x00,0x00,0x20,0x01,0x01,0x00,0x01,0x01,0xbf,0xff,0x83,
-0x00,0x40,0x04,0x17,0x02,0x00,0x40,0x01,0x02,0x80,0x80,0x01,0x03,0x00,0xc0,0x01,
-0x02,0x80,0x80,0xa0,0x02,0x00,0x40,0xa0,0x02,0x00,0xc0,0x01,0x02,0x00,0xc0,0xad,
-0x01,0x81,0x00,0x01,0x02,0x00,0xc0,0x01,0x02,0x80,0x80,0x01,0x02,0x81,0x40,0x20,
-0x02,0x01,0x00,0xb3,0x02,0x3f,0xf9,0x98,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,
-0x79,0x0e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x05,0x62,0x79,
-0x74,0x65,0x73,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x02,0x5b,0x5d,0x00,0x01,0x2b,
-0x00,0x01,0x3c,0x00,0x04,0x73,0x69,0x7a,0x65,0x69,0xf7,0x00,0x00,0x00,0x8d,0x53,
-0x43,0x00,0x06,0x00,0x0a,0x00,0x02,0x52,0x26,0x00,0x00,0x00,0x16,0x04,0x00,0x00,
-0x26,0x03,0x00,0x00,0x06,0x03,0xbf,0xff,0x83,0x04,0x00,0x40,0x01,0x03,0x00,0x01,
-0x20,0x02,0x01,0x80,0x01,0x03,0x00,0x00,0x06,0x03,0x80,0x40,0x01,0x03,0x80,0x40,
-0xad,0x04,0x3f,0xff,0x03,0x03,0x81,0xc0,0x41,0x03,0x00,0x00,0xa0,0x02,0x81,0x80,
-0x01,0x03,0x00,0x00,0x06,0x03,0x81,0x00,0x01,0x04,0x00,0x80,0x01,0x04,0x81,0x40,
-0x01,0x03,0x81,0xc1,0xb7,0x04,0x00,0x00,0x3d,0x03,0x80,0xc0,0xa0,0x03,0x00,0x80,
-0xa0,0x03,0x00,0x00,0x29,0xf2,0x1d,0x00,0x00,0x00,0x01,0x11,0x00,0x00,0x31,0x21,
-0x00,0x00,0x00,0x04,0x00,0x02,0x5b,0x5d,0x00,0x01,0x2b,0x00,0x07,0x72,0x65,0x70,
-0x6c,0x61,0x63,0x65,0x00,0x04,0x6a,0x6f,0x69,0x6e,0x15,0x8a,0x00,0x00,0x00,0x24,
-0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x02,0x00,0x00,
-0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x53,0x43,0x00,0x01,0x00,0x03,0x00,0x02,
-0x46,0x9f,0x00,0x00,0x00,0x04,0x00,0x80,0x00,0x06,0x01,0x00,0x00,0x91,0x00,0x80,
-0x00,0xa0,0x01,0x00,0x00,0x29,0x38,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x02,0x00,0x07,0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x00,0x0a,0x43,0x6f,0x6d,
-0x70,0x61,0x72,0x61,0x62,0x6c,0x65,0x3a,0x13,0x00,0x00,0x00,0x83,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x0e,0x00,0x80,0x00,0x48,0x01,
-0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x08,0xc0,0x00,
-0x80,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0e,0xc0,0x00,0x80,0x80,0x46,0x00,
-0x80,0x00,0x48,0x01,0x00,0x10,0xc0,0x00,0x80,0xc0,0x46,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0xd0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,
-0x0b,0x61,0x74,0x74,0x72,0x5f,0x72,0x65,0x61,0x64,0x65,0x72,0x00,0x0b,0x61,0x74,
-0x74,0x72,0x5f,0x77,0x72,0x69,0x74,0x65,0x72,0x00,0x0d,0x61,0x74,0x74,0x72,0x5f,
-0x61,0x63,0x63,0x65,0x73,0x73,0x6f,0x72,0x00,0x04,0x61,0x74,0x74,0x72,0x25,0xbc,
-0x00,0x00,0x00,0x36,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,
-0x00,0x05,0x00,0x08,0x00,0x26,0x01,0x80,0x40,0x01,0x02,0x00,0x03,0x40,0x01,0x80,
-0x00,0x21,0x01,0x80,0x00,0x29,0x2e,0xa2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,0x00,0x00,0x70,0x53,0x43,
-0x00,0x04,0x00,0x07,0x00,0x02,0xed,0xeb,0x00,0x00,0x00,0x0c,0x02,0x00,0x00,0x26,
-0x02,0x00,0x00,0x3d,0x02,0x80,0x40,0x01,0x02,0x80,0x40,0x20,0x02,0x00,0x00,0xac,
-0x02,0x00,0x80,0x20,0x01,0x81,0x00,0x01,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,
-0x03,0x00,0x03,0x40,0x02,0x00,0xc0,0xa1,0x02,0x00,0x00,0x29,0xfa,0xd7,0x00,0x00,
-0x00,0x01,0x11,0x00,0x01,0x40,0x06,0x32,0x00,0x00,0x00,0x04,0x00,0x01,0x2b,0x00,
-0x04,0x74,0x6f,0x5f,0x73,0x00,0x06,0x69,0x6e,0x74,0x65,0x72,0x6e,0x00,0x0d,0x64,
-0x65,0x66,0x69,0x6e,0x65,0x5f,0x6d,0x65,0x74,0x68,0x6f,0x64,0x27,0x4e,0x00,0x00,
-0x00,0x43,0x53,0x43,0x00,0x01,0x00,0x03,0x00,0x02,0x46,0x9f,0x00,0x00,0x00,0x04,
-0x00,0x80,0x00,0x06,0x01,0x00,0xc0,0x15,0x00,0x80,0x00,0xa0,0x00,0x80,0x00,0x29,
-0xfb,0xc3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x15,0x69,0x6e,
-0x73,0x74,0x61,0x6e,0x63,0x65,0x5f,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x5f,
-0x67,0x65,0x74,0x79,0x63,0x00,0x00,0x00,0x36,0x53,0x43,0x00,0x03,0x00,0x05,0x00,
-0x02,0x48,0x39,0x00,0x00,0x00,0x05,0x00,0x08,0x00,0x26,0x01,0x80,0x40,0x01,0x02,
-0x00,0x03,0x40,0x01,0x80,0x00,0x21,0x01,0x80,0x00,0x29,0x2e,0xa2,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,0x68,0x9d,0xa1,0x00,
-0x00,0x00,0x8c,0x53,0x43,0x00,0x04,0x00,0x07,0x00,0x02,0xed,0xeb,0x00,0x00,0x00,
-0x12,0x02,0x00,0x00,0x26,0x02,0x00,0x00,0x3d,0x02,0x80,0x40,0x01,0x02,0x80,0x40,
-0x20,0x02,0x00,0x00,0xac,0x02,0x00,0x80,0x20,0x01,0x81,0x00,0x01,0x02,0x00,0x40,
-0x01,0x02,0x00,0x40,0x20,0x02,0x80,0x00,0xbd,0x02,0x00,0x00,0xac,0x02,0x00,0x80,
-0x20,0x00,0x81,0x00,0x01,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x03,0x00,0x03,
-0x40,0x02,0x00,0xc0,0xa1,0x02,0x00,0x00,0x29,0x4f,0x42,0x00,0x00,0x00,0x02,0x11,
-0x00,0x01,0x40,0x11,0x00,0x01,0x3d,0x65,0xa1,0x00,0x00,0x00,0x04,0x00,0x01,0x2b,
-0x00,0x04,0x74,0x6f,0x5f,0x73,0x00,0x06,0x69,0x6e,0x74,0x65,0x72,0x6e,0x00,0x0d,
-0x64,0x65,0x66,0x69,0x6e,0x65,0x5f,0x6d,0x65,0x74,0x68,0x6f,0x64,0x27,0x4e,0x00,
-0x00,0x00,0x4b,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,
-0x06,0x02,0x00,0x00,0x26,0x01,0x80,0x00,0x06,0x02,0x00,0xc0,0x15,0x02,0x80,0x40,
-0x01,0x01,0x80,0x01,0x20,0x01,0x80,0x00,0x29,0x80,0x48,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x01,0x00,0x15,0x69,0x6e,0x73,0x74,0x61,0x6e,0x63,0x65,0x5f,
-0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x5f,0x73,0x65,0x74,0x2b,0xd6,0x00,0x00,
-0x00,0x66,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x0c,
-0x00,0x08,0x00,0x26,0x01,0x80,0x00,0x06,0x02,0x01,0x00,0x37,0x02,0x80,0x40,0x01,
-0x02,0x01,0x40,0x38,0x01,0x80,0x3f,0xa0,0x01,0x80,0x00,0x06,0x02,0x01,0x00,0x37,
-0x02,0x80,0x40,0x01,0x02,0x01,0x40,0x38,0x01,0x80,0x7f,0xa0,0x01,0x80,0x00,0x29,
-0xad,0x8c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x0b,0x61,0x74,
-0x74,0x72,0x5f,0x72,0x65,0x61,0x64,0x65,0x72,0x00,0x0b,0x61,0x74,0x74,0x72,0x5f,
-0x77,0x72,0x69,0x74,0x65,0x72,0x6f,0x79,0x00,0x00,0x00,0x3d,0x53,0x43,0x00,0x03,
-0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x05,0x02,0x00,0x00,0x26,0x01,0x80,
-0x00,0x06,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0xfa,0x4e,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x0b,0x61,0x74,0x74,0x72,
-0x5f,0x72,0x65,0x61,0x64,0x65,0x72,0x01,0xeb,0x00,0x00,0x00,0x36,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x05,0x00,0x80,0x00,0x48,0x01,
-0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0xf3,
-0x12,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x65,0x61,0x63,
-0x68,0x9d,0xa1,0x00,0x00,0x01,0x35,0x53,0x43,0x00,0x04,0x00,0x07,0x00,0x02,0xed,
-0xeb,0x00,0x00,0x00,0x2e,0x00,0x00,0x00,0xa6,0x02,0x00,0x00,0x06,0x02,0x00,0x00,
-0x20,0x01,0x01,0x00,0x01,0x02,0x00,0x80,0x01,0x02,0x80,0x01,0x04,0x02,0x00,0x40,
-0xa0,0x02,0x40,0x00,0x99,0x00,0x40,0x02,0x17,0x02,0x00,0x00,0x06,0x02,0x80,0x02,
-0x11,0x03,0x00,0x00,0x3d,0x02,0x00,0xc1,0x20,0x02,0x00,0x00,0x06,0x02,0x01,0x40,
-0x20,0x01,0x81,0x00,0x01,0x02,0x00,0x80,0x01,0x02,0x80,0xc0,0x01,0x02,0x01,0x80,
-0xa0,0x02,0xbf,0xff,0x83,0x02,0x01,0xc0,0xb5,0x02,0x40,0x01,0x19,0x00,0x00,0x00,
-0x06,0x00,0x00,0x00,0x29,0x00,0x40,0x03,0x17,0x02,0x80,0x40,0x01,0x03,0x00,0x80,
-0x01,0x02,0x82,0x00,0xa0,0x02,0x80,0x80,0x01,0x02,0x80,0x80,0x20,0x01,0x01,0x40,
-0x01,0x02,0x80,0x80,0x01,0x03,0x00,0xc0,0x01,0x02,0x81,0x80,0xa0,0x03,0x3f,0xff,
-0x83,0x02,0x82,0x40,0xb3,0x02,0xbf,0xfa,0x18,0x02,0x80,0x00,0x06,0x02,0x82,0x80,
-0x20,0x02,0xc0,0x00,0x99,0x00,0x40,0x01,0x97,0x02,0x80,0x40,0x01,0x03,0x00,0x80,
-0x01,0x02,0x82,0x00,0xa0,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,0xe0,0xef,0x00,
-0x00,0x00,0x01,0x11,0x00,0x0d,0x63,0x61,0x6e,0x27,0x74,0x20,0x69,0x74,0x65,0x72,
-0x61,0x74,0x65,0xdc,0x8f,0x00,0x00,0x00,0x0b,0x00,0x05,0x66,0x69,0x72,0x73,0x74,
-0x00,0x0b,0x72,0x65,0x73,0x70,0x6f,0x6e,0x64,0x5f,0x74,0x6f,0x3f,0x00,0x04,0x73,
-0x75,0x63,0x63,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x09,0x54,0x79,0x70,0x65,
-0x45,0x72,0x72,0x6f,0x72,0x00,0x04,0x6c,0x61,0x73,0x74,0x00,0x03,0x3c,0x3d,0x3e,
-0x00,0x01,0x3e,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x01,0x3c,0x00,0x0c,0x65,0x78,
-0x63,0x6c,0x75,0x64,0x65,0x5f,0x65,0x6e,0x64,0x3f,0x47,0x7b,0x00,0x00,0x00,0x24,
-0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x02,0x00,0x00,
-0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x53,0x43,0x00,0x01,0x00,0x03,0x00,0x02,
-0x46,0x9f,0x00,0x00,0x00,0x04,0x00,0x80,0x00,0x06,0x01,0x00,0x00,0x91,0x00,0x80,
-0x00,0xa0,0x01,0x00,0x00,0x29,0x38,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x02,0x00,0x07,0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x00,0x0a,0x45,0x6e,0x75,
-0x6d,0x65,0x72,0x61,0x62,0x6c,0x65,0xfa,0xae,0x00,0x00,0x00,0x6f,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x0e,0x00,0x80,0x00,0x48,0x01,
-0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x04,0xc0,0x00,
-0x80,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x06,0xc0,0x00,0x80,0x80,0x46,0x00,
-0x80,0x00,0x48,0x01,0x00,0x08,0xc0,0x00,0x80,0xc0,0x46,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0xab,0x6c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,
-0x06,0x64,0x6f,0x77,0x6e,0x74,0x6f,0x00,0x05,0x74,0x69,0x6d,0x65,0x73,0x00,0x04,
-0x75,0x70,0x74,0x6f,0x00,0x04,0x73,0x74,0x65,0x70,0xf1,0x87,0x00,0x00,0x00,0x65,
-0x53,0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x0f,0x02,0x00,
-0x00,0xa6,0x01,0x80,0x00,0x06,0x00,0x40,0x03,0x17,0x02,0x00,0x80,0x01,0x02,0x80,
-0xc0,0x01,0x02,0x00,0x00,0xa0,0x02,0x00,0xc0,0x01,0x02,0x00,0x40,0xaf,0x01,0x81,
-0x00,0x01,0x02,0x00,0xc0,0x01,0x02,0x80,0x40,0x01,0x02,0x00,0x80,0xb6,0x02,0x3f,
-0xfb,0x18,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,0x45,0x82,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x01,0x2d,0x00,
-0x02,0x3e,0x3d,0xae,0x76,0x00,0x00,0x00,0x64,0x53,0x43,0x00,0x03,0x00,0x05,0x00,
-0x02,0x48,0x39,0x00,0x00,0x00,0x0f,0x00,0x00,0x00,0xa6,0x01,0x3f,0xff,0x83,0x00,
-0x40,0x03,0x17,0x01,0x80,0x40,0x01,0x02,0x00,0x80,0x01,0x01,0x80,0x00,0xa0,0x01,
-0x80,0x80,0x01,0x01,0x80,0x40,0xad,0x01,0x00,0xc0,0x01,0x01,0x80,0x80,0x01,0x02,
-0x00,0x00,0x06,0x01,0x80,0x80,0xb3,0x01,0xbf,0xfb,0x18,0x00,0x00,0x00,0x06,0x00,
-0x00,0x00,0x29,0xab,0xb1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,
-0x04,0x63,0x61,0x6c,0x6c,0x00,0x01,0x2b,0x00,0x01,0x3c,0x80,0xbf,0x00,0x00,0x00,
-0x65,0x53,0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x0f,0x02,
-0x00,0x00,0xa6,0x01,0x80,0x00,0x06,0x00,0x40,0x03,0x17,0x02,0x00,0x80,0x01,0x02,
-0x80,0xc0,0x01,0x02,0x00,0x00,0xa0,0x02,0x00,0xc0,0x01,0x02,0x00,0x40,0xad,0x01,
-0x81,0x00,0x01,0x02,0x00,0xc0,0x01,0x02,0x80,0x40,0x01,0x02,0x00,0x80,0xb4,0x02,
-0x3f,0xfb,0x18,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,0xcf,0xfd,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x01,0x2b,
-0x00,0x02,0x3c,0x3d,0x1e,0xd6,0x00,0x00,0x00,0xac,0x53,0x43,0x00,0x05,0x00,0x07,
-0x00,0x02,0xda,0xdb,0x00,0x00,0x00,0x1b,0x02,0x10,0x00,0xa6,0x00,0x40,0x00,0x97,
-0x00,0x40,0x00,0x97,0x01,0x40,0x00,0x03,0x02,0x80,0x40,0x01,0x03,0x00,0x00,0x91,
-0x02,0x80,0x00,0xa0,0x02,0xc0,0x01,0x99,0x02,0x80,0x00,0x06,0x02,0x80,0x80,0x20,
-0x00,0x40,0x00,0x97,0x02,0x80,0x00,0x06,0x02,0x01,0x40,0x01,0x00,0x40,0x03,0x97,
-0x02,0x80,0xc0,0x01,0x03,0x01,0x00,0x01,0x02,0x80,0xc0,0xa0,0x02,0x81,0x00,0x01,
-0x03,0x00,0x80,0x01,0x02,0x81,0x00,0xac,0x02,0x01,0x40,0x01,0x02,0x81,0x00,0x01,
-0x03,0x00,0x40,0x01,0x02,0x81,0x40,0xb4,0x02,0xbf,0xfa,0x98,0x00,0x00,0x00,0x06,
-0x00,0x00,0x00,0x29,0x62,0x6a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,
-0x00,0x08,0x6b,0x69,0x6e,0x64,0x5f,0x6f,0x66,0x3f,0x00,0x05,0x46,0x6c,0x6f,0x61,
-0x74,0x00,0x04,0x74,0x6f,0x5f,0x66,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x01,0x2b,
-0x00,0x02,0x3c,0x3d,0xd2,0x95,0x00,0x00,0x00,0x24,0x53,0x43,0x00,0x01,0x00,0x02,
-0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,
-0x8b,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x41,0x53,0x43,0x00,0x01,0x00,0x03,0x00,0x02,0x46,0x9f,0x00,0x00,0x00,0x04,
-0x00,0x80,0x00,0x06,0x01,0x00,0x00,0x91,0x00,0x80,0x00,0xa0,0x01,0x00,0x00,0x29,
-0x38,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x07,0x69,0x6e,
-0x63,0x6c,0x75,0x64,0x65,0x00,0x0a,0x43,0x6f,0x6d,0x70,0x61,0x72,0x61,0x62,0x6c,
-0x65,0x3a,0x13,0x00,0x00,0x00,0x88,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,
-0xbe,0x00,0x00,0x00,0x14,0x00,0x80,0x00,0x48,0x01,0x00,0x02,0xc0,0x00,0x80,0x00,
-0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x04,0xc0,0x00,0x80,0x40,0x46,0x00,0x80,0x00,
-0x48,0x01,0x00,0x06,0xc0,0x00,0x80,0x80,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x08,
-0xc0,0x00,0x80,0xc0,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0a,0xc0,0x00,0x81,0x00,
-0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0c,0xc0,0x00,0x81,0x40,0x46,0x00,0x00,0x00,
-0x05,0x00,0x00,0x00,0x29,0xec,0x3c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x06,0x00,0x01,0x3c,0x00,0x02,0x3c,0x3d,0x00,0x02,0x3d,0x3d,0x00,0x01,0x3e,0x00,
-0x02,0x3e,0x3d,0x00,0x08,0x62,0x65,0x74,0x77,0x65,0x65,0x6e,0x3f,0x93,0xaf,0x00,
-0x00,0x00,0x72,0x53,0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,
-0x12,0x02,0x00,0x00,0x26,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x00,
-0xa0,0x01,0x81,0x00,0x01,0x02,0x00,0xc0,0x01,0x02,0x00,0x40,0x20,0x02,0x40,0x01,
-0x19,0x02,0x00,0x00,0x08,0x00,0x40,0x03,0x97,0x02,0x00,0xc0,0x01,0x02,0xbf,0xff,
-0x83,0x02,0x00,0x80,0xb3,0x02,0x40,0x01,0x19,0x02,0x00,0x00,0x07,0x00,0x40,0x00,
-0x97,0x02,0x00,0x00,0x08,0x02,0x00,0x00,0x29,0x07,0xbe,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x03,0x00,0x03,0x3c,0x3d,0x3e,0x00,0x04,0x6e,0x69,0x6c,0x3f,
-0x00,0x01,0x3c,0x0f,0xab,0x00,0x00,0x00,0x73,0x53,0x43,0x00,0x04,0x00,0x06,0x00,
-0x02,0xfd,0xca,0x00,0x00,0x00,0x12,0x02,0x00,0x00,0x26,0x02,0x00,0x00,0x06,0x02,
-0x80,0x40,0x01,0x02,0x00,0x00,0xa0,0x01,0x81,0x00,0x01,0x02,0x00,0xc0,0x01,0x02,
-0x00,0x40,0x20,0x02,0x40,0x01,0x19,0x02,0x00,0x00,0x08,0x00,0x40,0x03,0x97,0x02,
-0x00,0xc0,0x01,0x02,0xbf,0xff,0x83,0x02,0x00,0x80,0xb4,0x02,0x40,0x01,0x19,0x02,
-0x00,0x00,0x07,0x00,0x40,0x00,0x97,0x02,0x00,0x00,0x08,0x02,0x00,0x00,0x29,0x3d,
-0xa1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x03,0x3c,0x3d,0x3e,
-0x00,0x04,0x6e,0x69,0x6c,0x3f,0x00,0x02,0x3c,0x3d,0x6a,0xb1,0x00,0x00,0x00,0x59,
-0x53,0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x0d,0x02,0x00,
-0x00,0x26,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x00,0xa0,0x01,0x81,
-0x00,0x01,0x02,0x00,0xc0,0x01,0x02,0xbf,0xff,0x83,0x02,0x00,0x40,0xb2,0x02,0x40,
-0x01,0x19,0x02,0x00,0x00,0x07,0x00,0x40,0x00,0x97,0x02,0x00,0x00,0x08,0x02,0x00,
-0x00,0x29,0x42,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x03,
-0x3c,0x3d,0x3e,0x00,0x02,0x3d,0x3d,0x10,0x37,0x00,0x00,0x00,0x72,0x53,0x43,0x00,
-0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x12,0x02,0x00,0x00,0x26,0x02,
-0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x00,0xa0,0x01,0x81,0x00,0x01,0x02,
-0x00,0xc0,0x01,0x02,0x00,0x40,0x20,0x02,0x40,0x01,0x19,0x02,0x00,0x00,0x08,0x00,
-0x40,0x03,0x97,0x02,0x00,0xc0,0x01,0x02,0xbf,0xff,0x83,0x02,0x00,0x80,0xb5,0x02,
-0x40,0x01,0x19,0x02,0x00,0x00,0x07,0x00,0x40,0x00,0x97,0x02,0x00,0x00,0x08,0x02,
-0x00,0x00,0x29,0xe3,0xbe,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,
-0x03,0x3c,0x3d,0x3e,0x00,0x04,0x6e,0x69,0x6c,0x3f,0x00,0x01,0x3e,0x0f,0xa9,0x00,
-0x00,0x00,0x73,0x53,0x43,0x00,0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,
-0x12,0x02,0x00,0x00,0x26,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x00,
-0xa0,0x01,0x81,0x00,0x01,0x02,0x00,0xc0,0x01,0x02,0x00,0x40,0x20,0x02,0x40,0x01,
-0x19,0x02,0x00,0x00,0x08,0x00,0x40,0x03,0x97,0x02,0x00,0xc0,0x01,0x02,0xbf,0xff,
-0x83,0x02,0x00,0x80,0xb6,0x02,0x40,0x01,0x19,0x02,0x00,0x00,0x07,0x00,0x40,0x00,
-0x97,0x02,0x00,0x00,0x08,0x02,0x00,0x00,0x29,0x91,0xbe,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x03,0x00,0x03,0x3c,0x3d,0x3e,0x00,0x04,0x6e,0x69,0x6c,0x3f,
-0x00,0x02,0x3e,0x3d,0x68,0xb1,0x00,0x00,0x00,0x56,0x53,0x43,0x00,0x04,0x00,0x06,
-0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x0d,0x04,0x00,0x00,0x26,0x02,0x00,0x00,0x06,
-0x02,0x80,0x40,0x01,0x02,0x00,0x00,0xb3,0x02,0x40,0x01,0x98,0x02,0x00,0x00,0x06,
-0x02,0x80,0x80,0x01,0x02,0x00,0x40,0xb5,0x02,0x40,0x01,0x19,0x02,0x00,0x00,0x08,
-0x00,0x40,0x00,0x97,0x02,0x00,0x00,0x07,0x02,0x00,0x00,0x29,0xd7,0xe2,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x01,0x3c,0x00,0x01,0x3e,0x32,0x75,
-0x00,0x00,0x00,0xf5,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,
-0x00,0x20,0x00,0x80,0x00,0x48,0x01,0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,0x80,
-0x00,0x48,0x01,0x00,0x04,0xc0,0x00,0x80,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,
-0x08,0xc0,0x00,0x80,0x80,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0c,0xc0,0x00,0x80,
-0xc0,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x10,0xc0,0x00,0x81,0x00,0x46,0x00,0x80,
-0x00,0x48,0x01,0x00,0x12,0xc0,0x00,0x81,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,
-0x1a,0xc0,0x00,0x81,0x80,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x20,0xc0,0x00,0x81,
-0xc0,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x24,0xc0,0x00,0x82,0x00,0x46,0x00,0x80,
-0x00,0x48,0x01,0x00,0x2a,0xc0,0x00,0x82,0x40,0x46,0x00,0x00,0x00,0x05,0x00,0x00,
-0x00,0x29,0x88,0xbb,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0x00,0x06,
-0x64,0x65,0x6c,0x65,0x74,0x65,0x00,0x04,0x65,0x61,0x63,0x68,0x00,0x08,0x65,0x61,
-0x63,0x68,0x5f,0x6b,0x65,0x79,0x00,0x0a,0x65,0x61,0x63,0x68,0x5f,0x76,0x61,0x6c,
-0x75,0x65,0x00,0x0a,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x69,0x7a,0x65,0x00,0x05,
-0x6d,0x65,0x72,0x67,0x65,0x00,0x07,0x72,0x65,0x6a,0x65,0x63,0x74,0x21,0x00,0x06,
-0x72,0x65,0x6a,0x65,0x63,0x74,0x00,0x07,0x73,0x65,0x6c,0x65,0x63,0x74,0x21,0x00,
-0x06,0x73,0x65,0x6c,0x65,0x63,0x74,0xb0,0x41,0x00,0x00,0x00,0x79,0x53,0x43,0x00,
-0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x10,0x02,0x00,0x00,0xa6,0x01,
-0x80,0x80,0x01,0x01,0xc0,0x02,0x19,0x01,0x80,0x00,0x06,0x02,0x00,0x40,0x01,0x01,
-0x80,0x00,0xa0,0x01,0x80,0x40,0x20,0x01,0xc0,0x02,0x19,0x01,0x80,0x80,0x01,0x02,
-0x00,0x40,0x01,0x01,0x80,0x80,0xa0,0x00,0x40,0x01,0x97,0x01,0x80,0x00,0x06,0x02,
-0x00,0x40,0x01,0x01,0x80,0xc0,0xa0,0x01,0x80,0x00,0x29,0xf6,0x9a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x08,0x68,0x61,0x73,0x5f,0x6b,0x65,0x79,
-0x3f,0x00,0x01,0x21,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x08,0x5f,0x5f,0x64,0x65,
-0x6c,0x65,0x74,0x65,0xe1,0x56,0x00,0x00,0x00,0x44,0x53,0x43,0x00,0x02,0x00,0x04,
-0x00,0x02,0x6f,0x28,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0xa6,0x01,0x00,0x00,0x06,
-0x01,0x00,0x00,0x20,0x01,0x80,0x03,0x40,0x01,0x00,0x40,0x21,0x00,0x00,0x00,0x06,
-0x00,0x00,0x00,0x29,0x41,0xa9,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,
-0x00,0x04,0x6b,0x65,0x79,0x73,0x00,0x04,0x65,0x61,0x63,0x68,0x64,0x2c,0x00,0x00,
-0x00,0x4a,0x53,0x43,0x00,0x03,0x00,0x07,0x00,0x02,0x68,0x7b,0x00,0x00,0x00,0x09,
-0x02,0x00,0x00,0x26,0x01,0x80,0x40,0x15,0x02,0x00,0x40,0x01,0x02,0x80,0x00,0x06,
-0x03,0x00,0x40,0x01,0x02,0x80,0x40,0xa0,0x02,0x01,0x01,0x37,0x01,0x80,0x00,0xa0,
-0x01,0x80,0x00,0x29,0x42,0x64,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,
-0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x02,0x5b,0x5d,0xa6,0x21,0x00,0x00,0x00,0x44,
-0x53,0x43,0x00,0x02,0x00,0x04,0x00,0x02,0x6f,0x28,0x00,0x00,0x00,0x07,0x00,0x00,
-0x00,0xa6,0x01,0x00,0x00,0x06,0x01,0x00,0x00,0x20,0x01,0x80,0x03,0x40,0x01,0x00,
-0x40,0x21,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,0x41,0xa9,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x6b,0x65,0x79,0x73,0x00,0x04,0x65,0x61,
-0x63,0x68,0x64,0x2c,0x00,0x00,0x00,0x36,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,
-0x48,0x39,0x00,0x00,0x00,0x05,0x02,0x00,0x00,0x26,0x01,0x80,0x40,0x15,0x02,0x00,
-0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0x0a,0xc9,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x63,0x61,0x6c,0x6c,0x38,0x03,0x00,0x00,
-0x00,0x44,0x53,0x43,0x00,0x02,0x00,0x04,0x00,0x02,0x6f,0x28,0x00,0x00,0x00,0x07,
-0x00,0x00,0x00,0xa6,0x01,0x00,0x00,0x06,0x01,0x00,0x00,0x20,0x01,0x80,0x03,0x40,
-0x01,0x00,0x40,0x21,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,0x41,0xa9,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x6b,0x65,0x79,0x73,0x00,0x04,
-0x65,0x61,0x63,0x68,0x64,0x2c,0x00,0x00,0x00,0x42,0x53,0x43,0x00,0x03,0x00,0x06,
-0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x07,0x02,0x00,0x00,0x26,0x01,0x80,0x40,0x15,
-0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x40,0xa0,0x01,0x80,0x00,0xa0,
-0x01,0x80,0x00,0x29,0xb9,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,
-0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x02,0x5b,0x5d,0xa6,0x21,0x00,0x00,0x00,0x49,
-0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x08,0x00,0x08,
-0x00,0xa6,0x01,0x80,0x00,0x06,0x02,0x00,0x80,0x01,0x02,0x01,0x00,0xb7,0x02,0x80,
-0x40,0x01,0x02,0x01,0x40,0x38,0x01,0x80,0x3f,0xa0,0x01,0x80,0x00,0x29,0xa4,0x7a,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x0b,0x5f,0x5f,0x69,0x6e,
-0x69,0x74,0x5f,0x63,0x6f,0x72,0x65,0xc3,0xc7,0x00,0x00,0x00,0xce,0x53,0x43,0x00,
-0x04,0x00,0x06,0x00,0x02,0xfd,0xca,0x00,0x00,0x00,0x1a,0x02,0x00,0x00,0xa6,0x01,
-0x81,0x00,0x3f,0x02,0x00,0x40,0x01,0x02,0x80,0x00,0x84,0x02,0x00,0x00,0xa0,0x02,
-0x40,0x00,0x99,0x00,0x40,0x01,0x97,0x02,0x00,0x00,0x06,0x02,0x80,0x00,0x3d,0x02,
-0x00,0x80,0xa0,0x02,0x00,0x40,0x01,0x02,0x00,0x40,0x20,0x00,0x81,0x00,0x01,0x02,
-0x00,0x00,0x06,0x02,0x80,0x03,0x40,0x02,0x00,0xc0,0x21,0x02,0x00,0x80,0x01,0x02,
-0x40,0x02,0x19,0x02,0x00,0x40,0x01,0x02,0x80,0x05,0x40,0x02,0x00,0xc0,0x21,0x00,
-0x40,0x01,0x97,0x02,0x00,0x40,0x01,0x02,0x80,0x07,0x40,0x02,0x00,0xc0,0x21,0x01,
-0x80,0x00,0x29,0x5c,0xc0,0x00,0x00,0x00,0x01,0x11,0x00,0x20,0x63,0x61,0x6e,0x27,
-0x74,0x20,0x63,0x6f,0x6e,0x76,0x65,0x72,0x74,0x20,0x61,0x72,0x67,0x75,0x6d,0x65,
-0x6e,0x74,0x20,0x69,0x6e,0x74,0x6f,0x20,0x48,0x61,0x73,0x68,0x62,0xc0,0x00,0x00,
-0x00,0x04,0x00,0x0b,0x72,0x65,0x73,0x70,0x6f,0x6e,0x64,0x5f,0x74,0x6f,0x3f,0x00,
-0x07,0x74,0x6f,0x5f,0x68,0x61,0x73,0x68,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,
-0x08,0x65,0x61,0x63,0x68,0x5f,0x6b,0x65,0x79,0x18,0xa0,0x00,0x00,0x00,0x49,0x53,
-0x43,0x00,0x03,0x00,0x07,0x00,0x02,0x68,0x7b,0x00,0x00,0x00,0x09,0x02,0x00,0x00,
-0x26,0x01,0x80,0x00,0x06,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x02,0x00,0xc0,
-0x15,0x02,0x80,0x40,0x01,0x03,0x00,0xc0,0x01,0x02,0x00,0x41,0x20,0x01,0x80,0x00,
-0x29,0x06,0x52,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x02,0x5b,
-0x5d,0x00,0x03,0x5b,0x5d,0x3d,0x52,0x66,0x00,0x00,0x00,0x91,0x53,0x43,0x00,0x03,
-0x00,0x08,0x00,0x02,0x99,0x94,0x00,0x00,0x00,0x17,0x02,0x00,0x00,0x26,0x01,0x80,
-0x00,0x06,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0xc0,0x05,0x19,0x01,0x80,
-0x80,0x15,0x02,0x00,0x40,0x01,0x02,0x80,0x00,0x06,0x03,0x00,0x40,0x01,0x02,0x80,
-0x80,0xa0,0x03,0x00,0x40,0x15,0x03,0x80,0x40,0x01,0x03,0x00,0x80,0xa0,0x01,0x80,
-0x41,0xa0,0x00,0x40,0x01,0x97,0x01,0x80,0x40,0x15,0x02,0x00,0x40,0x01,0x01,0x80,
-0x80,0xa0,0x02,0x00,0xc0,0x15,0x02,0x80,0x40,0x01,0x03,0x00,0xc0,0x01,0x02,0x00,
-0xc1,0x20,0x01,0x80,0x00,0x29,0x5c,0x51,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x04,0x00,0x08,0x68,0x61,0x73,0x5f,0x6b,0x65,0x79,0x3f,0x00,0x04,0x63,0x61,
-0x6c,0x6c,0x00,0x02,0x5b,0x5d,0x00,0x03,0x5b,0x5d,0x3d,0xfd,0x8d,0x00,0x00,0x00,
-0x49,0x53,0x43,0x00,0x03,0x00,0x07,0x00,0x02,0x68,0x7b,0x00,0x00,0x00,0x09,0x02,
-0x00,0x00,0x26,0x01,0x80,0x40,0x15,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x02,
-0x00,0xc0,0x15,0x02,0x80,0x40,0x01,0x03,0x00,0xc0,0x01,0x02,0x00,0x41,0x20,0x01,
-0x80,0x00,0x29,0xcb,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,
-0x02,0x5b,0x5d,0x00,0x03,0x5b,0x5d,0x3d,0x52,0x66,0x00,0x00,0x00,0x7a,0x53,0x43,
-0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x11,0x00,0x00,0x00,0xa6,
-0x01,0x00,0xc0,0x37,0x01,0x80,0x00,0x06,0x02,0x00,0x03,0x40,0x01,0x80,0x00,0x21,
-0x01,0x80,0x80,0x01,0x01,0x80,0x40,0x20,0x02,0x3f,0xff,0x83,0x01,0x80,0x80,0xb2,
-0x01,0xc0,0x01,0x19,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x02,0x00,0x80,0x01,
-0x02,0x80,0x05,0x40,0x02,0x00,0xc0,0x21,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,
-0x7f,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x08,0x65,0x61,
-0x63,0x68,0x5f,0x6b,0x65,0x79,0x00,0x04,0x73,0x69,0x7a,0x65,0x00,0x02,0x3d,0x3d,
-0x00,0x04,0x65,0x61,0x63,0x68,0x0b,0x74,0x00,0x00,0x00,0x6c,0x53,0x43,0x00,0x04,
-0x00,0x07,0x00,0x02,0xed,0xeb,0x00,0x00,0x00,0x10,0x02,0x00,0x00,0x26,0x02,0x00,
-0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x00,0xa0,0x01,0x81,0x00,0x01,0x02,0x00,
-0x40,0x15,0x02,0x80,0x40,0x01,0x03,0x00,0xc0,0x01,0x02,0x00,0x41,0x20,0x02,0x40,
-0x02,0x19,0x02,0x00,0x80,0x15,0x02,0x80,0x40,0x01,0x02,0x00,0x80,0xa0,0x00,0x40,
-0x00,0x97,0x02,0x00,0x00,0x05,0x02,0x00,0x00,0x29,0xb8,0xa8,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x02,0x5b,0x5d,0x00,0x04,0x63,0x61,0x6c,0x6c,
-0x00,0x04,0x70,0x75,0x73,0x68,0x3a,0x3a,0x00,0x00,0x00,0x38,0x53,0x43,0x00,0x03,
-0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x05,0x02,0x00,0x00,0x26,0x01,0x80,
-0x00,0x06,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0xfa,0x4e,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x06,0x64,0x65,0x6c,0x65,
-0x74,0x65,0x90,0x7d,0x00,0x00,0x00,0x3e,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,
-0x48,0x39,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0xa6,0x01,0x00,0xc0,0x3f,0x01,0x80,
-0x00,0x06,0x02,0x00,0x03,0x40,0x01,0x80,0x00,0x21,0x01,0x00,0x00,0x29,0xb1,0xf4,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x08,0x65,0x61,0x63,0x68,
-0x5f,0x6b,0x65,0x79,0x81,0xeb,0x00,0x00,0x00,0x73,0x53,0x43,0x00,0x04,0x00,0x08,
-0x00,0x02,0x1c,0x04,0x00,0x00,0x00,0x12,0x02,0x00,0x00,0x26,0x02,0x00,0x00,0x06,
-0x02,0x80,0x40,0x01,0x02,0x00,0x00,0xa0,0x01,0x81,0x00,0x01,0x02,0x00,0x40,0x15,
-0x02,0x80,0x40,0x01,0x03,0x00,0xc0,0x01,0x02,0x00,0x41,0x20,0x02,0x40,0x01,0x19,
-0x02,0x00,0x00,0x05,0x00,0x40,0x02,0x97,0x02,0x00,0xc0,0x01,0x02,0x80,0x80,0x15,
-0x03,0x00,0x40,0x01,0x03,0x81,0x00,0x01,0x02,0x80,0x81,0x20,0x02,0x00,0x00,0x29,
-0x66,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x02,0x5b,0x5d,
-0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x03,0x5b,0x5d,0x3d,0x37,0xc8,0x00,0x00,0x00,
-0x7a,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,0x11,0x00,
-0x00,0x00,0xa6,0x01,0x00,0xc0,0x37,0x01,0x80,0x00,0x06,0x02,0x00,0x03,0x40,0x01,
-0x80,0x00,0x21,0x01,0x80,0x80,0x01,0x01,0x80,0x40,0x20,0x02,0x3f,0xff,0x83,0x01,
-0x80,0x80,0xb2,0x01,0xc0,0x01,0x19,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x02,
-0x00,0x80,0x01,0x02,0x80,0x05,0x40,0x02,0x00,0xc0,0x21,0x00,0x00,0x00,0x06,0x00,
-0x00,0x00,0x29,0x7f,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,
-0x08,0x65,0x61,0x63,0x68,0x5f,0x6b,0x65,0x79,0x00,0x04,0x73,0x69,0x7a,0x65,0x00,
-0x02,0x3d,0x3d,0x00,0x04,0x65,0x61,0x63,0x68,0x0b,0x74,0x00,0x00,0x00,0x6c,0x53,
-0x43,0x00,0x04,0x00,0x07,0x00,0x02,0xed,0xeb,0x00,0x00,0x00,0x10,0x02,0x00,0x00,
-0x26,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x00,0xa0,0x01,0x81,0x00,
-0x01,0x02,0x00,0x40,0x15,0x02,0x80,0x40,0x01,0x03,0x00,0xc0,0x01,0x02,0x00,0x41,
-0x20,0x02,0x40,0x01,0x19,0x02,0x00,0x00,0x05,0x00,0x40,0x01,0x97,0x02,0x00,0x80,
-0x15,0x02,0x80,0x40,0x01,0x02,0x00,0x80,0xa0,0x02,0x00,0x00,0x29,0xaa,0x9a,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x02,0x5b,0x5d,0x00,0x04,0x63,
-0x61,0x6c,0x6c,0x00,0x04,0x70,0x75,0x73,0x68,0x3a,0x3a,0x00,0x00,0x00,0x38,0x53,
-0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x05,0x02,0x00,0x00,
-0x26,0x01,0x80,0x00,0x06,0x02,0x00,0x40,0x01,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,
-0x29,0xfa,0x4e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x06,0x64,
-0x65,0x6c,0x65,0x74,0x65,0x90,0x7d,0x00,0x00,0x00,0x3e,0x53,0x43,0x00,0x03,0x00,
-0x05,0x00,0x02,0x48,0x39,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0xa6,0x01,0x00,0xc0,
-0x3f,0x01,0x80,0x00,0x06,0x02,0x00,0x03,0x40,0x01,0x80,0x00,0x21,0x01,0x00,0x00,
-0x29,0xb1,0xf4,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x08,0x65,
-0x61,0x63,0x68,0x5f,0x6b,0x65,0x79,0x81,0xeb,0x00,0x00,0x00,0x73,0x53,0x43,0x00,
-0x04,0x00,0x08,0x00,0x02,0x1c,0x04,0x00,0x00,0x00,0x12,0x02,0x00,0x00,0x26,0x02,
-0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x00,0xa0,0x01,0x81,0x00,0x01,0x02,
-0x00,0x40,0x15,0x02,0x80,0x40,0x01,0x03,0x00,0xc0,0x01,0x02,0x00,0x41,0x20,0x02,
-0x40,0x03,0x19,0x02,0x00,0xc0,0x01,0x02,0x80,0x80,0x15,0x03,0x00,0x40,0x01,0x03,
-0x81,0x00,0x01,0x02,0x80,0x81,0x20,0x00,0x40,0x00,0x97,0x02,0x00,0x00,0x05,0x02,
-0x00,0x00,0x29,0x30,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,
-0x02,0x5b,0x5d,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x03,0x5b,0x5d,0x3d,0x37,0xc8,
-0x00,0x00,0x00,0x24,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,
-0x00,0x02,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x53,0x43,0x00,0x01,
-0x00,0x03,0x00,0x02,0x46,0x9f,0x00,0x00,0x00,0x04,0x00,0x80,0x00,0x06,0x01,0x00,
-0x00,0x91,0x00,0x80,0x00,0xa0,0x01,0x00,0x00,0x29,0x38,0x14,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x07,0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x00,
-0x0a,0x45,0x6e,0x75,0x6d,0x65,0x72,0x61,0x62,0x6c,0x65,0xfa,0xae,0x00,0x00,0x00,
-0x68,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x10,0x00,
-0x80,0x00,0x06,0x00,0x80,0x40,0x47,0x01,0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,
-0x80,0x00,0x06,0x00,0x80,0x40,0x47,0x01,0x00,0x04,0xc0,0x00,0x80,0x40,0x46,0x00,
-0x80,0x00,0x48,0x01,0x00,0x06,0xc0,0x00,0x80,0x40,0x46,0x00,0x80,0x00,0x48,0x01,
-0x00,0x08,0xc0,0x00,0x80,0x00,0x46,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0xb4,
-0x16,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x6c,0x6f,0x6f,
-0x70,0x00,0x04,0x65,0x76,0x61,0x6c,0x49,0x1f,0x00,0x00,0x00,0x42,0x53,0x43,0x00,
-0x02,0x00,0x03,0x00,0x02,0x1f,0xcf,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x26,0x00,
-0x40,0x01,0x17,0x01,0x00,0x00,0x2b,0x01,0x00,0x00,0x20,0x01,0x00,0x00,0x07,0x01,
-0x3f,0xfe,0x18,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0xce,0x4a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x63,0x61,0x6c,0x6c,0x38,0x03,0x00,
-0x00,0x00,0x70,0x53,0x43,0x00,0x03,0x00,0x06,0x00,0x02,0x78,0x5a,0x00,0x00,0x00,
-0x07,0x02,0x00,0x00,0x26,0x01,0x80,0x00,0x06,0x02,0x00,0x00,0x91,0x02,0x80,0x00,
-0x3d,0x02,0x00,0x80,0xa0,0x01,0x80,0x00,0xa0,0x01,0x80,0x00,0x29,0xfe,0xe8,0x00,
-0x00,0x00,0x01,0x11,0x00,0x14,0x65,0x76,0x61,0x6c,0x20,0x6e,0x6f,0x74,0x20,0x69,
-0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x64,0xfa,0x00,0x00,0x00,0x03,
-0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x13,0x4e,0x6f,0x74,0x49,0x6d,0x70,0x6c,
-0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x45,0x72,0x72,0x6f,0x72,0x00,0x03,0x6e,0x65,
-0x77,0x64,0x27,0x00,0x00,0x00,0x3e,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,
-0x39,0x00,0x00,0x00,0x05,0x02,0x00,0x00,0x26,0x01,0x80,0x00,0x11,0x02,0x00,0x40,
-0x01,0x01,0x80,0x40,0xa0,0x01,0x80,0x00,0x29,0xe8,0x52,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x02,0x00,0x06,0x4b,0x65,0x72,0x6e,0x65,0x6c,0x00,0x04,0x65,
-0x76,0x61,0x6c,0x1a,0xb1,0x00,0x00,0x00,0x42,0x53,0x43,0x00,0x02,0x00,0x03,0x00,
-0x02,0x1f,0xcf,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x26,0x00,0x40,0x01,0x17,0x01,
-0x00,0x00,0x2b,0x01,0x00,0x00,0x20,0x01,0x00,0x00,0x07,0x01,0x3f,0xfe,0x18,0x00,
-0x00,0x00,0x05,0x00,0x00,0x00,0x29,0xce,0x4a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x01,0x00,0x04,0x63,0x61,0x6c,0x6c,0x38,0x03,0x00,0x00,0x00,0xb8,0x53,
-0x43,0x00,0x01,0x00,0x04,0x00,0x02,0x36,0x78,0x00,0x00,0x00,0x16,0x00,0x80,0x00,
-0x48,0x01,0x00,0x02,0xc0,0x00,0x80,0x00,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x04,
-0xc0,0x00,0x80,0x40,0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x06,0xc0,0x00,0x80,0x80,
-0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x01,0x84,0x01,0x80,0x01,0x04,0x02,0x00,0x00,
-0x05,0x00,0x81,0x01,0x20,0x00,0x80,0x00,0x48,0x01,0x00,0x0a,0xc0,0x00,0x81,0x40,
-0x46,0x00,0x80,0x00,0x48,0x01,0x00,0x0c,0xc0,0x00,0x81,0x80,0x46,0x00,0x00,0x00,
-0x05,0x00,0x00,0x00,0x29,0x8c,0xae,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x07,0x00,0x04,0x65,0x61,0x63,0x68,0x00,0x0a,0x65,0x61,0x63,0x68,0x5f,0x69,0x6e,
-0x64,0x65,0x78,0x00,0x08,0x63,0x6f,0x6c,0x6c,0x65,0x63,0x74,0x21,0x00,0x04,0x6d,
-0x61,0x70,0x21,0x00,0x0c,0x61,0x6c,0x69,0x61,0x73,0x5f,0x6d,0x65,0x74,0x68,0x6f,
-0x64,0x00,0x0a,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x69,0x7a,0x65,0x00,0x06,0x64,
-0x65,0x6c,0x65,0x74,0x65,0x38,0x72,0x00,0x00,0x00,0xf7,0x53,0x43,0x00,0x05,0x00,
-0x08,0x00,0x02,0x2b,0x34,0x00,0x00,0x00,0x2e,0x00,0x00,0x00,0xa6,0x02,0xbf,0xff,
-0x03,0x03,0x00,0x00,0x06,0x03,0x00,0x00,0x20,0x03,0x00,0x40,0xaf,0x01,0x01,0x40,
-0x01,0x01,0x81,0x80,0x01,0x00,0x40,0x0b,0x17,0x02,0x80,0x00,0x06,0x03,0x00,0x80,
-0x01,0x03,0x00,0xc0,0xad,0x01,0x01,0x80,0x01,0x02,0x80,0x80,0xa0,0x02,0x01,0x40,
-0x01,0x02,0x81,0x00,0x01,0x02,0xc0,0x00,0x99,0x00,0x40,0x05,0x17,0x02,0x81,0x00,
-0x01,0x03,0x00,0x00,0x05,0x02,0x81,0x00,0xb2,0x02,0xc0,0x02,0x19,0x02,0x80,0xc0,
-0x01,0x03,0x00,0x00,0x06,0x03,0x00,0x00,0x20,0x02,0x81,0x40,0xb6,0x02,0xc0,0x00,
-0x99,0x00,0x40,0x08,0x97,0x02,0x80,0x40,0x01,0x03,0x01,0x00,0x01,0x02,0x81,0x80,
-0xa0,0x02,0x80,0x80,0x01,0x03,0x00,0xc0,0x01,0x02,0x81,0xc0,0xb3,0x02,0xc0,0x02,
-0x19,0x02,0x80,0xc0,0x01,0x03,0x00,0x00,0x06,0x03,0x00,0x00,0x20,0x02,0x81,0xc0,
-0xb3,0x02,0xc0,0x02,0x19,0x02,0x80,0x00,0x06,0x02,0x80,0x00,0x20,0x02,0x80,0x40,
-0xaf,0x01,0x81,0x40,0x01,0x02,0xbf,0xee,0x18,0x00,0x00,0x00,0x06,0x00,0x00,0x00,
-0x29,0x17,0xb5,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x06,0x6c,
-0x65,0x6e,0x67,0x74,0x68,0x00,0x01,0x2d,0x00,0x02,0x5b,0x5d,0x00,0x01,0x2b,0x00,
-0x02,0x3d,0x3d,0x00,0x02,0x3e,0x3d,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x01,0x3c,
-0x40,0xc4,0x00,0x00,0x00,0x70,0x53,0x43,0x00,0x03,0x00,0x05,0x00,0x02,0x48,0x39,
-0x00,0x00,0x00,0x10,0x00,0x00,0x00,0xa6,0x01,0x3f,0xff,0x83,0x00,0x40,0x03,0x17,
-0x01,0x80,0x40,0x01,0x02,0x00,0x80,0x01,0x01,0x80,0x00,0xa0,0x01,0x80,0x80,0x01,
-0x01,0x80,0x40,0xad,0x01,0x00,0xc0,0x01,0x01,0x80,0x80,0x01,0x02,0x00,0x00,0x06,
-0x02,0x00,0xc0,0x20,0x01,0x80,0x80,0xb3,0x01,0xbf,0xfa,0x98,0x00,0x00,0x00,0x06,
-0x00,0x00,0x00,0x29,0x8e,0x95,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,
-0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x01,0x2b,0x00,0x01,0x3c,0x00,0x06,0x6c,0x65,
-0x6e,0x67,0x74,0x68,0x54,0xf1,0x00,0x00,0x00,0x40,0x53,0x43,0x00,0x02,0x00,0x04,
-0x00,0x02,0x6f,0x28,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0xa6,0x01,0x00,0x00,0x06,
-0x01,0x80,0x03,0x40,0x01,0x00,0x00,0x21,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,
-0xfa,0xe2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x0a,0x65,0x61,
-0x63,0x68,0x5f,0x69,0x6e,0x64,0x65,0x78,0xb6,0xf5,0x00,0x00,0x00,0x57,0x53,0x43,
-0x00,0x03,0x00,0x07,0x00,0x02,0x68,0x7b,0x00,0x00,0x00,0x0b,0x02,0x00,0x00,0x26,
-0x01,0x80,0x40,0x15,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x02,0x00,0x40,0xa0,
-0x01,0x80,0x00,0xa0,0x02,0x00,0x00,0x06,0x02,0x80,0x40,0x01,0x03,0x00,0xc0,0x01,
-0x02,0x00,0x81,0x20,0x01,0x80,0x00,0x29,0x75,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x03,0x00,0x04,0x63,0x61,0x6c,0x6c,0x00,0x02,0x5b,0x5d,0x00,0x03,
-0x5b,0x5d,0x3d,0x3e,0x8a,0x00,0x00,0x01,0x8c,0x53,0x43,0x00,0x05,0x00,0x09,0x00,
-0x02,0x3b,0x15,0x00,0x00,0x00,0x39,0x00,0x20,0x00,0xa6,0x00,0x40,0x01,0x17,0x00,
-0x40,0x01,0x17,0x00,0x40,0x01,0x17,0x00,0xbf,0xff,0x83,0x01,0x00,0x00,0x05,0x02,
-0x80,0x40,0x01,0x03,0x00,0x00,0x91,0x02,0x80,0x00,0xa0,0x02,0xc0,0x00,0x99,0x00,
-0x40,0x02,0x17,0x02,0x80,0x00,0x06,0x03,0x00,0x01,0x91,0x03,0x80,0x00,0x3d,0x02,
-0x80,0x81,0x20,0x02,0x80,0x40,0x01,0x03,0x3f,0xff,0x83,0x02,0x81,0x00,0xb3,0x02,
-0xc0,0x02,0x19,0x02,0x80,0x00,0x06,0x03,0x00,0x02,0x91,0x03,0x80,0x00,0xbd,0x02,
-0x80,0x81,0x20,0x02,0x80,0x00,0x06,0x02,0x81,0x80,0x20,0x02,0x80,0x40,0x01,0x03,
-0x3f,0xff,0x83,0x02,0x81,0xc0,0xb5,0x02,0xc0,0x0d,0x19,0x02,0x80,0x00,0x05,0x03,
-0x00,0x00,0x06,0x03,0x80,0x40,0x01,0x03,0x82,0x40,0xaf,0x04,0x01,0x40,0x01,0x03,
-0x02,0x01,0x20,0x02,0x3f,0xff,0x83,0x00,0x40,0x07,0x17,0x02,0x80,0xc0,0x01,0x02,
-0xc0,0x02,0x19,0x02,0x80,0xc0,0x01,0x03,0x01,0x00,0x01,0x02,0x82,0x80,0xa0,0x00,
-0x40,0x00,0x97,0x02,0x80,0x80,0x01,0x03,0x00,0x00,0x06,0x03,0x81,0x00,0x01,0x04,
-0x01,0x40,0x01,0x03,0x02,0x01,0x20,0x02,0x81,0x00,0x01,0x02,0x82,0xc0,0xad,0x02,
-0x01,0x40,0x01,0x02,0x81,0x00,0x01,0x03,0x00,0x40,0x01,0x02,0x81,0x00,0xb3,0x02,
-0xbf,0xf7,0x18,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x29,0x02,0x04,0x00,0x00,0x00,
-0x02,0x11,0x00,0x21,0x65,0x78,0x70,0x65,0x63,0x74,0x65,0x64,0x20,0x49,0x6e,0x74,
-0x65,0x67,0x65,0x72,0x20,0x66,0x6f,0x72,0x20,0x31,0x73,0x74,0x20,0x61,0x72,0x67,
-0x75,0x6d,0x65,0x6e,0x74,0x11,0x00,0x13,0x6e,0x65,0x67,0x61,0x74,0x69,0x76,0x65,
-0x20,0x61,0x72,0x72,0x61,0x79,0x20,0x73,0x69,0x7a,0x65,0x36,0xf1,0x00,0x00,0x00,
-0x0c,0x00,0x08,0x6b,0x69,0x6e,0x64,0x5f,0x6f,0x66,0x3f,0x00,0x07,0x49,0x6e,0x74,
-0x65,0x67,0x65,0x72,0x00,0x05,0x72,0x61,0x69,0x73,0x65,0x00,0x09,0x54,0x79,0x70,
-0x65,0x45,0x72,0x72,0x6f,0x72,0x00,0x01,0x3c,0x00,0x0d,0x41,0x72,0x67,0x75,0x6d,
-0x65,0x6e,0x74,0x45,0x72,0x72,0x6f,0x72,0x00,0x05,0x63,0x6c,0x65,0x61,0x72,0x00,
-0x01,0x3e,0x00,0x03,0x5b,0x5d,0x3d,0x00,0x01,0x2d,0x00,0x04,0x63,0x61,0x6c,0x6c,
-0x00,0x01,0x2b,0x53,0xdf,0x00,0x00,0x00,0x90,0x53,0x43,0x00,0x05,0x00,0x07,0x00,
-0x02,0xda,0xdb,0x00,0x00,0x00,0x16,0x02,0x00,0x00,0xa6,0x00,0x40,0x02,0x17,0x02,
-0x80,0x00,0x06,0x03,0x00,0xc0,0x01,0x02,0x80,0x00,0xa0,0x02,0x00,0x40,0x01,0x02,
-0x80,0x00,0x06,0x03,0x00,0x40,0x01,0x02,0x80,0x40,0xa0,0x01,0x81,0x40,0x01,0x02,
-0xbf,0xfb,0x98,0x02,0x81,0x00,0x01,0x03,0x00,0x00,0x05,0x02,0x80,0x80,0xb2,0x02,
-0xc0,0x00,0x99,0x02,0x80,0x80,0x01,0x02,0xc0,0x01,0x99,0x02,0x80,0x80,0x01,0x02,
-0x80,0xc0,0x20,0x00,0x40,0x00,0x97,0x02,0x81,0x00,0x01,0x02,0x80,0x00,0x29,0x67,
-0xba,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x09,0x64,0x65,0x6c,
-0x65,0x74,0x65,0x5f,0x61,0x74,0x00,0x05,0x69,0x6e,0x64,0x65,0x78,0x00,0x02,0x3d,
-0x3d,0x00,0x04,0x63,0x61,0x6c,0x6c,0x30,0x9c,0x00,0x00,0x00,0x24,0x53,0x43,0x00,
-0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,
-0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x24,0x53,0x43,0x00,0x01,0x00,0x02,0x00,0x02,0x56,0xbe,0x00,
-0x00,0x00,0x02,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x8b,0x3a,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x53,0x43,0x00,
-0x01,0x00,0x03,0x00,0x02,0x46,0x9f,0x00,0x00,0x00,0x0b,0x00,0x80,0x00,0x06,0x01,
-0x00,0x00,0x91,0x00,0x80,0x00,0xa0,0x00,0x80,0x00,0x06,0x01,0x00,0x01,0x11,0x00,
-0x80,0x00,0xa0,0x00,0x80,0x00,0x48,0x01,0x00,0x02,0xc0,0x00,0x80,0xc0,0x46,0x00,
-0x00,0x00,0x05,0x00,0x00,0x00,0x29,0x51,0x39,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-0x00,0x00,0x04,0x00,0x07,0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x00,0x0a,0x45,0x6e,
-0x75,0x6d,0x65,0x72,0x61,0x62,0x6c,0x65,0x00,0x0a,0x43,0x6f,0x6d,0x70,0x61,0x72,
-0x61,0x62,0x6c,0x65,0x00,0x05,0x73,0x6f,0x72,0x74,0x21,0xd1,0xed,0x00,0x00,0x00,
-0x47,0x53,0x43,0x00,0x02,0x00,0x05,0x00,0x02,0x7f,0x09,0x00,0x00,0x00,0x07,0x00,
-0x00,0x00,0xa6,0x01,0x00,0x00,0x06,0x01,0x80,0x00,0x06,0x02,0x00,0x40,0x01,0x01,
-0x80,0x40,0x21,0x01,0x00,0x00,0xa0,0x01,0x00,0x00,0x29,0x40,0x81,0x00,0x00,0x00,
-0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x07,0x72,0x65,0x70,0x6c,0x61,0x63,0x65,
-0x00,0x04,0x73,0x6f,0x72,0x74,0x95,0xe4,0x00,0x00,0x00,0x00,
-};

  Deleted: vendor/mruby-4728070/src/mruby_core.rake (+0 -25) 100644
===================================================================
--- vendor/mruby-4728070/src/mruby_core.rake    2013-09-24 12:23:02 +0900 (7db1dbf)
+++ /dev/null
@@ -1,25 +0,0 @@
-dir = File.dirname(__FILE__).sub(%r|^\./|, '')
-
-MRuby.each_target do
-  lex_def = "#{dir}/lex.def"
-  objs = Dir.glob("src/*.{c}").map { |f| f.pathmap("#{build_dir}/%X.o") } + ["#{build_dir}/#{dir}/y.tab.o"]
-  self.libmruby << objs
-
-  file "#{build_dir}/lib/libmruby_core.a" => objs do |t|
-    archive t.name, 'rs', t.prerequisites
-  end
-
-  # Parser
-  file "#{build_dir}/#{dir}/y.tab.c" => ["#{dir}/parse.y"] do |t|
-    run_yacc t.name, t.prerequisites.first
-  end
-
-  file "#{build_dir}/#{dir}/y.tab.o" => ["#{build_dir}/#{dir}/y.tab.c", lex_def] do |t|
-    compile_c t.name, t.prerequisites.first, [], dir
-  end
-
-  # Lexical analyzer
-  file lex_def => "#{dir}/keywords" do |t|
-    run_gperf t.name, t.prerequisites.first
-  end
-end

  Deleted: vendor/mruby-4728070/src/name2ctype.h (+0 -17981) 100644
===================================================================
--- vendor/mruby-4728070/src/name2ctype.h    2013-09-24 12:23:02 +0900 (0773bbf)
+++ /dev/null
@@ -1,17981 +0,0 @@
-/* C code produced by gperf version 3.0.3 */
-/* Command-line: gperf -7 -c -j1 -i1 -t -C -P -T -H uniname2ctype_hash -Q uniname2ctype_pool -N uniname2ctype_p  */
-#ifndef USE_UNICODE_PROPERTIES
-/* Computed positions: -k'1,3' */
-#else /* USE_UNICODE_PROPERTIES */
-/* Computed positions: -k'1-3,6,12,16,$' */
-#endif /* USE_UNICODE_PROPERTIES */
-
-#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
-      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
-      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
-      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
-      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
-      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
-      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
-      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
-      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
-      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
-      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
-      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
-      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
-      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
-      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
-      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
-      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
-      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
-      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
-      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
-      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
-      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
-      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
-/* The character set is not based on ISO-646.  */
-error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf �� gnu.org>."
-#endif
-
-
-
-#ifdef USE_UNICODE_PROPERTIES
-#ifdef USE_UNICODE_PROPERTIES
-/* 'Any': - */
-static const OnigCodePoint CR_Any[] = {
-        1,
-        0x0000, 0x10ffff,
-}; /* CR_Any */
-
-/* 'Assigned': - */
-static const OnigCodePoint CR_Assigned[] = {
-        485,
-        0x0000, 0x0377,
-        0x037a, 0x037e,
-        0x0384, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x055f,
-        0x0561, 0x0587,
-        0x0589, 0x058a,
-        0x0591, 0x05c7,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f4,
-        0x0600, 0x0603,
-        0x0606, 0x061b,
-        0x061e, 0x061f,
-        0x0621, 0x065e,
-        0x0660, 0x070d,
-        0x070f, 0x074a,
-        0x074d, 0x07b1,
-        0x07c0, 0x07fa,
-        0x0800, 0x082d,
-        0x0830, 0x083e,
-        0x0900, 0x0939,
-        0x093c, 0x094e,
-        0x0950, 0x0955,
-        0x0958, 0x0972,
-        0x0979, 0x097f,
-        0x0981, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bc, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09ce,
-        0x09d7, 0x09d7,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e3,
-        0x09e6, 0x09fb,
-        0x0a01, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3c, 0x0a3c,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a66, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abc, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae3,
-        0x0ae6, 0x0aef,
-        0x0af1, 0x0af1,
-        0x0b01, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3c, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4d,
-        0x0b56, 0x0b57,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b63,
-        0x0b66, 0x0b71,
-        0x0b82, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcd,
-        0x0bd0, 0x0bd0,
-        0x0bd7, 0x0bd7,
-        0x0be6, 0x0bfa,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c63,
-        0x0c66, 0x0c6f,
-        0x0c78, 0x0c7f,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbc, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccd,
-        0x0cd5, 0x0cd6,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce3,
-        0x0ce6, 0x0cef,
-        0x0cf1, 0x0cf2,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4d,
-        0x0d57, 0x0d57,
-        0x0d60, 0x0d63,
-        0x0d66, 0x0d75,
-        0x0d79, 0x0d7f,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dca, 0x0dca,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df4,
-        0x0e01, 0x0e3a,
-        0x0e3f, 0x0e5b,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb9,
-        0x0ebb, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ec8, 0x0ecd,
-        0x0ed0, 0x0ed9,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f71, 0x0f8b,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fbe, 0x0fcc,
-        0x0fce, 0x0fd8,
-        0x1000, 0x10c5,
-        0x10d0, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x135f, 0x137c,
-        0x1380, 0x1399,
-        0x13a0, 0x13f4,
-        0x1400, 0x169c,
-        0x16a0, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1714,
-        0x1720, 0x1736,
-        0x1740, 0x1753,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1772, 0x1773,
-        0x1780, 0x17dd,
-        0x17e0, 0x17e9,
-        0x17f0, 0x17f9,
-        0x1800, 0x180e,
-        0x1810, 0x1819,
-        0x1820, 0x1877,
-        0x1880, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1920, 0x192b,
-        0x1930, 0x193b,
-        0x1940, 0x1940,
-        0x1944, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x19d0, 0x19da,
-        0x19de, 0x1a1b,
-        0x1a1e, 0x1a5e,
-        0x1a60, 0x1a7c,
-        0x1a7f, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1aa0, 0x1aad,
-        0x1b00, 0x1b4b,
-        0x1b50, 0x1b7c,
-        0x1b80, 0x1baa,
-        0x1bae, 0x1bb9,
-        0x1c00, 0x1c37,
-        0x1c3b, 0x1c49,
-        0x1c4d, 0x1c7f,
-        0x1cd0, 0x1cf2,
-        0x1d00, 0x1de6,
-        0x1dfd, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fc4,
-        0x1fc6, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fdd, 0x1fef,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffe,
-        0x2000, 0x2064,
-        0x206a, 0x2071,
-        0x2074, 0x208e,
-        0x2090, 0x2094,
-        0x20a0, 0x20b8,
-        0x20d0, 0x20f0,
-        0x2100, 0x2189,
-        0x2190, 0x23e8,
-        0x2400, 0x2426,
-        0x2440, 0x244a,
-        0x2460, 0x26cd,
-        0x26cf, 0x26e1,
-        0x26e3, 0x26e3,
-        0x26e8, 0x26ff,
-        0x2701, 0x2704,
-        0x2706, 0x2709,
-        0x270c, 0x2727,
-        0x2729, 0x274b,
-        0x274d, 0x274d,
-        0x274f, 0x2752,
-        0x2756, 0x275e,
-        0x2761, 0x2794,
-        0x2798, 0x27af,
-        0x27b1, 0x27be,
-        0x27c0, 0x27ca,
-        0x27cc, 0x27cc,
-        0x27d0, 0x2b4c,
-        0x2b50, 0x2b59,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2cf1,
-        0x2cf9, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2de0, 0x2e31,
-        0x2e80, 0x2e99,
-        0x2e9b, 0x2ef3,
-        0x2f00, 0x2fd5,
-        0x2ff0, 0x2ffb,
-        0x3000, 0x303f,
-        0x3041, 0x3096,
-        0x3099, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x3190, 0x31b7,
-        0x31c0, 0x31e3,
-        0x31f0, 0x321e,
-        0x3220, 0x32fe,
-        0x3300, 0x4db5,
-        0x4dc0, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa490, 0xa4c6,
-        0xa4d0, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa673,
-        0xa67c, 0xa697,
-        0xa6a0, 0xa6f7,
-        0xa700, 0xa78c,
-        0xa7fb, 0xa82b,
-        0xa830, 0xa839,
-        0xa840, 0xa877,
-        0xa880, 0xa8c4,
-        0xa8ce, 0xa8d9,
-        0xa8e0, 0xa8fb,
-        0xa900, 0xa953,
-        0xa95f, 0xa97c,
-        0xa980, 0xa9cd,
-        0xa9cf, 0xa9d9,
-        0xa9de, 0xa9df,
-        0xaa00, 0xaa36,
-        0xaa40, 0xaa4d,
-        0xaa50, 0xaa59,
-        0xaa5c, 0xaa7b,
-        0xaa80, 0xaac2,
-        0xaadb, 0xaadf,
-        0xabc0, 0xabed,
-        0xabf0, 0xabf9,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xd800, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3f,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfd,
-        0xfe00, 0xfe19,
-        0xfe20, 0xfe26,
-        0xfe30, 0xfe52,
-        0xfe54, 0xfe66,
-        0xfe68, 0xfe6b,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xfeff, 0xfeff,
-        0xff01, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0xffe0, 0xffe6,
-        0xffe8, 0xffee,
-        0xfff9, 0xfffd,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10100, 0x10102,
-        0x10107, 0x10133,
-        0x10137, 0x1018a,
-        0x10190, 0x1019b,
-        0x101d0, 0x101fd,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10320, 0x10323,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x1039f, 0x103c3,
-        0x103c8, 0x103d5,
-        0x10400, 0x1049d,
-        0x104a0, 0x104a9,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10857, 0x1085f,
-        0x10900, 0x1091b,
-        0x1091f, 0x10939,
-        0x1093f, 0x1093f,
-        0x10a00, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a47,
-        0x10a50, 0x10a58,
-        0x10a60, 0x10a7f,
-        0x10b00, 0x10b35,
-        0x10b39, 0x10b55,
-        0x10b58, 0x10b72,
-        0x10b78, 0x10b7f,
-        0x10c00, 0x10c48,
-        0x10e60, 0x10e7e,
-        0x11080, 0x110c1,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x12470, 0x12473,
-        0x13000, 0x1342e,
-        0x1d000, 0x1d0f5,
-        0x1d100, 0x1d126,
-        0x1d129, 0x1d1dd,
-        0x1d200, 0x1d245,
-        0x1d300, 0x1d356,
-        0x1d360, 0x1d371,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-        0x1f000, 0x1f02b,
-        0x1f030, 0x1f093,
-        0x1f100, 0x1f10a,
-        0x1f110, 0x1f12e,
-        0x1f131, 0x1f131,
-        0x1f13d, 0x1f13d,
-        0x1f13f, 0x1f13f,
-        0x1f142, 0x1f142,
-        0x1f146, 0x1f146,
-        0x1f14a, 0x1f14e,
-        0x1f157, 0x1f157,
-        0x1f15f, 0x1f15f,
-        0x1f179, 0x1f179,
-        0x1f17b, 0x1f17c,
-        0x1f17f, 0x1f17f,
-        0x1f18a, 0x1f18d,
-        0x1f190, 0x1f190,
-        0x1f200, 0x1f200,
-        0x1f210, 0x1f231,
-        0x1f240, 0x1f248,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-        0xe0001, 0xe0001,
-        0xe0020, 0xe007f,
-        0xe0100, 0xe01ef,
-        0xf0000, 0xffffd,
-        0x100000, 0x10fffd,
-}; /* CR_Assigned */
-
-/* 'C': Major Category */
-static const OnigCodePoint CR_C[] = {
-        20,
-        0x0000, 0x001f,
-        0x007f, 0x009f,
-        0x00ad, 0x00ad,
-        0x0600, 0x0603,
-        0x06dd, 0x06dd,
-        0x070f, 0x070f,
-        0x17b4, 0x17b5,
-        0x200b, 0x200f,
-        0x202a, 0x202e,
-        0x2060, 0x2064,
-        0x206a, 0x206f,
-        0xd800, 0xf8ff,
-        0xfeff, 0xfeff,
-        0xfff9, 0xfffb,
-        0x110bd, 0x110bd,
-        0x1d173, 0x1d17a,
-        0xe0001, 0xe0001,
-        0xe0020, 0xe007f,
-        0xf0000, 0xffffd,
-        0x100000, 0x10ffff,
-}; /* CR_C */
-
-/* 'Cc': General Category */
-static const OnigCodePoint CR_Cc[] = {
-        2,
-        0x0000, 0x001f,
-        0x007f, 0x009f,
-}; /* CR_Cc */
-
-/* 'Cf': General Category */
-static const OnigCodePoint CR_Cf[] = {
-        15,
-        0x00ad, 0x00ad,
-        0x0600, 0x0603,
-        0x06dd, 0x06dd,
-        0x070f, 0x070f,
-        0x17b4, 0x17b5,
-        0x200b, 0x200f,
-        0x202a, 0x202e,
-        0x2060, 0x2064,
-        0x206a, 0x206f,
-        0xfeff, 0xfeff,
-        0xfff9, 0xfffb,
-        0x110bd, 0x110bd,
-        0x1d173, 0x1d17a,
-        0xe0001, 0xe0001,
-        0xe0020, 0xe007f,
-}; /* CR_Cf */
-
-/* 'Cn': General Category */
-static const OnigCodePoint CR_Cn[] = {
-        485,
-        0x0378, 0x0379,
-        0x037f, 0x0383,
-        0x038b, 0x038b,
-        0x038d, 0x038d,
-        0x03a2, 0x03a2,
-        0x0526, 0x0530,
-        0x0557, 0x0558,
-        0x0560, 0x0560,
-        0x0588, 0x0588,
-        0x058b, 0x0590,
-        0x05c8, 0x05cf,
-        0x05eb, 0x05ef,
-        0x05f5, 0x05ff,
-        0x0604, 0x0605,
-        0x061c, 0x061d,
-        0x0620, 0x0620,
-        0x065f, 0x065f,
-        0x070e, 0x070e,
-        0x074b, 0x074c,
-        0x07b2, 0x07bf,
-        0x07fb, 0x07ff,
-        0x082e, 0x082f,
-        0x083f, 0x08ff,
-        0x093a, 0x093b,
-        0x094f, 0x094f,
-        0x0956, 0x0957,
-        0x0973, 0x0978,
-        0x0980, 0x0980,
-        0x0984, 0x0984,
-        0x098d, 0x098e,
-        0x0991, 0x0992,
-        0x09a9, 0x09a9,
-        0x09b1, 0x09b1,
-        0x09b3, 0x09b5,
-        0x09ba, 0x09bb,
-        0x09c5, 0x09c6,
-        0x09c9, 0x09ca,
-        0x09cf, 0x09d6,
-        0x09d8, 0x09db,
-        0x09de, 0x09de,
-        0x09e4, 0x09e5,
-        0x09fc, 0x0a00,
-        0x0a04, 0x0a04,
-        0x0a0b, 0x0a0e,
-        0x0a11, 0x0a12,
-        0x0a29, 0x0a29,
-        0x0a31, 0x0a31,
-        0x0a34, 0x0a34,
-        0x0a37, 0x0a37,
-        0x0a3a, 0x0a3b,
-        0x0a3d, 0x0a3d,
-        0x0a43, 0x0a46,
-        0x0a49, 0x0a4a,
-        0x0a4e, 0x0a50,
-        0x0a52, 0x0a58,
-        0x0a5d, 0x0a5d,
-        0x0a5f, 0x0a65,
-        0x0a76, 0x0a80,
-        0x0a84, 0x0a84,
-        0x0a8e, 0x0a8e,
-        0x0a92, 0x0a92,
-        0x0aa9, 0x0aa9,
-        0x0ab1, 0x0ab1,
-        0x0ab4, 0x0ab4,
-        0x0aba, 0x0abb,
-        0x0ac6, 0x0ac6,
-        0x0aca, 0x0aca,
-        0x0ace, 0x0acf,
-        0x0ad1, 0x0adf,
-        0x0ae4, 0x0ae5,
-        0x0af0, 0x0af0,
-        0x0af2, 0x0b00,
-        0x0b04, 0x0b04,
-        0x0b0d, 0x0b0e,
-        0x0b11, 0x0b12,
-        0x0b29, 0x0b29,
-        0x0b31, 0x0b31,
-        0x0b34, 0x0b34,
-        0x0b3a, 0x0b3b,
-        0x0b45, 0x0b46,
-        0x0b49, 0x0b4a,
-        0x0b4e, 0x0b55,
-        0x0b58, 0x0b5b,
-        0x0b5e, 0x0b5e,
-        0x0b64, 0x0b65,
-        0x0b72, 0x0b81,
-        0x0b84, 0x0b84,
-        0x0b8b, 0x0b8d,
-        0x0b91, 0x0b91,
-        0x0b96, 0x0b98,
-        0x0b9b, 0x0b9b,
-        0x0b9d, 0x0b9d,
-        0x0ba0, 0x0ba2,
-        0x0ba5, 0x0ba7,
-        0x0bab, 0x0bad,
-        0x0bba, 0x0bbd,
-        0x0bc3, 0x0bc5,
-        0x0bc9, 0x0bc9,
-        0x0bce, 0x0bcf,
-        0x0bd1, 0x0bd6,
-        0x0bd8, 0x0be5,
-        0x0bfb, 0x0c00,
-        0x0c04, 0x0c04,
-        0x0c0d, 0x0c0d,
-        0x0c11, 0x0c11,
-        0x0c29, 0x0c29,
-        0x0c34, 0x0c34,
-        0x0c3a, 0x0c3c,
-        0x0c45, 0x0c45,
-        0x0c49, 0x0c49,
-        0x0c4e, 0x0c54,
-        0x0c57, 0x0c57,
-        0x0c5a, 0x0c5f,
-        0x0c64, 0x0c65,
-        0x0c70, 0x0c77,
-        0x0c80, 0x0c81,
-        0x0c84, 0x0c84,
-        0x0c8d, 0x0c8d,
-        0x0c91, 0x0c91,
-        0x0ca9, 0x0ca9,
-        0x0cb4, 0x0cb4,
-        0x0cba, 0x0cbb,
-        0x0cc5, 0x0cc5,
-        0x0cc9, 0x0cc9,
-        0x0cce, 0x0cd4,
-        0x0cd7, 0x0cdd,
-        0x0cdf, 0x0cdf,
-        0x0ce4, 0x0ce5,
-        0x0cf0, 0x0cf0,
-        0x0cf3, 0x0d01,
-        0x0d04, 0x0d04,
-        0x0d0d, 0x0d0d,
-        0x0d11, 0x0d11,
-        0x0d29, 0x0d29,
-        0x0d3a, 0x0d3c,
-        0x0d45, 0x0d45,
-        0x0d49, 0x0d49,
-        0x0d4e, 0x0d56,
-        0x0d58, 0x0d5f,
-        0x0d64, 0x0d65,
-        0x0d76, 0x0d78,
-        0x0d80, 0x0d81,
-        0x0d84, 0x0d84,
-        0x0d97, 0x0d99,
-        0x0db2, 0x0db2,
-        0x0dbc, 0x0dbc,
-        0x0dbe, 0x0dbf,
-        0x0dc7, 0x0dc9,
-        0x0dcb, 0x0dce,
-        0x0dd5, 0x0dd5,
-        0x0dd7, 0x0dd7,
-        0x0de0, 0x0df1,
-        0x0df5, 0x0e00,
-        0x0e3b, 0x0e3e,
-        0x0e5c, 0x0e80,
-        0x0e83, 0x0e83,
-        0x0e85, 0x0e86,
-        0x0e89, 0x0e89,
-        0x0e8b, 0x0e8c,
-        0x0e8e, 0x0e93,
-        0x0e98, 0x0e98,
-        0x0ea0, 0x0ea0,
-        0x0ea4, 0x0ea4,
-        0x0ea6, 0x0ea6,
-        0x0ea8, 0x0ea9,
-        0x0eac, 0x0eac,
-        0x0eba, 0x0eba,
-        0x0ebe, 0x0ebf,
-        0x0ec5, 0x0ec5,
-        0x0ec7, 0x0ec7,
-        0x0ece, 0x0ecf,
-        0x0eda, 0x0edb,
-        0x0ede, 0x0eff,
-        0x0f48, 0x0f48,
-        0x0f6d, 0x0f70,
-        0x0f8c, 0x0f8f,
-        0x0f98, 0x0f98,
-        0x0fbd, 0x0fbd,
-        0x0fcd, 0x0fcd,
-        0x0fd9, 0x0fff,
-        0x10c6, 0x10cf,
-        0x10fd, 0x10ff,
-        0x1249, 0x1249,
-        0x124e, 0x124f,
-        0x1257, 0x1257,
-        0x1259, 0x1259,
-        0x125e, 0x125f,
-        0x1289, 0x1289,
-        0x128e, 0x128f,
-        0x12b1, 0x12b1,
-        0x12b6, 0x12b7,
-        0x12bf, 0x12bf,
-        0x12c1, 0x12c1,
-        0x12c6, 0x12c7,
-        0x12d7, 0x12d7,
-        0x1311, 0x1311,
-        0x1316, 0x1317,
-        0x135b, 0x135e,
-        0x137d, 0x137f,
-        0x139a, 0x139f,
-        0x13f5, 0x13ff,
-        0x169d, 0x169f,
-        0x16f1, 0x16ff,
-        0x170d, 0x170d,
-        0x1715, 0x171f,
-        0x1737, 0x173f,
-        0x1754, 0x175f,
-        0x176d, 0x176d,
-        0x1771, 0x1771,
-        0x1774, 0x177f,
-        0x17de, 0x17df,
-        0x17ea, 0x17ef,
-        0x17fa, 0x17ff,
-        0x180f, 0x180f,
-        0x181a, 0x181f,
-        0x1878, 0x187f,
-        0x18ab, 0x18af,
-        0x18f6, 0x18ff,
-        0x191d, 0x191f,
-        0x192c, 0x192f,
-        0x193c, 0x193f,
-        0x1941, 0x1943,
-        0x196e, 0x196f,
-        0x1975, 0x197f,
-        0x19ac, 0x19af,
-        0x19ca, 0x19cf,
-        0x19db, 0x19dd,
-        0x1a1c, 0x1a1d,
-        0x1a5f, 0x1a5f,
-        0x1a7d, 0x1a7e,
-        0x1a8a, 0x1a8f,
-        0x1a9a, 0x1a9f,
-        0x1aae, 0x1aff,
-        0x1b4c, 0x1b4f,
-        0x1b7d, 0x1b7f,
-        0x1bab, 0x1bad,
-        0x1bba, 0x1bff,
-        0x1c38, 0x1c3a,
-        0x1c4a, 0x1c4c,
-        0x1c80, 0x1ccf,
-        0x1cf3, 0x1cff,
-        0x1de7, 0x1dfc,
-        0x1f16, 0x1f17,
-        0x1f1e, 0x1f1f,
-        0x1f46, 0x1f47,
-        0x1f4e, 0x1f4f,
-        0x1f58, 0x1f58,
-        0x1f5a, 0x1f5a,
-        0x1f5c, 0x1f5c,
-        0x1f5e, 0x1f5e,
-        0x1f7e, 0x1f7f,
-        0x1fb5, 0x1fb5,
-        0x1fc5, 0x1fc5,
-        0x1fd4, 0x1fd5,
-        0x1fdc, 0x1fdc,
-        0x1ff0, 0x1ff1,
-        0x1ff5, 0x1ff5,
-        0x1fff, 0x1fff,
-        0x2065, 0x2069,
-        0x2072, 0x2073,
-        0x208f, 0x208f,
-        0x2095, 0x209f,
-        0x20b9, 0x20cf,
-        0x20f1, 0x20ff,
-        0x218a, 0x218f,
-        0x23e9, 0x23ff,
-        0x2427, 0x243f,
-        0x244b, 0x245f,
-        0x26ce, 0x26ce,
-        0x26e2, 0x26e2,
-        0x26e4, 0x26e7,
-        0x2700, 0x2700,
-        0x2705, 0x2705,
-        0x270a, 0x270b,
-        0x2728, 0x2728,
-        0x274c, 0x274c,
-        0x274e, 0x274e,
-        0x2753, 0x2755,
-        0x275f, 0x2760,
-        0x2795, 0x2797,
-        0x27b0, 0x27b0,
-        0x27bf, 0x27bf,
-        0x27cb, 0x27cb,
-        0x27cd, 0x27cf,
-        0x2b4d, 0x2b4f,
-        0x2b5a, 0x2bff,
-        0x2c2f, 0x2c2f,
-        0x2c5f, 0x2c5f,
-        0x2cf2, 0x2cf8,
-        0x2d26, 0x2d2f,
-        0x2d66, 0x2d6e,
-        0x2d70, 0x2d7f,
-        0x2d97, 0x2d9f,
-        0x2da7, 0x2da7,
-        0x2daf, 0x2daf,
-        0x2db7, 0x2db7,
-        0x2dbf, 0x2dbf,
-        0x2dc7, 0x2dc7,
-        0x2dcf, 0x2dcf,
-        0x2dd7, 0x2dd7,
-        0x2ddf, 0x2ddf,
-        0x2e32, 0x2e7f,
-        0x2e9a, 0x2e9a,
-        0x2ef4, 0x2eff,
-        0x2fd6, 0x2fef,
-        0x2ffc, 0x2fff,
-        0x3040, 0x3040,
-        0x3097, 0x3098,
-        0x3100, 0x3104,
-        0x312e, 0x3130,
-        0x318f, 0x318f,
-        0x31b8, 0x31bf,
-        0x31e4, 0x31ef,
-        0x321f, 0x321f,
-        0x32ff, 0x32ff,
-        0x4db6, 0x4dbf,
-        0x9fcc, 0x9fff,
-        0xa48d, 0xa48f,
-        0xa4c7, 0xa4cf,
-        0xa62c, 0xa63f,
-        0xa660, 0xa661,
-        0xa674, 0xa67b,
-        0xa698, 0xa69f,
-        0xa6f8, 0xa6ff,
-        0xa78d, 0xa7fa,
-        0xa82c, 0xa82f,
-        0xa83a, 0xa83f,
-        0xa878, 0xa87f,
-        0xa8c5, 0xa8cd,
-        0xa8da, 0xa8df,
-        0xa8fc, 0xa8ff,
-        0xa954, 0xa95e,
-        0xa97d, 0xa97f,
-        0xa9ce, 0xa9ce,
-        0xa9da, 0xa9dd,
-        0xa9e0, 0xa9ff,
-        0xaa37, 0xaa3f,
-        0xaa4e, 0xaa4f,
-        0xaa5a, 0xaa5b,
-        0xaa7c, 0xaa7f,
-        0xaac3, 0xaada,
-        0xaae0, 0xabbf,
-        0xabee, 0xabef,
-        0xabfa, 0xabff,
-        0xd7a4, 0xd7af,
-        0xd7c7, 0xd7ca,
-        0xd7fc, 0xd7ff,
-        0xfa2e, 0xfa2f,
-        0xfa6e, 0xfa6f,
-        0xfada, 0xfaff,
-        0xfb07, 0xfb12,
-        0xfb18, 0xfb1c,
-        0xfb37, 0xfb37,
-        0xfb3d, 0xfb3d,
-        0xfb3f, 0xfb3f,
-        0xfb42, 0xfb42,
-        0xfb45, 0xfb45,
-        0xfbb2, 0xfbd2,
-        0xfd40, 0xfd4f,
-        0xfd90, 0xfd91,
-        0xfdc8, 0xfdef,
-        0xfdfe, 0xfdff,
-        0xfe1a, 0xfe1f,
-        0xfe27, 0xfe2f,
-        0xfe53, 0xfe53,
-        0xfe67, 0xfe67,
-        0xfe6c, 0xfe6f,
-        0xfe75, 0xfe75,
-        0xfefd, 0xfefe,
-        0xff00, 0xff00,
-        0xffbf, 0xffc1,
-        0xffc8, 0xffc9,
-        0xffd0, 0xffd1,
-        0xffd8, 0xffd9,
-        0xffdd, 0xffdf,
-        0xffe7, 0xffe7,
-        0xffef, 0xfff8,
-        0xfffe, 0xffff,
-        0x1000c, 0x1000c,
-        0x10027, 0x10027,
-        0x1003b, 0x1003b,
-        0x1003e, 0x1003e,
-        0x1004e, 0x1004f,
-        0x1005e, 0x1007f,
-        0x100fb, 0x100ff,
-        0x10103, 0x10106,
-        0x10134, 0x10136,
-        0x1018b, 0x1018f,
-        0x1019c, 0x101cf,
-        0x101fe, 0x1027f,
-        0x1029d, 0x1029f,
-        0x102d1, 0x102ff,
-        0x1031f, 0x1031f,
-        0x10324, 0x1032f,
-        0x1034b, 0x1037f,
-        0x1039e, 0x1039e,
-        0x103c4, 0x103c7,
-        0x103d6, 0x103ff,
-        0x1049e, 0x1049f,
-        0x104aa, 0x107ff,
-        0x10806, 0x10807,
-        0x10809, 0x10809,
-        0x10836, 0x10836,
-        0x10839, 0x1083b,
-        0x1083d, 0x1083e,
-        0x10856, 0x10856,
-        0x10860, 0x108ff,
-        0x1091c, 0x1091e,
-        0x1093a, 0x1093e,
-        0x10940, 0x109ff,
-        0x10a04, 0x10a04,
-        0x10a07, 0x10a0b,
-        0x10a14, 0x10a14,
-        0x10a18, 0x10a18,
-        0x10a34, 0x10a37,
-        0x10a3b, 0x10a3e,
-        0x10a48, 0x10a4f,
-        0x10a59, 0x10a5f,
-        0x10a80, 0x10aff,
-        0x10b36, 0x10b38,
-        0x10b56, 0x10b57,
-        0x10b73, 0x10b77,
-        0x10b80, 0x10bff,
-        0x10c49, 0x10e5f,
-        0x10e7f, 0x1107f,
-        0x110c2, 0x11fff,
-        0x1236f, 0x123ff,
-        0x12463, 0x1246f,
-        0x12474, 0x12fff,
-        0x1342f, 0x1cfff,
-        0x1d0f6, 0x1d0ff,
-        0x1d127, 0x1d128,
-        0x1d1de, 0x1d1ff,
-        0x1d246, 0x1d2ff,
-        0x1d357, 0x1d35f,
-        0x1d372, 0x1d3ff,
-        0x1d455, 0x1d455,
-        0x1d49d, 0x1d49d,
-        0x1d4a0, 0x1d4a1,
-        0x1d4a3, 0x1d4a4,
-        0x1d4a7, 0x1d4a8,
-        0x1d4ad, 0x1d4ad,
-        0x1d4ba, 0x1d4ba,
-        0x1d4bc, 0x1d4bc,
-        0x1d4c4, 0x1d4c4,
-        0x1d506, 0x1d506,
-        0x1d50b, 0x1d50c,
-        0x1d515, 0x1d515,
-        0x1d51d, 0x1d51d,
-        0x1d53a, 0x1d53a,
-        0x1d53f, 0x1d53f,
-        0x1d545, 0x1d545,
-        0x1d547, 0x1d549,
-        0x1d551, 0x1d551,
-        0x1d6a6, 0x1d6a7,
-        0x1d7cc, 0x1d7cd,
-        0x1d800, 0x1efff,
-        0x1f02c, 0x1f02f,
-        0x1f094, 0x1f0ff,
-        0x1f10b, 0x1f10f,
-        0x1f12f, 0x1f130,
-        0x1f132, 0x1f13c,
-        0x1f13e, 0x1f13e,
-        0x1f140, 0x1f141,
-        0x1f143, 0x1f145,
-        0x1f147, 0x1f149,
-        0x1f14f, 0x1f156,
-        0x1f158, 0x1f15e,
-        0x1f160, 0x1f178,
-        0x1f17a, 0x1f17a,
-        0x1f17d, 0x1f17e,
-        0x1f180, 0x1f189,
-        0x1f18e, 0x1f18f,
-        0x1f191, 0x1f1ff,
-        0x1f201, 0x1f20f,
-        0x1f232, 0x1f23f,
-        0x1f249, 0x1ffff,
-        0x2a6d7, 0x2a6ff,
-        0x2b735, 0x2f7ff,
-        0x2fa1e, 0xe0000,
-        0xe0002, 0xe001f,
-        0xe0080, 0xe00ff,
-        0xe01f0, 0xeffff,
-        0xffffe, 0xfffff,
-        0x10fffe, 0x10ffff,
-}; /* CR_Cn */
-
-/* 'Co': General Category */
-static const OnigCodePoint CR_Co[] = {
-        3,
-        0xe000, 0xf8ff,
-        0xf0000, 0xffffd,
-        0x100000, 0x10fffd,
-}; /* CR_Co */
-
-/* 'Cs': General Category */
-static const OnigCodePoint CR_Cs[] = {
-        1,
-        0xd800, 0xdfff,
-}; /* CR_Cs */
-
-/* 'L': Major Category */
-static const OnigCodePoint CR_L[] = {
-        422,
-        0x0041, 0x005a,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x02c1,
-        0x02c6, 0x02d1,
-        0x02e0, 0x02e4,
-        0x02ec, 0x02ec,
-        0x02ee, 0x02ee,
-        0x0370, 0x0374,
-        0x0376, 0x0377,
-        0x037a, 0x037d,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03f5,
-        0x03f7, 0x0481,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x0559,
-        0x0561, 0x0587,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f2,
-        0x0621, 0x064a,
-        0x066e, 0x066f,
-        0x0671, 0x06d3,
-        0x06d5, 0x06d5,
-        0x06e5, 0x06e6,
-        0x06ee, 0x06ef,
-        0x06fa, 0x06fc,
-        0x06ff, 0x06ff,
-        0x0710, 0x0710,
-        0x0712, 0x072f,
-        0x074d, 0x07a5,
-        0x07b1, 0x07b1,
-        0x07ca, 0x07ea,
-        0x07f4, 0x07f5,
-        0x07fa, 0x07fa,
-        0x0800, 0x0815,
-        0x081a, 0x081a,
-        0x0824, 0x0824,
-        0x0828, 0x0828,
-        0x0904, 0x0939,
-        0x093d, 0x093d,
-        0x0950, 0x0950,
-        0x0958, 0x0961,
-        0x0971, 0x0972,
-        0x0979, 0x097f,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bd, 0x09bd,
-        0x09ce, 0x09ce,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e1,
-        0x09f0, 0x09f1,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a72, 0x0a74,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abd, 0x0abd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae1,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3d, 0x0b3d,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b61,
-        0x0b71, 0x0b71,
-        0x0b83, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bd0, 0x0bd0,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c3d,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c61,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbd, 0x0cbd,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce1,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d3d,
-        0x0d60, 0x0d61,
-        0x0d7a, 0x0d7f,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0e01, 0x0e30,
-        0x0e32, 0x0e33,
-        0x0e40, 0x0e46,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb0,
-        0x0eb2, 0x0eb3,
-        0x0ebd, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f00,
-        0x0f40, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f88, 0x0f8b,
-        0x1000, 0x102a,
-        0x103f, 0x103f,
-        0x1050, 0x1055,
-        0x105a, 0x105d,
-        0x1061, 0x1061,
-        0x1065, 0x1066,
-        0x106e, 0x1070,
-        0x1075, 0x1081,
-        0x108e, 0x108e,
-        0x10a0, 0x10c5,
-        0x10d0, 0x10fa,
-        0x10fc, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x1380, 0x138f,
-        0x13a0, 0x13f4,
-        0x1401, 0x166c,
-        0x166f, 0x167f,
-        0x1681, 0x169a,
-        0x16a0, 0x16ea,
-        0x1700, 0x170c,
-        0x170e, 0x1711,
-        0x1720, 0x1731,
-        0x1740, 0x1751,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1780, 0x17b3,
-        0x17d7, 0x17d7,
-        0x17dc, 0x17dc,
-        0x1820, 0x1877,
-        0x1880, 0x18a8,
-        0x18aa, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1950, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19c1, 0x19c7,
-        0x1a00, 0x1a16,
-        0x1a20, 0x1a54,
-        0x1aa7, 0x1aa7,
-        0x1b05, 0x1b33,
-        0x1b45, 0x1b4b,
-        0x1b83, 0x1ba0,
-        0x1bae, 0x1baf,
-        0x1c00, 0x1c23,
-        0x1c4d, 0x1c4f,
-        0x1c5a, 0x1c7d,
-        0x1ce9, 0x1cec,
-        0x1cee, 0x1cf1,
-        0x1d00, 0x1dbf,
-        0x1e00, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2119, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x212d,
-        0x212f, 0x2139,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x214e, 0x214e,
-        0x2183, 0x2184,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2ce4,
-        0x2ceb, 0x2cee,
-        0x2d00, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2e2f, 0x2e2f,
-        0x3005, 0x3006,
-        0x3031, 0x3035,
-        0x303b, 0x303c,
-        0x3041, 0x3096,
-        0x309d, 0x309f,
-        0x30a1, 0x30fa,
-        0x30fc, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x31a0, 0x31b7,
-        0x31f0, 0x31ff,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa4d0, 0xa4fd,
-        0xa500, 0xa60c,
-        0xa610, 0xa61f,
-        0xa62a, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa66e,
-        0xa67f, 0xa697,
-        0xa6a0, 0xa6e5,
-        0xa717, 0xa71f,
-        0xa722, 0xa788,
-        0xa78b, 0xa78c,
-        0xa7fb, 0xa801,
-        0xa803, 0xa805,
-        0xa807, 0xa80a,
-        0xa80c, 0xa822,
-        0xa840, 0xa873,
-        0xa882, 0xa8b3,
-        0xa8f2, 0xa8f7,
-        0xa8fb, 0xa8fb,
-        0xa90a, 0xa925,
-        0xa930, 0xa946,
-        0xa960, 0xa97c,
-        0xa984, 0xa9b2,
-        0xa9cf, 0xa9cf,
-        0xaa00, 0xaa28,
-        0xaa40, 0xaa42,
-        0xaa44, 0xaa4b,
-        0xaa60, 0xaa76,
-        0xaa7a, 0xaa7a,
-        0xaa80, 0xaaaf,
-        0xaab1, 0xaab1,
-        0xaab5, 0xaab6,
-        0xaab9, 0xaabd,
-        0xaac0, 0xaac0,
-        0xaac2, 0xaac2,
-        0xaadb, 0xaadd,
-        0xabc0, 0xabe2,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb1d,
-        0xfb1f, 0xfb28,
-        0xfb2a, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfb,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xff21, 0xff3a,
-        0xff41, 0xff5a,
-        0xff66, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10330, 0x10340,
-        0x10342, 0x10349,
-        0x10380, 0x1039d,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103cf,
-        0x10400, 0x1049d,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10900, 0x10915,
-        0x10920, 0x10939,
-        0x10a00, 0x10a00,
-        0x10a10, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a60, 0x10a7c,
-        0x10b00, 0x10b35,
-        0x10b40, 0x10b55,
-        0x10b60, 0x10b72,
-        0x10c00, 0x10c48,
-        0x11083, 0x110af,
-        0x12000, 0x1236e,
-        0x13000, 0x1342e,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-}; /* CR_L */
-
-/* 'Ll': General Category */
-static const OnigCodePoint CR_Ll[] = {
-        599,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00ba, 0x00ba,
-        0x00df, 0x00f6,
-        0x00f8, 0x00ff,
-        0x0101, 0x0101,
-        0x0103, 0x0103,
-        0x0105, 0x0105,
-        0x0107, 0x0107,
-        0x0109, 0x0109,
-        0x010b, 0x010b,
-        0x010d, 0x010d,
-        0x010f, 0x010f,
-        0x0111, 0x0111,
-        0x0113, 0x0113,
-        0x0115, 0x0115,
-        0x0117, 0x0117,
-        0x0119, 0x0119,
-        0x011b, 0x011b,
-        0x011d, 0x011d,
-        0x011f, 0x011f,
-        0x0121, 0x0121,
-        0x0123, 0x0123,
-        0x0125, 0x0125,
-        0x0127, 0x0127,
-        0x0129, 0x0129,
-        0x012b, 0x012b,
-        0x012d, 0x012d,
-        0x012f, 0x012f,
-        0x0131, 0x0131,
-        0x0133, 0x0133,
-        0x0135, 0x0135,
-        0x0137, 0x0138,
-        0x013a, 0x013a,
-        0x013c, 0x013c,
-        0x013e, 0x013e,
-        0x0140, 0x0140,
-        0x0142, 0x0142,
-        0x0144, 0x0144,
-        0x0146, 0x0146,
-        0x0148, 0x0149,
-        0x014b, 0x014b,
-        0x014d, 0x014d,
-        0x014f, 0x014f,
-        0x0151, 0x0151,
-        0x0153, 0x0153,
-        0x0155, 0x0155,
-        0x0157, 0x0157,
-        0x0159, 0x0159,
-        0x015b, 0x015b,
-        0x015d, 0x015d,
-        0x015f, 0x015f,
-        0x0161, 0x0161,
-        0x0163, 0x0163,
-        0x0165, 0x0165,
-        0x0167, 0x0167,
-        0x0169, 0x0169,
-        0x016b, 0x016b,
-        0x016d, 0x016d,
-        0x016f, 0x016f,
-        0x0171, 0x0171,
-        0x0173, 0x0173,
-        0x0175, 0x0175,
-        0x0177, 0x0177,
-        0x017a, 0x017a,
-        0x017c, 0x017c,
-        0x017e, 0x0180,
-        0x0183, 0x0183,
-        0x0185, 0x0185,
-        0x0188, 0x0188,
-        0x018c, 0x018d,
-        0x0192, 0x0192,
-        0x0195, 0x0195,
-        0x0199, 0x019b,
-        0x019e, 0x019e,
-        0x01a1, 0x01a1,
-        0x01a3, 0x01a3,
-        0x01a5, 0x01a5,
-        0x01a8, 0x01a8,
-        0x01aa, 0x01ab,
-        0x01ad, 0x01ad,
-        0x01b0, 0x01b0,
-        0x01b4, 0x01b4,
-        0x01b6, 0x01b6,
-        0x01b9, 0x01ba,
-        0x01bd, 0x01bf,
-        0x01c6, 0x01c6,
-        0x01c9, 0x01c9,
-        0x01cc, 0x01cc,
-        0x01ce, 0x01ce,
-        0x01d0, 0x01d0,
-        0x01d2, 0x01d2,
-        0x01d4, 0x01d4,
-        0x01d6, 0x01d6,
-        0x01d8, 0x01d8,
-        0x01da, 0x01da,
-        0x01dc, 0x01dd,
-        0x01df, 0x01df,
-        0x01e1, 0x01e1,
-        0x01e3, 0x01e3,
-        0x01e5, 0x01e5,
-        0x01e7, 0x01e7,
-        0x01e9, 0x01e9,
-        0x01eb, 0x01eb,
-        0x01ed, 0x01ed,
-        0x01ef, 0x01f0,
-        0x01f3, 0x01f3,
-        0x01f5, 0x01f5,
-        0x01f9, 0x01f9,
-        0x01fb, 0x01fb,
-        0x01fd, 0x01fd,
-        0x01ff, 0x01ff,
-        0x0201, 0x0201,
-        0x0203, 0x0203,
-        0x0205, 0x0205,
-        0x0207, 0x0207,
-        0x0209, 0x0209,
-        0x020b, 0x020b,
-        0x020d, 0x020d,
-        0x020f, 0x020f,
-        0x0211, 0x0211,
-        0x0213, 0x0213,
-        0x0215, 0x0215,
-        0x0217, 0x0217,
-        0x0219, 0x0219,
-        0x021b, 0x021b,
-        0x021d, 0x021d,
-        0x021f, 0x021f,
-        0x0221, 0x0221,
-        0x0223, 0x0223,
-        0x0225, 0x0225,
-        0x0227, 0x0227,
-        0x0229, 0x0229,
-        0x022b, 0x022b,
-        0x022d, 0x022d,
-        0x022f, 0x022f,
-        0x0231, 0x0231,
-        0x0233, 0x0239,
-        0x023c, 0x023c,
-        0x023f, 0x0240,
-        0x0242, 0x0242,
-        0x0247, 0x0247,
-        0x0249, 0x0249,
-        0x024b, 0x024b,
-        0x024d, 0x024d,
-        0x024f, 0x0293,
-        0x0295, 0x02af,
-        0x0371, 0x0371,
-        0x0373, 0x0373,
-        0x0377, 0x0377,
-        0x037b, 0x037d,
-        0x0390, 0x0390,
-        0x03ac, 0x03ce,
-        0x03d0, 0x03d1,
-        0x03d5, 0x03d7,
-        0x03d9, 0x03d9,
-        0x03db, 0x03db,
-        0x03dd, 0x03dd,
-        0x03df, 0x03df,
-        0x03e1, 0x03e1,
-        0x03e3, 0x03e3,
-        0x03e5, 0x03e5,
-        0x03e7, 0x03e7,
-        0x03e9, 0x03e9,
-        0x03eb, 0x03eb,
-        0x03ed, 0x03ed,
-        0x03ef, 0x03f3,
-        0x03f5, 0x03f5,
-        0x03f8, 0x03f8,
-        0x03fb, 0x03fc,
-        0x0430, 0x045f,
-        0x0461, 0x0461,
-        0x0463, 0x0463,
-        0x0465, 0x0465,
-        0x0467, 0x0467,
-        0x0469, 0x0469,
-        0x046b, 0x046b,
-        0x046d, 0x046d,
-        0x046f, 0x046f,
-        0x0471, 0x0471,
-        0x0473, 0x0473,
-        0x0475, 0x0475,
-        0x0477, 0x0477,
-        0x0479, 0x0479,
-        0x047b, 0x047b,
-        0x047d, 0x047d,
-        0x047f, 0x047f,
-        0x0481, 0x0481,
-        0x048b, 0x048b,
-        0x048d, 0x048d,
-        0x048f, 0x048f,
-        0x0491, 0x0491,
-        0x0493, 0x0493,
-        0x0495, 0x0495,
-        0x0497, 0x0497,
-        0x0499, 0x0499,
-        0x049b, 0x049b,
-        0x049d, 0x049d,
-        0x049f, 0x049f,
-        0x04a1, 0x04a1,
-        0x04a3, 0x04a3,
-        0x04a5, 0x04a5,
-        0x04a7, 0x04a7,
-        0x04a9, 0x04a9,
-        0x04ab, 0x04ab,
-        0x04ad, 0x04ad,
-        0x04af, 0x04af,
-        0x04b1, 0x04b1,
-        0x04b3, 0x04b3,
-        0x04b5, 0x04b5,
-        0x04b7, 0x04b7,
-        0x04b9, 0x04b9,
-        0x04bb, 0x04bb,
-        0x04bd, 0x04bd,
-        0x04bf, 0x04bf,
-        0x04c2, 0x04c2,
-        0x04c4, 0x04c4,
-        0x04c6, 0x04c6,
-        0x04c8, 0x04c8,
-        0x04ca, 0x04ca,
-        0x04cc, 0x04cc,
-        0x04ce, 0x04cf,
-        0x04d1, 0x04d1,
-        0x04d3, 0x04d3,
-        0x04d5, 0x04d5,
-        0x04d7, 0x04d7,
-        0x04d9, 0x04d9,
-        0x04db, 0x04db,
-        0x04dd, 0x04dd,
-        0x04df, 0x04df,
-        0x04e1, 0x04e1,
-        0x04e3, 0x04e3,
-        0x04e5, 0x04e5,
-        0x04e7, 0x04e7,
-        0x04e9, 0x04e9,
-        0x04eb, 0x04eb,
-        0x04ed, 0x04ed,
-        0x04ef, 0x04ef,
-        0x04f1, 0x04f1,
-        0x04f3, 0x04f3,
-        0x04f5, 0x04f5,
-        0x04f7, 0x04f7,
-        0x04f9, 0x04f9,
-        0x04fb, 0x04fb,
-        0x04fd, 0x04fd,
-        0x04ff, 0x04ff,
-        0x0501, 0x0501,
-        0x0503, 0x0503,
-        0x0505, 0x0505,
-        0x0507, 0x0507,
-        0x0509, 0x0509,
-        0x050b, 0x050b,
-        0x050d, 0x050d,
-        0x050f, 0x050f,
-        0x0511, 0x0511,
-        0x0513, 0x0513,
-        0x0515, 0x0515,
-        0x0517, 0x0517,
-        0x0519, 0x0519,
-        0x051b, 0x051b,
-        0x051d, 0x051d,
-        0x051f, 0x051f,
-        0x0521, 0x0521,
-        0x0523, 0x0523,
-        0x0525, 0x0525,
-        0x0561, 0x0587,
-        0x1d00, 0x1d2b,
-        0x1d62, 0x1d77,
-        0x1d79, 0x1d9a,
-        0x1e01, 0x1e01,
-        0x1e03, 0x1e03,
-        0x1e05, 0x1e05,
-        0x1e07, 0x1e07,
-        0x1e09, 0x1e09,
-        0x1e0b, 0x1e0b,
-        0x1e0d, 0x1e0d,
-        0x1e0f, 0x1e0f,
-        0x1e11, 0x1e11,
-        0x1e13, 0x1e13,
-        0x1e15, 0x1e15,
-        0x1e17, 0x1e17,
-        0x1e19, 0x1e19,
-        0x1e1b, 0x1e1b,
-        0x1e1d, 0x1e1d,
-        0x1e1f, 0x1e1f,
-        0x1e21, 0x1e21,
-        0x1e23, 0x1e23,
-        0x1e25, 0x1e25,
-        0x1e27, 0x1e27,
-        0x1e29, 0x1e29,
-        0x1e2b, 0x1e2b,
-        0x1e2d, 0x1e2d,
-        0x1e2f, 0x1e2f,
-        0x1e31, 0x1e31,
-        0x1e33, 0x1e33,
-        0x1e35, 0x1e35,
-        0x1e37, 0x1e37,
-        0x1e39, 0x1e39,
-        0x1e3b, 0x1e3b,
-        0x1e3d, 0x1e3d,
-        0x1e3f, 0x1e3f,
-        0x1e41, 0x1e41,
-        0x1e43, 0x1e43,
-        0x1e45, 0x1e45,
-        0x1e47, 0x1e47,
-        0x1e49, 0x1e49,
-        0x1e4b, 0x1e4b,
-        0x1e4d, 0x1e4d,
-        0x1e4f, 0x1e4f,
-        0x1e51, 0x1e51,
-        0x1e53, 0x1e53,
-        0x1e55, 0x1e55,
-        0x1e57, 0x1e57,
-        0x1e59, 0x1e59,
-        0x1e5b, 0x1e5b,
-        0x1e5d, 0x1e5d,
-        0x1e5f, 0x1e5f,
-        0x1e61, 0x1e61,
-        0x1e63, 0x1e63,
-        0x1e65, 0x1e65,
-        0x1e67, 0x1e67,
-        0x1e69, 0x1e69,
-        0x1e6b, 0x1e6b,
-        0x1e6d, 0x1e6d,
-        0x1e6f, 0x1e6f,
-        0x1e71, 0x1e71,
-        0x1e73, 0x1e73,
-        0x1e75, 0x1e75,
-        0x1e77, 0x1e77,
-        0x1e79, 0x1e79,
-        0x1e7b, 0x1e7b,
-        0x1e7d, 0x1e7d,
-        0x1e7f, 0x1e7f,
-        0x1e81, 0x1e81,
-        0x1e83, 0x1e83,
-        0x1e85, 0x1e85,
-        0x1e87, 0x1e87,
-        0x1e89, 0x1e89,
-        0x1e8b, 0x1e8b,
-        0x1e8d, 0x1e8d,
-        0x1e8f, 0x1e8f,
-        0x1e91, 0x1e91,
-        0x1e93, 0x1e93,
-        0x1e95, 0x1e9d,
-        0x1e9f, 0x1e9f,
-        0x1ea1, 0x1ea1,
-        0x1ea3, 0x1ea3,
-        0x1ea5, 0x1ea5,
-        0x1ea7, 0x1ea7,
-        0x1ea9, 0x1ea9,
-        0x1eab, 0x1eab,
-        0x1ead, 0x1ead,
-        0x1eaf, 0x1eaf,
-        0x1eb1, 0x1eb1,
-        0x1eb3, 0x1eb3,
-        0x1eb5, 0x1eb5,
-        0x1eb7, 0x1eb7,
-        0x1eb9, 0x1eb9,
-        0x1ebb, 0x1ebb,
-        0x1ebd, 0x1ebd,
-        0x1ebf, 0x1ebf,
-        0x1ec1, 0x1ec1,
-        0x1ec3, 0x1ec3,
-        0x1ec5, 0x1ec5,
-        0x1ec7, 0x1ec7,
-        0x1ec9, 0x1ec9,
-        0x1ecb, 0x1ecb,
-        0x1ecd, 0x1ecd,
-        0x1ecf, 0x1ecf,
-        0x1ed1, 0x1ed1,
-        0x1ed3, 0x1ed3,
-        0x1ed5, 0x1ed5,
-        0x1ed7, 0x1ed7,
-        0x1ed9, 0x1ed9,
-        0x1edb, 0x1edb,
-        0x1edd, 0x1edd,
-        0x1edf, 0x1edf,
-        0x1ee1, 0x1ee1,
-        0x1ee3, 0x1ee3,
-        0x1ee5, 0x1ee5,
-        0x1ee7, 0x1ee7,
-        0x1ee9, 0x1ee9,
-        0x1eeb, 0x1eeb,
-        0x1eed, 0x1eed,
-        0x1eef, 0x1eef,
-        0x1ef1, 0x1ef1,
-        0x1ef3, 0x1ef3,
-        0x1ef5, 0x1ef5,
-        0x1ef7, 0x1ef7,
-        0x1ef9, 0x1ef9,
-        0x1efb, 0x1efb,
-        0x1efd, 0x1efd,
-        0x1eff, 0x1f07,
-        0x1f10, 0x1f15,
-        0x1f20, 0x1f27,
-        0x1f30, 0x1f37,
-        0x1f40, 0x1f45,
-        0x1f50, 0x1f57,
-        0x1f60, 0x1f67,
-        0x1f70, 0x1f7d,
-        0x1f80, 0x1f87,
-        0x1f90, 0x1f97,
-        0x1fa0, 0x1fa7,
-        0x1fb0, 0x1fb4,
-        0x1fb6, 0x1fb7,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fc7,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fd7,
-        0x1fe0, 0x1fe7,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ff7,
-        0x210a, 0x210a,
-        0x210e, 0x210f,
-        0x2113, 0x2113,
-        0x212f, 0x212f,
-        0x2134, 0x2134,
-        0x2139, 0x2139,
-        0x213c, 0x213d,
-        0x2146, 0x2149,
-        0x214e, 0x214e,
-        0x2184, 0x2184,
-        0x2c30, 0x2c5e,
-        0x2c61, 0x2c61,
-        0x2c65, 0x2c66,
-        0x2c68, 0x2c68,
-        0x2c6a, 0x2c6a,
-        0x2c6c, 0x2c6c,
-        0x2c71, 0x2c71,
-        0x2c73, 0x2c74,
-        0x2c76, 0x2c7c,
-        0x2c81, 0x2c81,
-        0x2c83, 0x2c83,
-        0x2c85, 0x2c85,
-        0x2c87, 0x2c87,
-        0x2c89, 0x2c89,
-        0x2c8b, 0x2c8b,
-        0x2c8d, 0x2c8d,
-        0x2c8f, 0x2c8f,
-        0x2c91, 0x2c91,
-        0x2c93, 0x2c93,
-        0x2c95, 0x2c95,
-        0x2c97, 0x2c97,
-        0x2c99, 0x2c99,
-        0x2c9b, 0x2c9b,
-        0x2c9d, 0x2c9d,
-        0x2c9f, 0x2c9f,
-        0x2ca1, 0x2ca1,
-        0x2ca3, 0x2ca3,
-        0x2ca5, 0x2ca5,
-        0x2ca7, 0x2ca7,
-        0x2ca9, 0x2ca9,
-        0x2cab, 0x2cab,
-        0x2cad, 0x2cad,
-        0x2caf, 0x2caf,
-        0x2cb1, 0x2cb1,
-        0x2cb3, 0x2cb3,
-        0x2cb5, 0x2cb5,
-        0x2cb7, 0x2cb7,
-        0x2cb9, 0x2cb9,
-        0x2cbb, 0x2cbb,
-        0x2cbd, 0x2cbd,
-        0x2cbf, 0x2cbf,
-        0x2cc1, 0x2cc1,
-        0x2cc3, 0x2cc3,
-        0x2cc5, 0x2cc5,
-        0x2cc7, 0x2cc7,
-        0x2cc9, 0x2cc9,
-        0x2ccb, 0x2ccb,
-        0x2ccd, 0x2ccd,
-        0x2ccf, 0x2ccf,
-        0x2cd1, 0x2cd1,
-        0x2cd3, 0x2cd3,
-        0x2cd5, 0x2cd5,
-        0x2cd7, 0x2cd7,
-        0x2cd9, 0x2cd9,
-        0x2cdb, 0x2cdb,
-        0x2cdd, 0x2cdd,
-        0x2cdf, 0x2cdf,
-        0x2ce1, 0x2ce1,
-        0x2ce3, 0x2ce4,
-        0x2cec, 0x2cec,
-        0x2cee, 0x2cee,
-        0x2d00, 0x2d25,
-        0xa641, 0xa641,
-        0xa643, 0xa643,
-        0xa645, 0xa645,
-        0xa647, 0xa647,
-        0xa649, 0xa649,
-        0xa64b, 0xa64b,
-        0xa64d, 0xa64d,
-        0xa64f, 0xa64f,
-        0xa651, 0xa651,
-        0xa653, 0xa653,
-        0xa655, 0xa655,
-        0xa657, 0xa657,
-        0xa659, 0xa659,
-        0xa65b, 0xa65b,
-        0xa65d, 0xa65d,
-        0xa65f, 0xa65f,
-        0xa663, 0xa663,
-        0xa665, 0xa665,
-        0xa667, 0xa667,
-        0xa669, 0xa669,
-        0xa66b, 0xa66b,
-        0xa66d, 0xa66d,
-        0xa681, 0xa681,
-        0xa683, 0xa683,
-        0xa685, 0xa685,
-        0xa687, 0xa687,
-        0xa689, 0xa689,
-        0xa68b, 0xa68b,
-        0xa68d, 0xa68d,
-        0xa68f, 0xa68f,
-        0xa691, 0xa691,
-        0xa693, 0xa693,
-        0xa695, 0xa695,
-        0xa697, 0xa697,
-        0xa723, 0xa723,
-        0xa725, 0xa725,
-        0xa727, 0xa727,
-        0xa729, 0xa729,
-        0xa72b, 0xa72b,
-        0xa72d, 0xa72d,
-        0xa72f, 0xa731,
-        0xa733, 0xa733,
-        0xa735, 0xa735,
-        0xa737, 0xa737,
-        0xa739, 0xa739,
-        0xa73b, 0xa73b,
-        0xa73d, 0xa73d,
-        0xa73f, 0xa73f,
-        0xa741, 0xa741,
-        0xa743, 0xa743,
-        0xa745, 0xa745,
-        0xa747, 0xa747,
-        0xa749, 0xa749,
-        0xa74b, 0xa74b,
-        0xa74d, 0xa74d,
-        0xa74f, 0xa74f,
-        0xa751, 0xa751,
-        0xa753, 0xa753,
-        0xa755, 0xa755,
-        0xa757, 0xa757,
-        0xa759, 0xa759,
-        0xa75b, 0xa75b,
-        0xa75d, 0xa75d,
-        0xa75f, 0xa75f,
-        0xa761, 0xa761,
-        0xa763, 0xa763,
-        0xa765, 0xa765,
-        0xa767, 0xa767,
-        0xa769, 0xa769,
-        0xa76b, 0xa76b,
-        0xa76d, 0xa76d,
-        0xa76f, 0xa76f,
-        0xa771, 0xa778,
-        0xa77a, 0xa77a,
-        0xa77c, 0xa77c,
-        0xa77f, 0xa77f,
-        0xa781, 0xa781,
-        0xa783, 0xa783,
-        0xa785, 0xa785,
-        0xa787, 0xa787,
-        0xa78c, 0xa78c,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xff41, 0xff5a,
-        0x10428, 0x1044f,
-        0x1d41a, 0x1d433,
-        0x1d44e, 0x1d454,
-        0x1d456, 0x1d467,
-        0x1d482, 0x1d49b,
-        0x1d4b6, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d4cf,
-        0x1d4ea, 0x1d503,
-        0x1d51e, 0x1d537,
-        0x1d552, 0x1d56b,
-        0x1d586, 0x1d59f,
-        0x1d5ba, 0x1d5d3,
-        0x1d5ee, 0x1d607,
-        0x1d622, 0x1d63b,
-        0x1d656, 0x1d66f,
-        0x1d68a, 0x1d6a5,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6e1,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d71b,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d755,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d78f,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7c9,
-        0x1d7cb, 0x1d7cb,
-}; /* CR_Ll */
-
-/* 'Lm': General Category */
-static const OnigCodePoint CR_Lm[] = {
-        49,
-        0x02b0, 0x02c1,
-        0x02c6, 0x02d1,
-        0x02e0, 0x02e4,
-        0x02ec, 0x02ec,
-        0x02ee, 0x02ee,
-        0x0374, 0x0374,
-        0x037a, 0x037a,
-        0x0559, 0x0559,
-        0x0640, 0x0640,
-        0x06e5, 0x06e6,
-        0x07f4, 0x07f5,
-        0x07fa, 0x07fa,
-        0x081a, 0x081a,
-        0x0824, 0x0824,
-        0x0828, 0x0828,
-        0x0971, 0x0971,
-        0x0e46, 0x0e46,
-        0x0ec6, 0x0ec6,
-        0x10fc, 0x10fc,
-        0x17d7, 0x17d7,
-        0x1843, 0x1843,
-        0x1aa7, 0x1aa7,
-        0x1c78, 0x1c7d,
-        0x1d2c, 0x1d61,
-        0x1d78, 0x1d78,
-        0x1d9b, 0x1dbf,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x2c7d, 0x2c7d,
-        0x2d6f, 0x2d6f,
-        0x2e2f, 0x2e2f,
-        0x3005, 0x3005,
-        0x3031, 0x3035,
-        0x303b, 0x303b,
-        0x309d, 0x309e,
-        0x30fc, 0x30fe,
-        0xa015, 0xa015,
-        0xa4f8, 0xa4fd,
-        0xa60c, 0xa60c,
-        0xa67f, 0xa67f,
-        0xa717, 0xa71f,
-        0xa770, 0xa770,
-        0xa788, 0xa788,
-        0xa9cf, 0xa9cf,
-        0xaa70, 0xaa70,
-        0xaadd, 0xaadd,
-        0xff70, 0xff70,
-        0xff9e, 0xff9f,
-}; /* CR_Lm */
-
-/* 'Lo': General Category */
-static const OnigCodePoint CR_Lo[] = {
-        311,
-        0x01bb, 0x01bb,
-        0x01c0, 0x01c3,
-        0x0294, 0x0294,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f2,
-        0x0621, 0x063f,
-        0x0641, 0x064a,
-        0x066e, 0x066f,
-        0x0671, 0x06d3,
-        0x06d5, 0x06d5,
-        0x06ee, 0x06ef,
-        0x06fa, 0x06fc,
-        0x06ff, 0x06ff,
-        0x0710, 0x0710,
-        0x0712, 0x072f,
-        0x074d, 0x07a5,
-        0x07b1, 0x07b1,
-        0x07ca, 0x07ea,
-        0x0800, 0x0815,
-        0x0904, 0x0939,
-        0x093d, 0x093d,
-        0x0950, 0x0950,
-        0x0958, 0x0961,
-        0x0972, 0x0972,
-        0x0979, 0x097f,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bd, 0x09bd,
-        0x09ce, 0x09ce,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e1,
-        0x09f0, 0x09f1,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a72, 0x0a74,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abd, 0x0abd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae1,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3d, 0x0b3d,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b61,
-        0x0b71, 0x0b71,
-        0x0b83, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bd0, 0x0bd0,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c3d,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c61,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbd, 0x0cbd,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce1,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d3d,
-        0x0d60, 0x0d61,
-        0x0d7a, 0x0d7f,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0e01, 0x0e30,
-        0x0e32, 0x0e33,
-        0x0e40, 0x0e45,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb0,
-        0x0eb2, 0x0eb3,
-        0x0ebd, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f00,
-        0x0f40, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f88, 0x0f8b,
-        0x1000, 0x102a,
-        0x103f, 0x103f,
-        0x1050, 0x1055,
-        0x105a, 0x105d,
-        0x1061, 0x1061,
-        0x1065, 0x1066,
-        0x106e, 0x1070,
-        0x1075, 0x1081,
-        0x108e, 0x108e,
-        0x10d0, 0x10fa,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x1380, 0x138f,
-        0x13a0, 0x13f4,
-        0x1401, 0x166c,
-        0x166f, 0x167f,
-        0x1681, 0x169a,
-        0x16a0, 0x16ea,
-        0x1700, 0x170c,
-        0x170e, 0x1711,
-        0x1720, 0x1731,
-        0x1740, 0x1751,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1780, 0x17b3,
-        0x17dc, 0x17dc,
-        0x1820, 0x1842,
-        0x1844, 0x1877,
-        0x1880, 0x18a8,
-        0x18aa, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1950, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19c1, 0x19c7,
-        0x1a00, 0x1a16,
-        0x1a20, 0x1a54,
-        0x1b05, 0x1b33,
-        0x1b45, 0x1b4b,
-        0x1b83, 0x1ba0,
-        0x1bae, 0x1baf,
-        0x1c00, 0x1c23,
-        0x1c4d, 0x1c4f,
-        0x1c5a, 0x1c77,
-        0x1ce9, 0x1cec,
-        0x1cee, 0x1cf1,
-        0x2135, 0x2138,
-        0x2d30, 0x2d65,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x3006, 0x3006,
-        0x303c, 0x303c,
-        0x3041, 0x3096,
-        0x309f, 0x309f,
-        0x30a1, 0x30fa,
-        0x30ff, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x31a0, 0x31b7,
-        0x31f0, 0x31ff,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xa000, 0xa014,
-        0xa016, 0xa48c,
-        0xa4d0, 0xa4f7,
-        0xa500, 0xa60b,
-        0xa610, 0xa61f,
-        0xa62a, 0xa62b,
-        0xa66e, 0xa66e,
-        0xa6a0, 0xa6e5,
-        0xa7fb, 0xa801,
-        0xa803, 0xa805,
-        0xa807, 0xa80a,
-        0xa80c, 0xa822,
-        0xa840, 0xa873,
-        0xa882, 0xa8b3,
-        0xa8f2, 0xa8f7,
-        0xa8fb, 0xa8fb,
-        0xa90a, 0xa925,
-        0xa930, 0xa946,
-        0xa960, 0xa97c,
-        0xa984, 0xa9b2,
-        0xaa00, 0xaa28,
-        0xaa40, 0xaa42,
-        0xaa44, 0xaa4b,
-        0xaa60, 0xaa6f,
-        0xaa71, 0xaa76,
-        0xaa7a, 0xaa7a,
-        0xaa80, 0xaaaf,
-        0xaab1, 0xaab1,
-        0xaab5, 0xaab6,
-        0xaab9, 0xaabd,
-        0xaac0, 0xaac0,
-        0xaac2, 0xaac2,
-        0xaadb, 0xaadc,
-        0xabc0, 0xabe2,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb1d, 0xfb1d,
-        0xfb1f, 0xfb28,
-        0xfb2a, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfb,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xff66, 0xff6f,
-        0xff71, 0xff9d,
-        0xffa0, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10330, 0x10340,
-        0x10342, 0x10349,
-        0x10380, 0x1039d,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103cf,
-        0x10450, 0x1049d,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10900, 0x10915,
-        0x10920, 0x10939,
-        0x10a00, 0x10a00,
-        0x10a10, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a60, 0x10a7c,
-        0x10b00, 0x10b35,
-        0x10b40, 0x10b55,
-        0x10b60, 0x10b72,
-        0x10c00, 0x10c48,
-        0x11083, 0x110af,
-        0x12000, 0x1236e,
-        0x13000, 0x1342e,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-}; /* CR_Lo */
-
-/* 'Lt': General Category */
-static const OnigCodePoint CR_Lt[] = {
-        10,
-        0x01c5, 0x01c5,
-        0x01c8, 0x01c8,
-        0x01cb, 0x01cb,
-        0x01f2, 0x01f2,
-        0x1f88, 0x1f8f,
-        0x1f98, 0x1f9f,
-        0x1fa8, 0x1faf,
-        0x1fbc, 0x1fbc,
-        0x1fcc, 0x1fcc,
-        0x1ffc, 0x1ffc,
-}; /* CR_Lt */
-
-/* 'Lu': General Category */
-static const OnigCodePoint CR_Lu[] = {
-        594,
-        0x0041, 0x005a,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00de,
-        0x0100, 0x0100,
-        0x0102, 0x0102,
-        0x0104, 0x0104,
-        0x0106, 0x0106,
-        0x0108, 0x0108,
-        0x010a, 0x010a,
-        0x010c, 0x010c,
-        0x010e, 0x010e,
-        0x0110, 0x0110,
-        0x0112, 0x0112,
-        0x0114, 0x0114,
-        0x0116, 0x0116,
-        0x0118, 0x0118,
-        0x011a, 0x011a,
-        0x011c, 0x011c,
-        0x011e, 0x011e,
-        0x0120, 0x0120,
-        0x0122, 0x0122,
-        0x0124, 0x0124,
-        0x0126, 0x0126,
-        0x0128, 0x0128,
-        0x012a, 0x012a,
-        0x012c, 0x012c,
-        0x012e, 0x012e,
-        0x0130, 0x0130,
-        0x0132, 0x0132,
-        0x0134, 0x0134,
-        0x0136, 0x0136,
-        0x0139, 0x0139,
-        0x013b, 0x013b,
-        0x013d, 0x013d,
-        0x013f, 0x013f,
-        0x0141, 0x0141,
-        0x0143, 0x0143,
-        0x0145, 0x0145,
-        0x0147, 0x0147,
-        0x014a, 0x014a,
-        0x014c, 0x014c,
-        0x014e, 0x014e,
-        0x0150, 0x0150,
-        0x0152, 0x0152,
-        0x0154, 0x0154,
-        0x0156, 0x0156,
-        0x0158, 0x0158,
-        0x015a, 0x015a,
-        0x015c, 0x015c,
-        0x015e, 0x015e,
-        0x0160, 0x0160,
-        0x0162, 0x0162,
-        0x0164, 0x0164,
-        0x0166, 0x0166,
-        0x0168, 0x0168,
-        0x016a, 0x016a,
-        0x016c, 0x016c,
-        0x016e, 0x016e,
-        0x0170, 0x0170,
-        0x0172, 0x0172,
-        0x0174, 0x0174,
-        0x0176, 0x0176,
-        0x0178, 0x0179,
-        0x017b, 0x017b,
-        0x017d, 0x017d,
-        0x0181, 0x0182,
-        0x0184, 0x0184,
-        0x0186, 0x0187,
-        0x0189, 0x018b,
-        0x018e, 0x0191,
-        0x0193, 0x0194,
-        0x0196, 0x0198,
-        0x019c, 0x019d,
-        0x019f, 0x01a0,
-        0x01a2, 0x01a2,
-        0x01a4, 0x01a4,
-        0x01a6, 0x01a7,
-        0x01a9, 0x01a9,
-        0x01ac, 0x01ac,
-        0x01ae, 0x01af,
-        0x01b1, 0x01b3,
-        0x01b5, 0x01b5,
-        0x01b7, 0x01b8,
-        0x01bc, 0x01bc,
-        0x01c4, 0x01c4,
-        0x01c7, 0x01c7,
-        0x01ca, 0x01ca,
-        0x01cd, 0x01cd,
-        0x01cf, 0x01cf,
-        0x01d1, 0x01d1,
-        0x01d3, 0x01d3,
-        0x01d5, 0x01d5,
-        0x01d7, 0x01d7,
-        0x01d9, 0x01d9,
-        0x01db, 0x01db,
-        0x01de, 0x01de,
-        0x01e0, 0x01e0,
-        0x01e2, 0x01e2,
-        0x01e4, 0x01e4,
-        0x01e6, 0x01e6,
-        0x01e8, 0x01e8,
-        0x01ea, 0x01ea,
-        0x01ec, 0x01ec,
-        0x01ee, 0x01ee,
-        0x01f1, 0x01f1,
-        0x01f4, 0x01f4,
-        0x01f6, 0x01f8,
-        0x01fa, 0x01fa,
-        0x01fc, 0x01fc,
-        0x01fe, 0x01fe,
-        0x0200, 0x0200,
-        0x0202, 0x0202,
-        0x0204, 0x0204,
-        0x0206, 0x0206,
-        0x0208, 0x0208,
-        0x020a, 0x020a,
-        0x020c, 0x020c,
-        0x020e, 0x020e,
-        0x0210, 0x0210,
-        0x0212, 0x0212,
-        0x0214, 0x0214,
-        0x0216, 0x0216,
-        0x0218, 0x0218,
-        0x021a, 0x021a,
-        0x021c, 0x021c,
-        0x021e, 0x021e,
-        0x0220, 0x0220,
-        0x0222, 0x0222,
-        0x0224, 0x0224,
-        0x0226, 0x0226,
-        0x0228, 0x0228,
-        0x022a, 0x022a,
-        0x022c, 0x022c,
-        0x022e, 0x022e,
-        0x0230, 0x0230,
-        0x0232, 0x0232,
-        0x023a, 0x023b,
-        0x023d, 0x023e,
-        0x0241, 0x0241,
-        0x0243, 0x0246,
-        0x0248, 0x0248,
-        0x024a, 0x024a,
-        0x024c, 0x024c,
-        0x024e, 0x024e,
-        0x0370, 0x0370,
-        0x0372, 0x0372,
-        0x0376, 0x0376,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x038f,
-        0x0391, 0x03a1,
-        0x03a3, 0x03ab,
-        0x03cf, 0x03cf,
-        0x03d2, 0x03d4,
-        0x03d8, 0x03d8,
-        0x03da, 0x03da,
-        0x03dc, 0x03dc,
-        0x03de, 0x03de,
-        0x03e0, 0x03e0,
-        0x03e2, 0x03e2,
-        0x03e4, 0x03e4,
-        0x03e6, 0x03e6,
-        0x03e8, 0x03e8,
-        0x03ea, 0x03ea,
-        0x03ec, 0x03ec,
-        0x03ee, 0x03ee,
-        0x03f4, 0x03f4,
-        0x03f7, 0x03f7,
-        0x03f9, 0x03fa,
-        0x03fd, 0x042f,
-        0x0460, 0x0460,
-        0x0462, 0x0462,
-        0x0464, 0x0464,
-        0x0466, 0x0466,
-        0x0468, 0x0468,
-        0x046a, 0x046a,
-        0x046c, 0x046c,
-        0x046e, 0x046e,
-        0x0470, 0x0470,
-        0x0472, 0x0472,
-        0x0474, 0x0474,
-        0x0476, 0x0476,
-        0x0478, 0x0478,
-        0x047a, 0x047a,
-        0x047c, 0x047c,
-        0x047e, 0x047e,
-        0x0480, 0x0480,
-        0x048a, 0x048a,
-        0x048c, 0x048c,
-        0x048e, 0x048e,
-        0x0490, 0x0490,
-        0x0492, 0x0492,
-        0x0494, 0x0494,
-        0x0496, 0x0496,
-        0x0498, 0x0498,
-        0x049a, 0x049a,
-        0x049c, 0x049c,
-        0x049e, 0x049e,
-        0x04a0, 0x04a0,
-        0x04a2, 0x04a2,
-        0x04a4, 0x04a4,
-        0x04a6, 0x04a6,
-        0x04a8, 0x04a8,
-        0x04aa, 0x04aa,
-        0x04ac, 0x04ac,
-        0x04ae, 0x04ae,
-        0x04b0, 0x04b0,
-        0x04b2, 0x04b2,
-        0x04b4, 0x04b4,
-        0x04b6, 0x04b6,
-        0x04b8, 0x04b8,
-        0x04ba, 0x04ba,
-        0x04bc, 0x04bc,
-        0x04be, 0x04be,
-        0x04c0, 0x04c1,
-        0x04c3, 0x04c3,
-        0x04c5, 0x04c5,
-        0x04c7, 0x04c7,
-        0x04c9, 0x04c9,
-        0x04cb, 0x04cb,
-        0x04cd, 0x04cd,
-        0x04d0, 0x04d0,
-        0x04d2, 0x04d2,
-        0x04d4, 0x04d4,
-        0x04d6, 0x04d6,
-        0x04d8, 0x04d8,
-        0x04da, 0x04da,
-        0x04dc, 0x04dc,
-        0x04de, 0x04de,
-        0x04e0, 0x04e0,
-        0x04e2, 0x04e2,
-        0x04e4, 0x04e4,
-        0x04e6, 0x04e6,
-        0x04e8, 0x04e8,
-        0x04ea, 0x04ea,
-        0x04ec, 0x04ec,
-        0x04ee, 0x04ee,
-        0x04f0, 0x04f0,
-        0x04f2, 0x04f2,
-        0x04f4, 0x04f4,
-        0x04f6, 0x04f6,
-        0x04f8, 0x04f8,
-        0x04fa, 0x04fa,
-        0x04fc, 0x04fc,
-        0x04fe, 0x04fe,
-        0x0500, 0x0500,
-        0x0502, 0x0502,
-        0x0504, 0x0504,
-        0x0506, 0x0506,
-        0x0508, 0x0508,
-        0x050a, 0x050a,
-        0x050c, 0x050c,
-        0x050e, 0x050e,
-        0x0510, 0x0510,
-        0x0512, 0x0512,
-        0x0514, 0x0514,
-        0x0516, 0x0516,
-        0x0518, 0x0518,
-        0x051a, 0x051a,
-        0x051c, 0x051c,
-        0x051e, 0x051e,
-        0x0520, 0x0520,
-        0x0522, 0x0522,
-        0x0524, 0x0524,
-        0x0531, 0x0556,
-        0x10a0, 0x10c5,
-        0x1e00, 0x1e00,
-        0x1e02, 0x1e02,
-        0x1e04, 0x1e04,
-        0x1e06, 0x1e06,
-        0x1e08, 0x1e08,
-        0x1e0a, 0x1e0a,
-        0x1e0c, 0x1e0c,
-        0x1e0e, 0x1e0e,
-        0x1e10, 0x1e10,
-        0x1e12, 0x1e12,
-        0x1e14, 0x1e14,
-        0x1e16, 0x1e16,
-        0x1e18, 0x1e18,
-        0x1e1a, 0x1e1a,
-        0x1e1c, 0x1e1c,
-        0x1e1e, 0x1e1e,
-        0x1e20, 0x1e20,
-        0x1e22, 0x1e22,
-        0x1e24, 0x1e24,
-        0x1e26, 0x1e26,
-        0x1e28, 0x1e28,
-        0x1e2a, 0x1e2a,
-        0x1e2c, 0x1e2c,
-        0x1e2e, 0x1e2e,
-        0x1e30, 0x1e30,
-        0x1e32, 0x1e32,
-        0x1e34, 0x1e34,
-        0x1e36, 0x1e36,
-        0x1e38, 0x1e38,
-        0x1e3a, 0x1e3a,
-        0x1e3c, 0x1e3c,
-        0x1e3e, 0x1e3e,
-        0x1e40, 0x1e40,
-        0x1e42, 0x1e42,
-        0x1e44, 0x1e44,
-        0x1e46, 0x1e46,
-        0x1e48, 0x1e48,
-        0x1e4a, 0x1e4a,
-        0x1e4c, 0x1e4c,
-        0x1e4e, 0x1e4e,
-        0x1e50, 0x1e50,
-        0x1e52, 0x1e52,
-        0x1e54, 0x1e54,
-        0x1e56, 0x1e56,
-        0x1e58, 0x1e58,
-        0x1e5a, 0x1e5a,
-        0x1e5c, 0x1e5c,
-        0x1e5e, 0x1e5e,
-        0x1e60, 0x1e60,
-        0x1e62, 0x1e62,
-        0x1e64, 0x1e64,
-        0x1e66, 0x1e66,
-        0x1e68, 0x1e68,
-        0x1e6a, 0x1e6a,
-        0x1e6c, 0x1e6c,
-        0x1e6e, 0x1e6e,
-        0x1e70, 0x1e70,
-        0x1e72, 0x1e72,
-        0x1e74, 0x1e74,
-        0x1e76, 0x1e76,
-        0x1e78, 0x1e78,
-        0x1e7a, 0x1e7a,
-        0x1e7c, 0x1e7c,
-        0x1e7e, 0x1e7e,
-        0x1e80, 0x1e80,
-        0x1e82, 0x1e82,
-        0x1e84, 0x1e84,
-        0x1e86, 0x1e86,
-        0x1e88, 0x1e88,
-        0x1e8a, 0x1e8a,
-        0x1e8c, 0x1e8c,
-        0x1e8e, 0x1e8e,
-        0x1e90, 0x1e90,
-        0x1e92, 0x1e92,
-        0x1e94, 0x1e94,
-        0x1e9e, 0x1e9e,
-        0x1ea0, 0x1ea0,
-        0x1ea2, 0x1ea2,
-        0x1ea4, 0x1ea4,
-        0x1ea6, 0x1ea6,
-        0x1ea8, 0x1ea8,
-        0x1eaa, 0x1eaa,
-        0x1eac, 0x1eac,
-        0x1eae, 0x1eae,
-        0x1eb0, 0x1eb0,
-        0x1eb2, 0x1eb2,
-        0x1eb4, 0x1eb4,
-        0x1eb6, 0x1eb6,
-        0x1eb8, 0x1eb8,
-        0x1eba, 0x1eba,
-        0x1ebc, 0x1ebc,
-        0x1ebe, 0x1ebe,
-        0x1ec0, 0x1ec0,
-        0x1ec2, 0x1ec2,
-        0x1ec4, 0x1ec4,
-        0x1ec6, 0x1ec6,
-        0x1ec8, 0x1ec8,
-        0x1eca, 0x1eca,
-        0x1ecc, 0x1ecc,
-        0x1ece, 0x1ece,
-        0x1ed0, 0x1ed0,
-        0x1ed2, 0x1ed2,
-        0x1ed4, 0x1ed4,
-        0x1ed6, 0x1ed6,
-        0x1ed8, 0x1ed8,
-        0x1eda, 0x1eda,
-        0x1edc, 0x1edc,
-        0x1ede, 0x1ede,
-        0x1ee0, 0x1ee0,
-        0x1ee2, 0x1ee2,
-        0x1ee4, 0x1ee4,
-        0x1ee6, 0x1ee6,
-        0x1ee8, 0x1ee8,
-        0x1eea, 0x1eea,
-        0x1eec, 0x1eec,
-        0x1eee, 0x1eee,
-        0x1ef0, 0x1ef0,
-        0x1ef2, 0x1ef2,
-        0x1ef4, 0x1ef4,
-        0x1ef6, 0x1ef6,
-        0x1ef8, 0x1ef8,
-        0x1efa, 0x1efa,
-        0x1efc, 0x1efc,
-        0x1efe, 0x1efe,
-        0x1f08, 0x1f0f,
-        0x1f18, 0x1f1d,
-        0x1f28, 0x1f2f,
-        0x1f38, 0x1f3f,
-        0x1f48, 0x1f4d,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f5f,
-        0x1f68, 0x1f6f,
-        0x1fb8, 0x1fbb,
-        0x1fc8, 0x1fcb,
-        0x1fd8, 0x1fdb,
-        0x1fe8, 0x1fec,
-        0x1ff8, 0x1ffb,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210b, 0x210d,
-        0x2110, 0x2112,
-        0x2115, 0x2115,
-        0x2119, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x212d,
-        0x2130, 0x2133,
-        0x213e, 0x213f,
-        0x2145, 0x2145,
-        0x2183, 0x2183,
-        0x2c00, 0x2c2e,
-        0x2c60, 0x2c60,
-        0x2c62, 0x2c64,
-        0x2c67, 0x2c67,
-        0x2c69, 0x2c69,
-        0x2c6b, 0x2c6b,
-        0x2c6d, 0x2c70,
-        0x2c72, 0x2c72,
-        0x2c75, 0x2c75,
-        0x2c7e, 0x2c80,
-        0x2c82, 0x2c82,
-        0x2c84, 0x2c84,
-        0x2c86, 0x2c86,
-        0x2c88, 0x2c88,
-        0x2c8a, 0x2c8a,
-        0x2c8c, 0x2c8c,
-        0x2c8e, 0x2c8e,
-        0x2c90, 0x2c90,
-        0x2c92, 0x2c92,
-        0x2c94, 0x2c94,
-        0x2c96, 0x2c96,
-        0x2c98, 0x2c98,
-        0x2c9a, 0x2c9a,
-        0x2c9c, 0x2c9c,
-        0x2c9e, 0x2c9e,
-        0x2ca0, 0x2ca0,
-        0x2ca2, 0x2ca2,
-        0x2ca4, 0x2ca4,
-        0x2ca6, 0x2ca6,
-        0x2ca8, 0x2ca8,
-        0x2caa, 0x2caa,
-        0x2cac, 0x2cac,
-        0x2cae, 0x2cae,
-        0x2cb0, 0x2cb0,
-        0x2cb2, 0x2cb2,
-        0x2cb4, 0x2cb4,
-        0x2cb6, 0x2cb6,
-        0x2cb8, 0x2cb8,
-        0x2cba, 0x2cba,
-        0x2cbc, 0x2cbc,
-        0x2cbe, 0x2cbe,
-        0x2cc0, 0x2cc0,
-        0x2cc2, 0x2cc2,
-        0x2cc4, 0x2cc4,
-        0x2cc6, 0x2cc6,
-        0x2cc8, 0x2cc8,
-        0x2cca, 0x2cca,
-        0x2ccc, 0x2ccc,
-        0x2cce, 0x2cce,
-        0x2cd0, 0x2cd0,
-        0x2cd2, 0x2cd2,
-        0x2cd4, 0x2cd4,
-        0x2cd6, 0x2cd6,
-        0x2cd8, 0x2cd8,
-        0x2cda, 0x2cda,
-        0x2cdc, 0x2cdc,
-        0x2cde, 0x2cde,
-        0x2ce0, 0x2ce0,
-        0x2ce2, 0x2ce2,
-        0x2ceb, 0x2ceb,
-        0x2ced, 0x2ced,
-        0xa640, 0xa640,
-        0xa642, 0xa642,
-        0xa644, 0xa644,
-        0xa646, 0xa646,
-        0xa648, 0xa648,
-        0xa64a, 0xa64a,
-        0xa64c, 0xa64c,
-        0xa64e, 0xa64e,
-        0xa650, 0xa650,
-        0xa652, 0xa652,
-        0xa654, 0xa654,
-        0xa656, 0xa656,
-        0xa658, 0xa658,
-        0xa65a, 0xa65a,
-        0xa65c, 0xa65c,
-        0xa65e, 0xa65e,
-        0xa662, 0xa662,
-        0xa664, 0xa664,
-        0xa666, 0xa666,
-        0xa668, 0xa668,
-        0xa66a, 0xa66a,
-        0xa66c, 0xa66c,
-        0xa680, 0xa680,
-        0xa682, 0xa682,
-        0xa684, 0xa684,
-        0xa686, 0xa686,
-        0xa688, 0xa688,
-        0xa68a, 0xa68a,
-        0xa68c, 0xa68c,
-        0xa68e, 0xa68e,
-        0xa690, 0xa690,
-        0xa692, 0xa692,
-        0xa694, 0xa694,
-        0xa696, 0xa696,
-        0xa722, 0xa722,
-        0xa724, 0xa724,
-        0xa726, 0xa726,
-        0xa728, 0xa728,
-        0xa72a, 0xa72a,
-        0xa72c, 0xa72c,
-        0xa72e, 0xa72e,
-        0xa732, 0xa732,
-        0xa734, 0xa734,
-        0xa736, 0xa736,
-        0xa738, 0xa738,
-        0xa73a, 0xa73a,
-        0xa73c, 0xa73c,
-        0xa73e, 0xa73e,
-        0xa740, 0xa740,
-        0xa742, 0xa742,
-        0xa744, 0xa744,
-        0xa746, 0xa746,
-        0xa748, 0xa748,
-        0xa74a, 0xa74a,
-        0xa74c, 0xa74c,
-        0xa74e, 0xa74e,
-        0xa750, 0xa750,
-        0xa752, 0xa752,
-        0xa754, 0xa754,
-        0xa756, 0xa756,
-        0xa758, 0xa758,
-        0xa75a, 0xa75a,
-        0xa75c, 0xa75c,
-        0xa75e, 0xa75e,
-        0xa760, 0xa760,
-        0xa762, 0xa762,
-        0xa764, 0xa764,
-        0xa766, 0xa766,
-        0xa768, 0xa768,
-        0xa76a, 0xa76a,
-        0xa76c, 0xa76c,
-        0xa76e, 0xa76e,
-        0xa779, 0xa779,
-        0xa77b, 0xa77b,
-        0xa77d, 0xa77e,
-        0xa780, 0xa780,
-        0xa782, 0xa782,
-        0xa784, 0xa784,
-        0xa786, 0xa786,
-        0xa78b, 0xa78b,
-        0xff21, 0xff3a,
-        0x10400, 0x10427,
-        0x1d400, 0x1d419,
-        0x1d434, 0x1d44d,
-        0x1d468, 0x1d481,
-        0x1d49c, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b5,
-        0x1d4d0, 0x1d4e9,
-        0x1d504, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d538, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d56c, 0x1d585,
-        0x1d5a0, 0x1d5b9,
-        0x1d5d4, 0x1d5ed,
-        0x1d608, 0x1d621,
-        0x1d63c, 0x1d655,
-        0x1d670, 0x1d689,
-        0x1d6a8, 0x1d6c0,
-        0x1d6e2, 0x1d6fa,
-        0x1d71c, 0x1d734,
-        0x1d756, 0x1d76e,
-        0x1d790, 0x1d7a8,
-        0x1d7ca, 0x1d7ca,
-}; /* CR_Lu */
-
-/* 'M': Major Category */
-static const OnigCodePoint CR_M[] = {
-        188,
-        0x0300, 0x036f,
-        0x0483, 0x0489,
-        0x0591, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x0610, 0x061a,
-        0x064b, 0x065e,
-        0x0670, 0x0670,
-        0x06d6, 0x06dc,
-        0x06de, 0x06e4,
-        0x06e7, 0x06e8,
-        0x06ea, 0x06ed,
-        0x0711, 0x0711,
-        0x0730, 0x074a,
-        0x07a6, 0x07b0,
-        0x07eb, 0x07f3,
-        0x0816, 0x0819,
-        0x081b, 0x0823,
-        0x0825, 0x0827,
-        0x0829, 0x082d,
-        0x0900, 0x0903,
-        0x093c, 0x093c,
-        0x093e, 0x094e,
-        0x0951, 0x0955,
-        0x0962, 0x0963,
-        0x0981, 0x0983,
-        0x09bc, 0x09bc,
-        0x09be, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09cd,
-        0x09d7, 0x09d7,
-        0x09e2, 0x09e3,
-        0x0a01, 0x0a03,
-        0x0a3c, 0x0a3c,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a70, 0x0a71,
-        0x0a75, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0abc, 0x0abc,
-        0x0abe, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acd,
-        0x0ae2, 0x0ae3,
-        0x0b01, 0x0b03,
-        0x0b3c, 0x0b3c,
-        0x0b3e, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4d,
-        0x0b56, 0x0b57,
-        0x0b62, 0x0b63,
-        0x0b82, 0x0b82,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcd,
-        0x0bd7, 0x0bd7,
-        0x0c01, 0x0c03,
-        0x0c3e, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c62, 0x0c63,
-        0x0c82, 0x0c83,
-        0x0cbc, 0x0cbc,
-        0x0cbe, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccd,
-        0x0cd5, 0x0cd6,
-        0x0ce2, 0x0ce3,
-        0x0d02, 0x0d03,
-        0x0d3e, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4d,
-        0x0d57, 0x0d57,
-        0x0d62, 0x0d63,
-        0x0d82, 0x0d83,
-        0x0dca, 0x0dca,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df3,
-        0x0e31, 0x0e31,
-        0x0e34, 0x0e3a,
-        0x0e47, 0x0e4e,
-        0x0eb1, 0x0eb1,
-        0x0eb4, 0x0eb9,
-        0x0ebb, 0x0ebc,
-        0x0ec8, 0x0ecd,
-        0x0f18, 0x0f19,
-        0x0f35, 0x0f35,
-        0x0f37, 0x0f37,
-        0x0f39, 0x0f39,
-        0x0f3e, 0x0f3f,
-        0x0f71, 0x0f84,
-        0x0f86, 0x0f87,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fc6, 0x0fc6,
-        0x102b, 0x103e,
-        0x1056, 0x1059,
-        0x105e, 0x1060,
-        0x1062, 0x1064,
-        0x1067, 0x106d,
-        0x1071, 0x1074,
-        0x1082, 0x108d,
-        0x108f, 0x108f,
-        0x109a, 0x109d,
-        0x135f, 0x135f,
-        0x1712, 0x1714,
-        0x1732, 0x1734,
-        0x1752, 0x1753,
-        0x1772, 0x1773,
-        0x17b6, 0x17d3,
-        0x17dd, 0x17dd,
-        0x180b, 0x180d,
-        0x18a9, 0x18a9,
-        0x1920, 0x192b,
-        0x1930, 0x193b,
-        0x19b0, 0x19c0,
-        0x19c8, 0x19c9,
-        0x1a17, 0x1a1b,
-        0x1a55, 0x1a5e,
-        0x1a60, 0x1a7c,
-        0x1a7f, 0x1a7f,
-        0x1b00, 0x1b04,
-        0x1b34, 0x1b44,
-        0x1b6b, 0x1b73,
-        0x1b80, 0x1b82,
-        0x1ba1, 0x1baa,
-        0x1c24, 0x1c37,
-        0x1cd0, 0x1cd2,
-        0x1cd4, 0x1ce8,
-        0x1ced, 0x1ced,
-        0x1cf2, 0x1cf2,
-        0x1dc0, 0x1de6,
-        0x1dfd, 0x1dff,
-        0x20d0, 0x20f0,
-        0x2cef, 0x2cf1,
-        0x2de0, 0x2dff,
-        0x302a, 0x302f,
-        0x3099, 0x309a,
-        0xa66f, 0xa672,
-        0xa67c, 0xa67d,
-        0xa6f0, 0xa6f1,
-        0xa802, 0xa802,
-        0xa806, 0xa806,
-        0xa80b, 0xa80b,
-        0xa823, 0xa827,
-        0xa880, 0xa881,
-        0xa8b4, 0xa8c4,
-        0xa8e0, 0xa8f1,
-        0xa926, 0xa92d,
-        0xa947, 0xa953,
-        0xa980, 0xa983,
-        0xa9b3, 0xa9c0,
-        0xaa29, 0xaa36,
-        0xaa43, 0xaa43,
-        0xaa4c, 0xaa4d,
-        0xaa7b, 0xaa7b,
-        0xaab0, 0xaab0,
-        0xaab2, 0xaab4,
-        0xaab7, 0xaab8,
-        0xaabe, 0xaabf,
-        0xaac1, 0xaac1,
-        0xabe3, 0xabea,
-        0xabec, 0xabed,
-        0xfb1e, 0xfb1e,
-        0xfe00, 0xfe0f,
-        0xfe20, 0xfe26,
-        0x101fd, 0x101fd,
-        0x10a01, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a0f,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a3f,
-        0x11080, 0x11082,
-        0x110b0, 0x110ba,
-        0x1d165, 0x1d169,
-        0x1d16d, 0x1d172,
-        0x1d17b, 0x1d182,
-        0x1d185, 0x1d18b,
-        0x1d1aa, 0x1d1ad,
-        0x1d242, 0x1d244,
-        0xe0100, 0xe01ef,
-}; /* CR_M */
-
-/* 'Mc': General Category */
-static const OnigCodePoint CR_Mc[] = {
-        106,
-        0x0903, 0x0903,
-        0x093e, 0x0940,
-        0x0949, 0x094c,
-        0x094e, 0x094e,
-        0x0982, 0x0983,
-        0x09be, 0x09c0,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09cc,
-        0x09d7, 0x09d7,
-        0x0a03, 0x0a03,
-        0x0a3e, 0x0a40,
-        0x0a83, 0x0a83,
-        0x0abe, 0x0ac0,
-        0x0ac9, 0x0ac9,
-        0x0acb, 0x0acc,
-        0x0b02, 0x0b03,
-        0x0b3e, 0x0b3e,
-        0x0b40, 0x0b40,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4c,
-        0x0b57, 0x0b57,
-        0x0bbe, 0x0bbf,
-        0x0bc1, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcc,
-        0x0bd7, 0x0bd7,
-        0x0c01, 0x0c03,
-        0x0c41, 0x0c44,
-        0x0c82, 0x0c83,
-        0x0cbe, 0x0cbe,
-        0x0cc0, 0x0cc4,
-        0x0cc7, 0x0cc8,
-        0x0cca, 0x0ccb,
-        0x0cd5, 0x0cd6,
-        0x0d02, 0x0d03,
-        0x0d3e, 0x0d40,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4c,
-        0x0d57, 0x0d57,
-        0x0d82, 0x0d83,
-        0x0dcf, 0x0dd1,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df3,
-        0x0f3e, 0x0f3f,
-        0x0f7f, 0x0f7f,
-        0x102b, 0x102c,
-        0x1031, 0x1031,
-        0x1038, 0x1038,
-        0x103b, 0x103c,
-        0x1056, 0x1057,
-        0x1062, 0x1064,
-        0x1067, 0x106d,
-        0x1083, 0x1084,
-        0x1087, 0x108c,
-        0x108f, 0x108f,
-        0x109a, 0x109c,
-        0x17b6, 0x17b6,
-        0x17be, 0x17c5,
-        0x17c7, 0x17c8,
-        0x1923, 0x1926,
-        0x1929, 0x192b,
-        0x1930, 0x1931,
-        0x1933, 0x1938,
-        0x19b0, 0x19c0,
-        0x19c8, 0x19c9,
-        0x1a19, 0x1a1b,
-        0x1a55, 0x1a55,
-        0x1a57, 0x1a57,
-        0x1a61, 0x1a61,
-        0x1a63, 0x1a64,
-        0x1a6d, 0x1a72,
-        0x1b04, 0x1b04,
-        0x1b35, 0x1b35,
-        0x1b3b, 0x1b3b,
-        0x1b3d, 0x1b41,
-        0x1b43, 0x1b44,
-        0x1b82, 0x1b82,
-        0x1ba1, 0x1ba1,
-        0x1ba6, 0x1ba7,
-        0x1baa, 0x1baa,
-        0x1c24, 0x1c2b,
-        0x1c34, 0x1c35,
-        0x1ce1, 0x1ce1,
-        0x1cf2, 0x1cf2,
-        0xa823, 0xa824,
-        0xa827, 0xa827,
-        0xa880, 0xa881,
-        0xa8b4, 0xa8c3,
-        0xa952, 0xa953,
-        0xa983, 0xa983,
-        0xa9b4, 0xa9b5,
-        0xa9ba, 0xa9bb,
-        0xa9bd, 0xa9c0,
-        0xaa2f, 0xaa30,
-        0xaa33, 0xaa34,
-        0xaa4d, 0xaa4d,
-        0xaa7b, 0xaa7b,
-        0xabe3, 0xabe4,
-        0xabe6, 0xabe7,
-        0xabe9, 0xabea,
-        0xabec, 0xabec,
-        0x11082, 0x11082,
-        0x110b0, 0x110b2,
-        0x110b7, 0x110b8,
-        0x1d165, 0x1d166,
-        0x1d16d, 0x1d172,
-}; /* CR_Mc */
-
-/* 'Me': General Category */
-static const OnigCodePoint CR_Me[] = {
-        5,
-        0x0488, 0x0489,
-        0x06de, 0x06de,
-        0x20dd, 0x20e0,
-        0x20e2, 0x20e4,
-        0xa670, 0xa672,
-}; /* CR_Me */
-
-/* 'Mn': General Category */
-static const OnigCodePoint CR_Mn[] = {
-        194,
-        0x0300, 0x036f,
-        0x0483, 0x0487,
-        0x0591, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x0610, 0x061a,
-        0x064b, 0x065e,
-        0x0670, 0x0670,
-        0x06d6, 0x06dc,
-        0x06df, 0x06e4,
-        0x06e7, 0x06e8,
-        0x06ea, 0x06ed,
-        0x0711, 0x0711,
-        0x0730, 0x074a,
-        0x07a6, 0x07b0,
-        0x07eb, 0x07f3,
-        0x0816, 0x0819,
-        0x081b, 0x0823,
-        0x0825, 0x0827,
-        0x0829, 0x082d,
-        0x0900, 0x0902,
-        0x093c, 0x093c,
-        0x0941, 0x0948,
-        0x094d, 0x094d,
-        0x0951, 0x0955,
-        0x0962, 0x0963,
-        0x0981, 0x0981,
-        0x09bc, 0x09bc,
-        0x09c1, 0x09c4,
-        0x09cd, 0x09cd,
-        0x09e2, 0x09e3,
-        0x0a01, 0x0a02,
-        0x0a3c, 0x0a3c,
-        0x0a41, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a70, 0x0a71,
-        0x0a75, 0x0a75,
-        0x0a81, 0x0a82,
-        0x0abc, 0x0abc,
-        0x0ac1, 0x0ac5,
-        0x0ac7, 0x0ac8,
-        0x0acd, 0x0acd,
-        0x0ae2, 0x0ae3,
-        0x0b01, 0x0b01,
-        0x0b3c, 0x0b3c,
-        0x0b3f, 0x0b3f,
-        0x0b41, 0x0b44,
-        0x0b4d, 0x0b4d,
-        0x0b56, 0x0b56,
-        0x0b62, 0x0b63,
-        0x0b82, 0x0b82,
-        0x0bc0, 0x0bc0,
-        0x0bcd, 0x0bcd,
-        0x0c3e, 0x0c40,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c62, 0x0c63,
-        0x0cbc, 0x0cbc,
-        0x0cbf, 0x0cbf,
-        0x0cc6, 0x0cc6,
-        0x0ccc, 0x0ccd,
-        0x0ce2, 0x0ce3,
-        0x0d41, 0x0d44,
-        0x0d4d, 0x0d4d,
-        0x0d62, 0x0d63,
-        0x0dca, 0x0dca,
-        0x0dd2, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0e31, 0x0e31,
-        0x0e34, 0x0e3a,
-        0x0e47, 0x0e4e,
-        0x0eb1, 0x0eb1,
-        0x0eb4, 0x0eb9,
-        0x0ebb, 0x0ebc,
-        0x0ec8, 0x0ecd,
-        0x0f18, 0x0f19,
-        0x0f35, 0x0f35,
-        0x0f37, 0x0f37,
-        0x0f39, 0x0f39,
-        0x0f71, 0x0f7e,
-        0x0f80, 0x0f84,
-        0x0f86, 0x0f87,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fc6, 0x0fc6,
-        0x102d, 0x1030,
-        0x1032, 0x1037,
-        0x1039, 0x103a,
-        0x103d, 0x103e,
-        0x1058, 0x1059,
-        0x105e, 0x1060,
-        0x1071, 0x1074,
-        0x1082, 0x1082,
-        0x1085, 0x1086,
-        0x108d, 0x108d,
-        0x109d, 0x109d,
-        0x135f, 0x135f,
-        0x1712, 0x1714,
-        0x1732, 0x1734,
-        0x1752, 0x1753,
-        0x1772, 0x1773,
-        0x17b7, 0x17bd,
-        0x17c6, 0x17c6,
-        0x17c9, 0x17d3,
-        0x17dd, 0x17dd,
-        0x180b, 0x180d,
-        0x18a9, 0x18a9,
-        0x1920, 0x1922,
-        0x1927, 0x1928,
-        0x1932, 0x1932,
-        0x1939, 0x193b,
-        0x1a17, 0x1a18,
-        0x1a56, 0x1a56,
-        0x1a58, 0x1a5e,
-        0x1a60, 0x1a60,
-        0x1a62, 0x1a62,
-        0x1a65, 0x1a6c,
-        0x1a73, 0x1a7c,
-        0x1a7f, 0x1a7f,
-        0x1b00, 0x1b03,
-        0x1b34, 0x1b34,
-        0x1b36, 0x1b3a,
-        0x1b3c, 0x1b3c,
-        0x1b42, 0x1b42,
-        0x1b6b, 0x1b73,
-        0x1b80, 0x1b81,
-        0x1ba2, 0x1ba5,
-        0x1ba8, 0x1ba9,
-        0x1c2c, 0x1c33,
-        0x1c36, 0x1c37,
-        0x1cd0, 0x1cd2,
-        0x1cd4, 0x1ce0,
-        0x1ce2, 0x1ce8,
-        0x1ced, 0x1ced,
-        0x1dc0, 0x1de6,
-        0x1dfd, 0x1dff,
-        0x20d0, 0x20dc,
-        0x20e1, 0x20e1,
-        0x20e5, 0x20f0,
-        0x2cef, 0x2cf1,
-        0x2de0, 0x2dff,
-        0x302a, 0x302f,
-        0x3099, 0x309a,
-        0xa66f, 0xa66f,
-        0xa67c, 0xa67d,
-        0xa6f0, 0xa6f1,
-        0xa802, 0xa802,
-        0xa806, 0xa806,
-        0xa80b, 0xa80b,
-        0xa825, 0xa826,
-        0xa8c4, 0xa8c4,
-        0xa8e0, 0xa8f1,
-        0xa926, 0xa92d,
-        0xa947, 0xa951,
-        0xa980, 0xa982,
-        0xa9b3, 0xa9b3,
-        0xa9b6, 0xa9b9,
-        0xa9bc, 0xa9bc,
-        0xaa29, 0xaa2e,
-        0xaa31, 0xaa32,
-        0xaa35, 0xaa36,
-        0xaa43, 0xaa43,
-        0xaa4c, 0xaa4c,
-        0xaab0, 0xaab0,
-        0xaab2, 0xaab4,
-        0xaab7, 0xaab8,
-        0xaabe, 0xaabf,
-        0xaac1, 0xaac1,
-        0xabe5, 0xabe5,
-        0xabe8, 0xabe8,
-        0xabed, 0xabed,
-        0xfb1e, 0xfb1e,
-        0xfe00, 0xfe0f,
-        0xfe20, 0xfe26,
-        0x101fd, 0x101fd,
-        0x10a01, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a0f,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a3f,
-        0x11080, 0x11081,
-        0x110b3, 0x110b6,
-        0x110b9, 0x110ba,
-        0x1d167, 0x1d169,
-        0x1d17b, 0x1d182,
-        0x1d185, 0x1d18b,
-        0x1d1aa, 0x1d1ad,
-        0x1d242, 0x1d244,
-        0xe0100, 0xe01ef,
-}; /* CR_Mn */
-
-/* 'N': Major Category */
-static const OnigCodePoint CR_N[] = {
-        81,
-        0x0030, 0x0039,
-        0x00b2, 0x00b3,
-        0x00b9, 0x00b9,
-        0x00bc, 0x00be,
-        0x0660, 0x0669,
-        0x06f0, 0x06f9,
-        0x07c0, 0x07c9,
-        0x0966, 0x096f,
-        0x09e6, 0x09ef,
-        0x09f4, 0x09f9,
-        0x0a66, 0x0a6f,
-        0x0ae6, 0x0aef,
-        0x0b66, 0x0b6f,
-        0x0be6, 0x0bf2,
-        0x0c66, 0x0c6f,
-        0x0c78, 0x0c7e,
-        0x0ce6, 0x0cef,
-        0x0d66, 0x0d75,
-        0x0e50, 0x0e59,
-        0x0ed0, 0x0ed9,
-        0x0f20, 0x0f33,
-        0x1040, 0x1049,
-        0x1090, 0x1099,
-        0x1369, 0x137c,
-        0x16ee, 0x16f0,
-        0x17e0, 0x17e9,
-        0x17f0, 0x17f9,
-        0x1810, 0x1819,
-        0x1946, 0x194f,
-        0x19d0, 0x19da,
-        0x1a80, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1b50, 0x1b59,
-        0x1bb0, 0x1bb9,
-        0x1c40, 0x1c49,
-        0x1c50, 0x1c59,
-        0x2070, 0x2070,
-        0x2074, 0x2079,
-        0x2080, 0x2089,
-        0x2150, 0x2182,
-        0x2185, 0x2189,
-        0x2460, 0x249b,
-        0x24ea, 0x24ff,
-        0x2776, 0x2793,
-        0x2cfd, 0x2cfd,
-        0x3007, 0x3007,
-        0x3021, 0x3029,
-        0x3038, 0x303a,
-        0x3192, 0x3195,
-        0x3220, 0x3229,
-        0x3251, 0x325f,
-        0x3280, 0x3289,
-        0x32b1, 0x32bf,
-        0xa620, 0xa629,
-        0xa6e6, 0xa6ef,
-        0xa830, 0xa835,
-        0xa8d0, 0xa8d9,
-        0xa900, 0xa909,
-        0xa9d0, 0xa9d9,
-        0xaa50, 0xaa59,
-        0xabf0, 0xabf9,
-        0xff10, 0xff19,
-        0x10107, 0x10133,
-        0x10140, 0x10178,
-        0x1018a, 0x1018a,
-        0x10320, 0x10323,
-        0x10341, 0x10341,
-        0x1034a, 0x1034a,
-        0x103d1, 0x103d5,
-        0x104a0, 0x104a9,
-        0x10858, 0x1085f,
-        0x10916, 0x1091b,
-        0x10a40, 0x10a47,
-        0x10a7d, 0x10a7e,
-        0x10b58, 0x10b5f,
-        0x10b78, 0x10b7f,
-        0x10e60, 0x10e7e,
-        0x12400, 0x12462,
-        0x1d360, 0x1d371,
-        0x1d7ce, 0x1d7ff,
-        0x1f100, 0x1f10a,
-}; /* CR_N */
-
-/* 'Nd': General Category */
-static const OnigCodePoint CR_Nd[] = {
-        37,
-        0x0030, 0x0039,
-        0x0660, 0x0669,
-        0x06f0, 0x06f9,
-        0x07c0, 0x07c9,
-        0x0966, 0x096f,
-        0x09e6, 0x09ef,
-        0x0a66, 0x0a6f,
-        0x0ae6, 0x0aef,
-        0x0b66, 0x0b6f,
-        0x0be6, 0x0bef,
-        0x0c66, 0x0c6f,
-        0x0ce6, 0x0cef,
-        0x0d66, 0x0d6f,
-        0x0e50, 0x0e59,
-        0x0ed0, 0x0ed9,
-        0x0f20, 0x0f29,
-        0x1040, 0x1049,
-        0x1090, 0x1099,
-        0x17e0, 0x17e9,
-        0x1810, 0x1819,
-        0x1946, 0x194f,
-        0x19d0, 0x19da,
-        0x1a80, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1b50, 0x1b59,
-        0x1bb0, 0x1bb9,
-        0x1c40, 0x1c49,
-        0x1c50, 0x1c59,
-        0xa620, 0xa629,
-        0xa8d0, 0xa8d9,
-        0xa900, 0xa909,
-        0xa9d0, 0xa9d9,
-        0xaa50, 0xaa59,
-        0xabf0, 0xabf9,
-        0xff10, 0xff19,
-        0x104a0, 0x104a9,
-        0x1d7ce, 0x1d7ff,
-}; /* CR_Nd */
-
-/* 'Nl': General Category */
-static const OnigCodePoint CR_Nl[] = {
-        12,
-        0x16ee, 0x16f0,
-        0x2160, 0x2182,
-        0x2185, 0x2188,
-        0x3007, 0x3007,
-        0x3021, 0x3029,
-        0x3038, 0x303a,
-        0xa6e6, 0xa6ef,
-        0x10140, 0x10174,
-        0x10341, 0x10341,
-        0x1034a, 0x1034a,
-        0x103d1, 0x103d5,
-        0x12400, 0x12462,
-}; /* CR_Nl */
-
-/* 'No': General Category */
-static const OnigCodePoint CR_No[] = {
-        38,
-        0x00b2, 0x00b3,
-        0x00b9, 0x00b9,
-        0x00bc, 0x00be,
-        0x09f4, 0x09f9,
-        0x0bf0, 0x0bf2,
-        0x0c78, 0x0c7e,
-        0x0d70, 0x0d75,
-        0x0f2a, 0x0f33,
-        0x1369, 0x137c,
-        0x17f0, 0x17f9,
-        0x2070, 0x2070,
-        0x2074, 0x2079,
-        0x2080, 0x2089,
-        0x2150, 0x215f,
-        0x2189, 0x2189,
-        0x2460, 0x249b,
-        0x24ea, 0x24ff,
-        0x2776, 0x2793,
-        0x2cfd, 0x2cfd,
-        0x3192, 0x3195,
-        0x3220, 0x3229,
-        0x3251, 0x325f,
-        0x3280, 0x3289,
-        0x32b1, 0x32bf,
-        0xa830, 0xa835,
-        0x10107, 0x10133,
-        0x10175, 0x10178,
-        0x1018a, 0x1018a,
-        0x10320, 0x10323,
-        0x10858, 0x1085f,
-        0x10916, 0x1091b,
-        0x10a40, 0x10a47,
-        0x10a7d, 0x10a7e,
-        0x10b58, 0x10b5f,
-        0x10b78, 0x10b7f,
-        0x10e60, 0x10e7e,
-        0x1d360, 0x1d371,
-        0x1f100, 0x1f10a,
-}; /* CR_No */
-
-/* 'P': Major Category */
-static const OnigCodePoint CR_P[] = {
-        129,
-        0x0021, 0x0023,
-        0x0025, 0x002a,
-        0x002c, 0x002f,
-        0x003a, 0x003b,
-        0x003f, 0x0040,
-        0x005b, 0x005d,
-        0x005f, 0x005f,
-        0x007b, 0x007b,
-        0x007d, 0x007d,
-        0x00a1, 0x00a1,
-        0x00ab, 0x00ab,
-        0x00b7, 0x00b7,
-        0x00bb, 0x00bb,
-        0x00bf, 0x00bf,
-        0x037e, 0x037e,
-        0x0387, 0x0387,
-        0x055a, 0x055f,
-        0x0589, 0x058a,
-        0x05be, 0x05be,
-        0x05c0, 0x05c0,
-        0x05c3, 0x05c3,
-        0x05c6, 0x05c6,
-        0x05f3, 0x05f4,
-        0x0609, 0x060a,
-        0x060c, 0x060d,
-        0x061b, 0x061b,
-        0x061e, 0x061f,
-        0x066a, 0x066d,
-        0x06d4, 0x06d4,
-        0x0700, 0x070d,
-        0x07f7, 0x07f9,
-        0x0830, 0x083e,
-        0x0964, 0x0965,
-        0x0970, 0x0970,
-        0x0df4, 0x0df4,
-        0x0e4f, 0x0e4f,
-        0x0e5a, 0x0e5b,
-        0x0f04, 0x0f12,
-        0x0f3a, 0x0f3d,
-        0x0f85, 0x0f85,
-        0x0fd0, 0x0fd4,
-        0x104a, 0x104f,
-        0x10fb, 0x10fb,
-        0x1361, 0x1368,
-        0x1400, 0x1400,
-        0x166d, 0x166e,
-        0x169b, 0x169c,
-        0x16eb, 0x16ed,
-        0x1735, 0x1736,
-        0x17d4, 0x17d6,
-        0x17d8, 0x17da,
-        0x1800, 0x180a,
-        0x1944, 0x1945,
-        0x19de, 0x19df,
-        0x1a1e, 0x1a1f,
-        0x1aa0, 0x1aa6,
-        0x1aa8, 0x1aad,
-        0x1b5a, 0x1b60,
-        0x1c3b, 0x1c3f,
-        0x1c7e, 0x1c7f,
-        0x1cd3, 0x1cd3,
-        0x2010, 0x2027,
-        0x2030, 0x2043,
-        0x2045, 0x2051,
-        0x2053, 0x205e,
-        0x207d, 0x207e,
-        0x208d, 0x208e,
-        0x2329, 0x232a,
-        0x2768, 0x2775,
-        0x27c5, 0x27c6,
-        0x27e6, 0x27ef,
-        0x2983, 0x2998,
-        0x29d8, 0x29db,
-        0x29fc, 0x29fd,
-        0x2cf9, 0x2cfc,
-        0x2cfe, 0x2cff,
-        0x2e00, 0x2e2e,
-        0x2e30, 0x2e31,
-        0x3001, 0x3003,
-        0x3008, 0x3011,
-        0x3014, 0x301f,
-        0x3030, 0x3030,
-        0x303d, 0x303d,
-        0x30a0, 0x30a0,
-        0x30fb, 0x30fb,
-        0xa4fe, 0xa4ff,
-        0xa60d, 0xa60f,
-        0xa673, 0xa673,
-        0xa67e, 0xa67e,
-        0xa6f2, 0xa6f7,
-        0xa874, 0xa877,
-        0xa8ce, 0xa8cf,
-        0xa8f8, 0xa8fa,
-        0xa92e, 0xa92f,
-        0xa95f, 0xa95f,
-        0xa9c1, 0xa9cd,
-        0xa9de, 0xa9df,
-        0xaa5c, 0xaa5f,
-        0xaade, 0xaadf,
-        0xabeb, 0xabeb,
-        0xfd3e, 0xfd3f,
-        0xfe10, 0xfe19,
-        0xfe30, 0xfe52,
-        0xfe54, 0xfe61,
-        0xfe63, 0xfe63,
-        0xfe68, 0xfe68,
-        0xfe6a, 0xfe6b,
-        0xff01, 0xff03,
-        0xff05, 0xff0a,
-        0xff0c, 0xff0f,
-        0xff1a, 0xff1b,
-        0xff1f, 0xff20,
-        0xff3b, 0xff3d,
-        0xff3f, 0xff3f,
-        0xff5b, 0xff5b,
-        0xff5d, 0xff5d,
-        0xff5f, 0xff65,
-        0x10100, 0x10101,
-        0x1039f, 0x1039f,
-        0x103d0, 0x103d0,
-        0x10857, 0x10857,
-        0x1091f, 0x1091f,
-        0x1093f, 0x1093f,
-        0x10a50, 0x10a58,
-        0x10a7f, 0x10a7f,
-        0x10b39, 0x10b3f,
-        0x110bb, 0x110bc,
-        0x110be, 0x110c1,
-        0x12470, 0x12473,
-}; /* CR_P */
-
-/* 'Pc': General Category */
-static const OnigCodePoint CR_Pc[] = {
-        6,
-        0x005f, 0x005f,
-        0x203f, 0x2040,
-        0x2054, 0x2054,
-        0xfe33, 0xfe34,
-        0xfe4d, 0xfe4f,
-        0xff3f, 0xff3f,
-}; /* CR_Pc */
-
-/* 'Pd': General Category */
-static const OnigCodePoint CR_Pd[] = {
-        15,
-        0x002d, 0x002d,
-        0x058a, 0x058a,
-        0x05be, 0x05be,
-        0x1400, 0x1400,
-        0x1806, 0x1806,
-        0x2010, 0x2015,
-        0x2e17, 0x2e17,
-        0x2e1a, 0x2e1a,
-        0x301c, 0x301c,
-        0x3030, 0x3030,
-        0x30a0, 0x30a0,
-        0xfe31, 0xfe32,
-        0xfe58, 0xfe58,
-        0xfe63, 0xfe63,
-        0xff0d, 0xff0d,
-}; /* CR_Pd */
-
-/* 'Pe': General Category */
-static const OnigCodePoint CR_Pe[] = {
-        70,
-        0x0029, 0x0029,
-        0x005d, 0x005d,
-        0x007d, 0x007d,
-        0x0f3b, 0x0f3b,
-        0x0f3d, 0x0f3d,
-        0x169c, 0x169c,
-        0x2046, 0x2046,
-        0x207e, 0x207e,
-        0x208e, 0x208e,
-        0x232a, 0x232a,
-        0x2769, 0x2769,
-        0x276b, 0x276b,
-        0x276d, 0x276d,
-        0x276f, 0x276f,
-        0x2771, 0x2771,
-        0x2773, 0x2773,
-        0x2775, 0x2775,
-        0x27c6, 0x27c6,
-        0x27e7, 0x27e7,
-        0x27e9, 0x27e9,
-        0x27eb, 0x27eb,
-        0x27ed, 0x27ed,
-        0x27ef, 0x27ef,
-        0x2984, 0x2984,
-        0x2986, 0x2986,
-        0x2988, 0x2988,
-        0x298a, 0x298a,
-        0x298c, 0x298c,
-        0x298e, 0x298e,
-        0x2990, 0x2990,
-        0x2992, 0x2992,
-        0x2994, 0x2994,
-        0x2996, 0x2996,
-        0x2998, 0x2998,
-        0x29d9, 0x29d9,
-        0x29db, 0x29db,
-        0x29fd, 0x29fd,
-        0x2e23, 0x2e23,
-        0x2e25, 0x2e25,
-        0x2e27, 0x2e27,
-        0x2e29, 0x2e29,
-        0x3009, 0x3009,
-        0x300b, 0x300b,
-        0x300d, 0x300d,
-        0x300f, 0x300f,
-        0x3011, 0x3011,
-        0x3015, 0x3015,
-        0x3017, 0x3017,
-        0x3019, 0x3019,
-        0x301b, 0x301b,
-        0x301e, 0x301f,
-        0xfd3f, 0xfd3f,
-        0xfe18, 0xfe18,
-        0xfe36, 0xfe36,
-        0xfe38, 0xfe38,
-        0xfe3a, 0xfe3a,
-        0xfe3c, 0xfe3c,
-        0xfe3e, 0xfe3e,
-        0xfe40, 0xfe40,
-        0xfe42, 0xfe42,
-        0xfe44, 0xfe44,
-        0xfe48, 0xfe48,
-        0xfe5a, 0xfe5a,
-        0xfe5c, 0xfe5c,
-        0xfe5e, 0xfe5e,
-        0xff09, 0xff09,
-        0xff3d, 0xff3d,
-        0xff5d, 0xff5d,
-        0xff60, 0xff60,
-        0xff63, 0xff63,
-}; /* CR_Pe */
-
-/* 'Pf': General Category */
-static const OnigCodePoint CR_Pf[] = {
-        10,
-        0x00bb, 0x00bb,
-        0x2019, 0x2019,
-        0x201d, 0x201d,
-        0x203a, 0x203a,
-        0x2e03, 0x2e03,
-        0x2e05, 0x2e05,
-        0x2e0a, 0x2e0a,
-        0x2e0d, 0x2e0d,
-        0x2e1d, 0x2e1d,
-        0x2e21, 0x2e21,
-}; /* CR_Pf */
-
-/* 'Pi': General Category */
-static const OnigCodePoint CR_Pi[] = {
-        11,
-        0x00ab, 0x00ab,
-        0x2018, 0x2018,
-        0x201b, 0x201c,
-        0x201f, 0x201f,
-        0x2039, 0x2039,
-        0x2e02, 0x2e02,
-        0x2e04, 0x2e04,
-        0x2e09, 0x2e09,
-        0x2e0c, 0x2e0c,
-        0x2e1c, 0x2e1c,
-        0x2e20, 0x2e20,
-}; /* CR_Pi */
-
-/* 'Po': General Category */
-static const OnigCodePoint CR_Po[] = {
-        124,
-        0x0021, 0x0023,
-        0x0025, 0x0027,
-        0x002a, 0x002a,
-        0x002c, 0x002c,
-        0x002e, 0x002f,
-        0x003a, 0x003b,
-        0x003f, 0x0040,
-        0x005c, 0x005c,
-        0x00a1, 0x00a1,
-        0x00b7, 0x00b7,
-        0x00bf, 0x00bf,
-        0x037e, 0x037e,
-        0x0387, 0x0387,
-        0x055a, 0x055f,
-        0x0589, 0x0589,
-        0x05c0, 0x05c0,
-        0x05c3, 0x05c3,
-        0x05c6, 0x05c6,
-        0x05f3, 0x05f4,
-        0x0609, 0x060a,
-        0x060c, 0x060d,
-        0x061b, 0x061b,
-        0x061e, 0x061f,
-        0x066a, 0x066d,
-        0x06d4, 0x06d4,
-        0x0700, 0x070d,
-        0x07f7, 0x07f9,
-        0x0830, 0x083e,
-        0x0964, 0x0965,
-        0x0970, 0x0970,
-        0x0df4, 0x0df4,
-        0x0e4f, 0x0e4f,
-        0x0e5a, 0x0e5b,
-        0x0f04, 0x0f12,
-        0x0f85, 0x0f85,
-        0x0fd0, 0x0fd4,
-        0x104a, 0x104f,
-        0x10fb, 0x10fb,
-        0x1361, 0x1368,
-        0x166d, 0x166e,
-        0x16eb, 0x16ed,
-        0x1735, 0x1736,
-        0x17d4, 0x17d6,
-        0x17d8, 0x17da,
-        0x1800, 0x1805,
-        0x1807, 0x180a,
-        0x1944, 0x1945,
-        0x19de, 0x19df,
-        0x1a1e, 0x1a1f,
-        0x1aa0, 0x1aa6,
-        0x1aa8, 0x1aad,
-        0x1b5a, 0x1b60,
-        0x1c3b, 0x1c3f,
-        0x1c7e, 0x1c7f,
-        0x1cd3, 0x1cd3,
-        0x2016, 0x2017,
-        0x2020, 0x2027,
-        0x2030, 0x2038,
-        0x203b, 0x203e,
-        0x2041, 0x2043,
-        0x2047, 0x2051,
-        0x2053, 0x2053,
-        0x2055, 0x205e,
-        0x2cf9, 0x2cfc,
-        0x2cfe, 0x2cff,
-        0x2e00, 0x2e01,
-        0x2e06, 0x2e08,
-        0x2e0b, 0x2e0b,
-        0x2e0e, 0x2e16,
-        0x2e18, 0x2e19,
-        0x2e1b, 0x2e1b,
-        0x2e1e, 0x2e1f,
-        0x2e2a, 0x2e2e,
-        0x2e30, 0x2e31,
-        0x3001, 0x3003,
-        0x303d, 0x303d,
-        0x30fb, 0x30fb,
-        0xa4fe, 0xa4ff,
-        0xa60d, 0xa60f,
-        0xa673, 0xa673,
-        0xa67e, 0xa67e,
-        0xa6f2, 0xa6f7,
-        0xa874, 0xa877,
-        0xa8ce, 0xa8cf,
-        0xa8f8, 0xa8fa,
-        0xa92e, 0xa92f,
-        0xa95f, 0xa95f,
-        0xa9c1, 0xa9cd,
-        0xa9de, 0xa9df,
-        0xaa5c, 0xaa5f,
-        0xaade, 0xaadf,
-        0xabeb, 0xabeb,
-        0xfe10, 0xfe16,
-        0xfe19, 0xfe19,
-        0xfe30, 0xfe30,
-        0xfe45, 0xfe46,
-        0xfe49, 0xfe4c,
-        0xfe50, 0xfe52,
-        0xfe54, 0xfe57,
-        0xfe5f, 0xfe61,
-        0xfe68, 0xfe68,
-        0xfe6a, 0xfe6b,
-        0xff01, 0xff03,
-        0xff05, 0xff07,
-        0xff0a, 0xff0a,
-        0xff0c, 0xff0c,
-        0xff0e, 0xff0f,
-        0xff1a, 0xff1b,
-        0xff1f, 0xff20,
-        0xff3c, 0xff3c,
-        0xff61, 0xff61,
-        0xff64, 0xff65,
-        0x10100, 0x10101,
-        0x1039f, 0x1039f,
-        0x103d0, 0x103d0,
-        0x10857, 0x10857,
-        0x1091f, 0x1091f,
-        0x1093f, 0x1093f,
-        0x10a50, 0x10a58,
-        0x10a7f, 0x10a7f,
-        0x10b39, 0x10b3f,
-        0x110bb, 0x110bc,
-        0x110be, 0x110c1,
-        0x12470, 0x12473,
-}; /* CR_Po */
-
-/* 'Ps': General Category */
-static const OnigCodePoint CR_Ps[] = {
-        72,
-        0x0028, 0x0028,
-        0x005b, 0x005b,
-        0x007b, 0x007b,
-        0x0f3a, 0x0f3a,
-        0x0f3c, 0x0f3c,
-        0x169b, 0x169b,
-        0x201a, 0x201a,
-        0x201e, 0x201e,
-        0x2045, 0x2045,
-        0x207d, 0x207d,
-        0x208d, 0x208d,
-        0x2329, 0x2329,
-        0x2768, 0x2768,
-        0x276a, 0x276a,
-        0x276c, 0x276c,
-        0x276e, 0x276e,
-        0x2770, 0x2770,
-        0x2772, 0x2772,
-        0x2774, 0x2774,
-        0x27c5, 0x27c5,
-        0x27e6, 0x27e6,
-        0x27e8, 0x27e8,
-        0x27ea, 0x27ea,
-        0x27ec, 0x27ec,
-        0x27ee, 0x27ee,
-        0x2983, 0x2983,
-        0x2985, 0x2985,
-        0x2987, 0x2987,
-        0x2989, 0x2989,
-        0x298b, 0x298b,
-        0x298d, 0x298d,
-        0x298f, 0x298f,
-        0x2991, 0x2991,
-        0x2993, 0x2993,
-        0x2995, 0x2995,
-        0x2997, 0x2997,
-        0x29d8, 0x29d8,
-        0x29da, 0x29da,
-        0x29fc, 0x29fc,
-        0x2e22, 0x2e22,
-        0x2e24, 0x2e24,
-        0x2e26, 0x2e26,
-        0x2e28, 0x2e28,
-        0x3008, 0x3008,
-        0x300a, 0x300a,
-        0x300c, 0x300c,
-        0x300e, 0x300e,
-        0x3010, 0x3010,
-        0x3014, 0x3014,
-        0x3016, 0x3016,
-        0x3018, 0x3018,
-        0x301a, 0x301a,
-        0x301d, 0x301d,
-        0xfd3e, 0xfd3e,
-        0xfe17, 0xfe17,
-        0xfe35, 0xfe35,
-        0xfe37, 0xfe37,
-        0xfe39, 0xfe39,
-        0xfe3b, 0xfe3b,
-        0xfe3d, 0xfe3d,
-        0xfe3f, 0xfe3f,
-        0xfe41, 0xfe41,
-        0xfe43, 0xfe43,
-        0xfe47, 0xfe47,
-        0xfe59, 0xfe59,
-        0xfe5b, 0xfe5b,
-        0xfe5d, 0xfe5d,
-        0xff08, 0xff08,
-        0xff3b, 0xff3b,
-        0xff5b, 0xff5b,
-        0xff5f, 0xff5f,
-        0xff62, 0xff62,
-}; /* CR_Ps */
-
-/* 'S': Major Category */
-static const OnigCodePoint CR_S[] = {
-        198,
-        0x0024, 0x0024,
-        0x002b, 0x002b,
-        0x003c, 0x003e,
-        0x005e, 0x005e,
-        0x0060, 0x0060,
-        0x007c, 0x007c,
-        0x007e, 0x007e,
-        0x00a2, 0x00a9,
-        0x00ac, 0x00ac,
-        0x00ae, 0x00b1,
-        0x00b4, 0x00b4,
-        0x00b6, 0x00b6,
-        0x00b8, 0x00b8,
-        0x00d7, 0x00d7,
-        0x00f7, 0x00f7,
-        0x02c2, 0x02c5,
-        0x02d2, 0x02df,
-        0x02e5, 0x02eb,
-        0x02ed, 0x02ed,
-        0x02ef, 0x02ff,
-        0x0375, 0x0375,
-        0x0384, 0x0385,
-        0x03f6, 0x03f6,
-        0x0482, 0x0482,
-        0x0606, 0x0608,
-        0x060b, 0x060b,
-        0x060e, 0x060f,
-        0x06e9, 0x06e9,
-        0x06fd, 0x06fe,
-        0x07f6, 0x07f6,
-        0x09f2, 0x09f3,
-        0x09fa, 0x09fb,
-        0x0af1, 0x0af1,
-        0x0b70, 0x0b70,
-        0x0bf3, 0x0bfa,
-        0x0c7f, 0x0c7f,
-        0x0cf1, 0x0cf2,
-        0x0d79, 0x0d79,
-        0x0e3f, 0x0e3f,
-        0x0f01, 0x0f03,
-        0x0f13, 0x0f17,
-        0x0f1a, 0x0f1f,
-        0x0f34, 0x0f34,
-        0x0f36, 0x0f36,
-        0x0f38, 0x0f38,
-        0x0fbe, 0x0fc5,
-        0x0fc7, 0x0fcc,
-        0x0fce, 0x0fcf,
-        0x0fd5, 0x0fd8,
-        0x109e, 0x109f,
-        0x1360, 0x1360,
-        0x1390, 0x1399,
-        0x17db, 0x17db,
-        0x1940, 0x1940,
-        0x19e0, 0x19ff,
-        0x1b61, 0x1b6a,
-        0x1b74, 0x1b7c,
-        0x1fbd, 0x1fbd,
-        0x1fbf, 0x1fc1,
-        0x1fcd, 0x1fcf,
-        0x1fdd, 0x1fdf,
-        0x1fed, 0x1fef,
-        0x1ffd, 0x1ffe,
-        0x2044, 0x2044,
-        0x2052, 0x2052,
-        0x207a, 0x207c,
-        0x208a, 0x208c,
-        0x20a0, 0x20b8,
-        0x2100, 0x2101,
-        0x2103, 0x2106,
-        0x2108, 0x2109,
-        0x2114, 0x2114,
-        0x2116, 0x2118,
-        0x211e, 0x2123,
-        0x2125, 0x2125,
-        0x2127, 0x2127,
-        0x2129, 0x2129,
-        0x212e, 0x212e,
-        0x213a, 0x213b,
-        0x2140, 0x2144,
-        0x214a, 0x214d,
-        0x214f, 0x214f,
-        0x2190, 0x2328,
-        0x232b, 0x23e8,
-        0x2400, 0x2426,
-        0x2440, 0x244a,
-        0x249c, 0x24e9,
-        0x2500, 0x26cd,
-        0x26cf, 0x26e1,
-        0x26e3, 0x26e3,
-        0x26e8, 0x26ff,
-        0x2701, 0x2704,
-        0x2706, 0x2709,
-        0x270c, 0x2727,
-        0x2729, 0x274b,
-        0x274d, 0x274d,
-        0x274f, 0x2752,
-        0x2756, 0x275e,
-        0x2761, 0x2767,
-        0x2794, 0x2794,
-        0x2798, 0x27af,
-        0x27b1, 0x27be,
-        0x27c0, 0x27c4,
-        0x27c7, 0x27ca,
-        0x27cc, 0x27cc,
-        0x27d0, 0x27e5,
-        0x27f0, 0x2982,
-        0x2999, 0x29d7,
-        0x29dc, 0x29fb,
-        0x29fe, 0x2b4c,
-        0x2b50, 0x2b59,
-        0x2ce5, 0x2cea,
-        0x2e80, 0x2e99,
-        0x2e9b, 0x2ef3,
-        0x2f00, 0x2fd5,
-        0x2ff0, 0x2ffb,
-        0x3004, 0x3004,
-        0x3012, 0x3013,
-        0x3020, 0x3020,
-        0x3036, 0x3037,
-        0x303e, 0x303f,
-        0x309b, 0x309c,
-        0x3190, 0x3191,
-        0x3196, 0x319f,
-        0x31c0, 0x31e3,
-        0x3200, 0x321e,
-        0x322a, 0x3250,
-        0x3260, 0x327f,
-        0x328a, 0x32b0,
-        0x32c0, 0x32fe,
-        0x3300, 0x33ff,
-        0x4dc0, 0x4dff,
-        0xa490, 0xa4c6,
-        0xa700, 0xa716,
-        0xa720, 0xa721,
-        0xa789, 0xa78a,
-        0xa828, 0xa82b,
-        0xa836, 0xa839,
-        0xaa77, 0xaa79,
-        0xfb29, 0xfb29,
-        0xfdfc, 0xfdfd,
-        0xfe62, 0xfe62,
-        0xfe64, 0xfe66,
-        0xfe69, 0xfe69,
-        0xff04, 0xff04,
-        0xff0b, 0xff0b,
-        0xff1c, 0xff1e,
-        0xff3e, 0xff3e,
-        0xff40, 0xff40,
-        0xff5c, 0xff5c,
-        0xff5e, 0xff5e,
-        0xffe0, 0xffe6,
-        0xffe8, 0xffee,
-        0xfffc, 0xfffd,
-        0x10102, 0x10102,
-        0x10137, 0x1013f,
-        0x10179, 0x10189,
-        0x10190, 0x1019b,
-        0x101d0, 0x101fc,
-        0x1d000, 0x1d0f5,
-        0x1d100, 0x1d126,
-        0x1d129, 0x1d164,
-        0x1d16a, 0x1d16c,
-        0x1d183, 0x1d184,
-        0x1d18c, 0x1d1a9,
-        0x1d1ae, 0x1d1dd,
-        0x1d200, 0x1d241,
-        0x1d245, 0x1d245,
-        0x1d300, 0x1d356,
-        0x1d6c1, 0x1d6c1,
-        0x1d6db, 0x1d6db,
-        0x1d6fb, 0x1d6fb,
-        0x1d715, 0x1d715,
-        0x1d735, 0x1d735,
-        0x1d74f, 0x1d74f,
-        0x1d76f, 0x1d76f,
-        0x1d789, 0x1d789,
-        0x1d7a9, 0x1d7a9,
-        0x1d7c3, 0x1d7c3,
-        0x1f000, 0x1f02b,
-        0x1f030, 0x1f093,
-        0x1f110, 0x1f12e,
-        0x1f131, 0x1f131,
-        0x1f13d, 0x1f13d,
-        0x1f13f, 0x1f13f,
-        0x1f142, 0x1f142,
-        0x1f146, 0x1f146,
-        0x1f14a, 0x1f14e,
-        0x1f157, 0x1f157,
-        0x1f15f, 0x1f15f,
-        0x1f179, 0x1f179,
-        0x1f17b, 0x1f17c,
-        0x1f17f, 0x1f17f,
-        0x1f18a, 0x1f18d,
-        0x1f190, 0x1f190,
-        0x1f200, 0x1f200,
-        0x1f210, 0x1f231,
-        0x1f240, 0x1f248,
-}; /* CR_S */
-
-/* 'Sc': General Category */
-static const OnigCodePoint CR_Sc[] = {
-        16,
-        0x0024, 0x0024,
-        0x00a2, 0x00a5,
-        0x060b, 0x060b,
-        0x09f2, 0x09f3,
-        0x09fb, 0x09fb,
-        0x0af1, 0x0af1,
-        0x0bf9, 0x0bf9,
-        0x0e3f, 0x0e3f,
-        0x17db, 0x17db,
-        0x20a0, 0x20b8,
-        0xa838, 0xa838,
-        0xfdfc, 0xfdfc,
-        0xfe69, 0xfe69,
-        0xff04, 0xff04,
-        0xffe0, 0xffe1,
-        0xffe5, 0xffe6,
-}; /* CR_Sc */
-
-/* 'Sk': General Category */
-static const OnigCodePoint CR_Sk[] = {
-        26,
-        0x005e, 0x005e,
-        0x0060, 0x0060,
-        0x00a8, 0x00a8,
-        0x00af, 0x00af,
-        0x00b4, 0x00b4,
-        0x00b8, 0x00b8,
-        0x02c2, 0x02c5,
-        0x02d2, 0x02df,
-        0x02e5, 0x02eb,
-        0x02ed, 0x02ed,
-        0x02ef, 0x02ff,
-        0x0375, 0x0375,
-        0x0384, 0x0385,
-        0x1fbd, 0x1fbd,
-        0x1fbf, 0x1fc1,
-        0x1fcd, 0x1fcf,
-        0x1fdd, 0x1fdf,
-        0x1fed, 0x1fef,
-        0x1ffd, 0x1ffe,
-        0x309b, 0x309c,
-        0xa700, 0xa716,
-        0xa720, 0xa721,
-        0xa789, 0xa78a,
-        0xff3e, 0xff3e,
-        0xff40, 0xff40,
-        0xffe3, 0xffe3,
-}; /* CR_Sk */
-
-/* 'Sm': General Category */
-static const OnigCodePoint CR_Sm[] = {
-        65,
-        0x002b, 0x002b,
-        0x003c, 0x003e,
-        0x007c, 0x007c,
-        0x007e, 0x007e,
-        0x00ac, 0x00ac,
-        0x00b1, 0x00b1,
-        0x00d7, 0x00d7,
-        0x00f7, 0x00f7,
-        0x03f6, 0x03f6,
-        0x0606, 0x0608,
-        0x2044, 0x2044,
-        0x2052, 0x2052,
-        0x207a, 0x207c,
-        0x208a, 0x208c,
-        0x2140, 0x2144,
-        0x214b, 0x214b,
-        0x2190, 0x2194,
-        0x219a, 0x219b,
-        0x21a0, 0x21a0,
-        0x21a3, 0x21a3,
-        0x21a6, 0x21a6,
-        0x21ae, 0x21ae,
-        0x21ce, 0x21cf,
-        0x21d2, 0x21d2,
-        0x21d4, 0x21d4,
-        0x21f4, 0x22ff,
-        0x2308, 0x230b,
-        0x2320, 0x2321,
-        0x237c, 0x237c,
-        0x239b, 0x23b3,
-        0x23dc, 0x23e1,
-        0x25b7, 0x25b7,
-        0x25c1, 0x25c1,
-        0x25f8, 0x25ff,
-        0x266f, 0x266f,
-        0x27c0, 0x27c4,
-        0x27c7, 0x27ca,
-        0x27cc, 0x27cc,
-        0x27d0, 0x27e5,
-        0x27f0, 0x27ff,
-        0x2900, 0x2982,
-        0x2999, 0x29d7,
-        0x29dc, 0x29fb,
-        0x29fe, 0x2aff,
-        0x2b30, 0x2b44,
-        0x2b47, 0x2b4c,
-        0xfb29, 0xfb29,
-        0xfe62, 0xfe62,
-        0xfe64, 0xfe66,
-        0xff0b, 0xff0b,
-        0xff1c, 0xff1e,
-        0xff5c, 0xff5c,
-        0xff5e, 0xff5e,
-        0xffe2, 0xffe2,
-        0xffe9, 0xffec,
-        0x1d6c1, 0x1d6c1,
-        0x1d6db, 0x1d6db,
-        0x1d6fb, 0x1d6fb,
-        0x1d715, 0x1d715,
-        0x1d735, 0x1d735,
-        0x1d74f, 0x1d74f,
-        0x1d76f, 0x1d76f,
-        0x1d789, 0x1d789,
-        0x1d7a9, 0x1d7a9,
-        0x1d7c3, 0x1d7c3,
-}; /* CR_Sm */
-
-/* 'So': General Category */
-static const OnigCodePoint CR_So[] = {
-        154,
-        0x00a6, 0x00a7,
-        0x00a9, 0x00a9,
-        0x00ae, 0x00ae,
-        0x00b0, 0x00b0,
-        0x00b6, 0x00b6,
-        0x0482, 0x0482,
-        0x060e, 0x060f,
-        0x06e9, 0x06e9,
-        0x06fd, 0x06fe,
-        0x07f6, 0x07f6,
-        0x09fa, 0x09fa,
-        0x0b70, 0x0b70,
-        0x0bf3, 0x0bf8,
-        0x0bfa, 0x0bfa,
-        0x0c7f, 0x0c7f,
-        0x0cf1, 0x0cf2,
-        0x0d79, 0x0d79,
-        0x0f01, 0x0f03,
-        0x0f13, 0x0f17,
-        0x0f1a, 0x0f1f,
-        0x0f34, 0x0f34,
-        0x0f36, 0x0f36,
-        0x0f38, 0x0f38,
-        0x0fbe, 0x0fc5,
-        0x0fc7, 0x0fcc,
-        0x0fce, 0x0fcf,
-        0x0fd5, 0x0fd8,
-        0x109e, 0x109f,
-        0x1360, 0x1360,
-        0x1390, 0x1399,
-        0x1940, 0x1940,
-        0x19e0, 0x19ff,
-        0x1b61, 0x1b6a,
-        0x1b74, 0x1b7c,
-        0x2100, 0x2101,
-        0x2103, 0x2106,
-        0x2108, 0x2109,
-        0x2114, 0x2114,
-        0x2116, 0x2118,
-        0x211e, 0x2123,
-        0x2125, 0x2125,
-        0x2127, 0x2127,
-        0x2129, 0x2129,
-        0x212e, 0x212e,
-        0x213a, 0x213b,
-        0x214a, 0x214a,
-        0x214c, 0x214d,
-        0x214f, 0x214f,
-        0x2195, 0x2199,
-        0x219c, 0x219f,
-        0x21a1, 0x21a2,
-        0x21a4, 0x21a5,
-        0x21a7, 0x21ad,
-        0x21af, 0x21cd,
-        0x21d0, 0x21d1,
-        0x21d3, 0x21d3,
-        0x21d5, 0x21f3,
-        0x2300, 0x2307,
-        0x230c, 0x231f,
-        0x2322, 0x2328,
-        0x232b, 0x237b,
-        0x237d, 0x239a,
-        0x23b4, 0x23db,
-        0x23e2, 0x23e8,
-        0x2400, 0x2426,
-        0x2440, 0x244a,
-        0x249c, 0x24e9,
-        0x2500, 0x25b6,
-        0x25b8, 0x25c0,
-        0x25c2, 0x25f7,
-        0x2600, 0x266e,
-        0x2670, 0x26cd,
-        0x26cf, 0x26e1,
-        0x26e3, 0x26e3,
-        0x26e8, 0x26ff,
-        0x2701, 0x2704,
-        0x2706, 0x2709,
-        0x270c, 0x2727,
-        0x2729, 0x274b,
-        0x274d, 0x274d,
-        0x274f, 0x2752,
-        0x2756, 0x275e,
-        0x2761, 0x2767,
-        0x2794, 0x2794,
-        0x2798, 0x27af,
-        0x27b1, 0x27be,
-        0x2800, 0x28ff,
-        0x2b00, 0x2b2f,
-        0x2b45, 0x2b46,
-        0x2b50, 0x2b59,
-        0x2ce5, 0x2cea,
-        0x2e80, 0x2e99,
-        0x2e9b, 0x2ef3,
-        0x2f00, 0x2fd5,
-        0x2ff0, 0x2ffb,
-        0x3004, 0x3004,
-        0x3012, 0x3013,
-        0x3020, 0x3020,
-        0x3036, 0x3037,
-        0x303e, 0x303f,
-        0x3190, 0x3191,
-        0x3196, 0x319f,
-        0x31c0, 0x31e3,
-        0x3200, 0x321e,
-        0x322a, 0x3250,
-        0x3260, 0x327f,
-        0x328a, 0x32b0,
-        0x32c0, 0x32fe,
-        0x3300, 0x33ff,
-        0x4dc0, 0x4dff,
-        0xa490, 0xa4c6,
-        0xa828, 0xa82b,
-        0xa836, 0xa837,
-        0xa839, 0xa839,
-        0xaa77, 0xaa79,
-        0xfdfd, 0xfdfd,
-        0xffe4, 0xffe4,
-        0xffe8, 0xffe8,
-        0xffed, 0xffee,
-        0xfffc, 0xfffd,
-        0x10102, 0x10102,
-        0x10137, 0x1013f,
-        0x10179, 0x10189,
-        0x10190, 0x1019b,
-        0x101d0, 0x101fc,
-        0x1d000, 0x1d0f5,
-        0x1d100, 0x1d126,
-        0x1d129, 0x1d164,
-        0x1d16a, 0x1d16c,
-        0x1d183, 0x1d184,
-        0x1d18c, 0x1d1a9,
-        0x1d1ae, 0x1d1dd,
-        0x1d200, 0x1d241,
-        0x1d245, 0x1d245,
-        0x1d300, 0x1d356,
-        0x1f000, 0x1f02b,
-        0x1f030, 0x1f093,
-        0x1f110, 0x1f12e,
-        0x1f131, 0x1f131,
-        0x1f13d, 0x1f13d,
-        0x1f13f, 0x1f13f,
-        0x1f142, 0x1f142,
-        0x1f146, 0x1f146,
-        0x1f14a, 0x1f14e,
-        0x1f157, 0x1f157,
-        0x1f15f, 0x1f15f,
-        0x1f179, 0x1f179,
-        0x1f17b, 0x1f17c,
-        0x1f17f, 0x1f17f,
-        0x1f18a, 0x1f18d,
-        0x1f190, 0x1f190,
-        0x1f200, 0x1f200,
-        0x1f210, 0x1f231,
-        0x1f240, 0x1f248,
-}; /* CR_So */
-
-/* 'Z': Major Category */
-static const OnigCodePoint CR_Z[] = {
-        9,
-        0x0020, 0x0020,
-        0x00a0, 0x00a0,
-        0x1680, 0x1680,
-        0x180e, 0x180e,
-        0x2000, 0x200a,
-        0x2028, 0x2029,
-        0x202f, 0x202f,
-        0x205f, 0x205f,
-        0x3000, 0x3000,
-}; /* CR_Z */
-
-/* 'Zl': General Category */
-static const OnigCodePoint CR_Zl[] = {
-        1,
-        0x2028, 0x2028,
-}; /* CR_Zl */
-
-/* 'Zp': General Category */
-static const OnigCodePoint CR_Zp[] = {
-        1,
-        0x2029, 0x2029,
-}; /* CR_Zp */
-
-/* 'Zs': General Category */
-static const OnigCodePoint CR_Zs[] = {
-        8,
-        0x0020, 0x0020,
-        0x00a0, 0x00a0,
-        0x1680, 0x1680,
-        0x180e, 0x180e,
-        0x2000, 0x200a,
-        0x202f, 0x202f,
-        0x205f, 0x205f,
-        0x3000, 0x3000,
-}; /* CR_Zs */
-
-/* 'Math': Derived Property */
-static const OnigCodePoint CR_Math[] = {
-        105,
-        0x002b, 0x002b,
-        0x003c, 0x003e,
-        0x005e, 0x005e,
-        0x007c, 0x007c,
-        0x007e, 0x007e,
-        0x00ac, 0x00ac,
-        0x00b1, 0x00b1,
-        0x00d7, 0x00d7,
-        0x00f7, 0x00f7,
-        0x03d0, 0x03d2,
-        0x03d5, 0x03d5,
-        0x03f0, 0x03f1,
-        0x03f4, 0x03f6,
-        0x0606, 0x0608,
-        0x2016, 0x2016,
-        0x2032, 0x2034,
-        0x2040, 0x2040,
-        0x2044, 0x2044,
-        0x2052, 0x2052,
-        0x2061, 0x2064,
-        0x207a, 0x207e,
-        0x208a, 0x208e,
-        0x20d0, 0x20dc,
-        0x20e1, 0x20e1,
-        0x20e5, 0x20e6,
-        0x20eb, 0x20ef,
-        0x2102, 0x2102,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2119, 0x211d,
-        0x2124, 0x2124,
-        0x2128, 0x2129,
-        0x212c, 0x212d,
-        0x212f, 0x2131,
-        0x2133, 0x2138,
-        0x213c, 0x2149,
-        0x214b, 0x214b,
-        0x2190, 0x21a7,
-        0x21a9, 0x21ae,
-        0x21b0, 0x21b1,
-        0x21b6, 0x21b7,
-        0x21bc, 0x21db,
-        0x21dd, 0x21dd,
-        0x21e4, 0x21e5,
-        0x21f4, 0x22ff,
-        0x2308, 0x230b,
-        0x2320, 0x2321,
-        0x237c, 0x237c,
-        0x239b, 0x23b5,
-        0x23b7, 0x23b7,
-        0x23d0, 0x23d0,
-        0x23dc, 0x23e2,
-        0x25a0, 0x25a1,
-        0x25ae, 0x25b7,
-        0x25bc, 0x25c1,
-        0x25c6, 0x25c7,
-        0x25ca, 0x25cb,
-        0x25cf, 0x25d3,
-        0x25e2, 0x25e2,
-        0x25e4, 0x25e4,
-        0x25e7, 0x25ec,
-        0x25f8, 0x25ff,
-        0x2605, 0x2606,
-        0x2640, 0x2640,
-        0x2642, 0x2642,
-        0x2660, 0x2663,
-        0x266d, 0x266f,
-        0x27c0, 0x27ca,
-        0x27cc, 0x27cc,
-        0x27d0, 0x27ff,
-        0x2900, 0x2aff,
-        0x2b30, 0x2b44,
-        0x2b47, 0x2b4c,
-        0xfb29, 0xfb29,
-        0xfe61, 0xfe66,
-        0xfe68, 0xfe68,
-        0xff0b, 0xff0b,
-        0xff1c, 0xff1e,
-        0xff3c, 0xff3c,
-        0xff3e, 0xff3e,
-        0xff5c, 0xff5c,
-        0xff5e, 0xff5e,
-        0xffe2, 0xffe2,
-        0xffe9, 0xffec,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-}; /* CR_Math */
-
-/* 'Alphabetic': Derived Property */
-static const OnigCodePoint CR_Alphabetic[] = {
-        474,
-        0x0041, 0x005a,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x02c1,
-        0x02c6, 0x02d1,
-        0x02e0, 0x02e4,
-        0x02ec, 0x02ec,
-        0x02ee, 0x02ee,
-        0x0345, 0x0345,
-        0x0370, 0x0374,
-        0x0376, 0x0377,
-        0x037a, 0x037d,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03f5,
-        0x03f7, 0x0481,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x0559,
-        0x0561, 0x0587,
-        0x05b0, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f2,
-        0x0610, 0x061a,
-        0x0621, 0x0657,
-        0x0659, 0x065e,
-        0x066e, 0x06d3,
-        0x06d5, 0x06dc,
-        0x06e1, 0x06e8,
-        0x06ed, 0x06ef,
-        0x06fa, 0x06fc,
-        0x06ff, 0x06ff,
-        0x0710, 0x073f,
-        0x074d, 0x07b1,
-        0x07ca, 0x07ea,
-        0x07f4, 0x07f5,
-        0x07fa, 0x07fa,
-        0x0800, 0x0817,
-        0x081a, 0x082c,
-        0x0900, 0x0939,
-        0x093d, 0x094c,
-        0x094e, 0x094e,
-        0x0950, 0x0950,
-        0x0955, 0x0955,
-        0x0958, 0x0963,
-        0x0971, 0x0972,
-        0x0979, 0x097f,
-        0x0981, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bd, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09cc,
-        0x09ce, 0x09ce,
-        0x09d7, 0x09d7,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e3,
-        0x09f0, 0x09f1,
-        0x0a01, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4c,
-        0x0a51, 0x0a51,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a70, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abd, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acc,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae3,
-        0x0b01, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3d, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4c,
-        0x0b56, 0x0b57,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b63,
-        0x0b71, 0x0b71,
-        0x0b82, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcc,
-        0x0bd0, 0x0bd0,
-        0x0bd7, 0x0bd7,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4c,
-        0x0c55, 0x0c56,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c63,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbd, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccc,
-        0x0cd5, 0x0cd6,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce3,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4c,
-        0x0d57, 0x0d57,
-        0x0d60, 0x0d63,
-        0x0d7a, 0x0d7f,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df3,
-        0x0e01, 0x0e3a,
-        0x0e40, 0x0e46,
-        0x0e4d, 0x0e4d,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb9,
-        0x0ebb, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ecd, 0x0ecd,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f00,
-        0x0f40, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f71, 0x0f81,
-        0x0f88, 0x0f8b,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x1000, 0x1036,
-        0x1038, 0x1038,
-        0x103b, 0x103f,
-        0x1050, 0x1062,
-        0x1065, 0x1068,
-        0x106e, 0x1086,
-        0x108e, 0x108e,
-        0x109c, 0x109d,
-        0x10a0, 0x10c5,
-        0x10d0, 0x10fa,
-        0x10fc, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x135f, 0x135f,
-        0x1380, 0x138f,
-        0x13a0, 0x13f4,
-        0x1401, 0x166c,
-        0x166f, 0x167f,
-        0x1681, 0x169a,
-        0x16a0, 0x16ea,
-        0x16ee, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1713,
-        0x1720, 0x1733,
-        0x1740, 0x1753,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1772, 0x1773,
-        0x1780, 0x17b3,
-        0x17b6, 0x17c8,
-        0x17d7, 0x17d7,
-        0x17dc, 0x17dc,
-        0x1820, 0x1877,
-        0x1880, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1920, 0x192b,
-        0x1930, 0x1938,
-        0x1950, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x1a00, 0x1a1b,
-        0x1a20, 0x1a5e,
-        0x1a61, 0x1a74,
-        0x1aa7, 0x1aa7,
-        0x1b00, 0x1b33,
-        0x1b35, 0x1b43,
-        0x1b45, 0x1b4b,
-        0x1b80, 0x1ba9,
-        0x1bae, 0x1baf,
-        0x1c00, 0x1c35,
-        0x1c4d, 0x1c4f,
-        0x1c5a, 0x1c7d,
-        0x1ce9, 0x1cec,
-        0x1cee, 0x1cf2,
-        0x1d00, 0x1dbf,
-        0x1e00, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2119, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x212d,
-        0x212f, 0x2139,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x214e, 0x214e,
-        0x2160, 0x2188,
-        0x24b6, 0x24e9,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2ce4,
-        0x2ceb, 0x2cee,
-        0x2d00, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2de0, 0x2dff,
-        0x2e2f, 0x2e2f,
-        0x3005, 0x3007,
-        0x3021, 0x3029,
-        0x3031, 0x3035,
-        0x3038, 0x303c,
-        0x3041, 0x3096,
-        0x309d, 0x309f,
-        0x30a1, 0x30fa,
-        0x30fc, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x31a0, 0x31b7,
-        0x31f0, 0x31ff,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa4d0, 0xa4fd,
-        0xa500, 0xa60c,
-        0xa610, 0xa61f,
-        0xa62a, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa66e,
-        0xa67f, 0xa697,
-        0xa6a0, 0xa6ef,
-        0xa717, 0xa71f,
-        0xa722, 0xa788,
-        0xa78b, 0xa78c,
-        0xa7fb, 0xa801,
-        0xa803, 0xa805,
-        0xa807, 0xa80a,
-        0xa80c, 0xa827,
-        0xa840, 0xa873,
-        0xa880, 0xa8c3,
-        0xa8f2, 0xa8f7,
-        0xa8fb, 0xa8fb,
-        0xa90a, 0xa92a,
-        0xa930, 0xa952,
-        0xa960, 0xa97c,
-        0xa980, 0xa9bf,
-        0xa9cf, 0xa9cf,
-        0xaa00, 0xaa36,
-        0xaa40, 0xaa4d,
-        0xaa60, 0xaa76,
-        0xaa7a, 0xaa7a,
-        0xaa80, 0xaabe,
-        0xaac0, 0xaac0,
-        0xaac2, 0xaac2,
-        0xaadb, 0xaadd,
-        0xabc0, 0xabea,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb28,
-        0xfb2a, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfb,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xff21, 0xff3a,
-        0xff41, 0xff5a,
-        0xff66, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10140, 0x10174,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103cf,
-        0x103d1, 0x103d5,
-        0x10400, 0x1049d,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10900, 0x10915,
-        0x10920, 0x10939,
-        0x10a00, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a60, 0x10a7c,
-        0x10b00, 0x10b35,
-        0x10b40, 0x10b55,
-        0x10b60, 0x10b72,
-        0x10c00, 0x10c48,
-        0x11082, 0x110b8,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x13000, 0x1342e,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-}; /* CR_Alphabetic */
-
-/* 'Lowercase': Derived Property */
-static const OnigCodePoint CR_Lowercase[] = {
-        602,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00ba, 0x00ba,
-        0x00df, 0x00f6,
-        0x00f8, 0x00ff,
-        0x0101, 0x0101,
-        0x0103, 0x0103,
-        0x0105, 0x0105,
-        0x0107, 0x0107,
-        0x0109, 0x0109,
-        0x010b, 0x010b,
-        0x010d, 0x010d,
-        0x010f, 0x010f,
-        0x0111, 0x0111,
-        0x0113, 0x0113,
-        0x0115, 0x0115,
-        0x0117, 0x0117,
-        0x0119, 0x0119,
-        0x011b, 0x011b,
-        0x011d, 0x011d,
-        0x011f, 0x011f,
-        0x0121, 0x0121,
-        0x0123, 0x0123,
-        0x0125, 0x0125,
-        0x0127, 0x0127,
-        0x0129, 0x0129,
-        0x012b, 0x012b,
-        0x012d, 0x012d,
-        0x012f, 0x012f,
-        0x0131, 0x0131,
-        0x0133, 0x0133,
-        0x0135, 0x0135,
-        0x0137, 0x0138,
-        0x013a, 0x013a,
-        0x013c, 0x013c,
-        0x013e, 0x013e,
-        0x0140, 0x0140,
-        0x0142, 0x0142,
-        0x0144, 0x0144,
-        0x0146, 0x0146,
-        0x0148, 0x0149,
-        0x014b, 0x014b,
-        0x014d, 0x014d,
-        0x014f, 0x014f,
-        0x0151, 0x0151,
-        0x0153, 0x0153,
-        0x0155, 0x0155,
-        0x0157, 0x0157,
-        0x0159, 0x0159,
-        0x015b, 0x015b,
-        0x015d, 0x015d,
-        0x015f, 0x015f,
-        0x0161, 0x0161,
-        0x0163, 0x0163,
-        0x0165, 0x0165,
-        0x0167, 0x0167,
-        0x0169, 0x0169,
-        0x016b, 0x016b,
-        0x016d, 0x016d,
-        0x016f, 0x016f,
-        0x0171, 0x0171,
-        0x0173, 0x0173,
-        0x0175, 0x0175,
-        0x0177, 0x0177,
-        0x017a, 0x017a,
-        0x017c, 0x017c,
-        0x017e, 0x0180,
-        0x0183, 0x0183,
-        0x0185, 0x0185,
-        0x0188, 0x0188,
-        0x018c, 0x018d,
-        0x0192, 0x0192,
-        0x0195, 0x0195,
-        0x0199, 0x019b,
-        0x019e, 0x019e,
-        0x01a1, 0x01a1,
-        0x01a3, 0x01a3,
-        0x01a5, 0x01a5,
-        0x01a8, 0x01a8,
-        0x01aa, 0x01ab,
-        0x01ad, 0x01ad,
-        0x01b0, 0x01b0,
-        0x01b4, 0x01b4,
-        0x01b6, 0x01b6,
-        0x01b9, 0x01ba,
-        0x01bd, 0x01bf,
-        0x01c6, 0x01c6,
-        0x01c9, 0x01c9,
-        0x01cc, 0x01cc,
-        0x01ce, 0x01ce,
-        0x01d0, 0x01d0,
-        0x01d2, 0x01d2,
-        0x01d4, 0x01d4,
-        0x01d6, 0x01d6,
-        0x01d8, 0x01d8,
-        0x01da, 0x01da,
-        0x01dc, 0x01dd,
-        0x01df, 0x01df,
-        0x01e1, 0x01e1,
-        0x01e3, 0x01e3,
-        0x01e5, 0x01e5,
-        0x01e7, 0x01e7,
-        0x01e9, 0x01e9,
-        0x01eb, 0x01eb,
-        0x01ed, 0x01ed,
-        0x01ef, 0x01f0,
-        0x01f3, 0x01f3,
-        0x01f5, 0x01f5,
-        0x01f9, 0x01f9,
-        0x01fb, 0x01fb,
-        0x01fd, 0x01fd,
-        0x01ff, 0x01ff,
-        0x0201, 0x0201,
-        0x0203, 0x0203,
-        0x0205, 0x0205,
-        0x0207, 0x0207,
-        0x0209, 0x0209,
-        0x020b, 0x020b,
-        0x020d, 0x020d,
-        0x020f, 0x020f,
-        0x0211, 0x0211,
-        0x0213, 0x0213,
-        0x0215, 0x0215,
-        0x0217, 0x0217,
-        0x0219, 0x0219,
-        0x021b, 0x021b,
-        0x021d, 0x021d,
-        0x021f, 0x021f,
-        0x0221, 0x0221,
-        0x0223, 0x0223,
-        0x0225, 0x0225,
-        0x0227, 0x0227,
-        0x0229, 0x0229,
-        0x022b, 0x022b,
-        0x022d, 0x022d,
-        0x022f, 0x022f,
-        0x0231, 0x0231,
-        0x0233, 0x0239,
-        0x023c, 0x023c,
-        0x023f, 0x0240,
-        0x0242, 0x0242,
-        0x0247, 0x0247,
-        0x0249, 0x0249,
-        0x024b, 0x024b,
-        0x024d, 0x024d,
-        0x024f, 0x0293,
-        0x0295, 0x02b8,
-        0x02c0, 0x02c1,
-        0x02e0, 0x02e4,
-        0x0345, 0x0345,
-        0x0371, 0x0371,
-        0x0373, 0x0373,
-        0x0377, 0x0377,
-        0x037a, 0x037d,
-        0x0390, 0x0390,
-        0x03ac, 0x03ce,
-        0x03d0, 0x03d1,
-        0x03d5, 0x03d7,
-        0x03d9, 0x03d9,
-        0x03db, 0x03db,
-        0x03dd, 0x03dd,
-        0x03df, 0x03df,
-        0x03e1, 0x03e1,
-        0x03e3, 0x03e3,
-        0x03e5, 0x03e5,
-        0x03e7, 0x03e7,
-        0x03e9, 0x03e9,
-        0x03eb, 0x03eb,
-        0x03ed, 0x03ed,
-        0x03ef, 0x03f3,
-        0x03f5, 0x03f5,
-        0x03f8, 0x03f8,
-        0x03fb, 0x03fc,
-        0x0430, 0x045f,
-        0x0461, 0x0461,
-        0x0463, 0x0463,
-        0x0465, 0x0465,
-        0x0467, 0x0467,
-        0x0469, 0x0469,
-        0x046b, 0x046b,
-        0x046d, 0x046d,
-        0x046f, 0x046f,
-        0x0471, 0x0471,
-        0x0473, 0x0473,
-        0x0475, 0x0475,
-        0x0477, 0x0477,
-        0x0479, 0x0479,
-        0x047b, 0x047b,
-        0x047d, 0x047d,
-        0x047f, 0x047f,
-        0x0481, 0x0481,
-        0x048b, 0x048b,
-        0x048d, 0x048d,
-        0x048f, 0x048f,
-        0x0491, 0x0491,
-        0x0493, 0x0493,
-        0x0495, 0x0495,
-        0x0497, 0x0497,
-        0x0499, 0x0499,
-        0x049b, 0x049b,
-        0x049d, 0x049d,
-        0x049f, 0x049f,
-        0x04a1, 0x04a1,
-        0x04a3, 0x04a3,
-        0x04a5, 0x04a5,
-        0x04a7, 0x04a7,
-        0x04a9, 0x04a9,
-        0x04ab, 0x04ab,
-        0x04ad, 0x04ad,
-        0x04af, 0x04af,
-        0x04b1, 0x04b1,
-        0x04b3, 0x04b3,
-        0x04b5, 0x04b5,
-        0x04b7, 0x04b7,
-        0x04b9, 0x04b9,
-        0x04bb, 0x04bb,
-        0x04bd, 0x04bd,
-        0x04bf, 0x04bf,
-        0x04c2, 0x04c2,
-        0x04c4, 0x04c4,
-        0x04c6, 0x04c6,
-        0x04c8, 0x04c8,
-        0x04ca, 0x04ca,
-        0x04cc, 0x04cc,
-        0x04ce, 0x04cf,
-        0x04d1, 0x04d1,
-        0x04d3, 0x04d3,
-        0x04d5, 0x04d5,
-        0x04d7, 0x04d7,
-        0x04d9, 0x04d9,
-        0x04db, 0x04db,
-        0x04dd, 0x04dd,
-        0x04df, 0x04df,
-        0x04e1, 0x04e1,
-        0x04e3, 0x04e3,
-        0x04e5, 0x04e5,
-        0x04e7, 0x04e7,
-        0x04e9, 0x04e9,
-        0x04eb, 0x04eb,
-        0x04ed, 0x04ed,
-        0x04ef, 0x04ef,
-        0x04f1, 0x04f1,
-        0x04f3, 0x04f3,
-        0x04f5, 0x04f5,
-        0x04f7, 0x04f7,
-        0x04f9, 0x04f9,
-        0x04fb, 0x04fb,
-        0x04fd, 0x04fd,
-        0x04ff, 0x04ff,
-        0x0501, 0x0501,
-        0x0503, 0x0503,
-        0x0505, 0x0505,
-        0x0507, 0x0507,
-        0x0509, 0x0509,
-        0x050b, 0x050b,
-        0x050d, 0x050d,
-        0x050f, 0x050f,
-        0x0511, 0x0511,
-        0x0513, 0x0513,
-        0x0515, 0x0515,
-        0x0517, 0x0517,
-        0x0519, 0x0519,
-        0x051b, 0x051b,
-        0x051d, 0x051d,
-        0x051f, 0x051f,
-        0x0521, 0x0521,
-        0x0523, 0x0523,
-        0x0525, 0x0525,
-        0x0561, 0x0587,
-        0x1d00, 0x1dbf,
-        0x1e01, 0x1e01,
-        0x1e03, 0x1e03,
-        0x1e05, 0x1e05,
-        0x1e07, 0x1e07,
-        0x1e09, 0x1e09,
-        0x1e0b, 0x1e0b,
-        0x1e0d, 0x1e0d,
-        0x1e0f, 0x1e0f,
-        0x1e11, 0x1e11,
-        0x1e13, 0x1e13,
-        0x1e15, 0x1e15,
-        0x1e17, 0x1e17,
-        0x1e19, 0x1e19,
-        0x1e1b, 0x1e1b,
-        0x1e1d, 0x1e1d,
-        0x1e1f, 0x1e1f,
-        0x1e21, 0x1e21,
-        0x1e23, 0x1e23,
-        0x1e25, 0x1e25,
-        0x1e27, 0x1e27,
-        0x1e29, 0x1e29,
-        0x1e2b, 0x1e2b,
-        0x1e2d, 0x1e2d,
-        0x1e2f, 0x1e2f,
-        0x1e31, 0x1e31,
-        0x1e33, 0x1e33,
-        0x1e35, 0x1e35,
-        0x1e37, 0x1e37,
-        0x1e39, 0x1e39,
-        0x1e3b, 0x1e3b,
-        0x1e3d, 0x1e3d,
-        0x1e3f, 0x1e3f,
-        0x1e41, 0x1e41,
-        0x1e43, 0x1e43,
-        0x1e45, 0x1e45,
-        0x1e47, 0x1e47,
-        0x1e49, 0x1e49,
-        0x1e4b, 0x1e4b,
-        0x1e4d, 0x1e4d,
-        0x1e4f, 0x1e4f,
-        0x1e51, 0x1e51,
-        0x1e53, 0x1e53,
-        0x1e55, 0x1e55,
-        0x1e57, 0x1e57,
-        0x1e59, 0x1e59,
-        0x1e5b, 0x1e5b,
-        0x1e5d, 0x1e5d,
-        0x1e5f, 0x1e5f,
-        0x1e61, 0x1e61,
-        0x1e63, 0x1e63,
-        0x1e65, 0x1e65,
-        0x1e67, 0x1e67,
-        0x1e69, 0x1e69,
-        0x1e6b, 0x1e6b,
-        0x1e6d, 0x1e6d,
-        0x1e6f, 0x1e6f,
-        0x1e71, 0x1e71,
-        0x1e73, 0x1e73,
-        0x1e75, 0x1e75,
-        0x1e77, 0x1e77,
-        0x1e79, 0x1e79,
-        0x1e7b, 0x1e7b,
-        0x1e7d, 0x1e7d,
-        0x1e7f, 0x1e7f,
-        0x1e81, 0x1e81,
-        0x1e83, 0x1e83,
-        0x1e85, 0x1e85,
-        0x1e87, 0x1e87,
-        0x1e89, 0x1e89,
-        0x1e8b, 0x1e8b,
-        0x1e8d, 0x1e8d,
-        0x1e8f, 0x1e8f,
-        0x1e91, 0x1e91,
-        0x1e93, 0x1e93,
-        0x1e95, 0x1e9d,
-        0x1e9f, 0x1e9f,
-        0x1ea1, 0x1ea1,
-        0x1ea3, 0x1ea3,
-        0x1ea5, 0x1ea5,
-        0x1ea7, 0x1ea7,
-        0x1ea9, 0x1ea9,
-        0x1eab, 0x1eab,
-        0x1ead, 0x1ead,
-        0x1eaf, 0x1eaf,
-        0x1eb1, 0x1eb1,
-        0x1eb3, 0x1eb3,
-        0x1eb5, 0x1eb5,
-        0x1eb7, 0x1eb7,
-        0x1eb9, 0x1eb9,
-        0x1ebb, 0x1ebb,
-        0x1ebd, 0x1ebd,
-        0x1ebf, 0x1ebf,
-        0x1ec1, 0x1ec1,
-        0x1ec3, 0x1ec3,
-        0x1ec5, 0x1ec5,
-        0x1ec7, 0x1ec7,
-        0x1ec9, 0x1ec9,
-        0x1ecb, 0x1ecb,
-        0x1ecd, 0x1ecd,
-        0x1ecf, 0x1ecf,
-        0x1ed1, 0x1ed1,
-        0x1ed3, 0x1ed3,
-        0x1ed5, 0x1ed5,
-        0x1ed7, 0x1ed7,
-        0x1ed9, 0x1ed9,
-        0x1edb, 0x1edb,
-        0x1edd, 0x1edd,
-        0x1edf, 0x1edf,
-        0x1ee1, 0x1ee1,
-        0x1ee3, 0x1ee3,
-        0x1ee5, 0x1ee5,
-        0x1ee7, 0x1ee7,
-        0x1ee9, 0x1ee9,
-        0x1eeb, 0x1eeb,
-        0x1eed, 0x1eed,
-        0x1eef, 0x1eef,
-        0x1ef1, 0x1ef1,
-        0x1ef3, 0x1ef3,
-        0x1ef5, 0x1ef5,
-        0x1ef7, 0x1ef7,
-        0x1ef9, 0x1ef9,
-        0x1efb, 0x1efb,
-        0x1efd, 0x1efd,
-        0x1eff, 0x1f07,
-        0x1f10, 0x1f15,
-        0x1f20, 0x1f27,
-        0x1f30, 0x1f37,
-        0x1f40, 0x1f45,
-        0x1f50, 0x1f57,
-        0x1f60, 0x1f67,
-        0x1f70, 0x1f7d,
-        0x1f80, 0x1f87,
-        0x1f90, 0x1f97,
-        0x1fa0, 0x1fa7,
-        0x1fb0, 0x1fb4,
-        0x1fb6, 0x1fb7,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fc7,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fd7,
-        0x1fe0, 0x1fe7,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ff7,
-        0x2090, 0x2094,
-        0x210a, 0x210a,
-        0x210e, 0x210f,
-        0x2113, 0x2113,
-        0x212f, 0x212f,
-        0x2134, 0x2134,
-        0x2139, 0x2139,
-        0x213c, 0x213d,
-        0x2146, 0x2149,
-        0x214e, 0x214e,
-        0x2170, 0x217f,
-        0x2184, 0x2184,
-        0x24d0, 0x24e9,
-        0x2c30, 0x2c5e,
-        0x2c61, 0x2c61,
-        0x2c65, 0x2c66,
-        0x2c68, 0x2c68,
-        0x2c6a, 0x2c6a,
-        0x2c6c, 0x2c6c,
-        0x2c71, 0x2c71,
-        0x2c73, 0x2c74,
-        0x2c76, 0x2c7d,
-        0x2c81, 0x2c81,
-        0x2c83, 0x2c83,
-        0x2c85, 0x2c85,
-        0x2c87, 0x2c87,
-        0x2c89, 0x2c89,
-        0x2c8b, 0x2c8b,
-        0x2c8d, 0x2c8d,
-        0x2c8f, 0x2c8f,
-        0x2c91, 0x2c91,
-        0x2c93, 0x2c93,
-        0x2c95, 0x2c95,
-        0x2c97, 0x2c97,
-        0x2c99, 0x2c99,
-        0x2c9b, 0x2c9b,
-        0x2c9d, 0x2c9d,
-        0x2c9f, 0x2c9f,
-        0x2ca1, 0x2ca1,
-        0x2ca3, 0x2ca3,
-        0x2ca5, 0x2ca5,
-        0x2ca7, 0x2ca7,
-        0x2ca9, 0x2ca9,
-        0x2cab, 0x2cab,
-        0x2cad, 0x2cad,
-        0x2caf, 0x2caf,
-        0x2cb1, 0x2cb1,
-        0x2cb3, 0x2cb3,
-        0x2cb5, 0x2cb5,
-        0x2cb7, 0x2cb7,
-        0x2cb9, 0x2cb9,
-        0x2cbb, 0x2cbb,
-        0x2cbd, 0x2cbd,
-        0x2cbf, 0x2cbf,
-        0x2cc1, 0x2cc1,
-        0x2cc3, 0x2cc3,
-        0x2cc5, 0x2cc5,
-        0x2cc7, 0x2cc7,
-        0x2cc9, 0x2cc9,
-        0x2ccb, 0x2ccb,
-        0x2ccd, 0x2ccd,
-        0x2ccf, 0x2ccf,
-        0x2cd1, 0x2cd1,
-        0x2cd3, 0x2cd3,
-        0x2cd5, 0x2cd5,
-        0x2cd7, 0x2cd7,
-        0x2cd9, 0x2cd9,
-        0x2cdb, 0x2cdb,
-        0x2cdd, 0x2cdd,
-        0x2cdf, 0x2cdf,
-        0x2ce1, 0x2ce1,
-        0x2ce3, 0x2ce4,
-        0x2cec, 0x2cec,
-        0x2cee, 0x2cee,
-        0x2d00, 0x2d25,
-        0xa641, 0xa641,
-        0xa643, 0xa643,
-        0xa645, 0xa645,
-        0xa647, 0xa647,
-        0xa649, 0xa649,
-        0xa64b, 0xa64b,
-        0xa64d, 0xa64d,
-        0xa64f, 0xa64f,
-        0xa651, 0xa651,
-        0xa653, 0xa653,
-        0xa655, 0xa655,
-        0xa657, 0xa657,
-        0xa659, 0xa659,
-        0xa65b, 0xa65b,
-        0xa65d, 0xa65d,
-        0xa65f, 0xa65f,
-        0xa663, 0xa663,
-        0xa665, 0xa665,
-        0xa667, 0xa667,
-        0xa669, 0xa669,
-        0xa66b, 0xa66b,
-        0xa66d, 0xa66d,
-        0xa681, 0xa681,
-        0xa683, 0xa683,
-        0xa685, 0xa685,
-        0xa687, 0xa687,
-        0xa689, 0xa689,
-        0xa68b, 0xa68b,
-        0xa68d, 0xa68d,
-        0xa68f, 0xa68f,
-        0xa691, 0xa691,
-        0xa693, 0xa693,
-        0xa695, 0xa695,
-        0xa697, 0xa697,
-        0xa723, 0xa723,
-        0xa725, 0xa725,
-        0xa727, 0xa727,
-        0xa729, 0xa729,
-        0xa72b, 0xa72b,
-        0xa72d, 0xa72d,
-        0xa72f, 0xa731,
-        0xa733, 0xa733,
-        0xa735, 0xa735,
-        0xa737, 0xa737,
-        0xa739, 0xa739,
-        0xa73b, 0xa73b,
-        0xa73d, 0xa73d,
-        0xa73f, 0xa73f,
-        0xa741, 0xa741,
-        0xa743, 0xa743,
-        0xa745, 0xa745,
-        0xa747, 0xa747,
-        0xa749, 0xa749,
-        0xa74b, 0xa74b,
-        0xa74d, 0xa74d,
-        0xa74f, 0xa74f,
-        0xa751, 0xa751,
-        0xa753, 0xa753,
-        0xa755, 0xa755,
-        0xa757, 0xa757,
-        0xa759, 0xa759,
-        0xa75b, 0xa75b,
-        0xa75d, 0xa75d,
-        0xa75f, 0xa75f,
-        0xa761, 0xa761,
-        0xa763, 0xa763,
-        0xa765, 0xa765,
-        0xa767, 0xa767,
-        0xa769, 0xa769,
-        0xa76b, 0xa76b,
-        0xa76d, 0xa76d,
-        0xa76f, 0xa778,
-        0xa77a, 0xa77a,
-        0xa77c, 0xa77c,
-        0xa77f, 0xa77f,
-        0xa781, 0xa781,
-        0xa783, 0xa783,
-        0xa785, 0xa785,
-        0xa787, 0xa787,
-        0xa78c, 0xa78c,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xff41, 0xff5a,
-        0x10428, 0x1044f,
-        0x1d41a, 0x1d433,
-        0x1d44e, 0x1d454,
-        0x1d456, 0x1d467,
-        0x1d482, 0x1d49b,
-        0x1d4b6, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d4cf,
-        0x1d4ea, 0x1d503,
-        0x1d51e, 0x1d537,
-        0x1d552, 0x1d56b,
-        0x1d586, 0x1d59f,
-        0x1d5ba, 0x1d5d3,
-        0x1d5ee, 0x1d607,
-        0x1d622, 0x1d63b,
-        0x1d656, 0x1d66f,
-        0x1d68a, 0x1d6a5,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6e1,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d71b,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d755,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d78f,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7c9,
-        0x1d7cb, 0x1d7cb,
-}; /* CR_Lowercase */
-
-/* 'Uppercase': Derived Property */
-static const OnigCodePoint CR_Uppercase[] = {
-        596,
-        0x0041, 0x005a,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00de,
-        0x0100, 0x0100,
-        0x0102, 0x0102,
-        0x0104, 0x0104,
-        0x0106, 0x0106,
-        0x0108, 0x0108,
-        0x010a, 0x010a,
-        0x010c, 0x010c,
-        0x010e, 0x010e,
-        0x0110, 0x0110,
-        0x0112, 0x0112,
-        0x0114, 0x0114,
-        0x0116, 0x0116,
-        0x0118, 0x0118,
-        0x011a, 0x011a,
-        0x011c, 0x011c,
-        0x011e, 0x011e,
-        0x0120, 0x0120,
-        0x0122, 0x0122,
-        0x0124, 0x0124,
-        0x0126, 0x0126,
-        0x0128, 0x0128,
-        0x012a, 0x012a,
-        0x012c, 0x012c,
-        0x012e, 0x012e,
-        0x0130, 0x0130,
-        0x0132, 0x0132,
-        0x0134, 0x0134,
-        0x0136, 0x0136,
-        0x0139, 0x0139,
-        0x013b, 0x013b,
-        0x013d, 0x013d,
-        0x013f, 0x013f,
-        0x0141, 0x0141,
-        0x0143, 0x0143,
-        0x0145, 0x0145,
-        0x0147, 0x0147,
-        0x014a, 0x014a,
-        0x014c, 0x014c,
-        0x014e, 0x014e,
-        0x0150, 0x0150,
-        0x0152, 0x0152,
-        0x0154, 0x0154,
-        0x0156, 0x0156,
-        0x0158, 0x0158,
-        0x015a, 0x015a,
-        0x015c, 0x015c,
-        0x015e, 0x015e,
-        0x0160, 0x0160,
-        0x0162, 0x0162,
-        0x0164, 0x0164,
-        0x0166, 0x0166,
-        0x0168, 0x0168,
-        0x016a, 0x016a,
-        0x016c, 0x016c,
-        0x016e, 0x016e,
-        0x0170, 0x0170,
-        0x0172, 0x0172,
-        0x0174, 0x0174,
-        0x0176, 0x0176,
-        0x0178, 0x0179,
-        0x017b, 0x017b,
-        0x017d, 0x017d,
-        0x0181, 0x0182,
-        0x0184, 0x0184,
-        0x0186, 0x0187,
-        0x0189, 0x018b,
-        0x018e, 0x0191,
-        0x0193, 0x0194,
-        0x0196, 0x0198,
-        0x019c, 0x019d,
-        0x019f, 0x01a0,
-        0x01a2, 0x01a2,
-        0x01a4, 0x01a4,
-        0x01a6, 0x01a7,
-        0x01a9, 0x01a9,
-        0x01ac, 0x01ac,
-        0x01ae, 0x01af,
-        0x01b1, 0x01b3,
-        0x01b5, 0x01b5,
-        0x01b7, 0x01b8,
-        0x01bc, 0x01bc,
-        0x01c4, 0x01c4,
-        0x01c7, 0x01c7,
-        0x01ca, 0x01ca,
-        0x01cd, 0x01cd,
-        0x01cf, 0x01cf,
-        0x01d1, 0x01d1,
-        0x01d3, 0x01d3,
-        0x01d5, 0x01d5,
-        0x01d7, 0x01d7,
-        0x01d9, 0x01d9,
-        0x01db, 0x01db,
-        0x01de, 0x01de,
-        0x01e0, 0x01e0,
-        0x01e2, 0x01e2,
-        0x01e4, 0x01e4,
-        0x01e6, 0x01e6,
-        0x01e8, 0x01e8,
-        0x01ea, 0x01ea,
-        0x01ec, 0x01ec,
-        0x01ee, 0x01ee,
-        0x01f1, 0x01f1,
-        0x01f4, 0x01f4,
-        0x01f6, 0x01f8,
-        0x01fa, 0x01fa,
-        0x01fc, 0x01fc,
-        0x01fe, 0x01fe,
-        0x0200, 0x0200,
-        0x0202, 0x0202,
-        0x0204, 0x0204,
-        0x0206, 0x0206,
-        0x0208, 0x0208,
-        0x020a, 0x020a,
-        0x020c, 0x020c,
-        0x020e, 0x020e,
-        0x0210, 0x0210,
-        0x0212, 0x0212,
-        0x0214, 0x0214,
-        0x0216, 0x0216,
-        0x0218, 0x0218,
-        0x021a, 0x021a,
-        0x021c, 0x021c,
-        0x021e, 0x021e,
-        0x0220, 0x0220,
-        0x0222, 0x0222,
-        0x0224, 0x0224,
-        0x0226, 0x0226,
-        0x0228, 0x0228,
-        0x022a, 0x022a,
-        0x022c, 0x022c,
-        0x022e, 0x022e,
-        0x0230, 0x0230,
-        0x0232, 0x0232,
-        0x023a, 0x023b,
-        0x023d, 0x023e,
-        0x0241, 0x0241,
-        0x0243, 0x0246,
-        0x0248, 0x0248,
-        0x024a, 0x024a,
-        0x024c, 0x024c,
-        0x024e, 0x024e,
-        0x0370, 0x0370,
-        0x0372, 0x0372,
-        0x0376, 0x0376,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x038f,
-        0x0391, 0x03a1,
-        0x03a3, 0x03ab,
-        0x03cf, 0x03cf,
-        0x03d2, 0x03d4,
-        0x03d8, 0x03d8,
-        0x03da, 0x03da,
-        0x03dc, 0x03dc,
-        0x03de, 0x03de,
-        0x03e0, 0x03e0,
-        0x03e2, 0x03e2,
-        0x03e4, 0x03e4,
-        0x03e6, 0x03e6,
-        0x03e8, 0x03e8,
-        0x03ea, 0x03ea,
-        0x03ec, 0x03ec,
-        0x03ee, 0x03ee,
-        0x03f4, 0x03f4,
-        0x03f7, 0x03f7,
-        0x03f9, 0x03fa,
-        0x03fd, 0x042f,
-        0x0460, 0x0460,
-        0x0462, 0x0462,
-        0x0464, 0x0464,
-        0x0466, 0x0466,
-        0x0468, 0x0468,
-        0x046a, 0x046a,
-        0x046c, 0x046c,
-        0x046e, 0x046e,
-        0x0470, 0x0470,
-        0x0472, 0x0472,
-        0x0474, 0x0474,
-        0x0476, 0x0476,
-        0x0478, 0x0478,
-        0x047a, 0x047a,
-        0x047c, 0x047c,
-        0x047e, 0x047e,
-        0x0480, 0x0480,
-        0x048a, 0x048a,
-        0x048c, 0x048c,
-        0x048e, 0x048e,
-        0x0490, 0x0490,
-        0x0492, 0x0492,
-        0x0494, 0x0494,
-        0x0496, 0x0496,
-        0x0498, 0x0498,
-        0x049a, 0x049a,
-        0x049c, 0x049c,
-        0x049e, 0x049e,
-        0x04a0, 0x04a0,
-        0x04a2, 0x04a2,
-        0x04a4, 0x04a4,
-        0x04a6, 0x04a6,
-        0x04a8, 0x04a8,
-        0x04aa, 0x04aa,
-        0x04ac, 0x04ac,
-        0x04ae, 0x04ae,
-        0x04b0, 0x04b0,
-        0x04b2, 0x04b2,
-        0x04b4, 0x04b4,
-        0x04b6, 0x04b6,
-        0x04b8, 0x04b8,
-        0x04ba, 0x04ba,
-        0x04bc, 0x04bc,
-        0x04be, 0x04be,
-        0x04c0, 0x04c1,
-        0x04c3, 0x04c3,
-        0x04c5, 0x04c5,
-        0x04c7, 0x04c7,
-        0x04c9, 0x04c9,
-        0x04cb, 0x04cb,
-        0x04cd, 0x04cd,
-        0x04d0, 0x04d0,
-        0x04d2, 0x04d2,
-        0x04d4, 0x04d4,
-        0x04d6, 0x04d6,
-        0x04d8, 0x04d8,
-        0x04da, 0x04da,
-        0x04dc, 0x04dc,
-        0x04de, 0x04de,
-        0x04e0, 0x04e0,
-        0x04e2, 0x04e2,
-        0x04e4, 0x04e4,
-        0x04e6, 0x04e6,
-        0x04e8, 0x04e8,
-        0x04ea, 0x04ea,
-        0x04ec, 0x04ec,
-        0x04ee, 0x04ee,
-        0x04f0, 0x04f0,
-        0x04f2, 0x04f2,
-        0x04f4, 0x04f4,
-        0x04f6, 0x04f6,
-        0x04f8, 0x04f8,
-        0x04fa, 0x04fa,
-        0x04fc, 0x04fc,
-        0x04fe, 0x04fe,
-        0x0500, 0x0500,
-        0x0502, 0x0502,
-        0x0504, 0x0504,
-        0x0506, 0x0506,
-        0x0508, 0x0508,
-        0x050a, 0x050a,
-        0x050c, 0x050c,
-        0x050e, 0x050e,
-        0x0510, 0x0510,
-        0x0512, 0x0512,
-        0x0514, 0x0514,
-        0x0516, 0x0516,
-        0x0518, 0x0518,
-        0x051a, 0x051a,
-        0x051c, 0x051c,
-        0x051e, 0x051e,
-        0x0520, 0x0520,
-        0x0522, 0x0522,
-        0x0524, 0x0524,
-        0x0531, 0x0556,
-        0x10a0, 0x10c5,
-        0x1e00, 0x1e00,
-        0x1e02, 0x1e02,
-        0x1e04, 0x1e04,
-        0x1e06, 0x1e06,
-        0x1e08, 0x1e08,
-        0x1e0a, 0x1e0a,
-        0x1e0c, 0x1e0c,
-        0x1e0e, 0x1e0e,
-        0x1e10, 0x1e10,
-        0x1e12, 0x1e12,
-        0x1e14, 0x1e14,
-        0x1e16, 0x1e16,
-        0x1e18, 0x1e18,
-        0x1e1a, 0x1e1a,
-        0x1e1c, 0x1e1c,
-        0x1e1e, 0x1e1e,
-        0x1e20, 0x1e20,
-        0x1e22, 0x1e22,
-        0x1e24, 0x1e24,
-        0x1e26, 0x1e26,
-        0x1e28, 0x1e28,
-        0x1e2a, 0x1e2a,
-        0x1e2c, 0x1e2c,
-        0x1e2e, 0x1e2e,
-        0x1e30, 0x1e30,
-        0x1e32, 0x1e32,
-        0x1e34, 0x1e34,
-        0x1e36, 0x1e36,
-        0x1e38, 0x1e38,
-        0x1e3a, 0x1e3a,
-        0x1e3c, 0x1e3c,
-        0x1e3e, 0x1e3e,
-        0x1e40, 0x1e40,
-        0x1e42, 0x1e42,
-        0x1e44, 0x1e44,
-        0x1e46, 0x1e46,
-        0x1e48, 0x1e48,
-        0x1e4a, 0x1e4a,
-        0x1e4c, 0x1e4c,
-        0x1e4e, 0x1e4e,
-        0x1e50, 0x1e50,
-        0x1e52, 0x1e52,
-        0x1e54, 0x1e54,
-        0x1e56, 0x1e56,
-        0x1e58, 0x1e58,
-        0x1e5a, 0x1e5a,
-        0x1e5c, 0x1e5c,
-        0x1e5e, 0x1e5e,
-        0x1e60, 0x1e60,
-        0x1e62, 0x1e62,
-        0x1e64, 0x1e64,
-        0x1e66, 0x1e66,
-        0x1e68, 0x1e68,
-        0x1e6a, 0x1e6a,
-        0x1e6c, 0x1e6c,
-        0x1e6e, 0x1e6e,
-        0x1e70, 0x1e70,
-        0x1e72, 0x1e72,
-        0x1e74, 0x1e74,
-        0x1e76, 0x1e76,
-        0x1e78, 0x1e78,
-        0x1e7a, 0x1e7a,
-        0x1e7c, 0x1e7c,
-        0x1e7e, 0x1e7e,
-        0x1e80, 0x1e80,
-        0x1e82, 0x1e82,
-        0x1e84, 0x1e84,
-        0x1e86, 0x1e86,
-        0x1e88, 0x1e88,
-        0x1e8a, 0x1e8a,
-        0x1e8c, 0x1e8c,
-        0x1e8e, 0x1e8e,
-        0x1e90, 0x1e90,
-        0x1e92, 0x1e92,
-        0x1e94, 0x1e94,
-        0x1e9e, 0x1e9e,
-        0x1ea0, 0x1ea0,
-        0x1ea2, 0x1ea2,
-        0x1ea4, 0x1ea4,
-        0x1ea6, 0x1ea6,
-        0x1ea8, 0x1ea8,
-        0x1eaa, 0x1eaa,
-        0x1eac, 0x1eac,
-        0x1eae, 0x1eae,
-        0x1eb0, 0x1eb0,
-        0x1eb2, 0x1eb2,
-        0x1eb4, 0x1eb4,
-        0x1eb6, 0x1eb6,
-        0x1eb8, 0x1eb8,
-        0x1eba, 0x1eba,
-        0x1ebc, 0x1ebc,
-        0x1ebe, 0x1ebe,
-        0x1ec0, 0x1ec0,
-        0x1ec2, 0x1ec2,
-        0x1ec4, 0x1ec4,
-        0x1ec6, 0x1ec6,
-        0x1ec8, 0x1ec8,
-        0x1eca, 0x1eca,
-        0x1ecc, 0x1ecc,
-        0x1ece, 0x1ece,
-        0x1ed0, 0x1ed0,
-        0x1ed2, 0x1ed2,
-        0x1ed4, 0x1ed4,
-        0x1ed6, 0x1ed6,
-        0x1ed8, 0x1ed8,
-        0x1eda, 0x1eda,
-        0x1edc, 0x1edc,
-        0x1ede, 0x1ede,
-        0x1ee0, 0x1ee0,
-        0x1ee2, 0x1ee2,
-        0x1ee4, 0x1ee4,
-        0x1ee6, 0x1ee6,
-        0x1ee8, 0x1ee8,
-        0x1eea, 0x1eea,
-        0x1eec, 0x1eec,
-        0x1eee, 0x1eee,
-        0x1ef0, 0x1ef0,
-        0x1ef2, 0x1ef2,
-        0x1ef4, 0x1ef4,
-        0x1ef6, 0x1ef6,
-        0x1ef8, 0x1ef8,
-        0x1efa, 0x1efa,
-        0x1efc, 0x1efc,
-        0x1efe, 0x1efe,
-        0x1f08, 0x1f0f,
-        0x1f18, 0x1f1d,
-        0x1f28, 0x1f2f,
-        0x1f38, 0x1f3f,
-        0x1f48, 0x1f4d,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f5f,
-        0x1f68, 0x1f6f,
-        0x1fb8, 0x1fbb,
-        0x1fc8, 0x1fcb,
-        0x1fd8, 0x1fdb,
-        0x1fe8, 0x1fec,
-        0x1ff8, 0x1ffb,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210b, 0x210d,
-        0x2110, 0x2112,
-        0x2115, 0x2115,
-        0x2119, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x212d,
-        0x2130, 0x2133,
-        0x213e, 0x213f,
-        0x2145, 0x2145,
-        0x2160, 0x216f,
-        0x2183, 0x2183,
-        0x24b6, 0x24cf,
-        0x2c00, 0x2c2e,
-        0x2c60, 0x2c60,
-        0x2c62, 0x2c64,
-        0x2c67, 0x2c67,
-        0x2c69, 0x2c69,
-        0x2c6b, 0x2c6b,
-        0x2c6d, 0x2c70,
-        0x2c72, 0x2c72,
-        0x2c75, 0x2c75,
-        0x2c7e, 0x2c80,
-        0x2c82, 0x2c82,
-        0x2c84, 0x2c84,
-        0x2c86, 0x2c86,
-        0x2c88, 0x2c88,
-        0x2c8a, 0x2c8a,
-        0x2c8c, 0x2c8c,
-        0x2c8e, 0x2c8e,
-        0x2c90, 0x2c90,
-        0x2c92, 0x2c92,
-        0x2c94, 0x2c94,
-        0x2c96, 0x2c96,
-        0x2c98, 0x2c98,
-        0x2c9a, 0x2c9a,
-        0x2c9c, 0x2c9c,
-        0x2c9e, 0x2c9e,
-        0x2ca0, 0x2ca0,
-        0x2ca2, 0x2ca2,
-        0x2ca4, 0x2ca4,
-        0x2ca6, 0x2ca6,
-        0x2ca8, 0x2ca8,
-        0x2caa, 0x2caa,
-        0x2cac, 0x2cac,
-        0x2cae, 0x2cae,
-        0x2cb0, 0x2cb0,
-        0x2cb2, 0x2cb2,
-        0x2cb4, 0x2cb4,
-        0x2cb6, 0x2cb6,
-        0x2cb8, 0x2cb8,
-        0x2cba, 0x2cba,
-        0x2cbc, 0x2cbc,
-        0x2cbe, 0x2cbe,
-        0x2cc0, 0x2cc0,
-        0x2cc2, 0x2cc2,
-        0x2cc4, 0x2cc4,
-        0x2cc6, 0x2cc6,
-        0x2cc8, 0x2cc8,
-        0x2cca, 0x2cca,
-        0x2ccc, 0x2ccc,
-        0x2cce, 0x2cce,
-        0x2cd0, 0x2cd0,
-        0x2cd2, 0x2cd2,
-        0x2cd4, 0x2cd4,
-        0x2cd6, 0x2cd6,
-        0x2cd8, 0x2cd8,
-        0x2cda, 0x2cda,
-        0x2cdc, 0x2cdc,
-        0x2cde, 0x2cde,
-        0x2ce0, 0x2ce0,
-        0x2ce2, 0x2ce2,
-        0x2ceb, 0x2ceb,
-        0x2ced, 0x2ced,
-        0xa640, 0xa640,
-        0xa642, 0xa642,
-        0xa644, 0xa644,
-        0xa646, 0xa646,
-        0xa648, 0xa648,
-        0xa64a, 0xa64a,
-        0xa64c, 0xa64c,
-        0xa64e, 0xa64e,
-        0xa650, 0xa650,
-        0xa652, 0xa652,
-        0xa654, 0xa654,
-        0xa656, 0xa656,
-        0xa658, 0xa658,
-        0xa65a, 0xa65a,
-        0xa65c, 0xa65c,
-        0xa65e, 0xa65e,
-        0xa662, 0xa662,
-        0xa664, 0xa664,
-        0xa666, 0xa666,
-        0xa668, 0xa668,
-        0xa66a, 0xa66a,
-        0xa66c, 0xa66c,
-        0xa680, 0xa680,
-        0xa682, 0xa682,
-        0xa684, 0xa684,
-        0xa686, 0xa686,
-        0xa688, 0xa688,
-        0xa68a, 0xa68a,
-        0xa68c, 0xa68c,
-        0xa68e, 0xa68e,
-        0xa690, 0xa690,
-        0xa692, 0xa692,
-        0xa694, 0xa694,
-        0xa696, 0xa696,
-        0xa722, 0xa722,
-        0xa724, 0xa724,
-        0xa726, 0xa726,
-        0xa728, 0xa728,
-        0xa72a, 0xa72a,
-        0xa72c, 0xa72c,
-        0xa72e, 0xa72e,
-        0xa732, 0xa732,
-        0xa734, 0xa734,
-        0xa736, 0xa736,
-        0xa738, 0xa738,
-        0xa73a, 0xa73a,
-        0xa73c, 0xa73c,
-        0xa73e, 0xa73e,
-        0xa740, 0xa740,
-        0xa742, 0xa742,
-        0xa744, 0xa744,
-        0xa746, 0xa746,
-        0xa748, 0xa748,
-        0xa74a, 0xa74a,
-        0xa74c, 0xa74c,
-        0xa74e, 0xa74e,
-        0xa750, 0xa750,
-        0xa752, 0xa752,
-        0xa754, 0xa754,
-        0xa756, 0xa756,
-        0xa758, 0xa758,
-        0xa75a, 0xa75a,
-        0xa75c, 0xa75c,
-        0xa75e, 0xa75e,
-        0xa760, 0xa760,
-        0xa762, 0xa762,
-        0xa764, 0xa764,
-        0xa766, 0xa766,
-        0xa768, 0xa768,
-        0xa76a, 0xa76a,
-        0xa76c, 0xa76c,
-        0xa76e, 0xa76e,
-        0xa779, 0xa779,
-        0xa77b, 0xa77b,
-        0xa77d, 0xa77e,
-        0xa780, 0xa780,
-        0xa782, 0xa782,
-        0xa784, 0xa784,
-        0xa786, 0xa786,
-        0xa78b, 0xa78b,
-        0xff21, 0xff3a,
-        0x10400, 0x10427,
-        0x1d400, 0x1d419,
-        0x1d434, 0x1d44d,
-        0x1d468, 0x1d481,
-        0x1d49c, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b5,
-        0x1d4d0, 0x1d4e9,
-        0x1d504, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d538, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d56c, 0x1d585,
-        0x1d5a0, 0x1d5b9,
-        0x1d5d4, 0x1d5ed,
-        0x1d608, 0x1d621,
-        0x1d63c, 0x1d655,
-        0x1d670, 0x1d689,
-        0x1d6a8, 0x1d6c0,
-        0x1d6e2, 0x1d6fa,
-        0x1d71c, 0x1d734,
-        0x1d756, 0x1d76e,
-        0x1d790, 0x1d7a8,
-        0x1d7ca, 0x1d7ca,
-}; /* CR_Uppercase */
-
-/* 'Cased': Derived Property */
-static const OnigCodePoint CR_Cased[] = {
-        110,
-        0x0041, 0x005a,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x01ba,
-        0x01bc, 0x01bf,
-        0x01c4, 0x0293,
-        0x0295, 0x02b8,
-        0x02c0, 0x02c1,
-        0x02e0, 0x02e4,
-        0x0345, 0x0345,
-        0x0370, 0x0373,
-        0x0376, 0x0377,
-        0x037a, 0x037d,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03f5,
-        0x03f7, 0x0481,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0561, 0x0587,
-        0x10a0, 0x10c5,
-        0x1d00, 0x1dbf,
-        0x1e00, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x2090, 0x2094,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2119, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x212d,
-        0x212f, 0x2134,
-        0x2139, 0x2139,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x214e, 0x214e,
-        0x2160, 0x217f,
-        0x2183, 0x2184,
-        0x24b6, 0x24e9,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2ce4,
-        0x2ceb, 0x2cee,
-        0x2d00, 0x2d25,
-        0xa640, 0xa65f,
-        0xa662, 0xa66d,
-        0xa680, 0xa697,
-        0xa722, 0xa787,
-        0xa78b, 0xa78c,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xff21, 0xff3a,
-        0xff41, 0xff5a,
-        0x10400, 0x1044f,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-}; /* CR_Cased */
-
-/* 'Case_Ignorable': Derived Property */
-static const OnigCodePoint CR_Case_Ignorable[] = {
-        266,
-        0x0027, 0x0027,
-        0x002e, 0x002e,
-        0x003a, 0x003a,
-        0x005e, 0x005e,
-        0x0060, 0x0060,
-        0x00a8, 0x00a8,
-        0x00ad, 0x00ad,
-        0x00af, 0x00af,
-        0x00b4, 0x00b4,
-        0x00b7, 0x00b8,
-        0x02b0, 0x036f,
-        0x0374, 0x0375,
-        0x037a, 0x037a,
-        0x0384, 0x0385,
-        0x0387, 0x0387,
-        0x0483, 0x0489,
-        0x0559, 0x0559,
-        0x0591, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x05f4, 0x05f4,
-        0x0600, 0x0603,
-        0x0610, 0x061a,
-        0x0640, 0x0640,
-        0x064b, 0x065e,
-        0x0670, 0x0670,
-        0x06d6, 0x06e8,
-        0x06ea, 0x06ed,
-        0x070f, 0x070f,
-        0x0711, 0x0711,
-        0x0730, 0x074a,
-        0x07a6, 0x07b0,
-        0x07eb, 0x07f5,
-        0x07fa, 0x07fa,
-        0x0816, 0x082d,
-        0x0900, 0x0902,
-        0x093c, 0x093c,
-        0x0941, 0x0948,
-        0x094d, 0x094d,
-        0x0951, 0x0955,
-        0x0962, 0x0963,
-        0x0971, 0x0971,
-        0x0981, 0x0981,
-        0x09bc, 0x09bc,
-        0x09c1, 0x09c4,
-        0x09cd, 0x09cd,
-        0x09e2, 0x09e3,
-        0x0a01, 0x0a02,
-        0x0a3c, 0x0a3c,
-        0x0a41, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a70, 0x0a71,
-        0x0a75, 0x0a75,
-        0x0a81, 0x0a82,
-        0x0abc, 0x0abc,
-        0x0ac1, 0x0ac5,
-        0x0ac7, 0x0ac8,
-        0x0acd, 0x0acd,
-        0x0ae2, 0x0ae3,
-        0x0b01, 0x0b01,
-        0x0b3c, 0x0b3c,
-        0x0b3f, 0x0b3f,
-        0x0b41, 0x0b44,
-        0x0b4d, 0x0b4d,
-        0x0b56, 0x0b56,
-        0x0b62, 0x0b63,
-        0x0b82, 0x0b82,
-        0x0bc0, 0x0bc0,
-        0x0bcd, 0x0bcd,
-        0x0c3e, 0x0c40,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c62, 0x0c63,
-        0x0cbc, 0x0cbc,
-        0x0cbf, 0x0cbf,
-        0x0cc6, 0x0cc6,
-        0x0ccc, 0x0ccd,
-        0x0ce2, 0x0ce3,
-        0x0d41, 0x0d44,
-        0x0d4d, 0x0d4d,
-        0x0d62, 0x0d63,
-        0x0dca, 0x0dca,
-        0x0dd2, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0e31, 0x0e31,
-        0x0e34, 0x0e3a,
-        0x0e46, 0x0e4e,
-        0x0eb1, 0x0eb1,
-        0x0eb4, 0x0eb9,
-        0x0ebb, 0x0ebc,
-        0x0ec6, 0x0ec6,
-        0x0ec8, 0x0ecd,
-        0x0f18, 0x0f19,
-        0x0f35, 0x0f35,
-        0x0f37, 0x0f37,
-        0x0f39, 0x0f39,
-        0x0f71, 0x0f7e,
-        0x0f80, 0x0f84,
-        0x0f86, 0x0f87,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fc6, 0x0fc6,
-        0x102d, 0x1030,
-        0x1032, 0x1037,
-        0x1039, 0x103a,
-        0x103d, 0x103e,
-        0x1058, 0x1059,
-        0x105e, 0x1060,
-        0x1071, 0x1074,
-        0x1082, 0x1082,
-        0x1085, 0x1086,
-        0x108d, 0x108d,
-        0x109d, 0x109d,
-        0x10fc, 0x10fc,
-        0x135f, 0x135f,
-        0x1712, 0x1714,
-        0x1732, 0x1734,
-        0x1752, 0x1753,
-        0x1772, 0x1773,
-        0x17b4, 0x17b5,
-        0x17b7, 0x17bd,
-        0x17c6, 0x17c6,
-        0x17c9, 0x17d3,
-        0x17d7, 0x17d7,
-        0x17dd, 0x17dd,
-        0x180b, 0x180d,
-        0x1843, 0x1843,
-        0x18a9, 0x18a9,
-        0x1920, 0x1922,
-        0x1927, 0x1928,
-        0x1932, 0x1932,
-        0x1939, 0x193b,
-        0x1a17, 0x1a18,
-        0x1a56, 0x1a56,
-        0x1a58, 0x1a5e,
-        0x1a60, 0x1a60,
-        0x1a62, 0x1a62,
-        0x1a65, 0x1a6c,
-        0x1a73, 0x1a7c,
-        0x1a7f, 0x1a7f,
-        0x1aa7, 0x1aa7,
-        0x1b00, 0x1b03,
-        0x1b34, 0x1b34,
-        0x1b36, 0x1b3a,
-        0x1b3c, 0x1b3c,
-        0x1b42, 0x1b42,
-        0x1b6b, 0x1b73,
-        0x1b80, 0x1b81,
-        0x1ba2, 0x1ba5,
-        0x1ba8, 0x1ba9,
-        0x1c2c, 0x1c33,
-        0x1c36, 0x1c37,
-        0x1c78, 0x1c7d,
-        0x1cd0, 0x1cd2,
-        0x1cd4, 0x1ce0,
-        0x1ce2, 0x1ce8,
-        0x1ced, 0x1ced,
-        0x1d2c, 0x1d61,
-        0x1d78, 0x1d78,
-        0x1d9b, 0x1de6,
-        0x1dfd, 0x1dff,
-        0x1fbd, 0x1fbd,
-        0x1fbf, 0x1fc1,
-        0x1fcd, 0x1fcf,
-        0x1fdd, 0x1fdf,
-        0x1fed, 0x1fef,
-        0x1ffd, 0x1ffe,
-        0x200b, 0x200f,
-        0x2018, 0x2019,
-        0x2024, 0x2024,
-        0x2027, 0x2027,
-        0x202a, 0x202e,
-        0x2060, 0x2064,
-        0x206a, 0x206f,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x20d0, 0x20f0,
-        0x2c7d, 0x2c7d,
-        0x2cef, 0x2cf1,
-        0x2d6f, 0x2d6f,
-        0x2de0, 0x2dff,
-        0x2e2f, 0x2e2f,
-        0x3005, 0x3005,
-        0x302a, 0x302f,
-        0x3031, 0x3035,
-        0x303b, 0x303b,
-        0x3099, 0x309e,
-        0x30fc, 0x30fe,
-        0xa015, 0xa015,
-        0xa4f8, 0xa4fd,
-        0xa60c, 0xa60c,
-        0xa66f, 0xa672,
-        0xa67c, 0xa67d,
-        0xa67f, 0xa67f,
-        0xa6f0, 0xa6f1,
-        0xa700, 0xa721,
-        0xa770, 0xa770,
-        0xa788, 0xa78a,
-        0xa802, 0xa802,
-        0xa806, 0xa806,
-        0xa80b, 0xa80b,
-        0xa825, 0xa826,
-        0xa8c4, 0xa8c4,
-        0xa8e0, 0xa8f1,
-        0xa926, 0xa92d,
-        0xa947, 0xa951,
-        0xa980, 0xa982,
-        0xa9b3, 0xa9b3,
-        0xa9b6, 0xa9b9,
-        0xa9bc, 0xa9bc,
-        0xa9cf, 0xa9cf,
-        0xaa29, 0xaa2e,
-        0xaa31, 0xaa32,
-        0xaa35, 0xaa36,
-        0xaa43, 0xaa43,
-        0xaa4c, 0xaa4c,
-        0xaa70, 0xaa70,
-        0xaab0, 0xaab0,
-        0xaab2, 0xaab4,
-        0xaab7, 0xaab8,
-        0xaabe, 0xaabf,
-        0xaac1, 0xaac1,
-        0xaadd, 0xaadd,
-        0xabe5, 0xabe5,
-        0xabe8, 0xabe8,
-        0xabed, 0xabed,
-        0xfb1e, 0xfb1e,
-        0xfe00, 0xfe0f,
-        0xfe13, 0xfe13,
-        0xfe20, 0xfe26,
-        0xfe52, 0xfe52,
-        0xfe55, 0xfe55,
-        0xfeff, 0xfeff,
-        0xff07, 0xff07,
-        0xff0e, 0xff0e,
-        0xff1a, 0xff1a,
-        0xff3e, 0xff3e,
-        0xff40, 0xff40,
-        0xff70, 0xff70,
-        0xff9e, 0xff9f,
-        0xffe3, 0xffe3,
-        0xfff9, 0xfffb,
-        0x101fd, 0x101fd,
-        0x10a01, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a0f,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a3f,
-        0x11080, 0x11081,
-        0x110b3, 0x110b6,
-        0x110b9, 0x110ba,
-        0x110bd, 0x110bd,
-        0x1d167, 0x1d169,
-        0x1d173, 0x1d182,
-        0x1d185, 0x1d18b,
-        0x1d1aa, 0x1d1ad,
-        0x1d242, 0x1d244,
-        0xe0001, 0xe0001,
-        0xe0020, 0xe007f,
-        0xe0100, 0xe01ef,
-}; /* CR_Case_Ignorable */
-
-/* 'Changes_When_Lowercased': Derived Property */
-static const OnigCodePoint CR_Changes_When_Lowercased[] = {
-        557,
-        0x0041, 0x005a,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00de,
-        0x0100, 0x0100,
-        0x0102, 0x0102,
-        0x0104, 0x0104,
-        0x0106, 0x0106,
-        0x0108, 0x0108,
-        0x010a, 0x010a,
-        0x010c, 0x010c,
-        0x010e, 0x010e,
-        0x0110, 0x0110,
-        0x0112, 0x0112,
-        0x0114, 0x0114,
-        0x0116, 0x0116,
-        0x0118, 0x0118,
-        0x011a, 0x011a,
-        0x011c, 0x011c,
-        0x011e, 0x011e,
-        0x0120, 0x0120,
-        0x0122, 0x0122,
-        0x0124, 0x0124,
-        0x0126, 0x0126,
-        0x0128, 0x0128,
-        0x012a, 0x012a,
-        0x012c, 0x012c,
-        0x012e, 0x012e,
-        0x0130, 0x0130,
-        0x0132, 0x0132,
-        0x0134, 0x0134,
-        0x0136, 0x0136,
-        0x0139, 0x0139,
-        0x013b, 0x013b,
-        0x013d, 0x013d,
-        0x013f, 0x013f,
-        0x0141, 0x0141,
-        0x0143, 0x0143,
-        0x0145, 0x0145,
-        0x0147, 0x0147,
-        0x014a, 0x014a,
-        0x014c, 0x014c,
-        0x014e, 0x014e,
-        0x0150, 0x0150,
-        0x0152, 0x0152,
-        0x0154, 0x0154,
-        0x0156, 0x0156,
-        0x0158, 0x0158,
-        0x015a, 0x015a,
-        0x015c, 0x015c,
-        0x015e, 0x015e,
-        0x0160, 0x0160,
-        0x0162, 0x0162,
-        0x0164, 0x0164,
-        0x0166, 0x0166,
-        0x0168, 0x0168,
-        0x016a, 0x016a,
-        0x016c, 0x016c,
-        0x016e, 0x016e,
-        0x0170, 0x0170,
-        0x0172, 0x0172,
-        0x0174, 0x0174,
-        0x0176, 0x0176,
-        0x0178, 0x0179,
-        0x017b, 0x017b,
-        0x017d, 0x017d,
-        0x0181, 0x0182,
-        0x0184, 0x0184,
-        0x0186, 0x0187,
-        0x0189, 0x018b,
-        0x018e, 0x0191,
-        0x0193, 0x0194,
-        0x0196, 0x0198,
-        0x019c, 0x019d,
-        0x019f, 0x01a0,
-        0x01a2, 0x01a2,
-        0x01a4, 0x01a4,
-        0x01a6, 0x01a7,
-        0x01a9, 0x01a9,
-        0x01ac, 0x01ac,
-        0x01ae, 0x01af,
-        0x01b1, 0x01b3,
-        0x01b5, 0x01b5,
-        0x01b7, 0x01b8,
-        0x01bc, 0x01bc,
-        0x01c4, 0x01c5,
-        0x01c7, 0x01c8,
-        0x01ca, 0x01cb,
-        0x01cd, 0x01cd,
-        0x01cf, 0x01cf,
-        0x01d1, 0x01d1,
-        0x01d3, 0x01d3,
-        0x01d5, 0x01d5,
-        0x01d7, 0x01d7,
-        0x01d9, 0x01d9,
-        0x01db, 0x01db,
-        0x01de, 0x01de,
-        0x01e0, 0x01e0,
-        0x01e2, 0x01e2,
-        0x01e4, 0x01e4,
-        0x01e6, 0x01e6,
-        0x01e8, 0x01e8,
-        0x01ea, 0x01ea,
-        0x01ec, 0x01ec,
-        0x01ee, 0x01ee,
-        0x01f1, 0x01f2,
-        0x01f4, 0x01f4,
-        0x01f6, 0x01f8,
-        0x01fa, 0x01fa,
-        0x01fc, 0x01fc,
-        0x01fe, 0x01fe,
-        0x0200, 0x0200,
-        0x0202, 0x0202,
-        0x0204, 0x0204,
-        0x0206, 0x0206,
-        0x0208, 0x0208,
-        0x020a, 0x020a,
-        0x020c, 0x020c,
-        0x020e, 0x020e,
-        0x0210, 0x0210,
-        0x0212, 0x0212,
-        0x0214, 0x0214,
-        0x0216, 0x0216,
-        0x0218, 0x0218,
-        0x021a, 0x021a,
-        0x021c, 0x021c,
-        0x021e, 0x021e,
-        0x0220, 0x0220,
-        0x0222, 0x0222,
-        0x0224, 0x0224,
-        0x0226, 0x0226,
-        0x0228, 0x0228,
-        0x022a, 0x022a,
-        0x022c, 0x022c,
-        0x022e, 0x022e,
-        0x0230, 0x0230,
-        0x0232, 0x0232,
-        0x023a, 0x023b,
-        0x023d, 0x023e,
-        0x0241, 0x0241,
-        0x0243, 0x0246,
-        0x0248, 0x0248,
-        0x024a, 0x024a,
-        0x024c, 0x024c,
-        0x024e, 0x024e,
-        0x0370, 0x0370,
-        0x0372, 0x0372,
-        0x0376, 0x0376,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x038f,
-        0x0391, 0x03a1,
-        0x03a3, 0x03ab,
-        0x03cf, 0x03cf,
-        0x03d8, 0x03d8,
-        0x03da, 0x03da,
-        0x03dc, 0x03dc,
-        0x03de, 0x03de,
-        0x03e0, 0x03e0,
-        0x03e2, 0x03e2,
-        0x03e4, 0x03e4,
-        0x03e6, 0x03e6,
-        0x03e8, 0x03e8,
-        0x03ea, 0x03ea,
-        0x03ec, 0x03ec,
-        0x03ee, 0x03ee,
-        0x03f4, 0x03f4,
-        0x03f7, 0x03f7,
-        0x03f9, 0x03fa,
-        0x03fd, 0x042f,
-        0x0460, 0x0460,
-        0x0462, 0x0462,
-        0x0464, 0x0464,
-        0x0466, 0x0466,
-        0x0468, 0x0468,
-        0x046a, 0x046a,
-        0x046c, 0x046c,
-        0x046e, 0x046e,
-        0x0470, 0x0470,
-        0x0472, 0x0472,
-        0x0474, 0x0474,
-        0x0476, 0x0476,
-        0x0478, 0x0478,
-        0x047a, 0x047a,
-        0x047c, 0x047c,
-        0x047e, 0x047e,
-        0x0480, 0x0480,
-        0x048a, 0x048a,
-        0x048c, 0x048c,
-        0x048e, 0x048e,
-        0x0490, 0x0490,
-        0x0492, 0x0492,
-        0x0494, 0x0494,
-        0x0496, 0x0496,
-        0x0498, 0x0498,
-        0x049a, 0x049a,
-        0x049c, 0x049c,
-        0x049e, 0x049e,
-        0x04a0, 0x04a0,
-        0x04a2, 0x04a2,
-        0x04a4, 0x04a4,
-        0x04a6, 0x04a6,
-        0x04a8, 0x04a8,
-        0x04aa, 0x04aa,
-        0x04ac, 0x04ac,
-        0x04ae, 0x04ae,
-        0x04b0, 0x04b0,
-        0x04b2, 0x04b2,
-        0x04b4, 0x04b4,
-        0x04b6, 0x04b6,
-        0x04b8, 0x04b8,
-        0x04ba, 0x04ba,
-        0x04bc, 0x04bc,
-        0x04be, 0x04be,
-        0x04c0, 0x04c1,
-        0x04c3, 0x04c3,
-        0x04c5, 0x04c5,
-        0x04c7, 0x04c7,
-        0x04c9, 0x04c9,
-        0x04cb, 0x04cb,
-        0x04cd, 0x04cd,
-        0x04d0, 0x04d0,
-        0x04d2, 0x04d2,
-        0x04d4, 0x04d4,
-        0x04d6, 0x04d6,
-        0x04d8, 0x04d8,
-        0x04da, 0x04da,
-        0x04dc, 0x04dc,
-        0x04de, 0x04de,
-        0x04e0, 0x04e0,
-        0x04e2, 0x04e2,
-        0x04e4, 0x04e4,
-        0x04e6, 0x04e6,
-        0x04e8, 0x04e8,
-        0x04ea, 0x04ea,
-        0x04ec, 0x04ec,
-        0x04ee, 0x04ee,
-        0x04f0, 0x04f0,
-        0x04f2, 0x04f2,
-        0x04f4, 0x04f4,
-        0x04f6, 0x04f6,
-        0x04f8, 0x04f8,
-        0x04fa, 0x04fa,
-        0x04fc, 0x04fc,
-        0x04fe, 0x04fe,
-        0x0500, 0x0500,
-        0x0502, 0x0502,
-        0x0504, 0x0504,
-        0x0506, 0x0506,
-        0x0508, 0x0508,
-        0x050a, 0x050a,
-        0x050c, 0x050c,
-        0x050e, 0x050e,
-        0x0510, 0x0510,
-        0x0512, 0x0512,
-        0x0514, 0x0514,
-        0x0516, 0x0516,
-        0x0518, 0x0518,
-        0x051a, 0x051a,
-        0x051c, 0x051c,
-        0x051e, 0x051e,
-        0x0520, 0x0520,
-        0x0522, 0x0522,
-        0x0524, 0x0524,
-        0x0531, 0x0556,
-        0x10a0, 0x10c5,
-        0x1e00, 0x1e00,
-        0x1e02, 0x1e02,
-        0x1e04, 0x1e04,
-        0x1e06, 0x1e06,
-        0x1e08, 0x1e08,
-        0x1e0a, 0x1e0a,
-        0x1e0c, 0x1e0c,
-        0x1e0e, 0x1e0e,
-        0x1e10, 0x1e10,
-        0x1e12, 0x1e12,
-        0x1e14, 0x1e14,
-        0x1e16, 0x1e16,
-        0x1e18, 0x1e18,
-        0x1e1a, 0x1e1a,
-        0x1e1c, 0x1e1c,
-        0x1e1e, 0x1e1e,
-        0x1e20, 0x1e20,
-        0x1e22, 0x1e22,
-        0x1e24, 0x1e24,
-        0x1e26, 0x1e26,
-        0x1e28, 0x1e28,
-        0x1e2a, 0x1e2a,
-        0x1e2c, 0x1e2c,
-        0x1e2e, 0x1e2e,
-        0x1e30, 0x1e30,
-        0x1e32, 0x1e32,
-        0x1e34, 0x1e34,
-        0x1e36, 0x1e36,
-        0x1e38, 0x1e38,
-        0x1e3a, 0x1e3a,
-        0x1e3c, 0x1e3c,
-        0x1e3e, 0x1e3e,
-        0x1e40, 0x1e40,
-        0x1e42, 0x1e42,
-        0x1e44, 0x1e44,
-        0x1e46, 0x1e46,
-        0x1e48, 0x1e48,
-        0x1e4a, 0x1e4a,
-        0x1e4c, 0x1e4c,
-        0x1e4e, 0x1e4e,
-        0x1e50, 0x1e50,
-        0x1e52, 0x1e52,
-        0x1e54, 0x1e54,
-        0x1e56, 0x1e56,
-        0x1e58, 0x1e58,
-        0x1e5a, 0x1e5a,
-        0x1e5c, 0x1e5c,
-        0x1e5e, 0x1e5e,
-        0x1e60, 0x1e60,
-        0x1e62, 0x1e62,
-        0x1e64, 0x1e64,
-        0x1e66, 0x1e66,
-        0x1e68, 0x1e68,
-        0x1e6a, 0x1e6a,
-        0x1e6c, 0x1e6c,
-        0x1e6e, 0x1e6e,
-        0x1e70, 0x1e70,
-        0x1e72, 0x1e72,
-        0x1e74, 0x1e74,
-        0x1e76, 0x1e76,
-        0x1e78, 0x1e78,
-        0x1e7a, 0x1e7a,
-        0x1e7c, 0x1e7c,
-        0x1e7e, 0x1e7e,
-        0x1e80, 0x1e80,
-        0x1e82, 0x1e82,
-        0x1e84, 0x1e84,
-        0x1e86, 0x1e86,
-        0x1e88, 0x1e88,
-        0x1e8a, 0x1e8a,
-        0x1e8c, 0x1e8c,
-        0x1e8e, 0x1e8e,
-        0x1e90, 0x1e90,
-        0x1e92, 0x1e92,
-        0x1e94, 0x1e94,
-        0x1e9e, 0x1e9e,
-        0x1ea0, 0x1ea0,
-        0x1ea2, 0x1ea2,
-        0x1ea4, 0x1ea4,
-        0x1ea6, 0x1ea6,
-        0x1ea8, 0x1ea8,
-        0x1eaa, 0x1eaa,
-        0x1eac, 0x1eac,
-        0x1eae, 0x1eae,
-        0x1eb0, 0x1eb0,
-        0x1eb2, 0x1eb2,
-        0x1eb4, 0x1eb4,
-        0x1eb6, 0x1eb6,
-        0x1eb8, 0x1eb8,
-        0x1eba, 0x1eba,
-        0x1ebc, 0x1ebc,
-        0x1ebe, 0x1ebe,
-        0x1ec0, 0x1ec0,
-        0x1ec2, 0x1ec2,
-        0x1ec4, 0x1ec4,
-        0x1ec6, 0x1ec6,
-        0x1ec8, 0x1ec8,
-        0x1eca, 0x1eca,
-        0x1ecc, 0x1ecc,
-        0x1ece, 0x1ece,
-        0x1ed0, 0x1ed0,
-        0x1ed2, 0x1ed2,
-        0x1ed4, 0x1ed4,
-        0x1ed6, 0x1ed6,
-        0x1ed8, 0x1ed8,
-        0x1eda, 0x1eda,
-        0x1edc, 0x1edc,
-        0x1ede, 0x1ede,
-        0x1ee0, 0x1ee0,
-        0x1ee2, 0x1ee2,
-        0x1ee4, 0x1ee4,
-        0x1ee6, 0x1ee6,
-        0x1ee8, 0x1ee8,
-        0x1eea, 0x1eea,
-        0x1eec, 0x1eec,
-        0x1eee, 0x1eee,
-        0x1ef0, 0x1ef0,
-        0x1ef2, 0x1ef2,
-        0x1ef4, 0x1ef4,
-        0x1ef6, 0x1ef6,
-        0x1ef8, 0x1ef8,
-        0x1efa, 0x1efa,
-        0x1efc, 0x1efc,
-        0x1efe, 0x1efe,
-        0x1f08, 0x1f0f,
-        0x1f18, 0x1f1d,
-        0x1f28, 0x1f2f,
-        0x1f38, 0x1f3f,
-        0x1f48, 0x1f4d,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f5f,
-        0x1f68, 0x1f6f,
-        0x1f88, 0x1f8f,
-        0x1f98, 0x1f9f,
-        0x1fa8, 0x1faf,
-        0x1fb8, 0x1fbc,
-        0x1fc8, 0x1fcc,
-        0x1fd8, 0x1fdb,
-        0x1fe8, 0x1fec,
-        0x1ff8, 0x1ffc,
-        0x2126, 0x2126,
-        0x212a, 0x212b,
-        0x2132, 0x2132,
-        0x2160, 0x216f,
-        0x2183, 0x2183,
-        0x24b6, 0x24cf,
-        0x2c00, 0x2c2e,
-        0x2c60, 0x2c60,
-        0x2c62, 0x2c64,
-        0x2c67, 0x2c67,
-        0x2c69, 0x2c69,
-        0x2c6b, 0x2c6b,
-        0x2c6d, 0x2c70,
-        0x2c72, 0x2c72,
-        0x2c75, 0x2c75,
-        0x2c7e, 0x2c80,
-        0x2c82, 0x2c82,
-        0x2c84, 0x2c84,
-        0x2c86, 0x2c86,
-        0x2c88, 0x2c88,
-        0x2c8a, 0x2c8a,
-        0x2c8c, 0x2c8c,
-        0x2c8e, 0x2c8e,
-        0x2c90, 0x2c90,
-        0x2c92, 0x2c92,
-        0x2c94, 0x2c94,
-        0x2c96, 0x2c96,
-        0x2c98, 0x2c98,
-        0x2c9a, 0x2c9a,
-        0x2c9c, 0x2c9c,
-        0x2c9e, 0x2c9e,
-        0x2ca0, 0x2ca0,
-        0x2ca2, 0x2ca2,
-        0x2ca4, 0x2ca4,
-        0x2ca6, 0x2ca6,
-        0x2ca8, 0x2ca8,
-        0x2caa, 0x2caa,
-        0x2cac, 0x2cac,
-        0x2cae, 0x2cae,
-        0x2cb0, 0x2cb0,
-        0x2cb2, 0x2cb2,
-        0x2cb4, 0x2cb4,
-        0x2cb6, 0x2cb6,
-        0x2cb8, 0x2cb8,
-        0x2cba, 0x2cba,
-        0x2cbc, 0x2cbc,
-        0x2cbe, 0x2cbe,
-        0x2cc0, 0x2cc0,
-        0x2cc2, 0x2cc2,
-        0x2cc4, 0x2cc4,
-        0x2cc6, 0x2cc6,
-        0x2cc8, 0x2cc8,
-        0x2cca, 0x2cca,
-        0x2ccc, 0x2ccc,
-        0x2cce, 0x2cce,
-        0x2cd0, 0x2cd0,
-        0x2cd2, 0x2cd2,
-        0x2cd4, 0x2cd4,
-        0x2cd6, 0x2cd6,
-        0x2cd8, 0x2cd8,
-        0x2cda, 0x2cda,
-        0x2cdc, 0x2cdc,
-        0x2cde, 0x2cde,
-        0x2ce0, 0x2ce0,
-        0x2ce2, 0x2ce2,
-        0x2ceb, 0x2ceb,
-        0x2ced, 0x2ced,
-        0xa640, 0xa640,
-        0xa642, 0xa642,
-        0xa644, 0xa644,
-        0xa646, 0xa646,
-        0xa648, 0xa648,
-        0xa64a, 0xa64a,
-        0xa64c, 0xa64c,
-        0xa64e, 0xa64e,
-        0xa650, 0xa650,
-        0xa652, 0xa652,
-        0xa654, 0xa654,
-        0xa656, 0xa656,
-        0xa658, 0xa658,
-        0xa65a, 0xa65a,
-        0xa65c, 0xa65c,
-        0xa65e, 0xa65e,
-        0xa662, 0xa662,
-        0xa664, 0xa664,
-        0xa666, 0xa666,
-        0xa668, 0xa668,
-        0xa66a, 0xa66a,
-        0xa66c, 0xa66c,
-        0xa680, 0xa680,
-        0xa682, 0xa682,
-        0xa684, 0xa684,
-        0xa686, 0xa686,
-        0xa688, 0xa688,
-        0xa68a, 0xa68a,
-        0xa68c, 0xa68c,
-        0xa68e, 0xa68e,
-        0xa690, 0xa690,
-        0xa692, 0xa692,
-        0xa694, 0xa694,
-        0xa696, 0xa696,
-        0xa722, 0xa722,
-        0xa724, 0xa724,
-        0xa726, 0xa726,
-        0xa728, 0xa728,
-        0xa72a, 0xa72a,
-        0xa72c, 0xa72c,
-        0xa72e, 0xa72e,
-        0xa732, 0xa732,
-        0xa734, 0xa734,
-        0xa736, 0xa736,
-        0xa738, 0xa738,
-        0xa73a, 0xa73a,
-        0xa73c, 0xa73c,
-        0xa73e, 0xa73e,
-        0xa740, 0xa740,
-        0xa742, 0xa742,
-        0xa744, 0xa744,
-        0xa746, 0xa746,
-        0xa748, 0xa748,
-        0xa74a, 0xa74a,
-        0xa74c, 0xa74c,
-        0xa74e, 0xa74e,
-        0xa750, 0xa750,
-        0xa752, 0xa752,
-        0xa754, 0xa754,
-        0xa756, 0xa756,
-        0xa758, 0xa758,
-        0xa75a, 0xa75a,
-        0xa75c, 0xa75c,
-        0xa75e, 0xa75e,
-        0xa760, 0xa760,
-        0xa762, 0xa762,
-        0xa764, 0xa764,
-        0xa766, 0xa766,
-        0xa768, 0xa768,
-        0xa76a, 0xa76a,
-        0xa76c, 0xa76c,
-        0xa76e, 0xa76e,
-        0xa779, 0xa779,
-        0xa77b, 0xa77b,
-        0xa77d, 0xa77e,
-        0xa780, 0xa780,
-        0xa782, 0xa782,
-        0xa784, 0xa784,
-        0xa786, 0xa786,
-        0xa78b, 0xa78b,
-        0xff21, 0xff3a,
-        0x10400, 0x10427,
-}; /* CR_Changes_When_Lowercased */
-
-/* 'Changes_When_Uppercased': Derived Property */
-static const OnigCodePoint CR_Changes_When_Uppercased[] = {
-        573,
-        0x0061, 0x007a,
-        0x00b5, 0x00b5,
-        0x00df, 0x00f6,
-        0x00f8, 0x00ff,
-        0x0101, 0x0101,
-        0x0103, 0x0103,
-        0x0105, 0x0105,
-        0x0107, 0x0107,
-        0x0109, 0x0109,
-        0x010b, 0x010b,
-        0x010d, 0x010d,
-        0x010f, 0x010f,
-        0x0111, 0x0111,
-        0x0113, 0x0113,
-        0x0115, 0x0115,
-        0x0117, 0x0117,
-        0x0119, 0x0119,
-        0x011b, 0x011b,
-        0x011d, 0x011d,
-        0x011f, 0x011f,
-        0x0121, 0x0121,
-        0x0123, 0x0123,
-        0x0125, 0x0125,
-        0x0127, 0x0127,
-        0x0129, 0x0129,
-        0x012b, 0x012b,
-        0x012d, 0x012d,
-        0x012f, 0x012f,
-        0x0131, 0x0131,
-        0x0133, 0x0133,
-        0x0135, 0x0135,
-        0x0137, 0x0137,
-        0x013a, 0x013a,
-        0x013c, 0x013c,
-        0x013e, 0x013e,
-        0x0140, 0x0140,
-        0x0142, 0x0142,
-        0x0144, 0x0144,
-        0x0146, 0x0146,
-        0x0148, 0x0149,
-        0x014b, 0x014b,
-        0x014d, 0x014d,
-        0x014f, 0x014f,
-        0x0151, 0x0151,
-        0x0153, 0x0153,
-        0x0155, 0x0155,
-        0x0157, 0x0157,
-        0x0159, 0x0159,
-        0x015b, 0x015b,
-        0x015d, 0x015d,
-        0x015f, 0x015f,
-        0x0161, 0x0161,
-        0x0163, 0x0163,
-        0x0165, 0x0165,
-        0x0167, 0x0167,
-        0x0169, 0x0169,
-        0x016b, 0x016b,
-        0x016d, 0x016d,
-        0x016f, 0x016f,
-        0x0171, 0x0171,
-        0x0173, 0x0173,
-        0x0175, 0x0175,
-        0x0177, 0x0177,
-        0x017a, 0x017a,
-        0x017c, 0x017c,
-        0x017e, 0x0180,
-        0x0183, 0x0183,
-        0x0185, 0x0185,
-        0x0188, 0x0188,
-        0x018c, 0x018c,
-        0x0192, 0x0192,
-        0x0195, 0x0195,
-        0x0199, 0x019a,
-        0x019e, 0x019e,
-        0x01a1, 0x01a1,
-        0x01a3, 0x01a3,
-        0x01a5, 0x01a5,
-        0x01a8, 0x01a8,
-        0x01ad, 0x01ad,
-        0x01b0, 0x01b0,
-        0x01b4, 0x01b4,
-        0x01b6, 0x01b6,
-        0x01b9, 0x01b9,
-        0x01bd, 0x01bd,
-        0x01bf, 0x01bf,
-        0x01c5, 0x01c6,
-        0x01c8, 0x01c9,
-        0x01cb, 0x01cc,
-        0x01ce, 0x01ce,
-        0x01d0, 0x01d0,
-        0x01d2, 0x01d2,
-        0x01d4, 0x01d4,
-        0x01d6, 0x01d6,
-        0x01d8, 0x01d8,
-        0x01da, 0x01da,
-        0x01dc, 0x01dd,
-        0x01df, 0x01df,
-        0x01e1, 0x01e1,
-        0x01e3, 0x01e3,
-        0x01e5, 0x01e5,
-        0x01e7, 0x01e7,
-        0x01e9, 0x01e9,
-        0x01eb, 0x01eb,
-        0x01ed, 0x01ed,
-        0x01ef, 0x01f0,
-        0x01f2, 0x01f3,
-        0x01f5, 0x01f5,
-        0x01f9, 0x01f9,
-        0x01fb, 0x01fb,
-        0x01fd, 0x01fd,
-        0x01ff, 0x01ff,
-        0x0201, 0x0201,
-        0x0203, 0x0203,
-        0x0205, 0x0205,
-        0x0207, 0x0207,
-        0x0209, 0x0209,
-        0x020b, 0x020b,
-        0x020d, 0x020d,
-        0x020f, 0x020f,
-        0x0211, 0x0211,
-        0x0213, 0x0213,
-        0x0215, 0x0215,
-        0x0217, 0x0217,
-        0x0219, 0x0219,
-        0x021b, 0x021b,
-        0x021d, 0x021d,
-        0x021f, 0x021f,
-        0x0223, 0x0223,
-        0x0225, 0x0225,
-        0x0227, 0x0227,
-        0x0229, 0x0229,
-        0x022b, 0x022b,
-        0x022d, 0x022d,
-        0x022f, 0x022f,
-        0x0231, 0x0231,
-        0x0233, 0x0233,
-        0x023c, 0x023c,
-        0x023f, 0x0240,
-        0x0242, 0x0242,
-        0x0247, 0x0247,
-        0x0249, 0x0249,
-        0x024b, 0x024b,
-        0x024d, 0x024d,
-        0x024f, 0x0254,
-        0x0256, 0x0257,
-        0x0259, 0x0259,
-        0x025b, 0x025b,
-        0x0260, 0x0260,
-        0x0263, 0x0263,
-        0x0268, 0x0269,
-        0x026b, 0x026b,
-        0x026f, 0x026f,
-        0x0271, 0x0272,
-        0x0275, 0x0275,
-        0x027d, 0x027d,
-        0x0280, 0x0280,
-        0x0283, 0x0283,
-        0x0288, 0x028c,
-        0x0292, 0x0292,
-        0x0345, 0x0345,
-        0x0371, 0x0371,
-        0x0373, 0x0373,
-        0x0377, 0x0377,
-        0x037b, 0x037d,
-        0x0390, 0x0390,
-        0x03ac, 0x03ce,
-        0x03d0, 0x03d1,
-        0x03d5, 0x03d7,
-        0x03d9, 0x03d9,
-        0x03db, 0x03db,
-        0x03dd, 0x03dd,
-        0x03df, 0x03df,
-        0x03e1, 0x03e1,
-        0x03e3, 0x03e3,
-        0x03e5, 0x03e5,
-        0x03e7, 0x03e7,
-        0x03e9, 0x03e9,
-        0x03eb, 0x03eb,
-        0x03ed, 0x03ed,
-        0x03ef, 0x03f2,
-        0x03f5, 0x03f5,
-        0x03f8, 0x03f8,
-        0x03fb, 0x03fb,
-        0x0430, 0x045f,
-        0x0461, 0x0461,
-        0x0463, 0x0463,
-        0x0465, 0x0465,
-        0x0467, 0x0467,
-        0x0469, 0x0469,
-        0x046b, 0x046b,
-        0x046d, 0x046d,
-        0x046f, 0x046f,
-        0x0471, 0x0471,
-        0x0473, 0x0473,
-        0x0475, 0x0475,
-        0x0477, 0x0477,
-        0x0479, 0x0479,
-        0x047b, 0x047b,
-        0x047d, 0x047d,
-        0x047f, 0x047f,
-        0x0481, 0x0481,
-        0x048b, 0x048b,
-        0x048d, 0x048d,
-        0x048f, 0x048f,
-        0x0491, 0x0491,
-        0x0493, 0x0493,
-        0x0495, 0x0495,
-        0x0497, 0x0497,
-        0x0499, 0x0499,
-        0x049b, 0x049b,
-        0x049d, 0x049d,
-        0x049f, 0x049f,
-        0x04a1, 0x04a1,
-        0x04a3, 0x04a3,
-        0x04a5, 0x04a5,
-        0x04a7, 0x04a7,
-        0x04a9, 0x04a9,
-        0x04ab, 0x04ab,
-        0x04ad, 0x04ad,
-        0x04af, 0x04af,
-        0x04b1, 0x04b1,
-        0x04b3, 0x04b3,
-        0x04b5, 0x04b5,
-        0x04b7, 0x04b7,
-        0x04b9, 0x04b9,
-        0x04bb, 0x04bb,
-        0x04bd, 0x04bd,
-        0x04bf, 0x04bf,
-        0x04c2, 0x04c2,
-        0x04c4, 0x04c4,
-        0x04c6, 0x04c6,
-        0x04c8, 0x04c8,
-        0x04ca, 0x04ca,
-        0x04cc, 0x04cc,
-        0x04ce, 0x04cf,
-        0x04d1, 0x04d1,
-        0x04d3, 0x04d3,
-        0x04d5, 0x04d5,
-        0x04d7, 0x04d7,
-        0x04d9, 0x04d9,
-        0x04db, 0x04db,
-        0x04dd, 0x04dd,
-        0x04df, 0x04df,
-        0x04e1, 0x04e1,
-        0x04e3, 0x04e3,
-        0x04e5, 0x04e5,
-        0x04e7, 0x04e7,
-        0x04e9, 0x04e9,
-        0x04eb, 0x04eb,
-        0x04ed, 0x04ed,
-        0x04ef, 0x04ef,
-        0x04f1, 0x04f1,
-        0x04f3, 0x04f3,
-        0x04f5, 0x04f5,
-        0x04f7, 0x04f7,
-        0x04f9, 0x04f9,
-        0x04fb, 0x04fb,
-        0x04fd, 0x04fd,
-        0x04ff, 0x04ff,
-        0x0501, 0x0501,
-        0x0503, 0x0503,
-        0x0505, 0x0505,
-        0x0507, 0x0507,
-        0x0509, 0x0509,
-        0x050b, 0x050b,
-        0x050d, 0x050d,
-        0x050f, 0x050f,
-        0x0511, 0x0511,
-        0x0513, 0x0513,
-        0x0515, 0x0515,
-        0x0517, 0x0517,
-        0x0519, 0x0519,
-        0x051b, 0x051b,
-        0x051d, 0x051d,
-        0x051f, 0x051f,
-        0x0521, 0x0521,
-        0x0523, 0x0523,
-        0x0525, 0x0525,
-        0x0561, 0x0587,
-        0x1d79, 0x1d79,
-        0x1d7d, 0x1d7d,
-        0x1e01, 0x1e01,
-        0x1e03, 0x1e03,
-        0x1e05, 0x1e05,
-        0x1e07, 0x1e07,
-        0x1e09, 0x1e09,
-        0x1e0b, 0x1e0b,
-        0x1e0d, 0x1e0d,
-        0x1e0f, 0x1e0f,
-        0x1e11, 0x1e11,
-        0x1e13, 0x1e13,
-        0x1e15, 0x1e15,
-        0x1e17, 0x1e17,
-        0x1e19, 0x1e19,
-        0x1e1b, 0x1e1b,
-        0x1e1d, 0x1e1d,
-        0x1e1f, 0x1e1f,
-        0x1e21, 0x1e21,
-        0x1e23, 0x1e23,
-        0x1e25, 0x1e25,
-        0x1e27, 0x1e27,
-        0x1e29, 0x1e29,
-        0x1e2b, 0x1e2b,
-        0x1e2d, 0x1e2d,
-        0x1e2f, 0x1e2f,
-        0x1e31, 0x1e31,
-        0x1e33, 0x1e33,
-        0x1e35, 0x1e35,
-        0x1e37, 0x1e37,
-        0x1e39, 0x1e39,
-        0x1e3b, 0x1e3b,
-        0x1e3d, 0x1e3d,
-        0x1e3f, 0x1e3f,
-        0x1e41, 0x1e41,
-        0x1e43, 0x1e43,
-        0x1e45, 0x1e45,
-        0x1e47, 0x1e47,
-        0x1e49, 0x1e49,
-        0x1e4b, 0x1e4b,
-        0x1e4d, 0x1e4d,
-        0x1e4f, 0x1e4f,
-        0x1e51, 0x1e51,
-        0x1e53, 0x1e53,
-        0x1e55, 0x1e55,
-        0x1e57, 0x1e57,
-        0x1e59, 0x1e59,
-        0x1e5b, 0x1e5b,
-        0x1e5d, 0x1e5d,
-        0x1e5f, 0x1e5f,
-        0x1e61, 0x1e61,
-        0x1e63, 0x1e63,
-        0x1e65, 0x1e65,
-        0x1e67, 0x1e67,
-        0x1e69, 0x1e69,
-        0x1e6b, 0x1e6b,
-        0x1e6d, 0x1e6d,
-        0x1e6f, 0x1e6f,
-        0x1e71, 0x1e71,
-        0x1e73, 0x1e73,
-        0x1e75, 0x1e75,
-        0x1e77, 0x1e77,
-        0x1e79, 0x1e79,
-        0x1e7b, 0x1e7b,
-        0x1e7d, 0x1e7d,
-        0x1e7f, 0x1e7f,
-        0x1e81, 0x1e81,
-        0x1e83, 0x1e83,
-        0x1e85, 0x1e85,
-        0x1e87, 0x1e87,
-        0x1e89, 0x1e89,
-        0x1e8b, 0x1e8b,
-        0x1e8d, 0x1e8d,
-        0x1e8f, 0x1e8f,
-        0x1e91, 0x1e91,
-        0x1e93, 0x1e93,
-        0x1e95, 0x1e9b,
-        0x1ea1, 0x1ea1,
-        0x1ea3, 0x1ea3,
-        0x1ea5, 0x1ea5,
-        0x1ea7, 0x1ea7,
-        0x1ea9, 0x1ea9,
-        0x1eab, 0x1eab,
-        0x1ead, 0x1ead,
-        0x1eaf, 0x1eaf,
-        0x1eb1, 0x1eb1,
-        0x1eb3, 0x1eb3,
-        0x1eb5, 0x1eb5,
-        0x1eb7, 0x1eb7,
-        0x1eb9, 0x1eb9,
-        0x1ebb, 0x1ebb,
-        0x1ebd, 0x1ebd,
-        0x1ebf, 0x1ebf,
-        0x1ec1, 0x1ec1,
-        0x1ec3, 0x1ec3,
-        0x1ec5, 0x1ec5,
-        0x1ec7, 0x1ec7,
-        0x1ec9, 0x1ec9,
-        0x1ecb, 0x1ecb,
-        0x1ecd, 0x1ecd,
-        0x1ecf, 0x1ecf,
-        0x1ed1, 0x1ed1,
-        0x1ed3, 0x1ed3,
-        0x1ed5, 0x1ed5,
-        0x1ed7, 0x1ed7,
-        0x1ed9, 0x1ed9,
-        0x1edb, 0x1edb,
-        0x1edd, 0x1edd,
-        0x1edf, 0x1edf,
-        0x1ee1, 0x1ee1,
-        0x1ee3, 0x1ee3,
-        0x1ee5, 0x1ee5,
-        0x1ee7, 0x1ee7,
-        0x1ee9, 0x1ee9,
-        0x1eeb, 0x1eeb,
-        0x1eed, 0x1eed,
-        0x1eef, 0x1eef,
-        0x1ef1, 0x1ef1,
-        0x1ef3, 0x1ef3,
-        0x1ef5, 0x1ef5,
-        0x1ef7, 0x1ef7,
-        0x1ef9, 0x1ef9,
-        0x1efb, 0x1efb,
-        0x1efd, 0x1efd,
-        0x1eff, 0x1f07,
-        0x1f10, 0x1f15,
-        0x1f20, 0x1f27,
-        0x1f30, 0x1f37,
-        0x1f40, 0x1f45,
-        0x1f50, 0x1f57,
-        0x1f60, 0x1f67,
-        0x1f70, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fb7,
-        0x1fbc, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fc7,
-        0x1fcc, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fd7,
-        0x1fe0, 0x1fe7,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ff7,
-        0x1ffc, 0x1ffc,
-        0x214e, 0x214e,
-        0x2170, 0x217f,
-        0x2184, 0x2184,
-        0x24d0, 0x24e9,
-        0x2c30, 0x2c5e,
-        0x2c61, 0x2c61,
-        0x2c65, 0x2c66,
-        0x2c68, 0x2c68,
-        0x2c6a, 0x2c6a,
-        0x2c6c, 0x2c6c,
-        0x2c73, 0x2c73,
-        0x2c76, 0x2c76,
-        0x2c81, 0x2c81,
-        0x2c83, 0x2c83,
-        0x2c85, 0x2c85,
-        0x2c87, 0x2c87,
-        0x2c89, 0x2c89,
-        0x2c8b, 0x2c8b,
-        0x2c8d, 0x2c8d,
-        0x2c8f, 0x2c8f,
-        0x2c91, 0x2c91,
-        0x2c93, 0x2c93,
-        0x2c95, 0x2c95,
-        0x2c97, 0x2c97,
-        0x2c99, 0x2c99,
-        0x2c9b, 0x2c9b,
-        0x2c9d, 0x2c9d,
-        0x2c9f, 0x2c9f,
-        0x2ca1, 0x2ca1,
-        0x2ca3, 0x2ca3,
-        0x2ca5, 0x2ca5,
-        0x2ca7, 0x2ca7,
-        0x2ca9, 0x2ca9,
-        0x2cab, 0x2cab,
-        0x2cad, 0x2cad,
-        0x2caf, 0x2caf,
-        0x2cb1, 0x2cb1,
-        0x2cb3, 0x2cb3,
-        0x2cb5, 0x2cb5,
-        0x2cb7, 0x2cb7,
-        0x2cb9, 0x2cb9,
-        0x2cbb, 0x2cbb,
-        0x2cbd, 0x2cbd,
-        0x2cbf, 0x2cbf,
-        0x2cc1, 0x2cc1,
-        0x2cc3, 0x2cc3,
-        0x2cc5, 0x2cc5,
-        0x2cc7, 0x2cc7,
-        0x2cc9, 0x2cc9,
-        0x2ccb, 0x2ccb,
-        0x2ccd, 0x2ccd,
-        0x2ccf, 0x2ccf,
-        0x2cd1, 0x2cd1,
-        0x2cd3, 0x2cd3,
-        0x2cd5, 0x2cd5,
-        0x2cd7, 0x2cd7,
-        0x2cd9, 0x2cd9,
-        0x2cdb, 0x2cdb,
-        0x2cdd, 0x2cdd,
-        0x2cdf, 0x2cdf,
-        0x2ce1, 0x2ce1,
-        0x2ce3, 0x2ce3,
-        0x2cec, 0x2cec,
-        0x2cee, 0x2cee,
-        0x2d00, 0x2d25,
-        0xa641, 0xa641,
-        0xa643, 0xa643,
-        0xa645, 0xa645,
-        0xa647, 0xa647,
-        0xa649, 0xa649,
-        0xa64b, 0xa64b,
-        0xa64d, 0xa64d,
-        0xa64f, 0xa64f,
-        0xa651, 0xa651,
-        0xa653, 0xa653,
-        0xa655, 0xa655,
-        0xa657, 0xa657,
-        0xa659, 0xa659,
-        0xa65b, 0xa65b,
-        0xa65d, 0xa65d,
-        0xa65f, 0xa65f,
-        0xa663, 0xa663,
-        0xa665, 0xa665,
-        0xa667, 0xa667,
-        0xa669, 0xa669,
-        0xa66b, 0xa66b,
-        0xa66d, 0xa66d,
-        0xa681, 0xa681,
-        0xa683, 0xa683,
-        0xa685, 0xa685,
-        0xa687, 0xa687,
-        0xa689, 0xa689,
-        0xa68b, 0xa68b,
-        0xa68d, 0xa68d,
-        0xa68f, 0xa68f,
-        0xa691, 0xa691,
-        0xa693, 0xa693,
-        0xa695, 0xa695,
-        0xa697, 0xa697,
-        0xa723, 0xa723,
-        0xa725, 0xa725,
-        0xa727, 0xa727,
-        0xa729, 0xa729,
-        0xa72b, 0xa72b,
-        0xa72d, 0xa72d,
-        0xa72f, 0xa72f,
-        0xa733, 0xa733,
-        0xa735, 0xa735,
-        0xa737, 0xa737,
-        0xa739, 0xa739,
-        0xa73b, 0xa73b,
-        0xa73d, 0xa73d,
-        0xa73f, 0xa73f,
-        0xa741, 0xa741,
-        0xa743, 0xa743,
-        0xa745, 0xa745,
-        0xa747, 0xa747,
-        0xa749, 0xa749,
-        0xa74b, 0xa74b,
-        0xa74d, 0xa74d,
-        0xa74f, 0xa74f,
-        0xa751, 0xa751,
-        0xa753, 0xa753,
-        0xa755, 0xa755,
-        0xa757, 0xa757,
-        0xa759, 0xa759,
-        0xa75b, 0xa75b,
-        0xa75d, 0xa75d,
-        0xa75f, 0xa75f,
-        0xa761, 0xa761,
-        0xa763, 0xa763,
-        0xa765, 0xa765,
-        0xa767, 0xa767,
-        0xa769, 0xa769,
-        0xa76b, 0xa76b,
-        0xa76d, 0xa76d,
-        0xa76f, 0xa76f,
-        0xa77a, 0xa77a,
-        0xa77c, 0xa77c,
-        0xa77f, 0xa77f,
-        0xa781, 0xa781,
-        0xa783, 0xa783,
-        0xa785, 0xa785,
-        0xa787, 0xa787,
-        0xa78c, 0xa78c,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xff41, 0xff5a,
-        0x10428, 0x1044f,
-}; /* CR_Changes_When_Uppercased */
-
-/* 'Changes_When_Titlecased': Derived Property */
-static const OnigCodePoint CR_Changes_When_Titlecased[] = {
-        574,
-        0x0061, 0x007a,
-        0x00b5, 0x00b5,
-        0x00df, 0x00f6,
-        0x00f8, 0x00ff,
-        0x0101, 0x0101,
-        0x0103, 0x0103,
-        0x0105, 0x0105,
-        0x0107, 0x0107,
-        0x0109, 0x0109,
-        0x010b, 0x010b,
-        0x010d, 0x010d,
-        0x010f, 0x010f,
-        0x0111, 0x0111,
-        0x0113, 0x0113,
-        0x0115, 0x0115,
-        0x0117, 0x0117,
-        0x0119, 0x0119,
-        0x011b, 0x011b,
-        0x011d, 0x011d,
-        0x011f, 0x011f,
-        0x0121, 0x0121,
-        0x0123, 0x0123,
-        0x0125, 0x0125,
-        0x0127, 0x0127,
-        0x0129, 0x0129,
-        0x012b, 0x012b,
-        0x012d, 0x012d,
-        0x012f, 0x012f,
-        0x0131, 0x0131,
-        0x0133, 0x0133,
-        0x0135, 0x0135,
-        0x0137, 0x0137,
-        0x013a, 0x013a,
-        0x013c, 0x013c,
-        0x013e, 0x013e,
-        0x0140, 0x0140,
-        0x0142, 0x0142,
-        0x0144, 0x0144,
-        0x0146, 0x0146,
-        0x0148, 0x0149,
-        0x014b, 0x014b,
-        0x014d, 0x014d,
-        0x014f, 0x014f,
-        0x0151, 0x0151,
-        0x0153, 0x0153,
-        0x0155, 0x0155,
-        0x0157, 0x0157,
-        0x0159, 0x0159,
-        0x015b, 0x015b,
-        0x015d, 0x015d,
-        0x015f, 0x015f,
-        0x0161, 0x0161,
-        0x0163, 0x0163,
-        0x0165, 0x0165,
-        0x0167, 0x0167,
-        0x0169, 0x0169,
-        0x016b, 0x016b,
-        0x016d, 0x016d,
-        0x016f, 0x016f,
-        0x0171, 0x0171,
-        0x0173, 0x0173,
-        0x0175, 0x0175,
-        0x0177, 0x0177,
-        0x017a, 0x017a,
-        0x017c, 0x017c,
-        0x017e, 0x0180,
-        0x0183, 0x0183,
-        0x0185, 0x0185,
-        0x0188, 0x0188,
-        0x018c, 0x018c,
-        0x0192, 0x0192,
-        0x0195, 0x0195,
-        0x0199, 0x019a,
-        0x019e, 0x019e,
-        0x01a1, 0x01a1,
-        0x01a3, 0x01a3,
-        0x01a5, 0x01a5,
-        0x01a8, 0x01a8,
-        0x01ad, 0x01ad,
-        0x01b0, 0x01b0,
-        0x01b4, 0x01b4,
-        0x01b6, 0x01b6,
-        0x01b9, 0x01b9,
-        0x01bd, 0x01bd,
-        0x01bf, 0x01bf,
-        0x01c4, 0x01c4,
-        0x01c6, 0x01c7,
-        0x01c9, 0x01ca,
-        0x01cc, 0x01cc,
-        0x01ce, 0x01ce,
-        0x01d0, 0x01d0,
-        0x01d2, 0x01d2,
-        0x01d4, 0x01d4,
-        0x01d6, 0x01d6,
-        0x01d8, 0x01d8,
-        0x01da, 0x01da,
-        0x01dc, 0x01dd,
-        0x01df, 0x01df,
-        0x01e1, 0x01e1,
-        0x01e3, 0x01e3,
-        0x01e5, 0x01e5,
-        0x01e7, 0x01e7,
-        0x01e9, 0x01e9,
-        0x01eb, 0x01eb,
-        0x01ed, 0x01ed,
-        0x01ef, 0x01f1,
-        0x01f3, 0x01f3,
-        0x01f5, 0x01f5,
-        0x01f9, 0x01f9,
-        0x01fb, 0x01fb,
-        0x01fd, 0x01fd,
-        0x01ff, 0x01ff,
-        0x0201, 0x0201,
-        0x0203, 0x0203,
-        0x0205, 0x0205,
-        0x0207, 0x0207,
-        0x0209, 0x0209,
-        0x020b, 0x020b,
-        0x020d, 0x020d,
-        0x020f, 0x020f,
-        0x0211, 0x0211,
-        0x0213, 0x0213,
-        0x0215, 0x0215,
-        0x0217, 0x0217,
-        0x0219, 0x0219,
-        0x021b, 0x021b,
-        0x021d, 0x021d,
-        0x021f, 0x021f,
-        0x0223, 0x0223,
-        0x0225, 0x0225,
-        0x0227, 0x0227,
-        0x0229, 0x0229,
-        0x022b, 0x022b,
-        0x022d, 0x022d,
-        0x022f, 0x022f,
-        0x0231, 0x0231,
-        0x0233, 0x0233,
-        0x023c, 0x023c,
-        0x023f, 0x0240,
-        0x0242, 0x0242,
-        0x0247, 0x0247,
-        0x0249, 0x0249,
-        0x024b, 0x024b,
-        0x024d, 0x024d,
-        0x024f, 0x0254,
-        0x0256, 0x0257,
-        0x0259, 0x0259,
-        0x025b, 0x025b,
-        0x0260, 0x0260,
-        0x0263, 0x0263,
-        0x0268, 0x0269,
-        0x026b, 0x026b,
-        0x026f, 0x026f,
-        0x0271, 0x0272,
-        0x0275, 0x0275,
-        0x027d, 0x027d,
-        0x0280, 0x0280,
-        0x0283, 0x0283,
-        0x0288, 0x028c,
-        0x0292, 0x0292,
-        0x0345, 0x0345,
-        0x0371, 0x0371,
-        0x0373, 0x0373,
-        0x0377, 0x0377,
-        0x037b, 0x037d,
-        0x0390, 0x0390,
-        0x03ac, 0x03ce,
-        0x03d0, 0x03d1,
-        0x03d5, 0x03d7,
-        0x03d9, 0x03d9,
-        0x03db, 0x03db,
-        0x03dd, 0x03dd,
-        0x03df, 0x03df,
-        0x03e1, 0x03e1,
-        0x03e3, 0x03e3,
-        0x03e5, 0x03e5,
-        0x03e7, 0x03e7,
-        0x03e9, 0x03e9,
-        0x03eb, 0x03eb,
-        0x03ed, 0x03ed,
-        0x03ef, 0x03f2,
-        0x03f5, 0x03f5,
-        0x03f8, 0x03f8,
-        0x03fb, 0x03fb,
-        0x0430, 0x045f,
-        0x0461, 0x0461,
-        0x0463, 0x0463,
-        0x0465, 0x0465,
-        0x0467, 0x0467,
-        0x0469, 0x0469,
-        0x046b, 0x046b,
-        0x046d, 0x046d,
-        0x046f, 0x046f,
-        0x0471, 0x0471,
-        0x0473, 0x0473,
-        0x0475, 0x0475,
-        0x0477, 0x0477,
-        0x0479, 0x0479,
-        0x047b, 0x047b,
-        0x047d, 0x047d,
-        0x047f, 0x047f,
-        0x0481, 0x0481,
-        0x048b, 0x048b,
-        0x048d, 0x048d,
-        0x048f, 0x048f,
-        0x0491, 0x0491,
-        0x0493, 0x0493,
-        0x0495, 0x0495,
-        0x0497, 0x0497,
-        0x0499, 0x0499,
-        0x049b, 0x049b,
-        0x049d, 0x049d,
-        0x049f, 0x049f,
-        0x04a1, 0x04a1,
-        0x04a3, 0x04a3,
-        0x04a5, 0x04a5,
-        0x04a7, 0x04a7,
-        0x04a9, 0x04a9,
-        0x04ab, 0x04ab,
-        0x04ad, 0x04ad,
-        0x04af, 0x04af,
-        0x04b1, 0x04b1,
-        0x04b3, 0x04b3,
-        0x04b5, 0x04b5,
-        0x04b7, 0x04b7,
-        0x04b9, 0x04b9,
-        0x04bb, 0x04bb,
-        0x04bd, 0x04bd,
-        0x04bf, 0x04bf,
-        0x04c2, 0x04c2,
-        0x04c4, 0x04c4,
-        0x04c6, 0x04c6,
-        0x04c8, 0x04c8,
-        0x04ca, 0x04ca,
-        0x04cc, 0x04cc,
-        0x04ce, 0x04cf,
-        0x04d1, 0x04d1,
-        0x04d3, 0x04d3,
-        0x04d5, 0x04d5,
-        0x04d7, 0x04d7,
-        0x04d9, 0x04d9,
-        0x04db, 0x04db,
-        0x04dd, 0x04dd,
-        0x04df, 0x04df,
-        0x04e1, 0x04e1,
-        0x04e3, 0x04e3,
-        0x04e5, 0x04e5,
-        0x04e7, 0x04e7,
-        0x04e9, 0x04e9,
-        0x04eb, 0x04eb,
-        0x04ed, 0x04ed,
-        0x04ef, 0x04ef,
-        0x04f1, 0x04f1,
-        0x04f3, 0x04f3,
-        0x04f5, 0x04f5,
-        0x04f7, 0x04f7,
-        0x04f9, 0x04f9,
-        0x04fb, 0x04fb,
-        0x04fd, 0x04fd,
-        0x04ff, 0x04ff,
-        0x0501, 0x0501,
-        0x0503, 0x0503,
-        0x0505, 0x0505,
-        0x0507, 0x0507,
-        0x0509, 0x0509,
-        0x050b, 0x050b,
-        0x050d, 0x050d,
-        0x050f, 0x050f,
-        0x0511, 0x0511,
-        0x0513, 0x0513,
-        0x0515, 0x0515,
-        0x0517, 0x0517,
-        0x0519, 0x0519,
-        0x051b, 0x051b,
-        0x051d, 0x051d,
-        0x051f, 0x051f,
-        0x0521, 0x0521,
-        0x0523, 0x0523,
-        0x0525, 0x0525,
-        0x0561, 0x0587,
-        0x1d79, 0x1d79,
-        0x1d7d, 0x1d7d,
-        0x1e01, 0x1e01,
-        0x1e03, 0x1e03,
-        0x1e05, 0x1e05,
-        0x1e07, 0x1e07,
-        0x1e09, 0x1e09,
-        0x1e0b, 0x1e0b,
-        0x1e0d, 0x1e0d,
-        0x1e0f, 0x1e0f,
-        0x1e11, 0x1e11,
-        0x1e13, 0x1e13,
-        0x1e15, 0x1e15,
-        0x1e17, 0x1e17,
-        0x1e19, 0x1e19,
-        0x1e1b, 0x1e1b,
-        0x1e1d, 0x1e1d,
-        0x1e1f, 0x1e1f,
-        0x1e21, 0x1e21,
-        0x1e23, 0x1e23,
-        0x1e25, 0x1e25,
-        0x1e27, 0x1e27,
-        0x1e29, 0x1e29,
-        0x1e2b, 0x1e2b,
-        0x1e2d, 0x1e2d,
-        0x1e2f, 0x1e2f,
-        0x1e31, 0x1e31,
-        0x1e33, 0x1e33,
-        0x1e35, 0x1e35,
-        0x1e37, 0x1e37,
-        0x1e39, 0x1e39,
-        0x1e3b, 0x1e3b,
-        0x1e3d, 0x1e3d,
-        0x1e3f, 0x1e3f,
-        0x1e41, 0x1e41,
-        0x1e43, 0x1e43,
-        0x1e45, 0x1e45,
-        0x1e47, 0x1e47,
-        0x1e49, 0x1e49,
-        0x1e4b, 0x1e4b,
-        0x1e4d, 0x1e4d,
-        0x1e4f, 0x1e4f,
-        0x1e51, 0x1e51,
-        0x1e53, 0x1e53,
-        0x1e55, 0x1e55,
-        0x1e57, 0x1e57,
-        0x1e59, 0x1e59,
-        0x1e5b, 0x1e5b,
-        0x1e5d, 0x1e5d,
-        0x1e5f, 0x1e5f,
-        0x1e61, 0x1e61,
-        0x1e63, 0x1e63,
-        0x1e65, 0x1e65,
-        0x1e67, 0x1e67,
-        0x1e69, 0x1e69,
-        0x1e6b, 0x1e6b,
-        0x1e6d, 0x1e6d,
-        0x1e6f, 0x1e6f,
-        0x1e71, 0x1e71,
-        0x1e73, 0x1e73,
-        0x1e75, 0x1e75,
-        0x1e77, 0x1e77,
-        0x1e79, 0x1e79,
-        0x1e7b, 0x1e7b,
-        0x1e7d, 0x1e7d,
-        0x1e7f, 0x1e7f,
-        0x1e81, 0x1e81,
-        0x1e83, 0x1e83,
-        0x1e85, 0x1e85,
-        0x1e87, 0x1e87,
-        0x1e89, 0x1e89,
-        0x1e8b, 0x1e8b,
-        0x1e8d, 0x1e8d,
-        0x1e8f, 0x1e8f,
-        0x1e91, 0x1e91,
-        0x1e93, 0x1e93,
-        0x1e95, 0x1e9b,
-        0x1ea1, 0x1ea1,
-        0x1ea3, 0x1ea3,
-        0x1ea5, 0x1ea5,
-        0x1ea7, 0x1ea7,
-        0x1ea9, 0x1ea9,
-        0x1eab, 0x1eab,
-        0x1ead, 0x1ead,
-        0x1eaf, 0x1eaf,
-        0x1eb1, 0x1eb1,
-        0x1eb3, 0x1eb3,
-        0x1eb5, 0x1eb5,
-        0x1eb7, 0x1eb7,
-        0x1eb9, 0x1eb9,
-        0x1ebb, 0x1ebb,
-        0x1ebd, 0x1ebd,
-        0x1ebf, 0x1ebf,
-        0x1ec1, 0x1ec1,
-        0x1ec3, 0x1ec3,
-        0x1ec5, 0x1ec5,
-        0x1ec7, 0x1ec7,
-        0x1ec9, 0x1ec9,
-        0x1ecb, 0x1ecb,
-        0x1ecd, 0x1ecd,
-        0x1ecf, 0x1ecf,
-        0x1ed1, 0x1ed1,
-        0x1ed3, 0x1ed3,
-        0x1ed5, 0x1ed5,
-        0x1ed7, 0x1ed7,
-        0x1ed9, 0x1ed9,
-        0x1edb, 0x1edb,
-        0x1edd, 0x1edd,
-        0x1edf, 0x1edf,
-        0x1ee1, 0x1ee1,
-        0x1ee3, 0x1ee3,
-        0x1ee5, 0x1ee5,
-        0x1ee7, 0x1ee7,
-        0x1ee9, 0x1ee9,
-        0x1eeb, 0x1eeb,
-        0x1eed, 0x1eed,
-        0x1eef, 0x1eef,
-        0x1ef1, 0x1ef1,
-        0x1ef3, 0x1ef3,
-        0x1ef5, 0x1ef5,
-        0x1ef7, 0x1ef7,
-        0x1ef9, 0x1ef9,
-        0x1efb, 0x1efb,
-        0x1efd, 0x1efd,
-        0x1eff, 0x1f07,
-        0x1f10, 0x1f15,
-        0x1f20, 0x1f27,
-        0x1f30, 0x1f37,
-        0x1f40, 0x1f45,
-        0x1f50, 0x1f57,
-        0x1f60, 0x1f67,
-        0x1f70, 0x1f7d,
-        0x1f80, 0x1f87,
-        0x1f90, 0x1f97,
-        0x1fa0, 0x1fa7,
-        0x1fb0, 0x1fb4,
-        0x1fb6, 0x1fb7,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fc7,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fd7,
-        0x1fe0, 0x1fe7,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ff7,
-        0x214e, 0x214e,
-        0x2170, 0x217f,
-        0x2184, 0x2184,
-        0x24d0, 0x24e9,
-        0x2c30, 0x2c5e,
-        0x2c61, 0x2c61,
-        0x2c65, 0x2c66,
-        0x2c68, 0x2c68,
-        0x2c6a, 0x2c6a,
-        0x2c6c, 0x2c6c,
-        0x2c73, 0x2c73,
-        0x2c76, 0x2c76,
-        0x2c81, 0x2c81,
-        0x2c83, 0x2c83,
-        0x2c85, 0x2c85,
-        0x2c87, 0x2c87,
-        0x2c89, 0x2c89,
-        0x2c8b, 0x2c8b,
-        0x2c8d, 0x2c8d,
-        0x2c8f, 0x2c8f,
-        0x2c91, 0x2c91,
-        0x2c93, 0x2c93,
-        0x2c95, 0x2c95,
-        0x2c97, 0x2c97,
-        0x2c99, 0x2c99,
-        0x2c9b, 0x2c9b,
-        0x2c9d, 0x2c9d,
-        0x2c9f, 0x2c9f,
-        0x2ca1, 0x2ca1,
-        0x2ca3, 0x2ca3,
-        0x2ca5, 0x2ca5,
-        0x2ca7, 0x2ca7,
-        0x2ca9, 0x2ca9,
-        0x2cab, 0x2cab,
-        0x2cad, 0x2cad,
-        0x2caf, 0x2caf,
-        0x2cb1, 0x2cb1,
-        0x2cb3, 0x2cb3,
-        0x2cb5, 0x2cb5,
-        0x2cb7, 0x2cb7,
-        0x2cb9, 0x2cb9,
-        0x2cbb, 0x2cbb,
-        0x2cbd, 0x2cbd,
-        0x2cbf, 0x2cbf,
-        0x2cc1, 0x2cc1,
-        0x2cc3, 0x2cc3,
-        0x2cc5, 0x2cc5,
-        0x2cc7, 0x2cc7,
-        0x2cc9, 0x2cc9,
-        0x2ccb, 0x2ccb,
-        0x2ccd, 0x2ccd,
-        0x2ccf, 0x2ccf,
-        0x2cd1, 0x2cd1,
-        0x2cd3, 0x2cd3,
-        0x2cd5, 0x2cd5,
-        0x2cd7, 0x2cd7,
-        0x2cd9, 0x2cd9,
-        0x2cdb, 0x2cdb,
-        0x2cdd, 0x2cdd,
-        0x2cdf, 0x2cdf,
-        0x2ce1, 0x2ce1,
-        0x2ce3, 0x2ce3,
-        0x2cec, 0x2cec,
-        0x2cee, 0x2cee,
-        0x2d00, 0x2d25,
-        0xa641, 0xa641,
-        0xa643, 0xa643,
-        0xa645, 0xa645,
-        0xa647, 0xa647,
-        0xa649, 0xa649,
-        0xa64b, 0xa64b,
-        0xa64d, 0xa64d,
-        0xa64f, 0xa64f,
-        0xa651, 0xa651,
-        0xa653, 0xa653,
-        0xa655, 0xa655,
-        0xa657, 0xa657,
-        0xa659, 0xa659,
-        0xa65b, 0xa65b,
-        0xa65d, 0xa65d,
-        0xa65f, 0xa65f,
-        0xa663, 0xa663,
-        0xa665, 0xa665,
-        0xa667, 0xa667,
-        0xa669, 0xa669,
-        0xa66b, 0xa66b,
-        0xa66d, 0xa66d,
-        0xa681, 0xa681,
-        0xa683, 0xa683,
-        0xa685, 0xa685,
-        0xa687, 0xa687,
-        0xa689, 0xa689,
-        0xa68b, 0xa68b,
-        0xa68d, 0xa68d,
-        0xa68f, 0xa68f,
-        0xa691, 0xa691,
-        0xa693, 0xa693,
-        0xa695, 0xa695,
-        0xa697, 0xa697,
-        0xa723, 0xa723,
-        0xa725, 0xa725,
-        0xa727, 0xa727,
-        0xa729, 0xa729,
-        0xa72b, 0xa72b,
-        0xa72d, 0xa72d,
-        0xa72f, 0xa72f,
-        0xa733, 0xa733,
-        0xa735, 0xa735,
-        0xa737, 0xa737,
-        0xa739, 0xa739,
-        0xa73b, 0xa73b,
-        0xa73d, 0xa73d,
-        0xa73f, 0xa73f,
-        0xa741, 0xa741,
-        0xa743, 0xa743,
-        0xa745, 0xa745,
-        0xa747, 0xa747,
-        0xa749, 0xa749,
-        0xa74b, 0xa74b,
-        0xa74d, 0xa74d,
-        0xa74f, 0xa74f,
-        0xa751, 0xa751,
-        0xa753, 0xa753,
-        0xa755, 0xa755,
-        0xa757, 0xa757,
-        0xa759, 0xa759,
-        0xa75b, 0xa75b,
-        0xa75d, 0xa75d,
-        0xa75f, 0xa75f,
-        0xa761, 0xa761,
-        0xa763, 0xa763,
-        0xa765, 0xa765,
-        0xa767, 0xa767,
-        0xa769, 0xa769,
-        0xa76b, 0xa76b,
-        0xa76d, 0xa76d,
-        0xa76f, 0xa76f,
-        0xa77a, 0xa77a,
-        0xa77c, 0xa77c,
-        0xa77f, 0xa77f,
-        0xa781, 0xa781,
-        0xa783, 0xa783,
-        0xa785, 0xa785,
-        0xa787, 0xa787,
-        0xa78c, 0xa78c,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xff41, 0xff5a,
-        0x10428, 0x1044f,
-}; /* CR_Changes_When_Titlecased */
-
-/* 'Changes_When_Casefolded': Derived Property */
-static const OnigCodePoint CR_Changes_When_Casefolded[] = {
-        568,
-        0x0041, 0x005a,
-        0x00b5, 0x00b5,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00df,
-        0x0100, 0x0100,
-        0x0102, 0x0102,
-        0x0104, 0x0104,
-        0x0106, 0x0106,
-        0x0108, 0x0108,
-        0x010a, 0x010a,
-        0x010c, 0x010c,
-        0x010e, 0x010e,
-        0x0110, 0x0110,
-        0x0112, 0x0112,
-        0x0114, 0x0114,
-        0x0116, 0x0116,
-        0x0118, 0x0118,
-        0x011a, 0x011a,
-        0x011c, 0x011c,
-        0x011e, 0x011e,
-        0x0120, 0x0120,
-        0x0122, 0x0122,
-        0x0124, 0x0124,
-        0x0126, 0x0126,
-        0x0128, 0x0128,
-        0x012a, 0x012a,
-        0x012c, 0x012c,
-        0x012e, 0x012e,
-        0x0130, 0x0130,
-        0x0132, 0x0132,
-        0x0134, 0x0134,
-        0x0136, 0x0136,
-        0x0139, 0x0139,
-        0x013b, 0x013b,
-        0x013d, 0x013d,
-        0x013f, 0x013f,
-        0x0141, 0x0141,
-        0x0143, 0x0143,
-        0x0145, 0x0145,
-        0x0147, 0x0147,
-        0x0149, 0x014a,
-        0x014c, 0x014c,
-        0x014e, 0x014e,
-        0x0150, 0x0150,
-        0x0152, 0x0152,
-        0x0154, 0x0154,
-        0x0156, 0x0156,
-        0x0158, 0x0158,
-        0x015a, 0x015a,
-        0x015c, 0x015c,
-        0x015e, 0x015e,
-        0x0160, 0x0160,
-        0x0162, 0x0162,
-        0x0164, 0x0164,
-        0x0166, 0x0166,
-        0x0168, 0x0168,
-        0x016a, 0x016a,
-        0x016c, 0x016c,
-        0x016e, 0x016e,
-        0x0170, 0x0170,
-        0x0172, 0x0172,
-        0x0174, 0x0174,
-        0x0176, 0x0176,
-        0x0178, 0x0179,
-        0x017b, 0x017b,
-        0x017d, 0x017d,
-        0x017f, 0x017f,
-        0x0181, 0x0182,
-        0x0184, 0x0184,
-        0x0186, 0x0187,
-        0x0189, 0x018b,
-        0x018e, 0x0191,
-        0x0193, 0x0194,
-        0x0196, 0x0198,
-        0x019c, 0x019d,
-        0x019f, 0x01a0,
-        0x01a2, 0x01a2,
-        0x01a4, 0x01a4,
-        0x01a6, 0x01a7,
-        0x01a9, 0x01a9,
-        0x01ac, 0x01ac,
-        0x01ae, 0x01af,
-        0x01b1, 0x01b3,
-        0x01b5, 0x01b5,
-        0x01b7, 0x01b8,
-        0x01bc, 0x01bc,
-        0x01c4, 0x01c5,
-        0x01c7, 0x01c8,
-        0x01ca, 0x01cb,
-        0x01cd, 0x01cd,
-        0x01cf, 0x01cf,
-        0x01d1, 0x01d1,
-        0x01d3, 0x01d3,
-        0x01d5, 0x01d5,
-        0x01d7, 0x01d7,
-        0x01d9, 0x01d9,
-        0x01db, 0x01db,
-        0x01de, 0x01de,
-        0x01e0, 0x01e0,
-        0x01e2, 0x01e2,
-        0x01e4, 0x01e4,
-        0x01e6, 0x01e6,
-        0x01e8, 0x01e8,
-        0x01ea, 0x01ea,
-        0x01ec, 0x01ec,
-        0x01ee, 0x01ee,
-        0x01f1, 0x01f2,
-        0x01f4, 0x01f4,
-        0x01f6, 0x01f8,
-        0x01fa, 0x01fa,
-        0x01fc, 0x01fc,
-        0x01fe, 0x01fe,
-        0x0200, 0x0200,
-        0x0202, 0x0202,
-        0x0204, 0x0204,
-        0x0206, 0x0206,
-        0x0208, 0x0208,
-        0x020a, 0x020a,
-        0x020c, 0x020c,
-        0x020e, 0x020e,
-        0x0210, 0x0210,
-        0x0212, 0x0212,
-        0x0214, 0x0214,
-        0x0216, 0x0216,
-        0x0218, 0x0218,
-        0x021a, 0x021a,
-        0x021c, 0x021c,
-        0x021e, 0x021e,
-        0x0220, 0x0220,
-        0x0222, 0x0222,
-        0x0224, 0x0224,
-        0x0226, 0x0226,
-        0x0228, 0x0228,
-        0x022a, 0x022a,
-        0x022c, 0x022c,
-        0x022e, 0x022e,
-        0x0230, 0x0230,
-        0x0232, 0x0232,
-        0x023a, 0x023b,
-        0x023d, 0x023e,
-        0x0241, 0x0241,
-        0x0243, 0x0246,
-        0x0248, 0x0248,
-        0x024a, 0x024a,
-        0x024c, 0x024c,
-        0x024e, 0x024e,
-        0x0345, 0x0345,
-        0x0370, 0x0370,
-        0x0372, 0x0372,
-        0x0376, 0x0376,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x038f,
-        0x0391, 0x03a1,
-        0x03a3, 0x03ab,
-        0x03c2, 0x03c2,
-        0x03cf, 0x03d1,
-        0x03d5, 0x03d6,
-        0x03d8, 0x03d8,
-        0x03da, 0x03da,
-        0x03dc, 0x03dc,
-        0x03de, 0x03de,
-        0x03e0, 0x03e0,
-        0x03e2, 0x03e2,
-        0x03e4, 0x03e4,
-        0x03e6, 0x03e6,
-        0x03e8, 0x03e8,
-        0x03ea, 0x03ea,
-        0x03ec, 0x03ec,
-        0x03ee, 0x03ee,
-        0x03f0, 0x03f1,
-        0x03f4, 0x03f5,
-        0x03f7, 0x03f7,
-        0x03f9, 0x03fa,
-        0x03fd, 0x042f,
-        0x0460, 0x0460,
-        0x0462, 0x0462,
-        0x0464, 0x0464,
-        0x0466, 0x0466,
-        0x0468, 0x0468,
-        0x046a, 0x046a,
-        0x046c, 0x046c,
-        0x046e, 0x046e,
-        0x0470, 0x0470,
-        0x0472, 0x0472,
-        0x0474, 0x0474,
-        0x0476, 0x0476,
-        0x0478, 0x0478,
-        0x047a, 0x047a,
-        0x047c, 0x047c,
-        0x047e, 0x047e,
-        0x0480, 0x0480,
-        0x048a, 0x048a,
-        0x048c, 0x048c,
-        0x048e, 0x048e,
-        0x0490, 0x0490,
-        0x0492, 0x0492,
-        0x0494, 0x0494,
-        0x0496, 0x0496,
-        0x0498, 0x0498,
-        0x049a, 0x049a,
-        0x049c, 0x049c,
-        0x049e, 0x049e,
-        0x04a0, 0x04a0,
-        0x04a2, 0x04a2,
-        0x04a4, 0x04a4,
-        0x04a6, 0x04a6,
-        0x04a8, 0x04a8,
-        0x04aa, 0x04aa,
-        0x04ac, 0x04ac,
-        0x04ae, 0x04ae,
-        0x04b0, 0x04b0,
-        0x04b2, 0x04b2,
-        0x04b4, 0x04b4,
-        0x04b6, 0x04b6,
-        0x04b8, 0x04b8,
-        0x04ba, 0x04ba,
-        0x04bc, 0x04bc,
-        0x04be, 0x04be,
-        0x04c0, 0x04c1,
-        0x04c3, 0x04c3,
-        0x04c5, 0x04c5,
-        0x04c7, 0x04c7,
-        0x04c9, 0x04c9,
-        0x04cb, 0x04cb,
-        0x04cd, 0x04cd,
-        0x04d0, 0x04d0,
-        0x04d2, 0x04d2,
-        0x04d4, 0x04d4,
-        0x04d6, 0x04d6,
-        0x04d8, 0x04d8,
-        0x04da, 0x04da,
-        0x04dc, 0x04dc,
-        0x04de, 0x04de,
-        0x04e0, 0x04e0,
-        0x04e2, 0x04e2,
-        0x04e4, 0x04e4,
-        0x04e6, 0x04e6,
-        0x04e8, 0x04e8,
-        0x04ea, 0x04ea,
-        0x04ec, 0x04ec,
-        0x04ee, 0x04ee,
-        0x04f0, 0x04f0,
-        0x04f2, 0x04f2,
-        0x04f4, 0x04f4,
-        0x04f6, 0x04f6,
-        0x04f8, 0x04f8,
-        0x04fa, 0x04fa,
-        0x04fc, 0x04fc,
-        0x04fe, 0x04fe,
-        0x0500, 0x0500,
-        0x0502, 0x0502,
-        0x0504, 0x0504,
-        0x0506, 0x0506,
-        0x0508, 0x0508,
-        0x050a, 0x050a,
-        0x050c, 0x050c,
-        0x050e, 0x050e,
-        0x0510, 0x0510,
-        0x0512, 0x0512,
-        0x0514, 0x0514,
-        0x0516, 0x0516,
-        0x0518, 0x0518,
-        0x051a, 0x051a,
-        0x051c, 0x051c,
-        0x051e, 0x051e,
-        0x0520, 0x0520,
-        0x0522, 0x0522,
-        0x0524, 0x0524,
-        0x0531, 0x0556,
-        0x0587, 0x0587,
-        0x10a0, 0x10c5,
-        0x1e00, 0x1e00,
-        0x1e02, 0x1e02,
-        0x1e04, 0x1e04,
-        0x1e06, 0x1e06,
-        0x1e08, 0x1e08,
-        0x1e0a, 0x1e0a,
-        0x1e0c, 0x1e0c,
-        0x1e0e, 0x1e0e,
-        0x1e10, 0x1e10,
-        0x1e12, 0x1e12,
-        0x1e14, 0x1e14,
-        0x1e16, 0x1e16,
-        0x1e18, 0x1e18,
-        0x1e1a, 0x1e1a,
-        0x1e1c, 0x1e1c,
-        0x1e1e, 0x1e1e,
-        0x1e20, 0x1e20,
-        0x1e22, 0x1e22,
-        0x1e24, 0x1e24,
-        0x1e26, 0x1e26,
-        0x1e28, 0x1e28,
-        0x1e2a, 0x1e2a,
-        0x1e2c, 0x1e2c,
-        0x1e2e, 0x1e2e,
-        0x1e30, 0x1e30,
-        0x1e32, 0x1e32,
-        0x1e34, 0x1e34,
-        0x1e36, 0x1e36,
-        0x1e38, 0x1e38,
-        0x1e3a, 0x1e3a,
-        0x1e3c, 0x1e3c,
-        0x1e3e, 0x1e3e,
-        0x1e40, 0x1e40,
-        0x1e42, 0x1e42,
-        0x1e44, 0x1e44,
-        0x1e46, 0x1e46,
-        0x1e48, 0x1e48,
-        0x1e4a, 0x1e4a,
-        0x1e4c, 0x1e4c,
-        0x1e4e, 0x1e4e,
-        0x1e50, 0x1e50,
-        0x1e52, 0x1e52,
-        0x1e54, 0x1e54,
-        0x1e56, 0x1e56,
-        0x1e58, 0x1e58,
-        0x1e5a, 0x1e5a,
-        0x1e5c, 0x1e5c,
-        0x1e5e, 0x1e5e,
-        0x1e60, 0x1e60,
-        0x1e62, 0x1e62,
-        0x1e64, 0x1e64,
-        0x1e66, 0x1e66,
-        0x1e68, 0x1e68,
-        0x1e6a, 0x1e6a,
-        0x1e6c, 0x1e6c,
-        0x1e6e, 0x1e6e,
-        0x1e70, 0x1e70,
-        0x1e72, 0x1e72,
-        0x1e74, 0x1e74,
-        0x1e76, 0x1e76,
-        0x1e78, 0x1e78,
-        0x1e7a, 0x1e7a,
-        0x1e7c, 0x1e7c,
-        0x1e7e, 0x1e7e,
-        0x1e80, 0x1e80,
-        0x1e82, 0x1e82,
-        0x1e84, 0x1e84,
-        0x1e86, 0x1e86,
-        0x1e88, 0x1e88,
-        0x1e8a, 0x1e8a,
-        0x1e8c, 0x1e8c,
-        0x1e8e, 0x1e8e,
-        0x1e90, 0x1e90,
-        0x1e92, 0x1e92,
-        0x1e94, 0x1e94,
-        0x1e9a, 0x1e9b,
-        0x1e9e, 0x1e9e,
-        0x1ea0, 0x1ea0,
-        0x1ea2, 0x1ea2,
-        0x1ea4, 0x1ea4,
-        0x1ea6, 0x1ea6,
-        0x1ea8, 0x1ea8,
-        0x1eaa, 0x1eaa,
-        0x1eac, 0x1eac,
-        0x1eae, 0x1eae,
-        0x1eb0, 0x1eb0,
-        0x1eb2, 0x1eb2,
-        0x1eb4, 0x1eb4,
-        0x1eb6, 0x1eb6,
-        0x1eb8, 0x1eb8,
-        0x1eba, 0x1eba,
-        0x1ebc, 0x1ebc,
-        0x1ebe, 0x1ebe,
-        0x1ec0, 0x1ec0,
-        0x1ec2, 0x1ec2,
-        0x1ec4, 0x1ec4,
-        0x1ec6, 0x1ec6,
-        0x1ec8, 0x1ec8,
-        0x1eca, 0x1eca,
-        0x1ecc, 0x1ecc,
-        0x1ece, 0x1ece,
-        0x1ed0, 0x1ed0,
-        0x1ed2, 0x1ed2,
-        0x1ed4, 0x1ed4,
-        0x1ed6, 0x1ed6,
-        0x1ed8, 0x1ed8,
-        0x1eda, 0x1eda,
-        0x1edc, 0x1edc,
-        0x1ede, 0x1ede,
-        0x1ee0, 0x1ee0,
-        0x1ee2, 0x1ee2,
-        0x1ee4, 0x1ee4,
-        0x1ee6, 0x1ee6,
-        0x1ee8, 0x1ee8,
-        0x1eea, 0x1eea,
-        0x1eec, 0x1eec,
-        0x1eee, 0x1eee,
-        0x1ef0, 0x1ef0,
-        0x1ef2, 0x1ef2,
-        0x1ef4, 0x1ef4,
-        0x1ef6, 0x1ef6,
-        0x1ef8, 0x1ef8,
-        0x1efa, 0x1efa,
-        0x1efc, 0x1efc,
-        0x1efe, 0x1efe,
-        0x1f08, 0x1f0f,
-        0x1f18, 0x1f1d,
-        0x1f28, 0x1f2f,
-        0x1f38, 0x1f3f,
-        0x1f48, 0x1f4d,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f5f,
-        0x1f68, 0x1f6f,
-        0x1f80, 0x1faf,
-        0x1fb2, 0x1fb4,
-        0x1fb7, 0x1fbc,
-        0x1fc2, 0x1fc4,
-        0x1fc7, 0x1fcc,
-        0x1fd8, 0x1fdb,
-        0x1fe8, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff7, 0x1ffc,
-        0x2126, 0x2126,
-        0x212a, 0x212b,
-        0x2132, 0x2132,
-        0x2160, 0x216f,
-        0x2183, 0x2183,
-        0x24b6, 0x24cf,
-        0x2c00, 0x2c2e,
-        0x2c60, 0x2c60,
-        0x2c62, 0x2c64,
-        0x2c67, 0x2c67,
-        0x2c69, 0x2c69,
-        0x2c6b, 0x2c6b,
-        0x2c6d, 0x2c70,
-        0x2c72, 0x2c72,
-        0x2c75, 0x2c75,
-        0x2c7e, 0x2c80,
-        0x2c82, 0x2c82,
-        0x2c84, 0x2c84,
-        0x2c86, 0x2c86,
-        0x2c88, 0x2c88,
-        0x2c8a, 0x2c8a,
-        0x2c8c, 0x2c8c,
-        0x2c8e, 0x2c8e,
-        0x2c90, 0x2c90,
-        0x2c92, 0x2c92,
-        0x2c94, 0x2c94,
-        0x2c96, 0x2c96,
-        0x2c98, 0x2c98,
-        0x2c9a, 0x2c9a,
-        0x2c9c, 0x2c9c,
-        0x2c9e, 0x2c9e,
-        0x2ca0, 0x2ca0,
-        0x2ca2, 0x2ca2,
-        0x2ca4, 0x2ca4,
-        0x2ca6, 0x2ca6,
-        0x2ca8, 0x2ca8,
-        0x2caa, 0x2caa,
-        0x2cac, 0x2cac,
-        0x2cae, 0x2cae,
-        0x2cb0, 0x2cb0,
-        0x2cb2, 0x2cb2,
-        0x2cb4, 0x2cb4,
-        0x2cb6, 0x2cb6,
-        0x2cb8, 0x2cb8,
-        0x2cba, 0x2cba,
-        0x2cbc, 0x2cbc,
-        0x2cbe, 0x2cbe,
-        0x2cc0, 0x2cc0,
-        0x2cc2, 0x2cc2,
-        0x2cc4, 0x2cc4,
-        0x2cc6, 0x2cc6,
-        0x2cc8, 0x2cc8,
-        0x2cca, 0x2cca,
-        0x2ccc, 0x2ccc,
-        0x2cce, 0x2cce,
-        0x2cd0, 0x2cd0,
-        0x2cd2, 0x2cd2,
-        0x2cd4, 0x2cd4,
-        0x2cd6, 0x2cd6,
-        0x2cd8, 0x2cd8,
-        0x2cda, 0x2cda,
-        0x2cdc, 0x2cdc,
-        0x2cde, 0x2cde,
-        0x2ce0, 0x2ce0,
-        0x2ce2, 0x2ce2,
-        0x2ceb, 0x2ceb,
-        0x2ced, 0x2ced,
-        0xa640, 0xa640,
-        0xa642, 0xa642,
-        0xa644, 0xa644,
-        0xa646, 0xa646,
-        0xa648, 0xa648,
-        0xa64a, 0xa64a,
-        0xa64c, 0xa64c,
-        0xa64e, 0xa64e,
-        0xa650, 0xa650,
-        0xa652, 0xa652,
-        0xa654, 0xa654,
-        0xa656, 0xa656,
-        0xa658, 0xa658,
-        0xa65a, 0xa65a,
-        0xa65c, 0xa65c,
-        0xa65e, 0xa65e,
-        0xa662, 0xa662,
-        0xa664, 0xa664,
-        0xa666, 0xa666,
-        0xa668, 0xa668,
-        0xa66a, 0xa66a,
-        0xa66c, 0xa66c,
-        0xa680, 0xa680,
-        0xa682, 0xa682,
-        0xa684, 0xa684,
-        0xa686, 0xa686,
-        0xa688, 0xa688,
-        0xa68a, 0xa68a,
-        0xa68c, 0xa68c,
-        0xa68e, 0xa68e,
-        0xa690, 0xa690,
-        0xa692, 0xa692,
-        0xa694, 0xa694,
-        0xa696, 0xa696,
-        0xa722, 0xa722,
-        0xa724, 0xa724,
-        0xa726, 0xa726,
-        0xa728, 0xa728,
-        0xa72a, 0xa72a,
-        0xa72c, 0xa72c,
-        0xa72e, 0xa72e,
-        0xa732, 0xa732,
-        0xa734, 0xa734,
-        0xa736, 0xa736,
-        0xa738, 0xa738,
-        0xa73a, 0xa73a,
-        0xa73c, 0xa73c,
-        0xa73e, 0xa73e,
-        0xa740, 0xa740,
-        0xa742, 0xa742,
-        0xa744, 0xa744,
-        0xa746, 0xa746,
-        0xa748, 0xa748,
-        0xa74a, 0xa74a,
-        0xa74c, 0xa74c,
-        0xa74e, 0xa74e,
-        0xa750, 0xa750,
-        0xa752, 0xa752,
-        0xa754, 0xa754,
-        0xa756, 0xa756,
-        0xa758, 0xa758,
-        0xa75a, 0xa75a,
-        0xa75c, 0xa75c,
-        0xa75e, 0xa75e,
-        0xa760, 0xa760,
-        0xa762, 0xa762,
-        0xa764, 0xa764,
-        0xa766, 0xa766,
-        0xa768, 0xa768,
-        0xa76a, 0xa76a,
-        0xa76c, 0xa76c,
-        0xa76e, 0xa76e,
-        0xa779, 0xa779,
-        0xa77b, 0xa77b,
-        0xa77d, 0xa77e,
-        0xa780, 0xa780,
-        0xa782, 0xa782,
-        0xa784, 0xa784,
-        0xa786, 0xa786,
-        0xa78b, 0xa78b,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xff21, 0xff3a,
-        0x10400, 0x10427,
-}; /* CR_Changes_When_Casefolded */
-
-/* 'Changes_When_Casemapped': Derived Property */
-static const OnigCodePoint CR_Changes_When_Casemapped[] = {
-        97,
-        0x0041, 0x005a,
-        0x0061, 0x007a,
-        0x00b5, 0x00b5,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x0137,
-        0x0139, 0x018c,
-        0x018e, 0x019a,
-        0x019c, 0x01a9,
-        0x01ac, 0x01b9,
-        0x01bc, 0x01bd,
-        0x01bf, 0x01bf,
-        0x01c4, 0x0220,
-        0x0222, 0x0233,
-        0x023a, 0x0254,
-        0x0256, 0x0257,
-        0x0259, 0x0259,
-        0x025b, 0x025b,
-        0x0260, 0x0260,
-        0x0263, 0x0263,
-        0x0268, 0x0269,
-        0x026b, 0x026b,
-        0x026f, 0x026f,
-        0x0271, 0x0272,
-        0x0275, 0x0275,
-        0x027d, 0x027d,
-        0x0280, 0x0280,
-        0x0283, 0x0283,
-        0x0288, 0x028c,
-        0x0292, 0x0292,
-        0x0345, 0x0345,
-        0x0370, 0x0373,
-        0x0376, 0x0377,
-        0x037b, 0x037d,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03d1,
-        0x03d5, 0x03f2,
-        0x03f4, 0x03f5,
-        0x03f7, 0x03fb,
-        0x03fd, 0x0481,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0561, 0x0587,
-        0x10a0, 0x10c5,
-        0x1d79, 0x1d79,
-        0x1d7d, 0x1d7d,
-        0x1e00, 0x1e9b,
-        0x1e9e, 0x1e9e,
-        0x1ea0, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x2126, 0x2126,
-        0x212a, 0x212b,
-        0x2132, 0x2132,
-        0x214e, 0x214e,
-        0x2160, 0x217f,
-        0x2183, 0x2184,
-        0x24b6, 0x24e9,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2c70,
-        0x2c72, 0x2c73,
-        0x2c75, 0x2c76,
-        0x2c7e, 0x2ce3,
-        0x2ceb, 0x2cee,
-        0x2d00, 0x2d25,
-        0xa640, 0xa65f,
-        0xa662, 0xa66d,
-        0xa680, 0xa697,
-        0xa722, 0xa72f,
-        0xa732, 0xa76f,
-        0xa779, 0xa787,
-        0xa78b, 0xa78c,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xff21, 0xff3a,
-        0xff41, 0xff5a,
-        0x10400, 0x1044f,
-}; /* CR_Changes_When_Casemapped */
-
-/* 'ID_Start': Derived Property */
-static const OnigCodePoint CR_ID_Start[] = {
-        424,
-        0x0041, 0x005a,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x02c1,
-        0x02c6, 0x02d1,
-        0x02e0, 0x02e4,
-        0x02ec, 0x02ec,
-        0x02ee, 0x02ee,
-        0x0370, 0x0374,
-        0x0376, 0x0377,
-        0x037a, 0x037d,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03f5,
-        0x03f7, 0x0481,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x0559,
-        0x0561, 0x0587,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f2,
-        0x0621, 0x064a,
-        0x066e, 0x066f,
-        0x0671, 0x06d3,
-        0x06d5, 0x06d5,
-        0x06e5, 0x06e6,
-        0x06ee, 0x06ef,
-        0x06fa, 0x06fc,
-        0x06ff, 0x06ff,
-        0x0710, 0x0710,
-        0x0712, 0x072f,
-        0x074d, 0x07a5,
-        0x07b1, 0x07b1,
-        0x07ca, 0x07ea,
-        0x07f4, 0x07f5,
-        0x07fa, 0x07fa,
-        0x0800, 0x0815,
-        0x081a, 0x081a,
-        0x0824, 0x0824,
-        0x0828, 0x0828,
-        0x0904, 0x0939,
-        0x093d, 0x093d,
-        0x0950, 0x0950,
-        0x0958, 0x0961,
-        0x0971, 0x0972,
-        0x0979, 0x097f,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bd, 0x09bd,
-        0x09ce, 0x09ce,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e1,
-        0x09f0, 0x09f1,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a72, 0x0a74,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abd, 0x0abd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae1,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3d, 0x0b3d,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b61,
-        0x0b71, 0x0b71,
-        0x0b83, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bd0, 0x0bd0,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c3d,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c61,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbd, 0x0cbd,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce1,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d3d,
-        0x0d60, 0x0d61,
-        0x0d7a, 0x0d7f,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0e01, 0x0e30,
-        0x0e32, 0x0e33,
-        0x0e40, 0x0e46,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb0,
-        0x0eb2, 0x0eb3,
-        0x0ebd, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f00,
-        0x0f40, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f88, 0x0f8b,
-        0x1000, 0x102a,
-        0x103f, 0x103f,
-        0x1050, 0x1055,
-        0x105a, 0x105d,
-        0x1061, 0x1061,
-        0x1065, 0x1066,
-        0x106e, 0x1070,
-        0x1075, 0x1081,
-        0x108e, 0x108e,
-        0x10a0, 0x10c5,
-        0x10d0, 0x10fa,
-        0x10fc, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x1380, 0x138f,
-        0x13a0, 0x13f4,
-        0x1401, 0x166c,
-        0x166f, 0x167f,
-        0x1681, 0x169a,
-        0x16a0, 0x16ea,
-        0x16ee, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1711,
-        0x1720, 0x1731,
-        0x1740, 0x1751,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1780, 0x17b3,
-        0x17d7, 0x17d7,
-        0x17dc, 0x17dc,
-        0x1820, 0x1877,
-        0x1880, 0x18a8,
-        0x18aa, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1950, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19c1, 0x19c7,
-        0x1a00, 0x1a16,
-        0x1a20, 0x1a54,
-        0x1aa7, 0x1aa7,
-        0x1b05, 0x1b33,
-        0x1b45, 0x1b4b,
-        0x1b83, 0x1ba0,
-        0x1bae, 0x1baf,
-        0x1c00, 0x1c23,
-        0x1c4d, 0x1c4f,
-        0x1c5a, 0x1c7d,
-        0x1ce9, 0x1cec,
-        0x1cee, 0x1cf1,
-        0x1d00, 0x1dbf,
-        0x1e00, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2118, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x2139,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x214e, 0x214e,
-        0x2160, 0x2188,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2ce4,
-        0x2ceb, 0x2cee,
-        0x2d00, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x3005, 0x3007,
-        0x3021, 0x3029,
-        0x3031, 0x3035,
-        0x3038, 0x303c,
-        0x3041, 0x3096,
-        0x309b, 0x309f,
-        0x30a1, 0x30fa,
-        0x30fc, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x31a0, 0x31b7,
-        0x31f0, 0x31ff,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa4d0, 0xa4fd,
-        0xa500, 0xa60c,
-        0xa610, 0xa61f,
-        0xa62a, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa66e,
-        0xa67f, 0xa697,
-        0xa6a0, 0xa6ef,
-        0xa717, 0xa71f,
-        0xa722, 0xa788,
-        0xa78b, 0xa78c,
-        0xa7fb, 0xa801,
-        0xa803, 0xa805,
-        0xa807, 0xa80a,
-        0xa80c, 0xa822,
-        0xa840, 0xa873,
-        0xa882, 0xa8b3,
-        0xa8f2, 0xa8f7,
-        0xa8fb, 0xa8fb,
-        0xa90a, 0xa925,
-        0xa930, 0xa946,
-        0xa960, 0xa97c,
-        0xa984, 0xa9b2,
-        0xa9cf, 0xa9cf,
-        0xaa00, 0xaa28,
-        0xaa40, 0xaa42,
-        0xaa44, 0xaa4b,
-        0xaa60, 0xaa76,
-        0xaa7a, 0xaa7a,
-        0xaa80, 0xaaaf,
-        0xaab1, 0xaab1,
-        0xaab5, 0xaab6,
-        0xaab9, 0xaabd,
-        0xaac0, 0xaac0,
-        0xaac2, 0xaac2,
-        0xaadb, 0xaadd,
-        0xabc0, 0xabe2,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb1d,
-        0xfb1f, 0xfb28,
-        0xfb2a, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfb,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xff21, 0xff3a,
-        0xff41, 0xff5a,
-        0xff66, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10140, 0x10174,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103cf,
-        0x103d1, 0x103d5,
-        0x10400, 0x1049d,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10900, 0x10915,
-        0x10920, 0x10939,
-        0x10a00, 0x10a00,
-        0x10a10, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a60, 0x10a7c,
-        0x10b00, 0x10b35,
-        0x10b40, 0x10b55,
-        0x10b60, 0x10b72,
-        0x10c00, 0x10c48,
-        0x11083, 0x110af,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x13000, 0x1342e,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-}; /* CR_ID_Start */
-
-/* 'ID_Continue': Derived Property */
-static const OnigCodePoint CR_ID_Continue[] = {
-        506,
-        0x0030, 0x0039,
-        0x0041, 0x005a,
-        0x005f, 0x005f,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00b7, 0x00b7,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x02c1,
-        0x02c6, 0x02d1,
-        0x02e0, 0x02e4,
-        0x02ec, 0x02ec,
-        0x02ee, 0x02ee,
-        0x0300, 0x0374,
-        0x0376, 0x0377,
-        0x037a, 0x037d,
-        0x0386, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03f5,
-        0x03f7, 0x0481,
-        0x0483, 0x0487,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x0559,
-        0x0561, 0x0587,
-        0x0591, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f2,
-        0x0610, 0x061a,
-        0x0621, 0x065e,
-        0x0660, 0x0669,
-        0x066e, 0x06d3,
-        0x06d5, 0x06dc,
-        0x06df, 0x06e8,
-        0x06ea, 0x06fc,
-        0x06ff, 0x06ff,
-        0x0710, 0x074a,
-        0x074d, 0x07b1,
-        0x07c0, 0x07f5,
-        0x07fa, 0x07fa,
-        0x0800, 0x082d,
-        0x0900, 0x0939,
-        0x093c, 0x094e,
-        0x0950, 0x0955,
-        0x0958, 0x0963,
-        0x0966, 0x096f,
-        0x0971, 0x0972,
-        0x0979, 0x097f,
-        0x0981, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bc, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09ce,
-        0x09d7, 0x09d7,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e3,
-        0x09e6, 0x09f1,
-        0x0a01, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3c, 0x0a3c,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a66, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abc, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae3,
-        0x0ae6, 0x0aef,
-        0x0b01, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3c, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4d,
-        0x0b56, 0x0b57,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b63,
-        0x0b66, 0x0b6f,
-        0x0b71, 0x0b71,
-        0x0b82, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcd,
-        0x0bd0, 0x0bd0,
-        0x0bd7, 0x0bd7,
-        0x0be6, 0x0bef,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c63,
-        0x0c66, 0x0c6f,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbc, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccd,
-        0x0cd5, 0x0cd6,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce3,
-        0x0ce6, 0x0cef,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4d,
-        0x0d57, 0x0d57,
-        0x0d60, 0x0d63,
-        0x0d66, 0x0d6f,
-        0x0d7a, 0x0d7f,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dca, 0x0dca,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df3,
-        0x0e01, 0x0e3a,
-        0x0e40, 0x0e4e,
-        0x0e50, 0x0e59,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb9,
-        0x0ebb, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ec8, 0x0ecd,
-        0x0ed0, 0x0ed9,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f00,
-        0x0f18, 0x0f19,
-        0x0f20, 0x0f29,
-        0x0f35, 0x0f35,
-        0x0f37, 0x0f37,
-        0x0f39, 0x0f39,
-        0x0f3e, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f71, 0x0f84,
-        0x0f86, 0x0f8b,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fc6, 0x0fc6,
-        0x1000, 0x1049,
-        0x1050, 0x109d,
-        0x10a0, 0x10c5,
-        0x10d0, 0x10fa,
-        0x10fc, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x135f, 0x135f,
-        0x1369, 0x1371,
-        0x1380, 0x138f,
-        0x13a0, 0x13f4,
-        0x1401, 0x166c,
-        0x166f, 0x167f,
-        0x1681, 0x169a,
-        0x16a0, 0x16ea,
-        0x16ee, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1714,
-        0x1720, 0x1734,
-        0x1740, 0x1753,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1772, 0x1773,
-        0x1780, 0x17b3,
-        0x17b6, 0x17d3,
-        0x17d7, 0x17d7,
-        0x17dc, 0x17dd,
-        0x17e0, 0x17e9,
-        0x180b, 0x180d,
-        0x1810, 0x1819,
-        0x1820, 0x1877,
-        0x1880, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1920, 0x192b,
-        0x1930, 0x193b,
-        0x1946, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x19d0, 0x19da,
-        0x1a00, 0x1a1b,
-        0x1a20, 0x1a5e,
-        0x1a60, 0x1a7c,
-        0x1a7f, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1aa7, 0x1aa7,
-        0x1b00, 0x1b4b,
-        0x1b50, 0x1b59,
-        0x1b6b, 0x1b73,
-        0x1b80, 0x1baa,
-        0x1bae, 0x1bb9,
-        0x1c00, 0x1c37,
-        0x1c40, 0x1c49,
-        0x1c4d, 0x1c7d,
-        0x1cd0, 0x1cd2,
-        0x1cd4, 0x1cf2,
-        0x1d00, 0x1de6,
-        0x1dfd, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x203f, 0x2040,
-        0x2054, 0x2054,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x20d0, 0x20dc,
-        0x20e1, 0x20e1,
-        0x20e5, 0x20f0,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2118, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x2139,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x214e, 0x214e,
-        0x2160, 0x2188,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2ce4,
-        0x2ceb, 0x2cf1,
-        0x2d00, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2de0, 0x2dff,
-        0x3005, 0x3007,
-        0x3021, 0x302f,
-        0x3031, 0x3035,
-        0x3038, 0x303c,
-        0x3041, 0x3096,
-        0x3099, 0x309f,
-        0x30a1, 0x30fa,
-        0x30fc, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x31a0, 0x31b7,
-        0x31f0, 0x31ff,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa4d0, 0xa4fd,
-        0xa500, 0xa60c,
-        0xa610, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa66f,
-        0xa67c, 0xa67d,
-        0xa67f, 0xa697,
-        0xa6a0, 0xa6f1,
-        0xa717, 0xa71f,
-        0xa722, 0xa788,
-        0xa78b, 0xa78c,
-        0xa7fb, 0xa827,
-        0xa840, 0xa873,
-        0xa880, 0xa8c4,
-        0xa8d0, 0xa8d9,
-        0xa8e0, 0xa8f7,
-        0xa8fb, 0xa8fb,
-        0xa900, 0xa92d,
-        0xa930, 0xa953,
-        0xa960, 0xa97c,
-        0xa980, 0xa9c0,
-        0xa9cf, 0xa9d9,
-        0xaa00, 0xaa36,
-        0xaa40, 0xaa4d,
-        0xaa50, 0xaa59,
-        0xaa60, 0xaa76,
-        0xaa7a, 0xaa7b,
-        0xaa80, 0xaac2,
-        0xaadb, 0xaadd,
-        0xabc0, 0xabea,
-        0xabec, 0xabed,
-        0xabf0, 0xabf9,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb28,
-        0xfb2a, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfb,
-        0xfe00, 0xfe0f,
-        0xfe20, 0xfe26,
-        0xfe33, 0xfe34,
-        0xfe4d, 0xfe4f,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xff10, 0xff19,
-        0xff21, 0xff3a,
-        0xff3f, 0xff3f,
-        0xff41, 0xff5a,
-        0xff66, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10140, 0x10174,
-        0x101fd, 0x101fd,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103cf,
-        0x103d1, 0x103d5,
-        0x10400, 0x1049d,
-        0x104a0, 0x104a9,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10900, 0x10915,
-        0x10920, 0x10939,
-        0x10a00, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a3f,
-        0x10a60, 0x10a7c,
-        0x10b00, 0x10b35,
-        0x10b40, 0x10b55,
-        0x10b60, 0x10b72,
-        0x10c00, 0x10c48,
-        0x11080, 0x110ba,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x13000, 0x1342e,
-        0x1d165, 0x1d169,
-        0x1d16d, 0x1d172,
-        0x1d17b, 0x1d182,
-        0x1d185, 0x1d18b,
-        0x1d1aa, 0x1d1ad,
-        0x1d242, 0x1d244,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-        0xe0100, 0xe01ef,
-}; /* CR_ID_Continue */
-
-/* 'XID_Start': Derived Property */
-static const OnigCodePoint CR_XID_Start[] = {
-        431,
-        0x0041, 0x005a,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x02c1,
-        0x02c6, 0x02d1,
-        0x02e0, 0x02e4,
-        0x02ec, 0x02ec,
-        0x02ee, 0x02ee,
-        0x0370, 0x0374,
-        0x0376, 0x0377,
-        0x037b, 0x037d,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03f5,
-        0x03f7, 0x0481,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x0559,
-        0x0561, 0x0587,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f2,
-        0x0621, 0x064a,
-        0x066e, 0x066f,
-        0x0671, 0x06d3,
-        0x06d5, 0x06d5,
-        0x06e5, 0x06e6,
-        0x06ee, 0x06ef,
-        0x06fa, 0x06fc,
-        0x06ff, 0x06ff,
-        0x0710, 0x0710,
-        0x0712, 0x072f,
-        0x074d, 0x07a5,
-        0x07b1, 0x07b1,
-        0x07ca, 0x07ea,
-        0x07f4, 0x07f5,
-        0x07fa, 0x07fa,
-        0x0800, 0x0815,
-        0x081a, 0x081a,
-        0x0824, 0x0824,
-        0x0828, 0x0828,
-        0x0904, 0x0939,
-        0x093d, 0x093d,
-        0x0950, 0x0950,
-        0x0958, 0x0961,
-        0x0971, 0x0972,
-        0x0979, 0x097f,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bd, 0x09bd,
-        0x09ce, 0x09ce,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e1,
-        0x09f0, 0x09f1,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a72, 0x0a74,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abd, 0x0abd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae1,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3d, 0x0b3d,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b61,
-        0x0b71, 0x0b71,
-        0x0b83, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bd0, 0x0bd0,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c3d,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c61,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbd, 0x0cbd,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce1,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d3d,
-        0x0d60, 0x0d61,
-        0x0d7a, 0x0d7f,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0e01, 0x0e30,
-        0x0e32, 0x0e32,
-        0x0e40, 0x0e46,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb0,
-        0x0eb2, 0x0eb2,
-        0x0ebd, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f00,
-        0x0f40, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f88, 0x0f8b,
-        0x1000, 0x102a,
-        0x103f, 0x103f,
-        0x1050, 0x1055,
-        0x105a, 0x105d,
-        0x1061, 0x1061,
-        0x1065, 0x1066,
-        0x106e, 0x1070,
-        0x1075, 0x1081,
-        0x108e, 0x108e,
-        0x10a0, 0x10c5,
-        0x10d0, 0x10fa,
-        0x10fc, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x1380, 0x138f,
-        0x13a0, 0x13f4,
-        0x1401, 0x166c,
-        0x166f, 0x167f,
-        0x1681, 0x169a,
-        0x16a0, 0x16ea,
-        0x16ee, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1711,
-        0x1720, 0x1731,
-        0x1740, 0x1751,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1780, 0x17b3,
-        0x17d7, 0x17d7,
-        0x17dc, 0x17dc,
-        0x1820, 0x1877,
-        0x1880, 0x18a8,
-        0x18aa, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1950, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19c1, 0x19c7,
-        0x1a00, 0x1a16,
-        0x1a20, 0x1a54,
-        0x1aa7, 0x1aa7,
-        0x1b05, 0x1b33,
-        0x1b45, 0x1b4b,
-        0x1b83, 0x1ba0,
-        0x1bae, 0x1baf,
-        0x1c00, 0x1c23,
-        0x1c4d, 0x1c4f,
-        0x1c5a, 0x1c7d,
-        0x1ce9, 0x1cec,
-        0x1cee, 0x1cf1,
-        0x1d00, 0x1dbf,
-        0x1e00, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2118, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x2139,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x214e, 0x214e,
-        0x2160, 0x2188,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2ce4,
-        0x2ceb, 0x2cee,
-        0x2d00, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x3005, 0x3007,
-        0x3021, 0x3029,
-        0x3031, 0x3035,
-        0x3038, 0x303c,
-        0x3041, 0x3096,
-        0x309d, 0x309f,
-        0x30a1, 0x30fa,
-        0x30fc, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x31a0, 0x31b7,
-        0x31f0, 0x31ff,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa4d0, 0xa4fd,
-        0xa500, 0xa60c,
-        0xa610, 0xa61f,
-        0xa62a, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa66e,
-        0xa67f, 0xa697,
-        0xa6a0, 0xa6ef,
-        0xa717, 0xa71f,
-        0xa722, 0xa788,
-        0xa78b, 0xa78c,
-        0xa7fb, 0xa801,
-        0xa803, 0xa805,
-        0xa807, 0xa80a,
-        0xa80c, 0xa822,
-        0xa840, 0xa873,
-        0xa882, 0xa8b3,
-        0xa8f2, 0xa8f7,
-        0xa8fb, 0xa8fb,
-        0xa90a, 0xa925,
-        0xa930, 0xa946,
-        0xa960, 0xa97c,
-        0xa984, 0xa9b2,
-        0xa9cf, 0xa9cf,
-        0xaa00, 0xaa28,
-        0xaa40, 0xaa42,
-        0xaa44, 0xaa4b,
-        0xaa60, 0xaa76,
-        0xaa7a, 0xaa7a,
-        0xaa80, 0xaaaf,
-        0xaab1, 0xaab1,
-        0xaab5, 0xaab6,
-        0xaab9, 0xaabd,
-        0xaac0, 0xaac0,
-        0xaac2, 0xaac2,
-        0xaadb, 0xaadd,
-        0xabc0, 0xabe2,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb1d,
-        0xfb1f, 0xfb28,
-        0xfb2a, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfc5d,
-        0xfc64, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdf9,
-        0xfe71, 0xfe71,
-        0xfe73, 0xfe73,
-        0xfe77, 0xfe77,
-        0xfe79, 0xfe79,
-        0xfe7b, 0xfe7b,
-        0xfe7d, 0xfe7d,
-        0xfe7f, 0xfefc,
-        0xff21, 0xff3a,
-        0xff41, 0xff5a,
-        0xff66, 0xff9d,
-        0xffa0, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10140, 0x10174,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103cf,
-        0x103d1, 0x103d5,
-        0x10400, 0x1049d,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10900, 0x10915,
-        0x10920, 0x10939,
-        0x10a00, 0x10a00,
-        0x10a10, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a60, 0x10a7c,
-        0x10b00, 0x10b35,
-        0x10b40, 0x10b55,
-        0x10b60, 0x10b72,
-        0x10c00, 0x10c48,
-        0x11083, 0x110af,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x13000, 0x1342e,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-}; /* CR_XID_Start */
-
-/* 'XID_Continue': Derived Property */
-static const OnigCodePoint CR_XID_Continue[] = {
-        513,
-        0x0030, 0x0039,
-        0x0041, 0x005a,
-        0x005f, 0x005f,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00b7, 0x00b7,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x02c1,
-        0x02c6, 0x02d1,
-        0x02e0, 0x02e4,
-        0x02ec, 0x02ec,
-        0x02ee, 0x02ee,
-        0x0300, 0x0374,
-        0x0376, 0x0377,
-        0x037b, 0x037d,
-        0x0386, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03f5,
-        0x03f7, 0x0481,
-        0x0483, 0x0487,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x0559,
-        0x0561, 0x0587,
-        0x0591, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f2,
-        0x0610, 0x061a,
-        0x0621, 0x065e,
-        0x0660, 0x0669,
-        0x066e, 0x06d3,
-        0x06d5, 0x06dc,
-        0x06df, 0x06e8,
-        0x06ea, 0x06fc,
-        0x06ff, 0x06ff,
-        0x0710, 0x074a,
-        0x074d, 0x07b1,
-        0x07c0, 0x07f5,
-        0x07fa, 0x07fa,
-        0x0800, 0x082d,
-        0x0900, 0x0939,
-        0x093c, 0x094e,
-        0x0950, 0x0955,
-        0x0958, 0x0963,
-        0x0966, 0x096f,
-        0x0971, 0x0972,
-        0x0979, 0x097f,
-        0x0981, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bc, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09ce,
-        0x09d7, 0x09d7,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e3,
-        0x09e6, 0x09f1,
-        0x0a01, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3c, 0x0a3c,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a66, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abc, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae3,
-        0x0ae6, 0x0aef,
-        0x0b01, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3c, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4d,
-        0x0b56, 0x0b57,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b63,
-        0x0b66, 0x0b6f,
-        0x0b71, 0x0b71,
-        0x0b82, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcd,
-        0x0bd0, 0x0bd0,
-        0x0bd7, 0x0bd7,
-        0x0be6, 0x0bef,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c63,
-        0x0c66, 0x0c6f,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbc, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccd,
-        0x0cd5, 0x0cd6,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce3,
-        0x0ce6, 0x0cef,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4d,
-        0x0d57, 0x0d57,
-        0x0d60, 0x0d63,
-        0x0d66, 0x0d6f,
-        0x0d7a, 0x0d7f,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dca, 0x0dca,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df3,
-        0x0e01, 0x0e3a,
-        0x0e40, 0x0e4e,
-        0x0e50, 0x0e59,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb9,
-        0x0ebb, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ec8, 0x0ecd,
-        0x0ed0, 0x0ed9,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f00,
-        0x0f18, 0x0f19,
-        0x0f20, 0x0f29,
-        0x0f35, 0x0f35,
-        0x0f37, 0x0f37,
-        0x0f39, 0x0f39,
-        0x0f3e, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f71, 0x0f84,
-        0x0f86, 0x0f8b,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fc6, 0x0fc6,
-        0x1000, 0x1049,
-        0x1050, 0x109d,
-        0x10a0, 0x10c5,
-        0x10d0, 0x10fa,
-        0x10fc, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x135f, 0x135f,
-        0x1369, 0x1371,
-        0x1380, 0x138f,
-        0x13a0, 0x13f4,
-        0x1401, 0x166c,
-        0x166f, 0x167f,
-        0x1681, 0x169a,
-        0x16a0, 0x16ea,
-        0x16ee, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1714,
-        0x1720, 0x1734,
-        0x1740, 0x1753,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1772, 0x1773,
-        0x1780, 0x17b3,
-        0x17b6, 0x17d3,
-        0x17d7, 0x17d7,
-        0x17dc, 0x17dd,
-        0x17e0, 0x17e9,
-        0x180b, 0x180d,
-        0x1810, 0x1819,
-        0x1820, 0x1877,
-        0x1880, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1920, 0x192b,
-        0x1930, 0x193b,
-        0x1946, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x19d0, 0x19da,
-        0x1a00, 0x1a1b,
-        0x1a20, 0x1a5e,
-        0x1a60, 0x1a7c,
-        0x1a7f, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1aa7, 0x1aa7,
-        0x1b00, 0x1b4b,
-        0x1b50, 0x1b59,
-        0x1b6b, 0x1b73,
-        0x1b80, 0x1baa,
-        0x1bae, 0x1bb9,
-        0x1c00, 0x1c37,
-        0x1c40, 0x1c49,
-        0x1c4d, 0x1c7d,
-        0x1cd0, 0x1cd2,
-        0x1cd4, 0x1cf2,
-        0x1d00, 0x1de6,
-        0x1dfd, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x203f, 0x2040,
-        0x2054, 0x2054,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x20d0, 0x20dc,
-        0x20e1, 0x20e1,
-        0x20e5, 0x20f0,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2118, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x2139,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x214e, 0x214e,
-        0x2160, 0x2188,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2ce4,
-        0x2ceb, 0x2cf1,
-        0x2d00, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2de0, 0x2dff,
-        0x3005, 0x3007,
-        0x3021, 0x302f,
-        0x3031, 0x3035,
-        0x3038, 0x303c,
-        0x3041, 0x3096,
-        0x3099, 0x309a,
-        0x309d, 0x309f,
-        0x30a1, 0x30fa,
-        0x30fc, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x31a0, 0x31b7,
-        0x31f0, 0x31ff,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa4d0, 0xa4fd,
-        0xa500, 0xa60c,
-        0xa610, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa66f,
-        0xa67c, 0xa67d,
-        0xa67f, 0xa697,
-        0xa6a0, 0xa6f1,
-        0xa717, 0xa71f,
-        0xa722, 0xa788,
-        0xa78b, 0xa78c,
-        0xa7fb, 0xa827,
-        0xa840, 0xa873,
-        0xa880, 0xa8c4,
-        0xa8d0, 0xa8d9,
-        0xa8e0, 0xa8f7,
-        0xa8fb, 0xa8fb,
-        0xa900, 0xa92d,
-        0xa930, 0xa953,
-        0xa960, 0xa97c,
-        0xa980, 0xa9c0,
-        0xa9cf, 0xa9d9,
-        0xaa00, 0xaa36,
-        0xaa40, 0xaa4d,
-        0xaa50, 0xaa59,
-        0xaa60, 0xaa76,
-        0xaa7a, 0xaa7b,
-        0xaa80, 0xaac2,
-        0xaadb, 0xaadd,
-        0xabc0, 0xabea,
-        0xabec, 0xabed,
-        0xabf0, 0xabf9,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb28,
-        0xfb2a, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfc5d,
-        0xfc64, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdf9,
-        0xfe00, 0xfe0f,
-        0xfe20, 0xfe26,
-        0xfe33, 0xfe34,
-        0xfe4d, 0xfe4f,
-        0xfe71, 0xfe71,
-        0xfe73, 0xfe73,
-        0xfe77, 0xfe77,
-        0xfe79, 0xfe79,
-        0xfe7b, 0xfe7b,
-        0xfe7d, 0xfe7d,
-        0xfe7f, 0xfefc,
-        0xff10, 0xff19,
-        0xff21, 0xff3a,
-        0xff3f, 0xff3f,
-        0xff41, 0xff5a,
-        0xff66, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10140, 0x10174,
-        0x101fd, 0x101fd,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103cf,
-        0x103d1, 0x103d5,
-        0x10400, 0x1049d,
-        0x104a0, 0x104a9,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10900, 0x10915,
-        0x10920, 0x10939,
-        0x10a00, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a3f,
-        0x10a60, 0x10a7c,
-        0x10b00, 0x10b35,
-        0x10b40, 0x10b55,
-        0x10b60, 0x10b72,
-        0x10c00, 0x10c48,
-        0x11080, 0x110ba,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x13000, 0x1342e,
-        0x1d165, 0x1d169,
-        0x1d16d, 0x1d172,
-        0x1d17b, 0x1d182,
-        0x1d185, 0x1d18b,
-        0x1d1aa, 0x1d1ad,
-        0x1d242, 0x1d244,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-        0xe0100, 0xe01ef,
-}; /* CR_XID_Continue */
-
-/* 'Default_Ignorable_Code_Point': Derived Property */
-static const OnigCodePoint CR_Default_Ignorable_Code_Point[] = {
-        15,
-        0x00ad, 0x00ad,
-        0x034f, 0x034f,
-        0x115f, 0x1160,
-        0x17b4, 0x17b5,
-        0x180b, 0x180d,
-        0x200b, 0x200f,
-        0x202a, 0x202e,
-        0x2060, 0x206f,
-        0x3164, 0x3164,
-        0xfe00, 0xfe0f,
-        0xfeff, 0xfeff,
-        0xffa0, 0xffa0,
-        0xfff0, 0xfff8,
-        0x1d173, 0x1d17a,
-        0xe0000, 0xe0fff,
-}; /* CR_Default_Ignorable_Code_Point */
-
-/* 'Grapheme_Extend': Derived Property */
-static const OnigCodePoint CR_Grapheme_Extend[] = {
-        206,
-        0x0300, 0x036f,
-        0x0483, 0x0489,
-        0x0591, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x0610, 0x061a,
-        0x064b, 0x065e,
-        0x0670, 0x0670,
-        0x06d6, 0x06dc,
-        0x06de, 0x06e4,
-        0x06e7, 0x06e8,
-        0x06ea, 0x06ed,
-        0x0711, 0x0711,
-        0x0730, 0x074a,
-        0x07a6, 0x07b0,
-        0x07eb, 0x07f3,
-        0x0816, 0x0819,
-        0x081b, 0x0823,
-        0x0825, 0x0827,
-        0x0829, 0x082d,
-        0x0900, 0x0902,
-        0x093c, 0x093c,
-        0x0941, 0x0948,
-        0x094d, 0x094d,
-        0x0951, 0x0955,
-        0x0962, 0x0963,
-        0x0981, 0x0981,
-        0x09bc, 0x09bc,
-        0x09be, 0x09be,
-        0x09c1, 0x09c4,
-        0x09cd, 0x09cd,
-        0x09d7, 0x09d7,
-        0x09e2, 0x09e3,
-        0x0a01, 0x0a02,
-        0x0a3c, 0x0a3c,
-        0x0a41, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a70, 0x0a71,
-        0x0a75, 0x0a75,
-        0x0a81, 0x0a82,
-        0x0abc, 0x0abc,
-        0x0ac1, 0x0ac5,
-        0x0ac7, 0x0ac8,
-        0x0acd, 0x0acd,
-        0x0ae2, 0x0ae3,
-        0x0b01, 0x0b01,
-        0x0b3c, 0x0b3c,
-        0x0b3e, 0x0b3f,
-        0x0b41, 0x0b44,
-        0x0b4d, 0x0b4d,
-        0x0b56, 0x0b57,
-        0x0b62, 0x0b63,
-        0x0b82, 0x0b82,
-        0x0bbe, 0x0bbe,
-        0x0bc0, 0x0bc0,
-        0x0bcd, 0x0bcd,
-        0x0bd7, 0x0bd7,
-        0x0c3e, 0x0c40,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c62, 0x0c63,
-        0x0cbc, 0x0cbc,
-        0x0cbf, 0x0cbf,
-        0x0cc2, 0x0cc2,
-        0x0cc6, 0x0cc6,
-        0x0ccc, 0x0ccd,
-        0x0cd5, 0x0cd6,
-        0x0ce2, 0x0ce3,
-        0x0d3e, 0x0d3e,
-        0x0d41, 0x0d44,
-        0x0d4d, 0x0d4d,
-        0x0d57, 0x0d57,
-        0x0d62, 0x0d63,
-        0x0dca, 0x0dca,
-        0x0dcf, 0x0dcf,
-        0x0dd2, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0ddf, 0x0ddf,
-        0x0e31, 0x0e31,
-        0x0e34, 0x0e3a,
-        0x0e47, 0x0e4e,
-        0x0eb1, 0x0eb1,
-        0x0eb4, 0x0eb9,
-        0x0ebb, 0x0ebc,
-        0x0ec8, 0x0ecd,
-        0x0f18, 0x0f19,
-        0x0f35, 0x0f35,
-        0x0f37, 0x0f37,
-        0x0f39, 0x0f39,
-        0x0f71, 0x0f7e,
-        0x0f80, 0x0f84,
-        0x0f86, 0x0f87,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fc6, 0x0fc6,
-        0x102d, 0x1030,
-        0x1032, 0x1037,
-        0x1039, 0x103a,
-        0x103d, 0x103e,
-        0x1058, 0x1059,
-        0x105e, 0x1060,
-        0x1071, 0x1074,
-        0x1082, 0x1082,
-        0x1085, 0x1086,
-        0x108d, 0x108d,
-        0x109d, 0x109d,
-        0x135f, 0x135f,
-        0x1712, 0x1714,
-        0x1732, 0x1734,
-        0x1752, 0x1753,
-        0x1772, 0x1773,
-        0x17b7, 0x17bd,
-        0x17c6, 0x17c6,
-        0x17c9, 0x17d3,
-        0x17dd, 0x17dd,
-        0x180b, 0x180d,
-        0x18a9, 0x18a9,
-        0x1920, 0x1922,
-        0x1927, 0x1928,
-        0x1932, 0x1932,
-        0x1939, 0x193b,
-        0x1a17, 0x1a18,
-        0x1a56, 0x1a56,
-        0x1a58, 0x1a5e,
-        0x1a60, 0x1a60,
-        0x1a62, 0x1a62,
-        0x1a65, 0x1a6c,
-        0x1a73, 0x1a7c,
-        0x1a7f, 0x1a7f,
-        0x1b00, 0x1b03,
-        0x1b34, 0x1b34,
-        0x1b36, 0x1b3a,
-        0x1b3c, 0x1b3c,
-        0x1b42, 0x1b42,
-        0x1b6b, 0x1b73,
-        0x1b80, 0x1b81,
-        0x1ba2, 0x1ba5,
-        0x1ba8, 0x1ba9,
-        0x1c2c, 0x1c33,
-        0x1c36, 0x1c37,
-        0x1cd0, 0x1cd2,
-        0x1cd4, 0x1ce0,
-        0x1ce2, 0x1ce8,
-        0x1ced, 0x1ced,
-        0x1dc0, 0x1de6,
-        0x1dfd, 0x1dff,
-        0x200c, 0x200d,
-        0x20d0, 0x20f0,
-        0x2cef, 0x2cf1,
-        0x2de0, 0x2dff,
-        0x302a, 0x302f,
-        0x3099, 0x309a,
-        0xa66f, 0xa672,
-        0xa67c, 0xa67d,
-        0xa6f0, 0xa6f1,
-        0xa802, 0xa802,
-        0xa806, 0xa806,
-        0xa80b, 0xa80b,
-        0xa825, 0xa826,
-        0xa8c4, 0xa8c4,
-        0xa8e0, 0xa8f1,
-        0xa926, 0xa92d,
-        0xa947, 0xa951,
-        0xa980, 0xa982,
-        0xa9b3, 0xa9b3,
-        0xa9b6, 0xa9b9,
-        0xa9bc, 0xa9bc,
-        0xaa29, 0xaa2e,
-        0xaa31, 0xaa32,
-        0xaa35, 0xaa36,
-        0xaa43, 0xaa43,
-        0xaa4c, 0xaa4c,
-        0xaab0, 0xaab0,
-        0xaab2, 0xaab4,
-        0xaab7, 0xaab8,
-        0xaabe, 0xaabf,
-        0xaac1, 0xaac1,
-        0xabe5, 0xabe5,
-        0xabe8, 0xabe8,
-        0xabed, 0xabed,
-        0xfb1e, 0xfb1e,
-        0xfe00, 0xfe0f,
-        0xfe20, 0xfe26,
-        0xff9e, 0xff9f,
-        0x101fd, 0x101fd,
-        0x10a01, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a0f,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a3f,
-        0x11080, 0x11081,
-        0x110b3, 0x110b6,
-        0x110b9, 0x110ba,
-        0x1d165, 0x1d165,
-        0x1d167, 0x1d169,
-        0x1d16e, 0x1d172,
-        0x1d17b, 0x1d182,
-        0x1d185, 0x1d18b,
-        0x1d1aa, 0x1d1ad,
-        0x1d242, 0x1d244,
-        0xe0100, 0xe01ef,
-}; /* CR_Grapheme_Extend */
-
-/* 'Grapheme_Base': Derived Property */
-static const OnigCodePoint CR_Grapheme_Base[] = {
-        567,
-        0x0020, 0x007e,
-        0x00a0, 0x00ac,
-        0x00ae, 0x02ff,
-        0x0370, 0x0377,
-        0x037a, 0x037e,
-        0x0384, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x0482,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x055f,
-        0x0561, 0x0587,
-        0x0589, 0x058a,
-        0x05be, 0x05be,
-        0x05c0, 0x05c0,
-        0x05c3, 0x05c3,
-        0x05c6, 0x05c6,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f4,
-        0x0606, 0x060f,
-        0x061b, 0x061b,
-        0x061e, 0x061f,
-        0x0621, 0x064a,
-        0x0660, 0x066f,
-        0x0671, 0x06d5,
-        0x06e5, 0x06e6,
-        0x06e9, 0x06e9,
-        0x06ee, 0x070d,
-        0x0710, 0x0710,
-        0x0712, 0x072f,
-        0x074d, 0x07a5,
-        0x07b1, 0x07b1,
-        0x07c0, 0x07ea,
-        0x07f4, 0x07fa,
-        0x0800, 0x0815,
-        0x081a, 0x081a,
-        0x0824, 0x0824,
-        0x0828, 0x0828,
-        0x0830, 0x083e,
-        0x0903, 0x0939,
-        0x093d, 0x0940,
-        0x0949, 0x094c,
-        0x094e, 0x094e,
-        0x0950, 0x0950,
-        0x0958, 0x0961,
-        0x0964, 0x0972,
-        0x0979, 0x097f,
-        0x0982, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bd, 0x09bd,
-        0x09bf, 0x09c0,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09cc,
-        0x09ce, 0x09ce,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e1,
-        0x09e6, 0x09fb,
-        0x0a03, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3e, 0x0a40,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a66, 0x0a6f,
-        0x0a72, 0x0a74,
-        0x0a83, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abd, 0x0ac0,
-        0x0ac9, 0x0ac9,
-        0x0acb, 0x0acc,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae1,
-        0x0ae6, 0x0aef,
-        0x0af1, 0x0af1,
-        0x0b02, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3d, 0x0b3d,
-        0x0b40, 0x0b40,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4c,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b61,
-        0x0b66, 0x0b71,
-        0x0b83, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbf, 0x0bbf,
-        0x0bc1, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcc,
-        0x0bd0, 0x0bd0,
-        0x0be6, 0x0bfa,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c3d,
-        0x0c41, 0x0c44,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c61,
-        0x0c66, 0x0c6f,
-        0x0c78, 0x0c7f,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbd, 0x0cbe,
-        0x0cc0, 0x0cc1,
-        0x0cc3, 0x0cc4,
-        0x0cc7, 0x0cc8,
-        0x0cca, 0x0ccb,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce1,
-        0x0ce6, 0x0cef,
-        0x0cf1, 0x0cf2,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d3d,
-        0x0d3f, 0x0d40,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4c,
-        0x0d60, 0x0d61,
-        0x0d66, 0x0d75,
-        0x0d79, 0x0d7f,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dd0, 0x0dd1,
-        0x0dd8, 0x0dde,
-        0x0df2, 0x0df4,
-        0x0e01, 0x0e30,
-        0x0e32, 0x0e33,
-        0x0e3f, 0x0e46,
-        0x0e4f, 0x0e5b,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb0,
-        0x0eb2, 0x0eb3,
-        0x0ebd, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ed0, 0x0ed9,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f17,
-        0x0f1a, 0x0f34,
-        0x0f36, 0x0f36,
-        0x0f38, 0x0f38,
-        0x0f3a, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f7f, 0x0f7f,
-        0x0f85, 0x0f85,
-        0x0f88, 0x0f8b,
-        0x0fbe, 0x0fc5,
-        0x0fc7, 0x0fcc,
-        0x0fce, 0x0fd8,
-        0x1000, 0x102c,
-        0x1031, 0x1031,
-        0x1038, 0x1038,
-        0x103b, 0x103c,
-        0x103f, 0x1057,
-        0x105a, 0x105d,
-        0x1061, 0x1070,
-        0x1075, 0x1081,
-        0x1083, 0x1084,
-        0x1087, 0x108c,
-        0x108e, 0x109c,
-        0x109e, 0x10c5,
-        0x10d0, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x1360, 0x137c,
-        0x1380, 0x1399,
-        0x13a0, 0x13f4,
-        0x1400, 0x169c,
-        0x16a0, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1711,
-        0x1720, 0x1731,
-        0x1735, 0x1736,
-        0x1740, 0x1751,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1780, 0x17b3,
-        0x17b6, 0x17b6,
-        0x17be, 0x17c5,
-        0x17c7, 0x17c8,
-        0x17d4, 0x17dc,
-        0x17e0, 0x17e9,
-        0x17f0, 0x17f9,
-        0x1800, 0x180a,
-        0x180e, 0x180e,
-        0x1810, 0x1819,
-        0x1820, 0x1877,
-        0x1880, 0x18a8,
-        0x18aa, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1923, 0x1926,
-        0x1929, 0x192b,
-        0x1930, 0x1931,
-        0x1933, 0x1938,
-        0x1940, 0x1940,
-        0x1944, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x19d0, 0x19da,
-        0x19de, 0x1a16,
-        0x1a19, 0x1a1b,
-        0x1a1e, 0x1a55,
-        0x1a57, 0x1a57,
-        0x1a61, 0x1a61,
-        0x1a63, 0x1a64,
-        0x1a6d, 0x1a72,
-        0x1a80, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1aa0, 0x1aad,
-        0x1b04, 0x1b33,
-        0x1b35, 0x1b35,
-        0x1b3b, 0x1b3b,
-        0x1b3d, 0x1b41,
-        0x1b43, 0x1b4b,
-        0x1b50, 0x1b6a,
-        0x1b74, 0x1b7c,
-        0x1b82, 0x1ba1,
-        0x1ba6, 0x1ba7,
-        0x1baa, 0x1baa,
-        0x1bae, 0x1bb9,
-        0x1c00, 0x1c2b,
-        0x1c34, 0x1c35,
-        0x1c3b, 0x1c49,
-        0x1c4d, 0x1c7f,
-        0x1cd3, 0x1cd3,
-        0x1ce1, 0x1ce1,
-        0x1ce9, 0x1cec,
-        0x1cee, 0x1cf2,
-        0x1d00, 0x1dbf,
-        0x1e00, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fc4,
-        0x1fc6, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fdd, 0x1fef,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffe,
-        0x2000, 0x200a,
-        0x2010, 0x2027,
-        0x202f, 0x205f,
-        0x2070, 0x2071,
-        0x2074, 0x208e,
-        0x2090, 0x2094,
-        0x20a0, 0x20b8,
-        0x2100, 0x2189,
-        0x2190, 0x23e8,
-        0x2400, 0x2426,
-        0x2440, 0x244a,
-        0x2460, 0x26cd,
-        0x26cf, 0x26e1,
-        0x26e3, 0x26e3,
-        0x26e8, 0x26ff,
-        0x2701, 0x2704,
-        0x2706, 0x2709,
-        0x270c, 0x2727,
-        0x2729, 0x274b,
-        0x274d, 0x274d,
-        0x274f, 0x2752,
-        0x2756, 0x275e,
-        0x2761, 0x2794,
-        0x2798, 0x27af,
-        0x27b1, 0x27be,
-        0x27c0, 0x27ca,
-        0x27cc, 0x27cc,
-        0x27d0, 0x2b4c,
-        0x2b50, 0x2b59,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2cee,
-        0x2cf9, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2e00, 0x2e31,
-        0x2e80, 0x2e99,
-        0x2e9b, 0x2ef3,
-        0x2f00, 0x2fd5,
-        0x2ff0, 0x2ffb,
-        0x3000, 0x3029,
-        0x3030, 0x303f,
-        0x3041, 0x3096,
-        0x309b, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x3190, 0x31b7,
-        0x31c0, 0x31e3,
-        0x31f0, 0x321e,
-        0x3220, 0x32fe,
-        0x3300, 0x4db5,
-        0x4dc0, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa490, 0xa4c6,
-        0xa4d0, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa66e,
-        0xa673, 0xa673,
-        0xa67e, 0xa697,
-        0xa6a0, 0xa6ef,
-        0xa6f2, 0xa6f7,
-        0xa700, 0xa78c,
-        0xa7fb, 0xa801,
-        0xa803, 0xa805,
-        0xa807, 0xa80a,
-        0xa80c, 0xa824,
-        0xa827, 0xa82b,
-        0xa830, 0xa839,
-        0xa840, 0xa877,
-        0xa880, 0xa8c3,
-        0xa8ce, 0xa8d9,
-        0xa8f2, 0xa8fb,
-        0xa900, 0xa925,
-        0xa92e, 0xa946,
-        0xa952, 0xa953,
-        0xa95f, 0xa97c,
-        0xa983, 0xa9b2,
-        0xa9b4, 0xa9b5,
-        0xa9ba, 0xa9bb,
-        0xa9bd, 0xa9cd,
-        0xa9cf, 0xa9d9,
-        0xa9de, 0xa9df,
-        0xaa00, 0xaa28,
-        0xaa2f, 0xaa30,
-        0xaa33, 0xaa34,
-        0xaa40, 0xaa42,
-        0xaa44, 0xaa4b,
-        0xaa4d, 0xaa4d,
-        0xaa50, 0xaa59,
-        0xaa5c, 0xaa7b,
-        0xaa80, 0xaaaf,
-        0xaab1, 0xaab1,
-        0xaab5, 0xaab6,
-        0xaab9, 0xaabd,
-        0xaac0, 0xaac0,
-        0xaac2, 0xaac2,
-        0xaadb, 0xaadf,
-        0xabc0, 0xabe4,
-        0xabe6, 0xabe7,
-        0xabe9, 0xabec,
-        0xabf0, 0xabf9,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb1d,
-        0xfb1f, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3f,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfd,
-        0xfe10, 0xfe19,
-        0xfe30, 0xfe52,
-        0xfe54, 0xfe66,
-        0xfe68, 0xfe6b,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xff01, 0xff9d,
-        0xffa0, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0xffe0, 0xffe6,
-        0xffe8, 0xffee,
-        0xfffc, 0xfffd,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10100, 0x10102,
-        0x10107, 0x10133,
-        0x10137, 0x1018a,
-        0x10190, 0x1019b,
-        0x101d0, 0x101fc,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10320, 0x10323,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x1039f, 0x103c3,
-        0x103c8, 0x103d5,
-        0x10400, 0x1049d,
-        0x104a0, 0x104a9,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10857, 0x1085f,
-        0x10900, 0x1091b,
-        0x1091f, 0x10939,
-        0x1093f, 0x1093f,
-        0x10a00, 0x10a00,
-        0x10a10, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a40, 0x10a47,
-        0x10a50, 0x10a58,
-        0x10a60, 0x10a7f,
-        0x10b00, 0x10b35,
-        0x10b39, 0x10b55,
-        0x10b58, 0x10b72,
-        0x10b78, 0x10b7f,
-        0x10c00, 0x10c48,
-        0x10e60, 0x10e7e,
-        0x11082, 0x110b2,
-        0x110b7, 0x110b8,
-        0x110bb, 0x110bc,
-        0x110be, 0x110c1,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x12470, 0x12473,
-        0x13000, 0x1342e,
-        0x1d000, 0x1d0f5,
-        0x1d100, 0x1d126,
-        0x1d129, 0x1d164,
-        0x1d166, 0x1d166,
-        0x1d16a, 0x1d16d,
-        0x1d183, 0x1d184,
-        0x1d18c, 0x1d1a9,
-        0x1d1ae, 0x1d1dd,
-        0x1d200, 0x1d241,
-        0x1d245, 0x1d245,
-        0x1d300, 0x1d356,
-        0x1d360, 0x1d371,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-        0x1f000, 0x1f02b,
-        0x1f030, 0x1f093,
-        0x1f100, 0x1f10a,
-        0x1f110, 0x1f12e,
-        0x1f131, 0x1f131,
-        0x1f13d, 0x1f13d,
-        0x1f13f, 0x1f13f,
-        0x1f142, 0x1f142,
-        0x1f146, 0x1f146,
-        0x1f14a, 0x1f14e,
-        0x1f157, 0x1f157,
-        0x1f15f, 0x1f15f,
-        0x1f179, 0x1f179,
-        0x1f17b, 0x1f17c,
-        0x1f17f, 0x1f17f,
-        0x1f18a, 0x1f18d,
-        0x1f190, 0x1f190,
-        0x1f200, 0x1f200,
-        0x1f210, 0x1f231,
-        0x1f240, 0x1f248,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-}; /* CR_Grapheme_Base */
-
-/* 'Grapheme_Link': Derived Property */
-static const OnigCodePoint CR_Grapheme_Link[] = {
-        26,
-        0x094d, 0x094d,
-        0x09cd, 0x09cd,
-        0x0a4d, 0x0a4d,
-        0x0acd, 0x0acd,
-        0x0b4d, 0x0b4d,
-        0x0bcd, 0x0bcd,
-        0x0c4d, 0x0c4d,
-        0x0ccd, 0x0ccd,
-        0x0d4d, 0x0d4d,
-        0x0dca, 0x0dca,
-        0x0e3a, 0x0e3a,
-        0x0f84, 0x0f84,
-        0x1039, 0x103a,
-        0x1714, 0x1714,
-        0x1734, 0x1734,
-        0x17d2, 0x17d2,
-        0x1a60, 0x1a60,
-        0x1b44, 0x1b44,
-        0x1baa, 0x1baa,
-        0xa806, 0xa806,
-        0xa8c4, 0xa8c4,
-        0xa953, 0xa953,
-        0xa9c0, 0xa9c0,
-        0xabed, 0xabed,
-        0x10a3f, 0x10a3f,
-        0x110b9, 0x110b9,
-}; /* CR_Grapheme_Link */
-
-/* 'Common': Script */
-static const OnigCodePoint CR_Common[] = {
-        159,
-        0x0000, 0x0040,
-        0x005b, 0x0060,
-        0x007b, 0x00a9,
-        0x00ab, 0x00b9,
-        0x00bb, 0x00bf,
-        0x00d7, 0x00d7,
-        0x00f7, 0x00f7,
-        0x02b9, 0x02df,
-        0x02e5, 0x02ff,
-        0x0374, 0x0374,
-        0x037e, 0x037e,
-        0x0385, 0x0385,
-        0x0387, 0x0387,
-        0x0589, 0x0589,
-        0x0600, 0x0603,
-        0x060c, 0x060c,
-        0x061b, 0x061b,
-        0x061f, 0x061f,
-        0x0640, 0x0640,
-        0x0660, 0x0669,
-        0x06dd, 0x06dd,
-        0x0964, 0x0965,
-        0x0970, 0x0970,
-        0x0cf1, 0x0cf2,
-        0x0e3f, 0x0e3f,
-        0x0fd5, 0x0fd8,
-        0x10fb, 0x10fb,
-        0x16eb, 0x16ed,
-        0x1735, 0x1736,
-        0x1802, 0x1803,
-        0x1805, 0x1805,
-        0x1cd3, 0x1cd3,
-        0x1ce1, 0x1ce1,
-        0x1ce9, 0x1cec,
-        0x1cee, 0x1cf2,
-        0x2000, 0x200b,
-        0x200e, 0x2064,
-        0x206a, 0x2070,
-        0x2074, 0x207e,
-        0x2080, 0x208e,
-        0x20a0, 0x20b8,
-        0x2100, 0x2125,
-        0x2127, 0x2129,
-        0x212c, 0x2131,
-        0x2133, 0x214d,
-        0x214f, 0x215f,
-        0x2189, 0x2189,
-        0x2190, 0x23e8,
-        0x2400, 0x2426,
-        0x2440, 0x244a,
-        0x2460, 0x26cd,
-        0x26cf, 0x26e1,
-        0x26e3, 0x26e3,
-        0x26e8, 0x26ff,
-        0x2701, 0x2704,
-        0x2706, 0x2709,
-        0x270c, 0x2727,
-        0x2729, 0x274b,
-        0x274d, 0x274d,
-        0x274f, 0x2752,
-        0x2756, 0x275e,
-        0x2761, 0x2794,
-        0x2798, 0x27af,
-        0x27b1, 0x27be,
-        0x27c0, 0x27ca,
-        0x27cc, 0x27cc,
-        0x27d0, 0x27ff,
-        0x2900, 0x2b4c,
-        0x2b50, 0x2b59,
-        0x2e00, 0x2e31,
-        0x2ff0, 0x2ffb,
-        0x3000, 0x3004,
-        0x3006, 0x3006,
-        0x3008, 0x3020,
-        0x3030, 0x3037,
-        0x303c, 0x303f,
-        0x309b, 0x309c,
-        0x30a0, 0x30a0,
-        0x30fb, 0x30fc,
-        0x3190, 0x319f,
-        0x31c0, 0x31e3,
-        0x3220, 0x325f,
-        0x327f, 0x32cf,
-        0x3358, 0x33ff,
-        0x4dc0, 0x4dff,
-        0xa700, 0xa721,
-        0xa788, 0xa78a,
-        0xa830, 0xa839,
-        0xfd3e, 0xfd3f,
-        0xfdfd, 0xfdfd,
-        0xfe10, 0xfe19,
-        0xfe30, 0xfe52,
-        0xfe54, 0xfe66,
-        0xfe68, 0xfe6b,
-        0xfeff, 0xfeff,
-        0xff01, 0xff20,
-        0xff3b, 0xff40,
-        0xff5b, 0xff65,
-        0xff70, 0xff70,
-        0xff9e, 0xff9f,
-        0xffe0, 0xffe6,
-        0xffe8, 0xffee,
-        0xfff9, 0xfffd,
-        0x10100, 0x10102,
-        0x10107, 0x10133,
-        0x10137, 0x1013f,
-        0x10190, 0x1019b,
-        0x101d0, 0x101fc,
-        0x1d000, 0x1d0f5,
-        0x1d100, 0x1d126,
-        0x1d129, 0x1d166,
-        0x1d16a, 0x1d17a,
-        0x1d183, 0x1d184,
-        0x1d18c, 0x1d1a9,
-        0x1d1ae, 0x1d1dd,
-        0x1d300, 0x1d356,
-        0x1d360, 0x1d371,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-        0x1f000, 0x1f02b,
-        0x1f030, 0x1f093,
-        0x1f100, 0x1f10a,
-        0x1f110, 0x1f12e,
-        0x1f131, 0x1f131,
-        0x1f13d, 0x1f13d,
-        0x1f13f, 0x1f13f,
-        0x1f142, 0x1f142,
-        0x1f146, 0x1f146,
-        0x1f14a, 0x1f14e,
-        0x1f157, 0x1f157,
-        0x1f15f, 0x1f15f,
-        0x1f179, 0x1f179,
-        0x1f17b, 0x1f17c,
-        0x1f17f, 0x1f17f,
-        0x1f18a, 0x1f18d,
-        0x1f190, 0x1f190,
-        0x1f210, 0x1f231,
-        0x1f240, 0x1f248,
-        0xe0001, 0xe0001,
-        0xe0020, 0xe007f,
-}; /* CR_Common */
-
-/* 'Latin': Script */
-static const OnigCodePoint CR_Latin[] = {
-        28,
-        0x0041, 0x005a,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x02b8,
-        0x02e0, 0x02e4,
-        0x1d00, 0x1d25,
-        0x1d2c, 0x1d5c,
-        0x1d62, 0x1d65,
-        0x1d6b, 0x1d77,
-        0x1d79, 0x1dbe,
-        0x1e00, 0x1eff,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x212a, 0x212b,
-        0x2132, 0x2132,
-        0x214e, 0x214e,
-        0x2160, 0x2188,
-        0x2c60, 0x2c7f,
-        0xa722, 0xa787,
-        0xa78b, 0xa78c,
-        0xa7fb, 0xa7ff,
-        0xfb00, 0xfb06,
-        0xff21, 0xff3a,
-        0xff41, 0xff5a,
-}; /* CR_Latin */
-
-/* 'Greek': Script */
-static const OnigCodePoint CR_Greek[] = {
-        33,
-        0x0370, 0x0373,
-        0x0375, 0x0377,
-        0x037a, 0x037d,
-        0x0384, 0x0384,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03e1,
-        0x03f0, 0x03ff,
-        0x1d26, 0x1d2a,
-        0x1d5d, 0x1d61,
-        0x1d66, 0x1d6a,
-        0x1dbf, 0x1dbf,
-        0x1f00, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fc4,
-        0x1fc6, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fdd, 0x1fef,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffe,
-        0x2126, 0x2126,
-        0x10140, 0x1018a,
-        0x1d200, 0x1d245,
-}; /* CR_Greek */
-
-/* 'Cyrillic': Script */
-static const OnigCodePoint CR_Cyrillic[] = {
-        8,
-        0x0400, 0x0484,
-        0x0487, 0x0525,
-        0x1d2b, 0x1d2b,
-        0x1d78, 0x1d78,
-        0x2de0, 0x2dff,
-        0xa640, 0xa65f,
-        0xa662, 0xa673,
-        0xa67c, 0xa697,
-}; /* CR_Cyrillic */
-
-/* 'Armenian': Script */
-static const OnigCodePoint CR_Armenian[] = {
-        5,
-        0x0531, 0x0556,
-        0x0559, 0x055f,
-        0x0561, 0x0587,
-        0x058a, 0x058a,
-        0xfb13, 0xfb17,
-}; /* CR_Armenian */
-
-/* 'Hebrew': Script */
-static const OnigCodePoint CR_Hebrew[] = {
-        9,
-        0x0591, 0x05c7,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f4,
-        0xfb1d, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfb4f,
-}; /* CR_Hebrew */
-
-/* 'Arabic': Script */
-static const OnigCodePoint CR_Arabic[] = {
-        18,
-        0x0606, 0x060b,
-        0x060d, 0x061a,
-        0x061e, 0x061e,
-        0x0621, 0x063f,
-        0x0641, 0x064a,
-        0x0656, 0x065e,
-        0x066a, 0x066f,
-        0x0671, 0x06dc,
-        0x06de, 0x06ff,
-        0x0750, 0x077f,
-        0xfb50, 0xfbb1,
-        0xfbd3, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfc,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0x10e60, 0x10e7e,
-}; /* CR_Arabic */
-
-/* 'Syriac': Script */
-static const OnigCodePoint CR_Syriac[] = {
-        3,
-        0x0700, 0x070d,
-        0x070f, 0x074a,
-        0x074d, 0x074f,
-}; /* CR_Syriac */
-
-/* 'Thaana': Script */
-static const OnigCodePoint CR_Thaana[] = {
-        1,
-        0x0780, 0x07b1,
-}; /* CR_Thaana */
-
-/* 'Devanagari': Script */
-static const OnigCodePoint CR_Devanagari[] = {
-        9,
-        0x0900, 0x0939,
-        0x093c, 0x094e,
-        0x0950, 0x0950,
-        0x0953, 0x0955,
-        0x0958, 0x0963,
-        0x0966, 0x096f,
-        0x0971, 0x0972,
-        0x0979, 0x097f,
-        0xa8e0, 0xa8fb,
-}; /* CR_Devanagari */
-
-/* 'Bengali': Script */
-static const OnigCodePoint CR_Bengali[] = {
-        14,
-        0x0981, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bc, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09ce,
-        0x09d7, 0x09d7,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e3,
-        0x09e6, 0x09fb,
-}; /* CR_Bengali */
-
-/* 'Gurmukhi': Script */
-static const OnigCodePoint CR_Gurmukhi[] = {
-        16,
-        0x0a01, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3c, 0x0a3c,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a66, 0x0a75,
-}; /* CR_Gurmukhi */
-
-/* 'Gujarati': Script */
-static const OnigCodePoint CR_Gujarati[] = {
-        14,
-        0x0a81, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abc, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae3,
-        0x0ae6, 0x0aef,
-        0x0af1, 0x0af1,
-}; /* CR_Gujarati */
-
-/* 'Oriya': Script */
-static const OnigCodePoint CR_Oriya[] = {
-        14,
-        0x0b01, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3c, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4d,
-        0x0b56, 0x0b57,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b63,
-        0x0b66, 0x0b71,
-}; /* CR_Oriya */
-
-/* 'Tamil': Script */
-static const OnigCodePoint CR_Tamil[] = {
-        16,
-        0x0b82, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcd,
-        0x0bd0, 0x0bd0,
-        0x0bd7, 0x0bd7,
-        0x0be6, 0x0bfa,
-}; /* CR_Tamil */
-
-/* 'Telugu': Script */
-static const OnigCodePoint CR_Telugu[] = {
-        14,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c63,
-        0x0c66, 0x0c6f,
-        0x0c78, 0x0c7f,
-}; /* CR_Telugu */
-
-/* 'Kannada': Script */
-static const OnigCodePoint CR_Kannada[] = {
-        13,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbc, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccd,
-        0x0cd5, 0x0cd6,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce3,
-        0x0ce6, 0x0cef,
-}; /* CR_Kannada */
-
-/* 'Malayalam': Script */
-static const OnigCodePoint CR_Malayalam[] = {
-        12,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4d,
-        0x0d57, 0x0d57,
-        0x0d60, 0x0d63,
-        0x0d66, 0x0d75,
-        0x0d79, 0x0d7f,
-}; /* CR_Malayalam */
-
-/* 'Sinhala': Script */
-static const OnigCodePoint CR_Sinhala[] = {
-        11,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dca, 0x0dca,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df4,
-}; /* CR_Sinhala */
-
-/* 'Thai': Script */
-static const OnigCodePoint CR_Thai[] = {
-        2,
-        0x0e01, 0x0e3a,
-        0x0e40, 0x0e5b,
-}; /* CR_Thai */
-
-/* 'Lao': Script */
-static const OnigCodePoint CR_Lao[] = {
-        18,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb9,
-        0x0ebb, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ec8, 0x0ecd,
-        0x0ed0, 0x0ed9,
-        0x0edc, 0x0edd,
-}; /* CR_Lao */
-
-/* 'Tibetan': Script */
-static const OnigCodePoint CR_Tibetan[] = {
-        7,
-        0x0f00, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f71, 0x0f8b,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fbe, 0x0fcc,
-        0x0fce, 0x0fd4,
-}; /* CR_Tibetan */
-
-/* 'Myanmar': Script */
-static const OnigCodePoint CR_Myanmar[] = {
-        2,
-        0x1000, 0x109f,
-        0xaa60, 0xaa7b,
-}; /* CR_Myanmar */
-
-/* 'Georgian': Script */
-static const OnigCodePoint CR_Georgian[] = {
-        4,
-        0x10a0, 0x10c5,
-        0x10d0, 0x10fa,
-        0x10fc, 0x10fc,
-        0x2d00, 0x2d25,
-}; /* CR_Georgian */
-
-/* 'Hangul': Script */
-static const OnigCodePoint CR_Hangul[] = {
-        13,
-        0x1100, 0x11ff,
-        0x3131, 0x318e,
-        0x3200, 0x321e,
-        0x3260, 0x327e,
-        0xa960, 0xa97c,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xffa0, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-}; /* CR_Hangul */
-
-/* 'Ethiopic': Script */
-static const OnigCodePoint CR_Ethiopic[] = {
-        27,
-        0x1200, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x135f, 0x137c,
-        0x1380, 0x1399,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-}; /* CR_Ethiopic */
-
-/* 'Cherokee': Script */
-static const OnigCodePoint CR_Cherokee[] = {
-        1,
-        0x13a0, 0x13f4,
-}; /* CR_Cherokee */
-
-/* 'Canadian_Aboriginal': Script */
-static const OnigCodePoint CR_Canadian_Aboriginal[] = {
-        2,
-        0x1400, 0x167f,
-        0x18b0, 0x18f5,
-}; /* CR_Canadian_Aboriginal */
-
-/* 'Ogham': Script */
-static const OnigCodePoint CR_Ogham[] = {
-        1,
-        0x1680, 0x169c,
-}; /* CR_Ogham */
-
-/* 'Runic': Script */
-static const OnigCodePoint CR_Runic[] = {
-        2,
-        0x16a0, 0x16ea,
-        0x16ee, 0x16f0,
-}; /* CR_Runic */
-
-/* 'Khmer': Script */
-static const OnigCodePoint CR_Khmer[] = {
-        4,
-        0x1780, 0x17dd,
-        0x17e0, 0x17e9,
-        0x17f0, 0x17f9,
-        0x19e0, 0x19ff,
-}; /* CR_Khmer */
-
-/* 'Mongolian': Script */
-static const OnigCodePoint CR_Mongolian[] = {
-        6,
-        0x1800, 0x1801,
-        0x1804, 0x1804,
-        0x1806, 0x180e,
-        0x1810, 0x1819,
-        0x1820, 0x1877,
-        0x1880, 0x18aa,
-}; /* CR_Mongolian */
-
-/* 'Hiragana': Script */
-static const OnigCodePoint CR_Hiragana[] = {
-        3,
-        0x3041, 0x3096,
-        0x309d, 0x309f,
-        0x1f200, 0x1f200,
-}; /* CR_Hiragana */
-
-/* 'Katakana': Script */
-static const OnigCodePoint CR_Katakana[] = {
-        7,
-        0x30a1, 0x30fa,
-        0x30fd, 0x30ff,
-        0x31f0, 0x31ff,
-        0x32d0, 0x32fe,
-        0x3300, 0x3357,
-        0xff66, 0xff6f,
-        0xff71, 0xff9d,
-}; /* CR_Katakana */
-
-/* 'Bopomofo': Script */
-static const OnigCodePoint CR_Bopomofo[] = {
-        2,
-        0x3105, 0x312d,
-        0x31a0, 0x31b7,
-}; /* CR_Bopomofo */
-
-/* 'Han': Script */
-static const OnigCodePoint CR_Han[] = {
-        15,
-        0x2e80, 0x2e99,
-        0x2e9b, 0x2ef3,
-        0x2f00, 0x2fd5,
-        0x3005, 0x3005,
-        0x3007, 0x3007,
-        0x3021, 0x3029,
-        0x3038, 0x303b,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-}; /* CR_Han */
-
-/* 'Yi': Script */
-static const OnigCodePoint CR_Yi[] = {
-        2,
-        0xa000, 0xa48c,
-        0xa490, 0xa4c6,
-}; /* CR_Yi */
-
-/* 'Old_Italic': Script */
-static const OnigCodePoint CR_Old_Italic[] = {
-        2,
-        0x10300, 0x1031e,
-        0x10320, 0x10323,
-}; /* CR_Old_Italic */
-
-/* 'Gothic': Script */
-static const OnigCodePoint CR_Gothic[] = {
-        1,
-        0x10330, 0x1034a,
-}; /* CR_Gothic */
-
-/* 'Deseret': Script */
-static const OnigCodePoint CR_Deseret[] = {
-        1,
-        0x10400, 0x1044f,
-}; /* CR_Deseret */
-
-/* 'Inherited': Script */
-static const OnigCodePoint CR_Inherited[] = {
-        23,
-        0x0300, 0x036f,
-        0x0485, 0x0486,
-        0x064b, 0x0655,
-        0x0670, 0x0670,
-        0x0951, 0x0952,
-        0x1cd0, 0x1cd2,
-        0x1cd4, 0x1ce0,
-        0x1ce2, 0x1ce8,
-        0x1ced, 0x1ced,
-        0x1dc0, 0x1de6,
-        0x1dfd, 0x1dff,
-        0x200c, 0x200d,
-        0x20d0, 0x20f0,
-        0x302a, 0x302f,
-        0x3099, 0x309a,
-        0xfe00, 0xfe0f,
-        0xfe20, 0xfe26,
-        0x101fd, 0x101fd,
-        0x1d167, 0x1d169,
-        0x1d17b, 0x1d182,
-        0x1d185, 0x1d18b,
-        0x1d1aa, 0x1d1ad,
-        0xe0100, 0xe01ef,
-}; /* CR_Inherited */
-
-/* 'Tagalog': Script */
-static const OnigCodePoint CR_Tagalog[] = {
-        2,
-        0x1700, 0x170c,
-        0x170e, 0x1714,
-}; /* CR_Tagalog */
-
-/* 'Hanunoo': Script */
-static const OnigCodePoint CR_Hanunoo[] = {
-        1,
-        0x1720, 0x1734,
-}; /* CR_Hanunoo */
-
-/* 'Buhid': Script */
-static const OnigCodePoint CR_Buhid[] = {
-        1,
-        0x1740, 0x1753,
-}; /* CR_Buhid */
-
-/* 'Tagbanwa': Script */
-static const OnigCodePoint CR_Tagbanwa[] = {
-        3,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1772, 0x1773,
-}; /* CR_Tagbanwa */
-
-/* 'Limbu': Script */
-static const OnigCodePoint CR_Limbu[] = {
-        5,
-        0x1900, 0x191c,
-        0x1920, 0x192b,
-        0x1930, 0x193b,
-        0x1940, 0x1940,
-        0x1944, 0x194f,
-}; /* CR_Limbu */
-
-/* 'Tai_Le': Script */
-static const OnigCodePoint CR_Tai_Le[] = {
-        2,
-        0x1950, 0x196d,
-        0x1970, 0x1974,
-}; /* CR_Tai_Le */
-
-/* 'Linear_B': Script */
-static const OnigCodePoint CR_Linear_B[] = {
-        7,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-}; /* CR_Linear_B */
-
-/* 'Ugaritic': Script */
-static const OnigCodePoint CR_Ugaritic[] = {
-        2,
-        0x10380, 0x1039d,
-        0x1039f, 0x1039f,
-}; /* CR_Ugaritic */
-
-/* 'Shavian': Script */
-static const OnigCodePoint CR_Shavian[] = {
-        1,
-        0x10450, 0x1047f,
-}; /* CR_Shavian */
-
-/* 'Osmanya': Script */
-static const OnigCodePoint CR_Osmanya[] = {
-        2,
-        0x10480, 0x1049d,
-        0x104a0, 0x104a9,
-}; /* CR_Osmanya */
-
-/* 'Cypriot': Script */
-static const OnigCodePoint CR_Cypriot[] = {
-        6,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x1083f,
-}; /* CR_Cypriot */
-
-/* 'Braille': Script */
-static const OnigCodePoint CR_Braille[] = {
-        1,
-        0x2800, 0x28ff,
-}; /* CR_Braille */
-
-/* 'Buginese': Script */
-static const OnigCodePoint CR_Buginese[] = {
-        2,
-        0x1a00, 0x1a1b,
-        0x1a1e, 0x1a1f,
-}; /* CR_Buginese */
-
-/* 'Coptic': Script */
-static const OnigCodePoint CR_Coptic[] = {
-        3,
-        0x03e2, 0x03ef,
-        0x2c80, 0x2cf1,
-        0x2cf9, 0x2cff,
-}; /* CR_Coptic */
-
-/* 'New_Tai_Lue': Script */
-static const OnigCodePoint CR_New_Tai_Lue[] = {
-        4,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x19d0, 0x19da,
-        0x19de, 0x19df,
-}; /* CR_New_Tai_Lue */
-
-/* 'Glagolitic': Script */
-static const OnigCodePoint CR_Glagolitic[] = {
-        2,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-}; /* CR_Glagolitic */
-
-/* 'Tifinagh': Script */
-static const OnigCodePoint CR_Tifinagh[] = {
-        2,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-}; /* CR_Tifinagh */
-
-/* 'Syloti_Nagri': Script */
-static const OnigCodePoint CR_Syloti_Nagri[] = {
-        1,
-        0xa800, 0xa82b,
-}; /* CR_Syloti_Nagri */
-
-/* 'Old_Persian': Script */
-static const OnigCodePoint CR_Old_Persian[] = {
-        2,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103d5,
-}; /* CR_Old_Persian */
-
-/* 'Kharoshthi': Script */
-static const OnigCodePoint CR_Kharoshthi[] = {
-        8,
-        0x10a00, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a47,
-        0x10a50, 0x10a58,
-}; /* CR_Kharoshthi */
-
-/* 'Balinese': Script */
-static const OnigCodePoint CR_Balinese[] = {
-        2,
-        0x1b00, 0x1b4b,
-        0x1b50, 0x1b7c,
-}; /* CR_Balinese */
-
-/* 'Cuneiform': Script */
-static const OnigCodePoint CR_Cuneiform[] = {
-        3,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x12470, 0x12473,
-}; /* CR_Cuneiform */
-
-/* 'Phoenician': Script */
-static const OnigCodePoint CR_Phoenician[] = {
-        2,
-        0x10900, 0x1091b,
-        0x1091f, 0x1091f,
-}; /* CR_Phoenician */
-
-/* 'Phags_Pa': Script */
-static const OnigCodePoint CR_Phags_Pa[] = {
-        1,
-        0xa840, 0xa877,
-}; /* CR_Phags_Pa */
-
-/* 'Nko': Script */
-static const OnigCodePoint CR_Nko[] = {
-        1,
-        0x07c0, 0x07fa,
-}; /* CR_Nko */
-
-/* 'Sundanese': Script */
-static const OnigCodePoint CR_Sundanese[] = {
-        2,
-        0x1b80, 0x1baa,
-        0x1bae, 0x1bb9,
-}; /* CR_Sundanese */
-
-/* 'Lepcha': Script */
-static const OnigCodePoint CR_Lepcha[] = {
-        3,
-        0x1c00, 0x1c37,
-        0x1c3b, 0x1c49,
-        0x1c4d, 0x1c4f,
-}; /* CR_Lepcha */
-
-/* 'Ol_Chiki': Script */
-static const OnigCodePoint CR_Ol_Chiki[] = {
-        1,
-        0x1c50, 0x1c7f,
-}; /* CR_Ol_Chiki */
-
-/* 'Vai': Script */
-static const OnigCodePoint CR_Vai[] = {
-        1,
-        0xa500, 0xa62b,
-}; /* CR_Vai */
-
-/* 'Saurashtra': Script */
-static const OnigCodePoint CR_Saurashtra[] = {
-        2,
-        0xa880, 0xa8c4,
-        0xa8ce, 0xa8d9,
-}; /* CR_Saurashtra */
-
-/* 'Kayah_Li': Script */
-static const OnigCodePoint CR_Kayah_Li[] = {
-        1,
-        0xa900, 0xa92f,
-}; /* CR_Kayah_Li */
-
-/* 'Rejang': Script */
-static const OnigCodePoint CR_Rejang[] = {
-        2,
-        0xa930, 0xa953,
-        0xa95f, 0xa95f,
-}; /* CR_Rejang */
-
-/* 'Lycian': Script */
-static const OnigCodePoint CR_Lycian[] = {
-        1,
-        0x10280, 0x1029c,
-}; /* CR_Lycian */
-
-/* 'Carian': Script */
-static const OnigCodePoint CR_Carian[] = {
-        1,
-        0x102a0, 0x102d0,
-}; /* CR_Carian */
-
-/* 'Lydian': Script */
-static const OnigCodePoint CR_Lydian[] = {
-        2,
-        0x10920, 0x10939,
-        0x1093f, 0x1093f,
-}; /* CR_Lydian */
-
-/* 'Cham': Script */
-static const OnigCodePoint CR_Cham[] = {
-        4,
-        0xaa00, 0xaa36,
-        0xaa40, 0xaa4d,
-        0xaa50, 0xaa59,
-        0xaa5c, 0xaa5f,
-}; /* CR_Cham */
-
-/* 'Tai_Tham': Script */
-static const OnigCodePoint CR_Tai_Tham[] = {
-        5,
-        0x1a20, 0x1a5e,
-        0x1a60, 0x1a7c,
-        0x1a7f, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1aa0, 0x1aad,
-}; /* CR_Tai_Tham */
-
-/* 'Tai_Viet': Script */
-static const OnigCodePoint CR_Tai_Viet[] = {
-        2,
-        0xaa80, 0xaac2,
-        0xaadb, 0xaadf,
-}; /* CR_Tai_Viet */
-
-/* 'Avestan': Script */
-static const OnigCodePoint CR_Avestan[] = {
-        2,
-        0x10b00, 0x10b35,
-        0x10b39, 0x10b3f,
-}; /* CR_Avestan */
-
-/* 'Egyptian_Hieroglyphs': Script */
-static const OnigCodePoint CR_Egyptian_Hieroglyphs[] = {
-        1,
-        0x13000, 0x1342e,
-}; /* CR_Egyptian_Hieroglyphs */
-
-/* 'Samaritan': Script */
-static const OnigCodePoint CR_Samaritan[] = {
-        2,
-        0x0800, 0x082d,
-        0x0830, 0x083e,
-}; /* CR_Samaritan */
-
-/* 'Lisu': Script */
-static const OnigCodePoint CR_Lisu[] = {
-        1,
-        0xa4d0, 0xa4ff,
-}; /* CR_Lisu */
-
-/* 'Bamum': Script */
-static const OnigCodePoint CR_Bamum[] = {
-        1,
-        0xa6a0, 0xa6f7,
-}; /* CR_Bamum */
-
-/* 'Javanese': Script */
-static const OnigCodePoint CR_Javanese[] = {
-        3,
-        0xa980, 0xa9cd,
-        0xa9cf, 0xa9d9,
-        0xa9de, 0xa9df,
-}; /* CR_Javanese */
-
-/* 'Meetei_Mayek': Script */
-static const OnigCodePoint CR_Meetei_Mayek[] = {
-        2,
-        0xabc0, 0xabed,
-        0xabf0, 0xabf9,
-}; /* CR_Meetei_Mayek */
-
-/* 'Imperial_Aramaic': Script */
-static const OnigCodePoint CR_Imperial_Aramaic[] = {
-        2,
-        0x10840, 0x10855,
-        0x10857, 0x1085f,
-}; /* CR_Imperial_Aramaic */
-
-/* 'Old_South_Arabian': Script */
-static const OnigCodePoint CR_Old_South_Arabian[] = {
-        1,
-        0x10a60, 0x10a7f,
-}; /* CR_Old_South_Arabian */
-
-/* 'Inscriptional_Parthian': Script */
-static const OnigCodePoint CR_Inscriptional_Parthian[] = {
-        2,
-        0x10b40, 0x10b55,
-        0x10b58, 0x10b5f,
-}; /* CR_Inscriptional_Parthian */
-
-/* 'Inscriptional_Pahlavi': Script */
-static const OnigCodePoint CR_Inscriptional_Pahlavi[] = {
-        2,
-        0x10b60, 0x10b72,
-        0x10b78, 0x10b7f,
-}; /* CR_Inscriptional_Pahlavi */
-
-/* 'Old_Turkic': Script */
-static const OnigCodePoint CR_Old_Turkic[] = {
-        1,
-        0x10c00, 0x10c48,
-}; /* CR_Old_Turkic */
-
-/* 'Kaithi': Script */
-static const OnigCodePoint CR_Kaithi[] = {
-        1,
-        0x11080, 0x110c1,
-}; /* CR_Kaithi */
-
-/* 'White_Space': Binary Property */
-static const OnigCodePoint CR_White_Space[] = {
-        11,
-        0x0009, 0x000d,
-        0x0020, 0x0020,
-        0x0085, 0x0085,
-        0x00a0, 0x00a0,
-        0x1680, 0x1680,
-        0x180e, 0x180e,
-        0x2000, 0x200a,
-        0x2028, 0x2029,
-        0x202f, 0x202f,
-        0x205f, 0x205f,
-        0x3000, 0x3000,
-}; /* CR_White_Space */
-
-/* 'Bidi_Control': Binary Property */
-static const OnigCodePoint CR_Bidi_Control[] = {
-        2,
-        0x200e, 0x200f,
-        0x202a, 0x202e,
-}; /* CR_Bidi_Control */
-
-/* 'Join_Control': Binary Property */
-static const OnigCodePoint CR_Join_Control[] = {
-        1,
-        0x200c, 0x200d,
-}; /* CR_Join_Control */
-
-/* 'Dash': Binary Property */
-static const OnigCodePoint CR_Dash[] = {
-        19,
-        0x002d, 0x002d,
-        0x058a, 0x058a,
-        0x05be, 0x05be,
-        0x1400, 0x1400,
-        0x1806, 0x1806,
-        0x2010, 0x2015,
-        0x2053, 0x2053,
-        0x207b, 0x207b,
-        0x208b, 0x208b,
-        0x2212, 0x2212,
-        0x2e17, 0x2e17,
-        0x2e1a, 0x2e1a,
-        0x301c, 0x301c,
-        0x3030, 0x3030,
-        0x30a0, 0x30a0,
-        0xfe31, 0xfe32,
-        0xfe58, 0xfe58,
-        0xfe63, 0xfe63,
-        0xff0d, 0xff0d,
-}; /* CR_Dash */
-
-/* 'Hyphen': Binary Property */
-static const OnigCodePoint CR_Hyphen[] = {
-        10,
-        0x002d, 0x002d,
-        0x00ad, 0x00ad,
-        0x058a, 0x058a,
-        0x1806, 0x1806,
-        0x2010, 0x2011,
-        0x2e17, 0x2e17,
-        0x30fb, 0x30fb,
-        0xfe63, 0xfe63,
-        0xff0d, 0xff0d,
-        0xff65, 0xff65,
-}; /* CR_Hyphen */
-
-/* 'Quotation_Mark': Binary Property */
-static const OnigCodePoint CR_Quotation_Mark[] = {
-        12,
-        0x0022, 0x0022,
-        0x0027, 0x0027,
-        0x00ab, 0x00ab,
-        0x00bb, 0x00bb,
-        0x2018, 0x201f,
-        0x2039, 0x203a,
-        0x300c, 0x300f,
-        0x301d, 0x301f,
-        0xfe41, 0xfe44,
-        0xff02, 0xff02,
-        0xff07, 0xff07,
-        0xff62, 0xff63,
-}; /* CR_Quotation_Mark */
-
-/* 'Terminal_Punctuation': Binary Property */
-static const OnigCodePoint CR_Terminal_Punctuation[] = {
-        65,
-        0x0021, 0x0021,
-        0x002c, 0x002c,
-        0x002e, 0x002e,
-        0x003a, 0x003b,
-        0x003f, 0x003f,
-        0x037e, 0x037e,
-        0x0387, 0x0387,
-        0x0589, 0x0589,
-        0x05c3, 0x05c3,
-        0x060c, 0x060c,
-        0x061b, 0x061b,
-        0x061f, 0x061f,
-        0x06d4, 0x06d4,
-        0x0700, 0x070a,
-        0x070c, 0x070c,
-        0x07f8, 0x07f9,
-        0x0830, 0x083e,
-        0x0964, 0x0965,
-        0x0e5a, 0x0e5b,
-        0x0f08, 0x0f08,
-        0x0f0d, 0x0f12,
-        0x104a, 0x104b,
-        0x1361, 0x1368,
-        0x166d, 0x166e,
-        0x16eb, 0x16ed,
-        0x17d4, 0x17d6,
-        0x17da, 0x17da,
-        0x1802, 0x1805,
-        0x1808, 0x1809,
-        0x1944, 0x1945,
-        0x1aa8, 0x1aab,
-        0x1b5a, 0x1b5b,
-        0x1b5d, 0x1b5f,
-        0x1c3b, 0x1c3f,
-        0x1c7e, 0x1c7f,
-        0x203c, 0x203d,
-        0x2047, 0x2049,
-        0x2e2e, 0x2e2e,
-        0x3001, 0x3002,
-        0xa4fe, 0xa4ff,
-        0xa60d, 0xa60f,
-        0xa6f3, 0xa6f7,
-        0xa876, 0xa877,
-        0xa8ce, 0xa8cf,
-        0xa92f, 0xa92f,
-        0xa9c7, 0xa9c9,
-        0xaa5d, 0xaa5f,
-        0xaadf, 0xaadf,
-        0xabeb, 0xabeb,
-        0xfe50, 0xfe52,
-        0xfe54, 0xfe57,
-        0xff01, 0xff01,
-        0xff0c, 0xff0c,
-        0xff0e, 0xff0e,
-        0xff1a, 0xff1b,
-        0xff1f, 0xff1f,
-        0xff61, 0xff61,
-        0xff64, 0xff64,
-        0x1039f, 0x1039f,
-        0x103d0, 0x103d0,
-        0x10857, 0x10857,
-        0x1091f, 0x1091f,
-        0x10b3a, 0x10b3f,
-        0x110be, 0x110c1,
-        0x12470, 0x12473,
-}; /* CR_Terminal_Punctuation */
-
-/* 'Other_Math': Binary Property */
-static const OnigCodePoint CR_Other_Math[] = {
-        99,
-        0x005e, 0x005e,
-        0x03d0, 0x03d2,
-        0x03d5, 0x03d5,
-        0x03f0, 0x03f1,
-        0x03f4, 0x03f5,
-        0x2016, 0x2016,
-        0x2032, 0x2034,
-        0x2040, 0x2040,
-        0x2061, 0x2064,
-        0x207d, 0x207e,
-        0x208d, 0x208e,
-        0x20d0, 0x20dc,
-        0x20e1, 0x20e1,
-        0x20e5, 0x20e6,
-        0x20eb, 0x20ef,
-        0x2102, 0x2102,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2119, 0x211d,
-        0x2124, 0x2124,
-        0x2128, 0x2129,
-        0x212c, 0x212d,
-        0x212f, 0x2131,
-        0x2133, 0x2138,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x2195, 0x2199,
-        0x219c, 0x219f,
-        0x21a1, 0x21a2,
-        0x21a4, 0x21a5,
-        0x21a7, 0x21a7,
-        0x21a9, 0x21ad,
-        0x21b0, 0x21b1,
-        0x21b6, 0x21b7,
-        0x21bc, 0x21cd,
-        0x21d0, 0x21d1,
-        0x21d3, 0x21d3,
-        0x21d5, 0x21db,
-        0x21dd, 0x21dd,
-        0x21e4, 0x21e5,
-        0x23b4, 0x23b5,
-        0x23b7, 0x23b7,
-        0x23d0, 0x23d0,
-        0x23e2, 0x23e2,
-        0x25a0, 0x25a1,
-        0x25ae, 0x25b6,
-        0x25bc, 0x25c0,
-        0x25c6, 0x25c7,
-        0x25ca, 0x25cb,
-        0x25cf, 0x25d3,
-        0x25e2, 0x25e2,
-        0x25e4, 0x25e4,
-        0x25e7, 0x25ec,
-        0x2605, 0x2606,
-        0x2640, 0x2640,
-        0x2642, 0x2642,
-        0x2660, 0x2663,
-        0x266d, 0x266e,
-        0x27c5, 0x27c6,
-        0x27e6, 0x27ef,
-        0x2983, 0x2998,
-        0x29d8, 0x29db,
-        0x29fc, 0x29fd,
-        0xfe61, 0xfe61,
-        0xfe63, 0xfe63,
-        0xfe68, 0xfe68,
-        0xff3c, 0xff3c,
-        0xff3e, 0xff3e,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-}; /* CR_Other_Math */
-
-/* 'Hex_Digit': Binary Property */
-static const OnigCodePoint CR_Hex_Digit[] = {
-        6,
-        0x0030, 0x0039,
-        0x0041, 0x0046,
-        0x0061, 0x0066,
-        0xff10, 0xff19,
-        0xff21, 0xff26,
-        0xff41, 0xff46,
-}; /* CR_Hex_Digit */
-
-/* 'ASCII_Hex_Digit': Binary Property */
-static const OnigCodePoint CR_ASCII_Hex_Digit[] = {
-        3,
-        0x0030, 0x0039,
-        0x0041, 0x0046,
-        0x0061, 0x0066,
-}; /* CR_ASCII_Hex_Digit */
-
-/* 'Other_Alphabetic': Binary Property */
-static const OnigCodePoint CR_Other_Alphabetic[] = {
-        141,
-        0x0345, 0x0345,
-        0x05b0, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x0610, 0x061a,
-        0x064b, 0x0657,
-        0x0659, 0x065e,
-        0x0670, 0x0670,
-        0x06d6, 0x06dc,
-        0x06e1, 0x06e4,
-        0x06e7, 0x06e8,
-        0x06ed, 0x06ed,
-        0x0711, 0x0711,
-        0x0730, 0x073f,
-        0x07a6, 0x07b0,
-        0x0816, 0x0817,
-        0x081b, 0x0823,
-        0x0825, 0x0827,
-        0x0829, 0x082c,
-        0x0900, 0x0903,
-        0x093e, 0x094c,
-        0x094e, 0x094e,
-        0x0955, 0x0955,
-        0x0962, 0x0963,
-        0x0981, 0x0983,
-        0x09be, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09cc,
-        0x09d7, 0x09d7,
-        0x09e2, 0x09e3,
-        0x0a01, 0x0a03,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4c,
-        0x0a51, 0x0a51,
-        0x0a70, 0x0a71,
-        0x0a75, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0abe, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acc,
-        0x0ae2, 0x0ae3,
-        0x0b01, 0x0b03,
-        0x0b3e, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4c,
-        0x0b56, 0x0b57,
-        0x0b62, 0x0b63,
-        0x0b82, 0x0b82,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcc,
-        0x0bd7, 0x0bd7,
-        0x0c01, 0x0c03,
-        0x0c3e, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4c,
-        0x0c55, 0x0c56,
-        0x0c62, 0x0c63,
-        0x0c82, 0x0c83,
-        0x0cbe, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccc,
-        0x0cd5, 0x0cd6,
-        0x0ce2, 0x0ce3,
-        0x0d02, 0x0d03,
-        0x0d3e, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4c,
-        0x0d57, 0x0d57,
-        0x0d62, 0x0d63,
-        0x0d82, 0x0d83,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df3,
-        0x0e31, 0x0e31,
-        0x0e34, 0x0e3a,
-        0x0e4d, 0x0e4d,
-        0x0eb1, 0x0eb1,
-        0x0eb4, 0x0eb9,
-        0x0ebb, 0x0ebc,
-        0x0ecd, 0x0ecd,
-        0x0f71, 0x0f81,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x102b, 0x1036,
-        0x1038, 0x1038,
-        0x103b, 0x103e,
-        0x1056, 0x1059,
-        0x105e, 0x1060,
-        0x1062, 0x1062,
-        0x1067, 0x1068,
-        0x1071, 0x1074,
-        0x1082, 0x1086,
-        0x109c, 0x109d,
-        0x135f, 0x135f,
-        0x1712, 0x1713,
-        0x1732, 0x1733,
-        0x1752, 0x1753,
-        0x1772, 0x1773,
-        0x17b6, 0x17c8,
-        0x18a9, 0x18a9,
-        0x1920, 0x192b,
-        0x1930, 0x1938,
-        0x19b0, 0x19c0,
-        0x19c8, 0x19c9,
-        0x1a17, 0x1a1b,
-        0x1a55, 0x1a5e,
-        0x1a61, 0x1a74,
-        0x1b00, 0x1b04,
-        0x1b35, 0x1b43,
-        0x1b80, 0x1b82,
-        0x1ba1, 0x1ba9,
-        0x1c24, 0x1c35,
-        0x1cf2, 0x1cf2,
-        0x24b6, 0x24e9,
-        0x2de0, 0x2dff,
-        0xa823, 0xa827,
-        0xa880, 0xa881,
-        0xa8b4, 0xa8c3,
-        0xa926, 0xa92a,
-        0xa947, 0xa952,
-        0xa980, 0xa983,
-        0xa9b3, 0xa9bf,
-        0xaa29, 0xaa36,
-        0xaa43, 0xaa43,
-        0xaa4c, 0xaa4d,
-        0xaab0, 0xaab0,
-        0xaab2, 0xaab4,
-        0xaab7, 0xaab8,
-        0xaabe, 0xaabe,
-        0xabe3, 0xabea,
-        0xfb1e, 0xfb1e,
-        0x10a01, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a0f,
-        0x11082, 0x11082,
-        0x110b0, 0x110b8,
-}; /* CR_Other_Alphabetic */
-
-/* 'Ideographic': Binary Property */
-static const OnigCodePoint CR_Ideographic[] = {
-        11,
-        0x3006, 0x3007,
-        0x3021, 0x3029,
-        0x3038, 0x303a,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-}; /* CR_Ideographic */
-
-/* 'Diacritic': Binary Property */
-static const OnigCodePoint CR_Diacritic[] = {
-        117,
-        0x005e, 0x005e,
-        0x0060, 0x0060,
-        0x00a8, 0x00a8,
-        0x00af, 0x00af,
-        0x00b4, 0x00b4,
-        0x00b7, 0x00b8,
-        0x02b0, 0x034e,
-        0x0350, 0x0357,
-        0x035d, 0x0362,
-        0x0374, 0x0375,
-        0x037a, 0x037a,
-        0x0384, 0x0385,
-        0x0483, 0x0487,
-        0x0559, 0x0559,
-        0x0591, 0x05a1,
-        0x05a3, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c4,
-        0x064b, 0x0652,
-        0x0657, 0x0658,
-        0x06df, 0x06e0,
-        0x06e5, 0x06e6,
-        0x06ea, 0x06ec,
-        0x0730, 0x074a,
-        0x07a6, 0x07b0,
-        0x07eb, 0x07f5,
-        0x0818, 0x0819,
-        0x093c, 0x093c,
-        0x094d, 0x094d,
-        0x0951, 0x0954,
-        0x0971, 0x0971,
-        0x09bc, 0x09bc,
-        0x09cd, 0x09cd,
-        0x0a3c, 0x0a3c,
-        0x0a4d, 0x0a4d,
-        0x0abc, 0x0abc,
-        0x0acd, 0x0acd,
-        0x0b3c, 0x0b3c,
-        0x0b4d, 0x0b4d,
-        0x0bcd, 0x0bcd,
-        0x0c4d, 0x0c4d,
-        0x0cbc, 0x0cbc,
-        0x0ccd, 0x0ccd,
-        0x0d4d, 0x0d4d,
-        0x0dca, 0x0dca,
-        0x0e47, 0x0e4c,
-        0x0e4e, 0x0e4e,
-        0x0ec8, 0x0ecc,
-        0x0f18, 0x0f19,
-        0x0f35, 0x0f35,
-        0x0f37, 0x0f37,
-        0x0f39, 0x0f39,
-        0x0f3e, 0x0f3f,
-        0x0f82, 0x0f84,
-        0x0f86, 0x0f87,
-        0x0fc6, 0x0fc6,
-        0x1037, 0x1037,
-        0x1039, 0x103a,
-        0x1087, 0x108d,
-        0x108f, 0x108f,
-        0x109a, 0x109b,
-        0x17c9, 0x17d3,
-        0x17dd, 0x17dd,
-        0x1939, 0x193b,
-        0x1a75, 0x1a7c,
-        0x1a7f, 0x1a7f,
-        0x1b34, 0x1b34,
-        0x1b44, 0x1b44,
-        0x1b6b, 0x1b73,
-        0x1baa, 0x1baa,
-        0x1c36, 0x1c37,
-        0x1c78, 0x1c7d,
-        0x1cd0, 0x1ce8,
-        0x1ced, 0x1ced,
-        0x1d2c, 0x1d6a,
-        0x1dc4, 0x1dcf,
-        0x1dfd, 0x1dff,
-        0x1fbd, 0x1fbd,
-        0x1fbf, 0x1fc1,
-        0x1fcd, 0x1fcf,
-        0x1fdd, 0x1fdf,
-        0x1fed, 0x1fef,
-        0x1ffd, 0x1ffe,
-        0x2cef, 0x2cf1,
-        0x2e2f, 0x2e2f,
-        0x302a, 0x302f,
-        0x3099, 0x309c,
-        0x30fc, 0x30fc,
-        0xa66f, 0xa66f,
-        0xa67c, 0xa67d,
-        0xa67f, 0xa67f,
-        0xa6f0, 0xa6f1,
-        0xa717, 0xa721,
-        0xa788, 0xa788,
-        0xa8c4, 0xa8c4,
-        0xa8e0, 0xa8f1,
-        0xa92b, 0xa92e,
-        0xa953, 0xa953,
-        0xa9b3, 0xa9b3,
-        0xa9c0, 0xa9c0,
-        0xaa7b, 0xaa7b,
-        0xaabf, 0xaac2,
-        0xabec, 0xabed,
-        0xfb1e, 0xfb1e,
-        0xfe20, 0xfe26,
-        0xff3e, 0xff3e,
-        0xff40, 0xff40,
-        0xff70, 0xff70,
-        0xff9e, 0xff9f,
-        0xffe3, 0xffe3,
-        0x110b9, 0x110ba,
-        0x1d167, 0x1d169,
-        0x1d16d, 0x1d172,
-        0x1d17b, 0x1d182,
-        0x1d185, 0x1d18b,
-        0x1d1aa, 0x1d1ad,
-}; /* CR_Diacritic */
-
-/* 'Extender': Binary Property */
-static const OnigCodePoint CR_Extender[] = {
-        20,
-        0x00b7, 0x00b7,
-        0x02d0, 0x02d1,
-        0x0640, 0x0640,
-        0x07fa, 0x07fa,
-        0x0e46, 0x0e46,
-        0x0ec6, 0x0ec6,
-        0x1843, 0x1843,
-        0x1aa7, 0x1aa7,
-        0x1c36, 0x1c36,
-        0x1c7b, 0x1c7b,
-        0x3005, 0x3005,
-        0x3031, 0x3035,
-        0x309d, 0x309e,
-        0x30fc, 0x30fe,
-        0xa015, 0xa015,
-        0xa60c, 0xa60c,
-        0xa9cf, 0xa9cf,
-        0xaa70, 0xaa70,
-        0xaadd, 0xaadd,
-        0xff70, 0xff70,
-}; /* CR_Extender */
-
-/* 'Other_Lowercase': Binary Property */
-static const OnigCodePoint CR_Other_Lowercase[] = {
-        13,
-        0x02b0, 0x02b8,
-        0x02c0, 0x02c1,
-        0x02e0, 0x02e4,
-        0x0345, 0x0345,
-        0x037a, 0x037a,
-        0x1d2c, 0x1d61,
-        0x1d78, 0x1d78,
-        0x1d9b, 0x1dbf,
-        0x2090, 0x2094,
-        0x2170, 0x217f,
-        0x24d0, 0x24e9,
-        0x2c7d, 0x2c7d,
-        0xa770, 0xa770,
-}; /* CR_Other_Lowercase */
-
-/* 'Other_Uppercase': Binary Property */
-static const OnigCodePoint CR_Other_Uppercase[] = {
-        2,
-        0x2160, 0x216f,
-        0x24b6, 0x24cf,
-}; /* CR_Other_Uppercase */
-
-/* 'Noncharacter_Code_Point': Binary Property */
-static const OnigCodePoint CR_Noncharacter_Code_Point[] = {
-        18,
-        0xfdd0, 0xfdef,
-        0xfffe, 0xffff,
-        0x1fffe, 0x1ffff,
-        0x2fffe, 0x2ffff,
-        0x3fffe, 0x3ffff,
-        0x4fffe, 0x4ffff,
-        0x5fffe, 0x5ffff,
-        0x6fffe, 0x6ffff,
-        0x7fffe, 0x7ffff,
-        0x8fffe, 0x8ffff,
-        0x9fffe, 0x9ffff,
-        0xafffe, 0xaffff,
-        0xbfffe, 0xbffff,
-        0xcfffe, 0xcffff,
-        0xdfffe, 0xdffff,
-        0xefffe, 0xeffff,
-        0xffffe, 0xfffff,
-        0x10fffe, 0x10ffff,
-}; /* CR_Noncharacter_Code_Point */
-
-/* 'Other_Grapheme_Extend': Binary Property */
-static const OnigCodePoint CR_Other_Grapheme_Extend[] = {
-        16,
-        0x09be, 0x09be,
-        0x09d7, 0x09d7,
-        0x0b3e, 0x0b3e,
-        0x0b57, 0x0b57,
-        0x0bbe, 0x0bbe,
-        0x0bd7, 0x0bd7,
-        0x0cc2, 0x0cc2,
-        0x0cd5, 0x0cd6,
-        0x0d3e, 0x0d3e,
-        0x0d57, 0x0d57,
-        0x0dcf, 0x0dcf,
-        0x0ddf, 0x0ddf,
-        0x200c, 0x200d,
-        0xff9e, 0xff9f,
-        0x1d165, 0x1d165,
-        0x1d16e, 0x1d172,
-}; /* CR_Other_Grapheme_Extend */
-
-/* 'IDS_Binary_Operator': Binary Property */
-static const OnigCodePoint CR_IDS_Binary_Operator[] = {
-        2,
-        0x2ff0, 0x2ff1,
-        0x2ff4, 0x2ffb,
-}; /* CR_IDS_Binary_Operator */
-
-/* 'IDS_Trinary_Operator': Binary Property */
-static const OnigCodePoint CR_IDS_Trinary_Operator[] = {
-        1,
-        0x2ff2, 0x2ff3,
-}; /* CR_IDS_Trinary_Operator */
-
-/* 'Radical': Binary Property */
-static const OnigCodePoint CR_Radical[] = {
-        3,
-        0x2e80, 0x2e99,
-        0x2e9b, 0x2ef3,
-        0x2f00, 0x2fd5,
-}; /* CR_Radical */
-
-/* 'Unified_Ideograph': Binary Property */
-static const OnigCodePoint CR_Unified_Ideograph[] = {
-        11,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xfa0e, 0xfa0f,
-        0xfa11, 0xfa11,
-        0xfa13, 0xfa14,
-        0xfa1f, 0xfa1f,
-        0xfa21, 0xfa21,
-        0xfa23, 0xfa24,
-        0xfa27, 0xfa29,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-}; /* CR_Unified_Ideograph */
-
-/* 'Other_Default_Ignorable_Code_Point': Binary Property */
-static const OnigCodePoint CR_Other_Default_Ignorable_Code_Point[] = {
-        10,
-        0x034f, 0x034f,
-        0x115f, 0x1160,
-        0x2065, 0x2069,
-        0x3164, 0x3164,
-        0xffa0, 0xffa0,
-        0xfff0, 0xfff8,
-        0xe0000, 0xe0000,
-        0xe0002, 0xe001f,
-        0xe0080, 0xe00ff,
-        0xe01f0, 0xe0fff,
-}; /* CR_Other_Default_Ignorable_Code_Point */
-
-/* 'Deprecated': Binary Property */
-static const OnigCodePoint CR_Deprecated[] = {
-        8,
-        0x0149, 0x0149,
-        0x0f77, 0x0f77,
-        0x0f79, 0x0f79,
-        0x17a3, 0x17a4,
-        0x206a, 0x206f,
-        0x2329, 0x232a,
-        0xe0001, 0xe0001,
-        0xe0020, 0xe007f,
-}; /* CR_Deprecated */
-
-/* 'Soft_Dotted': Binary Property */
-static const OnigCodePoint CR_Soft_Dotted[] = {
-        31,
-        0x0069, 0x006a,
-        0x012f, 0x012f,
-        0x0249, 0x0249,
-        0x0268, 0x0268,
-        0x029d, 0x029d,
-        0x02b2, 0x02b2,
-        0x03f3, 0x03f3,
-        0x0456, 0x0456,
-        0x0458, 0x0458,
-        0x1d62, 0x1d62,
-        0x1d96, 0x1d96,
-        0x1da4, 0x1da4,
-        0x1da8, 0x1da8,
-        0x1e2d, 0x1e2d,
-        0x1ecb, 0x1ecb,
-        0x2071, 0x2071,
-        0x2148, 0x2149,
-        0x2c7c, 0x2c7c,
-        0x1d422, 0x1d423,
-        0x1d456, 0x1d457,
-        0x1d48a, 0x1d48b,
-        0x1d4be, 0x1d4bf,
-        0x1d4f2, 0x1d4f3,
-        0x1d526, 0x1d527,
-        0x1d55a, 0x1d55b,
-        0x1d58e, 0x1d58f,
-        0x1d5c2, 0x1d5c3,
-        0x1d5f6, 0x1d5f7,
-        0x1d62a, 0x1d62b,
-        0x1d65e, 0x1d65f,
-        0x1d692, 0x1d693,
-}; /* CR_Soft_Dotted */
-
-/* 'Logical_Order_Exception': Binary Property */
-static const OnigCodePoint CR_Logical_Order_Exception[] = {
-        5,
-        0x0e40, 0x0e44,
-        0x0ec0, 0x0ec4,
-        0xaab5, 0xaab6,
-        0xaab9, 0xaab9,
-        0xaabb, 0xaabc,
-}; /* CR_Logical_Order_Exception */
-
-/* 'Other_ID_Start': Binary Property */
-static const OnigCodePoint CR_Other_ID_Start[] = {
-        3,
-        0x2118, 0x2118,
-        0x212e, 0x212e,
-        0x309b, 0x309c,
-}; /* CR_Other_ID_Start */
-
-/* 'Other_ID_Continue': Binary Property */
-static const OnigCodePoint CR_Other_ID_Continue[] = {
-        3,
-        0x00b7, 0x00b7,
-        0x0387, 0x0387,
-        0x1369, 0x1371,
-}; /* CR_Other_ID_Continue */
-
-/* 'STerm': Binary Property */
-static const OnigCodePoint CR_STerm[] = {
-        43,
-        0x0021, 0x0021,
-        0x002e, 0x002e,
-        0x003f, 0x003f,
-        0x055c, 0x055c,
-        0x055e, 0x055e,
-        0x0589, 0x0589,
-        0x061f, 0x061f,
-        0x06d4, 0x06d4,
-        0x0700, 0x0702,
-        0x07f9, 0x07f9,
-        0x0964, 0x0965,
-        0x104a, 0x104b,
-        0x1362, 0x1362,
-        0x1367, 0x1368,
-        0x166e, 0x166e,
-        0x1803, 0x1803,
-        0x1809, 0x1809,
-        0x1944, 0x1945,
-        0x1b5a, 0x1b5b,
-        0x1b5e, 0x1b5f,
-        0x1c3b, 0x1c3c,
-        0x1c7e, 0x1c7f,
-        0x203c, 0x203d,
-        0x2047, 0x2049,
-        0x2e2e, 0x2e2e,
-        0x3002, 0x3002,
-        0xa4ff, 0xa4ff,
-        0xa60e, 0xa60f,
-        0xa6f3, 0xa6f3,
-        0xa6f7, 0xa6f7,
-        0xa876, 0xa877,
-        0xa8ce, 0xa8cf,
-        0xa92f, 0xa92f,
-        0xa9c8, 0xa9c9,
-        0xaa5d, 0xaa5f,
-        0xabeb, 0xabeb,
-        0xfe52, 0xfe52,
-        0xfe56, 0xfe57,
-        0xff01, 0xff01,
-        0xff0e, 0xff0e,
-        0xff1f, 0xff1f,
-        0xff61, 0xff61,
-        0x110be, 0x110c1,
-}; /* CR_STerm */
-
-/* 'Variation_Selector': Binary Property */
-static const OnigCodePoint CR_Variation_Selector[] = {
-        3,
-        0x180b, 0x180d,
-        0xfe00, 0xfe0f,
-        0xe0100, 0xe01ef,
-}; /* CR_Variation_Selector */
-
-/* 'Pattern_White_Space': Binary Property */
-static const OnigCodePoint CR_Pattern_White_Space[] = {
-        5,
-        0x0009, 0x000d,
-        0x0020, 0x0020,
-        0x0085, 0x0085,
-        0x200e, 0x200f,
-        0x2028, 0x2029,
-}; /* CR_Pattern_White_Space */
-
-/* 'Pattern_Syntax': Binary Property */
-static const OnigCodePoint CR_Pattern_Syntax[] = {
-        28,
-        0x0021, 0x002f,
-        0x003a, 0x0040,
-        0x005b, 0x005e,
-        0x0060, 0x0060,
-        0x007b, 0x007e,
-        0x00a1, 0x00a7,
-        0x00a9, 0x00a9,
-        0x00ab, 0x00ac,
-        0x00ae, 0x00ae,
-        0x00b0, 0x00b1,
-        0x00b6, 0x00b6,
-        0x00bb, 0x00bb,
-        0x00bf, 0x00bf,
-        0x00d7, 0x00d7,
-        0x00f7, 0x00f7,
-        0x2010, 0x2027,
-        0x2030, 0x203e,
-        0x2041, 0x2053,
-        0x2055, 0x205e,
-        0x2190, 0x245f,
-        0x2500, 0x2775,
-        0x2794, 0x2bff,
-        0x2e00, 0x2e7f,
-        0x3001, 0x3003,
-        0x3008, 0x3020,
-        0x3030, 0x3030,
-        0xfd3e, 0xfd3f,
-        0xfe45, 0xfe46,
-}; /* CR_Pattern_Syntax */
-#endif /* USE_UNICODE_PROPERTIES */
-#endif /* USE_UNICODE_PROPERTIES */
-
-/* 'NEWLINE': [[:NEWLINE:]] */
-static const OnigCodePoint CR_NEWLINE[] = {
-        1,
-        0x000a, 0x000a,
-}; /* CR_NEWLINE */
-
-/* 'Alpha': [[:Alpha:]] */
-#define CR_Alpha CR_Alphabetic
-
-/* 'Blank': [[:Blank:]] */
-static const OnigCodePoint CR_Blank[] = {
-        9,
-        0x0009, 0x0009,
-        0x0020, 0x0020,
-        0x00a0, 0x00a0,
-        0x1680, 0x1680,
-        0x180e, 0x180e,
-        0x2000, 0x200a,
-        0x202f, 0x202f,
-        0x205f, 0x205f,
-        0x3000, 0x3000,
-}; /* CR_Blank */
-
-/* 'Cntrl': [[:Cntrl:]] */
-#define CR_Cntrl CR_Cc
-
-/* 'Digit': [[:Digit:]] */
-#define CR_Digit CR_Nd
-
-/* 'Graph': [[:Graph:]] */
-static const OnigCodePoint CR_Graph[] = {
-        490,
-        0x0021, 0x007e,
-        0x00a1, 0x0377,
-        0x037a, 0x037e,
-        0x0384, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x055f,
-        0x0561, 0x0587,
-        0x0589, 0x058a,
-        0x0591, 0x05c7,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f4,
-        0x0600, 0x0603,
-        0x0606, 0x061b,
-        0x061e, 0x061f,
-        0x0621, 0x065e,
-        0x0660, 0x070d,
-        0x070f, 0x074a,
-        0x074d, 0x07b1,
-        0x07c0, 0x07fa,
-        0x0800, 0x082d,
-        0x0830, 0x083e,
-        0x0900, 0x0939,
-        0x093c, 0x094e,
-        0x0950, 0x0955,
-        0x0958, 0x0972,
-        0x0979, 0x097f,
-        0x0981, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bc, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09ce,
-        0x09d7, 0x09d7,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e3,
-        0x09e6, 0x09fb,
-        0x0a01, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3c, 0x0a3c,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a66, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abc, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae3,
-        0x0ae6, 0x0aef,
-        0x0af1, 0x0af1,
-        0x0b01, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3c, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4d,
-        0x0b56, 0x0b57,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b63,
-        0x0b66, 0x0b71,
-        0x0b82, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcd,
-        0x0bd0, 0x0bd0,
-        0x0bd7, 0x0bd7,
-        0x0be6, 0x0bfa,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c63,
-        0x0c66, 0x0c6f,
-        0x0c78, 0x0c7f,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbc, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccd,
-        0x0cd5, 0x0cd6,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce3,
-        0x0ce6, 0x0cef,
-        0x0cf1, 0x0cf2,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4d,
-        0x0d57, 0x0d57,
-        0x0d60, 0x0d63,
-        0x0d66, 0x0d75,
-        0x0d79, 0x0d7f,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dca, 0x0dca,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df4,
-        0x0e01, 0x0e3a,
-        0x0e3f, 0x0e5b,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb9,
-        0x0ebb, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ec8, 0x0ecd,
-        0x0ed0, 0x0ed9,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f71, 0x0f8b,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fbe, 0x0fcc,
-        0x0fce, 0x0fd8,
-        0x1000, 0x10c5,
-        0x10d0, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x135f, 0x137c,
-        0x1380, 0x1399,
-        0x13a0, 0x13f4,
-        0x1400, 0x167f,
-        0x1681, 0x169c,
-        0x16a0, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1714,
-        0x1720, 0x1736,
-        0x1740, 0x1753,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1772, 0x1773,
-        0x1780, 0x17dd,
-        0x17e0, 0x17e9,
-        0x17f0, 0x17f9,
-        0x1800, 0x180d,
-        0x1810, 0x1819,
-        0x1820, 0x1877,
-        0x1880, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1920, 0x192b,
-        0x1930, 0x193b,
-        0x1940, 0x1940,
-        0x1944, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x19d0, 0x19da,
-        0x19de, 0x1a1b,
-        0x1a1e, 0x1a5e,
-        0x1a60, 0x1a7c,
-        0x1a7f, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1aa0, 0x1aad,
-        0x1b00, 0x1b4b,
-        0x1b50, 0x1b7c,
-        0x1b80, 0x1baa,
-        0x1bae, 0x1bb9,
-        0x1c00, 0x1c37,
-        0x1c3b, 0x1c49,
-        0x1c4d, 0x1c7f,
-        0x1cd0, 0x1cf2,
-        0x1d00, 0x1de6,
-        0x1dfd, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fc4,
-        0x1fc6, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fdd, 0x1fef,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffe,
-        0x200b, 0x2027,
-        0x202a, 0x202e,
-        0x2030, 0x205e,
-        0x2060, 0x2064,
-        0x206a, 0x2071,
-        0x2074, 0x208e,
-        0x2090, 0x2094,
-        0x20a0, 0x20b8,
-        0x20d0, 0x20f0,
-        0x2100, 0x2189,
-        0x2190, 0x23e8,
-        0x2400, 0x2426,
-        0x2440, 0x244a,
-        0x2460, 0x26cd,
-        0x26cf, 0x26e1,
-        0x26e3, 0x26e3,
-        0x26e8, 0x26ff,
-        0x2701, 0x2704,
-        0x2706, 0x2709,
-        0x270c, 0x2727,
-        0x2729, 0x274b,
-        0x274d, 0x274d,
-        0x274f, 0x2752,
-        0x2756, 0x275e,
-        0x2761, 0x2794,
-        0x2798, 0x27af,
-        0x27b1, 0x27be,
-        0x27c0, 0x27ca,
-        0x27cc, 0x27cc,
-        0x27d0, 0x2b4c,
-        0x2b50, 0x2b59,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2cf1,
-        0x2cf9, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2de0, 0x2e31,
-        0x2e80, 0x2e99,
-        0x2e9b, 0x2ef3,
-        0x2f00, 0x2fd5,
-        0x2ff0, 0x2ffb,
-        0x3001, 0x303f,
-        0x3041, 0x3096,
-        0x3099, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x3190, 0x31b7,
-        0x31c0, 0x31e3,
-        0x31f0, 0x321e,
-        0x3220, 0x32fe,
-        0x3300, 0x4db5,
-        0x4dc0, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa490, 0xa4c6,
-        0xa4d0, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa673,
-        0xa67c, 0xa697,
-        0xa6a0, 0xa6f7,
-        0xa700, 0xa78c,
-        0xa7fb, 0xa82b,
-        0xa830, 0xa839,
-        0xa840, 0xa877,
-        0xa880, 0xa8c4,
-        0xa8ce, 0xa8d9,
-        0xa8e0, 0xa8fb,
-        0xa900, 0xa953,
-        0xa95f, 0xa97c,
-        0xa980, 0xa9cd,
-        0xa9cf, 0xa9d9,
-        0xa9de, 0xa9df,
-        0xaa00, 0xaa36,
-        0xaa40, 0xaa4d,
-        0xaa50, 0xaa59,
-        0xaa5c, 0xaa7b,
-        0xaa80, 0xaac2,
-        0xaadb, 0xaadf,
-        0xabc0, 0xabed,
-        0xabf0, 0xabf9,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xe000, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3f,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfd,
-        0xfe00, 0xfe19,
-        0xfe20, 0xfe26,
-        0xfe30, 0xfe52,
-        0xfe54, 0xfe66,
-        0xfe68, 0xfe6b,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xfeff, 0xfeff,
-        0xff01, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0xffe0, 0xffe6,
-        0xffe8, 0xffee,
-        0xfff9, 0xfffd,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10100, 0x10102,
-        0x10107, 0x10133,
-        0x10137, 0x1018a,
-        0x10190, 0x1019b,
-        0x101d0, 0x101fd,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10320, 0x10323,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x1039f, 0x103c3,
-        0x103c8, 0x103d5,
-        0x10400, 0x1049d,
-        0x104a0, 0x104a9,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10857, 0x1085f,
-        0x10900, 0x1091b,
-        0x1091f, 0x10939,
-        0x1093f, 0x1093f,
-        0x10a00, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a47,
-        0x10a50, 0x10a58,
-        0x10a60, 0x10a7f,
-        0x10b00, 0x10b35,
-        0x10b39, 0x10b55,
-        0x10b58, 0x10b72,
-        0x10b78, 0x10b7f,
-        0x10c00, 0x10c48,
-        0x10e60, 0x10e7e,
-        0x11080, 0x110c1,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x12470, 0x12473,
-        0x13000, 0x1342e,
-        0x1d000, 0x1d0f5,
-        0x1d100, 0x1d126,
-        0x1d129, 0x1d1dd,
-        0x1d200, 0x1d245,
-        0x1d300, 0x1d356,
-        0x1d360, 0x1d371,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-        0x1f000, 0x1f02b,
-        0x1f030, 0x1f093,
-        0x1f100, 0x1f10a,
-        0x1f110, 0x1f12e,
-        0x1f131, 0x1f131,
-        0x1f13d, 0x1f13d,
-        0x1f13f, 0x1f13f,
-        0x1f142, 0x1f142,
-        0x1f146, 0x1f146,
-        0x1f14a, 0x1f14e,
-        0x1f157, 0x1f157,
-        0x1f15f, 0x1f15f,
-        0x1f179, 0x1f179,
-        0x1f17b, 0x1f17c,
-        0x1f17f, 0x1f17f,
-        0x1f18a, 0x1f18d,
-        0x1f190, 0x1f190,
-        0x1f200, 0x1f200,
-        0x1f210, 0x1f231,
-        0x1f240, 0x1f248,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-        0xe0001, 0xe0001,
-        0xe0020, 0xe007f,
-        0xe0100, 0xe01ef,
-        0xf0000, 0xffffd,
-        0x100000, 0x10fffd,
-}; /* CR_Graph */
-
-/* 'Lower': [[:Lower:]] */
-#define CR_Lower CR_Lowercase
-
-/* 'Print': [[:Print:]] */
-static const OnigCodePoint CR_Print[] = {
-        487,
-        0x0020, 0x007e,
-        0x00a0, 0x0377,
-        0x037a, 0x037e,
-        0x0384, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x055f,
-        0x0561, 0x0587,
-        0x0589, 0x058a,
-        0x0591, 0x05c7,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f4,
-        0x0600, 0x0603,
-        0x0606, 0x061b,
-        0x061e, 0x061f,
-        0x0621, 0x065e,
-        0x0660, 0x070d,
-        0x070f, 0x074a,
-        0x074d, 0x07b1,
-        0x07c0, 0x07fa,
-        0x0800, 0x082d,
-        0x0830, 0x083e,
-        0x0900, 0x0939,
-        0x093c, 0x094e,
-        0x0950, 0x0955,
-        0x0958, 0x0972,
-        0x0979, 0x097f,
-        0x0981, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bc, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09ce,
-        0x09d7, 0x09d7,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e3,
-        0x09e6, 0x09fb,
-        0x0a01, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3c, 0x0a3c,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a66, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abc, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae3,
-        0x0ae6, 0x0aef,
-        0x0af1, 0x0af1,
-        0x0b01, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3c, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4d,
-        0x0b56, 0x0b57,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b63,
-        0x0b66, 0x0b71,
-        0x0b82, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcd,
-        0x0bd0, 0x0bd0,
-        0x0bd7, 0x0bd7,
-        0x0be6, 0x0bfa,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c63,
-        0x0c66, 0x0c6f,
-        0x0c78, 0x0c7f,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbc, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccd,
-        0x0cd5, 0x0cd6,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce3,
-        0x0ce6, 0x0cef,
-        0x0cf1, 0x0cf2,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4d,
-        0x0d57, 0x0d57,
-        0x0d60, 0x0d63,
-        0x0d66, 0x0d75,
-        0x0d79, 0x0d7f,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dca, 0x0dca,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df4,
-        0x0e01, 0x0e3a,
-        0x0e3f, 0x0e5b,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb9,
-        0x0ebb, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ec8, 0x0ecd,
-        0x0ed0, 0x0ed9,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f71, 0x0f8b,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fbe, 0x0fcc,
-        0x0fce, 0x0fd8,
-        0x1000, 0x10c5,
-        0x10d0, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x135f, 0x137c,
-        0x1380, 0x1399,
-        0x13a0, 0x13f4,
-        0x1400, 0x169c,
-        0x16a0, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1714,
-        0x1720, 0x1736,
-        0x1740, 0x1753,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1772, 0x1773,
-        0x1780, 0x17dd,
-        0x17e0, 0x17e9,
-        0x17f0, 0x17f9,
-        0x1800, 0x180e,
-        0x1810, 0x1819,
-        0x1820, 0x1877,
-        0x1880, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1920, 0x192b,
-        0x1930, 0x193b,
-        0x1940, 0x1940,
-        0x1944, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x19d0, 0x19da,
-        0x19de, 0x1a1b,
-        0x1a1e, 0x1a5e,
-        0x1a60, 0x1a7c,
-        0x1a7f, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1aa0, 0x1aad,
-        0x1b00, 0x1b4b,
-        0x1b50, 0x1b7c,
-        0x1b80, 0x1baa,
-        0x1bae, 0x1bb9,
-        0x1c00, 0x1c37,
-        0x1c3b, 0x1c49,
-        0x1c4d, 0x1c7f,
-        0x1cd0, 0x1cf2,
-        0x1d00, 0x1de6,
-        0x1dfd, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fc4,
-        0x1fc6, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fdd, 0x1fef,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffe,
-        0x2000, 0x2027,
-        0x202a, 0x2064,
-        0x206a, 0x2071,
-        0x2074, 0x208e,
-        0x2090, 0x2094,
-        0x20a0, 0x20b8,
-        0x20d0, 0x20f0,
-        0x2100, 0x2189,
-        0x2190, 0x23e8,
-        0x2400, 0x2426,
-        0x2440, 0x244a,
-        0x2460, 0x26cd,
-        0x26cf, 0x26e1,
-        0x26e3, 0x26e3,
-        0x26e8, 0x26ff,
-        0x2701, 0x2704,
-        0x2706, 0x2709,
-        0x270c, 0x2727,
-        0x2729, 0x274b,
-        0x274d, 0x274d,
-        0x274f, 0x2752,
-        0x2756, 0x275e,
-        0x2761, 0x2794,
-        0x2798, 0x27af,
-        0x27b1, 0x27be,
-        0x27c0, 0x27ca,
-        0x27cc, 0x27cc,
-        0x27d0, 0x2b4c,
-        0x2b50, 0x2b59,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2cf1,
-        0x2cf9, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2de0, 0x2e31,
-        0x2e80, 0x2e99,
-        0x2e9b, 0x2ef3,
-        0x2f00, 0x2fd5,
-        0x2ff0, 0x2ffb,
-        0x3000, 0x303f,
-        0x3041, 0x3096,
-        0x3099, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x3190, 0x31b7,
-        0x31c0, 0x31e3,
-        0x31f0, 0x321e,
-        0x3220, 0x32fe,
-        0x3300, 0x4db5,
-        0x4dc0, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa490, 0xa4c6,
-        0xa4d0, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa673,
-        0xa67c, 0xa697,
-        0xa6a0, 0xa6f7,
-        0xa700, 0xa78c,
-        0xa7fb, 0xa82b,
-        0xa830, 0xa839,
-        0xa840, 0xa877,
-        0xa880, 0xa8c4,
-        0xa8ce, 0xa8d9,
-        0xa8e0, 0xa8fb,
-        0xa900, 0xa953,
-        0xa95f, 0xa97c,
-        0xa980, 0xa9cd,
-        0xa9cf, 0xa9d9,
-        0xa9de, 0xa9df,
-        0xaa00, 0xaa36,
-        0xaa40, 0xaa4d,
-        0xaa50, 0xaa59,
-        0xaa5c, 0xaa7b,
-        0xaa80, 0xaac2,
-        0xaadb, 0xaadf,
-        0xabc0, 0xabed,
-        0xabf0, 0xabf9,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xe000, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3f,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfd,
-        0xfe00, 0xfe19,
-        0xfe20, 0xfe26,
-        0xfe30, 0xfe52,
-        0xfe54, 0xfe66,
-        0xfe68, 0xfe6b,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xfeff, 0xfeff,
-        0xff01, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0xffe0, 0xffe6,
-        0xffe8, 0xffee,
-        0xfff9, 0xfffd,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10100, 0x10102,
-        0x10107, 0x10133,
-        0x10137, 0x1018a,
-        0x10190, 0x1019b,
-        0x101d0, 0x101fd,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10320, 0x10323,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x1039f, 0x103c3,
-        0x103c8, 0x103d5,
-        0x10400, 0x1049d,
-        0x104a0, 0x104a9,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10857, 0x1085f,
-        0x10900, 0x1091b,
-        0x1091f, 0x10939,
-        0x1093f, 0x1093f,
-        0x10a00, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a47,
-        0x10a50, 0x10a58,
-        0x10a60, 0x10a7f,
-        0x10b00, 0x10b35,
-        0x10b39, 0x10b55,
-        0x10b58, 0x10b72,
-        0x10b78, 0x10b7f,
-        0x10c00, 0x10c48,
-        0x10e60, 0x10e7e,
-        0x11080, 0x110c1,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x12470, 0x12473,
-        0x13000, 0x1342e,
-        0x1d000, 0x1d0f5,
-        0x1d100, 0x1d126,
-        0x1d129, 0x1d1dd,
-        0x1d200, 0x1d245,
-        0x1d300, 0x1d356,
-        0x1d360, 0x1d371,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-        0x1f000, 0x1f02b,
-        0x1f030, 0x1f093,
-        0x1f100, 0x1f10a,
-        0x1f110, 0x1f12e,
-        0x1f131, 0x1f131,
-        0x1f13d, 0x1f13d,
-        0x1f13f, 0x1f13f,
-        0x1f142, 0x1f142,
-        0x1f146, 0x1f146,
-        0x1f14a, 0x1f14e,
-        0x1f157, 0x1f157,
-        0x1f15f, 0x1f15f,
-        0x1f179, 0x1f179,
-        0x1f17b, 0x1f17c,
-        0x1f17f, 0x1f17f,
-        0x1f18a, 0x1f18d,
-        0x1f190, 0x1f190,
-        0x1f200, 0x1f200,
-        0x1f210, 0x1f231,
-        0x1f240, 0x1f248,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-        0xe0001, 0xe0001,
-        0xe0020, 0xe007f,
-        0xe0100, 0xe01ef,
-        0xf0000, 0xffffd,
-        0x100000, 0x10fffd,
-}; /* CR_Print */
-
-/* 'Punct': [[:Punct:]] */
-#define CR_Punct CR_P
-
-/* 'Space': [[:Space:]] */
-#define CR_Space CR_White_Space
-
-/* 'Upper': [[:Upper:]] */
-#define CR_Upper CR_Uppercase
-
-/* 'XDigit': [[:XDigit:]] */
-#define CR_XDigit CR_ASCII_Hex_Digit
-
-/* 'Word': [[:Word:]] */
-static const OnigCodePoint CR_Word[] = {
-        506,
-        0x0030, 0x0039,
-        0x0041, 0x005a,
-        0x005f, 0x005f,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x02c1,
-        0x02c6, 0x02d1,
-        0x02e0, 0x02e4,
-        0x02ec, 0x02ec,
-        0x02ee, 0x02ee,
-        0x0300, 0x0374,
-        0x0376, 0x0377,
-        0x037a, 0x037d,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03f5,
-        0x03f7, 0x0481,
-        0x0483, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x0559,
-        0x0561, 0x0587,
-        0x0591, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f2,
-        0x0610, 0x061a,
-        0x0621, 0x065e,
-        0x0660, 0x0669,
-        0x066e, 0x06d3,
-        0x06d5, 0x06dc,
-        0x06de, 0x06e8,
-        0x06ea, 0x06fc,
-        0x06ff, 0x06ff,
-        0x0710, 0x074a,
-        0x074d, 0x07b1,
-        0x07c0, 0x07f5,
-        0x07fa, 0x07fa,
-        0x0800, 0x082d,
-        0x0900, 0x0939,
-        0x093c, 0x094e,
-        0x0950, 0x0955,
-        0x0958, 0x0963,
-        0x0966, 0x096f,
-        0x0971, 0x0972,
-        0x0979, 0x097f,
-        0x0981, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bc, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09ce,
-        0x09d7, 0x09d7,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e3,
-        0x09e6, 0x09f1,
-        0x0a01, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3c, 0x0a3c,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4d,
-        0x0a51, 0x0a51,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a66, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abc, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acd,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae3,
-        0x0ae6, 0x0aef,
-        0x0b01, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3c, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4d,
-        0x0b56, 0x0b57,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b63,
-        0x0b66, 0x0b6f,
-        0x0b71, 0x0b71,
-        0x0b82, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcd,
-        0x0bd0, 0x0bd0,
-        0x0bd7, 0x0bd7,
-        0x0be6, 0x0bef,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4d,
-        0x0c55, 0x0c56,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c63,
-        0x0c66, 0x0c6f,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbc, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccd,
-        0x0cd5, 0x0cd6,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce3,
-        0x0ce6, 0x0cef,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4d,
-        0x0d57, 0x0d57,
-        0x0d60, 0x0d63,
-        0x0d66, 0x0d6f,
-        0x0d7a, 0x0d7f,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dca, 0x0dca,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df3,
-        0x0e01, 0x0e3a,
-        0x0e40, 0x0e4e,
-        0x0e50, 0x0e59,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb9,
-        0x0ebb, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ec8, 0x0ecd,
-        0x0ed0, 0x0ed9,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f00,
-        0x0f18, 0x0f19,
-        0x0f20, 0x0f29,
-        0x0f35, 0x0f35,
-        0x0f37, 0x0f37,
-        0x0f39, 0x0f39,
-        0x0f3e, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f71, 0x0f84,
-        0x0f86, 0x0f8b,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x0fc6, 0x0fc6,
-        0x1000, 0x1049,
-        0x1050, 0x109d,
-        0x10a0, 0x10c5,
-        0x10d0, 0x10fa,
-        0x10fc, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x135f, 0x135f,
-        0x1380, 0x138f,
-        0x13a0, 0x13f4,
-        0x1401, 0x166c,
-        0x166f, 0x167f,
-        0x1681, 0x169a,
-        0x16a0, 0x16ea,
-        0x16ee, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1714,
-        0x1720, 0x1734,
-        0x1740, 0x1753,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1772, 0x1773,
-        0x1780, 0x17b3,
-        0x17b6, 0x17d3,
-        0x17d7, 0x17d7,
-        0x17dc, 0x17dd,
-        0x17e0, 0x17e9,
-        0x180b, 0x180d,
-        0x1810, 0x1819,
-        0x1820, 0x1877,
-        0x1880, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1920, 0x192b,
-        0x1930, 0x193b,
-        0x1946, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x19d0, 0x19da,
-        0x1a00, 0x1a1b,
-        0x1a20, 0x1a5e,
-        0x1a60, 0x1a7c,
-        0x1a7f, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1aa7, 0x1aa7,
-        0x1b00, 0x1b4b,
-        0x1b50, 0x1b59,
-        0x1b6b, 0x1b73,
-        0x1b80, 0x1baa,
-        0x1bae, 0x1bb9,
-        0x1c00, 0x1c37,
-        0x1c40, 0x1c49,
-        0x1c4d, 0x1c7d,
-        0x1cd0, 0x1cd2,
-        0x1cd4, 0x1cf2,
-        0x1d00, 0x1de6,
-        0x1dfd, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x203f, 0x2040,
-        0x2054, 0x2054,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x20d0, 0x20f0,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2119, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x212d,
-        0x212f, 0x2139,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x214e, 0x214e,
-        0x2160, 0x2188,
-        0x24b6, 0x24e9,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2ce4,
-        0x2ceb, 0x2cf1,
-        0x2d00, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2de0, 0x2dff,
-        0x2e2f, 0x2e2f,
-        0x3005, 0x3007,
-        0x3021, 0x302f,
-        0x3031, 0x3035,
-        0x3038, 0x303c,
-        0x3041, 0x3096,
-        0x3099, 0x309a,
-        0x309d, 0x309f,
-        0x30a1, 0x30fa,
-        0x30fc, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x31a0, 0x31b7,
-        0x31f0, 0x31ff,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa4d0, 0xa4fd,
-        0xa500, 0xa60c,
-        0xa610, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa672,
-        0xa67c, 0xa67d,
-        0xa67f, 0xa697,
-        0xa6a0, 0xa6f1,
-        0xa717, 0xa71f,
-        0xa722, 0xa788,
-        0xa78b, 0xa78c,
-        0xa7fb, 0xa827,
-        0xa840, 0xa873,
-        0xa880, 0xa8c4,
-        0xa8d0, 0xa8d9,
-        0xa8e0, 0xa8f7,
-        0xa8fb, 0xa8fb,
-        0xa900, 0xa92d,
-        0xa930, 0xa953,
-        0xa960, 0xa97c,
-        0xa980, 0xa9c0,
-        0xa9cf, 0xa9d9,
-        0xaa00, 0xaa36,
-        0xaa40, 0xaa4d,
-        0xaa50, 0xaa59,
-        0xaa60, 0xaa76,
-        0xaa7a, 0xaa7b,
-        0xaa80, 0xaac2,
-        0xaadb, 0xaadd,
-        0xabc0, 0xabea,
-        0xabec, 0xabed,
-        0xabf0, 0xabf9,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb28,
-        0xfb2a, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfb,
-        0xfe00, 0xfe0f,
-        0xfe20, 0xfe26,
-        0xfe33, 0xfe34,
-        0xfe4d, 0xfe4f,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xff10, 0xff19,
-        0xff21, 0xff3a,
-        0xff3f, 0xff3f,
-        0xff41, 0xff5a,
-        0xff66, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10140, 0x10174,
-        0x101fd, 0x101fd,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103cf,
-        0x103d1, 0x103d5,
-        0x10400, 0x1049d,
-        0x104a0, 0x104a9,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10900, 0x10915,
-        0x10920, 0x10939,
-        0x10a00, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a38, 0x10a3a,
-        0x10a3f, 0x10a3f,
-        0x10a60, 0x10a7c,
-        0x10b00, 0x10b35,
-        0x10b40, 0x10b55,
-        0x10b60, 0x10b72,
-        0x10c00, 0x10c48,
-        0x11080, 0x110ba,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x13000, 0x1342e,
-        0x1d165, 0x1d169,
-        0x1d16d, 0x1d172,
-        0x1d17b, 0x1d182,
-        0x1d185, 0x1d18b,
-        0x1d1aa, 0x1d1ad,
-        0x1d242, 0x1d244,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-        0xe0100, 0xe01ef,
-}; /* CR_Word */
-
-/* 'Alnum': [[:Alnum:]] */
-static const OnigCodePoint CR_Alnum[] = {
-        497,
-        0x0030, 0x0039,
-        0x0041, 0x005a,
-        0x0061, 0x007a,
-        0x00aa, 0x00aa,
-        0x00b5, 0x00b5,
-        0x00ba, 0x00ba,
-        0x00c0, 0x00d6,
-        0x00d8, 0x00f6,
-        0x00f8, 0x02c1,
-        0x02c6, 0x02d1,
-        0x02e0, 0x02e4,
-        0x02ec, 0x02ec,
-        0x02ee, 0x02ee,
-        0x0345, 0x0345,
-        0x0370, 0x0374,
-        0x0376, 0x0377,
-        0x037a, 0x037d,
-        0x0386, 0x0386,
-        0x0388, 0x038a,
-        0x038c, 0x038c,
-        0x038e, 0x03a1,
-        0x03a3, 0x03f5,
-        0x03f7, 0x0481,
-        0x048a, 0x0525,
-        0x0531, 0x0556,
-        0x0559, 0x0559,
-        0x0561, 0x0587,
-        0x05b0, 0x05bd,
-        0x05bf, 0x05bf,
-        0x05c1, 0x05c2,
-        0x05c4, 0x05c5,
-        0x05c7, 0x05c7,
-        0x05d0, 0x05ea,
-        0x05f0, 0x05f2,
-        0x0610, 0x061a,
-        0x0621, 0x0657,
-        0x0659, 0x065e,
-        0x0660, 0x0669,
-        0x066e, 0x06d3,
-        0x06d5, 0x06dc,
-        0x06e1, 0x06e8,
-        0x06ed, 0x06fc,
-        0x06ff, 0x06ff,
-        0x0710, 0x073f,
-        0x074d, 0x07b1,
-        0x07c0, 0x07ea,
-        0x07f4, 0x07f5,
-        0x07fa, 0x07fa,
-        0x0800, 0x0817,
-        0x081a, 0x082c,
-        0x0900, 0x0939,
-        0x093d, 0x094c,
-        0x094e, 0x094e,
-        0x0950, 0x0950,
-        0x0955, 0x0955,
-        0x0958, 0x0963,
-        0x0966, 0x096f,
-        0x0971, 0x0972,
-        0x0979, 0x097f,
-        0x0981, 0x0983,
-        0x0985, 0x098c,
-        0x098f, 0x0990,
-        0x0993, 0x09a8,
-        0x09aa, 0x09b0,
-        0x09b2, 0x09b2,
-        0x09b6, 0x09b9,
-        0x09bd, 0x09c4,
-        0x09c7, 0x09c8,
-        0x09cb, 0x09cc,
-        0x09ce, 0x09ce,
-        0x09d7, 0x09d7,
-        0x09dc, 0x09dd,
-        0x09df, 0x09e3,
-        0x09e6, 0x09f1,
-        0x0a01, 0x0a03,
-        0x0a05, 0x0a0a,
-        0x0a0f, 0x0a10,
-        0x0a13, 0x0a28,
-        0x0a2a, 0x0a30,
-        0x0a32, 0x0a33,
-        0x0a35, 0x0a36,
-        0x0a38, 0x0a39,
-        0x0a3e, 0x0a42,
-        0x0a47, 0x0a48,
-        0x0a4b, 0x0a4c,
-        0x0a51, 0x0a51,
-        0x0a59, 0x0a5c,
-        0x0a5e, 0x0a5e,
-        0x0a66, 0x0a75,
-        0x0a81, 0x0a83,
-        0x0a85, 0x0a8d,
-        0x0a8f, 0x0a91,
-        0x0a93, 0x0aa8,
-        0x0aaa, 0x0ab0,
-        0x0ab2, 0x0ab3,
-        0x0ab5, 0x0ab9,
-        0x0abd, 0x0ac5,
-        0x0ac7, 0x0ac9,
-        0x0acb, 0x0acc,
-        0x0ad0, 0x0ad0,
-        0x0ae0, 0x0ae3,
-        0x0ae6, 0x0aef,
-        0x0b01, 0x0b03,
-        0x0b05, 0x0b0c,
-        0x0b0f, 0x0b10,
-        0x0b13, 0x0b28,
-        0x0b2a, 0x0b30,
-        0x0b32, 0x0b33,
-        0x0b35, 0x0b39,
-        0x0b3d, 0x0b44,
-        0x0b47, 0x0b48,
-        0x0b4b, 0x0b4c,
-        0x0b56, 0x0b57,
-        0x0b5c, 0x0b5d,
-        0x0b5f, 0x0b63,
-        0x0b66, 0x0b6f,
-        0x0b71, 0x0b71,
-        0x0b82, 0x0b83,
-        0x0b85, 0x0b8a,
-        0x0b8e, 0x0b90,
-        0x0b92, 0x0b95,
-        0x0b99, 0x0b9a,
-        0x0b9c, 0x0b9c,
-        0x0b9e, 0x0b9f,
-        0x0ba3, 0x0ba4,
-        0x0ba8, 0x0baa,
-        0x0bae, 0x0bb9,
-        0x0bbe, 0x0bc2,
-        0x0bc6, 0x0bc8,
-        0x0bca, 0x0bcc,
-        0x0bd0, 0x0bd0,
-        0x0bd7, 0x0bd7,
-        0x0be6, 0x0bef,
-        0x0c01, 0x0c03,
-        0x0c05, 0x0c0c,
-        0x0c0e, 0x0c10,
-        0x0c12, 0x0c28,
-        0x0c2a, 0x0c33,
-        0x0c35, 0x0c39,
-        0x0c3d, 0x0c44,
-        0x0c46, 0x0c48,
-        0x0c4a, 0x0c4c,
-        0x0c55, 0x0c56,
-        0x0c58, 0x0c59,
-        0x0c60, 0x0c63,
-        0x0c66, 0x0c6f,
-        0x0c82, 0x0c83,
-        0x0c85, 0x0c8c,
-        0x0c8e, 0x0c90,
-        0x0c92, 0x0ca8,
-        0x0caa, 0x0cb3,
-        0x0cb5, 0x0cb9,
-        0x0cbd, 0x0cc4,
-        0x0cc6, 0x0cc8,
-        0x0cca, 0x0ccc,
-        0x0cd5, 0x0cd6,
-        0x0cde, 0x0cde,
-        0x0ce0, 0x0ce3,
-        0x0ce6, 0x0cef,
-        0x0d02, 0x0d03,
-        0x0d05, 0x0d0c,
-        0x0d0e, 0x0d10,
-        0x0d12, 0x0d28,
-        0x0d2a, 0x0d39,
-        0x0d3d, 0x0d44,
-        0x0d46, 0x0d48,
-        0x0d4a, 0x0d4c,
-        0x0d57, 0x0d57,
-        0x0d60, 0x0d63,
-        0x0d66, 0x0d6f,
-        0x0d7a, 0x0d7f,
-        0x0d82, 0x0d83,
-        0x0d85, 0x0d96,
-        0x0d9a, 0x0db1,
-        0x0db3, 0x0dbb,
-        0x0dbd, 0x0dbd,
-        0x0dc0, 0x0dc6,
-        0x0dcf, 0x0dd4,
-        0x0dd6, 0x0dd6,
-        0x0dd8, 0x0ddf,
-        0x0df2, 0x0df3,
-        0x0e01, 0x0e3a,
-        0x0e40, 0x0e46,
-        0x0e4d, 0x0e4d,
-        0x0e50, 0x0e59,
-        0x0e81, 0x0e82,
-        0x0e84, 0x0e84,
-        0x0e87, 0x0e88,
-        0x0e8a, 0x0e8a,
-        0x0e8d, 0x0e8d,
-        0x0e94, 0x0e97,
-        0x0e99, 0x0e9f,
-        0x0ea1, 0x0ea3,
-        0x0ea5, 0x0ea5,
-        0x0ea7, 0x0ea7,
-        0x0eaa, 0x0eab,
-        0x0ead, 0x0eb9,
-        0x0ebb, 0x0ebd,
-        0x0ec0, 0x0ec4,
-        0x0ec6, 0x0ec6,
-        0x0ecd, 0x0ecd,
-        0x0ed0, 0x0ed9,
-        0x0edc, 0x0edd,
-        0x0f00, 0x0f00,
-        0x0f20, 0x0f29,
-        0x0f40, 0x0f47,
-        0x0f49, 0x0f6c,
-        0x0f71, 0x0f81,
-        0x0f88, 0x0f8b,
-        0x0f90, 0x0f97,
-        0x0f99, 0x0fbc,
-        0x1000, 0x1036,
-        0x1038, 0x1038,
-        0x103b, 0x1049,
-        0x1050, 0x1062,
-        0x1065, 0x1068,
-        0x106e, 0x1086,
-        0x108e, 0x108e,
-        0x1090, 0x1099,
-        0x109c, 0x109d,
-        0x10a0, 0x10c5,
-        0x10d0, 0x10fa,
-        0x10fc, 0x10fc,
-        0x1100, 0x1248,
-        0x124a, 0x124d,
-        0x1250, 0x1256,
-        0x1258, 0x1258,
-        0x125a, 0x125d,
-        0x1260, 0x1288,
-        0x128a, 0x128d,
-        0x1290, 0x12b0,
-        0x12b2, 0x12b5,
-        0x12b8, 0x12be,
-        0x12c0, 0x12c0,
-        0x12c2, 0x12c5,
-        0x12c8, 0x12d6,
-        0x12d8, 0x1310,
-        0x1312, 0x1315,
-        0x1318, 0x135a,
-        0x135f, 0x135f,
-        0x1380, 0x138f,
-        0x13a0, 0x13f4,
-        0x1401, 0x166c,
-        0x166f, 0x167f,
-        0x1681, 0x169a,
-        0x16a0, 0x16ea,
-        0x16ee, 0x16f0,
-        0x1700, 0x170c,
-        0x170e, 0x1713,
-        0x1720, 0x1733,
-        0x1740, 0x1753,
-        0x1760, 0x176c,
-        0x176e, 0x1770,
-        0x1772, 0x1773,
-        0x1780, 0x17b3,
-        0x17b6, 0x17c8,
-        0x17d7, 0x17d7,
-        0x17dc, 0x17dc,
-        0x17e0, 0x17e9,
-        0x1810, 0x1819,
-        0x1820, 0x1877,
-        0x1880, 0x18aa,
-        0x18b0, 0x18f5,
-        0x1900, 0x191c,
-        0x1920, 0x192b,
-        0x1930, 0x1938,
-        0x1946, 0x196d,
-        0x1970, 0x1974,
-        0x1980, 0x19ab,
-        0x19b0, 0x19c9,
-        0x19d0, 0x19da,
-        0x1a00, 0x1a1b,
-        0x1a20, 0x1a5e,
-        0x1a61, 0x1a74,
-        0x1a80, 0x1a89,
-        0x1a90, 0x1a99,
-        0x1aa7, 0x1aa7,
-        0x1b00, 0x1b33,
-        0x1b35, 0x1b43,
-        0x1b45, 0x1b4b,
-        0x1b50, 0x1b59,
-        0x1b80, 0x1ba9,
-        0x1bae, 0x1bb9,
-        0x1c00, 0x1c35,
-        0x1c40, 0x1c49,
-        0x1c4d, 0x1c7d,
-        0x1ce9, 0x1cec,
-        0x1cee, 0x1cf2,
-        0x1d00, 0x1dbf,
-        0x1e00, 0x1f15,
-        0x1f18, 0x1f1d,
-        0x1f20, 0x1f45,
-        0x1f48, 0x1f4d,
-        0x1f50, 0x1f57,
-        0x1f59, 0x1f59,
-        0x1f5b, 0x1f5b,
-        0x1f5d, 0x1f5d,
-        0x1f5f, 0x1f7d,
-        0x1f80, 0x1fb4,
-        0x1fb6, 0x1fbc,
-        0x1fbe, 0x1fbe,
-        0x1fc2, 0x1fc4,
-        0x1fc6, 0x1fcc,
-        0x1fd0, 0x1fd3,
-        0x1fd6, 0x1fdb,
-        0x1fe0, 0x1fec,
-        0x1ff2, 0x1ff4,
-        0x1ff6, 0x1ffc,
-        0x2071, 0x2071,
-        0x207f, 0x207f,
-        0x2090, 0x2094,
-        0x2102, 0x2102,
-        0x2107, 0x2107,
-        0x210a, 0x2113,
-        0x2115, 0x2115,
-        0x2119, 0x211d,
-        0x2124, 0x2124,
-        0x2126, 0x2126,
-        0x2128, 0x2128,
-        0x212a, 0x212d,
-        0x212f, 0x2139,
-        0x213c, 0x213f,
-        0x2145, 0x2149,
-        0x214e, 0x214e,
-        0x2160, 0x2188,
-        0x24b6, 0x24e9,
-        0x2c00, 0x2c2e,
-        0x2c30, 0x2c5e,
-        0x2c60, 0x2ce4,
-        0x2ceb, 0x2cee,
-        0x2d00, 0x2d25,
-        0x2d30, 0x2d65,
-        0x2d6f, 0x2d6f,
-        0x2d80, 0x2d96,
-        0x2da0, 0x2da6,
-        0x2da8, 0x2dae,
-        0x2db0, 0x2db6,
-        0x2db8, 0x2dbe,
-        0x2dc0, 0x2dc6,
-        0x2dc8, 0x2dce,
-        0x2dd0, 0x2dd6,
-        0x2dd8, 0x2dde,
-        0x2de0, 0x2dff,
-        0x2e2f, 0x2e2f,
-        0x3005, 0x3007,
-        0x3021, 0x3029,
-        0x3031, 0x3035,
-        0x3038, 0x303c,
-        0x3041, 0x3096,
-        0x309d, 0x309f,
-        0x30a1, 0x30fa,
-        0x30fc, 0x30ff,
-        0x3105, 0x312d,
-        0x3131, 0x318e,
-        0x31a0, 0x31b7,
-        0x31f0, 0x31ff,
-        0x3400, 0x4db5,
-        0x4e00, 0x9fcb,
-        0xa000, 0xa48c,
-        0xa4d0, 0xa4fd,
-        0xa500, 0xa60c,
-        0xa610, 0xa62b,
-        0xa640, 0xa65f,
-        0xa662, 0xa66e,
-        0xa67f, 0xa697,
-        0xa6a0, 0xa6ef,
-        0xa717, 0xa71f,
-        0xa722, 0xa788,
-        0xa78b, 0xa78c,
-        0xa7fb, 0xa801,
-        0xa803, 0xa805,
-        0xa807, 0xa80a,
-        0xa80c, 0xa827,
-        0xa840, 0xa873,
-        0xa880, 0xa8c3,
-        0xa8d0, 0xa8d9,
-        0xa8f2, 0xa8f7,
-        0xa8fb, 0xa8fb,
-        0xa900, 0xa92a,
-        0xa930, 0xa952,
-        0xa960, 0xa97c,
-        0xa980, 0xa9bf,
-        0xa9cf, 0xa9d9,
-        0xaa00, 0xaa36,
-        0xaa40, 0xaa4d,
-        0xaa50, 0xaa59,
-        0xaa60, 0xaa76,
-        0xaa7a, 0xaa7a,
-        0xaa80, 0xaabe,
-        0xaac0, 0xaac0,
-        0xaac2, 0xaac2,
-        0xaadb, 0xaadd,
-        0xabc0, 0xabea,
-        0xabf0, 0xabf9,
-        0xac00, 0xd7a3,
-        0xd7b0, 0xd7c6,
-        0xd7cb, 0xd7fb,
-        0xf900, 0xfa2d,
-        0xfa30, 0xfa6d,
-        0xfa70, 0xfad9,
-        0xfb00, 0xfb06,
-        0xfb13, 0xfb17,
-        0xfb1d, 0xfb28,
-        0xfb2a, 0xfb36,
-        0xfb38, 0xfb3c,
-        0xfb3e, 0xfb3e,
-        0xfb40, 0xfb41,
-        0xfb43, 0xfb44,
-        0xfb46, 0xfbb1,
-        0xfbd3, 0xfd3d,
-        0xfd50, 0xfd8f,
-        0xfd92, 0xfdc7,
-        0xfdf0, 0xfdfb,
-        0xfe70, 0xfe74,
-        0xfe76, 0xfefc,
-        0xff10, 0xff19,
-        0xff21, 0xff3a,
-        0xff41, 0xff5a,
-        0xff66, 0xffbe,
-        0xffc2, 0xffc7,
-        0xffca, 0xffcf,
-        0xffd2, 0xffd7,
-        0xffda, 0xffdc,
-        0x10000, 0x1000b,
-        0x1000d, 0x10026,
-        0x10028, 0x1003a,
-        0x1003c, 0x1003d,
-        0x1003f, 0x1004d,
-        0x10050, 0x1005d,
-        0x10080, 0x100fa,
-        0x10140, 0x10174,
-        0x10280, 0x1029c,
-        0x102a0, 0x102d0,
-        0x10300, 0x1031e,
-        0x10330, 0x1034a,
-        0x10380, 0x1039d,
-        0x103a0, 0x103c3,
-        0x103c8, 0x103cf,
-        0x103d1, 0x103d5,
-        0x10400, 0x1049d,
-        0x104a0, 0x104a9,
-        0x10800, 0x10805,
-        0x10808, 0x10808,
-        0x1080a, 0x10835,
-        0x10837, 0x10838,
-        0x1083c, 0x1083c,
-        0x1083f, 0x10855,
-        0x10900, 0x10915,
-        0x10920, 0x10939,
-        0x10a00, 0x10a03,
-        0x10a05, 0x10a06,
-        0x10a0c, 0x10a13,
-        0x10a15, 0x10a17,
-        0x10a19, 0x10a33,
-        0x10a60, 0x10a7c,
-        0x10b00, 0x10b35,
-        0x10b40, 0x10b55,
-        0x10b60, 0x10b72,
-        0x10c00, 0x10c48,
-        0x11082, 0x110b8,
-        0x12000, 0x1236e,
-        0x12400, 0x12462,
-        0x13000, 0x1342e,
-        0x1d400, 0x1d454,
-        0x1d456, 0x1d49c,
-        0x1d49e, 0x1d49f,
-        0x1d4a2, 0x1d4a2,
-        0x1d4a5, 0x1d4a6,
-        0x1d4a9, 0x1d4ac,
-        0x1d4ae, 0x1d4b9,
-        0x1d4bb, 0x1d4bb,
-        0x1d4bd, 0x1d4c3,
-        0x1d4c5, 0x1d505,
-        0x1d507, 0x1d50a,
-        0x1d50d, 0x1d514,
-        0x1d516, 0x1d51c,
-        0x1d51e, 0x1d539,
-        0x1d53b, 0x1d53e,
-        0x1d540, 0x1d544,
-        0x1d546, 0x1d546,
-        0x1d54a, 0x1d550,
-        0x1d552, 0x1d6a5,
-        0x1d6a8, 0x1d6c0,
-        0x1d6c2, 0x1d6da,
-        0x1d6dc, 0x1d6fa,
-        0x1d6fc, 0x1d714,
-        0x1d716, 0x1d734,
-        0x1d736, 0x1d74e,
-        0x1d750, 0x1d76e,
-        0x1d770, 0x1d788,
-        0x1d78a, 0x1d7a8,
-        0x1d7aa, 0x1d7c2,
-        0x1d7c4, 0x1d7cb,
-        0x1d7ce, 0x1d7ff,
-        0x20000, 0x2a6d6,
-        0x2a700, 0x2b734,
-        0x2f800, 0x2fa1d,
-}; /* CR_Alnum */
-
-/* 'ASCII': [[:ASCII:]] */
-static const OnigCodePoint CR_ASCII[] = {
-        1,
-        0x0000, 0x007f,
-}; /* CR_ASCII */
-
-static const OnigCodePoint* const CodeRanges[] = {
-  CR_NEWLINE,
-  CR_Alpha,
-  CR_Blank,
-  CR_Cntrl,
-  CR_Digit,
-  CR_Graph,
-  CR_Lower,
-  CR_Print,
-  CR_Punct,
-  CR_Space,
-  CR_Upper,
-  CR_XDigit,
-  CR_Word,
-  CR_Alnum,
-  CR_ASCII,
-#ifdef USE_UNICODE_PROPERTIES
-#ifdef USE_UNICODE_PROPERTIES
-  CR_Any,
-  CR_Assigned,
-  CR_C,
-  CR_Cc,
-  CR_Cf,
-  CR_Cn,
-  CR_Co,
-  CR_Cs,
-  CR_L,
-  CR_Ll,
-  CR_Lm,
-  CR_Lo,
-  CR_Lt,
-  CR_Lu,
-  CR_M,
-  CR_Mc,
-  CR_Me,
-  CR_Mn,
-  CR_N,
-  CR_Nd,
-  CR_Nl,
-  CR_No,
-  CR_P,
-  CR_Pc,
-  CR_Pd,
-  CR_Pe,
-  CR_Pf,
-  CR_Pi,
-  CR_Po,
-  CR_Ps,
-  CR_S,
-  CR_Sc,
-  CR_Sk,
-  CR_Sm,
-  CR_So,
-  CR_Z,
-  CR_Zl,
-  CR_Zp,
-  CR_Zs,
-  CR_Math,
-  CR_Alphabetic,
-  CR_Lowercase,
-  CR_Uppercase,
-  CR_Cased,
-  CR_Case_Ignorable,
-  CR_Changes_When_Lowercased,
-  CR_Changes_When_Uppercased,
-  CR_Changes_When_Titlecased,
-  CR_Changes_When_Casefolded,
-  CR_Changes_When_Casemapped,
-  CR_ID_Start,
-  CR_ID_Continue,
-  CR_XID_Start,
-  CR_XID_Continue,
-  CR_Default_Ignorable_Code_Point,
-  CR_Grapheme_Extend,
-  CR_Grapheme_Base,
-  CR_Grapheme_Link,
-  CR_Common,
-  CR_Latin,
-  CR_Greek,
-  CR_Cyrillic,
-  CR_Armenian,
-  CR_Hebrew,
-  CR_Arabic,
-  CR_Syriac,
-  CR_Thaana,
-  CR_Devanagari,
-  CR_Bengali,
-  CR_Gurmukhi,
-  CR_Gujarati,
-  CR_Oriya,
-  CR_Tamil,
-  CR_Telugu,
-  CR_Kannada,
-  CR_Malayalam,
-  CR_Sinhala,
-  CR_Thai,
-  CR_Lao,
-  CR_Tibetan,
-  CR_Myanmar,
-  CR_Georgian,
-  CR_Hangul,
-  CR_Ethiopic,
-  CR_Cherokee,
-  CR_Canadian_Aboriginal,
-  CR_Ogham,
-  CR_Runic,
-  CR_Khmer,
-  CR_Mongolian,
-  CR_Hiragana,
-  CR_Katakana,
-  CR_Bopomofo,
-  CR_Han,
-  CR_Yi,
-  CR_Old_Italic,
-  CR_Gothic,
-  CR_Deseret,
-  CR_Inherited,
-  CR_Tagalog,
-  CR_Hanunoo,
-  CR_Buhid,
-  CR_Tagbanwa,
-  CR_Limbu,
-  CR_Tai_Le,
-  CR_Linear_B,
-  CR_Ugaritic,
-  CR_Shavian,
-  CR_Osmanya,
-  CR_Cypriot,
-  CR_Braille,
-  CR_Buginese,
-  CR_Coptic,
-  CR_New_Tai_Lue,
-  CR_Glagolitic,
-  CR_Tifinagh,
-  CR_Syloti_Nagri,
-  CR_Old_Persian,
-  CR_Kharoshthi,
-  CR_Balinese,
-  CR_Cuneiform,
-  CR_Phoenician,
-  CR_Phags_Pa,
-  CR_Nko,
-  CR_Sundanese,
-  CR_Lepcha,
-  CR_Ol_Chiki,
-  CR_Vai,
-  CR_Saurashtra,
-  CR_Kayah_Li,
-  CR_Rejang,
-  CR_Lycian,
-  CR_Carian,
-  CR_Lydian,
-  CR_Cham,
-  CR_Tai_Tham,
-  CR_Tai_Viet,
-  CR_Avestan,
-  CR_Egyptian_Hieroglyphs,
-  CR_Samaritan,
-  CR_Lisu,
-  CR_Bamum,
-  CR_Javanese,
-  CR_Meetei_Mayek,
-  CR_Imperial_Aramaic,
-  CR_Old_South_Arabian,
-  CR_Inscriptional_Parthian,
-  CR_Inscriptional_Pahlavi,
-  CR_Old_Turkic,
-  CR_Kaithi,
-  CR_White_Space,
-  CR_Bidi_Control,
-  CR_Join_Control,
-  CR_Dash,
-  CR_Hyphen,
-  CR_Quotation_Mark,
-  CR_Terminal_Punctuation,
-  CR_Other_Math,
-  CR_Hex_Digit,
-  CR_ASCII_Hex_Digit,
-  CR_Other_Alphabetic,
-  CR_Ideographic,
-  CR_Diacritic,
-  CR_Extender,
-  CR_Other_Lowercase,
-  CR_Other_Uppercase,
-  CR_Noncharacter_Code_Point,
-  CR_Other_Grapheme_Extend,
-  CR_IDS_Binary_Operator,
-  CR_IDS_Trinary_Operator,
-  CR_Radical,
-  CR_Unified_Ideograph,
-  CR_Other_Default_Ignorable_Code_Point,
-  CR_Deprecated,
-  CR_Soft_Dotted,
-  CR_Logical_Order_Exception,
-  CR_Other_ID_Start,
-  CR_Other_ID_Continue,
-  CR_STerm,
-  CR_Variation_Selector,
-  CR_Pattern_White_Space,
-  CR_Pattern_Syntax,
-#endif /* USE_UNICODE_PROPERTIES */
-#endif /* USE_UNICODE_PROPERTIES */
-};
-struct uniname2ctype_struct {
-  int name, ctype;
-};
-
-static const struct uniname2ctype_struct *uniname2ctype_p(const char *, unsigned int);
-
-#ifndef USE_UNICODE_PROPERTIES
-#define TOTAL_KEYWORDS 15
-#define MIN_WORD_LENGTH 4
-#define MAX_WORD_LENGTH 7
-#define MIN_HASH_VALUE 7
-#define MAX_HASH_VALUE 21
-/* maximum key range = 15, duplicates = 0 */
-#else /* USE_UNICODE_PROPERTIES */
-#define TOTAL_KEYWORDS 367
-#define MIN_WORD_LENGTH 1
-#define MAX_WORD_LENGTH 30
-#define MIN_HASH_VALUE 3
-#define MAX_HASH_VALUE 1751
-/* maximum key range = 1749, duplicates = 0 */
-#endif /* USE_UNICODE_PROPERTIES */
-
-#ifdef __GNUC__
-__inline
-#else
-#ifdef __cplusplus
-inline
-#endif
-#endif
-static unsigned int
-uniname2ctype_hash (register const char *str, register unsigned int len)
-{
-#ifndef USE_UNICODE_PROPERTIES
-  static const unsigned char asso_values[] =
-#else /* USE_UNICODE_PROPERTIES */
-  static const unsigned short asso_values[] =
-#endif /* USE_UNICODE_PROPERTIES */
-    {
-#ifndef USE_UNICODE_PROPERTIES
-      22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
-      22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
-      22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
-      22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
-      22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
-      22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
-      22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
-      22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
-      22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
-      22, 22, 22, 22, 22, 22, 22,  3, 13,  6,
-       4, 22, 22, 11, 22,  1, 22, 22, 10, 22,
-       2, 22,  1, 22, 10,  8,  4,  7, 22,  3,
-       4, 22, 22, 22, 22, 22, 22, 22
-#else /* USE_UNICODE_PROPERTIES */
-      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
-      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
-      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
-      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
-      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
-      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
-      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
-      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
-      1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
-      1752, 1752, 1752, 1752, 1752, 1752, 1752,    7,  419,    1,
-       128,   38,  100,  186,   46,   11,  226,  463,    4,  317,
-         6,    2,  265,    5,   18,  112,   30,  289,  164,  384,
-       368,  579,   10, 1752, 1752, 1752, 1752, 1752
-#endif /* USE_UNICODE_PROPERTIES */
-    };
-#ifndef USE_UNICODE_PROPERTIES
-  return len + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[0]];
-#else /* USE_UNICODE_PROPERTIES */
-  register int hval = len;
-
-  switch (hval)
-    {
-      default:
-        hval += asso_values[(unsigned char)str[15]];
-      /*FALLTHROUGH*/
-      case 15:
-      case 14:
-      case 13:
-      case 12:
-        hval += asso_values[(unsigned char)str[11]];
-      /*FALLTHROUGH*/
-      case 11:
-      case 10:
-      case 9:
-      case 8:
-      case 7:
-      case 6:
-        hval += asso_values[(unsigned char)str[5]];
-      /*FALLTHROUGH*/
-      case 5:
-      case 4:
-      case 3:
-        hval += asso_values[(unsigned char)str[2]];
-      /*FALLTHROUGH*/
-      case 2:
-        hval += asso_values[(unsigned char)str[1]];
-      /*FALLTHROUGH*/
-      case 1:
-        hval += asso_values[(unsigned char)str[0]];
-        break;
-    }
-  return hval + asso_values[(unsigned char)str[len - 1]];
-#endif /* USE_UNICODE_PROPERTIES */
-}
-
-struct uniname2ctype_pool_t
-  {
-#ifndef USE_UNICODE_PROPERTIES
-    char uniname2ctype_pool_str7[sizeof("print")];
-    char uniname2ctype_pool_str8[sizeof("punct")];
-    char uniname2ctype_pool_str9[sizeof("alpha")];
-    char uniname2ctype_pool_str10[sizeof("alnum")];
-    char uniname2ctype_pool_str11[sizeof("xdigit")];
-    char uniname2ctype_pool_str12[sizeof("newline")];
-    char uniname2ctype_pool_str13[sizeof("upper")];
-    char uniname2ctype_pool_str14[sizeof("ascii")];
-    char uniname2ctype_pool_str15[sizeof("cntrl")];
-    char uniname2ctype_pool_str16[sizeof("space")];
-    char uniname2ctype_pool_str17[sizeof("word")];
-    char uniname2ctype_pool_str18[sizeof("lower")];
-    char uniname2ctype_pool_str19[sizeof("graph")];
-    char uniname2ctype_pool_str20[sizeof("digit")];
-    char uniname2ctype_pool_str21[sizeof("blank")];
-#else /* USE_UNICODE_PROPERTIES */
-    char uniname2ctype_pool_str3[sizeof("c")];
-    char uniname2ctype_pool_str5[sizeof("cc")];
-    char uniname2ctype_pool_str7[sizeof("co")];
-    char uniname2ctype_pool_str9[sizeof("l")];
-    char uniname2ctype_pool_str10[sizeof("lo")];
-    char uniname2ctype_pool_str12[sizeof("no")];
-    char uniname2ctype_pool_str13[sizeof("n")];
-    char uniname2ctype_pool_str14[sizeof("ll")];
-    char uniname2ctype_pool_str15[sizeof("cn")];
-    char uniname2ctype_pool_str16[sizeof("nl")];
-    char uniname2ctype_pool_str18[sizeof("lao")];
-    char uniname2ctype_pool_str19[sizeof("laoo")];
-    char uniname2ctype_pool_str20[sizeof("zl")];
-    char uniname2ctype_pool_str21[sizeof("z")];
-    char uniname2ctype_pool_str22[sizeof("control")];
-    char uniname2ctype_pool_str24[sizeof("qaac")];
-    char uniname2ctype_pool_str25[sizeof("ci")];
-    char uniname2ctype_pool_str28[sizeof("lana")];
-    char uniname2ctype_pool_str33[sizeof("oalpha")];
-    char uniname2ctype_pool_str34[sizeof("qaai")];
-    char uniname2ctype_pool_str40[sizeof("arabic")];
-    char uniname2ctype_pool_str41[sizeof("cari")];
-    char uniname2ctype_pool_str43[sizeof("oriya")];
-    char uniname2ctype_pool_str44[sizeof("carian")];
-    char uniname2ctype_pool_str46[sizeof("cntrl")];
-    char uniname2ctype_pool_str49[sizeof("connectorpunctuation")];
-    char uniname2ctype_pool_str50[sizeof("olower")];
-    char uniname2ctype_pool_str51[sizeof("latn")];
-    char uniname2ctype_pool_str52[sizeof("latin")];
-    char uniname2ctype_pool_str56[sizeof("ital")];
-    char uniname2ctype_pool_str65[sizeof("hano")];
-    char uniname2ctype_pool_str66[sizeof("lt")];
-    char uniname2ctype_pool_str68[sizeof("han")];
-    char uniname2ctype_pool_str70[sizeof("hanunoo")];
-    char uniname2ctype_pool_str71[sizeof("canadianaboriginal")];
-    char uniname2ctype_pool_str73[sizeof("hangul")];
-    char uniname2ctype_pool_str74[sizeof("hani")];
-    char uniname2ctype_pool_str76[sizeof("nchar")];
-    char uniname2ctype_pool_str77[sizeof("zinh")];
-    char uniname2ctype_pool_str83[sizeof("tale")];
-    char uniname2ctype_pool_str85[sizeof("loe")];
-    char uniname2ctype_pool_str86[sizeof("hira")];
-    char uniname2ctype_pool_str91[sizeof("taile")];
-    char uniname2ctype_pool_str92[sizeof("lineseparator")];
-    char uniname2ctype_pool_str94[sizeof("thaa")];
-    char uniname2ctype_pool_str97[sizeof("hiragana")];
-    char uniname2ctype_pool_str98[sizeof("thai")];
-    char uniname2ctype_pool_str100[sizeof("initialpunctuation")];
-    char uniname2ctype_pool_str101[sizeof("other")];
-    char uniname2ctype_pool_str103[sizeof("thaana")];
-    char uniname2ctype_pool_str107[sizeof("cher")];
-    char uniname2ctype_pool_str111[sizeof("otherletter")];
-    char uniname2ctype_pool_str113[sizeof("othernumber")];
-    char uniname2ctype_pool_str114[sizeof("letter")];
-    char uniname2ctype_pool_str116[sizeof("sc")];
-    char uniname2ctype_pool_str118[sizeof("so")];
-    char uniname2ctype_pool_str123[sizeof("taiviet")];
-    char uniname2ctype_pool_str128[sizeof("noncharactercodepoint")];
-    char uniname2ctype_pool_str129[sizeof("ethi")];
-    char uniname2ctype_pool_str130[sizeof("cans")];
-    char uniname2ctype_pool_str135[sizeof("titlecaseletter")];
-    char uniname2ctype_pool_str136[sizeof("ascii")];
-    char uniname2ctype_pool_str138[sizeof("letternumber")];
-    char uniname2ctype_pool_str139[sizeof("otheralphabetic")];
-    char uniname2ctype_pool_str141[sizeof("otherlowercase")];
-    char uniname2ctype_pool_str144[sizeof("idc")];
-    char uniname2ctype_pool_str146[sizeof("oidc")];
-    char uniname2ctype_pool_str147[sizeof("sinhala")];
-    char uniname2ctype_pool_str148[sizeof("terminalpunctuation")];
-    char uniname2ctype_pool_str151[sizeof("olditalic")];
-    char uniname2ctype_pool_str152[sizeof("di")];
-    char uniname2ctype_pool_str153[sizeof("otheridcontinue")];
-    char uniname2ctype_pool_str155[sizeof("odi")];
-    char uniname2ctype_pool_str156[sizeof("dia")];
-    char uniname2ctype_pool_str161[sizeof("otheridstart")];
-    char uniname2ctype_pool_str162[sizeof("oldturkic")];
-    char uniname2ctype_pool_str167[sizeof("diacritic")];
-    char uniname2ctype_pool_str168[sizeof("oldpersian")];
-    char uniname2ctype_pool_str171[sizeof("radical")];
-    char uniname2ctype_pool_str179[sizeof("sinh")];
-    char uniname2ctype_pool_str183[sizeof("ideo")];
-    char uniname2ctype_pool_str185[sizeof("shavian")];
-    char uniname2ctype_pool_str186[sizeof("format")];
-    char uniname2ctype_pool_str192[sizeof("inscriptionalparthian")];
-    char uniname2ctype_pool_str196[sizeof("vai")];
-    char uniname2ctype_pool_str197[sizeof("vaii")];
-    char uniname2ctype_pool_str202[sizeof("tifinagh")];
-    char uniname2ctype_pool_str203[sizeof("cf")];
-    char uniname2ctype_pool_str205[sizeof("othersymbol")];
-    char uniname2ctype_pool_str207[sizeof("ideographic")];
-    char uniname2ctype_pool_str211[sizeof("inherited")];
-    char uniname2ctype_pool_str212[sizeof("glagolitic")];
-    char uniname2ctype_pool_str218[sizeof("idcontinue")];
-    char uniname2ctype_pool_str220[sizeof("asciihexdigit")];
-    char uniname2ctype_pool_str224[sizeof("inscriptionalpahlavi")];
-    char uniname2ctype_pool_str225[sizeof("s")];
-    char uniname2ctype_pool_str226[sizeof("gothic")];
-    char uniname2ctype_pool_str227[sizeof("cs")];
-    char uniname2ctype_pool_str229[sizeof("avestan")];
-    char uniname2ctype_pool_str235[sizeof("tavt")];
-    char uniname2ctype_pool_str236[sizeof("zs")];
-    char uniname2ctype_pool_str243[sizeof("decimalnumber")];
-    char uniname2ctype_pool_str244[sizeof("tagbanwa")];
-    char uniname2ctype_pool_str245[sizeof("joinc")];
-    char uniname2ctype_pool_str248[sizeof("geor")];
-    char uniname2ctype_pool_str249[sizeof("hang")];
-    char uniname2ctype_pool_str251[sizeof("georgian")];
-    char uniname2ctype_pool_str253[sizeof("cased")];
-    char uniname2ctype_pool_str256[sizeof("joincontrol")];
-    char uniname2ctype_pool_str257[sizeof("oids")];
-    char uniname2ctype_pool_str260[sizeof("variationselector")];
-    char uniname2ctype_pool_str262[sizeof("graph")];
-    char uniname2ctype_pool_str263[sizeof("changeswhenlowercased")];
-    char uniname2ctype_pool_str264[sizeof("nd")];
-    char uniname2ctype_pool_str268[sizeof("goth")];
-    char uniname2ctype_pool_str269[sizeof("pc")];
-    char uniname2ctype_pool_str271[sizeof("po")];
-    char uniname2ctype_pool_str272[sizeof("ogrext")];
-    char uniname2ctype_pool_str276[sizeof("coptic")];
-    char uniname2ctype_pool_str277[sizeof("grext")];
-    char uniname2ctype_pool_str282[sizeof("logicalorderexception")];
-    char uniname2ctype_pool_str285[sizeof("idst")];
-    char uniname2ctype_pool_str288[sizeof("alpha")];
-    char uniname2ctype_pool_str289[sizeof("pi")];
-    char uniname2ctype_pool_str292[sizeof("dsrt")];
-    char uniname2ctype_pool_str297[sizeof("dash")];
-    char uniname2ctype_pool_str298[sizeof("otherdefaultignorablecodepoint")];
-    char uniname2ctype_pool_str302[sizeof("copt")];
-    char uniname2ctype_pool_str306[sizeof("idstart")];
-    char uniname2ctype_pool_str307[sizeof("closepunctuation")];
-    char uniname2ctype_pool_str309[sizeof("changeswhentitlecased")];
-    char uniname2ctype_pool_str312[sizeof("lepc")];
-    char uniname2ctype_pool_str317[sizeof("avst")];
-    char uniname2ctype_pool_str318[sizeof("cprt")];
-    char uniname2ctype_pool_str319[sizeof("runic")];
-    char uniname2ctype_pool_str320[sizeof("patsyn")];
-    char uniname2ctype_pool_str321[sizeof("mc")];
-    char uniname2ctype_pool_str326[sizeof("tfng")];
-    char uniname2ctype_pool_str327[sizeof("lepcha")];
-    char uniname2ctype_pool_str328[sizeof("prti")];
-    char uniname2ctype_pool_str329[sizeof("print")];
-    char uniname2ctype_pool_str330[sizeof("phli")];
-    char uniname2ctype_pool_str331[sizeof("mn")];
-    char uniname2ctype_pool_str332[sizeof("idsbinaryoperator")];
-    char uniname2ctype_pool_str334[sizeof("talu")];
-    char uniname2ctype_pool_str335[sizeof("runr")];
-    char uniname2ctype_pool_str337[sizeof("graphemebase")];
-    char uniname2ctype_pool_str338[sizeof("common")];
-    char uniname2ctype_pool_str339[sizeof("alnum")];
-    char uniname2ctype_pool_str340[sizeof("phoenician")];
-    char uniname2ctype_pool_str341[sizeof("deva")];
-    char uniname2ctype_pool_str342[sizeof("changeswhencasefolded")];
-    char uniname2ctype_pool_str343[sizeof("pe")];
-    char uniname2ctype_pool_str344[sizeof("mongolian")];
-    char uniname2ctype_pool_str352[sizeof("armn")];
-    char uniname2ctype_pool_str353[sizeof("deseret")];
-    char uniname2ctype_pool_str354[sizeof("softdotted")];
-    char uniname2ctype_pool_str357[sizeof("armi")];
-    char uniname2ctype_pool_str358[sizeof("devanagari")];
-    char uniname2ctype_pool_str360[sizeof("digit")];
-    char uniname2ctype_pool_str361[sizeof("caseignorable")];
-    char uniname2ctype_pool_str362[sizeof("taml")];
-    char uniname2ctype_pool_str363[sizeof("tamil")];
-    char uniname2ctype_pool_str365[sizeof("telu")];
-    char uniname2ctype_pool_str366[sizeof("ids")];
-    char uniname2ctype_pool_str367[sizeof("armenian")];
-    char uniname2ctype_pool_str370[sizeof("sd")];
-    char uniname2ctype_pool_str372[sizeof("privateuse")];
-    char uniname2ctype_pool_str373[sizeof("assigned")];
-    char uniname2ctype_pool_str375[sizeof("cham")];
-    char uniname2ctype_pool_str377[sizeof("omath")];
-    char uniname2ctype_pool_str378[sizeof("otherpunctuation")];
-    char uniname2ctype_pool_str379[sizeof("taitham")];
-    char uniname2ctype_pool_str381[sizeof("defaultignorablecodepoint")];
-    char uniname2ctype_pool_str387[sizeof("glag")];
-    char uniname2ctype_pool_str388[sizeof("ethiopic")];
-    char uniname2ctype_pool_str390[sizeof("vs")];
-    char uniname2ctype_pool_str395[sizeof("me")];
-    char uniname2ctype_pool_str396[sizeof("cwl")];
-    char uniname2ctype_pool_str400[sizeof("mtei")];
-    char uniname2ctype_pool_str404[sizeof("math")];
-    char uniname2ctype_pool_str407[sizeof("term")];
-    char uniname2ctype_pool_str408[sizeof("java")];
-    char uniname2ctype_pool_str410[sizeof("tglg")];
-    char uniname2ctype_pool_str413[sizeof("lower")];
-    char uniname2ctype_pool_str414[sizeof("patternwhitespace")];
-    char uniname2ctype_pool_str417[sizeof("finalpunctuation")];
-    char uniname2ctype_pool_str418[sizeof("tagalog")];
-    char uniname2ctype_pool_str419[sizeof("patws")];
-    char uniname2ctype_pool_str420[sizeof("lisu")];
-    char uniname2ctype_pool_str426[sizeof("otheruppercase")];
-    char uniname2ctype_pool_str427[sizeof("space")];
-    char uniname2ctype_pool_str429[sizeof("graphemeextend")];
-    char uniname2ctype_pool_str430[sizeof("saur")];
-    char uniname2ctype_pool_str435[sizeof("uideo")];
-    char uniname2ctype_pool_str438[sizeof("lowercase")];
-    char uniname2ctype_pool_str440[sizeof("rjng")];
-    char uniname2ctype_pool_str442[sizeof("osma")];
-    char uniname2ctype_pool_str444[sizeof("linb")];
-    char uniname2ctype_pool_str445[sizeof("bali")];
-    char uniname2ctype_pool_str448[sizeof("cwt")];
-    char uniname2ctype_pool_str449[sizeof("separator")];
-    char uniname2ctype_pool_str450[sizeof("othermath")];
-    char uniname2ctype_pool_str451[sizeof("unassigned")];
-    char uniname2ctype_pool_str454[sizeof("lowercaseletter")];
-    char uniname2ctype_pool_str455[sizeof("arab")];
-    char uniname2ctype_pool_str458[sizeof("samr")];
-    char uniname2ctype_pool_str459[sizeof("brai")];
-    char uniname2ctype_pool_str460[sizeof("sundanese")];
-    char uniname2ctype_pool_str462[sizeof("samaritan")];
-    char uniname2ctype_pool_str463[sizeof("ahex")];
-    char uniname2ctype_pool_str465[sizeof("linearb")];
-    char uniname2ctype_pool_str467[sizeof("pf")];
-    char uniname2ctype_pool_str469[sizeof("ext")];
-    char uniname2ctype_pool_str474[sizeof("olck")];
-    char uniname2ctype_pool_str476[sizeof("nko")];
-    char uniname2ctype_pool_str477[sizeof("nkoo")];
-    char uniname2ctype_pool_str479[sizeof("newline")];
-    char uniname2ctype_pool_str480[sizeof("tibetan")];
-    char uniname2ctype_pool_str481[sizeof("javanese")];
-    char uniname2ctype_pool_str485[sizeof("bengali")];
-    char uniname2ctype_pool_str486[sizeof("newtailue")];
-    char uniname2ctype_pool_str487[sizeof("kana")];
-    char uniname2ctype_pool_str488[sizeof("olchiki")];
-    char uniname2ctype_pool_str489[sizeof("kali")];
-    char uniname2ctype_pool_str490[sizeof("cwcf")];
-    char uniname2ctype_pool_str491[sizeof("ps")];
-    char uniname2ctype_pool_str493[sizeof("braille")];
-    char uniname2ctype_pool_str494[sizeof("tibt")];
-    char uniname2ctype_pool_str502[sizeof("sterm")];
-    char uniname2ctype_pool_str504[sizeof("ugar")];
-    char uniname2ctype_pool_str505[sizeof("nonspacingmark")];
-    char uniname2ctype_pool_str508[sizeof("phag")];
-    char uniname2ctype_pool_str509[sizeof("kaithi")];
-    char uniname2ctype_pool_str512[sizeof("xidc")];
-    char uniname2ctype_pool_str514[sizeof("balinese")];
-    char uniname2ctype_pool_str515[sizeof("mong")];
-    char uniname2ctype_pool_str516[sizeof("ogam")];
-    char uniname2ctype_pool_str520[sizeof("modifierletter")];
-    char uniname2ctype_pool_str521[sizeof("ugaritic")];
-    char uniname2ctype_pool_str522[sizeof("katakana")];
-    char uniname2ctype_pool_str523[sizeof("pd")];
-    char uniname2ctype_pool_str525[sizeof("hebr")];
-    char uniname2ctype_pool_str531[sizeof("p")];
-    char uniname2ctype_pool_str533[sizeof("orkh")];
-    char uniname2ctype_pool_str536[sizeof("word")];
-    char uniname2ctype_pool_str537[sizeof("saurashtra")];
-    char uniname2ctype_pool_str538[sizeof("khar")];
-    char uniname2ctype_pool_str539[sizeof("sund")];
-    char uniname2ctype_pool_str542[sizeof("zp")];
-    char uniname2ctype_pool_str548[sizeof("changeswhenuppercased")];
-    char uniname2ctype_pool_str552[sizeof("xidstart")];
-    char uniname2ctype_pool_str553[sizeof("shaw")];
-    char uniname2ctype_pool_str554[sizeof("kthi")];
-    char uniname2ctype_pool_str556[sizeof("ogham")];
-    char uniname2ctype_pool_str558[sizeof("spaceseparator")];
-    char uniname2ctype_pool_str559[sizeof("changeswhencasemapped")];
-    char uniname2ctype_pool_str560[sizeof("sarb")];
-    char uniname2ctype_pool_str562[sizeof("xidcontinue")];
-    char uniname2ctype_pool_str564[sizeof("bidic")];
-    char uniname2ctype_pool_str570[sizeof("deprecated")];
-    char uniname2ctype_pool_str573[sizeof("xdigit")];
-    char uniname2ctype_pool_str575[sizeof("bidicontrol")];
-    char uniname2ctype_pool_str584[sizeof("lu")];
-    char uniname2ctype_pool_str587[sizeof("dashpunctuation")];
-    char uniname2ctype_pool_str590[sizeof("extender")];
-    char uniname2ctype_pool_str593[sizeof("idstrinaryoperator")];
-    char uniname2ctype_pool_str594[sizeof("cherokee")];
-    char uniname2ctype_pool_str595[sizeof("punct")];
-    char uniname2ctype_pool_str597[sizeof("phagspa")];
-    char uniname2ctype_pool_str598[sizeof("oupper")];
-    char uniname2ctype_pool_str599[sizeof("lyci")];
-    char uniname2ctype_pool_str601[sizeof("whitespace")];
-    char uniname2ctype_pool_str602[sizeof("lycian")];
-    char uniname2ctype_pool_str603[sizeof("yi")];
-    char uniname2ctype_pool_str606[sizeof("cyrl")];
-    char uniname2ctype_pool_str608[sizeof("knda")];
-    char uniname2ctype_pool_str610[sizeof("orya")];
-    char uniname2ctype_pool_str611[sizeof("cyrillic")];
-    char uniname2ctype_pool_str616[sizeof("yiii")];
-    char uniname2ctype_pool_str618[sizeof("kannada")];
-    char uniname2ctype_pool_str623[sizeof("xids")];
-    char uniname2ctype_pool_str626[sizeof("limbu")];
-    char uniname2ctype_pool_str635[sizeof("m")];
-    char uniname2ctype_pool_str638[sizeof("unifiedideograph")];
-    char uniname2ctype_pool_str639[sizeof("paragraphseparator")];
-    char uniname2ctype_pool_str640[sizeof("lm")];
-    char uniname2ctype_pool_str645[sizeof("openpunctuation")];
-    char uniname2ctype_pool_str646[sizeof("tagb")];
-    char uniname2ctype_pool_str649[sizeof("kharoshthi")];
-    char uniname2ctype_pool_str651[sizeof("enclosingmark")];
-    char uniname2ctype_pool_str652[sizeof("surrogate")];
-    char uniname2ctype_pool_str653[sizeof("beng")];
-    char uniname2ctype_pool_str654[sizeof("number")];
-    char uniname2ctype_pool_str656[sizeof("telugu")];
-    char uniname2ctype_pool_str660[sizeof("rejang")];
-    char uniname2ctype_pool_str661[sizeof("malayalam")];
-    char uniname2ctype_pool_str674[sizeof("idsb")];
-    char uniname2ctype_pool_str676[sizeof("hexdigit")];
-    char uniname2ctype_pool_str677[sizeof("xpeo")];
-    char uniname2ctype_pool_str689[sizeof("phnx")];
-    char uniname2ctype_pool_str692[sizeof("bopo")];
-    char uniname2ctype_pool_str698[sizeof("bopomofo")];
-    char uniname2ctype_pool_str699[sizeof("dep")];
-    char uniname2ctype_pool_str701[sizeof("sylo")];
-    char uniname2ctype_pool_str705[sizeof("grbase")];
-    char uniname2ctype_pool_str706[sizeof("alphabetic")];
-    char uniname2ctype_pool_str707[sizeof("cwcm")];
-    char uniname2ctype_pool_str708[sizeof("patternsyntax")];
-    char uniname2ctype_pool_str709[sizeof("grek")];
-    char uniname2ctype_pool_str710[sizeof("greek")];
-    char uniname2ctype_pool_str714[sizeof("syrc")];
-    char uniname2ctype_pool_str717[sizeof("syriac")];
-    char uniname2ctype_pool_str722[sizeof("cuneiform")];
-    char uniname2ctype_pool_str723[sizeof("gujr")];
-    char uniname2ctype_pool_str726[sizeof("lydi")];
-    char uniname2ctype_pool_str727[sizeof("gujarati")];
-    char uniname2ctype_pool_str728[sizeof("sylotinagri")];
-    char uniname2ctype_pool_str729[sizeof("lydian")];
-    char uniname2ctype_pool_str748[sizeof("sm")];
-    char uniname2ctype_pool_str751[sizeof("currencysymbol")];
-    char uniname2ctype_pool_str755[sizeof("limb")];
-    char uniname2ctype_pool_str758[sizeof("othergraphemeextend")];
-    char uniname2ctype_pool_str786[sizeof("guru")];
-    char uniname2ctype_pool_str797[sizeof("qmark")];
-    char uniname2ctype_pool_str809[sizeof("mark")];
-    char uniname2ctype_pool_str820[sizeof("quotationmark")];
-    char uniname2ctype_pool_str823[sizeof("hex")];
-    char uniname2ctype_pool_str842[sizeof("upper")];
-    char uniname2ctype_pool_str843[sizeof("wspace")];
-    char uniname2ctype_pool_str848[sizeof("khmr")];
-    char uniname2ctype_pool_str849[sizeof("khmer")];
-    char uniname2ctype_pool_str863[sizeof("oldsoutharabian")];
-    char uniname2ctype_pool_str864[sizeof("spacingmark")];
-    char uniname2ctype_pool_str866[sizeof("punctuation")];
-    char uniname2ctype_pool_str867[sizeof("uppercase")];
-    char uniname2ctype_pool_str878[sizeof("meeteimayek")];
-    char uniname2ctype_pool_str883[sizeof("uppercaseletter")];
-    char uniname2ctype_pool_str884[sizeof("cypriot")];
-    char uniname2ctype_pool_str886[sizeof("buhd")];
-    char uniname2ctype_pool_str887[sizeof("buhid")];
-    char uniname2ctype_pool_str895[sizeof("modifiersymbol")];
-    char uniname2ctype_pool_str898[sizeof("blank")];
-    char uniname2ctype_pool_str908[sizeof("hyphen")];
-    char uniname2ctype_pool_str909[sizeof("bugi")];
-    char uniname2ctype_pool_str935[sizeof("myanmar")];
-    char uniname2ctype_pool_str937[sizeof("imperialaramaic")];
-    char uniname2ctype_pool_str947[sizeof("mathsymbol")];
-    char uniname2ctype_pool_str966[sizeof("cwu")];
-    char uniname2ctype_pool_str975[sizeof("gurmukhi")];
-    char uniname2ctype_pool_str978[sizeof("buginese")];
-    char uniname2ctype_pool_str1022[sizeof("symbol")];
-    char uniname2ctype_pool_str1024[sizeof("osmanya")];
-    char uniname2ctype_pool_str1036[sizeof("bamu")];
-    char uniname2ctype_pool_str1040[sizeof("sk")];
-    char uniname2ctype_pool_str1065[sizeof("bamum")];
-    char uniname2ctype_pool_str1071[sizeof("kayahli")];
-    char uniname2ctype_pool_str1072[sizeof("egyp")];
-    char uniname2ctype_pool_str1140[sizeof("grlink")];
-    char uniname2ctype_pool_str1141[sizeof("xsux")];
-    char uniname2ctype_pool_str1174[sizeof("any")];
-    char uniname2ctype_pool_str1187[sizeof("graphemelink")];
-    char uniname2ctype_pool_str1221[sizeof("mlym")];
-    char uniname2ctype_pool_str1235[sizeof("mymr")];
-    char uniname2ctype_pool_str1277[sizeof("hebrew")];
-    char uniname2ctype_pool_str1542[sizeof("egyptianhieroglyphs")];
-    char uniname2ctype_pool_str1751[sizeof("zyyy")];
-#endif /* USE_UNICODE_PROPERTIES */
-  };
-static const struct uniname2ctype_pool_t uniname2ctype_pool_contents =
-  {
-#ifndef USE_UNICODE_PROPERTIES
-    "print",
-    "punct",
-#else /* USE_UNICODE_PROPERTIES */
-    "c",
-    "cc",
-    "co",
-    "l",
-    "lo",
-    "no",
-    "n",
-    "ll",
-    "cn",
-    "nl",
-    "lao",
-    "laoo",
-    "zl",
-    "z",
-    "control",
-    "qaac",
-    "ci",
-    "lana",
-    "oalpha",
-    "qaai",
-    "arabic",
-    "cari",
-    "oriya",
-    "carian",
-    "cntrl",
-    "connectorpunctuation",
-    "olower",
-    "latn",
-    "latin",
-    "ital",
-    "hano",
-    "lt",
-    "han",
-    "hanunoo",
-    "canadianaboriginal",
-    "hangul",
-    "hani",
-    "nchar",
-    "zinh",
-    "tale",
-    "loe",
-    "hira",
-    "taile",
-    "lineseparator",
-    "thaa",
-    "hiragana",
-    "thai",
-    "initialpunctuation",
-    "other",
-    "thaana",
-    "cher",
-    "otherletter",
-    "othernumber",
-    "letter",
-    "sc",
-    "so",
-    "taiviet",
-    "noncharactercodepoint",
-    "ethi",
-    "cans",
-    "titlecaseletter",
-    "ascii",
-    "letternumber",
-    "otheralphabetic",
-    "otherlowercase",
-    "idc",
-    "oidc",
-    "sinhala",
-    "terminalpunctuation",
-    "olditalic",
-    "di",
-    "otheridcontinue",
-    "odi",
-    "dia",
-    "otheridstart",
-    "oldturkic",
-    "diacritic",
-    "oldpersian",
-    "radical",
-    "sinh",
-    "ideo",
-    "shavian",
-    "format",
-    "inscriptionalparthian",
-    "vai",
-    "vaii",
-    "tifinagh",
-    "cf",
-    "othersymbol",
-    "ideographic",
-    "inherited",
-    "glagolitic",
-    "idcontinue",
-    "asciihexdigit",
-    "inscriptionalpahlavi",
-    "s",
-    "gothic",
-    "cs",
-    "avestan",
-    "tavt",
-    "zs",
-    "decimalnumber",
-    "tagbanwa",
-    "joinc",
-    "geor",
-    "hang",
-    "georgian",
-    "cased",
-    "joincontrol",
-    "oids",
-    "variationselector",
-    "graph",
-    "changeswhenlowercased",
-    "nd",
-    "goth",
-    "pc",
-    "po",
-    "ogrext",
-    "coptic",
-    "grext",
-    "logicalorderexception",
-    "idst",
-#endif /* USE_UNICODE_PROPERTIES */
-    "alpha",
-#ifdef USE_UNICODE_PROPERTIES
-    "pi",
-    "dsrt",
-    "dash",
-    "otherdefaultignorablecodepoint",
-    "copt",
-    "idstart",
-    "closepunctuation",
-    "changeswhentitlecased",
-    "lepc",
-    "avst",
-    "cprt",
-    "runic",
-    "patsyn",
-    "mc",
-    "tfng",
-    "lepcha",
-    "prti",
-    "print",
-    "phli",
-    "mn",
-    "idsbinaryoperator",
-    "talu",
-    "runr",
-    "graphemebase",
-    "common",
-#endif /* USE_UNICODE_PROPERTIES */
-    "alnum",
-#ifndef USE_UNICODE_PROPERTIES
-    "xdigit",
-    "newline",
-    "upper",
-    "ascii",
-    "cntrl",
-#else /* USE_UNICODE_PROPERTIES */
-    "phoenician",
-    "deva",
-    "changeswhencasefolded",
-    "pe",
-    "mongolian",
-    "armn",
-    "deseret",
-    "softdotted",
-    "armi",
-    "devanagari",
-    "digit",
-    "caseignorable",
-    "taml",
-    "tamil",
-    "telu",
-    "ids",
-    "armenian",
-    "sd",
-    "privateuse",
-    "assigned",
-    "cham",
-    "omath",
-    "otherpunctuation",
-    "taitham",
-    "defaultignorablecodepoint",
-    "glag",
-    "ethiopic",
-    "vs",
-    "me",
-    "cwl",
-    "mtei",
-    "math",
-    "term",
-    "java",
-    "tglg",
-    "lower",
-    "patternwhitespace",
-    "finalpunctuation",
-    "tagalog",
-    "patws",
-    "lisu",
-    "otheruppercase",
-#endif /* USE_UNICODE_PROPERTIES */
-    "space",
-#ifdef USE_UNICODE_PROPERTIES
-    "graphemeextend",
-    "saur",
-    "uideo",
-    "lowercase",
-    "rjng",
-    "osma",
-    "linb",
-    "bali",
-    "cwt",
-    "separator",
-    "othermath",
-    "unassigned",
-    "lowercaseletter",
-    "arab",
-    "samr",
-    "brai",
-    "sundanese",
-    "samaritan",
-    "ahex",
-    "linearb",
-    "pf",
-    "ext",
-    "olck",
-    "nko",
-    "nkoo",
-    "newline",
-    "tibetan",
-    "javanese",
-    "bengali",
-    "newtailue",
-    "kana",
-    "olchiki",
-    "kali",
-    "cwcf",
-    "ps",
-    "braille",
-    "tibt",
-    "sterm",
-    "ugar",
-    "nonspacingmark",
-    "phag",
-    "kaithi",
-    "xidc",
-    "balinese",
-    "mong",
-    "ogam",
-    "modifierletter",
-    "ugaritic",
-    "katakana",
-    "pd",
-    "hebr",
-    "p",
-    "orkh",
-#endif /* USE_UNICODE_PROPERTIES */
-    "word",
-#ifndef USE_UNICODE_PROPERTIES
-    "lower",
-    "graph",
-    "digit",
-    "blank"
-#else /* USE_UNICODE_PROPERTIES */
-    "saurashtra",
-    "khar",
-    "sund",
-    "zp",
-    "changeswhenuppercased",
-    "xidstart",
-    "shaw",
-    "kthi",
-    "ogham",
-    "spaceseparator",
-    "changeswhencasemapped",
-    "sarb",
-    "xidcontinue",
-    "bidic",
-    "deprecated",
-    "xdigit",
-    "bidicontrol",
-    "lu",
-    "dashpunctuation",
-    "extender",
-    "idstrinaryoperator",
-    "cherokee",
-    "punct",
-    "phagspa",
-    "oupper",
-    "lyci",
-    "whitespace",
-    "lycian",
-    "yi",
-    "cyrl",
-    "knda",
-    "orya",
-    "cyrillic",
-    "yiii",
-    "kannada",
-    "xids",
-    "limbu",
-    "m",
-    "unifiedideograph",
-    "paragraphseparator",
-    "lm",
-    "openpunctuation",
-    "tagb",
-    "kharoshthi",
-    "enclosingmark",
-    "surrogate",
-    "beng",
-    "number",
-    "telugu",
-    "rejang",
-    "malayalam",
-    "idsb",
-    "hexdigit",
-    "xpeo",
-    "phnx",
-    "bopo",
-    "bopomofo",
-    "dep",
-    "sylo",
-    "grbase",
-    "alphabetic",
-    "cwcm",
-    "patternsyntax",
-    "grek",
-    "greek",
-    "syrc",
-    "syriac",
-    "cuneiform",
-    "gujr",
-    "lydi",
-    "gujarati",
-    "sylotinagri",
-    "lydian",
-    "sm",
-    "currencysymbol",
-    "limb",
-    "othergraphemeextend",
-    "guru",
-    "qmark",
-    "mark",
-    "quotationmark",
-    "hex",
-    "upper",
-    "wspace",
-    "khmr",
-    "khmer",
-    "oldsoutharabian",
-    "spacingmark",
-    "punctuation",
-    "uppercase",
-    "meeteimayek",
-    "uppercaseletter",
-    "cypriot",
-    "buhd",
-    "buhid",
-    "modifiersymbol",
-    "blank",
-    "hyphen",
-    "bugi",
-    "myanmar",
-    "imperialaramaic",
-    "mathsymbol",
-    "cwu",
-    "gurmukhi",
-    "buginese",
-    "symbol",
-    "osmanya",
-    "bamu",
-    "sk",
-    "bamum",
-    "kayahli",
-    "egyp",
-    "grlink",
-    "xsux",
-    "any",
-    "graphemelink",
-    "mlym",
-    "mymr",
-    "hebrew",
-    "egyptianhieroglyphs",
-    "zyyy"
-#endif /* USE_UNICODE_PROPERTIES */
-  };
-#define uniname2ctype_pool ((const char *) &uniname2ctype_pool_contents)
-#ifdef __GNUC__
-__inline
-#ifdef __GNUC_STDC_INLINE__
-__attribute__ ((__gnu_inline__))
-#endif
-#endif
-const struct uniname2ctype_struct *
-uniname2ctype_p (register const char *str, register unsigned int len)
-{
-  static const struct uniname2ctype_struct wordlist[] =
-    {
-#ifdef USE_UNICODE_PROPERTIES
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str3,                                        17},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str5,                                       18},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                                       21},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                                        23},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                                       26},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                                       36},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                                        33},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                                       24},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                                       20},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,                                       35},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                                      93},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                                     93},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                                       51},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                                        50},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str22,                                  18},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str24,                                    127},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str25,                                       59},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str28,                                    150},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str33,                                  175},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str34,                                    113},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str40,                                   79},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str41,                                    147},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str43,                                    86},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str44,                                  147},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str46,                                     3},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str49,                     38},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str50,                                  179},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str51,                                     74},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str52,                                    74},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str56,                                    110},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str65,                                    115},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str66,                                       27},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str68,                                     108},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str70,                                 115},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str71,                      100},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str73,                                   97},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str74,                                    108},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str76,                                   181},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str77,                                    113},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str83,                                    119},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str85,                                     190},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str86,                                    105},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str91,                                   119},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str92,                            51},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str94,                                     81},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str97,                                105},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str98,                                     92},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str100,                       42},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str101,                                    17},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str103,                                   81},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str107,                                     99},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str111,                              26},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str113,                              36},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str114,                                   23},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str116,                                       46},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str118,                                       49},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str123,                                 151},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str128,                   181},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str129,                                     98},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str130,                                    100},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str135,                          27},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str136,                                    14},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str138,                             35},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str139,                         175},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str141,                          179},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str144,                                      66},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str146,                                    192},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str147,                                  91},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str148,                     171},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str151,                               110},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str152,                                       69},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str153,                         192},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str155,                                     187},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str156,                                     177},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str161,                            191},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str162,                               163},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str167,                               177},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str168,                              132},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str171,                                 185},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str179,                                     91},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str183,                                    176},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str185,                                 122},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str186,                                   19},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str192,                   161},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str196,                                     142},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str197,                                    142},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str202,                                130},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str203,                                       19},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str205,                              49},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str207,                             176},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str211,                               113},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str212,                              129},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str218,                               66},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str220,                           174},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str224,                    162},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str225,                                        45},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str226,                                  111},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str227,                                       22},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str229,                                 152},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str235,                                    151},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str236,                                       53},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str243,                            34},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str244,                                117},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str245,                                   167},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str248,                                     96},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str249,                                     97},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str251,                                 96},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str253,                                    58},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str256,                             167},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str257,                                    191},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str260,                       194},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str262,                                     5},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str263,                    60},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str264,                                       34},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str268,                                    111},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str269,                                       38},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str271,                                       43},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str272,                                  182},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str276,                                  127},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str277,                                    70},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str282,                   190},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str285,                                    184},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str288,                                     1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str289,                                       42},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str292,                                    112},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str297,                                    168},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str298,          187},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str302,                                    127},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str306,                                  65},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str307,                         40},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str309,                    62},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str312,                                    140},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str317,                                    152},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str318,                                    124},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str319,                                   102},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str320,                                  196},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str321,                                       30},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str326,                                    130},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str327,                                  140},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str328,                                    161},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str329,                                     7},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str330,                                    162},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str331,                                       32},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str332,                       183},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str334,                                    128},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str335,                                    102},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str337,                             71},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str338,                                   73},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str339,                                    13},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str340,                              136},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str341,                                     82},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str342,                    63},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str343,                                       40},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str344,                               104},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str352,                                     77},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str353,                                 112},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str354,                              189},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str357,                                    159},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str358,                               82},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str360,                                     4},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str361,                            59},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str362,                                     87},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str363,                                    87},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str365,                                     88},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str366,                                      65},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str367,                                 77},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str370,                                      189},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str372,                               21},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str373,                                 16},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str375,                                    149},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str377,                                   172},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str378,                         43},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str379,                                 150},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str381,                69},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str387,                                    129},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str388,                                 98},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str390,                                      194},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str395,                                       31},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str396,                                      60},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str400,                                    158},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str404,                                     54},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str407,                                    171},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str408,                                    157},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str410,                                    114},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str413,                                     6},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str414,                       195},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str417,                         41},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str418,                                 114},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str419,                                   195},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str420,                                    155},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str426,                          180},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str427,                                     9},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str429,                           70},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str430,                                    143},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str435,                                   186},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str438,                                56},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str440,                                    145},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str442,                                    123},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str444,                                    120},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str445,                                    134},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str448,                                      62},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str449,                                50},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str450,                               172},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str451,                               20},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str454,                          24},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str455,                                     79},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str458,                                    154},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str459,                                    125},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str460,                               139},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str462,                               154},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str463,                                    174},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str465,                                 120},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str467,                                       41},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str469,                                     178},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str474,                                    141},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str476,                                     138},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str477,                                    138},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str479,                                   0},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str480,                                  94},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str481,                                157},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str485,                                  83},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str486,                               128},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str487,                                    106},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str488,                                 141},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str489,                                    144},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str490,                                     63},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str491,                                       44},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str493,                                 125},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str494,                                     94},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str502,                                   193},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str504,                                    121},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str505,                           32},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str508,                                    137},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str509,                                  164},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str512,                                     68},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str514,                                134},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str515,                                    104},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str516,                                    101},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str520,                           25},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str521,                                121},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str522,                                106},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str523,                                       39},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str525,                                     78},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str531,                                        37},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str533,                                    163},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str536,                                     12},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str537,                              143},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str538,                                    133},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str539,                                    139},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str542,                                       52},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str548,                    61},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str552,                                 67},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str553,                                    122},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str554,                                    164},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str556,                                   101},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str558,                           53},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str559,                    64},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str560,                                    160},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str562,                              68},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str564,                                   166},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str570,                              188},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str573,                                   11},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str575,                             166},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str584,                                       28},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str587,                          39},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str590,                                178},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str593,                      184},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str594,                                 99},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str595,                                     8},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str597,                                 137},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str598,                                  180},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str599,                                    146},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str601,                              165},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str602,                                  146},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str603,                                      109},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str606,                                     76},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str608,                                     89},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str610,                                     86},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str611,                                 76},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str616,                                    109},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str618,                                  89},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str623,                                     67},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str626,                                   118},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str635,                                        29},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str638,                        186},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str639,                       52},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str640,                                       25},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str645,                          44},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str646,                                    117},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str649,                              133},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str651,                            31},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str652,                                22},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str653,                                     83},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str654,                                   33},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str656,                                   88},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str660,                                  145},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str661,                                90},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str674,                                    183},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str676,                                173},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str677,                                    132},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str689,                                    136},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str692,                                    107},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str698,                                107},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str699,                                     188},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str701,                                    131},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str705,                                   71},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str706,                               55},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str707,                                     64},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str708,                           196},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str709,                                     75},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str710,                                    75},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str714,                                     80},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str717,                                   80},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str722,                               135},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str723,                                     85},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str726,                                    148},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str727,                                 85},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str728,                             131},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str729,                                  148},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str748,                                       48},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str751,                           46},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str755,                                    118},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str758,                     182},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str786,                                     84},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str797,                                   170},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str809,                                     29},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str820,                           170},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str823,                                     173},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str842,                                    10},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str843,                                  165},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str848,                                    103},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str849,                                   103},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str863,                         160},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str864,                              30},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str866,                              37},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str867,                                57},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str878,                             158},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str883,                          28},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str884,                                 124},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str886,                                    116},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str887,                                   116},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str895,                           47},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str898,                                     2},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str908,                                  169},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str909,                                    126},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str935,                                  95},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str937,                         159},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str947,                               48},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str966,                                      61},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str975,                                 84},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str978,                                126},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-#endif /* USE_UNICODE_PROPERTIES */
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-#ifndef USE_UNICODE_PROPERTIES
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str7,                                     7},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str8,                                     8},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str9,                                     1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str10,                                    13},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str11,                                   11},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str12,                                   0},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str13,                                    10},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str14,                                    14},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str15,                                     3},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str16,                                     9},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str17,                                     12},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str18,                                     6},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str19,                                     5},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str20,                                     4},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str21,                                     2}
-#else /* USE_UNICODE_PROPERTIES */
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1022,                                   45},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1024,                                 123},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1036,                                    156},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1040,                                       47},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1065,                                   156},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1071,                                 144},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1072,                                    153},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1140,                                   72},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1141,                                    135},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1174,                                      15},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1187,                             72},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1221,                                     90},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1235,                                     95},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1277,                                   78},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1542,                     153},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-      {-1},
-      {(int)(long)&((struct uniname2ctype_pool_t *)0)->uniname2ctype_pool_str1751,                                     73}
-#endif /* USE_UNICODE_PROPERTIES */
-    };
-
-  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
-    {
-      register int key = uniname2ctype_hash (str, len);
-
-      if (key <= MAX_HASH_VALUE && key >= 0)
-        {
-          register int o = wordlist[key].name;
-          if (o >= 0)
-            {
-              register const char *s = o + uniname2ctype_pool;
-
-              if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
-                return &wordlist[key];
-            }
-        }
-    }
-  return 0;
-}
-
-static int
-uniname2ctype(const UChar *name, unsigned int len)
-{
-  const struct uniname2ctype_struct *p = uniname2ctype_p((const char *)name, len);
-  if (p) return p->ctype;
-  return -1;
-}

  Deleted: vendor/mruby-4728070/src/oniguruma.h (+0 -771) 100644
===================================================================
--- vendor/mruby-4728070/src/oniguruma.h    2013-09-24 12:23:02 +0900 (3332df0)
+++ /dev/null
@@ -1,771 +0,0 @@
-#ifndef ONIGURUMA_H
-#define ONIGURUMA_H
-/**********************************************************************
-  oniguruma.h - Oniguruma (regular expression library)
-**********************************************************************/
-/*-
- * Copyright (c) 2002-2008  K.Kosako  <sndgk393 AT ybb DOT ne DOT jp>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define ONIGURUMA
-#define ONIGURUMA_VERSION_MAJOR   5
-#define ONIGURUMA_VERSION_MINOR   9
-#define ONIGURUMA_VERSION_TEENY   2
-
-#ifdef __cplusplus
-# ifndef  HAVE_PROTOTYPES
-#  define HAVE_PROTOTYPES 1
-# endif
-# ifndef  HAVE_STDARG_PROTOTYPES
-#  define HAVE_STDARG_PROTOTYPES 1
-# endif
-#endif
-
-/* escape Mac OS X/Xcode 2.4/gcc 4.0.1 problem */
-#if defined(__APPLE__) && defined(__GNUC__) && __GNUC__ >= 4
-# ifndef  HAVE_STDARG_PROTOTYPES
-#  define HAVE_STDARG_PROTOTYPES 1
-# endif
-#endif
-
-#ifndef ONIG_EXTERN
-#ifdef RUBY_EXTERN
-#define ONIG_EXTERN   RUBY_EXTERN
-#else
-#if defined(_WIN32) && !defined(__GNUC__)
-#if defined(EXPORT) || defined(RUBY_EXPORT)
-#define ONIG_EXTERN   extern __declspec(dllexport)
-#else
-#define ONIG_EXTERN   extern __declspec(dllimport)
-#endif
-#endif
-#endif
-#endif
-
-#ifndef ONIG_EXTERN
-#define ONIG_EXTERN   extern
-#endif
-
-/* PART: character encoding */
-
-#ifndef ONIG_ESCAPE_UCHAR_COLLISION
-#define UChar OnigUChar
-#endif
-
-typedef unsigned char  OnigUChar;
-typedef unsigned int  OnigCodePoint;
-typedef unsigned int   OnigCtype;
-typedef size_t         OnigDistance;
-
-#define ONIG_INFINITE_DISTANCE  ~((OnigDistance )0)
-
-typedef unsigned int OnigCaseFoldType; /* case fold flag */
-
-ONIG_EXTERN OnigCaseFoldType OnigDefaultCaseFoldFlag;
-
-/* #define ONIGENC_CASE_FOLD_HIRAGANA_KATAKANA  (1<<1) */
-/* #define ONIGENC_CASE_FOLD_KATAKANA_WIDTH     (1<<2) */
-#define ONIGENC_CASE_FOLD_TURKISH_AZERI         (1<<20)
-#define INTERNAL_ONIGENC_CASE_FOLD_MULTI_CHAR   (1<<30)
-
-#define ONIGENC_CASE_FOLD_MIN      INTERNAL_ONIGENC_CASE_FOLD_MULTI_CHAR
-#define ONIGENC_CASE_FOLD_DEFAULT  OnigDefaultCaseFoldFlag
-
-
-#define ONIGENC_MAX_COMP_CASE_FOLD_CODE_LEN       3
-#define ONIGENC_GET_CASE_FOLD_CODES_MAX_NUM      13
-/* 13 => Unicode:0x1ffc */
-
-/* code range */
-#define ONIGENC_CODE_RANGE_NUM(range)     ((int )range[0])
-#define ONIGENC_CODE_RANGE_FROM(range,i)  range[((i)*2) + 1]
-#define ONIGENC_CODE_RANGE_TO(range,i)    range[((i)*2) + 2]
-
-typedef struct {
-  int byte_len;  /* argument(original) character(s) byte length */
-  int code_len;  /* number of code */
-  OnigCodePoint code[ONIGENC_MAX_COMP_CASE_FOLD_CODE_LEN];
-} OnigCaseFoldCodeItem;
-
-typedef struct {
-  OnigCodePoint esc;
-  OnigCodePoint anychar;
-  OnigCodePoint anytime;
-  OnigCodePoint zero_or_one_time;
-  OnigCodePoint one_or_more_time;
-  OnigCodePoint anychar_anytime;
-} OnigMetaCharTableType;
-
-typedef int (*OnigApplyAllCaseFoldFunc)(OnigCodePoint from, OnigCodePoint* to, int to_len, void* arg);
-
-typedef struct OnigEncodingTypeST {
-  int    (*precise_mbc_enc_len)(const OnigUChar* p,const OnigUChar* e, struct OnigEncodingTypeST* enc);
-  const char*   name;
-  int           max_enc_len;
-  int           min_enc_len;
-  int    (*is_mbc_newline)(const OnigUChar* p, const OnigUChar* end, struct OnigEncodingTypeST* enc);
-  OnigCodePoint (*mbc_to_code)(const OnigUChar* p, const OnigUChar* end, struct OnigEncodingTypeST* enc);
-  int    (*code_to_mbclen)(OnigCodePoint code, struct OnigEncodingTypeST* enc);
-  int    (*code_to_mbc)(OnigCodePoint code, OnigUChar *buf, struct OnigEncodingTypeST* enc);
-  int    (*mbc_case_fold)(OnigCaseFoldType flag, const OnigUChar** pp, const OnigUChar* end, OnigUChar* to, struct OnigEncodingTypeST* enc);
-  int    (*apply_all_case_fold)(OnigCaseFoldType flag, OnigApplyAllCaseFoldFunc f, void* arg, struct OnigEncodingTypeST* enc);
-  int    (*get_case_fold_codes_by_str)(OnigCaseFoldType flag, const OnigUChar* p, const OnigUChar* end, OnigCaseFoldCodeItem acs[], struct OnigEncodingTypeST* enc);
-  int    (*property_name_to_ctype)(struct OnigEncodingTypeST* enc, OnigUChar* p, OnigUChar* end);
-  int    (*is_code_ctype)(OnigCodePoint code, OnigCtype ctype, struct OnigEncodingTypeST* enc);
-  int    (*get_ctype_code_range)(OnigCtype ctype, OnigCodePoint* sb_out, const OnigCodePoint* ranges[], struct OnigEncodingTypeST* enc);
-  OnigUChar* (*left_adjust_char_head)(const OnigUChar* start, const OnigUChar* p, const OnigUChar* end, struct OnigEncodingTypeST* enc);
-  int    (*is_allowed_reverse_match)(const OnigUChar* p, const OnigUChar* end, struct OnigEncodingTypeST* enc);
-  int ruby_encoding_index;
-} OnigEncodingType;
-
-typedef OnigEncodingType* OnigEncoding;
-
-ONIG_EXTERN OnigEncodingType OnigEncodingASCII;
-
-#define ONIG_ENCODING_ASCII        (&OnigEncodingASCII)
-
-#define ONIG_ENCODING_UNDEF    ((OnigEncoding )0)
-
-
-/* work size */
-#define ONIGENC_CODE_TO_MBC_MAXLEN       7
-#define ONIGENC_MBC_CASE_FOLD_MAXLEN    18
-/* 18: 6(max-byte) * 3(case-fold chars) */
-
-/* character types */
-#define ONIGENC_CTYPE_NEWLINE   0
-#define ONIGENC_CTYPE_ALPHA     1
-#define ONIGENC_CTYPE_BLANK     2
-#define ONIGENC_CTYPE_CNTRL     3
-#define ONIGENC_CTYPE_DIGIT     4
-#define ONIGENC_CTYPE_GRAPH     5
-#define ONIGENC_CTYPE_LOWER     6
-#define ONIGENC_CTYPE_PRINT     7
-#define ONIGENC_CTYPE_PUNCT     8
-#define ONIGENC_CTYPE_SPACE     9
-#define ONIGENC_CTYPE_UPPER    10
-#define ONIGENC_CTYPE_XDIGIT   11
-#define ONIGENC_CTYPE_WORD     12
-#define ONIGENC_CTYPE_ALNUM    13  /* alpha || digit */
-#define ONIGENC_CTYPE_ASCII    14
-#define ONIGENC_MAX_STD_CTYPE  ONIGENC_CTYPE_ASCII
-#define ONIGENC_CTYPE_SPECIAL_MASK        128
-#define ONIGENC_CTYPE_S            /* [\t\n\v\f\r\s] */ \
-    ONIGENC_CTYPE_SPECIAL_MASK | ONIGENC_CTYPE_SPACE
-#define ONIGENC_CTYPE_D            /* [0-9] */ \
-    ONIGENC_CTYPE_SPECIAL_MASK | ONIGENC_CTYPE_DIGIT
-#define ONIGENC_CTYPE_W            /* [0-9A-Za-z_] */ \
-    ONIGENC_CTYPE_SPECIAL_MASK | ONIGENC_CTYPE_WORD
-#define ONIGENC_CTYPE_SPECIAL_P(ctype) ((ctype) & ONIGENC_CTYPE_SPECIAL_MASK)
-
-
-#define onig_enc_len(enc,p,e)                ONIGENC_MBC_ENC_LEN(enc, p, e)
-
-#define ONIGENC_IS_UNDEF(enc)          ((enc) == ONIG_ENCODING_UNDEF)
-#define ONIGENC_IS_SINGLEBYTE(enc)     (ONIGENC_MBC_MAXLEN(enc) == 1)
-#define ONIGENC_IS_MBC_HEAD(enc,p,e)   (ONIGENC_MBC_ENC_LEN(enc,p,e) != 1)
-#define ONIGENC_IS_MBC_ASCII(p)           (*(p)   < 128)
-#define ONIGENC_IS_CODE_ASCII(code)       ((code) < 128)
-#define ONIGENC_IS_MBC_WORD(enc,s,end) \
-   ONIGENC_IS_CODE_WORD(enc,ONIGENC_MBC_TO_CODE(enc,s,end))
-
-
-#define ONIGENC_NAME(enc)                      ((enc)->name)
-
-#define ONIGENC_MBC_CASE_FOLD(enc,flag,pp,end,buf) \
-  (enc)->mbc_case_fold(flag,(const OnigUChar** )pp,end,buf,enc)
-#define ONIGENC_IS_ALLOWED_REVERSE_MATCH(enc,s,end) \
-        (enc)->is_allowed_reverse_match(s,end,enc)
-#define ONIGENC_LEFT_ADJUST_CHAR_HEAD(enc,start,s,end) \
-        (enc)->left_adjust_char_head(start, s, end, enc)
-#define ONIGENC_APPLY_ALL_CASE_FOLD(enc,case_fold_flag,f,arg) \
-        (enc)->apply_all_case_fold(case_fold_flag,f,arg,enc)
-#define ONIGENC_GET_CASE_FOLD_CODES_BY_STR(enc,case_fold_flag,p,end,acs) \
-       (enc)->get_case_fold_codes_by_str(case_fold_flag,p,end,acs,enc)
-#define ONIGENC_STEP_BACK(enc,start,s,end,n) \
-        onigenc_step_back((enc),(start),(s),(end),(n))
-
-#define ONIGENC_CONSTRUCT_MBCLEN_CHARFOUND(n)   (n)
-#define ONIGENC_MBCLEN_CHARFOUND_P(r)           (0 < (r))
-#define ONIGENC_MBCLEN_CHARFOUND_LEN(r)         (r)
-
-#define ONIGENC_CONSTRUCT_MBCLEN_INVALID()      (-1)
-#define ONIGENC_MBCLEN_INVALID_P(r)             ((r) == -1)
-
-#define ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE(n)    (-1-(n))
-#define ONIGENC_MBCLEN_NEEDMORE_P(r)            ((r) < -1)
-#define ONIGENC_MBCLEN_NEEDMORE_LEN(r)          (-1-(r))
-
-#define ONIGENC_PRECISE_MBC_ENC_LEN(enc,p,e)   (enc)->precise_mbc_enc_len(p,e,enc)
-
-ONIG_EXTERN
-int onigenc_mbclen_approximate(const OnigUChar* p,const OnigUChar* e, struct OnigEncodingTypeST* enc);
-
-#define ONIGENC_MBC_ENC_LEN(enc,p,e)           onigenc_mbclen_approximate(p,e,enc)
-#define ONIGENC_MBC_MAXLEN(enc)               ((enc)->max_enc_len)
-#define ONIGENC_MBC_MAXLEN_DIST(enc)           ONIGENC_MBC_MAXLEN(enc)
-#define ONIGENC_MBC_MINLEN(enc)               ((enc)->min_enc_len)
-#define ONIGENC_IS_MBC_NEWLINE(enc,p,end)      (enc)->is_mbc_newline((p),(end),enc)
-#define ONIGENC_MBC_TO_CODE(enc,p,end)         (enc)->mbc_to_code((p),(end),enc)
-#define ONIGENC_CODE_TO_MBCLEN(enc,code)       (enc)->code_to_mbclen(code,enc)
-#define ONIGENC_CODE_TO_MBC(enc,code,buf)      (enc)->code_to_mbc(code,buf,enc)
-#define ONIGENC_PROPERTY_NAME_TO_CTYPE(enc,p,end) \
-  (enc)->property_name_to_ctype(enc,p,end)
-
-#define ONIGENC_IS_CODE_CTYPE(enc,code,ctype)  (enc)->is_code_ctype(code,ctype,enc)
-
-#define ONIGENC_IS_CODE_NEWLINE(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_NEWLINE)
-#define ONIGENC_IS_CODE_GRAPH(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_GRAPH)
-#define ONIGENC_IS_CODE_PRINT(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_PRINT)
-#define ONIGENC_IS_CODE_ALNUM(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_ALNUM)
-#define ONIGENC_IS_CODE_ALPHA(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_ALPHA)
-#define ONIGENC_IS_CODE_LOWER(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_LOWER)
-#define ONIGENC_IS_CODE_UPPER(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_UPPER)
-#define ONIGENC_IS_CODE_CNTRL(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_CNTRL)
-#define ONIGENC_IS_CODE_PUNCT(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_PUNCT)
-#define ONIGENC_IS_CODE_SPACE(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_SPACE)
-#define ONIGENC_IS_CODE_BLANK(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_BLANK)
-#define ONIGENC_IS_CODE_DIGIT(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_DIGIT)
-#define ONIGENC_IS_CODE_XDIGIT(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_XDIGIT)
-#define ONIGENC_IS_CODE_WORD(enc,code) \
-        ONIGENC_IS_CODE_CTYPE(enc,code,ONIGENC_CTYPE_WORD)
-
-#define ONIGENC_GET_CTYPE_CODE_RANGE(enc,ctype,sbout,ranges) \
-        (enc)->get_ctype_code_range(ctype,sbout,ranges,enc)
-
-ONIG_EXTERN
-OnigUChar* onigenc_step_back(OnigEncoding enc, const OnigUChar* start, const OnigUChar* s, const OnigUChar* end, int n);
-
-
-/* encoding API */
-ONIG_EXTERN
-int onigenc_init(void);
-ONIG_EXTERN
-int onigenc_set_default_encoding(OnigEncoding enc);
-ONIG_EXTERN
-OnigEncoding onigenc_get_default_encoding(void);
-ONIG_EXTERN
-void  onigenc_set_default_caseconv_table(const OnigUChar* table);
-ONIG_EXTERN
-OnigUChar* onigenc_get_right_adjust_char_head_with_prev(OnigEncoding enc, const OnigUChar* start, const OnigUChar* s, const OnigUChar* end, const OnigUChar** prev);
-ONIG_EXTERN
-OnigUChar* onigenc_get_prev_char_head(OnigEncoding enc, const OnigUChar* start, const OnigUChar* s, const OnigUChar* end);
-ONIG_EXTERN
-OnigUChar* onigenc_get_left_adjust_char_head(OnigEncoding enc, const OnigUChar* start, const OnigUChar* s, const OnigUChar* end);
-ONIG_EXTERN
-OnigUChar* onigenc_get_right_adjust_char_head(OnigEncoding enc, const OnigUChar* start, const OnigUChar* s, const OnigUChar* end);
-ONIG_EXTERN
-int onigenc_strlen(OnigEncoding enc, const OnigUChar* p, const OnigUChar* end);
-ONIG_EXTERN
-int onigenc_strlen_null(OnigEncoding enc, const OnigUChar* p);
-ONIG_EXTERN
-int onigenc_str_bytelen_null(OnigEncoding enc, const OnigUChar* p);
-
-
-
-/* PART: regular expression */
-
-/* config parameters */
-#define ONIG_NREGION                          10
-#define ONIG_MAX_BACKREF_NUM                1000
-#define ONIG_MAX_REPEAT_NUM               100000
-#define ONIG_MAX_MULTI_BYTE_RANGES_NUM     10000
-/* constants */
-#define ONIG_MAX_ERROR_MESSAGE_LEN            90
-
-typedef unsigned int        OnigOptionType;
-
-#define ONIG_OPTION_DEFAULT            ONIG_OPTION_NONE
-
-/* options */
-#define ONIG_OPTION_NONE                 0U
-#define ONIG_OPTION_IGNORECASE           1U
-#define ONIG_OPTION_EXTEND               (ONIG_OPTION_IGNORECASE         << 1)
-#define ONIG_OPTION_MULTILINE            (ONIG_OPTION_EXTEND             << 1)
-#define ONIG_OPTION_SINGLELINE           (ONIG_OPTION_MULTILINE          << 1)
-#define ONIG_OPTION_FIND_LONGEST         (ONIG_OPTION_SINGLELINE         << 1)
-#define ONIG_OPTION_FIND_NOT_EMPTY       (ONIG_OPTION_FIND_LONGEST       << 1)
-#define ONIG_OPTION_NEGATE_SINGLELINE    (ONIG_OPTION_FIND_NOT_EMPTY     << 1)
-#define ONIG_OPTION_DONT_CAPTURE_GROUP   (ONIG_OPTION_NEGATE_SINGLELINE  << 1)
-#define ONIG_OPTION_CAPTURE_GROUP        (ONIG_OPTION_DONT_CAPTURE_GROUP << 1)
-/* options (search time) */
-#define ONIG_OPTION_NOTBOL               (ONIG_OPTION_CAPTURE_GROUP << 1)
-#define ONIG_OPTION_NOTEOL               (ONIG_OPTION_NOTBOL << 1)
-#define ONIG_OPTION_POSIX_REGION         (ONIG_OPTION_NOTEOL << 1)
-#define ONIG_OPTION_MAXBIT               ONIG_OPTION_POSIX_REGION  /* limit */
-
-#define ONIG_OPTION_ON(options,regopt)      ((options) |= (regopt))
-#define ONIG_OPTION_OFF(options,regopt)     ((options) &= ~(regopt))
-#define ONIG_IS_OPTION_ON(options,option)   ((options) & (option))
-
-/* syntax */
-typedef struct {
-  unsigned int   op;
-  unsigned int   op2;
-  unsigned int   behavior;
-  OnigOptionType options;   /* default option */
-  OnigMetaCharTableType meta_char_table;
-} OnigSyntaxType;
-
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxASIS;
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxPosixBasic;
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxPosixExtended;
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxEmacs;
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxGrep;
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxGnuRegex;
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxJava;
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxPerl;
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxPerl_NG;
-ONIG_EXTERN const OnigSyntaxType OnigSyntaxRuby;
-
-/* predefined syntaxes (see regsyntax.c) */
-#define ONIG_SYNTAX_ASIS               (&OnigSyntaxASIS)
-#define ONIG_SYNTAX_POSIX_BASIC        (&OnigSyntaxPosixBasic)
-#define ONIG_SYNTAX_POSIX_EXTENDED     (&OnigSyntaxPosixExtended)
-#define ONIG_SYNTAX_EMACS              (&OnigSyntaxEmacs)
-#define ONIG_SYNTAX_GREP               (&OnigSyntaxGrep)
-#define ONIG_SYNTAX_GNU_REGEX          (&OnigSyntaxGnuRegex)
-#define ONIG_SYNTAX_JAVA               (&OnigSyntaxJava)
-#define ONIG_SYNTAX_PERL               (&OnigSyntaxPerl)
-#define ONIG_SYNTAX_PERL_NG            (&OnigSyntaxPerl_NG)
-#define ONIG_SYNTAX_RUBY               (&OnigSyntaxRuby)
-
-/* default syntax */
-ONIG_EXTERN const OnigSyntaxType*   OnigDefaultSyntax;
-#define ONIG_SYNTAX_DEFAULT   OnigDefaultSyntax
-
-/* syntax (operators) */
-#define ONIG_SYN_OP_VARIABLE_META_CHARACTERS    (1U<<0)
-#define ONIG_SYN_OP_DOT_ANYCHAR                 (1U<<1)   /* . */
-#define ONIG_SYN_OP_ASTERISK_ZERO_INF           (1U<<2)   /* * */
-#define ONIG_SYN_OP_ESC_ASTERISK_ZERO_INF       (1U<<3)
-#define ONIG_SYN_OP_PLUS_ONE_INF                (1U<<4)   /* + */
-#define ONIG_SYN_OP_ESC_PLUS_ONE_INF            (1U<<5)
-#define ONIG_SYN_OP_QMARK_ZERO_ONE              (1U<<6)   /* ? */
-#define ONIG_SYN_OP_ESC_QMARK_ZERO_ONE          (1U<<7)
-#define ONIG_SYN_OP_BRACE_INTERVAL              (1U<<8)   /* {lower,upper} */
-#define ONIG_SYN_OP_ESC_BRACE_INTERVAL          (1U<<9)   /* \{lower,upper\} */
-#define ONIG_SYN_OP_VBAR_ALT                    (1U<<10)   /* | */
-#define ONIG_SYN_OP_ESC_VBAR_ALT                (1U<<11)  /* \| */
-#define ONIG_SYN_OP_LPAREN_SUBEXP               (1U<<12)  /* (...)   */
-#define ONIG_SYN_OP_ESC_LPAREN_SUBEXP           (1U<<13)  /* \(...\) */
-#define ONIG_SYN_OP_ESC_AZ_BUF_ANCHOR           (1U<<14)  /* \A, \Z, \z */
-#define ONIG_SYN_OP_ESC_CAPITAL_G_BEGIN_ANCHOR  (1U<<15)  /* \G     */
-#define ONIG_SYN_OP_DECIMAL_BACKREF             (1U<<16)  /* \num   */
-#define ONIG_SYN_OP_BRACKET_CC                  (1U<<17)  /* [...]  */
-#define ONIG_SYN_OP_ESC_W_WORD                  (1U<<18)  /* \w, \W */
-#define ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END     (1U<<19)  /* \<. \> */
-#define ONIG_SYN_OP_ESC_B_WORD_BOUND            (1U<<20)  /* \b, \B */
-#define ONIG_SYN_OP_ESC_S_WHITE_SPACE           (1U<<21)  /* \s, \S */
-#define ONIG_SYN_OP_ESC_D_DIGIT                 (1U<<22)  /* \d, \D */
-#define ONIG_SYN_OP_LINE_ANCHOR                 (1U<<23)  /* ^, $   */
-#define ONIG_SYN_OP_POSIX_BRACKET               (1U<<24)  /* [:xxxx:] */
-#define ONIG_SYN_OP_QMARK_NON_GREEDY            (1U<<25)  /* ??,*?,+?,{n,m}? */
-#define ONIG_SYN_OP_ESC_CONTROL_CHARS           (1U<<26)  /* \n,\r,\t,\a ... */
-#define ONIG_SYN_OP_ESC_C_CONTROL               (1U<<27)  /* \cx  */
-#define ONIG_SYN_OP_ESC_OCTAL3                  (1U<<28)  /* \OOO */
-#define ONIG_SYN_OP_ESC_X_HEX2                  (1U<<29)  /* \xHH */
-#define ONIG_SYN_OP_ESC_X_BRACE_HEX8            (1U<<30)  /* \x{7HHHHHHH} */
-
-#define ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE        (1U<<0)  /* \Q...\E */
-#define ONIG_SYN_OP2_QMARK_GROUP_EFFECT         (1U<<1)  /* (?...) */
-#define ONIG_SYN_OP2_OPTION_PERL                (1U<<2)  /* (?imsx),(?-imsx) */
-#define ONIG_SYN_OP2_OPTION_RUBY                (1U<<3)  /* (?imx), (?-imx)  */
-#define ONIG_SYN_OP2_PLUS_POSSESSIVE_REPEAT     (1U<<4)  /* ?+,*+,++ */
-#define ONIG_SYN_OP2_PLUS_POSSESSIVE_INTERVAL   (1U<<5)  /* {n,m}+   */
-#define ONIG_SYN_OP2_CCLASS_SET_OP              (1U<<6)  /* [...&&..[..]..] */
-#define ONIG_SYN_OP2_QMARK_LT_NAMED_GROUP       (1U<<7)  /* (?<name>...) */
-#define ONIG_SYN_OP2_ESC_K_NAMED_BACKREF        (1U<<8)  /* \k<name> */
-#define ONIG_SYN_OP2_ESC_G_SUBEXP_CALL          (1U<<9)  /* \g<name>, \g<n> */
-#define ONIG_SYN_OP2_ATMARK_CAPTURE_HISTORY     (1U<<10) /* (?@..),(?@<x>..) */
-#define ONIG_SYN_OP2_ESC_CAPITAL_C_BAR_CONTROL  (1U<<11) /* \C-x */
-#define ONIG_SYN_OP2_ESC_CAPITAL_M_BAR_META     (1U<<12) /* \M-x */
-#define ONIG_SYN_OP2_ESC_V_VTAB                 (1U<<13) /* \v as VTAB */
-#define ONIG_SYN_OP2_ESC_U_HEX4                 (1U<<14) /* \uHHHH */
-#define ONIG_SYN_OP2_ESC_GNU_BUF_ANCHOR         (1U<<15) /* \`, \' */
-#define ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY  (1U<<16) /* \p{...}, \P{...} */
-#define ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT (1U<<17) /* \p{^..}, \P{^..} */
-/* #define ONIG_SYN_OP2_CHAR_PROPERTY_PREFIX_IS (1U<<18) */
-#define ONIG_SYN_OP2_ESC_H_XDIGIT               (1U<<19) /* \h, \H */
-#define ONIG_SYN_OP2_INEFFECTIVE_ESCAPE         (1U<<20) /* \ */
-
-/* syntax (behavior) */
-#define ONIG_SYN_CONTEXT_INDEP_ANCHORS           (1U<<31) /* not implemented */
-#define ONIG_SYN_CONTEXT_INDEP_REPEAT_OPS        (1U<<0)  /* ?, *, +, {n,m} */
-#define ONIG_SYN_CONTEXT_INVALID_REPEAT_OPS      (1U<<1)  /* error or ignore */
-#define ONIG_SYN_ALLOW_UNMATCHED_CLOSE_SUBEXP    (1U<<2)  /* ...)... */
-#define ONIG_SYN_ALLOW_INVALID_INTERVAL          (1U<<3)  /* {??? */
-#define ONIG_SYN_ALLOW_INTERVAL_LOW_ABBREV       (1U<<4)  /* {,n} => {0,n} */
-#define ONIG_SYN_STRICT_CHECK_BACKREF            (1U<<5)  /* /(\1)/,/\1()/ ..*/
-#define ONIG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND   (1U<<6)  /* (?<=a|bc) */
-#define ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP        (1U<<7)  /* see doc/RE */
-#define ONIG_SYN_ALLOW_MULTIPLEX_DEFINITION_NAME (1U<<8)  /* (?<x>)(?<x>) */
-#define ONIG_SYN_FIXED_INTERVAL_IS_GREEDY_ONLY   (1U<<9)  /* a{n}?=(?:a{n})? */
-
-/* syntax (behavior) in char class [...] */
-#define ONIG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC      (1U<<20) /* [^...] */
-#define ONIG_SYN_BACKSLASH_ESCAPE_IN_CC          (1U<<21) /* [..\w..] etc.. */
-#define ONIG_SYN_ALLOW_EMPTY_RANGE_IN_CC         (1U<<22)
-#define ONIG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC     (1U<<23) /* [0-9-a]=[0-9\-a] */
-/* syntax (behavior) warning */
-#define ONIG_SYN_WARN_CC_OP_NOT_ESCAPED          (1U<<24) /* [,-,] */
-#define ONIG_SYN_WARN_REDUNDANT_NESTED_REPEAT    (1U<<25) /* (?:a*)+ */
-#define ONIG_SYN_WARN_CC_DUP                     (1U<<26) /* [aa] */
-
-/* meta character specifiers (onig_set_meta_char()) */
-#define ONIG_META_CHAR_ESCAPE               0
-#define ONIG_META_CHAR_ANYCHAR              1
-#define ONIG_META_CHAR_ANYTIME              2
-#define ONIG_META_CHAR_ZERO_OR_ONE_TIME     3
-#define ONIG_META_CHAR_ONE_OR_MORE_TIME     4
-#define ONIG_META_CHAR_ANYCHAR_ANYTIME      5
-
-#define ONIG_INEFFECTIVE_META_CHAR          0
-
-/* error codes */
-#define ONIG_IS_PATTERN_ERROR(ecode)   ((ecode) <= -100 && (ecode) > -1000)
-/* normal return */
-#define ONIG_NORMAL                                            0
-#define ONIG_MISMATCH                                         -1
-#define ONIG_NO_SUPPORT_CONFIG                                -2
-
-/* internal error */
-#define ONIGERR_MEMORY                                         -5
-#define ONIGERR_TYPE_BUG                                       -6
-#define ONIGERR_PARSER_BUG                                    -11
-#define ONIGERR_STACK_BUG                                     -12
-#define ONIGERR_UNDEFINED_BYTECODE                            -13
-#define ONIGERR_UNEXPECTED_BYTECODE                           -14
-#define ONIGERR_MATCH_STACK_LIMIT_OVER                        -15
-#define ONIGERR_DEFAULT_ENCODING_IS_NOT_SETTED                -21
-#define ONIGERR_SPECIFIED_ENCODING_CANT_CONVERT_TO_WIDE_CHAR  -22
-/* general error */
-#define ONIGERR_INVALID_ARGUMENT                              -30
-/* syntax error */
-#define ONIGERR_END_PATTERN_AT_LEFT_BRACE                    -100
-#define ONIGERR_END_PATTERN_AT_LEFT_BRACKET                  -101
-#define ONIGERR_EMPTY_CHAR_CLASS                             -102
-#define ONIGERR_PREMATURE_END_OF_CHAR_CLASS                  -103
-#define ONIGERR_END_PATTERN_AT_ESCAPE                        -104
-#define ONIGERR_END_PATTERN_AT_META                          -105
-#define ONIGERR_END_PATTERN_AT_CONTROL                       -106
-#define ONIGERR_META_CODE_SYNTAX                             -108
-#define ONIGERR_CONTROL_CODE_SYNTAX                          -109
-#define ONIGERR_CHAR_CLASS_VALUE_AT_END_OF_RANGE             -110
-#define ONIGERR_CHAR_CLASS_VALUE_AT_START_OF_RANGE           -111
-#define ONIGERR_UNMATCHED_RANGE_SPECIFIER_IN_CHAR_CLASS      -112
-#define ONIGERR_TARGET_OF_REPEAT_OPERATOR_NOT_SPECIFIED      -113
-#define ONIGERR_TARGET_OF_REPEAT_OPERATOR_INVALID            -114
-#define ONIGERR_NESTED_REPEAT_OPERATOR                       -115
-#define ONIGERR_UNMATCHED_CLOSE_PARENTHESIS                  -116
-#define ONIGERR_END_PATTERN_WITH_UNMATCHED_PARENTHESIS       -117
-#define ONIGERR_END_PATTERN_IN_GROUP                         -118
-#define ONIGERR_UNDEFINED_GROUP_OPTION                       -119
-#define ONIGERR_INVALID_POSIX_BRACKET_TYPE                   -121
-#define ONIGERR_INVALID_LOOK_BEHIND_PATTERN                  -122
-#define ONIGERR_INVALID_REPEAT_RANGE_PATTERN                 -123
-/* values error (syntax error) */
-#define ONIGERR_TOO_BIG_NUMBER                               -200
-#define ONIGERR_TOO_BIG_NUMBER_FOR_REPEAT_RANGE              -201
-#define ONIGERR_UPPER_SMALLER_THAN_LOWER_IN_REPEAT_RANGE     -202
-#define ONIGERR_EMPTY_RANGE_IN_CHAR_CLASS                    -203
-#define ONIGERR_MISMATCH_CODE_LENGTH_IN_CLASS_RANGE          -204
-#define ONIGERR_TOO_MANY_MULTI_BYTE_RANGES                   -205
-#define ONIGERR_TOO_SHORT_MULTI_BYTE_STRING                  -206
-#define ONIGERR_TOO_BIG_BACKREF_NUMBER                       -207
-#define ONIGERR_INVALID_BACKREF                              -208
-#define ONIGERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED         -209
-#define ONIGERR_TOO_LONG_WIDE_CHAR_VALUE                     -212
-#define ONIGERR_EMPTY_GROUP_NAME                             -214
-#define ONIGERR_INVALID_GROUP_NAME                           -215
-#define ONIGERR_INVALID_CHAR_IN_GROUP_NAME                   -216
-#define ONIGERR_UNDEFINED_NAME_REFERENCE                     -217
-#define ONIGERR_UNDEFINED_GROUP_REFERENCE                    -218
-#define ONIGERR_MULTIPLEX_DEFINED_NAME                       -219
-#define ONIGERR_MULTIPLEX_DEFINITION_NAME_CALL               -220
-#define ONIGERR_NEVER_ENDING_RECURSION                       -221
-#define ONIGERR_GROUP_NUMBER_OVER_FOR_CAPTURE_HISTORY        -222
-#define ONIGERR_INVALID_CHAR_PROPERTY_NAME                   -223
-#define ONIGERR_INVALID_CODE_POINT_VALUE                     -400
-#define ONIGERR_INVALID_WIDE_CHAR_VALUE                      -400
-#define ONIGERR_TOO_BIG_WIDE_CHAR_VALUE                      -401
-#define ONIGERR_NOT_SUPPORTED_ENCODING_COMBINATION           -402
-#define ONIGERR_INVALID_COMBINATION_OF_OPTIONS               -403
-
-/* errors related to thread */
-#define ONIGERR_OVER_THREAD_PASS_LIMIT_COUNT                -1001
-
-
-/* must be smaller than BIT_STATUS_BITS_NUM (unsigned int * 8) */
-#define ONIG_MAX_CAPTURE_HISTORY_GROUP   31
-#define ONIG_IS_CAPTURE_HISTORY_GROUP(r, i) \
-  ((i) <= ONIG_MAX_CAPTURE_HISTORY_GROUP && (r)->list && (r)->list[i])
-
-typedef struct OnigCaptureTreeNodeStruct {
-  int group;   /* group number */
-  int beg;
-  int end;
-  int allocated;
-  int num_childs;
-  struct OnigCaptureTreeNodeStruct** childs;
-} OnigCaptureTreeNode;
-
-/* match result region type */
-struct re_registers {
-  int  allocated;
-  int  num_regs;
-  int* beg;
-  int* end;
-  /* extended */
-  OnigCaptureTreeNode* history_root;  /* capture history tree root */
-};
-
-/* capture tree traverse */
-#define ONIG_TRAVERSE_CALLBACK_AT_FIRST   1
-#define ONIG_TRAVERSE_CALLBACK_AT_LAST    2
-#define ONIG_TRAVERSE_CALLBACK_AT_BOTH \
-  ( ONIG_TRAVERSE_CALLBACK_AT_FIRST | ONIG_TRAVERSE_CALLBACK_AT_LAST )
-
-
-#define ONIG_REGION_NOTPOS            -1
-
-typedef struct re_registers   OnigRegion;
-
-typedef struct {
-  OnigEncoding enc;
-  OnigUChar* par;
-  OnigUChar* par_end;
-} OnigErrorInfo;
-
-typedef struct {
-  int lower;
-  int upper;
-} OnigRepeatRange;
-
-typedef void (*OnigWarnFunc)(const char* s);
-extern void onig_null_warn(const char* s);
-#define ONIG_NULL_WARN       onig_null_warn
-
-#define ONIG_CHAR_TABLE_SIZE   256
-
-/* regex_t state */
-#define ONIG_STATE_NORMAL              0
-#define ONIG_STATE_SEARCHING           1
-#define ONIG_STATE_COMPILING          -1
-#define ONIG_STATE_MODIFY             -2
-
-#define ONIG_STATE(reg) \
-  ((reg)->state > 0 ? ONIG_STATE_SEARCHING : (reg)->state)
-
-typedef struct re_pattern_buffer {
-  /* common members of BBuf(bytes-buffer) */
-  unsigned char* p;         /* compiled pattern */
-  unsigned int used;        /* used space for p */
-  unsigned int alloc;       /* allocated space for p */
-
-  int state;                     /* normal, searching, compiling */
-  int num_mem;                   /* used memory(...) num counted from 1 */
-  int num_repeat;                /* OP_REPEAT/OP_REPEAT_NG id-counter */
-  int num_null_check;            /* OP_NULL_CHECK_START/END id counter */
-  int num_comb_exp_check;        /* combination explosion check */
-  int num_call;                  /* number of subexp call */
-  unsigned int capture_history;  /* (?@...) flag (1-31) */
-  unsigned int bt_mem_start;     /* need backtrack flag */
-  unsigned int bt_mem_end;       /* need backtrack flag */
-  int stack_pop_level;
-  int repeat_range_alloc;
-  OnigRepeatRange* repeat_range;
-
-  OnigEncoding      enc;
-  OnigOptionType    options;
-  const OnigSyntaxType* syntax;
-  OnigCaseFoldType  case_fold_flag;
-  void*             name_table;
-
-  /* optimization info (string search, char-map and anchors) */
-  int            optimize;          /* optimize flag */
-  int            threshold_len;     /* search str-length for apply optimize */
-  int            anchor;            /* BEGIN_BUF, BEGIN_POS, (SEMI_)END_BUF */
-  OnigDistance   anchor_dmin;       /* (SEMI_)END_BUF anchor distance */
-  OnigDistance   anchor_dmax;       /* (SEMI_)END_BUF anchor distance */
-  int            sub_anchor;        /* start-anchor for exact or map */
-  unsigned char *exact;
-  unsigned char *exact_end;
-  unsigned char  map[ONIG_CHAR_TABLE_SIZE]; /* used as BM skip or char-map */
-  int           *int_map;                   /* BM skip for exact_len > 255 */
-  int           *int_map_backward;          /* BM skip for backward search */
-  OnigDistance   dmin;                      /* min-distance of exact or map */
-  OnigDistance   dmax;                      /* max-distance of exact or map */
-
-  /* regex_t link chain */
-  struct re_pattern_buffer* chain;  /* escape compile-conflict */
-} OnigRegexType;
-
-typedef OnigRegexType*  OnigRegex;
-
-#ifndef ONIG_ESCAPE_REGEX_T_COLLISION
-  typedef OnigRegexType  regex_t;
-#endif
-
-
-typedef struct {
-  int             num_of_elements;
-  OnigEncoding    pattern_enc;
-  OnigEncoding    target_enc;
-  OnigSyntaxType* syntax;
-  OnigOptionType  option;
-  OnigCaseFoldType   case_fold_flag;
-} OnigCompileInfo;
-
-/* Oniguruma Native API */
-ONIG_EXTERN
-int onig_init(void);
-ONIG_EXTERN
-int onig_error_code_to_str(OnigUChar* s, int err_code, ...);
-ONIG_EXTERN
-void onig_set_warn_func(OnigWarnFunc f);
-ONIG_EXTERN
-void onig_set_verb_warn_func(OnigWarnFunc f);
-ONIG_EXTERN
-int onig_new(OnigRegex*, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigOptionType option, OnigEncoding enc, const OnigSyntaxType* syntax, OnigErrorInfo* einfo);
-ONIG_EXTERN
-int  onig_reg_init(regex_t* reg, OnigOptionType option, OnigCaseFoldType case_fold_flag, OnigEncoding enc, const OnigSyntaxType* syntax);
-ONIG_EXTERN
-int onig_new_without_alloc(OnigRegex, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType* syntax, OnigErrorInfo* einfo);
-ONIG_EXTERN
-int onig_new_deluxe(OnigRegex* reg, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigCompileInfo* ci, OnigErrorInfo* einfo);
-ONIG_EXTERN
-void onig_free(OnigRegex);
-ONIG_EXTERN
-void onig_free_body(OnigRegex);
-ONIG_EXTERN
-int onig_recompile(OnigRegex, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType* syntax, OnigErrorInfo* einfo);
-ONIG_EXTERN
-int onig_recompile_deluxe(OnigRegex reg, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigCompileInfo* ci, OnigErrorInfo* einfo);
-ONIG_EXTERN
-long onig_search(OnigRegex, const OnigUChar* str, const OnigUChar* end, const OnigUChar* start, const OnigUChar* range, OnigRegion* region, OnigOptionType option);
-ONIG_EXTERN
-long onig_match(OnigRegex, const OnigUChar* str, const OnigUChar* end, const OnigUChar* at, OnigRegion* region, OnigOptionType option);
-ONIG_EXTERN
-OnigRegion* onig_region_new(void);
-ONIG_EXTERN
-void onig_region_init(OnigRegion* region);
-ONIG_EXTERN
-void onig_region_free(OnigRegion* region, int free_self);
-ONIG_EXTERN
-void onig_region_copy(OnigRegion* to, OnigRegion* from);
-ONIG_EXTERN
-void onig_region_clear(OnigRegion* region);
-ONIG_EXTERN
-int onig_region_resize(OnigRegion* region, int n);
-ONIG_EXTERN
-int onig_region_set(OnigRegion* region, int at, int beg, int end);
-ONIG_EXTERN
-int onig_name_to_group_numbers(OnigRegex reg, const OnigUChar* name, const OnigUChar* name_end, int** nums);
-ONIG_EXTERN
-int onig_name_to_backref_number(OnigRegex reg, const OnigUChar* name, const OnigUChar* name_end, OnigRegion *region);
-ONIG_EXTERN
-int onig_foreach_name(OnigRegex reg, int (*func)(const OnigUChar*, const OnigUChar*,int,int*,OnigRegex,void*), void* arg);
-ONIG_EXTERN
-int onig_number_of_names(OnigRegex reg);
-ONIG_EXTERN
-int onig_number_of_captures(OnigRegex reg);
-ONIG_EXTERN
-int onig_number_of_capture_histories(OnigRegex reg);
-ONIG_EXTERN
-OnigCaptureTreeNode* onig_get_capture_tree(OnigRegion* region);
-ONIG_EXTERN
-int onig_capture_tree_traverse(OnigRegion* region, int at, int(*callback_func)(int,int,int,int,int,void*), void* arg);
-ONIG_EXTERN
-int onig_noname_group_capture_is_active(OnigRegex reg);
-ONIG_EXTERN
-OnigEncoding onig_get_encoding(OnigRegex reg);
-ONIG_EXTERN
-OnigOptionType onig_get_options(OnigRegex reg);
-ONIG_EXTERN
-OnigCaseFoldType onig_get_case_fold_flag(OnigRegex reg);
-ONIG_EXTERN
-const OnigSyntaxType* onig_get_syntax(OnigRegex reg);
-ONIG_EXTERN
-int onig_set_default_syntax(const OnigSyntaxType* syntax);
-ONIG_EXTERN
-void onig_copy_syntax(OnigSyntaxType* to, const OnigSyntaxType* from);
-ONIG_EXTERN
-unsigned int onig_get_syntax_op(OnigSyntaxType* syntax);
-ONIG_EXTERN
-unsigned int onig_get_syntax_op2(OnigSyntaxType* syntax);
-ONIG_EXTERN
-unsigned int onig_get_syntax_behavior(OnigSyntaxType* syntax);
-ONIG_EXTERN
-OnigOptionType onig_get_syntax_options(OnigSyntaxType* syntax);
-ONIG_EXTERN
-void onig_set_syntax_op(OnigSyntaxType* syntax, unsigned int op);
-ONIG_EXTERN
-void onig_set_syntax_op2(OnigSyntaxType* syntax, unsigned int op2);
-ONIG_EXTERN
-void onig_set_syntax_behavior(OnigSyntaxType* syntax, unsigned int behavior);
-ONIG_EXTERN
-void onig_set_syntax_options(OnigSyntaxType* syntax, OnigOptionType options);
-ONIG_EXTERN
-int onig_set_meta_char(OnigSyntaxType* syntax, unsigned int what, OnigCodePoint code);
-ONIG_EXTERN
-void onig_copy_encoding(OnigEncoding to, OnigEncoding from);
-ONIG_EXTERN
-OnigCaseFoldType onig_get_default_case_fold_flag(void);
-ONIG_EXTERN
-int onig_set_default_case_fold_flag(OnigCaseFoldType case_fold_flag);
-ONIG_EXTERN
-unsigned int onig_get_match_stack_limit_size(void);
-ONIG_EXTERN
-int onig_set_match_stack_limit_size(unsigned int size);
-ONIG_EXTERN
-int onig_end(void);
-ONIG_EXTERN
-const char* onig_version(void);
-ONIG_EXTERN
-const char* onig_copyright(void);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* ONIGURUMA_H */

  Deleted: vendor/mruby-4728070/src/opcode.h (+0 -154) 100644
===================================================================
--- vendor/mruby-4728070/src/opcode.h    2013-09-24 12:23:02 +0900 (d77e245)
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
-** opcode.h - RiteVM operation codes
-**
-** See Copyright Notice in mruby.h
-*/
-
-#ifndef OPCODE_H
-#define OPCODE_H
-
-#define MAXARG_Bx        ((1<<16)-1)
-#define MAXARG_sBx       (MAXARG_Bx>>1)         /* `sBx' is signed */
-
-/* instructions OP:A:B:C = 7:9:9:7 (32 bits) */
-/*              OP:A:Bx  = 7:9:16            */
-/*              OP:Ax    = 7:25              */
-
-#define GET_OPCODE(i) ((int)(((mrb_code)(i)) & 0x7f))
-#define GETARG_A(i)   ((int)((((mrb_code)(i)) >> 23) & 0x1ff))
-#define GETARG_B(i)   ((int)((((mrb_code)(i)) >> 14) & 0x1ff))
-#define GETARG_C(i)   ((int)((((mrb_code)(i)) >>  7) & 0x7f))
-#define GETARG_Bx(i)  ((int)((((mrb_code)(i)) >>  7) & 0xffff))
-#define GETARG_sBx(i) ((int)(GETARG_Bx(i)-MAXARG_sBx))
-#define GETARG_Ax(i)  ((int)((((mrb_code)(i)) >>  7) & 0x1ffffff))
-#define GETARG_UNPACK_b(i,n1,n2) ((int)((((mrb_code)(i)) >> (7+n2)) & (((1<<n1)-1))))
-#define GETARG_UNPACK_c(i,n1,n2) ((int)((((mrb_code)(i)) >> 7) & (((1<<n2)-1))))
-#define GETARG_b(i)   GETARG_UNPACK_b(i,14,2)
-#define GETARG_c(i)   GETARG_UNPACK_c(i,14,2)
-
-#define MKOPCODE(op)  ((op) & 0x7f)
-#define MKARG_A(c)    (((c) & 0x1ff) << 23)
-#define MKARG_B(c)    (((c) & 0x1ff) << 14)
-#define MKARG_C(c)    (((c) & 0x7f) <<  7)
-#define MKARG_Bx(v)   (((v) & 0xffff) << 7)
-#define MKARG_sBx(v)  MKARG_Bx((v)+MAXARG_sBx)
-#define MKARG_Ax(v)   (((v) & 0x1ffffff) << 7)
-#define MKARG_PACK(b,n1,c,n2) ((((b) & ((1<<n1)-1)) << (7+n2))|(((c) & ((1<<n2)-1)) << 7))
-#define MKARG_bc(b,c) MKARG_PACK(b,14,c,2)
-
-#define MKOP_A(op,a)        (MKOPCODE(op)|MKARG_A(a))
-#define MKOP_AB(op,a,b)     (MKOP_A(op,a)|MKARG_B(b))
-#define MKOP_ABC(op,a,b,c)  (MKOP_AB(op,a,b)|MKARG_C(c))
-#define MKOP_ABx(op,a,bx)   (MKOP_A(op,a)|MKARG_Bx(bx))
-#define MKOP_Bx(op,bx)      (MKOPCODE(op)|MKARG_Bx(bx))
-#define MKOP_sBx(op,sbx)    (MKOPCODE(op)|MKARG_sBx(sbx))
-#define MKOP_AsBx(op,a,sbx) (MKOP_A(op,a)|MKARG_sBx(sbx))
-#define MKOP_Ax(op,ax)      (MKOPCODE(op)|MKARG_Ax(ax))
-#define MKOP_Abc(op,a,b,c)  (MKOP_A(op,a)|MKARG_bc(b,c))
-
-enum {
-OP_NOP=0,/*                                                             */
-OP_MOVE,/*      A B     R(A) := R(B)                                    */
-OP_LOADL,/*     A Bx    R(A) := Lit(Bx)                                 */
-OP_LOADI,/*     A sBx   R(A) := sBx                                     */
-OP_LOADSYM,/*   A Bx    R(A) := Sym(Bx)                                 */
-OP_LOADNIL,/*   A       R(A) := nil                                     */
-OP_LOADSELF,/*  A       R(A) := self                                    */
-OP_LOADT,/*     A       R(A) := true                                    */
-OP_LOADF,/*     A       R(A) := false                                   */
-
-OP_GETGLOBAL,/* A Bx    R(A) := getglobal(Sym(Bx))                      */
-OP_SETGLOBAL,/* A Bx    setglobal(Sym(Bx), R(A))                        */
-OP_GETSPECIAL,/*A Bx    R(A) := Special[Bx]                             */
-OP_SETSPECIAL,/*A Bx    Special[Bx] := R(A)                             */
-OP_GETIV,/*     A Bx    R(A) := ivget(Sym(Bx))                          */
-OP_SETIV,/*     A Bx    ivset(Sym(Bx),R(A))                             */
-OP_GETCV,/*     A Bx    R(A) := cvget(Sym(Bx))                          */
-OP_SETCV,/*     A Bx    cvset(Sym(Bx),R(A))                             */
-OP_GETCONST,/*  A Bx    R(A) := constget(Sym(Bx))                       */
-OP_SETCONST,/*  A Bx    constset(Sym(Bx),R(A))                          */
-OP_GETMCNST,/*  A Bx    R(A) := R(A)::Sym(B)                            */
-OP_SETMCNST,/*  A Bx    R(A+1)::Sym(B) := R(A)                          */
-OP_GETUPVAR,/*  A B C   R(A) := uvget(B,C)                              */
-OP_SETUPVAR,/*  A B C   uvset(B,C,R(A))                                 */
-
-OP_JMP,/*       sBx     pc+=sBx                                         */
-OP_JMPIF,/*     A sBx   if R(A) pc+=sBx                                 */
-OP_JMPNOT,/*    A sBx   if !R(A) pc+=sBx                                */
-OP_ONERR,/*     sBx     rescue_push(pc+sBx)                             */
-OP_RESCUE,/*    A       clear(exc); R(A) := exception (ignore when A=0) */
-OP_POPERR,/*    A       A.times{rescue_pop()}                           */
-OP_RAISE,/*     A       raise(R(A))                                     */
-OP_EPUSH,/*     Bx      ensure_push(SEQ[Bx])                            */
-OP_EPOP,/*      A       A.times{ensure_pop().call}                      */
-
-OP_SEND,/*      A B C   R(A) := call(R(A),mSym(B),R(A+1),...,R(A+C))    */
-OP_SENDB,/*     A B C   R(A) := call(R(A),mSym(B),R(A+1),...,R(A+C),&R(A+C+1))*/
-OP_FSEND,/*     A B C   R(A) := fcall(R(A),mSym(B),R(A+1),...,R(A+C-1)) */
-OP_CALL,/*      A B C   R(A) := self.call(R(A),.., R(A+C))              */
-OP_SUPER,/*     A B C   R(A) := super(R(A+1),... ,R(A+C-1))             */
-OP_ARGARY,/*    A Bx    R(A) := argument array (16=6:1:5:4)             */
-OP_ENTER,/*     Ax      arg setup according to flags (24=5:5:1:5:5:1:1) */
-OP_KARG,/*      A B C   R(A) := kdict[mSym(B)]; if C kdict.rm(mSym(B))  */
-OP_KDICT,/*     A C     R(A) := kdict                                   */
-
-OP_RETURN,/*    A B     return R(A) (B=normal,in-block return/break)    */
-OP_TAILCALL,/*  A B C   return call(R(A),mSym(B),*R(C))                 */
-OP_BLKPUSH,/*   A Bx    R(A) := block (16=6:1:5:4)                      */
-
-OP_ADD,/*       A B C   R(A) := R(A)+R(A+1) (mSyms[B]=:+,C=1)           */
-OP_ADDI,/*      A B C   R(A) := R(A)+C (mSyms[B]=:+)                    */
-OP_SUB,/*       A B C   R(A) := R(A)-R(A+1) (mSyms[B]=:-,C=1)           */
-OP_SUBI,/*      A B C   R(A) := R(A)-C (mSyms[B]=:-)                    */
-OP_MUL,/*       A B C   R(A) := R(A)*R(A+1) (mSyms[B]=:*,C=1)           */
-OP_DIV,/*       A B C   R(A) := R(A)/R(A+1) (mSyms[B]=:/,C=1)           */
-OP_EQ,/*        A B C   R(A) := R(A)==R(A+1) (mSyms[B]=:==,C=1)         */
-OP_LT,/*        A B C   R(A) := R(A)<R(A+1)  (mSyms[B]=:<,C=1)          */
-OP_LE,/*        A B C   R(A) := R(A)<=R(A+1) (mSyms[B]=:<=,C=1)         */
-OP_GT,/*        A B C   R(A) := R(A)>R(A+1)  (mSyms[B]=:>,C=1)          */
-OP_GE,/*        A B C   R(A) := R(A)>=R(A+1) (mSyms[B]=:>=,C=1)         */
-
-OP_ARRAY,/*     A B C   R(A) := ary_new(R(B),R(B+1)..R(B+C))            */
-OP_ARYCAT,/*    A B     ary_cat(R(A),R(B))                              */
-OP_ARYPUSH,/*   A B     ary_push(R(A),R(B))                             */
-OP_AREF,/*      A B C   R(A) := R(B)[C]                                 */
-OP_ASET,/*      A B C   R(B)[C] := R(A)                                 */
-OP_APOST,/*     A B C   *R(A),R(A+1)..R(A+C) := R(A)                    */
-
-OP_STRING,/*    A Bx    R(A) := str_dup(Lit(Bx))                        */
-OP_STRCAT,/*    A B     str_cat(R(A),R(B))                              */
-
-OP_HASH,/*      A B C   R(A) := hash_new(R(B),R(B+1)..R(B+C))           */
-OP_LAMBDA,/*    A Bz Cz R(A) := lambda(SEQ[Bz],Cm)                      */
-OP_RANGE,/*     A B C   R(A) := range_new(R(B),R(B+1),C)                */
-
-OP_OCLASS,/*    A       R(A) := ::Object                                */
-OP_CLASS,/*     A B     R(A) := newclass(R(A),mSym(B),R(A+1))           */
-OP_MODULE,/*    A B     R(A) := newmodule(R(A),mSym(B))                 */
-OP_EXEC,/*      A Bx    R(A) := blockexec(R(A),SEQ[Bx])                 */
-OP_METHOD,/*    A B     R(A).newmethod(mSym(B),R(A+1))                  */
-OP_SCLASS,/*    A B     R(A) := R(B).singleton_class                    */
-OP_TCLASS,/*    A       R(A) := target_class                            */
-
-OP_DEBUG,/*     A       print R(A)                                      */
-OP_STOP,/*              stop VM                                         */
-OP_ERR,/*       Bx      raise RuntimeError with message Lit(Bx)         */
-
-OP_RSVD1,/*             reserved instruction #1                         */
-OP_RSVD2,/*             reserved instruction #2                         */
-OP_RSVD3,/*             reserved instruction #3                         */
-OP_RSVD4,/*             reserved instruction #4                         */
-OP_RSVD5,/*             reserved instruction #5                         */
-};
-
-#define OP_L_STRICT  1
-#define OP_L_CAPTURE 2
-#define OP_L_METHOD  OP_L_STRICT
-#define OP_L_LAMBDA  (OP_L_STRICT|OP_L_CAPTURE)
-#define OP_L_BLOCK   OP_L_CAPTURE
-
-#define OP_R_NORMAL 0
-#define OP_R_BREAK  1
-#define OP_R_RETURN 2
-
-#endif  /* OPCODE_H */

  Deleted: vendor/mruby-4728070/src/parse.c (+0 -11656) 100644
===================================================================
--- vendor/mruby-4728070/src/parse.c    2013-09-24 12:23:02 +0900 (d1c43fa)
+++ /dev/null
@@ -1,11656 +0,0 @@
-/* A Bison parser, made by GNU Bison 2.5.  */
-
-/* Bison implementation for Yacc-like parsers in C
-   
-      Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
-   
-   This program is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-   
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-   
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
-
-/* As a special exception, you may create a larger work that contains
-   part or all of the Bison parser skeleton and distribute that work
-   under terms of your choice, so long as that work isn't itself a
-   parser generator using the skeleton or a modified version thereof
-   as a parser skeleton.  Alternatively, if you modify or redistribute
-   the parser skeleton itself, you may (at your option) remove this
-   special exception, which will cause the skeleton and the resulting
-   Bison output files to be licensed under the GNU General Public
-   License without this special exception.
-   
-   This special exception was added by the Free Software Foundation in
-   version 2.2 of Bison.  */
-
-/* C LALR(1) parser skeleton written by Richard Stallman, by
-   simplifying the original so-called "semantic" parser.  */
-
-/* All symbols defined below should begin with yy or YY, to avoid
-   infringing on user name space.  This should be done even for local
-   variables, as they might otherwise be expanded by user macros.
-   There are some unavoidable exceptions within include files to
-   define necessary library symbols; they are noted "INFRINGES ON
-   USER NAME SPACE" below.  */
-
-/* Identify Bison output.  */
-#define YYBISON 1
-
-/* Bison version.  */
-#define YYBISON_VERSION "2.5"
-
-/* Skeleton name.  */
-#define YYSKELETON_NAME "yacc.c"
-
-/* Pure parsers.  */
-#define YYPURE 1
-
-/* Push parsers.  */
-#define YYPUSH 0
-
-/* Pull parsers.  */
-#define YYPULL 1
-
-/* Using locations.  */
-#define YYLSP_NEEDED 0
-
-
-
-/* Copy the first part of user declarations.  */
-
-/* Line 268 of yacc.c  */
-#line 7 "/home/kou/work/c/groonga.central/vendor/mruby/mruby.master/src/parse.y"
-
-#undef PARSER_TEST
-#undef PARSER_DEBUG
-
-#define YYDEBUG 1
-#define YYERROR_VERBOSE 1
-/*
- * Force yacc to use our memory management.  This is a little evil because
- * the macros assume that "parser_state *p" is in scope
- */
-#define YYMALLOC(n)    mrb_malloc(p->mrb, (n))
-#define YYFREE(o)      mrb_free(p->mrb, (o))
-#define YYSTACK_USE_ALLOCA 0
-
-#include "mruby.h"
-#include "mruby/compile.h"
-#include "mruby/proc.h"
-#include "node.h"
-
-#include <stdio.h>
-#include <errno.h>
-#include <ctype.h>
-#include <string.h>
-
-#define YYLEX_PARAM p
-
-typedef mrb_ast_node node;
-typedef struct mrb_parser_state parser_state;
-
-static int yylex(void *lval, parser_state *p);
-static void yyerror(parser_state *p, const char *s);
-static void yywarn(parser_state *p, const char *s);
-static void yywarning(parser_state *p, const char *s);
-static void backref_error(parser_state *p, node *n);
-
-#define identchar(c) (isalnum(c) || (c) == '_' || !isascii(c))
-
-typedef unsigned int stack_type;
-
-#define BITSTACK_PUSH(stack, n) ((stack) = ((stack)<<1)|((n)&1))
-#define BITSTACK_POP(stack)     ((stack) = (stack) >> 1)
-#define BITSTACK_LEXPOP(stack)  ((stack) = ((stack) >> 1) | ((stack) & 1))
-#define BITSTACK_SET_P(stack)   ((stack)&1)
-
-#define COND_PUSH(n)    BITSTACK_PUSH(p->cond_stack, (n))
-#define COND_POP()      BITSTACK_POP(p->cond_stack)
-#define COND_LEXPOP()   BITSTACK_LEXPOP(p->cond_stack)
-#define COND_P()        BITSTACK_SET_P(p->cond_stack)
-
-#define CMDARG_PUSH(n)  BITSTACK_PUSH(p->cmdarg_stack, (n))
-#define CMDARG_POP()    BITSTACK_POP(p->cmdarg_stack)
-#define CMDARG_LEXPOP() BITSTACK_LEXPOP(p->cmdarg_stack)
-#define CMDARG_P()      BITSTACK_SET_P(p->cmdarg_stack)
-
-#define sym(x) ((mrb_sym)(intptr_t)(x))
-#define nsym(x) ((node*)(intptr_t)(x))
-
-static mrb_sym
-intern_gen(parser_state *p, const char *s)
-{
-  return mrb_intern(p->mrb, s);
-}
-#define intern(s) intern_gen(p,(s))
-
-static void
-cons_free_gen(parser_state *p, node *cons)
-{
-  cons->cdr = p->cells;
-  p->cells = cons;
-}
-#define cons_free(c) cons_free_gen(p, (c))
-
-static void*
-parser_palloc(parser_state *p, size_t size)
-{
-  void *m = mrb_pool_alloc(p->pool, size);
-
-  if (!m) {
-    longjmp(p->jmp, 1);
-  }
-  return m;
-}
-
-static node*
-cons_gen(parser_state *p, node *car, node *cdr)
-{
-  node *c;
-
-  if (p->cells) {
-    c = p->cells;
-    p->cells = p->cells->cdr;
-  }
-  else {
-    c = (node *)parser_palloc(p, sizeof(mrb_ast_node));
-  }
-
-  c->car = car;
-  c->cdr = cdr;
-  c->lineno = p->lineno;
-  return c;
-}
-#define cons(a,b) cons_gen(p,(a),(b))
-
-static node*
-list1_gen(parser_state *p, node *a)
-{
-  return cons(a, 0);
-}
-#define list1(a) list1_gen(p, (a))
-
-static node*
-list2_gen(parser_state *p, node *a, node *b)
-{
-  return cons(a, cons(b,0));
-}
-#define list2(a,b) list2_gen(p, (a),(b))
-
-static node*
-list3_gen(parser_state *p, node *a, node *b, node *c)
-{
-  return cons(a, cons(b, cons(c,0)));
-}
-#define list3(a,b,c) list3_gen(p, (a),(b),(c))
-
-static node*
-list4_gen(parser_state *p, node *a, node *b, node *c, node *d)
-{
-  return cons(a, cons(b, cons(c, cons(d, 0))));
-}
-#define list4(a,b,c,d) list4_gen(p, (a),(b),(c),(d))
-
-static node*
-list5_gen(parser_state *p, node *a, node *b, node *c, node *d, node *e)
-{
-  return cons(a, cons(b, cons(c, cons(d, cons(e, 0)))));
-}
-#define list5(a,b,c,d,e) list5_gen(p, (a),(b),(c),(d),(e))
-
-static node*
-list6_gen(parser_state *p, node *a, node *b, node *c, node *d, node *e, node *f)
-{
-  return cons(a, cons(b, cons(c, cons(d, cons(e, cons(f, 0))))));
-}
-#define list6(a,b,c,d,e,f) list6_gen(p, (a),(b),(c),(d),(e),(f))
-
-static node*
-append_gen(parser_state *p, node *a, node *b)
-{
-  node *c = a;
-
-  if (!a) return b;
-  while (c->cdr) {
-    c = c->cdr;
-  }
-  if (b) {
-    c->cdr = b;
-  }
-  return a;
-}
-#define append(a,b) append_gen(p,(a),(b))
-#define push(a,b) append_gen(p,(a),list1(b))
-
-static char*
-parser_strndup(parser_state *p, const char *s, size_t len)
-{
-  char *b = (char *)parser_palloc(p, len+1);
-
-  memcpy(b, s, len);
-  b[len] = '\0';
-  return b;
-}
-#define strndup(s,len) parser_strndup(p, s, len)
-
-static char*
-parser_strdup(parser_state *p, const char *s)
-{
-  return parser_strndup(p, s, strlen(s));
-}
-#undef strdup
-#define strdup(s) parser_strdup(p, s)
-
-// xxx -----------------------------
-
-static node*
-local_switch(parser_state *p)
-{
-  node *prev = p->locals;
-
-  p->locals = cons(0, 0);
-  return prev;
-}
-
-static void
-local_resume(parser_state *p, node *prev)
-{
-  p->locals = prev;
-}
-
-static void
-local_nest(parser_state *p)
-{
-  p->locals = cons(0, p->locals);
-}
-
-static void
-local_unnest(parser_state *p)
-{
-  p->locals = p->locals->cdr;
-}
-
-static int
-local_var_p(parser_state *p, mrb_sym sym)
-{
-  node *l = p->locals;
-
-  while (l) {
-    node *n = l->car;
-    while (n) {
-      if (sym(n->car) == sym) return 1;
-      n = n->cdr;
-    }
-    l = l->cdr;
-  }
-  return 0;
-}
-
-static void
-local_add_f(parser_state *p, mrb_sym sym)
-{
-  p->locals->car = push(p->locals->car, nsym(sym));
-}
-
-static void
-local_add(parser_state *p, mrb_sym sym)
-{
-  if (!local_var_p(p, sym)) {
-    local_add_f(p, sym);
-  }
-}
-
-// (:scope (vars..) (prog...))
-static node*
-new_scope(parser_state *p, node *body)
-{
-  return cons((node*)NODE_SCOPE, cons(p->locals->car, body));
-}
-
-// (:begin prog...)
-static node*
-new_begin(parser_state *p, node *body)
-{
-  if (body) 
-    return list2((node*)NODE_BEGIN, body);
-  return cons((node*)NODE_BEGIN, 0);
-}
-
-#define newline_node(n) (n)
-
-// (:rescue body rescue else)
-static node*
-new_rescue(parser_state *p, node *body, node *resq, node *els)
-{
-  return list4((node*)NODE_RESCUE, body, resq, els);
-}
-
-// (:ensure body ensure)
-static node*
-new_ensure(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_ENSURE, cons(a, cons(0, b)));
-}
-
-// (:nil)
-static node*
-new_nil(parser_state *p)
-{
-  return list1((node*)NODE_NIL);
-}
-
-// (:true)
-static node*
-new_true(parser_state *p)
-{
-  return list1((node*)NODE_TRUE);
-}
-
-// (:false)
-static node*
-new_false(parser_state *p)
-{
-  return list1((node*)NODE_FALSE);
-}
-
-// (:alias new old)
-static node*
-new_alias(parser_state *p, mrb_sym a, mrb_sym b)
-{
-  return cons((node*)NODE_ALIAS, cons(nsym(a), nsym(b)));
-}
-
-// (:if cond then else)
-static node*
-new_if(parser_state *p, node *a, node *b, node *c)
-{
-  return list4((node*)NODE_IF, a, b, c);
-}
-
-// (:unless cond then else)
-static node*
-new_unless(parser_state *p, node *a, node *b, node *c)
-{
-  return list4((node*)NODE_IF, a, c, b);
-}
-
-// (:while cond body)
-static node*
-new_while(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_WHILE, cons(a, b));
-}
-
-// (:until cond body)
-static node*
-new_until(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_UNTIL, cons(a, b));
-}
-
-// (:for var obj body)
-static node*
-new_for(parser_state *p, node *v, node *o, node *b)
-{
-  return list4((node*)NODE_FOR, v, o, b);
-}
-
-// (:case a ((when ...) body) ((when...) body))
-static node*
-new_case(parser_state *p, node *a, node *b)
-{
-  node *n = list2((node*)NODE_CASE, a);
-  node *n2 = n;
-
-  while (n2->cdr) {
-    n2 = n2->cdr;
-  }
-  n2->cdr = b;
-  return n;
-}
-
-// (:postexe a)
-static node*
-new_postexe(parser_state *p, node *a)
-{
-  return cons((node*)NODE_POSTEXE, a);
-}
-
-// (:self)
-static node*
-new_self(parser_state *p)
-{
-  return list1((node*)NODE_SELF);
-}
-
-// (:call a b c)
-static node*
-new_call(parser_state *p, node *a, mrb_sym b, node *c)
-{
-  return list4((node*)NODE_CALL, a, nsym(b), c);
-}
-
-// (:fcall self mid args)
-static node*
-new_fcall(parser_state *p, mrb_sym b, node *c)
-{
-  return list4((node*)NODE_FCALL, new_self(p), nsym(b), c);
-}
-
-#if 0
-// (:vcall self mid)
-static node*
-new_vcall(parser_state *p, mrb_sym b)
-{
-  return list3((node*)NODE_VCALL, new_self(p), (node*)b);
-}
-#endif
-
-// (:super . c)
-static node*
-new_super(parser_state *p, node *c)
-{
-  return cons((node*)NODE_SUPER, c);
-}
-
-// (:zsuper)
-static node*
-new_zsuper(parser_state *p)
-{
-  return list1((node*)NODE_ZSUPER);
-}
-
-// (:yield . c)
-static node*
-new_yield(parser_state *p, node *c)
-{
-  if (c) {
-    if (c->cdr) {
-      yyerror(p, "both block arg and actual block given");
-    }
-    return cons((node*)NODE_YIELD, c->car);
-  }
-  return cons((node*)NODE_YIELD, 0);
-}
-
-// (:return . c)
-static node*
-new_return(parser_state *p, node *c)
-{
-  return cons((node*)NODE_RETURN, c);
-}
-
-// (:break . c)
-static node*
-new_break(parser_state *p, node *c)
-{
-  return cons((node*)NODE_BREAK, c);
-}
-
-// (:next . c)
-static node*
-new_next(parser_state *p, node *c)
-{
-  return cons((node*)NODE_NEXT, c);
-}
-
-// (:redo)
-static node*
-new_redo(parser_state *p)
-{
-  return list1((node*)NODE_REDO);
-}
-
-// (:retry)
-static node*
-new_retry(parser_state *p)
-{
-  return list1((node*)NODE_RETRY);
-}
-
-// (:dot2 a b)
-static node*
-new_dot2(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_DOT2, cons(a, b));
-}
-
-// (:dot3 a b)
-static node*
-new_dot3(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_DOT3, cons(a, b));
-}
-
-// (:colon2 b c)
-static node*
-new_colon2(parser_state *p, node *b, mrb_sym c)
-{
-  return cons((node*)NODE_COLON2, cons(b, nsym(c)));
-}
-
-// (:colon3 . c)
-static node*
-new_colon3(parser_state *p, mrb_sym c)
-{
-  return cons((node*)NODE_COLON3, nsym(c));
-}
-
-// (:and a b)
-static node*
-new_and(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_AND, cons(a, b));
-}
-
-// (:or a b)
-static node*
-new_or(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_OR, cons(a, b));
-}
-
-// (:array a...)
-static node*
-new_array(parser_state *p, node *a)
-{
-  return cons((node*)NODE_ARRAY, a);
-}
-
-// (:splat . a)
-static node*
-new_splat(parser_state *p, node *a)
-{
-  return cons((node*)NODE_SPLAT, a);
-}
-
-// (:hash (k . v) (k . v)...)
-static node*
-new_hash(parser_state *p, node *a)
-{
-  return cons((node*)NODE_HASH, a);
-}
-
-// (:sym . a)
-static node*
-new_sym(parser_state *p, mrb_sym sym)
-{
-  return cons((node*)NODE_SYM, nsym(sym));
-}
-
-static mrb_sym
-new_strsym(parser_state *p, node* str)
-{
-  const char *s = (const char*)str->cdr->car;
-  size_t len = (size_t)str->cdr->cdr;
-
-  return mrb_intern2(p->mrb, s, len);
-}
-
-// (:lvar . a)
-static node*
-new_lvar(parser_state *p, mrb_sym sym)
-{
-  return cons((node*)NODE_LVAR, nsym(sym));
-}
-
-// (:gvar . a)
-static node*
-new_gvar(parser_state *p, mrb_sym sym)
-{
-  return cons((node*)NODE_GVAR, nsym(sym));
-}
-
-// (:ivar . a)
-static node*
-new_ivar(parser_state *p, mrb_sym sym)
-{
-  return cons((node*)NODE_IVAR, nsym(sym));
-}
-
-// (:cvar . a)
-static node*
-new_cvar(parser_state *p, mrb_sym sym)
-{
-  return cons((node*)NODE_CVAR, nsym(sym));
-}
-
-// (:const . a)
-static node*
-new_const(parser_state *p, mrb_sym sym)
-{
-  return cons((node*)NODE_CONST, nsym(sym));
-}
-
-// (:undef a...)
-static node*
-new_undef(parser_state *p, mrb_sym sym)
-{
-  return cons((node*)NODE_UNDEF, nsym(sym));
-}
-
-// (:class class super body)
-static node*
-new_class(parser_state *p, node *c, node *s, node *b)
-{
-  return list4((node*)NODE_CLASS, c, s, cons(p->locals->car, b));
-}
-
-// (:sclass obj body)
-static node*
-new_sclass(parser_state *p, node *o, node *b)
-{
-  return list3((node*)NODE_SCLASS, o, cons(p->locals->car, b));
-}
-
-// (:module module body)
-static node*
-new_module(parser_state *p, node *m, node *b)
-{
-  return list3((node*)NODE_MODULE, m, cons(p->locals->car, b));
-}
-
-// (:def m lv (arg . body))
-static node*
-new_def(parser_state *p, mrb_sym m, node *a, node *b)
-{
-  return list5((node*)NODE_DEF, nsym(m), p->locals->car, a, b);
-}
-
-// (:sdef obj m lv (arg . body))
-static node*
-new_sdef(parser_state *p, node *o, mrb_sym m, node *a, node *b)
-{
-  return list6((node*)NODE_SDEF, o, nsym(m), p->locals->car, a, b);
-}
-
-// (:arg . sym)
-static node*
-new_arg(parser_state *p, mrb_sym sym)
-{
-  return cons((node*)NODE_ARG, nsym(sym));
-}
-
-// (m o r m2 b)
-// m: (a b c)
-// o: ((a . e1) (b . e2))
-// r: a
-// m2: (a b c)
-// b: a
-static node*
-new_args(parser_state *p, node *m, node *opt, mrb_sym rest, node *m2, mrb_sym blk)
-{
-  node *n;
-
-  n = cons(m2, nsym(blk));
-  n = cons(nsym(rest), n);
-  n = cons(opt, n);
-  return cons(m, n);
-}
-
-// (:block_arg . a)
-static node*
-new_block_arg(parser_state *p, node *a)
-{
-  return cons((node*)NODE_BLOCK_ARG, a);
-}
-
-// (:block arg body)
-static node*
-new_block(parser_state *p, node *a, node *b)
-{
-  return list4((node*)NODE_BLOCK, p->locals->car, a, b);
-}
-
-// (:lambda arg body)
-static node*
-new_lambda(parser_state *p, node *a, node *b)
-{
-  return list4((node*)NODE_LAMBDA, p->locals->car, a, b);
-}
-
-// (:asgn lhs rhs)
-static node*
-new_asgn(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_ASGN, cons(a, b));
-}
-
-// (:masgn mlhs=(pre rest post)  mrhs)
-static node*
-new_masgn(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_MASGN, cons(a, b));
-}
-
-// (:asgn lhs rhs)
-static node*
-new_op_asgn(parser_state *p, node *a, mrb_sym op, node *b)
-{
-  return list4((node*)NODE_OP_ASGN, a, nsym(op), b);
-}
-
-// (:int . i)
-static node*
-new_int(parser_state *p, const char *s, int base)
-{
-  return list3((node*)NODE_INT, (node*)strdup(s), (node*)(intptr_t)base);
-}
-
-// (:float . i)
-static node*
-new_float(parser_state *p, const char *s)
-{
-  return cons((node*)NODE_FLOAT, (node*)strdup(s));
-}
-
-// (:str . (s . len))
-static node*
-new_str(parser_state *p, const char *s, int len)
-{
-  return cons((node*)NODE_STR, cons((node*)strndup(s, len), (node*)(intptr_t)len));
-}
-
-// (:dstr . a)
-static node*
-new_dstr(parser_state *p, node *a)
-{
-  return cons((node*)NODE_DSTR, a);
-}
-
-// (:dsym . a)
-static node*
-new_dsym(parser_state *p, node *a)
-{
-  return cons((node*)NODE_DSYM, new_dstr(p, a));
-}
-
-// (:backref . n)
-static node*
-new_back_ref(parser_state *p, int n)
-{
-  return cons((node*)NODE_BACK_REF, (node*)(intptr_t)n);
-}
-
-// (:nthref . n)
-static node*
-new_nth_ref(parser_state *p, int n)
-{
-  return cons((node*)NODE_NTH_REF, (node*)(intptr_t)n);
-}
-
-static void
-new_bv(parser_state *p, mrb_sym id)
-{
-}
-
-// xxx -----------------------------
-
-// (:call a op)
-static node*
-call_uni_op(parser_state *p, node *recv, char *m)
-{
-  return new_call(p, recv, intern(m), 0);
-}
-
-// (:call a op b)
-static node*
-call_bin_op(parser_state *p, node *recv, char *m, node *arg1)
-{
-  return new_call(p, recv, intern(m), list1(list1(arg1)));
-}
-
-// (:match (a . b))
-static node*
-match_op(parser_state *p, node *a, node *b)
-{
-  return cons((node*)NODE_MATCH, cons((node*)a, (node*)b));
-}
-
-
-static void
-args_with_block(parser_state *p, node *a, node *b)
-{
-  if (b) {
-    if (a->cdr) {
-      yyerror(p, "both block arg and actual block given");
-    }
-    a->cdr = b;
-  }
-}
-
-static void
-call_with_block(parser_state *p, node *a, node *b)
-{
-  node *n;
-
-  if (a->car == (node*)NODE_SUPER ||
-      a->car == (node*)NODE_ZSUPER) {
-    if (!a->cdr) a->cdr = cons(0, b);
-    else {
-      args_with_block(p, a->cdr, b);
-    }
-  }
-  else {
-    n = a->cdr->cdr->cdr;
-    if (!n->car) n->car = cons(0, b);
-    else {
-      args_with_block(p, n->car, b);
-    }
-  }
-}
-
-static node*
-negate_lit(parser_state *p, node *n)
-{
-  return cons((node*)NODE_NEGATE, n);
-}
-
-static node*
-cond(node *n)
-{
-  return n;
-}
-
-static node*
-ret_args(parser_state *p, node *n)
-{
-  if (n->cdr) {
-    yyerror(p, "block argument should not be given");
-  }
-  if (!n->car->cdr) return n->car->car;
-  return new_array(p, n->car);
-}
-
-static void
-assignable(parser_state *p, node *lhs)
-{
-  if ((int)(intptr_t)lhs->car == NODE_LVAR) {
-    local_add(p, sym(lhs->cdr));
-  }
-}
-
-static node*
-var_reference(parser_state *p, node *lhs)
-{
-  node *n;
-
-  if ((int)(intptr_t)lhs->car == NODE_LVAR) {
-    if (!local_var_p(p, sym(lhs->cdr))) {
-      n = new_fcall(p, sym(lhs->cdr), 0);
-      cons_free(lhs);
-      return n;
-    }
-  }
-
-  return lhs;
-}
-
-// xxx -----------------------------
-
-
-
-/* Line 268 of yacc.c  */
-#line 902 "build/host//home/kou/work/c/groonga.central/vendor/mruby/mruby.master/src/y.tab.c"
-
-/* Enabling traces.  */
-#ifndef YYDEBUG
-# define YYDEBUG 0
-#endif
-
-/* Enabling verbose error messages.  */
-#ifdef YYERROR_VERBOSE
-# undef YYERROR_VERBOSE
-# define YYERROR_VERBOSE 1
-#else
-# define YYERROR_VERBOSE 0
-#endif
-
-/* Enabling the token table.  */
-#ifndef YYTOKEN_TABLE
-# define YYTOKEN_TABLE 0
-#endif
-
-
-/* Tokens.  */
-#ifndef YYTOKENTYPE
-# define YYTOKENTYPE
-   /* Put the tokens into the symbol table, so that GDB and other debuggers
-      know about them.  */
-   enum yytokentype {
-     keyword_class = 258,
-     keyword_module = 259,
-     keyword_def = 260,
-     keyword_undef = 261,
-     keyword_begin = 262,
-     keyword_rescue = 263,
-     keyword_ensure = 264,
-     keyword_end = 265,
-     keyword_if = 266,
-     keyword_unless = 267,
-     keyword_then = 268,
-     keyword_elsif = 269,
-     keyword_else = 270,
-     keyword_case = 271,
-     keyword_when = 272,
-     keyword_while = 273,
-     keyword_until = 274,
-     keyword_for = 275,
-     keyword_break = 276,
-     keyword_next = 277,
-     keyword_redo = 278,
-     keyword_retry = 279,
-     keyword_in = 280,
-     keyword_do = 281,
-     keyword_do_cond = 282,
-     keyword_do_block = 283,
-     keyword_do_LAMBDA = 284,
-     keyword_return = 285,
-     keyword_yield = 286,
-     keyword_super = 287,
-     keyword_self = 288,
-     keyword_nil = 289,
-     keyword_true = 290,
-     keyword_false = 291,
-     keyword_and = 292,
-     keyword_or = 293,
-     keyword_not = 294,
-     modifier_if = 295,
-     modifier_unless = 296,
-     modifier_while = 297,
-     modifier_until = 298,
-     modifier_rescue = 299,
-     keyword_alias = 300,
-     keyword_BEGIN = 301,
-     keyword_END = 302,
-     keyword__LINE__ = 303,
-     keyword__FILE__ = 304,
-     keyword__ENCODING__ = 305,
-     tIDENTIFIER = 306,
-     tFID = 307,
-     tGVAR = 308,
-     tIVAR = 309,
-     tCONSTANT = 310,
-     tCVAR = 311,
-     tLABEL = 312,
-     tINTEGER = 313,
-     tFLOAT = 314,
-     tCHAR = 315,
-     tREGEXP = 316,
-     tSTRING = 317,
-     tSTRING_PART = 318,
-     tNTH_REF = 319,
-     tBACK_REF = 320,
-     tREGEXP_END = 321,
-     tUPLUS = 322,
-     tUMINUS = 323,
-     tPOW = 324,
-     tCMP = 325,
-     tEQ = 326,
-     tEQQ = 327,
-     tNEQ = 328,
-     tGEQ = 329,
-     tLEQ = 330,
-     tANDOP = 331,
-     tOROP = 332,
-     tMATCH = 333,
-     tNMATCH = 334,
-     tDOT2 = 335,
-     tDOT3 = 336,
-     tAREF = 337,
-     tASET = 338,
-     tLSHFT = 339,
-     tRSHFT = 340,
-     tCOLON2 = 341,
-     tCOLON3 = 342,
-     tOP_ASGN = 343,
-     tASSOC = 344,
-     tLPAREN = 345,
-     tLPAREN_ARG = 346,
-     tRPAREN = 347,
-     tLBRACK = 348,
-     tLBRACE = 349,
-     tLBRACE_ARG = 350,
-     tSTAR = 351,
-     tAMPER = 352,
-     tLAMBDA = 353,
-     tSYMBEG = 354,
-     tREGEXP_BEG = 355,
-     tWORDS_BEG = 356,
-     tQWORDS_BEG = 357,
-     tSTRING_BEG = 358,
-     tSTRING_DVAR = 359,
-     tLAMBEG = 360,
-     tLOWEST = 361,
-     tUMINUS_NUM = 362,
-     idNULL = 363,
-     idRespond_to = 364,
-     idIFUNC = 365,
-     idCFUNC = 366,
-     id_core_set_method_alias = 367,
-     id_core_set_variable_alias = 368,
-     id_core_undef_method = 369,
-     id_core_define_method = 370,
-     id_core_define_singleton_method = 371,
-     id_core_set_postexe = 372,
-     tLAST_TOKEN = 373
-   };
-#endif
-
-
-
-#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE
-{
-
-/* Line 293 of yacc.c  */
-#line 841 "/home/kou/work/c/groonga.central/vendor/mruby/mruby.master/src/parse.y"
-
-    node *nd;
-    mrb_sym id;
-    int num;
-    unsigned int stack;
-    const struct vtable *vars;
-
-
-
-/* Line 293 of yacc.c  */
-#line 1066 "build/host//home/kou/work/c/groonga.central/vendor/mruby/mruby.master/src/y.tab.c"
-} YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
-#endif
-
-
-/* Copy the second part of user declarations.  */
-
-
-/* Line 343 of yacc.c  */
-#line 1078 "build/host//home/kou/work/c/groonga.central/vendor/mruby/mruby.master/src/y.tab.c"
-
-#ifdef short
-# undef short
-#endif
-
-#ifdef YYTYPE_UINT8
-typedef YYTYPE_UINT8 yytype_uint8;
-#else
-typedef unsigned char yytype_uint8;
-#endif
-
-#ifdef YYTYPE_INT8
-typedef YYTYPE_INT8 yytype_int8;
-#elif (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
-typedef signed char yytype_int8;
-#else
-typedef short int yytype_int8;
-#endif
-
-#ifdef YYTYPE_UINT16
-typedef YYTYPE_UINT16 yytype_uint16;
-#else
-typedef unsigned short int yytype_uint16;
-#endif
-
-#ifdef YYTYPE_INT16
-typedef YYTYPE_INT16 yytype_int16;
-#else
-typedef short int yytype_int16;
-#endif
-
-#ifndef YYSIZE_T
-# ifdef __SIZE_TYPE__
-#  define YYSIZE_T __SIZE_TYPE__
-# elif defined size_t
-#  define YYSIZE_T size_t
-# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
-#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
-#  define YYSIZE_T size_t
-# else
-#  define YYSIZE_T unsigned int
-# endif
-#endif
-
-#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
-
-#ifndef YY_
-# if defined YYENABLE_NLS && YYENABLE_NLS
-#  if ENABLE_NLS
-#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
-#   define YY_(msgid) dgettext ("bison-runtime", msgid)
-#  endif
-# endif
-# ifndef YY_
-#  define YY_(msgid) msgid
-# endif
-#endif
-
-/* Suppress unused-variable warnings by "using" E.  */
-#if ! defined lint || defined __GNUC__
-# define YYUSE(e) ((void) (e))
-#else
-# define YYUSE(e) /* empty */
-#endif
-
-/* Identity function, used to suppress warnings about constant conditions.  */
-#ifndef lint
-# define YYID(n) (n)
-#else
-#if (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
-static int
-YYID (int yyi)
-#else
-static int
-YYID (yyi)
-    int yyi;
-#endif
-{
-  return yyi;
-}
-#endif
-
-#if ! defined yyoverflow || YYERROR_VERBOSE
-
-/* The parser invokes alloca or malloc; define the necessary symbols.  */
-
-# ifdef YYSTACK_USE_ALLOCA
-#  if YYSTACK_USE_ALLOCA
-#   ifdef __GNUC__
-#    define YYSTACK_ALLOC __builtin_alloca
-#   elif defined __BUILTIN_VA_ARG_INCR
-#    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
-#   elif defined _AIX
-#    define YYSTACK_ALLOC __alloca
-#   elif defined _MSC_VER
-#    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
-#    define alloca _alloca
-#   else
-#    define YYSTACK_ALLOC alloca
-#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
-#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-#     ifndef EXIT_SUCCESS
-#      define EXIT_SUCCESS 0
-#     endif
-#    endif
-#   endif
-#  endif
-# endif
-
-# ifdef YYSTACK_ALLOC
-   /* Pacify GCC's `empty if-body' warning.  */
-#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
-#  ifndef YYSTACK_ALLOC_MAXIMUM
-    /* The OS might guarantee only one guard page at the bottom of the stack,
-       and a page size can be as small as 4096 bytes.  So we cannot safely
-       invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
-       to allow for a few compiler-allocated temporary stack slots.  */
-#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
-#  endif
-# else
-#  define YYSTACK_ALLOC YYMALLOC
-#  define YYSTACK_FREE YYFREE
-#  ifndef YYSTACK_ALLOC_MAXIMUM
-#   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
-#  endif
-#  if (defined __cplusplus && ! defined EXIT_SUCCESS \
-       && ! ((defined YYMALLOC || defined malloc) \
-	     && (defined YYFREE || defined free)))
-#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-#   ifndef EXIT_SUCCESS
-#    define EXIT_SUCCESS 0
-#   endif
-#  endif
-#  ifndef YYMALLOC
-#   define YYMALLOC malloc
-#   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
-void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
-#   endif
-#  endif
-#  ifndef YYFREE
-#   define YYFREE free
-#   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
-     || defined __cplusplus || defined _MSC_VER)
-void free (void *); /* INFRINGES ON USER NAME SPACE */
-#   endif
-#  endif
-# endif
-#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
-
-
-#if (! defined yyoverflow \
-     && (! defined __cplusplus \
-	 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
-
-/* A type that is properly aligned for any stack member.  */
-union yyalloc
-{
-  yytype_int16 yyss_alloc;
-  YYSTYPE yyvs_alloc;
-};
-
-/* The size of the maximum gap between one aligned stack and the next.  */
-# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
-
-/* The size of an array large to enough to hold all stacks, each with
-   N elements.  */
-# define YYSTACK_BYTES(N) \
-     ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
-      + YYSTACK_GAP_MAXIMUM)
-
-# define YYCOPY_NEEDED 1
-
-/* Relocate STACK from its old location to the new one.  The
-   local variables YYSIZE and YYSTACKSIZE give the old and new number of
-   elements in the stack, and YYPTR gives the new location of the
-   stack.  Advance YYPTR to a properly aligned location for the next
-   stack.  */
-# define YYSTACK_RELOCATE(Stack_alloc, Stack)				\
-    do									\
-      {									\
-	YYSIZE_T yynewbytes;						\
-	YYCOPY (&yyptr->Stack_alloc, Stack, yysize);			\
-	Stack = &yyptr->Stack_alloc;					\
-	yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
-	yyptr += yynewbytes / sizeof (*yyptr);				\
-      }									\
-    while (YYID (0))
-
-#endif
-
-#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
-/* Copy COUNT objects from FROM to TO.  The source and destination do
-   not overlap.  */
-# ifndef YYCOPY
-#  if defined __GNUC__ && 1 < __GNUC__
-#   define YYCOPY(To, From, Count) \
-      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
-#  else
-#   define YYCOPY(To, From, Count)		\
-      do					\
-	{					\
-	  YYSIZE_T yyi;				\
-	  for (yyi = 0; yyi < (Count); yyi++)	\
-	    (To)[yyi] = (From)[yyi];		\
-	}					\
-      while (YYID (0))
-#  endif
-# endif
-#endif /* !YYCOPY_NEEDED */
-
-/* YYFINAL -- State number of the termination state.  */
-#define YYFINAL  3
-/* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   10263
-
-/* YYNTOKENS -- Number of terminals.  */
-#define YYNTOKENS  144
-/* YYNNTS -- Number of nonterminals.  */
-#define YYNNTS  147
-/* YYNRULES -- Number of rules.  */
-#define YYNRULES  523
-/* YYNRULES -- Number of states.  */
-#define YYNSTATES  927
-
-/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
-#define YYUNDEFTOK  2
-#define YYMAXUTOK   373
-
-#define YYTRANSLATE(YYX)						\
-  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
-
-/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
-static const yytype_uint8 yytranslate[] =
-{
-       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     143,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,   121,     2,     2,     2,   119,   114,     2,
-     139,   140,   117,   115,   138,   116,   137,   118,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,   109,   142,
-     111,   107,   110,   108,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,   136,     2,   141,   113,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,   134,   112,   135,   122,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
-       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
-      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
-      25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
-      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
-      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
-      55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
-      65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
-      75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
-      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
-      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
-     105,   106,   120,   123,   124,   125,   126,   127,   128,   129,
-     130,   131,   132,   133
-};
-
-#if YYDEBUG
-/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
-   YYRHS.  */
-static const yytype_uint16 yyprhs[] =
-{
-       0,     0,     3,     4,     7,    10,    12,    14,    18,    21,
-      23,    24,    30,    35,    38,    40,    42,    46,    49,    50,
-      55,    58,    62,    66,    70,    74,    78,    83,    85,    89,
-      93,   100,   106,   112,   118,   124,   128,   132,   136,   140,
-     142,   146,   150,   152,   156,   160,   164,   167,   169,   171,
-     173,   175,   177,   182,   183,   189,   192,   196,   201,   207,
-     212,   218,   221,   224,   227,   230,   233,   235,   239,   241,
-     245,   247,   250,   254,   260,   263,   268,   271,   276,   278,
-     282,   284,   288,   291,   295,   297,   300,   302,   307,   311,
-     315,   319,   323,   326,   328,   330,   335,   339,   343,   347,
-     351,   354,   356,   358,   360,   363,   365,   369,   371,   373,
-     375,   377,   379,   381,   383,   385,   387,   388,   393,   395,
-     397,   399,   401,   403,   405,   407,   409,   411,   413,   415,
-     417,   419,   421,   423,   425,   427,   429,   431,   433,   435,
-     437,   439,   441,   443,   445,   447,   449,   451,   453,   455,
-     457,   459,   461,   463,   465,   467,   469,   471,   473,   475,
-     477,   479,   481,   483,   485,   487,   489,   491,   493,   495,
-     497,   499,   501,   503,   505,   507,   509,   511,   513,   515,
-     517,   519,   521,   523,   525,   527,   529,   533,   539,   543,
-     549,   556,   562,   568,   574,   580,   585,   589,   593,   597,
-     601,   605,   609,   613,   617,   621,   626,   631,   634,   637,
-     641,   645,   649,   653,   657,   661,   665,   669,   673,   677,
-     681,   685,   689,   692,   695,   699,   703,   707,   711,   718,
-     720,   722,   724,   727,   732,   735,   739,   741,   743,   745,
-     747,   750,   755,   758,   760,   763,   766,   771,   773,   774,
-     777,   780,   783,   785,   787,   790,   794,   799,   803,   808,
-     811,   813,   815,   817,   819,   821,   823,   824,   829,   830,
-     835,   836,   840,   844,   848,   851,   855,   859,   861,   866,
-     870,   872,   877,   881,   884,   886,   889,   890,   895,   902,
-     909,   910,   911,   919,   920,   921,   929,   935,   940,   941,
-     942,   952,   953,   960,   961,   962,   971,   972,   978,   979,
-     986,   987,   988,   998,  1000,  1002,  1004,  1006,  1008,  1010,
-    1012,  1015,  1017,  1019,  1021,  1027,  1029,  1032,  1034,  1036,
-    1038,  1042,  1044,  1048,  1050,  1055,  1062,  1066,  1072,  1075,
-    1080,  1082,  1086,  1093,  1102,  1107,  1114,  1119,  1122,  1129,
-    1132,  1137,  1144,  1147,  1152,  1155,  1160,  1162,  1164,  1166,
-    1170,  1172,  1177,  1179,  1184,  1186,  1190,  1192,  1194,  1199,
-    1201,  1205,  1209,  1210,  1216,  1219,  1224,  1230,  1236,  1239,
-    1244,  1249,  1253,  1257,  1261,  1264,  1266,  1271,  1272,  1278,
-    1279,  1285,  1291,  1293,  1295,  1302,  1304,  1306,  1308,  1310,
-    1313,  1315,  1318,  1320,  1322,  1324,  1326,  1328,  1331,  1335,
-    1336,  1341,  1342,  1348,  1350,  1352,  1357,  1360,  1362,  1364,
-    1366,  1368,  1370,  1373,  1375,  1377,  1380,  1383,  1385,  1387,
-    1389,  1391,  1393,  1395,  1397,  1399,  1401,  1403,  1405,  1407,
-    1409,  1411,  1413,  1415,  1416,  1421,  1424,  1428,  1431,  1438,
-    1447,  1452,  1459,  1464,  1471,  1474,  1479,  1486,  1489,  1494,
-    1497,  1502,  1504,  1505,  1507,  1509,  1511,  1513,  1515,  1517,
-    1519,  1523,  1525,  1529,  1533,  1537,  1539,  1543,  1545,  1549,
-    1551,  1553,  1556,  1558,  1560,  1562,  1565,  1568,  1570,  1572,
-    1573,  1578,  1580,  1583,  1585,  1589,  1593,  1596,  1598,  1600,
-    1602,  1604,  1606,  1608,  1610,  1612,  1614,  1616,  1618,  1620,
-    1621,  1623,  1624,  1626,  1629,  1632,  1633,  1635,  1637,  1639,
-    1641,  1643,  1645,  1648
-};
-
-/* YYRHS -- A `-1'-separated list of the rules' RHS.  */
-static const yytype_int16 yyrhs[] =
-{
-     145,     0,    -1,    -1,   146,   147,    -1,   148,   282,    -1,
-     290,    -1,   149,    -1,   148,   289,   149,    -1,     1,   149,
-      -1,   154,    -1,    -1,    46,   150,   134,   147,   135,    -1,
-     152,   238,   216,   241,    -1,   153,   282,    -1,   290,    -1,
-     154,    -1,   153,   289,   154,    -1,     1,   154,    -1,    -1,
-      45,   175,   155,   175,    -1,     6,   177,    -1,   154,    40,
-     158,    -1,   154,    41,   158,    -1,   154,    42,   158,    -1,
-     154,    43,   158,    -1,   154,    44,   154,    -1,    47,   134,
-     152,   135,    -1,   156,    -1,   164,   107,   159,    -1,   253,
-      88,   159,    -1,   212,   136,   186,   285,    88,   159,    -1,
-     212,   137,    51,    88,   159,    -1,   212,   137,    55,    88,
-     159,    -1,   212,    86,    55,    88,   159,    -1,   212,    86,
-      51,    88,   159,    -1,   255,    88,   159,    -1,   171,   107,
-     193,    -1,   164,   107,   182,    -1,   164,   107,   193,    -1,
-     157,    -1,   171,   107,   159,    -1,   171,   107,   156,    -1,
-     159,    -1,   157,    37,   157,    -1,   157,    38,   157,    -1,
-      39,   283,   157,    -1,   121,   159,    -1,   181,    -1,   157,
-      -1,   163,    -1,   160,    -1,   231,    -1,   231,   281,   279,
-     188,    -1,    -1,    95,   162,   222,   152,   135,    -1,   278,
-     188,    -1,   278,   188,   161,    -1,   212,   137,   279,   188,
-      -1,   212,   137,   279,   188,   161,    -1,   212,    86,   279,
-     188,    -1,   212,    86,   279,   188,   161,    -1,    32,   188,
-      -1,    31,   188,    -1,    30,   187,    -1,    21,   187,    -1,
-      22,   187,    -1,   166,    -1,    90,   165,   284,    -1,   166,
-      -1,    90,   165,   284,    -1,   168,    -1,   168,   167,    -1,
-     168,    96,   170,    -1,   168,    96,   170,   138,   169,    -1,
-     168,    96,    -1,   168,    96,   138,   169,    -1,    96,   170,
-      -1,    96,   170,   138,   169,    -1,    96,    -1,    96,   138,
-     169,    -1,   170,    -1,    90,   165,   284,    -1,   167,   138,
-      -1,   168,   167,   138,    -1,   167,    -1,   168,   167,    -1,
-     252,    -1,   212,   136,   186,   285,    -1,   212,   137,    51,
-      -1,   212,    86,    51,    -1,   212,   137,    55,    -1,   212,
-      86,    55,    -1,    87,    55,    -1,   255,    -1,   252,    -1,
-     212,   136,   186,   285,    -1,   212,   137,    51,    -1,   212,
-      86,    51,    -1,   212,   137,    55,    -1,   212,    86,    55,
-      -1,    87,    55,    -1,   255,    -1,    51,    -1,    55,    -1,
-      87,   172,    -1,   172,    -1,   212,    86,   172,    -1,    51,
-      -1,    55,    -1,    52,    -1,   179,    -1,   180,    -1,   174,
-      -1,   249,    -1,   175,    -1,   175,    -1,    -1,   177,   138,
-     178,   176,    -1,   112,    -1,   113,    -1,   114,    -1,    70,
-      -1,    71,    -1,    72,    -1,    78,    -1,    79,    -1,   110,
-      -1,    74,    -1,   111,    -1,    75,    -1,    73,    -1,    84,
-      -1,    85,    -1,   115,    -1,   116,    -1,   117,    -1,    96,
-      -1,   118,    -1,   119,    -1,    69,    -1,   121,    -1,   122,
-      -1,    67,    -1,    68,    -1,    82,    -1,    83,    -1,    48,
-      -1,    49,    -1,    50,    -1,    46,    -1,    47,    -1,    45,
-      -1,    37,    -1,     7,    -1,    21,    -1,    16,    -1,     3,
-      -1,     5,    -1,    26,    -1,    15,    -1,    14,    -1,    10,
-      -1,     9,    -1,    36,    -1,    20,    -1,    25,    -1,     4,
-      -1,    22,    -1,    34,    -1,    39,    -1,    38,    -1,    23,
-      -1,     8,    -1,    24,    -1,    30,    -1,    33,    -1,    32,
-      -1,    13,    -1,    35,    -1,     6,    -1,    17,    -1,    31,
-      -1,    11,    -1,    12,    -1,    18,    -1,    19,    -1,   171,
-     107,   181,    -1,   171,   107,   181,    44,   181,    -1,   253,
-      88,   181,    -1,   253,    88,   181,    44,   181,    -1,   212,
-     136,   186,   285,    88,   181,    -1,   212,   137,    51,    88,
-     181,    -1,   212,   137,    55,    88,   181,    -1,   212,    86,
-      51,    88,   181,    -1,   212,    86,    55,    88,   181,    -1,
-      87,    55,    88,   181,    -1,   255,    88,   181,    -1,   181,
-      80,   181,    -1,   181,    81,   181,    -1,   181,   115,   181,
-      -1,   181,   116,   181,    -1,   181,   117,   181,    -1,   181,
-     118,   181,    -1,   181,   119,   181,    -1,   181,    69,   181,
-      -1,   120,    58,    69,   181,    -1,   120,    59,    69,   181,
-      -1,    67,   181,    -1,    68,   181,    -1,   181,   112,   181,
-      -1,   181,   113,   181,    -1,   181,   114,   181,    -1,   181,
-      70,   181,    -1,   181,   110,   181,    -1,   181,    74,   181,
-      -1,   181,   111,   181,    -1,   181,    75,   181,    -1,   181,
-      71,   181,    -1,   181,    72,   181,    -1,   181,    73,   181,
-      -1,   181,    78,   181,    -1,   181,    79,   181,    -1,   121,
-     181,    -1,   122,   181,    -1,   181,    84,   181,    -1,   181,
-      85,   181,    -1,   181,    76,   181,    -1,   181,    77,   181,
-      -1,   181,   108,   181,   283,   109,   181,    -1,   194,    -1,
-     181,    -1,   290,    -1,   192,   286,    -1,   192,   138,   276,
-     286,    -1,   276,   286,    -1,   139,   186,   284,    -1,   290,
-      -1,   184,    -1,   290,    -1,   187,    -1,   192,   138,    -1,
-     192,   138,   276,   138,    -1,   276,   138,    -1,   163,    -1,
-     192,   191,    -1,   276,   191,    -1,   192,   138,   276,   191,
-      -1,   190,    -1,    -1,   189,   187,    -1,    97,   182,    -1,
-     138,   190,    -1,   290,    -1,   182,    -1,    96,   182,    -1,
-     192,   138,   182,    -1,   192,   138,    96,   182,    -1,   192,
-     138,   182,    -1,   192,   138,    96,   182,    -1,    96,   182,
-      -1,   242,    -1,   243,    -1,   247,    -1,   254,    -1,   255,
-      -1,    52,    -1,    -1,     7,   195,   151,    10,    -1,    -1,
-      91,   157,   196,   284,    -1,    -1,    91,   197,   284,    -1,
-      90,   152,   140,    -1,   212,    86,    55,    -1,    87,    55,
-      -1,    93,   183,   141,    -1,    94,   275,   135,    -1,    30,
-      -1,    31,   139,   187,   284,    -1,    31,   139,   284,    -1,
-      31,    -1,    39,   139,   157,   284,    -1,    39,   139,   284,
-      -1,   278,   233,    -1,   232,    -1,   232,   233,    -1,    -1,
-      98,   198,   227,   228,    -1,    11,   158,   213,   152,   215,
-      10,    -1,    12,   158,   213,   152,   216,    10,    -1,    -1,
-      -1,    18,   199,   158,   214,   200,   152,    10,    -1,    -1,
-      -1,    19,   201,   158,   214,   202,   152,    10,    -1,    16,
-     158,   282,   236,    10,    -1,    16,   282,   236,    10,    -1,
-      -1,    -1,    20,   217,    25,   203,   158,   214,   204,   152,
-      10,    -1,    -1,     3,   173,   256,   205,   151,    10,    -1,
-      -1,    -1,     3,    84,   157,   206,   287,   207,   151,    10,
-      -1,    -1,     4,   173,   208,   151,    10,    -1,    -1,     5,
-     174,   209,   258,   151,    10,    -1,    -1,    -1,     5,   273,
-     281,   210,   174,   211,   258,   151,    10,    -1,    21,    -1,
-      22,    -1,    23,    -1,    24,    -1,   194,    -1,   287,    -1,
-      13,    -1,   287,    13,    -1,   287,    -1,    27,    -1,   216,
-      -1,    14,   158,   213,   152,   215,    -1,   290,    -1,    15,
-     152,    -1,   171,    -1,   164,    -1,   261,    -1,    90,   220,
-     284,    -1,   218,    -1,   219,   138,   218,    -1,   219,    -1,
-     219,   138,    96,   261,    -1,   219,   138,    96,   261,   138,
-     219,    -1,   219,   138,    96,    -1,   219,   138,    96,   138,
-     219,    -1,    96,   261,    -1,    96,   261,   138,   219,    -1,
-      96,    -1,    96,   138,   219,    -1,   263,   138,   266,   138,
-     269,   272,    -1,   263,   138,   266,   138,   269,   138,   263,
-     272,    -1,   263,   138,   266,   272,    -1,   263,   138,   266,
-     138,   263,   272,    -1,   263,   138,   269,   272,    -1,   263,
-     138,    -1,   263,   138,   269,   138,   263,   272,    -1,   263,
-     272,    -1,   266,   138,   269,   272,    -1,   266,   138,   269,
-     138,   263,   272,    -1,   266,   272,    -1,   266,   138,   263,
-     272,    -1,   269,   272,    -1,   269,   138,   263,   272,    -1,
-     271,    -1,   290,    -1,   223,    -1,   112,   224,   112,    -1,
-      77,    -1,   112,   221,   224,   112,    -1,   283,    -1,   283,
-     142,   225,   283,    -1,   226,    -1,   225,   138,   226,    -1,
-      51,    -1,   260,    -1,   139,   259,   224,   140,    -1,   259,
-      -1,   105,   152,   135,    -1,    29,   152,    10,    -1,    -1,
-      28,   230,   222,   152,    10,    -1,   163,   229,    -1,   231,
-     281,   279,   185,    -1,   231,   281,   279,   185,   233,    -1,
-     231,   281,   279,   188,   229,    -1,   278,   184,    -1,   212,
-     137,   279,   185,    -1,   212,    86,   279,   184,    -1,   212,
-      86,   280,    -1,   212,   137,   184,    -1,   212,    86,   184,
-      -1,    32,   184,    -1,    32,    -1,   212,   136,   186,   285,
-      -1,    -1,   134,   234,   222,   152,   135,    -1,    -1,    26,
-     235,   222,   152,    10,    -1,    17,   192,   213,   152,   237,
-      -1,   216,    -1,   236,    -1,     8,   239,   240,   213,   152,
-     238,    -1,   290,    -1,   182,    -1,   193,    -1,   290,    -1,
-      89,   171,    -1,   290,    -1,     9,   152,    -1,   290,    -1,
-     251,    -1,   248,    -1,    60,    -1,    62,    -1,   103,    62,
-      -1,   103,   244,    62,    -1,    -1,    63,   245,   152,   135,
-      -1,    -1,   244,    63,   246,   152,   135,    -1,    61,    -1,
-     249,    -1,    99,   103,   244,    62,    -1,    99,   250,    -1,
-     174,    -1,    54,    -1,    53,    -1,    56,    -1,    62,    -1,
-     103,    62,    -1,    58,    -1,    59,    -1,   120,    58,    -1,
-     120,    59,    -1,    51,    -1,    54,    -1,    53,    -1,    56,
-      -1,    55,    -1,   252,    -1,   252,    -1,    34,    -1,    33,
-      -1,    35,    -1,    36,    -1,    49,    -1,    48,    -1,    64,
-      -1,    65,    -1,   287,    -1,    -1,   111,   257,   158,   287,
-      -1,     1,   287,    -1,   139,   259,   284,    -1,   259,   287,
-      -1,   263,   138,   267,   138,   269,   272,    -1,   263,   138,
-     267,   138,   269,   138,   263,   272,    -1,   263,   138,   267,
-     272,    -1,   263,   138,   267,   138,   263,   272,    -1,   263,
-     138,   269,   272,    -1,   263,   138,   269,   138,   263,   272,
-      -1,   263,   272,    -1,   267,   138,   269,   272,    -1,   267,
-     138,   269,   138,   263,   272,    -1,   267,   272,    -1,   267,
-     138,   263,   272,    -1,   269,   272,    -1,   269,   138,   263,
-     272,    -1,   271,    -1,    -1,    55,    -1,    54,    -1,    53,
-      -1,    56,    -1,   260,    -1,    51,    -1,   261,    -1,    90,
-     220,   284,    -1,   262,    -1,   263,   138,   262,    -1,    51,
-     107,   182,    -1,    51,   107,   212,    -1,   265,    -1,   266,
-     138,   265,    -1,   264,    -1,   267,   138,   264,    -1,   117,
-      -1,    96,    -1,   268,    51,    -1,   268,    -1,   114,    -1,
-      97,    -1,   270,    51,    -1,   138,   271,    -1,   290,    -1,
-     254,    -1,    -1,   139,   274,   157,   284,    -1,   290,    -1,
-     276,   286,    -1,   277,    -1,   276,   138,   277,    -1,   182,
-      89,   182,    -1,    57,   182,    -1,    51,    -1,    55,    -1,
-      52,    -1,    51,    -1,    55,    -1,    52,    -1,   179,    -1,
-      51,    -1,    52,    -1,   179,    -1,   137,    -1,    86,    -1,
-      -1,   289,    -1,    -1,   288,    -1,   283,   140,    -1,   283,
-     141,    -1,    -1,   288,    -1,   138,    -1,   142,    -1,   288,
-      -1,   143,    -1,   287,    -1,   289,   142,    -1,    -1
-};
-
-/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
-static const yytype_uint16 yyrline[] =
-{
-       0,   996,   996,   996,  1006,  1012,  1016,  1020,  1024,  1030,
-    1032,  1031,  1043,  1069,  1075,  1079,  1083,  1087,  1093,  1093,
-    1097,  1101,  1105,  1109,  1113,  1117,  1121,  1126,  1127,  1131,
-    1135,  1139,  1143,  1147,  1152,  1156,  1161,  1165,  1169,  1173,
-    1176,  1180,  1187,  1188,  1192,  1196,  1200,  1204,  1207,  1214,
-    1215,  1218,  1219,  1223,  1222,  1235,  1239,  1244,  1248,  1253,
-    1257,  1262,  1266,  1270,  1274,  1278,  1284,  1288,  1294,  1295,
-    1301,  1305,  1309,  1313,  1317,  1321,  1325,  1329,  1333,  1337,
-    1343,  1344,  1350,  1354,  1360,  1364,  1370,  1374,  1378,  1382,
-    1386,  1390,  1396,  1402,  1409,  1413,  1417,  1421,  1425,  1429,
-    1435,  1441,  1448,  1452,  1455,  1459,  1463,  1469,  1470,  1471,
-    1472,  1477,  1484,  1485,  1488,  1494,  1498,  1498,  1504,  1505,
-    1506,  1507,  1508,  1509,  1510,  1511,  1512,  1513,  1514,  1515,
-    1516,  1517,  1518,  1519,  1520,  1521,  1522,  1523,  1524,  1525,
-    1526,  1527,  1528,  1529,  1530,  1531,  1534,  1534,  1534,  1535,
-    1535,  1536,  1536,  1536,  1537,  1537,  1537,  1537,  1538,  1538,
-    1538,  1539,  1539,  1539,  1540,  1540,  1540,  1540,  1541,  1541,
-    1541,  1541,  1542,  1542,  1542,  1542,  1543,  1543,  1543,  1543,
-    1544,  1544,  1544,  1544,  1545,  1545,  1548,  1552,  1556,  1560,
-    1564,  1568,  1572,  1576,  1580,  1585,  1590,  1595,  1599,  1603,
-    1607,  1611,  1615,  1619,  1623,  1627,  1631,  1635,  1639,  1643,
-    1647,  1651,  1655,  1659,  1663,  1667,  1671,  1675,  1679,  1683,
-    1687,  1696,  1700,  1704,  1708,  1712,  1716,  1720,  1724,  1728,
-    1734,  1741,  1742,  1746,  1750,  1756,  1762,  1763,  1766,  1767,
-    1768,  1772,  1776,  1782,  1786,  1790,  1794,  1798,  1804,  1804,
-    1815,  1821,  1825,  1831,  1835,  1839,  1843,  1849,  1853,  1857,
-    1863,  1864,  1865,  1866,  1867,  1868,  1873,  1872,  1883,  1883,
-    1887,  1887,  1891,  1895,  1899,  1903,  1907,  1911,  1915,  1919,
-    1923,  1927,  1931,  1935,  1939,  1940,  1946,  1945,  1958,  1965,
-    1972,  1972,  1972,  1978,  1978,  1978,  1984,  1990,  1995,  1997,
-    1994,  2004,  2003,  2016,  2021,  2015,  2034,  2033,  2046,  2045,
-    2058,  2059,  2058,  2072,  2076,  2080,  2084,  2090,  2097,  2098,
-    2099,  2102,  2103,  2106,  2107,  2115,  2116,  2122,  2126,  2129,
-    2133,  2139,  2143,  2149,  2153,  2157,  2161,  2165,  2169,  2173,
-    2177,  2181,  2187,  2191,  2195,  2199,  2203,  2207,  2211,  2215,
-    2219,  2223,  2227,  2231,  2235,  2239,  2243,  2249,  2250,  2257,
-    2262,  2267,  2274,  2278,  2284,  2285,  2288,  2293,  2296,  2300,
-    2306,  2310,  2317,  2316,  2329,  2339,  2343,  2348,  2355,  2359,
-    2363,  2367,  2371,  2375,  2379,  2383,  2387,  2394,  2393,  2404,
-    2403,  2415,  2423,  2432,  2435,  2442,  2445,  2449,  2450,  2453,
-    2457,  2460,  2464,  2467,  2468,  2471,  2472,  2473,  2477,  2484,
-    2483,  2496,  2494,  2508,  2511,  2515,  2522,  2529,  2530,  2531,
-    2532,  2533,  2537,  2543,  2544,  2545,  2549,  2555,  2559,  2563,
-    2567,  2571,  2577,  2583,  2587,  2591,  2595,  2599,  2603,  2610,
-    2619,  2620,  2623,  2628,  2627,  2636,  2643,  2649,  2655,  2659,
-    2663,  2667,  2671,  2675,  2679,  2683,  2687,  2691,  2695,  2699,
-    2703,  2707,  2712,  2718,  2723,  2728,  2733,  2740,  2744,  2751,
-    2755,  2761,  2765,  2771,  2778,  2785,  2789,  2795,  2799,  2805,
-    2806,  2809,  2814,  2821,  2822,  2825,  2832,  2836,  2843,  2848,
-    2848,  2870,  2871,  2877,  2881,  2887,  2891,  2897,  2898,  2899,
-    2902,  2903,  2904,  2905,  2908,  2909,  2910,  2913,  2914,  2917,
-    2918,  2921,  2922,  2925,  2928,  2931,  2932,  2933,  2936,  2937,
-    2940,  2946,  2947,  2951
-};
-#endif
-
-#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
-/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
-   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
-static const char *const yytname[] =
-{
-  "$end", "error", "$undefined", "keyword_class", "keyword_module",
-  "keyword_def", "keyword_undef", "keyword_begin", "keyword_rescue",
-  "keyword_ensure", "keyword_end", "keyword_if", "keyword_unless",
-  "keyword_then", "keyword_elsif", "keyword_else", "keyword_case",
-  "keyword_when", "keyword_while", "keyword_until", "keyword_for",
-  "keyword_break", "keyword_next", "keyword_redo", "keyword_retry",
-  "keyword_in", "keyword_do", "keyword_do_cond", "keyword_do_block",
-  "keyword_do_LAMBDA", "keyword_return", "keyword_yield", "keyword_super",
-  "keyword_self", "keyword_nil", "keyword_true", "keyword_false",
-  "keyword_and", "keyword_or", "keyword_not", "modifier_if",
-  "modifier_unless", "modifier_while", "modifier_until", "modifier_rescue",
-  "keyword_alias", "keyword_BEGIN", "keyword_END", "keyword__LINE__",
-  "keyword__FILE__", "keyword__ENCODING__", "tIDENTIFIER", "tFID", "tGVAR",
-  "tIVAR", "tCONSTANT", "tCVAR", "tLABEL", "tINTEGER", "tFLOAT", "tCHAR",
-  "tREGEXP", "tSTRING", "tSTRING_PART", "tNTH_REF", "tBACK_REF",
-  "tREGEXP_END", "tUPLUS", "tUMINUS", "tPOW", "tCMP", "tEQ", "tEQQ",
-  "tNEQ", "tGEQ", "tLEQ", "tANDOP", "tOROP", "tMATCH", "tNMATCH", "tDOT2",
-  "tDOT3", "tAREF", "tASET", "tLSHFT", "tRSHFT", "tCOLON2", "tCOLON3",
-  "tOP_ASGN", "tASSOC", "tLPAREN", "tLPAREN_ARG", "tRPAREN", "tLBRACK",
-  "tLBRACE", "tLBRACE_ARG", "tSTAR", "tAMPER", "tLAMBDA", "tSYMBEG",
-  "tREGEXP_BEG", "tWORDS_BEG", "tQWORDS_BEG", "tSTRING_BEG",
-  "tSTRING_DVAR", "tLAMBEG", "tLOWEST", "'='", "'?'", "':'", "'>'", "'<'",
-  "'|'", "'^'", "'&'", "'+'", "'-'", "'*'", "'/'", "'%'", "tUMINUS_NUM",
-  "'!'", "'~'", "idNULL", "idRespond_to", "idIFUNC", "idCFUNC",
-  "id_core_set_method_alias", "id_core_set_variable_alias",
-  "id_core_undef_method", "id_core_define_method",
-  "id_core_define_singleton_method", "id_core_set_postexe", "tLAST_TOKEN",
-  "'{'", "'}'", "'['", "'.'", "','", "'('", "')'", "']'", "';'", "'\\n'",
-  "$accept", "program", "$@1", "top_compstmt", "top_stmts", "top_stmt",
-  "@2", "bodystmt", "compstmt", "stmts", "stmt", "$@3", "command_asgn",
-  "expr", "expr_value", "command_call", "block_command", "cmd_brace_block",
-  "$@4", "command", "mlhs", "mlhs_inner", "mlhs_basic", "mlhs_item",
-  "mlhs_list", "mlhs_post", "mlhs_node", "lhs", "cname", "cpath", "fname",
-  "fsym", "fitem", "undef_list", "$@5", "op", "reswords", "arg",
-  "arg_value", "aref_args", "paren_args", "opt_paren_args",
-  "opt_call_args", "call_args", "command_args", "@6", "block_arg",
-  "opt_block_arg", "args", "mrhs", "primary", "$@7", "$@8", "$@9", "@10",
-  "$@11", "$@12", "$@13", "$@14", "$@15", "$@16", "@17", "@18", "@19",
-  "@20", "@21", "$@22", "@23", "primary_value", "then", "do", "if_tail",
-  "opt_else", "for_var", "f_marg", "f_marg_list", "f_margs", "block_param",
-  "opt_block_param", "block_param_def", "opt_bv_decl", "bv_decls", "bvar",
-  "f_larglist", "lambda_body", "do_block", "$@24", "block_call",
-  "method_call", "brace_block", "$@25", "$@26", "case_body", "cases",
-  "opt_rescue", "exc_list", "exc_var", "opt_ensure", "literal", "string",
-  "string_interp", "@27", "@28", "regexp", "symbol", "basic_symbol", "sym",
-  "numeric", "variable", "var_lhs", "var_ref", "backref", "superclass",
-  "$@29", "f_arglist", "f_args", "f_bad_arg", "f_norm_arg", "f_arg_item",
-  "f_arg", "f_opt", "f_block_opt", "f_block_optarg", "f_optarg",
-  "restarg_mark", "f_rest_arg", "blkarg_mark", "f_block_arg",
-  "opt_f_block_arg", "singleton", "$@30", "assoc_list", "assocs", "assoc",
-  "operation", "operation2", "operation3", "dot_or_colon", "opt_terms",
-  "opt_nl", "rparen", "rbracket", "trailer", "term", "nl", "terms", "none", 0
-};
-#endif
-
-# ifdef YYPRINT
-/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
-   token YYLEX-NUM.  */
-static const yytype_uint16 yytoknum[] =
-{
-       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
-     265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
-     275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
-     285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
-     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
-     305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
-     315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
-     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
-     335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
-     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
-     355,   356,   357,   358,   359,   360,   361,    61,    63,    58,
-      62,    60,   124,    94,    38,    43,    45,    42,    47,    37,
-     362,    33,   126,   363,   364,   365,   366,   367,   368,   369,
-     370,   371,   372,   373,   123,   125,    91,    46,    44,    40,
-      41,    93,    59,    10
-};
-# endif
-
-/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
-static const yytype_uint16 yyr1[] =
-{
-       0,   144,   146,   145,   147,   148,   148,   148,   148,   149,
-     150,   149,   151,   152,   153,   153,   153,   153,   155,   154,
-     154,   154,   154,   154,   154,   154,   154,   154,   154,   154,
-     154,   154,   154,   154,   154,   154,   154,   154,   154,   154,
-     156,   156,   157,   157,   157,   157,   157,   157,   158,   159,
-     159,   160,   160,   162,   161,   163,   163,   163,   163,   163,
-     163,   163,   163,   163,   163,   163,   164,   164,   165,   165,
-     166,   166,   166,   166,   166,   166,   166,   166,   166,   166,
-     167,   167,   168,   168,   169,   169,   170,   170,   170,   170,
-     170,   170,   170,   170,   171,   171,   171,   171,   171,   171,
-     171,   171,   172,   172,   173,   173,   173,   174,   174,   174,
-     174,   174,   175,   175,   176,   177,   178,   177,   179,   179,
-     179,   179,   179,   179,   179,   179,   179,   179,   179,   179,
-     179,   179,   179,   179,   179,   179,   179,   179,   179,   179,
-     179,   179,   179,   179,   179,   179,   180,   180,   180,   180,
-     180,   180,   180,   180,   180,   180,   180,   180,   180,   180,
-     180,   180,   180,   180,   180,   180,   180,   180,   180,   180,
-     180,   180,   180,   180,   180,   180,   180,   180,   180,   180,
-     180,   180,   180,   180,   180,   180,   181,   181,   181,   181,
-     181,   181,   181,   181,   181,   181,   181,   181,   181,   181,
-     181,   181,   181,   181,   181,   181,   181,   181,   181,   181,
-     181,   181,   181,   181,   181,   181,   181,   181,   181,   181,
-     181,   181,   181,   181,   181,   181,   181,   181,   181,   181,
-     182,   183,   183,   183,   183,   184,   185,   185,   186,   186,
-     186,   186,   186,   187,   187,   187,   187,   187,   189,   188,
-     190,   191,   191,   192,   192,   192,   192,   193,   193,   193,
-     194,   194,   194,   194,   194,   194,   195,   194,   196,   194,
-     197,   194,   194,   194,   194,   194,   194,   194,   194,   194,
-     194,   194,   194,   194,   194,   194,   198,   194,   194,   194,
-     199,   200,   194,   201,   202,   194,   194,   194,   203,   204,
-     194,   205,   194,   206,   207,   194,   208,   194,   209,   194,
-     210,   211,   194,   194,   194,   194,   194,   212,   213,   213,
-     213,   214,   214,   215,   215,   216,   216,   217,   217,   218,
-     218,   219,   219,   220,   220,   220,   220,   220,   220,   220,
-     220,   220,   221,   221,   221,   221,   221,   221,   221,   221,
-     221,   221,   221,   221,   221,   221,   221,   222,   222,   223,
-     223,   223,   224,   224,   225,   225,   226,   226,   227,   227,
-     228,   228,   230,   229,   231,   231,   231,   231,   232,   232,
-     232,   232,   232,   232,   232,   232,   232,   234,   233,   235,
-     233,   236,   237,   237,   238,   238,   239,   239,   239,   240,
-     240,   241,   241,   242,   242,   243,   243,   243,   243,   245,
-     244,   246,   244,   247,   248,   248,   249,   250,   250,   250,
-     250,   250,   250,   251,   251,   251,   251,   252,   252,   252,
-     252,   252,   253,   254,   254,   254,   254,   254,   254,   254,
-     255,   255,   256,   257,   256,   256,   258,   258,   259,   259,
-     259,   259,   259,   259,   259,   259,   259,   259,   259,   259,
-     259,   259,   259,   260,   260,   260,   260,   261,   261,   262,
-     262,   263,   263,   264,   265,   266,   266,   267,   267,   268,
-     268,   269,   269,   270,   270,   271,   272,   272,   273,   274,
-     273,   275,   275,   276,   276,   277,   277,   278,   278,   278,
-     279,   279,   279,   279,   280,   280,   280,   281,   281,   282,
-     282,   283,   283,   284,   285,   286,   286,   286,   287,   287,
-     288,   289,   289,   290
-};
-
-/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
-static const yytype_uint8 yyr2[] =
-{
-       0,     2,     0,     2,     2,     1,     1,     3,     2,     1,
-       0,     5,     4,     2,     1,     1,     3,     2,     0,     4,
-       2,     3,     3,     3,     3,     3,     4,     1,     3,     3,
-       6,     5,     5,     5,     5,     3,     3,     3,     3,     1,
-       3,     3,     1,     3,     3,     3,     2,     1,     1,     1,
-       1,     1,     4,     0,     5,     2,     3,     4,     5,     4,
-       5,     2,     2,     2,     2,     2,     1,     3,     1,     3,
-       1,     2,     3,     5,     2,     4,     2,     4,     1,     3,
-       1,     3,     2,     3,     1,     2,     1,     4,     3,     3,
-       3,     3,     2,     1,     1,     4,     3,     3,     3,     3,
-       2,     1,     1,     1,     2,     1,     3,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     0,     4,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     3,     5,     3,     5,
-       6,     5,     5,     5,     5,     4,     3,     3,     3,     3,
-       3,     3,     3,     3,     3,     4,     4,     2,     2,     3,
-       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
-       3,     3,     2,     2,     3,     3,     3,     3,     6,     1,
-       1,     1,     2,     4,     2,     3,     1,     1,     1,     1,
-       2,     4,     2,     1,     2,     2,     4,     1,     0,     2,
-       2,     2,     1,     1,     2,     3,     4,     3,     4,     2,
-       1,     1,     1,     1,     1,     1,     0,     4,     0,     4,
-       0,     3,     3,     3,     2,     3,     3,     1,     4,     3,
-       1,     4,     3,     2,     1,     2,     0,     4,     6,     6,
-       0,     0,     7,     0,     0,     7,     5,     4,     0,     0,
-       9,     0,     6,     0,     0,     8,     0,     5,     0,     6,
-       0,     0,     9,     1,     1,     1,     1,     1,     1,     1,
-       2,     1,     1,     1,     5,     1,     2,     1,     1,     1,
-       3,     1,     3,     1,     4,     6,     3,     5,     2,     4,
-       1,     3,     6,     8,     4,     6,     4,     2,     6,     2,
-       4,     6,     2,     4,     2,     4,     1,     1,     1,     3,
-       1,     4,     1,     4,     1,     3,     1,     1,     4,     1,
-       3,     3,     0,     5,     2,     4,     5,     5,     2,     4,
-       4,     3,     3,     3,     2,     1,     4,     0,     5,     0,
-       5,     5,     1,     1,     6,     1,     1,     1,     1,     2,
-       1,     2,     1,     1,     1,     1,     1,     2,     3,     0,
-       4,     0,     5,     1,     1,     4,     2,     1,     1,     1,
-       1,     1,     2,     1,     1,     2,     2,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     0,     4,     2,     3,     2,     6,     8,
-       4,     6,     4,     6,     2,     4,     6,     2,     4,     2,
-       4,     1,     0,     1,     1,     1,     1,     1,     1,     1,
-       3,     1,     3,     3,     3,     1,     3,     1,     3,     1,
-       1,     2,     1,     1,     1,     2,     2,     1,     1,     0,
-       4,     1,     2,     1,     3,     3,     2,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
-       1,     0,     1,     2,     2,     0,     1,     1,     1,     1,
-       1,     1,     2,     0
-};
-
-/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
-   Performed when YYTABLE doesn't specify something else to do.  Zero
-   means the default is an error.  */
-static const yytype_uint16 yydefact[] =
-{
-       2,     0,     0,     1,     0,     0,     0,     0,     0,   266,
-       0,     0,   509,   290,   293,     0,   313,   314,   315,   316,
-     277,   280,   385,   435,   434,   436,   437,   511,     0,    10,
-       0,   439,   438,   427,   265,   429,   428,   431,   430,   423,
-     424,   405,   413,   406,   440,   441,     0,     0,     0,     0,
-     270,   523,   523,    78,   286,     0,     0,     0,     0,     0,
-       3,   509,     6,     9,    27,    39,    42,    50,    49,     0,
-      66,     0,    70,    80,     0,    47,   229,     0,    51,   284,
-     260,   261,   262,   404,   414,   403,   433,     0,   263,   264,
-     248,     5,     8,   313,   314,   277,   280,   385,     0,   102,
-     103,     0,     0,     0,     0,   105,     0,   317,     0,   433,
-     264,     0,   306,   156,   166,   157,   179,   153,   172,   162,
-     161,   182,   183,   177,   160,   159,   155,   180,   184,   185,
-     164,   154,   167,   171,   173,   165,   158,   174,   181,   176,
-     175,   168,   178,   163,   152,   170,   169,   151,   149,   150,
-     146,   147,   148,   107,   109,   108,   142,   143,   139,   121,
-     122,   123,   130,   127,   129,   124,   125,   144,   145,   131,
-     132,   136,   126,   128,   118,   119,   120,   133,   134,   135,
-     137,   138,   140,   141,   489,   308,   110,   111,   488,     0,
-     175,   168,   178,   163,   146,   147,   107,   108,     0,   112,
-     115,    20,   113,     0,     0,    48,     0,     0,     0,   433,
-       0,   264,     0,   518,   520,   509,     0,   521,   519,   510,
-       0,     0,     0,   328,   327,     0,     0,   433,   264,     0,
-       0,     0,     0,   243,   230,   253,    64,   247,   523,   523,
-     493,    65,    63,   511,    62,     0,   523,   384,    61,   511,
-       0,   512,    18,     0,     0,   207,     0,   208,   274,     0,
-       0,     0,   509,    15,   511,    68,    14,   268,   511,     0,
-     515,   515,   231,     0,     0,   515,   491,     0,     0,    76,
-       0,    86,    93,   462,   419,   418,   420,   421,     0,   417,
-     416,   407,   409,     0,   425,   426,    46,   222,   223,     4,
-     510,     0,     0,     0,     0,     0,     0,     0,   372,   374,
-       0,    82,     0,    74,    71,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   523,     0,   508,   507,     0,   389,   387,
-     285,     0,     0,   378,    55,   283,   303,   102,   103,   104,
-     425,   426,     0,   443,   301,   442,     0,   523,     0,     0,
-       0,   462,   310,     0,   116,     0,   523,   274,   319,     0,
-     318,     0,     0,   523,     0,     0,     0,     0,     0,     0,
-       0,   522,     0,     0,   274,     0,   523,     0,   298,   496,
-     254,   250,     0,     0,   244,   252,     0,   245,   511,     0,
-     279,   249,   511,   239,   523,   523,   238,   511,   282,    45,
-       0,     0,     0,     0,     0,     0,    17,   511,   272,    13,
-     510,    67,   511,   271,   275,   517,   232,   516,   517,   234,
-     276,   492,    92,    84,     0,    79,     0,     0,   523,     0,
-     468,   465,   464,   463,   466,     0,   480,   484,   483,   479,
-     462,     0,   369,   467,   469,   471,   523,   477,   523,   482,
-     523,     0,   461,   422,     0,     0,   408,   411,     0,     0,
-       7,    21,    22,    23,    24,    25,    43,    44,   523,     0,
-      28,    37,     0,    38,   511,     0,    72,    83,    41,    40,
-       0,   186,   253,    36,   204,   212,   217,   218,   219,   214,
-     216,   226,   227,   220,   221,   197,   198,   224,   225,   511,
-     213,   215,   209,   210,   211,   199,   200,   201,   202,   203,
-     500,   505,   501,   506,   383,   248,   381,   511,   500,   502,
-     501,   503,   382,   523,   500,   501,   248,   523,   523,    29,
-     188,    35,   196,    53,    56,     0,   445,     0,     0,   102,
-     103,   106,     0,   511,   523,     0,   511,   462,     0,     0,
-       0,     0,   267,   523,   523,   395,   523,   320,   186,   504,
-     273,   511,   500,   501,   523,     0,     0,   297,   322,   291,
-     321,   294,   504,   273,   511,   500,   501,     0,   495,     0,
-     255,   251,   523,   494,   278,   513,   235,   240,   242,   281,
-      19,     0,    26,   195,    69,    16,   269,   515,    85,    77,
-      89,    91,   511,   500,   501,     0,   468,     0,   340,   331,
-     333,   511,   329,   511,     0,     0,   287,     0,   454,   487,
-       0,   457,   481,     0,   459,   485,   415,     0,     0,   205,
-     206,   360,   511,     0,   358,   357,   259,     0,    81,    75,
-       0,     0,     0,     0,     0,     0,   380,    59,     0,   386,
-       0,     0,   237,   379,    57,   236,   375,    52,     0,     0,
-       0,   523,   304,     0,     0,   386,   307,   490,   511,     0,
-     447,   311,   114,   117,   396,   397,   523,   398,     0,   523,
-     325,     0,     0,   323,     0,     0,   386,     0,     0,     0,
-     296,     0,     0,     0,     0,   386,     0,   256,   246,   523,
-      11,   233,    87,   473,   511,     0,   338,     0,   470,     0,
-     362,     0,     0,   472,   523,   523,   486,   523,   478,   523,
-     523,   410,     0,   468,   511,     0,   523,   475,   523,   523,
-     356,     0,     0,   257,    73,   187,     0,    34,   193,    33,
-     194,    60,   514,     0,    31,   191,    32,   192,    58,   376,
-     377,     0,     0,   189,     0,     0,   444,   302,   446,   309,
-     462,     0,     0,   400,   326,     0,    12,   402,     0,   288,
-       0,   289,   255,   523,     0,     0,   299,   241,   330,   341,
-       0,   336,   332,   368,     0,   371,   370,     0,   450,     0,
-     452,     0,   458,     0,   455,   460,   412,     0,     0,   359,
-     347,   349,     0,   352,     0,   354,   373,   258,   228,    30,
-     190,   390,   388,     0,     0,     0,     0,   399,     0,    94,
-     101,     0,   401,     0,   392,   393,   391,   292,   295,     0,
-       0,   339,     0,   334,   366,   511,   364,   367,   523,   523,
-     523,   523,     0,   474,   361,   523,   523,   523,   476,   523,
-     523,    54,   305,     0,   100,     0,   523,     0,   523,   523,
-       0,   337,     0,     0,   363,   451,     0,   448,   453,   456,
-     274,     0,     0,   344,     0,   346,   353,     0,   350,   355,
-     312,   504,    99,   511,   500,   501,   394,   324,   300,   335,
-     365,   523,   504,   273,   523,   523,   523,   523,   386,   449,
-     345,     0,   342,   348,   351,   523,   343
-};
-
-/* YYDEFGOTO[NTERM-NUM].  */
-static const yytype_int16 yydefgoto[] =
-{
-      -1,     1,     2,    60,    61,    62,   253,   375,   376,   262,
-     263,   420,    64,    65,   206,    66,    67,   554,   681,    68,
-      69,   264,    70,    71,    72,   445,    73,   207,   105,   106,
-     199,   200,   693,   201,   571,   186,   187,    75,   235,   269,
-     534,   673,   412,   413,   244,   245,   237,   404,   414,   493,
-      76,   203,   432,   268,   283,   220,   713,   221,   714,   597,
-     849,   558,   555,   775,   369,   371,   570,   780,   256,   379,
-     589,   702,   703,   226,   629,   630,   631,   744,   653,   654,
-     729,   855,   856,   461,   636,   309,   488,    78,    79,   355,
-     548,   547,   390,   846,   574,   696,   782,   786,    80,    81,
-     293,   475,   648,    82,    83,    84,   290,    85,   209,   210,
-      88,   211,   364,   557,   568,   569,   463,   464,   465,   466,
-     467,   747,   748,   468,   469,   470,   471,   736,   638,   189,
-     370,   274,   415,   240,    90,   562,   536,   347,   216,   409,
-     410,   669,   436,   380,   251,   219,   266
-};
-
-/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
-   STATE-NUM.  */
-#define YYPACT_NINF -728
-static const yytype_int16 yypact[] =
-{
-    -728,   129,  2484,  -728,  6830,  8542,  8851,  4938,  6590,  -728,
-    8221,  8221,  4419,  -728,  -728,  8645,  7044,  7044,  -728,  -728,
-    7044,  5656,  5768,  -728,  -728,  -728,  -728,   220,  6590,  -728,
-      23,  -728,  -728,  5060,  5184,  -728,  -728,  5308,  -728,  -728,
-    -728,  -728,  -728,  -728,  -728,  -728,  8328,  8328,   205,  3736,
-    8221,  7258,  7579,  6104,  -728,  6350,    48,   291,  8435,  8328,
-    -728,   294,  -728,   862,  -728,   323,  -728,  -728,   163,    26,
-    -728,   139,  8748,  -728,   160,  6211,   173,   200,    22,    91,
-    -728,  -728,  -728,  -728,  -728,  -728,    30,   202,  -728,    32,
-      93,  -728,  -728,  -728,  -728,  -728,   174,   183,   188,   497,
-     529,  8221,   333,  3879,   386,  -728,    39,  -728,   218,  -728,
-    -728,    93,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,
-    -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,
-    -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,
-      57,   128,   182,   193,  -728,  -728,  -728,  -728,  -728,  -728,
-     229,   239,  -728,   265,  -728,   270,  -728,  -728,  -728,  -728,
-    -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,
-    -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,
-    -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,    22,
-    -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  6470,  -728,
-    -728,   257,  -728,  2945,   343,   323,    53,   334,   253,   196,
-     361,   219,    53,  -728,  -728,   294,   434,  -728,  -728,   319,
-    8221,  8221,   432,  -728,  -728,   339,   476,    97,   105,  8328,
-    8328,  8328,  8328,  -728,  6211,   409,  -728,  -728,   365,   380,
-    -728,  -728,  -728,  4293,  -728,  7044,  7044,  -728,  -728,  4547,
-    8221,  -728,  -728,   381,  4022,  -728,   354,   442,    37,  6937,
-    3736,   408,   294,   862,   400,   446,  -728,   323,   400,   417,
-      10,   140,  -728,   409,   424,   140,  -728,   505,  8954,   427,
-     356,   368,   373,   700,  -728,  -728,  -728,  -728,   418,  -728,
-    -728,  -728,  -728,   422,   498,   499,  -728,  -728,  -728,  -728,
-    4673,  8221,  8221,  8221,  8221,  6937,  8221,  8221,  -728,  -728,
-    7686,  -728,  3736,  6214,   440,  7686,  8328,  8328,  8328,  8328,
-    8328,  8328,  8328,  8328,  8328,  8328,  8328,  8328,  8328,  8328,
-    8328,  8328,  8328,  8328,  8328,  8328,  8328,  8328,  8328,  8328,
-    8328,  8328,  2347,  7044,  9214,  -728,  -728, 10090,  -728,  -728,
-    -728,  8435,  8435,  -728,   475,  -728,   323,  -728,   377,  -728,
-    -728,  -728,   294,  -728,  -728,  -728,  9287,  7044,  9360,  2945,
-    8221,   918,  -728,   522,  -728,   575,   584,   308,  -728,  3079,
-     583,  8328,  9433,  7044,  9506,  8328,  8328,  3337,   434,  7793,
-     589,  -728,    43,    43,   133,  9579,  7044,  9652,  -728,  -728,
-    -728,  -728,  8328,  7151,  -728,  -728,  7365,  -728,   400,   462,
-    -728,  -728,   400,  -728,   465,   467,  -728,   142,  -728,  -728,
-    6590,  3465,   471,  9433,  9506,  8328,   862,   400,  -728,  -728,
-    4798,   469,   400,  -728,  -728,  7472,  -728,  -728,  7579,  -728,
-    -728,  -728,   377,   139,  8954,  -728,  8954,  9725,  7044,  9798,
-     507,  -728,  -728,  -728,  -728,  1138,  -728,  -728,  -728,  -728,
-     728,    92,  -728,  -728,  -728,  -728,   478,  -728,   479,   570,
-     485,   581,  -728,  -728,   444,  4022,  -728,  -728,  8328,  8328,
-    -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,    64,  8328,
-    -728,   488,   501,  -728,   400,  8954,   502,  -728,  -728,  -728,
-     530,  1069,  -728,  -728,   442,  1131,  1131,  1131,  1131,   959,
-     959,  9233,  2083,  1131,  1131, 10144, 10144,   732,   732,  2781,
-     959,   959,  1042,  1042,  1048,    47,    47,   442,   442,   442,
-    2661,  5880,  2802,  5992,  -728,   183,  -728,   400,   412,  -728,
-     428,  -728,  -728,  5768,  -728,  -728,  1547,    64,    64,  -728,
-    2029,  -728,  6211,  -728,  -728,   294,  -728,  8221,  2945,   538,
-      -1,  -728,   183,   400,   183,   631,   142,   728,  2945,   294,
-    6710,  6590,  -728,  7900,   628,  -728,   518,  -728,  2177,  5432,
-    5544,   400,   340,   345,   628,   637,    50,  -728,  -728,  -728,
-    -728,  -728,    72,    74,   400,   135,   136,  8221,  -728,  8328,
-     409,  -728,   380,  -728,  -728,  -728,  -728,  7151,  7365,  -728,
-    -728,   513,  -728,  6211,    67,   862,  -728,   140,   440,  -728,
-     538,    -1,   400,   315,   322,  8328,  -728,  1138,   416,  -728,
-     511,   400,  -728,   400,  4165,  4022,  -728,   728,  -728,  -728,
-     728,  -728,  -728,   718,  -728,  -728,  -728,   519,  4022,   442,
-     442,  -728,   903,  4165,  -728,  -728,   515,  8007,  -728,  -728,
-    8954,  8435,  8328,   549,  8435,  8435,  -728,   475,   526,   473,
-    8435,  8435,  -728,  -728,   475,  -728,    91,   163,  4165,  4022,
-    8328,    64,  -728,   294,   649,  -728,  -728,  -728,   400,   660,
-    -728,  -728,  -728,  -728,   488,  -728,   582,  -728,  3608,   664,
-    -728,  8221,   668,  -728,  8328,  8328,   389,  8328,  8328,   671,
-    -728,  8114,  3208,  4165,  4165,   137,    43,  -728,  -728,   545,
-    -728,  -728,   388,  -728,   400,   873,   546,  1200,  -728,   548,
-     543,   682,   560,  -728,   561,   564,  -728,   565,  -728,   572,
-     565,  -728,   579,   608,   400,   604,   587,  -728,   588,   590,
-    -728,   726,  8328,   601,  -728,  6211,  8328,  -728,  6211,  -728,
-    6211,  -728,  -728,  8435,  -728,  6211,  -728,  6211,  -728,  -728,
-    -728,   730,   610,  6211,  4022,  2945,  -728,  -728,  -728,  -728,
-     918,  9057,    53,  -728,  -728,  4165,  -728,  -728,    53,  -728,
-    8328,  -728,  -728,   230,   738,   739,  -728,  7365,  -728,   614,
-     873,   667,  -728,  -728,   653,  -728,  -728,   728,  -728,   718,
-    -728,   718,  -728,   718,  -728,  -728,  -728,  9160,   646,  -728,
-     934,  -728,   934,  -728,   718,  -728,  -728,   621,  6211,  -728,
-    6211,  -728,  -728,   626,   752,  2945,   708,  -728,   393,   368,
-     373,  2945,  -728,  3079,  -728,  -728,  -728,  -728,  -728,  4165,
-     873,   614,   873,   629,  -728,   149,  -728,  -728,   565,   630,
-     565,   565,   715,   403,  -728,   638,   639,   565,  -728,   642,
-     565,  -728,  -728,   765,   377,  9871,  7044,  9944,   584,   518,
-     768,   614,   873,   653,  -728,  -728,   718,  -728,  -728,  -728,
-    -728, 10017,   934,  -728,   718,  -728,  -728,   718,  -728,  -728,
-    -728,   114,    -1,   400,    61,    77,  -728,  -728,  -728,   614,
-    -728,   565,   648,   650,   565,   654,   565,   565,    79,  -728,
-    -728,   718,  -728,  -728,  -728,   565,  -728
-};
-
-/* YYPGOTO[NTERM-NUM].  */
-static const yytype_int16 yypgoto[] =
-{
-    -728,  -728,  -728,   367,  -728,    28,  -728,  -352,   282,  -728,
-      87,  -728,  -289,   869,    41,   -52,  -728,  -484,  -728,    -5,
-     778,  -167,   -10,   -69,  -277,  -391,   -18,    52,   -68,   792,
-       9,   -14,  -728,  -728,  -728,  -195,  -728,  1049,   187,  -728,
-     -15,   258,  -325,    78,    -9,  -728,  -359,  -231,    89,  -279,
-       4,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,
-    -728,  -728,  -728,  -728,  -728,  -728,  -728,  -728,   640,  -207,
-    -368,   -80,  -496,  -728,  -624,  -674,   180,  -728,  -464,  -728,
-    -572,  -728,   -74,  -728,  -728,   134,  -728,  -728,  -728,   -75,
-    -728,  -728,  -366,  -728,   -65,  -728,  -728,  -728,  -728,  -728,
-     528,  -728,  -728,  -728,  -728,    15,  -728,  -728,  1217,  1437,
-     803,  1529,  -728,  -728,    40,  -262,  -727,     2,  -569,  -489,
-    -592,  -715,     3,   185,  -728,  -506,  -728,  -259,  1024,  -728,
-    -728,  -728,    21,  -377,  2003,  -282,  -728,   645,   -16,   -25,
-    -136,  -535,  -244,     8,    18,   -28,    -2
-};
-
-/* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
-   positive, shift that token.  If negative, reduce the rule which
-   number is the opposite.  If YYTABLE_NINF, syntax error.  */
-#define YYTABLE_NINF -524
-static const yytype_int16 yytable[] =
-{
-      91,   444,   250,   314,   350,   387,   296,   247,   407,   107,
-     107,   233,   233,   248,   252,   233,   185,   565,   537,   107,
-     217,   462,   585,   202,   472,   591,   498,   439,   685,   603,
-     218,   441,    92,   300,   359,   279,   503,   239,   239,   265,
-     362,   239,   563,   202,   601,   299,   706,   601,   738,   272,
-     276,   799,   212,   215,    74,   619,    74,   107,   581,   715,
-     535,   603,   543,   378,   289,   546,   378,   224,   733,   217,
-     588,   594,   271,   275,   -96,   353,   107,   857,   699,   218,
-     745,   354,   247,   678,   679,  -273,   564,   722,   709,    63,
-     -98,    63,   -95,   427,   236,   241,   353,   -97,   242,   -99,
-     535,    74,   543,   802,   659,   238,   238,   868,   345,   238,
-     291,   292,   472,   418,   365,   564,   316,   348,  -432,   348,
-     352,   634,   -94,   622,   218,   425,   851,   -97,   431,     3,
-    -101,   735,   433,   310,   739,  -273,  -273,   -94,  -501,  -101,
-     270,   651,   564,  -435,  -100,   494,   749,   533,   435,   541,
-     363,   737,   541,   214,   740,    74,   857,   254,  -100,   346,
-     -96,   -98,   -95,   746,   339,   340,   341,   564,   -86,   444,
-     -93,   533,   818,   541,   -67,   -92,   652,   868,   881,   306,
-     307,   213,   214,   761,   407,   213,   214,   533,   711,   541,
-     768,   308,   213,   214,  -435,   213,   214,   635,   633,   388,
-     533,   472,   541,   -96,   -96,   -81,   684,   289,   909,   443,
-     -89,  -500,   -91,  -501,  -434,   738,   689,   774,   444,   -98,
-     -98,   -95,   -95,   217,   218,   349,   802,   349,   533,   541,
-     218,   603,   246,   218,   430,   -86,   405,   405,   233,   273,
-     233,   233,   733,   -93,   416,   698,   429,   389,   601,   601,
-     265,   733,   533,  -500,   541,    74,   -97,   -97,   490,  -317,
-     258,   392,   393,   499,   239,  -434,   239,   315,  -436,   754,
-     217,   -92,   604,   -88,   -90,   -87,   606,   311,   438,  -437,
-     218,   609,   107,   214,  -432,   214,   342,   883,   437,   437,
-     351,   614,   214,   437,   695,   496,   616,   844,   561,   549,
-     551,   859,   265,   -94,   366,   688,    74,   386,   472,  -317,
-    -317,    74,    74,   243,   866,  -439,   869,   107,   858,  -436,
-     860,   408,   246,   411,   861,  -438,  -101,   249,   480,   542,
-    -437,   261,   238,   867,   238,   870,   343,   344,   233,   382,
-     -88,   416,   481,   482,   483,   484,   426,   -90,   796,   294,
-     295,  -427,    74,   542,   367,   368,  -431,    74,   658,   249,
-     306,   307,   233,   214,    74,   416,  -439,   500,   918,   542,
-     556,   718,   498,   721,   575,   618,  -438,   443,   233,   712,
-     218,   416,   542,   444,   357,   261,   915,    63,   358,   383,
-     384,   233,   485,   750,   416,   374,   425,   911,   377,   492,
-     590,   590,  -427,   914,   492,   916,   610,  -431,   917,   542,
-     218,   218,   405,   405,  -386,  -100,   399,   400,   401,    91,
-     603,    74,   -88,   834,   602,   395,   443,   845,   707,   -90,
-     687,    74,   925,   708,   542,   202,   213,   214,   601,    74,
-     423,   381,   447,   233,   360,   361,   416,   -96,   107,   385,
-     107,   389,   -98,   -88,  -433,   -88,   617,   632,   -88,  -264,
-     -90,   391,   -90,  -274,   639,   -90,   639,   626,   639,   451,
-     452,   453,   454,    74,  -386,   396,   397,   790,   586,   875,
-     473,   292,    74,   873,   476,   477,   655,   394,   718,   891,
-     383,   424,   448,   449,   663,   728,   -95,   491,   402,   107,
-     670,   398,   502,   403,  -433,  -433,   646,   477,    63,  -264,
-    -264,   316,   668,  -274,  -274,   421,   671,   615,   406,   -96,
-     666,   472,  -386,  -497,  -386,  -386,   667,    74,   672,   876,
-     877,   672,   701,   698,   674,   -98,   422,   677,   668,   367,
-     368,   675,   261,   214,   675,   655,   655,   666,   428,   672,
-     -88,   903,   778,   -66,   725,  -498,   668,   692,   434,   440,
-     442,   763,   675,   682,  -504,   446,   -90,   478,   479,   668,
-     553,   697,   700,   218,   700,   841,   502,   690,   497,   691,
-     -95,   843,   700,  -427,   473,   572,   202,   218,   798,   598,
-     600,   443,   573,   273,   261,   564,   577,   668,   683,   587,
-     405,   769,   605,   607,   218,   608,   612,   -81,   730,   499,
-      74,   -87,   757,   759,   625,  -431,   637,   640,   764,   766,
-      74,   642,   600,   643,  -504,   273,  -253,   730,   719,   632,
-     726,  -497,   645,  -427,  -427,   437,  -497,   661,   716,   657,
-     660,   686,    77,   698,    77,   108,   108,   710,   720,   727,
-     208,   208,   208,  -254,   741,   225,   208,   208,   756,   777,
-     208,   576,   492,  -498,   107,  -431,  -431,   762,  -498,   584,
-     779,   781,  -504,   785,  -504,  -504,   656,  -500,   789,   655,
-     533,   791,   541,   797,   800,   804,    74,    74,   803,    77,
-     208,   776,   805,   280,   783,   806,   533,   787,   208,   807,
-      74,   218,   809,   811,   854,    74,   451,   452,   453,   454,
-     813,   829,   280,   500,   816,   817,   819,   405,   626,   730,
-     451,   452,   453,   454,   590,   820,   822,   632,   824,   632,
-      74,    74,   639,   639,   218,   639,   826,   639,   639,  -255,
-     831,   208,   788,    77,   639,   832,   639,   639,   847,   848,
-      74,   450,   850,   451,   452,   453,   454,   647,   864,  -256,
-     694,   871,   872,   874,    74,    74,    74,   882,   886,   626,
-     890,   451,   452,   453,   454,   900,   892,   894,   908,   450,
-     897,   451,   452,   453,   454,   107,   717,  -500,   611,  -501,
-     455,   700,   921,   223,   600,   273,   456,   457,   112,   907,
-     218,   316,   632,   853,   676,   852,   218,   724,   455,   910,
-     188,   770,   723,   906,   458,   457,   474,   459,   455,     0,
-     835,   107,   734,   865,   456,   457,    74,    74,     0,     0,
-     884,     0,   458,   837,   372,     0,     0,    74,     0,   460,
-       0,     0,   458,    77,   753,   459,     0,   337,   338,   339,
-     340,   341,   632,     0,   632,     0,   639,   639,   639,   639,
-     208,   208,   542,   639,   639,   639,     0,   639,   639,     0,
-       0,   233,     0,     0,   416,     0,   575,   700,   668,   205,
-     205,   205,     0,   208,   632,   208,   208,    74,     0,   208,
-     208,     0,     0,    74,    77,    74,     0,     0,   792,    77,
-      77,    74,   301,   302,   303,   304,   305,     0,     0,   639,
-       0,     0,   639,   639,   639,   639,   731,   732,   280,   267,
-       0,     0,     0,   639,   626,     0,   451,   452,   453,   454,
-     742,     0,     0,     0,     0,   751,     0,     0,     0,   827,
-      77,   208,   208,   208,   208,    77,   208,   208,     0,     0,
-     208,     0,    77,   280,   743,   208,   451,   452,   453,   454,
-     771,   772,     0,   627,     0,     0,     0,     0,     0,   450,
-     356,   451,   452,   453,   454,     0,     0,     0,     0,     0,
-     784,     0,     0,   208,   273,   743,     0,   451,   452,   453,
-     454,   208,   208,   455,   793,   794,   795,     0,     0,   456,
-     457,     0,     0,     0,     0,     0,     0,   208,   455,    77,
-     208,     0,     0,     0,   456,   457,     0,   458,     0,    77,
-     459,     0,     0,   208,   455,     0,     0,    77,   316,     0,
-     456,   457,   458,     0,     0,   459,   208,     0,     0,     0,
-       0,     0,     0,   329,   330,     0,   214,     0,   458,     0,
-       0,   459,     0,     0,     0,     0,   833,   567,     0,     0,
-       0,    77,     0,     0,     0,   234,   234,   842,     0,   234,
-      77,   334,   335,   336,   337,   338,   339,   340,   341,     0,
-       0,     0,     0,     0,   280,     0,   280,     0,   208,   205,
-     205,     0,     0,     0,     0,   255,   257,     0,     0,     0,
-     234,   234,     0,     0,     0,     0,     0,   297,   298,     0,
-       0,   316,     0,   662,     0,    77,     0,   316,   417,   419,
-       0,     0,     0,   878,     0,   879,   329,   330,     0,     0,
-       0,   880,   329,   330,     0,   280,     0,     0,   316,   317,
-     318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
-     328,     0,     0,   329,   330,     0,   336,   337,   338,   339,
-     340,   341,     0,   337,   338,   339,   340,   341,     0,     0,
-     205,   205,   205,   205,     0,   486,   487,   331,     0,   332,
-     333,   334,   335,   336,   337,   338,   339,   340,   341,   626,
-       0,   451,   452,   453,   454,     0,     0,   208,    77,     0,
-     316,  -524,  -524,  -524,  -524,   321,   322,  -230,    77,  -524,
-    -524,     0,     0,     0,     0,   329,   330,     0,     0,    86,
-       0,    86,   109,   109,   109,     0,     0,     0,   627,     0,
-       0,     0,   227,     0,   628,     0,     0,   208,     0,   566,
-       0,   332,   333,   334,   335,   336,   337,   338,   339,   340,
-     341,   626,     0,   451,   452,   453,   454,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
-     281,     0,     0,     0,    77,    77,     0,     0,   234,   234,
-     234,   297,     0,     0,     0,     0,     0,     0,    77,   281,
-     627,     0,   234,    77,   234,   234,   801,     0,     0,     0,
-     280,   208,     0,     0,   208,   208,     0,     0,     0,     0,
-     208,   208,     0,     0,     0,     0,     0,     0,    77,    77,
-      86,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    77,     0,
-       0,   208,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,    77,    77,    77,     0,     0,     0,     0,   234,
-       0,     0,     0,     0,   501,   504,   505,   506,   507,   508,
-     509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
-     519,   520,   521,   522,   523,   524,   525,   526,   527,   528,
-     529,     0,   234,     0,     0,     0,     0,     0,     0,     0,
-     550,   552,     0,   208,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,    77,    77,   234,     0,     0,     0,
-      86,   838,     0,     0,     0,    77,   205,     0,     0,     0,
-     578,     0,   234,     0,   550,   552,     0,     0,   234,    87,
-       0,    87,     0,     0,     0,   234,     0,     0,     0,     0,
-       0,   234,   234,     0,     0,   234,     0,   863,     0,     0,
-       0,     0,     0,     0,     0,     0,   205,     0,     0,     0,
-       0,    86,     0,     0,   613,    77,    86,    86,     0,     0,
-       0,    77,     0,    77,   234,     0,    87,   234,     0,    77,
-       0,     0,   641,     0,   644,   281,     0,   234,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   208,    86,     0,     0,
-       0,     0,    86,     0,     0,     0,     0,   649,   650,    86,
-     281,    89,     0,    89,   110,   110,     0,     0,   234,     0,
-      87,     0,     0,     0,   228,     0,     0,  -523,     0,     0,
-       0,     0,     0,     0,     0,  -523,  -523,  -523,     0,     0,
-    -523,  -523,  -523,     0,  -523,     0,     0,     0,     0,     0,
-     205,     0,     0,  -523,  -523,     0,     0,     0,    89,     0,
-       0,     0,   282,     0,  -523,  -523,    86,  -523,  -523,  -523,
-    -523,  -523,     0,     0,     0,     0,    86,     0,     0,     0,
-       0,   282,     0,     0,    86,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   234,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,    89,  -523,     0,     0,     0,     0,    86,     0,
-      87,     0,     0,     0,     0,     0,     0,    86,   234,     0,
-       0,     0,     0,     0,     0,     0,   234,   234,     0,     0,
-       0,   281,     0,   281,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   234,     0,     0,     0,     0,     0,
-       0,  -523,  -523,     0,  -523,     0,   246,  -523,     0,  -523,
-    -523,    87,    86,     0,     0,     0,    87,    87,     0,     0,
-       0,     0,     0,     0,     0,     0,   234,     0,     0,     0,
-     578,   755,   281,   758,   760,     0,     0,     0,     0,   765,
-     767,     0,     0,     0,     0,     0,     0,     0,     0,   773,
-       0,     0,    89,     0,     0,     0,     0,    87,     0,     0,
-       0,     0,    87,     0,     0,     0,     0,     0,     0,    87,
-       0,     0,     0,   758,   760,     0,   765,   767,   808,   810,
-     234,   812,     0,   814,   815,     0,     0,     0,     0,     0,
-     821,     0,   823,   825,     0,    86,     0,     0,     0,     0,
-       0,     0,     0,    89,     0,    86,     0,     0,    89,    89,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   234,     0,     0,     0,   828,    87,   282,     0,     0,
-       0,     0,   830,     0,     0,     0,    87,     0,     0,     0,
-       0,     0,     0,     0,    87,     0,     0,     0,     0,    89,
-       0,     0,     0,     0,    89,     0,     0,     0,     0,   830,
-       0,    89,   282,     0,     0,     0,   234,     0,     0,     0,
-       0,    86,    86,     0,     0,     0,     0,     0,    87,     0,
-       0,     0,     0,     0,     0,    86,     0,    87,     0,     0,
-      86,     0,     0,     0,     0,     0,     0,   281,     0,     0,
-       0,     0,   885,   887,   888,   889,     0,     0,     0,   893,
-     895,   896,     0,   898,   899,    86,    86,     0,    89,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    89,     0,
-       0,     0,    87,     0,     0,    86,    89,     0,     0,     0,
-       0,     0,     0,     0,     0,   234,     0,     0,     0,    86,
-      86,    86,     0,     0,     0,   919,     0,     0,   920,   922,
-     923,   924,     0,     0,     0,     0,     0,     0,     0,   926,
-      89,     0,     0,     0,     0,     0,     0,     0,     0,    89,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   282,     0,   282,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    86,    86,     0,     0,    87,     0,     0,   839,     0,
-       0,     0,    86,     0,    89,    87,     0,     0,   111,   111,
-       0,     0,     0,     0,     0,     0,     0,     0,   111,     0,
-       0,     0,     0,     0,   282,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   109,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,   111,
-     111,     0,    86,     0,   111,   111,   111,     0,    86,     0,
-      86,     0,   111,     0,     0,     0,    86,     0,     0,     0,
-       0,    87,    87,   680,     0,   111,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,    87,     0,    89,     0,     0,
-      87,     0,     0,     0,     0,     0,     0,    89,   316,   317,
-     318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
-     328,     0,     0,   329,   330,    87,    87,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,    87,     0,   331,     0,   332,
-     333,   334,   335,   336,   337,   338,   339,   340,   341,    87,
-      87,    87,   316,   317,   318,   319,   320,   321,   322,   323,
-       0,   325,   326,    89,    89,     0,     0,   329,   330,     0,
-       0,     0,     0,     0,     0,     0,     0,    89,     0,     0,
-       0,     0,    89,     0,     0,     0,     0,     0,     0,   282,
-       0,     0,     0,   332,   333,   334,   335,   336,   337,   338,
-     339,   340,   341,     0,     0,     0,     0,    89,    89,     0,
-       0,    87,    87,     0,     0,     0,     0,     0,     0,     0,
-       0,   662,    87,     0,     0,     0,     0,    89,     0,     0,
-       0,     0,   111,   111,   111,   111,     0,     0,     0,     0,
-       0,    89,    89,    89,     0,     0,   316,   317,   318,   319,
-     320,   321,   322,   323,   324,   325,   326,   327,   328,     0,
-       0,   329,   330,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,    87,     0,     0,     0,     0,     0,    87,     0,
-      87,   111,     0,     0,     0,   331,    87,   332,   333,   334,
-     335,   336,   337,   338,   339,   340,   341,     0,     0,     0,
-       0,     0,     0,    89,    89,     0,     0,     0,     0,     0,
-     840,     0,     0,     0,    89,     0,   111,     0,     0,   111,
-     111,   111,   111,   111,   111,   111,   111,   111,   111,   111,
-     111,   111,   111,   111,   111,   111,   111,   111,   111,   111,
-     111,   111,   111,   111,   111,     0,   110,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,    89,     0,     0,     0,     0,     0,
-      89,     0,    89,     0,     0,     0,     0,     0,    89,     0,
-       0,     0,     0,     0,   111,     0,     0,     0,   111,   111,
-       0,     0,   111,     0,     0,     0,     0,     0,   530,   531,
-       0,     0,   532,     0,     0,   111,   111,     0,     0,   111,
-       0,     0,     0,     0,   156,   157,   158,   159,   160,   161,
-     162,   163,   164,     0,     0,   165,   166,     0,   111,   167,
-     168,   169,   170,     0,     0,     0,     0,     0,   111,     0,
-       0,   111,     0,   171,     0,     0,     0,   111,     0,   111,
-       0,     0,     0,     0,     0,     0,     0,   172,   173,   174,
-     175,   176,   177,   178,   179,   180,   181,     0,   182,   183,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   111,   111,     0,  -523,     4,   246,     5,     6,     7,
-       8,     9,   111,     0,     0,    10,    11,     0,   111,     0,
-      12,     0,    13,    14,    15,    16,    17,    18,    19,     0,
-       0,     0,     0,     0,    20,    21,    22,    23,    24,    25,
-      26,     0,     0,    27,     0,     0,     0,     0,     0,    28,
-      29,    30,    31,    32,     0,    33,    34,    35,    36,    37,
-      38,     0,    39,    40,    41,    42,    43,     0,    44,    45,
-       0,    46,    47,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    48,     0,     0,    49,    50,   111,    51,    52,     0,
-      53,     0,    54,    55,     0,     0,     0,    56,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   111,     0,    57,    58,    59,     0,     0,     0,
-     111,   111,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,  -523,  -523,   111,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     111,  -504,     0,   111,     0,   111,     0,     0,     0,  -504,
-    -504,  -504,     0,     0,     0,  -504,  -504,     0,  -504,     0,
-       0,     0,     0,   111,     0,     0,     0,  -504,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,  -504,  -504,
-       0,  -504,  -504,  -504,  -504,  -504,     0,   111,   111,     0,
-     111,   111,     0,     0,   111,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-    -504,  -504,  -504,  -504,  -504,  -504,  -504,  -504,  -504,  -504,
-    -504,  -504,  -504,     0,     0,  -504,  -504,  -504,     0,   664,
-       0,     0,     0,     0,     0,   111,     0,     0,     0,   111,
-       0,     0,     0,     0,     0,     0,     0,     0,   -97,  -504,
-       0,  -504,  -504,  -504,  -504,  -504,  -504,  -504,  -504,  -504,
-    -504,     0,     0,     0,   111,     0,     0,     0,     0,     0,
-       0,     0,     0,   111,     0,  -504,  -504,  -504,  -504,   -89,
-     111,  -504,  -273,  -504,  -504,     0,     0,     0,     0,     0,
-    -273,  -273,  -273,     0,     0,     0,  -273,  -273,     0,  -273,
-     111,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,  -273,
-    -273,     0,  -273,  -273,  -273,  -273,  -273,     0,     0,     0,
-     316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
-     326,   327,   328,     0,     0,   329,   330,     0,     0,     0,
-       0,  -273,  -273,  -273,  -273,  -273,  -273,  -273,  -273,  -273,
-    -273,  -273,  -273,  -273,     0,     0,  -273,  -273,  -273,   331,
-     665,   332,   333,   334,   335,   336,   337,   338,   339,   340,
-     341,     0,     0,     0,     0,     0,     0,     0,     0,   -99,
-    -273,     0,  -273,  -273,  -273,  -273,  -273,  -273,  -273,  -273,
-    -273,  -273,     0,     0,   214,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,  -273,  -273,  -273,
-     -91,     0,  -273,     0,  -273,  -273,   259,     0,     5,     6,
-       7,     8,     9,  -523,  -523,  -523,    10,    11,     0,     0,
-    -523,    12,     0,    13,    14,    15,    16,    17,    18,    19,
-       0,     0,     0,     0,     0,    20,    21,    22,    23,    24,
-      25,    26,     0,     0,    27,     0,     0,     0,     0,     0,
-      28,     0,    30,    31,    32,     0,    33,    34,    35,    36,
-      37,    38,     0,    39,    40,    41,    42,    43,     0,    44,
-      45,     0,    46,    47,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,    48,     0,     0,    49,    50,     0,    51,    52,
-       0,    53,     0,    54,    55,     0,     0,     0,    56,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,    57,    58,    59,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     259,     0,     5,     6,     7,     8,     9,  -523,  -523,  -523,
-      10,    11,     0,  -523,  -523,    12,     0,    13,    14,    15,
-      16,    17,    18,    19,     0,     0,     0,     0,     0,    20,
-      21,    22,    23,    24,    25,    26,     0,     0,    27,     0,
-       0,     0,     0,     0,    28,     0,    30,    31,    32,     0,
-      33,    34,    35,    36,    37,    38,     0,    39,    40,    41,
-      42,    43,     0,    44,    45,     0,    46,    47,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    48,     0,     0,    49,
-      50,     0,    51,    52,     0,    53,     0,    54,    55,     0,
-       0,     0,    56,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,    57,
-      58,    59,     0,     0,     0,     0,     0,     0,     0,   259,
-       0,     5,     6,     7,     8,     9,     0,     0,  -523,    10,
-      11,  -523,  -523,  -523,    12,  -523,    13,    14,    15,    16,
-      17,    18,    19,     0,     0,     0,     0,     0,    20,    21,
-      22,    23,    24,    25,    26,     0,     0,    27,     0,     0,
-       0,     0,     0,    28,     0,    30,    31,    32,     0,    33,
-      34,    35,    36,    37,    38,     0,    39,    40,    41,    42,
-      43,     0,    44,    45,     0,    46,    47,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,    48,     0,     0,    49,    50,
-       0,    51,    52,     0,    53,     0,    54,    55,     0,     0,
-       0,    56,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    57,    58,
-      59,     0,     0,     0,     0,     0,     0,     0,   259,     0,
-       5,     6,     7,     8,     9,     0,     0,  -523,    10,    11,
-    -523,  -523,  -523,    12,     0,    13,    14,    15,    16,    17,
-      18,    19,     0,     0,     0,     0,     0,    20,    21,    22,
-      23,    24,    25,    26,     0,     0,    27,     0,     0,     0,
-       0,     0,    28,     0,    30,    31,    32,     0,    33,    34,
-      35,    36,    37,    38,     0,    39,    40,    41,    42,    43,
-       0,    44,    45,     0,    46,    47,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,    48,     0,     0,    49,    50,     0,
-      51,    52,     0,    53,     0,    54,    55,     0,     0,     0,
-      56,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    57,    58,    59,
-       0,     0,     0,     0,     0,     0,     4,     0,     5,     6,
-       7,     8,     9,     0,     0,     0,    10,    11,     0,  -523,
-    -523,    12,     0,    13,    14,    15,    16,    17,    18,    19,
-       0,     0,     0,     0,     0,    20,    21,    22,    23,    24,
-      25,    26,     0,     0,    27,     0,     0,     0,     0,     0,
-      28,    29,    30,    31,    32,     0,    33,    34,    35,    36,
-      37,    38,     0,    39,    40,    41,    42,    43,     0,    44,
-      45,     0,    46,    47,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,    48,     0,     0,    49,    50,     0,    51,    52,
-       0,    53,     0,    54,    55,     0,     0,     0,    56,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,    57,    58,    59,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-    -523,     0,     0,     0,     0,     0,     0,  -523,  -523,   259,
-       0,     5,     6,     7,     8,     9,     0,  -523,  -523,    10,
-      11,     0,     0,     0,    12,     0,    13,    14,    15,    16,
-      17,    18,    19,     0,     0,     0,     0,     0,    20,    21,
-      22,    23,    24,    25,    26,     0,     0,    27,     0,     0,
-       0,     0,     0,    28,     0,    30,    31,    32,     0,    33,
-      34,    35,    36,    37,    38,     0,    39,    40,    41,    42,
-      43,     0,    44,    45,     0,    46,    47,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,    48,     0,     0,    49,    50,
-       0,    51,    52,     0,    53,     0,    54,    55,     0,     0,
-       0,    56,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    57,    58,
-      59,     0,     0,     0,     0,     0,     0,   259,     0,     5,
-       6,     7,     8,     9,     0,     0,     0,    10,    11,     0,
-    -523,  -523,    12,     0,    13,    14,    15,    16,    17,    18,
-      19,     0,     0,     0,     0,     0,    20,    21,    22,    23,
-      24,    25,    26,     0,     0,    27,     0,     0,     0,     0,
-       0,    28,     0,    30,    31,    32,     0,    33,    34,    35,
-      36,    37,    38,     0,    39,    40,    41,    42,    43,     0,
-      44,    45,     0,    46,    47,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,    48,     0,     0,   260,    50,     0,    51,
-      52,     0,    53,     0,    54,    55,     0,     0,     0,    56,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    57,    58,    59,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,  -523,     0,  -523,  -523,
-     259,     0,     5,     6,     7,     8,     9,     0,     0,     0,
-      10,    11,     0,     0,     0,    12,     0,    13,    14,    15,
-      16,    17,    18,    19,     0,     0,     0,     0,     0,    20,
-      21,    22,    23,    24,    25,    26,     0,     0,    27,     0,
-       0,     0,     0,     0,    28,     0,    30,    31,    32,     0,
-      33,    34,    35,    36,    37,    38,     0,    39,    40,    41,
-      42,    43,     0,    44,    45,     0,    46,    47,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    48,     0,     0,    49,
-      50,     0,    51,    52,     0,    53,     0,    54,    55,     0,
-       0,     0,    56,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,    57,
-      58,    59,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,  -523,
-       0,  -523,  -523,   259,     0,     5,     6,     7,     8,     9,
-       0,     0,     0,    10,    11,     0,     0,     0,    12,     0,
-      13,    14,    15,    16,    17,    18,    19,     0,     0,     0,
-       0,     0,    20,    21,    22,    23,    24,    25,    26,     0,
-       0,    27,     0,     0,     0,     0,     0,    28,     0,    30,
-      31,    32,     0,    33,    34,    35,    36,    37,    38,     0,
-      39,    40,    41,    42,    43,     0,    44,    45,     0,    46,
-      47,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,    48,
-       0,     0,    49,    50,     0,    51,    52,     0,    53,     0,
-      54,    55,     0,     0,     0,    56,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,    57,    58,    59,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,  -523,     0,     0,
-       0,     0,     0,     0,  -523,  -523,   259,     0,     5,     6,
-       7,     8,     9,     0,     0,  -523,    10,    11,     0,     0,
-       0,    12,     0,    13,    14,    15,    16,    17,    18,    19,
-       0,     0,     0,     0,     0,    20,    21,    22,    23,    24,
-      25,    26,     0,     0,    27,     0,     0,     0,     0,     0,
-      28,     0,    30,    31,    32,     0,    33,    34,    35,    36,
-      37,    38,     0,    39,    40,    41,    42,    43,     0,    44,
-      45,     0,    46,    47,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,    48,     0,     0,    49,    50,     0,    51,    52,
-       0,    53,     0,    54,    55,     0,     0,     0,    56,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,    57,    58,    59,     0,     0,
-       0,     0,     0,     0,     0,     0,     5,     6,     7,     0,
-       9,     0,     0,     0,    10,    11,     0,  -523,  -523,    12,
-       0,    13,    14,    15,    16,    17,    18,    19,     0,     0,
-       0,     0,     0,    20,    21,    22,    23,    24,    25,    26,
-       0,     0,    98,     0,     0,     0,     0,     0,     0,     0,
-       0,    31,    32,     0,    33,    34,    35,    36,    37,    38,
-     229,    39,    40,    41,    42,    43,     0,    44,    45,     0,
-      46,    47,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     204,     0,     0,   103,    50,     0,    51,    52,     0,   230,
-     231,    54,    55,     0,     0,     0,    56,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,    57,   232,    59,     0,     0,     0,     0,
-       0,     0,     5,     6,     7,     0,     9,     0,     0,     0,
-      10,    11,     0,     0,     0,    12,   214,    13,    14,    15,
-      16,    17,    18,    19,     0,     0,     0,     0,     0,    20,
-      21,    22,    23,    24,    25,    26,     0,     0,    27,     0,
-       0,     0,     0,     0,     0,     0,     0,    31,    32,     0,
-      33,    34,    35,    36,    37,    38,     0,    39,    40,    41,
-      42,    43,     0,    44,    45,     0,    46,    47,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   204,     0,     0,   103,
-      50,     0,    51,    52,     0,     0,     0,    54,    55,     0,
-       0,     0,    56,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,    57,
-      58,    59,     0,     0,     0,     0,     0,     0,     0,     0,
-       5,     6,     7,     0,     9,     0,     0,     0,    10,    11,
-       0,   213,   214,    12,     0,    13,    14,    15,    16,    17,
-      18,    19,     0,     0,     0,     0,     0,    20,    21,    22,
-      23,    24,    25,    26,     0,     0,    27,     0,     0,     0,
-       0,     0,     0,     0,     0,    31,    32,     0,    33,    34,
-      35,    36,    37,    38,     0,    39,    40,    41,    42,    43,
-       0,    44,    45,     0,    46,    47,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   204,     0,     0,   103,    50,     0,
-      51,    52,     0,     0,     0,    54,    55,     0,     0,     0,
-      56,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    57,    58,    59,
-       0,     0,     0,     0,     0,     0,     5,     6,     7,     8,
-       9,     0,     0,     0,    10,    11,     0,     0,     0,    12,
-     214,    13,    14,    15,    16,    17,    18,    19,     0,     0,
-       0,     0,     0,    20,    21,    22,    23,    24,    25,    26,
-       0,     0,    27,     0,     0,     0,     0,     0,    28,    29,
-      30,    31,    32,     0,    33,    34,    35,    36,    37,    38,
-       0,    39,    40,    41,    42,    43,     0,    44,    45,     0,
-      46,    47,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-      48,     0,     0,    49,    50,     0,    51,    52,     0,    53,
-       0,    54,    55,     0,     0,     0,    56,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,    57,    58,    59,     0,     0,     0,     0,
-       0,     5,     6,     7,     8,     9,     0,     0,     0,    10,
-      11,     0,     0,     0,    12,   391,    13,    14,    15,    16,
-      17,    18,    19,     0,     0,     0,     0,     0,    20,    21,
-      22,    23,    24,    25,    26,     0,     0,    27,     0,     0,
-       0,     0,     0,    28,     0,    30,    31,    32,     0,    33,
-      34,    35,    36,    37,    38,     0,    39,    40,    41,    42,
-      43,     0,    44,    45,     0,    46,    47,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,    48,     0,     0,    49,    50,
-       0,    51,    52,     0,    53,     0,    54,    55,     0,     0,
-       0,    56,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    57,    58,
-      59,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     391,   113,   114,   115,   116,   117,   118,   119,   120,   121,
-     122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
-     132,   133,   134,   135,   136,     0,     0,     0,   137,   138,
-     139,   140,   141,   142,   143,   144,   145,   146,     0,     0,
-       0,     0,     0,   147,   148,   149,   150,   151,   152,   153,
-     154,    35,    36,   155,    38,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   156,   157,   158,   159,   160,
-     161,   162,   163,   164,     0,     0,   165,   166,     0,     0,
-     167,   168,   169,   170,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   171,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   172,   173,
-     174,   175,   176,   177,   178,   179,   180,   181,     0,   182,
-     183,     0,     0,  -497,  -497,  -497,     0,  -497,     0,     0,
-       0,  -497,  -497,     0,     0,     0,  -497,   184,  -497,  -497,
-    -497,  -497,  -497,  -497,  -497,     0,  -497,     0,     0,     0,
-    -497,  -497,  -497,  -497,  -497,  -497,  -497,     0,     0,  -497,
-       0,     0,     0,     0,     0,     0,     0,     0,  -497,  -497,
-       0,  -497,  -497,  -497,  -497,  -497,  -497,  -497,  -497,  -497,
-    -497,  -497,  -497,     0,  -497,  -497,     0,  -497,  -497,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,  -497,     0,     0,
-    -497,  -497,     0,  -497,  -497,     0,  -497,  -497,  -497,  -497,
-       0,     0,     0,  -497,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-    -497,  -497,  -497,     0,     0,     0,     0,  -499,  -499,  -499,
-       0,  -499,     0,     0,  -497,  -499,  -499,     0,     0,  -497,
-    -499,     0,  -499,  -499,  -499,  -499,  -499,  -499,  -499,     0,
-    -499,     0,     0,     0,  -499,  -499,  -499,  -499,  -499,  -499,
-    -499,     0,     0,  -499,     0,     0,     0,     0,     0,     0,
-       0,     0,  -499,  -499,     0,  -499,  -499,  -499,  -499,  -499,
-    -499,  -499,  -499,  -499,  -499,  -499,  -499,     0,  -499,  -499,
-       0,  -499,  -499,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,  -499,     0,     0,  -499,  -499,     0,  -499,  -499,     0,
-    -499,  -499,  -499,  -499,     0,     0,     0,  -499,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,  -499,  -499,  -499,     0,     0,     0,
-       0,  -498,  -498,  -498,     0,  -498,     0,     0,  -499,  -498,
-    -498,     0,     0,  -499,  -498,     0,  -498,  -498,  -498,  -498,
-    -498,  -498,  -498,     0,  -498,     0,     0,     0,  -498,  -498,
-    -498,  -498,  -498,  -498,  -498,     0,     0,  -498,     0,     0,
-       0,     0,     0,     0,     0,     0,  -498,  -498,     0,  -498,
-    -498,  -498,  -498,  -498,  -498,  -498,  -498,  -498,  -498,  -498,
-    -498,     0,  -498,  -498,     0,  -498,  -498,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,  -498,     0,     0,  -498,  -498,
-       0,  -498,  -498,     0,  -498,  -498,  -498,  -498,     0,     0,
-       0,  -498,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,  -498,  -498,
-    -498,     0,     0,     0,     0,  -500,  -500,  -500,     0,  -500,
-       0,     0,  -498,  -500,  -500,     0,     0,  -498,  -500,     0,
-    -500,  -500,  -500,  -500,  -500,  -500,  -500,     0,     0,     0,
-       0,     0,  -500,  -500,  -500,  -500,  -500,  -500,  -500,     0,
-       0,  -500,     0,     0,     0,     0,     0,     0,     0,     0,
-    -500,  -500,     0,  -500,  -500,  -500,  -500,  -500,  -500,  -500,
-    -500,  -500,  -500,  -500,  -500,     0,  -500,  -500,     0,  -500,
-    -500,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,  -500,
-     704,     0,  -500,  -500,     0,  -500,  -500,     0,  -500,  -500,
-    -500,  -500,     0,     0,     0,  -500,     0,     0,     0,   -97,
-       0,     0,     0,     0,     0,     0,     0,  -501,  -501,  -501,
-       0,  -501,  -500,  -500,  -500,  -501,  -501,     0,     0,     0,
-    -501,     0,  -501,  -501,  -501,  -501,  -501,  -501,  -501,     0,
-       0,  -500,     0,     0,  -501,  -501,  -501,  -501,  -501,  -501,
-    -501,     0,     0,  -501,     0,     0,     0,     0,     0,     0,
-       0,     0,  -501,  -501,     0,  -501,  -501,  -501,  -501,  -501,
-    -501,  -501,  -501,  -501,  -501,  -501,  -501,     0,  -501,  -501,
-       0,  -501,  -501,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,  -501,   705,     0,  -501,  -501,     0,  -501,  -501,     0,
-    -501,  -501,  -501,  -501,     0,     0,     0,  -501,     0,     0,
-       0,   -99,     0,     0,     0,     0,     0,     0,     0,  -248,
-    -248,  -248,     0,  -248,  -501,  -501,  -501,  -248,  -248,     0,
-       0,     0,  -248,     0,  -248,  -248,  -248,  -248,  -248,  -248,
-    -248,     0,     0,  -501,     0,     0,  -248,  -248,  -248,  -248,
-    -248,  -248,  -248,     0,     0,  -248,     0,     0,     0,     0,
-       0,     0,     0,     0,  -248,  -248,     0,  -248,  -248,  -248,
-    -248,  -248,  -248,  -248,  -248,  -248,  -248,  -248,  -248,     0,
-    -248,  -248,     0,  -248,  -248,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,  -248,     0,     0,  -248,  -248,     0,  -248,
-    -248,     0,  -248,  -248,  -248,  -248,     0,     0,     0,  -248,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,  -248,  -248,  -248,     0,  -248,  -248,  -248,  -248,  -248,
-    -248,     0,     0,     0,  -248,     0,  -248,  -248,  -248,  -248,
-    -248,  -248,  -248,     0,     0,   243,     0,     0,  -248,  -248,
-    -248,  -248,  -248,  -248,  -248,     0,     0,  -248,     0,     0,
-       0,     0,     0,     0,     0,     0,  -248,  -248,     0,  -248,
-    -248,  -248,  -248,  -248,  -248,  -248,  -248,  -248,  -248,  -248,
-    -248,     0,  -248,  -248,     0,  -248,  -248,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,  -248,     0,     0,  -248,  -248,
-       0,  -248,  -248,     0,  -248,  -248,  -248,  -248,     0,     0,
-       0,  -248,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,  -502,  -502,  -502,     0,  -502,  -248,  -248,
-    -248,  -502,  -502,     0,     0,     0,  -502,     0,  -502,  -502,
-    -502,  -502,  -502,  -502,  -502,     0,     0,   246,     0,     0,
-    -502,  -502,  -502,  -502,  -502,  -502,  -502,     0,     0,  -502,
-       0,     0,     0,     0,     0,     0,     0,     0,  -502,  -502,
-       0,  -502,  -502,  -502,  -502,  -502,  -502,  -502,  -502,  -502,
-    -502,  -502,  -502,     0,  -502,  -502,     0,  -502,  -502,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,  -502,     0,     0,
-    -502,  -502,     0,  -502,  -502,     0,  -502,  -502,  -502,  -502,
-       0,     0,     0,  -502,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,  -503,  -503,  -503,     0,  -503,
-    -502,  -502,  -502,  -503,  -503,     0,     0,     0,  -503,     0,
-    -503,  -503,  -503,  -503,  -503,  -503,  -503,     0,     0,  -502,
-       0,     0,  -503,  -503,  -503,  -503,  -503,  -503,  -503,     0,
-       0,  -503,     0,     0,     0,     0,     0,     0,     0,     0,
-    -503,  -503,     0,  -503,  -503,  -503,  -503,  -503,  -503,  -503,
-    -503,  -503,  -503,  -503,  -503,     0,  -503,  -503,     0,  -503,
-    -503,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,  -503,
-       0,     0,  -503,  -503,     0,  -503,  -503,     0,  -503,  -503,
-    -503,  -503,     0,     0,     0,  -503,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     5,     6,     7,
-       0,     9,  -503,  -503,  -503,    10,    11,     0,     0,     0,
-      12,     0,    13,    14,    15,    93,    94,    18,    19,     0,
-       0,  -503,     0,     0,    95,    96,    97,    23,    24,    25,
-      26,     0,     0,    98,     0,     0,     0,     0,     0,     0,
-       0,     0,    31,    32,     0,    33,    34,    35,    36,    37,
-      38,     0,    39,    40,    41,    42,    43,     0,    44,    45,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   277,     0,     0,   103,    50,     0,    51,    52,     0,
-       0,     0,    54,    55,     0,     0,     0,    56,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     5,     6,     7,
-       0,     9,     0,     0,   104,    10,    11,     0,     0,     0,
-      12,     0,    13,    14,    15,    93,    94,    18,    19,     0,
-       0,     0,   278,     0,    95,    96,    97,    23,    24,    25,
-      26,     0,     0,    98,     0,     0,     0,     0,     0,     0,
-       0,     0,    31,    32,     0,    33,    34,    35,    36,    37,
-      38,     0,    39,    40,    41,    42,    43,     0,    44,    45,
-     316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
-     326,   327,   328,     0,     0,   329,   330,     0,     0,     0,
-       0,   277,     0,     0,   103,    50,     0,    51,    52,     0,
-       0,     0,    54,    55,     0,     0,     0,    56,     0,   331,
-       0,   332,   333,   334,   335,   336,   337,   338,   339,   340,
-     341,     0,     0,     0,   104,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   495,   113,   114,   115,   116,   117,   118,   119,
-     120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
-     130,   131,   132,   133,   134,   135,   136,     0,     0,     0,
-     137,   138,   139,   190,   191,   192,   193,   144,   145,   146,
-       0,     0,     0,     0,     0,   147,   148,   149,   194,   195,
-     152,   196,   154,   284,   285,   197,   286,     0,     0,     0,
-       0,     0,   287,     0,     0,     0,     0,   156,   157,   158,
-     159,   160,   161,   162,   163,   164,     0,     0,   165,   166,
-       0,     0,   167,   168,   169,   170,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   171,     0,     0,     0,
-       0,     0,     0,   288,     0,     0,     0,     0,     0,     0,
-     172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
-       0,   182,   183,   113,   114,   115,   116,   117,   118,   119,
-     120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
-     130,   131,   132,   133,   134,   135,   136,     0,     0,     0,
-     137,   138,   139,   190,   191,   192,   193,   144,   145,   146,
-       0,     0,     0,     0,     0,   147,   148,   149,   194,   195,
-     152,   196,   154,   284,   285,   197,   286,     0,     0,     0,
-       0,     0,   287,     0,     0,     0,     0,   156,   157,   158,
-     159,   160,   161,   162,   163,   164,     0,     0,   165,   166,
-       0,     0,   167,   168,   169,   170,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   171,     0,     0,     0,
-       0,     0,     0,   373,     0,     0,     0,     0,     0,     0,
-     172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
-       0,   182,   183,   113,   114,   115,   116,   117,   118,   119,
-     120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
-     130,   131,   132,   133,   134,   135,   136,     0,     0,     0,
-     137,   138,   139,   190,   191,   192,   193,   144,   145,   146,
-       0,     0,     0,     0,     0,   147,   148,   149,   194,   195,
-     152,   196,   154,     0,     0,   197,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   156,   157,   158,
-     159,   160,   161,   162,   163,   164,     0,     0,   165,   166,
-       0,     0,   167,   168,   169,   170,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   171,     0,     0,   198,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
-       0,   182,   183,   113,   114,   115,   116,   117,   118,   119,
-     120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
-     130,   131,   132,   133,   134,   135,   136,     0,     0,     0,
-     137,   138,   139,   190,   191,   192,   193,   144,   145,   146,
-       0,     0,     0,     0,     0,   147,   148,   149,   194,   195,
-     152,   196,   154,     0,     0,   197,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   156,   157,   158,
-     159,   160,   161,   162,   163,   164,     0,     0,   165,   166,
-       0,     0,   167,   168,   169,   170,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   171,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
-       0,   182,   183,     5,     6,     7,     8,     9,     0,     0,
-       0,    10,    11,     0,     0,     0,    12,     0,    13,    14,
-      15,    16,    17,    18,    19,     0,     0,     0,     0,     0,
-      20,    21,    22,    23,    24,    25,    26,     0,     0,    27,
-       0,     0,     0,     0,     0,    28,    29,    30,    31,    32,
-       0,    33,    34,    35,    36,    37,    38,     0,    39,    40,
-      41,    42,    43,     0,    44,    45,     0,    46,    47,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    48,     0,     0,
-      49,    50,     0,    51,    52,     0,    53,     0,    54,    55,
-       0,     0,     0,    56,     0,     0,     0,     0,     0,     0,
-       5,     6,     7,     8,     9,     0,     0,     0,    10,    11,
-      57,    58,    59,    12,     0,    13,    14,    15,    16,    17,
-      18,    19,     0,     0,     0,     0,     0,    20,    21,    22,
-      23,    24,    25,    26,     0,     0,    27,     0,     0,     0,
-       0,     0,    28,     0,    30,    31,    32,     0,    33,    34,
-      35,    36,    37,    38,     0,    39,    40,    41,    42,    43,
-       0,    44,    45,     0,    46,    47,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,    48,     0,     0,    49,    50,     0,
-      51,    52,     0,    53,     0,    54,    55,     0,     0,     0,
-      56,     0,     0,     0,     0,     0,     0,     5,     6,     7,
-       0,     9,     0,     0,     0,    10,    11,    57,    58,    59,
-      12,     0,    13,    14,    15,    16,    17,    18,    19,     0,
-       0,     0,     0,     0,    20,    21,    22,    23,    24,    25,
-      26,     0,     0,    98,     0,     0,     0,     0,     0,     0,
-       0,     0,    31,    32,     0,    33,    34,    35,    36,    37,
-      38,   229,    39,    40,    41,    42,    43,     0,    44,    45,
-       0,    46,    47,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   204,     0,     0,   103,    50,     0,    51,    52,     0,
-     230,   231,    54,    55,     0,     0,     0,    56,     0,     0,
-       0,     0,     0,     0,     5,     6,     7,     0,     9,     0,
-       0,     0,    10,    11,    57,   232,    59,    12,     0,    13,
-      14,    15,    93,    94,    18,    19,     0,     0,     0,     0,
-       0,    95,    96,    97,    23,    24,    25,    26,     0,     0,
-      98,     0,     0,     0,     0,     0,     0,     0,     0,    31,
-      32,     0,    33,    34,    35,    36,    37,    38,   229,    39,
-      40,    41,    42,    43,     0,    44,    45,     0,    46,    47,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   204,     0,
-       0,   103,    50,     0,    51,    52,     0,   599,   231,    54,
-      55,     0,     0,     0,    56,     0,     0,     0,     0,     0,
-       0,     5,     6,     7,     0,     9,     0,     0,     0,    10,
-      11,    57,   232,    59,    12,     0,    13,    14,    15,    93,
-      94,    18,    19,     0,     0,     0,     0,     0,    95,    96,
-      97,    23,    24,    25,    26,     0,     0,    98,     0,     0,
-       0,     0,     0,     0,     0,     0,    31,    32,     0,    33,
-      34,    35,    36,    37,    38,   229,    39,    40,    41,    42,
-      43,     0,    44,    45,     0,    46,    47,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   204,     0,     0,   103,    50,
-       0,    51,    52,     0,   230,     0,    54,    55,     0,     0,
-       0,    56,     0,     0,     0,     0,     0,     0,     5,     6,
-       7,     0,     9,     0,     0,     0,    10,    11,    57,   232,
-      59,    12,     0,    13,    14,    15,    93,    94,    18,    19,
-       0,     0,     0,     0,     0,    95,    96,    97,    23,    24,
-      25,    26,     0,     0,    98,     0,     0,     0,     0,     0,
-       0,     0,     0,    31,    32,     0,    33,    34,    35,    36,
-      37,    38,   229,    39,    40,    41,    42,    43,     0,    44,
-      45,     0,    46,    47,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   204,     0,     0,   103,    50,     0,    51,    52,
-       0,     0,   231,    54,    55,     0,     0,     0,    56,     0,
-       0,     0,     0,     0,     0,     5,     6,     7,     0,     9,
-       0,     0,     0,    10,    11,    57,   232,    59,    12,     0,
-      13,    14,    15,    93,    94,    18,    19,     0,     0,     0,
-       0,     0,    95,    96,    97,    23,    24,    25,    26,     0,
-       0,    98,     0,     0,     0,     0,     0,     0,     0,     0,
-      31,    32,     0,    33,    34,    35,    36,    37,    38,   229,
-      39,    40,    41,    42,    43,     0,    44,    45,     0,    46,
-      47,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,   204,
-       0,     0,   103,    50,     0,    51,    52,     0,   599,     0,
-      54,    55,     0,     0,     0,    56,     0,     0,     0,     0,
-       0,     0,     5,     6,     7,     0,     9,     0,     0,     0,
-      10,    11,    57,   232,    59,    12,     0,    13,    14,    15,
-      93,    94,    18,    19,     0,     0,     0,     0,     0,    95,
-      96,    97,    23,    24,    25,    26,     0,     0,    98,     0,
-       0,     0,     0,     0,     0,     0,     0,    31,    32,     0,
-      33,    34,    35,    36,    37,    38,   229,    39,    40,    41,
-      42,    43,     0,    44,    45,     0,    46,    47,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   204,     0,     0,   103,
-      50,     0,    51,    52,     0,     0,     0,    54,    55,     0,
-       0,     0,    56,     0,     0,     0,     0,     0,     0,     5,
-       6,     7,     0,     9,     0,     0,     0,    10,    11,    57,
-     232,    59,    12,     0,    13,    14,    15,    16,    17,    18,
-      19,     0,     0,     0,     0,     0,    20,    21,    22,    23,
-      24,    25,    26,     0,     0,    98,     0,     0,     0,     0,
-       0,     0,     0,     0,    31,    32,     0,    33,    34,    35,
-      36,    37,    38,     0,    39,    40,    41,    42,    43,     0,
-      44,    45,     0,    46,    47,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   204,     0,     0,   103,    50,     0,    51,
-      52,     0,   489,     0,    54,    55,     0,     0,     0,    56,
-       0,     0,     0,     0,     0,     0,     5,     6,     7,     0,
-       9,     0,     0,     0,    10,    11,    57,   232,    59,    12,
-       0,    13,    14,    15,    93,    94,    18,    19,     0,     0,
-       0,     0,     0,    95,    96,    97,    23,    24,    25,    26,
-       0,     0,    98,     0,     0,     0,     0,     0,     0,     0,
-       0,    31,    32,     0,    33,    34,    35,    36,    37,    38,
-       0,    39,    40,    41,    42,    43,     0,    44,    45,     0,
-      46,    47,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     204,     0,     0,   103,    50,     0,    51,    52,     0,   230,
-       0,    54,    55,     0,     0,     0,    56,     0,     0,     0,
-       0,     0,     0,     5,     6,     7,     0,     9,     0,     0,
-       0,    10,    11,    57,   232,    59,    12,     0,    13,    14,
-      15,    93,    94,    18,    19,     0,     0,     0,     0,     0,
-      95,    96,    97,    23,    24,    25,    26,     0,     0,    98,
-       0,     0,     0,     0,     0,     0,     0,     0,    31,    32,
-       0,    33,    34,    35,    36,    37,    38,     0,    39,    40,
-      41,    42,    43,     0,    44,    45,     0,    46,    47,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   204,     0,     0,
-     103,    50,     0,    51,    52,     0,   489,     0,    54,    55,
-       0,     0,     0,    56,     0,     0,     0,     0,     0,     0,
-       5,     6,     7,     0,     9,     0,     0,     0,    10,    11,
-      57,   232,    59,    12,     0,    13,    14,    15,    93,    94,
-      18,    19,     0,     0,     0,     0,     0,    95,    96,    97,
-      23,    24,    25,    26,     0,     0,    98,     0,     0,     0,
-       0,     0,     0,     0,     0,    31,    32,     0,    33,    34,
-      35,    36,    37,    38,     0,    39,    40,    41,    42,    43,
-       0,    44,    45,     0,    46,    47,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   204,     0,     0,   103,    50,     0,
-      51,    52,     0,   752,     0,    54,    55,     0,     0,     0,
-      56,     0,     0,     0,     0,     0,     0,     5,     6,     7,
-       0,     9,     0,     0,     0,    10,    11,    57,   232,    59,
-      12,     0,    13,    14,    15,    93,    94,    18,    19,     0,
-       0,     0,     0,     0,    95,    96,    97,    23,    24,    25,
-      26,     0,     0,    98,     0,     0,     0,     0,     0,     0,
-       0,     0,    31,    32,     0,    33,    34,    35,    36,    37,
-      38,     0,    39,    40,    41,    42,    43,     0,    44,    45,
-       0,    46,    47,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   204,     0,     0,   103,    50,     0,    51,    52,     0,
-     599,     0,    54,    55,     0,     0,     0,    56,     0,     0,
-       0,     0,     0,     0,     5,     6,     7,     0,     9,     0,
-       0,     0,    10,    11,    57,   232,    59,    12,     0,    13,
-      14,    15,    16,    17,    18,    19,     0,     0,     0,     0,
-       0,    20,    21,    22,    23,    24,    25,    26,     0,     0,
-      27,     0,     0,     0,     0,     0,     0,     0,     0,    31,
-      32,     0,    33,    34,    35,    36,    37,    38,     0,    39,
-      40,    41,    42,    43,     0,    44,    45,     0,    46,    47,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   204,     0,
-       0,   103,    50,     0,    51,    52,     0,     0,     0,    54,
-      55,     0,     0,     0,    56,     0,     0,     0,     0,     0,
-       0,     5,     6,     7,     0,     9,     0,     0,     0,    10,
-      11,    57,    58,    59,    12,     0,    13,    14,    15,    93,
-      94,    18,    19,     0,     0,     0,     0,     0,    95,    96,
-      97,    23,    24,    25,    26,     0,     0,    98,     0,     0,
-       0,     0,     0,     0,     0,     0,    31,    32,     0,    33,
-      34,    35,    36,    37,    38,     0,    39,    40,    41,    42,
-      43,     0,    44,    45,     0,    46,    47,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   204,     0,     0,   103,    50,
-       0,    51,    52,     0,     0,     0,    54,    55,     0,     0,
-       0,    56,     0,     0,     0,     0,     0,     0,     5,     6,
-       7,     0,     9,     0,     0,     0,    10,    11,    57,   232,
-      59,    12,     0,    13,    14,    15,    16,    17,    18,    19,
-       0,     0,     0,     0,     0,    20,    21,    22,    23,    24,
-      25,    26,     0,     0,    98,     0,     0,     0,     0,     0,
-       0,     0,     0,    31,    32,     0,    33,    34,    35,    36,
-      37,    38,     0,    39,    40,    41,    42,    43,     0,    44,
-      45,     0,    46,    47,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   204,     0,     0,   103,    50,     0,    51,    52,
-       0,     0,     0,    54,    55,     0,     0,     0,    56,     0,
-       0,     0,     0,     0,     0,     5,     6,     7,     0,     9,
-       0,     0,     0,    10,    11,    57,   232,    59,    12,     0,
-      13,    14,    15,    93,    94,    18,    19,     0,     0,     0,
-       0,     0,    95,    96,    97,    23,    24,    25,    26,     0,
-       0,    98,     0,     0,     0,     0,     0,     0,     0,     0,
-      31,    32,     0,    99,    34,    35,    36,   100,    38,     0,
-      39,    40,    41,    42,    43,     0,    44,    45,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   101,     0,     0,   102,
-       0,     0,   103,    50,     0,    51,    52,     0,     0,     0,
-      54,    55,     0,     0,     0,    56,     0,     0,     5,     6,
-       7,     0,     9,     0,     0,     0,    10,    11,     0,     0,
-       0,    12,   104,    13,    14,    15,    93,    94,    18,    19,
-       0,     0,     0,     0,     0,    95,    96,    97,    23,    24,
-      25,    26,     0,     0,    98,     0,     0,     0,     0,     0,
-       0,     0,     0,    31,    32,     0,    33,    34,    35,    36,
-      37,    38,     0,    39,    40,    41,    42,    43,     0,    44,
-      45,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   222,     0,     0,    49,    50,     0,    51,    52,
-       0,    53,     0,    54,    55,     0,     0,     0,    56,     0,
-       0,     5,     6,     7,     0,     9,     0,     0,     0,    10,
-      11,     0,     0,     0,    12,   104,    13,    14,    15,    93,
-      94,    18,    19,     0,     0,     0,     0,     0,    95,    96,
-      97,    23,    24,    25,    26,     0,     0,    98,     0,     0,
-       0,     0,     0,     0,     0,     0,    31,    32,     0,    33,
-      34,    35,    36,    37,    38,     0,    39,    40,    41,    42,
-      43,     0,    44,    45,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   277,     0,     0,   312,    50,
-       0,    51,    52,     0,   313,     0,    54,    55,     0,     0,
-       0,    56,     0,     0,     5,     6,     7,     0,     9,     0,
-       0,     0,    10,    11,     0,     0,     0,    12,   104,    13,
-      14,    15,    93,    94,    18,    19,     0,     0,     0,     0,
-       0,    95,    96,    97,    23,    24,    25,    26,     0,     0,
-      98,     0,     0,     0,     0,     0,     0,     0,     0,    31,
-      32,     0,    99,    34,    35,    36,   100,    38,     0,    39,
-      40,    41,    42,    43,     0,    44,    45,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   102,     0,
-       0,   103,    50,     0,    51,    52,     0,     0,     0,    54,
-      55,     0,     0,     0,    56,     0,     0,     5,     6,     7,
-       0,     9,     0,     0,     0,    10,    11,     0,     0,     0,
-      12,   104,    13,    14,    15,    93,    94,    18,    19,     0,
-       0,     0,     0,     0,    95,    96,    97,    23,    24,    25,
-      26,     0,     0,    98,     0,     0,     0,     0,     0,     0,
-       0,     0,    31,    32,     0,    33,    34,    35,    36,    37,
-      38,     0,    39,    40,    41,    42,    43,     0,    44,    45,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   277,     0,     0,   312,    50,     0,    51,    52,     0,
-       0,     0,    54,    55,     0,     0,     0,    56,     0,     0,
-       5,     6,     7,     0,     9,     0,     0,     0,    10,    11,
-       0,     0,     0,    12,   104,    13,    14,    15,    93,    94,
-      18,    19,     0,     0,     0,     0,     0,    95,    96,    97,
-      23,    24,    25,    26,     0,     0,    98,     0,     0,     0,
-       0,     0,     0,     0,     0,    31,    32,     0,    33,    34,
-      35,    36,    37,    38,     0,    39,    40,    41,    42,    43,
-       0,    44,    45,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   836,     0,     0,   103,    50,     0,
-      51,    52,     0,     0,     0,    54,    55,     0,     0,     0,
-      56,     0,     0,     5,     6,     7,     0,     9,     0,     0,
-       0,    10,    11,     0,     0,     0,    12,   104,    13,    14,
-      15,    93,    94,    18,    19,     0,     0,     0,     0,     0,
-      95,    96,    97,    23,    24,    25,    26,     0,     0,    98,
-       0,     0,     0,     0,     0,     0,     0,     0,    31,    32,
-       0,    33,    34,    35,    36,    37,    38,     0,    39,    40,
-      41,    42,    43,     0,    44,    45,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   862,     0,     0,
-     103,    50,     0,    51,    52,     0,     0,     0,    54,    55,
-       0,     0,     0,    56,     0,   538,   539,     0,     0,   540,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     104,   156,   157,   158,   159,   160,   161,   162,   163,   164,
-       0,     0,   165,   166,     0,     0,   167,   168,   169,   170,
-       0,     0,   316,   317,   318,   319,   320,   321,   322,     0,
-     171,   325,   326,     0,     0,     0,     0,   329,   330,     0,
-       0,     0,     0,     0,   172,   173,   174,   175,   176,   177,
-     178,   179,   180,   181,     0,   182,   183,     0,   559,   531,
-       0,     0,   560,   332,   333,   334,   335,   336,   337,   338,
-     339,   340,   341,   246,   156,   157,   158,   159,   160,   161,
-     162,   163,   164,     0,     0,   165,   166,     0,     0,   167,
-     168,   169,   170,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   171,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   172,   173,   174,
-     175,   176,   177,   178,   179,   180,   181,     0,   182,   183,
-       0,   544,   539,     0,     0,   545,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   246,   156,   157,   158,
-     159,   160,   161,   162,   163,   164,     0,     0,   165,   166,
-       0,     0,   167,   168,   169,   170,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   171,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
-       0,   182,   183,     0,   579,   531,     0,     0,   580,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,   246,
-     156,   157,   158,   159,   160,   161,   162,   163,   164,     0,
-       0,   165,   166,     0,     0,   167,   168,   169,   170,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,   171,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   172,   173,   174,   175,   176,   177,   178,
-     179,   180,   181,     0,   182,   183,     0,   582,   539,     0,
-       0,   583,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   246,   156,   157,   158,   159,   160,   161,   162,
-     163,   164,     0,     0,   165,   166,     0,     0,   167,   168,
-     169,   170,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   171,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   172,   173,   174,   175,
-     176,   177,   178,   179,   180,   181,     0,   182,   183,     0,
-     592,   531,     0,     0,   593,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   246,   156,   157,   158,   159,
-     160,   161,   162,   163,   164,     0,     0,   165,   166,     0,
-       0,   167,   168,   169,   170,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   171,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,   172,
-     173,   174,   175,   176,   177,   178,   179,   180,   181,     0,
-     182,   183,     0,   595,   539,     0,     0,   596,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   246,   156,
-     157,   158,   159,   160,   161,   162,   163,   164,     0,     0,
-     165,   166,     0,     0,   167,   168,   169,   170,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   171,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   172,   173,   174,   175,   176,   177,   178,   179,
-     180,   181,     0,   182,   183,     0,   620,   531,     0,     0,
-     621,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   246,   156,   157,   158,   159,   160,   161,   162,   163,
-     164,     0,     0,   165,   166,     0,     0,   167,   168,   169,
-     170,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   171,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   172,   173,   174,   175,   176,
-     177,   178,   179,   180,   181,     0,   182,   183,     0,   623,
-     539,     0,     0,   624,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   246,   156,   157,   158,   159,   160,
-     161,   162,   163,   164,     0,     0,   165,   166,     0,     0,
-     167,   168,   169,   170,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   171,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   172,   173,
-     174,   175,   176,   177,   178,   179,   180,   181,     0,   182,
-     183,     0,   901,   531,     0,     0,   902,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   246,   156,   157,
-     158,   159,   160,   161,   162,   163,   164,     0,     0,   165,
-     166,     0,     0,   167,   168,   169,   170,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   171,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   172,   173,   174,   175,   176,   177,   178,   179,   180,
-     181,     0,   182,   183,     0,   904,   539,     0,     0,   905,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     246,   156,   157,   158,   159,   160,   161,   162,   163,   164,
-       0,     0,   165,   166,     0,     0,   167,   168,   169,   170,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     171,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   172,   173,   174,   175,   176,   177,
-     178,   179,   180,   181,     0,   182,   183,     0,   912,   531,
-       0,     0,   913,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   246,   156,   157,   158,   159,   160,   161,
-     162,   163,   164,     0,     0,   165,   166,     0,     0,   167,
-     168,   169,   170,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   171,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   172,   173,   174,
-     175,   176,   177,   178,   179,   180,   181,     0,   182,   183,
-       0,   544,   539,     0,     0,   545,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   246,   156,   157,   158,
-     159,   160,   161,   162,   163,   164,     0,     0,   165,   166,
-       0,     0,   167,   168,   169,   170,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   171,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
-       0,   182,   183,   316,   317,   318,   319,   320,   321,   322,
-     323,   324,   325,   326,  -524,  -524,     0,     0,   329,   330,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   332,   333,   334,   335,   336,   337,
-     338,   339,   340,   341
-};
-
-#define yypact_value_is_default(yystate) \
-  ((yystate) == (-728))
-
-#define yytable_value_is_error(yytable_value) \
-  ((yytable_value) == (-524))
-
-static const yytype_int16 yycheck[] =
-{
-       2,   278,    27,    72,    79,   212,    58,    22,   239,     5,
-       6,    16,    17,    22,    28,    20,     7,   369,   343,    15,
-      12,   283,   388,     8,   283,   393,   315,   271,   563,   406,
-      12,   275,     4,    61,   102,    53,   315,    16,    17,    49,
-       1,    20,   367,    28,   403,    61,   581,   406,   640,    51,
-      52,   725,    11,    12,     2,   446,     4,    53,   383,   594,
-     342,   438,   344,    13,    55,   347,    13,    15,   637,    61,
-      27,   396,    51,    52,    13,    90,    72,   804,   574,    61,
-     652,    90,    97,   547,   548,    86,   368,   622,   584,     2,
-      13,     4,    13,   260,    16,    17,   111,    25,    20,    25,
-     382,    49,   384,   727,   495,    16,    17,   822,    86,    20,
-      62,    63,   371,   249,   106,   397,    69,    26,    88,    26,
-      88,    29,    25,   448,   106,    88,   800,    13,   264,     0,
-      25,   637,   268,   107,   640,   136,   137,   107,   139,   107,
-      51,    77,   424,    86,   107,   312,   652,   342,   138,   344,
-     111,   640,   347,   143,   643,   103,   883,   134,    25,   137,
-      25,    25,    25,   652,   117,   118,   119,   449,   138,   446,
-     138,   366,   744,   368,   107,   138,   112,   892,   852,    37,
-      38,   142,   143,   667,   415,   142,   143,   382,   138,   384,
-     674,    28,   142,   143,   137,   142,   143,   105,   460,   215,
-     395,   460,   397,   142,   143,   138,   558,   198,   882,   278,
-     138,   139,   138,   139,    86,   807,   568,   681,   495,   142,
-     143,   142,   143,   215,   206,   134,   850,   134,   423,   424,
-     212,   608,   139,   215,   262,   138,   238,   239,   243,    52,
-     245,   246,   811,   138,   246,    15,   262,    17,   607,   608,
-     260,   820,   447,   139,   449,   203,   142,   143,   310,    86,
-      55,   220,   221,   315,   243,   137,   245,   107,    86,   660,
-     262,   138,   408,   138,   138,   138,   412,   138,   138,    86,
-     262,   417,   278,   143,    88,   143,    86,   138,   270,   271,
-      88,   427,   143,   275,   573,   313,   432,   793,   366,   351,
-     352,   807,   312,   107,    86,   567,   254,    88,   567,   136,
-     137,   259,   260,   139,   820,    86,   822,   313,   807,   137,
-     809,   243,   139,   245,   813,    86,   107,   139,   300,   344,
-     137,    49,   243,   822,   245,   824,   136,   137,   343,    86,
-      25,   343,   301,   302,   303,   304,   259,    25,   716,    58,
-      59,    86,   300,   368,   136,   137,    86,   305,   494,   139,
-      37,    38,   367,   143,   312,   367,   137,   315,   903,   384,
-     362,   602,   661,   617,   376,   444,   137,   446,   383,   586,
-     362,   383,   397,   660,    51,   103,   892,   300,    55,   136,
-     137,   396,   305,   652,   396,   138,    88,   886,    55,   310,
-     392,   393,   137,   892,   315,   894,   420,   137,   897,   424,
-     392,   393,   414,   415,    26,   107,   229,   230,   231,   421,
-     797,   369,   107,   775,   403,    86,   495,   793,    88,   107,
-     566,   379,   921,    88,   449,   420,   142,   143,   797,   387,
-      86,   107,    86,   448,    58,    59,   448,   107,   444,    88,
-     446,    17,   107,   138,    86,   140,   435,   455,   143,    86,
-     138,   142,   140,    86,   466,   143,   468,    51,   470,    53,
-      54,    55,    56,   421,    86,   136,   137,    88,   389,    86,
-      62,    63,   430,   835,    62,    63,   488,    55,   719,    86,
-     136,   137,   136,   137,   519,   631,   107,   310,    89,   495,
-      88,    25,   315,   138,   136,   137,    62,    63,   421,   136,
-     137,    69,   537,   136,   137,   134,    88,   430,   138,   107,
-     535,   780,   134,    26,   136,   137,   535,   475,   543,   136,
-     137,   546,    14,    15,   543,   107,   254,   546,   563,   136,
-     137,   543,   260,   143,   546,   547,   548,   562,   140,   564,
-     138,   876,   688,   107,   138,    26,   581,   571,   141,   135,
-      55,    88,   564,   555,    26,   138,   138,    69,    69,   594,
-      95,   573,   574,   555,   576,   782,   389,   569,   138,   570,
-     107,   788,   584,    86,    62,    10,   571,   569,   724,   402,
-     403,   660,     8,   406,   312,   877,    13,   622,   557,    10,
-     602,   676,   140,   138,   586,   138,   135,   138,   633,   661,
-     558,   138,   664,   665,   107,    86,   138,   138,   670,   671,
-     568,    51,   435,   138,    86,   438,   138,   652,   607,   627,
-     628,   134,    51,   136,   137,   617,   139,   107,   597,   138,
-     138,    10,     2,    15,     4,     5,     6,    10,   135,   138,
-      10,    11,    12,   138,   135,    15,    16,    17,   109,    10,
-      20,   379,   573,   134,   660,   136,   137,   141,   139,   387,
-      10,    89,   134,     9,   136,   137,   489,   139,    10,   681,
-     875,    10,   877,   138,   138,   142,   634,   635,   140,    49,
-      50,   683,    10,    53,   696,   135,   891,   699,    58,   138,
-     648,   683,   138,   138,    51,   653,    53,    54,    55,    56,
-     138,   763,    72,   661,   135,   107,   112,   719,    51,   744,
-      53,    54,    55,    56,   716,   138,   138,   725,   138,   727,
-     678,   679,   734,   735,   716,   737,    10,   739,   740,   138,
-      10,   101,   701,   103,   746,   135,   748,   749,    10,    10,
-     698,    51,   138,    53,    54,    55,    56,   475,   112,   138,
-     573,   135,    10,    55,   712,   713,   714,   138,   138,    51,
-      55,    53,    54,    55,    56,    10,   138,   138,    10,    51,
-     138,    53,    54,    55,    56,   781,   599,   139,   421,   139,
-      90,   793,   138,    15,   607,   608,    96,    97,     6,   879,
-     782,    69,   800,   801,   546,   138,   788,   627,    90,   883,
-       7,   677,   625,   878,   114,    97,   288,   117,    90,    -1,
-     780,   817,   637,   820,    96,    97,   774,   775,    -1,    -1,
-     855,    -1,   114,   781,   189,    -1,    -1,   785,    -1,   139,
-      -1,    -1,   114,   203,   657,   117,    -1,   115,   116,   117,
-     118,   119,   850,    -1,   852,    -1,   858,   859,   860,   861,
-     220,   221,   877,   865,   866,   867,    -1,   869,   870,    -1,
-      -1,   876,    -1,    -1,   876,    -1,   878,   879,   903,    10,
-      11,    12,    -1,   243,   882,   245,   246,   835,    -1,   249,
-     250,    -1,    -1,   841,   254,   843,    -1,    -1,   711,   259,
-     260,   849,    40,    41,    42,    43,    44,    -1,    -1,   911,
-      -1,    -1,   914,   915,   916,   917,   634,   635,   278,    50,
-      -1,    -1,    -1,   925,    51,    -1,    53,    54,    55,    56,
-     648,    -1,    -1,    -1,    -1,   653,    -1,    -1,    -1,   752,
-     300,   301,   302,   303,   304,   305,   306,   307,    -1,    -1,
-     310,    -1,   312,   313,    51,   315,    53,    54,    55,    56,
-     678,   679,    -1,    90,    -1,    -1,    -1,    -1,    -1,    51,
-     101,    53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,
-     698,    -1,    -1,   343,   797,    51,    -1,    53,    54,    55,
-      56,   351,   352,    90,   712,   713,   714,    -1,    -1,    96,
-      97,    -1,    -1,    -1,    -1,    -1,    -1,   367,    90,   369,
-     370,    -1,    -1,    -1,    96,    97,    -1,   114,    -1,   379,
-     117,    -1,    -1,   383,    90,    -1,    -1,   387,    69,    -1,
-      96,    97,   114,    -1,    -1,   117,   396,    -1,    -1,    -1,
-      -1,    -1,    -1,    84,    85,    -1,   143,    -1,   114,    -1,
-      -1,   117,    -1,    -1,    -1,    -1,   774,   139,    -1,    -1,
-      -1,   421,    -1,    -1,    -1,    16,    17,   785,    -1,    20,
-     430,   112,   113,   114,   115,   116,   117,   118,   119,    -1,
-      -1,    -1,    -1,    -1,   444,    -1,   446,    -1,   448,   220,
-     221,    -1,    -1,    -1,    -1,    46,    47,    -1,    -1,    -1,
-      51,    52,    -1,    -1,    -1,    -1,    -1,    58,    59,    -1,
-      -1,    69,    -1,    44,    -1,   475,    -1,    69,   249,   250,
-      -1,    -1,    -1,   841,    -1,   843,    84,    85,    -1,    -1,
-      -1,   849,    84,    85,    -1,   495,    -1,    -1,    69,    70,
-      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
-      81,    -1,    -1,    84,    85,    -1,   114,   115,   116,   117,
-     118,   119,    -1,   115,   116,   117,   118,   119,    -1,    -1,
-     301,   302,   303,   304,    -1,   306,   307,   108,    -1,   110,
-     111,   112,   113,   114,   115,   116,   117,   118,   119,    51,
-      -1,    53,    54,    55,    56,    -1,    -1,   557,   558,    -1,
-      69,    70,    71,    72,    73,    74,    75,   138,   568,    78,
-      79,    -1,    -1,    -1,    -1,    84,    85,    -1,    -1,     2,
-      -1,     4,     5,     6,     7,    -1,    -1,    -1,    90,    -1,
-      -1,    -1,    15,    -1,    96,    -1,    -1,   597,    -1,   370,
-      -1,   110,   111,   112,   113,   114,   115,   116,   117,   118,
-     119,    51,    -1,    53,    54,    55,    56,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    49,    -1,    -1,    -1,
-      53,    -1,    -1,    -1,   634,   635,    -1,    -1,   229,   230,
-     231,   232,    -1,    -1,    -1,    -1,    -1,    -1,   648,    72,
-      90,    -1,   243,   653,   245,   246,    96,    -1,    -1,    -1,
-     660,   661,    -1,    -1,   664,   665,    -1,    -1,    -1,    -1,
-     670,   671,    -1,    -1,    -1,    -1,    -1,    -1,   678,   679,
-     103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   698,    -1,
-      -1,   701,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   712,   713,   714,    -1,    -1,    -1,    -1,   310,
-      -1,    -1,    -1,    -1,   315,   316,   317,   318,   319,   320,
-     321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
-     331,   332,   333,   334,   335,   336,   337,   338,   339,   340,
-     341,    -1,   343,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     351,   352,    -1,   763,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   774,   775,   367,    -1,    -1,    -1,
-     203,   781,    -1,    -1,    -1,   785,   557,    -1,    -1,    -1,
-     381,    -1,   383,    -1,   385,   386,    -1,    -1,   389,     2,
-      -1,     4,    -1,    -1,    -1,   396,    -1,    -1,    -1,    -1,
-      -1,   402,   403,    -1,    -1,   406,    -1,   817,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   597,    -1,    -1,    -1,
-      -1,   254,    -1,    -1,   425,   835,   259,   260,    -1,    -1,
-      -1,   841,    -1,   843,   435,    -1,    49,   438,    -1,   849,
-      -1,    -1,   468,    -1,   470,   278,    -1,   448,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   876,   300,    -1,    -1,
-      -1,    -1,   305,    -1,    -1,    -1,    -1,   478,   479,   312,
-     313,     2,    -1,     4,     5,     6,    -1,    -1,   489,    -1,
-     103,    -1,    -1,    -1,    15,    -1,    -1,     0,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,     8,     9,    10,    -1,    -1,
-      13,    14,    15,    -1,    17,    -1,    -1,    -1,    -1,    -1,
-     701,    -1,    -1,    26,    27,    -1,    -1,    -1,    49,    -1,
-      -1,    -1,    53,    -1,    37,    38,   369,    40,    41,    42,
-      43,    44,    -1,    -1,    -1,    -1,   379,    -1,    -1,    -1,
-      -1,    72,    -1,    -1,   387,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   573,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   103,    86,    -1,    -1,    -1,    -1,   421,    -1,
-     203,    -1,    -1,    -1,    -1,    -1,    -1,   430,   599,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   607,   608,    -1,    -1,
-      -1,   444,    -1,   446,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   625,    -1,    -1,    -1,    -1,    -1,
-      -1,   134,   135,    -1,   137,    -1,   139,   140,    -1,   142,
-     143,   254,   475,    -1,    -1,    -1,   259,   260,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   657,    -1,    -1,    -1,
-     661,   662,   495,   664,   665,    -1,    -1,    -1,    -1,   670,
-     671,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   680,
-      -1,    -1,   203,    -1,    -1,    -1,    -1,   300,    -1,    -1,
-      -1,    -1,   305,    -1,    -1,    -1,    -1,    -1,    -1,   312,
-      -1,    -1,    -1,   704,   705,    -1,   707,   708,   734,   735,
-     711,   737,    -1,   739,   740,    -1,    -1,    -1,    -1,    -1,
-     746,    -1,   748,   749,    -1,   558,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   254,    -1,   568,    -1,    -1,   259,   260,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   752,    -1,    -1,    -1,   756,   369,   278,    -1,    -1,
-      -1,    -1,   763,    -1,    -1,    -1,   379,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   387,    -1,    -1,    -1,    -1,   300,
-      -1,    -1,    -1,    -1,   305,    -1,    -1,    -1,    -1,   790,
-      -1,   312,   313,    -1,    -1,    -1,   797,    -1,    -1,    -1,
-      -1,   634,   635,    -1,    -1,    -1,    -1,    -1,   421,    -1,
-      -1,    -1,    -1,    -1,    -1,   648,    -1,   430,    -1,    -1,
-     653,    -1,    -1,    -1,    -1,    -1,    -1,   660,    -1,    -1,
-      -1,    -1,   858,   859,   860,   861,    -1,    -1,    -1,   865,
-     866,   867,    -1,   869,   870,   678,   679,    -1,   369,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   379,    -1,
-      -1,    -1,   475,    -1,    -1,   698,   387,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   876,    -1,    -1,    -1,   712,
-     713,   714,    -1,    -1,    -1,   911,    -1,    -1,   914,   915,
-     916,   917,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   925,
-     421,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   430,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   444,    -1,   446,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   774,   775,    -1,    -1,   558,    -1,    -1,   781,    -1,
-      -1,    -1,   785,    -1,   475,   568,    -1,    -1,     5,     6,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    15,    -1,
-      -1,    -1,    -1,    -1,   495,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   817,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    46,
-      47,    -1,   835,    -1,    51,    52,    53,    -1,   841,    -1,
-     843,    -1,    59,    -1,    -1,    -1,   849,    -1,    -1,    -1,
-      -1,   634,   635,    44,    -1,    72,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   648,    -1,   558,    -1,    -1,
-     653,    -1,    -1,    -1,    -1,    -1,    -1,   568,    69,    70,
-      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
-      81,    -1,    -1,    84,    85,   678,   679,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   698,    -1,   108,    -1,   110,
-     111,   112,   113,   114,   115,   116,   117,   118,   119,   712,
-     713,   714,    69,    70,    71,    72,    73,    74,    75,    76,
-      -1,    78,    79,   634,   635,    -1,    -1,    84,    85,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   648,    -1,    -1,
-      -1,    -1,   653,    -1,    -1,    -1,    -1,    -1,    -1,   660,
-      -1,    -1,    -1,   110,   111,   112,   113,   114,   115,   116,
-     117,   118,   119,    -1,    -1,    -1,    -1,   678,   679,    -1,
-      -1,   774,   775,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    44,   785,    -1,    -1,    -1,    -1,   698,    -1,    -1,
-      -1,    -1,   229,   230,   231,   232,    -1,    -1,    -1,    -1,
-      -1,   712,   713,   714,    -1,    -1,    69,    70,    71,    72,
-      73,    74,    75,    76,    77,    78,    79,    80,    81,    -1,
-      -1,    84,    85,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   835,    -1,    -1,    -1,    -1,    -1,   841,    -1,
-     843,   278,    -1,    -1,    -1,   108,   849,   110,   111,   112,
-     113,   114,   115,   116,   117,   118,   119,    -1,    -1,    -1,
-      -1,    -1,    -1,   774,   775,    -1,    -1,    -1,    -1,    -1,
-     781,    -1,    -1,    -1,   785,    -1,   313,    -1,    -1,   316,
-     317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
-     327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
-     337,   338,   339,   340,   341,    -1,   817,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   835,    -1,    -1,    -1,    -1,    -1,
-     841,    -1,   843,    -1,    -1,    -1,    -1,    -1,   849,    -1,
-      -1,    -1,    -1,    -1,   381,    -1,    -1,    -1,   385,   386,
-      -1,    -1,   389,    -1,    -1,    -1,    -1,    -1,    51,    52,
-      -1,    -1,    55,    -1,    -1,   402,   403,    -1,    -1,   406,
-      -1,    -1,    -1,    -1,    67,    68,    69,    70,    71,    72,
-      73,    74,    75,    -1,    -1,    78,    79,    -1,   425,    82,
-      83,    84,    85,    -1,    -1,    -1,    -1,    -1,   435,    -1,
-      -1,   438,    -1,    96,    -1,    -1,    -1,   444,    -1,   446,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   110,   111,   112,
-     113,   114,   115,   116,   117,   118,   119,    -1,   121,   122,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   478,   479,    -1,     0,     1,   139,     3,     4,     5,
-       6,     7,   489,    -1,    -1,    11,    12,    -1,   495,    -1,
-      16,    -1,    18,    19,    20,    21,    22,    23,    24,    -1,
-      -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,    35,
-      36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    45,
-      46,    47,    48,    49,    -1,    51,    52,    53,    54,    55,
-      56,    -1,    58,    59,    60,    61,    62,    -1,    64,    65,
-      -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    87,    -1,    -1,    90,    91,   573,    93,    94,    -1,
-      96,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   599,    -1,   120,   121,   122,    -1,    -1,    -1,
-     607,   608,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   142,   143,   625,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     657,     0,    -1,   660,    -1,   662,    -1,    -1,    -1,     8,
-       9,    10,    -1,    -1,    -1,    14,    15,    -1,    17,    -1,
-      -1,    -1,    -1,   680,    -1,    -1,    -1,    26,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,
-      -1,    40,    41,    42,    43,    44,    -1,   704,   705,    -1,
-     707,   708,    -1,    -1,   711,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
-      79,    80,    81,    -1,    -1,    84,    85,    86,    -1,    88,
-      -1,    -1,    -1,    -1,    -1,   752,    -1,    -1,    -1,   756,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   107,   108,
-      -1,   110,   111,   112,   113,   114,   115,   116,   117,   118,
-     119,    -1,    -1,    -1,   781,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   790,    -1,   134,   135,   136,   137,   138,
-     797,   140,     0,   142,   143,    -1,    -1,    -1,    -1,    -1,
-       8,     9,    10,    -1,    -1,    -1,    14,    15,    -1,    17,
-     817,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
-      38,    -1,    40,    41,    42,    43,    44,    -1,    -1,    -1,
-      69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
-      79,    80,    81,    -1,    -1,    84,    85,    -1,    -1,    -1,
-      -1,    69,    70,    71,    72,    73,    74,    75,    76,    77,
-      78,    79,    80,    81,    -1,    -1,    84,    85,    86,   108,
-      88,   110,   111,   112,   113,   114,   115,   116,   117,   118,
-     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   107,
-     108,    -1,   110,   111,   112,   113,   114,   115,   116,   117,
-     118,   119,    -1,    -1,   143,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   135,   136,   137,
-     138,    -1,   140,    -1,   142,   143,     1,    -1,     3,     4,
-       5,     6,     7,     8,     9,    10,    11,    12,    -1,    -1,
-      15,    16,    -1,    18,    19,    20,    21,    22,    23,    24,
-      -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,
-      35,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,
-      45,    -1,    47,    48,    49,    -1,    51,    52,    53,    54,
-      55,    56,    -1,    58,    59,    60,    61,    62,    -1,    64,
-      65,    -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,
-      -1,    96,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   120,   121,   122,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       1,    -1,     3,     4,     5,     6,     7,   142,   143,    10,
-      11,    12,    -1,    14,    15,    16,    -1,    18,    19,    20,
-      21,    22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,
-      31,    32,    33,    34,    35,    36,    -1,    -1,    39,    -1,
-      -1,    -1,    -1,    -1,    45,    -1,    47,    48,    49,    -1,
-      51,    52,    53,    54,    55,    56,    -1,    58,    59,    60,
-      61,    62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,
-      91,    -1,    93,    94,    -1,    96,    -1,    98,    99,    -1,
-      -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,
-     121,   122,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     1,
-      -1,     3,     4,     5,     6,     7,    -1,    -1,    10,    11,
-      12,   142,   143,    15,    16,    17,    18,    19,    20,    21,
-      22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,
-      32,    33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,
-      -1,    -1,    -1,    45,    -1,    47,    48,    49,    -1,    51,
-      52,    53,    54,    55,    56,    -1,    58,    59,    60,    61,
-      62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,
-      -1,    93,    94,    -1,    96,    -1,    98,    99,    -1,    -1,
-      -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,   121,
-     122,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     1,    -1,
-       3,     4,     5,     6,     7,    -1,    -1,    10,    11,    12,
-     142,   143,    15,    16,    -1,    18,    19,    20,    21,    22,
-      23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,    32,
-      33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,    -1,
-      -1,    -1,    45,    -1,    47,    48,    49,    -1,    51,    52,
-      53,    54,    55,    56,    -1,    58,    59,    60,    61,    62,
-      -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,    -1,
-      93,    94,    -1,    96,    -1,    98,    99,    -1,    -1,    -1,
-     103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,   121,   122,
-      -1,    -1,    -1,    -1,    -1,    -1,     1,    -1,     3,     4,
-       5,     6,     7,    -1,    -1,    -1,    11,    12,    -1,   142,
-     143,    16,    -1,    18,    19,    20,    21,    22,    23,    24,
-      -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,
-      35,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,
-      45,    46,    47,    48,    49,    -1,    51,    52,    53,    54,
-      55,    56,    -1,    58,    59,    60,    61,    62,    -1,    64,
-      65,    -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,
-      -1,    96,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   120,   121,   122,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     135,    -1,    -1,    -1,    -1,    -1,    -1,   142,   143,     1,
-      -1,     3,     4,     5,     6,     7,    -1,     9,    10,    11,
-      12,    -1,    -1,    -1,    16,    -1,    18,    19,    20,    21,
-      22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,
-      32,    33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,
-      -1,    -1,    -1,    45,    -1,    47,    48,    49,    -1,    51,
-      52,    53,    54,    55,    56,    -1,    58,    59,    60,    61,
-      62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,
-      -1,    93,    94,    -1,    96,    -1,    98,    99,    -1,    -1,
-      -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,   121,
-     122,    -1,    -1,    -1,    -1,    -1,    -1,     1,    -1,     3,
-       4,     5,     6,     7,    -1,    -1,    -1,    11,    12,    -1,
-     142,   143,    16,    -1,    18,    19,    20,    21,    22,    23,
-      24,    -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,
-      34,    35,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,
-      -1,    45,    -1,    47,    48,    49,    -1,    51,    52,    53,
-      54,    55,    56,    -1,    58,    59,    60,    61,    62,    -1,
-      64,    65,    -1,    67,    68,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    87,    -1,    -1,    90,    91,    -1,    93,
-      94,    -1,    96,    -1,    98,    99,    -1,    -1,    -1,   103,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   120,   121,   122,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   140,    -1,   142,   143,
-       1,    -1,     3,     4,     5,     6,     7,    -1,    -1,    -1,
-      11,    12,    -1,    -1,    -1,    16,    -1,    18,    19,    20,
-      21,    22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,
-      31,    32,    33,    34,    35,    36,    -1,    -1,    39,    -1,
-      -1,    -1,    -1,    -1,    45,    -1,    47,    48,    49,    -1,
-      51,    52,    53,    54,    55,    56,    -1,    58,    59,    60,
-      61,    62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,
-      91,    -1,    93,    94,    -1,    96,    -1,    98,    99,    -1,
-      -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,
-     121,   122,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   140,
-      -1,   142,   143,     1,    -1,     3,     4,     5,     6,     7,
-      -1,    -1,    -1,    11,    12,    -1,    -1,    -1,    16,    -1,
-      18,    19,    20,    21,    22,    23,    24,    -1,    -1,    -1,
-      -1,    -1,    30,    31,    32,    33,    34,    35,    36,    -1,
-      -1,    39,    -1,    -1,    -1,    -1,    -1,    45,    -1,    47,
-      48,    49,    -1,    51,    52,    53,    54,    55,    56,    -1,
-      58,    59,    60,    61,    62,    -1,    64,    65,    -1,    67,
-      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,
-      -1,    -1,    90,    91,    -1,    93,    94,    -1,    96,    -1,
-      98,    99,    -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   120,   121,   122,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   135,    -1,    -1,
-      -1,    -1,    -1,    -1,   142,   143,     1,    -1,     3,     4,
-       5,     6,     7,    -1,    -1,    10,    11,    12,    -1,    -1,
-      -1,    16,    -1,    18,    19,    20,    21,    22,    23,    24,
-      -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,
-      35,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,
-      45,    -1,    47,    48,    49,    -1,    51,    52,    53,    54,
-      55,    56,    -1,    58,    59,    60,    61,    62,    -1,    64,
-      65,    -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,
-      -1,    96,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   120,   121,   122,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,    -1,
-       7,    -1,    -1,    -1,    11,    12,    -1,   142,   143,    16,
-      -1,    18,    19,    20,    21,    22,    23,    24,    -1,    -1,
-      -1,    -1,    -1,    30,    31,    32,    33,    34,    35,    36,
-      -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    48,    49,    -1,    51,    52,    53,    54,    55,    56,
-      57,    58,    59,    60,    61,    62,    -1,    64,    65,    -1,
-      67,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      87,    -1,    -1,    90,    91,    -1,    93,    94,    -1,    96,
-      97,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   120,   121,   122,    -1,    -1,    -1,    -1,
-      -1,    -1,     3,     4,     5,    -1,     7,    -1,    -1,    -1,
-      11,    12,    -1,    -1,    -1,    16,   143,    18,    19,    20,
-      21,    22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,
-      31,    32,    33,    34,    35,    36,    -1,    -1,    39,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,    49,    -1,
-      51,    52,    53,    54,    55,    56,    -1,    58,    59,    60,
-      61,    62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,
-      91,    -1,    93,    94,    -1,    -1,    -1,    98,    99,    -1,
-      -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,
-     121,   122,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       3,     4,     5,    -1,     7,    -1,    -1,    -1,    11,    12,
-      -1,   142,   143,    16,    -1,    18,    19,    20,    21,    22,
-      23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,    32,
-      33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    48,    49,    -1,    51,    52,
-      53,    54,    55,    56,    -1,    58,    59,    60,    61,    62,
-      -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,    -1,
-      93,    94,    -1,    -1,    -1,    98,    99,    -1,    -1,    -1,
-     103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,   121,   122,
-      -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,     6,
-       7,    -1,    -1,    -1,    11,    12,    -1,    -1,    -1,    16,
-     143,    18,    19,    20,    21,    22,    23,    24,    -1,    -1,
-      -1,    -1,    -1,    30,    31,    32,    33,    34,    35,    36,
-      -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    45,    46,
-      47,    48,    49,    -1,    51,    52,    53,    54,    55,    56,
-      -1,    58,    59,    60,    61,    62,    -1,    64,    65,    -1,
-      67,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      87,    -1,    -1,    90,    91,    -1,    93,    94,    -1,    96,
-      -1,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   120,   121,   122,    -1,    -1,    -1,    -1,
-      -1,     3,     4,     5,     6,     7,    -1,    -1,    -1,    11,
-      12,    -1,    -1,    -1,    16,   142,    18,    19,    20,    21,
-      22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,
-      32,    33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,
-      -1,    -1,    -1,    45,    -1,    47,    48,    49,    -1,    51,
-      52,    53,    54,    55,    56,    -1,    58,    59,    60,    61,
-      62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,
-      -1,    93,    94,    -1,    96,    -1,    98,    99,    -1,    -1,
-      -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,   121,
-     122,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     142,     3,     4,     5,     6,     7,     8,     9,    10,    11,
-      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
-      22,    23,    24,    25,    26,    -1,    -1,    -1,    30,    31,
-      32,    33,    34,    35,    36,    37,    38,    39,    -1,    -1,
-      -1,    -1,    -1,    45,    46,    47,    48,    49,    50,    51,
-      52,    53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    67,    68,    69,    70,    71,
-      72,    73,    74,    75,    -1,    -1,    78,    79,    -1,    -1,
-      82,    83,    84,    85,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   110,   111,
-     112,   113,   114,   115,   116,   117,   118,   119,    -1,   121,
-     122,    -1,    -1,     3,     4,     5,    -1,     7,    -1,    -1,
-      -1,    11,    12,    -1,    -1,    -1,    16,   139,    18,    19,
-      20,    21,    22,    23,    24,    -1,    26,    -1,    -1,    -1,
-      30,    31,    32,    33,    34,    35,    36,    -1,    -1,    39,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,    49,
-      -1,    51,    52,    53,    54,    55,    56,    57,    58,    59,
-      60,    61,    62,    -1,    64,    65,    -1,    67,    68,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,
-      90,    91,    -1,    93,    94,    -1,    96,    97,    98,    99,
-      -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     120,   121,   122,    -1,    -1,    -1,    -1,     3,     4,     5,
-      -1,     7,    -1,    -1,   134,    11,    12,    -1,    -1,   139,
-      16,    -1,    18,    19,    20,    21,    22,    23,    24,    -1,
-      26,    -1,    -1,    -1,    30,    31,    32,    33,    34,    35,
-      36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    48,    49,    -1,    51,    52,    53,    54,    55,
-      56,    57,    58,    59,    60,    61,    62,    -1,    64,    65,
-      -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,    -1,
-      96,    97,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   120,   121,   122,    -1,    -1,    -1,
-      -1,     3,     4,     5,    -1,     7,    -1,    -1,   134,    11,
-      12,    -1,    -1,   139,    16,    -1,    18,    19,    20,    21,
-      22,    23,    24,    -1,    26,    -1,    -1,    -1,    30,    31,
-      32,    33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    48,    49,    -1,    51,
-      52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
-      62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,
-      -1,    93,    94,    -1,    96,    97,    98,    99,    -1,    -1,
-      -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   120,   121,
-     122,    -1,    -1,    -1,    -1,     3,     4,     5,    -1,     7,
-      -1,    -1,   134,    11,    12,    -1,    -1,   139,    16,    -1,
-      18,    19,    20,    21,    22,    23,    24,    -1,    -1,    -1,
-      -1,    -1,    30,    31,    32,    33,    34,    35,    36,    -1,
-      -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      48,    49,    -1,    51,    52,    53,    54,    55,    56,    57,
-      58,    59,    60,    61,    62,    -1,    64,    65,    -1,    67,
-      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,
-      88,    -1,    90,    91,    -1,    93,    94,    -1,    96,    97,
-      98,    99,    -1,    -1,    -1,   103,    -1,    -1,    -1,   107,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,
-      -1,     7,   120,   121,   122,    11,    12,    -1,    -1,    -1,
-      16,    -1,    18,    19,    20,    21,    22,    23,    24,    -1,
-      -1,   139,    -1,    -1,    30,    31,    32,    33,    34,    35,
-      36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    48,    49,    -1,    51,    52,    53,    54,    55,
-      56,    57,    58,    59,    60,    61,    62,    -1,    64,    65,
-      -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    87,    88,    -1,    90,    91,    -1,    93,    94,    -1,
-      96,    97,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,
-      -1,   107,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,
-       4,     5,    -1,     7,   120,   121,   122,    11,    12,    -1,
-      -1,    -1,    16,    -1,    18,    19,    20,    21,    22,    23,
-      24,    -1,    -1,   139,    -1,    -1,    30,    31,    32,    33,
-      34,    35,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    48,    49,    -1,    51,    52,    53,
-      54,    55,    56,    57,    58,    59,    60,    61,    62,    -1,
-      64,    65,    -1,    67,    68,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    87,    -1,    -1,    90,    91,    -1,    93,
-      94,    -1,    96,    97,    98,    99,    -1,    -1,    -1,   103,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,     3,     4,     5,    -1,     7,   120,   121,   122,    11,
-      12,    -1,    -1,    -1,    16,    -1,    18,    19,    20,    21,
-      22,    23,    24,    -1,    -1,   139,    -1,    -1,    30,    31,
-      32,    33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    48,    49,    -1,    51,
-      52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
-      62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,
-      -1,    93,    94,    -1,    96,    97,    98,    99,    -1,    -1,
-      -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,     3,     4,     5,    -1,     7,   120,   121,
-     122,    11,    12,    -1,    -1,    -1,    16,    -1,    18,    19,
-      20,    21,    22,    23,    24,    -1,    -1,   139,    -1,    -1,
-      30,    31,    32,    33,    34,    35,    36,    -1,    -1,    39,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,    49,
-      -1,    51,    52,    53,    54,    55,    56,    57,    58,    59,
-      60,    61,    62,    -1,    64,    65,    -1,    67,    68,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,
-      90,    91,    -1,    93,    94,    -1,    96,    97,    98,    99,
-      -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,     3,     4,     5,    -1,     7,
-     120,   121,   122,    11,    12,    -1,    -1,    -1,    16,    -1,
-      18,    19,    20,    21,    22,    23,    24,    -1,    -1,   139,
-      -1,    -1,    30,    31,    32,    33,    34,    35,    36,    -1,
-      -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      48,    49,    -1,    51,    52,    53,    54,    55,    56,    57,
-      58,    59,    60,    61,    62,    -1,    64,    65,    -1,    67,
-      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,
-      -1,    -1,    90,    91,    -1,    93,    94,    -1,    96,    97,
-      98,    99,    -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,
-      -1,     7,   120,   121,   122,    11,    12,    -1,    -1,    -1,
-      16,    -1,    18,    19,    20,    21,    22,    23,    24,    -1,
-      -1,   139,    -1,    -1,    30,    31,    32,    33,    34,    35,
-      36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    48,    49,    -1,    51,    52,    53,    54,    55,
-      56,    -1,    58,    59,    60,    61,    62,    -1,    64,    65,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,    -1,
-      -1,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,
-      -1,     7,    -1,    -1,   120,    11,    12,    -1,    -1,    -1,
-      16,    -1,    18,    19,    20,    21,    22,    23,    24,    -1,
-      -1,    -1,   138,    -1,    30,    31,    32,    33,    34,    35,
-      36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    48,    49,    -1,    51,    52,    53,    54,    55,
-      56,    -1,    58,    59,    60,    61,    62,    -1,    64,    65,
-      69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
-      79,    80,    81,    -1,    -1,    84,    85,    -1,    -1,    -1,
-      -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,    -1,
-      -1,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,   108,
-      -1,   110,   111,   112,   113,   114,   115,   116,   117,   118,
-     119,    -1,    -1,    -1,   120,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   138,     3,     4,     5,     6,     7,     8,     9,
-      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
-      20,    21,    22,    23,    24,    25,    26,    -1,    -1,    -1,
-      30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
-      -1,    -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,
-      50,    51,    52,    53,    54,    55,    56,    -1,    -1,    -1,
-      -1,    -1,    62,    -1,    -1,    -1,    -1,    67,    68,    69,
-      70,    71,    72,    73,    74,    75,    -1,    -1,    78,    79,
-      -1,    -1,    82,    83,    84,    85,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,
-      -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,
-     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
-      -1,   121,   122,     3,     4,     5,     6,     7,     8,     9,
-      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
-      20,    21,    22,    23,    24,    25,    26,    -1,    -1,    -1,
-      30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
-      -1,    -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,
-      50,    51,    52,    53,    54,    55,    56,    -1,    -1,    -1,
-      -1,    -1,    62,    -1,    -1,    -1,    -1,    67,    68,    69,
-      70,    71,    72,    73,    74,    75,    -1,    -1,    78,    79,
-      -1,    -1,    82,    83,    84,    85,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,
-      -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,
-     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
-      -1,   121,   122,     3,     4,     5,     6,     7,     8,     9,
-      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
-      20,    21,    22,    23,    24,    25,    26,    -1,    -1,    -1,
-      30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
-      -1,    -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,
-      50,    51,    52,    -1,    -1,    55,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,    68,    69,
-      70,    71,    72,    73,    74,    75,    -1,    -1,    78,    79,
-      -1,    -1,    82,    83,    84,    85,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,    99,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
-      -1,   121,   122,     3,     4,     5,     6,     7,     8,     9,
-      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
-      20,    21,    22,    23,    24,    25,    26,    -1,    -1,    -1,
-      30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
-      -1,    -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,
-      50,    51,    52,    -1,    -1,    55,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,    68,    69,
-      70,    71,    72,    73,    74,    75,    -1,    -1,    78,    79,
-      -1,    -1,    82,    83,    84,    85,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
-      -1,   121,   122,     3,     4,     5,     6,     7,    -1,    -1,
-      -1,    11,    12,    -1,    -1,    -1,    16,    -1,    18,    19,
-      20,    21,    22,    23,    24,    -1,    -1,    -1,    -1,    -1,
-      30,    31,    32,    33,    34,    35,    36,    -1,    -1,    39,
-      -1,    -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,
-      -1,    51,    52,    53,    54,    55,    56,    -1,    58,    59,
-      60,    61,    62,    -1,    64,    65,    -1,    67,    68,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,
-      90,    91,    -1,    93,    94,    -1,    96,    -1,    98,    99,
-      -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,
-       3,     4,     5,     6,     7,    -1,    -1,    -1,    11,    12,
-     120,   121,   122,    16,    -1,    18,    19,    20,    21,    22,
-      23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,    32,
-      33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,    -1,
-      -1,    -1,    45,    -1,    47,    48,    49,    -1,    51,    52,
-      53,    54,    55,    56,    -1,    58,    59,    60,    61,    62,
-      -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,    -1,
-      93,    94,    -1,    96,    -1,    98,    99,    -1,    -1,    -1,
-     103,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,
-      -1,     7,    -1,    -1,    -1,    11,    12,   120,   121,   122,
-      16,    -1,    18,    19,    20,    21,    22,    23,    24,    -1,
-      -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,    35,
-      36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    48,    49,    -1,    51,    52,    53,    54,    55,
-      56,    57,    58,    59,    60,    61,    62,    -1,    64,    65,
-      -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,    -1,
-      96,    97,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,
-      -1,    -1,    -1,    -1,     3,     4,     5,    -1,     7,    -1,
-      -1,    -1,    11,    12,   120,   121,   122,    16,    -1,    18,
-      19,    20,    21,    22,    23,    24,    -1,    -1,    -1,    -1,
-      -1,    30,    31,    32,    33,    34,    35,    36,    -1,    -1,
-      39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,
-      49,    -1,    51,    52,    53,    54,    55,    56,    57,    58,
-      59,    60,    61,    62,    -1,    64,    65,    -1,    67,    68,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,
-      -1,    90,    91,    -1,    93,    94,    -1,    96,    97,    98,
-      99,    -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,
-      -1,     3,     4,     5,    -1,     7,    -1,    -1,    -1,    11,
-      12,   120,   121,   122,    16,    -1,    18,    19,    20,    21,
-      22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,
-      32,    33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    48,    49,    -1,    51,
-      52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
-      62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,
-      -1,    93,    94,    -1,    96,    -1,    98,    99,    -1,    -1,
-      -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,
-       5,    -1,     7,    -1,    -1,    -1,    11,    12,   120,   121,
-     122,    16,    -1,    18,    19,    20,    21,    22,    23,    24,
-      -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,
-      35,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    48,    49,    -1,    51,    52,    53,    54,
-      55,    56,    57,    58,    59,    60,    61,    62,    -1,    64,
-      65,    -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,
-      -1,    -1,    97,    98,    99,    -1,    -1,    -1,   103,    -1,
-      -1,    -1,    -1,    -1,    -1,     3,     4,     5,    -1,     7,
-      -1,    -1,    -1,    11,    12,   120,   121,   122,    16,    -1,
-      18,    19,    20,    21,    22,    23,    24,    -1,    -1,    -1,
-      -1,    -1,    30,    31,    32,    33,    34,    35,    36,    -1,
-      -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      48,    49,    -1,    51,    52,    53,    54,    55,    56,    57,
-      58,    59,    60,    61,    62,    -1,    64,    65,    -1,    67,
-      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,
-      -1,    -1,    90,    91,    -1,    93,    94,    -1,    96,    -1,
-      98,    99,    -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,
-      -1,    -1,     3,     4,     5,    -1,     7,    -1,    -1,    -1,
-      11,    12,   120,   121,   122,    16,    -1,    18,    19,    20,
-      21,    22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,
-      31,    32,    33,    34,    35,    36,    -1,    -1,    39,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,    49,    -1,
-      51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
-      61,    62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,
-      91,    -1,    93,    94,    -1,    -1,    -1,    98,    99,    -1,
-      -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,     3,
-       4,     5,    -1,     7,    -1,    -1,    -1,    11,    12,   120,
-     121,   122,    16,    -1,    18,    19,    20,    21,    22,    23,
-      24,    -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,
-      34,    35,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    48,    49,    -1,    51,    52,    53,
-      54,    55,    56,    -1,    58,    59,    60,    61,    62,    -1,
-      64,    65,    -1,    67,    68,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    87,    -1,    -1,    90,    91,    -1,    93,
-      94,    -1,    96,    -1,    98,    99,    -1,    -1,    -1,   103,
-      -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,    -1,
-       7,    -1,    -1,    -1,    11,    12,   120,   121,   122,    16,
-      -1,    18,    19,    20,    21,    22,    23,    24,    -1,    -1,
-      -1,    -1,    -1,    30,    31,    32,    33,    34,    35,    36,
-      -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    48,    49,    -1,    51,    52,    53,    54,    55,    56,
-      -1,    58,    59,    60,    61,    62,    -1,    64,    65,    -1,
-      67,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      87,    -1,    -1,    90,    91,    -1,    93,    94,    -1,    96,
-      -1,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,    -1,
-      -1,    -1,    -1,     3,     4,     5,    -1,     7,    -1,    -1,
-      -1,    11,    12,   120,   121,   122,    16,    -1,    18,    19,
-      20,    21,    22,    23,    24,    -1,    -1,    -1,    -1,    -1,
-      30,    31,    32,    33,    34,    35,    36,    -1,    -1,    39,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,    49,
-      -1,    51,    52,    53,    54,    55,    56,    -1,    58,    59,
-      60,    61,    62,    -1,    64,    65,    -1,    67,    68,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,
-      90,    91,    -1,    93,    94,    -1,    96,    -1,    98,    99,
-      -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,
-       3,     4,     5,    -1,     7,    -1,    -1,    -1,    11,    12,
-     120,   121,   122,    16,    -1,    18,    19,    20,    21,    22,
-      23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,    32,
-      33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    48,    49,    -1,    51,    52,
-      53,    54,    55,    56,    -1,    58,    59,    60,    61,    62,
-      -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,    -1,
-      93,    94,    -1,    96,    -1,    98,    99,    -1,    -1,    -1,
-     103,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,
-      -1,     7,    -1,    -1,    -1,    11,    12,   120,   121,   122,
-      16,    -1,    18,    19,    20,    21,    22,    23,    24,    -1,
-      -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,    35,
-      36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    48,    49,    -1,    51,    52,    53,    54,    55,
-      56,    -1,    58,    59,    60,    61,    62,    -1,    64,    65,
-      -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,    -1,
-      96,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,
-      -1,    -1,    -1,    -1,     3,     4,     5,    -1,     7,    -1,
-      -1,    -1,    11,    12,   120,   121,   122,    16,    -1,    18,
-      19,    20,    21,    22,    23,    24,    -1,    -1,    -1,    -1,
-      -1,    30,    31,    32,    33,    34,    35,    36,    -1,    -1,
-      39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,
-      49,    -1,    51,    52,    53,    54,    55,    56,    -1,    58,
-      59,    60,    61,    62,    -1,    64,    65,    -1,    67,    68,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,
-      -1,    90,    91,    -1,    93,    94,    -1,    -1,    -1,    98,
-      99,    -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,
-      -1,     3,     4,     5,    -1,     7,    -1,    -1,    -1,    11,
-      12,   120,   121,   122,    16,    -1,    18,    19,    20,    21,
-      22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,
-      32,    33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    48,    49,    -1,    51,
-      52,    53,    54,    55,    56,    -1,    58,    59,    60,    61,
-      62,    -1,    64,    65,    -1,    67,    68,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,
-      -1,    93,    94,    -1,    -1,    -1,    98,    99,    -1,    -1,
-      -1,   103,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,
-       5,    -1,     7,    -1,    -1,    -1,    11,    12,   120,   121,
-     122,    16,    -1,    18,    19,    20,    21,    22,    23,    24,
-      -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,
-      35,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    48,    49,    -1,    51,    52,    53,    54,
-      55,    56,    -1,    58,    59,    60,    61,    62,    -1,    64,
-      65,    -1,    67,    68,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,
-      -1,    -1,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,
-      -1,    -1,    -1,    -1,    -1,     3,     4,     5,    -1,     7,
-      -1,    -1,    -1,    11,    12,   120,   121,   122,    16,    -1,
-      18,    19,    20,    21,    22,    23,    24,    -1,    -1,    -1,
-      -1,    -1,    30,    31,    32,    33,    34,    35,    36,    -1,
-      -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      48,    49,    -1,    51,    52,    53,    54,    55,    56,    -1,
-      58,    59,    60,    61,    62,    -1,    64,    65,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    84,    -1,    -1,    87,
-      -1,    -1,    90,    91,    -1,    93,    94,    -1,    -1,    -1,
-      98,    99,    -1,    -1,    -1,   103,    -1,    -1,     3,     4,
-       5,    -1,     7,    -1,    -1,    -1,    11,    12,    -1,    -1,
-      -1,    16,   120,    18,    19,    20,    21,    22,    23,    24,
-      -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,
-      35,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    48,    49,    -1,    51,    52,    53,    54,
-      55,    56,    -1,    58,    59,    60,    61,    62,    -1,    64,
-      65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,
-      -1,    96,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,
-      -1,     3,     4,     5,    -1,     7,    -1,    -1,    -1,    11,
-      12,    -1,    -1,    -1,    16,   120,    18,    19,    20,    21,
-      22,    23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,
-      32,    33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    48,    49,    -1,    51,
-      52,    53,    54,    55,    56,    -1,    58,    59,    60,    61,
-      62,    -1,    64,    65,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,
-      -1,    93,    94,    -1,    96,    -1,    98,    99,    -1,    -1,
-      -1,   103,    -1,    -1,     3,     4,     5,    -1,     7,    -1,
-      -1,    -1,    11,    12,    -1,    -1,    -1,    16,   120,    18,
-      19,    20,    21,    22,    23,    24,    -1,    -1,    -1,    -1,
-      -1,    30,    31,    32,    33,    34,    35,    36,    -1,    -1,
-      39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,
-      49,    -1,    51,    52,    53,    54,    55,    56,    -1,    58,
-      59,    60,    61,    62,    -1,    64,    65,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,
-      -1,    90,    91,    -1,    93,    94,    -1,    -1,    -1,    98,
-      99,    -1,    -1,    -1,   103,    -1,    -1,     3,     4,     5,
-      -1,     7,    -1,    -1,    -1,    11,    12,    -1,    -1,    -1,
-      16,   120,    18,    19,    20,    21,    22,    23,    24,    -1,
-      -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,    35,
-      36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    48,    49,    -1,    51,    52,    53,    54,    55,
-      56,    -1,    58,    59,    60,    61,    62,    -1,    64,    65,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    87,    -1,    -1,    90,    91,    -1,    93,    94,    -1,
-      -1,    -1,    98,    99,    -1,    -1,    -1,   103,    -1,    -1,
-       3,     4,     5,    -1,     7,    -1,    -1,    -1,    11,    12,
-      -1,    -1,    -1,    16,   120,    18,    19,    20,    21,    22,
-      23,    24,    -1,    -1,    -1,    -1,    -1,    30,    31,    32,
-      33,    34,    35,    36,    -1,    -1,    39,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    48,    49,    -1,    51,    52,
-      53,    54,    55,    56,    -1,    58,    59,    60,    61,    62,
-      -1,    64,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    87,    -1,    -1,    90,    91,    -1,
-      93,    94,    -1,    -1,    -1,    98,    99,    -1,    -1,    -1,
-     103,    -1,    -1,     3,     4,     5,    -1,     7,    -1,    -1,
-      -1,    11,    12,    -1,    -1,    -1,    16,   120,    18,    19,
-      20,    21,    22,    23,    24,    -1,    -1,    -1,    -1,    -1,
-      30,    31,    32,    33,    34,    35,    36,    -1,    -1,    39,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,    49,
-      -1,    51,    52,    53,    54,    55,    56,    -1,    58,    59,
-      60,    61,    62,    -1,    64,    65,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,    -1,    -1,
-      90,    91,    -1,    93,    94,    -1,    -1,    -1,    98,    99,
-      -1,    -1,    -1,   103,    -1,    51,    52,    -1,    -1,    55,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     120,    67,    68,    69,    70,    71,    72,    73,    74,    75,
-      -1,    -1,    78,    79,    -1,    -1,    82,    83,    84,    85,
-      -1,    -1,    69,    70,    71,    72,    73,    74,    75,    -1,
-      96,    78,    79,    -1,    -1,    -1,    -1,    84,    85,    -1,
-      -1,    -1,    -1,    -1,   110,   111,   112,   113,   114,   115,
-     116,   117,   118,   119,    -1,   121,   122,    -1,    51,    52,
-      -1,    -1,    55,   110,   111,   112,   113,   114,   115,   116,
-     117,   118,   119,   139,    67,    68,    69,    70,    71,    72,
-      73,    74,    75,    -1,    -1,    78,    79,    -1,    -1,    82,
-      83,    84,    85,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    96,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   110,   111,   112,
-     113,   114,   115,   116,   117,   118,   119,    -1,   121,   122,
-      -1,    51,    52,    -1,    -1,    55,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   139,    67,    68,    69,
-      70,    71,    72,    73,    74,    75,    -1,    -1,    78,    79,
-      -1,    -1,    82,    83,    84,    85,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
-      -1,   121,   122,    -1,    51,    52,    -1,    -1,    55,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   139,
-      67,    68,    69,    70,    71,    72,    73,    74,    75,    -1,
-      -1,    78,    79,    -1,    -1,    82,    83,    84,    85,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    96,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   110,   111,   112,   113,   114,   115,   116,
-     117,   118,   119,    -1,   121,   122,    -1,    51,    52,    -1,
-      -1,    55,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   139,    67,    68,    69,    70,    71,    72,    73,
-      74,    75,    -1,    -1,    78,    79,    -1,    -1,    82,    83,
-      84,    85,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    96,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   110,   111,   112,   113,
-     114,   115,   116,   117,   118,   119,    -1,   121,   122,    -1,
-      51,    52,    -1,    -1,    55,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   139,    67,    68,    69,    70,
-      71,    72,    73,    74,    75,    -1,    -1,    78,    79,    -1,
-      -1,    82,    83,    84,    85,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   110,
-     111,   112,   113,   114,   115,   116,   117,   118,   119,    -1,
-     121,   122,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   139,    67,
-      68,    69,    70,    71,    72,    73,    74,    75,    -1,    -1,
-      78,    79,    -1,    -1,    82,    83,    84,    85,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   110,   111,   112,   113,   114,   115,   116,   117,
-     118,   119,    -1,   121,   122,    -1,    51,    52,    -1,    -1,
-      55,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   139,    67,    68,    69,    70,    71,    72,    73,    74,
-      75,    -1,    -1,    78,    79,    -1,    -1,    82,    83,    84,
-      85,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    96,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   110,   111,   112,   113,   114,
-     115,   116,   117,   118,   119,    -1,   121,   122,    -1,    51,
-      52,    -1,    -1,    55,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   139,    67,    68,    69,    70,    71,
-      72,    73,    74,    75,    -1,    -1,    78,    79,    -1,    -1,
-      82,    83,    84,    85,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   110,   111,
-     112,   113,   114,   115,   116,   117,   118,   119,    -1,   121,
-     122,    -1,    51,    52,    -1,    -1,    55,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   139,    67,    68,
-      69,    70,    71,    72,    73,    74,    75,    -1,    -1,    78,
-      79,    -1,    -1,    82,    83,    84,    85,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   110,   111,   112,   113,   114,   115,   116,   117,   118,
-     119,    -1,   121,   122,    -1,    51,    52,    -1,    -1,    55,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     139,    67,    68,    69,    70,    71,    72,    73,    74,    75,
-      -1,    -1,    78,    79,    -1,    -1,    82,    83,    84,    85,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      96,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   110,   111,   112,   113,   114,   115,
-     116,   117,   118,   119,    -1,   121,   122,    -1,    51,    52,
-      -1,    -1,    55,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   139,    67,    68,    69,    70,    71,    72,
-      73,    74,    75,    -1,    -1,    78,    79,    -1,    -1,    82,
-      83,    84,    85,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    96,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   110,   111,   112,
-     113,   114,   115,   116,   117,   118,   119,    -1,   121,   122,
-      -1,    51,    52,    -1,    -1,    55,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   139,    67,    68,    69,
-      70,    71,    72,    73,    74,    75,    -1,    -1,    78,    79,
-      -1,    -1,    82,    83,    84,    85,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
-      -1,   121,   122,    69,    70,    71,    72,    73,    74,    75,
-      76,    77,    78,    79,    80,    81,    -1,    -1,    84,    85,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   110,   111,   112,   113,   114,   115,
-     116,   117,   118,   119
-};
-
... truncated to 1.0MB




More information about the Groonga-commit mailing list
Back to archive index