tmsgpack 0.3.2__tar.gz → 0.3.4__tar.gz

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.
Files changed (29) hide show
  1. {tmsgpack-0.3.2/tmsgpack.egg-info → tmsgpack-0.3.4}/PKG-INFO +1 -1
  2. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/build_pyx.py +6 -2
  3. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/pyproject.toml +1 -1
  4. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/core.c +9 -9
  5. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/core.pyx +1 -1
  6. {tmsgpack-0.3.2 → tmsgpack-0.3.4/tmsgpack.egg-info}/PKG-INFO +1 -1
  7. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/MANIFEST.in +0 -0
  8. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/README.md +0 -0
  9. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/setup.cfg +0 -0
  10. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/setup.py +0 -0
  11. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tests/test_build_pyx.py +0 -0
  12. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tests/test_codec.py +0 -0
  13. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tests/test_round_trip.py +0 -0
  14. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/__init__.py +0 -0
  15. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/api.py +0 -0
  16. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/codec.py +0 -0
  17. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/src-parts/01-imports +0 -0
  18. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/src-parts/02-constants +0 -0
  19. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/src-parts/03-encode-fn +0 -0
  20. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/src-parts/04-decode-fn +0 -0
  21. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/src-parts/05-encode-buffer +0 -0
  22. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/src-parts/06-decode-buffer +0 -0
  23. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/src-parts/07-encode-buffer-slow +0 -0
  24. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/src-parts/08-decode-buffer-slow +0 -0
  25. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack/src-parts/09-exceptions +0 -0
  26. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack.egg-info/SOURCES.txt +0 -0
  27. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack.egg-info/dependency_links.txt +0 -0
  28. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack.egg-info/requires.txt +0 -0
  29. {tmsgpack-0.3.2 → tmsgpack-0.3.4}/tmsgpack.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tmsgpack
3
- Version: 0.3.2
3
+ Version: 0.3.4
4
4
  Summary: Typed MessagePack serializer (inspired by but different from msgpack)
5
5
  Author-email: Yaakov Belch <yaakov.belch@gmail.com>
6
6
  License: ISC
@@ -34,8 +34,12 @@ __version__ = "{version}"
34
34
 
35
35
 
36
36
  def read_version() -> str:
37
- """The single source of truth for the version: repo-root VERSION file."""
38
- return VERSION_FILE.read_text().strip()
37
+ """Read version from repo-root VERSION file, or from pyproject.toml in an sdist."""
38
+ if VERSION_FILE.exists():
39
+ return VERSION_FILE.read_text().strip()
40
+ import tomllib
41
+ pyproject = PACKAGE_ROOT / 'pyproject.toml'
42
+ return tomllib.loads(pyproject.read_text())['project']['version']
39
43
 
40
44
 
41
45
  def render_pyx() -> str:
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "tmsgpack"
3
- version = "0.3.2"
3
+ version = "0.3.4"
4
4
  description = "Typed MessagePack serializer (inspired by but different from msgpack)"
5
5
  requires-python = ">=3.14"
6
6
  license = {text = "ISC"}
@@ -3065,7 +3065,7 @@ static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_stati
3065
3065
  #endif
3066
3066
  /* #### Code section: constant_name_defines ### */
3067
3067
  #define __pyx_kp_u_ __pyx_string_tab[0]
3068
- #define __pyx_kp_u_0_3_2 __pyx_string_tab[1]
3068
+ #define __pyx_kp_u_0_3_4 __pyx_string_tab[1]
3069
3069
  #define __pyx_kp_u_B __pyx_string_tab[2]
3070
3070
  #define __pyx_kp_u_H __pyx_string_tab[3]
3071
3071
  #define __pyx_kp_u_I __pyx_string_tab[4]
@@ -24659,11 +24659,11 @@ __Pyx_RefNannySetupContext("PyInit_core", 0);
24659
24659
  /* "tmsgpack/core.pyx":4
24660
24660
  * # DON'T EDIT THIS FILE. EDIT THE SOURCES, INSTEAD: tmsgpack/src-parts/[inserted by cython to avoid comment start]*
24661
24661
  *
24662
- * __version__ = "0.3.2" # <<<<<<<<<<<<<<
24662
+ * __version__ = "0.3.4" # <<<<<<<<<<<<<<
24663
24663
  *
24664
24664
  * from libc.stdint cimport int8_t, int16_t, int32_t, int64_t
24665
24665
  */
24666
- if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_version, __pyx_mstate_global->__pyx_kp_u_0_3_2) < (0)) __PYX_ERR(0, 4, __pyx_L1_error)
24666
+ if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_version, __pyx_mstate_global->__pyx_kp_u_0_3_4) < (0)) __PYX_ERR(0, 4, __pyx_L1_error)
24667
24667
 
24668
24668
  /* "tmsgpack/core.pyx":13
24669
24669
  * ctypedef double float64_t
@@ -26244,23 +26244,23 @@ static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) {
26244
26244
  {
26245
26245
  const struct { const unsigned int length: 9; } index[] = {{1},{5},{2},{2},{2},{23},{21},{179},{27},{2},{18},{8},{2},{2},{16},{18},{7},{16},{18},{6},{2},{2},{2},{9},{50},{11},{2},{14},{26},{26},{26},{24},{17},{16},{34},{36},{25},{26},{24},{24},{24},{24},{23},{25},{25},{25},{25},{16},{34},{36},{25},{25},{26},{24},{24},{24},{24},{23},{25},{25},{25},{25},{12},{9},{27},{29},{20},{19},{19},{18},{20},{12},{9},{27},{29},{19},{18},{22},{17},{19},{8},{20},{16},{34},{36},{26},{24},{24},{24},{24},{25},{25},{25},{25},{16},{34},{36},{26},{24},{24},{24},{24},{25},{25},{25},{25},{13},{12},{8},{18},{9},{18},{5},{4},{15},{17},{16},{8},{5},{7},{4},{14},{12},{3},{6},{8},{12},{13},{5},{6},{8},{13},{10},{15},{3},{1},{8},{7},{4},{3},{11},{9},{8},{12},{7},{9},{14},{12},{11},{10},{31},{31},{31},{31},{14},{12},{8},{9},{7},{7},{7},{7},{6},{8},{8},{8},{8},{10},{17},{13},{4},{12},{10},{12},{19},{4},{9},{5},{5},{6},{3},{10},{9},{9},{8},{10},{8},{13},{5},{6},{6},{12},{5},{6},{11},{8},{9},{7},{7},{7},{7},{6},{8},{8},{8},{8},{21},{17},{24},{43},{43},{80},{61},{24},{19},{24},{24},{24},{24},{264},{33},{30},{57},{11},{19},{21},{24},{19},{19},{13},{25},{9},{97},{105},{15},{11},{58},{96}};
26246
26246
  #if (CYTHON_COMPRESS_STRINGS) == 3 && __PYX_LIMITED_VERSION_HEX >= 0x030e0000 /* compression: zstd (1734 bytes) */
26247
- const char* const cstring = "(\265/\375`\"\021\3455\000ZE\200\016E\360\222\250\r\314\300\354\004[\0237;6]\326\235B\243\303\032RH\232\270{\264\010\373\335\275\211D\226\337FkI\261\235\\\245\204\2124Q\247a2\014 \323\246%S\023\330\211F\244\253\200\236'\010x\221aD\004\306\000\301\000\332\000\224\202^@\323T\377\3777\222\304T\353@,U\235\237T\2055\204\311S\323@$P\215\232&\241\212\255\264\364Zu\021\201\240\n\n\312\211\311\006\370\246*o\326\026\276f'\327\242\363x\223,\237\242\227j\260\304Ti\254\226f\231m\255\262\004\346\307\260>\226\034\264\031j\377\025j\353\301R\013\354\340\347\274\014+\315\033\325$X\262\020?\306r\233$\215!\316\363o\374\205Z\225\360\223\3621q\261\342\002\326\373y\322\2331\364\266\317\362>\211n\257ALa\265/\331+\001\263|\311\360e\226\032\314\232\253\024\276\230\264\255\017\263e\001U^o2\005\253\374\315Z\022\334\244\351\267\255\245\005\204\002D\002t\322\341\320\3310\"\366\376\2465+\363S\211\332r\246\033F}\246\021SS\234U\227b\324>~\214\323j1\242\354-\305X\322$m\222~\312\233\3436\357k\327\342\2574k{\355\354X:\253\207e\214\327\336\273\262bT\2220J\377\"\303<\213h\002\306s\021\343s\336\350\253eq\363\317\372\272{\2345\267q:\303\344\022W\205e]\371\234\350\317\211'W\232\222\245\335J\332\315\371q\214\263s\277T\322$\336\304cI\002\306\343:\177\355\324p\232\2223a\224\2261\335\340\265\245m\223\023\306?\311,\342\347\325\026\337\214A\035\376\354\221b\314\264\322\271I\232\2427\233T[\265\006c\374\251\265\2771\302\274i\tm\325p3\3317\352\026,\360\002\035\t'\300Y\341 Y\307:\n\377xe,\214\245\002z>\316\347\241?W\205\370\003L\246k\205x|(=\245\263\260\263\235a!\033\001\310+\324Ez\007\236I\366\312F\260\231\t}\236\017\305\007p/\3245\275\343\036\262W\350Y'\300Q\272-w\212\025\310\346\205\261\272\317\244\263\360\017\237\325\207\356\262\253\270\344 v^\205l^\036\356`\363\n\305\204>\031=\324?p\016\037\261\372\320\314`1\034\226\207\357D\367\364\013<\343\"V \002\000lv`1\024\337O=\326\032\247\253\356\304\210=\234\247\276\330\373S\314\327\342\322\006\363\233\324\035I\346\324o\247I\271\2529/\347M\343\277(\215O\363_\346_\311""\375\345,\027\243\352+J\326\2477\327\217\001Y\211\010\273\003\214\357\344K\360\235\262\257C\204\326\010\215\313\363r\031\271\252\014\013\007\027\207u\342a\347H\351\024D\\\"\232\327\013\221\353$\003\242\365\301\332\000]\035\227\220\352\264TX\371\223\037\311\004\215\253\353\036\242>\242\000\323\341\241\303F\313\304\022\261FX\236\020\327\202\235`\204\257l\031\253T\214\207\346%{\006\316\262=\373\304\nD\363\312\366hu@\2641\254\nh^X\214\210\025b\211x\375#c\2472>\332\241\255\347\247\342\360\006\237\202\017\213\321\275\370 \372R\007\370\202\231\022\256\221\340^#\300\347q\276\354+\351.\005x\267?\031\307\270\212\014\302ff\213v\213\210\247\024p \2742\03580\035^K\266h\260TZ\366\204\031\233B\002\003/\006}\304M\273\302vY\031\330\314\210x\210\213p\034'\366\210\214\224\201\320\302Z!\276\030\335\344\261\273\201\214\250\241\241q\206fDD$\005I\n\031\016\321\014Q\2269\307\324\003\202y\254\304@J\021\203\214!\212\010\013\304\024\244<\ni\rl\r\324\264\255\356P\252\262\252\002R\260d\247u0\365h\037\340\262\330\327\364y2\032\302\325\001F\253\355\336\315\223/\360) \275\362\273\300;R\016\207\314\027l\357_I\223\346W\337\200\350eL\021\376\322\2517\203\215\372\344'\346R\322\216z\356v\010\267c+\200\250t\202/\315\316\331q-I\020\341\342A%ab\257-D\343\005\327\014\006\327]n\330\227\354\200\257f@\223\372\221q \002\010a\270\024\340\346\355-#{\360F\204\204\002\256\303\033_'h\234+\327m\301\331A*\272\016\233\014\366A$/#6\341\264\365\206\353\017A`k\320C^t\331\261\317\027\222M!\tC\242\255\r\275\373\304\341\031!\223\n\374D\002\300\374CV2Qi'Ns\345y\277\0313\375ed\216\301{\331)L\260\035Vl^\204\323\025\311\317\257?\325\200\004\204\364t\002!\302\377fx\211\210g\252\370\233\026\272\226Al\361\0033@{1^\2002\233x\355\234\001\375\240r\234\210A\213\246~9\225\304\247\016\206\252B\220*{\014\033}zG\267\316\221\377\r\200\370\r\031R\241f\231\032\342\265@\223&\367\246\317\034\200\372z\2178_\370>\037\374\t\001\356/\252\032\003$u\220\314\005\375~P\265F\324\t\007\240\321\001:\201\277\010:k,\316\013O,\037\273@\231\255I\027\204s""\356S=\340\355e\245\034\"\213\377\370I@\313\004\212:\220[\244\354\266\213$wy\232\366I\227O\323\n\344\206\225\372s\274\326\302\266\010-\247a\350k^\241\210\307\226\021\337[qB4\321Z\303\343\262\n\305i\005\274]\3105\331\005\276$\266{\317\214\366\227G\236%\351Z$\227\002\321\211\017\375-\371\346U\241\270H\2335\251\224\300\210\317\241VEe\3404:Ber\377m\2232v3\325\3704\340\003\014L\205\300\010\246c\365\006\t\314\032\025ia\276f\007\210\224\363\r\263\242\250'\317\234j\035&\216l\2225\314\014\321\211\324\222\350\327\260\353\302h\371u\007\224qzt\260/\226\006\250\217\212b\334\345\025\200\363\2444\t\346b\375\305\205\222-\014\210t\267\307\275\303\017>h\363{\250T\035\004V\345\307\327\211\276=\242#(5\267}\337\372\001P@\364\316\321\262?\317\034_\221u\266jt\330\255\217\246\367\024e\n\373\277\366\223\300\215V\260\306/\3552Z\223\013\345\233\316\235\353\372\212\267\\\324\270A]\341i\010\217\037\323=\364Q\023i \235j-q\003Mx\356\263\037\243\363\361\344\311\016t\310$\224a\342\005\251S \214A\333k\0067h\266\334! \177\014\346<\350<\355\253\n\264\270I\315\022\014\010\006\225w\201-Y\307B\334\n:TF\375G\234vj";
26247
+ const char* const cstring = "(\265/\375`\"\021\3455\000\332E\230\016E\360\222\250\r\314\300\354\004[\0237;6]V1\212F\2075\244\2204q\367h\021\366\273{\023\211,\277\215\326\222b;\271J\t\025i\242N\303d\030@\246MK\246&\260\023\215HW\001=O\020\360\"CM\004\307\000\302\000\334\000\031\2464\364\022\232\247\372\377\257\225$\246\231\007b\271\362\374\244+\254!L\236Y\026*\205j\3142i+5}V]F!\250\202\202rb\262\001\376\251\312\233\265\205\237\331\271\265\360<\326$\313\253\350\245\031,9U\032\253\245Yf[\253,\201\3711\254\377\222\261\334\240\3150\373\257P\333\016\232Z\240\007\377\326eXi\326\250.A\223\205\3701\226\332,i\014q\236\177\343/\314\252\204\240\024\220\211\213\025\027\260\336\317\223\336\214a\247}\226\367KT\373\014b\n\253}\311]\t\230\345K\206/\263\314`\326[\245\360\345\244m}\230-\013\250\362Z\223*X\345k\326\226\240&O\257i--!\024!\022!\220\207\203g\303\210\366\276\2463+\363\307X\251Li9S\r\247>\323\210\351)\316\252M1f\037?\306i\263\030S\366\232b4\351R6K?\345\315Q\233\367\263k\361W\232\265\275vz,\235\265\3032\306\217\361\332{WV\220L\022\206\351_d\230g\021M\300t.b\374\255#}\265,n\376Y_s\217\263\336\264Mg\230\\\342\256\260\254+\240\023\r:\371\344JS\262\264\232)\2739?\216qz\356\233L\232\304\233x,I\300t\233\347\257\235\032PSn'\234\3122\246\032\274\326\244ir\302\370(\231E\374\274\332\342\233q\210\303\237\273R\214\231V:5IU\364f\223\2523\030\343O\235\375\215\021fMKhk\036\233\233\301<R\267`\201\027\340H8\201\316\n\007\301\272\246\243\360\217\027\366i>\025\360\343u<\017\375\371J\304\037hd\270V\210\207\207\322S8\013\033\333\230&d#\000y\211\272H\357\3003\311^\331\01083\"\357\343\245\370\000\336\365M\347\270\207\354\025:\326\tp\024n\313\235\202\005\302yi>\3163\351,\374\003\210\365\241\273\354+.9\210\235Y!\234\327\207;\340\274D1\"OF\027\365\017\274\303G\260>63\232\230\316\347\301;\321?\375\002\307\270\010\026\210\000\000\234\035\232\030\212\357\253\036\353l\323U{b\304\035\316S_\334=*\346kq4i0\257I\315\225dV\275\206\232t\253z\353r\3264\376\233\322\0305\377e^\271\375\335\354\026\343\352kJ\326\2477\327\217\001\030\310\253D""\204\335\001\206w\342%\360P\230\327!Bk\304\306\365y\271\220\\U\206\205\203\253\363\235x\3309R:\005\021\227\310\346\365b\344B\311\200h}|\033\240\213\343\022F\237\312\323R\371\262'=\222\t\033\027\327=F}D\201F\207\207\016\033\255\3237\372F\276O\210k\301\202\235`\204\257l\031,U\214\307\346%{\006\316\262?\373\004\013d\363\3026\211u`\2641\260\nl^\232\230\321'\372D\272\016\222\261U\030'm\321\326\323[ux\003O\201\247\211\301\275\3700\362T\007\370\202\231\022\236\221\340^#\200\327u<\314+\351.\0058\267A\030\327p\025\030\004\316\314\036\355\226\021W)\350@xa:phtt-\331\242\361\251\264\354\t36\205\004\006^\014:\211\237v\205\355\3022\300\231\031q\021\027\3418N\354\021\031)\003\241\245i\205\360b\364S\201\207\250\241\241q\206fDD$\005I\n\031\016\301\014Q\3269\307\324\003\222\2718\211a\230\"\006\021E\020\021\026\210)Hy\024\322\032l\rtX\333\\e\221\n\340\200\345K\353e\352\2172E\311\3307\367\331<\032\372\325A\243Q\373m\244'\n!\361\312\344\002\227z\t\034^]\260|\377\n\231\264\275\270\003\256\227A\341\377\252X\317\253\372\227&\364RR\203z\216w\010F\307P\300Di\301G'\231\263K\rN\020\365E\203JR\304\\[\010\216\027\252\231\030[\363\202a\257a\007\027u\003\232\324\217\236\003\031@h\303\240\000Bo/\216\320\303\233.\022\352]\2207\274N\3608W\326m\300)C\"\272\n\333\005\376A$\216\021\233w\332b\303\265\207 \263\265\321Cf^v\200'\205\274\217d\204\201\247\255\203^\374D\367l\202I\t?\301\000p\376!\000\231\250\264\023\2639y\276\334\360L\327\036\331\224\311d\250w\n\023D\207\274\315+uz}\362\216\353\373j\300\003\342\370\031\001'\302s3|F\304\227*~H\013M\313`[\034\002\031\240\221\030_\200\202\r\262v\212\305~P5\002be\242\371_\316\307\361\371\203\241?\020\244O\317y\003\234\216\350\276{\310)\201\267/\014\251\244\312dB\211d\201\016NV\232\216r\000\352\353=\314\371\226\357#\301\037\020 \336F\305c\200X\007\231\271\240\345\007\025\326\210\n\341\0006:\320&\360\037\2413@\327y\331\010\345c\027(\266Ui\2010\325\035\255\007{\373\273\324Ad\344?2\022P4\201b\035h\215\023\263\t\027\241\275xU\333?\003wLU\340\320\260R\334\211z\037C\233""\353\025\364\205R<2\261\345\211?\256\030'\232\376\374\300\203\231\252\213\323\024\370m\220q\2620Ryl\027<\363\324\377\217$J\"hy.\033\242\034\366P\272l\025\252\212\264\231\322\267S\307\261\021\250\215\334V\206\3443rG\356\317\365S\244n\026MO\003>\305\306L\270l\302\261X\t=n\317\022=V\007\350k@0\016\337\256\362V\357\013\003\252u\2508\262K~b\246\022\235\242K\252y\221\272\"X\235_\031\340b\322\243\301(\\\032e\207@\024\017k\020\300n\204o\014\363\261Nt\326d'\001R\335\3318\356\374\366\203\320\0374\225F\3103rG\261\204\246\003\020\230xb\317h\333\260\316\002\334\004yg\303\031\333s\021T~:\0037\002\014\353_\363{\216\262\205=\272\302$\213\306\"X\343Kk\031\375\344\200\362\275y\007tM\337-\020j\240\245\256\2354\263\307\217\315\036\362\250\2377?\375j\037\361\203\246j\356\262\037\251\363\325\311\347\016\374\310$\227A\327\303\200\2403\005\2041\360^\220\220L\263\303\275\001\371\306\034\3471\340iKO\235\222\263X\226\2329\006\002\006%\273 \227\270\273\027\264\254\214\376\217h\222\325";
26248
26248
  PyObject *data = __Pyx_DecompressString(cstring, 1734, 3);
26249
26249
  if (unlikely(!data)) __PYX_ERR(0, 1, __pyx_L1_error)
26250
26250
  const char* const bytes = __Pyx_PyBytes_AsString(data);
26251
26251
  #if !CYTHON_ASSUME_SAFE_MACROS
26252
26252
  if (likely(bytes)); else { Py_DECREF(data); __PYX_ERR(0, 1, __pyx_L1_error) }
26253
26253
  #endif
26254
- #elif (CYTHON_COMPRESS_STRINGS) == 2 /* compression: bz2 (1861 bytes) */
26255
- const char* const cstring = "BZh91AY&SY\377\2326U\000\001Z\377\377\357\377\377\277\376\257\377\377\277\367\377\370\277\377\377\364@@@@@@@@@@@@@\000@\000`\007n\303}\264\325\\\335\335\313b\331\251\255(8\004\022\210\210P\375Sj\032mM\2654\236\322i\223h\223#\324\031=OI\243M=L!\241\246\203\021\243FL\232\032z\230\311\211\224\022I\240\203D\3212d4\223\014\240\r\006\200\000\000\000\000\000\0002\r\031\007\244\020`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\247\372\252\004M@44\320\000\000\000\006\206\200\000\000\000\000\000\000\000\004\030\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001)\242\022i\243@\021\246\232M\244\364\232d\206\324\006\214\232\000\000\000\032\000\032\000\006\217P\002*k [\261al\362\211i\333%\241\302\334Q\327F*E\346D\272\250\267X\256\241|\217\035:L\215V_\301?\324\302\224\300\201\nB\224\204\210\210\224\002\0142f\021JY\010C!3\343$nH$0\211E\004\"O\000p\t\024\200\215\343\t\264$\356`<\3360\010\021l \3247\320=\264\235+H\221\2109i\0328< \020\222E\303\252\262\320\304\255\373\213\374\263\253\323\360\237\247\373I\374\247\350\307\2501\325\204-\177\023\256\217\346\037\255l?\233mT\246Q\275\354\344\241m,x\023S\344$B\004l\000\225\205\205)*5\004qZ\257\214Q\365Jj\204Q\\\215\305\341h\350\267\224\322\335\351:e\364\247\2339\224@\204\337\276\211m\2456\036`\303\260\201\214\224\301\330Z\001\263\3463@;\340\323\r#\001\352qX\t\366?\037\2679\202\261\027\337\354{.T\211(\004\032\243\330\321\204\007G\035\006E~A\031%\304\022\027\266>\270\021\270\371!r\333\321/\363\227\r\313\365\010\373\200\371\343\337\203\014\242\302Q\224\017\217\227\3177x=\375|\0178\306<\352I\212\024\245(\363\214c\031\350HA\247D\020(\262\272E\333K\316\177gA%J\024\244hq\334\263\233\227\334s\216De\310S\2639\211\202a\370[z\256n\207f&q^\335\341W\360\352v\200\266B\322\335-W\233\374<<.\356\375\tM\211\316swwx\341\014\265k2\301#61}lE\311\272lM,ax\032\264$\030\367]\241\t0.P\022\007`\341}\350\204\032m\251\266=\032\234\367\225\226O\255\311#\2220/\006\277w\224,v\312\221\025\356\365|\t[+\"\221y\347)\335\252\251\000R\004\356wOUI""$\344\224BI$\220\000\025\333d\276\256\225\255S \224\223\tdRKU\325m\352\255\225\325]\327L\026K\312\256\270\000\000\013$\275-.\255\\\272\346\236+\264bY\272b\026\016\222\377;\335!\340tz\300`\273\235\025\315\237\303\313\035\343d\273\264\222w1$<\370\222y\350\203\312\305\037 'LDH\021\032#H\023\314\322\214\207\314<p\222\345\242|y\335\014!oi\313 \245fY\3301c\326'\t\202\2425\225m\222\270\010\222\221% \000\022\211B6>L\366\006\nR\346k\341\223\263HKD\021k!\257@I\204\261\256\316d\253\226\235\010\004_\246\355\374!\2043$\367Q\330C\331\276pk\306\376^\254s\231\236s\214\022\020KC3\014\314\300@\000\n\000\020\003?UK.\313L#+\360(\255\236\355QJ\023\320\325M$\222I$\235\236\302\270k\023\027T\251;\367#\233\244\204\020,\353j\335\2700|\003<h!\244\347R\325\0222\234r*\367Z]&\327\213\333\225\203\344\220\227\ruFF\250\013n\020\311\200\275\246n\261\255\200\2624jc\374Wg4\340:\032\266^@nP\204\332\222\022d\204\236\361k\006X8\275\t\342\010\336b\377l\031w\362\266\224\001\271\213\210\333\r\246\326\215(U\341\257>[\271\344]\277\222\304\275\204\000\000\000\000\"\"\210}4\254\347\r\267\213V\270R\367\2701I[\004\265qDu\233\2002\345_\035\270\004Fj\226Ugf\321P\332\332D\330-\310\001k\324\266+j\206bz\tM\354wB\202\334C\251\025aW`\352w\2430=k\231\\\254\304\213U\020\215\022\261\032\007\271y\212 \0246g\233\021\336\310Wn\240\021\314\251\232g:\346\022\264\346\357\360Y\274\026eP\322YZ\004\266\324\\\250\277\241\263R\3559\251\236\350P\023\232\256Kc\253\313iX\257\315\323\007;L\316\347\243\322}k\211\330\206\351<\344\035QK\317\034\340M\230\302\213\031\201\234\202\225$\325R\224\245x\265\3420\360\3230\233T\306Ld\306X\230\251jZ'|\350\255\227@\320[\317\214!\320\330[Y#\223\034B\274\344^\201\343\033\200\221\004H.\311\322KJ+&&c\004\031\233\025\325\306\025\217\036\005C\212\251\340\312\264*L\t\213\334\016\323U4\210\330\253\253}\361c\342\275\222\025\3078A\202\244\223$\220$\221J.\242\035_\254\212\303%\327f\257\247\037\236\355X\035\304\356\356\256c\223`B\032\214Z\n\270\351\314\311\0262\2231\270\020Ie\221\031\343F\242z\242-\235\274t\304""\260``I\341+UE\302A\332\000\210G#\r\261\216L\2365g(\305\365\220i\010\351\207~\3143T\366\000\324\313Z\\\374s\rY\312\345\2106Bf\021\214\336i\\b\206wK\267)\230*\315U\302\303Uh\300\2164q\243\215\034jH\334D\3214N\371\334\rm\203\006\264+S\0024\370\226\341\353\324\024\226\350\007;|f\334\2550m\026\333\313\010\321\341\037B\320\275}}\243\205I\336\236L\245%7\234j\245T=\266;\032\350\232\252\240\033\006\2653P\232\250(\250\217\253\005\331#\250\227\320T\025x~h\207\221\3362r^Q\014\262\321$\333\375\025\364\267\010:\337\304\304\262\210\351\274\014i\375C\nmu\023\201\026*\261P\235\313\224m\023\"A\241F\364\323\367\302}\326\306N\211?h\257B\235\016\330\240\273\326h\257\027y\204\362\220\245\003\202\342{\220\307\032\340\264\255\tcd^B\032U\007)Y\335\210%\032J\036peZ0\303\217\276:\214\020\202yB\257~\023\226\341\237\250-^\034jY\255\010e\343O\252b\205e\266,\023n\261\014\331\231\213\352\202\0106[\2132\246\255\304A\215\235r^\340\324\r<\306&.\222U\304\n\232\362\262\365\364v\310%\225\364\302\014\242\302\312\0228?\037?\"\215\377`,\247\2449\272\032\016vB\352gz$'R\265j\256^0T\324%\021\344\274\022\036\235\223\276\306\274I\347x\360r+9\026 8\321\325\032tU\307d\356A%ZHx$\024\036PLv\"\035\210T!\351\t\232\034\240\356\362\240\322C\311\277\361w$S\205\t\017\371\243eP";
26256
- PyObject *data = __Pyx_DecompressString(cstring, 1861, 2);
26254
+ #elif (CYTHON_COMPRESS_STRINGS) == 2 /* compression: bz2 (1865 bytes) */
26255
+ const char* const cstring = "BZh91AY&SYe\263\316\252\000\001Z\377\377\357\377\377\277\376\257\377\377\277\367\377\370\277\377\377\364@@@@@@@@@@@@@\000@\000`\007n\301\365J\254]\335\311\033f\226\264\240\340\020I$)\250=M\250\017Se4o\324\230L$\310\320d\364\322h4\3650\207\250i\240\323F\215\0322hi\352\017&\232i\004\222h \023D\332\2311$\303H\003A\240\000\000\000\000\000\000\014\203F\324\036\220A\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\032\237\352\242\nb\200\323M\021\223\t\246\203F\206\2154\332\214\001\014\2150#F&\206L\206\020\304\310\300\020`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\246\220B4\320\323E6&\206\243\322\237\246\222\033P\032\006\203@\000\000h\000h\000\0324\000\214\265\020o\332\264\326\367\205r+e\302\023~1\024C\231F\340J\363&\274\346\211\027\3529\312\244\323V\354\354\263\321L\222\231P!HR\220\221\021\022\200A\206L\302)J\241\010b&|$\215\351\004\206\021(\240\204I\336\016\001\"\220\021\300_6\204\235\313\307\233\306\001\002-|\032\206\304\017]'K\251\0221\007+#G\007\204\002\022H\260us-\014J\277\270\267\3138\372\236\023\365?i?\224\375(\365F8\341\n\337\304\353\243\371\207\353uG\363]j\224\3066\275\\\224+\245O\002j|\204\210@\253 \335\267n\345\340\272\024Y\333a\00662\356\231\024\0325~\376+\222\033\376c\321\373q\221t},\271\213\204\010M\373\347\216\362Ra\344\014;\010\030\311<=e\234\0336S4\003\276\r0\3220\036\245\001CW\027?\333\233\314\025H\266\337c\331r\342$\240\020\202+\333H\301\"2\007\243Fb\226\341\230\333\257{\337&Z\177_\333t\177\252\347oUj\216D\030w\201\363\307\277\006\031E\204\243(\037\037/\240o\356\367\366\353y\3061\347RLP\245)G\234c\030\317BB\r: \201E\225\222,\334Zt;:\t*P\245#C\237b\316o`q\316H\220\273!>\274\244&\t\007\341etvvu\341#m{\374k\006-N\320\013\"--\323\312\323g\017\017\013\273\277FSbs\234\335\335\3367\303\034\265\030\336\221\233\010\276\246\"\344\23566\215\241X5HH-\337v\202\022`\\\300$\016\301\306\374\021\0104\333&\326\364jt\036UU>\267$\216H\300\264\032\335\376P\260\335*DV\273\334\367\313\265\027f\266\026\323V\373\257\313\2167I&\026\212\326|U""\307\020\254\271k\000\000\001k\356\231\313R\313\324\314\224\223\"\350\244\227\255[\361\255\362\325\266\030L\267LU\303\000\000\000.\223\031y\205\226\230X\323\301v\214K7PB\275\322_\347{\244<\016\227X\013\327s\242\354\331\374<p\3405\313\273I(\263\024\230\362\305+\214\221\035\234\304\261\344\371\211'\245\000\240\036\2740\024\344\313:8\241*\033\004\366\346t0\205\301\246\350\204\352.\225\361\213\357P\234$\nh\326Q\274G\000\"JD\224\200\000J%\010\370:\373\034\254\264\246\014\326\303\027f\220\226\210\"\266CZ\200\223\tav\276d\256\307N\204\002-\323f\313\341|3$\366Q\330C\325\260\333\253\013yya\234\314\363\234`\220\202Z\031\230ff\002\000\000P\000\200\036\265j\273\r]\362[B\276\272\331)\\\270\333\014%\376\2451\274\000+J\346\231-L\312L\253\251;w\243\233\246\204\020*\353e\277`^\367\206x\320CI\316\255j$e8\342\\\366VY&\325\203\327\215C\342\220\227\r\331FFP\026\353\341\213\001kL\337cS\001Th\324\303\370\273_4\332tr\327i\001\271B\023d\220\223$$\366\213P2\275\305\350K\030C\201\214\035\250]\305si@\0321\3557\203\234\332\321\245\n\254Uf\272\366h\227\263\264\3728\344\000\000\000\000\021\021D>\232]9\303u\242\313T)k\330\030$\253\202YqDu\233hc\312\266;\257\010\214\327\025\\\263\263h\27076\2215\353z\000V\367\025\305nP\314OA)\275N\350PZ\020\352%\030\225\350\035>\360f\007\251vU5\030\321b\232\021\2367\321\234zkb\210\005\ry\346\304x1\025\233\350\004s.3L\347X\302U\234\335\233j\340\n\261\2706\226\326\300\315\255\236\252\027\360,\247d\370\347\277`L\032\007\rQ\342\203\\\332\232\326\276N\2308t\310\3569:/\255mv \335\027\224C\300\024|\361\316zl\246$_f\006r\nU'\267JR\226\327\333E\237\236\232\t\361\246\222i&\222\344\327\245\351x\226\003\221l\274\006r\316\2041\007i\260\262\242'-\260\202\255\310W\001\341k\200\221\002$\027d\351%\245\027I\211\230A\006f\301q\341\013\243\317\274\2708\256O\006WP\2410&+\347\273IP\321!\261UG\023\343\267my \251s\214\030(I2I\002I\023\232\351\241\326\n\210T\031/;5](~{\364aw\023\273\272\246\330\266\024!\250\305`\256\303NfH\251\224\231\215\340\202K\034H\317\n5\023\334\210\266v\361\323\021""\303\205\201'\202V*\nH\207`\002\020G+\r\261\216\\\235Z\216a\214\013 \321\021\322\016\371\230f\241\357\200\323\272\244\272\026\3105f*\2160\331\004\314\"\323\201\243K\0233:]\261<\241FZ)/\232\252F\024nF\344nF\345\024hD\221$K\001\333\215e\361\203Z\025\211\201\032|[1u(\t\307|\003\207\210f\321R`\347\026Y\315\004g\360\317\241g^\276\276\301\306\242\357?&1\212\223\312\032\247D\317m\216\266\252Zl\300\036\323S \260Md0\311Kg\r\254Ha_\276\250\315\273\357H\357\305\375'\256\026\021\224\\%\033\037r\316\216\310\376\177\345a\333J#h\035\001\372GBm\226\026\342h\314\346D\375\354\223\\\231|\374\372|3O\306\351\363kX\372\005\rr\315\034\212=a\201\266\255\323o\347e\305\002\240\305\023r\352\364\243\024\202\021\252\\\025\255a\277\305*\225Hj[\372_\n\235F\017\020:\265:T\261v\310\223\204>\201F\267j\221\275t\316\2605m\334J\231\260\005,,J\025\211\301]\267\306|\333\316Fl\314\306\362\275\357\326\202t\312\272wR\035\004\373\270[$\0104\263\034\247h\252\330aWW\007+WC`~\021gH\037\222Zl\021H\tr3\261\251\363:amy\003\203\217\237\017P/.\367\216J\345\327\257Z\036\023\001\213\006\t\"Tp\223\036~>\333\240\216J\342\367p1\253\303\032\370!\200\211\210\016CC\024]\310\021U$\207\201\020\230\361\201!\330\204\035\210)\220y\3013A\311\216\357\031\215\024<[\377\027rE8P\220e\263\316\252";
26256
+ PyObject *data = __Pyx_DecompressString(cstring, 1865, 2);
26257
26257
  if (unlikely(!data)) __PYX_ERR(0, 1, __pyx_L1_error)
26258
26258
  const char* const bytes = __Pyx_PyBytes_AsString(data);
26259
26259
  #if !CYTHON_ASSUME_SAFE_MACROS
26260
26260
  if (likely(bytes)); else { Py_DECREF(data); __PYX_ERR(0, 1, __pyx_L1_error) }
26261
26261
  #endif
26262
26262
  #elif (CYTHON_COMPRESS_STRINGS) != 0 /* compression: zlib (1746 bytes) */
26263
- const char* const cstring = "x\332\245WIs\033E\024F\205\300&6\004\305Y\212%\320\206\244R\024D\304F\316b\004)%8\301\024\204(q\010\313\241\2535\323\222\007\217{\244\231n\331\2428\370\250\343\034\3738\3079\352\250\243\2179\372\250\243\177\002?\201\327=\213\266\031\010E\252F\356\376\336\353\267\277\327\235\2737\312_\224\327\253\367\252\337V\267\267m\233\266\210\215\032\216cS\302P\227\330\202n\242G\016G\2249\242\265\213,\326\026\034\231\204\023\000)\342\273\204\243\373=\276\3530dy\310\244\266\325\240.\341\324\356!\217\273\226\301\251\253\230\030z\274\365\370z\345v\005\021f\"\227\376N\r\356!O4\014\233x\036\365\220\323D\ra\331\334b\210\367\332\324+\243\355&\3529\0021JM\304\035\324\006\276\311\003|\2272\344Q\256\026\350\032a\314\341\204[\016\303p\334b\255k\310\264\\Pbu\251:\375\200\330\036-\377\3306\034\223\"\007<\000}.a-\212n\\_\337\330\330D\325\3723f\322\246\305@\233\243\3316\0211M\014bi\265Q5M\203\037\"\341)[\016,\203\226\365\376\200x\010\0304^6-\2174lJg\030\351\034#e\212\257eTw\253\226\345E;\2239\020\274&\0216G\030\273\324\024\006\305\030\231B[\317\034v\035\202\331\265 5\030\033\026\2638V\226\241F\217S\017\214\357TU\260Y\313s\204k\320\2579\331\243X\323\220A \245&j:.\262-\217k\212\ti\231$hNMQ,\331\024\220?'k\337k\265\211\261\367\271\341\270\264\334\356\035\336#\036\375\206\252\330\335\023\315&ug\367\345\3243CW\014\306\031\034\220R\320\310\377\201\3075#\337\262\010M\333!\374v\026\305b|-\007_\317\301+9x\246|\010P\026,\362\364\212<\305\"O\263HTo\261\351\030O\356\263c<\303\221\031\343)\036\342\215c<E8p\363\t\343\340\317R\222 d\340\3539x%\007\317\224\037\007\177\026\026yzE\236b\221\247Y\007\1772#\321\372>?L\027\363\241\237$\315\305|L\034\267\353\014\246\032u\006R\2157\003\201\3633\010\027m{\312\203h\r\364t1o\354$i\316\3301\021\306\177d\3534\244L\235F<\332\021\224\031t\006\345\3564\240\257\230G\016\243;0\3661~\334;\204\357\033\220\206\037\321C\376\2046\237\222\346T+\314\356\347=\311\340\230sh\216'\035\036Y\024UG9\370z\016^\311\3013\345\213<\005\"O\203\310S!\022\035\223\371\237\335g\307\354\337\246\304""\034O\332\363Y\224\304\245\254\236\317\301+9x\246|\221\247@\344i\020y*t\314v~\210\256\263-\327u\\\214\343\027\005\224d2\013\211\327c\206\345\224\341\272\203\027\004\274\024<\005;\256I]\303\206-X\212\271K\014\332\000)J\201a6DS}Xw\245\256tS\247\0137]g?\222:\t\250\346\306\272\225p\362\307t\014\214)\310P\037N\033\206j\017\222\265\t\235\002\277\0307\005\003v\214[I\3520\266<\234\032lq\272\357\331\026\3476P\366\t\330\013\377\366)'\372Q\2457\216)\024\021V\256\203)\203W\005\005\002\334\364\300\313\310\276&1z\200\261\nU\333i\303\302\245m\342\002!\235\014\311<\230\234\002q\357\247\016\000;t\272\261K\215=O\354G;\227z\360\376\211\326\261\371j\311\365`P+\301\332\226\261\007\366\315^\217\031\344\311\034\317\220g\333&\203<\177\272\313\325;M\271\337\021\304\216B\221\274D\322\331\021\217\212x2\304\203 \356\373\350\215\2204{\322\333I+'\235;~\374\315\265h\n\320C\325\234vS\267h\234\025X\305\357\307\211\306\305\031M\3549.W\037\336\243=\017HnD\007\323\004<\311{\336\3702J\257\240\364\342I\256\233\361%\203\261b\204\337\370-\250\232\203\352\214A8a/\332\360_\005\n\317\336\324\020\235}\375\003u\325\245\256\247\336\3548yV\244\023%\036 \361\274\210\307C<\r\242\013?\031\001I\307'\r\236\364\363Q\341\257\305W^[\356\177-K\362\223`-x\030\336\032\254\036\025N\213K\375\273rU\336\tj\301\363\260vT\033-\276'\327F\213g\373\334\377R\022y\020\220@D\370R\277\002\340\035\371 \270\036v\006\205\321\342r\377;\237\370\235\210yC\276\021\224\202+\001y\031\326\005\331\t\212A*\265'_\227\373\341ZXK\031O\027\337\366\365\261-\377\002\354\271\274\031\254\004\265\321\362\333\376Y8Z\230X\224\374\222\1775\222\334\371\017\362n\007\033\341\002\330vv\3309.\244\207\337\227\265L\327#)\007\222\006\267\302\325pMA\010\034\370~P\030\224F zIn\004\205\2404\207/\313-\010\312\352\034\376\206\274\000\n:s\370\031yUy\245\360\253\301NX:\035\007N\371\325\361\027\300\210V\360S\370\325\2600\274|L\216\301\261\363\376\303(a\177\310\025Y\223\365\323\3057\373\317\374+~K\356\004\357(kGo\236\373_\333\217\375\237_~\373\221\277\035o7\007\277\014\311""\260\367\242\220\005\377\361\2424\272\274:\r\234.^\004W\273\262\256\342\275\355\327}(\245\323\305\313p\256\244\220\357eA\226\242\354T\374\216<\223\324\332e\371,\270\026\226\302\325q\346z\341\253*\373\021\365\327\300\323\306\215K\341\002\3106\3455%6\326x\252+\343\222|\013R\336\r\353\352`L9\212\013\342\016\204\366\211.\211\316$\364\023\224Q!\274\030j\360]\271\232Y=\223\320A\250\275\032C\2062=\342\022~\315\337\221\245h\323\365\237k\371\225\240\007\325\2612\250\r\352G\205Q\361L\377S\277\036\365\362[\375\035\2774*.\367\037\372k\376\003\371Y@F\305\205\243n\377\271\277%\317\253(\236\363\301\236K\312\343K\272\342\241v\025\207\352\225\223\263k\203\363\203\372\2405\374\355\305\302\013\340\230B\nc\005\027u\357\235\017\352/\257h#X\010:/\251\350\244\370\021$\357BHB>\330\034j\017\313\260\351*gO\213\037\312\316\t\2721X\032~y\274wR\1772*\256\234\254|\034\334\326\235\r\362\377\364o\251\210\257\017VO\276xp\314Nv\236\215`\232\255\235\024\357\016A\365\007\320\2557\303\222Z\354\205\347\302\365\360i\324eK\375\233\376\007\252\313&\232+\273\"\356\253\214\214\226!\255\020\202R\272\370\033&2\030\332";
26263
+ const char* const cstring = "x\332\245WIs\033E\024F\205\300&6\004\305Y\212%\320\206\244R\024D\304F\316b\004)%8\301\024\204(q\010\313\241\2535\323\222\007\217{\244\231n\331\2428\370\250\343\034\3738\3079\352\250\243\2179\372\250\243\177\002?\201\327=\213\266\031\010E\252F\356\376\336\353\267\277\327\235\2737\312_\224+\325{\325o\253\333\333\266M[\304F\r\307\261)a\250KlA7\321#\207#\312\034\321\332E\026k\013\216L\302\t\200\024\361]\302\321\375\036\337u\030\262<dR\333jP\227pj\367\220\307]\313\340\324UL\014=\336z|\275r\273\202\0103\221K\177\247\006\367\220'\032\206M<\217z\310i\242\206\260ln1\304{m\352\225\321v\023\365\034\201\030\245&\342\016j\003\337\344\001\276K\031\362(W\013t\2150\346p\302-\207a8n\261\3265dZ.(\261\272T\235~@l\217\226\177l\033\216I\221\003\036\200>\227\260\026E7\256\257oll\242j\375\0313i\323b\240\315\321l\233\210\230&\006\261\264\332\250\232\246\301\017\221\360\224-\007\226A\313z\177@<\004\014\032/\233\226G\0326\2453\214t\216\2212\305\3272\252\273U\313\362\242\235\311\034\010^\223\010\233#\214]j\n\203b\214L\241\255g\016\273\016\301\354Z\220\032\214\r\213Y\034+\313P\243\307\251\007\306w\252*\330\254\3459\3025\350\327\234\354Q\254i\310 \220R\0235\035\027\331\226\3075\305\204\264L\0224\247\246(\226l\n\310\237\223\265\357\265\332\304\330\373\334p\\Zn\367\016\357\021\217~CU\354\356\211f\223\272\263\373r\352\231\241+\006\343\014\016H)h\344\377\300\343\232\221oY\204\246\355\020~;\213b1\276\226\203\257\347\340\225\034<S>\004(\013\026yzE\236b\221\247Y$\252\267\330t\214'\367\3311\236\341\310\214\361\024\017\361\3061\236\"\034\270\371\204q\360g)I\0202\360\365\034\274\222\203g\312\217\203?\013\213<\275\"O\261\310\323\254\203?\231\221h}\237\037\246\213\371\320O\222\346b>&\216\333u\006S\215:\003\251\306\233\201\300\371\031\204\213\266=\345A\264\006z\272\2307v\2224g\354\230\010\343?\262u\032R\246N#\036\355\010\312\014:\203rw\032\320W\314#\207\321\035\030\373\030?\356\035\302\367\rH\303\217\350!\177B\233OIs\252\025f\367\363\236dp\31494\307\223\016\217,\212\252\243\034|=\007\257\344\340\231\362E""\236\002\221\247A\344\251\020\211\216\311\374\317\356\263c\366oSb\216'\355\371,J\342RV\317\347\340\225\034<S\276\310S \3624\210<\025:f;?D\327\331\226\353:.\306\361\213\002J2\231\205\304\3531\303r\312p\335\301\013\002^\n\236\202\035\327\244\256a\303\026,\305\334%\006m\200\024\245\3000\033\242\251>\254\273RW\272\251\323\205\233\256\263\037I\235\004Tsc\335J8\371c:\006\306\024d\250\017\247\rC\265\007\311\332\204N\201_\214\233\202\001;\306\255$u\030[\036N\r\2668\335\367l\213s\033(\373\004\354\205\177\373\224\023\375\250\322\033\307\024\212\010+\327\301\224\301\253\202\002\001nz\340ed_\223\030=\300X\205\252\355\264a\341\3226q\201\220N\206d\036LN\201\270\367S\007\200\035:\335\330\245\306\236'\366\243\235K=x\377D\353\330|\265\344z0\250\225`m\313\330\003\373f\257\307\014\362d\216g\310\263m\223A\236?\335\345\352\235\246\334\357\010bG\241H^\"\351\354\210GE<\031\342A\020\367}\364FH\232=\351\355\244\225\223\316\035?\376\346Z4\005\350\241jN\273\251[4\316\n\254\342\367\343D\343\342\214&\366\034\227\253\017\357\321\236\007$7\242\203i\002\236\344=o|\031\245WPz\361$\327\315\370\222\301X1\302o\374\026T\315Au\306 \234\260\027m\370\257\002\205goj\210\316\276\376\201\272\352R\327Sov\234<+\322\211\022\017\220x^\304\343!\236\006\321\205\237\214\200\244\343\223\006O\372\371\250\360\327\342+\257-\367\277\226%\371I\260\026<\014o\rV\217\n\247\305\245\376]\271*\357\004\265\340yX;\252\215\026\337\223k\243\305\263}\356\177)\211<\010H \"|\251_\001\360\216|\020\\\017;\203\302hq\271\377\235O\374N\304\274!\337\010J\301\225\200\274\014\353\202\354\004\305 \225\332\223\257\313\375p-\254\245\214\247\213o\373\372\330\226\177\001\366\\\336\014V\202\332h\371m\377,\034-L,J~\311\277\032I\356\374\007y\267\203\215p\001l;;\354\034\027\322\303\357\313Z\246\353\221\224\003I\203[\341j\270\246 \004\016|?(\014J#\020\275$7\202BP\232\303\227\345\026\004eu\016\177C^\000\005\2359\374\214\274\252\274R\370\325`',\235\216\003\247\374\352\370\013`D+\370)\374jX\030^>&\307\340\330y\377a\224\260?\344\212\254\311\372\351\342""\233\375g\376\025\277%w\202w\224\265\2437\317\375\257\355\307\376\317/\277\375\310\337\216\267\233\203_\206d\330{Q\310\202\377xQ\032]^\235\006N\027/\202\253]YW\361\336\366\353>\224\322\351\342e8WR\310\367\262 KQv*~G\236Ij\355\262|\026\\\013K\341\3528s\275\360U\225\375\210\372k\340i\343\306\245p\001d\233\362\232\022\033k<\325\225qI\276\005)\357\206uu0\246\034\305\005q\007B\373D\227Dg\022\372\t\312\250\020^\0145\370\256\\\315\254\236I\350 \324^\215!C\231\036q\t\277\346\357\310R\264\351\372\317\265\374J\320\203\352X\031\324\006\365\243\302\250x\246\377\251_\217z\371\255\376\216_\032\025\227\373\017\3755\377\201\374, \243\342\302Q\267\377\334\337\222\347U\024\317\371`\317%\345\361%]\361P\273\212C\365\312\311\331\265\301\371A}\320\032\376\366b\341\005pL!\205\261\202\213\272\367\316\007\365\227W\264\021,\004\235\227TtR\374\010\222w!$!\037l\016\265\207e\330t\225\263\247\305\017e\347\004\335\030,\r\277<\336;\251?\031\025WNV>\016n\353\316\006\371\177\372\267T\304\327\007\253'_<8f';\317F0\315\326N\212w\207\240\372\003\350\326\233aI-\366\302s\341z\3704\352\262\245\376M\377\003\325e\023\315\225]\021\367UFF\313\220V\010A)]\374\rJl\030\334";
26264
26264
  PyObject *data = __Pyx_DecompressString(cstring, 1746, 1);
26265
26265
  if (unlikely(!data)) __PYX_ERR(0, 1, __pyx_L1_error)
26266
26266
  const char* const bytes = __Pyx_PyBytes_AsString(data);
@@ -26268,7 +26268,7 @@ const char* const cstring = "x\332\245WIs\033E\024F\205\300&6\004\305Y\212%\320\
26268
26268
  if (likely(bytes)); else { Py_DECREF(data); __PYX_ERR(0, 1, __pyx_L1_error) }
26269
26269
  #endif
26270
26270
  #else /* compression: none (4642 bytes) */
26271
- const char* const bytes = "?0.3.2<B<H<IIllegal boolean value: Not enough input dataNote that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False.Opcode out of range 0-255: <QUndefined opcode: add_note<b<ddctx used twice.dctx was not used.disableectx used twice.ectx was not used.enablegc<h<iisenabledno default __reduce__ due to non-trivial __cinit__not bytes: <q<stringsource>take_bytes called for listtake_dict called for bytestake_list called for bytestake_str called for listtmsgpack/core.pyxBaseDecodeBufferBaseDecodeBuffer.__reduce_cython__BaseDecodeBuffer.__setstate_cython__BaseDecodeBuffer.rd_bytesBaseDecodeBuffer.rd_float8BaseDecodeBuffer.rd_int1BaseDecodeBuffer.rd_int2BaseDecodeBuffer.rd_int4BaseDecodeBuffer.rd_int8BaseDecodeBuffer.rd_strBaseDecodeBuffer.rd_uint1BaseDecodeBuffer.rd_uint2BaseDecodeBuffer.rd_uint4BaseDecodeBuffer.rd_uint8BaseEncodeBufferBaseEncodeBuffer.__reduce_cython__BaseEncodeBuffer.__setstate_cython__BaseEncodeBuffer.as_bytesBaseEncodeBuffer.wr_bytesBaseEncodeBuffer.wr_float8BaseEncodeBuffer.wr_int1BaseEncodeBuffer.wr_int2BaseEncodeBuffer.wr_int4BaseEncodeBuffer.wr_int8BaseEncodeBuffer.wr_strBaseEncodeBuffer.wr_uint1BaseEncodeBuffer.wr_uint2BaseEncodeBuffer.wr_uint4BaseEncodeBuffer.wr_uint8DecodeBufferDecodeCtxDecodeCtx.__reduce_cython__DecodeCtx.__setstate_cython__DecodeCtx.take_bytesDecodeCtx.take_dictDecodeCtx.take_listDecodeCtx.take_strDecodeCtx.take_tupleEncodeBufferEncodeCtxEncodeCtx.__reduce_cython__EncodeCtx.__setstate_cython__EncodeCtx.put_bytesEncodeCtx.put_dictEncodeCtx.put_sequenceEncodeCtx.put_strEncodeCtx.put_valueNoneType__Pyx_PyDict_NextRefSafeDecodeBufferSafeDecodeBuffer.__reduce_cython__SafeDecodeBuffer.__setstate_cython__SafeDecodeBuffer.rd_float8SafeDecodeBuffer.rd_int1SafeDecodeBuffer.rd_int2SafeDecodeBuffer.rd_int4SafeDecodeBuffer.rd_int8SafeDecodeBuffer.rd_uint1SafeDecodeBuffer.rd_uint2SafeDecodeBuffer.rd_uint4SafeDecodeBuffer.rd_u""int8SafeEncodeBufferSafeEncodeBuffer.__reduce_cython__SafeEncodeBuffer.__setstate_cython__SafeEncodeBuffer.wr_float8SafeEncodeBuffer.wr_int1SafeEncodeBuffer.wr_int2SafeEncodeBuffer.wr_int4SafeEncodeBuffer.wr_int8SafeEncodeBuffer.wr_uint1SafeEncodeBuffer.wr_uint2SafeEncodeBuffer.wr_uint4SafeEncodeBuffer.wr_uint8TMsgpackError__annotate__as_bytesasyncio.coroutinesbyteordercline_in_tracebackcodecdbufdbuf_take_valuedecode_from_bytesdecode_from_list__dict___dict__doc__ebufebuf_put_valueencode_valueendextend__func____getstate___is_coroutineitemslittle__main____metaclass____module____mro_entries__msgn__name____new__packpop__prepare__put_bytesput_dictput_sequenceput_strput_value__pyx_checksum__pyx_result__pyx_state__pyx_type__pyx_unpickle_BaseDecodeBuffer__pyx_unpickle_BaseEncodeBuffer__pyx_unpickle_SafeDecodeBuffer__pyx_unpickle_SafeEncodeBuffer__pyx_vtable____qualname__rd_bytesrd_float8rd_int1rd_int2rd_int4rd_int8rd_strrd_uint1rd_uint2rd_uint4rd_uint8__reduce____reduce_cython____reduce_ex__self__set_name__setdefault__setstate____setstate_cython__sortsort_keysstartstatestructsystake_bytestake_dicttake_listtake_strtake_tuple__test__tmsgpack.core_typeunpackupdateuse_setstatevaluevalues__version__wr_byteswr_float8wr_int1wr_int2wr_int4wr_int8wr_strwr_uint1wr_uint2wr_uint4wr_uint8\200\001\360\010\000\005\014\210>\230\021\230)\2401\240G\2507\260!\200\001\340\004\013\210?\230!\2309\240A\240W\250A\200A\330\010\033\2301\330\010\017\210t\220;\230a\230w\240a\240u\250A\200A\330\010\013\2104\210t\2209\230F\240-\250q\260\001\330\010\014\210J\220a\220q\330\010\017\210t\2205\230\t\240\021\240$\240a\200A\330\010\013\2104\210t\2209\230F\240-\250q\260\001\330\010\014\210J\220a\220q\330\010\017\210t\2205\230\007\230q\240\004\240A\200A\330\010\013\2104\210y\230\006\230m\2501\250A\330\010\014\210J\220a\220q\340\010\020\220\001\330\010\014\210E\220\025\220a\220t\2306\240\023\240A\330\014\020\220\017\230q\240\001\330\014\020\220\017\230q\240\001\330\014\021\220\021\220%\220q\330\010\017\210q\200A""\330\010\013\2104\210y\230\006\230m\2501\250A\330\010\014\210J\220a\220q\340\010\020\220\001\330\010\014\210E\220\025\220a\220t\2308\2405\250\007\250q\260\017\270q\300\001\330\010\017\210q\200A\330\010\034\230A\330\010\017\210t\220;\230a\230w\240a\240u\250A\200A\330\010\014\210J\220a\220w\230e\2407\250!\2501\200A\330\010 \240\004\240L\260\001\260\021\330\010\020\220\013\2305\240\001\240\021\200A\330\010 \240\004\240L\260\001\260\021\330\010\020\220\014\230E\240\021\240!\200A\330\010 \240\004\240L\260\001\260\021\330\010\020\220\t\230\025\230a\230q\200A\330\010 \240\004\240L\260\001\260\021\330\010\020\220\n\230%\230q\240\001\200A\330\010%\240T\250\021\340\010\014\210J\220a\220q\330\010\013\2104\210q\220\007\220w\230g\240V\250=\270\001\270\035\300a\300q\340\010\024\220G\2301\330\010\017\210z\230\023\230A\230Q\340\010\r\210U\220$\220g\230T\240\031\250!\2501\330\r\022\220$\220g\230T\240\031\250!\2501\330\r\022\220$\220g\230T\240\031\250!\2501\330\r\022\220$\220g\230T\240\031\250!\2501\330\r\022\220$\220g\230T\240\031\250!\2501\330\r\022\220#\220X\230T\240\031\250!\2501\330\r\022\220#\220X\230T\240\031\250!\2501\330\r\022\220#\220X\230T\240\031\250!\2501\330\r\022\220\"\220I\230T\240\031\250!\250:\260Y\270a\270y\310\001\330\r\022\220\"\220I\230T\240\031\250!\250:\260Y\270a\270z\310\021\330\035!\240\031\250!\250:\260Y\270a\270z\310\021\340\010\026\220a\220v\230Q\330\010\014\210I\220Q\220a\200A\340\010\035\230T\240\021\330\010\014\210L\230\001\230\021\330\010\017\210t\2204\220q\230\n\240$\240a\200A\330\010\035\230U\240'\250\021\250!\330\010\017\210t\220;\230a\230y\250\003\2501\250A\200A\330\010\035\230Z\240s\250!\2501\330\010\014\210J\220a\220q\340\010\025\220Q\220d\230'\240\021\330\010\026\220a\220v\230Q\340\010\014\210E\220\027\230\016\240a\240v\250Q\200A\330\010\026\220a\220v\230Q\200A\330\010\017\210t\2209\230A\230R\230w\240a\240q\200A\330\010\017\210t\2209\230A\230V\2405\250\001\250\026\250q\200A\330\010\032\230!\330\010\017\210t\220;\230a\230w\240a\240u\250A\200A""\330\010\017\210t\220;\230a\230w\240a\240w\250a\200A\340\010\017\210t\220;\230a\230w\240c\250\021\250!\200A\330\010\017\210u\220A\220T\230\021\200A\330\010\017\210v\220W\230A\230V\2404\240y\260\001\260\023\260A\260Q\200\001\330\004\n\210+\220Q\200\001\360\010\000\005\016\210T\220\021\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220E\230\024\230Q\330\010\022\220!\330\010\027\220q\340\010\027\220t\2308\2407\250!\330\004\007\200q\330\010\017\320\0171\260\024\260Q\260g\270[\310\007\310q\340\010\017\320\0171\260\024\260Q\260g\270[\310\001\200\001\360\010\000\005\016\210T\220\026\220t\2306\240\024\240Q\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220E\230\024\230Q\330\010\022\220!\330\010\027\220q\340\010\027\220t\2305\240\007\240q\330\004\007\200q\330\010\017\320\0171\260\024\260Q\260g\270[\310\007\310q\340\010\017\320\0171\260\024\260Q\260g\270[\310\001\320\004\"\240'\250\025\250a\250t\260:\270Q\200\001\330\004.\250a\250v\260Q\200\001\340\004\037\230q\320 0\260\013\270;\300k\320QR\330\004\023\320\023#\2408\2501\250A\330\004\007\200|\2207\230!\330\0102\260!\3203F\300n\320TU\330\004\013\2101\320\004?\270q\330\010\036\230e\2406\250\021\330\010\036\230k\250\022\2502\250S\260\001\260\021\330\010\013\2106\220\036\230q\240\001\340\010\014\210J\220a\220q\330\010\025\220Q\220d\230'\240\021\330\010\026\220a\220v\230Q\340\010\014\210C\210u\220A\330\014\032\230!\2306\240\021\330\014\032\230!\2306\240\021";
26271
+ const char* const bytes = "?0.3.4<B<H<IIllegal boolean value: Not enough input dataNote that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False.Opcode out of range 0-255: <QUndefined opcode: add_note<b<ddctx used twice.dctx was not used.disableectx used twice.ectx was not used.enablegc<h<iisenabledno default __reduce__ due to non-trivial __cinit__not bytes: <q<stringsource>take_bytes called for listtake_dict called for bytestake_list called for bytestake_str called for listtmsgpack/core.pyxBaseDecodeBufferBaseDecodeBuffer.__reduce_cython__BaseDecodeBuffer.__setstate_cython__BaseDecodeBuffer.rd_bytesBaseDecodeBuffer.rd_float8BaseDecodeBuffer.rd_int1BaseDecodeBuffer.rd_int2BaseDecodeBuffer.rd_int4BaseDecodeBuffer.rd_int8BaseDecodeBuffer.rd_strBaseDecodeBuffer.rd_uint1BaseDecodeBuffer.rd_uint2BaseDecodeBuffer.rd_uint4BaseDecodeBuffer.rd_uint8BaseEncodeBufferBaseEncodeBuffer.__reduce_cython__BaseEncodeBuffer.__setstate_cython__BaseEncodeBuffer.as_bytesBaseEncodeBuffer.wr_bytesBaseEncodeBuffer.wr_float8BaseEncodeBuffer.wr_int1BaseEncodeBuffer.wr_int2BaseEncodeBuffer.wr_int4BaseEncodeBuffer.wr_int8BaseEncodeBuffer.wr_strBaseEncodeBuffer.wr_uint1BaseEncodeBuffer.wr_uint2BaseEncodeBuffer.wr_uint4BaseEncodeBuffer.wr_uint8DecodeBufferDecodeCtxDecodeCtx.__reduce_cython__DecodeCtx.__setstate_cython__DecodeCtx.take_bytesDecodeCtx.take_dictDecodeCtx.take_listDecodeCtx.take_strDecodeCtx.take_tupleEncodeBufferEncodeCtxEncodeCtx.__reduce_cython__EncodeCtx.__setstate_cython__EncodeCtx.put_bytesEncodeCtx.put_dictEncodeCtx.put_sequenceEncodeCtx.put_strEncodeCtx.put_valueNoneType__Pyx_PyDict_NextRefSafeDecodeBufferSafeDecodeBuffer.__reduce_cython__SafeDecodeBuffer.__setstate_cython__SafeDecodeBuffer.rd_float8SafeDecodeBuffer.rd_int1SafeDecodeBuffer.rd_int2SafeDecodeBuffer.rd_int4SafeDecodeBuffer.rd_int8SafeDecodeBuffer.rd_uint1SafeDecodeBuffer.rd_uint2SafeDecodeBuffer.rd_uint4SafeDecodeBuffer.rd_u""int8SafeEncodeBufferSafeEncodeBuffer.__reduce_cython__SafeEncodeBuffer.__setstate_cython__SafeEncodeBuffer.wr_float8SafeEncodeBuffer.wr_int1SafeEncodeBuffer.wr_int2SafeEncodeBuffer.wr_int4SafeEncodeBuffer.wr_int8SafeEncodeBuffer.wr_uint1SafeEncodeBuffer.wr_uint2SafeEncodeBuffer.wr_uint4SafeEncodeBuffer.wr_uint8TMsgpackError__annotate__as_bytesasyncio.coroutinesbyteordercline_in_tracebackcodecdbufdbuf_take_valuedecode_from_bytesdecode_from_list__dict___dict__doc__ebufebuf_put_valueencode_valueendextend__func____getstate___is_coroutineitemslittle__main____metaclass____module____mro_entries__msgn__name____new__packpop__prepare__put_bytesput_dictput_sequenceput_strput_value__pyx_checksum__pyx_result__pyx_state__pyx_type__pyx_unpickle_BaseDecodeBuffer__pyx_unpickle_BaseEncodeBuffer__pyx_unpickle_SafeDecodeBuffer__pyx_unpickle_SafeEncodeBuffer__pyx_vtable____qualname__rd_bytesrd_float8rd_int1rd_int2rd_int4rd_int8rd_strrd_uint1rd_uint2rd_uint4rd_uint8__reduce____reduce_cython____reduce_ex__self__set_name__setdefault__setstate____setstate_cython__sortsort_keysstartstatestructsystake_bytestake_dicttake_listtake_strtake_tuple__test__tmsgpack.core_typeunpackupdateuse_setstatevaluevalues__version__wr_byteswr_float8wr_int1wr_int2wr_int4wr_int8wr_strwr_uint1wr_uint2wr_uint4wr_uint8\200\001\360\010\000\005\014\210>\230\021\230)\2401\240G\2507\260!\200\001\340\004\013\210?\230!\2309\240A\240W\250A\200A\330\010\033\2301\330\010\017\210t\220;\230a\230w\240a\240u\250A\200A\330\010\013\2104\210t\2209\230F\240-\250q\260\001\330\010\014\210J\220a\220q\330\010\017\210t\2205\230\t\240\021\240$\240a\200A\330\010\013\2104\210t\2209\230F\240-\250q\260\001\330\010\014\210J\220a\220q\330\010\017\210t\2205\230\007\230q\240\004\240A\200A\330\010\013\2104\210y\230\006\230m\2501\250A\330\010\014\210J\220a\220q\340\010\020\220\001\330\010\014\210E\220\025\220a\220t\2306\240\023\240A\330\014\020\220\017\230q\240\001\330\014\020\220\017\230q\240\001\330\014\021\220\021\220%\220q\330\010\017\210q\200A""\330\010\013\2104\210y\230\006\230m\2501\250A\330\010\014\210J\220a\220q\340\010\020\220\001\330\010\014\210E\220\025\220a\220t\2308\2405\250\007\250q\260\017\270q\300\001\330\010\017\210q\200A\330\010\034\230A\330\010\017\210t\220;\230a\230w\240a\240u\250A\200A\330\010\014\210J\220a\220w\230e\2407\250!\2501\200A\330\010 \240\004\240L\260\001\260\021\330\010\020\220\013\2305\240\001\240\021\200A\330\010 \240\004\240L\260\001\260\021\330\010\020\220\014\230E\240\021\240!\200A\330\010 \240\004\240L\260\001\260\021\330\010\020\220\t\230\025\230a\230q\200A\330\010 \240\004\240L\260\001\260\021\330\010\020\220\n\230%\230q\240\001\200A\330\010%\240T\250\021\340\010\014\210J\220a\220q\330\010\013\2104\210q\220\007\220w\230g\240V\250=\270\001\270\035\300a\300q\340\010\024\220G\2301\330\010\017\210z\230\023\230A\230Q\340\010\r\210U\220$\220g\230T\240\031\250!\2501\330\r\022\220$\220g\230T\240\031\250!\2501\330\r\022\220$\220g\230T\240\031\250!\2501\330\r\022\220$\220g\230T\240\031\250!\2501\330\r\022\220$\220g\230T\240\031\250!\2501\330\r\022\220#\220X\230T\240\031\250!\2501\330\r\022\220#\220X\230T\240\031\250!\2501\330\r\022\220#\220X\230T\240\031\250!\2501\330\r\022\220\"\220I\230T\240\031\250!\250:\260Y\270a\270y\310\001\330\r\022\220\"\220I\230T\240\031\250!\250:\260Y\270a\270z\310\021\330\035!\240\031\250!\250:\260Y\270a\270z\310\021\340\010\026\220a\220v\230Q\330\010\014\210I\220Q\220a\200A\340\010\035\230T\240\021\330\010\014\210L\230\001\230\021\330\010\017\210t\2204\220q\230\n\240$\240a\200A\330\010\035\230U\240'\250\021\250!\330\010\017\210t\220;\230a\230y\250\003\2501\250A\200A\330\010\035\230Z\240s\250!\2501\330\010\014\210J\220a\220q\340\010\025\220Q\220d\230'\240\021\330\010\026\220a\220v\230Q\340\010\014\210E\220\027\230\016\240a\240v\250Q\200A\330\010\026\220a\220v\230Q\200A\330\010\017\210t\2209\230A\230R\230w\240a\240q\200A\330\010\017\210t\2209\230A\230V\2405\250\001\250\026\250q\200A\330\010\032\230!\330\010\017\210t\220;\230a\230w\240a\240u\250A\200A""\330\010\017\210t\220;\230a\230w\240a\240w\250a\200A\340\010\017\210t\220;\230a\230w\240c\250\021\250!\200A\330\010\017\210u\220A\220T\230\021\200A\330\010\017\210v\220W\230A\230V\2404\240y\260\001\260\023\260A\260Q\200\001\330\004\n\210+\220Q\200\001\360\010\000\005\016\210T\220\021\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220E\230\024\230Q\330\010\022\220!\330\010\027\220q\340\010\027\220t\2308\2407\250!\330\004\007\200q\330\010\017\320\0171\260\024\260Q\260g\270[\310\007\310q\340\010\017\320\0171\260\024\260Q\260g\270[\310\001\200\001\360\010\000\005\016\210T\220\026\220t\2306\240\024\240Q\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220E\230\024\230Q\330\010\022\220!\330\010\027\220q\340\010\027\220t\2305\240\007\240q\330\004\007\200q\330\010\017\320\0171\260\024\260Q\260g\270[\310\007\310q\340\010\017\320\0171\260\024\260Q\260g\270[\310\001\320\004\"\240'\250\025\250a\250t\260:\270Q\200\001\330\004.\250a\250v\260Q\200\001\340\004\037\230q\320 0\260\013\270;\300k\320QR\330\004\023\320\023#\2408\2501\250A\330\004\007\200|\2207\230!\330\0102\260!\3203F\300n\320TU\330\004\013\2101\320\004?\270q\330\010\036\230e\2406\250\021\330\010\036\230k\250\022\2502\250S\260\001\260\021\330\010\013\2106\220\036\230q\240\001\340\010\014\210J\220a\220q\330\010\025\220Q\220d\230'\240\021\330\010\026\220a\220v\230Q\340\010\014\210C\210u\220A\330\014\032\230!\2306\240\021\330\014\032\230!\2306\240\021";
26272
26272
  PyObject *data = NULL;
26273
26273
  CYTHON_UNUSED_VAR(__Pyx_DecompressString);
26274
26274
  #endif
@@ -1,7 +1,7 @@
1
1
  # THIS FILE IS AUTOMATICALLY CREATED BY build_pyx.py
2
2
  # DON'T EDIT THIS FILE. EDIT THE SOURCES, INSTEAD: tmsgpack/src-parts/*
3
3
 
4
- __version__ = "0.3.2"
4
+ __version__ = "0.3.4"
5
5
 
6
6
  from libc.stdint cimport int8_t, int16_t, int32_t, int64_t
7
7
  from libc.stdint cimport uint8_t, uint16_t, uint32_t, uint64_t
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tmsgpack
3
- Version: 0.3.2
3
+ Version: 0.3.4
4
4
  Summary: Typed MessagePack serializer (inspired by but different from msgpack)
5
5
  Author-email: Yaakov Belch <yaakov.belch@gmail.com>
6
6
  License: ISC
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes