rroonga 5.0.1-x86-mingw32 → 5.0.2-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
 - data/README.md +1 -1
 - data/ext/groonga/rb-grn-logger.c +159 -3
 - data/ext/groonga/rb-grn-plugin.c +17 -1
 - data/ext/groonga/rb-grn-query-logger.c +129 -3
 - data/ext/groonga/rb-grn.h +1 -1
 - data/lib/1.9/groonga.so +0 -0
 - data/lib/2.0/groonga.so +0 -0
 - data/lib/2.1/groonga.so +0 -0
 - data/lib/2.2/groonga.so +0 -0
 - data/lib/groonga/query-logger.rb +48 -3
 - data/lib/groonga/schema.rb +16 -3
 - data/rroonga-build.rb +3 -3
 - data/test/test-logger.rb +97 -2
 - data/test/test-plugin.rb +5 -1
 - data/test/test-query-logger.rb +149 -0
 - data/test/test-schema.rb +19 -0
 - data/vendor/local/bin/grndb.exe +0 -0
 - data/vendor/local/bin/groonga-benchmark.exe +0 -0
 - data/vendor/local/bin/groonga.exe +0 -0
 - data/vendor/local/bin/libgroonga-0.dll +0 -0
 - data/vendor/local/bin/libmecab-1.dll +0 -0
 - data/vendor/local/bin/libmsgpack-4.dll +0 -0
 - data/vendor/local/bin/libmsgpackc-2.dll +0 -0
 - data/vendor/local/bin/libonig-5.dll +0 -0
 - data/vendor/local/bin/lz4.exe +0 -0
 - data/vendor/local/bin/lz4c.exe +0 -0
 - data/vendor/local/bin/lz4cat +0 -0
 - data/vendor/local/bin/mecab-config +2 -2
 - data/vendor/local/bin/mecab.exe +0 -0
 - data/vendor/local/bin/onig-config +1 -1
 - data/vendor/local/bin/zlib1.dll +0 -0
 - data/vendor/local/etc/groonga/httpd/groonga-httpd.conf +2 -2
 - data/vendor/local/include/groonga/groonga.h +1 -0
 - data/vendor/local/include/groonga/groonga/groonga.h +12 -6
 - data/vendor/local/include/groonga/groonga/portability.h +158 -0
 - data/vendor/local/include/msgpack.h +1 -0
 - data/vendor/local/include/msgpack.hpp +2 -1
 - data/vendor/local/include/msgpack/adaptor/bool.hpp +58 -0
 - data/vendor/local/include/msgpack/{type/bool.hpp → adaptor/bool_fwd.hpp} +11 -27
 - data/vendor/local/include/msgpack/adaptor/char_ptr.hpp +78 -0
 - data/vendor/local/include/msgpack/adaptor/char_ptr_fwd.hpp +43 -0
 - data/vendor/local/include/msgpack/adaptor/check_container_size.hpp +61 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/array.hpp +76 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/array_char.hpp +84 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/array_char_fwd.hpp +45 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/array_fwd.hpp +44 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/forward_list.hpp +75 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/forward_list_fwd.hpp +44 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/tuple.hpp +152 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/tuple_fwd.hpp +62 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/unordered_map.hpp +142 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/unordered_map_fwd.hpp +53 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/unordered_set.hpp +134 -0
 - data/vendor/local/include/msgpack/adaptor/cpp11/unordered_set_fwd.hpp +52 -0
 - data/vendor/local/include/msgpack/adaptor/define.hpp +29 -0
 - data/vendor/local/include/msgpack/adaptor/deque.hpp +83 -0
 - data/vendor/local/include/msgpack/adaptor/deque_fwd.hpp +40 -0
 - data/vendor/local/include/msgpack/adaptor/detail/cpp03_define.hpp +3475 -0
 - data/vendor/local/include/msgpack/adaptor/detail/cpp03_msgpack_tuple.hpp +13918 -0
 - data/vendor/local/include/msgpack/adaptor/detail/cpp03_msgpack_tuple_fwd.hpp +4341 -0
 - data/vendor/local/include/msgpack/adaptor/detail/cpp11_define.hpp +184 -0
 - data/vendor/local/include/msgpack/adaptor/detail/cpp11_msgpack_tuple.hpp +212 -0
 - data/vendor/local/include/msgpack/adaptor/detail/cpp11_msgpack_tuple_fwd.hpp +84 -0
 - data/vendor/local/include/msgpack/adaptor/fixint.hpp +212 -0
 - data/vendor/local/include/msgpack/adaptor/fixint_fwd.hpp +100 -0
 - data/vendor/local/include/msgpack/adaptor/float.hpp +105 -0
 - data/vendor/local/include/msgpack/adaptor/float_fwd.hpp +44 -0
 - data/vendor/local/include/msgpack/adaptor/int.hpp +308 -0
 - data/vendor/local/include/msgpack/adaptor/int_fwd.hpp +100 -0
 - data/vendor/local/include/msgpack/adaptor/list.hpp +83 -0
 - data/vendor/local/include/msgpack/adaptor/list_fwd.hpp +40 -0
 - data/vendor/local/include/msgpack/adaptor/map.hpp +219 -0
 - data/vendor/local/include/msgpack/adaptor/map_fwd.hpp +69 -0
 - data/vendor/local/include/msgpack/adaptor/msgpack_tuple.hpp +29 -0
 - data/vendor/local/include/msgpack/adaptor/msgpack_tuple_fwd.hpp +29 -0
 - data/vendor/local/include/msgpack/adaptor/nil.hpp +68 -0
 - data/vendor/local/include/msgpack/adaptor/nil_fwd.hpp +51 -0
 - data/vendor/local/include/msgpack/adaptor/pair.hpp +63 -0
 - data/vendor/local/include/msgpack/{type/pair.hpp → adaptor/pair_fwd.hpp} +10 -29
 - data/vendor/local/include/msgpack/adaptor/raw.hpp +98 -0
 - data/vendor/local/include/msgpack/{type/nil.hpp → adaptor/raw_fwd.hpp} +15 -30
 - data/vendor/local/include/msgpack/adaptor/set.hpp +134 -0
 - data/vendor/local/include/msgpack/adaptor/set_fwd.hpp +52 -0
 - data/vendor/local/include/msgpack/adaptor/string.hpp +78 -0
 - data/vendor/local/include/msgpack/adaptor/string_fwd.hpp +42 -0
 - data/vendor/local/include/msgpack/adaptor/tr1/unordered_map.hpp +164 -0
 - data/vendor/local/include/msgpack/adaptor/tr1/unordered_map_fwd.hpp +75 -0
 - data/vendor/local/include/msgpack/adaptor/tr1/unordered_set.hpp +157 -0
 - data/vendor/local/include/msgpack/adaptor/tr1/unordered_set_fwd.hpp +75 -0
 - data/vendor/local/include/msgpack/adaptor/vector.hpp +87 -0
 - data/vendor/local/include/msgpack/adaptor/vector_bool.hpp +80 -0
 - data/vendor/local/include/msgpack/adaptor/vector_bool_fwd.hpp +40 -0
 - data/vendor/local/include/msgpack/adaptor/vector_char.hpp +81 -0
 - data/vendor/local/include/msgpack/adaptor/vector_char_fwd.hpp +42 -0
 - data/vendor/local/include/msgpack/adaptor/vector_fwd.hpp +42 -0
 - data/vendor/local/include/msgpack/cpp_config.hpp +109 -0
 - data/vendor/local/include/msgpack/detail/cpp03_zone.hpp +662 -0
 - data/vendor/local/include/msgpack/detail/cpp11_zone.hpp +368 -0
 - data/vendor/local/include/msgpack/fbuffer.h +3 -4
 - data/vendor/local/include/msgpack/fbuffer.hpp +24 -16
 - data/vendor/local/include/msgpack/gcc_atomic.h +33 -0
 - data/vendor/local/include/msgpack/iterator.hpp +42 -0
 - data/vendor/local/include/msgpack/object.h +51 -30
 - data/vendor/local/include/msgpack/object.hpp +564 -273
 - data/vendor/local/include/msgpack/object_fwd.hpp +182 -0
 - data/vendor/local/include/msgpack/pack.h +23 -17
 - data/vendor/local/include/msgpack/pack.hpp +889 -164
 - data/vendor/local/include/msgpack/pack_define.h +2 -2
 - data/vendor/local/include/msgpack/pack_template.h +452 -356
 - data/vendor/local/include/msgpack/sbuffer.h +43 -37
 - data/vendor/local/include/msgpack/sbuffer.hpp +98 -76
 - data/vendor/local/include/msgpack/sysdep.h +48 -53
 - data/vendor/local/include/msgpack/type.hpp +35 -17
 - data/vendor/local/include/msgpack/unpack.h +62 -44
 - data/vendor/local/include/msgpack/unpack.hpp +1578 -217
 - data/vendor/local/include/msgpack/unpack_define.h +49 -47
 - data/vendor/local/include/msgpack/unpack_template.h +344 -284
 - data/vendor/local/include/msgpack/util.h +23 -0
 - data/vendor/local/include/msgpack/version.h +12 -6
 - data/vendor/local/include/msgpack/version.hpp +44 -0
 - data/vendor/local/include/msgpack/version_master.h +3 -0
 - data/vendor/local/include/msgpack/versioning.hpp +77 -0
 - data/vendor/local/include/msgpack/vrefbuffer.h +40 -34
 - data/vendor/local/include/msgpack/vrefbuffer.hpp +261 -64
 - data/vendor/local/include/msgpack/zbuffer.h +79 -79
 - data/vendor/local/include/msgpack/zbuffer.hpp +136 -67
 - data/vendor/local/include/msgpack/zone.h +65 -42
 - data/vendor/local/include/msgpack/zone.hpp +10 -445
 - data/vendor/local/include/msgpack_fwd.hpp +28 -0
 - data/vendor/local/lib/groonga/plugins/functions/vector.a +0 -0
 - data/vendor/local/lib/groonga/plugins/functions/vector.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/functions/vector.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/functions/vector.la +41 -0
 - data/vendor/local/lib/groonga/plugins/query_expanders/tsv.a +0 -0
 - data/vendor/local/lib/groonga/plugins/query_expanders/tsv.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/query_expanders/tsv.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/query_expanders/tsv.la +2 -2
 - data/vendor/local/lib/groonga/plugins/ruby/eval.a +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/eval.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/eval.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/eval.la +2 -2
 - data/vendor/local/lib/groonga/plugins/ruby/load.a +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/load.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/load.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/ruby/load.la +2 -2
 - data/vendor/local/lib/groonga/plugins/sharding.rb +1 -0
 - data/vendor/local/lib/groonga/plugins/sharding/logical_count.rb +17 -45
 - data/vendor/local/lib/groonga/plugins/sharding/logical_enumerator.rb +15 -6
 - data/vendor/local/lib/groonga/plugins/sharding/logical_range_filter.rb +63 -75
 - data/vendor/local/lib/groonga/plugins/sharding/range_expression_builder.rb +65 -0
 - data/vendor/local/lib/groonga/plugins/suggest/suggest.a +0 -0
 - data/vendor/local/lib/groonga/plugins/suggest/suggest.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/suggest/suggest.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/suggest/suggest.la +2 -2
 - data/vendor/local/lib/groonga/plugins/table/table.a +0 -0
 - data/vendor/local/lib/groonga/plugins/table/table.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/table/table.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/table/table.la +2 -2
 - data/vendor/local/lib/groonga/plugins/token_filters/stop_word.a +0 -0
 - data/vendor/local/lib/groonga/plugins/token_filters/stop_word.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/token_filters/stop_word.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/token_filters/stop_word.la +2 -2
 - data/vendor/local/lib/groonga/plugins/tokenizers/mecab.a +0 -0
 - data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll +0 -0
 - data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll.a +0 -0
 - data/vendor/local/lib/groonga/plugins/tokenizers/mecab.la +2 -2
 - data/vendor/local/lib/groonga/scripts/ruby/expression_size_estimator.rb +38 -41
 - data/vendor/local/lib/groonga/scripts/ruby/scan_info_data.rb +3 -0
 - data/vendor/local/lib/libgroonga.a +0 -0
 - data/vendor/local/lib/libgroonga.dll.a +0 -0
 - data/vendor/local/lib/libgroonga.la +2 -2
 - data/vendor/local/lib/liblz4.a +0 -0
 - data/vendor/local/lib/liblz4.dll +0 -0
 - data/vendor/local/lib/liblz4.dll.1 +0 -0
 - data/vendor/local/lib/liblz4.dll.1.5.0 +0 -0
 - data/vendor/local/lib/libmecab.a +0 -0
 - data/vendor/local/lib/libmecab.dll.a +0 -0
 - data/vendor/local/lib/libmecab.la +2 -2
 - data/vendor/local/lib/libmsgpack.a +0 -0
 - data/vendor/local/lib/libmsgpack.dll.a +0 -0
 - data/vendor/local/lib/libmsgpack.la +4 -4
 - data/vendor/local/lib/libmsgpackc.a +0 -0
 - data/vendor/local/lib/libmsgpackc.dll.a +0 -0
 - data/vendor/local/lib/libmsgpackc.la +2 -2
 - data/vendor/local/lib/libonig.a +0 -0
 - data/vendor/local/lib/libonig.dll.a +0 -0
 - data/vendor/local/lib/libonig.la +2 -2
 - data/vendor/local/lib/libz.a +0 -0
 - data/vendor/local/lib/libz.dll.a +0 -0
 - data/vendor/local/lib/pkgconfig/groonga.pc +3 -3
 - data/vendor/local/lib/pkgconfig/liblz4.pc +5 -5
 - data/vendor/local/lib/pkgconfig/msgpack.pc +2 -2
 - data/vendor/local/lib/pkgconfig/oniguruma.pc +6 -6
 - data/vendor/local/lib/pkgconfig/zlib.pc +3 -3
 - data/vendor/local/libexec/mecab/mecab-cost-train.exe +0 -0
 - data/vendor/local/libexec/mecab/mecab-dict-gen.exe +0 -0
 - data/vendor/local/libexec/mecab/mecab-dict-index.exe +0 -0
 - data/vendor/local/libexec/mecab/mecab-system-eval.exe +0 -0
 - data/vendor/local/libexec/mecab/mecab-test-gen.exe +0 -0
 - data/vendor/local/sbin/groonga-httpd-restart +1 -1
 - data/vendor/local/sbin/groonga-httpd.exe +0 -0
 - data/vendor/local/share/doc/groonga/en/html/.buildinfo +1 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/contribution/development/release.txt +69 -52
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/centos.txt +6 -6
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/debian.txt +56 -5
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/fedora.txt +4 -4
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/mac_os_x.txt +3 -3
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/others.txt +7 -7
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/solaris.txt +3 -3
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/ubuntu.txt +6 -5
 - data/vendor/local/share/doc/groonga/en/html/_sources/install/windows.txt +14 -14
 - data/vendor/local/share/doc/groonga/en/html/_sources/news.txt +93 -3
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/0.x.txt +2 -2
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/1.0.x.txt +9 -9
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/1.1.x.txt +1 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/1.2.x.txt +10 -10
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/1.3.x.txt +1 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/2.x.txt +13 -13
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/3.x.txt +13 -13
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/4.x.txt +9 -9
 - data/vendor/local/share/doc/groonga/en/html/_sources/news/senna.txt +13 -13
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/commands/dump.txt +135 -27
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/commands/request_cancel.txt +1 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/executables/groonga.txt +148 -7
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/functions/vector_size.txt +76 -0
 - data/vendor/local/share/doc/groonga/en/html/_sources/reference/scorer.txt +2 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/server/gqtp.txt +38 -6
 - data/vendor/local/share/doc/groonga/en/html/_sources/spec/gqtp.txt +2 -1
 - data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/index.txt +6 -4
 - data/vendor/local/share/doc/groonga/en/html/characteristic.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/client.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/community.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution.html +14 -13
 - data/vendor/local/share/doc/groonga/en/html/contribution/development.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/com.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/cooperation.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/query.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/release.html +58 -42
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/repository.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/development/test.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/documentation.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/documentation/c-api.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/documentation/i18n.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/documentation/introduction.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/contribution/report.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/development.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/development/travis-ci.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/genindex.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/index.html +15 -9
 - data/vendor/local/share/doc/groonga/en/html/install.html +8 -7
 - data/vendor/local/share/doc/groonga/en/html/install/centos.html +12 -12
 - data/vendor/local/share/doc/groonga/en/html/install/debian.html +70 -13
 - data/vendor/local/share/doc/groonga/en/html/install/fedora.html +10 -10
 - data/vendor/local/share/doc/groonga/en/html/install/mac_os_x.html +9 -9
 - data/vendor/local/share/doc/groonga/en/html/install/others.html +17 -17
 - data/vendor/local/share/doc/groonga/en/html/install/solaris.html +9 -9
 - data/vendor/local/share/doc/groonga/en/html/install/ubuntu.html +12 -11
 - data/vendor/local/share/doc/groonga/en/html/install/windows.html +21 -21
 - data/vendor/local/share/doc/groonga/en/html/limitations.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/news.html +200 -103
 - data/vendor/local/share/doc/groonga/en/html/news/0.x.html +10 -10
 - data/vendor/local/share/doc/groonga/en/html/news/1.0.x.html +24 -24
 - data/vendor/local/share/doc/groonga/en/html/news/1.1.x.html +8 -8
 - data/vendor/local/share/doc/groonga/en/html/news/1.2.x.html +26 -26
 - data/vendor/local/share/doc/groonga/en/html/news/1.3.x.html +8 -8
 - data/vendor/local/share/doc/groonga/en/html/news/2.x.html +32 -32
 - data/vendor/local/share/doc/groonga/en/html/news/3.x.html +32 -32
 - data/vendor/local/share/doc/groonga/en/html/news/4.x.html +27 -27
 - data/vendor/local/share/doc/groonga/en/html/news/senna.html +32 -32
 - data/vendor/local/share/doc/groonga/en/html/objects.inv +0 -0
 - data/vendor/local/share/doc/groonga/en/html/reference.html +8 -7
 - data/vendor/local/share/doc/groonga/en/html/reference/api.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/global_configurations.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_cache.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_column.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_command_version.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_content_type.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_ctx.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_db.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_encoding.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_expr.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_geo.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_hook.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_ii.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_index_cursor.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_info.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_match_escalation.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_obj.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_proc.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_search.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_table.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_table_cursor.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_type.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/grn_user_data.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/overview.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/api/plugin.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/cast.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/column.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/columns/index.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/columns/pseudo.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/columns/scalar.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/columns/vector.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/command.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/command/command_version.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/command/output_format.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/command/request_id.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/command/return_code.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/cache_limit.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/check.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/clearlock.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/column_create.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/column_list.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/column_remove.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/column_rename.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/define_selector.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/defrag.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/delete.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/dump.html +141 -34
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/load.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/lock_clear.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/log_level.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/log_put.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/log_reopen.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/logical_count.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/logical_range_filter.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/normalize.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/normalizer_list.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/plugin_register.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/plugin_unregister.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/quit.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/range_filter.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/register.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/request_cancel.html +8 -8
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/ruby_eval.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/ruby_load.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/select.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/shutdown.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/status.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/suggest.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/table_create.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/table_list.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/table_remove.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/table_tokenize.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/tokenize.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/tokenizer_list.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/commands/truncate.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/executables.html +7 -7
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/grndb.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/grnslap.html +10 -10
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-benchmark.html +10 -10
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-httpd.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-server-http.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-suggest-create-dataset.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-suggest-httpd.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-suggest-learner.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga.html +146 -14
 - data/vendor/local/share/doc/groonga/en/html/reference/function.html +7 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/between.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/edit_distance.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/geo_distance.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/geo_in_circle.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/geo_in_rectangle.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/highlight_full.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/highlight_html.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/html_untag.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/in_values.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/now.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/query.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/rand.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/snippet_html.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/sub_filter.html +11 -11
 - data/vendor/local/share/doc/groonga/en/html/reference/functions/vector_size.html +248 -0
 - data/vendor/local/share/doc/groonga/en/html/reference/grn_expr.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/grn_expr/query_syntax.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/grn_expr/script_syntax.html +7 -7
 - data/vendor/local/share/doc/groonga/en/html/reference/indexing.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/log.html +7 -7
 - data/vendor/local/share/doc/groonga/en/html/reference/normalizers.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/operations.html +11 -11
 - data/vendor/local/share/doc/groonga/en/html/reference/operations/geolocation_search.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/output.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/query_expanders.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/query_expanders/tsv.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/regular_expression.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/scorer.html +8 -7
 - data/vendor/local/share/doc/groonga/en/html/reference/scorers/scorer_tf_at_most.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/scorers/scorer_tf_idf.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/scoring_note.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest/completion.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest/correction.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest/introduction.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/suggest/suggestion.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/tables.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/token_filters.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/tokenizers.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/tuning.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/reference/types.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/search.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/searchindex.js +1 -1
 - data/vendor/local/share/doc/groonga/en/html/server.html +11 -7
 - data/vendor/local/share/doc/groonga/en/html/server/gqtp.html +53 -8
 - data/vendor/local/share/doc/groonga/en/html/server/http.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/server/http/comparison.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/server/http/groonga-httpd.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/server/http/groonga.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/server/memcached.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/server/package.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/spec.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/spec/gqtp.html +10 -7
 - data/vendor/local/share/doc/groonga/en/html/spec/search.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/troubleshooting.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/troubleshooting/different_results_with_the_same_keyword.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/troubleshooting/mmap_cannot_allocate_memory.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial/data.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial/drilldown.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial/index.html +15 -11
 - data/vendor/local/share/doc/groonga/en/html/tutorial/introduction.html +7 -7
 - data/vendor/local/share/doc/groonga/en/html/tutorial/lexicon.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial/match_columns.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial/micro_blog.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial/network.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial/patricia_trie.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial/query_expansion.html +6 -6
 - data/vendor/local/share/doc/groonga/en/html/tutorial/search.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/.buildinfo +1 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/contribution/development/release.txt +69 -52
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/centos.txt +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/debian.txt +56 -5
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/fedora.txt +4 -4
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/mac_os_x.txt +3 -3
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/others.txt +7 -7
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/solaris.txt +3 -3
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/ubuntu.txt +6 -5
 - data/vendor/local/share/doc/groonga/ja/html/_sources/install/windows.txt +14 -14
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news.txt +93 -3
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/0.x.txt +2 -2
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/1.0.x.txt +9 -9
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/1.1.x.txt +1 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/1.2.x.txt +10 -10
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/1.3.x.txt +1 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/2.x.txt +13 -13
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/3.x.txt +13 -13
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/4.x.txt +9 -9
 - data/vendor/local/share/doc/groonga/ja/html/_sources/news/senna.txt +13 -13
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/commands/dump.txt +135 -27
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/commands/request_cancel.txt +1 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/executables/groonga.txt +148 -7
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/functions/vector_size.txt +76 -0
 - data/vendor/local/share/doc/groonga/ja/html/_sources/reference/scorer.txt +2 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/server/gqtp.txt +38 -6
 - data/vendor/local/share/doc/groonga/ja/html/_sources/spec/gqtp.txt +2 -1
 - data/vendor/local/share/doc/groonga/ja/html/_sources/tutorial/index.txt +6 -4
 - data/vendor/local/share/doc/groonga/ja/html/characteristic.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/client.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/community.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution.html +14 -13
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/com.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/cooperation.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/query.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/release.html +58 -42
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/repository.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/development/test.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/documentation.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/c-api.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/i18n.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/introduction.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/contribution/report.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/development.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/development/travis-ci.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/genindex.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/index.html +15 -9
 - data/vendor/local/share/doc/groonga/ja/html/install.html +8 -7
 - data/vendor/local/share/doc/groonga/ja/html/install/centos.html +9 -9
 - data/vendor/local/share/doc/groonga/ja/html/install/debian.html +63 -11
 - data/vendor/local/share/doc/groonga/ja/html/install/fedora.html +9 -9
 - data/vendor/local/share/doc/groonga/ja/html/install/mac_os_x.html +9 -9
 - data/vendor/local/share/doc/groonga/ja/html/install/others.html +21 -18
 - data/vendor/local/share/doc/groonga/ja/html/install/solaris.html +9 -9
 - data/vendor/local/share/doc/groonga/ja/html/install/ubuntu.html +10 -9
 - data/vendor/local/share/doc/groonga/ja/html/install/windows.html +20 -20
 - data/vendor/local/share/doc/groonga/ja/html/limitations.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/news.html +234 -106
 - data/vendor/local/share/doc/groonga/ja/html/news/0.x.html +10 -10
 - data/vendor/local/share/doc/groonga/ja/html/news/1.0.x.html +24 -24
 - data/vendor/local/share/doc/groonga/ja/html/news/1.1.x.html +8 -8
 - data/vendor/local/share/doc/groonga/ja/html/news/1.2.x.html +26 -26
 - data/vendor/local/share/doc/groonga/ja/html/news/1.3.x.html +8 -8
 - data/vendor/local/share/doc/groonga/ja/html/news/2.x.html +32 -32
 - data/vendor/local/share/doc/groonga/ja/html/news/3.x.html +32 -32
 - data/vendor/local/share/doc/groonga/ja/html/news/4.x.html +27 -27
 - data/vendor/local/share/doc/groonga/ja/html/news/senna.html +32 -32
 - data/vendor/local/share/doc/groonga/ja/html/objects.inv +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/reference.html +8 -7
 - data/vendor/local/share/doc/groonga/ja/html/reference/api.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/global_configurations.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_cache.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_column.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_command_version.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_content_type.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_ctx.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_db.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_encoding.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_expr.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_geo.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_hook.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_ii.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_index_cursor.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_info.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_match_escalation.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_obj.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_proc.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_search.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_table.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_table_cursor.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_type.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_user_data.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/overview.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/api/plugin.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/cast.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/column.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/columns/index.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/columns/pseudo.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/columns/scalar.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/columns/vector.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/command.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/command/command_version.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/command/output_format.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/command/request_id.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/command/return_code.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/cache_limit.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/check.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/clearlock.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_create.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_list.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_remove.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_rename.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/define_selector.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/defrag.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/delete.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/dump.html +141 -34
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/load.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/lock_clear.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/log_level.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/log_put.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/log_reopen.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/logical_count.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/logical_range_filter.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/normalize.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/normalizer_list.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/plugin_register.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/plugin_unregister.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/quit.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/range_filter.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/register.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/request_cancel.html +25 -41
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/ruby_eval.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/ruby_load.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/select.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/shutdown.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/status.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/suggest.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_create.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_list.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_remove.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_tokenize.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/tokenize.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/tokenizer_list.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/commands/truncate.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables.html +7 -7
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/grndb.html +23 -29
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/grnslap.html +10 -10
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-benchmark.html +10 -10
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-httpd.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-server-http.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-suggest-create-dataset.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-suggest-httpd.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-suggest-learner.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga.html +146 -14
 - data/vendor/local/share/doc/groonga/ja/html/reference/function.html +7 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/between.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/edit_distance.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/geo_distance.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/geo_in_circle.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/geo_in_rectangle.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/highlight_full.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/highlight_html.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/html_untag.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/in_values.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/now.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/query.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/rand.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/snippet_html.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/sub_filter.html +11 -11
 - data/vendor/local/share/doc/groonga/ja/html/reference/functions/vector_size.html +249 -0
 - data/vendor/local/share/doc/groonga/ja/html/reference/grn_expr.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/grn_expr/query_syntax.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/grn_expr/script_syntax.html +7 -7
 - data/vendor/local/share/doc/groonga/ja/html/reference/indexing.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/log.html +7 -7
 - data/vendor/local/share/doc/groonga/ja/html/reference/normalizers.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/operations.html +11 -11
 - data/vendor/local/share/doc/groonga/ja/html/reference/operations/geolocation_search.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/output.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/query_expanders.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/query_expanders/tsv.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/regular_expression.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/scorer.html +7 -7
 - data/vendor/local/share/doc/groonga/ja/html/reference/scorers/scorer_tf_at_most.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/scorers/scorer_tf_idf.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/scoring_note.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest/completion.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest/correction.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest/introduction.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/suggest/suggestion.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/tables.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/token_filters.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/tokenizers.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/tuning.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/reference/types.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/search.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/searchindex.js +1 -1
 - data/vendor/local/share/doc/groonga/ja/html/server.html +11 -7
 - data/vendor/local/share/doc/groonga/ja/html/server/gqtp.html +53 -8
 - data/vendor/local/share/doc/groonga/ja/html/server/http.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/server/http/comparison.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/server/http/groonga-httpd.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/server/http/groonga.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/server/memcached.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/server/package.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/spec.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/spec/gqtp.html +10 -7
 - data/vendor/local/share/doc/groonga/ja/html/spec/search.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/troubleshooting.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/troubleshooting/different_results_with_the_same_keyword.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/troubleshooting/mmap_cannot_allocate_memory.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/data.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/drilldown.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/index.html +15 -11
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/introduction.html +7 -7
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/lexicon.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/match_columns.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/micro_blog.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/network.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/patricia_trie.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/query_expansion.html +6 -6
 - data/vendor/local/share/doc/groonga/ja/html/tutorial/search.html +6 -6
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/groonga-admin.css +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-icons_217bc0_256x240.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-icons_2e83ff_256x240.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-icons_469bdd_256x240.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-icons_6da8d5_256x240.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-icons_cd0a0a_256x240.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-icons_d8e7f3_256x240.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/images/ui-icons_f9bd01_256x240.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/css/redmond/jquery-ui-1.8.18.custom.css +0 -0
 - data/vendor/local/share/groonga/html/admin.old/favicon.ico +0 -0
 - data/vendor/local/share/groonga/html/admin.old/favicon.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/favicon.svg +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/images/groonga.png +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/images/groonga.svg +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/images/loading.gif +0 -0
 - data/vendor/local/share/groonga/html/admin.old/index.html +297 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/index.ja.html +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/js/groonga-admin.ja.js +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/js/groonga-admin.js +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/js/jquery-1.7.2.js +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/js/jquery-ui-1.8.18.custom.js +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/js/jquery.flot-0.7.js +0 -0
 - data/vendor/local/share/groonga/html/{admin → admin.old}/js/jquery.flot.license.txt +0 -0
 - data/vendor/local/share/groonga/html/admin/.htaccess +543 -0
 - data/vendor/local/share/groonga/html/admin/404.html +133 -0
 - data/vendor/local/share/groonga/html/admin/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot +0 -0
 - data/vendor/local/share/groonga/html/admin/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.svg +229 -0
 - data/vendor/local/share/groonga/html/admin/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf +0 -0
 - data/vendor/local/share/groonga/html/admin/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff +0 -0
 - data/vendor/local/share/groonga/html/admin/images/yeoman.d2754b85.png +0 -0
 - data/vendor/local/share/groonga/html/admin/index.html +9 -297
 - data/vendor/local/share/groonga/html/admin/robots.txt +3 -0
 - data/vendor/local/share/groonga/html/admin/scripts/oldieshim.a466b7b1.js +1 -0
 - data/vendor/local/share/groonga/html/admin/scripts/scripts.87083bfd.js +1 -0
 - data/vendor/local/share/groonga/html/admin/scripts/vendor.fa48c0ac.js +13 -0
 - data/vendor/local/share/groonga/html/admin/styles/main.0390285b.css +1 -0
 - data/vendor/local/share/groonga/html/admin/styles/vendor.f4ae649a.css +10 -0
 - data/vendor/local/share/groonga/html/admin/views/columns/new.html +1 -0
 - data/vendor/local/share/groonga/html/admin/views/columns/show.html +1 -0
 - data/vendor/local/share/groonga/html/admin/views/tables/index.html +1 -0
 - data/vendor/local/share/groonga/html/admin/views/tables/new.html +29 -0
 - data/vendor/local/share/groonga/html/admin/views/tables/search.html +1 -0
 - data/vendor/local/share/groonga/html/admin/views/tables/show.html +1 -0
 - data/vendor/local/share/groonga/html/admin/views/top.html +1 -0
 - data/vendor/local/share/license/groonga-admin/LICENSE +502 -0
 - data/vendor/local/share/license/groonga-admin/README.md +79 -0
 - data/vendor/local/share/license/msgpack/AUTHORS +0 -1
 - data/vendor/local/share/man/ja/man1/groonga.1 +826 -147
 - data/vendor/local/share/man/man1/groonga.1 +812 -99
 - metadata +138 -55
 - data/doc/text/install.textile +0 -145
 - data/doc/text/tutorial.textile +0 -510
 - data/vendor/local/bin/libmsgpack-3.dll +0 -0
 - data/vendor/local/include/msgpack/type/define.hpp +0 -3465
 - data/vendor/local/include/msgpack/type/deque.hpp +0 -77
 - data/vendor/local/include/msgpack/type/fixint.hpp +0 -172
 - data/vendor/local/include/msgpack/type/float.hpp +0 -102
 - data/vendor/local/include/msgpack/type/int.hpp +0 -276
 - data/vendor/local/include/msgpack/type/list.hpp +0 -77
 - data/vendor/local/include/msgpack/type/map.hpp +0 -205
 - data/vendor/local/include/msgpack/type/raw.hpp +0 -94
 - data/vendor/local/include/msgpack/type/set.hpp +0 -122
 - data/vendor/local/include/msgpack/type/string.hpp +0 -62
 - data/vendor/local/include/msgpack/type/tr1/unordered_map.hpp +0 -150
 - data/vendor/local/include/msgpack/type/tr1/unordered_set.hpp +0 -142
 - data/vendor/local/include/msgpack/type/tuple.hpp +0 -13691
 - data/vendor/local/include/msgpack/type/vector.hpp +0 -81
 - data/vendor/local/share/doc/groonga/en/html/_static/jp.png +0 -0
 - data/vendor/local/share/doc/groonga/en/html/_static/us.png +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/jp.png +0 -0
 - data/vendor/local/share/doc/groonga/ja/html/_static/us.png +0 -0
 
| 
         Binary file 
     | 
| 
         @@ -1,3465 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            //
         
     | 
| 
       2 
     | 
    
         
            -
            // MessagePack for C++ static resolution routine
         
     | 
| 
       3 
     | 
    
         
            -
            //
         
     | 
| 
       4 
     | 
    
         
            -
            // Copyright (C) 2008-2009 FURUHASHI Sadayuki
         
     | 
| 
       5 
     | 
    
         
            -
            //
         
     | 
| 
       6 
     | 
    
         
            -
            //    Licensed under the Apache License, Version 2.0 (the "License");
         
     | 
| 
       7 
     | 
    
         
            -
            //    you may not use this file except in compliance with the License.
         
     | 
| 
       8 
     | 
    
         
            -
            //    You may obtain a copy of the License at
         
     | 
| 
       9 
     | 
    
         
            -
            //
         
     | 
| 
       10 
     | 
    
         
            -
            //        http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
       11 
     | 
    
         
            -
            //
         
     | 
| 
       12 
     | 
    
         
            -
            //    Unless required by applicable law or agreed to in writing, software
         
     | 
| 
       13 
     | 
    
         
            -
            //    distributed under the License is distributed on an "AS IS" BASIS,
         
     | 
| 
       14 
     | 
    
         
            -
            //    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
         
     | 
| 
       15 
     | 
    
         
            -
            //    See the License for the specific language governing permissions and
         
     | 
| 
       16 
     | 
    
         
            -
            //    limitations under the License.
         
     | 
| 
       17 
     | 
    
         
            -
            //
         
     | 
| 
       18 
     | 
    
         
            -
            #ifndef MSGPACK_TYPE_DEFINE_HPP__
         
     | 
| 
       19 
     | 
    
         
            -
            #define MSGPACK_TYPE_DEFINE_HPP__
         
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
            #define MSGPACK_DEFINE(...) \
         
     | 
| 
       22 
     | 
    
         
            -
            	template <typename Packer> \
         
     | 
| 
       23 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const \
         
     | 
| 
       24 
     | 
    
         
            -
            	{ \
         
     | 
| 
       25 
     | 
    
         
            -
            		msgpack::type::make_define(__VA_ARGS__).msgpack_pack(pk); \
         
     | 
| 
       26 
     | 
    
         
            -
            	} \
         
     | 
| 
       27 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o) \
         
     | 
| 
       28 
     | 
    
         
            -
            	{ \
         
     | 
| 
       29 
     | 
    
         
            -
            		msgpack::type::make_define(__VA_ARGS__).msgpack_unpack(o); \
         
     | 
| 
       30 
     | 
    
         
            -
            	}\
         
     | 
| 
       31 
     | 
    
         
            -
            	template <typename MSGPACK_OBJECT> \
         
     | 
| 
       32 
     | 
    
         
            -
            	void msgpack_object(MSGPACK_OBJECT* o, msgpack::zone* z) const \
         
     | 
| 
       33 
     | 
    
         
            -
            	{ \
         
     | 
| 
       34 
     | 
    
         
            -
            		msgpack::type::make_define(__VA_ARGS__).msgpack_object(o, z); \
         
     | 
| 
       35 
     | 
    
         
            -
            	}
         
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
            // MSGPACK_ADD_ENUM must be used in the global namespace.
         
     | 
| 
       38 
     | 
    
         
            -
            #define MSGPACK_ADD_ENUM(enum) \
         
     | 
| 
       39 
     | 
    
         
            -
              namespace msgpack { \
         
     | 
| 
       40 
     | 
    
         
            -
                template <> \
         
     | 
| 
       41 
     | 
    
         
            -
                inline enum& operator>> (object o, enum& v) \
         
     | 
| 
       42 
     | 
    
         
            -
                { \
         
     | 
| 
       43 
     | 
    
         
            -
                  int tmp; \
         
     | 
| 
       44 
     | 
    
         
            -
                  o >> tmp; \
         
     | 
| 
       45 
     | 
    
         
            -
                  v = static_cast<enum>(tmp); \
         
     | 
| 
       46 
     | 
    
         
            -
                  return v; \
         
     | 
| 
       47 
     | 
    
         
            -
                } \
         
     | 
| 
       48 
     | 
    
         
            -
                template <> \
         
     | 
| 
       49 
     | 
    
         
            -
                inline void operator<< (object::with_zone& o, const enum& v) \
         
     | 
| 
       50 
     | 
    
         
            -
                { \
         
     | 
| 
       51 
     | 
    
         
            -
                  o << static_cast<int>(v); \
         
     | 
| 
       52 
     | 
    
         
            -
                } \
         
     | 
| 
       53 
     | 
    
         
            -
                namespace detail { \
         
     | 
| 
       54 
     | 
    
         
            -
                  template <typename Stream> \
         
     | 
| 
       55 
     | 
    
         
            -
                  struct packer_serializer<Stream, enum> { \
         
     | 
| 
       56 
     | 
    
         
            -
                    static packer<Stream>& pack(packer<Stream>& o, const enum& v) { \
         
     | 
| 
       57 
     | 
    
         
            -
                      return o << static_cast<int>(v); \
         
     | 
| 
       58 
     | 
    
         
            -
                    } \
         
     | 
| 
       59 
     | 
    
         
            -
                  }; \
         
     | 
| 
       60 
     | 
    
         
            -
                } \
         
     | 
| 
       61 
     | 
    
         
            -
              }
         
     | 
| 
       62 
     | 
    
         
            -
             
     | 
| 
       63 
     | 
    
         
            -
            namespace msgpack {
         
     | 
| 
       64 
     | 
    
         
            -
            namespace type {
         
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
             
     | 
| 
       67 
     | 
    
         
            -
             
     | 
| 
       68 
     | 
    
         
            -
            template <typename A0 = void, typename A1 = void, typename A2 = void, typename A3 = void, typename A4 = void, typename A5 = void, typename A6 = void, typename A7 = void, typename A8 = void, typename A9 = void, typename A10 = void, typename A11 = void, typename A12 = void, typename A13 = void, typename A14 = void, typename A15 = void, typename A16 = void, typename A17 = void, typename A18 = void, typename A19 = void, typename A20 = void, typename A21 = void, typename A22 = void, typename A23 = void, typename A24 = void, typename A25 = void, typename A26 = void, typename A27 = void, typename A28 = void, typename A29 = void, typename A30 = void, typename A31 = void, typename A32 = void>
         
     | 
| 
       69 
     | 
    
         
            -
            struct define;
         
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
       71 
     | 
    
         
            -
             
     | 
| 
       72 
     | 
    
         
            -
            template <>
         
     | 
| 
       73 
     | 
    
         
            -
            struct define<> {
         
     | 
| 
       74 
     | 
    
         
            -
            	typedef define<> value_type;
         
     | 
| 
       75 
     | 
    
         
            -
            	typedef tuple<> tuple_type;
         
     | 
| 
       76 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       77 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       78 
     | 
    
         
            -
            	{
         
     | 
| 
       79 
     | 
    
         
            -
            		pk.pack_array(0);
         
     | 
| 
       80 
     | 
    
         
            -
            	}
         
     | 
| 
       81 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       82 
     | 
    
         
            -
            	{
         
     | 
| 
       83 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       84 
     | 
    
         
            -
            	}
         
     | 
| 
       85 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       86 
     | 
    
         
            -
            	{
         
     | 
| 
       87 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       88 
     | 
    
         
            -
            		o->via.array.ptr = NULL;
         
     | 
| 
       89 
     | 
    
         
            -
            		o->via.array.size = 0;
         
     | 
| 
       90 
     | 
    
         
            -
            	}
         
     | 
| 
       91 
     | 
    
         
            -
            };
         
     | 
| 
       92 
     | 
    
         
            -
             
     | 
| 
       93 
     | 
    
         
            -
            template <typename A0>
         
     | 
| 
       94 
     | 
    
         
            -
            struct define<A0> {
         
     | 
| 
       95 
     | 
    
         
            -
            	typedef define<A0> value_type;
         
     | 
| 
       96 
     | 
    
         
            -
            	typedef tuple<A0> tuple_type;
         
     | 
| 
       97 
     | 
    
         
            -
            	define(A0& _a0) :
         
     | 
| 
       98 
     | 
    
         
            -
            		a0(_a0) {}
         
     | 
| 
       99 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       100 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       101 
     | 
    
         
            -
            	{
         
     | 
| 
       102 
     | 
    
         
            -
            		pk.pack_array(1);
         
     | 
| 
       103 
     | 
    
         
            -
            		
         
     | 
| 
       104 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       105 
     | 
    
         
            -
            	}
         
     | 
| 
       106 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       107 
     | 
    
         
            -
            	{
         
     | 
| 
       108 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       109 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       110 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       111 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       112 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       113 
     | 
    
         
            -
            			default:
         
     | 
| 
       114 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       115 
     | 
    
         
            -
            			}
         
     | 
| 
       116 
     | 
    
         
            -
            		}
         
     | 
| 
       117 
     | 
    
         
            -
            	}
         
     | 
| 
       118 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       119 
     | 
    
         
            -
            	{
         
     | 
| 
       120 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       121 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*1);
         
     | 
| 
       122 
     | 
    
         
            -
            		o->via.array.size = 1;
         
     | 
| 
       123 
     | 
    
         
            -
            		
         
     | 
| 
       124 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       125 
     | 
    
         
            -
            	}
         
     | 
| 
       126 
     | 
    
         
            -
            	
         
     | 
| 
       127 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       128 
     | 
    
         
            -
            };
         
     | 
| 
       129 
     | 
    
         
            -
             
     | 
| 
       130 
     | 
    
         
            -
            template <typename A0, typename A1>
         
     | 
| 
       131 
     | 
    
         
            -
            struct define<A0, A1> {
         
     | 
| 
       132 
     | 
    
         
            -
            	typedef define<A0, A1> value_type;
         
     | 
| 
       133 
     | 
    
         
            -
            	typedef tuple<A0, A1> tuple_type;
         
     | 
| 
       134 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1) :
         
     | 
| 
       135 
     | 
    
         
            -
            		a0(_a0), a1(_a1) {}
         
     | 
| 
       136 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       137 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       138 
     | 
    
         
            -
            	{
         
     | 
| 
       139 
     | 
    
         
            -
            		pk.pack_array(2);
         
     | 
| 
       140 
     | 
    
         
            -
            		
         
     | 
| 
       141 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       142 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       143 
     | 
    
         
            -
            	}
         
     | 
| 
       144 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       145 
     | 
    
         
            -
            	{
         
     | 
| 
       146 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       147 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       148 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       149 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       150 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       151 
     | 
    
         
            -
            			default:
         
     | 
| 
       152 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       153 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       154 
     | 
    
         
            -
            			}
         
     | 
| 
       155 
     | 
    
         
            -
            		}
         
     | 
| 
       156 
     | 
    
         
            -
            	}
         
     | 
| 
       157 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       158 
     | 
    
         
            -
            	{
         
     | 
| 
       159 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       160 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*2);
         
     | 
| 
       161 
     | 
    
         
            -
            		o->via.array.size = 2;
         
     | 
| 
       162 
     | 
    
         
            -
            		
         
     | 
| 
       163 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       164 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       165 
     | 
    
         
            -
            	}
         
     | 
| 
       166 
     | 
    
         
            -
            	
         
     | 
| 
       167 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       168 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       169 
     | 
    
         
            -
            };
         
     | 
| 
       170 
     | 
    
         
            -
             
     | 
| 
       171 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2>
         
     | 
| 
       172 
     | 
    
         
            -
            struct define<A0, A1, A2> {
         
     | 
| 
       173 
     | 
    
         
            -
            	typedef define<A0, A1, A2> value_type;
         
     | 
| 
       174 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2> tuple_type;
         
     | 
| 
       175 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2) :
         
     | 
| 
       176 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2) {}
         
     | 
| 
       177 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       178 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       179 
     | 
    
         
            -
            	{
         
     | 
| 
       180 
     | 
    
         
            -
            		pk.pack_array(3);
         
     | 
| 
       181 
     | 
    
         
            -
            		
         
     | 
| 
       182 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       183 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       184 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       185 
     | 
    
         
            -
            	}
         
     | 
| 
       186 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       187 
     | 
    
         
            -
            	{
         
     | 
| 
       188 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       189 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       190 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       191 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       192 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       193 
     | 
    
         
            -
            			default:
         
     | 
| 
       194 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       195 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       196 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       197 
     | 
    
         
            -
            			}
         
     | 
| 
       198 
     | 
    
         
            -
            		}
         
     | 
| 
       199 
     | 
    
         
            -
            	}
         
     | 
| 
       200 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       201 
     | 
    
         
            -
            	{
         
     | 
| 
       202 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       203 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*3);
         
     | 
| 
       204 
     | 
    
         
            -
            		o->via.array.size = 3;
         
     | 
| 
       205 
     | 
    
         
            -
            		
         
     | 
| 
       206 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       207 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       208 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       209 
     | 
    
         
            -
            	}
         
     | 
| 
       210 
     | 
    
         
            -
            	
         
     | 
| 
       211 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       212 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       213 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       214 
     | 
    
         
            -
            };
         
     | 
| 
       215 
     | 
    
         
            -
             
     | 
| 
       216 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3>
         
     | 
| 
       217 
     | 
    
         
            -
            struct define<A0, A1, A2, A3> {
         
     | 
| 
       218 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3> value_type;
         
     | 
| 
       219 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3> tuple_type;
         
     | 
| 
       220 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3) :
         
     | 
| 
       221 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3) {}
         
     | 
| 
       222 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       223 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       224 
     | 
    
         
            -
            	{
         
     | 
| 
       225 
     | 
    
         
            -
            		pk.pack_array(4);
         
     | 
| 
       226 
     | 
    
         
            -
            		
         
     | 
| 
       227 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       228 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       229 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       230 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       231 
     | 
    
         
            -
            	}
         
     | 
| 
       232 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       233 
     | 
    
         
            -
            	{
         
     | 
| 
       234 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       235 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       236 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       237 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       238 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       239 
     | 
    
         
            -
            			default:
         
     | 
| 
       240 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       241 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       242 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       243 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       244 
     | 
    
         
            -
            			}
         
     | 
| 
       245 
     | 
    
         
            -
            		}
         
     | 
| 
       246 
     | 
    
         
            -
            	}
         
     | 
| 
       247 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       248 
     | 
    
         
            -
            	{
         
     | 
| 
       249 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       250 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*4);
         
     | 
| 
       251 
     | 
    
         
            -
            		o->via.array.size = 4;
         
     | 
| 
       252 
     | 
    
         
            -
            		
         
     | 
| 
       253 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       254 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       255 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       256 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       257 
     | 
    
         
            -
            	}
         
     | 
| 
       258 
     | 
    
         
            -
            	
         
     | 
| 
       259 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       260 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       261 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       262 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       263 
     | 
    
         
            -
            };
         
     | 
| 
       264 
     | 
    
         
            -
             
     | 
| 
       265 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4>
         
     | 
| 
       266 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4> {
         
     | 
| 
       267 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4> value_type;
         
     | 
| 
       268 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4> tuple_type;
         
     | 
| 
       269 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4) :
         
     | 
| 
       270 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4) {}
         
     | 
| 
       271 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       272 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       273 
     | 
    
         
            -
            	{
         
     | 
| 
       274 
     | 
    
         
            -
            		pk.pack_array(5);
         
     | 
| 
       275 
     | 
    
         
            -
            		
         
     | 
| 
       276 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       277 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       278 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       279 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       280 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       281 
     | 
    
         
            -
            	}
         
     | 
| 
       282 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       283 
     | 
    
         
            -
            	{
         
     | 
| 
       284 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       285 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       286 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       287 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       288 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       289 
     | 
    
         
            -
            			default:
         
     | 
| 
       290 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       291 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       292 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       293 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       294 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       295 
     | 
    
         
            -
            			}
         
     | 
| 
       296 
     | 
    
         
            -
            		}
         
     | 
| 
       297 
     | 
    
         
            -
            	}
         
     | 
| 
       298 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       299 
     | 
    
         
            -
            	{
         
     | 
| 
       300 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       301 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*5);
         
     | 
| 
       302 
     | 
    
         
            -
            		o->via.array.size = 5;
         
     | 
| 
       303 
     | 
    
         
            -
            		
         
     | 
| 
       304 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       305 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       306 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       307 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       308 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       309 
     | 
    
         
            -
            	}
         
     | 
| 
       310 
     | 
    
         
            -
            	
         
     | 
| 
       311 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       312 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       313 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       314 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       315 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       316 
     | 
    
         
            -
            };
         
     | 
| 
       317 
     | 
    
         
            -
             
     | 
| 
       318 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
         
     | 
| 
       319 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5> {
         
     | 
| 
       320 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5> value_type;
         
     | 
| 
       321 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5> tuple_type;
         
     | 
| 
       322 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5) :
         
     | 
| 
       323 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5) {}
         
     | 
| 
       324 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       325 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       326 
     | 
    
         
            -
            	{
         
     | 
| 
       327 
     | 
    
         
            -
            		pk.pack_array(6);
         
     | 
| 
       328 
     | 
    
         
            -
            		
         
     | 
| 
       329 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       330 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       331 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       332 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       333 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       334 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       335 
     | 
    
         
            -
            	}
         
     | 
| 
       336 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       337 
     | 
    
         
            -
            	{
         
     | 
| 
       338 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       339 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       340 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       341 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       342 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       343 
     | 
    
         
            -
            			default:
         
     | 
| 
       344 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       345 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       346 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       347 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       348 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       349 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       350 
     | 
    
         
            -
            			}
         
     | 
| 
       351 
     | 
    
         
            -
            		}
         
     | 
| 
       352 
     | 
    
         
            -
            	}
         
     | 
| 
       353 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       354 
     | 
    
         
            -
            	{
         
     | 
| 
       355 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       356 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*6);
         
     | 
| 
       357 
     | 
    
         
            -
            		o->via.array.size = 6;
         
     | 
| 
       358 
     | 
    
         
            -
            		
         
     | 
| 
       359 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       360 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       361 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       362 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       363 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       364 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       365 
     | 
    
         
            -
            	}
         
     | 
| 
       366 
     | 
    
         
            -
            	
         
     | 
| 
       367 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       368 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       369 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       370 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       371 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       372 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       373 
     | 
    
         
            -
            };
         
     | 
| 
       374 
     | 
    
         
            -
             
     | 
| 
       375 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
         
     | 
| 
       376 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6> {
         
     | 
| 
       377 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6> value_type;
         
     | 
| 
       378 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6> tuple_type;
         
     | 
| 
       379 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6) :
         
     | 
| 
       380 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6) {}
         
     | 
| 
       381 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       382 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       383 
     | 
    
         
            -
            	{
         
     | 
| 
       384 
     | 
    
         
            -
            		pk.pack_array(7);
         
     | 
| 
       385 
     | 
    
         
            -
            		
         
     | 
| 
       386 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       387 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       388 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       389 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       390 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       391 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       392 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       393 
     | 
    
         
            -
            	}
         
     | 
| 
       394 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       395 
     | 
    
         
            -
            	{
         
     | 
| 
       396 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       397 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       398 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       399 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       400 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       401 
     | 
    
         
            -
            			default:
         
     | 
| 
       402 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       403 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       404 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       405 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       406 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       407 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       408 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       409 
     | 
    
         
            -
            			}
         
     | 
| 
       410 
     | 
    
         
            -
            		}
         
     | 
| 
       411 
     | 
    
         
            -
            	}
         
     | 
| 
       412 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       413 
     | 
    
         
            -
            	{
         
     | 
| 
       414 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       415 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*7);
         
     | 
| 
       416 
     | 
    
         
            -
            		o->via.array.size = 7;
         
     | 
| 
       417 
     | 
    
         
            -
            		
         
     | 
| 
       418 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       419 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       420 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       421 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       422 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       423 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       424 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       425 
     | 
    
         
            -
            	}
         
     | 
| 
       426 
     | 
    
         
            -
            	
         
     | 
| 
       427 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       428 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       429 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       430 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       431 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       432 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       433 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       434 
     | 
    
         
            -
            };
         
     | 
| 
       435 
     | 
    
         
            -
             
     | 
| 
       436 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
         
     | 
| 
       437 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7> {
         
     | 
| 
       438 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7> value_type;
         
     | 
| 
       439 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7> tuple_type;
         
     | 
| 
       440 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7) :
         
     | 
| 
       441 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7) {}
         
     | 
| 
       442 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       443 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       444 
     | 
    
         
            -
            	{
         
     | 
| 
       445 
     | 
    
         
            -
            		pk.pack_array(8);
         
     | 
| 
       446 
     | 
    
         
            -
            		
         
     | 
| 
       447 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       448 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       449 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       450 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       451 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       452 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       453 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       454 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       455 
     | 
    
         
            -
            	}
         
     | 
| 
       456 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       457 
     | 
    
         
            -
            	{
         
     | 
| 
       458 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       459 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       460 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       461 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       462 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       463 
     | 
    
         
            -
            			default:
         
     | 
| 
       464 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       465 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       466 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       467 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       468 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       469 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       470 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       471 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       472 
     | 
    
         
            -
            			}
         
     | 
| 
       473 
     | 
    
         
            -
            		}
         
     | 
| 
       474 
     | 
    
         
            -
            	}
         
     | 
| 
       475 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       476 
     | 
    
         
            -
            	{
         
     | 
| 
       477 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       478 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*8);
         
     | 
| 
       479 
     | 
    
         
            -
            		o->via.array.size = 8;
         
     | 
| 
       480 
     | 
    
         
            -
            		
         
     | 
| 
       481 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       482 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       483 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       484 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       485 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       486 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       487 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       488 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       489 
     | 
    
         
            -
            	}
         
     | 
| 
       490 
     | 
    
         
            -
            	
         
     | 
| 
       491 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       492 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       493 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       494 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       495 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       496 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       497 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       498 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       499 
     | 
    
         
            -
            };
         
     | 
| 
       500 
     | 
    
         
            -
             
     | 
| 
       501 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
         
     | 
| 
       502 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8> {
         
     | 
| 
       503 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8> value_type;
         
     | 
| 
       504 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8> tuple_type;
         
     | 
| 
       505 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8) :
         
     | 
| 
       506 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8) {}
         
     | 
| 
       507 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       508 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       509 
     | 
    
         
            -
            	{
         
     | 
| 
       510 
     | 
    
         
            -
            		pk.pack_array(9);
         
     | 
| 
       511 
     | 
    
         
            -
            		
         
     | 
| 
       512 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       513 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       514 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       515 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       516 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       517 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       518 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       519 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       520 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       521 
     | 
    
         
            -
            	}
         
     | 
| 
       522 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       523 
     | 
    
         
            -
            	{
         
     | 
| 
       524 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       525 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       526 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       527 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       528 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       529 
     | 
    
         
            -
            			default:
         
     | 
| 
       530 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       531 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       532 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       533 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       534 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       535 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       536 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       537 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       538 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       539 
     | 
    
         
            -
            			}
         
     | 
| 
       540 
     | 
    
         
            -
            		}
         
     | 
| 
       541 
     | 
    
         
            -
            	}
         
     | 
| 
       542 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       543 
     | 
    
         
            -
            	{
         
     | 
| 
       544 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       545 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*9);
         
     | 
| 
       546 
     | 
    
         
            -
            		o->via.array.size = 9;
         
     | 
| 
       547 
     | 
    
         
            -
            		
         
     | 
| 
       548 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       549 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       550 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       551 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       552 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       553 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       554 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       555 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       556 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       557 
     | 
    
         
            -
            	}
         
     | 
| 
       558 
     | 
    
         
            -
            	
         
     | 
| 
       559 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       560 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       561 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       562 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       563 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       564 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       565 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       566 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       567 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       568 
     | 
    
         
            -
            };
         
     | 
| 
       569 
     | 
    
         
            -
             
     | 
| 
       570 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
         
     | 
| 
       571 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9> {
         
     | 
| 
       572 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9> value_type;
         
     | 
| 
       573 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9> tuple_type;
         
     | 
| 
       574 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9) :
         
     | 
| 
       575 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9) {}
         
     | 
| 
       576 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       577 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       578 
     | 
    
         
            -
            	{
         
     | 
| 
       579 
     | 
    
         
            -
            		pk.pack_array(10);
         
     | 
| 
       580 
     | 
    
         
            -
            		
         
     | 
| 
       581 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       582 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       583 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       584 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       585 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       586 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       587 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       588 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       589 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       590 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       591 
     | 
    
         
            -
            	}
         
     | 
| 
       592 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       593 
     | 
    
         
            -
            	{
         
     | 
| 
       594 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       595 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       596 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       597 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       598 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       599 
     | 
    
         
            -
            			default:
         
     | 
| 
       600 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       601 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       602 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       603 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       604 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       605 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       606 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       607 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       608 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       609 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       610 
     | 
    
         
            -
            			}
         
     | 
| 
       611 
     | 
    
         
            -
            		}
         
     | 
| 
       612 
     | 
    
         
            -
            	}
         
     | 
| 
       613 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       614 
     | 
    
         
            -
            	{
         
     | 
| 
       615 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       616 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*10);
         
     | 
| 
       617 
     | 
    
         
            -
            		o->via.array.size = 10;
         
     | 
| 
       618 
     | 
    
         
            -
            		
         
     | 
| 
       619 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       620 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       621 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       622 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       623 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       624 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       625 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       626 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       627 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       628 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       629 
     | 
    
         
            -
            	}
         
     | 
| 
       630 
     | 
    
         
            -
            	
         
     | 
| 
       631 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       632 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       633 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       634 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       635 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       636 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       637 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       638 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       639 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       640 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       641 
     | 
    
         
            -
            };
         
     | 
| 
       642 
     | 
    
         
            -
             
     | 
| 
       643 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
         
     | 
| 
       644 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10> {
         
     | 
| 
       645 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10> value_type;
         
     | 
| 
       646 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10> tuple_type;
         
     | 
| 
       647 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10) :
         
     | 
| 
       648 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10) {}
         
     | 
| 
       649 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       650 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       651 
     | 
    
         
            -
            	{
         
     | 
| 
       652 
     | 
    
         
            -
            		pk.pack_array(11);
         
     | 
| 
       653 
     | 
    
         
            -
            		
         
     | 
| 
       654 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       655 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       656 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       657 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       658 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       659 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       660 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       661 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       662 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       663 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       664 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       665 
     | 
    
         
            -
            	}
         
     | 
| 
       666 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       667 
     | 
    
         
            -
            	{
         
     | 
| 
       668 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       669 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       670 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       671 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       672 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       673 
     | 
    
         
            -
            			default:
         
     | 
| 
       674 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       675 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       676 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       677 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       678 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       679 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       680 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       681 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       682 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       683 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       684 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       685 
     | 
    
         
            -
            			}
         
     | 
| 
       686 
     | 
    
         
            -
            		}
         
     | 
| 
       687 
     | 
    
         
            -
            	}
         
     | 
| 
       688 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       689 
     | 
    
         
            -
            	{
         
     | 
| 
       690 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       691 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*11);
         
     | 
| 
       692 
     | 
    
         
            -
            		o->via.array.size = 11;
         
     | 
| 
       693 
     | 
    
         
            -
            		
         
     | 
| 
       694 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       695 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       696 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       697 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       698 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       699 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       700 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       701 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       702 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       703 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       704 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       705 
     | 
    
         
            -
            	}
         
     | 
| 
       706 
     | 
    
         
            -
            	
         
     | 
| 
       707 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       708 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       709 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       710 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       711 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       712 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       713 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       714 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       715 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       716 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       717 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       718 
     | 
    
         
            -
            };
         
     | 
| 
       719 
     | 
    
         
            -
             
     | 
| 
       720 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
         
     | 
| 
       721 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11> {
         
     | 
| 
       722 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11> value_type;
         
     | 
| 
       723 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11> tuple_type;
         
     | 
| 
       724 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11) :
         
     | 
| 
       725 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11) {}
         
     | 
| 
       726 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       727 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       728 
     | 
    
         
            -
            	{
         
     | 
| 
       729 
     | 
    
         
            -
            		pk.pack_array(12);
         
     | 
| 
       730 
     | 
    
         
            -
            		
         
     | 
| 
       731 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       732 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       733 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       734 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       735 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       736 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       737 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       738 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       739 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       740 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       741 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       742 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       743 
     | 
    
         
            -
            	}
         
     | 
| 
       744 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       745 
     | 
    
         
            -
            	{
         
     | 
| 
       746 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       747 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       748 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       749 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       750 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       751 
     | 
    
         
            -
            			default:
         
     | 
| 
       752 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       753 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       754 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       755 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       756 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       757 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       758 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       759 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       760 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       761 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       762 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       763 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       764 
     | 
    
         
            -
            			}
         
     | 
| 
       765 
     | 
    
         
            -
            		}
         
     | 
| 
       766 
     | 
    
         
            -
            	}
         
     | 
| 
       767 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       768 
     | 
    
         
            -
            	{
         
     | 
| 
       769 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       770 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*12);
         
     | 
| 
       771 
     | 
    
         
            -
            		o->via.array.size = 12;
         
     | 
| 
       772 
     | 
    
         
            -
            		
         
     | 
| 
       773 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       774 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       775 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       776 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       777 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       778 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       779 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       780 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       781 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       782 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       783 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       784 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       785 
     | 
    
         
            -
            	}
         
     | 
| 
       786 
     | 
    
         
            -
            	
         
     | 
| 
       787 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       788 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       789 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       790 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       791 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       792 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       793 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       794 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       795 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       796 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       797 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       798 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       799 
     | 
    
         
            -
            };
         
     | 
| 
       800 
     | 
    
         
            -
             
     | 
| 
       801 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
         
     | 
| 
       802 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12> {
         
     | 
| 
       803 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12> value_type;
         
     | 
| 
       804 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12> tuple_type;
         
     | 
| 
       805 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12) :
         
     | 
| 
       806 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12) {}
         
     | 
| 
       807 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       808 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       809 
     | 
    
         
            -
            	{
         
     | 
| 
       810 
     | 
    
         
            -
            		pk.pack_array(13);
         
     | 
| 
       811 
     | 
    
         
            -
            		
         
     | 
| 
       812 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       813 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       814 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       815 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       816 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       817 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       818 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       819 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       820 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       821 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       822 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       823 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       824 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       825 
     | 
    
         
            -
            	}
         
     | 
| 
       826 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       827 
     | 
    
         
            -
            	{
         
     | 
| 
       828 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       829 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       830 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       831 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       832 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       833 
     | 
    
         
            -
            			default:
         
     | 
| 
       834 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       835 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       836 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       837 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       838 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       839 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       840 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       841 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       842 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       843 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       844 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       845 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       846 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       847 
     | 
    
         
            -
            			}
         
     | 
| 
       848 
     | 
    
         
            -
            		}
         
     | 
| 
       849 
     | 
    
         
            -
            	}
         
     | 
| 
       850 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       851 
     | 
    
         
            -
            	{
         
     | 
| 
       852 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       853 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*13);
         
     | 
| 
       854 
     | 
    
         
            -
            		o->via.array.size = 13;
         
     | 
| 
       855 
     | 
    
         
            -
            		
         
     | 
| 
       856 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       857 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       858 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       859 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       860 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       861 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       862 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       863 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       864 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       865 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       866 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       867 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       868 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       869 
     | 
    
         
            -
            	}
         
     | 
| 
       870 
     | 
    
         
            -
            	
         
     | 
| 
       871 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       872 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       873 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       874 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       875 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       876 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       877 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       878 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       879 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       880 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       881 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       882 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       883 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       884 
     | 
    
         
            -
            };
         
     | 
| 
       885 
     | 
    
         
            -
             
     | 
| 
       886 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
         
     | 
| 
       887 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13> {
         
     | 
| 
       888 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13> value_type;
         
     | 
| 
       889 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13> tuple_type;
         
     | 
| 
       890 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13) :
         
     | 
| 
       891 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13) {}
         
     | 
| 
       892 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       893 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       894 
     | 
    
         
            -
            	{
         
     | 
| 
       895 
     | 
    
         
            -
            		pk.pack_array(14);
         
     | 
| 
       896 
     | 
    
         
            -
            		
         
     | 
| 
       897 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       898 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       899 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       900 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       901 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       902 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       903 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       904 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       905 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       906 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       907 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       908 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       909 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       910 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       911 
     | 
    
         
            -
            	}
         
     | 
| 
       912 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       913 
     | 
    
         
            -
            	{
         
     | 
| 
       914 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       915 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       916 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       917 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       918 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       919 
     | 
    
         
            -
            			default:
         
     | 
| 
       920 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       921 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       922 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       923 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       924 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       925 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       926 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       927 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       928 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       929 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       930 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       931 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       932 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       933 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       934 
     | 
    
         
            -
            			}
         
     | 
| 
       935 
     | 
    
         
            -
            		}
         
     | 
| 
       936 
     | 
    
         
            -
            	}
         
     | 
| 
       937 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       938 
     | 
    
         
            -
            	{
         
     | 
| 
       939 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       940 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*14);
         
     | 
| 
       941 
     | 
    
         
            -
            		o->via.array.size = 14;
         
     | 
| 
       942 
     | 
    
         
            -
            		
         
     | 
| 
       943 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       944 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       945 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       946 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       947 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       948 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       949 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       950 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       951 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       952 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       953 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       954 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       955 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       956 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       957 
     | 
    
         
            -
            	}
         
     | 
| 
       958 
     | 
    
         
            -
            	
         
     | 
| 
       959 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       960 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       961 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       962 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       963 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       964 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       965 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       966 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       967 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       968 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       969 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       970 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       971 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       972 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       973 
     | 
    
         
            -
            };
         
     | 
| 
       974 
     | 
    
         
            -
             
     | 
| 
       975 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14>
         
     | 
| 
       976 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14> {
         
     | 
| 
       977 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14> value_type;
         
     | 
| 
       978 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14> tuple_type;
         
     | 
| 
       979 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14) :
         
     | 
| 
       980 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14) {}
         
     | 
| 
       981 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       982 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       983 
     | 
    
         
            -
            	{
         
     | 
| 
       984 
     | 
    
         
            -
            		pk.pack_array(15);
         
     | 
| 
       985 
     | 
    
         
            -
            		
         
     | 
| 
       986 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       987 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       988 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       989 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       990 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       991 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       992 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       993 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       994 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       995 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       996 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       997 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       998 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       999 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1000 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1001 
     | 
    
         
            -
            	}
         
     | 
| 
       1002 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1003 
     | 
    
         
            -
            	{
         
     | 
| 
       1004 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1005 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1006 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1007 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1008 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1009 
     | 
    
         
            -
            			default:
         
     | 
| 
       1010 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       1011 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       1012 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       1013 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       1014 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       1015 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       1016 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       1017 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       1018 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       1019 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       1020 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       1021 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       1022 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       1023 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       1024 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       1025 
     | 
    
         
            -
            			}
         
     | 
| 
       1026 
     | 
    
         
            -
            		}
         
     | 
| 
       1027 
     | 
    
         
            -
            	}
         
     | 
| 
       1028 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       1029 
     | 
    
         
            -
            	{
         
     | 
| 
       1030 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       1031 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*15);
         
     | 
| 
       1032 
     | 
    
         
            -
            		o->via.array.size = 15;
         
     | 
| 
       1033 
     | 
    
         
            -
            		
         
     | 
| 
       1034 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       1035 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       1036 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       1037 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       1038 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       1039 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       1040 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       1041 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       1042 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       1043 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       1044 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       1045 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       1046 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       1047 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       1048 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       1049 
     | 
    
         
            -
            	}
         
     | 
| 
       1050 
     | 
    
         
            -
            	
         
     | 
| 
       1051 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       1052 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       1053 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       1054 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       1055 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       1056 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       1057 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       1058 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       1059 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       1060 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       1061 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       1062 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       1063 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       1064 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       1065 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       1066 
     | 
    
         
            -
            };
         
     | 
| 
       1067 
     | 
    
         
            -
             
     | 
| 
       1068 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15>
         
     | 
| 
       1069 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15> {
         
     | 
| 
       1070 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15> value_type;
         
     | 
| 
       1071 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15> tuple_type;
         
     | 
| 
       1072 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15) :
         
     | 
| 
       1073 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15) {}
         
     | 
| 
       1074 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       1075 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       1076 
     | 
    
         
            -
            	{
         
     | 
| 
       1077 
     | 
    
         
            -
            		pk.pack_array(16);
         
     | 
| 
       1078 
     | 
    
         
            -
            		
         
     | 
| 
       1079 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       1080 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       1081 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       1082 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       1083 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       1084 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       1085 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       1086 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       1087 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       1088 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       1089 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       1090 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       1091 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       1092 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1093 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1094 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       1095 
     | 
    
         
            -
            	}
         
     | 
| 
       1096 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1097 
     | 
    
         
            -
            	{
         
     | 
| 
       1098 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1099 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1100 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1101 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1102 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1103 
     | 
    
         
            -
            			default:
         
     | 
| 
       1104 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       1105 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       1106 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       1107 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       1108 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       1109 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       1110 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       1111 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       1112 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       1113 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       1114 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       1115 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       1116 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       1117 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       1118 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       1119 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       1120 
     | 
    
         
            -
            			}
         
     | 
| 
       1121 
     | 
    
         
            -
            		}
         
     | 
| 
       1122 
     | 
    
         
            -
            	}
         
     | 
| 
       1123 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       1124 
     | 
    
         
            -
            	{
         
     | 
| 
       1125 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       1126 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*16);
         
     | 
| 
       1127 
     | 
    
         
            -
            		o->via.array.size = 16;
         
     | 
| 
       1128 
     | 
    
         
            -
            		
         
     | 
| 
       1129 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       1130 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       1131 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       1132 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       1133 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       1134 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       1135 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       1136 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       1137 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       1138 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       1139 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       1140 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       1141 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       1142 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       1143 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       1144 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       1145 
     | 
    
         
            -
            	}
         
     | 
| 
       1146 
     | 
    
         
            -
            	
         
     | 
| 
       1147 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       1148 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       1149 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       1150 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       1151 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       1152 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       1153 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       1154 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       1155 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       1156 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       1157 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       1158 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       1159 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       1160 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       1161 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       1162 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       1163 
     | 
    
         
            -
            };
         
     | 
| 
       1164 
     | 
    
         
            -
             
     | 
| 
       1165 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16>
         
     | 
| 
       1166 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16> {
         
     | 
| 
       1167 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16> value_type;
         
     | 
| 
       1168 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16> tuple_type;
         
     | 
| 
       1169 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16) :
         
     | 
| 
       1170 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16) {}
         
     | 
| 
       1171 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       1172 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       1173 
     | 
    
         
            -
            	{
         
     | 
| 
       1174 
     | 
    
         
            -
            		pk.pack_array(17);
         
     | 
| 
       1175 
     | 
    
         
            -
            		
         
     | 
| 
       1176 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       1177 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       1178 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       1179 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       1180 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       1181 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       1182 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       1183 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       1184 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       1185 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       1186 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       1187 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       1188 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       1189 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1190 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1191 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       1192 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       1193 
     | 
    
         
            -
            	}
         
     | 
| 
       1194 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1195 
     | 
    
         
            -
            	{
         
     | 
| 
       1196 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1197 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1198 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1199 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1200 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1201 
     | 
    
         
            -
            			default:
         
     | 
| 
       1202 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       1203 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       1204 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       1205 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       1206 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       1207 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       1208 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       1209 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       1210 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       1211 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       1212 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       1213 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       1214 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       1215 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       1216 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       1217 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       1218 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       1219 
     | 
    
         
            -
            			}
         
     | 
| 
       1220 
     | 
    
         
            -
            		}
         
     | 
| 
       1221 
     | 
    
         
            -
            	}
         
     | 
| 
       1222 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       1223 
     | 
    
         
            -
            	{
         
     | 
| 
       1224 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       1225 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*17);
         
     | 
| 
       1226 
     | 
    
         
            -
            		o->via.array.size = 17;
         
     | 
| 
       1227 
     | 
    
         
            -
            		
         
     | 
| 
       1228 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       1229 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       1230 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       1231 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       1232 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       1233 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       1234 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       1235 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       1236 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       1237 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       1238 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       1239 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       1240 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       1241 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       1242 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       1243 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       1244 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       1245 
     | 
    
         
            -
            	}
         
     | 
| 
       1246 
     | 
    
         
            -
            	
         
     | 
| 
       1247 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       1248 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       1249 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       1250 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       1251 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       1252 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       1253 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       1254 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       1255 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       1256 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       1257 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       1258 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       1259 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       1260 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       1261 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       1262 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       1263 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       1264 
     | 
    
         
            -
            };
         
     | 
| 
       1265 
     | 
    
         
            -
             
     | 
| 
       1266 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17>
         
     | 
| 
       1267 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17> {
         
     | 
| 
       1268 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17> value_type;
         
     | 
| 
       1269 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17> tuple_type;
         
     | 
| 
       1270 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17) :
         
     | 
| 
       1271 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17) {}
         
     | 
| 
       1272 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       1273 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       1274 
     | 
    
         
            -
            	{
         
     | 
| 
       1275 
     | 
    
         
            -
            		pk.pack_array(18);
         
     | 
| 
       1276 
     | 
    
         
            -
            		
         
     | 
| 
       1277 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       1278 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       1279 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       1280 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       1281 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       1282 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       1283 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       1284 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       1285 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       1286 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       1287 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       1288 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       1289 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       1290 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1291 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1292 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       1293 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       1294 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       1295 
     | 
    
         
            -
            	}
         
     | 
| 
       1296 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1297 
     | 
    
         
            -
            	{
         
     | 
| 
       1298 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1299 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1300 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1301 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1302 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1303 
     | 
    
         
            -
            			default:
         
     | 
| 
       1304 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       1305 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       1306 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       1307 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       1308 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       1309 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       1310 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       1311 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       1312 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       1313 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       1314 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       1315 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       1316 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       1317 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       1318 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       1319 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       1320 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       1321 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       1322 
     | 
    
         
            -
            			}
         
     | 
| 
       1323 
     | 
    
         
            -
            		}
         
     | 
| 
       1324 
     | 
    
         
            -
            	}
         
     | 
| 
       1325 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       1326 
     | 
    
         
            -
            	{
         
     | 
| 
       1327 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       1328 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*18);
         
     | 
| 
       1329 
     | 
    
         
            -
            		o->via.array.size = 18;
         
     | 
| 
       1330 
     | 
    
         
            -
            		
         
     | 
| 
       1331 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       1332 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       1333 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       1334 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       1335 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       1336 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       1337 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       1338 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       1339 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       1340 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       1341 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       1342 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       1343 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       1344 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       1345 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       1346 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       1347 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       1348 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       1349 
     | 
    
         
            -
            	}
         
     | 
| 
       1350 
     | 
    
         
            -
            	
         
     | 
| 
       1351 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       1352 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       1353 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       1354 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       1355 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       1356 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       1357 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       1358 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       1359 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       1360 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       1361 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       1362 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       1363 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       1364 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       1365 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       1366 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       1367 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       1368 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       1369 
     | 
    
         
            -
            };
         
     | 
| 
       1370 
     | 
    
         
            -
             
     | 
| 
       1371 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18>
         
     | 
| 
       1372 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18> {
         
     | 
| 
       1373 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18> value_type;
         
     | 
| 
       1374 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18> tuple_type;
         
     | 
| 
       1375 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18) :
         
     | 
| 
       1376 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18) {}
         
     | 
| 
       1377 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       1378 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       1379 
     | 
    
         
            -
            	{
         
     | 
| 
       1380 
     | 
    
         
            -
            		pk.pack_array(19);
         
     | 
| 
       1381 
     | 
    
         
            -
            		
         
     | 
| 
       1382 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       1383 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       1384 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       1385 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       1386 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       1387 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       1388 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       1389 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       1390 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       1391 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       1392 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       1393 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       1394 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       1395 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1396 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1397 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       1398 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       1399 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       1400 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       1401 
     | 
    
         
            -
            	}
         
     | 
| 
       1402 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1403 
     | 
    
         
            -
            	{
         
     | 
| 
       1404 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1405 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1406 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1407 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1408 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1409 
     | 
    
         
            -
            			default:
         
     | 
| 
       1410 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       1411 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       1412 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       1413 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       1414 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       1415 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       1416 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       1417 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       1418 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       1419 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       1420 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       1421 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       1422 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       1423 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       1424 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       1425 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       1426 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       1427 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       1428 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       1429 
     | 
    
         
            -
            			}
         
     | 
| 
       1430 
     | 
    
         
            -
            		}
         
     | 
| 
       1431 
     | 
    
         
            -
            	}
         
     | 
| 
       1432 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       1433 
     | 
    
         
            -
            	{
         
     | 
| 
       1434 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       1435 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*19);
         
     | 
| 
       1436 
     | 
    
         
            -
            		o->via.array.size = 19;
         
     | 
| 
       1437 
     | 
    
         
            -
            		
         
     | 
| 
       1438 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       1439 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       1440 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       1441 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       1442 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       1443 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       1444 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       1445 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       1446 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       1447 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       1448 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       1449 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       1450 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       1451 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       1452 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       1453 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       1454 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       1455 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       1456 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       1457 
     | 
    
         
            -
            	}
         
     | 
| 
       1458 
     | 
    
         
            -
            	
         
     | 
| 
       1459 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       1460 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       1461 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       1462 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       1463 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       1464 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       1465 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       1466 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       1467 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       1468 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       1469 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       1470 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       1471 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       1472 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       1473 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       1474 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       1475 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       1476 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       1477 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       1478 
     | 
    
         
            -
            };
         
     | 
| 
       1479 
     | 
    
         
            -
             
     | 
| 
       1480 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19>
         
     | 
| 
       1481 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19> {
         
     | 
| 
       1482 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19> value_type;
         
     | 
| 
       1483 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19> tuple_type;
         
     | 
| 
       1484 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19) :
         
     | 
| 
       1485 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19) {}
         
     | 
| 
       1486 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       1487 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       1488 
     | 
    
         
            -
            	{
         
     | 
| 
       1489 
     | 
    
         
            -
            		pk.pack_array(20);
         
     | 
| 
       1490 
     | 
    
         
            -
            		
         
     | 
| 
       1491 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       1492 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       1493 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       1494 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       1495 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       1496 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       1497 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       1498 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       1499 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       1500 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       1501 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       1502 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       1503 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       1504 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1505 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1506 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       1507 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       1508 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       1509 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       1510 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       1511 
     | 
    
         
            -
            	}
         
     | 
| 
       1512 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1513 
     | 
    
         
            -
            	{
         
     | 
| 
       1514 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1515 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1516 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1517 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1518 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1519 
     | 
    
         
            -
            			default:
         
     | 
| 
       1520 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       1521 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       1522 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       1523 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       1524 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       1525 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       1526 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       1527 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       1528 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       1529 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       1530 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       1531 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       1532 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       1533 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       1534 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       1535 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       1536 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       1537 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       1538 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       1539 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       1540 
     | 
    
         
            -
            			}
         
     | 
| 
       1541 
     | 
    
         
            -
            		}
         
     | 
| 
       1542 
     | 
    
         
            -
            	}
         
     | 
| 
       1543 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       1544 
     | 
    
         
            -
            	{
         
     | 
| 
       1545 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       1546 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*20);
         
     | 
| 
       1547 
     | 
    
         
            -
            		o->via.array.size = 20;
         
     | 
| 
       1548 
     | 
    
         
            -
            		
         
     | 
| 
       1549 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       1550 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       1551 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       1552 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       1553 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       1554 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       1555 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       1556 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       1557 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       1558 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       1559 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       1560 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       1561 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       1562 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       1563 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       1564 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       1565 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       1566 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       1567 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       1568 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       1569 
     | 
    
         
            -
            	}
         
     | 
| 
       1570 
     | 
    
         
            -
            	
         
     | 
| 
       1571 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       1572 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       1573 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       1574 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       1575 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       1576 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       1577 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       1578 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       1579 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       1580 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       1581 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       1582 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       1583 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       1584 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       1585 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       1586 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       1587 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       1588 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       1589 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       1590 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       1591 
     | 
    
         
            -
            };
         
     | 
| 
       1592 
     | 
    
         
            -
             
     | 
| 
       1593 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20>
         
     | 
| 
       1594 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20> {
         
     | 
| 
       1595 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20> value_type;
         
     | 
| 
       1596 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20> tuple_type;
         
     | 
| 
       1597 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20) :
         
     | 
| 
       1598 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20) {}
         
     | 
| 
       1599 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       1600 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       1601 
     | 
    
         
            -
            	{
         
     | 
| 
       1602 
     | 
    
         
            -
            		pk.pack_array(21);
         
     | 
| 
       1603 
     | 
    
         
            -
            		
         
     | 
| 
       1604 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       1605 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       1606 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       1607 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       1608 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       1609 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       1610 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       1611 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       1612 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       1613 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       1614 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       1615 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       1616 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       1617 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1618 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1619 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       1620 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       1621 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       1622 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       1623 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       1624 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       1625 
     | 
    
         
            -
            	}
         
     | 
| 
       1626 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1627 
     | 
    
         
            -
            	{
         
     | 
| 
       1628 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1629 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1630 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1631 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1632 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1633 
     | 
    
         
            -
            			default:
         
     | 
| 
       1634 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       1635 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       1636 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       1637 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       1638 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       1639 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       1640 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       1641 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       1642 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       1643 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       1644 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       1645 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       1646 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       1647 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       1648 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       1649 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       1650 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       1651 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       1652 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       1653 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       1654 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       1655 
     | 
    
         
            -
            			}
         
     | 
| 
       1656 
     | 
    
         
            -
            		}
         
     | 
| 
       1657 
     | 
    
         
            -
            	}
         
     | 
| 
       1658 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       1659 
     | 
    
         
            -
            	{
         
     | 
| 
       1660 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       1661 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*21);
         
     | 
| 
       1662 
     | 
    
         
            -
            		o->via.array.size = 21;
         
     | 
| 
       1663 
     | 
    
         
            -
            		
         
     | 
| 
       1664 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       1665 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       1666 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       1667 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       1668 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       1669 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       1670 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       1671 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       1672 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       1673 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       1674 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       1675 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       1676 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       1677 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       1678 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       1679 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       1680 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       1681 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       1682 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       1683 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       1684 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       1685 
     | 
    
         
            -
            	}
         
     | 
| 
       1686 
     | 
    
         
            -
            	
         
     | 
| 
       1687 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       1688 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       1689 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       1690 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       1691 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       1692 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       1693 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       1694 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       1695 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       1696 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       1697 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       1698 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       1699 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       1700 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       1701 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       1702 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       1703 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       1704 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       1705 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       1706 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       1707 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       1708 
     | 
    
         
            -
            };
         
     | 
| 
       1709 
     | 
    
         
            -
             
     | 
| 
       1710 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21>
         
     | 
| 
       1711 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21> {
         
     | 
| 
       1712 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21> value_type;
         
     | 
| 
       1713 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21> tuple_type;
         
     | 
| 
       1714 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21) :
         
     | 
| 
       1715 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21) {}
         
     | 
| 
       1716 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       1717 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       1718 
     | 
    
         
            -
            	{
         
     | 
| 
       1719 
     | 
    
         
            -
            		pk.pack_array(22);
         
     | 
| 
       1720 
     | 
    
         
            -
            		
         
     | 
| 
       1721 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       1722 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       1723 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       1724 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       1725 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       1726 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       1727 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       1728 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       1729 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       1730 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       1731 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       1732 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       1733 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       1734 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1735 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1736 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       1737 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       1738 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       1739 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       1740 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       1741 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       1742 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       1743 
     | 
    
         
            -
            	}
         
     | 
| 
       1744 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1745 
     | 
    
         
            -
            	{
         
     | 
| 
       1746 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1747 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1748 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1749 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1750 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1751 
     | 
    
         
            -
            			default:
         
     | 
| 
       1752 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       1753 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       1754 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       1755 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       1756 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       1757 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       1758 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       1759 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       1760 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       1761 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       1762 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       1763 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       1764 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       1765 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       1766 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       1767 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       1768 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       1769 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       1770 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       1771 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       1772 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       1773 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       1774 
     | 
    
         
            -
            			}
         
     | 
| 
       1775 
     | 
    
         
            -
            		}
         
     | 
| 
       1776 
     | 
    
         
            -
            	}
         
     | 
| 
       1777 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       1778 
     | 
    
         
            -
            	{
         
     | 
| 
       1779 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       1780 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*22);
         
     | 
| 
       1781 
     | 
    
         
            -
            		o->via.array.size = 22;
         
     | 
| 
       1782 
     | 
    
         
            -
            		
         
     | 
| 
       1783 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       1784 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       1785 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       1786 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       1787 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       1788 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       1789 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       1790 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       1791 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       1792 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       1793 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       1794 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       1795 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       1796 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       1797 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       1798 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       1799 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       1800 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       1801 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       1802 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       1803 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       1804 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       1805 
     | 
    
         
            -
            	}
         
     | 
| 
       1806 
     | 
    
         
            -
            	
         
     | 
| 
       1807 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       1808 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       1809 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       1810 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       1811 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       1812 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       1813 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       1814 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       1815 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       1816 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       1817 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       1818 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       1819 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       1820 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       1821 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       1822 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       1823 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       1824 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       1825 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       1826 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       1827 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       1828 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       1829 
     | 
    
         
            -
            };
         
     | 
| 
       1830 
     | 
    
         
            -
             
     | 
| 
       1831 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22>
         
     | 
| 
       1832 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22> {
         
     | 
| 
       1833 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22> value_type;
         
     | 
| 
       1834 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22> tuple_type;
         
     | 
| 
       1835 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22) :
         
     | 
| 
       1836 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22) {}
         
     | 
| 
       1837 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       1838 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       1839 
     | 
    
         
            -
            	{
         
     | 
| 
       1840 
     | 
    
         
            -
            		pk.pack_array(23);
         
     | 
| 
       1841 
     | 
    
         
            -
            		
         
     | 
| 
       1842 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       1843 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       1844 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       1845 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       1846 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       1847 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       1848 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       1849 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       1850 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       1851 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       1852 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       1853 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       1854 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       1855 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1856 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1857 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       1858 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       1859 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       1860 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       1861 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       1862 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       1863 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       1864 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       1865 
     | 
    
         
            -
            	}
         
     | 
| 
       1866 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1867 
     | 
    
         
            -
            	{
         
     | 
| 
       1868 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1869 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1870 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1871 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1872 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1873 
     | 
    
         
            -
            			default:
         
     | 
| 
       1874 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       1875 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       1876 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       1877 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       1878 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       1879 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       1880 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       1881 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       1882 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       1883 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       1884 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       1885 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       1886 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       1887 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       1888 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       1889 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       1890 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       1891 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       1892 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       1893 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       1894 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       1895 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       1896 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       1897 
     | 
    
         
            -
            			}
         
     | 
| 
       1898 
     | 
    
         
            -
            		}
         
     | 
| 
       1899 
     | 
    
         
            -
            	}
         
     | 
| 
       1900 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       1901 
     | 
    
         
            -
            	{
         
     | 
| 
       1902 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       1903 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*23);
         
     | 
| 
       1904 
     | 
    
         
            -
            		o->via.array.size = 23;
         
     | 
| 
       1905 
     | 
    
         
            -
            		
         
     | 
| 
       1906 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       1907 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       1908 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       1909 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       1910 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       1911 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       1912 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       1913 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       1914 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       1915 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       1916 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       1917 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       1918 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       1919 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       1920 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       1921 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       1922 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       1923 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       1924 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       1925 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       1926 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       1927 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       1928 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       1929 
     | 
    
         
            -
            	}
         
     | 
| 
       1930 
     | 
    
         
            -
            	
         
     | 
| 
       1931 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       1932 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       1933 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       1934 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       1935 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       1936 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       1937 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       1938 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       1939 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       1940 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       1941 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       1942 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       1943 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       1944 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       1945 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       1946 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       1947 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       1948 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       1949 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       1950 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       1951 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       1952 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       1953 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       1954 
     | 
    
         
            -
            };
         
     | 
| 
       1955 
     | 
    
         
            -
             
     | 
| 
       1956 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23>
         
     | 
| 
       1957 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23> {
         
     | 
| 
       1958 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23> value_type;
         
     | 
| 
       1959 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23> tuple_type;
         
     | 
| 
       1960 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23) :
         
     | 
| 
       1961 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23) {}
         
     | 
| 
       1962 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       1963 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       1964 
     | 
    
         
            -
            	{
         
     | 
| 
       1965 
     | 
    
         
            -
            		pk.pack_array(24);
         
     | 
| 
       1966 
     | 
    
         
            -
            		
         
     | 
| 
       1967 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       1968 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       1969 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       1970 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       1971 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       1972 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       1973 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       1974 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       1975 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       1976 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       1977 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       1978 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       1979 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       1980 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       1981 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       1982 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       1983 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       1984 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       1985 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       1986 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       1987 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       1988 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       1989 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       1990 
     | 
    
         
            -
            		pk.pack(a23);
         
     | 
| 
       1991 
     | 
    
         
            -
            	}
         
     | 
| 
       1992 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       1993 
     | 
    
         
            -
            	{
         
     | 
| 
       1994 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       1995 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       1996 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       1997 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       1998 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       1999 
     | 
    
         
            -
            			default:
         
     | 
| 
       2000 
     | 
    
         
            -
            			case 24: ptr[23].convert(&a23);
         
     | 
| 
       2001 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       2002 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       2003 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       2004 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       2005 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       2006 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       2007 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       2008 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       2009 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       2010 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       2011 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       2012 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       2013 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       2014 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       2015 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       2016 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       2017 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       2018 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       2019 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       2020 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       2021 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       2022 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       2023 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       2024 
     | 
    
         
            -
            			}
         
     | 
| 
       2025 
     | 
    
         
            -
            		}
         
     | 
| 
       2026 
     | 
    
         
            -
            	}
         
     | 
| 
       2027 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       2028 
     | 
    
         
            -
            	{
         
     | 
| 
       2029 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       2030 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*24);
         
     | 
| 
       2031 
     | 
    
         
            -
            		o->via.array.size = 24;
         
     | 
| 
       2032 
     | 
    
         
            -
            		
         
     | 
| 
       2033 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       2034 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       2035 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       2036 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       2037 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       2038 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       2039 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       2040 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       2041 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       2042 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       2043 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       2044 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       2045 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       2046 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       2047 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       2048 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       2049 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       2050 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       2051 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       2052 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       2053 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       2054 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       2055 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       2056 
     | 
    
         
            -
            		o->via.array.ptr[23] = object(a23, z);
         
     | 
| 
       2057 
     | 
    
         
            -
            	}
         
     | 
| 
       2058 
     | 
    
         
            -
            	
         
     | 
| 
       2059 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       2060 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       2061 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       2062 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       2063 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       2064 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       2065 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       2066 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       2067 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       2068 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       2069 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       2070 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       2071 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       2072 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       2073 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       2074 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       2075 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       2076 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       2077 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       2078 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       2079 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       2080 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       2081 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       2082 
     | 
    
         
            -
            	A23& a23;
         
     | 
| 
       2083 
     | 
    
         
            -
            };
         
     | 
| 
       2084 
     | 
    
         
            -
             
     | 
| 
       2085 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24>
         
     | 
| 
       2086 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24> {
         
     | 
| 
       2087 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24> value_type;
         
     | 
| 
       2088 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24> tuple_type;
         
     | 
| 
       2089 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24) :
         
     | 
| 
       2090 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24) {}
         
     | 
| 
       2091 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       2092 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       2093 
     | 
    
         
            -
            	{
         
     | 
| 
       2094 
     | 
    
         
            -
            		pk.pack_array(25);
         
     | 
| 
       2095 
     | 
    
         
            -
            		
         
     | 
| 
       2096 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       2097 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       2098 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       2099 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       2100 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       2101 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       2102 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       2103 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       2104 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       2105 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       2106 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       2107 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       2108 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       2109 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       2110 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       2111 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       2112 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       2113 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       2114 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       2115 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       2116 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       2117 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       2118 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       2119 
     | 
    
         
            -
            		pk.pack(a23);
         
     | 
| 
       2120 
     | 
    
         
            -
            		pk.pack(a24);
         
     | 
| 
       2121 
     | 
    
         
            -
            	}
         
     | 
| 
       2122 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       2123 
     | 
    
         
            -
            	{
         
     | 
| 
       2124 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       2125 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       2126 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       2127 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       2128 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       2129 
     | 
    
         
            -
            			default:
         
     | 
| 
       2130 
     | 
    
         
            -
            			case 25: ptr[24].convert(&a24);
         
     | 
| 
       2131 
     | 
    
         
            -
            			case 24: ptr[23].convert(&a23);
         
     | 
| 
       2132 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       2133 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       2134 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       2135 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       2136 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       2137 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       2138 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       2139 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       2140 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       2141 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       2142 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       2143 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       2144 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       2145 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       2146 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       2147 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       2148 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       2149 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       2150 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       2151 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       2152 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       2153 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       2154 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       2155 
     | 
    
         
            -
            			}
         
     | 
| 
       2156 
     | 
    
         
            -
            		}
         
     | 
| 
       2157 
     | 
    
         
            -
            	}
         
     | 
| 
       2158 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       2159 
     | 
    
         
            -
            	{
         
     | 
| 
       2160 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       2161 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*25);
         
     | 
| 
       2162 
     | 
    
         
            -
            		o->via.array.size = 25;
         
     | 
| 
       2163 
     | 
    
         
            -
            		
         
     | 
| 
       2164 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       2165 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       2166 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       2167 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       2168 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       2169 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       2170 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       2171 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       2172 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       2173 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       2174 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       2175 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       2176 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       2177 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       2178 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       2179 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       2180 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       2181 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       2182 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       2183 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       2184 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       2185 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       2186 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       2187 
     | 
    
         
            -
            		o->via.array.ptr[23] = object(a23, z);
         
     | 
| 
       2188 
     | 
    
         
            -
            		o->via.array.ptr[24] = object(a24, z);
         
     | 
| 
       2189 
     | 
    
         
            -
            	}
         
     | 
| 
       2190 
     | 
    
         
            -
            	
         
     | 
| 
       2191 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       2192 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       2193 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       2194 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       2195 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       2196 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       2197 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       2198 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       2199 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       2200 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       2201 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       2202 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       2203 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       2204 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       2205 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       2206 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       2207 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       2208 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       2209 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       2210 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       2211 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       2212 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       2213 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       2214 
     | 
    
         
            -
            	A23& a23;
         
     | 
| 
       2215 
     | 
    
         
            -
            	A24& a24;
         
     | 
| 
       2216 
     | 
    
         
            -
            };
         
     | 
| 
       2217 
     | 
    
         
            -
             
     | 
| 
       2218 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25>
         
     | 
| 
       2219 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25> {
         
     | 
| 
       2220 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25> value_type;
         
     | 
| 
       2221 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25> tuple_type;
         
     | 
| 
       2222 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25) :
         
     | 
| 
       2223 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25) {}
         
     | 
| 
       2224 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       2225 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       2226 
     | 
    
         
            -
            	{
         
     | 
| 
       2227 
     | 
    
         
            -
            		pk.pack_array(26);
         
     | 
| 
       2228 
     | 
    
         
            -
            		
         
     | 
| 
       2229 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       2230 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       2231 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       2232 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       2233 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       2234 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       2235 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       2236 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       2237 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       2238 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       2239 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       2240 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       2241 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       2242 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       2243 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       2244 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       2245 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       2246 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       2247 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       2248 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       2249 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       2250 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       2251 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       2252 
     | 
    
         
            -
            		pk.pack(a23);
         
     | 
| 
       2253 
     | 
    
         
            -
            		pk.pack(a24);
         
     | 
| 
       2254 
     | 
    
         
            -
            		pk.pack(a25);
         
     | 
| 
       2255 
     | 
    
         
            -
            	}
         
     | 
| 
       2256 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       2257 
     | 
    
         
            -
            	{
         
     | 
| 
       2258 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       2259 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       2260 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       2261 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       2262 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       2263 
     | 
    
         
            -
            			default:
         
     | 
| 
       2264 
     | 
    
         
            -
            			case 26: ptr[25].convert(&a25);
         
     | 
| 
       2265 
     | 
    
         
            -
            			case 25: ptr[24].convert(&a24);
         
     | 
| 
       2266 
     | 
    
         
            -
            			case 24: ptr[23].convert(&a23);
         
     | 
| 
       2267 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       2268 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       2269 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       2270 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       2271 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       2272 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       2273 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       2274 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       2275 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       2276 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       2277 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       2278 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       2279 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       2280 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       2281 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       2282 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       2283 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       2284 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       2285 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       2286 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       2287 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       2288 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       2289 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       2290 
     | 
    
         
            -
            			}
         
     | 
| 
       2291 
     | 
    
         
            -
            		}
         
     | 
| 
       2292 
     | 
    
         
            -
            	}
         
     | 
| 
       2293 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       2294 
     | 
    
         
            -
            	{
         
     | 
| 
       2295 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       2296 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*26);
         
     | 
| 
       2297 
     | 
    
         
            -
            		o->via.array.size = 26;
         
     | 
| 
       2298 
     | 
    
         
            -
            		
         
     | 
| 
       2299 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       2300 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       2301 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       2302 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       2303 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       2304 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       2305 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       2306 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       2307 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       2308 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       2309 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       2310 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       2311 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       2312 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       2313 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       2314 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       2315 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       2316 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       2317 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       2318 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       2319 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       2320 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       2321 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       2322 
     | 
    
         
            -
            		o->via.array.ptr[23] = object(a23, z);
         
     | 
| 
       2323 
     | 
    
         
            -
            		o->via.array.ptr[24] = object(a24, z);
         
     | 
| 
       2324 
     | 
    
         
            -
            		o->via.array.ptr[25] = object(a25, z);
         
     | 
| 
       2325 
     | 
    
         
            -
            	}
         
     | 
| 
       2326 
     | 
    
         
            -
            	
         
     | 
| 
       2327 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       2328 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       2329 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       2330 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       2331 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       2332 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       2333 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       2334 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       2335 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       2336 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       2337 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       2338 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       2339 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       2340 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       2341 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       2342 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       2343 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       2344 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       2345 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       2346 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       2347 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       2348 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       2349 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       2350 
     | 
    
         
            -
            	A23& a23;
         
     | 
| 
       2351 
     | 
    
         
            -
            	A24& a24;
         
     | 
| 
       2352 
     | 
    
         
            -
            	A25& a25;
         
     | 
| 
       2353 
     | 
    
         
            -
            };
         
     | 
| 
       2354 
     | 
    
         
            -
             
     | 
| 
       2355 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26>
         
     | 
| 
       2356 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26> {
         
     | 
| 
       2357 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26> value_type;
         
     | 
| 
       2358 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26> tuple_type;
         
     | 
| 
       2359 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25, A26& _a26) :
         
     | 
| 
       2360 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25), a26(_a26) {}
         
     | 
| 
       2361 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       2362 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       2363 
     | 
    
         
            -
            	{
         
     | 
| 
       2364 
     | 
    
         
            -
            		pk.pack_array(27);
         
     | 
| 
       2365 
     | 
    
         
            -
            		
         
     | 
| 
       2366 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       2367 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       2368 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       2369 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       2370 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       2371 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       2372 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       2373 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       2374 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       2375 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       2376 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       2377 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       2378 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       2379 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       2380 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       2381 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       2382 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       2383 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       2384 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       2385 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       2386 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       2387 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       2388 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       2389 
     | 
    
         
            -
            		pk.pack(a23);
         
     | 
| 
       2390 
     | 
    
         
            -
            		pk.pack(a24);
         
     | 
| 
       2391 
     | 
    
         
            -
            		pk.pack(a25);
         
     | 
| 
       2392 
     | 
    
         
            -
            		pk.pack(a26);
         
     | 
| 
       2393 
     | 
    
         
            -
            	}
         
     | 
| 
       2394 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       2395 
     | 
    
         
            -
            	{
         
     | 
| 
       2396 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       2397 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       2398 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       2399 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       2400 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       2401 
     | 
    
         
            -
            			default:
         
     | 
| 
       2402 
     | 
    
         
            -
            			case 27: ptr[26].convert(&a26);
         
     | 
| 
       2403 
     | 
    
         
            -
            			case 26: ptr[25].convert(&a25);
         
     | 
| 
       2404 
     | 
    
         
            -
            			case 25: ptr[24].convert(&a24);
         
     | 
| 
       2405 
     | 
    
         
            -
            			case 24: ptr[23].convert(&a23);
         
     | 
| 
       2406 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       2407 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       2408 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       2409 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       2410 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       2411 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       2412 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       2413 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       2414 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       2415 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       2416 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       2417 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       2418 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       2419 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       2420 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       2421 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       2422 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       2423 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       2424 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       2425 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       2426 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       2427 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       2428 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       2429 
     | 
    
         
            -
            			}
         
     | 
| 
       2430 
     | 
    
         
            -
            		}
         
     | 
| 
       2431 
     | 
    
         
            -
            	}
         
     | 
| 
       2432 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       2433 
     | 
    
         
            -
            	{
         
     | 
| 
       2434 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       2435 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*27);
         
     | 
| 
       2436 
     | 
    
         
            -
            		o->via.array.size = 27;
         
     | 
| 
       2437 
     | 
    
         
            -
            		
         
     | 
| 
       2438 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       2439 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       2440 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       2441 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       2442 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       2443 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       2444 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       2445 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       2446 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       2447 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       2448 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       2449 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       2450 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       2451 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       2452 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       2453 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       2454 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       2455 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       2456 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       2457 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       2458 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       2459 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       2460 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       2461 
     | 
    
         
            -
            		o->via.array.ptr[23] = object(a23, z);
         
     | 
| 
       2462 
     | 
    
         
            -
            		o->via.array.ptr[24] = object(a24, z);
         
     | 
| 
       2463 
     | 
    
         
            -
            		o->via.array.ptr[25] = object(a25, z);
         
     | 
| 
       2464 
     | 
    
         
            -
            		o->via.array.ptr[26] = object(a26, z);
         
     | 
| 
       2465 
     | 
    
         
            -
            	}
         
     | 
| 
       2466 
     | 
    
         
            -
            	
         
     | 
| 
       2467 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       2468 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       2469 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       2470 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       2471 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       2472 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       2473 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       2474 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       2475 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       2476 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       2477 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       2478 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       2479 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       2480 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       2481 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       2482 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       2483 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       2484 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       2485 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       2486 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       2487 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       2488 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       2489 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       2490 
     | 
    
         
            -
            	A23& a23;
         
     | 
| 
       2491 
     | 
    
         
            -
            	A24& a24;
         
     | 
| 
       2492 
     | 
    
         
            -
            	A25& a25;
         
     | 
| 
       2493 
     | 
    
         
            -
            	A26& a26;
         
     | 
| 
       2494 
     | 
    
         
            -
            };
         
     | 
| 
       2495 
     | 
    
         
            -
             
     | 
| 
       2496 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27>
         
     | 
| 
       2497 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27> {
         
     | 
| 
       2498 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27> value_type;
         
     | 
| 
       2499 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27> tuple_type;
         
     | 
| 
       2500 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25, A26& _a26, A27& _a27) :
         
     | 
| 
       2501 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25), a26(_a26), a27(_a27) {}
         
     | 
| 
       2502 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       2503 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       2504 
     | 
    
         
            -
            	{
         
     | 
| 
       2505 
     | 
    
         
            -
            		pk.pack_array(28);
         
     | 
| 
       2506 
     | 
    
         
            -
            		
         
     | 
| 
       2507 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       2508 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       2509 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       2510 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       2511 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       2512 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       2513 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       2514 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       2515 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       2516 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       2517 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       2518 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       2519 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       2520 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       2521 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       2522 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       2523 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       2524 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       2525 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       2526 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       2527 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       2528 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       2529 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       2530 
     | 
    
         
            -
            		pk.pack(a23);
         
     | 
| 
       2531 
     | 
    
         
            -
            		pk.pack(a24);
         
     | 
| 
       2532 
     | 
    
         
            -
            		pk.pack(a25);
         
     | 
| 
       2533 
     | 
    
         
            -
            		pk.pack(a26);
         
     | 
| 
       2534 
     | 
    
         
            -
            		pk.pack(a27);
         
     | 
| 
       2535 
     | 
    
         
            -
            	}
         
     | 
| 
       2536 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       2537 
     | 
    
         
            -
            	{
         
     | 
| 
       2538 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       2539 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       2540 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       2541 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       2542 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       2543 
     | 
    
         
            -
            			default:
         
     | 
| 
       2544 
     | 
    
         
            -
            			case 28: ptr[27].convert(&a27);
         
     | 
| 
       2545 
     | 
    
         
            -
            			case 27: ptr[26].convert(&a26);
         
     | 
| 
       2546 
     | 
    
         
            -
            			case 26: ptr[25].convert(&a25);
         
     | 
| 
       2547 
     | 
    
         
            -
            			case 25: ptr[24].convert(&a24);
         
     | 
| 
       2548 
     | 
    
         
            -
            			case 24: ptr[23].convert(&a23);
         
     | 
| 
       2549 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       2550 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       2551 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       2552 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       2553 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       2554 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       2555 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       2556 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       2557 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       2558 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       2559 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       2560 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       2561 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       2562 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       2563 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       2564 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       2565 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       2566 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       2567 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       2568 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       2569 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       2570 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       2571 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       2572 
     | 
    
         
            -
            			}
         
     | 
| 
       2573 
     | 
    
         
            -
            		}
         
     | 
| 
       2574 
     | 
    
         
            -
            	}
         
     | 
| 
       2575 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       2576 
     | 
    
         
            -
            	{
         
     | 
| 
       2577 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       2578 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*28);
         
     | 
| 
       2579 
     | 
    
         
            -
            		o->via.array.size = 28;
         
     | 
| 
       2580 
     | 
    
         
            -
            		
         
     | 
| 
       2581 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       2582 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       2583 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       2584 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       2585 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       2586 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       2587 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       2588 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       2589 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       2590 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       2591 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       2592 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       2593 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       2594 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       2595 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       2596 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       2597 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       2598 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       2599 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       2600 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       2601 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       2602 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       2603 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       2604 
     | 
    
         
            -
            		o->via.array.ptr[23] = object(a23, z);
         
     | 
| 
       2605 
     | 
    
         
            -
            		o->via.array.ptr[24] = object(a24, z);
         
     | 
| 
       2606 
     | 
    
         
            -
            		o->via.array.ptr[25] = object(a25, z);
         
     | 
| 
       2607 
     | 
    
         
            -
            		o->via.array.ptr[26] = object(a26, z);
         
     | 
| 
       2608 
     | 
    
         
            -
            		o->via.array.ptr[27] = object(a27, z);
         
     | 
| 
       2609 
     | 
    
         
            -
            	}
         
     | 
| 
       2610 
     | 
    
         
            -
            	
         
     | 
| 
       2611 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       2612 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       2613 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       2614 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       2615 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       2616 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       2617 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       2618 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       2619 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       2620 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       2621 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       2622 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       2623 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       2624 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       2625 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       2626 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       2627 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       2628 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       2629 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       2630 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       2631 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       2632 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       2633 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       2634 
     | 
    
         
            -
            	A23& a23;
         
     | 
| 
       2635 
     | 
    
         
            -
            	A24& a24;
         
     | 
| 
       2636 
     | 
    
         
            -
            	A25& a25;
         
     | 
| 
       2637 
     | 
    
         
            -
            	A26& a26;
         
     | 
| 
       2638 
     | 
    
         
            -
            	A27& a27;
         
     | 
| 
       2639 
     | 
    
         
            -
            };
         
     | 
| 
       2640 
     | 
    
         
            -
             
     | 
| 
       2641 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28>
         
     | 
| 
       2642 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28> {
         
     | 
| 
       2643 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28> value_type;
         
     | 
| 
       2644 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28> tuple_type;
         
     | 
| 
       2645 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25, A26& _a26, A27& _a27, A28& _a28) :
         
     | 
| 
       2646 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25), a26(_a26), a27(_a27), a28(_a28) {}
         
     | 
| 
       2647 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       2648 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       2649 
     | 
    
         
            -
            	{
         
     | 
| 
       2650 
     | 
    
         
            -
            		pk.pack_array(29);
         
     | 
| 
       2651 
     | 
    
         
            -
            		
         
     | 
| 
       2652 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       2653 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       2654 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       2655 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       2656 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       2657 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       2658 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       2659 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       2660 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       2661 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       2662 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       2663 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       2664 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       2665 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       2666 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       2667 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       2668 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       2669 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       2670 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       2671 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       2672 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       2673 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       2674 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       2675 
     | 
    
         
            -
            		pk.pack(a23);
         
     | 
| 
       2676 
     | 
    
         
            -
            		pk.pack(a24);
         
     | 
| 
       2677 
     | 
    
         
            -
            		pk.pack(a25);
         
     | 
| 
       2678 
     | 
    
         
            -
            		pk.pack(a26);
         
     | 
| 
       2679 
     | 
    
         
            -
            		pk.pack(a27);
         
     | 
| 
       2680 
     | 
    
         
            -
            		pk.pack(a28);
         
     | 
| 
       2681 
     | 
    
         
            -
            	}
         
     | 
| 
       2682 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       2683 
     | 
    
         
            -
            	{
         
     | 
| 
       2684 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       2685 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       2686 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       2687 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       2688 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       2689 
     | 
    
         
            -
            			default:
         
     | 
| 
       2690 
     | 
    
         
            -
            			case 29: ptr[28].convert(&a28);
         
     | 
| 
       2691 
     | 
    
         
            -
            			case 28: ptr[27].convert(&a27);
         
     | 
| 
       2692 
     | 
    
         
            -
            			case 27: ptr[26].convert(&a26);
         
     | 
| 
       2693 
     | 
    
         
            -
            			case 26: ptr[25].convert(&a25);
         
     | 
| 
       2694 
     | 
    
         
            -
            			case 25: ptr[24].convert(&a24);
         
     | 
| 
       2695 
     | 
    
         
            -
            			case 24: ptr[23].convert(&a23);
         
     | 
| 
       2696 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       2697 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       2698 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       2699 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       2700 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       2701 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       2702 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       2703 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       2704 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       2705 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       2706 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       2707 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       2708 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       2709 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       2710 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       2711 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       2712 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       2713 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       2714 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       2715 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       2716 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       2717 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       2718 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       2719 
     | 
    
         
            -
            			}
         
     | 
| 
       2720 
     | 
    
         
            -
            		}
         
     | 
| 
       2721 
     | 
    
         
            -
            	}
         
     | 
| 
       2722 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       2723 
     | 
    
         
            -
            	{
         
     | 
| 
       2724 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       2725 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*29);
         
     | 
| 
       2726 
     | 
    
         
            -
            		o->via.array.size = 29;
         
     | 
| 
       2727 
     | 
    
         
            -
            		
         
     | 
| 
       2728 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       2729 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       2730 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       2731 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       2732 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       2733 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       2734 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       2735 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       2736 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       2737 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       2738 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       2739 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       2740 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       2741 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       2742 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       2743 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       2744 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       2745 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       2746 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       2747 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       2748 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       2749 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       2750 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       2751 
     | 
    
         
            -
            		o->via.array.ptr[23] = object(a23, z);
         
     | 
| 
       2752 
     | 
    
         
            -
            		o->via.array.ptr[24] = object(a24, z);
         
     | 
| 
       2753 
     | 
    
         
            -
            		o->via.array.ptr[25] = object(a25, z);
         
     | 
| 
       2754 
     | 
    
         
            -
            		o->via.array.ptr[26] = object(a26, z);
         
     | 
| 
       2755 
     | 
    
         
            -
            		o->via.array.ptr[27] = object(a27, z);
         
     | 
| 
       2756 
     | 
    
         
            -
            		o->via.array.ptr[28] = object(a28, z);
         
     | 
| 
       2757 
     | 
    
         
            -
            	}
         
     | 
| 
       2758 
     | 
    
         
            -
            	
         
     | 
| 
       2759 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       2760 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       2761 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       2762 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       2763 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       2764 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       2765 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       2766 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       2767 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       2768 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       2769 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       2770 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       2771 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       2772 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       2773 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       2774 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       2775 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       2776 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       2777 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       2778 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       2779 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       2780 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       2781 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       2782 
     | 
    
         
            -
            	A23& a23;
         
     | 
| 
       2783 
     | 
    
         
            -
            	A24& a24;
         
     | 
| 
       2784 
     | 
    
         
            -
            	A25& a25;
         
     | 
| 
       2785 
     | 
    
         
            -
            	A26& a26;
         
     | 
| 
       2786 
     | 
    
         
            -
            	A27& a27;
         
     | 
| 
       2787 
     | 
    
         
            -
            	A28& a28;
         
     | 
| 
       2788 
     | 
    
         
            -
            };
         
     | 
| 
       2789 
     | 
    
         
            -
             
     | 
| 
       2790 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29>
         
     | 
| 
       2791 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29> {
         
     | 
| 
       2792 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29> value_type;
         
     | 
| 
       2793 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29> tuple_type;
         
     | 
| 
       2794 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25, A26& _a26, A27& _a27, A28& _a28, A29& _a29) :
         
     | 
| 
       2795 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25), a26(_a26), a27(_a27), a28(_a28), a29(_a29) {}
         
     | 
| 
       2796 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       2797 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       2798 
     | 
    
         
            -
            	{
         
     | 
| 
       2799 
     | 
    
         
            -
            		pk.pack_array(30);
         
     | 
| 
       2800 
     | 
    
         
            -
            		
         
     | 
| 
       2801 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       2802 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       2803 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       2804 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       2805 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       2806 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       2807 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       2808 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       2809 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       2810 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       2811 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       2812 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       2813 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       2814 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       2815 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       2816 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       2817 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       2818 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       2819 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       2820 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       2821 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       2822 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       2823 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       2824 
     | 
    
         
            -
            		pk.pack(a23);
         
     | 
| 
       2825 
     | 
    
         
            -
            		pk.pack(a24);
         
     | 
| 
       2826 
     | 
    
         
            -
            		pk.pack(a25);
         
     | 
| 
       2827 
     | 
    
         
            -
            		pk.pack(a26);
         
     | 
| 
       2828 
     | 
    
         
            -
            		pk.pack(a27);
         
     | 
| 
       2829 
     | 
    
         
            -
            		pk.pack(a28);
         
     | 
| 
       2830 
     | 
    
         
            -
            		pk.pack(a29);
         
     | 
| 
       2831 
     | 
    
         
            -
            	}
         
     | 
| 
       2832 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       2833 
     | 
    
         
            -
            	{
         
     | 
| 
       2834 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       2835 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       2836 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       2837 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       2838 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       2839 
     | 
    
         
            -
            			default:
         
     | 
| 
       2840 
     | 
    
         
            -
            			case 30: ptr[29].convert(&a29);
         
     | 
| 
       2841 
     | 
    
         
            -
            			case 29: ptr[28].convert(&a28);
         
     | 
| 
       2842 
     | 
    
         
            -
            			case 28: ptr[27].convert(&a27);
         
     | 
| 
       2843 
     | 
    
         
            -
            			case 27: ptr[26].convert(&a26);
         
     | 
| 
       2844 
     | 
    
         
            -
            			case 26: ptr[25].convert(&a25);
         
     | 
| 
       2845 
     | 
    
         
            -
            			case 25: ptr[24].convert(&a24);
         
     | 
| 
       2846 
     | 
    
         
            -
            			case 24: ptr[23].convert(&a23);
         
     | 
| 
       2847 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       2848 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       2849 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       2850 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       2851 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       2852 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       2853 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       2854 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       2855 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       2856 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       2857 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       2858 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       2859 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       2860 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       2861 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       2862 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       2863 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       2864 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       2865 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       2866 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       2867 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       2868 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       2869 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       2870 
     | 
    
         
            -
            			}
         
     | 
| 
       2871 
     | 
    
         
            -
            		}
         
     | 
| 
       2872 
     | 
    
         
            -
            	}
         
     | 
| 
       2873 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       2874 
     | 
    
         
            -
            	{
         
     | 
| 
       2875 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       2876 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*30);
         
     | 
| 
       2877 
     | 
    
         
            -
            		o->via.array.size = 30;
         
     | 
| 
       2878 
     | 
    
         
            -
            		
         
     | 
| 
       2879 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       2880 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       2881 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       2882 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       2883 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       2884 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       2885 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       2886 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       2887 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       2888 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       2889 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       2890 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       2891 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       2892 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       2893 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       2894 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       2895 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       2896 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       2897 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       2898 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       2899 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       2900 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       2901 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       2902 
     | 
    
         
            -
            		o->via.array.ptr[23] = object(a23, z);
         
     | 
| 
       2903 
     | 
    
         
            -
            		o->via.array.ptr[24] = object(a24, z);
         
     | 
| 
       2904 
     | 
    
         
            -
            		o->via.array.ptr[25] = object(a25, z);
         
     | 
| 
       2905 
     | 
    
         
            -
            		o->via.array.ptr[26] = object(a26, z);
         
     | 
| 
       2906 
     | 
    
         
            -
            		o->via.array.ptr[27] = object(a27, z);
         
     | 
| 
       2907 
     | 
    
         
            -
            		o->via.array.ptr[28] = object(a28, z);
         
     | 
| 
       2908 
     | 
    
         
            -
            		o->via.array.ptr[29] = object(a29, z);
         
     | 
| 
       2909 
     | 
    
         
            -
            	}
         
     | 
| 
       2910 
     | 
    
         
            -
            	
         
     | 
| 
       2911 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       2912 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       2913 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       2914 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       2915 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       2916 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       2917 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       2918 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       2919 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       2920 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       2921 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       2922 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       2923 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       2924 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       2925 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       2926 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       2927 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       2928 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       2929 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       2930 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       2931 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       2932 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       2933 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       2934 
     | 
    
         
            -
            	A23& a23;
         
     | 
| 
       2935 
     | 
    
         
            -
            	A24& a24;
         
     | 
| 
       2936 
     | 
    
         
            -
            	A25& a25;
         
     | 
| 
       2937 
     | 
    
         
            -
            	A26& a26;
         
     | 
| 
       2938 
     | 
    
         
            -
            	A27& a27;
         
     | 
| 
       2939 
     | 
    
         
            -
            	A28& a28;
         
     | 
| 
       2940 
     | 
    
         
            -
            	A29& a29;
         
     | 
| 
       2941 
     | 
    
         
            -
            };
         
     | 
| 
       2942 
     | 
    
         
            -
             
     | 
| 
       2943 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30>
         
     | 
| 
       2944 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30> {
         
     | 
| 
       2945 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30> value_type;
         
     | 
| 
       2946 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30> tuple_type;
         
     | 
| 
       2947 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25, A26& _a26, A27& _a27, A28& _a28, A29& _a29, A30& _a30) :
         
     | 
| 
       2948 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25), a26(_a26), a27(_a27), a28(_a28), a29(_a29), a30(_a30) {}
         
     | 
| 
       2949 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       2950 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       2951 
     | 
    
         
            -
            	{
         
     | 
| 
       2952 
     | 
    
         
            -
            		pk.pack_array(31);
         
     | 
| 
       2953 
     | 
    
         
            -
            		
         
     | 
| 
       2954 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       2955 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       2956 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       2957 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       2958 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       2959 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       2960 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       2961 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       2962 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       2963 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       2964 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       2965 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       2966 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       2967 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       2968 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       2969 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       2970 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       2971 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       2972 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       2973 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       2974 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       2975 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       2976 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       2977 
     | 
    
         
            -
            		pk.pack(a23);
         
     | 
| 
       2978 
     | 
    
         
            -
            		pk.pack(a24);
         
     | 
| 
       2979 
     | 
    
         
            -
            		pk.pack(a25);
         
     | 
| 
       2980 
     | 
    
         
            -
            		pk.pack(a26);
         
     | 
| 
       2981 
     | 
    
         
            -
            		pk.pack(a27);
         
     | 
| 
       2982 
     | 
    
         
            -
            		pk.pack(a28);
         
     | 
| 
       2983 
     | 
    
         
            -
            		pk.pack(a29);
         
     | 
| 
       2984 
     | 
    
         
            -
            		pk.pack(a30);
         
     | 
| 
       2985 
     | 
    
         
            -
            	}
         
     | 
| 
       2986 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       2987 
     | 
    
         
            -
            	{
         
     | 
| 
       2988 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       2989 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       2990 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       2991 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       2992 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       2993 
     | 
    
         
            -
            			default:
         
     | 
| 
       2994 
     | 
    
         
            -
            			case 31: ptr[30].convert(&a30);
         
     | 
| 
       2995 
     | 
    
         
            -
            			case 30: ptr[29].convert(&a29);
         
     | 
| 
       2996 
     | 
    
         
            -
            			case 29: ptr[28].convert(&a28);
         
     | 
| 
       2997 
     | 
    
         
            -
            			case 28: ptr[27].convert(&a27);
         
     | 
| 
       2998 
     | 
    
         
            -
            			case 27: ptr[26].convert(&a26);
         
     | 
| 
       2999 
     | 
    
         
            -
            			case 26: ptr[25].convert(&a25);
         
     | 
| 
       3000 
     | 
    
         
            -
            			case 25: ptr[24].convert(&a24);
         
     | 
| 
       3001 
     | 
    
         
            -
            			case 24: ptr[23].convert(&a23);
         
     | 
| 
       3002 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       3003 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       3004 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       3005 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       3006 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       3007 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       3008 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       3009 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       3010 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       3011 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       3012 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       3013 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       3014 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       3015 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       3016 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       3017 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       3018 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       3019 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       3020 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       3021 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       3022 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       3023 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       3024 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       3025 
     | 
    
         
            -
            			}
         
     | 
| 
       3026 
     | 
    
         
            -
            		}
         
     | 
| 
       3027 
     | 
    
         
            -
            	}
         
     | 
| 
       3028 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       3029 
     | 
    
         
            -
            	{
         
     | 
| 
       3030 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       3031 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*31);
         
     | 
| 
       3032 
     | 
    
         
            -
            		o->via.array.size = 31;
         
     | 
| 
       3033 
     | 
    
         
            -
            		
         
     | 
| 
       3034 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       3035 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       3036 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       3037 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       3038 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       3039 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       3040 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       3041 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       3042 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       3043 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       3044 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       3045 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       3046 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       3047 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       3048 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       3049 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       3050 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       3051 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       3052 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       3053 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       3054 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       3055 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       3056 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       3057 
     | 
    
         
            -
            		o->via.array.ptr[23] = object(a23, z);
         
     | 
| 
       3058 
     | 
    
         
            -
            		o->via.array.ptr[24] = object(a24, z);
         
     | 
| 
       3059 
     | 
    
         
            -
            		o->via.array.ptr[25] = object(a25, z);
         
     | 
| 
       3060 
     | 
    
         
            -
            		o->via.array.ptr[26] = object(a26, z);
         
     | 
| 
       3061 
     | 
    
         
            -
            		o->via.array.ptr[27] = object(a27, z);
         
     | 
| 
       3062 
     | 
    
         
            -
            		o->via.array.ptr[28] = object(a28, z);
         
     | 
| 
       3063 
     | 
    
         
            -
            		o->via.array.ptr[29] = object(a29, z);
         
     | 
| 
       3064 
     | 
    
         
            -
            		o->via.array.ptr[30] = object(a30, z);
         
     | 
| 
       3065 
     | 
    
         
            -
            	}
         
     | 
| 
       3066 
     | 
    
         
            -
            	
         
     | 
| 
       3067 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       3068 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       3069 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       3070 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       3071 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       3072 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       3073 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       3074 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       3075 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       3076 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       3077 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       3078 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       3079 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       3080 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       3081 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       3082 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       3083 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       3084 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       3085 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       3086 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       3087 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       3088 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       3089 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       3090 
     | 
    
         
            -
            	A23& a23;
         
     | 
| 
       3091 
     | 
    
         
            -
            	A24& a24;
         
     | 
| 
       3092 
     | 
    
         
            -
            	A25& a25;
         
     | 
| 
       3093 
     | 
    
         
            -
            	A26& a26;
         
     | 
| 
       3094 
     | 
    
         
            -
            	A27& a27;
         
     | 
| 
       3095 
     | 
    
         
            -
            	A28& a28;
         
     | 
| 
       3096 
     | 
    
         
            -
            	A29& a29;
         
     | 
| 
       3097 
     | 
    
         
            -
            	A30& a30;
         
     | 
| 
       3098 
     | 
    
         
            -
            };
         
     | 
| 
       3099 
     | 
    
         
            -
             
     | 
| 
       3100 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31>
         
     | 
| 
       3101 
     | 
    
         
            -
            struct define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31> {
         
     | 
| 
       3102 
     | 
    
         
            -
            	typedef define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31> value_type;
         
     | 
| 
       3103 
     | 
    
         
            -
            	typedef tuple<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31> tuple_type;
         
     | 
| 
       3104 
     | 
    
         
            -
            	define(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25, A26& _a26, A27& _a27, A28& _a28, A29& _a29, A30& _a30, A31& _a31) :
         
     | 
| 
       3105 
     | 
    
         
            -
            		a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25), a26(_a26), a27(_a27), a28(_a28), a29(_a29), a30(_a30), a31(_a31) {}
         
     | 
| 
       3106 
     | 
    
         
            -
            	template <typename Packer>
         
     | 
| 
       3107 
     | 
    
         
            -
            	void msgpack_pack(Packer& pk) const
         
     | 
| 
       3108 
     | 
    
         
            -
            	{
         
     | 
| 
       3109 
     | 
    
         
            -
            		pk.pack_array(32);
         
     | 
| 
       3110 
     | 
    
         
            -
            		
         
     | 
| 
       3111 
     | 
    
         
            -
            		pk.pack(a0);
         
     | 
| 
       3112 
     | 
    
         
            -
            		pk.pack(a1);
         
     | 
| 
       3113 
     | 
    
         
            -
            		pk.pack(a2);
         
     | 
| 
       3114 
     | 
    
         
            -
            		pk.pack(a3);
         
     | 
| 
       3115 
     | 
    
         
            -
            		pk.pack(a4);
         
     | 
| 
       3116 
     | 
    
         
            -
            		pk.pack(a5);
         
     | 
| 
       3117 
     | 
    
         
            -
            		pk.pack(a6);
         
     | 
| 
       3118 
     | 
    
         
            -
            		pk.pack(a7);
         
     | 
| 
       3119 
     | 
    
         
            -
            		pk.pack(a8);
         
     | 
| 
       3120 
     | 
    
         
            -
            		pk.pack(a9);
         
     | 
| 
       3121 
     | 
    
         
            -
            		pk.pack(a10);
         
     | 
| 
       3122 
     | 
    
         
            -
            		pk.pack(a11);
         
     | 
| 
       3123 
     | 
    
         
            -
            		pk.pack(a12);
         
     | 
| 
       3124 
     | 
    
         
            -
            		pk.pack(a13);
         
     | 
| 
       3125 
     | 
    
         
            -
            		pk.pack(a14);
         
     | 
| 
       3126 
     | 
    
         
            -
            		pk.pack(a15);
         
     | 
| 
       3127 
     | 
    
         
            -
            		pk.pack(a16);
         
     | 
| 
       3128 
     | 
    
         
            -
            		pk.pack(a17);
         
     | 
| 
       3129 
     | 
    
         
            -
            		pk.pack(a18);
         
     | 
| 
       3130 
     | 
    
         
            -
            		pk.pack(a19);
         
     | 
| 
       3131 
     | 
    
         
            -
            		pk.pack(a20);
         
     | 
| 
       3132 
     | 
    
         
            -
            		pk.pack(a21);
         
     | 
| 
       3133 
     | 
    
         
            -
            		pk.pack(a22);
         
     | 
| 
       3134 
     | 
    
         
            -
            		pk.pack(a23);
         
     | 
| 
       3135 
     | 
    
         
            -
            		pk.pack(a24);
         
     | 
| 
       3136 
     | 
    
         
            -
            		pk.pack(a25);
         
     | 
| 
       3137 
     | 
    
         
            -
            		pk.pack(a26);
         
     | 
| 
       3138 
     | 
    
         
            -
            		pk.pack(a27);
         
     | 
| 
       3139 
     | 
    
         
            -
            		pk.pack(a28);
         
     | 
| 
       3140 
     | 
    
         
            -
            		pk.pack(a29);
         
     | 
| 
       3141 
     | 
    
         
            -
            		pk.pack(a30);
         
     | 
| 
       3142 
     | 
    
         
            -
            		pk.pack(a31);
         
     | 
| 
       3143 
     | 
    
         
            -
            	}
         
     | 
| 
       3144 
     | 
    
         
            -
            	void msgpack_unpack(msgpack::object o)
         
     | 
| 
       3145 
     | 
    
         
            -
            	{
         
     | 
| 
       3146 
     | 
    
         
            -
            		if(o.type != type::ARRAY) { throw type_error(); }
         
     | 
| 
       3147 
     | 
    
         
            -
            		const size_t size = o.via.array.size;
         
     | 
| 
       3148 
     | 
    
         
            -
            		if(size > 0) {
         
     | 
| 
       3149 
     | 
    
         
            -
            			msgpack::object *ptr = o.via.array.ptr;
         
     | 
| 
       3150 
     | 
    
         
            -
            			switch(size) {
         
     | 
| 
       3151 
     | 
    
         
            -
            			default:
         
     | 
| 
       3152 
     | 
    
         
            -
            			case 32: ptr[31].convert(&a31);
         
     | 
| 
       3153 
     | 
    
         
            -
            			case 31: ptr[30].convert(&a30);
         
     | 
| 
       3154 
     | 
    
         
            -
            			case 30: ptr[29].convert(&a29);
         
     | 
| 
       3155 
     | 
    
         
            -
            			case 29: ptr[28].convert(&a28);
         
     | 
| 
       3156 
     | 
    
         
            -
            			case 28: ptr[27].convert(&a27);
         
     | 
| 
       3157 
     | 
    
         
            -
            			case 27: ptr[26].convert(&a26);
         
     | 
| 
       3158 
     | 
    
         
            -
            			case 26: ptr[25].convert(&a25);
         
     | 
| 
       3159 
     | 
    
         
            -
            			case 25: ptr[24].convert(&a24);
         
     | 
| 
       3160 
     | 
    
         
            -
            			case 24: ptr[23].convert(&a23);
         
     | 
| 
       3161 
     | 
    
         
            -
            			case 23: ptr[22].convert(&a22);
         
     | 
| 
       3162 
     | 
    
         
            -
            			case 22: ptr[21].convert(&a21);
         
     | 
| 
       3163 
     | 
    
         
            -
            			case 21: ptr[20].convert(&a20);
         
     | 
| 
       3164 
     | 
    
         
            -
            			case 20: ptr[19].convert(&a19);
         
     | 
| 
       3165 
     | 
    
         
            -
            			case 19: ptr[18].convert(&a18);
         
     | 
| 
       3166 
     | 
    
         
            -
            			case 18: ptr[17].convert(&a17);
         
     | 
| 
       3167 
     | 
    
         
            -
            			case 17: ptr[16].convert(&a16);
         
     | 
| 
       3168 
     | 
    
         
            -
            			case 16: ptr[15].convert(&a15);
         
     | 
| 
       3169 
     | 
    
         
            -
            			case 15: ptr[14].convert(&a14);
         
     | 
| 
       3170 
     | 
    
         
            -
            			case 14: ptr[13].convert(&a13);
         
     | 
| 
       3171 
     | 
    
         
            -
            			case 13: ptr[12].convert(&a12);
         
     | 
| 
       3172 
     | 
    
         
            -
            			case 12: ptr[11].convert(&a11);
         
     | 
| 
       3173 
     | 
    
         
            -
            			case 11: ptr[10].convert(&a10);
         
     | 
| 
       3174 
     | 
    
         
            -
            			case 10: ptr[9].convert(&a9);
         
     | 
| 
       3175 
     | 
    
         
            -
            			case 9: ptr[8].convert(&a8);
         
     | 
| 
       3176 
     | 
    
         
            -
            			case 8: ptr[7].convert(&a7);
         
     | 
| 
       3177 
     | 
    
         
            -
            			case 7: ptr[6].convert(&a6);
         
     | 
| 
       3178 
     | 
    
         
            -
            			case 6: ptr[5].convert(&a5);
         
     | 
| 
       3179 
     | 
    
         
            -
            			case 5: ptr[4].convert(&a4);
         
     | 
| 
       3180 
     | 
    
         
            -
            			case 4: ptr[3].convert(&a3);
         
     | 
| 
       3181 
     | 
    
         
            -
            			case 3: ptr[2].convert(&a2);
         
     | 
| 
       3182 
     | 
    
         
            -
            			case 2: ptr[1].convert(&a1);
         
     | 
| 
       3183 
     | 
    
         
            -
            			case 1: ptr[0].convert(&a0);
         
     | 
| 
       3184 
     | 
    
         
            -
            			}
         
     | 
| 
       3185 
     | 
    
         
            -
            		}
         
     | 
| 
       3186 
     | 
    
         
            -
            	}
         
     | 
| 
       3187 
     | 
    
         
            -
            	void msgpack_object(msgpack::object* o, msgpack::zone* z) const
         
     | 
| 
       3188 
     | 
    
         
            -
            	{
         
     | 
| 
       3189 
     | 
    
         
            -
            		o->type = type::ARRAY;
         
     | 
| 
       3190 
     | 
    
         
            -
            		o->via.array.ptr = (object*)z->malloc(sizeof(object)*32);
         
     | 
| 
       3191 
     | 
    
         
            -
            		o->via.array.size = 32;
         
     | 
| 
       3192 
     | 
    
         
            -
            		
         
     | 
| 
       3193 
     | 
    
         
            -
            		o->via.array.ptr[0] = object(a0, z);
         
     | 
| 
       3194 
     | 
    
         
            -
            		o->via.array.ptr[1] = object(a1, z);
         
     | 
| 
       3195 
     | 
    
         
            -
            		o->via.array.ptr[2] = object(a2, z);
         
     | 
| 
       3196 
     | 
    
         
            -
            		o->via.array.ptr[3] = object(a3, z);
         
     | 
| 
       3197 
     | 
    
         
            -
            		o->via.array.ptr[4] = object(a4, z);
         
     | 
| 
       3198 
     | 
    
         
            -
            		o->via.array.ptr[5] = object(a5, z);
         
     | 
| 
       3199 
     | 
    
         
            -
            		o->via.array.ptr[6] = object(a6, z);
         
     | 
| 
       3200 
     | 
    
         
            -
            		o->via.array.ptr[7] = object(a7, z);
         
     | 
| 
       3201 
     | 
    
         
            -
            		o->via.array.ptr[8] = object(a8, z);
         
     | 
| 
       3202 
     | 
    
         
            -
            		o->via.array.ptr[9] = object(a9, z);
         
     | 
| 
       3203 
     | 
    
         
            -
            		o->via.array.ptr[10] = object(a10, z);
         
     | 
| 
       3204 
     | 
    
         
            -
            		o->via.array.ptr[11] = object(a11, z);
         
     | 
| 
       3205 
     | 
    
         
            -
            		o->via.array.ptr[12] = object(a12, z);
         
     | 
| 
       3206 
     | 
    
         
            -
            		o->via.array.ptr[13] = object(a13, z);
         
     | 
| 
       3207 
     | 
    
         
            -
            		o->via.array.ptr[14] = object(a14, z);
         
     | 
| 
       3208 
     | 
    
         
            -
            		o->via.array.ptr[15] = object(a15, z);
         
     | 
| 
       3209 
     | 
    
         
            -
            		o->via.array.ptr[16] = object(a16, z);
         
     | 
| 
       3210 
     | 
    
         
            -
            		o->via.array.ptr[17] = object(a17, z);
         
     | 
| 
       3211 
     | 
    
         
            -
            		o->via.array.ptr[18] = object(a18, z);
         
     | 
| 
       3212 
     | 
    
         
            -
            		o->via.array.ptr[19] = object(a19, z);
         
     | 
| 
       3213 
     | 
    
         
            -
            		o->via.array.ptr[20] = object(a20, z);
         
     | 
| 
       3214 
     | 
    
         
            -
            		o->via.array.ptr[21] = object(a21, z);
         
     | 
| 
       3215 
     | 
    
         
            -
            		o->via.array.ptr[22] = object(a22, z);
         
     | 
| 
       3216 
     | 
    
         
            -
            		o->via.array.ptr[23] = object(a23, z);
         
     | 
| 
       3217 
     | 
    
         
            -
            		o->via.array.ptr[24] = object(a24, z);
         
     | 
| 
       3218 
     | 
    
         
            -
            		o->via.array.ptr[25] = object(a25, z);
         
     | 
| 
       3219 
     | 
    
         
            -
            		o->via.array.ptr[26] = object(a26, z);
         
     | 
| 
       3220 
     | 
    
         
            -
            		o->via.array.ptr[27] = object(a27, z);
         
     | 
| 
       3221 
     | 
    
         
            -
            		o->via.array.ptr[28] = object(a28, z);
         
     | 
| 
       3222 
     | 
    
         
            -
            		o->via.array.ptr[29] = object(a29, z);
         
     | 
| 
       3223 
     | 
    
         
            -
            		o->via.array.ptr[30] = object(a30, z);
         
     | 
| 
       3224 
     | 
    
         
            -
            		o->via.array.ptr[31] = object(a31, z);
         
     | 
| 
       3225 
     | 
    
         
            -
            	}
         
     | 
| 
       3226 
     | 
    
         
            -
            	
         
     | 
| 
       3227 
     | 
    
         
            -
            	A0& a0;
         
     | 
| 
       3228 
     | 
    
         
            -
            	A1& a1;
         
     | 
| 
       3229 
     | 
    
         
            -
            	A2& a2;
         
     | 
| 
       3230 
     | 
    
         
            -
            	A3& a3;
         
     | 
| 
       3231 
     | 
    
         
            -
            	A4& a4;
         
     | 
| 
       3232 
     | 
    
         
            -
            	A5& a5;
         
     | 
| 
       3233 
     | 
    
         
            -
            	A6& a6;
         
     | 
| 
       3234 
     | 
    
         
            -
            	A7& a7;
         
     | 
| 
       3235 
     | 
    
         
            -
            	A8& a8;
         
     | 
| 
       3236 
     | 
    
         
            -
            	A9& a9;
         
     | 
| 
       3237 
     | 
    
         
            -
            	A10& a10;
         
     | 
| 
       3238 
     | 
    
         
            -
            	A11& a11;
         
     | 
| 
       3239 
     | 
    
         
            -
            	A12& a12;
         
     | 
| 
       3240 
     | 
    
         
            -
            	A13& a13;
         
     | 
| 
       3241 
     | 
    
         
            -
            	A14& a14;
         
     | 
| 
       3242 
     | 
    
         
            -
            	A15& a15;
         
     | 
| 
       3243 
     | 
    
         
            -
            	A16& a16;
         
     | 
| 
       3244 
     | 
    
         
            -
            	A17& a17;
         
     | 
| 
       3245 
     | 
    
         
            -
            	A18& a18;
         
     | 
| 
       3246 
     | 
    
         
            -
            	A19& a19;
         
     | 
| 
       3247 
     | 
    
         
            -
            	A20& a20;
         
     | 
| 
       3248 
     | 
    
         
            -
            	A21& a21;
         
     | 
| 
       3249 
     | 
    
         
            -
            	A22& a22;
         
     | 
| 
       3250 
     | 
    
         
            -
            	A23& a23;
         
     | 
| 
       3251 
     | 
    
         
            -
            	A24& a24;
         
     | 
| 
       3252 
     | 
    
         
            -
            	A25& a25;
         
     | 
| 
       3253 
     | 
    
         
            -
            	A26& a26;
         
     | 
| 
       3254 
     | 
    
         
            -
            	A27& a27;
         
     | 
| 
       3255 
     | 
    
         
            -
            	A28& a28;
         
     | 
| 
       3256 
     | 
    
         
            -
            	A29& a29;
         
     | 
| 
       3257 
     | 
    
         
            -
            	A30& a30;
         
     | 
| 
       3258 
     | 
    
         
            -
            	A31& a31;
         
     | 
| 
       3259 
     | 
    
         
            -
            };
         
     | 
| 
       3260 
     | 
    
         
            -
             
     | 
| 
       3261 
     | 
    
         
            -
             
     | 
| 
       3262 
     | 
    
         
            -
            inline define<> make_define()
         
     | 
| 
       3263 
     | 
    
         
            -
            {
         
     | 
| 
       3264 
     | 
    
         
            -
            	return define<>();
         
     | 
| 
       3265 
     | 
    
         
            -
            }
         
     | 
| 
       3266 
     | 
    
         
            -
             
     | 
| 
       3267 
     | 
    
         
            -
            template <typename A0>
         
     | 
| 
       3268 
     | 
    
         
            -
            define<A0> make_define(A0& a0)
         
     | 
| 
       3269 
     | 
    
         
            -
            {
         
     | 
| 
       3270 
     | 
    
         
            -
            	return define<A0>(a0);
         
     | 
| 
       3271 
     | 
    
         
            -
            }
         
     | 
| 
       3272 
     | 
    
         
            -
             
     | 
| 
       3273 
     | 
    
         
            -
            template <typename A0, typename A1>
         
     | 
| 
       3274 
     | 
    
         
            -
            define<A0, A1> make_define(A0& a0, A1& a1)
         
     | 
| 
       3275 
     | 
    
         
            -
            {
         
     | 
| 
       3276 
     | 
    
         
            -
            	return define<A0, A1>(a0, a1);
         
     | 
| 
       3277 
     | 
    
         
            -
            }
         
     | 
| 
       3278 
     | 
    
         
            -
             
     | 
| 
       3279 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2>
         
     | 
| 
       3280 
     | 
    
         
            -
            define<A0, A1, A2> make_define(A0& a0, A1& a1, A2& a2)
         
     | 
| 
       3281 
     | 
    
         
            -
            {
         
     | 
| 
       3282 
     | 
    
         
            -
            	return define<A0, A1, A2>(a0, a1, a2);
         
     | 
| 
       3283 
     | 
    
         
            -
            }
         
     | 
| 
       3284 
     | 
    
         
            -
             
     | 
| 
       3285 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3>
         
     | 
| 
       3286 
     | 
    
         
            -
            define<A0, A1, A2, A3> make_define(A0& a0, A1& a1, A2& a2, A3& a3)
         
     | 
| 
       3287 
     | 
    
         
            -
            {
         
     | 
| 
       3288 
     | 
    
         
            -
            	return define<A0, A1, A2, A3>(a0, a1, a2, a3);
         
     | 
| 
       3289 
     | 
    
         
            -
            }
         
     | 
| 
       3290 
     | 
    
         
            -
             
     | 
| 
       3291 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4>
         
     | 
| 
       3292 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4)
         
     | 
| 
       3293 
     | 
    
         
            -
            {
         
     | 
| 
       3294 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4>(a0, a1, a2, a3, a4);
         
     | 
| 
       3295 
     | 
    
         
            -
            }
         
     | 
| 
       3296 
     | 
    
         
            -
             
     | 
| 
       3297 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
         
     | 
| 
       3298 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5)
         
     | 
| 
       3299 
     | 
    
         
            -
            {
         
     | 
| 
       3300 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5>(a0, a1, a2, a3, a4, a5);
         
     | 
| 
       3301 
     | 
    
         
            -
            }
         
     | 
| 
       3302 
     | 
    
         
            -
             
     | 
| 
       3303 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
         
     | 
| 
       3304 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6)
         
     | 
| 
       3305 
     | 
    
         
            -
            {
         
     | 
| 
       3306 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6>(a0, a1, a2, a3, a4, a5, a6);
         
     | 
| 
       3307 
     | 
    
         
            -
            }
         
     | 
| 
       3308 
     | 
    
         
            -
             
     | 
| 
       3309 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
         
     | 
| 
       3310 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7)
         
     | 
| 
       3311 
     | 
    
         
            -
            {
         
     | 
| 
       3312 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7>(a0, a1, a2, a3, a4, a5, a6, a7);
         
     | 
| 
       3313 
     | 
    
         
            -
            }
         
     | 
| 
       3314 
     | 
    
         
            -
             
     | 
| 
       3315 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
         
     | 
| 
       3316 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8)
         
     | 
| 
       3317 
     | 
    
         
            -
            {
         
     | 
| 
       3318 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8>(a0, a1, a2, a3, a4, a5, a6, a7, a8);
         
     | 
| 
       3319 
     | 
    
         
            -
            }
         
     | 
| 
       3320 
     | 
    
         
            -
             
     | 
| 
       3321 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
         
     | 
| 
       3322 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9)
         
     | 
| 
       3323 
     | 
    
         
            -
            {
         
     | 
| 
       3324 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9);
         
     | 
| 
       3325 
     | 
    
         
            -
            }
         
     | 
| 
       3326 
     | 
    
         
            -
             
     | 
| 
       3327 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
         
     | 
| 
       3328 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10)
         
     | 
| 
       3329 
     | 
    
         
            -
            {
         
     | 
| 
       3330 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
         
     | 
| 
       3331 
     | 
    
         
            -
            }
         
     | 
| 
       3332 
     | 
    
         
            -
             
     | 
| 
       3333 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
         
     | 
| 
       3334 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11)
         
     | 
| 
       3335 
     | 
    
         
            -
            {
         
     | 
| 
       3336 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
         
     | 
| 
       3337 
     | 
    
         
            -
            }
         
     | 
| 
       3338 
     | 
    
         
            -
             
     | 
| 
       3339 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
         
     | 
| 
       3340 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12)
         
     | 
| 
       3341 
     | 
    
         
            -
            {
         
     | 
| 
       3342 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
         
     | 
| 
       3343 
     | 
    
         
            -
            }
         
     | 
| 
       3344 
     | 
    
         
            -
             
     | 
| 
       3345 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
         
     | 
| 
       3346 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13)
         
     | 
| 
       3347 
     | 
    
         
            -
            {
         
     | 
| 
       3348 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
         
     | 
| 
       3349 
     | 
    
         
            -
            }
         
     | 
| 
       3350 
     | 
    
         
            -
             
     | 
| 
       3351 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14>
         
     | 
| 
       3352 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14)
         
     | 
| 
       3353 
     | 
    
         
            -
            {
         
     | 
| 
       3354 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14);
         
     | 
| 
       3355 
     | 
    
         
            -
            }
         
     | 
| 
       3356 
     | 
    
         
            -
             
     | 
| 
       3357 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15>
         
     | 
| 
       3358 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15)
         
     | 
| 
       3359 
     | 
    
         
            -
            {
         
     | 
| 
       3360 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15);
         
     | 
| 
       3361 
     | 
    
         
            -
            }
         
     | 
| 
       3362 
     | 
    
         
            -
             
     | 
| 
       3363 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16>
         
     | 
| 
       3364 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16)
         
     | 
| 
       3365 
     | 
    
         
            -
            {
         
     | 
| 
       3366 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16);
         
     | 
| 
       3367 
     | 
    
         
            -
            }
         
     | 
| 
       3368 
     | 
    
         
            -
             
     | 
| 
       3369 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17>
         
     | 
| 
       3370 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17)
         
     | 
| 
       3371 
     | 
    
         
            -
            {
         
     | 
| 
       3372 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17);
         
     | 
| 
       3373 
     | 
    
         
            -
            }
         
     | 
| 
       3374 
     | 
    
         
            -
             
     | 
| 
       3375 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18>
         
     | 
| 
       3376 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18)
         
     | 
| 
       3377 
     | 
    
         
            -
            {
         
     | 
| 
       3378 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18);
         
     | 
| 
       3379 
     | 
    
         
            -
            }
         
     | 
| 
       3380 
     | 
    
         
            -
             
     | 
| 
       3381 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19>
         
     | 
| 
       3382 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19)
         
     | 
| 
       3383 
     | 
    
         
            -
            {
         
     | 
| 
       3384 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19);
         
     | 
| 
       3385 
     | 
    
         
            -
            }
         
     | 
| 
       3386 
     | 
    
         
            -
             
     | 
| 
       3387 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20>
         
     | 
| 
       3388 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20)
         
     | 
| 
       3389 
     | 
    
         
            -
            {
         
     | 
| 
       3390 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
         
     | 
| 
       3391 
     | 
    
         
            -
            }
         
     | 
| 
       3392 
     | 
    
         
            -
             
     | 
| 
       3393 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21>
         
     | 
| 
       3394 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21)
         
     | 
| 
       3395 
     | 
    
         
            -
            {
         
     | 
| 
       3396 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21);
         
     | 
| 
       3397 
     | 
    
         
            -
            }
         
     | 
| 
       3398 
     | 
    
         
            -
             
     | 
| 
       3399 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22>
         
     | 
| 
       3400 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22)
         
     | 
| 
       3401 
     | 
    
         
            -
            {
         
     | 
| 
       3402 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22);
         
     | 
| 
       3403 
     | 
    
         
            -
            }
         
     | 
| 
       3404 
     | 
    
         
            -
             
     | 
| 
       3405 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23>
         
     | 
| 
       3406 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23)
         
     | 
| 
       3407 
     | 
    
         
            -
            {
         
     | 
| 
       3408 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23);
         
     | 
| 
       3409 
     | 
    
         
            -
            }
         
     | 
| 
       3410 
     | 
    
         
            -
             
     | 
| 
       3411 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24>
         
     | 
| 
       3412 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24)
         
     | 
| 
       3413 
     | 
    
         
            -
            {
         
     | 
| 
       3414 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24);
         
     | 
| 
       3415 
     | 
    
         
            -
            }
         
     | 
| 
       3416 
     | 
    
         
            -
             
     | 
| 
       3417 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25>
         
     | 
| 
       3418 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25)
         
     | 
| 
       3419 
     | 
    
         
            -
            {
         
     | 
| 
       3420 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25);
         
     | 
| 
       3421 
     | 
    
         
            -
            }
         
     | 
| 
       3422 
     | 
    
         
            -
             
     | 
| 
       3423 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26>
         
     | 
| 
       3424 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26)
         
     | 
| 
       3425 
     | 
    
         
            -
            {
         
     | 
| 
       3426 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26);
         
     | 
| 
       3427 
     | 
    
         
            -
            }
         
     | 
| 
       3428 
     | 
    
         
            -
             
     | 
| 
       3429 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27>
         
     | 
| 
       3430 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27)
         
     | 
| 
       3431 
     | 
    
         
            -
            {
         
     | 
| 
       3432 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27);
         
     | 
| 
       3433 
     | 
    
         
            -
            }
         
     | 
| 
       3434 
     | 
    
         
            -
             
     | 
| 
       3435 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28>
         
     | 
| 
       3436 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27, A28& a28)
         
     | 
| 
       3437 
     | 
    
         
            -
            {
         
     | 
| 
       3438 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28);
         
     | 
| 
       3439 
     | 
    
         
            -
            }
         
     | 
| 
       3440 
     | 
    
         
            -
             
     | 
| 
       3441 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29>
         
     | 
| 
       3442 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27, A28& a28, A29& a29)
         
     | 
| 
       3443 
     | 
    
         
            -
            {
         
     | 
| 
       3444 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28, a29);
         
     | 
| 
       3445 
     | 
    
         
            -
            }
         
     | 
| 
       3446 
     | 
    
         
            -
             
     | 
| 
       3447 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30>
         
     | 
| 
       3448 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27, A28& a28, A29& a29, A30& a30)
         
     | 
| 
       3449 
     | 
    
         
            -
            {
         
     | 
| 
       3450 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28, a29, a30);
         
     | 
| 
       3451 
     | 
    
         
            -
            }
         
     | 
| 
       3452 
     | 
    
         
            -
             
     | 
| 
       3453 
     | 
    
         
            -
            template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31>
         
     | 
| 
       3454 
     | 
    
         
            -
            define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31> make_define(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27, A28& a28, A29& a29, A30& a30, A31& a31)
         
     | 
| 
       3455 
     | 
    
         
            -
            {
         
     | 
| 
       3456 
     | 
    
         
            -
            	return define<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28, a29, a30, a31);
         
     | 
| 
       3457 
     | 
    
         
            -
            }
         
     | 
| 
       3458 
     | 
    
         
            -
             
     | 
| 
       3459 
     | 
    
         
            -
             
     | 
| 
       3460 
     | 
    
         
            -
            }  // namespace type
         
     | 
| 
       3461 
     | 
    
         
            -
            }  // namespace msgpack
         
     | 
| 
       3462 
     | 
    
         
            -
             
     | 
| 
       3463 
     | 
    
         
            -
             
     | 
| 
       3464 
     | 
    
         
            -
            #endif /* msgpack/type/define.hpp */
         
     | 
| 
       3465 
     | 
    
         
            -
             
     |