cpyte 2.7.2__tar.gz → 2.7.3__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.
- {cpyte-2.7.2/source/cpyte.egg-info → cpyte-2.7.3}/PKG-INFO +1 -1
- {cpyte-2.7.2 → cpyte-2.7.3}/pyproject.toml +1 -1
- cpyte-2.7.3/source/cpyte/__init__.py +1 -0
- cpyte-2.7.3/source/cpyte/_bignum_bc.py +250 -0
- cpyte-2.7.3/source/cpyte/_runtime_bc.py +174 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/astparse.py +128 -1
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/bignum.c +45 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/bytecoding.py +105 -27
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/compiling.py +114 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/formatter.py +23 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/lexar.py +162 -14
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/lsp_server.py +2 -1
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/mainpie.py +9 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/package_manifest.py +1 -1
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/runtime.c +213 -20
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/runtime_scorpion.c +78 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/semantic_analasis.py +46 -5
- {cpyte-2.7.2 → cpyte-2.7.3/source/cpyte.egg-info}/PKG-INFO +1 -1
- cpyte-2.7.2/source/cpyte/__init__.py +0 -1
- cpyte-2.7.2/source/cpyte/_bignum_bc.py +0 -240
- cpyte-2.7.2/source/cpyte/_runtime_bc.py +0 -109
- {cpyte-2.7.2 → cpyte-2.7.3}/MANIFEST.in +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/readme.md +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/setup.cfg +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/__main__.py +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/_gc_bc.py +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/clib.py +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/extension_hooks.py +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/gc_runtime.c +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/generate_bc.py +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/linker.py +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/sef.py +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/ui.py +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte/update_check.py +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte.egg-info/SOURCES.txt +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte.egg-info/dependency_links.txt +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte.egg-info/entry_points.txt +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte.egg-info/requires.txt +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/source/cpyte.egg-info/top_level.txt +0 -0
- {cpyte-2.7.2 → cpyte-2.7.3}/test/test_bignum_jit.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "2.7.3"
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
import base64, zlib
|
|
2
|
+
from llvmlite import binding
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
_B64 = (
|
|
6
|
+
'eJztfH9cE1fa70xmkhlCCAMCBgkwAXSDooafBkQ6IajRpW20tsVqS4KgaBHDDxVd2k4SIFGpGy3b0tbt'
|
|
7
|
+
'htZatmtb6rq+tOv1JkAttbRF63ap69qg1tK+tsWu+y67b3ff+5xJIhjs/dz7ufd+PvePWhhmvvPkmeec'
|
|
8
|
+
'85zv+T4nSS95ZoZj8C8Gfo9uxLD/gn/Fes+lXADEgFXINGkr1546svU/f3dv+Cq+FAdMJcOw+bEYFi5S'
|
|
9
|
+
'YSK4ToFfypp6QDdIrpAwWfkH8RbZbDEdn0Tuq+AVS0XFB8OLB5isGC2t+Kk0q8Jp6KlU6duc5HJlVnFa'
|
|
10
|
+
'3SAdlZbOtbUzP8WzKlvog0o2dZnzcyw+s5iMn6ue61q1nk19i2uTxfdT78fGV7S3p1HxWRUZ+YOuqNTB'
|
|
11
|
+
'aKc8saCyZPkgk6JfJoqfhe1h/fGkbCSZY8W2PVGr4XCgrs9okIbNWXZaXFwxhx7kr9GuQro+ddDK5tuO'
|
|
12
|
+
'0t+lGKxu0kNzUTGm/VjMXkyzFONTNFw8hnWm0mc8mrNKXNFhFvFzS7moI7+WYZ4Y27PYEfrMGkmb+RrN'
|
|
13
|
+
'vSj704lfFOOiOXNbRVjpGlEVy4qPpPNm0opjqxQYtl+CYQljsydQ3+Ium4amG1wOS7WjvppoanI0Wqjd'
|
|
14
|
+
'amoXdnE08WJXxEiXss+rxPoSL3VFjOmS+vAknyrx4qjygjuxz5o0jLupXd2Oesy5y+2wKBzbwYPLsdPt'
|
|
15
|
+
'qFdQu5uoXdVEXTfVoHHUuxx5nY7GYbAcx9gxlfLqqPKMNemCSenrSuItPNVkgqfbdzgJHvy4HA1qanc1'
|
|
16
|
+
'0aB2WNyO3S5HfSdliujrUl6zRnzCKkesSRd1yae9SSOmiAFr0jkATcrTVqXPf6JKHMST4dZps9KHI5vT'
|
|
17
|
+
'o4kX4ARPvtiVdEGwuWpWAj6oShyDS155yZrk0yVdsiJwyJrYB60D3AOxRfTpki54k8Z54VIlv+6BW4nI'
|
|
18
|
+
'DE8aG0085xU8eJRfAegVDMCSS7xmVl7yJl5HzhOvdSG3F7sQAic+FRgnDcMtLOmMLmmoKzGA65LOWJVX'
|
|
19
|
+
'/W3kkvrMKHKI0yeEetUqhGRKGhCOw9CBfODkmnDi61KeBg/mJBijc2blmGB2TSd48ySNeyIus8jPdTzy'
|
|
20
|
+
'IifvC4LXboH8JPhVEOzDR0w05sIO9+DlbShXkrH7sDR35I8J82PC/FDCWBick1rzSxJMR/z0ohFzon+w'
|
|
21
|
+
'LnFKT+tMUsegH3EKjEjiJbPygkfZ15V4zpr4HV7tsJioHU2OOuzH1Poxte6YWi4FzoRj6eQ1rIbdj7Gt'
|
|
22
|
+
'EWHR2GFsDUq2idl/DySbLwa7C3GUaB3tTzadkR2CVOlKPNMV4fP3UpfyKm5x7LQ48mCgaaoBo3c2OfIg'
|
|
23
|
+
'eWiqiYeUczTA6NPUbo7ik652JZ3B2WtW6ATlJ10RwtBA05TQ4Ve7Iga6koa8Sui6C6akc7rkM7hnas7Y'
|
|
24
|
+
'63jHbgxlqRU9/YJKjtmSYBA/7FKOdUUMQTJbk74SOorPpVFe5ZXZYRbstlCPKaifmey5DLXbgMA6BVXP'
|
|
25
|
+
'+08cjSzVDLcUjjqUqOhkZzWcUM0Wx+5qwcblqAOcdTS64ZKob6J289SuJqoeQA21g4bWIbyBd+TRMCmo'
|
|
26
|
+
'n3kI/6W2h4BbOwSzJrdjp4HaKXho6AaQ8hvA5fZOR10TtbMH3drR6UBuLQ54yk444R2WbtRvcKsJpq3G'
|
|
27
|
+
'sSOAU7vUVL3L30ZiF+3YBSDEyQuhuqh6IfJdjHDkoAOJwEmncMKjKbxL7dgFY2Rw1LkFs06qTvAG8S9y'
|
|
28
|
+
'Qr/Zc3uoQguRTwfBzkmw4BbYHQRpytTfRQbSKU5Ipxn+dPre23Y4CluNvepR/svUPyrYjFMJ+5djBpXG'
|
|
29
|
+
'cdeIixNxUi62U39ctfdfkHVPYPfg44QvEgvrJlDiYcHEG+EMIg+V8I+qfwjJOU5gcv4u7LAnriLXz4Qx'
|
|
30
|
+
'P66kP9LdD66kRo833KRhEq69HMwfLuVHKvuRyu5EZfoKMZaO3W+Se9qee8tPSqUoYZD0ak3rtAvqXbTO'
|
|
31
|
+
'dGtN7INZM5p4GsZOpbygShxRJfOQJztMjp0KitdA/jh2qB15vL/rgEMoD5osF/jEMyrlEM4CQV2AjFKh'
|
|
32
|
+
'aQ55+CFKCeUYnogBYwCD8Z3UbtpRVwYe0HjtVkNLHTuBiBjHbg0FGbWr2r7LQD2mprDIqYl0Gk/6Ckep'
|
|
33
|
+
'S6GnVzu0GL0bRlbrqHc78jQow3d3C72HARedEeYpNGTMm3jTrERTnlOOqRL9/DPo5x+z8pxVOe5nJ5S9'
|
|
34
|
+
'6ORSVyKk8bg38asuwViXdFrgonNW9JLB0cQxPOnqaOKgQC8jKuWHXQHaucACSyTC9PRfXvbIgUNG/Hxl'
|
|
35
|
+
'TboE5Cx4GOpKAn3rN4DL8+YkoMGLAmeOmIFqwD7xDCACEfV1JUG/IRaCuexVXgjiQEeDwoRCFKQKUBM0'
|
|
36
|
+
'4bRwMiiEBCSDjnhin04eODH7T9C8FggNxijxtBDVNXPSgOANcQ47yTlXbxGRaRIcuwW6gyCr5CP+Yfsn'
|
|
37
|
+
'yiTMhZuwKFZsZphrbOTosPzzYcn4uPxLn/ymUf4d1tu/uFef0KPPb7HnYy2LT+oThu2FLUShR1/Q259/'
|
|
38
|
+
'XLe4hVjiJrjI74yRn2PMX7jIUY3838EDG/ktF/m5Rn5zXP7dsOSyMfKaSf45G7lVE/mlGyx9ODes1w72'
|
|
39
|
+
'53cQS457tR79EmwUixz3oKd/zVCYLnKUjfzCKL85LLlmlI9ykX9lwVukZ1aLPn+ISDiqg0m/pNde1G5f'
|
|
40
|
+
'0uOd5SSWHAbQq20n8j3+E32BiyiCW+39Wg9RKJwsPg4nRFGvfslxwWawXwu4S18wDJd4/kliicdeeJLI'
|
|
41
|
+
'B7CTWNwCrQPcmu/RJ7TYC4/bl/hw/yUsnHBrsWBWONy/+LB98bBgeR5Au2CALAuG+rUn7YtHkPPFQ3rk'
|
|
42
|
+
'tlefDwicePTa86jf4FZhh72wU784gNsLO4j8QX8brYUt/ShyiNMjhDpICCF5C53C0Q0diAdOhoQTjz6/'
|
|
43
|
+
'HTz0F8IYHe7XDgtmQ3at4G2Jz5owoEN+RoikXquyJQgO3QLxxFvg+SDYQvSYNx6bsmMgWsvY8oV6MPXH'
|
|
44
|
+
'MvBHXfR/pIu4apDfCZeq/hOlk/XHperHpeqOSxW5CDvcY37kbT8L3YWl9CkhtgtdygtYoPmQ6thOEHXV'
|
|
45
|
+
'BIygRUPxIKSrCcgKNPchl7RoWC1uqhGDBP6qS4lVJAFLnDYnggfoc9DeEO0lmIyc8iuvEjQwqOhrqsSb'
|
|
46
|
+
'YFk4NRkUVFM3xQoTvwtx1OWpbONRQpaOdaE+vIaDZlYLehKUmJvaOeyoE6QpJGSjXyezAZ1cZ6DqPQE5'
|
|
47
|
+
'3eSX002OHZCKHmpntwPpXhCZCkEzG6jdgoQGAYxokBVksMlh0ToC8rjaDuS2A2Sk/9JJLAata/LraiBM'
|
|
48
|
+
'gXvRLcduYGa/AVwaHbtArlsEbW9ygCQG+51qhCDBTDt2Q78JKhrmY0N1EAfaZIVJIWhmi19CQxOEUHex'
|
|
49
|
+
'QkgghoVjI03lB04c/pMmmJsC8cIYNSqEqDoduxjBG9LGdu0tbey6JZjtkyraPQkGVbTdguWVXkI5EulJ'
|
|
50
|
+
'x77EJvBxiifP48OUdT7P0jb0o66pPiVkEX8f9j3m4ovoGl1gCdOZ+3EJzlHWfCzBqWGxopFhpzfo7XHM'
|
|
51
|
+
'wCWTJzQ2vx93jyrejhmwAnoIH3G5rFgaF9tJ9HSp/eI8sD6a9WYJ55aYeqxaP45tslvhEVJPfI3pHIsZ'
|
|
52
|
+
'cK2d5Ww5vjxmyzgyINithk8CeIQtQpzwPUKZISGM5IT9eTS2mraZ+kclQJs6poa9xGMGsx2nRIJP7WVM'
|
|
53
|
+
'24THYAdGXINWzCWySMCGu+ZDr6Z4GU+78tIaGewwdgiai96XW6HAsDz4O6OF62RlA2SXZo7MailViPBn'
|
|
54
|
+
'2bQzZEpZ50ZRVMaH2VaaJJ9jS86RFS8y1TaGndG25c05sj/UlyoWjHaypndbVGWusJI5igtkxeKcWttw'
|
|
55
|
+
'4gzRtr5xq05Ryg6YZIOsbA450tIlG/J1Moe8LR64fLcFi5hDbtbojDDumh58VvUMSZ72eFjrrOPWBMs2'
|
|
56
|
+
'jY4jtJ3Gbl1C9cWEUvqyqbhLspWl4JyRazuZo16yS7Y/rG+Wx0sWR8i1vjl0g6VUfZ6XX+R/Zgcnw1al'
|
|
57
|
+
'ZRu0q0eYDkQBzItbGgAWiCbHLg+V30Ms4uHHHvGKUb51WL57XL4Vi6y3UEATDSwFC0Y90rHUTkY4F0C/'
|
|
58
|
+
'AZzv4CBlqcZhyZdwFC63uuRoSrspdByWfKMJmG3VhPuRIz45eFgZSUdFF7e1x4ThOcWdhz7x/qZg4ftf'
|
|
59
|
+
'vLFD+/Xjur9saCy71Hbms6++6yx64uF9f/zj9w8/8/P338gsvHfhfx/48re/v7TjyZ1GTCV72wWjhwYQ'
|
|
60
|
+
'xzGPfK+mzTzzIIbxALAsho3o0iWZ48XRGMYAQoLdYvWguu0RgwhDb6jyYGeiquJP+8JXYBgHJgzYXXdr'
|
|
61
|
+
'rygeV4VhGA2ISITxiR0KxSAmn2Ij+/Uwt8JvIGQPRpsMs6n3Rf4nCwiH6V8tYuNYTIKiEyCRYnVr38d+'
|
|
62
|
+
'L7SAMB6XNO6wRIiGExAea1tzeVzrf6NYJECk5vBe6gou8mD+dsATeNUflqjhnPK3FT1B9uvi4joMU08N'
|
|
63
|
+
'6XfRUlLwMhnSc0Y4j54a0j9bRDjmmhrS3PmzwmjhXelbIe3ogvDSpoYkimgVYSZ8Ski/2KIJh66ZGlJN'
|
|
64
|
+
'fzePVU8N6Z0Eh5jkiakh3dDMYrGkqSG9TB1jPeiSFExQSEWzKIynp/bSv+rWc8A7U0Kae4AgRCbRlJBi'
|
|
65
|
+
'9zHxDOrKyZBMh8/yWHewbSikP6TKKZK71VwUUu6BAhbLuGUEIf11xec4bsGDCIS08oEXIzGJLGiCQroS'
|
|
66
|
+
'/RimMQVNUEgvzvx3gseJYEeiXjpTlozJFAEjEoXkOf0PzOQJICwKqWrRpxRGSAIQjkL643tFmEITjBqF'
|
|
67
|
+
'1PXzv+IeHg9GDSGdeeJoaEg5laEhrU4NDSlWvTY0pJr00JC233M2JKS5zXtDQ3p5zc2QkFa+Mq2XHo0N'
|
|
68
|
+
'Denyb8ZCQrr/0aWhITXPCw3pr49MC4nZFxrSO2XTQhqaFlJDXGhIKb+bFtJr00Iamj+tl7ZNC6ljWkif'
|
|
69
|
+
'r58W0tfTQvrZzNCQKv7btJC+nRbSxXtDQxLbdKGPmyuxh7r6hUISGvmr+bJpUR1WlIY+sTbTHdrA1zZw'
|
|
70
|
+
'ocH/413+9sC4CjtnfkKK8RnMbECykjqV8VGlrvawOctPk/qKZZj0RU7adiRFbS1WO+tZXUTH7z/c+Eq1'
|
|
71
|
+
'8e5DRa/8+ebC9S/s+Hi7W/P8P5PsQ6M5vy+dU9x67pD0zwNfNly4+7/OffZZ/sOvE62fXv+bolL+yqdV'
|
|
72
|
+
'WfEr93z8xfHnb8MStwSw99435/3nEsmz/Zt3PFvqlEil70YfR6TyJrTzGvzNpnnlwKhyYwy+xKnXtvS3'
|
|
73
|
+
'Fws1VUNnnewaFvk1I7/Jy7NlxUl9qAxTbtSIBTN7whCxZFC/pJ1YMtTUDnLzZzTaG7WA7rQQO5ocFtYR'
|
|
74
|
+
'PxQlv+6Sj2oiazWRV8bl40Z5NjOQeEkFNQ8UEkkbNXvQbsiwPv84UXgSbTYtHhqPARX7s2pqEdpEoBbx'
|
|
75
|
+
'qIZHmwtqaseEGNzu5B3lsK4rQFA6dnVaM74Zl3/jk//VI7+uISoGkZr3a3rlRTPS6APWxDNmyScuPdpq'
|
|
76
|
+
'6RSOvf3aDr0W9HBH/0J46Pe2xWg3p1/27maHpcxRb7E3ou1skKqORrcj/sP7Ir/BIr8zyq+65Fe4yFFW'
|
|
77
|
+
'fh1awapRuQVV5TmVEmqSiz4oDBK/wpM2KlZpe/QFh+yLh4xpgYaYHFCuNHWuKr3pikQ9kLRF2L5XoXL3'
|
|
78
|
+
'cRyVEEOqxHGzZE2rXTvUv7hHvwQ65Pu+wqv6xU647G9/RwotdeyEeGi0n1LfaV1/hZFf98g/N8r/okn1'
|
|
79
|
+
'ntNBYTNzZDTxEgRgiF/cY19y3J7Q0q9t1+cP9Rf2evMH+6GNhUOG43Vos5iqEyrn+D+dll83RX7tQ1t4'
|
|
80
|
+
'n2siP2cj/8Mor2XkVzRyuPyLT/KlT37VKJ/QpF6+blYKW88zr6sSoVgaQFvPiWOq5I3sLxef1C/pJfI7'
|
|
81
|
+
'7PlDZSdh9KGxUETtNqC3N+Lf/0L+rSZy1Cf/khN2AzX9ONrNh7aUd0KqoB5GWzmd1hZdvq8fum4JjNQQ'
|
|
82
|
+
'N+BOPAMltC7pkle5MW2DRj6KxjfyS7TPqFfZtyuoBoOj3O1ohkKl880OvLC9v7CjXzusL4B0GoIekxlU'
|
|
83
|
+
'scXmJAj1Q2/iamvMxtJNGvm3bOS3Psm3xsibyJX8c58ksA2qeYmz76hGWxLxq2f19i+GPDys1w5BHxL5'
|
|
84
|
+
'LnvhEFEIndnRL1sWcVqFNr/OdCkftyZ9h2rg029KIAPBD4xFdnSeAlWhgR2ETu9xtHe5+GS/9nvRkpP9'
|
|
85
|
+
'BR0QW/VFVthCgpoZOtAbgUbf3PYXyZhRPopFomaOQ/8LLcV2sf6F/WCSgdU7ZfFhlZWD77HWdjJr2bJl'
|
|
86
|
+
'M6zFbteNgUE6HyTm5f5uYLZ9B5UfJGBD35UMuMruK/kp+0BVfcPmbbU7N1Sb68sbNu+uMq7Qs6VVO6pq'
|
|
87
|
+
'tu9sNFfUVG2sN2+tmm/Ztrm2sapeZ7HUVLEbasy1m9gd/leyWZkLNAs0rFpA52dlajQLMtF/msx0SyZb'
|
|
88
|
+
'sw1M0cFcu4sNeNm2tXazZVtjVW0jix573+atyKt+oX7ePHZNsU6HzMHw1ktranZsXVCzbZtlwdbtDY2W'
|
|
89
|
+
'+m2b6qsaGjDsyCo/k2psmrN9dLGC76f71oSn0k/Nb2dL/w3Q0T5aRABQmtHOao5pbJ6hvhhbHHUfvU45'
|
|
90
|
+
'pOF0Of1s2McyIpfLlsWqPtCsac3Rm4aYjGzZXkVZtuw9dKDj4TCEzj6AQ9ry+LKNlmfxHZJPZcSsDmtu'
|
|
91
|
+
'v68dDm7JFtMHmk4rsq22CPc6vbn9vGQj/4Gm3QsvJD/ag7OSalZScaefp1sl1Tz6OeWTVPsktf4fNtUa'
|
|
92
|
+
'dsb55Aevf/Dy108e3f/a0Dvt86/X1HZUXCn49qetCJ/95NGhJ2s7kNzEfg08vQj+hkvroVSH/CqzdMKc'
|
|
93
|
+
'Q9Mlf7jfdk152r+h6kVT088rcTlXTPIvjGhr/SoX3GDv4a0oMQNbtX4uKbMc6tcexxcfti/p6Bc9ijaj'
|
|
94
|
+
'Lo4qL7JoYxOOY8LbjsNdykE/AZi9eORNmDQwh3h5uNM/EcUfCbvfQK79QAOLgXVgTRgkFmeo4SXnwJvZ'
|
|
95
|
+
'WyL/nEH0+aUpchSOwNnDkr+4Ir9m5d965Gicz4KmRYszNVR42L74EJAzscRtLwSidvWjpd0Mwl8Ff1Pp'
|
|
96
|
+
'vT0c5lfOAzHM3alYzv7ZDI6nwrVetjeD9LrN4mKJaEKkUlRw1Swt+UztUUneibOZhnttKkLUTETJMtkc'
|
|
97
|
+
'hrR/FGNqZpmydMlqyZMdPvaG1bh+tsGQLRpA8SC5vK5tNmefT8zo9j7dFfaJ6f1xskbISRQLI8TSJsSC'
|
|
98
|
+
'4iPbMSjYPT8h8Xgsa8DtK2ZkcY/QbYqYh2mbty+8ZUYZr0Br7jqJigvoEsGPVvDTIfhB7Y9px5j7uFaj'
|
|
99
|
+
'djZ3lsagecjxZNv2tOqntq08HdrmnAlte83mVrau1zY6dW+2soqc4+5BN/aZSfZztU0laZHYTOMvi9oj'
|
|
100
|
+
'W/r0pvGSfHp1S1vv1cRBzQA/zDGyogf4G1YLr9NJV4scvZWcOFVCr5J1d2a0RO6tp9OKmJhMtVd/mTBH'
|
|
101
|
+
'2aNlhzPxChRPmNA/P0H9E3Pc+7RXOmx63yLe2lM1IsodyWq0JtTEn+IjJtv5vzh2m0PGLjk4didvH7t7'
|
|
102
|
+
'hbFbi8au1T92pv/1sVuOo1gusBmMUM6hPu94YG2sInO2kVtqlMQ+QLfeNyd2FRHzJDacI+L+FIPnLsWi'
|
|
103
|
+
'J2MdNfufMY/Md9pj+5QDXqlVftnUaqTqsGNSlANv2lgivLkPolUfg2glyrT4GF+C0+TEu6ysovk1zKGI'
|
|
104
|
+
'WUfbdKnyDpl8PHZZcCTKYCS4Hh1q1iJ2ttHQzMY8ahQ5tHmKCmOlipY8mW/KKvM40rwMUUzoNBNbcHkm'
|
|
105
|
+
'dxKeIFe2vLFX0kBKs+XS/IwbVkzy/IbLhEqmfVc21tmkU9lbZQfxRL6L2Zee9nq8EaeHzrpYOoshNEWM'
|
|
106
|
+
'JLPpyVSI9BT4cSTT8WO4el8OtoqtaWa1zeNJK+DZNfDsu5ccsspyxnWrAsGequdnRxuiOGuHNXV/xHCm'
|
|
107
|
+
'JHvAg0Ha5+yiz7HiLRiRbrQnwGsxeO0HRWQWRozfvSbY0B3859GGFXR0Mj0zvYOVG+LvsfZu4cQmo9ks'
|
|
108
|
+
'IeYq2qTh2Qojrl5T1unlpXxXX59MskYTHRu3UeMW8d09Gjse277Yb4zlu+H24XGp77c9PK0z4qnpHoJx'
|
|
109
|
+
'eTP4j2R9rEK5Sthu04ebxk9mKIze9Z0PrSHmdoZt2Df3hag4Kylb5Y2DF8SXvROHr6BNnFjWkcoaRoj1'
|
|
110
|
+
'OEFsXiWmXbj4VHi48R0pS5Q2PzRTlqnhGZJ4bU7LGg6fd5EhCBm0ecEvh0XxTtFE3gJ1Rc8BlWTpTLup'
|
|
111
|
+
'Z2JgvecgJUp/lGP+GNGNlahSeyFqdaV0kVvEtMpGJWuwF13pF3npspgs575NJC5bOc58AZadH8a+jsfK'
|
|
112
|
+
'Pn6rL9ctMhU82AuWpV9I/8hL275cPzrLiHO/nLceeilrbP1oyiaGjNUctD2C4St8enVrM718Efk2W6iZ'
|
|
113
|
+
'sOGx2OdrTdBhrkIZ6r72mVYvv9dwY5amyWySQL9ew4n/Gocb4QrDI4WpJaIwhc2GV7KuVsYp7TRQhRwv'
|
|
114
|
+
'm1PfSFjlXsK+ELqu1976GPT3Uz3jvgSjt7OllfqMl3rSMgonwElBxXteh6gZi2cuz7BnAfMpONpmjZtV'
|
|
115
|
+
'vMSNJdc6rVESyINnNiussot48wZOoqtrtUPSva0g7UtzHyeermcMb4ltvVkw7EYz54Lw2qREq+xyvM6w'
|
|
116
|
+
'0sdskhAF2EuyylEi/FGO2tBhzWg2mSPGsI4sV2tkxlE8EbtP8vi4tTXXbTef4eKKenokjZgxnu+j4j7h'
|
|
117
|
+
'5afnEWsnbg7sjSTLuLBoUidZgJ/K7rYdCycPlKx0bYsYZp10S2va+lmybpMix3CetUW18KTsgHUtf2/E'
|
|
118
|
+
'JyxHruSiHPwgN2fgGcmjzABlK+pcGvaNFablMO50mpMfNSWvCvdzz0I/xzchXnR7n1ZJz5veZ8WP9lS5'
|
|
119
|
+
'RXkjWR26cck6SY7rsul9jsJn1cR/xRrt8+2JJBjQrVjECdmLDLCpNUa0CIyL3ZJ1bWX0JdP7PeFWMO5T'
|
|
120
|
+
'IeN8Q31PlcuBjP+CjM3JiHFdJeC57VkaHmeagYx3FD8HMawjq3uqqve5wbg+CrjQutAGnidaS6h1ko+R'
|
|
121
|
+
'sXsWouoy/ZkTstejevBbHGkSOPKawJHS4LokEq+hq4xE631RiBrXEKnY8bujePLJDWElnMe/vYa4kboz'
|
|
122
|
+
'N/YU99jRcodFS7mwMF+4fDSsngkw5LKZynhmCkO+GGTI/nCXTDbJkKdWI4bsFBgyh51tcO6z/4RyZg64'
|
|
123
|
+
'B2EWPlfeWeniF66aXPKUFXwTpN3DC+gHbw5QxTskaZ3AqdWbOdueQRV2hfA+SkRrYIU7tYjF9ZeOxepl'
|
|
124
|
+
'Mpb0cqkOFYcruGY2p5EVL8Y+6ycDN/QOlczISBYNuBHTzWqiK93WN+qCz/talPEUt1fH/E3WjV03qZTv'
|
|
125
|
+
'jeMTaWqYOO26w5Ef8dKNspTHmyqH+Xv3ir6TYHs2tZjgqWt6xAcIfiC72OLiVXNHKuavI9NSeWuMDCau'
|
|
126
|
+
'5HK8qn4ly+ScxF/nrdaYr3FyEJN5lutgdizLSLqLh3lXeaMbT2vNZD8rEVfGYJdhKshSfm17WXqWl0sO'
|
|
127
|
+
'zA3fe9goufqbHr5TxF3Mddvqjrw7y+g1fLzhney+KHigmuUkoviP6Epjh4ldaUpJfA3Ds1zE+KoHNG7b'
|
|
128
|
+
'2Ve/AOOmPzS8k108Y4pxbdD438B4mBg3PwjGVuJMEmItpXFwtn0n9qunxdU+sXMTuZhd6Qsf2Ax0lXJf'
|
|
129
|
+
'zwRX1tqktnLrlYbVjHh8+3r2p+aYwbMRbzORVgI4vXT0rYE5RDOWrGjCo/twQwGW9kKUCEha9e+Yq2kZ'
|
|
130
|
+
'LY3WlETjE28vdLVy+2s1jsdppQIWuJx7Jspeegov6HwpYcycZDsbcdMYWdzM0rN1ojYYdq27JWaNqLmS'
|
|
131
|
+
'kcC6SdA6zfBERTcVc74/IlMNZG5vyxHF9xITAyZZcCS94owvWFcFM3AAetqzyMMr7BOccb0NcUIprCtn'
|
|
132
|
+
'WFbOOQnGgRarXJU9iyPWaq8utufSTpJ5BoHadLuGQ6vUoQ6dQ3Kj3UKnmZzSE85NLYeFQX+n4ARtsGLE'
|
|
133
|
+
'e3QxLDkw/O90cGy1NgyWHVzdGXY3czewr2b8WXwWCd7ytfaMCBjsGovk/llgPNufK1GQKyoaj9UwH9Eb'
|
|
134
|
+
'eOSg2++ADr+7vQwcXMKat7gkumbW0/IwLLPODdAM557fq61KF0XVYBSweXFES66rwRLns9vz6BRRV8RA'
|
|
135
|
+
'31sovRIvsLvs9DJGBF0uceOnFvF2LGozLg5zyi4WN9dilPUm8Ra2fNEYeQ+Z1gnzEDj4V9XNIupIBYzI'
|
|
136
|
+
'eEmqj3+gfYJjVr5EiurqNW6Cf6b/YVGq/CGGRTp3+RT92I14EjRaj7imp2oM8SSv8wFPZtIXTe9jAk9e'
|
|
137
|
+
'ZquB+pIQm/nsHLDZ4wywKx6DqO8Q4knJA4hUmXBkXKtCbheSW3qqMAcyvsq+B8aJyLhHj4ybXNdArkYi'
|
|
138
|
+
'nvwPlQU8r0CeuT3IOD0KPJtnI+PjLYe3xtekgIG+DBkwApFujOqFgOeLckayupfywLr/RoP45WYib9+k'
|
|
139
|
+
'IIouR49mI/bIT8i6Eet6c5G34bY1wLp/Qo1yJSDWHUhFxrvIWnh0ZPqfso4u90BsE/TIlPpgnaCb3YJu'
|
|
140
|
+
'pm7VB1VGOlgfTMpSbHUYqOWlSC0PFafY8WZrZqEZFmJmFpQgOylLoDT4XQ+UBsmrgNLoCNLr+5hQJNMD'
|
|
141
|
+
'D+61dqhkhjAGFFnrg6LW3i8SDZkByi3i9TJmIYjzfWJCZJ9dxKRoIIUvE3g8kd6BT3SmKSpMSORdmC+L'
|
|
142
|
+
'kh5JCCi+hWRWk+eVjKBSLcXjlrPvsM4NoGVMPBN+FrNFX29TsBWMzeT7uo8lH2hmSx412lphvv4b0LRT'
|
|
143
|
+
'pjGK74Ol9q+S2YyzpWA8914upm3QLfd8UahTFV5+4YjYiVaraCGP5sCA25HWH0Van0F55EFLaLsOxkeS'
|
|
144
|
+
'RV+A0Zag1PiERYOZQIKB087DYDYy6FVyUd6UPs8V+vzpH6xVztHcZtoXzoxGFGsG3GOwEigf1h7KCixC'
|
|
145
|
+
'ZdpKIz9Zd32AK/36+YOMtCytZ5My2CPXsdOU6OwvKtiqCUNYDPS7+EFRm/bz9DA4vWc5LFAe/H7NUpUo'
|
|
146
|
+
'a8CjsIPkHFTO+XUMWXeGj+YMGm/BMLZZxysCdZgatR/NIzOaR0bU/kE0jyw4pNnJqXXY20LbTgptC5uy'
|
|
147
|
+
'rkta76NvK3kMw9qnOVKoPtGaTkxd06Hjvwsr/jutihYlBgqTBdostWcT2T+jLbiE7566hMvHo5ZqbuXT'
|
|
148
|
+
'1CVcKHKqjLa23m9upVzRrZTrF/cfPDTBeT4EObYnsiUjwuBhYmRMMv3TBMNohOfdtCCj95k9xp4/M3YR'
|
|
149
|
+
'XFSfU4FqL6oKC+S+Q9pTIkqX6JTZbpGRaCljvvszQ7Qg3f52PXOaHYHS9kV7tLokbydW9GpYmp0ykakx'
|
|
150
|
+
'H7yktB7GOcMsbGAJMHCz5Tn1C1FtoAxjvCui2k2yNBMtvYA+sctnkQNL37MQtEsnKfoqDFhafaPdmuO2'
|
|
151
|
+
'rdrzxVOGPia2JuojOgJWom7TvhgmmvHS8mJ0Ef5yzYEWTLLaxPFShXo55zJRvSKJaHWMlGGJXOyzNHF9'
|
|
152
|
+
'r3h8qVHTaV9rl8bl1A+miKyyf3nWQjTruw/OC2hUfCH/7TlRSbsoJod2ytbomuPiDKMzuWciup1rbNGw'
|
|
153
|
+
'4vLictZbAsVgnMdKztB5PTesGukVo8h6snbxZcIbNwgodO06DRVdSoqJd6niuYf1YeTlgoMUrHaL+Z//'
|
|
154
|
+
'u+3gkKju4Q2tWCaGpd+BtzUo34bRfLMgWhtm4a5+Frm1p6rJ7oE5th1xtVeOCPOmDmnau5Dy1EhXK2vi'
|
|
155
|
+
'S5Gm1c9FhFndiuj3t2hC4jPT8mEVELi6HhGmSb76RFWZA83Yr5keMEhC6T2kB8Js202PmN7nI1Gq3xS8'
|
|
156
|
+
'3TWl1n9QhPK9RjWl1od8zzVKxGuiWo1ascKompLzpVGyVOw+mueulImiGI3In/v0/0TPlqku6pRoj1Za'
|
|
157
|
+
'vCIM5sNjy4KS9trMFCj6J+fDz2A+sI/AfHgmvE+cq5ftnQ/5HeZYIaEmnCmB/Y5fJXsmOPYTdwyRrk9w'
|
|
158
|
+
'RatBmkpz1XjJ+vkDlOhdCUgImXY88W6uiAcBkNVJjKvu1gRoZ/tYJWOd1L7/xIPaN5/e4KkKPG6z417J'
|
|
159
|
+
'jIm4OcHHqdHjvhEel+SKLkOPW6zGl6+fH2jDnKTTnGTmxKGfBPdjJveb7C5Jxfg7VN+sMTxMkfIrrDkq'
|
|
160
|
+
'xmBgP1sqhuK6ONq+XNKFnfqp1DUs4S5j7I12BvQP/WtB6Boh9oO0Z+bd1gzyu4fXQANGkJg+4Cbi3fjE'
|
|
161
|
+
'3HnBva2FEFxnWZeRSLfPc0UfxfdEkltiVzLUwB9EXxJ84XWZx08K4XGVs8N97x9ni5hjZWrv0ouKYJGe'
|
|
162
|
+
'9voSzpt8McAKD6W4vEp+25VgFx0gMl7gzuhcE9x4TRepVHVjzMs1o4Pc7lewosxxm5PTGLxQ7yqM49Ea'
|
|
163
|
+
'p4lUwaJXicl9hD2TZrxSYwc/6Ikd+Furjm2tw36pkHU71784ow+CqNYpDZoDE1y3uB4mnlFjAfnlzQd1'
|
|
164
|
+
'9kbcGZ8zknyYg5kGXb1Dl2jQRMXIlMn0jmE5rHK/aQW92GQxc0hAbvfJs4x9cendreEcoeUKUxuhn1+0'
|
|
165
|
+
'zV8dVeMZtrOK3UwLHm1bhRM32nnJijDSJil2RQ1IFbTrSQP/RqqdPw7hctG+bPtD9Jkd8oE/FJOpI9b5'
|
|
166
|
+
'JWSxT55mGmSIlxABHj5Hf4K/WbyEl4FA3sJPCuRiFxUzMlUgdxMT57iIYN/9nVQa8ZHT8Uw124/P8XwB'
|
|
167
|
+
'ZXGg0+/OGcCTjZ7IYI30B7oSi/RtAHEZYONFcca8XPxUQZOdK8iDv7ydvdE/g7hHDspgbFSyV2l4ZDBs'
|
|
168
|
+
'/AOdkkybjR3kKvbiy0GnKgp32ZeDiWb3d5KfKwey++aRiIF79Lo3b7SPx8xm6BRFKVUKmvc63mxhKbR/'
|
|
169
|
+
'cL+PfcnetMxzvosUHRA91DLXJPqdHvsQeTkRTUUmQrVvmS1PKgBRng6Da7RIHLaKK/E62d5omoyaeeTK'
|
|
170
|
+
'T6Dg+Rt2Kt9tN3Fidk4tJ93K3yPKqHXiFWg345Fd9BgzRmaG8+7HmH0JFbxTR9usO5O2sGTh6HV4CX/e'
|
|
171
|
+
'qh5CYvqurzDZNUycEaXmwp2RLQd84ekT4ombPjn0pwQUkNv7rilObdwXEE8Rj5NZ42Hjo7qkoEqzR5St'
|
|
172
|
+
'Lkb66WOoKfhfjeAHKLoOPdIFj9QtT7atJ6ujkul5mbNmGwdntC7hUhRdb+1xcvQlVLPcu4WPPhZujFhX'
|
|
173
|
+
'oilONkRZmfNLS1i6fnSZWUPp/6rLd4oy+OISVrNz9HuI2i55zPW9jkyl0cS2f4p9luws5p3/nReJSyRd'
|
|
174
|
+
'qqK7sFYw0mc1c9/jXYoU4iJWrnYWw5J8lzlhti/8comZC9cvauZ5UbS08SWqIxm4pBeSaGlpmdmp84IE'
|
|
175
|
+
'zahIkdywumf16mx7Bqi+LWOSsDk2mxXK8YzdUC0cWP4ovy1uiwoK556+JNkxXvRHLOa8eNAUMeiQHmZO'
|
|
176
|
+
'3q9u3V8pbNsZngxvesUkTf5UcfkeMydO7RR93WGTnjCU9OC1sZfjvTOjoXgRrzvM5i3g8m7gRfcbWtkU'
|
|
177
|
+
'RvpnGOxDc2H0W9ZwyWuM3rj36DzPa338/g8KxLrYkbYY43BwM7M3J6z+yu9E87r1ZOrR/s8fMYfJSO1a'
|
|
178
|
+
'SJgdHlAisTWZkhT01QpqY/hBpgWt48u4w1jS1dUKuukYE97HSyWtZaOyRyC4l4qPaiRvQKH2GisUbyk6'
|
|
179
|
+
'K1miEVUKF6Kor7vmfpoShsvSUlA9BxTpriyyiGUk+6Lwx61y5jxJk4PsEs8X0jcY136V2il8u+zMTKbl'
|
|
180
|
+
'WVq7Fjqr8U1++etQib9Xofv5epUtapATKs2lhaluvV9+bK+Jcu0FyaHxoFBXci5XCkgOycENqSA5/oUl'
|
|
181
|
+
'ZwwUa9z2KKKMcTzgEj8I1ft2Y2s0XfK67Xn+55HLVOx1DxPvCZuo7oqzRYdnF8M60S2q7B5OPv1Yifex'
|
|
182
|
+
'jd7Hqr2PDXgeO+N5bMjzWMbf4u1xJBLp24U9MaRR9Ugz6JBm4JBm6EWaoRrp8hNo6d+CdII5QijTdD2w'
|
|
183
|
+
'9C9CK7uFQqKCQzWdXY10gkLYKHtZEO4xaVvfx4Sir0LYHMtAO2nuVqQTTggV4kzk7WYxKicbUJlmkevA'
|
|
184
|
+
'2zmh6CtANV2nUCH+jUE1XfLhmvd9gpDgUkz2+f0GVCdo9iBv6qgeoSpEqqMEaZhfIg2DxSEN04eKPmIt'
|
|
185
|
+
'Mub2IW+voBKySyj6BpYh4wuuqyBRElCF6EFFH7ELNYSL3AwV4nVk7L0LqaPvlw+DcXQYqhBTkHFNGmrU'
|
|
186
|
+
'flQh+qKgQpwwIEWUGYYEzxwU5/k0iFP/PHp0z1Po0bujkSpbI9TFK5HxujCIs2ce8jYwG3l7S9BazyDj'
|
|
187
|
+
'v6achUc/gox9P0XGTyBjJgsZ3zMHxfm+YTuouGeRcWbqpzB2G5Hx+VKPZEq9dF2oKQaEvcKpNQXRapTE'
|
|
188
|
+
'6vxlau7/Rk0xqaHQtuBUDVXzQzXFojvVFCJHrwZq03agSLxRPpI74NGiQkqdKMooYkQ5ah2oYrPBHm2o'
|
|
189
|
+
'dOoOoNL4Kv+eD//MGiTdlwjtAHYDWKCgnNHmdV++tV24H20XXmX4e1eIVtBXx9pkctEfgU72tuoqLZTv'
|
|
190
|
+
'0aexsAqMjMCiP6KtnKiNCUP6JwbEW5poPL2UDbcq/2yUNDO9G7l3D88WXZHulX3oUf5ZQz2kedv8EqEq'
|
|
191
|
+
'YsjVQoFtXixOPyyaSPlJsMAukjXwtvxelUQMa8ZwewlLLMI+I8TBcMVlfRxaI/bBSnpqmDE2s+rX4PmD'
|
|
192
|
+
'bJxn0Qq8DitW8uhNFnvcqvg1xyyDy834AbRhGNu+zlCe67ZZw7/8zeX4UVogNqhZwvyk0QqkIcIlB6MQ'
|
|
193
|
+
'vwHzbUm3csMWKapVjGz4cy+s5bF4k+/5V2FReElyviqi2zTGv320aVm3SCDfoxX7+DRSJWxmmmX7YWWN'
|
|
194
|
+
'+B0/z8RiYp97cxhFu7wJ/LfHbBOcsXW3WqdkngFNOXdEH3aVP7nADosdVhfWeYhowMpfEUdZhyWXfScg'
|
|
195
|
+
'4ILqsJleuhg1zpfseXc7nnIel0Yz8cftEycWwAL70IQj2k0ceJuT+/7zJH9dxLUpYtajN2JneRn7i+E6'
|
|
196
|
+
'TVmZfebFn+z0Kj0zJSaGeQQbZOw2hK9PVVQYG6Gz9z160xaONrW2xDTeOCtWHGc5VD9ofqj+8SBqqEZz'
|
|
197
|
+
'cgDtMRDxaNJa7IiqLIiqVEL9MyTUPwWu4/PtycjAIHDZq2gf3xuL2HCgGO1YrBWoSuC1JsRr/cJmlkag'
|
|
198
|
+
'quvsO0L9A/NwRCiQHkfk4otELFmM9qrsK5GxZQ8qvTSqqnWSZxGNGmcgbztSAu8+o3m7TJi3h4S9AIQO'
|
|
199
|
+
'nPfPVLSVf44u3gxz0faYbsZJneIygb8FWjWe9Y1JyPD1M5LpD5bZ9py0cZUe/qUE7RzL3c0slxw2J2Uf'
|
|
200
|
+
'1uyIMqSKli9q0cX0zilijmYJqTxaADOnRI5PRKe5Wrj9tZ5h1jLES48YO/WSbVjRsjDXMI4L1QFaHUtk'
|
|
201
|
+
'aO7oIP8MKVj5MfIYM3g2opKjrBskjaWzUjKOugzfyDwtkmK6vVYh8uYSD83RashlkfQqphqvRtsimFxY'
|
|
202
|
+
'c1IRi0f3oHFClCmuDdSpLmFfKBtRuH9f6Bx6H6Z/FlT7U3htr9A/r07ulcSM0FjmbCPRuloSu4r0143G'
|
|
203
|
+
'h8TLAu8QI2K7E69FSz0zaUg8UQRwyasPu6jl71A2UtjkihmP0mv8HxfIKDcqQcI9EI9Ku27Pg0r8PawY'
|
|
204
|
+
'EpyPEDaNhPTsOYPXx2RpVnhP4FDR5aCq5kOVS0cWpQX3OjZRTPqfQLafY6HcW+Xg23EuuMv2pJ2RrQNi'
|
|
205
|
+
'XB52mi0h+3z5VZz4yuwqBmZsd5rsRa+yvcelJ8LbnzJyEpBzK422HHpBCq2v9FC+5582yd5B/7OOyHWY'
|
|
206
|
+
'LN1kj+AcszgYc11YGxubw5bfJKHsI48dopdVCxvGL2NFaikTRbH2fOazGWJipeK9G4ovD7jx2e0F2ixv'
|
|
207
|
+
'N3G18J54kCwH4zPghaXH9lSJ15GHPRG1rC1KYxPelN1D55nGdIzbLd8IAgi9KdtL6EqYeSYTlv8SljUo'
|
|
208
|
+
'Hs9fHdh+e7pHi/bniUwgym4kiJfO2BwVkJ1VGSOeVRnC3I0V5q6wskfDcu8NG0afC9iC9pxz0J4zegct'
|
|
209
|
+
'R3i7TYJWwKtsE1gmIgMfAYvv99YYal3bapQ0PVJkUKE7SEzNF/9nQmy3PhMy0CF8rmEhcPObYrPT+yYq'
|
|
210
|
+
'GkbSORhxXxlaiWSxL5YrgJpqYHhcXcUk7vfTJfjpuS3vuM1RaNtCXWWMWhrY+T1+d5TxPpLVCe+83Xk9'
|
|
211
|
+
'9ewU64SZqbCJlq0er/Ew9hSUhLMeoSst/L2KYDnXhXe0kkV99KCYQaO3BTvVR+890DrBaY5GV3ofNnTV'
|
|
212
|
+
'wgqJoo/IR9u6O9ngJuZlLDqS1ctceZCK481m2jm3iHn6CPmIkyZFDe+B/JW5stC7VCa+Bc/ptEd11JtM'
|
|
213
|
+
'5rooaSHUwWo1Hk9SB1pUWb3E+IqVmrbL6DswjvlYW8whr8Rtl0EtfdRN6l17Fa7IehseW/pd2d1kag4q'
|
|
214
|
+
'SwgjWvicZYRLl+D8yGqDvDrftO+q4SM++vTMWR1lzaN1ymdgSX57UNYBL4x7s+WYbb5otVuyiPHSCv/C'
|
|
215
|
+
'VkImaG6ytJGhfgtr2ZkoJm3IyqY4YzUa/lARFj8smnhOHVgMwu9149H2u0xpFD5A2dKHRUB19iL6fg/5'
|
|
216
|
+
'NpFDx9CQhwY7KpTniOK/xyfmzA1usGi5Xe2iiaNz1cQ8chNMtJoXRRHQRU5o2j98ETAza9HMfKeFyelm'
|
|
217
|
+
'ouji+2xltF4mXUB6TWv33WX5Iy/nZmNPqJW/EaNP3cwS8hdJV/0MpBkFsSbeBhoWvalbg3jspA9IfxNz'
|
|
218
|
+
'EhhP0NEeIakLhHd6qdUnqsaIdJCcLwkLUiwyOGlLo9ZJHkIrBCb3whLyoapp6ueTSCEXyZmBt+o/j2nC'
|
|
219
|
+
'RXfEd/8A/kP2/7f8/PjcH+3/X4zL/y38/7f2/pC95wfw5v99vI71f9cwS86ktFBPxTpN66zSwdhettoq'
|
|
220
|
+
'ezluzLffGjmcQJ89Y426qlTjX1lj/p5SVnePLe6N2d1vPmpL+GCOVvSELe0/flLW94Rtjk3dZHPa1PvV'
|
|
221
|
+
'ncV7bHOfU/eK9toyjqhH+vbaFhxTT9j22TSn1Ap9uy3rjFpLPGnL+URd1v+kLe+yusm+36b9Rt2p/7mt'
|
|
222
|
+
'4B/qXqLTVtiWPtLfaSs6mD5hf9bGvZCuKHnOVvxqupZ83lZyIr1s4Hnbsr70ppZDNsOH6Z0lv7StvJDe'
|
|
223
|
+
'S75gK72WPjLwgu2e79InWn7l/zpWFQiKvyNtR3T0Jgf081Ok/zOcpYH1vyzAo+ivEX5HKP/1s2CHvmLy'
|
|
224
|
+
'Jul/r5EM2AXvYwF79O8a3ET/Y1X0vTf0ORzh/+ORhmE3SP/7GVmY/34Q/yfp/2zikoBfhDsBF4n9+kQH'
|
|
225
|
+
'v5FT7KMBnxF4XvQUfHbAviLEPlfsfx+6DvO3FeE04IVifxw7Q+JcHsCtIfjqAL4vBH84gP8iBK8O4L8K'
|
|
226
|
+
'wRvEfq3/a/iNCMaTAc8L2J8IsW8P4J4Q/Bmx//VnMH+/BvHDgfZ+EtLe34j97wtdxPz3g/hvA/ZXptij'
|
|
227
|
+
'/n9b7NdyX2L+1wn+oZjsD8R/Y0r86LlnA/7/FeL/U7Hfrxi/Hf9M7B93GT457gi/GvDP4Lf3z3di/7gm'
|
|
228
|
+
'4v77QRyX+PNhHj6ZDwiPATwO5RXu19FBfK7Eb7ca8Khg/DD/CwP4hhD8HsBnwnUj7vcXxKsC+N4QvDmA'
|
|
229
|
+
'u0PwpyR+PXQC8Pgp+GsB/KMQ/N2An7EQP5cC+L9C8L8G8BjR7biM8uNzQ/DUAM6F4AWUvx8eEN3eD6UB'
|
|
230
|
+
'fFMI/kgAbwrBLQF8TwhuC+DPheAdAfw3IfiRAH4yBO8N4B+E4GcC+KUQ/GIA/zYE/yaAI0KciqNkRnhU'
|
|
231
|
+
'CB4dwFNC8LQAnh2C5wXwkhDcEMDvD8EfCuAbQ/CaAL4zBH88gDtDcFcAfzYEfzGAvxqCHw/gvw/BTwfw'
|
|
232
|
+
'oRB8JID/OQT/ivbPx2+IKfwM+D8D9miyT7WPDAv0cwiuCuApIXh2AM8OwZeG+b+iXUL6nx/E14b55/+D'
|
|
233
|
+
'pP9+EK8N4I+G4PYA/kQI3hnm57FAE/w4LIovhE1+7VwyBT8SwKUh+OsBnAnBTwTwuBD8VABXhuCnA3hK'
|
|
234
|
+
'CI7+PQwLwk6RsNa/Pg+uFzQ01gu/mcIxSzhmC8cc4ZgrHPMqNqOvOpXXVu0MnG2sr6pCv7cut20th5Op'
|
|
235
|
+
'l9vhLC9nKgKu4KemqjYAmisrbzneFDhr2F4RONu6vSZwVrl5h/Dlqg2NNbsXbL7lc+u24Ms3bLUEziz1'
|
|
236
|
+
'cBQOGy3bG9H3traaa2q2bSivqC3faN4c9Ni4DQVTXyXcw8t31m9urKpq2twoPGb7VnMTekzgYnPtgs2Z'
|
|
237
|
+
'WVrhamvV1oaqxgUWza37gGyw7EKIH5zsqQUbttVULsgMBbJCuux2s9vRO9tmT+/lOziZeiMrZBTuYH4L'
|
|
238
|
+
'vbNt9h3R0NH1o7mTw3v7g24BWaFAdiiQEwrkTmZKaMduut3pLSA7FMiZzLHbfdwCsiZz73aLW8A0i+xQ'
|
|
239
|
+
'IGcya2/3cQvICgWyQ4FpPnJDgbxQYFEooA0F8qcFppmcSSHN3RYyUreA7FAgGKow6W734p9lP4xl3QHL'
|
|
240
|
+
'zsoCMtLAvM3LmW9GX+Scv9W8YVtDU1Ye+gLnwvsbquobFm41b65daNwlzG9j/bYtVRsaGxY+uPTBhQ3b'
|
|
241
|
+
'ttdvqFoIU7KxaiG4r90OtFE+OQeDp4i7/IeQKXbbtX8O3QZBoOV+EgvCkKKTD9hUPplS5ZOZUT7Z9eW3'
|
|
242
|
+
'UVn5ZHcGT4HMyqf2qf+4sTzAZ+UBQgsyWvltnVge4DQ/pZUjTiu/jdTKb2e18um0Vn5HXpvSh4EBnYZk'
|
|
243
|
+
'hfZliGEIt90Zzr7DANzJz230FjpCd3rBZNbdGc6+Mzxt9APzccrohzxtkuWmIdnTkJxpSO6UZJrW05tC'
|
|
244
|
+
'PE9y3TQkZ0omhviZpLspKRpiM0l405DsaUjOlPwO8TNJetOQ7GnIdD+505C8aciiaYh2GpI/PULNlLkX'
|
|
245
|
+
'2vhtoUM4yX/TkFtBT2XA22fl/wTMuhOYXVqOdJf/uCAz8Dcr8Ddwd0FO4G9u4G/gg9//A5AH+pQ='
|
|
246
|
+
)
|
|
247
|
+
|
|
248
|
+
def load_bignum_bc():
|
|
249
|
+
data = zlib.decompress(base64.b64decode(_B64))
|
|
250
|
+
return binding.parse_bitcode(data)
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import base64, zlib
|
|
2
|
+
from llvmlite import binding
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
_B64 = (
|
|
6
|
+
'eJzte218E9eV9x2NrJFteSRjAzJIYsRbFcLL2AYjY5uMLCCGsqmApEvTbCXZFthZ28gvgO2y7cgSlkO8'
|
|
7
|
+
'qUqcxEl59pFTmjjZbOtm2ZakbFeyXMchbuqwbOKyLJWJcQwlwQskS/K0T/fcOyNb9pLf86Efni8Ye3Tv'
|
|
8
|
+
'f86ce+65/3vuuXfEpcjCdAQ/2fDXuQOhP8FPqT1yaQMAKYCVa/jlO77xy5dq/88/fS19l7iTAsysQahF'
|
|
9
|
+
'i1C6wowUUF8Kf4xv2fdtQ8rtKl1e4XEqoFmRos4xKZ8sF/VbFaXH00sHdHnZVrX+q2l55R1lfZVme3uH'
|
|
10
|
+
'8kFDXuny+iF15vL7hPZO3VepvMqA+riBW7at4wrKyS1V5qyyrArteoxb9obQrsmJMe/Mzynv7FzO5OSV'
|
|
11
|
+
'ry4cCmUuG5rXwRo3VW55cEi31L5NkbMIPcEhtAbbtE+pe7207YnM3XD5fn2/oywtdeW2wZTS8pXqcXFC'
|
|
12
|
+
'HVquPseVBbj0tmJ1nqXse5y9LVMsVPCWttcfdlMTaqFHfSxf6VCmrGpTZFPeY0hYsTeNQukONYOe3bQa'
|
|
13
|
+
'ORRhNetQIguNrL/a++yvKLHUErncZaNO5FmQQxWpPxteLWQuCCt35Bi43gGFVbjPEKkXC9vC2WnIOikI'
|
|
14
|
+
'aatT5+2kljtCImVTLFU2KnVolx6hATVCi6+vuIPHgZqihbR+jhu2mfp7jGd7MuJjxnNR42SPYZzyBg97'
|
|
15
|
+
'gwWuYIOaaUTqw83BgjDTomaaxWCTN9hY5T+kZloFRjSN95jOUtyEz9TvNrwPGmymSz7TWbdhcsw43pMx'
|
|
16
|
+
'0GMajhrO2kwXXKZztiVnqQgthoPeULDRwrRW+evFYCvqp0xxH279gplFbaZ+m+ndHsNkT8Zwj6HfZ7pm'
|
|
17
|
+
'A20mcYM62NDNFOz1e11Mq5f5Gz3zbZd/g45pLcNgvZ5pEKVCsIljjsAtfbBeZJpJ4XAVFJgj3mBrFZEJ'
|
|
18
|
+
'BesB54JNYajSDc1Mq8i0NDMNAPLMITX0DuONYrBAzbRUMd+O0FLV2kfDrUNErDkcPFzGHCYaGnsBZCQB'
|
|
19
|
+
'qB7sDtY3M4f78K1D3UGs1huEVg5DQQx6e7Hf4FazhWnhg4dknGmxMA0hqY90izrYAiDYKRJTQ0wDsbxF'
|
|
20
|
+
'R64COJCWC92kIAYb9KAh2AJjVBasDxOxbqaeaAP7N3aA3/wb+phiL12oToDdM+CmabA3AaoZF21Wovtq'
|
|
21
|
+
'up8bw2RhIlr0BA8cCB6yBAtEqfvBhhATMV6KGi+IxrNmwzDFXRyDsmncbIhTJuDSu3hYDZOUEbWGgq0W'
|
|
22
|
+
'RuxmWtXB+r2gAfu81QLWBg+HggW6YCvPACtaqvwtZczfWBikTSbDIGW6RmH6Mbj1qqAVqVthdKzBhnCw'
|
|
23
|
+
'gMcsbe0lHkDvcwYgzKgro99nnIwab7sN130Z7wuGSbMRwEG3YYgySYVzPsMU3HIZBjEDceFSjxGoOBU1'
|
|
24
|
+
'XushwjbTIOAiSOJHhsaMk5RpfMw4BGDEMGo2vEvEhinTBc4w3mO8Tmml6uUIOwy3iFjcZ7pkNl4kGoZ7'
|
|
25
|
+
'TKM+oyQA1fNu0+CY8WIU3xp1m85ieeNZQKCAYEqawG9wKw7zMWq4kMDHewxDZFLALfDzBO6dCbowSApD'
|
|
26
|
+
'xKQJmwFfKWO/jZULbqmA5yZogAk7bjYOEqsm3KYBog3sv8ix/dgM01QkY5wzyKBrBpycBsMJkDOIGUoK'
|
|
27
|
+
'newz36cQs8VVPOPyu4E5qKnPZ1WK2QWGIRQqdbGR9iPb/y8w6btoJ2VNATqlTtL9BujChR7DBSR7CWIF'
|
|
28
|
+
'OgyTooqGgfbyjAiBqIoG8nhhOgPlrHj0vWGmCU3aTNd6DKjcNGk2DLqNoAGGBmIXdOoSBBzBcC1qgBgC'
|
|
29
|
+
'UWjCbLwNksXJnNEzzb0Mh1k6Cq2HjZcRB3rGxwxnfaYLEQOQebIHu3qCgphjIfNRzRwKM4dHgvVkagNv'
|
|
30
|
+
'm6Q4w8lxpr6MaYjI4ahZCkfNwUPA2AhzuDeI4wZMUj2JOWVMKwlBEECaQ8HDHAkjrqDXGpTDS5UfguQh'
|
|
31
|
+
'mIZStYMugljhkuIS09oMQZho4IOtLuaQJABVR7AFwp2XxEZXEEIKyB+2YAQHHHWwFfxGohBM28aqBA5h'
|
|
32
|
+
'hyNzh8QcrxSCoAvE1BaOmATBhFyb1EyhXAhKhWaYwiRwwRg16YlV3cEWHdGGY4vfOh1bQtMBxz8ThcIz'
|
|
33
|
+
'YCIK+b2oQL8DhRSOWusCijsawQTLB4KNVQHBFI2oYPlT+G7KBKoJP/cRiU73FrJ7C9mXLmSxXwiYJA/o'
|
|
34
|
+
'Jjjt2Ah7ZUQ1NcVejbO3HexNdDpWdNq+uM9eGPAXokDRGfviEX9xgC6O2DedjhWeshUF6JIwLWhvOrRX'
|
|
35
|
+
'kO6WoB3j2d+DBk57Q9Be4dnbU+zNEdVlh3bCxV7htLW89moYJOOUMGK3DsUKu+iSU1FrxF6CxpB2KoJb'
|
|
36
|
+
'/1jHIJt2jNN+5GBvj6gmHOyYoP2UA23ayKKAvXCYXvyaDQah5LR/c6e/pC+6qIMuOQlg1NpJF0akgn1T'
|
|
37
|
+
'iN4Mtzpj1ghdTApFp6BAbz5tLzlFZIZiVsBD9k0jUKUKz9AlEX/xGboQwG66KAC9A9xXGLEvDviLT/lL'
|
|
38
|
+
'4pRUNYz64FYRESseiRWd9BeNEMnzAPqJAJbcNByznvEXjWLlRcN2rPa0vRAQKETs1vPYb3CruMtf3G0v'
|
|
39
|
+
'knF/cRddOCT10VcciGHLwc4IMXWIJiZFizvINQwOpOTCMClE7IWdoCFWDGN0MmYdIWLDfivRVhL3LR6w'
|
|
40
|
+
'YT2jtOm0zxBIgMPTIGWcBs8nwADd53O+iAmyBO1BD+GsWPEF13dUp7SR35R7i9S9Rerui9Q8tDySU9P7'
|
|
41
|
+
'/FUpQ85GD6DlYa3iG2VthWSHZe5LWZBg0VKYVcZLbgMMHCxS53zGmxSQBDzTHKxH6kboVFWwoYpulvwG'
|
|
42
|
+
'QRVBLn2xJwOGvj9qQP3GSz0ZQCe8ygAJxzAfYFkZoSBU9gYbUEcLrEf64MEq7CucmUM3myHs0/W9TCNk'
|
|
43
|
+
'yJBjdwebRkByKplFLkO8xyRi3sISCathR/K6RjcCvcPBVuI6yKh7SLYJGaDPdNG2ZJAkrgM+0zkpi/YZ'
|
|
44
|
+
'pCx60GwcopZIOXZcSrZhUwAFasnFHtMFIjPuxmnkkNk4SRJsWGrJgovBYZ+xH3onJc89GbCMXoiapkRS'
|
|
45
|
+
'NbPXI3BLzronpVWeSF4DMEoEQFIwTrgNsCvBmb9onOjBai/2YASn02YQNo2QXBomMiTqMg4LtE/KjXEi'
|
|
46
|
+
'3S8l2NAFYuq4j5jkMg2Q6wg4UJQLE6QAWfogWeJhjM5B2kDEIA+fSGTOl6czZ2EmnZ6YBsUZ8FoC7KdG'
|
|
47
|
+
'XQ4UgszH/a1XpQD1AFp6LxzdC0d3DUfDnZ9iktCuNFF528all/IMrn9X+bOpNk6Nf8NCAFbwWFGnfXG3'
|
|
48
|
+
'3XrKvqnPvhl9rINZxd7gWeRmb+rYjx1sLdLeCLGfQHrDaUW8cJ+iirrs1m5agGTpFFUyZMcpB2QFJ+yL'
|
|
49
|
+
'T9lhFd6EbnPaTx0sytXe1rEf9mENN6dwfvWhoL0BSRHHfupiIc+BTOlWiP0CJE1IWQJZxwl74Yh9cSdd'
|
|
50
|
+
'fJ7WsVNIex1aH2HrkQ703PSyVwRtLaRVOlAFCRh7C0Fe1EVyBujIiL9oMmbF6YfPOgJ9IblQSM6FrCfp'
|
|
51
|
+
'wricMhVLKdMZe1GELor7i87bcSoCiUQnyYtO0jjFCsUgySkeihWFSKrTZ7eesMsp0CmbdcgOeY5Jqg74'
|
|
52
|
+
'jJDP9Em5E11yBhJFoqHbXtJHF0kCUO2NFUNKdprkb30xSHtAvqgLEJIUBewl4DeSKRUO+QtPJXBIjUIk'
|
|
53
|
+
'w8HpkF1KbMBOYqqvOERMgoQHX+lNAb9BLsSkAjxoJckVjNGmTmLVcKy4g2jD+Y9tJikamk6KojPgyDRo'
|
|
54
|
+
'S2RKNitafPx+VC5vxHj/HzGpULeCo/5GN6TIHO1Pl9mlyJSJBEMGafbVCPs5AnqAT87ErCgAWR9QrvAU'
|
|
55
|
+
'VSx5DNJC9MkU+8mICgZ9zMWiMfbGiAqIhPNkoJ8XMwES40kEyd55eyEaKIaMujO2CTTAMI1AKgjOh8TV'
|
|
56
|
+
'Zz3vL+wGN9oXD9s3TYJkczJ/eHbKoRVIkmzH+fxAcmbuKwRij9hLiNP6VGPAsYjqr2FGCNpPwtoPXdqa'
|
|
57
|
+
'PtVlQXsVQB7IzE5JhRA7LuJbH/KYtLgwxX4M7BW1nzi0HxOZmzwL+HiIvQ1VgYXNAtkyYHAiwo55WSzm'
|
|
58
|
+
'YqdGVLAR+NilbZaqOtiDwS0ihrS3pX0KufVphL0uCUA1zN7i2Rtx9jMoR9hbDiz/iQMjUJjSsZ+C3+AW'
|
|
59
|
+
'wlN4YiSBwxZDYG9KfQQ/89hysHOKmHpTICbx2svkOqljGxKFRlKYgulMNikwRld5YhWvvcURbWB/XFWv'
|
|
60
|
+
'w3o+E5k6jhlLgI3ToDADHkyAY6jGmhePp/CukxmBbbDS+UbTxOyCyfT/IqFMUInUFjE7YBO6YVNmhyi0'
|
|
61
|
+
'OCLtR2C46TjuV20Ex4cJpAMu1cI2jYQRcNpHeJ/F3hZZBINb0kULMCkCMetroAFvgkpgpsDWBjjTYS/p'
|
|
62
|
+
'9hcCG09FIaZt7qLFWbuzD5H2U4T3gzRu/ZTdkBy4gHWwPTxPJiwC2lwhLh2LsLfj7Bc8GR2OvR1iJaqM'
|
|
63
|
+
'I5kzVwX2jkQkvCXEhRsjQC32Tpz9dIQIc9oPCW2uCviRcYilJKKOEyZc10HvZIbUAs9HWPCkVK13MTDc'
|
|
64
|
+
'1yUuCXIYx7ccWpibkgBUr/FaYOwnhN7Xee0VkI+zVwAhnBlzaMFvmDAQsYGNCRyYM04IgNmik1kEXfiQ'
|
|
65
|
+
'FMaJScAHfBXZMY6RCzwpILxZxtyDMQrhdQGDQDaiDdNDN0OPhmnO8DNg0zToSIA6NtL+wtXEoaK0cQsd'
|
|
66
|
+
'tXT7uXuJ973E+89KvPvWXcIRSCveh+aNML41Z6Q1jrMo3bp750j3zpHueo409q1fStu0PPQH1HHvfdm9'
|
|
67
|
+
'92Vf8r7sjwoVOZFG30ERaooRs0f7X2uXIkypTkXd24jd24jdfSPGq9Fu9C6H37GaVQohTdTX8IPxxAv6'
|
|
68
|
+
'6lipigqhk2jEht+3ntSo5BeyMbdKKaT5CtHiF/Kl737Ib2D9kQXb5IPu7ILlVTqUKjBY7Ph6najsxe/a'
|
|
69
|
+
'dI8L6Ejf2Df8JLKJeyCy3ZFPyDPlFOtoRspiJXmqQDKvzO+Kjakor8q2SLm4Y6NezB8VIlFpPT3lfsKP'
|
|
70
|
+
'uJS4RlwFYnYzOaN4QNk4hT9j7ZUsfomcr25zxUoZ6GAkBz2iUy7u3EQ0u/xuCazhPuGgavcxQljFve4b'
|
|
71
|
+
'ksxD++09sxS+1V6uJfmheoIbdUxRul7KUCN8IXlM1IjqEELb9Qg9gBDKCgjdvGZLrk19LNUuqLPaXKW5'
|
|
72
|
+
'ukHfTm6ex71SR79nzWrb34ZSswK9z3PF5wLuFwOppSt26lTlCveuD3JtkR+nvvV0KvPD2ix1mbU7lV5u'
|
|
73
|
+
'yFI9ZF2pM64wZCkPPK87kqV8qJsXbfqOaMCt6SgvzVUpcwwePqqnX7Tq87uFE9Sik75FO9WnU/sX9UWV'
|
|
74
|
+
'PRlPpfoW79RdjGesVHt1TJayULcy28szTZGqrPZN0ITdOErlm0/7UxUGdZbSWoUL56MBG2T+3bpxKGgD'
|
|
75
|
+
'FW1cR1SpYAP+5/mIz7uT+0zEIMW0GfkLBeZJf6qPt03SVFYfOTyjN1X5Z3JSWHmagy0RprCP3ijCrz/j'
|
|
76
|
+
'ZRIVWqdwXGnwMt4w08gxsBI14ESGOawjZQJKAlA+JDCtLqZpRHUVrqRaG2LxAWCYwdcR1Se8LFbLp0vI'
|
|
77
|
+
'S3EWNOzQqjPnlbZ3ZudQ60u7T1yI/v2mde989JND1o+/Y7tV0bT3UvvZ31272b35u3/15Acf/OGvnvve'
|
|
78
|
+
'Oz/JLf7aun8ZP7ix5D/W/mKwyCLq2h8pUyD8JTJRRMjFbNXHRtK2IyTAaOt0CF0PZ1foHzOnIqQGRKFA'
|
|
79
|
+
'ojG7Uhe7fzmFEPwKINfnf13jdh1djhAHImqQO+Q4sUvTF1IiBL+IolCE3aHpLO+YLVPl0sdWz9LTQP9Q'
|
|
80
|
+
'Xzm7LSMnEi34W25E5rJfqUOiZCAien7kNdBrZukpP0rnPD5Lz/nVhrdd6Un90rzSZHZLAthGKLnKNrDb'
|
|
81
|
+
'aCWoJjZiUfurTXtNUtsUgRT63e/Rt0CD1DbWFQmlLT/OYIskk6DU/vB90S2SXgWBlPzJV5/YokAuJD0K'
|
|
82
|
+
'LYjmZ77GZxEhkSCI0rxy/sXnpcanTTq48KySND5j0kiVRWp82qQ3tu2mkCPZpGsFaelqRCebdMb9mIAM'
|
|
83
|
+
'ySbN+x5NK7CWaZMeaeVzEEpNNunah8+LRPe0SVuXtquUEUWSSavmtxRw5PuL0yZdKTsOo55s0o6dnalq'
|
|
84
|
+
'UZVsUlUpLyBrsknlT/9QoYgnm/RvJwwGHa7OmHQ7EBIhdUwy6cpXvgYjoEz20terizm0MtmkqztuUZRA'
|
|
85
|
+
'JXvpsZU8QmFF8qD8Uu9GSjEluXehVwYQak+X2kcKbPmGir+ldCgt2ar3X+JoDvHJLUb/dimFQskt7jhg'
|
|
86
|
+
'SFXjb3XOOKH3VrWALMlO2LTkq7RCmDUuf1q/aE5zD3esopX69TKkxs19rstVCahm1hAvG9CIKJ7sqx9t'
|
|
87
|
+
'G8xB1EiyVWlPvboeKSK03EPS4n22eUizRAaUuMXHU5fSSL9ZhkiLz/zrp3JvE6qO/e/V0EEeJal6Zucj'
|
|
88
|
+
'Wt2MEFb17rHjYPZ0e0gRGuUcpz+mEJeuRBsAyDN1G3Iyd4Y6U1c+OKi0P3osrEzr4c76TmSKbZZQ233h'
|
|
89
|
+
'tqW24Lxv9Njffi1se3LeD/7i61W7yv/x92lLb4tjX60p+Jbt6LwVBT94bcsTv/7x/bsafjtc2UvFnhut'
|
|
90
|
+
'KTampb3P/+JbqvlXbv78MeaFf327eqOlhHnjd00O/fiPf/4rzxvpyjXvvOe+Y+j67ge2jxtGM3b8Yuzg'
|
|
91
|
+
'F4cfeu5P2YGq5w7Ffn/7xom1H/j6az77tuGll39XFyo8se+5t9N2ZGuufVJ/+jvb/tXm+cNpzctwR/fq'
|
|
92
|
+
'loeuCj96g334hfurjF8dSUM/hTV0AvqWrxYNA2OGfdlUSYfdGoh1lpKNS2N3vWYCaaUDuXxNqakf73UM'
|
|
93
|
+
'+/gUIuZfTBKlEkiUhps7m7zMt9X4CyBeL9PqpQ81B71cMGc4k70eYsd4bR05u5pysPm6AeMlM2wsIFs3'
|
|
94
|
+
'7eOfwAnyiB12fsVn8M67aHgq+5CL+XYVsxEf8DAbRXy+gg9+LMyhOymg9rAYdMIapw82dAdbun2r8Wl0'
|
|
95
|
+
'nJyz8nT5EH4PJr0NM1x047dbkE2edaveD+GTZum8ufB0zAr5eAcN6eQ6aPQPbUV4axvTvFUd9O4NNnj9'
|
|
96
|
+
'Tfg7O8EmfbApHMx5d4/2E+kUjRyAjXEsZNn5nAXvaWDrds5sgH3PxbgB9kzXKNM+/S5rn33TCX/RsGO5'
|
|
97
|
+
'3BFX8HAz09y9a+ftED6OzTc9Tr6jZMZ7yu9QeK8zbDZOuVUPH4W9bKyoD3Jbe+Ef+ovH7UUdUI11/ioN'
|
|
98
|
+
'eho8DPao8VlXQ7fvsQ/J+58rkNTzy6LnbLBjWzg6ZrwEBpTlwDa95JR/cSBm7YRkNlZ8OloIifl5uni4'
|
|
99
|
+
'7FS9Gn9dqJ5sT3P+fZC97tJ+HCdnzDzer3zmYOtgC8LjM9FbcdXVODvuYO/wyy5fdxtgrzk6tvC62Thh'
|
|
100
|
+
'Ng7ARtNsnDQv2cf9r6Iz9pLTdGGXv3B47xkYfegsbFtby/B3uHLe+Yi9wWvH4vhMFB+N8DEKf2UJ+uLs'
|
|
101
|
+
'BqpgD+Njtm5fwFYYj4HrSmCkhoWBsPEs7FNtpktRw77lFTw7hsdXexUfutjN/oN6prEs6AwHj4jw7E+7'
|
|
102
|
+
'KNgr4OQd9jFAp2HwmKbMPL/UbQJT340ad/uy9+3cz7Owl7oRV91waG9jVeyVuEo+E+J/KPgPVeF9f87u'
|
|
103
|
+
'RbBLAx6ehN0D+JDG+wnYGYAzu2KabRmDZnwwebbH8B2f6SbeaA7+VAUMBD0wFvnzCvT4/a28Te+OnrLJ'
|
|
104
|
+
'L1L+oCg5E9vUBbZVXeTI8R5sTMGB0Qw8+u72W6pJBzuGtLibU+B/0lPUAhG/AubncVMZZ+/Q5KRWVg69'
|
|
105
|
+
'zfk6lXnbtm3L8pWGQ/85MKQuhHSrPDYM69iTxw2/Xlz8Ttb2BRTas+Wr3Nc9DY3VB+oOV1S5G5yN1a0e'
|
|
106
|
+
'x3Y7t9NzyFNz8HCTu7zGs6/BXetZ4z1QXdfkabB5vTUerqLGXbefOyQ9yeXlruXX8pyFoGvycnl+bS7+'
|
|
107
|
+
'x+fe583lnI8+vGej09m4bfvOre66Fk5WdKC2rtp7oMlT18ThlvdU12LF9nX2++/nHi612eDJOSI1NYdq'
|
|
108
|
+
'19YcOOBdW3uwscnbcGB/g6exseZA3X60TP3Okk7uNd+aTm51mG/rC/Sr+5emAWrp5Kwn+aOO70c1/qzi'
|
|
109
|
+
'fE1I92u+zJ8f4zNHNLGHhXzloMaXFwt5z2voc7vyNcEHf80fWbIh1td8XmPXB6gNsZGD5zVUfmykqatT'
|
|
110
|
+
'udKyrKDgFwXP/Wzj65t+lrcw/2d9//jGrmNn3+xbPZ/g61/P2/jmLkUGQq9AzNwIY5Ke1mCBWMS07vXC'
|
|
111
|
+
'zvU0pm7hSKxtwjAoHTxH8TSR5viC9R+62I8c+MxvXEic/PWJPkwS+Uhbmtd7vSdi1lNU0Ul/SVdM8df4'
|
|
112
|
+
'9OXimOEihw+A4TpJvuc40mMYkiajO0rhtzrSwX96hzQpUn5DjuUg0MVgShZ1khduQ3TRags8cg60uaNb'
|
|
113
|
+
'8JEAhLKrLu0YXMnbvFsh7ccceyPC4sXvPVgcgU6IGSbHFBAo6ZIwbKvt1lAML65ui7R6L1O3mVXb9AFO'
|
|
114
|
+
'v/4VMZ2i74Z7vwR3fQnu+BJcmIsfxXhnVK/UEHsMBG/vw2kMXsbHu1DPMqTsxP2pWDrqoo469OUOxKlV'
|
|
115
|
+
'8/RKuyaUi2w8T+ere79paddnV6I2V/hzn6igoeLRtbn4T20cTR8p1WlyhWGkjHIZ5wReNZBq16RBTVhE'
|
|
116
|
+
'/zAV/VntWv4/tdv76J/XrjGpXTwW49kuIVW3SSFEpOStYunFpLZ3z7Ttz1cfe5RPtP3H5LY/n9v2+eS2'
|
|
117
|
+
'l063zZO2O0nb+P8hnepE2WFhV2iPSK2Yaf8SaT+LWh0W0qbN940qhHa9YT+07Xq+X1TmWSJ/qYzq/Aow'
|
|
118
|
+
'LTQs6su9YUrdFj2YlvL9kILLs0a+oqF+myKCRedAQVxzybWwe4U3sGqBd0A8tlWjdMsdPLdo9Y/1jp+q'
|
|
119
|
+
'lTlIbqvc/1IKVU588812852fabbrVN9UrbwjJ5a4H6WkH8dJP/A8y852bM/eWt2JRnaLuvHz4E+e5Mtj'
|
|
120
|
+
'bmls71fmc/75/Tk4ca9YGk/2b45SuRDlDcSttE5Jp89XLgtR1C8FNXj2cegq/7xCb60UUhyaNKGN00yo'
|
|
121
|
+
'FZcXqB7TX6ZtZSf4gfBe/NCa+e0dAqe/r5u689RSvWPM0G7bouzXhTi1/xtt8aEU+8LOb/LeqGBX/qcv'
|
|
122
|
+
'rFzR25Y9io48mKnJtYxCd11Ppgya6VVoLA5TMgWa5P4ter4N5ZJU/psq0n8O+r9tlX9NLLsj+uxY2oDr'
|
|
123
|
+
'ndD2fSjJH+uJP0LT45qNPUFvtT1EzetC1DKU8IVC9gX2iV1zrEBt47s/c4V8iPRYVwfNCyoPYh5GT9sQ'
|
|
124
|
+
'vepELEK7hKNZOSw/ICKg16oH9MM/VdJrDW/AaFM5mvH8DpR5NiOXv8Qpo2L60WWhqOKX/dh5WBX3zzYF'
|
|
125
|
+
'qDon6OhVhipBfVSpW6KO7VaYrebNukUvKb9e9ZCol8f5fp1/Db3ymeiztvSBmX71kn69OtOv88LnzEie'
|
|
126
|
+
'wqEZ7xIKz+MJ+z/6VbFUTMkuc3fYelRmtWqR0bIKPZxWgTZbyJjCbAn/1pY/EHb4Yeh+zRpyYNg4s2Dv'
|
|
127
|
+
'r1K7OmyUyOnL6kMDTP972Ss4ZWqbZuVUpp0fiIi0XunPi9PbuAzBkBtW6FRbYaj1/hUDTJvwjIWrVLdp'
|
|
128
|
+
'1k/lbOXDCn2av0MbQMtKdZXx539jaaPmi3b91iOc8rG3FaUB7nSFcDTfeNul6UXHYrzqYeuvfdptRzi1'
|
|
129
|
+
'W2jnwhFNU8pDynDcmq3/wbx8karu830eWmbxiKE7gqB6Dp5Zua20kgt9rQXYojJEOH0XtTYczU8YOHR0'
|
|
130
|
+
'vdiu13uR3+VQvRlWZX6DFk97oME11h7c4FEHbrA/awc02IgbRNqkBouhwTu+z7tXWA6Lus/P2J4wqSsN'
|
|
131
|
+
'yvHJdpe2/YPlvs5D1JHvZXGvZAgr/1n35n4hGFuYMTa1NS9MZwgvmg2hMnAwUrf5KtlwPEwZ2SoUztT9'
|
|
132
|
+
'RmTXc6nicsWmZlVT2LcdrczUa1uPNjpyehV3Tlr0/8F3K3LfdM8fMXuzX0g55Mg5Xdqh2PKjF9mxyXZx'
|
|
133
|
+
'fmDjLt/rKV8J6g31MHLxHwXWDJfyA/EOPHjrVtSYTRfcHT4zAwO9ZMdo6Ye9lPHJrP8cHF+8O12BabSQ'
|
|
134
|
+
'cGul2r/GnwVTx5bW73rHm+Lu80QUuaN5TT59Tc7mJy7kddggwrTnqvHEUmEwLrz4M029LgCPaNv40Tyx'
|
|
135
|
+
'FKZg+55Q7xp6lRIer0p5RZM8/6R41DYT07sE33zuh94Nr6649lO3xFEc95c+OBTaxQYYoQsh5yN1h6vr'
|
|
136
|
+
'Kp1bmys83ibIFXG2xpGUDWUpX85eqX7qvp26E3u6OWsvb/PudsdElfGfzIX0xvCZ9RZ6g8W/YdTbHV3s'
|
|
137
|
+
'cEdU7hHVYpXVSz8eQ8y3FtXo45xm1AVlwGGedxbCPFf7rfrAPPWKzTrFa8oGASJY3w6x646gf20eV9lh'
|
|
138
|
+
'i+LJUsEzyjdwzC6bhPmM8o+GFwS25pQL523qNirnPKXR0VK8/WY7J0I40g1En+1Rj4NPlY19nrI2bcIf'
|
|
139
|
+
'MzmGEXKMskYdL+HMNL4I41WwYHHXcOjQnCdzGMs0E5mXiC/TEnO+a8maZejKrnkeR7Znlz6l9KHULntm'
|
|
140
|
+
'dunbz+AT7QczYPmcHesz7DldVAo69mjp17PvnOS4hcIId9X16opQsw0djS7seID/zpg6RWk47nUMuM1t'
|
|
141
|
+
'WZdpt4t+S9Prfcm3ECaskGuJimkv50TMHVqleald5xi5mnZCLUTrLXzBigWasgrN8FsaENm/dNysd1DZ'
|
|
142
|
+
'Sr0SwmV7X5DbrFM+pbEJ1KLJmQfciD7npW/N38J/r0BHr8xSVUYm2+NZDrPqhQHO6nsvw7ZKY0l9P3e5'
|
|
143
|
+
'5nJY8RWwRfN+JDegeZZUopoLkdxxzQmInVW69KfM1TpmvnXeEvVf88xT5po+JanUOaByIB64I4j+x7zD'
|
|
144
|
+
'4kpxofIBizW2aXlgu2br3iq3fmRc9AuqFL3+gtvseNEy2J/m17RSR3ZlcUV36Gei94k36hWPWJ84hio5'
|
|
145
|
+
'Nv7k30HYt1sfWuYemz+80Oabh1b47I+tDw9kcuP1GW9t6N6dnlF/TmSZAmRu+9swXq7xESNer2Gu2fFc'
|
|
146
|
+
'8x3vXWNfAAVKczJvNO90qQtm0F51//ScySbjHCDjrCBz5iGsAq2FlXkUCOfbwtA+KYHgcAIxFJ+vMsO9'
|
|
147
|
+
'i5iMTzMGTEaFvEYmz8V5X6aX+wkKmVVlmHknovrT/RxkVseKYGq4plx+3ANJHrg9ra+eg7kIn3msbmmA'
|
|
148
|
+
'9eeov9/ty/xejmXX876sH+SUZb7gm/9yTtWuE76FH+Z0ZPb6csKLRs3/4DM/u7i5/4xv1WeGoRf/3bcu'
|
|
149
|
+
'Yix7+qKvMGbqffpj6WjNA9HjaSjOo7vCBjn//IVCmls7kXTcuFe2AX/i9zSCSqpHQQ62UOi38FmAEqeA'
|
|
150
|
+
'M/eRLI9/tLQ0hx5F0viQ7zAuRyiHluYi3hurZFyND/IBx4GtGv7Sk+RXAw5bN9SEpPsJvFDWL87Rb5fl'
|
|
151
|
+
'n5gj75Dln5kj/6gs/3dz5PcDjjdUryLpfgI/SEv2/VyOEQlclOWjc+Sfktt9d0673XI8+wBJ+UXCD38n'
|
|
152
|
+
'++fiHP/8iJaOWC8j6X4C/wfZ/qtz7H+Tlk58P8VjkSR/VtavpGbrf0+WT6Nmy4/J9udQs+3/vaxnaZKe'
|
|
153
|
+
'DsBv0lJ/LJTEj4Se/5LtX03Ntv9PMp4/B2eUkp5NSXqwfo1SsnNzkp3YHoNS8v9fUDP+x3pWyfijc3Cr'
|
|
154
|
+
'UooD+ylpniX07FRKdrTO6dcewBdgvgE+PyEPc7RaKa31z1DS/YR+/P4AP//31OzxbVdK/OmjZvPn+0qp'
|
|
155
|
+
'P29Skr2JdsPye4ghwJck6YnI7X40p90P5P7+cU5/ryglu9MUUr9Ju7A2fiH72aSYPV5/UkrjvVQhjU8C'
|
|
156
|
+
'V6dI/lmlmM0fbYpkB979JPyjXo3QCsAzob5Vfi+S8FuBjD8yB38wRYoxHoXUv4QeZ4pUP6JI6i/gh+R2'
|
|
157
|
+
'j89ptzNFqr+c1F+M96RIduOfRH9xgy+nzLy+UyXhP5HxtDn4z2VcNwf/FxlfMAd/S8YNc/DfyPjSOfgH'
|
|
158
|
+
'Mm6Zg/9OxtfOwT9KkcYL78emxws6M5Ui2V6cFH8w/oUsvzUpnmA9tErCd87BNTK+Zw6Of/4KAs8T0pqy'
|
|
159
|
+
'AfdvbWNTA/nLJdc8cs0n1/XkWkCuG8nVSq6FTmdjU2V1nZd8ehoavJICXvqQFOXmeRuq65qc8EcK+6ar'
|
|
160
|
+
'Beul4sGkcpWnWSpUHjhYXuORyqAGfp0H9klPyeWDyRXvtIj0IBh1kDSyb7+nqRFuNR2okVreV169XzIA'
|
|
161
|
+
'JOTyvoYDtVgY5Go8dckgIJIqKNS6a2oOVHiaq5tAJz5FbfAQZF+Dx1PhbXF6PQ2NB+rcNdVNLYlkfY+n'
|
|
162
|
+
'6cHdSZXtDizY4K5u9Dg9iUS+gmjBN6YhZ0WNx1130Jt4dDd+Yjrzd5cfaGgiijyNB2s900Kzag96mna6'
|
|
163
|
+
'6/YfdO/37PF6Kqr3VVdscTe5k27v9uwHZXua3A1NSahsosdd6fTUVRyo9FRi54ILGhvrJAfuO9xQ3eQh'
|
|
164
|
+
'R8i1nlqQXuvl8W91wfppX62tOFBTuTZ3Tj1POneu3udpqq71AD2gafzY3WAvPxv11FX+T1EMevm8PCAt'
|
|
165
|
+
'726oLVi/xo0P1dfUuisONDbnFeDD9HWPNMLArKt1V9etc7Tgcat1NBx43FPR1LjuL7f+5brGAwcbKjzr'
|
|
166
|
+
'oB9NnnUNB+uI4grnNE2l0j5nEm+dycR1TjPXmUxd5zR3ncnkdc5ir3OGvs5Z/HVOE9hJGOyUKOyUOexM'
|
|
167
|
+
'JrFzDoudEo2dc3jsnB4Mp8RkJ6ayU+ayUyazE7PZOZfOs/k8i9DOuzDaKVHaeXdO353UTsJqZxKt5/D6'
|
|
168
|
+
'/0XsL2H2LGo778ZtJya3M8Fup0Rv51357ZxL8LlAnvNLKH5X3Ms770ryu6BefqcTx1PpujZX/syTP/Pl'
|
|
169
|
+
'z/XyZ4H8uVH+tMqfELKnY3YiaCdU8olCQnlunrzm/jfhHoNh'
|
|
170
|
+
)
|
|
171
|
+
|
|
172
|
+
def load_runtime_bc():
|
|
173
|
+
data = zlib.decompress(base64.b64decode(_B64))
|
|
174
|
+
return binding.parse_bitcode(data)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from .lexar import Token, TokenType
|
|
1
|
+
from .lexar import Token, TokenType, Lexer, _unescape_run
|
|
2
2
|
from typing import Optional, Dict, Any, List
|
|
3
3
|
|
|
4
4
|
|
|
@@ -56,6 +56,14 @@ class String:
|
|
|
56
56
|
def __repr__(self):
|
|
57
57
|
return f'String({self.value})'
|
|
58
58
|
|
|
59
|
+
class FString:
|
|
60
|
+
__slots__ = ('parts', '_token', 'inferred_type')
|
|
61
|
+
def __init__(self, parts: list, token=None):
|
|
62
|
+
self.parts = parts
|
|
63
|
+
self._token = token
|
|
64
|
+
def __repr__(self):
|
|
65
|
+
return f'FString({self.parts})'
|
|
66
|
+
|
|
59
67
|
class Variable:
|
|
60
68
|
__slots__ = ('name', '_token', 'const_value', 'inferred_type')
|
|
61
69
|
def __init__(self, name: str, token=None):
|
|
@@ -253,6 +261,18 @@ def _parse_atom(tokens: list[Token], pos: int):
|
|
|
253
261
|
assert tok.value is not None
|
|
254
262
|
return String(tok.value, token=tok), pos + 1
|
|
255
263
|
|
|
264
|
+
if tok.type == TokenType.FSTRING:
|
|
265
|
+
assert tok.value is not None
|
|
266
|
+
parts = []
|
|
267
|
+
for kind, payload in _split_fstring(tok.value):
|
|
268
|
+
if kind == 'lit':
|
|
269
|
+
parts.append(('lit', payload if getattr(tok, 'raw', False) else _unescape_run(payload)))
|
|
270
|
+
else:
|
|
271
|
+
expr_tokens = Lexer(payload + '\n').get_tokens()
|
|
272
|
+
expr_node, _ = parse_expression(expr_tokens, 0)
|
|
273
|
+
parts.append(('expr', expr_node))
|
|
274
|
+
return FString(parts, token=tok), pos + 1
|
|
275
|
+
|
|
256
276
|
if tok.type == TokenType.IDENTIFIER:
|
|
257
277
|
assert tok.value is not None
|
|
258
278
|
return Variable(tok.value, token=tok), pos + 1
|
|
@@ -284,6 +304,15 @@ def _parse_atom(tokens: list[Token], pos: int):
|
|
|
284
304
|
return InputStr(token=tok), pos + 1
|
|
285
305
|
raise ParseError('Expected "(" after input_str', tok)
|
|
286
306
|
|
|
307
|
+
if tok.type == TokenType.KEYWORD and tok.value == 'input_big':
|
|
308
|
+
pos += 1
|
|
309
|
+
if pos < len(tokens) and tokens[pos].type == TokenType.LPAREN:
|
|
310
|
+
pos += 1
|
|
311
|
+
if pos >= len(tokens) or tokens[pos].type != TokenType.RPAREN:
|
|
312
|
+
raise ParseError('Expected ")" after input_big()', tok)
|
|
313
|
+
return InputBig(token=tok), pos + 1
|
|
314
|
+
raise ParseError('Expected "(" after input_big', tok)
|
|
315
|
+
|
|
287
316
|
if tok.type == TokenType.KEYWORD and tok.value == 'new':
|
|
288
317
|
pos += 1
|
|
289
318
|
base_type, pos = parse_type(tokens, pos)
|
|
@@ -322,6 +351,86 @@ def _parse_atom(tokens: list[Token], pos: int):
|
|
|
322
351
|
raise ParseError(f'Unexpected token in expression: {tok.type.name} "{tok.value}"', tok)
|
|
323
352
|
|
|
324
353
|
|
|
354
|
+
def _split_fstring(content: str) -> list:
|
|
355
|
+
"""Split raw f-string content into parts.
|
|
356
|
+
|
|
357
|
+
Returns a list mixing tuples:
|
|
358
|
+
('lit', literal_text) -- verbatim text
|
|
359
|
+
('expr', expression_text) -- raw source of an interpolated {expr}
|
|
360
|
+
Handles {{ }} escaping and brace-balanced expressions containing strings.
|
|
361
|
+
"""
|
|
362
|
+
parts: list = []
|
|
363
|
+
literal: list[str] = []
|
|
364
|
+
i = 0
|
|
365
|
+
n = len(content)
|
|
366
|
+
|
|
367
|
+
def flush_literal():
|
|
368
|
+
if literal:
|
|
369
|
+
parts.append(('lit', ''.join(literal)))
|
|
370
|
+
literal.clear()
|
|
371
|
+
|
|
372
|
+
while i < n:
|
|
373
|
+
ch = content[i]
|
|
374
|
+
if ch == '{':
|
|
375
|
+
if i + 1 < n and content[i + 1] == '{':
|
|
376
|
+
literal.append('{')
|
|
377
|
+
i += 2
|
|
378
|
+
continue
|
|
379
|
+
flush_literal()
|
|
380
|
+
expr_chars: list[str] = []
|
|
381
|
+
depth = 1
|
|
382
|
+
i += 1
|
|
383
|
+
expr_quote = None
|
|
384
|
+
while i < n:
|
|
385
|
+
c = content[i]
|
|
386
|
+
if expr_quote is not None:
|
|
387
|
+
expr_chars.append(c)
|
|
388
|
+
if c == '\\' and i + 1 < n:
|
|
389
|
+
expr_chars.append(content[i + 1])
|
|
390
|
+
i += 2
|
|
391
|
+
continue
|
|
392
|
+
if c == expr_quote:
|
|
393
|
+
expr_quote = None
|
|
394
|
+
i += 1
|
|
395
|
+
continue
|
|
396
|
+
if c in ('"', "'"):
|
|
397
|
+
expr_quote = c
|
|
398
|
+
expr_chars.append(c)
|
|
399
|
+
i += 1
|
|
400
|
+
continue
|
|
401
|
+
if c == '{':
|
|
402
|
+
depth += 1
|
|
403
|
+
expr_chars.append(c)
|
|
404
|
+
i += 1
|
|
405
|
+
continue
|
|
406
|
+
if c == '}':
|
|
407
|
+
depth -= 1
|
|
408
|
+
if depth == 0:
|
|
409
|
+
i += 1
|
|
410
|
+
break
|
|
411
|
+
expr_chars.append(c)
|
|
412
|
+
i += 1
|
|
413
|
+
continue
|
|
414
|
+
expr_chars.append(c)
|
|
415
|
+
i += 1
|
|
416
|
+
expr = ''.join(expr_chars).strip()
|
|
417
|
+
parts.append(('expr', expr))
|
|
418
|
+
continue
|
|
419
|
+
if ch == '}':
|
|
420
|
+
if i + 1 < n and content[i + 1] == '}':
|
|
421
|
+
literal.append('}')
|
|
422
|
+
i += 2
|
|
423
|
+
continue
|
|
424
|
+
literal.append(ch)
|
|
425
|
+
i += 1
|
|
426
|
+
continue
|
|
427
|
+
literal.append(ch)
|
|
428
|
+
i += 1
|
|
429
|
+
|
|
430
|
+
flush_literal()
|
|
431
|
+
return parts
|
|
432
|
+
|
|
433
|
+
|
|
325
434
|
def _parse_call_args(tokens: list[Token], pos: int, callee):
|
|
326
435
|
tok = tokens[pos]
|
|
327
436
|
pos += 1
|
|
@@ -444,6 +553,16 @@ def _parse_expr_iterative(tokens: list[Token], pos: int, min_prec: int):
|
|
|
444
553
|
vals.append(InputStr(token=tok))
|
|
445
554
|
continue
|
|
446
555
|
raise ParseError('Expected "(" after input_str', tok)
|
|
556
|
+
if tok.type == TokenType.KEYWORD and tok.value == 'input_big':
|
|
557
|
+
pos += 1
|
|
558
|
+
if pos < len(tokens) and tokens[pos].type == TokenType.LPAREN:
|
|
559
|
+
pos += 1
|
|
560
|
+
if pos >= len(tokens) or tokens[pos].type != TokenType.RPAREN:
|
|
561
|
+
raise ParseError('Expected ")" after input_big()', tok)
|
|
562
|
+
pos += 1
|
|
563
|
+
vals.append(InputBig(token=tok))
|
|
564
|
+
continue
|
|
565
|
+
raise ParseError('Expected "(" after input_big', tok)
|
|
447
566
|
if tok.type == TokenType.KEYWORD and tok.value == 'new':
|
|
448
567
|
pos += 1
|
|
449
568
|
base_type, pos = parse_type(tokens, pos)
|
|
@@ -1011,6 +1130,14 @@ class InputStr:
|
|
|
1011
1130
|
return 'InputStr()'
|
|
1012
1131
|
|
|
1013
1132
|
|
|
1133
|
+
class InputBig:
|
|
1134
|
+
__slots__ = ('_token',)
|
|
1135
|
+
def __init__(self, token=None):
|
|
1136
|
+
self._token = token
|
|
1137
|
+
def __repr__(self):
|
|
1138
|
+
return 'InputBig()'
|
|
1139
|
+
|
|
1140
|
+
|
|
1014
1141
|
class Signed67:
|
|
1015
1142
|
__slots__ = ('_token',)
|
|
1016
1143
|
def __init__(self, token=None):
|