From 69ad7a550fd35e88a664136724eb6a36d169545a Mon Sep 17 00:00:00 2001 From: Roby Date: Sun, 13 Sep 2026 08:15:09 +0200 Subject: [PATCH] fix secure tab --- templates/index.html | 2 +- venv/bin/Activate.ps1 | 241 + venv/bin/activate | 66 + venv/bin/activate.csh | 25 + venv/bin/activate.fish | 64 + venv/bin/flask | 6 + venv/bin/gunicorn | 6 + venv/bin/normalizer | 6 + venv/bin/pip | 8 + venv/bin/pip3 | 8 + venv/bin/pip3.9 | 8 + venv/bin/python | 1 + venv/bin/python3 | 1 + venv/bin/python3.9 | 1 + venv/bin/pywebpush | 6 + venv/bin/vapid | 6 + venv/bin/wheel | 8 + .../site/python3.9/greenlet/greenlet.h | 164 + ...4821__mypyc.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 410832 bytes ...ffi_backend.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 339784 bytes .../site-packages/_distutils_hack/__init__.py | 239 + .../site-packages/_distutils_hack/override.py | 1 + .../INSTALLER | 1 + .../aiohappyeyeballs-2.6.1.dist-info/LICENSE | 279 + .../aiohappyeyeballs-2.6.1.dist-info/METADATA | 123 + .../aiohappyeyeballs-2.6.1.dist-info/RECORD | 16 + .../aiohappyeyeballs-2.6.1.dist-info/WHEEL | 4 + .../aiohappyeyeballs/__init__.py | 14 + .../aiohappyeyeballs/_staggered.py | 207 + .../site-packages/aiohappyeyeballs/impl.py | 259 + .../site-packages/aiohappyeyeballs/py.typed | 0 .../site-packages/aiohappyeyeballs/types.py | 17 + .../site-packages/aiohappyeyeballs/utils.py | 97 + .../aiohttp-3.13.5.dist-info/INSTALLER | 1 + .../aiohttp-3.13.5.dist-info/METADATA | 262 + .../aiohttp-3.13.5.dist-info/RECORD | 138 + .../aiohttp-3.13.5.dist-info/WHEEL | 7 + .../licenses/LICENSE.txt | 13 + .../licenses/vendor/llhttp/LICENSE | 22 + .../aiohttp-3.13.5.dist-info/top_level.txt | 1 + .../aiohttp/.hash/_cparser.pxd.hash | 1 + .../aiohttp/.hash/_find_header.pxd.hash | 1 + .../aiohttp/.hash/_http_parser.pyx.hash | 1 + .../aiohttp/.hash/_http_writer.pyx.hash | 1 + .../site-packages/aiohttp/.hash/hdrs.py.hash | 1 + .../site-packages/aiohttp/__init__.py | 278 + .../site-packages/aiohttp/_cookie_helpers.py | 338 + .../site-packages/aiohttp/_cparser.pxd | 158 + .../site-packages/aiohttp/_find_header.pxd | 2 + .../site-packages/aiohttp/_headers.pxi | 83 + ...http_parser.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 2698432 bytes .../site-packages/aiohttp/_http_parser.pyx | 877 ++ ...http_writer.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 452304 bytes .../site-packages/aiohttp/_http_writer.pyx | 162 + .../aiohttp/_websocket/.hash/mask.pxd.hash | 1 + .../aiohttp/_websocket/.hash/mask.pyx.hash | 1 + .../_websocket/.hash/reader_c.pxd.hash | 1 + .../aiohttp/_websocket/__init__.py | 1 + .../aiohttp/_websocket/helpers.py | 147 + .../mask.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 221640 bytes .../site-packages/aiohttp/_websocket/mask.pxd | 3 + .../site-packages/aiohttp/_websocket/mask.pyx | 48 + .../aiohttp/_websocket/models.py | 84 + .../aiohttp/_websocket/reader.py | 31 + .../reader_c.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 1695504 bytes .../aiohttp/_websocket/reader_c.pxd | 110 + .../aiohttp/_websocket/reader_c.py | 478 + .../aiohttp/_websocket/reader_py.py | 478 + .../aiohttp/_websocket/writer.py | 262 + .../python3.9/site-packages/aiohttp/abc.py | 268 + .../site-packages/aiohttp/base_protocol.py | 100 + .../python3.9/site-packages/aiohttp/client.py | 1646 +++ .../aiohttp/client_exceptions.py | 432 + .../aiohttp/client_middleware_digest_auth.py | 480 + .../aiohttp/client_middlewares.py | 55 + .../site-packages/aiohttp/client_proto.py | 361 + .../site-packages/aiohttp/client_reqrep.py | 1536 +++ .../site-packages/aiohttp/client_ws.py | 428 + .../aiohttp/compression_utils.py | 348 + .../site-packages/aiohttp/connector.py | 1854 +++ .../site-packages/aiohttp/cookiejar.py | 522 + .../site-packages/aiohttp/formdata.py | 184 + .../python3.9/site-packages/aiohttp/hdrs.py | 121 + .../site-packages/aiohttp/helpers.py | 986 ++ .../python3.9/site-packages/aiohttp/http.py | 72 + .../site-packages/aiohttp/http_exceptions.py | 117 + .../site-packages/aiohttp/http_parser.py | 1125 ++ .../site-packages/aiohttp/http_websocket.py | 36 + .../site-packages/aiohttp/http_writer.py | 379 + .../python3.9/site-packages/aiohttp/log.py | 8 + .../site-packages/aiohttp/multipart.py | 1213 ++ .../site-packages/aiohttp/payload.py | 1120 ++ .../site-packages/aiohttp/payload_streamer.py | 78 + .../python3.9/site-packages/aiohttp/py.typed | 1 + .../site-packages/aiohttp/pytest_plugin.py | 444 + .../site-packages/aiohttp/resolver.py | 274 + .../site-packages/aiohttp/streams.py | 762 ++ .../site-packages/aiohttp/tcp_helpers.py | 37 + .../site-packages/aiohttp/test_utils.py | 777 ++ .../site-packages/aiohttp/tracing.py | 455 + .../site-packages/aiohttp/typedefs.py | 69 + .../python3.9/site-packages/aiohttp/web.py | 592 + .../site-packages/aiohttp/web_app.py | 620 + .../site-packages/aiohttp/web_exceptions.py | 454 + .../site-packages/aiohttp/web_fileresponse.py | 418 + .../site-packages/aiohttp/web_log.py | 234 + .../site-packages/aiohttp/web_middlewares.py | 121 + .../site-packages/aiohttp/web_protocol.py | 799 ++ .../site-packages/aiohttp/web_request.py | 927 ++ .../site-packages/aiohttp/web_response.py | 856 ++ .../site-packages/aiohttp/web_routedef.py | 214 + .../site-packages/aiohttp/web_runner.py | 399 + .../site-packages/aiohttp/web_server.py | 84 + .../aiohttp/web_urldispatcher.py | 1309 ++ .../python3.9/site-packages/aiohttp/web_ws.py | 631 + .../python3.9/site-packages/aiohttp/worker.py | 262 + .../aiosignal-1.4.0.dist-info/INSTALLER | 1 + .../aiosignal-1.4.0.dist-info/METADATA | 112 + .../aiosignal-1.4.0.dist-info/RECORD | 9 + .../aiosignal-1.4.0.dist-info/WHEEL | 5 + .../licenses/LICENSE | 201 + .../aiosignal-1.4.0.dist-info/top_level.txt | 1 + .../site-packages/aiosignal/__init__.py | 59 + .../site-packages/aiosignal/py.typed | 0 .../async_timeout-5.0.1.dist-info/INSTALLER | 1 + .../async_timeout-5.0.1.dist-info/LICENSE | 13 + .../async_timeout-5.0.1.dist-info/METADATA | 163 + .../async_timeout-5.0.1.dist-info/RECORD | 10 + .../async_timeout-5.0.1.dist-info/WHEEL | 5 + .../top_level.txt | 1 + .../async_timeout-5.0.1.dist-info/zip-safe | 1 + .../site-packages/async_timeout/__init__.py | 276 + .../site-packages/async_timeout/py.typed | 1 + .../python3.9/site-packages/attr/__init__.py | 104 + .../python3.9/site-packages/attr/__init__.pyi | 389 + venv/lib/python3.9/site-packages/attr/_cmp.py | 160 + .../lib/python3.9/site-packages/attr/_cmp.pyi | 13 + .../python3.9/site-packages/attr/_compat.py | 99 + .../python3.9/site-packages/attr/_config.py | 31 + .../python3.9/site-packages/attr/_funcs.py | 497 + .../lib/python3.9/site-packages/attr/_make.py | 3406 +++++ .../python3.9/site-packages/attr/_next_gen.py | 674 + .../site-packages/attr/_typing_compat.pyi | 15 + .../site-packages/attr/_version_info.py | 89 + .../site-packages/attr/_version_info.pyi | 9 + .../site-packages/attr/converters.py | 162 + .../site-packages/attr/converters.pyi | 19 + .../site-packages/attr/exceptions.py | 95 + .../site-packages/attr/exceptions.pyi | 17 + .../python3.9/site-packages/attr/filters.py | 72 + .../python3.9/site-packages/attr/filters.pyi | 6 + .../lib/python3.9/site-packages/attr/py.typed | 0 .../python3.9/site-packages/attr/setters.py | 79 + .../python3.9/site-packages/attr/setters.pyi | 20 + .../site-packages/attr/validators.py | 750 ++ .../site-packages/attr/validators.pyi | 140 + .../attrs-26.1.0.dist-info/INSTALLER | 1 + .../attrs-26.1.0.dist-info/METADATA | 199 + .../attrs-26.1.0.dist-info/RECORD | 55 + .../attrs-26.1.0.dist-info/WHEEL | 4 + .../attrs-26.1.0.dist-info/licenses/LICENSE | 21 + .../python3.9/site-packages/attrs/__init__.py | 72 + .../site-packages/attrs/__init__.pyi | 314 + .../site-packages/attrs/converters.py | 3 + .../site-packages/attrs/exceptions.py | 3 + .../python3.9/site-packages/attrs/filters.py | 3 + .../python3.9/site-packages/attrs/py.typed | 0 .../python3.9/site-packages/attrs/setters.py | 3 + .../site-packages/attrs/validators.py | 3 + .../bidict-0.23.1.dist-info/INSTALLER | 1 + .../bidict-0.23.1.dist-info/LICENSE | 376 + .../bidict-0.23.1.dist-info/METADATA | 260 + .../bidict-0.23.1.dist-info/RECORD | 31 + .../bidict-0.23.1.dist-info/WHEEL | 5 + .../bidict-0.23.1.dist-info/top_level.txt | 1 + .../site-packages/bidict/__init__.py | 103 + .../python3.9/site-packages/bidict/_abc.py | 79 + .../python3.9/site-packages/bidict/_base.py | 556 + .../python3.9/site-packages/bidict/_bidict.py | 194 + .../python3.9/site-packages/bidict/_dup.py | 61 + .../python3.9/site-packages/bidict/_exc.py | 36 + .../python3.9/site-packages/bidict/_frozen.py | 50 + .../python3.9/site-packages/bidict/_iter.py | 51 + .../site-packages/bidict/_orderedbase.py | 238 + .../site-packages/bidict/_orderedbidict.py | 172 + .../python3.9/site-packages/bidict/_typing.py | 49 + .../site-packages/bidict/metadata.py | 14 + .../python3.9/site-packages/bidict/py.typed | 1 + .../blinker-1.9.0.dist-info/INSTALLER | 1 + .../blinker-1.9.0.dist-info/LICENSE.txt | 20 + .../blinker-1.9.0.dist-info/METADATA | 60 + .../blinker-1.9.0.dist-info/RECORD | 12 + .../blinker-1.9.0.dist-info/WHEEL | 4 + .../site-packages/blinker/__init__.py | 17 + .../site-packages/blinker/_utilities.py | 64 + .../python3.9/site-packages/blinker/base.py | 512 + .../python3.9/site-packages/blinker/py.typed | 0 .../certifi-2026.4.22.dist-info/INSTALLER | 1 + .../certifi-2026.4.22.dist-info/METADATA | 78 + .../certifi-2026.4.22.dist-info/RECORD | 14 + .../certifi-2026.4.22.dist-info/WHEEL | 5 + .../licenses/LICENSE | 20 + .../certifi-2026.4.22.dist-info/top_level.txt | 1 + .../site-packages/certifi/__init__.py | 4 + .../site-packages/certifi/__main__.py | 12 + .../site-packages/certifi/cacert.pem | 3933 ++++++ .../python3.9/site-packages/certifi/core.py | 83 + .../python3.9/site-packages/certifi/py.typed | 0 .../cffi-2.0.0.dist-info/INSTALLER | 1 + .../cffi-2.0.0.dist-info/METADATA | 68 + .../site-packages/cffi-2.0.0.dist-info/RECORD | 49 + .../site-packages/cffi-2.0.0.dist-info/WHEEL | 6 + .../cffi-2.0.0.dist-info/entry_points.txt | 2 + .../cffi-2.0.0.dist-info/licenses/AUTHORS | 8 + .../cffi-2.0.0.dist-info/licenses/LICENSE | 23 + .../cffi-2.0.0.dist-info/top_level.txt | 2 + .../python3.9/site-packages/cffi/__init__.py | 14 + .../site-packages/cffi/_cffi_errors.h | 149 + .../site-packages/cffi/_cffi_include.h | 389 + .../python3.9/site-packages/cffi/_embedding.h | 550 + .../site-packages/cffi/_imp_emulation.py | 83 + .../site-packages/cffi/_shimmed_dist_utils.py | 45 + venv/lib/python3.9/site-packages/cffi/api.py | 967 ++ .../site-packages/cffi/backend_ctypes.py | 1121 ++ .../site-packages/cffi/cffi_opcode.py | 187 + .../site-packages/cffi/commontypes.py | 82 + .../python3.9/site-packages/cffi/cparser.py | 1015 ++ .../lib/python3.9/site-packages/cffi/error.py | 31 + .../site-packages/cffi/ffiplatform.py | 113 + venv/lib/python3.9/site-packages/cffi/lock.py | 30 + .../lib/python3.9/site-packages/cffi/model.py | 618 + .../site-packages/cffi/parse_c_type.h | 181 + .../python3.9/site-packages/cffi/pkgconfig.py | 121 + .../site-packages/cffi/recompiler.py | 1598 +++ .../site-packages/cffi/setuptools_ext.py | 229 + .../site-packages/cffi/vengine_cpy.py | 1087 ++ .../site-packages/cffi/vengine_gen.py | 679 + .../python3.9/site-packages/cffi/verifier.py | 306 + .../INSTALLER | 1 + .../METADATA | 808 ++ .../charset_normalizer-3.4.7.dist-info/RECORD | 36 + .../charset_normalizer-3.4.7.dist-info/WHEEL | 7 + .../entry_points.txt | 2 + .../licenses/LICENSE | 21 + .../top_level.txt | 2 + .../charset_normalizer/__init__.py | 48 + .../charset_normalizer/__main__.py | 6 + .../site-packages/charset_normalizer/api.py | 988 ++ .../cd.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 15912 bytes .../site-packages/charset_normalizer/cd.py | 454 + .../charset_normalizer/cli/__init__.py | 8 + .../charset_normalizer/cli/__main__.py | 362 + .../charset_normalizer/constant.py | 2050 +++ .../charset_normalizer/legacy.py | 79 + .../md.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 15912 bytes .../site-packages/charset_normalizer/md.py | 936 ++ .../charset_normalizer/models.py | 369 + .../site-packages/charset_normalizer/py.typed | 0 .../site-packages/charset_normalizer/utils.py | 422 + .../charset_normalizer/version.py | 8 + .../click-8.1.8.dist-info/INSTALLER | 1 + .../click-8.1.8.dist-info/LICENSE.txt | 28 + .../click-8.1.8.dist-info/METADATA | 74 + .../click-8.1.8.dist-info/RECORD | 38 + .../site-packages/click-8.1.8.dist-info/WHEEL | 4 + .../python3.9/site-packages/click/__init__.py | 75 + .../python3.9/site-packages/click/_compat.py | 623 + .../site-packages/click/_termui_impl.py | 788 ++ .../site-packages/click/_textwrap.py | 49 + .../site-packages/click/_winconsole.py | 279 + .../lib/python3.9/site-packages/click/core.py | 3047 +++++ .../site-packages/click/decorators.py | 562 + .../site-packages/click/exceptions.py | 296 + .../site-packages/click/formatting.py | 301 + .../python3.9/site-packages/click/globals.py | 67 + .../python3.9/site-packages/click/parser.py | 531 + .../python3.9/site-packages/click/py.typed | 0 .../site-packages/click/shell_completion.py | 603 + .../python3.9/site-packages/click/termui.py | 784 ++ .../python3.9/site-packages/click/testing.py | 483 + .../python3.9/site-packages/click/types.py | 1093 ++ .../python3.9/site-packages/click/utils.py | 624 + .../cryptography-47.0.0.dist-info/INSTALLER | 1 + .../cryptography-47.0.0.dist-info/METADATA | 112 + .../cryptography-47.0.0.dist-info/RECORD | 195 + .../cryptography-47.0.0.dist-info/WHEEL | 5 + .../licenses/LICENSE | 3 + .../licenses/LICENSE.APACHE | 202 + .../licenses/LICENSE.BSD | 27 + .../sboms/cryptography-rust.cyclonedx.json | 1363 ++ .../sboms/sbom.json | 43 + .../site-packages/cryptography/__about__.py | 17 + .../site-packages/cryptography/__init__.py | 26 + .../site-packages/cryptography/exceptions.py | 52 + .../site-packages/cryptography/fernet.py | 224 + .../cryptography/hazmat/__init__.py | 13 + .../site-packages/cryptography/hazmat/_oid.py | 356 + .../cryptography/hazmat/asn1/__init__.py | 43 + .../cryptography/hazmat/asn1/asn1.py | 439 + .../cryptography/hazmat/backends/__init__.py | 13 + .../hazmat/backends/openssl/__init__.py | 9 + .../hazmat/backends/openssl/backend.py | 310 + .../cryptography/hazmat/bindings/__init__.py | 3 + .../hazmat/bindings/_rust.abi3.so | Bin 0 -> 13621264 bytes .../hazmat/bindings/_rust/__init__.pyi | 67 + .../hazmat/bindings/_rust/_openssl.pyi | 8 + .../hazmat/bindings/_rust/asn1.pyi | 7 + .../bindings/_rust/declarative_asn1.pyi | 127 + .../hazmat/bindings/_rust/exceptions.pyi | 17 + .../hazmat/bindings/_rust/ocsp.pyi | 117 + .../bindings/_rust/openssl/__init__.pyi | 80 + .../hazmat/bindings/_rust/openssl/aead.pyi | 189 + .../hazmat/bindings/_rust/openssl/ciphers.pyi | 38 + .../hazmat/bindings/_rust/openssl/cmac.pyi | 18 + .../hazmat/bindings/_rust/openssl/dh.pyi | 51 + .../hazmat/bindings/_rust/openssl/dsa.pyi | 41 + .../hazmat/bindings/_rust/openssl/ec.pyi | 52 + .../hazmat/bindings/_rust/openssl/ed25519.pyi | 13 + .../hazmat/bindings/_rust/openssl/ed448.pyi | 13 + .../hazmat/bindings/_rust/openssl/hashes.pyi | 30 + .../hazmat/bindings/_rust/openssl/hmac.pyi | 22 + .../hazmat/bindings/_rust/openssl/hpke.pyi | 108 + .../hazmat/bindings/_rust/openssl/kdf.pyi | 205 + .../hazmat/bindings/_rust/openssl/keys.pyi | 34 + .../hazmat/bindings/_rust/openssl/mldsa.pyi | 23 + .../hazmat/bindings/_rust/openssl/mlkem.pyi | 18 + .../bindings/_rust/openssl/poly1305.pyi | 15 + .../hazmat/bindings/_rust/openssl/rsa.pyi | 55 + .../hazmat/bindings/_rust/openssl/x25519.pyi | 13 + .../hazmat/bindings/_rust/openssl/x448.pyi | 13 + .../hazmat/bindings/_rust/pkcs12.pyi | 52 + .../hazmat/bindings/_rust/pkcs7.pyi | 50 + .../hazmat/bindings/_rust/test_support.pyi | 23 + .../hazmat/bindings/_rust/x509.pyi | 312 + .../hazmat/bindings/openssl/__init__.py | 3 + .../hazmat/bindings/openssl/_conditional.py | 199 + .../hazmat/bindings/openssl/binding.py | 122 + .../cryptography/hazmat/decrepit/__init__.py | 5 + .../hazmat/decrepit/ciphers/__init__.py | 5 + .../hazmat/decrepit/ciphers/algorithms.py | 142 + .../hazmat/decrepit/ciphers/modes.py | 53 + .../hazmat/primitives/__init__.py | 3 + .../hazmat/primitives/_asymmetric.py | 19 + .../hazmat/primitives/_cipheralgorithm.py | 60 + .../cryptography/hazmat/primitives/_modes.py | 105 + .../hazmat/primitives/_serialization.py | 136 + .../hazmat/primitives/asymmetric/__init__.py | 3 + .../hazmat/primitives/asymmetric/dh.py | 159 + .../hazmat/primitives/asymmetric/dsa.py | 179 + .../hazmat/primitives/asymmetric/ec.py | 369 + .../hazmat/primitives/asymmetric/ed25519.py | 116 + .../hazmat/primitives/asymmetric/ed448.py | 143 + .../hazmat/primitives/asymmetric/mldsa.py | 441 + .../hazmat/primitives/asymmetric/mlkem.py | 278 + .../hazmat/primitives/asymmetric/padding.py | 111 + .../hazmat/primitives/asymmetric/rsa.py | 299 + .../hazmat/primitives/asymmetric/types.py | 123 + .../hazmat/primitives/asymmetric/utils.py | 28 + .../hazmat/primitives/asymmetric/x25519.py | 134 + .../hazmat/primitives/asymmetric/x448.py | 137 + .../hazmat/primitives/ciphers/__init__.py | 27 + .../hazmat/primitives/ciphers/aead.py | 23 + .../hazmat/primitives/ciphers/algorithms.py | 138 + .../hazmat/primitives/ciphers/base.py | 146 + .../hazmat/primitives/ciphers/modes.py | 192 + .../cryptography/hazmat/primitives/cmac.py | 10 + .../hazmat/primitives/constant_time.py | 14 + .../cryptography/hazmat/primitives/hashes.py | 246 + .../cryptography/hazmat/primitives/hmac.py | 13 + .../cryptography/hazmat/primitives/hpke.py | 27 + .../hazmat/primitives/kdf/__init__.py | 32 + .../hazmat/primitives/kdf/argon2.py | 17 + .../hazmat/primitives/kdf/concatkdf.py | 16 + .../hazmat/primitives/kdf/hkdf.py | 16 + .../hazmat/primitives/kdf/kbkdf.py | 26 + .../hazmat/primitives/kdf/pbkdf2.py | 13 + .../hazmat/primitives/kdf/scrypt.py | 19 + .../hazmat/primitives/kdf/x963kdf.py | 13 + .../cryptography/hazmat/primitives/keywrap.py | 180 + .../cryptography/hazmat/primitives/padding.py | 69 + .../hazmat/primitives/poly1305.py | 11 + .../primitives/serialization/__init__.py | 65 + .../hazmat/primitives/serialization/base.py | 14 + .../hazmat/primitives/serialization/pkcs12.py | 176 + .../hazmat/primitives/serialization/pkcs7.py | 412 + .../hazmat/primitives/serialization/ssh.py | 1621 +++ .../hazmat/primitives/twofactor/__init__.py | 9 + .../hazmat/primitives/twofactor/hotp.py | 101 + .../hazmat/primitives/twofactor/totp.py | 56 + .../site-packages/cryptography/py.typed | 0 .../site-packages/cryptography/utils.py | 138 + .../cryptography/x509/__init__.py | 271 + .../site-packages/cryptography/x509/base.py | 773 ++ .../x509/certificate_transparency.py | 35 + .../cryptography/x509/extensions.py | 2533 ++++ .../cryptography/x509/general_name.py | 281 + .../site-packages/cryptography/x509/name.py | 482 + .../site-packages/cryptography/x509/ocsp.py | 379 + .../site-packages/cryptography/x509/oid.py | 37 + .../cryptography/x509/verification.py | 34 + .../site-packages/distutils-precedence.pth | 1 + .../site-packages/engineio/__init__.py | 13 + .../site-packages/engineio/async_client.py | 692 ++ .../engineio/async_drivers/__init__.py | 0 .../engineio/async_drivers/_websocket_wsgi.py | 34 + .../engineio/async_drivers/aiohttp.py | 120 + .../engineio/async_drivers/asgi.py | 296 + .../engineio/async_drivers/eventlet.py | 52 + .../engineio/async_drivers/gevent.py | 83 + .../engineio/async_drivers/gevent_uwsgi.py | 168 + .../engineio/async_drivers/sanic.py | 148 + .../engineio/async_drivers/threading.py | 19 + .../engineio/async_drivers/tornado.py | 183 + .../site-packages/engineio/async_server.py | 613 + .../site-packages/engineio/async_socket.py | 261 + .../site-packages/engineio/base_client.py | 169 + .../site-packages/engineio/base_server.py | 358 + .../site-packages/engineio/base_socket.py | 14 + .../site-packages/engineio/client.py | 636 + .../site-packages/engineio/exceptions.py | 22 + .../python3.9/site-packages/engineio/json.py | 16 + .../site-packages/engineio/middleware.py | 86 + .../site-packages/engineio/packet.py | 82 + .../site-packages/engineio/payload.py | 46 + .../site-packages/engineio/server.py | 504 + .../site-packages/engineio/socket.py | 256 + .../site-packages/engineio/static_files.py | 60 + .../flask-3.1.3.dist-info/INSTALLER | 1 + .../flask-3.1.3.dist-info/METADATA | 91 + .../flask-3.1.3.dist-info/RECORD | 58 + .../flask-3.1.3.dist-info/REQUESTED | 0 .../site-packages/flask-3.1.3.dist-info/WHEEL | 4 + .../flask-3.1.3.dist-info/entry_points.txt | 3 + .../licenses/LICENSE.txt | 28 + .../python3.9/site-packages/flask/__init__.py | 61 + .../python3.9/site-packages/flask/__main__.py | 3 + venv/lib/python3.9/site-packages/flask/app.py | 1536 +++ .../site-packages/flask/blueprints.py | 128 + venv/lib/python3.9/site-packages/flask/cli.py | 1135 ++ .../python3.9/site-packages/flask/config.py | 367 + venv/lib/python3.9/site-packages/flask/ctx.py | 459 + .../site-packages/flask/debughelpers.py | 178 + .../python3.9/site-packages/flask/globals.py | 51 + .../python3.9/site-packages/flask/helpers.py | 641 + .../site-packages/flask/json/__init__.py | 170 + .../site-packages/flask/json/provider.py | 215 + .../python3.9/site-packages/flask/json/tag.py | 327 + .../python3.9/site-packages/flask/logging.py | 79 + .../python3.9/site-packages/flask/py.typed | 0 .../site-packages/flask/sansio/README.md | 6 + .../site-packages/flask/sansio/app.py | 964 ++ .../site-packages/flask/sansio/blueprints.py | 632 + .../site-packages/flask/sansio/scaffold.py | 792 ++ .../python3.9/site-packages/flask/sessions.py | 385 + .../python3.9/site-packages/flask/signals.py | 17 + .../site-packages/flask/templating.py | 220 + .../python3.9/site-packages/flask/testing.py | 298 + .../python3.9/site-packages/flask/typing.py | 93 + .../python3.9/site-packages/flask/views.py | 191 + .../python3.9/site-packages/flask/wrappers.py | 257 + .../flask_socketio-5.6.1.dist-info/INSTALLER | 1 + .../flask_socketio-5.6.1.dist-info/METADATA | 80 + .../flask_socketio-5.6.1.dist-info/RECORD | 13 + .../flask_socketio-5.6.1.dist-info/REQUESTED | 0 .../flask_socketio-5.6.1.dist-info/WHEEL | 5 + .../licenses/LICENSE | 20 + .../top_level.txt | 1 + .../site-packages/flask_socketio/__init__.py | 1148 ++ .../site-packages/flask_socketio/namespace.py | 54 + .../flask_socketio/test_client.py | 244 + .../frozenlist-1.8.0.dist-info/INSTALLER | 1 + .../frozenlist-1.8.0.dist-info/METADATA | 672 + .../frozenlist-1.8.0.dist-info/RECORD | 12 + .../frozenlist-1.8.0.dist-info/WHEEL | 7 + .../licenses/LICENSE | 201 + .../frozenlist-1.8.0.dist-info/top_level.txt | 1 + .../site-packages/frozenlist/__init__.py | 86 + .../site-packages/frozenlist/__init__.pyi | 47 + ..._frozenlist.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 700952 bytes .../site-packages/frozenlist/_frozenlist.pyx | 148 + .../site-packages/frozenlist/py.typed | 1 + .../gevent-26.4.0.dist-info/INSTALLER | 1 + .../gevent-26.4.0.dist-info/METADATA | 379 + .../gevent-26.4.0.dist-info/RECORD | 559 + .../gevent-26.4.0.dist-info/REQUESTED | 0 .../gevent-26.4.0.dist-info/WHEEL | 5 + .../gevent-26.4.0.dist-info/entry_points.txt | 2 + .../gevent-26.4.0.dist-info/licenses/LICENSE | 25 + .../gevent-26.4.0.dist-info/top_level.txt | 1 + .../site-packages/gevent/__init__.py | 114 + .../gevent/_abstract_linkable.py | 554 + .../python3.9/site-packages/gevent/_compat.py | 147 + .../python3.9/site-packages/gevent/_config.py | 753 ++ .../site-packages/gevent/_ffi/__init__.py | 27 + .../site-packages/gevent/_ffi/callback.py | 57 + .../site-packages/gevent/_ffi/loop.py | 798 ++ .../site-packages/gevent/_ffi/watcher.py | 649 + .../site-packages/gevent/_fileobjectcommon.py | 697 ++ .../site-packages/gevent/_fileobjectposix.py | 344 + ...ct_linkable.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 879184 bytes ..._primitives.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 467856 bytes ...c_hub_local.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 384480 bytes ..._primitives.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 1004536 bytes ...ent_c_ident.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 319160 bytes ...vent_c_imap.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 569744 bytes ...c_semaphore.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 919784 bytes ...nt_c_tracer.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 653632 bytes ...nt_c_waiter.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 520072 bytes ...vent_cevent.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 726696 bytes ...t_cgreenlet.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 1737160 bytes ...vent_clocal.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 892704 bytes ...vent_cqueue.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 1617424 bytes .../gevent/_greenlet_primitives.py | 132 + .../site-packages/gevent/_hub_local.py | 154 + .../site-packages/gevent/_hub_primitives.py | 427 + .../python3.9/site-packages/gevent/_ident.py | 82 + .../python3.9/site-packages/gevent/_imap.py | 226 + .../site-packages/gevent/_interfaces.py | 323 + .../site-packages/gevent/_monitor.py | 327 + .../site-packages/gevent/_patcher.py | 252 + .../site-packages/gevent/_semaphore.py | 527 + .../site-packages/gevent/_socket3.py | 663 + .../site-packages/gevent/_socketcommon.py | 749 ++ .../python3.9/site-packages/gevent/_tblib.py | 383 + .../site-packages/gevent/_threading.py | 234 + .../python3.9/site-packages/gevent/_tracer.py | 182 + .../python3.9/site-packages/gevent/_util.py | 351 + .../python3.9/site-packages/gevent/_waiter.py | 207 + .../python3.9/site-packages/gevent/ares.py | 10 + .../site-packages/gevent/backdoor.py | 264 + .../site-packages/gevent/baseserver.py | 443 + .../site-packages/gevent/builtins.py | 122 + .../site-packages/gevent/contextvars.py | 348 + .../python3.9/site-packages/gevent/core.py | 20 + .../python3.9/site-packages/gevent/event.py | 429 + .../python3.9/site-packages/gevent/events.py | 516 + .../site-packages/gevent/exceptions.py | 133 + .../site-packages/gevent/fileobject.py | 85 + .../site-packages/gevent/greenlet.py | 1204 ++ .../lib/python3.9/site-packages/gevent/hub.py | 909 ++ .../site-packages/gevent/libev/__init__.py | 7 + .../gevent/libev/_corecffi.abi3.so | Bin 0 -> 383680 bytes .../gevent/libev/_corecffi_build.py | 126 + .../corecext.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 2401256 bytes .../site-packages/gevent/libev/corecffi.py | 470 + .../site-packages/gevent/libev/watcher.py | 294 + .../site-packages/gevent/libuv/__init__.py | 7 + .../gevent/libuv/_corecffi.abi3.so | Bin 0 -> 1282272 bytes .../gevent/libuv/_corecffi_build.py | 334 + .../site-packages/gevent/libuv/loop.py | 746 ++ .../site-packages/gevent/libuv/watcher.py | 800 ++ .../python3.9/site-packages/gevent/local.py | 610 + .../python3.9/site-packages/gevent/lock.py | 380 + .../site-packages/gevent/monkey/__init__.py | 745 ++ .../site-packages/gevent/monkey/__main__.py | 2 + .../site-packages/gevent/monkey/_errors.py | 26 + .../site-packages/gevent/monkey/_main.py | 117 + .../gevent/monkey/_patch_thread_common.py | 320 + .../gevent/monkey/_patch_thread_gte313.py | 105 + .../gevent/monkey/_patch_thread_lt313.py | 81 + .../site-packages/gevent/monkey/_state.py | 70 + .../site-packages/gevent/monkey/_util.py | 105 + .../site-packages/gevent/monkey/api.py | 199 + venv/lib/python3.9/site-packages/gevent/os.py | 670 + .../python3.9/site-packages/gevent/pool.py | 677 + .../python3.9/site-packages/gevent/pywsgi.py | 1731 +++ .../python3.9/site-packages/gevent/queue.py | 826 ++ .../site-packages/gevent/resolver/__init__.py | 285 + .../gevent/resolver/_addresses.py | 163 + .../gevent/resolver/_hostsfile.py | 145 + .../site-packages/gevent/resolver/ares.py | 355 + .../site-packages/gevent/resolver/blocking.py | 45 + .../cares.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 2807072 bytes .../gevent/resolver/dnspython.py | 511 + .../site-packages/gevent/resolver/thread.py | 69 + .../site-packages/gevent/resolver_ares.py | 17 + .../site-packages/gevent/resolver_thread.py | 17 + .../python3.9/site-packages/gevent/select.py | 381 + .../site-packages/gevent/selectors.py | 336 + .../python3.9/site-packages/gevent/server.py | 290 + .../python3.9/site-packages/gevent/signal.py | 176 + .../python3.9/site-packages/gevent/socket.py | 166 + .../lib/python3.9/site-packages/gevent/ssl.py | 897 ++ .../site-packages/gevent/subprocess.py | 2053 +++ .../site-packages/gevent/testing/__init__.py | 182 + .../testing/coveragesite/sitecustomize.py | 62 + .../gevent/testing/errorhandler.py | 57 + .../site-packages/gevent/testing/exception.py | 23 + .../site-packages/gevent/testing/flaky.py | 114 + .../site-packages/gevent/testing/hub.py | 70 + .../site-packages/gevent/testing/leakcheck.py | 238 + .../site-packages/gevent/testing/modules.py | 137 + .../gevent/testing/monkey_test.py | 178 + .../site-packages/gevent/testing/openfiles.py | 227 + .../site-packages/gevent/testing/params.py | 68 + .../gevent/testing/patched_tests_setup.py | 1573 +++ .../site-packages/gevent/testing/resources.py | 209 + .../site-packages/gevent/testing/six.py | 14 + .../site-packages/gevent/testing/skipping.py | 198 + .../site-packages/gevent/testing/sockets.py | 49 + .../site-packages/gevent/testing/support.py | 142 + .../site-packages/gevent/testing/switching.py | 64 + .../site-packages/gevent/testing/sysinfo.py | 241 + .../site-packages/gevent/testing/testcase.py | 481 + .../gevent/testing/testrunner.py | 991 ++ .../site-packages/gevent/testing/timing.py | 138 + .../site-packages/gevent/testing/travis.py | 41 + .../site-packages/gevent/testing/util.py | 654 + .../gevent/tests/2_7_keycert.pem | 81 + .../site-packages/gevent/tests/__init__.py | 0 .../site-packages/gevent/tests/__main__.py | 6 + .../gevent/tests/_blocks_at_top_level.py | 3 + .../gevent/tests/_import_import_patch.py | 1 + .../gevent/tests/_import_patch.py | 2 + .../gevent/tests/_import_wait.py | 26 + .../gevent/tests/_imports_at_top_level.py | 2 + .../tests/_imports_imports_at_top_level.py | 13 + .../site-packages/gevent/tests/badcert.pem | 36 + .../site-packages/gevent/tests/badkey.pem | 40 + .../gevent/tests/getaddrinfo_module.py | 4 + .../site-packages/gevent/tests/hosts_file.txt | 10351 ++++++++++++++++ .../tests/https_svn_python_org_root.pem | 41 + .../site-packages/gevent/tests/keycert.pem | 32 + .../gevent/tests/known_failures.py | 560 + .../site-packages/gevent/tests/lock_tests.py | 764 ++ .../gevent/tests/monkey_package/__init__.py | 12 + .../gevent/tests/monkey_package/__main__.py | 9 + .../monkey_package/issue1526_no_monkey.py | 21 + .../monkey_package/issue1526_with_monkey.py | 28 + .../tests/monkey_package/issue302monkey.py | 26 + .../gevent/tests/monkey_package/script.py | 20 + .../threadpool_monkey_patches.py | 30 + .../monkey_package/threadpool_no_monkey.py | 30 + .../site-packages/gevent/tests/nullcert.pem | 0 .../site-packages/gevent/tests/server.crt | 29 + .../site-packages/gevent/tests/server.key | 52 + .../site-packages/gevent/tests/sha256.pem | 33 + .../gevent/tests/test__GreenletExit.py | 4 + .../gevent/tests/test___config.py | 159 + .../gevent/tests/test___ident.py | 80 + .../gevent/tests/test___monitor.py | 386 + .../gevent/tests/test___monkey_patching.py | 102 + .../site-packages/gevent/tests/test__all__.py | 322 + .../site-packages/gevent/tests/test__api.py | 132 + .../gevent/tests/test__api_timeout.py | 210 + .../gevent/tests/test__ares_host_result.py | 32 + .../gevent/tests/test__ares_timeout.py | 44 + .../gevent/tests/test__backdoor.py | 211 + .../gevent/tests/test__close_backend_fd.py | 114 + .../gevent/tests/test__compat.py | 56 + .../gevent/tests/test__contextvars.py | 1088 ++ .../site-packages/gevent/tests/test__core.py | 164 + .../gevent/tests/test__core_async.py | 31 + .../gevent/tests/test__core_callback.py | 32 + .../gevent/tests/test__core_fork.py | 84 + .../gevent/tests/test__core_loop_run.py | 22 + .../gevent/tests/test__core_stat.py | 118 + .../gevent/tests/test__core_timer.py | 157 + .../gevent/tests/test__core_watcher.py | 124 + .../gevent/tests/test__destroy.py | 52 + .../tests/test__destroy_default_loop.py | 72 + .../gevent/tests/test__doctests.py | 133 + .../gevent/tests/test__environ.py | 19 + .../site-packages/gevent/tests/test__event.py | 443 + .../gevent/tests/test__events.py | 50 + .../gevent/tests/test__example_echoserver.py | 36 + .../tests/test__example_portforwarder.py | 67 + .../gevent/tests/test__example_udp_client.py | 35 + .../gevent/tests/test__example_udp_server.py | 22 + .../gevent/tests/test__example_webproxy.py | 29 + .../gevent/tests/test__example_wsgiserver.py | 94 + .../tests/test__example_wsgiserver_ssl.py | 24 + .../gevent/tests/test__examples.py | 109 + .../gevent/tests/test__exc_info.py | 54 + .../gevent/tests/test__execmodules.py | 54 + .../gevent/tests/test__fileobject.py | 575 + .../gevent/tests/test__getaddrinfo_import.py | 11 + .../gevent/tests/test__greenio.py | 146 + .../gevent/tests/test__greenlet.py | 1078 ++ .../gevent/tests/test__greenletset.py | 183 + .../gevent/tests/test__greenness.py | 87 + .../site-packages/gevent/tests/test__hub.py | 404 + .../gevent/tests/test__hub_join.py | 117 + .../gevent/tests/test__hub_join_timeout.py | 99 + .../test__import_blocking_in_greenlet.py | 42 + .../gevent/tests/test__import_wait.py | 10 + .../gevent/tests/test__issue112.py | 19 + .../gevent/tests/test__issue1686.py | 85 + .../gevent/tests/test__issue1864.py | 28 + .../gevent/tests/test__issue230.py | 27 + .../gevent/tests/test__issue330.py | 82 + .../gevent/tests/test__issue467.py | 40 + .../gevent/tests/test__issue6.py | 39 + .../gevent/tests/test__issue600.py | 48 + .../gevent/tests/test__issue607.py | 47 + .../gevent/tests/test__issue639.py | 12 + .../gevent/tests/test__issue_728.py | 9 + .../gevent/tests/test__issues461_471.py | 95 + .../site-packages/gevent/tests/test__iwait.py | 42 + .../gevent/tests/test__joinall.py | 20 + .../site-packages/gevent/tests/test__local.py | 425 + .../site-packages/gevent/tests/test__lock.py | 78 + .../gevent/tests/test__loop_callback.py | 18 + .../gevent/tests/test__makefile_ref.py | 553 + .../gevent/tests/test__memleak.py | 47 + .../gevent/tests/test__monkey.py | 165 + .../tests/test__monkey_builtins_future.py | 16 + .../tests/test__monkey_hub_in_thread.py | 28 + .../gevent/tests/test__monkey_logging.py | 57 + .../gevent/tests/test__monkey_module_run.py | 127 + .../tests/test__monkey_multiple_imports.py | 6 + .../gevent/tests/test__monkey_queue.py | 331 + .../gevent/tests/test__monkey_select.py | 32 + .../gevent/tests/test__monkey_selectors.py | 79 + .../gevent/tests/test__monkey_sigchld.py | 89 + .../gevent/tests/test__monkey_sigchld_2.py | 57 + .../gevent/tests/test__monkey_sigchld_3.py | 59 + .../tests/test__monkey_sigchld_wakeup_fd.py | 46 + .../gevent/tests/test__monkey_ssl_warning.py | 39 + .../gevent/tests/test__monkey_ssl_warning2.py | 44 + .../gevent/tests/test__monkey_ssl_warning3.py | 47 + .../gevent/tests/test__nondefaultloop.py | 12 + .../site-packages/gevent/tests/test__order.py | 60 + .../site-packages/gevent/tests/test__os.py | 171 + .../site-packages/gevent/tests/test__pool.py | 607 + .../gevent/tests/test__pywsgi.py | 2055 +++ .../site-packages/gevent/tests/test__queue.py | 607 + .../gevent/tests/test__real_greenlet.py | 34 + .../gevent/tests/test__refcount.py | 189 + .../gevent/tests/test__refcount_core.py | 25 + .../gevent/tests/test__resolver_dnspython.py | 43 + .../gevent/tests/test__select.py | 275 + .../gevent/tests/test__selectors.py | 171 + .../gevent/tests/test__semaphore.py | 425 + .../gevent/tests/test__server.py | 567 + .../gevent/tests/test__server_pywsgi.py | 106 + .../gevent/tests/test__signal.py | 102 + .../gevent/tests/test__sleep0.py | 10 + .../gevent/tests/test__socket.py | 657 + .../gevent/tests/test__socket_close.py | 58 + .../gevent/tests/test__socket_dns.py | 931 ++ .../gevent/tests/test__socket_dns6.py | 101 + .../gevent/tests/test__socket_errors.py | 48 + .../gevent/tests/test__socket_ex.py | 44 + .../tests/test__socket_send_memoryview.py | 40 + .../gevent/tests/test__socket_ssl.py | 39 + .../gevent/tests/test__socket_timeout.py | 51 + .../gevent/tests/test__socketpair.py | 37 + .../site-packages/gevent/tests/test__ssl.py | 140 + .../gevent/tests/test__subprocess.py | 517 + .../tests/test__subprocess_interrupted.py | 42 + .../gevent/tests/test__subprocess_poll.py | 13 + .../gevent/tests/test__systemerror.py | 110 + .../gevent/tests/test__thread.py | 31 + .../gevent/tests/test__threading.py | 92 + .../gevent/tests/test__threading_2.py | 641 + .../tests/test__threading_before_monkey.py | 23 + .../tests/test__threading_fork_from_dummy.py | 65 + ...st__threading_holding_lock_while_monkey.py | 9 + .../tests/test__threading_monkey_in_thread.py | 62 + .../test__threading_native_before_monkey.py | 70 + .../gevent/tests/test__threading_no_monkey.py | 30 + .../tests/test__threading_patched_local.py | 27 + .../tests/test__threading_vs_settrace.py | 162 + .../gevent/tests/test__threadpool.py | 825 ++ .../test__threadpool_executor_patched.py | 17 + .../gevent/tests/test__timeout.py | 150 + .../site-packages/gevent/tests/test__util.py | 320 + .../gevent/tests/test_server.crt | 29 + .../gevent/tests/test_server.key | 52 + .../tests/tests_that_dont_do_leakchecks.txt | 10 + .../tests/tests_that_dont_monkeypatch.txt | 29 + .../tests/tests_that_dont_use_resolver.txt | 137 + .../site-packages/gevent/tests/wrongcert.pem | 32 + .../python3.9/site-packages/gevent/thread.py | 360 + .../site-packages/gevent/threading.py | 480 + .../site-packages/gevent/threadpool.py | 819 ++ .../python3.9/site-packages/gevent/time.py | 27 + .../python3.9/site-packages/gevent/timeout.py | 401 + .../python3.9/site-packages/gevent/util.py | 667 + .../site-packages/gevent/win32util.py | 98 + .../DESCRIPTION.rst | 125 + .../INSTALLER | 1 + .../METADATA | 135 + .../gevent_websocket-0.10.1.dist-info/RECORD | 38 + .../REQUESTED | 0 .../gevent_websocket-0.10.1.dist-info/WHEEL | 5 + .../metadata.json | 1 + .../top_level.txt | 1 + .../site-packages/geventwebsocket/__init__.py | 21 + .../site-packages/geventwebsocket/_compat.py | 23 + .../geventwebsocket/exceptions.py | 19 + .../geventwebsocket/gunicorn/__init__.py | 0 .../geventwebsocket/gunicorn/workers.py | 6 + .../site-packages/geventwebsocket/handler.py | 283 + .../site-packages/geventwebsocket/logging.py | 31 + .../geventwebsocket/protocols/__init__.py | 0 .../geventwebsocket/protocols/base.py | 35 + .../geventwebsocket/protocols/wamp.py | 235 + .../site-packages/geventwebsocket/resource.py | 100 + .../site-packages/geventwebsocket/server.py | 34 + .../geventwebsocket/utf8validator.py | 224 + .../site-packages/geventwebsocket/utils.py | 45 + .../geventwebsocket/websocket.py | 565 + .../greenlet-3.2.5.dist-info/INSTALLER | 1 + .../greenlet-3.2.5.dist-info/METADATA | 117 + .../greenlet-3.2.5.dist-info/RECORD | 123 + .../greenlet-3.2.5.dist-info/WHEEL | 6 + .../greenlet-3.2.5.dist-info/licenses/LICENSE | 30 + .../licenses/LICENSE.PSF | 47 + .../greenlet-3.2.5.dist-info/top_level.txt | 1 + .../site-packages/greenlet/CObjects.cpp | 157 + .../site-packages/greenlet/PyGreenlet.cpp | 772 ++ .../site-packages/greenlet/PyGreenlet.hpp | 35 + .../greenlet/PyGreenletUnswitchable.cpp | 147 + .../site-packages/greenlet/PyModule.cpp | 292 + .../greenlet/TBrokenGreenlet.cpp | 45 + .../greenlet/TExceptionState.cpp | 62 + .../site-packages/greenlet/TGreenlet.cpp | 719 ++ .../site-packages/greenlet/TGreenlet.hpp | 830 ++ .../greenlet/TGreenletGlobals.cpp | 94 + .../site-packages/greenlet/TMainGreenlet.cpp | 153 + .../site-packages/greenlet/TPythonState.cpp | 406 + .../site-packages/greenlet/TStackState.cpp | 265 + .../site-packages/greenlet/TThreadState.hpp | 517 + .../greenlet/TThreadStateCreator.hpp | 102 + .../greenlet/TThreadStateDestroy.cpp | 217 + .../site-packages/greenlet/TUserGreenlet.cpp | 662 + .../site-packages/greenlet/__init__.py | 71 + .../_greenlet.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 1360632 bytes .../site-packages/greenlet/greenlet.cpp | 320 + .../site-packages/greenlet/greenlet.h | 164 + .../greenlet/greenlet_allocator.hpp | 89 + .../greenlet/greenlet_compiler_compat.hpp | 98 + .../greenlet/greenlet_cpython_compat.hpp | 150 + .../greenlet/greenlet_exceptions.hpp | 171 + .../greenlet/greenlet_internal.hpp | 107 + .../greenlet/greenlet_msvc_compat.hpp | 91 + .../site-packages/greenlet/greenlet_refs.hpp | 1118 ++ .../greenlet/greenlet_slp_switch.hpp | 99 + .../greenlet/greenlet_thread_support.hpp | 31 + .../greenlet/platform/__init__.py | 0 .../platform/setup_switch_x64_masm.cmd | 2 + .../greenlet/platform/switch_aarch64_gcc.h | 124 + .../greenlet/platform/switch_alpha_unix.h | 30 + .../greenlet/platform/switch_amd64_unix.h | 87 + .../greenlet/platform/switch_arm32_gcc.h | 79 + .../greenlet/platform/switch_arm32_ios.h | 67 + .../greenlet/platform/switch_arm64_masm.asm | 53 + .../greenlet/platform/switch_arm64_masm.obj | Bin 0 -> 746 bytes .../greenlet/platform/switch_arm64_msvc.h | 17 + .../greenlet/platform/switch_csky_gcc.h | 48 + .../platform/switch_loongarch64_linux.h | 31 + .../greenlet/platform/switch_m68k_gcc.h | 38 + .../greenlet/platform/switch_mips_unix.h | 64 + .../greenlet/platform/switch_ppc64_aix.h | 103 + .../greenlet/platform/switch_ppc64_linux.h | 105 + .../greenlet/platform/switch_ppc_aix.h | 87 + .../greenlet/platform/switch_ppc_linux.h | 84 + .../greenlet/platform/switch_ppc_macosx.h | 82 + .../greenlet/platform/switch_ppc_unix.h | 82 + .../greenlet/platform/switch_riscv_unix.h | 41 + .../greenlet/platform/switch_s390_unix.h | 87 + .../greenlet/platform/switch_sh_gcc.h | 36 + .../greenlet/platform/switch_sparc_sun_gcc.h | 92 + .../greenlet/platform/switch_x32_unix.h | 63 + .../greenlet/platform/switch_x64_masm.asm | 111 + .../greenlet/platform/switch_x64_masm.obj | Bin 0 -> 1078 bytes .../greenlet/platform/switch_x64_msvc.h | 60 + .../greenlet/platform/switch_x86_msvc.h | 326 + .../greenlet/platform/switch_x86_unix.h | 105 + .../greenlet/slp_platformselect.h | 77 + .../site-packages/greenlet/tests/__init__.py | 248 + .../greenlet/tests/_test_extension.c | 231 + ...t_extension.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 17256 bytes .../greenlet/tests/_test_extension_cpp.cpp | 226 + ...tension_cpp.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 57520 bytes .../tests/fail_clearing_run_switches.py | 47 + .../greenlet/tests/fail_cpp_exception.py | 33 + .../tests/fail_initialstub_already_started.py | 78 + .../greenlet/tests/fail_slp_switch.py | 29 + .../tests/fail_switch_three_greenlets.py | 44 + .../tests/fail_switch_three_greenlets2.py | 55 + .../tests/fail_switch_two_greenlets.py | 41 + .../site-packages/greenlet/tests/leakcheck.py | 336 + .../greenlet/tests/test_contextvars.py | 312 + .../site-packages/greenlet/tests/test_cpp.py | 73 + .../tests/test_extension_interface.py | 115 + .../site-packages/greenlet/tests/test_gc.py | 86 + .../greenlet/tests/test_generator.py | 59 + .../greenlet/tests/test_generator_nested.py | 168 + .../greenlet/tests/test_greenlet.py | 1353 ++ .../greenlet/tests/test_greenlet_trash.py | 187 + .../tests/test_interpreter_shutdown.py | 320 + .../greenlet/tests/test_leaks.py | 457 + .../greenlet/tests/test_stack_saved.py | 19 + .../greenlet/tests/test_throw.py | 128 + .../greenlet/tests/test_tracing.py | 299 + .../greenlet/tests/test_version.py | 41 + .../greenlet/tests/test_weakref.py | 35 + .../gunicorn-23.0.0.dist-info/INSTALLER | 1 + .../gunicorn-23.0.0.dist-info/LICENSE | 23 + .../gunicorn-23.0.0.dist-info/METADATA | 130 + .../gunicorn-23.0.0.dist-info/RECORD | 77 + .../gunicorn-23.0.0.dist-info/REQUESTED | 0 .../gunicorn-23.0.0.dist-info/WHEEL | 5 + .../entry_points.txt | 5 + .../gunicorn-23.0.0.dist-info/top_level.txt | 1 + .../site-packages/gunicorn/__init__.py | 8 + .../site-packages/gunicorn/__main__.py | 10 + .../site-packages/gunicorn/app/__init__.py | 3 + .../site-packages/gunicorn/app/base.py | 235 + .../site-packages/gunicorn/app/pasterapp.py | 74 + .../site-packages/gunicorn/app/wsgiapp.py | 70 + .../site-packages/gunicorn/arbiter.py | 671 + .../site-packages/gunicorn/config.py | 2442 ++++ .../python3.9/site-packages/gunicorn/debug.py | 68 + .../site-packages/gunicorn/errors.py | 28 + .../site-packages/gunicorn/glogging.py | 473 + .../site-packages/gunicorn/http/__init__.py | 8 + .../site-packages/gunicorn/http/body.py | 268 + .../site-packages/gunicorn/http/errors.py | 145 + .../site-packages/gunicorn/http/message.py | 463 + .../site-packages/gunicorn/http/parser.py | 51 + .../site-packages/gunicorn/http/unreader.py | 78 + .../site-packages/gunicorn/http/wsgi.py | 401 + .../gunicorn/instrument/__init__.py | 0 .../gunicorn/instrument/statsd.py | 134 + .../site-packages/gunicorn/pidfile.py | 85 + .../site-packages/gunicorn/reloader.py | 131 + .../python3.9/site-packages/gunicorn/sock.py | 231 + .../site-packages/gunicorn/systemd.py | 75 + .../python3.9/site-packages/gunicorn/util.py | 653 + .../gunicorn/workers/__init__.py | 14 + .../site-packages/gunicorn/workers/base.py | 287 + .../gunicorn/workers/base_async.py | 147 + .../gunicorn/workers/geventlet.py | 186 + .../site-packages/gunicorn/workers/ggevent.py | 193 + .../site-packages/gunicorn/workers/gthread.py | 372 + .../gunicorn/workers/gtornado.py | 166 + .../site-packages/gunicorn/workers/sync.py | 209 + .../gunicorn/workers/workertmp.py | 53 + .../h11-0.16.0.dist-info/INSTALLER | 1 + .../h11-0.16.0.dist-info/METADATA | 202 + .../site-packages/h11-0.16.0.dist-info/RECORD | 29 + .../site-packages/h11-0.16.0.dist-info/WHEEL | 5 + .../h11-0.16.0.dist-info/licenses/LICENSE.txt | 22 + .../h11-0.16.0.dist-info/top_level.txt | 1 + .../python3.9/site-packages/h11/__init__.py | 62 + venv/lib/python3.9/site-packages/h11/_abnf.py | 132 + .../site-packages/h11/_connection.py | 659 + .../python3.9/site-packages/h11/_events.py | 369 + .../python3.9/site-packages/h11/_headers.py | 282 + .../python3.9/site-packages/h11/_readers.py | 250 + .../site-packages/h11/_receivebuffer.py | 153 + .../lib/python3.9/site-packages/h11/_state.py | 365 + venv/lib/python3.9/site-packages/h11/_util.py | 135 + .../python3.9/site-packages/h11/_version.py | 16 + .../python3.9/site-packages/h11/_writers.py | 145 + venv/lib/python3.9/site-packages/h11/py.typed | 1 + .../http_ece-1.2.1.dist-info/INSTALLER | 1 + .../http_ece-1.2.1.dist-info/METADATA | 33 + .../http_ece-1.2.1.dist-info/RECORD | 7 + .../http_ece-1.2.1.dist-info/WHEEL | 6 + .../http_ece-1.2.1.dist-info/top_level.txt | 1 + .../site-packages/http_ece/__init__.py | 434 + .../idna-3.13.dist-info/INSTALLER | 1 + .../idna-3.13.dist-info/METADATA | 204 + .../site-packages/idna-3.13.dist-info/RECORD | 22 + .../site-packages/idna-3.13.dist-info/WHEEL | 4 + .../idna-3.13.dist-info/licenses/LICENSE.md | 31 + .../python3.9/site-packages/idna/__init__.py | 45 + .../lib/python3.9/site-packages/idna/codec.py | 122 + .../python3.9/site-packages/idna/compat.py | 15 + venv/lib/python3.9/site-packages/idna/core.py | 440 + .../python3.9/site-packages/idna/idnadata.py | 4367 +++++++ .../python3.9/site-packages/idna/intranges.py | 57 + .../site-packages/idna/package_data.py | 1 + .../lib/python3.9/site-packages/idna/py.typed | 0 .../python3.9/site-packages/idna/uts46data.py | 8384 +++++++++++++ .../INSTALLER | 1 + .../METADATA | 133 + .../importlib_metadata-8.7.1.dist-info/RECORD | 33 + .../importlib_metadata-8.7.1.dist-info/WHEEL | 5 + .../licenses/LICENSE | 73 + .../top_level.txt | 1 + .../importlib_metadata/__init__.py | 1191 ++ .../importlib_metadata/_adapters.py | 136 + .../importlib_metadata/_collections.py | 34 + .../importlib_metadata/_compat.py | 56 + .../importlib_metadata/_functools.py | 135 + .../importlib_metadata/_itertools.py | 171 + .../site-packages/importlib_metadata/_meta.py | 71 + .../site-packages/importlib_metadata/_text.py | 99 + .../importlib_metadata/_typing.py | 15 + .../importlib_metadata/compat/__init__.py | 0 .../importlib_metadata/compat/py311.py | 22 + .../importlib_metadata/compat/py39.py | 42 + .../importlib_metadata/diagnose.py | 21 + .../site-packages/importlib_metadata/py.typed | 0 .../itsdangerous-2.2.0.dist-info/INSTALLER | 1 + .../itsdangerous-2.2.0.dist-info/LICENSE.txt | 28 + .../itsdangerous-2.2.0.dist-info/METADATA | 60 + .../itsdangerous-2.2.0.dist-info/RECORD | 22 + .../itsdangerous-2.2.0.dist-info/WHEEL | 4 + .../site-packages/itsdangerous/__init__.py | 38 + .../site-packages/itsdangerous/_json.py | 18 + .../site-packages/itsdangerous/encoding.py | 54 + .../site-packages/itsdangerous/exc.py | 106 + .../site-packages/itsdangerous/py.typed | 0 .../site-packages/itsdangerous/serializer.py | 406 + .../site-packages/itsdangerous/signer.py | 266 + .../site-packages/itsdangerous/timed.py | 228 + .../site-packages/itsdangerous/url_safe.py | 83 + .../jinja2-3.1.6.dist-info/INSTALLER | 1 + .../jinja2-3.1.6.dist-info/METADATA | 84 + .../jinja2-3.1.6.dist-info/RECORD | 57 + .../jinja2-3.1.6.dist-info/WHEEL | 4 + .../jinja2-3.1.6.dist-info/entry_points.txt | 3 + .../licenses/LICENSE.txt | 28 + .../site-packages/jinja2/__init__.py | 38 + .../site-packages/jinja2/_identifier.py | 6 + .../site-packages/jinja2/async_utils.py | 99 + .../python3.9/site-packages/jinja2/bccache.py | 408 + .../site-packages/jinja2/compiler.py | 1998 +++ .../site-packages/jinja2/constants.py | 20 + .../python3.9/site-packages/jinja2/debug.py | 191 + .../site-packages/jinja2/defaults.py | 48 + .../site-packages/jinja2/environment.py | 1672 +++ .../site-packages/jinja2/exceptions.py | 166 + .../lib/python3.9/site-packages/jinja2/ext.py | 870 ++ .../python3.9/site-packages/jinja2/filters.py | 1873 +++ .../site-packages/jinja2/idtracking.py | 318 + .../python3.9/site-packages/jinja2/lexer.py | 868 ++ .../python3.9/site-packages/jinja2/loaders.py | 693 ++ .../python3.9/site-packages/jinja2/meta.py | 112 + .../site-packages/jinja2/nativetypes.py | 130 + .../python3.9/site-packages/jinja2/nodes.py | 1206 ++ .../site-packages/jinja2/optimizer.py | 48 + .../python3.9/site-packages/jinja2/parser.py | 1049 ++ .../python3.9/site-packages/jinja2/py.typed | 0 .../python3.9/site-packages/jinja2/runtime.py | 1062 ++ .../python3.9/site-packages/jinja2/sandbox.py | 436 + .../python3.9/site-packages/jinja2/tests.py | 256 + .../python3.9/site-packages/jinja2/utils.py | 766 ++ .../python3.9/site-packages/jinja2/visitor.py | 92 + .../markupsafe-3.0.3.dist-info/INSTALLER | 1 + .../markupsafe-3.0.3.dist-info/METADATA | 74 + .../markupsafe-3.0.3.dist-info/RECORD | 14 + .../markupsafe-3.0.3.dist-info/WHEEL | 7 + .../licenses/LICENSE.txt | 28 + .../markupsafe-3.0.3.dist-info/top_level.txt | 1 + .../site-packages/markupsafe/__init__.py | 396 + .../site-packages/markupsafe/_native.py | 8 + .../site-packages/markupsafe/_speedups.c | 200 + .../_speedups.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 35608 bytes .../site-packages/markupsafe/_speedups.pyi | 1 + .../site-packages/markupsafe/py.typed | 0 .../multidict-6.7.1.dist-info/INSTALLER | 1 + .../multidict-6.7.1.dist-info/METADATA | 149 + .../multidict-6.7.1.dist-info/RECORD | 16 + .../multidict-6.7.1.dist-info/WHEEL | 7 + .../licenses/LICENSE | 13 + .../multidict-6.7.1.dist-info/top_level.txt | 1 + .../site-packages/multidict/__init__.py | 60 + .../python3.9/site-packages/multidict/_abc.py | 73 + .../site-packages/multidict/_compat.py | 15 + .../_multidict.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 783072 bytes .../site-packages/multidict/_multidict_py.py | 1242 ++ .../site-packages/multidict/py.typed | 1 + .../packaging-26.2.dist-info/INSTALLER | 1 + .../packaging-26.2.dist-info/METADATA | 112 + .../packaging-26.2.dist-info/RECORD | 48 + .../packaging-26.2.dist-info/WHEEL | 4 + .../packaging-26.2.dist-info/licenses/LICENSE | 3 + .../licenses/LICENSE.APACHE | 177 + .../licenses/LICENSE.BSD | 23 + .../site-packages/packaging/__init__.py | 15 + .../site-packages/packaging/_elffile.py | 108 + .../site-packages/packaging/_manylinux.py | 262 + .../site-packages/packaging/_musllinux.py | 85 + .../site-packages/packaging/_parser.py | 393 + .../site-packages/packaging/_structures.py | 33 + .../site-packages/packaging/_tokenizer.py | 193 + .../packaging/dependency_groups.py | 302 + .../site-packages/packaging/direct_url.py | 325 + .../site-packages/packaging/errors.py | 94 + .../packaging/licenses/__init__.py | 186 + .../site-packages/packaging/licenses/_spdx.py | 799 ++ .../site-packages/packaging/markers.py | 492 + .../site-packages/packaging/metadata.py | 964 ++ .../site-packages/packaging/py.typed | 0 .../site-packages/packaging/pylock.py | 905 ++ .../site-packages/packaging/requirements.py | 129 + .../site-packages/packaging/specifiers.py | 1943 +++ .../python3.9/site-packages/packaging/tags.py | 932 ++ .../site-packages/packaging/utils.py | 296 + .../site-packages/packaging/version.py | 1231 ++ .../python3.9/site-packages/paho/__init__.py | 0 .../site-packages/paho/mqtt/__init__.py | 5 + .../site-packages/paho/mqtt/client.py | 5004 ++++++++ .../site-packages/paho/mqtt/enums.py | 113 + .../site-packages/paho/mqtt/matcher.py | 78 + .../site-packages/paho/mqtt/packettypes.py | 43 + .../site-packages/paho/mqtt/properties.py | 421 + .../site-packages/paho/mqtt/publish.py | 306 + .../site-packages/paho/mqtt/py.typed | 0 .../site-packages/paho/mqtt/reasoncodes.py | 223 + .../site-packages/paho/mqtt/subscribe.py | 281 + .../paho/mqtt/subscribeoptions.py | 113 + .../paho_mqtt-2.1.0.dist-info/INSTALLER | 1 + .../paho_mqtt-2.1.0.dist-info/METADATA | 635 + .../paho_mqtt-2.1.0.dist-info/RECORD | 29 + .../paho_mqtt-2.1.0.dist-info/REQUESTED | 0 .../paho_mqtt-2.1.0.dist-info/WHEEL | 4 + .../licenses/LICENSE.txt | 3 + .../pip-26.0.1.dist-info/INSTALLER | 1 + .../pip-26.0.1.dist-info/METADATA | 111 + .../site-packages/pip-26.0.1.dist-info/RECORD | 878 ++ .../pip-26.0.1.dist-info/REQUESTED | 0 .../site-packages/pip-26.0.1.dist-info/WHEEL | 4 + .../pip-26.0.1.dist-info/entry_points.txt | 4 + .../pip-26.0.1.dist-info/licenses/AUTHORS.txt | 860 ++ .../pip-26.0.1.dist-info/licenses/LICENSE.txt | 20 + .../src/pip/_vendor/cachecontrol/LICENSE.txt | 13 + .../licenses/src/pip/_vendor/certifi/LICENSE | 20 + .../pip/_vendor/dependency_groups/LICENSE.txt | 9 + .../src/pip/_vendor/distlib/LICENSE.txt | 284 + .../licenses/src/pip/_vendor/distro/LICENSE | 202 + .../licenses/src/pip/_vendor/idna/LICENSE.md | 31 + .../licenses/src/pip/_vendor/msgpack/COPYING | 14 + .../src/pip/_vendor/packaging/LICENSE | 3 + .../src/pip/_vendor/packaging/LICENSE.APACHE | 177 + .../src/pip/_vendor/packaging/LICENSE.BSD | 23 + .../src/pip/_vendor/pkg_resources/LICENSE | 17 + .../src/pip/_vendor/platformdirs/LICENSE | 21 + .../licenses/src/pip/_vendor/pygments/LICENSE | 25 + .../src/pip/_vendor/pyproject_hooks/LICENSE | 21 + .../licenses/src/pip/_vendor/requests/LICENSE | 175 + .../src/pip/_vendor/resolvelib/LICENSE | 13 + .../licenses/src/pip/_vendor/rich/LICENSE | 19 + .../licenses/src/pip/_vendor/tomli/LICENSE | 21 + .../licenses/src/pip/_vendor/tomli_w/LICENSE | 21 + .../src/pip/_vendor/truststore/LICENSE | 21 + .../src/pip/_vendor/urllib3/LICENSE.txt | 21 + .../python3.9/site-packages/pip/__init__.py | 13 + .../python3.9/site-packages/pip/__main__.py | 24 + .../site-packages/pip/__pip-runner__.py | 50 + .../site-packages/pip/_internal/__init__.py | 18 + .../site-packages/pip/_internal/build_env.py | 606 + .../site-packages/pip/_internal/cache.py | 291 + .../pip/_internal/cli/__init__.py | 3 + .../pip/_internal/cli/autocompletion.py | 184 + .../pip/_internal/cli/base_command.py | 255 + .../pip/_internal/cli/cmdoptions.py | 1267 ++ .../pip/_internal/cli/command_context.py | 28 + .../pip/_internal/cli/index_command.py | 195 + .../site-packages/pip/_internal/cli/main.py | 85 + .../pip/_internal/cli/main_parser.py | 136 + .../site-packages/pip/_internal/cli/parser.py | 358 + .../pip/_internal/cli/progress_bars.py | 153 + .../pip/_internal/cli/req_command.py | 447 + .../pip/_internal/cli/spinners.py | 235 + .../pip/_internal/cli/status_codes.py | 6 + .../pip/_internal/commands/__init__.py | 139 + .../pip/_internal/commands/cache.py | 255 + .../pip/_internal/commands/check.py | 66 + .../pip/_internal/commands/completion.py | 136 + .../pip/_internal/commands/configuration.py | 288 + .../pip/_internal/commands/debug.py | 203 + .../pip/_internal/commands/download.py | 146 + .../pip/_internal/commands/freeze.py | 107 + .../pip/_internal/commands/hash.py | 58 + .../pip/_internal/commands/help.py | 40 + .../pip/_internal/commands/index.py | 166 + .../pip/_internal/commands/inspect.py | 92 + .../pip/_internal/commands/install.py | 810 ++ .../pip/_internal/commands/list.py | 398 + .../pip/_internal/commands/lock.py | 175 + .../pip/_internal/commands/search.py | 178 + .../pip/_internal/commands/show.py | 231 + .../pip/_internal/commands/uninstall.py | 113 + .../pip/_internal/commands/wheel.py | 171 + .../pip/_internal/configuration.py | 396 + .../pip/_internal/distributions/__init__.py | 21 + .../pip/_internal/distributions/base.py | 55 + .../pip/_internal/distributions/installed.py | 33 + .../pip/_internal/distributions/sdist.py | 164 + .../pip/_internal/distributions/wheel.py | 44 + .../site-packages/pip/_internal/exceptions.py | 971 ++ .../pip/_internal/index/__init__.py | 1 + .../pip/_internal/index/collector.py | 488 + .../pip/_internal/index/package_finder.py | 1125 ++ .../pip/_internal/index/sources.py | 287 + .../pip/_internal/locations/__init__.py | 440 + .../pip/_internal/locations/_distutils.py | 173 + .../pip/_internal/locations/_sysconfig.py | 218 + .../pip/_internal/locations/base.py | 82 + .../site-packages/pip/_internal/main.py | 12 + .../pip/_internal/metadata/__init__.py | 169 + .../pip/_internal/metadata/_json.py | 87 + .../pip/_internal/metadata/base.py | 685 + .../_internal/metadata/importlib/__init__.py | 6 + .../_internal/metadata/importlib/_compat.py | 87 + .../_internal/metadata/importlib/_dists.py | 229 + .../pip/_internal/metadata/importlib/_envs.py | 143 + .../pip/_internal/metadata/pkg_resources.py | 298 + .../pip/_internal/models/__init__.py | 1 + .../pip/_internal/models/candidate.py | 25 + .../pip/_internal/models/direct_url.py | 227 + .../pip/_internal/models/format_control.py | 78 + .../pip/_internal/models/index.py | 28 + .../_internal/models/installation_report.py | 57 + .../pip/_internal/models/link.py | 617 + .../pip/_internal/models/release_control.py | 92 + .../pip/_internal/models/scheme.py | 25 + .../pip/_internal/models/search_scope.py | 126 + .../pip/_internal/models/selection_prefs.py | 56 + .../pip/_internal/models/target_python.py | 122 + .../pip/_internal/models/wheel.py | 80 + .../pip/_internal/network/__init__.py | 1 + .../pip/_internal/network/auth.py | 568 + .../pip/_internal/network/cache.py | 128 + .../pip/_internal/network/download.py | 341 + .../pip/_internal/network/lazy_wheel.py | 215 + .../pip/_internal/network/session.py | 532 + .../pip/_internal/network/utils.py | 98 + .../pip/_internal/network/xmlrpc.py | 61 + .../pip/_internal/operations/__init__.py | 0 .../_internal/operations/build/__init__.py | 0 .../operations/build/build_tracker.py | 140 + .../_internal/operations/build/metadata.py | 38 + .../operations/build/metadata_editable.py | 41 + .../pip/_internal/operations/build/wheel.py | 38 + .../operations/build/wheel_editable.py | 47 + .../pip/_internal/operations/check.py | 175 + .../pip/_internal/operations/freeze.py | 259 + .../_internal/operations/install/__init__.py | 1 + .../pip/_internal/operations/install/wheel.py | 745 ++ .../pip/_internal/operations/prepare.py | 747 ++ .../site-packages/pip/_internal/pyproject.py | 123 + .../pip/_internal/req/__init__.py | 103 + .../pip/_internal/req/constructors.py | 568 + .../site-packages/pip/_internal/req/pep723.py | 41 + .../pip/_internal/req/req_dependency_group.py | 75 + .../pip/_internal/req/req_file.py | 631 + .../pip/_internal/req/req_install.py | 828 ++ .../pip/_internal/req/req_set.py | 81 + .../pip/_internal/req/req_uninstall.py | 639 + .../pip/_internal/resolution/__init__.py | 0 .../pip/_internal/resolution/base.py | 20 + .../_internal/resolution/legacy/__init__.py | 0 .../_internal/resolution/legacy/resolver.py | 598 + .../resolution/resolvelib/__init__.py | 0 .../_internal/resolution/resolvelib/base.py | 142 + .../resolution/resolvelib/candidates.py | 591 + .../resolution/resolvelib/factory.py | 856 ++ .../resolution/resolvelib/found_candidates.py | 166 + .../resolution/resolvelib/provider.py | 285 + .../resolution/resolvelib/reporter.py | 98 + .../resolution/resolvelib/requirements.py | 251 + .../resolution/resolvelib/resolver.py | 332 + .../pip/_internal/self_outdated_check.py | 255 + .../pip/_internal/utils/__init__.py | 0 .../pip/_internal/utils/_jaraco_text.py | 109 + .../site-packages/pip/_internal/utils/_log.py | 38 + .../pip/_internal/utils/appdirs.py | 52 + .../pip/_internal/utils/compat.py | 85 + .../pip/_internal/utils/compatibility_tags.py | 201 + .../pip/_internal/utils/datetime.py | 28 + .../pip/_internal/utils/deprecation.py | 126 + .../pip/_internal/utils/direct_url_helpers.py | 87 + .../pip/_internal/utils/egg_link.py | 81 + .../pip/_internal/utils/entrypoints.py | 88 + .../pip/_internal/utils/filesystem.py | 203 + .../pip/_internal/utils/filetypes.py | 24 + .../pip/_internal/utils/glibc.py | 102 + .../pip/_internal/utils/hashes.py | 150 + .../pip/_internal/utils/logging.py | 396 + .../site-packages/pip/_internal/utils/misc.py | 771 ++ .../pip/_internal/utils/packaging.py | 44 + .../pip/_internal/utils/pylock.py | 116 + .../pip/_internal/utils/retry.py | 45 + .../pip/_internal/utils/subprocess.py | 248 + .../pip/_internal/utils/temp_dir.py | 294 + .../pip/_internal/utils/unpacking.py | 362 + .../site-packages/pip/_internal/utils/urls.py | 55 + .../pip/_internal/utils/virtualenv.py | 105 + .../pip/_internal/utils/wheel.py | 132 + .../pip/_internal/vcs/__init__.py | 15 + .../site-packages/pip/_internal/vcs/bazaar.py | 130 + .../site-packages/pip/_internal/vcs/git.py | 571 + .../pip/_internal/vcs/mercurial.py | 186 + .../pip/_internal/vcs/subversion.py | 335 + .../pip/_internal/vcs/versioncontrol.py | 695 ++ .../pip/_internal/wheel_builder.py | 261 + .../site-packages/pip/_vendor/README.rst | 180 + .../site-packages/pip/_vendor/__init__.py | 117 + .../pip/_vendor/cachecontrol/LICENSE.txt | 13 + .../pip/_vendor/cachecontrol/__init__.py | 32 + .../pip/_vendor/cachecontrol/_cmd.py | 70 + .../pip/_vendor/cachecontrol/adapter.py | 167 + .../pip/_vendor/cachecontrol/cache.py | 75 + .../_vendor/cachecontrol/caches/__init__.py | 8 + .../_vendor/cachecontrol/caches/file_cache.py | 145 + .../cachecontrol/caches/redis_cache.py | 48 + .../pip/_vendor/cachecontrol/controller.py | 511 + .../pip/_vendor/cachecontrol/filewrapper.py | 121 + .../pip/_vendor/cachecontrol/heuristics.py | 157 + .../pip/_vendor/cachecontrol/py.typed | 0 .../pip/_vendor/cachecontrol/serialize.py | 146 + .../pip/_vendor/cachecontrol/wrapper.py | 43 + .../site-packages/pip/_vendor/certifi/LICENSE | 20 + .../pip/_vendor/certifi/__init__.py | 4 + .../pip/_vendor/certifi/__main__.py | 12 + .../pip/_vendor/certifi/cacert.pem | 4468 +++++++ .../site-packages/pip/_vendor/certifi/core.py | 83 + .../pip/_vendor/certifi/py.typed | 0 .../pip/_vendor/dependency_groups/LICENSE.txt | 9 + .../pip/_vendor/dependency_groups/__init__.py | 13 + .../pip/_vendor/dependency_groups/__main__.py | 65 + .../dependency_groups/_implementation.py | 209 + .../_lint_dependency_groups.py | 59 + .../_vendor/dependency_groups/_pip_wrapper.py | 62 + .../_vendor/dependency_groups/_toml_compat.py | 9 + .../pip/_vendor/dependency_groups/py.typed | 0 .../pip/_vendor/distlib/LICENSE.txt | 284 + .../pip/_vendor/distlib/__init__.py | 33 + .../pip/_vendor/distlib/compat.py | 1137 ++ .../pip/_vendor/distlib/resources.py | 358 + .../pip/_vendor/distlib/scripts.py | 447 + .../site-packages/pip/_vendor/distlib/t32.exe | Bin 0 -> 97792 bytes .../pip/_vendor/distlib/t64-arm.exe | Bin 0 -> 182784 bytes .../site-packages/pip/_vendor/distlib/t64.exe | Bin 0 -> 108032 bytes .../site-packages/pip/_vendor/distlib/util.py | 1984 +++ .../site-packages/pip/_vendor/distlib/w32.exe | Bin 0 -> 91648 bytes .../pip/_vendor/distlib/w64-arm.exe | Bin 0 -> 168448 bytes .../site-packages/pip/_vendor/distlib/w64.exe | Bin 0 -> 101888 bytes .../site-packages/pip/_vendor/distro/LICENSE | 202 + .../pip/_vendor/distro/__init__.py | 54 + .../pip/_vendor/distro/__main__.py | 4 + .../pip/_vendor/distro/distro.py | 1403 +++ .../site-packages/pip/_vendor/distro/py.typed | 0 .../site-packages/pip/_vendor/idna/LICENSE.md | 31 + .../pip/_vendor/idna/__init__.py | 45 + .../site-packages/pip/_vendor/idna/codec.py | 122 + .../site-packages/pip/_vendor/idna/compat.py | 15 + .../site-packages/pip/_vendor/idna/core.py | 437 + .../pip/_vendor/idna/idnadata.py | 4309 +++++++ .../pip/_vendor/idna/intranges.py | 57 + .../pip/_vendor/idna/package_data.py | 1 + .../site-packages/pip/_vendor/idna/py.typed | 0 .../pip/_vendor/idna/uts46data.py | 8841 +++++++++++++ .../site-packages/pip/_vendor/msgpack/COPYING | 14 + .../pip/_vendor/msgpack/__init__.py | 55 + .../pip/_vendor/msgpack/exceptions.py | 48 + .../site-packages/pip/_vendor/msgpack/ext.py | 170 + .../pip/_vendor/msgpack/fallback.py | 929 ++ .../pip/_vendor/packaging/LICENSE | 3 + .../pip/_vendor/packaging/LICENSE.APACHE | 177 + .../pip/_vendor/packaging/LICENSE.BSD | 23 + .../pip/_vendor/packaging/__init__.py | 15 + .../pip/_vendor/packaging/_elffile.py | 108 + .../pip/_vendor/packaging/_manylinux.py | 262 + .../pip/_vendor/packaging/_musllinux.py | 85 + .../pip/_vendor/packaging/_parser.py | 365 + .../pip/_vendor/packaging/_structures.py | 69 + .../pip/_vendor/packaging/_tokenizer.py | 193 + .../_vendor/packaging/licenses/__init__.py | 147 + .../pip/_vendor/packaging/licenses/_spdx.py | 799 ++ .../pip/_vendor/packaging/markers.py | 388 + .../pip/_vendor/packaging/metadata.py | 978 ++ .../pip/_vendor/packaging/py.typed | 0 .../pip/_vendor/packaging/pylock.py | 635 + .../pip/_vendor/packaging/requirements.py | 86 + .../pip/_vendor/packaging/specifiers.py | 1068 ++ .../pip/_vendor/packaging/tags.py | 651 + .../pip/_vendor/packaging/utils.py | 158 + .../pip/_vendor/packaging/version.py | 792 ++ .../pip/_vendor/pkg_resources/LICENSE | 17 + .../pip/_vendor/pkg_resources/__init__.py | 3676 ++++++ .../pip/_vendor/platformdirs/LICENSE | 21 + .../pip/_vendor/platformdirs/__init__.py | 631 + .../pip/_vendor/platformdirs/__main__.py | 55 + .../pip/_vendor/platformdirs/android.py | 249 + .../pip/_vendor/platformdirs/api.py | 299 + .../pip/_vendor/platformdirs/macos.py | 146 + .../pip/_vendor/platformdirs/py.typed | 0 .../pip/_vendor/platformdirs/unix.py | 272 + .../pip/_vendor/platformdirs/version.py | 34 + .../pip/_vendor/platformdirs/windows.py | 278 + .../pip/_vendor/pygments/LICENSE | 25 + .../pip/_vendor/pygments/__init__.py | 82 + .../pip/_vendor/pygments/__main__.py | 17 + .../pip/_vendor/pygments/console.py | 70 + .../pip/_vendor/pygments/filter.py | 70 + .../pip/_vendor/pygments/filters/__init__.py | 940 ++ .../pip/_vendor/pygments/formatter.py | 129 + .../_vendor/pygments/formatters/__init__.py | 157 + .../_vendor/pygments/formatters/_mapping.py | 23 + .../pip/_vendor/pygments/lexer.py | 963 ++ .../pip/_vendor/pygments/lexers/__init__.py | 362 + .../pip/_vendor/pygments/lexers/_mapping.py | 602 + .../pip/_vendor/pygments/lexers/python.py | 1201 ++ .../pip/_vendor/pygments/modeline.py | 43 + .../pip/_vendor/pygments/plugin.py | 72 + .../pip/_vendor/pygments/regexopt.py | 91 + .../pip/_vendor/pygments/scanner.py | 104 + .../pip/_vendor/pygments/sphinxext.py | 247 + .../pip/_vendor/pygments/style.py | 203 + .../pip/_vendor/pygments/styles/__init__.py | 61 + .../pip/_vendor/pygments/styles/_mapping.py | 54 + .../pip/_vendor/pygments/token.py | 214 + .../pip/_vendor/pygments/unistring.py | 153 + .../pip/_vendor/pygments/util.py | 324 + .../pip/_vendor/pyproject_hooks/LICENSE | 21 + .../pip/_vendor/pyproject_hooks/__init__.py | 31 + .../pip/_vendor/pyproject_hooks/_impl.py | 410 + .../pyproject_hooks/_in_process/__init__.py | 21 + .../_in_process/_in_process.py | 389 + .../pip/_vendor/pyproject_hooks/py.typed | 0 .../pip/_vendor/requests/LICENSE | 175 + .../pip/_vendor/requests/__init__.py | 179 + .../pip/_vendor/requests/__version__.py | 14 + .../pip/_vendor/requests/_internal_utils.py | 50 + .../pip/_vendor/requests/adapters.py | 696 ++ .../site-packages/pip/_vendor/requests/api.py | 157 + .../pip/_vendor/requests/auth.py | 314 + .../pip/_vendor/requests/certs.py | 17 + .../pip/_vendor/requests/compat.py | 90 + .../pip/_vendor/requests/cookies.py | 561 + .../pip/_vendor/requests/exceptions.py | 151 + .../pip/_vendor/requests/help.py | 127 + .../pip/_vendor/requests/hooks.py | 33 + .../pip/_vendor/requests/models.py | 1039 ++ .../pip/_vendor/requests/packages.py | 25 + .../pip/_vendor/requests/sessions.py | 831 ++ .../pip/_vendor/requests/status_codes.py | 128 + .../pip/_vendor/requests/structures.py | 99 + .../pip/_vendor/requests/utils.py | 1086 ++ .../pip/_vendor/resolvelib/LICENSE | 13 + .../pip/_vendor/resolvelib/__init__.py | 27 + .../pip/_vendor/resolvelib/providers.py | 196 + .../pip/_vendor/resolvelib/py.typed | 0 .../pip/_vendor/resolvelib/reporters.py | 55 + .../_vendor/resolvelib/resolvers/__init__.py | 27 + .../_vendor/resolvelib/resolvers/abstract.py | 47 + .../_vendor/resolvelib/resolvers/criterion.py | 48 + .../resolvelib/resolvers/exceptions.py | 57 + .../resolvelib/resolvers/resolution.py | 627 + .../pip/_vendor/resolvelib/structs.py | 209 + .../site-packages/pip/_vendor/rich/LICENSE | 19 + .../pip/_vendor/rich/__init__.py | 177 + .../pip/_vendor/rich/__main__.py | 245 + .../pip/_vendor/rich/_cell_widths.py | 454 + .../pip/_vendor/rich/_emoji_codes.py | 3610 ++++++ .../pip/_vendor/rich/_emoji_replace.py | 32 + .../pip/_vendor/rich/_export_format.py | 76 + .../pip/_vendor/rich/_extension.py | 10 + .../site-packages/pip/_vendor/rich/_fileno.py | 24 + .../pip/_vendor/rich/_inspect.py | 268 + .../pip/_vendor/rich/_log_render.py | 94 + .../site-packages/pip/_vendor/rich/_loop.py | 43 + .../pip/_vendor/rich/_null_file.py | 69 + .../pip/_vendor/rich/_palettes.py | 309 + .../site-packages/pip/_vendor/rich/_pick.py | 17 + .../site-packages/pip/_vendor/rich/_ratio.py | 153 + .../pip/_vendor/rich/_spinners.py | 482 + .../site-packages/pip/_vendor/rich/_stack.py | 16 + .../site-packages/pip/_vendor/rich/_timer.py | 19 + .../pip/_vendor/rich/_win32_console.py | 661 + .../pip/_vendor/rich/_windows.py | 71 + .../pip/_vendor/rich/_windows_renderer.py | 56 + .../site-packages/pip/_vendor/rich/_wrap.py | 93 + .../site-packages/pip/_vendor/rich/abc.py | 33 + .../site-packages/pip/_vendor/rich/align.py | 306 + .../site-packages/pip/_vendor/rich/ansi.py | 241 + .../site-packages/pip/_vendor/rich/bar.py | 93 + .../site-packages/pip/_vendor/rich/box.py | 474 + .../site-packages/pip/_vendor/rich/cells.py | 174 + .../site-packages/pip/_vendor/rich/color.py | 621 + .../pip/_vendor/rich/color_triplet.py | 38 + .../site-packages/pip/_vendor/rich/columns.py | 187 + .../site-packages/pip/_vendor/rich/console.py | 2680 ++++ .../pip/_vendor/rich/constrain.py | 37 + .../pip/_vendor/rich/containers.py | 167 + .../site-packages/pip/_vendor/rich/control.py | 219 + .../pip/_vendor/rich/default_styles.py | 193 + .../pip/_vendor/rich/diagnose.py | 39 + .../site-packages/pip/_vendor/rich/emoji.py | 91 + .../site-packages/pip/_vendor/rich/errors.py | 34 + .../pip/_vendor/rich/file_proxy.py | 57 + .../pip/_vendor/rich/filesize.py | 88 + .../pip/_vendor/rich/highlighter.py | 232 + .../site-packages/pip/_vendor/rich/json.py | 139 + .../site-packages/pip/_vendor/rich/jupyter.py | 101 + .../site-packages/pip/_vendor/rich/layout.py | 442 + .../site-packages/pip/_vendor/rich/live.py | 400 + .../pip/_vendor/rich/live_render.py | 106 + .../site-packages/pip/_vendor/rich/logging.py | 297 + .../site-packages/pip/_vendor/rich/markup.py | 251 + .../site-packages/pip/_vendor/rich/measure.py | 151 + .../site-packages/pip/_vendor/rich/padding.py | 141 + .../site-packages/pip/_vendor/rich/pager.py | 34 + .../site-packages/pip/_vendor/rich/palette.py | 100 + .../site-packages/pip/_vendor/rich/panel.py | 317 + .../site-packages/pip/_vendor/rich/pretty.py | 1016 ++ .../pip/_vendor/rich/progress.py | 1715 +++ .../pip/_vendor/rich/progress_bar.py | 223 + .../site-packages/pip/_vendor/rich/prompt.py | 400 + .../pip/_vendor/rich/protocol.py | 42 + .../site-packages/pip/_vendor/rich/py.typed | 0 .../site-packages/pip/_vendor/rich/region.py | 10 + .../site-packages/pip/_vendor/rich/repr.py | 149 + .../site-packages/pip/_vendor/rich/rule.py | 130 + .../site-packages/pip/_vendor/rich/scope.py | 86 + .../site-packages/pip/_vendor/rich/screen.py | 54 + .../site-packages/pip/_vendor/rich/segment.py | 752 ++ .../site-packages/pip/_vendor/rich/spinner.py | 132 + .../site-packages/pip/_vendor/rich/status.py | 131 + .../site-packages/pip/_vendor/rich/style.py | 792 ++ .../site-packages/pip/_vendor/rich/styled.py | 42 + .../site-packages/pip/_vendor/rich/syntax.py | 985 ++ .../site-packages/pip/_vendor/rich/table.py | 1006 ++ .../pip/_vendor/rich/terminal_theme.py | 153 + .../site-packages/pip/_vendor/rich/text.py | 1361 ++ .../site-packages/pip/_vendor/rich/theme.py | 115 + .../site-packages/pip/_vendor/rich/themes.py | 5 + .../pip/_vendor/rich/traceback.py | 899 ++ .../site-packages/pip/_vendor/rich/tree.py | 257 + .../site-packages/pip/_vendor/tomli/LICENSE | 21 + .../pip/_vendor/tomli/__init__.py | 8 + .../pip/_vendor/tomli/_parser.py | 777 ++ .../site-packages/pip/_vendor/tomli/_re.py | 115 + .../site-packages/pip/_vendor/tomli/_types.py | 10 + .../site-packages/pip/_vendor/tomli/py.typed | 1 + .../site-packages/pip/_vendor/tomli_w/LICENSE | 21 + .../pip/_vendor/tomli_w/__init__.py | 4 + .../pip/_vendor/tomli_w/_writer.py | 229 + .../pip/_vendor/tomli_w/py.typed | 1 + .../pip/_vendor/truststore/LICENSE | 21 + .../pip/_vendor/truststore/__init__.py | 36 + .../pip/_vendor/truststore/_api.py | 341 + .../pip/_vendor/truststore/_macos.py | 571 + .../pip/_vendor/truststore/_openssl.py | 68 + .../pip/_vendor/truststore/_ssl_constants.py | 31 + .../pip/_vendor/truststore/_windows.py | 567 + .../pip/_vendor/truststore/py.typed | 0 .../pip/_vendor/urllib3/LICENSE.txt | 21 + .../pip/_vendor/urllib3/__init__.py | 102 + .../pip/_vendor/urllib3/_collections.py | 355 + .../pip/_vendor/urllib3/_version.py | 2 + .../pip/_vendor/urllib3/connection.py | 572 + .../pip/_vendor/urllib3/connectionpool.py | 1140 ++ .../pip/_vendor/urllib3/contrib/__init__.py | 0 .../urllib3/contrib/_appengine_environ.py | 36 + .../contrib/_securetransport/__init__.py | 0 .../contrib/_securetransport/bindings.py | 519 + .../contrib/_securetransport/low_level.py | 397 + .../pip/_vendor/urllib3/contrib/appengine.py | 314 + .../pip/_vendor/urllib3/contrib/ntlmpool.py | 130 + .../pip/_vendor/urllib3/contrib/pyopenssl.py | 518 + .../urllib3/contrib/securetransport.py | 920 ++ .../pip/_vendor/urllib3/contrib/socks.py | 216 + .../pip/_vendor/urllib3/exceptions.py | 323 + .../pip/_vendor/urllib3/fields.py | 274 + .../pip/_vendor/urllib3/filepost.py | 98 + .../pip/_vendor/urllib3/packages/__init__.py | 0 .../urllib3/packages/backports/__init__.py | 0 .../urllib3/packages/backports/makefile.py | 51 + .../packages/backports/weakref_finalize.py | 155 + .../pip/_vendor/urllib3/packages/six.py | 1076 ++ .../pip/_vendor/urllib3/poolmanager.py | 540 + .../pip/_vendor/urllib3/request.py | 191 + .../pip/_vendor/urllib3/response.py | 879 ++ .../pip/_vendor/urllib3/util/__init__.py | 49 + .../pip/_vendor/urllib3/util/connection.py | 149 + .../pip/_vendor/urllib3/util/proxy.py | 57 + .../pip/_vendor/urllib3/util/queue.py | 22 + .../pip/_vendor/urllib3/util/request.py | 137 + .../pip/_vendor/urllib3/util/response.py | 107 + .../pip/_vendor/urllib3/util/retry.py | 622 + .../pip/_vendor/urllib3/util/ssl_.py | 504 + .../urllib3/util/ssl_match_hostname.py | 159 + .../pip/_vendor/urllib3/util/ssltransport.py | 221 + .../pip/_vendor/urllib3/util/timeout.py | 271 + .../pip/_vendor/urllib3/util/url.py | 435 + .../pip/_vendor/urllib3/util/wait.py | 152 + .../site-packages/pip/_vendor/vendor.txt | 19 + venv/lib/python3.9/site-packages/pip/py.typed | 4 + .../pkg_resources-0.0.0.dist-info/AUTHORS.txt | 590 + .../pkg_resources-0.0.0.dist-info/INSTALLER | 1 + .../pkg_resources-0.0.0.dist-info/LICENSE.txt | 20 + .../pkg_resources-0.0.0.dist-info/METADATA | 13 + .../pkg_resources-0.0.0.dist-info/RECORD | 39 + .../pkg_resources-0.0.0.dist-info/REQUESTED | 0 .../pkg_resources-0.0.0.dist-info/WHEEL | 6 + .../site-packages/pkg_resources/__init__.py | 3296 +++++ .../pkg_resources/_vendor/__init__.py | 0 .../pkg_resources/_vendor/appdirs.py | 608 + .../_vendor/packaging/__about__.py | 21 + .../_vendor/packaging/__init__.py | 14 + .../_vendor/packaging/_compat.py | 30 + .../_vendor/packaging/_structures.py | 68 + .../_vendor/packaging/markers.py | 301 + .../_vendor/packaging/requirements.py | 127 + .../_vendor/packaging/specifiers.py | 774 ++ .../pkg_resources/_vendor/packaging/utils.py | 14 + .../_vendor/packaging/version.py | 393 + .../pkg_resources/_vendor/pyparsing.py | 5742 +++++++++ .../pkg_resources/_vendor/six.py | 868 ++ .../pkg_resources/extern/__init__.py | 73 + .../site-packages/pkg_resources/py31compat.py | 23 + .../propcache-0.4.1.dist-info/INSTALLER | 1 + .../propcache-0.4.1.dist-info/METADATA | 443 + .../propcache-0.4.1.dist-info/RECORD | 18 + .../propcache-0.4.1.dist-info/WHEEL | 7 + .../licenses/LICENSE | 202 + .../propcache-0.4.1.dist-info/licenses/NOTICE | 13 + .../propcache-0.4.1.dist-info/top_level.txt | 1 + .../site-packages/propcache/__init__.py | 32 + .../site-packages/propcache/_helpers.py | 39 + .../_helpers_c.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 641208 bytes .../site-packages/propcache/_helpers_c.pyx | 103 + .../site-packages/propcache/_helpers_py.py | 62 + .../python3.9/site-packages/propcache/api.py | 8 + .../site-packages/propcache/py.typed | 1 + .../py_vapid-1.9.4.dist-info/INSTALLER | 1 + .../py_vapid-1.9.4.dist-info/METADATA | 127 + .../py_vapid-1.9.4.dist-info/RECORD | 20 + .../py_vapid-1.9.4.dist-info/WHEEL | 5 + .../py_vapid-1.9.4.dist-info/entry_points.txt | 2 + .../py_vapid-1.9.4.dist-info/licenses/LICENSE | 373 + .../site-packages/py_vapid/__init__.py | 387 + .../site-packages/py_vapid/__main__.py | 137 + .../python3.9/site-packages/py_vapid/jwt.py | 87 + .../python3.9/site-packages/py_vapid/main.py | 115 + .../py_vapid/tests/.test_vapid.py.swp | Bin 0 -> 16384 bytes .../py_vapid/tests/test_vapid.py | 282 + .../python3.9/site-packages/py_vapid/utils.py | 39 + .../pycparser-2.23.dist-info/INSTALLER | 1 + .../pycparser-2.23.dist-info/LICENSE | 27 + .../pycparser-2.23.dist-info/METADATA | 28 + .../pycparser-2.23.dist-info/RECORD | 41 + .../pycparser-2.23.dist-info/WHEEL | 5 + .../pycparser-2.23.dist-info/top_level.txt | 1 + .../site-packages/pycparser/__init__.py | 93 + .../site-packages/pycparser/_ast_gen.py | 336 + .../site-packages/pycparser/_build_tables.py | 40 + .../site-packages/pycparser/_c_ast.cfg | 195 + .../site-packages/pycparser/ast_transforms.py | 164 + .../site-packages/pycparser/c_ast.py | 1125 ++ .../site-packages/pycparser/c_generator.py | 502 + .../site-packages/pycparser/c_lexer.py | 569 + .../site-packages/pycparser/c_parser.py | 1973 +++ .../site-packages/pycparser/lextab.py | 10 + .../site-packages/pycparser/ply/__init__.py | 5 + .../site-packages/pycparser/ply/cpp.py | 905 ++ .../site-packages/pycparser/ply/ctokens.py | 133 + .../site-packages/pycparser/ply/lex.py | 1099 ++ .../site-packages/pycparser/ply/yacc.py | 3494 ++++++ .../site-packages/pycparser/ply/ygen.py | 74 + .../site-packages/pycparser/plyparser.py | 133 + .../site-packages/pycparser/yacctab.py | 374 + .../INSTALLER | 1 + .../python_engineio-4.13.1.dist-info/METADATA | 52 + .../python_engineio-4.13.1.dist-info/RECORD | 58 + .../python_engineio-4.13.1.dist-info/WHEEL | 5 + .../licenses/LICENSE | 20 + .../top_level.txt | 1 + .../INSTALLER | 1 + .../python_socketio-5.16.1.dist-info/METADATA | 75 + .../python_socketio-5.16.1.dist-info/RECORD | 68 + .../python_socketio-5.16.1.dist-info/WHEEL | 5 + .../licenses/LICENSE | 20 + .../top_level.txt | 1 + .../pywebpush-2.1.2.dist-info/INSTALLER | 1 + .../pywebpush-2.1.2.dist-info/METADATA | 229 + .../pywebpush-2.1.2.dist-info/RECORD | 19 + .../pywebpush-2.1.2.dist-info/REQUESTED | 0 .../pywebpush-2.1.2.dist-info/WHEEL | 5 + .../entry_points.txt | 2 + .../licenses/LICENSE | 373 + .../pywebpush-2.1.2.dist-info/top_level.txt | 1 + .../site-packages/pywebpush/__init__.py | 726 ++ .../site-packages/pywebpush/__main__.py | 93 + .../python3.9/site-packages/pywebpush/foo.py | 51 + .../site-packages/pywebpush/tests/__init__.py | 0 .../pywebpush/tests/test_webpush.py | 617 + .../requests-2.32.5.dist-info/INSTALLER | 1 + .../requests-2.32.5.dist-info/METADATA | 133 + .../requests-2.32.5.dist-info/RECORD | 42 + .../requests-2.32.5.dist-info/WHEEL | 5 + .../licenses/LICENSE | 175 + .../requests-2.32.5.dist-info/top_level.txt | 1 + .../site-packages/requests/__init__.py | 184 + .../site-packages/requests/__version__.py | 14 + .../site-packages/requests/_internal_utils.py | 50 + .../site-packages/requests/adapters.py | 696 ++ .../python3.9/site-packages/requests/api.py | 157 + .../python3.9/site-packages/requests/auth.py | 314 + .../python3.9/site-packages/requests/certs.py | 17 + .../site-packages/requests/compat.py | 106 + .../site-packages/requests/cookies.py | 561 + .../site-packages/requests/exceptions.py | 151 + .../python3.9/site-packages/requests/help.py | 134 + .../python3.9/site-packages/requests/hooks.py | 33 + .../site-packages/requests/models.py | 1039 ++ .../site-packages/requests/packages.py | 23 + .../site-packages/requests/sessions.py | 831 ++ .../site-packages/requests/status_codes.py | 128 + .../site-packages/requests/structures.py | 99 + .../python3.9/site-packages/requests/utils.py | 1086 ++ .../setuptools-82.0.1.dist-info/INSTALLER | 1 + .../setuptools-82.0.1.dist-info/METADATA | 140 + .../setuptools-82.0.1.dist-info/RECORD | 760 ++ .../setuptools-82.0.1.dist-info/REQUESTED | 0 .../setuptools-82.0.1.dist-info/WHEEL | 5 + .../entry_points.txt | 51 + .../licenses/LICENSE | 17 + .../setuptools-82.0.1.dist-info/top_level.txt | 2 + .../site-packages/setuptools/__init__.py | 256 + .../setuptools/_core_metadata.py | 337 + .../site-packages/setuptools/_discovery.py | 33 + .../setuptools/_distutils/__init__.py | 14 + .../setuptools/_distutils/_log.py | 3 + .../setuptools/_distutils/_macos_compat.py | 12 + .../setuptools/_distutils/_modified.py | 95 + .../setuptools/_distutils/_msvccompiler.py | 16 + .../setuptools/_distutils/archive_util.py | 284 + .../setuptools/_distutils/ccompiler.py | 26 + .../setuptools/_distutils/cmd.py | 535 + .../setuptools/_distutils/command/__init__.py | 23 + .../_distutils/command/_framework_compat.py | 54 + .../setuptools/_distutils/command/bdist.py | 167 + .../_distutils/command/bdist_dumb.py | 141 + .../_distutils/command/bdist_rpm.py | 597 + .../setuptools/_distutils/command/build.py | 156 + .../_distutils/command/build_clib.py | 199 + .../_distutils/command/build_ext.py | 811 ++ .../setuptools/_distutils/command/build_py.py | 404 + .../_distutils/command/build_scripts.py | 150 + .../setuptools/_distutils/command/check.py | 152 + .../setuptools/_distutils/command/clean.py | 76 + .../setuptools/_distutils/command/config.py | 348 + .../setuptools/_distutils/command/install.py | 805 ++ .../_distutils/command/install_data.py | 94 + .../_distutils/command/install_egg_info.py | 90 + .../_distutils/command/install_headers.py | 46 + .../_distutils/command/install_lib.py | 236 + .../_distutils/command/install_scripts.py | 59 + .../setuptools/_distutils/command/sdist.py | 521 + .../setuptools/_distutils/compat/__init__.py | 18 + .../setuptools/_distutils/compat/numpy.py | 2 + .../setuptools/_distutils/compat/py39.py | 66 + .../setuptools/_distutils/compilers/C/base.py | 1386 +++ .../_distutils/compilers/C/cygwin.py | 340 + .../_distutils/compilers/C/errors.py | 24 + .../setuptools/_distutils/compilers/C/msvc.py | 614 + .../_distutils/compilers/C/tests/test_base.py | 83 + .../compilers/C/tests/test_cygwin.py | 76 + .../compilers/C/tests/test_mingw.py | 48 + .../_distutils/compilers/C/tests/test_msvc.py | 136 + .../_distutils/compilers/C/tests/test_unix.py | 413 + .../setuptools/_distutils/compilers/C/unix.py | 422 + .../setuptools/_distutils/compilers/C/zos.py | 230 + .../setuptools/_distutils/core.py | 289 + .../setuptools/_distutils/cygwinccompiler.py | 31 + .../setuptools/_distutils/debug.py | 5 + .../setuptools/_distutils/dep_util.py | 14 + .../setuptools/_distutils/dir_util.py | 232 + .../setuptools/_distutils/dist.py | 1384 +++ .../setuptools/_distutils/errors.py | 108 + .../setuptools/_distutils/extension.py | 258 + .../setuptools/_distutils/fancy_getopt.py | 471 + .../setuptools/_distutils/file_util.py | 228 + .../setuptools/_distutils/filelist.py | 431 + .../setuptools/_distutils/log.py | 56 + .../setuptools/_distutils/spawn.py | 130 + .../setuptools/_distutils/sysconfig.py | 598 + .../setuptools/_distutils/tests/__init__.py | 42 + .../_distutils/tests/compat/__init__.py | 0 .../_distutils/tests/compat/py39.py | 40 + .../setuptools/_distutils/tests/support.py | 134 + .../_distutils/tests/test_archive_util.py | 342 + .../setuptools/_distutils/tests/test_bdist.py | 47 + .../_distutils/tests/test_bdist_dumb.py | 78 + .../_distutils/tests/test_bdist_rpm.py | 127 + .../setuptools/_distutils/tests/test_build.py | 49 + .../_distutils/tests/test_build_clib.py | 134 + .../_distutils/tests/test_build_ext.py | 628 + .../_distutils/tests/test_build_py.py | 196 + .../_distutils/tests/test_build_scripts.py | 96 + .../setuptools/_distutils/tests/test_check.py | 194 + .../setuptools/_distutils/tests/test_clean.py | 45 + .../setuptools/_distutils/tests/test_cmd.py | 107 + .../_distutils/tests/test_config_cmd.py | 87 + .../setuptools/_distutils/tests/test_core.py | 130 + .../_distutils/tests/test_dir_util.py | 139 + .../setuptools/_distutils/tests/test_dist.py | 552 + .../_distutils/tests/test_extension.py | 117 + .../_distutils/tests/test_file_util.py | 95 + .../_distutils/tests/test_filelist.py | 336 + .../_distutils/tests/test_install.py | 245 + .../_distutils/tests/test_install_data.py | 74 + .../_distutils/tests/test_install_headers.py | 33 + .../_distutils/tests/test_install_lib.py | 110 + .../_distutils/tests/test_install_scripts.py | 52 + .../setuptools/_distutils/tests/test_log.py | 12 + .../_distutils/tests/test_modified.py | 126 + .../setuptools/_distutils/tests/test_sdist.py | 470 + .../setuptools/_distutils/tests/test_spawn.py | 141 + .../_distutils/tests/test_sysconfig.py | 319 + .../_distutils/tests/test_text_file.py | 127 + .../setuptools/_distutils/tests/test_util.py | 243 + .../_distutils/tests/test_version.py | 80 + .../_distutils/tests/test_versionpredicate.py | 0 .../_distutils/tests/unix_compat.py | 17 + .../setuptools/_distutils/text_file.py | 286 + .../setuptools/_distutils/unixccompiler.py | 9 + .../setuptools/_distutils/util.py | 506 + .../setuptools/_distutils/version.py | 348 + .../setuptools/_distutils/versionpredicate.py | 175 + .../setuptools/_distutils/zosccompiler.py | 3 + .../site-packages/setuptools/_entry_points.py | 94 + .../site-packages/setuptools/_imp.py | 87 + .../site-packages/setuptools/_importlib.py | 9 + .../site-packages/setuptools/_itertools.py | 23 + .../setuptools/_normalization.py | 180 + .../site-packages/setuptools/_path.py | 93 + .../site-packages/setuptools/_reqs.py | 42 + .../site-packages/setuptools/_scripts.py | 361 + .../site-packages/setuptools/_shutil.py | 59 + .../site-packages/setuptools/_static.py | 188 + .../site-packages/setuptools/_vendor/.lock | 0 .../autocommand-2.2.2.dist-info/INSTALLER | 1 + .../autocommand-2.2.2.dist-info/LICENSE | 166 + .../autocommand-2.2.2.dist-info/METADATA | 420 + .../autocommand-2.2.2.dist-info/RECORD | 13 + .../autocommand-2.2.2.dist-info/REQUESTED | 0 .../_vendor/autocommand-2.2.2.dist-info/WHEEL | 5 + .../autocommand-2.2.2.dist-info/top_level.txt | 1 + .../_vendor/autocommand/__init__.py | 27 + .../_vendor/autocommand/autoasync.py | 142 + .../_vendor/autocommand/autocommand.py | 70 + .../_vendor/autocommand/automain.py | 59 + .../_vendor/autocommand/autoparse.py | 333 + .../setuptools/_vendor/autocommand/errors.py | 23 + .../INSTALLER | 1 + .../backports.tarfile-1.2.0.dist-info/LICENSE | 17 + .../METADATA | 46 + .../backports.tarfile-1.2.0.dist-info/RECORD | 12 + .../REQUESTED | 0 .../backports.tarfile-1.2.0.dist-info/WHEEL | 5 + .../top_level.txt | 1 + .../setuptools/_vendor/backports/__init__.py | 1 + .../_vendor/backports/tarfile/__init__.py | 2937 +++++ .../_vendor/backports/tarfile/__main__.py | 5 + .../backports/tarfile/compat/__init__.py | 0 .../_vendor/backports/tarfile/compat/py38.py | 24 + .../INSTALLER | 1 + .../METADATA | 133 + .../importlib_metadata-8.7.1.dist-info/RECORD | 21 + .../REQUESTED | 0 .../importlib_metadata-8.7.1.dist-info/WHEEL | 5 + .../licenses/LICENSE | 73 + .../top_level.txt | 1 + .../_vendor/importlib_metadata/__init__.py | 1191 ++ .../_vendor/importlib_metadata/_adapters.py | 136 + .../importlib_metadata/_collections.py | 34 + .../_vendor/importlib_metadata/_compat.py | 56 + .../_vendor/importlib_metadata/_functools.py | 135 + .../_vendor/importlib_metadata/_itertools.py | 171 + .../_vendor/importlib_metadata/_meta.py | 71 + .../_vendor/importlib_metadata/_text.py | 99 + .../_vendor/importlib_metadata/_typing.py | 15 + .../importlib_metadata/compat/__init__.py | 0 .../importlib_metadata/compat/py311.py | 22 + .../_vendor/importlib_metadata/compat/py39.py | 42 + .../_vendor/importlib_metadata/diagnose.py | 21 + .../_vendor/importlib_metadata/py.typed | 0 .../jaraco.text-4.0.0.dist-info/INSTALLER | 1 + .../jaraco.text-4.0.0.dist-info/LICENSE | 17 + .../jaraco.text-4.0.0.dist-info/METADATA | 96 + .../jaraco.text-4.0.0.dist-info/RECORD | 14 + .../jaraco.text-4.0.0.dist-info/REQUESTED | 0 .../_vendor/jaraco.text-4.0.0.dist-info/WHEEL | 5 + .../jaraco.text-4.0.0.dist-info/top_level.txt | 1 + .../_vendor/jaraco/context/__init__.py | 367 + .../_vendor/jaraco/context/py.typed | 0 .../_vendor/jaraco/functools/__init__.py | 722 ++ .../_vendor/jaraco/functools/__init__.pyi | 123 + .../_vendor/jaraco/functools/py.typed | 0 .../_vendor/jaraco/text/Lorem ipsum.txt | 2 + .../_vendor/jaraco/text/__init__.py | 647 + .../setuptools/_vendor/jaraco/text/layouts.py | 25 + .../_vendor/jaraco/text/show-newlines.py | 32 + .../_vendor/jaraco/text/strip-prefix.py | 21 + .../_vendor/jaraco/text/to-dvorak.py | 5 + .../_vendor/jaraco/text/to-qwerty.py | 5 + .../jaraco_context-6.1.0.dist-info/INSTALLER | 1 + .../jaraco_context-6.1.0.dist-info/METADATA | 82 + .../jaraco_context-6.1.0.dist-info/RECORD | 9 + .../jaraco_context-6.1.0.dist-info/REQUESTED | 0 .../jaraco_context-6.1.0.dist-info/WHEEL | 5 + .../licenses/LICENSE | 18 + .../top_level.txt | 1 + .../INSTALLER | 1 + .../jaraco_functools-4.4.0.dist-info/METADATA | 69 + .../jaraco_functools-4.4.0.dist-info/RECORD | 10 + .../REQUESTED | 0 .../jaraco_functools-4.4.0.dist-info/WHEEL | 5 + .../licenses/LICENSE | 18 + .../top_level.txt | 1 + .../more_itertools-10.8.0.dist-info/INSTALLER | 1 + .../more_itertools-10.8.0.dist-info/METADATA | 283 + .../more_itertools-10.8.0.dist-info/RECORD | 13 + .../more_itertools-10.8.0.dist-info/REQUESTED | 0 .../more_itertools-10.8.0.dist-info/WHEEL | 4 + .../licenses/LICENSE | 19 + .../_vendor/more_itertools/__init__.py | 6 + .../_vendor/more_itertools/__init__.pyi | 2 + .../setuptools/_vendor/more_itertools/more.py | 5303 ++++++++ .../_vendor/more_itertools/more.pyi | 949 ++ .../_vendor/more_itertools/py.typed | 0 .../_vendor/more_itertools/recipes.py | 1471 +++ .../_vendor/more_itertools/recipes.pyi | 205 + .../packaging-26.0.dist-info/INSTALLER | 1 + .../_vendor/packaging-26.0.dist-info/METADATA | 107 + .../_vendor/packaging-26.0.dist-info/RECORD | 26 + .../packaging-26.0.dist-info/REQUESTED | 0 .../_vendor/packaging-26.0.dist-info/WHEEL | 4 + .../packaging-26.0.dist-info/licenses/LICENSE | 3 + .../licenses/LICENSE.APACHE | 177 + .../licenses/LICENSE.BSD | 23 + .../setuptools/_vendor/packaging/__init__.py | 15 + .../setuptools/_vendor/packaging/_elffile.py | 108 + .../_vendor/packaging/_manylinux.py | 262 + .../_vendor/packaging/_musllinux.py | 85 + .../setuptools/_vendor/packaging/_parser.py | 365 + .../_vendor/packaging/_structures.py | 69 + .../_vendor/packaging/_tokenizer.py | 193 + .../_vendor/packaging/licenses/__init__.py | 147 + .../_vendor/packaging/licenses/_spdx.py | 799 ++ .../setuptools/_vendor/packaging/markers.py | 388 + .../setuptools/_vendor/packaging/metadata.py | 978 ++ .../setuptools/_vendor/packaging/py.typed | 0 .../setuptools/_vendor/packaging/pylock.py | 635 + .../_vendor/packaging/requirements.py | 86 + .../_vendor/packaging/specifiers.py | 1068 ++ .../setuptools/_vendor/packaging/tags.py | 651 + .../setuptools/_vendor/packaging/utils.py | 158 + .../setuptools/_vendor/packaging/version.py | 792 ++ .../platformdirs-4.4.0.dist-info/INSTALLER | 1 + .../platformdirs-4.4.0.dist-info/METADATA | 350 + .../platformdirs-4.4.0.dist-info/RECORD | 15 + .../platformdirs-4.4.0.dist-info/REQUESTED | 0 .../platformdirs-4.4.0.dist-info/WHEEL | 4 + .../licenses/LICENSE | 21 + .../_vendor/platformdirs/__init__.py | 631 + .../_vendor/platformdirs/__main__.py | 55 + .../_vendor/platformdirs/android.py | 249 + .../setuptools/_vendor/platformdirs/api.py | 299 + .../setuptools/_vendor/platformdirs/macos.py | 146 + .../setuptools/_vendor/platformdirs/py.typed | 0 .../setuptools/_vendor/platformdirs/unix.py | 272 + .../_vendor/platformdirs/version.py | 34 + .../_vendor/platformdirs/windows.py | 272 + .../_vendor/tomli-2.4.0.dist-info/INSTALLER | 1 + .../_vendor/tomli-2.4.0.dist-info/METADATA | 270 + .../_vendor/tomli-2.4.0.dist-info/RECORD | 11 + .../_vendor/tomli-2.4.0.dist-info/REQUESTED | 0 .../_vendor/tomli-2.4.0.dist-info/WHEEL | 4 + .../tomli-2.4.0.dist-info/licenses/LICENSE | 21 + .../setuptools/_vendor/tomli/__init__.py | 8 + .../setuptools/_vendor/tomli/_parser.py | 782 ++ .../setuptools/_vendor/tomli/_re.py | 119 + .../setuptools/_vendor/tomli/_types.py | 10 + .../setuptools/_vendor/tomli/py.typed | 1 + .../_vendor/wheel-0.46.3.dist-info/INSTALLER | 1 + .../_vendor/wheel-0.46.3.dist-info/METADATA | 69 + .../_vendor/wheel-0.46.3.dist-info/RECORD | 22 + .../_vendor/wheel-0.46.3.dist-info/REQUESTED | 0 .../_vendor/wheel-0.46.3.dist-info/WHEEL | 4 + .../wheel-0.46.3.dist-info/entry_points.txt | 6 + .../licenses/LICENSE.txt | 21 + .../setuptools/_vendor/wheel/__init__.py | 3 + .../setuptools/_vendor/wheel/__main__.py | 25 + .../setuptools/_vendor/wheel/_bdist_wheel.py | 616 + .../_vendor/wheel/_commands/__init__.py | 153 + .../_vendor/wheel/_commands/convert.py | 337 + .../_vendor/wheel/_commands/pack.py | 84 + .../_vendor/wheel/_commands/tags.py | 140 + .../_vendor/wheel/_commands/unpack.py | 30 + .../setuptools/_vendor/wheel/_metadata.py | 184 + .../_vendor/wheel/_setuptools_logging.py | 26 + .../setuptools/_vendor/wheel/bdist_wheel.py | 26 + .../_vendor/wheel/macosx_libfile.py | 486 + .../setuptools/_vendor/wheel/metadata.py | 17 + .../setuptools/_vendor/wheel/wheelfile.py | 241 + .../_vendor/zipp-3.23.0.dist-info/INSTALLER | 1 + .../_vendor/zipp-3.23.0.dist-info/METADATA | 106 + .../_vendor/zipp-3.23.0.dist-info/RECORD | 14 + .../_vendor/zipp-3.23.0.dist-info/REQUESTED | 0 .../_vendor/zipp-3.23.0.dist-info/WHEEL | 5 + .../zipp-3.23.0.dist-info/licenses/LICENSE | 18 + .../zipp-3.23.0.dist-info/top_level.txt | 1 + .../setuptools/_vendor/zipp/__init__.py | 456 + .../setuptools/_vendor/zipp/_functools.py | 20 + .../_vendor/zipp/compat/__init__.py | 0 .../setuptools/_vendor/zipp/compat/overlay.py | 37 + .../setuptools/_vendor/zipp/compat/py310.py | 13 + .../setuptools/_vendor/zipp/compat/py313.py | 34 + .../setuptools/_vendor/zipp/glob.py | 116 + .../site-packages/setuptools/archive_util.py | 219 + .../site-packages/setuptools/build_meta.py | 556 + .../site-packages/setuptools/cli-32.exe | Bin 0 -> 11776 bytes .../site-packages/setuptools/cli-64.exe | Bin 0 -> 14336 bytes .../site-packages/setuptools/cli-arm64.exe | Bin 0 -> 13824 bytes .../site-packages/setuptools/cli.exe | Bin 0 -> 11776 bytes .../setuptools/command/__init__.py | 21 + .../setuptools/command/_requirestxt.py | 131 + .../site-packages/setuptools/command/alias.py | 77 + .../setuptools/command/bdist_egg.py | 471 + .../setuptools/command/bdist_rpm.py | 42 + .../setuptools/command/bdist_wheel.py | 603 + .../site-packages/setuptools/command/build.py | 135 + .../setuptools/command/build_clib.py | 103 + .../setuptools/command/build_ext.py | 470 + .../setuptools/command/build_py.py | 403 + .../setuptools/command/develop.py | 58 + .../setuptools/command/dist_info.py | 103 + .../setuptools/command/easy_install.py | 30 + .../setuptools/command/editable_wheel.py | 914 ++ .../setuptools/command/egg_info.py | 716 ++ .../setuptools/command/install.py | 131 + .../setuptools/command/install_egg_info.py | 57 + .../setuptools/command/install_lib.py | 137 + .../setuptools/command/install_scripts.py | 66 + .../setuptools/command/rotate.py | 64 + .../setuptools/command/saveopts.py | 21 + .../site-packages/setuptools/command/sdist.py | 218 + .../setuptools/command/setopt.py | 139 + .../site-packages/setuptools/command/test.py | 47 + .../setuptools/compat/__init__.py | 0 .../site-packages/setuptools/compat/py310.py | 20 + .../site-packages/setuptools/compat/py311.py | 27 + .../site-packages/setuptools/compat/py312.py | 13 + .../site-packages/setuptools/compat/py39.py | 9 + .../site-packages/setuptools/config/NOTICE | 10 + .../setuptools/config/__init__.py | 43 + .../setuptools/config/_apply_pyprojecttoml.py | 534 + .../config/_validate_pyproject/NOTICE | 438 + .../config/_validate_pyproject/__init__.py | 34 + .../_validate_pyproject/error_reporting.py | 338 + .../_validate_pyproject/extra_validations.py | 151 + .../fastjsonschema_exceptions.py | 51 + .../fastjsonschema_validations.py | 1453 +++ .../config/_validate_pyproject/formats.py | 464 + .../setuptools/config/distutils.schema.json | 26 + .../site-packages/setuptools/config/expand.py | 452 + .../setuptools/config/pyprojecttoml.py | 477 + .../setuptools/config/setupcfg.py | 782 ++ .../setuptools/config/setuptools.schema.json | 433 + .../site-packages/setuptools/depends.py | 185 + .../site-packages/setuptools/discovery.py | 614 + .../site-packages/setuptools/dist.py | 1124 ++ .../site-packages/setuptools/errors.py | 67 + .../site-packages/setuptools/extension.py | 179 + .../site-packages/setuptools/glob.py | 185 + .../site-packages/setuptools/gui-32.exe | Bin 0 -> 11776 bytes .../site-packages/setuptools/gui-64.exe | Bin 0 -> 14336 bytes .../site-packages/setuptools/gui-arm64.exe | Bin 0 -> 13824 bytes .../site-packages/setuptools/gui.exe | Bin 0 -> 11776 bytes .../site-packages/setuptools/installer.py | 155 + .../site-packages/setuptools/launch.py | 36 + .../setuptools/launcher manifest.xml | 15 + .../site-packages/setuptools/logging.py | 40 + .../site-packages/setuptools/modified.py | 18 + .../site-packages/setuptools/monkey.py | 126 + .../site-packages/setuptools/msvc.py | 1557 +++ .../site-packages/setuptools/namespaces.py | 101 + .../setuptools/script (dev).tmpl | 6 + .../site-packages/setuptools/script.tmpl | 3 + .../setuptools/tests/__init__.py | 13 + .../setuptools/tests/compat/__init__.py | 0 .../setuptools/tests/compat/py39.py | 3 + .../setuptools/tests/config/__init__.py | 0 .../tests/config/downloads/__init__.py | 59 + .../tests/config/downloads/preload.py | 18 + .../tests/config/setupcfg_examples.txt | 22 + .../tests/config/test_apply_pyprojecttoml.py | 794 ++ .../setuptools/tests/config/test_expand.py | 247 + .../tests/config/test_pyprojecttoml.py | 421 + .../config/test_pyprojecttoml_dynamic_deps.py | 111 + .../setuptools/tests/config/test_setupcfg.py | 987 ++ .../setuptools/tests/contexts.py | 131 + .../setuptools/tests/environment.py | 95 + .../setuptools/tests/fixtures.py | 406 + .../indexes/test_links_priority/external.html | 3 + .../simple/foobar/index.html | 4 + .../setuptools/tests/integration/__init__.py | 0 .../setuptools/tests/integration/helpers.py | 80 + .../setuptools/tests/integration/test_pbr.py | 20 + .../integration/test_pip_install_sdist.py | 223 + .../setuptools/tests/mod_with_constant.py | 1 + .../setuptools/tests/namespaces.py | 90 + .../setuptools/tests/script-with-bom.py | 1 + .../setuptools/tests/test_archive_util.py | 36 + .../tests/test_bdist_deprecations.py | 28 + .../setuptools/tests/test_bdist_egg.py | 73 + .../setuptools/tests/test_bdist_wheel.py | 708 ++ .../setuptools/tests/test_build.py | 33 + .../setuptools/tests/test_build_clib.py | 84 + .../setuptools/tests/test_build_ext.py | 293 + .../setuptools/tests/test_build_meta.py | 959 ++ .../setuptools/tests/test_build_py.py | 480 + .../setuptools/tests/test_config_discovery.py | 647 + .../setuptools/tests/test_core_metadata.py | 550 + .../setuptools/tests/test_depends.py | 15 + .../setuptools/tests/test_develop.py | 113 + .../setuptools/tests/test_dist.py | 280 + .../setuptools/tests/test_dist_info.py | 147 + .../tests/test_distutils_adoption.py | 198 + .../setuptools/tests/test_editable_install.py | 1261 ++ .../setuptools/tests/test_egg_info.py | 1306 ++ .../setuptools/tests/test_extern.py | 15 + .../setuptools/tests/test_find_packages.py | 218 + .../setuptools/tests/test_find_py_modules.py | 73 + .../setuptools/tests/test_glob.py | 45 + .../setuptools/tests/test_install_scripts.py | 89 + .../setuptools/tests/test_logging.py | 76 + .../setuptools/tests/test_manifest.py | 622 + .../setuptools/tests/test_namespaces.py | 79 + .../setuptools/tests/test_scripts.py | 12 + .../setuptools/tests/test_sdist.py | 980 ++ .../setuptools/tests/test_setopt.py | 40 + .../setuptools/tests/test_setuptools.py | 294 + .../setuptools/tests/test_shutil_wrapper.py | 23 + .../setuptools/tests/test_unicode_utils.py | 10 + .../setuptools/tests/test_virtualenv.py | 113 + .../setuptools/tests/test_warnings.py | 106 + .../setuptools/tests/test_wheel.py | 690 + .../setuptools/tests/test_windows_wrappers.py | 258 + .../site-packages/setuptools/tests/text.py | 4 + .../setuptools/tests/textwrap.py | 6 + .../site-packages/setuptools/unicode_utils.py | 102 + .../site-packages/setuptools/version.py | 6 + .../site-packages/setuptools/warnings.py | 110 + .../site-packages/setuptools/wheel.py | 262 + .../setuptools/windows_support.py | 30 + .../INSTALLER | 1 + .../simple_websocket-1.1.0.dist-info/LICENSE | 21 + .../simple_websocket-1.1.0.dist-info/METADATA | 37 + .../simple_websocket-1.1.0.dist-info/RECORD | 16 + .../simple_websocket-1.1.0.dist-info/WHEEL | 5 + .../top_level.txt | 1 + .../simple_websocket/__init__.py | 3 + .../site-packages/simple_websocket/aiows.py | 467 + .../site-packages/simple_websocket/asgi.py | 50 + .../site-packages/simple_websocket/errors.py | 20 + .../site-packages/simple_websocket/ws.py | 488 + .../six-1.17.0.dist-info/INSTALLER | 1 + .../six-1.17.0.dist-info/LICENSE | 18 + .../six-1.17.0.dist-info/METADATA | 43 + .../site-packages/six-1.17.0.dist-info/RECORD | 8 + .../site-packages/six-1.17.0.dist-info/WHEEL | 6 + .../six-1.17.0.dist-info/top_level.txt | 1 + venv/lib/python3.9/site-packages/six.py | 1003 ++ .../site-packages/socketio/__init__.py | 28 + .../python3.9/site-packages/socketio/admin.py | 397 + .../python3.9/site-packages/socketio/asgi.py | 47 + .../site-packages/socketio/async_admin.py | 388 + .../socketio/async_aiopika_manager.py | 136 + .../site-packages/socketio/async_client.py | 610 + .../site-packages/socketio/async_manager.py | 121 + .../site-packages/socketio/async_namespace.py | 288 + .../socketio/async_pubsub_manager.py | 269 + .../socketio/async_redis_manager.py | 175 + .../site-packages/socketio/async_server.py | 719 ++ .../socketio/async_simple_client.py | 214 + .../site-packages/socketio/base_client.py | 296 + .../site-packages/socketio/base_manager.py | 170 + .../site-packages/socketio/base_namespace.py | 33 + .../site-packages/socketio/base_server.py | 266 + .../site-packages/socketio/client.py | 560 + .../site-packages/socketio/exceptions.py | 38 + .../site-packages/socketio/kafka_manager.py | 75 + .../site-packages/socketio/kombu_manager.py | 144 + .../site-packages/socketio/manager.py | 93 + .../site-packages/socketio/middleware.py | 40 + .../site-packages/socketio/msgpack_packet.py | 44 + .../site-packages/socketio/namespace.py | 212 + .../site-packages/socketio/packet.py | 194 + .../site-packages/socketio/pubsub_manager.py | 259 + .../site-packages/socketio/redis_manager.py | 208 + .../site-packages/socketio/server.py | 680 + .../site-packages/socketio/simple_client.py | 196 + .../site-packages/socketio/tornado.py | 9 + .../site-packages/socketio/zmq_manager.py | 113 + .../INSTALLER | 1 + .../METADATA | 72 + .../typing_extensions-4.15.0.dist-info/RECORD | 7 + .../typing_extensions-4.15.0.dist-info/WHEEL | 4 + .../licenses/LICENSE | 279 + .../site-packages/typing_extensions.py | 4317 +++++++ .../urllib3-2.6.3.dist-info/INSTALLER | 1 + .../urllib3-2.6.3.dist-info/METADATA | 164 + .../urllib3-2.6.3.dist-info/RECORD | 79 + .../urllib3-2.6.3.dist-info/WHEEL | 4 + .../licenses/LICENSE.txt | 21 + .../site-packages/urllib3/__init__.py | 211 + .../site-packages/urllib3/_base_connection.py | 165 + .../site-packages/urllib3/_collections.py | 487 + .../site-packages/urllib3/_request_methods.py | 278 + .../site-packages/urllib3/_version.py | 34 + .../site-packages/urllib3/connection.py | 1099 ++ .../site-packages/urllib3/connectionpool.py | 1178 ++ .../site-packages/urllib3/contrib/__init__.py | 0 .../urllib3/contrib/emscripten/__init__.py | 17 + .../urllib3/contrib/emscripten/connection.py | 260 + .../emscripten/emscripten_fetch_worker.js | 110 + .../urllib3/contrib/emscripten/fetch.py | 726 ++ .../urllib3/contrib/emscripten/request.py | 22 + .../urllib3/contrib/emscripten/response.py | 277 + .../urllib3/contrib/pyopenssl.py | 564 + .../site-packages/urllib3/contrib/socks.py | 228 + .../site-packages/urllib3/exceptions.py | 335 + .../python3.9/site-packages/urllib3/fields.py | 341 + .../site-packages/urllib3/filepost.py | 89 + .../site-packages/urllib3/http2/__init__.py | 53 + .../site-packages/urllib3/http2/connection.py | 356 + .../site-packages/urllib3/http2/probe.py | 87 + .../site-packages/urllib3/poolmanager.py | 651 + .../python3.9/site-packages/urllib3/py.typed | 2 + .../site-packages/urllib3/response.py | 1480 +++ .../site-packages/urllib3/util/__init__.py | 42 + .../site-packages/urllib3/util/connection.py | 137 + .../site-packages/urllib3/util/proxy.py | 43 + .../site-packages/urllib3/util/request.py | 263 + .../site-packages/urllib3/util/response.py | 101 + .../site-packages/urllib3/util/retry.py | 549 + .../site-packages/urllib3/util/ssl_.py | 527 + .../urllib3/util/ssl_match_hostname.py | 159 + .../urllib3/util/ssltransport.py | 271 + .../site-packages/urllib3/util/timeout.py | 275 + .../site-packages/urllib3/util/url.py | 469 + .../site-packages/urllib3/util/util.py | 42 + .../site-packages/urllib3/util/wait.py | 124 + .../werkzeug-3.1.8.dist-info/INSTALLER | 1 + .../werkzeug-3.1.8.dist-info/METADATA | 109 + .../werkzeug-3.1.8.dist-info/RECORD | 117 + .../werkzeug-3.1.8.dist-info/REQUESTED | 0 .../werkzeug-3.1.8.dist-info/WHEEL | 4 + .../licenses/LICENSE.txt | 28 + .../site-packages/werkzeug/__init__.py | 4 + .../site-packages/werkzeug/_internal.py | 211 + .../site-packages/werkzeug/_reloader.py | 465 + .../werkzeug/datastructures/__init__.py | 64 + .../werkzeug/datastructures/accept.py | 350 + .../werkzeug/datastructures/auth.py | 320 + .../werkzeug/datastructures/cache_control.py | 273 + .../werkzeug/datastructures/csp.py | 100 + .../werkzeug/datastructures/etag.py | 106 + .../werkzeug/datastructures/file_storage.py | 209 + .../werkzeug/datastructures/headers.py | 662 + .../werkzeug/datastructures/mixins.py | 317 + .../werkzeug/datastructures/range.py | 214 + .../werkzeug/datastructures/structures.py | 1239 ++ .../site-packages/werkzeug/debug/__init__.py | 574 + .../site-packages/werkzeug/debug/console.py | 219 + .../site-packages/werkzeug/debug/repr.py | 282 + .../werkzeug/debug/shared/ICON_LICENSE.md | 6 + .../werkzeug/debug/shared/console.png | Bin 0 -> 507 bytes .../werkzeug/debug/shared/debugger.js | 344 + .../werkzeug/debug/shared/less.png | Bin 0 -> 191 bytes .../werkzeug/debug/shared/more.png | Bin 0 -> 200 bytes .../werkzeug/debug/shared/style.css | 150 + .../site-packages/werkzeug/debug/tbtools.py | 449 + .../site-packages/werkzeug/exceptions.py | 905 ++ .../site-packages/werkzeug/formparser.py | 430 + .../python3.9/site-packages/werkzeug/http.py | 1443 +++ .../python3.9/site-packages/werkzeug/local.py | 653 + .../werkzeug/middleware/__init__.py | 0 .../werkzeug/middleware/dispatcher.py | 81 + .../werkzeug/middleware/http_proxy.py | 236 + .../site-packages/werkzeug/middleware/lint.py | 439 + .../werkzeug/middleware/profiler.py | 155 + .../werkzeug/middleware/proxy_fix.py | 183 + .../werkzeug/middleware/shared_data.py | 283 + .../python3.9/site-packages/werkzeug/py.typed | 0 .../werkzeug/routing/__init__.py | 134 + .../werkzeug/routing/converters.py | 261 + .../werkzeug/routing/exceptions.py | 152 + .../site-packages/werkzeug/routing/map.py | 928 ++ .../site-packages/werkzeug/routing/matcher.py | 202 + .../site-packages/werkzeug/routing/rules.py | 927 ++ .../site-packages/werkzeug/sansio/__init__.py | 0 .../site-packages/werkzeug/sansio/http.py | 170 + .../werkzeug/sansio/multipart.py | 331 + .../site-packages/werkzeug/sansio/request.py | 536 + .../site-packages/werkzeug/sansio/response.py | 763 ++ .../site-packages/werkzeug/sansio/utils.py | 224 + .../site-packages/werkzeug/security.py | 201 + .../site-packages/werkzeug/serving.py | 1126 ++ .../python3.9/site-packages/werkzeug/test.py | 1464 +++ .../site-packages/werkzeug/testapp.py | 194 + .../python3.9/site-packages/werkzeug/urls.py | 203 + .../site-packages/werkzeug/user_agent.py | 47 + .../python3.9/site-packages/werkzeug/utils.py | 684 + .../werkzeug/wrappers/__init__.py | 3 + .../werkzeug/wrappers/request.py | 650 + .../werkzeug/wrappers/response.py | 838 ++ .../python3.9/site-packages/werkzeug/wsgi.py | 609 + .../wheel-0.47.0.dist-info/INSTALLER | 1 + .../wheel-0.47.0.dist-info/METADATA | 66 + .../wheel-0.47.0.dist-info/RECORD | 38 + .../wheel-0.47.0.dist-info/REQUESTED | 0 .../wheel-0.47.0.dist-info/WHEEL | 4 + .../wheel-0.47.0.dist-info/entry_points.txt | 6 + .../licenses/LICENSE.txt | 21 + .../python3.9/site-packages/wheel/__init__.py | 3 + .../python3.9/site-packages/wheel/__main__.py | 25 + .../site-packages/wheel/_bdist_wheel.py | 616 + .../site-packages/wheel/_commands/__init__.py | 169 + .../site-packages/wheel/_commands/convert.py | 337 + .../site-packages/wheel/_commands/info.py | 124 + .../site-packages/wheel/_commands/pack.py | 84 + .../site-packages/wheel/_commands/tags.py | 140 + .../site-packages/wheel/_commands/unpack.py | 30 + .../site-packages/wheel/_metadata.py | 184 + .../wheel/_setuptools_logging.py | 26 + .../site-packages/wheel/bdist_wheel.py | 26 + .../site-packages/wheel/macosx_libfile.py | 486 + .../python3.9/site-packages/wheel/metadata.py | 17 + .../site-packages/wheel/wheelfile.py | 252 + .../wsproto-1.2.0.dist-info/INSTALLER | 1 + .../wsproto-1.2.0.dist-info/LICENSE | 21 + .../wsproto-1.2.0.dist-info/METADATA | 177 + .../wsproto-1.2.0.dist-info/RECORD | 23 + .../wsproto-1.2.0.dist-info/WHEEL | 5 + .../wsproto-1.2.0.dist-info/top_level.txt | 1 + .../site-packages/wsproto/__init__.py | 94 + .../site-packages/wsproto/connection.py | 189 + .../python3.9/site-packages/wsproto/events.py | 295 + .../site-packages/wsproto/extensions.py | 315 + .../site-packages/wsproto/frame_protocol.py | 673 + .../site-packages/wsproto/handshake.py | 491 + .../python3.9/site-packages/wsproto/py.typed | 1 + .../python3.9/site-packages/wsproto/typing.py | 3 + .../site-packages/wsproto/utilities.py | 88 + .../yarl-1.22.0.dist-info/INSTALLER | 1 + .../yarl-1.22.0.dist-info/METADATA | 2478 ++++ .../yarl-1.22.0.dist-info/RECORD | 26 + .../site-packages/yarl-1.22.0.dist-info/WHEEL | 7 + .../yarl-1.22.0.dist-info/licenses/LICENSE | 202 + .../yarl-1.22.0.dist-info/licenses/NOTICE | 13 + .../yarl-1.22.0.dist-info/top_level.txt | 1 + .../python3.9/site-packages/yarl/__init__.py | 14 + .../python3.9/site-packages/yarl/_parse.py | 203 + .../lib/python3.9/site-packages/yarl/_path.py | 41 + .../python3.9/site-packages/yarl/_query.py | 121 + .../python3.9/site-packages/yarl/_quoters.py | 33 + .../python3.9/site-packages/yarl/_quoting.py | 19 + .../_quoting_c.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 1027328 bytes .../site-packages/yarl/_quoting_c.pyx | 451 + .../site-packages/yarl/_quoting_py.py | 213 + venv/lib/python3.9/site-packages/yarl/_url.py | 1622 +++ .../lib/python3.9/site-packages/yarl/py.typed | 1 + .../zipp-3.23.1.dist-info/INSTALLER | 1 + .../zipp-3.23.1.dist-info/METADATA | 108 + .../zipp-3.23.1.dist-info/RECORD | 20 + .../site-packages/zipp-3.23.1.dist-info/WHEEL | 5 + .../zipp-3.23.1.dist-info/licenses/LICENSE | 18 + .../zipp-3.23.1.dist-info/top_level.txt | 1 + .../python3.9/site-packages/zipp/__init__.py | 457 + .../site-packages/zipp/_functools.py | 31 + .../site-packages/zipp/compat/__init__.py | 0 .../site-packages/zipp/compat/overlay.py | 37 + .../site-packages/zipp/compat/py310.py | 13 + .../site-packages/zipp/compat/py313.py | 34 + venv/lib/python3.9/site-packages/zipp/glob.py | 116 + .../site-packages/zope/event/__init__.py | 33 + .../site-packages/zope/event/classhandler.py | 76 + .../site-packages/zope/event/tests.py | 64 + .../site-packages/zope/interface/__init__.py | 90 + .../site-packages/zope/interface/_compat.py | 139 + .../site-packages/zope/interface/_flatten.py | 36 + .../_zope_interface_coptimizations.c | 2669 ++++ ...timizations.cpython-39-x86_64-linux-gnu.so | Bin 0 -> 183584 bytes .../site-packages/zope/interface/adapter.py | 1048 ++ .../site-packages/zope/interface/advice.py | 121 + .../zope/interface/common/__init__.py | 291 + .../zope/interface/common/builtins.py | 124 + .../zope/interface/common/collections.py | 269 + .../zope/interface/common/idatetime.py | 622 + .../zope/interface/common/interfaces.py | 281 + .../site-packages/zope/interface/common/io.py | 44 + .../zope/interface/common/mapping.py | 177 + .../zope/interface/common/numbers.py | 65 + .../zope/interface/common/sequence.py | 195 + .../zope/interface/common/tests/__init__.py | 146 + .../interface/common/tests/basemapping.py | 115 + .../interface/common/tests/test_builtins.py | 50 + .../common/tests/test_collections.py | 143 + .../interface/common/tests/test_idatetime.py | 48 + .../common/tests/test_import_interfaces.py | 21 + .../zope/interface/common/tests/test_io.py | 46 + .../interface/common/tests/test_numbers.py | 42 + .../zope/interface/declarations.py | 1219 ++ .../site-packages/zope/interface/document.py | 133 + .../zope/interface/exceptions.py | 278 + .../site-packages/zope/interface/interface.py | 1185 ++ .../zope/interface/interfaces.py | 1516 +++ .../site-packages/zope/interface/registry.py | 750 ++ .../site-packages/zope/interface/ro.py | 722 ++ .../zope/interface/tests/__init__.py | 130 + .../zope/interface/tests/advisory_testing.py | 29 + .../zope/interface/tests/dummy.py | 25 + .../zope/interface/tests/idummy.py | 24 + .../site-packages/zope/interface/tests/m1.py | 28 + .../site-packages/zope/interface/tests/odd.py | 130 + .../zope/interface/tests/test_adapter.py | 2315 ++++ .../zope/interface/tests/test_advice.py | 217 + .../interface/tests/test_compile_flags.py | 29 + .../zope/interface/tests/test_declarations.py | 2620 ++++ .../zope/interface/tests/test_document.py | 547 + .../zope/interface/tests/test_element.py | 33 + .../zope/interface/tests/test_exceptions.py | 193 + .../zope/interface/tests/test_interface.py | 2873 +++++ .../zope/interface/tests/test_interfaces.py | 130 + .../interface/tests/test_odd_declarations.py | 301 + .../zope/interface/tests/test_registry.py | 3391 +++++ .../zope/interface/tests/test_ro.py | 506 + .../zope/interface/tests/test_sorting.py | 86 + .../zope/interface/tests/test_verify.py | 656 + .../site-packages/zope/interface/verify.py | 209 + .../zope_event-6.0.dist-info/INSTALLER | 1 + .../zope_event-6.0.dist-info/METADATA | 220 + .../zope_event-6.0.dist-info/RECORD | 12 + .../zope_event-6.0.dist-info/WHEEL | 5 + .../licenses/LICENSE.txt | 44 + .../zope_event-6.0.dist-info/top_level.txt | 1 + .../zope_interface-8.0.1.dist-info/INSTALLER | 1 + .../zope_interface-8.0.1.dist-info/METADATA | 1253 ++ .../zope_interface-8.0.1.dist-info/RECORD | 108 + .../zope_interface-8.0.1.dist-info/WHEEL | 8 + .../licenses/LICENSE.txt | 44 + .../top_level.txt | 1 + venv/lib64 | 1 + venv/pyvenv.cfg | 3 + .../CacheControl-0.12.6-py2.py3-none-any.whl | Bin 0 -> 23441 bytes .../appdirs-1.4.4-py2.py3-none-any.whl | Bin 0 -> 14285 bytes .../certifi-2020.6.20-py2.py3-none-any.whl | Bin 0 -> 161344 bytes .../chardet-4.0.0-py2.py3-none-any.whl | Bin 0 -> 174749 bytes .../colorama-0.4.4-py2.py3-none-any.whl | Bin 0 -> 20722 bytes ...ntextlib2-0.6.0.post1-py2.py3-none-any.whl | Bin 0 -> 12692 bytes .../distlib-0.3.1-py2.py3-none-any.whl | Bin 0 -> 147633 bytes .../distro-1.5.0-py2.py3-none-any.whl | Bin 0 -> 19426 bytes .../html5lib-1.1-py2.py3-none-any.whl | Bin 0 -> 116071 bytes .../idna-2.10-py2.py3-none-any.whl | Bin 0 -> 68313 bytes .../ipaddr-2.2.0-py2.py3-none-any.whl | Bin 0 -> 19706 bytes .../msgpack-1.0.0-py2.py3-none-any.whl | Bin 0 -> 75866 bytes .../packaging-20.9-py2.py3-none-any.whl | Bin 0 -> 41435 bytes .../pep517-0.9.1-py2.py3-none-any.whl | Bin 0 -> 22249 bytes .../pip-20.3.4-py2.py3-none-any.whl | Bin 0 -> 311315 bytes .../pkg_resources-0.0.0-py2.py3-none-any.whl | Bin 0 -> 122731 bytes .../progress-1.5-py2.py3-none-any.whl | Bin 0 -> 12965 bytes .../pyparsing-2.4.7-py2.py3-none-any.whl | Bin 0 -> 72626 bytes .../requests-2.25.1-py2.py3-none-any.whl | Bin 0 -> 62975 bytes .../resolvelib-0.5.4-py2.py3-none-any.whl | Bin 0 -> 17707 bytes .../retrying-1.3.3-py2.py3-none-any.whl | Bin 0 -> 11776 bytes .../setuptools-44.1.1-py2.py3-none-any.whl | Bin 0 -> 473123 bytes .../six-1.16.0-py2.py3-none-any.whl | Bin 0 -> 15791 bytes .../toml-0.10.1-py2.py3-none-any.whl | Bin 0 -> 21108 bytes .../urllib3-1.26.5-py2.py3-none-any.whl | Bin 0 -> 134567 bytes .../webencodings-0.5.1-py2.py3-none-any.whl | Bin 0 -> 15904 bytes .../wheel-0.34.2-py2.py3-none-any.whl | Bin 0 -> 31030 bytes 2478 files changed, 602241 insertions(+), 1 deletion(-) create mode 100644 venv/bin/Activate.ps1 create mode 100644 venv/bin/activate create mode 100644 venv/bin/activate.csh create mode 100644 venv/bin/activate.fish create mode 100755 venv/bin/flask create mode 100755 venv/bin/gunicorn create mode 100755 venv/bin/normalizer create mode 100755 venv/bin/pip create mode 100755 venv/bin/pip3 create mode 100755 venv/bin/pip3.9 create mode 120000 venv/bin/python create mode 120000 venv/bin/python3 create mode 120000 venv/bin/python3.9 create mode 100755 venv/bin/pywebpush create mode 100755 venv/bin/vapid create mode 100755 venv/bin/wheel create mode 100644 venv/include/site/python3.9/greenlet/greenlet.h create mode 100755 venv/lib/python3.9/site-packages/81d243bd2c585b0f4821__mypyc.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/_cffi_backend.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/_distutils_hack/__init__.py create mode 100644 venv/lib/python3.9/site-packages/_distutils_hack/override.py create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs/__init__.py create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs/_staggered.py create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs/impl.py create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs/py.typed create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs/types.py create mode 100644 venv/lib/python3.9/site-packages/aiohappyeyeballs/utils.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/licenses/vendor/llhttp/LICENSE create mode 100644 venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/aiohttp/.hash/_cparser.pxd.hash create mode 100644 venv/lib/python3.9/site-packages/aiohttp/.hash/_find_header.pxd.hash create mode 100644 venv/lib/python3.9/site-packages/aiohttp/.hash/_http_parser.pyx.hash create mode 100644 venv/lib/python3.9/site-packages/aiohttp/.hash/_http_writer.pyx.hash create mode 100644 venv/lib/python3.9/site-packages/aiohttp/.hash/hdrs.py.hash create mode 100644 venv/lib/python3.9/site-packages/aiohttp/__init__.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_cookie_helpers.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_cparser.pxd create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_find_header.pxd create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_headers.pxi create mode 100755 venv/lib/python3.9/site-packages/aiohttp/_http_parser.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_http_parser.pyx create mode 100755 venv/lib/python3.9/site-packages/aiohttp/_http_writer.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_http_writer.pyx create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/mask.pxd.hash create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/mask.pyx.hash create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/reader_c.pxd.hash create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/__init__.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/helpers.py create mode 100755 venv/lib/python3.9/site-packages/aiohttp/_websocket/mask.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/mask.pxd create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/mask.pyx create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/models.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/reader.py create mode 100755 venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.pxd create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_py.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/_websocket/writer.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/abc.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/base_protocol.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/client.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/client_exceptions.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/client_middleware_digest_auth.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/client_middlewares.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/client_proto.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/client_reqrep.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/client_ws.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/compression_utils.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/connector.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/cookiejar.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/formdata.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/hdrs.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/helpers.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/http.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/http_exceptions.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/http_parser.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/http_websocket.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/http_writer.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/log.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/multipart.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/payload.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/payload_streamer.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/py.typed create mode 100644 venv/lib/python3.9/site-packages/aiohttp/pytest_plugin.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/resolver.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/streams.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/tcp_helpers.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/test_utils.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/tracing.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/typedefs.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_app.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_exceptions.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_fileresponse.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_log.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_middlewares.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_protocol.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_request.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_response.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_routedef.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_runner.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_server.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_urldispatcher.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/web_ws.py create mode 100644 venv/lib/python3.9/site-packages/aiohttp/worker.py create mode 100644 venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/aiosignal/__init__.py create mode 100644 venv/lib/python3.9/site-packages/aiosignal/py.typed create mode 100644 venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/zip-safe create mode 100644 venv/lib/python3.9/site-packages/async_timeout/__init__.py create mode 100644 venv/lib/python3.9/site-packages/async_timeout/py.typed create mode 100644 venv/lib/python3.9/site-packages/attr/__init__.py create mode 100644 venv/lib/python3.9/site-packages/attr/__init__.pyi create mode 100644 venv/lib/python3.9/site-packages/attr/_cmp.py create mode 100644 venv/lib/python3.9/site-packages/attr/_cmp.pyi create mode 100644 venv/lib/python3.9/site-packages/attr/_compat.py create mode 100644 venv/lib/python3.9/site-packages/attr/_config.py create mode 100644 venv/lib/python3.9/site-packages/attr/_funcs.py create mode 100644 venv/lib/python3.9/site-packages/attr/_make.py create mode 100644 venv/lib/python3.9/site-packages/attr/_next_gen.py create mode 100644 venv/lib/python3.9/site-packages/attr/_typing_compat.pyi create mode 100644 venv/lib/python3.9/site-packages/attr/_version_info.py create mode 100644 venv/lib/python3.9/site-packages/attr/_version_info.pyi create mode 100644 venv/lib/python3.9/site-packages/attr/converters.py create mode 100644 venv/lib/python3.9/site-packages/attr/converters.pyi create mode 100644 venv/lib/python3.9/site-packages/attr/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/attr/exceptions.pyi create mode 100644 venv/lib/python3.9/site-packages/attr/filters.py create mode 100644 venv/lib/python3.9/site-packages/attr/filters.pyi create mode 100644 venv/lib/python3.9/site-packages/attr/py.typed create mode 100644 venv/lib/python3.9/site-packages/attr/setters.py create mode 100644 venv/lib/python3.9/site-packages/attr/setters.pyi create mode 100644 venv/lib/python3.9/site-packages/attr/validators.py create mode 100644 venv/lib/python3.9/site-packages/attr/validators.pyi create mode 100644 venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/attrs/__init__.py create mode 100644 venv/lib/python3.9/site-packages/attrs/__init__.pyi create mode 100644 venv/lib/python3.9/site-packages/attrs/converters.py create mode 100644 venv/lib/python3.9/site-packages/attrs/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/attrs/filters.py create mode 100644 venv/lib/python3.9/site-packages/attrs/py.typed create mode 100644 venv/lib/python3.9/site-packages/attrs/setters.py create mode 100644 venv/lib/python3.9/site-packages/attrs/validators.py create mode 100644 venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/bidict/__init__.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_abc.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_base.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_bidict.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_dup.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_exc.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_frozen.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_iter.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_orderedbase.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_orderedbidict.py create mode 100644 venv/lib/python3.9/site-packages/bidict/_typing.py create mode 100644 venv/lib/python3.9/site-packages/bidict/metadata.py create mode 100644 venv/lib/python3.9/site-packages/bidict/py.typed create mode 100644 venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/blinker/__init__.py create mode 100644 venv/lib/python3.9/site-packages/blinker/_utilities.py create mode 100644 venv/lib/python3.9/site-packages/blinker/base.py create mode 100644 venv/lib/python3.9/site-packages/blinker/py.typed create mode 100644 venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/certifi/__init__.py create mode 100644 venv/lib/python3.9/site-packages/certifi/__main__.py create mode 100644 venv/lib/python3.9/site-packages/certifi/cacert.pem create mode 100644 venv/lib/python3.9/site-packages/certifi/core.py create mode 100644 venv/lib/python3.9/site-packages/certifi/py.typed create mode 100644 venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/licenses/AUTHORS create mode 100644 venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/cffi/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cffi/_cffi_errors.h create mode 100644 venv/lib/python3.9/site-packages/cffi/_cffi_include.h create mode 100644 venv/lib/python3.9/site-packages/cffi/_embedding.h create mode 100644 venv/lib/python3.9/site-packages/cffi/_imp_emulation.py create mode 100644 venv/lib/python3.9/site-packages/cffi/_shimmed_dist_utils.py create mode 100644 venv/lib/python3.9/site-packages/cffi/api.py create mode 100644 venv/lib/python3.9/site-packages/cffi/backend_ctypes.py create mode 100644 venv/lib/python3.9/site-packages/cffi/cffi_opcode.py create mode 100644 venv/lib/python3.9/site-packages/cffi/commontypes.py create mode 100644 venv/lib/python3.9/site-packages/cffi/cparser.py create mode 100644 venv/lib/python3.9/site-packages/cffi/error.py create mode 100644 venv/lib/python3.9/site-packages/cffi/ffiplatform.py create mode 100644 venv/lib/python3.9/site-packages/cffi/lock.py create mode 100644 venv/lib/python3.9/site-packages/cffi/model.py create mode 100644 venv/lib/python3.9/site-packages/cffi/parse_c_type.h create mode 100644 venv/lib/python3.9/site-packages/cffi/pkgconfig.py create mode 100644 venv/lib/python3.9/site-packages/cffi/recompiler.py create mode 100644 venv/lib/python3.9/site-packages/cffi/setuptools_ext.py create mode 100644 venv/lib/python3.9/site-packages/cffi/vengine_cpy.py create mode 100644 venv/lib/python3.9/site-packages/cffi/vengine_gen.py create mode 100644 venv/lib/python3.9/site-packages/cffi/verifier.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/__init__.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/__main__.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/api.py create mode 100755 venv/lib/python3.9/site-packages/charset_normalizer/cd.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/cd.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/cli/__init__.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/cli/__main__.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/constant.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/legacy.py create mode 100755 venv/lib/python3.9/site-packages/charset_normalizer/md.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/md.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/models.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/py.typed create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/utils.py create mode 100644 venv/lib/python3.9/site-packages/charset_normalizer/version.py create mode 100644 venv/lib/python3.9/site-packages/click-8.1.8.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/click-8.1.8.dist-info/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/click-8.1.8.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/click-8.1.8.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/click-8.1.8.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/click/__init__.py create mode 100644 venv/lib/python3.9/site-packages/click/_compat.py create mode 100644 venv/lib/python3.9/site-packages/click/_termui_impl.py create mode 100644 venv/lib/python3.9/site-packages/click/_textwrap.py create mode 100644 venv/lib/python3.9/site-packages/click/_winconsole.py create mode 100644 venv/lib/python3.9/site-packages/click/core.py create mode 100644 venv/lib/python3.9/site-packages/click/decorators.py create mode 100644 venv/lib/python3.9/site-packages/click/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/click/formatting.py create mode 100644 venv/lib/python3.9/site-packages/click/globals.py create mode 100644 venv/lib/python3.9/site-packages/click/parser.py create mode 100644 venv/lib/python3.9/site-packages/click/py.typed create mode 100644 venv/lib/python3.9/site-packages/click/shell_completion.py create mode 100644 venv/lib/python3.9/site-packages/click/termui.py create mode 100644 venv/lib/python3.9/site-packages/click/testing.py create mode 100644 venv/lib/python3.9/site-packages/click/types.py create mode 100644 venv/lib/python3.9/site-packages/click/utils.py create mode 100644 venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE.APACHE create mode 100644 venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE.BSD create mode 100644 venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/sboms/cryptography-rust.cyclonedx.json create mode 100644 venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/sboms/sbom.json create mode 100644 venv/lib/python3.9/site-packages/cryptography/__about__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/fernet.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/_oid.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/asn1/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/asn1/asn1.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/backends/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/backends/openssl/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/backends/openssl/backend.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/__init__.py create mode 100755 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust.abi3.so create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/__init__.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/_openssl.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/asn1.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/declarative_asn1.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/exceptions.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/ocsp.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/aead.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ciphers.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/cmac.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/dh.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/dsa.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ec.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed25519.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed448.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hashes.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hmac.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hpke.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/kdf.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/keys.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/mldsa.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/mlkem.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/poly1305.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/rsa.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/x25519.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/x448.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/pkcs12.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/pkcs7.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/test_support.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/x509.pyi create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/_conditional.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/binding.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/modes.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_asymmetric.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_cipheralgorithm.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_modes.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_serialization.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/dh.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/dsa.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ec.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ed448.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/mldsa.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/mlkem.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/padding.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/rsa.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/types.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/utils.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/x25519.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/x448.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/aead.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/algorithms.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/base.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/modes.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/cmac.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/constant_time.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hashes.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hmac.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hpke.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/argon2.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/concatkdf.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/hkdf.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/kbkdf.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/pbkdf2.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/scrypt.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/keywrap.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/padding.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/poly1305.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/base.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/pkcs12.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/pkcs7.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/ssh.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/hotp.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/totp.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/py.typed create mode 100644 venv/lib/python3.9/site-packages/cryptography/utils.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/x509/__init__.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/x509/base.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/x509/certificate_transparency.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/x509/extensions.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/x509/general_name.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/x509/name.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/x509/ocsp.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/x509/oid.py create mode 100644 venv/lib/python3.9/site-packages/cryptography/x509/verification.py create mode 100644 venv/lib/python3.9/site-packages/distutils-precedence.pth create mode 100644 venv/lib/python3.9/site-packages/engineio/__init__.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_client.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/__init__.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/_websocket_wsgi.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/aiohttp.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/asgi.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/eventlet.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/gevent.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/gevent_uwsgi.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/sanic.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/threading.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_drivers/tornado.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_server.py create mode 100644 venv/lib/python3.9/site-packages/engineio/async_socket.py create mode 100644 venv/lib/python3.9/site-packages/engineio/base_client.py create mode 100644 venv/lib/python3.9/site-packages/engineio/base_server.py create mode 100644 venv/lib/python3.9/site-packages/engineio/base_socket.py create mode 100644 venv/lib/python3.9/site-packages/engineio/client.py create mode 100644 venv/lib/python3.9/site-packages/engineio/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/engineio/json.py create mode 100644 venv/lib/python3.9/site-packages/engineio/middleware.py create mode 100644 venv/lib/python3.9/site-packages/engineio/packet.py create mode 100644 venv/lib/python3.9/site-packages/engineio/payload.py create mode 100644 venv/lib/python3.9/site-packages/engineio/server.py create mode 100644 venv/lib/python3.9/site-packages/engineio/socket.py create mode 100644 venv/lib/python3.9/site-packages/engineio/static_files.py create mode 100644 venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/flask/__init__.py create mode 100644 venv/lib/python3.9/site-packages/flask/__main__.py create mode 100644 venv/lib/python3.9/site-packages/flask/app.py create mode 100644 venv/lib/python3.9/site-packages/flask/blueprints.py create mode 100644 venv/lib/python3.9/site-packages/flask/cli.py create mode 100644 venv/lib/python3.9/site-packages/flask/config.py create mode 100644 venv/lib/python3.9/site-packages/flask/ctx.py create mode 100644 venv/lib/python3.9/site-packages/flask/debughelpers.py create mode 100644 venv/lib/python3.9/site-packages/flask/globals.py create mode 100644 venv/lib/python3.9/site-packages/flask/helpers.py create mode 100644 venv/lib/python3.9/site-packages/flask/json/__init__.py create mode 100644 venv/lib/python3.9/site-packages/flask/json/provider.py create mode 100644 venv/lib/python3.9/site-packages/flask/json/tag.py create mode 100644 venv/lib/python3.9/site-packages/flask/logging.py create mode 100644 venv/lib/python3.9/site-packages/flask/py.typed create mode 100644 venv/lib/python3.9/site-packages/flask/sansio/README.md create mode 100644 venv/lib/python3.9/site-packages/flask/sansio/app.py create mode 100644 venv/lib/python3.9/site-packages/flask/sansio/blueprints.py create mode 100644 venv/lib/python3.9/site-packages/flask/sansio/scaffold.py create mode 100644 venv/lib/python3.9/site-packages/flask/sessions.py create mode 100644 venv/lib/python3.9/site-packages/flask/signals.py create mode 100644 venv/lib/python3.9/site-packages/flask/templating.py create mode 100644 venv/lib/python3.9/site-packages/flask/testing.py create mode 100644 venv/lib/python3.9/site-packages/flask/typing.py create mode 100644 venv/lib/python3.9/site-packages/flask/views.py create mode 100644 venv/lib/python3.9/site-packages/flask/wrappers.py create mode 100644 venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/licenses/LICENSE create mode 100755 venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/flask_socketio/__init__.py create mode 100644 venv/lib/python3.9/site-packages/flask_socketio/namespace.py create mode 100644 venv/lib/python3.9/site-packages/flask_socketio/test_client.py create mode 100644 venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/frozenlist/__init__.py create mode 100644 venv/lib/python3.9/site-packages/frozenlist/__init__.pyi create mode 100755 venv/lib/python3.9/site-packages/frozenlist/_frozenlist.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/frozenlist/_frozenlist.pyx create mode 100644 venv/lib/python3.9/site-packages/frozenlist/py.typed create mode 100644 venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/gevent/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_abstract_linkable.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_compat.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_config.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_ffi/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_ffi/callback.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_ffi/loop.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_ffi/watcher.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_fileobjectcommon.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_fileobjectposix.py create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_c_abstract_linkable.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_c_greenlet_primitives.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_c_hub_local.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_c_hub_primitives.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_c_ident.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_c_imap.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_c_semaphore.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_c_tracer.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_c_waiter.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_cevent.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_cgreenlet.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_clocal.cpython-39-x86_64-linux-gnu.so create mode 100755 venv/lib/python3.9/site-packages/gevent/_gevent_cqueue.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/gevent/_greenlet_primitives.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_hub_local.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_hub_primitives.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_ident.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_imap.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_interfaces.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_monitor.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_patcher.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_semaphore.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_socket3.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_socketcommon.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_tblib.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_threading.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_tracer.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_util.py create mode 100644 venv/lib/python3.9/site-packages/gevent/_waiter.py create mode 100644 venv/lib/python3.9/site-packages/gevent/ares.py create mode 100644 venv/lib/python3.9/site-packages/gevent/backdoor.py create mode 100644 venv/lib/python3.9/site-packages/gevent/baseserver.py create mode 100644 venv/lib/python3.9/site-packages/gevent/builtins.py create mode 100644 venv/lib/python3.9/site-packages/gevent/contextvars.py create mode 100644 venv/lib/python3.9/site-packages/gevent/core.py create mode 100644 venv/lib/python3.9/site-packages/gevent/event.py create mode 100644 venv/lib/python3.9/site-packages/gevent/events.py create mode 100644 venv/lib/python3.9/site-packages/gevent/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/gevent/fileobject.py create mode 100644 venv/lib/python3.9/site-packages/gevent/greenlet.py create mode 100644 venv/lib/python3.9/site-packages/gevent/hub.py create mode 100644 venv/lib/python3.9/site-packages/gevent/libev/__init__.py create mode 100755 venv/lib/python3.9/site-packages/gevent/libev/_corecffi.abi3.so create mode 100644 venv/lib/python3.9/site-packages/gevent/libev/_corecffi_build.py create mode 100755 venv/lib/python3.9/site-packages/gevent/libev/corecext.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/gevent/libev/corecffi.py create mode 100644 venv/lib/python3.9/site-packages/gevent/libev/watcher.py create mode 100644 venv/lib/python3.9/site-packages/gevent/libuv/__init__.py create mode 100755 venv/lib/python3.9/site-packages/gevent/libuv/_corecffi.abi3.so create mode 100644 venv/lib/python3.9/site-packages/gevent/libuv/_corecffi_build.py create mode 100644 venv/lib/python3.9/site-packages/gevent/libuv/loop.py create mode 100644 venv/lib/python3.9/site-packages/gevent/libuv/watcher.py create mode 100644 venv/lib/python3.9/site-packages/gevent/local.py create mode 100644 venv/lib/python3.9/site-packages/gevent/lock.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/__main__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/_errors.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/_main.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/_patch_thread_common.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/_patch_thread_gte313.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/_patch_thread_lt313.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/_state.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/_util.py create mode 100644 venv/lib/python3.9/site-packages/gevent/monkey/api.py create mode 100644 venv/lib/python3.9/site-packages/gevent/os.py create mode 100644 venv/lib/python3.9/site-packages/gevent/pool.py create mode 100644 venv/lib/python3.9/site-packages/gevent/pywsgi.py create mode 100644 venv/lib/python3.9/site-packages/gevent/queue.py create mode 100644 venv/lib/python3.9/site-packages/gevent/resolver/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/resolver/_addresses.py create mode 100644 venv/lib/python3.9/site-packages/gevent/resolver/_hostsfile.py create mode 100644 venv/lib/python3.9/site-packages/gevent/resolver/ares.py create mode 100644 venv/lib/python3.9/site-packages/gevent/resolver/blocking.py create mode 100755 venv/lib/python3.9/site-packages/gevent/resolver/cares.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/gevent/resolver/dnspython.py create mode 100644 venv/lib/python3.9/site-packages/gevent/resolver/thread.py create mode 100644 venv/lib/python3.9/site-packages/gevent/resolver_ares.py create mode 100644 venv/lib/python3.9/site-packages/gevent/resolver_thread.py create mode 100644 venv/lib/python3.9/site-packages/gevent/select.py create mode 100644 venv/lib/python3.9/site-packages/gevent/selectors.py create mode 100644 venv/lib/python3.9/site-packages/gevent/server.py create mode 100644 venv/lib/python3.9/site-packages/gevent/signal.py create mode 100644 venv/lib/python3.9/site-packages/gevent/socket.py create mode 100644 venv/lib/python3.9/site-packages/gevent/ssl.py create mode 100644 venv/lib/python3.9/site-packages/gevent/subprocess.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/coveragesite/sitecustomize.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/errorhandler.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/exception.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/flaky.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/hub.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/leakcheck.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/modules.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/monkey_test.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/openfiles.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/params.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/patched_tests_setup.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/resources.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/six.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/skipping.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/sockets.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/support.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/switching.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/sysinfo.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/testcase.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/testrunner.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/timing.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/travis.py create mode 100644 venv/lib/python3.9/site-packages/gevent/testing/util.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/2_7_keycert.pem create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/__main__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/_blocks_at_top_level.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/_import_import_patch.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/_import_patch.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/_import_wait.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/_imports_at_top_level.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/_imports_imports_at_top_level.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/badcert.pem create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/badkey.pem create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/getaddrinfo_module.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/hosts_file.txt create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/https_svn_python_org_root.pem create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/keycert.pem create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/known_failures.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/lock_tests.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/monkey_package/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/monkey_package/__main__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/monkey_package/issue1526_no_monkey.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/monkey_package/issue1526_with_monkey.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/monkey_package/issue302monkey.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/monkey_package/script.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/monkey_package/threadpool_monkey_patches.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/monkey_package/threadpool_no_monkey.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/nullcert.pem create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/server.crt create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/server.key create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/sha256.pem create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__GreenletExit.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test___config.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test___ident.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test___monitor.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test___monkey_patching.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__all__.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__api.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__api_timeout.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__ares_host_result.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__ares_timeout.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__backdoor.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__close_backend_fd.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__compat.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__contextvars.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__core.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__core_async.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__core_callback.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__core_fork.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__core_loop_run.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__core_stat.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__core_timer.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__core_watcher.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__destroy.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__destroy_default_loop.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__doctests.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__environ.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__event.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__events.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__example_echoserver.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__example_portforwarder.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__example_udp_client.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__example_udp_server.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__example_webproxy.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__example_wsgiserver.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__example_wsgiserver_ssl.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__examples.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__exc_info.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__execmodules.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__fileobject.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__getaddrinfo_import.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__greenio.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__greenlet.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__greenletset.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__greenness.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__hub.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__hub_join.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__hub_join_timeout.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__import_blocking_in_greenlet.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__import_wait.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue112.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue1686.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue1864.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue230.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue330.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue467.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue6.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue600.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue607.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue639.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issue_728.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__issues461_471.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__iwait.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__joinall.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__local.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__lock.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__loop_callback.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__makefile_ref.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__memleak.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_builtins_future.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_hub_in_thread.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_logging.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_module_run.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_multiple_imports.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_queue.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_select.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_selectors.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_sigchld.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_sigchld_2.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_sigchld_3.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_sigchld_wakeup_fd.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_ssl_warning.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_ssl_warning2.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__monkey_ssl_warning3.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__nondefaultloop.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__order.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__os.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__pool.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__pywsgi.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__queue.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__real_greenlet.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__refcount.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__refcount_core.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__resolver_dnspython.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__select.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__selectors.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__semaphore.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__server.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__server_pywsgi.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__signal.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__sleep0.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socket.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socket_close.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socket_dns.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socket_dns6.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socket_errors.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socket_ex.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socket_send_memoryview.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socket_ssl.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socket_timeout.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__socketpair.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__ssl.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__subprocess.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__subprocess_interrupted.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__subprocess_poll.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__systemerror.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__thread.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading_2.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading_before_monkey.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading_fork_from_dummy.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading_holding_lock_while_monkey.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading_monkey_in_thread.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading_native_before_monkey.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading_no_monkey.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading_patched_local.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threading_vs_settrace.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threadpool.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__threadpool_executor_patched.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__timeout.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test__util.py create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test_server.crt create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/test_server.key create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/tests_that_dont_do_leakchecks.txt create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/tests_that_dont_monkeypatch.txt create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/tests_that_dont_use_resolver.txt create mode 100644 venv/lib/python3.9/site-packages/gevent/tests/wrongcert.pem create mode 100644 venv/lib/python3.9/site-packages/gevent/thread.py create mode 100644 venv/lib/python3.9/site-packages/gevent/threading.py create mode 100644 venv/lib/python3.9/site-packages/gevent/threadpool.py create mode 100644 venv/lib/python3.9/site-packages/gevent/time.py create mode 100644 venv/lib/python3.9/site-packages/gevent/timeout.py create mode 100644 venv/lib/python3.9/site-packages/gevent/util.py create mode 100644 venv/lib/python3.9/site-packages/gevent/win32util.py create mode 100644 venv/lib/python3.9/site-packages/gevent_websocket-0.10.1.dist-info/DESCRIPTION.rst create mode 100644 venv/lib/python3.9/site-packages/gevent_websocket-0.10.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/gevent_websocket-0.10.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/gevent_websocket-0.10.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/gevent_websocket-0.10.1.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/gevent_websocket-0.10.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/gevent_websocket-0.10.1.dist-info/metadata.json create mode 100644 venv/lib/python3.9/site-packages/gevent_websocket-0.10.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/__init__.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/_compat.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/gunicorn/__init__.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/gunicorn/workers.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/handler.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/logging.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/protocols/__init__.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/protocols/base.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/protocols/wamp.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/resource.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/server.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/utf8validator.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/utils.py create mode 100644 venv/lib/python3.9/site-packages/geventwebsocket/websocket.py create mode 100644 venv/lib/python3.9/site-packages/greenlet-3.2.5.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/greenlet-3.2.5.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/greenlet-3.2.5.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/greenlet-3.2.5.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/greenlet-3.2.5.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/greenlet-3.2.5.dist-info/licenses/LICENSE.PSF create mode 100644 venv/lib/python3.9/site-packages/greenlet-3.2.5.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/greenlet/CObjects.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/PyGreenlet.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/PyGreenlet.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/PyGreenletUnswitchable.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/PyModule.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TBrokenGreenlet.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TExceptionState.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TGreenlet.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TGreenlet.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TGreenletGlobals.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TMainGreenlet.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TPythonState.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TStackState.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TThreadState.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TThreadStateCreator.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TThreadStateDestroy.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/TUserGreenlet.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/__init__.py create mode 100755 venv/lib/python3.9/site-packages/greenlet/_greenlet.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet.cpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet_allocator.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet_compiler_compat.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet_cpython_compat.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet_exceptions.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet_internal.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet_msvc_compat.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet_refs.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet_slp_switch.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/greenlet_thread_support.hpp create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/__init__.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/setup_switch_x64_masm.cmd create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_aarch64_gcc.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_alpha_unix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_amd64_unix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_arm32_gcc.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_arm32_ios.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_arm64_masm.asm create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_arm64_masm.obj create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_arm64_msvc.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_csky_gcc.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_loongarch64_linux.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_m68k_gcc.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_mips_unix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_ppc64_aix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_ppc64_linux.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_ppc_aix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_ppc_linux.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_ppc_macosx.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_ppc_unix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_riscv_unix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_s390_unix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_sh_gcc.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_sparc_sun_gcc.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_x32_unix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_x64_masm.asm create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_x64_masm.obj create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_x64_msvc.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_x86_msvc.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/platform/switch_x86_unix.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/slp_platformselect.h create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/__init__.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/_test_extension.c create mode 100755 venv/lib/python3.9/site-packages/greenlet/tests/_test_extension.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/_test_extension_cpp.cpp create mode 100755 venv/lib/python3.9/site-packages/greenlet/tests/_test_extension_cpp.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/fail_clearing_run_switches.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/fail_cpp_exception.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/fail_initialstub_already_started.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/fail_slp_switch.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/fail_switch_three_greenlets.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/fail_switch_three_greenlets2.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/fail_switch_two_greenlets.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/leakcheck.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_contextvars.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_cpp.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_extension_interface.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_gc.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_generator.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_generator_nested.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_greenlet.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_greenlet_trash.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_interpreter_shutdown.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_leaks.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_stack_saved.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_throw.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_tracing.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_version.py create mode 100644 venv/lib/python3.9/site-packages/greenlet/tests/test_weakref.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn-23.0.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/gunicorn-23.0.0.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/gunicorn-23.0.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/gunicorn-23.0.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/gunicorn-23.0.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/gunicorn-23.0.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/gunicorn-23.0.0.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/gunicorn-23.0.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/gunicorn/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/__main__.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/app/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/app/base.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/app/pasterapp.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/arbiter.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/config.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/debug.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/errors.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/glogging.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/http/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/http/body.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/http/errors.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/http/message.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/http/parser.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/http/unreader.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/http/wsgi.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/instrument/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/instrument/statsd.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/pidfile.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/reloader.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/sock.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/systemd.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/util.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/workers/__init__.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/workers/base.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/workers/base_async.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/workers/geventlet.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/workers/ggevent.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/workers/gthread.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/workers/gtornado.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/workers/sync.py create mode 100644 venv/lib/python3.9/site-packages/gunicorn/workers/workertmp.py create mode 100644 venv/lib/python3.9/site-packages/h11-0.16.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/h11-0.16.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/h11-0.16.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/h11-0.16.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/h11-0.16.0.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/h11-0.16.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/h11/__init__.py create mode 100644 venv/lib/python3.9/site-packages/h11/_abnf.py create mode 100644 venv/lib/python3.9/site-packages/h11/_connection.py create mode 100644 venv/lib/python3.9/site-packages/h11/_events.py create mode 100644 venv/lib/python3.9/site-packages/h11/_headers.py create mode 100644 venv/lib/python3.9/site-packages/h11/_readers.py create mode 100644 venv/lib/python3.9/site-packages/h11/_receivebuffer.py create mode 100644 venv/lib/python3.9/site-packages/h11/_state.py create mode 100644 venv/lib/python3.9/site-packages/h11/_util.py create mode 100644 venv/lib/python3.9/site-packages/h11/_version.py create mode 100644 venv/lib/python3.9/site-packages/h11/_writers.py create mode 100644 venv/lib/python3.9/site-packages/h11/py.typed create mode 100644 venv/lib/python3.9/site-packages/http_ece-1.2.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/http_ece-1.2.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/http_ece-1.2.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/http_ece-1.2.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/http_ece-1.2.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/http_ece/__init__.py create mode 100644 venv/lib/python3.9/site-packages/idna-3.13.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/idna-3.13.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/idna-3.13.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/idna-3.13.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/idna-3.13.dist-info/licenses/LICENSE.md create mode 100644 venv/lib/python3.9/site-packages/idna/__init__.py create mode 100644 venv/lib/python3.9/site-packages/idna/codec.py create mode 100644 venv/lib/python3.9/site-packages/idna/compat.py create mode 100644 venv/lib/python3.9/site-packages/idna/core.py create mode 100644 venv/lib/python3.9/site-packages/idna/idnadata.py create mode 100644 venv/lib/python3.9/site-packages/idna/intranges.py create mode 100644 venv/lib/python3.9/site-packages/idna/package_data.py create mode 100644 venv/lib/python3.9/site-packages/idna/py.typed create mode 100644 venv/lib/python3.9/site-packages/idna/uts46data.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata-8.7.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata-8.7.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata-8.7.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata-8.7.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata-8.7.1.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata-8.7.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/__init__.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/_adapters.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/_collections.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/_compat.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/_functools.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/_itertools.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/_meta.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/_text.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/_typing.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/compat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/compat/py311.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/compat/py39.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/diagnose.py create mode 100644 venv/lib/python3.9/site-packages/importlib_metadata/py.typed create mode 100644 venv/lib/python3.9/site-packages/itsdangerous-2.2.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/itsdangerous-2.2.0.dist-info/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/itsdangerous-2.2.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/itsdangerous-2.2.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/itsdangerous-2.2.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/itsdangerous/__init__.py create mode 100644 venv/lib/python3.9/site-packages/itsdangerous/_json.py create mode 100644 venv/lib/python3.9/site-packages/itsdangerous/encoding.py create mode 100644 venv/lib/python3.9/site-packages/itsdangerous/exc.py create mode 100644 venv/lib/python3.9/site-packages/itsdangerous/py.typed create mode 100644 venv/lib/python3.9/site-packages/itsdangerous/serializer.py create mode 100644 venv/lib/python3.9/site-packages/itsdangerous/signer.py create mode 100644 venv/lib/python3.9/site-packages/itsdangerous/timed.py create mode 100644 venv/lib/python3.9/site-packages/itsdangerous/url_safe.py create mode 100644 venv/lib/python3.9/site-packages/jinja2-3.1.6.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/jinja2-3.1.6.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/jinja2-3.1.6.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/jinja2-3.1.6.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/jinja2-3.1.6.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/jinja2-3.1.6.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/jinja2/__init__.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/_identifier.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/async_utils.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/bccache.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/compiler.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/constants.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/debug.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/defaults.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/environment.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/ext.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/filters.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/idtracking.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/lexer.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/loaders.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/meta.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/nativetypes.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/nodes.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/optimizer.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/parser.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/py.typed create mode 100644 venv/lib/python3.9/site-packages/jinja2/runtime.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/sandbox.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/tests.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/utils.py create mode 100644 venv/lib/python3.9/site-packages/jinja2/visitor.py create mode 100644 venv/lib/python3.9/site-packages/markupsafe-3.0.3.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/markupsafe-3.0.3.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/markupsafe-3.0.3.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/markupsafe-3.0.3.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/markupsafe-3.0.3.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/markupsafe-3.0.3.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/markupsafe/__init__.py create mode 100644 venv/lib/python3.9/site-packages/markupsafe/_native.py create mode 100644 venv/lib/python3.9/site-packages/markupsafe/_speedups.c create mode 100755 venv/lib/python3.9/site-packages/markupsafe/_speedups.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/markupsafe/_speedups.pyi create mode 100644 venv/lib/python3.9/site-packages/markupsafe/py.typed create mode 100644 venv/lib/python3.9/site-packages/multidict-6.7.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/multidict-6.7.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/multidict-6.7.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/multidict-6.7.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/multidict-6.7.1.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/multidict-6.7.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/multidict/__init__.py create mode 100644 venv/lib/python3.9/site-packages/multidict/_abc.py create mode 100644 venv/lib/python3.9/site-packages/multidict/_compat.py create mode 100755 venv/lib/python3.9/site-packages/multidict/_multidict.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/multidict/_multidict_py.py create mode 100644 venv/lib/python3.9/site-packages/multidict/py.typed create mode 100644 venv/lib/python3.9/site-packages/packaging-26.2.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/packaging-26.2.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/packaging-26.2.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/packaging-26.2.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/packaging-26.2.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/packaging-26.2.dist-info/licenses/LICENSE.APACHE create mode 100644 venv/lib/python3.9/site-packages/packaging-26.2.dist-info/licenses/LICENSE.BSD create mode 100644 venv/lib/python3.9/site-packages/packaging/__init__.py create mode 100644 venv/lib/python3.9/site-packages/packaging/_elffile.py create mode 100644 venv/lib/python3.9/site-packages/packaging/_manylinux.py create mode 100644 venv/lib/python3.9/site-packages/packaging/_musllinux.py create mode 100644 venv/lib/python3.9/site-packages/packaging/_parser.py create mode 100644 venv/lib/python3.9/site-packages/packaging/_structures.py create mode 100644 venv/lib/python3.9/site-packages/packaging/_tokenizer.py create mode 100644 venv/lib/python3.9/site-packages/packaging/dependency_groups.py create mode 100644 venv/lib/python3.9/site-packages/packaging/direct_url.py create mode 100644 venv/lib/python3.9/site-packages/packaging/errors.py create mode 100644 venv/lib/python3.9/site-packages/packaging/licenses/__init__.py create mode 100644 venv/lib/python3.9/site-packages/packaging/licenses/_spdx.py create mode 100644 venv/lib/python3.9/site-packages/packaging/markers.py create mode 100644 venv/lib/python3.9/site-packages/packaging/metadata.py create mode 100644 venv/lib/python3.9/site-packages/packaging/py.typed create mode 100644 venv/lib/python3.9/site-packages/packaging/pylock.py create mode 100644 venv/lib/python3.9/site-packages/packaging/requirements.py create mode 100644 venv/lib/python3.9/site-packages/packaging/specifiers.py create mode 100644 venv/lib/python3.9/site-packages/packaging/tags.py create mode 100644 venv/lib/python3.9/site-packages/packaging/utils.py create mode 100644 venv/lib/python3.9/site-packages/packaging/version.py create mode 100644 venv/lib/python3.9/site-packages/paho/__init__.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/__init__.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/client.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/enums.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/matcher.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/packettypes.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/properties.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/publish.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/py.typed create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/reasoncodes.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/subscribe.py create mode 100644 venv/lib/python3.9/site-packages/paho/mqtt/subscribeoptions.py create mode 100644 venv/lib/python3.9/site-packages/paho_mqtt-2.1.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/paho_mqtt-2.1.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/paho_mqtt-2.1.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/paho_mqtt-2.1.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/paho_mqtt-2.1.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/paho_mqtt-2.1.0.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/AUTHORS.txt create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/cachecontrol/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/certifi/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/dependency_groups/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/distlib/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/distro/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/idna/LICENSE.md create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/msgpack/COPYING create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.APACHE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.BSD create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pkg_resources/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/platformdirs/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pygments/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pyproject_hooks/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/requests/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/resolvelib/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/rich/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/tomli/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/tomli_w/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/truststore/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/urllib3/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/__main__.py create mode 100644 venv/lib/python3.9/site-packages/pip/__pip-runner__.py create mode 100755 venv/lib/python3.9/site-packages/pip/_internal/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/build_env.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cache.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/autocompletion.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/base_command.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/cmdoptions.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/command_context.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/index_command.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/main.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/main_parser.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/parser.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/progress_bars.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/req_command.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/spinners.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/cli/status_codes.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/cache.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/check.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/completion.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/configuration.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/debug.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/download.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/freeze.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/hash.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/help.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/index.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/inspect.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/install.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/list.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/lock.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/search.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/show.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/uninstall.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/commands/wheel.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/configuration.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/distributions/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/distributions/base.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/distributions/installed.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/distributions/sdist.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/distributions/wheel.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/index/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/index/collector.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/index/package_finder.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/index/sources.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/locations/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/locations/_distutils.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/locations/_sysconfig.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/locations/base.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/main.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/metadata/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/metadata/_json.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/metadata/base.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/metadata/importlib/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/metadata/importlib/_compat.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/metadata/importlib/_dists.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/metadata/importlib/_envs.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/metadata/pkg_resources.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/candidate.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/direct_url.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/format_control.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/index.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/installation_report.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/link.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/release_control.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/scheme.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/search_scope.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/selection_prefs.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/target_python.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/models/wheel.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/network/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/network/auth.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/network/cache.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/network/download.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/network/lazy_wheel.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/network/session.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/network/utils.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/network/xmlrpc.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/build/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/build/build_tracker.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/build/metadata.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/build/metadata_editable.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/build/wheel.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/build/wheel_editable.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/check.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/freeze.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/install/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/install/wheel.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/operations/prepare.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/pyproject.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/req/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/req/constructors.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/req/pep723.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/req/req_dependency_group.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/req/req_file.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/req/req_install.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/req/req_set.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/req/req_uninstall.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/base.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/legacy/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/legacy/resolver.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/base.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/candidates.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/factory.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/provider.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/reporter.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/requirements.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/resolver.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/self_outdated_check.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/_jaraco_text.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/_log.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/appdirs.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/compat.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/compatibility_tags.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/datetime.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/deprecation.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/direct_url_helpers.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/egg_link.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/entrypoints.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/filesystem.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/filetypes.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/glibc.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/hashes.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/logging.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/misc.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/packaging.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/pylock.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/retry.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/subprocess.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/temp_dir.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/unpacking.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/urls.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/virtualenv.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/utils/wheel.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/vcs/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/vcs/bazaar.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/vcs/git.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/vcs/mercurial.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/vcs/subversion.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/vcs/versioncontrol.py create mode 100644 venv/lib/python3.9/site-packages/pip/_internal/wheel_builder.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/README.rst create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/_cmd.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/adapter.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/cache.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/caches/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/controller.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/filewrapper.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/heuristics.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/serialize.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/wrapper.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/certifi/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/certifi/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/certifi/__main__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/certifi/cacert.pem create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/certifi/core.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/certifi/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/dependency_groups/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/dependency_groups/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/dependency_groups/__main__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/dependency_groups/_implementation.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/dependency_groups/_lint_dependency_groups.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/dependency_groups/_pip_wrapper.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/dependency_groups/_toml_compat.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/dependency_groups/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/compat.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/resources.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/scripts.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/t32.exe create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/t64-arm.exe create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/t64.exe create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/util.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/w32.exe create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/w64-arm.exe create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distlib/w64.exe create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distro/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distro/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distro/__main__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distro/distro.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/distro/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/LICENSE.md create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/codec.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/compat.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/core.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/idnadata.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/intranges.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/package_data.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/idna/uts46data.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/msgpack/COPYING create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/msgpack/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/msgpack/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/msgpack/ext.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/msgpack/fallback.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/LICENSE.APACHE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/LICENSE.BSD create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/_elffile.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/_manylinux.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/_musllinux.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/_parser.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/_structures.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/_tokenizer.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/licenses/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/licenses/_spdx.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/markers.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/metadata.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/pylock.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/requirements.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/specifiers.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/tags.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/utils.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/packaging/version.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pkg_resources/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pkg_resources/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/__main__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/android.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/api.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/macos.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/unix.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/version.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/windows.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/__main__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/console.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/filter.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/filters/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/formatter.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/formatters/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/formatters/_mapping.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/lexer.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/lexers/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/lexers/_mapping.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/lexers/python.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/modeline.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/plugin.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/regexopt.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/scanner.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/sphinxext.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/style.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/styles/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/styles/_mapping.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/token.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/unistring.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pygments/util.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_impl.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/__version__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/_internal_utils.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/adapters.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/api.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/auth.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/certs.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/compat.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/cookies.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/help.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/hooks.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/models.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/packages.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/sessions.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/status_codes.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/structures.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/requests/utils.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/providers.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/reporters.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/resolvers/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/resolvers/abstract.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/resolvers/criterion.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/structs.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/__main__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_cell_widths.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_emoji_codes.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_emoji_replace.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_export_format.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_extension.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_fileno.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_inspect.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_log_render.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_loop.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_null_file.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_palettes.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_pick.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_ratio.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_spinners.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_stack.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_timer.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_win32_console.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_windows.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_windows_renderer.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/_wrap.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/abc.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/align.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/ansi.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/bar.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/box.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/cells.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/color.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/color_triplet.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/columns.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/console.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/constrain.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/containers.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/control.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/default_styles.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/diagnose.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/emoji.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/errors.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/file_proxy.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/filesize.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/highlighter.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/json.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/jupyter.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/layout.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/live.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/live_render.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/logging.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/markup.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/measure.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/padding.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/pager.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/palette.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/panel.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/pretty.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/progress.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/progress_bar.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/prompt.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/protocol.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/region.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/repr.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/rule.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/scope.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/screen.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/segment.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/spinner.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/status.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/style.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/styled.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/syntax.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/table.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/terminal_theme.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/text.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/theme.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/themes.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/traceback.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/rich/tree.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli/_parser.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli/_re.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli/_types.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli_w/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli_w/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli_w/_writer.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/tomli_w/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/truststore/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/truststore/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/truststore/_api.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/truststore/_macos.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/truststore/_openssl.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/truststore/_ssl_constants.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/truststore/_windows.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/truststore/py.typed create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/_collections.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/_version.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/connection.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/appengine.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/securetransport.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/socks.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/fields.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/filepost.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/six.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/poolmanager.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/request.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/response.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/connection.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/proxy.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/queue.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/request.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/response.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/retry.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/ssl_.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/ssltransport.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/timeout.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/url.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/wait.py create mode 100644 venv/lib/python3.9/site-packages/pip/_vendor/vendor.txt create mode 100644 venv/lib/python3.9/site-packages/pip/py.typed create mode 100644 venv/lib/python3.9/site-packages/pkg_resources-0.0.0.dist-info/AUTHORS.txt create mode 100644 venv/lib/python3.9/site-packages/pkg_resources-0.0.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/pkg_resources-0.0.0.dist-info/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/pkg_resources-0.0.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/pkg_resources-0.0.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/pkg_resources-0.0.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/pkg_resources-0.0.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/appdirs.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/__about__.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/_compat.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/_structures.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/markers.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/requirements.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/specifiers.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/utils.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/version.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/pyparsing.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/_vendor/six.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/extern/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pkg_resources/py31compat.py create mode 100644 venv/lib/python3.9/site-packages/propcache-0.4.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/propcache-0.4.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/propcache-0.4.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/propcache-0.4.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/propcache-0.4.1.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/propcache-0.4.1.dist-info/licenses/NOTICE create mode 100644 venv/lib/python3.9/site-packages/propcache-0.4.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/propcache/__init__.py create mode 100644 venv/lib/python3.9/site-packages/propcache/_helpers.py create mode 100755 venv/lib/python3.9/site-packages/propcache/_helpers_c.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/propcache/_helpers_c.pyx create mode 100644 venv/lib/python3.9/site-packages/propcache/_helpers_py.py create mode 100644 venv/lib/python3.9/site-packages/propcache/api.py create mode 100644 venv/lib/python3.9/site-packages/propcache/py.typed create mode 100644 venv/lib/python3.9/site-packages/py_vapid-1.9.4.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/py_vapid-1.9.4.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/py_vapid-1.9.4.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/py_vapid-1.9.4.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/py_vapid-1.9.4.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/py_vapid-1.9.4.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/py_vapid/__init__.py create mode 100644 venv/lib/python3.9/site-packages/py_vapid/__main__.py create mode 100644 venv/lib/python3.9/site-packages/py_vapid/jwt.py create mode 100644 venv/lib/python3.9/site-packages/py_vapid/main.py create mode 100644 venv/lib/python3.9/site-packages/py_vapid/tests/.test_vapid.py.swp create mode 100644 venv/lib/python3.9/site-packages/py_vapid/tests/test_vapid.py create mode 100644 venv/lib/python3.9/site-packages/py_vapid/utils.py create mode 100644 venv/lib/python3.9/site-packages/pycparser-2.23.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/pycparser-2.23.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pycparser-2.23.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/pycparser-2.23.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/pycparser-2.23.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/pycparser-2.23.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/pycparser/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/_ast_gen.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/_build_tables.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/_c_ast.cfg create mode 100644 venv/lib/python3.9/site-packages/pycparser/ast_transforms.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/c_ast.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/c_generator.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/c_lexer.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/c_parser.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/lextab.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/ply/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/ply/cpp.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/ply/ctokens.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/ply/lex.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/ply/yacc.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/ply/ygen.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/plyparser.py create mode 100644 venv/lib/python3.9/site-packages/pycparser/yacctab.py create mode 100644 venv/lib/python3.9/site-packages/python_engineio-4.13.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/python_engineio-4.13.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/python_engineio-4.13.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/python_engineio-4.13.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/python_engineio-4.13.1.dist-info/licenses/LICENSE create mode 100755 venv/lib/python3.9/site-packages/python_engineio-4.13.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/python_socketio-5.16.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/python_socketio-5.16.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/python_socketio-5.16.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/python_socketio-5.16.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/python_socketio-5.16.1.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/python_socketio-5.16.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/pywebpush-2.1.2.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/pywebpush-2.1.2.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/pywebpush-2.1.2.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/pywebpush-2.1.2.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/pywebpush-2.1.2.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/pywebpush-2.1.2.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/pywebpush-2.1.2.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/pywebpush-2.1.2.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/pywebpush/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pywebpush/__main__.py create mode 100644 venv/lib/python3.9/site-packages/pywebpush/foo.py create mode 100644 venv/lib/python3.9/site-packages/pywebpush/tests/__init__.py create mode 100644 venv/lib/python3.9/site-packages/pywebpush/tests/test_webpush.py create mode 100644 venv/lib/python3.9/site-packages/requests-2.32.5.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/requests-2.32.5.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/requests-2.32.5.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/requests-2.32.5.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/requests-2.32.5.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/requests-2.32.5.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/requests/__init__.py create mode 100644 venv/lib/python3.9/site-packages/requests/__version__.py create mode 100644 venv/lib/python3.9/site-packages/requests/_internal_utils.py create mode 100644 venv/lib/python3.9/site-packages/requests/adapters.py create mode 100644 venv/lib/python3.9/site-packages/requests/api.py create mode 100644 venv/lib/python3.9/site-packages/requests/auth.py create mode 100644 venv/lib/python3.9/site-packages/requests/certs.py create mode 100644 venv/lib/python3.9/site-packages/requests/compat.py create mode 100644 venv/lib/python3.9/site-packages/requests/cookies.py create mode 100644 venv/lib/python3.9/site-packages/requests/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/requests/help.py create mode 100644 venv/lib/python3.9/site-packages/requests/hooks.py create mode 100644 venv/lib/python3.9/site-packages/requests/models.py create mode 100644 venv/lib/python3.9/site-packages/requests/packages.py create mode 100644 venv/lib/python3.9/site-packages/requests/sessions.py create mode 100644 venv/lib/python3.9/site-packages/requests/status_codes.py create mode 100644 venv/lib/python3.9/site-packages/requests/structures.py create mode 100644 venv/lib/python3.9/site-packages/requests/utils.py create mode 100644 venv/lib/python3.9/site-packages/setuptools-82.0.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools-82.0.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools-82.0.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools-82.0.1.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools-82.0.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools-82.0.1.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools-82.0.1.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools-82.0.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_core_metadata.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_discovery.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/_log.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/_macos_compat.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/_modified.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/_msvccompiler.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/archive_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/ccompiler.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/cmd.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/_framework_compat.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/bdist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/bdist_dumb.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/bdist_rpm.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/build.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/build_clib.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/build_ext.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/build_py.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/build_scripts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/check.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/clean.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/config.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/install.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_data.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_egg_info.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_headers.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_lib.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_scripts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/command/sdist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compat/numpy.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compat/py39.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/base.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/cygwin.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/errors.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/msvc.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/tests/test_base.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/tests/test_cygwin.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/tests/test_mingw.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/tests/test_msvc.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/tests/test_unix.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/unix.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/compilers/C/zos.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/core.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/cygwinccompiler.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/debug.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/dep_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/dir_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/dist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/errors.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/extension.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/fancy_getopt.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/file_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/filelist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/log.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/spawn.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/sysconfig.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/compat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/compat/py39.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/support.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_archive_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_bdist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_bdist_dumb.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_bdist_rpm.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_build.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_build_clib.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_build_ext.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_build_py.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_build_scripts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_check.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_clean.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_cmd.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_config_cmd.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_core.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_dir_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_dist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_extension.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_file_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_filelist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_install.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_install_data.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_install_headers.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_install_lib.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_install_scripts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_log.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_modified.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_sdist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_spawn.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_sysconfig.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_text_file.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_version.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/test_versionpredicate.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/tests/unix_compat.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/text_file.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/unixccompiler.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/version.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/versionpredicate.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_distutils/zosccompiler.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_entry_points.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_imp.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_importlib.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_itertools.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_normalization.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_path.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_reqs.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_scripts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_shutil.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_static.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/.lock create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand/autoasync.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand/autocommand.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand/automain.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand/autoparse.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/autocommand/errors.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports/tarfile/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports/tarfile/__main__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports/tarfile/compat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/backports/tarfile/compat/py38.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/_adapters.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/_collections.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/_compat.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/_functools.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/_itertools.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/_meta.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/_text.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/_typing.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/compat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/compat/py311.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/compat/py39.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/diagnose.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/py.typed create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco.text-4.0.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco.text-4.0.0.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco.text-4.0.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco.text-4.0.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco.text-4.0.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco.text-4.0.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco.text-4.0.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/context/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/context/py.typed create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/functools/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/functools/__init__.pyi create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/functools/py.typed create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/text/Lorem ipsum.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/text/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/text/layouts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/text/show-newlines.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/text/strip-prefix.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/text/to-dvorak.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco/text/to-qwerty.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_context-6.1.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_context-6.1.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_context-6.1.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_context-6.1.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_context-6.1.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_context-6.1.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_context-6.1.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_functools-4.4.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_functools-4.4.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_functools-4.4.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_functools-4.4.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_functools-4.4.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_functools-4.4.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/jaraco_functools-4.4.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools-10.8.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools-10.8.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools-10.8.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools-10.8.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools-10.8.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools-10.8.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/__init__.pyi create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/more.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/more.pyi create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/py.typed create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/recipes.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/recipes.pyi create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging-26.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging-26.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging-26.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging-26.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging-26.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging-26.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging-26.0.dist-info/licenses/LICENSE.APACHE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging-26.0.dist-info/licenses/LICENSE.BSD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/_elffile.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/_manylinux.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/_musllinux.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/_parser.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/_structures.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/_tokenizer.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/licenses/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/licenses/_spdx.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/markers.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/metadata.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/py.typed create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/pylock.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/requirements.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/specifiers.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/tags.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/utils.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/version.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs-4.4.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs-4.4.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs-4.4.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs-4.4.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs-4.4.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs-4.4.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs/__main__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs/android.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs/api.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs/macos.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs/py.typed create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs/unix.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs/version.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/platformdirs/windows.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli-2.4.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli-2.4.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli-2.4.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli-2.4.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli-2.4.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli-2.4.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli/_parser.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli/_re.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli/_types.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/tomli/py.typed create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel-0.46.3.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel-0.46.3.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel-0.46.3.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel-0.46.3.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel-0.46.3.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel-0.46.3.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel-0.46.3.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/__main__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/_commands/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/_commands/convert.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/_commands/pack.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/_commands/tags.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/_commands/unpack.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/_metadata.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/bdist_wheel.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/macosx_libfile.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/metadata.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/wheel/wheelfile.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp-3.23.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp-3.23.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp-3.23.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp-3.23.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp-3.23.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp-3.23.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp-3.23.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp/_functools.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp/compat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp/compat/overlay.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp/compat/py310.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp/compat/py313.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/_vendor/zipp/glob.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/archive_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/build_meta.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/cli-32.exe create mode 100644 venv/lib/python3.9/site-packages/setuptools/cli-64.exe create mode 100644 venv/lib/python3.9/site-packages/setuptools/cli-arm64.exe create mode 100644 venv/lib/python3.9/site-packages/setuptools/cli.exe create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/_requirestxt.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/alias.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/bdist_egg.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/bdist_rpm.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/bdist_wheel.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/build.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/build_clib.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/build_ext.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/build_py.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/develop.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/dist_info.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/easy_install.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/editable_wheel.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/egg_info.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/install.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/install_egg_info.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/install_lib.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/install_scripts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/rotate.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/saveopts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/sdist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/setopt.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/command/test.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/compat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/compat/py310.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/compat/py311.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/compat/py312.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/compat/py39.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/NOTICE create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/_apply_pyprojecttoml.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/_validate_pyproject/NOTICE create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/_validate_pyproject/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/_validate_pyproject/error_reporting.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/_validate_pyproject/extra_validations.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_exceptions.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/_validate_pyproject/formats.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/distutils.schema.json create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/expand.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/pyprojecttoml.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/setupcfg.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/config/setuptools.schema.json create mode 100644 venv/lib/python3.9/site-packages/setuptools/depends.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/discovery.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/dist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/errors.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/extension.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/glob.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/gui-32.exe create mode 100644 venv/lib/python3.9/site-packages/setuptools/gui-64.exe create mode 100644 venv/lib/python3.9/site-packages/setuptools/gui-arm64.exe create mode 100644 venv/lib/python3.9/site-packages/setuptools/gui.exe create mode 100644 venv/lib/python3.9/site-packages/setuptools/installer.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/launch.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/launcher manifest.xml create mode 100644 venv/lib/python3.9/site-packages/setuptools/logging.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/modified.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/monkey.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/msvc.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/namespaces.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/script (dev).tmpl create mode 100644 venv/lib/python3.9/site-packages/setuptools/script.tmpl create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/compat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/compat/py39.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/config/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/config/downloads/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/config/downloads/preload.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/config/setupcfg_examples.txt create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/config/test_expand.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/config/test_pyprojecttoml.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/config/test_pyprojecttoml_dynamic_deps.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/config/test_setupcfg.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/contexts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/environment.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/fixtures.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/indexes/test_links_priority/external.html create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/indexes/test_links_priority/simple/foobar/index.html create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/integration/__init__.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/integration/helpers.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/integration/test_pbr.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/integration/test_pip_install_sdist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/mod_with_constant.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/namespaces.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/script-with-bom.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_archive_util.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_bdist_deprecations.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_bdist_egg.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_bdist_wheel.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_build.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_build_clib.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_build_ext.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_build_meta.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_build_py.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_config_discovery.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_core_metadata.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_depends.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_develop.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_dist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_dist_info.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_distutils_adoption.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_editable_install.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_egg_info.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_extern.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_find_packages.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_find_py_modules.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_glob.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_install_scripts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_logging.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_manifest.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_namespaces.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_scripts.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_sdist.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_setopt.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_setuptools.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_shutil_wrapper.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_unicode_utils.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_virtualenv.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_warnings.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_wheel.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/test_windows_wrappers.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/text.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/tests/textwrap.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/unicode_utils.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/version.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/warnings.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/wheel.py create mode 100644 venv/lib/python3.9/site-packages/setuptools/windows_support.py create mode 100644 venv/lib/python3.9/site-packages/simple_websocket-1.1.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/simple_websocket-1.1.0.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/simple_websocket-1.1.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/simple_websocket-1.1.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/simple_websocket-1.1.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/simple_websocket-1.1.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/simple_websocket/__init__.py create mode 100644 venv/lib/python3.9/site-packages/simple_websocket/aiows.py create mode 100644 venv/lib/python3.9/site-packages/simple_websocket/asgi.py create mode 100644 venv/lib/python3.9/site-packages/simple_websocket/errors.py create mode 100644 venv/lib/python3.9/site-packages/simple_websocket/ws.py create mode 100644 venv/lib/python3.9/site-packages/six-1.17.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/six-1.17.0.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/six-1.17.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/six-1.17.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/six-1.17.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/six-1.17.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/six.py create mode 100644 venv/lib/python3.9/site-packages/socketio/__init__.py create mode 100644 venv/lib/python3.9/site-packages/socketio/admin.py create mode 100644 venv/lib/python3.9/site-packages/socketio/asgi.py create mode 100644 venv/lib/python3.9/site-packages/socketio/async_admin.py create mode 100644 venv/lib/python3.9/site-packages/socketio/async_aiopika_manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/async_client.py create mode 100644 venv/lib/python3.9/site-packages/socketio/async_manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/async_namespace.py create mode 100644 venv/lib/python3.9/site-packages/socketio/async_pubsub_manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/async_redis_manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/async_server.py create mode 100644 venv/lib/python3.9/site-packages/socketio/async_simple_client.py create mode 100644 venv/lib/python3.9/site-packages/socketio/base_client.py create mode 100644 venv/lib/python3.9/site-packages/socketio/base_manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/base_namespace.py create mode 100644 venv/lib/python3.9/site-packages/socketio/base_server.py create mode 100644 venv/lib/python3.9/site-packages/socketio/client.py create mode 100644 venv/lib/python3.9/site-packages/socketio/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/socketio/kafka_manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/kombu_manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/middleware.py create mode 100644 venv/lib/python3.9/site-packages/socketio/msgpack_packet.py create mode 100644 venv/lib/python3.9/site-packages/socketio/namespace.py create mode 100644 venv/lib/python3.9/site-packages/socketio/packet.py create mode 100644 venv/lib/python3.9/site-packages/socketio/pubsub_manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/redis_manager.py create mode 100644 venv/lib/python3.9/site-packages/socketio/server.py create mode 100644 venv/lib/python3.9/site-packages/socketio/simple_client.py create mode 100644 venv/lib/python3.9/site-packages/socketio/tornado.py create mode 100644 venv/lib/python3.9/site-packages/socketio/zmq_manager.py create mode 100644 venv/lib/python3.9/site-packages/typing_extensions-4.15.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/typing_extensions-4.15.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/typing_extensions-4.15.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/typing_extensions-4.15.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/typing_extensions-4.15.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/typing_extensions.py create mode 100644 venv/lib/python3.9/site-packages/urllib3-2.6.3.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/urllib3-2.6.3.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/urllib3-2.6.3.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/urllib3-2.6.3.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/urllib3-2.6.3.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/urllib3/__init__.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/_base_connection.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/_collections.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/_request_methods.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/_version.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/connection.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/connectionpool.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/contrib/__init__.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/contrib/emscripten/__init__.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/contrib/emscripten/connection.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/contrib/emscripten/emscripten_fetch_worker.js create mode 100644 venv/lib/python3.9/site-packages/urllib3/contrib/emscripten/fetch.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/contrib/emscripten/request.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/contrib/emscripten/response.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/contrib/pyopenssl.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/contrib/socks.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/fields.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/filepost.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/http2/__init__.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/http2/connection.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/http2/probe.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/poolmanager.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/py.typed create mode 100644 venv/lib/python3.9/site-packages/urllib3/response.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/__init__.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/connection.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/proxy.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/request.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/response.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/retry.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/ssl_.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/ssl_match_hostname.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/ssltransport.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/timeout.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/url.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/util.py create mode 100644 venv/lib/python3.9/site-packages/urllib3/util/wait.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug-3.1.8.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/werkzeug-3.1.8.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/werkzeug-3.1.8.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/werkzeug-3.1.8.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/werkzeug-3.1.8.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/werkzeug-3.1.8.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/werkzeug/__init__.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/_internal.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/_reloader.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/__init__.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/accept.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/auth.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/cache_control.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/csp.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/etag.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/file_storage.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/headers.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/mixins.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/range.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/datastructures/structures.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/__init__.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/console.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/repr.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/shared/ICON_LICENSE.md create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/shared/console.png create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/shared/debugger.js create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/shared/less.png create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/shared/more.png create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/shared/style.css create mode 100644 venv/lib/python3.9/site-packages/werkzeug/debug/tbtools.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/formparser.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/http.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/local.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/middleware/__init__.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/middleware/dispatcher.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/middleware/http_proxy.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/middleware/lint.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/middleware/profiler.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/middleware/proxy_fix.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/middleware/shared_data.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/py.typed create mode 100644 venv/lib/python3.9/site-packages/werkzeug/routing/__init__.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/routing/converters.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/routing/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/routing/map.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/routing/matcher.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/routing/rules.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/sansio/__init__.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/sansio/http.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/sansio/multipart.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/sansio/request.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/sansio/response.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/sansio/utils.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/security.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/serving.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/test.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/testapp.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/urls.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/user_agent.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/utils.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/wrappers/__init__.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/wrappers/request.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/wrappers/response.py create mode 100644 venv/lib/python3.9/site-packages/werkzeug/wsgi.py create mode 100644 venv/lib/python3.9/site-packages/wheel-0.47.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/wheel-0.47.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/wheel-0.47.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/wheel-0.47.0.dist-info/REQUESTED create mode 100644 venv/lib/python3.9/site-packages/wheel-0.47.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/wheel-0.47.0.dist-info/entry_points.txt create mode 100644 venv/lib/python3.9/site-packages/wheel-0.47.0.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/wheel/__init__.py create mode 100644 venv/lib/python3.9/site-packages/wheel/__main__.py create mode 100644 venv/lib/python3.9/site-packages/wheel/_bdist_wheel.py create mode 100644 venv/lib/python3.9/site-packages/wheel/_commands/__init__.py create mode 100644 venv/lib/python3.9/site-packages/wheel/_commands/convert.py create mode 100644 venv/lib/python3.9/site-packages/wheel/_commands/info.py create mode 100644 venv/lib/python3.9/site-packages/wheel/_commands/pack.py create mode 100644 venv/lib/python3.9/site-packages/wheel/_commands/tags.py create mode 100644 venv/lib/python3.9/site-packages/wheel/_commands/unpack.py create mode 100644 venv/lib/python3.9/site-packages/wheel/_metadata.py create mode 100644 venv/lib/python3.9/site-packages/wheel/_setuptools_logging.py create mode 100644 venv/lib/python3.9/site-packages/wheel/bdist_wheel.py create mode 100644 venv/lib/python3.9/site-packages/wheel/macosx_libfile.py create mode 100644 venv/lib/python3.9/site-packages/wheel/metadata.py create mode 100644 venv/lib/python3.9/site-packages/wheel/wheelfile.py create mode 100644 venv/lib/python3.9/site-packages/wsproto-1.2.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/wsproto-1.2.0.dist-info/LICENSE create mode 100644 venv/lib/python3.9/site-packages/wsproto-1.2.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/wsproto-1.2.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/wsproto-1.2.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/wsproto-1.2.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/wsproto/__init__.py create mode 100644 venv/lib/python3.9/site-packages/wsproto/connection.py create mode 100644 venv/lib/python3.9/site-packages/wsproto/events.py create mode 100644 venv/lib/python3.9/site-packages/wsproto/extensions.py create mode 100644 venv/lib/python3.9/site-packages/wsproto/frame_protocol.py create mode 100644 venv/lib/python3.9/site-packages/wsproto/handshake.py create mode 100644 venv/lib/python3.9/site-packages/wsproto/py.typed create mode 100644 venv/lib/python3.9/site-packages/wsproto/typing.py create mode 100644 venv/lib/python3.9/site-packages/wsproto/utilities.py create mode 100644 venv/lib/python3.9/site-packages/yarl-1.22.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/yarl-1.22.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/yarl-1.22.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/yarl-1.22.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/yarl-1.22.0.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/yarl-1.22.0.dist-info/licenses/NOTICE create mode 100644 venv/lib/python3.9/site-packages/yarl-1.22.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/yarl/__init__.py create mode 100644 venv/lib/python3.9/site-packages/yarl/_parse.py create mode 100644 venv/lib/python3.9/site-packages/yarl/_path.py create mode 100644 venv/lib/python3.9/site-packages/yarl/_query.py create mode 100644 venv/lib/python3.9/site-packages/yarl/_quoters.py create mode 100644 venv/lib/python3.9/site-packages/yarl/_quoting.py create mode 100755 venv/lib/python3.9/site-packages/yarl/_quoting_c.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/yarl/_quoting_c.pyx create mode 100644 venv/lib/python3.9/site-packages/yarl/_quoting_py.py create mode 100644 venv/lib/python3.9/site-packages/yarl/_url.py create mode 100644 venv/lib/python3.9/site-packages/yarl/py.typed create mode 100644 venv/lib/python3.9/site-packages/zipp-3.23.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/zipp-3.23.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/zipp-3.23.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/zipp-3.23.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/zipp-3.23.1.dist-info/licenses/LICENSE create mode 100644 venv/lib/python3.9/site-packages/zipp-3.23.1.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/zipp/__init__.py create mode 100644 venv/lib/python3.9/site-packages/zipp/_functools.py create mode 100644 venv/lib/python3.9/site-packages/zipp/compat/__init__.py create mode 100644 venv/lib/python3.9/site-packages/zipp/compat/overlay.py create mode 100644 venv/lib/python3.9/site-packages/zipp/compat/py310.py create mode 100644 venv/lib/python3.9/site-packages/zipp/compat/py313.py create mode 100644 venv/lib/python3.9/site-packages/zipp/glob.py create mode 100644 venv/lib/python3.9/site-packages/zope/event/__init__.py create mode 100644 venv/lib/python3.9/site-packages/zope/event/classhandler.py create mode 100644 venv/lib/python3.9/site-packages/zope/event/tests.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/__init__.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/_compat.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/_flatten.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/_zope_interface_coptimizations.c create mode 100755 venv/lib/python3.9/site-packages/zope/interface/_zope_interface_coptimizations.cpython-39-x86_64-linux-gnu.so create mode 100644 venv/lib/python3.9/site-packages/zope/interface/adapter.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/advice.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/__init__.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/builtins.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/collections.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/idatetime.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/interfaces.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/io.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/mapping.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/numbers.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/sequence.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/tests/__init__.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/tests/basemapping.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/tests/test_builtins.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/tests/test_collections.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/tests/test_idatetime.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/tests/test_import_interfaces.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/tests/test_io.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/common/tests/test_numbers.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/declarations.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/document.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/exceptions.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/interface.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/interfaces.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/registry.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/ro.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/__init__.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/advisory_testing.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/dummy.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/idummy.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/m1.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/odd.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_adapter.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_advice.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_compile_flags.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_declarations.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_document.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_element.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_exceptions.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_interface.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_interfaces.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_odd_declarations.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_registry.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_ro.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_sorting.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/tests/test_verify.py create mode 100644 venv/lib/python3.9/site-packages/zope/interface/verify.py create mode 100644 venv/lib/python3.9/site-packages/zope_event-6.0.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/zope_event-6.0.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/zope_event-6.0.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/zope_event-6.0.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/zope_event-6.0.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/zope_event-6.0.dist-info/top_level.txt create mode 100644 venv/lib/python3.9/site-packages/zope_interface-8.0.1.dist-info/INSTALLER create mode 100644 venv/lib/python3.9/site-packages/zope_interface-8.0.1.dist-info/METADATA create mode 100644 venv/lib/python3.9/site-packages/zope_interface-8.0.1.dist-info/RECORD create mode 100644 venv/lib/python3.9/site-packages/zope_interface-8.0.1.dist-info/WHEEL create mode 100644 venv/lib/python3.9/site-packages/zope_interface-8.0.1.dist-info/licenses/LICENSE.txt create mode 100644 venv/lib/python3.9/site-packages/zope_interface-8.0.1.dist-info/top_level.txt create mode 120000 venv/lib64 create mode 100644 venv/pyvenv.cfg create mode 100644 venv/share/python-wheels/CacheControl-0.12.6-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/appdirs-1.4.4-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/certifi-2020.6.20-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/chardet-4.0.0-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/colorama-0.4.4-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/contextlib2-0.6.0.post1-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/distlib-0.3.1-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/distro-1.5.0-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/html5lib-1.1-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/idna-2.10-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/ipaddr-2.2.0-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/msgpack-1.0.0-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/packaging-20.9-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/pep517-0.9.1-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/pip-20.3.4-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/progress-1.5-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/pyparsing-2.4.7-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/requests-2.25.1-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/resolvelib-0.5.4-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/retrying-1.3.3-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/setuptools-44.1.1-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/six-1.16.0-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/toml-0.10.1-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/urllib3-1.26.5-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/webencodings-0.5.1-py2.py3-none-any.whl create mode 100644 venv/share/python-wheels/wheel-0.34.2-py2.py3-none-any.whl diff --git a/templates/index.html b/templates/index.html index 8c71dba..7643fcf 100644 --- a/templates/index.html +++ b/templates/index.html @@ -653,9 +653,9 @@ ${t('warnDaemon')} - ${canControl ? ` +
diff --git a/venv/bin/Activate.ps1 b/venv/bin/Activate.ps1 new file mode 100644 index 0000000..2fb3852 --- /dev/null +++ b/venv/bin/Activate.ps1 @@ -0,0 +1,241 @@ +<# +.Synopsis +Activate a Python virtual environment for the current PowerShell session. + +.Description +Pushes the python executable for a virtual environment to the front of the +$Env:PATH environment variable and sets the prompt to signify that you are +in a Python virtual environment. Makes use of the command line switches as +well as the `pyvenv.cfg` file values present in the virtual environment. + +.Parameter VenvDir +Path to the directory that contains the virtual environment to activate. The +default value for this is the parent of the directory that the Activate.ps1 +script is located within. + +.Parameter Prompt +The prompt prefix to display when this virtual environment is activated. By +default, this prompt is the name of the virtual environment folder (VenvDir) +surrounded by parentheses and followed by a single space (ie. '(.venv) '). + +.Example +Activate.ps1 +Activates the Python virtual environment that contains the Activate.ps1 script. + +.Example +Activate.ps1 -Verbose +Activates the Python virtual environment that contains the Activate.ps1 script, +and shows extra information about the activation as it executes. + +.Example +Activate.ps1 -VenvDir C:\Users\MyUser\Common\.venv +Activates the Python virtual environment located in the specified location. + +.Example +Activate.ps1 -Prompt "MyPython" +Activates the Python virtual environment that contains the Activate.ps1 script, +and prefixes the current prompt with the specified string (surrounded in +parentheses) while the virtual environment is active. + +.Notes +On Windows, it may be required to enable this Activate.ps1 script by setting the +execution policy for the user. You can do this by issuing the following PowerShell +command: + +PS C:\> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser + +For more information on Execution Policies: +https://go.microsoft.com/fwlink/?LinkID=135170 + +#> +Param( + [Parameter(Mandatory = $false)] + [String] + $VenvDir, + [Parameter(Mandatory = $false)] + [String] + $Prompt +) + +<# Function declarations --------------------------------------------------- #> + +<# +.Synopsis +Remove all shell session elements added by the Activate script, including the +addition of the virtual environment's Python executable from the beginning of +the PATH variable. + +.Parameter NonDestructive +If present, do not remove this function from the global namespace for the +session. + +#> +function global:deactivate ([switch]$NonDestructive) { + # Revert to original values + + # The prior prompt: + if (Test-Path -Path Function:_OLD_VIRTUAL_PROMPT) { + Copy-Item -Path Function:_OLD_VIRTUAL_PROMPT -Destination Function:prompt + Remove-Item -Path Function:_OLD_VIRTUAL_PROMPT + } + + # The prior PYTHONHOME: + if (Test-Path -Path Env:_OLD_VIRTUAL_PYTHONHOME) { + Copy-Item -Path Env:_OLD_VIRTUAL_PYTHONHOME -Destination Env:PYTHONHOME + Remove-Item -Path Env:_OLD_VIRTUAL_PYTHONHOME + } + + # The prior PATH: + if (Test-Path -Path Env:_OLD_VIRTUAL_PATH) { + Copy-Item -Path Env:_OLD_VIRTUAL_PATH -Destination Env:PATH + Remove-Item -Path Env:_OLD_VIRTUAL_PATH + } + + # Just remove the VIRTUAL_ENV altogether: + if (Test-Path -Path Env:VIRTUAL_ENV) { + Remove-Item -Path env:VIRTUAL_ENV + } + + # Just remove the _PYTHON_VENV_PROMPT_PREFIX altogether: + if (Get-Variable -Name "_PYTHON_VENV_PROMPT_PREFIX" -ErrorAction SilentlyContinue) { + Remove-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Scope Global -Force + } + + # Leave deactivate function in the global namespace if requested: + if (-not $NonDestructive) { + Remove-Item -Path function:deactivate + } +} + +<# +.Description +Get-PyVenvConfig parses the values from the pyvenv.cfg file located in the +given folder, and returns them in a map. + +For each line in the pyvenv.cfg file, if that line can be parsed into exactly +two strings separated by `=` (with any amount of whitespace surrounding the =) +then it is considered a `key = value` line. The left hand string is the key, +the right hand is the value. + +If the value starts with a `'` or a `"` then the first and last character is +stripped from the value before being captured. + +.Parameter ConfigDir +Path to the directory that contains the `pyvenv.cfg` file. +#> +function Get-PyVenvConfig( + [String] + $ConfigDir +) { + Write-Verbose "Given ConfigDir=$ConfigDir, obtain values in pyvenv.cfg" + + # Ensure the file exists, and issue a warning if it doesn't (but still allow the function to continue). + $pyvenvConfigPath = Join-Path -Resolve -Path $ConfigDir -ChildPath 'pyvenv.cfg' -ErrorAction Continue + + # An empty map will be returned if no config file is found. + $pyvenvConfig = @{ } + + if ($pyvenvConfigPath) { + + Write-Verbose "File exists, parse `key = value` lines" + $pyvenvConfigContent = Get-Content -Path $pyvenvConfigPath + + $pyvenvConfigContent | ForEach-Object { + $keyval = $PSItem -split "\s*=\s*", 2 + if ($keyval[0] -and $keyval[1]) { + $val = $keyval[1] + + # Remove extraneous quotations around a string value. + if ("'""".Contains($val.Substring(0, 1))) { + $val = $val.Substring(1, $val.Length - 2) + } + + $pyvenvConfig[$keyval[0]] = $val + Write-Verbose "Adding Key: '$($keyval[0])'='$val'" + } + } + } + return $pyvenvConfig +} + + +<# Begin Activate script --------------------------------------------------- #> + +# Determine the containing directory of this script +$VenvExecPath = Split-Path -Parent $MyInvocation.MyCommand.Definition +$VenvExecDir = Get-Item -Path $VenvExecPath + +Write-Verbose "Activation script is located in path: '$VenvExecPath'" +Write-Verbose "VenvExecDir Fullname: '$($VenvExecDir.FullName)" +Write-Verbose "VenvExecDir Name: '$($VenvExecDir.Name)" + +# Set values required in priority: CmdLine, ConfigFile, Default +# First, get the location of the virtual environment, it might not be +# VenvExecDir if specified on the command line. +if ($VenvDir) { + Write-Verbose "VenvDir given as parameter, using '$VenvDir' to determine values" +} +else { + Write-Verbose "VenvDir not given as a parameter, using parent directory name as VenvDir." + $VenvDir = $VenvExecDir.Parent.FullName.TrimEnd("\\/") + Write-Verbose "VenvDir=$VenvDir" +} + +# Next, read the `pyvenv.cfg` file to determine any required value such +# as `prompt`. +$pyvenvCfg = Get-PyVenvConfig -ConfigDir $VenvDir + +# Next, set the prompt from the command line, or the config file, or +# just use the name of the virtual environment folder. +if ($Prompt) { + Write-Verbose "Prompt specified as argument, using '$Prompt'" +} +else { + Write-Verbose "Prompt not specified as argument to script, checking pyvenv.cfg value" + if ($pyvenvCfg -and $pyvenvCfg['prompt']) { + Write-Verbose " Setting based on value in pyvenv.cfg='$($pyvenvCfg['prompt'])'" + $Prompt = $pyvenvCfg['prompt']; + } + else { + Write-Verbose " Setting prompt based on parent's directory's name. (Is the directory name passed to venv module when creating the virutal environment)" + Write-Verbose " Got leaf-name of $VenvDir='$(Split-Path -Path $venvDir -Leaf)'" + $Prompt = Split-Path -Path $venvDir -Leaf + } +} + +Write-Verbose "Prompt = '$Prompt'" +Write-Verbose "VenvDir='$VenvDir'" + +# Deactivate any currently active virtual environment, but leave the +# deactivate function in place. +deactivate -nondestructive + +# Now set the environment variable VIRTUAL_ENV, used by many tools to determine +# that there is an activated venv. +$env:VIRTUAL_ENV = $VenvDir + +if (-not $Env:VIRTUAL_ENV_DISABLE_PROMPT) { + + Write-Verbose "Setting prompt to '$Prompt'" + + # Set the prompt to include the env name + # Make sure _OLD_VIRTUAL_PROMPT is global + function global:_OLD_VIRTUAL_PROMPT { "" } + Copy-Item -Path function:prompt -Destination function:_OLD_VIRTUAL_PROMPT + New-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Description "Python virtual environment prompt prefix" -Scope Global -Option ReadOnly -Visibility Public -Value $Prompt + + function global:prompt { + Write-Host -NoNewline -ForegroundColor Green "($_PYTHON_VENV_PROMPT_PREFIX) " + _OLD_VIRTUAL_PROMPT + } +} + +# Clear PYTHONHOME +if (Test-Path -Path Env:PYTHONHOME) { + Copy-Item -Path Env:PYTHONHOME -Destination Env:_OLD_VIRTUAL_PYTHONHOME + Remove-Item -Path Env:PYTHONHOME +} + +# Add the venv to the PATH +Copy-Item -Path Env:PATH -Destination Env:_OLD_VIRTUAL_PATH +$Env:PATH = "$VenvExecDir$([System.IO.Path]::PathSeparator)$Env:PATH" diff --git a/venv/bin/activate b/venv/bin/activate new file mode 100644 index 0000000..0668033 --- /dev/null +++ b/venv/bin/activate @@ -0,0 +1,66 @@ +# This file must be used with "source bin/activate" *from bash* +# you cannot run it directly + +deactivate () { + # reset old environment variables + if [ -n "${_OLD_VIRTUAL_PATH:-}" ] ; then + PATH="${_OLD_VIRTUAL_PATH:-}" + export PATH + unset _OLD_VIRTUAL_PATH + fi + if [ -n "${_OLD_VIRTUAL_PYTHONHOME:-}" ] ; then + PYTHONHOME="${_OLD_VIRTUAL_PYTHONHOME:-}" + export PYTHONHOME + unset _OLD_VIRTUAL_PYTHONHOME + fi + + # This should detect bash and zsh, which have a hash command that must + # be called to get it to forget past commands. Without forgetting + # past commands the $PATH changes we made may not be respected + if [ -n "${BASH:-}" -o -n "${ZSH_VERSION:-}" ] ; then + hash -r 2> /dev/null + fi + + if [ -n "${_OLD_VIRTUAL_PS1:-}" ] ; then + PS1="${_OLD_VIRTUAL_PS1:-}" + export PS1 + unset _OLD_VIRTUAL_PS1 + fi + + unset VIRTUAL_ENV + if [ ! "${1:-}" = "nondestructive" ] ; then + # Self destruct! + unset -f deactivate + fi +} + +# unset irrelevant variables +deactivate nondestructive + +VIRTUAL_ENV=/opt/fleet-control-server/venv +export VIRTUAL_ENV + +_OLD_VIRTUAL_PATH="$PATH" +PATH="$VIRTUAL_ENV/"bin":$PATH" +export PATH + +# unset PYTHONHOME if set +# this will fail if PYTHONHOME is set to the empty string (which is bad anyway) +# could use `if (set -u; : $PYTHONHOME) ;` in bash +if [ -n "${PYTHONHOME:-}" ] ; then + _OLD_VIRTUAL_PYTHONHOME="${PYTHONHOME:-}" + unset PYTHONHOME +fi + +if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then + _OLD_VIRTUAL_PS1="${PS1:-}" + PS1='(venv) '"${PS1:-}" + export PS1 +fi + +# This should detect bash and zsh, which have a hash command that must +# be called to get it to forget past commands. Without forgetting +# past commands the $PATH changes we made may not be respected +if [ -n "${BASH:-}" -o -n "${ZSH_VERSION:-}" ] ; then + hash -r 2> /dev/null +fi diff --git a/venv/bin/activate.csh b/venv/bin/activate.csh new file mode 100644 index 0000000..1d115b9 --- /dev/null +++ b/venv/bin/activate.csh @@ -0,0 +1,25 @@ +# This file must be used with "source bin/activate.csh" *from csh*. +# You cannot run it directly. +# Created by Davide Di Blasi . +# Ported to Python 3.3 venv by Andrew Svetlov + +alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate' + +# Unset irrelevant variables. +deactivate nondestructive + +setenv VIRTUAL_ENV /opt/fleet-control-server/venv + +set _OLD_VIRTUAL_PATH="$PATH" +setenv PATH "$VIRTUAL_ENV/"bin":$PATH" + + +set _OLD_VIRTUAL_PROMPT="$prompt" + +if (! "$?VIRTUAL_ENV_DISABLE_PROMPT") then + set prompt = '(venv) '"$prompt" +endif + +alias pydoc python -m pydoc + +rehash diff --git a/venv/bin/activate.fish b/venv/bin/activate.fish new file mode 100644 index 0000000..222fe07 --- /dev/null +++ b/venv/bin/activate.fish @@ -0,0 +1,64 @@ +# This file must be used with "source /bin/activate.fish" *from fish* +# (https://fishshell.com/); you cannot run it directly. + +function deactivate -d "Exit virtual environment and return to normal shell environment" + # reset old environment variables + if test -n "$_OLD_VIRTUAL_PATH" + set -gx PATH $_OLD_VIRTUAL_PATH + set -e _OLD_VIRTUAL_PATH + end + if test -n "$_OLD_VIRTUAL_PYTHONHOME" + set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME + set -e _OLD_VIRTUAL_PYTHONHOME + end + + if test -n "$_OLD_FISH_PROMPT_OVERRIDE" + functions -e fish_prompt + set -e _OLD_FISH_PROMPT_OVERRIDE + functions -c _old_fish_prompt fish_prompt + functions -e _old_fish_prompt + end + + set -e VIRTUAL_ENV + if test "$argv[1]" != "nondestructive" + # Self-destruct! + functions -e deactivate + end +end + +# Unset irrelevant variables. +deactivate nondestructive + +set -gx VIRTUAL_ENV /opt/fleet-control-server/venv + +set -gx _OLD_VIRTUAL_PATH $PATH +set -gx PATH "$VIRTUAL_ENV/"bin $PATH + +# Unset PYTHONHOME if set. +if set -q PYTHONHOME + set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME + set -e PYTHONHOME +end + +if test -z "$VIRTUAL_ENV_DISABLE_PROMPT" + # fish uses a function instead of an env var to generate the prompt. + + # Save the current fish_prompt function as the function _old_fish_prompt. + functions -c fish_prompt _old_fish_prompt + + # With the original prompt function renamed, we can override with our own. + function fish_prompt + # Save the return status of the last command. + set -l old_status $status + + # Output the venv prompt; color taken from the blue of the Python logo. + printf "%s%s%s" (set_color 4B8BBE) '(venv) ' (set_color normal) + + # Restore the return status of the previous command. + echo "exit $old_status" | . + # Output the original/"old" prompt. + _old_fish_prompt + end + + set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV" +end diff --git a/venv/bin/flask b/venv/bin/flask new file mode 100755 index 0000000..1f16b9a --- /dev/null +++ b/venv/bin/flask @@ -0,0 +1,6 @@ +#!/opt/fleet-control-server/venv/bin/python3 +import sys +from flask.cli import main +if __name__ == '__main__': + sys.argv[0] = sys.argv[0].removesuffix('.exe') + sys.exit(main()) diff --git a/venv/bin/gunicorn b/venv/bin/gunicorn new file mode 100755 index 0000000..62d36de --- /dev/null +++ b/venv/bin/gunicorn @@ -0,0 +1,6 @@ +#!/opt/fleet-control-server/venv/bin/python3 +import sys +from gunicorn.app.wsgiapp import run +if __name__ == '__main__': + sys.argv[0] = sys.argv[0].removesuffix('.exe') + sys.exit(run()) diff --git a/venv/bin/normalizer b/venv/bin/normalizer new file mode 100755 index 0000000..bed0fb6 --- /dev/null +++ b/venv/bin/normalizer @@ -0,0 +1,6 @@ +#!/opt/fleet-control-server/venv/bin/python3 +import sys +from charset_normalizer.cli import cli_detect +if __name__ == '__main__': + sys.argv[0] = sys.argv[0].removesuffix('.exe') + sys.exit(cli_detect()) diff --git a/venv/bin/pip b/venv/bin/pip new file mode 100755 index 0000000..9b8ac59 --- /dev/null +++ b/venv/bin/pip @@ -0,0 +1,8 @@ +#!/opt/fleet-control-server/venv/bin/python3 +# -*- coding: utf-8 -*- +import re +import sys +from pip._internal.cli.main import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/pip3 b/venv/bin/pip3 new file mode 100755 index 0000000..9b8ac59 --- /dev/null +++ b/venv/bin/pip3 @@ -0,0 +1,8 @@ +#!/opt/fleet-control-server/venv/bin/python3 +# -*- coding: utf-8 -*- +import re +import sys +from pip._internal.cli.main import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/pip3.9 b/venv/bin/pip3.9 new file mode 100755 index 0000000..9b8ac59 --- /dev/null +++ b/venv/bin/pip3.9 @@ -0,0 +1,8 @@ +#!/opt/fleet-control-server/venv/bin/python3 +# -*- coding: utf-8 -*- +import re +import sys +from pip._internal.cli.main import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/bin/python b/venv/bin/python new file mode 120000 index 0000000..b8a0adb --- /dev/null +++ b/venv/bin/python @@ -0,0 +1 @@ +python3 \ No newline at end of file diff --git a/venv/bin/python3 b/venv/bin/python3 new file mode 120000 index 0000000..ae65fda --- /dev/null +++ b/venv/bin/python3 @@ -0,0 +1 @@ +/usr/bin/python3 \ No newline at end of file diff --git a/venv/bin/python3.9 b/venv/bin/python3.9 new file mode 120000 index 0000000..b8a0adb --- /dev/null +++ b/venv/bin/python3.9 @@ -0,0 +1 @@ +python3 \ No newline at end of file diff --git a/venv/bin/pywebpush b/venv/bin/pywebpush new file mode 100755 index 0000000..3b7aba6 --- /dev/null +++ b/venv/bin/pywebpush @@ -0,0 +1,6 @@ +#!/opt/fleet-control-server/venv/bin/python3 +import sys +from pywebpush.__main__ import main +if __name__ == '__main__': + sys.argv[0] = sys.argv[0].removesuffix('.exe') + sys.exit(main()) diff --git a/venv/bin/vapid b/venv/bin/vapid new file mode 100755 index 0000000..9976ce5 --- /dev/null +++ b/venv/bin/vapid @@ -0,0 +1,6 @@ +#!/opt/fleet-control-server/venv/bin/python3 +import sys +from py_vapid.main import main +if __name__ == '__main__': + sys.argv[0] = sys.argv[0].removesuffix('.exe') + sys.exit(main()) diff --git a/venv/bin/wheel b/venv/bin/wheel new file mode 100755 index 0000000..3d8d839 --- /dev/null +++ b/venv/bin/wheel @@ -0,0 +1,8 @@ +#!/opt/fleet-control-server/venv/bin/python3 +# -*- coding: utf-8 -*- +import re +import sys +from wheel._commands import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) diff --git a/venv/include/site/python3.9/greenlet/greenlet.h b/venv/include/site/python3.9/greenlet/greenlet.h new file mode 100644 index 0000000..d02a16e --- /dev/null +++ b/venv/include/site/python3.9/greenlet/greenlet.h @@ -0,0 +1,164 @@ +/* -*- indent-tabs-mode: nil; tab-width: 4; -*- */ + +/* Greenlet object interface */ + +#ifndef Py_GREENLETOBJECT_H +#define Py_GREENLETOBJECT_H + + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* This is deprecated and undocumented. It does not change. */ +#define GREENLET_VERSION "1.0.0" + +#ifndef GREENLET_MODULE +#define implementation_ptr_t void* +#endif + +typedef struct _greenlet { + PyObject_HEAD + PyObject* weakreflist; + PyObject* dict; + implementation_ptr_t pimpl; +} PyGreenlet; + +#define PyGreenlet_Check(op) (op && PyObject_TypeCheck(op, &PyGreenlet_Type)) + + +/* C API functions */ + +/* Total number of symbols that are exported */ +#define PyGreenlet_API_pointers 12 + +#define PyGreenlet_Type_NUM 0 +#define PyExc_GreenletError_NUM 1 +#define PyExc_GreenletExit_NUM 2 + +#define PyGreenlet_New_NUM 3 +#define PyGreenlet_GetCurrent_NUM 4 +#define PyGreenlet_Throw_NUM 5 +#define PyGreenlet_Switch_NUM 6 +#define PyGreenlet_SetParent_NUM 7 + +#define PyGreenlet_MAIN_NUM 8 +#define PyGreenlet_STARTED_NUM 9 +#define PyGreenlet_ACTIVE_NUM 10 +#define PyGreenlet_GET_PARENT_NUM 11 + +#ifndef GREENLET_MODULE +/* This section is used by modules that uses the greenlet C API */ +static void** _PyGreenlet_API = NULL; + +# define PyGreenlet_Type \ + (*(PyTypeObject*)_PyGreenlet_API[PyGreenlet_Type_NUM]) + +# define PyExc_GreenletError \ + ((PyObject*)_PyGreenlet_API[PyExc_GreenletError_NUM]) + +# define PyExc_GreenletExit \ + ((PyObject*)_PyGreenlet_API[PyExc_GreenletExit_NUM]) + +/* + * PyGreenlet_New(PyObject *args) + * + * greenlet.greenlet(run, parent=None) + */ +# define PyGreenlet_New \ + (*(PyGreenlet * (*)(PyObject * run, PyGreenlet * parent)) \ + _PyGreenlet_API[PyGreenlet_New_NUM]) + +/* + * PyGreenlet_GetCurrent(void) + * + * greenlet.getcurrent() + */ +# define PyGreenlet_GetCurrent \ + (*(PyGreenlet * (*)(void)) _PyGreenlet_API[PyGreenlet_GetCurrent_NUM]) + +/* + * PyGreenlet_Throw( + * PyGreenlet *greenlet, + * PyObject *typ, + * PyObject *val, + * PyObject *tb) + * + * g.throw(...) + */ +# define PyGreenlet_Throw \ + (*(PyObject * (*)(PyGreenlet * self, \ + PyObject * typ, \ + PyObject * val, \ + PyObject * tb)) \ + _PyGreenlet_API[PyGreenlet_Throw_NUM]) + +/* + * PyGreenlet_Switch(PyGreenlet *greenlet, PyObject *args) + * + * g.switch(*args, **kwargs) + */ +# define PyGreenlet_Switch \ + (*(PyObject * \ + (*)(PyGreenlet * greenlet, PyObject * args, PyObject * kwargs)) \ + _PyGreenlet_API[PyGreenlet_Switch_NUM]) + +/* + * PyGreenlet_SetParent(PyObject *greenlet, PyObject *new_parent) + * + * g.parent = new_parent + */ +# define PyGreenlet_SetParent \ + (*(int (*)(PyGreenlet * greenlet, PyGreenlet * nparent)) \ + _PyGreenlet_API[PyGreenlet_SetParent_NUM]) + +/* + * PyGreenlet_GetParent(PyObject* greenlet) + * + * return greenlet.parent; + * + * This could return NULL even if there is no exception active. + * If it does not return NULL, you are responsible for decrementing the + * reference count. + */ +# define PyGreenlet_GetParent \ + (*(PyGreenlet* (*)(PyGreenlet*)) \ + _PyGreenlet_API[PyGreenlet_GET_PARENT_NUM]) + +/* + * deprecated, undocumented alias. + */ +# define PyGreenlet_GET_PARENT PyGreenlet_GetParent + +# define PyGreenlet_MAIN \ + (*(int (*)(PyGreenlet*)) \ + _PyGreenlet_API[PyGreenlet_MAIN_NUM]) + +# define PyGreenlet_STARTED \ + (*(int (*)(PyGreenlet*)) \ + _PyGreenlet_API[PyGreenlet_STARTED_NUM]) + +# define PyGreenlet_ACTIVE \ + (*(int (*)(PyGreenlet*)) \ + _PyGreenlet_API[PyGreenlet_ACTIVE_NUM]) + + + + +/* Macro that imports greenlet and initializes C API */ +/* NOTE: This has actually moved to ``greenlet._greenlet._C_API``, but we + keep the older definition to be sure older code that might have a copy of + the header still works. */ +# define PyGreenlet_Import() \ + { \ + _PyGreenlet_API = (void**)PyCapsule_Import("greenlet._C_API", 0); \ + } + +#endif /* GREENLET_MODULE */ + +#ifdef __cplusplus +} +#endif +#endif /* !Py_GREENLETOBJECT_H */ diff --git a/venv/lib/python3.9/site-packages/81d243bd2c585b0f4821__mypyc.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/81d243bd2c585b0f4821__mypyc.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..d914c9ef68c40e3ec97a24b2e5fca29d498024f6 GIT binary patch literal 410832 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

F>riyWaww97 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%0AMs_9y#DzxqGfNB&p;r25Ey^-p^r=~w@x``ABQ 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


W+H6-pXGh1mbfiPp0m6Q) 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ⅆBJa>ey=VKJXpv{KOEy1H2#nt#&@* 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 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/_distutils_hack/__init__.py b/venv/lib/python3.9/site-packages/_distutils_hack/__init__.py new file mode 100644 index 0000000..94f71b9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/_distutils_hack/__init__.py @@ -0,0 +1,239 @@ +# don't import any costly modules +import os +import sys + +report_url = ( + "https://github.com/pypa/setuptools/issues/new?template=distutils-deprecation.yml" +) + + +def warn_distutils_present(): + if 'distutils' not in sys.modules: + return + import warnings + + warnings.warn( + "Distutils was imported before Setuptools, but importing Setuptools " + "also replaces the `distutils` module in `sys.modules`. This may lead " + "to undesirable behaviors or errors. To avoid these issues, avoid " + "using distutils directly, ensure that setuptools is installed in the " + "traditional way (e.g. not an editable install), and/or make sure " + "that setuptools is always imported before distutils." + ) + + +def clear_distutils(): + if 'distutils' not in sys.modules: + return + import warnings + + warnings.warn( + "Setuptools is replacing distutils. Support for replacing " + "an already imported distutils is deprecated. In the future, " + "this condition will fail. " + f"Register concerns at {report_url}" + ) + mods = [ + name + for name in sys.modules + if name == "distutils" or name.startswith("distutils.") + ] + for name in mods: + del sys.modules[name] + + +def enabled(): + """ + Allow selection of distutils by environment variable. + """ + which = os.environ.get('SETUPTOOLS_USE_DISTUTILS', 'local') + if which == 'stdlib': + import warnings + + warnings.warn( + "Reliance on distutils from stdlib is deprecated. Users " + "must rely on setuptools to provide the distutils module. " + "Avoid importing distutils or import setuptools first, " + "and avoid setting SETUPTOOLS_USE_DISTUTILS=stdlib. " + f"Register concerns at {report_url}" + ) + return which == 'local' + + +def ensure_local_distutils(): + import importlib + + clear_distutils() + + # With the DistutilsMetaFinder in place, + # perform an import to cause distutils to be + # loaded from setuptools._distutils. Ref #2906. + with shim(): + importlib.import_module('distutils') + + # check that submodules load as expected + core = importlib.import_module('distutils.core') + assert '_distutils' in core.__file__, core.__file__ + assert 'setuptools._distutils.log' not in sys.modules + + +def do_override(): + """ + Ensure that the local copy of distutils is preferred over stdlib. + + See https://github.com/pypa/setuptools/issues/417#issuecomment-392298401 + for more motivation. + """ + if enabled(): + warn_distutils_present() + ensure_local_distutils() + + +class _TrivialRe: + def __init__(self, *patterns) -> None: + self._patterns = patterns + + def match(self, string): + return all(pat in string for pat in self._patterns) + + +class DistutilsMetaFinder: + def find_spec(self, fullname, path, target=None): + # optimization: only consider top level modules and those + # found in the CPython test suite. + if path is not None and not fullname.startswith('test.'): + return None + + method_name = 'spec_for_{fullname}'.format(**locals()) + method = getattr(self, method_name, lambda: None) + return method() + + def spec_for_distutils(self): + if self.is_cpython(): + return None + + import importlib + import importlib.abc + import importlib.util + + try: + mod = importlib.import_module('setuptools._distutils') + except Exception: + # There are a couple of cases where setuptools._distutils + # may not be present: + # - An older Setuptools without a local distutils is + # taking precedence. Ref #2957. + # - Path manipulation during sitecustomize removes + # setuptools from the path but only after the hook + # has been loaded. Ref #2980. + # In either case, fall back to stdlib behavior. + return None + + class DistutilsLoader(importlib.abc.Loader): + def create_module(self, spec): + mod.__name__ = 'distutils' + return mod + + def exec_module(self, module): + pass + + return importlib.util.spec_from_loader( + 'distutils', DistutilsLoader(), origin=mod.__file__ + ) + + @staticmethod + def is_cpython(): + """ + Suppress supplying distutils for CPython (build and tests). + Ref #2965 and #3007. + """ + return os.path.isfile('pybuilddir.txt') + + def spec_for_pip(self): + """ + Ensure stdlib distutils when running under pip. + See pypa/pip#8761 for rationale. + """ + if sys.version_info >= (3, 12) or self.pip_imported_during_build(): + return + clear_distutils() + self.spec_for_distutils = lambda: None + + @classmethod + def pip_imported_during_build(cls): + """ + Detect if pip is being imported in a build script. Ref #2355. + """ + import traceback + + return any( + cls.frame_file_is_setup(frame) for frame, line in traceback.walk_stack(None) + ) + + @staticmethod + def frame_file_is_setup(frame): + """ + Return True if the indicated frame suggests a setup.py file. + """ + # some frames may not have __file__ (#2940) + return frame.f_globals.get('__file__', '').endswith('setup.py') + + def spec_for_sensitive_tests(self): + """ + Ensure stdlib distutils when running select tests under CPython. + + python/cpython#91169 + """ + clear_distutils() + self.spec_for_distutils = lambda: None + + sensitive_tests = ( + [ + 'test.test_distutils', + 'test.test_peg_generator', + 'test.test_importlib', + ] + if sys.version_info < (3, 10) + else [ + 'test.test_distutils', + ] + ) + + +for name in DistutilsMetaFinder.sensitive_tests: + setattr( + DistutilsMetaFinder, + f'spec_for_{name}', + DistutilsMetaFinder.spec_for_sensitive_tests, + ) + + +DISTUTILS_FINDER = DistutilsMetaFinder() + + +def add_shim(): + DISTUTILS_FINDER in sys.meta_path or insert_shim() + + +class shim: + def __enter__(self) -> None: + insert_shim() + + def __exit__(self, exc: object, value: object, tb: object) -> None: + _remove_shim() + + +def insert_shim(): + sys.meta_path.insert(0, DISTUTILS_FINDER) + + +def _remove_shim(): + try: + sys.meta_path.remove(DISTUTILS_FINDER) + except ValueError: + pass + + +if sys.version_info < (3, 12): + # DistutilsMetaFinder can only be disabled in Python < 3.12 (PEP 632) + remove_shim = _remove_shim diff --git a/venv/lib/python3.9/site-packages/_distutils_hack/override.py b/venv/lib/python3.9/site-packages/_distutils_hack/override.py new file mode 100644 index 0000000..2cc433a --- /dev/null +++ b/venv/lib/python3.9/site-packages/_distutils_hack/override.py @@ -0,0 +1 @@ +__import__('_distutils_hack').do_override() diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/LICENSE b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/LICENSE new file mode 100644 index 0000000..f26bcf4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/LICENSE @@ -0,0 +1,279 @@ +A. HISTORY OF THE SOFTWARE +========================== + +Python was created in the early 1990s by Guido van Rossum at Stichting +Mathematisch Centrum (CWI, see https://www.cwi.nl) in the Netherlands +as a successor of a language called ABC. Guido remains Python's +principal author, although it includes many contributions from others. + +In 1995, Guido continued his work on Python at the Corporation for +National Research Initiatives (CNRI, see https://www.cnri.reston.va.us) +in Reston, Virginia where he released several versions of the +software. + +In May 2000, Guido and the Python core development team moved to +BeOpen.com to form the BeOpen PythonLabs team. In October of the same +year, the PythonLabs team moved to Digital Creations, which became +Zope Corporation. In 2001, the Python Software Foundation (PSF, see +https://www.python.org/psf/) was formed, a non-profit organization +created specifically to own Python-related Intellectual Property. +Zope Corporation was a sponsoring member of the PSF. + +All Python releases are Open Source (see https://opensource.org for +the Open Source Definition). Historically, most, but not all, Python +releases have also been GPL-compatible; the table below summarizes +the various releases. + + Release Derived Year Owner GPL- + from compatible? (1) + + 0.9.0 thru 1.2 1991-1995 CWI yes + 1.3 thru 1.5.2 1.2 1995-1999 CNRI yes + 1.6 1.5.2 2000 CNRI no + 2.0 1.6 2000 BeOpen.com no + 1.6.1 1.6 2001 CNRI yes (2) + 2.1 2.0+1.6.1 2001 PSF no + 2.0.1 2.0+1.6.1 2001 PSF yes + 2.1.1 2.1+2.0.1 2001 PSF yes + 2.1.2 2.1.1 2002 PSF yes + 2.1.3 2.1.2 2002 PSF yes + 2.2 and above 2.1.1 2001-now PSF yes + +Footnotes: + +(1) GPL-compatible doesn't mean that we're distributing Python under + the GPL. All Python licenses, unlike the GPL, let you distribute + a modified version without making your changes open source. The + GPL-compatible licenses make it possible to combine Python with + other software that is released under the GPL; the others don't. + +(2) According to Richard Stallman, 1.6.1 is not GPL-compatible, + because its license has a choice of law clause. According to + CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1 + is "not incompatible" with the GPL. + +Thanks to the many outside volunteers who have worked under Guido's +direction to make these releases possible. + + +B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON +=============================================================== + +Python software and documentation are licensed under the +Python Software Foundation License Version 2. + +Starting with Python 3.8.6, examples, recipes, and other code in +the documentation are dual licensed under the PSF License Version 2 +and the Zero-Clause BSD license. + +Some software incorporated into Python is under different licenses. +The licenses are listed with code falling under that license. + + +PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2 +-------------------------------------------- + +1. This LICENSE AGREEMENT is between the Python Software Foundation +("PSF"), and the Individual or Organization ("Licensee") accessing and +otherwise using this software ("Python") in source or binary form and +its associated documentation. + +2. Subject to the terms and conditions of this License Agreement, PSF hereby +grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, +analyze, test, perform and/or display publicly, prepare derivative works, +distribute, and otherwise use Python alone or in any derivative version, +provided, however, that PSF's License Agreement and PSF's notice of copyright, +i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, +2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python Software Foundation; +All Rights Reserved" are retained in Python alone or in any derivative version +prepared by Licensee. + +3. In the event Licensee prepares a derivative work that is based on +or incorporates Python or any part thereof, and wants to make +the derivative work available to others as provided herein, then +Licensee hereby agrees to include in any such work a brief summary of +the changes made to Python. + +4. PSF is making Python available to Licensee on an "AS IS" +basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON +FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS +A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, +OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +6. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +7. Nothing in this License Agreement shall be deemed to create any +relationship of agency, partnership, or joint venture between PSF and +Licensee. This License Agreement does not grant permission to use PSF +trademarks or trade name in a trademark sense to endorse or promote +products or services of Licensee, or any third party. + +8. By copying, installing or otherwise using Python, Licensee +agrees to be bound by the terms and conditions of this License +Agreement. + + +BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0 +------------------------------------------- + +BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1 + +1. This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an +office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the +Individual or Organization ("Licensee") accessing and otherwise using +this software in source or binary form and its associated +documentation ("the Software"). + +2. Subject to the terms and conditions of this BeOpen Python License +Agreement, BeOpen hereby grants Licensee a non-exclusive, +royalty-free, world-wide license to reproduce, analyze, test, perform +and/or display publicly, prepare derivative works, distribute, and +otherwise use the Software alone or in any derivative version, +provided, however, that the BeOpen Python License is retained in the +Software, alone or in any derivative version prepared by Licensee. + +3. BeOpen is making the Software available to Licensee on an "AS IS" +basis. BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +4. BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE +SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS +AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY +DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +5. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +6. This License Agreement shall be governed by and interpreted in all +respects by the law of the State of California, excluding conflict of +law provisions. Nothing in this License Agreement shall be deemed to +create any relationship of agency, partnership, or joint venture +between BeOpen and Licensee. This License Agreement does not grant +permission to use BeOpen trademarks or trade names in a trademark +sense to endorse or promote products or services of Licensee, or any +third party. As an exception, the "BeOpen Python" logos available at +http://www.pythonlabs.com/logos.html may be used according to the +permissions granted on that web page. + +7. By copying, installing or otherwise using the software, Licensee +agrees to be bound by the terms and conditions of this License +Agreement. + + +CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1 +--------------------------------------- + +1. This LICENSE AGREEMENT is between the Corporation for National +Research Initiatives, having an office at 1895 Preston White Drive, +Reston, VA 20191 ("CNRI"), and the Individual or Organization +("Licensee") accessing and otherwise using Python 1.6.1 software in +source or binary form and its associated documentation. + +2. Subject to the terms and conditions of this License Agreement, CNRI +hereby grants Licensee a nonexclusive, royalty-free, world-wide +license to reproduce, analyze, test, perform and/or display publicly, +prepare derivative works, distribute, and otherwise use Python 1.6.1 +alone or in any derivative version, provided, however, that CNRI's +License Agreement and CNRI's notice of copyright, i.e., "Copyright (c) +1995-2001 Corporation for National Research Initiatives; All Rights +Reserved" are retained in Python 1.6.1 alone or in any derivative +version prepared by Licensee. Alternately, in lieu of CNRI's License +Agreement, Licensee may substitute the following text (omitting the +quotes): "Python 1.6.1 is made available subject to the terms and +conditions in CNRI's License Agreement. This Agreement together with +Python 1.6.1 may be located on the internet using the following +unique, persistent identifier (known as a handle): 1895.22/1013. This +Agreement may also be obtained from a proxy server on the internet +using the following URL: http://hdl.handle.net/1895.22/1013". + +3. In the event Licensee prepares a derivative work that is based on +or incorporates Python 1.6.1 or any part thereof, and wants to make +the derivative work available to others as provided herein, then +Licensee hereby agrees to include in any such work a brief summary of +the changes made to Python 1.6.1. + +4. CNRI is making Python 1.6.1 available to Licensee on an "AS IS" +basis. CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON +1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS +A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1, +OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +6. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +7. This License Agreement shall be governed by the federal +intellectual property law of the United States, including without +limitation the federal copyright law, and, to the extent such +U.S. federal law does not apply, by the law of the Commonwealth of +Virginia, excluding Virginia's conflict of law provisions. +Notwithstanding the foregoing, with regard to derivative works based +on Python 1.6.1 that incorporate non-separable material that was +previously distributed under the GNU General Public License (GPL), the +law of the Commonwealth of Virginia shall govern this License +Agreement only as to issues arising under or with respect to +Paragraphs 4, 5, and 7 of this License Agreement. Nothing in this +License Agreement shall be deemed to create any relationship of +agency, partnership, or joint venture between CNRI and Licensee. This +License Agreement does not grant permission to use CNRI trademarks or +trade name in a trademark sense to endorse or promote products or +services of Licensee, or any third party. + +8. By clicking on the "ACCEPT" button where indicated, or by copying, +installing or otherwise using Python 1.6.1, Licensee agrees to be +bound by the terms and conditions of this License Agreement. + + ACCEPT + + +CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2 +-------------------------------------------------- + +Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, +The Netherlands. All rights reserved. + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation, and that the name of Stichting Mathematisch +Centrum or CWI not be used in advertising or publicity pertaining to +distribution of the software without specific, written prior +permission. + +STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO +THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE +FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +ZERO-CLAUSE BSD LICENSE FOR CODE IN THE PYTHON DOCUMENTATION +---------------------------------------------------------------------- + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/METADATA b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/METADATA new file mode 100644 index 0000000..c632040 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/METADATA @@ -0,0 +1,123 @@ +Metadata-Version: 2.3 +Name: aiohappyeyeballs +Version: 2.6.1 +Summary: Happy Eyeballs for asyncio +License: PSF-2.0 +Author: J. Nick Koston +Author-email: nick@koston.org +Requires-Python: >=3.9 +Classifier: Development Status :: 5 - Production/Stable +Classifier: Intended Audience :: Developers +Classifier: Natural Language :: English +Classifier: Operating System :: OS Independent +Classifier: Topic :: Software Development :: Libraries +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: License :: OSI Approved :: Python Software Foundation License +Project-URL: Bug Tracker, https://github.com/aio-libs/aiohappyeyeballs/issues +Project-URL: Changelog, https://github.com/aio-libs/aiohappyeyeballs/blob/main/CHANGELOG.md +Project-URL: Documentation, https://aiohappyeyeballs.readthedocs.io +Project-URL: Repository, https://github.com/aio-libs/aiohappyeyeballs +Description-Content-Type: text/markdown + +# aiohappyeyeballs + + +

+ + Poetry + + + Ruff + + + pre-commit + +

+

+ + PyPI Version + + Supported Python versions + License +

+ +--- + +**Documentation**: https://aiohappyeyeballs.readthedocs.io + +**Source Code**: https://github.com/aio-libs/aiohappyeyeballs + +--- + +[Happy Eyeballs](https://en.wikipedia.org/wiki/Happy_Eyeballs) +([RFC 8305](https://www.rfc-editor.org/rfc/rfc8305.html)) + +## Use case + +This library exists to allow connecting with +[Happy Eyeballs](https://en.wikipedia.org/wiki/Happy_Eyeballs) +([RFC 8305](https://www.rfc-editor.org/rfc/rfc8305.html)) +when you +already have a list of addrinfo and not a DNS name. + +The stdlib version of `loop.create_connection()` +will only work when you pass in an unresolved name which +is not a good fit when using DNS caching or resolving +names via another method such as `zeroconf`. + +## Installation + +Install this via pip (or your favourite package manager): + +`pip install aiohappyeyeballs` + +## License + +[aiohappyeyeballs is licensed under the same terms as cpython itself.](https://github.com/python/cpython/blob/main/LICENSE) + +## Example usage + +```python + +addr_infos = await loop.getaddrinfo("example.org", 80) + +socket = await start_connection(addr_infos) +socket = await start_connection(addr_infos, local_addr_infos=local_addr_infos, happy_eyeballs_delay=0.2) + +transport, protocol = await loop.create_connection( + MyProtocol, sock=socket, ...) + +# Remove the first address for each family from addr_info +pop_addr_infos_interleave(addr_info, 1) + +# Remove all matching address from addr_info +remove_addr_infos(addr_info, "dead::beef::") + +# Convert a local_addr to local_addr_infos +local_addr_infos = addr_to_addr_infos(("127.0.0.1",0)) +``` + +## Credits + +This package contains code from cpython and is licensed under the same terms as cpython itself. + +This package was created with +[Copier](https://copier.readthedocs.io/) and the +[browniebroke/pypackage-template](https://github.com/browniebroke/pypackage-template) +project template. + diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/RECORD b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/RECORD new file mode 100644 index 0000000..a3cc012 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/RECORD @@ -0,0 +1,16 @@ +aiohappyeyeballs-2.6.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +aiohappyeyeballs-2.6.1.dist-info/LICENSE,sha256=Oy-B_iHRgcSZxZolbI4ZaEVdZonSaaqFNzv7avQdo78,13936 +aiohappyeyeballs-2.6.1.dist-info/METADATA,sha256=NSXlhJwAfi380eEjAo7BQ4P_TVal9xi0qkyZWibMsVM,5915 +aiohappyeyeballs-2.6.1.dist-info/RECORD,, +aiohappyeyeballs-2.6.1.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88 +aiohappyeyeballs/__init__.py,sha256=x7kktHEtaD9quBcWDJPuLeKyjuVAI-Jj14S9B_5hcTs,361 +aiohappyeyeballs/__pycache__/__init__.cpython-39.pyc,, +aiohappyeyeballs/__pycache__/_staggered.cpython-39.pyc,, +aiohappyeyeballs/__pycache__/impl.cpython-39.pyc,, +aiohappyeyeballs/__pycache__/types.cpython-39.pyc,, +aiohappyeyeballs/__pycache__/utils.cpython-39.pyc,, +aiohappyeyeballs/_staggered.py,sha256=edfVowFx-P-ywJjIEF3MdPtEMVODujV6CeMYr65otac,6900 +aiohappyeyeballs/impl.py,sha256=Dlcm2mTJ28ucrGnxkb_fo9CZzLAkOOBizOt7dreBbXE,9681 +aiohappyeyeballs/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +aiohappyeyeballs/types.py,sha256=YZJIAnyoV4Dz0WFtlaf_OyE4EW7Xus1z7aIfNI6tDDQ,425 +aiohappyeyeballs/utils.py,sha256=on9GxIR0LhEfZu8P6Twi9hepX9zDanuZM20MWsb3xlQ,3028 diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/WHEEL b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/WHEEL new file mode 100644 index 0000000..0582547 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs-2.6.1.dist-info/WHEEL @@ -0,0 +1,4 @@ +Wheel-Version: 1.0 +Generator: poetry-core 2.1.1 +Root-Is-Purelib: true +Tag: py3-none-any diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs/__init__.py b/venv/lib/python3.9/site-packages/aiohappyeyeballs/__init__.py new file mode 100644 index 0000000..71c689c --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs/__init__.py @@ -0,0 +1,14 @@ +__version__ = "2.6.1" + +from .impl import start_connection +from .types import AddrInfoType, SocketFactoryType +from .utils import addr_to_addr_infos, pop_addr_infos_interleave, remove_addr_infos + +__all__ = ( + "AddrInfoType", + "SocketFactoryType", + "addr_to_addr_infos", + "pop_addr_infos_interleave", + "remove_addr_infos", + "start_connection", +) diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs/_staggered.py b/venv/lib/python3.9/site-packages/aiohappyeyeballs/_staggered.py new file mode 100644 index 0000000..9a4ba72 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs/_staggered.py @@ -0,0 +1,207 @@ +import asyncio +import contextlib + +# PY3.9: Import Callable from typing until we drop Python 3.9 support +# https://github.com/python/cpython/issues/87131 +from typing import ( + TYPE_CHECKING, + Any, + Awaitable, + Callable, + Iterable, + List, + Optional, + Set, + Tuple, + TypeVar, + Union, +) + +_T = TypeVar("_T") + +RE_RAISE_EXCEPTIONS = (SystemExit, KeyboardInterrupt) + + +def _set_result(wait_next: "asyncio.Future[None]") -> None: + """Set the result of a future if it is not already done.""" + if not wait_next.done(): + wait_next.set_result(None) + + +async def _wait_one( + futures: "Iterable[asyncio.Future[Any]]", + loop: asyncio.AbstractEventLoop, +) -> _T: + """Wait for the first future to complete.""" + wait_next = loop.create_future() + + def _on_completion(fut: "asyncio.Future[Any]") -> None: + if not wait_next.done(): + wait_next.set_result(fut) + + for f in futures: + f.add_done_callback(_on_completion) + + try: + return await wait_next + finally: + for f in futures: + f.remove_done_callback(_on_completion) + + +async def staggered_race( + coro_fns: Iterable[Callable[[], Awaitable[_T]]], + delay: Optional[float], + *, + loop: Optional[asyncio.AbstractEventLoop] = None, +) -> Tuple[Optional[_T], Optional[int], List[Optional[BaseException]]]: + """ + Run coroutines with staggered start times and take the first to finish. + + This method takes an iterable of coroutine functions. The first one is + started immediately. From then on, whenever the immediately preceding one + fails (raises an exception), or when *delay* seconds has passed, the next + coroutine is started. This continues until one of the coroutines complete + successfully, in which case all others are cancelled, or until all + coroutines fail. + + The coroutines provided should be well-behaved in the following way: + + * They should only ``return`` if completed successfully. + + * They should always raise an exception if they did not complete + successfully. In particular, if they handle cancellation, they should + probably reraise, like this:: + + try: + # do work + except asyncio.CancelledError: + # undo partially completed work + raise + + Args: + ---- + coro_fns: an iterable of coroutine functions, i.e. callables that + return a coroutine object when called. Use ``functools.partial`` or + lambdas to pass arguments. + + delay: amount of time, in seconds, between starting coroutines. If + ``None``, the coroutines will run sequentially. + + loop: the event loop to use. If ``None``, the running loop is used. + + Returns: + ------- + tuple *(winner_result, winner_index, exceptions)* where + + - *winner_result*: the result of the winning coroutine, or ``None`` + if no coroutines won. + + - *winner_index*: the index of the winning coroutine in + ``coro_fns``, or ``None`` if no coroutines won. If the winning + coroutine may return None on success, *winner_index* can be used + to definitively determine whether any coroutine won. + + - *exceptions*: list of exceptions returned by the coroutines. + ``len(exceptions)`` is equal to the number of coroutines actually + started, and the order is the same as in ``coro_fns``. The winning + coroutine's entry is ``None``. + + """ + loop = loop or asyncio.get_running_loop() + exceptions: List[Optional[BaseException]] = [] + tasks: Set[asyncio.Task[Optional[Tuple[_T, int]]]] = set() + + async def run_one_coro( + coro_fn: Callable[[], Awaitable[_T]], + this_index: int, + start_next: "asyncio.Future[None]", + ) -> Optional[Tuple[_T, int]]: + """ + Run a single coroutine. + + If the coroutine fails, set the exception in the exceptions list and + start the next coroutine by setting the result of the start_next. + + If the coroutine succeeds, return the result and the index of the + coroutine in the coro_fns list. + + If SystemExit or KeyboardInterrupt is raised, re-raise it. + """ + try: + result = await coro_fn() + except RE_RAISE_EXCEPTIONS: + raise + except BaseException as e: + exceptions[this_index] = e + _set_result(start_next) # Kickstart the next coroutine + return None + + return result, this_index + + start_next_timer: Optional[asyncio.TimerHandle] = None + start_next: Optional[asyncio.Future[None]] + task: asyncio.Task[Optional[Tuple[_T, int]]] + done: Union[asyncio.Future[None], asyncio.Task[Optional[Tuple[_T, int]]]] + coro_iter = iter(coro_fns) + this_index = -1 + try: + while True: + if coro_fn := next(coro_iter, None): + this_index += 1 + exceptions.append(None) + start_next = loop.create_future() + task = loop.create_task(run_one_coro(coro_fn, this_index, start_next)) + tasks.add(task) + start_next_timer = ( + loop.call_later(delay, _set_result, start_next) if delay else None + ) + elif not tasks: + # We exhausted the coro_fns list and no tasks are running + # so we have no winner and all coroutines failed. + break + + while tasks or start_next: + done = await _wait_one( + (*tasks, start_next) if start_next else tasks, loop + ) + if done is start_next: + # The current task has failed or the timer has expired + # so we need to start the next task. + start_next = None + if start_next_timer: + start_next_timer.cancel() + start_next_timer = None + + # Break out of the task waiting loop to start the next + # task. + break + + if TYPE_CHECKING: + assert isinstance(done, asyncio.Task) + + tasks.remove(done) + if winner := done.result(): + return *winner, exceptions + finally: + # We either have: + # - a winner + # - all tasks failed + # - a KeyboardInterrupt or SystemExit. + + # + # If the timer is still running, cancel it. + # + if start_next_timer: + start_next_timer.cancel() + + # + # If there are any tasks left, cancel them and than + # wait them so they fill the exceptions list. + # + for task in tasks: + task.cancel() + with contextlib.suppress(asyncio.CancelledError): + await task + + return None, None, exceptions diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs/impl.py b/venv/lib/python3.9/site-packages/aiohappyeyeballs/impl.py new file mode 100644 index 0000000..8f3919a --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs/impl.py @@ -0,0 +1,259 @@ +"""Base implementation.""" + +import asyncio +import collections +import contextlib +import functools +import itertools +import socket +from typing import List, Optional, Sequence, Set, Union + +from . import _staggered +from .types import AddrInfoType, SocketFactoryType + + +async def start_connection( + addr_infos: Sequence[AddrInfoType], + *, + local_addr_infos: Optional[Sequence[AddrInfoType]] = None, + happy_eyeballs_delay: Optional[float] = None, + interleave: Optional[int] = None, + loop: Optional[asyncio.AbstractEventLoop] = None, + socket_factory: Optional[SocketFactoryType] = None, +) -> socket.socket: + """ + Connect to a TCP server. + + Create a socket connection to a specified destination. The + destination is specified as a list of AddrInfoType tuples as + returned from getaddrinfo(). + + The arguments are, in order: + + * ``family``: the address family, e.g. ``socket.AF_INET`` or + ``socket.AF_INET6``. + * ``type``: the socket type, e.g. ``socket.SOCK_STREAM`` or + ``socket.SOCK_DGRAM``. + * ``proto``: the protocol, e.g. ``socket.IPPROTO_TCP`` or + ``socket.IPPROTO_UDP``. + * ``canonname``: the canonical name of the address, e.g. + ``"www.python.org"``. + * ``sockaddr``: the socket address + + This method is a coroutine which will try to establish the connection + in the background. When successful, the coroutine returns a + socket. + + The expected use case is to use this method in conjunction with + loop.create_connection() to establish a connection to a server:: + + socket = await start_connection(addr_infos) + transport, protocol = await loop.create_connection( + MyProtocol, sock=socket, ...) + """ + if not (current_loop := loop): + current_loop = asyncio.get_running_loop() + + single_addr_info = len(addr_infos) == 1 + + if happy_eyeballs_delay is not None and interleave is None: + # If using happy eyeballs, default to interleave addresses by family + interleave = 1 + + if interleave and not single_addr_info: + addr_infos = _interleave_addrinfos(addr_infos, interleave) + + sock: Optional[socket.socket] = None + # uvloop can raise RuntimeError instead of OSError + exceptions: List[List[Union[OSError, RuntimeError]]] = [] + if happy_eyeballs_delay is None or single_addr_info: + # not using happy eyeballs + for addrinfo in addr_infos: + try: + sock = await _connect_sock( + current_loop, + exceptions, + addrinfo, + local_addr_infos, + None, + socket_factory, + ) + break + except (RuntimeError, OSError): + continue + else: # using happy eyeballs + open_sockets: Set[socket.socket] = set() + try: + sock, _, _ = await _staggered.staggered_race( + ( + functools.partial( + _connect_sock, + current_loop, + exceptions, + addrinfo, + local_addr_infos, + open_sockets, + socket_factory, + ) + for addrinfo in addr_infos + ), + happy_eyeballs_delay, + ) + finally: + # If we have a winner, staggered_race will + # cancel the other tasks, however there is a + # small race window where any of the other tasks + # can be done before they are cancelled which + # will leave the socket open. To avoid this problem + # we pass a set to _connect_sock to keep track of + # the open sockets and close them here if there + # are any "runner up" sockets. + for s in open_sockets: + if s is not sock: + with contextlib.suppress(OSError): + s.close() + open_sockets = None # type: ignore[assignment] + + if sock is None: + all_exceptions = [exc for sub in exceptions for exc in sub] + try: + first_exception = all_exceptions[0] + if len(all_exceptions) == 1: + raise first_exception + else: + # If they all have the same str(), raise one. + model = str(first_exception) + if all(str(exc) == model for exc in all_exceptions): + raise first_exception + # Raise a combined exception so the user can see all + # the various error messages. + msg = "Multiple exceptions: {}".format( + ", ".join(str(exc) for exc in all_exceptions) + ) + # If the errno is the same for all exceptions, raise + # an OSError with that errno. + if isinstance(first_exception, OSError): + first_errno = first_exception.errno + if all( + isinstance(exc, OSError) and exc.errno == first_errno + for exc in all_exceptions + ): + raise OSError(first_errno, msg) + elif isinstance(first_exception, RuntimeError) and all( + isinstance(exc, RuntimeError) for exc in all_exceptions + ): + raise RuntimeError(msg) + # We have a mix of OSError and RuntimeError + # so we have to pick which one to raise. + # and we raise OSError for compatibility + raise OSError(msg) + finally: + all_exceptions = None # type: ignore[assignment] + exceptions = None # type: ignore[assignment] + + return sock + + +async def _connect_sock( + loop: asyncio.AbstractEventLoop, + exceptions: List[List[Union[OSError, RuntimeError]]], + addr_info: AddrInfoType, + local_addr_infos: Optional[Sequence[AddrInfoType]] = None, + open_sockets: Optional[Set[socket.socket]] = None, + socket_factory: Optional[SocketFactoryType] = None, +) -> socket.socket: + """ + Create, bind and connect one socket. + + If open_sockets is passed, add the socket to the set of open sockets. + Any failure caught here will remove the socket from the set and close it. + + Callers can use this set to close any sockets that are not the winner + of all staggered tasks in the result there are runner up sockets aka + multiple winners. + """ + my_exceptions: List[Union[OSError, RuntimeError]] = [] + exceptions.append(my_exceptions) + family, type_, proto, _, address = addr_info + sock = None + try: + if socket_factory is not None: + sock = socket_factory(addr_info) + else: + sock = socket.socket(family=family, type=type_, proto=proto) + if open_sockets is not None: + open_sockets.add(sock) + sock.setblocking(False) + if local_addr_infos is not None: + for lfamily, _, _, _, laddr in local_addr_infos: + # skip local addresses of different family + if lfamily != family: + continue + try: + sock.bind(laddr) + break + except OSError as exc: + msg = ( + f"error while attempting to bind on " + f"address {laddr!r}: " + f"{(exc.strerror or '').lower()}" + ) + exc = OSError(exc.errno, msg) + my_exceptions.append(exc) + else: # all bind attempts failed + if my_exceptions: + raise my_exceptions.pop() + else: + raise OSError(f"no matching local address with {family=} found") + await loop.sock_connect(sock, address) + return sock + except (RuntimeError, OSError) as exc: + my_exceptions.append(exc) + if sock is not None: + if open_sockets is not None: + open_sockets.remove(sock) + try: + sock.close() + except OSError as e: + my_exceptions.append(e) + raise + raise + except: + if sock is not None: + if open_sockets is not None: + open_sockets.remove(sock) + try: + sock.close() + except OSError as e: + my_exceptions.append(e) + raise + raise + finally: + exceptions = my_exceptions = None # type: ignore[assignment] + + +def _interleave_addrinfos( + addrinfos: Sequence[AddrInfoType], first_address_family_count: int = 1 +) -> List[AddrInfoType]: + """Interleave list of addrinfo tuples by family.""" + # Group addresses by family + addrinfos_by_family: collections.OrderedDict[int, List[AddrInfoType]] = ( + collections.OrderedDict() + ) + for addr in addrinfos: + family = addr[0] + if family not in addrinfos_by_family: + addrinfos_by_family[family] = [] + addrinfos_by_family[family].append(addr) + addrinfos_lists = list(addrinfos_by_family.values()) + + reordered: List[AddrInfoType] = [] + if first_address_family_count > 1: + reordered.extend(addrinfos_lists[0][: first_address_family_count - 1]) + del addrinfos_lists[0][: first_address_family_count - 1] + reordered.extend( + a + for a in itertools.chain.from_iterable(itertools.zip_longest(*addrinfos_lists)) + if a is not None + ) + return reordered diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs/py.typed b/venv/lib/python3.9/site-packages/aiohappyeyeballs/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs/types.py b/venv/lib/python3.9/site-packages/aiohappyeyeballs/types.py new file mode 100644 index 0000000..e8c7507 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs/types.py @@ -0,0 +1,17 @@ +"""Types for aiohappyeyeballs.""" + +import socket + +# PY3.9: Import Callable from typing until we drop Python 3.9 support +# https://github.com/python/cpython/issues/87131 +from typing import Callable, Tuple, Union + +AddrInfoType = Tuple[ + Union[int, socket.AddressFamily], + Union[int, socket.SocketKind], + int, + str, + Tuple, # type: ignore[type-arg] +] + +SocketFactoryType = Callable[[AddrInfoType], socket.socket] diff --git a/venv/lib/python3.9/site-packages/aiohappyeyeballs/utils.py b/venv/lib/python3.9/site-packages/aiohappyeyeballs/utils.py new file mode 100644 index 0000000..ea29adb --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohappyeyeballs/utils.py @@ -0,0 +1,97 @@ +"""Utility functions for aiohappyeyeballs.""" + +import ipaddress +import socket +from typing import Dict, List, Optional, Tuple, Union + +from .types import AddrInfoType + + +def addr_to_addr_infos( + addr: Optional[ + Union[Tuple[str, int, int, int], Tuple[str, int, int], Tuple[str, int]] + ], +) -> Optional[List[AddrInfoType]]: + """Convert an address tuple to a list of addr_info tuples.""" + if addr is None: + return None + host = addr[0] + port = addr[1] + is_ipv6 = ":" in host + if is_ipv6: + flowinfo = 0 + scopeid = 0 + addr_len = len(addr) + if addr_len >= 4: + scopeid = addr[3] # type: ignore[misc] + if addr_len >= 3: + flowinfo = addr[2] # type: ignore[misc] + addr = (host, port, flowinfo, scopeid) + family = socket.AF_INET6 + else: + addr = (host, port) + family = socket.AF_INET + return [(family, socket.SOCK_STREAM, socket.IPPROTO_TCP, "", addr)] + + +def pop_addr_infos_interleave( + addr_infos: List[AddrInfoType], interleave: Optional[int] = None +) -> None: + """ + Pop addr_info from the list of addr_infos by family up to interleave times. + + The interleave parameter is used to know how many addr_infos for + each family should be popped of the top of the list. + """ + seen: Dict[int, int] = {} + if interleave is None: + interleave = 1 + to_remove: List[AddrInfoType] = [] + for addr_info in addr_infos: + family = addr_info[0] + if family not in seen: + seen[family] = 0 + if seen[family] < interleave: + to_remove.append(addr_info) + seen[family] += 1 + for addr_info in to_remove: + addr_infos.remove(addr_info) + + +def _addr_tuple_to_ip_address( + addr: Union[Tuple[str, int], Tuple[str, int, int, int]], +) -> Union[ + Tuple[ipaddress.IPv4Address, int], Tuple[ipaddress.IPv6Address, int, int, int] +]: + """Convert an address tuple to an IPv4Address.""" + return (ipaddress.ip_address(addr[0]), *addr[1:]) + + +def remove_addr_infos( + addr_infos: List[AddrInfoType], + addr: Union[Tuple[str, int], Tuple[str, int, int, int]], +) -> None: + """ + Remove an address from the list of addr_infos. + + The addr value is typically the return value of + sock.getpeername(). + """ + bad_addrs_infos: List[AddrInfoType] = [] + for addr_info in addr_infos: + if addr_info[-1] == addr: + bad_addrs_infos.append(addr_info) + if bad_addrs_infos: + for bad_addr_info in bad_addrs_infos: + addr_infos.remove(bad_addr_info) + return + # Slow path in case addr is formatted differently + match_addr = _addr_tuple_to_ip_address(addr) + for addr_info in addr_infos: + if match_addr == _addr_tuple_to_ip_address(addr_info[-1]): + bad_addrs_infos.append(addr_info) + if bad_addrs_infos: + for bad_addr_info in bad_addrs_infos: + addr_infos.remove(bad_addr_info) + return + raise ValueError(f"Address {addr} not found in addr_infos") diff --git a/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/METADATA b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/METADATA new file mode 100644 index 0000000..3977fcd --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/METADATA @@ -0,0 +1,262 @@ +Metadata-Version: 2.4 +Name: aiohttp +Version: 3.13.5 +Summary: Async http client/server framework (asyncio) +Maintainer-email: aiohttp team +License: Apache-2.0 AND MIT +Project-URL: Homepage, https://github.com/aio-libs/aiohttp +Project-URL: Chat: Matrix, https://matrix.to/#/#aio-libs:matrix.org +Project-URL: Chat: Matrix Space, https://matrix.to/#/#aio-libs-space:matrix.org +Project-URL: CI: GitHub Actions, https://github.com/aio-libs/aiohttp/actions?query=workflow%3ACI +Project-URL: Coverage: codecov, https://codecov.io/github/aio-libs/aiohttp +Project-URL: Docs: Changelog, https://docs.aiohttp.org/en/stable/changes.html +Project-URL: Docs: RTD, https://docs.aiohttp.org +Project-URL: GitHub: issues, https://github.com/aio-libs/aiohttp/issues +Project-URL: GitHub: repo, https://github.com/aio-libs/aiohttp +Classifier: Development Status :: 5 - Production/Stable +Classifier: Framework :: AsyncIO +Classifier: Intended Audience :: Developers +Classifier: Operating System :: POSIX +Classifier: Operating System :: MacOS :: MacOS X +Classifier: Operating System :: Microsoft :: Windows +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: Programming Language :: Python :: 3.14 +Classifier: Topic :: Internet :: WWW/HTTP +Requires-Python: >=3.9 +Description-Content-Type: text/x-rst +License-File: LICENSE.txt +License-File: vendor/llhttp/LICENSE +Requires-Dist: aiohappyeyeballs>=2.5.0 +Requires-Dist: aiosignal>=1.4.0 +Requires-Dist: async-timeout<6.0,>=4.0; python_version < "3.11" +Requires-Dist: attrs>=17.3.0 +Requires-Dist: frozenlist>=1.1.1 +Requires-Dist: multidict<7.0,>=4.5 +Requires-Dist: propcache>=0.2.0 +Requires-Dist: yarl<2.0,>=1.17.0 +Provides-Extra: speedups +Requires-Dist: aiodns>=3.3.0; extra == "speedups" +Requires-Dist: Brotli>=1.2; platform_python_implementation == "CPython" and extra == "speedups" +Requires-Dist: brotlicffi>=1.2; platform_python_implementation != "CPython" and extra == "speedups" +Requires-Dist: backports.zstd; (platform_python_implementation == "CPython" and python_version < "3.14") and extra == "speedups" +Dynamic: license-file + +================================== +Async http client/server framework +================================== + +.. image:: https://raw.githubusercontent.com/aio-libs/aiohttp/master/docs/aiohttp-plain.svg + :height: 64px + :width: 64px + :alt: aiohttp logo + +| + +.. image:: https://github.com/aio-libs/aiohttp/workflows/CI/badge.svg + :target: https://github.com/aio-libs/aiohttp/actions?query=workflow%3ACI + :alt: GitHub Actions status for master branch + +.. image:: https://codecov.io/gh/aio-libs/aiohttp/branch/master/graph/badge.svg + :target: https://codecov.io/gh/aio-libs/aiohttp + :alt: codecov.io status for master branch + +.. image:: https://badge.fury.io/py/aiohttp.svg + :target: https://pypi.org/project/aiohttp + :alt: Latest PyPI package version + +.. image:: https://img.shields.io/pypi/dm/aiohttp + :target: https://pypistats.org/packages/aiohttp + :alt: Downloads count + +.. image:: https://readthedocs.org/projects/aiohttp/badge/?version=latest + :target: https://docs.aiohttp.org/ + :alt: Latest Read The Docs + +.. image:: https://img.shields.io/endpoint?url=https://codspeed.io/badge.json + :target: https://codspeed.io/aio-libs/aiohttp + :alt: Codspeed.io status for aiohttp + + +Key Features +============ + +- Supports both client and server side of HTTP protocol. +- Supports both client and server Web-Sockets out-of-the-box and avoids + Callback Hell. +- Provides Web-server with middleware and pluggable routing. + + +Getting started +=============== + +Client +------ + +To get something from the web: + +.. code-block:: python + + import aiohttp + import asyncio + + async def main(): + + async with aiohttp.ClientSession() as session: + async with session.get('http://python.org') as response: + + print("Status:", response.status) + print("Content-type:", response.headers['content-type']) + + html = await response.text() + print("Body:", html[:15], "...") + + asyncio.run(main()) + +This prints: + +.. code-block:: + + Status: 200 + Content-type: text/html; charset=utf-8 + Body: ... + +Coming from `requests `_ ? Read `why we need so many lines `_. + +Server +------ + +An example using a simple server: + +.. code-block:: python + + # examples/server_simple.py + from aiohttp import web + + async def handle(request): + name = request.match_info.get('name', "Anonymous") + text = "Hello, " + name + return web.Response(text=text) + + async def wshandle(request): + ws = web.WebSocketResponse() + await ws.prepare(request) + + async for msg in ws: + if msg.type == web.WSMsgType.text: + await ws.send_str("Hello, {}".format(msg.data)) + elif msg.type == web.WSMsgType.binary: + await ws.send_bytes(msg.data) + elif msg.type == web.WSMsgType.close: + break + + return ws + + + app = web.Application() + app.add_routes([web.get('/', handle), + web.get('/echo', wshandle), + web.get('/{name}', handle)]) + + if __name__ == '__main__': + web.run_app(app) + + +Documentation +============= + +https://aiohttp.readthedocs.io/ + + +Demos +===== + +https://github.com/aio-libs/aiohttp-demos + + +External links +============== + +* `Third party libraries + `_ +* `Built with aiohttp + `_ +* `Powered by aiohttp + `_ + +Feel free to make a Pull Request for adding your link to these pages! + + +Communication channels +====================== + +*aio-libs Discussions*: https://github.com/aio-libs/aiohttp/discussions + +*Matrix*: `#aio-libs:matrix.org `_ + +We support `Stack Overflow +`_. +Please add *aiohttp* tag to your question there. + +Requirements +============ + +- attrs_ +- multidict_ +- yarl_ +- frozenlist_ + +Optionally you may install the aiodns_ library (highly recommended for sake of speed). + +.. _aiodns: https://pypi.python.org/pypi/aiodns +.. _attrs: https://github.com/python-attrs/attrs +.. _multidict: https://pypi.python.org/pypi/multidict +.. _frozenlist: https://pypi.org/project/frozenlist/ +.. _yarl: https://pypi.python.org/pypi/yarl +.. _async-timeout: https://pypi.python.org/pypi/async_timeout + +License +======= + +``aiohttp`` is offered under the Apache 2 license. + + +Keepsafe +======== + +The aiohttp community would like to thank Keepsafe +(https://www.getkeepsafe.com) for its support in the early days of +the project. + + +Source code +=========== + +The latest developer version is available in a GitHub repository: +https://github.com/aio-libs/aiohttp + +Benchmarks +========== + +If you are interested in efficiency, the AsyncIO community maintains a +list of benchmarks on the official wiki: +https://github.com/python/asyncio/wiki/Benchmarks + +-------- + +.. image:: https://img.shields.io/matrix/aio-libs:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat + :target: https://matrix.to/#/%23aio-libs:matrix.org + :alt: Matrix Room — #aio-libs:matrix.org + +.. image:: https://img.shields.io/matrix/aio-libs-space:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs-space%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat + :target: https://matrix.to/#/%23aio-libs-space:matrix.org + :alt: Matrix Space — #aio-libs-space:matrix.org + +.. image:: https://insights.linuxfoundation.org/api/badge/health-score?project=aiohttp + :target: https://insights.linuxfoundation.org/project/aiohttp + :alt: LFX Health Score diff --git a/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/RECORD b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/RECORD new file mode 100644 index 0000000..07e9ca1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/RECORD @@ -0,0 +1,138 @@ +aiohttp-3.13.5.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +aiohttp-3.13.5.dist-info/METADATA,sha256=yVHd0XDIuuar5cgTh5EZI2mDXCREeUCWCZ-VA6gWvUQ,8145 +aiohttp-3.13.5.dist-info/RECORD,, +aiohttp-3.13.5.dist-info/WHEEL,sha256=OZLCzpIUHEX42a9RmtxH4_auVuxdXhghS0dmIdhxCRQ,184 +aiohttp-3.13.5.dist-info/licenses/LICENSE.txt,sha256=n4DQ2311WpQdtFchcsJw7L2PCCuiFd3QlZhZQu2Uqes,588 +aiohttp-3.13.5.dist-info/licenses/vendor/llhttp/LICENSE,sha256=68qFTgE0zSVtZzYnwgSZ9CV363S6zwi58ltianPJEnc,1105 +aiohttp-3.13.5.dist-info/top_level.txt,sha256=iv-JIaacmTl-hSho3QmphcKnbRRYx1st47yjz_178Ro,8 +aiohttp/.hash/_cparser.pxd.hash,sha256=pjs-sEXNw_eijXGAedwG-BHnlFp8B7sOCgUagIWaU2A,121 +aiohttp/.hash/_find_header.pxd.hash,sha256=_mbpD6vM-CVCKq3ulUvsOAz5Wdo88wrDzfpOsMQaMNA,125 +aiohttp/.hash/_http_parser.pyx.hash,sha256=T47Ily1qaTY3xOHgBgJZE5A_bKruDtCG_droC3m7BD8,125 +aiohttp/.hash/_http_writer.pyx.hash,sha256=DO9V6lTsDngY8e4y5O0ghHRc-RNGq-pVt_dLNHJy7xA,125 +aiohttp/.hash/hdrs.py.hash,sha256=v6IaKbsxjsdQxBzhb5AjP0x_9G3rUe84D7avf7AI4cs,116 +aiohttp/__init__.py,sha256=r1a3wmBz41XCNY0dqSnCcgfqrDYSDYD-_vKBN3Bfy3Y,8302 +aiohttp/__pycache__/__init__.cpython-39.pyc,, +aiohttp/__pycache__/_cookie_helpers.cpython-39.pyc,, +aiohttp/__pycache__/abc.cpython-39.pyc,, +aiohttp/__pycache__/base_protocol.cpython-39.pyc,, +aiohttp/__pycache__/client.cpython-39.pyc,, +aiohttp/__pycache__/client_exceptions.cpython-39.pyc,, +aiohttp/__pycache__/client_middleware_digest_auth.cpython-39.pyc,, +aiohttp/__pycache__/client_middlewares.cpython-39.pyc,, +aiohttp/__pycache__/client_proto.cpython-39.pyc,, +aiohttp/__pycache__/client_reqrep.cpython-39.pyc,, +aiohttp/__pycache__/client_ws.cpython-39.pyc,, +aiohttp/__pycache__/compression_utils.cpython-39.pyc,, +aiohttp/__pycache__/connector.cpython-39.pyc,, +aiohttp/__pycache__/cookiejar.cpython-39.pyc,, +aiohttp/__pycache__/formdata.cpython-39.pyc,, +aiohttp/__pycache__/hdrs.cpython-39.pyc,, +aiohttp/__pycache__/helpers.cpython-39.pyc,, +aiohttp/__pycache__/http.cpython-39.pyc,, +aiohttp/__pycache__/http_exceptions.cpython-39.pyc,, +aiohttp/__pycache__/http_parser.cpython-39.pyc,, +aiohttp/__pycache__/http_websocket.cpython-39.pyc,, +aiohttp/__pycache__/http_writer.cpython-39.pyc,, +aiohttp/__pycache__/log.cpython-39.pyc,, +aiohttp/__pycache__/multipart.cpython-39.pyc,, +aiohttp/__pycache__/payload.cpython-39.pyc,, +aiohttp/__pycache__/payload_streamer.cpython-39.pyc,, +aiohttp/__pycache__/pytest_plugin.cpython-39.pyc,, +aiohttp/__pycache__/resolver.cpython-39.pyc,, +aiohttp/__pycache__/streams.cpython-39.pyc,, +aiohttp/__pycache__/tcp_helpers.cpython-39.pyc,, +aiohttp/__pycache__/test_utils.cpython-39.pyc,, +aiohttp/__pycache__/tracing.cpython-39.pyc,, +aiohttp/__pycache__/typedefs.cpython-39.pyc,, +aiohttp/__pycache__/web.cpython-39.pyc,, +aiohttp/__pycache__/web_app.cpython-39.pyc,, +aiohttp/__pycache__/web_exceptions.cpython-39.pyc,, +aiohttp/__pycache__/web_fileresponse.cpython-39.pyc,, +aiohttp/__pycache__/web_log.cpython-39.pyc,, +aiohttp/__pycache__/web_middlewares.cpython-39.pyc,, +aiohttp/__pycache__/web_protocol.cpython-39.pyc,, +aiohttp/__pycache__/web_request.cpython-39.pyc,, +aiohttp/__pycache__/web_response.cpython-39.pyc,, +aiohttp/__pycache__/web_routedef.cpython-39.pyc,, +aiohttp/__pycache__/web_runner.cpython-39.pyc,, +aiohttp/__pycache__/web_server.cpython-39.pyc,, +aiohttp/__pycache__/web_urldispatcher.cpython-39.pyc,, +aiohttp/__pycache__/web_ws.cpython-39.pyc,, +aiohttp/__pycache__/worker.cpython-39.pyc,, +aiohttp/_cookie_helpers.py,sha256=_p7y-B8OCAk7FLjByiuwFIpDLGuNoJn3_vixzymAFnE,13659 +aiohttp/_cparser.pxd,sha256=UnbUYCHg4NdXfgyRVYAMv2KTLWClB4P-xCrvtj_r7ew,4295 +aiohttp/_find_header.pxd,sha256=0GfwFCPN2zxEKTO1_MA5sYq2UfzsG8kcV3aTqvwlz3g,68 +aiohttp/_headers.pxi,sha256=n701k28dVPjwRnx5j6LpJhLTfj7dqu2vJt7f0O60Oyg,2007 +aiohttp/_http_parser.cpython-39-x86_64-linux-gnu.so,sha256=GVgaK8L0UlvIUlat8z6Mf2L6IYPx3FxXL5ZdizvhN5g,2698432 +aiohttp/_http_parser.pyx,sha256=veuwNKb6YzBJoO3nbvrkOCaTzbcROS5MVksUJhDHNgg,30036 +aiohttp/_http_writer.cpython-39-x86_64-linux-gnu.so,sha256=s2v7ojOqKiQ0FuPxQJd8Hdzma75VFwJNtoLBC99cQy4,452304 +aiohttp/_http_writer.pyx,sha256=TXNOC90txk4wnPakxex_ygSbr3xq1UxaCi2T4gv2teY,4690 +aiohttp/_websocket/.hash/mask.pxd.hash,sha256=Y0zBddk_ck3pi9-BFzMcpkcvCKvwvZ4GTtZFb9u1nxQ,128 +aiohttp/_websocket/.hash/mask.pyx.hash,sha256=90owpXYM8_kIma4KUcOxhWSk-Uv4NVMBoCYeFM1B3d0,128 +aiohttp/_websocket/.hash/reader_c.pxd.hash,sha256=5xf3oobk6vx4xbJm-xtZ1_QufB8fYFtLQV2MNdqUc1w,132 +aiohttp/_websocket/__init__.py,sha256=Mar3R9_vBN_Ea4lsW7iTAVXD7OKswKPGqF5xgSyt77k,44 +aiohttp/_websocket/__pycache__/__init__.cpython-39.pyc,, +aiohttp/_websocket/__pycache__/helpers.cpython-39.pyc,, +aiohttp/_websocket/__pycache__/models.cpython-39.pyc,, +aiohttp/_websocket/__pycache__/reader.cpython-39.pyc,, +aiohttp/_websocket/__pycache__/reader_c.cpython-39.pyc,, +aiohttp/_websocket/__pycache__/reader_py.cpython-39.pyc,, +aiohttp/_websocket/__pycache__/writer.cpython-39.pyc,, +aiohttp/_websocket/helpers.py,sha256=P-XLv8IUaihKzDenVUqfKU5DJbWE5HvG8uhvUZK8Ic4,5038 +aiohttp/_websocket/mask.cpython-39-x86_64-linux-gnu.so,sha256=BybI5R0q5_H7fDGBMc-idAs8Nzek7C0dV_oTFGYK-N0,221640 +aiohttp/_websocket/mask.pxd,sha256=sBmZ1Amym9kW4Ge8lj1fLZ7mPPya4LzLdpkQExQXv5M,112 +aiohttp/_websocket/mask.pyx,sha256=BHjOtV0O0w7xp9p0LNADRJvGmgfPn9sGeJvSs0fL__4,1397 +aiohttp/_websocket/models.py,sha256=XAzjs_8JYszWXIgZ6R3ZRrF-tX9Q_6LiD49WRYojopM,2121 +aiohttp/_websocket/reader.py,sha256=eC4qS0c5sOeQ2ebAHLaBpIaTVFaSKX79pY2xvh3Pqyw,1030 +aiohttp/_websocket/reader_c.cpython-39-x86_64-linux-gnu.so,sha256=K-hxF7Hvw4MBsxoe4e-QW5NQdW_UKVfNL55HiXvZLLo,1695504 +aiohttp/_websocket/reader_c.pxd,sha256=nl_njtDrzlQU0rjgGGjZDB-swguE0tX_bCPobkShVa4,2625 +aiohttp/_websocket/reader_c.py,sha256=V5YtZ2gj2BjE2Q-W9sR_MdAl1VAm1pB7ZjozVJcOpbg,18868 +aiohttp/_websocket/reader_py.py,sha256=V5YtZ2gj2BjE2Q-W9sR_MdAl1VAm1pB7ZjozVJcOpbg,18868 +aiohttp/_websocket/writer.py,sha256=2OvSktPmNh_g20h1cXJt2Xu8u6IvswnPjdur7OwBbJk,11261 +aiohttp/abc.py,sha256=M66F4S6m00bIEn7y4ha_XLTMDmVQ9dPihfOVB0pGfOo,7149 +aiohttp/base_protocol.py,sha256=Tp8cxUPQvv9kUPk3w6lAzk6d2MAzV3scwI_3Go3C47c,3025 +aiohttp/client.py,sha256=JkHGrrJq1pSI7QEJw0jZKx5TLLzM87of8Yx-62m4x6g,58795 +aiohttp/client_exceptions.py,sha256=t6vDg0ZhHDvij6E89Nv473zLpNu3CyMPAp0LqLHOc9I,11744 +aiohttp/client_middleware_digest_auth.py,sha256=rInzAPEmFsaF42oVORmYSx56og1B7jZUSmmIdFD0MQ8,17641 +aiohttp/client_middlewares.py,sha256=kP5N9CMzQPMGPIEydeVUiLUTLsw8Vl8Gr4qAWYdu3vM,1918 +aiohttp/client_proto.py,sha256=eimrsOVNMt_y62gmXZ4JoBI5VZ0kGaW6WnqMkB1cnNQ,12179 +aiohttp/client_reqrep.py,sha256=eEREDrZ0M8ZFTt1wjHduR-P8_sm40K65gNz-iMGYask,53391 +aiohttp/client_ws.py,sha256=1CIjIXwyzOMIYw6AjUES4-qUwbyVHW1seJKQfg_Rta8,15109 +aiohttp/compression_utils.py,sha256=hJ2LXhN2OWukFHm5b78TJFGKcAiL2kthi9Sf5PRYO-U,11738 +aiohttp/connector.py,sha256=0AFVMAx7NwkIbovQ0qecQ3JO2bpEZpxMG_OnGZ3tP3E,69451 +aiohttp/cookiejar.py,sha256=e28ZMQwJ5P0vbPX1OX4Se7-k3zeGvocFEqzGhwpG53k,18922 +aiohttp/formdata.py,sha256=0cxe-naBSFp_NHB1l-TUSbhesU4dpNvwJMzhsLYoSns,6625 +aiohttp/hdrs.py,sha256=2rj5MyA-6yRdYPhW5UKkW4iNWhEAlGIOSBH5D4FmKNE,5111 +aiohttp/helpers.py,sha256=Q1307PCEnWz4RP8crUw8dk58c0YF2Ei3JywkKfRxz5E,30629 +aiohttp/http.py,sha256=8o8j8xH70OWjnfTWA9V44NR785QPxEPrUtzMXiAVpwc,1842 +aiohttp/http_exceptions.py,sha256=Z4IiKYxyfn1Pe947OfqW6NjXoVd12bDI4eKBZKC3Htw,3085 +aiohttp/http_parser.py,sha256=TIvopmjIH3TSTrVTbbqxpBWBpkEuOaNjkzES0-fm4-4,40472 +aiohttp/http_websocket.py,sha256=8VXFKw6KQUEmPg48GtRMB37v0gTK7A0inoxXuDxMZEc,842 +aiohttp/http_writer.py,sha256=4sbiFD_RkE0x_xlAPXwGrL0iLS53L72Qw13hBPaQLls,12508 +aiohttp/log.py,sha256=BbNKx9e3VMIm0xYjZI0IcBBoS7wjdeIeSaiJE7-qK2g,325 +aiohttp/multipart.py,sha256=qMDEHLf64qQcPQLZv4RdwKUDB2L1CC_vN-5Z-P8wDzw,42805 +aiohttp/payload.py,sha256=O6nsYNULL7AeM2cyJ6TYX73ncVnL5xJwt5AegxwMKqw,40874 +aiohttp/payload_streamer.py,sha256=ZzEYyfzcjGWkVkK3XR2pBthSCSIykYvY3Wr5cGQ2eTc,2211 +aiohttp/py.typed,sha256=sow9soTwP9T_gEAQSVh7Gb8855h04Nwmhs2We-JRgZM,7 +aiohttp/pytest_plugin.py,sha256=z4XwqmsKdyJCKxbGiA5kFf90zcedvomqk4RqjZbhKNk,12901 +aiohttp/resolver.py,sha256=gsrfUpFf8iHlcHfJvY-1fiBHW3PRvRVNb5lNZBg3zlY,10031 +aiohttp/streams.py,sha256=i32xpXEjGL2c6ifepnBxBto5y9wXobzzYAIsi8kAkKI,23920 +aiohttp/tcp_helpers.py,sha256=BSadqVWaBpMFDRWnhaaR941N9MiDZ7bdTrxgCb0CW-M,961 +aiohttp/test_utils.py,sha256=7hMcJnOUSkZ54Axgdvveeth5y6R_B2T-0H2xX7mKWYc,23130 +aiohttp/tracing.py,sha256=-6aaW6l0J9uJD45LzR4cijYH0j62pt0U_nn_aVzFku4,14558 +aiohttp/typedefs.py,sha256=wUlqwe9Mw9W8jT3HsYJcYk00qP3EMPz3nTkYXmeNN48,1657 +aiohttp/web.py,sha256=JzSNmejg5G6YeFAnkIgZfytqbU86sNu844yYKmoUpqs,17852 +aiohttp/web_app.py,sha256=lGU_aAMN-h3wy-LTTHi6SeKH8ydt1G51BXcCspgD5ZA,19452 +aiohttp/web_exceptions.py,sha256=aXW8MStpRS7JOFxYDPgPlWojMJP9RhxyAqvq2g0jOCE,10495 +aiohttp/web_fileresponse.py,sha256=arimioSXf0rZQ46H9ejCip4hVN6ri_faFWfuP_XL_us,16374 +aiohttp/web_log.py,sha256=1hhC05PJizS2POVfNxncorNM_fjYHMx2TbcpP6isxkQ,8624 +aiohttp/web_middlewares.py,sha256=sFI0AgeNjdyAjuz92QtMIpngmJSOxrqe2Jfbs4BNUu0,4165 +aiohttp/web_protocol.py,sha256=ZEwjomG6Y2olq2b967UXDezwYnuLJJHDNl48SgHpKJs,27210 +aiohttp/web_request.py,sha256=xNCrsUQSqTB64G1_9QiC9xfQmdgkJwYkGfPBwnfIYQo,30406 +aiohttp/web_response.py,sha256=DofOPOU4be_upiqouWjxfhMLyubtRFvOGnJZbIamH6s,29366 +aiohttp/web_routedef.py,sha256=VT1GAx6BrawoDh5RwBwBu5wSABSqgWwAe74AUCyZAEo,6110 +aiohttp/web_runner.py,sha256=v1G1nKiOOQgFnTSR4IMc6I9ReEFDMaHtMLvO_roDM-A,11786 +aiohttp/web_server.py,sha256=-9WDKUAiR9ll-rSdwXSqG6YjaoW79d1R4y0BGSqgUMA,2888 +aiohttp/web_urldispatcher.py,sha256=9pJ6b3LuujtZuAURNYh0tdhgCJn2ZFrakeEySNwNqhU,44512 +aiohttp/web_ws.py,sha256=lItgmyatkXh0M6EY7JoZnSZkUl6R0wv8B88X4ILqQbU,22739 +aiohttp/worker.py,sha256=o6BL8dbCGYysB76i_yGGvYagc9gyy2PyW1UisiOznjA,8345 diff --git a/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/WHEEL b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/WHEEL new file mode 100644 index 0000000..fbcc8e7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/WHEEL @@ -0,0 +1,7 @@ +Wheel-Version: 1.0 +Generator: setuptools (82.0.1) +Root-Is-Purelib: false +Tag: cp39-cp39-manylinux_2_17_x86_64 +Tag: cp39-cp39-manylinux2014_x86_64 +Tag: cp39-cp39-manylinux_2_28_x86_64 + diff --git a/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/licenses/LICENSE.txt b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/licenses/LICENSE.txt new file mode 100644 index 0000000..e497a32 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/licenses/LICENSE.txt @@ -0,0 +1,13 @@ + Copyright aio-libs contributors. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/licenses/vendor/llhttp/LICENSE b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/licenses/vendor/llhttp/LICENSE new file mode 100644 index 0000000..6c1512d --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/licenses/vendor/llhttp/LICENSE @@ -0,0 +1,22 @@ +This software is licensed under the MIT License. + +Copyright Fedor Indutny, 2018. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the +following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/top_level.txt new file mode 100644 index 0000000..ee4ba4f --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp-3.13.5.dist-info/top_level.txt @@ -0,0 +1 @@ +aiohttp diff --git a/venv/lib/python3.9/site-packages/aiohttp/.hash/_cparser.pxd.hash b/venv/lib/python3.9/site-packages/aiohttp/.hash/_cparser.pxd.hash new file mode 100644 index 0000000..3f5cd0e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/.hash/_cparser.pxd.hash @@ -0,0 +1 @@ +5276d46021e0e0d7577e0c9155800cbf62932d60a50783fec42aefb63febedec /home/runner/work/aiohttp/aiohttp/aiohttp/_cparser.pxd diff --git a/venv/lib/python3.9/site-packages/aiohttp/.hash/_find_header.pxd.hash b/venv/lib/python3.9/site-packages/aiohttp/.hash/_find_header.pxd.hash new file mode 100644 index 0000000..f006c2d --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/.hash/_find_header.pxd.hash @@ -0,0 +1 @@ +d067f01423cddb3c442933b5fcc039b18ab651fcec1bc91c577693aafc25cf78 /home/runner/work/aiohttp/aiohttp/aiohttp/_find_header.pxd diff --git a/venv/lib/python3.9/site-packages/aiohttp/.hash/_http_parser.pyx.hash b/venv/lib/python3.9/site-packages/aiohttp/.hash/_http_parser.pyx.hash new file mode 100644 index 0000000..af02f94 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/.hash/_http_parser.pyx.hash @@ -0,0 +1 @@ +bdebb034a6fa633049a0ede76efae4382693cdb711392e4c564b142610c73608 /home/runner/work/aiohttp/aiohttp/aiohttp/_http_parser.pyx diff --git a/venv/lib/python3.9/site-packages/aiohttp/.hash/_http_writer.pyx.hash b/venv/lib/python3.9/site-packages/aiohttp/.hash/_http_writer.pyx.hash new file mode 100644 index 0000000..43c1ab1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/.hash/_http_writer.pyx.hash @@ -0,0 +1 @@ +4d734e0bdd2dc64e309cf6a4c5ec7fca049baf7c6ad54c5a0a2d93e20bf6b5e6 /home/runner/work/aiohttp/aiohttp/aiohttp/_http_writer.pyx diff --git a/venv/lib/python3.9/site-packages/aiohttp/.hash/hdrs.py.hash b/venv/lib/python3.9/site-packages/aiohttp/.hash/hdrs.py.hash new file mode 100644 index 0000000..c8d5524 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/.hash/hdrs.py.hash @@ -0,0 +1 @@ +dab8f933203eeb245d60f856e542a45b888d5a110094620e4811f90f816628d1 /home/runner/work/aiohttp/aiohttp/aiohttp/hdrs.py diff --git a/venv/lib/python3.9/site-packages/aiohttp/__init__.py b/venv/lib/python3.9/site-packages/aiohttp/__init__.py new file mode 100644 index 0000000..404f926 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/__init__.py @@ -0,0 +1,278 @@ +__version__ = "3.13.5" + +from typing import TYPE_CHECKING, Tuple + +from . import hdrs as hdrs +from .client import ( + BaseConnector, + ClientConnectionError, + ClientConnectionResetError, + ClientConnectorCertificateError, + ClientConnectorDNSError, + ClientConnectorError, + ClientConnectorSSLError, + ClientError, + ClientHttpProxyError, + ClientOSError, + ClientPayloadError, + ClientProxyConnectionError, + ClientRequest, + ClientResponse, + ClientResponseError, + ClientSession, + ClientSSLError, + ClientTimeout, + ClientWebSocketResponse, + ClientWSTimeout, + ConnectionTimeoutError, + ContentTypeError, + Fingerprint, + InvalidURL, + InvalidUrlClientError, + InvalidUrlRedirectClientError, + NamedPipeConnector, + NonHttpUrlClientError, + NonHttpUrlRedirectClientError, + RedirectClientError, + RequestInfo, + ServerConnectionError, + ServerDisconnectedError, + ServerFingerprintMismatch, + ServerTimeoutError, + SocketTimeoutError, + TCPConnector, + TooManyRedirects, + UnixConnector, + WSMessageTypeError, + WSServerHandshakeError, + request, +) +from .client_middleware_digest_auth import DigestAuthMiddleware +from .client_middlewares import ClientHandlerType, ClientMiddlewareType +from .compression_utils import set_zlib_backend +from .connector import ( + AddrInfoType as AddrInfoType, + SocketFactoryType as SocketFactoryType, +) +from .cookiejar import CookieJar as CookieJar, DummyCookieJar as DummyCookieJar +from .formdata import FormData as FormData +from .helpers import BasicAuth, ChainMapProxy, ETag +from .http import ( + HttpVersion as HttpVersion, + HttpVersion10 as HttpVersion10, + HttpVersion11 as HttpVersion11, + WebSocketError as WebSocketError, + WSCloseCode as WSCloseCode, + WSMessage as WSMessage, + WSMsgType as WSMsgType, +) +from .multipart import ( + BadContentDispositionHeader as BadContentDispositionHeader, + BadContentDispositionParam as BadContentDispositionParam, + BodyPartReader as BodyPartReader, + MultipartReader as MultipartReader, + MultipartWriter as MultipartWriter, + content_disposition_filename as content_disposition_filename, + parse_content_disposition as parse_content_disposition, +) +from .payload import ( + PAYLOAD_REGISTRY as PAYLOAD_REGISTRY, + AsyncIterablePayload as AsyncIterablePayload, + BufferedReaderPayload as BufferedReaderPayload, + BytesIOPayload as BytesIOPayload, + BytesPayload as BytesPayload, + IOBasePayload as IOBasePayload, + JsonPayload as JsonPayload, + Payload as Payload, + StringIOPayload as StringIOPayload, + StringPayload as StringPayload, + TextIOPayload as TextIOPayload, + get_payload as get_payload, + payload_type as payload_type, +) +from .payload_streamer import streamer as streamer +from .resolver import ( + AsyncResolver as AsyncResolver, + DefaultResolver as DefaultResolver, + ThreadedResolver as ThreadedResolver, +) +from .streams import ( + EMPTY_PAYLOAD as EMPTY_PAYLOAD, + DataQueue as DataQueue, + EofStream as EofStream, + FlowControlDataQueue as FlowControlDataQueue, + StreamReader as StreamReader, +) +from .tracing import ( + TraceConfig as TraceConfig, + TraceConnectionCreateEndParams as TraceConnectionCreateEndParams, + TraceConnectionCreateStartParams as TraceConnectionCreateStartParams, + TraceConnectionQueuedEndParams as TraceConnectionQueuedEndParams, + TraceConnectionQueuedStartParams as TraceConnectionQueuedStartParams, + TraceConnectionReuseconnParams as TraceConnectionReuseconnParams, + TraceDnsCacheHitParams as TraceDnsCacheHitParams, + TraceDnsCacheMissParams as TraceDnsCacheMissParams, + TraceDnsResolveHostEndParams as TraceDnsResolveHostEndParams, + TraceDnsResolveHostStartParams as TraceDnsResolveHostStartParams, + TraceRequestChunkSentParams as TraceRequestChunkSentParams, + TraceRequestEndParams as TraceRequestEndParams, + TraceRequestExceptionParams as TraceRequestExceptionParams, + TraceRequestHeadersSentParams as TraceRequestHeadersSentParams, + TraceRequestRedirectParams as TraceRequestRedirectParams, + TraceRequestStartParams as TraceRequestStartParams, + TraceResponseChunkReceivedParams as TraceResponseChunkReceivedParams, +) + +if TYPE_CHECKING: + # At runtime these are lazy-loaded at the bottom of the file. + from .worker import ( + GunicornUVLoopWebWorker as GunicornUVLoopWebWorker, + GunicornWebWorker as GunicornWebWorker, + ) + +__all__: Tuple[str, ...] = ( + "hdrs", + # client + "AddrInfoType", + "BaseConnector", + "ClientConnectionError", + "ClientConnectionResetError", + "ClientConnectorCertificateError", + "ClientConnectorDNSError", + "ClientConnectorError", + "ClientConnectorSSLError", + "ClientError", + "ClientHttpProxyError", + "ClientOSError", + "ClientPayloadError", + "ClientProxyConnectionError", + "ClientResponse", + "ClientRequest", + "ClientResponseError", + "ClientSSLError", + "ClientSession", + "ClientTimeout", + "ClientWebSocketResponse", + "ClientWSTimeout", + "ConnectionTimeoutError", + "ContentTypeError", + "Fingerprint", + "FlowControlDataQueue", + "InvalidURL", + "InvalidUrlClientError", + "InvalidUrlRedirectClientError", + "NonHttpUrlClientError", + "NonHttpUrlRedirectClientError", + "RedirectClientError", + "RequestInfo", + "ServerConnectionError", + "ServerDisconnectedError", + "ServerFingerprintMismatch", + "ServerTimeoutError", + "SocketFactoryType", + "SocketTimeoutError", + "TCPConnector", + "TooManyRedirects", + "UnixConnector", + "NamedPipeConnector", + "WSServerHandshakeError", + "request", + # client_middleware + "ClientMiddlewareType", + "ClientHandlerType", + # cookiejar + "CookieJar", + "DummyCookieJar", + # formdata + "FormData", + # helpers + "BasicAuth", + "ChainMapProxy", + "DigestAuthMiddleware", + "ETag", + "set_zlib_backend", + # http + "HttpVersion", + "HttpVersion10", + "HttpVersion11", + "WSMsgType", + "WSCloseCode", + "WSMessage", + "WebSocketError", + # multipart + "BadContentDispositionHeader", + "BadContentDispositionParam", + "BodyPartReader", + "MultipartReader", + "MultipartWriter", + "content_disposition_filename", + "parse_content_disposition", + # payload + "AsyncIterablePayload", + "BufferedReaderPayload", + "BytesIOPayload", + "BytesPayload", + "IOBasePayload", + "JsonPayload", + "PAYLOAD_REGISTRY", + "Payload", + "StringIOPayload", + "StringPayload", + "TextIOPayload", + "get_payload", + "payload_type", + # payload_streamer + "streamer", + # resolver + "AsyncResolver", + "DefaultResolver", + "ThreadedResolver", + # streams + "DataQueue", + "EMPTY_PAYLOAD", + "EofStream", + "StreamReader", + # tracing + "TraceConfig", + "TraceConnectionCreateEndParams", + "TraceConnectionCreateStartParams", + "TraceConnectionQueuedEndParams", + "TraceConnectionQueuedStartParams", + "TraceConnectionReuseconnParams", + "TraceDnsCacheHitParams", + "TraceDnsCacheMissParams", + "TraceDnsResolveHostEndParams", + "TraceDnsResolveHostStartParams", + "TraceRequestChunkSentParams", + "TraceRequestEndParams", + "TraceRequestExceptionParams", + "TraceRequestHeadersSentParams", + "TraceRequestRedirectParams", + "TraceRequestStartParams", + "TraceResponseChunkReceivedParams", + # workers (imported lazily with __getattr__) + "GunicornUVLoopWebWorker", + "GunicornWebWorker", + "WSMessageTypeError", +) + + +def __dir__() -> Tuple[str, ...]: + return __all__ + ("__doc__",) + + +def __getattr__(name: str) -> object: + global GunicornUVLoopWebWorker, GunicornWebWorker + + # Importing gunicorn takes a long time (>100ms), so only import if actually needed. + if name in ("GunicornUVLoopWebWorker", "GunicornWebWorker"): + try: + from .worker import GunicornUVLoopWebWorker as guv, GunicornWebWorker as gw + except ImportError: + return None + + GunicornUVLoopWebWorker = guv # type: ignore[misc] + GunicornWebWorker = gw # type: ignore[misc] + return guv if name == "GunicornUVLoopWebWorker" else gw + + raise AttributeError(f"module {__name__} has no attribute {name}") diff --git a/venv/lib/python3.9/site-packages/aiohttp/_cookie_helpers.py b/venv/lib/python3.9/site-packages/aiohttp/_cookie_helpers.py new file mode 100644 index 0000000..10e2e0e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_cookie_helpers.py @@ -0,0 +1,338 @@ +""" +Internal cookie handling helpers. + +This module contains internal utilities for cookie parsing and manipulation. +These are not part of the public API and may change without notice. +""" + +import re +from http.cookies import Morsel +from typing import List, Optional, Sequence, Tuple, cast + +from .log import internal_logger + +__all__ = ( + "parse_set_cookie_headers", + "parse_cookie_header", + "preserve_morsel_with_coded_value", +) + +# Cookie parsing constants +# Allow more characters in cookie names to handle real-world cookies +# that don't strictly follow RFC standards (fixes #2683) +# RFC 6265 defines cookie-name token as per RFC 2616 Section 2.2, +# but many servers send cookies with characters like {} [] () etc. +# This makes the cookie parser more tolerant of real-world cookies +# while still providing some validation to catch obviously malformed names. +_COOKIE_NAME_RE = re.compile(r"^[!#$%&\'()*+\-./0-9:<=>?@A-Z\[\]^_`a-z{|}~]+$") +_COOKIE_KNOWN_ATTRS = frozenset( # AKA Morsel._reserved + ( + "path", + "domain", + "max-age", + "expires", + "secure", + "httponly", + "samesite", + "partitioned", + "version", + "comment", + ) +) +_COOKIE_BOOL_ATTRS = frozenset( # AKA Morsel._flags + ("secure", "httponly", "partitioned") +) + +# SimpleCookie's pattern for parsing cookies with relaxed validation +# Based on http.cookies pattern but extended to allow more characters in cookie names +# to handle real-world cookies (fixes #2683) +_COOKIE_PATTERN = re.compile( + r""" + \s* # Optional whitespace at start of cookie + (?P # Start of group 'key' + # aiohttp has extended to include [] for compatibility with real-world cookies + [\w\d!#%&'~_`><@,:/\$\*\+\-\.\^\|\)\(\?\}\{\[\]]+ # Any word of at least one letter + ) # End of group 'key' + ( # Optional group: there may not be a value. + \s*=\s* # Equal Sign + (?P # Start of group 'val' + "(?:[^\\"]|\\.)*" # Any double-quoted string (properly closed) + | # or + "[^";]* # Unmatched opening quote (differs from SimpleCookie - issue #7993) + | # or + # Special case for "expires" attr - RFC 822, RFC 850, RFC 1036, RFC 1123 + (\w{3,6}day|\w{3}),\s # Day of the week or abbreviated day (with comma) + [\w\d\s-]{9,11}\s[\d:]{8}\s # Date and time in specific format + (GMT|[+-]\d{4}) # Timezone: GMT or RFC 2822 offset like -0000, +0100 + # NOTE: RFC 2822 timezone support is an aiohttp extension + # for issue #4493 - SimpleCookie does NOT support this + | # or + # ANSI C asctime() format: "Wed Jun 9 10:18:14 2021" + # NOTE: This is an aiohttp extension for issue #4327 - SimpleCookie does NOT support this format + \w{3}\s+\w{3}\s+[\s\d]\d\s+\d{2}:\d{2}:\d{2}\s+\d{4} + | # or + [\w\d!#%&'~_`><@,:/\$\*\+\-\.\^\|\)\(\?\}\{\=\[\]]* # Any word or empty string + ) # End of group 'val' + )? # End of optional value group + \s* # Any number of spaces. + (\s+|;|$) # Ending either at space, semicolon, or EOS. + """, + re.VERBOSE | re.ASCII, +) + + +def preserve_morsel_with_coded_value(cookie: Morsel[str]) -> Morsel[str]: + """ + Preserve a Morsel's coded_value exactly as received from the server. + + This function ensures that cookie encoding is preserved exactly as sent by + the server, which is critical for compatibility with old servers that have + strict requirements about cookie formats. + + This addresses the issue described in https://github.com/aio-libs/aiohttp/pull/1453 + where Python's SimpleCookie would re-encode cookies, breaking authentication + with certain servers. + + Args: + cookie: A Morsel object from SimpleCookie + + Returns: + A Morsel object with preserved coded_value + + """ + mrsl_val = cast("Morsel[str]", cookie.get(cookie.key, Morsel())) + # We use __setstate__ instead of the public set() API because it allows us to + # bypass validation and set already validated state. This is more stable than + # setting protected attributes directly and unlikely to change since it would + # break pickling. + mrsl_val.__setstate__( # type: ignore[attr-defined] + {"key": cookie.key, "value": cookie.value, "coded_value": cookie.coded_value} + ) + return mrsl_val + + +_unquote_sub = re.compile(r"\\(?:([0-3][0-7][0-7])|(.))").sub + + +def _unquote_replace(m: re.Match[str]) -> str: + """ + Replace function for _unquote_sub regex substitution. + + Handles escaped characters in cookie values: + - Octal sequences are converted to their character representation + - Other escaped characters are unescaped by removing the backslash + """ + if m[1]: + return chr(int(m[1], 8)) + return m[2] + + +def _unquote(value: str) -> str: + """ + Unquote a cookie value. + + Vendored from http.cookies._unquote to ensure compatibility. + + Note: The original implementation checked for None, but we've removed + that check since all callers already ensure the value is not None. + """ + # If there aren't any doublequotes, + # then there can't be any special characters. See RFC 2109. + if len(value) < 2: + return value + if value[0] != '"' or value[-1] != '"': + return value + + # We have to assume that we must decode this string. + # Down to work. + + # Remove the "s + value = value[1:-1] + + # Check for special sequences. Examples: + # \012 --> \n + # \" --> " + # + return _unquote_sub(_unquote_replace, value) + + +def parse_cookie_header(header: str) -> List[Tuple[str, Morsel[str]]]: + """ + Parse a Cookie header according to RFC 6265 Section 5.4. + + Cookie headers contain only name-value pairs separated by semicolons. + There are no attributes in Cookie headers - even names that match + attribute names (like 'path' or 'secure') should be treated as cookies. + + This parser uses the same regex-based approach as parse_set_cookie_headers + to properly handle quoted values that may contain semicolons. When the + regex fails to match a malformed cookie, it falls back to simple parsing + to ensure subsequent cookies are not lost + https://github.com/aio-libs/aiohttp/issues/11632 + + Args: + header: The Cookie header value to parse + + Returns: + List of (name, Morsel) tuples for compatibility with SimpleCookie.update() + """ + if not header: + return [] + + cookies: List[Tuple[str, Morsel[str]]] = [] + morsel: Morsel[str] + i = 0 + n = len(header) + + invalid_names = [] + while i < n: + # Use the same pattern as parse_set_cookie_headers to find cookies + match = _COOKIE_PATTERN.match(header, i) + if not match: + # Fallback for malformed cookies https://github.com/aio-libs/aiohttp/issues/11632 + # Find next semicolon to skip or attempt simple key=value parsing + next_semi = header.find(";", i) + eq_pos = header.find("=", i) + + # Try to extract key=value if '=' comes before ';' + if eq_pos != -1 and (next_semi == -1 or eq_pos < next_semi): + end_pos = next_semi if next_semi != -1 else n + key = header[i:eq_pos].strip() + value = header[eq_pos + 1 : end_pos].strip() + + # Validate the name (same as regex path) + if not _COOKIE_NAME_RE.match(key): + invalid_names.append(key) + else: + morsel = Morsel() + morsel.__setstate__( # type: ignore[attr-defined] + {"key": key, "value": _unquote(value), "coded_value": value} + ) + cookies.append((key, morsel)) + + # Move to next cookie or end + i = next_semi + 1 if next_semi != -1 else n + continue + + key = match.group("key") + value = match.group("val") or "" + i = match.end(0) + + # Validate the name + if not key or not _COOKIE_NAME_RE.match(key): + invalid_names.append(key) + continue + + # Create new morsel + morsel = Morsel() + # Preserve the original value as coded_value (with quotes if present) + # We use __setstate__ instead of the public set() API because it allows us to + # bypass validation and set already validated state. This is more stable than + # setting protected attributes directly and unlikely to change since it would + # break pickling. + morsel.__setstate__( # type: ignore[attr-defined] + {"key": key, "value": _unquote(value), "coded_value": value} + ) + + cookies.append((key, morsel)) + + if invalid_names: + internal_logger.debug( + "Cannot load cookie. Illegal cookie names: %r", invalid_names + ) + + return cookies + + +def parse_set_cookie_headers(headers: Sequence[str]) -> List[Tuple[str, Morsel[str]]]: + """ + Parse cookie headers using a vendored version of SimpleCookie parsing. + + This implementation is based on SimpleCookie.__parse_string to ensure + compatibility with how SimpleCookie parses cookies, including handling + of malformed cookies with missing semicolons. + + This function is used for both Cookie and Set-Cookie headers in order to be + forgiving. Ideally we would have followed RFC 6265 Section 5.2 (for Cookie + headers) and RFC 6265 Section 4.2.1 (for Set-Cookie headers), but the + real world data makes it impossible since we need to be a bit more forgiving. + + NOTE: This implementation differs from SimpleCookie in handling unmatched quotes. + SimpleCookie will stop parsing when it encounters a cookie value with an unmatched + quote (e.g., 'cookie="value'), causing subsequent cookies to be silently dropped. + This implementation handles unmatched quotes more gracefully to prevent cookie loss. + See https://github.com/aio-libs/aiohttp/issues/7993 + """ + parsed_cookies: List[Tuple[str, Morsel[str]]] = [] + + for header in headers: + if not header: + continue + + # Parse cookie string using SimpleCookie's algorithm + i = 0 + n = len(header) + current_morsel: Optional[Morsel[str]] = None + morsel_seen = False + + while 0 <= i < n: + # Start looking for a cookie + match = _COOKIE_PATTERN.match(header, i) + if not match: + # No more cookies + break + + key, value = match.group("key"), match.group("val") + i = match.end(0) + lower_key = key.lower() + + if key[0] == "$": + if not morsel_seen: + # We ignore attributes which pertain to the cookie + # mechanism as a whole, such as "$Version". + continue + # Process as attribute + if current_morsel is not None: + attr_lower_key = lower_key[1:] + if attr_lower_key in _COOKIE_KNOWN_ATTRS: + current_morsel[attr_lower_key] = value or "" + elif lower_key in _COOKIE_KNOWN_ATTRS: + if not morsel_seen: + # Invalid cookie string - attribute before cookie + break + if lower_key in _COOKIE_BOOL_ATTRS: + # Boolean attribute with any value should be True + if current_morsel is not None and current_morsel.isReservedKey(key): + current_morsel[lower_key] = True + elif value is None: + # Invalid cookie string - non-boolean attribute without value + break + elif current_morsel is not None: + # Regular attribute with value + current_morsel[lower_key] = _unquote(value) + elif value is not None: + # This is a cookie name=value pair + # Validate the name + if key in _COOKIE_KNOWN_ATTRS or not _COOKIE_NAME_RE.match(key): + internal_logger.warning( + "Can not load cookies: Illegal cookie name %r", key + ) + current_morsel = None + else: + # Create new morsel + current_morsel = Morsel() + # Preserve the original value as coded_value (with quotes if present) + # We use __setstate__ instead of the public set() API because it allows us to + # bypass validation and set already validated state. This is more stable than + # setting protected attributes directly and unlikely to change since it would + # break pickling. + current_morsel.__setstate__( # type: ignore[attr-defined] + {"key": key, "value": _unquote(value), "coded_value": value} + ) + parsed_cookies.append((key, current_morsel)) + morsel_seen = True + else: + # Invalid cookie string - no value for non-attribute + break + + return parsed_cookies diff --git a/venv/lib/python3.9/site-packages/aiohttp/_cparser.pxd b/venv/lib/python3.9/site-packages/aiohttp/_cparser.pxd new file mode 100644 index 0000000..1b3be6d --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_cparser.pxd @@ -0,0 +1,158 @@ +from libc.stdint cimport int32_t, uint8_t, uint16_t, uint64_t + + +cdef extern from "llhttp.h": + + struct llhttp__internal_s: + int32_t _index + void* _span_pos0 + void* _span_cb0 + int32_t error + const char* reason + const char* error_pos + void* data + void* _current + uint64_t content_length + uint8_t type + uint8_t method + uint8_t http_major + uint8_t http_minor + uint8_t header_state + uint8_t lenient_flags + uint8_t upgrade + uint8_t finish + uint16_t flags + uint16_t status_code + void* settings + + ctypedef llhttp__internal_s llhttp__internal_t + ctypedef llhttp__internal_t llhttp_t + + ctypedef int (*llhttp_data_cb)(llhttp_t*, const char *at, size_t length) except -1 + ctypedef int (*llhttp_cb)(llhttp_t*) except -1 + + struct llhttp_settings_s: + llhttp_cb on_message_begin + llhttp_data_cb on_url + llhttp_data_cb on_status + llhttp_data_cb on_header_field + llhttp_data_cb on_header_value + llhttp_cb on_headers_complete + llhttp_data_cb on_body + llhttp_cb on_message_complete + llhttp_cb on_chunk_header + llhttp_cb on_chunk_complete + + llhttp_cb on_url_complete + llhttp_cb on_status_complete + llhttp_cb on_header_field_complete + llhttp_cb on_header_value_complete + + ctypedef llhttp_settings_s llhttp_settings_t + + enum llhttp_errno: + HPE_OK, + HPE_INTERNAL, + HPE_STRICT, + HPE_LF_EXPECTED, + HPE_UNEXPECTED_CONTENT_LENGTH, + HPE_CLOSED_CONNECTION, + HPE_INVALID_METHOD, + HPE_INVALID_URL, + HPE_INVALID_CONSTANT, + HPE_INVALID_VERSION, + HPE_INVALID_HEADER_TOKEN, + HPE_INVALID_CONTENT_LENGTH, + HPE_INVALID_CHUNK_SIZE, + HPE_INVALID_STATUS, + HPE_INVALID_EOF_STATE, + HPE_INVALID_TRANSFER_ENCODING, + HPE_CB_MESSAGE_BEGIN, + HPE_CB_HEADERS_COMPLETE, + HPE_CB_MESSAGE_COMPLETE, + HPE_CB_CHUNK_HEADER, + HPE_CB_CHUNK_COMPLETE, + HPE_PAUSED, + HPE_PAUSED_UPGRADE, + HPE_USER + + ctypedef llhttp_errno llhttp_errno_t + + enum llhttp_flags: + F_CHUNKED, + F_CONTENT_LENGTH + + enum llhttp_type: + HTTP_REQUEST, + HTTP_RESPONSE, + HTTP_BOTH + + enum llhttp_method: + HTTP_DELETE, + HTTP_GET, + HTTP_HEAD, + HTTP_POST, + HTTP_PUT, + HTTP_CONNECT, + HTTP_OPTIONS, + HTTP_TRACE, + HTTP_COPY, + HTTP_LOCK, + HTTP_MKCOL, + HTTP_MOVE, + HTTP_PROPFIND, + HTTP_PROPPATCH, + HTTP_SEARCH, + HTTP_UNLOCK, + HTTP_BIND, + HTTP_REBIND, + HTTP_UNBIND, + HTTP_ACL, + HTTP_REPORT, + HTTP_MKACTIVITY, + HTTP_CHECKOUT, + HTTP_MERGE, + HTTP_MSEARCH, + HTTP_NOTIFY, + HTTP_SUBSCRIBE, + HTTP_UNSUBSCRIBE, + HTTP_PATCH, + HTTP_PURGE, + HTTP_MKCALENDAR, + HTTP_LINK, + HTTP_UNLINK, + HTTP_SOURCE, + HTTP_PRI, + HTTP_DESCRIBE, + HTTP_ANNOUNCE, + HTTP_SETUP, + HTTP_PLAY, + HTTP_PAUSE, + HTTP_TEARDOWN, + HTTP_GET_PARAMETER, + HTTP_SET_PARAMETER, + HTTP_REDIRECT, + HTTP_RECORD, + HTTP_FLUSH + + ctypedef llhttp_method llhttp_method_t; + + void llhttp_settings_init(llhttp_settings_t* settings) + void llhttp_init(llhttp_t* parser, llhttp_type type, + const llhttp_settings_t* settings) + + llhttp_errno_t llhttp_execute(llhttp_t* parser, const char* data, size_t len) + + int llhttp_should_keep_alive(const llhttp_t* parser) + + void llhttp_resume_after_upgrade(llhttp_t* parser) + + llhttp_errno_t llhttp_get_errno(const llhttp_t* parser) + const char* llhttp_get_error_reason(const llhttp_t* parser) + const char* llhttp_get_error_pos(const llhttp_t* parser) + + const char* llhttp_method_name(llhttp_method_t method) + + void llhttp_set_lenient_headers(llhttp_t* parser, int enabled) + void llhttp_set_lenient_optional_cr_before_lf(llhttp_t* parser, int enabled) + void llhttp_set_lenient_spaces_after_chunk_size(llhttp_t* parser, int enabled) diff --git a/venv/lib/python3.9/site-packages/aiohttp/_find_header.pxd b/venv/lib/python3.9/site-packages/aiohttp/_find_header.pxd new file mode 100644 index 0000000..37a6c37 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_find_header.pxd @@ -0,0 +1,2 @@ +cdef extern from "_find_header.h": + int find_header(char *, int) diff --git a/venv/lib/python3.9/site-packages/aiohttp/_headers.pxi b/venv/lib/python3.9/site-packages/aiohttp/_headers.pxi new file mode 100644 index 0000000..3744721 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_headers.pxi @@ -0,0 +1,83 @@ +# The file is autogenerated from aiohttp/hdrs.py +# Run ./tools/gen.py to update it after the origin changing. + +from . import hdrs +cdef tuple headers = ( + hdrs.ACCEPT, + hdrs.ACCEPT_CHARSET, + hdrs.ACCEPT_ENCODING, + hdrs.ACCEPT_LANGUAGE, + hdrs.ACCEPT_RANGES, + hdrs.ACCESS_CONTROL_ALLOW_CREDENTIALS, + hdrs.ACCESS_CONTROL_ALLOW_HEADERS, + hdrs.ACCESS_CONTROL_ALLOW_METHODS, + hdrs.ACCESS_CONTROL_ALLOW_ORIGIN, + hdrs.ACCESS_CONTROL_EXPOSE_HEADERS, + hdrs.ACCESS_CONTROL_MAX_AGE, + hdrs.ACCESS_CONTROL_REQUEST_HEADERS, + hdrs.ACCESS_CONTROL_REQUEST_METHOD, + hdrs.AGE, + hdrs.ALLOW, + hdrs.AUTHORIZATION, + hdrs.CACHE_CONTROL, + hdrs.CONNECTION, + hdrs.CONTENT_DISPOSITION, + hdrs.CONTENT_ENCODING, + hdrs.CONTENT_LANGUAGE, + hdrs.CONTENT_LENGTH, + hdrs.CONTENT_LOCATION, + hdrs.CONTENT_MD5, + hdrs.CONTENT_RANGE, + hdrs.CONTENT_TRANSFER_ENCODING, + hdrs.CONTENT_TYPE, + hdrs.COOKIE, + hdrs.DATE, + hdrs.DESTINATION, + hdrs.DIGEST, + hdrs.ETAG, + hdrs.EXPECT, + hdrs.EXPIRES, + hdrs.FORWARDED, + hdrs.FROM, + hdrs.HOST, + hdrs.IF_MATCH, + hdrs.IF_MODIFIED_SINCE, + hdrs.IF_NONE_MATCH, + hdrs.IF_RANGE, + hdrs.IF_UNMODIFIED_SINCE, + hdrs.KEEP_ALIVE, + hdrs.LAST_EVENT_ID, + hdrs.LAST_MODIFIED, + hdrs.LINK, + hdrs.LOCATION, + hdrs.MAX_FORWARDS, + hdrs.ORIGIN, + hdrs.PRAGMA, + hdrs.PROXY_AUTHENTICATE, + hdrs.PROXY_AUTHORIZATION, + hdrs.RANGE, + hdrs.REFERER, + hdrs.RETRY_AFTER, + hdrs.SEC_WEBSOCKET_ACCEPT, + hdrs.SEC_WEBSOCKET_EXTENSIONS, + hdrs.SEC_WEBSOCKET_KEY, + hdrs.SEC_WEBSOCKET_KEY1, + hdrs.SEC_WEBSOCKET_PROTOCOL, + hdrs.SEC_WEBSOCKET_VERSION, + hdrs.SERVER, + hdrs.SET_COOKIE, + hdrs.TE, + hdrs.TRAILER, + hdrs.TRANSFER_ENCODING, + hdrs.URI, + hdrs.UPGRADE, + hdrs.USER_AGENT, + hdrs.VARY, + hdrs.VIA, + hdrs.WWW_AUTHENTICATE, + hdrs.WANT_DIGEST, + hdrs.WARNING, + hdrs.X_FORWARDED_FOR, + hdrs.X_FORWARDED_HOST, + hdrs.X_FORWARDED_PROTO, +) diff --git a/venv/lib/python3.9/site-packages/aiohttp/_http_parser.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/aiohttp/_http_parser.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..d36057697bc69582e1020ced3568c0c0f7722229 GIT binary patch literal 2698432 zcmeFad3;nw7C(9k1j7>3pwWoSv=}wuG94ru&^R47I})^I5k$u%gkaE+v`I%J&S=Xr z(zemK&7k8F85h)1TgD~gLIZ*kw-&dETih>3Fz$#;-ua$7w^LoFo%eh1^Zt3C>3q8D ze!q3TJJ7kn&LR_IWh+cE8L)dmeBImaU z9XBY>NiCPcs3RSRt$3kFE59bvO(Qtha#Fn<*B4XymXV(In9^}lz1%>`@-N0KrB@`U z(eX@MZDlHT%B2y6W%ZTHzWV0mG%mq%(hMmMAMq@NKp$zYqA7;z0b4x$p9JUQxNWSe z$4mzdW-}|1DrlWXOa)qf53>2;v>E3gM3G)WmtDze)fc6(X-DVKENI7 zXZfg-wA|d0F6EbNKyG@m`?S47p%eD{qpM#=TEC%rRx7%|J^bI+aBE;Oe0i3hcsxhX zE%bbmo-fn$6?$%^CmyfT^EE!QtT!lqlb&zU^Bv*drSv^|zE95&ghTQXJwK-BC-nT3 zo}bZkJ3aCETqTLuuEddLeL=@N>G>r+zoO^2^u*(Pdj3GqAL;osJ%6Pq9zA$L4%j(=(f%`_L1Q5tROco^E;`LeE3#={ydX z<5853rsom#JW{x$DD}`YpPplcJC@RM^gN!PMf5z8o`0ez9>tWt)%>&nusgRezyFnr zrK8^a>a;6{^gpPr>Xf6-@ZD_1w*G1At?_WXiRp8WfhkFD-L>VRSY`OfpNdnfOzXt*$b$U6l!XU%!@ zjT=wf|HaUYx7+=KnKcKVyW_NJ&tCHMk3XN@JnPS~`%kCmh5KE6@oY*jyMNoN^G3}v@chX4(h-7$ahTbthP3WYl=4!E!9tr5Ey z&E9pw#L(kpgJ<<~M|KaTI6pzhH(!3{XPI<7{IJENhxD8CLGJs%WOwa&&~>1D#-fE| z?yWih@RJ|-(-9~8SM5Ema>7SfOsurJt0z)AnVwgi@k!V9*I)V0BsxBL-{D7gWcr`D zcflc>_x@B0u`{JXtK=s9Ae)q)}4eguXpBAsa>~E(9zc2nFT6Fs258mIR zb?CQ`cL()te_slHXuE$aW9=T&x6Y&#I(wvO@1Iim-<-m}D~0{tDf+8t&%XWamm&_g z?a{aWODV?5*cASBq=>`wDcbet6!tf!7*~HyQSbT`{qjPJ_6|)k-iD>Hf0a)DeT}!L zQ}{nGh5j3ved~NiC;Yzjm#2t-UJCn-DfoY+7$<2d;=D3NoIgr2PWDUDt|LFVa)!PfF46vr_20vik1F%oK6kNNY@A{f>P?U;MWz z`uC<3(~_Y%ax*Cr=%EH*Qe;O zZ7KYmpCUd#r5NYgDg697#X7KW3O@&?n0HU7&~c~m|KJquJ&xMdSO3mU(XN##`uFq{ zl{9GM~x%?I?|u8UIWkUN%}p627R6yxyZ6!kutqFr-S=scPt z&fn0y=&N5Qq*$-cN-<7uNTI(e1;0H-yJ}PTUz&nnm%`8MQs_UDV*EUxf)A&t_udrs zj!L0(M2a|kkz)Q<&;aRc9S)}$S9hn--;$!gdQy!4$`teWoD}xwrts&X6!!5H>sxb* z_Kr`{uAM2y|2-+zx26>Ra%hTvjHb|UO3^NVia7i=#rU}}MVze^;~_6aKMqOZ=j;@I zHl@(-P7(ioQuseDg+DbZ_)RI|6Hjqo{y9Z_8dHp)pHuK#Q}};wia30lB5vUn`gtk% z%TkQn;VI%UDMfqpQ;g40ivIdz3jg0pF)x;;SSJUisQ363@$5?B|B>XUo1W(5oD}o1 zI0Zj7MLcnzuCH}+Ns4iGRSNz56#iGHh#TGH?6clriupK&{2XZpf$%3O{M?vgTy0BX z|6vOI*HiT4jui1cEXBOomZDwZ6!zz((8ulhzWVF56gq#S{nfBO;^s{;k0$Vam?4&b zH3fto>Xq)*(tYmX)(|T;Sus={KL(FbeCwl%M?c|l%07zk7JG7=AN!Fr&~Z&v_B5RM zF-Yv=V(--Zj_6ysVL}gwAF`Ly@k~nQZ=mZq=m#b!-l_Kz+N6Q+HtKzBKjFpyL%0@t ze?sizVo$@H9|Ndgpi^$dXN&mReOIzS+v&{!*jv)BxuWw=@joE`J8@W>BleFgos((Y z;BgprI&`AaE+_sUOMgWlQuY)^evI8$*@vbm-qA0V_O`B7yu5v3#i)VMZx#RlAUf+M z4lcvbPSFWGrgWUR-6QpOKCF0WJX|I5i5c-(FZKZ={v)Lyz0zK#W?7d=e9GGtbFBC| zO2$v8G2ULG^%?E*8vS*l=$9M%?b2V}(q8I0ejF>~KOp)Jf4lIl!aMzvFa7Hk9dd&o zHPT<*_bdO8qj`wOqvB6U{Bi6jOWazGI6q12D%w>p^TMh3YMEbN8Mo7wyj4x>*f48f z%e_g>2wHym@s`BjZOq@9!nYXXXO)ZxOWNhs`>^=gY4q>W6e#%VS)(Xo)KOtjWDzlJVIp3JHZGzn#*@@=`(k~vPzuaOUHSBK?{Z3;YXp(kWvhK~4 zILsFR^kb{^<6N=dOV%HcQSU(U$1U@5yx4yu z^}39G(KPWhChc<8=ebV1WZqS)<<%;ZdE_?c(E{N;2LH3P%QDvOTxVS}=KEUFX%!u3 z{kc!}8v*hEkJ7I1oOQ;~pDJ;4$vmZQ<;PlSZ?`cYvt+%E8UFW39O6ctZ;^5CGRFBV z(djgFW>M`}KmBV}AaC?3e@08c#KeE9jvteyU4Daa6nl@XOSNKuxcJ#E@gXzyC@VW> zQC)3WL$IPgSXO40mCT%0HovOA>YRlQ!K(V1($Vj{);9zRhG@XC{Q)IzP_#=xW2w@N?rY; z3S>@NSQ#ukrRqXDJayi=RRpFltgN0`wT8vQXfu#VAV!m_Dr#!#DoLQY{+zPYDUkCk zf>l$iF1oO;em+r+i>hja4U{b*YC^bXR@YOMX9UTzj9N&{l=_NARml-NX=2%|+L`qg zmFH2uM3uObhAGlt@LKqZ&swfHI;q%*W?Rh)^S#-g1NJ_X|fLy96<6+jG;;T)GyMQB&m zJk_?6MS(gR#44d$8*8dct1hUjQI$|hr?#4^iu&1A73WQ_T7a5_rkG5s!T_6C5on;Y z5=CyqbPDrDlqFSAtd)K*rE+@JPN%_JS6@l-R1M>aFtfhVnF#3fDHSyh4oemSN+O;@k%w@KN|n~to>NxbfJ8J-y`ZXoK~3F-jtYA9)XK`n`g$G^TmTU!^O=nS z3Ob3+s99K$7U9FDuWhnorRpTNMkxng!1Im{hf(qOk_q6S3S;J7+HpR{QH3 zPOYuM8pA_@8aX3a7oY&w^AgotG1hECPM{J~+L;_wv%hX3h7Zd0M%?LWo;GAOrKWyn~Nfp5gt07ol zUs=tgS}g>{^XDgKDZ7IbilH(y0##UT#RXcDu&^QOCoR07s+Q_h3yw2y(1M8w`jp1n zN~}b*=pnqsi^Q~w^QvYBr2BfO#woNQld|LW#JXBK8xSFLWmav&!gFe?=F6O!=*T-G zrED@{JiUshOanP4@@1t}6&F;QtT@uU^zgLo^$>*<`Zzz%M3bGCVz^DLXl&rAhh>!q ztdBa3tei14c~KyUIfl7Nqgzf{Y5+<%@(ECmPib54@2svV8y~(OcL%W)F54?*7HeK4VCpyC-Law$sAN` z*~Fw>0|qdLdm_}@s5zyoDR@dIns0s#Y z7tv6*uy$e4A^F&UQEz}G{^EupYQ*BITEz1=gjxoj_?%2Ln_BKbi8eXoFjFcTf)nck z7fr0LppilYR9nEv;i~$DmDI6(lJ6aU$r+g85^=-_(?s<+72qzAm7r{DZQX^nJU=A@ z=THNx>g#Lk^v;=q0a2C+h}hKCm(dQXf%gsOP|+Hw#zQGBfwlQgNGZ-`HC43>sZV4t z+t6259dAo2YRYId%&S^J+n}J^VD}XsXrKYYTF%)ESCN{N+ny4F`6LMlEV2V+! z^#Lcdu6G1F?a{(4;?6*>u4}BBUv^$qRiKPEc^6=rQCsN-UQY;$Qxuq9K>kc@B7H!%et4?SPoKsKND2`6=kO|abILiVujaK=E zff@wNi6ZTgv7TYrmekI#YI0Vp#F9fC<#V_w3^Fp+*=2V9!eG^`+WLxx4SZ3hWO!;+ z(1vkx6HRJ$4KS;gM$CCC6f`F=Wy?zI>dtG#zJq57ZC7P$)_KDbDoldh= z?W9kgQPxl!po^y90+LL$u8+l(tCK~;u~U=iS}~aslu1`V#xCSy^INIAqw!<<9u?h8OvEhzzt-0GpzUiAcz(Zo^84<93c9_TdZzUipuTkyO&Zg;A3XYh z=aeIp2v;Sk&nCLj|G~+mY)s!%NzKULuTrx~S))V=Q@^o+*4EyAVA2`I86yA9PUKRa zzO{U9e9?_}*(*7lhs1cGESU@!;4V}jJl#{R>D>yDy}GDSrF8pwb#(92S>4EvZprZm zP@@{_Yjg`|OEZt&2B_6Dbe9qv9^HV1`sAe``}|u2xo}cO=nb`#(uGszsl9y4?B4eF zDQk>wvJTYO1?wv7`fi4knea^2?!>Dv$LW%TZqjM7{yk$g%yetjsdST|if$C4G3ID6 z4Y2F(v#F*bEB)WHN8xCT{H!8~X z2#POB6cu*%j2ywL`Nrl|zZ;=lF-s+SZm_%jiA=rX#G;)$CcH47Zm#HEC;m9VR<@3q9O4@Z>VYMj@24qYV9r#M*)gDxT&MtDhuZYg8ZJ>(G7J+(@AULyhcYEQs?yA{QvbxjlwkRY5L3oeY}7l z*I)B@`p8y)t6jLp5ew-P3~AP@gz<2GH^ce7g;zcoFh_n*!{IIA%MISaA%m~no2sQp zi^0D+T=A_2-#t|EQG;(0K4$PC;o}CMx2MwSG6|r5XD>pe2~H}gYOW1x52yd1x0D(!7C_;&HX)!_XDm44LVJDvC&d|c*H+~A`Uw@!n9 zPsT~N!5=5Q)vW4w;@>L%yA1w0sn>1rZPG4}!3Ty){0%-P{pC0K)uK~w@a3WtF!;Be z@o(@O#LpIk_c`m2!AHfPsKLJ``Z0rlS@^iYyQCjG4c;&Fy4&DgGCr-VlH=bZyvyL@ zqVG2N=wMaeWAK)&GhTy_^;h@w>ab9;8$j^lvMb{Tk2C%a-X-HUWbi)GX)*Xh;ad%Ui;U-}!3U(hF@q0fsdmK;KE9{o zI}JV{_T2{WmH1dK$?>;@cNzQ>&iZ5U4-4-x_<)ROufhAJzx)Q@E$8cUgD)5V0|uY( ztUm_tb=Dt)_lr)e!3SgJ;Rl**Wlgar{CZY z5Wd{tkCbs9F!*j6&mn`~B=#)^pCkIM2JaP}sKMtASN_KgzFXoJH+Z-7OQ*rd#lG9% zT~7S3OOF3O;-|~thYRmEc$e@VgP$n8*WkUv`wjj?;mZxaNccbsK9quQG5GPK(`xXA z!bc7MSm9#^KUVm-!5_Aliesn2yN4^j+u(DAx2{i)e~YvJn7p(9F?g5syT{-&_Ex%H zgLlb#;y3sfnMdUYZ#m~*gO5pjLk54Bw5!G7LqBzgqZ! z!MBP|$lxs}{sw=e@T~^FOZ<--d_cxq%;5JHf8qwer|_Kyf3(D*+u%bo-Yndvp@*~o z^ou_(gTGe%cN@IdiNC?G6o0%1e}wqsH~4PRDK~ga>;nex5&MwAUnljp82nYjw;Fs@ z&a+X2w?#i@@ZECV9XEKljN49wcM0EZ@DmSMSUn%~$48BwRaT|QVIsY1bh7*5- z4-4-%_%z|m4L&4%z~G~@E`S3e4exaH+Z+SD{Al&8E-Lz4+$SP_;QIur@;rr z|89f7NOY`~$??yVesLN6F41ute6{c%gOAB|me=4b#oll5-Ev+iH~4z-Ghpx?&iFU@ zFGat_;9X+hYVdIx&ryS4;p{&RzEk=)Zt#95{swPJz1;>MllueKjmhy33GXuaxYX-5 z_-<$X8+?=a?=^V8v;G+T&l2ZygYOodfWfyq;ncLb?$!}{2b9~G5GJD_#1q;@KJ-0Nt|N_?-TvF!TTi+od*B8=yx0Z$HH6x zOpbq4>U9~sU+momzgp})2LGA(<2Cp~@!xOoABlar!M`W<1`NJc>J1sZNBXP9;C-Us zYVZ?_qxepPkH4YfZX0~GL-E}PzxqwZ?=twN z*A;Kc@3}kss5!!C7`#_>Tn67F{^S^ZOnA4!M}^Nbcw6*6245|Fp~1Ha?=|@N8WlI6 z!N=w)-f!@Mi0YR)1|O|b_T>g|^;f)iwThn;H}AXZd*O2ozWfo58OU-hFR!y_d z?-2Xd2JhH+n!MDz%iyj1B)(3{S96vX!w;s?Bgf#~gB71=@ZQl9e}i`&u6Uop`wvq5 z9D{EaTy5~3f}0FJ_HX6?3WK-APe;#L9};mh?Bj*XAEzG2-Wi`6Qjf!bB=Pqc{MW+I zF?eS@JN`O4d&u}{H|(Q>ls|Ek&r!T>@GjBmHh4#8m&uEc>;B~Vl_NSi1|JZA+y>t{ zUinjK@XosGHF!tIXYh_rxxqW@XSKn5ob}n@1LDsLgC8mFYB6}vK;{2RgLg}Oq6UAY z=(HKUqZ2cDN2kN!3q+^W;Jwl=>w)BcnIQHV2JhJC8T=_??=g74==%-+OtGJ1@Q!_x z!Ji}cA%ia${Z@lNU+h;Kykp;P@QcMhZt&3|s=qo6-X-VFZi8PTI=c+s(Xk#(j!IX3e5;LDy<{2YV#ysysJ0fV;hSmGe%oc1Q-VDPS;5(k4%#KGXBH%J@|zT1g|!6)MIc#1d} zd?F48?_R6Qw;6okLTRt$JMFD>`rY7L_EO`=Yw)ek{@mbQpDX)vgC8dL)dt^vtMVsg z@J{?!7<{x_*|!?J6aUo)@4rde?=pB-ry94eCz9jr-AmaQ8od7-#jiB@K(6>>@Uan! zZ#Q`N)2hA>gAY9^emJRG2CZ0!if4|&xBf}#C(4O^##gFcD-8RnT#v6d_{Co<`>4UY zWPOMm{F`#V=rH)0=FxGj*Gq9;NKJdJcI8Pd!NC7F7|$d?-u)j!T%uk zO$KktzG$Vv_wQEzw;H@l>|+K$MC{uQ-Yxb{|2y-}8RvO2E*w5SUe)V0cxRmZ489xx z@PQsH4ZcvudDP&&*=qcB7<>!=H$wWo-*w6T6+J}Rdkx-mfa0qSzH_}Q-(>LanBrF( zeCJxF(`N83@`JEWIVV2H$hgfDJ%@KWjGB5lF?{>zC!8`M)$>2R=ztZ5Hao%e1 zUa^lEyfe<*4c;&Iw!u5&yxZW*#oi_HcH-cS^BjW@h<%~KJLBAI@FB4;H+W~9R~vkb z*sn17^%DOUgKrgkXS_K6UoHCz+pzbar^bo3A$fc{^C-jM{l}G{W4_%_{TMgdvXSKmQ`>2?~JMC>ZcxRv1Y4DD|ZScOYVO=vn^8-Vd-1J}UQb3vX597O(h! zqRzvs@oL7Y9G}KJzom^Fzs5WNpA`HYjdy-C8+^IO(@*Cn9@QG}d{+vY0gXR6VQpDW z8t>Np4{7{3&3=W(f2r{;8b3kfS8Dtujc?WX$r`^}*6iaN->vZ-8egIDof0cHk9xFATenLL+Xw~@a1Z!EVHU0~Yk7_*q)OX_1rt$RC z=7~p4<8!tCYS;MB64sU#*LeD=@5G}+UJWG=8X`ND2;E|_@gyG zuJO)q`6IhS<2{;vr^e@NyshzLG`?HokJ0#D8t?q?1E~$taT@Q|_(F}()A+A6-lOs3HNH^e^R;p1)%c?|-ly>=XgYq4FVgrq8sDSw{o02F`9i; zX^Xzbp2nZ5@g9x$YkZ-`f35LejXzD}eHuSq zxL*wUY{IeQguJJ!;e6_~U)cAnL&(ioNjel9=LmIzD<5y_>=^Edn@%r`SN{yeb z*|%!^9F1SC@n>j!RO9#3`n^r#vo$`Z@q;wJUE}9!`f-gvQ{y`{{tuc?r^cV9+1nc5 zrSaVwf40W&(s=zk+Pb56{FiC=85&=%@h*)|)BMcQ_#%yWYy4=9&(ruyP2Z#ORT^KY z@#ko~SL3TS-ly^XwR-&;uV25<(fD&UopOyoPvfgKzDDB%8ox;6n>0RC^CzV7wVM43 zjjz-A7L5;R{7Q}Q)c977|3%|hYy9~dAJzCzG`>ya>oq>6@eLZ^uJLh=k86BT<2y9| zC5`XY_(qMlHU0vP@7DMWHGY@IH)*_eXYcs`RO2%={!NW{Y5c)jKjvuscFo?c@ryM+ zPvbAvc#p>aMdJ%KK2NLHtMPx;?0p))S>yd0kN@fHJmzTpHix9NT;qpo_SG8yyk;NJ z_~$gfN#ozp_>jhbr12{>{xywn(fCU>ex=6m()d=5zf9v-Yy1+8k7~SEYj2yzFV*a0 z8h@f@->&h?HT$^6zoYRT8h@y!)2Z?AYWB9q|4rk&HU4sq-=*;fX!_P&z2iTu*=J~c zMB`l=|GLKKX#7}B->vZ;jnC8gc1_2l@mFblp~hdW@m`JJq47SAZ_#+a#-E`1Ge_gE z(d^4L{#uQ%*7)l*KA`ctHNHvXf7SSq#^0dvD>S}P^Rq?cKh*43YW&|dzE$J5YW!-A zU#am?jlWUj+cf?rjgM*kEgIjh@waMxT;p%k_zsQ#N#i>;eh)1Uw#Kj0?7KDoUmCwl z#jf3LW1$;}6pO326M=nthYTKcw*?jUTD$tkC#}HTxEg ze?;R~YW#khPOHX0s@bpB_{TIps_|_a-=^`8YkW-OpV0Vrjek<(;~M{z#&>A^(;DBY z@#{3+*7$U-z1{8z=MGOj28nB2KF+p2Oa|KVSFy|P+&LXdBB;#F2-|#_XM^WPY2Ed z?*5gCLr(^F0e3Q<06Yvh&UifVaNro@F~EBPM;VU>-W#};@kroo;1i-E`vLnI@1}079s%rS{5A0Yz#hh*10MkFX8a-Wfxs@t+kg)Owis^( z{sVCLFKGW3U^j3l;|;(E1IHP!1s(|;W4s3V5a1}|dx7!Mh3&13R{h%5M*;g8F9seB>}6aJd<3wE@wveG2*7qX<9WbG0lOH_1wIT-fIAsa0L}-FGae5-1~|re4Dd0)QO2Wz#{#!99tm6k+`@PS@Ug%l z#>0V+0}e1A3|t6Y&NvNt9I&79?q3Lx2lg`l8u)l%597~)PXKl^{t&nb*u{7o@QJ_{ z%a^OzJ8-Oc-f1iSz^#Q0j^ zbASVkuK>mgXnQ&1CBO@T{frj_p9}0|Tn~I6u!r%vznPXIn2IL>%Ha6NF0@fhF+;3(tKz(L?v#v_3nfm;}l0KNb?#CSOH zg}?#EgMpiX%NeHuUj*!Dy!$7@i-En2zXrY-*u(g9;J*O78Gi`;S6~<8ZNQfRTa32? zUkcp)1NT302)L8+2H?wp$*o-wf<#{2}lyz%ItyfNur17;go> z4Y>O|?tkD`;7-OHfNuwmGhPe43OL4i4e-B!qm1tbz5}?G@hadufm;~g1bi28i1D?+ zcLN6)Uje)txSa74;Cq1mj28pn3+!cF4}2f6hw-_<{|0t5o(FtCu#53r;0J&$#?yfx z1n&Np`yV(8+{t(X@I%0H#^Zt40LK`Q0saqgl<{cbhk;uej|6@MxP|cu;75T&jE4h1 z1{`2K7`P3%oN*fP}6aJ{5-IS@wvb+0J|B_1AYA)`o zcYn?O4;%;XWIO@*72r7I@xWVwV~ocDzX}{>JR0~l;8w;XfnNu1VLSr(4d4*t;lOVK z2N(|q?f@=loCf?Bu%GenU4*v*dl`QX{5G(M@#nzr0J|A~2>dRvi}5z#_kbcfqQ_v zzvTW0#z$1QcM?9$7da{8`w-UGP~(Ag7hx*>kc=<pOn7J9rRT9-OdzGhul@SuSnwnY(d@FZ>hTm+QPto`EIdv9I`gHu%Q9+Soz&K>TNJES^;o{;qgt zN%-ekzVPcasJZL#wHEtZx;6-JTpnvIEe(HW|DARUzDU8dhYchLzO?tC3n!{QpQwiw zH90?48s1(S{*a>aBZbu$eir@>_4Q;l4z@p|f!5W3>GM5v!yRY-x%jN&KX0Vke#zhJ z3;!@9|NGPI(@Bu*8`CK^T_^h@Pr(OLfBH~VxWO0RXjj6a4ZcW!Ur)O)+<*Dji?UGS zC13b``*P?%g9-=a$GQfC3WEB2?wNnySbVxKysLOt@k~@XgJSN6;aMYK>eiI$uL5Eq_$0lXi!C8~D9^FyWGc>m`17lz$ zb?fBiJ1!|F^|MC~wDO;GifnceLX`OGtd_{jpX8`FZ665NR2K%{?Gu` z5nKh$muLr89NyG*BgRRly^ajK1{N>BrYGdl`8wpzK=Z6T#FQ~J($K&A_Vpky&euJUix!SV=jinU|&yGW4e7J z=3E4F5y(YO$hCj^f_$2YL+U!mZXdS$3z_tCX~MbC#ngxwdb()%XElCj+dD~OXCfSL z5yViN6z+6}8V%CP;mw$fFJdl!>kGdzYlhvrgAB>JW2j$F_?(7Ccw=Km{*L0MpY{vV z8nCT2yc0ouyo+YWCdeO-XfH->SgFpSB1>PS_7vKu(`+E2J?y9Gl$XEb%&^U~u=wna zGA-=+h;O9HW&abicj>O4AWg&U_vqIud`oxtG!F8G(_bObb-Zs}Ja{arf3uy3_-lLd zaJA>7>-ME#ym}lQ{nGx3;--dJ9Q0Zo>*VmlAj(~k1-P>Cp zYkDbR5+$}Y{HZeeH%wM2llu}Tx9BD}!=y@?tf1x1*PPj+=U<8Z$(*0HVm_TXd}?jm zSUkHp{6q2SCE;I-XH5%lLVvz6t2F!~mLAO5ZTn(Po0*$ow_+eHk7X^x@{`{~l}uay z@uYBDh~v_fhmlBQdShugK;7-lDGhrA!2u;b19J19%m2PKT^Yx_p!ZZB7 zaKjvW7M6z3D=+DpOp)FZ9N?pa{8-lP7?#`fs(s;!O~sKZBzWCQs^`$FX@X@9Te^ad zDQTr->8_06sh94xbXWi2X%xMzSg*%nb_h?OX!P11z zSG4kW9a%E&nTBJh(`a~u^7Fr+7XH9r61J({xn!8%gYzHNcgESvV|0RYR=`imdupII zLVAi%FOGdVpcsqn4>Ijvn}uCLY4`^oDYPA+b$39n{WumDn&22ISpRr!%8!+d+kD9| zUu5si-1##%<@kDHU7zzp75>~8-f3S(bG?Kn1x@@)YTU`$1Fe$qTP5LbzVLfAw@I zFFxJxpFSzP)t*Le#YO`4^h~p`-hXND+TPPs8vai8r|qn9)SuM8rC(Ir8RQtZ=9_f1 zCbQ`Pcoy?vc5eJ8>yq^24x}j($@cC)&|0_OWqZ4P>px4++9y4J&_F9|6h-6-ns&4x zwNndN=T_1|xgHW)x8Lng_$mc?bToPBqb-|@-O5#p#g5`0+`ROQl*V{XH~T4Y>x%miuvU?h zkGh$9XeCHeqZ3d1x2OurbQ~8x$KJpv`t;BCrc4ZnI|m?u>HESUlIf+y@jUxXaO+0) z_gX`E#&8X%ARMT{Zc<8jI!b3Mr58C~nO9MgP#VTc@O65xuU|MyRJ~90H5bNILyon(LwNd5~)@@=d}VW=HRoz-HJlV`~^rAL_{9_rKBChj5w9y{Ybm zr&;@<%?J0d&cOXC>YrPQ;I0WPm6zyO-8pbIO6AZhGEl`y^T3{*fzZx=5IT{}D9df= z-cT(LXf^nP>83W;U!>D^9g818Ks?u#v z=@V7ys4D%IUYf@#xiBf#YE|OetO9D1D0&6iHv8Nn{?(vf1}?Qgr+TH3;lC z=;>NdXHZ81yythCq)^!^ z-3;oBGo&xbFzhJNakCs_Sy(8?xZqeM$8P&J+S+6MIJGTNwVg!e|+sJ6{65^O$=cdL8*!h6w$u-f|X_=rw? zu`XBQO!y8Fbdg8rhHAPtn}rL`f(}x*H+}-Yaa|LfkWZH>&)TEx!|-+N@%;W{bR~<&a{6aeP6hXPPKgPH=8!r`QPhTe|e>myZMSPayhnL z#m$%WL!CqADzG^GYgd=AvZwed%EURNzdZ=&-)H&Fa&oXFf<>8EsR6muDt{>%_iR@4 z2C|(Rne;Qor;RV458(~rdU%{(+_R}`YiVRT@A9@5(?#PB-_jFa?P(lWqO7qSq@7P` zt_zp{8TO|*kI>$a)WA`NbXpzoYV(ACzGnw)BxTAS@TzZId+-ii%u^lXROQVDRYMUI zTvKv&ayj~scR5nDH#rJhGum^#-pSq2wf{7A@w>f>RPEb7Rk@E*F70@iK9i@NylG#1 zI<8QD;VTqAmD8<<6Q4esM=I@9OT#_(QRoW_=YZ1YrhXt!pzWWtd6|g$(_Hl7DB3xX z{Qx|=J8KzkCi!}3wmfUUOM5{ME_mD&qKyprSu_^ZUZye2p7WWi?JeH7A0Tg(OxCg+$zU37kSSJ88Q3kChO0Ah!8X)Bj-2aC zM>{UWeyWsi_t1VSpN3!wkH_E)*iRexT}fnM@NBvvQ4$`Ai{u~dUnp{pH>Ke(r%|!B z6!M-}(482fZ;?%D_#56Y9f18(I}u&OOM3QH8jlmCLEA;QHs0+TF6!%{ej5xQ>tkPq zEiz`(_jJ~%GrzE)b2xJ8A3oMj)2VB&7sU>H^t>Kcu=9IWCe z@tU;)_s6^TD;@Vs*0POsXx~64Xzg-b&d`-Xq~K!l@%a+?$hT&)iLMb3_oFp|^!Mnh zwtxH(eNZr63fx2m)C>z25q%67V29o8aMRpgXAh!GJ4{Ptud`1O>dI~^=o&^BpTVQ; zp9ph+@^_#uHzRvWe$0srx{0FRmCl6yqFB>FNFVlAI>m+WW$oO@S#X}TX`y+(XByon z$t>Q%Z%bpYla6=qK}uOQ8(?FT{T8x^ z=}0mqej`!O3bn7Io+0WPp@u4I6H)7lvTvm;TTF`ee9kIZPB#XrX$z<+_I{K_EAg_s zIICznxbx^{4!CO-cOtl}X^#l*5^&AwThbv>a6BnJzBkPdTC6Axxe#tnZ=N#1`sPl; zAG1~ZFXRKo?C*T5z32y^a5{dQ-%c0D@|0sA<1S#N=ymuUqJ?VsJ-dBPLs8StdVecodXMk%idKkC!!bO{qwS_7{{X1~c)LiuA zXPmVLSr1CqR?5nc&Be_w+7!@D#2LQJzQDgap?iE`suCxhQM82^_fyugm%i*rbo$q? zVJH^#SNBuwW8UT+$o435d+2S7qSN5&J6IUQ>B|u#@?qIOaOpvNgXW?IBPle$bWk>( zm+4&qglmCg7JylE(btEN&0EPfCp$K!u!&@k;qVuI^aq5$;ANEffl8pkquJuXR{F#N zHK6fS`zqR$7Prx*G2QLPTg3h79$MvBSx=AkOlm$QUL5*y(1k-VZR^y|@$LwxJM%;;HP+|%B;#TP!X6qbzzTi=!QbUQ|W^S^WPX;a^N+f_W1ZZqva9711aJsK-+!v)*p6m-i^ z<7+szq_jCRpOP7V+UhN#0Mk~%o!_J0te~yPAEliWsFJSBe9Z^$;l@2I?2MjylN~uq zIg+&uzww}Q#$$;Or|<9N;M-hO-P=PDzXK0g$E#K5ldq~(>t{;Uf^<|HIab<0A2hyBf`eZJk6)f>Zmhqu4a;2mszAV=VW3}ZujJ7 zkz?CoQ^2wSg zNSes8r;8>y(qwDW%poY6IE1E3S(D|HHBpc>kz@b5Rka-)X|gqGx(JFU4xy=1)@1o) zO%xkz=QcCOFb$YtqD25>1{}q^VNYWcg%G6eLaL*bls-;t7s4*_t#lO+}MuENQBg zHCaAc69q{VIrd!91V@@|O`2E&M3Ywo(o`vHvV5{83X&#r?17>Qjx^btG_kyhCa*N4 zsZ!Qt`D9HLBu(VlYvQWy;7F6LNwcF@6Nl&{m9i$wCu^c0X(GoyTQtFuCR>wcoS^uL zLto@(ruaH+nUaTQ|3+Gu-p9Ixf~1Lx?ZKi6jx^aB(rhOvnmB}?DrG;pnq)swkTj8F zKl-w2J2=v0YtoDn6ipn$PnEJJ%P0GZf~1KYd!A^5BTcp@%{GFfi9`6QQr2YoWIs`m zG?8QPDVpF&ldVZJN>DU$2tQTInk=8}Ckm1#a_qG)skVb7O|~Y@)dWQohwxLStjY4p zexe|0BFA1Jn&3#2tx2<$plIR{eyWr;Sw7iM6eLaL*uzB=9BHyOX|5zFnmB}?DrHTU zPxcc9NfSBt(=V#FgCkA0Ce0RtqKQNJsZ!Qt`D8y)kTj8FpDUW+NRzEea|J=s#3B4t zDQmKPvY#kOn#i&D5lwKU$=0M9A}E?Tgr6#9O_opg69q{VIrfGZRNKLkCR>wc6G73$ zA^cP+YqET@pD0M0$gyih6C7!>HE9M2iY5->r%G9q<&*tHLDEEyJwi0WktSP{W;H?4 z#3B4tDQmKPvY#kOn#i#?Kd;&jjx^btG|LH!CJy1JN?DWTll??N(nOA3FPh*;ldVZ} z4nfhxA^cP+YqET@pD0M0$gvL+O>m^i)}-ktD4IBgpDJZdmQVH*1xXV*_LeQG?chk0 ztx3~IP&9D}KUK<_ET8Nr3X&#r>wcAwki^A^cP+YqET@pD0M0$gy8~PPH8zX|gqGdI*Xp4&kRtS(D|H{X{|1M2@{! zG{KQ3Ta#uULD9q^{8TAxvV5|iC`g*fu@4hXaHPrBr0FIonmB}?DrHTUPxcc9NfSBt z)^^o)aHPrBq?todG;s(&Rmz$ypX?_Jk|uKOOGFbKX|gqGx(JFU4&kRtS(D|H{X{|1 zM2dt>aR@(E%9<>n>}MxgktTBND?}3r%G9q<&*tHLDEEy z{pm*4c5tN0)}+}=P&9D}KUK<_ET8Nr3X&#r>}y369BHyOX|@m)O&r2cm9l0lsANA; zkTj8FpD3E(NE005xq?#B#3B4tDQmKPvY)MFMViR5Ki{C*4vsY0nlwWMMH7ecQ>CoQ z^2vUpAZa4U{<~;`BTcp@&6Na26Nm6qrK}kOmFy=9k|uKO38D#(G{O0n{w24`3eu;a zC($iS`Y-~$Bun+fB_ZFc(xrY_ubON~1uVMVN>Tw|xPk)o_MhSRo)CI)Xi!ncGCg19k%!Cq!ifC|fRN%TYVMaM^09oyyXM z?abT&m94gqld=ISTaB`Fr0g8jOD|lu+^Dyj%9h(d#nASdxz$v*9A*7d){lDWh0D${ z>Mf_TbL@3eww%h&LD@nnTZnq;h0FSldgoACzr9q-&Y`k?lyys4H|nJqE?a2S>!-4X z_DNFKPh|`72CAFiK&7C3iJ%mck=q_AMulYLMg=~pzz65(g)5+vbf=(Sqth9x?5FEg zP!eUmQq~LS=tV2rA7!~SRM~sYvK}exLA~^%l{M?FHOuBn**w%sFIw5&dOh6UF;dp! zv^Ph}=Ad4B(aQGLo5y9pe_FLS&nfGYvM$t1FI<*BvCDT=oc6k@Y>vHF%DSm+4&t04 zWiwDOy>MCjL{(CpbEvG#zC_CAP+1o~+~O|5r*cQoJNf8H7a3*PXNZxDj56@1KN-=N zJjm#?UZb(Pk#A|yf9PE^i#}kmv}n6cA8QQ`n@n%Z45hc+p3I;((5BSUJJOM&tNE?A zp5U?gynIhqX*m6_#55jmfBF=?9Ydc@!}3a>V!(&E{_{B96K^i~D;39wxN;HgrA4J= z-*3Oz_M2YqXRVvQ#M{rl7;`b4zBheVn2KgC``f2IJ?r*-^49@&g~~~Da%zzC&cF+Y z+9#=;ZhU(IWu_x%?V2@1?W0rKg~+*Wba|G&m&$p;DRU6z*gLT%(ye)3Md{t3 zG5K$+cYNq0HS|TA47|`gC-jvXyyW49-Z{aDrWfD#BQvlF7c{k{Tm0q{y(>2qR}$)D zZvVkMMH?svInPlDZ&B|sU7tqpJ2@X_d+14@9lh>2c$;#+_$LLRNRRE{)y;-yyw7=1cUpJH0i09K9EBpMd*X@^Slz=`B6#z^my41?UIKkjYGRol2Fx8XAjk!&|A$+`0;6sNYNQm$&FIUKep(V zy!tq|WUQ*>2Cb4os*>@ll8yAi1ba2^IZ3$us*)M1l5eRX%_4iOR5CWHCAF%OH^~zU zmq)8)8GTrZ`s8(L0=48N>NI{HZ$=681qwGV`KcteEH>+^sQp7#Nt9+fM%S(FdL`Q)?e(WvA>+;oy~ zNhNbtC6!XiRH-C=vtCJ~s$`(5$GHns^mgdNee3ZgcpAGEgq?)MOAX6RC1YAa{MN} zlKURzaFwb`7HO4y@H)3-xT@rMR1(rE`R;UX$wnR*MPsFs1Ei9{NiCV8D*2M)L@mkC zDmhD4az70#3fFrSPkaC0RW5Ut~)kFljE@ zhR+45b(3m%64U*0+;Wm$KUy{84jvRmi=>8GQp3cgUcXe;P^fAsc50ZTYS>N#ifWjL z8fI%XyfBLcb+W2qh}7^6ZGg~*50ZN0K&rv^(Qd|ZuN&u)NWpii@Jl%HQ2-uQg~J)- zyt8G%mf*i^7$)bxT}oDNywI2U=yCxsbMR7*mukEO@X}NoR@Zjh@kGR68`tzQG zK1fT-MRRF<*;NPAhfGOe`Kd(Gx7_HHxAgg2+62)SQYExiz7Y=K&Ufj;5G*Oun#O7E_9=NnpN$rnFV? zYDuG#wn-Y3v|ZA;q#crWN@`2WT}isT1oPcK!h9!@Qoc(`Dc=F5)ZI_{lP9T1(n3kS zlKLd|OFBo=a!IQt4M^G~X-Lu)lD0^?QqopQS4$d|v`x~Or0tT%CGC*3Q&L;fZb^4Z z%I~(L{TK&mzoh&L1hijpo}?a03nleZx;-5qaEoL&@~3U-qx|pNgCA5w@ge&4mF+kG zg6yIbX~nVo{XvbfWkQzFG`7Du2%m0Fzkz;~fd}QqREqT8r97H;chQtyN7c|5T08xMca>bO zk|vcbRLNYGOjXGVDmh9e2T@{grVn_)k6mArAI(R-u?tJam-gq{YVzSvJw0m!6g;|4 zxn?&nDfV%EKM~&&>c+-SeM?Bb$*O%*Xd?{^$o*53yAE=0OvmPelSIzuTXc}Sr&lic zXZ=e@O(NyjqG^`7t>BX zA@tGx+`=pI-7SjZ$Nt_(oWa+21s5TUuIsR$r54uH?g}lu_-sw(7N|ImwkXLnXgWE* z-HDTz1g@zZfh+o)WR-8R!+YzzW}epKla!E)gb+6$`R0h+Js%^avxBo_SvzxK)iWGcG04zNf3%#j=Ep2a=0U)g9+*4Znl+ z3U0wbrSRQJ=V3?W%NllZ39=$ZQ^mz&#KmECn#$QqWrC)1yHdGSso2;PlS=$y6`b^oHI<+4Wnaz` zm7nQX51clgsZ@%U$|_O0LR5bEi>C63Qn^)B9@SK`mC913!uxabWs<1amuM<=N@XPl z7;y<`Dldo0E>iGU%A)SxM|}D9KdMC?Ax&kJQkg3%qcxSVQu&ioiDRElzO;!-`w~s% zqkA|mlSJiX`ZT^1mx)Sclv24uRO&^gZJDNWi&B{)Dz|DXzpUUE9idbviOP|pvifhD z%50^A@rk(1(NrE&Dw~wbuk>klwCK|{5*NhY8Fj-*B{AOzD9LP^H_lqLAI(5#j=p&% zoGW^XMtov8=O5A=f}K}s^Q&z&hw3>Vtnb^8PwgG{1FqplK8mbJQJJ`RlDL;kKmL>O zs2(bguT?CWc_OBDB>Ql9nb_hCBV^ZT=gPfqU}s0^&Mu?7Y))fF{X>hw5asL(??HF^s>`<8Nc%~lo5n;ufJJcPc0necDZ-Q47>L}l~Iy(;G_m5Y^1ji}5NmF$0N zDwisiIieEMRC1NdWTkSLsO%{!lWx;g#*s=Qibt|!_Hqtf!6`IPoOOIW%{V6_<8Mbx zi{95GHvQn5vz`>h+TfSrgEK9 z`2r21rTltLh-7xXLVXByLBC^VdD`V@O3~QCoBN z{V3I3@Bk(Dux!qza`XkRN7$!5XR;aci1_;BrD_#j^kpvWwH{Rz#H>+e8()Bmg-dHO|C zc7kyafuvv*!jXRs>kS6xKRFUYspf*qD6t1c4U}1GDsZ3^&Ib9AE&QEC3WxUYa^w`{$fLgUtEONh&Au&bjDQWn9|aSz>+wu@+2O)DWQJ48jLEJjtOtv^#mLp2>O z8dOc`C3PLQnxQnPm0fiIzu)uxPUhsYx@y&JKA+w9oAii%fPQ zA9EoaQ%J^3&Ma~xRv1N1RU#qJtl}22IRRSaCs<*0#7CaJ(kzmsbvsLLzb9moYY`b` zkxtZo*+pySg?xjRVZ8h-?iH_X1F{E)gzSfD9SB)~Vy8uBONdQUP{?#FRXQT%2p956 z7g8M-vd&l`D^bW-LPB0*Ya1_r?rszEJdpi^mz-JT5q#qfA*)NsgDbm5%7UV~ ze@>W1E~j-nOU~yZ184mPBBLyFI?kJYx+HIrW*72B7qUNv%nS)R^sgr5TogMk@_7k? ztGJKU{VgPk%1ck;hO)X7>&WxsQ!)y!>qL6|X%9 z$o|A#$SiX56DDL83AuiXTf}DGC}fAHLPCCaxmkq%0E=uL7P8)0AqP@OYW2KDX1I_S z?lK`S0@+PNLVo(R2{{|ZPK#_IAvP6AAt(GjB&6DfyhQ7EmVB3o44m~0L`GTU_oyPX zJBEb(lFfCze3lD2kV1Ogh0G#^q5E*5WX%w<>)x1S2UC4ay6|X%P$iC?%XF}eLH+LahP{`lBi;&Hi)cypXTEkOkZ;UK-zxnUH@0+247|nMHag!32120RN*!e*bT`NKYVS z<;fu-f9NrbTuguKEa~AP1B;x6$S8|^jY1xsnzzW2F62-bau|i|780`A6ce(GgzPCH zU4fAK_>h0ZS!cSCHC@QkUx$P|hsY=)In+$qSs@{VY%1gBw{x#}?QekWP3}Twk;}2{ zFD!B^{Ers7^-Z@(M@;E4yHOgoND1HalK^ zKKF{(b^+O|+=a{{C*YUuA*2ufM~n2n;TCBPg!}@(WItk&pM1|O@^u%oeOSmQV}R)P+1pf9ou{l!pu~ayBBP zEOIAmrff|}$c=2X6DkRvGM0(T*^$V;Ur`EcmtdzIN)-L1@WJJ;231o{yLN;03gv^wX5($Y0LJnLfB&5`Z4AS55 zeisiJSY*~%AwNgWl>K-}$Pd_N$IG{NA=^;MneIYnk)78yA^*UQK#R03af>tsLYm7% zLeB0si|pq@(!UG|`6VKwie@VcxoA?}A{)4n?{cqr?S(*gk(ZnanYo?``Lcw(zSxB{ z2135Fen`lh7n+c}=%t+{JBEdPVyuuWQ8Q)N2np$8n;kD-e5(mr0%X4u5;CL0ggl2E zffo6ighT=%N8@+3NA8-rE@Zk3xtxa#ie^3{qbyQEA!ilkEwYLWiMo&@DdcG{IkQO3 zh9=|$3CRt+Md||~dud9g$&&?M#%Z>3ocn|Q)<@wev55(y!>~_ zh@u$)vWJC)to|_*lEsZci$o=)E)cT8#vvg`xsa`0$Q&Lru*ktkbXo)70nqq zZ#MhyyhY}?kc+riy!LxQcJGjo?`>j2PLhy)C8RnK(p?!6(&$1qa3MQ~g={`n$iGk_ zWWN*=@)VoOc=;Q@Fd=UO*_6AGS!DN3O~?zlBUv?D^xjq6@e?5-zw0uKbn$lS zEV+`042os}BBLzwWeWMrn|X^I>OzioA;(b2jv*nB;6x~zITEs~gy3FsA-~@&BxE-i zvWg2S4hwnZ<}pH^WM6QfkdQyJ&5oDfgN!Jedx7kA?m}jfFISn6=W$2UB0qoCEm9T; z*?;qpkekjoi+qc>OJ~W+JY-;zL&pj^ghK9kBX5z23z_CZK0_g!hlD(f6Tu=UO2}3c zQXB}mbBmCWZCuE!bo|bezuXiOayufUiYAQ;A-hXR$gkOE$IE-TSG@N7Kz5J)Jx&CRbf9Wr(Nsu?y$EFktSv)AHgq9R@pkDf`5_M(6wUdFjIu~S?!)YsAtC>V z4Y0^@F64M1d#<~XS>#Qe2trnokn>-0i`bi46!P1xLP9Qxn?(+FA*+XlEc*EvA+;2e zSdzC$l?%BK8BsKU0J4)pLh80QA!nm%phZ@e5PMaOLKY!?q-cs=$RByTbe4RLhYT!o z_*fy=;y%o-9};pY+w6Gx_AaEBLR#I0%pyl`V?w4%$QduYMKXB8ZbQzEwhak6bAeeT z;zIs*LrBOSh>R+l%_!u&#d(XY?Lsc)Uh&$6K=z+rawgYEEb25Nzvdl??*qa@wjL|w61abMYDma@Y=A{pav_r`v*-S#dEFqW% zc8hHP>5!1GxR4!O$TdF;S>(HjjIzjD6f$o(Z;>Jwasu~?*PaMuAN7(mi_FJ~Amj(A zqiB&Qhuk6qfsjw4`5W<(r_VKu{2%Yz&XP65LKY{-2;qI0edV>hkki;^$IH{m2qAw2 zur{?Nn~+m+A_&=3LJpCTR3K!{X(1tpxsWOsataR_IBRsQkfrdt?1>>EFS4nOm+$C8 z>L}!1FF6x33nzk*1S(5fB+aG$I6o2yc`_{If%#^UOL^aRmOOHONXYLH8C5i=QpgjF z@)kMPgUC7!lWY4gWPmLAw0=zEU z6cX|Xn@aqig$r4kLT+&vGK)OqLasv{MIrq!xp~W} z2$4}1Ifg>+e>HEB16;@)?iH{73XrV{37L-*p=h?1kXi{z1VW0o4++`Pg%r7vwZcN) z_`fki9){Ot_X-KQhi!Je{6S=dkUs(0Yuts*BAeqx5b`h7QMAalFStdz0wEWMg!ZU1^Ar^9x`y&qsI!_pF)21ue?QecOg5wkX(z!V zvbhU+k@sz9$>Z0CgxrJ3sG_->z2ogeLi*Twh?if!HHmzmr+O2 zBA5KbEfNcaEC>r(c(z&OSQoNaSje=oLh32xr?2EK!utV2ie1R66tYH0$fYjis}iyn zg!oFzXz#)rDqO=8tOYttZult>l*(m@j55Y;aJcLzLmGa{<~m+JmwUx)PXV$W?mcFV z$vc=aUPbjpW5l1QG5D1*Tiw}69Jy`3+isRP%vF3WtYVe1Dt4fXD__oAg8h4_cLv&FAm#bQ)Uw8gidb6YfTLP6;)jH zQr;FDxQZLNSG@M;Kz5NAn5kF;CxUx^Qz~B1xr(T%I4G>5$W`3U`l7Ss(6EY`V^#bR zPL?eVsko3$biDjyu3}@VXbGv<&sCI2#VJzJWGcGDD!y@+*tpv$+?Z-vQa@yui#B9j@YhRE#WM9PSipRXb%oZ6}@pIJ8w8c};x-BYA#d?^781c^Rx6KwmW3|&+ zvQk*Z3qKm8VgU*```U|n74$pU;tpg)iQEZfn?foUyNb=F;&4;pUs-Jx)^Ln#*w!_i z#G?h4IApAbVruw$NW*Jv2;=27u3;KA{K<>UEU`LHggfMR)XB8O-~R5Fh?pgI3afZ5 zW|p{yl~rfS;ME}&zeQwJd3*;a&A#wL-V$GR6_;?Yceir1bDWcLWESi@BuEES)V zifU6a$}bvRMY*e3FRWtHSQSGsZT7H`ipSXs$IAz=G8KOVvbVY0m@Qs&-@F~QGHr4D z({76jQ&ASS#a-VrTb$3zud^h^;|1RNWkg2V!p0$gem-xDLtMoku3}HB*de51&{eQs zOBK6FMVYDi2NFl_(|T92s;hYJ2O$-IMr4$Vr(xRcejybPvK@|>U(3DXwf_fXlkPTV zi|bv*eW;bG;wJpK1KagtQ_&w*aqAgoi?di|c9zTvtN83#6-Q9T-OuH1v5%`*&sD5X z6m@7k)nu$o|Nk#w;=2HL!n7OZ@anYT)lZl(x+XYq((^)*hdQuSR~o4|;;rQoA3x z6d%~(e>MKs;eR9kNAbUPsjmRT^cMWht~9{G4v=!B9T~@vgELLLAB;>D_yfQ+5CP95 z8XZwbizDXfawHr{N6L|QWE?{dzVw4*mN_aNHI8~mqa*5Qal{;5j)WuWNIBAujAO`w z8BjZ)qta31sCP6vqK+0v%+cjYIFgQ(BkjmIh8#usnv2)xsC3jg>K%=aDA0h_ep-xe zRjr_{{$uQ}>HxFPu#5feJL+*U!Rxhqv3DN4UVG6uc$4VmP#i3RjJ7gJo2?nG#X<17 z>HXOgm6gZhd7L&dx4nEF5zG2nWvx?Ir)9OhLRr^U)*5AXT2|XDlr?v{YqggYA;4)_ zZLd()er2uHQJt36_6lXaP+2RK)oEF6uTa)zWi3-yr)9OhLRqIPYq7FAEvxMn%DT3) z7AdRKvf5sutk1T(1%`1iun3%%)%FTyy-itp+c2xsvf5sutQRONx__3{X<2QrP}bv= zmG>l%>a?u3S19W)$~vg5PRnY0g|e0@Yg$>ImeuwOWqsx}x4?k1IxVa170P<6vZj>P zX<2QrP}cL6wNF`{meuwOWj#h&lgjF}thQGu>rTqrtE^7TYI}vUuBogEWp!Fs+bfjy zsZ-qoJ<95|thQGuYoD@qDXY`6+Fqfoab@jLR;OjPy+T=!Qr4KVIxVa170SA!vbHL# z)3VxLp{#2tYm2fvEvxMn%KF49Zh>ZHby`;2E0pzSWsNGU)3VxLp{$+C+N7*b%W8Xt zvPPA)QCXdq)%FTytyR{DvN|oR?G?(pnzGg_tJAXDUZJdy&vgsbDXY`6+FqfoH!5q5 zvN|oR?G?&8UsotD-13T53+Su2#)X<2QrP}X8)EmKyfWwpIR zSs(qnTcB83otD-13T3@PS&Nj_X<2QrP}Xyl)gD-}ent02t)cA|$~s$F*#olrHJ{b? z3T2(9toG0cM|GM2+dGtXWo6Cis7}jjdxf$-{57}0pt3qGtL+uanp9Ty-Kf=RS#7US z)^=qbP*$g9wY@@F4^`HbvN|oR?G?)UX=UwGR;OjPy+T>1C~Hz#otD-13T6GfQr0eIby`;2E0ncKSv!=~X<2QrP}XggHKwdi%W8Xt zvaW=zBfoI=Y74J%*{dd6cPp(-EnL_Q0S+6ihp1mYyG}WpnFE342-Z8aV=PdPD03jN z9KNcdj&Y)LG%*JP%MlIt5F^Ub$Q%ePhp$kmV{D-ubGi=o|cfZ2qR+pvAD{9%9dC??DV7 zsBMSYwubq&+i=nizmqpLdjq!P7os+rlmE={D1SVj;Yc69VU$4s3&X~aBsOy>nOw+$ zun#3)!?uy(?D2Mr+TKgCU+45Kzt1y0nO#e}uZ~B|`QOmn#qyRPa|!d--gkxVvZx1x z*eB50;pvL)0qoQ#u?>Uc3%?84;21ys^({v5(_d2~ODEfRcvoMJ9jhPad(ywPH=4S! z0fXZMnK52_5Rje!s3l{+(zb`}nd=TdVbzWhQ)21J1=iK;9Bj`7z!$tfNOK~{m(^%uQZUy4@rhPJJdm^s;$Fb*ae-~0dZ=r= z^gL`2>~S_DVSCh4TjH;IdsMl$!a@5a~=^s=iXz_nM8${Ju7t1E3g6Q ztn_nk%5y&LOgjV>?&1 zeOT2dV^yum>f!W1=dJ&y-!_XnP1S2a_96Eov&5TwQC01)>4I>R$M4I#@Uu(`T=?(D zo676IOO+)F9xbp;CnI6YoXcDH)j#DmobDQqat%jQ!$BbpH%Cmvp3-obY49gNS1~Ej zaFlD<+BK{Z*6`Z7V>GNx4POmuc-1}P56p-kjRdj}c;T5HPWilPxS!qzJN)(ch>px| zAH&2z#Usa=C9b{zIXg>E?-P9#ZFYw5K=L%!BiX~6|CqPM!LA~6j;VM8 z$Zj7}@vr?&h1I{X#ZFRDZ#DT-Obk@)<|mZ>;Qw)pwoh{6{Bl=N&S1}gfFHd}oAJX7)V*&!8=G7?rXn<{>n z&fDS(uHr^!jMv@-WUE6ewmZmFluO07rowBBO_&sD*d7|t`@Ss7-nVzD*KJ}q8^4zN zyX+R|TCyu#i%lcF>`BpK3P@ zq4MLXQM*miZZ+I(743GecEi{#KR_F`+kHp6N$R;<8l5egJKr42ZjdJA$PbS`W@nyWehu7f z{>Ez()(%g>cKFK+hvN+FARTxZi*@=lKVrVAj}eyd5jYf9`HXLS6&j$1`1Ci{*@tlj zvRM1yaiHgK!s7G!L*d41KrMqqp$TGuL!km@fJ34B$!*gz2`icgdvGOE4B6*#S@(Hd z&vYKwGo8ovOy_YuQ~c~f?)77^hgLw<8mL_86niXV1=QSyU-9z73h7r;?mx4CIs&T* zu8zpGyQe+iC+Fh(SWLCQ40BDv>Zd3UZiWsN2LtFpaWIIW4W4@q*H~<*s$_uWRXKfw z0L!a#G6+F4gBAv@T*9-5(^#NQV}Uk@1=_S1m{5AJm=tXa59ukz2gI~EC}za0I3x~> zHXDoM*aR+UbH1QW6N8nU>jkUD8WAHx+m2C(5&b%2qljwQ;!&|#MA6#zRxu`ah+Sfj zm=Jr#q}V5>!~roa4vHBuD-ManqCM@y_1ObL(4HxR6&zQAm14D6Bi4!aBFAC5o4yJ+ z9C3B)Z<_DGFJ@moWyFQv>bIToGYz;0DjC3gX3%?P(0gXkduGsk_-ic);5}_sF)PJ3 zc}<(VrmZTW?d~;g{_{S;d*5J6>FzacK97yF-3AH*PDY*uWO z*R;uN+T=BD@)|75qkMH@y%-T2#U?Q-Hj6D{s~8hI#4fQ%Oo+W=QtT5`;((YI2gQt- z6^F!O(Y*%OZ>5jx7u{=c{ffKSXjvlI%e_XwHI2A=&6y`J(`&Z4>fP{~9+hrP>=3=q zDR|EZ%6q=8duZnN5#C!rgYn^q9?T8kg;XD%cn_JQ5LP$xn^PCExFzfRt5QmLzwzI(WV-u}|NbW9?l=Cs zp^UrV`0t%EUTk(;Xnh^VD-^F3tHm0zPOKLrVx!n3M#W~aMQjygVu#oz_J|3wS4@h1 zVoDqk)8e3*5wqfuI4ru~;QGxEaQ&kD%|iLjLir7T7g*`;Hw(>gXfNyQ{Ps9jI~Z81 zm&^fQ$bWXYg#Ls6ao|787$S1WS;+wP4n|lEQ14)b#Q^mVMpz6`@AwFdjF}(!2#ay| zA0J^c?*6mD`pS&E|M&=tarYm8=Yw(gAH2DzvsR~5f!~roa4vHBuD-ManBE810 zU!>PC&RU10*O2rYlC=)WT8FF`&1*J33SKjAR%acUI_Tg0hgqG=FDlIHa5kjLN@qb; zRBRSo#8xpTc8FbKkC+g9#iZCLro;g;Ee?tqF)I#yr(cH=q=VV<^(Ur!>S2pbyWS7 zo?n>Nsng9{FGj>hu}O@I&0>q#D#pYPu}ka`6JoEJ6#K-KI3T9QK`|p{#UXK6T%ncD z_INVNS)CVx=T~#kX07XO)a`_s~8hI#4fQ%Oo+W=QtT5`;((YI2gQt-6^F!Ok?uo%#iEa{-sY^% z%XmA0GlBXkZ9X#Qpj?h~<+-eFMkWLKCnj}fb0&Eagyz)sM#(j9@ zlRAw1@X9B38290oPwFsU3^S5tVue^KR*N-aomekM#7416jEc=-i`Xj0#164b>=6@U zub343#FRK7ro}-qBWA@Raai6H>M)-VuY6L6aT{K}h*yR1 zzQV{01DtvZ`OlH~ewLd?CUqLFrF0YKa8hD`VZr2k^aMYMx_5RJ|xnA7%zey$zrigtPm^3 zYOzMF6YIr@*eEuMQL$NU5nIKW*dca_Jz_%a6_aA0m=XuXv^Xec#H=_Z4vSvx;QHYw zw1ZbW-I`49)}&6iCUv?ssne}Voo-DEcDw(43opE3Mlg7U#hICq`+VYTj=kpv?!!OP zZs9=|1GHQ7^b!c?4J#SIeem3z0o(`A%^ARb@Z6jM+{Z^)q`QqjH)lLy#fuS!=x*cd zr7=CF?d~@I+??CpZTz`8* zB>TuDs~xglv})&bjp!pU3f@xUt3H(&rpL=)IxFANK_7+*XpHb=iUArUJegvE#t2WQ zB4|5%P^x51q*pNBB_>3A1-H{H$UZS8(kr+;4q4qpf=W>Cfe z4vzYf0UVrf+#!fCYq4d$QSB9)dBrQmYOzMF6YIr@2-DfAo5ZNtEVhWPVodB1yTl$b zA@+(%u}@5i17cbn6f z>b~%v2Z9kgU*CfFSW+;tgNBHk;X7!E7(^MschC?qfbVz%M7qy-1H^d3%C=h_7;k{M z-F?OzAjaKiya8g|ea0Ig#@%PU0b<;J#v35Ui_Jion&SKvdS)V~I$Eq0tHm0zPOKLrVx!n3M#W~aMQjygVu#oz_J|3wS4@h1VoDqk)8e3*5wqfu zI4ru)cpGKcZ$9B|6yueOv$A2_ea71;##z~r^chqumz+7JDEHtO#?R`k&!Uc(e*@`( z>%3J_yuCNPdd!asbAs+fAIv$y+;_h;ekOT6_nH}J6uhP|7wA>bGUfum^f`8q{k4my zXL5Q5k1x?ysoq)Xn?4zcZtpyHd*`v+JCEJodF=MiW4Cu6yS@G}lVoE>vV%h=#9omd z9ByZ0MW#eHR*bWQL$a|VGa?%+#@WFk*;tW9sFBHH<7~bFj_Cvj6%48w)G(-L5MkCb z?NT9Diq&F`SSQwt5wTHh5~E_X*dn%yF|kAJ5_`mi*efQ*J~1T@h-q<9%!pZWNE{Z~ zSec1Lc5oQ?p0PjgWSor^Nsl4DXMCG_#K|Ty$8KP#oc?*8&urA2fabX-Fwg*RNTD>y+QMa6*L_G z=N=Od$2V}dx$xA&aJNgveHkakf$tip+>?r5I-`MY5G5i(nP9*tlH7@iOgFAy$gjVvSfQ!bEn8h}bALiBYjxY!O?< znAjn9i9KRM>=lz@pO_K{#I!glX2h&GBo2#o7&DQ`R*LceY8bvD?4J7$mNghZ4BrSz z!C0y=45y7T47D=ownac0Z&ExeHj6D{s~8hI#4fQ%Oo+W=QtT5`;((YI2gQt-6^F!O z(S2rx4a3*LDxJ9oti};c-2|`Ze2lj-eg*R6e08(phT$xfSvU zCd6JbDfWpeaX?IqgJMR^ibLYC=%erzG~FCV`2>6*`HtDeRtmVVj92ahUYBCUM+% z-s^WNmg`-LVzXu8oeG}-{IB1s*y{*P=A60J_+dGH2ZO9FkRG^DVKS%QoDQqTh>c>C z7!{kv7O_=~i5+5>*dr#yUNI^5i79bFOpAkJM$C#s;;`ryk3VkUWSTpVw^WQ*+HA7F z{l|EX;{FoXm{oK3t{(3-o4MBv9rkW`jn__vH*q>tnjb{($rbO)^()4|OYsT!oSP3> z?sqBZ4txL~6WP&WoE;r9A+n>xI6FFIpO_Na(cyM>bjU$5BeJ8z?d<4~!(tJNfp1GJ z$Ga58mbEae<2~bd^iIWtn@v0{SIu+k!G&RYoq1bfSYD6Ti_;T)eKdFJrV|d!t8g=; zoAcQNSNyO%X7xnj69+a^92WP8?Bp=sD<;K0k)0f-4~S`TP-G{E=~;0|92VKhVfs56 zj&px=n`1UXCuf3T`I-mhdpLz*xes&eQ2?9)h=`41lNc47#TKzujENm$m)IjF#9lEe z_K7KRKun8+Vn)o0L*lULy<@z70te!Cc<=bXe7E8gxchSlZ9LJid~+lPW2(Zt6|{BX z-3nGVXor5WFNWho8;&1XeG)!{^ox-mxXy|jjm}@h*@z+92ULed1u4&-1VOt|A~XV=E#PE*AzZ+ zc+1J0Yu972GVZpe(t>V|PvHzcbYvIw^wSuB=`6=J1WE!K#2V!ap<8^tCuDmIHP zVyhSvJH#%rM@)#lVp8lAQ{sS_76-+Qm=%Y_VbMFtxPG)bw8IJ*l}}%n?!(_q7`-Z~ zDxl2gI4YkNd_m4X@!iQgTa`3srCC^w)V&7_dRXcDOBP)1)4c}^cWAqN4;JoF+`R`2 zcPQ@OgM~X3ckjW%9g4g6VBrq)8h^=x=W*{@sPAMJYTe}?1@vD)_Z+d6aZ_v^4J`ewd-{9j~2KZhHAJ;O#_ezD;NSmyjd}Tnc*4eChi`Xj0 z#164b>=6@Uub343ME4)8#;SN)92DJu@YBGG4~fH~`_BT^J`3bO3*FpEXLVpk!-Wbl*l%Vakg0`+bl98vdvm0`2dwd0C#@%~-1!TtS z={5UqI(~pfpTV&F^!j{tQy7-lnf3kSJPzk0iZ_Z)VpMDvTf|l|CU%HjVvm>*d&Q*K zC#J*!F)a>?88IskiNm6M%{v>G+x63XHd=N3q>j92m)#29Qy89mowJM;2ufCQ@4<8P zU;zRy&?N_2vWq`7#|QoM*g>9G_>GxDrNc_+M^iYw8nYVd%HC$(xl_K@`A>5@SlFwu z8YxDiACc8akEuXUXZ)8la-0P_vbLF>AC%9Yco7jUHHr@MY<7?ftC6yU{1N$bCR)T= zXZ&iUt9ZrJP)q-5$omgg+bgU_%Bfg?3`#bl3raSLQL$NU5nIKW*dca_Jz_%a6_aA0 zm=XuXv^Xec#H=_Z4vXw6Q?E}ccWY9oTa!Az(i_t`JSW-NA$?L1uPP~S!}Fmxi{L-w zRwI@Blx(-+U)AY>XY!Sgn8?{3#yPt~CPdEeFwWT>lCwKxO62Sg=0RlaC<`R6PHB5M$CXAMFY;ZEW@qxkCTttOzDwb-(vjutD#O0in35$nWyF(NjKO=47R7F)zt zF(!71U1E=z5PQX>*e9mM0WmEOiWxC04vE8}Pv>|WMLYN;ptn(sSEAA(*+!8*Aon&3 zb9@(VgI9A7d=1``@=6@Uub343#FRK7ro}-qBWA@RaaiZ@#Vm|3rQL~InB#HiRTwur4_OzaT5#2zsr z_KHcdPfUpeVp<#&Gh$X85{JdNGi=UX@{fs!$G_S%-xDbekJ=nU7{lC?VCS*JT>1psk@JuqxJF@^ zTW7}oaKGx3i~fDQH(;Z{A`0uH+(Vx!n3M#W~aMQjygVu#oz_J|3wS4@h1VoDqk z)8e3*5wqfuI4rU!fZ^Zyr5GOW_t5wOL76xECnG&5`oi$A&W!ir7#`*h!DP(XNdcAm z=_Q3y|8NZhb6@_;#KXL`{60Tt^};ak!!gX$aPFIbns_*;^1gW0!f>tzwYj~tD%Oh; zu~BRiqhhnzBDRV#u|w<m}@h*@z6%w71vgu}J9{kBf7QW&n) zn7KaK!?oPCc!Dy~x^?$Y&9~HrVc7?7Sk})QHTQ=9T2T4KSyD;qf01mt2hu}O@I&0>q#D#pYPu}ka`6JoEJ6#K-K zI3T9QK`{g7HoSLysjlm#x^q#XR6m%*r`(LYCmtrLWTXF{j4tE6<@x2g9{2(u8O6j7 zu}e&dy<$@A6I0@Vhz@`q52JQtM#Q6iiw}vzViBD5BmDBFhCy?GH}Np299Ba8+w}&^ zv+(WW2W1$P`{A7v4tG?Xw=bED24r6FDJuWOl0R5JfdQ8Mna3r6=5c+o8TCF~h|33~=#!p1V!c0U!qC1hhtd$2JzyNGN|8E0ckvN0vun38Nv zNj9b=8`IpQznyqEQ?z*UNPnm>oMCV1{rQxspTD}9TmLr`4O^HL^l1yj7M5YRdbID8 zr$zDd@4q^^D0fI|d)&<1FTT~vopH;A!-Ng|HoN4- z!Z5*$>;3UmB=?73OgtQT=^y!)tS}sS?}h{Yym4~XH&4{v-w;VbU$M~Le-FF+@$%o~ z(5?T@jpI9pEF*O5e}MF$s0!Ws_o7>$d-{g)rL&Qj&XjDSbl%%;dv33vP24?K2_5zK zLihZC+dWtJ`?~8V?tXvF@0@#{E_A=&i|%)Bz3V3IW~*4Xd#cdQ{$F;pbLU(;aX0!W zPvl#cLO1%|??(4;jCv`z_$L!}mzfmw!3y2wcd@%1FaP;t=njAV$KyL(ANOYCLZk;p zQRoi8o895u3)d{O6iOZ~l)}5)?aiJ1qlvqvId!S(D z71LeJH7%UDTPRD<{bQk9_}_I4)$JR;Wa4h$X70)BrVHJ^chc?4^?ZNA?w!ng(;o`m zyZ@$pm)jk0JWuqg;W78+Yu-ZlZTY)z{Z+W%bI*ToqHY?Kf<8l`o3);#&{f;E?~yOmq@!il?6Tex3tK2YdRy>)j= z-KN_wn7G>{J3e|>q1*IU-KN~P@rB_8KezTtcf-r?EOd+Bs#}!X|>KkD5PbvO2(KXG?sEBCCE`U~9+wwJlBIwtH^ z$V{L6)knKqkz4(oiMtJ-x-DNbeH6P5{afQc%DvD&QTKpJAIa`PynOvz(ft3lZG3~a zjaNIb-I8~kk5==ayZx+XTIGqpkD66-KmX3e&G@$NC-?v2qtcA4xxVV#6F1kg$FFbx zXf)TkOJfr@$DeYy=)38o(H!Tx&z!i~{l$&>n&QLQ?Dn&ubKm>cM9u1_k@TT%R^#P^ zH=z0KIb(c7!E49pxew`q2|irSXYL2{#$R=fU-fT(_MyG%Yri>hGpH*cNPZxiL3hdJ zSd}ez+czd|=B9Z`4_^P_YUXmkKYhaHOqZLx?!(cX<(_GsxVb9E1qSui`?k62{|ucE ztK}6lC}V)t)f%|ES_4;CYvAf?4ONlc($gktmbiCtjqkt7;COl4wREx>yt=n)GIE>p z>QXbOJw0>U3)5b(J^Huv+j4gtBDlo2I>xjVcdKMj$Dolx6N4y&W(F+`TDk5J-p7D2 zUxALqM2yApoX40Dd&Q*KC#J*!F)a>?88Hjy_B?f&S9kPJKd4ui`^qU3Hy_*c(&Odx zfAYR+K9;|kxM=Rg&4jM&XFvX6H50izzdm6zQ0v9?WbX&78OSaA+QilU2Dp%*o_Noy z`+l=3D(wGMo!9Ux9tf(u$oyGVmD676-vMP3T*G@;oyW`X`_b}M+b4c?e8t9V!0mr7 z4iQ|+`?K24UE4BV{f@5w_gBB~)xUW1#MQ5^U^QI9|8Q01<*#0MFx?N#oOZW2_gpHt z7`|WUmf!z}@6YNr_pOsAtVSjK(yQKI)oAYiuS{G`zWjr{XTR&!WdBYq)a9rSH>KKf z)gku|>X3J@I*gY;cIEO_ci)^dzQWkq-S$!(B9QvtR(H8Se|ecIUroH%DswwR-OOoA zXHI)Kxc%o@)3=M;@c<}%7pkr0ubwVGk^070Pty1EE8d&xDYx{539Fx7-E1F&EUv;` z7Wm-*Xp!z*Gh|KlVteQ1c~5)C)l9!#<#JRb4>eCzjZ9ym)kwVj`pcHDx@e%9F@sua zLGNe|4iOa9yIWo4?mB+Firrkr-xvPRRMbNSZu@C3_+1~FKL=f8eE$ap{iX&RF#9ow zvmbLf`!R>JA9FbSF{dgr?FH5emH$P>;6~2fejHDaDhD?<=NKB$;by1fvu=n-FXdf5 zE4Y35X9a_51~m-o8DNe3*;Fx`YuwM~8uzog#{F!raX*`D+|TA3_p`ai{X(sAzpyHX zQ{;BH^P|Tjci>9+q4OVZ=Z7N%_0$ZWe+JJ#gXf>Y^UvV<8+iT(p1*V^S zzk%m(;Q1HW`Ez$4i^5+zZBbzLxjZZE{*O!YB|n#jpG(8frQzq&@N;SSxmA(=dZ=f` zQpuo>K_i1E22lo>SDD9om3f?3xy{dd0MB}NU~3L;c&$8C;PWswH{+ZzG6S3wMrII! zynP^#-3FW$*UA8A#kDfPS#hlla8_JvB)HZ`kD;UU=RtaKrr?U*&b#w6;^nV?-|yU! zY7%zlln^Aq&I}*{c3%Fuq}=iU`K)KI$g}1a9gWL;Vbq249w~-b_wV7Cxu%^EH&kHm zW!_f2S{V7Qrp$8fIHBD*4+pl@{o^LKlk)B;gMqty0>9!G`0(4khjQ!N*>IcO9X=aM zQD@r|m&kj8XWJrlw*Tsm$^G~!7<19IrNOyy68b%jIqikOdb~m6<+of+-&xjuLRq{C zV9fFNNp26G=7Ibr*=cZB*lGG_*uF4eaKdHZ7~7kOW!xCKhmTzL9bhMkm%sA8cX9{h zPJfFt%yj3w;GLaeeV$<%?yWO?+RpG_xOeW>=v%w;Ubuw7mG8dj?YeUAFgyIReb*1~ zzI$Tm@c+?wbCYo7<@D3FaNuS8>F02Tc|Xnl_)Bl)n4WpL9P`p{o)wOnJBWu|Ml~Ga z+2iFWS>}=Ej`h!5Rl~W-|M`#`E$1O~zc^yq^7eLl_g}bt_ek!`%Q{xSj?|7L1vfQ| zeOVWp+Z0C{84~q>9y)>=3Fi9j$Whq2C}vQ`0M+Ykb`fT?i!hsAgxPpd^q0fsMC6Wut-uq!h3?~C&WI|tsBd-kwp>}A=p>!grO?3KHDnLF&~ z*Ol(d+l4!{FKY)J{D;Wf&;49i?vS_0+seF+`MldA?-(1!%MTcnsd%DHpJJvj=8yE$ zp`(suNf5URvPswNV{+{8m-@{4BRQ@J<>*)PUHRl#IC*8?`Iv_lnq~&AqsiDv8m9m}TC? zOu$)|Z^-ie5jG=>dlfw&-hmU|kW8p&faAWsp~$qQD3Lc7py2raLEy%>RmBkFz@bCz z5))#tm=ycOlsF)!#X&J6X2l_KSmaOn@w~-inOGrKiq#_D*JpnJ`1dyb`p|7v5p8c2 zo5ZNtEVhWPVodB1yTl$bA@+(%u}@5i17cbn6fzgQ+#h?QcsSR>Yn z^59+ca?ifcU3~$-CMe=+*`V<+*`V8^5b>8^5b>8{Es-Myu|%Dtt# z%Dtt#s>rO?EpO?rDpR~dtQ4!o8nI5S7b9Y$*d#{9X0b(V6=PzD*d_Le39(m9ihW{A z91zpupqLS};*dBjy0_r^t<-V-qI*ksm3vEfm3vEfm3vEfm3s?*tBd(@|97CB+v>~z zUK-4U1n+v-bAovJBS;UbhMNjM`RJ zDOQU$Vx3qoM#M(3NsNlkVvE=+#>5V>OY9L7Vy~DK`^1zuAg0AZF(YQhA#qrAr@{4` zv*7wgcN$#3;_fu~)J}1C8vJB2;<-1P$9v1Jyj$bt*PZ=tcuS8}1#ML^u|w<<6QWl& z_-#hTy{f@)Gb-*?4St(Zaj$CHRMoUqc~w*Jns>!(?mEuB2G5y%x)(zRjE1JOEaK&- zwE06O3|cT;U{K8fgBJXlDT7G95<)ZeR%)j9= zW4rPGfFfSL+jlrGfG&OD9V@6~&klYJo=LK{Az9my36Zr8FzfR+i-h@wpWVPVvSfQ){7CbQEU>UVzbyHwu&*aL+lcJ#Dv%@CdEE6B@T#b zaZt>NS#d}l7Ts@f{pJU_e$oAAq5Ni{{AQv2W}*CMq5Dl`lzub*sbD<{2hG$U&Y<6* zAMEuF|3qUI%#HD{dIoQMD9)#YF`R;QzgZx^Sx}YGcK4eF@|y+nn+5Wl1y$}h3*hu}O@I&0>q# zD#pYPu}ka`6JoEJ6#K-KI3T9QK`|p{#UXK6bicv%o4?@tMfV$Azv5os;QAH!`euRq zP4;l~ZYFrDd)YVh9pX_lnjB1H_&xGecXyO>{wVmt9!}(7=4N@G%Jb>GdyUsMjCYwA zd0oRe>l!jCvTwt9N@QKbcv@uNhVhJ;71>5{JNq_dky+2{8pg{MuMjK6YOzMF6YIr@ z*eEuMQL$NU5nIKW*dca_Jz_%a6_aA0m=XuXv^Xec#H=_Z4vX$JUf0<5n>V1Y72Ru4 z*DCH_vp`;>x@O)XY@?oje)8V)AK|PGCiwdIGy`Lb7>(4Hr{(LM6*pzmV`nG~!rgV+ zs@!!j%Cw?wQ-#x}3I~%A+U~A{NeIQ=bubB`xVsJ}AryDl!6by@?mC#dGM9LVQ#ZRG zJbvmXcnx80!D~jZEyb~Oy-Fb>Hi}JRRBRSo#8xpTc8FbKkC+g9#iZCLro;g;Ee?tq zF)I# ztZ;Ze>=%>l7nAJakd-2PIE=H0L$Y5?n%i8`IPvTa-_}A+6FI3cdsAcf#_WYyFGj>h zu}O@I&0>q#D#pYPu}ka`6JoEJ6#K-KI3T9QK`|p{#UXK6bia9rvo}ZWJMrv|y)_pv zFPl@Cy{R#KV?-g=ixII=Y!ahlv)CfGiZQW6>=Jv#gxD)4#Xd154v1-SP|S!~aY!5% z-EZFE?9EmUp%InM;@C?QbNSN5Tg}?M-3gm%ccbX|XmJ=Av$0iSI8NuGJ?K0n zork3JkaQlB&O_39NIDNm=OO7lB%Oz(^N@5NlFmcYc}O-^BpWO8Z4Jj?*xQ^3<8U95 zIc>C7!{kv7O_=~i5+5>*dr#y zUNI^5i79bFOpAkJM$C#s;;`sGgX=e6!S##oGq`@m*}eC?) zDl-qVZ~OecS$vGdcbdzN=6GukZ|6CD_%MgBy}qMw`S`MM2WmR9OH7EIL+19R$T?)j zQzGY(8BdFxLuNc9at@jCA(3;)j2EHY$YQZftPm^3YOzMF6YIr@*eEuMQL$NU5nIKW z*dca_Jz_%a6_aA0m=XuXv^Xec#H=_Z4vVaS?D|DkK#a2jB3S{Etbj;XKqM<5k`)k1 zzwyQ?ckH(C9=<5ecPT35J$!hMhU@?{JD)zp%kPf{bA)`6887F|;`7e8@k%qFM{^>X zjEU|)h3Dk%KX^~T${Ftoi0(glPe5_^pM}=xp&i|S@ScFu-GA_&fa2~ycuzoa_n&t* z(&Blo-r0I=Jv#gxD)4#Xd15 z4v1-SP|S!~aY!5%-D&*k1MT6J4qlwK%EVtB<#w-h{KZkmz0&a)M;SM#Syat;)2+Ih zTUF!T9Xthv%Nz*vvolVB(uC3=qhhnzBDRV#u|w<m}@h*@z+92V&<)LAUjTi))tiuui32DS)wZR*`yFv5ac)E|n@@j>P?c;{wX zDsUQ9E9^*Py!C!sbC7*CRx2d?GGvh%%&Qf~%M`B=E5&NDMywO-#faD_Hi=QOS!@wo z#hBP3c8NV=LhKcjVxO222gI~EC}za0I3x~>?kHZZ*!7#Ec(uZKrQ)ns7-wIGWVJ%p zi{>a-RD~QR5_XjJo8Tz;AO`!uH}Y;$@DNocZB@-GkruI4{7`ww8J}Qp9V0x+7Rqg8{lDSW|-mx+A`v1sSvb3S*!yc#GLZWWB*S z>kTp~vff~v^#;j$gG`I8HyCHVL9*T;heXyJjI-V#*}#zA9eGD%pd%|e2I2syk^!m) zEGNUDi9wVBChM@A41?B)1~SiYjkk=K_k&IhsNitt9sq~Sf1uldIiXk)FT=l~BfAt& zh~BI9Z|Iobr|l`xd$s-z9n%N3JtKOr*1w@+I-4J|$js?;d5o7SULjVB)nbiUC)SG* zu~BRiqhhnzBDRV#u|w<m}@h*@z+92VV;d@j$f-`ojvnIfAX zZfEmDviTvsSL<_mj9c?l`Egb*SWO9Es4w4#xVe8kyA*G7rLY$VI>pcbmaDM&*Yq4A zl|6q0yUExvH~b{x`GxjbC*StNJZ(exqt55Q%_V-Y!z?DvV$v*5;RY`c=8jmp)V}mX z7Mzd)vW%Zj%6?%!UYE!S5w(JMv$$I*M@ z<;U;quM(B9!L49W&7g)sJ%hs6U{#GOjwUfGHj6D{s~8hI#4fQ%Oo+W=QtT5`;((YI z2gQt-6^F!OafP_ew?D;aZCX2xOEDBPfSb&vo6Mz~U`Bxf++;4NnC8B%1s$G0VAOgM zZ0b=zVosDnHG>)k^$a2mDjC!f;q$`qiMUt*a(iKU%B1u;y>53#>k)$h0&j1w{CMp=zF=%Aa#30I`nL!JKR?eyRz@2O;Tk|@a+VwA zEH`Qv^hUi>a-&`;xzWBrUVzbyHwu&*aL+lcJ#Dv%@CdEE6 zB@T#baZt>NS#d}l7TsBJ{pJ+7ev!jaUava~u3vEuL%H2&L2tBK(Ee*sNVy|7hsS7% zxQWJx+y*BJ7X86uK4sV~@U2<&m|66g55{{+-SU|3!b?cz5#4%mty><`EsyD*_$8!x z`A>Jp%SYR8=0h=C5O6~~5T^#>m}@h*@z+92UKCdWX|J zcYi$OF-L|x=8Rnn9#bPr*NOFFL~InB#HiRTwur4_OzaT5#2zsr_KHcdPfUpeVp<#& zGh$X85{JbV;xQM0EblQspNs|u-QDqX)!fGA;jvcT&KUnp4s~b>?NXDv9)vIXEz(^I(7(8+_)$05dlJnFkrO zax6Ueb-#gKtX#2ntmuA&=iZ9D-(c-n#ocf4+*@(?n{G`2cWX)y&%KrIeuL-U<_8!) zitaZ)d}6s&YP^lkgJFPgjc-b>d!Ws8RSuZ_*$IX-{ntlRA2a#3m9**slmn?)m?{%%~P z6Y~IVcDBgUfyn$xrR`s0w)yvuJ@%)^A3L`_vwr&yRDVT>9lrbQ-4EaWh~2;R+em!+ z+OKi#^X!{TvmMXAxwJ9+9Si4Kcq+oQjKJM-e*>&n=I1PQC7F%uKbX z=B~OlQ@RQLyXdzf^6zB%Yd=G5`R~a5p~&qoel~LZ@Z`v(yCQ%5_uO@Hfd6~O4^X@` ztBwo@zbuzX*5IK6?3nG*5 zS^8w@CT+ZoqFb@+()no|(&J|hPbzJ@1MfeV-hA4m_(8vlE%{98IiFsKhAF98dF(Oj zi!A>emjB>Mu_Z^Awyji-ozI`WNl{U3$?m0XudK^I_A70F`IAM+y;5o012sJQ!7Ig< zoK)KO2$i0{D$-(0_APC@4^hj#&sNMmxwLIpd_`1x^L~>}=vhxZ9$Wl{()KSv^jX7G zO566}mEXMI6ie8Qgm(EDr)BVy-r2h__%&vFe zU&j_#m!7l!dN2&`uA<0;PeyJj;$Qe5X}_nmeT`4xk6T!aT20DLiz~TFnJiaZb8xL^ z7BYS*7jqe^WiKtqp(h+5(YtEn!OE$8dOx#43?Nxtg6DOegI;7iL@wna;ms zV;XE$Y1?lRjV);^ZNC9;mYSWvvd!3YHu)zg^s^hY5O^risOF^f5gsQY1`8F=ge(zOK{YY5T5^$EOp5Xf78?U~u(*6hj zh@CkFioRotP{gO3A{FuOrR{fHUKH^xd}V{9dl5I3wkIuNmD09r@COoBF|)y!F1Cc? z(zf$Fq1X}*DsBIkC9GQ7c8VvgY6%c}tR<}02d_7K9%ymcb5}Rdq&V-_PnDkY&9z6} zul2}}|8~D#3;!8&3xClzjk;fd1Fx{MJ_%o((N=j+fY&~{MEC2T@CQ;y3j7XBKs9tQ zZZ$X9Ad2FwVHoUwE0cq##+DolTUaf(gtyg_nWb$#R?ERDcd>gFR_x!!t(ZSAJn&dM zJWM&;&+Dd~QQF>M2{7fJp5Ug0jkmJ|m~tyma8ttBHnfD*O54`*gw=vlnPds8m$q%U zyD3;bFn)G1FM5sAw#V@YE_w}1z{&4N{8n5qF0-Vx?RI9nXKC&h<_hZ5YgwJ#9KN66 zF&8r@@2B&aHMpNpVSURI;E$)^kJy=$;dYB*AgkYpXtiXXECSZy6oaI5WG+CJG5R=yQ2a#0^z$fcz- z)43O4vr4%Q+bA6O+tau`pdeI#LErC?&C0VMe^6g+@sXu%bI`z+o}We-TfBQ|+u`;H z%IEu*8=|-Ox;E6F!v(%+sZjnkKb9*$q_q7gOMvo2@JH;-sql?&S^bZaKE=JvYaW!_ z4we@sy{#X_OZvdl_Kht8B^~{&U5A%6D(oqifRcWFkzIn9bfmQXdBo2eMoB;E39DHv zIh|%We{Z%!HT?tKm-eq#GB^BVhBq`J|9}+_ zqY(D@_NS7dK7fDhVF~b$o$!bI$5}z0`VIVnyd(axp5=vql=wm1KTxT>`7a(F{&DfH zw#SHnJZ%Z^kB9LG4mHv;-D?T(kKcHL*8~uH1LC*xm+8+MhClp}*0UIY%IFQ#p|b{~nqDQl!6#BR%|&w7*o^ z{$K?fxc;ITw&1^QirS`p1NTyC+lF>_|>MCfZMDBf5gr#K?QO` z9WNX=SQLN2&}-T-skZc-)zFPVFYA^iD`9hZs5C?6)(w|-zdyFLZReE{Ie#|xu{M2c zL}N?f0=vSctsGzWS~Jv_z)gI?%d{&Bq62@xu9IVnPbh6WbweI&4c-jscDEgmXlyZV z$D=Jb%4lD|D?()i!_Kr+l+mt!EH5KC^fs1>O`&yo}&u>sSKHXf;ppGJ@zOFHsiC z=q3CSJF^&OdJ4alV$I+~_#^E6f3UnLojdUd61;Sv_9ja}>0IjxUOFhxg_eNQxzH25 zbl?GJSprJu8=l~mAX?NDEdgb8pr70;K~!m9v;N?#+7rAIM60+7 z;qloalA^RtW0E5ql2pKYmg?4@&TVCSgE9;kmFfuljyBx|uBnvBT#4Lm+u?0XTl znjp6L|9N{8_^68P(LVtqQPB z+G_x}8Ao(n#vS(+gJ{^n6&QC^!1cDR;x?>e-uIkSeY*oV^ZxJudoQ04)N<-povlut zS{pO)**ZZLqts=)Mu09_=auB**%c88)iO{$yE2Hyd1)!`~ z8^Dy6t~*KrDC^&GPx!)=mC?Ds0#Mcp`@#$g>fK!d7?i^eU8U0$vLRCbAdVJZuOFDd|)eZl~yvb6CJ1)#FG8NgH) zbn8er^g}>38`0ZwQVh+!oN&}p&GkX-!Q@;z<=MMAp${g~T(Ri)-K7dKE{78VYMvqe ztb+oO${q$VsnG9RC;+K!`YuZr%#EMLRlqEe~al2CoFi856 zMK7)YK5IS81EU9hn3C4fpyfnpJ)B!KDgX_7(E#Dx;vof~LH{s-X%P5MQ$Xw4QHSp& z(#`Q*qxLV`qJiHq{S4(EVD*`DqpBw=0Mtqh5SpBW6#!}-4PdBIRT~9>T1x{MYAD{% z-w2f`_g+kJq0*F_uKJMzQ0^5(0EEgtPXRm6rk5!5pBA`|E68z;*}yF8j{%vkUqHuS ztSX}evv#!tpyN^l7#%czwgRAIFcEWdr|vDnf`Z9Jz{e<{_F^py1*zgJ3NQhM3V?zL zk≺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°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�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

IIA>ot0}U{T)&r-e$16xjDB#FsN(g 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 i).decode('ascii')) + + +cdef inline str http_method_str(int i): + if i < METHODS_COUNT: + return _http_method[i] + else: + return "" + +cdef inline object find_header(bytes raw_header): + cdef Py_ssize_t size + cdef char *buf + cdef int idx + PyBytes_AsStringAndSize(raw_header, &buf, &size) + idx = _find_header.find_header(buf, size) + if idx == -1: + return raw_header.decode('utf-8', 'surrogateescape') + return headers[idx] + + +@cython.freelist(DEFAULT_FREELIST_SIZE) +cdef class RawRequestMessage: + cdef readonly str method + cdef readonly str path + cdef readonly object version # HttpVersion + cdef readonly object headers # CIMultiDict + cdef readonly object raw_headers # tuple + cdef readonly object should_close + cdef readonly object compression + cdef readonly object upgrade + cdef readonly object chunked + cdef readonly object url # yarl.URL + + def __init__(self, method, path, version, headers, raw_headers, + should_close, compression, upgrade, chunked, url): + self.method = method + self.path = path + self.version = version + self.headers = headers + self.raw_headers = raw_headers + self.should_close = should_close + self.compression = compression + self.upgrade = upgrade + self.chunked = chunked + self.url = url + + def __repr__(self): + info = [] + info.append(("method", self.method)) + info.append(("path", self.path)) + info.append(("version", self.version)) + info.append(("headers", self.headers)) + info.append(("raw_headers", self.raw_headers)) + info.append(("should_close", self.should_close)) + info.append(("compression", self.compression)) + info.append(("upgrade", self.upgrade)) + info.append(("chunked", self.chunked)) + info.append(("url", self.url)) + sinfo = ', '.join(name + '=' + repr(val) for name, val in info) + return '' + + def _replace(self, **dct): + cdef RawRequestMessage ret + ret = _new_request_message(self.method, + self.path, + self.version, + self.headers, + self.raw_headers, + self.should_close, + self.compression, + self.upgrade, + self.chunked, + self.url) + if "method" in dct: + ret.method = dct["method"] + if "path" in dct: + ret.path = dct["path"] + if "version" in dct: + ret.version = dct["version"] + if "headers" in dct: + ret.headers = dct["headers"] + if "raw_headers" in dct: + ret.raw_headers = dct["raw_headers"] + if "should_close" in dct: + ret.should_close = dct["should_close"] + if "compression" in dct: + ret.compression = dct["compression"] + if "upgrade" in dct: + ret.upgrade = dct["upgrade"] + if "chunked" in dct: + ret.chunked = dct["chunked"] + if "url" in dct: + ret.url = dct["url"] + return ret + +cdef _new_request_message(str method, + str path, + object version, + object headers, + object raw_headers, + bint should_close, + object compression, + bint upgrade, + bint chunked, + object url): + cdef RawRequestMessage ret + ret = RawRequestMessage.__new__(RawRequestMessage) + ret.method = method + ret.path = path + ret.version = version + ret.headers = headers + ret.raw_headers = raw_headers + ret.should_close = should_close + ret.compression = compression + ret.upgrade = upgrade + ret.chunked = chunked + ret.url = url + return ret + + +@cython.freelist(DEFAULT_FREELIST_SIZE) +cdef class RawResponseMessage: + cdef readonly object version # HttpVersion + cdef readonly int code + cdef readonly str reason + cdef readonly object headers # CIMultiDict + cdef readonly object raw_headers # tuple + cdef readonly object should_close + cdef readonly object compression + cdef readonly object upgrade + cdef readonly object chunked + + def __init__(self, version, code, reason, headers, raw_headers, + should_close, compression, upgrade, chunked): + self.version = version + self.code = code + self.reason = reason + self.headers = headers + self.raw_headers = raw_headers + self.should_close = should_close + self.compression = compression + self.upgrade = upgrade + self.chunked = chunked + + def __repr__(self): + info = [] + info.append(("version", self.version)) + info.append(("code", self.code)) + info.append(("reason", self.reason)) + info.append(("headers", self.headers)) + info.append(("raw_headers", self.raw_headers)) + info.append(("should_close", self.should_close)) + info.append(("compression", self.compression)) + info.append(("upgrade", self.upgrade)) + info.append(("chunked", self.chunked)) + sinfo = ', '.join(name + '=' + repr(val) for name, val in info) + return '' + + +cdef _new_response_message(object version, + int code, + str reason, + object headers, + object raw_headers, + bint should_close, + object compression, + bint upgrade, + bint chunked): + cdef RawResponseMessage ret + ret = RawResponseMessage.__new__(RawResponseMessage) + ret.version = version + ret.code = code + ret.reason = reason + ret.headers = headers + ret.raw_headers = raw_headers + ret.should_close = should_close + ret.compression = compression + ret.upgrade = upgrade + ret.chunked = chunked + return ret + + +@cython.internal +cdef class HttpParser: + + cdef: + cparser.llhttp_t* _cparser + cparser.llhttp_settings_t* _csettings + + bytes _raw_name + object _name + bytes _raw_value + bint _has_value + int _header_name_size + + object _protocol + object _loop + object _timer + + size_t _max_line_size + size_t _max_field_size + size_t _max_headers + bint _response_with_body + bint _read_until_eof + bint _lax + + bint _started + object _url + bytearray _buf + str _path + str _reason + list _headers + set _seen_singletons + list _raw_headers + bint _upgraded + list _messages + object _payload + bint _payload_error + object _payload_exception + object _last_error + bint _auto_decompress + int _limit + + str _content_encoding + + Py_buffer py_buf + + def __cinit__(self): + self._cparser = \ + PyMem_Malloc(sizeof(cparser.llhttp_t)) + if self._cparser is NULL: + raise MemoryError() + + self._csettings = \ + PyMem_Malloc(sizeof(cparser.llhttp_settings_t)) + if self._csettings is NULL: + raise MemoryError() + + def __dealloc__(self): + PyMem_Free(self._cparser) + PyMem_Free(self._csettings) + + cdef _init( + self, cparser.llhttp_type mode, + object protocol, object loop, int limit, + object timer=None, + size_t max_line_size=8190, size_t max_headers=128, + size_t max_field_size=8190, payload_exception=None, + bint response_with_body=True, bint read_until_eof=False, + bint auto_decompress=True, + ): + cparser.llhttp_settings_init(self._csettings) + cparser.llhttp_init(self._cparser, mode, self._csettings) + self._cparser.data = self + self._cparser.content_length = 0 + + self._protocol = protocol + self._loop = loop + self._timer = timer + + self._buf = bytearray() + self._payload = None + self._payload_error = 0 + self._payload_exception = payload_exception + self._messages = [] + + self._raw_name = EMPTY_BYTES + self._raw_value = EMPTY_BYTES + self._has_value = False + self._header_name_size = 0 + + self._max_line_size = max_line_size + self._max_headers = max_headers + self._max_field_size = max_field_size + self._response_with_body = response_with_body + self._read_until_eof = read_until_eof + self._upgraded = False + self._auto_decompress = auto_decompress + self._content_encoding = None + self._lax = False + self._seen_singletons = set() + + self._csettings.on_url = cb_on_url + self._csettings.on_status = cb_on_status + self._csettings.on_header_field = cb_on_header_field + self._csettings.on_header_value = cb_on_header_value + self._csettings.on_headers_complete = cb_on_headers_complete + self._csettings.on_body = cb_on_body + self._csettings.on_message_begin = cb_on_message_begin + self._csettings.on_message_complete = cb_on_message_complete + self._csettings.on_chunk_header = cb_on_chunk_header + self._csettings.on_chunk_complete = cb_on_chunk_complete + + self._last_error = None + self._limit = limit + + cdef _process_header(self): + cdef str value + if self._raw_name is not EMPTY_BYTES: + name = find_header(self._raw_name) + value = self._raw_value.decode('utf-8', 'surrogateescape') + + # reject null bytes in header values - matches the Python parser + # check at http_parser.py. llhttp in lenient mode doesn't reject + # these itself, so we need to catch them here. + # ref: RFC 9110 section 5.5 (CTL chars forbidden in field values) + if "\x00" in value: + raise InvalidHeader(self._raw_value) + + if not self._lax and name in SINGLETON_HEADERS: + if name in self._seen_singletons: + raise BadHttpMessage(f"Duplicate '{name}' header found.") + self._seen_singletons.add(name) + self._headers.append((name, value)) + if len(self._headers) > self._max_headers: + raise BadHttpMessage("Too many headers received") + + if name is CONTENT_ENCODING: + self._content_encoding = value + + self._has_value = False + self._header_name_size = 0 + self._raw_headers.append((self._raw_name, self._raw_value)) + self._raw_name = EMPTY_BYTES + self._raw_value = EMPTY_BYTES + + cdef _on_header_field(self, char* at, size_t length): + if self._has_value: + self._process_header() + + if self._raw_name is EMPTY_BYTES: + self._raw_name = at[:length] + else: + self._raw_name += at[:length] + + cdef _on_header_value(self, char* at, size_t length): + if self._raw_value is EMPTY_BYTES: + self._raw_value = at[:length] + else: + self._raw_value += at[:length] + self._has_value = True + + cdef _on_headers_complete(self): + self._process_header() + + should_close = not cparser.llhttp_should_keep_alive(self._cparser) + upgrade = self._cparser.upgrade + chunked = self._cparser.flags & cparser.F_CHUNKED + + raw_headers = tuple(self._raw_headers) + headers = CIMultiDictProxy(CIMultiDict(self._headers)) + + if self._cparser.type == cparser.HTTP_REQUEST: + h_upg = headers.get("upgrade", "") + allowed = upgrade and h_upg.isascii() and h_upg.lower() in ALLOWED_UPGRADES + if allowed or self._cparser.method == cparser.HTTP_CONNECT: + self._upgraded = True + else: + if upgrade and self._cparser.status_code == 101: + self._upgraded = True + + # do not support old websocket spec + if SEC_WEBSOCKET_KEY1 in headers: + raise InvalidHeader(SEC_WEBSOCKET_KEY1) + + encoding = None + enc = self._content_encoding + if enc is not None: + self._content_encoding = None + if enc.isascii() and enc.lower() in {"gzip", "deflate", "br", "zstd"}: + encoding = enc + + if self._cparser.type == cparser.HTTP_REQUEST: + method = http_method_str(self._cparser.method) + msg = _new_request_message( + method, self._path, + self.http_version(), headers, raw_headers, + should_close, encoding, upgrade, chunked, self._url) + else: + msg = _new_response_message( + self.http_version(), self._cparser.status_code, self._reason, + headers, raw_headers, should_close, encoding, + upgrade, chunked) + + if ( + ULLONG_MAX > self._cparser.content_length > 0 or chunked or + self._cparser.method == cparser.HTTP_CONNECT or + (self._cparser.status_code >= 199 and + self._cparser.content_length == 0 and + self._read_until_eof) + ): + payload = StreamReader( + self._protocol, timer=self._timer, loop=self._loop, + limit=self._limit) + else: + payload = EMPTY_PAYLOAD + + self._payload = payload + if encoding is not None and self._auto_decompress: + self._payload = DeflateBuffer(payload, encoding) + + if not self._response_with_body: + payload = EMPTY_PAYLOAD + + self._messages.append((msg, payload)) + + cdef _on_message_complete(self): + self._payload.feed_eof() + self._payload = None + + cdef _on_chunk_header(self): + self._payload.begin_http_chunk_receiving() + + cdef _on_chunk_complete(self): + self._payload.end_http_chunk_receiving() + + cdef object _on_status_complete(self): + pass + + cdef inline http_version(self): + cdef cparser.llhttp_t* parser = self._cparser + + if parser.http_major == 1: + if parser.http_minor == 0: + return HttpVersion10 + elif parser.http_minor == 1: + return HttpVersion11 + + return HttpVersion(parser.http_major, parser.http_minor) + + ### Public API ### + + def feed_eof(self): + cdef bytes desc + + if self._payload is not None: + if self._cparser.flags & cparser.F_CHUNKED: + raise TransferEncodingError( + "Not enough data to satisfy transfer length header.") + elif self._cparser.flags & cparser.F_CONTENT_LENGTH: + raise ContentLengthError( + "Not enough data to satisfy content length header.") + elif cparser.llhttp_get_errno(self._cparser) != cparser.HPE_OK: + desc = cparser.llhttp_get_error_reason(self._cparser) + raise PayloadEncodingError(desc.decode('latin-1')) + else: + self._payload.feed_eof() + elif self._started: + self._on_headers_complete() + if self._messages: + return self._messages[-1][0] + + def feed_data(self, data): + cdef: + size_t data_len + size_t nb + char* base + cdef cparser.llhttp_errno_t errno + + PyObject_GetBuffer(data, &self.py_buf, PyBUF_SIMPLE) + # Cache buffer pointer before PyBuffer_Release to avoid use-after-release. + base = self.py_buf.buf + data_len = self.py_buf.len + + errno = cparser.llhttp_execute( + self._cparser, + base, + data_len) + + if errno is cparser.HPE_PAUSED_UPGRADE: + cparser.llhttp_resume_after_upgrade(self._cparser) + + nb = cparser.llhttp_get_error_pos(self._cparser) - base + + PyBuffer_Release(&self.py_buf) + + if errno not in (cparser.HPE_OK, cparser.HPE_PAUSED_UPGRADE): + if self._payload_error == 0: + if self._last_error is not None: + ex = self._last_error + self._last_error = None + else: + after = cparser.llhttp_get_error_pos(self._cparser) + before = data[:after - base] + after_b = after.split(b"\r\n", 1)[0] + before = before.rsplit(b"\r\n", 1)[-1] + data = before + after_b + pointer = " " * (len(repr(before))-1) + "^" + ex = parser_error_from_errno(self._cparser, data, pointer) + self._payload = None + raise ex + + if self._messages: + messages = self._messages + self._messages = [] + else: + messages = () + + if self._upgraded: + return messages, True, data[nb:] + else: + return messages, False, b"" + + def set_upgraded(self, val): + self._upgraded = val + + +cdef class HttpRequestParser(HttpParser): + + def __init__( + self, protocol, loop, int limit, timer=None, + size_t max_line_size=8190, size_t max_headers=128, + size_t max_field_size=8190, payload_exception=None, + bint response_with_body=True, bint read_until_eof=False, + bint auto_decompress=True, + ): + self._init(cparser.HTTP_REQUEST, protocol, loop, limit, timer, + max_line_size, max_headers, max_field_size, + payload_exception, response_with_body, read_until_eof, + auto_decompress) + + cdef object _on_status_complete(self): + cdef int idx1, idx2 + if not self._buf: + return + self._path = self._buf.decode('utf-8', 'surrogateescape') + try: + idx3 = len(self._path) + if self._cparser.method == cparser.HTTP_CONNECT: + # authority-form, + # https://datatracker.ietf.org/doc/html/rfc7230#section-5.3.3 + self._url = URL.build(authority=self._path, encoded=True) + elif idx3 > 1 and self._path[0] == '/': + # origin-form, + # https://datatracker.ietf.org/doc/html/rfc7230#section-5.3.1 + idx1 = self._path.find("?") + if idx1 == -1: + query = "" + idx2 = self._path.find("#") + if idx2 == -1: + path = self._path + fragment = "" + else: + path = self._path[0: idx2] + fragment = self._path[idx2+1:] + + else: + path = self._path[0:idx1] + idx1 += 1 + idx2 = self._path.find("#", idx1+1) + if idx2 == -1: + query = self._path[idx1:] + fragment = "" + else: + query = self._path[idx1: idx2] + fragment = self._path[idx2+1:] + + self._url = URL.build( + path=path, + query_string=query, + fragment=fragment, + encoded=True, + ) + else: + # absolute-form for proxy maybe, + # https://datatracker.ietf.org/doc/html/rfc7230#section-5.3.2 + self._url = URL(self._path, encoded=True) + finally: + PyByteArray_Resize(self._buf, 0) + + +cdef class HttpResponseParser(HttpParser): + + def __init__( + self, protocol, loop, int limit, timer=None, + size_t max_line_size=8190, size_t max_headers=128, + size_t max_field_size=8190, payload_exception=None, + bint response_with_body=True, bint read_until_eof=False, + bint auto_decompress=True + ): + self._init(cparser.HTTP_RESPONSE, protocol, loop, limit, timer, + max_line_size, max_headers, max_field_size, + payload_exception, response_with_body, read_until_eof, + auto_decompress) + # Use strict parsing on dev mode, so users are warned about broken servers. + if not DEBUG: + cparser.llhttp_set_lenient_headers(self._cparser, 1) + cparser.llhttp_set_lenient_optional_cr_before_lf(self._cparser, 1) + cparser.llhttp_set_lenient_spaces_after_chunk_size(self._cparser, 1) + self._lax = True + + cdef object _on_status_complete(self): + if self._buf: + self._reason = self._buf.decode('utf-8', 'surrogateescape') + PyByteArray_Resize(self._buf, 0) + else: + self._reason = self._reason or '' + +cdef int cb_on_message_begin(cparser.llhttp_t* parser) except -1: + cdef HttpParser pyparser = parser.data + + pyparser._started = True + pyparser._headers = [] + pyparser._seen_singletons = set() + pyparser._raw_headers = [] + PyByteArray_Resize(pyparser._buf, 0) + pyparser._path = None + pyparser._reason = None + return 0 + + +cdef int cb_on_url(cparser.llhttp_t* parser, + const char *at, size_t length) except -1: + cdef HttpParser pyparser = parser.data + try: + if length > pyparser._max_line_size: + status = pyparser._buf + at[:length] + raise LineTooLong(status[:100] + b"...", pyparser._max_line_size) + extend(pyparser._buf, at, length) + except BaseException as ex: + pyparser._last_error = ex + return -1 + else: + return 0 + + +cdef int cb_on_status(cparser.llhttp_t* parser, + const char *at, size_t length) except -1: + cdef HttpParser pyparser = parser.data + try: + if length > pyparser._max_line_size: + reason = pyparser._buf + at[:length] + raise LineTooLong(reason[:100] + b"...", pyparser._max_line_size) + extend(pyparser._buf, at, length) + except BaseException as ex: + pyparser._last_error = ex + return -1 + else: + return 0 + + +cdef int cb_on_header_field(cparser.llhttp_t* parser, + const char *at, size_t length) except -1: + cdef HttpParser pyparser = parser.data + cdef Py_ssize_t size + try: + pyparser._on_status_complete() + size = len(pyparser._raw_name) + length + if size > pyparser._max_field_size: + name = pyparser._raw_name + at[:length] + raise LineTooLong(name[:100] + b"...", pyparser._max_field_size) + pyparser._header_name_size = size + pyparser._on_header_field(at, length) + except BaseException as ex: + pyparser._last_error = ex + return -1 + else: + return 0 + + +cdef int cb_on_header_value(cparser.llhttp_t* parser, + const char *at, size_t length) except -1: + cdef HttpParser pyparser = parser.data + cdef Py_ssize_t size + try: + size = len(pyparser._raw_value) + length + if pyparser._header_name_size + size > pyparser._max_field_size: + value = pyparser._raw_value + at[:length] + raise LineTooLong(value[:100] + b"...", pyparser._max_field_size) + pyparser._on_header_value(at, length) + except BaseException as ex: + pyparser._last_error = ex + return -1 + else: + return 0 + + +cdef int cb_on_headers_complete(cparser.llhttp_t* parser) except -1: + cdef HttpParser pyparser = parser.data + try: + pyparser._on_status_complete() + pyparser._on_headers_complete() + except BaseException as exc: + pyparser._last_error = exc + return -1 + else: + if pyparser._upgraded or pyparser._cparser.method == cparser.HTTP_CONNECT: + return 2 + else: + return 0 + + +cdef int cb_on_body(cparser.llhttp_t* parser, + const char *at, size_t length) except -1: + cdef HttpParser pyparser = parser.data + cdef bytes body = at[:length] + try: + pyparser._payload.feed_data(body, length) + except BaseException as underlying_exc: + reraised_exc = underlying_exc + if pyparser._payload_exception is not None: + reraised_exc = pyparser._payload_exception(str(underlying_exc)) + + set_exception(pyparser._payload, reraised_exc, underlying_exc) + + pyparser._payload_error = 1 + return -1 + else: + return 0 + + +cdef int cb_on_message_complete(cparser.llhttp_t* parser) except -1: + cdef HttpParser pyparser = parser.data + try: + pyparser._started = False + pyparser._on_message_complete() + except BaseException as exc: + pyparser._last_error = exc + return -1 + else: + return 0 + + +cdef int cb_on_chunk_header(cparser.llhttp_t* parser) except -1: + cdef HttpParser pyparser = parser.data + try: + pyparser._on_chunk_header() + except BaseException as exc: + pyparser._last_error = exc + return -1 + else: + return 0 + + +cdef int cb_on_chunk_complete(cparser.llhttp_t* parser) except -1: + cdef HttpParser pyparser = parser.data + try: + pyparser._on_chunk_complete() + except BaseException as exc: + pyparser._last_error = exc + return -1 + else: + return 0 + + +cdef parser_error_from_errno(cparser.llhttp_t* parser, data, pointer): + cdef cparser.llhttp_errno_t errno = cparser.llhttp_get_errno(parser) + cdef bytes desc = cparser.llhttp_get_error_reason(parser) + + err_msg = "{}:\n\n {!r}\n {}".format(desc.decode("latin-1"), data, pointer) + + if errno in {cparser.HPE_CB_MESSAGE_BEGIN, + cparser.HPE_CB_HEADERS_COMPLETE, + cparser.HPE_CB_MESSAGE_COMPLETE, + cparser.HPE_CB_CHUNK_HEADER, + cparser.HPE_CB_CHUNK_COMPLETE, + cparser.HPE_INVALID_CONSTANT, + cparser.HPE_INVALID_HEADER_TOKEN, + cparser.HPE_INVALID_CONTENT_LENGTH, + cparser.HPE_INVALID_CHUNK_SIZE, + cparser.HPE_INVALID_EOF_STATE, + cparser.HPE_INVALID_TRANSFER_ENCODING}: + return BadHttpMessage(err_msg) + elif errno == cparser.HPE_INVALID_METHOD: + return BadHttpMethod(error=err_msg) + elif errno in {cparser.HPE_INVALID_STATUS, + cparser.HPE_INVALID_VERSION}: + return BadStatusLine(error=err_msg) + elif errno == cparser.HPE_INVALID_URL: + return InvalidURLError(err_msg) + + return BadHttpMessage(err_msg) diff --git a/venv/lib/python3.9/site-packages/aiohttp/_http_writer.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/aiohttp/_http_writer.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..f49c3069457900c404819898bf18ae7d77294bda GIT binary patch literal 452304 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 + if buf == NULL: + PyErr_NoMemory() + return -1 + memcpy(buf, writer.buf, writer.size) + else: + buf = PyMem_Realloc(writer.buf, size) + if buf == NULL: + PyErr_NoMemory() + return -1 + writer.buf = buf + writer.size = size + writer.heap_allocated = 1 + writer.buf[writer.pos] = ch + writer.pos += 1 + return 0 + + +cdef inline int _write_utf8(Writer* writer, Py_UCS4 symbol): + cdef uint64_t utf = symbol + + if utf < 0x80: + return _write_byte(writer, utf) + elif utf < 0x800: + if _write_byte(writer, (0xc0 | (utf >> 6))) < 0: + return -1 + return _write_byte(writer, (0x80 | (utf & 0x3f))) + elif 0xD800 <= utf <= 0xDFFF: + # surogate pair, ignored + return 0 + elif utf < 0x10000: + if _write_byte(writer, (0xe0 | (utf >> 12))) < 0: + return -1 + if _write_byte(writer, (0x80 | ((utf >> 6) & 0x3f))) < 0: + return -1 + return _write_byte(writer, (0x80 | (utf & 0x3f))) + elif utf > 0x10FFFF: + # symbol is too large + return 0 + else: + if _write_byte(writer, (0xf0 | (utf >> 18))) < 0: + return -1 + if _write_byte(writer, + (0x80 | ((utf >> 12) & 0x3f))) < 0: + return -1 + if _write_byte(writer, + (0x80 | ((utf >> 6) & 0x3f))) < 0: + return -1 + return _write_byte(writer, (0x80 | (utf & 0x3f))) + + +cdef inline int _write_str(Writer* writer, str s): + cdef Py_UCS4 ch + for ch in s: + if _write_utf8(writer, ch) < 0: + return -1 + + +cdef inline int _write_str_raise_on_nlcr(Writer* writer, object s): + cdef Py_UCS4 ch + cdef str out_str + if type(s) is str: + out_str = s + elif type(s) is _istr: + out_str = PyObject_Str(s) + elif not isinstance(s, str): + raise TypeError("Cannot serialize non-str key {!r}".format(s)) + else: + out_str = str(s) + + for ch in out_str: + if ch in {0x0D, 0x0A, 0x00}: + raise ValueError( + "Newline, carriage return, or null byte detected in headers. " + "Potential header injection attack." + ) + if _write_utf8(writer, ch) < 0: + return -1 + + +# --------------- _serialize_headers ---------------------- + +def _serialize_headers(str status_line, headers): + cdef Writer writer + cdef object key + cdef object val + cdef char buf[BUF_SIZE] + + _init_writer(&writer, buf) + + try: + if _write_str_raise_on_nlcr(&writer, status_line) < 0: + raise + if _write_byte(&writer, b'\r') < 0: + raise + if _write_byte(&writer, b'\n') < 0: + raise + + for key, val in headers.items(): + if _write_str_raise_on_nlcr(&writer, key) < 0: + raise + if _write_byte(&writer, b':') < 0: + raise + if _write_byte(&writer, b' ') < 0: + raise + if _write_str_raise_on_nlcr(&writer, val) < 0: + raise + if _write_byte(&writer, b'\r') < 0: + raise + if _write_byte(&writer, b'\n') < 0: + raise + + if _write_byte(&writer, b'\r') < 0: + raise + if _write_byte(&writer, b'\n') < 0: + raise + + return PyBytes_FromStringAndSize(writer.buf, writer.pos) + finally: + _release_writer(&writer) diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/mask.pxd.hash b/venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/mask.pxd.hash new file mode 100644 index 0000000..eadfed3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/mask.pxd.hash @@ -0,0 +1 @@ +b01999d409b29bd916e067bc963d5f2d9ee63cfc9ae0bccb769910131417bf93 /home/runner/work/aiohttp/aiohttp/aiohttp/_websocket/mask.pxd diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/mask.pyx.hash b/venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/mask.pyx.hash new file mode 100644 index 0000000..5cd7ae6 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/mask.pyx.hash @@ -0,0 +1 @@ +0478ceb55d0ed30ef1a7da742cd003449bc69a07cf9fdb06789bd2b347cbfffe /home/runner/work/aiohttp/aiohttp/aiohttp/_websocket/mask.pyx diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/reader_c.pxd.hash b/venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/reader_c.pxd.hash new file mode 100644 index 0000000..f2feb6a --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/.hash/reader_c.pxd.hash @@ -0,0 +1 @@ +9e5fe78ed0ebce5414d2b8e01868d90c1facc20b84d2d5ff6c23e86e44a155ae /home/runner/work/aiohttp/aiohttp/aiohttp/_websocket/reader_c.pxd diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/__init__.py b/venv/lib/python3.9/site-packages/aiohttp/_websocket/__init__.py new file mode 100644 index 0000000..836257c --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/__init__.py @@ -0,0 +1 @@ +"""WebSocket protocol versions 13 and 8.""" diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/helpers.py b/venv/lib/python3.9/site-packages/aiohttp/_websocket/helpers.py new file mode 100644 index 0000000..0bb58df --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/helpers.py @@ -0,0 +1,147 @@ +"""Helpers for WebSocket protocol versions 13 and 8.""" + +import functools +import re +from struct import Struct +from typing import TYPE_CHECKING, Final, List, Optional, Pattern, Tuple + +from ..helpers import NO_EXTENSIONS +from .models import WSHandshakeError + +UNPACK_LEN3 = Struct("!Q").unpack_from +UNPACK_CLOSE_CODE = Struct("!H").unpack +PACK_LEN1 = Struct("!BB").pack +PACK_LEN2 = Struct("!BBH").pack +PACK_LEN3 = Struct("!BBQ").pack +PACK_CLOSE_CODE = Struct("!H").pack +PACK_RANDBITS = Struct("!L").pack +MSG_SIZE: Final[int] = 2**14 +MASK_LEN: Final[int] = 4 + +WS_KEY: Final[bytes] = b"258EAFA5-E914-47DA-95CA-C5AB0DC85B11" + + +# Used by _websocket_mask_python +@functools.lru_cache +def _xor_table() -> List[bytes]: + return [bytes(a ^ b for a in range(256)) for b in range(256)] + + +def _websocket_mask_python(mask: bytes, data: bytearray) -> None: + """Websocket masking function. + + `mask` is a `bytes` object of length 4; `data` is a `bytearray` + object of any length. The contents of `data` are masked with `mask`, + as specified in section 5.3 of RFC 6455. + + Note that this function mutates the `data` argument. + + This pure-python implementation may be replaced by an optimized + version when available. + + """ + assert isinstance(data, bytearray), data + assert len(mask) == 4, mask + + if data: + _XOR_TABLE = _xor_table() + a, b, c, d = (_XOR_TABLE[n] for n in mask) + data[::4] = data[::4].translate(a) + data[1::4] = data[1::4].translate(b) + data[2::4] = data[2::4].translate(c) + data[3::4] = data[3::4].translate(d) + + +if TYPE_CHECKING or NO_EXTENSIONS: # pragma: no cover + websocket_mask = _websocket_mask_python +else: + try: + from .mask import _websocket_mask_cython # type: ignore[import-not-found] + + websocket_mask = _websocket_mask_cython + except ImportError: # pragma: no cover + websocket_mask = _websocket_mask_python + + +_WS_EXT_RE: Final[Pattern[str]] = re.compile( + r"^(?:;\s*(?:" + r"(server_no_context_takeover)|" + r"(client_no_context_takeover)|" + r"(server_max_window_bits(?:=(\d+))?)|" + r"(client_max_window_bits(?:=(\d+))?)))*$" +) + +_WS_EXT_RE_SPLIT: Final[Pattern[str]] = re.compile(r"permessage-deflate([^,]+)?") + + +def ws_ext_parse(extstr: Optional[str], isserver: bool = False) -> Tuple[int, bool]: + if not extstr: + return 0, False + + compress = 0 + notakeover = False + for ext in _WS_EXT_RE_SPLIT.finditer(extstr): + defext = ext.group(1) + # Return compress = 15 when get `permessage-deflate` + if not defext: + compress = 15 + break + match = _WS_EXT_RE.match(defext) + if match: + compress = 15 + if isserver: + # Server never fail to detect compress handshake. + # Server does not need to send max wbit to client + if match.group(4): + compress = int(match.group(4)) + # Group3 must match if group4 matches + # Compress wbit 8 does not support in zlib + # If compress level not support, + # CONTINUE to next extension + if compress > 15 or compress < 9: + compress = 0 + continue + if match.group(1): + notakeover = True + # Ignore regex group 5 & 6 for client_max_window_bits + break + else: + if match.group(6): + compress = int(match.group(6)) + # Group5 must match if group6 matches + # Compress wbit 8 does not support in zlib + # If compress level not support, + # FAIL the parse progress + if compress > 15 or compress < 9: + raise WSHandshakeError("Invalid window size") + if match.group(2): + notakeover = True + # Ignore regex group 5 & 6 for client_max_window_bits + break + # Return Fail if client side and not match + elif not isserver: + raise WSHandshakeError("Extension for deflate not supported" + ext.group(1)) + + return compress, notakeover + + +def ws_ext_gen( + compress: int = 15, isserver: bool = False, server_notakeover: bool = False +) -> str: + # client_notakeover=False not used for server + # compress wbit 8 does not support in zlib + if compress < 9 or compress > 15: + raise ValueError( + "Compress wbits must between 9 and 15, zlib does not support wbits=8" + ) + enabledext = ["permessage-deflate"] + if not isserver: + enabledext.append("client_max_window_bits") + + if compress < 15: + enabledext.append("server_max_window_bits=" + str(compress)) + if server_notakeover: + enabledext.append("server_no_context_takeover") + # if client_notakeover: + # enabledext.append('client_no_context_takeover') + return "; ".join(enabledext) diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/mask.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/aiohttp/_websocket/mask.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..ceeba7f3ec27f3723ee8fadb566676387fbeb7fa GIT binary patch literal 221640 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

)^;8Nq^x$%EsBf8a3 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≫)q8Ps2P1 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 + mask_buf = PyBytes_AsString(mask) + uint32_msk = (mask_buf)[0] + + # TODO: align in_data ptr to achieve even faster speeds + # does it need in python ?! malloc() always aligns to sizeof(long) bytes + + if sizeof(size_t) >= 8: + uint64_msk = uint32_msk + uint64_msk = (uint64_msk << 32) | uint32_msk + + while data_len >= 8: + (in_buf)[0] ^= uint64_msk + in_buf += 8 + data_len -= 8 + + + while data_len >= 4: + (in_buf)[0] ^= uint32_msk + in_buf += 4 + data_len -= 4 + + for i in range(0, data_len): + in_buf[i] ^= mask_buf[i] diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/models.py b/venv/lib/python3.9/site-packages/aiohttp/_websocket/models.py new file mode 100644 index 0000000..7e89b96 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/models.py @@ -0,0 +1,84 @@ +"""Models for WebSocket protocol versions 13 and 8.""" + +import json +from enum import IntEnum +from typing import Any, Callable, Final, NamedTuple, Optional, cast + +WS_DEFLATE_TRAILING: Final[bytes] = bytes([0x00, 0x00, 0xFF, 0xFF]) + + +class WSCloseCode(IntEnum): + OK = 1000 + GOING_AWAY = 1001 + PROTOCOL_ERROR = 1002 + UNSUPPORTED_DATA = 1003 + ABNORMAL_CLOSURE = 1006 + INVALID_TEXT = 1007 + POLICY_VIOLATION = 1008 + MESSAGE_TOO_BIG = 1009 + MANDATORY_EXTENSION = 1010 + INTERNAL_ERROR = 1011 + SERVICE_RESTART = 1012 + TRY_AGAIN_LATER = 1013 + BAD_GATEWAY = 1014 + + +class WSMsgType(IntEnum): + # websocket spec types + CONTINUATION = 0x0 + TEXT = 0x1 + BINARY = 0x2 + PING = 0x9 + PONG = 0xA + CLOSE = 0x8 + + # aiohttp specific types + CLOSING = 0x100 + CLOSED = 0x101 + ERROR = 0x102 + + text = TEXT + binary = BINARY + ping = PING + pong = PONG + close = CLOSE + closing = CLOSING + closed = CLOSED + error = ERROR + + +class WSMessage(NamedTuple): + type: WSMsgType + # To type correctly, this would need some kind of tagged union for each type. + data: Any + extra: Optional[str] + + def json(self, *, loads: Callable[[Any], Any] = json.loads) -> Any: + """Return parsed JSON data. + + .. versionadded:: 0.22 + """ + return loads(self.data) + + +# Constructing the tuple directly to avoid the overhead of +# the lambda and arg processing since NamedTuples are constructed +# with a run time built lambda +# https://github.com/python/cpython/blob/d83fcf8371f2f33c7797bc8f5423a8bca8c46e5c/Lib/collections/__init__.py#L441 +WS_CLOSED_MESSAGE = tuple.__new__(WSMessage, (WSMsgType.CLOSED, None, None)) +WS_CLOSING_MESSAGE = tuple.__new__(WSMessage, (WSMsgType.CLOSING, None, None)) + + +class WebSocketError(Exception): + """WebSocket protocol parser error.""" + + def __init__(self, code: int, message: str) -> None: + self.code = code + super().__init__(code, message) + + def __str__(self) -> str: + return cast(str, self.args[1]) + + +class WSHandshakeError(Exception): + """WebSocket protocol handshake error.""" diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader.py b/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader.py new file mode 100644 index 0000000..23f3226 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader.py @@ -0,0 +1,31 @@ +"""Reader for WebSocket protocol versions 13 and 8.""" + +from typing import TYPE_CHECKING + +from ..helpers import NO_EXTENSIONS + +if TYPE_CHECKING or NO_EXTENSIONS: # pragma: no cover + from .reader_py import ( + WebSocketDataQueue as WebSocketDataQueuePython, + WebSocketReader as WebSocketReaderPython, + ) + + WebSocketReader = WebSocketReaderPython + WebSocketDataQueue = WebSocketDataQueuePython +else: + try: + from .reader_c import ( # type: ignore[import-not-found] + WebSocketDataQueue as WebSocketDataQueueCython, + WebSocketReader as WebSocketReaderCython, + ) + + WebSocketReader = WebSocketReaderCython + WebSocketDataQueue = WebSocketDataQueueCython + except ImportError: # pragma: no cover + from .reader_py import ( + WebSocketDataQueue as WebSocketDataQueuePython, + WebSocketReader as WebSocketReaderPython, + ) + + WebSocketReader = WebSocketReaderPython + WebSocketDataQueue = WebSocketDataQueuePython diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..38266580ba73965192267ba22fd6357c862acce2 GIT binary patch literal 1695504 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%0Ardm4WR@Kx0|!S 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�~aM4M>B1 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%0A3+`)jMC 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�wWFE}E$zcp>)K3l~t5>`RlWxgdpV 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

03^lcv3nXZ_)^wW}9sZ&9`^RUun_(Nmt8c7^C#L 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


HEQknY}L0+Z8E4x&eEoJn>}ySHDBzo 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 U{%U$pm;T1*bo#JJAP%kn2R+N@x&QzG literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.pxd b/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.pxd new file mode 100644 index 0000000..a7620d8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.pxd @@ -0,0 +1,110 @@ +import cython + +from .mask cimport _websocket_mask_cython as websocket_mask + + +cdef unsigned int READ_HEADER +cdef unsigned int READ_PAYLOAD_LENGTH +cdef unsigned int READ_PAYLOAD_MASK +cdef unsigned int READ_PAYLOAD + +cdef int OP_CODE_NOT_SET +cdef int OP_CODE_CONTINUATION +cdef int OP_CODE_TEXT +cdef int OP_CODE_BINARY +cdef int OP_CODE_CLOSE +cdef int OP_CODE_PING +cdef int OP_CODE_PONG + +cdef int COMPRESSED_NOT_SET +cdef int COMPRESSED_FALSE +cdef int COMPRESSED_TRUE + +cdef object UNPACK_LEN3 +cdef object UNPACK_CLOSE_CODE +cdef object TUPLE_NEW + +cdef object WSMsgType +cdef object WSMessage + +cdef object WS_MSG_TYPE_TEXT +cdef object WS_MSG_TYPE_BINARY + +cdef set ALLOWED_CLOSE_CODES +cdef set MESSAGE_TYPES_WITH_CONTENT + +cdef tuple EMPTY_FRAME +cdef tuple EMPTY_FRAME_ERROR + +cdef class WebSocketDataQueue: + + cdef unsigned int _size + cdef public object _protocol + cdef unsigned int _limit + cdef object _loop + cdef bint _eof + cdef object _waiter + cdef object _exception + cdef public object _buffer + cdef object _get_buffer + cdef object _put_buffer + + cdef void _release_waiter(self) + + cpdef void feed_data(self, object data, unsigned int size) + + @cython.locals(size="unsigned int") + cdef _read_from_buffer(self) + +cdef class WebSocketReader: + + cdef WebSocketDataQueue queue + cdef unsigned int _max_msg_size + + cdef Exception _exc + cdef bytearray _partial + cdef unsigned int _state + + cdef int _opcode + cdef bint _frame_fin + cdef int _frame_opcode + cdef list _payload_fragments + cdef Py_ssize_t _frame_payload_len + + cdef bytes _tail + cdef bint _has_mask + cdef bytes _frame_mask + cdef Py_ssize_t _payload_bytes_to_read + cdef unsigned int _payload_len_flag + cdef int _compressed + cdef object _decompressobj + cdef bint _compress + + cpdef tuple feed_data(self, object data) + + @cython.locals( + is_continuation=bint, + fin=bint, + has_partial=bint, + payload_merged=bytes, + ) + cpdef void _handle_frame(self, bint fin, int opcode, object payload, int compressed) except * + + @cython.locals( + start_pos=Py_ssize_t, + data_len=Py_ssize_t, + length=Py_ssize_t, + chunk_size=Py_ssize_t, + chunk_len=Py_ssize_t, + data_len=Py_ssize_t, + data_cstr="const unsigned char *", + first_byte="unsigned char", + second_byte="unsigned char", + f_start_pos=Py_ssize_t, + f_end_pos=Py_ssize_t, + has_mask=bint, + fin=bint, + had_fragments=Py_ssize_t, + payload_bytearray=bytearray, + ) + cpdef void _feed_data(self, bytes data) except * diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.py b/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.py new file mode 100644 index 0000000..5166d7e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_c.py @@ -0,0 +1,478 @@ +"""Reader for WebSocket protocol versions 13 and 8.""" + +import asyncio +import builtins +from collections import deque +from typing import Deque, Final, Optional, Set, Tuple, Union + +from ..base_protocol import BaseProtocol +from ..compression_utils import ZLibDecompressor +from ..helpers import _EXC_SENTINEL, set_exception +from ..streams import EofStream +from .helpers import UNPACK_CLOSE_CODE, UNPACK_LEN3, websocket_mask +from .models import ( + WS_DEFLATE_TRAILING, + WebSocketError, + WSCloseCode, + WSMessage, + WSMsgType, +) + +ALLOWED_CLOSE_CODES: Final[Set[int]] = {int(i) for i in WSCloseCode} + +# States for the reader, used to parse the WebSocket frame +# integer values are used so they can be cythonized +READ_HEADER = 1 +READ_PAYLOAD_LENGTH = 2 +READ_PAYLOAD_MASK = 3 +READ_PAYLOAD = 4 + +WS_MSG_TYPE_BINARY = WSMsgType.BINARY +WS_MSG_TYPE_TEXT = WSMsgType.TEXT + +# WSMsgType values unpacked so they can by cythonized to ints +OP_CODE_NOT_SET = -1 +OP_CODE_CONTINUATION = WSMsgType.CONTINUATION.value +OP_CODE_TEXT = WSMsgType.TEXT.value +OP_CODE_BINARY = WSMsgType.BINARY.value +OP_CODE_CLOSE = WSMsgType.CLOSE.value +OP_CODE_PING = WSMsgType.PING.value +OP_CODE_PONG = WSMsgType.PONG.value + +EMPTY_FRAME_ERROR = (True, b"") +EMPTY_FRAME = (False, b"") + +COMPRESSED_NOT_SET = -1 +COMPRESSED_FALSE = 0 +COMPRESSED_TRUE = 1 + +TUPLE_NEW = tuple.__new__ + +cython_int = int # Typed to int in Python, but cython with use a signed int in the pxd + + +class WebSocketDataQueue: + """WebSocketDataQueue resumes and pauses an underlying stream. + + It is a destination for WebSocket data. + """ + + def __init__( + self, protocol: BaseProtocol, limit: int, *, loop: asyncio.AbstractEventLoop + ) -> None: + self._size = 0 + self._protocol = protocol + self._limit = limit * 2 + self._loop = loop + self._eof = False + self._waiter: Optional[asyncio.Future[None]] = None + self._exception: Union[BaseException, None] = None + self._buffer: Deque[Tuple[WSMessage, int]] = deque() + self._get_buffer = self._buffer.popleft + self._put_buffer = self._buffer.append + + def is_eof(self) -> bool: + return self._eof + + def exception(self) -> Optional[BaseException]: + return self._exception + + def set_exception( + self, + exc: BaseException, + exc_cause: builtins.BaseException = _EXC_SENTINEL, + ) -> None: + self._eof = True + self._exception = exc + if (waiter := self._waiter) is not None: + self._waiter = None + set_exception(waiter, exc, exc_cause) + + def _release_waiter(self) -> None: + if (waiter := self._waiter) is None: + return + self._waiter = None + if not waiter.done(): + waiter.set_result(None) + + def feed_eof(self) -> None: + self._eof = True + self._release_waiter() + self._exception = None # Break cyclic references + + def feed_data(self, data: "WSMessage", size: "cython_int") -> None: + self._size += size + self._put_buffer((data, size)) + self._release_waiter() + if self._size > self._limit and not self._protocol._reading_paused: + self._protocol.pause_reading() + + async def read(self) -> WSMessage: + if not self._buffer and not self._eof: + assert not self._waiter + self._waiter = self._loop.create_future() + try: + await self._waiter + except (asyncio.CancelledError, asyncio.TimeoutError): + self._waiter = None + raise + return self._read_from_buffer() + + def _read_from_buffer(self) -> WSMessage: + if self._buffer: + data, size = self._get_buffer() + self._size -= size + if self._size < self._limit and self._protocol._reading_paused: + self._protocol.resume_reading() + return data + if self._exception is not None: + raise self._exception + raise EofStream + + +class WebSocketReader: + def __init__( + self, queue: WebSocketDataQueue, max_msg_size: int, compress: bool = True + ) -> None: + self.queue = queue + self._max_msg_size = max_msg_size + + self._exc: Optional[Exception] = None + self._partial = bytearray() + self._state = READ_HEADER + + self._opcode: int = OP_CODE_NOT_SET + self._frame_fin = False + self._frame_opcode: int = OP_CODE_NOT_SET + self._payload_fragments: list[bytes] = [] + self._frame_payload_len = 0 + + self._tail: bytes = b"" + self._has_mask = False + self._frame_mask: Optional[bytes] = None + self._payload_bytes_to_read = 0 + self._payload_len_flag = 0 + self._compressed: int = COMPRESSED_NOT_SET + self._decompressobj: Optional[ZLibDecompressor] = None + self._compress = compress + + def feed_eof(self) -> None: + self.queue.feed_eof() + + # data can be bytearray on Windows because proactor event loop uses bytearray + # and asyncio types this to Union[bytes, bytearray, memoryview] so we need + # coerce data to bytes if it is not + def feed_data( + self, data: Union[bytes, bytearray, memoryview] + ) -> Tuple[bool, bytes]: + if type(data) is not bytes: + data = bytes(data) + + if self._exc is not None: + return True, data + + try: + self._feed_data(data) + except Exception as exc: + self._exc = exc + set_exception(self.queue, exc) + return EMPTY_FRAME_ERROR + + return EMPTY_FRAME + + def _handle_frame( + self, + fin: bool, + opcode: Union[int, cython_int], # Union intended: Cython pxd uses C int + payload: Union[bytes, bytearray], + compressed: Union[int, cython_int], # Union intended: Cython pxd uses C int + ) -> None: + msg: WSMessage + if opcode in {OP_CODE_TEXT, OP_CODE_BINARY, OP_CODE_CONTINUATION}: + # Validate continuation frames before processing + if opcode == OP_CODE_CONTINUATION and self._opcode == OP_CODE_NOT_SET: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Continuation frame for non started message", + ) + + # load text/binary + if not fin: + # got partial frame payload + if opcode != OP_CODE_CONTINUATION: + self._opcode = opcode + self._partial += payload + if self._max_msg_size and len(self._partial) >= self._max_msg_size: + raise WebSocketError( + WSCloseCode.MESSAGE_TOO_BIG, + f"Message size {len(self._partial)} " + f"exceeds limit {self._max_msg_size}", + ) + return + + has_partial = bool(self._partial) + if opcode == OP_CODE_CONTINUATION: + opcode = self._opcode + self._opcode = OP_CODE_NOT_SET + # previous frame was non finished + # we should get continuation opcode + elif has_partial: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "The opcode in non-fin frame is expected " + f"to be zero, got {opcode!r}", + ) + + assembled_payload: Union[bytes, bytearray] + if has_partial: + assembled_payload = self._partial + payload + self._partial.clear() + else: + assembled_payload = payload + + if self._max_msg_size and len(assembled_payload) >= self._max_msg_size: + raise WebSocketError( + WSCloseCode.MESSAGE_TOO_BIG, + f"Message size {len(assembled_payload)} " + f"exceeds limit {self._max_msg_size}", + ) + + # Decompress process must to be done after all packets + # received. + if compressed: + if not self._decompressobj: + self._decompressobj = ZLibDecompressor(suppress_deflate_header=True) + # XXX: It's possible that the zlib backend (isal is known to + # do this, maybe others too?) will return max_length bytes, + # but internally buffer more data such that the payload is + # >max_length, so we return one extra byte and if we're able + # to do that, then the message is too big. + payload_merged = self._decompressobj.decompress_sync( + assembled_payload + WS_DEFLATE_TRAILING, + ( + self._max_msg_size + 1 + if self._max_msg_size + else self._max_msg_size + ), + ) + if self._max_msg_size and len(payload_merged) > self._max_msg_size: + raise WebSocketError( + WSCloseCode.MESSAGE_TOO_BIG, + f"Decompressed message exceeds size limit {self._max_msg_size}", + ) + elif type(assembled_payload) is bytes: + payload_merged = assembled_payload + else: + payload_merged = bytes(assembled_payload) + + if opcode == OP_CODE_TEXT: + try: + text = payload_merged.decode("utf-8") + except UnicodeDecodeError as exc: + raise WebSocketError( + WSCloseCode.INVALID_TEXT, "Invalid UTF-8 text message" + ) from exc + + # XXX: The Text and Binary messages here can be a performance + # bottleneck, so we use tuple.__new__ to improve performance. + # This is not type safe, but many tests should fail in + # test_client_ws_functional.py if this is wrong. + self.queue.feed_data( + TUPLE_NEW(WSMessage, (WS_MSG_TYPE_TEXT, text, "")), + len(payload_merged), + ) + else: + self.queue.feed_data( + TUPLE_NEW(WSMessage, (WS_MSG_TYPE_BINARY, payload_merged, "")), + len(payload_merged), + ) + elif opcode == OP_CODE_CLOSE: + if len(payload) >= 2: + close_code = UNPACK_CLOSE_CODE(payload[:2])[0] + if close_code < 3000 and close_code not in ALLOWED_CLOSE_CODES: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + f"Invalid close code: {close_code}", + ) + try: + close_message = payload[2:].decode("utf-8") + except UnicodeDecodeError as exc: + raise WebSocketError( + WSCloseCode.INVALID_TEXT, "Invalid UTF-8 text message" + ) from exc + msg = TUPLE_NEW(WSMessage, (WSMsgType.CLOSE, close_code, close_message)) + elif payload: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + f"Invalid close frame: {fin} {opcode} {payload!r}", + ) + else: + msg = TUPLE_NEW(WSMessage, (WSMsgType.CLOSE, 0, "")) + + self.queue.feed_data(msg, 0) + elif opcode == OP_CODE_PING: + msg = TUPLE_NEW(WSMessage, (WSMsgType.PING, payload, "")) + self.queue.feed_data(msg, len(payload)) + elif opcode == OP_CODE_PONG: + msg = TUPLE_NEW(WSMessage, (WSMsgType.PONG, payload, "")) + self.queue.feed_data(msg, len(payload)) + else: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, f"Unexpected opcode={opcode!r}" + ) + + def _feed_data(self, data: bytes) -> None: + """Return the next frame from the socket.""" + if self._tail: + data, self._tail = self._tail + data, b"" + + start_pos: int = 0 + data_len = len(data) + data_cstr = data + + while True: + # read header + if self._state == READ_HEADER: + if data_len - start_pos < 2: + break + first_byte = data_cstr[start_pos] + second_byte = data_cstr[start_pos + 1] + start_pos += 2 + + fin = (first_byte >> 7) & 1 + rsv1 = (first_byte >> 6) & 1 + rsv2 = (first_byte >> 5) & 1 + rsv3 = (first_byte >> 4) & 1 + opcode = first_byte & 0xF + + # frame-fin = %x0 ; more frames of this message follow + # / %x1 ; final frame of this message + # frame-rsv1 = %x0 ; + # 1 bit, MUST be 0 unless negotiated otherwise + # frame-rsv2 = %x0 ; + # 1 bit, MUST be 0 unless negotiated otherwise + # frame-rsv3 = %x0 ; + # 1 bit, MUST be 0 unless negotiated otherwise + # + # Remove rsv1 from this test for deflate development + if rsv2 or rsv3 or (rsv1 and not self._compress): + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Received frame with non-zero reserved bits", + ) + + if opcode > 0x7 and fin == 0: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Received fragmented control frame", + ) + + has_mask = (second_byte >> 7) & 1 + length = second_byte & 0x7F + + # Control frames MUST have a payload + # length of 125 bytes or less + if opcode > 0x7 and length > 125: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Control frame payload cannot be larger than 125 bytes", + ) + + # Set compress status if last package is FIN + # OR set compress status if this is first fragment + # Raise error if not first fragment with rsv1 = 0x1 + if self._frame_fin or self._compressed == COMPRESSED_NOT_SET: + self._compressed = COMPRESSED_TRUE if rsv1 else COMPRESSED_FALSE + elif rsv1: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Received frame with non-zero reserved bits", + ) + + self._frame_fin = bool(fin) + self._frame_opcode = opcode + self._has_mask = bool(has_mask) + self._payload_len_flag = length + self._state = READ_PAYLOAD_LENGTH + + # read payload length + if self._state == READ_PAYLOAD_LENGTH: + len_flag = self._payload_len_flag + if len_flag == 126: + if data_len - start_pos < 2: + break + first_byte = data_cstr[start_pos] + second_byte = data_cstr[start_pos + 1] + start_pos += 2 + self._payload_bytes_to_read = first_byte << 8 | second_byte + elif len_flag > 126: + if data_len - start_pos < 8: + break + self._payload_bytes_to_read = UNPACK_LEN3(data, start_pos)[0] + start_pos += 8 + else: + self._payload_bytes_to_read = len_flag + + self._state = READ_PAYLOAD_MASK if self._has_mask else READ_PAYLOAD + + # read payload mask + if self._state == READ_PAYLOAD_MASK: + if data_len - start_pos < 4: + break + self._frame_mask = data_cstr[start_pos : start_pos + 4] + start_pos += 4 + self._state = READ_PAYLOAD + + if self._state == READ_PAYLOAD: + chunk_len = data_len - start_pos + if self._payload_bytes_to_read >= chunk_len: + f_end_pos = data_len + self._payload_bytes_to_read -= chunk_len + else: + f_end_pos = start_pos + self._payload_bytes_to_read + self._payload_bytes_to_read = 0 + + had_fragments = self._frame_payload_len + self._frame_payload_len += f_end_pos - start_pos + f_start_pos = start_pos + start_pos = f_end_pos + + if self._payload_bytes_to_read != 0: + # If we don't have a complete frame, we need to save the + # data for the next call to feed_data. + self._payload_fragments.append(data_cstr[f_start_pos:f_end_pos]) + break + + payload: Union[bytes, bytearray] + if had_fragments: + # We have to join the payload fragments get the payload + self._payload_fragments.append(data_cstr[f_start_pos:f_end_pos]) + if self._has_mask: + assert self._frame_mask is not None + payload_bytearray = bytearray(b"".join(self._payload_fragments)) + websocket_mask(self._frame_mask, payload_bytearray) + payload = payload_bytearray + else: + payload = b"".join(self._payload_fragments) + self._payload_fragments.clear() + elif self._has_mask: + assert self._frame_mask is not None + payload_bytearray = data_cstr[f_start_pos:f_end_pos] # type: ignore[assignment] + if type(payload_bytearray) is not bytearray: # pragma: no branch + # Cython will do the conversion for us + # but we need to do it for Python and we + # will always get here in Python + payload_bytearray = bytearray(payload_bytearray) + websocket_mask(self._frame_mask, payload_bytearray) + payload = payload_bytearray + else: + payload = data_cstr[f_start_pos:f_end_pos] + + self._handle_frame( + self._frame_fin, self._frame_opcode, payload, self._compressed + ) + self._frame_payload_len = 0 + self._state = READ_HEADER + + # XXX: Cython needs slices to be bounded, so we can't omit the slice end here. + self._tail = data_cstr[start_pos:data_len] if start_pos < data_len else b"" diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_py.py b/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_py.py new file mode 100644 index 0000000..5166d7e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/reader_py.py @@ -0,0 +1,478 @@ +"""Reader for WebSocket protocol versions 13 and 8.""" + +import asyncio +import builtins +from collections import deque +from typing import Deque, Final, Optional, Set, Tuple, Union + +from ..base_protocol import BaseProtocol +from ..compression_utils import ZLibDecompressor +from ..helpers import _EXC_SENTINEL, set_exception +from ..streams import EofStream +from .helpers import UNPACK_CLOSE_CODE, UNPACK_LEN3, websocket_mask +from .models import ( + WS_DEFLATE_TRAILING, + WebSocketError, + WSCloseCode, + WSMessage, + WSMsgType, +) + +ALLOWED_CLOSE_CODES: Final[Set[int]] = {int(i) for i in WSCloseCode} + +# States for the reader, used to parse the WebSocket frame +# integer values are used so they can be cythonized +READ_HEADER = 1 +READ_PAYLOAD_LENGTH = 2 +READ_PAYLOAD_MASK = 3 +READ_PAYLOAD = 4 + +WS_MSG_TYPE_BINARY = WSMsgType.BINARY +WS_MSG_TYPE_TEXT = WSMsgType.TEXT + +# WSMsgType values unpacked so they can by cythonized to ints +OP_CODE_NOT_SET = -1 +OP_CODE_CONTINUATION = WSMsgType.CONTINUATION.value +OP_CODE_TEXT = WSMsgType.TEXT.value +OP_CODE_BINARY = WSMsgType.BINARY.value +OP_CODE_CLOSE = WSMsgType.CLOSE.value +OP_CODE_PING = WSMsgType.PING.value +OP_CODE_PONG = WSMsgType.PONG.value + +EMPTY_FRAME_ERROR = (True, b"") +EMPTY_FRAME = (False, b"") + +COMPRESSED_NOT_SET = -1 +COMPRESSED_FALSE = 0 +COMPRESSED_TRUE = 1 + +TUPLE_NEW = tuple.__new__ + +cython_int = int # Typed to int in Python, but cython with use a signed int in the pxd + + +class WebSocketDataQueue: + """WebSocketDataQueue resumes and pauses an underlying stream. + + It is a destination for WebSocket data. + """ + + def __init__( + self, protocol: BaseProtocol, limit: int, *, loop: asyncio.AbstractEventLoop + ) -> None: + self._size = 0 + self._protocol = protocol + self._limit = limit * 2 + self._loop = loop + self._eof = False + self._waiter: Optional[asyncio.Future[None]] = None + self._exception: Union[BaseException, None] = None + self._buffer: Deque[Tuple[WSMessage, int]] = deque() + self._get_buffer = self._buffer.popleft + self._put_buffer = self._buffer.append + + def is_eof(self) -> bool: + return self._eof + + def exception(self) -> Optional[BaseException]: + return self._exception + + def set_exception( + self, + exc: BaseException, + exc_cause: builtins.BaseException = _EXC_SENTINEL, + ) -> None: + self._eof = True + self._exception = exc + if (waiter := self._waiter) is not None: + self._waiter = None + set_exception(waiter, exc, exc_cause) + + def _release_waiter(self) -> None: + if (waiter := self._waiter) is None: + return + self._waiter = None + if not waiter.done(): + waiter.set_result(None) + + def feed_eof(self) -> None: + self._eof = True + self._release_waiter() + self._exception = None # Break cyclic references + + def feed_data(self, data: "WSMessage", size: "cython_int") -> None: + self._size += size + self._put_buffer((data, size)) + self._release_waiter() + if self._size > self._limit and not self._protocol._reading_paused: + self._protocol.pause_reading() + + async def read(self) -> WSMessage: + if not self._buffer and not self._eof: + assert not self._waiter + self._waiter = self._loop.create_future() + try: + await self._waiter + except (asyncio.CancelledError, asyncio.TimeoutError): + self._waiter = None + raise + return self._read_from_buffer() + + def _read_from_buffer(self) -> WSMessage: + if self._buffer: + data, size = self._get_buffer() + self._size -= size + if self._size < self._limit and self._protocol._reading_paused: + self._protocol.resume_reading() + return data + if self._exception is not None: + raise self._exception + raise EofStream + + +class WebSocketReader: + def __init__( + self, queue: WebSocketDataQueue, max_msg_size: int, compress: bool = True + ) -> None: + self.queue = queue + self._max_msg_size = max_msg_size + + self._exc: Optional[Exception] = None + self._partial = bytearray() + self._state = READ_HEADER + + self._opcode: int = OP_CODE_NOT_SET + self._frame_fin = False + self._frame_opcode: int = OP_CODE_NOT_SET + self._payload_fragments: list[bytes] = [] + self._frame_payload_len = 0 + + self._tail: bytes = b"" + self._has_mask = False + self._frame_mask: Optional[bytes] = None + self._payload_bytes_to_read = 0 + self._payload_len_flag = 0 + self._compressed: int = COMPRESSED_NOT_SET + self._decompressobj: Optional[ZLibDecompressor] = None + self._compress = compress + + def feed_eof(self) -> None: + self.queue.feed_eof() + + # data can be bytearray on Windows because proactor event loop uses bytearray + # and asyncio types this to Union[bytes, bytearray, memoryview] so we need + # coerce data to bytes if it is not + def feed_data( + self, data: Union[bytes, bytearray, memoryview] + ) -> Tuple[bool, bytes]: + if type(data) is not bytes: + data = bytes(data) + + if self._exc is not None: + return True, data + + try: + self._feed_data(data) + except Exception as exc: + self._exc = exc + set_exception(self.queue, exc) + return EMPTY_FRAME_ERROR + + return EMPTY_FRAME + + def _handle_frame( + self, + fin: bool, + opcode: Union[int, cython_int], # Union intended: Cython pxd uses C int + payload: Union[bytes, bytearray], + compressed: Union[int, cython_int], # Union intended: Cython pxd uses C int + ) -> None: + msg: WSMessage + if opcode in {OP_CODE_TEXT, OP_CODE_BINARY, OP_CODE_CONTINUATION}: + # Validate continuation frames before processing + if opcode == OP_CODE_CONTINUATION and self._opcode == OP_CODE_NOT_SET: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Continuation frame for non started message", + ) + + # load text/binary + if not fin: + # got partial frame payload + if opcode != OP_CODE_CONTINUATION: + self._opcode = opcode + self._partial += payload + if self._max_msg_size and len(self._partial) >= self._max_msg_size: + raise WebSocketError( + WSCloseCode.MESSAGE_TOO_BIG, + f"Message size {len(self._partial)} " + f"exceeds limit {self._max_msg_size}", + ) + return + + has_partial = bool(self._partial) + if opcode == OP_CODE_CONTINUATION: + opcode = self._opcode + self._opcode = OP_CODE_NOT_SET + # previous frame was non finished + # we should get continuation opcode + elif has_partial: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "The opcode in non-fin frame is expected " + f"to be zero, got {opcode!r}", + ) + + assembled_payload: Union[bytes, bytearray] + if has_partial: + assembled_payload = self._partial + payload + self._partial.clear() + else: + assembled_payload = payload + + if self._max_msg_size and len(assembled_payload) >= self._max_msg_size: + raise WebSocketError( + WSCloseCode.MESSAGE_TOO_BIG, + f"Message size {len(assembled_payload)} " + f"exceeds limit {self._max_msg_size}", + ) + + # Decompress process must to be done after all packets + # received. + if compressed: + if not self._decompressobj: + self._decompressobj = ZLibDecompressor(suppress_deflate_header=True) + # XXX: It's possible that the zlib backend (isal is known to + # do this, maybe others too?) will return max_length bytes, + # but internally buffer more data such that the payload is + # >max_length, so we return one extra byte and if we're able + # to do that, then the message is too big. + payload_merged = self._decompressobj.decompress_sync( + assembled_payload + WS_DEFLATE_TRAILING, + ( + self._max_msg_size + 1 + if self._max_msg_size + else self._max_msg_size + ), + ) + if self._max_msg_size and len(payload_merged) > self._max_msg_size: + raise WebSocketError( + WSCloseCode.MESSAGE_TOO_BIG, + f"Decompressed message exceeds size limit {self._max_msg_size}", + ) + elif type(assembled_payload) is bytes: + payload_merged = assembled_payload + else: + payload_merged = bytes(assembled_payload) + + if opcode == OP_CODE_TEXT: + try: + text = payload_merged.decode("utf-8") + except UnicodeDecodeError as exc: + raise WebSocketError( + WSCloseCode.INVALID_TEXT, "Invalid UTF-8 text message" + ) from exc + + # XXX: The Text and Binary messages here can be a performance + # bottleneck, so we use tuple.__new__ to improve performance. + # This is not type safe, but many tests should fail in + # test_client_ws_functional.py if this is wrong. + self.queue.feed_data( + TUPLE_NEW(WSMessage, (WS_MSG_TYPE_TEXT, text, "")), + len(payload_merged), + ) + else: + self.queue.feed_data( + TUPLE_NEW(WSMessage, (WS_MSG_TYPE_BINARY, payload_merged, "")), + len(payload_merged), + ) + elif opcode == OP_CODE_CLOSE: + if len(payload) >= 2: + close_code = UNPACK_CLOSE_CODE(payload[:2])[0] + if close_code < 3000 and close_code not in ALLOWED_CLOSE_CODES: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + f"Invalid close code: {close_code}", + ) + try: + close_message = payload[2:].decode("utf-8") + except UnicodeDecodeError as exc: + raise WebSocketError( + WSCloseCode.INVALID_TEXT, "Invalid UTF-8 text message" + ) from exc + msg = TUPLE_NEW(WSMessage, (WSMsgType.CLOSE, close_code, close_message)) + elif payload: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + f"Invalid close frame: {fin} {opcode} {payload!r}", + ) + else: + msg = TUPLE_NEW(WSMessage, (WSMsgType.CLOSE, 0, "")) + + self.queue.feed_data(msg, 0) + elif opcode == OP_CODE_PING: + msg = TUPLE_NEW(WSMessage, (WSMsgType.PING, payload, "")) + self.queue.feed_data(msg, len(payload)) + elif opcode == OP_CODE_PONG: + msg = TUPLE_NEW(WSMessage, (WSMsgType.PONG, payload, "")) + self.queue.feed_data(msg, len(payload)) + else: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, f"Unexpected opcode={opcode!r}" + ) + + def _feed_data(self, data: bytes) -> None: + """Return the next frame from the socket.""" + if self._tail: + data, self._tail = self._tail + data, b"" + + start_pos: int = 0 + data_len = len(data) + data_cstr = data + + while True: + # read header + if self._state == READ_HEADER: + if data_len - start_pos < 2: + break + first_byte = data_cstr[start_pos] + second_byte = data_cstr[start_pos + 1] + start_pos += 2 + + fin = (first_byte >> 7) & 1 + rsv1 = (first_byte >> 6) & 1 + rsv2 = (first_byte >> 5) & 1 + rsv3 = (first_byte >> 4) & 1 + opcode = first_byte & 0xF + + # frame-fin = %x0 ; more frames of this message follow + # / %x1 ; final frame of this message + # frame-rsv1 = %x0 ; + # 1 bit, MUST be 0 unless negotiated otherwise + # frame-rsv2 = %x0 ; + # 1 bit, MUST be 0 unless negotiated otherwise + # frame-rsv3 = %x0 ; + # 1 bit, MUST be 0 unless negotiated otherwise + # + # Remove rsv1 from this test for deflate development + if rsv2 or rsv3 or (rsv1 and not self._compress): + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Received frame with non-zero reserved bits", + ) + + if opcode > 0x7 and fin == 0: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Received fragmented control frame", + ) + + has_mask = (second_byte >> 7) & 1 + length = second_byte & 0x7F + + # Control frames MUST have a payload + # length of 125 bytes or less + if opcode > 0x7 and length > 125: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Control frame payload cannot be larger than 125 bytes", + ) + + # Set compress status if last package is FIN + # OR set compress status if this is first fragment + # Raise error if not first fragment with rsv1 = 0x1 + if self._frame_fin or self._compressed == COMPRESSED_NOT_SET: + self._compressed = COMPRESSED_TRUE if rsv1 else COMPRESSED_FALSE + elif rsv1: + raise WebSocketError( + WSCloseCode.PROTOCOL_ERROR, + "Received frame with non-zero reserved bits", + ) + + self._frame_fin = bool(fin) + self._frame_opcode = opcode + self._has_mask = bool(has_mask) + self._payload_len_flag = length + self._state = READ_PAYLOAD_LENGTH + + # read payload length + if self._state == READ_PAYLOAD_LENGTH: + len_flag = self._payload_len_flag + if len_flag == 126: + if data_len - start_pos < 2: + break + first_byte = data_cstr[start_pos] + second_byte = data_cstr[start_pos + 1] + start_pos += 2 + self._payload_bytes_to_read = first_byte << 8 | second_byte + elif len_flag > 126: + if data_len - start_pos < 8: + break + self._payload_bytes_to_read = UNPACK_LEN3(data, start_pos)[0] + start_pos += 8 + else: + self._payload_bytes_to_read = len_flag + + self._state = READ_PAYLOAD_MASK if self._has_mask else READ_PAYLOAD + + # read payload mask + if self._state == READ_PAYLOAD_MASK: + if data_len - start_pos < 4: + break + self._frame_mask = data_cstr[start_pos : start_pos + 4] + start_pos += 4 + self._state = READ_PAYLOAD + + if self._state == READ_PAYLOAD: + chunk_len = data_len - start_pos + if self._payload_bytes_to_read >= chunk_len: + f_end_pos = data_len + self._payload_bytes_to_read -= chunk_len + else: + f_end_pos = start_pos + self._payload_bytes_to_read + self._payload_bytes_to_read = 0 + + had_fragments = self._frame_payload_len + self._frame_payload_len += f_end_pos - start_pos + f_start_pos = start_pos + start_pos = f_end_pos + + if self._payload_bytes_to_read != 0: + # If we don't have a complete frame, we need to save the + # data for the next call to feed_data. + self._payload_fragments.append(data_cstr[f_start_pos:f_end_pos]) + break + + payload: Union[bytes, bytearray] + if had_fragments: + # We have to join the payload fragments get the payload + self._payload_fragments.append(data_cstr[f_start_pos:f_end_pos]) + if self._has_mask: + assert self._frame_mask is not None + payload_bytearray = bytearray(b"".join(self._payload_fragments)) + websocket_mask(self._frame_mask, payload_bytearray) + payload = payload_bytearray + else: + payload = b"".join(self._payload_fragments) + self._payload_fragments.clear() + elif self._has_mask: + assert self._frame_mask is not None + payload_bytearray = data_cstr[f_start_pos:f_end_pos] # type: ignore[assignment] + if type(payload_bytearray) is not bytearray: # pragma: no branch + # Cython will do the conversion for us + # but we need to do it for Python and we + # will always get here in Python + payload_bytearray = bytearray(payload_bytearray) + websocket_mask(self._frame_mask, payload_bytearray) + payload = payload_bytearray + else: + payload = data_cstr[f_start_pos:f_end_pos] + + self._handle_frame( + self._frame_fin, self._frame_opcode, payload, self._compressed + ) + self._frame_payload_len = 0 + self._state = READ_HEADER + + # XXX: Cython needs slices to be bounded, so we can't omit the slice end here. + self._tail = data_cstr[start_pos:data_len] if start_pos < data_len else b"" diff --git a/venv/lib/python3.9/site-packages/aiohttp/_websocket/writer.py b/venv/lib/python3.9/site-packages/aiohttp/_websocket/writer.py new file mode 100644 index 0000000..9604202 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/_websocket/writer.py @@ -0,0 +1,262 @@ +"""WebSocket protocol versions 13 and 8.""" + +import asyncio +import random +import sys +from functools import partial +from typing import Final, Optional, Set, Union + +from ..base_protocol import BaseProtocol +from ..client_exceptions import ClientConnectionResetError +from ..compression_utils import ZLibBackend, ZLibCompressor +from .helpers import ( + MASK_LEN, + MSG_SIZE, + PACK_CLOSE_CODE, + PACK_LEN1, + PACK_LEN2, + PACK_LEN3, + PACK_RANDBITS, + websocket_mask, +) +from .models import WS_DEFLATE_TRAILING, WSMsgType + +DEFAULT_LIMIT: Final[int] = 2**16 + +# WebSocket opcode boundary: opcodes 0-7 are data frames, 8-15 are control frames +# Control frames (ping, pong, close) are never compressed +WS_CONTROL_FRAME_OPCODE: Final[int] = 8 + +# For websockets, keeping latency low is extremely important as implementations +# generally expect to be able to send and receive messages quickly. We use a +# larger chunk size to reduce the number of executor calls and avoid task +# creation overhead, since both are significant sources of latency when chunks +# are small. A size of 16KiB was chosen as a balance between avoiding task +# overhead and not blocking the event loop too long with synchronous compression. + +WEBSOCKET_MAX_SYNC_CHUNK_SIZE = 16 * 1024 + + +class WebSocketWriter: + """WebSocket writer. + + The writer is responsible for sending messages to the client. It is + created by the protocol when a connection is established. The writer + should avoid implementing any application logic and should only be + concerned with the low-level details of the WebSocket protocol. + """ + + def __init__( + self, + protocol: BaseProtocol, + transport: asyncio.Transport, + *, + use_mask: bool = False, + limit: int = DEFAULT_LIMIT, + random: random.Random = random.Random(), + compress: int = 0, + notakeover: bool = False, + ) -> None: + """Initialize a WebSocket writer.""" + self.protocol = protocol + self.transport = transport + self.use_mask = use_mask + self.get_random_bits = partial(random.getrandbits, 32) + self.compress = compress + self.notakeover = notakeover + self._closing = False + self._limit = limit + self._output_size = 0 + self._compressobj: Optional[ZLibCompressor] = None + self._send_lock = asyncio.Lock() + self._background_tasks: Set[asyncio.Task[None]] = set() + + async def send_frame( + self, message: bytes, opcode: int, compress: Optional[int] = None + ) -> None: + """Send a frame over the websocket with message as its payload.""" + if self._closing and not (opcode & WSMsgType.CLOSE): + raise ClientConnectionResetError("Cannot write to closing transport") + + if not (compress or self.compress) or opcode >= WS_CONTROL_FRAME_OPCODE: + # Non-compressed frames don't need lock or shield + self._write_websocket_frame(message, opcode, 0) + elif len(message) <= WEBSOCKET_MAX_SYNC_CHUNK_SIZE: + # Small compressed payloads - compress synchronously in event loop + # We need the lock even though sync compression has no await points. + # This prevents small frames from interleaving with large frames that + # compress in the executor, avoiding compressor state corruption. + async with self._send_lock: + self._send_compressed_frame_sync(message, opcode, compress) + else: + # Large compressed frames need shield to prevent corruption + # For large compressed frames, the entire compress+send + # operation must be atomic. If cancelled after compression but + # before send, the compressor state would be advanced but data + # not sent, corrupting subsequent frames. + # Create a task to shield from cancellation + # The lock is acquired inside the shielded task so the entire + # operation (lock + compress + send) completes atomically. + # Use eager_start on Python 3.12+ to avoid scheduling overhead + loop = asyncio.get_running_loop() + coro = self._send_compressed_frame_async_locked(message, opcode, compress) + if sys.version_info >= (3, 12): + send_task = asyncio.Task(coro, loop=loop, eager_start=True) + else: + send_task = loop.create_task(coro) + # Keep a strong reference to prevent garbage collection + self._background_tasks.add(send_task) + send_task.add_done_callback(self._background_tasks.discard) + await asyncio.shield(send_task) + + # It is safe to return control to the event loop when using compression + # after this point as we have already sent or buffered all the data. + # Once we have written output_size up to the limit, we call the + # drain helper which waits for the transport to be ready to accept + # more data. This is a flow control mechanism to prevent the buffer + # from growing too large. The drain helper will return right away + # if the writer is not paused. + if self._output_size > self._limit: + self._output_size = 0 + if self.protocol._paused: + await self.protocol._drain_helper() + + def _write_websocket_frame(self, message: bytes, opcode: int, rsv: int) -> None: + """ + Write a websocket frame to the transport. + + This method handles frame header construction, masking, and writing to transport. + It does not handle compression or flow control - those are the responsibility + of the caller. + """ + msg_length = len(message) + + use_mask = self.use_mask + mask_bit = 0x80 if use_mask else 0 + + # Depending on the message length, the header is assembled differently. + # The first byte is reserved for the opcode and the RSV bits. + first_byte = 0x80 | rsv | opcode + if msg_length < 126: + header = PACK_LEN1(first_byte, msg_length | mask_bit) + header_len = 2 + elif msg_length < 65536: + header = PACK_LEN2(first_byte, 126 | mask_bit, msg_length) + header_len = 4 + else: + header = PACK_LEN3(first_byte, 127 | mask_bit, msg_length) + header_len = 10 + + if self.transport.is_closing(): + raise ClientConnectionResetError("Cannot write to closing transport") + + # https://datatracker.ietf.org/doc/html/rfc6455#section-5.3 + # If we are using a mask, we need to generate it randomly + # and apply it to the message before sending it. A mask is + # a 32-bit value that is applied to the message using a + # bitwise XOR operation. It is used to prevent certain types + # of attacks on the websocket protocol. The mask is only used + # when aiohttp is acting as a client. Servers do not use a mask. + if use_mask: + mask = PACK_RANDBITS(self.get_random_bits()) + message = bytearray(message) + websocket_mask(mask, message) + self.transport.write(header + mask + message) + self._output_size += MASK_LEN + elif msg_length > MSG_SIZE: + self.transport.write(header) + self.transport.write(message) + else: + self.transport.write(header + message) + + self._output_size += header_len + msg_length + + def _get_compressor(self, compress: Optional[int]) -> ZLibCompressor: + """Get or create a compressor object for the given compression level.""" + if compress: + # Do not set self._compress if compressing is for this frame + return ZLibCompressor( + level=ZLibBackend.Z_BEST_SPEED, + wbits=-compress, + max_sync_chunk_size=WEBSOCKET_MAX_SYNC_CHUNK_SIZE, + ) + if not self._compressobj: + self._compressobj = ZLibCompressor( + level=ZLibBackend.Z_BEST_SPEED, + wbits=-self.compress, + max_sync_chunk_size=WEBSOCKET_MAX_SYNC_CHUNK_SIZE, + ) + return self._compressobj + + def _send_compressed_frame_sync( + self, message: bytes, opcode: int, compress: Optional[int] + ) -> None: + """ + Synchronous send for small compressed frames. + + This is used for small compressed payloads that compress synchronously in the event loop. + Since there are no await points, this is inherently cancellation-safe. + """ + # RSV are the reserved bits in the frame header. They are used to + # indicate that the frame is using an extension. + # https://datatracker.ietf.org/doc/html/rfc6455#section-5.2 + compressobj = self._get_compressor(compress) + # (0x40) RSV1 is set for compressed frames + # https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.3.1 + self._write_websocket_frame( + ( + compressobj.compress_sync(message) + + compressobj.flush( + ZLibBackend.Z_FULL_FLUSH + if self.notakeover + else ZLibBackend.Z_SYNC_FLUSH + ) + ).removesuffix(WS_DEFLATE_TRAILING), + opcode, + 0x40, + ) + + async def _send_compressed_frame_async_locked( + self, message: bytes, opcode: int, compress: Optional[int] + ) -> None: + """ + Async send for large compressed frames with lock. + + Acquires the lock and compresses large payloads asynchronously in + the executor. The lock is held for the entire operation to ensure + the compressor state is not corrupted by concurrent sends. + + MUST be run shielded from cancellation. If cancelled after + compression but before sending, the compressor state would be + advanced but data not sent, corrupting subsequent frames. + """ + async with self._send_lock: + # RSV are the reserved bits in the frame header. They are used to + # indicate that the frame is using an extension. + # https://datatracker.ietf.org/doc/html/rfc6455#section-5.2 + compressobj = self._get_compressor(compress) + # (0x40) RSV1 is set for compressed frames + # https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.3.1 + self._write_websocket_frame( + ( + await compressobj.compress(message) + + compressobj.flush( + ZLibBackend.Z_FULL_FLUSH + if self.notakeover + else ZLibBackend.Z_SYNC_FLUSH + ) + ).removesuffix(WS_DEFLATE_TRAILING), + opcode, + 0x40, + ) + + async def close(self, code: int = 1000, message: Union[bytes, str] = b"") -> None: + """Close the websocket, sending the specified code and message.""" + if isinstance(message, str): + message = message.encode("utf-8") + try: + await self.send_frame( + PACK_CLOSE_CODE(code) + message, opcode=WSMsgType.CLOSE + ) + finally: + self._closing = True diff --git a/venv/lib/python3.9/site-packages/aiohttp/abc.py b/venv/lib/python3.9/site-packages/aiohttp/abc.py new file mode 100644 index 0000000..faf0957 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/abc.py @@ -0,0 +1,268 @@ +import asyncio +import logging +import socket +from abc import ABC, abstractmethod +from collections.abc import Sized +from http.cookies import BaseCookie, Morsel +from typing import ( + TYPE_CHECKING, + Any, + Awaitable, + Callable, + Dict, + Generator, + Iterable, + List, + Optional, + Sequence, + Tuple, + TypedDict, + Union, +) + +from multidict import CIMultiDict +from yarl import URL + +from ._cookie_helpers import parse_set_cookie_headers +from .typedefs import LooseCookies + +if TYPE_CHECKING: + from .web_app import Application + from .web_exceptions import HTTPException + from .web_request import BaseRequest, Request + from .web_response import StreamResponse +else: + BaseRequest = Request = Application = StreamResponse = None + HTTPException = None + + +class AbstractRouter(ABC): + def __init__(self) -> None: + self._frozen = False + + def post_init(self, app: Application) -> None: + """Post init stage. + + Not an abstract method for sake of backward compatibility, + but if the router wants to be aware of the application + it can override this. + """ + + @property + def frozen(self) -> bool: + return self._frozen + + def freeze(self) -> None: + """Freeze router.""" + self._frozen = True + + @abstractmethod + async def resolve(self, request: Request) -> "AbstractMatchInfo": + """Return MATCH_INFO for given request""" + + +class AbstractMatchInfo(ABC): + + __slots__ = () + + @property # pragma: no branch + @abstractmethod + def handler(self) -> Callable[[Request], Awaitable[StreamResponse]]: + """Execute matched request handler""" + + @property + @abstractmethod + def expect_handler( + self, + ) -> Callable[[Request], Awaitable[Optional[StreamResponse]]]: + """Expect handler for 100-continue processing""" + + @property # pragma: no branch + @abstractmethod + def http_exception(self) -> Optional[HTTPException]: + """HTTPException instance raised on router's resolving, or None""" + + @abstractmethod # pragma: no branch + def get_info(self) -> Dict[str, Any]: + """Return a dict with additional info useful for introspection""" + + @property # pragma: no branch + @abstractmethod + def apps(self) -> Tuple[Application, ...]: + """Stack of nested applications. + + Top level application is left-most element. + + """ + + @abstractmethod + def add_app(self, app: Application) -> None: + """Add application to the nested apps stack.""" + + @abstractmethod + def freeze(self) -> None: + """Freeze the match info. + + The method is called after route resolution. + + After the call .add_app() is forbidden. + + """ + + +class AbstractView(ABC): + """Abstract class based view.""" + + def __init__(self, request: Request) -> None: + self._request = request + + @property + def request(self) -> Request: + """Request instance.""" + return self._request + + @abstractmethod + def __await__(self) -> Generator[None, None, StreamResponse]: + """Execute the view handler.""" + + +class ResolveResult(TypedDict): + """Resolve result. + + This is the result returned from an AbstractResolver's + resolve method. + + :param hostname: The hostname that was provided. + :param host: The IP address that was resolved. + :param port: The port that was resolved. + :param family: The address family that was resolved. + :param proto: The protocol that was resolved. + :param flags: The flags that were resolved. + """ + + hostname: str + host: str + port: int + family: int + proto: int + flags: int + + +class AbstractResolver(ABC): + """Abstract DNS resolver.""" + + @abstractmethod + async def resolve( + self, host: str, port: int = 0, family: socket.AddressFamily = socket.AF_INET + ) -> List[ResolveResult]: + """Return IP address for given hostname""" + + @abstractmethod + async def close(self) -> None: + """Release resolver""" + + +if TYPE_CHECKING: + IterableBase = Iterable[Morsel[str]] +else: + IterableBase = Iterable + + +ClearCookiePredicate = Callable[["Morsel[str]"], bool] + + +class AbstractCookieJar(Sized, IterableBase): + """Abstract Cookie Jar.""" + + def __init__(self, *, loop: Optional[asyncio.AbstractEventLoop] = None) -> None: + self._loop = loop or asyncio.get_running_loop() + + @property + @abstractmethod + def quote_cookie(self) -> bool: + """Return True if cookies should be quoted.""" + + @abstractmethod + def clear(self, predicate: Optional[ClearCookiePredicate] = None) -> None: + """Clear all cookies if no predicate is passed.""" + + @abstractmethod + def clear_domain(self, domain: str) -> None: + """Clear all cookies for domain and all subdomains.""" + + @abstractmethod + def update_cookies(self, cookies: LooseCookies, response_url: URL = URL()) -> None: + """Update cookies.""" + + def update_cookies_from_headers( + self, headers: Sequence[str], response_url: URL + ) -> None: + """Update cookies from raw Set-Cookie headers.""" + if headers and (cookies_to_update := parse_set_cookie_headers(headers)): + self.update_cookies(cookies_to_update, response_url) + + @abstractmethod + def filter_cookies(self, request_url: URL) -> "BaseCookie[str]": + """Return the jar's cookies filtered by their attributes.""" + + +class AbstractStreamWriter(ABC): + """Abstract stream writer.""" + + buffer_size: int = 0 + output_size: int = 0 + length: Optional[int] = 0 + + @abstractmethod + async def write(self, chunk: Union[bytes, bytearray, memoryview]) -> None: + """Write chunk into stream.""" + + @abstractmethod + async def write_eof(self, chunk: bytes = b"") -> None: + """Write last chunk.""" + + @abstractmethod + async def drain(self) -> None: + """Flush the write buffer.""" + + @abstractmethod + def enable_compression( + self, encoding: str = "deflate", strategy: Optional[int] = None + ) -> None: + """Enable HTTP body compression""" + + @abstractmethod + def enable_chunking(self) -> None: + """Enable HTTP chunked mode""" + + @abstractmethod + async def write_headers( + self, status_line: str, headers: "CIMultiDict[str]" + ) -> None: + """Write HTTP headers""" + + def send_headers(self) -> None: + """Force sending buffered headers if not already sent. + + Required only if write_headers() buffers headers instead of sending immediately. + For backwards compatibility, this method does nothing by default. + """ + + +class AbstractAccessLogger(ABC): + """Abstract writer to access log.""" + + __slots__ = ("logger", "log_format") + + def __init__(self, logger: logging.Logger, log_format: str) -> None: + self.logger = logger + self.log_format = log_format + + @abstractmethod + def log(self, request: BaseRequest, response: StreamResponse, time: float) -> None: + """Emit log to logger.""" + + @property + def enabled(self) -> bool: + """Check if logger is enabled.""" + return True diff --git a/venv/lib/python3.9/site-packages/aiohttp/base_protocol.py b/venv/lib/python3.9/site-packages/aiohttp/base_protocol.py new file mode 100644 index 0000000..b0a67ed --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/base_protocol.py @@ -0,0 +1,100 @@ +import asyncio +from typing import Optional, cast + +from .client_exceptions import ClientConnectionResetError +from .helpers import set_exception +from .tcp_helpers import tcp_nodelay + + +class BaseProtocol(asyncio.Protocol): + __slots__ = ( + "_loop", + "_paused", + "_drain_waiter", + "_connection_lost", + "_reading_paused", + "transport", + ) + + def __init__(self, loop: asyncio.AbstractEventLoop) -> None: + self._loop: asyncio.AbstractEventLoop = loop + self._paused = False + self._drain_waiter: Optional[asyncio.Future[None]] = None + self._reading_paused = False + + self.transport: Optional[asyncio.Transport] = None + + @property + def connected(self) -> bool: + """Return True if the connection is open.""" + return self.transport is not None + + @property + def writing_paused(self) -> bool: + return self._paused + + def pause_writing(self) -> None: + assert not self._paused + self._paused = True + + def resume_writing(self) -> None: + assert self._paused + self._paused = False + + waiter = self._drain_waiter + if waiter is not None: + self._drain_waiter = None + if not waiter.done(): + waiter.set_result(None) + + def pause_reading(self) -> None: + if not self._reading_paused and self.transport is not None: + try: + self.transport.pause_reading() + except (AttributeError, NotImplementedError, RuntimeError): + pass + self._reading_paused = True + + def resume_reading(self) -> None: + if self._reading_paused and self.transport is not None: + try: + self.transport.resume_reading() + except (AttributeError, NotImplementedError, RuntimeError): + pass + self._reading_paused = False + + def connection_made(self, transport: asyncio.BaseTransport) -> None: + tr = cast(asyncio.Transport, transport) + tcp_nodelay(tr, True) + self.transport = tr + + def connection_lost(self, exc: Optional[BaseException]) -> None: + # Wake up the writer if currently paused. + self.transport = None + if not self._paused: + return + waiter = self._drain_waiter + if waiter is None: + return + self._drain_waiter = None + if waiter.done(): + return + if exc is None: + waiter.set_result(None) + else: + set_exception( + waiter, + ConnectionError("Connection lost"), + exc, + ) + + async def _drain_helper(self) -> None: + if self.transport is None: + raise ClientConnectionResetError("Connection lost") + if not self._paused: + return + waiter = self._drain_waiter + if waiter is None: + waiter = self._loop.create_future() + self._drain_waiter = waiter + await asyncio.shield(waiter) diff --git a/venv/lib/python3.9/site-packages/aiohttp/client.py b/venv/lib/python3.9/site-packages/aiohttp/client.py new file mode 100644 index 0000000..5d10d3e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/client.py @@ -0,0 +1,1646 @@ +"""HTTP Client for asyncio.""" + +import asyncio +import base64 +import hashlib +import json +import os +import sys +import traceback +import warnings +from contextlib import suppress +from types import TracebackType +from typing import ( + TYPE_CHECKING, + Any, + Awaitable, + Callable, + Coroutine, + Final, + FrozenSet, + Generator, + Generic, + Iterable, + List, + Mapping, + Optional, + Sequence, + Set, + Tuple, + Type, + TypedDict, + TypeVar, + Union, +) + +import attr +from multidict import CIMultiDict, MultiDict, MultiDictProxy, istr +from yarl import URL + +from . import hdrs, http, payload +from ._websocket.reader import WebSocketDataQueue +from .abc import AbstractCookieJar +from .client_exceptions import ( + ClientConnectionError, + ClientConnectionResetError, + ClientConnectorCertificateError, + ClientConnectorDNSError, + ClientConnectorError, + ClientConnectorSSLError, + ClientError, + ClientHttpProxyError, + ClientOSError, + ClientPayloadError, + ClientProxyConnectionError, + ClientResponseError, + ClientSSLError, + ConnectionTimeoutError, + ContentTypeError, + InvalidURL, + InvalidUrlClientError, + InvalidUrlRedirectClientError, + NonHttpUrlClientError, + NonHttpUrlRedirectClientError, + RedirectClientError, + ServerConnectionError, + ServerDisconnectedError, + ServerFingerprintMismatch, + ServerTimeoutError, + SocketTimeoutError, + TooManyRedirects, + WSMessageTypeError, + WSServerHandshakeError, +) +from .client_middlewares import ClientMiddlewareType, build_client_middlewares +from .client_reqrep import ( + ClientRequest as ClientRequest, + ClientResponse as ClientResponse, + Fingerprint as Fingerprint, + RequestInfo as RequestInfo, + _merge_ssl_params, +) +from .client_ws import ( + DEFAULT_WS_CLIENT_TIMEOUT, + ClientWebSocketResponse as ClientWebSocketResponse, + ClientWSTimeout as ClientWSTimeout, +) +from .connector import ( + HTTP_AND_EMPTY_SCHEMA_SET, + BaseConnector as BaseConnector, + NamedPipeConnector as NamedPipeConnector, + TCPConnector as TCPConnector, + UnixConnector as UnixConnector, +) +from .cookiejar import CookieJar +from .helpers import ( + _SENTINEL, + DEBUG, + EMPTY_BODY_METHODS, + BasicAuth, + TimeoutHandle, + basicauth_from_netrc, + get_env_proxy_for_url, + netrc_from_env, + sentinel, + strip_auth_from_url, +) +from .http import WS_KEY, HttpVersion, WebSocketReader, WebSocketWriter +from .http_websocket import WSHandshakeError, ws_ext_gen, ws_ext_parse +from .tracing import Trace, TraceConfig +from .typedefs import JSONEncoder, LooseCookies, LooseHeaders, Query, StrOrURL + +__all__ = ( + # client_exceptions + "ClientConnectionError", + "ClientConnectionResetError", + "ClientConnectorCertificateError", + "ClientConnectorDNSError", + "ClientConnectorError", + "ClientConnectorSSLError", + "ClientError", + "ClientHttpProxyError", + "ClientOSError", + "ClientPayloadError", + "ClientProxyConnectionError", + "ClientResponseError", + "ClientSSLError", + "ConnectionTimeoutError", + "ContentTypeError", + "InvalidURL", + "InvalidUrlClientError", + "RedirectClientError", + "NonHttpUrlClientError", + "InvalidUrlRedirectClientError", + "NonHttpUrlRedirectClientError", + "ServerConnectionError", + "ServerDisconnectedError", + "ServerFingerprintMismatch", + "ServerTimeoutError", + "SocketTimeoutError", + "TooManyRedirects", + "WSServerHandshakeError", + # client_reqrep + "ClientRequest", + "ClientResponse", + "Fingerprint", + "RequestInfo", + # connector + "BaseConnector", + "TCPConnector", + "UnixConnector", + "NamedPipeConnector", + # client_ws + "ClientWebSocketResponse", + # client + "ClientSession", + "ClientTimeout", + "ClientWSTimeout", + "request", + "WSMessageTypeError", +) + + +if TYPE_CHECKING: + from ssl import SSLContext +else: + SSLContext = None + +if sys.version_info >= (3, 11) and TYPE_CHECKING: + from typing import Unpack + + +class _RequestOptions(TypedDict, total=False): + params: Query + data: Any + json: Any + cookies: Union[LooseCookies, None] + headers: Union[LooseHeaders, None] + skip_auto_headers: Union[Iterable[str], None] + auth: Union[BasicAuth, None] + allow_redirects: bool + max_redirects: int + compress: Union[str, bool, None] + chunked: Union[bool, None] + expect100: bool + raise_for_status: Union[None, bool, Callable[[ClientResponse], Awaitable[None]]] + read_until_eof: bool + proxy: Union[StrOrURL, None] + proxy_auth: Union[BasicAuth, None] + timeout: "Union[ClientTimeout, _SENTINEL, None]" + ssl: Union[SSLContext, bool, Fingerprint] + server_hostname: Union[str, None] + proxy_headers: Union[LooseHeaders, None] + trace_request_ctx: Union[Mapping[str, Any], None] + read_bufsize: Union[int, None] + auto_decompress: Union[bool, None] + max_line_size: Union[int, None] + max_field_size: Union[int, None] + max_headers: Union[int, None] + middlewares: Optional[Sequence[ClientMiddlewareType]] + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class ClientTimeout: + total: Optional[float] = None + connect: Optional[float] = None + sock_read: Optional[float] = None + sock_connect: Optional[float] = None + ceil_threshold: float = 5 + + # pool_queue_timeout: Optional[float] = None + # dns_resolution_timeout: Optional[float] = None + # socket_connect_timeout: Optional[float] = None + # connection_acquiring_timeout: Optional[float] = None + # new_connection_timeout: Optional[float] = None + # http_header_timeout: Optional[float] = None + # response_body_timeout: Optional[float] = None + + # to create a timeout specific for a single request, either + # - create a completely new one to overwrite the default + # - or use http://www.attrs.org/en/stable/api.html#attr.evolve + # to overwrite the defaults + + +# 5 Minute default read timeout +DEFAULT_TIMEOUT: Final[ClientTimeout] = ClientTimeout(total=5 * 60, sock_connect=30) + +# https://www.rfc-editor.org/rfc/rfc9110#section-9.2.2 +IDEMPOTENT_METHODS = frozenset({"GET", "HEAD", "OPTIONS", "TRACE", "PUT", "DELETE"}) + +_RetType = TypeVar("_RetType", ClientResponse, ClientWebSocketResponse) +_CharsetResolver = Callable[[ClientResponse, bytes], str] + + +class ClientSession: + """First-class interface for making HTTP requests.""" + + ATTRS = frozenset( + [ + "_base_url", + "_base_url_origin", + "_source_traceback", + "_connector", + "_loop", + "_cookie_jar", + "_connector_owner", + "_default_auth", + "_version", + "_json_serialize", + "_requote_redirect_url", + "_timeout", + "_raise_for_status", + "_auto_decompress", + "_trust_env", + "_default_headers", + "_skip_auto_headers", + "_request_class", + "_response_class", + "_ws_response_class", + "_trace_configs", + "_read_bufsize", + "_max_line_size", + "_max_field_size", + "_max_headers", + "_resolve_charset", + "_default_proxy", + "_default_proxy_auth", + "_retry_connection", + "_middlewares", + "requote_redirect_url", + ] + ) + + _source_traceback: Optional[traceback.StackSummary] = None + _connector: Optional[BaseConnector] = None + + def __init__( + self, + base_url: Optional[StrOrURL] = None, + *, + connector: Optional[BaseConnector] = None, + loop: Optional[asyncio.AbstractEventLoop] = None, + cookies: Optional[LooseCookies] = None, + headers: Optional[LooseHeaders] = None, + proxy: Optional[StrOrURL] = None, + proxy_auth: Optional[BasicAuth] = None, + skip_auto_headers: Optional[Iterable[str]] = None, + auth: Optional[BasicAuth] = None, + json_serialize: JSONEncoder = json.dumps, + request_class: Type[ClientRequest] = ClientRequest, + response_class: Type[ClientResponse] = ClientResponse, + ws_response_class: Type[ClientWebSocketResponse] = ClientWebSocketResponse, + version: HttpVersion = http.HttpVersion11, + cookie_jar: Optional[AbstractCookieJar] = None, + connector_owner: bool = True, + raise_for_status: Union[ + bool, Callable[[ClientResponse], Awaitable[None]] + ] = False, + read_timeout: Union[float, _SENTINEL] = sentinel, + conn_timeout: Optional[float] = None, + timeout: Union[object, ClientTimeout] = sentinel, + auto_decompress: bool = True, + trust_env: bool = False, + requote_redirect_url: bool = True, + trace_configs: Optional[List[TraceConfig]] = None, + read_bufsize: int = 2**16, + max_line_size: int = 8190, + max_field_size: int = 8190, + max_headers: int = 128, + fallback_charset_resolver: _CharsetResolver = lambda r, b: "utf-8", + middlewares: Sequence[ClientMiddlewareType] = (), + ssl_shutdown_timeout: Union[_SENTINEL, None, float] = sentinel, + ) -> None: + # We initialise _connector to None immediately, as it's referenced in __del__() + # and could cause issues if an exception occurs during initialisation. + self._connector: Optional[BaseConnector] = None + + if loop is None: + if connector is not None: + loop = connector._loop + + loop = loop or asyncio.get_running_loop() + + if base_url is None or isinstance(base_url, URL): + self._base_url: Optional[URL] = base_url + self._base_url_origin = None if base_url is None else base_url.origin() + else: + self._base_url = URL(base_url) + self._base_url_origin = self._base_url.origin() + assert self._base_url.absolute, "Only absolute URLs are supported" + if self._base_url is not None and not self._base_url.path.endswith("/"): + raise ValueError("base_url must have a trailing '/'") + + if timeout is sentinel or timeout is None: + self._timeout = DEFAULT_TIMEOUT + if read_timeout is not sentinel: + warnings.warn( + "read_timeout is deprecated, use timeout argument instead", + DeprecationWarning, + stacklevel=2, + ) + self._timeout = attr.evolve(self._timeout, total=read_timeout) + if conn_timeout is not None: + self._timeout = attr.evolve(self._timeout, connect=conn_timeout) + warnings.warn( + "conn_timeout is deprecated, use timeout argument instead", + DeprecationWarning, + stacklevel=2, + ) + else: + if not isinstance(timeout, ClientTimeout): + raise ValueError( + f"timeout parameter cannot be of {type(timeout)} type, " + "please use 'timeout=ClientTimeout(...)'", + ) + self._timeout = timeout + if read_timeout is not sentinel: + raise ValueError( + "read_timeout and timeout parameters " + "conflict, please setup " + "timeout.read" + ) + if conn_timeout is not None: + raise ValueError( + "conn_timeout and timeout parameters " + "conflict, please setup " + "timeout.connect" + ) + + if ssl_shutdown_timeout is not sentinel: + warnings.warn( + "The ssl_shutdown_timeout parameter is deprecated and will be removed in aiohttp 4.0", + DeprecationWarning, + stacklevel=2, + ) + + if connector is None: + connector = TCPConnector( + loop=loop, ssl_shutdown_timeout=ssl_shutdown_timeout + ) + + if connector._loop is not loop: + raise RuntimeError("Session and connector has to use same event loop") + + self._loop = loop + + if loop.get_debug(): + self._source_traceback = traceback.extract_stack(sys._getframe(1)) + + if cookie_jar is None: + cookie_jar = CookieJar(loop=loop) + self._cookie_jar = cookie_jar + + if cookies: + self._cookie_jar.update_cookies(cookies) + + self._connector = connector + self._connector_owner = connector_owner + self._default_auth = auth + self._version = version + self._json_serialize = json_serialize + self._raise_for_status = raise_for_status + self._auto_decompress = auto_decompress + self._trust_env = trust_env + self._requote_redirect_url = requote_redirect_url + self._read_bufsize = read_bufsize + self._max_line_size = max_line_size + self._max_field_size = max_field_size + self._max_headers = max_headers + + # Convert to list of tuples + if headers: + real_headers: CIMultiDict[str] = CIMultiDict(headers) + else: + real_headers = CIMultiDict() + self._default_headers: CIMultiDict[str] = real_headers + if skip_auto_headers is not None: + self._skip_auto_headers = frozenset(istr(i) for i in skip_auto_headers) + else: + self._skip_auto_headers = frozenset() + + self._request_class = request_class + self._response_class = response_class + self._ws_response_class = ws_response_class + + self._trace_configs = trace_configs or [] + for trace_config in self._trace_configs: + trace_config.freeze() + + self._resolve_charset = fallback_charset_resolver + + self._default_proxy = proxy + self._default_proxy_auth = proxy_auth + self._retry_connection: bool = True + self._middlewares = middlewares + + def __init_subclass__(cls: Type["ClientSession"]) -> None: + warnings.warn( + "Inheritance class {} from ClientSession " + "is discouraged".format(cls.__name__), + DeprecationWarning, + stacklevel=2, + ) + + if DEBUG: + + def __setattr__(self, name: str, val: Any) -> None: + if name not in self.ATTRS: + warnings.warn( + "Setting custom ClientSession.{} attribute " + "is discouraged".format(name), + DeprecationWarning, + stacklevel=2, + ) + super().__setattr__(name, val) + + def __del__(self, _warnings: Any = warnings) -> None: + if not self.closed: + kwargs = {"source": self} + _warnings.warn( + f"Unclosed client session {self!r}", ResourceWarning, **kwargs + ) + context = {"client_session": self, "message": "Unclosed client session"} + if self._source_traceback is not None: + context["source_traceback"] = self._source_traceback + self._loop.call_exception_handler(context) + + if sys.version_info >= (3, 11) and TYPE_CHECKING: + + def request( + self, + method: str, + url: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> "_RequestContextManager": ... + + else: + + def request( + self, method: str, url: StrOrURL, **kwargs: Any + ) -> "_RequestContextManager": + """Perform HTTP request.""" + return _RequestContextManager(self._request(method, url, **kwargs)) + + def _build_url(self, str_or_url: StrOrURL) -> URL: + url = URL(str_or_url) + if self._base_url and not url.absolute: + return self._base_url.join(url) + return url + + async def _request( + self, + method: str, + str_or_url: StrOrURL, + *, + params: Query = None, + data: Any = None, + json: Any = None, + cookies: Optional[LooseCookies] = None, + headers: Optional[LooseHeaders] = None, + skip_auto_headers: Optional[Iterable[str]] = None, + auth: Optional[BasicAuth] = None, + allow_redirects: bool = True, + max_redirects: int = 10, + compress: Union[str, bool, None] = None, + chunked: Optional[bool] = None, + expect100: bool = False, + raise_for_status: Union[ + None, bool, Callable[[ClientResponse], Awaitable[None]] + ] = None, + read_until_eof: bool = True, + proxy: Optional[StrOrURL] = None, + proxy_auth: Optional[BasicAuth] = None, + timeout: Union[ClientTimeout, _SENTINEL] = sentinel, + verify_ssl: Optional[bool] = None, + fingerprint: Optional[bytes] = None, + ssl_context: Optional[SSLContext] = None, + ssl: Union[SSLContext, bool, Fingerprint] = True, + server_hostname: Optional[str] = None, + proxy_headers: Optional[LooseHeaders] = None, + trace_request_ctx: Optional[Mapping[str, Any]] = None, + read_bufsize: Optional[int] = None, + auto_decompress: Optional[bool] = None, + max_line_size: Optional[int] = None, + max_field_size: Optional[int] = None, + max_headers: Optional[int] = None, + middlewares: Optional[Sequence[ClientMiddlewareType]] = None, + ) -> ClientResponse: + + # NOTE: timeout clamps existing connect and read timeouts. We cannot + # set the default to None because we need to detect if the user wants + # to use the existing timeouts by setting timeout to None. + + if self.closed: + raise RuntimeError("Session is closed") + + ssl = _merge_ssl_params(ssl, verify_ssl, ssl_context, fingerprint) + + if data is not None and json is not None: + raise ValueError( + "data and json parameters can not be used at the same time" + ) + elif json is not None: + data = payload.JsonPayload(json, dumps=self._json_serialize) + + if not isinstance(chunked, bool) and chunked is not None: + warnings.warn("Chunk size is deprecated #1615", DeprecationWarning) + + redirects = 0 + history: List[ClientResponse] = [] + version = self._version + params = params or {} + + # Merge with default headers and transform to CIMultiDict + headers = self._prepare_headers(headers) + + try: + url = self._build_url(str_or_url) + except ValueError as e: + raise InvalidUrlClientError(str_or_url) from e + + assert self._connector is not None + if url.scheme not in self._connector.allowed_protocol_schema_set: + raise NonHttpUrlClientError(url) + + skip_headers: Optional[Iterable[istr]] + if skip_auto_headers is not None: + skip_headers = { + istr(i) for i in skip_auto_headers + } | self._skip_auto_headers + elif self._skip_auto_headers: + skip_headers = self._skip_auto_headers + else: + skip_headers = None + + if proxy is None: + proxy = self._default_proxy + if proxy_auth is None: + proxy_auth = self._default_proxy_auth + + if proxy is None: + proxy_headers = None + else: + proxy_headers = self._prepare_headers(proxy_headers) + try: + proxy = URL(proxy) + except ValueError as e: + raise InvalidURL(proxy) from e + + if timeout is sentinel: + real_timeout: ClientTimeout = self._timeout + else: + if not isinstance(timeout, ClientTimeout): + real_timeout = ClientTimeout(total=timeout) + else: + real_timeout = timeout + # timeout is cumulative for all request operations + # (request, redirects, responses, data consuming) + tm = TimeoutHandle( + self._loop, real_timeout.total, ceil_threshold=real_timeout.ceil_threshold + ) + handle = tm.start() + + if read_bufsize is None: + read_bufsize = self._read_bufsize + + if auto_decompress is None: + auto_decompress = self._auto_decompress + + if max_line_size is None: + max_line_size = self._max_line_size + + if max_field_size is None: + max_field_size = self._max_field_size + + if max_headers is None: + max_headers = self._max_headers + + traces = [ + Trace( + self, + trace_config, + trace_config.trace_config_ctx(trace_request_ctx=trace_request_ctx), + ) + for trace_config in self._trace_configs + ] + + for trace in traces: + await trace.send_request_start(method, url.update_query(params), headers) + + timer = tm.timer() + try: + with timer: + # https://www.rfc-editor.org/rfc/rfc9112.html#name-retrying-requests + retry_persistent_connection = ( + self._retry_connection and method in IDEMPOTENT_METHODS + ) + while True: + url, auth_from_url = strip_auth_from_url(url) + if not url.raw_host: + # NOTE: Bail early, otherwise, causes `InvalidURL` through + # NOTE: `self._request_class()` below. + err_exc_cls = ( + InvalidUrlRedirectClientError + if redirects + else InvalidUrlClientError + ) + raise err_exc_cls(url) + # If `auth` was passed for an already authenticated URL, + # disallow only if this is the initial URL; this is to avoid issues + # with sketchy redirects that are not the caller's responsibility + if not history and (auth and auth_from_url): + raise ValueError( + "Cannot combine AUTH argument with " + "credentials encoded in URL" + ) + + # Override the auth with the one from the URL only if we + # have no auth, or if we got an auth from a redirect URL + if auth is None or (history and auth_from_url is not None): + auth = auth_from_url + + if ( + auth is None + and self._default_auth + and ( + not self._base_url or self._base_url_origin == url.origin() + ) + ): + auth = self._default_auth + + # Try netrc if auth is still None and trust_env is enabled. + if auth is None and self._trust_env and url.host is not None: + auth = await self._loop.run_in_executor( + None, self._get_netrc_auth, url.host + ) + + # It would be confusing if we support explicit + # Authorization header with auth argument + if ( + headers is not None + and auth is not None + and hdrs.AUTHORIZATION in headers + ): + raise ValueError( + "Cannot combine AUTHORIZATION header " + "with AUTH argument or credentials " + "encoded in URL" + ) + + all_cookies = self._cookie_jar.filter_cookies(url) + + if cookies is not None: + tmp_cookie_jar = CookieJar( + quote_cookie=self._cookie_jar.quote_cookie + ) + tmp_cookie_jar.update_cookies(cookies) + req_cookies = tmp_cookie_jar.filter_cookies(url) + if req_cookies: + all_cookies.load(req_cookies) + + proxy_: Optional[URL] = None + if proxy is not None: + proxy_ = URL(proxy) + elif self._trust_env: + with suppress(LookupError): + proxy_, proxy_auth = await asyncio.to_thread( + get_env_proxy_for_url, url + ) + + req = self._request_class( + method, + url, + params=params, + headers=headers, + skip_auto_headers=skip_headers, + data=data, + cookies=all_cookies, + auth=auth, + version=version, + compress=compress, + chunked=chunked, + expect100=expect100, + loop=self._loop, + response_class=self._response_class, + proxy=proxy_, + proxy_auth=proxy_auth, + timer=timer, + session=self, + ssl=ssl if ssl is not None else True, + server_hostname=server_hostname, + proxy_headers=proxy_headers, + traces=traces, + trust_env=self.trust_env, + ) + + async def _connect_and_send_request( + req: ClientRequest, + ) -> ClientResponse: + # connection timeout + assert self._connector is not None + try: + conn = await self._connector.connect( + req, traces=traces, timeout=real_timeout + ) + except asyncio.TimeoutError as exc: + raise ConnectionTimeoutError( + f"Connection timeout to host {req.url}" + ) from exc + + assert conn.protocol is not None + conn.protocol.set_response_params( + timer=timer, + skip_payload=req.method in EMPTY_BODY_METHODS, + read_until_eof=read_until_eof, + auto_decompress=auto_decompress, + read_timeout=real_timeout.sock_read, + read_bufsize=read_bufsize, + timeout_ceil_threshold=self._connector._timeout_ceil_threshold, + max_line_size=max_line_size, + max_field_size=max_field_size, + max_headers=max_headers, + ) + try: + resp = await req.send(conn) + try: + await resp.start(conn) + except BaseException: + resp.close() + raise + except BaseException: + conn.close() + raise + return resp + + # Apply middleware (if any) - per-request middleware overrides session middleware + effective_middlewares = ( + self._middlewares if middlewares is None else middlewares + ) + + if effective_middlewares: + handler = build_client_middlewares( + _connect_and_send_request, effective_middlewares + ) + else: + handler = _connect_and_send_request + + try: + resp = await handler(req) + # Client connector errors should not be retried + except ( + ConnectionTimeoutError, + ClientConnectorError, + ClientConnectorCertificateError, + ClientConnectorSSLError, + ): + raise + except (ClientOSError, ServerDisconnectedError): + if retry_persistent_connection: + retry_persistent_connection = False + continue + raise + except ClientError: + raise + except OSError as exc: + if exc.errno is None and isinstance(exc, asyncio.TimeoutError): + raise + raise ClientOSError(*exc.args) from exc + + # Update cookies from raw headers to preserve duplicates + if resp._raw_cookie_headers: + self._cookie_jar.update_cookies_from_headers( + resp._raw_cookie_headers, resp.url + ) + + # redirects + if resp.status in (301, 302, 303, 307, 308) and allow_redirects: + + for trace in traces: + await trace.send_request_redirect( + method, url.update_query(params), headers, resp + ) + + redirects += 1 + history.append(resp) + if max_redirects and redirects >= max_redirects: + if req._body is not None: + await req._body.close() + resp.close() + raise TooManyRedirects( + history[0].request_info, tuple(history) + ) + + # For 301 and 302, mimic IE, now changed in RFC + # https://github.com/kennethreitz/requests/pull/269 + if (resp.status == 303 and resp.method != hdrs.METH_HEAD) or ( + resp.status in (301, 302) and resp.method == hdrs.METH_POST + ): + method = hdrs.METH_GET + data = None + if headers.get(hdrs.CONTENT_LENGTH): + headers.pop(hdrs.CONTENT_LENGTH) + else: + # For 307/308, always preserve the request body + # For 301/302 with non-POST methods, preserve the request body + # https://www.rfc-editor.org/rfc/rfc9110#section-15.4.3-3.1 + # Use the existing payload to avoid recreating it from a potentially consumed file + data = req._body + + r_url = resp.headers.get(hdrs.LOCATION) or resp.headers.get( + hdrs.URI + ) + if r_url is None: + # see github.com/aio-libs/aiohttp/issues/2022 + break + else: + # reading from correct redirection + # response is forbidden + resp.release() + + try: + parsed_redirect_url = URL( + r_url, encoded=not self._requote_redirect_url + ) + except ValueError as e: + if req._body is not None: + await req._body.close() + resp.close() + raise InvalidUrlRedirectClientError( + r_url, + "Server attempted redirecting to a location that does not look like a URL", + ) from e + + scheme = parsed_redirect_url.scheme + if scheme not in HTTP_AND_EMPTY_SCHEMA_SET: + if req._body is not None: + await req._body.close() + resp.close() + raise NonHttpUrlRedirectClientError(r_url) + elif not scheme: + parsed_redirect_url = url.join(parsed_redirect_url) + + try: + redirect_origin = parsed_redirect_url.origin() + except ValueError as origin_val_err: + if req._body is not None: + await req._body.close() + resp.close() + raise InvalidUrlRedirectClientError( + parsed_redirect_url, + "Invalid redirect URL origin", + ) from origin_val_err + + if url.origin() != redirect_origin: + auth = None + headers.pop(hdrs.AUTHORIZATION, None) + headers.pop(hdrs.COOKIE, None) + headers.pop(hdrs.PROXY_AUTHORIZATION, None) + + url = parsed_redirect_url + params = {} + resp.release() + continue + + break + + if req._body is not None: + await req._body.close() + # check response status + if raise_for_status is None: + raise_for_status = self._raise_for_status + + if raise_for_status is None: + pass + elif callable(raise_for_status): + await raise_for_status(resp) + elif raise_for_status: + resp.raise_for_status() + + # register connection + if handle is not None: + if resp.connection is not None: + resp.connection.add_callback(handle.cancel) + else: + handle.cancel() + + resp._history = tuple(history) + + for trace in traces: + await trace.send_request_end( + method, url.update_query(params), headers, resp + ) + return resp + + except BaseException as e: + # cleanup timer + tm.close() + if handle: + handle.cancel() + handle = None + + for trace in traces: + await trace.send_request_exception( + method, url.update_query(params), headers, e + ) + raise + + def ws_connect( + self, + url: StrOrURL, + *, + method: str = hdrs.METH_GET, + protocols: Iterable[str] = (), + timeout: Union[ClientWSTimeout, _SENTINEL] = sentinel, + receive_timeout: Optional[float] = None, + autoclose: bool = True, + autoping: bool = True, + heartbeat: Optional[float] = None, + auth: Optional[BasicAuth] = None, + origin: Optional[str] = None, + params: Query = None, + headers: Optional[LooseHeaders] = None, + proxy: Optional[StrOrURL] = None, + proxy_auth: Optional[BasicAuth] = None, + ssl: Union[SSLContext, bool, Fingerprint] = True, + verify_ssl: Optional[bool] = None, + fingerprint: Optional[bytes] = None, + ssl_context: Optional[SSLContext] = None, + server_hostname: Optional[str] = None, + proxy_headers: Optional[LooseHeaders] = None, + compress: int = 0, + max_msg_size: int = 4 * 1024 * 1024, + ) -> "_WSRequestContextManager": + """Initiate websocket connection.""" + return _WSRequestContextManager( + self._ws_connect( + url, + method=method, + protocols=protocols, + timeout=timeout, + receive_timeout=receive_timeout, + autoclose=autoclose, + autoping=autoping, + heartbeat=heartbeat, + auth=auth, + origin=origin, + params=params, + headers=headers, + proxy=proxy, + proxy_auth=proxy_auth, + ssl=ssl, + verify_ssl=verify_ssl, + fingerprint=fingerprint, + ssl_context=ssl_context, + server_hostname=server_hostname, + proxy_headers=proxy_headers, + compress=compress, + max_msg_size=max_msg_size, + ) + ) + + async def _ws_connect( + self, + url: StrOrURL, + *, + method: str = hdrs.METH_GET, + protocols: Iterable[str] = (), + timeout: Union[ClientWSTimeout, _SENTINEL] = sentinel, + receive_timeout: Optional[float] = None, + autoclose: bool = True, + autoping: bool = True, + heartbeat: Optional[float] = None, + auth: Optional[BasicAuth] = None, + origin: Optional[str] = None, + params: Query = None, + headers: Optional[LooseHeaders] = None, + proxy: Optional[StrOrURL] = None, + proxy_auth: Optional[BasicAuth] = None, + ssl: Union[SSLContext, bool, Fingerprint] = True, + verify_ssl: Optional[bool] = None, + fingerprint: Optional[bytes] = None, + ssl_context: Optional[SSLContext] = None, + server_hostname: Optional[str] = None, + proxy_headers: Optional[LooseHeaders] = None, + compress: int = 0, + max_msg_size: int = 4 * 1024 * 1024, + ) -> ClientWebSocketResponse: + if timeout is not sentinel: + if isinstance(timeout, ClientWSTimeout): + ws_timeout = timeout + else: + warnings.warn( + "parameter 'timeout' of type 'float' " + "is deprecated, please use " + "'timeout=ClientWSTimeout(ws_close=...)'", + DeprecationWarning, + stacklevel=2, + ) + ws_timeout = ClientWSTimeout(ws_close=timeout) + else: + ws_timeout = DEFAULT_WS_CLIENT_TIMEOUT + if receive_timeout is not None: + warnings.warn( + "float parameter 'receive_timeout' " + "is deprecated, please use parameter " + "'timeout=ClientWSTimeout(ws_receive=...)'", + DeprecationWarning, + stacklevel=2, + ) + ws_timeout = attr.evolve(ws_timeout, ws_receive=receive_timeout) + + if headers is None: + real_headers: CIMultiDict[str] = CIMultiDict() + else: + real_headers = CIMultiDict(headers) + + default_headers = { + hdrs.UPGRADE: "websocket", + hdrs.CONNECTION: "Upgrade", + hdrs.SEC_WEBSOCKET_VERSION: "13", + } + + for key, value in default_headers.items(): + real_headers.setdefault(key, value) + + sec_key = base64.b64encode(os.urandom(16)) + real_headers[hdrs.SEC_WEBSOCKET_KEY] = sec_key.decode() + + if protocols: + real_headers[hdrs.SEC_WEBSOCKET_PROTOCOL] = ",".join(protocols) + if origin is not None: + real_headers[hdrs.ORIGIN] = origin + if compress: + extstr = ws_ext_gen(compress=compress) + real_headers[hdrs.SEC_WEBSOCKET_EXTENSIONS] = extstr + + # For the sake of backward compatibility, if user passes in None, convert it to True + if ssl is None: + warnings.warn( + "ssl=None is deprecated, please use ssl=True", + DeprecationWarning, + stacklevel=2, + ) + ssl = True + ssl = _merge_ssl_params(ssl, verify_ssl, ssl_context, fingerprint) + + # send request + resp = await self.request( + method, + url, + params=params, + headers=real_headers, + read_until_eof=False, + auth=auth, + proxy=proxy, + proxy_auth=proxy_auth, + ssl=ssl, + server_hostname=server_hostname, + proxy_headers=proxy_headers, + ) + + try: + # check handshake + if resp.status != 101: + raise WSServerHandshakeError( + resp.request_info, + resp.history, + message="Invalid response status", + status=resp.status, + headers=resp.headers, + ) + + if resp.headers.get(hdrs.UPGRADE, "").lower() != "websocket": + raise WSServerHandshakeError( + resp.request_info, + resp.history, + message="Invalid upgrade header", + status=resp.status, + headers=resp.headers, + ) + + if resp.headers.get(hdrs.CONNECTION, "").lower() != "upgrade": + raise WSServerHandshakeError( + resp.request_info, + resp.history, + message="Invalid connection header", + status=resp.status, + headers=resp.headers, + ) + + # key calculation + r_key = resp.headers.get(hdrs.SEC_WEBSOCKET_ACCEPT, "") + match = base64.b64encode(hashlib.sha1(sec_key + WS_KEY).digest()).decode() + if r_key != match: + raise WSServerHandshakeError( + resp.request_info, + resp.history, + message="Invalid challenge response", + status=resp.status, + headers=resp.headers, + ) + + # websocket protocol + protocol = None + if protocols and hdrs.SEC_WEBSOCKET_PROTOCOL in resp.headers: + resp_protocols = [ + proto.strip() + for proto in resp.headers[hdrs.SEC_WEBSOCKET_PROTOCOL].split(",") + ] + + for proto in resp_protocols: + if proto in protocols: + protocol = proto + break + + # websocket compress + notakeover = False + if compress: + compress_hdrs = resp.headers.get(hdrs.SEC_WEBSOCKET_EXTENSIONS) + if compress_hdrs: + try: + compress, notakeover = ws_ext_parse(compress_hdrs) + except WSHandshakeError as exc: + raise WSServerHandshakeError( + resp.request_info, + resp.history, + message=exc.args[0], + status=resp.status, + headers=resp.headers, + ) from exc + else: + compress = 0 + notakeover = False + + conn = resp.connection + assert conn is not None + conn_proto = conn.protocol + assert conn_proto is not None + + # For WS connection the read_timeout must be either receive_timeout or greater + # None == no timeout, i.e. infinite timeout, so None is the max timeout possible + if ws_timeout.ws_receive is None: + # Reset regardless + conn_proto.read_timeout = None + elif conn_proto.read_timeout is not None: + conn_proto.read_timeout = max( + ws_timeout.ws_receive, conn_proto.read_timeout + ) + + transport = conn.transport + assert transport is not None + reader = WebSocketDataQueue(conn_proto, 2**16, loop=self._loop) + conn_proto.set_parser(WebSocketReader(reader, max_msg_size), reader) + writer = WebSocketWriter( + conn_proto, + transport, + use_mask=True, + compress=compress, + notakeover=notakeover, + ) + except BaseException: + resp.close() + raise + else: + return self._ws_response_class( + reader, + writer, + protocol, + resp, + ws_timeout, + autoclose, + autoping, + self._loop, + heartbeat=heartbeat, + compress=compress, + client_notakeover=notakeover, + ) + + def _prepare_headers(self, headers: Optional[LooseHeaders]) -> "CIMultiDict[str]": + """Add default headers and transform it to CIMultiDict""" + # Convert headers to MultiDict + result = CIMultiDict(self._default_headers) + if headers: + if not isinstance(headers, (MultiDictProxy, MultiDict)): + headers = CIMultiDict(headers) + added_names: Set[str] = set() + for key, value in headers.items(): + if key in added_names: + result.add(key, value) + else: + result[key] = value + added_names.add(key) + return result + + def _get_netrc_auth(self, host: str) -> Optional[BasicAuth]: + """ + Get auth from netrc for the given host. + + This method is designed to be called in an executor to avoid + blocking I/O in the event loop. + """ + netrc_obj = netrc_from_env() + try: + return basicauth_from_netrc(netrc_obj, host) + except LookupError: + return None + + if sys.version_info >= (3, 11) and TYPE_CHECKING: + + def get( + self, + url: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> "_RequestContextManager": ... + + def options( + self, + url: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> "_RequestContextManager": ... + + def head( + self, + url: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> "_RequestContextManager": ... + + def post( + self, + url: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> "_RequestContextManager": ... + + def put( + self, + url: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> "_RequestContextManager": ... + + def patch( + self, + url: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> "_RequestContextManager": ... + + def delete( + self, + url: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> "_RequestContextManager": ... + + else: + + def get( + self, url: StrOrURL, *, allow_redirects: bool = True, **kwargs: Any + ) -> "_RequestContextManager": + """Perform HTTP GET request.""" + return _RequestContextManager( + self._request( + hdrs.METH_GET, url, allow_redirects=allow_redirects, **kwargs + ) + ) + + def options( + self, url: StrOrURL, *, allow_redirects: bool = True, **kwargs: Any + ) -> "_RequestContextManager": + """Perform HTTP OPTIONS request.""" + return _RequestContextManager( + self._request( + hdrs.METH_OPTIONS, url, allow_redirects=allow_redirects, **kwargs + ) + ) + + def head( + self, url: StrOrURL, *, allow_redirects: bool = False, **kwargs: Any + ) -> "_RequestContextManager": + """Perform HTTP HEAD request.""" + return _RequestContextManager( + self._request( + hdrs.METH_HEAD, url, allow_redirects=allow_redirects, **kwargs + ) + ) + + def post( + self, url: StrOrURL, *, data: Any = None, **kwargs: Any + ) -> "_RequestContextManager": + """Perform HTTP POST request.""" + return _RequestContextManager( + self._request(hdrs.METH_POST, url, data=data, **kwargs) + ) + + def put( + self, url: StrOrURL, *, data: Any = None, **kwargs: Any + ) -> "_RequestContextManager": + """Perform HTTP PUT request.""" + return _RequestContextManager( + self._request(hdrs.METH_PUT, url, data=data, **kwargs) + ) + + def patch( + self, url: StrOrURL, *, data: Any = None, **kwargs: Any + ) -> "_RequestContextManager": + """Perform HTTP PATCH request.""" + return _RequestContextManager( + self._request(hdrs.METH_PATCH, url, data=data, **kwargs) + ) + + def delete(self, url: StrOrURL, **kwargs: Any) -> "_RequestContextManager": + """Perform HTTP DELETE request.""" + return _RequestContextManager( + self._request(hdrs.METH_DELETE, url, **kwargs) + ) + + async def close(self) -> None: + """Close underlying connector. + + Release all acquired resources. + """ + if not self.closed: + if self._connector is not None and self._connector_owner: + await self._connector.close() + self._connector = None + + @property + def closed(self) -> bool: + """Is client session closed. + + A readonly property. + """ + return self._connector is None or self._connector.closed + + @property + def connector(self) -> Optional[BaseConnector]: + """Connector instance used for the session.""" + return self._connector + + @property + def cookie_jar(self) -> AbstractCookieJar: + """The session cookies.""" + return self._cookie_jar + + @property + def version(self) -> Tuple[int, int]: + """The session HTTP protocol version.""" + return self._version + + @property + def requote_redirect_url(self) -> bool: + """Do URL requoting on redirection handling.""" + return self._requote_redirect_url + + @requote_redirect_url.setter + def requote_redirect_url(self, val: bool) -> None: + """Do URL requoting on redirection handling.""" + warnings.warn( + "session.requote_redirect_url modification is deprecated #2778", + DeprecationWarning, + stacklevel=2, + ) + self._requote_redirect_url = val + + @property + def loop(self) -> asyncio.AbstractEventLoop: + """Session's loop.""" + warnings.warn( + "client.loop property is deprecated", DeprecationWarning, stacklevel=2 + ) + return self._loop + + @property + def timeout(self) -> ClientTimeout: + """Timeout for the session.""" + return self._timeout + + @property + def headers(self) -> "CIMultiDict[str]": + """The default headers of the client session.""" + return self._default_headers + + @property + def skip_auto_headers(self) -> FrozenSet[istr]: + """Headers for which autogeneration should be skipped""" + return self._skip_auto_headers + + @property + def auth(self) -> Optional[BasicAuth]: + """An object that represents HTTP Basic Authorization""" + return self._default_auth + + @property + def json_serialize(self) -> JSONEncoder: + """Json serializer callable""" + return self._json_serialize + + @property + def connector_owner(self) -> bool: + """Should connector be closed on session closing""" + return self._connector_owner + + @property + def raise_for_status( + self, + ) -> Union[bool, Callable[[ClientResponse], Awaitable[None]]]: + """Should `ClientResponse.raise_for_status()` be called for each response.""" + return self._raise_for_status + + @property + def auto_decompress(self) -> bool: + """Should the body response be automatically decompressed.""" + return self._auto_decompress + + @property + def trust_env(self) -> bool: + """ + Should proxies information from environment or netrc be trusted. + + Information is from HTTP_PROXY / HTTPS_PROXY environment variables + or ~/.netrc file if present. + """ + return self._trust_env + + @property + def trace_configs(self) -> List[TraceConfig]: + """A list of TraceConfig instances used for client tracing""" + return self._trace_configs + + def detach(self) -> None: + """Detach connector from session without closing the former. + + Session is switched to closed state anyway. + """ + self._connector = None + + def __enter__(self) -> None: + raise TypeError("Use async with instead") + + def __exit__( + self, + exc_type: Optional[Type[BaseException]], + exc_val: Optional[BaseException], + exc_tb: Optional[TracebackType], + ) -> None: + # __exit__ should exist in pair with __enter__ but never executed + pass # pragma: no cover + + async def __aenter__(self) -> "ClientSession": + return self + + async def __aexit__( + self, + exc_type: Optional[Type[BaseException]], + exc_val: Optional[BaseException], + exc_tb: Optional[TracebackType], + ) -> None: + await self.close() + + +class _BaseRequestContextManager(Coroutine[Any, Any, _RetType], Generic[_RetType]): + + __slots__ = ("_coro", "_resp") + + def __init__(self, coro: Coroutine["asyncio.Future[Any]", None, _RetType]) -> None: + self._coro: Coroutine["asyncio.Future[Any]", None, _RetType] = coro + + def send(self, arg: None) -> "asyncio.Future[Any]": + return self._coro.send(arg) + + def throw(self, *args: Any, **kwargs: Any) -> "asyncio.Future[Any]": + return self._coro.throw(*args, **kwargs) + + def close(self) -> None: + return self._coro.close() + + def __await__(self) -> Generator[Any, None, _RetType]: + ret = self._coro.__await__() + return ret + + def __iter__(self) -> Generator[Any, None, _RetType]: + return self.__await__() + + async def __aenter__(self) -> _RetType: + self._resp: _RetType = await self._coro + return await self._resp.__aenter__() + + async def __aexit__( + self, + exc_type: Optional[Type[BaseException]], + exc: Optional[BaseException], + tb: Optional[TracebackType], + ) -> None: + await self._resp.__aexit__(exc_type, exc, tb) + + +_RequestContextManager = _BaseRequestContextManager[ClientResponse] +_WSRequestContextManager = _BaseRequestContextManager[ClientWebSocketResponse] + + +class _SessionRequestContextManager: + + __slots__ = ("_coro", "_resp", "_session") + + def __init__( + self, + coro: Coroutine["asyncio.Future[Any]", None, ClientResponse], + session: ClientSession, + ) -> None: + self._coro = coro + self._resp: Optional[ClientResponse] = None + self._session = session + + async def __aenter__(self) -> ClientResponse: + try: + self._resp = await self._coro + except BaseException: + await self._session.close() + raise + else: + return self._resp + + async def __aexit__( + self, + exc_type: Optional[Type[BaseException]], + exc: Optional[BaseException], + tb: Optional[TracebackType], + ) -> None: + assert self._resp is not None + self._resp.close() + await self._session.close() + + +if sys.version_info >= (3, 11) and TYPE_CHECKING: + + def request( + method: str, + url: StrOrURL, + *, + version: HttpVersion = http.HttpVersion11, + connector: Optional[BaseConnector] = None, + loop: Optional[asyncio.AbstractEventLoop] = None, + **kwargs: Unpack[_RequestOptions], + ) -> _SessionRequestContextManager: ... + +else: + + def request( + method: str, + url: StrOrURL, + *, + version: HttpVersion = http.HttpVersion11, + connector: Optional[BaseConnector] = None, + loop: Optional[asyncio.AbstractEventLoop] = None, + **kwargs: Any, + ) -> _SessionRequestContextManager: + """Constructs and sends a request. + + Returns response object. + method - HTTP method + url - request url + params - (optional) Dictionary or bytes to be sent in the query + string of the new request + data - (optional) Dictionary, bytes, or file-like object to + send in the body of the request + json - (optional) Any json compatible python object + headers - (optional) Dictionary of HTTP Headers to send with + the request + cookies - (optional) Dict object to send with the request + auth - (optional) BasicAuth named tuple represent HTTP Basic Auth + auth - aiohttp.helpers.BasicAuth + allow_redirects - (optional) If set to False, do not follow + redirects + version - Request HTTP version. + compress - Set to True if request has to be compressed + with deflate encoding. + chunked - Set to chunk size for chunked transfer encoding. + expect100 - Expect 100-continue response from server. + connector - BaseConnector sub-class instance to support + connection pooling. + read_until_eof - Read response until eof if response + does not have Content-Length header. + loop - Optional event loop. + timeout - Optional ClientTimeout settings structure, 5min + total timeout by default. + Usage:: + >>> import aiohttp + >>> async with aiohttp.request('GET', 'http://python.org/') as resp: + ... print(resp) + ... data = await resp.read() + + """ + connector_owner = False + if connector is None: + connector_owner = True + connector = TCPConnector(loop=loop, force_close=True) + + session = ClientSession( + loop=loop, + cookies=kwargs.pop("cookies", None), + version=version, + timeout=kwargs.pop("timeout", sentinel), + connector=connector, + connector_owner=connector_owner, + ) + + return _SessionRequestContextManager( + session._request(method, url, **kwargs), + session, + ) diff --git a/venv/lib/python3.9/site-packages/aiohttp/client_exceptions.py b/venv/lib/python3.9/site-packages/aiohttp/client_exceptions.py new file mode 100644 index 0000000..4702da8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/client_exceptions.py @@ -0,0 +1,432 @@ +"""HTTP related errors.""" + +import asyncio +import warnings +from typing import TYPE_CHECKING, Optional, Tuple, Union + +from multidict import MultiMapping + +from .typedefs import StrOrURL + +if TYPE_CHECKING: + import ssl + + SSLContext = ssl.SSLContext +else: + try: + import ssl + + SSLContext = ssl.SSLContext + except ImportError: # pragma: no cover + ssl = SSLContext = None # type: ignore[assignment] + +if TYPE_CHECKING: + from .client_reqrep import ClientResponse, ConnectionKey, Fingerprint, RequestInfo + from .http_parser import RawResponseMessage +else: + RequestInfo = ClientResponse = ConnectionKey = RawResponseMessage = None + +__all__ = ( + "ClientError", + "ClientConnectionError", + "ClientConnectionResetError", + "ClientOSError", + "ClientConnectorError", + "ClientProxyConnectionError", + "ClientSSLError", + "ClientConnectorDNSError", + "ClientConnectorSSLError", + "ClientConnectorCertificateError", + "ConnectionTimeoutError", + "SocketTimeoutError", + "ServerConnectionError", + "ServerTimeoutError", + "ServerDisconnectedError", + "ServerFingerprintMismatch", + "ClientResponseError", + "ClientHttpProxyError", + "WSServerHandshakeError", + "ContentTypeError", + "ClientPayloadError", + "InvalidURL", + "InvalidUrlClientError", + "RedirectClientError", + "NonHttpUrlClientError", + "InvalidUrlRedirectClientError", + "NonHttpUrlRedirectClientError", + "WSMessageTypeError", +) + + +class ClientError(Exception): + """Base class for client connection errors.""" + + +class ClientResponseError(ClientError): + """Base class for exceptions that occur after getting a response. + + request_info: An instance of RequestInfo. + history: A sequence of responses, if redirects occurred. + status: HTTP status code. + message: Error message. + headers: Response headers. + """ + + def __init__( + self, + request_info: RequestInfo, + history: Tuple[ClientResponse, ...], + *, + code: Optional[int] = None, + status: Optional[int] = None, + message: str = "", + headers: Optional[MultiMapping[str]] = None, + ) -> None: + self.request_info = request_info + if code is not None: + if status is not None: + raise ValueError( + "Both code and status arguments are provided; " + "code is deprecated, use status instead" + ) + warnings.warn( + "code argument is deprecated, use status instead", + DeprecationWarning, + stacklevel=2, + ) + if status is not None: + self.status = status + elif code is not None: + self.status = code + else: + self.status = 0 + self.message = message + self.headers = headers + self.history = history + self.args = (request_info, history) + + def __str__(self) -> str: + return "{}, message={!r}, url={!r}".format( + self.status, + self.message, + str(self.request_info.real_url), + ) + + def __repr__(self) -> str: + args = f"{self.request_info!r}, {self.history!r}" + if self.status != 0: + args += f", status={self.status!r}" + if self.message != "": + args += f", message={self.message!r}" + if self.headers is not None: + args += f", headers={self.headers!r}" + return f"{type(self).__name__}({args})" + + @property + def code(self) -> int: + warnings.warn( + "code property is deprecated, use status instead", + DeprecationWarning, + stacklevel=2, + ) + return self.status + + @code.setter + def code(self, value: int) -> None: + warnings.warn( + "code property is deprecated, use status instead", + DeprecationWarning, + stacklevel=2, + ) + self.status = value + + +class ContentTypeError(ClientResponseError): + """ContentType found is not valid.""" + + +class WSServerHandshakeError(ClientResponseError): + """websocket server handshake error.""" + + +class ClientHttpProxyError(ClientResponseError): + """HTTP proxy error. + + Raised in :class:`aiohttp.connector.TCPConnector` if + proxy responds with status other than ``200 OK`` + on ``CONNECT`` request. + """ + + +class TooManyRedirects(ClientResponseError): + """Client was redirected too many times.""" + + +class ClientConnectionError(ClientError): + """Base class for client socket errors.""" + + +class ClientConnectionResetError(ClientConnectionError, ConnectionResetError): + """ConnectionResetError""" + + +class ClientOSError(ClientConnectionError, OSError): + """OSError error.""" + + +class ClientConnectorError(ClientOSError): + """Client connector error. + + Raised in :class:`aiohttp.connector.TCPConnector` if + a connection can not be established. + """ + + def __init__(self, connection_key: ConnectionKey, os_error: OSError) -> None: + self._conn_key = connection_key + self._os_error = os_error + super().__init__(os_error.errno, os_error.strerror) + self.args = (connection_key, os_error) + + @property + def os_error(self) -> OSError: + return self._os_error + + @property + def host(self) -> str: + return self._conn_key.host + + @property + def port(self) -> Optional[int]: + return self._conn_key.port + + @property + def ssl(self) -> Union[SSLContext, bool, "Fingerprint"]: + return self._conn_key.ssl + + def __str__(self) -> str: + return "Cannot connect to host {0.host}:{0.port} ssl:{1} [{2}]".format( + self, "default" if self.ssl is True else self.ssl, self.strerror + ) + + # OSError.__reduce__ does too much black magick + __reduce__ = BaseException.__reduce__ + + +class ClientConnectorDNSError(ClientConnectorError): + """DNS resolution failed during client connection. + + Raised in :class:`aiohttp.connector.TCPConnector` if + DNS resolution fails. + """ + + +class ClientProxyConnectionError(ClientConnectorError): + """Proxy connection error. + + Raised in :class:`aiohttp.connector.TCPConnector` if + connection to proxy can not be established. + """ + + +class UnixClientConnectorError(ClientConnectorError): + """Unix connector error. + + Raised in :py:class:`aiohttp.connector.UnixConnector` + if connection to unix socket can not be established. + """ + + def __init__( + self, path: str, connection_key: ConnectionKey, os_error: OSError + ) -> None: + self._path = path + super().__init__(connection_key, os_error) + + @property + def path(self) -> str: + return self._path + + def __str__(self) -> str: + return "Cannot connect to unix socket {0.path} ssl:{1} [{2}]".format( + self, "default" if self.ssl is True else self.ssl, self.strerror + ) + + +class ServerConnectionError(ClientConnectionError): + """Server connection errors.""" + + +class ServerDisconnectedError(ServerConnectionError): + """Server disconnected.""" + + def __init__(self, message: Union[RawResponseMessage, str, None] = None) -> None: + if message is None: + message = "Server disconnected" + + self.args = (message,) + self.message = message + + +class ServerTimeoutError(ServerConnectionError, asyncio.TimeoutError): + """Server timeout error.""" + + +class ConnectionTimeoutError(ServerTimeoutError): + """Connection timeout error.""" + + +class SocketTimeoutError(ServerTimeoutError): + """Socket timeout error.""" + + +class ServerFingerprintMismatch(ServerConnectionError): + """SSL certificate does not match expected fingerprint.""" + + def __init__(self, expected: bytes, got: bytes, host: str, port: int) -> None: + self.expected = expected + self.got = got + self.host = host + self.port = port + self.args = (expected, got, host, port) + + def __repr__(self) -> str: + return "<{} expected={!r} got={!r} host={!r} port={!r}>".format( + self.__class__.__name__, self.expected, self.got, self.host, self.port + ) + + +class ClientPayloadError(ClientError): + """Response payload error.""" + + +class InvalidURL(ClientError, ValueError): + """Invalid URL. + + URL used for fetching is malformed, e.g. it doesn't contains host + part. + """ + + # Derive from ValueError for backward compatibility + + def __init__(self, url: StrOrURL, description: Union[str, None] = None) -> None: + # The type of url is not yarl.URL because the exception can be raised + # on URL(url) call + self._url = url + self._description = description + + if description: + super().__init__(url, description) + else: + super().__init__(url) + + @property + def url(self) -> StrOrURL: + return self._url + + @property + def description(self) -> "str | None": + return self._description + + def __repr__(self) -> str: + return f"<{self.__class__.__name__} {self}>" + + def __str__(self) -> str: + if self._description: + return f"{self._url} - {self._description}" + return str(self._url) + + +class InvalidUrlClientError(InvalidURL): + """Invalid URL client error.""" + + +class RedirectClientError(ClientError): + """Client redirect error.""" + + +class NonHttpUrlClientError(ClientError): + """Non http URL client error.""" + + +class InvalidUrlRedirectClientError(InvalidUrlClientError, RedirectClientError): + """Invalid URL redirect client error.""" + + +class NonHttpUrlRedirectClientError(NonHttpUrlClientError, RedirectClientError): + """Non http URL redirect client error.""" + + +class ClientSSLError(ClientConnectorError): + """Base error for ssl.*Errors.""" + + +if ssl is not None: + cert_errors = (ssl.CertificateError,) + cert_errors_bases = ( + ClientSSLError, + ssl.CertificateError, + ) + + ssl_errors = (ssl.SSLError,) + ssl_error_bases = (ClientSSLError, ssl.SSLError) +else: # pragma: no cover + cert_errors = tuple() + cert_errors_bases = ( + ClientSSLError, + ValueError, + ) + + ssl_errors = tuple() + ssl_error_bases = (ClientSSLError,) + + +class ClientConnectorSSLError(*ssl_error_bases): # type: ignore[misc] + """Response ssl error.""" + + +class ClientConnectorCertificateError(*cert_errors_bases): # type: ignore[misc] + """Response certificate error.""" + + _conn_key: ConnectionKey + + def __init__( + # TODO: If we require ssl in future, this can become ssl.CertificateError + self, + connection_key: ConnectionKey, + certificate_error: Exception, + ) -> None: + if isinstance(certificate_error, cert_errors + (OSError,)): + # ssl.CertificateError has errno and strerror, so we should be fine + os_error = certificate_error + else: + os_error = OSError() + + super().__init__(connection_key, os_error) + self._certificate_error = certificate_error + self.args = (connection_key, certificate_error) + + @property + def certificate_error(self) -> Exception: + return self._certificate_error + + @property + def host(self) -> str: + return self._conn_key.host + + @property + def port(self) -> Optional[int]: + return self._conn_key.port + + @property + def ssl(self) -> bool: + return self._conn_key.is_ssl + + def __str__(self) -> str: + return ( + "Cannot connect to host {0.host}:{0.port} ssl:{0.ssl} " + "[{0.certificate_error.__class__.__name__}: " + "{0.certificate_error.args}]".format(self) + ) + + +class WSMessageTypeError(TypeError): + """WebSocket message type is not valid.""" diff --git a/venv/lib/python3.9/site-packages/aiohttp/client_middleware_digest_auth.py b/venv/lib/python3.9/site-packages/aiohttp/client_middleware_digest_auth.py new file mode 100644 index 0000000..d7f2f1e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/client_middleware_digest_auth.py @@ -0,0 +1,480 @@ +""" +Digest authentication middleware for aiohttp client. + +This middleware implements HTTP Digest Authentication according to RFC 7616, +providing a more secure alternative to Basic Authentication. It supports all +standard hash algorithms including MD5, SHA, SHA-256, SHA-512 and their session +variants, as well as both 'auth' and 'auth-int' quality of protection (qop) options. +""" + +import hashlib +import os +import re +import sys +import time +from typing import ( + Callable, + Dict, + Final, + FrozenSet, + List, + Literal, + Tuple, + TypedDict, + Union, +) + +from yarl import URL + +from . import hdrs +from .client_exceptions import ClientError +from .client_middlewares import ClientHandlerType +from .client_reqrep import ClientRequest, ClientResponse +from .payload import Payload + + +class DigestAuthChallenge(TypedDict, total=False): + realm: str + nonce: str + qop: str + algorithm: str + opaque: str + domain: str + stale: str + + +DigestFunctions: Dict[str, Callable[[bytes], "hashlib._Hash"]] = { + "MD5": hashlib.md5, + "MD5-SESS": hashlib.md5, + "SHA": hashlib.sha1, + "SHA-SESS": hashlib.sha1, + "SHA256": hashlib.sha256, + "SHA256-SESS": hashlib.sha256, + "SHA-256": hashlib.sha256, + "SHA-256-SESS": hashlib.sha256, + "SHA512": hashlib.sha512, + "SHA512-SESS": hashlib.sha512, + "SHA-512": hashlib.sha512, + "SHA-512-SESS": hashlib.sha512, +} + + +# Compile the regex pattern once at module level for performance +_HEADER_PAIRS_PATTERN = re.compile( + r'(?:^|\s|,\s*)(\w+)\s*=\s*(?:"((?:[^"\\]|\\.)*)"|([^\s,]+))' + if sys.version_info < (3, 11) + else r'(?:^|\s|,\s*)((?>\w+))\s*=\s*(?:"((?:[^"\\]|\\.)*)"|([^\s,]+))' + # +------------|--------|--|-|-|--|----|------|----|--||-----|-> Match valid start/sep + # +--------|--|-|-|--|----|------|----|--||-----|-> alphanumeric key (atomic + # | | | | | | | | || | group reduces backtracking) + # +--|-|-|--|----|------|----|--||-----|-> maybe whitespace + # | | | | | | | || | + # +-|-|--|----|------|----|--||-----|-> = (delimiter) + # +-|--|----|------|----|--||-----|-> maybe whitespace + # | | | | | || | + # +--|----|------|----|--||-----|-> group quoted or unquoted + # | | | | || | + # +----|------|----|--||-----|-> if quoted... + # +------|----|--||-----|-> anything but " or \ + # +----|--||-----|-> escaped characters allowed + # +--||-----|-> or can be empty string + # || | + # +|-----|-> if unquoted... + # +-----|-> anything but , or + # +-> at least one char req'd +) + + +# RFC 7616: Challenge parameters to extract +CHALLENGE_FIELDS: Final[ + Tuple[ + Literal["realm", "nonce", "qop", "algorithm", "opaque", "domain", "stale"], ... + ] +] = ( + "realm", + "nonce", + "qop", + "algorithm", + "opaque", + "domain", + "stale", +) + +# Supported digest authentication algorithms +# Use a tuple of sorted keys for predictable documentation and error messages +SUPPORTED_ALGORITHMS: Final[Tuple[str, ...]] = tuple(sorted(DigestFunctions.keys())) + +# RFC 7616: Fields that require quoting in the Digest auth header +# These fields must be enclosed in double quotes in the Authorization header. +# Algorithm, qop, and nc are never quoted per RFC specifications. +# This frozen set is used by the template-based header construction to +# automatically determine which fields need quotes. +QUOTED_AUTH_FIELDS: Final[FrozenSet[str]] = frozenset( + {"username", "realm", "nonce", "uri", "response", "opaque", "cnonce"} +) + + +def escape_quotes(value: str) -> str: + """Escape double quotes for HTTP header values.""" + return value.replace('"', '\\"') + + +def unescape_quotes(value: str) -> str: + """Unescape double quotes in HTTP header values.""" + return value.replace('\\"', '"') + + +def parse_header_pairs(header: str) -> Dict[str, str]: + """ + Parse key-value pairs from WWW-Authenticate or similar HTTP headers. + + This function handles the complex format of WWW-Authenticate header values, + supporting both quoted and unquoted values, proper handling of commas in + quoted values, and whitespace variations per RFC 7616. + + Examples of supported formats: + - key1="value1", key2=value2 + - key1 = "value1" , key2="value, with, commas" + - key1=value1,key2="value2" + - realm="example.com", nonce="12345", qop="auth" + + Args: + header: The header value string to parse + + Returns: + Dictionary mapping parameter names to their values + """ + return { + stripped_key: unescape_quotes(quoted_val) if quoted_val else unquoted_val + for key, quoted_val, unquoted_val in _HEADER_PAIRS_PATTERN.findall(header) + if (stripped_key := key.strip()) + } + + +class DigestAuthMiddleware: + """ + HTTP digest authentication middleware for aiohttp client. + + This middleware intercepts 401 Unauthorized responses containing a Digest + authentication challenge, calculates the appropriate digest credentials, + and automatically retries the request with the proper Authorization header. + + Features: + - Handles all aspects of Digest authentication handshake automatically + - Supports all standard hash algorithms: + - MD5, MD5-SESS + - SHA, SHA-SESS + - SHA256, SHA256-SESS, SHA-256, SHA-256-SESS + - SHA512, SHA512-SESS, SHA-512, SHA-512-SESS + - Supports 'auth' and 'auth-int' quality of protection modes + - Properly handles quoted strings and parameter parsing + - Includes replay attack protection with client nonce count tracking + - Supports preemptive authentication per RFC 7616 Section 3.6 + + Standards compliance: + - RFC 7616: HTTP Digest Access Authentication (primary reference) + - RFC 2617: HTTP Authentication (deprecated by RFC 7616) + - RFC 1945: Section 11.1 (username restrictions) + + Implementation notes: + The core digest calculation is inspired by the implementation in + https://github.com/requests/requests/blob/v2.18.4/requests/auth.py + with added support for modern digest auth features and error handling. + """ + + def __init__( + self, + login: str, + password: str, + preemptive: bool = True, + ) -> None: + if login is None: + raise ValueError("None is not allowed as login value") + + if password is None: + raise ValueError("None is not allowed as password value") + + if ":" in login: + raise ValueError('A ":" is not allowed in username (RFC 1945#section-11.1)') + + self._login_str: Final[str] = login + self._login_bytes: Final[bytes] = login.encode("utf-8") + self._password_bytes: Final[bytes] = password.encode("utf-8") + + self._last_nonce_bytes = b"" + self._nonce_count = 0 + self._challenge: DigestAuthChallenge = {} + self._preemptive: bool = preemptive + # Set of URLs defining the protection space + self._protection_space: List[str] = [] + + async def _encode( + self, method: str, url: URL, body: Union[Payload, Literal[b""]] + ) -> str: + """ + Build digest authorization header for the current challenge. + + Args: + method: The HTTP method (GET, POST, etc.) + url: The request URL + body: The request body (used for qop=auth-int) + + Returns: + A fully formatted Digest authorization header string + + Raises: + ClientError: If the challenge is missing required parameters or + contains unsupported values + + """ + challenge = self._challenge + if "realm" not in challenge: + raise ClientError( + "Malformed Digest auth challenge: Missing 'realm' parameter" + ) + + if "nonce" not in challenge: + raise ClientError( + "Malformed Digest auth challenge: Missing 'nonce' parameter" + ) + + # Empty realm values are allowed per RFC 7616 (SHOULD, not MUST, contain host name) + realm = challenge["realm"] + nonce = challenge["nonce"] + + # Empty nonce values are not allowed as they are security-critical for replay protection + if not nonce: + raise ClientError( + "Security issue: Digest auth challenge contains empty 'nonce' value" + ) + + qop_raw = challenge.get("qop", "") + # Preserve original algorithm case for response while using uppercase for processing + algorithm_original = challenge.get("algorithm", "MD5") + algorithm = algorithm_original.upper() + opaque = challenge.get("opaque", "") + + # Convert string values to bytes once + nonce_bytes = nonce.encode("utf-8") + realm_bytes = realm.encode("utf-8") + path = URL(url).path_qs + + # Process QoP + qop = "" + qop_bytes = b"" + if qop_raw: + valid_qops = {"auth", "auth-int"}.intersection( + {q.strip() for q in qop_raw.split(",") if q.strip()} + ) + if not valid_qops: + raise ClientError( + f"Digest auth error: Unsupported Quality of Protection (qop) value(s): {qop_raw}" + ) + + qop = "auth-int" if "auth-int" in valid_qops else "auth" + qop_bytes = qop.encode("utf-8") + + if algorithm not in DigestFunctions: + raise ClientError( + f"Digest auth error: Unsupported hash algorithm: {algorithm}. " + f"Supported algorithms: {', '.join(SUPPORTED_ALGORITHMS)}" + ) + hash_fn: Final = DigestFunctions[algorithm] + + def H(x: bytes) -> bytes: + """RFC 7616 Section 3: Hash function H(data) = hex(hash(data)).""" + return hash_fn(x).hexdigest().encode() + + def KD(s: bytes, d: bytes) -> bytes: + """RFC 7616 Section 3: KD(secret, data) = H(concat(secret, ":", data)).""" + return H(b":".join((s, d))) + + # Calculate A1 and A2 + A1 = b":".join((self._login_bytes, realm_bytes, self._password_bytes)) + A2 = f"{method.upper()}:{path}".encode() + if qop == "auth-int": + if isinstance(body, Payload): # will always be empty bytes unless Payload + entity_bytes = await body.as_bytes() # Get bytes from Payload + else: + entity_bytes = body + entity_hash = H(entity_bytes) + A2 = b":".join((A2, entity_hash)) + + HA1 = H(A1) + HA2 = H(A2) + + # Nonce count handling + if nonce_bytes == self._last_nonce_bytes: + self._nonce_count += 1 + else: + self._nonce_count = 1 + + self._last_nonce_bytes = nonce_bytes + ncvalue = f"{self._nonce_count:08x}" + ncvalue_bytes = ncvalue.encode("utf-8") + + # Generate client nonce + cnonce = hashlib.sha1( + b"".join( + [ + str(self._nonce_count).encode("utf-8"), + nonce_bytes, + time.ctime().encode("utf-8"), + os.urandom(8), + ] + ) + ).hexdigest()[:16] + cnonce_bytes = cnonce.encode("utf-8") + + # Special handling for session-based algorithms + if algorithm.upper().endswith("-SESS"): + HA1 = H(b":".join((HA1, nonce_bytes, cnonce_bytes))) + + # Calculate the response digest + if qop: + noncebit = b":".join( + (nonce_bytes, ncvalue_bytes, cnonce_bytes, qop_bytes, HA2) + ) + response_digest = KD(HA1, noncebit) + else: + response_digest = KD(HA1, b":".join((nonce_bytes, HA2))) + + # Define a dict mapping of header fields to their values + # Group fields into always-present, optional, and qop-dependent + header_fields = { + # Always present fields + "username": escape_quotes(self._login_str), + "realm": escape_quotes(realm), + "nonce": escape_quotes(nonce), + "uri": path, + "response": response_digest.decode(), + "algorithm": algorithm_original, + } + + # Optional fields + if opaque: + header_fields["opaque"] = escape_quotes(opaque) + + # QoP-dependent fields + if qop: + header_fields["qop"] = qop + header_fields["nc"] = ncvalue + header_fields["cnonce"] = cnonce + + # Build header using templates for each field type + pairs: List[str] = [] + for field, value in header_fields.items(): + if field in QUOTED_AUTH_FIELDS: + pairs.append(f'{field}="{value}"') + else: + pairs.append(f"{field}={value}") + + return f"Digest {', '.join(pairs)}" + + def _in_protection_space(self, url: URL) -> bool: + """ + Check if the given URL is within the current protection space. + + According to RFC 7616, a URI is in the protection space if any URI + in the protection space is a prefix of it (after both have been made absolute). + """ + request_str = str(url) + for space_str in self._protection_space: + # Check if request starts with space URL + if not request_str.startswith(space_str): + continue + # Exact match or space ends with / (proper directory prefix) + if len(request_str) == len(space_str) or space_str[-1] == "/": + return True + # Check next char is / to ensure proper path boundary + if request_str[len(space_str)] == "/": + return True + return False + + def _authenticate(self, response: ClientResponse) -> bool: + """ + Takes the given response and tries digest-auth, if needed. + + Returns true if the original request must be resent. + """ + if response.status != 401: + return False + + auth_header = response.headers.get("www-authenticate", "") + if not auth_header: + return False # No authentication header present + + method, sep, headers = auth_header.partition(" ") + if not sep: + # No space found in www-authenticate header + return False # Malformed auth header, missing scheme separator + + if method.lower() != "digest": + # Not a digest auth challenge (could be Basic, Bearer, etc.) + return False + + if not headers: + # We have a digest scheme but no parameters + return False # Malformed digest header, missing parameters + + # We have a digest auth header with content + if not (header_pairs := parse_header_pairs(headers)): + # Failed to parse any key-value pairs + return False # Malformed digest header, no valid parameters + + # Extract challenge parameters + self._challenge = {} + for field in CHALLENGE_FIELDS: + if (value := header_pairs.get(field)) is not None: + self._challenge[field] = value + + # Update protection space based on domain parameter or default to origin + origin = response.url.origin() + + if domain := self._challenge.get("domain"): + # Parse space-separated list of URIs + self._protection_space = [] + for uri in domain.split(): + # Remove quotes if present + uri = uri.strip('"') + if uri.startswith("/"): + # Path-absolute, relative to origin + self._protection_space.append(str(origin.join(URL(uri)))) + else: + # Absolute URI + self._protection_space.append(str(URL(uri))) + else: + # No domain specified, protection space is entire origin + self._protection_space = [str(origin)] + + # Return True only if we found at least one challenge parameter + return bool(self._challenge) + + async def __call__( + self, request: ClientRequest, handler: ClientHandlerType + ) -> ClientResponse: + """Run the digest auth middleware.""" + response = None + for retry_count in range(2): + # Apply authorization header if: + # 1. This is a retry after 401 (retry_count > 0), OR + # 2. Preemptive auth is enabled AND we have a challenge AND the URL is in protection space + if retry_count > 0 or ( + self._preemptive + and self._challenge + and self._in_protection_space(request.url) + ): + request.headers[hdrs.AUTHORIZATION] = await self._encode( + request.method, request.url, request.body + ) + + # Send the request + response = await handler(request) + + # Check if we need to authenticate + if not self._authenticate(response): + break + + # At this point, response is guaranteed to be defined + assert response is not None + return response diff --git a/venv/lib/python3.9/site-packages/aiohttp/client_middlewares.py b/venv/lib/python3.9/site-packages/aiohttp/client_middlewares.py new file mode 100644 index 0000000..3ca2cb2 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/client_middlewares.py @@ -0,0 +1,55 @@ +"""Client middleware support.""" + +from collections.abc import Awaitable, Callable, Sequence + +from .client_reqrep import ClientRequest, ClientResponse + +__all__ = ("ClientMiddlewareType", "ClientHandlerType", "build_client_middlewares") + +# Type alias for client request handlers - functions that process requests and return responses +ClientHandlerType = Callable[[ClientRequest], Awaitable[ClientResponse]] + +# Type for client middleware - similar to server but uses ClientRequest/ClientResponse +ClientMiddlewareType = Callable[ + [ClientRequest, ClientHandlerType], Awaitable[ClientResponse] +] + + +def build_client_middlewares( + handler: ClientHandlerType, + middlewares: Sequence[ClientMiddlewareType], +) -> ClientHandlerType: + """ + Apply middlewares to request handler. + + The middlewares are applied in reverse order, so the first middleware + in the list wraps all subsequent middlewares and the handler. + + This implementation avoids using partial/update_wrapper to minimize overhead + and doesn't cache to avoid holding references to stateful middleware. + """ + # Optimize for single middleware case + if len(middlewares) == 1: + middleware = middlewares[0] + + async def single_middleware_handler(req: ClientRequest) -> ClientResponse: + return await middleware(req, handler) + + return single_middleware_handler + + # Build the chain for multiple middlewares + current_handler = handler + + for middleware in reversed(middlewares): + # Create a new closure that captures the current state + def make_wrapper( + mw: ClientMiddlewareType, next_h: ClientHandlerType + ) -> ClientHandlerType: + async def wrapped(req: ClientRequest) -> ClientResponse: + return await mw(req, next_h) + + return wrapped + + current_handler = make_wrapper(middleware, current_handler) + + return current_handler diff --git a/venv/lib/python3.9/site-packages/aiohttp/client_proto.py b/venv/lib/python3.9/site-packages/aiohttp/client_proto.py new file mode 100644 index 0000000..aea3191 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/client_proto.py @@ -0,0 +1,361 @@ +import asyncio +from contextlib import suppress +from typing import Any, Optional, Tuple, Union + +from .base_protocol import BaseProtocol +from .client_exceptions import ( + ClientConnectionError, + ClientOSError, + ClientPayloadError, + ServerDisconnectedError, + SocketTimeoutError, +) +from .helpers import ( + _EXC_SENTINEL, + EMPTY_BODY_STATUS_CODES, + BaseTimerContext, + set_exception, + set_result, +) +from .http import HttpResponseParser, RawResponseMessage +from .http_exceptions import HttpProcessingError +from .streams import EMPTY_PAYLOAD, DataQueue, StreamReader + + +class ResponseHandler(BaseProtocol, DataQueue[Tuple[RawResponseMessage, StreamReader]]): + """Helper class to adapt between Protocol and StreamReader.""" + + def __init__(self, loop: asyncio.AbstractEventLoop) -> None: + BaseProtocol.__init__(self, loop=loop) + DataQueue.__init__(self, loop) + + self._should_close = False + + self._payload: Optional[StreamReader] = None + self._skip_payload = False + self._payload_parser = None + + self._timer = None + + self._tail = b"" + self._upgraded = False + self._parser: Optional[HttpResponseParser] = None + + self._read_timeout: Optional[float] = None + self._read_timeout_handle: Optional[asyncio.TimerHandle] = None + + self._timeout_ceil_threshold: Optional[float] = 5 + + self._closed: Union[None, asyncio.Future[None]] = None + self._connection_lost_called = False + + @property + def closed(self) -> Union[None, asyncio.Future[None]]: + """Future that is set when the connection is closed. + + This property returns a Future that will be completed when the connection + is closed. The Future is created lazily on first access to avoid creating + futures that will never be awaited. + + Returns: + - A Future[None] if the connection is still open or was closed after + this property was accessed + - None if connection_lost() was already called before this property + was ever accessed (indicating no one is waiting for the closure) + """ + if self._closed is None and not self._connection_lost_called: + self._closed = self._loop.create_future() + return self._closed + + @property + def upgraded(self) -> bool: + return self._upgraded + + @property + def should_close(self) -> bool: + return bool( + self._should_close + or (self._payload is not None and not self._payload.is_eof()) + or self._upgraded + or self._exception is not None + or self._payload_parser is not None + or self._buffer + or self._tail + ) + + def force_close(self) -> None: + self._should_close = True + + def close(self) -> None: + self._exception = None # Break cyclic references + transport = self.transport + if transport is not None: + transport.close() + self.transport = None + self._payload = None + self._drop_timeout() + + def abort(self) -> None: + self._exception = None # Break cyclic references + transport = self.transport + if transport is not None: + transport.abort() + self.transport = None + self._payload = None + self._drop_timeout() + + def is_connected(self) -> bool: + return self.transport is not None and not self.transport.is_closing() + + def connection_lost(self, exc: Optional[BaseException]) -> None: + self._connection_lost_called = True + self._drop_timeout() + + original_connection_error = exc + reraised_exc = original_connection_error + + connection_closed_cleanly = original_connection_error is None + + if self._closed is not None: + # If someone is waiting for the closed future, + # we should set it to None or an exception. If + # self._closed is None, it means that + # connection_lost() was called already + # or nobody is waiting for it. + if connection_closed_cleanly: + set_result(self._closed, None) + else: + assert original_connection_error is not None + set_exception( + self._closed, + ClientConnectionError( + f"Connection lost: {original_connection_error !s}", + ), + original_connection_error, + ) + + if self._payload_parser is not None: + with suppress(Exception): # FIXME: log this somehow? + self._payload_parser.feed_eof() + + uncompleted = None + if self._parser is not None: + try: + uncompleted = self._parser.feed_eof() + except Exception as underlying_exc: + if self._payload is not None: + client_payload_exc_msg = ( + f"Response payload is not completed: {underlying_exc !r}" + ) + if not connection_closed_cleanly: + client_payload_exc_msg = ( + f"{client_payload_exc_msg !s}. " + f"{original_connection_error !r}" + ) + set_exception( + self._payload, + ClientPayloadError(client_payload_exc_msg), + underlying_exc, + ) + + if not self.is_eof(): + if isinstance(original_connection_error, OSError): + reraised_exc = ClientOSError(*original_connection_error.args) + if connection_closed_cleanly: + reraised_exc = ServerDisconnectedError(uncompleted) + # assigns self._should_close to True as side effect, + # we do it anyway below + underlying_non_eof_exc = ( + _EXC_SENTINEL + if connection_closed_cleanly + else original_connection_error + ) + assert underlying_non_eof_exc is not None + assert reraised_exc is not None + self.set_exception(reraised_exc, underlying_non_eof_exc) + + self._should_close = True + self._parser = None + self._payload = None + self._payload_parser = None + self._reading_paused = False + + super().connection_lost(reraised_exc) + + def eof_received(self) -> None: + # should call parser.feed_eof() most likely + self._drop_timeout() + + def pause_reading(self) -> None: + super().pause_reading() + self._drop_timeout() + + def resume_reading(self) -> None: + super().resume_reading() + self._reschedule_timeout() + + def set_exception( + self, + exc: BaseException, + exc_cause: BaseException = _EXC_SENTINEL, + ) -> None: + self._should_close = True + self._drop_timeout() + super().set_exception(exc, exc_cause) + + def set_parser(self, parser: Any, payload: Any) -> None: + # TODO: actual types are: + # parser: WebSocketReader + # payload: WebSocketDataQueue + # but they are not generi enough + # Need an ABC for both types + self._payload = payload + self._payload_parser = parser + + self._drop_timeout() + + if self._tail: + data, self._tail = self._tail, b"" + self.data_received(data) + + def set_response_params( + self, + *, + timer: Optional[BaseTimerContext] = None, + skip_payload: bool = False, + read_until_eof: bool = False, + auto_decompress: bool = True, + read_timeout: Optional[float] = None, + read_bufsize: int = 2**16, + timeout_ceil_threshold: float = 5, + max_line_size: int = 8190, + max_field_size: int = 8190, + max_headers: int = 128, + ) -> None: + self._skip_payload = skip_payload + + self._read_timeout = read_timeout + + self._timeout_ceil_threshold = timeout_ceil_threshold + + self._parser = HttpResponseParser( + self, + self._loop, + read_bufsize, + timer=timer, + payload_exception=ClientPayloadError, + response_with_body=not skip_payload, + read_until_eof=read_until_eof, + auto_decompress=auto_decompress, + max_line_size=max_line_size, + max_field_size=max_field_size, + max_headers=max_headers, + ) + + if self._tail: + data, self._tail = self._tail, b"" + self.data_received(data) + + def _drop_timeout(self) -> None: + if self._read_timeout_handle is not None: + self._read_timeout_handle.cancel() + self._read_timeout_handle = None + + def _reschedule_timeout(self) -> None: + timeout = self._read_timeout + if self._read_timeout_handle is not None: + self._read_timeout_handle.cancel() + + if timeout: + self._read_timeout_handle = self._loop.call_later( + timeout, self._on_read_timeout + ) + else: + self._read_timeout_handle = None + + def start_timeout(self) -> None: + self._reschedule_timeout() + + @property + def read_timeout(self) -> Optional[float]: + return self._read_timeout + + @read_timeout.setter + def read_timeout(self, read_timeout: Optional[float]) -> None: + self._read_timeout = read_timeout + + def _on_read_timeout(self) -> None: + exc = SocketTimeoutError("Timeout on reading data from socket") + self.set_exception(exc) + if self._payload is not None: + set_exception(self._payload, exc) + + def data_received(self, data: bytes) -> None: + self._reschedule_timeout() + + if not data: + return + + # custom payload parser - currently always WebSocketReader + if self._payload_parser is not None: + eof, tail = self._payload_parser.feed_data(data) + if eof: + self._payload = None + self._payload_parser = None + + if tail: + self.data_received(tail) + return + + if self._upgraded or self._parser is None: + # i.e. websocket connection, websocket parser is not set yet + self._tail += data + return + + # parse http messages + try: + messages, upgraded, tail = self._parser.feed_data(data) + except BaseException as underlying_exc: + if self.transport is not None: + # connection.release() could be called BEFORE + # data_received(), the transport is already + # closed in this case + self.transport.close() + # should_close is True after the call + if isinstance(underlying_exc, HttpProcessingError): + exc = HttpProcessingError( + code=underlying_exc.code, + message=underlying_exc.message, + headers=underlying_exc.headers, + ) + else: + exc = HttpProcessingError() + self.set_exception(exc, underlying_exc) + return + + self._upgraded = upgraded + + payload: Optional[StreamReader] = None + for message, payload in messages: + if message.should_close: + self._should_close = True + + self._payload = payload + + if self._skip_payload or message.code in EMPTY_BODY_STATUS_CODES: + self.feed_data((message, EMPTY_PAYLOAD), 0) + else: + self.feed_data((message, payload), 0) + + if payload is not None: + # new message(s) was processed + # register timeout handler unsubscribing + # either on end-of-stream or immediately for + # EMPTY_PAYLOAD + if payload is not EMPTY_PAYLOAD: + payload.on_eof(self._drop_timeout) + else: + self._drop_timeout() + + if upgraded and tail: + self.data_received(tail) diff --git a/venv/lib/python3.9/site-packages/aiohttp/client_reqrep.py b/venv/lib/python3.9/site-packages/aiohttp/client_reqrep.py new file mode 100644 index 0000000..a9e0795 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/client_reqrep.py @@ -0,0 +1,1536 @@ +import asyncio +import codecs +import contextlib +import functools +import io +import re +import sys +import traceback +import warnings +from collections.abc import Mapping +from hashlib import md5, sha1, sha256 +from http.cookies import Morsel, SimpleCookie +from types import MappingProxyType, TracebackType +from typing import ( + TYPE_CHECKING, + Any, + Callable, + Dict, + Iterable, + List, + Literal, + NamedTuple, + Optional, + Tuple, + Type, + Union, +) + +import attr +from multidict import CIMultiDict, CIMultiDictProxy, MultiDict, MultiDictProxy +from yarl import URL + +from . import hdrs, helpers, http, multipart, payload +from ._cookie_helpers import ( + parse_cookie_header, + parse_set_cookie_headers, + preserve_morsel_with_coded_value, +) +from .abc import AbstractStreamWriter +from .client_exceptions import ( + ClientConnectionError, + ClientOSError, + ClientResponseError, + ContentTypeError, + InvalidURL, + ServerFingerprintMismatch, +) +from .compression_utils import HAS_BROTLI, HAS_ZSTD +from .formdata import FormData +from .helpers import ( + _SENTINEL, + BaseTimerContext, + BasicAuth, + HeadersMixin, + TimerNoop, + noop, + reify, + sentinel, + set_exception, + set_result, +) +from .http import ( + SERVER_SOFTWARE, + HttpVersion, + HttpVersion10, + HttpVersion11, + StreamWriter, +) +from .streams import StreamReader +from .typedefs import ( + DEFAULT_JSON_DECODER, + JSONDecoder, + LooseCookies, + LooseHeaders, + Query, + RawHeaders, +) + +if TYPE_CHECKING: + import ssl + from ssl import SSLContext +else: + try: + import ssl + from ssl import SSLContext + except ImportError: # pragma: no cover + ssl = None # type: ignore[assignment] + SSLContext = object # type: ignore[misc,assignment] + + +__all__ = ("ClientRequest", "ClientResponse", "RequestInfo", "Fingerprint") + + +if TYPE_CHECKING: + from .client import ClientSession + from .connector import Connection + from .tracing import Trace + + +_CONNECTION_CLOSED_EXCEPTION = ClientConnectionError("Connection closed") +_CONTAINS_CONTROL_CHAR_RE = re.compile(r"[^-!#$%&'*+.^_`|~0-9a-zA-Z]") +json_re = re.compile(r"^application/(?:[\w.+-]+?\+)?json") + + +def _gen_default_accept_encoding() -> str: + encodings = [ + "gzip", + "deflate", + ] + if HAS_BROTLI: + encodings.append("br") + if HAS_ZSTD: + encodings.append("zstd") + return ", ".join(encodings) + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class ContentDisposition: + type: Optional[str] + parameters: "MappingProxyType[str, str]" + filename: Optional[str] + + +class _RequestInfo(NamedTuple): + url: URL + method: str + headers: "CIMultiDictProxy[str]" + real_url: URL + + +class RequestInfo(_RequestInfo): + + def __new__( + cls, + url: URL, + method: str, + headers: "CIMultiDictProxy[str]", + real_url: Union[URL, _SENTINEL] = sentinel, + ) -> "RequestInfo": + """Create a new RequestInfo instance. + + For backwards compatibility, the real_url parameter is optional. + """ + return tuple.__new__( + cls, (url, method, headers, url if real_url is sentinel else real_url) + ) + + +class Fingerprint: + HASHFUNC_BY_DIGESTLEN = { + 16: md5, + 20: sha1, + 32: sha256, + } + + def __init__(self, fingerprint: bytes) -> None: + digestlen = len(fingerprint) + hashfunc = self.HASHFUNC_BY_DIGESTLEN.get(digestlen) + if not hashfunc: + raise ValueError("fingerprint has invalid length") + elif hashfunc is md5 or hashfunc is sha1: + raise ValueError("md5 and sha1 are insecure and not supported. Use sha256.") + self._hashfunc = hashfunc + self._fingerprint = fingerprint + + @property + def fingerprint(self) -> bytes: + return self._fingerprint + + def check(self, transport: asyncio.Transport) -> None: + if not transport.get_extra_info("sslcontext"): + return + sslobj = transport.get_extra_info("ssl_object") + cert = sslobj.getpeercert(binary_form=True) + got = self._hashfunc(cert).digest() + if got != self._fingerprint: + host, port, *_ = transport.get_extra_info("peername") + raise ServerFingerprintMismatch(self._fingerprint, got, host, port) + + +if ssl is not None: + SSL_ALLOWED_TYPES = (ssl.SSLContext, bool, Fingerprint, type(None)) +else: # pragma: no cover + SSL_ALLOWED_TYPES = (bool, type(None)) + + +def _merge_ssl_params( + ssl: Union["SSLContext", bool, Fingerprint], + verify_ssl: Optional[bool], + ssl_context: Optional["SSLContext"], + fingerprint: Optional[bytes], +) -> Union["SSLContext", bool, Fingerprint]: + if ssl is None: + ssl = True # Double check for backwards compatibility + if verify_ssl is not None and not verify_ssl: + warnings.warn( + "verify_ssl is deprecated, use ssl=False instead", + DeprecationWarning, + stacklevel=3, + ) + if ssl is not True: + raise ValueError( + "verify_ssl, ssl_context, fingerprint and ssl " + "parameters are mutually exclusive" + ) + else: + ssl = False + if ssl_context is not None: + warnings.warn( + "ssl_context is deprecated, use ssl=context instead", + DeprecationWarning, + stacklevel=3, + ) + if ssl is not True: + raise ValueError( + "verify_ssl, ssl_context, fingerprint and ssl " + "parameters are mutually exclusive" + ) + else: + ssl = ssl_context + if fingerprint is not None: + warnings.warn( + "fingerprint is deprecated, use ssl=Fingerprint(fingerprint) instead", + DeprecationWarning, + stacklevel=3, + ) + if ssl is not True: + raise ValueError( + "verify_ssl, ssl_context, fingerprint and ssl " + "parameters are mutually exclusive" + ) + else: + ssl = Fingerprint(fingerprint) + if not isinstance(ssl, SSL_ALLOWED_TYPES): + raise TypeError( + "ssl should be SSLContext, bool, Fingerprint or None, " + "got {!r} instead.".format(ssl) + ) + return ssl + + +_SSL_SCHEMES = frozenset(("https", "wss")) + + +# ConnectionKey is a NamedTuple because it is used as a key in a dict +# and a set in the connector. Since a NamedTuple is a tuple it uses +# the fast native tuple __hash__ and __eq__ implementation in CPython. +class ConnectionKey(NamedTuple): + # the key should contain an information about used proxy / TLS + # to prevent reusing wrong connections from a pool + host: str + port: Optional[int] + is_ssl: bool + ssl: Union[SSLContext, bool, Fingerprint] + proxy: Optional[URL] + proxy_auth: Optional[BasicAuth] + proxy_headers_hash: Optional[int] # hash(CIMultiDict) + + +def _is_expected_content_type( + response_content_type: str, expected_content_type: str +) -> bool: + if expected_content_type == "application/json": + return json_re.match(response_content_type) is not None + return expected_content_type in response_content_type + + +def _warn_if_unclosed_payload(payload: payload.Payload, stacklevel: int = 2) -> None: + """Warn if the payload is not closed. + + Callers must check that the body is a Payload before calling this method. + + Args: + payload: The payload to check + stacklevel: Stack level for the warning (default 2 for direct callers) + """ + if not payload.autoclose and not payload.consumed: + warnings.warn( + "The previous request body contains unclosed resources. " + "Use await request.update_body() instead of setting request.body " + "directly to properly close resources and avoid leaks.", + ResourceWarning, + stacklevel=stacklevel, + ) + + +class ClientResponse(HeadersMixin): + + # Some of these attributes are None when created, + # but will be set by the start() method. + # As the end user will likely never see the None values, we cheat the types below. + # from the Status-Line of the response + version: Optional[HttpVersion] = None # HTTP-Version + status: int = None # type: ignore[assignment] # Status-Code + reason: Optional[str] = None # Reason-Phrase + + content: StreamReader = None # type: ignore[assignment] # Payload stream + _body: Optional[bytes] = None + _headers: CIMultiDictProxy[str] = None # type: ignore[assignment] + _history: Tuple["ClientResponse", ...] = () + _raw_headers: RawHeaders = None # type: ignore[assignment] + + _connection: Optional["Connection"] = None # current connection + _cookies: Optional[SimpleCookie] = None + _raw_cookie_headers: Optional[Tuple[str, ...]] = None + _continue: Optional["asyncio.Future[bool]"] = None + _source_traceback: Optional[traceback.StackSummary] = None + _session: Optional["ClientSession"] = None + # set up by ClientRequest after ClientResponse object creation + # post-init stage allows to not change ctor signature + _closed = True # to allow __del__ for non-initialized properly response + _released = False + _in_context = False + + _resolve_charset: Callable[["ClientResponse", bytes], str] = lambda *_: "utf-8" + + __writer: Optional["asyncio.Task[None]"] = None + + def __init__( + self, + method: str, + url: URL, + *, + writer: "Optional[asyncio.Task[None]]", + continue100: Optional["asyncio.Future[bool]"], + timer: BaseTimerContext, + request_info: RequestInfo, + traces: List["Trace"], + loop: asyncio.AbstractEventLoop, + session: "ClientSession", + ) -> None: + # URL forbids subclasses, so a simple type check is enough. + assert type(url) is URL + + self.method = method + + self._real_url = url + self._url = url.with_fragment(None) if url.raw_fragment else url + if writer is not None: + self._writer = writer + if continue100 is not None: + self._continue = continue100 + self._request_info = request_info + self._timer = timer if timer is not None else TimerNoop() + self._cache: Dict[str, Any] = {} + self._traces = traces + self._loop = loop + # Save reference to _resolve_charset, so that get_encoding() will still + # work after the response has finished reading the body. + # TODO: Fix session=None in tests (see ClientRequest.__init__). + if session is not None: + # store a reference to session #1985 + self._session = session + self._resolve_charset = session._resolve_charset + if loop.get_debug(): + self._source_traceback = traceback.extract_stack(sys._getframe(1)) + + def __reset_writer(self, _: object = None) -> None: + self.__writer = None + + @property + def _writer(self) -> Optional["asyncio.Task[None]"]: + """The writer task for streaming data. + + _writer is only provided for backwards compatibility + for subclasses that may need to access it. + """ + return self.__writer + + @_writer.setter + def _writer(self, writer: Optional["asyncio.Task[None]"]) -> None: + """Set the writer task for streaming data.""" + if self.__writer is not None: + self.__writer.remove_done_callback(self.__reset_writer) + self.__writer = writer + if writer is None: + return + if writer.done(): + # The writer is already done, so we can clear it immediately. + self.__writer = None + else: + writer.add_done_callback(self.__reset_writer) + + @property + def cookies(self) -> SimpleCookie: + if self._cookies is None: + if self._raw_cookie_headers is not None: + # Parse cookies for response.cookies (SimpleCookie for backward compatibility) + cookies = SimpleCookie() + # Use parse_set_cookie_headers for more lenient parsing that handles + # malformed cookies better than SimpleCookie.load + cookies.update(parse_set_cookie_headers(self._raw_cookie_headers)) + self._cookies = cookies + else: + self._cookies = SimpleCookie() + return self._cookies + + @cookies.setter + def cookies(self, cookies: SimpleCookie) -> None: + self._cookies = cookies + # Generate raw cookie headers from the SimpleCookie + if cookies: + self._raw_cookie_headers = tuple( + morsel.OutputString() for morsel in cookies.values() + ) + else: + self._raw_cookie_headers = None + + @reify + def url(self) -> URL: + return self._url + + @reify + def url_obj(self) -> URL: + warnings.warn("Deprecated, use .url #1654", DeprecationWarning, stacklevel=2) + return self._url + + @reify + def real_url(self) -> URL: + return self._real_url + + @reify + def host(self) -> str: + assert self._url.host is not None + return self._url.host + + @reify + def headers(self) -> "CIMultiDictProxy[str]": + return self._headers + + @reify + def raw_headers(self) -> RawHeaders: + return self._raw_headers + + @reify + def request_info(self) -> RequestInfo: + return self._request_info + + @reify + def content_disposition(self) -> Optional[ContentDisposition]: + raw = self._headers.get(hdrs.CONTENT_DISPOSITION) + if raw is None: + return None + disposition_type, params_dct = multipart.parse_content_disposition(raw) + params = MappingProxyType(params_dct) + filename = multipart.content_disposition_filename(params) + return ContentDisposition(disposition_type, params, filename) + + def __del__(self, _warnings: Any = warnings) -> None: + if self._closed: + return + + if self._connection is not None: + self._connection.release() + self._cleanup_writer() + + if self._loop.get_debug(): + kwargs = {"source": self} + _warnings.warn(f"Unclosed response {self!r}", ResourceWarning, **kwargs) + context = {"client_response": self, "message": "Unclosed response"} + if self._source_traceback: + context["source_traceback"] = self._source_traceback + self._loop.call_exception_handler(context) + + def __repr__(self) -> str: + out = io.StringIO() + ascii_encodable_url = str(self.url) + if self.reason: + ascii_encodable_reason = self.reason.encode( + "ascii", "backslashreplace" + ).decode("ascii") + else: + ascii_encodable_reason = "None" + print( + "".format( + ascii_encodable_url, self.status, ascii_encodable_reason + ), + file=out, + ) + print(self.headers, file=out) + return out.getvalue() + + @property + def connection(self) -> Optional["Connection"]: + return self._connection + + @reify + def history(self) -> Tuple["ClientResponse", ...]: + """A sequence of of responses, if redirects occurred.""" + return self._history + + @reify + def links(self) -> "MultiDictProxy[MultiDictProxy[Union[str, URL]]]": + links_str = ", ".join(self.headers.getall("link", [])) + + if not links_str: + return MultiDictProxy(MultiDict()) + + links: MultiDict[MultiDictProxy[Union[str, URL]]] = MultiDict() + + for val in re.split(r",(?=\s*<)", links_str): + match = re.match(r"\s*<(.*)>(.*)", val) + if match is None: # pragma: no cover + # the check exists to suppress mypy error + continue + url, params_str = match.groups() + params = params_str.split(";")[1:] + + link: MultiDict[Union[str, URL]] = MultiDict() + + for param in params: + match = re.match(r"^\s*(\S*)\s*=\s*(['\"]?)(.*?)(\2)\s*$", param, re.M) + if match is None: # pragma: no cover + # the check exists to suppress mypy error + continue + key, _, value, _ = match.groups() + + link.add(key, value) + + key = link.get("rel", url) + + link.add("url", self.url.join(URL(url))) + + links.add(str(key), MultiDictProxy(link)) + + return MultiDictProxy(links) + + async def start(self, connection: "Connection") -> "ClientResponse": + """Start response processing.""" + self._closed = False + self._protocol = connection.protocol + self._connection = connection + + with self._timer: + while True: + # read response + try: + protocol = self._protocol + message, payload = await protocol.read() # type: ignore[union-attr] + except http.HttpProcessingError as exc: + raise ClientResponseError( + self.request_info, + self.history, + status=exc.code, + message=exc.message, + headers=exc.headers, + ) from exc + + if message.code < 100 or message.code > 199 or message.code == 101: + break + + if self._continue is not None: + set_result(self._continue, True) + self._continue = None + + # payload eof handler + payload.on_eof(self._response_eof) + + # response status + self.version = message.version + self.status = message.code + self.reason = message.reason + + # headers + self._headers = message.headers # type is CIMultiDictProxy + self._raw_headers = message.raw_headers # type is Tuple[bytes, bytes] + + # payload + self.content = payload + + # cookies + if cookie_hdrs := self.headers.getall(hdrs.SET_COOKIE, ()): + # Store raw cookie headers for CookieJar + self._raw_cookie_headers = tuple(cookie_hdrs) + return self + + def _response_eof(self) -> None: + if self._closed: + return + + # protocol could be None because connection could be detached + protocol = self._connection and self._connection.protocol + if protocol is not None and protocol.upgraded: + return + + self._closed = True + self._cleanup_writer() + self._release_connection() + + @property + def closed(self) -> bool: + return self._closed + + def close(self) -> None: + if not self._released: + self._notify_content() + + self._closed = True + if self._loop is None or self._loop.is_closed(): + return + + self._cleanup_writer() + if self._connection is not None: + self._connection.close() + self._connection = None + + def release(self) -> Any: + if not self._released: + self._notify_content() + + self._closed = True + + self._cleanup_writer() + self._release_connection() + return noop() + + @property + def ok(self) -> bool: + """Returns ``True`` if ``status`` is less than ``400``, ``False`` if not. + + This is **not** a check for ``200 OK`` but a check that the response + status is under 400. + """ + return 400 > self.status + + def raise_for_status(self) -> None: + if not self.ok: + # reason should always be not None for a started response + assert self.reason is not None + + # If we're in a context we can rely on __aexit__() to release as the + # exception propagates. + if not self._in_context: + self.release() + + raise ClientResponseError( + self.request_info, + self.history, + status=self.status, + message=self.reason, + headers=self.headers, + ) + + def _release_connection(self) -> None: + if self._connection is not None: + if self.__writer is None: + self._connection.release() + self._connection = None + else: + self.__writer.add_done_callback(lambda f: self._release_connection()) + + async def _wait_released(self) -> None: + if self.__writer is not None: + try: + await self.__writer + except asyncio.CancelledError: + if ( + sys.version_info >= (3, 11) + and (task := asyncio.current_task()) + and task.cancelling() + ): + raise + self._release_connection() + + def _cleanup_writer(self) -> None: + if self.__writer is not None: + self.__writer.cancel() + self._session = None + + def _notify_content(self) -> None: + content = self.content + if content and content.exception() is None: + set_exception(content, _CONNECTION_CLOSED_EXCEPTION) + self._released = True + + async def wait_for_close(self) -> None: + if self.__writer is not None: + try: + await self.__writer + except asyncio.CancelledError: + if ( + sys.version_info >= (3, 11) + and (task := asyncio.current_task()) + and task.cancelling() + ): + raise + self.release() + + async def read(self) -> bytes: + """Read response payload.""" + if self._body is None: + try: + self._body = await self.content.read() + for trace in self._traces: + await trace.send_response_chunk_received( + self.method, self.url, self._body + ) + except BaseException: + self.close() + raise + elif self._released: # Response explicitly released + raise ClientConnectionError("Connection closed") + + protocol = self._connection and self._connection.protocol + if protocol is None or not protocol.upgraded: + await self._wait_released() # Underlying connection released + return self._body + + def get_encoding(self) -> str: + ctype = self.headers.get(hdrs.CONTENT_TYPE, "").lower() + mimetype = helpers.parse_mimetype(ctype) + + encoding = mimetype.parameters.get("charset") + if encoding: + with contextlib.suppress(LookupError, ValueError): + return codecs.lookup(encoding).name + + if mimetype.type == "application" and ( + mimetype.subtype == "json" or mimetype.subtype == "rdap" + ): + # RFC 7159 states that the default encoding is UTF-8. + # RFC 7483 defines application/rdap+json + return "utf-8" + + if self._body is None: + raise RuntimeError( + "Cannot compute fallback encoding of a not yet read body" + ) + + return self._resolve_charset(self, self._body) + + async def text(self, encoding: Optional[str] = None, errors: str = "strict") -> str: + """Read response payload and decode.""" + if self._body is None: + await self.read() + + if encoding is None: + encoding = self.get_encoding() + + return self._body.decode(encoding, errors=errors) # type: ignore[union-attr] + + async def json( + self, + *, + encoding: Optional[str] = None, + loads: JSONDecoder = DEFAULT_JSON_DECODER, + content_type: Optional[str] = "application/json", + ) -> Any: + """Read and decodes JSON response.""" + if self._body is None: + await self.read() + + if content_type: + ctype = self.headers.get(hdrs.CONTENT_TYPE, "").lower() + if not _is_expected_content_type(ctype, content_type): + raise ContentTypeError( + self.request_info, + self.history, + status=self.status, + message=( + "Attempt to decode JSON with unexpected mimetype: %s" % ctype + ), + headers=self.headers, + ) + + stripped = self._body.strip() # type: ignore[union-attr] + if not stripped: + return None + + if encoding is None: + encoding = self.get_encoding() + + return loads(stripped.decode(encoding)) + + async def __aenter__(self) -> "ClientResponse": + self._in_context = True + return self + + async def __aexit__( + self, + exc_type: Optional[Type[BaseException]], + exc_val: Optional[BaseException], + exc_tb: Optional[TracebackType], + ) -> None: + self._in_context = False + # similar to _RequestContextManager, we do not need to check + # for exceptions, response object can close connection + # if state is broken + self.release() + await self.wait_for_close() + + +class ClientRequest: + GET_METHODS = { + hdrs.METH_GET, + hdrs.METH_HEAD, + hdrs.METH_OPTIONS, + hdrs.METH_TRACE, + } + POST_METHODS = {hdrs.METH_PATCH, hdrs.METH_POST, hdrs.METH_PUT} + ALL_METHODS = GET_METHODS.union(POST_METHODS).union({hdrs.METH_DELETE}) + + DEFAULT_HEADERS = { + hdrs.ACCEPT: "*/*", + hdrs.ACCEPT_ENCODING: _gen_default_accept_encoding(), + } + + # Type of body depends on PAYLOAD_REGISTRY, which is dynamic. + _body: Union[None, payload.Payload] = None + auth = None + response = None + + __writer: Optional["asyncio.Task[None]"] = None # async task for streaming data + + # These class defaults help create_autospec() work correctly. + # If autospec is improved in future, maybe these can be removed. + url = URL() + method = "GET" + + _continue = None # waiter future for '100 Continue' response + + _skip_auto_headers: Optional["CIMultiDict[None]"] = None + + # N.B. + # Adding __del__ method with self._writer closing doesn't make sense + # because _writer is instance method, thus it keeps a reference to self. + # Until writer has finished finalizer will not be called. + + def __init__( + self, + method: str, + url: URL, + *, + params: Query = None, + headers: Optional[LooseHeaders] = None, + skip_auto_headers: Optional[Iterable[str]] = None, + data: Any = None, + cookies: Optional[LooseCookies] = None, + auth: Optional[BasicAuth] = None, + version: http.HttpVersion = http.HttpVersion11, + compress: Union[str, bool, None] = None, + chunked: Optional[bool] = None, + expect100: bool = False, + loop: Optional[asyncio.AbstractEventLoop] = None, + response_class: Optional[Type["ClientResponse"]] = None, + proxy: Optional[URL] = None, + proxy_auth: Optional[BasicAuth] = None, + timer: Optional[BaseTimerContext] = None, + session: Optional["ClientSession"] = None, + ssl: Union[SSLContext, bool, Fingerprint] = True, + proxy_headers: Optional[LooseHeaders] = None, + traces: Optional[List["Trace"]] = None, + trust_env: bool = False, + server_hostname: Optional[str] = None, + ): + if loop is None: + loop = asyncio.get_event_loop() + if match := _CONTAINS_CONTROL_CHAR_RE.search(method): + raise ValueError( + f"Method cannot contain non-token characters {method!r} " + f"(found at least {match.group()!r})" + ) + # URL forbids subclasses, so a simple type check is enough. + assert type(url) is URL, url + if proxy is not None: + assert type(proxy) is URL, proxy + # FIXME: session is None in tests only, need to fix tests + # assert session is not None + if TYPE_CHECKING: + assert session is not None + self._session = session + if params: + url = url.extend_query(params) + self.original_url = url + self.url = url.with_fragment(None) if url.raw_fragment else url + self.method = method.upper() + self.chunked = chunked + self.compress = compress + self.loop = loop + self.length = None + if response_class is None: + real_response_class = ClientResponse + else: + real_response_class = response_class + self.response_class: Type[ClientResponse] = real_response_class + self._timer = timer if timer is not None else TimerNoop() + self._ssl = ssl if ssl is not None else True + self.server_hostname = server_hostname + + if loop.get_debug(): + self._source_traceback = traceback.extract_stack(sys._getframe(1)) + + self.update_version(version) + self.update_host(url) + self.update_headers(headers) + self.update_auto_headers(skip_auto_headers) + self.update_cookies(cookies) + self.update_content_encoding(data) + self.update_auth(auth, trust_env) + self.update_proxy(proxy, proxy_auth, proxy_headers) + + self.update_body_from_data(data) + if data is not None or self.method not in self.GET_METHODS: + self.update_transfer_encoding() + self.update_expect_continue(expect100) + self._traces = [] if traces is None else traces + + def __reset_writer(self, _: object = None) -> None: + self.__writer = None + + def _get_content_length(self) -> Optional[int]: + """Extract and validate Content-Length header value. + + Returns parsed Content-Length value or None if not set. + Raises ValueError if header exists but cannot be parsed as an integer. + """ + if hdrs.CONTENT_LENGTH not in self.headers: + return None + + content_length_hdr = self.headers[hdrs.CONTENT_LENGTH] + try: + return int(content_length_hdr) + except ValueError: + raise ValueError( + f"Invalid Content-Length header: {content_length_hdr}" + ) from None + + @property + def skip_auto_headers(self) -> CIMultiDict[None]: + return self._skip_auto_headers or CIMultiDict() + + @property + def _writer(self) -> Optional["asyncio.Task[None]"]: + return self.__writer + + @_writer.setter + def _writer(self, writer: "asyncio.Task[None]") -> None: + if self.__writer is not None: + self.__writer.remove_done_callback(self.__reset_writer) + self.__writer = writer + writer.add_done_callback(self.__reset_writer) + + def is_ssl(self) -> bool: + return self.url.scheme in _SSL_SCHEMES + + @property + def ssl(self) -> Union["SSLContext", bool, Fingerprint]: + return self._ssl + + @property + def connection_key(self) -> ConnectionKey: + if proxy_headers := self.proxy_headers: + h: Optional[int] = hash(tuple(proxy_headers.items())) + else: + h = None + url = self.url + return tuple.__new__( + ConnectionKey, + ( + url.raw_host or "", + url.port, + url.scheme in _SSL_SCHEMES, + self._ssl, + self.proxy, + self.proxy_auth, + h, + ), + ) + + @property + def host(self) -> str: + ret = self.url.raw_host + assert ret is not None + return ret + + @property + def port(self) -> Optional[int]: + return self.url.port + + @property + def body(self) -> Union[payload.Payload, Literal[b""]]: + """Request body.""" + # empty body is represented as bytes for backwards compatibility + return self._body or b"" + + @body.setter + def body(self, value: Any) -> None: + """Set request body with warning for non-autoclose payloads. + + WARNING: This setter must be called from within an event loop and is not + thread-safe. Setting body outside of an event loop may raise RuntimeError + when closing file-based payloads. + + DEPRECATED: Direct assignment to body is deprecated and will be removed + in a future version. Use await update_body() instead for proper resource + management. + """ + # Close existing payload if present + if self._body is not None: + # Warn if the payload needs manual closing + # stacklevel=3: user code -> body setter -> _warn_if_unclosed_payload + _warn_if_unclosed_payload(self._body, stacklevel=3) + # NOTE: In the future, when we remove sync close support, + # this setter will need to be removed and only the async + # update_body() method will be available. For now, we call + # _close() for backwards compatibility. + self._body._close() + self._update_body(value) + + @property + def request_info(self) -> RequestInfo: + headers: CIMultiDictProxy[str] = CIMultiDictProxy(self.headers) + # These are created on every request, so we use a NamedTuple + # for performance reasons. We don't use the RequestInfo.__new__ + # method because it has a different signature which is provided + # for backwards compatibility only. + return tuple.__new__( + RequestInfo, (self.url, self.method, headers, self.original_url) + ) + + @property + def session(self) -> "ClientSession": + """Return the ClientSession instance. + + This property provides access to the ClientSession that initiated + this request, allowing middleware to make additional requests + using the same session. + """ + return self._session + + def update_host(self, url: URL) -> None: + """Update destination host, port and connection type (ssl).""" + # get host/port + if not url.raw_host: + raise InvalidURL(url) + + # basic auth info + if url.raw_user or url.raw_password: + self.auth = helpers.BasicAuth(url.user or "", url.password or "") + + def update_version(self, version: Union[http.HttpVersion, str]) -> None: + """Convert request version to two elements tuple. + + parser HTTP version '1.1' => (1, 1) + """ + if isinstance(version, str): + v = [part.strip() for part in version.split(".", 1)] + try: + version = http.HttpVersion(int(v[0]), int(v[1])) + except ValueError: + raise ValueError( + f"Can not parse http version number: {version}" + ) from None + self.version = version + + def update_headers(self, headers: Optional[LooseHeaders]) -> None: + """Update request headers.""" + self.headers: CIMultiDict[str] = CIMultiDict() + + # Build the host header + host = self.url.host_port_subcomponent + + # host_port_subcomponent is None when the URL is a relative URL. + # but we know we do not have a relative URL here. + assert host is not None + self.headers[hdrs.HOST] = host + + if not headers: + return + + if isinstance(headers, (dict, MultiDictProxy, MultiDict)): + headers = headers.items() + + for key, value in headers: # type: ignore[misc] + # A special case for Host header + if key in hdrs.HOST_ALL: + self.headers[key] = value + else: + self.headers.add(key, value) + + def update_auto_headers(self, skip_auto_headers: Optional[Iterable[str]]) -> None: + if skip_auto_headers is not None: + self._skip_auto_headers = CIMultiDict( + (hdr, None) for hdr in sorted(skip_auto_headers) + ) + used_headers = self.headers.copy() + used_headers.extend(self._skip_auto_headers) # type: ignore[arg-type] + else: + # Fast path when there are no headers to skip + # which is the most common case. + used_headers = self.headers + + for hdr, val in self.DEFAULT_HEADERS.items(): + if hdr not in used_headers: + self.headers[hdr] = val + + if hdrs.USER_AGENT not in used_headers: + self.headers[hdrs.USER_AGENT] = SERVER_SOFTWARE + + def update_cookies(self, cookies: Optional[LooseCookies]) -> None: + """Update request cookies header.""" + if not cookies: + return + + c = SimpleCookie() + if hdrs.COOKIE in self.headers: + # parse_cookie_header for RFC 6265 compliant Cookie header parsing + c.update(parse_cookie_header(self.headers.get(hdrs.COOKIE, ""))) + del self.headers[hdrs.COOKIE] + + if isinstance(cookies, Mapping): + iter_cookies = cookies.items() + else: + iter_cookies = cookies # type: ignore[assignment] + for name, value in iter_cookies: + if isinstance(value, Morsel): + # Use helper to preserve coded_value exactly as sent by server + c[name] = preserve_morsel_with_coded_value(value) + else: + c[name] = value # type: ignore[assignment] + + self.headers[hdrs.COOKIE] = c.output(header="", sep=";").strip() + + def update_content_encoding(self, data: Any) -> None: + """Set request content encoding.""" + if not data: + # Don't compress an empty body. + self.compress = None + return + + if self.headers.get(hdrs.CONTENT_ENCODING): + if self.compress: + raise ValueError( + "compress can not be set if Content-Encoding header is set" + ) + elif self.compress: + if not isinstance(self.compress, str): + self.compress = "deflate" + self.headers[hdrs.CONTENT_ENCODING] = self.compress + self.chunked = True # enable chunked, no need to deal with length + + def update_transfer_encoding(self) -> None: + """Analyze transfer-encoding header.""" + te = self.headers.get(hdrs.TRANSFER_ENCODING, "").lower() + + if "chunked" in te: + if self.chunked: + raise ValueError( + "chunked can not be set " + 'if "Transfer-Encoding: chunked" header is set' + ) + + elif self.chunked: + if hdrs.CONTENT_LENGTH in self.headers: + raise ValueError( + "chunked can not be set if Content-Length header is set" + ) + + self.headers[hdrs.TRANSFER_ENCODING] = "chunked" + + def update_auth(self, auth: Optional[BasicAuth], trust_env: bool = False) -> None: + """Set basic auth.""" + if auth is None: + auth = self.auth + if auth is None: + return + + if not isinstance(auth, helpers.BasicAuth): + raise TypeError("BasicAuth() tuple is required instead") + + self.headers[hdrs.AUTHORIZATION] = auth.encode() + + def update_body_from_data(self, body: Any, _stacklevel: int = 3) -> None: + """Update request body from data.""" + if self._body is not None: + _warn_if_unclosed_payload(self._body, stacklevel=_stacklevel) + + if body is None: + self._body = None + # Set Content-Length to 0 when body is None for methods that expect a body + if ( + self.method not in self.GET_METHODS + and not self.chunked + and hdrs.CONTENT_LENGTH not in self.headers + ): + self.headers[hdrs.CONTENT_LENGTH] = "0" + return + + # FormData + maybe_payload = body() if isinstance(body, FormData) else body + + try: + body_payload = payload.PAYLOAD_REGISTRY.get(maybe_payload, disposition=None) + except payload.LookupError: + body_payload = FormData(maybe_payload)() # type: ignore[arg-type] + + self._body = body_payload + # enable chunked encoding if needed + if not self.chunked and hdrs.CONTENT_LENGTH not in self.headers: + if (size := body_payload.size) is not None: + self.headers[hdrs.CONTENT_LENGTH] = str(size) + else: + self.chunked = True + + # copy payload headers + assert body_payload.headers + headers = self.headers + skip_headers = self._skip_auto_headers + for key, value in body_payload.headers.items(): + if key in headers or (skip_headers is not None and key in skip_headers): + continue + headers[key] = value + + def _update_body(self, body: Any) -> None: + """Update request body after its already been set.""" + # Remove existing Content-Length header since body is changing + if hdrs.CONTENT_LENGTH in self.headers: + del self.headers[hdrs.CONTENT_LENGTH] + + # Remove existing Transfer-Encoding header to avoid conflicts + if self.chunked and hdrs.TRANSFER_ENCODING in self.headers: + del self.headers[hdrs.TRANSFER_ENCODING] + + # Now update the body using the existing method + # Called from _update_body, add 1 to stacklevel from caller + self.update_body_from_data(body, _stacklevel=4) + + # Update transfer encoding headers if needed (same logic as __init__) + if body is not None or self.method not in self.GET_METHODS: + self.update_transfer_encoding() + + async def update_body(self, body: Any) -> None: + """ + Update request body and close previous payload if needed. + + This method safely updates the request body by first closing any existing + payload to prevent resource leaks, then setting the new body. + + IMPORTANT: Always use this method instead of setting request.body directly. + Direct assignment to request.body will leak resources if the previous body + contains file handles, streams, or other resources that need cleanup. + + Args: + body: The new body content. Can be: + - bytes/bytearray: Raw binary data + - str: Text data (will be encoded using charset from Content-Type) + - FormData: Form data that will be encoded as multipart/form-data + - Payload: A pre-configured payload object + - AsyncIterable: An async iterable of bytes chunks + - File-like object: Will be read and sent as binary data + - None: Clears the body + + Usage: + # CORRECT: Use update_body + await request.update_body(b"new request data") + + # WRONG: Don't set body directly + # request.body = b"new request data" # This will leak resources! + + # Update with form data + form_data = FormData() + form_data.add_field('field', 'value') + await request.update_body(form_data) + + # Clear body + await request.update_body(None) + + Note: + This method is async because it may need to close file handles or + other resources associated with the previous payload. Always await + this method to ensure proper cleanup. + + Warning: + Setting request.body directly is highly discouraged and can lead to: + - Resource leaks (unclosed file handles, streams) + - Memory leaks (unreleased buffers) + - Unexpected behavior with streaming payloads + + It is not recommended to change the payload type in middleware. If the + body was already set (e.g., as bytes), it's best to keep the same type + rather than converting it (e.g., to str) as this may result in unexpected + behavior. + + See Also: + - update_body_from_data: Synchronous body update without cleanup + - body property: Direct body access (STRONGLY DISCOURAGED) + + """ + # Close existing payload if it exists and needs closing + if self._body is not None: + await self._body.close() + self._update_body(body) + + def update_expect_continue(self, expect: bool = False) -> None: + if expect: + self.headers[hdrs.EXPECT] = "100-continue" + elif ( + hdrs.EXPECT in self.headers + and self.headers[hdrs.EXPECT].lower() == "100-continue" + ): + expect = True + + if expect: + self._continue = self.loop.create_future() + + def update_proxy( + self, + proxy: Optional[URL], + proxy_auth: Optional[BasicAuth], + proxy_headers: Optional[LooseHeaders], + ) -> None: + self.proxy = proxy + if proxy is None: + self.proxy_auth = None + self.proxy_headers = None + return + + if proxy_auth and not isinstance(proxy_auth, helpers.BasicAuth): + raise ValueError("proxy_auth must be None or BasicAuth() tuple") + self.proxy_auth = proxy_auth + + if proxy_headers is not None and not isinstance( + proxy_headers, (MultiDict, MultiDictProxy) + ): + proxy_headers = CIMultiDict(proxy_headers) + self.proxy_headers = proxy_headers + + async def write_bytes( + self, + writer: AbstractStreamWriter, + conn: "Connection", + content_length: Optional[int] = None, + ) -> None: + """ + Write the request body to the connection stream. + + This method handles writing different types of request bodies: + 1. Payload objects (using their specialized write_with_length method) + 2. Bytes/bytearray objects + 3. Iterable body content + + Args: + writer: The stream writer to write the body to + conn: The connection being used for this request + content_length: Optional maximum number of bytes to write from the body + (None means write the entire body) + + The method properly handles: + - Waiting for 100-Continue responses if required + - Content length constraints for chunked encoding + - Error handling for network issues, cancellation, and other exceptions + - Signaling EOF and timeout management + + Raises: + ClientOSError: When there's an OS-level error writing the body + ClientConnectionError: When there's a general connection error + asyncio.CancelledError: When the operation is cancelled + + """ + # 100 response + if self._continue is not None: + # Force headers to be sent before waiting for 100-continue + writer.send_headers() + await writer.drain() + await self._continue + + protocol = conn.protocol + assert protocol is not None + try: + # This should be a rare case but the + # self._body can be set to None while + # the task is being started or we wait above + # for the 100-continue response. + # The more likely case is we have an empty + # payload, but 100-continue is still expected. + if self._body is not None: + await self._body.write_with_length(writer, content_length) + except OSError as underlying_exc: + reraised_exc = underlying_exc + + # Distinguish between timeout and other OS errors for better error reporting + exc_is_not_timeout = underlying_exc.errno is not None or not isinstance( + underlying_exc, asyncio.TimeoutError + ) + if exc_is_not_timeout: + reraised_exc = ClientOSError( + underlying_exc.errno, + f"Can not write request body for {self.url !s}", + ) + + set_exception(protocol, reraised_exc, underlying_exc) + except asyncio.CancelledError: + # Body hasn't been fully sent, so connection can't be reused + conn.close() + raise + except Exception as underlying_exc: + set_exception( + protocol, + ClientConnectionError( + "Failed to send bytes into the underlying connection " + f"{conn !s}: {underlying_exc!r}", + ), + underlying_exc, + ) + else: + # Successfully wrote the body, signal EOF and start response timeout + await writer.write_eof() + protocol.start_timeout() + + async def send(self, conn: "Connection") -> "ClientResponse": + # Specify request target: + # - CONNECT request must send authority form URI + # - not CONNECT proxy must send absolute form URI + # - most common is origin form URI + if self.method == hdrs.METH_CONNECT: + connect_host = self.url.host_subcomponent + assert connect_host is not None + path = f"{connect_host}:{self.url.port}" + elif self.proxy and not self.is_ssl(): + path = str(self.url) + else: + path = self.url.raw_path_qs + + protocol = conn.protocol + assert protocol is not None + writer = StreamWriter( + protocol, + self.loop, + on_chunk_sent=( + functools.partial(self._on_chunk_request_sent, self.method, self.url) + if self._traces + else None + ), + on_headers_sent=( + functools.partial(self._on_headers_request_sent, self.method, self.url) + if self._traces + else None + ), + ) + + if self.compress: + writer.enable_compression(self.compress) # type: ignore[arg-type] + + if self.chunked is not None: + writer.enable_chunking() + + # set default content-type + if ( + self.method in self.POST_METHODS + and ( + self._skip_auto_headers is None + or hdrs.CONTENT_TYPE not in self._skip_auto_headers + ) + and hdrs.CONTENT_TYPE not in self.headers + ): + self.headers[hdrs.CONTENT_TYPE] = "application/octet-stream" + + v = self.version + if hdrs.CONNECTION not in self.headers: + if conn._connector.force_close: + if v == HttpVersion11: + self.headers[hdrs.CONNECTION] = "close" + elif v == HttpVersion10: + self.headers[hdrs.CONNECTION] = "keep-alive" + + # status + headers + status_line = f"{self.method} {path} HTTP/{v.major}.{v.minor}" + + # Buffer headers for potential coalescing with body + await writer.write_headers(status_line, self.headers) + + task: Optional["asyncio.Task[None]"] + if self._body or self._continue is not None or protocol.writing_paused: + coro = self.write_bytes(writer, conn, self._get_content_length()) + if sys.version_info >= (3, 12): + # Optimization for Python 3.12, try to write + # bytes immediately to avoid having to schedule + # the task on the event loop. + task = asyncio.Task(coro, loop=self.loop, eager_start=True) + else: + task = self.loop.create_task(coro) + if task.done(): + task = None + else: + self._writer = task + else: + # We have nothing to write because + # - there is no body + # - the protocol does not have writing paused + # - we are not waiting for a 100-continue response + protocol.start_timeout() + writer.set_eof() + task = None + response_class = self.response_class + assert response_class is not None + self.response = response_class( + self.method, + self.original_url, + writer=task, + continue100=self._continue, + timer=self._timer, + request_info=self.request_info, + traces=self._traces, + loop=self.loop, + session=self._session, + ) + return self.response + + async def close(self) -> None: + if self.__writer is not None: + try: + await self.__writer + except asyncio.CancelledError: + if ( + sys.version_info >= (3, 11) + and (task := asyncio.current_task()) + and task.cancelling() + ): + raise + + def terminate(self) -> None: + if self.__writer is not None: + if not self.loop.is_closed(): + self.__writer.cancel() + self.__writer.remove_done_callback(self.__reset_writer) + self.__writer = None + + async def _on_chunk_request_sent(self, method: str, url: URL, chunk: bytes) -> None: + for trace in self._traces: + await trace.send_request_chunk_sent(method, url, chunk) + + async def _on_headers_request_sent( + self, method: str, url: URL, headers: "CIMultiDict[str]" + ) -> None: + for trace in self._traces: + await trace.send_request_headers(method, url, headers) diff --git a/venv/lib/python3.9/site-packages/aiohttp/client_ws.py b/venv/lib/python3.9/site-packages/aiohttp/client_ws.py new file mode 100644 index 0000000..daa57d1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/client_ws.py @@ -0,0 +1,428 @@ +"""WebSocket client for asyncio.""" + +import asyncio +import sys +from types import TracebackType +from typing import Any, Optional, Type, cast + +import attr + +from ._websocket.reader import WebSocketDataQueue +from .client_exceptions import ClientError, ServerTimeoutError, WSMessageTypeError +from .client_reqrep import ClientResponse +from .helpers import calculate_timeout_when, set_result +from .http import ( + WS_CLOSED_MESSAGE, + WS_CLOSING_MESSAGE, + WebSocketError, + WSCloseCode, + WSMessage, + WSMsgType, +) +from .http_websocket import _INTERNAL_RECEIVE_TYPES, WebSocketWriter +from .streams import EofStream +from .typedefs import ( + DEFAULT_JSON_DECODER, + DEFAULT_JSON_ENCODER, + JSONDecoder, + JSONEncoder, +) + +if sys.version_info >= (3, 11): + import asyncio as async_timeout +else: + import async_timeout + + +@attr.s(frozen=True, slots=True) +class ClientWSTimeout: + ws_receive = attr.ib(type=Optional[float], default=None) + ws_close = attr.ib(type=Optional[float], default=None) + + +DEFAULT_WS_CLIENT_TIMEOUT = ClientWSTimeout(ws_receive=None, ws_close=10.0) + + +class ClientWebSocketResponse: + def __init__( + self, + reader: WebSocketDataQueue, + writer: WebSocketWriter, + protocol: Optional[str], + response: ClientResponse, + timeout: ClientWSTimeout, + autoclose: bool, + autoping: bool, + loop: asyncio.AbstractEventLoop, + *, + heartbeat: Optional[float] = None, + compress: int = 0, + client_notakeover: bool = False, + ) -> None: + self._response = response + self._conn = response.connection + + self._writer = writer + self._reader = reader + self._protocol = protocol + self._closed = False + self._closing = False + self._close_code: Optional[int] = None + self._timeout = timeout + self._autoclose = autoclose + self._autoping = autoping + self._heartbeat = heartbeat + self._heartbeat_cb: Optional[asyncio.TimerHandle] = None + self._heartbeat_when: float = 0.0 + if heartbeat is not None: + self._pong_heartbeat = heartbeat / 2.0 + self._pong_response_cb: Optional[asyncio.TimerHandle] = None + self._loop = loop + self._waiting: bool = False + self._close_wait: Optional[asyncio.Future[None]] = None + self._exception: Optional[BaseException] = None + self._compress = compress + self._client_notakeover = client_notakeover + self._ping_task: Optional[asyncio.Task[None]] = None + + self._reset_heartbeat() + + def _cancel_heartbeat(self) -> None: + self._cancel_pong_response_cb() + if self._heartbeat_cb is not None: + self._heartbeat_cb.cancel() + self._heartbeat_cb = None + if self._ping_task is not None: + self._ping_task.cancel() + self._ping_task = None + + def _cancel_pong_response_cb(self) -> None: + if self._pong_response_cb is not None: + self._pong_response_cb.cancel() + self._pong_response_cb = None + + def _reset_heartbeat(self) -> None: + if self._heartbeat is None: + return + self._cancel_pong_response_cb() + loop = self._loop + assert loop is not None + conn = self._conn + timeout_ceil_threshold = ( + conn._connector._timeout_ceil_threshold if conn is not None else 5 + ) + now = loop.time() + when = calculate_timeout_when(now, self._heartbeat, timeout_ceil_threshold) + self._heartbeat_when = when + if self._heartbeat_cb is None: + # We do not cancel the previous heartbeat_cb here because + # it generates a significant amount of TimerHandle churn + # which causes asyncio to rebuild the heap frequently. + # Instead _send_heartbeat() will reschedule the next + # heartbeat if it fires too early. + self._heartbeat_cb = loop.call_at(when, self._send_heartbeat) + + def _send_heartbeat(self) -> None: + self._heartbeat_cb = None + loop = self._loop + now = loop.time() + if now < self._heartbeat_when: + # Heartbeat fired too early, reschedule + self._heartbeat_cb = loop.call_at( + self._heartbeat_when, self._send_heartbeat + ) + return + + conn = self._conn + timeout_ceil_threshold = ( + conn._connector._timeout_ceil_threshold if conn is not None else 5 + ) + when = calculate_timeout_when(now, self._pong_heartbeat, timeout_ceil_threshold) + self._cancel_pong_response_cb() + self._pong_response_cb = loop.call_at(when, self._pong_not_received) + + coro = self._writer.send_frame(b"", WSMsgType.PING) + if sys.version_info >= (3, 12): + # Optimization for Python 3.12, try to send the ping + # immediately to avoid having to schedule + # the task on the event loop. + ping_task = asyncio.Task(coro, loop=loop, eager_start=True) + else: + ping_task = loop.create_task(coro) + + if not ping_task.done(): + self._ping_task = ping_task + ping_task.add_done_callback(self._ping_task_done) + else: + self._ping_task_done(ping_task) + + def _ping_task_done(self, task: "asyncio.Task[None]") -> None: + """Callback for when the ping task completes.""" + if not task.cancelled() and (exc := task.exception()): + self._handle_ping_pong_exception(exc) + self._ping_task = None + + def _pong_not_received(self) -> None: + self._handle_ping_pong_exception( + ServerTimeoutError(f"No PONG received after {self._pong_heartbeat} seconds") + ) + + def _handle_ping_pong_exception(self, exc: BaseException) -> None: + """Handle exceptions raised during ping/pong processing.""" + if self._closed: + return + self._set_closed() + self._close_code = WSCloseCode.ABNORMAL_CLOSURE + self._exception = exc + self._response.close() + if self._waiting and not self._closing: + self._reader.feed_data(WSMessage(WSMsgType.ERROR, exc, None), 0) + + def _set_closed(self) -> None: + """Set the connection to closed. + + Cancel any heartbeat timers and set the closed flag. + """ + self._closed = True + self._cancel_heartbeat() + + def _set_closing(self) -> None: + """Set the connection to closing. + + Cancel any heartbeat timers and set the closing flag. + """ + self._closing = True + self._cancel_heartbeat() + + @property + def closed(self) -> bool: + return self._closed + + @property + def close_code(self) -> Optional[int]: + return self._close_code + + @property + def protocol(self) -> Optional[str]: + return self._protocol + + @property + def compress(self) -> int: + return self._compress + + @property + def client_notakeover(self) -> bool: + return self._client_notakeover + + def get_extra_info(self, name: str, default: Any = None) -> Any: + """extra info from connection transport""" + conn = self._response.connection + if conn is None: + return default + transport = conn.transport + if transport is None: + return default + return transport.get_extra_info(name, default) + + def exception(self) -> Optional[BaseException]: + return self._exception + + async def ping(self, message: bytes = b"") -> None: + await self._writer.send_frame(message, WSMsgType.PING) + + async def pong(self, message: bytes = b"") -> None: + await self._writer.send_frame(message, WSMsgType.PONG) + + async def send_frame( + self, message: bytes, opcode: WSMsgType, compress: Optional[int] = None + ) -> None: + """Send a frame over the websocket.""" + await self._writer.send_frame(message, opcode, compress) + + async def send_str(self, data: str, compress: Optional[int] = None) -> None: + if not isinstance(data, str): + raise TypeError("data argument must be str (%r)" % type(data)) + await self._writer.send_frame( + data.encode("utf-8"), WSMsgType.TEXT, compress=compress + ) + + async def send_bytes(self, data: bytes, compress: Optional[int] = None) -> None: + if not isinstance(data, (bytes, bytearray, memoryview)): + raise TypeError("data argument must be byte-ish (%r)" % type(data)) + await self._writer.send_frame(data, WSMsgType.BINARY, compress=compress) + + async def send_json( + self, + data: Any, + compress: Optional[int] = None, + *, + dumps: JSONEncoder = DEFAULT_JSON_ENCODER, + ) -> None: + await self.send_str(dumps(data), compress=compress) + + async def close(self, *, code: int = WSCloseCode.OK, message: bytes = b"") -> bool: + # we need to break `receive()` cycle first, + # `close()` may be called from different task + if self._waiting and not self._closing: + assert self._loop is not None + self._close_wait = self._loop.create_future() + self._set_closing() + self._reader.feed_data(WS_CLOSING_MESSAGE, 0) + await self._close_wait + + if self._closed: + return False + + self._set_closed() + try: + await self._writer.close(code, message) + except asyncio.CancelledError: + self._close_code = WSCloseCode.ABNORMAL_CLOSURE + self._response.close() + raise + except Exception as exc: + self._close_code = WSCloseCode.ABNORMAL_CLOSURE + self._exception = exc + self._response.close() + return True + + if self._close_code: + self._response.close() + return True + + while True: + try: + async with async_timeout.timeout(self._timeout.ws_close): + msg = await self._reader.read() + except asyncio.CancelledError: + self._close_code = WSCloseCode.ABNORMAL_CLOSURE + self._response.close() + raise + except Exception as exc: + self._close_code = WSCloseCode.ABNORMAL_CLOSURE + self._exception = exc + self._response.close() + return True + + if msg.type is WSMsgType.CLOSE: + self._close_code = msg.data + self._response.close() + return True + + async def receive(self, timeout: Optional[float] = None) -> WSMessage: + receive_timeout = timeout or self._timeout.ws_receive + + while True: + if self._waiting: + raise RuntimeError("Concurrent call to receive() is not allowed") + + if self._closed: + return WS_CLOSED_MESSAGE + elif self._closing: + await self.close() + return WS_CLOSED_MESSAGE + + try: + self._waiting = True + try: + if receive_timeout: + # Entering the context manager and creating + # Timeout() object can take almost 50% of the + # run time in this loop so we avoid it if + # there is no read timeout. + async with async_timeout.timeout(receive_timeout): + msg = await self._reader.read() + else: + msg = await self._reader.read() + self._reset_heartbeat() + finally: + self._waiting = False + if self._close_wait: + set_result(self._close_wait, None) + except (asyncio.CancelledError, asyncio.TimeoutError): + self._close_code = WSCloseCode.ABNORMAL_CLOSURE + raise + except EofStream: + self._close_code = WSCloseCode.OK + await self.close() + return WSMessage(WSMsgType.CLOSED, None, None) + except ClientError: + # Likely ServerDisconnectedError when connection is lost + self._set_closed() + self._close_code = WSCloseCode.ABNORMAL_CLOSURE + return WS_CLOSED_MESSAGE + except WebSocketError as exc: + self._close_code = exc.code + await self.close(code=exc.code) + return WSMessage(WSMsgType.ERROR, exc, None) + except Exception as exc: + self._exception = exc + self._set_closing() + self._close_code = WSCloseCode.ABNORMAL_CLOSURE + await self.close() + return WSMessage(WSMsgType.ERROR, exc, None) + + if msg.type not in _INTERNAL_RECEIVE_TYPES: + # If its not a close/closing/ping/pong message + # we can return it immediately + return msg + + if msg.type is WSMsgType.CLOSE: + self._set_closing() + self._close_code = msg.data + if not self._closed and self._autoclose: + await self.close() + elif msg.type is WSMsgType.CLOSING: + self._set_closing() + elif msg.type is WSMsgType.PING and self._autoping: + await self.pong(msg.data) + continue + elif msg.type is WSMsgType.PONG and self._autoping: + continue + + return msg + + async def receive_str(self, *, timeout: Optional[float] = None) -> str: + msg = await self.receive(timeout) + if msg.type is not WSMsgType.TEXT: + raise WSMessageTypeError( + f"Received message {msg.type}:{msg.data!r} is not WSMsgType.TEXT" + ) + return cast(str, msg.data) + + async def receive_bytes(self, *, timeout: Optional[float] = None) -> bytes: + msg = await self.receive(timeout) + if msg.type is not WSMsgType.BINARY: + raise WSMessageTypeError( + f"Received message {msg.type}:{msg.data!r} is not WSMsgType.BINARY" + ) + return cast(bytes, msg.data) + + async def receive_json( + self, + *, + loads: JSONDecoder = DEFAULT_JSON_DECODER, + timeout: Optional[float] = None, + ) -> Any: + data = await self.receive_str(timeout=timeout) + return loads(data) + + def __aiter__(self) -> "ClientWebSocketResponse": + return self + + async def __anext__(self) -> WSMessage: + msg = await self.receive() + if msg.type in (WSMsgType.CLOSE, WSMsgType.CLOSING, WSMsgType.CLOSED): + raise StopAsyncIteration + return msg + + async def __aenter__(self) -> "ClientWebSocketResponse": + return self + + async def __aexit__( + self, + exc_type: Optional[Type[BaseException]], + exc_val: Optional[BaseException], + exc_tb: Optional[TracebackType], + ) -> None: + await self.close() diff --git a/venv/lib/python3.9/site-packages/aiohttp/compression_utils.py b/venv/lib/python3.9/site-packages/aiohttp/compression_utils.py new file mode 100644 index 0000000..e478d24 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/compression_utils.py @@ -0,0 +1,348 @@ +import asyncio +import sys +import zlib +from abc import ABC, abstractmethod +from concurrent.futures import Executor +from typing import Any, Final, Optional, Protocol, TypedDict, cast + +if sys.version_info >= (3, 12): + from collections.abc import Buffer +else: + from typing import Union + + Buffer = Union[bytes, bytearray, "memoryview[int]", "memoryview[bytes]"] + +try: + try: + import brotlicffi as brotli + except ImportError: + import brotli + + HAS_BROTLI = True +except ImportError: # pragma: no cover + HAS_BROTLI = False + +try: + if sys.version_info >= (3, 14): + from compression.zstd import ZstdDecompressor # noqa: I900 + else: # TODO(PY314): Remove mentions of backports.zstd across codebase + from backports.zstd import ZstdDecompressor + + HAS_ZSTD = True +except ImportError: + HAS_ZSTD = False + + +MAX_SYNC_CHUNK_SIZE = 4096 +DEFAULT_MAX_DECOMPRESS_SIZE = 2**25 # 32MiB + +# Unlimited decompression constants - different libraries use different conventions +ZLIB_MAX_LENGTH_UNLIMITED = 0 # zlib uses 0 to mean unlimited +ZSTD_MAX_LENGTH_UNLIMITED = -1 # zstd uses -1 to mean unlimited + + +class ZLibCompressObjProtocol(Protocol): + def compress(self, data: Buffer) -> bytes: ... + def flush(self, mode: int = ..., /) -> bytes: ... + + +class ZLibDecompressObjProtocol(Protocol): + def decompress(self, data: Buffer, max_length: int = ...) -> bytes: ... + def flush(self, length: int = ..., /) -> bytes: ... + + @property + def eof(self) -> bool: ... + + +class ZLibBackendProtocol(Protocol): + MAX_WBITS: int + Z_FULL_FLUSH: int + Z_SYNC_FLUSH: int + Z_BEST_SPEED: int + Z_FINISH: int + + def compressobj( + self, + level: int = ..., + method: int = ..., + wbits: int = ..., + memLevel: int = ..., + strategy: int = ..., + zdict: Optional[Buffer] = ..., + ) -> ZLibCompressObjProtocol: ... + def decompressobj( + self, wbits: int = ..., zdict: Buffer = ... + ) -> ZLibDecompressObjProtocol: ... + + def compress( + self, data: Buffer, /, level: int = ..., wbits: int = ... + ) -> bytes: ... + def decompress( + self, data: Buffer, /, wbits: int = ..., bufsize: int = ... + ) -> bytes: ... + + +class CompressObjArgs(TypedDict, total=False): + wbits: int + strategy: int + level: int + + +class ZLibBackendWrapper: + def __init__(self, _zlib_backend: ZLibBackendProtocol): + self._zlib_backend: ZLibBackendProtocol = _zlib_backend + + @property + def name(self) -> str: + return getattr(self._zlib_backend, "__name__", "undefined") + + @property + def MAX_WBITS(self) -> int: + return self._zlib_backend.MAX_WBITS + + @property + def Z_FULL_FLUSH(self) -> int: + return self._zlib_backend.Z_FULL_FLUSH + + @property + def Z_SYNC_FLUSH(self) -> int: + return self._zlib_backend.Z_SYNC_FLUSH + + @property + def Z_BEST_SPEED(self) -> int: + return self._zlib_backend.Z_BEST_SPEED + + @property + def Z_FINISH(self) -> int: + return self._zlib_backend.Z_FINISH + + def compressobj(self, *args: Any, **kwargs: Any) -> ZLibCompressObjProtocol: + return self._zlib_backend.compressobj(*args, **kwargs) + + def decompressobj(self, *args: Any, **kwargs: Any) -> ZLibDecompressObjProtocol: + return self._zlib_backend.decompressobj(*args, **kwargs) + + def compress(self, data: Buffer, *args: Any, **kwargs: Any) -> bytes: + return self._zlib_backend.compress(data, *args, **kwargs) + + def decompress(self, data: Buffer, *args: Any, **kwargs: Any) -> bytes: + return self._zlib_backend.decompress(data, *args, **kwargs) + + # Everything not explicitly listed in the Protocol we just pass through + def __getattr__(self, attrname: str) -> Any: + return getattr(self._zlib_backend, attrname) + + +ZLibBackend: ZLibBackendWrapper = ZLibBackendWrapper(zlib) + + +def set_zlib_backend(new_zlib_backend: ZLibBackendProtocol) -> None: + ZLibBackend._zlib_backend = new_zlib_backend + + +def encoding_to_mode( + encoding: Optional[str] = None, + suppress_deflate_header: bool = False, +) -> int: + if encoding == "gzip": + return 16 + ZLibBackend.MAX_WBITS + + return -ZLibBackend.MAX_WBITS if suppress_deflate_header else ZLibBackend.MAX_WBITS + + +class DecompressionBaseHandler(ABC): + def __init__( + self, + executor: Optional[Executor] = None, + max_sync_chunk_size: Optional[int] = MAX_SYNC_CHUNK_SIZE, + ): + """Base class for decompression handlers.""" + self._executor = executor + self._max_sync_chunk_size = max_sync_chunk_size + + @abstractmethod + def decompress_sync( + self, data: bytes, max_length: int = ZLIB_MAX_LENGTH_UNLIMITED + ) -> bytes: + """Decompress the given data.""" + + async def decompress( + self, data: bytes, max_length: int = ZLIB_MAX_LENGTH_UNLIMITED + ) -> bytes: + """Decompress the given data.""" + if ( + self._max_sync_chunk_size is not None + and len(data) > self._max_sync_chunk_size + ): + return await asyncio.get_event_loop().run_in_executor( + self._executor, self.decompress_sync, data, max_length + ) + return self.decompress_sync(data, max_length) + + +class ZLibCompressor: + def __init__( + self, + encoding: Optional[str] = None, + suppress_deflate_header: bool = False, + level: Optional[int] = None, + wbits: Optional[int] = None, + strategy: Optional[int] = None, + executor: Optional[Executor] = None, + max_sync_chunk_size: Optional[int] = MAX_SYNC_CHUNK_SIZE, + ): + self._executor = executor + self._max_sync_chunk_size = max_sync_chunk_size + self._mode = ( + encoding_to_mode(encoding, suppress_deflate_header) + if wbits is None + else wbits + ) + self._zlib_backend: Final = ZLibBackendWrapper(ZLibBackend._zlib_backend) + + kwargs: CompressObjArgs = {} + kwargs["wbits"] = self._mode + if strategy is not None: + kwargs["strategy"] = strategy + if level is not None: + kwargs["level"] = level + self._compressor = self._zlib_backend.compressobj(**kwargs) + + def compress_sync(self, data: bytes) -> bytes: + return self._compressor.compress(data) + + async def compress(self, data: bytes) -> bytes: + """Compress the data and returned the compressed bytes. + + Note that flush() must be called after the last call to compress() + + If the data size is large than the max_sync_chunk_size, the compression + will be done in the executor. Otherwise, the compression will be done + in the event loop. + + **WARNING: This method is NOT cancellation-safe when used with flush().** + If this operation is cancelled, the compressor state may be corrupted. + The connection MUST be closed after cancellation to avoid data corruption + in subsequent compress operations. + + For cancellation-safe compression (e.g., WebSocket), the caller MUST wrap + compress() + flush() + send operations in a shield and lock to ensure atomicity. + """ + # For large payloads, offload compression to executor to avoid blocking event loop + should_use_executor = ( + self._max_sync_chunk_size is not None + and len(data) > self._max_sync_chunk_size + ) + if should_use_executor: + return await asyncio.get_running_loop().run_in_executor( + self._executor, self._compressor.compress, data + ) + return self.compress_sync(data) + + def flush(self, mode: Optional[int] = None) -> bytes: + """Flush the compressor synchronously. + + **WARNING: This method is NOT cancellation-safe when called after compress().** + The flush() operation accesses shared compressor state. If compress() was + cancelled, calling flush() may result in corrupted data. The connection MUST + be closed after compress() cancellation. + + For cancellation-safe compression (e.g., WebSocket), the caller MUST wrap + compress() + flush() + send operations in a shield and lock to ensure atomicity. + """ + return self._compressor.flush( + mode if mode is not None else self._zlib_backend.Z_FINISH + ) + + +class ZLibDecompressor(DecompressionBaseHandler): + def __init__( + self, + encoding: Optional[str] = None, + suppress_deflate_header: bool = False, + executor: Optional[Executor] = None, + max_sync_chunk_size: Optional[int] = MAX_SYNC_CHUNK_SIZE, + ): + super().__init__(executor=executor, max_sync_chunk_size=max_sync_chunk_size) + self._mode = encoding_to_mode(encoding, suppress_deflate_header) + self._zlib_backend: Final = ZLibBackendWrapper(ZLibBackend._zlib_backend) + self._decompressor = self._zlib_backend.decompressobj(wbits=self._mode) + + def decompress_sync( + self, data: Buffer, max_length: int = ZLIB_MAX_LENGTH_UNLIMITED + ) -> bytes: + return self._decompressor.decompress(data, max_length) + + def flush(self, length: int = 0) -> bytes: + return ( + self._decompressor.flush(length) + if length > 0 + else self._decompressor.flush() + ) + + @property + def eof(self) -> bool: + return self._decompressor.eof + + +class BrotliDecompressor(DecompressionBaseHandler): + # Supports both 'brotlipy' and 'Brotli' packages + # since they share an import name. The top branches + # are for 'brotlipy' and bottom branches for 'Brotli' + def __init__( + self, + executor: Optional[Executor] = None, + max_sync_chunk_size: Optional[int] = MAX_SYNC_CHUNK_SIZE, + ) -> None: + """Decompress data using the Brotli library.""" + if not HAS_BROTLI: + raise RuntimeError( + "The brotli decompression is not available. " + "Please install `Brotli` module" + ) + self._obj = brotli.Decompressor() + super().__init__(executor=executor, max_sync_chunk_size=max_sync_chunk_size) + + def decompress_sync( + self, data: Buffer, max_length: int = ZLIB_MAX_LENGTH_UNLIMITED + ) -> bytes: + """Decompress the given data.""" + if hasattr(self._obj, "decompress"): + return cast(bytes, self._obj.decompress(data, max_length)) + return cast(bytes, self._obj.process(data, max_length)) + + def flush(self) -> bytes: + """Flush the decompressor.""" + if hasattr(self._obj, "flush"): + return cast(bytes, self._obj.flush()) + return b"" + + +class ZSTDDecompressor(DecompressionBaseHandler): + def __init__( + self, + executor: Optional[Executor] = None, + max_sync_chunk_size: Optional[int] = MAX_SYNC_CHUNK_SIZE, + ) -> None: + if not HAS_ZSTD: + raise RuntimeError( + "The zstd decompression is not available. " + "Please install `backports.zstd` module" + ) + self._obj = ZstdDecompressor() + super().__init__(executor=executor, max_sync_chunk_size=max_sync_chunk_size) + + def decompress_sync( + self, data: bytes, max_length: int = ZLIB_MAX_LENGTH_UNLIMITED + ) -> bytes: + # zstd uses -1 for unlimited, while zlib uses 0 for unlimited + # Convert the zlib convention (0=unlimited) to zstd convention (-1=unlimited) + zstd_max_length = ( + ZSTD_MAX_LENGTH_UNLIMITED + if max_length == ZLIB_MAX_LENGTH_UNLIMITED + else max_length + ) + return self._obj.decompress(data, zstd_max_length) + + def flush(self) -> bytes: + return b"" diff --git a/venv/lib/python3.9/site-packages/aiohttp/connector.py b/venv/lib/python3.9/site-packages/aiohttp/connector.py new file mode 100644 index 0000000..ce28ce0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/connector.py @@ -0,0 +1,1854 @@ +import asyncio +import functools +import random +import socket +import sys +import traceback +import warnings +from collections import OrderedDict, defaultdict, deque +from contextlib import suppress +from http import HTTPStatus +from itertools import chain, cycle, islice +from time import monotonic +from types import TracebackType +from typing import ( + TYPE_CHECKING, + Any, + Awaitable, + Callable, + DefaultDict, + Deque, + Dict, + Iterator, + List, + Literal, + Optional, + Sequence, + Set, + Tuple, + Type, + Union, + cast, +) + +import aiohappyeyeballs +from aiohappyeyeballs import AddrInfoType, SocketFactoryType + +from . import hdrs, helpers +from .abc import AbstractResolver, ResolveResult +from .client_exceptions import ( + ClientConnectionError, + ClientConnectorCertificateError, + ClientConnectorDNSError, + ClientConnectorError, + ClientConnectorSSLError, + ClientHttpProxyError, + ClientProxyConnectionError, + ServerFingerprintMismatch, + UnixClientConnectorError, + cert_errors, + ssl_errors, +) +from .client_proto import ResponseHandler +from .client_reqrep import ClientRequest, Fingerprint, _merge_ssl_params +from .helpers import ( + _SENTINEL, + ceil_timeout, + is_ip_address, + noop, + sentinel, + set_exception, + set_result, +) +from .log import client_logger +from .resolver import DefaultResolver + +if sys.version_info >= (3, 12): + from collections.abc import Buffer +else: + Buffer = Union[bytes, bytearray, "memoryview[int]", "memoryview[bytes]"] + +if TYPE_CHECKING: + import ssl + + SSLContext = ssl.SSLContext +else: + try: + import ssl + + SSLContext = ssl.SSLContext + except ImportError: # pragma: no cover + ssl = None # type: ignore[assignment] + SSLContext = object # type: ignore[misc,assignment] + +EMPTY_SCHEMA_SET = frozenset({""}) +HTTP_SCHEMA_SET = frozenset({"http", "https"}) +WS_SCHEMA_SET = frozenset({"ws", "wss"}) + +HTTP_AND_EMPTY_SCHEMA_SET = HTTP_SCHEMA_SET | EMPTY_SCHEMA_SET +HIGH_LEVEL_SCHEMA_SET = HTTP_AND_EMPTY_SCHEMA_SET | WS_SCHEMA_SET + +NEEDS_CLEANUP_CLOSED = (3, 13, 0) <= sys.version_info < ( + 3, + 13, + 1, +) or sys.version_info < (3, 12, 8) +# Cleanup closed is no longer needed after https://github.com/python/cpython/pull/118960 +# which first appeared in Python 3.12.8 and 3.13.1 + + +__all__ = ( + "BaseConnector", + "TCPConnector", + "UnixConnector", + "NamedPipeConnector", + "AddrInfoType", + "SocketFactoryType", +) + + +if TYPE_CHECKING: + from .client import ClientTimeout + from .client_reqrep import ConnectionKey + from .tracing import Trace + + +class _DeprecationWaiter: + __slots__ = ("_awaitable", "_awaited") + + def __init__(self, awaitable: Awaitable[Any]) -> None: + self._awaitable = awaitable + self._awaited = False + + def __await__(self) -> Any: + self._awaited = True + return self._awaitable.__await__() + + def __del__(self) -> None: + if not self._awaited: + warnings.warn( + "Connector.close() is a coroutine, " + "please use await connector.close()", + DeprecationWarning, + ) + + +async def _wait_for_close(waiters: List[Awaitable[object]]) -> None: + """Wait for all waiters to finish closing.""" + results = await asyncio.gather(*waiters, return_exceptions=True) + for res in results: + if isinstance(res, Exception): + client_logger.debug("Error while closing connector: %r", res) + + +class Connection: + + _source_traceback = None + + def __init__( + self, + connector: "BaseConnector", + key: "ConnectionKey", + protocol: ResponseHandler, + loop: asyncio.AbstractEventLoop, + ) -> None: + self._key = key + self._connector = connector + self._loop = loop + self._protocol: Optional[ResponseHandler] = protocol + self._callbacks: List[Callable[[], None]] = [] + + if loop.get_debug(): + self._source_traceback = traceback.extract_stack(sys._getframe(1)) + + def __repr__(self) -> str: + return f"Connection<{self._key}>" + + def __del__(self, _warnings: Any = warnings) -> None: + if self._protocol is not None: + kwargs = {"source": self} + _warnings.warn(f"Unclosed connection {self!r}", ResourceWarning, **kwargs) + if self._loop.is_closed(): + return + + self._connector._release(self._key, self._protocol, should_close=True) + + context = {"client_connection": self, "message": "Unclosed connection"} + if self._source_traceback is not None: + context["source_traceback"] = self._source_traceback + self._loop.call_exception_handler(context) + + def __bool__(self) -> Literal[True]: + """Force subclasses to not be falsy, to make checks simpler.""" + return True + + @property + def loop(self) -> asyncio.AbstractEventLoop: + warnings.warn( + "connector.loop property is deprecated", DeprecationWarning, stacklevel=2 + ) + return self._loop + + @property + def transport(self) -> Optional[asyncio.Transport]: + if self._protocol is None: + return None + return self._protocol.transport + + @property + def protocol(self) -> Optional[ResponseHandler]: + return self._protocol + + def add_callback(self, callback: Callable[[], None]) -> None: + if callback is not None: + self._callbacks.append(callback) + + def _notify_release(self) -> None: + callbacks, self._callbacks = self._callbacks[:], [] + + for cb in callbacks: + with suppress(Exception): + cb() + + def close(self) -> None: + self._notify_release() + + if self._protocol is not None: + self._connector._release(self._key, self._protocol, should_close=True) + self._protocol = None + + def release(self) -> None: + self._notify_release() + + if self._protocol is not None: + self._connector._release(self._key, self._protocol) + self._protocol = None + + @property + def closed(self) -> bool: + return self._protocol is None or not self._protocol.is_connected() + + +class _ConnectTunnelConnection(Connection): + """Special connection wrapper for CONNECT tunnels that must never be pooled. + + This connection wraps the proxy connection that will be upgraded with TLS. + It must never be released to the pool because: + 1. Its 'closed' future will never complete, causing session.close() to hang + 2. It represents an intermediate state, not a reusable connection + 3. The real connection (with TLS) will be created separately + """ + + def release(self) -> None: + """Do nothing - don't pool or close the connection. + + These connections are an intermediate state during the CONNECT tunnel + setup and will be cleaned up naturally after the TLS upgrade. If they + were to be pooled, they would never be properly closed, causing + session.close() to wait forever for their 'closed' future. + """ + + +class _TransportPlaceholder: + """placeholder for BaseConnector.connect function""" + + __slots__ = ("closed", "transport") + + def __init__(self, closed_future: asyncio.Future[Optional[Exception]]) -> None: + """Initialize a placeholder for a transport.""" + self.closed = closed_future + self.transport = None + + def close(self) -> None: + """Close the placeholder.""" + + def abort(self) -> None: + """Abort the placeholder (does nothing).""" + + +class BaseConnector: + """Base connector class. + + keepalive_timeout - (optional) Keep-alive timeout. + force_close - Set to True to force close and do reconnect + after each request (and between redirects). + limit - The total number of simultaneous connections. + limit_per_host - Number of simultaneous connections to one host. + enable_cleanup_closed - Enables clean-up closed ssl transports. + Disabled by default. + timeout_ceil_threshold - Trigger ceiling of timeout values when + it's above timeout_ceil_threshold. + loop - Optional event loop. + """ + + _closed = True # prevent AttributeError in __del__ if ctor was failed + _source_traceback = None + + # abort transport after 2 seconds (cleanup broken connections) + _cleanup_closed_period = 2.0 + + allowed_protocol_schema_set = HIGH_LEVEL_SCHEMA_SET + + def __init__( + self, + *, + keepalive_timeout: Union[object, None, float] = sentinel, + force_close: bool = False, + limit: int = 100, + limit_per_host: int = 0, + enable_cleanup_closed: bool = False, + loop: Optional[asyncio.AbstractEventLoop] = None, + timeout_ceil_threshold: float = 5, + ) -> None: + + if force_close: + if keepalive_timeout is not None and keepalive_timeout is not sentinel: + raise ValueError( + "keepalive_timeout cannot be set if force_close is True" + ) + else: + if keepalive_timeout is sentinel: + keepalive_timeout = 15.0 + + loop = loop or asyncio.get_running_loop() + self._timeout_ceil_threshold = timeout_ceil_threshold + + self._closed = False + if loop.get_debug(): + self._source_traceback = traceback.extract_stack(sys._getframe(1)) + + # Connection pool of reusable connections. + # We use a deque to store connections because it has O(1) popleft() + # and O(1) append() operations to implement a FIFO queue. + self._conns: DefaultDict[ + ConnectionKey, Deque[Tuple[ResponseHandler, float]] + ] = defaultdict(deque) + self._limit = limit + self._limit_per_host = limit_per_host + self._acquired: Set[ResponseHandler] = set() + self._acquired_per_host: DefaultDict[ConnectionKey, Set[ResponseHandler]] = ( + defaultdict(set) + ) + self._keepalive_timeout = cast(float, keepalive_timeout) + self._force_close = force_close + + # {host_key: FIFO list of waiters} + # The FIFO is implemented with an OrderedDict with None keys because + # python does not have an ordered set. + self._waiters: DefaultDict[ + ConnectionKey, OrderedDict[asyncio.Future[None], None] + ] = defaultdict(OrderedDict) + + self._loop = loop + self._factory = functools.partial(ResponseHandler, loop=loop) + + # start keep-alive connection cleanup task + self._cleanup_handle: Optional[asyncio.TimerHandle] = None + + # start cleanup closed transports task + self._cleanup_closed_handle: Optional[asyncio.TimerHandle] = None + + if enable_cleanup_closed and not NEEDS_CLEANUP_CLOSED: + warnings.warn( + "enable_cleanup_closed ignored because " + "https://github.com/python/cpython/pull/118960 is fixed " + f"in Python version {sys.version_info}", + DeprecationWarning, + stacklevel=2, + ) + enable_cleanup_closed = False + + self._cleanup_closed_disabled = not enable_cleanup_closed + self._cleanup_closed_transports: List[Optional[asyncio.Transport]] = [] + self._placeholder_future: asyncio.Future[Optional[Exception]] = ( + loop.create_future() + ) + self._placeholder_future.set_result(None) + self._cleanup_closed() + + def __del__(self, _warnings: Any = warnings) -> None: + if self._closed: + return + if not self._conns: + return + + conns = [repr(c) for c in self._conns.values()] + + self._close() + + kwargs = {"source": self} + _warnings.warn(f"Unclosed connector {self!r}", ResourceWarning, **kwargs) + context = { + "connector": self, + "connections": conns, + "message": "Unclosed connector", + } + if self._source_traceback is not None: + context["source_traceback"] = self._source_traceback + self._loop.call_exception_handler(context) + + def __enter__(self) -> "BaseConnector": + warnings.warn( + '"with Connector():" is deprecated, ' + 'use "async with Connector():" instead', + DeprecationWarning, + ) + return self + + def __exit__(self, *exc: Any) -> None: + self._close() + + async def __aenter__(self) -> "BaseConnector": + return self + + async def __aexit__( + self, + exc_type: Optional[Type[BaseException]] = None, + exc_value: Optional[BaseException] = None, + exc_traceback: Optional[TracebackType] = None, + ) -> None: + await self.close() + + @property + def force_close(self) -> bool: + """Ultimately close connection on releasing if True.""" + return self._force_close + + @property + def limit(self) -> int: + """The total number for simultaneous connections. + + If limit is 0 the connector has no limit. + The default limit size is 100. + """ + return self._limit + + @property + def limit_per_host(self) -> int: + """The limit for simultaneous connections to the same endpoint. + + Endpoints are the same if they are have equal + (host, port, is_ssl) triple. + """ + return self._limit_per_host + + def _cleanup(self) -> None: + """Cleanup unused transports.""" + if self._cleanup_handle: + self._cleanup_handle.cancel() + # _cleanup_handle should be unset, otherwise _release() will not + # recreate it ever! + self._cleanup_handle = None + + now = monotonic() + timeout = self._keepalive_timeout + + if self._conns: + connections = defaultdict(deque) + deadline = now - timeout + for key, conns in self._conns.items(): + alive: Deque[Tuple[ResponseHandler, float]] = deque() + for proto, use_time in conns: + if proto.is_connected() and use_time - deadline >= 0: + alive.append((proto, use_time)) + continue + transport = proto.transport + proto.close() + if not self._cleanup_closed_disabled and key.is_ssl: + self._cleanup_closed_transports.append(transport) + + if alive: + connections[key] = alive + + self._conns = connections + + if self._conns: + self._cleanup_handle = helpers.weakref_handle( + self, + "_cleanup", + timeout, + self._loop, + timeout_ceil_threshold=self._timeout_ceil_threshold, + ) + + def _cleanup_closed(self) -> None: + """Double confirmation for transport close. + + Some broken ssl servers may leave socket open without proper close. + """ + if self._cleanup_closed_handle: + self._cleanup_closed_handle.cancel() + + for transport in self._cleanup_closed_transports: + if transport is not None: + transport.abort() + + self._cleanup_closed_transports = [] + + if not self._cleanup_closed_disabled: + self._cleanup_closed_handle = helpers.weakref_handle( + self, + "_cleanup_closed", + self._cleanup_closed_period, + self._loop, + timeout_ceil_threshold=self._timeout_ceil_threshold, + ) + + def close(self, *, abort_ssl: bool = False) -> Awaitable[None]: + """Close all opened transports. + + :param abort_ssl: If True, SSL connections will be aborted immediately + without performing the shutdown handshake. This provides + faster cleanup at the cost of less graceful disconnection. + """ + if not (waiters := self._close(abort_ssl=abort_ssl)): + # If there are no connections to close, we can return a noop + # awaitable to avoid scheduling a task on the event loop. + return _DeprecationWaiter(noop()) + coro = _wait_for_close(waiters) + if sys.version_info >= (3, 12): + # Optimization for Python 3.12, try to close connections + # immediately to avoid having to schedule the task on the event loop. + task = asyncio.Task(coro, loop=self._loop, eager_start=True) + else: + task = self._loop.create_task(coro) + return _DeprecationWaiter(task) + + def _close(self, *, abort_ssl: bool = False) -> List[Awaitable[object]]: + waiters: List[Awaitable[object]] = [] + + if self._closed: + return waiters + + self._closed = True + + try: + if self._loop.is_closed(): + return waiters + + # cancel cleanup task + if self._cleanup_handle: + self._cleanup_handle.cancel() + + # cancel cleanup close task + if self._cleanup_closed_handle: + self._cleanup_closed_handle.cancel() + + for data in self._conns.values(): + for proto, _ in data: + if ( + abort_ssl + and proto.transport + and proto.transport.get_extra_info("sslcontext") is not None + ): + proto.abort() + else: + proto.close() + if closed := proto.closed: + waiters.append(closed) + + for proto in self._acquired: + if ( + abort_ssl + and proto.transport + and proto.transport.get_extra_info("sslcontext") is not None + ): + proto.abort() + else: + proto.close() + if closed := proto.closed: + waiters.append(closed) + + for transport in self._cleanup_closed_transports: + if transport is not None: + transport.abort() + + return waiters + + finally: + self._conns.clear() + self._acquired.clear() + for keyed_waiters in self._waiters.values(): + for keyed_waiter in keyed_waiters: + keyed_waiter.cancel() + self._waiters.clear() + self._cleanup_handle = None + self._cleanup_closed_transports.clear() + self._cleanup_closed_handle = None + + @property + def closed(self) -> bool: + """Is connector closed. + + A readonly property. + """ + return self._closed + + def _available_connections(self, key: "ConnectionKey") -> int: + """ + Return number of available connections. + + The limit, limit_per_host and the connection key are taken into account. + + If it returns less than 1 means that there are no connections + available. + """ + # check total available connections + # If there are no limits, this will always return 1 + total_remain = 1 + + if self._limit and (total_remain := self._limit - len(self._acquired)) <= 0: + return total_remain + + # check limit per host + if host_remain := self._limit_per_host: + if acquired := self._acquired_per_host.get(key): + host_remain -= len(acquired) + if total_remain > host_remain: + return host_remain + + return total_remain + + def _update_proxy_auth_header_and_build_proxy_req( + self, req: ClientRequest + ) -> ClientRequest: + """Set Proxy-Authorization header for non-SSL proxy requests and builds the proxy request for SSL proxy requests.""" + url = req.proxy + assert url is not None + headers: Dict[str, str] = {} + if req.proxy_headers is not None: + headers = req.proxy_headers # type: ignore[assignment] + headers[hdrs.HOST] = req.headers[hdrs.HOST] + proxy_req = ClientRequest( + hdrs.METH_GET, + url, + headers=headers, + auth=req.proxy_auth, + loop=self._loop, + ssl=req.ssl, + ) + auth = proxy_req.headers.pop(hdrs.AUTHORIZATION, None) + if auth is not None: + if not req.is_ssl(): + req.headers[hdrs.PROXY_AUTHORIZATION] = auth + else: + proxy_req.headers[hdrs.PROXY_AUTHORIZATION] = auth + return proxy_req + + async def connect( + self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout" + ) -> Connection: + """Get from pool or create new connection.""" + key = req.connection_key + if (conn := await self._get(key, traces)) is not None: + # If we do not have to wait and we can get a connection from the pool + # we can avoid the timeout ceil logic and directly return the connection + if req.proxy: + self._update_proxy_auth_header_and_build_proxy_req(req) + return conn + + async with ceil_timeout(timeout.connect, timeout.ceil_threshold): + if self._available_connections(key) <= 0: + await self._wait_for_available_connection(key, traces) + if (conn := await self._get(key, traces)) is not None: + if req.proxy: + self._update_proxy_auth_header_and_build_proxy_req(req) + return conn + + placeholder = cast( + ResponseHandler, _TransportPlaceholder(self._placeholder_future) + ) + self._acquired.add(placeholder) + if self._limit_per_host: + self._acquired_per_host[key].add(placeholder) + + try: + # Traces are done inside the try block to ensure that the + # that the placeholder is still cleaned up if an exception + # is raised. + if traces: + for trace in traces: + await trace.send_connection_create_start() + proto = await self._create_connection(req, traces, timeout) + if traces: + for trace in traces: + await trace.send_connection_create_end() + except BaseException: + self._release_acquired(key, placeholder) + raise + else: + if self._closed: + proto.close() + raise ClientConnectionError("Connector is closed.") + + # The connection was successfully created, drop the placeholder + # and add the real connection to the acquired set. There should + # be no awaits after the proto is added to the acquired set + # to ensure that the connection is not left in the acquired set + # on cancellation. + self._acquired.remove(placeholder) + self._acquired.add(proto) + if self._limit_per_host: + acquired_per_host = self._acquired_per_host[key] + acquired_per_host.remove(placeholder) + acquired_per_host.add(proto) + return Connection(self, key, proto, self._loop) + + async def _wait_for_available_connection( + self, key: "ConnectionKey", traces: List["Trace"] + ) -> None: + """Wait for an available connection slot.""" + # We loop here because there is a race between + # the connection limit check and the connection + # being acquired. If the connection is acquired + # between the check and the await statement, we + # need to loop again to check if the connection + # slot is still available. + attempts = 0 + while True: + fut: asyncio.Future[None] = self._loop.create_future() + keyed_waiters = self._waiters[key] + keyed_waiters[fut] = None + if attempts: + # If we have waited before, we need to move the waiter + # to the front of the queue as otherwise we might get + # starved and hit the timeout. + keyed_waiters.move_to_end(fut, last=False) + + try: + # Traces happen in the try block to ensure that the + # the waiter is still cleaned up if an exception is raised. + if traces: + for trace in traces: + await trace.send_connection_queued_start() + await fut + if traces: + for trace in traces: + await trace.send_connection_queued_end() + finally: + # pop the waiter from the queue if its still + # there and not already removed by _release_waiter + keyed_waiters.pop(fut, None) + if not self._waiters.get(key, True): + del self._waiters[key] + + if self._available_connections(key) > 0: + break + attempts += 1 + + async def _get( + self, key: "ConnectionKey", traces: List["Trace"] + ) -> Optional[Connection]: + """Get next reusable connection for the key or None. + + The connection will be marked as acquired. + """ + if (conns := self._conns.get(key)) is None: + return None + + t1 = monotonic() + while conns: + proto, t0 = conns.popleft() + # We will we reuse the connection if its connected and + # the keepalive timeout has not been exceeded + if proto.is_connected() and t1 - t0 <= self._keepalive_timeout: + if not conns: + # The very last connection was reclaimed: drop the key + del self._conns[key] + self._acquired.add(proto) + if self._limit_per_host: + self._acquired_per_host[key].add(proto) + if traces: + for trace in traces: + try: + await trace.send_connection_reuseconn() + except BaseException: + self._release_acquired(key, proto) + raise + return Connection(self, key, proto, self._loop) + + # Connection cannot be reused, close it + transport = proto.transport + proto.close() + # only for SSL transports + if not self._cleanup_closed_disabled and key.is_ssl: + self._cleanup_closed_transports.append(transport) + + # No more connections: drop the key + del self._conns[key] + return None + + def _release_waiter(self) -> None: + """ + Iterates over all waiters until one to be released is found. + + The one to be released is not finished and + belongs to a host that has available connections. + """ + if not self._waiters: + return + + # Having the dict keys ordered this avoids to iterate + # at the same order at each call. + queues = list(self._waiters) + random.shuffle(queues) + + for key in queues: + if self._available_connections(key) < 1: + continue + + waiters = self._waiters[key] + while waiters: + waiter, _ = waiters.popitem(last=False) + if not waiter.done(): + waiter.set_result(None) + return + + def _release_acquired(self, key: "ConnectionKey", proto: ResponseHandler) -> None: + """Release acquired connection.""" + if self._closed: + # acquired connection is already released on connector closing + return + + self._acquired.discard(proto) + if self._limit_per_host and (conns := self._acquired_per_host.get(key)): + conns.discard(proto) + if not conns: + del self._acquired_per_host[key] + self._release_waiter() + + def _release( + self, + key: "ConnectionKey", + protocol: ResponseHandler, + *, + should_close: bool = False, + ) -> None: + if self._closed: + # acquired connection is already released on connector closing + return + + self._release_acquired(key, protocol) + + if self._force_close or should_close or protocol.should_close: + transport = protocol.transport + protocol.close() + + if key.is_ssl and not self._cleanup_closed_disabled: + self._cleanup_closed_transports.append(transport) + return + + self._conns[key].append((protocol, monotonic())) + + if self._cleanup_handle is None: + self._cleanup_handle = helpers.weakref_handle( + self, + "_cleanup", + self._keepalive_timeout, + self._loop, + timeout_ceil_threshold=self._timeout_ceil_threshold, + ) + + async def _create_connection( + self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout" + ) -> ResponseHandler: + raise NotImplementedError() + + +class _DNSCacheTable: + def __init__(self, ttl: Optional[float] = None, max_size: int = 1000) -> None: + self._addrs_rr: OrderedDict[ + Tuple[str, int], Tuple[Iterator[ResolveResult], int] + ] = OrderedDict() + self._timestamps: Dict[Tuple[str, int], float] = {} + self._ttl = ttl + self._max_size = max_size + + def __contains__(self, host: object) -> bool: + return host in self._addrs_rr + + def add(self, key: Tuple[str, int], addrs: List[ResolveResult]) -> None: + if key in self._addrs_rr: + self._addrs_rr.move_to_end(key) + + self._addrs_rr[key] = (cycle(addrs), len(addrs)) + + if self._ttl is not None: + self._timestamps[key] = monotonic() + + if len(self._addrs_rr) > self._max_size: + oldest_key, _ = self._addrs_rr.popitem(last=False) + self._timestamps.pop(oldest_key, None) + + def remove(self, key: Tuple[str, int]) -> None: + self._addrs_rr.pop(key, None) + self._timestamps.pop(key, None) + + def clear(self) -> None: + self._addrs_rr.clear() + self._timestamps.clear() + + def next_addrs(self, key: Tuple[str, int]) -> List[ResolveResult]: + loop, length = self._addrs_rr[key] + addrs = list(islice(loop, length)) + # Consume one more element to shift internal state of `cycle` + next(loop) + self._addrs_rr.move_to_end(key) + return addrs + + def expired(self, key: Tuple[str, int]) -> bool: + if self._ttl is None: + return False + + return self._timestamps[key] + self._ttl < monotonic() + + +def _make_ssl_context(verified: bool) -> SSLContext: + """Create SSL context. + + This method is not async-friendly and should be called from a thread + because it will load certificates from disk and do other blocking I/O. + """ + if ssl is None: + # No ssl support + return None + if verified: + sslcontext = ssl.create_default_context() + else: + sslcontext = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT) + sslcontext.options |= ssl.OP_NO_SSLv2 + sslcontext.options |= ssl.OP_NO_SSLv3 + sslcontext.check_hostname = False + sslcontext.verify_mode = ssl.CERT_NONE + sslcontext.options |= ssl.OP_NO_COMPRESSION + sslcontext.set_default_verify_paths() + sslcontext.set_alpn_protocols(("http/1.1",)) + return sslcontext + + +# The default SSLContext objects are created at import time +# since they do blocking I/O to load certificates from disk, +# and imports should always be done before the event loop starts +# or in a thread. +_SSL_CONTEXT_VERIFIED = _make_ssl_context(True) +_SSL_CONTEXT_UNVERIFIED = _make_ssl_context(False) + + +class TCPConnector(BaseConnector): + """TCP connector. + + verify_ssl - Set to True to check ssl certifications. + fingerprint - Pass the binary sha256 + digest of the expected certificate in DER format to verify + that the certificate the server presents matches. See also + https://en.wikipedia.org/wiki/HTTP_Public_Key_Pinning + resolver - Enable DNS lookups and use this + resolver + use_dns_cache - Use memory cache for DNS lookups. + ttl_dns_cache - Max seconds having cached a DNS entry, None forever. + family - socket address family + local_addr - local tuple of (host, port) to bind socket to + + keepalive_timeout - (optional) Keep-alive timeout. + force_close - Set to True to force close and do reconnect + after each request (and between redirects). + limit - The total number of simultaneous connections. + limit_per_host - Number of simultaneous connections to one host. + enable_cleanup_closed - Enables clean-up closed ssl transports. + Disabled by default. + happy_eyeballs_delay - This is the “Connection Attempt Delay” + as defined in RFC 8305. To disable + the happy eyeballs algorithm, set to None. + interleave - “First Address Family Count” as defined in RFC 8305 + loop - Optional event loop. + socket_factory - A SocketFactoryType function that, if supplied, + will be used to create sockets given an + AddrInfoType. + ssl_shutdown_timeout - DEPRECATED. Will be removed in aiohttp 4.0. + Grace period for SSL shutdown handshake on TLS + connections. Default is 0 seconds (immediate abort). + This parameter allowed for a clean SSL shutdown by + notifying the remote peer of connection closure, + while avoiding excessive delays during connector cleanup. + Note: Only takes effect on Python 3.11+. + """ + + allowed_protocol_schema_set = HIGH_LEVEL_SCHEMA_SET | frozenset({"tcp"}) + + def __init__( + self, + *, + verify_ssl: bool = True, + fingerprint: Optional[bytes] = None, + use_dns_cache: bool = True, + ttl_dns_cache: Optional[int] = 10, + dns_cache_max_size: int = 1000, + family: socket.AddressFamily = socket.AddressFamily.AF_UNSPEC, + ssl_context: Optional[SSLContext] = None, + ssl: Union[bool, Fingerprint, SSLContext] = True, + local_addr: Optional[Tuple[str, int]] = None, + resolver: Optional[AbstractResolver] = None, + keepalive_timeout: Union[None, float, object] = sentinel, + force_close: bool = False, + limit: int = 100, + limit_per_host: int = 0, + enable_cleanup_closed: bool = False, + loop: Optional[asyncio.AbstractEventLoop] = None, + timeout_ceil_threshold: float = 5, + happy_eyeballs_delay: Optional[float] = 0.25, + interleave: Optional[int] = None, + socket_factory: Optional[SocketFactoryType] = None, + ssl_shutdown_timeout: Union[_SENTINEL, None, float] = sentinel, + ): + super().__init__( + keepalive_timeout=keepalive_timeout, + force_close=force_close, + limit=limit, + limit_per_host=limit_per_host, + enable_cleanup_closed=enable_cleanup_closed, + loop=loop, + timeout_ceil_threshold=timeout_ceil_threshold, + ) + + self._ssl = _merge_ssl_params(ssl, verify_ssl, ssl_context, fingerprint) + + self._resolver: AbstractResolver + if resolver is None: + self._resolver = DefaultResolver(loop=self._loop) + self._resolver_owner = True + else: + self._resolver = resolver + self._resolver_owner = False + + self._use_dns_cache = use_dns_cache + self._cached_hosts = _DNSCacheTable( + ttl=ttl_dns_cache, max_size=dns_cache_max_size + ) + self._throttle_dns_futures: Dict[ + Tuple[str, int], Set["asyncio.Future[None]"] + ] = {} + self._family = family + self._local_addr_infos = aiohappyeyeballs.addr_to_addr_infos(local_addr) + self._happy_eyeballs_delay = happy_eyeballs_delay + self._interleave = interleave + self._resolve_host_tasks: Set["asyncio.Task[List[ResolveResult]]"] = set() + self._socket_factory = socket_factory + self._ssl_shutdown_timeout: Optional[float] + # Handle ssl_shutdown_timeout with warning for Python < 3.11 + if ssl_shutdown_timeout is sentinel: + self._ssl_shutdown_timeout = 0 + else: + # Deprecation warning for ssl_shutdown_timeout parameter + warnings.warn( + "The ssl_shutdown_timeout parameter is deprecated and will be removed in aiohttp 4.0", + DeprecationWarning, + stacklevel=2, + ) + if ( + sys.version_info < (3, 11) + and ssl_shutdown_timeout is not None + and ssl_shutdown_timeout != 0 + ): + warnings.warn( + f"ssl_shutdown_timeout={ssl_shutdown_timeout} is ignored on Python < 3.11; " + "only ssl_shutdown_timeout=0 is supported. The timeout will be ignored.", + RuntimeWarning, + stacklevel=2, + ) + self._ssl_shutdown_timeout = ssl_shutdown_timeout + + def _close(self, *, abort_ssl: bool = False) -> List[Awaitable[object]]: + """Close all ongoing DNS calls.""" + for fut in chain.from_iterable(self._throttle_dns_futures.values()): + fut.cancel() + + waiters = super()._close(abort_ssl=abort_ssl) + + for t in self._resolve_host_tasks: + t.cancel() + waiters.append(t) + + return waiters + + async def close(self, *, abort_ssl: bool = False) -> None: + """ + Close all opened transports. + + :param abort_ssl: If True, SSL connections will be aborted immediately + without performing the shutdown handshake. If False (default), + the behavior is determined by ssl_shutdown_timeout: + - If ssl_shutdown_timeout=0: connections are aborted + - If ssl_shutdown_timeout>0: graceful shutdown is performed + """ + if self._resolver_owner: + await self._resolver.close() + # Use abort_ssl param if explicitly set, otherwise use ssl_shutdown_timeout default + await super().close(abort_ssl=abort_ssl or self._ssl_shutdown_timeout == 0) + + @property + def family(self) -> int: + """Socket family like AF_INET.""" + return self._family + + @property + def use_dns_cache(self) -> bool: + """True if local DNS caching is enabled.""" + return self._use_dns_cache + + def clear_dns_cache( + self, host: Optional[str] = None, port: Optional[int] = None + ) -> None: + """Remove specified host/port or clear all dns local cache.""" + if host is not None and port is not None: + self._cached_hosts.remove((host, port)) + elif host is not None or port is not None: + raise ValueError("either both host and port or none of them are allowed") + else: + self._cached_hosts.clear() + + async def _resolve_host( + self, host: str, port: int, traces: Optional[Sequence["Trace"]] = None + ) -> List[ResolveResult]: + """Resolve host and return list of addresses.""" + if is_ip_address(host): + return [ + { + "hostname": host, + "host": host, + "port": port, + "family": self._family, + "proto": 0, + "flags": 0, + } + ] + + if not self._use_dns_cache: + + if traces: + for trace in traces: + await trace.send_dns_resolvehost_start(host) + + res = await self._resolver.resolve(host, port, family=self._family) + + if traces: + for trace in traces: + await trace.send_dns_resolvehost_end(host) + + return res + + key = (host, port) + if key in self._cached_hosts and not self._cached_hosts.expired(key): + # get result early, before any await (#4014) + result = self._cached_hosts.next_addrs(key) + + if traces: + for trace in traces: + await trace.send_dns_cache_hit(host) + return result + + futures: Set["asyncio.Future[None]"] + # + # If multiple connectors are resolving the same host, we wait + # for the first one to resolve and then use the result for all of them. + # We use a throttle to ensure that we only resolve the host once + # and then use the result for all the waiters. + # + if key in self._throttle_dns_futures: + # get futures early, before any await (#4014) + futures = self._throttle_dns_futures[key] + future: asyncio.Future[None] = self._loop.create_future() + futures.add(future) + if traces: + for trace in traces: + await trace.send_dns_cache_hit(host) + try: + await future + finally: + futures.discard(future) + return self._cached_hosts.next_addrs(key) + + # update dict early, before any await (#4014) + self._throttle_dns_futures[key] = futures = set() + # In this case we need to create a task to ensure that we can shield + # the task from cancellation as cancelling this lookup should not cancel + # the underlying lookup or else the cancel event will get broadcast to + # all the waiters across all connections. + # + coro = self._resolve_host_with_throttle(key, host, port, futures, traces) + loop = asyncio.get_running_loop() + if sys.version_info >= (3, 12): + # Optimization for Python 3.12, try to send immediately + resolved_host_task = asyncio.Task(coro, loop=loop, eager_start=True) + else: + resolved_host_task = loop.create_task(coro) + + if not resolved_host_task.done(): + self._resolve_host_tasks.add(resolved_host_task) + resolved_host_task.add_done_callback(self._resolve_host_tasks.discard) + + try: + return await asyncio.shield(resolved_host_task) + except asyncio.CancelledError: + + def drop_exception(fut: "asyncio.Future[List[ResolveResult]]") -> None: + with suppress(Exception, asyncio.CancelledError): + fut.result() + + resolved_host_task.add_done_callback(drop_exception) + raise + + async def _resolve_host_with_throttle( + self, + key: Tuple[str, int], + host: str, + port: int, + futures: Set["asyncio.Future[None]"], + traces: Optional[Sequence["Trace"]], + ) -> List[ResolveResult]: + """Resolve host and set result for all waiters. + + This method must be run in a task and shielded from cancellation + to avoid cancelling the underlying lookup. + """ + try: + if traces: + for trace in traces: + await trace.send_dns_cache_miss(host) + + for trace in traces: + await trace.send_dns_resolvehost_start(host) + + addrs = await self._resolver.resolve(host, port, family=self._family) + if traces: + for trace in traces: + await trace.send_dns_resolvehost_end(host) + + self._cached_hosts.add(key, addrs) + for fut in futures: + set_result(fut, None) + except BaseException as e: + # any DNS exception is set for the waiters to raise the same exception. + # This coro is always run in task that is shielded from cancellation so + # we should never be propagating cancellation here. + for fut in futures: + set_exception(fut, e) + raise + finally: + self._throttle_dns_futures.pop(key) + + return self._cached_hosts.next_addrs(key) + + async def _create_connection( + self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout" + ) -> ResponseHandler: + """Create connection. + + Has same keyword arguments as BaseEventLoop.create_connection. + """ + if req.proxy: + _, proto = await self._create_proxy_connection(req, traces, timeout) + else: + _, proto = await self._create_direct_connection(req, traces, timeout) + + return proto + + def _get_ssl_context(self, req: ClientRequest) -> Optional[SSLContext]: + """Logic to get the correct SSL context + + 0. if req.ssl is false, return None + + 1. if ssl_context is specified in req, use it + 2. if _ssl_context is specified in self, use it + 3. otherwise: + 1. if verify_ssl is not specified in req, use self.ssl_context + (will generate a default context according to self.verify_ssl) + 2. if verify_ssl is True in req, generate a default SSL context + 3. if verify_ssl is False in req, generate a SSL context that + won't verify + """ + if not req.is_ssl(): + return None + + if ssl is None: # pragma: no cover + raise RuntimeError("SSL is not supported.") + sslcontext = req.ssl + if isinstance(sslcontext, ssl.SSLContext): + return sslcontext + if sslcontext is not True: + # not verified or fingerprinted + return _SSL_CONTEXT_UNVERIFIED + sslcontext = self._ssl + if isinstance(sslcontext, ssl.SSLContext): + return sslcontext + if sslcontext is not True: + # not verified or fingerprinted + return _SSL_CONTEXT_UNVERIFIED + return _SSL_CONTEXT_VERIFIED + + def _get_fingerprint(self, req: ClientRequest) -> Optional["Fingerprint"]: + ret = req.ssl + if isinstance(ret, Fingerprint): + return ret + ret = self._ssl + if isinstance(ret, Fingerprint): + return ret + return None + + async def _wrap_create_connection( + self, + *args: Any, + addr_infos: List[AddrInfoType], + req: ClientRequest, + timeout: "ClientTimeout", + client_error: Type[Exception] = ClientConnectorError, + **kwargs: Any, + ) -> Tuple[asyncio.Transport, ResponseHandler]: + try: + async with ceil_timeout( + timeout.sock_connect, ceil_threshold=timeout.ceil_threshold + ): + sock = await aiohappyeyeballs.start_connection( + addr_infos=addr_infos, + local_addr_infos=self._local_addr_infos, + happy_eyeballs_delay=self._happy_eyeballs_delay, + interleave=self._interleave, + loop=self._loop, + socket_factory=self._socket_factory, + ) + # Add ssl_shutdown_timeout for Python 3.11+ when SSL is used + if ( + kwargs.get("ssl") + and self._ssl_shutdown_timeout + and sys.version_info >= (3, 11) + ): + kwargs["ssl_shutdown_timeout"] = self._ssl_shutdown_timeout + return await self._loop.create_connection(*args, **kwargs, sock=sock) + except cert_errors as exc: + raise ClientConnectorCertificateError(req.connection_key, exc) from exc + except ssl_errors as exc: + raise ClientConnectorSSLError(req.connection_key, exc) from exc + except OSError as exc: + if exc.errno is None and isinstance(exc, asyncio.TimeoutError): + raise + raise client_error(req.connection_key, exc) from exc + + async def _wrap_existing_connection( + self, + *args: Any, + req: ClientRequest, + timeout: "ClientTimeout", + client_error: Type[Exception] = ClientConnectorError, + **kwargs: Any, + ) -> Tuple[asyncio.Transport, ResponseHandler]: + try: + async with ceil_timeout( + timeout.sock_connect, ceil_threshold=timeout.ceil_threshold + ): + return await self._loop.create_connection(*args, **kwargs) + except cert_errors as exc: + raise ClientConnectorCertificateError(req.connection_key, exc) from exc + except ssl_errors as exc: + raise ClientConnectorSSLError(req.connection_key, exc) from exc + except OSError as exc: + if exc.errno is None and isinstance(exc, asyncio.TimeoutError): + raise + raise client_error(req.connection_key, exc) from exc + + def _fail_on_no_start_tls(self, req: "ClientRequest") -> None: + """Raise a :py:exc:`RuntimeError` on missing ``start_tls()``. + + It is necessary for TLS-in-TLS so that it is possible to + send HTTPS queries through HTTPS proxies. + + This doesn't affect regular HTTP requests, though. + """ + if not req.is_ssl(): + return + + proxy_url = req.proxy + assert proxy_url is not None + if proxy_url.scheme != "https": + return + + self._check_loop_for_start_tls() + + def _check_loop_for_start_tls(self) -> None: + try: + self._loop.start_tls + except AttributeError as attr_exc: + raise RuntimeError( + "An HTTPS request is being sent through an HTTPS proxy. " + "This needs support for TLS in TLS but it is not implemented " + "in your runtime for the stdlib asyncio.\n\n" + "Please upgrade to Python 3.11 or higher. For more details, " + "please see:\n" + "* https://bugs.python.org/issue37179\n" + "* https://github.com/python/cpython/pull/28073\n" + "* https://docs.aiohttp.org/en/stable/" + "client_advanced.html#proxy-support\n" + "* https://github.com/aio-libs/aiohttp/discussions/6044\n", + ) from attr_exc + + def _loop_supports_start_tls(self) -> bool: + try: + self._check_loop_for_start_tls() + except RuntimeError: + return False + else: + return True + + def _warn_about_tls_in_tls( + self, + underlying_transport: asyncio.Transport, + req: ClientRequest, + ) -> None: + """Issue a warning if the requested URL has HTTPS scheme.""" + if req.request_info.url.scheme != "https": + return + + # Check if uvloop is being used, which supports TLS in TLS, + # otherwise assume that asyncio's native transport is being used. + if type(underlying_transport).__module__.startswith("uvloop"): + return + + # Support in asyncio was added in Python 3.11 (bpo-44011) + asyncio_supports_tls_in_tls = sys.version_info >= (3, 11) or getattr( + underlying_transport, + "_start_tls_compatible", + False, + ) + + if asyncio_supports_tls_in_tls: + return + + warnings.warn( + "An HTTPS request is being sent through an HTTPS proxy. " + "This support for TLS in TLS is known to be disabled " + "in the stdlib asyncio (Python <3.11). This is why you'll probably see " + "an error in the log below.\n\n" + "It is possible to enable it via monkeypatching. " + "For more details, see:\n" + "* https://bugs.python.org/issue37179\n" + "* https://github.com/python/cpython/pull/28073\n\n" + "You can temporarily patch this as follows:\n" + "* https://docs.aiohttp.org/en/stable/client_advanced.html#proxy-support\n" + "* https://github.com/aio-libs/aiohttp/discussions/6044\n", + RuntimeWarning, + source=self, + # Why `4`? At least 3 of the calls in the stack originate + # from the methods in this class. + stacklevel=3, + ) + + async def _start_tls_connection( + self, + underlying_transport: asyncio.Transport, + req: ClientRequest, + timeout: "ClientTimeout", + client_error: Type[Exception] = ClientConnectorError, + ) -> Tuple[asyncio.BaseTransport, ResponseHandler]: + """Wrap the raw TCP transport with TLS.""" + tls_proto = self._factory() # Create a brand new proto for TLS + sslcontext = self._get_ssl_context(req) + if TYPE_CHECKING: + # _start_tls_connection is unreachable in the current code path + # if sslcontext is None. + assert sslcontext is not None + + try: + async with ceil_timeout( + timeout.sock_connect, ceil_threshold=timeout.ceil_threshold + ): + try: + # ssl_shutdown_timeout is only available in Python 3.11+ + if sys.version_info >= (3, 11) and self._ssl_shutdown_timeout: + tls_transport = await self._loop.start_tls( + underlying_transport, + tls_proto, + sslcontext, + server_hostname=req.server_hostname or req.host, + ssl_handshake_timeout=timeout.total or None, + ssl_shutdown_timeout=self._ssl_shutdown_timeout, + ) + else: + tls_transport = await self._loop.start_tls( + underlying_transport, + tls_proto, + sslcontext, + server_hostname=req.server_hostname or req.host, + ssl_handshake_timeout=timeout.total or None, + ) + except BaseException: + # We need to close the underlying transport since + # `start_tls()` probably failed before it had a + # chance to do this: + if self._ssl_shutdown_timeout == 0: + underlying_transport.abort() + else: + underlying_transport.close() + raise + if isinstance(tls_transport, asyncio.Transport): + fingerprint = self._get_fingerprint(req) + if fingerprint: + try: + fingerprint.check(tls_transport) + except ServerFingerprintMismatch: + tls_transport.close() + if not self._cleanup_closed_disabled: + self._cleanup_closed_transports.append(tls_transport) + raise + except cert_errors as exc: + raise ClientConnectorCertificateError(req.connection_key, exc) from exc + except ssl_errors as exc: + raise ClientConnectorSSLError(req.connection_key, exc) from exc + except OSError as exc: + if exc.errno is None and isinstance(exc, asyncio.TimeoutError): + raise + raise client_error(req.connection_key, exc) from exc + except TypeError as type_err: + # Example cause looks like this: + # TypeError: transport is not supported by start_tls() + + raise ClientConnectionError( + "Cannot initialize a TLS-in-TLS connection to host " + f"{req.host!s}:{req.port:d} through an underlying connection " + f"to an HTTPS proxy {req.proxy!s} ssl:{req.ssl or 'default'} " + f"[{type_err!s}]" + ) from type_err + else: + if tls_transport is None: + msg = "Failed to start TLS (possibly caused by closing transport)" + raise client_error(req.connection_key, OSError(msg)) + tls_proto.connection_made( + tls_transport + ) # Kick the state machine of the new TLS protocol + + return tls_transport, tls_proto + + def _convert_hosts_to_addr_infos( + self, hosts: List[ResolveResult] + ) -> List[AddrInfoType]: + """Converts the list of hosts to a list of addr_infos. + + The list of hosts is the result of a DNS lookup. The list of + addr_infos is the result of a call to `socket.getaddrinfo()`. + """ + addr_infos: List[AddrInfoType] = [] + for hinfo in hosts: + host = hinfo["host"] + is_ipv6 = ":" in host + family = socket.AF_INET6 if is_ipv6 else socket.AF_INET + if self._family and self._family != family: + continue + addr = (host, hinfo["port"], 0, 0) if is_ipv6 else (host, hinfo["port"]) + addr_infos.append( + (family, socket.SOCK_STREAM, socket.IPPROTO_TCP, "", addr) + ) + return addr_infos + + async def _create_direct_connection( + self, + req: ClientRequest, + traces: List["Trace"], + timeout: "ClientTimeout", + *, + client_error: Type[Exception] = ClientConnectorError, + ) -> Tuple[asyncio.Transport, ResponseHandler]: + sslcontext = self._get_ssl_context(req) + fingerprint = self._get_fingerprint(req) + + host = req.url.raw_host + assert host is not None + # Replace multiple trailing dots with a single one. + # A trailing dot is only present for fully-qualified domain names. + # See https://github.com/aio-libs/aiohttp/pull/7364. + if host.endswith(".."): + host = host.rstrip(".") + "." + port = req.port + assert port is not None + try: + # Cancelling this lookup should not cancel the underlying lookup + # or else the cancel event will get broadcast to all the waiters + # across all connections. + hosts = await self._resolve_host(host, port, traces=traces) + except OSError as exc: + if exc.errno is None and isinstance(exc, asyncio.TimeoutError): + raise + # in case of proxy it is not ClientProxyConnectionError + # it is problem of resolving proxy ip itself + raise ClientConnectorDNSError(req.connection_key, exc) from exc + + last_exc: Optional[Exception] = None + addr_infos = self._convert_hosts_to_addr_infos(hosts) + while addr_infos: + # Strip trailing dots, certificates contain FQDN without dots. + # See https://github.com/aio-libs/aiohttp/issues/3636 + server_hostname = ( + (req.server_hostname or host).rstrip(".") if sslcontext else None + ) + + try: + transp, proto = await self._wrap_create_connection( + self._factory, + timeout=timeout, + ssl=sslcontext, + addr_infos=addr_infos, + server_hostname=server_hostname, + req=req, + client_error=client_error, + ) + except (ClientConnectorError, asyncio.TimeoutError) as exc: + last_exc = exc + aiohappyeyeballs.pop_addr_infos_interleave(addr_infos, self._interleave) + continue + + if req.is_ssl() and fingerprint: + try: + fingerprint.check(transp) + except ServerFingerprintMismatch as exc: + transp.close() + if not self._cleanup_closed_disabled: + self._cleanup_closed_transports.append(transp) + last_exc = exc + # Remove the bad peer from the list of addr_infos + sock: socket.socket = transp.get_extra_info("socket") + bad_peer = sock.getpeername() + aiohappyeyeballs.remove_addr_infos(addr_infos, bad_peer) + continue + + return transp, proto + else: + assert last_exc is not None + raise last_exc + + async def _create_proxy_connection( + self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout" + ) -> Tuple[asyncio.BaseTransport, ResponseHandler]: + self._fail_on_no_start_tls(req) + runtime_has_start_tls = self._loop_supports_start_tls() + proxy_req = self._update_proxy_auth_header_and_build_proxy_req(req) + + # create connection to proxy server + transport, proto = await self._create_direct_connection( + proxy_req, [], timeout, client_error=ClientProxyConnectionError + ) + + if req.is_ssl(): + if runtime_has_start_tls: + self._warn_about_tls_in_tls(transport, req) + + # For HTTPS requests over HTTP proxy + # we must notify proxy to tunnel connection + # so we send CONNECT command: + # CONNECT www.python.org:443 HTTP/1.1 + # Host: www.python.org + # + # next we must do TLS handshake and so on + # to do this we must wrap raw socket into secure one + # asyncio handles this perfectly + proxy_req.method = hdrs.METH_CONNECT + proxy_req.url = req.url + key = req.connection_key._replace( + proxy=None, proxy_auth=None, proxy_headers_hash=None + ) + conn = _ConnectTunnelConnection(self, key, proto, self._loop) + proxy_resp = await proxy_req.send(conn) + try: + protocol = conn._protocol + assert protocol is not None + + # read_until_eof=True will ensure the connection isn't closed + # once the response is received and processed allowing + # START_TLS to work on the connection below. + protocol.set_response_params( + read_until_eof=runtime_has_start_tls, + timeout_ceil_threshold=self._timeout_ceil_threshold, + ) + resp = await proxy_resp.start(conn) + except BaseException: + proxy_resp.close() + conn.close() + raise + else: + conn._protocol = None + try: + if resp.status != 200: + message = resp.reason + if message is None: + message = HTTPStatus(resp.status).phrase + raise ClientHttpProxyError( + proxy_resp.request_info, + resp.history, + status=resp.status, + message=message, + headers=resp.headers, + ) + if not runtime_has_start_tls: + rawsock = transport.get_extra_info("socket", default=None) + if rawsock is None: + raise RuntimeError( + "Transport does not expose socket instance" + ) + # Duplicate the socket, so now we can close proxy transport + rawsock = rawsock.dup() + except BaseException: + # It shouldn't be closed in `finally` because it's fed to + # `loop.start_tls()` and the docs say not to touch it after + # passing there. + transport.close() + raise + finally: + if not runtime_has_start_tls: + transport.close() + + if not runtime_has_start_tls: + # HTTP proxy with support for upgrade to HTTPS + sslcontext = self._get_ssl_context(req) + return await self._wrap_existing_connection( + self._factory, + timeout=timeout, + ssl=sslcontext, + sock=rawsock, + server_hostname=req.host, + req=req, + ) + + return await self._start_tls_connection( + # Access the old transport for the last time before it's + # closed and forgotten forever: + transport, + req=req, + timeout=timeout, + ) + finally: + proxy_resp.close() + + return transport, proto + + +class UnixConnector(BaseConnector): + """Unix socket connector. + + path - Unix socket path. + keepalive_timeout - (optional) Keep-alive timeout. + force_close - Set to True to force close and do reconnect + after each request (and between redirects). + limit - The total number of simultaneous connections. + limit_per_host - Number of simultaneous connections to one host. + loop - Optional event loop. + """ + + allowed_protocol_schema_set = HIGH_LEVEL_SCHEMA_SET | frozenset({"unix"}) + + def __init__( + self, + path: str, + force_close: bool = False, + keepalive_timeout: Union[object, float, None] = sentinel, + limit: int = 100, + limit_per_host: int = 0, + loop: Optional[asyncio.AbstractEventLoop] = None, + ) -> None: + super().__init__( + force_close=force_close, + keepalive_timeout=keepalive_timeout, + limit=limit, + limit_per_host=limit_per_host, + loop=loop, + ) + self._path = path + + @property + def path(self) -> str: + """Path to unix socket.""" + return self._path + + async def _create_connection( + self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout" + ) -> ResponseHandler: + try: + async with ceil_timeout( + timeout.sock_connect, ceil_threshold=timeout.ceil_threshold + ): + _, proto = await self._loop.create_unix_connection( + self._factory, self._path + ) + except OSError as exc: + if exc.errno is None and isinstance(exc, asyncio.TimeoutError): + raise + raise UnixClientConnectorError(self.path, req.connection_key, exc) from exc + + return proto + + +class NamedPipeConnector(BaseConnector): + """Named pipe connector. + + Only supported by the proactor event loop. + See also: https://docs.python.org/3/library/asyncio-eventloop.html + + path - Windows named pipe path. + keepalive_timeout - (optional) Keep-alive timeout. + force_close - Set to True to force close and do reconnect + after each request (and between redirects). + limit - The total number of simultaneous connections. + limit_per_host - Number of simultaneous connections to one host. + loop - Optional event loop. + """ + + allowed_protocol_schema_set = HIGH_LEVEL_SCHEMA_SET | frozenset({"npipe"}) + + def __init__( + self, + path: str, + force_close: bool = False, + keepalive_timeout: Union[object, float, None] = sentinel, + limit: int = 100, + limit_per_host: int = 0, + loop: Optional[asyncio.AbstractEventLoop] = None, + ) -> None: + super().__init__( + force_close=force_close, + keepalive_timeout=keepalive_timeout, + limit=limit, + limit_per_host=limit_per_host, + loop=loop, + ) + if not isinstance( + self._loop, + asyncio.ProactorEventLoop, # type: ignore[attr-defined] + ): + raise RuntimeError( + "Named Pipes only available in proactor loop under windows" + ) + self._path = path + + @property + def path(self) -> str: + """Path to the named pipe.""" + return self._path + + async def _create_connection( + self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout" + ) -> ResponseHandler: + try: + async with ceil_timeout( + timeout.sock_connect, ceil_threshold=timeout.ceil_threshold + ): + _, proto = await self._loop.create_pipe_connection( # type: ignore[attr-defined] + self._factory, self._path + ) + # the drain is required so that the connection_made is called + # and transport is set otherwise it is not set before the + # `assert conn.transport is not None` + # in client.py's _request method + await asyncio.sleep(0) + # other option is to manually set transport like + # `proto.transport = trans` + except OSError as exc: + if exc.errno is None and isinstance(exc, asyncio.TimeoutError): + raise + raise ClientConnectorError(req.connection_key, exc) from exc + + return cast(ResponseHandler, proto) diff --git a/venv/lib/python3.9/site-packages/aiohttp/cookiejar.py b/venv/lib/python3.9/site-packages/aiohttp/cookiejar.py new file mode 100644 index 0000000..193648d --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/cookiejar.py @@ -0,0 +1,522 @@ +import asyncio +import calendar +import contextlib +import datetime +import heapq +import itertools +import os # noqa +import pathlib +import pickle +import re +import time +import warnings +from collections import defaultdict +from collections.abc import Mapping +from http.cookies import BaseCookie, Morsel, SimpleCookie +from typing import ( + DefaultDict, + Dict, + Iterable, + Iterator, + List, + Optional, + Set, + Tuple, + Union, +) + +from yarl import URL + +from ._cookie_helpers import preserve_morsel_with_coded_value +from .abc import AbstractCookieJar, ClearCookiePredicate +from .helpers import is_ip_address +from .typedefs import LooseCookies, PathLike, StrOrURL + +__all__ = ("CookieJar", "DummyCookieJar") + + +CookieItem = Union[str, "Morsel[str]"] + +# We cache these string methods here as their use is in performance critical code. +_FORMAT_PATH = "{}/{}".format +_FORMAT_DOMAIN_REVERSED = "{1}.{0}".format + +# The minimum number of scheduled cookie expirations before we start cleaning up +# the expiration heap. This is a performance optimization to avoid cleaning up the +# heap too often when there are only a few scheduled expirations. +_MIN_SCHEDULED_COOKIE_EXPIRATION = 100 +_SIMPLE_COOKIE = SimpleCookie() + + +class CookieJar(AbstractCookieJar): + """Implements cookie storage adhering to RFC 6265.""" + + DATE_TOKENS_RE = re.compile( + r"[\x09\x20-\x2F\x3B-\x40\x5B-\x60\x7B-\x7E]*" + r"(?P[\x00-\x08\x0A-\x1F\d:a-zA-Z\x7F-\xFF]+)" + ) + + DATE_HMS_TIME_RE = re.compile(r"(\d{1,2}):(\d{1,2}):(\d{1,2})") + + DATE_DAY_OF_MONTH_RE = re.compile(r"(\d{1,2})") + + DATE_MONTH_RE = re.compile( + "(jan)|(feb)|(mar)|(apr)|(may)|(jun)|(jul)|(aug)|(sep)|(oct)|(nov)|(dec)", + re.I, + ) + + DATE_YEAR_RE = re.compile(r"(\d{2,4})") + + # calendar.timegm() fails for timestamps after datetime.datetime.max + # Minus one as a loss of precision occurs when timestamp() is called. + MAX_TIME = ( + int(datetime.datetime.max.replace(tzinfo=datetime.timezone.utc).timestamp()) - 1 + ) + try: + calendar.timegm(time.gmtime(MAX_TIME)) + except (OSError, ValueError): + # Hit the maximum representable time on Windows + # https://learn.microsoft.com/en-us/cpp/c-runtime-library/reference/localtime-localtime32-localtime64 + # Throws ValueError on PyPy 3.9, OSError elsewhere + MAX_TIME = calendar.timegm((3000, 12, 31, 23, 59, 59, -1, -1, -1)) + except OverflowError: + # #4515: datetime.max may not be representable on 32-bit platforms + MAX_TIME = 2**31 - 1 + # Avoid minuses in the future, 3x faster + SUB_MAX_TIME = MAX_TIME - 1 + + def __init__( + self, + *, + unsafe: bool = False, + quote_cookie: bool = True, + treat_as_secure_origin: Union[StrOrURL, List[StrOrURL], None] = None, + loop: Optional[asyncio.AbstractEventLoop] = None, + ) -> None: + super().__init__(loop=loop) + self._cookies: DefaultDict[Tuple[str, str], SimpleCookie] = defaultdict( + SimpleCookie + ) + self._morsel_cache: DefaultDict[Tuple[str, str], Dict[str, Morsel[str]]] = ( + defaultdict(dict) + ) + self._host_only_cookies: Set[Tuple[str, str]] = set() + self._unsafe = unsafe + self._quote_cookie = quote_cookie + if treat_as_secure_origin is None: + treat_as_secure_origin = [] + elif isinstance(treat_as_secure_origin, URL): + treat_as_secure_origin = [treat_as_secure_origin.origin()] + elif isinstance(treat_as_secure_origin, str): + treat_as_secure_origin = [URL(treat_as_secure_origin).origin()] + else: + treat_as_secure_origin = [ + URL(url).origin() if isinstance(url, str) else url.origin() + for url in treat_as_secure_origin + ] + self._treat_as_secure_origin = treat_as_secure_origin + self._expire_heap: List[Tuple[float, Tuple[str, str, str]]] = [] + self._expirations: Dict[Tuple[str, str, str], float] = {} + + @property + def quote_cookie(self) -> bool: + return self._quote_cookie + + def save(self, file_path: PathLike) -> None: + file_path = pathlib.Path(file_path) + with file_path.open(mode="wb") as f: + pickle.dump(self._cookies, f, pickle.HIGHEST_PROTOCOL) + + def load(self, file_path: PathLike) -> None: + file_path = pathlib.Path(file_path) + with file_path.open(mode="rb") as f: + self._cookies = pickle.load(f) + + def clear(self, predicate: Optional[ClearCookiePredicate] = None) -> None: + if predicate is None: + self._expire_heap.clear() + self._cookies.clear() + self._morsel_cache.clear() + self._host_only_cookies.clear() + self._expirations.clear() + return + + now = time.time() + to_del = [ + key + for (domain, path), cookie in self._cookies.items() + for name, morsel in cookie.items() + if ( + (key := (domain, path, name)) in self._expirations + and self._expirations[key] <= now + ) + or predicate(morsel) + ] + if to_del: + self._delete_cookies(to_del) + + def clear_domain(self, domain: str) -> None: + self.clear(lambda x: self._is_domain_match(domain, x["domain"])) + + def __iter__(self) -> "Iterator[Morsel[str]]": + self._do_expiration() + for val in self._cookies.values(): + yield from val.values() + + def __len__(self) -> int: + """Return number of cookies. + + This function does not iterate self to avoid unnecessary expiration + checks. + """ + return sum(len(cookie.values()) for cookie in self._cookies.values()) + + def _do_expiration(self) -> None: + """Remove expired cookies.""" + if not (expire_heap_len := len(self._expire_heap)): + return + + # If the expiration heap grows larger than the number expirations + # times two, we clean it up to avoid keeping expired entries in + # the heap and consuming memory. We guard this with a minimum + # threshold to avoid cleaning up the heap too often when there are + # only a few scheduled expirations. + if ( + expire_heap_len > _MIN_SCHEDULED_COOKIE_EXPIRATION + and expire_heap_len > len(self._expirations) * 2 + ): + # Remove any expired entries from the expiration heap + # that do not match the expiration time in the expirations + # as it means the cookie has been re-added to the heap + # with a different expiration time. + self._expire_heap = [ + entry + for entry in self._expire_heap + if self._expirations.get(entry[1]) == entry[0] + ] + heapq.heapify(self._expire_heap) + + now = time.time() + to_del: List[Tuple[str, str, str]] = [] + # Find any expired cookies and add them to the to-delete list + while self._expire_heap: + when, cookie_key = self._expire_heap[0] + if when > now: + break + heapq.heappop(self._expire_heap) + # Check if the cookie hasn't been re-added to the heap + # with a different expiration time as it will be removed + # later when it reaches the top of the heap and its + # expiration time is met. + if self._expirations.get(cookie_key) == when: + to_del.append(cookie_key) + + if to_del: + self._delete_cookies(to_del) + + def _delete_cookies(self, to_del: List[Tuple[str, str, str]]) -> None: + for domain, path, name in to_del: + self._host_only_cookies.discard((domain, name)) + self._cookies[(domain, path)].pop(name, None) + self._morsel_cache[(domain, path)].pop(name, None) + self._expirations.pop((domain, path, name), None) + + def _expire_cookie(self, when: float, domain: str, path: str, name: str) -> None: + cookie_key = (domain, path, name) + if self._expirations.get(cookie_key) == when: + # Avoid adding duplicates to the heap + return + heapq.heappush(self._expire_heap, (when, cookie_key)) + self._expirations[cookie_key] = when + + def update_cookies(self, cookies: LooseCookies, response_url: URL = URL()) -> None: + """Update cookies.""" + hostname = response_url.raw_host + + if not self._unsafe and is_ip_address(hostname): + # Don't accept cookies from IPs + return + + if isinstance(cookies, Mapping): + cookies = cookies.items() + + for name, cookie in cookies: + if not isinstance(cookie, Morsel): + tmp = SimpleCookie() + tmp[name] = cookie # type: ignore[assignment] + cookie = tmp[name] + + domain = cookie["domain"] + + # ignore domains with trailing dots + if domain and domain[-1] == ".": + domain = "" + del cookie["domain"] + + if not domain and hostname is not None: + # Set the cookie's domain to the response hostname + # and set its host-only-flag + self._host_only_cookies.add((hostname, name)) + domain = cookie["domain"] = hostname + + if domain and domain[0] == ".": + # Remove leading dot + domain = domain[1:] + cookie["domain"] = domain + + if hostname and not self._is_domain_match(domain, hostname): + # Setting cookies for different domains is not allowed + continue + + path = cookie["path"] + if not path or path[0] != "/": + # Set the cookie's path to the response path + path = response_url.path + if not path.startswith("/"): + path = "/" + else: + # Cut everything from the last slash to the end + path = "/" + path[1 : path.rfind("/")] + cookie["path"] = path + path = path.rstrip("/") + + if max_age := cookie["max-age"]: + try: + delta_seconds = int(max_age) + max_age_expiration = min(time.time() + delta_seconds, self.MAX_TIME) + self._expire_cookie(max_age_expiration, domain, path, name) + except ValueError: + cookie["max-age"] = "" + + elif expires := cookie["expires"]: + if expire_time := self._parse_date(expires): + self._expire_cookie(expire_time, domain, path, name) + else: + cookie["expires"] = "" + + key = (domain, path) + if self._cookies[key].get(name) != cookie: + # Don't blow away the cache if the same + # cookie gets set again + self._cookies[key][name] = cookie + self._morsel_cache[key].pop(name, None) + + self._do_expiration() + + def filter_cookies(self, request_url: URL = URL()) -> "BaseCookie[str]": + """Returns this jar's cookies filtered by their attributes.""" + # We always use BaseCookie now since all + # cookies set on on filtered are fully constructed + # Morsels, not just names and values. + filtered: BaseCookie[str] = BaseCookie() + if not self._cookies: + # Skip do_expiration() if there are no cookies. + return filtered + self._do_expiration() + if not self._cookies: + # Skip rest of function if no non-expired cookies. + return filtered + if type(request_url) is not URL: + warnings.warn( + "filter_cookies expects yarl.URL instances only," + f"and will stop working in 4.x, got {type(request_url)}", + DeprecationWarning, + stacklevel=2, + ) + request_url = URL(request_url) + hostname = request_url.raw_host or "" + + is_not_secure = request_url.scheme not in ("https", "wss") + if is_not_secure and self._treat_as_secure_origin: + request_origin = URL() + with contextlib.suppress(ValueError): + request_origin = request_url.origin() + is_not_secure = request_origin not in self._treat_as_secure_origin + + # Send shared cookie + key = ("", "") + for c in self._cookies[key].values(): + # Check cache first + if c.key in self._morsel_cache[key]: + filtered[c.key] = self._morsel_cache[key][c.key] + continue + + # Build and cache the morsel + mrsl_val = self._build_morsel(c) + self._morsel_cache[key][c.key] = mrsl_val + filtered[c.key] = mrsl_val + + if is_ip_address(hostname): + if not self._unsafe: + return filtered + domains: Iterable[str] = (hostname,) + else: + # Get all the subdomains that might match a cookie (e.g. "foo.bar.com", "bar.com", "com") + domains = itertools.accumulate( + reversed(hostname.split(".")), _FORMAT_DOMAIN_REVERSED + ) + + # Get all the path prefixes that might match a cookie (e.g. "", "/foo", "/foo/bar") + paths = itertools.accumulate(request_url.path.split("/"), _FORMAT_PATH) + # Create every combination of (domain, path) pairs. + pairs = itertools.product(domains, paths) + + path_len = len(request_url.path) + # Point 2: https://www.rfc-editor.org/rfc/rfc6265.html#section-5.4 + for p in pairs: + if p not in self._cookies: + continue + for name, cookie in self._cookies[p].items(): + domain = cookie["domain"] + + if (domain, name) in self._host_only_cookies and domain != hostname: + continue + + # Skip edge case when the cookie has a trailing slash but request doesn't. + if len(cookie["path"]) > path_len: + continue + + if is_not_secure and cookie["secure"]: + continue + + # We already built the Morsel so reuse it here + if name in self._morsel_cache[p]: + filtered[name] = self._morsel_cache[p][name] + continue + + # Build and cache the morsel + mrsl_val = self._build_morsel(cookie) + self._morsel_cache[p][name] = mrsl_val + filtered[name] = mrsl_val + + return filtered + + def _build_morsel(self, cookie: Morsel[str]) -> Morsel[str]: + """Build a morsel for sending, respecting quote_cookie setting.""" + if self._quote_cookie and cookie.coded_value and cookie.coded_value[0] == '"': + return preserve_morsel_with_coded_value(cookie) + morsel: Morsel[str] = Morsel() + if self._quote_cookie: + value, coded_value = _SIMPLE_COOKIE.value_encode(cookie.value) + else: + coded_value = value = cookie.value + # We use __setstate__ instead of the public set() API because it allows us to + # bypass validation and set already validated state. This is more stable than + # setting protected attributes directly and unlikely to change since it would + # break pickling. + morsel.__setstate__({"key": cookie.key, "value": value, "coded_value": coded_value}) # type: ignore[attr-defined] + return morsel + + @staticmethod + def _is_domain_match(domain: str, hostname: str) -> bool: + """Implements domain matching adhering to RFC 6265.""" + if hostname == domain: + return True + + if not hostname.endswith(domain): + return False + + non_matching = hostname[: -len(domain)] + + if not non_matching.endswith("."): + return False + + return not is_ip_address(hostname) + + @classmethod + def _parse_date(cls, date_str: str) -> Optional[int]: + """Implements date string parsing adhering to RFC 6265.""" + if not date_str: + return None + + found_time = False + found_day = False + found_month = False + found_year = False + + hour = minute = second = 0 + day = 0 + month = 0 + year = 0 + + for token_match in cls.DATE_TOKENS_RE.finditer(date_str): + + token = token_match.group("token") + + if not found_time: + time_match = cls.DATE_HMS_TIME_RE.match(token) + if time_match: + found_time = True + hour, minute, second = (int(s) for s in time_match.groups()) + continue + + if not found_day: + day_match = cls.DATE_DAY_OF_MONTH_RE.match(token) + if day_match: + found_day = True + day = int(day_match.group()) + continue + + if not found_month: + month_match = cls.DATE_MONTH_RE.match(token) + if month_match: + found_month = True + assert month_match.lastindex is not None + month = month_match.lastindex + continue + + if not found_year: + year_match = cls.DATE_YEAR_RE.match(token) + if year_match: + found_year = True + year = int(year_match.group()) + + if 70 <= year <= 99: + year += 1900 + elif 0 <= year <= 69: + year += 2000 + + if False in (found_day, found_month, found_year, found_time): + return None + + if not 1 <= day <= 31: + return None + + if year < 1601 or hour > 23 or minute > 59 or second > 59: + return None + + return calendar.timegm((year, month, day, hour, minute, second, -1, -1, -1)) + + +class DummyCookieJar(AbstractCookieJar): + """Implements a dummy cookie storage. + + It can be used with the ClientSession when no cookie processing is needed. + + """ + + def __init__(self, *, loop: Optional[asyncio.AbstractEventLoop] = None) -> None: + super().__init__(loop=loop) + + def __iter__(self) -> "Iterator[Morsel[str]]": + while False: + yield None + + def __len__(self) -> int: + return 0 + + @property + def quote_cookie(self) -> bool: + return True + + def clear(self, predicate: Optional[ClearCookiePredicate] = None) -> None: + pass + + def clear_domain(self, domain: str) -> None: + pass + + def update_cookies(self, cookies: LooseCookies, response_url: URL = URL()) -> None: + pass + + def filter_cookies(self, request_url: URL) -> "BaseCookie[str]": + return SimpleCookie() diff --git a/venv/lib/python3.9/site-packages/aiohttp/formdata.py b/venv/lib/python3.9/site-packages/aiohttp/formdata.py new file mode 100644 index 0000000..17d219a --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/formdata.py @@ -0,0 +1,184 @@ +import io +import warnings +from typing import Any, Iterable, List, Optional +from urllib.parse import urlencode + +from multidict import MultiDict, MultiDictProxy + +from . import hdrs, multipart, payload +from .helpers import guess_filename +from .payload import Payload + +__all__ = ("FormData",) + + +class FormData: + """Helper class for form body generation. + + Supports multipart/form-data and application/x-www-form-urlencoded. + """ + + def __init__( + self, + fields: Iterable[Any] = (), + quote_fields: bool = True, + charset: Optional[str] = None, + *, + default_to_multipart: bool = False, + ) -> None: + self._writer = multipart.MultipartWriter("form-data") + self._fields: List[Any] = [] + self._is_multipart = default_to_multipart + self._quote_fields = quote_fields + self._charset = charset + + if isinstance(fields, dict): + fields = list(fields.items()) + elif not isinstance(fields, (list, tuple)): + fields = (fields,) + self.add_fields(*fields) + + @property + def is_multipart(self) -> bool: + return self._is_multipart + + def add_field( + self, + name: str, + value: Any, + *, + content_type: Optional[str] = None, + filename: Optional[str] = None, + content_transfer_encoding: Optional[str] = None, + ) -> None: + + if isinstance(value, io.IOBase): + self._is_multipart = True + elif isinstance(value, (bytes, bytearray, memoryview)): + msg = ( + "In v4, passing bytes will no longer create a file field. " + "Please explicitly use the filename parameter or pass a BytesIO object." + ) + if filename is None and content_transfer_encoding is None: + warnings.warn(msg, DeprecationWarning) + filename = name + + type_options: MultiDict[str] = MultiDict({"name": name}) + if filename is not None and not isinstance(filename, str): + raise TypeError("filename must be an instance of str. Got: %s" % filename) + if filename is None and isinstance(value, io.IOBase): + filename = guess_filename(value, name) + if filename is not None: + type_options["filename"] = filename + self._is_multipart = True + + headers = {} + if content_type is not None: + if not isinstance(content_type, str): + raise TypeError( + "content_type must be an instance of str. Got: %s" % content_type + ) + if "\r" in content_type or "\n" in content_type: + raise ValueError( + "Newline or carriage return detected in headers. " + "Potential header injection attack." + ) + headers[hdrs.CONTENT_TYPE] = content_type + self._is_multipart = True + if content_transfer_encoding is not None: + if not isinstance(content_transfer_encoding, str): + raise TypeError( + "content_transfer_encoding must be an instance" + " of str. Got: %s" % content_transfer_encoding + ) + msg = ( + "content_transfer_encoding is deprecated. " + "To maintain compatibility with v4 please pass a BytesPayload." + ) + warnings.warn(msg, DeprecationWarning) + self._is_multipart = True + + self._fields.append((type_options, headers, value)) + + def add_fields(self, *fields: Any) -> None: + to_add = list(fields) + + while to_add: + rec = to_add.pop(0) + + if isinstance(rec, io.IOBase): + k = guess_filename(rec, "unknown") + self.add_field(k, rec) # type: ignore[arg-type] + + elif isinstance(rec, (MultiDictProxy, MultiDict)): + to_add.extend(rec.items()) + + elif isinstance(rec, (list, tuple)) and len(rec) == 2: + k, fp = rec + self.add_field(k, fp) + + else: + raise TypeError( + "Only io.IOBase, multidict and (name, file) " + "pairs allowed, use .add_field() for passing " + "more complex parameters, got {!r}".format(rec) + ) + + def _gen_form_urlencoded(self) -> payload.BytesPayload: + # form data (x-www-form-urlencoded) + data = [] + for type_options, _, value in self._fields: + data.append((type_options["name"], value)) + + charset = self._charset if self._charset is not None else "utf-8" + + if charset == "utf-8": + content_type = "application/x-www-form-urlencoded" + else: + content_type = "application/x-www-form-urlencoded; charset=%s" % charset + + return payload.BytesPayload( + urlencode(data, doseq=True, encoding=charset).encode(), + content_type=content_type, + ) + + def _gen_form_data(self) -> multipart.MultipartWriter: + """Encode a list of fields using the multipart/form-data MIME format""" + for dispparams, headers, value in self._fields: + try: + if hdrs.CONTENT_TYPE in headers: + part = payload.get_payload( + value, + content_type=headers[hdrs.CONTENT_TYPE], + headers=headers, + encoding=self._charset, + ) + else: + part = payload.get_payload( + value, headers=headers, encoding=self._charset + ) + except Exception as exc: + raise TypeError( + "Can not serialize value type: %r\n " + "headers: %r\n value: %r" % (type(value), headers, value) + ) from exc + + if dispparams: + part.set_content_disposition( + "form-data", quote_fields=self._quote_fields, **dispparams + ) + # FIXME cgi.FieldStorage doesn't likes body parts with + # Content-Length which were sent via chunked transfer encoding + assert part.headers is not None + part.headers.popall(hdrs.CONTENT_LENGTH, None) + + self._writer.append_payload(part) + + self._fields.clear() + return self._writer + + def __call__(self) -> Payload: + if self._is_multipart: + return self._gen_form_data() + else: + return self._gen_form_urlencoded() diff --git a/venv/lib/python3.9/site-packages/aiohttp/hdrs.py b/venv/lib/python3.9/site-packages/aiohttp/hdrs.py new file mode 100644 index 0000000..c8d6b35 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/hdrs.py @@ -0,0 +1,121 @@ +"""HTTP Headers constants.""" + +# After changing the file content call ./tools/gen.py +# to regenerate the headers parser +import itertools +from typing import Final, Set + +from multidict import istr + +METH_ANY: Final[str] = "*" +METH_CONNECT: Final[str] = "CONNECT" +METH_HEAD: Final[str] = "HEAD" +METH_GET: Final[str] = "GET" +METH_DELETE: Final[str] = "DELETE" +METH_OPTIONS: Final[str] = "OPTIONS" +METH_PATCH: Final[str] = "PATCH" +METH_POST: Final[str] = "POST" +METH_PUT: Final[str] = "PUT" +METH_TRACE: Final[str] = "TRACE" + +METH_ALL: Final[Set[str]] = { + METH_CONNECT, + METH_HEAD, + METH_GET, + METH_DELETE, + METH_OPTIONS, + METH_PATCH, + METH_POST, + METH_PUT, + METH_TRACE, +} + +ACCEPT: Final[istr] = istr("Accept") +ACCEPT_CHARSET: Final[istr] = istr("Accept-Charset") +ACCEPT_ENCODING: Final[istr] = istr("Accept-Encoding") +ACCEPT_LANGUAGE: Final[istr] = istr("Accept-Language") +ACCEPT_RANGES: Final[istr] = istr("Accept-Ranges") +ACCESS_CONTROL_MAX_AGE: Final[istr] = istr("Access-Control-Max-Age") +ACCESS_CONTROL_ALLOW_CREDENTIALS: Final[istr] = istr("Access-Control-Allow-Credentials") +ACCESS_CONTROL_ALLOW_HEADERS: Final[istr] = istr("Access-Control-Allow-Headers") +ACCESS_CONTROL_ALLOW_METHODS: Final[istr] = istr("Access-Control-Allow-Methods") +ACCESS_CONTROL_ALLOW_ORIGIN: Final[istr] = istr("Access-Control-Allow-Origin") +ACCESS_CONTROL_EXPOSE_HEADERS: Final[istr] = istr("Access-Control-Expose-Headers") +ACCESS_CONTROL_REQUEST_HEADERS: Final[istr] = istr("Access-Control-Request-Headers") +ACCESS_CONTROL_REQUEST_METHOD: Final[istr] = istr("Access-Control-Request-Method") +AGE: Final[istr] = istr("Age") +ALLOW: Final[istr] = istr("Allow") +AUTHORIZATION: Final[istr] = istr("Authorization") +CACHE_CONTROL: Final[istr] = istr("Cache-Control") +CONNECTION: Final[istr] = istr("Connection") +CONTENT_DISPOSITION: Final[istr] = istr("Content-Disposition") +CONTENT_ENCODING: Final[istr] = istr("Content-Encoding") +CONTENT_LANGUAGE: Final[istr] = istr("Content-Language") +CONTENT_LENGTH: Final[istr] = istr("Content-Length") +CONTENT_LOCATION: Final[istr] = istr("Content-Location") +CONTENT_MD5: Final[istr] = istr("Content-MD5") +CONTENT_RANGE: Final[istr] = istr("Content-Range") +CONTENT_TRANSFER_ENCODING: Final[istr] = istr("Content-Transfer-Encoding") +CONTENT_TYPE: Final[istr] = istr("Content-Type") +COOKIE: Final[istr] = istr("Cookie") +DATE: Final[istr] = istr("Date") +DESTINATION: Final[istr] = istr("Destination") +DIGEST: Final[istr] = istr("Digest") +ETAG: Final[istr] = istr("Etag") +EXPECT: Final[istr] = istr("Expect") +EXPIRES: Final[istr] = istr("Expires") +FORWARDED: Final[istr] = istr("Forwarded") +FROM: Final[istr] = istr("From") +HOST: Final[istr] = istr("Host") +IF_MATCH: Final[istr] = istr("If-Match") +IF_MODIFIED_SINCE: Final[istr] = istr("If-Modified-Since") +IF_NONE_MATCH: Final[istr] = istr("If-None-Match") +IF_RANGE: Final[istr] = istr("If-Range") +IF_UNMODIFIED_SINCE: Final[istr] = istr("If-Unmodified-Since") +KEEP_ALIVE: Final[istr] = istr("Keep-Alive") +LAST_EVENT_ID: Final[istr] = istr("Last-Event-ID") +LAST_MODIFIED: Final[istr] = istr("Last-Modified") +LINK: Final[istr] = istr("Link") +LOCATION: Final[istr] = istr("Location") +MAX_FORWARDS: Final[istr] = istr("Max-Forwards") +ORIGIN: Final[istr] = istr("Origin") +PRAGMA: Final[istr] = istr("Pragma") +PROXY_AUTHENTICATE: Final[istr] = istr("Proxy-Authenticate") +PROXY_AUTHORIZATION: Final[istr] = istr("Proxy-Authorization") +RANGE: Final[istr] = istr("Range") +REFERER: Final[istr] = istr("Referer") +RETRY_AFTER: Final[istr] = istr("Retry-After") +SEC_WEBSOCKET_ACCEPT: Final[istr] = istr("Sec-WebSocket-Accept") +SEC_WEBSOCKET_VERSION: Final[istr] = istr("Sec-WebSocket-Version") +SEC_WEBSOCKET_PROTOCOL: Final[istr] = istr("Sec-WebSocket-Protocol") +SEC_WEBSOCKET_EXTENSIONS: Final[istr] = istr("Sec-WebSocket-Extensions") +SEC_WEBSOCKET_KEY: Final[istr] = istr("Sec-WebSocket-Key") +SEC_WEBSOCKET_KEY1: Final[istr] = istr("Sec-WebSocket-Key1") +SERVER: Final[istr] = istr("Server") +SET_COOKIE: Final[istr] = istr("Set-Cookie") +TE: Final[istr] = istr("TE") +TRAILER: Final[istr] = istr("Trailer") +TRANSFER_ENCODING: Final[istr] = istr("Transfer-Encoding") +UPGRADE: Final[istr] = istr("Upgrade") +URI: Final[istr] = istr("URI") +USER_AGENT: Final[istr] = istr("User-Agent") +VARY: Final[istr] = istr("Vary") +VIA: Final[istr] = istr("Via") +WANT_DIGEST: Final[istr] = istr("Want-Digest") +WARNING: Final[istr] = istr("Warning") +WWW_AUTHENTICATE: Final[istr] = istr("WWW-Authenticate") +X_FORWARDED_FOR: Final[istr] = istr("X-Forwarded-For") +X_FORWARDED_HOST: Final[istr] = istr("X-Forwarded-Host") +X_FORWARDED_PROTO: Final[istr] = istr("X-Forwarded-Proto") + +# These are the upper/lower case variants of the headers/methods +# Example: {'hOst', 'host', 'HoST', 'HOSt', 'hOsT', 'HosT', 'hoSt', ...} +METH_HEAD_ALL: Final = frozenset( + map("".join, itertools.product(*zip(METH_HEAD.upper(), METH_HEAD.lower()))) +) +METH_CONNECT_ALL: Final = frozenset( + map("".join, itertools.product(*zip(METH_CONNECT.upper(), METH_CONNECT.lower()))) +) +HOST_ALL: Final = frozenset( + map("".join, itertools.product(*zip(HOST.upper(), HOST.lower()))) +) diff --git a/venv/lib/python3.9/site-packages/aiohttp/helpers.py b/venv/lib/python3.9/site-packages/aiohttp/helpers.py new file mode 100644 index 0000000..dfab987 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/helpers.py @@ -0,0 +1,986 @@ +"""Various helper functions""" + +import asyncio +import base64 +import binascii +import contextlib +import datetime +import enum +import functools +import inspect +import netrc +import os +import platform +import re +import sys +import time +import weakref +from collections import namedtuple +from contextlib import suppress +from email.message import EmailMessage +from email.parser import HeaderParser +from email.policy import HTTP +from email.utils import parsedate +from math import ceil +from pathlib import Path +from types import MappingProxyType, TracebackType +from typing import ( + Any, + Callable, + ContextManager, + Dict, + Generator, + Generic, + Iterable, + Iterator, + List, + Mapping, + Optional, + Protocol, + Tuple, + Type, + TypeVar, + Union, + get_args, + overload, +) +from urllib.parse import quote +from urllib.request import getproxies, proxy_bypass + +import attr +from multidict import MultiDict, MultiDictProxy, MultiMapping +from propcache.api import under_cached_property as reify +from yarl import URL + +from . import hdrs +from .log import client_logger + +if sys.version_info >= (3, 11): + import asyncio as async_timeout +else: + import async_timeout + +__all__ = ("BasicAuth", "ChainMapProxy", "ETag", "reify") + +IS_MACOS = platform.system() == "Darwin" +IS_WINDOWS = platform.system() == "Windows" + +PY_310 = sys.version_info >= (3, 10) +PY_311 = sys.version_info >= (3, 11) + + +_T = TypeVar("_T") +_S = TypeVar("_S") + +_SENTINEL = enum.Enum("_SENTINEL", "sentinel") +sentinel = _SENTINEL.sentinel + +NO_EXTENSIONS = bool(os.environ.get("AIOHTTP_NO_EXTENSIONS")) + +# https://datatracker.ietf.org/doc/html/rfc9112#section-6.3-2.1 +EMPTY_BODY_STATUS_CODES = frozenset((204, 304, *range(100, 200))) +# https://datatracker.ietf.org/doc/html/rfc9112#section-6.3-2.1 +# https://datatracker.ietf.org/doc/html/rfc9112#section-6.3-2.2 +EMPTY_BODY_METHODS = hdrs.METH_HEAD_ALL + +DEBUG = sys.flags.dev_mode or ( + not sys.flags.ignore_environment and bool(os.environ.get("PYTHONASYNCIODEBUG")) +) + + +CHAR = {chr(i) for i in range(0, 128)} +CTL = {chr(i) for i in range(0, 32)} | { + chr(127), +} +SEPARATORS = { + "(", + ")", + "<", + ">", + "@", + ",", + ";", + ":", + "\\", + '"', + "/", + "[", + "]", + "?", + "=", + "{", + "}", + " ", + chr(9), +} +TOKEN = CHAR ^ CTL ^ SEPARATORS + + +class noop: + def __await__(self) -> Generator[None, None, None]: + yield + + +class BasicAuth(namedtuple("BasicAuth", ["login", "password", "encoding"])): + """Http basic authentication helper.""" + + def __new__( + cls, login: str, password: str = "", encoding: str = "latin1" + ) -> "BasicAuth": + if login is None: + raise ValueError("None is not allowed as login value") + + if password is None: + raise ValueError("None is not allowed as password value") + + if ":" in login: + raise ValueError('A ":" is not allowed in login (RFC 1945#section-11.1)') + + return super().__new__(cls, login, password, encoding) + + @classmethod + def decode(cls, auth_header: str, encoding: str = "latin1") -> "BasicAuth": + """Create a BasicAuth object from an Authorization HTTP header.""" + try: + auth_type, encoded_credentials = auth_header.split(" ", 1) + except ValueError: + raise ValueError("Could not parse authorization header.") + + if auth_type.lower() != "basic": + raise ValueError("Unknown authorization method %s" % auth_type) + + try: + decoded = base64.b64decode( + encoded_credentials.encode("ascii"), validate=True + ).decode(encoding) + except binascii.Error: + raise ValueError("Invalid base64 encoding.") + + try: + # RFC 2617 HTTP Authentication + # https://www.ietf.org/rfc/rfc2617.txt + # the colon must be present, but the username and password may be + # otherwise blank. + username, password = decoded.split(":", 1) + except ValueError: + raise ValueError("Invalid credentials.") + + return cls(username, password, encoding=encoding) + + @classmethod + def from_url(cls, url: URL, *, encoding: str = "latin1") -> Optional["BasicAuth"]: + """Create BasicAuth from url.""" + if not isinstance(url, URL): + raise TypeError("url should be yarl.URL instance") + # Check raw_user and raw_password first as yarl is likely + # to already have these values parsed from the netloc in the cache. + if url.raw_user is None and url.raw_password is None: + return None + return cls(url.user or "", url.password or "", encoding=encoding) + + def encode(self) -> str: + """Encode credentials.""" + creds = (f"{self.login}:{self.password}").encode(self.encoding) + return "Basic %s" % base64.b64encode(creds).decode(self.encoding) + + +def strip_auth_from_url(url: URL) -> Tuple[URL, Optional[BasicAuth]]: + """Remove user and password from URL if present and return BasicAuth object.""" + # Check raw_user and raw_password first as yarl is likely + # to already have these values parsed from the netloc in the cache. + if url.raw_user is None and url.raw_password is None: + return url, None + return url.with_user(None), BasicAuth(url.user or "", url.password or "") + + +def netrc_from_env() -> Optional[netrc.netrc]: + """Load netrc from file. + + Attempt to load it from the path specified by the env-var + NETRC or in the default location in the user's home directory. + + Returns None if it couldn't be found or fails to parse. + """ + netrc_env = os.environ.get("NETRC") + + if netrc_env is not None: + netrc_path = Path(netrc_env) + else: + try: + home_dir = Path.home() + except RuntimeError as e: # pragma: no cover + # if pathlib can't resolve home, it may raise a RuntimeError + client_logger.debug( + "Could not resolve home directory when " + "trying to look for .netrc file: %s", + e, + ) + return None + + netrc_path = home_dir / ("_netrc" if IS_WINDOWS else ".netrc") + + try: + return netrc.netrc(str(netrc_path)) + except netrc.NetrcParseError as e: + client_logger.warning("Could not parse .netrc file: %s", e) + except OSError as e: + netrc_exists = False + with contextlib.suppress(OSError): + netrc_exists = netrc_path.is_file() + # we couldn't read the file (doesn't exist, permissions, etc.) + if netrc_env or netrc_exists: + # only warn if the environment wanted us to load it, + # or it appears like the default file does actually exist + client_logger.warning("Could not read .netrc file: %s", e) + + return None + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class ProxyInfo: + proxy: URL + proxy_auth: Optional[BasicAuth] + + +def basicauth_from_netrc(netrc_obj: Optional[netrc.netrc], host: str) -> BasicAuth: + """ + Return :py:class:`~aiohttp.BasicAuth` credentials for ``host`` from ``netrc_obj``. + + :raises LookupError: if ``netrc_obj`` is :py:data:`None` or if no + entry is found for the ``host``. + """ + if netrc_obj is None: + raise LookupError("No .netrc file found") + auth_from_netrc = netrc_obj.authenticators(host) + + if auth_from_netrc is None: + raise LookupError(f"No entry for {host!s} found in the `.netrc` file.") + login, account, password = auth_from_netrc + + # TODO(PY311): username = login or account + # Up to python 3.10, account could be None if not specified, + # and login will be empty string if not specified. From 3.11, + # login and account will be empty string if not specified. + username = login if (login or account is None) else account + + # TODO(PY311): Remove this, as password will be empty string + # if not specified + if password is None: + password = "" + + return BasicAuth(username, password) + + +def proxies_from_env() -> Dict[str, ProxyInfo]: + proxy_urls = { + k: URL(v) + for k, v in getproxies().items() + if k in ("http", "https", "ws", "wss") + } + netrc_obj = netrc_from_env() + stripped = {k: strip_auth_from_url(v) for k, v in proxy_urls.items()} + ret = {} + for proto, val in stripped.items(): + proxy, auth = val + if proxy.scheme in ("https", "wss"): + client_logger.warning( + "%s proxies %s are not supported, ignoring", proxy.scheme.upper(), proxy + ) + continue + if netrc_obj and auth is None: + if proxy.host is not None: + try: + auth = basicauth_from_netrc(netrc_obj, proxy.host) + except LookupError: + auth = None + ret[proto] = ProxyInfo(proxy, auth) + return ret + + +def get_env_proxy_for_url(url: URL) -> Tuple[URL, Optional[BasicAuth]]: + """Get a permitted proxy for the given URL from the env.""" + if url.host is not None and proxy_bypass(url.host): + raise LookupError(f"Proxying is disallowed for `{url.host!r}`") + + proxies_in_env = proxies_from_env() + try: + proxy_info = proxies_in_env[url.scheme] + except KeyError: + raise LookupError(f"No proxies found for `{url!s}` in the env") + else: + return proxy_info.proxy, proxy_info.proxy_auth + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class MimeType: + type: str + subtype: str + suffix: str + parameters: "MultiDictProxy[str]" + + +@functools.lru_cache(maxsize=56) +def parse_mimetype(mimetype: str) -> MimeType: + """Parses a MIME type into its components. + + mimetype is a MIME type string. + + Returns a MimeType object. + + Example: + + >>> parse_mimetype('text/html; charset=utf-8') + MimeType(type='text', subtype='html', suffix='', + parameters={'charset': 'utf-8'}) + + """ + if not mimetype: + return MimeType( + type="", subtype="", suffix="", parameters=MultiDictProxy(MultiDict()) + ) + + parts = mimetype.split(";") + params: MultiDict[str] = MultiDict() + for item in parts[1:]: + if not item: + continue + key, _, value = item.partition("=") + params.add(key.lower().strip(), value.strip(' "')) + + fulltype = parts[0].strip().lower() + if fulltype == "*": + fulltype = "*/*" + + mtype, _, stype = fulltype.partition("/") + stype, _, suffix = stype.partition("+") + + return MimeType( + type=mtype, subtype=stype, suffix=suffix, parameters=MultiDictProxy(params) + ) + + +class EnsureOctetStream(EmailMessage): + def __init__(self) -> None: + super().__init__() + # https://www.rfc-editor.org/rfc/rfc9110#section-8.3-5 + self.set_default_type("application/octet-stream") + + def get_content_type(self) -> str: + """Re-implementation from Message + + Returns application/octet-stream in place of plain/text when + value is wrong. + + The way this class is used guarantees that content-type will + be present so simplify the checks wrt to the base implementation. + """ + value = self.get("content-type", "").lower() + + # Based on the implementation of _splitparam in the standard library + ctype, _, _ = value.partition(";") + ctype = ctype.strip() + if ctype.count("/") != 1: + return self.get_default_type() + return ctype + + +@functools.lru_cache(maxsize=56) +def parse_content_type(raw: str) -> Tuple[str, MappingProxyType[str, str]]: + """Parse Content-Type header. + + Returns a tuple of the parsed content type and a + MappingProxyType of parameters. The default returned value + is `application/octet-stream` + """ + msg = HeaderParser(EnsureOctetStream, policy=HTTP).parsestr(f"Content-Type: {raw}") + content_type = msg.get_content_type() + params = msg.get_params(()) + content_dict = dict(params[1:]) # First element is content type again + return content_type, MappingProxyType(content_dict) + + +def guess_filename(obj: Any, default: Optional[str] = None) -> Optional[str]: + name = getattr(obj, "name", None) + if name and isinstance(name, str) and name[0] != "<" and name[-1] != ">": + return Path(name).name + return default + + +not_qtext_re = re.compile(r"[^\041\043-\133\135-\176]") +QCONTENT = {chr(i) for i in range(0x20, 0x7F)} | {"\t"} + + +def quoted_string(content: str) -> str: + """Return 7-bit content as quoted-string. + + Format content into a quoted-string as defined in RFC5322 for + Internet Message Format. Notice that this is not the 8-bit HTTP + format, but the 7-bit email format. Content must be in usascii or + a ValueError is raised. + """ + if not (QCONTENT > set(content)): + raise ValueError(f"bad content for quoted-string {content!r}") + return not_qtext_re.sub(lambda x: "\\" + x.group(0), content) + + +def content_disposition_header( + disptype: str, quote_fields: bool = True, _charset: str = "utf-8", **params: str +) -> str: + """Sets ``Content-Disposition`` header for MIME. + + This is the MIME payload Content-Disposition header from RFC 2183 + and RFC 7579 section 4.2, not the HTTP Content-Disposition from + RFC 6266. + + disptype is a disposition type: inline, attachment, form-data. + Should be valid extension token (see RFC 2183) + + quote_fields performs value quoting to 7-bit MIME headers + according to RFC 7578. Set to quote_fields to False if recipient + can take 8-bit file names and field values. + + _charset specifies the charset to use when quote_fields is True. + + params is a dict with disposition params. + """ + if not disptype or not (TOKEN > set(disptype)): + raise ValueError(f"bad content disposition type {disptype!r}") + + value = disptype + if params: + lparams = [] + for key, val in params.items(): + if not key or not (TOKEN > set(key)): + raise ValueError(f"bad content disposition parameter {key!r}={val!r}") + if quote_fields: + if key.lower() == "filename": + qval = quote(val, "", encoding=_charset) + lparams.append((key, '"%s"' % qval)) + else: + try: + qval = quoted_string(val) + except ValueError: + qval = "".join( + (_charset, "''", quote(val, "", encoding=_charset)) + ) + lparams.append((key + "*", qval)) + else: + lparams.append((key, '"%s"' % qval)) + else: + qval = val.replace("\\", "\\\\").replace('"', '\\"') + lparams.append((key, '"%s"' % qval)) + sparams = "; ".join("=".join(pair) for pair in lparams) + value = "; ".join((value, sparams)) + return value + + +def is_ip_address(host: Optional[str]) -> bool: + """Check if host looks like an IP Address. + + This check is only meant as a heuristic to ensure that + a host is not a domain name. + """ + if not host: + return False + # For a host to be an ipv4 address, it must be all numeric. + # The host must contain a colon to be an IPv6 address. + return ":" in host or host.replace(".", "").isdigit() + + +_cached_current_datetime: Optional[int] = None +_cached_formatted_datetime = "" + + +def rfc822_formatted_time() -> str: + global _cached_current_datetime + global _cached_formatted_datetime + + now = int(time.time()) + if now != _cached_current_datetime: + # Weekday and month names for HTTP date/time formatting; + # always English! + # Tuples are constants stored in codeobject! + _weekdayname = ("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun") + _monthname = ( + "", # Dummy so we can use 1-based month numbers + "Jan", + "Feb", + "Mar", + "Apr", + "May", + "Jun", + "Jul", + "Aug", + "Sep", + "Oct", + "Nov", + "Dec", + ) + + year, month, day, hh, mm, ss, wd, *tail = time.gmtime(now) + _cached_formatted_datetime = "%s, %02d %3s %4d %02d:%02d:%02d GMT" % ( + _weekdayname[wd], + day, + _monthname[month], + year, + hh, + mm, + ss, + ) + _cached_current_datetime = now + return _cached_formatted_datetime + + +def _weakref_handle(info: "Tuple[weakref.ref[object], str]") -> None: + ref, name = info + ob = ref() + if ob is not None: + with suppress(Exception): + getattr(ob, name)() + + +def weakref_handle( + ob: object, + name: str, + timeout: float, + loop: asyncio.AbstractEventLoop, + timeout_ceil_threshold: float = 5, +) -> Optional[asyncio.TimerHandle]: + if timeout is not None and timeout > 0: + when = loop.time() + timeout + if timeout >= timeout_ceil_threshold: + when = ceil(when) + + return loop.call_at(when, _weakref_handle, (weakref.ref(ob), name)) + return None + + +def call_later( + cb: Callable[[], Any], + timeout: float, + loop: asyncio.AbstractEventLoop, + timeout_ceil_threshold: float = 5, +) -> Optional[asyncio.TimerHandle]: + if timeout is None or timeout <= 0: + return None + now = loop.time() + when = calculate_timeout_when(now, timeout, timeout_ceil_threshold) + return loop.call_at(when, cb) + + +def calculate_timeout_when( + loop_time: float, + timeout: float, + timeout_ceiling_threshold: float, +) -> float: + """Calculate when to execute a timeout.""" + when = loop_time + timeout + if timeout > timeout_ceiling_threshold: + return ceil(when) + return when + + +class TimeoutHandle: + """Timeout handle""" + + __slots__ = ("_timeout", "_loop", "_ceil_threshold", "_callbacks") + + def __init__( + self, + loop: asyncio.AbstractEventLoop, + timeout: Optional[float], + ceil_threshold: float = 5, + ) -> None: + self._timeout = timeout + self._loop = loop + self._ceil_threshold = ceil_threshold + self._callbacks: List[ + Tuple[Callable[..., None], Tuple[Any, ...], Dict[str, Any]] + ] = [] + + def register( + self, callback: Callable[..., None], *args: Any, **kwargs: Any + ) -> None: + self._callbacks.append((callback, args, kwargs)) + + def close(self) -> None: + self._callbacks.clear() + + def start(self) -> Optional[asyncio.TimerHandle]: + timeout = self._timeout + if timeout is not None and timeout > 0: + when = self._loop.time() + timeout + if timeout >= self._ceil_threshold: + when = ceil(when) + return self._loop.call_at(when, self.__call__) + else: + return None + + def timer(self) -> "BaseTimerContext": + if self._timeout is not None and self._timeout > 0: + timer = TimerContext(self._loop) + self.register(timer.timeout) + return timer + else: + return TimerNoop() + + def __call__(self) -> None: + for cb, args, kwargs in self._callbacks: + with suppress(Exception): + cb(*args, **kwargs) + + self._callbacks.clear() + + +class BaseTimerContext(ContextManager["BaseTimerContext"]): + + __slots__ = () + + def assert_timeout(self) -> None: + """Raise TimeoutError if timeout has been exceeded.""" + + +class TimerNoop(BaseTimerContext): + + __slots__ = () + + def __enter__(self) -> BaseTimerContext: + return self + + def __exit__( + self, + exc_type: Optional[Type[BaseException]], + exc_val: Optional[BaseException], + exc_tb: Optional[TracebackType], + ) -> None: + return + + +class TimerContext(BaseTimerContext): + """Low resolution timeout context manager""" + + __slots__ = ("_loop", "_tasks", "_cancelled", "_cancelling") + + def __init__(self, loop: asyncio.AbstractEventLoop) -> None: + self._loop = loop + self._tasks: List[asyncio.Task[Any]] = [] + self._cancelled = False + self._cancelling = 0 + + def assert_timeout(self) -> None: + """Raise TimeoutError if timer has already been cancelled.""" + if self._cancelled: + raise asyncio.TimeoutError from None + + def __enter__(self) -> BaseTimerContext: + task = asyncio.current_task(loop=self._loop) + if task is None: + raise RuntimeError("Timeout context manager should be used inside a task") + + if sys.version_info >= (3, 11): + # Remember if the task was already cancelling + # so when we __exit__ we can decide if we should + # raise asyncio.TimeoutError or let the cancellation propagate + self._cancelling = task.cancelling() + + if self._cancelled: + raise asyncio.TimeoutError from None + + self._tasks.append(task) + return self + + def __exit__( + self, + exc_type: Optional[Type[BaseException]], + exc_val: Optional[BaseException], + exc_tb: Optional[TracebackType], + ) -> Optional[bool]: + enter_task: Optional[asyncio.Task[Any]] = None + if self._tasks: + enter_task = self._tasks.pop() + + if exc_type is asyncio.CancelledError and self._cancelled: + assert enter_task is not None + # The timeout was hit, and the task was cancelled + # so we need to uncancel the last task that entered the context manager + # since the cancellation should not leak out of the context manager + if sys.version_info >= (3, 11): + # If the task was already cancelling don't raise + # asyncio.TimeoutError and instead return None + # to allow the cancellation to propagate + if enter_task.uncancel() > self._cancelling: + return None + raise asyncio.TimeoutError from exc_val + return None + + def timeout(self) -> None: + if not self._cancelled: + for task in set(self._tasks): + task.cancel() + + self._cancelled = True + + +def ceil_timeout( + delay: Optional[float], ceil_threshold: float = 5 +) -> async_timeout.Timeout: + if delay is None or delay <= 0: + return async_timeout.timeout(None) + + loop = asyncio.get_running_loop() + now = loop.time() + when = now + delay + if delay > ceil_threshold: + when = ceil(when) + return async_timeout.timeout_at(when) + + +class HeadersMixin: + """Mixin for handling headers.""" + + ATTRS = frozenset(["_content_type", "_content_dict", "_stored_content_type"]) + + _headers: MultiMapping[str] + _content_type: Optional[str] = None + _content_dict: Optional[Dict[str, str]] = None + _stored_content_type: Union[str, None, _SENTINEL] = sentinel + + def _parse_content_type(self, raw: Optional[str]) -> None: + self._stored_content_type = raw + if raw is None: + # default value according to RFC 2616 + self._content_type = "application/octet-stream" + self._content_dict = {} + else: + content_type, content_mapping_proxy = parse_content_type(raw) + self._content_type = content_type + # _content_dict needs to be mutable so we can update it + self._content_dict = content_mapping_proxy.copy() + + @property + def content_type(self) -> str: + """The value of content part for Content-Type HTTP header.""" + raw = self._headers.get(hdrs.CONTENT_TYPE) + if self._stored_content_type != raw: + self._parse_content_type(raw) + assert self._content_type is not None + return self._content_type + + @property + def charset(self) -> Optional[str]: + """The value of charset part for Content-Type HTTP header.""" + raw = self._headers.get(hdrs.CONTENT_TYPE) + if self._stored_content_type != raw: + self._parse_content_type(raw) + assert self._content_dict is not None + return self._content_dict.get("charset") + + @property + def content_length(self) -> Optional[int]: + """The value of Content-Length HTTP header.""" + content_length = self._headers.get(hdrs.CONTENT_LENGTH) + return None if content_length is None else int(content_length) + + +def set_result(fut: "asyncio.Future[_T]", result: _T) -> None: + if not fut.done(): + fut.set_result(result) + + +_EXC_SENTINEL = BaseException() + + +class ErrorableProtocol(Protocol): + def set_exception( + self, + exc: BaseException, + exc_cause: BaseException = ..., + ) -> None: ... # pragma: no cover + + +def set_exception( + fut: "asyncio.Future[_T] | ErrorableProtocol", + exc: BaseException, + exc_cause: BaseException = _EXC_SENTINEL, +) -> None: + """Set future exception. + + If the future is marked as complete, this function is a no-op. + + :param exc_cause: An exception that is a direct cause of ``exc``. + Only set if provided. + """ + if asyncio.isfuture(fut) and fut.done(): + return + + exc_is_sentinel = exc_cause is _EXC_SENTINEL + exc_causes_itself = exc is exc_cause + if not exc_is_sentinel and not exc_causes_itself: + exc.__cause__ = exc_cause + + fut.set_exception(exc) + + +@functools.total_ordering +class AppKey(Generic[_T]): + """Keys for static typing support in Application.""" + + __slots__ = ("_name", "_t", "__orig_class__") + + # This may be set by Python when instantiating with a generic type. We need to + # support this, in order to support types that are not concrete classes, + # like Iterable, which can't be passed as the second parameter to __init__. + __orig_class__: Type[object] + + def __init__(self, name: str, t: Optional[Type[_T]] = None): + # Prefix with module name to help deduplicate key names. + frame = inspect.currentframe() + while frame: + if frame.f_code.co_name == "": + module: str = frame.f_globals["__name__"] + break + frame = frame.f_back + + self._name = module + "." + name + self._t = t + + def __lt__(self, other: object) -> bool: + if isinstance(other, AppKey): + return self._name < other._name + return True # Order AppKey above other types. + + def __repr__(self) -> str: + t = self._t + if t is None: + with suppress(AttributeError): + # Set to type arg. + t = get_args(self.__orig_class__)[0] + + if t is None: + t_repr = "<>" + elif isinstance(t, type): + if t.__module__ == "builtins": + t_repr = t.__qualname__ + else: + t_repr = f"{t.__module__}.{t.__qualname__}" + else: + t_repr = repr(t) + return f"" + + +class ChainMapProxy(Mapping[Union[str, AppKey[Any]], Any]): + __slots__ = ("_maps",) + + def __init__(self, maps: Iterable[Mapping[Union[str, AppKey[Any]], Any]]) -> None: + self._maps = tuple(maps) + + def __init_subclass__(cls) -> None: + raise TypeError( + "Inheritance class {} from ChainMapProxy " + "is forbidden".format(cls.__name__) + ) + + @overload # type: ignore[override] + def __getitem__(self, key: AppKey[_T]) -> _T: ... + + @overload + def __getitem__(self, key: str) -> Any: ... + + def __getitem__(self, key: Union[str, AppKey[_T]]) -> Any: + for mapping in self._maps: + try: + return mapping[key] + except KeyError: + pass + raise KeyError(key) + + @overload # type: ignore[override] + def get(self, key: AppKey[_T], default: _S) -> Union[_T, _S]: ... + + @overload + def get(self, key: AppKey[_T], default: None = ...) -> Optional[_T]: ... + + @overload + def get(self, key: str, default: Any = ...) -> Any: ... + + def get(self, key: Union[str, AppKey[_T]], default: Any = None) -> Any: + try: + return self[key] + except KeyError: + return default + + def __len__(self) -> int: + # reuses stored hash values if possible + return len(set().union(*self._maps)) + + def __iter__(self) -> Iterator[Union[str, AppKey[Any]]]: + d: Dict[Union[str, AppKey[Any]], Any] = {} + for mapping in reversed(self._maps): + # reuses stored hash values if possible + d.update(mapping) + return iter(d) + + def __contains__(self, key: object) -> bool: + return any(key in m for m in self._maps) + + def __bool__(self) -> bool: + return any(self._maps) + + def __repr__(self) -> str: + content = ", ".join(map(repr, self._maps)) + return f"ChainMapProxy({content})" + + +# https://tools.ietf.org/html/rfc7232#section-2.3 +_ETAGC = r"[!\x23-\x7E\x80-\xff]+" +_ETAGC_RE = re.compile(_ETAGC) +_QUOTED_ETAG = rf'(W/)?"({_ETAGC})"' +QUOTED_ETAG_RE = re.compile(_QUOTED_ETAG) +LIST_QUOTED_ETAG_RE = re.compile(rf"({_QUOTED_ETAG})(?:\s*,\s*|$)|(.)") + +ETAG_ANY = "*" + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class ETag: + value: str + is_weak: bool = False + + +def validate_etag_value(value: str) -> None: + if value != ETAG_ANY and not _ETAGC_RE.fullmatch(value): + raise ValueError( + f"Value {value!r} is not a valid etag. Maybe it contains '\"'?" + ) + + +def parse_http_date(date_str: Optional[str]) -> Optional[datetime.datetime]: + """Process a date string, return a datetime object""" + if date_str is not None: + timetuple = parsedate(date_str) + if timetuple is not None: + with suppress(ValueError): + return datetime.datetime(*timetuple[:6], tzinfo=datetime.timezone.utc) + return None + + +@functools.lru_cache +def must_be_empty_body(method: str, code: int) -> bool: + """Check if a request must return an empty body.""" + return ( + code in EMPTY_BODY_STATUS_CODES + or method in EMPTY_BODY_METHODS + or (200 <= code < 300 and method in hdrs.METH_CONNECT_ALL) + ) + + +def should_remove_content_length(method: str, code: int) -> bool: + """Check if a Content-Length header should be removed. + + This should always be a subset of must_be_empty_body + """ + # https://www.rfc-editor.org/rfc/rfc9110.html#section-8.6-8 + # https://www.rfc-editor.org/rfc/rfc9110.html#section-15.4.5-4 + return code in EMPTY_BODY_STATUS_CODES or ( + 200 <= code < 300 and method in hdrs.METH_CONNECT_ALL + ) diff --git a/venv/lib/python3.9/site-packages/aiohttp/http.py b/venv/lib/python3.9/site-packages/aiohttp/http.py new file mode 100644 index 0000000..a1feae2 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/http.py @@ -0,0 +1,72 @@ +import sys +from http import HTTPStatus +from typing import Mapping, Tuple + +from . import __version__ +from .http_exceptions import HttpProcessingError as HttpProcessingError +from .http_parser import ( + HeadersParser as HeadersParser, + HttpParser as HttpParser, + HttpRequestParser as HttpRequestParser, + HttpResponseParser as HttpResponseParser, + RawRequestMessage as RawRequestMessage, + RawResponseMessage as RawResponseMessage, +) +from .http_websocket import ( + WS_CLOSED_MESSAGE as WS_CLOSED_MESSAGE, + WS_CLOSING_MESSAGE as WS_CLOSING_MESSAGE, + WS_KEY as WS_KEY, + WebSocketError as WebSocketError, + WebSocketReader as WebSocketReader, + WebSocketWriter as WebSocketWriter, + WSCloseCode as WSCloseCode, + WSMessage as WSMessage, + WSMsgType as WSMsgType, + ws_ext_gen as ws_ext_gen, + ws_ext_parse as ws_ext_parse, +) +from .http_writer import ( + HttpVersion as HttpVersion, + HttpVersion10 as HttpVersion10, + HttpVersion11 as HttpVersion11, + StreamWriter as StreamWriter, +) + +__all__ = ( + "HttpProcessingError", + "RESPONSES", + "SERVER_SOFTWARE", + # .http_writer + "StreamWriter", + "HttpVersion", + "HttpVersion10", + "HttpVersion11", + # .http_parser + "HeadersParser", + "HttpParser", + "HttpRequestParser", + "HttpResponseParser", + "RawRequestMessage", + "RawResponseMessage", + # .http_websocket + "WS_CLOSED_MESSAGE", + "WS_CLOSING_MESSAGE", + "WS_KEY", + "WebSocketReader", + "WebSocketWriter", + "ws_ext_gen", + "ws_ext_parse", + "WSMessage", + "WebSocketError", + "WSMsgType", + "WSCloseCode", +) + + +SERVER_SOFTWARE: str = "Python/{0[0]}.{0[1]} aiohttp/{1}".format( + sys.version_info, __version__ +) + +RESPONSES: Mapping[int, Tuple[str, str]] = { + v: (v.phrase, v.description) for v in HTTPStatus.__members__.values() +} diff --git a/venv/lib/python3.9/site-packages/aiohttp/http_exceptions.py b/venv/lib/python3.9/site-packages/aiohttp/http_exceptions.py new file mode 100644 index 0000000..a389e94 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/http_exceptions.py @@ -0,0 +1,117 @@ +"""Low-level http related exceptions.""" + +from textwrap import indent +from typing import Optional, Union + +from .typedefs import _CIMultiDict + +__all__ = ("HttpProcessingError",) + + +class HttpProcessingError(Exception): + """HTTP error. + + Shortcut for raising HTTP errors with custom code, message and headers. + + code: HTTP Error code. + message: (optional) Error message. + headers: (optional) Headers to be sent in response, a list of pairs + """ + + code = 0 + message = "" + headers = None + + def __init__( + self, + *, + code: Optional[int] = None, + message: str = "", + headers: Optional[_CIMultiDict] = None, + ) -> None: + if code is not None: + self.code = code + self.headers = headers + self.message = message + + def __str__(self) -> str: + msg = indent(self.message, " ") + return f"{self.code}, message:\n{msg}" + + def __repr__(self) -> str: + return f"<{self.__class__.__name__}: {self.code}, message={self.message!r}>" + + +class BadHttpMessage(HttpProcessingError): + + code = 400 + message = "Bad Request" + + def __init__(self, message: str, *, headers: Optional[_CIMultiDict] = None) -> None: + super().__init__(message=message, headers=headers) + self.args = (message,) + + +class HttpBadRequest(BadHttpMessage): + + code = 400 + message = "Bad Request" + + +class PayloadEncodingError(BadHttpMessage): + """Base class for payload errors""" + + +class ContentEncodingError(PayloadEncodingError): + """Content encoding error.""" + + +class TransferEncodingError(PayloadEncodingError): + """transfer encoding error.""" + + +class ContentLengthError(PayloadEncodingError): + """Not enough data to satisfy content length header.""" + + +class DecompressSizeError(PayloadEncodingError): + """Decompressed size exceeds the configured limit.""" + + +class LineTooLong(BadHttpMessage): + def __init__( + self, + line: Union[str, bytes], + limit: Union[str, int] = "Unknown", + actual_size: str = "Unknown", + ) -> None: + super().__init__(f"Got more than {limit} bytes when reading: {line!r}.") + self.args = (line, limit, actual_size) + + +class InvalidHeader(BadHttpMessage): + def __init__(self, hdr: Union[bytes, str]) -> None: + hdr_s = hdr.decode(errors="backslashreplace") if isinstance(hdr, bytes) else hdr + super().__init__(f"Invalid HTTP header: {hdr!r}") + self.hdr = hdr_s + self.args = (hdr,) + + +class BadStatusLine(BadHttpMessage): + def __init__(self, line: str = "", error: Optional[str] = None) -> None: + if not isinstance(line, str): + line = repr(line) + super().__init__(error or f"Bad status line {line!r}") + self.args = (line,) + self.line = line + + +class BadHttpMethod(BadStatusLine): + """Invalid HTTP method in status line.""" + + def __init__(self, line: str = "", error: Optional[str] = None) -> None: + super().__init__(line, error or f"Bad HTTP method in status line {line!r}") + + +class InvalidURLError(BadHttpMessage): + pass diff --git a/venv/lib/python3.9/site-packages/aiohttp/http_parser.py b/venv/lib/python3.9/site-packages/aiohttp/http_parser.py new file mode 100644 index 0000000..6a471cd --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/http_parser.py @@ -0,0 +1,1125 @@ +import abc +import asyncio +import re +import string +from contextlib import suppress +from enum import IntEnum +from typing import ( + Any, + ClassVar, + Final, + Generic, + List, + Literal, + NamedTuple, + Optional, + Pattern, + Set, + Tuple, + Type, + TypeVar, + Union, +) + +from multidict import CIMultiDict, CIMultiDictProxy, istr +from yarl import URL + +from . import hdrs +from .base_protocol import BaseProtocol +from .compression_utils import ( + DEFAULT_MAX_DECOMPRESS_SIZE, + HAS_BROTLI, + HAS_ZSTD, + BrotliDecompressor, + ZLibDecompressor, + ZSTDDecompressor, +) +from .helpers import ( + _EXC_SENTINEL, + DEBUG, + EMPTY_BODY_METHODS, + EMPTY_BODY_STATUS_CODES, + NO_EXTENSIONS, + BaseTimerContext, + set_exception, +) +from .http_exceptions import ( + BadHttpMessage, + BadHttpMethod, + BadStatusLine, + ContentEncodingError, + ContentLengthError, + DecompressSizeError, + InvalidHeader, + InvalidURLError, + LineTooLong, + TransferEncodingError, +) +from .http_writer import HttpVersion, HttpVersion10 +from .streams import EMPTY_PAYLOAD, StreamReader +from .typedefs import RawHeaders + +__all__ = ( + "HeadersParser", + "HttpParser", + "HttpRequestParser", + "HttpResponseParser", + "RawRequestMessage", + "RawResponseMessage", +) + +_SEP = Literal[b"\r\n", b"\n"] + +ASCIISET: Final[Set[str]] = set(string.printable) + +# See https://www.rfc-editor.org/rfc/rfc9110.html#name-overview +# and https://www.rfc-editor.org/rfc/rfc9110.html#name-tokens +# +# method = token +# tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" / "." / +# "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA +# token = 1*tchar +_TCHAR_SPECIALS: Final[str] = re.escape("!#$%&'*+-.^_`|~") +TOKENRE: Final[Pattern[str]] = re.compile(f"[0-9A-Za-z{_TCHAR_SPECIALS}]+") +# https://www.rfc-editor.org/rfc/rfc9110#section-5.5-5 +_FIELD_VALUE_FORBIDDEN_CTL_RE: Final[Pattern[str]] = re.compile( + r"[\x00-\x08\x0a-\x1f\x7f]" +) +VERSRE: Final[Pattern[str]] = re.compile(r"HTTP/(\d)\.(\d)", re.ASCII) +DIGITS: Final[Pattern[str]] = re.compile(r"\d+", re.ASCII) +HEXDIGITS: Final[Pattern[bytes]] = re.compile(rb"[0-9a-fA-F]+") + +# RFC 9110 singleton headers — duplicates are rejected in strict mode. +# In lax mode (response parser default), the check is skipped entirely +# since real-world servers (e.g. Google APIs, Werkzeug) commonly send +# duplicate headers like Content-Type or Server. +# Lowercased for case-insensitive matching against wire names. +SINGLETON_HEADERS: Final[frozenset[str]] = frozenset( + { + "content-length", + "content-location", + "content-range", + "content-type", + "etag", + "host", + "max-forwards", + "server", + "transfer-encoding", + "user-agent", + } +) + + +class RawRequestMessage(NamedTuple): + method: str + path: str + version: HttpVersion + headers: "CIMultiDictProxy[str]" + raw_headers: RawHeaders + should_close: bool + compression: Optional[str] + upgrade: bool + chunked: bool + url: URL + + +class RawResponseMessage(NamedTuple): + version: HttpVersion + code: int + reason: str + headers: CIMultiDictProxy[str] + raw_headers: RawHeaders + should_close: bool + compression: Optional[str] + upgrade: bool + chunked: bool + + +_MsgT = TypeVar("_MsgT", RawRequestMessage, RawResponseMessage) + + +class ParseState(IntEnum): + + PARSE_NONE = 0 + PARSE_LENGTH = 1 + PARSE_CHUNKED = 2 + PARSE_UNTIL_EOF = 3 + + +class ChunkState(IntEnum): + PARSE_CHUNKED_SIZE = 0 + PARSE_CHUNKED_CHUNK = 1 + PARSE_CHUNKED_CHUNK_EOF = 2 + PARSE_MAYBE_TRAILERS = 3 + PARSE_TRAILERS = 4 + + +class HeadersParser: + def __init__( + self, + max_line_size: int = 8190, + max_headers: int = 32768, + max_field_size: int = 8190, + lax: bool = False, + ) -> None: + self.max_line_size = max_line_size + self.max_headers = max_headers + self.max_field_size = max_field_size + self._lax = lax + + def parse_headers( + self, lines: List[bytes] + ) -> Tuple["CIMultiDictProxy[str]", RawHeaders]: + headers: CIMultiDict[str] = CIMultiDict() + # note: "raw" does not mean inclusion of OWS before/after the field value + raw_headers = [] + + lines_idx = 0 + line = lines[lines_idx] + line_count = len(lines) + + while line: + # Parse initial header name : value pair. + try: + bname, bvalue = line.split(b":", 1) + except ValueError: + raise InvalidHeader(line) from None + + if len(bname) == 0: + raise InvalidHeader(bname) + + # https://www.rfc-editor.org/rfc/rfc9112.html#section-5.1-2 + if {bname[0], bname[-1]} & {32, 9}: # {" ", "\t"} + raise InvalidHeader(line) + + bvalue = bvalue.lstrip(b" \t") + name = bname.decode("utf-8", "surrogateescape") + if not TOKENRE.fullmatch(name): + raise InvalidHeader(bname) + + # next line + lines_idx += 1 + line = lines[lines_idx] + + # consume continuation lines + continuation = self._lax and line and line[0] in (32, 9) # (' ', '\t') + + # Deprecated: https://www.rfc-editor.org/rfc/rfc9112.html#name-obsolete-line-folding + if continuation: + header_length = len(bvalue) + bvalue_lst = [bvalue] + while continuation: + header_length += len(line) + if header_length > self.max_field_size: + header_line = bname + b": " + b"".join(bvalue_lst) + raise LineTooLong( + header_line[:100] + b"...", self.max_field_size + ) + bvalue_lst.append(line) + + # next line + lines_idx += 1 + if lines_idx < line_count: + line = lines[lines_idx] + if line: + continuation = line[0] in (32, 9) # (' ', '\t') + else: + line = b"" + break + bvalue = b"".join(bvalue_lst) + + bvalue = bvalue.strip(b" \t") + value = bvalue.decode("utf-8", "surrogateescape") + + # https://www.rfc-editor.org/rfc/rfc9110.html#section-5.5-5 + if self._lax: + if "\n" in value or "\r" in value or "\x00" in value: + raise InvalidHeader(bvalue) + elif _FIELD_VALUE_FORBIDDEN_CTL_RE.search(value): + raise InvalidHeader(bvalue) + + if not self._lax and name in headers and name.lower() in SINGLETON_HEADERS: + raise BadHttpMessage(f"Duplicate '{name}' header found.") + headers.add(name, value) + raw_headers.append((bname, bvalue)) + + return (CIMultiDictProxy(headers), tuple(raw_headers)) + + +def _is_supported_upgrade(headers: CIMultiDictProxy[str]) -> bool: + """Check if the upgrade header is supported.""" + u = headers.get(hdrs.UPGRADE, "") + # .lower() can transform non-ascii characters. + return u.isascii() and u.lower() in {"tcp", "websocket"} + + +class HttpParser(abc.ABC, Generic[_MsgT]): + lax: ClassVar[bool] = False + + def __init__( + self, + protocol: Optional[BaseProtocol] = None, + loop: Optional[asyncio.AbstractEventLoop] = None, + limit: int = 2**16, + max_line_size: int = 8190, + max_headers: int = 128, + max_field_size: int = 8190, + timer: Optional[BaseTimerContext] = None, + code: Optional[int] = None, + method: Optional[str] = None, + payload_exception: Optional[Type[BaseException]] = None, + response_with_body: bool = True, + read_until_eof: bool = False, + auto_decompress: bool = True, + ) -> None: + self.protocol = protocol + self.loop = loop + self.max_line_size = max_line_size + self.max_headers = max_headers + self.max_field_size = max_field_size + self.max_headers = max_headers + self.timer = timer + self.code = code + self.method = method + self.payload_exception = payload_exception + self.response_with_body = response_with_body + self.read_until_eof = read_until_eof + + self._lines: List[bytes] = [] + self._tail = b"" + self._upgraded = False + self._payload = None + self._payload_parser: Optional[HttpPayloadParser] = None + self._auto_decompress = auto_decompress + self._limit = limit + self._headers_parser = HeadersParser( + max_line_size, max_headers, max_field_size, self.lax + ) + + @abc.abstractmethod + def parse_message(self, lines: List[bytes]) -> _MsgT: ... + + @abc.abstractmethod + def _is_chunked_te(self, te: str) -> bool: ... + + def feed_eof(self) -> Optional[_MsgT]: + if self._payload_parser is not None: + self._payload_parser.feed_eof() + self._payload_parser = None + else: + # try to extract partial message + if self._tail: + self._lines.append(self._tail) + + if self._lines: + if self._lines[-1] != "\r\n": + self._lines.append(b"") + with suppress(Exception): + return self.parse_message(self._lines) + return None + + def feed_data( + self, + data: bytes, + SEP: _SEP = b"\r\n", + EMPTY: bytes = b"", + CONTENT_LENGTH: istr = hdrs.CONTENT_LENGTH, + METH_CONNECT: str = hdrs.METH_CONNECT, + SEC_WEBSOCKET_KEY1: istr = hdrs.SEC_WEBSOCKET_KEY1, + ) -> Tuple[List[Tuple[_MsgT, StreamReader]], bool, bytes]: + + messages = [] + + if self._tail: + data, self._tail = self._tail + data, b"" + + data_len = len(data) + start_pos = 0 + loop = self.loop + max_line_length = self.max_line_size + + should_close = False + while start_pos < data_len: + + # read HTTP message (request/response line + headers), \r\n\r\n + # and split by lines + if self._payload_parser is None and not self._upgraded: + pos = data.find(SEP, start_pos) + # consume \r\n + if pos == start_pos and not self._lines: + start_pos = pos + len(SEP) + continue + + if pos >= start_pos: + if should_close: + raise BadHttpMessage("Data after `Connection: close`") + + # line found + line = data[start_pos:pos] + if SEP == b"\n": # For lax response parsing + line = line.rstrip(b"\r") + if len(line) > max_line_length: + raise LineTooLong(line[:100] + b"...", max_line_length) + + self._lines.append(line) + # After processing the status/request line, everything is a header. + max_line_length = self.max_field_size + + if len(self._lines) > self.max_headers: + raise BadHttpMessage("Too many headers received") + + start_pos = pos + len(SEP) + + # \r\n\r\n found + if self._lines[-1] == EMPTY: + max_trailers = self.max_headers - len(self._lines) + try: + msg: _MsgT = self.parse_message(self._lines) + finally: + self._lines.clear() + + def get_content_length() -> Optional[int]: + # payload length + length_hdr = msg.headers.get(CONTENT_LENGTH) + if length_hdr is None: + return None + + # Shouldn't allow +/- or other number formats. + # https://www.rfc-editor.org/rfc/rfc9110#section-8.6-2 + # msg.headers is already stripped of leading/trailing wsp + if not DIGITS.fullmatch(length_hdr): + raise InvalidHeader(CONTENT_LENGTH) + + return int(length_hdr) + + length = get_content_length() + # do not support old websocket spec + if SEC_WEBSOCKET_KEY1 in msg.headers: + raise InvalidHeader(SEC_WEBSOCKET_KEY1) + + self._upgraded = msg.upgrade and _is_supported_upgrade( + msg.headers + ) + + method = getattr(msg, "method", self.method) + # code is only present on responses + code = getattr(msg, "code", 0) + + assert self.protocol is not None + # calculate payload + empty_body = code in EMPTY_BODY_STATUS_CODES or bool( + method and method in EMPTY_BODY_METHODS + ) + if not empty_body and ( + ((length is not None and length > 0) or msg.chunked) + and not self._upgraded + ): + payload = StreamReader( + self.protocol, + timer=self.timer, + loop=loop, + limit=self._limit, + ) + payload_parser = HttpPayloadParser( + payload, + length=length, + chunked=msg.chunked, + method=method, + compression=msg.compression, + code=self.code, + response_with_body=self.response_with_body, + auto_decompress=self._auto_decompress, + lax=self.lax, + headers_parser=self._headers_parser, + max_line_size=self.max_line_size, + max_field_size=self.max_field_size, + max_trailers=max_trailers, + ) + if not payload_parser.done: + self._payload_parser = payload_parser + elif method == METH_CONNECT: + assert isinstance(msg, RawRequestMessage) + payload = StreamReader( + self.protocol, + timer=self.timer, + loop=loop, + limit=self._limit, + ) + self._upgraded = True + self._payload_parser = HttpPayloadParser( + payload, + method=msg.method, + compression=msg.compression, + auto_decompress=self._auto_decompress, + lax=self.lax, + headers_parser=self._headers_parser, + max_line_size=self.max_line_size, + max_field_size=self.max_field_size, + max_trailers=max_trailers, + ) + elif not empty_body and length is None and self.read_until_eof: + payload = StreamReader( + self.protocol, + timer=self.timer, + loop=loop, + limit=self._limit, + ) + payload_parser = HttpPayloadParser( + payload, + length=length, + chunked=msg.chunked, + method=method, + compression=msg.compression, + code=self.code, + response_with_body=self.response_with_body, + auto_decompress=self._auto_decompress, + lax=self.lax, + headers_parser=self._headers_parser, + max_line_size=self.max_line_size, + max_field_size=self.max_field_size, + max_trailers=max_trailers, + ) + if not payload_parser.done: + self._payload_parser = payload_parser + else: + payload = EMPTY_PAYLOAD + + messages.append((msg, payload)) + should_close = msg.should_close + else: + self._tail = data[start_pos:] + if len(self._tail) > self.max_line_size: + raise LineTooLong(self._tail[:100] + b"...", self.max_line_size) + data = EMPTY + break + + # no parser, just store + elif self._payload_parser is None and self._upgraded: + assert not self._lines + break + + # feed payload + elif data and start_pos < data_len: + assert not self._lines + assert self._payload_parser is not None + try: + eof, data = self._payload_parser.feed_data(data[start_pos:], SEP) + except BaseException as underlying_exc: + reraised_exc = underlying_exc + if self.payload_exception is not None: + reraised_exc = self.payload_exception(str(underlying_exc)) + + set_exception( + self._payload_parser.payload, + reraised_exc, + underlying_exc, + ) + + eof = True + data = b"" + if isinstance( + underlying_exc, (InvalidHeader, TransferEncodingError) + ): + raise + + if eof: + start_pos = 0 + data_len = len(data) + self._payload_parser = None + continue + else: + break + + if data and start_pos < data_len: + data = data[start_pos:] + else: + data = EMPTY + + return messages, self._upgraded, data + + def parse_headers( + self, lines: List[bytes] + ) -> Tuple[ + "CIMultiDictProxy[str]", RawHeaders, Optional[bool], Optional[str], bool, bool + ]: + """Parses RFC 5322 headers from a stream. + + Line continuations are supported. Returns list of header name + and value pairs. Header name is in upper case. + """ + headers, raw_headers = self._headers_parser.parse_headers(lines) + close_conn = None + encoding = None + upgrade = False + chunked = False + + # keep-alive and protocol switching + # RFC 9110 section 7.6.1 defines Connection as a comma-separated list. + conn_values = headers.getall(hdrs.CONNECTION, ()) + if conn_values: + conn_tokens = { + token.lower() + for conn_value in conn_values + for token in (part.strip(" \t") for part in conn_value.split(",")) + if token and token.isascii() + } + + if "close" in conn_tokens: + close_conn = True + elif "keep-alive" in conn_tokens: + close_conn = False + + # https://www.rfc-editor.org/rfc/rfc9110.html#name-101-switching-protocols + if "upgrade" in conn_tokens and headers.get(hdrs.UPGRADE): + upgrade = True + + # encoding + enc = headers.get(hdrs.CONTENT_ENCODING, "") + if enc.isascii() and enc.lower() in {"gzip", "deflate", "br", "zstd"}: + encoding = enc + + # chunking + te = headers.get(hdrs.TRANSFER_ENCODING) + if te is not None: + if self._is_chunked_te(te): + chunked = True + + if hdrs.CONTENT_LENGTH in headers: + raise BadHttpMessage( + "Transfer-Encoding can't be present with Content-Length", + ) + + return (headers, raw_headers, close_conn, encoding, upgrade, chunked) + + def set_upgraded(self, val: bool) -> None: + """Set connection upgraded (to websocket) mode. + + :param bool val: new state. + """ + self._upgraded = val + + +class HttpRequestParser(HttpParser[RawRequestMessage]): + """Read request status line. + + Exception .http_exceptions.BadStatusLine + could be raised in case of any errors in status line. + Returns RawRequestMessage. + """ + + def parse_message(self, lines: List[bytes]) -> RawRequestMessage: + # request line + line = lines[0].decode("utf-8", "surrogateescape") + try: + method, path, version = line.split(" ", maxsplit=2) + except ValueError: + raise BadHttpMethod(line) from None + + # method + if not TOKENRE.fullmatch(method): + raise BadHttpMethod(method) + + # version + match = VERSRE.fullmatch(version) + if match is None: + raise BadStatusLine(line) + version_o = HttpVersion(int(match.group(1)), int(match.group(2))) + + if method == "CONNECT": + # authority-form, + # https://datatracker.ietf.org/doc/html/rfc7230#section-5.3.3 + url = URL.build(authority=path, encoded=True) + elif path.startswith("/"): + # origin-form, + # https://datatracker.ietf.org/doc/html/rfc7230#section-5.3.1 + path_part, _hash_separator, url_fragment = path.partition("#") + path_part, _question_mark_separator, qs_part = path_part.partition("?") + + # NOTE: `yarl.URL.build()` is used to mimic what the Cython-based + # NOTE: parser does, otherwise it results into the same + # NOTE: HTTP Request-Line input producing different + # NOTE: `yarl.URL()` objects + url = URL.build( + path=path_part, + query_string=qs_part, + fragment=url_fragment, + encoded=True, + ) + elif path == "*" and method == "OPTIONS": + # asterisk-form, + url = URL(path, encoded=True) + else: + # absolute-form for proxy maybe, + # https://datatracker.ietf.org/doc/html/rfc7230#section-5.3.2 + url = URL(path, encoded=True) + if url.scheme == "": + # not absolute-form + raise InvalidURLError( + path.encode(errors="surrogateescape").decode("latin1") + ) + + # read headers + ( + headers, + raw_headers, + close, + compression, + upgrade, + chunked, + ) = self.parse_headers(lines[1:]) + + if close is None: # then the headers weren't set in the request + if version_o <= HttpVersion10: # HTTP 1.0 must asks to not close + close = True + else: # HTTP 1.1 must ask to close. + close = False + + return RawRequestMessage( + method, + path, + version_o, + headers, + raw_headers, + close, + compression, + upgrade, + chunked, + url, + ) + + def _is_chunked_te(self, te: str) -> bool: + te = te.rsplit(",", maxsplit=1)[-1].strip(" \t") + # .lower() transforms some non-ascii chars, so must check first. + if te.isascii() and te.lower() == "chunked": + return True + # https://www.rfc-editor.org/rfc/rfc9112#section-6.3-2.4.3 + raise BadHttpMessage("Request has invalid `Transfer-Encoding`") + + +class HttpResponseParser(HttpParser[RawResponseMessage]): + """Read response status line and headers. + + BadStatusLine could be raised in case of any errors in status line. + Returns RawResponseMessage. + """ + + # Lax mode should only be enabled on response parser. + lax = not DEBUG + + def feed_data( + self, + data: bytes, + SEP: Optional[_SEP] = None, + *args: Any, + **kwargs: Any, + ) -> Tuple[List[Tuple[RawResponseMessage, StreamReader]], bool, bytes]: + if SEP is None: + SEP = b"\r\n" if DEBUG else b"\n" + return super().feed_data(data, SEP, *args, **kwargs) + + def parse_message(self, lines: List[bytes]) -> RawResponseMessage: + line = lines[0].decode("utf-8", "surrogateescape") + try: + version, status = line.split(maxsplit=1) + except ValueError: + raise BadStatusLine(line) from None + + try: + status, reason = status.split(maxsplit=1) + except ValueError: + status = status.strip() + reason = "" + + # version + match = VERSRE.fullmatch(version) + if match is None: + raise BadStatusLine(line) + version_o = HttpVersion(int(match.group(1)), int(match.group(2))) + + # The status code is a three-digit ASCII number, no padding + if len(status) != 3 or not DIGITS.fullmatch(status): + raise BadStatusLine(line) + status_i = int(status) + + # read headers + ( + headers, + raw_headers, + close, + compression, + upgrade, + chunked, + ) = self.parse_headers(lines[1:]) + + if close is None: + if version_o <= HttpVersion10: + close = True + # https://www.rfc-editor.org/rfc/rfc9112.html#name-message-body-length + elif 100 <= status_i < 200 or status_i in {204, 304}: + close = False + elif hdrs.CONTENT_LENGTH in headers or hdrs.TRANSFER_ENCODING in headers: + close = False + else: + # https://www.rfc-editor.org/rfc/rfc9112.html#section-6.3-2.8 + close = True + + return RawResponseMessage( + version_o, + status_i, + reason.strip(), + headers, + raw_headers, + close, + compression, + upgrade, + chunked, + ) + + def _is_chunked_te(self, te: str) -> bool: + # https://www.rfc-editor.org/rfc/rfc9112#section-6.3-2.4.2 + return te.rsplit(",", maxsplit=1)[-1].strip(" \t").lower() == "chunked" + + +class HttpPayloadParser: + def __init__( + self, + payload: StreamReader, + length: Optional[int] = None, + chunked: bool = False, + compression: Optional[str] = None, + code: Optional[int] = None, + method: Optional[str] = None, + response_with_body: bool = True, + auto_decompress: bool = True, + lax: bool = False, + *, + headers_parser: HeadersParser, + max_line_size: int = 8190, + max_field_size: int = 8190, + max_trailers: int = 128, + ) -> None: + self._length = 0 + self._type = ParseState.PARSE_UNTIL_EOF + self._chunk = ChunkState.PARSE_CHUNKED_SIZE + self._chunk_size = 0 + self._chunk_tail = b"" + self._auto_decompress = auto_decompress + self._lax = lax + self._headers_parser = headers_parser + self._max_line_size = max_line_size + self._max_field_size = max_field_size + self._max_trailers = max_trailers + self._trailer_lines: list[bytes] = [] + self.done = False + + # payload decompression wrapper + if response_with_body and compression and self._auto_decompress: + real_payload: Union[StreamReader, DeflateBuffer] = DeflateBuffer( + payload, compression + ) + else: + real_payload = payload + + # payload parser + if not response_with_body: + # don't parse payload if it's not expected to be received + self._type = ParseState.PARSE_NONE + real_payload.feed_eof() + self.done = True + elif chunked: + self._type = ParseState.PARSE_CHUNKED + elif length is not None: + self._type = ParseState.PARSE_LENGTH + self._length = length + if self._length == 0: + real_payload.feed_eof() + self.done = True + + self.payload = real_payload + + def feed_eof(self) -> None: + if self._type == ParseState.PARSE_UNTIL_EOF: + self.payload.feed_eof() + elif self._type == ParseState.PARSE_LENGTH: + raise ContentLengthError( + "Not enough data to satisfy content length header." + ) + elif self._type == ParseState.PARSE_CHUNKED: + raise TransferEncodingError( + "Not enough data to satisfy transfer length header." + ) + + def feed_data( + self, chunk: bytes, SEP: _SEP = b"\r\n", CHUNK_EXT: bytes = b";" + ) -> Tuple[bool, bytes]: + # Read specified amount of bytes + if self._type == ParseState.PARSE_LENGTH: + required = self._length + chunk_len = len(chunk) + + if required >= chunk_len: + self._length = required - chunk_len + self.payload.feed_data(chunk, chunk_len) + if self._length == 0: + self.payload.feed_eof() + return True, b"" + else: + self._length = 0 + self.payload.feed_data(chunk[:required], required) + self.payload.feed_eof() + return True, chunk[required:] + + # Chunked transfer encoding parser + elif self._type == ParseState.PARSE_CHUNKED: + if self._chunk_tail: + # We should never have a tail if we're inside the payload body. + assert self._chunk != ChunkState.PARSE_CHUNKED_CHUNK + # We should check the length is sane. + max_line_length = self._max_line_size + if self._chunk == ChunkState.PARSE_TRAILERS: + max_line_length = self._max_field_size + if len(self._chunk_tail) > max_line_length: + raise LineTooLong(self._chunk_tail[:100] + b"...", max_line_length) + + chunk = self._chunk_tail + chunk + self._chunk_tail = b"" + + while chunk: + + # read next chunk size + if self._chunk == ChunkState.PARSE_CHUNKED_SIZE: + pos = chunk.find(SEP) + if pos >= 0: + i = chunk.find(CHUNK_EXT, 0, pos) + if i >= 0: + size_b = chunk[:i] # strip chunk-extensions + # Verify no LF in the chunk-extension + if b"\n" in (ext := chunk[i:pos]): + exc = TransferEncodingError( + f"Unexpected LF in chunk-extension: {ext!r}" + ) + set_exception(self.payload, exc) + raise exc + else: + size_b = chunk[:pos] + + if self._lax: # Allow whitespace in lax mode. + size_b = size_b.strip() + + if not re.fullmatch(HEXDIGITS, size_b): + exc = TransferEncodingError( + chunk[:pos].decode("ascii", "surrogateescape") + ) + set_exception(self.payload, exc) + raise exc + size = int(bytes(size_b), 16) + + chunk = chunk[pos + len(SEP) :] + if size == 0: # eof marker + self._chunk = ChunkState.PARSE_TRAILERS + if self._lax and chunk.startswith(b"\r"): + chunk = chunk[1:] + else: + self._chunk = ChunkState.PARSE_CHUNKED_CHUNK + self._chunk_size = size + self.payload.begin_http_chunk_receiving() + else: + self._chunk_tail = chunk + return False, b"" + + # read chunk and feed buffer + if self._chunk == ChunkState.PARSE_CHUNKED_CHUNK: + required = self._chunk_size + chunk_len = len(chunk) + + if required > chunk_len: + self._chunk_size = required - chunk_len + self.payload.feed_data(chunk, chunk_len) + return False, b"" + else: + self._chunk_size = 0 + self.payload.feed_data(chunk[:required], required) + chunk = chunk[required:] + self._chunk = ChunkState.PARSE_CHUNKED_CHUNK_EOF + self.payload.end_http_chunk_receiving() + + # toss the CRLF at the end of the chunk + if self._chunk == ChunkState.PARSE_CHUNKED_CHUNK_EOF: + if self._lax and chunk.startswith(b"\r"): + chunk = chunk[1:] + if chunk[: len(SEP)] == SEP: + chunk = chunk[len(SEP) :] + self._chunk = ChunkState.PARSE_CHUNKED_SIZE + elif len(chunk) >= len(SEP) or chunk != SEP[: len(chunk)]: + exc = TransferEncodingError( + "Chunk size mismatch: expected CRLF after chunk data" + ) + set_exception(self.payload, exc) + raise exc + else: + self._chunk_tail = chunk + return False, b"" + + if self._chunk == ChunkState.PARSE_TRAILERS: + pos = chunk.find(SEP) + if pos < 0: # No line found + self._chunk_tail = chunk + return False, b"" + + line = chunk[:pos] + chunk = chunk[pos + len(SEP) :] + if SEP == b"\n": # For lax response parsing + line = line.rstrip(b"\r") + + if len(line) > self._max_field_size: + raise LineTooLong(line[:100] + b"...", self._max_field_size) + + self._trailer_lines.append(line) + + if len(self._trailer_lines) > self._max_trailers: + raise BadHttpMessage("Too many trailers received") + + # \r\n\r\n found, end of stream + if self._trailer_lines[-1] == b"": + # Headers and trailers are defined the same way, + # so we reuse the HeadersParser here. + try: + trailers, raw_trailers = self._headers_parser.parse_headers( + self._trailer_lines + ) + finally: + self._trailer_lines.clear() + self.payload.feed_eof() + return True, chunk + + # Read all bytes until eof + elif self._type == ParseState.PARSE_UNTIL_EOF: + self.payload.feed_data(chunk, len(chunk)) + + return False, b"" + + +class DeflateBuffer: + """DeflateStream decompress stream and feed data into specified stream.""" + + decompressor: Any + + def __init__( + self, + out: StreamReader, + encoding: Optional[str], + max_decompress_size: int = DEFAULT_MAX_DECOMPRESS_SIZE, + ) -> None: + self.out = out + self.size = 0 + out.total_compressed_bytes = self.size + self.encoding = encoding + self._started_decoding = False + + self.decompressor: Union[BrotliDecompressor, ZLibDecompressor, ZSTDDecompressor] + if encoding == "br": + if not HAS_BROTLI: # pragma: no cover + raise ContentEncodingError( + "Can not decode content-encoding: brotli (br). " + "Please install `Brotli`" + ) + self.decompressor = BrotliDecompressor() + elif encoding == "zstd": + if not HAS_ZSTD: + raise ContentEncodingError( + "Can not decode content-encoding: zstandard (zstd). " + "Please install `backports.zstd`" + ) + self.decompressor = ZSTDDecompressor() + else: + self.decompressor = ZLibDecompressor(encoding=encoding) + + self._max_decompress_size = max_decompress_size + + def set_exception( + self, + exc: BaseException, + exc_cause: BaseException = _EXC_SENTINEL, + ) -> None: + set_exception(self.out, exc, exc_cause) + + def feed_data(self, chunk: bytes, size: int) -> None: + if not size: + return + + self.size += size + self.out.total_compressed_bytes = self.size + + # RFC1950 + # bits 0..3 = CM = 0b1000 = 8 = "deflate" + # bits 4..7 = CINFO = 1..7 = windows size. + if ( + not self._started_decoding + and self.encoding == "deflate" + and chunk[0] & 0xF != 8 + ): + # Change the decoder to decompress incorrectly compressed data + # Actually we should issue a warning about non-RFC-compliant data. + self.decompressor = ZLibDecompressor( + encoding=self.encoding, suppress_deflate_header=True + ) + + try: + # Decompress with limit + 1 so we can detect if output exceeds limit + chunk = self.decompressor.decompress_sync( + chunk, max_length=self._max_decompress_size + 1 + ) + except Exception: + raise ContentEncodingError( + "Can not decode content-encoding: %s" % self.encoding + ) + + self._started_decoding = True + + # Check if decompression limit was exceeded + if len(chunk) > self._max_decompress_size: + raise DecompressSizeError( + "Decompressed data exceeds the configured limit of %d bytes" + % self._max_decompress_size + ) + + if chunk: + self.out.feed_data(chunk, len(chunk)) + + def feed_eof(self) -> None: + chunk = self.decompressor.flush() + + if chunk or self.size > 0: + self.out.feed_data(chunk, len(chunk)) + if self.encoding == "deflate" and not self.decompressor.eof: + raise ContentEncodingError("deflate") + + self.out.feed_eof() + + def begin_http_chunk_receiving(self) -> None: + self.out.begin_http_chunk_receiving() + + def end_http_chunk_receiving(self) -> None: + self.out.end_http_chunk_receiving() + + +HttpRequestParserPy = HttpRequestParser +HttpResponseParserPy = HttpResponseParser +RawRequestMessagePy = RawRequestMessage +RawResponseMessagePy = RawResponseMessage + +try: + if not NO_EXTENSIONS: + from ._http_parser import ( # type: ignore[import-not-found,no-redef] + HttpRequestParser, + HttpResponseParser, + RawRequestMessage, + RawResponseMessage, + ) + + HttpRequestParserC = HttpRequestParser + HttpResponseParserC = HttpResponseParser + RawRequestMessageC = RawRequestMessage + RawResponseMessageC = RawResponseMessage +except ImportError: # pragma: no cover + pass diff --git a/venv/lib/python3.9/site-packages/aiohttp/http_websocket.py b/venv/lib/python3.9/site-packages/aiohttp/http_websocket.py new file mode 100644 index 0000000..6b4b30e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/http_websocket.py @@ -0,0 +1,36 @@ +"""WebSocket protocol versions 13 and 8.""" + +from ._websocket.helpers import WS_KEY, ws_ext_gen, ws_ext_parse +from ._websocket.models import ( + WS_CLOSED_MESSAGE, + WS_CLOSING_MESSAGE, + WebSocketError, + WSCloseCode, + WSHandshakeError, + WSMessage, + WSMsgType, +) +from ._websocket.reader import WebSocketReader +from ._websocket.writer import WebSocketWriter + +# Messages that the WebSocketResponse.receive needs to handle internally +_INTERNAL_RECEIVE_TYPES = frozenset( + (WSMsgType.CLOSE, WSMsgType.CLOSING, WSMsgType.PING, WSMsgType.PONG) +) + + +__all__ = ( + "WS_CLOSED_MESSAGE", + "WS_CLOSING_MESSAGE", + "WS_KEY", + "WebSocketReader", + "WebSocketWriter", + "WSMessage", + "WebSocketError", + "WSMsgType", + "WSCloseCode", + "ws_ext_gen", + "ws_ext_parse", + "WSHandshakeError", + "WSMessage", +) diff --git a/venv/lib/python3.9/site-packages/aiohttp/http_writer.py b/venv/lib/python3.9/site-packages/aiohttp/http_writer.py new file mode 100644 index 0000000..8c1c910 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/http_writer.py @@ -0,0 +1,379 @@ +"""Http related parsers and protocol.""" + +import asyncio +import sys +from typing import ( # noqa + TYPE_CHECKING, + Any, + Awaitable, + Callable, + Iterable, + List, + NamedTuple, + Optional, + Union, +) + +from multidict import CIMultiDict + +from .abc import AbstractStreamWriter +from .base_protocol import BaseProtocol +from .client_exceptions import ClientConnectionResetError +from .compression_utils import ZLibCompressor +from .helpers import NO_EXTENSIONS + +__all__ = ("StreamWriter", "HttpVersion", "HttpVersion10", "HttpVersion11") + + +MIN_PAYLOAD_FOR_WRITELINES = 2048 +IS_PY313_BEFORE_313_2 = (3, 13, 0) <= sys.version_info < (3, 13, 2) +IS_PY_BEFORE_312_9 = sys.version_info < (3, 12, 9) +SKIP_WRITELINES = IS_PY313_BEFORE_313_2 or IS_PY_BEFORE_312_9 +# writelines is not safe for use +# on Python 3.12+ until 3.12.9 +# on Python 3.13+ until 3.13.2 +# and on older versions it not any faster than write +# CVE-2024-12254: https://github.com/python/cpython/pull/127656 + + +class HttpVersion(NamedTuple): + major: int + minor: int + + +HttpVersion10 = HttpVersion(1, 0) +HttpVersion11 = HttpVersion(1, 1) + + +_T_OnChunkSent = Optional[Callable[[bytes], Awaitable[None]]] +_T_OnHeadersSent = Optional[Callable[["CIMultiDict[str]"], Awaitable[None]]] + + +class StreamWriter(AbstractStreamWriter): + + length: Optional[int] = None + chunked: bool = False + _eof: bool = False + _compress: Optional[ZLibCompressor] = None + + def __init__( + self, + protocol: BaseProtocol, + loop: asyncio.AbstractEventLoop, + on_chunk_sent: _T_OnChunkSent = None, + on_headers_sent: _T_OnHeadersSent = None, + ) -> None: + self._protocol = protocol + self.loop = loop + self._on_chunk_sent: _T_OnChunkSent = on_chunk_sent + self._on_headers_sent: _T_OnHeadersSent = on_headers_sent + self._headers_buf: Optional[bytes] = None + self._headers_written: bool = False + + @property + def transport(self) -> Optional[asyncio.Transport]: + return self._protocol.transport + + @property + def protocol(self) -> BaseProtocol: + return self._protocol + + def enable_chunking(self) -> None: + self.chunked = True + + def enable_compression( + self, encoding: str = "deflate", strategy: Optional[int] = None + ) -> None: + self._compress = ZLibCompressor(encoding=encoding, strategy=strategy) + + def _write(self, chunk: Union[bytes, bytearray, memoryview]) -> None: + size = len(chunk) + self.buffer_size += size + self.output_size += size + transport = self._protocol.transport + if transport is None or transport.is_closing(): + raise ClientConnectionResetError("Cannot write to closing transport") + transport.write(chunk) + + def _writelines(self, chunks: Iterable[bytes]) -> None: + size = 0 + for chunk in chunks: + size += len(chunk) + self.buffer_size += size + self.output_size += size + transport = self._protocol.transport + if transport is None or transport.is_closing(): + raise ClientConnectionResetError("Cannot write to closing transport") + if SKIP_WRITELINES or size < MIN_PAYLOAD_FOR_WRITELINES: + transport.write(b"".join(chunks)) + else: + transport.writelines(chunks) + + def _write_chunked_payload( + self, chunk: Union[bytes, bytearray, "memoryview[int]", "memoryview[bytes]"] + ) -> None: + """Write a chunk with proper chunked encoding.""" + chunk_len_pre = f"{len(chunk):x}\r\n".encode("ascii") + self._writelines((chunk_len_pre, chunk, b"\r\n")) + + def _send_headers_with_payload( + self, + chunk: Union[bytes, bytearray, "memoryview[int]", "memoryview[bytes]"], + is_eof: bool, + ) -> None: + """Send buffered headers with payload, coalescing into single write.""" + # Mark headers as written + self._headers_written = True + headers_buf = self._headers_buf + self._headers_buf = None + + if TYPE_CHECKING: + # Safe because callers (write() and write_eof()) only invoke this method + # after checking that self._headers_buf is truthy + assert headers_buf is not None + + if not self.chunked: + # Non-chunked: coalesce headers with body + if chunk: + self._writelines((headers_buf, chunk)) + else: + self._write(headers_buf) + return + + # Coalesce headers with chunked data + if chunk: + chunk_len_pre = f"{len(chunk):x}\r\n".encode("ascii") + if is_eof: + self._writelines((headers_buf, chunk_len_pre, chunk, b"\r\n0\r\n\r\n")) + else: + self._writelines((headers_buf, chunk_len_pre, chunk, b"\r\n")) + elif is_eof: + self._writelines((headers_buf, b"0\r\n\r\n")) + else: + self._write(headers_buf) + + async def write( + self, + chunk: Union[bytes, bytearray, memoryview], + *, + drain: bool = True, + LIMIT: int = 0x10000, + ) -> None: + """ + Writes chunk of data to a stream. + + write_eof() indicates end of stream. + writer can't be used after write_eof() method being called. + write() return drain future. + """ + if self._on_chunk_sent is not None: + await self._on_chunk_sent(chunk) + + if isinstance(chunk, memoryview): + if chunk.nbytes != len(chunk): + # just reshape it + chunk = chunk.cast("c") + + if self._compress is not None: + chunk = await self._compress.compress(chunk) + if not chunk: + return + + if self.length is not None: + chunk_len = len(chunk) + if self.length >= chunk_len: + self.length = self.length - chunk_len + else: + chunk = chunk[: self.length] + self.length = 0 + if not chunk: + return + + # Handle buffered headers for small payload optimization + if self._headers_buf and not self._headers_written: + self._send_headers_with_payload(chunk, False) + if drain and self.buffer_size > LIMIT: + self.buffer_size = 0 + await self.drain() + return + + if chunk: + if self.chunked: + self._write_chunked_payload(chunk) + else: + self._write(chunk) + + if drain and self.buffer_size > LIMIT: + self.buffer_size = 0 + await self.drain() + + async def write_headers( + self, status_line: str, headers: "CIMultiDict[str]" + ) -> None: + """Write headers to the stream.""" + if self._on_headers_sent is not None: + await self._on_headers_sent(headers) + # status + headers + buf = _serialize_headers(status_line, headers) + self._headers_written = False + self._headers_buf = buf + + def send_headers(self) -> None: + """Force sending buffered headers if not already sent.""" + if not self._headers_buf or self._headers_written: + return + + self._headers_written = True + headers_buf = self._headers_buf + self._headers_buf = None + + if TYPE_CHECKING: + # Safe because we only enter this block when self._headers_buf is truthy + assert headers_buf is not None + + self._write(headers_buf) + + def set_eof(self) -> None: + """Indicate that the message is complete.""" + if self._eof: + return + + # If headers haven't been sent yet, send them now + # This handles the case where there's no body at all + if self._headers_buf and not self._headers_written: + self._headers_written = True + headers_buf = self._headers_buf + self._headers_buf = None + + if TYPE_CHECKING: + # Safe because we only enter this block when self._headers_buf is truthy + assert headers_buf is not None + + # Combine headers and chunked EOF marker in a single write + if self.chunked: + self._writelines((headers_buf, b"0\r\n\r\n")) + else: + self._write(headers_buf) + elif self.chunked and self._headers_written: + # Headers already sent, just send the final chunk marker + self._write(b"0\r\n\r\n") + + self._eof = True + + async def write_eof(self, chunk: bytes = b"") -> None: + if self._eof: + return + + if chunk and self._on_chunk_sent is not None: + await self._on_chunk_sent(chunk) + + # Handle body/compression + if self._compress: + chunks: List[bytes] = [] + chunks_len = 0 + if chunk and (compressed_chunk := await self._compress.compress(chunk)): + chunks_len = len(compressed_chunk) + chunks.append(compressed_chunk) + + flush_chunk = self._compress.flush() + chunks_len += len(flush_chunk) + chunks.append(flush_chunk) + assert chunks_len + + # Send buffered headers with compressed data if not yet sent + if self._headers_buf and not self._headers_written: + self._headers_written = True + headers_buf = self._headers_buf + self._headers_buf = None + + if self.chunked: + # Coalesce headers with compressed chunked data + chunk_len_pre = f"{chunks_len:x}\r\n".encode("ascii") + self._writelines( + (headers_buf, chunk_len_pre, *chunks, b"\r\n0\r\n\r\n") + ) + else: + # Coalesce headers with compressed data + self._writelines((headers_buf, *chunks)) + await self.drain() + self._eof = True + return + + # Headers already sent, just write compressed data + if self.chunked: + chunk_len_pre = f"{chunks_len:x}\r\n".encode("ascii") + self._writelines((chunk_len_pre, *chunks, b"\r\n0\r\n\r\n")) + elif len(chunks) > 1: + self._writelines(chunks) + else: + self._write(chunks[0]) + await self.drain() + self._eof = True + return + + # No compression - send buffered headers if not yet sent + if self._headers_buf and not self._headers_written: + # Use helper to send headers with payload + self._send_headers_with_payload(chunk, True) + await self.drain() + self._eof = True + return + + # Handle remaining body + if self.chunked: + if chunk: + # Write final chunk with EOF marker + self._writelines( + (f"{len(chunk):x}\r\n".encode("ascii"), chunk, b"\r\n0\r\n\r\n") + ) + else: + self._write(b"0\r\n\r\n") + await self.drain() + self._eof = True + return + + if chunk: + self._write(chunk) + await self.drain() + + self._eof = True + + async def drain(self) -> None: + """Flush the write buffer. + + The intended use is to write + + await w.write(data) + await w.drain() + """ + protocol = self._protocol + if protocol.transport is not None and protocol._paused: + await protocol._drain_helper() + + +def _safe_header(string: str) -> str: + if "\r" in string or "\n" in string or "\x00" in string: + raise ValueError( + "Newline, carriage return, or null byte detected in headers. " + "Potential header injection attack." + ) + return string + + +def _py_serialize_headers(status_line: str, headers: "CIMultiDict[str]") -> bytes: + _safe_header(status_line) + headers_gen = (_safe_header(k) + ": " + _safe_header(v) for k, v in headers.items()) + line = status_line + "\r\n" + "\r\n".join(headers_gen) + "\r\n\r\n" + return line.encode("utf-8") + + +_serialize_headers = _py_serialize_headers + +try: + import aiohttp._http_writer as _http_writer # type: ignore[import-not-found] + + _c_serialize_headers = _http_writer._serialize_headers + if not NO_EXTENSIONS: + _serialize_headers = _c_serialize_headers +except ImportError: + pass diff --git a/venv/lib/python3.9/site-packages/aiohttp/log.py b/venv/lib/python3.9/site-packages/aiohttp/log.py new file mode 100644 index 0000000..3cecea2 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/log.py @@ -0,0 +1,8 @@ +import logging + +access_logger = logging.getLogger("aiohttp.access") +client_logger = logging.getLogger("aiohttp.client") +internal_logger = logging.getLogger("aiohttp.internal") +server_logger = logging.getLogger("aiohttp.server") +web_logger = logging.getLogger("aiohttp.web") +ws_logger = logging.getLogger("aiohttp.websocket") diff --git a/venv/lib/python3.9/site-packages/aiohttp/multipart.py b/venv/lib/python3.9/site-packages/aiohttp/multipart.py new file mode 100644 index 0000000..ec8b82b --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/multipart.py @@ -0,0 +1,1213 @@ +import base64 +import binascii +import json +import re +import sys +import uuid +import warnings +from collections import deque +from collections.abc import Mapping, Sequence +from types import TracebackType +from typing import ( + TYPE_CHECKING, + Any, + AsyncIterator, + Deque, + Dict, + Iterator, + List, + Optional, + Tuple, + Type, + Union, + cast, +) +from urllib.parse import parse_qsl, unquote, urlencode + +from multidict import CIMultiDict, CIMultiDictProxy + +from .abc import AbstractStreamWriter +from .compression_utils import ( + DEFAULT_MAX_DECOMPRESS_SIZE, + ZLibCompressor, + ZLibDecompressor, +) +from .hdrs import ( + CONTENT_DISPOSITION, + CONTENT_ENCODING, + CONTENT_LENGTH, + CONTENT_TRANSFER_ENCODING, + CONTENT_TYPE, +) +from .helpers import CHAR, TOKEN, parse_mimetype, reify +from .http import HeadersParser +from .http_exceptions import BadHttpMessage +from .log import internal_logger +from .payload import ( + JsonPayload, + LookupError, + Order, + Payload, + StringPayload, + get_payload, + payload_type, +) +from .streams import StreamReader + +if sys.version_info >= (3, 11): + from typing import Self +else: + from typing import TypeVar + + Self = TypeVar("Self", bound="BodyPartReader") + +__all__ = ( + "MultipartReader", + "MultipartWriter", + "BodyPartReader", + "BadContentDispositionHeader", + "BadContentDispositionParam", + "parse_content_disposition", + "content_disposition_filename", +) + + +if TYPE_CHECKING: + from .client_reqrep import ClientResponse + + +class BadContentDispositionHeader(RuntimeWarning): + pass + + +class BadContentDispositionParam(RuntimeWarning): + pass + + +def parse_content_disposition( + header: Optional[str], +) -> Tuple[Optional[str], Dict[str, str]]: + def is_token(string: str) -> bool: + return bool(string) and TOKEN >= set(string) + + def is_quoted(string: str) -> bool: + return string[0] == string[-1] == '"' + + def is_rfc5987(string: str) -> bool: + return is_token(string) and string.count("'") == 2 + + def is_extended_param(string: str) -> bool: + return string.endswith("*") + + def is_continuous_param(string: str) -> bool: + pos = string.find("*") + 1 + if not pos: + return False + substring = string[pos:-1] if string.endswith("*") else string[pos:] + return substring.isdigit() + + def unescape(text: str, *, chars: str = "".join(map(re.escape, CHAR))) -> str: + return re.sub(f"\\\\([{chars}])", "\\1", text) + + if not header: + return None, {} + + disptype, *parts = header.split(";") + if not is_token(disptype): + warnings.warn(BadContentDispositionHeader(header)) + return None, {} + + params: Dict[str, str] = {} + while parts: + item = parts.pop(0) + + if not item: # To handle trailing semicolons + warnings.warn(BadContentDispositionHeader(header)) + continue + + if "=" not in item: + warnings.warn(BadContentDispositionHeader(header)) + return None, {} + + key, value = item.split("=", 1) + key = key.lower().strip() + value = value.lstrip() + + if key in params: + warnings.warn(BadContentDispositionHeader(header)) + return None, {} + + if not is_token(key): + warnings.warn(BadContentDispositionParam(item)) + continue + + elif is_continuous_param(key): + if is_quoted(value): + value = unescape(value[1:-1]) + elif not is_token(value): + warnings.warn(BadContentDispositionParam(item)) + continue + + elif is_extended_param(key): + if is_rfc5987(value): + encoding, _, value = value.split("'", 2) + encoding = encoding or "utf-8" + else: + warnings.warn(BadContentDispositionParam(item)) + continue + + try: + value = unquote(value, encoding, "strict") + except UnicodeDecodeError: # pragma: nocover + warnings.warn(BadContentDispositionParam(item)) + continue + + else: + failed = True + if is_quoted(value): + failed = False + value = unescape(value[1:-1].lstrip("\\/")) + elif is_token(value): + failed = False + elif parts: + # maybe just ; in filename, in any case this is just + # one case fix, for proper fix we need to redesign parser + _value = f"{value};{parts[0]}" + if is_quoted(_value): + parts.pop(0) + value = unescape(_value[1:-1].lstrip("\\/")) + failed = False + + if failed: + warnings.warn(BadContentDispositionHeader(header)) + return None, {} + + params[key] = value + + return disptype.lower(), params + + +def content_disposition_filename( + params: Mapping[str, str], name: str = "filename" +) -> Optional[str]: + name_suf = "%s*" % name + if not params: + return None + elif name_suf in params: + return params[name_suf] + elif name in params: + return params[name] + else: + parts = [] + fnparams = sorted( + (key, value) for key, value in params.items() if key.startswith(name_suf) + ) + for num, (key, value) in enumerate(fnparams): + _, tail = key.split("*", 1) + if tail.endswith("*"): + tail = tail[:-1] + if tail == str(num): + parts.append(value) + else: + break + if not parts: + return None + value = "".join(parts) + if "'" in value: + encoding, _, value = value.split("'", 2) + encoding = encoding or "utf-8" + return unquote(value, encoding, "strict") + return value + + +class MultipartResponseWrapper: + """Wrapper around the MultipartReader. + + It takes care about + underlying connection and close it when it needs in. + """ + + def __init__( + self, + resp: "ClientResponse", + stream: "MultipartReader", + ) -> None: + self.resp = resp + self.stream = stream + + def __aiter__(self) -> "MultipartResponseWrapper": + return self + + async def __anext__( + self, + ) -> Union["MultipartReader", "BodyPartReader"]: + part = await self.next() + if part is None: + raise StopAsyncIteration + return part + + def at_eof(self) -> bool: + """Returns True when all response data had been read.""" + return self.resp.content.at_eof() + + async def next( + self, + ) -> Optional[Union["MultipartReader", "BodyPartReader"]]: + """Emits next multipart reader object.""" + item = await self.stream.next() + if self.stream.at_eof(): + await self.release() + return item + + async def release(self) -> None: + """Release the connection gracefully. + + All remaining content is read to the void. + """ + await self.resp.release() + + +class BodyPartReader: + """Multipart reader for single body part.""" + + chunk_size = 8192 + + def __init__( + self, + boundary: bytes, + headers: "CIMultiDictProxy[str]", + content: StreamReader, + *, + subtype: str = "mixed", + default_charset: Optional[str] = None, + max_decompress_size: int = DEFAULT_MAX_DECOMPRESS_SIZE, + ) -> None: + self.headers = headers + self._boundary = boundary + self._boundary_len = len(boundary) + 2 # Boundary + \r\n + self._content = content + self._default_charset = default_charset + self._at_eof = False + self._is_form_data = subtype == "form-data" + # https://datatracker.ietf.org/doc/html/rfc7578#section-4.8 + length = None if self._is_form_data else self.headers.get(CONTENT_LENGTH, None) + self._length = int(length) if length is not None else None + self._read_bytes = 0 + self._unread: Deque[bytes] = deque() + self._prev_chunk: Optional[bytes] = None + self._content_eof = 0 + self._cache: Dict[str, Any] = {} + self._max_decompress_size = max_decompress_size + + def __aiter__(self: Self) -> Self: + return self + + async def __anext__(self) -> bytes: + part = await self.next() + if part is None: + raise StopAsyncIteration + return part + + async def next(self) -> Optional[bytes]: + item = await self.read() + if not item: + return None + return item + + async def read(self, *, decode: bool = False) -> bytes: + """Reads body part data. + + decode: Decodes data following by encoding + method from Content-Encoding header. If it missed + data remains untouched + """ + if self._at_eof: + return b"" + data = bytearray() + while not self._at_eof: + data.extend(await self.read_chunk(self.chunk_size)) + if decode: + decoded_data = bytearray() + async for d in self.decode_iter(data): + decoded_data.extend(d) + return decoded_data + return data + + async def read_chunk(self, size: int = chunk_size) -> bytes: + """Reads body part content chunk of the specified size. + + size: chunk size + """ + if self._at_eof: + return b"" + if self._length: + chunk = await self._read_chunk_from_length(size) + else: + chunk = await self._read_chunk_from_stream(size) + + # For the case of base64 data, we must read a fragment of size with a + # remainder of 0 by dividing by 4 for string without symbols \n or \r + encoding = self.headers.get(CONTENT_TRANSFER_ENCODING) + if encoding and encoding.lower() == "base64": + stripped_chunk = b"".join(chunk.split()) + remainder = len(stripped_chunk) % 4 + + while remainder != 0 and not self.at_eof(): + over_chunk_size = 4 - remainder + over_chunk = b"" + + if self._prev_chunk: + over_chunk = self._prev_chunk[:over_chunk_size] + self._prev_chunk = self._prev_chunk[len(over_chunk) :] + + if len(over_chunk) != over_chunk_size: + over_chunk += await self._content.read(4 - len(over_chunk)) + + if not over_chunk: + self._at_eof = True + + stripped_chunk += b"".join(over_chunk.split()) + chunk += over_chunk + remainder = len(stripped_chunk) % 4 + + self._read_bytes += len(chunk) + if self._read_bytes == self._length: + self._at_eof = True + if self._at_eof and await self._content.readline() != b"\r\n": + raise ValueError("Reader did not read all the data or it is malformed") + return chunk + + async def _read_chunk_from_length(self, size: int) -> bytes: + # Reads body part content chunk of the specified size. + # The body part must has Content-Length header with proper value. + assert self._length is not None, "Content-Length required for chunked read" + chunk_size = min(size, self._length - self._read_bytes) + chunk = await self._content.read(chunk_size) + if self._content.at_eof(): + self._at_eof = True + return chunk + + async def _read_chunk_from_stream(self, size: int) -> bytes: + # Reads content chunk of body part with unknown length. + # The Content-Length header for body part is not necessary. + assert ( + size >= self._boundary_len + ), "Chunk size must be greater or equal than boundary length + 2" + first_chunk = self._prev_chunk is None + if first_chunk: + # We need to re-add the CRLF that got removed from headers parsing. + self._prev_chunk = b"\r\n" + await self._content.read(size) + + chunk = b"" + # content.read() may return less than size, so we need to loop to ensure + # we have enough data to detect the boundary. + while len(chunk) < self._boundary_len: + chunk += await self._content.read(size) + self._content_eof += int(self._content.at_eof()) + if self._content_eof > 2: + raise ValueError("Reading after EOF") + if self._content_eof: + break + if len(chunk) > size: + self._content.unread_data(chunk[size:]) + chunk = chunk[:size] + + assert self._prev_chunk is not None + window = self._prev_chunk + chunk + sub = b"\r\n" + self._boundary + if first_chunk: + idx = window.find(sub) + else: + idx = window.find(sub, max(0, len(self._prev_chunk) - len(sub))) + if idx >= 0: + # pushing boundary back to content + with warnings.catch_warnings(): + warnings.filterwarnings("ignore", category=DeprecationWarning) + self._content.unread_data(window[idx:]) + self._prev_chunk = self._prev_chunk[:idx] + chunk = window[len(self._prev_chunk) : idx] + if not chunk: + self._at_eof = True + result = self._prev_chunk[2 if first_chunk else 0 :] # Strip initial CRLF + self._prev_chunk = chunk + return result + + async def readline(self) -> bytes: + """Reads body part by line by line.""" + if self._at_eof: + return b"" + + if self._unread: + line = self._unread.popleft() + else: + line = await self._content.readline() + + if line.startswith(self._boundary): + # the very last boundary may not come with \r\n, + # so set single rules for everyone + sline = line.rstrip(b"\r\n") + boundary = self._boundary + last_boundary = self._boundary + b"--" + # ensure that we read exactly the boundary, not something alike + if sline == boundary or sline == last_boundary: + self._at_eof = True + self._unread.append(line) + return b"" + else: + next_line = await self._content.readline() + if next_line.startswith(self._boundary): + line = line[:-2] # strip CRLF but only once + self._unread.append(next_line) + + return line + + async def release(self) -> None: + """Like read(), but reads all the data to the void.""" + if self._at_eof: + return + while not self._at_eof: + await self.read_chunk(self.chunk_size) + + async def text(self, *, encoding: Optional[str] = None) -> str: + """Like read(), but assumes that body part contains text data.""" + data = await self.read(decode=True) + # see https://www.w3.org/TR/html5/forms.html#multipart/form-data-encoding-algorithm + # and https://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html#dom-xmlhttprequest-send + encoding = encoding or self.get_charset(default="utf-8") + return data.decode(encoding) + + async def json(self, *, encoding: Optional[str] = None) -> Optional[Dict[str, Any]]: + """Like read(), but assumes that body parts contains JSON data.""" + data = await self.read(decode=True) + if not data: + return None + encoding = encoding or self.get_charset(default="utf-8") + return cast(Dict[str, Any], json.loads(data.decode(encoding))) + + async def form(self, *, encoding: Optional[str] = None) -> List[Tuple[str, str]]: + """Like read(), but assumes that body parts contain form urlencoded data.""" + data = await self.read(decode=True) + if not data: + return [] + if encoding is not None: + real_encoding = encoding + else: + real_encoding = self.get_charset(default="utf-8") + try: + decoded_data = data.rstrip().decode(real_encoding) + except UnicodeDecodeError: + raise ValueError("data cannot be decoded with %s encoding" % real_encoding) + + return parse_qsl( + decoded_data, + keep_blank_values=True, + encoding=real_encoding, + ) + + def at_eof(self) -> bool: + """Returns True if the boundary was reached or False otherwise.""" + return self._at_eof + + def _apply_content_transfer_decoding(self, data: bytes) -> bytes: + """Apply Content-Transfer-Encoding decoding if header is present.""" + if CONTENT_TRANSFER_ENCODING in self.headers: + return self._decode_content_transfer(data) + return data + + def _needs_content_decoding(self) -> bool: + """Check if Content-Encoding decoding should be applied.""" + # https://datatracker.ietf.org/doc/html/rfc7578#section-4.8 + return not self._is_form_data and CONTENT_ENCODING in self.headers + + def decode(self, data: bytes) -> bytes: + """Decodes data synchronously. + + Decodes data according the specified Content-Encoding + or Content-Transfer-Encoding headers value. + + Note: For large payloads, consider using decode_iter() instead + to avoid blocking the event loop during decompression. + """ + data = self._apply_content_transfer_decoding(data) + if self._needs_content_decoding(): + return self._decode_content(data) + return data + + async def decode_iter(self, data: bytes) -> AsyncIterator[bytes]: + """Async generator that yields decoded data chunks. + + Decodes data according the specified Content-Encoding + or Content-Transfer-Encoding headers value. + + This method offloads decompression to an executor for large payloads + to avoid blocking the event loop. + """ + data = self._apply_content_transfer_decoding(data) + if self._needs_content_decoding(): + async for d in self._decode_content_async(data): + yield d + else: + yield data + + def _decode_content(self, data: bytes) -> bytes: + encoding = self.headers.get(CONTENT_ENCODING, "").lower() + if encoding == "identity": + return data + if encoding in {"deflate", "gzip"}: + return ZLibDecompressor( + encoding=encoding, + suppress_deflate_header=True, + ).decompress_sync(data, max_length=self._max_decompress_size) + + raise RuntimeError(f"unknown content encoding: {encoding}") + + async def _decode_content_async(self, data: bytes) -> AsyncIterator[bytes]: + encoding = self.headers.get(CONTENT_ENCODING, "").lower() + if encoding == "identity": + yield data + elif encoding in {"deflate", "gzip"}: + d = ZLibDecompressor( + encoding=encoding, + suppress_deflate_header=True, + ) + yield await d.decompress(data, max_length=self._max_decompress_size) + else: + raise RuntimeError(f"unknown content encoding: {encoding}") + + def _decode_content_transfer(self, data: bytes) -> bytes: + encoding = self.headers.get(CONTENT_TRANSFER_ENCODING, "").lower() + + if encoding == "base64": + return base64.b64decode(data) + elif encoding == "quoted-printable": + return binascii.a2b_qp(data) + elif encoding in ("binary", "8bit", "7bit"): + return data + else: + raise RuntimeError(f"unknown content transfer encoding: {encoding}") + + def get_charset(self, default: str) -> str: + """Returns charset parameter from Content-Type header or default.""" + ctype = self.headers.get(CONTENT_TYPE, "") + mimetype = parse_mimetype(ctype) + return mimetype.parameters.get("charset", self._default_charset or default) + + @reify + def name(self) -> Optional[str]: + """Returns name specified in Content-Disposition header. + + If the header is missing or malformed, returns None. + """ + _, params = parse_content_disposition(self.headers.get(CONTENT_DISPOSITION)) + return content_disposition_filename(params, "name") + + @reify + def filename(self) -> Optional[str]: + """Returns filename specified in Content-Disposition header. + + Returns None if the header is missing or malformed. + """ + _, params = parse_content_disposition(self.headers.get(CONTENT_DISPOSITION)) + return content_disposition_filename(params, "filename") + + +@payload_type(BodyPartReader, order=Order.try_first) +class BodyPartReaderPayload(Payload): + _value: BodyPartReader + # _autoclose = False (inherited) - Streaming reader that may have resources + + def __init__(self, value: BodyPartReader, *args: Any, **kwargs: Any) -> None: + super().__init__(value, *args, **kwargs) + + params: Dict[str, str] = {} + if value.name is not None: + params["name"] = value.name + if value.filename is not None: + params["filename"] = value.filename + + if params: + self.set_content_disposition("attachment", True, **params) + + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + raise TypeError("Unable to decode.") + + async def as_bytes(self, encoding: str = "utf-8", errors: str = "strict") -> bytes: + """Raises TypeError as body parts should be consumed via write(). + + This is intentional: BodyPartReader payloads are designed for streaming + large data (potentially gigabytes) and must be consumed only once via + the write() method to avoid memory exhaustion. They cannot be buffered + in memory for reuse. + """ + raise TypeError("Unable to read body part as bytes. Use write() to consume.") + + async def write(self, writer: AbstractStreamWriter) -> None: + field = self._value + while chunk := await field.read_chunk(size=2**18): + async for d in field.decode_iter(chunk): + await writer.write(d) + + +class MultipartReader: + """Multipart body reader.""" + + #: Response wrapper, used when multipart readers constructs from response. + response_wrapper_cls = MultipartResponseWrapper + #: Multipart reader class, used to handle multipart/* body parts. + #: None points to type(self) + multipart_reader_cls: Optional[Type["MultipartReader"]] = None + #: Body part reader class for non multipart/* content types. + part_reader_cls = BodyPartReader + + def __init__( + self, + headers: Mapping[str, str], + content: StreamReader, + *, + max_field_size: int = 8190, + max_headers: int = 128, + ) -> None: + self._mimetype = parse_mimetype(headers[CONTENT_TYPE]) + assert self._mimetype.type == "multipart", "multipart/* content type expected" + if "boundary" not in self._mimetype.parameters: + raise ValueError( + "boundary missed for Content-Type: %s" % headers[CONTENT_TYPE] + ) + + self.headers = headers + self._boundary = ("--" + self._get_boundary()).encode() + self._content = content + self._default_charset: str | None = None + self._last_part: MultipartReader | BodyPartReader | None = None + self._max_field_size = max_field_size + self._max_headers = max_headers + self._at_eof = False + self._at_bof = True + self._unread: List[bytes] = [] + + def __aiter__(self: Self) -> Self: + return self + + async def __anext__( + self, + ) -> Optional[Union["MultipartReader", BodyPartReader]]: + part = await self.next() + if part is None: + raise StopAsyncIteration + return part + + @classmethod + def from_response( + cls, + response: "ClientResponse", + ) -> MultipartResponseWrapper: + """Constructs reader instance from HTTP response. + + :param response: :class:`~aiohttp.client.ClientResponse` instance + """ + obj = cls.response_wrapper_cls( + response, cls(response.headers, response.content) + ) + return obj + + def at_eof(self) -> bool: + """Returns True if the final boundary was reached, false otherwise.""" + return self._at_eof + + async def next( + self, + ) -> Optional[Union["MultipartReader", BodyPartReader]]: + """Emits the next multipart body part.""" + # So, if we're at BOF, we need to skip till the boundary. + if self._at_eof: + return None + await self._maybe_release_last_part() + if self._at_bof: + await self._read_until_first_boundary() + self._at_bof = False + else: + await self._read_boundary() + if self._at_eof: # we just read the last boundary, nothing to do there + return None + + part = await self.fetch_next_part() + # https://datatracker.ietf.org/doc/html/rfc7578#section-4.6 + if ( + self._last_part is None + and self._mimetype.subtype == "form-data" + and isinstance(part, BodyPartReader) + ): + _, params = parse_content_disposition(part.headers.get(CONTENT_DISPOSITION)) + if params.get("name") == "_charset_": + # Longest encoding in https://encoding.spec.whatwg.org/encodings.json + # is 19 characters, so 32 should be more than enough for any valid encoding. + charset = await part.read_chunk(32) + if len(charset) > 31: + raise RuntimeError("Invalid default charset") + self._default_charset = charset.strip().decode() + part = await self.fetch_next_part() + self._last_part = part + return self._last_part + + async def release(self) -> None: + """Reads all the body parts to the void till the final boundary.""" + while not self._at_eof: + item = await self.next() + if item is None: + break + await item.release() + + async def fetch_next_part( + self, + ) -> Union["MultipartReader", BodyPartReader]: + """Returns the next body part reader.""" + headers = await self._read_headers() + return self._get_part_reader(headers) + + def _get_part_reader( + self, + headers: "CIMultiDictProxy[str]", + ) -> Union["MultipartReader", BodyPartReader]: + """Dispatches the response by the `Content-Type` header. + + Returns a suitable reader instance. + + :param dict headers: Response headers + """ + ctype = headers.get(CONTENT_TYPE, "") + mimetype = parse_mimetype(ctype) + + if mimetype.type == "multipart": + if self.multipart_reader_cls is None: + return type(self)(headers, self._content) + return self.multipart_reader_cls( + headers, + self._content, + max_field_size=self._max_field_size, + max_headers=self._max_headers, + ) + else: + return self.part_reader_cls( + self._boundary, + headers, + self._content, + subtype=self._mimetype.subtype, + default_charset=self._default_charset, + ) + + def _get_boundary(self) -> str: + boundary = self._mimetype.parameters["boundary"] + if len(boundary) > 70: + raise ValueError("boundary %r is too long (70 chars max)" % boundary) + + return boundary + + async def _readline(self) -> bytes: + if self._unread: + return self._unread.pop() + return await self._content.readline() + + async def _read_until_first_boundary(self) -> None: + while True: + chunk = await self._readline() + if chunk == b"": + raise ValueError( + "Could not find starting boundary %r" % (self._boundary) + ) + chunk = chunk.rstrip() + if chunk == self._boundary: + return + elif chunk == self._boundary + b"--": + self._at_eof = True + return + + async def _read_boundary(self) -> None: + chunk = (await self._readline()).rstrip() + if chunk == self._boundary: + pass + elif chunk == self._boundary + b"--": + self._at_eof = True + epilogue = await self._readline() + next_line = await self._readline() + + # the epilogue is expected and then either the end of input or the + # parent multipart boundary, if the parent boundary is found then + # it should be marked as unread and handed to the parent for + # processing + if next_line[:2] == b"--": + self._unread.append(next_line) + # otherwise the request is likely missing an epilogue and both + # lines should be passed to the parent for processing + # (this handles the old behavior gracefully) + else: + self._unread.extend([next_line, epilogue]) + else: + raise ValueError(f"Invalid boundary {chunk!r}, expected {self._boundary!r}") + + async def _read_headers(self) -> "CIMultiDictProxy[str]": + lines = [] + while True: + chunk = await self._content.readline(max_line_length=self._max_field_size) + chunk = chunk.rstrip(b"\r\n") + lines.append(chunk) + if not chunk: + break + if len(lines) > self._max_headers: + raise BadHttpMessage("Too many headers received") + parser = HeadersParser(max_field_size=self._max_field_size) + headers, raw_headers = parser.parse_headers(lines) + return headers + + async def _maybe_release_last_part(self) -> None: + """Ensures that the last read body part is read completely.""" + if self._last_part is not None: + if not self._last_part.at_eof(): + await self._last_part.release() + self._unread.extend(self._last_part._unread) + self._last_part = None + + +_Part = Tuple[Payload, str, str] + + +class MultipartWriter(Payload): + """Multipart body writer.""" + + _value: None + # _consumed = False (inherited) - Can be encoded multiple times + _autoclose = True # No file handles, just collects parts in memory + + def __init__(self, subtype: str = "mixed", boundary: Optional[str] = None) -> None: + boundary = boundary if boundary is not None else uuid.uuid4().hex + # The underlying Payload API demands a str (utf-8), not bytes, + # so we need to ensure we don't lose anything during conversion. + # As a result, require the boundary to be ASCII only. + # In both situations. + + try: + self._boundary = boundary.encode("ascii") + except UnicodeEncodeError: + raise ValueError("boundary should contain ASCII only chars") from None + ctype = f"multipart/{subtype}; boundary={self._boundary_value}" + + super().__init__(None, content_type=ctype) + + self._parts: List[_Part] = [] + self._is_form_data = subtype == "form-data" + + def __enter__(self) -> "MultipartWriter": + return self + + def __exit__( + self, + exc_type: Optional[Type[BaseException]], + exc_val: Optional[BaseException], + exc_tb: Optional[TracebackType], + ) -> None: + pass + + def __iter__(self) -> Iterator[_Part]: + return iter(self._parts) + + def __len__(self) -> int: + return len(self._parts) + + def __bool__(self) -> bool: + return True + + _valid_tchar_regex = re.compile(rb"\A[!#$%&'*+\-.^_`|~\w]+\Z") + _invalid_qdtext_char_regex = re.compile(rb"[\x00-\x08\x0A-\x1F\x7F]") + + @property + def _boundary_value(self) -> str: + """Wrap boundary parameter value in quotes, if necessary. + + Reads self.boundary and returns a unicode string. + """ + # Refer to RFCs 7231, 7230, 5234. + # + # parameter = token "=" ( token / quoted-string ) + # token = 1*tchar + # quoted-string = DQUOTE *( qdtext / quoted-pair ) DQUOTE + # qdtext = HTAB / SP / %x21 / %x23-5B / %x5D-7E / obs-text + # obs-text = %x80-FF + # quoted-pair = "\" ( HTAB / SP / VCHAR / obs-text ) + # tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" + # / "+" / "-" / "." / "^" / "_" / "`" / "|" / "~" + # / DIGIT / ALPHA + # ; any VCHAR, except delimiters + # VCHAR = %x21-7E + value = self._boundary + if re.match(self._valid_tchar_regex, value): + return value.decode("ascii") # cannot fail + + if re.search(self._invalid_qdtext_char_regex, value): + raise ValueError("boundary value contains invalid characters") + + # escape %x5C and %x22 + quoted_value_content = value.replace(b"\\", b"\\\\") + quoted_value_content = quoted_value_content.replace(b'"', b'\\"') + + return '"' + quoted_value_content.decode("ascii") + '"' + + @property + def boundary(self) -> str: + return self._boundary.decode("ascii") + + def append(self, obj: Any, headers: Optional[Mapping[str, str]] = None) -> Payload: + if headers is None: + headers = CIMultiDict() + + if isinstance(obj, Payload): + obj.headers.update(headers) + return self.append_payload(obj) + else: + try: + payload = get_payload(obj, headers=headers) + except LookupError: + raise TypeError("Cannot create payload from %r" % obj) + else: + return self.append_payload(payload) + + def append_payload(self, payload: Payload) -> Payload: + """Adds a new body part to multipart writer.""" + encoding: Optional[str] = None + te_encoding: Optional[str] = None + if self._is_form_data: + # https://datatracker.ietf.org/doc/html/rfc7578#section-4.7 + # https://datatracker.ietf.org/doc/html/rfc7578#section-4.8 + assert ( + not {CONTENT_ENCODING, CONTENT_LENGTH, CONTENT_TRANSFER_ENCODING} + & payload.headers.keys() + ) + # Set default Content-Disposition in case user doesn't create one + if CONTENT_DISPOSITION not in payload.headers: + name = f"section-{len(self._parts)}" + payload.set_content_disposition("form-data", name=name) + else: + # compression + encoding = payload.headers.get(CONTENT_ENCODING, "").lower() + if encoding and encoding not in ("deflate", "gzip", "identity"): + raise RuntimeError(f"unknown content encoding: {encoding}") + if encoding == "identity": + encoding = None + + # te encoding + te_encoding = payload.headers.get(CONTENT_TRANSFER_ENCODING, "").lower() + if te_encoding not in ("", "base64", "quoted-printable", "binary"): + raise RuntimeError(f"unknown content transfer encoding: {te_encoding}") + if te_encoding == "binary": + te_encoding = None + + # size + size = payload.size + if size is not None and not (encoding or te_encoding): + payload.headers[CONTENT_LENGTH] = str(size) + + self._parts.append((payload, encoding, te_encoding)) # type: ignore[arg-type] + return payload + + def append_json( + self, obj: Any, headers: Optional[Mapping[str, str]] = None + ) -> Payload: + """Helper to append JSON part.""" + if headers is None: + headers = CIMultiDict() + + return self.append_payload(JsonPayload(obj, headers=headers)) + + def append_form( + self, + obj: Union[Sequence[Tuple[str, str]], Mapping[str, str]], + headers: Optional[Mapping[str, str]] = None, + ) -> Payload: + """Helper to append form urlencoded part.""" + assert isinstance(obj, (Sequence, Mapping)) + + if headers is None: + headers = CIMultiDict() + + if isinstance(obj, Mapping): + obj = list(obj.items()) + data = urlencode(obj, doseq=True) + + return self.append_payload( + StringPayload( + data, headers=headers, content_type="application/x-www-form-urlencoded" + ) + ) + + @property + def size(self) -> Optional[int]: + """Size of the payload.""" + total = 0 + for part, encoding, te_encoding in self._parts: + part_size = part.size + if encoding or te_encoding or part_size is None: + return None + + total += int( + 2 + + len(self._boundary) + + 2 + + part_size # b'--'+self._boundary+b'\r\n' + + len(part._binary_headers) + + 2 # b'\r\n' + ) + + total += 2 + len(self._boundary) + 4 # b'--'+self._boundary+b'--\r\n' + return total + + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + """Return string representation of the multipart data. + + WARNING: This method may do blocking I/O if parts contain file payloads. + It should not be called in the event loop. Use as_bytes().decode() instead. + """ + return "".join( + "--" + + self.boundary + + "\r\n" + + part._binary_headers.decode(encoding, errors) + + part.decode() + for part, _e, _te in self._parts + ) + + async def as_bytes(self, encoding: str = "utf-8", errors: str = "strict") -> bytes: + """Return bytes representation of the multipart data. + + This method is async-safe and calls as_bytes on underlying payloads. + """ + parts: List[bytes] = [] + + # Process each part + for part, _e, _te in self._parts: + # Add boundary + parts.append(b"--" + self._boundary + b"\r\n") + + # Add headers + parts.append(part._binary_headers) + + # Add payload content using as_bytes for async safety + part_bytes = await part.as_bytes(encoding, errors) + parts.append(part_bytes) + + # Add trailing CRLF + parts.append(b"\r\n") + + # Add closing boundary + parts.append(b"--" + self._boundary + b"--\r\n") + + return b"".join(parts) + + async def write( + self, writer: AbstractStreamWriter, close_boundary: bool = True + ) -> None: + """Write body.""" + for part, encoding, te_encoding in self._parts: + if self._is_form_data: + # https://datatracker.ietf.org/doc/html/rfc7578#section-4.2 + assert CONTENT_DISPOSITION in part.headers + assert "name=" in part.headers[CONTENT_DISPOSITION] + + await writer.write(b"--" + self._boundary + b"\r\n") + await writer.write(part._binary_headers) + + if encoding or te_encoding: + w = MultipartPayloadWriter(writer) + if encoding: + w.enable_compression(encoding) + if te_encoding: + w.enable_encoding(te_encoding) + await part.write(w) # type: ignore[arg-type] + await w.write_eof() + else: + await part.write(writer) + + await writer.write(b"\r\n") + + if close_boundary: + await writer.write(b"--" + self._boundary + b"--\r\n") + + async def close(self) -> None: + """ + Close all part payloads that need explicit closing. + + IMPORTANT: This method must not await anything that might not finish + immediately, as it may be called during cleanup/cancellation. Schedule + any long-running operations without awaiting them. + """ + if self._consumed: + return + self._consumed = True + + # Close all parts that need explicit closing + # We catch and log exceptions to ensure all parts get a chance to close + # we do not use asyncio.gather() here because we are not allowed + # to suspend given we may be called during cleanup + for idx, (part, _, _) in enumerate(self._parts): + if not part.autoclose and not part.consumed: + try: + await part.close() + except Exception as exc: + internal_logger.error( + "Failed to close multipart part %d: %s", idx, exc, exc_info=True + ) + + +class MultipartPayloadWriter: + def __init__(self, writer: AbstractStreamWriter) -> None: + self._writer = writer + self._encoding: Optional[str] = None + self._compress: Optional[ZLibCompressor] = None + self._encoding_buffer: Optional[bytearray] = None + + def enable_encoding(self, encoding: str) -> None: + if encoding == "base64": + self._encoding = encoding + self._encoding_buffer = bytearray() + elif encoding == "quoted-printable": + self._encoding = "quoted-printable" + + def enable_compression( + self, encoding: str = "deflate", strategy: Optional[int] = None + ) -> None: + self._compress = ZLibCompressor( + encoding=encoding, + suppress_deflate_header=True, + strategy=strategy, + ) + + async def write_eof(self) -> None: + if self._compress is not None: + chunk = self._compress.flush() + if chunk: + self._compress = None + await self.write(chunk) + + if self._encoding == "base64": + if self._encoding_buffer: + await self._writer.write(base64.b64encode(self._encoding_buffer)) + + async def write(self, chunk: bytes) -> None: + if self._compress is not None: + if chunk: + chunk = await self._compress.compress(chunk) + if not chunk: + return + + if self._encoding == "base64": + buf = self._encoding_buffer + assert buf is not None + buf.extend(chunk) + + if buf: + div, mod = divmod(len(buf), 3) + enc_chunk, self._encoding_buffer = (buf[: div * 3], buf[div * 3 :]) + if enc_chunk: + b64chunk = base64.b64encode(enc_chunk) + await self._writer.write(b64chunk) + elif self._encoding == "quoted-printable": + await self._writer.write(binascii.b2a_qp(chunk)) + else: + await self._writer.write(chunk) diff --git a/venv/lib/python3.9/site-packages/aiohttp/payload.py b/venv/lib/python3.9/site-packages/aiohttp/payload.py new file mode 100644 index 0000000..5b88fa0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/payload.py @@ -0,0 +1,1120 @@ +import asyncio +import enum +import io +import json +import mimetypes +import os +import sys +import warnings +from abc import ABC, abstractmethod +from collections.abc import Iterable +from itertools import chain +from typing import ( + IO, + TYPE_CHECKING, + Any, + Dict, + Final, + List, + Optional, + Set, + TextIO, + Tuple, + Type, + Union, +) + +from multidict import CIMultiDict + +from . import hdrs +from .abc import AbstractStreamWriter +from .helpers import ( + _SENTINEL, + content_disposition_header, + guess_filename, + parse_mimetype, + sentinel, +) +from .streams import StreamReader +from .typedefs import JSONEncoder, _CIMultiDict + +__all__ = ( + "PAYLOAD_REGISTRY", + "get_payload", + "payload_type", + "Payload", + "BytesPayload", + "StringPayload", + "IOBasePayload", + "BytesIOPayload", + "BufferedReaderPayload", + "TextIOPayload", + "StringIOPayload", + "JsonPayload", + "AsyncIterablePayload", +) + +TOO_LARGE_BYTES_BODY: Final[int] = 2**20 # 1 MB +READ_SIZE: Final[int] = 2**16 # 64 KB +_CLOSE_FUTURES: Set[asyncio.Future[None]] = set() + + +class LookupError(Exception): + """Raised when no payload factory is found for the given data type.""" + + +class Order(str, enum.Enum): + normal = "normal" + try_first = "try_first" + try_last = "try_last" + + +def get_payload(data: Any, *args: Any, **kwargs: Any) -> "Payload": + return PAYLOAD_REGISTRY.get(data, *args, **kwargs) + + +def register_payload( + factory: Type["Payload"], type: Any, *, order: Order = Order.normal +) -> None: + PAYLOAD_REGISTRY.register(factory, type, order=order) + + +class payload_type: + def __init__(self, type: Any, *, order: Order = Order.normal) -> None: + self.type = type + self.order = order + + def __call__(self, factory: Type["Payload"]) -> Type["Payload"]: + register_payload(factory, self.type, order=self.order) + return factory + + +PayloadType = Type["Payload"] +_PayloadRegistryItem = Tuple[PayloadType, Any] + + +class PayloadRegistry: + """Payload registry. + + note: we need zope.interface for more efficient adapter search + """ + + __slots__ = ("_first", "_normal", "_last", "_normal_lookup") + + def __init__(self) -> None: + self._first: List[_PayloadRegistryItem] = [] + self._normal: List[_PayloadRegistryItem] = [] + self._last: List[_PayloadRegistryItem] = [] + self._normal_lookup: Dict[Any, PayloadType] = {} + + def get( + self, + data: Any, + *args: Any, + _CHAIN: "Type[chain[_PayloadRegistryItem]]" = chain, + **kwargs: Any, + ) -> "Payload": + if self._first: + for factory, type_ in self._first: + if isinstance(data, type_): + return factory(data, *args, **kwargs) + # Try the fast lookup first + if lookup_factory := self._normal_lookup.get(type(data)): + return lookup_factory(data, *args, **kwargs) + # Bail early if its already a Payload + if isinstance(data, Payload): + return data + # Fallback to the slower linear search + for factory, type_ in _CHAIN(self._normal, self._last): + if isinstance(data, type_): + return factory(data, *args, **kwargs) + raise LookupError() + + def register( + self, factory: PayloadType, type: Any, *, order: Order = Order.normal + ) -> None: + if order is Order.try_first: + self._first.append((factory, type)) + elif order is Order.normal: + self._normal.append((factory, type)) + if isinstance(type, Iterable): + for t in type: + self._normal_lookup[t] = factory + else: + self._normal_lookup[type] = factory + elif order is Order.try_last: + self._last.append((factory, type)) + else: + raise ValueError(f"Unsupported order {order!r}") + + +class Payload(ABC): + + _default_content_type: str = "application/octet-stream" + _size: Optional[int] = None + _consumed: bool = False # Default: payload has not been consumed yet + _autoclose: bool = False # Default: assume resource needs explicit closing + + def __init__( + self, + value: Any, + headers: Optional[ + Union[_CIMultiDict, Dict[str, str], Iterable[Tuple[str, str]]] + ] = None, + content_type: Union[str, None, _SENTINEL] = sentinel, + filename: Optional[str] = None, + encoding: Optional[str] = None, + **kwargs: Any, + ) -> None: + self._encoding = encoding + self._filename = filename + self._headers: _CIMultiDict = CIMultiDict() + self._value = value + if content_type is not sentinel and content_type is not None: + self._headers[hdrs.CONTENT_TYPE] = content_type + elif self._filename is not None: + if sys.version_info >= (3, 13): + guesser = mimetypes.guess_file_type + else: + guesser = mimetypes.guess_type + content_type = guesser(self._filename)[0] + if content_type is None: + content_type = self._default_content_type + self._headers[hdrs.CONTENT_TYPE] = content_type + else: + self._headers[hdrs.CONTENT_TYPE] = self._default_content_type + if headers: + self._headers.update(headers) + + @property + def size(self) -> Optional[int]: + """Size of the payload in bytes. + + Returns the number of bytes that will be transmitted when the payload + is written. For string payloads, this is the size after encoding to bytes, + not the length of the string. + """ + return self._size + + @property + def filename(self) -> Optional[str]: + """Filename of the payload.""" + return self._filename + + @property + def headers(self) -> _CIMultiDict: + """Custom item headers""" + return self._headers + + @property + def _binary_headers(self) -> bytes: + return ( + "".join([k + ": " + v + "\r\n" for k, v in self.headers.items()]).encode( + "utf-8" + ) + + b"\r\n" + ) + + @property + def encoding(self) -> Optional[str]: + """Payload encoding""" + return self._encoding + + @property + def content_type(self) -> str: + """Content type""" + return self._headers[hdrs.CONTENT_TYPE] + + @property + def consumed(self) -> bool: + """Whether the payload has been consumed and cannot be reused.""" + return self._consumed + + @property + def autoclose(self) -> bool: + """ + Whether the payload can close itself automatically. + + Returns True if the payload has no file handles or resources that need + explicit closing. If False, callers must await close() to release resources. + """ + return self._autoclose + + def set_content_disposition( + self, + disptype: str, + quote_fields: bool = True, + _charset: str = "utf-8", + **params: Any, + ) -> None: + """Sets ``Content-Disposition`` header.""" + self._headers[hdrs.CONTENT_DISPOSITION] = content_disposition_header( + disptype, quote_fields=quote_fields, _charset=_charset, **params + ) + + @abstractmethod + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + """ + Return string representation of the value. + + This is named decode() to allow compatibility with bytes objects. + """ + + @abstractmethod + async def write(self, writer: AbstractStreamWriter) -> None: + """ + Write payload to the writer stream. + + Args: + writer: An AbstractStreamWriter instance that handles the actual writing + + This is a legacy method that writes the entire payload without length constraints. + + Important: + For new implementations, use write_with_length() instead of this method. + This method is maintained for backwards compatibility and will eventually + delegate to write_with_length(writer, None) in all implementations. + + All payload subclasses must override this method for backwards compatibility, + but new code should use write_with_length for more flexibility and control. + + """ + + # write_with_length is new in aiohttp 3.12 + # it should be overridden by subclasses + async def write_with_length( + self, writer: AbstractStreamWriter, content_length: Optional[int] + ) -> None: + """ + Write payload with a specific content length constraint. + + Args: + writer: An AbstractStreamWriter instance that handles the actual writing + content_length: Maximum number of bytes to write (None for unlimited) + + This method allows writing payload content with a specific length constraint, + which is particularly useful for HTTP responses with Content-Length header. + + Note: + This is the base implementation that provides backwards compatibility + for subclasses that don't override this method. Specific payload types + should override this method to implement proper length-constrained writing. + + """ + # Backwards compatibility for subclasses that don't override this method + # and for the default implementation + await self.write(writer) + + async def as_bytes(self, encoding: str = "utf-8", errors: str = "strict") -> bytes: + """ + Return bytes representation of the value. + + This is a convenience method that calls decode() and encodes the result + to bytes using the specified encoding. + """ + # Use instance encoding if available, otherwise use parameter + actual_encoding = self._encoding or encoding + return self.decode(actual_encoding, errors).encode(actual_encoding) + + def _close(self) -> None: + """ + Async safe synchronous close operations for backwards compatibility. + + This method exists only for backwards compatibility with code that + needs to clean up payloads synchronously. In the future, we will + drop this method and only support the async close() method. + + WARNING: This method must be safe to call from within the event loop + without blocking. Subclasses should not perform any blocking I/O here. + + WARNING: This method must be called from within an event loop for + certain payload types (e.g., IOBasePayload). Calling it outside an + event loop may raise RuntimeError. + """ + # This is a no-op by default, but subclasses can override it + # for non-blocking cleanup operations. + + async def close(self) -> None: + """ + Close the payload if it holds any resources. + + IMPORTANT: This method must not await anything that might not finish + immediately, as it may be called during cleanup/cancellation. Schedule + any long-running operations without awaiting them. + + In the future, this will be the only close method supported. + """ + self._close() + + +class BytesPayload(Payload): + _value: bytes + # _consumed = False (inherited) - Bytes are immutable and can be reused + _autoclose = True # No file handle, just bytes in memory + + def __init__( + self, value: Union[bytes, bytearray, memoryview], *args: Any, **kwargs: Any + ) -> None: + if "content_type" not in kwargs: + kwargs["content_type"] = "application/octet-stream" + + super().__init__(value, *args, **kwargs) + + if isinstance(value, memoryview): + self._size = value.nbytes + elif isinstance(value, (bytes, bytearray)): + self._size = len(value) + else: + raise TypeError(f"value argument must be byte-ish, not {type(value)!r}") + + if self._size > TOO_LARGE_BYTES_BODY: + kwargs = {"source": self} + warnings.warn( + "Sending a large body directly with raw bytes might" + " lock the event loop. You should probably pass an " + "io.BytesIO object instead", + ResourceWarning, + **kwargs, + ) + + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + return self._value.decode(encoding, errors) + + async def as_bytes(self, encoding: str = "utf-8", errors: str = "strict") -> bytes: + """ + Return bytes representation of the value. + + This method returns the raw bytes content of the payload. + It is equivalent to accessing the _value attribute directly. + """ + return self._value + + async def write(self, writer: AbstractStreamWriter) -> None: + """ + Write the entire bytes payload to the writer stream. + + Args: + writer: An AbstractStreamWriter instance that handles the actual writing + + This method writes the entire bytes content without any length constraint. + + Note: + For new implementations that need length control, use write_with_length(). + This method is maintained for backwards compatibility and is equivalent + to write_with_length(writer, None). + + """ + await writer.write(self._value) + + async def write_with_length( + self, writer: AbstractStreamWriter, content_length: Optional[int] + ) -> None: + """ + Write bytes payload with a specific content length constraint. + + Args: + writer: An AbstractStreamWriter instance that handles the actual writing + content_length: Maximum number of bytes to write (None for unlimited) + + This method writes either the entire byte sequence or a slice of it + up to the specified content_length. For BytesPayload, this operation + is performed efficiently using array slicing. + + """ + if content_length is not None: + await writer.write(self._value[:content_length]) + else: + await writer.write(self._value) + + +class StringPayload(BytesPayload): + def __init__( + self, + value: str, + *args: Any, + encoding: Optional[str] = None, + content_type: Optional[str] = None, + **kwargs: Any, + ) -> None: + + if encoding is None: + if content_type is None: + real_encoding = "utf-8" + content_type = "text/plain; charset=utf-8" + else: + mimetype = parse_mimetype(content_type) + real_encoding = mimetype.parameters.get("charset", "utf-8") + else: + if content_type is None: + content_type = "text/plain; charset=%s" % encoding + real_encoding = encoding + + super().__init__( + value.encode(real_encoding), + encoding=real_encoding, + content_type=content_type, + *args, + **kwargs, + ) + + +class StringIOPayload(StringPayload): + def __init__(self, value: IO[str], *args: Any, **kwargs: Any) -> None: + super().__init__(value.read(), *args, **kwargs) + + +class IOBasePayload(Payload): + _value: io.IOBase + # _consumed = False (inherited) - File can be re-read from the same position + _start_position: Optional[int] = None + # _autoclose = False (inherited) - Has file handle that needs explicit closing + + def __init__( + self, value: IO[Any], disposition: str = "attachment", *args: Any, **kwargs: Any + ) -> None: + if "filename" not in kwargs: + kwargs["filename"] = guess_filename(value) + + super().__init__(value, *args, **kwargs) + + if self._filename is not None and disposition is not None: + if hdrs.CONTENT_DISPOSITION not in self.headers: + self.set_content_disposition(disposition, filename=self._filename) + + def _set_or_restore_start_position(self) -> None: + """Set or restore the start position of the file-like object.""" + if self._start_position is None: + try: + self._start_position = self._value.tell() + except (OSError, AttributeError): + self._consumed = True # Cannot seek, mark as consumed + return + try: + self._value.seek(self._start_position) + except (OSError, AttributeError): + # Failed to seek back - mark as consumed since we've already read + self._consumed = True + + def _read_and_available_len( + self, remaining_content_len: Optional[int] + ) -> Tuple[Optional[int], bytes]: + """ + Read the file-like object and return both its total size and the first chunk. + + Args: + remaining_content_len: Optional limit on how many bytes to read in this operation. + If None, READ_SIZE will be used as the default chunk size. + + Returns: + A tuple containing: + - The total size of the remaining unread content (None if size cannot be determined) + - The first chunk of bytes read from the file object + + This method is optimized to perform both size calculation and initial read + in a single operation, which is executed in a single executor job to minimize + context switches and file operations when streaming content. + + """ + self._set_or_restore_start_position() + size = self.size # Call size only once since it does I/O + return size, self._value.read( + min(READ_SIZE, size or READ_SIZE, remaining_content_len or READ_SIZE) + ) + + def _read(self, remaining_content_len: Optional[int]) -> bytes: + """ + Read a chunk of data from the file-like object. + + Args: + remaining_content_len: Optional maximum number of bytes to read. + If None, READ_SIZE will be used as the default chunk size. + + Returns: + A chunk of bytes read from the file object, respecting the + remaining_content_len limit if specified. + + This method is used for subsequent reads during streaming after + the initial _read_and_available_len call has been made. + + """ + return self._value.read(remaining_content_len or READ_SIZE) # type: ignore[no-any-return] + + @property + def size(self) -> Optional[int]: + """ + Size of the payload in bytes. + + Returns the total size of the payload content from the initial position. + This ensures consistent Content-Length for requests, including 307/308 redirects + where the same payload instance is reused. + + Returns None if the size cannot be determined (e.g., for unseekable streams). + """ + try: + # Store the start position on first access. + # This is critical when the same payload instance is reused (e.g., 307/308 + # redirects). Without storing the initial position, after the payload is + # read once, the file position would be at EOF, which would cause the + # size calculation to return 0 (file_size - EOF position). + # By storing the start position, we ensure the size calculation always + # returns the correct total size for any subsequent use. + if self._start_position is None: + self._start_position = self._value.tell() + + # Return the total size from the start position + # This ensures Content-Length is correct even after reading + return os.fstat(self._value.fileno()).st_size - self._start_position + except (AttributeError, OSError): + return None + + async def write(self, writer: AbstractStreamWriter) -> None: + """ + Write the entire file-like payload to the writer stream. + + Args: + writer: An AbstractStreamWriter instance that handles the actual writing + + This method writes the entire file content without any length constraint. + It delegates to write_with_length() with no length limit for implementation + consistency. + + Note: + For new implementations that need length control, use write_with_length() directly. + This method is maintained for backwards compatibility with existing code. + + """ + await self.write_with_length(writer, None) + + async def write_with_length( + self, writer: AbstractStreamWriter, content_length: Optional[int] + ) -> None: + """ + Write file-like payload with a specific content length constraint. + + Args: + writer: An AbstractStreamWriter instance that handles the actual writing + content_length: Maximum number of bytes to write (None for unlimited) + + This method implements optimized streaming of file content with length constraints: + + 1. File reading is performed in a thread pool to avoid blocking the event loop + 2. Content is read and written in chunks to maintain memory efficiency + 3. Writing stops when either: + - All available file content has been written (when size is known) + - The specified content_length has been reached + 4. File resources are properly closed even if the operation is cancelled + + The implementation carefully handles both known-size and unknown-size payloads, + as well as constrained and unconstrained content lengths. + + """ + loop = asyncio.get_running_loop() + total_written_len = 0 + remaining_content_len = content_length + + # Get initial data and available length + available_len, chunk = await loop.run_in_executor( + None, self._read_and_available_len, remaining_content_len + ) + # Process data chunks until done + while chunk: + chunk_len = len(chunk) + + # Write data with or without length constraint + if remaining_content_len is None: + await writer.write(chunk) + else: + await writer.write(chunk[:remaining_content_len]) + remaining_content_len -= chunk_len + + total_written_len += chunk_len + + # Check if we're done writing + if self._should_stop_writing( + available_len, total_written_len, remaining_content_len + ): + return + + # Read next chunk + chunk = await loop.run_in_executor( + None, + self._read, + ( + min(READ_SIZE, remaining_content_len) + if remaining_content_len is not None + else READ_SIZE + ), + ) + + def _should_stop_writing( + self, + available_len: Optional[int], + total_written_len: int, + remaining_content_len: Optional[int], + ) -> bool: + """ + Determine if we should stop writing data. + + Args: + available_len: Known size of the payload if available (None if unknown) + total_written_len: Number of bytes already written + remaining_content_len: Remaining bytes to be written for content-length limited responses + + Returns: + True if we should stop writing data, based on either: + - Having written all available data (when size is known) + - Having written all requested content (when content-length is specified) + + """ + return (available_len is not None and total_written_len >= available_len) or ( + remaining_content_len is not None and remaining_content_len <= 0 + ) + + def _close(self) -> None: + """ + Async safe synchronous close operations for backwards compatibility. + + This method exists only for backwards + compatibility. Use the async close() method instead. + + WARNING: This method MUST be called from within an event loop. + Calling it outside an event loop will raise RuntimeError. + """ + # Skip if already consumed + if self._consumed: + return + self._consumed = True # Mark as consumed to prevent further writes + # Schedule file closing without awaiting to prevent cancellation issues + loop = asyncio.get_running_loop() + close_future = loop.run_in_executor(None, self._value.close) + # Hold a strong reference to the future to prevent it from being + # garbage collected before it completes. + _CLOSE_FUTURES.add(close_future) + close_future.add_done_callback(_CLOSE_FUTURES.remove) + + async def close(self) -> None: + """ + Close the payload if it holds any resources. + + IMPORTANT: This method must not await anything that might not finish + immediately, as it may be called during cleanup/cancellation. Schedule + any long-running operations without awaiting them. + """ + self._close() + + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + """ + Return string representation of the value. + + WARNING: This method does blocking I/O and should not be called in the event loop. + """ + return self._read_all().decode(encoding, errors) + + def _read_all(self) -> bytes: + """Read the entire file-like object and return its content as bytes.""" + self._set_or_restore_start_position() + # Use readlines() to ensure we get all content + return b"".join(self._value.readlines()) + + async def as_bytes(self, encoding: str = "utf-8", errors: str = "strict") -> bytes: + """ + Return bytes representation of the value. + + This method reads the entire file content and returns it as bytes. + It is equivalent to reading the file-like object directly. + The file reading is performed in an executor to avoid blocking the event loop. + """ + loop = asyncio.get_running_loop() + return await loop.run_in_executor(None, self._read_all) + + +class TextIOPayload(IOBasePayload): + _value: io.TextIOBase + # _autoclose = False (inherited) - Has text file handle that needs explicit closing + + def __init__( + self, + value: TextIO, + *args: Any, + encoding: Optional[str] = None, + content_type: Optional[str] = None, + **kwargs: Any, + ) -> None: + + if encoding is None: + if content_type is None: + encoding = "utf-8" + content_type = "text/plain; charset=utf-8" + else: + mimetype = parse_mimetype(content_type) + encoding = mimetype.parameters.get("charset", "utf-8") + else: + if content_type is None: + content_type = "text/plain; charset=%s" % encoding + + super().__init__( + value, + content_type=content_type, + encoding=encoding, + *args, + **kwargs, + ) + + def _read_and_available_len( + self, remaining_content_len: Optional[int] + ) -> Tuple[Optional[int], bytes]: + """ + Read the text file-like object and return both its total size and the first chunk. + + Args: + remaining_content_len: Optional limit on how many bytes to read in this operation. + If None, READ_SIZE will be used as the default chunk size. + + Returns: + A tuple containing: + - The total size of the remaining unread content (None if size cannot be determined) + - The first chunk of bytes read from the file object, encoded using the payload's encoding + + This method is optimized to perform both size calculation and initial read + in a single operation, which is executed in a single executor job to minimize + context switches and file operations when streaming content. + + Note: + TextIOPayload handles encoding of the text content before writing it + to the stream. If no encoding is specified, UTF-8 is used as the default. + + """ + self._set_or_restore_start_position() + size = self.size + chunk = self._value.read( + min(READ_SIZE, size or READ_SIZE, remaining_content_len or READ_SIZE) + ) + return size, chunk.encode(self._encoding) if self._encoding else chunk.encode() + + def _read(self, remaining_content_len: Optional[int]) -> bytes: + """ + Read a chunk of data from the text file-like object. + + Args: + remaining_content_len: Optional maximum number of bytes to read. + If None, READ_SIZE will be used as the default chunk size. + + Returns: + A chunk of bytes read from the file object and encoded using the payload's + encoding. The data is automatically converted from text to bytes. + + This method is used for subsequent reads during streaming after + the initial _read_and_available_len call has been made. It properly + handles text encoding, converting the text content to bytes using + the specified encoding (or UTF-8 if none was provided). + + """ + chunk = self._value.read(remaining_content_len or READ_SIZE) + return chunk.encode(self._encoding) if self._encoding else chunk.encode() + + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + """ + Return string representation of the value. + + WARNING: This method does blocking I/O and should not be called in the event loop. + """ + self._set_or_restore_start_position() + return self._value.read() + + async def as_bytes(self, encoding: str = "utf-8", errors: str = "strict") -> bytes: + """ + Return bytes representation of the value. + + This method reads the entire text file content and returns it as bytes. + It encodes the text content using the specified encoding. + The file reading is performed in an executor to avoid blocking the event loop. + """ + loop = asyncio.get_running_loop() + + # Use instance encoding if available, otherwise use parameter + actual_encoding = self._encoding or encoding + + def _read_and_encode() -> bytes: + self._set_or_restore_start_position() + # TextIO read() always returns the full content + return self._value.read().encode(actual_encoding, errors) + + return await loop.run_in_executor(None, _read_and_encode) + + +class BytesIOPayload(IOBasePayload): + _value: io.BytesIO + _size: int # Always initialized in __init__ + _autoclose = True # BytesIO is in-memory, safe to auto-close + + def __init__(self, value: io.BytesIO, *args: Any, **kwargs: Any) -> None: + super().__init__(value, *args, **kwargs) + # Calculate size once during initialization + self._size = len(self._value.getbuffer()) - self._value.tell() + + @property + def size(self) -> int: + """Size of the payload in bytes. + + Returns the number of bytes in the BytesIO buffer that will be transmitted. + This is calculated once during initialization for efficiency. + """ + return self._size + + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + self._set_or_restore_start_position() + return self._value.read().decode(encoding, errors) + + async def write(self, writer: AbstractStreamWriter) -> None: + return await self.write_with_length(writer, None) + + async def write_with_length( + self, writer: AbstractStreamWriter, content_length: Optional[int] + ) -> None: + """ + Write BytesIO payload with a specific content length constraint. + + Args: + writer: An AbstractStreamWriter instance that handles the actual writing + content_length: Maximum number of bytes to write (None for unlimited) + + This implementation is specifically optimized for BytesIO objects: + + 1. Reads content in chunks to maintain memory efficiency + 2. Yields control back to the event loop periodically to prevent blocking + when dealing with large BytesIO objects + 3. Respects content_length constraints when specified + 4. Properly cleans up by closing the BytesIO object when done or on error + + The periodic yielding to the event loop is important for maintaining + responsiveness when processing large in-memory buffers. + + """ + self._set_or_restore_start_position() + loop_count = 0 + remaining_bytes = content_length + while chunk := self._value.read(READ_SIZE): + if loop_count > 0: + # Avoid blocking the event loop + # if they pass a large BytesIO object + # and we are not in the first iteration + # of the loop + await asyncio.sleep(0) + if remaining_bytes is None: + await writer.write(chunk) + else: + await writer.write(chunk[:remaining_bytes]) + remaining_bytes -= len(chunk) + if remaining_bytes <= 0: + return + loop_count += 1 + + async def as_bytes(self, encoding: str = "utf-8", errors: str = "strict") -> bytes: + """ + Return bytes representation of the value. + + This method reads the entire BytesIO content and returns it as bytes. + It is equivalent to accessing the _value attribute directly. + """ + self._set_or_restore_start_position() + return self._value.read() + + async def close(self) -> None: + """ + Close the BytesIO payload. + + This does nothing since BytesIO is in-memory and does not require explicit closing. + """ + + +class BufferedReaderPayload(IOBasePayload): + _value: io.BufferedIOBase + # _autoclose = False (inherited) - Has buffered file handle that needs explicit closing + + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + self._set_or_restore_start_position() + return self._value.read().decode(encoding, errors) + + +class JsonPayload(BytesPayload): + def __init__( + self, + value: Any, + encoding: str = "utf-8", + content_type: str = "application/json", + dumps: JSONEncoder = json.dumps, + *args: Any, + **kwargs: Any, + ) -> None: + + super().__init__( + dumps(value).encode(encoding), + content_type=content_type, + encoding=encoding, + *args, + **kwargs, + ) + + +if TYPE_CHECKING: + from typing import AsyncIterable, AsyncIterator + + _AsyncIterator = AsyncIterator[bytes] + _AsyncIterable = AsyncIterable[bytes] +else: + from collections.abc import AsyncIterable, AsyncIterator + + _AsyncIterator = AsyncIterator + _AsyncIterable = AsyncIterable + + +class AsyncIterablePayload(Payload): + + _iter: Optional[_AsyncIterator] = None + _value: _AsyncIterable + _cached_chunks: Optional[List[bytes]] = None + # _consumed stays False to allow reuse with cached content + _autoclose = True # Iterator doesn't need explicit closing + + def __init__(self, value: _AsyncIterable, *args: Any, **kwargs: Any) -> None: + if not isinstance(value, AsyncIterable): + raise TypeError( + "value argument must support " + "collections.abc.AsyncIterable interface, " + "got {!r}".format(type(value)) + ) + + if "content_type" not in kwargs: + kwargs["content_type"] = "application/octet-stream" + + super().__init__(value, *args, **kwargs) + + self._iter = value.__aiter__() + + async def write(self, writer: AbstractStreamWriter) -> None: + """ + Write the entire async iterable payload to the writer stream. + + Args: + writer: An AbstractStreamWriter instance that handles the actual writing + + This method iterates through the async iterable and writes each chunk + to the writer without any length constraint. + + Note: + For new implementations that need length control, use write_with_length() directly. + This method is maintained for backwards compatibility with existing code. + + """ + await self.write_with_length(writer, None) + + async def write_with_length( + self, writer: AbstractStreamWriter, content_length: Optional[int] + ) -> None: + """ + Write async iterable payload with a specific content length constraint. + + Args: + writer: An AbstractStreamWriter instance that handles the actual writing + content_length: Maximum number of bytes to write (None for unlimited) + + This implementation handles streaming of async iterable content with length constraints: + + 1. If cached chunks are available, writes from them + 2. Otherwise iterates through the async iterable one chunk at a time + 3. Respects content_length constraints when specified + 4. Does NOT generate cache - that's done by as_bytes() + + """ + # If we have cached chunks, use them + if self._cached_chunks is not None: + remaining_bytes = content_length + for chunk in self._cached_chunks: + if remaining_bytes is None: + await writer.write(chunk) + elif remaining_bytes > 0: + await writer.write(chunk[:remaining_bytes]) + remaining_bytes -= len(chunk) + else: + break + return + + # If iterator is exhausted and we don't have cached chunks, nothing to write + if self._iter is None: + return + + # Stream from the iterator + remaining_bytes = content_length + + try: + while True: + if sys.version_info >= (3, 10): + chunk = await anext(self._iter) + else: + chunk = await self._iter.__anext__() + if remaining_bytes is None: + await writer.write(chunk) + # If we have a content length limit + elif remaining_bytes > 0: + await writer.write(chunk[:remaining_bytes]) + remaining_bytes -= len(chunk) + # We still want to exhaust the iterator even + # if we have reached the content length limit + # since the file handle may not get closed by + # the iterator if we don't do this + except StopAsyncIteration: + # Iterator is exhausted + self._iter = None + self._consumed = True # Mark as consumed when streamed without caching + + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + """Decode the payload content as a string if cached chunks are available.""" + if self._cached_chunks is not None: + return b"".join(self._cached_chunks).decode(encoding, errors) + raise TypeError("Unable to decode - content not cached. Call as_bytes() first.") + + async def as_bytes(self, encoding: str = "utf-8", errors: str = "strict") -> bytes: + """ + Return bytes representation of the value. + + This method reads the entire async iterable content and returns it as bytes. + It generates and caches the chunks for future reuse. + """ + # If we have cached chunks, return them joined + if self._cached_chunks is not None: + return b"".join(self._cached_chunks) + + # If iterator is exhausted and no cache, return empty + if self._iter is None: + return b"" + + # Read all chunks and cache them + chunks: List[bytes] = [] + async for chunk in self._iter: + chunks.append(chunk) + + # Iterator is exhausted, cache the chunks + self._iter = None + self._cached_chunks = chunks + # Keep _consumed as False to allow reuse with cached chunks + + return b"".join(chunks) + + +class StreamReaderPayload(AsyncIterablePayload): + def __init__(self, value: StreamReader, *args: Any, **kwargs: Any) -> None: + super().__init__(value.iter_any(), *args, **kwargs) + + +PAYLOAD_REGISTRY = PayloadRegistry() +PAYLOAD_REGISTRY.register(BytesPayload, (bytes, bytearray, memoryview)) +PAYLOAD_REGISTRY.register(StringPayload, str) +PAYLOAD_REGISTRY.register(StringIOPayload, io.StringIO) +PAYLOAD_REGISTRY.register(TextIOPayload, io.TextIOBase) +PAYLOAD_REGISTRY.register(BytesIOPayload, io.BytesIO) +PAYLOAD_REGISTRY.register(BufferedReaderPayload, (io.BufferedReader, io.BufferedRandom)) +PAYLOAD_REGISTRY.register(IOBasePayload, io.IOBase) +PAYLOAD_REGISTRY.register(StreamReaderPayload, StreamReader) +# try_last for giving a chance to more specialized async interables like +# multipart.BodyPartReaderPayload override the default +PAYLOAD_REGISTRY.register(AsyncIterablePayload, AsyncIterable, order=Order.try_last) diff --git a/venv/lib/python3.9/site-packages/aiohttp/payload_streamer.py b/venv/lib/python3.9/site-packages/aiohttp/payload_streamer.py new file mode 100644 index 0000000..831fdc0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/payload_streamer.py @@ -0,0 +1,78 @@ +""" +Payload implementation for coroutines as data provider. + +As a simple case, you can upload data from file:: + + @aiohttp.streamer + async def file_sender(writer, file_name=None): + with open(file_name, 'rb') as f: + chunk = f.read(2**16) + while chunk: + await writer.write(chunk) + + chunk = f.read(2**16) + +Then you can use `file_sender` like this: + + async with session.post('http://httpbin.org/post', + data=file_sender(file_name='huge_file')) as resp: + print(await resp.text()) + +..note:: Coroutine must accept `writer` as first argument + +""" + +import types +import warnings +from typing import Any, Awaitable, Callable, Dict, Tuple + +from .abc import AbstractStreamWriter +from .payload import Payload, payload_type + +__all__ = ("streamer",) + + +class _stream_wrapper: + def __init__( + self, + coro: Callable[..., Awaitable[None]], + args: Tuple[Any, ...], + kwargs: Dict[str, Any], + ) -> None: + self.coro = types.coroutine(coro) + self.args = args + self.kwargs = kwargs + + async def __call__(self, writer: AbstractStreamWriter) -> None: + await self.coro(writer, *self.args, **self.kwargs) + + +class streamer: + def __init__(self, coro: Callable[..., Awaitable[None]]) -> None: + warnings.warn( + "@streamer is deprecated, use async generators instead", + DeprecationWarning, + stacklevel=2, + ) + self.coro = coro + + def __call__(self, *args: Any, **kwargs: Any) -> _stream_wrapper: + return _stream_wrapper(self.coro, args, kwargs) + + +@payload_type(_stream_wrapper) +class StreamWrapperPayload(Payload): + async def write(self, writer: AbstractStreamWriter) -> None: + await self._value(writer) + + def decode(self, encoding: str = "utf-8", errors: str = "strict") -> str: + raise TypeError("Unable to decode.") + + +@payload_type(streamer) +class StreamPayload(StreamWrapperPayload): + def __init__(self, value: Any, *args: Any, **kwargs: Any) -> None: + super().__init__(value(), *args, **kwargs) + + async def write(self, writer: AbstractStreamWriter) -> None: + await self._value(writer) diff --git a/venv/lib/python3.9/site-packages/aiohttp/py.typed b/venv/lib/python3.9/site-packages/aiohttp/py.typed new file mode 100644 index 0000000..f5642f7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/py.typed @@ -0,0 +1 @@ +Marker diff --git a/venv/lib/python3.9/site-packages/aiohttp/pytest_plugin.py b/venv/lib/python3.9/site-packages/aiohttp/pytest_plugin.py new file mode 100644 index 0000000..7d59fe8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/pytest_plugin.py @@ -0,0 +1,444 @@ +import asyncio +import contextlib +import inspect +import warnings +from typing import ( + Any, + Awaitable, + Callable, + Dict, + Iterator, + Optional, + Protocol, + Union, + overload, +) + +import pytest + +from .test_utils import ( + BaseTestServer, + RawTestServer, + TestClient, + TestServer, + loop_context, + setup_test_loop, + teardown_test_loop, + unused_port as _unused_port, +) +from .web import Application, BaseRequest, Request +from .web_protocol import _RequestHandler + +try: + import uvloop +except ImportError: # pragma: no cover + uvloop = None # type: ignore[assignment] + + +class AiohttpClient(Protocol): + @overload + async def __call__( + self, + __param: Application, + *, + server_kwargs: Optional[Dict[str, Any]] = None, + **kwargs: Any, + ) -> TestClient[Request, Application]: ... + @overload + async def __call__( + self, + __param: BaseTestServer, + *, + server_kwargs: Optional[Dict[str, Any]] = None, + **kwargs: Any, + ) -> TestClient[BaseRequest, None]: ... + + +class AiohttpServer(Protocol): + def __call__( + self, app: Application, *, port: Optional[int] = None, **kwargs: Any + ) -> Awaitable[TestServer]: ... + + +class AiohttpRawServer(Protocol): + def __call__( + self, handler: _RequestHandler, *, port: Optional[int] = None, **kwargs: Any + ) -> Awaitable[RawTestServer]: ... + + +def pytest_addoption(parser): # type: ignore[no-untyped-def] + parser.addoption( + "--aiohttp-fast", + action="store_true", + default=False, + help="run tests faster by disabling extra checks", + ) + parser.addoption( + "--aiohttp-loop", + action="store", + default="pyloop", + help="run tests with specific loop: pyloop, uvloop or all", + ) + parser.addoption( + "--aiohttp-enable-loop-debug", + action="store_true", + default=False, + help="enable event loop debug mode", + ) + + +def pytest_fixture_setup(fixturedef): # type: ignore[no-untyped-def] + """Set up pytest fixture. + + Allow fixtures to be coroutines. Run coroutine fixtures in an event loop. + """ + func = fixturedef.func + + if inspect.isasyncgenfunction(func): + # async generator fixture + is_async_gen = True + elif inspect.iscoroutinefunction(func): + # regular async fixture + is_async_gen = False + else: + # not an async fixture, nothing to do + return + + strip_request = False + if "request" not in fixturedef.argnames: + fixturedef.argnames += ("request",) + strip_request = True + + def wrapper(*args, **kwargs): # type: ignore[no-untyped-def] + request = kwargs["request"] + if strip_request: + del kwargs["request"] + + # if neither the fixture nor the test use the 'loop' fixture, + # 'getfixturevalue' will fail because the test is not parameterized + # (this can be removed someday if 'loop' is no longer parameterized) + if "loop" not in request.fixturenames: + raise Exception( + "Asynchronous fixtures must depend on the 'loop' fixture or " + "be used in tests depending from it." + ) + + _loop = request.getfixturevalue("loop") + + if is_async_gen: + # for async generators, we need to advance the generator once, + # then advance it again in a finalizer + gen = func(*args, **kwargs) + + def finalizer(): # type: ignore[no-untyped-def] + try: + return _loop.run_until_complete(gen.__anext__()) + except StopAsyncIteration: + pass + + request.addfinalizer(finalizer) + return _loop.run_until_complete(gen.__anext__()) + else: + return _loop.run_until_complete(func(*args, **kwargs)) + + fixturedef.func = wrapper + + +@pytest.fixture +def fast(request): # type: ignore[no-untyped-def] + """--fast config option""" + return request.config.getoption("--aiohttp-fast") + + +@pytest.fixture +def loop_debug(request): # type: ignore[no-untyped-def] + """--enable-loop-debug config option""" + return request.config.getoption("--aiohttp-enable-loop-debug") + + +@contextlib.contextmanager +def _runtime_warning_context(): # type: ignore[no-untyped-def] + """Context manager which checks for RuntimeWarnings. + + This exists specifically to + avoid "coroutine 'X' was never awaited" warnings being missed. + + If RuntimeWarnings occur in the context a RuntimeError is raised. + """ + with warnings.catch_warnings(record=True) as _warnings: + yield + rw = [ + "{w.filename}:{w.lineno}:{w.message}".format(w=w) + for w in _warnings + if w.category == RuntimeWarning + ] + if rw: + raise RuntimeError( + "{} Runtime Warning{},\n{}".format( + len(rw), "" if len(rw) == 1 else "s", "\n".join(rw) + ) + ) + + +@contextlib.contextmanager +def _passthrough_loop_context(loop, fast=False): # type: ignore[no-untyped-def] + """Passthrough loop context. + + Sets up and tears down a loop unless one is passed in via the loop + argument when it's passed straight through. + """ + if loop: + # loop already exists, pass it straight through + yield loop + else: + # this shadows loop_context's standard behavior + loop = setup_test_loop() + yield loop + teardown_test_loop(loop, fast=fast) + + +def pytest_pycollect_makeitem(collector, name, obj): # type: ignore[no-untyped-def] + """Fix pytest collecting for coroutines.""" + if collector.funcnamefilter(name) and inspect.iscoroutinefunction(obj): + return list(collector._genfunctions(name, obj)) + + +def pytest_pyfunc_call(pyfuncitem): # type: ignore[no-untyped-def] + """Run coroutines in an event loop instead of a normal function call.""" + fast = pyfuncitem.config.getoption("--aiohttp-fast") + if inspect.iscoroutinefunction(pyfuncitem.function): + existing_loop = ( + pyfuncitem.funcargs.get("proactor_loop") + or pyfuncitem.funcargs.get("selector_loop") + or pyfuncitem.funcargs.get("uvloop_loop") + or pyfuncitem.funcargs.get("loop", None) + ) + + with _runtime_warning_context(): + with _passthrough_loop_context(existing_loop, fast=fast) as _loop: + testargs = { + arg: pyfuncitem.funcargs[arg] + for arg in pyfuncitem._fixtureinfo.argnames + } + _loop.run_until_complete(pyfuncitem.obj(**testargs)) + + return True + + +def pytest_generate_tests(metafunc): # type: ignore[no-untyped-def] + if "loop_factory" not in metafunc.fixturenames: + return + + loops = metafunc.config.option.aiohttp_loop + avail_factories: dict[str, Callable[[], asyncio.AbstractEventLoop]] + avail_factories = {"pyloop": asyncio.new_event_loop} + + if uvloop is not None: # pragma: no cover + avail_factories["uvloop"] = uvloop.new_event_loop + + if loops == "all": + loops = "pyloop,uvloop?" + + factories = {} # type: ignore[var-annotated] + for name in loops.split(","): + required = not name.endswith("?") + name = name.strip(" ?") + if name not in avail_factories: # pragma: no cover + if required: + raise ValueError( + "Unknown loop '%s', available loops: %s" + % (name, list(factories.keys())) + ) + else: + continue + factories[name] = avail_factories[name] + metafunc.parametrize( + "loop_factory", list(factories.values()), ids=list(factories.keys()) + ) + + +@pytest.fixture +def loop( + loop_factory: Callable[[], asyncio.AbstractEventLoop], + fast: bool, + loop_debug: bool, +) -> Iterator[asyncio.AbstractEventLoop]: + """Return an instance of the event loop.""" + with loop_context(loop_factory, fast=fast) as _loop: + if loop_debug: + _loop.set_debug(True) # pragma: no cover + asyncio.set_event_loop(_loop) + yield _loop + + +@pytest.fixture +def proactor_loop() -> Iterator[asyncio.AbstractEventLoop]: + factory = asyncio.ProactorEventLoop # type: ignore[attr-defined] + + with loop_context(factory) as _loop: + asyncio.set_event_loop(_loop) + yield _loop + + +@pytest.fixture +def unused_port(aiohttp_unused_port: Callable[[], int]) -> Callable[[], int]: + warnings.warn( + "Deprecated, use aiohttp_unused_port fixture instead", + DeprecationWarning, + stacklevel=2, + ) + return aiohttp_unused_port + + +@pytest.fixture +def aiohttp_unused_port() -> Callable[[], int]: + """Return a port that is unused on the current host.""" + return _unused_port + + +@pytest.fixture +def aiohttp_server(loop: asyncio.AbstractEventLoop) -> Iterator[AiohttpServer]: + """Factory to create a TestServer instance, given an app. + + aiohttp_server(app, **kwargs) + """ + servers = [] + + async def go( + app: Application, + *, + host: str = "127.0.0.1", + port: Optional[int] = None, + **kwargs: Any, + ) -> TestServer: + server = TestServer(app, host=host, port=port) + await server.start_server(loop=loop, **kwargs) + servers.append(server) + return server + + yield go + + async def finalize() -> None: + while servers: + await servers.pop().close() + + loop.run_until_complete(finalize()) + + +@pytest.fixture +def test_server(aiohttp_server): # type: ignore[no-untyped-def] # pragma: no cover + warnings.warn( + "Deprecated, use aiohttp_server fixture instead", + DeprecationWarning, + stacklevel=2, + ) + return aiohttp_server + + +@pytest.fixture +def aiohttp_raw_server(loop: asyncio.AbstractEventLoop) -> Iterator[AiohttpRawServer]: + """Factory to create a RawTestServer instance, given a web handler. + + aiohttp_raw_server(handler, **kwargs) + """ + servers = [] + + async def go( + handler: _RequestHandler, *, port: Optional[int] = None, **kwargs: Any + ) -> RawTestServer: + server = RawTestServer(handler, port=port) + await server.start_server(loop=loop, **kwargs) + servers.append(server) + return server + + yield go + + async def finalize() -> None: + while servers: + await servers.pop().close() + + loop.run_until_complete(finalize()) + + +@pytest.fixture +def raw_test_server( # type: ignore[no-untyped-def] # pragma: no cover + aiohttp_raw_server, +): + warnings.warn( + "Deprecated, use aiohttp_raw_server fixture instead", + DeprecationWarning, + stacklevel=2, + ) + return aiohttp_raw_server + + +@pytest.fixture +def aiohttp_client(loop: asyncio.AbstractEventLoop) -> Iterator[AiohttpClient]: + """Factory to create a TestClient instance. + + aiohttp_client(app, **kwargs) + aiohttp_client(server, **kwargs) + aiohttp_client(raw_server, **kwargs) + """ + clients = [] + + @overload + async def go( + __param: Application, + *, + server_kwargs: Optional[Dict[str, Any]] = None, + **kwargs: Any, + ) -> TestClient[Request, Application]: ... + + @overload + async def go( + __param: BaseTestServer, + *, + server_kwargs: Optional[Dict[str, Any]] = None, + **kwargs: Any, + ) -> TestClient[BaseRequest, None]: ... + + async def go( + __param: Union[Application, BaseTestServer], + *args: Any, + server_kwargs: Optional[Dict[str, Any]] = None, + **kwargs: Any, + ) -> TestClient[Any, Any]: + if isinstance(__param, Callable) and not isinstance( # type: ignore[arg-type] + __param, (Application, BaseTestServer) + ): + __param = __param(loop, *args, **kwargs) + kwargs = {} + else: + assert not args, "args should be empty" + + if isinstance(__param, Application): + server_kwargs = server_kwargs or {} + server = TestServer(__param, loop=loop, **server_kwargs) + client = TestClient(server, loop=loop, **kwargs) + elif isinstance(__param, BaseTestServer): + client = TestClient(__param, loop=loop, **kwargs) + else: + raise ValueError("Unknown argument type: %r" % type(__param)) + + await client.start_server() + clients.append(client) + return client + + yield go + + async def finalize() -> None: + while clients: + await clients.pop().close() + + loop.run_until_complete(finalize()) + + +@pytest.fixture +def test_client(aiohttp_client): # type: ignore[no-untyped-def] # pragma: no cover + warnings.warn( + "Deprecated, use aiohttp_client fixture instead", + DeprecationWarning, + stacklevel=2, + ) + return aiohttp_client diff --git a/venv/lib/python3.9/site-packages/aiohttp/resolver.py b/venv/lib/python3.9/site-packages/aiohttp/resolver.py new file mode 100644 index 0000000..b20e567 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/resolver.py @@ -0,0 +1,274 @@ +import asyncio +import socket +import weakref +from typing import Any, Dict, Final, List, Optional, Tuple, Type, Union + +from .abc import AbstractResolver, ResolveResult + +__all__ = ("ThreadedResolver", "AsyncResolver", "DefaultResolver") + + +try: + import aiodns + + aiodns_default = hasattr(aiodns.DNSResolver, "getaddrinfo") +except ImportError: # pragma: no cover + aiodns = None # type: ignore[assignment] + aiodns_default = False + + +_NUMERIC_SOCKET_FLAGS = socket.AI_NUMERICHOST | socket.AI_NUMERICSERV +_NAME_SOCKET_FLAGS = socket.NI_NUMERICHOST | socket.NI_NUMERICSERV +_AI_ADDRCONFIG = socket.AI_ADDRCONFIG +if hasattr(socket, "AI_MASK"): + _AI_ADDRCONFIG &= socket.AI_MASK + + +class ThreadedResolver(AbstractResolver): + """Threaded resolver. + + Uses an Executor for synchronous getaddrinfo() calls. + concurrent.futures.ThreadPoolExecutor is used by default. + """ + + def __init__(self, loop: Optional[asyncio.AbstractEventLoop] = None) -> None: + self._loop = loop or asyncio.get_running_loop() + + async def resolve( + self, host: str, port: int = 0, family: socket.AddressFamily = socket.AF_INET + ) -> List[ResolveResult]: + infos = await self._loop.getaddrinfo( + host, + port, + type=socket.SOCK_STREAM, + family=family, + flags=_AI_ADDRCONFIG, + ) + + hosts: List[ResolveResult] = [] + for family, _, proto, _, address in infos: + if family == socket.AF_INET6: + if len(address) < 3: + # IPv6 is not supported by Python build, + # or IPv6 is not enabled in the host + continue + if address[3]: + # This is essential for link-local IPv6 addresses. + # LL IPv6 is a VERY rare case. Strictly speaking, we should use + # getnameinfo() unconditionally, but performance makes sense. + resolved_host, _port = await self._loop.getnameinfo( + address, _NAME_SOCKET_FLAGS + ) + port = int(_port) + else: + resolved_host, port = address[:2] + else: # IPv4 + assert family == socket.AF_INET + resolved_host, port = address # type: ignore[misc] + hosts.append( + ResolveResult( + hostname=host, + host=resolved_host, + port=port, + family=family, + proto=proto, + flags=_NUMERIC_SOCKET_FLAGS, + ) + ) + + return hosts + + async def close(self) -> None: + pass + + +class AsyncResolver(AbstractResolver): + """Use the `aiodns` package to make asynchronous DNS lookups""" + + def __init__( + self, + loop: Optional[asyncio.AbstractEventLoop] = None, + *args: Any, + **kwargs: Any, + ) -> None: + if aiodns is None: + raise RuntimeError("Resolver requires aiodns library") + + self._loop = loop or asyncio.get_running_loop() + self._manager: Optional[_DNSResolverManager] = None + # If custom args are provided, create a dedicated resolver instance + # This means each AsyncResolver with custom args gets its own + # aiodns.DNSResolver instance + if args or kwargs: + self._resolver = aiodns.DNSResolver(*args, **kwargs) + return + # Use the shared resolver from the manager for default arguments + self._manager = _DNSResolverManager() + self._resolver = self._manager.get_resolver(self, self._loop) + + if not hasattr(self._resolver, "gethostbyname"): + # aiodns 1.1 is not available, fallback to DNSResolver.query + self.resolve = self._resolve_with_query # type: ignore + + async def resolve( + self, host: str, port: int = 0, family: socket.AddressFamily = socket.AF_INET + ) -> List[ResolveResult]: + try: + resp = await self._resolver.getaddrinfo( + host, + port=port, + type=socket.SOCK_STREAM, + family=family, + flags=_AI_ADDRCONFIG, + ) + except aiodns.error.DNSError as exc: + msg = exc.args[1] if len(exc.args) >= 1 else "DNS lookup failed" + raise OSError(None, msg) from exc + hosts: List[ResolveResult] = [] + for node in resp.nodes: + address: Union[Tuple[bytes, int], Tuple[bytes, int, int, int]] = node.addr + family = node.family + if family == socket.AF_INET6: + if len(address) > 3 and address[3]: + # This is essential for link-local IPv6 addresses. + # LL IPv6 is a VERY rare case. Strictly speaking, we should use + # getnameinfo() unconditionally, but performance makes sense. + result = await self._resolver.getnameinfo( + (address[0].decode("ascii"), *address[1:]), + _NAME_SOCKET_FLAGS, + ) + resolved_host = result.node + else: + resolved_host = address[0].decode("ascii") + port = address[1] + else: # IPv4 + assert family == socket.AF_INET + resolved_host = address[0].decode("ascii") + port = address[1] + hosts.append( + ResolveResult( + hostname=host, + host=resolved_host, + port=port, + family=family, + proto=0, + flags=_NUMERIC_SOCKET_FLAGS, + ) + ) + + if not hosts: + raise OSError(None, "DNS lookup failed") + + return hosts + + async def _resolve_with_query( + self, host: str, port: int = 0, family: int = socket.AF_INET + ) -> List[Dict[str, Any]]: + qtype: Final = "AAAA" if family == socket.AF_INET6 else "A" + + try: + resp = await self._resolver.query(host, qtype) + except aiodns.error.DNSError as exc: + msg = exc.args[1] if len(exc.args) >= 1 else "DNS lookup failed" + raise OSError(None, msg) from exc + + hosts = [] + for rr in resp: + hosts.append( + { + "hostname": host, + "host": rr.host, + "port": port, + "family": family, + "proto": 0, + "flags": socket.AI_NUMERICHOST, + } + ) + + if not hosts: + raise OSError(None, "DNS lookup failed") + + return hosts + + async def close(self) -> None: + if self._manager: + # Release the resolver from the manager if using the shared resolver + self._manager.release_resolver(self, self._loop) + self._manager = None # Clear reference to manager + self._resolver = None # type: ignore[assignment] # Clear reference to resolver + return + # Otherwise cancel our dedicated resolver + if self._resolver is not None: + self._resolver.cancel() + self._resolver = None # type: ignore[assignment] # Clear reference + + +class _DNSResolverManager: + """Manager for aiodns.DNSResolver objects. + + This class manages shared aiodns.DNSResolver instances + with no custom arguments across different event loops. + """ + + _instance: Optional["_DNSResolverManager"] = None + + def __new__(cls) -> "_DNSResolverManager": + if cls._instance is None: + cls._instance = super().__new__(cls) + cls._instance._init() + return cls._instance + + def _init(self) -> None: + # Use WeakKeyDictionary to allow event loops to be garbage collected + self._loop_data: weakref.WeakKeyDictionary[ + asyncio.AbstractEventLoop, + tuple["aiodns.DNSResolver", weakref.WeakSet["AsyncResolver"]], + ] = weakref.WeakKeyDictionary() + + def get_resolver( + self, client: "AsyncResolver", loop: asyncio.AbstractEventLoop + ) -> "aiodns.DNSResolver": + """Get or create the shared aiodns.DNSResolver instance for a specific event loop. + + Args: + client: The AsyncResolver instance requesting the resolver. + This is required to track resolver usage. + loop: The event loop to use for the resolver. + """ + # Create a new resolver and client set for this loop if it doesn't exist + if loop not in self._loop_data: + resolver = aiodns.DNSResolver(loop=loop) + client_set: weakref.WeakSet["AsyncResolver"] = weakref.WeakSet() + self._loop_data[loop] = (resolver, client_set) + else: + # Get the existing resolver and client set + resolver, client_set = self._loop_data[loop] + + # Register this client with the loop + client_set.add(client) + return resolver + + def release_resolver( + self, client: "AsyncResolver", loop: asyncio.AbstractEventLoop + ) -> None: + """Release the resolver for an AsyncResolver client when it's closed. + + Args: + client: The AsyncResolver instance to release. + loop: The event loop the resolver was using. + """ + # Remove client from its loop's tracking + current_loop_data = self._loop_data.get(loop) + if current_loop_data is None: + return + resolver, client_set = current_loop_data + client_set.discard(client) + # If no more clients for this loop, cancel and remove its resolver + if not client_set: + if resolver is not None: + resolver.cancel() + del self._loop_data[loop] + + +_DefaultType = Type[Union[AsyncResolver, ThreadedResolver]] +DefaultResolver: _DefaultType = AsyncResolver if aiodns_default else ThreadedResolver diff --git a/venv/lib/python3.9/site-packages/aiohttp/streams.py b/venv/lib/python3.9/site-packages/aiohttp/streams.py new file mode 100644 index 0000000..921827e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/streams.py @@ -0,0 +1,762 @@ +import asyncio +import collections +import warnings +from typing import ( + Awaitable, + Callable, + Deque, + Final, + Generic, + List, + Optional, + Tuple, + TypeVar, +) + +from .base_protocol import BaseProtocol +from .helpers import ( + _EXC_SENTINEL, + BaseTimerContext, + TimerNoop, + set_exception, + set_result, +) +from .http_exceptions import LineTooLong +from .log import internal_logger + +__all__ = ( + "EMPTY_PAYLOAD", + "EofStream", + "StreamReader", + "DataQueue", +) + +_T = TypeVar("_T") + + +class EofStream(Exception): + """eof stream indication.""" + + +class AsyncStreamIterator(Generic[_T]): + + __slots__ = ("read_func",) + + def __init__(self, read_func: Callable[[], Awaitable[_T]]) -> None: + self.read_func = read_func + + def __aiter__(self) -> "AsyncStreamIterator[_T]": + return self + + async def __anext__(self) -> _T: + try: + rv = await self.read_func() + except EofStream: + raise StopAsyncIteration + if rv == b"": + raise StopAsyncIteration + return rv + + +class ChunkTupleAsyncStreamIterator: + + __slots__ = ("_stream",) + + def __init__(self, stream: "StreamReader") -> None: + self._stream = stream + + def __aiter__(self) -> "ChunkTupleAsyncStreamIterator": + return self + + async def __anext__(self) -> Tuple[bytes, bool]: + rv = await self._stream.readchunk() + if rv == (b"", False): + raise StopAsyncIteration + return rv + + +class AsyncStreamReaderMixin: + + __slots__ = () + + def __aiter__(self) -> AsyncStreamIterator[bytes]: + return AsyncStreamIterator(self.readline) # type: ignore[attr-defined] + + def iter_chunked(self, n: int) -> AsyncStreamIterator[bytes]: + """Returns an asynchronous iterator that yields chunks of size n.""" + return AsyncStreamIterator(lambda: self.read(n)) # type: ignore[attr-defined] + + def iter_any(self) -> AsyncStreamIterator[bytes]: + """Yield all available data as soon as it is received.""" + return AsyncStreamIterator(self.readany) # type: ignore[attr-defined] + + def iter_chunks(self) -> ChunkTupleAsyncStreamIterator: + """Yield chunks of data as they are received by the server. + + The yielded objects are tuples + of (bytes, bool) as returned by the StreamReader.readchunk method. + """ + return ChunkTupleAsyncStreamIterator(self) # type: ignore[arg-type] + + +class StreamReader(AsyncStreamReaderMixin): + """An enhancement of asyncio.StreamReader. + + Supports asynchronous iteration by line, chunk or as available:: + + async for line in reader: + ... + async for chunk in reader.iter_chunked(1024): + ... + async for slice in reader.iter_any(): + ... + + """ + + __slots__ = ( + "_protocol", + "_low_water", + "_high_water", + "_low_water_chunks", + "_high_water_chunks", + "_loop", + "_size", + "_cursor", + "_http_chunk_splits", + "_buffer", + "_buffer_offset", + "_eof", + "_waiter", + "_eof_waiter", + "_exception", + "_timer", + "_eof_callbacks", + "_eof_counter", + "total_bytes", + "total_compressed_bytes", + ) + + def __init__( + self, + protocol: BaseProtocol, + limit: int, + *, + timer: Optional[BaseTimerContext] = None, + loop: Optional[asyncio.AbstractEventLoop] = None, + ) -> None: + self._protocol = protocol + self._low_water = limit + self._high_water = limit * 2 + if loop is None: + loop = asyncio.get_event_loop() + # Ensure high_water_chunks >= 3 so it's always > low_water_chunks. + self._high_water_chunks = max(3, limit // 4) + # Use max(2, ...) because there's always at least 1 chunk split remaining + # (the current position), so we need low_water >= 2 to allow resume. + self._low_water_chunks = max(2, self._high_water_chunks // 2) + self._loop = loop + self._size = 0 + self._cursor = 0 + self._http_chunk_splits: Optional[Deque[int]] = None + self._buffer: Deque[bytes] = collections.deque() + self._buffer_offset = 0 + self._eof = False + self._waiter: Optional[asyncio.Future[None]] = None + self._eof_waiter: Optional[asyncio.Future[None]] = None + self._exception: Optional[BaseException] = None + self._timer = TimerNoop() if timer is None else timer + self._eof_callbacks: List[Callable[[], None]] = [] + self._eof_counter = 0 + self.total_bytes = 0 + self.total_compressed_bytes: Optional[int] = None + + def __repr__(self) -> str: + info = [self.__class__.__name__] + if self._size: + info.append("%d bytes" % self._size) + if self._eof: + info.append("eof") + if self._low_water != 2**16: # default limit + info.append("low=%d high=%d" % (self._low_water, self._high_water)) + if self._waiter: + info.append("w=%r" % self._waiter) + if self._exception: + info.append("e=%r" % self._exception) + return "<%s>" % " ".join(info) + + def get_read_buffer_limits(self) -> Tuple[int, int]: + return (self._low_water, self._high_water) + + def exception(self) -> Optional[BaseException]: + return self._exception + + def set_exception( + self, + exc: BaseException, + exc_cause: BaseException = _EXC_SENTINEL, + ) -> None: + self._exception = exc + self._eof_callbacks.clear() + + waiter = self._waiter + if waiter is not None: + self._waiter = None + set_exception(waiter, exc, exc_cause) + + waiter = self._eof_waiter + if waiter is not None: + self._eof_waiter = None + set_exception(waiter, exc, exc_cause) + + def on_eof(self, callback: Callable[[], None]) -> None: + if self._eof: + try: + callback() + except Exception: + internal_logger.exception("Exception in eof callback") + else: + self._eof_callbacks.append(callback) + + def feed_eof(self) -> None: + self._eof = True + + waiter = self._waiter + if waiter is not None: + self._waiter = None + set_result(waiter, None) + + waiter = self._eof_waiter + if waiter is not None: + self._eof_waiter = None + set_result(waiter, None) + + if self._protocol._reading_paused: + self._protocol.resume_reading() + + for cb in self._eof_callbacks: + try: + cb() + except Exception: + internal_logger.exception("Exception in eof callback") + + self._eof_callbacks.clear() + + def is_eof(self) -> bool: + """Return True if 'feed_eof' was called.""" + return self._eof + + def at_eof(self) -> bool: + """Return True if the buffer is empty and 'feed_eof' was called.""" + return self._eof and not self._buffer + + async def wait_eof(self) -> None: + if self._eof: + return + + assert self._eof_waiter is None + self._eof_waiter = self._loop.create_future() + try: + await self._eof_waiter + finally: + self._eof_waiter = None + + @property + def total_raw_bytes(self) -> int: + if self.total_compressed_bytes is None: + return self.total_bytes + return self.total_compressed_bytes + + def unread_data(self, data: bytes) -> None: + """rollback reading some data from stream, inserting it to buffer head.""" + warnings.warn( + "unread_data() is deprecated " + "and will be removed in future releases (#3260)", + DeprecationWarning, + stacklevel=2, + ) + if not data: + return + + if self._buffer_offset: + self._buffer[0] = self._buffer[0][self._buffer_offset :] + self._buffer_offset = 0 + self._size += len(data) + self._cursor -= len(data) + self._buffer.appendleft(data) + self._eof_counter = 0 + + # TODO: size is ignored, remove the param later + def feed_data(self, data: bytes, size: int = 0) -> None: + assert not self._eof, "feed_data after feed_eof" + + if not data: + return + + data_len = len(data) + self._size += data_len + self._buffer.append(data) + self.total_bytes += data_len + + waiter = self._waiter + if waiter is not None: + self._waiter = None + set_result(waiter, None) + + if self._size > self._high_water and not self._protocol._reading_paused: + self._protocol.pause_reading() + + def begin_http_chunk_receiving(self) -> None: + if self._http_chunk_splits is None: + if self.total_bytes: + raise RuntimeError( + "Called begin_http_chunk_receiving when some data was already fed" + ) + self._http_chunk_splits = collections.deque() + + def end_http_chunk_receiving(self) -> None: + if self._http_chunk_splits is None: + raise RuntimeError( + "Called end_chunk_receiving without calling " + "begin_chunk_receiving first" + ) + + # self._http_chunk_splits contains logical byte offsets from start of + # the body transfer. Each offset is the offset of the end of a chunk. + # "Logical" means bytes, accessible for a user. + # If no chunks containing logical data were received, current position + # is difinitely zero. + pos = self._http_chunk_splits[-1] if self._http_chunk_splits else 0 + + if self.total_bytes == pos: + # We should not add empty chunks here. So we check for that. + # Note, when chunked + gzip is used, we can receive a chunk + # of compressed data, but that data may not be enough for gzip FSM + # to yield any uncompressed data. That's why current position may + # not change after receiving a chunk. + return + + self._http_chunk_splits.append(self.total_bytes) + + # If we get too many small chunks before self._high_water is reached, then any + # .read() call becomes computationally expensive, and could block the event loop + # for too long, hence an additional self._high_water_chunks here. + if ( + len(self._http_chunk_splits) > self._high_water_chunks + and not self._protocol._reading_paused + ): + self._protocol.pause_reading() + + # wake up readchunk when end of http chunk received + waiter = self._waiter + if waiter is not None: + self._waiter = None + set_result(waiter, None) + + async def _wait(self, func_name: str) -> None: + if not self._protocol.connected: + raise RuntimeError("Connection closed.") + + # StreamReader uses a future to link the protocol feed_data() method + # to a read coroutine. Running two read coroutines at the same time + # would have an unexpected behaviour. It would not possible to know + # which coroutine would get the next data. + if self._waiter is not None: + raise RuntimeError( + "%s() called while another coroutine is " + "already waiting for incoming data" % func_name + ) + + waiter = self._waiter = self._loop.create_future() + try: + with self._timer: + await waiter + finally: + self._waiter = None + + async def readline(self, *, max_line_length: Optional[int] = None) -> bytes: + return await self.readuntil(max_size=max_line_length) + + async def readuntil( + self, separator: bytes = b"\n", *, max_size: Optional[int] = None + ) -> bytes: + seplen = len(separator) + if seplen == 0: + raise ValueError("Separator should be at least one-byte string") + + if self._exception is not None: + raise self._exception + + chunk = b"" + chunk_size = 0 + not_enough = True + max_size = max_size or self._high_water + + while not_enough: + while self._buffer and not_enough: + offset = self._buffer_offset + ichar = self._buffer[0].find(separator, offset) + 1 + # Read from current offset to found separator or to the end. + data = self._read_nowait_chunk( + ichar - offset + seplen - 1 if ichar else -1 + ) + chunk += data + chunk_size += len(data) + if ichar: + not_enough = False + + if chunk_size > max_size: + raise LineTooLong(chunk[:100] + b"...", max_size) + + if self._eof: + break + + if not_enough: + await self._wait("readuntil") + + return chunk + + async def read(self, n: int = -1) -> bytes: + if self._exception is not None: + raise self._exception + + # migration problem; with DataQueue you have to catch + # EofStream exception, so common way is to run payload.read() inside + # infinite loop. what can cause real infinite loop with StreamReader + # lets keep this code one major release. + if __debug__: + if self._eof and not self._buffer: + self._eof_counter = getattr(self, "_eof_counter", 0) + 1 + if self._eof_counter > 5: + internal_logger.warning( + "Multiple access to StreamReader in eof state, " + "might be infinite loop.", + stack_info=True, + ) + + if not n: + return b"" + + if n < 0: + # This used to just loop creating a new waiter hoping to + # collect everything in self._buffer, but that would + # deadlock if the subprocess sends more than self.limit + # bytes. So just call self.readany() until EOF. + blocks = [] + while True: + block = await self.readany() + if not block: + break + blocks.append(block) + return b"".join(blocks) + + # TODO: should be `if` instead of `while` + # because waiter maybe triggered on chunk end, + # without feeding any data + while not self._buffer and not self._eof: + await self._wait("read") + + return self._read_nowait(n) + + async def readany(self) -> bytes: + if self._exception is not None: + raise self._exception + + # TODO: should be `if` instead of `while` + # because waiter maybe triggered on chunk end, + # without feeding any data + while not self._buffer and not self._eof: + await self._wait("readany") + + return self._read_nowait(-1) + + async def readchunk(self) -> Tuple[bytes, bool]: + """Returns a tuple of (data, end_of_http_chunk). + + When chunked transfer + encoding is used, end_of_http_chunk is a boolean indicating if the end + of the data corresponds to the end of a HTTP chunk , otherwise it is + always False. + """ + while True: + if self._exception is not None: + raise self._exception + + while self._http_chunk_splits: + pos = self._http_chunk_splits.popleft() + if pos == self._cursor: + return (b"", True) + if pos > self._cursor: + return (self._read_nowait(pos - self._cursor), True) + internal_logger.warning( + "Skipping HTTP chunk end due to data " + "consumption beyond chunk boundary" + ) + + if self._buffer: + return (self._read_nowait_chunk(-1), False) + # return (self._read_nowait(-1), False) + + if self._eof: + # Special case for signifying EOF. + # (b'', True) is not a final return value actually. + return (b"", False) + + await self._wait("readchunk") + + async def readexactly(self, n: int) -> bytes: + if self._exception is not None: + raise self._exception + + blocks: List[bytes] = [] + while n > 0: + block = await self.read(n) + if not block: + partial = b"".join(blocks) + raise asyncio.IncompleteReadError(partial, len(partial) + n) + blocks.append(block) + n -= len(block) + + return b"".join(blocks) + + def read_nowait(self, n: int = -1) -> bytes: + # default was changed to be consistent with .read(-1) + # + # I believe the most users don't know about the method and + # they are not affected. + if self._exception is not None: + raise self._exception + + if self._waiter and not self._waiter.done(): + raise RuntimeError( + "Called while some coroutine is waiting for incoming data." + ) + + return self._read_nowait(n) + + def _read_nowait_chunk(self, n: int) -> bytes: + first_buffer = self._buffer[0] + offset = self._buffer_offset + if n != -1 and len(first_buffer) - offset > n: + data = first_buffer[offset : offset + n] + self._buffer_offset += n + + elif offset: + self._buffer.popleft() + data = first_buffer[offset:] + self._buffer_offset = 0 + + else: + data = self._buffer.popleft() + + data_len = len(data) + self._size -= data_len + self._cursor += data_len + + chunk_splits = self._http_chunk_splits + # Prevent memory leak: drop useless chunk splits + while chunk_splits and chunk_splits[0] < self._cursor: + chunk_splits.popleft() + + if ( + self._protocol._reading_paused + and self._size < self._low_water + and ( + self._http_chunk_splits is None + or len(self._http_chunk_splits) < self._low_water_chunks + ) + ): + self._protocol.resume_reading() + return data + + def _read_nowait(self, n: int) -> bytes: + """Read not more than n bytes, or whole buffer if n == -1""" + self._timer.assert_timeout() + + chunks = [] + while self._buffer: + chunk = self._read_nowait_chunk(n) + chunks.append(chunk) + if n != -1: + n -= len(chunk) + if n == 0: + break + + return b"".join(chunks) if chunks else b"" + + +class EmptyStreamReader(StreamReader): # lgtm [py/missing-call-to-init] + + __slots__ = ("_read_eof_chunk",) + + def __init__(self) -> None: + self._read_eof_chunk = False + self.total_bytes = 0 + + def __repr__(self) -> str: + return "<%s>" % self.__class__.__name__ + + def exception(self) -> Optional[BaseException]: + return None + + def set_exception( + self, + exc: BaseException, + exc_cause: BaseException = _EXC_SENTINEL, + ) -> None: + pass + + def on_eof(self, callback: Callable[[], None]) -> None: + try: + callback() + except Exception: + internal_logger.exception("Exception in eof callback") + + def feed_eof(self) -> None: + pass + + def is_eof(self) -> bool: + return True + + def at_eof(self) -> bool: + return True + + async def wait_eof(self) -> None: + return + + def feed_data(self, data: bytes, n: int = 0) -> None: + pass + + async def readline(self, *, max_line_length: Optional[int] = None) -> bytes: + return b"" + + async def read(self, n: int = -1) -> bytes: + return b"" + + # TODO add async def readuntil + + async def readany(self) -> bytes: + return b"" + + async def readchunk(self) -> Tuple[bytes, bool]: + if not self._read_eof_chunk: + self._read_eof_chunk = True + return (b"", False) + + return (b"", True) + + async def readexactly(self, n: int) -> bytes: + raise asyncio.IncompleteReadError(b"", n) + + def read_nowait(self, n: int = -1) -> bytes: + return b"" + + +EMPTY_PAYLOAD: Final[StreamReader] = EmptyStreamReader() + + +class DataQueue(Generic[_T]): + """DataQueue is a general-purpose blocking queue with one reader.""" + + def __init__(self, loop: asyncio.AbstractEventLoop) -> None: + self._loop = loop + self._eof = False + self._waiter: Optional[asyncio.Future[None]] = None + self._exception: Optional[BaseException] = None + self._buffer: Deque[Tuple[_T, int]] = collections.deque() + + def __len__(self) -> int: + return len(self._buffer) + + def is_eof(self) -> bool: + return self._eof + + def at_eof(self) -> bool: + return self._eof and not self._buffer + + def exception(self) -> Optional[BaseException]: + return self._exception + + def set_exception( + self, + exc: BaseException, + exc_cause: BaseException = _EXC_SENTINEL, + ) -> None: + self._eof = True + self._exception = exc + if (waiter := self._waiter) is not None: + self._waiter = None + set_exception(waiter, exc, exc_cause) + + def feed_data(self, data: _T, size: int = 0) -> None: + self._buffer.append((data, size)) + if (waiter := self._waiter) is not None: + self._waiter = None + set_result(waiter, None) + + def feed_eof(self) -> None: + self._eof = True + if (waiter := self._waiter) is not None: + self._waiter = None + set_result(waiter, None) + + async def read(self) -> _T: + if not self._buffer and not self._eof: + assert not self._waiter + self._waiter = self._loop.create_future() + try: + await self._waiter + except (asyncio.CancelledError, asyncio.TimeoutError): + self._waiter = None + raise + if self._buffer: + data, _ = self._buffer.popleft() + return data + if self._exception is not None: + raise self._exception + raise EofStream + + def __aiter__(self) -> AsyncStreamIterator[_T]: + return AsyncStreamIterator(self.read) + + +class FlowControlDataQueue(DataQueue[_T]): + """FlowControlDataQueue resumes and pauses an underlying stream. + + It is a destination for parsed data. + + This class is deprecated and will be removed in version 4.0. + """ + + def __init__( + self, protocol: BaseProtocol, limit: int, *, loop: asyncio.AbstractEventLoop + ) -> None: + super().__init__(loop=loop) + self._size = 0 + self._protocol = protocol + self._limit = limit * 2 + + def feed_data(self, data: _T, size: int = 0) -> None: + super().feed_data(data, size) + self._size += size + + if self._size > self._limit and not self._protocol._reading_paused: + self._protocol.pause_reading() + + async def read(self) -> _T: + if not self._buffer and not self._eof: + assert not self._waiter + self._waiter = self._loop.create_future() + try: + await self._waiter + except (asyncio.CancelledError, asyncio.TimeoutError): + self._waiter = None + raise + if self._buffer: + data, size = self._buffer.popleft() + self._size -= size + if self._size < self._limit and self._protocol._reading_paused: + self._protocol.resume_reading() + return data + if self._exception is not None: + raise self._exception + raise EofStream diff --git a/venv/lib/python3.9/site-packages/aiohttp/tcp_helpers.py b/venv/lib/python3.9/site-packages/aiohttp/tcp_helpers.py new file mode 100644 index 0000000..88b2442 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/tcp_helpers.py @@ -0,0 +1,37 @@ +"""Helper methods to tune a TCP connection""" + +import asyncio +import socket +from contextlib import suppress +from typing import Optional # noqa + +__all__ = ("tcp_keepalive", "tcp_nodelay") + + +if hasattr(socket, "SO_KEEPALIVE"): + + def tcp_keepalive(transport: asyncio.Transport) -> None: + sock = transport.get_extra_info("socket") + if sock is not None: + sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) + +else: + + def tcp_keepalive(transport: asyncio.Transport) -> None: # pragma: no cover + pass + + +def tcp_nodelay(transport: asyncio.Transport, value: bool) -> None: + sock = transport.get_extra_info("socket") + + if sock is None: + return + + if sock.family not in (socket.AF_INET, socket.AF_INET6): + return + + value = bool(value) + + # socket may be closed already, on windows OSError get raised + with suppress(OSError): + sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, value) diff --git a/venv/lib/python3.9/site-packages/aiohttp/test_utils.py b/venv/lib/python3.9/site-packages/aiohttp/test_utils.py new file mode 100644 index 0000000..34b77d4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/test_utils.py @@ -0,0 +1,777 @@ +"""Utilities shared by tests.""" + +import asyncio +import contextlib +import gc +import inspect +import ipaddress +import os +import socket +import sys +import warnings +from abc import ABC, abstractmethod +from types import TracebackType +from typing import ( + TYPE_CHECKING, + Any, + Callable, + Generic, + Iterator, + List, + Optional, + Type, + TypeVar, + cast, + overload, +) +from unittest import IsolatedAsyncioTestCase, mock + +from aiosignal import Signal +from multidict import CIMultiDict, CIMultiDictProxy +from yarl import URL + +import aiohttp +from aiohttp.client import ( + _RequestContextManager, + _RequestOptions, + _WSRequestContextManager, +) + +from . import ClientSession, hdrs +from .abc import AbstractCookieJar +from .client_reqrep import ClientResponse +from .client_ws import ClientWebSocketResponse +from .helpers import sentinel +from .http import HttpVersion, RawRequestMessage +from .streams import EMPTY_PAYLOAD, StreamReader +from .typedefs import StrOrURL +from .web import ( + Application, + AppRunner, + BaseRequest, + BaseRunner, + Request, + Server, + ServerRunner, + SockSite, + UrlMappingMatchInfo, +) +from .web_protocol import _RequestHandler + +if TYPE_CHECKING: + from ssl import SSLContext +else: + SSLContext = None + +if sys.version_info >= (3, 11) and TYPE_CHECKING: + from typing import Unpack + +if sys.version_info >= (3, 11): + from typing import Self +else: + Self = Any + +_ApplicationNone = TypeVar("_ApplicationNone", Application, None) +_Request = TypeVar("_Request", bound=BaseRequest) + +REUSE_ADDRESS = os.name == "posix" and sys.platform != "cygwin" + + +def get_unused_port_socket( + host: str, family: socket.AddressFamily = socket.AF_INET +) -> socket.socket: + return get_port_socket(host, 0, family) + + +def get_port_socket( + host: str, port: int, family: socket.AddressFamily +) -> socket.socket: + s = socket.socket(family, socket.SOCK_STREAM) + if REUSE_ADDRESS: + # Windows has different semantics for SO_REUSEADDR, + # so don't set it. Ref: + # https://docs.microsoft.com/en-us/windows/win32/winsock/using-so-reuseaddr-and-so-exclusiveaddruse + s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + s.bind((host, port)) + return s + + +def unused_port() -> int: + """Return a port that is unused on the current host.""" + with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: + s.bind(("127.0.0.1", 0)) + return cast(int, s.getsockname()[1]) + + +class BaseTestServer(ABC): + __test__ = False + + def __init__( + self, + *, + scheme: str = "", + loop: Optional[asyncio.AbstractEventLoop] = None, + host: str = "127.0.0.1", + port: Optional[int] = None, + skip_url_asserts: bool = False, + socket_factory: Callable[ + [str, int, socket.AddressFamily], socket.socket + ] = get_port_socket, + **kwargs: Any, + ) -> None: + self._loop = loop + self.runner: Optional[BaseRunner] = None + self._root: Optional[URL] = None + self.host = host + self.port = port + self._closed = False + self.scheme = scheme + self.skip_url_asserts = skip_url_asserts + self.socket_factory = socket_factory + + async def start_server( + self, loop: Optional[asyncio.AbstractEventLoop] = None, **kwargs: Any + ) -> None: + if self.runner: + return + self._loop = loop + self._ssl = kwargs.pop("ssl", None) + self.runner = await self._make_runner(handler_cancellation=True, **kwargs) + await self.runner.setup() + if not self.port: + self.port = 0 + absolute_host = self.host + try: + version = ipaddress.ip_address(self.host).version + except ValueError: + version = 4 + if version == 6: + absolute_host = f"[{self.host}]" + family = socket.AF_INET6 if version == 6 else socket.AF_INET + _sock = self.socket_factory(self.host, self.port, family) + self.host, self.port = _sock.getsockname()[:2] + site = SockSite(self.runner, sock=_sock, ssl_context=self._ssl) + await site.start() + server = site._server + assert server is not None + sockets = server.sockets # type: ignore[attr-defined] + assert sockets is not None + self.port = sockets[0].getsockname()[1] + if not self.scheme: + self.scheme = "https" if self._ssl else "http" + self._root = URL(f"{self.scheme}://{absolute_host}:{self.port}") + + @abstractmethod # pragma: no cover + async def _make_runner(self, **kwargs: Any) -> BaseRunner: + pass + + def make_url(self, path: StrOrURL) -> URL: + assert self._root is not None + url = URL(path) + if not self.skip_url_asserts: + assert not url.absolute + return self._root.join(url) + else: + return URL(str(self._root) + str(path)) + + @property + def started(self) -> bool: + return self.runner is not None + + @property + def closed(self) -> bool: + return self._closed + + @property + def handler(self) -> Server: + # for backward compatibility + # web.Server instance + runner = self.runner + assert runner is not None + assert runner.server is not None + return runner.server + + async def close(self) -> None: + """Close all fixtures created by the test client. + + After that point, the TestClient is no longer usable. + + This is an idempotent function: running close multiple times + will not have any additional effects. + + close is also run when the object is garbage collected, and on + exit when used as a context manager. + + """ + if self.started and not self.closed: + assert self.runner is not None + await self.runner.cleanup() + self._root = None + self.port = None + self._closed = True + + def __enter__(self) -> None: + raise TypeError("Use async with instead") + + def __exit__( + self, + exc_type: Optional[Type[BaseException]], + exc_value: Optional[BaseException], + traceback: Optional[TracebackType], + ) -> None: + # __exit__ should exist in pair with __enter__ but never executed + pass # pragma: no cover + + async def __aenter__(self) -> "BaseTestServer": + await self.start_server(loop=self._loop) + return self + + async def __aexit__( + self, + exc_type: Optional[Type[BaseException]], + exc_value: Optional[BaseException], + traceback: Optional[TracebackType], + ) -> None: + await self.close() + + +class TestServer(BaseTestServer): + def __init__( + self, + app: Application, + *, + scheme: str = "", + host: str = "127.0.0.1", + port: Optional[int] = None, + **kwargs: Any, + ): + self.app = app + super().__init__(scheme=scheme, host=host, port=port, **kwargs) + + async def _make_runner(self, **kwargs: Any) -> BaseRunner: + return AppRunner(self.app, **kwargs) + + +class RawTestServer(BaseTestServer): + def __init__( + self, + handler: _RequestHandler, + *, + scheme: str = "", + host: str = "127.0.0.1", + port: Optional[int] = None, + **kwargs: Any, + ) -> None: + self._handler = handler + super().__init__(scheme=scheme, host=host, port=port, **kwargs) + + async def _make_runner(self, debug: bool = True, **kwargs: Any) -> ServerRunner: + srv = Server(self._handler, loop=self._loop, debug=debug, **kwargs) + return ServerRunner(srv, debug=debug, **kwargs) + + +class TestClient(Generic[_Request, _ApplicationNone]): + """ + A test client implementation. + + To write functional tests for aiohttp based servers. + + """ + + __test__ = False + + @overload + def __init__( + self: "TestClient[Request, Application]", + server: TestServer, + *, + cookie_jar: Optional[AbstractCookieJar] = None, + **kwargs: Any, + ) -> None: ... + @overload + def __init__( + self: "TestClient[_Request, None]", + server: BaseTestServer, + *, + cookie_jar: Optional[AbstractCookieJar] = None, + **kwargs: Any, + ) -> None: ... + def __init__( + self, + server: BaseTestServer, + *, + cookie_jar: Optional[AbstractCookieJar] = None, + loop: Optional[asyncio.AbstractEventLoop] = None, + **kwargs: Any, + ) -> None: + if not isinstance(server, BaseTestServer): + raise TypeError( + "server must be TestServer instance, found type: %r" % type(server) + ) + self._server = server + self._loop = loop + if cookie_jar is None: + cookie_jar = aiohttp.CookieJar(unsafe=True, loop=loop) + self._session = ClientSession(loop=loop, cookie_jar=cookie_jar, **kwargs) + self._session._retry_connection = False + self._closed = False + self._responses: List[ClientResponse] = [] + self._websockets: List[ClientWebSocketResponse] = [] + + async def start_server(self) -> None: + await self._server.start_server(loop=self._loop) + + @property + def host(self) -> str: + return self._server.host + + @property + def port(self) -> Optional[int]: + return self._server.port + + @property + def server(self) -> BaseTestServer: + return self._server + + @property + def app(self) -> _ApplicationNone: + return getattr(self._server, "app", None) # type: ignore[return-value] + + @property + def session(self) -> ClientSession: + """An internal aiohttp.ClientSession. + + Unlike the methods on the TestClient, client session requests + do not automatically include the host in the url queried, and + will require an absolute path to the resource. + + """ + return self._session + + def make_url(self, path: StrOrURL) -> URL: + return self._server.make_url(path) + + async def _request( + self, method: str, path: StrOrURL, **kwargs: Any + ) -> ClientResponse: + resp = await self._session.request(method, self.make_url(path), **kwargs) + # save it to close later + self._responses.append(resp) + return resp + + if sys.version_info >= (3, 11) and TYPE_CHECKING: + + def request( + self, method: str, path: StrOrURL, **kwargs: Unpack[_RequestOptions] + ) -> _RequestContextManager: ... + + def get( + self, + path: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> _RequestContextManager: ... + + def options( + self, + path: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> _RequestContextManager: ... + + def head( + self, + path: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> _RequestContextManager: ... + + def post( + self, + path: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> _RequestContextManager: ... + + def put( + self, + path: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> _RequestContextManager: ... + + def patch( + self, + path: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> _RequestContextManager: ... + + def delete( + self, + path: StrOrURL, + **kwargs: Unpack[_RequestOptions], + ) -> _RequestContextManager: ... + + else: + + def request( + self, method: str, path: StrOrURL, **kwargs: Any + ) -> _RequestContextManager: + """Routes a request to tested http server. + + The interface is identical to aiohttp.ClientSession.request, + except the loop kwarg is overridden by the instance used by the + test server. + + """ + return _RequestContextManager(self._request(method, path, **kwargs)) + + def get(self, path: StrOrURL, **kwargs: Any) -> _RequestContextManager: + """Perform an HTTP GET request.""" + return _RequestContextManager(self._request(hdrs.METH_GET, path, **kwargs)) + + def post(self, path: StrOrURL, **kwargs: Any) -> _RequestContextManager: + """Perform an HTTP POST request.""" + return _RequestContextManager(self._request(hdrs.METH_POST, path, **kwargs)) + + def options(self, path: StrOrURL, **kwargs: Any) -> _RequestContextManager: + """Perform an HTTP OPTIONS request.""" + return _RequestContextManager( + self._request(hdrs.METH_OPTIONS, path, **kwargs) + ) + + def head(self, path: StrOrURL, **kwargs: Any) -> _RequestContextManager: + """Perform an HTTP HEAD request.""" + return _RequestContextManager(self._request(hdrs.METH_HEAD, path, **kwargs)) + + def put(self, path: StrOrURL, **kwargs: Any) -> _RequestContextManager: + """Perform an HTTP PUT request.""" + return _RequestContextManager(self._request(hdrs.METH_PUT, path, **kwargs)) + + def patch(self, path: StrOrURL, **kwargs: Any) -> _RequestContextManager: + """Perform an HTTP PATCH request.""" + return _RequestContextManager( + self._request(hdrs.METH_PATCH, path, **kwargs) + ) + + def delete(self, path: StrOrURL, **kwargs: Any) -> _RequestContextManager: + """Perform an HTTP PATCH request.""" + return _RequestContextManager( + self._request(hdrs.METH_DELETE, path, **kwargs) + ) + + def ws_connect(self, path: StrOrURL, **kwargs: Any) -> _WSRequestContextManager: + """Initiate websocket connection. + + The api corresponds to aiohttp.ClientSession.ws_connect. + + """ + return _WSRequestContextManager(self._ws_connect(path, **kwargs)) + + async def _ws_connect( + self, path: StrOrURL, **kwargs: Any + ) -> ClientWebSocketResponse: + ws = await self._session.ws_connect(self.make_url(path), **kwargs) + self._websockets.append(ws) + return ws + + async def close(self) -> None: + """Close all fixtures created by the test client. + + After that point, the TestClient is no longer usable. + + This is an idempotent function: running close multiple times + will not have any additional effects. + + close is also run on exit when used as a(n) (asynchronous) + context manager. + + """ + if not self._closed: + for resp in self._responses: + resp.close() + for ws in self._websockets: + await ws.close() + await self._session.close() + await self._server.close() + self._closed = True + + def __enter__(self) -> None: + raise TypeError("Use async with instead") + + def __exit__( + self, + exc_type: Optional[Type[BaseException]], + exc: Optional[BaseException], + tb: Optional[TracebackType], + ) -> None: + # __exit__ should exist in pair with __enter__ but never executed + pass # pragma: no cover + + async def __aenter__(self) -> Self: + await self.start_server() + return self + + async def __aexit__( + self, + exc_type: Optional[Type[BaseException]], + exc: Optional[BaseException], + tb: Optional[TracebackType], + ) -> None: + await self.close() + + +class AioHTTPTestCase(IsolatedAsyncioTestCase): + """A base class to allow for unittest web applications using aiohttp. + + Provides the following: + + * self.client (aiohttp.test_utils.TestClient): an aiohttp test client. + * self.loop (asyncio.BaseEventLoop): the event loop in which the + application and server are running. + * self.app (aiohttp.web.Application): the application returned by + self.get_application() + + Note that the TestClient's methods are asynchronous: you have to + execute function on the test client using asynchronous methods. + """ + + async def get_application(self) -> Application: + """Get application. + + This method should be overridden + to return the aiohttp.web.Application + object to test. + """ + return self.get_app() + + def get_app(self) -> Application: + """Obsolete method used to constructing web application. + + Use .get_application() coroutine instead. + """ + raise RuntimeError("Did you forget to define get_application()?") + + async def asyncSetUp(self) -> None: + self.loop = asyncio.get_running_loop() + return await self.setUpAsync() + + async def setUpAsync(self) -> None: + self.app = await self.get_application() + self.server = await self.get_server(self.app) + self.client = await self.get_client(self.server) + + await self.client.start_server() + + async def asyncTearDown(self) -> None: + return await self.tearDownAsync() + + async def tearDownAsync(self) -> None: + await self.client.close() + + async def get_server(self, app: Application) -> TestServer: + """Return a TestServer instance.""" + return TestServer(app, loop=self.loop) + + async def get_client(self, server: TestServer) -> TestClient[Request, Application]: + """Return a TestClient instance.""" + return TestClient(server, loop=self.loop) + + +def unittest_run_loop(func: Any, *args: Any, **kwargs: Any) -> Any: + """ + A decorator dedicated to use with asynchronous AioHTTPTestCase test methods. + + In 3.8+, this does nothing. + """ + warnings.warn( + "Decorator `@unittest_run_loop` is no longer needed in aiohttp 3.8+", + DeprecationWarning, + stacklevel=2, + ) + return func + + +_LOOP_FACTORY = Callable[[], asyncio.AbstractEventLoop] + + +@contextlib.contextmanager +def loop_context( + loop_factory: _LOOP_FACTORY = asyncio.new_event_loop, fast: bool = False +) -> Iterator[asyncio.AbstractEventLoop]: + """A contextmanager that creates an event_loop, for test purposes. + + Handles the creation and cleanup of a test loop. + """ + loop = setup_test_loop(loop_factory) + yield loop + teardown_test_loop(loop, fast=fast) + + +def setup_test_loop( + loop_factory: _LOOP_FACTORY = asyncio.new_event_loop, +) -> asyncio.AbstractEventLoop: + """Create and return an asyncio.BaseEventLoop instance. + + The caller should also call teardown_test_loop, + once they are done with the loop. + """ + loop = loop_factory() + asyncio.set_event_loop(loop) + return loop + + +def teardown_test_loop(loop: asyncio.AbstractEventLoop, fast: bool = False) -> None: + """Teardown and cleanup an event_loop created by setup_test_loop.""" + closed = loop.is_closed() + if not closed: + loop.call_soon(loop.stop) + loop.run_forever() + loop.close() + + if not fast: + gc.collect() + + asyncio.set_event_loop(None) + + +def _create_app_mock() -> mock.MagicMock: + def get_dict(app: Any, key: str) -> Any: + return app.__app_dict[key] + + def set_dict(app: Any, key: str, value: Any) -> None: + app.__app_dict[key] = value + + app = mock.MagicMock(spec=Application) + app.__app_dict = {} + app.__getitem__ = get_dict + app.__setitem__ = set_dict + + app._debug = False + app.on_response_prepare = Signal(app) + app.on_response_prepare.freeze() + return app + + +def _create_transport(sslcontext: Optional[SSLContext] = None) -> mock.Mock: + transport = mock.Mock() + + def get_extra_info(key: str) -> Optional[SSLContext]: + if key == "sslcontext": + return sslcontext + else: + return None + + transport.get_extra_info.side_effect = get_extra_info + return transport + + +def make_mocked_request( + method: str, + path: str, + headers: Any = None, + *, + match_info: Any = sentinel, + version: HttpVersion = HttpVersion(1, 1), + closing: bool = False, + app: Any = None, + writer: Any = sentinel, + protocol: Any = sentinel, + transport: Any = sentinel, + payload: StreamReader = EMPTY_PAYLOAD, + sslcontext: Optional[SSLContext] = None, + client_max_size: int = 1024**2, + loop: Any = ..., +) -> Request: + """Creates mocked web.Request testing purposes. + + Useful in unit tests, when spinning full web server is overkill or + specific conditions and errors are hard to trigger. + """ + task = mock.Mock() + if loop is ...: + # no loop passed, try to get the current one if + # its is running as we need a real loop to create + # executor jobs to be able to do testing + # with a real executor + try: + loop = asyncio.get_running_loop() + except RuntimeError: + loop = mock.Mock() + loop.create_future.return_value = () + + if version < HttpVersion(1, 1): + closing = True + + if headers: + headers = CIMultiDictProxy(CIMultiDict(headers)) + raw_hdrs = tuple( + (k.encode("utf-8"), v.encode("utf-8")) for k, v in headers.items() + ) + else: + headers = CIMultiDictProxy(CIMultiDict()) + raw_hdrs = () + + chunked = "chunked" in headers.get(hdrs.TRANSFER_ENCODING, "").lower() + + message = RawRequestMessage( + method, + path, + version, + headers, + raw_hdrs, + closing, + None, + False, + chunked, + URL(path), + ) + if app is None: + app = _create_app_mock() + + if transport is sentinel: + transport = _create_transport(sslcontext) + + if protocol is sentinel: + protocol = mock.Mock() + protocol.max_field_size = 8190 + protocol.max_line_length = 8190 + protocol.max_headers = 128 + protocol.transport = transport + type(protocol).peername = mock.PropertyMock( + return_value=transport.get_extra_info("peername") + ) + type(protocol).ssl_context = mock.PropertyMock(return_value=sslcontext) + + if writer is sentinel: + writer = mock.Mock() + writer.write_headers = make_mocked_coro(None) + writer.write = make_mocked_coro(None) + writer.write_eof = make_mocked_coro(None) + writer.drain = make_mocked_coro(None) + writer.transport = transport + + protocol.transport = transport + protocol.writer = writer + + req = Request( + message, payload, protocol, writer, task, loop, client_max_size=client_max_size + ) + + match_info = UrlMappingMatchInfo( + {} if match_info is sentinel else match_info, mock.Mock() + ) + match_info.add_app(app) + req._match_info = match_info + + return req + + +def make_mocked_coro( + return_value: Any = sentinel, raise_exception: Any = sentinel +) -> Any: + """Creates a coroutine mock.""" + + async def mock_coro(*args: Any, **kwargs: Any) -> Any: + if raise_exception is not sentinel: + raise raise_exception + if not inspect.isawaitable(return_value): + return return_value + await return_value + + return mock.Mock(wraps=mock_coro) diff --git a/venv/lib/python3.9/site-packages/aiohttp/tracing.py b/venv/lib/python3.9/site-packages/aiohttp/tracing.py new file mode 100644 index 0000000..568fa7f --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/tracing.py @@ -0,0 +1,455 @@ +from types import SimpleNamespace +from typing import TYPE_CHECKING, Mapping, Optional, Type, TypeVar + +import attr +from aiosignal import Signal +from multidict import CIMultiDict +from yarl import URL + +from .client_reqrep import ClientResponse + +if TYPE_CHECKING: + from .client import ClientSession + + _ParamT_contra = TypeVar("_ParamT_contra", contravariant=True) + _TracingSignal = Signal[ClientSession, SimpleNamespace, _ParamT_contra] + + +__all__ = ( + "TraceConfig", + "TraceRequestStartParams", + "TraceRequestEndParams", + "TraceRequestExceptionParams", + "TraceConnectionQueuedStartParams", + "TraceConnectionQueuedEndParams", + "TraceConnectionCreateStartParams", + "TraceConnectionCreateEndParams", + "TraceConnectionReuseconnParams", + "TraceDnsResolveHostStartParams", + "TraceDnsResolveHostEndParams", + "TraceDnsCacheHitParams", + "TraceDnsCacheMissParams", + "TraceRequestRedirectParams", + "TraceRequestChunkSentParams", + "TraceResponseChunkReceivedParams", + "TraceRequestHeadersSentParams", +) + + +class TraceConfig: + """First-class used to trace requests launched via ClientSession objects.""" + + def __init__( + self, trace_config_ctx_factory: Type[SimpleNamespace] = SimpleNamespace + ) -> None: + self._on_request_start: _TracingSignal[TraceRequestStartParams] = Signal(self) + self._on_request_chunk_sent: _TracingSignal[TraceRequestChunkSentParams] = ( + Signal(self) + ) + self._on_response_chunk_received: _TracingSignal[ + TraceResponseChunkReceivedParams + ] = Signal(self) + self._on_request_end: _TracingSignal[TraceRequestEndParams] = Signal(self) + self._on_request_exception: _TracingSignal[TraceRequestExceptionParams] = ( + Signal(self) + ) + self._on_request_redirect: _TracingSignal[TraceRequestRedirectParams] = Signal( + self + ) + self._on_connection_queued_start: _TracingSignal[ + TraceConnectionQueuedStartParams + ] = Signal(self) + self._on_connection_queued_end: _TracingSignal[ + TraceConnectionQueuedEndParams + ] = Signal(self) + self._on_connection_create_start: _TracingSignal[ + TraceConnectionCreateStartParams + ] = Signal(self) + self._on_connection_create_end: _TracingSignal[ + TraceConnectionCreateEndParams + ] = Signal(self) + self._on_connection_reuseconn: _TracingSignal[ + TraceConnectionReuseconnParams + ] = Signal(self) + self._on_dns_resolvehost_start: _TracingSignal[ + TraceDnsResolveHostStartParams + ] = Signal(self) + self._on_dns_resolvehost_end: _TracingSignal[TraceDnsResolveHostEndParams] = ( + Signal(self) + ) + self._on_dns_cache_hit: _TracingSignal[TraceDnsCacheHitParams] = Signal(self) + self._on_dns_cache_miss: _TracingSignal[TraceDnsCacheMissParams] = Signal(self) + self._on_request_headers_sent: _TracingSignal[TraceRequestHeadersSentParams] = ( + Signal(self) + ) + + self._trace_config_ctx_factory = trace_config_ctx_factory + + def trace_config_ctx( + self, trace_request_ctx: Optional[Mapping[str, str]] = None + ) -> SimpleNamespace: + """Return a new trace_config_ctx instance""" + return self._trace_config_ctx_factory(trace_request_ctx=trace_request_ctx) + + def freeze(self) -> None: + self._on_request_start.freeze() + self._on_request_chunk_sent.freeze() + self._on_response_chunk_received.freeze() + self._on_request_end.freeze() + self._on_request_exception.freeze() + self._on_request_redirect.freeze() + self._on_connection_queued_start.freeze() + self._on_connection_queued_end.freeze() + self._on_connection_create_start.freeze() + self._on_connection_create_end.freeze() + self._on_connection_reuseconn.freeze() + self._on_dns_resolvehost_start.freeze() + self._on_dns_resolvehost_end.freeze() + self._on_dns_cache_hit.freeze() + self._on_dns_cache_miss.freeze() + self._on_request_headers_sent.freeze() + + @property + def on_request_start(self) -> "_TracingSignal[TraceRequestStartParams]": + return self._on_request_start + + @property + def on_request_chunk_sent( + self, + ) -> "_TracingSignal[TraceRequestChunkSentParams]": + return self._on_request_chunk_sent + + @property + def on_response_chunk_received( + self, + ) -> "_TracingSignal[TraceResponseChunkReceivedParams]": + return self._on_response_chunk_received + + @property + def on_request_end(self) -> "_TracingSignal[TraceRequestEndParams]": + return self._on_request_end + + @property + def on_request_exception( + self, + ) -> "_TracingSignal[TraceRequestExceptionParams]": + return self._on_request_exception + + @property + def on_request_redirect( + self, + ) -> "_TracingSignal[TraceRequestRedirectParams]": + return self._on_request_redirect + + @property + def on_connection_queued_start( + self, + ) -> "_TracingSignal[TraceConnectionQueuedStartParams]": + return self._on_connection_queued_start + + @property + def on_connection_queued_end( + self, + ) -> "_TracingSignal[TraceConnectionQueuedEndParams]": + return self._on_connection_queued_end + + @property + def on_connection_create_start( + self, + ) -> "_TracingSignal[TraceConnectionCreateStartParams]": + return self._on_connection_create_start + + @property + def on_connection_create_end( + self, + ) -> "_TracingSignal[TraceConnectionCreateEndParams]": + return self._on_connection_create_end + + @property + def on_connection_reuseconn( + self, + ) -> "_TracingSignal[TraceConnectionReuseconnParams]": + return self._on_connection_reuseconn + + @property + def on_dns_resolvehost_start( + self, + ) -> "_TracingSignal[TraceDnsResolveHostStartParams]": + return self._on_dns_resolvehost_start + + @property + def on_dns_resolvehost_end( + self, + ) -> "_TracingSignal[TraceDnsResolveHostEndParams]": + return self._on_dns_resolvehost_end + + @property + def on_dns_cache_hit(self) -> "_TracingSignal[TraceDnsCacheHitParams]": + return self._on_dns_cache_hit + + @property + def on_dns_cache_miss(self) -> "_TracingSignal[TraceDnsCacheMissParams]": + return self._on_dns_cache_miss + + @property + def on_request_headers_sent( + self, + ) -> "_TracingSignal[TraceRequestHeadersSentParams]": + return self._on_request_headers_sent + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceRequestStartParams: + """Parameters sent by the `on_request_start` signal""" + + method: str + url: URL + headers: "CIMultiDict[str]" + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceRequestChunkSentParams: + """Parameters sent by the `on_request_chunk_sent` signal""" + + method: str + url: URL + chunk: bytes + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceResponseChunkReceivedParams: + """Parameters sent by the `on_response_chunk_received` signal""" + + method: str + url: URL + chunk: bytes + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceRequestEndParams: + """Parameters sent by the `on_request_end` signal""" + + method: str + url: URL + headers: "CIMultiDict[str]" + response: ClientResponse + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceRequestExceptionParams: + """Parameters sent by the `on_request_exception` signal""" + + method: str + url: URL + headers: "CIMultiDict[str]" + exception: BaseException + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceRequestRedirectParams: + """Parameters sent by the `on_request_redirect` signal""" + + method: str + url: URL + headers: "CIMultiDict[str]" + response: ClientResponse + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceConnectionQueuedStartParams: + """Parameters sent by the `on_connection_queued_start` signal""" + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceConnectionQueuedEndParams: + """Parameters sent by the `on_connection_queued_end` signal""" + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceConnectionCreateStartParams: + """Parameters sent by the `on_connection_create_start` signal""" + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceConnectionCreateEndParams: + """Parameters sent by the `on_connection_create_end` signal""" + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceConnectionReuseconnParams: + """Parameters sent by the `on_connection_reuseconn` signal""" + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceDnsResolveHostStartParams: + """Parameters sent by the `on_dns_resolvehost_start` signal""" + + host: str + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceDnsResolveHostEndParams: + """Parameters sent by the `on_dns_resolvehost_end` signal""" + + host: str + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceDnsCacheHitParams: + """Parameters sent by the `on_dns_cache_hit` signal""" + + host: str + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceDnsCacheMissParams: + """Parameters sent by the `on_dns_cache_miss` signal""" + + host: str + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class TraceRequestHeadersSentParams: + """Parameters sent by the `on_request_headers_sent` signal""" + + method: str + url: URL + headers: "CIMultiDict[str]" + + +class Trace: + """Internal dependency holder class. + + Used to keep together the main dependencies used + at the moment of send a signal. + """ + + def __init__( + self, + session: "ClientSession", + trace_config: TraceConfig, + trace_config_ctx: SimpleNamespace, + ) -> None: + self._trace_config = trace_config + self._trace_config_ctx = trace_config_ctx + self._session = session + + async def send_request_start( + self, method: str, url: URL, headers: "CIMultiDict[str]" + ) -> None: + return await self._trace_config.on_request_start.send( + self._session, + self._trace_config_ctx, + TraceRequestStartParams(method, url, headers), + ) + + async def send_request_chunk_sent( + self, method: str, url: URL, chunk: bytes + ) -> None: + return await self._trace_config.on_request_chunk_sent.send( + self._session, + self._trace_config_ctx, + TraceRequestChunkSentParams(method, url, chunk), + ) + + async def send_response_chunk_received( + self, method: str, url: URL, chunk: bytes + ) -> None: + return await self._trace_config.on_response_chunk_received.send( + self._session, + self._trace_config_ctx, + TraceResponseChunkReceivedParams(method, url, chunk), + ) + + async def send_request_end( + self, + method: str, + url: URL, + headers: "CIMultiDict[str]", + response: ClientResponse, + ) -> None: + return await self._trace_config.on_request_end.send( + self._session, + self._trace_config_ctx, + TraceRequestEndParams(method, url, headers, response), + ) + + async def send_request_exception( + self, + method: str, + url: URL, + headers: "CIMultiDict[str]", + exception: BaseException, + ) -> None: + return await self._trace_config.on_request_exception.send( + self._session, + self._trace_config_ctx, + TraceRequestExceptionParams(method, url, headers, exception), + ) + + async def send_request_redirect( + self, + method: str, + url: URL, + headers: "CIMultiDict[str]", + response: ClientResponse, + ) -> None: + return await self._trace_config._on_request_redirect.send( + self._session, + self._trace_config_ctx, + TraceRequestRedirectParams(method, url, headers, response), + ) + + async def send_connection_queued_start(self) -> None: + return await self._trace_config.on_connection_queued_start.send( + self._session, self._trace_config_ctx, TraceConnectionQueuedStartParams() + ) + + async def send_connection_queued_end(self) -> None: + return await self._trace_config.on_connection_queued_end.send( + self._session, self._trace_config_ctx, TraceConnectionQueuedEndParams() + ) + + async def send_connection_create_start(self) -> None: + return await self._trace_config.on_connection_create_start.send( + self._session, self._trace_config_ctx, TraceConnectionCreateStartParams() + ) + + async def send_connection_create_end(self) -> None: + return await self._trace_config.on_connection_create_end.send( + self._session, self._trace_config_ctx, TraceConnectionCreateEndParams() + ) + + async def send_connection_reuseconn(self) -> None: + return await self._trace_config.on_connection_reuseconn.send( + self._session, self._trace_config_ctx, TraceConnectionReuseconnParams() + ) + + async def send_dns_resolvehost_start(self, host: str) -> None: + return await self._trace_config.on_dns_resolvehost_start.send( + self._session, self._trace_config_ctx, TraceDnsResolveHostStartParams(host) + ) + + async def send_dns_resolvehost_end(self, host: str) -> None: + return await self._trace_config.on_dns_resolvehost_end.send( + self._session, self._trace_config_ctx, TraceDnsResolveHostEndParams(host) + ) + + async def send_dns_cache_hit(self, host: str) -> None: + return await self._trace_config.on_dns_cache_hit.send( + self._session, self._trace_config_ctx, TraceDnsCacheHitParams(host) + ) + + async def send_dns_cache_miss(self, host: str) -> None: + return await self._trace_config.on_dns_cache_miss.send( + self._session, self._trace_config_ctx, TraceDnsCacheMissParams(host) + ) + + async def send_request_headers( + self, method: str, url: URL, headers: "CIMultiDict[str]" + ) -> None: + return await self._trace_config._on_request_headers_sent.send( + self._session, + self._trace_config_ctx, + TraceRequestHeadersSentParams(method, url, headers), + ) diff --git a/venv/lib/python3.9/site-packages/aiohttp/typedefs.py b/venv/lib/python3.9/site-packages/aiohttp/typedefs.py new file mode 100644 index 0000000..cc8c082 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/typedefs.py @@ -0,0 +1,69 @@ +import json +import os +from typing import ( + TYPE_CHECKING, + Any, + Awaitable, + Callable, + Iterable, + Mapping, + Protocol, + Tuple, + Union, +) + +from multidict import CIMultiDict, CIMultiDictProxy, MultiDict, MultiDictProxy, istr +from yarl import URL, Query as _Query + +Query = _Query + +DEFAULT_JSON_ENCODER = json.dumps +DEFAULT_JSON_DECODER = json.loads + +if TYPE_CHECKING: + _CIMultiDict = CIMultiDict[str] + _CIMultiDictProxy = CIMultiDictProxy[str] + _MultiDict = MultiDict[str] + _MultiDictProxy = MultiDictProxy[str] + from http.cookies import BaseCookie, Morsel + + from .web import Request, StreamResponse +else: + _CIMultiDict = CIMultiDict + _CIMultiDictProxy = CIMultiDictProxy + _MultiDict = MultiDict + _MultiDictProxy = MultiDictProxy + +Byteish = Union[bytes, bytearray, memoryview] +JSONEncoder = Callable[[Any], str] +JSONDecoder = Callable[[str], Any] +LooseHeaders = Union[ + Mapping[str, str], + Mapping[istr, str], + _CIMultiDict, + _CIMultiDictProxy, + Iterable[Tuple[Union[str, istr], str]], +] +RawHeaders = Tuple[Tuple[bytes, bytes], ...] +StrOrURL = Union[str, URL] + +LooseCookiesMappings = Mapping[str, Union[str, "BaseCookie[str]", "Morsel[Any]"]] +LooseCookiesIterables = Iterable[ + Tuple[str, Union[str, "BaseCookie[str]", "Morsel[Any]"]] +] +LooseCookies = Union[ + LooseCookiesMappings, + LooseCookiesIterables, + "BaseCookie[str]", +] + +Handler = Callable[["Request"], Awaitable["StreamResponse"]] + + +class Middleware(Protocol): + def __call__( + self, request: "Request", handler: Handler + ) -> Awaitable["StreamResponse"]: ... + + +PathLike = Union[str, "os.PathLike[str]"] diff --git a/venv/lib/python3.9/site-packages/aiohttp/web.py b/venv/lib/python3.9/site-packages/aiohttp/web.py new file mode 100644 index 0000000..5a1fc96 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web.py @@ -0,0 +1,592 @@ +import asyncio +import logging +import os +import socket +import sys +import warnings +from argparse import ArgumentParser +from collections.abc import Iterable +from contextlib import suppress +from importlib import import_module +from typing import ( + TYPE_CHECKING, + Any, + Awaitable, + Callable, + Iterable as TypingIterable, + List, + Optional, + Set, + Type, + Union, + cast, +) + +from .abc import AbstractAccessLogger +from .helpers import AppKey as AppKey +from .log import access_logger +from .typedefs import PathLike +from .web_app import Application as Application, CleanupError as CleanupError +from .web_exceptions import ( + HTTPAccepted as HTTPAccepted, + HTTPBadGateway as HTTPBadGateway, + HTTPBadRequest as HTTPBadRequest, + HTTPClientError as HTTPClientError, + HTTPConflict as HTTPConflict, + HTTPCreated as HTTPCreated, + HTTPError as HTTPError, + HTTPException as HTTPException, + HTTPExpectationFailed as HTTPExpectationFailed, + HTTPFailedDependency as HTTPFailedDependency, + HTTPForbidden as HTTPForbidden, + HTTPFound as HTTPFound, + HTTPGatewayTimeout as HTTPGatewayTimeout, + HTTPGone as HTTPGone, + HTTPInsufficientStorage as HTTPInsufficientStorage, + HTTPInternalServerError as HTTPInternalServerError, + HTTPLengthRequired as HTTPLengthRequired, + HTTPMethodNotAllowed as HTTPMethodNotAllowed, + HTTPMisdirectedRequest as HTTPMisdirectedRequest, + HTTPMove as HTTPMove, + HTTPMovedPermanently as HTTPMovedPermanently, + HTTPMultipleChoices as HTTPMultipleChoices, + HTTPNetworkAuthenticationRequired as HTTPNetworkAuthenticationRequired, + HTTPNoContent as HTTPNoContent, + HTTPNonAuthoritativeInformation as HTTPNonAuthoritativeInformation, + HTTPNotAcceptable as HTTPNotAcceptable, + HTTPNotExtended as HTTPNotExtended, + HTTPNotFound as HTTPNotFound, + HTTPNotImplemented as HTTPNotImplemented, + HTTPNotModified as HTTPNotModified, + HTTPOk as HTTPOk, + HTTPPartialContent as HTTPPartialContent, + HTTPPaymentRequired as HTTPPaymentRequired, + HTTPPermanentRedirect as HTTPPermanentRedirect, + HTTPPreconditionFailed as HTTPPreconditionFailed, + HTTPPreconditionRequired as HTTPPreconditionRequired, + HTTPProxyAuthenticationRequired as HTTPProxyAuthenticationRequired, + HTTPRedirection as HTTPRedirection, + HTTPRequestEntityTooLarge as HTTPRequestEntityTooLarge, + HTTPRequestHeaderFieldsTooLarge as HTTPRequestHeaderFieldsTooLarge, + HTTPRequestRangeNotSatisfiable as HTTPRequestRangeNotSatisfiable, + HTTPRequestTimeout as HTTPRequestTimeout, + HTTPRequestURITooLong as HTTPRequestURITooLong, + HTTPResetContent as HTTPResetContent, + HTTPSeeOther as HTTPSeeOther, + HTTPServerError as HTTPServerError, + HTTPServiceUnavailable as HTTPServiceUnavailable, + HTTPSuccessful as HTTPSuccessful, + HTTPTemporaryRedirect as HTTPTemporaryRedirect, + HTTPTooManyRequests as HTTPTooManyRequests, + HTTPUnauthorized as HTTPUnauthorized, + HTTPUnavailableForLegalReasons as HTTPUnavailableForLegalReasons, + HTTPUnprocessableEntity as HTTPUnprocessableEntity, + HTTPUnsupportedMediaType as HTTPUnsupportedMediaType, + HTTPUpgradeRequired as HTTPUpgradeRequired, + HTTPUseProxy as HTTPUseProxy, + HTTPVariantAlsoNegotiates as HTTPVariantAlsoNegotiates, + HTTPVersionNotSupported as HTTPVersionNotSupported, + NotAppKeyWarning as NotAppKeyWarning, +) +from .web_fileresponse import FileResponse as FileResponse +from .web_log import AccessLogger +from .web_middlewares import ( + middleware as middleware, + normalize_path_middleware as normalize_path_middleware, +) +from .web_protocol import ( + PayloadAccessError as PayloadAccessError, + RequestHandler as RequestHandler, + RequestPayloadError as RequestPayloadError, +) +from .web_request import ( + BaseRequest as BaseRequest, + FileField as FileField, + Request as Request, +) +from .web_response import ( + ContentCoding as ContentCoding, + Response as Response, + StreamResponse as StreamResponse, + json_response as json_response, +) +from .web_routedef import ( + AbstractRouteDef as AbstractRouteDef, + RouteDef as RouteDef, + RouteTableDef as RouteTableDef, + StaticDef as StaticDef, + delete as delete, + get as get, + head as head, + options as options, + patch as patch, + post as post, + put as put, + route as route, + static as static, + view as view, +) +from .web_runner import ( + AppRunner as AppRunner, + BaseRunner as BaseRunner, + BaseSite as BaseSite, + GracefulExit as GracefulExit, + NamedPipeSite as NamedPipeSite, + ServerRunner as ServerRunner, + SockSite as SockSite, + TCPSite as TCPSite, + UnixSite as UnixSite, +) +from .web_server import Server as Server +from .web_urldispatcher import ( + AbstractResource as AbstractResource, + AbstractRoute as AbstractRoute, + DynamicResource as DynamicResource, + PlainResource as PlainResource, + PrefixedSubAppResource as PrefixedSubAppResource, + Resource as Resource, + ResourceRoute as ResourceRoute, + StaticResource as StaticResource, + UrlDispatcher as UrlDispatcher, + UrlMappingMatchInfo as UrlMappingMatchInfo, + View as View, +) +from .web_ws import ( + WebSocketReady as WebSocketReady, + WebSocketResponse as WebSocketResponse, + WSMsgType as WSMsgType, +) + +__all__ = ( + # web_app + "AppKey", + "Application", + "CleanupError", + # web_exceptions + "NotAppKeyWarning", + "HTTPAccepted", + "HTTPBadGateway", + "HTTPBadRequest", + "HTTPClientError", + "HTTPConflict", + "HTTPCreated", + "HTTPError", + "HTTPException", + "HTTPExpectationFailed", + "HTTPFailedDependency", + "HTTPForbidden", + "HTTPFound", + "HTTPGatewayTimeout", + "HTTPGone", + "HTTPInsufficientStorage", + "HTTPInternalServerError", + "HTTPLengthRequired", + "HTTPMethodNotAllowed", + "HTTPMisdirectedRequest", + "HTTPMove", + "HTTPMovedPermanently", + "HTTPMultipleChoices", + "HTTPNetworkAuthenticationRequired", + "HTTPNoContent", + "HTTPNonAuthoritativeInformation", + "HTTPNotAcceptable", + "HTTPNotExtended", + "HTTPNotFound", + "HTTPNotImplemented", + "HTTPNotModified", + "HTTPOk", + "HTTPPartialContent", + "HTTPPaymentRequired", + "HTTPPermanentRedirect", + "HTTPPreconditionFailed", + "HTTPPreconditionRequired", + "HTTPProxyAuthenticationRequired", + "HTTPRedirection", + "HTTPRequestEntityTooLarge", + "HTTPRequestHeaderFieldsTooLarge", + "HTTPRequestRangeNotSatisfiable", + "HTTPRequestTimeout", + "HTTPRequestURITooLong", + "HTTPResetContent", + "HTTPSeeOther", + "HTTPServerError", + "HTTPServiceUnavailable", + "HTTPSuccessful", + "HTTPTemporaryRedirect", + "HTTPTooManyRequests", + "HTTPUnauthorized", + "HTTPUnavailableForLegalReasons", + "HTTPUnprocessableEntity", + "HTTPUnsupportedMediaType", + "HTTPUpgradeRequired", + "HTTPUseProxy", + "HTTPVariantAlsoNegotiates", + "HTTPVersionNotSupported", + # web_fileresponse + "FileResponse", + # web_middlewares + "middleware", + "normalize_path_middleware", + # web_protocol + "PayloadAccessError", + "RequestHandler", + "RequestPayloadError", + # web_request + "BaseRequest", + "FileField", + "Request", + # web_response + "ContentCoding", + "Response", + "StreamResponse", + "json_response", + # web_routedef + "AbstractRouteDef", + "RouteDef", + "RouteTableDef", + "StaticDef", + "delete", + "get", + "head", + "options", + "patch", + "post", + "put", + "route", + "static", + "view", + # web_runner + "AppRunner", + "BaseRunner", + "BaseSite", + "GracefulExit", + "ServerRunner", + "SockSite", + "TCPSite", + "UnixSite", + "NamedPipeSite", + # web_server + "Server", + # web_urldispatcher + "AbstractResource", + "AbstractRoute", + "DynamicResource", + "PlainResource", + "PrefixedSubAppResource", + "Resource", + "ResourceRoute", + "StaticResource", + "UrlDispatcher", + "UrlMappingMatchInfo", + "View", + # web_ws + "WebSocketReady", + "WebSocketResponse", + "WSMsgType", + # web + "run_app", +) + + +if TYPE_CHECKING: + from ssl import SSLContext +else: + try: + from ssl import SSLContext + except ImportError: # pragma: no cover + SSLContext = object # type: ignore[misc,assignment] + +# Only display warning when using -Wdefault, -We, -X dev or similar. +warnings.filterwarnings("ignore", category=NotAppKeyWarning, append=True) + +HostSequence = TypingIterable[str] + + +async def _run_app( + app: Union[Application, Awaitable[Application]], + *, + host: Optional[Union[str, HostSequence]] = None, + port: Optional[int] = None, + path: Union[PathLike, TypingIterable[PathLike], None] = None, + sock: Optional[Union[socket.socket, TypingIterable[socket.socket]]] = None, + ssl_context: Optional[SSLContext] = None, + print: Optional[Callable[..., None]] = print, + backlog: int = 128, + reuse_address: Optional[bool] = None, + reuse_port: Optional[bool] = None, + **kwargs: Any, # TODO(PY311): Use Unpack +) -> None: + # An internal function to actually do all dirty job for application running + if asyncio.iscoroutine(app): + app = await app + + app = cast(Application, app) + + runner = AppRunner(app, **kwargs) + + await runner.setup() + + sites: List[BaseSite] = [] + + try: + if host is not None: + if isinstance(host, str): + sites.append( + TCPSite( + runner, + host, + port, + ssl_context=ssl_context, + backlog=backlog, + reuse_address=reuse_address, + reuse_port=reuse_port, + ) + ) + else: + for h in host: + sites.append( + TCPSite( + runner, + h, + port, + ssl_context=ssl_context, + backlog=backlog, + reuse_address=reuse_address, + reuse_port=reuse_port, + ) + ) + elif path is None and sock is None or port is not None: + sites.append( + TCPSite( + runner, + port=port, + ssl_context=ssl_context, + backlog=backlog, + reuse_address=reuse_address, + reuse_port=reuse_port, + ) + ) + + if path is not None: + if isinstance(path, (str, os.PathLike)): + sites.append( + UnixSite( + runner, + path, + ssl_context=ssl_context, + backlog=backlog, + ) + ) + else: + for p in path: + sites.append( + UnixSite( + runner, + p, + ssl_context=ssl_context, + backlog=backlog, + ) + ) + + if sock is not None: + if not isinstance(sock, Iterable): + sites.append( + SockSite( + runner, + sock, + ssl_context=ssl_context, + backlog=backlog, + ) + ) + else: + for s in sock: + sites.append( + SockSite( + runner, + s, + ssl_context=ssl_context, + backlog=backlog, + ) + ) + for site in sites: + await site.start() + + if print: # pragma: no branch + names = sorted(str(s.name) for s in runner.sites) + print( + "======== Running on {} ========\n" + "(Press CTRL+C to quit)".format(", ".join(names)) + ) + + # sleep forever by 1 hour intervals, + while True: + await asyncio.sleep(3600) + finally: + await runner.cleanup() + + +def _cancel_tasks( + to_cancel: Set["asyncio.Task[Any]"], loop: asyncio.AbstractEventLoop +) -> None: + if not to_cancel: + return + + for task in to_cancel: + task.cancel() + + loop.run_until_complete(asyncio.gather(*to_cancel, return_exceptions=True)) + + for task in to_cancel: + if task.cancelled(): + continue + if task.exception() is not None: + loop.call_exception_handler( + { + "message": "unhandled exception during asyncio.run() shutdown", + "exception": task.exception(), + "task": task, + } + ) + + +def run_app( + app: Union[Application, Awaitable[Application]], + *, + host: Optional[Union[str, HostSequence]] = None, + port: Optional[int] = None, + path: Union[PathLike, TypingIterable[PathLike], None] = None, + sock: Optional[Union[socket.socket, TypingIterable[socket.socket]]] = None, + shutdown_timeout: float = 60.0, + keepalive_timeout: float = 75.0, + ssl_context: Optional[SSLContext] = None, + print: Optional[Callable[..., None]] = print, + backlog: int = 128, + access_log_class: Type[AbstractAccessLogger] = AccessLogger, + access_log_format: str = AccessLogger.LOG_FORMAT, + access_log: Optional[logging.Logger] = access_logger, + handle_signals: bool = True, + reuse_address: Optional[bool] = None, + reuse_port: Optional[bool] = None, + handler_cancellation: bool = False, + loop: Optional[asyncio.AbstractEventLoop] = None, + **kwargs: Any, +) -> None: + """Run an app locally""" + if loop is None: + loop = asyncio.new_event_loop() + + # Configure if and only if in debugging mode and using the default logger + if loop.get_debug() and access_log and access_log.name == "aiohttp.access": + if access_log.level == logging.NOTSET: + access_log.setLevel(logging.DEBUG) + if not access_log.hasHandlers(): + access_log.addHandler(logging.StreamHandler()) + + main_task = loop.create_task( + _run_app( + app, + host=host, + port=port, + path=path, + sock=sock, + shutdown_timeout=shutdown_timeout, + keepalive_timeout=keepalive_timeout, + ssl_context=ssl_context, + print=print, + backlog=backlog, + access_log_class=access_log_class, + access_log_format=access_log_format, + access_log=access_log, + handle_signals=handle_signals, + reuse_address=reuse_address, + reuse_port=reuse_port, + handler_cancellation=handler_cancellation, + **kwargs, + ) + ) + + try: + asyncio.set_event_loop(loop) + loop.run_until_complete(main_task) + except (GracefulExit, KeyboardInterrupt): # pragma: no cover + pass + finally: + try: + main_task.cancel() + with suppress(asyncio.CancelledError): + loop.run_until_complete(main_task) + finally: + _cancel_tasks(asyncio.all_tasks(loop), loop) + loop.run_until_complete(loop.shutdown_asyncgens()) + loop.close() + + +def main(argv: List[str]) -> None: + arg_parser = ArgumentParser( + description="aiohttp.web Application server", prog="aiohttp.web" + ) + arg_parser.add_argument( + "entry_func", + help=( + "Callable returning the `aiohttp.web.Application` instance to " + "run. Should be specified in the 'module:function' syntax." + ), + metavar="entry-func", + ) + arg_parser.add_argument( + "-H", + "--hostname", + help="TCP/IP hostname to serve on (default: localhost)", + default=None, + ) + arg_parser.add_argument( + "-P", + "--port", + help="TCP/IP port to serve on (default: %(default)r)", + type=int, + default=8080, + ) + arg_parser.add_argument( + "-U", + "--path", + help="Unix file system path to serve on. Can be combined with hostname " + "to serve on both Unix and TCP.", + ) + args, extra_argv = arg_parser.parse_known_args(argv) + + # Import logic + mod_str, _, func_str = args.entry_func.partition(":") + if not func_str or not mod_str: + arg_parser.error("'entry-func' not in 'module:function' syntax") + if mod_str.startswith("."): + arg_parser.error("relative module names not supported") + try: + module = import_module(mod_str) + except ImportError as ex: + arg_parser.error(f"unable to import {mod_str}: {ex}") + try: + func = getattr(module, func_str) + except AttributeError: + arg_parser.error(f"module {mod_str!r} has no attribute {func_str!r}") + + # Compatibility logic + if args.path is not None and not hasattr(socket, "AF_UNIX"): + arg_parser.error( + "file system paths not supported by your operating environment" + ) + + logging.basicConfig(level=logging.DEBUG) + + if args.path and args.hostname is None: + host = port = None + else: + host = args.hostname or "localhost" + port = args.port + + app = func(extra_argv) + run_app(app, host=host, port=port, path=args.path) + arg_parser.exit(message="Stopped\n") + + +if __name__ == "__main__": # pragma: no branch + main(sys.argv[1:]) # pragma: no cover diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_app.py b/venv/lib/python3.9/site-packages/aiohttp/web_app.py new file mode 100644 index 0000000..619c008 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_app.py @@ -0,0 +1,620 @@ +import asyncio +import logging +import warnings +from functools import lru_cache, partial, update_wrapper +from typing import ( + TYPE_CHECKING, + Any, + AsyncIterator, + Awaitable, + Callable, + Dict, + Iterable, + Iterator, + List, + Mapping, + MutableMapping, + Optional, + Sequence, + Tuple, + Type, + TypeVar, + Union, + cast, + overload, +) + +from aiosignal import Signal +from frozenlist import FrozenList + +from . import hdrs +from .abc import ( + AbstractAccessLogger, + AbstractMatchInfo, + AbstractRouter, + AbstractStreamWriter, +) +from .helpers import DEBUG, AppKey +from .http_parser import RawRequestMessage +from .log import web_logger +from .streams import StreamReader +from .typedefs import Handler, Middleware +from .web_exceptions import NotAppKeyWarning +from .web_log import AccessLogger +from .web_middlewares import _fix_request_current_app +from .web_protocol import RequestHandler +from .web_request import Request +from .web_response import StreamResponse +from .web_routedef import AbstractRouteDef +from .web_server import Server +from .web_urldispatcher import ( + AbstractResource, + AbstractRoute, + Domain, + MaskDomain, + MatchedSubAppResource, + PrefixedSubAppResource, + SystemRoute, + UrlDispatcher, +) + +__all__ = ("Application", "CleanupError") + + +if TYPE_CHECKING: + _AppSignal = Signal["Application"] + _RespPrepareSignal = Signal[Request, StreamResponse] + _Middlewares = FrozenList[Middleware] + _MiddlewaresHandlers = Optional[Sequence[Tuple[Middleware, bool]]] + _Subapps = List["Application"] +else: + # No type checker mode, skip types + _AppSignal = Signal + _RespPrepareSignal = Signal + _Middlewares = FrozenList + _MiddlewaresHandlers = Optional[Sequence] + _Subapps = List + +_T = TypeVar("_T") +_U = TypeVar("_U") +_Resource = TypeVar("_Resource", bound=AbstractResource) + + +def _build_middlewares( + handler: Handler, apps: Tuple["Application", ...] +) -> Callable[[Request], Awaitable[StreamResponse]]: + """Apply middlewares to handler.""" + for app in apps[::-1]: + for m, _ in app._middlewares_handlers: # type: ignore[union-attr] + handler = update_wrapper(partial(m, handler=handler), handler) + return handler + + +_cached_build_middleware = lru_cache(maxsize=1024)(_build_middlewares) + + +class Application(MutableMapping[Union[str, AppKey[Any]], Any]): + ATTRS = frozenset( + [ + "logger", + "_debug", + "_router", + "_loop", + "_handler_args", + "_middlewares", + "_middlewares_handlers", + "_has_legacy_middlewares", + "_run_middlewares", + "_state", + "_frozen", + "_pre_frozen", + "_subapps", + "_on_response_prepare", + "_on_startup", + "_on_shutdown", + "_on_cleanup", + "_client_max_size", + "_cleanup_ctx", + ] + ) + + def __init__( + self, + *, + logger: logging.Logger = web_logger, + router: Optional[UrlDispatcher] = None, + middlewares: Iterable[Middleware] = (), + handler_args: Optional[Mapping[str, Any]] = None, + client_max_size: int = 1024**2, + loop: Optional[asyncio.AbstractEventLoop] = None, + debug: Any = ..., # mypy doesn't support ellipsis + ) -> None: + if router is None: + router = UrlDispatcher() + else: + warnings.warn( + "router argument is deprecated", DeprecationWarning, stacklevel=2 + ) + assert isinstance(router, AbstractRouter), router + + if loop is not None: + warnings.warn( + "loop argument is deprecated", DeprecationWarning, stacklevel=2 + ) + + if debug is not ...: + warnings.warn( + "debug argument is deprecated", DeprecationWarning, stacklevel=2 + ) + self._debug = debug + self._router: UrlDispatcher = router + self._loop = loop + self._handler_args = handler_args + self.logger = logger + + self._middlewares: _Middlewares = FrozenList(middlewares) + + # initialized on freezing + self._middlewares_handlers: _MiddlewaresHandlers = None + # initialized on freezing + self._run_middlewares: Optional[bool] = None + self._has_legacy_middlewares: bool = True + + self._state: Dict[Union[AppKey[Any], str], object] = {} + self._frozen = False + self._pre_frozen = False + self._subapps: _Subapps = [] + + self._on_response_prepare: _RespPrepareSignal = Signal(self) + self._on_startup: _AppSignal = Signal(self) + self._on_shutdown: _AppSignal = Signal(self) + self._on_cleanup: _AppSignal = Signal(self) + self._cleanup_ctx = CleanupContext() + self._on_startup.append(self._cleanup_ctx._on_startup) + self._on_cleanup.append(self._cleanup_ctx._on_cleanup) + self._client_max_size = client_max_size + + def __init_subclass__(cls: Type["Application"]) -> None: + warnings.warn( + "Inheritance class {} from web.Application " + "is discouraged".format(cls.__name__), + DeprecationWarning, + stacklevel=3, + ) + + if DEBUG: # pragma: no cover + + def __setattr__(self, name: str, val: Any) -> None: + if name not in self.ATTRS: + warnings.warn( + "Setting custom web.Application.{} attribute " + "is discouraged".format(name), + DeprecationWarning, + stacklevel=2, + ) + super().__setattr__(name, val) + + # MutableMapping API + + def __eq__(self, other: object) -> bool: + return self is other + + @overload # type: ignore[override] + def __getitem__(self, key: AppKey[_T]) -> _T: ... + + @overload + def __getitem__(self, key: str) -> Any: ... + + def __getitem__(self, key: Union[str, AppKey[_T]]) -> Any: + return self._state[key] + + def _check_frozen(self) -> None: + if self._frozen: + warnings.warn( + "Changing state of started or joined application is deprecated", + DeprecationWarning, + stacklevel=3, + ) + + @overload # type: ignore[override] + def __setitem__(self, key: AppKey[_T], value: _T) -> None: ... + + @overload + def __setitem__(self, key: str, value: Any) -> None: ... + + def __setitem__(self, key: Union[str, AppKey[_T]], value: Any) -> None: + self._check_frozen() + if not isinstance(key, AppKey): + warnings.warn( + "It is recommended to use web.AppKey instances for keys.\n" + + "https://docs.aiohttp.org/en/stable/web_advanced.html" + + "#application-s-config", + category=NotAppKeyWarning, + stacklevel=2, + ) + self._state[key] = value + + def __delitem__(self, key: Union[str, AppKey[_T]]) -> None: + self._check_frozen() + del self._state[key] + + def __len__(self) -> int: + return len(self._state) + + def __iter__(self) -> Iterator[Union[str, AppKey[Any]]]: + return iter(self._state) + + def __hash__(self) -> int: + return id(self) + + @overload # type: ignore[override] + def get(self, key: AppKey[_T], default: None = ...) -> Optional[_T]: ... + + @overload + def get(self, key: AppKey[_T], default: _U) -> Union[_T, _U]: ... + + @overload + def get(self, key: str, default: Any = ...) -> Any: ... + + def get(self, key: Union[str, AppKey[_T]], default: Any = None) -> Any: + return self._state.get(key, default) + + ######## + @property + def loop(self) -> asyncio.AbstractEventLoop: + # Technically the loop can be None + # but we mask it by explicit type cast + # to provide more convenient type annotation + warnings.warn("loop property is deprecated", DeprecationWarning, stacklevel=2) + return cast(asyncio.AbstractEventLoop, self._loop) + + def _set_loop(self, loop: Optional[asyncio.AbstractEventLoop]) -> None: + if loop is None: + loop = asyncio.get_event_loop() + if self._loop is not None and self._loop is not loop: + raise RuntimeError( + "web.Application instance initialized with different loop" + ) + + self._loop = loop + + # set loop debug + if self._debug is ...: + self._debug = loop.get_debug() + + # set loop to sub applications + for subapp in self._subapps: + subapp._set_loop(loop) + + @property + def pre_frozen(self) -> bool: + return self._pre_frozen + + def pre_freeze(self) -> None: + if self._pre_frozen: + return + + self._pre_frozen = True + self._middlewares.freeze() + self._router.freeze() + self._on_response_prepare.freeze() + self._cleanup_ctx.freeze() + self._on_startup.freeze() + self._on_shutdown.freeze() + self._on_cleanup.freeze() + self._middlewares_handlers = tuple(self._prepare_middleware()) + self._has_legacy_middlewares = any( + not new_style for _, new_style in self._middlewares_handlers + ) + + # If current app and any subapp do not have middlewares avoid run all + # of the code footprint that it implies, which have a middleware + # hardcoded per app that sets up the current_app attribute. If no + # middlewares are configured the handler will receive the proper + # current_app without needing all of this code. + self._run_middlewares = True if self.middlewares else False + + for subapp in self._subapps: + subapp.pre_freeze() + self._run_middlewares = self._run_middlewares or subapp._run_middlewares + + @property + def frozen(self) -> bool: + return self._frozen + + def freeze(self) -> None: + if self._frozen: + return + + self.pre_freeze() + self._frozen = True + for subapp in self._subapps: + subapp.freeze() + + @property + def debug(self) -> bool: + warnings.warn("debug property is deprecated", DeprecationWarning, stacklevel=2) + return self._debug # type: ignore[no-any-return] + + def _reg_subapp_signals(self, subapp: "Application") -> None: + def reg_handler(signame: str) -> None: + subsig = getattr(subapp, signame) + + async def handler(app: "Application") -> None: + await subsig.send(subapp) + + appsig = getattr(self, signame) + appsig.append(handler) + + reg_handler("on_startup") + reg_handler("on_shutdown") + reg_handler("on_cleanup") + + def add_subapp(self, prefix: str, subapp: "Application") -> PrefixedSubAppResource: + if not isinstance(prefix, str): + raise TypeError("Prefix must be str") + prefix = prefix.rstrip("/") + if not prefix: + raise ValueError("Prefix cannot be empty") + factory = partial(PrefixedSubAppResource, prefix, subapp) + return self._add_subapp(factory, subapp) + + def _add_subapp( + self, resource_factory: Callable[[], _Resource], subapp: "Application" + ) -> _Resource: + if self.frozen: + raise RuntimeError("Cannot add sub application to frozen application") + if subapp.frozen: + raise RuntimeError("Cannot add frozen application") + resource = resource_factory() + self.router.register_resource(resource) + self._reg_subapp_signals(subapp) + self._subapps.append(subapp) + subapp.pre_freeze() + if self._loop is not None: + subapp._set_loop(self._loop) + return resource + + def add_domain(self, domain: str, subapp: "Application") -> MatchedSubAppResource: + if not isinstance(domain, str): + raise TypeError("Domain must be str") + elif "*" in domain: + rule: Domain = MaskDomain(domain) + else: + rule = Domain(domain) + factory = partial(MatchedSubAppResource, rule, subapp) + return self._add_subapp(factory, subapp) + + def add_routes(self, routes: Iterable[AbstractRouteDef]) -> List[AbstractRoute]: + return self.router.add_routes(routes) + + @property + def on_response_prepare(self) -> _RespPrepareSignal: + return self._on_response_prepare + + @property + def on_startup(self) -> _AppSignal: + return self._on_startup + + @property + def on_shutdown(self) -> _AppSignal: + return self._on_shutdown + + @property + def on_cleanup(self) -> _AppSignal: + return self._on_cleanup + + @property + def cleanup_ctx(self) -> "CleanupContext": + return self._cleanup_ctx + + @property + def router(self) -> UrlDispatcher: + return self._router + + @property + def middlewares(self) -> _Middlewares: + return self._middlewares + + def _make_handler( + self, + *, + loop: Optional[asyncio.AbstractEventLoop] = None, + access_log_class: Type[AbstractAccessLogger] = AccessLogger, + **kwargs: Any, + ) -> Server: + + if not issubclass(access_log_class, AbstractAccessLogger): + raise TypeError( + "access_log_class must be subclass of " + "aiohttp.abc.AbstractAccessLogger, got {}".format(access_log_class) + ) + + self._set_loop(loop) + self.freeze() + + kwargs["debug"] = self._debug + kwargs["access_log_class"] = access_log_class + if self._handler_args: + for k, v in self._handler_args.items(): + kwargs[k] = v + + return Server( + self._handle, # type: ignore[arg-type] + request_factory=self._make_request, + loop=self._loop, + **kwargs, + ) + + def make_handler( + self, + *, + loop: Optional[asyncio.AbstractEventLoop] = None, + access_log_class: Type[AbstractAccessLogger] = AccessLogger, + **kwargs: Any, + ) -> Server: + + warnings.warn( + "Application.make_handler(...) is deprecated, use AppRunner API instead", + DeprecationWarning, + stacklevel=2, + ) + + return self._make_handler( + loop=loop, access_log_class=access_log_class, **kwargs + ) + + async def startup(self) -> None: + """Causes on_startup signal + + Should be called in the event loop along with the request handler. + """ + await self.on_startup.send(self) + + async def shutdown(self) -> None: + """Causes on_shutdown signal + + Should be called before cleanup() + """ + await self.on_shutdown.send(self) + + async def cleanup(self) -> None: + """Causes on_cleanup signal + + Should be called after shutdown() + """ + if self.on_cleanup.frozen: + await self.on_cleanup.send(self) + else: + # If an exception occurs in startup, ensure cleanup contexts are completed. + await self._cleanup_ctx._on_cleanup(self) + + def _make_request( + self, + message: RawRequestMessage, + payload: StreamReader, + protocol: RequestHandler, + writer: AbstractStreamWriter, + task: "asyncio.Task[None]", + _cls: Type[Request] = Request, + ) -> Request: + if TYPE_CHECKING: + assert self._loop is not None + return _cls( + message, + payload, + protocol, + writer, + task, + self._loop, + client_max_size=self._client_max_size, + ) + + def _prepare_middleware(self) -> Iterator[Tuple[Middleware, bool]]: + for m in reversed(self._middlewares): + if getattr(m, "__middleware_version__", None) == 1: + yield m, True + else: + warnings.warn( + f'old-style middleware "{m!r}" deprecated, see #2252', + DeprecationWarning, + stacklevel=2, + ) + yield m, False + + yield _fix_request_current_app(self), True + + async def _handle(self, request: Request) -> StreamResponse: + loop = asyncio.get_event_loop() + debug = loop.get_debug() + match_info = await self._router.resolve(request) + if debug: # pragma: no cover + if not isinstance(match_info, AbstractMatchInfo): + raise TypeError( + "match_info should be AbstractMatchInfo " + "instance, not {!r}".format(match_info) + ) + match_info.add_app(self) + + match_info.freeze() + + request._match_info = match_info + + if request.headers.get(hdrs.EXPECT): + resp = await match_info.expect_handler(request) + await request.writer.drain() + if resp is not None: + return resp + + handler = match_info.handler + + if self._run_middlewares: + # If its a SystemRoute, don't cache building the middlewares since + # they are constructed for every MatchInfoError as a new handler + # is made each time. + if not self._has_legacy_middlewares and not isinstance( + match_info.route, SystemRoute + ): + handler = _cached_build_middleware(handler, match_info.apps) + else: + for app in match_info.apps[::-1]: + for m, new_style in app._middlewares_handlers: # type: ignore[union-attr] + if new_style: + handler = update_wrapper( + partial(m, handler=handler), handler + ) + else: + handler = await m(app, handler) # type: ignore[arg-type,assignment] + + return await handler(request) + + def __call__(self) -> "Application": + """gunicorn compatibility""" + return self + + def __repr__(self) -> str: + return f"" + + def __bool__(self) -> bool: + return True + + +class CleanupError(RuntimeError): + @property + def exceptions(self) -> List[BaseException]: + return cast(List[BaseException], self.args[1]) + + +if TYPE_CHECKING: + _CleanupContextBase = FrozenList[Callable[[Application], AsyncIterator[None]]] +else: + _CleanupContextBase = FrozenList + + +class CleanupContext(_CleanupContextBase): + def __init__(self) -> None: + super().__init__() + self._exits: List[AsyncIterator[None]] = [] + + async def _on_startup(self, app: Application) -> None: + for cb in self: + it = cb(app).__aiter__() + await it.__anext__() + self._exits.append(it) + + async def _on_cleanup(self, app: Application) -> None: + errors = [] + for it in reversed(self._exits): + try: + await it.__anext__() + except StopAsyncIteration: + pass + except (Exception, asyncio.CancelledError) as exc: + errors.append(exc) + else: + errors.append(RuntimeError(f"{it!r} has more than one 'yield'")) + if errors: + if len(errors) == 1: + raise errors[0] + else: + raise CleanupError("Multiple errors on cleanup stage", errors) diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_exceptions.py b/venv/lib/python3.9/site-packages/aiohttp/web_exceptions.py new file mode 100644 index 0000000..30792c2 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_exceptions.py @@ -0,0 +1,454 @@ +import warnings +from typing import Any, Dict, Iterable, List, Optional, Set # noqa + +from yarl import URL + +from .typedefs import LooseHeaders, StrOrURL +from .web_response import Response + +__all__ = ( + "HTTPException", + "HTTPError", + "HTTPRedirection", + "HTTPSuccessful", + "HTTPOk", + "HTTPCreated", + "HTTPAccepted", + "HTTPNonAuthoritativeInformation", + "HTTPNoContent", + "HTTPResetContent", + "HTTPPartialContent", + "HTTPMove", + "HTTPMultipleChoices", + "HTTPMovedPermanently", + "HTTPFound", + "HTTPSeeOther", + "HTTPNotModified", + "HTTPUseProxy", + "HTTPTemporaryRedirect", + "HTTPPermanentRedirect", + "HTTPClientError", + "HTTPBadRequest", + "HTTPUnauthorized", + "HTTPPaymentRequired", + "HTTPForbidden", + "HTTPNotFound", + "HTTPMethodNotAllowed", + "HTTPNotAcceptable", + "HTTPProxyAuthenticationRequired", + "HTTPRequestTimeout", + "HTTPConflict", + "HTTPGone", + "HTTPLengthRequired", + "HTTPPreconditionFailed", + "HTTPRequestEntityTooLarge", + "HTTPRequestURITooLong", + "HTTPUnsupportedMediaType", + "HTTPRequestRangeNotSatisfiable", + "HTTPExpectationFailed", + "HTTPMisdirectedRequest", + "HTTPUnprocessableEntity", + "HTTPFailedDependency", + "HTTPUpgradeRequired", + "HTTPPreconditionRequired", + "HTTPTooManyRequests", + "HTTPRequestHeaderFieldsTooLarge", + "HTTPUnavailableForLegalReasons", + "HTTPServerError", + "HTTPInternalServerError", + "HTTPNotImplemented", + "HTTPBadGateway", + "HTTPServiceUnavailable", + "HTTPGatewayTimeout", + "HTTPVersionNotSupported", + "HTTPVariantAlsoNegotiates", + "HTTPInsufficientStorage", + "HTTPNotExtended", + "HTTPNetworkAuthenticationRequired", +) + + +class NotAppKeyWarning(UserWarning): + """Warning when not using AppKey in Application.""" + + +############################################################ +# HTTP Exceptions +############################################################ + + +class HTTPException(Response, Exception): + + # You should set in subclasses: + # status = 200 + + status_code = -1 + empty_body = False + + __http_exception__ = True + + def __init__( + self, + *, + headers: Optional[LooseHeaders] = None, + reason: Optional[str] = None, + body: Any = None, + text: Optional[str] = None, + content_type: Optional[str] = None, + ) -> None: + if body is not None: + warnings.warn( + "body argument is deprecated for http web exceptions", + DeprecationWarning, + ) + if reason is not None and ("\r" in reason or "\n" in reason): + raise ValueError("Reason cannot contain \\r or \\n") + Response.__init__( + self, + status=self.status_code, + headers=headers, + reason=reason, + body=body, + text=text, + content_type=content_type, + ) + Exception.__init__(self, self.reason) + if self.body is None and not self.empty_body: + self.text = f"{self.status}: {self.reason}" + + def __bool__(self) -> bool: + return True + + +class HTTPError(HTTPException): + """Base class for exceptions with status codes in the 400s and 500s.""" + + +class HTTPRedirection(HTTPException): + """Base class for exceptions with status codes in the 300s.""" + + +class HTTPSuccessful(HTTPException): + """Base class for exceptions with status codes in the 200s.""" + + +class HTTPOk(HTTPSuccessful): + status_code = 200 + + +class HTTPCreated(HTTPSuccessful): + status_code = 201 + + +class HTTPAccepted(HTTPSuccessful): + status_code = 202 + + +class HTTPNonAuthoritativeInformation(HTTPSuccessful): + status_code = 203 + + +class HTTPNoContent(HTTPSuccessful): + status_code = 204 + empty_body = True + + +class HTTPResetContent(HTTPSuccessful): + status_code = 205 + empty_body = True + + +class HTTPPartialContent(HTTPSuccessful): + status_code = 206 + + +############################################################ +# 3xx redirection +############################################################ + + +class HTTPMove(HTTPRedirection): + def __init__( + self, + location: StrOrURL, + *, + headers: Optional[LooseHeaders] = None, + reason: Optional[str] = None, + body: Any = None, + text: Optional[str] = None, + content_type: Optional[str] = None, + ) -> None: + if not location: + raise ValueError("HTTP redirects need a location to redirect to.") + super().__init__( + headers=headers, + reason=reason, + body=body, + text=text, + content_type=content_type, + ) + self.headers["Location"] = str(URL(location)) + self.location = location + + +class HTTPMultipleChoices(HTTPMove): + status_code = 300 + + +class HTTPMovedPermanently(HTTPMove): + status_code = 301 + + +class HTTPFound(HTTPMove): + status_code = 302 + + +# This one is safe after a POST (the redirected location will be +# retrieved with GET): +class HTTPSeeOther(HTTPMove): + status_code = 303 + + +class HTTPNotModified(HTTPRedirection): + # FIXME: this should include a date or etag header + status_code = 304 + empty_body = True + + +class HTTPUseProxy(HTTPMove): + # Not a move, but looks a little like one + status_code = 305 + + +class HTTPTemporaryRedirect(HTTPMove): + status_code = 307 + + +class HTTPPermanentRedirect(HTTPMove): + status_code = 308 + + +############################################################ +# 4xx client error +############################################################ + + +class HTTPClientError(HTTPError): + pass + + +class HTTPBadRequest(HTTPClientError): + status_code = 400 + + +class HTTPUnauthorized(HTTPClientError): + status_code = 401 + + +class HTTPPaymentRequired(HTTPClientError): + status_code = 402 + + +class HTTPForbidden(HTTPClientError): + status_code = 403 + + +class HTTPNotFound(HTTPClientError): + status_code = 404 + + +class HTTPMethodNotAllowed(HTTPClientError): + status_code = 405 + + def __init__( + self, + method: str, + allowed_methods: Iterable[str], + *, + headers: Optional[LooseHeaders] = None, + reason: Optional[str] = None, + body: Any = None, + text: Optional[str] = None, + content_type: Optional[str] = None, + ) -> None: + allow = ",".join(sorted(allowed_methods)) + super().__init__( + headers=headers, + reason=reason, + body=body, + text=text, + content_type=content_type, + ) + self.headers["Allow"] = allow + self.allowed_methods: Set[str] = set(allowed_methods) + self.method = method.upper() + + +class HTTPNotAcceptable(HTTPClientError): + status_code = 406 + + +class HTTPProxyAuthenticationRequired(HTTPClientError): + status_code = 407 + + +class HTTPRequestTimeout(HTTPClientError): + status_code = 408 + + +class HTTPConflict(HTTPClientError): + status_code = 409 + + +class HTTPGone(HTTPClientError): + status_code = 410 + + +class HTTPLengthRequired(HTTPClientError): + status_code = 411 + + +class HTTPPreconditionFailed(HTTPClientError): + status_code = 412 + + +class HTTPRequestEntityTooLarge(HTTPClientError): + status_code = 413 + + def __init__(self, max_size: float, actual_size: float, **kwargs: Any) -> None: + kwargs.setdefault( + "text", + "Maximum request body size {} exceeded, " + "actual body size {}".format(max_size, actual_size), + ) + super().__init__(**kwargs) + + +class HTTPRequestURITooLong(HTTPClientError): + status_code = 414 + + +class HTTPUnsupportedMediaType(HTTPClientError): + status_code = 415 + + +class HTTPRequestRangeNotSatisfiable(HTTPClientError): + status_code = 416 + + +class HTTPExpectationFailed(HTTPClientError): + status_code = 417 + + +class HTTPMisdirectedRequest(HTTPClientError): + status_code = 421 + + +class HTTPUnprocessableEntity(HTTPClientError): + status_code = 422 + + +class HTTPFailedDependency(HTTPClientError): + status_code = 424 + + +class HTTPUpgradeRequired(HTTPClientError): + status_code = 426 + + +class HTTPPreconditionRequired(HTTPClientError): + status_code = 428 + + +class HTTPTooManyRequests(HTTPClientError): + status_code = 429 + + +class HTTPRequestHeaderFieldsTooLarge(HTTPClientError): + status_code = 431 + + +class HTTPUnavailableForLegalReasons(HTTPClientError): + status_code = 451 + + def __init__( + self, + link: Optional[StrOrURL], + *, + headers: Optional[LooseHeaders] = None, + reason: Optional[str] = None, + body: Any = None, + text: Optional[str] = None, + content_type: Optional[str] = None, + ) -> None: + super().__init__( + headers=headers, + reason=reason, + body=body, + text=text, + content_type=content_type, + ) + self._link = None + if link: + self._link = URL(link) + self.headers["Link"] = f'<{str(self._link)}>; rel="blocked-by"' + + @property + def link(self) -> Optional[URL]: + return self._link + + +############################################################ +# 5xx Server Error +############################################################ +# Response status codes beginning with the digit "5" indicate cases in +# which the server is aware that it has erred or is incapable of +# performing the request. Except when responding to a HEAD request, the +# server SHOULD include an entity containing an explanation of the error +# situation, and whether it is a temporary or permanent condition. User +# agents SHOULD display any included entity to the user. These response +# codes are applicable to any request method. + + +class HTTPServerError(HTTPError): + pass + + +class HTTPInternalServerError(HTTPServerError): + status_code = 500 + + +class HTTPNotImplemented(HTTPServerError): + status_code = 501 + + +class HTTPBadGateway(HTTPServerError): + status_code = 502 + + +class HTTPServiceUnavailable(HTTPServerError): + status_code = 503 + + +class HTTPGatewayTimeout(HTTPServerError): + status_code = 504 + + +class HTTPVersionNotSupported(HTTPServerError): + status_code = 505 + + +class HTTPVariantAlsoNegotiates(HTTPServerError): + status_code = 506 + + +class HTTPInsufficientStorage(HTTPServerError): + status_code = 507 + + +class HTTPNotExtended(HTTPServerError): + status_code = 510 + + +class HTTPNetworkAuthenticationRequired(HTTPServerError): + status_code = 511 diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_fileresponse.py b/venv/lib/python3.9/site-packages/aiohttp/web_fileresponse.py new file mode 100644 index 0000000..bba2c2c --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_fileresponse.py @@ -0,0 +1,418 @@ +import asyncio +import io +import os +import pathlib +import sys +from contextlib import suppress +from enum import Enum, auto +from mimetypes import MimeTypes +from stat import S_ISREG +from types import MappingProxyType +from typing import ( # noqa + IO, + TYPE_CHECKING, + Any, + Awaitable, + Callable, + Final, + Iterator, + List, + Optional, + Set, + Tuple, + Union, + cast, +) + +from . import hdrs +from .abc import AbstractStreamWriter +from .helpers import ETAG_ANY, ETag, must_be_empty_body +from .typedefs import LooseHeaders, PathLike +from .web_exceptions import ( + HTTPForbidden, + HTTPNotFound, + HTTPNotModified, + HTTPPartialContent, + HTTPPreconditionFailed, + HTTPRequestRangeNotSatisfiable, +) +from .web_response import StreamResponse + +__all__ = ("FileResponse",) + +if TYPE_CHECKING: + from .web_request import BaseRequest + + +_T_OnChunkSent = Optional[Callable[[bytes], Awaitable[None]]] + + +NOSENDFILE: Final[bool] = bool(os.environ.get("AIOHTTP_NOSENDFILE")) + +CONTENT_TYPES: Final[MimeTypes] = MimeTypes() + +# File extension to IANA encodings map that will be checked in the order defined. +ENCODING_EXTENSIONS = MappingProxyType( + {ext: CONTENT_TYPES.encodings_map[ext] for ext in (".br", ".gz")} +) + +FALLBACK_CONTENT_TYPE = "application/octet-stream" + +# Provide additional MIME type/extension pairs to be recognized. +# https://en.wikipedia.org/wiki/List_of_archive_formats#Compression_only +ADDITIONAL_CONTENT_TYPES = MappingProxyType( + { + "application/gzip": ".gz", + "application/x-brotli": ".br", + "application/x-bzip2": ".bz2", + "application/x-compress": ".Z", + "application/x-xz": ".xz", + } +) + + +class _FileResponseResult(Enum): + """The result of the file response.""" + + SEND_FILE = auto() # Ie a regular file to send + NOT_ACCEPTABLE = auto() # Ie a socket, or non-regular file + PRE_CONDITION_FAILED = auto() # Ie If-Match or If-None-Match failed + NOT_MODIFIED = auto() # 304 Not Modified + + +# Add custom pairs and clear the encodings map so guess_type ignores them. +CONTENT_TYPES.encodings_map.clear() +for content_type, extension in ADDITIONAL_CONTENT_TYPES.items(): + CONTENT_TYPES.add_type(content_type, extension) + + +_CLOSE_FUTURES: Set[asyncio.Future[None]] = set() + + +class FileResponse(StreamResponse): + """A response object can be used to send files.""" + + def __init__( + self, + path: PathLike, + chunk_size: int = 256 * 1024, + status: int = 200, + reason: Optional[str] = None, + headers: Optional[LooseHeaders] = None, + ) -> None: + super().__init__(status=status, reason=reason, headers=headers) + + self._path = pathlib.Path(path) + self._chunk_size = chunk_size + + def _seek_and_read(self, fobj: IO[Any], offset: int, chunk_size: int) -> bytes: + fobj.seek(offset) + return fobj.read(chunk_size) # type: ignore[no-any-return] + + async def _sendfile_fallback( + self, writer: AbstractStreamWriter, fobj: IO[Any], offset: int, count: int + ) -> AbstractStreamWriter: + # To keep memory usage low,fobj is transferred in chunks + # controlled by the constructor's chunk_size argument. + + chunk_size = self._chunk_size + loop = asyncio.get_event_loop() + chunk = await loop.run_in_executor( + None, self._seek_and_read, fobj, offset, min(chunk_size, count) + ) + while chunk: + await writer.write(chunk) + count = count - len(chunk) + if count <= 0: + break + chunk = await loop.run_in_executor(None, fobj.read, min(chunk_size, count)) + + await writer.drain() + return writer + + async def _sendfile( + self, request: "BaseRequest", fobj: IO[Any], offset: int, count: int + ) -> AbstractStreamWriter: + writer = await super().prepare(request) + assert writer is not None + + if NOSENDFILE or self.compression: + return await self._sendfile_fallback(writer, fobj, offset, count) + + loop = request._loop + transport = request.transport + assert transport is not None + + try: + await loop.sendfile(transport, fobj, offset, count) + except NotImplementedError: + return await self._sendfile_fallback(writer, fobj, offset, count) + + await super().write_eof() + return writer + + @staticmethod + def _etag_match(etag_value: str, etags: Tuple[ETag, ...], *, weak: bool) -> bool: + if len(etags) == 1 and etags[0].value == ETAG_ANY: + return True + return any( + etag.value == etag_value for etag in etags if weak or not etag.is_weak + ) + + async def _not_modified( + self, request: "BaseRequest", etag_value: str, last_modified: float + ) -> Optional[AbstractStreamWriter]: + self.set_status(HTTPNotModified.status_code) + self._length_check = False + self.etag = etag_value + self.last_modified = last_modified + # Delete any Content-Length headers provided by user. HTTP 304 + # should always have empty response body + return await super().prepare(request) + + async def _precondition_failed( + self, request: "BaseRequest" + ) -> Optional[AbstractStreamWriter]: + self.set_status(HTTPPreconditionFailed.status_code) + self.content_length = 0 + return await super().prepare(request) + + def _make_response( + self, request: "BaseRequest", accept_encoding: str + ) -> Tuple[ + _FileResponseResult, Optional[io.BufferedReader], os.stat_result, Optional[str] + ]: + """Return the response result, io object, stat result, and encoding. + + If an uncompressed file is returned, the encoding is set to + :py:data:`None`. + + This method should be called from a thread executor + since it calls os.stat which may block. + """ + file_path, st, file_encoding = self._get_file_path_stat_encoding( + accept_encoding + ) + if not file_path: + return _FileResponseResult.NOT_ACCEPTABLE, None, st, None + + etag_value = f"{st.st_mtime_ns:x}-{st.st_size:x}" + + # https://www.rfc-editor.org/rfc/rfc9110#section-13.1.1-2 + if (ifmatch := request.if_match) is not None and not self._etag_match( + etag_value, ifmatch, weak=False + ): + return _FileResponseResult.PRE_CONDITION_FAILED, None, st, file_encoding + + if ( + (unmodsince := request.if_unmodified_since) is not None + and ifmatch is None + and st.st_mtime > unmodsince.timestamp() + ): + return _FileResponseResult.PRE_CONDITION_FAILED, None, st, file_encoding + + # https://www.rfc-editor.org/rfc/rfc9110#section-13.1.2-2 + if (ifnonematch := request.if_none_match) is not None and self._etag_match( + etag_value, ifnonematch, weak=True + ): + return _FileResponseResult.NOT_MODIFIED, None, st, file_encoding + + if ( + (modsince := request.if_modified_since) is not None + and ifnonematch is None + and st.st_mtime <= modsince.timestamp() + ): + return _FileResponseResult.NOT_MODIFIED, None, st, file_encoding + + fobj = file_path.open("rb") + with suppress(OSError): + # fstat() may not be available on all platforms + # Once we open the file, we want the fstat() to ensure + # the file has not changed between the first stat() + # and the open(). + st = os.stat(fobj.fileno()) + return _FileResponseResult.SEND_FILE, fobj, st, file_encoding + + def _get_file_path_stat_encoding( + self, accept_encoding: str + ) -> Tuple[Optional[pathlib.Path], os.stat_result, Optional[str]]: + file_path = self._path + for file_extension, file_encoding in ENCODING_EXTENSIONS.items(): + if file_encoding not in accept_encoding: + continue + + compressed_path = file_path.with_suffix(file_path.suffix + file_extension) + with suppress(OSError): + # Do not follow symlinks and ignore any non-regular files. + st = compressed_path.lstat() + if S_ISREG(st.st_mode): + return compressed_path, st, file_encoding + + # Fallback to the uncompressed file + st = file_path.stat() + return file_path if S_ISREG(st.st_mode) else None, st, None + + async def prepare(self, request: "BaseRequest") -> Optional[AbstractStreamWriter]: + loop = asyncio.get_running_loop() + # Encoding comparisons should be case-insensitive + # https://www.rfc-editor.org/rfc/rfc9110#section-8.4.1 + accept_encoding = request.headers.get(hdrs.ACCEPT_ENCODING, "").lower() + try: + response_result, fobj, st, file_encoding = await loop.run_in_executor( + None, self._make_response, request, accept_encoding + ) + except PermissionError: + self.set_status(HTTPForbidden.status_code) + return await super().prepare(request) + except OSError: + # Most likely to be FileNotFoundError or OSError for circular + # symlinks in python >= 3.13, so respond with 404. + self.set_status(HTTPNotFound.status_code) + return await super().prepare(request) + + # Forbid special files like sockets, pipes, devices, etc. + if response_result is _FileResponseResult.NOT_ACCEPTABLE: + self.set_status(HTTPForbidden.status_code) + return await super().prepare(request) + + if response_result is _FileResponseResult.PRE_CONDITION_FAILED: + return await self._precondition_failed(request) + + if response_result is _FileResponseResult.NOT_MODIFIED: + etag_value = f"{st.st_mtime_ns:x}-{st.st_size:x}" + last_modified = st.st_mtime + return await self._not_modified(request, etag_value, last_modified) + + assert fobj is not None + try: + return await self._prepare_open_file(request, fobj, st, file_encoding) + finally: + # We do not await here because we do not want to wait + # for the executor to finish before returning the response + # so the connection can begin servicing another request + # as soon as possible. + close_future = loop.run_in_executor(None, fobj.close) + # Hold a strong reference to the future to prevent it from being + # garbage collected before it completes. + _CLOSE_FUTURES.add(close_future) + close_future.add_done_callback(_CLOSE_FUTURES.remove) + + async def _prepare_open_file( + self, + request: "BaseRequest", + fobj: io.BufferedReader, + st: os.stat_result, + file_encoding: Optional[str], + ) -> Optional[AbstractStreamWriter]: + status = self._status + file_size: int = st.st_size + file_mtime: float = st.st_mtime + count: int = file_size + start: Optional[int] = None + + if (ifrange := request.if_range) is None or file_mtime <= ifrange.timestamp(): + # If-Range header check: + # condition = cached date >= last modification date + # return 206 if True else 200. + # if False: + # Range header would not be processed, return 200 + # if True but Range header missing + # return 200 + try: + rng = request.http_range + start = rng.start + end: Optional[int] = rng.stop + except ValueError: + # https://tools.ietf.org/html/rfc7233: + # A server generating a 416 (Range Not Satisfiable) response to + # a byte-range request SHOULD send a Content-Range header field + # with an unsatisfied-range value. + # The complete-length in a 416 response indicates the current + # length of the selected representation. + # + # Will do the same below. Many servers ignore this and do not + # send a Content-Range header with HTTP 416 + self._headers[hdrs.CONTENT_RANGE] = f"bytes */{file_size}" + self.set_status(HTTPRequestRangeNotSatisfiable.status_code) + return await super().prepare(request) + + # If a range request has been made, convert start, end slice + # notation into file pointer offset and count + if start is not None: + if start < 0 and end is None: # return tail of file + start += file_size + if start < 0: + # if Range:bytes=-1000 in request header but file size + # is only 200, there would be trouble without this + start = 0 + count = file_size - start + else: + # rfc7233:If the last-byte-pos value is + # absent, or if the value is greater than or equal to + # the current length of the representation data, + # the byte range is interpreted as the remainder + # of the representation (i.e., the server replaces the + # value of last-byte-pos with a value that is one less than + # the current length of the selected representation). + count = ( + min(end if end is not None else file_size, file_size) - start + ) + + if start >= file_size: + # HTTP 416 should be returned in this case. + # + # According to https://tools.ietf.org/html/rfc7233: + # If a valid byte-range-set includes at least one + # byte-range-spec with a first-byte-pos that is less than + # the current length of the representation, or at least one + # suffix-byte-range-spec with a non-zero suffix-length, + # then the byte-range-set is satisfiable. Otherwise, the + # byte-range-set is unsatisfiable. + self._headers[hdrs.CONTENT_RANGE] = f"bytes */{file_size}" + self.set_status(HTTPRequestRangeNotSatisfiable.status_code) + return await super().prepare(request) + + status = HTTPPartialContent.status_code + # Even though you are sending the whole file, you should still + # return a HTTP 206 for a Range request. + self.set_status(status) + + # If the Content-Type header is not already set, guess it based on the + # extension of the request path. The encoding returned by guess_type + # can be ignored since the map was cleared above. + if hdrs.CONTENT_TYPE not in self._headers: + if sys.version_info >= (3, 13): + guesser = CONTENT_TYPES.guess_file_type + else: + guesser = CONTENT_TYPES.guess_type + self.content_type = guesser(self._path)[0] or FALLBACK_CONTENT_TYPE + + if file_encoding: + self._headers[hdrs.CONTENT_ENCODING] = file_encoding + self._headers[hdrs.VARY] = hdrs.ACCEPT_ENCODING + # Disable compression if we are already sending + # a compressed file since we don't want to double + # compress. + self._compression = False + + self.etag = f"{st.st_mtime_ns:x}-{st.st_size:x}" + self.last_modified = file_mtime + self.content_length = count + + self._headers[hdrs.ACCEPT_RANGES] = "bytes" + + if status == HTTPPartialContent.status_code: + real_start = start + assert real_start is not None + self._headers[hdrs.CONTENT_RANGE] = "bytes {}-{}/{}".format( + real_start, real_start + count - 1, file_size + ) + + # If we are sending 0 bytes calling sendfile() will throw a ValueError + if count == 0 or must_be_empty_body(request.method, status): + return await super().prepare(request) + + # be aware that start could be None or int=0 here. + offset = start or 0 + + return await self._sendfile(request, fobj, offset, count) diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_log.py b/venv/lib/python3.9/site-packages/aiohttp/web_log.py new file mode 100644 index 0000000..02a545a --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_log.py @@ -0,0 +1,234 @@ +import datetime +import functools +import logging +import os +import re +import time as time_mod +from collections import namedtuple +from collections.abc import Iterable +from typing import Callable, ClassVar, Dict, List, Optional, Tuple + +from .abc import AbstractAccessLogger +from .web_request import BaseRequest +from .web_response import StreamResponse + +KeyMethod = namedtuple("KeyMethod", "key method") + + +class AccessLogger(AbstractAccessLogger): + """Helper object to log access. + + Usage: + log = logging.getLogger("spam") + log_format = "%a %{User-Agent}i" + access_logger = AccessLogger(log, log_format) + access_logger.log(request, response, time) + + Format: + %% The percent sign + %a Remote IP-address (IP-address of proxy if using reverse proxy) + %t Time when the request was started to process + %P The process ID of the child that serviced the request + %r First line of request + %s Response status code + %b Size of response in bytes, including HTTP headers + %T Time taken to serve the request, in seconds + %Tf Time taken to serve the request, in seconds with floating fraction + in .06f format + %D Time taken to serve the request, in microseconds + %{FOO}i request.headers['FOO'] + %{FOO}o response.headers['FOO'] + %{FOO}e os.environ['FOO'] + + """ + + LOG_FORMAT_MAP = { + "a": "remote_address", + "t": "request_start_time", + "P": "process_id", + "r": "first_request_line", + "s": "response_status", + "b": "response_size", + "T": "request_time", + "Tf": "request_time_frac", + "D": "request_time_micro", + "i": "request_header", + "o": "response_header", + } + + LOG_FORMAT = '%a %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"' + FORMAT_RE = re.compile(r"%(\{([A-Za-z0-9\-_]+)\}([ioe])|[atPrsbOD]|Tf?)") + CLEANUP_RE = re.compile(r"(%[^s])") + _FORMAT_CACHE: Dict[str, Tuple[str, List[KeyMethod]]] = {} + + _cached_tz: ClassVar[Optional[datetime.timezone]] = None + _cached_tz_expires: ClassVar[float] = 0.0 + + def __init__(self, logger: logging.Logger, log_format: str = LOG_FORMAT) -> None: + """Initialise the logger. + + logger is a logger object to be used for logging. + log_format is a string with apache compatible log format description. + + """ + super().__init__(logger, log_format=log_format) + + _compiled_format = AccessLogger._FORMAT_CACHE.get(log_format) + if not _compiled_format: + _compiled_format = self.compile_format(log_format) + AccessLogger._FORMAT_CACHE[log_format] = _compiled_format + + self._log_format, self._methods = _compiled_format + + def compile_format(self, log_format: str) -> Tuple[str, List[KeyMethod]]: + """Translate log_format into form usable by modulo formatting + + All known atoms will be replaced with %s + Also methods for formatting of those atoms will be added to + _methods in appropriate order + + For example we have log_format = "%a %t" + This format will be translated to "%s %s" + Also contents of _methods will be + [self._format_a, self._format_t] + These method will be called and results will be passed + to translated string format. + + Each _format_* method receive 'args' which is list of arguments + given to self.log + + Exceptions are _format_e, _format_i and _format_o methods which + also receive key name (by functools.partial) + + """ + # list of (key, method) tuples, we don't use an OrderedDict as users + # can repeat the same key more than once + methods = list() + + for atom in self.FORMAT_RE.findall(log_format): + if atom[1] == "": + format_key1 = self.LOG_FORMAT_MAP[atom[0]] + m = getattr(AccessLogger, "_format_%s" % atom[0]) + key_method = KeyMethod(format_key1, m) + else: + format_key2 = (self.LOG_FORMAT_MAP[atom[2]], atom[1]) + m = getattr(AccessLogger, "_format_%s" % atom[2]) + key_method = KeyMethod(format_key2, functools.partial(m, atom[1])) + + methods.append(key_method) + + log_format = self.FORMAT_RE.sub(r"%s", log_format) + log_format = self.CLEANUP_RE.sub(r"%\1", log_format) + return log_format, methods + + @staticmethod + def _format_i( + key: str, request: BaseRequest, response: StreamResponse, time: float + ) -> str: + if request is None: + return "(no headers)" + + # suboptimal, make istr(key) once + return request.headers.get(key, "-") + + @staticmethod + def _format_o( + key: str, request: BaseRequest, response: StreamResponse, time: float + ) -> str: + # suboptimal, make istr(key) once + return response.headers.get(key, "-") + + @staticmethod + def _format_a(request: BaseRequest, response: StreamResponse, time: float) -> str: + if request is None: + return "-" + ip = request.remote + return ip if ip is not None else "-" + + @classmethod + def _get_local_time(cls) -> datetime.datetime: + if cls._cached_tz is None or time_mod.time() >= cls._cached_tz_expires: + gmtoff = time_mod.localtime().tm_gmtoff + cls._cached_tz = tz = datetime.timezone(datetime.timedelta(seconds=gmtoff)) + + now = datetime.datetime.now(tz) + # Expire at every 30 mins, as any DST change should occur at 0/30 mins past. + d = now + datetime.timedelta(minutes=30) + d = d.replace(minute=30 if d.minute >= 30 else 0, second=0, microsecond=0) + cls._cached_tz_expires = d.timestamp() + return now + + return datetime.datetime.now(cls._cached_tz) + + @staticmethod + def _format_t(request: BaseRequest, response: StreamResponse, time: float) -> str: + now = AccessLogger._get_local_time() + start_time = now - datetime.timedelta(seconds=time) + return start_time.strftime("[%d/%b/%Y:%H:%M:%S %z]") + + @staticmethod + def _format_P(request: BaseRequest, response: StreamResponse, time: float) -> str: + return "<%s>" % os.getpid() + + @staticmethod + def _format_r(request: BaseRequest, response: StreamResponse, time: float) -> str: + if request is None: + return "-" + return "{} {} HTTP/{}.{}".format( + request.method, + request.path_qs, + request.version.major, + request.version.minor, + ) + + @staticmethod + def _format_s(request: BaseRequest, response: StreamResponse, time: float) -> int: + return response.status + + @staticmethod + def _format_b(request: BaseRequest, response: StreamResponse, time: float) -> int: + return response.body_length + + @staticmethod + def _format_T(request: BaseRequest, response: StreamResponse, time: float) -> str: + return str(round(time)) + + @staticmethod + def _format_Tf(request: BaseRequest, response: StreamResponse, time: float) -> str: + return "%06f" % time + + @staticmethod + def _format_D(request: BaseRequest, response: StreamResponse, time: float) -> str: + return str(round(time * 1000000)) + + def _format_line( + self, request: BaseRequest, response: StreamResponse, time: float + ) -> Iterable[Tuple[str, Callable[[BaseRequest, StreamResponse, float], str]]]: + return [(key, method(request, response, time)) for key, method in self._methods] + + @property + def enabled(self) -> bool: + """Check if logger is enabled.""" + # Avoid formatting the log line if it will not be emitted. + return self.logger.isEnabledFor(logging.INFO) + + def log(self, request: BaseRequest, response: StreamResponse, time: float) -> None: + try: + fmt_info = self._format_line(request, response, time) + + values = list() + extra = dict() + for key, value in fmt_info: + values.append(value) + + if key.__class__ is str: + extra[key] = value + else: + k1, k2 = key # type: ignore[misc] + dct = extra.get(k1, {}) # type: ignore[var-annotated,has-type] + dct[k2] = value # type: ignore[index,has-type] + extra[k1] = dct # type: ignore[has-type,assignment] + + self.logger.info(self._log_format % tuple(values), extra=extra) + except Exception: + self.logger.exception("Error in logging") diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_middlewares.py b/venv/lib/python3.9/site-packages/aiohttp/web_middlewares.py new file mode 100644 index 0000000..2f1f5f5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_middlewares.py @@ -0,0 +1,121 @@ +import re +from typing import TYPE_CHECKING, Tuple, Type, TypeVar + +from .typedefs import Handler, Middleware +from .web_exceptions import HTTPMove, HTTPPermanentRedirect +from .web_request import Request +from .web_response import StreamResponse +from .web_urldispatcher import SystemRoute + +__all__ = ( + "middleware", + "normalize_path_middleware", +) + +if TYPE_CHECKING: + from .web_app import Application + +_Func = TypeVar("_Func") + + +async def _check_request_resolves(request: Request, path: str) -> Tuple[bool, Request]: + alt_request = request.clone(rel_url=path) + + match_info = await request.app.router.resolve(alt_request) + alt_request._match_info = match_info + + if match_info.http_exception is None: + return True, alt_request + + return False, request + + +def middleware(f: _Func) -> _Func: + f.__middleware_version__ = 1 # type: ignore[attr-defined] + return f + + +def normalize_path_middleware( + *, + append_slash: bool = True, + remove_slash: bool = False, + merge_slashes: bool = True, + redirect_class: Type[HTTPMove] = HTTPPermanentRedirect, +) -> Middleware: + """Factory for producing a middleware that normalizes the path of a request. + + Normalizing means: + - Add or remove a trailing slash to the path. + - Double slashes are replaced by one. + + The middleware returns as soon as it finds a path that resolves + correctly. The order if both merge and append/remove are enabled is + 1) merge slashes + 2) append/remove slash + 3) both merge slashes and append/remove slash. + If the path resolves with at least one of those conditions, it will + redirect to the new path. + + Only one of `append_slash` and `remove_slash` can be enabled. If both + are `True` the factory will raise an assertion error + + If `append_slash` is `True` the middleware will append a slash when + needed. If a resource is defined with trailing slash and the request + comes without it, it will append it automatically. + + If `remove_slash` is `True`, `append_slash` must be `False`. When enabled + the middleware will remove trailing slashes and redirect if the resource + is defined + + If merge_slashes is True, merge multiple consecutive slashes in the + path into one. + """ + correct_configuration = not (append_slash and remove_slash) + assert correct_configuration, "Cannot both remove and append slash" + + @middleware + async def impl(request: Request, handler: Handler) -> StreamResponse: + if isinstance(request.match_info.route, SystemRoute): + paths_to_check = [] + if "?" in request.raw_path: + path, query = request.raw_path.split("?", 1) + query = "?" + query + else: + query = "" + path = request.raw_path + + if merge_slashes: + paths_to_check.append(re.sub("//+", "/", path)) + if append_slash and not request.path.endswith("/"): + paths_to_check.append(path + "/") + if remove_slash and request.path.endswith("/"): + paths_to_check.append(path[:-1]) + if merge_slashes and append_slash: + paths_to_check.append(re.sub("//+", "/", path + "/")) + if merge_slashes and remove_slash: + merged_slashes = re.sub("//+", "/", path) + paths_to_check.append(merged_slashes[:-1]) + + for path in paths_to_check: + path = re.sub("^//+", "/", path) # SECURITY: GHSA-v6wp-4m6f-gcjg + resolves, request = await _check_request_resolves(request, path) + if resolves: + raise redirect_class(request.raw_path + query) + + return await handler(request) + + return impl + + +def _fix_request_current_app(app: "Application") -> Middleware: + @middleware + async def impl(request: Request, handler: Handler) -> StreamResponse: + match_info = request.match_info + prev = match_info.current_app + match_info.current_app = app + try: + return await handler(request) + finally: + match_info.current_app = prev + + return impl diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_protocol.py b/venv/lib/python3.9/site-packages/aiohttp/web_protocol.py new file mode 100644 index 0000000..84e70e5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_protocol.py @@ -0,0 +1,799 @@ +import asyncio +import asyncio.streams +import sys +import traceback +import warnings +from collections import deque +from contextlib import suppress +from html import escape as html_escape +from http import HTTPStatus +from logging import Logger +from typing import ( + TYPE_CHECKING, + Any, + Awaitable, + Callable, + Deque, + Optional, + Sequence, + Tuple, + Type, + Union, + cast, +) + +import attr +import yarl +from propcache import under_cached_property + +from .abc import AbstractAccessLogger, AbstractStreamWriter +from .base_protocol import BaseProtocol +from .helpers import ceil_timeout +from .http import ( + HttpProcessingError, + HttpRequestParser, + HttpVersion10, + RawRequestMessage, + StreamWriter, +) +from .http_exceptions import BadHttpMethod +from .log import access_logger, server_logger +from .streams import EMPTY_PAYLOAD, StreamReader +from .tcp_helpers import tcp_keepalive +from .web_exceptions import HTTPException, HTTPInternalServerError +from .web_log import AccessLogger +from .web_request import BaseRequest +from .web_response import Response, StreamResponse + +__all__ = ("RequestHandler", "RequestPayloadError", "PayloadAccessError") + +if TYPE_CHECKING: + import ssl + + from .web_server import Server + + +_RequestFactory = Callable[ + [ + RawRequestMessage, + StreamReader, + "RequestHandler", + AbstractStreamWriter, + "asyncio.Task[None]", + ], + BaseRequest, +] + +_RequestHandler = Callable[[BaseRequest], Awaitable[StreamResponse]] + +ERROR = RawRequestMessage( + "UNKNOWN", + "/", + HttpVersion10, + {}, # type: ignore[arg-type] + {}, # type: ignore[arg-type] + True, + None, + False, + False, + yarl.URL("/"), +) + + +class RequestPayloadError(Exception): + """Payload parsing error.""" + + +class PayloadAccessError(Exception): + """Payload was accessed after response was sent.""" + + +_PAYLOAD_ACCESS_ERROR = PayloadAccessError() + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class _ErrInfo: + status: int + exc: BaseException + message: str + + +_MsgType = Tuple[Union[RawRequestMessage, _ErrInfo], StreamReader] + + +class RequestHandler(BaseProtocol): + """HTTP protocol implementation. + + RequestHandler handles incoming HTTP request. It reads request line, + request headers and request payload and calls handle_request() method. + By default it always returns with 404 response. + + RequestHandler handles errors in incoming request, like bad + status line, bad headers or incomplete payload. If any error occurs, + connection gets closed. + + keepalive_timeout -- number of seconds before closing + keep-alive connection + + tcp_keepalive -- TCP keep-alive is on, default is on + + debug -- enable debug mode + + logger -- custom logger object + + access_log_class -- custom class for access_logger + + access_log -- custom logging object + + access_log_format -- access log format string + + loop -- Optional event loop + + max_line_size -- Optional maximum header line size + + max_field_size -- Optional maximum header field size + + max_headers -- Optional maximum header size + + timeout_ceil_threshold -- Optional value to specify + threshold to ceil() timeout + values + + """ + + __slots__ = ( + "max_field_size", + "max_headers", + "max_line_size", + "_request_count", + "_keepalive", + "_manager", + "_request_handler", + "_request_factory", + "_tcp_keepalive", + "_next_keepalive_close_time", + "_keepalive_handle", + "_keepalive_timeout", + "_lingering_time", + "_messages", + "_message_tail", + "_handler_waiter", + "_waiter", + "_task_handler", + "_upgrade", + "_payload_parser", + "_request_parser", + "_reading_paused", + "logger", + "debug", + "access_log", + "access_logger", + "_close", + "_force_close", + "_current_request", + "_timeout_ceil_threshold", + "_request_in_progress", + "_logging_enabled", + "_cache", + ) + + def __init__( + self, + manager: "Server", + *, + loop: asyncio.AbstractEventLoop, + # Default should be high enough that it's likely longer than a reverse proxy. + keepalive_timeout: float = 3630, + tcp_keepalive: bool = True, + logger: Logger = server_logger, + access_log_class: Type[AbstractAccessLogger] = AccessLogger, + access_log: Logger = access_logger, + access_log_format: str = AccessLogger.LOG_FORMAT, + debug: bool = False, + max_line_size: int = 8190, + max_headers: int = 128, + max_field_size: int = 8190, + lingering_time: float = 10.0, + read_bufsize: int = 2**16, + auto_decompress: bool = True, + timeout_ceil_threshold: float = 5, + ): + super().__init__(loop) + + # _request_count is the number of requests processed with the same connection. + self._request_count = 0 + self._keepalive = False + self._current_request: Optional[BaseRequest] = None + self._manager: Optional[Server] = manager + self._request_handler: Optional[_RequestHandler] = manager.request_handler + self._request_factory: Optional[_RequestFactory] = manager.request_factory + + self.max_line_size = max_line_size + self.max_headers = max_headers + self.max_field_size = max_field_size + + self._tcp_keepalive = tcp_keepalive + # placeholder to be replaced on keepalive timeout setup + self._next_keepalive_close_time = 0.0 + self._keepalive_handle: Optional[asyncio.Handle] = None + self._keepalive_timeout = keepalive_timeout + self._lingering_time = float(lingering_time) + + self._messages: Deque[_MsgType] = deque() + self._message_tail = b"" + + self._waiter: Optional[asyncio.Future[None]] = None + self._handler_waiter: Optional[asyncio.Future[None]] = None + self._task_handler: Optional[asyncio.Task[None]] = None + + self._upgrade = False + self._payload_parser: Any = None + self._request_parser: Optional[HttpRequestParser] = HttpRequestParser( + self, + loop, + read_bufsize, + max_line_size=max_line_size, + max_field_size=max_field_size, + max_headers=max_headers, + payload_exception=RequestPayloadError, + auto_decompress=auto_decompress, + ) + + self._timeout_ceil_threshold: float = 5 + try: + self._timeout_ceil_threshold = float(timeout_ceil_threshold) + except (TypeError, ValueError): + pass + + self.logger = logger + self.debug = debug + self.access_log = access_log + if access_log: + self.access_logger: Optional[AbstractAccessLogger] = access_log_class( + access_log, access_log_format + ) + self._logging_enabled = self.access_logger.enabled + else: + self.access_logger = None + self._logging_enabled = False + + self._close = False + self._force_close = False + self._request_in_progress = False + self._cache: dict[str, Any] = {} + + def __repr__(self) -> str: + return "<{} {}>".format( + self.__class__.__name__, + "connected" if self.transport is not None else "disconnected", + ) + + @under_cached_property + def ssl_context(self) -> Optional["ssl.SSLContext"]: + """Return SSLContext if available.""" + return ( + None + if self.transport is None + else self.transport.get_extra_info("sslcontext") + ) + + @under_cached_property + def peername( + self, + ) -> Optional[Union[str, Tuple[str, int, int, int], Tuple[str, int]]]: + """Return peername if available.""" + return ( + None + if self.transport is None + else self.transport.get_extra_info("peername") + ) + + @property + def keepalive_timeout(self) -> float: + return self._keepalive_timeout + + async def shutdown(self, timeout: Optional[float] = 15.0) -> None: + """Do worker process exit preparations. + + We need to clean up everything and stop accepting requests. + It is especially important for keep-alive connections. + """ + self._force_close = True + + if self._keepalive_handle is not None: + self._keepalive_handle.cancel() + + # Wait for graceful handler completion + if self._request_in_progress: + # The future is only created when we are shutting + # down while the handler is still processing a request + # to avoid creating a future for every request. + self._handler_waiter = self._loop.create_future() + try: + async with ceil_timeout(timeout): + await self._handler_waiter + except (asyncio.CancelledError, asyncio.TimeoutError): + self._handler_waiter = None + if ( + sys.version_info >= (3, 11) + and (task := asyncio.current_task()) + and task.cancelling() + ): + raise + # Then cancel handler and wait + try: + async with ceil_timeout(timeout): + if self._current_request is not None: + self._current_request._cancel(asyncio.CancelledError()) + + if self._task_handler is not None and not self._task_handler.done(): + await asyncio.shield(self._task_handler) + except (asyncio.CancelledError, asyncio.TimeoutError): + if ( + sys.version_info >= (3, 11) + and (task := asyncio.current_task()) + and task.cancelling() + ): + raise + + # force-close non-idle handler + if self._task_handler is not None: + self._task_handler.cancel() + + self.force_close() + + def connection_made(self, transport: asyncio.BaseTransport) -> None: + super().connection_made(transport) + + real_transport = cast(asyncio.Transport, transport) + if self._tcp_keepalive: + tcp_keepalive(real_transport) + + assert self._manager is not None + self._manager.connection_made(self, real_transport) + + loop = self._loop + if sys.version_info >= (3, 12): + task = asyncio.Task(self.start(), loop=loop, eager_start=True) + else: + task = loop.create_task(self.start()) + self._task_handler = task + + def connection_lost(self, exc: Optional[BaseException]) -> None: + if self._manager is None: + return + self._manager.connection_lost(self, exc) + + # Grab value before setting _manager to None. + handler_cancellation = self._manager.handler_cancellation + + self.force_close() + super().connection_lost(exc) + self._manager = None + self._request_factory = None + self._request_handler = None + self._request_parser = None + + if self._keepalive_handle is not None: + self._keepalive_handle.cancel() + + if self._current_request is not None: + if exc is None: + exc = ConnectionResetError("Connection lost") + self._current_request._cancel(exc) + + if handler_cancellation and self._task_handler is not None: + self._task_handler.cancel() + + self._task_handler = None + + if self._payload_parser is not None: + self._payload_parser.feed_eof() + self._payload_parser = None + + def set_parser(self, parser: Any) -> None: + # Actual type is WebReader + assert self._payload_parser is None + + self._payload_parser = parser + + if self._message_tail: + self._payload_parser.feed_data(self._message_tail) + self._message_tail = b"" + + def eof_received(self) -> None: + pass + + def data_received(self, data: bytes) -> None: + if self._force_close or self._close: + return + # parse http messages + messages: Sequence[_MsgType] + if self._payload_parser is None and not self._upgrade: + assert self._request_parser is not None + try: + messages, upgraded, tail = self._request_parser.feed_data(data) + except HttpProcessingError as exc: + messages = [ + (_ErrInfo(status=400, exc=exc, message=exc.message), EMPTY_PAYLOAD) + ] + upgraded = False + tail = b"" + + for msg, payload in messages or (): + self._request_count += 1 + self._messages.append((msg, payload)) + + waiter = self._waiter + if messages and waiter is not None and not waiter.done(): + # don't set result twice + waiter.set_result(None) + + self._upgrade = upgraded + if upgraded and tail: + self._message_tail = tail + + # no parser, just store + elif self._payload_parser is None and self._upgrade and data: + self._message_tail += data + + # feed payload + elif data: + eof, tail = self._payload_parser.feed_data(data) + if eof: + self.close() + + def keep_alive(self, val: bool) -> None: + """Set keep-alive connection mode. + + :param bool val: new state. + """ + self._keepalive = val + if self._keepalive_handle: + self._keepalive_handle.cancel() + self._keepalive_handle = None + + def close(self) -> None: + """Close connection. + + Stop accepting new pipelining messages and close + connection when handlers done processing messages. + """ + self._close = True + if self._waiter: + self._waiter.cancel() + + def force_close(self) -> None: + """Forcefully close connection.""" + self._force_close = True + if self._waiter: + self._waiter.cancel() + if self.transport is not None: + self.transport.close() + self.transport = None + + def log_access( + self, request: BaseRequest, response: StreamResponse, time: Optional[float] + ) -> None: + if self._logging_enabled and self.access_logger is not None: + if TYPE_CHECKING: + assert time is not None + self.access_logger.log(request, response, self._loop.time() - time) + + def log_debug(self, *args: Any, **kw: Any) -> None: + if self.debug: + self.logger.debug(*args, **kw) + + def log_exception(self, *args: Any, **kw: Any) -> None: + self.logger.exception(*args, **kw) + + def _process_keepalive(self) -> None: + self._keepalive_handle = None + if self._force_close or not self._keepalive: + return + + loop = self._loop + now = loop.time() + close_time = self._next_keepalive_close_time + if now < close_time: + # Keep alive close check fired too early, reschedule + self._keepalive_handle = loop.call_at(close_time, self._process_keepalive) + return + + # handler in idle state + if self._waiter and not self._waiter.done(): + self.force_close() + + async def _handle_request( + self, + request: BaseRequest, + start_time: Optional[float], + request_handler: Callable[[BaseRequest], Awaitable[StreamResponse]], + ) -> Tuple[StreamResponse, bool]: + self._request_in_progress = True + try: + try: + self._current_request = request + resp = await request_handler(request) + finally: + self._current_request = None + except HTTPException as exc: + resp = exc + resp, reset = await self.finish_response(request, resp, start_time) + except asyncio.CancelledError: + raise + except asyncio.TimeoutError as exc: + self.log_debug("Request handler timed out.", exc_info=exc) + resp = self.handle_error(request, 504) + resp, reset = await self.finish_response(request, resp, start_time) + except Exception as exc: + resp = self.handle_error(request, 500, exc) + resp, reset = await self.finish_response(request, resp, start_time) + else: + # Deprecation warning (See #2415) + if getattr(resp, "__http_exception__", False): + warnings.warn( + "returning HTTPException object is deprecated " + "(#2415) and will be removed, " + "please raise the exception instead", + DeprecationWarning, + ) + + resp, reset = await self.finish_response(request, resp, start_time) + finally: + self._request_in_progress = False + if self._handler_waiter is not None: + self._handler_waiter.set_result(None) + + return resp, reset + + async def start(self) -> None: + """Process incoming request. + + It reads request line, request headers and request payload, then + calls handle_request() method. Subclass has to override + handle_request(). start() handles various exceptions in request + or response handling. Connection is being closed always unless + keep_alive(True) specified. + """ + loop = self._loop + manager = self._manager + assert manager is not None + keepalive_timeout = self._keepalive_timeout + resp = None + assert self._request_factory is not None + assert self._request_handler is not None + + while not self._force_close: + if not self._messages: + try: + # wait for next request + self._waiter = loop.create_future() + await self._waiter + finally: + self._waiter = None + + message, payload = self._messages.popleft() + + # time is only fetched if logging is enabled as otherwise + # its thrown away and never used. + start = loop.time() if self._logging_enabled else None + + manager.requests_count += 1 + writer = StreamWriter(self, loop) + if isinstance(message, _ErrInfo): + # make request_factory work + request_handler = self._make_error_handler(message) + message = ERROR + else: + request_handler = self._request_handler + + # Important don't hold a reference to the current task + # as on traceback it will prevent the task from being + # collected and will cause a memory leak. + request = self._request_factory( + message, + payload, + self, + writer, + self._task_handler or asyncio.current_task(loop), # type: ignore[arg-type] + ) + try: + # a new task is used for copy context vars (#3406) + coro = self._handle_request(request, start, request_handler) + if sys.version_info >= (3, 12): + task = asyncio.Task(coro, loop=loop, eager_start=True) + else: + task = loop.create_task(coro) + try: + resp, reset = await task + except ConnectionError: + self.log_debug("Ignored premature client disconnection") + break + + # Drop the processed task from asyncio.Task.all_tasks() early + del task + if reset: + self.log_debug("Ignored premature client disconnection 2") + break + + # notify server about keep-alive + self._keepalive = bool(resp.keep_alive) + + # check payload + if not payload.is_eof(): + lingering_time = self._lingering_time + if not self._force_close and lingering_time: + self.log_debug( + "Start lingering close timer for %s sec.", lingering_time + ) + + now = loop.time() + end_t = now + lingering_time + + try: + while not payload.is_eof() and now < end_t: + async with ceil_timeout(end_t - now): + # read and ignore + await payload.readany() + now = loop.time() + except (asyncio.CancelledError, asyncio.TimeoutError): + if ( + sys.version_info >= (3, 11) + and (t := asyncio.current_task()) + and t.cancelling() + ): + raise + + # if payload still uncompleted + if not payload.is_eof() and not self._force_close: + self.log_debug("Uncompleted request.") + self.close() + + payload.set_exception(_PAYLOAD_ACCESS_ERROR) + + except asyncio.CancelledError: + self.log_debug("Ignored premature client disconnection") + self.force_close() + raise + except Exception as exc: + self.log_exception("Unhandled exception", exc_info=exc) + self.force_close() + except BaseException: + self.force_close() + raise + finally: + request._task = None # type: ignore[assignment] # Break reference cycle in case of exception + if self.transport is None and resp is not None: + self.log_debug("Ignored premature client disconnection.") + + if self._keepalive and not self._close and not self._force_close: + # start keep-alive timer + close_time = loop.time() + keepalive_timeout + self._next_keepalive_close_time = close_time + if self._keepalive_handle is None: + self._keepalive_handle = loop.call_at( + close_time, self._process_keepalive + ) + else: + break + + # remove handler, close transport if no handlers left + if not self._force_close: + self._task_handler = None + if self.transport is not None: + self.transport.close() + + async def finish_response( + self, request: BaseRequest, resp: StreamResponse, start_time: Optional[float] + ) -> Tuple[StreamResponse, bool]: + """Prepare the response and write_eof, then log access. + + This has to + be called within the context of any exception so the access logger + can get exception information. Returns True if the client disconnects + prematurely. + """ + request._finish() + if self._request_parser is not None: + self._request_parser.set_upgraded(False) + self._upgrade = False + if self._message_tail: + self._request_parser.feed_data(self._message_tail) + self._message_tail = b"" + try: + prepare_meth = resp.prepare + except AttributeError: + if resp is None: + self.log_exception("Missing return statement on request handler") + else: + self.log_exception( + "Web-handler should return a response instance, " + "got {!r}".format(resp) + ) + exc = HTTPInternalServerError() + resp = Response( + status=exc.status, reason=exc.reason, text=exc.text, headers=exc.headers + ) + prepare_meth = resp.prepare + try: + await prepare_meth(request) + await resp.write_eof() + except ConnectionError: + self.log_access(request, resp, start_time) + return resp, True + + self.log_access(request, resp, start_time) + return resp, False + + def handle_error( + self, + request: BaseRequest, + status: int = 500, + exc: Optional[BaseException] = None, + message: Optional[str] = None, + ) -> StreamResponse: + """Handle errors. + + Returns HTTP response with specific status code. Logs additional + information. It always closes current connection. + """ + if self._request_count == 1 and isinstance(exc, BadHttpMethod): + # BadHttpMethod is common when a client sends non-HTTP + # or encrypted traffic to an HTTP port. This is expected + # to happen when connected to the public internet so we log + # it at the debug level as to not fill logs with noise. + self.logger.debug( + "Error handling request from %s", request.remote, exc_info=exc + ) + else: + self.log_exception( + "Error handling request from %s", request.remote, exc_info=exc + ) + + # some data already got sent, connection is broken + if request.writer.output_size > 0: + raise ConnectionError( + "Response is sent already, cannot send another response " + "with the error message" + ) + + ct = "text/plain" + if status == HTTPStatus.INTERNAL_SERVER_ERROR: + title = "{0.value} {0.phrase}".format(HTTPStatus.INTERNAL_SERVER_ERROR) + msg = HTTPStatus.INTERNAL_SERVER_ERROR.description + tb = None + if self.debug: + with suppress(Exception): + tb = traceback.format_exc() + + if "text/html" in request.headers.get("Accept", ""): + if tb: + tb = html_escape(tb) + msg = f"

Traceback:

\n
{tb}
" + message = ( + "" + "{title}" + "\n

{title}

" + "\n{msg}\n\n" + ).format(title=title, msg=msg) + ct = "text/html" + else: + if tb: + msg = tb + message = title + "\n\n" + msg + + resp = Response(status=status, text=message, content_type=ct) + resp.force_close() + + return resp + + def _make_error_handler( + self, err_info: _ErrInfo + ) -> Callable[[BaseRequest], Awaitable[StreamResponse]]: + async def handler(request: BaseRequest) -> StreamResponse: + return self.handle_error( + request, err_info.status, err_info.exc, err_info.message + ) + + return handler diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_request.py b/venv/lib/python3.9/site-packages/aiohttp/web_request.py new file mode 100644 index 0000000..f2d4c51 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_request.py @@ -0,0 +1,927 @@ +import asyncio +import datetime +import io +import re +import socket +import string +import tempfile +import types +import warnings +from types import MappingProxyType +from typing import ( + TYPE_CHECKING, + Any, + Dict, + Final, + Iterator, + Mapping, + MutableMapping, + Optional, + Pattern, + Tuple, + Union, + cast, +) +from urllib.parse import parse_qsl + +import attr +from multidict import ( + CIMultiDict, + CIMultiDictProxy, + MultiDict, + MultiDictProxy, + MultiMapping, +) +from yarl import URL + +from . import hdrs +from ._cookie_helpers import parse_cookie_header +from .abc import AbstractStreamWriter +from .helpers import ( + _SENTINEL, + DEBUG, + ETAG_ANY, + LIST_QUOTED_ETAG_RE, + ChainMapProxy, + ETag, + HeadersMixin, + parse_http_date, + reify, + sentinel, + set_exception, +) +from .http_parser import RawRequestMessage +from .http_writer import HttpVersion +from .multipart import BodyPartReader, MultipartReader +from .streams import EmptyStreamReader, StreamReader +from .typedefs import ( + DEFAULT_JSON_DECODER, + JSONDecoder, + LooseHeaders, + RawHeaders, + StrOrURL, +) +from .web_exceptions import HTTPRequestEntityTooLarge +from .web_response import StreamResponse + +__all__ = ("BaseRequest", "FileField", "Request") + + +if TYPE_CHECKING: + from .web_app import Application + from .web_protocol import RequestHandler + from .web_urldispatcher import UrlMappingMatchInfo + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class FileField: + name: str + filename: str + file: io.BufferedReader + content_type: str + headers: CIMultiDictProxy[str] + + +_TCHAR: Final[str] = string.digits + string.ascii_letters + r"!#$%&'*+.^_`|~-" +# '-' at the end to prevent interpretation as range in a char class + +_TOKEN: Final[str] = rf"[{_TCHAR}]+" + +_QDTEXT: Final[str] = r"[{}]".format( + r"".join(chr(c) for c in (0x09, 0x20, 0x21) + tuple(range(0x23, 0x7F))) +) +# qdtext includes 0x5C to escape 0x5D ('\]') +# qdtext excludes obs-text (because obsoleted, and encoding not specified) + +_QUOTED_PAIR: Final[str] = r"\\[\t !-~]" + +_QUOTED_STRING: Final[str] = r'"(?:{quoted_pair}|{qdtext})*"'.format( + qdtext=_QDTEXT, quoted_pair=_QUOTED_PAIR +) + +_FORWARDED_PAIR: Final[str] = ( + r"({token})=({token}|{quoted_string})(:\d{{1,4}})?".format( + token=_TOKEN, quoted_string=_QUOTED_STRING + ) +) + +_QUOTED_PAIR_REPLACE_RE: Final[Pattern[str]] = re.compile(r"\\([\t !-~])") +# same pattern as _QUOTED_PAIR but contains a capture group + +_FORWARDED_PAIR_RE: Final[Pattern[str]] = re.compile(_FORWARDED_PAIR) + +############################################################ +# HTTP Request +############################################################ + + +class BaseRequest(MutableMapping[str, Any], HeadersMixin): + + POST_METHODS = { + hdrs.METH_PATCH, + hdrs.METH_POST, + hdrs.METH_PUT, + hdrs.METH_TRACE, + hdrs.METH_DELETE, + } + + ATTRS = HeadersMixin.ATTRS | frozenset( + [ + "_message", + "_protocol", + "_payload_writer", + "_payload", + "_headers", + "_method", + "_version", + "_rel_url", + "_post", + "_read_bytes", + "_state", + "_cache", + "_task", + "_client_max_size", + "_loop", + "_transport_sslcontext", + "_transport_peername", + ] + ) + _post: Optional[MultiDictProxy[Union[str, bytes, FileField]]] = None + _read_bytes: Optional[bytes] = None + + def __init__( + self, + message: RawRequestMessage, + payload: StreamReader, + protocol: "RequestHandler", + payload_writer: AbstractStreamWriter, + task: "asyncio.Task[None]", + loop: asyncio.AbstractEventLoop, + *, + client_max_size: int = 1024**2, + state: Optional[Dict[str, Any]] = None, + scheme: Optional[str] = None, + host: Optional[str] = None, + remote: Optional[str] = None, + ) -> None: + self._message = message + self._protocol = protocol + self._payload_writer = payload_writer + + self._payload = payload + self._headers: CIMultiDictProxy[str] = message.headers + self._method = message.method + self._version = message.version + self._cache: Dict[str, Any] = {} + url = message.url + if url.absolute: + if scheme is not None: + url = url.with_scheme(scheme) + if host is not None: + url = url.with_host(host) + # absolute URL is given, + # override auto-calculating url, host, and scheme + # all other properties should be good + self._cache["url"] = url + self._cache["host"] = url.host + self._cache["scheme"] = url.scheme + self._rel_url = url.relative() + else: + self._rel_url = url + if scheme is not None: + self._cache["scheme"] = scheme + if host is not None: + self._cache["host"] = host + + self._state = {} if state is None else state + self._task = task + self._client_max_size = client_max_size + self._loop = loop + + self._transport_sslcontext = protocol.ssl_context + self._transport_peername = protocol.peername + + if remote is not None: + self._cache["remote"] = remote + + def clone( + self, + *, + method: Union[str, _SENTINEL] = sentinel, + rel_url: Union[StrOrURL, _SENTINEL] = sentinel, + headers: Union[LooseHeaders, _SENTINEL] = sentinel, + scheme: Union[str, _SENTINEL] = sentinel, + host: Union[str, _SENTINEL] = sentinel, + remote: Union[str, _SENTINEL] = sentinel, + client_max_size: Union[int, _SENTINEL] = sentinel, + ) -> "BaseRequest": + """Clone itself with replacement some attributes. + + Creates and returns a new instance of Request object. If no parameters + are given, an exact copy is returned. If a parameter is not passed, it + will reuse the one from the current request object. + """ + if self._read_bytes: + raise RuntimeError("Cannot clone request after reading its content") + + dct: Dict[str, Any] = {} + if method is not sentinel: + dct["method"] = method + if rel_url is not sentinel: + new_url: URL = URL(rel_url) + dct["url"] = new_url + dct["path"] = str(new_url) + if headers is not sentinel: + # a copy semantic + dct["headers"] = CIMultiDictProxy(CIMultiDict(headers)) + dct["raw_headers"] = tuple( + (k.encode("utf-8"), v.encode("utf-8")) + for k, v in dct["headers"].items() + ) + + message = self._message._replace(**dct) + + kwargs = {} + if scheme is not sentinel: + kwargs["scheme"] = scheme + if host is not sentinel: + kwargs["host"] = host + if remote is not sentinel: + kwargs["remote"] = remote + if client_max_size is sentinel: + client_max_size = self._client_max_size + + return self.__class__( + message, + self._payload, + self._protocol, + self._payload_writer, + self._task, + self._loop, + client_max_size=client_max_size, + state=self._state.copy(), + **kwargs, + ) + + @property + def task(self) -> "asyncio.Task[None]": + return self._task + + @property + def protocol(self) -> "RequestHandler": + return self._protocol + + @property + def transport(self) -> Optional[asyncio.Transport]: + if self._protocol is None: + return None + return self._protocol.transport + + @property + def writer(self) -> AbstractStreamWriter: + return self._payload_writer + + @property + def client_max_size(self) -> int: + return self._client_max_size + + @reify + def message(self) -> RawRequestMessage: + warnings.warn("Request.message is deprecated", DeprecationWarning, stacklevel=3) + return self._message + + @reify + def rel_url(self) -> URL: + return self._rel_url + + @reify + def loop(self) -> asyncio.AbstractEventLoop: + warnings.warn( + "request.loop property is deprecated", DeprecationWarning, stacklevel=2 + ) + return self._loop + + # MutableMapping API + + def __getitem__(self, key: str) -> Any: + return self._state[key] + + def __setitem__(self, key: str, value: Any) -> None: + self._state[key] = value + + def __delitem__(self, key: str) -> None: + del self._state[key] + + def __len__(self) -> int: + return len(self._state) + + def __iter__(self) -> Iterator[str]: + return iter(self._state) + + ######## + + @reify + def secure(self) -> bool: + """A bool indicating if the request is handled with SSL.""" + return self.scheme == "https" + + @reify + def forwarded(self) -> Tuple[Mapping[str, str], ...]: + """A tuple containing all parsed Forwarded header(s). + + Makes an effort to parse Forwarded headers as specified by RFC 7239: + + - It adds one (immutable) dictionary per Forwarded 'field-value', ie + per proxy. The element corresponds to the data in the Forwarded + field-value added by the first proxy encountered by the client. Each + subsequent item corresponds to those added by later proxies. + - It checks that every value has valid syntax in general as specified + in section 4: either a 'token' or a 'quoted-string'. + - It un-escapes found escape sequences. + - It does NOT validate 'by' and 'for' contents as specified in section + 6. + - It does NOT validate 'host' contents (Host ABNF). + - It does NOT validate 'proto' contents for valid URI scheme names. + + Returns a tuple containing one or more immutable dicts + """ + elems = [] + for field_value in self._message.headers.getall(hdrs.FORWARDED, ()): + length = len(field_value) + pos = 0 + need_separator = False + elem: Dict[str, str] = {} + elems.append(types.MappingProxyType(elem)) + while 0 <= pos < length: + match = _FORWARDED_PAIR_RE.match(field_value, pos) + if match is not None: # got a valid forwarded-pair + if need_separator: + # bad syntax here, skip to next comma + pos = field_value.find(",", pos) + else: + name, value, port = match.groups() + if value[0] == '"': + # quoted string: remove quotes and unescape + value = _QUOTED_PAIR_REPLACE_RE.sub(r"\1", value[1:-1]) + if port: + value += port + elem[name.lower()] = value + pos += len(match.group(0)) + need_separator = True + elif field_value[pos] == ",": # next forwarded-element + need_separator = False + elem = {} + elems.append(types.MappingProxyType(elem)) + pos += 1 + elif field_value[pos] == ";": # next forwarded-pair + need_separator = False + pos += 1 + elif field_value[pos] in " \t": + # Allow whitespace even between forwarded-pairs, though + # RFC 7239 doesn't. This simplifies code and is in line + # with Postel's law. + pos += 1 + else: + # bad syntax here, skip to next comma + pos = field_value.find(",", pos) + return tuple(elems) + + @reify + def scheme(self) -> str: + """A string representing the scheme of the request. + + Hostname is resolved in this order: + + - overridden value by .clone(scheme=new_scheme) call. + - type of connection to peer: HTTPS if socket is SSL, HTTP otherwise. + + 'http' or 'https'. + """ + if self._transport_sslcontext: + return "https" + else: + return "http" + + @reify + def method(self) -> str: + """Read only property for getting HTTP method. + + The value is upper-cased str like 'GET', 'POST', 'PUT' etc. + """ + return self._method + + @reify + def version(self) -> HttpVersion: + """Read only property for getting HTTP version of request. + + Returns aiohttp.protocol.HttpVersion instance. + """ + return self._version + + @reify + def host(self) -> str: + """Hostname of the request. + + Hostname is resolved in this order: + + - overridden value by .clone(host=new_host) call. + - HOST HTTP header + - socket.getfqdn() value + + For example, 'example.com' or 'localhost:8080'. + + For historical reasons, the port number may be included. + """ + host = self._message.headers.get(hdrs.HOST) + if host is not None: + return host + return socket.getfqdn() + + @reify + def remote(self) -> Optional[str]: + """Remote IP of client initiated HTTP request. + + The IP is resolved in this order: + + - overridden value by .clone(remote=new_remote) call. + - peername of opened socket + """ + if self._transport_peername is None: + return None + if isinstance(self._transport_peername, (list, tuple)): + return str(self._transport_peername[0]) + return str(self._transport_peername) + + @reify + def url(self) -> URL: + """The full URL of the request.""" + # authority is used here because it may include the port number + # and we want yarl to parse it correctly + return URL.build(scheme=self.scheme, authority=self.host).join(self._rel_url) + + @reify + def path(self) -> str: + """The URL including *PATH INFO* without the host or scheme. + + E.g., ``/app/blog`` + """ + return self._rel_url.path + + @reify + def path_qs(self) -> str: + """The URL including PATH_INFO and the query string. + + E.g, /app/blog?id=10 + """ + return str(self._rel_url) + + @reify + def raw_path(self) -> str: + """The URL including raw *PATH INFO* without the host or scheme. + + Warning, the path is unquoted and may contains non valid URL characters + + E.g., ``/my%2Fpath%7Cwith%21some%25strange%24characters`` + """ + return self._message.path + + @reify + def query(self) -> "MultiMapping[str]": + """A multidict with all the variables in the query string.""" + return self._rel_url.query + + @reify + def query_string(self) -> str: + """The query string in the URL. + + E.g., id=10 + """ + return self._rel_url.query_string + + @reify + def headers(self) -> CIMultiDictProxy[str]: + """A case-insensitive multidict proxy with all headers.""" + return self._headers + + @reify + def raw_headers(self) -> RawHeaders: + """A sequence of pairs for all headers.""" + return self._message.raw_headers + + @reify + def if_modified_since(self) -> Optional[datetime.datetime]: + """The value of If-Modified-Since HTTP header, or None. + + This header is represented as a `datetime` object. + """ + return parse_http_date(self.headers.get(hdrs.IF_MODIFIED_SINCE)) + + @reify + def if_unmodified_since(self) -> Optional[datetime.datetime]: + """The value of If-Unmodified-Since HTTP header, or None. + + This header is represented as a `datetime` object. + """ + return parse_http_date(self.headers.get(hdrs.IF_UNMODIFIED_SINCE)) + + @staticmethod + def _etag_values(etag_header: str) -> Iterator[ETag]: + """Extract `ETag` objects from raw header.""" + if etag_header == ETAG_ANY: + yield ETag( + is_weak=False, + value=ETAG_ANY, + ) + else: + for match in LIST_QUOTED_ETAG_RE.finditer(etag_header): + is_weak, value, garbage = match.group(2, 3, 4) + # Any symbol captured by 4th group means + # that the following sequence is invalid. + if garbage: + break + + yield ETag( + is_weak=bool(is_weak), + value=value, + ) + + @classmethod + def _if_match_or_none_impl( + cls, header_value: Optional[str] + ) -> Optional[Tuple[ETag, ...]]: + if not header_value: + return None + + return tuple(cls._etag_values(header_value)) + + @reify + def if_match(self) -> Optional[Tuple[ETag, ...]]: + """The value of If-Match HTTP header, or None. + + This header is represented as a `tuple` of `ETag` objects. + """ + return self._if_match_or_none_impl(self.headers.get(hdrs.IF_MATCH)) + + @reify + def if_none_match(self) -> Optional[Tuple[ETag, ...]]: + """The value of If-None-Match HTTP header, or None. + + This header is represented as a `tuple` of `ETag` objects. + """ + return self._if_match_or_none_impl(self.headers.get(hdrs.IF_NONE_MATCH)) + + @reify + def if_range(self) -> Optional[datetime.datetime]: + """The value of If-Range HTTP header, or None. + + This header is represented as a `datetime` object. + """ + return parse_http_date(self.headers.get(hdrs.IF_RANGE)) + + @reify + def keep_alive(self) -> bool: + """Is keepalive enabled by client?""" + return not self._message.should_close + + @reify + def cookies(self) -> Mapping[str, str]: + """Return request cookies. + + A read-only dictionary-like object. + """ + # Use parse_cookie_header for RFC 6265 compliant Cookie header parsing + # that accepts special characters in cookie names (fixes #2683) + parsed = parse_cookie_header(self.headers.get(hdrs.COOKIE, "")) + # Extract values from Morsel objects + return MappingProxyType({name: morsel.value for name, morsel in parsed}) + + @reify + def http_range(self) -> slice: + """The content of Range HTTP header. + + Return a slice instance. + + """ + rng = self._headers.get(hdrs.RANGE) + start, end = None, None + if rng is not None: + try: + pattern = r"^bytes=(\d*)-(\d*)$" + start, end = re.findall(pattern, rng, re.ASCII)[0] + except IndexError: # pattern was not found in header + raise ValueError("range not in acceptable format") + + end = int(end) if end else None + start = int(start) if start else None + + if start is None and end is not None: + # end with no start is to return tail of content + start = -end + end = None + + if start is not None and end is not None: + # end is inclusive in range header, exclusive for slice + end += 1 + + if start >= end: + raise ValueError("start cannot be after end") + + if start is end is None: # No valid range supplied + raise ValueError("No start or end of range specified") + + return slice(start, end, 1) + + @reify + def content(self) -> StreamReader: + """Return raw payload stream.""" + return self._payload + + @property + def has_body(self) -> bool: + """Return True if request's HTTP BODY can be read, False otherwise.""" + warnings.warn( + "Deprecated, use .can_read_body #2005", DeprecationWarning, stacklevel=2 + ) + return not self._payload.at_eof() + + @property + def can_read_body(self) -> bool: + """Return True if request's HTTP BODY can be read, False otherwise.""" + return not self._payload.at_eof() + + @reify + def body_exists(self) -> bool: + """Return True if request has HTTP BODY, False otherwise.""" + return type(self._payload) is not EmptyStreamReader + + async def release(self) -> None: + """Release request. + + Eat unread part of HTTP BODY if present. + """ + while not self._payload.at_eof(): + await self._payload.readany() + + async def read(self) -> bytes: + """Read request body if present. + + Returns bytes object with full request content. + """ + if self._read_bytes is None: + body = bytearray() + while True: + chunk = await self._payload.readany() + body.extend(chunk) + if self._client_max_size: + body_size = len(body) + if body_size >= self._client_max_size: + raise HTTPRequestEntityTooLarge( + max_size=self._client_max_size, actual_size=body_size + ) + if not chunk: + break + self._read_bytes = bytes(body) + return self._read_bytes + + async def text(self) -> str: + """Return BODY as text using encoding from .charset.""" + bytes_body = await self.read() + encoding = self.charset or "utf-8" + return bytes_body.decode(encoding) + + async def json(self, *, loads: JSONDecoder = DEFAULT_JSON_DECODER) -> Any: + """Return BODY as JSON.""" + body = await self.text() + return loads(body) + + async def multipart(self) -> MultipartReader: + """Return async iterator to process BODY as multipart.""" + return MultipartReader( + self._headers, + self._payload, + max_field_size=self._protocol.max_field_size, + max_headers=self._protocol.max_headers, + ) + + async def post(self) -> "MultiDictProxy[Union[str, bytes, FileField]]": + """Return POST parameters.""" + if self._post is not None: + return self._post + if self._method not in self.POST_METHODS: + self._post = MultiDictProxy(MultiDict()) + return self._post + + content_type = self.content_type + if content_type not in ( + "", + "application/x-www-form-urlencoded", + "multipart/form-data", + ): + self._post = MultiDictProxy(MultiDict()) + return self._post + + out: MultiDict[Union[str, bytes, FileField]] = MultiDict() + + if content_type == "multipart/form-data": + multipart = await self.multipart() + max_size = self._client_max_size + + size = 0 + while (field := await multipart.next()) is not None: + field_ct = field.headers.get(hdrs.CONTENT_TYPE) + + if isinstance(field, BodyPartReader): + if field.name is None: + raise ValueError("Multipart field missing name.") + + # Note that according to RFC 7578, the Content-Type header + # is optional, even for files, so we can't assume it's + # present. + # https://tools.ietf.org/html/rfc7578#section-4.4 + if field.filename: + # store file in temp file + tmp = await self._loop.run_in_executor( + None, tempfile.TemporaryFile + ) + while chunk := await field.read_chunk(size=2**18): + async for decoded_chunk in field.decode_iter(chunk): + await self._loop.run_in_executor( + None, tmp.write, decoded_chunk + ) + size += len(decoded_chunk) + if 0 < max_size < size: + await self._loop.run_in_executor(None, tmp.close) + raise HTTPRequestEntityTooLarge( + max_size=max_size, actual_size=size + ) + await self._loop.run_in_executor(None, tmp.seek, 0) + + if field_ct is None: + field_ct = "application/octet-stream" + + ff = FileField( + field.name, + field.filename, + cast(io.BufferedReader, tmp), + field_ct, + field.headers, + ) + out.add(field.name, ff) + else: + # deal with ordinary data + raw_data = bytearray() + while chunk := await field.read_chunk(): + size += len(chunk) + if 0 < max_size < size: + raise HTTPRequestEntityTooLarge( + max_size=max_size, actual_size=size + ) + raw_data.extend(chunk) + + value = bytearray() + # form-data doesn't support compression, so don't need to check size again. + async for d in field.decode_iter(raw_data): + value.extend(d) + + if field_ct is None or field_ct.startswith("text/"): + charset = field.get_charset(default="utf-8") + out.add(field.name, value.decode(charset)) + else: + out.add(field.name, value) + else: + raise ValueError( + "To decode nested multipart you need to use custom reader", + ) + else: + data = await self.read() + if data: + charset = self.charset or "utf-8" + out.extend( + parse_qsl( + data.rstrip().decode(charset), + keep_blank_values=True, + encoding=charset, + ) + ) + + self._post = MultiDictProxy(out) + return self._post + + def get_extra_info(self, name: str, default: Any = None) -> Any: + """Extra info from protocol transport""" + protocol = self._protocol + if protocol is None: + return default + + transport = protocol.transport + if transport is None: + return default + + return transport.get_extra_info(name, default) + + def __repr__(self) -> str: + ascii_encodable_path = self.path.encode("ascii", "backslashreplace").decode( + "ascii" + ) + return "<{} {} {} >".format( + self.__class__.__name__, self._method, ascii_encodable_path + ) + + def __eq__(self, other: object) -> bool: + return id(self) == id(other) + + def __bool__(self) -> bool: + return True + + async def _prepare_hook(self, response: StreamResponse) -> None: + return + + def _cancel(self, exc: BaseException) -> None: + set_exception(self._payload, exc) + + def _finish(self) -> None: + if self._post is None or self.content_type != "multipart/form-data": + return + + # NOTE: Release file descriptors for the + # NOTE: `tempfile.Temporaryfile`-created `_io.BufferedRandom` + # NOTE: instances of files sent within multipart request body + # NOTE: via HTTP POST request. + for file_name, file_field_object in self._post.items(): + if isinstance(file_field_object, FileField): + file_field_object.file.close() + + +class Request(BaseRequest): + + ATTRS = BaseRequest.ATTRS | frozenset(["_match_info"]) + + _match_info: Optional["UrlMappingMatchInfo"] = None + + if DEBUG: + + def __setattr__(self, name: str, val: Any) -> None: + if name not in self.ATTRS: + warnings.warn( + "Setting custom {}.{} attribute " + "is discouraged".format(self.__class__.__name__, name), + DeprecationWarning, + stacklevel=2, + ) + super().__setattr__(name, val) + + def clone( + self, + *, + method: Union[str, _SENTINEL] = sentinel, + rel_url: Union[StrOrURL, _SENTINEL] = sentinel, + headers: Union[LooseHeaders, _SENTINEL] = sentinel, + scheme: Union[str, _SENTINEL] = sentinel, + host: Union[str, _SENTINEL] = sentinel, + remote: Union[str, _SENTINEL] = sentinel, + client_max_size: Union[int, _SENTINEL] = sentinel, + ) -> "Request": + ret = super().clone( + method=method, + rel_url=rel_url, + headers=headers, + scheme=scheme, + host=host, + remote=remote, + client_max_size=client_max_size, + ) + new_ret = cast(Request, ret) + new_ret._match_info = self._match_info + return new_ret + + @reify + def match_info(self) -> "UrlMappingMatchInfo": + """Result of route resolving.""" + match_info = self._match_info + assert match_info is not None + return match_info + + @property + def app(self) -> "Application": + """Application instance.""" + match_info = self._match_info + assert match_info is not None + return match_info.current_app + + @property + def config_dict(self) -> ChainMapProxy: + match_info = self._match_info + assert match_info is not None + lst = match_info.apps + app = self.app + idx = lst.index(app) + sublist = list(reversed(lst[: idx + 1])) + return ChainMapProxy(sublist) + + async def _prepare_hook(self, response: StreamResponse) -> None: + match_info = self._match_info + if match_info is None: + return + for app in match_info._apps: + if on_response_prepare := app.on_response_prepare: + await on_response_prepare.send(self, response) diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_response.py b/venv/lib/python3.9/site-packages/aiohttp/web_response.py new file mode 100644 index 0000000..364270e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_response.py @@ -0,0 +1,856 @@ +import asyncio +import collections.abc +import datetime +import enum +import json +import math +import time +import warnings +from concurrent.futures import Executor +from http import HTTPStatus +from http.cookies import SimpleCookie +from typing import ( + TYPE_CHECKING, + Any, + Dict, + Iterator, + MutableMapping, + Optional, + Union, + cast, +) + +from multidict import CIMultiDict, istr + +from . import hdrs, payload +from .abc import AbstractStreamWriter +from .compression_utils import ZLibCompressor +from .helpers import ( + ETAG_ANY, + QUOTED_ETAG_RE, + ETag, + HeadersMixin, + must_be_empty_body, + parse_http_date, + rfc822_formatted_time, + sentinel, + should_remove_content_length, + validate_etag_value, +) +from .http import SERVER_SOFTWARE, HttpVersion10, HttpVersion11 +from .payload import Payload +from .typedefs import JSONEncoder, LooseHeaders + +REASON_PHRASES = {http_status.value: http_status.phrase for http_status in HTTPStatus} +LARGE_BODY_SIZE = 1024**2 + +__all__ = ("ContentCoding", "StreamResponse", "Response", "json_response") + + +if TYPE_CHECKING: + from .web_request import BaseRequest + + BaseClass = MutableMapping[str, Any] +else: + BaseClass = collections.abc.MutableMapping + + +# TODO(py311): Convert to StrEnum for wider use +class ContentCoding(enum.Enum): + # The content codings that we have support for. + # + # Additional registered codings are listed at: + # https://www.iana.org/assignments/http-parameters/http-parameters.xhtml#content-coding + deflate = "deflate" + gzip = "gzip" + identity = "identity" + + +CONTENT_CODINGS = {coding.value: coding for coding in ContentCoding} + +############################################################ +# HTTP Response classes +############################################################ + + +class StreamResponse(BaseClass, HeadersMixin): + + _body: Union[None, bytes, bytearray, Payload] + _length_check = True + _body = None + _keep_alive: Optional[bool] = None + _chunked: bool = False + _compression: bool = False + _compression_strategy: Optional[int] = None + _compression_force: Optional[ContentCoding] = None + _req: Optional["BaseRequest"] = None + _payload_writer: Optional[AbstractStreamWriter] = None + _eof_sent: bool = False + _must_be_empty_body: Optional[bool] = None + _body_length = 0 + _cookies: Optional[SimpleCookie] = None + _send_headers_immediately = True + + def __init__( + self, + *, + status: int = 200, + reason: Optional[str] = None, + headers: Optional[LooseHeaders] = None, + _real_headers: Optional[CIMultiDict[str]] = None, + ) -> None: + """Initialize a new stream response object. + + _real_headers is an internal parameter used to pass a pre-populated + headers object. It is used by the `Response` class to avoid copying + the headers when creating a new response object. It is not intended + to be used by external code. + """ + self._state: Dict[str, Any] = {} + + if _real_headers is not None: + self._headers = _real_headers + elif headers is not None: + self._headers: CIMultiDict[str] = CIMultiDict(headers) + else: + self._headers = CIMultiDict() + + self._set_status(status, reason) + + @property + def prepared(self) -> bool: + return self._eof_sent or self._payload_writer is not None + + @property + def task(self) -> "Optional[asyncio.Task[None]]": + if self._req: + return self._req.task + else: + return None + + @property + def status(self) -> int: + return self._status + + @property + def chunked(self) -> bool: + return self._chunked + + @property + def compression(self) -> bool: + return self._compression + + @property + def reason(self) -> str: + return self._reason + + def set_status( + self, + status: int, + reason: Optional[str] = None, + ) -> None: + assert ( + not self.prepared + ), "Cannot change the response status code after the headers have been sent" + self._set_status(status, reason) + + def _set_status(self, status: int, reason: Optional[str]) -> None: + self._status = int(status) + if reason is None: + reason = REASON_PHRASES.get(self._status, "") + elif "\r" in reason or "\n" in reason: + raise ValueError("Reason cannot contain \\r or \\n") + self._reason = reason + + @property + def keep_alive(self) -> Optional[bool]: + return self._keep_alive + + def force_close(self) -> None: + self._keep_alive = False + + @property + def body_length(self) -> int: + return self._body_length + + @property + def output_length(self) -> int: + warnings.warn("output_length is deprecated", DeprecationWarning) + assert self._payload_writer + return self._payload_writer.buffer_size + + def enable_chunked_encoding(self, chunk_size: Optional[int] = None) -> None: + """Enables automatic chunked transfer encoding.""" + if hdrs.CONTENT_LENGTH in self._headers: + raise RuntimeError( + "You can't enable chunked encoding when a content length is set" + ) + if chunk_size is not None: + warnings.warn("Chunk size is deprecated #1615", DeprecationWarning) + self._chunked = True + + def enable_compression( + self, + force: Optional[Union[bool, ContentCoding]] = None, + strategy: Optional[int] = None, + ) -> None: + """Enables response compression encoding.""" + # Backwards compatibility for when force was a bool <0.17. + if isinstance(force, bool): + force = ContentCoding.deflate if force else ContentCoding.identity + warnings.warn( + "Using boolean for force is deprecated #3318", DeprecationWarning + ) + elif force is not None: + assert isinstance( + force, ContentCoding + ), "force should one of None, bool or ContentEncoding" + + self._compression = True + self._compression_force = force + self._compression_strategy = strategy + + @property + def headers(self) -> "CIMultiDict[str]": + return self._headers + + @property + def cookies(self) -> SimpleCookie: + if self._cookies is None: + self._cookies = SimpleCookie() + return self._cookies + + def set_cookie( + self, + name: str, + value: str, + *, + expires: Optional[str] = None, + domain: Optional[str] = None, + max_age: Optional[Union[int, str]] = None, + path: str = "/", + secure: Optional[bool] = None, + httponly: Optional[bool] = None, + version: Optional[str] = None, + samesite: Optional[str] = None, + partitioned: Optional[bool] = None, + ) -> None: + """Set or update response cookie. + + Sets new cookie or updates existent with new value. + Also updates only those params which are not None. + """ + if self._cookies is None: + self._cookies = SimpleCookie() + + self._cookies[name] = value + c = self._cookies[name] + + if expires is not None: + c["expires"] = expires + elif c.get("expires") == "Thu, 01 Jan 1970 00:00:00 GMT": + del c["expires"] + + if domain is not None: + c["domain"] = domain + + if max_age is not None: + c["max-age"] = str(max_age) + elif "max-age" in c: + del c["max-age"] + + c["path"] = path + + if secure is not None: + c["secure"] = secure + if httponly is not None: + c["httponly"] = httponly + if version is not None: + c["version"] = version + if samesite is not None: + c["samesite"] = samesite + + if partitioned is not None: + c["partitioned"] = partitioned + + def del_cookie( + self, + name: str, + *, + domain: Optional[str] = None, + path: str = "/", + secure: Optional[bool] = None, + httponly: Optional[bool] = None, + samesite: Optional[str] = None, + ) -> None: + """Delete cookie. + + Creates new empty expired cookie. + """ + # TODO: do we need domain/path here? + if self._cookies is not None: + self._cookies.pop(name, None) + self.set_cookie( + name, + "", + max_age=0, + expires="Thu, 01 Jan 1970 00:00:00 GMT", + domain=domain, + path=path, + secure=secure, + httponly=httponly, + samesite=samesite, + ) + + @property + def content_length(self) -> Optional[int]: + # Just a placeholder for adding setter + return super().content_length + + @content_length.setter + def content_length(self, value: Optional[int]) -> None: + if value is not None: + value = int(value) + if self._chunked: + raise RuntimeError( + "You can't set content length when chunked encoding is enable" + ) + self._headers[hdrs.CONTENT_LENGTH] = str(value) + else: + self._headers.pop(hdrs.CONTENT_LENGTH, None) + + @property + def content_type(self) -> str: + # Just a placeholder for adding setter + return super().content_type + + @content_type.setter + def content_type(self, value: str) -> None: + self.content_type # read header values if needed + self._content_type = str(value) + self._generate_content_type_header() + + @property + def charset(self) -> Optional[str]: + # Just a placeholder for adding setter + return super().charset + + @charset.setter + def charset(self, value: Optional[str]) -> None: + ctype = self.content_type # read header values if needed + if ctype == "application/octet-stream": + raise RuntimeError( + "Setting charset for application/octet-stream " + "doesn't make sense, setup content_type first" + ) + assert self._content_dict is not None + if value is None: + self._content_dict.pop("charset", None) + else: + self._content_dict["charset"] = str(value).lower() + self._generate_content_type_header() + + @property + def last_modified(self) -> Optional[datetime.datetime]: + """The value of Last-Modified HTTP header, or None. + + This header is represented as a `datetime` object. + """ + return parse_http_date(self._headers.get(hdrs.LAST_MODIFIED)) + + @last_modified.setter + def last_modified( + self, value: Optional[Union[int, float, datetime.datetime, str]] + ) -> None: + if value is None: + self._headers.pop(hdrs.LAST_MODIFIED, None) + elif isinstance(value, (int, float)): + self._headers[hdrs.LAST_MODIFIED] = time.strftime( + "%a, %d %b %Y %H:%M:%S GMT", time.gmtime(math.ceil(value)) + ) + elif isinstance(value, datetime.datetime): + self._headers[hdrs.LAST_MODIFIED] = time.strftime( + "%a, %d %b %Y %H:%M:%S GMT", value.utctimetuple() + ) + elif isinstance(value, str): + self._headers[hdrs.LAST_MODIFIED] = value + else: + msg = f"Unsupported type for last_modified: {type(value).__name__}" + raise TypeError(msg) + + @property + def etag(self) -> Optional[ETag]: + quoted_value = self._headers.get(hdrs.ETAG) + if not quoted_value: + return None + elif quoted_value == ETAG_ANY: + return ETag(value=ETAG_ANY) + match = QUOTED_ETAG_RE.fullmatch(quoted_value) + if not match: + return None + is_weak, value = match.group(1, 2) + return ETag( + is_weak=bool(is_weak), + value=value, + ) + + @etag.setter + def etag(self, value: Optional[Union[ETag, str]]) -> None: + if value is None: + self._headers.pop(hdrs.ETAG, None) + elif (isinstance(value, str) and value == ETAG_ANY) or ( + isinstance(value, ETag) and value.value == ETAG_ANY + ): + self._headers[hdrs.ETAG] = ETAG_ANY + elif isinstance(value, str): + validate_etag_value(value) + self._headers[hdrs.ETAG] = f'"{value}"' + elif isinstance(value, ETag) and isinstance(value.value, str): + validate_etag_value(value.value) + hdr_value = f'W/"{value.value}"' if value.is_weak else f'"{value.value}"' + self._headers[hdrs.ETAG] = hdr_value + else: + raise ValueError( + f"Unsupported etag type: {type(value)}. " + f"etag must be str, ETag or None" + ) + + def _generate_content_type_header( + self, CONTENT_TYPE: istr = hdrs.CONTENT_TYPE + ) -> None: + assert self._content_dict is not None + assert self._content_type is not None + params = "; ".join(f"{k}={v}" for k, v in self._content_dict.items()) + if params: + ctype = self._content_type + "; " + params + else: + ctype = self._content_type + self._headers[CONTENT_TYPE] = ctype + + async def _do_start_compression(self, coding: ContentCoding) -> None: + if coding is ContentCoding.identity: + return + assert self._payload_writer is not None + self._headers[hdrs.CONTENT_ENCODING] = coding.value + self._payload_writer.enable_compression( + coding.value, self._compression_strategy + ) + # Compressed payload may have different content length, + # remove the header + self._headers.popall(hdrs.CONTENT_LENGTH, None) + + async def _start_compression(self, request: "BaseRequest") -> None: + if self._compression_force: + await self._do_start_compression(self._compression_force) + return + # Encoding comparisons should be case-insensitive + # https://www.rfc-editor.org/rfc/rfc9110#section-8.4.1 + accept_encoding = request.headers.get(hdrs.ACCEPT_ENCODING, "").lower() + for value, coding in CONTENT_CODINGS.items(): + if value in accept_encoding: + await self._do_start_compression(coding) + return + + async def prepare(self, request: "BaseRequest") -> Optional[AbstractStreamWriter]: + if self._eof_sent: + return None + if self._payload_writer is not None: + return self._payload_writer + self._must_be_empty_body = must_be_empty_body(request.method, self.status) + return await self._start(request) + + async def _start(self, request: "BaseRequest") -> AbstractStreamWriter: + self._req = request + writer = self._payload_writer = request._payload_writer + + await self._prepare_headers() + await request._prepare_hook(self) + await self._write_headers() + + return writer + + async def _prepare_headers(self) -> None: + request = self._req + assert request is not None + writer = self._payload_writer + assert writer is not None + keep_alive = self._keep_alive + if keep_alive is None: + keep_alive = request.keep_alive + self._keep_alive = keep_alive + + version = request.version + + headers = self._headers + if self._cookies: + for cookie in self._cookies.values(): + value = cookie.output(header="")[1:] + headers.add(hdrs.SET_COOKIE, value) + + if self._compression: + await self._start_compression(request) + + if self._chunked: + if version != HttpVersion11: + raise RuntimeError( + "Using chunked encoding is forbidden " + "for HTTP/{0.major}.{0.minor}".format(request.version) + ) + if not self._must_be_empty_body: + writer.enable_chunking() + headers[hdrs.TRANSFER_ENCODING] = "chunked" + elif self._length_check: # Disabled for WebSockets + writer.length = self.content_length + if writer.length is None: + if version >= HttpVersion11: + if not self._must_be_empty_body: + writer.enable_chunking() + headers[hdrs.TRANSFER_ENCODING] = "chunked" + elif not self._must_be_empty_body: + keep_alive = False + + # HTTP 1.1: https://tools.ietf.org/html/rfc7230#section-3.3.2 + # HTTP 1.0: https://tools.ietf.org/html/rfc1945#section-10.4 + if self._must_be_empty_body: + if hdrs.CONTENT_LENGTH in headers and should_remove_content_length( + request.method, self.status + ): + del headers[hdrs.CONTENT_LENGTH] + # https://datatracker.ietf.org/doc/html/rfc9112#section-6.1-10 + # https://datatracker.ietf.org/doc/html/rfc9112#section-6.1-13 + if hdrs.TRANSFER_ENCODING in headers: + del headers[hdrs.TRANSFER_ENCODING] + elif (writer.length if self._length_check else self.content_length) != 0: + # https://www.rfc-editor.org/rfc/rfc9110#section-8.3-5 + headers.setdefault(hdrs.CONTENT_TYPE, "application/octet-stream") + headers.setdefault(hdrs.DATE, rfc822_formatted_time()) + headers.setdefault(hdrs.SERVER, SERVER_SOFTWARE) + + # connection header + if hdrs.CONNECTION not in headers: + if keep_alive: + if version == HttpVersion10: + headers[hdrs.CONNECTION] = "keep-alive" + elif version == HttpVersion11: + headers[hdrs.CONNECTION] = "close" + + async def _write_headers(self) -> None: + request = self._req + assert request is not None + writer = self._payload_writer + assert writer is not None + # status line + version = request.version + status_line = f"HTTP/{version[0]}.{version[1]} {self._status} {self._reason}" + await writer.write_headers(status_line, self._headers) + # Send headers immediately if not opted into buffering + if self._send_headers_immediately: + writer.send_headers() + + async def write(self, data: Union[bytes, bytearray, memoryview]) -> None: + assert isinstance( + data, (bytes, bytearray, memoryview) + ), "data argument must be byte-ish (%r)" % type(data) + + if self._eof_sent: + raise RuntimeError("Cannot call write() after write_eof()") + if self._payload_writer is None: + raise RuntimeError("Cannot call write() before prepare()") + + await self._payload_writer.write(data) + + async def drain(self) -> None: + assert not self._eof_sent, "EOF has already been sent" + assert self._payload_writer is not None, "Response has not been started" + warnings.warn( + "drain method is deprecated, use await resp.write()", + DeprecationWarning, + stacklevel=2, + ) + await self._payload_writer.drain() + + async def write_eof(self, data: bytes = b"") -> None: + assert isinstance( + data, (bytes, bytearray, memoryview) + ), "data argument must be byte-ish (%r)" % type(data) + + if self._eof_sent: + return + + assert self._payload_writer is not None, "Response has not been started" + + await self._payload_writer.write_eof(data) + self._eof_sent = True + self._req = None + self._body_length = self._payload_writer.output_size + self._payload_writer = None + + def __repr__(self) -> str: + if self._eof_sent: + info = "eof" + elif self.prepared: + assert self._req is not None + info = f"{self._req.method} {self._req.path} " + else: + info = "not prepared" + return f"<{self.__class__.__name__} {self.reason} {info}>" + + def __getitem__(self, key: str) -> Any: + return self._state[key] + + def __setitem__(self, key: str, value: Any) -> None: + self._state[key] = value + + def __delitem__(self, key: str) -> None: + del self._state[key] + + def __len__(self) -> int: + return len(self._state) + + def __iter__(self) -> Iterator[str]: + return iter(self._state) + + def __hash__(self) -> int: + return hash(id(self)) + + def __eq__(self, other: object) -> bool: + return self is other + + def __bool__(self) -> bool: + return True + + +class Response(StreamResponse): + + _compressed_body: Optional[bytes] = None + _send_headers_immediately = False + + def __init__( + self, + *, + body: Any = None, + status: int = 200, + reason: Optional[str] = None, + text: Optional[str] = None, + headers: Optional[LooseHeaders] = None, + content_type: Optional[str] = None, + charset: Optional[str] = None, + zlib_executor_size: Optional[int] = None, + zlib_executor: Optional[Executor] = None, + ) -> None: + if body is not None and text is not None: + raise ValueError("body and text are not allowed together") + + if headers is None: + real_headers: CIMultiDict[str] = CIMultiDict() + else: + real_headers = CIMultiDict(headers) + + if content_type is not None and "charset" in content_type: + raise ValueError("charset must not be in content_type argument") + + if text is not None: + if hdrs.CONTENT_TYPE in real_headers: + if content_type or charset: + raise ValueError( + "passing both Content-Type header and " + "content_type or charset params " + "is forbidden" + ) + else: + # fast path for filling headers + if not isinstance(text, str): + raise TypeError("text argument must be str (%r)" % type(text)) + if content_type is None: + content_type = "text/plain" + if charset is None: + charset = "utf-8" + real_headers[hdrs.CONTENT_TYPE] = content_type + "; charset=" + charset + body = text.encode(charset) + text = None + elif hdrs.CONTENT_TYPE in real_headers: + if content_type is not None or charset is not None: + raise ValueError( + "passing both Content-Type header and " + "content_type or charset params " + "is forbidden" + ) + elif content_type is not None: + if charset is not None: + content_type += "; charset=" + charset + real_headers[hdrs.CONTENT_TYPE] = content_type + + super().__init__(status=status, reason=reason, _real_headers=real_headers) + + if text is not None: + self.text = text + else: + self.body = body + + self._zlib_executor_size = zlib_executor_size + self._zlib_executor = zlib_executor + + @property + def body(self) -> Optional[Union[bytes, Payload]]: + return self._body + + @body.setter + def body(self, body: Any) -> None: + if body is None: + self._body = None + elif isinstance(body, (bytes, bytearray)): + self._body = body + else: + try: + self._body = body = payload.PAYLOAD_REGISTRY.get(body) + except payload.LookupError: + raise ValueError("Unsupported body type %r" % type(body)) + + headers = self._headers + + # set content-type + if hdrs.CONTENT_TYPE not in headers: + headers[hdrs.CONTENT_TYPE] = body.content_type + + # copy payload headers + if body.headers: + for key, value in body.headers.items(): + if key not in headers: + headers[key] = value + + self._compressed_body = None + + @property + def text(self) -> Optional[str]: + if self._body is None: + return None + # Note: When _body is a Payload (e.g. FilePayload), this may do blocking I/O + # This is generally safe as most common payloads (BytesPayload, StringPayload) + # don't do blocking I/O, but be careful with file-based payloads + return self._body.decode(self.charset or "utf-8") + + @text.setter + def text(self, text: str) -> None: + assert text is None or isinstance( + text, str + ), "text argument must be str (%r)" % type(text) + + if self.content_type == "application/octet-stream": + self.content_type = "text/plain" + if self.charset is None: + self.charset = "utf-8" + + self._body = text.encode(self.charset) + self._compressed_body = None + + @property + def content_length(self) -> Optional[int]: + if self._chunked: + return None + + if hdrs.CONTENT_LENGTH in self._headers: + return int(self._headers[hdrs.CONTENT_LENGTH]) + + if self._compressed_body is not None: + # Return length of the compressed body + return len(self._compressed_body) + elif isinstance(self._body, Payload): + # A payload without content length, or a compressed payload + return None + elif self._body is not None: + return len(self._body) + else: + return 0 + + @content_length.setter + def content_length(self, value: Optional[int]) -> None: + raise RuntimeError("Content length is set automatically") + + async def write_eof(self, data: bytes = b"") -> None: + if self._eof_sent: + return + if self._compressed_body is None: + body: Optional[Union[bytes, Payload]] = self._body + else: + body = self._compressed_body + assert not data, f"data arg is not supported, got {data!r}" + assert self._req is not None + assert self._payload_writer is not None + if body is None or self._must_be_empty_body: + await super().write_eof() + elif isinstance(self._body, Payload): + await self._body.write(self._payload_writer) + await self._body.close() + await super().write_eof() + else: + await super().write_eof(cast(bytes, body)) + + async def _start(self, request: "BaseRequest") -> AbstractStreamWriter: + if hdrs.CONTENT_LENGTH in self._headers: + if should_remove_content_length(request.method, self.status): + del self._headers[hdrs.CONTENT_LENGTH] + elif not self._chunked: + if isinstance(self._body, Payload): + if (size := self._body.size) is not None: + self._headers[hdrs.CONTENT_LENGTH] = str(size) + else: + body_len = len(self._body) if self._body else "0" + # https://www.rfc-editor.org/rfc/rfc9110.html#section-8.6-7 + if body_len != "0" or ( + self.status != 304 and request.method not in hdrs.METH_HEAD_ALL + ): + self._headers[hdrs.CONTENT_LENGTH] = str(body_len) + + return await super()._start(request) + + async def _do_start_compression(self, coding: ContentCoding) -> None: + if self._chunked or isinstance(self._body, Payload): + return await super()._do_start_compression(coding) + if coding is ContentCoding.identity: + return + # Instead of using _payload_writer.enable_compression, + # compress the whole body + compressor = ZLibCompressor( + encoding=coding.value, + max_sync_chunk_size=self._zlib_executor_size, + executor=self._zlib_executor, + ) + assert self._body is not None + if self._zlib_executor_size is None and len(self._body) > LARGE_BODY_SIZE: + warnings.warn( + "Synchronous compression of large response bodies " + f"({len(self._body)} bytes) might block the async event loop. " + "Consider providing a custom value to zlib_executor_size/" + "zlib_executor response properties or disabling compression on it." + ) + self._compressed_body = ( + await compressor.compress(self._body) + compressor.flush() + ) + self._headers[hdrs.CONTENT_ENCODING] = coding.value + self._headers[hdrs.CONTENT_LENGTH] = str(len(self._compressed_body)) + + +def json_response( + data: Any = sentinel, + *, + text: Optional[str] = None, + body: Optional[bytes] = None, + status: int = 200, + reason: Optional[str] = None, + headers: Optional[LooseHeaders] = None, + content_type: str = "application/json", + dumps: JSONEncoder = json.dumps, +) -> Response: + if data is not sentinel: + if text or body: + raise ValueError("only one of data, text, or body should be specified") + else: + text = dumps(data) + return Response( + text=text, + body=body, + status=status, + reason=reason, + headers=headers, + content_type=content_type, + ) diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_routedef.py b/venv/lib/python3.9/site-packages/aiohttp/web_routedef.py new file mode 100644 index 0000000..f51b6cd --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_routedef.py @@ -0,0 +1,214 @@ +import abc +import os # noqa +from typing import ( + TYPE_CHECKING, + Any, + Callable, + Dict, + Iterator, + List, + Optional, + Sequence, + Type, + Union, + overload, +) + +import attr + +from . import hdrs +from .abc import AbstractView +from .typedefs import Handler, PathLike + +if TYPE_CHECKING: + from .web_request import Request + from .web_response import StreamResponse + from .web_urldispatcher import AbstractRoute, UrlDispatcher +else: + Request = StreamResponse = UrlDispatcher = AbstractRoute = None + + +__all__ = ( + "AbstractRouteDef", + "RouteDef", + "StaticDef", + "RouteTableDef", + "head", + "options", + "get", + "post", + "patch", + "put", + "delete", + "route", + "view", + "static", +) + + +class AbstractRouteDef(abc.ABC): + @abc.abstractmethod + def register(self, router: UrlDispatcher) -> List[AbstractRoute]: + pass # pragma: no cover + + +_HandlerType = Union[Type[AbstractView], Handler] + + +@attr.s(auto_attribs=True, frozen=True, repr=False, slots=True) +class RouteDef(AbstractRouteDef): + method: str + path: str + handler: _HandlerType + kwargs: Dict[str, Any] + + def __repr__(self) -> str: + info = [] + for name, value in sorted(self.kwargs.items()): + info.append(f", {name}={value!r}") + return " {handler.__name__!r}{info}>".format( + method=self.method, path=self.path, handler=self.handler, info="".join(info) + ) + + def register(self, router: UrlDispatcher) -> List[AbstractRoute]: + if self.method in hdrs.METH_ALL: + reg = getattr(router, "add_" + self.method.lower()) + return [reg(self.path, self.handler, **self.kwargs)] + else: + return [ + router.add_route(self.method, self.path, self.handler, **self.kwargs) + ] + + +@attr.s(auto_attribs=True, frozen=True, repr=False, slots=True) +class StaticDef(AbstractRouteDef): + prefix: str + path: PathLike + kwargs: Dict[str, Any] + + def __repr__(self) -> str: + info = [] + for name, value in sorted(self.kwargs.items()): + info.append(f", {name}={value!r}") + return " {path}{info}>".format( + prefix=self.prefix, path=self.path, info="".join(info) + ) + + def register(self, router: UrlDispatcher) -> List[AbstractRoute]: + resource = router.add_static(self.prefix, self.path, **self.kwargs) + routes = resource.get_info().get("routes", {}) + return list(routes.values()) + + +def route(method: str, path: str, handler: _HandlerType, **kwargs: Any) -> RouteDef: + return RouteDef(method, path, handler, kwargs) + + +def head(path: str, handler: _HandlerType, **kwargs: Any) -> RouteDef: + return route(hdrs.METH_HEAD, path, handler, **kwargs) + + +def options(path: str, handler: _HandlerType, **kwargs: Any) -> RouteDef: + return route(hdrs.METH_OPTIONS, path, handler, **kwargs) + + +def get( + path: str, + handler: _HandlerType, + *, + name: Optional[str] = None, + allow_head: bool = True, + **kwargs: Any, +) -> RouteDef: + return route( + hdrs.METH_GET, path, handler, name=name, allow_head=allow_head, **kwargs + ) + + +def post(path: str, handler: _HandlerType, **kwargs: Any) -> RouteDef: + return route(hdrs.METH_POST, path, handler, **kwargs) + + +def put(path: str, handler: _HandlerType, **kwargs: Any) -> RouteDef: + return route(hdrs.METH_PUT, path, handler, **kwargs) + + +def patch(path: str, handler: _HandlerType, **kwargs: Any) -> RouteDef: + return route(hdrs.METH_PATCH, path, handler, **kwargs) + + +def delete(path: str, handler: _HandlerType, **kwargs: Any) -> RouteDef: + return route(hdrs.METH_DELETE, path, handler, **kwargs) + + +def view(path: str, handler: Type[AbstractView], **kwargs: Any) -> RouteDef: + return route(hdrs.METH_ANY, path, handler, **kwargs) + + +def static(prefix: str, path: PathLike, **kwargs: Any) -> StaticDef: + return StaticDef(prefix, path, kwargs) + + +_Deco = Callable[[_HandlerType], _HandlerType] + + +class RouteTableDef(Sequence[AbstractRouteDef]): + """Route definition table""" + + def __init__(self) -> None: + self._items: List[AbstractRouteDef] = [] + + def __repr__(self) -> str: + return f"" + + @overload + def __getitem__(self, index: int) -> AbstractRouteDef: ... + + @overload + def __getitem__(self, index: slice) -> List[AbstractRouteDef]: ... + + def __getitem__(self, index): # type: ignore[no-untyped-def] + return self._items[index] + + def __iter__(self) -> Iterator[AbstractRouteDef]: + return iter(self._items) + + def __len__(self) -> int: + return len(self._items) + + def __contains__(self, item: object) -> bool: + return item in self._items + + def route(self, method: str, path: str, **kwargs: Any) -> _Deco: + def inner(handler: _HandlerType) -> _HandlerType: + self._items.append(RouteDef(method, path, handler, kwargs)) + return handler + + return inner + + def head(self, path: str, **kwargs: Any) -> _Deco: + return self.route(hdrs.METH_HEAD, path, **kwargs) + + def get(self, path: str, **kwargs: Any) -> _Deco: + return self.route(hdrs.METH_GET, path, **kwargs) + + def post(self, path: str, **kwargs: Any) -> _Deco: + return self.route(hdrs.METH_POST, path, **kwargs) + + def put(self, path: str, **kwargs: Any) -> _Deco: + return self.route(hdrs.METH_PUT, path, **kwargs) + + def patch(self, path: str, **kwargs: Any) -> _Deco: + return self.route(hdrs.METH_PATCH, path, **kwargs) + + def delete(self, path: str, **kwargs: Any) -> _Deco: + return self.route(hdrs.METH_DELETE, path, **kwargs) + + def options(self, path: str, **kwargs: Any) -> _Deco: + return self.route(hdrs.METH_OPTIONS, path, **kwargs) + + def view(self, path: str, **kwargs: Any) -> _Deco: + return self.route(hdrs.METH_ANY, path, **kwargs) + + def static(self, prefix: str, path: PathLike, **kwargs: Any) -> None: + self._items.append(StaticDef(prefix, path, kwargs)) diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_runner.py b/venv/lib/python3.9/site-packages/aiohttp/web_runner.py new file mode 100644 index 0000000..bcfec72 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_runner.py @@ -0,0 +1,399 @@ +import asyncio +import signal +import socket +import warnings +from abc import ABC, abstractmethod +from typing import TYPE_CHECKING, Any, List, Optional, Set + +from yarl import URL + +from .typedefs import PathLike +from .web_app import Application +from .web_server import Server + +if TYPE_CHECKING: + from ssl import SSLContext +else: + try: + from ssl import SSLContext + except ImportError: # pragma: no cover + SSLContext = object # type: ignore[misc,assignment] + +__all__ = ( + "BaseSite", + "TCPSite", + "UnixSite", + "NamedPipeSite", + "SockSite", + "BaseRunner", + "AppRunner", + "ServerRunner", + "GracefulExit", +) + + +class GracefulExit(SystemExit): + code = 1 + + +def _raise_graceful_exit() -> None: + raise GracefulExit() + + +class BaseSite(ABC): + __slots__ = ("_runner", "_ssl_context", "_backlog", "_server") + + def __init__( + self, + runner: "BaseRunner", + *, + shutdown_timeout: float = 60.0, + ssl_context: Optional[SSLContext] = None, + backlog: int = 128, + ) -> None: + if runner.server is None: + raise RuntimeError("Call runner.setup() before making a site") + if shutdown_timeout != 60.0: + msg = "shutdown_timeout should be set on BaseRunner" + warnings.warn(msg, DeprecationWarning, stacklevel=2) + runner._shutdown_timeout = shutdown_timeout + self._runner = runner + self._ssl_context = ssl_context + self._backlog = backlog + self._server: Optional[asyncio.AbstractServer] = None + + @property + @abstractmethod + def name(self) -> str: + pass # pragma: no cover + + @abstractmethod + async def start(self) -> None: + self._runner._reg_site(self) + + async def stop(self) -> None: + self._runner._check_site(self) + if self._server is not None: # Maybe not started yet + self._server.close() + + self._runner._unreg_site(self) + + +class TCPSite(BaseSite): + __slots__ = ("_host", "_port", "_reuse_address", "_reuse_port") + + def __init__( + self, + runner: "BaseRunner", + host: Optional[str] = None, + port: Optional[int] = None, + *, + shutdown_timeout: float = 60.0, + ssl_context: Optional[SSLContext] = None, + backlog: int = 128, + reuse_address: Optional[bool] = None, + reuse_port: Optional[bool] = None, + ) -> None: + super().__init__( + runner, + shutdown_timeout=shutdown_timeout, + ssl_context=ssl_context, + backlog=backlog, + ) + self._host = host + if port is None: + port = 8443 if self._ssl_context else 8080 + self._port = port + self._reuse_address = reuse_address + self._reuse_port = reuse_port + + @property + def name(self) -> str: + scheme = "https" if self._ssl_context else "http" + host = "0.0.0.0" if not self._host else self._host + return str(URL.build(scheme=scheme, host=host, port=self._port)) + + async def start(self) -> None: + await super().start() + loop = asyncio.get_event_loop() + server = self._runner.server + assert server is not None + self._server = await loop.create_server( + server, + self._host, + self._port, + ssl=self._ssl_context, + backlog=self._backlog, + reuse_address=self._reuse_address, + reuse_port=self._reuse_port, + ) + + +class UnixSite(BaseSite): + __slots__ = ("_path",) + + def __init__( + self, + runner: "BaseRunner", + path: PathLike, + *, + shutdown_timeout: float = 60.0, + ssl_context: Optional[SSLContext] = None, + backlog: int = 128, + ) -> None: + super().__init__( + runner, + shutdown_timeout=shutdown_timeout, + ssl_context=ssl_context, + backlog=backlog, + ) + self._path = path + + @property + def name(self) -> str: + scheme = "https" if self._ssl_context else "http" + return f"{scheme}://unix:{self._path}:" + + async def start(self) -> None: + await super().start() + loop = asyncio.get_event_loop() + server = self._runner.server + assert server is not None + self._server = await loop.create_unix_server( + server, + self._path, + ssl=self._ssl_context, + backlog=self._backlog, + ) + + +class NamedPipeSite(BaseSite): + __slots__ = ("_path",) + + def __init__( + self, runner: "BaseRunner", path: str, *, shutdown_timeout: float = 60.0 + ) -> None: + loop = asyncio.get_event_loop() + if not isinstance( + loop, asyncio.ProactorEventLoop # type: ignore[attr-defined] + ): + raise RuntimeError( + "Named Pipes only available in proactor loop under windows" + ) + super().__init__(runner, shutdown_timeout=shutdown_timeout) + self._path = path + + @property + def name(self) -> str: + return self._path + + async def start(self) -> None: + await super().start() + loop = asyncio.get_event_loop() + server = self._runner.server + assert server is not None + _server = await loop.start_serving_pipe( # type: ignore[attr-defined] + server, self._path + ) + self._server = _server[0] + + +class SockSite(BaseSite): + __slots__ = ("_sock", "_name") + + def __init__( + self, + runner: "BaseRunner", + sock: socket.socket, + *, + shutdown_timeout: float = 60.0, + ssl_context: Optional[SSLContext] = None, + backlog: int = 128, + ) -> None: + super().__init__( + runner, + shutdown_timeout=shutdown_timeout, + ssl_context=ssl_context, + backlog=backlog, + ) + self._sock = sock + scheme = "https" if self._ssl_context else "http" + if hasattr(socket, "AF_UNIX") and sock.family == socket.AF_UNIX: + name = f"{scheme}://unix:{sock.getsockname()}:" + else: + host, port = sock.getsockname()[:2] + name = str(URL.build(scheme=scheme, host=host, port=port)) + self._name = name + + @property + def name(self) -> str: + return self._name + + async def start(self) -> None: + await super().start() + loop = asyncio.get_event_loop() + server = self._runner.server + assert server is not None + self._server = await loop.create_server( + server, sock=self._sock, ssl=self._ssl_context, backlog=self._backlog + ) + + +class BaseRunner(ABC): + __slots__ = ("_handle_signals", "_kwargs", "_server", "_sites", "_shutdown_timeout") + + def __init__( + self, + *, + handle_signals: bool = False, + shutdown_timeout: float = 60.0, + **kwargs: Any, + ) -> None: + self._handle_signals = handle_signals + self._kwargs = kwargs + self._server: Optional[Server] = None + self._sites: List[BaseSite] = [] + self._shutdown_timeout = shutdown_timeout + + @property + def server(self) -> Optional[Server]: + return self._server + + @property + def addresses(self) -> List[Any]: + ret: List[Any] = [] + for site in self._sites: + server = site._server + if server is not None: + sockets = server.sockets # type: ignore[attr-defined] + if sockets is not None: + for sock in sockets: + ret.append(sock.getsockname()) + return ret + + @property + def sites(self) -> Set[BaseSite]: + return set(self._sites) + + async def setup(self) -> None: + loop = asyncio.get_event_loop() + + if self._handle_signals: + try: + loop.add_signal_handler(signal.SIGINT, _raise_graceful_exit) + loop.add_signal_handler(signal.SIGTERM, _raise_graceful_exit) + except NotImplementedError: # pragma: no cover + # add_signal_handler is not implemented on Windows + pass + + self._server = await self._make_server() + + @abstractmethod + async def shutdown(self) -> None: + """Call any shutdown hooks to help server close gracefully.""" + + async def cleanup(self) -> None: + # The loop over sites is intentional, an exception on gather() + # leaves self._sites in unpredictable state. + # The loop guaranties that a site is either deleted on success or + # still present on failure + for site in list(self._sites): + await site.stop() + + if self._server: # If setup succeeded + # Yield to event loop to ensure incoming requests prior to stopping the sites + # have all started to be handled before we proceed to close idle connections. + await asyncio.sleep(0) + self._server.pre_shutdown() + await self.shutdown() + await self._server.shutdown(self._shutdown_timeout) + await self._cleanup_server() + + self._server = None + if self._handle_signals: + loop = asyncio.get_running_loop() + try: + loop.remove_signal_handler(signal.SIGINT) + loop.remove_signal_handler(signal.SIGTERM) + except NotImplementedError: # pragma: no cover + # remove_signal_handler is not implemented on Windows + pass + + @abstractmethod + async def _make_server(self) -> Server: + pass # pragma: no cover + + @abstractmethod + async def _cleanup_server(self) -> None: + pass # pragma: no cover + + def _reg_site(self, site: BaseSite) -> None: + if site in self._sites: + raise RuntimeError(f"Site {site} is already registered in runner {self}") + self._sites.append(site) + + def _check_site(self, site: BaseSite) -> None: + if site not in self._sites: + raise RuntimeError(f"Site {site} is not registered in runner {self}") + + def _unreg_site(self, site: BaseSite) -> None: + if site not in self._sites: + raise RuntimeError(f"Site {site} is not registered in runner {self}") + self._sites.remove(site) + + +class ServerRunner(BaseRunner): + """Low-level web server runner""" + + __slots__ = ("_web_server",) + + def __init__( + self, web_server: Server, *, handle_signals: bool = False, **kwargs: Any + ) -> None: + super().__init__(handle_signals=handle_signals, **kwargs) + self._web_server = web_server + + async def shutdown(self) -> None: + pass + + async def _make_server(self) -> Server: + return self._web_server + + async def _cleanup_server(self) -> None: + pass + + +class AppRunner(BaseRunner): + """Web Application runner""" + + __slots__ = ("_app",) + + def __init__( + self, app: Application, *, handle_signals: bool = False, **kwargs: Any + ) -> None: + super().__init__(handle_signals=handle_signals, **kwargs) + if not isinstance(app, Application): + raise TypeError( + "The first argument should be web.Application " + "instance, got {!r}".format(app) + ) + self._app = app + + @property + def app(self) -> Application: + return self._app + + async def shutdown(self) -> None: + await self._app.shutdown() + + async def _make_server(self) -> Server: + loop = asyncio.get_event_loop() + self._app._set_loop(loop) + self._app.on_startup.freeze() + await self._app.startup() + self._app.freeze() + + return self._app._make_handler(loop=loop, **self._kwargs) + + async def _cleanup_server(self) -> None: + await self._app.cleanup() diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_server.py b/venv/lib/python3.9/site-packages/aiohttp/web_server.py new file mode 100644 index 0000000..328aca1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_server.py @@ -0,0 +1,84 @@ +"""Low level HTTP server.""" + +import asyncio +from typing import Any, Awaitable, Callable, Dict, List, Optional # noqa + +from .abc import AbstractStreamWriter +from .http_parser import RawRequestMessage +from .streams import StreamReader +from .web_protocol import RequestHandler, _RequestFactory, _RequestHandler +from .web_request import BaseRequest + +__all__ = ("Server",) + + +class Server: + def __init__( + self, + handler: _RequestHandler, + *, + request_factory: Optional[_RequestFactory] = None, + handler_cancellation: bool = False, + loop: Optional[asyncio.AbstractEventLoop] = None, + **kwargs: Any, + ) -> None: + self._loop = loop or asyncio.get_running_loop() + self._connections: Dict[RequestHandler, asyncio.Transport] = {} + self._kwargs = kwargs + # requests_count is the number of requests being processed by the server + # for the lifetime of the server. + self.requests_count = 0 + self.request_handler = handler + self.request_factory = request_factory or self._make_request + self.handler_cancellation = handler_cancellation + + @property + def connections(self) -> List[RequestHandler]: + return list(self._connections.keys()) + + def connection_made( + self, handler: RequestHandler, transport: asyncio.Transport + ) -> None: + self._connections[handler] = transport + + def connection_lost( + self, handler: RequestHandler, exc: Optional[BaseException] = None + ) -> None: + if handler in self._connections: + if handler._task_handler: + handler._task_handler.add_done_callback( + lambda f: self._connections.pop(handler, None) + ) + else: + del self._connections[handler] + + def _make_request( + self, + message: RawRequestMessage, + payload: StreamReader, + protocol: RequestHandler, + writer: AbstractStreamWriter, + task: "asyncio.Task[None]", + ) -> BaseRequest: + return BaseRequest(message, payload, protocol, writer, task, self._loop) + + def pre_shutdown(self) -> None: + for conn in self._connections: + conn.close() + + async def shutdown(self, timeout: Optional[float] = None) -> None: + coros = (conn.shutdown(timeout) for conn in self._connections) + await asyncio.gather(*coros) + self._connections.clear() + + def __call__(self) -> RequestHandler: + try: + return RequestHandler(self, loop=self._loop, **self._kwargs) + except TypeError: + # Failsafe creation: remove all custom handler_args + kwargs = { + k: v + for k, v in self._kwargs.items() + if k in ["debug", "access_log_class"] + } + return RequestHandler(self, loop=self._loop, **kwargs) diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_urldispatcher.py b/venv/lib/python3.9/site-packages/aiohttp/web_urldispatcher.py new file mode 100644 index 0000000..48465b5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_urldispatcher.py @@ -0,0 +1,1309 @@ +import abc +import asyncio +import base64 +import functools +import hashlib +import html +import inspect +import keyword +import os +import platform +import re +import sys +import warnings +from functools import wraps +from pathlib import Path +from types import MappingProxyType +from typing import ( + TYPE_CHECKING, + Any, + Awaitable, + Callable, + Container, + Dict, + Final, + Generator, + Iterable, + Iterator, + List, + Mapping, + NoReturn, + Optional, + Pattern, + Set, + Sized, + Tuple, + Type, + TypedDict, + Union, + cast, +) + +from yarl import URL, __version__ as yarl_version + +from . import hdrs +from .abc import AbstractMatchInfo, AbstractRouter, AbstractView +from .helpers import DEBUG +from .http import HttpVersion11 +from .typedefs import Handler, PathLike +from .web_exceptions import ( + HTTPException, + HTTPExpectationFailed, + HTTPForbidden, + HTTPMethodNotAllowed, + HTTPNotFound, +) +from .web_fileresponse import FileResponse +from .web_request import Request +from .web_response import Response, StreamResponse +from .web_routedef import AbstractRouteDef + +__all__ = ( + "UrlDispatcher", + "UrlMappingMatchInfo", + "AbstractResource", + "Resource", + "PlainResource", + "DynamicResource", + "AbstractRoute", + "ResourceRoute", + "StaticResource", + "View", +) + + +if TYPE_CHECKING: + from .web_app import Application + + BaseDict = Dict[str, str] +else: + BaseDict = dict + +CIRCULAR_SYMLINK_ERROR = ( + (OSError,) + if sys.version_info < (3, 10) and sys.platform.startswith("win32") + else (RuntimeError,) if sys.version_info < (3, 13) else () +) + +YARL_VERSION: Final[Tuple[int, ...]] = tuple(map(int, yarl_version.split(".")[:2])) + +HTTP_METHOD_RE: Final[Pattern[str]] = re.compile( + r"^[0-9A-Za-z!#\$%&'\*\+\-\.\^_`\|~]+$" +) +ROUTE_RE: Final[Pattern[str]] = re.compile( + r"(\{[_a-zA-Z][^{}]*(?:\{[^{}]*\}[^{}]*)*\})" +) +PATH_SEP: Final[str] = re.escape("/") + +IS_WINDOWS: Final[bool] = platform.system() == "Windows" + +_ExpectHandler = Callable[[Request], Awaitable[Optional[StreamResponse]]] +_Resolve = Tuple[Optional["UrlMappingMatchInfo"], Set[str]] + +html_escape = functools.partial(html.escape, quote=True) + + +class _InfoDict(TypedDict, total=False): + path: str + + formatter: str + pattern: Pattern[str] + + directory: Path + prefix: str + routes: Mapping[str, "AbstractRoute"] + + app: "Application" + + domain: str + + rule: "AbstractRuleMatching" + + http_exception: HTTPException + + +class AbstractResource(Sized, Iterable["AbstractRoute"]): + def __init__(self, *, name: Optional[str] = None) -> None: + self._name = name + + @property + def name(self) -> Optional[str]: + return self._name + + @property + @abc.abstractmethod + def canonical(self) -> str: + """Exposes the resource's canonical path. + + For example '/foo/bar/{name}' + + """ + + @abc.abstractmethod # pragma: no branch + def url_for(self, **kwargs: str) -> URL: + """Construct url for resource with additional params.""" + + @abc.abstractmethod # pragma: no branch + async def resolve(self, request: Request) -> _Resolve: + """Resolve resource. + + Return (UrlMappingMatchInfo, allowed_methods) pair. + """ + + @abc.abstractmethod + def add_prefix(self, prefix: str) -> None: + """Add a prefix to processed URLs. + + Required for subapplications support. + """ + + @abc.abstractmethod + def get_info(self) -> _InfoDict: + """Return a dict with additional info useful for introspection""" + + def freeze(self) -> None: + pass + + @abc.abstractmethod + def raw_match(self, path: str) -> bool: + """Perform a raw match against path""" + + +class AbstractRoute(abc.ABC): + def __init__( + self, + method: str, + handler: Union[Handler, Type[AbstractView]], + *, + expect_handler: Optional[_ExpectHandler] = None, + resource: Optional[AbstractResource] = None, + ) -> None: + + if expect_handler is None: + expect_handler = _default_expect_handler + + assert inspect.iscoroutinefunction(expect_handler) or ( + sys.version_info < (3, 14) and asyncio.iscoroutinefunction(expect_handler) + ), f"Coroutine is expected, got {expect_handler!r}" + + method = method.upper() + if not HTTP_METHOD_RE.match(method): + raise ValueError(f"{method} is not allowed HTTP method") + + assert callable(handler), handler + if inspect.iscoroutinefunction(handler) or ( + sys.version_info < (3, 14) and asyncio.iscoroutinefunction(handler) + ): + pass + elif inspect.isgeneratorfunction(handler): + if TYPE_CHECKING: + assert False + warnings.warn( + "Bare generators are deprecated, use @coroutine wrapper", + DeprecationWarning, + ) + elif isinstance(handler, type) and issubclass(handler, AbstractView): + pass + else: + warnings.warn( + "Bare functions are deprecated, use async ones", DeprecationWarning + ) + + @wraps(handler) + async def handler_wrapper(request: Request) -> StreamResponse: + result = old_handler(request) # type: ignore[call-arg] + if asyncio.iscoroutine(result): + result = await result + assert isinstance(result, StreamResponse) + return result + + old_handler = handler + handler = handler_wrapper + + self._method = method + self._handler = handler + self._expect_handler = expect_handler + self._resource = resource + + @property + def method(self) -> str: + return self._method + + @property + def handler(self) -> Handler: + return self._handler + + @property + @abc.abstractmethod + def name(self) -> Optional[str]: + """Optional route's name, always equals to resource's name.""" + + @property + def resource(self) -> Optional[AbstractResource]: + return self._resource + + @abc.abstractmethod + def get_info(self) -> _InfoDict: + """Return a dict with additional info useful for introspection""" + + @abc.abstractmethod # pragma: no branch + def url_for(self, *args: str, **kwargs: str) -> URL: + """Construct url for route with additional params.""" + + async def handle_expect_header(self, request: Request) -> Optional[StreamResponse]: + return await self._expect_handler(request) + + +class UrlMappingMatchInfo(BaseDict, AbstractMatchInfo): + + __slots__ = ("_route", "_apps", "_current_app", "_frozen") + + def __init__(self, match_dict: Dict[str, str], route: AbstractRoute) -> None: + super().__init__(match_dict) + self._route = route + self._apps: List[Application] = [] + self._current_app: Optional[Application] = None + self._frozen = False + + @property + def handler(self) -> Handler: + return self._route.handler + + @property + def route(self) -> AbstractRoute: + return self._route + + @property + def expect_handler(self) -> _ExpectHandler: + return self._route.handle_expect_header + + @property + def http_exception(self) -> Optional[HTTPException]: + return None + + def get_info(self) -> _InfoDict: # type: ignore[override] + return self._route.get_info() + + @property + def apps(self) -> Tuple["Application", ...]: + return tuple(self._apps) + + def add_app(self, app: "Application") -> None: + if self._frozen: + raise RuntimeError("Cannot change apps stack after .freeze() call") + if self._current_app is None: + self._current_app = app + self._apps.insert(0, app) + + @property + def current_app(self) -> "Application": + app = self._current_app + assert app is not None + return app + + @current_app.setter + def current_app(self, app: "Application") -> None: + if DEBUG: # pragma: no cover + if app not in self._apps: + raise RuntimeError( + "Expected one of the following apps {!r}, got {!r}".format( + self._apps, app + ) + ) + self._current_app = app + + def freeze(self) -> None: + self._frozen = True + + def __repr__(self) -> str: + return f"" + + +class MatchInfoError(UrlMappingMatchInfo): + + __slots__ = ("_exception",) + + def __init__(self, http_exception: HTTPException) -> None: + self._exception = http_exception + super().__init__({}, SystemRoute(self._exception)) + + @property + def http_exception(self) -> HTTPException: + return self._exception + + def __repr__(self) -> str: + return "".format( + self._exception.status, self._exception.reason + ) + + +async def _default_expect_handler(request: Request) -> None: + """Default handler for Expect header. + + Just send "100 Continue" to client. + raise HTTPExpectationFailed if value of header is not "100-continue" + """ + expect = request.headers.get(hdrs.EXPECT, "") + if request.version == HttpVersion11: + if expect.lower() == "100-continue": + await request.writer.write(b"HTTP/1.1 100 Continue\r\n\r\n") + # Reset output_size as we haven't started the main body yet. + request.writer.output_size = 0 + else: + raise HTTPExpectationFailed(text="Unknown Expect: %s" % expect) + + +class Resource(AbstractResource): + def __init__(self, *, name: Optional[str] = None) -> None: + super().__init__(name=name) + self._routes: Dict[str, ResourceRoute] = {} + self._any_route: Optional[ResourceRoute] = None + self._allowed_methods: Set[str] = set() + + def add_route( + self, + method: str, + handler: Union[Type[AbstractView], Handler], + *, + expect_handler: Optional[_ExpectHandler] = None, + ) -> "ResourceRoute": + if route := self._routes.get(method, self._any_route): + raise RuntimeError( + "Added route will never be executed, " + f"method {route.method} is already " + "registered" + ) + + route_obj = ResourceRoute(method, handler, self, expect_handler=expect_handler) + self.register_route(route_obj) + return route_obj + + def register_route(self, route: "ResourceRoute") -> None: + assert isinstance( + route, ResourceRoute + ), f"Instance of Route class is required, got {route!r}" + if route.method == hdrs.METH_ANY: + self._any_route = route + self._allowed_methods.add(route.method) + self._routes[route.method] = route + + async def resolve(self, request: Request) -> _Resolve: + if (match_dict := self._match(request.rel_url.path_safe)) is None: + return None, set() + if route := self._routes.get(request.method, self._any_route): + return UrlMappingMatchInfo(match_dict, route), self._allowed_methods + return None, self._allowed_methods + + @abc.abstractmethod + def _match(self, path: str) -> Optional[Dict[str, str]]: + pass # pragma: no cover + + def __len__(self) -> int: + return len(self._routes) + + def __iter__(self) -> Iterator["ResourceRoute"]: + return iter(self._routes.values()) + + # TODO: implement all abstract methods + + +class PlainResource(Resource): + def __init__(self, path: str, *, name: Optional[str] = None) -> None: + super().__init__(name=name) + assert not path or path.startswith("/") + self._path = path + + @property + def canonical(self) -> str: + return self._path + + def freeze(self) -> None: + if not self._path: + self._path = "/" + + def add_prefix(self, prefix: str) -> None: + assert prefix.startswith("/") + assert not prefix.endswith("/") + assert len(prefix) > 1 + self._path = prefix + self._path + + def _match(self, path: str) -> Optional[Dict[str, str]]: + # string comparison is about 10 times faster than regexp matching + if self._path == path: + return {} + return None + + def raw_match(self, path: str) -> bool: + return self._path == path + + def get_info(self) -> _InfoDict: + return {"path": self._path} + + def url_for(self) -> URL: # type: ignore[override] + return URL.build(path=self._path, encoded=True) + + def __repr__(self) -> str: + name = "'" + self.name + "' " if self.name is not None else "" + return f"" + + +class DynamicResource(Resource): + + DYN = re.compile(r"\{(?P[_a-zA-Z][_a-zA-Z0-9]*)\}") + DYN_WITH_RE = re.compile(r"\{(?P[_a-zA-Z][_a-zA-Z0-9]*):(?P.+)\}") + GOOD = r"[^{}/]+" + + def __init__(self, path: str, *, name: Optional[str] = None) -> None: + super().__init__(name=name) + self._orig_path = path + pattern = "" + formatter = "" + for part in ROUTE_RE.split(path): + match = self.DYN.fullmatch(part) + if match: + pattern += "(?P<{}>{})".format(match.group("var"), self.GOOD) + formatter += "{" + match.group("var") + "}" + continue + + match = self.DYN_WITH_RE.fullmatch(part) + if match: + pattern += "(?P<{var}>{re})".format(**match.groupdict()) + formatter += "{" + match.group("var") + "}" + continue + + if "{" in part or "}" in part: + raise ValueError(f"Invalid path '{path}'['{part}']") + + part = _requote_path(part) + formatter += part + pattern += re.escape(part) + + try: + compiled = re.compile(pattern) + except re.error as exc: + raise ValueError(f"Bad pattern '{pattern}': {exc}") from None + assert compiled.pattern.startswith(PATH_SEP) + assert formatter.startswith("/") + self._pattern = compiled + self._formatter = formatter + + @property + def canonical(self) -> str: + return self._formatter + + def add_prefix(self, prefix: str) -> None: + assert prefix.startswith("/") + assert not prefix.endswith("/") + assert len(prefix) > 1 + self._pattern = re.compile(re.escape(prefix) + self._pattern.pattern) + self._formatter = prefix + self._formatter + + def _match(self, path: str) -> Optional[Dict[str, str]]: + match = self._pattern.fullmatch(path) + if match is None: + return None + return { + key: _unquote_path_safe(value) for key, value in match.groupdict().items() + } + + def raw_match(self, path: str) -> bool: + return self._orig_path == path + + def get_info(self) -> _InfoDict: + return {"formatter": self._formatter, "pattern": self._pattern} + + def url_for(self, **parts: str) -> URL: + url = self._formatter.format_map({k: _quote_path(v) for k, v in parts.items()}) + return URL.build(path=url, encoded=True) + + def __repr__(self) -> str: + name = "'" + self.name + "' " if self.name is not None else "" + return "".format( + name=name, formatter=self._formatter + ) + + +class PrefixResource(AbstractResource): + def __init__(self, prefix: str, *, name: Optional[str] = None) -> None: + assert not prefix or prefix.startswith("/"), prefix + assert prefix in ("", "/") or not prefix.endswith("/"), prefix + super().__init__(name=name) + self._prefix = _requote_path(prefix) + self._prefix2 = self._prefix + "/" + + @property + def canonical(self) -> str: + return self._prefix + + def add_prefix(self, prefix: str) -> None: + assert prefix.startswith("/") + assert not prefix.endswith("/") + assert len(prefix) > 1 + self._prefix = prefix + self._prefix + self._prefix2 = self._prefix + "/" + + def raw_match(self, prefix: str) -> bool: + return False + + # TODO: impl missing abstract methods + + +class StaticResource(PrefixResource): + VERSION_KEY = "v" + + def __init__( + self, + prefix: str, + directory: PathLike, + *, + name: Optional[str] = None, + expect_handler: Optional[_ExpectHandler] = None, + chunk_size: int = 256 * 1024, + show_index: bool = False, + follow_symlinks: bool = False, + append_version: bool = False, + ) -> None: + super().__init__(prefix, name=name) + try: + directory = Path(directory).expanduser().resolve(strict=True) + except FileNotFoundError as error: + raise ValueError(f"'{directory}' does not exist") from error + if not directory.is_dir(): + raise ValueError(f"'{directory}' is not a directory") + self._directory = directory + self._show_index = show_index + self._chunk_size = chunk_size + self._follow_symlinks = follow_symlinks + self._expect_handler = expect_handler + self._append_version = append_version + + self._routes = { + "GET": ResourceRoute( + "GET", self._handle, self, expect_handler=expect_handler + ), + "HEAD": ResourceRoute( + "HEAD", self._handle, self, expect_handler=expect_handler + ), + } + self._allowed_methods = set(self._routes) + + def url_for( # type: ignore[override] + self, + *, + filename: PathLike, + append_version: Optional[bool] = None, + ) -> URL: + if append_version is None: + append_version = self._append_version + filename = str(filename).lstrip("/") + + url = URL.build(path=self._prefix, encoded=True) + # filename is not encoded + if YARL_VERSION < (1, 6): + url = url / filename.replace("%", "%25") + else: + url = url / filename + + if append_version: + unresolved_path = self._directory.joinpath(filename) + try: + if self._follow_symlinks: + normalized_path = Path(os.path.normpath(unresolved_path)) + normalized_path.relative_to(self._directory) + filepath = normalized_path.resolve() + else: + filepath = unresolved_path.resolve() + filepath.relative_to(self._directory) + except (ValueError, FileNotFoundError): + # ValueError for case when path point to symlink + # with follow_symlinks is False + return url # relatively safe + if filepath.is_file(): + # TODO cache file content + # with file watcher for cache invalidation + with filepath.open("rb") as f: + file_bytes = f.read() + h = self._get_file_hash(file_bytes) + url = url.with_query({self.VERSION_KEY: h}) + return url + return url + + @staticmethod + def _get_file_hash(byte_array: bytes) -> str: + m = hashlib.sha256() # todo sha256 can be configurable param + m.update(byte_array) + b64 = base64.urlsafe_b64encode(m.digest()) + return b64.decode("ascii") + + def get_info(self) -> _InfoDict: + return { + "directory": self._directory, + "prefix": self._prefix, + "routes": self._routes, + } + + def set_options_route(self, handler: Handler) -> None: + if "OPTIONS" in self._routes: + raise RuntimeError("OPTIONS route was set already") + self._routes["OPTIONS"] = ResourceRoute( + "OPTIONS", handler, self, expect_handler=self._expect_handler + ) + self._allowed_methods.add("OPTIONS") + + async def resolve(self, request: Request) -> _Resolve: + path = request.rel_url.path_safe + method = request.method + # We normalise here to avoid matches that traverse below the static root. + # e.g. /static/../../../../home/user/webapp/static/ + norm_path = os.path.normpath(path) + if IS_WINDOWS: + norm_path = norm_path.replace("\\", "/") + if not norm_path.startswith(self._prefix2) and norm_path != self._prefix: + return None, set() + + allowed_methods = self._allowed_methods + if method not in allowed_methods: + return None, allowed_methods + + match_dict = {"filename": _unquote_path_safe(path[len(self._prefix) + 1 :])} + return (UrlMappingMatchInfo(match_dict, self._routes[method]), allowed_methods) + + def __len__(self) -> int: + return len(self._routes) + + def __iter__(self) -> Iterator[AbstractRoute]: + return iter(self._routes.values()) + + async def _handle(self, request: Request) -> StreamResponse: + filename = request.match_info["filename"] + if Path(filename).is_absolute(): + # filename is an absolute path e.g. //network/share or D:\path + # which could be a UNC path leading to NTLM credential theft + raise HTTPNotFound() + unresolved_path = self._directory.joinpath(filename) + loop = asyncio.get_running_loop() + return await loop.run_in_executor( + None, self._resolve_path_to_response, unresolved_path + ) + + def _resolve_path_to_response(self, unresolved_path: Path) -> StreamResponse: + """Take the unresolved path and query the file system to form a response.""" + # Check for access outside the root directory. For follow symlinks, URI + # cannot traverse out, but symlinks can. Otherwise, no access outside + # root is permitted. + try: + if self._follow_symlinks: + normalized_path = Path(os.path.normpath(unresolved_path)) + normalized_path.relative_to(self._directory) + file_path = normalized_path.resolve() + else: + file_path = unresolved_path.resolve() + file_path.relative_to(self._directory) + except (ValueError, *CIRCULAR_SYMLINK_ERROR) as error: + # ValueError is raised for the relative check. Circular symlinks + # raise here on resolving for python < 3.13. + raise HTTPNotFound() from error + + # if path is a directory, return the contents if permitted. Note the + # directory check will raise if a segment is not readable. + try: + if file_path.is_dir(): + if self._show_index: + return Response( + text=self._directory_as_html(file_path), + content_type="text/html", + ) + else: + raise HTTPForbidden() + except PermissionError as error: + raise HTTPForbidden() from error + + # Return the file response, which handles all other checks. + return FileResponse(file_path, chunk_size=self._chunk_size) + + def _directory_as_html(self, dir_path: Path) -> str: + """returns directory's index as html.""" + assert dir_path.is_dir() + + relative_path_to_dir = dir_path.relative_to(self._directory).as_posix() + index_of = f"Index of /{html_escape(relative_path_to_dir)}" + h1 = f"

{index_of}

" + + index_list = [] + dir_index = dir_path.iterdir() + for _file in sorted(dir_index): + # show file url as relative to static path + rel_path = _file.relative_to(self._directory).as_posix() + quoted_file_url = _quote_path(f"{self._prefix}/{rel_path}") + + # if file is a directory, add '/' to the end of the name + if _file.is_dir(): + file_name = f"{_file.name}/" + else: + file_name = _file.name + + index_list.append( + f'
' + ) + ul = "
    \n{}\n
".format("\n".join(index_list)) + body = f"\n{h1}\n{ul}\n" + + head_str = f"\n{index_of}\n" + html = f"\n{head_str}\n{body}\n" + + return html + + def __repr__(self) -> str: + name = "'" + self.name + "'" if self.name is not None else "" + return " {directory!r}>".format( + name=name, path=self._prefix, directory=self._directory + ) + + +class PrefixedSubAppResource(PrefixResource): + def __init__(self, prefix: str, app: "Application") -> None: + super().__init__(prefix) + self._app = app + self._add_prefix_to_resources(prefix) + + def add_prefix(self, prefix: str) -> None: + super().add_prefix(prefix) + self._add_prefix_to_resources(prefix) + + def _add_prefix_to_resources(self, prefix: str) -> None: + router = self._app.router + for resource in router.resources(): + # Since the canonical path of a resource is about + # to change, we need to unindex it and then reindex + router.unindex_resource(resource) + resource.add_prefix(prefix) + router.index_resource(resource) + + def url_for(self, *args: str, **kwargs: str) -> URL: + raise RuntimeError(".url_for() is not supported by sub-application root") + + def get_info(self) -> _InfoDict: + return {"app": self._app, "prefix": self._prefix} + + async def resolve(self, request: Request) -> _Resolve: + match_info = await self._app.router.resolve(request) + match_info.add_app(self._app) + if isinstance(match_info.http_exception, HTTPMethodNotAllowed): + methods = match_info.http_exception.allowed_methods + else: + methods = set() + return match_info, methods + + def __len__(self) -> int: + return len(self._app.router.routes()) + + def __iter__(self) -> Iterator[AbstractRoute]: + return iter(self._app.router.routes()) + + def __repr__(self) -> str: + return " {app!r}>".format( + prefix=self._prefix, app=self._app + ) + + +class AbstractRuleMatching(abc.ABC): + @abc.abstractmethod # pragma: no branch + async def match(self, request: Request) -> bool: + """Return bool if the request satisfies the criteria""" + + @abc.abstractmethod # pragma: no branch + def get_info(self) -> _InfoDict: + """Return a dict with additional info useful for introspection""" + + @property + @abc.abstractmethod # pragma: no branch + def canonical(self) -> str: + """Return a str""" + + +class Domain(AbstractRuleMatching): + re_part = re.compile(r"(?!-)[a-z\d-]{1,63}(? None: + super().__init__() + self._domain = self.validation(domain) + + @property + def canonical(self) -> str: + return self._domain + + def validation(self, domain: str) -> str: + if not isinstance(domain, str): + raise TypeError("Domain must be str") + domain = domain.rstrip(".").lower() + if not domain: + raise ValueError("Domain cannot be empty") + elif "://" in domain: + raise ValueError("Scheme not supported") + url = URL("http://" + domain) + assert url.raw_host is not None + if not all(self.re_part.fullmatch(x) for x in url.raw_host.split(".")): + raise ValueError("Domain not valid") + if url.port == 80: + return url.raw_host + return f"{url.raw_host}:{url.port}" + + async def match(self, request: Request) -> bool: + host = request.headers.get(hdrs.HOST) + if not host: + return False + return self.match_domain(host) + + def match_domain(self, host: str) -> bool: + return host.lower() == self._domain + + def get_info(self) -> _InfoDict: + return {"domain": self._domain} + + +class MaskDomain(Domain): + re_part = re.compile(r"(?!-)[a-z\d\*-]{1,63}(? None: + super().__init__(domain) + mask = self._domain.replace(".", r"\.").replace("*", ".*") + self._mask = re.compile(mask) + + @property + def canonical(self) -> str: + return self._mask.pattern + + def match_domain(self, host: str) -> bool: + return self._mask.fullmatch(host) is not None + + +class MatchedSubAppResource(PrefixedSubAppResource): + def __init__(self, rule: AbstractRuleMatching, app: "Application") -> None: + AbstractResource.__init__(self) + self._prefix = "" + self._app = app + self._rule = rule + + @property + def canonical(self) -> str: + return self._rule.canonical + + def get_info(self) -> _InfoDict: + return {"app": self._app, "rule": self._rule} + + async def resolve(self, request: Request) -> _Resolve: + if not await self._rule.match(request): + return None, set() + match_info = await self._app.router.resolve(request) + match_info.add_app(self._app) + if isinstance(match_info.http_exception, HTTPMethodNotAllowed): + methods = match_info.http_exception.allowed_methods + else: + methods = set() + return match_info, methods + + def __repr__(self) -> str: + return f" {self._app!r}>" + + +class ResourceRoute(AbstractRoute): + """A route with resource""" + + def __init__( + self, + method: str, + handler: Union[Handler, Type[AbstractView]], + resource: AbstractResource, + *, + expect_handler: Optional[_ExpectHandler] = None, + ) -> None: + super().__init__( + method, handler, expect_handler=expect_handler, resource=resource + ) + + def __repr__(self) -> str: + return " {handler!r}".format( + method=self.method, resource=self._resource, handler=self.handler + ) + + @property + def name(self) -> Optional[str]: + if self._resource is None: + return None + return self._resource.name + + def url_for(self, *args: str, **kwargs: str) -> URL: + """Construct url for route with additional params.""" + assert self._resource is not None + return self._resource.url_for(*args, **kwargs) + + def get_info(self) -> _InfoDict: + assert self._resource is not None + return self._resource.get_info() + + +class SystemRoute(AbstractRoute): + def __init__(self, http_exception: HTTPException) -> None: + super().__init__(hdrs.METH_ANY, self._handle) + self._http_exception = http_exception + + def url_for(self, *args: str, **kwargs: str) -> URL: + raise RuntimeError(".url_for() is not allowed for SystemRoute") + + @property + def name(self) -> Optional[str]: + return None + + def get_info(self) -> _InfoDict: + return {"http_exception": self._http_exception} + + async def _handle(self, request: Request) -> StreamResponse: + raise self._http_exception + + @property + def status(self) -> int: + return self._http_exception.status + + @property + def reason(self) -> str: + return self._http_exception.reason + + def __repr__(self) -> str: + return "".format(self=self) + + +class View(AbstractView): + async def _iter(self) -> StreamResponse: + if self.request.method not in hdrs.METH_ALL: + self._raise_allowed_methods() + method: Optional[Callable[[], Awaitable[StreamResponse]]] + method = getattr(self, self.request.method.lower(), None) + if method is None: + self._raise_allowed_methods() + ret = await method() + assert isinstance(ret, StreamResponse) + return ret + + def __await__(self) -> Generator[None, None, StreamResponse]: + return self._iter().__await__() + + def _raise_allowed_methods(self) -> NoReturn: + allowed_methods = {m for m in hdrs.METH_ALL if hasattr(self, m.lower())} + raise HTTPMethodNotAllowed(self.request.method, allowed_methods) + + +class ResourcesView(Sized, Iterable[AbstractResource], Container[AbstractResource]): + def __init__(self, resources: List[AbstractResource]) -> None: + self._resources = resources + + def __len__(self) -> int: + return len(self._resources) + + def __iter__(self) -> Iterator[AbstractResource]: + yield from self._resources + + def __contains__(self, resource: object) -> bool: + return resource in self._resources + + +class RoutesView(Sized, Iterable[AbstractRoute], Container[AbstractRoute]): + def __init__(self, resources: List[AbstractResource]): + self._routes: List[AbstractRoute] = [] + for resource in resources: + for route in resource: + self._routes.append(route) + + def __len__(self) -> int: + return len(self._routes) + + def __iter__(self) -> Iterator[AbstractRoute]: + yield from self._routes + + def __contains__(self, route: object) -> bool: + return route in self._routes + + +class UrlDispatcher(AbstractRouter, Mapping[str, AbstractResource]): + + NAME_SPLIT_RE = re.compile(r"[.:-]") + + def __init__(self) -> None: + super().__init__() + self._resources: List[AbstractResource] = [] + self._named_resources: Dict[str, AbstractResource] = {} + self._resource_index: dict[str, list[AbstractResource]] = {} + self._matched_sub_app_resources: List[MatchedSubAppResource] = [] + + async def resolve(self, request: Request) -> UrlMappingMatchInfo: + resource_index = self._resource_index + allowed_methods: Set[str] = set() + + # MatchedSubAppResource is primarily used to match on domain names + # (though custom rules could match on other things). This means that + # the traversal algorithm below can't be applied, and that we likely + # need to check these first so a sub app that defines the same path + # as a parent app will get priority if there's a domain match. + # + # For most cases we do not expect there to be many of these since + # currently they are only added by `.add_domain()`. + for resource in self._matched_sub_app_resources: + match_dict, allowed = await resource.resolve(request) + if match_dict is not None: + return match_dict + else: + allowed_methods |= allowed + + # Walk the url parts looking for candidates. We walk the url backwards + # to ensure the most explicit match is found first. If there are multiple + # candidates for a given url part because there are multiple resources + # registered for the same canonical path, we resolve them in a linear + # fashion to ensure registration order is respected. + url_part = request.rel_url.path_safe + while url_part: + for candidate in resource_index.get(url_part, ()): + match_dict, allowed = await candidate.resolve(request) + if match_dict is not None: + return match_dict + else: + allowed_methods |= allowed + if url_part == "/": + break + url_part = url_part.rpartition("/")[0] or "/" + + if allowed_methods: + return MatchInfoError(HTTPMethodNotAllowed(request.method, allowed_methods)) + + return MatchInfoError(HTTPNotFound()) + + def __iter__(self) -> Iterator[str]: + return iter(self._named_resources) + + def __len__(self) -> int: + return len(self._named_resources) + + def __contains__(self, resource: object) -> bool: + return resource in self._named_resources + + def __getitem__(self, name: str) -> AbstractResource: + return self._named_resources[name] + + def resources(self) -> ResourcesView: + return ResourcesView(self._resources) + + def routes(self) -> RoutesView: + return RoutesView(self._resources) + + def named_resources(self) -> Mapping[str, AbstractResource]: + return MappingProxyType(self._named_resources) + + def register_resource(self, resource: AbstractResource) -> None: + assert isinstance( + resource, AbstractResource + ), f"Instance of AbstractResource class is required, got {resource!r}" + if self.frozen: + raise RuntimeError("Cannot register a resource into frozen router.") + + name = resource.name + + if name is not None: + parts = self.NAME_SPLIT_RE.split(name) + for part in parts: + if keyword.iskeyword(part): + raise ValueError( + f"Incorrect route name {name!r}, " + "python keywords cannot be used " + "for route name" + ) + if not part.isidentifier(): + raise ValueError( + "Incorrect route name {!r}, " + "the name should be a sequence of " + "python identifiers separated " + "by dash, dot or column".format(name) + ) + if name in self._named_resources: + raise ValueError( + "Duplicate {!r}, " + "already handled by {!r}".format(name, self._named_resources[name]) + ) + self._named_resources[name] = resource + self._resources.append(resource) + + if isinstance(resource, MatchedSubAppResource): + # We cannot index match sub-app resources because they have match rules + self._matched_sub_app_resources.append(resource) + else: + self.index_resource(resource) + + def _get_resource_index_key(self, resource: AbstractResource) -> str: + """Return a key to index the resource in the resource index.""" + if "{" in (index_key := resource.canonical): + # strip at the first { to allow for variables, and than + # rpartition at / to allow for variable parts in the path + # For example if the canonical path is `/core/locations{tail:.*}` + # the index key will be `/core` since index is based on the + # url parts split by `/` + index_key = index_key.partition("{")[0].rpartition("/")[0] + return index_key.rstrip("/") or "/" + + def index_resource(self, resource: AbstractResource) -> None: + """Add a resource to the resource index.""" + resource_key = self._get_resource_index_key(resource) + # There may be multiple resources for a canonical path + # so we keep them in a list to ensure that registration + # order is respected. + self._resource_index.setdefault(resource_key, []).append(resource) + + def unindex_resource(self, resource: AbstractResource) -> None: + """Remove a resource from the resource index.""" + resource_key = self._get_resource_index_key(resource) + self._resource_index[resource_key].remove(resource) + + def add_resource(self, path: str, *, name: Optional[str] = None) -> Resource: + if path and not path.startswith("/"): + raise ValueError("path should be started with / or be empty") + # Reuse last added resource if path and name are the same + if self._resources: + resource = self._resources[-1] + if resource.name == name and resource.raw_match(path): + return cast(Resource, resource) + if not ("{" in path or "}" in path or ROUTE_RE.search(path)): + resource = PlainResource(path, name=name) + self.register_resource(resource) + return resource + resource = DynamicResource(path, name=name) + self.register_resource(resource) + return resource + + def add_route( + self, + method: str, + path: str, + handler: Union[Handler, Type[AbstractView]], + *, + name: Optional[str] = None, + expect_handler: Optional[_ExpectHandler] = None, + ) -> AbstractRoute: + resource = self.add_resource(path, name=name) + return resource.add_route(method, handler, expect_handler=expect_handler) + + def add_static( + self, + prefix: str, + path: PathLike, + *, + name: Optional[str] = None, + expect_handler: Optional[_ExpectHandler] = None, + chunk_size: int = 256 * 1024, + show_index: bool = False, + follow_symlinks: bool = False, + append_version: bool = False, + ) -> AbstractResource: + """Add static files view. + + prefix - url prefix + path - folder with files + + """ + assert prefix.startswith("/") + if prefix.endswith("/"): + prefix = prefix[:-1] + resource = StaticResource( + prefix, + path, + name=name, + expect_handler=expect_handler, + chunk_size=chunk_size, + show_index=show_index, + follow_symlinks=follow_symlinks, + append_version=append_version, + ) + self.register_resource(resource) + return resource + + def add_head(self, path: str, handler: Handler, **kwargs: Any) -> AbstractRoute: + """Shortcut for add_route with method HEAD.""" + return self.add_route(hdrs.METH_HEAD, path, handler, **kwargs) + + def add_options(self, path: str, handler: Handler, **kwargs: Any) -> AbstractRoute: + """Shortcut for add_route with method OPTIONS.""" + return self.add_route(hdrs.METH_OPTIONS, path, handler, **kwargs) + + def add_get( + self, + path: str, + handler: Handler, + *, + name: Optional[str] = None, + allow_head: bool = True, + **kwargs: Any, + ) -> AbstractRoute: + """Shortcut for add_route with method GET. + + If allow_head is true, another + route is added allowing head requests to the same endpoint. + """ + resource = self.add_resource(path, name=name) + if allow_head: + resource.add_route(hdrs.METH_HEAD, handler, **kwargs) + return resource.add_route(hdrs.METH_GET, handler, **kwargs) + + def add_post(self, path: str, handler: Handler, **kwargs: Any) -> AbstractRoute: + """Shortcut for add_route with method POST.""" + return self.add_route(hdrs.METH_POST, path, handler, **kwargs) + + def add_put(self, path: str, handler: Handler, **kwargs: Any) -> AbstractRoute: + """Shortcut for add_route with method PUT.""" + return self.add_route(hdrs.METH_PUT, path, handler, **kwargs) + + def add_patch(self, path: str, handler: Handler, **kwargs: Any) -> AbstractRoute: + """Shortcut for add_route with method PATCH.""" + return self.add_route(hdrs.METH_PATCH, path, handler, **kwargs) + + def add_delete(self, path: str, handler: Handler, **kwargs: Any) -> AbstractRoute: + """Shortcut for add_route with method DELETE.""" + return self.add_route(hdrs.METH_DELETE, path, handler, **kwargs) + + def add_view( + self, path: str, handler: Type[AbstractView], **kwargs: Any + ) -> AbstractRoute: + """Shortcut for add_route with ANY methods for a class-based view.""" + return self.add_route(hdrs.METH_ANY, path, handler, **kwargs) + + def freeze(self) -> None: + super().freeze() + for resource in self._resources: + resource.freeze() + + def add_routes(self, routes: Iterable[AbstractRouteDef]) -> List[AbstractRoute]: + """Append routes to route table. + + Parameter should be a sequence of RouteDef objects. + + Returns a list of registered AbstractRoute instances. + """ + registered_routes = [] + for route_def in routes: + registered_routes.extend(route_def.register(self)) + return registered_routes + + +def _quote_path(value: str) -> str: + if YARL_VERSION < (1, 6): + value = value.replace("%", "%25") + return URL.build(path=value, encoded=False).raw_path + + +def _unquote_path_safe(value: str) -> str: + if "%" not in value: + return value + return value.replace("%2F", "/").replace("%25", "%") + + +def _requote_path(value: str) -> str: + # Quote non-ascii characters and other characters which must be quoted, + # but preserve existing %-sequences. + result = _quote_path(value) + if "%" in value: + result = result.replace("%25", "%") + return result diff --git a/venv/lib/python3.9/site-packages/aiohttp/web_ws.py b/venv/lib/python3.9/site-packages/aiohttp/web_ws.py new file mode 100644 index 0000000..575f9a3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/web_ws.py @@ -0,0 +1,631 @@ +import asyncio +import base64 +import binascii +import hashlib +import json +import sys +from typing import Any, Final, Iterable, Optional, Tuple, Union, cast + +import attr +from multidict import CIMultiDict + +from . import hdrs +from ._websocket.reader import WebSocketDataQueue +from ._websocket.writer import DEFAULT_LIMIT +from .abc import AbstractStreamWriter +from .client_exceptions import WSMessageTypeError +from .helpers import calculate_timeout_when, set_exception, set_result +from .http import ( + WS_CLOSED_MESSAGE, + WS_CLOSING_MESSAGE, + WS_KEY, + WebSocketError, + WebSocketReader, + WebSocketWriter, + WSCloseCode, + WSMessage, + WSMsgType as WSMsgType, + ws_ext_gen, + ws_ext_parse, +) +from .http_websocket import _INTERNAL_RECEIVE_TYPES +from .log import ws_logger +from .streams import EofStream +from .typedefs import JSONDecoder, JSONEncoder +from .web_exceptions import HTTPBadRequest, HTTPException +from .web_request import BaseRequest +from .web_response import StreamResponse + +if sys.version_info >= (3, 11): + import asyncio as async_timeout +else: + import async_timeout + +__all__ = ( + "WebSocketResponse", + "WebSocketReady", + "WSMsgType", +) + +THRESHOLD_CONNLOST_ACCESS: Final[int] = 5 + + +@attr.s(auto_attribs=True, frozen=True, slots=True) +class WebSocketReady: + ok: bool + protocol: Optional[str] + + def __bool__(self) -> bool: + return self.ok + + +class WebSocketResponse(StreamResponse): + + _length_check: bool = False + _ws_protocol: Optional[str] = None + _writer: Optional[WebSocketWriter] = None + _reader: Optional[WebSocketDataQueue] = None + _closed: bool = False + _closing: bool = False + _conn_lost: int = 0 + _close_code: Optional[int] = None + _loop: Optional[asyncio.AbstractEventLoop] = None + _waiting: bool = False + _close_wait: Optional[asyncio.Future[None]] = None + _exception: Optional[BaseException] = None + _heartbeat_when: float = 0.0 + _heartbeat_cb: Optional[asyncio.TimerHandle] = None + _pong_response_cb: Optional[asyncio.TimerHandle] = None + _ping_task: Optional[asyncio.Task[None]] = None + + def __init__( + self, + *, + timeout: float = 10.0, + receive_timeout: Optional[float] = None, + autoclose: bool = True, + autoping: bool = True, + heartbeat: Optional[float] = None, + protocols: Iterable[str] = (), + compress: bool = True, + max_msg_size: int = 4 * 1024 * 1024, + writer_limit: int = DEFAULT_LIMIT, + ) -> None: + super().__init__(status=101) + self._protocols = protocols + self._timeout = timeout + self._receive_timeout = receive_timeout + self._autoclose = autoclose + self._autoping = autoping + self._heartbeat = heartbeat + if heartbeat is not None: + self._pong_heartbeat = heartbeat / 2.0 + self._compress: Union[bool, int] = compress + self._max_msg_size = max_msg_size + self._writer_limit = writer_limit + + def _cancel_heartbeat(self) -> None: + self._cancel_pong_response_cb() + if self._heartbeat_cb is not None: + self._heartbeat_cb.cancel() + self._heartbeat_cb = None + if self._ping_task is not None: + self._ping_task.cancel() + self._ping_task = None + + def _cancel_pong_response_cb(self) -> None: + if self._pong_response_cb is not None: + self._pong_response_cb.cancel() + self._pong_response_cb = None + + def _reset_heartbeat(self) -> None: + if self._heartbeat is None: + return + self._cancel_pong_response_cb() + req = self._req + timeout_ceil_threshold = ( + req._protocol._timeout_ceil_threshold if req is not None else 5 + ) + loop = self._loop + assert loop is not None + now = loop.time() + when = calculate_timeout_when(now, self._heartbeat, timeout_ceil_threshold) + self._heartbeat_when = when + if self._heartbeat_cb is None: + # We do not cancel the previous heartbeat_cb here because + # it generates a significant amount of TimerHandle churn + # which causes asyncio to rebuild the heap frequently. + # Instead _send_heartbeat() will reschedule the next + # heartbeat if it fires too early. + self._heartbeat_cb = loop.call_at(when, self._send_heartbeat) + + def _send_heartbeat(self) -> None: + self._heartbeat_cb = None + loop = self._loop + assert loop is not None and self._writer is not None + now = loop.time() + if now < self._heartbeat_when: + # Heartbeat fired too early, reschedule + self._heartbeat_cb = loop.call_at( + self._heartbeat_when, self._send_heartbeat + ) + return + + req = self._req + timeout_ceil_threshold = ( + req._protocol._timeout_ceil_threshold if req is not None else 5 + ) + when = calculate_timeout_when(now, self._pong_heartbeat, timeout_ceil_threshold) + self._cancel_pong_response_cb() + self._pong_response_cb = loop.call_at(when, self._pong_not_received) + + coro = self._writer.send_frame(b"", WSMsgType.PING) + if sys.version_info >= (3, 12): + # Optimization for Python 3.12, try to send the ping + # immediately to avoid having to schedule + # the task on the event loop. + ping_task = asyncio.Task(coro, loop=loop, eager_start=True) + else: + ping_task = loop.create_task(coro) + + if not ping_task.done(): + self._ping_task = ping_task + ping_task.add_done_callback(self._ping_task_done) + else: + self._ping_task_done(ping_task) + + def _ping_task_done(self, task: "asyncio.Task[None]") -> None: + """Callback for when the ping task completes.""" + if not task.cancelled() and (exc := task.exception()): + self._handle_ping_pong_exception(exc) + self._ping_task = None + + def _pong_not_received(self) -> None: + if self._req is not None and self._req.transport is not None: + self._handle_ping_pong_exception( + asyncio.TimeoutError( + f"No PONG received after {self._pong_heartbeat} seconds" + ) + ) + + def _handle_ping_pong_exception(self, exc: BaseException) -> None: + """Handle exceptions raised during ping/pong processing.""" + if self._closed: + return + self._set_closed() + self._set_code_close_transport(WSCloseCode.ABNORMAL_CLOSURE) + self._exception = exc + if self._waiting and not self._closing and self._reader is not None: + self._reader.feed_data(WSMessage(WSMsgType.ERROR, exc, None), 0) + + def _set_closed(self) -> None: + """Set the connection to closed. + + Cancel any heartbeat timers and set the closed flag. + """ + self._closed = True + self._cancel_heartbeat() + + async def prepare(self, request: BaseRequest) -> AbstractStreamWriter: + # make pre-check to don't hide it by do_handshake() exceptions + if self._payload_writer is not None: + return self._payload_writer + + protocol, writer = self._pre_start(request) + payload_writer = await super().prepare(request) + assert payload_writer is not None + self._post_start(request, protocol, writer) + await payload_writer.drain() + return payload_writer + + def _handshake( + self, request: BaseRequest + ) -> Tuple["CIMultiDict[str]", Optional[str], int, bool]: + headers = request.headers + if "websocket" != headers.get(hdrs.UPGRADE, "").lower().strip(): + raise HTTPBadRequest( + text=( + "No WebSocket UPGRADE hdr: {}\n Can " + '"Upgrade" only to "WebSocket".' + ).format(headers.get(hdrs.UPGRADE)) + ) + + if "upgrade" not in headers.get(hdrs.CONNECTION, "").lower(): + raise HTTPBadRequest( + text="No CONNECTION upgrade hdr: {}".format( + headers.get(hdrs.CONNECTION) + ) + ) + + # find common sub-protocol between client and server + protocol: Optional[str] = None + if hdrs.SEC_WEBSOCKET_PROTOCOL in headers: + req_protocols = [ + str(proto.strip()) + for proto in headers[hdrs.SEC_WEBSOCKET_PROTOCOL].split(",") + ] + + for proto in req_protocols: + if proto in self._protocols: + protocol = proto + break + else: + # No overlap found: Return no protocol as per spec + ws_logger.warning( + "%s: Client protocols %r don’t overlap server-known ones %r", + request.remote, + req_protocols, + self._protocols, + ) + + # check supported version + version = headers.get(hdrs.SEC_WEBSOCKET_VERSION, "") + if version not in ("13", "8", "7"): + raise HTTPBadRequest(text=f"Unsupported version: {version}") + + # check client handshake for validity + key = headers.get(hdrs.SEC_WEBSOCKET_KEY) + try: + if not key or len(base64.b64decode(key)) != 16: + raise HTTPBadRequest(text=f"Handshake error: {key!r}") + except binascii.Error: + raise HTTPBadRequest(text=f"Handshake error: {key!r}") from None + + accept_val = base64.b64encode( + hashlib.sha1(key.encode() + WS_KEY).digest() + ).decode() + response_headers = CIMultiDict( + { + hdrs.UPGRADE: "websocket", + hdrs.CONNECTION: "upgrade", + hdrs.SEC_WEBSOCKET_ACCEPT: accept_val, + } + ) + + notakeover = False + compress = 0 + if self._compress: + extensions = headers.get(hdrs.SEC_WEBSOCKET_EXTENSIONS) + # Server side always get return with no exception. + # If something happened, just drop compress extension + compress, notakeover = ws_ext_parse(extensions, isserver=True) + if compress: + enabledext = ws_ext_gen( + compress=compress, isserver=True, server_notakeover=notakeover + ) + response_headers[hdrs.SEC_WEBSOCKET_EXTENSIONS] = enabledext + + if protocol: + response_headers[hdrs.SEC_WEBSOCKET_PROTOCOL] = protocol + return ( + response_headers, + protocol, + compress, + notakeover, + ) + + def _pre_start(self, request: BaseRequest) -> Tuple[Optional[str], WebSocketWriter]: + self._loop = request._loop + + headers, protocol, compress, notakeover = self._handshake(request) + + self.set_status(101) + self.headers.update(headers) + self.force_close() + self._compress = compress + transport = request._protocol.transport + assert transport is not None + writer = WebSocketWriter( + request._protocol, + transport, + compress=compress, + notakeover=notakeover, + limit=self._writer_limit, + ) + + return protocol, writer + + def _post_start( + self, request: BaseRequest, protocol: Optional[str], writer: WebSocketWriter + ) -> None: + self._ws_protocol = protocol + self._writer = writer + + self._reset_heartbeat() + + loop = self._loop + assert loop is not None + self._reader = WebSocketDataQueue(request._protocol, 2**16, loop=loop) + request.protocol.set_parser( + WebSocketReader( + self._reader, self._max_msg_size, compress=bool(self._compress) + ) + ) + # disable HTTP keepalive for WebSocket + request.protocol.keep_alive(False) + + def can_prepare(self, request: BaseRequest) -> WebSocketReady: + if self._writer is not None: + raise RuntimeError("Already started") + try: + _, protocol, _, _ = self._handshake(request) + except HTTPException: + return WebSocketReady(False, None) + else: + return WebSocketReady(True, protocol) + + @property + def prepared(self) -> bool: + return self._writer is not None + + @property + def closed(self) -> bool: + return self._closed + + @property + def close_code(self) -> Optional[int]: + return self._close_code + + @property + def ws_protocol(self) -> Optional[str]: + return self._ws_protocol + + @property + def compress(self) -> Union[int, bool]: + return self._compress + + def get_extra_info(self, name: str, default: Any = None) -> Any: + """Get optional transport information. + + If no value associated with ``name`` is found, ``default`` is returned. + """ + writer = self._writer + if writer is None: + return default + transport = writer.transport + if transport is None: + return default + return transport.get_extra_info(name, default) + + def exception(self) -> Optional[BaseException]: + return self._exception + + async def ping(self, message: bytes = b"") -> None: + if self._writer is None: + raise RuntimeError("Call .prepare() first") + await self._writer.send_frame(message, WSMsgType.PING) + + async def pong(self, message: bytes = b"") -> None: + # unsolicited pong + if self._writer is None: + raise RuntimeError("Call .prepare() first") + await self._writer.send_frame(message, WSMsgType.PONG) + + async def send_frame( + self, message: bytes, opcode: WSMsgType, compress: Optional[int] = None + ) -> None: + """Send a frame over the websocket.""" + if self._writer is None: + raise RuntimeError("Call .prepare() first") + await self._writer.send_frame(message, opcode, compress) + + async def send_str(self, data: str, compress: Optional[int] = None) -> None: + if self._writer is None: + raise RuntimeError("Call .prepare() first") + if not isinstance(data, str): + raise TypeError("data argument must be str (%r)" % type(data)) + await self._writer.send_frame( + data.encode("utf-8"), WSMsgType.TEXT, compress=compress + ) + + async def send_bytes(self, data: bytes, compress: Optional[int] = None) -> None: + if self._writer is None: + raise RuntimeError("Call .prepare() first") + if not isinstance(data, (bytes, bytearray, memoryview)): + raise TypeError("data argument must be byte-ish (%r)" % type(data)) + await self._writer.send_frame(data, WSMsgType.BINARY, compress=compress) + + async def send_json( + self, + data: Any, + compress: Optional[int] = None, + *, + dumps: JSONEncoder = json.dumps, + ) -> None: + await self.send_str(dumps(data), compress=compress) + + async def write_eof(self) -> None: # type: ignore[override] + if self._eof_sent: + return + if self._payload_writer is None: + raise RuntimeError("Response has not been started") + + await self.close() + self._eof_sent = True + + async def close( + self, *, code: int = WSCloseCode.OK, message: bytes = b"", drain: bool = True + ) -> bool: + """Close websocket connection.""" + if self._writer is None: + raise RuntimeError("Call .prepare() first") + + if self._closed: + return False + self._set_closed() + + try: + await self._writer.close(code, message) + writer = self._payload_writer + assert writer is not None + if drain: + await writer.drain() + except (asyncio.CancelledError, asyncio.TimeoutError): + self._set_code_close_transport(WSCloseCode.ABNORMAL_CLOSURE) + raise + except Exception as exc: + self._exception = exc + self._set_code_close_transport(WSCloseCode.ABNORMAL_CLOSURE) + return True + + reader = self._reader + assert reader is not None + # we need to break `receive()` cycle before we can call + # `reader.read()` as `close()` may be called from different task + if self._waiting: + assert self._loop is not None + assert self._close_wait is None + self._close_wait = self._loop.create_future() + reader.feed_data(WS_CLOSING_MESSAGE, 0) + await self._close_wait + + if self._closing: + self._close_transport() + return True + + try: + async with async_timeout.timeout(self._timeout): + while True: + msg = await reader.read() + if msg.type is WSMsgType.CLOSE: + self._set_code_close_transport(msg.data) + return True + except asyncio.CancelledError: + self._set_code_close_transport(WSCloseCode.ABNORMAL_CLOSURE) + raise + except Exception as exc: + self._exception = exc + self._set_code_close_transport(WSCloseCode.ABNORMAL_CLOSURE) + return True + + def _set_closing(self, code: WSCloseCode) -> None: + """Set the close code and mark the connection as closing.""" + self._closing = True + self._close_code = code + self._cancel_heartbeat() + + def _set_code_close_transport(self, code: WSCloseCode) -> None: + """Set the close code and close the transport.""" + self._close_code = code + self._close_transport() + + def _close_transport(self) -> None: + """Close the transport.""" + if self._req is not None and self._req.transport is not None: + self._req.transport.close() + + async def receive(self, timeout: Optional[float] = None) -> WSMessage: + if self._reader is None: + raise RuntimeError("Call .prepare() first") + + receive_timeout = timeout or self._receive_timeout + while True: + if self._waiting: + raise RuntimeError("Concurrent call to receive() is not allowed") + + if self._closed: + self._conn_lost += 1 + if self._conn_lost >= THRESHOLD_CONNLOST_ACCESS: + raise RuntimeError("WebSocket connection is closed.") + return WS_CLOSED_MESSAGE + elif self._closing: + return WS_CLOSING_MESSAGE + + try: + self._waiting = True + try: + if receive_timeout: + # Entering the context manager and creating + # Timeout() object can take almost 50% of the + # run time in this loop so we avoid it if + # there is no read timeout. + async with async_timeout.timeout(receive_timeout): + msg = await self._reader.read() + else: + msg = await self._reader.read() + self._reset_heartbeat() + finally: + self._waiting = False + if self._close_wait: + set_result(self._close_wait, None) + except asyncio.TimeoutError: + raise + except EofStream: + self._close_code = WSCloseCode.OK + await self.close() + return WSMessage(WSMsgType.CLOSED, None, None) + except WebSocketError as exc: + self._close_code = exc.code + await self.close(code=exc.code) + return WSMessage(WSMsgType.ERROR, exc, None) + except Exception as exc: + self._exception = exc + self._set_closing(WSCloseCode.ABNORMAL_CLOSURE) + await self.close() + return WSMessage(WSMsgType.ERROR, exc, None) + + if msg.type not in _INTERNAL_RECEIVE_TYPES: + # If its not a close/closing/ping/pong message + # we can return it immediately + return msg + + if msg.type is WSMsgType.CLOSE: + self._set_closing(msg.data) + # Could be closed while awaiting reader. + if not self._closed and self._autoclose: + # The client is likely going to close the + # connection out from under us so we do not + # want to drain any pending writes as it will + # likely result writing to a broken pipe. + await self.close(drain=False) + elif msg.type is WSMsgType.CLOSING: + self._set_closing(WSCloseCode.OK) + elif msg.type is WSMsgType.PING and self._autoping: + await self.pong(msg.data) + continue + elif msg.type is WSMsgType.PONG and self._autoping: + continue + + return msg + + async def receive_str(self, *, timeout: Optional[float] = None) -> str: + msg = await self.receive(timeout) + if msg.type is not WSMsgType.TEXT: + raise WSMessageTypeError( + f"Received message {msg.type}:{msg.data!r} is not WSMsgType.TEXT" + ) + return cast(str, msg.data) + + async def receive_bytes(self, *, timeout: Optional[float] = None) -> bytes: + msg = await self.receive(timeout) + if msg.type is not WSMsgType.BINARY: + raise WSMessageTypeError( + f"Received message {msg.type}:{msg.data!r} is not WSMsgType.BINARY" + ) + return cast(bytes, msg.data) + + async def receive_json( + self, *, loads: JSONDecoder = json.loads, timeout: Optional[float] = None + ) -> Any: + data = await self.receive_str(timeout=timeout) + return loads(data) + + async def write(self, data: bytes) -> None: + raise RuntimeError("Cannot call .write() for websocket") + + def __aiter__(self) -> "WebSocketResponse": + return self + + async def __anext__(self) -> WSMessage: + msg = await self.receive() + if msg.type in (WSMsgType.CLOSE, WSMsgType.CLOSING, WSMsgType.CLOSED): + raise StopAsyncIteration + return msg + + def _cancel(self, exc: BaseException) -> None: + # web_protocol calls this from connection_lost + # or when the server is shutting down. + self._closing = True + self._cancel_heartbeat() + if self._reader is not None: + set_exception(self._reader, exc) diff --git a/venv/lib/python3.9/site-packages/aiohttp/worker.py b/venv/lib/python3.9/site-packages/aiohttp/worker.py new file mode 100644 index 0000000..00ec79c --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiohttp/worker.py @@ -0,0 +1,262 @@ +"""Async gunicorn worker for aiohttp.web""" + +import asyncio +import inspect +import os +import re +import signal +import sys +from types import FrameType +from typing import TYPE_CHECKING, Any, Optional + +from gunicorn.config import AccessLogFormat as GunicornAccessLogFormat +from gunicorn.workers import base + +from aiohttp import web + +from .helpers import set_result +from .web_app import Application +from .web_log import AccessLogger + +if TYPE_CHECKING: + import ssl + + SSLContext = ssl.SSLContext +else: + try: + import ssl + + SSLContext = ssl.SSLContext + except ImportError: # pragma: no cover + ssl = None # type: ignore[assignment] + SSLContext = object # type: ignore[misc,assignment] + + +__all__ = ("GunicornWebWorker", "GunicornUVLoopWebWorker") + + +class GunicornWebWorker(base.Worker): # type: ignore[misc,no-any-unimported] + DEFAULT_AIOHTTP_LOG_FORMAT = AccessLogger.LOG_FORMAT + DEFAULT_GUNICORN_LOG_FORMAT = GunicornAccessLogFormat.default + + def __init__(self, *args: Any, **kw: Any) -> None: # pragma: no cover + super().__init__(*args, **kw) + + self._task: Optional[asyncio.Task[None]] = None + self.exit_code = 0 + self._notify_waiter: Optional[asyncio.Future[bool]] = None + + def init_process(self) -> None: + # create new event_loop after fork + try: + asyncio.get_event_loop().close() + except RuntimeError: + # No loop was running + pass + + self.loop = asyncio.new_event_loop() + asyncio.set_event_loop(self.loop) + + super().init_process() + + def run(self) -> None: + self._task = self.loop.create_task(self._run()) + + try: # ignore all finalization problems + self.loop.run_until_complete(self._task) + except Exception: + self.log.exception("Exception in gunicorn worker") + self.loop.run_until_complete(self.loop.shutdown_asyncgens()) + self.loop.close() + + sys.exit(self.exit_code) + + async def _run(self) -> None: + runner = None + if isinstance(self.wsgi, Application): + app = self.wsgi + elif inspect.iscoroutinefunction(self.wsgi) or ( + sys.version_info < (3, 14) and asyncio.iscoroutinefunction(self.wsgi) + ): + wsgi = await self.wsgi() + if isinstance(wsgi, web.AppRunner): + runner = wsgi + app = runner.app + else: + app = wsgi + else: + raise RuntimeError( + "wsgi app should be either Application or " + "async function returning Application, got {}".format(self.wsgi) + ) + + if runner is None: + access_log = self.log.access_log if self.cfg.accesslog else None + runner = web.AppRunner( + app, + logger=self.log, + keepalive_timeout=self.cfg.keepalive, + access_log=access_log, + access_log_format=self._get_valid_log_format( + self.cfg.access_log_format + ), + shutdown_timeout=self.cfg.graceful_timeout / 100 * 95, + ) + await runner.setup() + + ctx = self._create_ssl_context(self.cfg) if self.cfg.is_ssl else None + + runner = runner + assert runner is not None + server = runner.server + assert server is not None + for sock in self.sockets: + site = web.SockSite( + runner, + sock, + ssl_context=ctx, + ) + await site.start() + + # If our parent changed then we shut down. + pid = os.getpid() + try: + while self.alive: # type: ignore[has-type] + self.notify() + + cnt = server.requests_count + if self.max_requests and cnt > self.max_requests: + self.alive = False + self.log.info("Max requests, shutting down: %s", self) + + elif pid == os.getpid() and self.ppid != os.getppid(): + self.alive = False + self.log.info("Parent changed, shutting down: %s", self) + else: + await self._wait_next_notify() + except BaseException: + pass + + await runner.cleanup() + + def _wait_next_notify(self) -> "asyncio.Future[bool]": + self._notify_waiter_done() + + loop = self.loop + assert loop is not None + self._notify_waiter = waiter = loop.create_future() + self.loop.call_later(1.0, self._notify_waiter_done, waiter) + + return waiter + + def _notify_waiter_done( + self, waiter: Optional["asyncio.Future[bool]"] = None + ) -> None: + if waiter is None: + waiter = self._notify_waiter + if waiter is not None: + set_result(waiter, True) + + if waiter is self._notify_waiter: + self._notify_waiter = None + + def init_signals(self) -> None: + # Set up signals through the event loop API. + + self.loop.add_signal_handler( + signal.SIGQUIT, self.handle_quit, signal.SIGQUIT, None + ) + + self.loop.add_signal_handler( + signal.SIGTERM, self.handle_exit, signal.SIGTERM, None + ) + + self.loop.add_signal_handler( + signal.SIGINT, self.handle_quit, signal.SIGINT, None + ) + + self.loop.add_signal_handler( + signal.SIGWINCH, self.handle_winch, signal.SIGWINCH, None + ) + + self.loop.add_signal_handler( + signal.SIGUSR1, self.handle_usr1, signal.SIGUSR1, None + ) + + self.loop.add_signal_handler( + signal.SIGABRT, self.handle_abort, signal.SIGABRT, None + ) + + # Don't let SIGTERM and SIGUSR1 disturb active requests + # by interrupting system calls + signal.siginterrupt(signal.SIGTERM, False) + signal.siginterrupt(signal.SIGUSR1, False) + # Reset signals so Gunicorn doesn't swallow subprocess return codes + # See: https://github.com/aio-libs/aiohttp/issues/6130 + + def handle_quit(self, sig: int, frame: Optional[FrameType]) -> None: + self.alive = False + + # worker_int callback + self.cfg.worker_int(self) + + # wakeup closing process + self._notify_waiter_done() + + def handle_abort(self, sig: int, frame: Optional[FrameType]) -> None: + self.alive = False + self.exit_code = 1 + self.cfg.worker_abort(self) + sys.exit(1) + + @staticmethod + def _create_ssl_context(cfg: Any) -> "SSLContext": + """Creates SSLContext instance for usage in asyncio.create_server. + + See ssl.SSLSocket.__init__ for more details. + """ + if ssl is None: # pragma: no cover + raise RuntimeError("SSL is not supported.") + + ctx = ssl.SSLContext(cfg.ssl_version) + ctx.load_cert_chain(cfg.certfile, cfg.keyfile) + ctx.verify_mode = cfg.cert_reqs + if cfg.ca_certs: + ctx.load_verify_locations(cfg.ca_certs) + if cfg.ciphers: + ctx.set_ciphers(cfg.ciphers) + return ctx + + def _get_valid_log_format(self, source_format: str) -> str: + if source_format == self.DEFAULT_GUNICORN_LOG_FORMAT: + return self.DEFAULT_AIOHTTP_LOG_FORMAT + elif re.search(r"%\([^\)]+\)", source_format): + raise ValueError( + "Gunicorn's style options in form of `%(name)s` are not " + "supported for the log formatting. Please use aiohttp's " + "format specification to configure access log formatting: " + "http://docs.aiohttp.org/en/stable/logging.html" + "#format-specification" + ) + else: + return source_format + + +class GunicornUVLoopWebWorker(GunicornWebWorker): + def init_process(self) -> None: + import uvloop + + # Close any existing event loop before setting a + # new policy. + try: + asyncio.get_event_loop().close() + except RuntimeError: + # No loop was running + pass + + # Setup uvloop policy, so that every + # asyncio.get_event_loop() will create an instance + # of uvloop event loop. + asyncio.set_event_loop_policy(uvloop.EventLoopPolicy()) + + super().init_process() diff --git a/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/METADATA b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/METADATA new file mode 100644 index 0000000..03a6f0f --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/METADATA @@ -0,0 +1,112 @@ +Metadata-Version: 2.4 +Name: aiosignal +Version: 1.4.0 +Summary: aiosignal: a list of registered asynchronous callbacks +Home-page: https://github.com/aio-libs/aiosignal +Maintainer: aiohttp team +Maintainer-email: team@aiohttp.org +License: Apache 2.0 +Project-URL: Chat: Gitter, https://gitter.im/aio-libs/Lobby +Project-URL: CI: GitHub Actions, https://github.com/aio-libs/aiosignal/actions +Project-URL: Coverage: codecov, https://codecov.io/github/aio-libs/aiosignal +Project-URL: Docs: RTD, https://docs.aiosignal.org +Project-URL: GitHub: issues, https://github.com/aio-libs/aiosignal/issues +Project-URL: GitHub: repo, https://github.com/aio-libs/aiosignal +Classifier: License :: OSI Approved :: Apache Software License +Classifier: Intended Audience :: Developers +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3 :: Only +Classifier: Development Status :: 5 - Production/Stable +Classifier: Operating System :: POSIX +Classifier: Operating System :: MacOS :: MacOS X +Classifier: Operating System :: Microsoft :: Windows +Classifier: Framework :: AsyncIO +Requires-Python: >=3.9 +Description-Content-Type: text/x-rst +License-File: LICENSE +Requires-Dist: frozenlist>=1.1.0 +Requires-Dist: typing-extensions>=4.2; python_version < "3.13" +Dynamic: license-file + +========= +aiosignal +========= + +.. image:: https://github.com/aio-libs/aiosignal/workflows/CI/badge.svg + :target: https://github.com/aio-libs/aiosignal/actions?query=workflow%3ACI + :alt: GitHub status for master branch + +.. image:: https://codecov.io/gh/aio-libs/aiosignal/branch/master/graph/badge.svg?flag=pytest + :target: https://codecov.io/gh/aio-libs/aiosignal?flags[0]=pytest + :alt: codecov.io status for master branch + +.. image:: https://badge.fury.io/py/aiosignal.svg + :target: https://pypi.org/project/aiosignal + :alt: Latest PyPI package version + +.. image:: https://readthedocs.org/projects/aiosignal/badge/?version=latest + :target: https://aiosignal.readthedocs.io/ + :alt: Latest Read The Docs + +.. image:: https://img.shields.io/discourse/topics?server=https%3A%2F%2Faio-libs.discourse.group%2F + :target: https://aio-libs.discourse.group/ + :alt: Discourse group for io-libs + +.. image:: https://badges.gitter.im/Join%20Chat.svg + :target: https://gitter.im/aio-libs/Lobby + :alt: Chat on Gitter + +Introduction +============ + +A project to manage callbacks in `asyncio` projects. + +``Signal`` is a list of registered asynchronous callbacks. + +The signal's life-cycle has two stages: after creation its content +could be filled by using standard list operations: ``sig.append()`` +etc. + +After you call ``sig.freeze()`` the signal is *frozen*: adding, removing +and dropping callbacks is forbidden. + +The only available operation is calling the previously registered +callbacks by using ``await sig.send(data)``. + +For concrete usage examples see the `Signals + +section of the `Web Server Advanced +` chapter of the `aiohttp +documentation`_. + + +Installation +------------ + +:: + + $ pip install aiosignal + + +Documentation +============= + +https://aiosignal.readthedocs.io/ + +License +======= + +``aiosignal`` is offered under the Apache 2 license. + +Source code +=========== + +The project is hosted on GitHub_ + +Please file an issue in the `bug tracker +`_ if you have found a bug +or have some suggestions to improve the library. + +.. _GitHub: https://github.com/aio-libs/aiosignal +.. _aiohttp documentation: https://docs.aiohttp.org/ diff --git a/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/RECORD b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/RECORD new file mode 100644 index 0000000..816ef02 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/RECORD @@ -0,0 +1,9 @@ +aiosignal-1.4.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +aiosignal-1.4.0.dist-info/METADATA,sha256=CSR-8dqLxpZyjUcTDnAuQwf299EB1sSFv_nzpxznAI0,3662 +aiosignal-1.4.0.dist-info/RECORD,, +aiosignal-1.4.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91 +aiosignal-1.4.0.dist-info/licenses/LICENSE,sha256=b9UkPpLdf5jsacesN3co50kFcJ_1J6W_mNbQJjwE9bY,11332 +aiosignal-1.4.0.dist-info/top_level.txt,sha256=z45aNOKGDdrI1roqZY3BGXQ22kJFPHBmVdwtLYLtXC0,10 +aiosignal/__init__.py,sha256=TIkmUG9HTBt4dfq2nISYBiZiRB2xwvFtEZydLP0HPL4,1537 +aiosignal/__pycache__/__init__.cpython-39.pyc,, +aiosignal/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 diff --git a/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/WHEEL b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/WHEEL new file mode 100644 index 0000000..e7fa31b --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: setuptools (80.9.0) +Root-Is-Purelib: true +Tag: py3-none-any + diff --git a/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/licenses/LICENSE b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/licenses/LICENSE new file mode 100644 index 0000000..7082a2d --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/licenses/LICENSE @@ -0,0 +1,201 @@ +Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2013-2019 Nikolay Kim and Andrew Svetlov + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/top_level.txt new file mode 100644 index 0000000..ac6df3a --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiosignal-1.4.0.dist-info/top_level.txt @@ -0,0 +1 @@ +aiosignal diff --git a/venv/lib/python3.9/site-packages/aiosignal/__init__.py b/venv/lib/python3.9/site-packages/aiosignal/__init__.py new file mode 100644 index 0000000..5ede009 --- /dev/null +++ b/venv/lib/python3.9/site-packages/aiosignal/__init__.py @@ -0,0 +1,59 @@ +import sys +from typing import Any, Awaitable, Callable, TypeVar + +from frozenlist import FrozenList + +if sys.version_info >= (3, 11): + from typing import Unpack +else: + from typing_extensions import Unpack + +if sys.version_info >= (3, 13): + from typing import TypeVarTuple +else: + from typing_extensions import TypeVarTuple + +_T = TypeVar("_T") +_Ts = TypeVarTuple("_Ts", default=Unpack[tuple[()]]) + +__version__ = "1.4.0" + +__all__ = ("Signal",) + + +class Signal(FrozenList[Callable[[Unpack[_Ts]], Awaitable[object]]]): + """Coroutine-based signal implementation. + + To connect a callback to a signal, use any list method. + + Signals are fired using the send() coroutine, which takes named + arguments. + """ + + __slots__ = ("_owner",) + + def __init__(self, owner: object): + super().__init__() + self._owner = owner + + def __repr__(self) -> str: + return "".format( + self._owner, self.frozen, list(self) + ) + + async def send(self, *args: Unpack[_Ts], **kwargs: Any) -> None: + """ + Sends data to all registered receivers. + """ + if not self.frozen: + raise RuntimeError("Cannot send non-frozen signal.") + + for receiver in self: + await receiver(*args, **kwargs) + + def __call__( + self, func: Callable[[Unpack[_Ts]], Awaitable[_T]] + ) -> Callable[[Unpack[_Ts]], Awaitable[_T]]: + """Decorator to add a function to this Signal.""" + self.append(func) + return func diff --git a/venv/lib/python3.9/site-packages/aiosignal/py.typed b/venv/lib/python3.9/site-packages/aiosignal/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/LICENSE b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/LICENSE new file mode 100644 index 0000000..033c86b --- /dev/null +++ b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/LICENSE @@ -0,0 +1,13 @@ +Copyright 2016-2020 aio-libs collaboration. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/METADATA b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/METADATA new file mode 100644 index 0000000..1eecd7d --- /dev/null +++ b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/METADATA @@ -0,0 +1,163 @@ +Metadata-Version: 2.1 +Name: async-timeout +Version: 5.0.1 +Summary: Timeout context manager for asyncio programs +Home-page: https://github.com/aio-libs/async-timeout +Author: Andrew Svetlov +Author-email: andrew.svetlov@gmail.com +License: Apache 2 +Project-URL: Chat: Gitter, https://gitter.im/aio-libs/Lobby +Project-URL: CI: GitHub Actions, https://github.com/aio-libs/async-timeout/actions +Project-URL: Coverage: codecov, https://codecov.io/github/aio-libs/async-timeout +Project-URL: GitHub: issues, https://github.com/aio-libs/async-timeout/issues +Project-URL: GitHub: repo, https://github.com/aio-libs/async-timeout +Classifier: Development Status :: 5 - Production/Stable +Classifier: Topic :: Software Development :: Libraries +Classifier: Framework :: AsyncIO +Classifier: Intended Audience :: Developers +Classifier: License :: OSI Approved :: Apache Software License +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3 :: Only +Requires-Python: >=3.8 +Description-Content-Type: text/x-rst +License-File: LICENSE + +async-timeout +============= +.. image:: https://travis-ci.com/aio-libs/async-timeout.svg?branch=master + :target: https://travis-ci.com/aio-libs/async-timeout +.. image:: https://codecov.io/gh/aio-libs/async-timeout/branch/master/graph/badge.svg + :target: https://codecov.io/gh/aio-libs/async-timeout +.. image:: https://img.shields.io/pypi/v/async-timeout.svg + :target: https://pypi.python.org/pypi/async-timeout +.. image:: https://badges.gitter.im/Join%20Chat.svg + :target: https://gitter.im/aio-libs/Lobby + :alt: Chat on Gitter + +asyncio-compatible timeout context manager. + + + +DEPRECATED +---------- + +This library has effectively been upstreamed into Python 3.11+. + +Therefore this library is considered deprecated and no longer actively supported. + +Version 5.0+ provides dual-mode when executed on Python 3.11+: +``asyncio_timeout.Timeout`` is fully compatible with ``asyncio.Timeout`` *and* old +versions of the library. + +Anyway, using upstream is highly recommended. ``asyncio_timeout`` exists only for the +sake of backward compatibility, easy supporting both old and new Python by the same +code, and easy misgration. + +If rescheduling API is not important and only ``async with timeout(...): ...`` functionality is required, +a user could apply conditional import:: + + if sys.version_info >= (3, 11): + from asyncio import timeout, timeout_at + else: + from async_timeout import timeout, timeout_at + + +Usage example +------------- + + +The context manager is useful in cases when you want to apply timeout +logic around block of code or in cases when ``asyncio.wait_for()`` is +not suitable. Also it's much faster than ``asyncio.wait_for()`` +because ``timeout`` doesn't create a new task. + +The ``timeout(delay, *, loop=None)`` call returns a context manager +that cancels a block on *timeout* expiring:: + + from async_timeout import timeout + async with timeout(1.5): + await inner() + +1. If ``inner()`` is executed faster than in ``1.5`` seconds nothing + happens. +2. Otherwise ``inner()`` is cancelled internally by sending + ``asyncio.CancelledError`` into but ``asyncio.TimeoutError`` is + raised outside of context manager scope. + +*timeout* parameter could be ``None`` for skipping timeout functionality. + + +Alternatively, ``timeout_at(when)`` can be used for scheduling +at the absolute time:: + + loop = asyncio.get_event_loop() + now = loop.time() + + async with timeout_at(now + 1.5): + await inner() + + +Please note: it is not POSIX time but a time with +undefined starting base, e.g. the time of the system power on. + + +Context manager has ``.expired()`` / ``.expired`` for check if timeout happens +exactly in context manager:: + + async with timeout(1.5) as cm: + await inner() + print(cm.expired()) # recommended api + print(cm.expired) # compatible api + +The property is ``True`` if ``inner()`` execution is cancelled by +timeout context manager. + +If ``inner()`` call explicitly raises ``TimeoutError`` ``cm.expired`` +is ``False``. + +The scheduled deadline time is available as ``.when()`` / ``.deadline``:: + + async with timeout(1.5) as cm: + cm.when() # recommended api + cm.deadline # compatible api + +Not finished yet timeout can be rescheduled by ``shift()`` +or ``update()`` methods:: + + async with timeout(1.5) as cm: + # recommended api + cm.reschedule(cm.when() + 1) # add another second on waiting + # compatible api + cm.shift(1) # add another second on waiting + cm.update(loop.time() + 5) # reschedule to now+5 seconds + +Rescheduling is forbidden if the timeout is expired or after exit from ``async with`` +code block. + + +Disable scheduled timeout:: + + async with timeout(1.5) as cm: + cm.reschedule(None) # recommended api + cm.reject() # compatible api + + + +Installation +------------ + +:: + + $ pip install async-timeout + +The library is Python 3 only! + + + +Authors and License +------------------- + +The module is written by Andrew Svetlov. + +It's *Apache 2* licensed and freely available. diff --git a/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/RECORD b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/RECORD new file mode 100644 index 0000000..3dc7e73 --- /dev/null +++ b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/RECORD @@ -0,0 +1,10 @@ +async_timeout-5.0.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +async_timeout-5.0.1.dist-info/LICENSE,sha256=4Y17uPUT4sRrtYXJS1hb0wcg3TzLId2weG9y0WZY-Sw,568 +async_timeout-5.0.1.dist-info/METADATA,sha256=RVDNEIPYIBJKPsjThJDaKRX1h79-4QYQNuBLSXPItU8,5131 +async_timeout-5.0.1.dist-info/RECORD,, +async_timeout-5.0.1.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91 +async_timeout-5.0.1.dist-info/top_level.txt,sha256=9oM4e7Twq8iD_7_Q3Mz0E6GPIB6vJvRFo-UBwUQtBDU,14 +async_timeout-5.0.1.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1 +async_timeout/__init__.py,sha256=QF0zpfX1vGmxib7kAqNPm9YehPV0oBVozxJ--Mxq9dI,9186 +async_timeout/__pycache__/__init__.cpython-39.pyc,, +async_timeout/py.typed,sha256=tyozzRT1fziXETDxokmuyt6jhOmtjUbnVNJdZcG7ik0,12 diff --git a/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/WHEEL b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/WHEEL new file mode 100644 index 0000000..9b78c44 --- /dev/null +++ b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: setuptools (75.3.0) +Root-Is-Purelib: true +Tag: py3-none-any + diff --git a/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/top_level.txt new file mode 100644 index 0000000..ad29955 --- /dev/null +++ b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/top_level.txt @@ -0,0 +1 @@ +async_timeout diff --git a/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/zip-safe b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/zip-safe new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/venv/lib/python3.9/site-packages/async_timeout-5.0.1.dist-info/zip-safe @@ -0,0 +1 @@ + diff --git a/venv/lib/python3.9/site-packages/async_timeout/__init__.py b/venv/lib/python3.9/site-packages/async_timeout/__init__.py new file mode 100644 index 0000000..fe4aa58 --- /dev/null +++ b/venv/lib/python3.9/site-packages/async_timeout/__init__.py @@ -0,0 +1,276 @@ +import asyncio +import enum +import sys +from types import TracebackType +from typing import Optional, Type, final + + +__version__ = "5.0.1" + + +__all__ = ("timeout", "timeout_at", "Timeout") + + +def timeout(delay: Optional[float]) -> "Timeout": + """timeout context manager. + + Useful in cases when you want to apply timeout logic around block + of code or in cases when asyncio.wait_for is not suitable. For example: + + >>> async with timeout(0.001): + ... async with aiohttp.get('https://github.com') as r: + ... await r.text() + + + delay - value in seconds or None to disable timeout logic + """ + loop = asyncio.get_running_loop() + if delay is not None: + deadline = loop.time() + delay # type: Optional[float] + else: + deadline = None + return Timeout(deadline, loop) + + +def timeout_at(deadline: Optional[float]) -> "Timeout": + """Schedule the timeout at absolute time. + + deadline argument points on the time in the same clock system + as loop.time(). + + Please note: it is not POSIX time but a time with + undefined starting base, e.g. the time of the system power on. + + >>> async with timeout_at(loop.time() + 10): + ... async with aiohttp.get('https://github.com') as r: + ... await r.text() + + + """ + loop = asyncio.get_running_loop() + return Timeout(deadline, loop) + + +class _State(enum.Enum): + INIT = "INIT" + ENTER = "ENTER" + TIMEOUT = "TIMEOUT" + EXIT = "EXIT" + + +if sys.version_info >= (3, 11): + + class _Expired: + __slots__ = ("_val",) + + def __init__(self, val: bool) -> None: + self._val = val + + def __call__(self) -> bool: + return self._val + + def __bool__(self) -> bool: + return self._val + + def __repr__(self) -> str: + return repr(self._val) + + def __str__(self) -> str: + return str(self._val) + + @final + class Timeout(asyncio.Timeout): # type: ignore[misc] + # Supports full asyncio.Timeout API. + # Also provides several asyncio_timeout specific methods + # for backward compatibility. + def __init__( + self, deadline: Optional[float], loop: asyncio.AbstractEventLoop + ) -> None: + super().__init__(deadline) + + @property + def expired(self) -> _Expired: + # a hacky property hat can provide both roles: + # timeout.expired() from asyncio + # timeout.expired from asyncio_timeout + return _Expired(super().expired()) + + @property + def deadline(self) -> Optional[float]: + return self.when() + + def reject(self) -> None: + """Reject scheduled timeout if any.""" + # cancel is maybe better name but + # task.cancel() raises CancelledError in asyncio world. + self.reschedule(None) + + def shift(self, delay: float) -> None: + """Advance timeout on delay seconds. + + The delay can be negative. + + Raise RuntimeError if shift is called when deadline is not scheduled + """ + deadline = self.when() + if deadline is None: + raise RuntimeError("cannot shift timeout if deadline is not scheduled") + self.reschedule(deadline + delay) + + def update(self, deadline: float) -> None: + """Set deadline to absolute value. + + deadline argument points on the time in the same clock system + as loop.time(). + + If new deadline is in the past the timeout is raised immediately. + + Please note: it is not POSIX time but a time with + undefined starting base, e.g. the time of the system power on. + """ + self.reschedule(deadline) + +else: + + @final + class Timeout: + # Internal class, please don't instantiate it directly + # Use timeout() and timeout_at() public factories instead. + # + # Implementation note: `async with timeout()` is preferred + # over `with timeout()`. + # While technically the Timeout class implementation + # doesn't need to be async at all, + # the `async with` statement explicitly points that + # the context manager should be used from async function context. + # + # This design allows to avoid many silly misusages. + # + # TimeoutError is raised immediately when scheduled + # if the deadline is passed. + # The purpose is to time out as soon as possible + # without waiting for the next await expression. + + __slots__ = ("_deadline", "_loop", "_state", "_timeout_handler", "_task") + + def __init__( + self, deadline: Optional[float], loop: asyncio.AbstractEventLoop + ) -> None: + self._loop = loop + self._state = _State.INIT + + self._task: Optional["asyncio.Task[object]"] = None + self._timeout_handler = None # type: Optional[asyncio.Handle] + if deadline is None: + self._deadline = None # type: Optional[float] + else: + self.update(deadline) + + async def __aenter__(self) -> "Timeout": + self._do_enter() + return self + + async def __aexit__( + self, + exc_type: Optional[Type[BaseException]], + exc_val: Optional[BaseException], + exc_tb: Optional[TracebackType], + ) -> Optional[bool]: + self._do_exit(exc_type) + return None + + @property + def expired(self) -> bool: + """Is timeout expired during execution?""" + return self._state == _State.TIMEOUT + + @property + def deadline(self) -> Optional[float]: + return self._deadline + + def reject(self) -> None: + """Reject scheduled timeout if any.""" + # cancel is maybe better name but + # task.cancel() raises CancelledError in asyncio world. + if self._state not in (_State.INIT, _State.ENTER): + raise RuntimeError(f"invalid state {self._state.value}") + self._reject() + + def _reject(self) -> None: + self._task = None + if self._timeout_handler is not None: + self._timeout_handler.cancel() + self._timeout_handler = None + + def shift(self, delay: float) -> None: + """Advance timeout on delay seconds. + + The delay can be negative. + + Raise RuntimeError if shift is called when deadline is not scheduled + """ + deadline = self._deadline + if deadline is None: + raise RuntimeError("cannot shift timeout if deadline is not scheduled") + self.update(deadline + delay) + + def update(self, deadline: float) -> None: + """Set deadline to absolute value. + + deadline argument points on the time in the same clock system + as loop.time(). + + If new deadline is in the past the timeout is raised immediately. + + Please note: it is not POSIX time but a time with + undefined starting base, e.g. the time of the system power on. + """ + if self._state == _State.EXIT: + raise RuntimeError("cannot reschedule after exit from context manager") + if self._state == _State.TIMEOUT: + raise RuntimeError("cannot reschedule expired timeout") + if self._timeout_handler is not None: + self._timeout_handler.cancel() + self._deadline = deadline + if self._state != _State.INIT: + self._reschedule() + + def _reschedule(self) -> None: + assert self._state == _State.ENTER + deadline = self._deadline + if deadline is None: + return + + now = self._loop.time() + if self._timeout_handler is not None: + self._timeout_handler.cancel() + + self._task = asyncio.current_task() + if deadline <= now: + self._timeout_handler = self._loop.call_soon(self._on_timeout) + else: + self._timeout_handler = self._loop.call_at(deadline, self._on_timeout) + + def _do_enter(self) -> None: + if self._state != _State.INIT: + raise RuntimeError(f"invalid state {self._state.value}") + self._state = _State.ENTER + self._reschedule() + + def _do_exit(self, exc_type: Optional[Type[BaseException]]) -> None: + if exc_type is asyncio.CancelledError and self._state == _State.TIMEOUT: + assert self._task is not None + self._timeout_handler = None + self._task = None + raise asyncio.TimeoutError + # timeout has not expired + self._state = _State.EXIT + self._reject() + return None + + def _on_timeout(self) -> None: + assert self._task is not None + self._task.cancel() + self._state = _State.TIMEOUT + # drop the reference early + self._timeout_handler = None diff --git a/venv/lib/python3.9/site-packages/async_timeout/py.typed b/venv/lib/python3.9/site-packages/async_timeout/py.typed new file mode 100644 index 0000000..3b94f91 --- /dev/null +++ b/venv/lib/python3.9/site-packages/async_timeout/py.typed @@ -0,0 +1 @@ +Placeholder diff --git a/venv/lib/python3.9/site-packages/attr/__init__.py b/venv/lib/python3.9/site-packages/attr/__init__.py new file mode 100644 index 0000000..5c6e065 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/__init__.py @@ -0,0 +1,104 @@ +# SPDX-License-Identifier: MIT + +""" +Classes Without Boilerplate +""" + +from functools import partial +from typing import Callable, Literal, Protocol + +from . import converters, exceptions, filters, setters, validators +from ._cmp import cmp_using +from ._config import get_run_validators, set_run_validators +from ._funcs import asdict, assoc, astuple, has, resolve_types +from ._make import ( + NOTHING, + Attribute, + Converter, + Factory, + _Nothing, + attrib, + attrs, + evolve, + fields, + fields_dict, + make_class, + validate, +) +from ._next_gen import define, field, frozen, mutable +from ._version_info import VersionInfo + + +s = attributes = attrs +ib = attr = attrib +dataclass = partial(attrs, auto_attribs=True) # happy Easter ;) + + +class AttrsInstance(Protocol): + pass + + +NothingType = Literal[_Nothing.NOTHING] + +__all__ = [ + "NOTHING", + "Attribute", + "AttrsInstance", + "Converter", + "Factory", + "NothingType", + "asdict", + "assoc", + "astuple", + "attr", + "attrib", + "attributes", + "attrs", + "cmp_using", + "converters", + "define", + "evolve", + "exceptions", + "field", + "fields", + "fields_dict", + "filters", + "frozen", + "get_run_validators", + "has", + "ib", + "make_class", + "mutable", + "resolve_types", + "s", + "set_run_validators", + "setters", + "validate", + "validators", +] + + +def _make_getattr(mod_name: str) -> Callable: + """ + Create a metadata proxy for packaging information that uses *mod_name* in + its warnings and errors. + """ + + def __getattr__(name: str) -> str: + if name not in ("__version__", "__version_info__"): + msg = f"module {mod_name} has no attribute {name}" + raise AttributeError(msg) + + from importlib.metadata import metadata + + meta = metadata("attrs") + + if name == "__version_info__": + return VersionInfo._from_version_string(meta["version"]) + + return meta["version"] + + return __getattr__ + + +__getattr__ = _make_getattr(__name__) diff --git a/venv/lib/python3.9/site-packages/attr/__init__.pyi b/venv/lib/python3.9/site-packages/attr/__init__.pyi new file mode 100644 index 0000000..758decf --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/__init__.pyi @@ -0,0 +1,389 @@ +import enum +import sys + +from typing import ( + Any, + Callable, + Generic, + Literal, + Mapping, + Protocol, + Sequence, + TypeVar, + overload, +) + +# `import X as X` is required to make these public +from . import converters as converters +from . import exceptions as exceptions +from . import filters as filters +from . import setters as setters +from . import validators as validators +from ._cmp import cmp_using as cmp_using +from ._typing_compat import AttrsInstance_ +from ._version_info import VersionInfo +from attrs import ( + define as define, + field as field, + mutable as mutable, + frozen as frozen, + _EqOrderType, + _ValidatorType, + _ConverterType, + _ReprArgType, + _OnSetAttrType, + _OnSetAttrArgType, + _FieldTransformer, + _ValidatorArgType, +) + +if sys.version_info >= (3, 10): + from typing import TypeGuard, TypeAlias +else: + from typing_extensions import TypeGuard, TypeAlias + +if sys.version_info >= (3, 11): + from typing import dataclass_transform +else: + from typing_extensions import dataclass_transform + +__version__: str +__version_info__: VersionInfo +__title__: str +__description__: str +__url__: str +__uri__: str +__author__: str +__email__: str +__license__: str +__copyright__: str + +_T = TypeVar("_T") +_C = TypeVar("_C", bound=type) + +_FilterType = Callable[["Attribute[_T]", _T], bool] + +# We subclass this here to keep the protocol's qualified name clean. +class AttrsInstance(AttrsInstance_, Protocol): + pass + +_A = TypeVar("_A", bound=type[AttrsInstance]) + +class _Nothing(enum.Enum): + NOTHING = enum.auto() + +NOTHING = _Nothing.NOTHING +NothingType: TypeAlias = Literal[_Nothing.NOTHING] + +# NOTE: Factory lies about its return type to make this possible: +# `x: List[int] # = Factory(list)` +# Work around mypy issue #4554 in the common case by using an overload. + +@overload +def Factory(factory: Callable[[], _T]) -> _T: ... +@overload +def Factory( + factory: Callable[[Any], _T], + takes_self: Literal[True], +) -> _T: ... +@overload +def Factory( + factory: Callable[[], _T], + takes_self: Literal[False], +) -> _T: ... + +In = TypeVar("In") +Out = TypeVar("Out") + +class Converter(Generic[In, Out]): + @overload + def __init__(self, converter: Callable[[In], Out]) -> None: ... + @overload + def __init__( + self, + converter: Callable[[In, AttrsInstance, Attribute], Out], + *, + takes_self: Literal[True], + takes_field: Literal[True], + ) -> None: ... + @overload + def __init__( + self, + converter: Callable[[In, Attribute], Out], + *, + takes_field: Literal[True], + ) -> None: ... + @overload + def __init__( + self, + converter: Callable[[In, AttrsInstance], Out], + *, + takes_self: Literal[True], + ) -> None: ... + +class Attribute(Generic[_T]): + name: str + default: _T | None + validator: _ValidatorType[_T] | None + repr: _ReprArgType + cmp: _EqOrderType + eq: _EqOrderType + order: _EqOrderType + hash: bool | None + init: bool + converter: Converter | None + metadata: dict[Any, Any] + type: type[_T] | None + kw_only: bool + on_setattr: _OnSetAttrType + alias: str | None + + def evolve(self, **changes: Any) -> "Attribute[Any]": ... + +# NOTE: We had several choices for the annotation to use for type arg: +# 1) Type[_T] +# - Pros: Handles simple cases correctly +# - Cons: Might produce less informative errors in the case of conflicting +# TypeVars e.g. `attr.ib(default='bad', type=int)` +# 2) Callable[..., _T] +# - Pros: Better error messages than #1 for conflicting TypeVars +# - Cons: Terrible error messages for validator checks. +# e.g. attr.ib(type=int, validator=validate_str) +# -> error: Cannot infer function type argument +# 3) type (and do all of the work in the mypy plugin) +# - Pros: Simple here, and we could customize the plugin with our own errors. +# - Cons: Would need to write mypy plugin code to handle all the cases. +# We chose option #1. + +# `attr` lies about its return type to make the following possible: +# attr() -> Any +# attr(8) -> int +# attr(validator=) -> Whatever the callable expects. +# This makes this type of assignments possible: +# x: int = attr(8) +# +# This form catches explicit None or no default but with no other arguments +# returns Any. +@overload +def attrib( + default: None = ..., + validator: None = ..., + repr: _ReprArgType = ..., + cmp: _EqOrderType | None = ..., + hash: bool | None = ..., + init: bool = ..., + metadata: Mapping[Any, Any] | None = ..., + type: None = ..., + converter: None = ..., + factory: None = ..., + kw_only: bool | None = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + alias: str | None = ..., +) -> Any: ... + +# This form catches an explicit None or no default and infers the type from the +# other arguments. +@overload +def attrib( + default: None = ..., + validator: _ValidatorArgType[_T] | None = ..., + repr: _ReprArgType = ..., + cmp: _EqOrderType | None = ..., + hash: bool | None = ..., + init: bool = ..., + metadata: Mapping[Any, Any] | None = ..., + type: type[_T] | None = ..., + converter: _ConverterType + | list[_ConverterType] + | tuple[_ConverterType] + | None = ..., + factory: Callable[[], _T] | None = ..., + kw_only: bool | None = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + alias: str | None = ..., +) -> _T: ... + +# This form catches an explicit default argument. +@overload +def attrib( + default: _T, + validator: _ValidatorArgType[_T] | None = ..., + repr: _ReprArgType = ..., + cmp: _EqOrderType | None = ..., + hash: bool | None = ..., + init: bool = ..., + metadata: Mapping[Any, Any] | None = ..., + type: type[_T] | None = ..., + converter: _ConverterType + | list[_ConverterType] + | tuple[_ConverterType] + | None = ..., + factory: Callable[[], _T] | None = ..., + kw_only: bool | None = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + alias: str | None = ..., +) -> _T: ... + +# This form covers type=non-Type: e.g. forward references (str), Any +@overload +def attrib( + default: _T | None = ..., + validator: _ValidatorArgType[_T] | None = ..., + repr: _ReprArgType = ..., + cmp: _EqOrderType | None = ..., + hash: bool | None = ..., + init: bool = ..., + metadata: Mapping[Any, Any] | None = ..., + type: object = ..., + converter: _ConverterType + | list[_ConverterType] + | tuple[_ConverterType] + | None = ..., + factory: Callable[[], _T] | None = ..., + kw_only: bool | None = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + alias: str | None = ..., +) -> Any: ... +@overload +@dataclass_transform(order_default=True, field_specifiers=(attrib, field)) +def attrs( + maybe_cls: _C, + these: dict[str, Any] | None = ..., + repr_ns: str | None = ..., + repr: bool = ..., + cmp: _EqOrderType | None = ..., + hash: bool | None = ..., + init: bool = ..., + slots: bool = ..., + frozen: bool = ..., + weakref_slot: bool = ..., + str: bool = ..., + auto_attribs: bool = ..., + kw_only: bool = ..., + cache_hash: bool = ..., + auto_exc: bool = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + auto_detect: bool = ..., + collect_by_mro: bool = ..., + getstate_setstate: bool | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + field_transformer: _FieldTransformer | None = ..., + match_args: bool = ..., + unsafe_hash: bool | None = ..., +) -> _C: ... +@overload +@dataclass_transform(order_default=True, field_specifiers=(attrib, field)) +def attrs( + maybe_cls: None = ..., + these: dict[str, Any] | None = ..., + repr_ns: str | None = ..., + repr: bool = ..., + cmp: _EqOrderType | None = ..., + hash: bool | None = ..., + init: bool = ..., + slots: bool = ..., + frozen: bool = ..., + weakref_slot: bool = ..., + str: bool = ..., + auto_attribs: bool = ..., + kw_only: bool = ..., + cache_hash: bool = ..., + auto_exc: bool = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + auto_detect: bool = ..., + collect_by_mro: bool = ..., + getstate_setstate: bool | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + field_transformer: _FieldTransformer | None = ..., + match_args: bool = ..., + unsafe_hash: bool | None = ..., +) -> Callable[[_C], _C]: ... +def fields(cls: type[AttrsInstance] | AttrsInstance) -> Any: ... +def fields_dict(cls: type[AttrsInstance]) -> dict[str, Attribute[Any]]: ... +def validate(inst: AttrsInstance) -> None: ... +def resolve_types( + cls: _A, + globalns: dict[str, Any] | None = ..., + localns: dict[str, Any] | None = ..., + attribs: list[Attribute[Any]] | None = ..., + include_extras: bool = ..., +) -> _A: ... + +# TODO: add support for returning a proper attrs class from the mypy plugin +# we use Any instead of _CountingAttr so that e.g. `make_class('Foo', +# [attr.ib()])` is valid +def make_class( + name: str, + attrs: list[str] | tuple[str, ...] | dict[str, Any], + bases: tuple[type, ...] = ..., + class_body: dict[str, Any] | None = ..., + repr_ns: str | None = ..., + repr: bool = ..., + cmp: _EqOrderType | None = ..., + hash: bool | None = ..., + init: bool = ..., + slots: bool = ..., + frozen: bool = ..., + weakref_slot: bool = ..., + str: bool = ..., + auto_attribs: bool = ..., + kw_only: bool = ..., + cache_hash: bool = ..., + auto_exc: bool = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + collect_by_mro: bool = ..., + on_setattr: _OnSetAttrArgType | None = ..., + field_transformer: _FieldTransformer | None = ..., +) -> type: ... + +# _funcs -- + +# TODO: add support for returning TypedDict from the mypy plugin +# FIXME: asdict/astuple do not honor their factory args. Waiting on one of +# these: +# https://github.com/python/mypy/issues/4236 +# https://github.com/python/typing/issues/253 +# XXX: remember to fix attrs.asdict/astuple too! +def asdict( + inst: AttrsInstance, + recurse: bool = ..., + filter: _FilterType[Any] | None = ..., + dict_factory: type[Mapping[Any, Any]] = ..., + retain_collection_types: bool = ..., + value_serializer: Callable[[type, Attribute[Any], Any], Any] | None = ..., + tuple_keys: bool | None = ..., +) -> dict[str, Any]: ... + +# TODO: add support for returning NamedTuple from the mypy plugin +def astuple( + inst: AttrsInstance, + recurse: bool = ..., + filter: _FilterType[Any] | None = ..., + tuple_factory: type[Sequence[Any]] = ..., + retain_collection_types: bool = ..., +) -> tuple[Any, ...]: ... +def has(cls: type) -> TypeGuard[type[AttrsInstance]]: ... +def assoc(inst: _T, **changes: Any) -> _T: ... +def evolve(inst: _T, **changes: Any) -> _T: ... + +# _config -- + +def set_run_validators(run: bool) -> None: ... +def get_run_validators() -> bool: ... + +# aliases -- + +s = attributes = attrs +ib = attr = attrib +dataclass = attrs # Technically, partial(attrs, auto_attribs=True) ;) diff --git a/venv/lib/python3.9/site-packages/attr/_cmp.py b/venv/lib/python3.9/site-packages/attr/_cmp.py new file mode 100644 index 0000000..09bab49 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_cmp.py @@ -0,0 +1,160 @@ +# SPDX-License-Identifier: MIT + + +import functools +import types + +from ._make import __ne__ + + +_operation_names = {"eq": "==", "lt": "<", "le": "<=", "gt": ">", "ge": ">="} + + +def cmp_using( + eq=None, + lt=None, + le=None, + gt=None, + ge=None, + require_same_type=True, + class_name="Comparable", +): + """ + Create a class that can be passed into `attrs.field`'s ``eq``, ``order``, + and ``cmp`` arguments to customize field comparison. + + The resulting class will have a full set of ordering methods if at least + one of ``{lt, le, gt, ge}`` and ``eq`` are provided. + + Args: + eq (typing.Callable | None): + Callable used to evaluate equality of two objects. + + lt (typing.Callable | None): + Callable used to evaluate whether one object is less than another + object. + + le (typing.Callable | None): + Callable used to evaluate whether one object is less than or equal + to another object. + + gt (typing.Callable | None): + Callable used to evaluate whether one object is greater than + another object. + + ge (typing.Callable | None): + Callable used to evaluate whether one object is greater than or + equal to another object. + + require_same_type (bool): + When `True`, equality and ordering methods will return + `NotImplemented` if objects are not of the same type. + + class_name (str | None): Name of class. Defaults to "Comparable". + + See `comparison` for more details. + + .. versionadded:: 21.1.0 + """ + + body = { + "__slots__": ["value"], + "__init__": _make_init(), + "_requirements": [], + "_is_comparable_to": _is_comparable_to, + } + + # Add operations. + num_order_functions = 0 + has_eq_function = False + + if eq is not None: + has_eq_function = True + body["__eq__"] = _make_operator("eq", eq) + body["__ne__"] = __ne__ + + if lt is not None: + num_order_functions += 1 + body["__lt__"] = _make_operator("lt", lt) + + if le is not None: + num_order_functions += 1 + body["__le__"] = _make_operator("le", le) + + if gt is not None: + num_order_functions += 1 + body["__gt__"] = _make_operator("gt", gt) + + if ge is not None: + num_order_functions += 1 + body["__ge__"] = _make_operator("ge", ge) + + type_ = types.new_class( + class_name, (object,), {}, lambda ns: ns.update(body) + ) + + # Add same type requirement. + if require_same_type: + type_._requirements.append(_check_same_type) + + # Add total ordering if at least one operation was defined. + if 0 < num_order_functions < 4: + if not has_eq_function: + # functools.total_ordering requires __eq__ to be defined, + # so raise early error here to keep a nice stack. + msg = "eq must be define is order to complete ordering from lt, le, gt, ge." + raise ValueError(msg) + type_ = functools.total_ordering(type_) + + return type_ + + +def _make_init(): + """ + Create __init__ method. + """ + + def __init__(self, value): + """ + Initialize object with *value*. + """ + self.value = value + + return __init__ + + +def _make_operator(name, func): + """ + Create operator method. + """ + + def method(self, other): + if not self._is_comparable_to(other): + return NotImplemented + + result = func(self.value, other.value) + if result is NotImplemented: + return NotImplemented + + return result + + method.__name__ = f"__{name}__" + method.__doc__ = ( + f"Return a {_operation_names[name]} b. Computed by attrs." + ) + + return method + + +def _is_comparable_to(self, other): + """ + Check whether `other` is comparable to `self`. + """ + return all(func(self, other) for func in self._requirements) + + +def _check_same_type(self, other): + """ + Return True if *self* and *other* are of the same type, False otherwise. + """ + return other.value.__class__ is self.value.__class__ diff --git a/venv/lib/python3.9/site-packages/attr/_cmp.pyi b/venv/lib/python3.9/site-packages/attr/_cmp.pyi new file mode 100644 index 0000000..cc7893b --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_cmp.pyi @@ -0,0 +1,13 @@ +from typing import Any, Callable + +_CompareWithType = Callable[[Any, Any], bool] + +def cmp_using( + eq: _CompareWithType | None = ..., + lt: _CompareWithType | None = ..., + le: _CompareWithType | None = ..., + gt: _CompareWithType | None = ..., + ge: _CompareWithType | None = ..., + require_same_type: bool = ..., + class_name: str = ..., +) -> type: ... diff --git a/venv/lib/python3.9/site-packages/attr/_compat.py b/venv/lib/python3.9/site-packages/attr/_compat.py new file mode 100644 index 0000000..bc68ed9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_compat.py @@ -0,0 +1,99 @@ +# SPDX-License-Identifier: MIT + +import inspect +import platform +import sys +import threading + +from collections.abc import Mapping, Sequence # noqa: F401 +from typing import _GenericAlias + + +PYPY = platform.python_implementation() == "PyPy" +PY_3_10_PLUS = sys.version_info[:2] >= (3, 10) +PY_3_11_PLUS = sys.version_info[:2] >= (3, 11) +PY_3_12_PLUS = sys.version_info[:2] >= (3, 12) +PY_3_13_PLUS = sys.version_info[:2] >= (3, 13) +PY_3_14_PLUS = sys.version_info[:2] >= (3, 14) + + +if PY_3_14_PLUS: + import annotationlib + + # We request forward-ref annotations to not break in the presence of + # forward references. + + def _get_annotations(cls): + return annotationlib.get_annotations( + cls, format=annotationlib.Format.FORWARDREF + ) + +else: + + def _get_annotations(cls): + """ + Get annotations for *cls*. + """ + return cls.__dict__.get("__annotations__", {}) + + +class _AnnotationExtractor: + """ + Extract type annotations from a callable, returning None whenever there + is none. + """ + + __slots__ = ["sig"] + + def __init__(self, callable): + try: + self.sig = inspect.signature(callable) + except (ValueError, TypeError): # inspect failed + self.sig = None + + def get_first_param_type(self): + """ + Return the type annotation of the first argument if it's not empty. + """ + if not self.sig: + return None + + params = list(self.sig.parameters.values()) + if params and params[0].annotation is not inspect.Parameter.empty: + return params[0].annotation + + return None + + def get_return_type(self): + """ + Return the return type if it's not empty. + """ + if ( + self.sig + and self.sig.return_annotation is not inspect.Signature.empty + ): + return self.sig.return_annotation + + return None + + +# Thread-local global to track attrs instances which are already being repr'd. +# This is needed because there is no other (thread-safe) way to pass info +# about the instances that are already being repr'd through the call stack +# in order to ensure we don't perform infinite recursion. +# +# For instance, if an instance contains a dict which contains that instance, +# we need to know that we're already repr'ing the outside instance from within +# the dict's repr() call. +# +# This lives here rather than in _make.py so that the functions in _make.py +# don't have a direct reference to the thread-local in their globals dict. +# If they have such a reference, it breaks cloudpickle. +repr_context = threading.local() + + +def get_generic_base(cl): + """If this is a generic class (A[str]), return the generic base for it.""" + if cl.__class__ is _GenericAlias: + return cl.__origin__ + return None diff --git a/venv/lib/python3.9/site-packages/attr/_config.py b/venv/lib/python3.9/site-packages/attr/_config.py new file mode 100644 index 0000000..4b25772 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_config.py @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: MIT + +__all__ = ["get_run_validators", "set_run_validators"] + +_run_validators = True + + +def set_run_validators(run): + """ + Set whether or not validators are run. By default, they are run. + + .. deprecated:: 21.3.0 It will not be removed, but it also will not be + moved to new ``attrs`` namespace. Use `attrs.validators.set_disabled()` + instead. + """ + if not isinstance(run, bool): + msg = "'run' must be bool." + raise TypeError(msg) + global _run_validators + _run_validators = run + + +def get_run_validators(): + """ + Return whether or not validators are run. + + .. deprecated:: 21.3.0 It will not be removed, but it also will not be + moved to new ``attrs`` namespace. Use `attrs.validators.get_disabled()` + instead. + """ + return _run_validators diff --git a/venv/lib/python3.9/site-packages/attr/_funcs.py b/venv/lib/python3.9/site-packages/attr/_funcs.py new file mode 100644 index 0000000..1adb500 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_funcs.py @@ -0,0 +1,497 @@ +# SPDX-License-Identifier: MIT + + +import copy + +from ._compat import get_generic_base +from ._make import _OBJ_SETATTR, NOTHING, fields +from .exceptions import AttrsAttributeNotFoundError + + +_ATOMIC_TYPES = frozenset( + { + type(None), + bool, + int, + float, + str, + complex, + bytes, + type(...), + type, + range, + property, + } +) + + +def asdict( + inst, + recurse=True, + filter=None, + dict_factory=dict, + retain_collection_types=False, + value_serializer=None, +): + """ + Return the *attrs* attribute values of *inst* as a dict. + + Optionally recurse into other *attrs*-decorated classes. + + Args: + inst: Instance of an *attrs*-decorated class. + + recurse (bool): Recurse into classes that are also *attrs*-decorated. + + filter (~typing.Callable): + A callable whose return code determines whether an attribute or + element is included (`True`) or dropped (`False`). Is called with + the `attrs.Attribute` as the first argument and the value as the + second argument. + + dict_factory (~typing.Callable): + A callable to produce dictionaries from. For example, to produce + ordered dictionaries instead of normal Python dictionaries, pass in + ``collections.OrderedDict``. + + retain_collection_types (bool): + Do not convert to `list` when encountering an attribute whose type + is `tuple` or `set`. Only meaningful if *recurse* is `True`. + + value_serializer (typing.Callable | None): + A hook that is called for every attribute or dict key/value. It + receives the current instance, field and value and must return the + (updated) value. The hook is run *after* the optional *filter* has + been applied. + + Returns: + Return type of *dict_factory*. + + Raises: + attrs.exceptions.NotAnAttrsClassError: + If *cls* is not an *attrs* class. + + .. versionadded:: 16.0.0 *dict_factory* + .. versionadded:: 16.1.0 *retain_collection_types* + .. versionadded:: 20.3.0 *value_serializer* + .. versionadded:: 21.3.0 + If a dict has a collection for a key, it is serialized as a tuple. + """ + attrs = fields(inst.__class__) + rv = dict_factory() + for a in attrs: + v = getattr(inst, a.name) + if filter is not None and not filter(a, v): + continue + + if value_serializer is not None: + v = value_serializer(inst, a, v) + + if recurse is True: + value_type = type(v) + if value_type in _ATOMIC_TYPES: + rv[a.name] = v + elif has(value_type): + rv[a.name] = asdict( + v, + recurse=True, + filter=filter, + dict_factory=dict_factory, + retain_collection_types=retain_collection_types, + value_serializer=value_serializer, + ) + elif issubclass(value_type, (tuple, list, set, frozenset)): + cf = value_type if retain_collection_types is True else list + items = [ + _asdict_anything( + i, + is_key=False, + filter=filter, + dict_factory=dict_factory, + retain_collection_types=retain_collection_types, + value_serializer=value_serializer, + ) + for i in v + ] + try: + rv[a.name] = cf(items) + except TypeError: + if not issubclass(cf, tuple): + raise + # Workaround for TypeError: cf.__new__() missing 1 required + # positional argument (which appears, for a namedturle) + rv[a.name] = cf(*items) + elif issubclass(value_type, dict): + df = dict_factory + rv[a.name] = df( + ( + _asdict_anything( + kk, + is_key=True, + filter=filter, + dict_factory=df, + retain_collection_types=retain_collection_types, + value_serializer=value_serializer, + ), + _asdict_anything( + vv, + is_key=False, + filter=filter, + dict_factory=df, + retain_collection_types=retain_collection_types, + value_serializer=value_serializer, + ), + ) + for kk, vv in v.items() + ) + else: + rv[a.name] = v + else: + rv[a.name] = v + return rv + + +def _asdict_anything( + val, + is_key, + filter, + dict_factory, + retain_collection_types, + value_serializer, +): + """ + ``asdict`` only works on attrs instances, this works on anything. + """ + val_type = type(val) + if val_type in _ATOMIC_TYPES: + rv = val + if value_serializer is not None: + rv = value_serializer(None, None, rv) + elif getattr(val_type, "__attrs_attrs__", None) is not None: + # Attrs class. + rv = asdict( + val, + recurse=True, + filter=filter, + dict_factory=dict_factory, + retain_collection_types=retain_collection_types, + value_serializer=value_serializer, + ) + elif issubclass(val_type, (tuple, list, set, frozenset)): + if retain_collection_types is True: + cf = val.__class__ + elif is_key: + cf = tuple + else: + cf = list + + rv = cf( + [ + _asdict_anything( + i, + is_key=False, + filter=filter, + dict_factory=dict_factory, + retain_collection_types=retain_collection_types, + value_serializer=value_serializer, + ) + for i in val + ] + ) + elif issubclass(val_type, dict): + df = dict_factory + rv = df( + ( + _asdict_anything( + kk, + is_key=True, + filter=filter, + dict_factory=df, + retain_collection_types=retain_collection_types, + value_serializer=value_serializer, + ), + _asdict_anything( + vv, + is_key=False, + filter=filter, + dict_factory=df, + retain_collection_types=retain_collection_types, + value_serializer=value_serializer, + ), + ) + for kk, vv in val.items() + ) + else: + rv = val + if value_serializer is not None: + rv = value_serializer(None, None, rv) + + return rv + + +def astuple( + inst, + recurse=True, + filter=None, + tuple_factory=tuple, + retain_collection_types=False, +): + """ + Return the *attrs* attribute values of *inst* as a tuple. + + Optionally recurse into other *attrs*-decorated classes. + + Args: + inst: Instance of an *attrs*-decorated class. + + recurse (bool): + Recurse into classes that are also *attrs*-decorated. + + filter (~typing.Callable): + A callable whose return code determines whether an attribute or + element is included (`True`) or dropped (`False`). Is called with + the `attrs.Attribute` as the first argument and the value as the + second argument. + + tuple_factory (~typing.Callable): + A callable to produce tuples from. For example, to produce lists + instead of tuples. + + retain_collection_types (bool): + Do not convert to `list` or `dict` when encountering an attribute + which type is `tuple`, `dict` or `set`. Only meaningful if + *recurse* is `True`. + + Returns: + Return type of *tuple_factory* + + Raises: + attrs.exceptions.NotAnAttrsClassError: + If *cls* is not an *attrs* class. + + .. versionadded:: 16.2.0 + """ + attrs = fields(inst.__class__) + rv = [] + retain = retain_collection_types # Very long. :/ + for a in attrs: + v = getattr(inst, a.name) + if filter is not None and not filter(a, v): + continue + value_type = type(v) + if recurse is True: + if value_type in _ATOMIC_TYPES: + rv.append(v) + elif has(value_type): + rv.append( + astuple( + v, + recurse=True, + filter=filter, + tuple_factory=tuple_factory, + retain_collection_types=retain, + ) + ) + elif issubclass(value_type, (tuple, list, set, frozenset)): + cf = v.__class__ if retain is True else list + items = [ + ( + astuple( + j, + recurse=True, + filter=filter, + tuple_factory=tuple_factory, + retain_collection_types=retain, + ) + if has(j.__class__) + else j + ) + for j in v + ] + try: + rv.append(cf(items)) + except TypeError: + if not issubclass(cf, tuple): + raise + # Workaround for TypeError: cf.__new__() missing 1 required + # positional argument (which appears, for a namedturle) + rv.append(cf(*items)) + elif issubclass(value_type, dict): + df = value_type if retain is True else dict + rv.append( + df( + ( + ( + astuple( + kk, + tuple_factory=tuple_factory, + retain_collection_types=retain, + ) + if has(kk.__class__) + else kk + ), + ( + astuple( + vv, + tuple_factory=tuple_factory, + retain_collection_types=retain, + ) + if has(vv.__class__) + else vv + ), + ) + for kk, vv in v.items() + ) + ) + else: + rv.append(v) + else: + rv.append(v) + + return rv if tuple_factory is list else tuple_factory(rv) + + +def has(cls): + """ + Check whether *cls* is a class with *attrs* attributes. + + Args: + cls (type): Class to introspect. + + Raises: + TypeError: If *cls* is not a class. + + Returns: + bool: + """ + attrs = getattr(cls, "__attrs_attrs__", None) + if attrs is not None: + return True + + # No attrs, maybe it's a specialized generic (A[str])? + generic_base = get_generic_base(cls) + if generic_base is not None: + generic_attrs = getattr(generic_base, "__attrs_attrs__", None) + if generic_attrs is not None: + # Stick it on here for speed next time. + cls.__attrs_attrs__ = generic_attrs + return generic_attrs is not None + return False + + +def assoc(inst, **changes): + """ + Copy *inst* and apply *changes*. + + This is different from `evolve` that applies the changes to the arguments + that create the new instance. + + `evolve`'s behavior is preferable, but there are `edge cases`_ where it + doesn't work. Therefore `assoc` is deprecated, but will not be removed. + + .. _`edge cases`: https://github.com/python-attrs/attrs/issues/251 + + Args: + inst: Instance of a class with *attrs* attributes. + + changes: Keyword changes in the new copy. + + Returns: + A copy of inst with *changes* incorporated. + + Raises: + attrs.exceptions.AttrsAttributeNotFoundError: + If *attr_name* couldn't be found on *cls*. + + attrs.exceptions.NotAnAttrsClassError: + If *cls* is not an *attrs* class. + + .. deprecated:: 17.1.0 + Use `attrs.evolve` instead if you can. This function will not be + removed du to the slightly different approach compared to + `attrs.evolve`, though. + """ + new = copy.copy(inst) + attrs = fields(inst.__class__) + for k, v in changes.items(): + a = getattr(attrs, k, NOTHING) + if a is NOTHING: + msg = f"{k} is not an attrs attribute on {new.__class__}." + raise AttrsAttributeNotFoundError(msg) + _OBJ_SETATTR(new, k, v) + return new + + +def resolve_types( + cls, globalns=None, localns=None, attribs=None, include_extras=True +): + """ + Resolve any strings and forward annotations in type annotations. + + This is only required if you need concrete types in :class:`Attribute`'s + *type* field. In other words, you don't need to resolve your types if you + only use them for static type checking. + + With no arguments, names will be looked up in the module in which the class + was created. If this is not what you want, for example, if the name only + exists inside a method, you may pass *globalns* or *localns* to specify + other dictionaries in which to look up these names. See the docs of + `typing.get_type_hints` for more details. + + Args: + cls (type): Class to resolve. + + globalns (dict | None): Dictionary containing global variables. + + localns (dict | None): Dictionary containing local variables. + + attribs (list | None): + List of attribs for the given class. This is necessary when calling + from inside a ``field_transformer`` since *cls* is not an *attrs* + class yet. + + include_extras (bool): + Resolve more accurately, if possible. Pass ``include_extras`` to + ``typing.get_hints``, if supported by the typing module. On + supported Python versions (3.9+), this resolves the types more + accurately. + + Raises: + TypeError: If *cls* is not a class. + + attrs.exceptions.NotAnAttrsClassError: + If *cls* is not an *attrs* class and you didn't pass any attribs. + + NameError: If types cannot be resolved because of missing variables. + + Returns: + *cls* so you can use this function also as a class decorator. Please + note that you have to apply it **after** `attrs.define`. That means the + decorator has to come in the line **before** `attrs.define`. + + .. versionadded:: 20.1.0 + .. versionadded:: 21.1.0 *attribs* + .. versionadded:: 23.1.0 *include_extras* + """ + # Since calling get_type_hints is expensive we cache whether we've + # done it already. + if getattr(cls, "__attrs_types_resolved__", None) != cls: + import typing + + kwargs = { + "globalns": globalns, + "localns": localns, + "include_extras": include_extras, + } + + hints = typing.get_type_hints(cls, **kwargs) + for field in fields(cls) if attribs is None else attribs: + if field.name in hints: + # Since fields have been frozen we must work around it. + _OBJ_SETATTR(field, "type", hints[field.name]) + # We store the class we resolved so that subclasses know they haven't + # been resolved. + cls.__attrs_types_resolved__ = cls + + # Return the class so you can use it as a decorator too. + return cls diff --git a/venv/lib/python3.9/site-packages/attr/_make.py b/venv/lib/python3.9/site-packages/attr/_make.py new file mode 100644 index 0000000..4b32d6a --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_make.py @@ -0,0 +1,3406 @@ +# SPDX-License-Identifier: MIT + +from __future__ import annotations + +import abc +import contextlib +import copy +import enum +import inspect +import itertools +import linecache +import sys +import types +import unicodedata +import weakref + +from collections.abc import Callable, Mapping +from functools import cached_property +from typing import Any, NamedTuple, TypeVar + +# We need to import _compat itself in addition to the _compat members to avoid +# having the thread-local in the globals here. +from . import _compat, _config, setters +from ._compat import ( + PY_3_10_PLUS, + PY_3_11_PLUS, + PY_3_13_PLUS, + _AnnotationExtractor, + _get_annotations, + get_generic_base, +) +from .exceptions import ( + DefaultAlreadySetError, + FrozenInstanceError, + NotAnAttrsClassError, + UnannotatedAttributeError, +) + + +# This is used at least twice, so cache it here. +_OBJ_SETATTR = object.__setattr__ +_INIT_FACTORY_PAT = "__attr_factory_%s" +_CLASSVAR_PREFIXES = ( + "typing.ClassVar", + "t.ClassVar", + "ClassVar", + "typing_extensions.ClassVar", +) +# we don't use a double-underscore prefix because that triggers +# name mangling when trying to create a slot for the field +# (when slots=True) +_HASH_CACHE_FIELD = "_attrs_cached_hash" + +_EMPTY_METADATA_SINGLETON = types.MappingProxyType({}) + +# Unique object for unequivocal getattr() defaults. +_SENTINEL = object() + +_DEFAULT_ON_SETATTR = setters.pipe(setters.convert, setters.validate) + + +class _Nothing(enum.Enum): + """ + Sentinel to indicate the lack of a value when `None` is ambiguous. + + If extending attrs, you can use ``typing.Literal[NOTHING]`` to show + that a value may be ``NOTHING``. + + .. versionchanged:: 21.1.0 ``bool(NOTHING)`` is now False. + .. versionchanged:: 22.2.0 ``NOTHING`` is now an ``enum.Enum`` variant. + """ + + NOTHING = enum.auto() + + def __repr__(self): + return "NOTHING" + + def __bool__(self): + return False + + +NOTHING = _Nothing.NOTHING +""" +Sentinel to indicate the lack of a value when `None` is ambiguous. + +When using in 3rd party code, use `attrs.NothingType` for type annotations. +""" + + +class _CacheHashWrapper(int): + """ + An integer subclass that pickles / copies as None + + This is used for non-slots classes with ``cache_hash=True``, to avoid + serializing a potentially (even likely) invalid hash value. Since `None` + is the default value for uncalculated hashes, whenever this is copied, + the copy's value for the hash should automatically reset. + + See GH #613 for more details. + """ + + def __reduce__(self, _none_constructor=type(None), _args=()): # noqa: B008 + return _none_constructor, _args + + +def attrib( + default=NOTHING, + validator=None, + repr=True, + cmp=None, + hash=None, + init=True, + metadata=None, + type=None, + converter=None, + factory=None, + kw_only=None, + eq=None, + order=None, + on_setattr=None, + alias=None, +): + """ + Create a new field / attribute on a class. + + Identical to `attrs.field`, except it's not keyword-only. + + Consider using `attrs.field` in new code (``attr.ib`` will *never* go away, + though). + + .. warning:: + + Does **nothing** unless the class is also decorated with + `attr.s` (or similar)! + + + .. versionadded:: 15.2.0 *convert* + .. versionadded:: 16.3.0 *metadata* + .. versionchanged:: 17.1.0 *validator* can be a ``list`` now. + .. versionchanged:: 17.1.0 + *hash* is `None` and therefore mirrors *eq* by default. + .. versionadded:: 17.3.0 *type* + .. deprecated:: 17.4.0 *convert* + .. versionadded:: 17.4.0 + *converter* as a replacement for the deprecated *convert* to achieve + consistency with other noun-based arguments. + .. versionadded:: 18.1.0 + ``factory=f`` is syntactic sugar for ``default=attr.Factory(f)``. + .. versionadded:: 18.2.0 *kw_only* + .. versionchanged:: 19.2.0 *convert* keyword argument removed. + .. versionchanged:: 19.2.0 *repr* also accepts a custom callable. + .. deprecated:: 19.2.0 *cmp* Removal on or after 2021-06-01. + .. versionadded:: 19.2.0 *eq* and *order* + .. versionadded:: 20.1.0 *on_setattr* + .. versionchanged:: 20.3.0 *kw_only* backported to Python 2 + .. versionchanged:: 21.1.0 + *eq*, *order*, and *cmp* also accept a custom callable + .. versionchanged:: 21.1.0 *cmp* undeprecated + .. versionadded:: 22.2.0 *alias* + .. versionchanged:: 25.4.0 + *kw_only* can now be None, and its default is also changed from False to + None. + """ + eq, eq_key, order, order_key = _determine_attrib_eq_order( + cmp, eq, order, True + ) + + if hash is not None and hash is not True and hash is not False: + msg = "Invalid value for hash. Must be True, False, or None." + raise TypeError(msg) + + if factory is not None: + if default is not NOTHING: + msg = ( + "The `default` and `factory` arguments are mutually exclusive." + ) + raise ValueError(msg) + if not callable(factory): + msg = "The `factory` argument must be a callable." + raise ValueError(msg) + default = Factory(factory) + + if metadata is None: + metadata = {} + + # Apply syntactic sugar by auto-wrapping. + if isinstance(on_setattr, (list, tuple)): + on_setattr = setters.pipe(*on_setattr) + + if validator and isinstance(validator, (list, tuple)): + validator = and_(*validator) + + if converter and isinstance(converter, (list, tuple)): + converter = pipe(*converter) + + return _CountingAttr( + default=default, + validator=validator, + repr=repr, + cmp=None, + hash=hash, + init=init, + converter=converter, + metadata=metadata, + type=type, + kw_only=kw_only, + eq=eq, + eq_key=eq_key, + order=order, + order_key=order_key, + on_setattr=on_setattr, + alias=alias, + ) + + +def _compile_and_eval( + script: str, + globs: dict[str, Any] | None, + locs: Mapping[str, object] | None = None, + filename: str = "", +) -> None: + """ + Evaluate the script with the given global (globs) and local (locs) + variables. + """ + bytecode = compile(script, filename, "exec") + eval(bytecode, globs, locs) + + +def _linecache_and_compile( + script: str, + filename: str, + globs: dict[str, Any] | None, + locals: Mapping[str, object] | None = None, +) -> dict[str, Any]: + """ + Cache the script with _linecache_, compile it and return the _locals_. + """ + + locs = {} if locals is None else locals + + # In order of debuggers like PDB being able to step through the code, + # we add a fake linecache entry. + count = 1 + base_filename = filename + while True: + linecache_tuple = ( + len(script), + None, + script.splitlines(True), + filename, + ) + old_val = linecache.cache.setdefault(filename, linecache_tuple) + if old_val == linecache_tuple: + break + + filename = f"{base_filename[:-1]}-{count}>" + count += 1 + + _compile_and_eval(script, globs, locs, filename) + + return locs + + +def _make_attr_tuple_class(cls_name: str, attr_names: list[str]) -> type: + """ + Create a tuple subclass to hold `Attribute`s for an `attrs` class. + + The subclass is a bare tuple with properties for names. + + class MyClassAttributes(tuple): + __slots__ = () + x = property(itemgetter(0)) + """ + attr_class_name = f"{cls_name}Attributes" + body = {} + for i, attr_name in enumerate(attr_names): + + def getter(self, i=i): + return self[i] + + body[attr_name] = property(getter) + return type(attr_class_name, (tuple,), body) + + +# Tuple class for extracted attributes from a class definition. +# `base_attrs` is a subset of `attrs`. +class _Attributes(NamedTuple): + attrs: type + base_attrs: list[Attribute] + base_attrs_map: dict[str, type] + + +def _is_class_var(annot): + """ + Check whether *annot* is a typing.ClassVar. + + The string comparison hack is used to avoid evaluating all string + annotations which would put attrs-based classes at a performance + disadvantage compared to plain old classes. + """ + annot = str(annot) + + # Annotation can be quoted. + if annot.startswith(("'", '"')) and annot.endswith(("'", '"')): + annot = annot[1:-1] + + return annot.startswith(_CLASSVAR_PREFIXES) + + +def _has_own_attribute(cls, attrib_name): + """ + Check whether *cls* defines *attrib_name* (and doesn't just inherit it). + """ + return attrib_name in cls.__dict__ + + +def _collect_base_attrs( + cls, taken_attr_names +) -> tuple[list[Attribute], dict[str, type]]: + """ + Collect attr.ibs from base classes of *cls*, except *taken_attr_names*. + """ + base_attrs = [] + base_attr_map = {} # A dictionary of base attrs to their classes. + + # Traverse the MRO and collect attributes. + for base_cls in reversed(cls.__mro__[1:-1]): + for a in getattr(base_cls, "__attrs_attrs__", []): + if a.inherited or a.name in taken_attr_names: + continue + + a = a.evolve(inherited=True) # noqa: PLW2901 + base_attrs.append(a) + base_attr_map[a.name] = base_cls + + # For each name, only keep the freshest definition i.e. the furthest at the + # back. base_attr_map is fine because it gets overwritten with every new + # instance. + filtered = [] + seen = set() + for a in reversed(base_attrs): + if a.name in seen: + continue + filtered.insert(0, a) + seen.add(a.name) + + return filtered, base_attr_map + + +def _collect_base_attrs_broken(cls, taken_attr_names): + """ + Collect attr.ibs from base classes of *cls*, except *taken_attr_names*. + + N.B. *taken_attr_names* will be mutated. + + Adhere to the old incorrect behavior. + + Notably it collects from the front and considers inherited attributes which + leads to the buggy behavior reported in #428. + """ + base_attrs = [] + base_attr_map = {} # A dictionary of base attrs to their classes. + + # Traverse the MRO and collect attributes. + for base_cls in cls.__mro__[1:-1]: + for a in getattr(base_cls, "__attrs_attrs__", []): + if a.name in taken_attr_names: + continue + + a = a.evolve(inherited=True) # noqa: PLW2901 + taken_attr_names.add(a.name) + base_attrs.append(a) + base_attr_map[a.name] = base_cls + + return base_attrs, base_attr_map + + +def _transform_attrs( + cls, + these, + auto_attribs, + kw_only, + collect_by_mro, + field_transformer, +) -> _Attributes: + """ + Transform all `_CountingAttr`s on a class into `Attribute`s. + + If *these* is passed, use that and don't look for them on the class. + + If *collect_by_mro* is True, collect them in the correct MRO order, + otherwise use the old -- incorrect -- order. See #428. + + Return an `_Attributes`. + """ + cd = cls.__dict__ + anns = _get_annotations(cls) + + if these is not None: + ca_list = list(these.items()) + elif auto_attribs is True: + ca_names = { + name + for name, attr in cd.items() + if attr.__class__ is _CountingAttr + } + ca_list = [] + annot_names = set() + for attr_name, type in anns.items(): + if _is_class_var(type): + continue + annot_names.add(attr_name) + a = cd.get(attr_name, NOTHING) + + if a.__class__ is not _CountingAttr: + a = attrib(a) + ca_list.append((attr_name, a)) + + unannotated = ca_names - annot_names + if unannotated: + raise UnannotatedAttributeError( + "The following `attr.ib`s lack a type annotation: " + + ", ".join( + sorted(unannotated, key=lambda n: cd.get(n).counter) + ) + + "." + ) + else: + ca_list = sorted( + ( + (name, attr) + for name, attr in cd.items() + if attr.__class__ is _CountingAttr + ), + key=lambda e: e[1].counter, + ) + + fca = Attribute.from_counting_attr + no = ClassProps.KeywordOnly.NO + own_attrs = [ + fca( + attr_name, + ca, + kw_only is not no, + anns.get(attr_name), + ) + for attr_name, ca in ca_list + ] + + if collect_by_mro: + base_attrs, base_attr_map = _collect_base_attrs( + cls, {a.name for a in own_attrs} + ) + else: + base_attrs, base_attr_map = _collect_base_attrs_broken( + cls, {a.name for a in own_attrs} + ) + + if kw_only is ClassProps.KeywordOnly.FORCE: + own_attrs = [a.evolve(kw_only=True) for a in own_attrs] + base_attrs = [a.evolve(kw_only=True) for a in base_attrs] + + attrs = base_attrs + own_attrs + + # Resolve default field alias before executing field_transformer, so that + # the transformer receives fully populated Attribute objects with usable + # alias values. + for a in attrs: + if not a.alias: + # Evolve is very slow, so we hold our nose and do it dirty. + _OBJ_SETATTR.__get__(a)("alias", _default_init_alias_for(a.name)) + _OBJ_SETATTR.__get__(a)("alias_is_default", True) + + if field_transformer is not None: + attrs = tuple(field_transformer(cls, attrs)) + + # Check attr order after executing the field_transformer. + # Mandatory vs non-mandatory attr order only matters when they are part of + # the __init__ signature and when they aren't kw_only (which are moved to + # the end and can be mandatory or non-mandatory in any order, as they will + # be specified as keyword args anyway). Check the order of those attrs: + had_default = False + for a in (a for a in attrs if a.init is not False and a.kw_only is False): + if had_default is True and a.default is NOTHING: + msg = f"No mandatory attributes allowed after an attribute with a default value or factory. Attribute in question: {a!r}" + raise ValueError(msg) + + if had_default is False and a.default is not NOTHING: + had_default = True + + # Resolve default field alias for any new attributes that the + # field_transformer may have added without setting an alias. + for a in attrs: + if not a.alias: + _OBJ_SETATTR.__get__(a)("alias", _default_init_alias_for(a.name)) + _OBJ_SETATTR.__get__(a)("alias_is_default", True) + + # Create AttrsClass *after* applying the field_transformer since it may + # add or remove attributes! + attr_names = [a.name for a in attrs] + AttrsClass = _make_attr_tuple_class(cls.__name__, attr_names) + + return _Attributes(AttrsClass(attrs), base_attrs, base_attr_map) + + +def _make_cached_property_getattr(cached_properties, original_getattr, cls): + lines = [ + # Wrapped to get `__class__` into closure cell for super() + # (It will be replaced with the newly constructed class after construction). + "def wrapper(_cls):", + " __class__ = _cls", + " def __getattr__(self, item, cached_properties=cached_properties, original_getattr=original_getattr, _cached_setattr_get=_cached_setattr_get):", + " func = cached_properties.get(item)", + " if func is not None:", + " result = func(self)", + " _setter = _cached_setattr_get(self)", + " _setter(item, result)", + " return result", + ] + if original_getattr is not None: + lines.append( + " return original_getattr(self, item)", + ) + else: + lines.extend( + [ + " try:", + " return super().__getattribute__(item)", + " except AttributeError:", + " if not hasattr(super(), '__getattr__'):", + " raise", + " return super().__getattr__(item)", + " original_error = f\"'{self.__class__.__name__}' object has no attribute '{item}'\"", + " raise AttributeError(original_error)", + ] + ) + + lines.extend( + [ + " return __getattr__", + "__getattr__ = wrapper(_cls)", + ] + ) + + unique_filename = _generate_unique_filename(cls, "getattr") + + glob = { + "cached_properties": cached_properties, + "_cached_setattr_get": _OBJ_SETATTR.__get__, + "original_getattr": original_getattr, + } + + return _linecache_and_compile( + "\n".join(lines), unique_filename, glob, locals={"_cls": cls} + )["__getattr__"] + + +def _frozen_setattrs(self, name, value): + """ + Attached to frozen classes as __setattr__. + """ + if isinstance(self, BaseException) and name in ( + "__cause__", + "__context__", + "__traceback__", + "__suppress_context__", + "__notes__", + ): + BaseException.__setattr__(self, name, value) + return + + raise FrozenInstanceError + + +def _frozen_delattrs(self, name): + """ + Attached to frozen classes as __delattr__. + """ + if isinstance(self, BaseException) and name == "__notes__": + BaseException.__delattr__(self, name) + return + + raise FrozenInstanceError + + +def evolve(*args, **changes): + """ + Create a new instance, based on the first positional argument with + *changes* applied. + + .. tip:: + + On Python 3.13 and later, you can also use `copy.replace` instead. + + Args: + + inst: + Instance of a class with *attrs* attributes. *inst* must be passed + as a positional argument. + + changes: + Keyword changes in the new copy. + + Returns: + A copy of inst with *changes* incorporated. + + Raises: + TypeError: + If *attr_name* couldn't be found in the class ``__init__``. + + attrs.exceptions.NotAnAttrsClassError: + If *cls* is not an *attrs* class. + + .. versionadded:: 17.1.0 + .. deprecated:: 23.1.0 + It is now deprecated to pass the instance using the keyword argument + *inst*. It will raise a warning until at least April 2024, after which + it will become an error. Always pass the instance as a positional + argument. + .. versionchanged:: 24.1.0 + *inst* can't be passed as a keyword argument anymore. + """ + try: + (inst,) = args + except ValueError: + msg = ( + f"evolve() takes 1 positional argument, but {len(args)} were given" + ) + raise TypeError(msg) from None + + cls = inst.__class__ + attrs = fields(cls) + for a in attrs: + if not a.init: + continue + attr_name = a.name # To deal with private attributes. + init_name = a.alias + if init_name not in changes: + changes[init_name] = getattr(inst, attr_name) + + return cls(**changes) + + +class _ClassBuilder: + """ + Iteratively build *one* class. + """ + + __slots__ = ( + "_add_method_dunders", + "_attr_names", + "_attrs", + "_base_attr_map", + "_base_names", + "_cache_hash", + "_cls", + "_cls_dict", + "_delete_attribs", + "_frozen", + "_has_custom_setattr", + "_has_post_init", + "_has_pre_init", + "_is_exc", + "_on_setattr", + "_pre_init_has_args", + "_repr_added", + "_script_snippets", + "_slots", + "_weakref_slot", + "_wrote_own_setattr", + ) + + def __init__( + self, + cls: type, + these, + auto_attribs: bool, + props: ClassProps, + has_custom_setattr: bool, + ): + attrs, base_attrs, base_map = _transform_attrs( + cls, + these, + auto_attribs, + props.kw_only, + props.collected_fields_by_mro, + props.field_transformer, + ) + + self._cls = cls + self._cls_dict = dict(cls.__dict__) if props.is_slotted else {} + self._attrs = attrs + self._base_names = {a.name for a in base_attrs} + self._base_attr_map = base_map + self._attr_names = tuple(a.name for a in attrs) + self._slots = props.is_slotted + self._frozen = props.is_frozen + self._weakref_slot = props.has_weakref_slot + self._cache_hash = ( + props.hashability is ClassProps.Hashability.HASHABLE_CACHED + ) + self._has_pre_init = bool(getattr(cls, "__attrs_pre_init__", False)) + self._pre_init_has_args = False + if self._has_pre_init: + # Check if the pre init method has more arguments than just `self` + # We want to pass arguments if pre init expects arguments + pre_init_func = cls.__attrs_pre_init__ + pre_init_signature = inspect.signature(pre_init_func) + self._pre_init_has_args = len(pre_init_signature.parameters) > 1 + self._has_post_init = bool(getattr(cls, "__attrs_post_init__", False)) + self._delete_attribs = not bool(these) + self._is_exc = props.is_exception + self._on_setattr = props.on_setattr_hook + + self._has_custom_setattr = has_custom_setattr + self._wrote_own_setattr = False + + self._cls_dict["__attrs_attrs__"] = self._attrs + self._cls_dict["__attrs_props__"] = props + + if props.is_frozen: + self._cls_dict["__setattr__"] = _frozen_setattrs + self._cls_dict["__delattr__"] = _frozen_delattrs + + self._wrote_own_setattr = True + elif self._on_setattr in ( + _DEFAULT_ON_SETATTR, + setters.validate, + setters.convert, + ): + has_validator = has_converter = False + for a in attrs: + if a.validator is not None: + has_validator = True + if a.converter is not None: + has_converter = True + + if has_validator and has_converter: + break + if ( + ( + self._on_setattr == _DEFAULT_ON_SETATTR + and not (has_validator or has_converter) + ) + or (self._on_setattr == setters.validate and not has_validator) + or (self._on_setattr == setters.convert and not has_converter) + ): + # If class-level on_setattr is set to convert + validate, but + # there's no field to convert or validate, pretend like there's + # no on_setattr. + self._on_setattr = None + + if props.added_pickling: + ( + self._cls_dict["__getstate__"], + self._cls_dict["__setstate__"], + ) = self._make_getstate_setstate() + + # tuples of script, globs, hook + self._script_snippets: list[ + tuple[str, dict, Callable[[dict, dict], Any]] + ] = [] + self._repr_added = False + + # We want to only do this check once; in 99.9% of cases these + # exist. + if not hasattr(self._cls, "__module__") or not hasattr( + self._cls, "__qualname__" + ): + self._add_method_dunders = self._add_method_dunders_safe + else: + self._add_method_dunders = self._add_method_dunders_unsafe + + def __repr__(self): + return f"<_ClassBuilder(cls={self._cls.__name__})>" + + def _eval_snippets(self) -> None: + """ + Evaluate any registered snippets in one go. + """ + script = "\n".join([snippet[0] for snippet in self._script_snippets]) + globs = {} + for _, snippet_globs, _ in self._script_snippets: + globs.update(snippet_globs) + + locs = _linecache_and_compile( + script, + _generate_unique_filename(self._cls, "methods"), + globs, + ) + + for _, _, hook in self._script_snippets: + hook(self._cls_dict, locs) + + def build_class(self): + """ + Finalize class based on the accumulated configuration. + + Builder cannot be used after calling this method. + """ + self._eval_snippets() + if self._slots is True: + cls = self._create_slots_class() + self._cls.__attrs_base_of_slotted__ = weakref.ref(cls) + else: + cls = self._patch_original_class() + if PY_3_10_PLUS: + cls = abc.update_abstractmethods(cls) + + # The method gets only called if it's not inherited from a base class. + # _has_own_attribute does NOT work properly for classmethods. + if ( + getattr(cls, "__attrs_init_subclass__", None) + and "__attrs_init_subclass__" not in cls.__dict__ + ): + cls.__attrs_init_subclass__() + + return cls + + def _patch_original_class(self): + """ + Apply accumulated methods and return the class. + """ + cls = self._cls + base_names = self._base_names + + # Clean class of attribute definitions (`attr.ib()`s). + if self._delete_attribs: + for name in self._attr_names: + if ( + name not in base_names + and getattr(cls, name, _SENTINEL) is not _SENTINEL + ): + # An AttributeError can happen if a base class defines a + # class variable and we want to set an attribute with the + # same name by using only a type annotation. + with contextlib.suppress(AttributeError): + delattr(cls, name) + + # Attach our dunder methods. + for name, value in self._cls_dict.items(): + setattr(cls, name, value) + + # If we've inherited an attrs __setattr__ and don't write our own, + # reset it to object's. + if not self._wrote_own_setattr and getattr( + cls, "__attrs_own_setattr__", False + ): + cls.__attrs_own_setattr__ = False + + if not self._has_custom_setattr: + cls.__setattr__ = _OBJ_SETATTR + + return cls + + def _create_slots_class(self): + """ + Build and return a new class with a `__slots__` attribute. + """ + cd = { + k: v + for k, v in self._cls_dict.items() + if k not in (*tuple(self._attr_names), "__dict__", "__weakref__") + } + + # 3.14.0rc2+ + if hasattr(sys, "_clear_type_descriptors"): + sys._clear_type_descriptors(self._cls) + + # If our class doesn't have its own implementation of __setattr__ + # (either from the user or by us), check the bases, if one of them has + # an attrs-made __setattr__, that needs to be reset. We don't walk the + # MRO because we only care about our immediate base classes. + # XXX: This can be confused by subclassing a slotted attrs class with + # XXX: a non-attrs class and subclass the resulting class with an attrs + # XXX: class. See `test_slotted_confused` for details. For now that's + # XXX: OK with us. + if not self._wrote_own_setattr: + cd["__attrs_own_setattr__"] = False + + if not self._has_custom_setattr: + for base_cls in self._cls.__bases__: + if base_cls.__dict__.get("__attrs_own_setattr__", False): + cd["__setattr__"] = _OBJ_SETATTR + break + + # Traverse the MRO to collect existing slots + # and check for an existing __weakref__. + existing_slots = {} + weakref_inherited = False + for base_cls in self._cls.__mro__[1:-1]: + if base_cls.__dict__.get("__weakref__", None) is not None: + weakref_inherited = True + existing_slots.update( + { + name: getattr(base_cls, name) + for name in getattr(base_cls, "__slots__", []) + } + ) + + base_names = set(self._base_names) + + names = self._attr_names + if ( + self._weakref_slot + and "__weakref__" not in getattr(self._cls, "__slots__", ()) + and "__weakref__" not in names + and not weakref_inherited + ): + names += ("__weakref__",) + + cached_properties = { + name: cached_prop.func + for name, cached_prop in cd.items() + if isinstance(cached_prop, cached_property) + } + + # Collect methods with a `__class__` reference that are shadowed in the new class. + # To know to update them. + additional_closure_functions_to_update = [] + if cached_properties: + class_annotations = _get_annotations(self._cls) + for name, func in cached_properties.items(): + # Add cached properties to names for slotting. + names += (name,) + # Clear out function from class to avoid clashing. + del cd[name] + additional_closure_functions_to_update.append(func) + annotation = inspect.signature(func).return_annotation + if annotation is not inspect.Parameter.empty: + class_annotations[name] = annotation + + original_getattr = cd.get("__getattr__") + if original_getattr is not None: + additional_closure_functions_to_update.append(original_getattr) + + cd["__getattr__"] = _make_cached_property_getattr( + cached_properties, original_getattr, self._cls + ) + + # We only add the names of attributes that aren't inherited. + # Setting __slots__ to inherited attributes wastes memory. + slot_names = [name for name in names if name not in base_names] + + # There are slots for attributes from current class + # that are defined in parent classes. + # As their descriptors may be overridden by a child class, + # we collect them here and update the class dict + reused_slots = { + slot: slot_descriptor + for slot, slot_descriptor in existing_slots.items() + if slot in slot_names + } + slot_names = [name for name in slot_names if name not in reused_slots] + cd.update(reused_slots) + if self._cache_hash: + slot_names.append(_HASH_CACHE_FIELD) + + cd["__slots__"] = tuple(slot_names) + + cd["__qualname__"] = self._cls.__qualname__ + + # Create new class based on old class and our methods. + cls = type(self._cls)(self._cls.__name__, self._cls.__bases__, cd) + + # The following is a fix for + # . + # If a method mentions `__class__` or uses the no-arg super(), the + # compiler will bake a reference to the class in the method itself + # as `method.__closure__`. Since we replace the class with a + # clone, we rewrite these references so it keeps working. + for item in itertools.chain( + cls.__dict__.values(), additional_closure_functions_to_update + ): + if isinstance(item, (classmethod, staticmethod)): + # Class- and staticmethods hide their functions inside. + # These might need to be rewritten as well. + closure_cells = getattr(item.__func__, "__closure__", None) + elif isinstance(item, property): + # Workaround for property `super()` shortcut (PY3-only). + # There is no universal way for other descriptors. + closure_cells = getattr(item.fget, "__closure__", None) + else: + closure_cells = getattr(item, "__closure__", None) + + if not closure_cells: # Catch None or the empty list. + continue + for cell in closure_cells: + try: + match = cell.cell_contents is self._cls + except ValueError: # noqa: PERF203 + # ValueError: Cell is empty + pass + else: + if match: + cell.cell_contents = cls + return cls + + def add_repr(self, ns): + script, globs = _make_repr_script(self._attrs, ns) + + def _attach_repr(cls_dict, globs): + cls_dict["__repr__"] = self._add_method_dunders(globs["__repr__"]) + + self._script_snippets.append((script, globs, _attach_repr)) + self._repr_added = True + return self + + def add_str(self): + if not self._repr_added: + msg = "__str__ can only be generated if a __repr__ exists." + raise ValueError(msg) + + def __str__(self): + return self.__repr__() + + self._cls_dict["__str__"] = self._add_method_dunders(__str__) + return self + + def _make_getstate_setstate(self): + """ + Create custom __setstate__ and __getstate__ methods. + """ + # __weakref__ is not writable. + state_attr_names = tuple( + an for an in self._attr_names if an != "__weakref__" + ) + + def slots_getstate(self): + """ + Automatically created by attrs. + """ + return {name: getattr(self, name) for name in state_attr_names} + + hash_caching_enabled = self._cache_hash + + def slots_setstate(self, state): + """ + Automatically created by attrs. + """ + __bound_setattr = _OBJ_SETATTR.__get__(self) + if isinstance(state, tuple): + # Backward compatibility with attrs instances pickled with + # attrs versions before v22.2.0 which stored tuples. + for name, value in zip(state_attr_names, state): + __bound_setattr(name, value) + else: + for name in state_attr_names: + if name in state: + __bound_setattr(name, state[name]) + + # The hash code cache is not included when the object is + # serialized, but it still needs to be initialized to None to + # indicate that the first call to __hash__ should be a cache + # miss. + if hash_caching_enabled: + __bound_setattr(_HASH_CACHE_FIELD, None) + + return slots_getstate, slots_setstate + + def make_unhashable(self): + self._cls_dict["__hash__"] = None + return self + + def add_hash(self): + script, globs = _make_hash_script( + self._cls, + self._attrs, + frozen=self._frozen, + cache_hash=self._cache_hash, + ) + + def attach_hash(cls_dict: dict, locs: dict) -> None: + cls_dict["__hash__"] = self._add_method_dunders(locs["__hash__"]) + + self._script_snippets.append((script, globs, attach_hash)) + + return self + + def add_init(self): + script, globs, annotations = _make_init_script( + self._cls, + self._attrs, + self._has_pre_init, + self._pre_init_has_args, + self._has_post_init, + self._frozen, + self._slots, + self._cache_hash, + self._base_attr_map, + self._is_exc, + self._on_setattr, + attrs_init=False, + ) + + def _attach_init(cls_dict, globs): + init = globs["__init__"] + init.__annotations__ = annotations + cls_dict["__init__"] = self._add_method_dunders(init) + + self._script_snippets.append((script, globs, _attach_init)) + + return self + + def add_replace(self): + self._cls_dict["__replace__"] = self._add_method_dunders(evolve) + return self + + def add_match_args(self): + self._cls_dict["__match_args__"] = tuple( + field.name + for field in self._attrs + if field.init and not field.kw_only + ) + + def add_attrs_init(self): + script, globs, annotations = _make_init_script( + self._cls, + self._attrs, + self._has_pre_init, + self._pre_init_has_args, + self._has_post_init, + self._frozen, + self._slots, + self._cache_hash, + self._base_attr_map, + self._is_exc, + self._on_setattr, + attrs_init=True, + ) + + def _attach_attrs_init(cls_dict, globs): + init = globs["__attrs_init__"] + init.__annotations__ = annotations + cls_dict["__attrs_init__"] = self._add_method_dunders(init) + + self._script_snippets.append((script, globs, _attach_attrs_init)) + + return self + + def add_eq(self): + cd = self._cls_dict + + script, globs = _make_eq_script(self._attrs) + + def _attach_eq(cls_dict, globs): + cls_dict["__eq__"] = self._add_method_dunders(globs["__eq__"]) + + self._script_snippets.append((script, globs, _attach_eq)) + + cd["__ne__"] = __ne__ + + return self + + def add_order(self): + cd = self._cls_dict + + cd["__lt__"], cd["__le__"], cd["__gt__"], cd["__ge__"] = ( + self._add_method_dunders(meth) + for meth in _make_order(self._cls, self._attrs) + ) + + return self + + def add_setattr(self): + sa_attrs = {} + for a in self._attrs: + on_setattr = a.on_setattr or self._on_setattr + if on_setattr and on_setattr is not setters.NO_OP: + sa_attrs[a.name] = a, on_setattr + + if not sa_attrs: + return self + + if self._has_custom_setattr: + # We need to write a __setattr__ but there already is one! + msg = "Can't combine custom __setattr__ with on_setattr hooks." + raise ValueError(msg) + + # docstring comes from _add_method_dunders + def __setattr__(self, name, val): + try: + a, hook = sa_attrs[name] + except KeyError: + nval = val + else: + nval = hook(self, a, val) + + _OBJ_SETATTR(self, name, nval) + + self._cls_dict["__attrs_own_setattr__"] = True + self._cls_dict["__setattr__"] = self._add_method_dunders(__setattr__) + self._wrote_own_setattr = True + + return self + + def _add_method_dunders_unsafe(self, method: Callable) -> Callable: + """ + Add __module__ and __qualname__ to a *method*. + """ + method.__module__ = self._cls.__module__ + + method.__qualname__ = f"{self._cls.__qualname__}.{method.__name__}" + + method.__doc__ = ( + f"Method generated by attrs for class {self._cls.__qualname__}." + ) + + return method + + def _add_method_dunders_safe(self, method: Callable) -> Callable: + """ + Add __module__ and __qualname__ to a *method* if possible. + """ + with contextlib.suppress(AttributeError): + method.__module__ = self._cls.__module__ + + with contextlib.suppress(AttributeError): + method.__qualname__ = f"{self._cls.__qualname__}.{method.__name__}" + + with contextlib.suppress(AttributeError): + method.__doc__ = f"Method generated by attrs for class {self._cls.__qualname__}." + + return method + + +def _determine_attrs_eq_order(cmp, eq, order, default_eq): + """ + Validate the combination of *cmp*, *eq*, and *order*. Derive the effective + values of eq and order. If *eq* is None, set it to *default_eq*. + """ + if cmp is not None and any((eq is not None, order is not None)): + msg = "Don't mix `cmp` with `eq' and `order`." + raise ValueError(msg) + + # cmp takes precedence due to bw-compatibility. + if cmp is not None: + return cmp, cmp + + # If left None, equality is set to the specified default and ordering + # mirrors equality. + if eq is None: + eq = default_eq + + if order is None: + order = eq + + if eq is False and order is True: + msg = "`order` can only be True if `eq` is True too." + raise ValueError(msg) + + return eq, order + + +def _determine_attrib_eq_order(cmp, eq, order, default_eq): + """ + Validate the combination of *cmp*, *eq*, and *order*. Derive the effective + values of eq and order. If *eq* is None, set it to *default_eq*. + """ + if cmp is not None and any((eq is not None, order is not None)): + msg = "Don't mix `cmp` with `eq' and `order`." + raise ValueError(msg) + + def decide_callable_or_boolean(value): + """ + Decide whether a key function is used. + """ + if callable(value): + value, key = True, value + else: + key = None + return value, key + + # cmp takes precedence due to bw-compatibility. + if cmp is not None: + cmp, cmp_key = decide_callable_or_boolean(cmp) + return cmp, cmp_key, cmp, cmp_key + + # If left None, equality is set to the specified default and ordering + # mirrors equality. + if eq is None: + eq, eq_key = default_eq, None + else: + eq, eq_key = decide_callable_or_boolean(eq) + + if order is None: + order, order_key = eq, eq_key + else: + order, order_key = decide_callable_or_boolean(order) + + if eq is False and order is True: + msg = "`order` can only be True if `eq` is True too." + raise ValueError(msg) + + return eq, eq_key, order, order_key + + +def _determine_whether_to_implement( + cls, flag, auto_detect, dunders, default=True +): + """ + Check whether we should implement a set of methods for *cls*. + + *flag* is the argument passed into @attr.s like 'init', *auto_detect* the + same as passed into @attr.s and *dunders* is a tuple of attribute names + whose presence signal that the user has implemented it themselves. + + Return *default* if no reason for either for or against is found. + """ + if flag is True or flag is False: + return flag + + if flag is None and auto_detect is False: + return default + + # Logically, flag is None and auto_detect is True here. + for dunder in dunders: + if _has_own_attribute(cls, dunder): + return False + + return default + + +def attrs( + maybe_cls=None, + these=None, + repr_ns=None, + repr=None, + cmp=None, + hash=None, + init=None, + slots=False, + frozen=False, + weakref_slot=True, + str=False, + auto_attribs=False, + kw_only=False, + cache_hash=False, + auto_exc=False, + eq=None, + order=None, + auto_detect=False, + collect_by_mro=False, + getstate_setstate=None, + on_setattr=None, + field_transformer=None, + match_args=True, + unsafe_hash=None, + force_kw_only=True, +): + r""" + A class decorator that adds :term:`dunder methods` according to the + specified attributes using `attr.ib` or the *these* argument. + + Consider using `attrs.define` / `attrs.frozen` in new code (``attr.s`` will + *never* go away, though). + + Args: + repr_ns (str): + When using nested classes, there was no way in Python 2 to + automatically detect that. This argument allows to set a custom + name for a more meaningful ``repr`` output. This argument is + pointless in Python 3 and is therefore deprecated. + + .. caution:: + Refer to `attrs.define` for the rest of the parameters, but note that they + can have different defaults. + + Notably, leaving *on_setattr* as `None` will **not** add any hooks. + + .. versionadded:: 16.0.0 *slots* + .. versionadded:: 16.1.0 *frozen* + .. versionadded:: 16.3.0 *str* + .. versionadded:: 16.3.0 Support for ``__attrs_post_init__``. + .. versionchanged:: 17.1.0 + *hash* supports `None` as value which is also the default now. + .. versionadded:: 17.3.0 *auto_attribs* + .. versionchanged:: 18.1.0 + If *these* is passed, no attributes are deleted from the class body. + .. versionchanged:: 18.1.0 If *these* is ordered, the order is retained. + .. versionadded:: 18.2.0 *weakref_slot* + .. deprecated:: 18.2.0 + ``__lt__``, ``__le__``, ``__gt__``, and ``__ge__`` now raise a + `DeprecationWarning` if the classes compared are subclasses of + each other. ``__eq`` and ``__ne__`` never tried to compared subclasses + to each other. + .. versionchanged:: 19.2.0 + ``__lt__``, ``__le__``, ``__gt__``, and ``__ge__`` now do not consider + subclasses comparable anymore. + .. versionadded:: 18.2.0 *kw_only* + .. versionadded:: 18.2.0 *cache_hash* + .. versionadded:: 19.1.0 *auto_exc* + .. deprecated:: 19.2.0 *cmp* Removal on or after 2021-06-01. + .. versionadded:: 19.2.0 *eq* and *order* + .. versionadded:: 20.1.0 *auto_detect* + .. versionadded:: 20.1.0 *collect_by_mro* + .. versionadded:: 20.1.0 *getstate_setstate* + .. versionadded:: 20.1.0 *on_setattr* + .. versionadded:: 20.3.0 *field_transformer* + .. versionchanged:: 21.1.0 + ``init=False`` injects ``__attrs_init__`` + .. versionchanged:: 21.1.0 Support for ``__attrs_pre_init__`` + .. versionchanged:: 21.1.0 *cmp* undeprecated + .. versionadded:: 21.3.0 *match_args* + .. versionadded:: 22.2.0 + *unsafe_hash* as an alias for *hash* (for :pep:`681` compliance). + .. deprecated:: 24.1.0 *repr_ns* + .. versionchanged:: 24.1.0 + Instances are not compared as tuples of attributes anymore, but using a + big ``and`` condition. This is faster and has more correct behavior for + uncomparable values like `math.nan`. + .. versionadded:: 24.1.0 + If a class has an *inherited* classmethod called + ``__attrs_init_subclass__``, it is executed after the class is created. + .. deprecated:: 24.1.0 *hash* is deprecated in favor of *unsafe_hash*. + .. versionchanged:: 25.4.0 + *kw_only* now only applies to attributes defined in the current class, + and respects attribute-level ``kw_only=False`` settings. + .. versionadded:: 25.4.0 *force_kw_only* + """ + if repr_ns is not None: + import warnings + + warnings.warn( + DeprecationWarning( + "The `repr_ns` argument is deprecated and will be removed in or after August 2025." + ), + stacklevel=2, + ) + + eq_, order_ = _determine_attrs_eq_order(cmp, eq, order, None) + + # unsafe_hash takes precedence due to PEP 681. + if unsafe_hash is not None: + hash = unsafe_hash + + if isinstance(on_setattr, (list, tuple)): + on_setattr = setters.pipe(*on_setattr) + + def wrap(cls): + nonlocal hash + is_frozen = frozen or _has_frozen_base_class(cls) + is_exc = auto_exc is True and issubclass(cls, BaseException) + has_own_setattr = auto_detect and _has_own_attribute( + cls, "__setattr__" + ) + + if has_own_setattr and is_frozen: + msg = "Can't freeze a class with a custom __setattr__." + raise ValueError(msg) + + eq = not is_exc and _determine_whether_to_implement( + cls, eq_, auto_detect, ("__eq__", "__ne__") + ) + + Hashability = ClassProps.Hashability + + if is_exc: + hashability = Hashability.LEAVE_ALONE + elif hash is True: + hashability = ( + Hashability.HASHABLE_CACHED + if cache_hash + else Hashability.HASHABLE + ) + elif hash is False: + hashability = Hashability.LEAVE_ALONE + elif hash is None: + if auto_detect is True and _has_own_attribute(cls, "__hash__"): + hashability = Hashability.LEAVE_ALONE + elif eq is True and is_frozen is True: + hashability = ( + Hashability.HASHABLE_CACHED + if cache_hash + else Hashability.HASHABLE + ) + elif eq is False: + hashability = Hashability.LEAVE_ALONE + else: + hashability = Hashability.UNHASHABLE + else: + msg = "Invalid value for hash. Must be True, False, or None." + raise TypeError(msg) + + KeywordOnly = ClassProps.KeywordOnly + if kw_only: + kwo = KeywordOnly.FORCE if force_kw_only else KeywordOnly.YES + else: + kwo = KeywordOnly.NO + + props = ClassProps( + is_exception=is_exc, + is_frozen=is_frozen, + is_slotted=slots, + collected_fields_by_mro=collect_by_mro, + added_init=_determine_whether_to_implement( + cls, init, auto_detect, ("__init__",) + ), + added_repr=_determine_whether_to_implement( + cls, repr, auto_detect, ("__repr__",) + ), + added_eq=eq, + added_ordering=not is_exc + and _determine_whether_to_implement( + cls, + order_, + auto_detect, + ("__lt__", "__le__", "__gt__", "__ge__"), + ), + hashability=hashability, + added_match_args=match_args, + kw_only=kwo, + has_weakref_slot=weakref_slot, + added_str=str, + added_pickling=_determine_whether_to_implement( + cls, + getstate_setstate, + auto_detect, + ("__getstate__", "__setstate__"), + default=slots, + ), + on_setattr_hook=on_setattr, + field_transformer=field_transformer, + ) + + if not props.is_hashable and cache_hash: + msg = "Invalid value for cache_hash. To use hash caching, hashing must be either explicitly or implicitly enabled." + raise TypeError(msg) + + builder = _ClassBuilder( + cls, + these, + auto_attribs=auto_attribs, + props=props, + has_custom_setattr=has_own_setattr, + ) + + if props.added_repr: + builder.add_repr(repr_ns) + + if props.added_str: + builder.add_str() + + if props.added_eq: + builder.add_eq() + if props.added_ordering: + builder.add_order() + + if not frozen: + builder.add_setattr() + + if props.is_hashable: + builder.add_hash() + elif props.hashability is Hashability.UNHASHABLE: + builder.make_unhashable() + + if props.added_init: + builder.add_init() + else: + builder.add_attrs_init() + if cache_hash: + msg = "Invalid value for cache_hash. To use hash caching, init must be True." + raise TypeError(msg) + + if PY_3_13_PLUS and not _has_own_attribute(cls, "__replace__"): + builder.add_replace() + + if ( + PY_3_10_PLUS + and match_args + and not _has_own_attribute(cls, "__match_args__") + ): + builder.add_match_args() + + return builder.build_class() + + # maybe_cls's type depends on the usage of the decorator. It's a class + # if it's used as `@attrs` but `None` if used as `@attrs()`. + if maybe_cls is None: + return wrap + + return wrap(maybe_cls) + + +_attrs = attrs +""" +Internal alias so we can use it in functions that take an argument called +*attrs*. +""" + + +def _has_frozen_base_class(cls): + """ + Check whether *cls* has a frozen ancestor by looking at its + __setattr__. + """ + return cls.__setattr__ is _frozen_setattrs + + +def _generate_unique_filename(cls: type, func_name: str) -> str: + """ + Create a "filename" suitable for a function being generated. + """ + return ( + f"" + ) + + +def _make_hash_script( + cls: type, attrs: list[Attribute], frozen: bool, cache_hash: bool +) -> tuple[str, dict]: + attrs = tuple( + a for a in attrs if a.hash is True or (a.hash is None and a.eq is True) + ) + + tab = " " + + type_hash = hash(_generate_unique_filename(cls, "hash")) + # If eq is custom generated, we need to include the functions in globs + globs = {} + + hash_def = "def __hash__(self" + hash_func = "hash((" + closing_braces = "))" + if not cache_hash: + hash_def += "):" + else: + hash_def += ", *" + + hash_def += ", _cache_wrapper=__import__('attr._make')._make._CacheHashWrapper):" + hash_func = "_cache_wrapper(" + hash_func + closing_braces += ")" + + method_lines = [hash_def] + + def append_hash_computation_lines(prefix, indent): + """ + Generate the code for actually computing the hash code. + Below this will either be returned directly or used to compute + a value which is then cached, depending on the value of cache_hash + """ + + method_lines.extend( + [ + indent + prefix + hash_func, + indent + f" {type_hash},", + ] + ) + + for a in attrs: + if a.eq_key: + cmp_name = f"_{a.name}_key" + globs[cmp_name] = a.eq_key + method_lines.append( + indent + f" {cmp_name}(self.{a.name})," + ) + else: + method_lines.append(indent + f" self.{a.name},") + + method_lines.append(indent + " " + closing_braces) + + if cache_hash: + method_lines.append(tab + f"if self.{_HASH_CACHE_FIELD} is None:") + if frozen: + append_hash_computation_lines( + f"object.__setattr__(self, '{_HASH_CACHE_FIELD}', ", tab * 2 + ) + method_lines.append(tab * 2 + ")") # close __setattr__ + else: + append_hash_computation_lines( + f"self.{_HASH_CACHE_FIELD} = ", tab * 2 + ) + method_lines.append(tab + f"return self.{_HASH_CACHE_FIELD}") + else: + append_hash_computation_lines("return ", tab) + + script = "\n".join(method_lines) + return script, globs + + +def _add_hash(cls: type, attrs: list[Attribute]): + """ + Add a hash method to *cls*. + """ + script, globs = _make_hash_script( + cls, attrs, frozen=False, cache_hash=False + ) + _compile_and_eval( + script, globs, filename=_generate_unique_filename(cls, "__hash__") + ) + cls.__hash__ = globs["__hash__"] + return cls + + +def __ne__(self, other): + """ + Check equality and either forward a NotImplemented or + return the result negated. + """ + result = self.__eq__(other) + if result is NotImplemented: + return NotImplemented + + return not result + + +def _make_eq_script(attrs: list) -> tuple[str, dict]: + """ + Create __eq__ method for *cls* with *attrs*. + """ + attrs = [a for a in attrs if a.eq] + + lines = [ + "def __eq__(self, other):", + " if other.__class__ is not self.__class__:", + " return NotImplemented", + ] + + globs = {} + if attrs: + lines.append(" return (") + for a in attrs: + if a.eq_key: + cmp_name = f"_{a.name}_key" + # Add the key function to the global namespace + # of the evaluated function. + globs[cmp_name] = a.eq_key + lines.append( + f" {cmp_name}(self.{a.name}) == {cmp_name}(other.{a.name})" + ) + else: + lines.append(f" self.{a.name} == other.{a.name}") + if a is not attrs[-1]: + lines[-1] = f"{lines[-1]} and" + lines.append(" )") + else: + lines.append(" return True") + + script = "\n".join(lines) + + return script, globs + + +def _make_order(cls, attrs): + """ + Create ordering methods for *cls* with *attrs*. + """ + attrs = [a for a in attrs if a.order] + + def attrs_to_tuple(obj): + """ + Save us some typing. + """ + return tuple( + key(value) if key else value + for value, key in ( + (getattr(obj, a.name), a.order_key) for a in attrs + ) + ) + + def __lt__(self, other): + """ + Automatically created by attrs. + """ + if other.__class__ is self.__class__: + return attrs_to_tuple(self) < attrs_to_tuple(other) + + return NotImplemented + + def __le__(self, other): + """ + Automatically created by attrs. + """ + if other.__class__ is self.__class__: + return attrs_to_tuple(self) <= attrs_to_tuple(other) + + return NotImplemented + + def __gt__(self, other): + """ + Automatically created by attrs. + """ + if other.__class__ is self.__class__: + return attrs_to_tuple(self) > attrs_to_tuple(other) + + return NotImplemented + + def __ge__(self, other): + """ + Automatically created by attrs. + """ + if other.__class__ is self.__class__: + return attrs_to_tuple(self) >= attrs_to_tuple(other) + + return NotImplemented + + return __lt__, __le__, __gt__, __ge__ + + +def _add_eq(cls, attrs=None): + """ + Add equality methods to *cls* with *attrs*. + """ + if attrs is None: + attrs = cls.__attrs_attrs__ + + script, globs = _make_eq_script(attrs) + _compile_and_eval( + script, globs, filename=_generate_unique_filename(cls, "__eq__") + ) + cls.__eq__ = globs["__eq__"] + cls.__ne__ = __ne__ + + return cls + + +def _make_repr_script(attrs, ns) -> tuple[str, dict]: + """ + Create the source and globs for a __repr__ and return it. + """ + # Figure out which attributes to include, and which function to use to + # format them. The a.repr value can be either bool or a custom + # callable. + attr_names_with_reprs = tuple( + (a.name, (repr if a.repr is True else a.repr), a.init) + for a in attrs + if a.repr is not False + ) + globs = { + name + "_repr": r for name, r, _ in attr_names_with_reprs if r != repr + } + globs["_compat"] = _compat + globs["AttributeError"] = AttributeError + globs["NOTHING"] = NOTHING + attribute_fragments = [] + for name, r, i in attr_names_with_reprs: + accessor = ( + "self." + name if i else 'getattr(self, "' + name + '", NOTHING)' + ) + fragment = ( + "%s={%s!r}" % (name, accessor) + if r == repr + else "%s={%s_repr(%s)}" % (name, name, accessor) + ) + attribute_fragments.append(fragment) + repr_fragment = ", ".join(attribute_fragments) + + if ns is None: + cls_name_fragment = '{self.__class__.__qualname__.rsplit(">.", 1)[-1]}' + else: + cls_name_fragment = ns + ".{self.__class__.__name__}" + + lines = [ + "def __repr__(self):", + " try:", + " already_repring = _compat.repr_context.already_repring", + " except AttributeError:", + " already_repring = {id(self),}", + " _compat.repr_context.already_repring = already_repring", + " else:", + " if id(self) in already_repring:", + " return '...'", + " else:", + " already_repring.add(id(self))", + " try:", + f" return f'{cls_name_fragment}({repr_fragment})'", + " finally:", + " already_repring.remove(id(self))", + ] + + return "\n".join(lines), globs + + +def _add_repr(cls, ns=None, attrs=None): + """ + Add a repr method to *cls*. + """ + if attrs is None: + attrs = cls.__attrs_attrs__ + + script, globs = _make_repr_script(attrs, ns) + _compile_and_eval( + script, globs, filename=_generate_unique_filename(cls, "__repr__") + ) + cls.__repr__ = globs["__repr__"] + return cls + + +def fields(cls): + """ + Return the tuple of *attrs* attributes for a class or instance. + + The tuple also allows accessing the fields by their names (see below for + examples). + + Args: + cls (type): Class or instance to introspect. + + Raises: + TypeError: If *cls* is neither a class nor an *attrs* instance. + + attrs.exceptions.NotAnAttrsClassError: + If *cls* is not an *attrs* class. + + Returns: + tuple (with name accessors) of `attrs.Attribute` + + .. versionchanged:: 16.2.0 Returned tuple allows accessing the fields + by name. + .. versionchanged:: 23.1.0 Add support for generic classes. + .. versionchanged:: 26.1.0 Add support for instances. + """ + generic_base = get_generic_base(cls) + + if generic_base is None and not isinstance(cls, type): + type_ = type(cls) + if getattr(type_, "__attrs_attrs__", None) is None: + msg = "Passed object must be a class or attrs instance." + raise TypeError(msg) + + return fields(type_) + + attrs = getattr(cls, "__attrs_attrs__", None) + + if attrs is None: + if generic_base is not None: + attrs = getattr(generic_base, "__attrs_attrs__", None) + if attrs is not None: + # Even though this is global state, stick it on here to speed + # it up. We rely on `cls` being cached for this to be + # efficient. + cls.__attrs_attrs__ = attrs + return attrs + msg = f"{cls!r} is not an attrs-decorated class." + raise NotAnAttrsClassError(msg) + + return attrs + + +def fields_dict(cls): + """ + Return an ordered dictionary of *attrs* attributes for a class, whose keys + are the attribute names. + + Args: + cls (type): Class to introspect. + + Raises: + TypeError: If *cls* is not a class. + + attrs.exceptions.NotAnAttrsClassError: + If *cls* is not an *attrs* class. + + Returns: + dict[str, attrs.Attribute]: Dict of attribute name to definition + + .. versionadded:: 18.1.0 + """ + if not isinstance(cls, type): + msg = "Passed object must be a class." + raise TypeError(msg) + attrs = getattr(cls, "__attrs_attrs__", None) + if attrs is None: + msg = f"{cls!r} is not an attrs-decorated class." + raise NotAnAttrsClassError(msg) + return {a.name: a for a in attrs} + + +def validate(inst): + """ + Validate all attributes on *inst* that have a validator. + + Leaves all exceptions through. + + Args: + inst: Instance of a class with *attrs* attributes. + """ + if _config._run_validators is False: + return + + for a in fields(inst.__class__): + v = a.validator + if v is not None: + v(inst, a, getattr(inst, a.name)) + + +def _is_slot_attr(a_name, base_attr_map): + """ + Check if the attribute name comes from a slot class. + """ + cls = base_attr_map.get(a_name) + return cls and "__slots__" in cls.__dict__ + + +def _make_init_script( + cls, + attrs, + pre_init, + pre_init_has_args, + post_init, + frozen, + slots, + cache_hash, + base_attr_map, + is_exc, + cls_on_setattr, + attrs_init, +) -> tuple[str, dict, dict]: + has_cls_on_setattr = ( + cls_on_setattr is not None and cls_on_setattr is not setters.NO_OP + ) + + if frozen and has_cls_on_setattr: + msg = "Frozen classes can't use on_setattr." + raise ValueError(msg) + + needs_cached_setattr = cache_hash or frozen + filtered_attrs = [] + attr_dict = {} + for a in attrs: + if not a.init and a.default is NOTHING: + continue + + filtered_attrs.append(a) + attr_dict[a.name] = a + + if a.on_setattr is not None: + if frozen is True and a.on_setattr is not setters.NO_OP: + msg = "Frozen classes can't use on_setattr." + raise ValueError(msg) + + needs_cached_setattr = True + elif has_cls_on_setattr and a.on_setattr is not setters.NO_OP: + needs_cached_setattr = True + + script, globs, annotations = _attrs_to_init_script( + filtered_attrs, + frozen, + slots, + pre_init, + pre_init_has_args, + post_init, + cache_hash, + base_attr_map, + is_exc, + needs_cached_setattr, + has_cls_on_setattr, + "__attrs_init__" if attrs_init else "__init__", + ) + if cls.__module__ in sys.modules: + # This makes typing.get_type_hints(CLS.__init__) resolve string types. + globs.update(sys.modules[cls.__module__].__dict__) + + globs.update({"NOTHING": NOTHING, "attr_dict": attr_dict}) + + if needs_cached_setattr: + # Save the lookup overhead in __init__ if we need to circumvent + # setattr hooks. + globs["_cached_setattr_get"] = _OBJ_SETATTR.__get__ + + return script, globs, annotations + + +def _setattr(attr_name: str, value_var: str, has_on_setattr: bool) -> str: + """ + Use the cached object.setattr to set *attr_name* to *value_var*. + """ + return f"_setattr('{attr_name}', {value_var})" + + +def _setattr_with_converter( + attr_name: str, value_var: str, has_on_setattr: bool, converter: Converter +) -> str: + """ + Use the cached object.setattr to set *attr_name* to *value_var*, but run + its converter first. + """ + return f"_setattr('{attr_name}', {converter._fmt_converter_call(attr_name, value_var)})" + + +def _assign(attr_name: str, value: str, has_on_setattr: bool) -> str: + """ + Unless *attr_name* has an on_setattr hook, use normal assignment. Otherwise + relegate to _setattr. + """ + if has_on_setattr: + return _setattr(attr_name, value, True) + + return f"self.{attr_name} = {value}" + + +def _assign_with_converter( + attr_name: str, value_var: str, has_on_setattr: bool, converter: Converter +) -> str: + """ + Unless *attr_name* has an on_setattr hook, use normal assignment after + conversion. Otherwise relegate to _setattr_with_converter. + """ + if has_on_setattr: + return _setattr_with_converter(attr_name, value_var, True, converter) + + return f"self.{attr_name} = {converter._fmt_converter_call(attr_name, value_var)}" + + +def _determine_setters( + frozen: bool, slots: bool, base_attr_map: dict[str, type] +): + """ + Determine the correct setter functions based on whether a class is frozen + and/or slotted. + """ + if frozen is True: + if slots is True: + return (), _setattr, _setattr_with_converter + + # Dict frozen classes assign directly to __dict__. + # But only if the attribute doesn't come from an ancestor slot + # class. + # Note _inst_dict will be used again below if cache_hash is True + + def fmt_setter( + attr_name: str, value_var: str, has_on_setattr: bool + ) -> str: + if _is_slot_attr(attr_name, base_attr_map): + return _setattr(attr_name, value_var, has_on_setattr) + + return f"_inst_dict['{attr_name}'] = {value_var}" + + def fmt_setter_with_converter( + attr_name: str, + value_var: str, + has_on_setattr: bool, + converter: Converter, + ) -> str: + if has_on_setattr or _is_slot_attr(attr_name, base_attr_map): + return _setattr_with_converter( + attr_name, value_var, has_on_setattr, converter + ) + + return f"_inst_dict['{attr_name}'] = {converter._fmt_converter_call(attr_name, value_var)}" + + return ( + ("_inst_dict = self.__dict__",), + fmt_setter, + fmt_setter_with_converter, + ) + + # Not frozen -- we can just assign directly. + return (), _assign, _assign_with_converter + + +def _attrs_to_init_script( + attrs: list[Attribute], + is_frozen: bool, + is_slotted: bool, + call_pre_init: bool, + pre_init_has_args: bool, + call_post_init: bool, + does_cache_hash: bool, + base_attr_map: dict[str, type], + is_exc: bool, + needs_cached_setattr: bool, + has_cls_on_setattr: bool, + method_name: str, +) -> tuple[str, dict, dict]: + """ + Return a script of an initializer for *attrs*, a dict of globals, and + annotations for the initializer. + + The globals are required by the generated script. + """ + lines = ["self.__attrs_pre_init__()"] if call_pre_init else [] + + if needs_cached_setattr: + lines.append( + # Circumvent the __setattr__ descriptor to save one lookup per + # assignment. Note _setattr will be used again below if + # does_cache_hash is True. + "_setattr = _cached_setattr_get(self)" + ) + + extra_lines, fmt_setter, fmt_setter_with_converter = _determine_setters( + is_frozen, is_slotted, base_attr_map + ) + lines.extend(extra_lines) + + args = [] # Parameters in the definition of __init__ + pre_init_args = [] # Parameters in the call to __attrs_pre_init__ + kw_only_args = [] # Used for both 'args' and 'pre_init_args' above + attrs_to_validate = [] + + # This is a dictionary of names to validator and converter callables. + # Injecting this into __init__ globals lets us avoid lookups. + names_for_globals = {} + annotations = {"return": None} + + for a in attrs: + if a.validator: + attrs_to_validate.append(a) + + attr_name = a.name + has_on_setattr = a.on_setattr is not None or ( + a.on_setattr is not setters.NO_OP and has_cls_on_setattr + ) + # a.alias is set to maybe-mangled attr_name in _ClassBuilder if not + # explicitly provided + arg_name = a.alias + + has_factory = isinstance(a.default, Factory) + maybe_self = "self" if has_factory and a.default.takes_self else "" + + if a.converter is not None and not isinstance(a.converter, Converter): + converter = Converter(a.converter) + else: + converter = a.converter + + if a.init is False: + if has_factory: + init_factory_name = _INIT_FACTORY_PAT % (a.name,) + if converter is not None: + lines.append( + fmt_setter_with_converter( + attr_name, + init_factory_name + f"({maybe_self})", + has_on_setattr, + converter, + ) + ) + names_for_globals[converter._get_global_name(a.name)] = ( + converter.converter + ) + else: + lines.append( + fmt_setter( + attr_name, + init_factory_name + f"({maybe_self})", + has_on_setattr, + ) + ) + names_for_globals[init_factory_name] = a.default.factory + elif converter is not None: + lines.append( + fmt_setter_with_converter( + attr_name, + f"attr_dict['{attr_name}'].default", + has_on_setattr, + converter, + ) + ) + names_for_globals[converter._get_global_name(a.name)] = ( + converter.converter + ) + else: + lines.append( + fmt_setter( + attr_name, + f"attr_dict['{attr_name}'].default", + has_on_setattr, + ) + ) + elif a.default is not NOTHING and not has_factory: + arg = f"{arg_name}=attr_dict['{attr_name}'].default" + if a.kw_only: + kw_only_args.append(arg) + else: + args.append(arg) + pre_init_args.append(arg_name) + + if converter is not None: + lines.append( + fmt_setter_with_converter( + attr_name, arg_name, has_on_setattr, converter + ) + ) + names_for_globals[converter._get_global_name(a.name)] = ( + converter.converter + ) + else: + lines.append(fmt_setter(attr_name, arg_name, has_on_setattr)) + + elif has_factory: + arg = f"{arg_name}=NOTHING" + if a.kw_only: + kw_only_args.append(arg) + else: + args.append(arg) + pre_init_args.append(arg_name) + lines.append(f"if {arg_name} is not NOTHING:") + + init_factory_name = _INIT_FACTORY_PAT % (a.name,) + if converter is not None: + lines.append( + " " + + fmt_setter_with_converter( + attr_name, arg_name, has_on_setattr, converter + ) + ) + lines.append("else:") + lines.append( + " " + + fmt_setter_with_converter( + attr_name, + init_factory_name + "(" + maybe_self + ")", + has_on_setattr, + converter, + ) + ) + names_for_globals[converter._get_global_name(a.name)] = ( + converter.converter + ) + else: + lines.append( + " " + fmt_setter(attr_name, arg_name, has_on_setattr) + ) + lines.append("else:") + lines.append( + " " + + fmt_setter( + attr_name, + init_factory_name + "(" + maybe_self + ")", + has_on_setattr, + ) + ) + names_for_globals[init_factory_name] = a.default.factory + else: + if a.kw_only: + kw_only_args.append(arg_name) + else: + args.append(arg_name) + pre_init_args.append(arg_name) + + if converter is not None: + lines.append( + fmt_setter_with_converter( + attr_name, arg_name, has_on_setattr, converter + ) + ) + names_for_globals[converter._get_global_name(a.name)] = ( + converter.converter + ) + else: + lines.append(fmt_setter(attr_name, arg_name, has_on_setattr)) + + if a.init is True: + if a.type is not None and converter is None: + annotations[arg_name] = a.type + elif converter is not None and converter._first_param_type: + # Use the type from the converter if present. + annotations[arg_name] = converter._first_param_type + + if attrs_to_validate: # we can skip this if there are no validators. + names_for_globals["_config"] = _config + lines.append("if _config._run_validators is True:") + for a in attrs_to_validate: + val_name = "__attr_validator_" + a.name + attr_name = "__attr_" + a.name + lines.append(f" {val_name}(self, {attr_name}, self.{a.name})") + names_for_globals[val_name] = a.validator + names_for_globals[attr_name] = a + + if call_post_init: + lines.append("self.__attrs_post_init__()") + + # Because this is set only after __attrs_post_init__ is called, a crash + # will result if post-init tries to access the hash code. This seemed + # preferable to setting this beforehand, in which case alteration to field + # values during post-init combined with post-init accessing the hash code + # would result in silent bugs. + if does_cache_hash: + if is_frozen: + if is_slotted: + init_hash_cache = f"_setattr('{_HASH_CACHE_FIELD}', None)" + else: + init_hash_cache = f"_inst_dict['{_HASH_CACHE_FIELD}'] = None" + else: + init_hash_cache = f"self.{_HASH_CACHE_FIELD} = None" + lines.append(init_hash_cache) + + # For exceptions we rely on BaseException.__init__ for proper + # initialization. + if is_exc: + vals = ",".join(f"self.{a.name}" for a in attrs if a.init) + + lines.append(f"BaseException.__init__(self, {vals})") + + args = ", ".join(args) + pre_init_args = ", ".join(pre_init_args) + if kw_only_args: + # leading comma & kw_only args + args += f"{', ' if args else ''}*, {', '.join(kw_only_args)}" + pre_init_kw_only_args = ", ".join( + [ + f"{kw_arg_name}={kw_arg_name}" + # We need to remove the defaults from the kw_only_args. + for kw_arg_name in (kwa.split("=")[0] for kwa in kw_only_args) + ] + ) + pre_init_args += ", " if pre_init_args else "" + pre_init_args += pre_init_kw_only_args + + if call_pre_init and pre_init_has_args: + # If pre init method has arguments, pass the values given to __init__. + lines[0] = f"self.__attrs_pre_init__({pre_init_args})" + + # Python <3.12 doesn't allow backslashes in f-strings. + NL = "\n " + return ( + f"""def {method_name}(self, {args}): + {NL.join(lines) if lines else "pass"} +""", + names_for_globals, + annotations, + ) + + +def _default_init_alias_for(name: str) -> str: + """ + The default __init__ parameter name for a field. + + This performs private-name adjustment via leading-unscore stripping, + and is the default value of Attribute.alias if not provided. + """ + + return name.lstrip("_") + + +class Attribute: + """ + *Read-only* representation of an attribute. + + .. warning:: + + You should never instantiate this class yourself. + + The class has *all* arguments of `attr.ib` (except for ``factory`` which is + only syntactic sugar for ``default=Factory(...)`` plus the following: + + - ``name`` (`str`): The name of the attribute. + - ``alias`` (`str`): The __init__ parameter name of the attribute, after + any explicit overrides and default private-attribute-name handling. + - ``alias_is_default`` (`bool`): Whether the ``alias`` was automatically + generated (``True``) or explicitly provided by the user (``False``). + - ``inherited`` (`bool`): Whether or not that attribute has been inherited + from a base class. + - ``eq_key`` and ``order_key`` (`typing.Callable` or `None`): The + callables that are used for comparing and ordering objects by this + attribute, respectively. These are set by passing a callable to + `attr.ib`'s ``eq``, ``order``, or ``cmp`` arguments. See also + :ref:`comparison customization `. + + Instances of this class are frequently used for introspection purposes + like: + + - `fields` returns a tuple of them. + - Validators get them passed as the first argument. + - The :ref:`field transformer ` hook receives a list of + them. + - The ``alias`` property exposes the __init__ parameter name of the field, + with any overrides and default private-attribute handling applied. + + + .. versionadded:: 20.1.0 *inherited* + .. versionadded:: 20.1.0 *on_setattr* + .. versionchanged:: 20.2.0 *inherited* is not taken into account for + equality checks and hashing anymore. + .. versionadded:: 21.1.0 *eq_key* and *order_key* + .. versionadded:: 22.2.0 *alias* + .. versionadded:: 26.1.0 *alias_is_default* + + For the full version history of the fields, see `attr.ib`. + """ + + # These slots must NOT be reordered because we use them later for + # instantiation. + __slots__ = ( # noqa: RUF023 + "name", + "default", + "validator", + "repr", + "eq", + "eq_key", + "order", + "order_key", + "hash", + "init", + "metadata", + "type", + "converter", + "kw_only", + "inherited", + "on_setattr", + "alias", + "alias_is_default", + ) + + def __init__( + self, + name, + default, + validator, + repr, + cmp, # XXX: unused, remove along with other cmp code. + hash, + init, + inherited, + metadata=None, + type=None, + converter=None, + kw_only=False, + eq=None, + eq_key=None, + order=None, + order_key=None, + on_setattr=None, + alias=None, + alias_is_default=None, + ): + eq, eq_key, order, order_key = _determine_attrib_eq_order( + cmp, eq_key or eq, order_key or order, True + ) + + # Cache this descriptor here to speed things up later. + bound_setattr = _OBJ_SETATTR.__get__(self) + + # Despite the big red warning, people *do* instantiate `Attribute` + # themselves. + bound_setattr("name", name) + bound_setattr("default", default) + bound_setattr("validator", validator) + bound_setattr("repr", repr) + bound_setattr("eq", eq) + bound_setattr("eq_key", eq_key) + bound_setattr("order", order) + bound_setattr("order_key", order_key) + bound_setattr("hash", hash) + bound_setattr("init", init) + bound_setattr("converter", converter) + bound_setattr( + "metadata", + ( + types.MappingProxyType(dict(metadata)) # Shallow copy + if metadata + else _EMPTY_METADATA_SINGLETON + ), + ) + bound_setattr("type", type) + bound_setattr("kw_only", kw_only) + bound_setattr("inherited", inherited) + bound_setattr("on_setattr", on_setattr) + bound_setattr("alias", alias) + bound_setattr( + "alias_is_default", + alias is None if alias_is_default is None else alias_is_default, + ) + + def __setattr__(self, name, value): + raise FrozenInstanceError + + @classmethod + def from_counting_attr( + cls, name: str, ca: _CountingAttr, kw_only: bool, type=None + ): + # The 'kw_only' argument is the class-level setting, and is used if the + # attribute itself does not explicitly set 'kw_only'. + # type holds the annotated value. deal with conflicts: + if type is None: + type = ca.type + elif ca.type is not None: + msg = f"Type annotation and type argument cannot both be present for '{name}'." + raise ValueError(msg) + return cls( + name, + ca._default, + ca._validator, + ca.repr, + None, + ca.hash, + ca.init, + False, + ca.metadata, + type, + ca.converter, + kw_only if ca.kw_only is None else ca.kw_only, + ca.eq, + ca.eq_key, + ca.order, + ca.order_key, + ca.on_setattr, + ca.alias, + ca.alias is None, + ) + + # Don't use attrs.evolve since fields(Attribute) doesn't work + def evolve(self, **changes): + """ + Copy *self* and apply *changes*. + + This works similarly to `attrs.evolve` but that function does not work + with :class:`attrs.Attribute`. + + It is mainly meant to be used for `transform-fields`. + + .. versionadded:: 20.3.0 + """ + new = copy.copy(self) + + new._setattrs(changes.items()) + + if "alias" in changes and "alias_is_default" not in changes: + # Explicit alias provided -- no longer the default. + _OBJ_SETATTR.__get__(new)("alias_is_default", False) + elif ( + "name" in changes + and "alias" not in changes + # Don't auto-generate alias if the user picked picked the old one. + and self.alias_is_default + ): + # Name changed, alias was auto-generated -- update it. + _OBJ_SETATTR.__get__(new)( + "alias", _default_init_alias_for(new.name) + ) + + return new + + # Don't use _add_pickle since fields(Attribute) doesn't work + def __getstate__(self): + """ + Play nice with pickle. + """ + return tuple( + getattr(self, name) if name != "metadata" else dict(self.metadata) + for name in self.__slots__ + ) + + def __setstate__(self, state): + """ + Play nice with pickle. + """ + if len(state) < len(self.__slots__): + # Pre-26.1.0 pickle without alias_is_default -- infer it + # heuristically. + state_dict = dict(zip(self.__slots__, state)) + alias_is_default = state_dict.get( + "alias" + ) is None or state_dict.get("alias") == _default_init_alias_for( + state_dict["name"] + ) + state = (*state, alias_is_default) + + self._setattrs(zip(self.__slots__, state)) + + def _setattrs(self, name_values_pairs): + bound_setattr = _OBJ_SETATTR.__get__(self) + for name, value in name_values_pairs: + if name != "metadata": + bound_setattr(name, value) + else: + bound_setattr( + name, + ( + types.MappingProxyType(dict(value)) + if value + else _EMPTY_METADATA_SINGLETON + ), + ) + + +_a = [ + Attribute( + name=name, + default=NOTHING, + validator=None, + repr=(name != "alias_is_default"), + cmp=None, + eq=True, + order=False, + hash=(name != "metadata"), + init=True, + inherited=False, + alias=_default_init_alias_for(name), + ) + for name in Attribute.__slots__ +] + +Attribute = _add_hash( + _add_eq( + _add_repr(Attribute, attrs=_a), + attrs=[a for a in _a if a.name != "inherited"], + ), + attrs=[a for a in _a if a.hash and a.name != "inherited"], +) + + +class _CountingAttr: + """ + Intermediate representation of attributes that uses a counter to preserve + the order in which the attributes have been defined. + + *Internal* data structure of the attrs library. Running into is most + likely the result of a bug like a forgotten `@attr.s` decorator. + """ + + __slots__ = ( + "_default", + "_validator", + "alias", + "converter", + "counter", + "eq", + "eq_key", + "hash", + "init", + "kw_only", + "metadata", + "on_setattr", + "order", + "order_key", + "repr", + "type", + ) + __attrs_attrs__ = ( + *tuple( + Attribute( + name=name, + alias=_default_init_alias_for(name), + default=NOTHING, + validator=None, + repr=True, + cmp=None, + hash=True, + init=True, + kw_only=False, + eq=True, + eq_key=None, + order=False, + order_key=None, + inherited=False, + on_setattr=None, + ) + for name in ( + "counter", + "_default", + "repr", + "eq", + "order", + "hash", + "init", + "on_setattr", + "alias", + ) + ), + Attribute( + name="metadata", + alias="metadata", + default=None, + validator=None, + repr=True, + cmp=None, + hash=False, + init=True, + kw_only=False, + eq=True, + eq_key=None, + order=False, + order_key=None, + inherited=False, + on_setattr=None, + ), + ) + cls_counter = 0 + + def __init__( + self, + default, + validator, + repr, + cmp, + hash, + init, + converter, + metadata, + type, + kw_only, + eq, + eq_key, + order, + order_key, + on_setattr, + alias, + ): + _CountingAttr.cls_counter += 1 + self.counter = _CountingAttr.cls_counter + self._default = default + self._validator = validator + self.converter = converter + self.repr = repr + self.eq = eq + self.eq_key = eq_key + self.order = order + self.order_key = order_key + self.hash = hash + self.init = init + self.metadata = metadata + self.type = type + self.kw_only = kw_only + self.on_setattr = on_setattr + self.alias = alias + + def validator(self, meth): + """ + Decorator that adds *meth* to the list of validators. + + Returns *meth* unchanged. + + .. versionadded:: 17.1.0 + """ + if self._validator is None: + self._validator = meth + else: + self._validator = and_(self._validator, meth) + return meth + + def default(self, meth): + """ + Decorator that allows to set the default for an attribute. + + Returns *meth* unchanged. + + Raises: + DefaultAlreadySetError: If default has been set before. + + .. versionadded:: 17.1.0 + """ + if self._default is not NOTHING: + raise DefaultAlreadySetError + + self._default = Factory(meth, takes_self=True) + + return meth + + +_CountingAttr = _add_eq(_add_repr(_CountingAttr)) + + +class ClassProps: + """ + Effective class properties as derived from parameters to `attr.s()` or + `define()` decorators. + + This is the same data structure that *attrs* uses internally to decide how + to construct the final class. + + Warning: + + This feature is currently **experimental** and is not covered by our + strict backwards-compatibility guarantees. + + + Attributes: + is_exception (bool): + Whether the class is treated as an exception class. + + is_slotted (bool): + Whether the class is `slotted `. + + has_weakref_slot (bool): + Whether the class has a slot for weak references. + + is_frozen (bool): + Whether the class is frozen. + + kw_only (KeywordOnly): + Whether / how the class enforces keyword-only arguments on the + ``__init__`` method. + + collected_fields_by_mro (bool): + Whether the class fields were collected by method resolution order. + That is, correctly but unlike `dataclasses`. + + added_init (bool): + Whether the class has an *attrs*-generated ``__init__`` method. + + added_repr (bool): + Whether the class has an *attrs*-generated ``__repr__`` method. + + added_eq (bool): + Whether the class has *attrs*-generated equality methods. + + added_ordering (bool): + Whether the class has *attrs*-generated ordering methods. + + hashability (Hashability): How `hashable ` the class is. + + added_match_args (bool): + Whether the class supports positional `match ` over its + fields. + + added_str (bool): + Whether the class has an *attrs*-generated ``__str__`` method. + + added_pickling (bool): + Whether the class has *attrs*-generated ``__getstate__`` and + ``__setstate__`` methods for `pickle`. + + on_setattr_hook (Callable[[Any, Attribute[Any], Any], Any] | None): + The class's ``__setattr__`` hook. + + field_transformer (Callable[[Attribute[Any]], Attribute[Any]] | None): + The class's `field transformers `. + + .. versionadded:: 25.4.0 + """ + + class Hashability(enum.Enum): + """ + The hashability of a class. + + .. versionadded:: 25.4.0 + """ + + HASHABLE = "hashable" + """Write a ``__hash__``.""" + HASHABLE_CACHED = "hashable_cache" + """Write a ``__hash__`` and cache the hash.""" + UNHASHABLE = "unhashable" + """Set ``__hash__`` to ``None``.""" + LEAVE_ALONE = "leave_alone" + """Don't touch ``__hash__``.""" + + class KeywordOnly(enum.Enum): + """ + How attributes should be treated regarding keyword-only parameters. + + .. versionadded:: 25.4.0 + """ + + NO = "no" + """Attributes are not keyword-only.""" + YES = "yes" + """Attributes in current class without kw_only=False are keyword-only.""" + FORCE = "force" + """All attributes are keyword-only.""" + + __slots__ = ( # noqa: RUF023 -- order matters for __init__ + "is_exception", + "is_slotted", + "has_weakref_slot", + "is_frozen", + "kw_only", + "collected_fields_by_mro", + "added_init", + "added_repr", + "added_eq", + "added_ordering", + "hashability", + "added_match_args", + "added_str", + "added_pickling", + "on_setattr_hook", + "field_transformer", + ) + + def __init__( + self, + is_exception, + is_slotted, + has_weakref_slot, + is_frozen, + kw_only, + collected_fields_by_mro, + added_init, + added_repr, + added_eq, + added_ordering, + hashability, + added_match_args, + added_str, + added_pickling, + on_setattr_hook, + field_transformer, + ): + self.is_exception = is_exception + self.is_slotted = is_slotted + self.has_weakref_slot = has_weakref_slot + self.is_frozen = is_frozen + self.kw_only = kw_only + self.collected_fields_by_mro = collected_fields_by_mro + self.added_init = added_init + self.added_repr = added_repr + self.added_eq = added_eq + self.added_ordering = added_ordering + self.hashability = hashability + self.added_match_args = added_match_args + self.added_str = added_str + self.added_pickling = added_pickling + self.on_setattr_hook = on_setattr_hook + self.field_transformer = field_transformer + + @property + def is_hashable(self): + return ( + self.hashability is ClassProps.Hashability.HASHABLE + or self.hashability is ClassProps.Hashability.HASHABLE_CACHED + ) + + +_cas = [ + Attribute( + name=name, + default=NOTHING, + validator=None, + repr=True, + cmp=None, + eq=True, + order=False, + hash=True, + init=True, + inherited=False, + alias=_default_init_alias_for(name), + ) + for name in ClassProps.__slots__ +] + +ClassProps = _add_eq(_add_repr(ClassProps, attrs=_cas), attrs=_cas) + + +class Factory: + """ + Stores a factory callable. + + If passed as the default value to `attrs.field`, the factory is used to + generate a new value. + + Args: + factory (typing.Callable): + A callable that takes either none or exactly one mandatory + positional argument depending on *takes_self*. + + takes_self (bool): + Pass the partially initialized instance that is being initialized + as a positional argument. + + .. versionadded:: 17.1.0 *takes_self* + """ + + __slots__ = ("factory", "takes_self") + + def __init__(self, factory, takes_self=False): + self.factory = factory + self.takes_self = takes_self + + def __getstate__(self): + """ + Play nice with pickle. + """ + return tuple(getattr(self, name) for name in self.__slots__) + + def __setstate__(self, state): + """ + Play nice with pickle. + """ + for name, value in zip(self.__slots__, state): + setattr(self, name, value) + + +_f = [ + Attribute( + name=name, + default=NOTHING, + validator=None, + repr=True, + cmp=None, + eq=True, + order=False, + hash=True, + init=True, + inherited=False, + ) + for name in Factory.__slots__ +] + +Factory = _add_hash(_add_eq(_add_repr(Factory, attrs=_f), attrs=_f), attrs=_f) + + +class Converter: + """ + Stores a converter callable. + + Allows for the wrapped converter to take additional arguments. The + arguments are passed in the order they are documented. + + Args: + converter (Callable): A callable that converts the passed value. + + takes_self (bool): + Pass the partially initialized instance that is being initialized + as a positional argument. (default: `False`) + + takes_field (bool): + Pass the field definition (an :class:`Attribute`) into the + converter as a positional argument. (default: `False`) + + .. versionadded:: 24.1.0 + """ + + __slots__ = ( + "__call__", + "_first_param_type", + "_global_name", + "converter", + "takes_field", + "takes_self", + ) + + def __init__(self, converter, *, takes_self=False, takes_field=False): + self.converter = converter + self.takes_self = takes_self + self.takes_field = takes_field + + ex = _AnnotationExtractor(converter) + self._first_param_type = ex.get_first_param_type() + + if not (self.takes_self or self.takes_field): + self.__call__ = lambda value, _, __: self.converter(value) + elif self.takes_self and not self.takes_field: + self.__call__ = lambda value, instance, __: self.converter( + value, instance + ) + elif not self.takes_self and self.takes_field: + self.__call__ = lambda value, __, field: self.converter( + value, field + ) + else: + self.__call__ = self.converter + + rt = ex.get_return_type() + if rt is not None: + self.__call__.__annotations__["return"] = rt + + @staticmethod + def _get_global_name(attr_name: str) -> str: + """ + Return the name that a converter for an attribute name *attr_name* + would have. + """ + return f"__attr_converter_{attr_name}" + + def _fmt_converter_call(self, attr_name: str, value_var: str) -> str: + """ + Return a string that calls the converter for an attribute name + *attr_name* and the value in variable named *value_var* according to + `self.takes_self` and `self.takes_field`. + """ + if not (self.takes_self or self.takes_field): + return f"{self._get_global_name(attr_name)}({value_var})" + + if self.takes_self and self.takes_field: + return f"{self._get_global_name(attr_name)}({value_var}, self, attr_dict['{attr_name}'])" + + if self.takes_self: + return f"{self._get_global_name(attr_name)}({value_var}, self)" + + return f"{self._get_global_name(attr_name)}({value_var}, attr_dict['{attr_name}'])" + + def __getstate__(self): + """ + Return a dict containing only converter and takes_self -- the rest gets + computed when loading. + """ + return { + "converter": self.converter, + "takes_self": self.takes_self, + "takes_field": self.takes_field, + } + + def __setstate__(self, state): + """ + Load instance from state. + """ + self.__init__(**state) + + +_f = [ + Attribute( + name=name, + default=NOTHING, + validator=None, + repr=True, + cmp=None, + eq=True, + order=False, + hash=True, + init=True, + inherited=False, + ) + for name in ("converter", "takes_self", "takes_field") +] + +Converter = _add_hash( + _add_eq(_add_repr(Converter, attrs=_f), attrs=_f), attrs=_f +) + + +def make_class( + name, attrs, bases=(object,), class_body=None, **attributes_arguments +): + r""" + A quick way to create a new class called *name* with *attrs*. + + .. note:: + + ``make_class()`` is a thin wrapper around `attr.s`, not `attrs.define` + which means that it doesn't come with some of the improved defaults. + + For example, if you want the same ``on_setattr`` behavior as in + `attrs.define`, you have to pass the hooks yourself: ``make_class(..., + on_setattr=setters.pipe(setters.convert, setters.validate)`` + + .. warning:: + + It is *your* duty to ensure that the class name and the attribute names + are valid identifiers. ``make_class()`` will *not* validate them for + you. + + Args: + name (str): The name for the new class. + + attrs (list | dict): + A list of names or a dictionary of mappings of names to `attr.ib`\ + s / `attrs.field`\ s. + + The order is deduced from the order of the names or attributes + inside *attrs*. Otherwise the order of the definition of the + attributes is used. + + bases (tuple[type, ...]): Classes that the new class will subclass. + + class_body (dict): + An optional dictionary of class attributes for the new class. + + attributes_arguments: Passed unmodified to `attr.s`. + + Returns: + type: A new class with *attrs*. + + .. versionadded:: 17.1.0 *bases* + .. versionchanged:: 18.1.0 If *attrs* is ordered, the order is retained. + .. versionchanged:: 23.2.0 *class_body* + .. versionchanged:: 25.2.0 Class names can now be unicode. + """ + # Class identifiers are converted into the normal form NFKC while parsing + name = unicodedata.normalize("NFKC", name) + + if isinstance(attrs, dict): + cls_dict = attrs + elif isinstance(attrs, (list, tuple)): + cls_dict = {a: attrib() for a in attrs} + else: + msg = "attrs argument must be a dict or a list." + raise TypeError(msg) + + pre_init = cls_dict.pop("__attrs_pre_init__", None) + post_init = cls_dict.pop("__attrs_post_init__", None) + user_init = cls_dict.pop("__init__", None) + + body = {} + if class_body is not None: + body.update(class_body) + if pre_init is not None: + body["__attrs_pre_init__"] = pre_init + if post_init is not None: + body["__attrs_post_init__"] = post_init + if user_init is not None: + body["__init__"] = user_init + + type_ = types.new_class(name, bases, {}, lambda ns: ns.update(body)) + + # For pickling to work, the __module__ variable needs to be set to the + # frame where the class is created. Bypass this step in environments where + # sys._getframe is not defined (Jython for example) or sys._getframe is not + # defined for arguments greater than 0 (IronPython). + with contextlib.suppress(AttributeError, ValueError): + type_.__module__ = sys._getframe(1).f_globals.get( + "__name__", "__main__" + ) + + # We do it here for proper warnings with meaningful stacklevel. + cmp = attributes_arguments.pop("cmp", None) + ( + attributes_arguments["eq"], + attributes_arguments["order"], + ) = _determine_attrs_eq_order( + cmp, + attributes_arguments.get("eq"), + attributes_arguments.get("order"), + True, + ) + + cls = _attrs(these=cls_dict, **attributes_arguments)(type_) + # Only add type annotations now or "_attrs()" will complain: + cls.__annotations__ = { + k: v.type for k, v in cls_dict.items() if v.type is not None + } + return cls + + +# These are required by within this module so we define them here and merely +# import into .validators / .converters. + + +@attrs(slots=True, unsafe_hash=True) +class _AndValidator: + """ + Compose many validators to a single one. + """ + + _validators = attrib() + + def __call__(self, inst, attr, value): + for v in self._validators: + v(inst, attr, value) + + +def and_(*validators): + """ + A validator that composes multiple validators into one. + + When called on a value, it runs all wrapped validators. + + Args: + validators (~collections.abc.Iterable[typing.Callable]): + Arbitrary number of validators. + + .. versionadded:: 17.1.0 + """ + vals = [] + for validator in validators: + vals.extend( + validator._validators + if isinstance(validator, _AndValidator) + else [validator] + ) + + return _AndValidator(tuple(vals)) + + +def pipe(*converters): + """ + A converter that composes multiple converters into one. + + When called on a value, it runs all wrapped converters, returning the + *last* value. + + Type annotations will be inferred from the wrapped converters', if they + have any. + + converters (~collections.abc.Iterable[typing.Callable]): + Arbitrary number of converters. + + .. versionadded:: 20.1.0 + """ + + return_instance = any(isinstance(c, Converter) for c in converters) + + if return_instance: + + def pipe_converter(val, inst, field): + for c in converters: + val = ( + c(val, inst, field) if isinstance(c, Converter) else c(val) + ) + + return val + + else: + + def pipe_converter(val): + for c in converters: + val = c(val) + + return val + + if not converters: + # If the converter list is empty, pipe_converter is the identity. + A = TypeVar("A") + pipe_converter.__annotations__.update({"val": A, "return": A}) + else: + # Get parameter type from first converter. + t = _AnnotationExtractor(converters[0]).get_first_param_type() + if t: + pipe_converter.__annotations__["val"] = t + + last = converters[-1] + if not PY_3_11_PLUS and isinstance(last, Converter): + last = last.__call__ + + # Get return type from last converter. + rt = _AnnotationExtractor(last).get_return_type() + if rt: + pipe_converter.__annotations__["return"] = rt + + if return_instance: + return Converter(pipe_converter, takes_self=True, takes_field=True) + return pipe_converter diff --git a/venv/lib/python3.9/site-packages/attr/_next_gen.py b/venv/lib/python3.9/site-packages/attr/_next_gen.py new file mode 100644 index 0000000..4ccd0da --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_next_gen.py @@ -0,0 +1,674 @@ +# SPDX-License-Identifier: MIT + +""" +These are keyword-only APIs that call `attr.s` and `attr.ib` with different +default values. +""" + +from functools import partial + +from . import setters +from ._funcs import asdict as _asdict +from ._funcs import astuple as _astuple +from ._make import ( + _DEFAULT_ON_SETATTR, + NOTHING, + _frozen_setattrs, + attrib, + attrs, +) +from .exceptions import NotAnAttrsClassError, UnannotatedAttributeError + + +def define( + maybe_cls=None, + *, + these=None, + repr=None, + unsafe_hash=None, + hash=None, + init=None, + slots=True, + frozen=False, + weakref_slot=True, + str=False, + auto_attribs=None, + kw_only=False, + cache_hash=False, + auto_exc=True, + eq=None, + order=False, + auto_detect=True, + getstate_setstate=None, + on_setattr=None, + field_transformer=None, + match_args=True, + force_kw_only=False, +): + r""" + A class decorator that adds :term:`dunder methods` according to + :term:`fields ` specified using :doc:`type annotations `, + `field()` calls, or the *these* argument. + + Since *attrs* patches or replaces an existing class, you cannot use + `object.__init_subclass__` with *attrs* classes, because it runs too early. + As a replacement, you can define ``__attrs_init_subclass__`` on your class. + It will be called by *attrs* classes that subclass it after they're + created. See also :ref:`init-subclass`. + + Args: + slots (bool): + Create a :term:`slotted class ` that's more + memory-efficient. Slotted classes are generally superior to the + default dict classes, but have some gotchas you should know about, + so we encourage you to read the :term:`glossary entry `. + + auto_detect (bool): + Instead of setting the *init*, *repr*, *eq*, and *hash* arguments + explicitly, assume they are set to True **unless any** of the + involved methods for one of the arguments is implemented in the + *current* class (meaning, it is *not* inherited from some base + class). + + So, for example by implementing ``__eq__`` on a class yourself, + *attrs* will deduce ``eq=False`` and will create *neither* + ``__eq__`` *nor* ``__ne__`` (but Python classes come with a + sensible ``__ne__`` by default, so it *should* be enough to only + implement ``__eq__`` in most cases). + + Passing :data:`True` or :data:`False` to *init*, *repr*, *eq*, or *hash* + overrides whatever *auto_detect* would determine. + + auto_exc (bool): + If the class subclasses `BaseException` (which implicitly includes + any subclass of any exception), the following happens to behave + like a well-behaved Python exception class: + + - the values for *eq*, *order*, and *hash* are ignored and the + instances compare and hash by the instance's ids [#]_ , + - all attributes that are either passed into ``__init__`` or have a + default value are additionally available as a tuple in the + ``args`` attribute, + - the value of *str* is ignored leaving ``__str__`` to base + classes. + + .. [#] + Note that *attrs* will *not* remove existing implementations of + ``__hash__`` or the equality methods. It just won't add own + ones. + + on_setattr (~typing.Callable | list[~typing.Callable] | None | ~typing.Literal[attrs.setters.NO_OP]): + A callable that is run whenever the user attempts to set an + attribute (either by assignment like ``i.x = 42`` or by using + `setattr` like ``setattr(i, "x", 42)``). It receives the same + arguments as validators: the instance, the attribute that is being + modified, and the new value. + + If no exception is raised, the attribute is set to the return value + of the callable. + + If a list of callables is passed, they're automatically wrapped in + an `attrs.setters.pipe`. + + If left None, the default behavior is to run converters and + validators whenever an attribute is set. + + init (bool): + Create a ``__init__`` method that initializes the *attrs* + attributes. Leading underscores are stripped for the argument name, + unless an alias is set on the attribute. + + .. seealso:: + `init` shows advanced ways to customize the generated + ``__init__`` method, including executing code before and after. + + repr(bool): + Create a ``__repr__`` method with a human readable representation + of *attrs* attributes. + + str (bool): + Create a ``__str__`` method that is identical to ``__repr__``. This + is usually not necessary except for `Exception`\ s. + + eq (bool | None): + If True or None (default), add ``__eq__`` and ``__ne__`` methods + that check two instances for equality. + + .. seealso:: + `comparison` describes how to customize the comparison behavior + going as far comparing NumPy arrays. + + order (bool | None): + If True, add ``__lt__``, ``__le__``, ``__gt__``, and ``__ge__`` + methods that behave like *eq* above and allow instances to be + ordered. + + They compare the instances as if they were tuples of their *attrs* + attributes if and only if the types of both classes are + *identical*. + + If `None` mirror value of *eq*. + + .. seealso:: `comparison` + + unsafe_hash (bool | None): + If None (default), the ``__hash__`` method is generated according + how *eq* and *frozen* are set. + + 1. If *both* are True, *attrs* will generate a ``__hash__`` for + you. + 2. If *eq* is True and *frozen* is False, ``__hash__`` will be set + to None, marking it unhashable (which it is). + 3. If *eq* is False, ``__hash__`` will be left untouched meaning + the ``__hash__`` method of the base class will be used. If the + base class is `object`, this means it will fall back to id-based + hashing. + + Although not recommended, you can decide for yourself and force + *attrs* to create one (for example, if the class is immutable even + though you didn't freeze it programmatically) by passing True or + not. Both of these cases are rather special and should be used + carefully. + + .. seealso:: + + - Our documentation on `hashing`, + - Python's documentation on `object.__hash__`, + - and the `GitHub issue that led to the default \ behavior + `_ for more + details. + + hash (bool | None): + Deprecated alias for *unsafe_hash*. *unsafe_hash* takes precedence. + + cache_hash (bool): + Ensure that the object's hash code is computed only once and stored + on the object. If this is set to True, hashing must be either + explicitly or implicitly enabled for this class. If the hash code + is cached, avoid any reassignments of fields involved in hash code + computation or mutations of the objects those fields point to after + object creation. If such changes occur, the behavior of the + object's hash code is undefined. + + frozen (bool): + Make instances immutable after initialization. If someone attempts + to modify a frozen instance, `attrs.exceptions.FrozenInstanceError` + is raised. + + .. note:: + + 1. This is achieved by installing a custom ``__setattr__`` + method on your class, so you can't implement your own. + + 2. True immutability is impossible in Python. + + 3. This *does* have a minor a runtime performance `impact + ` when initializing new instances. In other + words: ``__init__`` is slightly slower with ``frozen=True``. + + 4. If a class is frozen, you cannot modify ``self`` in + ``__attrs_post_init__`` or a self-written ``__init__``. You + can circumvent that limitation by using + ``object.__setattr__(self, "attribute_name", value)``. + + 5. Subclasses of a frozen class are frozen too. + + kw_only (bool): + Make attributes keyword-only in the generated ``__init__`` (if + *init* is False, this parameter is ignored). Attributes that + explicitly set ``kw_only=False`` are not affected; base class + attributes are also not affected. + + Also see *force_kw_only*. + + weakref_slot (bool): + Make instances weak-referenceable. This has no effect unless + *slots* is True. + + field_transformer (~typing.Callable | None): + A function that is called with the original class object and all + fields right before *attrs* finalizes the class. You can use this, + for example, to automatically add converters or validators to + fields based on their types. + + .. seealso:: `transform-fields` + + match_args (bool): + If True (default), set ``__match_args__`` on the class to support + :pep:`634` (*Structural Pattern Matching*). It is a tuple of all + non-keyword-only ``__init__`` parameter names on Python 3.10 and + later. Ignored on older Python versions. + + collect_by_mro (bool): + If True, *attrs* collects attributes from base classes correctly + according to the `method resolution order + `_. If False, *attrs* + will mimic the (wrong) behavior of `dataclasses` and :pep:`681`. + + See also `issue #428 + `_. + + force_kw_only (bool): + A back-compat flag for restoring pre-25.4.0 behavior. If True and + ``kw_only=True``, all attributes are made keyword-only, including + base class attributes, and those set to ``kw_only=False`` at the + attribute level. Defaults to False. + + See also `issue #980 + `_. + + getstate_setstate (bool | None): + .. note:: + + This is usually only interesting for slotted classes and you + should probably just set *auto_detect* to True. + + If True, ``__getstate__`` and ``__setstate__`` are generated and + attached to the class. This is necessary for slotted classes to be + pickleable. If left None, it's True by default for slotted classes + and False for dict classes. + + If *auto_detect* is True, and *getstate_setstate* is left None, and + **either** ``__getstate__`` or ``__setstate__`` is detected + directly on the class (meaning: not inherited), it is set to False + (this is usually what you want). + + auto_attribs (bool | None): + If True, look at type annotations to determine which attributes to + use, like `dataclasses`. If False, it will only look for explicit + :func:`field` class attributes, like classic *attrs*. + + If left None, it will guess: + + 1. If any attributes are annotated and no unannotated + `attrs.field`\ s are found, it assumes *auto_attribs=True*. + 2. Otherwise it assumes *auto_attribs=False* and tries to collect + `attrs.field`\ s. + + If *attrs* decides to look at type annotations, **all** fields + **must** be annotated. If *attrs* encounters a field that is set to + a :func:`field` / `attr.ib` but lacks a type annotation, an + `attrs.exceptions.UnannotatedAttributeError` is raised. Use + ``field_name: typing.Any = field(...)`` if you don't want to set a + type. + + .. warning:: + + For features that use the attribute name to create decorators + (for example, :ref:`validators `), you still *must* + assign :func:`field` / `attr.ib` to them. Otherwise Python will + either not find the name or try to use the default value to + call, for example, ``validator`` on it. + + Attributes annotated as `typing.ClassVar`, and attributes that are + neither annotated nor set to an `field()` are **ignored**. + + these (dict[str, object]): + A dictionary of name to the (private) return value of `field()` + mappings. This is useful to avoid the definition of your attributes + within the class body because you can't (for example, if you want + to add ``__repr__`` methods to Django models) or don't want to. + + If *these* is not `None`, *attrs* will *not* search the class body + for attributes and will *not* remove any attributes from it. + + The order is deduced from the order of the attributes inside + *these*. + + Arguably, this is a rather obscure feature. + + .. versionadded:: 20.1.0 + .. versionchanged:: 21.3.0 Converters are also run ``on_setattr``. + .. versionadded:: 22.2.0 + *unsafe_hash* as an alias for *hash* (for :pep:`681` compliance). + .. versionchanged:: 24.1.0 + Instances are not compared as tuples of attributes anymore, but using a + big ``and`` condition. This is faster and has more correct behavior for + uncomparable values like `math.nan`. + .. versionadded:: 24.1.0 + If a class has an *inherited* classmethod called + ``__attrs_init_subclass__``, it is executed after the class is created. + .. deprecated:: 24.1.0 *hash* is deprecated in favor of *unsafe_hash*. + .. versionadded:: 24.3.0 + Unless already present, a ``__replace__`` method is automatically + created for `copy.replace` (Python 3.13+ only). + .. versionchanged:: 25.4.0 + *kw_only* now only applies to attributes defined in the current class, + and respects attribute-level ``kw_only=False`` settings. + .. versionadded:: 25.4.0 + Added *force_kw_only* to go back to the previous *kw_only* behavior. + + .. note:: + + The main differences to the classic `attr.s` are: + + - Automatically detect whether or not *auto_attribs* should be `True` + (c.f. *auto_attribs* parameter). + - Converters and validators run when attributes are set by default -- + if *frozen* is `False`. + - *slots=True* + + Usually, this has only upsides and few visible effects in everyday + programming. But it *can* lead to some surprising behaviors, so + please make sure to read :term:`slotted classes`. + + - *auto_exc=True* + - *auto_detect=True* + - *order=False* + - *force_kw_only=False* + - Some options that were only relevant on Python 2 or were kept around + for backwards-compatibility have been removed. + + """ + + def do_it(cls, auto_attribs): + return attrs( + maybe_cls=cls, + these=these, + repr=repr, + hash=hash, + unsafe_hash=unsafe_hash, + init=init, + slots=slots, + frozen=frozen, + weakref_slot=weakref_slot, + str=str, + auto_attribs=auto_attribs, + kw_only=kw_only, + cache_hash=cache_hash, + auto_exc=auto_exc, + eq=eq, + order=order, + auto_detect=auto_detect, + collect_by_mro=True, + getstate_setstate=getstate_setstate, + on_setattr=on_setattr, + field_transformer=field_transformer, + match_args=match_args, + force_kw_only=force_kw_only, + ) + + def wrap(cls): + """ + Making this a wrapper ensures this code runs during class creation. + + We also ensure that frozen-ness of classes is inherited. + """ + nonlocal frozen, on_setattr + + had_on_setattr = on_setattr not in (None, setters.NO_OP) + + # By default, mutable classes convert & validate on setattr. + if frozen is False and on_setattr is None: + on_setattr = _DEFAULT_ON_SETATTR + + # However, if we subclass a frozen class, we inherit the immutability + # and disable on_setattr. + for base_cls in cls.__bases__: + if base_cls.__setattr__ is _frozen_setattrs: + if had_on_setattr: + msg = "Frozen classes can't use on_setattr (frozen-ness was inherited)." + raise ValueError(msg) + + on_setattr = setters.NO_OP + break + + if auto_attribs is not None: + return do_it(cls, auto_attribs) + + try: + return do_it(cls, True) + except UnannotatedAttributeError: + return do_it(cls, False) + + # maybe_cls's type depends on the usage of the decorator. It's a class + # if it's used as `@attrs` but `None` if used as `@attrs()`. + if maybe_cls is None: + return wrap + + return wrap(maybe_cls) + + +mutable = define +frozen = partial(define, frozen=True, on_setattr=None) + + +def field( + *, + default=NOTHING, + validator=None, + repr=True, + hash=None, + init=True, + metadata=None, + type=None, + converter=None, + factory=None, + kw_only=None, + eq=None, + order=None, + on_setattr=None, + alias=None, +): + """ + Create a new :term:`field` / :term:`attribute` on a class. + + .. warning:: + + Does **nothing** unless the class is also decorated with + `attrs.define` (or similar)! + + Args: + default: + A value that is used if an *attrs*-generated ``__init__`` is used + and no value is passed while instantiating or the attribute is + excluded using ``init=False``. + + If the value is an instance of `attrs.Factory`, its callable will + be used to construct a new value (useful for mutable data types + like lists or dicts). + + If a default is not set (or set manually to `attrs.NOTHING`), a + value *must* be supplied when instantiating; otherwise a + `TypeError` will be raised. + + .. seealso:: `defaults` + + factory (~typing.Callable): + Syntactic sugar for ``default=attr.Factory(factory)``. + + validator (~typing.Callable | list[~typing.Callable]): + Callable that is called by *attrs*-generated ``__init__`` methods + after the instance has been initialized. They receive the + initialized instance, the :func:`~attrs.Attribute`, and the passed + value. + + The return value is *not* inspected so the validator has to throw + an exception itself. + + If a `list` is passed, its items are treated as validators and must + all pass. + + Validators can be globally disabled and re-enabled using + `attrs.validators.get_disabled` / `attrs.validators.set_disabled`. + + The validator can also be set using decorator notation as shown + below. + + .. seealso:: :ref:`validators` + + repr (bool | ~typing.Callable): + Include this attribute in the generated ``__repr__`` method. If + True, include the attribute; if False, omit it. By default, the + built-in ``repr()`` function is used. To override how the attribute + value is formatted, pass a ``callable`` that takes a single value + and returns a string. Note that the resulting string is used as-is, + which means it will be used directly *instead* of calling + ``repr()`` (the default). + + eq (bool | ~typing.Callable): + If True (default), include this attribute in the generated + ``__eq__`` and ``__ne__`` methods that check two instances for + equality. To override how the attribute value is compared, pass a + callable that takes a single value and returns the value to be + compared. + + .. seealso:: `comparison` + + order (bool | ~typing.Callable): + If True (default), include this attributes in the generated + ``__lt__``, ``__le__``, ``__gt__`` and ``__ge__`` methods. To + override how the attribute value is ordered, pass a callable that + takes a single value and returns the value to be ordered. + + .. seealso:: `comparison` + + hash (bool | None): + Include this attribute in the generated ``__hash__`` method. If + None (default), mirror *eq*'s value. This is the correct behavior + according the Python spec. Setting this value to anything else + than None is *discouraged*. + + .. seealso:: `hashing` + + init (bool): + Include this attribute in the generated ``__init__`` method. + + It is possible to set this to False and set a default value. In + that case this attributed is unconditionally initialized with the + specified default value or factory. + + .. seealso:: `init` + + converter (typing.Callable | Converter): + A callable that is called by *attrs*-generated ``__init__`` methods + to convert attribute's value to the desired format. + + If a vanilla callable is passed, it is given the passed-in value as + the only positional argument. It is possible to receive additional + arguments by wrapping the callable in a `Converter`. + + Either way, the returned value will be used as the new value of the + attribute. The value is converted before being passed to the + validator, if any. + + .. seealso:: :ref:`converters` + + metadata (dict | None): + An arbitrary mapping, to be used by third-party code. + + .. seealso:: `extending-metadata`. + + type (type): + The type of the attribute. Nowadays, the preferred method to + specify the type is using a variable annotation (see :pep:`526`). + This argument is provided for backwards-compatibility and for usage + with `make_class`. Regardless of the approach used, the type will + be stored on ``Attribute.type``. + + Please note that *attrs* doesn't do anything with this metadata by + itself. You can use it as part of your own code or for `static type + checking `. + + kw_only (bool | None): + Make this attribute keyword-only in the generated ``__init__`` (if + *init* is False, this parameter is ignored). If None (default), + mirror the setting from `attrs.define`. + + on_setattr (~typing.Callable | list[~typing.Callable] | None | ~typing.Literal[attrs.setters.NO_OP]): + Allows to overwrite the *on_setattr* setting from `attr.s`. If left + None, the *on_setattr* value from `attr.s` is used. Set to + `attrs.setters.NO_OP` to run **no** `setattr` hooks for this + attribute -- regardless of the setting in `define()`. + + alias (str | None): + Override this attribute's parameter name in the generated + ``__init__`` method. If left None, default to ``name`` stripped + of leading underscores. See `private-attributes`. + + .. versionadded:: 20.1.0 + .. versionchanged:: 21.1.0 + *eq*, *order*, and *cmp* also accept a custom callable + .. versionadded:: 22.2.0 *alias* + .. versionadded:: 23.1.0 + The *type* parameter has been re-added; mostly for `attrs.make_class`. + Please note that type checkers ignore this metadata. + .. versionchanged:: 25.4.0 + *kw_only* can now be None, and its default is also changed from False to + None. + + .. seealso:: + + `attr.ib` + """ + return attrib( + default=default, + validator=validator, + repr=repr, + hash=hash, + init=init, + metadata=metadata, + type=type, + converter=converter, + factory=factory, + kw_only=kw_only, + eq=eq, + order=order, + on_setattr=on_setattr, + alias=alias, + ) + + +def asdict(inst, *, recurse=True, filter=None, value_serializer=None): + """ + Same as `attr.asdict`, except that collections types are always retained + and dict is always used as *dict_factory*. + + .. versionadded:: 21.3.0 + """ + return _asdict( + inst=inst, + recurse=recurse, + filter=filter, + value_serializer=value_serializer, + retain_collection_types=True, + ) + + +def astuple(inst, *, recurse=True, filter=None): + """ + Same as `attr.astuple`, except that collections types are always retained + and `tuple` is always used as the *tuple_factory*. + + .. versionadded:: 21.3.0 + """ + return _astuple( + inst=inst, recurse=recurse, filter=filter, retain_collection_types=True + ) + + +def inspect(cls): + """ + Inspect the class and return its effective build parameters. + + Warning: + This feature is currently **experimental** and is not covered by our + strict backwards-compatibility guarantees. + + Args: + cls: The *attrs*-decorated class to inspect. + + Returns: + The effective build parameters of the class. + + Raises: + NotAnAttrsClassError: If the class is not an *attrs*-decorated class. + + .. versionadded:: 25.4.0 + """ + try: + return cls.__dict__["__attrs_props__"] + except KeyError: + msg = f"{cls!r} is not an attrs-decorated class." + raise NotAnAttrsClassError(msg) from None diff --git a/venv/lib/python3.9/site-packages/attr/_typing_compat.pyi b/venv/lib/python3.9/site-packages/attr/_typing_compat.pyi new file mode 100644 index 0000000..ca7b71e --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_typing_compat.pyi @@ -0,0 +1,15 @@ +from typing import Any, ClassVar, Protocol + +# MYPY is a special constant in mypy which works the same way as `TYPE_CHECKING`. +MYPY = False + +if MYPY: + # A protocol to be able to statically accept an attrs class. + class AttrsInstance_(Protocol): + __attrs_attrs__: ClassVar[Any] + +else: + # For type checkers without plug-in support use an empty protocol that + # will (hopefully) be combined into a union. + class AttrsInstance_(Protocol): + pass diff --git a/venv/lib/python3.9/site-packages/attr/_version_info.py b/venv/lib/python3.9/site-packages/attr/_version_info.py new file mode 100644 index 0000000..27f1888 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_version_info.py @@ -0,0 +1,89 @@ +# SPDX-License-Identifier: MIT + + +from functools import total_ordering + +from ._funcs import astuple +from ._make import attrib, attrs + + +@total_ordering +@attrs(eq=False, order=False, slots=True, frozen=True) +class VersionInfo: + """ + A version object that can be compared to tuple of length 1--4: + + >>> attr.VersionInfo(19, 1, 0, "final") <= (19, 2) + True + >>> attr.VersionInfo(19, 1, 0, "final") < (19, 1, 1) + True + >>> vi = attr.VersionInfo(19, 2, 0, "final") + >>> vi < (19, 1, 1) + False + >>> vi < (19,) + False + >>> vi == (19, 2,) + True + >>> vi == (19, 2, 1) + False + + .. versionadded:: 19.2 + """ + + year = attrib(type=int) + minor = attrib(type=int) + micro = attrib(type=int) + releaselevel = attrib(type=str) + + @classmethod + def _from_version_string(cls, s): + """ + Parse *s* and return a _VersionInfo. + """ + v = s.split(".") + if len(v) == 3: + v.append("final") + + return cls( + year=int(v[0]), minor=int(v[1]), micro=int(v[2]), releaselevel=v[3] + ) + + def _ensure_tuple(self, other): + """ + Ensure *other* is a tuple of a valid length. + + Returns a possibly transformed *other* and ourselves as a tuple of + the same length as *other*. + """ + + if self.__class__ is other.__class__: + other = astuple(other) + + if not isinstance(other, tuple): + raise NotImplementedError + + if not (1 <= len(other) <= 4): + raise NotImplementedError + + return astuple(self)[: len(other)], other + + def __eq__(self, other): + try: + us, them = self._ensure_tuple(other) + except NotImplementedError: + return NotImplemented + + return us == them + + def __lt__(self, other): + try: + us, them = self._ensure_tuple(other) + except NotImplementedError: + return NotImplemented + + # Since alphabetically "dev0" < "final" < "post1" < "post2", we don't + # have to do anything special with releaselevel for now. + return us < them + + def __hash__(self): + return hash((self.year, self.minor, self.micro, self.releaselevel)) diff --git a/venv/lib/python3.9/site-packages/attr/_version_info.pyi b/venv/lib/python3.9/site-packages/attr/_version_info.pyi new file mode 100644 index 0000000..45ced08 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/_version_info.pyi @@ -0,0 +1,9 @@ +class VersionInfo: + @property + def year(self) -> int: ... + @property + def minor(self) -> int: ... + @property + def micro(self) -> int: ... + @property + def releaselevel(self) -> str: ... diff --git a/venv/lib/python3.9/site-packages/attr/converters.py b/venv/lib/python3.9/site-packages/attr/converters.py new file mode 100644 index 0000000..0a79dee --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/converters.py @@ -0,0 +1,162 @@ +# SPDX-License-Identifier: MIT + +""" +Commonly useful converters. +""" + +import typing + +from ._compat import _AnnotationExtractor +from ._make import NOTHING, Converter, Factory, pipe + + +__all__ = [ + "default_if_none", + "optional", + "pipe", + "to_bool", +] + + +def optional(converter): + """ + A converter that allows an attribute to be optional. An optional attribute + is one which can be set to `None`. + + Type annotations will be inferred from the wrapped converter's, if it has + any. + + Args: + converter (typing.Callable): + the converter that is used for non-`None` values. + + .. versionadded:: 17.1.0 + """ + + if isinstance(converter, Converter): + + def optional_converter(val, inst, field): + if val is None: + return None + return converter(val, inst, field) + + else: + + def optional_converter(val): + if val is None: + return None + return converter(val) + + xtr = _AnnotationExtractor(converter) + + t = xtr.get_first_param_type() + if t: + optional_converter.__annotations__["val"] = typing.Optional[t] + + rt = xtr.get_return_type() + if rt: + optional_converter.__annotations__["return"] = typing.Optional[rt] + + if isinstance(converter, Converter): + return Converter(optional_converter, takes_self=True, takes_field=True) + + return optional_converter + + +def default_if_none(default=NOTHING, factory=None): + """ + A converter that allows to replace `None` values by *default* or the result + of *factory*. + + Args: + default: + Value to be used if `None` is passed. Passing an instance of + `attrs.Factory` is supported, however the ``takes_self`` option is + *not*. + + factory (typing.Callable): + A callable that takes no parameters whose result is used if `None` + is passed. + + Raises: + TypeError: If **neither** *default* or *factory* is passed. + + TypeError: If **both** *default* and *factory* are passed. + + ValueError: + If an instance of `attrs.Factory` is passed with + ``takes_self=True``. + + .. versionadded:: 18.2.0 + """ + if default is NOTHING and factory is None: + msg = "Must pass either `default` or `factory`." + raise TypeError(msg) + + if default is not NOTHING and factory is not None: + msg = "Must pass either `default` or `factory` but not both." + raise TypeError(msg) + + if factory is not None: + default = Factory(factory) + + if isinstance(default, Factory): + if default.takes_self: + msg = "`takes_self` is not supported by default_if_none." + raise ValueError(msg) + + def default_if_none_converter(val): + if val is not None: + return val + + return default.factory() + + else: + + def default_if_none_converter(val): + if val is not None: + return val + + return default + + return default_if_none_converter + + +def to_bool(val): + """ + Convert "boolean" strings (for example, from environment variables) to real + booleans. + + Values mapping to `True`: + + - ``True`` + - ``"true"`` / ``"t"`` + - ``"yes"`` / ``"y"`` + - ``"on"`` + - ``"1"`` + - ``1`` + + Values mapping to `False`: + + - ``False`` + - ``"false"`` / ``"f"`` + - ``"no"`` / ``"n"`` + - ``"off"`` + - ``"0"`` + - ``0`` + + Raises: + ValueError: For any other value. + + .. versionadded:: 21.3.0 + """ + if isinstance(val, str): + val = val.lower() + + if val in (True, "true", "t", "yes", "y", "on", "1", 1): + return True + if val in (False, "false", "f", "no", "n", "off", "0", 0): + return False + + msg = f"Cannot convert value to bool: {val!r}" + raise ValueError(msg) diff --git a/venv/lib/python3.9/site-packages/attr/converters.pyi b/venv/lib/python3.9/site-packages/attr/converters.pyi new file mode 100644 index 0000000..12bd0c4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/converters.pyi @@ -0,0 +1,19 @@ +from typing import Callable, Any, overload + +from attrs import _ConverterType, _CallableConverterType + +@overload +def pipe(*validators: _CallableConverterType) -> _CallableConverterType: ... +@overload +def pipe(*validators: _ConverterType) -> _ConverterType: ... +@overload +def optional(converter: _CallableConverterType) -> _CallableConverterType: ... +@overload +def optional(converter: _ConverterType) -> _ConverterType: ... +@overload +def default_if_none(default: Any) -> _CallableConverterType: ... +@overload +def default_if_none( + *, factory: Callable[[], Any] +) -> _CallableConverterType: ... +def to_bool(val: str | int | bool) -> bool: ... diff --git a/venv/lib/python3.9/site-packages/attr/exceptions.py b/venv/lib/python3.9/site-packages/attr/exceptions.py new file mode 100644 index 0000000..a207df4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/exceptions.py @@ -0,0 +1,95 @@ +# SPDX-License-Identifier: MIT + +from __future__ import annotations + + +class FrozenError(AttributeError): + """ + A frozen/immutable instance or attribute have been attempted to be + modified. + + It mirrors the behavior of ``namedtuples`` by using the same error message + and subclassing `AttributeError`. + + .. versionadded:: 20.1.0 + """ + + def __init__(self): + msg = "can't set attribute" + super().__init__(msg) + self.msg = msg + + +class FrozenInstanceError(FrozenError): + """ + A frozen instance has been attempted to be modified. + + .. versionadded:: 16.1.0 + """ + + +class FrozenAttributeError(FrozenError): + """ + A frozen attribute has been attempted to be modified. + + .. versionadded:: 20.1.0 + """ + + +class AttrsAttributeNotFoundError(ValueError): + """ + An *attrs* function couldn't find an attribute that the user asked for. + + .. versionadded:: 16.2.0 + """ + + +class NotAnAttrsClassError(ValueError): + """ + A non-*attrs* class has been passed into an *attrs* function. + + .. versionadded:: 16.2.0 + """ + + +class DefaultAlreadySetError(RuntimeError): + """ + A default has been set when defining the field and is attempted to be reset + using the decorator. + + .. versionadded:: 17.1.0 + """ + + +class UnannotatedAttributeError(RuntimeError): + """ + A class with ``auto_attribs=True`` has a field without a type annotation. + + .. versionadded:: 17.3.0 + """ + + +class PythonTooOldError(RuntimeError): + """ + It was attempted to use an *attrs* feature that requires a newer Python + version. + + .. versionadded:: 18.2.0 + """ + + +class NotCallableError(TypeError): + """ + A field requiring a callable has been set with a value that is not + callable. + + .. versionadded:: 19.2.0 + """ + + def __init__(self, msg, value): + super(TypeError, self).__init__(msg, value) + self.msg = msg + self.value = value + + def __str__(self): + return str(self.msg) diff --git a/venv/lib/python3.9/site-packages/attr/exceptions.pyi b/venv/lib/python3.9/site-packages/attr/exceptions.pyi new file mode 100644 index 0000000..f268011 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/exceptions.pyi @@ -0,0 +1,17 @@ +from typing import Any + +class FrozenError(AttributeError): + msg: str = ... + +class FrozenInstanceError(FrozenError): ... +class FrozenAttributeError(FrozenError): ... +class AttrsAttributeNotFoundError(ValueError): ... +class NotAnAttrsClassError(ValueError): ... +class DefaultAlreadySetError(RuntimeError): ... +class UnannotatedAttributeError(RuntimeError): ... +class PythonTooOldError(RuntimeError): ... + +class NotCallableError(TypeError): + msg: str = ... + value: Any = ... + def __init__(self, msg: str, value: Any) -> None: ... diff --git a/venv/lib/python3.9/site-packages/attr/filters.py b/venv/lib/python3.9/site-packages/attr/filters.py new file mode 100644 index 0000000..689b170 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/filters.py @@ -0,0 +1,72 @@ +# SPDX-License-Identifier: MIT + +""" +Commonly useful filters for `attrs.asdict` and `attrs.astuple`. +""" + +from ._make import Attribute + + +def _split_what(what): + """ + Returns a tuple of `frozenset`s of classes and attributes. + """ + return ( + frozenset(cls for cls in what if isinstance(cls, type)), + frozenset(cls for cls in what if isinstance(cls, str)), + frozenset(cls for cls in what if isinstance(cls, Attribute)), + ) + + +def include(*what): + """ + Create a filter that only allows *what*. + + Args: + what (list[type, str, attrs.Attribute]): + What to include. Can be a type, a name, or an attribute. + + Returns: + Callable: + A callable that can be passed to `attrs.asdict`'s and + `attrs.astuple`'s *filter* argument. + + .. versionchanged:: 23.1.0 Accept strings with field names. + """ + cls, names, attrs = _split_what(what) + + def include_(attribute, value): + return ( + value.__class__ in cls + or attribute.name in names + or attribute in attrs + ) + + return include_ + + +def exclude(*what): + """ + Create a filter that does **not** allow *what*. + + Args: + what (list[type, str, attrs.Attribute]): + What to exclude. Can be a type, a name, or an attribute. + + Returns: + Callable: + A callable that can be passed to `attrs.asdict`'s and + `attrs.astuple`'s *filter* argument. + + .. versionchanged:: 23.3.0 Accept field name string as input argument + """ + cls, names, attrs = _split_what(what) + + def exclude_(attribute, value): + return not ( + value.__class__ in cls + or attribute.name in names + or attribute in attrs + ) + + return exclude_ diff --git a/venv/lib/python3.9/site-packages/attr/filters.pyi b/venv/lib/python3.9/site-packages/attr/filters.pyi new file mode 100644 index 0000000..974abdc --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/filters.pyi @@ -0,0 +1,6 @@ +from typing import Any + +from . import Attribute, _FilterType + +def include(*what: type | str | Attribute[Any]) -> _FilterType[Any]: ... +def exclude(*what: type | str | Attribute[Any]) -> _FilterType[Any]: ... diff --git a/venv/lib/python3.9/site-packages/attr/py.typed b/venv/lib/python3.9/site-packages/attr/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/attr/setters.py b/venv/lib/python3.9/site-packages/attr/setters.py new file mode 100644 index 0000000..78b0839 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/setters.py @@ -0,0 +1,79 @@ +# SPDX-License-Identifier: MIT + +""" +Commonly used hooks for on_setattr. +""" + +from . import _config +from .exceptions import FrozenAttributeError + + +def pipe(*setters): + """ + Run all *setters* and return the return value of the last one. + + .. versionadded:: 20.1.0 + """ + + def wrapped_pipe(instance, attrib, new_value): + rv = new_value + + for setter in setters: + rv = setter(instance, attrib, rv) + + return rv + + return wrapped_pipe + + +def frozen(_, __, ___): + """ + Prevent an attribute to be modified. + + .. versionadded:: 20.1.0 + """ + raise FrozenAttributeError + + +def validate(instance, attrib, new_value): + """ + Run *attrib*'s validator on *new_value* if it has one. + + .. versionadded:: 20.1.0 + """ + if _config._run_validators is False: + return new_value + + v = attrib.validator + if not v: + return new_value + + v(instance, attrib, new_value) + + return new_value + + +def convert(instance, attrib, new_value): + """ + Run *attrib*'s converter -- if it has one -- on *new_value* and return the + result. + + .. versionadded:: 20.1.0 + """ + c = attrib.converter + if c: + # This can be removed once we drop 3.8 and use attrs.Converter instead. + from ._make import Converter + + if not isinstance(c, Converter): + return c(new_value) + + return c(new_value, instance, attrib) + + return new_value + + +# Sentinel for disabling class-wide *on_setattr* hooks for certain attributes. +# Sphinx's autodata stopped working, so the docstring is inlined in the API +# docs. +NO_OP = object() diff --git a/venv/lib/python3.9/site-packages/attr/setters.pyi b/venv/lib/python3.9/site-packages/attr/setters.pyi new file mode 100644 index 0000000..73abf36 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/setters.pyi @@ -0,0 +1,20 @@ +from typing import Any, NewType, NoReturn, TypeVar + +from . import Attribute +from attrs import _OnSetAttrType + +_T = TypeVar("_T") + +def frozen( + instance: Any, attribute: Attribute[Any], new_value: Any +) -> NoReturn: ... +def pipe(*setters: _OnSetAttrType) -> _OnSetAttrType: ... +def validate(instance: Any, attribute: Attribute[_T], new_value: _T) -> _T: ... + +# convert is allowed to return Any, because they can be chained using pipe. +def convert( + instance: Any, attribute: Attribute[Any], new_value: Any +) -> Any: ... + +_NoOpType = NewType("_NoOpType", object) +NO_OP: _NoOpType diff --git a/venv/lib/python3.9/site-packages/attr/validators.py b/venv/lib/python3.9/site-packages/attr/validators.py new file mode 100644 index 0000000..0b1a294 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/validators.py @@ -0,0 +1,750 @@ +# SPDX-License-Identifier: MIT + +""" +Commonly useful validators. +""" + +import operator +import re + +from contextlib import contextmanager +from re import Pattern + +from ._config import get_run_validators, set_run_validators +from ._make import _AndValidator, and_, attrib, attrs +from .converters import default_if_none +from .exceptions import NotCallableError + + +__all__ = [ + "and_", + "deep_iterable", + "deep_mapping", + "disabled", + "ge", + "get_disabled", + "gt", + "in_", + "instance_of", + "is_callable", + "le", + "lt", + "matches_re", + "max_len", + "min_len", + "not_", + "optional", + "or_", + "set_disabled", +] + + +def set_disabled(disabled): + """ + Globally disable or enable running validators. + + By default, they are run. + + Args: + disabled (bool): If `True`, disable running all validators. + + .. warning:: + + This function is not thread-safe! + + .. versionadded:: 21.3.0 + """ + set_run_validators(not disabled) + + +def get_disabled(): + """ + Return a bool indicating whether validators are currently disabled or not. + + Returns: + bool:`True` if validators are currently disabled. + + .. versionadded:: 21.3.0 + """ + return not get_run_validators() + + +@contextmanager +def disabled(): + """ + Context manager that disables running validators within its context. + + .. warning:: + + This context manager is not thread-safe! + + .. versionadded:: 21.3.0 + .. versionchanged:: 26.1.0 The contextmanager is nestable. + """ + prev = get_run_validators() + set_run_validators(False) + try: + yield + finally: + set_run_validators(prev) + + +@attrs(repr=False, slots=True, unsafe_hash=True) +class _InstanceOfValidator: + type = attrib() + + def __call__(self, inst, attr, value): + """ + We use a callable class to be able to change the ``__repr__``. + """ + if not isinstance(value, self.type): + msg = f"'{attr.name}' must be {self.type!r} (got {value!r} that is a {value.__class__!r})." + raise TypeError( + msg, + attr, + self.type, + value, + ) + + def __repr__(self): + return f"" + + +def instance_of(type): + """ + A validator that raises a `TypeError` if the initializer is called with a + wrong type for this particular attribute (checks are performed using + `isinstance` therefore it's also valid to pass a tuple of types). + + Args: + type (type | tuple[type]): The type to check for. + + Raises: + TypeError: + With a human readable error message, the attribute (of type + `attrs.Attribute`), the expected type, and the value it got. + """ + return _InstanceOfValidator(type) + + +@attrs(repr=False, frozen=True, slots=True) +class _MatchesReValidator: + pattern = attrib() + match_func = attrib() + + def __call__(self, inst, attr, value): + """ + We use a callable class to be able to change the ``__repr__``. + """ + if not self.match_func(value): + msg = f"'{attr.name}' must match regex {self.pattern.pattern!r} ({value!r} doesn't)" + raise ValueError( + msg, + attr, + self.pattern, + value, + ) + + def __repr__(self): + return f"" + + +def matches_re(regex, flags=0, func=None): + r""" + A validator that raises `ValueError` if the initializer is called with a + string that doesn't match *regex*. + + Args: + regex (str, re.Pattern): + A regex string or precompiled pattern to match against + + flags (int): + Flags that will be passed to the underlying re function (default 0) + + func (typing.Callable): + Which underlying `re` function to call. Valid options are + `re.fullmatch`, `re.search`, and `re.match`; the default `None` + means `re.fullmatch`. For performance reasons, the pattern is + always precompiled using `re.compile`. + + .. versionadded:: 19.2.0 + .. versionchanged:: 21.3.0 *regex* can be a pre-compiled pattern. + """ + valid_funcs = (re.fullmatch, None, re.search, re.match) + if func not in valid_funcs: + msg = "'func' must be one of {}.".format( + ", ".join( + sorted((e and e.__name__) or "None" for e in set(valid_funcs)) + ) + ) + raise ValueError(msg) + + if isinstance(regex, Pattern): + if flags: + msg = "'flags' can only be used with a string pattern; pass flags to re.compile() instead" + raise TypeError(msg) + pattern = regex + else: + pattern = re.compile(regex, flags) + + if func is re.match: + match_func = pattern.match + elif func is re.search: + match_func = pattern.search + else: + match_func = pattern.fullmatch + + return _MatchesReValidator(pattern, match_func) + + +@attrs(repr=False, slots=True, unsafe_hash=True) +class _OptionalValidator: + validator = attrib() + + def __call__(self, inst, attr, value): + if value is None: + return + + self.validator(inst, attr, value) + + def __repr__(self): + return f"" + + +def optional(validator): + """ + A validator that makes an attribute optional. An optional attribute is one + which can be set to `None` in addition to satisfying the requirements of + the sub-validator. + + Args: + validator + (typing.Callable | tuple[typing.Callable] | list[typing.Callable]): + A validator (or validators) that is used for non-`None` values. + + .. versionadded:: 15.1.0 + .. versionchanged:: 17.1.0 *validator* can be a list of validators. + .. versionchanged:: 23.1.0 *validator* can also be a tuple of validators. + """ + if isinstance(validator, (list, tuple)): + return _OptionalValidator(_AndValidator(validator)) + + return _OptionalValidator(validator) + + +@attrs(repr=False, slots=True, unsafe_hash=True) +class _InValidator: + options = attrib() + _original_options = attrib(hash=False) + + def __call__(self, inst, attr, value): + try: + in_options = value in self.options + except TypeError: # e.g. `1 in "abc"` + in_options = False + + if not in_options: + msg = f"'{attr.name}' must be in {self._original_options!r} (got {value!r})" + raise ValueError( + msg, + attr, + self._original_options, + value, + ) + + def __repr__(self): + return f"" + + +def in_(options): + """ + A validator that raises a `ValueError` if the initializer is called with a + value that does not belong in the *options* provided. + + The check is performed using ``value in options``, so *options* has to + support that operation. + + To keep the validator hashable, dicts, lists, and sets are transparently + transformed into a `tuple`. + + Args: + options: Allowed options. + + Raises: + ValueError: + With a human readable error message, the attribute (of type + `attrs.Attribute`), the expected options, and the value it got. + + .. versionadded:: 17.1.0 + .. versionchanged:: 22.1.0 + The ValueError was incomplete until now and only contained the human + readable error message. Now it contains all the information that has + been promised since 17.1.0. + .. versionchanged:: 24.1.0 + *options* that are a list, dict, or a set are now transformed into a + tuple to keep the validator hashable. + """ + repr_options = options + if isinstance(options, (list, dict, set)): + options = tuple(options) + + return _InValidator(options, repr_options) + + +@attrs(repr=False, slots=False, unsafe_hash=True) +class _IsCallableValidator: + def __call__(self, inst, attr, value): + """ + We use a callable class to be able to change the ``__repr__``. + """ + if not callable(value): + message = ( + "'{name}' must be callable " + "(got {value!r} that is a {actual!r})." + ) + raise NotCallableError( + msg=message.format( + name=attr.name, value=value, actual=value.__class__ + ), + value=value, + ) + + def __repr__(self): + return "" + + +def is_callable(): + """ + A validator that raises a `attrs.exceptions.NotCallableError` if the + initializer is called with a value for this particular attribute that is + not callable. + + .. versionadded:: 19.1.0 + + Raises: + attrs.exceptions.NotCallableError: + With a human readable error message containing the attribute + (`attrs.Attribute`) name, and the value it got. + """ + return _IsCallableValidator() + + +@attrs(repr=False, slots=True, unsafe_hash=True) +class _DeepIterable: + member_validator = attrib(validator=is_callable()) + iterable_validator = attrib( + default=None, validator=optional(is_callable()) + ) + + def __call__(self, inst, attr, value): + """ + We use a callable class to be able to change the ``__repr__``. + """ + if self.iterable_validator is not None: + self.iterable_validator(inst, attr, value) + + for member in value: + self.member_validator(inst, attr, member) + + def __repr__(self): + iterable_identifier = ( + "" + if self.iterable_validator is None + else f" {self.iterable_validator!r}" + ) + return ( + f"" + ) + + +def deep_iterable(member_validator, iterable_validator=None): + """ + A validator that performs deep validation of an iterable. + + Args: + member_validator: Validator(s) to apply to iterable members. + + iterable_validator: + Validator(s) to apply to iterable itself (optional). + + Raises + TypeError: if any sub-validators fail + + .. versionadded:: 19.1.0 + + .. versionchanged:: 25.4.0 + *member_validator* and *iterable_validator* can now be a list or tuple + of validators. + """ + if isinstance(member_validator, (list, tuple)): + member_validator = and_(*member_validator) + if isinstance(iterable_validator, (list, tuple)): + iterable_validator = and_(*iterable_validator) + return _DeepIterable(member_validator, iterable_validator) + + +@attrs(repr=False, slots=True, unsafe_hash=True) +class _DeepMapping: + key_validator = attrib(validator=optional(is_callable())) + value_validator = attrib(validator=optional(is_callable())) + mapping_validator = attrib(validator=optional(is_callable())) + + def __call__(self, inst, attr, value): + """ + We use a callable class to be able to change the ``__repr__``. + """ + if self.mapping_validator is not None: + self.mapping_validator(inst, attr, value) + + for key in value: + if self.key_validator is not None: + self.key_validator(inst, attr, key) + if self.value_validator is not None: + self.value_validator(inst, attr, value[key]) + + def __repr__(self): + return f"" + + +def deep_mapping( + key_validator=None, value_validator=None, mapping_validator=None +): + """ + A validator that performs deep validation of a dictionary. + + All validators are optional, but at least one of *key_validator* or + *value_validator* must be provided. + + Args: + key_validator: Validator(s) to apply to dictionary keys. + + value_validator: Validator(s) to apply to dictionary values. + + mapping_validator: + Validator(s) to apply to top-level mapping attribute. + + .. versionadded:: 19.1.0 + + .. versionchanged:: 25.4.0 + *key_validator* and *value_validator* are now optional, but at least one + of them must be provided. + + .. versionchanged:: 25.4.0 + *key_validator*, *value_validator*, and *mapping_validator* can now be a + list or tuple of validators. + + Raises: + TypeError: If any sub-validator fails on validation. + + ValueError: + If neither *key_validator* nor *value_validator* is provided on + instantiation. + """ + if key_validator is None and value_validator is None: + msg = ( + "At least one of key_validator or value_validator must be provided" + ) + raise ValueError(msg) + + if isinstance(key_validator, (list, tuple)): + key_validator = and_(*key_validator) + if isinstance(value_validator, (list, tuple)): + value_validator = and_(*value_validator) + if isinstance(mapping_validator, (list, tuple)): + mapping_validator = and_(*mapping_validator) + + return _DeepMapping(key_validator, value_validator, mapping_validator) + + +@attrs(repr=False, frozen=True, slots=True) +class _NumberValidator: + bound = attrib() + compare_op = attrib() + compare_func = attrib() + + def __call__(self, inst, attr, value): + """ + We use a callable class to be able to change the ``__repr__``. + """ + if not self.compare_func(value, self.bound): + msg = f"'{attr.name}' must be {self.compare_op} {self.bound}: {value}" + raise ValueError(msg) + + def __repr__(self): + return f"" + + +def lt(val): + """ + A validator that raises `ValueError` if the initializer is called with a + number larger or equal to *val*. + + The validator uses `operator.lt` to compare the values. + + Args: + val: Exclusive upper bound for values. + + .. versionadded:: 21.3.0 + """ + return _NumberValidator(val, "<", operator.lt) + + +def le(val): + """ + A validator that raises `ValueError` if the initializer is called with a + number greater than *val*. + + The validator uses `operator.le` to compare the values. + + Args: + val: Inclusive upper bound for values. + + .. versionadded:: 21.3.0 + """ + return _NumberValidator(val, "<=", operator.le) + + +def ge(val): + """ + A validator that raises `ValueError` if the initializer is called with a + number smaller than *val*. + + The validator uses `operator.ge` to compare the values. + + Args: + val: Inclusive lower bound for values + + .. versionadded:: 21.3.0 + """ + return _NumberValidator(val, ">=", operator.ge) + + +def gt(val): + """ + A validator that raises `ValueError` if the initializer is called with a + number smaller or equal to *val*. + + The validator uses `operator.gt` to compare the values. + + Args: + val: Exclusive lower bound for values + + .. versionadded:: 21.3.0 + """ + return _NumberValidator(val, ">", operator.gt) + + +@attrs(repr=False, frozen=True, slots=True) +class _MaxLengthValidator: + max_length = attrib() + + def __call__(self, inst, attr, value): + """ + We use a callable class to be able to change the ``__repr__``. + """ + if len(value) > self.max_length: + msg = f"Length of '{attr.name}' must be <= {self.max_length}: {len(value)}" + raise ValueError(msg) + + def __repr__(self): + return f"" + + +def max_len(length): + """ + A validator that raises `ValueError` if the initializer is called + with a string or iterable that is longer than *length*. + + Args: + length (int): Maximum length of the string or iterable + + .. versionadded:: 21.3.0 + """ + return _MaxLengthValidator(length) + + +@attrs(repr=False, frozen=True, slots=True) +class _MinLengthValidator: + min_length = attrib() + + def __call__(self, inst, attr, value): + """ + We use a callable class to be able to change the ``__repr__``. + """ + if len(value) < self.min_length: + msg = f"Length of '{attr.name}' must be >= {self.min_length}: {len(value)}" + raise ValueError(msg) + + def __repr__(self): + return f"" + + +def min_len(length): + """ + A validator that raises `ValueError` if the initializer is called + with a string or iterable that is shorter than *length*. + + Args: + length (int): Minimum length of the string or iterable + + .. versionadded:: 22.1.0 + """ + return _MinLengthValidator(length) + + +@attrs(repr=False, slots=True, unsafe_hash=True) +class _SubclassOfValidator: + type = attrib() + + def __call__(self, inst, attr, value): + """ + We use a callable class to be able to change the ``__repr__``. + """ + if not issubclass(value, self.type): + msg = f"'{attr.name}' must be a subclass of {self.type!r} (got {value!r})." + raise TypeError( + msg, + attr, + self.type, + value, + ) + + def __repr__(self): + return f"" + + +def _subclass_of(type): + """ + A validator that raises a `TypeError` if the initializer is called with a + wrong type for this particular attribute (checks are performed using + `issubclass` therefore it's also valid to pass a tuple of types). + + Args: + type (type | tuple[type, ...]): The type(s) to check for. + + Raises: + TypeError: + With a human readable error message, the attribute (of type + `attrs.Attribute`), the expected type, and the value it got. + """ + return _SubclassOfValidator(type) + + +@attrs(repr=False, slots=True, unsafe_hash=True) +class _NotValidator: + validator = attrib() + msg = attrib( + converter=default_if_none( + "not_ validator child '{validator!r}' " + "did not raise a captured error" + ) + ) + exc_types = attrib( + validator=deep_iterable( + member_validator=_subclass_of(Exception), + iterable_validator=instance_of(tuple), + ), + ) + + def __call__(self, inst, attr, value): + try: + self.validator(inst, attr, value) + except self.exc_types: + pass # suppress error to invert validity + else: + raise ValueError( + self.msg.format( + validator=self.validator, + exc_types=self.exc_types, + ), + attr, + self.validator, + value, + self.exc_types, + ) + + def __repr__(self): + return f"" + + +def not_(validator, *, msg=None, exc_types=(ValueError, TypeError)): + """ + A validator that wraps and logically 'inverts' the validator passed to it. + It will raise a `ValueError` if the provided validator *doesn't* raise a + `ValueError` or `TypeError` (by default), and will suppress the exception + if the provided validator *does*. + + Intended to be used with existing validators to compose logic without + needing to create inverted variants, for example, ``not_(in_(...))``. + + Args: + validator: A validator to be logically inverted. + + msg (str): + Message to raise if validator fails. Formatted with keys + ``exc_types`` and ``validator``. + + exc_types (tuple[type, ...]): + Exception type(s) to capture. Other types raised by child + validators will not be intercepted and pass through. + + Raises: + ValueError: + With a human readable error message, the attribute (of type + `attrs.Attribute`), the validator that failed to raise an + exception, the value it got, and the expected exception types. + + .. versionadded:: 22.2.0 + """ + try: + exc_types = tuple(exc_types) + except TypeError: + exc_types = (exc_types,) + return _NotValidator(validator, msg, exc_types) + + +@attrs(repr=False, slots=True, unsafe_hash=True) +class _OrValidator: + validators = attrib() + + def __call__(self, inst, attr, value): + for v in self.validators: + try: + v(inst, attr, value) + except Exception: # noqa: BLE001, PERF203, S112 + continue + else: + return + + msg = f"None of {self.validators!r} satisfied for value {value!r}" + raise ValueError(msg) + + def __repr__(self): + return f"" + + +def or_(*validators): + """ + A validator that composes multiple validators into one. + + When called on a value, it runs all wrapped validators until one of them is + satisfied. + + Args: + validators (~collections.abc.Iterable[typing.Callable]): + Arbitrary number of validators. + + Raises: + ValueError: + If no validator is satisfied. Raised with a human-readable error + message listing all the wrapped validators and the value that + failed all of them. + + .. versionadded:: 24.1.0 + """ + vals = [] + for v in validators: + vals.extend(v.validators if isinstance(v, _OrValidator) else [v]) + + return _OrValidator(tuple(vals)) diff --git a/venv/lib/python3.9/site-packages/attr/validators.pyi b/venv/lib/python3.9/site-packages/attr/validators.pyi new file mode 100644 index 0000000..18fb112 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attr/validators.pyi @@ -0,0 +1,140 @@ +from types import UnionType +from typing import ( + Any, + AnyStr, + Callable, + Container, + ContextManager, + Iterable, + Mapping, + Match, + Pattern, + TypeVar, + overload, +) + +from attrs import _ValidatorType +from attrs import _ValidatorArgType + +_T = TypeVar("_T") +_T1 = TypeVar("_T1") +_T2 = TypeVar("_T2") +_T3 = TypeVar("_T3") +_T4 = TypeVar("_T4") +_T5 = TypeVar("_T5") +_T6 = TypeVar("_T6") +_I = TypeVar("_I", bound=Iterable) +_K = TypeVar("_K") +_V = TypeVar("_V") +_M = TypeVar("_M", bound=Mapping) + +def set_disabled(run: bool) -> None: ... +def get_disabled() -> bool: ... +def disabled() -> ContextManager[None]: ... + +# To be more precise on instance_of use some overloads. +# If there are more than 3 items in the tuple then we fall back to Any +@overload +def instance_of(type: type[_T]) -> _ValidatorType[_T]: ... +@overload +def instance_of(type: tuple[type[_T]]) -> _ValidatorType[_T]: ... +@overload +def instance_of( + type: tuple[type[_T1], type[_T2]], +) -> _ValidatorType[_T1 | _T2]: ... +@overload +def instance_of( + type: tuple[type[_T1], type[_T2], type[_T3]], +) -> _ValidatorType[_T1 | _T2 | _T3]: ... +@overload +def instance_of(type: tuple[type, ...]) -> _ValidatorType[Any]: ... +@overload +def instance_of(type: UnionType) -> _ValidatorType[Any]: ... +def optional( + validator: ( + _ValidatorType[_T] + | list[_ValidatorType[_T]] + | tuple[_ValidatorType[_T], ...] + ), +) -> _ValidatorType[_T | None]: ... +def in_(options: Container[_T]) -> _ValidatorType[_T]: ... +def and_(*validators: _ValidatorType[_T]) -> _ValidatorType[_T]: ... +def matches_re( + regex: Pattern[AnyStr] | AnyStr, + flags: int = ..., + func: Callable[[AnyStr, AnyStr, int], Match[AnyStr] | None] | None = ..., +) -> _ValidatorType[AnyStr]: ... +def deep_iterable( + member_validator: _ValidatorArgType[_T], + iterable_validator: _ValidatorArgType[_I] | None = ..., +) -> _ValidatorType[_I]: ... +@overload +def deep_mapping( + key_validator: _ValidatorArgType[_K], + value_validator: _ValidatorArgType[_V] | None = ..., + mapping_validator: _ValidatorArgType[_M] | None = ..., +) -> _ValidatorType[_M]: ... +@overload +def deep_mapping( + key_validator: _ValidatorArgType[_K] | None = ..., + value_validator: _ValidatorArgType[_V] = ..., + mapping_validator: _ValidatorArgType[_M] | None = ..., +) -> _ValidatorType[_M]: ... +def is_callable() -> _ValidatorType[_T]: ... +def lt(val: _T) -> _ValidatorType[_T]: ... +def le(val: _T) -> _ValidatorType[_T]: ... +def ge(val: _T) -> _ValidatorType[_T]: ... +def gt(val: _T) -> _ValidatorType[_T]: ... +def max_len(length: int) -> _ValidatorType[_T]: ... +def min_len(length: int) -> _ValidatorType[_T]: ... +def not_( + validator: _ValidatorType[_T], + *, + msg: str | None = None, + exc_types: type[Exception] | Iterable[type[Exception]] = ..., +) -> _ValidatorType[_T]: ... +@overload +def or_( + __v1: _ValidatorType[_T1], + __v2: _ValidatorType[_T2], +) -> _ValidatorType[_T1 | _T2]: ... +@overload +def or_( + __v1: _ValidatorType[_T1], + __v2: _ValidatorType[_T2], + __v3: _ValidatorType[_T3], +) -> _ValidatorType[_T1 | _T2 | _T3]: ... +@overload +def or_( + __v1: _ValidatorType[_T1], + __v2: _ValidatorType[_T2], + __v3: _ValidatorType[_T3], + __v4: _ValidatorType[_T4], +) -> _ValidatorType[_T1 | _T2 | _T3 | _T4]: ... +@overload +def or_( + __v1: _ValidatorType[_T1], + __v2: _ValidatorType[_T2], + __v3: _ValidatorType[_T3], + __v4: _ValidatorType[_T4], + __v5: _ValidatorType[_T5], +) -> _ValidatorType[_T1 | _T2 | _T3 | _T4 | _T5]: ... +@overload +def or_( + __v1: _ValidatorType[_T1], + __v2: _ValidatorType[_T2], + __v3: _ValidatorType[_T3], + __v4: _ValidatorType[_T4], + __v5: _ValidatorType[_T5], + __v6: _ValidatorType[_T6], +) -> _ValidatorType[_T1 | _T2 | _T3 | _T4 | _T5 | _T6]: ... +@overload +def or_( + __v1: _ValidatorType[Any], + __v2: _ValidatorType[Any], + __v3: _ValidatorType[Any], + __v4: _ValidatorType[Any], + __v5: _ValidatorType[Any], + __v6: _ValidatorType[Any], + *validators: _ValidatorType[Any], +) -> _ValidatorType[Any]: ... diff --git a/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/METADATA b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/METADATA new file mode 100644 index 0000000..5cf16a0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/METADATA @@ -0,0 +1,199 @@ +Metadata-Version: 2.4 +Name: attrs +Version: 26.1.0 +Summary: Classes Without Boilerplate +Project-URL: Documentation, https://www.attrs.org/ +Project-URL: Changelog, https://www.attrs.org/en/stable/changelog.html +Project-URL: GitHub, https://github.com/python-attrs/attrs +Project-URL: Funding, https://github.com/sponsors/hynek +Project-URL: Tidelift, https://tidelift.com/subscription/pkg/pypi-attrs?utm_source=pypi-attrs&utm_medium=pypi +Author-email: Hynek Schlawack +License-Expression: MIT +License-File: LICENSE +Keywords: attribute,boilerplate,class +Classifier: Development Status :: 5 - Production/Stable +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: Programming Language :: Python :: 3.14 +Classifier: Programming Language :: Python :: Implementation :: CPython +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Typing :: Typed +Requires-Python: >=3.9 +Description-Content-Type: text/markdown + +

+ + attrs + +

+ + +*attrs* is the Python package that will bring back the **joy** of **writing classes** by relieving you from the drudgery of implementing object protocols (aka [dunder methods](https://www.attrs.org/en/latest/glossary.html#term-dunder-methods)). +Trusted by NASA for [Mars missions since 2020](https://github.com/readme/featured/nasa-ingenuity-helicopter)! + +Its main goal is to help you to write **concise** and **correct** software without slowing down your code. + + +## Sponsors + +*attrs* would not be possible without our [amazing sponsors](https://github.com/sponsors/hynek). +Especially those generously supporting us at the *The Organization* tier and higher: + + + +

+ + + + + + + + + + + +

+ + + +

+ Please consider joining them to help make attrs’s maintenance more sustainable! +

+ + + +## Example + +*attrs* gives you a class decorator and a way to declaratively define the attributes on that class: + + + +```pycon +>>> from attrs import asdict, define, make_class, Factory + +>>> @define +... class SomeClass: +... a_number: int = 42 +... list_of_numbers: list[int] = Factory(list) +... +... def hard_math(self, another_number): +... return self.a_number + sum(self.list_of_numbers) * another_number + + +>>> sc = SomeClass(1, [1, 2, 3]) +>>> sc +SomeClass(a_number=1, list_of_numbers=[1, 2, 3]) + +>>> sc.hard_math(3) +19 +>>> sc == SomeClass(1, [1, 2, 3]) +True +>>> sc != SomeClass(2, [3, 2, 1]) +True + +>>> asdict(sc) +{'a_number': 1, 'list_of_numbers': [1, 2, 3]} + +>>> SomeClass() +SomeClass(a_number=42, list_of_numbers=[]) + +>>> C = make_class("C", ["a", "b"]) +>>> C("foo", "bar") +C(a='foo', b='bar') +``` + +After *declaring* your attributes, *attrs* gives you: + +- a concise and explicit overview of the class's attributes, +- a nice human-readable `__repr__`, +- equality-checking methods, +- an initializer, +- and much more, + +*without* writing dull boilerplate code again and again and *without* runtime performance penalties. + +--- + +This example uses *attrs*'s modern APIs that have been introduced in version 20.1.0, and the *attrs* package import name that has been added in version 21.3.0. +The classic APIs (`@attr.s`, `attr.ib`, plus their serious-business aliases) and the `attr` package import name will remain **indefinitely**. + +Check out [*On The Core API Names*](https://www.attrs.org/en/latest/names.html) for an in-depth explanation! + + +### Hate Type Annotations!? + +No problem! +Types are entirely **optional** with *attrs*. +Simply assign `attrs.field()` to the attributes instead of annotating them with types: + +```python +from attrs import define, field + +@define +class SomeClass: + a_number = field(default=42) + list_of_numbers = field(factory=list) +``` + + +## Data Classes + +On the tin, *attrs* might remind you of `dataclasses` (and indeed, `dataclasses` [are a descendant](https://hynek.me/articles/import-attrs/) of *attrs*). +In practice it does a lot more and is more flexible. +For instance, it allows you to define [special handling of NumPy arrays for equality checks](https://www.attrs.org/en/stable/comparison.html#customization), allows more ways to [plug into the initialization process](https://www.attrs.org/en/stable/init.html#hooking-yourself-into-initialization), has a replacement for `__init_subclass__`, and allows for stepping through the generated methods using a debugger. + +For more details, please refer to our [comparison page](https://www.attrs.org/en/stable/why.html#data-classes), but generally speaking, we are more likely to commit crimes against nature to make things work that one would expect to work, but that are quite complicated in practice. + + +## Project Information + +- [**Changelog**](https://www.attrs.org/en/stable/changelog.html) +- [**Documentation**](https://www.attrs.org/) +- [**PyPI**](https://pypi.org/project/attrs/) +- [**Source Code**](https://github.com/python-attrs/attrs) +- [**Contributing**](https://github.com/python-attrs/attrs/blob/main/.github/CONTRIBUTING.md) +- [**Third-party Extensions**](https://github.com/python-attrs/attrs/wiki/Extensions-to-attrs) +- **Get Help**: use the `python-attrs` tag on [Stack Overflow](https://stackoverflow.com/questions/tagged/python-attrs) + + +### *attrs* for Enterprise + +Available as part of the [Tidelift Subscription](https://tidelift.com/?utm_source=lifter&utm_medium=referral&utm_campaign=hynek). + +The maintainers of *attrs* and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source packages you use to build your applications. +Save time, reduce risk, and improve code health, while paying the maintainers of the exact packages you use. + +## Release Information + +### Backwards-incompatible Changes + +- Field aliases are now resolved *before* calling `field_transformer`, so transformers receive fully populated `Attribute` objects with usable `alias` values instead of `None`. + The new `Attribute.alias_is_default` flag indicates whether the alias was auto-generated (`True`) or explicitly set by the user (`False`). + [#1509](https://github.com/python-attrs/attrs/issues/1509) + + +### Changes + +- Fix type annotations for `attrs.validators.optional()`, so it no longer rejects tuples with more than one validator. + [#1496](https://github.com/python-attrs/attrs/issues/1496) +- The `attrs.validators.disabled()` contextmanager can now be nested. + [#1513](https://github.com/python-attrs/attrs/issues/1513) +- Frozen classes can set `on_setattr=attrs.setters.NO_OP` in addition to `None`. + [#1515](https://github.com/python-attrs/attrs/issues/1515) +- It's now possible to pass *attrs* **instances** in addition to *attrs* **classes** to `attrs.fields()`. + [#1529](https://github.com/python-attrs/attrs/issues/1529) + + + +--- + +[Full changelog →](https://www.attrs.org/en/stable/changelog.html) diff --git a/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/RECORD b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/RECORD new file mode 100644 index 0000000..585c7ee --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/RECORD @@ -0,0 +1,55 @@ +attr/__init__.py,sha256=fOYIvt1eGSqQre4uCS3sJWKZ0mwAuC8UD6qba5OS9_U,2057 +attr/__init__.pyi,sha256=pVGImAUVovq2_TYl_r_HIYnGlyOaoCuEhxo-EvsnnSc,11325 +attr/__pycache__/__init__.cpython-39.pyc,, +attr/__pycache__/_cmp.cpython-39.pyc,, +attr/__pycache__/_compat.cpython-39.pyc,, +attr/__pycache__/_config.cpython-39.pyc,, +attr/__pycache__/_funcs.cpython-39.pyc,, +attr/__pycache__/_make.cpython-39.pyc,, +attr/__pycache__/_next_gen.cpython-39.pyc,, +attr/__pycache__/_version_info.cpython-39.pyc,, +attr/__pycache__/converters.cpython-39.pyc,, +attr/__pycache__/exceptions.cpython-39.pyc,, +attr/__pycache__/filters.cpython-39.pyc,, +attr/__pycache__/setters.cpython-39.pyc,, +attr/__pycache__/validators.cpython-39.pyc,, +attr/_cmp.py,sha256=3Nn1TjxllUYiX_nJoVnEkXoDk0hM1DYKj5DE7GZe4i0,4117 +attr/_cmp.pyi,sha256=U-_RU_UZOyPUEQzXE6RMYQQcjkZRY25wTH99sN0s7MM,368 +attr/_compat.py,sha256=x0g7iEUOnBVJC72zyFCgb1eKqyxS-7f2LGnNyZ_r95s,2829 +attr/_config.py,sha256=dGq3xR6fgZEF6UBt_L0T-eUHIB4i43kRmH0P28sJVw8,843 +attr/_funcs.py,sha256=Ix5IETTfz5F01F-12MF_CSFomIn2h8b67EVVz2gCtBE,16479 +attr/_make.py,sha256=H7OH2eWS5CnBzLUjNFE1WymfPrmF1r8fv2RPdt9MuYA,106129 +attr/_next_gen.py,sha256=BQtCUlzwg2gWHTYXBQvrEYBnzBUrDvO57u0Py6UCPhc,26274 +attr/_typing_compat.pyi,sha256=XDP54TUn-ZKhD62TOQebmzrwFyomhUCoGRpclb6alRA,469 +attr/_version_info.py,sha256=w4R-FYC3NK_kMkGUWJlYP4cVAlH9HRaC-um3fcjYkHM,2222 +attr/_version_info.pyi,sha256=x_M3L3WuB7r_ULXAWjx959udKQ4HLB8l-hsc1FDGNvk,209 +attr/converters.py,sha256=GlDeOzPeTFgeBBLbj9G57Ez5lAk68uhSALRYJ_exe84,3861 +attr/converters.pyi,sha256=orU2bff-VjQa2kMDyvnMQV73oJT2WRyQuw4ZR1ym1bE,643 +attr/exceptions.py,sha256=b4vMbnoQ3VpwWZhqrYi_ssXVCK8o2c4HQSS09cSUM9o,1990 +attr/exceptions.pyi,sha256=zZq8bCUnKAy9mDtBEw42ZhPhAUIHoTKedDQInJD883M,539 +attr/filters.py,sha256=ZBiKWLp3R0LfCZsq7X11pn9WX8NslS2wXM4jsnLOGc8,1795 +attr/filters.pyi,sha256=3J5BG-dTxltBk1_-RuNRUHrv2qu1v8v4aDNAQ7_mifA,208 +attr/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +attr/setters.py,sha256=5-dcT63GQK35ONEzSgfXCkbB7pPkaR-qv15mm4PVSzQ,1617 +attr/setters.pyi,sha256=NnVkaFU1BB4JB8E4JuXyrzTUgvtMpj8p3wBdJY7uix4,584 +attr/validators.py,sha256=m3QRzZTANr4f2C4eVdUoFg11NgXWak8Wat4qQTGhvcs,21553 +attr/validators.pyi,sha256=gM1ZmHaBckyYWI2EirpRNzqm3B19cw5Iq6B4Kno9YCM,4087 +attrs-26.1.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +attrs-26.1.0.dist-info/METADATA,sha256=TNQOaQ8jvzfLytNO_WdY4GLfHfB8hoM_fjzpW_H6OMw,8754 +attrs-26.1.0.dist-info/RECORD,, +attrs-26.1.0.dist-info/WHEEL,sha256=QccIxa26bgl1E6uMy58deGWi-0aeIkkangHcxk2kWfw,87 +attrs-26.1.0.dist-info/licenses/LICENSE,sha256=iCEVyV38KvHutnFPjsbVy8q_Znyv-HKfQkINpj9xTp8,1109 +attrs/__init__.py,sha256=RxaAZNwYiEh-fcvHLZNpQ_DWKni73M_jxEPEftiq1Zc,1183 +attrs/__init__.pyi,sha256=2gV79g9UxJppGSM48hAZJ6h_MHb70dZoJL31ZNJeZYI,9416 +attrs/__pycache__/__init__.cpython-39.pyc,, +attrs/__pycache__/converters.cpython-39.pyc,, +attrs/__pycache__/exceptions.cpython-39.pyc,, +attrs/__pycache__/filters.cpython-39.pyc,, +attrs/__pycache__/setters.cpython-39.pyc,, +attrs/__pycache__/validators.cpython-39.pyc,, +attrs/converters.py,sha256=8kQljrVwfSTRu8INwEk8SI0eGrzmWftsT7rM0EqyohM,76 +attrs/exceptions.py,sha256=ACCCmg19-vDFaDPY9vFl199SPXCQMN_bENs4DALjzms,76 +attrs/filters.py,sha256=VOUMZug9uEU6dUuA0dF1jInUK0PL3fLgP0VBS5d-CDE,73 +attrs/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +attrs/setters.py,sha256=eL1YidYQV3T2h9_SYIZSZR1FAcHGb1TuCTy0E0Lv2SU,73 +attrs/validators.py,sha256=xcy6wD5TtTkdCG1f4XWbocPSO0faBjk5IfVJfP6SUj0,76 diff --git a/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/WHEEL b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/WHEEL new file mode 100644 index 0000000..b1b94fd --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/WHEEL @@ -0,0 +1,4 @@ +Wheel-Version: 1.0 +Generator: hatchling 1.29.0 +Root-Is-Purelib: true +Tag: py3-none-any diff --git a/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/licenses/LICENSE b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/licenses/LICENSE new file mode 100644 index 0000000..2bd6453 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs-26.1.0.dist-info/licenses/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015 Hynek Schlawack and the attrs contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/venv/lib/python3.9/site-packages/attrs/__init__.py b/venv/lib/python3.9/site-packages/attrs/__init__.py new file mode 100644 index 0000000..dc1ce4b --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs/__init__.py @@ -0,0 +1,72 @@ +# SPDX-License-Identifier: MIT + +from attr import ( + NOTHING, + Attribute, + AttrsInstance, + Converter, + Factory, + NothingType, + _make_getattr, + assoc, + cmp_using, + define, + evolve, + field, + fields, + fields_dict, + frozen, + has, + make_class, + mutable, + resolve_types, + validate, +) +from attr._make import ClassProps +from attr._next_gen import asdict, astuple, inspect + +from . import converters, exceptions, filters, setters, validators + + +__all__ = [ + "NOTHING", + "Attribute", + "AttrsInstance", + "ClassProps", + "Converter", + "Factory", + "NothingType", + "__author__", + "__copyright__", + "__description__", + "__doc__", + "__email__", + "__license__", + "__title__", + "__url__", + "__version__", + "__version_info__", + "asdict", + "assoc", + "astuple", + "cmp_using", + "converters", + "define", + "evolve", + "exceptions", + "field", + "fields", + "fields_dict", + "filters", + "frozen", + "has", + "inspect", + "make_class", + "mutable", + "resolve_types", + "setters", + "validate", + "validators", +] + +__getattr__ = _make_getattr(__name__) diff --git a/venv/lib/python3.9/site-packages/attrs/__init__.pyi b/venv/lib/python3.9/site-packages/attrs/__init__.pyi new file mode 100644 index 0000000..6364bac --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs/__init__.pyi @@ -0,0 +1,314 @@ +import sys + +from typing import ( + Any, + Callable, + Mapping, + Sequence, + overload, + TypeVar, +) + +# Because we need to type our own stuff, we have to make everything from +# attr explicitly public too. +from attr import __author__ as __author__ +from attr import __copyright__ as __copyright__ +from attr import __description__ as __description__ +from attr import __email__ as __email__ +from attr import __license__ as __license__ +from attr import __title__ as __title__ +from attr import __url__ as __url__ +from attr import __version__ as __version__ +from attr import __version_info__ as __version_info__ +from attr import assoc as assoc +from attr import Attribute as Attribute +from attr import AttrsInstance as AttrsInstance +from attr import cmp_using as cmp_using +from attr import converters as converters +from attr import Converter as Converter +from attr import evolve as evolve +from attr import exceptions as exceptions +from attr import Factory as Factory +from attr import fields as fields +from attr import fields_dict as fields_dict +from attr import filters as filters +from attr import has as has +from attr import make_class as make_class +from attr import NOTHING as NOTHING +from attr import resolve_types as resolve_types +from attr import setters as setters +from attr import validate as validate +from attr import validators as validators +from attr import attrib, asdict as asdict, astuple as astuple +from attr import NothingType as NothingType + +if sys.version_info >= (3, 11): + from typing import dataclass_transform +else: + from typing_extensions import dataclass_transform + +_T = TypeVar("_T") +_C = TypeVar("_C", bound=type) + +_EqOrderType = bool | Callable[[Any], Any] +_ValidatorType = Callable[[Any, "Attribute[_T]", _T], Any] +_CallableConverterType = Callable[[Any], Any] +_ConverterType = _CallableConverterType | Converter[Any, Any] +_ReprType = Callable[[Any], str] +_ReprArgType = bool | _ReprType +_OnSetAttrType = Callable[[Any, "Attribute[Any]", Any], Any] +_OnSetAttrArgType = _OnSetAttrType | list[_OnSetAttrType] | setters._NoOpType +_FieldTransformer = Callable[ + [type, list["Attribute[Any]"]], list["Attribute[Any]"] +] +# FIXME: in reality, if multiple validators are passed they must be in a list +# or tuple, but those are invariant and so would prevent subtypes of +# _ValidatorType from working when passed in a list or tuple. +_ValidatorArgType = _ValidatorType[_T] | Sequence[_ValidatorType[_T]] + +@overload +def field( + *, + default: None = ..., + validator: None = ..., + repr: _ReprArgType = ..., + hash: bool | None = ..., + init: bool = ..., + metadata: Mapping[Any, Any] | None = ..., + converter: None = ..., + factory: None = ..., + kw_only: bool | None = ..., + eq: bool | None = ..., + order: bool | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + alias: str | None = ..., + type: type | None = ..., +) -> Any: ... + +# This form catches an explicit None or no default and infers the type from the +# other arguments. +@overload +def field( + *, + default: None = ..., + validator: _ValidatorArgType[_T] | None = ..., + repr: _ReprArgType = ..., + hash: bool | None = ..., + init: bool = ..., + metadata: Mapping[Any, Any] | None = ..., + converter: _ConverterType + | list[_ConverterType] + | tuple[_ConverterType, ...] + | None = ..., + factory: Callable[[], _T] | None = ..., + kw_only: bool | None = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + alias: str | None = ..., + type: type | None = ..., +) -> _T: ... + +# This form catches an explicit default argument. +@overload +def field( + *, + default: _T, + validator: _ValidatorArgType[_T] | None = ..., + repr: _ReprArgType = ..., + hash: bool | None = ..., + init: bool = ..., + metadata: Mapping[Any, Any] | None = ..., + converter: _ConverterType + | list[_ConverterType] + | tuple[_ConverterType, ...] + | None = ..., + factory: Callable[[], _T] | None = ..., + kw_only: bool | None = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + alias: str | None = ..., + type: type | None = ..., +) -> _T: ... + +# This form covers type=non-Type: e.g. forward references (str), Any +@overload +def field( + *, + default: _T | None = ..., + validator: _ValidatorArgType[_T] | None = ..., + repr: _ReprArgType = ..., + hash: bool | None = ..., + init: bool = ..., + metadata: Mapping[Any, Any] | None = ..., + converter: _ConverterType + | list[_ConverterType] + | tuple[_ConverterType, ...] + | None = ..., + factory: Callable[[], _T] | None = ..., + kw_only: bool | None = ..., + eq: _EqOrderType | None = ..., + order: _EqOrderType | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + alias: str | None = ..., + type: type | None = ..., +) -> Any: ... +@overload +@dataclass_transform(field_specifiers=(attrib, field)) +def define( + maybe_cls: _C, + *, + these: dict[str, Any] | None = ..., + repr: bool = ..., + unsafe_hash: bool | None = ..., + hash: bool | None = ..., + init: bool = ..., + slots: bool = ..., + frozen: bool = ..., + weakref_slot: bool = ..., + str: bool = ..., + auto_attribs: bool = ..., + kw_only: bool = ..., + cache_hash: bool = ..., + auto_exc: bool = ..., + eq: bool | None = ..., + order: bool | None = ..., + auto_detect: bool = ..., + getstate_setstate: bool | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + field_transformer: _FieldTransformer | None = ..., + match_args: bool = ..., +) -> _C: ... +@overload +@dataclass_transform(field_specifiers=(attrib, field)) +def define( + maybe_cls: None = ..., + *, + these: dict[str, Any] | None = ..., + repr: bool = ..., + unsafe_hash: bool | None = ..., + hash: bool | None = ..., + init: bool = ..., + slots: bool = ..., + frozen: bool = ..., + weakref_slot: bool = ..., + str: bool = ..., + auto_attribs: bool = ..., + kw_only: bool = ..., + cache_hash: bool = ..., + auto_exc: bool = ..., + eq: bool | None = ..., + order: bool | None = ..., + auto_detect: bool = ..., + getstate_setstate: bool | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + field_transformer: _FieldTransformer | None = ..., + match_args: bool = ..., +) -> Callable[[_C], _C]: ... + +mutable = define + +@overload +@dataclass_transform(frozen_default=True, field_specifiers=(attrib, field)) +def frozen( + maybe_cls: _C, + *, + these: dict[str, Any] | None = ..., + repr: bool = ..., + unsafe_hash: bool | None = ..., + hash: bool | None = ..., + init: bool = ..., + slots: bool = ..., + frozen: bool = ..., + weakref_slot: bool = ..., + str: bool = ..., + auto_attribs: bool = ..., + kw_only: bool = ..., + cache_hash: bool = ..., + auto_exc: bool = ..., + eq: bool | None = ..., + order: bool | None = ..., + auto_detect: bool = ..., + getstate_setstate: bool | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + field_transformer: _FieldTransformer | None = ..., + match_args: bool = ..., +) -> _C: ... +@overload +@dataclass_transform(frozen_default=True, field_specifiers=(attrib, field)) +def frozen( + maybe_cls: None = ..., + *, + these: dict[str, Any] | None = ..., + repr: bool = ..., + unsafe_hash: bool | None = ..., + hash: bool | None = ..., + init: bool = ..., + slots: bool = ..., + frozen: bool = ..., + weakref_slot: bool = ..., + str: bool = ..., + auto_attribs: bool = ..., + kw_only: bool = ..., + cache_hash: bool = ..., + auto_exc: bool = ..., + eq: bool | None = ..., + order: bool | None = ..., + auto_detect: bool = ..., + getstate_setstate: bool | None = ..., + on_setattr: _OnSetAttrArgType | None = ..., + field_transformer: _FieldTransformer | None = ..., + match_args: bool = ..., +) -> Callable[[_C], _C]: ... + +class ClassProps: + # XXX: somehow when defining/using enums Mypy starts looking at our own + # (untyped) code and causes tons of errors. + Hashability: Any + KeywordOnly: Any + + is_exception: bool + is_slotted: bool + has_weakref_slot: bool + is_frozen: bool + # kw_only: ClassProps.KeywordOnly + kw_only: Any + collected_fields_by_mro: bool + added_init: bool + added_repr: bool + added_eq: bool + added_ordering: bool + # hashability: ClassProps.Hashability + hashability: Any + added_match_args: bool + added_str: bool + added_pickling: bool + on_setattr_hook: _OnSetAttrType | None + field_transformer: Callable[[Attribute[Any]], Attribute[Any]] | None + + def __init__( + self, + is_exception: bool, + is_slotted: bool, + has_weakref_slot: bool, + is_frozen: bool, + # kw_only: ClassProps.KeywordOnly + kw_only: Any, + collected_fields_by_mro: bool, + added_init: bool, + added_repr: bool, + added_eq: bool, + added_ordering: bool, + # hashability: ClassProps.Hashability + hashability: Any, + added_match_args: bool, + added_str: bool, + added_pickling: bool, + on_setattr_hook: _OnSetAttrType, + field_transformer: Callable[[Attribute[Any]], Attribute[Any]], + ) -> None: ... + @property + def is_hashable(self) -> bool: ... + +def inspect(cls: type) -> ClassProps: ... diff --git a/venv/lib/python3.9/site-packages/attrs/converters.py b/venv/lib/python3.9/site-packages/attrs/converters.py new file mode 100644 index 0000000..7821f6c --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs/converters.py @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: MIT + +from attr.converters import * # noqa: F403 diff --git a/venv/lib/python3.9/site-packages/attrs/exceptions.py b/venv/lib/python3.9/site-packages/attrs/exceptions.py new file mode 100644 index 0000000..3323f9d --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs/exceptions.py @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: MIT + +from attr.exceptions import * # noqa: F403 diff --git a/venv/lib/python3.9/site-packages/attrs/filters.py b/venv/lib/python3.9/site-packages/attrs/filters.py new file mode 100644 index 0000000..3080f48 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs/filters.py @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: MIT + +from attr.filters import * # noqa: F403 diff --git a/venv/lib/python3.9/site-packages/attrs/py.typed b/venv/lib/python3.9/site-packages/attrs/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/attrs/setters.py b/venv/lib/python3.9/site-packages/attrs/setters.py new file mode 100644 index 0000000..f3d73bb --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs/setters.py @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: MIT + +from attr.setters import * # noqa: F403 diff --git a/venv/lib/python3.9/site-packages/attrs/validators.py b/venv/lib/python3.9/site-packages/attrs/validators.py new file mode 100644 index 0000000..037e124 --- /dev/null +++ b/venv/lib/python3.9/site-packages/attrs/validators.py @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: MIT + +from attr.validators import * # noqa: F403 diff --git a/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/LICENSE b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/LICENSE new file mode 100644 index 0000000..d1cc6f8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/LICENSE @@ -0,0 +1,376 @@ +Mozilla Public License Version 2.0 +================================== + +Copyright 2009-2024 Joshua Bronson. All rights reserved. + + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. diff --git a/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/METADATA b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/METADATA new file mode 100644 index 0000000..5356d23 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/METADATA @@ -0,0 +1,260 @@ +Metadata-Version: 2.1 +Name: bidict +Version: 0.23.1 +Summary: The bidirectional mapping library for Python. +Author-email: Joshua Bronson +License: MPL 2.0 +Project-URL: Changelog, https://bidict.readthedocs.io/changelog.html +Project-URL: Documentation, https://bidict.readthedocs.io +Project-URL: Funding, https://bidict.readthedocs.io/#sponsoring +Project-URL: Repository, https://github.com/jab/bidict +Keywords: bidict,bimap,bidirectional,dict,dictionary,mapping,collections +Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0) +Classifier: Operating System :: OS Independent +Classifier: Programming Language :: Python :: Implementation :: CPython +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Typing :: Typed +Requires-Python: >=3.8 +Description-Content-Type: text/x-rst +License-File: LICENSE + +.. role:: doc +.. (Forward declaration for the "doc" role that Sphinx defines for interop with renderers that + are often used to show this doc and that are unaware of Sphinx (GitHub.com, PyPI.org, etc.). + Use :doc: rather than :ref: here for better interop as well.) + + +bidict +====== + +*The bidirectional mapping library for Python.* + + +Status +------ + +.. image:: https://img.shields.io/pypi/v/bidict.svg + :target: https://pypi.org/project/bidict + :alt: Latest release + +.. image:: https://img.shields.io/readthedocs/bidict/main.svg + :target: https://bidict.readthedocs.io/en/main/ + :alt: Documentation + +.. image:: https://github.com/jab/bidict/actions/workflows/test.yml/badge.svg + :target: https://github.com/jab/bidict/actions/workflows/test.yml?query=branch%3Amain + :alt: GitHub Actions CI status + +.. image:: https://img.shields.io/pypi/l/bidict.svg + :target: https://raw.githubusercontent.com/jab/bidict/main/LICENSE + :alt: License + +.. image:: https://static.pepy.tech/badge/bidict + :target: https://pepy.tech/project/bidict + :alt: PyPI Downloads + +.. image:: https://img.shields.io/badge/GitHub-sponsor-ff69b4 + :target: https://github.com/sponsors/jab + :alt: Sponsor + + +Features +-------- + +- Mature: Depended on by + Google, Venmo, CERN, Baidu, Tencent, + and teams across the world since 2009 + +- Familiar, Pythonic APIs + that are carefully designed for + safety, simplicity, flexibility, and ergonomics + +- Lightweight, with no runtime dependencies + outside Python's standard library + +- Implemented in + concise, well-factored, fully type-hinted Python code + that is optimized for running efficiently + as well as for long-term maintenance and stability + (as well as `joy <#learning-from-bidict>`__) + +- Extensively `documented `__ + +- 100% test coverage + running continuously across all supported Python versions + (including property-based tests and benchmarks) + + +Installation +------------ + +``pip install bidict`` + + +Quick Start +----------- + +.. code:: python + + >>> from bidict import bidict + >>> element_by_symbol = bidict({'H': 'hydrogen'}) + >>> element_by_symbol['H'] + 'hydrogen' + >>> element_by_symbol.inverse['hydrogen'] + 'H' + + +For more usage documentation, +head to the :doc:`intro` [#fn-intro]_ +and proceed from there. + + +Enterprise Support +------------------ + +Enterprise-level support for bidict can be obtained via the +`Tidelift subscription `__ +or by `contacting me directly `__. + +I have a US-based LLC set up for invoicing, +and I have 15+ years of professional experience +delivering software and support to companies successfully. + +You can also sponsor my work through several platforms, including GitHub Sponsors. +See the `Sponsoring <#sponsoring>`__ section below for details, +including rationale and examples of companies +supporting the open source projects they depend on. + + +Voluntary Community Support +--------------------------- + +Please search through already-asked questions and answers +in `GitHub Discussions `__ +and the `issue tracker `__ +in case your question has already been addressed. + +Otherwise, please feel free to +`start a new discussion `__ +or `create a new issue `__ on GitHub +for voluntary community support. + + +Notice of Usage +--------------- + +If you use bidict, +and especially if your usage or your organization is significant in some way, +please let me know in any of the following ways: + +- `star bidict on GitHub `__ +- post in `GitHub Discussions `__ +- `email me `__ + + +Changelog +--------- + +For bidict release notes, see the :doc:`changelog`. [#fn-changelog]_ + + +Release Notifications +--------------------- + +.. duplicated in CHANGELOG.rst: + (Would use `.. include::` but GitHub's renderer doesn't support it.) + +Watch `bidict releases on GitHub `__ +to be notified when new versions of bidict are published. +Click the "Watch" dropdown, choose "Custom", and then choose "Releases". + + +Learning from bidict +-------------------- + +One of the best things about bidict +is that it touches a surprising number of +interesting Python corners, +especially given its small size and scope. + +Check out :doc:`learning-from-bidict` [#fn-learning]_ +if you're interested in learning more. + + +Contributing +------------ + +I have been bidict's sole maintainer +and `active contributor `__ +since I started the project ~15 years ago. + +Your help would be most welcome! +See the :doc:`contributors-guide` [#fn-contributing]_ +for more information. + + +Sponsoring +---------- + +.. duplicated in CONTRIBUTING.rst + (Would use `.. include::` but GitHub's renderer doesn't support it.) + +.. image:: https://img.shields.io/badge/GitHub-sponsor-ff69b4 + :target: https://github.com/sponsors/jab + :alt: Sponsor through GitHub + +Bidict is the product of thousands of hours of my unpaid work +over the 15+ years that I've been the sole maintainer. + +If bidict has helped you or your company accomplish your work, +please sponsor my work through one of the following, +and/or ask your company to do the same: + +- `GitHub `__ +- `PayPal `__ +- `Tidelift `__ +- `thanks.dev `__ +- `Gumroad `__ +- `a support engagement with my LLC <#enterprise-support>`__ + +If you're not sure which to use, GitHub is an easy option, +especially if you already have a GitHub account. +Just choose a monthly or one-time amount, and GitHub handles everything else. +Your bidict sponsorship on GitHub will automatically go +on the same regular bill as any other GitHub charges you pay for. +PayPal is another easy option for one-time contributions. + +See the following for rationale and examples of companies +supporting the open source projects they depend on +in this manner: + +- ``__ +- ``__ +- ``__ + +.. - ``__ +.. - ``__ +.. - ``__ + + +Finding Documentation +--------------------- + +If you're viewing this on ``__, +note that multiple versions of the documentation are available, +and you can choose a different version using the popup menu at the bottom-right. +Please make sure you're viewing the version of the documentation +that corresponds to the version of bidict you'd like to use. + +If you're viewing this on GitHub, PyPI, or some other place +that can't render and link this documentation properly +and are seeing broken links, +try these alternate links instead: + +.. [#fn-intro] ``__ | ``__ + +.. [#fn-changelog] ``__ | ``__ + +.. [#fn-learning] ``__ | ``__ + +.. [#fn-contributing] ``__ | ``__ diff --git a/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/RECORD b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/RECORD new file mode 100644 index 0000000..840671d --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/RECORD @@ -0,0 +1,31 @@ +bidict-0.23.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +bidict-0.23.1.dist-info/LICENSE,sha256=8_U63OyqSNc6ZuI4-lupBstBh2eDtF0ooTRrMULuvZo,16784 +bidict-0.23.1.dist-info/METADATA,sha256=2ovIRm6Df8gdwAMekGqkeBSF5TWj2mv1jpmh4W4ks7o,8704 +bidict-0.23.1.dist-info/RECORD,, +bidict-0.23.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92 +bidict-0.23.1.dist-info/top_level.txt,sha256=WuQO02jp0ODioS7sJoaHg3JJ5_3h6Sxo9RITvNGPYmc,7 +bidict/__init__.py,sha256=pL87KsrDpBsl3AG09LQk1t1TSFt0hIJVYa2POMdErN8,4398 +bidict/__pycache__/__init__.cpython-39.pyc,, +bidict/__pycache__/_abc.cpython-39.pyc,, +bidict/__pycache__/_base.cpython-39.pyc,, +bidict/__pycache__/_bidict.cpython-39.pyc,, +bidict/__pycache__/_dup.cpython-39.pyc,, +bidict/__pycache__/_exc.cpython-39.pyc,, +bidict/__pycache__/_frozen.cpython-39.pyc,, +bidict/__pycache__/_iter.cpython-39.pyc,, +bidict/__pycache__/_orderedbase.cpython-39.pyc,, +bidict/__pycache__/_orderedbidict.cpython-39.pyc,, +bidict/__pycache__/_typing.cpython-39.pyc,, +bidict/__pycache__/metadata.cpython-39.pyc,, +bidict/_abc.py,sha256=SMCNdCsmqSWg0OGnMZtnnXY8edjXcyZup5tva4HBm_c,3172 +bidict/_base.py,sha256=YiauA0aj52fNB6cfZ4gBt6OV-CRQoZm7WVhuw1nT-Cg,24439 +bidict/_bidict.py,sha256=Sr-RoEzWOaxpnDRbDJ7ngaGRIsyGnqZgzvR-NyT4jl4,6923 +bidict/_dup.py,sha256=YAn5gWA6lwMBA5A6ebVF19UTZyambGS8WxmbK4TN1Ww,2079 +bidict/_exc.py,sha256=HnD_WgteI5PrXa3zBx9RUiGlgnZTO6CF4nIU9p3-njk,1066 +bidict/_frozen.py,sha256=p4TaRHKeyTs0KmlpwSnZiTlN_CR4J97kAgBpNdZHQMs,1771 +bidict/_iter.py,sha256=zVUx-hJ1M4YuJROoFWRjPKlcaFnyo1AAuRpOaKAFhOQ,1530 +bidict/_orderedbase.py,sha256=M7v5rHa7vrym9Z3DxQBFQDxjnrr39Z8p26V0c1PggoE,8942 +bidict/_orderedbidict.py,sha256=pPnmC19mIISrj8_yjnb-4r_ti1B74tD5eTd08DETNuI,7080 +bidict/_typing.py,sha256=AylMZpBhEFTQegfziPSxfKkKLk7oUsH6o3awDIg2z_k,1289 +bidict/metadata.py,sha256=BMIKu6fBY_OKeV_q48EpumE7MdmFw8rFcdaUz8kcIYk,573 +bidict/py.typed,sha256=RJao5SVFYIp8IfbxhL_SpZkBQYe3XXzPlobSRdh4B_c,16 diff --git a/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/WHEEL b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/WHEEL new file mode 100644 index 0000000..98c0d20 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: bdist_wheel (0.42.0) +Root-Is-Purelib: true +Tag: py3-none-any + diff --git a/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/top_level.txt new file mode 100644 index 0000000..6ff5b04 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict-0.23.1.dist-info/top_level.txt @@ -0,0 +1 @@ +bidict diff --git a/venv/lib/python3.9/site-packages/bidict/__init__.py b/venv/lib/python3.9/site-packages/bidict/__init__.py new file mode 100644 index 0000000..07e5ba5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/__init__.py @@ -0,0 +1,103 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +# ============================================================================ +# * Welcome to the bidict source code * +# ============================================================================ + +# Reading through the code? You'll find a "Code review nav" comment like the one +# below at the top and bottom of the key source files. Follow these cues to take +# a path through the code that's optimized for familiarizing yourself with it. +# +# If you're not reading this on https://github.com/jab/bidict already, go there +# to ensure you have the latest version of the code. While there, you can also +# star the project, watch it for updates, fork the code, and submit an issue or +# pull request with any proposed changes. More information can be found linked +# from README.rst, which is also shown on https://github.com/jab/bidict. + +# * Code review nav * +# ============================================================================ +# Current: __init__.py Next: _abc.py → +# ============================================================================ + + +"""The bidirectional mapping library for Python. + +---- + +bidict by example: + +.. code-block:: python + + >>> from bidict import bidict + >>> element_by_symbol = bidict({'H': 'hydrogen'}) + >>> element_by_symbol['H'] + 'hydrogen' + >>> element_by_symbol.inverse['hydrogen'] + 'H' + + +Please see https://github.com/jab/bidict for the most up-to-date code and +https://bidict.readthedocs.io for the most up-to-date documentation +if you are reading this elsewhere. + +---- + +.. :copyright: (c) 2009-2024 Joshua Bronson. +.. :license: MPLv2. See LICENSE for details. +""" + +# Use private aliases to not re-export these publicly (for Sphinx automodule with imported-members). +from __future__ import annotations as _annotations + +from contextlib import suppress as _suppress + +from ._abc import BidirectionalMapping as BidirectionalMapping +from ._abc import MutableBidirectionalMapping as MutableBidirectionalMapping +from ._base import BidictBase as BidictBase +from ._base import BidictKeysView as BidictKeysView +from ._base import GeneratedBidictInverse as GeneratedBidictInverse +from ._bidict import MutableBidict as MutableBidict +from ._bidict import bidict as bidict +from ._dup import DROP_NEW as DROP_NEW +from ._dup import DROP_OLD as DROP_OLD +from ._dup import ON_DUP_DEFAULT as ON_DUP_DEFAULT +from ._dup import ON_DUP_DROP_OLD as ON_DUP_DROP_OLD +from ._dup import ON_DUP_RAISE as ON_DUP_RAISE +from ._dup import RAISE as RAISE +from ._dup import OnDup as OnDup +from ._dup import OnDupAction as OnDupAction +from ._exc import BidictException as BidictException +from ._exc import DuplicationError as DuplicationError +from ._exc import KeyAndValueDuplicationError as KeyAndValueDuplicationError +from ._exc import KeyDuplicationError as KeyDuplicationError +from ._exc import ValueDuplicationError as ValueDuplicationError +from ._frozen import frozenbidict as frozenbidict +from ._iter import inverted as inverted +from ._orderedbase import OrderedBidictBase as OrderedBidictBase +from ._orderedbidict import OrderedBidict as OrderedBidict +from .metadata import __author__ as __author__ +from .metadata import __copyright__ as __copyright__ +from .metadata import __description__ as __description__ +from .metadata import __license__ as __license__ +from .metadata import __url__ as __url__ +from .metadata import __version__ as __version__ + + +# Set __module__ of re-exported classes to the 'bidict' top-level module, so that e.g. +# 'bidict.bidict' shows up as 'bidict.bidict` rather than 'bidict._bidict.bidict'. +for _obj in tuple(locals().values()): # pragma: no cover + if not getattr(_obj, '__module__', '').startswith('bidict.'): + continue + with _suppress(AttributeError): + _obj.__module__ = 'bidict' + + +# * Code review nav * +# ============================================================================ +# Current: __init__.py Next: _abc.py → +# ============================================================================ diff --git a/venv/lib/python3.9/site-packages/bidict/_abc.py b/venv/lib/python3.9/site-packages/bidict/_abc.py new file mode 100644 index 0000000..d4a30aa --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_abc.py @@ -0,0 +1,79 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +# * Code review nav * +# (see comments in __init__.py) +# ============================================================================ +# ← Prev: __init__.py Current: _abc.py Next: _base.py → +# ============================================================================ + + +"""Provide the :class:`BidirectionalMapping` abstract base class.""" + +from __future__ import annotations + +import typing as t +from abc import abstractmethod + +from ._typing import KT +from ._typing import VT + + +class BidirectionalMapping(t.Mapping[KT, VT]): + """Abstract base class for bidirectional mapping types. + + Extends :class:`collections.abc.Mapping` primarily by adding the + (abstract) :attr:`inverse` property, + which implementers of :class:`BidirectionalMapping` + should override to return a reference to the inverse + :class:`BidirectionalMapping` instance. + """ + + __slots__ = () + + @property + @abstractmethod + def inverse(self) -> BidirectionalMapping[VT, KT]: + """The inverse of this bidirectional mapping instance. + + *See also* :attr:`bidict.BidictBase.inverse`, :attr:`bidict.BidictBase.inv` + + :raises NotImplementedError: Meant to be overridden in subclasses. + """ + # The @abstractmethod decorator prevents subclasses from being instantiated unless they + # override this method. But an overriding implementation may merely return super().inverse, + # in which case this implementation is used. Raise NotImplementedError to indicate that + # subclasses must actually provide their own implementation. + raise NotImplementedError + + def __inverted__(self) -> t.Iterator[tuple[VT, KT]]: + """Get an iterator over the items in :attr:`inverse`. + + This is functionally equivalent to iterating over the items in the + forward mapping and inverting each one on the fly, but this provides a + more efficient implementation: Assuming the already-inverted items + are stored in :attr:`inverse`, just return an iterator over them directly. + + Providing this default implementation enables external functions, + particularly :func:`~bidict.inverted`, to use this optimized + implementation when available, instead of having to invert on the fly. + + *See also* :func:`bidict.inverted` + """ + return iter(self.inverse.items()) + + +class MutableBidirectionalMapping(BidirectionalMapping[KT, VT], t.MutableMapping[KT, VT]): + """Abstract base class for mutable bidirectional mapping types.""" + + __slots__ = () + + +# * Code review nav * +# ============================================================================ +# ← Prev: __init__.py Current: _abc.py Next: _base.py → +# ============================================================================ diff --git a/venv/lib/python3.9/site-packages/bidict/_base.py b/venv/lib/python3.9/site-packages/bidict/_base.py new file mode 100644 index 0000000..848a376 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_base.py @@ -0,0 +1,556 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +# * Code review nav * +# (see comments in __init__.py) +# ============================================================================ +# ← Prev: _abc.py Current: _base.py Next: _frozen.py → +# ============================================================================ + + +"""Provide :class:`BidictBase`.""" + +from __future__ import annotations + +import typing as t +import weakref +from itertools import starmap +from operator import eq +from types import MappingProxyType + +from ._abc import BidirectionalMapping +from ._dup import DROP_NEW +from ._dup import DROP_OLD +from ._dup import ON_DUP_DEFAULT +from ._dup import RAISE +from ._dup import OnDup +from ._exc import DuplicationError +from ._exc import KeyAndValueDuplicationError +from ._exc import KeyDuplicationError +from ._exc import ValueDuplicationError +from ._iter import inverted +from ._iter import iteritems +from ._typing import KT +from ._typing import MISSING +from ._typing import OKT +from ._typing import OVT +from ._typing import VT +from ._typing import Maplike +from ._typing import MapOrItems + + +OldKV = t.Tuple[OKT[KT], OVT[VT]] +DedupResult = t.Optional[OldKV[KT, VT]] +Unwrites = t.List[t.Tuple[t.Any, ...]] +BT = t.TypeVar('BT', bound='BidictBase[t.Any, t.Any]') + + +class BidictKeysView(t.KeysView[KT], t.ValuesView[KT]): + """Since the keys of a bidict are the values of its inverse (and vice versa), + the :class:`~collections.abc.ValuesView` result of calling *bi.values()* + is also a :class:`~collections.abc.KeysView` of *bi.inverse*. + """ + + +class BidictBase(BidirectionalMapping[KT, VT]): + """Base class implementing :class:`BidirectionalMapping`.""" + + #: The default :class:`~bidict.OnDup` + #: that governs behavior when a provided item + #: duplicates the key or value of other item(s). + #: + #: *See also* + #: :ref:`basic-usage:Values Must Be Unique` (https://bidict.rtfd.io/basic-usage.html#values-must-be-unique), + #: :doc:`extending` (https://bidict.rtfd.io/extending.html) + on_dup = ON_DUP_DEFAULT + + _fwdm: t.MutableMapping[KT, VT] #: the backing forward mapping (*key* → *val*) + _invm: t.MutableMapping[VT, KT] #: the backing inverse mapping (*val* → *key*) + + # Use Any rather than KT/VT in the following to avoid "ClassVar cannot contain type variables" errors: + _fwdm_cls: t.ClassVar[type[t.MutableMapping[t.Any, t.Any]]] = dict #: class of the backing forward mapping + _invm_cls: t.ClassVar[type[t.MutableMapping[t.Any, t.Any]]] = dict #: class of the backing inverse mapping + + #: The class of the inverse bidict instance. + _inv_cls: t.ClassVar[type[BidictBase[t.Any, t.Any]]] + + def __init_subclass__(cls) -> None: + super().__init_subclass__() + cls._init_class() + + @classmethod + def _init_class(cls) -> None: + cls._ensure_inv_cls() + cls._set_reversed() + + __reversed__: t.ClassVar[t.Any] + + @classmethod + def _set_reversed(cls) -> None: + """Set __reversed__ for subclasses that do not set it explicitly + according to whether backing mappings are reversible. + """ + if cls is not BidictBase: + resolved = cls.__reversed__ + overridden = resolved is not BidictBase.__reversed__ + if overridden: # E.g. OrderedBidictBase, OrderedBidict + return + backing_reversible = all(issubclass(i, t.Reversible) for i in (cls._fwdm_cls, cls._invm_cls)) + cls.__reversed__ = _fwdm_reversed if backing_reversible else None + + @classmethod + def _ensure_inv_cls(cls) -> None: + """Ensure :attr:`_inv_cls` is set, computing it dynamically if necessary. + + All subclasses provided in :mod:`bidict` are their own inverse classes, + i.e., their backing forward and inverse mappings are both the same type, + but users may define subclasses where this is not the case. + This method ensures that the inverse class is computed correctly regardless. + + See: :ref:`extending:Dynamic Inverse Class Generation` + (https://bidict.rtfd.io/extending.html#dynamic-inverse-class-generation) + """ + # This _ensure_inv_cls() method is (indirectly) corecursive with _make_inv_cls() below + # in the case that we need to dynamically generate the inverse class: + # 1. _ensure_inv_cls() calls cls._make_inv_cls() + # 2. cls._make_inv_cls() calls type(..., (cls, ...), ...) to dynamically generate inv_cls + # 3. Our __init_subclass__ hook (see above) is automatically called on inv_cls + # 4. inv_cls.__init_subclass__() calls inv_cls._ensure_inv_cls() + # 5. inv_cls._ensure_inv_cls() resolves to this implementation + # (inv_cls deliberately does not override this), so we're back where we started. + # But since the _make_inv_cls() call will have set inv_cls.__dict__._inv_cls, + # just check if it's already set before calling _make_inv_cls() to prevent infinite recursion. + if getattr(cls, '__dict__', {}).get('_inv_cls'): # Don't assume cls.__dict__ (e.g. mypyc native class) + return + cls._inv_cls = cls._make_inv_cls() + + @classmethod + def _make_inv_cls(cls: type[BT]) -> type[BT]: + diff = cls._inv_cls_dict_diff() + cls_is_own_inv = all(getattr(cls, k, MISSING) == v for (k, v) in diff.items()) + if cls_is_own_inv: + return cls + # Suppress auto-calculation of _inv_cls's _inv_cls since we know it already. + # Works with the guard in BidictBase._ensure_inv_cls() to prevent infinite recursion. + diff['_inv_cls'] = cls + inv_cls = type(f'{cls.__name__}Inv', (cls, GeneratedBidictInverse), diff) + inv_cls.__module__ = cls.__module__ + return t.cast(t.Type[BT], inv_cls) + + @classmethod + def _inv_cls_dict_diff(cls) -> dict[str, t.Any]: + return { + '_fwdm_cls': cls._invm_cls, + '_invm_cls': cls._fwdm_cls, + } + + def __init__(self, arg: MapOrItems[KT, VT] = (), /, **kw: VT) -> None: + """Make a new bidirectional mapping. + The signature behaves like that of :class:`dict`. + ktems passed via positional arg are processed first, + followed by any items passed via keyword argument. + Any duplication encountered along the way + is handled as per :attr:`on_dup`. + """ + self._fwdm = self._fwdm_cls() + self._invm = self._invm_cls() + self._update(arg, kw, rollback=False) + + # If Python ever adds support for higher-kinded types, `inverse` could use them, e.g. + # def inverse(self: BT[KT, VT]) -> BT[VT, KT]: + # Ref: https://github.com/python/typing/issues/548#issuecomment-621571821 + @property + def inverse(self) -> BidictBase[VT, KT]: + """The inverse of this bidirectional mapping instance.""" + # When `bi.inverse` is called for the first time, this method + # computes the inverse instance, stores it for subsequent use, and then + # returns it. It also stores a reference on `bi.inverse` back to `bi`, + # but uses a weakref to avoid creating a reference cycle. Strong references + # to inverse instances are stored in ._inv, and weak references are stored + # in ._invweak. + + # First check if a strong reference is already stored. + inv: BidictBase[VT, KT] | None = getattr(self, '_inv', None) + if inv is not None: + return inv + # Next check if a weak reference is already stored. + invweak = getattr(self, '_invweak', None) + if invweak is not None: + inv = invweak() # Try to resolve a strong reference and return it. + if inv is not None: + return inv + # No luck. Compute the inverse reference and store it for subsequent use. + inv = self._make_inverse() + self._inv: BidictBase[VT, KT] | None = inv + self._invweak: weakref.ReferenceType[BidictBase[VT, KT]] | None = None + # Also store a weak reference back to `instance` on its inverse instance, so that + # the second `.inverse` access in `bi.inverse.inverse` hits the cached weakref. + inv._inv = None + inv._invweak = weakref.ref(self) + # In e.g. `bidict().inverse.inverse`, this design ensures that a strong reference + # back to the original instance is retained before its refcount drops to zero, + # avoiding an unintended potential deallocation. + return inv + + def _make_inverse(self) -> BidictBase[VT, KT]: + inv: BidictBase[VT, KT] = self._inv_cls() + inv._fwdm = self._invm + inv._invm = self._fwdm + return inv + + @property + def inv(self) -> BidictBase[VT, KT]: + """Alias for :attr:`inverse`.""" + return self.inverse + + def __repr__(self) -> str: + """See :func:`repr`.""" + clsname = self.__class__.__name__ + items = dict(self.items()) if self else '' + return f'{clsname}({items})' + + def values(self) -> BidictKeysView[VT]: + """A set-like object providing a view on the contained values. + + Since the values of a bidict are equivalent to the keys of its inverse, + this method returns a set-like object for this bidict's values + rather than just a collections.abc.ValuesView. + This object supports set operations like union and difference, + and constant- rather than linear-time containment checks, + and is no more expensive to provide than the less capable + collections.abc.ValuesView would be. + + See :meth:`keys` for more information. + """ + return t.cast(BidictKeysView[VT], self.inverse.keys()) + + def keys(self) -> t.KeysView[KT]: + """A set-like object providing a view on the contained keys. + + When *b._fwdm* is a :class:`dict`, *b.keys()* returns a + *dict_keys* object that behaves exactly the same as + *collections.abc.KeysView(b)*, except for + + - offering better performance + + - being reversible on Python 3.8+ + + - having a .mapping attribute in Python 3.10+ + that exposes a mappingproxy to *b._fwdm*. + """ + fwdm, fwdm_cls = self._fwdm, self._fwdm_cls + return fwdm.keys() if fwdm_cls is dict else BidictKeysView(self) + + def items(self) -> t.ItemsView[KT, VT]: + """A set-like object providing a view on the contained items. + + When *b._fwdm* is a :class:`dict`, *b.items()* returns a + *dict_items* object that behaves exactly the same as + *collections.abc.ItemsView(b)*, except for: + + - offering better performance + + - being reversible on Python 3.8+ + + - having a .mapping attribute in Python 3.10+ + that exposes a mappingproxy to *b._fwdm*. + """ + return self._fwdm.items() if self._fwdm_cls is dict else super().items() + + # The inherited collections.abc.Mapping.__contains__() method is implemented by doing a `try` + # `except KeyError` around `self[key]`. The following implementation is much faster, + # especially in the missing case. + def __contains__(self, key: t.Any) -> bool: + """True if the mapping contains the specified key, else False.""" + return key in self._fwdm + + # The inherited collections.abc.Mapping.__eq__() method is implemented in terms of an inefficient + # `dict(self.items()) == dict(other.items())` comparison, so override it with a + # more efficient implementation. + def __eq__(self, other: object) -> bool: + """*x.__eq__(other) ⟺ x == other* + + Equivalent to *dict(x.items()) == dict(other.items())* + but more efficient. + + Note that :meth:`bidict's __eq__() ` implementation + is inherited by subclasses, + in particular by the ordered bidict subclasses, + so even with ordered bidicts, + :ref:`== comparison is order-insensitive ` + (https://bidict.rtfd.io/other-bidict-types.html#eq-is-order-insensitive). + + *See also* :meth:`equals_order_sensitive` + """ + if isinstance(other, t.Mapping): + return self._fwdm.items() == other.items() + # Ref: https://docs.python.org/3/library/constants.html#NotImplemented + return NotImplemented + + def equals_order_sensitive(self, other: object) -> bool: + """Order-sensitive equality check. + + *See also* :ref:`eq-order-insensitive` + (https://bidict.rtfd.io/other-bidict-types.html#eq-is-order-insensitive) + """ + if not isinstance(other, t.Mapping) or len(self) != len(other): + return False + return all(starmap(eq, zip(self.items(), other.items()))) + + def _dedup(self, key: KT, val: VT, on_dup: OnDup) -> DedupResult[KT, VT]: + """Check *key* and *val* for any duplication in self. + + Handle any duplication as per the passed in *on_dup*. + + If (key, val) is already present, return None + since writing (key, val) would be a no-op. + + If duplication is found and the corresponding :class:`~bidict.OnDupAction` is + :attr:`~bidict.DROP_NEW`, return None. + + If duplication is found and the corresponding :class:`~bidict.OnDupAction` is + :attr:`~bidict.RAISE`, raise the appropriate exception. + + If duplication is found and the corresponding :class:`~bidict.OnDupAction` is + :attr:`~bidict.DROP_OLD`, or if no duplication is found, + return *(oldkey, oldval)*. + """ + fwdm, invm = self._fwdm, self._invm + oldval: OVT[VT] = fwdm.get(key, MISSING) + oldkey: OKT[KT] = invm.get(val, MISSING) + isdupkey, isdupval = oldval is not MISSING, oldkey is not MISSING + if isdupkey and isdupval: + if key == oldkey: + assert val == oldval + # (key, val) duplicates an existing item -> no-op. + return None + # key and val each duplicate a different existing item. + if on_dup.val is RAISE: + raise KeyAndValueDuplicationError(key, val) + if on_dup.val is DROP_NEW: + return None + assert on_dup.val is DROP_OLD + # Fall through to the return statement on the last line. + elif isdupkey: + if on_dup.key is RAISE: + raise KeyDuplicationError(key) + if on_dup.key is DROP_NEW: + return None + assert on_dup.key is DROP_OLD + # Fall through to the return statement on the last line. + elif isdupval: + if on_dup.val is RAISE: + raise ValueDuplicationError(val) + if on_dup.val is DROP_NEW: + return None + assert on_dup.val is DROP_OLD + # Fall through to the return statement on the last line. + # else neither isdupkey nor isdupval. + return oldkey, oldval + + def _write(self, newkey: KT, newval: VT, oldkey: OKT[KT], oldval: OVT[VT], unwrites: Unwrites | None) -> None: + """Insert (newkey, newval), extending *unwrites* with associated inverse operations if provided. + + *oldkey* and *oldval* are as returned by :meth:`_dedup`. + + If *unwrites* is not None, it is extended with the inverse operations necessary to undo the write. + This design allows :meth:`_update` to roll back a partially applied update that fails part-way through + when necessary. + + This design also allows subclasses that require additional operations to easily extend this implementation. + For example, :class:`bidict.OrderedBidictBase` calls this inherited implementation, and then extends *unwrites* + with additional operations needed to keep its internal linked list nodes consistent with its items' order + as changes are made. + """ + fwdm, invm = self._fwdm, self._invm + fwdm_set, invm_set = fwdm.__setitem__, invm.__setitem__ + fwdm_del, invm_del = fwdm.__delitem__, invm.__delitem__ + # Always perform the following writes regardless of duplication. + fwdm_set(newkey, newval) + invm_set(newval, newkey) + if oldval is MISSING and oldkey is MISSING: # no key or value duplication + # {0: 1, 2: 3} | {4: 5} => {0: 1, 2: 3, 4: 5} + if unwrites is not None: + unwrites.extend(( + (fwdm_del, newkey), + (invm_del, newval), + )) + elif oldval is not MISSING and oldkey is not MISSING: # key and value duplication across two different items + # {0: 1, 2: 3} | {0: 3} => {0: 3} + fwdm_del(oldkey) + invm_del(oldval) + if unwrites is not None: + unwrites.extend(( + (fwdm_set, newkey, oldval), + (invm_set, oldval, newkey), + (fwdm_set, oldkey, newval), + (invm_set, newval, oldkey), + )) + elif oldval is not MISSING: # just key duplication + # {0: 1, 2: 3} | {2: 4} => {0: 1, 2: 4} + invm_del(oldval) + if unwrites is not None: + unwrites.extend(( + (fwdm_set, newkey, oldval), + (invm_set, oldval, newkey), + (invm_del, newval), + )) + else: + assert oldkey is not MISSING # just value duplication + # {0: 1, 2: 3} | {4: 3} => {0: 1, 4: 3} + fwdm_del(oldkey) + if unwrites is not None: + unwrites.extend(( + (fwdm_set, oldkey, newval), + (invm_set, newval, oldkey), + (fwdm_del, newkey), + )) + + def _update( + self, + arg: MapOrItems[KT, VT], + kw: t.Mapping[str, VT] = MappingProxyType({}), + *, + rollback: bool | None = None, + on_dup: OnDup | None = None, + ) -> None: + """Update with the items from *arg* and *kw*, maybe failing and rolling back as per *on_dup* and *rollback*.""" + # Note: We must process input in a single pass, since arg may be a generator. + if not isinstance(arg, (t.Iterable, Maplike)): + raise TypeError(f"'{arg.__class__.__name__}' object is not iterable") + if not arg and not kw: + return + if on_dup is None: + on_dup = self.on_dup + if rollback is None: + rollback = RAISE in on_dup + + # Fast path when we're empty and updating only from another bidict (i.e. no dup vals in new items). + if not self and not kw and isinstance(arg, BidictBase): + self._init_from(arg) + return + + # Fast path when we're adding more items than we contain already and rollback is enabled: + # Update a copy of self with rollback disabled. Fail if that fails, otherwise become the copy. + if rollback and isinstance(arg, t.Sized) and len(arg) + len(kw) > len(self): + tmp = self.copy() + tmp._update(arg, kw, rollback=False, on_dup=on_dup) + self._init_from(tmp) + return + + # In all other cases, benchmarking has indicated that the update is best implemented as follows: + # For each new item, perform a dup check (raising if necessary), and apply the associated writes we need to + # perform on our backing _fwdm and _invm mappings. If rollback is enabled, also compute the associated unwrites + # as we go. If the update results in a DuplicationError and rollback is enabled, apply the accumulated unwrites + # before raising, to ensure that we fail clean. + write = self._write + unwrites: Unwrites | None = [] if rollback else None + for key, val in iteritems(arg, **kw): + try: + dedup_result = self._dedup(key, val, on_dup) + except DuplicationError: + if unwrites is not None: + for fn, *args in reversed(unwrites): + fn(*args) + raise + if dedup_result is not None: + write(key, val, *dedup_result, unwrites=unwrites) + + def __copy__(self: BT) -> BT: + """Used for the copy protocol. See the :mod:`copy` module.""" + return self.copy() + + def copy(self: BT) -> BT: + """Make a (shallow) copy of this bidict.""" + # Could just `return self.__class__(self)` here, but the below is faster. The former + # would copy this bidict's items into a new instance one at a time (checking for duplication + # for each item), whereas the below copies from the backing mappings all at once, and foregoes + # item-by-item duplication checking since the backing mappings have been checked already. + return self._from_other(self.__class__, self) + + @staticmethod + def _from_other(bt: type[BT], other: MapOrItems[KT, VT], inv: bool = False) -> BT: + """Fast, private constructor based on :meth:`_init_from`. + + If *inv* is true, return the inverse of the instance instead of the instance itself. + (Useful for pickling with dynamically-generated inverse classes -- see :meth:`__reduce__`.) + """ + inst = bt() + inst._init_from(other) + return t.cast(BT, inst.inverse) if inv else inst + + def _init_from(self, other: MapOrItems[KT, VT]) -> None: + """Fast init from *other*, bypassing item-by-item duplication checking.""" + self._fwdm.clear() + self._invm.clear() + self._fwdm.update(other) + # If other is a bidict, use its existing backing inverse mapping, otherwise + # other could be a generator that's now exhausted, so invert self._fwdm on the fly. + inv = other.inverse if isinstance(other, BidictBase) else inverted(self._fwdm) + self._invm.update(inv) + + # other's type is Mapping rather than Maplike since bidict() | SupportsKeysAndGetItem({}) + # raises a TypeError, just like dict() | SupportsKeysAndGetItem({}) does. + def __or__(self: BT, other: t.Mapping[KT, VT]) -> BT: + """Return self|other.""" + if not isinstance(other, t.Mapping): + return NotImplemented + new = self.copy() + new._update(other, rollback=False) + return new + + def __ror__(self: BT, other: t.Mapping[KT, VT]) -> BT: + """Return other|self.""" + if not isinstance(other, t.Mapping): + return NotImplemented + new = self.__class__(other) + new._update(self, rollback=False) + return new + + def __len__(self) -> int: + """The number of contained items.""" + return len(self._fwdm) + + def __iter__(self) -> t.Iterator[KT]: + """Iterator over the contained keys.""" + return iter(self._fwdm) + + def __getitem__(self, key: KT) -> VT: + """*x.__getitem__(key) ⟺ x[key]*""" + return self._fwdm[key] + + def __reduce__(self) -> tuple[t.Any, ...]: + """Return state information for pickling.""" + cls = self.__class__ + inst: t.Mapping[t.Any, t.Any] = self + # If this bidict's class is dynamically generated, pickle the inverse instead, whose (presumably not + # dynamically generated) class the caller is more likely to have a reference to somewhere in sys.modules + # that pickle can discover. + if should_invert := isinstance(self, GeneratedBidictInverse): + cls = self._inv_cls + inst = self.inverse + return self._from_other, (cls, dict(inst), should_invert) + + +# See BidictBase._set_reversed() above. +def _fwdm_reversed(self: BidictBase[KT, t.Any]) -> t.Iterator[KT]: + """Iterator over the contained keys in reverse order.""" + assert isinstance(self._fwdm, t.Reversible) + return reversed(self._fwdm) + + +BidictBase._init_class() + + +class GeneratedBidictInverse: + """Base class for dynamically-generated inverse bidict classes.""" + + +# * Code review nav * +# ============================================================================ +# ← Prev: _abc.py Current: _base.py Next: _frozen.py → +# ============================================================================ diff --git a/venv/lib/python3.9/site-packages/bidict/_bidict.py b/venv/lib/python3.9/site-packages/bidict/_bidict.py new file mode 100644 index 0000000..94dd3db --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_bidict.py @@ -0,0 +1,194 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +# * Code review nav * +# (see comments in __init__.py) +# ============================================================================ +# ← Prev: _frozen.py Current: _bidict.py Next: _orderedbase.py → +# ============================================================================ + + +"""Provide :class:`MutableBidict` and :class:`bidict`.""" + +from __future__ import annotations + +import typing as t + +from ._abc import MutableBidirectionalMapping +from ._base import BidictBase +from ._dup import ON_DUP_DROP_OLD +from ._dup import ON_DUP_RAISE +from ._dup import OnDup +from ._typing import DT +from ._typing import KT +from ._typing import MISSING +from ._typing import ODT +from ._typing import VT +from ._typing import MapOrItems + + +class MutableBidict(BidictBase[KT, VT], MutableBidirectionalMapping[KT, VT]): + """Base class for mutable bidirectional mappings.""" + + if t.TYPE_CHECKING: + + @property + def inverse(self) -> MutableBidict[VT, KT]: ... + + @property + def inv(self) -> MutableBidict[VT, KT]: ... + + def _pop(self, key: KT) -> VT: + val = self._fwdm.pop(key) + del self._invm[val] + return val + + def __delitem__(self, key: KT) -> None: + """*x.__delitem__(y) ⟺ del x[y]*""" + self._pop(key) + + def __setitem__(self, key: KT, val: VT) -> None: + """Set the value for *key* to *val*. + + If *key* is already associated with *val*, this is a no-op. + + If *key* is already associated with a different value, + the old value will be replaced with *val*, + as with dict's :meth:`__setitem__`. + + If *val* is already associated with a different key, + an exception is raised + to protect against accidental removal of the key + that's currently associated with *val*. + + Use :meth:`put` instead if you want to specify different behavior in + the case that the provided key or value duplicates an existing one. + Or use :meth:`forceput` to unconditionally associate *key* with *val*, + replacing any existing items as necessary to preserve uniqueness. + + :raises bidict.ValueDuplicationError: if *val* duplicates that of an + existing item. + + :raises bidict.KeyAndValueDuplicationError: if *key* duplicates the key of an + existing item and *val* duplicates the value of a different + existing item. + """ + self.put(key, val, on_dup=self.on_dup) + + def put(self, key: KT, val: VT, on_dup: OnDup = ON_DUP_RAISE) -> None: + """Associate *key* with *val*, honoring the :class:`OnDup` given in *on_dup*. + + For example, if *on_dup* is :attr:`~bidict.ON_DUP_RAISE`, + then *key* will be associated with *val* if and only if + *key* is not already associated with an existing value and + *val* is not already associated with an existing key, + otherwise an exception will be raised. + + If *key* is already associated with *val*, this is a no-op. + + :raises bidict.KeyDuplicationError: if attempting to insert an item + whose key only duplicates an existing item's, and *on_dup.key* is + :attr:`~bidict.RAISE`. + + :raises bidict.ValueDuplicationError: if attempting to insert an item + whose value only duplicates an existing item's, and *on_dup.val* is + :attr:`~bidict.RAISE`. + + :raises bidict.KeyAndValueDuplicationError: if attempting to insert an + item whose key duplicates one existing item's, and whose value + duplicates another existing item's, and *on_dup.val* is + :attr:`~bidict.RAISE`. + """ + self._update(((key, val),), on_dup=on_dup) + + def forceput(self, key: KT, val: VT) -> None: + """Associate *key* with *val* unconditionally. + + Replace any existing mappings containing key *key* or value *val* + as necessary to preserve uniqueness. + """ + self.put(key, val, on_dup=ON_DUP_DROP_OLD) + + def clear(self) -> None: + """Remove all items.""" + self._fwdm.clear() + self._invm.clear() + + @t.overload + def pop(self, key: KT, /) -> VT: ... + @t.overload + def pop(self, key: KT, default: DT = ..., /) -> VT | DT: ... + + def pop(self, key: KT, default: ODT[DT] = MISSING, /) -> VT | DT: + """*x.pop(k[, d]) → v* + + Remove specified key and return the corresponding value. + + :raises KeyError: if *key* is not found and no *default* is provided. + """ + try: + return self._pop(key) + except KeyError: + if default is MISSING: + raise + return default + + def popitem(self) -> tuple[KT, VT]: + """*x.popitem() → (k, v)* + + Remove and return some item as a (key, value) pair. + + :raises KeyError: if *x* is empty. + """ + key, val = self._fwdm.popitem() + del self._invm[val] + return key, val + + def update(self, arg: MapOrItems[KT, VT] = (), /, **kw: VT) -> None: + """Like calling :meth:`putall` with *self.on_dup* passed for *on_dup*.""" + self._update(arg, kw=kw) + + def forceupdate(self, arg: MapOrItems[KT, VT] = (), /, **kw: VT) -> None: + """Like a bulk :meth:`forceput`.""" + self._update(arg, kw=kw, on_dup=ON_DUP_DROP_OLD) + + def putall(self, items: MapOrItems[KT, VT], on_dup: OnDup = ON_DUP_RAISE) -> None: + """Like a bulk :meth:`put`. + + If one of the given items causes an exception to be raised, + none of the items is inserted. + """ + self._update(items, on_dup=on_dup) + + # other's type is Mapping rather than Maplike since bidict() |= SupportsKeysAndGetItem({}) + # raises a TypeError, just like dict() |= SupportsKeysAndGetItem({}) does. + def __ior__(self, other: t.Mapping[KT, VT]) -> MutableBidict[KT, VT]: + """Return self|=other.""" + self.update(other) + return self + + +class bidict(MutableBidict[KT, VT]): + """The main bidirectional mapping type. + + See :ref:`intro:Introduction` and :ref:`basic-usage:Basic Usage` + to get started (also available at https://bidict.rtfd.io). + """ + + if t.TYPE_CHECKING: + + @property + def inverse(self) -> bidict[VT, KT]: ... + + @property + def inv(self) -> bidict[VT, KT]: ... + + +# * Code review nav * +# ============================================================================ +# ← Prev: _frozen.py Current: _bidict.py Next: _orderedbase.py → +# ============================================================================ diff --git a/venv/lib/python3.9/site-packages/bidict/_dup.py b/venv/lib/python3.9/site-packages/bidict/_dup.py new file mode 100644 index 0000000..fd25b61 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_dup.py @@ -0,0 +1,61 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +"""Provide :class:`OnDup` and related functionality.""" + +from __future__ import annotations + +import typing as t +from enum import Enum + + +class OnDupAction(Enum): + """An action to take to prevent duplication from occurring.""" + + #: Raise a :class:`~bidict.DuplicationError`. + RAISE = 'RAISE' + #: Overwrite existing items with new items. + DROP_OLD = 'DROP_OLD' + #: Keep existing items and drop new items. + DROP_NEW = 'DROP_NEW' + + def __repr__(self) -> str: + return f'{self.__class__.__name__}.{self.name}' + + +RAISE: t.Final[OnDupAction] = OnDupAction.RAISE +DROP_OLD: t.Final[OnDupAction] = OnDupAction.DROP_OLD +DROP_NEW: t.Final[OnDupAction] = OnDupAction.DROP_NEW + + +class OnDup(t.NamedTuple): + r"""A combination of :class:`~bidict.OnDupAction`\s specifying how to handle various types of duplication. + + The :attr:`~OnDup.key` field specifies what action to take when a duplicate key is encountered. + + The :attr:`~OnDup.val` field specifies what action to take when a duplicate value is encountered. + + In the case of both key and value duplication across two different items, + only :attr:`~OnDup.val` is used. + + *See also* :ref:`basic-usage:Values Must Be Unique` + (https://bidict.rtfd.io/basic-usage.html#values-must-be-unique) + """ + + key: OnDupAction = DROP_OLD + val: OnDupAction = RAISE + + +#: Default :class:`OnDup` used for the +#: :meth:`~bidict.bidict.__init__`, +#: :meth:`~bidict.bidict.__setitem__`, and +#: :meth:`~bidict.bidict.update` methods. +ON_DUP_DEFAULT: t.Final[OnDup] = OnDup(key=DROP_OLD, val=RAISE) +#: An :class:`OnDup` whose members are all :obj:`RAISE`. +ON_DUP_RAISE: t.Final[OnDup] = OnDup(key=RAISE, val=RAISE) +#: An :class:`OnDup` whose members are all :obj:`DROP_OLD`. +ON_DUP_DROP_OLD: t.Final[OnDup] = OnDup(key=DROP_OLD, val=DROP_OLD) diff --git a/venv/lib/python3.9/site-packages/bidict/_exc.py b/venv/lib/python3.9/site-packages/bidict/_exc.py new file mode 100644 index 0000000..e2a96f3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_exc.py @@ -0,0 +1,36 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +"""Provide all bidict exceptions.""" + +from __future__ import annotations + + +class BidictException(Exception): + """Base class for bidict exceptions.""" + + +class DuplicationError(BidictException): + """Base class for exceptions raised when uniqueness is violated + as per the :attr:`~bidict.RAISE` :class:`~bidict.OnDupAction`. + """ + + +class KeyDuplicationError(DuplicationError): + """Raised when a given key is not unique.""" + + +class ValueDuplicationError(DuplicationError): + """Raised when a given value is not unique.""" + + +class KeyAndValueDuplicationError(KeyDuplicationError, ValueDuplicationError): + """Raised when a given item's key and value are not unique. + + That is, its key duplicates that of another item, + and its value duplicates that of a different other item. + """ diff --git a/venv/lib/python3.9/site-packages/bidict/_frozen.py b/venv/lib/python3.9/site-packages/bidict/_frozen.py new file mode 100644 index 0000000..e2f789d --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_frozen.py @@ -0,0 +1,50 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +# * Code review nav * +# (see comments in __init__.py) +# ============================================================================ +# ← Prev: _base.py Current: _frozen.py Next: _bidict.py → +# ============================================================================ + +"""Provide :class:`frozenbidict`, an immutable, hashable bidirectional mapping type.""" + +from __future__ import annotations + +import typing as t + +from ._base import BidictBase +from ._typing import KT +from ._typing import VT + + +class frozenbidict(BidictBase[KT, VT]): + """Immutable, hashable bidict type.""" + + _hash: int + + if t.TYPE_CHECKING: + + @property + def inverse(self) -> frozenbidict[VT, KT]: ... + + @property + def inv(self) -> frozenbidict[VT, KT]: ... + + def __hash__(self) -> int: + """The hash of this bidict as determined by its items.""" + if getattr(self, '_hash', None) is None: + # The following is like hash(frozenset(self.items())) + # but more memory efficient. See also: https://bugs.python.org/issue46684 + self._hash = t.ItemsView(self)._hash() + return self._hash + + +# * Code review nav * +# ============================================================================ +# ← Prev: _base.py Current: _frozen.py Next: _bidict.py → +# ============================================================================ diff --git a/venv/lib/python3.9/site-packages/bidict/_iter.py b/venv/lib/python3.9/site-packages/bidict/_iter.py new file mode 100644 index 0000000..53ad25d --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_iter.py @@ -0,0 +1,51 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +"""Functions for iterating over items in a mapping.""" + +from __future__ import annotations + +import typing as t +from operator import itemgetter + +from ._typing import KT +from ._typing import VT +from ._typing import ItemsIter +from ._typing import Maplike +from ._typing import MapOrItems + + +def iteritems(arg: MapOrItems[KT, VT] = (), /, **kw: VT) -> ItemsIter[KT, VT]: + """Yield the items from *arg* and *kw* in the order given.""" + if isinstance(arg, t.Mapping): + yield from arg.items() + elif isinstance(arg, Maplike): + yield from ((k, arg[k]) for k in arg.keys()) + else: + yield from arg + yield from t.cast(ItemsIter[KT, VT], kw.items()) + + +swap: t.Final = itemgetter(1, 0) + + +def inverted(arg: MapOrItems[KT, VT]) -> ItemsIter[VT, KT]: + """Yield the inverse items of the provided object. + + If *arg* has a :func:`callable` ``__inverted__`` attribute, + return the result of calling it. + + Otherwise, return an iterator over the items in `arg`, + inverting each item on the fly. + + *See also* :attr:`bidict.BidirectionalMapping.__inverted__` + """ + invattr = getattr(arg, '__inverted__', None) + if callable(invattr): + inv: ItemsIter[VT, KT] = invattr() + return inv + return map(swap, iteritems(arg)) diff --git a/venv/lib/python3.9/site-packages/bidict/_orderedbase.py b/venv/lib/python3.9/site-packages/bidict/_orderedbase.py new file mode 100644 index 0000000..92f2633 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_orderedbase.py @@ -0,0 +1,238 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +# * Code review nav * +# (see comments in __init__.py) +# ============================================================================ +# ← Prev: _bidict.py Current: _orderedbase.py Next: _orderedbidict.py → +# ============================================================================ + + +"""Provide :class:`OrderedBidictBase`.""" + +from __future__ import annotations + +import typing as t +from weakref import ref as weakref + +from ._base import BidictBase +from ._base import Unwrites +from ._bidict import bidict +from ._iter import iteritems +from ._typing import KT +from ._typing import MISSING +from ._typing import OKT +from ._typing import OVT +from ._typing import VT +from ._typing import MapOrItems + + +AT = t.TypeVar('AT') # attr type + + +class WeakAttr(t.Generic[AT]): + """Descriptor to automatically manage (de)referencing the given slot as a weakref. + + See https://docs.python.org/3/howto/descriptor.html#managed-attributes + for an intro to using descriptors like this for managed attributes. + """ + + def __init__(self, *, slot: str) -> None: + self.slot = slot + + def __set__(self, instance: t.Any, value: AT) -> None: + setattr(instance, self.slot, weakref(value)) + + def __get__(self, instance: t.Any, __owner: t.Any = None) -> AT: + return t.cast(AT, getattr(instance, self.slot)()) + + +class Node: + """A node in a circular doubly-linked list + used to encode the order of items in an ordered bidict. + + A weak reference to the previous node is stored + to avoid creating strong reference cycles. + Referencing/dereferencing the weakref is handled automatically by :class:`WeakAttr`. + """ + + prv: WeakAttr[Node] = WeakAttr(slot='_prv_weak') + __slots__ = ('__weakref__', '_prv_weak', 'nxt') + + nxt: Node | WeakAttr[Node] # Allow subclasses to use a WeakAttr for nxt too (see SentinelNode) + + def __init__(self, prv: Node, nxt: Node) -> None: + self.prv = prv + self.nxt = nxt + + def unlink(self) -> None: + """Remove self from in between prv and nxt. + Self's references to prv and nxt are retained so it can be relinked (see below). + """ + self.prv.nxt = self.nxt + self.nxt.prv = self.prv + + def relink(self) -> None: + """Restore self between prv and nxt after unlinking (see above).""" + self.prv.nxt = self.nxt.prv = self + + +class SentinelNode(Node): + """Special node in a circular doubly-linked list + that links the first node with the last node. + When its next and previous references point back to itself + it represents an empty list. + """ + + nxt: WeakAttr[Node] = WeakAttr(slot='_nxt_weak') + __slots__ = ('_nxt_weak',) + + def __init__(self) -> None: + super().__init__(self, self) + + def iternodes(self, *, reverse: bool = False) -> t.Iterator[Node]: + """Iterator yielding nodes in the requested order.""" + attr = 'prv' if reverse else 'nxt' + node = getattr(self, attr) + while node is not self: + yield node + node = getattr(node, attr) + + def new_last_node(self) -> Node: + """Create and return a new terminal node.""" + old_last = self.prv + new_last = Node(old_last, self) + old_last.nxt = self.prv = new_last + return new_last + + +class OrderedBidictBase(BidictBase[KT, VT]): + """Base class implementing an ordered :class:`BidirectionalMapping`.""" + + _node_by_korv: bidict[t.Any, Node] + _bykey: bool + + def __init__(self, arg: MapOrItems[KT, VT] = (), /, **kw: VT) -> None: + """Make a new ordered bidirectional mapping. + The signature behaves like that of :class:`dict`. + Items passed in are added in the order they are passed, + respecting the :attr:`~bidict.BidictBase.on_dup` + class attribute in the process. + + The order in which items are inserted is remembered, + similar to :class:`collections.OrderedDict`. + """ + self._sntl = SentinelNode() + self._node_by_korv = bidict() + self._bykey = True + super().__init__(arg, **kw) + + if t.TYPE_CHECKING: + + @property + def inverse(self) -> OrderedBidictBase[VT, KT]: ... + + @property + def inv(self) -> OrderedBidictBase[VT, KT]: ... + + def _make_inverse(self) -> OrderedBidictBase[VT, KT]: + inv = t.cast(OrderedBidictBase[VT, KT], super()._make_inverse()) + inv._sntl = self._sntl + inv._node_by_korv = self._node_by_korv + inv._bykey = not self._bykey + return inv + + def _assoc_node(self, node: Node, key: KT, val: VT) -> None: + korv = key if self._bykey else val + self._node_by_korv.forceput(korv, node) + + def _dissoc_node(self, node: Node) -> None: + del self._node_by_korv.inverse[node] + node.unlink() + + def _init_from(self, other: MapOrItems[KT, VT]) -> None: + """See :meth:`BidictBase._init_from`.""" + super()._init_from(other) + bykey = self._bykey + korv_by_node = self._node_by_korv.inverse + korv_by_node.clear() + korv_by_node_set = korv_by_node.__setitem__ + self._sntl.nxt = self._sntl.prv = self._sntl + new_node = self._sntl.new_last_node + for k, v in iteritems(other): + korv_by_node_set(new_node(), k if bykey else v) + + def _write(self, newkey: KT, newval: VT, oldkey: OKT[KT], oldval: OVT[VT], unwrites: Unwrites | None) -> None: + """See :meth:`bidict.BidictBase._spec_write`.""" + super()._write(newkey, newval, oldkey, oldval, unwrites) + assoc, dissoc = self._assoc_node, self._dissoc_node + node_by_korv, bykey = self._node_by_korv, self._bykey + if oldval is MISSING and oldkey is MISSING: # no key or value duplication + # {0: 1, 2: 3} | {4: 5} => {0: 1, 2: 3, 4: 5} + newnode = self._sntl.new_last_node() + assoc(newnode, newkey, newval) + if unwrites is not None: + unwrites.append((dissoc, newnode)) + elif oldval is not MISSING and oldkey is not MISSING: # key and value duplication across two different items + # {0: 1, 2: 3} | {0: 3} => {0: 3} + # n1, n2 => n1 (collapse n1 and n2 into n1) + # oldkey: 2, oldval: 1, oldnode: n2, newkey: 0, newval: 3, newnode: n1 + if bykey: + oldnode = node_by_korv[oldkey] + newnode = node_by_korv[newkey] + else: + oldnode = node_by_korv[newval] + newnode = node_by_korv[oldval] + dissoc(oldnode) + assoc(newnode, newkey, newval) + if unwrites is not None: + unwrites.extend(( + (assoc, newnode, newkey, oldval), + (assoc, oldnode, oldkey, newval), + (oldnode.relink,), + )) + elif oldval is not MISSING: # just key duplication + # {0: 1, 2: 3} | {2: 4} => {0: 1, 2: 4} + # oldkey: MISSING, oldval: 3, newkey: 2, newval: 4 + node = node_by_korv[newkey if bykey else oldval] + assoc(node, newkey, newval) + if unwrites is not None: + unwrites.append((assoc, node, newkey, oldval)) + else: + assert oldkey is not MISSING # just value duplication + # {0: 1, 2: 3} | {4: 3} => {0: 1, 4: 3} + # oldkey: 2, oldval: MISSING, newkey: 4, newval: 3 + node = node_by_korv[oldkey if bykey else newval] + assoc(node, newkey, newval) + if unwrites is not None: + unwrites.append((assoc, node, oldkey, newval)) + + def __iter__(self) -> t.Iterator[KT]: + """Iterator over the contained keys in insertion order.""" + return self._iter(reverse=False) + + def __reversed__(self) -> t.Iterator[KT]: + """Iterator over the contained keys in reverse insertion order.""" + return self._iter(reverse=True) + + def _iter(self, *, reverse: bool = False) -> t.Iterator[KT]: + nodes = self._sntl.iternodes(reverse=reverse) + korv_by_node = self._node_by_korv.inverse + if self._bykey: + for node in nodes: + yield korv_by_node[node] + else: + key_by_val = self._invm + for node in nodes: + val = korv_by_node[node] + yield key_by_val[val] + + +# * Code review nav * +# ============================================================================ +# ← Prev: _bidict.py Current: _orderedbase.py Next: _orderedbidict.py → +# ============================================================================ diff --git a/venv/lib/python3.9/site-packages/bidict/_orderedbidict.py b/venv/lib/python3.9/site-packages/bidict/_orderedbidict.py new file mode 100644 index 0000000..2fb1757 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_orderedbidict.py @@ -0,0 +1,172 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +# * Code review nav * +# (see comments in __init__.py) +# ============================================================================ +# ← Prev: _orderedbase.py Current: _orderedbidict.py +# ============================================================================ + + +"""Provide :class:`OrderedBidict`.""" + +from __future__ import annotations + +import typing as t +from collections.abc import Set + +from ._base import BidictKeysView +from ._bidict import MutableBidict +from ._orderedbase import OrderedBidictBase +from ._typing import KT +from ._typing import VT + + +class OrderedBidict(OrderedBidictBase[KT, VT], MutableBidict[KT, VT]): + """Mutable bidict type that maintains items in insertion order.""" + + if t.TYPE_CHECKING: + + @property + def inverse(self) -> OrderedBidict[VT, KT]: ... + + @property + def inv(self) -> OrderedBidict[VT, KT]: ... + + def clear(self) -> None: + """Remove all items.""" + super().clear() + self._node_by_korv.clear() + self._sntl.nxt = self._sntl.prv = self._sntl + + def _pop(self, key: KT) -> VT: + val = super()._pop(key) + node = self._node_by_korv[key if self._bykey else val] + self._dissoc_node(node) + return val + + def popitem(self, last: bool = True) -> tuple[KT, VT]: + """*b.popitem() → (k, v)* + + If *last* is true, + remove and return the most recently added item as a (key, value) pair. + Otherwise, remove and return the least recently added item. + + :raises KeyError: if *b* is empty. + """ + if not self: + raise KeyError('OrderedBidict is empty') + node = getattr(self._sntl, 'prv' if last else 'nxt') + korv = self._node_by_korv.inverse[node] + if self._bykey: + return korv, self._pop(korv) + return self.inverse._pop(korv), korv + + def move_to_end(self, key: KT, last: bool = True) -> None: + """Move the item with the given key to the end if *last* is true, else to the beginning. + + :raises KeyError: if *key* is missing + """ + korv = key if self._bykey else self._fwdm[key] + node = self._node_by_korv[korv] + node.prv.nxt = node.nxt + node.nxt.prv = node.prv + sntl = self._sntl + if last: + lastnode = sntl.prv + node.prv = lastnode + node.nxt = sntl + sntl.prv = lastnode.nxt = node + else: + firstnode = sntl.nxt + node.prv = sntl + node.nxt = firstnode + sntl.nxt = firstnode.prv = node + + # Override the keys() and items() implementations inherited from BidictBase, + # which may delegate to the backing _fwdm dict, since this is a mutable ordered bidict, + # and therefore the ordering of items can get out of sync with the backing mappings + # after mutation. (Need not override values() because it delegates to .inverse.keys().) + def keys(self) -> t.KeysView[KT]: + """A set-like object providing a view on the contained keys.""" + return _OrderedBidictKeysView(self) + + def items(self) -> t.ItemsView[KT, VT]: + """A set-like object providing a view on the contained items.""" + return _OrderedBidictItemsView(self) + + +# The following MappingView implementations use the __iter__ implementations +# inherited from their superclass counterparts in collections.abc, so they +# continue to yield items in the correct order even after an OrderedBidict +# is mutated. They also provide a __reversed__ implementation, which is not +# provided by the collections.abc superclasses. +class _OrderedBidictKeysView(BidictKeysView[KT]): + _mapping: OrderedBidict[KT, t.Any] + + def __reversed__(self) -> t.Iterator[KT]: + return reversed(self._mapping) + + +class _OrderedBidictItemsView(t.ItemsView[KT, VT]): + _mapping: OrderedBidict[KT, VT] + + def __reversed__(self) -> t.Iterator[tuple[KT, VT]]: + ob = self._mapping + for key in reversed(ob): + yield key, ob[key] + + +# For better performance, make _OrderedBidictKeysView and _OrderedBidictItemsView delegate +# to backing dicts for the methods they inherit from collections.abc.Set. (Cannot delegate +# for __iter__ and __reversed__ since they are order-sensitive.) See also: https://bugs.python.org/issue46713 +_OView = t.Union[t.Type[_OrderedBidictKeysView[KT]], t.Type[_OrderedBidictItemsView[KT, t.Any]]] +_setmethodnames: t.Iterable[str] = ( + '__lt__ __le__ __gt__ __ge__ __eq__ __ne__ __sub__ __rsub__ ' + '__or__ __ror__ __xor__ __rxor__ __and__ __rand__ isdisjoint' +).split() + + +def _override_set_methods_to_use_backing_dict(cls: _OView[KT], viewname: str) -> None: + def make_proxy_method(methodname: str) -> t.Any: + def method(self: _OrderedBidictKeysView[KT] | _OrderedBidictItemsView[KT, t.Any], *args: t.Any) -> t.Any: + fwdm = self._mapping._fwdm + if not isinstance(fwdm, dict): # dict view speedup not available, fall back to Set's implementation. + return getattr(Set, methodname)(self, *args) + fwdm_dict_view = getattr(fwdm, viewname)() + fwdm_dict_view_method = getattr(fwdm_dict_view, methodname) + if ( + len(args) != 1 + or not isinstance((arg := args[0]), self.__class__) + or not isinstance(arg._mapping._fwdm, dict) + ): + return fwdm_dict_view_method(*args) + # self and arg are both _OrderedBidictKeysViews or _OrderedBidictItemsViews whose bidicts are backed by + # a dict. Use arg's backing dict's corresponding view instead of arg. Otherwise, e.g. `ob1.keys() + # < ob2.keys()` would give "TypeError: '<' not supported between instances of '_OrderedBidictKeysView' and + # '_OrderedBidictKeysView'", because both `dict_keys(ob1).__lt__(ob2.keys()) is NotImplemented` and + # `dict_keys(ob2).__gt__(ob1.keys()) is NotImplemented`. + arg_dict = arg._mapping._fwdm + arg_dict_view = getattr(arg_dict, viewname)() + return fwdm_dict_view_method(arg_dict_view) + + method.__name__ = methodname + method.__qualname__ = f'{cls.__qualname__}.{methodname}' + return method + + for name in _setmethodnames: + setattr(cls, name, make_proxy_method(name)) + + +_override_set_methods_to_use_backing_dict(_OrderedBidictKeysView, 'keys') +_override_set_methods_to_use_backing_dict(_OrderedBidictItemsView, 'items') + + +# * Code review nav * +# ============================================================================ +# ← Prev: _orderedbase.py Current: _orderedbidict.py +# ============================================================================ diff --git a/venv/lib/python3.9/site-packages/bidict/_typing.py b/venv/lib/python3.9/site-packages/bidict/_typing.py new file mode 100644 index 0000000..ce95053 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/_typing.py @@ -0,0 +1,49 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + + +"""Provide typing-related objects.""" + +from __future__ import annotations + +import typing as t +from enum import Enum + + +KT = t.TypeVar('KT') +VT = t.TypeVar('VT') +VT_co = t.TypeVar('VT_co', covariant=True) + + +Items = t.Iterable[t.Tuple[KT, VT]] + + +@t.runtime_checkable +class Maplike(t.Protocol[KT, VT_co]): + """Like typeshed's SupportsKeysAndGetItem, but usable at runtime.""" + + def keys(self) -> t.Iterable[KT]: ... + + def __getitem__(self, __key: KT) -> VT_co: ... + + +MapOrItems = t.Union[Maplike[KT, VT], Items[KT, VT]] +MappOrItems = t.Union[t.Mapping[KT, VT], Items[KT, VT]] +ItemsIter = t.Iterator[t.Tuple[KT, VT]] + + +class MissingT(Enum): + """Sentinel used to represent none/missing when None itself can't be used.""" + + MISSING = 'MISSING' + + +MISSING: t.Final[t.Literal[MissingT.MISSING]] = MissingT.MISSING +OKT = t.Union[KT, MissingT] #: optional key type +OVT = t.Union[VT, MissingT] #: optional value type + +DT = t.TypeVar('DT') #: for default arguments +ODT = t.Union[DT, MissingT] #: optional default arg type diff --git a/venv/lib/python3.9/site-packages/bidict/metadata.py b/venv/lib/python3.9/site-packages/bidict/metadata.py new file mode 100644 index 0000000..30ad836 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/metadata.py @@ -0,0 +1,14 @@ +# Copyright 2009-2024 Joshua Bronson. All rights reserved. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +"""Define bidict package metadata.""" + +__version__ = '0.23.1' +__author__ = {'name': 'Joshua Bronson', 'email': 'jabronson@gmail.com'} +__copyright__ = '© 2009-2024 Joshua Bronson' +__description__ = 'The bidirectional mapping library for Python.' +__license__ = 'MPL 2.0' +__url__ = 'https://bidict.readthedocs.io' diff --git a/venv/lib/python3.9/site-packages/bidict/py.typed b/venv/lib/python3.9/site-packages/bidict/py.typed new file mode 100644 index 0000000..342ea76 --- /dev/null +++ b/venv/lib/python3.9/site-packages/bidict/py.typed @@ -0,0 +1 @@ +PEP-561 marker. diff --git a/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/LICENSE.txt b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/LICENSE.txt new file mode 100644 index 0000000..79c9825 --- /dev/null +++ b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/LICENSE.txt @@ -0,0 +1,20 @@ +Copyright 2010 Jason Kirtland + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/METADATA b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/METADATA new file mode 100644 index 0000000..6d343f5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/METADATA @@ -0,0 +1,60 @@ +Metadata-Version: 2.3 +Name: blinker +Version: 1.9.0 +Summary: Fast, simple object-to-object and broadcast signaling +Author: Jason Kirtland +Maintainer-email: Pallets Ecosystem +Requires-Python: >=3.9 +Description-Content-Type: text/markdown +Classifier: Development Status :: 5 - Production/Stable +Classifier: License :: OSI Approved :: MIT License +Classifier: Programming Language :: Python +Classifier: Typing :: Typed +Project-URL: Chat, https://discord.gg/pallets +Project-URL: Documentation, https://blinker.readthedocs.io +Project-URL: Source, https://github.com/pallets-eco/blinker/ + +# Blinker + +Blinker provides a fast dispatching system that allows any number of +interested parties to subscribe to events, or "signals". + + +## Pallets Community Ecosystem + +> [!IMPORTANT]\ +> This project is part of the Pallets Community Ecosystem. Pallets is the open +> source organization that maintains Flask; Pallets-Eco enables community +> maintenance of related projects. If you are interested in helping maintain +> this project, please reach out on [the Pallets Discord server][discord]. +> +> [discord]: https://discord.gg/pallets + + +## Example + +Signal receivers can subscribe to specific senders or receive signals +sent by any sender. + +```pycon +>>> from blinker import signal +>>> started = signal('round-started') +>>> def each(round): +... print(f"Round {round}") +... +>>> started.connect(each) + +>>> def round_two(round): +... print("This is round two.") +... +>>> started.connect(round_two, sender=2) + +>>> for round in range(1, 4): +... started.send(round) +... +Round 1! +Round 2! +This is round two. +Round 3! +``` + diff --git a/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/RECORD b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/RECORD new file mode 100644 index 0000000..40109c3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/RECORD @@ -0,0 +1,12 @@ +blinker-1.9.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +blinker-1.9.0.dist-info/LICENSE.txt,sha256=nrc6HzhZekqhcCXSrhvjg5Ykx5XphdTw6Xac4p-spGc,1054 +blinker-1.9.0.dist-info/METADATA,sha256=uIRiM8wjjbHkCtbCyTvctU37IAZk0kEe5kxAld1dvzA,1633 +blinker-1.9.0.dist-info/RECORD,, +blinker-1.9.0.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82 +blinker/__init__.py,sha256=I2EdZqpy4LyjX17Hn1yzJGWCjeLaVaPzsMgHkLfj_cQ,317 +blinker/__pycache__/__init__.cpython-39.pyc,, +blinker/__pycache__/_utilities.cpython-39.pyc,, +blinker/__pycache__/base.cpython-39.pyc,, +blinker/_utilities.py,sha256=0J7eeXXTUx0Ivf8asfpx0ycVkp0Eqfqnj117x2mYX9E,1675 +blinker/base.py,sha256=QpDuvXXcwJF49lUBcH5BiST46Rz9wSG7VW_p7N_027M,19132 +blinker/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 diff --git a/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/WHEEL b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/WHEEL new file mode 100644 index 0000000..e3c6fee --- /dev/null +++ b/venv/lib/python3.9/site-packages/blinker-1.9.0.dist-info/WHEEL @@ -0,0 +1,4 @@ +Wheel-Version: 1.0 +Generator: flit 3.10.1 +Root-Is-Purelib: true +Tag: py3-none-any diff --git a/venv/lib/python3.9/site-packages/blinker/__init__.py b/venv/lib/python3.9/site-packages/blinker/__init__.py new file mode 100644 index 0000000..1772fa4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/blinker/__init__.py @@ -0,0 +1,17 @@ +from __future__ import annotations + +from .base import ANY +from .base import default_namespace +from .base import NamedSignal +from .base import Namespace +from .base import Signal +from .base import signal + +__all__ = [ + "ANY", + "default_namespace", + "NamedSignal", + "Namespace", + "Signal", + "signal", +] diff --git a/venv/lib/python3.9/site-packages/blinker/_utilities.py b/venv/lib/python3.9/site-packages/blinker/_utilities.py new file mode 100644 index 0000000..000c902 --- /dev/null +++ b/venv/lib/python3.9/site-packages/blinker/_utilities.py @@ -0,0 +1,64 @@ +from __future__ import annotations + +import collections.abc as c +import inspect +import typing as t +from weakref import ref +from weakref import WeakMethod + +T = t.TypeVar("T") + + +class Symbol: + """A constant symbol, nicer than ``object()``. Repeated calls return the + same instance. + + >>> Symbol('foo') is Symbol('foo') + True + >>> Symbol('foo') + foo + """ + + symbols: t.ClassVar[dict[str, Symbol]] = {} + + def __new__(cls, name: str) -> Symbol: + if name in cls.symbols: + return cls.symbols[name] + + obj = super().__new__(cls) + cls.symbols[name] = obj + return obj + + def __init__(self, name: str) -> None: + self.name = name + + def __repr__(self) -> str: + return self.name + + def __getnewargs__(self) -> tuple[t.Any, ...]: + return (self.name,) + + +def make_id(obj: object) -> c.Hashable: + """Get a stable identifier for a receiver or sender, to be used as a dict + key or in a set. + """ + if inspect.ismethod(obj): + # The id of a bound method is not stable, but the id of the unbound + # function and instance are. + return id(obj.__func__), id(obj.__self__) + + if isinstance(obj, (str, int)): + # Instances with the same value always compare equal and have the same + # hash, even if the id may change. + return obj + + # Assume other types are not hashable but will always be the same instance. + return id(obj) + + +def make_ref(obj: T, callback: c.Callable[[ref[T]], None] | None = None) -> ref[T]: + if inspect.ismethod(obj): + return WeakMethod(obj, callback) # type: ignore[arg-type, return-value] + + return ref(obj, callback) diff --git a/venv/lib/python3.9/site-packages/blinker/base.py b/venv/lib/python3.9/site-packages/blinker/base.py new file mode 100644 index 0000000..d051b94 --- /dev/null +++ b/venv/lib/python3.9/site-packages/blinker/base.py @@ -0,0 +1,512 @@ +from __future__ import annotations + +import collections.abc as c +import sys +import typing as t +import weakref +from collections import defaultdict +from contextlib import contextmanager +from functools import cached_property +from inspect import iscoroutinefunction + +from ._utilities import make_id +from ._utilities import make_ref +from ._utilities import Symbol + +F = t.TypeVar("F", bound=c.Callable[..., t.Any]) + +ANY = Symbol("ANY") +"""Symbol for "any sender".""" + +ANY_ID = 0 + + +class Signal: + """A notification emitter. + + :param doc: The docstring for the signal. + """ + + ANY = ANY + """An alias for the :data:`~blinker.ANY` sender symbol.""" + + set_class: type[set[t.Any]] = set + """The set class to use for tracking connected receivers and senders. + Python's ``set`` is unordered. If receivers must be dispatched in the order + they were connected, an ordered set implementation can be used. + + .. versionadded:: 1.7 + """ + + @cached_property + def receiver_connected(self) -> Signal: + """Emitted at the end of each :meth:`connect` call. + + The signal sender is the signal instance, and the :meth:`connect` + arguments are passed through: ``receiver``, ``sender``, and ``weak``. + + .. versionadded:: 1.2 + """ + return Signal(doc="Emitted after a receiver connects.") + + @cached_property + def receiver_disconnected(self) -> Signal: + """Emitted at the end of each :meth:`disconnect` call. + + The sender is the signal instance, and the :meth:`disconnect` arguments + are passed through: ``receiver`` and ``sender``. + + This signal is emitted **only** when :meth:`disconnect` is called + explicitly. This signal cannot be emitted by an automatic disconnect + when a weakly referenced receiver or sender goes out of scope, as the + instance is no longer be available to be used as the sender for this + signal. + + An alternative approach is available by subscribing to + :attr:`receiver_connected` and setting up a custom weakref cleanup + callback on weak receivers and senders. + + .. versionadded:: 1.2 + """ + return Signal(doc="Emitted after a receiver disconnects.") + + def __init__(self, doc: str | None = None) -> None: + if doc: + self.__doc__ = doc + + self.receivers: dict[ + t.Any, weakref.ref[c.Callable[..., t.Any]] | c.Callable[..., t.Any] + ] = {} + """The map of connected receivers. Useful to quickly check if any + receivers are connected to the signal: ``if s.receivers:``. The + structure and data is not part of the public API, but checking its + boolean value is. + """ + + self.is_muted: bool = False + self._by_receiver: dict[t.Any, set[t.Any]] = defaultdict(self.set_class) + self._by_sender: dict[t.Any, set[t.Any]] = defaultdict(self.set_class) + self._weak_senders: dict[t.Any, weakref.ref[t.Any]] = {} + + def connect(self, receiver: F, sender: t.Any = ANY, weak: bool = True) -> F: + """Connect ``receiver`` to be called when the signal is sent by + ``sender``. + + :param receiver: The callable to call when :meth:`send` is called with + the given ``sender``, passing ``sender`` as a positional argument + along with any extra keyword arguments. + :param sender: Any object or :data:`ANY`. ``receiver`` will only be + called when :meth:`send` is called with this sender. If ``ANY``, the + receiver will be called for any sender. A receiver may be connected + to multiple senders by calling :meth:`connect` multiple times. + :param weak: Track the receiver with a :mod:`weakref`. The receiver will + be automatically disconnected when it is garbage collected. When + connecting a receiver defined within a function, set to ``False``, + otherwise it will be disconnected when the function scope ends. + """ + receiver_id = make_id(receiver) + sender_id = ANY_ID if sender is ANY else make_id(sender) + + if weak: + self.receivers[receiver_id] = make_ref( + receiver, self._make_cleanup_receiver(receiver_id) + ) + else: + self.receivers[receiver_id] = receiver + + self._by_sender[sender_id].add(receiver_id) + self._by_receiver[receiver_id].add(sender_id) + + if sender is not ANY and sender_id not in self._weak_senders: + # store a cleanup for weakref-able senders + try: + self._weak_senders[sender_id] = make_ref( + sender, self._make_cleanup_sender(sender_id) + ) + except TypeError: + pass + + if "receiver_connected" in self.__dict__ and self.receiver_connected.receivers: + try: + self.receiver_connected.send( + self, receiver=receiver, sender=sender, weak=weak + ) + except TypeError: + # TODO no explanation or test for this + self.disconnect(receiver, sender) + raise + + return receiver + + def connect_via(self, sender: t.Any, weak: bool = False) -> c.Callable[[F], F]: + """Connect the decorated function to be called when the signal is sent + by ``sender``. + + The decorated function will be called when :meth:`send` is called with + the given ``sender``, passing ``sender`` as a positional argument along + with any extra keyword arguments. + + :param sender: Any object or :data:`ANY`. ``receiver`` will only be + called when :meth:`send` is called with this sender. If ``ANY``, the + receiver will be called for any sender. A receiver may be connected + to multiple senders by calling :meth:`connect` multiple times. + :param weak: Track the receiver with a :mod:`weakref`. The receiver will + be automatically disconnected when it is garbage collected. When + connecting a receiver defined within a function, set to ``False``, + otherwise it will be disconnected when the function scope ends.= + + .. versionadded:: 1.1 + """ + + def decorator(fn: F) -> F: + self.connect(fn, sender, weak) + return fn + + return decorator + + @contextmanager + def connected_to( + self, receiver: c.Callable[..., t.Any], sender: t.Any = ANY + ) -> c.Generator[None, None, None]: + """A context manager that temporarily connects ``receiver`` to the + signal while a ``with`` block executes. When the block exits, the + receiver is disconnected. Useful for tests. + + :param receiver: The callable to call when :meth:`send` is called with + the given ``sender``, passing ``sender`` as a positional argument + along with any extra keyword arguments. + :param sender: Any object or :data:`ANY`. ``receiver`` will only be + called when :meth:`send` is called with this sender. If ``ANY``, the + receiver will be called for any sender. + + .. versionadded:: 1.1 + """ + self.connect(receiver, sender=sender, weak=False) + + try: + yield None + finally: + self.disconnect(receiver) + + @contextmanager + def muted(self) -> c.Generator[None, None, None]: + """A context manager that temporarily disables the signal. No receivers + will be called if the signal is sent, until the ``with`` block exits. + Useful for tests. + """ + self.is_muted = True + + try: + yield None + finally: + self.is_muted = False + + def send( + self, + sender: t.Any | None = None, + /, + *, + _async_wrapper: c.Callable[ + [c.Callable[..., c.Coroutine[t.Any, t.Any, t.Any]]], c.Callable[..., t.Any] + ] + | None = None, + **kwargs: t.Any, + ) -> list[tuple[c.Callable[..., t.Any], t.Any]]: + """Call all receivers that are connected to the given ``sender`` + or :data:`ANY`. Each receiver is called with ``sender`` as a positional + argument along with any extra keyword arguments. Return a list of + ``(receiver, return value)`` tuples. + + The order receivers are called is undefined, but can be influenced by + setting :attr:`set_class`. + + If a receiver raises an exception, that exception will propagate up. + This makes debugging straightforward, with an assumption that correctly + implemented receivers will not raise. + + :param sender: Call receivers connected to this sender, in addition to + those connected to :data:`ANY`. + :param _async_wrapper: Will be called on any receivers that are async + coroutines to turn them into sync callables. For example, could run + the receiver with an event loop. + :param kwargs: Extra keyword arguments to pass to each receiver. + + .. versionchanged:: 1.7 + Added the ``_async_wrapper`` argument. + """ + if self.is_muted: + return [] + + results = [] + + for receiver in self.receivers_for(sender): + if iscoroutinefunction(receiver): + if _async_wrapper is None: + raise RuntimeError("Cannot send to a coroutine function.") + + result = _async_wrapper(receiver)(sender, **kwargs) + else: + result = receiver(sender, **kwargs) + + results.append((receiver, result)) + + return results + + async def send_async( + self, + sender: t.Any | None = None, + /, + *, + _sync_wrapper: c.Callable[ + [c.Callable[..., t.Any]], c.Callable[..., c.Coroutine[t.Any, t.Any, t.Any]] + ] + | None = None, + **kwargs: t.Any, + ) -> list[tuple[c.Callable[..., t.Any], t.Any]]: + """Await all receivers that are connected to the given ``sender`` + or :data:`ANY`. Each receiver is called with ``sender`` as a positional + argument along with any extra keyword arguments. Return a list of + ``(receiver, return value)`` tuples. + + The order receivers are called is undefined, but can be influenced by + setting :attr:`set_class`. + + If a receiver raises an exception, that exception will propagate up. + This makes debugging straightforward, with an assumption that correctly + implemented receivers will not raise. + + :param sender: Call receivers connected to this sender, in addition to + those connected to :data:`ANY`. + :param _sync_wrapper: Will be called on any receivers that are sync + callables to turn them into async coroutines. For example, + could call the receiver in a thread. + :param kwargs: Extra keyword arguments to pass to each receiver. + + .. versionadded:: 1.7 + """ + if self.is_muted: + return [] + + results = [] + + for receiver in self.receivers_for(sender): + if not iscoroutinefunction(receiver): + if _sync_wrapper is None: + raise RuntimeError("Cannot send to a non-coroutine function.") + + result = await _sync_wrapper(receiver)(sender, **kwargs) + else: + result = await receiver(sender, **kwargs) + + results.append((receiver, result)) + + return results + + def has_receivers_for(self, sender: t.Any) -> bool: + """Check if there is at least one receiver that will be called with the + given ``sender``. A receiver connected to :data:`ANY` will always be + called, regardless of sender. Does not check if weakly referenced + receivers are still live. See :meth:`receivers_for` for a stronger + search. + + :param sender: Check for receivers connected to this sender, in addition + to those connected to :data:`ANY`. + """ + if not self.receivers: + return False + + if self._by_sender[ANY_ID]: + return True + + if sender is ANY: + return False + + return make_id(sender) in self._by_sender + + def receivers_for( + self, sender: t.Any + ) -> c.Generator[c.Callable[..., t.Any], None, None]: + """Yield each receiver to be called for ``sender``, in addition to those + to be called for :data:`ANY`. Weakly referenced receivers that are not + live will be disconnected and skipped. + + :param sender: Yield receivers connected to this sender, in addition + to those connected to :data:`ANY`. + """ + # TODO: test receivers_for(ANY) + if not self.receivers: + return + + sender_id = make_id(sender) + + if sender_id in self._by_sender: + ids = self._by_sender[ANY_ID] | self._by_sender[sender_id] + else: + ids = self._by_sender[ANY_ID].copy() + + for receiver_id in ids: + receiver = self.receivers.get(receiver_id) + + if receiver is None: + continue + + if isinstance(receiver, weakref.ref): + strong = receiver() + + if strong is None: + self._disconnect(receiver_id, ANY_ID) + continue + + yield strong + else: + yield receiver + + def disconnect(self, receiver: c.Callable[..., t.Any], sender: t.Any = ANY) -> None: + """Disconnect ``receiver`` from being called when the signal is sent by + ``sender``. + + :param receiver: A connected receiver callable. + :param sender: Disconnect from only this sender. By default, disconnect + from all senders. + """ + sender_id: c.Hashable + + if sender is ANY: + sender_id = ANY_ID + else: + sender_id = make_id(sender) + + receiver_id = make_id(receiver) + self._disconnect(receiver_id, sender_id) + + if ( + "receiver_disconnected" in self.__dict__ + and self.receiver_disconnected.receivers + ): + self.receiver_disconnected.send(self, receiver=receiver, sender=sender) + + def _disconnect(self, receiver_id: c.Hashable, sender_id: c.Hashable) -> None: + if sender_id == ANY_ID: + if self._by_receiver.pop(receiver_id, None) is not None: + for bucket in self._by_sender.values(): + bucket.discard(receiver_id) + + self.receivers.pop(receiver_id, None) + else: + self._by_sender[sender_id].discard(receiver_id) + self._by_receiver[receiver_id].discard(sender_id) + + def _make_cleanup_receiver( + self, receiver_id: c.Hashable + ) -> c.Callable[[weakref.ref[c.Callable[..., t.Any]]], None]: + """Create a callback function to disconnect a weakly referenced + receiver when it is garbage collected. + """ + + def cleanup(ref: weakref.ref[c.Callable[..., t.Any]]) -> None: + # If the interpreter is shutting down, disconnecting can result in a + # weird ignored exception. Don't call it in that case. + if not sys.is_finalizing(): + self._disconnect(receiver_id, ANY_ID) + + return cleanup + + def _make_cleanup_sender( + self, sender_id: c.Hashable + ) -> c.Callable[[weakref.ref[t.Any]], None]: + """Create a callback function to disconnect all receivers for a weakly + referenced sender when it is garbage collected. + """ + assert sender_id != ANY_ID + + def cleanup(ref: weakref.ref[t.Any]) -> None: + self._weak_senders.pop(sender_id, None) + + for receiver_id in self._by_sender.pop(sender_id, ()): + self._by_receiver[receiver_id].discard(sender_id) + + return cleanup + + def _cleanup_bookkeeping(self) -> None: + """Prune unused sender/receiver bookkeeping. Not threadsafe. + + Connecting & disconnecting leaves behind a small amount of bookkeeping + data. Typical workloads using Blinker, for example in most web apps, + Flask, CLI scripts, etc., are not adversely affected by this + bookkeeping. + + With a long-running process performing dynamic signal routing with high + volume, e.g. connecting to function closures, senders are all unique + object instances. Doing all of this over and over may cause memory usage + to grow due to extraneous bookkeeping. (An empty ``set`` for each stale + sender/receiver pair.) + + This method will prune that bookkeeping away, with the caveat that such + pruning is not threadsafe. The risk is that cleanup of a fully + disconnected receiver/sender pair occurs while another thread is + connecting that same pair. If you are in the highly dynamic, unique + receiver/sender situation that has lead you to this method, that failure + mode is perhaps not a big deal for you. + """ + for mapping in (self._by_sender, self._by_receiver): + for ident, bucket in list(mapping.items()): + if not bucket: + mapping.pop(ident, None) + + def _clear_state(self) -> None: + """Disconnect all receivers and senders. Useful for tests.""" + self._weak_senders.clear() + self.receivers.clear() + self._by_sender.clear() + self._by_receiver.clear() + + +class NamedSignal(Signal): + """A named generic notification emitter. The name is not used by the signal + itself, but matches the key in the :class:`Namespace` that it belongs to. + + :param name: The name of the signal within the namespace. + :param doc: The docstring for the signal. + """ + + def __init__(self, name: str, doc: str | None = None) -> None: + super().__init__(doc) + + #: The name of this signal. + self.name: str = name + + def __repr__(self) -> str: + base = super().__repr__() + return f"{base[:-1]}; {self.name!r}>" # noqa: E702 + + +class Namespace(dict[str, NamedSignal]): + """A dict mapping names to signals.""" + + def signal(self, name: str, doc: str | None = None) -> NamedSignal: + """Return the :class:`NamedSignal` for the given ``name``, creating it + if required. Repeated calls with the same name return the same signal. + + :param name: The name of the signal. + :param doc: The docstring of the signal. + """ + if name not in self: + self[name] = NamedSignal(name, doc) + + return self[name] + + +class _PNamespaceSignal(t.Protocol): + def __call__(self, name: str, doc: str | None = None) -> NamedSignal: ... + + +default_namespace: Namespace = Namespace() +"""A default :class:`Namespace` for creating named signals. :func:`signal` +creates a :class:`NamedSignal` in this namespace. +""" + +signal: _PNamespaceSignal = default_namespace.signal +"""Return a :class:`NamedSignal` in :data:`default_namespace` with the given +``name``, creating it if required. Repeated calls with the same name return the +same signal. +""" diff --git a/venv/lib/python3.9/site-packages/blinker/py.typed b/venv/lib/python3.9/site-packages/blinker/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/METADATA b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/METADATA new file mode 100644 index 0000000..3816cc9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/METADATA @@ -0,0 +1,78 @@ +Metadata-Version: 2.4 +Name: certifi +Version: 2026.4.22 +Summary: Python package for providing Mozilla's CA Bundle. +Home-page: https://github.com/certifi/python-certifi +Author: Kenneth Reitz +Author-email: me@kennethreitz.com +License: MPL-2.0 +Project-URL: Source, https://github.com/certifi/python-certifi +Classifier: Development Status :: 5 - Production/Stable +Classifier: Intended Audience :: Developers +Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0) +Classifier: Natural Language :: English +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3 :: Only +Classifier: Programming Language :: Python :: 3.7 +Classifier: Programming Language :: Python :: 3.8 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: Programming Language :: Python :: 3.14 +Requires-Python: >=3.7 +License-File: LICENSE +Dynamic: author +Dynamic: author-email +Dynamic: classifier +Dynamic: description +Dynamic: home-page +Dynamic: license +Dynamic: license-file +Dynamic: project-url +Dynamic: requires-python +Dynamic: summary + +Certifi: Python SSL Certificates +================================ + +Certifi provides Mozilla's carefully curated collection of Root Certificates for +validating the trustworthiness of SSL certificates while verifying the identity +of TLS hosts. It has been extracted from the `Requests`_ project. + +Installation +------------ + +``certifi`` is available on PyPI. Simply install it with ``pip``:: + + $ pip install certifi + +Usage +----- + +To reference the installed certificate authority (CA) bundle, you can use the +built-in function:: + + >>> import certifi + + >>> certifi.where() + '/usr/local/lib/python3.7/site-packages/certifi/cacert.pem' + +Or from the command line:: + + $ python -m certifi + /usr/local/lib/python3.7/site-packages/certifi/cacert.pem + +Enjoy! + +.. _`Requests`: https://requests.readthedocs.io/en/master/ + +Addition/Removal of Certificates +-------------------------------- + +Certifi does not support any addition/removal or other modification of the +CA trust store content. This project is intended to provide a reliable and +highly portable root of trust to python deployments. Look to upstream projects +for methods to use alternate trust. diff --git a/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/RECORD b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/RECORD new file mode 100644 index 0000000..ffb4372 --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/RECORD @@ -0,0 +1,14 @@ +certifi-2026.4.22.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +certifi-2026.4.22.dist-info/METADATA,sha256=Ttb_6cy-0FBGq3v_ICTNPKcXKVs2i-0f4gpz42W8QVo,2474 +certifi-2026.4.22.dist-info/RECORD,, +certifi-2026.4.22.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91 +certifi-2026.4.22.dist-info/licenses/LICENSE,sha256=6TcW2mucDVpKHfYP5pWzcPBpVgPSH2-D8FPkLPwQyvc,989 +certifi-2026.4.22.dist-info/top_level.txt,sha256=KMu4vUCfsjLrkPbSNdgdekS-pVJzBAJFO__nI8NF6-U,8 +certifi/__init__.py,sha256=iBJYWtxRGHMaO1S73pWYpFn962WQ4ldof2GkfMSREJM,94 +certifi/__main__.py,sha256=xBBoj905TUWBLRGANOcf7oi6e-3dMP4cEoG9OyMs11g,243 +certifi/__pycache__/__init__.cpython-39.pyc,, +certifi/__pycache__/__main__.cpython-39.pyc,, +certifi/__pycache__/core.cpython-39.pyc,, +certifi/cacert.pem,sha256=Fr4_b-sVQIGV3P46oade-dty9ka5brvv3Gj1YlX3mfg,238641 +certifi/core.py,sha256=XFXycndG5pf37ayeF8N32HUuDafsyhkVMbO4BAPWHa0,3394 +certifi/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 diff --git a/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/WHEEL b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/WHEEL new file mode 100644 index 0000000..14a883f --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: setuptools (82.0.1) +Root-Is-Purelib: true +Tag: py3-none-any + diff --git a/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/licenses/LICENSE b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/licenses/LICENSE new file mode 100644 index 0000000..62b076c --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/licenses/LICENSE @@ -0,0 +1,20 @@ +This package contains a modified version of ca-bundle.crt: + +ca-bundle.crt -- Bundle of CA Root Certificates + +This is a bundle of X.509 certificates of public Certificate Authorities +(CA). These were automatically extracted from Mozilla's root certificates +file (certdata.txt). This file can be found in the mozilla source tree: +https://hg.mozilla.org/mozilla-central/file/tip/security/nss/lib/ckfw/builtins/certdata.txt +It contains the certificates in PEM format and therefore +can be directly used with curl / libcurl / php_curl, or with +an Apache+mod_ssl webserver for SSL client authentication. +Just configure this file as the SSLCACertificateFile.# + +***** BEGIN LICENSE BLOCK ***** +This Source Code Form is subject to the terms of the Mozilla Public License, +v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain +one at http://mozilla.org/MPL/2.0/. + +***** END LICENSE BLOCK ***** +@(#) $RCSfile: certdata.txt,v $ $Revision: 1.80 $ $Date: 2011/11/03 15:11:58 $ diff --git a/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/top_level.txt new file mode 100644 index 0000000..963eac5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi-2026.4.22.dist-info/top_level.txt @@ -0,0 +1 @@ +certifi diff --git a/venv/lib/python3.9/site-packages/certifi/__init__.py b/venv/lib/python3.9/site-packages/certifi/__init__.py new file mode 100644 index 0000000..9d711f4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi/__init__.py @@ -0,0 +1,4 @@ +from .core import contents, where + +__all__ = ["contents", "where"] +__version__ = "2026.04.22" diff --git a/venv/lib/python3.9/site-packages/certifi/__main__.py b/venv/lib/python3.9/site-packages/certifi/__main__.py new file mode 100644 index 0000000..8945b5d --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi/__main__.py @@ -0,0 +1,12 @@ +import argparse + +from certifi import contents, where + +parser = argparse.ArgumentParser() +parser.add_argument("-c", "--contents", action="store_true") +args = parser.parse_args() + +if args.contents: + print(contents()) +else: + print(where()) diff --git a/venv/lib/python3.9/site-packages/certifi/cacert.pem b/venv/lib/python3.9/site-packages/certifi/cacert.pem new file mode 100644 index 0000000..27132f5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi/cacert.pem @@ -0,0 +1,3933 @@ + +# Issuer: CN=COMODO ECC Certification Authority O=COMODO CA Limited +# Subject: CN=COMODO ECC Certification Authority O=COMODO CA Limited +# Label: "COMODO ECC Certification Authority" +# Serial: 41578283867086692638256921589707938090 +# MD5 Fingerprint: 7c:62:ff:74:9d:31:53:5e:68:4a:d5:78:aa:1e:bf:23 +# SHA1 Fingerprint: 9f:74:4e:9f:2b:4d:ba:ec:0f:31:2c:50:b6:56:3b:8e:2d:93:c3:11 +# SHA256 Fingerprint: 17:93:92:7a:06:14:54:97:89:ad:ce:2f:8f:34:f7:f0:b6:6d:0f:3a:e3:a3:b8:4d:21:ec:15:db:ba:4f:ad:c7 +-----BEGIN CERTIFICATE----- +MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTEL +MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE +BxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMT +IkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwMzA2MDAw +MDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdy +ZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09N +T0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlv +biBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSR +FtSrYpn1PlILBs5BAH+X4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0J +cfRK9ChQtP6IHG4/bC8vCVlbpVsLM5niwz2J+Wos77LTBumjQjBAMB0GA1UdDgQW +BBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ +BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VGFAkK+qDm +fQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdv +GDeAU/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= +-----END CERTIFICATE----- + +# Issuer: O=Chunghwa Telecom Co., Ltd. OU=ePKI Root Certification Authority +# Subject: O=Chunghwa Telecom Co., Ltd. OU=ePKI Root Certification Authority +# Label: "ePKI Root Certification Authority" +# Serial: 28956088682735189655030529057352760477 +# MD5 Fingerprint: 1b:2e:00:ca:26:06:90:3d:ad:fe:6f:15:68:d3:6b:b3 +# SHA1 Fingerprint: 67:65:0d:f1:7e:8e:7e:5b:82:40:a4:f4:56:4b:cf:e2:3d:69:c6:f0 +# SHA256 Fingerprint: c0:a6:f4:dc:63:a2:4b:fd:cf:54:ef:2a:6a:08:2a:0a:72:de:35:80:3e:2f:f5:ff:52:7a:e5:d8:72:06:df:d5 +-----BEGIN CERTIFICATE----- +MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBe +MQswCQYDVQQGEwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0 +ZC4xKjAoBgNVBAsMIWVQS0kgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe +Fw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMxMjdaMF4xCzAJBgNVBAYTAlRXMSMw +IQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEqMCgGA1UECwwhZVBL +SSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEF +AAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAH +SyZbCUNsIZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAh +ijHyl3SJCRImHJ7K2RKilTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3X +DZoTM1PRYfl61dd4s5oz9wCGzh1NlDivqOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1 +TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX12ruOzjjK9SXDrkb5wdJ +fzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0OWQqraffA +sgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uU +WH1+ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLS +nT0IFaUQAS2zMnaolQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pH +dmX2Os+PYhcZewoozRrSgx4hxyy/vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJip +NiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXiZo1jDiVN1Rmy5nk3pyKdVDEC +AwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/QkqiMAwGA1UdEwQF +MAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH +ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGB +uvl2ICO1J2B01GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6Yl +PwZpVnPDimZI+ymBV3QGypzqKOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkP +JXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdVxrsStZf0X4OFunHB2WyBEXYKCrC/ +gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEPNXubrjlpC2JgQCA2 +j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+rGNm6 +5ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUB +o2M3IUxExJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS +/jQ6fbjpKdx2qcgw+BRxgMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2z +Gp1iro2C6pSe3VkQw63d4k3jMdXH7OjysP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTE +W9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmODBCEIZ43ygknQW/2xzQ+D +hNQ+IIX3Sj0rnP0qCglN6oH4EZw= +-----END CERTIFICATE----- + +# Issuer: CN=NetLock Arany (Class Gold) F\u0151tan\xfas\xedtv\xe1ny O=NetLock Kft. OU=Tan\xfas\xedtv\xe1nykiad\xf3k (Certification Services) +# Subject: CN=NetLock Arany (Class Gold) F\u0151tan\xfas\xedtv\xe1ny O=NetLock Kft. OU=Tan\xfas\xedtv\xe1nykiad\xf3k (Certification Services) +# Label: "NetLock Arany (Class Gold) F\u0151tan\xfas\xedtv\xe1ny" +# Serial: 80544274841616 +# MD5 Fingerprint: c5:a1:b7:ff:73:dd:d6:d7:34:32:18:df:fc:3c:ad:88 +# SHA1 Fingerprint: 06:08:3f:59:3f:15:a1:04:a0:69:a4:6b:a9:03:d0:06:b7:97:09:91 +# SHA256 Fingerprint: 6c:61:da:c3:a2:de:f0:31:50:6b:e0:36:d2:a6:fe:40:19:94:fb:d1:3d:f9:c8:d4:66:59:92:74:c4:46:ec:98 +-----BEGIN CERTIFICATE----- +MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQG +EwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3 +MDUGA1UECwwuVGFuw7pzw610dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNl +cnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBBcmFueSAoQ2xhc3MgR29sZCkgRsWR +dGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgxMjA2MTUwODIxWjCB +pzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxOZXRM +b2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlm +aWNhdGlvbiBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNz +IEdvbGQpIEbFkXRhbsO6c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEAxCRec75LbRTDofTjl5Bu0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrT +lF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw/HpYzY6b7cNGbIRwXdrz +AZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAkH3B5r9s5 +VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRG +ILdwfzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2 +BJtr+UBdADTHLpl1neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAG +AQH/AgEEMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2M +U9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwWqZw8UQCgwBEIBaeZ5m8BiFRh +bvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTtaYtOUZcTh5m2C ++C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC +bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2F +uLjbvrW5KfnaNwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2 +XjG4Kvte9nHfRCaexOYNkbQudZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E= +-----END CERTIFICATE----- + +# Issuer: CN=Microsec e-Szigno Root CA 2009 O=Microsec Ltd. +# Subject: CN=Microsec e-Szigno Root CA 2009 O=Microsec Ltd. +# Label: "Microsec e-Szigno Root CA 2009" +# Serial: 14014712776195784473 +# MD5 Fingerprint: f8:49:f4:03:bc:44:2d:83:be:48:69:7d:29:64:fc:b1 +# SHA1 Fingerprint: 89:df:74:fe:5c:f4:0f:4a:80:f9:e3:37:7d:54:da:91:e1:01:31:8e +# SHA256 Fingerprint: 3c:5f:81:fe:a5:fa:b8:2c:64:bf:a2:ea:ec:af:cd:e8:e0:77:fc:86:20:a7:ca:e5:37:16:3d:f3:6e:db:f3:78 +-----BEGIN CERTIFICATE----- +MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD +VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0 +ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0G +CSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTAeFw0wOTA2MTYxMTMwMThaFw0y +OTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3Qx +FjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3pp +Z25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o +dTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvP +kd6mJviZpWNwrZuuyjNAfW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tc +cbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG0IMZfcChEhyVbUr02MelTTMuhTlAdX4U +fIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKApxn1ntxVUwOXewdI/5n7 +N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm1HxdrtbC +xkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1 ++rUCAwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G +A1UdDgQWBBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPM +Pcu1SCOhGnqmKrs0aDAbBgNVHREEFDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqG +SIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0olZMEyL/azXm4Q5DwpL7v8u8h +mLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfXI/OMn74dseGk +ddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775 +tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c +2Pm2G2JwCz02yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5t +HMN1Rq41Bab2XD0h7lbwyYIiLXpUq3DDfSJlgnCW +-----END CERTIFICATE----- + +# Issuer: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R3 +# Subject: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R3 +# Label: "GlobalSign Root CA - R3" +# Serial: 4835703278459759426209954 +# MD5 Fingerprint: c5:df:b8:49:ca:05:13:55:ee:2d:ba:1a:c3:3e:b0:28 +# SHA1 Fingerprint: d6:9b:56:11:48:f0:1c:77:c5:45:78:c1:09:26:df:5b:85:69:76:ad +# SHA256 Fingerprint: cb:b5:22:d7:b7:f1:27:ad:6a:01:13:86:5b:df:1c:d4:10:2e:7d:07:59:af:63:5a:7c:f4:72:0d:c9:63:c5:3b +-----BEGIN CERTIFICATE----- +MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G +A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp +Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4 +MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG +A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8 +RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT +gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm +KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd +QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ +XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw +DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o +LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU +RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp +jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK +6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX +mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs +Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH +WD9f +-----END CERTIFICATE----- + +# Issuer: CN=Izenpe.com O=IZENPE S.A. +# Subject: CN=Izenpe.com O=IZENPE S.A. +# Label: "Izenpe.com" +# Serial: 917563065490389241595536686991402621 +# MD5 Fingerprint: a6:b0:cd:85:80:da:5c:50:34:a3:39:90:2f:55:67:73 +# SHA1 Fingerprint: 2f:78:3d:25:52:18:a7:4a:65:39:71:b5:2c:a2:9c:45:15:6f:e9:19 +# SHA256 Fingerprint: 25:30:cc:8e:98:32:15:02:ba:d9:6f:9b:1f:ba:1b:09:9e:2d:29:9e:0f:45:48:bb:91:4f:36:3b:c0:d4:53:1f +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- + +# Issuer: CN=Go Daddy Root Certificate Authority - G2 O=GoDaddy.com, Inc. +# Subject: CN=Go Daddy Root Certificate Authority - G2 O=GoDaddy.com, Inc. +# Label: "Go Daddy Root Certificate Authority - G2" +# Serial: 0 +# MD5 Fingerprint: 80:3a:bc:22:c1:e6:fb:8d:9b:3b:27:4a:32:1b:9a:01 +# SHA1 Fingerprint: 47:be:ab:c9:22:ea:e8:0e:78:78:34:62:a7:9f:45:c2:54:fd:e6:8b +# SHA256 Fingerprint: 45:14:0b:32:47:eb:9c:c8:c5:b4:f0:d7:b5:30:91:f7:32:92:08:9e:6e:5a:63:e2:74:9d:d3:ac:a9:19:8e:da +-----BEGIN CERTIFICATE----- +MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx +EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT +EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp +ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIz +NTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH +EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8GA1UE +AxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIw +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKD +E6bFIEMBO4Tx5oVJnyfq9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH +/PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD+qK+ihVqf94Lw7YZFAXK6sOoBJQ7Rnwy +DfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutdfMh8+7ArU6SSYmlRJQVh +GkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMlNAJWJwGR +tDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEA +AaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE +FDqahQcQZyi27/a9BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmX +WWcDYfF+OwYxdS2hII5PZYe096acvNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu +9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r5N9ss4UXnT3ZJE95kTXWXwTr +gIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYVN8Gb5DKj7Tjo +2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO +LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI +4uJEvlz36hz1 +-----END CERTIFICATE----- + +# Issuer: CN=Starfield Root Certificate Authority - G2 O=Starfield Technologies, Inc. +# Subject: CN=Starfield Root Certificate Authority - G2 O=Starfield Technologies, Inc. +# Label: "Starfield Root Certificate Authority - G2" +# Serial: 0 +# MD5 Fingerprint: d6:39:81:c6:52:7e:96:69:fc:fc:ca:66:ed:05:f2:96 +# SHA1 Fingerprint: b5:1c:06:7c:ee:2b:0c:3d:f8:55:ab:2d:92:f4:fe:39:d4:e7:0f:0e +# SHA256 Fingerprint: 2c:e1:cb:0b:f9:d2:f9:e1:02:99:3f:be:21:51:52:c3:b2:dd:0c:ab:de:1c:68:e5:31:9b:83:91:54:db:b7:f5 +-----BEGIN CERTIFICATE----- +MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMx +EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT +HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVs +ZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAw +MFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6 +b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQgVGVj +aG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZp +Y2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAL3twQP89o/8ArFvW59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMg +nLRJdzIpVv257IzdIvpy3Cdhl+72WoTsbhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1 +HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNkN3mSwOxGXn/hbVNMYq/N +Hwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7NfZTD4p7dN +dloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0 +HZbUJtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO +BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0G +CSqGSIb3DQEBCwUAA4IBAQARWfolTwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjU +sHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx4mcujJUDJi5DnUox9g61DLu3 +4jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUwF5okxBDgBPfg +8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K +pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1 +mMpYjn0q7pBZc2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0 +-----END CERTIFICATE----- + +# Issuer: CN=Starfield Services Root Certificate Authority - G2 O=Starfield Technologies, Inc. +# Subject: CN=Starfield Services Root Certificate Authority - G2 O=Starfield Technologies, Inc. +# Label: "Starfield Services Root Certificate Authority - G2" +# Serial: 0 +# MD5 Fingerprint: 17:35:74:af:7b:61:1c:eb:f4:f9:3c:e2:ee:40:f9:a2 +# SHA1 Fingerprint: 92:5a:8f:8d:2c:6d:04:e0:66:5f:59:6a:ff:22:d8:63:e8:25:6f:3f +# SHA256 Fingerprint: 56:8d:69:05:a2:c8:87:08:a4:b3:02:51:90:ed:cf:ed:b1:97:4a:60:6a:13:c6:e5:29:0f:cb:2a:e6:3e:da:b5 +-----BEGIN CERTIFICATE----- +MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx +EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT +HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVs +ZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 +MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNVBAYTAlVTMRAwDgYD +VQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFy +ZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2Vy +dmljZXMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20p +OsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2 +8xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4PahHQUw2eeBGg6345AWh1K +Ts9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLPLJGmpufe +hRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk +6mFBrMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAw +DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+q +AdcwKziIorhtSpzyEZGDMA0GCSqGSIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMI +bw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPPE95Dz+I0swSdHynVv/heyNXB +ve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTyxQGjhdByPq1z +qwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd +iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn +0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN +sSi6 +-----END CERTIFICATE----- + +# Issuer: CN=Certum Trusted Network CA O=Unizeto Technologies S.A. OU=Certum Certification Authority +# Subject: CN=Certum Trusted Network CA O=Unizeto Technologies S.A. OU=Certum Certification Authority +# Label: "Certum Trusted Network CA" +# Serial: 279744 +# MD5 Fingerprint: d5:e9:81:40:c5:18:69:fc:46:2c:89:75:62:0f:aa:78 +# SHA1 Fingerprint: 07:e0:32:e0:20:b7:2c:3f:19:2f:06:28:a2:59:3a:19:a7:0f:06:9e +# SHA256 Fingerprint: 5c:58:46:8d:55:f5:8e:49:7e:74:39:82:d2:b5:00:10:b6:d1:65:37:4a:cf:83:a7:d4:a3:2d:b7:68:c4:40:8e +-----BEGIN CERTIFICATE----- +MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBM +MSIwIAYDVQQKExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5D +ZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBU +cnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIyMTIwNzM3WhcNMjkxMjMxMTIwNzM3 +WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBUZWNobm9sb2dpZXMg +Uy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSIw +IAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0B +AQEFAAOCAQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rH +UV+rpDKmYYe2bg+G0jACl/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LM +TXPb865Px1bVWqeWifrzq2jUI4ZZJ88JJ7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVU +BBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4fOQtf/WsX+sWn7Et0brM +kUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0cvW0QM8x +AcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNV +HRMBAf8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNV +HQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15y +sHhE49wcrwn9I0j6vSrEuVUEtRCjjSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfL +I9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1mS1FhIrlQgnXdAIv94nYmem8 +J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5ajZt3hrvJBW8qY +VoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI +03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw= +-----END CERTIFICATE----- + +# Issuer: CN=TWCA Root Certification Authority O=TAIWAN-CA OU=Root CA +# Subject: CN=TWCA Root Certification Authority O=TAIWAN-CA OU=Root CA +# Label: "TWCA Root Certification Authority" +# Serial: 1 +# MD5 Fingerprint: aa:08:8f:f6:f9:7b:b7:f2:b1:a7:1e:9b:ea:ea:bd:79 +# SHA1 Fingerprint: cf:9e:87:6d:d3:eb:fc:42:26:97:a3:b5:a3:7a:a0:76:a9:06:23:48 +# SHA256 Fingerprint: bf:d8:8f:e1:10:1c:41:ae:3e:80:1b:f8:be:56:35:0e:e9:ba:d1:a6:b9:bd:51:5e:dc:5c:6d:5b:87:11:ac:44 +-----BEGIN CERTIFICATE----- +MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzES +MBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFU +V0NBIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMz +WhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJVEFJV0FO +LUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlm +aWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB +AQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFE +AcK0HMMxQhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HH +K3XLfJ+utdGdIzdjp9xCoi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeX +RfwZVzsrb+RH9JlF/h3x+JejiB03HFyP4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/z +rX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1ry+UPizgN7gr8/g+YnzAx +3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV +HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkq +hkiG9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeC +MErJk/9q56YAf4lCmtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdls +XebQ79NqZp4VKIV66IIArB6nCWlWQtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62D +lhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVYT0bf+215WfKEIlKuD8z7fDvn +aspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocnyYh0igzyXxfkZ +YiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw== +-----END CERTIFICATE----- + +# Issuer: O=SECOM Trust Systems CO.,LTD. OU=Security Communication RootCA2 +# Subject: O=SECOM Trust Systems CO.,LTD. OU=Security Communication RootCA2 +# Label: "Security Communication RootCA2" +# Serial: 0 +# MD5 Fingerprint: 6c:39:7d:a4:0e:55:59:b2:3f:d6:41:b1:12:50:de:43 +# SHA1 Fingerprint: 5f:3b:8c:f2:f8:10:b3:7d:78:b4:ce:ec:19:19:c3:73:34:b9:c7:74 +# SHA256 Fingerprint: 51:3b:2c:ec:b8:10:d4:cd:e5:dd:85:39:1a:df:c6:c2:dd:60:d8:7b:b7:36:d2:b5:21:48:4a:a4:7a:0e:be:f6 +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDEl +MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMe +U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoX +DTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09NIFRy +dXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3VyaXR5IENvbW11bmlj +YXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANAV +OVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGr +zbl+dp+++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVM +VAX3NuRFg3sUZdbcDE3R3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQ +hNBqyjoGADdH5H5XTz+L62e4iKrFvlNVspHEfbmwhRkGeC7bYRr6hfVKkaHnFtWO +ojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1KEOtOghY6rCcMU/Gt1SSw +awNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8QIH4D5cs +OPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3 +DQEBCwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpF +coJxDjrSzG+ntKEju/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXc +okgfGT+Ok+vx+hfuzU7jBBJV1uXk3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8 +t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6qtnRGEmyR7jTV7JqR50S+kDFy +1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29mvVXIwAHIRc/ +SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03 +-----END CERTIFICATE----- + +# Issuer: CN=Actalis Authentication Root CA O=Actalis S.p.A./03358520967 +# Subject: CN=Actalis Authentication Root CA O=Actalis S.p.A./03358520967 +# Label: "Actalis Authentication Root CA" +# Serial: 6271844772424770508 +# MD5 Fingerprint: 69:c1:0d:4f:07:a3:1b:c3:fe:56:3d:04:bc:11:f6:a6 +# SHA1 Fingerprint: f3:73:b3:87:06:5a:28:84:8a:f2:f3:4a:ce:19:2b:dd:c7:8e:9c:ac +# SHA256 Fingerprint: 55:92:60:84:ec:96:3a:64:b9:6e:2a:be:01:ce:0b:a8:6a:64:fb:fe:bc:c7:aa:b5:af:c1:55:b3:7f:d7:60:66 +-----BEGIN CERTIFICATE----- +MIIFuzCCA6OgAwIBAgIIVwoRl0LE48wwDQYJKoZIhvcNAQELBQAwazELMAkGA1UE +BhMCSVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8w +MzM1ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290 +IENBMB4XDTExMDkyMjExMjIwMloXDTMwMDkyMjExMjIwMlowazELMAkGA1UEBhMC +SVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8wMzM1 +ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290IENB +MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAp8bEpSmkLO/lGMWwUKNv +UTufClrJwkg4CsIcoBh/kbWHuUA/3R1oHwiD1S0eiKD4j1aPbZkCkpAW1V8IbInX +4ay8IMKx4INRimlNAJZaby/ARH6jDuSRzVju3PvHHkVH3Se5CAGfpiEd9UEtL0z9 +KK3giq0itFZljoZUj5NDKd45RnijMCO6zfB9E1fAXdKDa0hMxKufgFpbOr3JpyI/ +gCczWw63igxdBzcIy2zSekciRDXFzMwujt0q7bd9Zg1fYVEiVRvjRuPjPdA1Yprb +rxTIW6HMiRvhMCb8oJsfgadHHwTrozmSBp+Z07/T6k9QnBn+locePGX2oxgkg4YQ +51Q+qDp2JE+BIcXjDwL4k5RHILv+1A7TaLndxHqEguNTVHnd25zS8gebLra8Pu2F +be8lEfKXGkJh90qX6IuxEAf6ZYGyojnP9zz/GPvG8VqLWeICrHuS0E4UT1lF9gxe +KF+w6D9Fz8+vm2/7hNN3WpVvrJSEnu68wEqPSpP4RCHiMUVhUE4Q2OM1fEwZtN4F +v6MGn8i1zeQf1xcGDXqVdFUNaBr8EBtiZJ1t4JWgw5QHVw0U5r0F+7if5t+L4sbn +fpb2U8WANFAoWPASUHEXMLrmeGO89LKtmyuy/uE5jF66CyCU3nuDuP/jVo23Eek7 +jPKxwV2dpAtMK9myGPW1n0sCAwEAAaNjMGEwHQYDVR0OBBYEFFLYiDrIn3hm7Ynz +ezhwlMkCAjbQMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUUtiIOsifeGbt +ifN7OHCUyQICNtAwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQAL +e3KHwGCmSUyIWOYdiPcUZEim2FgKDk8TNd81HdTtBjHIgT5q1d07GjLukD0R0i70 +jsNjLiNmsGe+b7bAEzlgqqI0JZN1Ut6nna0Oh4lScWoWPBkdg/iaKWW+9D+a2fDz +WochcYBNy+A4mz+7+uAwTc+G02UQGRjRlwKxK3JCaKygvU5a2hi/a5iB0P2avl4V +SM0RFbnAKVy06Ij3Pjaut2L9HmLecHgQHEhb2rykOLpn7VU+Xlff1ANATIGk0k9j +pwlCCRT8AKnCgHNPLsBA2RF7SOp6AsDT6ygBJlh0wcBzIm2Tlf05fbsq4/aC4yyX +X04fkZT6/iyj2HYauE2yOE+b+h1IYHkm4vP9qdCa6HCPSXrW5b0KDtst842/6+Ok +fcvHlXHo2qN8xcL4dJIEG4aspCJTQLas/kx2z/uUMsA1n3Y/buWQbqCmJqK4LL7R +K4X9p2jIugErsWx0Hbhzlefut8cl8ABMALJ+tguLHPPAUJ4lueAI3jZm/zel0btU +ZCzJJ7VLkn5l/9Mt4blOvH+kQSGQQXemOR/qnuOf0GZvBeyqdn6/axag67XH/JJU +LysRJyU3eExRarDzzFhdFPFqSBX/wge2sY0PjlxQRrM9vwGYT7JZVEc+NHt4bVaT +LnPqZih4zR0Uv6CPLy64Lo7yFIrM6bV8+2ydDKXhlg== +-----END CERTIFICATE----- + +# Issuer: CN=Buypass Class 2 Root CA O=Buypass AS-983163327 +# Subject: CN=Buypass Class 2 Root CA O=Buypass AS-983163327 +# Label: "Buypass Class 2 Root CA" +# Serial: 2 +# MD5 Fingerprint: 46:a7:d2:fe:45:fb:64:5a:a8:59:90:9b:78:44:9b:29 +# SHA1 Fingerprint: 49:0a:75:74:de:87:0a:47:fe:58:ee:f6:c7:6b:eb:c6:0b:12:40:99 +# SHA256 Fingerprint: 9a:11:40:25:19:7c:5b:b9:5d:94:e6:3d:55:cd:43:79:08:47:b6:46:b2:3c:df:11:ad:a4:a0:0e:ff:15:fb:48 +-----BEGIN CERTIFICATE----- +MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd +MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg +Q2xhc3MgMiBSb290IENBMB4XDTEwMTAyNjA4MzgwM1oXDTQwMTAyNjA4MzgwM1ow +TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw +HgYDVQQDDBdCdXlwYXNzIENsYXNzIDIgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB +BQADggIPADCCAgoCggIBANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Yf5FkNuud1g1Lr +6hxhFUi7HQfKjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzwx87vFKu3MwZfPV +L4O2fuPn9Z6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU3fUl8FVM5I+GC91 +1K2GScuVr1QGbNgGE41b/+EmGVnAJLqBcXmQRFBoJJRfuLMR8SlBYaNByyM21cHx +MlAQTn/0hpPshNOOvEu/XAFOBz3cFIqUCqTqc/sLUegTBxj6DvEr0VQVfTzh97QZ +QmdiXnfgolXsttlpF9U6r0TtSsWe5HonfOV116rLJeffawrbD02TTqigzXsu8lkB +arcNuAeBfos4GzjmCleZPe4h6KP1DBbdi+w0jpwqHAAVF41og9JwnxgIzRFo1clr +Us3ERo/ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifsSP5BtwrfKi+fv3FmRmaZ9JUaLi +FRhnBkp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf6o3YBkBjqhHk/sM3nhRS +P/TizPJhk9H9Z2vXUq6/aKtAQ6BXNVN48FP4YUIHZMbXb5tMOA1jrGKvNouicwoN +9SG9dKpN6nIDSdvHXx1iY8f93ZHsM+71bbRuMGjeyNYmsHVee7QHIJihdjK4TWxP +AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMmAd+BikoL1Rpzz +uvdMw964o605MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAU18h +9bqwOlI5LJKwbADJ784g7wbylp7ppHR/ehb8t/W2+xUbP6umwHJdELFx7rxP462s +A20ucS6vxOOto70MEae0/0qyexAQH6dXQbLArvQsWdZHEIjzIVEpMMpghq9Gqx3t +OluwlN5E40EIosHsHdb9T7bWR9AUC8rmyrV7d35BH16Dx7aMOZawP5aBQW9gkOLo ++fsicdl9sz1Gv7SEr5AcD48Saq/v7h56rgJKihcrdv6sVIkkLE8/trKnToyokZf7 +KcZ7XC25y2a2t6hbElGFtQl+Ynhw/qlqYLYdDnkM/crqJIByw5c/8nerQyIKx+u2 +DISCLIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2SMX6OBE1/yWDLfJ6v9r9jv6ly0Us +H8SIU653DtmadsWOLB2jutXsMq7Aqqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0oyLQ +I+uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5JyMV3pKdewlNWudLSDBaGOYKbeaP4NK7 +5t98biGCwWg5TbSYWGZizEqQXsP6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h +3PFaTWwyI0PurKju7koSCTxdccK+efrCh2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPz +Y11aWOIv4x3kqdbQCtCev9eBCfHJxyYNrJgWVqA= +-----END CERTIFICATE----- + +# Issuer: CN=Buypass Class 3 Root CA O=Buypass AS-983163327 +# Subject: CN=Buypass Class 3 Root CA O=Buypass AS-983163327 +# Label: "Buypass Class 3 Root CA" +# Serial: 2 +# MD5 Fingerprint: 3d:3b:18:9e:2c:64:5a:e8:d5:88:ce:0e:f9:37:c2:ec +# SHA1 Fingerprint: da:fa:f7:fa:66:84:ec:06:8f:14:50:bd:c7:c2:81:a5:bc:a9:64:57 +# SHA256 Fingerprint: ed:f7:eb:bc:a2:7a:2a:38:4d:38:7b:7d:40:10:c6:66:e2:ed:b4:84:3e:4c:29:b4:ae:1d:5b:93:32:e6:b2:4d +-----BEGIN CERTIFICATE----- +MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd +MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg +Q2xhc3MgMyBSb290IENBMB4XDTEwMTAyNjA4Mjg1OFoXDTQwMTAyNjA4Mjg1OFow +TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw +HgYDVQQDDBdCdXlwYXNzIENsYXNzIDMgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB +BQADggIPADCCAgoCggIBAKXaCpUWUOOV8l6ddjEGMnqb8RB2uACatVI2zSRHsJ8Y +ZLya9vrVediQYkwiL944PdbgqOkcLNt4EemOaFEVcsfzM4fkoF0LXOBXByow9c3E +N3coTRiR5r/VUv1xLXA+58bEiuPwKAv0dpihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9 +tznDDgFHmV0ST9tD+leh7fmdvhFHJlsTmKtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX +0DJq1l1sDPGzbjniazEuOQAnFN44wOwZZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c +/3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWsL8TQH2xc519woe2v1n/MuwU8X +KhDzzMro6/1rqy6any2CbgTUUgGTLT2G/H783+9CHaZr77kgxve9oKeV/afmiSTY +zIw0bOIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWNvS +O1UQRwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do29lLBlo3WiXQCBJ31G8JUJc9yB3D +34xFMFbG02SrZvPAXpacw8Tvw3xrizp5f7NJzz3iiZ+gMEuFuZyUJHmPfWupRWgP +K9Dx2hzLabjKSWJtyNBjYt1gD1iqj6G8BaVmos8bdrKEZLFMOVLAMLrwjEsCsLa3 +AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFEe4zf/lb+74suwv +Tg75JbCOPGvDMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAACAj +QTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoWFqRINyzpkMLyPPgKn9iB5btb2iUspKdV +cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5qb+FJEMwx14C7u8jYog5kV+qi9cKpMRXS +IGrs/CIBKM+GuIAeqcwRpTzyFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9Q2 +HJLw5QY33KbmkJs4j1xrG0aGQ0JfPgEHU1RdZX33inOhmlRaHylDFCfChQ+1iHsa +O5S3HWCntZznKWlXWpuTekMwGwPXYshApqr8ZORK15FTAaggiG6cX0S5y2CBNOxv +033aSF/rtJC8LakcC6wc1aJoIIAE1vyxjy+7SjENSoYc6+I2KSb12tjE8nVhz36u +dmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz6MkE +kbIRNBE+6tBDGR8Dk5AM/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcEQNtg41 +3OEMXbugUZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvD +u79leNKGef9JOxqDDPDeeOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq +4/g7u9xN12TyUb7mqqta6THuBrxzvxNiCp/HuZc= +-----END CERTIFICATE----- + +# Issuer: CN=T-TeleSec GlobalRoot Class 3 O=T-Systems Enterprise Services GmbH OU=T-Systems Trust Center +# Subject: CN=T-TeleSec GlobalRoot Class 3 O=T-Systems Enterprise Services GmbH OU=T-Systems Trust Center +# Label: "T-TeleSec GlobalRoot Class 3" +# Serial: 1 +# MD5 Fingerprint: ca:fb:40:a8:4e:39:92:8a:1d:fe:8e:2f:c4:27:ea:ef +# SHA1 Fingerprint: 55:a6:72:3e:cb:f2:ec:cd:c3:23:74:70:19:9d:2a:be:11:e3:81:d1 +# SHA256 Fingerprint: fd:73:da:d3:1c:64:4f:f1:b4:3b:ef:0c:cd:da:96:71:0b:9c:d9:87:5e:ca:7e:31:70:7a:f3:e9:6d:52:2b:bd +-----BEGIN CERTIFICATE----- +MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx +KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd +BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl +YyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgxMDAxMTAyOTU2WhcNMzMxMDAxMjM1 +OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy +aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50 +ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN +8ELg63iIVl6bmlQdTQyK9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/ +RLyTPWGrTs0NvvAgJ1gORH8EGoel15YUNpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4 +hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZFiP0Zf3WHHx+xGwpzJFu5 +ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W0eDrXltM +EnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGj +QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1 +A/d2O2GCahKqGFPrAyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOy +WL6ukK2YJ5f+AbGwUgC4TeQbIXQbfsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ +1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzTucpH9sry9uetuUg/vBa3wW30 +6gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7hP0HHRwA11fXT +91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml +e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4p +TpPDpFQUWw== +-----END CERTIFICATE----- + +# Issuer: CN=D-TRUST Root Class 3 CA 2 2009 O=D-Trust GmbH +# Subject: CN=D-TRUST Root Class 3 CA 2 2009 O=D-Trust GmbH +# Label: "D-TRUST Root Class 3 CA 2 2009" +# Serial: 623603 +# MD5 Fingerprint: cd:e0:25:69:8d:47:ac:9c:89:35:90:f7:fd:51:3d:2f +# SHA1 Fingerprint: 58:e8:ab:b0:36:15:33:fb:80:f7:9b:1b:6d:29:d3:ff:8d:5f:00:f0 +# SHA256 Fingerprint: 49:e7:a4:42:ac:f0:ea:62:87:05:00:54:b5:25:64:b6:50:e4:f4:9e:42:e3:48:d6:aa:38:e0:39:e9:57:b1:c1 +-----BEGIN CERTIFICATE----- +MIIEMzCCAxugAwIBAgIDCYPzMA0GCSqGSIb3DQEBCwUAME0xCzAJBgNVBAYTAkRF +MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMMHkQtVFJVU1QgUm9vdCBD +bGFzcyAzIENBIDIgMjAwOTAeFw0wOTExMDUwODM1NThaFw0yOTExMDUwODM1NTha +ME0xCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMM +HkQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgMjAwOTCCASIwDQYJKoZIhvcNAQEB +BQADggEPADCCAQoCggEBANOySs96R+91myP6Oi/WUEWJNTrGa9v+2wBoqOADER03 +UAifTUpolDWzU9GUY6cgVq/eUXjsKj3zSEhQPgrfRlWLJ23DEE0NkVJD2IfgXU42 +tSHKXzlABF9bfsyjxiupQB7ZNoTWSPOSHjRGICTBpFGOShrvUD9pXRl/RcPHAY9R +ySPocq60vFYJfxLLHLGvKZAKyVXMD9O0Gu1HNVpK7ZxzBCHQqr0ME7UAyiZsxGsM +lFqVlNpQmvH/pStmMaTJOKDfHR+4CS7zp+hnUquVH+BGPtikw8paxTGA6Eian5Rp +/hnd2HN8gcqW3o7tszIFZYQ05ub9VxC1X3a/L7AQDcUCAwEAAaOCARowggEWMA8G +A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFP3aFMSfMN4hvR5COfyrYyNJ4PGEMA4G +A1UdDwEB/wQEAwIBBjCB0wYDVR0fBIHLMIHIMIGAoH6gfIZ6bGRhcDovL2RpcmVj +dG9yeS5kLXRydXN0Lm5ldC9DTj1ELVRSVVNUJTIwUm9vdCUyMENsYXNzJTIwMyUy +MENBJTIwMiUyMDIwMDksTz1ELVRydXN0JTIwR21iSCxDPURFP2NlcnRpZmljYXRl +cmV2b2NhdGlvbmxpc3QwQ6BBoD+GPWh0dHA6Ly93d3cuZC10cnVzdC5uZXQvY3Js +L2QtdHJ1c3Rfcm9vdF9jbGFzc18zX2NhXzJfMjAwOS5jcmwwDQYJKoZIhvcNAQEL +BQADggEBAH+X2zDI36ScfSF6gHDOFBJpiBSVYEQBrLLpME+bUMJm2H6NMLVwMeni +acfzcNsgFYbQDfC+rAF1hM5+n02/t2A7nPPKHeJeaNijnZflQGDSNiH+0LS4F9p0 +o3/U37CYAqxva2ssJSRyoWXuJVrl5jLn8t+rSfrzkGkj2wTZ51xY/GXUl77M/C4K +zCUqNQT4YJEVdT1B/yMfGchs64JTBKbkTCJNjYy6zltz7GRUUG3RnFX7acM2w4y8 +PIWmawomDeCTmGCufsYkl4phX5GOZpIJhzbNi5stPvZR1FDUWSi9g/LMKHtThm3Y +Johw1+qRzT65ysCQblrGXnRl11z+o+I= +-----END CERTIFICATE----- + +# Issuer: CN=D-TRUST Root Class 3 CA 2 EV 2009 O=D-Trust GmbH +# Subject: CN=D-TRUST Root Class 3 CA 2 EV 2009 O=D-Trust GmbH +# Label: "D-TRUST Root Class 3 CA 2 EV 2009" +# Serial: 623604 +# MD5 Fingerprint: aa:c6:43:2c:5e:2d:cd:c4:34:c0:50:4f:11:02:4f:b6 +# SHA1 Fingerprint: 96:c9:1b:0b:95:b4:10:98:42:fa:d0:d8:22:79:fe:60:fa:b9:16:83 +# SHA256 Fingerprint: ee:c5:49:6b:98:8c:e9:86:25:b9:34:09:2e:ec:29:08:be:d0:b0:f3:16:c2:d4:73:0c:84:ea:f1:f3:d3:48:81 +-----BEGIN CERTIFICATE----- +MIIEQzCCAyugAwIBAgIDCYP0MA0GCSqGSIb3DQEBCwUAMFAxCzAJBgNVBAYTAkRF +MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1QgUm9vdCBD +bGFzcyAzIENBIDIgRVYgMjAwOTAeFw0wOTExMDUwODUwNDZaFw0yOTExMDUwODUw +NDZaMFAxCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNV +BAMMIUQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgRVYgMjAwOTCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBAJnxhDRwui+3MKCOvXwEz75ivJn9gpfSegpn +ljgJ9hBOlSJzmY3aFS3nBfwZcyK3jpgAvDw9rKFs+9Z5JUut8Mxk2og+KbgPCdM0 +3TP1YtHhzRnp7hhPTFiu4h7WDFsVWtg6uMQYZB7jM7K1iXdODL/ZlGsTl28So/6Z +qQTMFexgaDbtCHu39b+T7WYxg4zGcTSHThfqr4uRjRxWQa4iN1438h3Z0S0NL2lR +p75mpoo6Kr3HGrHhFPC+Oh25z1uxav60sUYgovseO3Dvk5h9jHOW8sXvhXCtKSb8 +HgQ+HKDYD8tSg2J87otTlZCpV6LqYQXY+U3EJ/pure3511H3a6UCAwEAAaOCASQw +ggEgMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNOUikxiEyoZLsyvcop9Ntea +HNxnMA4GA1UdDwEB/wQEAwIBBjCB3QYDVR0fBIHVMIHSMIGHoIGEoIGBhn9sZGFw +Oi8vZGlyZWN0b3J5LmQtdHJ1c3QubmV0L0NOPUQtVFJVU1QlMjBSb290JTIwQ2xh +c3MlMjAzJTIwQ0ElMjAyJTIwRVYlMjAyMDA5LE89RC1UcnVzdCUyMEdtYkgsQz1E +RT9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0MEagRKBChkBodHRwOi8vd3d3LmQt +dHJ1c3QubmV0L2NybC9kLXRydXN0X3Jvb3RfY2xhc3NfM19jYV8yX2V2XzIwMDku +Y3JsMA0GCSqGSIb3DQEBCwUAA4IBAQA07XtaPKSUiO8aEXUHL7P+PPoeUSbrh/Yp +3uDx1MYkCenBz1UbtDDZzhr+BlGmFaQt77JLvyAoJUnRpjZ3NOhk31KxEcdzes05 +nsKtjHEh8lprr988TlWvsoRlFIm5d8sqMb7Po23Pb0iUMkZv53GMoKaEGTcH8gNF +CSuGdXzfX2lXANtu2KZyIktQ1HWYVt+3GP9DQ1CuekR78HlR10M9p9OB0/DJT7na +xpeG0ILD5EJt/rDiZE4OJudANCa1CInXCGNjOCd1HjPqbqjdn5lPdE2BiYBL3ZqX +KVwvvoFBuYz/6n1gBp7N1z3TLqMVvKjmJuVvw9y4AyHqnxbxLFS1 +-----END CERTIFICATE----- + +# Issuer: CN=CA Disig Root R2 O=Disig a.s. +# Subject: CN=CA Disig Root R2 O=Disig a.s. +# Label: "CA Disig Root R2" +# Serial: 10572350602393338211 +# MD5 Fingerprint: 26:01:fb:d8:27:a7:17:9a:45:54:38:1a:43:01:3b:03 +# SHA1 Fingerprint: b5:61:eb:ea:a4:de:e4:25:4b:69:1a:98:a5:57:47:c2:34:c7:d9:71 +# SHA256 Fingerprint: e2:3d:4a:03:6d:7b:70:e9:f5:95:b1:42:20:79:d2:b9:1e:df:bb:1f:b6:51:a0:63:3e:aa:8a:9d:c5:f8:07:03 +-----BEGIN CERTIFICATE----- +MIIFaTCCA1GgAwIBAgIJAJK4iNuwisFjMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNV +BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu +MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIyMB4XDTEyMDcxOTA5MTUzMFoXDTQy +MDcxOTA5MTUzMFowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx +EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjIw +ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCio8QACdaFXS1tFPbCw3Oe +NcJxVX6B+6tGUODBfEl45qt5WDza/3wcn9iXAng+a0EE6UG9vgMsRfYvZNSrXaNH +PWSb6WiaxswbP7q+sos0Ai6YVRn8jG+qX9pMzk0DIaPY0jSTVpbLTAwAFjxfGs3I +x2ymrdMxp7zo5eFm1tL7A7RBZckQrg4FY8aAamkw/dLukO8NJ9+flXP04SXabBbe +QTg06ov80egEFGEtQX6sx3dOy1FU+16SGBsEWmjGycT6txOgmLcRK7fWV8x8nhfR +yyX+hk4kLlYMeE2eARKmK6cBZW58Yh2EhN/qwGu1pSqVg8NTEQxzHQuyRpDRQjrO +QG6Vrf/GlK1ul4SOfW+eioANSW1z4nuSHsPzwfPrLgVv2RvPN3YEyLRa5Beny912 +H9AZdugsBbPWnDTYltxhh5EF5EQIM8HauQhl1K6yNg3ruji6DOWbnuuNZt2Zz9aJ +QfYEkoopKW1rOhzndX0CcQ7zwOe9yxndnWCywmZgtrEE7snmhrmaZkCo5xHtgUUD +i/ZnWejBBhG93c+AAk9lQHhcR1DIm+YfgXvkRKhbhZri3lrVx/k6RGZL5DJUfORs +nLMOPReisjQS1n6yqEm70XooQL6iFh/f5DcfEXP7kAplQ6INfPgGAVUzfbANuPT1 +rqVCV3w2EYx7XsQDnYx5nQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud +DwEB/wQEAwIBBjAdBgNVHQ4EFgQUtZn4r7CU9eMg1gqtzk5WpC5uQu0wDQYJKoZI +hvcNAQELBQADggIBACYGXnDnZTPIgm7ZnBc6G3pmsgH2eDtpXi/q/075KMOYKmFM +tCQSin1tERT3nLXK5ryeJ45MGcipvXrA1zYObYVybqjGom32+nNjf7xueQgcnYqf +GopTpti72TVVsRHFqQOzVju5hJMiXn7B9hJSi+osZ7z+Nkz1uM/Rs0mSO9MpDpkb +lvdhuDvEK7Z4bLQjb/D907JedR+Zlais9trhxTF7+9FGs9K8Z7RiVLoJ92Owk6Ka ++elSLotgEqv89WBW7xBci8QaQtyDW2QOy7W81k/BfDxujRNt+3vrMNDcTa/F1bal +TFtxyegxvug4BkihGuLq0t4SOVga/4AOgnXmt8kHbA7v/zjxmHHEt38OFdAlab0i +nSvtBfZGR6ztwPDUO+Ls7pZbkBNOHlY667DvlruWIxG68kOGdGSVyCh13x01utI3 +gzhTODY7z2zp+WsO0PsE6E9312UBeIYMej4hYvF/Y3EMyZ9E26gnonW+boE+18Dr +G5gPcFw0sorMwIUY6256s/daoQe/qUKS82Ail+QUoQebTnbAjn39pCXHR+3/H3Os +zMOl6W8KjptlwlCFtaOgUxLMVYdh84GuEEZhvUQhuMI9dM9+JDX6HAcOmz0iyu8x +L4ysEr3vQCj8KWefshNPZiTEUxnpHikV7+ZtsH8tZ/3zbBt1RqPlShfppNcL +-----END CERTIFICATE----- + +# Issuer: CN=ACCVRAIZ1 O=ACCV OU=PKIACCV +# Subject: CN=ACCVRAIZ1 O=ACCV OU=PKIACCV +# Label: "ACCVRAIZ1" +# Serial: 6828503384748696800 +# MD5 Fingerprint: d0:a0:5a:ee:05:b6:09:94:21:a1:7d:f1:b2:29:82:02 +# SHA1 Fingerprint: 93:05:7a:88:15:c6:4f:ce:88:2f:fa:91:16:52:28:78:bc:53:64:17 +# SHA256 Fingerprint: 9a:6e:c0:12:e1:a7:da:9d:be:34:19:4d:47:8a:d7:c0:db:18:22:fb:07:1d:f1:29:81:49:6e:d1:04:38:41:13 +-----BEGIN CERTIFICATE----- +MIIH0zCCBbugAwIBAgIIXsO3pkN/pOAwDQYJKoZIhvcNAQEFBQAwQjESMBAGA1UE +AwwJQUNDVlJBSVoxMRAwDgYDVQQLDAdQS0lBQ0NWMQ0wCwYDVQQKDARBQ0NWMQsw +CQYDVQQGEwJFUzAeFw0xMTA1MDUwOTM3MzdaFw0zMDEyMzEwOTM3MzdaMEIxEjAQ +BgNVBAMMCUFDQ1ZSQUlaMTEQMA4GA1UECwwHUEtJQUNDVjENMAsGA1UECgwEQUND +VjELMAkGA1UEBhMCRVMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCb +qau/YUqXry+XZpp0X9DZlv3P4uRm7x8fRzPCRKPfmt4ftVTdFXxpNRFvu8gMjmoY +HtiP2Ra8EEg2XPBjs5BaXCQ316PWywlxufEBcoSwfdtNgM3802/J+Nq2DoLSRYWo +G2ioPej0RGy9ocLLA76MPhMAhN9KSMDjIgro6TenGEyxCQ0jVn8ETdkXhBilyNpA +lHPrzg5XPAOBOp0KoVdDaaxXbXmQeOW1tDvYvEyNKKGno6e6Ak4l0Squ7a4DIrhr +IA8wKFSVf+DuzgpmndFALW4ir50awQUZ0m/A8p/4e7MCQvtQqR0tkw8jq8bBD5L/ +0KIV9VMJcRz/RROE5iZe+OCIHAr8Fraocwa48GOEAqDGWuzndN9wrqODJerWx5eH +k6fGioozl2A3ED6XPm4pFdahD9GILBKfb6qkxkLrQaLjlUPTAYVtjrs78yM2x/47 +4KElB0iryYl0/wiPgL/AlmXz7uxLaL2diMMxs0Dx6M/2OLuc5NF/1OVYm3z61PMO +m3WR5LpSLhl+0fXNWhn8ugb2+1KoS5kE3fj5tItQo05iifCHJPqDQsGH+tUtKSpa +cXpkatcnYGMN285J9Y0fkIkyF/hzQ7jSWpOGYdbhdQrqeWZ2iE9x6wQl1gpaepPl +uUsXQA+xtrn13k/c4LOsOxFwYIRKQ26ZIMApcQrAZQIDAQABo4ICyzCCAscwfQYI +KwYBBQUHAQEEcTBvMEwGCCsGAQUFBzAChkBodHRwOi8vd3d3LmFjY3YuZXMvZmls +ZWFkbWluL0FyY2hpdm9zL2NlcnRpZmljYWRvcy9yYWl6YWNjdjEuY3J0MB8GCCsG +AQUFBzABhhNodHRwOi8vb2NzcC5hY2N2LmVzMB0GA1UdDgQWBBTSh7Tj3zcnk1X2 +VuqB5TbMjB4/vTAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFNKHtOPfNyeT +VfZW6oHlNsyMHj+9MIIBcwYDVR0gBIIBajCCAWYwggFiBgRVHSAAMIIBWDCCASIG +CCsGAQUFBwICMIIBFB6CARAAQQB1AHQAbwByAGkAZABhAGQAIABkAGUAIABDAGUA +cgB0AGkAZgBpAGMAYQBjAGkA8wBuACAAUgBhAO0AegAgAGQAZQAgAGwAYQAgAEEA +QwBDAFYAIAAoAEEAZwBlAG4AYwBpAGEAIABkAGUAIABUAGUAYwBuAG8AbABvAGcA +7QBhACAAeQAgAEMAZQByAHQAaQBmAGkAYwBhAGMAaQDzAG4AIABFAGwAZQBjAHQA +cgDzAG4AaQBjAGEALAAgAEMASQBGACAAUQA0ADYAMAAxADEANQA2AEUAKQAuACAA +QwBQAFMAIABlAG4AIABoAHQAdABwADoALwAvAHcAdwB3AC4AYQBjAGMAdgAuAGUA +czAwBggrBgEFBQcCARYkaHR0cDovL3d3dy5hY2N2LmVzL2xlZ2lzbGFjaW9uX2Mu +aHRtMFUGA1UdHwROMEwwSqBIoEaGRGh0dHA6Ly93d3cuYWNjdi5lcy9maWxlYWRt +aW4vQXJjaGl2b3MvY2VydGlmaWNhZG9zL3JhaXphY2N2MV9kZXIuY3JsMA4GA1Ud +DwEB/wQEAwIBBjAXBgNVHREEEDAOgQxhY2N2QGFjY3YuZXMwDQYJKoZIhvcNAQEF +BQADggIBAJcxAp/n/UNnSEQU5CmH7UwoZtCPNdpNYbdKl02125DgBS4OxnnQ8pdp +D70ER9m+27Up2pvZrqmZ1dM8MJP1jaGo/AaNRPTKFpV8M9xii6g3+CfYCS0b78gU +JyCpZET/LtZ1qmxNYEAZSUNUY9rizLpm5U9EelvZaoErQNV/+QEnWCzI7UiRfD+m +AM/EKXMRNt6GGT6d7hmKG9Ww7Y49nCrADdg9ZuM8Db3VlFzi4qc1GwQA9j9ajepD +vV+JHanBsMyZ4k0ACtrJJ1vnE5Bc5PUzolVt3OAJTS+xJlsndQAJxGJ3KQhfnlms +tn6tn1QwIgPBHnFk/vk4CpYY3QIUrCPLBhwepH2NDd4nQeit2hW3sCPdK6jT2iWH +7ehVRE2I9DZ+hJp4rPcOVkkO1jMl1oRQQmwgEh0q1b688nCBpHBgvgW1m54ERL5h +I6zppSSMEYCUWqKiuUnSwdzRp+0xESyeGabu4VXhwOrPDYTkF7eifKXeVSUG7szA +h1xA2syVP1XgNce4hL60Xc16gwFy7ofmXx2utYXGJt/mwZrpHgJHnyqobalbz+xF +d3+YJ5oyXSrjhO7FmGYvliAd3djDJ9ew+f7Zfc3Qn48LFFhRny+Lwzgt3uiP1o2H +pPVWQxaZLPSkVrQ0uGE3ycJYgBugl6H8WY3pEfbRD0tVNEYqi4Y7 +-----END CERTIFICATE----- + +# Issuer: CN=TWCA Global Root CA O=TAIWAN-CA OU=Root CA +# Subject: CN=TWCA Global Root CA O=TAIWAN-CA OU=Root CA +# Label: "TWCA Global Root CA" +# Serial: 3262 +# MD5 Fingerprint: f9:03:7e:cf:e6:9e:3c:73:7a:2a:90:07:69:ff:2b:96 +# SHA1 Fingerprint: 9c:bb:48:53:f6:a4:f6:d3:52:a4:e8:32:52:55:60:13:f5:ad:af:65 +# SHA256 Fingerprint: 59:76:90:07:f7:68:5d:0f:cd:50:87:2f:9f:95:d5:75:5a:5b:2b:45:7d:81:f3:69:2b:61:0a:98:67:2f:0e:1b +-----BEGIN CERTIFICATE----- +MIIFQTCCAymgAwIBAgICDL4wDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVFcx +EjAQBgNVBAoTCVRBSVdBTi1DQTEQMA4GA1UECxMHUm9vdCBDQTEcMBoGA1UEAxMT +VFdDQSBHbG9iYWwgUm9vdCBDQTAeFw0xMjA2MjcwNjI4MzNaFw0zMDEyMzExNTU5 +NTlaMFExCzAJBgNVBAYTAlRXMRIwEAYDVQQKEwlUQUlXQU4tQ0ExEDAOBgNVBAsT +B1Jvb3QgQ0ExHDAaBgNVBAMTE1RXQ0EgR2xvYmFsIFJvb3QgQ0EwggIiMA0GCSqG +SIb3DQEBAQUAA4ICDwAwggIKAoICAQCwBdvI64zEbooh745NnHEKH1Jw7W2CnJfF +10xORUnLQEK1EjRsGcJ0pDFfhQKX7EMzClPSnIyOt7h52yvVavKOZsTuKwEHktSz +0ALfUPZVr2YOy+BHYC8rMjk1Ujoog/h7FsYYuGLWRyWRzvAZEk2tY/XTP3VfKfCh +MBwqoJimFb3u/Rk28OKRQ4/6ytYQJ0lM793B8YVwm8rqqFpD/G2Gb3PpN0Wp8DbH +zIh1HrtsBv+baz4X7GGqcXzGHaL3SekVtTzWoWH1EfcFbx39Eb7QMAfCKbAJTibc +46KokWofwpFFiFzlmLhxpRUZyXx1EcxwdE8tmx2RRP1WKKD+u4ZqyPpcC1jcxkt2 +yKsi2XMPpfRaAok/T54igu6idFMqPVMnaR1sjjIsZAAmY2E2TqNGtz99sy2sbZCi +laLOz9qC5wc0GZbpuCGqKX6mOL6OKUohZnkfs8O1CWfe1tQHRvMq2uYiN2DLgbYP +oA/pyJV/v1WRBXrPPRXAb94JlAGD1zQbzECl8LibZ9WYkTunhHiVJqRaCPgrdLQA +BDzfuBSO6N+pjWxnkjMdwLfS7JLIvgm/LCkFbwJrnu+8vyq8W8BQj0FwcYeyTbcE +qYSjMq+u7msXi7Kx/mzhkIyIqJdIzshNy/MGz19qCkKxHh53L46g5pIOBvwFItIm +4TFRfTLcDwIDAQABoyMwITAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB +/zANBgkqhkiG9w0BAQsFAAOCAgEAXzSBdu+WHdXltdkCY4QWwa6gcFGn90xHNcgL +1yg9iXHZqjNB6hQbbCEAwGxCGX6faVsgQt+i0trEfJdLjbDorMjupWkEmQqSpqsn +LhpNgb+E1HAerUf+/UqdM+DyucRFCCEK2mlpc3INvjT+lIutwx4116KD7+U4x6WF +H6vPNOw/KP4M8VeGTslV9xzU2KV9Bnpv1d8Q34FOIWWxtuEXeZVFBs5fzNxGiWNo +RI2T9GRwoD2dKAXDOXC4Ynsg/eTb6QihuJ49CcdP+yz4k3ZB3lLg4VfSnQO8d57+ +nile98FRYB/e2guyLXW3Q0iT5/Z5xoRdgFlglPx4mI88k1HtQJAH32RjJMtOcQWh +15QaiDLxInQirqWm2BJpTGCjAu4r7NRjkgtevi92a6O2JryPA9gK8kxkRr05YuWW +6zRjESjMlfGt7+/cgFhI6Uu46mWs6fyAtbXIRfmswZ/ZuepiiI7E8UuDEq3mi4TW +nsLrgxifarsbJGAzcMzs9zLzXNl5fe+epP7JI8Mk7hWSsT2RTyaGvWZzJBPqpK5j +wa19hAM8EHiGG3njxPPyBJUgriOCxLM6AGK/5jYk4Ve6xx6QddVfP5VhK8E7zeWz +aGHQRiapIVJpLesux+t3zqY6tQMzT3bR51xUAV3LePTJDL/PEo4XLSNolOer/qmy +KwbQBM0= +-----END CERTIFICATE----- + +# Issuer: CN=T-TeleSec GlobalRoot Class 2 O=T-Systems Enterprise Services GmbH OU=T-Systems Trust Center +# Subject: CN=T-TeleSec GlobalRoot Class 2 O=T-Systems Enterprise Services GmbH OU=T-Systems Trust Center +# Label: "T-TeleSec GlobalRoot Class 2" +# Serial: 1 +# MD5 Fingerprint: 2b:9b:9e:e4:7b:6c:1f:00:72:1a:cc:c1:77:79:df:6a +# SHA1 Fingerprint: 59:0d:2d:7d:88:4f:40:2e:61:7e:a5:62:32:17:65:cf:17:d8:94:e9 +# SHA256 Fingerprint: 91:e2:f5:78:8d:58:10:eb:a7:ba:58:73:7d:e1:54:8a:8e:ca:cd:01:45:98:bc:0b:14:3e:04:1b:17:05:25:52 +-----BEGIN CERTIFICATE----- +MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx +KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd +BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl +YyBHbG9iYWxSb290IENsYXNzIDIwHhcNMDgxMDAxMTA0MDE0WhcNMzMxMDAxMjM1 +OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy +aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50 +ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDIwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCqX9obX+hzkeXaXPSi5kfl82hVYAUd +AqSzm1nzHoqvNK38DcLZSBnuaY/JIPwhqgcZ7bBcrGXHX+0CfHt8LRvWurmAwhiC +FoT6ZrAIxlQjgeTNuUk/9k9uN0goOA/FvudocP05l03Sx5iRUKrERLMjfTlH6VJi +1hKTXrcxlkIF+3anHqP1wvzpesVsqXFP6st4vGCvx9702cu+fjOlbpSD8DT6Iavq +jnKgP6TeMFvvhk1qlVtDRKgQFRzlAVfFmPHmBiiRqiDFt1MmUUOyCxGVWOHAD3bZ +wI18gfNycJ5v/hqO2V81xrJvNHy+SE/iWjnX2J14np+GPgNeGYtEotXHAgMBAAGj +QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS/ +WSA2AHmgoCJrjNXyYdK4LMuCSjANBgkqhkiG9w0BAQsFAAOCAQEAMQOiYQsfdOhy +NsZt+U2e+iKo4YFWz827n+qrkRk4r6p8FU3ztqONpfSO9kSpp+ghla0+AGIWiPAC +uvxhI+YzmzB6azZie60EI4RYZeLbK4rnJVM3YlNfvNoBYimipidx5joifsFvHZVw +IEoHNN/q/xWA5brXethbdXwFeilHfkCoMRN3zUA7tFFHei4R40cR3p1m0IvVVGb6 +g1XqfMIpiRvpb7PO4gWEyS8+eIVibslfwXhjdFjASBgMmTnrpMwatXlajRWc2BQN +9noHV8cigwUtPJslJj0Ys6lDfMjIq2SPDqO/nBudMNva0Bkuqjzx+zOAduTNrRlP +BSeOE6Fuwg== +-----END CERTIFICATE----- + +# Issuer: CN=Atos TrustedRoot 2011 O=Atos +# Subject: CN=Atos TrustedRoot 2011 O=Atos +# Label: "Atos TrustedRoot 2011" +# Serial: 6643877497813316402 +# MD5 Fingerprint: ae:b9:c4:32:4b:ac:7f:5d:66:cc:77:94:bb:2a:77:56 +# SHA1 Fingerprint: 2b:b1:f5:3e:55:0c:1d:c5:f1:d4:e6:b7:6a:46:4b:55:06:02:ac:21 +# SHA256 Fingerprint: f3:56:be:a2:44:b7:a9:1e:b3:5d:53:ca:9a:d7:86:4a:ce:01:8e:2d:35:d5:f8:f9:6d:df:68:a6:f4:1a:a4:74 +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIIXDPLYixfszIwDQYJKoZIhvcNAQELBQAwPDEeMBwGA1UE +AwwVQXRvcyBUcnVzdGVkUm9vdCAyMDExMQ0wCwYDVQQKDARBdG9zMQswCQYDVQQG +EwJERTAeFw0xMTA3MDcxNDU4MzBaFw0zMDEyMzEyMzU5NTlaMDwxHjAcBgNVBAMM +FUF0b3MgVHJ1c3RlZFJvb3QgMjAxMTENMAsGA1UECgwEQXRvczELMAkGA1UEBhMC +REUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCVhTuXbyo7LjvPpvMp +Nb7PGKw+qtn4TaA+Gke5vJrf8v7MPkfoepbCJI419KkM/IL9bcFyYie96mvr54rM +VD6QUM+A1JX76LWC1BTFtqlVJVfbsVD2sGBkWXppzwO3bw2+yj5vdHLqqjAqc2K+ +SZFhyBH+DgMq92og3AIVDV4VavzjgsG1xZ1kCWyjWZgHJ8cblithdHFsQ/H3NYkQ +4J7sVaE3IqKHBAUsR320HLliKWYoyrfhk/WklAOZuXCFteZI6o1Q/NnezG8HDt0L +cp2AMBYHlT8oDv3FdU9T1nSatCQujgKRz3bFmx5VdJx4IbHwLfELn8LVlhgf8FQi +eowHAgMBAAGjfTB7MB0GA1UdDgQWBBSnpQaxLKYJYO7Rl+lwrrw7GWzbITAPBgNV +HRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKelBrEspglg7tGX6XCuvDsZbNshMBgG +A1UdIAQRMA8wDQYLKwYBBAGwLQMEAQEwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3 +DQEBCwUAA4IBAQAmdzTblEiGKkGdLD4GkGDEjKwLVLgfuXvTBznk+j57sj1O7Z8j +vZfza1zv7v1Apt+hk6EKhqzvINB5Ab149xnYJDE0BAGmuhWawyfc2E8PzBhj/5kP +DpFrdRbhIfzYJsdHt6bPWHJxfrrhTZVHO8mvbaG0weyJ9rQPOLXiZNwlz6bb65pc +maHFCN795trV1lpFDMS3wrUU77QR/w4VtfX128a961qn8FYiqTxlVMYVqL2Gns2D +lmh6cYGJ4Qvh6hEbaAjMaZ7snkGeRDImeuKHCnE96+RapNLbxc3G3mB/ufNPRJLv +KrcYPqcZ2Qt9sTdBQrC6YB3y/gkRsPCHe6ed +-----END CERTIFICATE----- + +# Issuer: CN=QuoVadis Root CA 1 G3 O=QuoVadis Limited +# Subject: CN=QuoVadis Root CA 1 G3 O=QuoVadis Limited +# Label: "QuoVadis Root CA 1 G3" +# Serial: 687049649626669250736271037606554624078720034195 +# MD5 Fingerprint: a4:bc:5b:3f:fe:37:9a:fa:64:f0:e2:fa:05:3d:0b:ab +# SHA1 Fingerprint: 1b:8e:ea:57:96:29:1a:c9:39:ea:b8:0a:81:1a:73:73:c0:93:79:67 +# SHA256 Fingerprint: 8a:86:6f:d1:b2:76:b5:7e:57:8e:92:1c:65:82:8a:2b:ed:58:e9:f2:f2:88:05:41:34:b7:f1:f4:bf:c9:cc:74 +-----BEGIN CERTIFICATE----- +MIIFYDCCA0igAwIBAgIUeFhfLq0sGUvjNwc1NBMotZbUZZMwDQYJKoZIhvcNAQEL +BQAwSDELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAc +BgNVBAMTFVF1b1ZhZGlzIFJvb3QgQ0EgMSBHMzAeFw0xMjAxMTIxNzI3NDRaFw00 +MjAxMTIxNzI3NDRaMEgxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM +aW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDEgRzMwggIiMA0GCSqG +SIb3DQEBAQUAA4ICDwAwggIKAoICAQCgvlAQjunybEC0BJyFuTHK3C3kEakEPBtV +wedYMB0ktMPvhd6MLOHBPd+C5k+tR4ds7FtJwUrVu4/sh6x/gpqG7D0DmVIB0jWe +rNrwU8lmPNSsAgHaJNM7qAJGr6Qc4/hzWHa39g6QDbXwz8z6+cZM5cOGMAqNF341 +68Xfuw6cwI2H44g4hWf6Pser4BOcBRiYz5P1sZK0/CPTz9XEJ0ngnjybCKOLXSoh +4Pw5qlPafX7PGglTvF0FBM+hSo+LdoINofjSxxR3W5A2B4GbPgb6Ul5jxaYA/qXp +UhtStZI5cgMJYr2wYBZupt0lwgNm3fME0UDiTouG9G/lg6AnhF4EwfWQvTA9xO+o +abw4m6SkltFi2mnAAZauy8RRNOoMqv8hjlmPSlzkYZqn0ukqeI1RPToV7qJZjqlc +3sX5kCLliEVx3ZGZbHqfPT2YfF72vhZooF6uCyP8Wg+qInYtyaEQHeTTRCOQiJ/G +KubX9ZqzWB4vMIkIG1SitZgj7Ah3HJVdYdHLiZxfokqRmu8hqkkWCKi9YSgxyXSt +hfbZxbGL0eUQMk1fiyA6PEkfM4VZDdvLCXVDaXP7a3F98N/ETH3Goy7IlXnLc6KO +Tk0k+17kBL5yG6YnLUlamXrXXAkgt3+UuU/xDRxeiEIbEbfnkduebPRq34wGmAOt +zCjvpUfzUwIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB +BjAdBgNVHQ4EFgQUo5fW816iEOGrRZ88F2Q87gFwnMwwDQYJKoZIhvcNAQELBQAD +ggIBABj6W3X8PnrHX3fHyt/PX8MSxEBd1DKquGrX1RUVRpgjpeaQWxiZTOOtQqOC +MTaIzen7xASWSIsBx40Bz1szBpZGZnQdT+3Btrm0DWHMY37XLneMlhwqI2hrhVd2 +cDMT/uFPpiN3GPoajOi9ZcnPP/TJF9zrx7zABC4tRi9pZsMbj/7sPtPKlL92CiUN +qXsCHKnQO18LwIE6PWThv6ctTr1NxNgpxiIY0MWscgKCP6o6ojoilzHdCGPDdRS5 +YCgtW2jgFqlmgiNR9etT2DGbe+m3nUvriBbP+V04ikkwj+3x6xn0dxoxGE1nVGwv +b2X52z3sIexe9PSLymBlVNFxZPT5pqOBMzYzcfCkeF9OrYMh3jRJjehZrJ3ydlo2 +8hP0r+AJx2EqbPfgna67hkooby7utHnNkDPDs3b69fBsnQGQ+p6Q9pxyz0fawx/k +NSBT8lTR32GDpgLiJTjehTItXnOQUl1CxM49S+H5GYQd1aJQzEH7QRTDvdbJWqNj +ZgKAvQU6O0ec7AAmTPWIUb+oI38YB7AL7YsmoWTTYUrrXJ/es69nA7Mf3W1daWhp +q1467HxpvMc7hU6eFbm0FU/DlXpY18ls6Wy58yljXrQs8C097Vpl4KlbQMJImYFt +nh8GKjwStIsPm6Ik8KaN1nrgS7ZklmOVhMJKzRwuJIczYOXD +-----END CERTIFICATE----- + +# Issuer: CN=QuoVadis Root CA 2 G3 O=QuoVadis Limited +# Subject: CN=QuoVadis Root CA 2 G3 O=QuoVadis Limited +# Label: "QuoVadis Root CA 2 G3" +# Serial: 390156079458959257446133169266079962026824725800 +# MD5 Fingerprint: af:0c:86:6e:bf:40:2d:7f:0b:3e:12:50:ba:12:3d:06 +# SHA1 Fingerprint: 09:3c:61:f3:8b:8b:dc:7d:55:df:75:38:02:05:00:e1:25:f5:c8:36 +# SHA256 Fingerprint: 8f:e4:fb:0a:f9:3a:4d:0d:67:db:0b:eb:b2:3e:37:c7:1b:f3:25:dc:bc:dd:24:0e:a0:4d:af:58:b4:7e:18:40 +-----BEGIN CERTIFICATE----- +MIIFYDCCA0igAwIBAgIURFc0JFuBiZs18s64KztbpybwdSgwDQYJKoZIhvcNAQEL +BQAwSDELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAc +BgNVBAMTFVF1b1ZhZGlzIFJvb3QgQ0EgMiBHMzAeFw0xMjAxMTIxODU5MzJaFw00 +MjAxMTIxODU5MzJaMEgxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM +aW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDIgRzMwggIiMA0GCSqG +SIb3DQEBAQUAA4ICDwAwggIKAoICAQChriWyARjcV4g/Ruv5r+LrI3HimtFhZiFf +qq8nUeVuGxbULX1QsFN3vXg6YOJkApt8hpvWGo6t/x8Vf9WVHhLL5hSEBMHfNrMW +n4rjyduYNM7YMxcoRvynyfDStNVNCXJJ+fKH46nafaF9a7I6JaltUkSs+L5u+9ym +c5GQYaYDFCDy54ejiK2toIz/pgslUiXnFgHVy7g1gQyjO/Dh4fxaXc6AcW34Sas+ +O7q414AB+6XrW7PFXmAqMaCvN+ggOp+oMiwMzAkd056OXbxMmO7FGmh77FOm6RQ1 +o9/NgJ8MSPsc9PG/Srj61YxxSscfrf5BmrODXfKEVu+lV0POKa2Mq1W/xPtbAd0j +IaFYAI7D0GoT7RPjEiuA3GfmlbLNHiJuKvhB1PLKFAeNilUSxmn1uIZoL1NesNKq +IcGY5jDjZ1XHm26sGahVpkUG0CM62+tlXSoREfA7T8pt9DTEceT/AFr2XK4jYIVz +8eQQsSWu1ZK7E8EM4DnatDlXtas1qnIhO4M15zHfeiFuuDIIfR0ykRVKYnLP43eh +vNURG3YBZwjgQQvD6xVu+KQZ2aKrr+InUlYrAoosFCT5v0ICvybIxo/gbjh9Uy3l +7ZizlWNof/k19N+IxWA1ksB8aRxhlRbQ694Lrz4EEEVlWFA4r0jyWbYW8jwNkALG +cC4BrTwV1wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB +BjAdBgNVHQ4EFgQU7edvdlq/YOxJW8ald7tyFnGbxD0wDQYJKoZIhvcNAQELBQAD +ggIBAJHfgD9DCX5xwvfrs4iP4VGyvD11+ShdyLyZm3tdquXK4Qr36LLTn91nMX66 +AarHakE7kNQIXLJgapDwyM4DYvmL7ftuKtwGTTwpD4kWilhMSA/ohGHqPHKmd+RC +roijQ1h5fq7KpVMNqT1wvSAZYaRsOPxDMuHBR//47PERIjKWnML2W2mWeyAMQ0Ga +W/ZZGYjeVYg3UQt4XAoeo0L9x52ID8DyeAIkVJOviYeIyUqAHerQbj5hLja7NQ4n +lv1mNDthcnPxFlxHBlRJAHpYErAK74X9sbgzdWqTHBLmYF5vHX/JHyPLhGGfHoJE ++V+tYlUkmlKY7VHnoX6XOuYvHxHaU4AshZ6rNRDbIl9qxV6XU/IyAgkwo1jwDQHV +csaxfGl7w/U2Rcxhbl5MlMVerugOXou/983g7aEOGzPuVBj+D77vfoRrQ+NwmNtd +dbINWQeFFSM51vHfqSYP1kjHs6Yi9TM3WpVHn3u6GBVv/9YUZINJ0gpnIdsPNWNg +KCLjsZWDzYWm3S8P52dSbrsvhXz1SnPnxT7AvSESBT/8twNJAlvIJebiVDj1eYeM +HVOyToV7BjjHLPj4sHKNJeV3UvQDHEimUF+IIDBu8oJDqz2XhOdT+yHBTw8imoa4 +WSr2Rz0ZiC3oheGe7IUIarFsNMkd7EgrO3jtZsSOeWmD3n+M +-----END CERTIFICATE----- + +# Issuer: CN=QuoVadis Root CA 3 G3 O=QuoVadis Limited +# Subject: CN=QuoVadis Root CA 3 G3 O=QuoVadis Limited +# Label: "QuoVadis Root CA 3 G3" +# Serial: 268090761170461462463995952157327242137089239581 +# MD5 Fingerprint: df:7d:b9:ad:54:6f:68:a1:df:89:57:03:97:43:b0:d7 +# SHA1 Fingerprint: 48:12:bd:92:3c:a8:c4:39:06:e7:30:6d:27:96:e6:a4:cf:22:2e:7d +# SHA256 Fingerprint: 88:ef:81:de:20:2e:b0:18:45:2e:43:f8:64:72:5c:ea:5f:bd:1f:c2:d9:d2:05:73:07:09:c5:d8:b8:69:0f:46 +-----BEGIN CERTIFICATE----- +MIIFYDCCA0igAwIBAgIULvWbAiin23r/1aOp7r0DoM8Sah0wDQYJKoZIhvcNAQEL +BQAwSDELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAc +BgNVBAMTFVF1b1ZhZGlzIFJvb3QgQ0EgMyBHMzAeFw0xMjAxMTIyMDI2MzJaFw00 +MjAxMTIyMDI2MzJaMEgxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM +aW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDMgRzMwggIiMA0GCSqG +SIb3DQEBAQUAA4ICDwAwggIKAoICAQCzyw4QZ47qFJenMioKVjZ/aEzHs286IxSR +/xl/pcqs7rN2nXrpixurazHb+gtTTK/FpRp5PIpM/6zfJd5O2YIyC0TeytuMrKNu +FoM7pmRLMon7FhY4futD4tN0SsJiCnMK3UmzV9KwCoWdcTzeo8vAMvMBOSBDGzXR +U7Ox7sWTaYI+FrUoRqHe6okJ7UO4BUaKhvVZR74bbwEhELn9qdIoyhA5CcoTNs+c +ra1AdHkrAj80//ogaX3T7mH1urPnMNA3I4ZyYUUpSFlob3emLoG+B01vr87ERROR +FHAGjx+f+IdpsQ7vw4kZ6+ocYfx6bIrc1gMLnia6Et3UVDmrJqMz6nWB2i3ND0/k +A9HvFZcba5DFApCTZgIhsUfei5pKgLlVj7WiL8DWM2fafsSntARE60f75li59wzw +eyuxwHApw0BiLTtIadwjPEjrewl5qW3aqDCYz4ByA4imW0aucnl8CAMhZa634Ryl +sSqiMd5mBPfAdOhx3v89WcyWJhKLhZVXGqtrdQtEPREoPHtht+KPZ0/l7DxMYIBp +VzgeAVuNVejH38DMdyM0SXV89pgR6y3e7UEuFAUCf+D+IOs15xGsIs5XPd7JMG0Q +A4XN8f+MFrXBsj6IbGB/kE+V9/YtrQE5BwT6dYB9v0lQ7e/JxHwc64B+27bQ3RP+ +ydOc17KXqQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB +BjAdBgNVHQ4EFgQUxhfQvKjqAkPyGwaZXSuQILnXnOQwDQYJKoZIhvcNAQELBQAD +ggIBADRh2Va1EodVTd2jNTFGu6QHcrxfYWLopfsLN7E8trP6KZ1/AvWkyaiTt3px +KGmPc+FSkNrVvjrlt3ZqVoAh313m6Tqe5T72omnHKgqwGEfcIHB9UqM+WXzBusnI +FUBhynLWcKzSt/Ac5IYp8M7vaGPQtSCKFWGafoaYtMnCdvvMujAWzKNhxnQT5Wvv +oxXqA/4Ti2Tk08HS6IT7SdEQTXlm66r99I0xHnAUrdzeZxNMgRVhvLfZkXdxGYFg +u/BYpbWcC/ePIlUnwEsBbTuZDdQdm2NnL9DuDcpmvJRPpq3t/O5jrFc/ZSXPsoaP +0Aj/uHYUbt7lJ+yreLVTubY/6CD50qi+YUbKh4yE8/nxoGibIh6BJpsQBJFxwAYf +3KDTuVan45gtf4Od34wrnDKOMpTwATwiKp9Dwi7DmDkHOHv8XgBCH/MyJnmDhPbl +8MFREsALHgQjDFSlTC9JxUrRtm5gDWv8a4uFJGS3iQ6rJUdbPM9+Sb3H6QrG2vd+ +DhcI00iX0HGS8A85PjRqHH3Y8iKuu2n0M7SmSFXRDw4m6Oy2Cy2nhTXN/VnIn9HN +PlopNLk9hM6xZdRZkZFWdSHBd575euFgndOtBBj0fOtek49TSiIp+EgrPk2GrFt/ +ywaZWWDYWGWVjUTR939+J399roD1B0y2PpxxVJkES/1Y+Zj0 +-----END CERTIFICATE----- + +# Issuer: CN=DigiCert Assured ID Root G2 O=DigiCert Inc OU=www.digicert.com +# Subject: CN=DigiCert Assured ID Root G2 O=DigiCert Inc OU=www.digicert.com +# Label: "DigiCert Assured ID Root G2" +# Serial: 15385348160840213938643033620894905419 +# MD5 Fingerprint: 92:38:b9:f8:63:24:82:65:2c:57:33:e6:fe:81:8f:9d +# SHA1 Fingerprint: a1:4b:48:d9:43:ee:0a:0e:40:90:4f:3c:e0:a4:c0:91:93:51:5d:3f +# SHA256 Fingerprint: 7d:05:eb:b6:82:33:9f:8c:94:51:ee:09:4e:eb:fe:fa:79:53:a1:14:ed:b2:f4:49:49:45:2f:ab:7d:2f:c1:85 +-----BEGIN CERTIFICATE----- +MIIDljCCAn6gAwIBAgIQC5McOtY5Z+pnI7/Dr5r0SzANBgkqhkiG9w0BAQsFADBl +MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv +b3QgRzIwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBlMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl +cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzIwggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ5ygvUj82ckmIkzTz+GoeMVSA +n61UQbVH35ao1K+ALbkKz3X9iaV9JPrjIgwrvJUXCzO/GU1BBpAAvQxNEP4Htecc +biJVMWWXvdMX0h5i89vqbFCMP4QMls+3ywPgym2hFEwbid3tALBSfK+RbLE4E9Hp +EgjAALAcKxHad3A2m67OeYfcgnDmCXRwVWmvo2ifv922ebPynXApVfSr/5Vh88lA +bx3RvpO704gqu52/clpWcTs/1PPRCv4o76Pu2ZmvA9OPYLfykqGxvYmJHzDNw6Yu +YjOuFgJ3RFrngQo8p0Quebg/BLxcoIfhG69Rjs3sLPr4/m3wOnyqi+RnlTGNAgMB +AAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQW +BBTOw0q5mVXyuNtgv6l+vVa1lzan1jANBgkqhkiG9w0BAQsFAAOCAQEAyqVVjOPI +QW5pJ6d1Ee88hjZv0p3GeDgdaZaikmkuOGybfQTUiaWxMTeKySHMq2zNixya1r9I +0jJmwYrA8y8678Dj1JGG0VDjA9tzd29KOVPt3ibHtX2vK0LRdWLjSisCx1BL4Gni +lmwORGYQRI+tBev4eaymG+g3NJ1TyWGqolKvSnAWhsI6yLETcDbYz+70CjTVW0z9 +B5yiutkBclzzTcHdDrEcDcRjvq30FPuJ7KJBDkzMyFdA0G4Dqs0MjomZmWzwPDCv +ON9vvKO+KSAnq3T/EyJ43pdSVR6DtVQgA+6uwE9W3jfMw3+qBCe703e4YtsXfJwo +IhNzbM8m9Yop5w== +-----END CERTIFICATE----- + +# Issuer: CN=DigiCert Assured ID Root G3 O=DigiCert Inc OU=www.digicert.com +# Subject: CN=DigiCert Assured ID Root G3 O=DigiCert Inc OU=www.digicert.com +# Label: "DigiCert Assured ID Root G3" +# Serial: 15459312981008553731928384953135426796 +# MD5 Fingerprint: 7c:7f:65:31:0c:81:df:8d:ba:3e:99:e2:5c:ad:6e:fb +# SHA1 Fingerprint: f5:17:a2:4f:9a:48:c6:c9:f8:a2:00:26:9f:dc:0f:48:2c:ab:30:89 +# SHA256 Fingerprint: 7e:37:cb:8b:4c:47:09:0c:ab:36:55:1b:a6:f4:5d:b8:40:68:0f:ba:16:6a:95:2d:b1:00:71:7f:43:05:3f:c2 +-----BEGIN CERTIFICATE----- +MIICRjCCAc2gAwIBAgIQC6Fa+h3foLVJRK/NJKBs7DAKBggqhkjOPQQDAzBlMQsw +CQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cu +ZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3Qg +RzMwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBlMQswCQYDVQQGEwJV +UzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQu +Y29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzMwdjAQBgcq +hkjOPQIBBgUrgQQAIgNiAAQZ57ysRGXtzbg/WPuNsVepRC0FFfLvC/8QdJ+1YlJf +Zn4f5dwbRXkLzMZTCp2NXQLZqVneAlr2lSoOjThKiknGvMYDOAdfVdp+CW7if17Q +RSAPWXYQ1qAk8C3eNvJsKTmjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/ +BAQDAgGGMB0GA1UdDgQWBBTL0L2p4ZgFUaFNN6KDec6NHSrkhDAKBggqhkjOPQQD +AwNnADBkAjAlpIFFAmsSS3V0T8gj43DydXLefInwz5FyYZ5eEJJZVrmDxxDnOOlY +JjZ91eQ0hjkCMHw2U/Aw5WJjOpnitqM7mzT6HtoQknFekROn3aRukswy1vUhZscv +6pZjamVFkpUBtA== +-----END CERTIFICATE----- + +# Issuer: CN=DigiCert Global Root G2 O=DigiCert Inc OU=www.digicert.com +# Subject: CN=DigiCert Global Root G2 O=DigiCert Inc OU=www.digicert.com +# Label: "DigiCert Global Root G2" +# Serial: 4293743540046975378534879503202253541 +# MD5 Fingerprint: e4:a6:8a:c8:54:ac:52:42:46:0a:fd:72:48:1b:2a:44 +# SHA1 Fingerprint: df:3c:24:f9:bf:d6:66:76:1b:26:80:73:fe:06:d1:cc:8d:4f:82:a4 +# SHA256 Fingerprint: cb:3c:cb:b7:60:31:e5:e0:13:8f:8d:d3:9a:23:f9:de:47:ff:c3:5e:43:c1:14:4c:ea:27:d4:6a:5a:b1:cb:5f +-----BEGIN CERTIFICATE----- +MIIDjjCCAnagAwIBAgIQAzrx5qcRqaC7KGSxHQn65TANBgkqhkiG9w0BAQsFADBh +MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBH +MjAeFw0xMzA4MDExMjAwMDBaFw0zODAxMTUxMjAwMDBaMGExCzAJBgNVBAYTAlVT +MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j +b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcyMIIBIjANBgkqhkiG +9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzfNNNx7a8myaJCtSnX/RrohCgiN9RlUyfuI +2/Ou8jqJkTx65qsGGmvPrC3oXgkkRLpimn7Wo6h+4FR1IAWsULecYxpsMNzaHxmx +1x7e/dfgy5SDN67sH0NO3Xss0r0upS/kqbitOtSZpLYl6ZtrAGCSYP9PIUkY92eQ +q2EGnI/yuum06ZIya7XzV+hdG82MHauVBJVJ8zUtluNJbd134/tJS7SsVQepj5Wz +tCO7TG1F8PapspUwtP1MVYwnSlcUfIKdzXOS0xZKBgyMUNGPHgm+F6HmIcr9g+UQ +vIOlCsRnKPZzFBQ9RnbDhxSJITRNrw9FDKZJobq7nMWxM4MphQIDAQABo0IwQDAP +BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUTiJUIBiV +5uNu5g/6+rkS7QYXjzkwDQYJKoZIhvcNAQELBQADggEBAGBnKJRvDkhj6zHd6mcY +1Yl9PMWLSn/pvtsrF9+wX3N3KjITOYFnQoQj8kVnNeyIv/iPsGEMNKSuIEyExtv4 +NeF22d+mQrvHRAiGfzZ0JFrabA0UWTW98kndth/Jsw1HKj2ZL7tcu7XUIOGZX1NG +Fdtom/DzMNU+MeKNhJ7jitralj41E6Vf8PlwUHBHQRFXGU7Aj64GxJUTFy8bJZ91 +8rGOmaFvE7FBcf6IKshPECBV1/MUReXgRPTqh5Uykw7+U0b6LJ3/iyK5S9kJRaTe +pLiaWN0bfVKfjllDiIGknibVb63dDcY3fe0Dkhvld1927jyNxF1WW6LZZm6zNTfl +MrY= +-----END CERTIFICATE----- + +# Issuer: CN=DigiCert Global Root G3 O=DigiCert Inc OU=www.digicert.com +# Subject: CN=DigiCert Global Root G3 O=DigiCert Inc OU=www.digicert.com +# Label: "DigiCert Global Root G3" +# Serial: 7089244469030293291760083333884364146 +# MD5 Fingerprint: f5:5d:a4:50:a5:fb:28:7e:1e:0f:0d:cc:96:57:56:ca +# SHA1 Fingerprint: 7e:04:de:89:6a:3e:66:6d:00:e6:87:d3:3f:fa:d9:3b:e8:3d:34:9e +# SHA256 Fingerprint: 31:ad:66:48:f8:10:41:38:c7:38:f3:9e:a4:32:01:33:39:3e:3a:18:cc:02:29:6e:f9:7c:2a:c9:ef:67:31:d0 +-----BEGIN CERTIFICATE----- +MIICPzCCAcWgAwIBAgIQBVVWvPJepDU1w6QP1atFcjAKBggqhkjOPQQDAzBhMQsw +CQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cu +ZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBHMzAe +Fw0xMzA4MDExMjAwMDBaFw0zODAxMTUxMjAwMDBaMGExCzAJBgNVBAYTAlVTMRUw +EwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20x +IDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEczMHYwEAYHKoZIzj0CAQYF +K4EEACIDYgAE3afZu4q4C/sLfyHS8L6+c/MzXRq8NOrexpu80JX28MzQC7phW1FG +fp4tn+6OYwwX7Adw9c+ELkCDnOg/QW07rdOkFFk2eJ0DQ+4QE2xy3q6Ip6FrtUPO +Z9wj/wMco+I+o0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAd +BgNVHQ4EFgQUs9tIpPmhxdiuNkHMEWNpYim8S8YwCgYIKoZIzj0EAwMDaAAwZQIx +AK288mw/EkrRLTnDCgmXc/SINoyIJ7vmiI1Qhadj+Z4y3maTD/HMsQmP3Wyr+mt/ +oAIwOWZbwmSNuJ5Q3KjVSaLtx9zRSX8XAbjIho9OjIgrqJqpisXRAL34VOKa5Vt8 +sycX +-----END CERTIFICATE----- + +# Issuer: CN=DigiCert Trusted Root G4 O=DigiCert Inc OU=www.digicert.com +# Subject: CN=DigiCert Trusted Root G4 O=DigiCert Inc OU=www.digicert.com +# Label: "DigiCert Trusted Root G4" +# Serial: 7451500558977370777930084869016614236 +# MD5 Fingerprint: 78:f2:fc:aa:60:1f:2f:b4:eb:c9:37:ba:53:2e:75:49 +# SHA1 Fingerprint: dd:fb:16:cd:49:31:c9:73:a2:03:7d:3f:c8:3a:4d:7d:77:5d:05:e4 +# SHA256 Fingerprint: 55:2f:7b:dc:f1:a7:af:9e:6c:e6:72:01:7f:4f:12:ab:f7:72:40:c7:8e:76:1a:c2:03:d1:d9:d2:0a:c8:99:88 +-----BEGIN CERTIFICATE----- +MIIFkDCCA3igAwIBAgIQBZsbV56OITLiOQe9p3d1XDANBgkqhkiG9w0BAQwFADBi +MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3Qg +RzQwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBiMQswCQYDVQQGEwJV +UzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQu +Y29tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3QgRzQwggIiMA0GCSqG +SIb3DQEBAQUAA4ICDwAwggIKAoICAQC/5pBzaN675F1KPDAiMGkz7MKnJS7JIT3y +ithZwuEppz1Yq3aaza57G4QNxDAf8xukOBbrVsaXbR2rsnnyyhHS5F/WBTxSD1If +xp4VpX6+n6lXFllVcq9ok3DCsrp1mWpzMpTREEQQLt+C8weE5nQ7bXHiLQwb7iDV +ySAdYyktzuxeTsiT+CFhmzTrBcZe7FsavOvJz82sNEBfsXpm7nfISKhmV1efVFiO +DCu3T6cw2Vbuyntd463JT17lNecxy9qTXtyOj4DatpGYQJB5w3jHtrHEtWoYOAMQ +jdjUN6QuBX2I9YI+EJFwq1WCQTLX2wRzKm6RAXwhTNS8rhsDdV14Ztk6MUSaM0C/ +CNdaSaTC5qmgZ92kJ7yhTzm1EVgX9yRcRo9k98FpiHaYdj1ZXUJ2h4mXaXpI8OCi +EhtmmnTK3kse5w5jrubU75KSOp493ADkRSWJtppEGSt+wJS00mFt6zPZxd9LBADM +fRyVw4/3IbKyEbe7f/LVjHAsQWCqsWMYRJUadmJ+9oCw++hkpjPRiQfhvbfmQ6QY +uKZ3AeEPlAwhHbJUKSWJbOUOUlFHdL4mrLZBdd56rF+NP8m800ERElvlEFDrMcXK +chYiCd98THU/Y+whX8QgUWtvsauGi0/C1kVfnSD8oR7FwI+isX4KJpn15GkvmB0t +9dmpsh3lGwIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB +hjAdBgNVHQ4EFgQU7NfjgtJxXWRM3y5nP+e6mK4cD08wDQYJKoZIhvcNAQEMBQAD +ggIBALth2X2pbL4XxJEbw6GiAI3jZGgPVs93rnD5/ZpKmbnJeFwMDF/k5hQpVgs2 +SV1EY+CtnJYYZhsjDT156W1r1lT40jzBQ0CuHVD1UvyQO7uYmWlrx8GnqGikJ9yd ++SeuMIW59mdNOj6PWTkiU0TryF0Dyu1Qen1iIQqAyHNm0aAFYF/opbSnr6j3bTWc +fFqK1qI4mfN4i/RN0iAL3gTujJtHgXINwBQy7zBZLq7gcfJW5GqXb5JQbZaNaHqa +sjYUegbyJLkJEVDXCLG4iXqEI2FCKeWjzaIgQdfRnGTZ6iahixTXTBmyUEFxPT9N +cCOGDErcgdLMMpSEDQgJlxxPwO5rIHQw0uA5NBCFIRUBCOhVMt5xSdkoF1BN5r5N +0XWs0Mr7QbhDparTwwVETyw2m+L64kW4I1NsBm9nVX9GtUw/bihaeSbSpKhil9Ie +4u1Ki7wb/UdKDd9nZn6yW0HQO+T0O/QEY+nvwlQAUaCKKsnOeMzV6ocEGLPOr0mI +r/OSmbaz5mEP0oUA51Aa5BuVnRmhuZyxm7EAHu/QD09CbMkKvO5D+jpxpchNJqU1 +/YldvIViHTLSoCtU7ZpXwdv6EM8Zt4tKG48BtieVU+i2iW1bvGjUI+iLUaJW+fCm +gKDWHrO8Dw9TdSmq6hN35N6MgSGtBxBHEa2HPQfRdbzP82Z+ +-----END CERTIFICATE----- + +# Issuer: CN=COMODO RSA Certification Authority O=COMODO CA Limited +# Subject: CN=COMODO RSA Certification Authority O=COMODO CA Limited +# Label: "COMODO RSA Certification Authority" +# Serial: 101909084537582093308941363524873193117 +# MD5 Fingerprint: 1b:31:b0:71:40:36:cc:14:36:91:ad:c4:3e:fd:ec:18 +# SHA1 Fingerprint: af:e5:d2:44:a8:d1:19:42:30:ff:47:9f:e2:f8:97:bb:cd:7a:8c:b4 +# SHA256 Fingerprint: 52:f0:e1:c4:e5:8e:c6:29:29:1b:60:31:7f:07:46:71:b8:5d:7e:a8:0d:5b:07:27:34:63:53:4b:32:b4:02:34 +-----BEGIN CERTIFICATE----- +MIIF2DCCA8CgAwIBAgIQTKr5yttjb+Af907YWwOGnTANBgkqhkiG9w0BAQwFADCB +hTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G +A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNV +BAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAwMTE5 +MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgT +EkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMR +Q09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCR +6FSS0gpWsawNJN3Fz0RndJkrN6N9I3AAcbxT38T6KhKPS38QVr2fcHK3YX/JSw8X +pz3jsARh7v8Rl8f0hj4K+j5c+ZPmNHrZFGvnnLOFoIJ6dq9xkNfs/Q36nGz637CC +9BR++b7Epi9Pf5l/tfxnQ3K9DADWietrLNPtj5gcFKt+5eNu/Nio5JIk2kNrYrhV +/erBvGy2i/MOjZrkm2xpmfh4SDBF1a3hDTxFYPwyllEnvGfDyi62a+pGx8cgoLEf +Zd5ICLqkTqnyg0Y3hOvozIFIQ2dOciqbXL1MGyiKXCJ7tKuY2e7gUYPDCUZObT6Z ++pUX2nwzV0E8jVHtC7ZcryxjGt9XyD+86V3Em69FmeKjWiS0uqlWPc9vqv9JWL7w +qP/0uK3pN/u6uPQLOvnoQ0IeidiEyxPx2bvhiWC4jChWrBQdnArncevPDt09qZah +SL0896+1DSJMwBGB7FY79tOi4lu3sgQiUpWAk2nojkxl8ZEDLXB0AuqLZxUpaVIC +u9ffUGpVRr+goyhhf3DQw6KqLCGqR84onAZFdr+CGCe01a60y1Dma/RMhnEw6abf +Fobg2P9A3fvQQoh/ozM6LlweQRGBY84YcWsr7KaKtzFcOmpH4MN5WdYgGq/yapiq +crxXStJLnbsQ/LBMQeXtHT1eKJ2czL+zUdqnR+WEUwIDAQABo0IwQDAdBgNVHQ4E +FgQUu69+Aj36pvE8hI6t7jiY7NkyMtQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB +/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAArx1UaEt65Ru2yyTUEUAJNMnMvl +wFTPoCWOAvn9sKIN9SCYPBMtrFaisNZ+EZLpLrqeLppysb0ZRGxhNaKatBYSaVqM +4dc+pBroLwP0rmEdEBsqpIt6xf4FpuHA1sj+nq6PK7o9mfjYcwlYRm6mnPTXJ9OV +2jeDchzTc+CiR5kDOF3VSXkAKRzH7JsgHAckaVd4sjn8OoSgtZx8jb8uk2Intzna +FxiuvTwJaP+EmzzV1gsD41eeFPfR60/IvYcjt7ZJQ3mFXLrrkguhxuhoqEwWsRqZ +CuhTLJK7oQkYdQxlqHvLI7cawiiFwxv/0Cti76R7CZGYZ4wUAc1oBmpjIXUDgIiK +boHGhfKppC3n9KUkEEeDys30jXlYsQab5xoq2Z0B15R97QNKyvDb6KkBPvVWmcke +jkk9u+UJueBPSZI9FoJAzMxZxuY67RIuaTxslbH9qh17f4a+Hg4yRvv7E491f0yL +S0Zj/gA0QHDBw7mh3aZw4gSzQbzpgJHqZJx64SIDqZxubw5lT2yHh17zbqD5daWb +QOhTsiedSrnAdyGN/4fy3ryM7xfft0kL0fJuMAsaDk527RH89elWsn2/x20Kk4yl +0MC2Hb46TpSi125sC8KKfPog88Tk5c0NqMuRkrF8hey1FGlmDoLnzc7ILaZRfyHB +NVOFBkpdn627G190 +-----END CERTIFICATE----- + +# Issuer: CN=USERTrust RSA Certification Authority O=The USERTRUST Network +# Subject: CN=USERTrust RSA Certification Authority O=The USERTRUST Network +# Label: "USERTrust RSA Certification Authority" +# Serial: 2645093764781058787591871645665788717 +# MD5 Fingerprint: 1b:fe:69:d1:91:b7:19:33:a3:72:a8:0f:e1:55:e5:b5 +# SHA1 Fingerprint: 2b:8f:1b:57:33:0d:bb:a2:d0:7a:6c:51:f7:0e:e9:0d:da:b9:ad:8e +# SHA256 Fingerprint: e7:93:c9:b0:2f:d8:aa:13:e2:1c:31:22:8a:cc:b0:81:19:64:3b:74:9c:89:89:64:b1:74:6d:46:c3:d4:cb:d2 +-----BEGIN CERTIFICATE----- +MIIF3jCCA8agAwIBAgIQAf1tMPyjylGoG7xkDjUDLTANBgkqhkiG9w0BAQwFADCB +iDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0pl +cnNleSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNV +BAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAw +MjAxMDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMCVVMxEzARBgNV +BAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVU +aGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0EgQ2Vy +dGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK +AoICAQCAEmUXNg7D2wiz0KxXDXbtzSfTTK1Qg2HiqiBNCS1kCdzOiZ/MPans9s/B +3PHTsdZ7NygRK0faOca8Ohm0X6a9fZ2jY0K2dvKpOyuR+OJv0OwWIJAJPuLodMkY +tJHUYmTbf6MG8YgYapAiPLz+E/CHFHv25B+O1ORRxhFnRghRy4YUVD+8M/5+bJz/ +Fp0YvVGONaanZshyZ9shZrHUm3gDwFA66Mzw3LyeTP6vBZY1H1dat//O+T23LLb2 +VN3I5xI6Ta5MirdcmrS3ID3KfyI0rn47aGYBROcBTkZTmzNg95S+UzeQc0PzMsNT +79uq/nROacdrjGCT3sTHDN/hMq7MkztReJVni+49Vv4M0GkPGw/zJSZrM233bkf6 +c0Plfg6lZrEpfDKEY1WJxA3Bk1QwGROs0303p+tdOmw1XNtB1xLaqUkL39iAigmT +Yo61Zs8liM2EuLE/pDkP2QKe6xJMlXzzawWpXhaDzLhn4ugTncxbgtNMs+1b/97l +c6wjOy0AvzVVdAlJ2ElYGn+SNuZRkg7zJn0cTRe8yexDJtC/QV9AqURE9JnnV4ee +UB9XVKg+/XRjL7FQZQnmWEIuQxpMtPAlR1n6BB6T1CZGSlCBst6+eLf8ZxXhyVeE +Hg9j1uliutZfVS7qXMYoCAQlObgOK6nyTJccBz8NUvXt7y+CDwIDAQABo0IwQDAd +BgNVHQ4EFgQUU3m/WqorSs9UgOHYm8Cd8rIDZsswDgYDVR0PAQH/BAQDAgEGMA8G +A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAFzUfA3P9wF9QZllDHPF +Up/L+M+ZBn8b2kMVn54CVVeWFPFSPCeHlCjtHzoBN6J2/FNQwISbxmtOuowhT6KO +VWKR82kV2LyI48SqC/3vqOlLVSoGIG1VeCkZ7l8wXEskEVX/JJpuXior7gtNn3/3 +ATiUFJVDBwn7YKnuHKsSjKCaXqeYalltiz8I+8jRRa8YFWSQEg9zKC7F4iRO/Fjs +8PRF/iKz6y+O0tlFYQXBl2+odnKPi4w2r78NBc5xjeambx9spnFixdjQg3IM8WcR +iQycE0xyNN+81XHfqnHd4blsjDwSXWXavVcStkNr/+XeTWYRUc+ZruwXtuhxkYze +Sf7dNXGiFSeUHM9h4ya7b6NnJSFd5t0dCy5oGzuCr+yDZ4XUmFF0sbmZgIn/f3gZ +XHlKYC6SQK5MNyosycdiyA5d9zZbyuAlJQG03RoHnHcAP9Dc1ew91Pq7P8yF1m9/ +qS3fuQL39ZeatTXaw2ewh0qpKJ4jjv9cJ2vhsE/zB+4ALtRZh8tSQZXq9EfX7mRB +VXyNWQKV3WKdwrnuWih0hKWbt5DHDAff9Yk2dDLWKMGwsAvgnEzDHNb842m1R0aB +L6KCq9NjRHDEjf8tM7qtj3u1cIiuPhnPQCjY/MiQu12ZIvVS5ljFH4gxQ+6IHdfG +jjxDah2nGN59PRbxYvnKkKj9 +-----END CERTIFICATE----- + +# Issuer: CN=USERTrust ECC Certification Authority O=The USERTRUST Network +# Subject: CN=USERTrust ECC Certification Authority O=The USERTRUST Network +# Label: "USERTrust ECC Certification Authority" +# Serial: 123013823720199481456569720443997572134 +# MD5 Fingerprint: fa:68:bc:d9:b5:7f:ad:fd:c9:1d:06:83:28:cc:24:c1 +# SHA1 Fingerprint: d1:cb:ca:5d:b2:d5:2a:7f:69:3b:67:4d:e5:f0:5a:1d:0c:95:7d:f0 +# SHA256 Fingerprint: 4f:f4:60:d5:4b:9c:86:da:bf:bc:fc:57:12:e0:40:0d:2b:ed:3f:bc:4d:4f:bd:aa:86:e0:6a:dc:d2:a9:ad:7a +-----BEGIN CERTIFICATE----- +MIICjzCCAhWgAwIBAgIQXIuZxVqUxdJxVt7NiYDMJjAKBggqhkjOPQQDAzCBiDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNl +eSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMT +JVVTRVJUcnVzdCBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAwMjAx +MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMCVVMxEzARBgNVBAgT +Ck5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVUaGUg +VVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBFQ0MgQ2VydGlm +aWNhdGlvbiBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQarFRaqflo +I+d61SRvU8Za2EurxtW20eZzca7dnNYMYf3boIkDuAUU7FfO7l0/4iGzzvfUinng +o4N+LZfQYcTxmdwlkWOrfzCjtHDix6EznPO/LlxTsV+zfTJ/ijTjeXmjQjBAMB0G +A1UdDgQWBBQ64QmG1M8ZwpZ2dEl23OA1xmNjmjAOBgNVHQ8BAf8EBAMCAQYwDwYD +VR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjA2Z6EWCNzklwBBHU6+4WMB +zzuqQhFkoJ2UOQIReVx7Hfpkue4WQrO/isIJxOzksU0CMQDpKmFHjFJKS04YcPbW +RNZu9YO6bVi9JNlWSOrvxKJGgYhqOkbRqZtNyWHa0V1Xahg= +-----END CERTIFICATE----- + +# Issuer: CN=GlobalSign O=GlobalSign OU=GlobalSign ECC Root CA - R5 +# Subject: CN=GlobalSign O=GlobalSign OU=GlobalSign ECC Root CA - R5 +# Label: "GlobalSign ECC Root CA - R5" +# Serial: 32785792099990507226680698011560947931244 +# MD5 Fingerprint: 9f:ad:3b:1c:02:1e:8a:ba:17:74:38:81:0c:a2:bc:08 +# SHA1 Fingerprint: 1f:24:c6:30:cd:a4:18:ef:20:69:ff:ad:4f:dd:5f:46:3a:1b:69:aa +# SHA256 Fingerprint: 17:9f:bc:14:8a:3d:d0:0f:d2:4e:a1:34:58:cc:43:bf:a7:f5:9c:81:82:d7:83:a5:13:f6:eb:ec:10:0c:89:24 +-----BEGIN CERTIFICATE----- +MIICHjCCAaSgAwIBAgIRYFlJ4CYuu1X5CneKcflK2GwwCgYIKoZIzj0EAwMwUDEk +MCIGA1UECxMbR2xvYmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI1MRMwEQYDVQQKEwpH +bG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWduMB4XDTEyMTExMzAwMDAwMFoX +DTM4MDExOTAzMTQwN1owUDEkMCIGA1UECxMbR2xvYmFsU2lnbiBFQ0MgUm9vdCBD +QSAtIFI1MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWdu +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAER0UOlvt9Xb/pOdEh+J8LttV7HpI6SFkc +8GIxLcB6KP4ap1yztsyX50XUWPrRd21DosCHZTQKH3rd6zwzocWdTaRvQZU4f8ke +hOvRnkmSh5SHDDqFSmafnVmTTZdhBoZKo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYD +VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUPeYpSJvqB8ohREom3m7e0oPQn1kwCgYI +KoZIzj0EAwMDaAAwZQIxAOVpEslu28YxuglB4Zf4+/2a4n0Sye18ZNPLBSWLVtmg +515dTguDnFt2KaAJJiFqYgIwcdK1j1zqO+F4CYWodZI7yFz9SO8NdCKoCOJuxUnO +xwy8p2Fp8fc74SrL+SvzZpA3 +-----END CERTIFICATE----- + +# Issuer: CN=IdenTrust Commercial Root CA 1 O=IdenTrust +# Subject: CN=IdenTrust Commercial Root CA 1 O=IdenTrust +# Label: "IdenTrust Commercial Root CA 1" +# Serial: 13298821034946342390520003877796839426 +# MD5 Fingerprint: b3:3e:77:73:75:ee:a0:d3:e3:7e:49:63:49:59:bb:c7 +# SHA1 Fingerprint: df:71:7e:aa:4a:d9:4e:c9:55:84:99:60:2d:48:de:5f:bc:f0:3a:25 +# SHA256 Fingerprint: 5d:56:49:9b:e4:d2:e0:8b:cf:ca:d0:8a:3e:38:72:3d:50:50:3b:de:70:69:48:e4:2f:55:60:30:19:e5:28:ae +-----BEGIN CERTIFICATE----- +MIIFYDCCA0igAwIBAgIQCgFCgAAAAUUjyES1AAAAAjANBgkqhkiG9w0BAQsFADBK +MQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MScwJQYDVQQDEx5JZGVu +VHJ1c3QgQ29tbWVyY2lhbCBSb290IENBIDEwHhcNMTQwMTE2MTgxMjIzWhcNMzQw +MTE2MTgxMjIzWjBKMQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MScw +JQYDVQQDEx5JZGVuVHJ1c3QgQ29tbWVyY2lhbCBSb290IENBIDEwggIiMA0GCSqG +SIb3DQEBAQUAA4ICDwAwggIKAoICAQCnUBneP5k91DNG8W9RYYKyqU+PZ4ldhNlT +3Qwo2dfw/66VQ3KZ+bVdfIrBQuExUHTRgQ18zZshq0PirK1ehm7zCYofWjK9ouuU ++ehcCuz/mNKvcbO0U59Oh++SvL3sTzIwiEsXXlfEU8L2ApeN2WIrvyQfYo3fw7gp +S0l4PJNgiCL8mdo2yMKi1CxUAGc1bnO/AljwpN3lsKImesrgNqUZFvX9t++uP0D1 +bVoE/c40yiTcdCMbXTMTEl3EASX2MN0CXZ/g1Ue9tOsbobtJSdifWwLziuQkkORi +T0/Br4sOdBeo0XKIanoBScy0RnnGF7HamB4HWfp1IYVl3ZBWzvurpWCdxJ35UrCL +vYf5jysjCiN2O/cz4ckA82n5S6LgTrx+kzmEB/dEcH7+B1rlsazRGMzyNeVJSQjK +Vsk9+w8YfYs7wRPCTY/JTw436R+hDmrfYi7LNQZReSzIJTj0+kuniVyc0uMNOYZK +dHzVWYfCP04MXFL0PfdSgvHqo6z9STQaKPNBiDoT7uje/5kdX7rL6B7yuVBgwDHT +c+XvvqDtMwt0viAgxGds8AgDelWAf0ZOlqf0Hj7h9tgJ4TNkK2PXMl6f+cB7D3hv +l7yTmvmcEpB4eoCHFddydJxVdHixuuFucAS6T6C6aMN7/zHwcz09lCqxC0EOoP5N +iGVreTO01wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB +/zAdBgNVHQ4EFgQU7UQZwNPwBovupHu+QucmVMiONnYwDQYJKoZIhvcNAQELBQAD +ggIBAA2ukDL2pkt8RHYZYR4nKM1eVO8lvOMIkPkp165oCOGUAFjvLi5+U1KMtlwH +6oi6mYtQlNeCgN9hCQCTrQ0U5s7B8jeUeLBfnLOic7iPBZM4zY0+sLj7wM+x8uwt +LRvM7Kqas6pgghstO8OEPVeKlh6cdbjTMM1gCIOQ045U8U1mwF10A0Cj7oV+wh93 +nAbowacYXVKV7cndJZ5t+qntozo00Fl72u1Q8zW/7esUTTHHYPTa8Yec4kjixsU3 ++wYQ+nVZZjFHKdp2mhzpgq7vmrlR94gjmmmVYjzlVYA211QC//G5Xc7UI2/YRYRK +W2XviQzdFKcgyxilJbQN+QHwotL0AMh0jqEqSI5l2xPE4iUXfeu+h1sXIFRRk0pT +AwvsXcoz7WL9RccvW9xYoIA55vrX/hMUpu09lEpCdNTDd1lzzY9GvlU47/rokTLq +l1gEIt44w8y8bckzOmoKaT+gyOpyj4xjhiO9bTyWnpXgSUyqorkqG5w2gXjtw+hG +4iZZRHUe2XWJUc0QhJ1hYMtd+ZciTY6Y5uN/9lu7rs3KSoFrXgvzUeF0K+l+J6fZ +mUlO+KWA2yUPHGNiiskzZ2s8EIPGrd6ozRaOjfAHN3Gf8qv8QfXBi+wAN10J5U6A +7/qxXDgGpRtK4dw4LTzcqx+QGtVKnO7RcGzM7vRX+Bi6hG6H +-----END CERTIFICATE----- + +# Issuer: CN=IdenTrust Public Sector Root CA 1 O=IdenTrust +# Subject: CN=IdenTrust Public Sector Root CA 1 O=IdenTrust +# Label: "IdenTrust Public Sector Root CA 1" +# Serial: 13298821034946342390521976156843933698 +# MD5 Fingerprint: 37:06:a5:b0:fc:89:9d:ba:f4:6b:8c:1a:64:cd:d5:ba +# SHA1 Fingerprint: ba:29:41:60:77:98:3f:f4:f3:ef:f2:31:05:3b:2e:ea:6d:4d:45:fd +# SHA256 Fingerprint: 30:d0:89:5a:9a:44:8a:26:20:91:63:55:22:d1:f5:20:10:b5:86:7a:ca:e1:2c:78:ef:95:8f:d4:f4:38:9f:2f +-----BEGIN CERTIFICATE----- +MIIFZjCCA06gAwIBAgIQCgFCgAAAAUUjz0Z8AAAAAjANBgkqhkiG9w0BAQsFADBN +MQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MSowKAYDVQQDEyFJZGVu +VHJ1c3QgUHVibGljIFNlY3RvciBSb290IENBIDEwHhcNMTQwMTE2MTc1MzMyWhcN +MzQwMTE2MTc1MzMyWjBNMQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0 +MSowKAYDVQQDEyFJZGVuVHJ1c3QgUHVibGljIFNlY3RvciBSb290IENBIDEwggIi +MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2IpT8pEiv6EdrCvsnduTyP4o7 +ekosMSqMjbCpwzFrqHd2hCa2rIFCDQjrVVi7evi8ZX3yoG2LqEfpYnYeEe4IFNGy +RBb06tD6Hi9e28tzQa68ALBKK0CyrOE7S8ItneShm+waOh7wCLPQ5CQ1B5+ctMlS +bdsHyo+1W/CD80/HLaXIrcuVIKQxKFdYWuSNG5qrng0M8gozOSI5Cpcu81N3uURF +/YTLNiCBWS2ab21ISGHKTN9T0a9SvESfqy9rg3LvdYDaBjMbXcjaY8ZNzaxmMc3R +3j6HEDbhuaR672BQssvKplbgN6+rNBM5Jeg5ZuSYeqoSmJxZZoY+rfGwyj4GD3vw +EUs3oERte8uojHH01bWRNszwFcYr3lEXsZdMUD2xlVl8BX0tIdUAvwFnol57plzy +9yLxkA2T26pEUWbMfXYD62qoKjgZl3YNa4ph+bz27nb9cCvdKTz4Ch5bQhyLVi9V +GxyhLrXHFub4qjySjmm2AcG1hp2JDws4lFTo6tyePSW8Uybt1as5qsVATFSrsrTZ +2fjXctscvG29ZV/viDUqZi/u9rNl8DONfJhBaUYPQxxp+pu10GFqzcpL2UyQRqsV +WaFHVCkugyhfHMKiq3IXAAaOReyL4jM9f9oZRORicsPfIsbyVtTdX5Vy7W1f90gD +W/3FKqD2cyOEEBsB5wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ +BAUwAwEB/zAdBgNVHQ4EFgQU43HgntinQtnbcZFrlJPrw6PRFKMwDQYJKoZIhvcN +AQELBQADggIBAEf63QqwEZE4rU1d9+UOl1QZgkiHVIyqZJnYWv6IAcVYpZmxI1Qj +t2odIFflAWJBF9MJ23XLblSQdf4an4EKwt3X9wnQW3IV5B4Jaj0z8yGa5hV+rVHV +DRDtfULAj+7AmgjVQdZcDiFpboBhDhXAuM/FSRJSzL46zNQuOAXeNf0fb7iAaJg9 +TaDKQGXSc3z1i9kKlT/YPyNtGtEqJBnZhbMX73huqVjRI9PHE+1yJX9dsXNw0H8G +lwmEKYBhHfpe/3OsoOOJuBxxFcbeMX8S3OFtm6/n6J91eEyrRjuazr8FGF1NFTwW +mhlQBJqymm9li1JfPFgEKCXAZmExfrngdbkaqIHWchezxQMxNRF4eKLg6TCMf4Df +WN88uieW4oA0beOY02QnrEh+KHdcxiVhJfiFDGX6xDIvpZgF5PgLZxYWxoK4Mhn5 ++bl53B/N66+rDt0b20XkeucC4pVd/GnwU2lhlXV5C15V5jgclKlZM57IcXR5f1GJ +tshquDDIajjDbp7hNxbqBWJMWxJH7ae0s1hWx0nzfxJoCTFx8G34Tkf71oXuxVhA +GaQdp/lLQzfcaFpPz+vCZHTetBXZ9FRUGi8c15dxVJCO2SCdUyt/q4/i6jC8UDfv +8Ue1fXwsBOxonbRJRBD0ckscZOf85muQ3Wl9af0AVqW3rLatt8o+Ae+c +-----END CERTIFICATE----- + +# Issuer: CN=CFCA EV ROOT O=China Financial Certification Authority +# Subject: CN=CFCA EV ROOT O=China Financial Certification Authority +# Label: "CFCA EV ROOT" +# Serial: 407555286 +# MD5 Fingerprint: 74:e1:b6:ed:26:7a:7a:44:30:33:94:ab:7b:27:81:30 +# SHA1 Fingerprint: e2:b8:29:4b:55:84:ab:6b:58:c2:90:46:6c:ac:3f:b8:39:8f:84:83 +# SHA256 Fingerprint: 5c:c3:d7:8e:4e:1d:5e:45:54:7a:04:e6:87:3e:64:f9:0c:f9:53:6d:1c:cc:2e:f8:00:f3:55:c4:c5:fd:70:fd +-----BEGIN CERTIFICATE----- +MIIFjTCCA3WgAwIBAgIEGErM1jANBgkqhkiG9w0BAQsFADBWMQswCQYDVQQGEwJD +TjEwMC4GA1UECgwnQ2hpbmEgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9y +aXR5MRUwEwYDVQQDDAxDRkNBIEVWIFJPT1QwHhcNMTIwODA4MDMwNzAxWhcNMjkx +MjMxMDMwNzAxWjBWMQswCQYDVQQGEwJDTjEwMC4GA1UECgwnQ2hpbmEgRmluYW5j +aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRUwEwYDVQQDDAxDRkNBIEVWIFJP +T1QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDXXWvNED8fBVnVBU03 +sQ7smCuOFR36k0sXgiFxEFLXUWRwFsJVaU2OFW2fvwwbwuCjZ9YMrM8irq93VCpL +TIpTUnrD7i7es3ElweldPe6hL6P3KjzJIx1qqx2hp/Hz7KDVRM8Vz3IvHWOX6Jn5 +/ZOkVIBMUtRSqy5J35DNuF++P96hyk0g1CXohClTt7GIH//62pCfCqktQT+x8Rgp +7hZZLDRJGqgG16iI0gNyejLi6mhNbiyWZXvKWfry4t3uMCz7zEasxGPrb382KzRz +EpR/38wmnvFyXVBlWY9ps4deMm/DGIq1lY+wejfeWkU7xzbh72fROdOXW3NiGUgt +hxwG+3SYIElz8AXSG7Ggo7cbcNOIabla1jj0Ytwli3i/+Oh+uFzJlU9fpy25IGvP +a931DfSCt/SyZi4QKPaXWnuWFo8BGS1sbn85WAZkgwGDg8NNkt0yxoekN+kWzqot +aK8KgWU6cMGbrU1tVMoqLUuFG7OA5nBFDWteNfB/O7ic5ARwiRIlk9oKmSJgamNg +TnYGmE69g60dWIolhdLHZR4tjsbftsbhf4oEIRUpdPA+nJCdDC7xij5aqgwJHsfV +PKPtl8MeNPo4+QgO48BdK4PRVmrJtqhUUy54Mmc9gn900PvhtgVguXDbjgv5E1hv +cWAQUhC5wUEJ73IfZzF4/5YFjQIDAQABo2MwYTAfBgNVHSMEGDAWgBTj/i39KNAL +tbq2osS/BqoFjJP7LzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAd +BgNVHQ4EFgQU4/4t/SjQC7W6tqLEvwaqBYyT+y8wDQYJKoZIhvcNAQELBQADggIB +ACXGumvrh8vegjmWPfBEp2uEcwPenStPuiB/vHiyz5ewG5zz13ku9Ui20vsXiObT +ej/tUxPQ4i9qecsAIyjmHjdXNYmEwnZPNDatZ8POQQaIxffu2Bq41gt/UP+TqhdL +jOztUmCypAbqTuv0axn96/Ua4CUqmtzHQTb3yHQFhDmVOdYLO6Qn+gjYXB74BGBS +ESgoA//vU2YApUo0FmZ8/Qmkrp5nGm9BC2sGE5uPhnEFtC+NiWYzKXZUmhH4J/qy +P5Hgzg0b8zAarb8iXRvTvyUFTeGSGn+ZnzxEk8rUQElsgIfXBDrDMlI1Dlb4pd19 +xIsNER9Tyx6yF7Zod1rg1MvIB671Oi6ON7fQAUtDKXeMOZePglr4UeWJoBjnaH9d +Ci77o0cOPaYjesYBx4/IXr9tgFa+iiS6M+qf4TIRnvHST4D2G0CvOJ4RUHlzEhLN +5mydLIhyPDCBBpEi6lmt2hkuIsKNuYyH4Ga8cyNfIWRjgEj1oDwYPZTISEEdQLpe +/v5WOaHIz16eGWRGENoXkbcFgKyLmZJ956LYBws2J+dIeWCKw9cTXPhyQN9Ky8+Z +AAoACxGV2lZFA4gKn2fQ1XmxqI1AbQ3CekD6819kR5LLU7m7Wc5P/dAVUwHY3+vZ +5nbv0CO7O6l5s9UCKc2Jo5YPSjXnTkLAdc0Hz+Ys63su +-----END CERTIFICATE----- + +# Issuer: CN=OISTE WISeKey Global Root GB CA O=WISeKey OU=OISTE Foundation Endorsed +# Subject: CN=OISTE WISeKey Global Root GB CA O=WISeKey OU=OISTE Foundation Endorsed +# Label: "OISTE WISeKey Global Root GB CA" +# Serial: 157768595616588414422159278966750757568 +# MD5 Fingerprint: a4:eb:b9:61:28:2e:b7:2f:98:b0:35:26:90:99:51:1d +# SHA1 Fingerprint: 0f:f9:40:76:18:d3:d7:6a:4b:98:f0:a8:35:9e:0c:fd:27:ac:cc:ed +# SHA256 Fingerprint: 6b:9c:08:e8:6e:b0:f7:67:cf:ad:65:cd:98:b6:21:49:e5:49:4a:67:f5:84:5e:7b:d1:ed:01:9f:27:b8:6b:d6 +-----BEGIN CERTIFICATE----- +MIIDtTCCAp2gAwIBAgIQdrEgUnTwhYdGs/gjGvbCwDANBgkqhkiG9w0BAQsFADBt +MQswCQYDVQQGEwJDSDEQMA4GA1UEChMHV0lTZUtleTEiMCAGA1UECxMZT0lTVEUg +Rm91bmRhdGlvbiBFbmRvcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9i +YWwgUm9vdCBHQiBDQTAeFw0xNDEyMDExNTAwMzJaFw0zOTEyMDExNTEwMzFaMG0x +CzAJBgNVBAYTAkNIMRAwDgYDVQQKEwdXSVNlS2V5MSIwIAYDVQQLExlPSVNURSBG +b3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5IEdsb2Jh +bCBSb290IEdCIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2Be3 +HEokKtaXscriHvt9OO+Y9bI5mE4nuBFde9IllIiCFSZqGzG7qFshISvYD06fWvGx +WuR51jIjK+FTzJlFXHtPrby/h0oLS5daqPZI7H17Dc0hBt+eFf1Biki3IPShehtX +1F1Q/7pn2COZH8g/497/b1t3sWtuuMlk9+HKQUYOKXHQuSP8yYFfTvdv37+ErXNk +u7dCjmn21HYdfp2nuFeKUWdy19SouJVUQHMD9ur06/4oQnc/nSMbsrY9gBQHTC5P +99UKFg29ZkM3fiNDecNAhvVMKdqOmq0NpQSHiB6F4+lT1ZvIiwNjeOvgGUpuuy9r +M2RYk61pv48b74JIxwIDAQABo1EwTzALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUw +AwEB/zAdBgNVHQ4EFgQUNQ/INmNe4qPs+TtmFc5RUuORmj0wEAYJKwYBBAGCNxUB +BAMCAQAwDQYJKoZIhvcNAQELBQADggEBAEBM+4eymYGQfp3FsLAmzYh7KzKNbrgh +cViXfa43FK8+5/ea4n32cZiZBKpDdHij40lhPnOMTZTg+XHEthYOU3gf1qKHLwI5 +gSk8rxWYITD+KJAAjNHhy/peyP34EEY7onhCkRd0VQreUGdNZtGn//3ZwLWoo4rO +ZvUPQ82nK1d7Y0Zqqi5S2PTt4W2tKZB4SLrhI6qjiey1q5bAtEuiHZeeevJuQHHf +aPFlTc58Bd9TZaml8LGXBHAVRgOY1NK/VLSgWH1Sb9pWJmLU2NuJMW8c8CLC02Ic +Nc1MaRVUGpCY3useX8p3x8uOPUNpnJpY0CQ73xtAln41rYHHTnG6iBM= +-----END CERTIFICATE----- + +# Issuer: CN=SZAFIR ROOT CA2 O=Krajowa Izba Rozliczeniowa S.A. +# Subject: CN=SZAFIR ROOT CA2 O=Krajowa Izba Rozliczeniowa S.A. +# Label: "SZAFIR ROOT CA2" +# Serial: 357043034767186914217277344587386743377558296292 +# MD5 Fingerprint: 11:64:c1:89:b0:24:b1:8c:b1:07:7e:89:9e:51:9e:99 +# SHA1 Fingerprint: e2:52:fa:95:3f:ed:db:24:60:bd:6e:28:f3:9c:cc:cf:5e:b3:3f:de +# SHA256 Fingerprint: a1:33:9d:33:28:1a:0b:56:e5:57:d3:d3:2b:1c:e7:f9:36:7e:b0:94:bd:5f:a7:2a:7e:50:04:c8:de:d7:ca:fe +-----BEGIN CERTIFICATE----- +MIIDcjCCAlqgAwIBAgIUPopdB+xV0jLVt+O2XwHrLdzk1uQwDQYJKoZIhvcNAQEL +BQAwUTELMAkGA1UEBhMCUEwxKDAmBgNVBAoMH0tyYWpvd2EgSXpiYSBSb3psaWN6 +ZW5pb3dhIFMuQS4xGDAWBgNVBAMMD1NaQUZJUiBST09UIENBMjAeFw0xNTEwMTkw +NzQzMzBaFw0zNTEwMTkwNzQzMzBaMFExCzAJBgNVBAYTAlBMMSgwJgYDVQQKDB9L +cmFqb3dhIEl6YmEgUm96bGljemVuaW93YSBTLkEuMRgwFgYDVQQDDA9TWkFGSVIg +Uk9PVCBDQTIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3vD5QqEvN +QLXOYeeWyrSh2gwisPq1e3YAd4wLz32ohswmUeQgPYUM1ljj5/QqGJ3a0a4m7utT +3PSQ1hNKDJA8w/Ta0o4NkjrcsbH/ON7Dui1fgLkCvUqdGw+0w8LBZwPd3BucPbOw +3gAeqDRHu5rr/gsUvTaE2g0gv/pby6kWIK05YO4vdbbnl5z5Pv1+TW9NL++IDWr6 +3fE9biCloBK0TXC5ztdyO4mTp4CEHCdJckm1/zuVnsHMyAHs6A6KCpbns6aH5db5 +BSsNl0BwPLqsdVqc1U2dAgrSS5tmS0YHF2Wtn2yIANwiieDhZNRnvDF5YTy7ykHN +XGoAyDw4jlivAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD +AgEGMB0GA1UdDgQWBBQuFqlKGLXLzPVvUPMjX/hd56zwyDANBgkqhkiG9w0BAQsF +AAOCAQEAtXP4A9xZWx126aMqe5Aosk3AM0+qmrHUuOQn/6mWmc5G4G18TKI4pAZw +8PRBEew/R40/cof5O/2kbytTAOD/OblqBw7rHRz2onKQy4I9EYKL0rufKq8h5mOG +nXkZ7/e7DDWQw4rtTw/1zBLZpD67oPwglV9PJi8RI4NOdQcPv5vRtB3pEAT+ymCP +oky4rc/hkA/NrgrHXXu3UNLUYfrVFdvXn4dRVOul4+vJhaAlIDf7js4MNIThPIGy +d05DpYhfhmehPea0XGG2Ptv+tyjFogeutcrKjSoS75ftwjCkySp6+/NNIxuZMzSg +LvWpCz/UXeHPhJ/iGcJfitYgHuNztw== +-----END CERTIFICATE----- + +# Issuer: CN=Certum Trusted Network CA 2 O=Unizeto Technologies S.A. OU=Certum Certification Authority +# Subject: CN=Certum Trusted Network CA 2 O=Unizeto Technologies S.A. OU=Certum Certification Authority +# Label: "Certum Trusted Network CA 2" +# Serial: 44979900017204383099463764357512596969 +# MD5 Fingerprint: 6d:46:9e:d9:25:6d:08:23:5b:5e:74:7d:1e:27:db:f2 +# SHA1 Fingerprint: d3:dd:48:3e:2b:bf:4c:05:e8:af:10:f5:fa:76:26:cf:d3:dc:30:92 +# SHA256 Fingerprint: b6:76:f2:ed:da:e8:77:5c:d3:6c:b0:f6:3c:d1:d4:60:39:61:f4:9e:62:65:ba:01:3a:2f:03:07:b6:d0:b8:04 +-----BEGIN CERTIFICATE----- +MIIF0jCCA7qgAwIBAgIQIdbQSk8lD8kyN/yqXhKN6TANBgkqhkiG9w0BAQ0FADCB +gDELMAkGA1UEBhMCUEwxIjAgBgNVBAoTGVVuaXpldG8gVGVjaG5vbG9naWVzIFMu +QS4xJzAlBgNVBAsTHkNlcnR1bSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEkMCIG +A1UEAxMbQ2VydHVtIFRydXN0ZWQgTmV0d29yayBDQSAyMCIYDzIwMTExMDA2MDgz +OTU2WhgPMjA0NjEwMDYwODM5NTZaMIGAMQswCQYDVQQGEwJQTDEiMCAGA1UEChMZ +VW5pemV0byBUZWNobm9sb2dpZXMgUy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRp +ZmljYXRpb24gQXV0aG9yaXR5MSQwIgYDVQQDExtDZXJ0dW0gVHJ1c3RlZCBOZXR3 +b3JrIENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC9+Xj45tWA +DGSdhhuWZGc/IjoedQF97/tcZ4zJzFxrqZHmuULlIEub2pt7uZld2ZuAS9eEQCsn +0+i6MLs+CRqnSZXvK0AkwpfHp+6bJe+oCgCXhVqqndwpyeI1B+twTUrWwbNWuKFB +OJvR+zF/j+Bf4bE/D44WSWDXBo0Y+aomEKsq09DRZ40bRr5HMNUuctHFY9rnY3lE +fktjJImGLjQ/KUxSiyqnwOKRKIm5wFv5HdnnJ63/mgKXwcZQkpsCLL2puTRZCr+E +Sv/f/rOf69me4Jgj7KZrdxYq28ytOxykh9xGc14ZYmhFV+SQgkK7QtbwYeDBoz1m +o130GO6IyY0XRSmZMnUCMe4pJshrAua1YkV/NxVaI2iJ1D7eTiew8EAMvE0Xy02i +sx7QBlrd9pPPV3WZ9fqGGmd4s7+W/jTcvedSVuWz5XV710GRBdxdaeOVDUO5/IOW +OZV7bIBaTxNyxtd9KXpEulKkKtVBRgkg/iKgtlswjbyJDNXXcPiHUv3a76xRLgez +Tv7QCdpw75j6VuZt27VXS9zlLCUVyJ4ueE742pyehizKV/Ma5ciSixqClnrDvFAS +adgOWkaLOusm+iPJtrCBvkIApPjW/jAux9JG9uWOdf3yzLnQh1vMBhBgu4M1t15n +3kfsmUjxpKEV/q2MYo45VU85FrmxY53/twIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MB0GA1UdDgQWBBS2oVQ5AsOgP46KvPrU+Bym0ToO/TAOBgNVHQ8BAf8EBAMC +AQYwDQYJKoZIhvcNAQENBQADggIBAHGlDs7k6b8/ONWJWsQCYftMxRQXLYtPU2sQ +F/xlhMcQSZDe28cmk4gmb3DWAl45oPePq5a1pRNcgRRtDoGCERuKTsZPpd1iHkTf +CVn0W3cLN+mLIMb4Ck4uWBzrM9DPhmDJ2vuAL55MYIR4PSFk1vtBHxgP58l1cb29 +XN40hz5BsA72udY/CROWFC/emh1auVbONTqwX3BNXuMp8SMoclm2q8KMZiYcdywm +djWLKKdpoPk79SPdhRB0yZADVpHnr7pH1BKXESLjokmUbOe3lEu6LaTaM4tMpkT/ +WjzGHWTYtTHkpjx6qFcL2+1hGsvxznN3Y6SHb0xRONbkX8eftoEq5IVIeVheO/jb +AoJnwTnbw3RLPTYe+SmTiGhbqEQZIfCn6IENLOiTNrQ3ssqwGyZ6miUfmpqAnksq +P/ujmv5zMnHCnsZy4YpoJ/HkD7TETKVhk/iXEAcqMCWpuchxuO9ozC1+9eB+D4Ko +b7a6bINDd82Kkhehnlt4Fj1F4jNy3eFmypnTycUm/Q1oBEauttmbjL4ZvrHG8hnj +XALKLNhvSgfZyTXaQHXyxKcZb55CEJh15pWLYLztxRLXis7VmFxWlgPF7ncGNf/P +5O4/E2Hu29othfDNrp2yGAlFw5Khchf8R7agCyzxxN5DaAhqXzvwdmP7zAYspsbi +DrW5viSP +-----END CERTIFICATE----- + +# Issuer: CN=Hellenic Academic and Research Institutions RootCA 2015 O=Hellenic Academic and Research Institutions Cert. Authority +# Subject: CN=Hellenic Academic and Research Institutions RootCA 2015 O=Hellenic Academic and Research Institutions Cert. Authority +# Label: "Hellenic Academic and Research Institutions RootCA 2015" +# Serial: 0 +# MD5 Fingerprint: ca:ff:e2:db:03:d9:cb:4b:e9:0f:ad:84:fd:7b:18:ce +# SHA1 Fingerprint: 01:0c:06:95:a6:98:19:14:ff:bf:5f:c6:b0:b6:95:ea:29:e9:12:a6 +# SHA256 Fingerprint: a0:40:92:9a:02:ce:53:b4:ac:f4:f2:ff:c6:98:1c:e4:49:6f:75:5e:6d:45:fe:0b:2a:69:2b:cd:52:52:3f:36 +-----BEGIN CERTIFICATE----- +MIIGCzCCA/OgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBpjELMAkGA1UEBhMCR1Ix +DzANBgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNhZGVtaWMgYW5k +IFJlc2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkxQDA+BgNVBAMT +N0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgUm9v +dENBIDIwMTUwHhcNMTUwNzA3MTAxMTIxWhcNNDAwNjMwMTAxMTIxWjCBpjELMAkG +A1UEBhMCR1IxDzANBgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNh +ZGVtaWMgYW5kIFJlc2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkx +QDA+BgNVBAMTN0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1 +dGlvbnMgUm9vdENBIDIwMTUwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC +AQDC+Kk/G4n8PDwEXT2QNrCROnk8ZlrvbTkBSRq0t89/TSNTt5AA4xMqKKYx8ZEA +4yjsriFBzh/a/X0SWwGDD7mwX5nh8hKDgE0GPt+sr+ehiGsxr/CL0BgzuNtFajT0 +AoAkKAoCFZVedioNmToUW/bLy1O8E00BiDeUJRtCvCLYjqOWXjrZMts+6PAQZe10 +4S+nfK8nNLspfZu2zwnI5dMK/IhlZXQK3HMcXM1AsRzUtoSMTFDPaI6oWa7CJ06C +ojXdFPQf/7J31Ycvqm59JCfnxssm5uX+Zwdj2EUN3TpZZTlYepKZcj2chF6IIbjV +9Cz82XBST3i4vTwri5WY9bPRaM8gFH5MXF/ni+X1NYEZN9cRCLdmvtNKzoNXADrD +gfgXy5I2XdGj2HUb4Ysn6npIQf1FGQatJ5lOwXBH3bWfgVMS5bGMSF0xQxfjjMZ6 +Y5ZLKTBOhE5iGV48zpeQpX8B653g+IuJ3SWYPZK2fu/Z8VFRfS0myGlZYeCsargq +NhEEelC9MoS+L9xy1dcdFkfkR2YgP/SWxa+OAXqlD3pk9Q0Yh9muiNX6hME6wGko +LfINaFGq46V3xqSQDqE3izEjR8EJCOtu93ib14L8hCCZSRm2Ekax+0VVFqmjZayc +Bw/qa9wfLgZy7IaIEuQt218FL+TwA9MmM+eAws1CoRc0CwIDAQABo0IwQDAPBgNV +HRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUcRVnyMjJvXVd +ctA4GGqd83EkVAswDQYJKoZIhvcNAQELBQADggIBAHW7bVRLqhBYRjTyYtcWNl0I +XtVsyIe9tC5G8jH4fOpCtZMWVdyhDBKg2mF+D1hYc2Ryx+hFjtyp8iY/xnmMsVMI +M4GwVhO+5lFc2JsKT0ucVlMC6U/2DWDqTUJV6HwbISHTGzrMd/K4kPFox/la/vot +9L/J9UUbzjgQKjeKeaO04wlshYaT/4mWJ3iBj2fjRnRUjtkNaeJK9E10A/+yd+2V +Z5fkscWrv2oj6NSU4kQoYsRL4vDY4ilrGnB+JGGTe08DMiUNRSQrlrRGar9KC/ea +j8GsGsVn82800vpzY4zvFrCopEYq+OsS7HK07/grfoxSwIuEVPkvPuNVqNxmsdnh +X9izjFk0WaSrT2y7HxjbdavYy5LNlDhhDgcGH0tGEPEVvo2FXDtKK4F5D7Rpn0lQ +l033DlZdwJVqwjbDG2jJ9SrcR5q+ss7FJej6A7na+RZukYT1HCjI/CbM1xyQVqdf +bzoEvM14iQuODy+jqk+iGxI9FghAD/FGTNeqewjBCvVtJ94Cj8rDtSvK6evIIVM4 +pcw72Hc3MKJP2W/R8kCtQXoXxdZKNYm3QdV8hn9VTYNKpXMgwDqvkPGaJI7ZjnHK +e7iG2rKPmT4dEw0SEe7Uq/DpFXYC5ODfqiAeW2GFZECpkJcNrVPSWh2HagCXZWK0 +vm9qp/UsQu0yrbYhnr68 +-----END CERTIFICATE----- + +# Issuer: CN=Hellenic Academic and Research Institutions ECC RootCA 2015 O=Hellenic Academic and Research Institutions Cert. Authority +# Subject: CN=Hellenic Academic and Research Institutions ECC RootCA 2015 O=Hellenic Academic and Research Institutions Cert. Authority +# Label: "Hellenic Academic and Research Institutions ECC RootCA 2015" +# Serial: 0 +# MD5 Fingerprint: 81:e5:b4:17:eb:c2:f5:e1:4b:0d:41:7b:49:92:fe:ef +# SHA1 Fingerprint: 9f:f1:71:8d:92:d5:9a:f3:7d:74:97:b4:bc:6f:84:68:0b:ba:b6:66 +# SHA256 Fingerprint: 44:b5:45:aa:8a:25:e6:5a:73:ca:15:dc:27:fc:36:d2:4c:1c:b9:95:3a:06:65:39:b1:15:82:dc:48:7b:48:33 +-----BEGIN CERTIFICATE----- +MIICwzCCAkqgAwIBAgIBADAKBggqhkjOPQQDAjCBqjELMAkGA1UEBhMCR1IxDzAN +BgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJl +c2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkxRDBCBgNVBAMTO0hl +bGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgRUNDIFJv +b3RDQSAyMDE1MB4XDTE1MDcwNzEwMzcxMloXDTQwMDYzMDEwMzcxMlowgaoxCzAJ +BgNVBAYTAkdSMQ8wDQYDVQQHEwZBdGhlbnMxRDBCBgNVBAoTO0hlbGxlbmljIEFj +YWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG9yaXR5 +MUQwQgYDVQQDEztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0 +dXRpb25zIEVDQyBSb290Q0EgMjAxNTB2MBAGByqGSM49AgEGBSuBBAAiA2IABJKg +QehLgoRc4vgxEZmGZE4JJS+dQS8KrjVPdJWyUWRrjWvmP3CV8AVER6ZyOFB2lQJa +jq4onvktTpnvLEhvTCUp6NFxW98dwXU3tNf6e3pCnGoKVlp8aQuqgAkkbH7BRqNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFLQi +C4KZJAEOnLvkDv2/+5cgk5kqMAoGCCqGSM49BAMCA2cAMGQCMGfOFmI4oqxiRaep +lSTAGiecMjvAwNW6qef4BENThe5SId6d9SWDPp5YSy/XZxMOIQIwBeF1Ad5o7Sof +TUwJCA3sS61kFyjndc5FZXIhF8siQQ6ME5g4mlRtm8rifOoCWCKR +-----END CERTIFICATE----- + +# Issuer: CN=ISRG Root X1 O=Internet Security Research Group +# Subject: CN=ISRG Root X1 O=Internet Security Research Group +# Label: "ISRG Root X1" +# Serial: 172886928669790476064670243504169061120 +# MD5 Fingerprint: 0c:d2:f9:e0:da:17:73:e9:ed:86:4d:a5:e3:70:e7:4e +# SHA1 Fingerprint: ca:bd:2a:79:a1:07:6a:31:f2:1d:25:36:35:cb:03:9d:43:29:a5:e8 +# SHA256 Fingerprint: 96:bc:ec:06:26:49:76:f3:74:60:77:9a:cf:28:c5:a7:cf:e8:a3:c0:aa:e1:1a:8f:fc:ee:05:c0:bd:df:08:c6 +-----BEGIN CERTIFICATE----- +MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw +TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh +cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4 +WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJu +ZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBY +MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54rVygc +h77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+ +0TM8ukj13Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6U +A5/TR5d8mUgjU+g4rk8Kb4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sW +T8KOEUt+zwvo/7V3LvSye0rgTBIlDHCNAymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyH +B5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ4Q7e2RCOFvu396j3x+UC +B5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf1b0SHzUv +KBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWn +OlFuhjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTn +jh8BCNAw1FtxNrQHusEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbw +qHyGO0aoSCqI3Haadr8faqU9GY/rOPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CI +rU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV +HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY9umbbjANBgkq +hkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL +ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ +3BebYhtF8GaV0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KK +NFtY2PwByVS5uCbMiogziUwthDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5 +ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJwTdwJx4nLCgdNbOhdjsnvzqvHu7Ur +TkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nxe5AW0wdeRlN8NwdC +jNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZAJzVc +oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq +4RgqsahDYVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPA +mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d +emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc= +-----END CERTIFICATE----- + +# Issuer: O=FNMT-RCM OU=AC RAIZ FNMT-RCM +# Subject: O=FNMT-RCM OU=AC RAIZ FNMT-RCM +# Label: "AC RAIZ FNMT-RCM" +# Serial: 485876308206448804701554682760554759 +# MD5 Fingerprint: e2:09:04:b4:d3:bd:d1:a0:14:fd:1a:d2:47:c4:57:1d +# SHA1 Fingerprint: ec:50:35:07:b2:15:c4:95:62:19:e2:a8:9a:5b:42:99:2c:4c:2c:20 +# SHA256 Fingerprint: eb:c5:57:0c:29:01:8c:4d:67:b1:aa:12:7b:af:12:f7:03:b4:61:1e:bc:17:b7:da:b5:57:38:94:17:9b:93:fa +-----BEGIN CERTIFICATE----- +MIIFgzCCA2ugAwIBAgIPXZONMGc2yAYdGsdUhGkHMA0GCSqGSIb3DQEBCwUAMDsx +CzAJBgNVBAYTAkVTMREwDwYDVQQKDAhGTk1ULVJDTTEZMBcGA1UECwwQQUMgUkFJ +WiBGTk1ULVJDTTAeFw0wODEwMjkxNTU5NTZaFw0zMDAxMDEwMDAwMDBaMDsxCzAJ +BgNVBAYTAkVTMREwDwYDVQQKDAhGTk1ULVJDTTEZMBcGA1UECwwQQUMgUkFJWiBG +Tk1ULVJDTTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALpxgHpMhm5/ +yBNtwMZ9HACXjywMI7sQmkCpGreHiPibVmr75nuOi5KOpyVdWRHbNi63URcfqQgf +BBckWKo3Shjf5TnUV/3XwSyRAZHiItQDwFj8d0fsjz50Q7qsNI1NOHZnjrDIbzAz +WHFctPVrbtQBULgTfmxKo0nRIBnuvMApGGWn3v7v3QqQIecaZ5JCEJhfTzC8PhxF +tBDXaEAUwED653cXeuYLj2VbPNmaUtu1vZ5Gzz3rkQUCwJaydkxNEJY7kvqcfw+Z +374jNUUeAlz+taibmSXaXvMiwzn15Cou08YfxGyqxRxqAQVKL9LFwag0Jl1mpdIC +IfkYtwb1TplvqKtMUejPUBjFd8g5CSxJkjKZqLsXF3mwWsXmo8RZZUc1g16p6DUL +mbvkzSDGm0oGObVo/CK67lWMK07q87Hj/LaZmtVC+nFNCM+HHmpxffnTtOmlcYF7 +wk5HlqX2doWjKI/pgG6BU6VtX7hI+cL5NqYuSf+4lsKMB7ObiFj86xsc3i1w4peS +MKGJ47xVqCfWS+2QrYv6YyVZLag13cqXM7zlzced0ezvXg5KkAYmY6252TUtB7p2 +ZSysV4999AeU14ECll2jB0nVetBX+RvnU0Z1qrB5QstocQjpYL05ac70r8NWQMet +UqIJ5G+GR4of6ygnXYMgrwTJbFaai0b1AgMBAAGjgYMwgYAwDwYDVR0TAQH/BAUw +AwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFPd9xf3E6Jobd2Sn9R2gzL+H +YJptMD4GA1UdIAQ3MDUwMwYEVR0gADArMCkGCCsGAQUFBwIBFh1odHRwOi8vd3d3 +LmNlcnQuZm5tdC5lcy9kcGNzLzANBgkqhkiG9w0BAQsFAAOCAgEAB5BK3/MjTvDD +nFFlm5wioooMhfNzKWtN/gHiqQxjAb8EZ6WdmF/9ARP67Jpi6Yb+tmLSbkyU+8B1 +RXxlDPiyN8+sD8+Nb/kZ94/sHvJwnvDKuO+3/3Y3dlv2bojzr2IyIpMNOmqOFGYM +LVN0V2Ue1bLdI4E7pWYjJ2cJj+F3qkPNZVEI7VFY/uY5+ctHhKQV8Xa7pO6kO8Rf +77IzlhEYt8llvhjho6Tc+hj507wTmzl6NLrTQfv6MooqtyuGC2mDOL7Nii4LcK2N +JpLuHvUBKwrZ1pebbuCoGRw6IYsMHkCtA+fdZn71uSANA+iW+YJF1DngoABd15jm +fZ5nc8OaKveri6E6FO80vFIOiZiaBECEHX5FaZNXzuvO+FB8TxxuBEOb+dY7Ixjp +6o7RTUaN8Tvkasq6+yO3m/qZASlaWFot4/nUbQ4mrcFuNLwy+AwF+mWj2zs3gyLp +1txyM/1d8iC9djwj2ij3+RvrWWTV3F9yfiD8zYm1kGdNYno/Tq0dwzn+evQoFt9B +9kiABdcPUXmsEKvU7ANm5mqwujGSQkBqvjrTcuFqN1W8rB2Vt2lh8kORdOag0wok +RqEIr9baRRmW1FMdW4R58MD3R++Lj8UGrp1MYp3/RgT408m2ECVAdf4WqslKYIYv +uu8wd+RU4riEmViAqhOLUTpPSPaLtrM= +-----END CERTIFICATE----- + +# Issuer: CN=Amazon Root CA 1 O=Amazon +# Subject: CN=Amazon Root CA 1 O=Amazon +# Label: "Amazon Root CA 1" +# Serial: 143266978916655856878034712317230054538369994 +# MD5 Fingerprint: 43:c6:bf:ae:ec:fe:ad:2f:18:c6:88:68:30:fc:c8:e6 +# SHA1 Fingerprint: 8d:a7:f9:65:ec:5e:fc:37:91:0f:1c:6e:59:fd:c1:cc:6a:6e:de:16 +# SHA256 Fingerprint: 8e:cd:e6:88:4f:3d:87:b1:12:5b:a3:1a:c3:fc:b1:3d:70:16:de:7f:57:cc:90:4f:e1:cb:97:c6:ae:98:19:6e +-----BEGIN CERTIFICATE----- +MIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF +ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6 +b24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL +MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv +b3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj +ca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM +9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw +IFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6 +VOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L +93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm +jgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA +A4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI +U5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs +N+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv +o/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU +5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy +rqXRfboQnoZsG4q5WTP468SQvvG5 +-----END CERTIFICATE----- + +# Issuer: CN=Amazon Root CA 2 O=Amazon +# Subject: CN=Amazon Root CA 2 O=Amazon +# Label: "Amazon Root CA 2" +# Serial: 143266982885963551818349160658925006970653239 +# MD5 Fingerprint: c8:e5:8d:ce:a8:42:e2:7a:c0:2a:5c:7c:9e:26:bf:66 +# SHA1 Fingerprint: 5a:8c:ef:45:d7:a6:98:59:76:7a:8c:8b:44:96:b5:78:cf:47:4b:1a +# SHA256 Fingerprint: 1b:a5:b2:aa:8c:65:40:1a:82:96:01:18:f8:0b:ec:4f:62:30:4d:83:ce:c4:71:3a:19:c3:9c:01:1e:a4:6d:b4 +-----BEGIN CERTIFICATE----- +MIIFQTCCAymgAwIBAgITBmyf0pY1hp8KD+WGePhbJruKNzANBgkqhkiG9w0BAQwF +ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6 +b24gUm9vdCBDQSAyMB4XDTE1MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTEL +MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv +b3QgQ0EgMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK2Wny2cSkxK +gXlRmeyKy2tgURO8TW0G/LAIjd0ZEGrHJgw12MBvIITplLGbhQPDW9tK6Mj4kHbZ +W0/jTOgGNk3Mmqw9DJArktQGGWCsN0R5hYGCrVo34A3MnaZMUnbqQ523BNFQ9lXg +1dKmSYXpN+nKfq5clU1Imj+uIFptiJXZNLhSGkOQsL9sBbm2eLfq0OQ6PBJTYv9K +8nu+NQWpEjTj82R0Yiw9AElaKP4yRLuH3WUnAnE72kr3H9rN9yFVkE8P7K6C4Z9r +2UXTu/Bfh+08LDmG2j/e7HJV63mjrdvdfLC6HM783k81ds8P+HgfajZRRidhW+me +z/CiVX18JYpvL7TFz4QuK/0NURBs+18bvBt+xa47mAExkv8LV/SasrlX6avvDXbR +8O70zoan4G7ptGmh32n2M8ZpLpcTnqWHsFcQgTfJU7O7f/aS0ZzQGPSSbtqDT6Zj +mUyl+17vIWR6IF9sZIUVyzfpYgwLKhbcAS4y2j5L9Z469hdAlO+ekQiG+r5jqFoz +7Mt0Q5X5bGlSNscpb/xVA1wf+5+9R+vnSUeVC06JIglJ4PVhHvG/LopyboBZ/1c6 ++XUyo05f7O0oYtlNc/LMgRdg7c3r3NunysV+Ar3yVAhU/bQtCSwXVEqY0VThUWcI +0u1ufm8/0i2BWSlmy5A5lREedCf+3euvAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMB +Af8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBSwDPBMMPQFWAJI/TPlUq9LhONm +UjANBgkqhkiG9w0BAQwFAAOCAgEAqqiAjw54o+Ci1M3m9Zh6O+oAA7CXDpO8Wqj2 +LIxyh6mx/H9z/WNxeKWHWc8w4Q0QshNabYL1auaAn6AFC2jkR2vHat+2/XcycuUY ++gn0oJMsXdKMdYV2ZZAMA3m3MSNjrXiDCYZohMr/+c8mmpJ5581LxedhpxfL86kS +k5Nrp+gvU5LEYFiwzAJRGFuFjWJZY7attN6a+yb3ACfAXVU3dJnJUH/jWS5E4ywl +7uxMMne0nxrpS10gxdr9HIcWxkPo1LsmmkVwXqkLN1PiRnsn/eBG8om3zEK2yygm +btmlyTrIQRNg91CMFa6ybRoVGld45pIq2WWQgj9sAq+uEjonljYE1x2igGOpm/Hl +urR8FLBOybEfdF849lHqm/osohHUqS0nGkWxr7JOcQ3AWEbWaQbLU8uz/mtBzUF+ +fUwPfHJ5elnNXkoOrJupmHN5fLT0zLm4BwyydFy4x2+IoZCn9Kr5v2c69BoVYh63 +n749sSmvZ6ES8lgQGVMDMBu4Gon2nL2XA46jCfMdiyHxtN/kHNGfZQIG6lzWE7OE +76KlXIx3KadowGuuQNKotOrN8I1LOJwZmhsoVLiJkO/KdYE+HvJkJMcYr07/R54H +9jVlpNMKVv/1F2Rs76giJUmTtt8AF9pYfl3uxRuw0dFfIRDH+fO6AgonB8Xx1sfT +4PsJYGw= +-----END CERTIFICATE----- + +# Issuer: CN=Amazon Root CA 3 O=Amazon +# Subject: CN=Amazon Root CA 3 O=Amazon +# Label: "Amazon Root CA 3" +# Serial: 143266986699090766294700635381230934788665930 +# MD5 Fingerprint: a0:d4:ef:0b:f7:b5:d8:49:95:2a:ec:f5:c4:fc:81:87 +# SHA1 Fingerprint: 0d:44:dd:8c:3c:8c:1a:1a:58:75:64:81:e9:0f:2e:2a:ff:b3:d2:6e +# SHA256 Fingerprint: 18:ce:6c:fe:7b:f1:4e:60:b2:e3:47:b8:df:e8:68:cb:31:d0:2e:bb:3a:da:27:15:69:f5:03:43:b4:6d:b3:a4 +-----BEGIN CERTIFICATE----- +MIIBtjCCAVugAwIBAgITBmyf1XSXNmY/Owua2eiedgPySjAKBggqhkjOPQQDAjA5 +MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24g +Um9vdCBDQSAzMB4XDTE1MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTELMAkG +A1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJvb3Qg +Q0EgMzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABCmXp8ZBf8ANm+gBG1bG8lKl +ui2yEujSLtf6ycXYqm0fc4E7O5hrOXwzpcVOho6AF2hiRVd9RFgdszflZwjrZt6j +QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBSr +ttvXBp43rDCGB5Fwx5zEGbF4wDAKBggqhkjOPQQDAgNJADBGAiEA4IWSoxe3jfkr +BqWTrBqYaGFy+uGh0PsceGCmQ5nFuMQCIQCcAu/xlJyzlvnrxir4tiz+OpAUFteM +YyRIHN8wfdVoOw== +-----END CERTIFICATE----- + +# Issuer: CN=Amazon Root CA 4 O=Amazon +# Subject: CN=Amazon Root CA 4 O=Amazon +# Label: "Amazon Root CA 4" +# Serial: 143266989758080763974105200630763877849284878 +# MD5 Fingerprint: 89:bc:27:d5:eb:17:8d:06:6a:69:d5:fd:89:47:b4:cd +# SHA1 Fingerprint: f6:10:84:07:d6:f8:bb:67:98:0c:c2:e2:44:c2:eb:ae:1c:ef:63:be +# SHA256 Fingerprint: e3:5d:28:41:9e:d0:20:25:cf:a6:90:38:cd:62:39:62:45:8d:a5:c6:95:fb:de:a3:c2:2b:0b:fb:25:89:70:92 +-----BEGIN CERTIFICATE----- +MIIB8jCCAXigAwIBAgITBmyf18G7EEwpQ+Vxe3ssyBrBDjAKBggqhkjOPQQDAzA5 +MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24g +Um9vdCBDQSA0MB4XDTE1MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTELMAkG +A1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJvb3Qg +Q0EgNDB2MBAGByqGSM49AgEGBSuBBAAiA2IABNKrijdPo1MN/sGKe0uoe0ZLY7Bi +9i0b2whxIdIA6GO9mif78DluXeo9pcmBqqNbIJhFXRbb/egQbeOc4OO9X4Ri83Bk +M6DLJC9wuoihKqB1+IGuYgbEgds5bimwHvouXKNCMEAwDwYDVR0TAQH/BAUwAwEB +/zAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFNPsxzplbszh2naaVvuc84ZtV+WB +MAoGCCqGSM49BAMDA2gAMGUCMDqLIfG9fhGt0O9Yli/W651+kI0rz2ZVwyzjKKlw +CkcO8DdZEv8tmZQoTipPNU0zWgIxAOp1AE47xDqUEpHJWEadIRNyp4iciuRMStuW +1KyLa2tJElMzrdfkviT8tQp21KW8EA== +-----END CERTIFICATE----- + +# Issuer: CN=TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1 O=Turkiye Bilimsel ve Teknolojik Arastirma Kurumu - TUBITAK OU=Kamu Sertifikasyon Merkezi - Kamu SM +# Subject: CN=TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1 O=Turkiye Bilimsel ve Teknolojik Arastirma Kurumu - TUBITAK OU=Kamu Sertifikasyon Merkezi - Kamu SM +# Label: "TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1" +# Serial: 1 +# MD5 Fingerprint: dc:00:81:dc:69:2f:3e:2f:b0:3b:f6:3d:5a:91:8e:49 +# SHA1 Fingerprint: 31:43:64:9b:ec:ce:27:ec:ed:3a:3f:0b:8f:0d:e4:e8:91:dd:ee:ca +# SHA256 Fingerprint: 46:ed:c3:68:90:46:d5:3a:45:3f:b3:10:4a:b8:0d:ca:ec:65:8b:26:60:ea:16:29:dd:7e:86:79:90:64:87:16 +-----BEGIN CERTIFICATE----- +MIIEYzCCA0ugAwIBAgIBATANBgkqhkiG9w0BAQsFADCB0jELMAkGA1UEBhMCVFIx +GDAWBgNVBAcTD0dlYnplIC0gS29jYWVsaTFCMEAGA1UEChM5VHVya2l5ZSBCaWxp +bXNlbCB2ZSBUZWtub2xvamlrIEFyYXN0aXJtYSBLdXJ1bXUgLSBUVUJJVEFLMS0w +KwYDVQQLEyRLYW11IFNlcnRpZmlrYXN5b24gTWVya2V6aSAtIEthbXUgU00xNjA0 +BgNVBAMTLVRVQklUQUsgS2FtdSBTTSBTU0wgS29rIFNlcnRpZmlrYXNpIC0gU3Vy +dW0gMTAeFw0xMzExMjUwODI1NTVaFw00MzEwMjUwODI1NTVaMIHSMQswCQYDVQQG +EwJUUjEYMBYGA1UEBxMPR2ViemUgLSBLb2NhZWxpMUIwQAYDVQQKEzlUdXJraXll +IEJpbGltc2VsIHZlIFRla25vbG9qaWsgQXJhc3Rpcm1hIEt1cnVtdSAtIFRVQklU +QUsxLTArBgNVBAsTJEthbXUgU2VydGlmaWthc3lvbiBNZXJrZXppIC0gS2FtdSBT +TTE2MDQGA1UEAxMtVFVCSVRBSyBLYW11IFNNIFNTTCBLb2sgU2VydGlmaWthc2kg +LSBTdXJ1bSAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr3UwM6q7 +a9OZLBI3hNmNe5eA027n/5tQlT6QlVZC1xl8JoSNkvoBHToP4mQ4t4y86Ij5iySr +LqP1N+RAjhgleYN1Hzv/bKjFxlb4tO2KRKOrbEz8HdDc72i9z+SqzvBV96I01INr +N3wcwv61A+xXzry0tcXtAA9TNypN9E8Mg/uGz8v+jE69h/mniyFXnHrfA2eJLJ2X +YacQuFWQfw4tJzh03+f92k4S400VIgLI4OD8D62K18lUUMw7D8oWgITQUVbDjlZ/ +iSIzL+aFCr2lqBs23tPcLG07xxO9WSMs5uWk99gL7eqQQESolbuT1dCANLZGeA4f +AJNG4e7p+exPFwIDAQABo0IwQDAdBgNVHQ4EFgQUZT/HiobGPN08VFw1+DrtUgxH +V8gwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL +BQADggEBACo/4fEyjq7hmFxLXs9rHmoJ0iKpEsdeV31zVmSAhHqT5Am5EM2fKifh +AHe+SMg1qIGf5LgsyX8OsNJLN13qudULXjS99HMpw+0mFZx+CFOKWI3QSyjfwbPf +IPP54+M638yclNhOT8NrF7f3cuitZjO1JVOr4PhMqZ398g26rrnZqsZr+ZO7rqu4 +lzwDGrpDxpa5RXI4s6ehlj2Re37AIVNMh+3yC1SVUZPVIqUNivGTDj5UDrDYyU7c +8jEyVupk+eq1nRZmQnLzf9OxMUP8pI4X8W0jq5Rm+K37DwhuJi1/FwcJsoz7UMCf +lo3Ptv0AnVoUmr8CRPXBwp8iXqIPoeM= +-----END CERTIFICATE----- + +# Issuer: CN=GDCA TrustAUTH R5 ROOT O=GUANG DONG CERTIFICATE AUTHORITY CO.,LTD. +# Subject: CN=GDCA TrustAUTH R5 ROOT O=GUANG DONG CERTIFICATE AUTHORITY CO.,LTD. +# Label: "GDCA TrustAUTH R5 ROOT" +# Serial: 9009899650740120186 +# MD5 Fingerprint: 63:cc:d9:3d:34:35:5c:6f:53:a3:e2:08:70:48:1f:b4 +# SHA1 Fingerprint: 0f:36:38:5b:81:1a:25:c3:9b:31:4e:83:ca:e9:34:66:70:cc:74:b4 +# SHA256 Fingerprint: bf:ff:8f:d0:44:33:48:7d:6a:8a:a6:0c:1a:29:76:7a:9f:c2:bb:b0:5e:42:0f:71:3a:13:b9:92:89:1d:38:93 +-----BEGIN CERTIFICATE----- +MIIFiDCCA3CgAwIBAgIIfQmX/vBH6nowDQYJKoZIhvcNAQELBQAwYjELMAkGA1UE +BhMCQ04xMjAwBgNVBAoMKUdVQU5HIERPTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZ +IENPLixMVEQuMR8wHQYDVQQDDBZHRENBIFRydXN0QVVUSCBSNSBST09UMB4XDTE0 +MTEyNjA1MTMxNVoXDTQwMTIzMTE1NTk1OVowYjELMAkGA1UEBhMCQ04xMjAwBgNV +BAoMKUdVQU5HIERPTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZIENPLixMVEQuMR8w +HQYDVQQDDBZHRENBIFRydXN0QVVUSCBSNSBST09UMIICIjANBgkqhkiG9w0BAQEF +AAOCAg8AMIICCgKCAgEA2aMW8Mh0dHeb7zMNOwZ+Vfy1YI92hhJCfVZmPoiC7XJj +Dp6L3TQsAlFRwxn9WVSEyfFrs0yw6ehGXTjGoqcuEVe6ghWinI9tsJlKCvLriXBj +TnnEt1u9ol2x8kECK62pOqPseQrsXzrj/e+APK00mxqriCZ7VqKChh/rNYmDf1+u +KU49tm7srsHwJ5uu4/Ts765/94Y9cnrrpftZTqfrlYwiOXnhLQiPzLyRuEH3FMEj +qcOtmkVEs7LXLM3GKeJQEK5cy4KOFxg2fZfmiJqwTTQJ9Cy5WmYqsBebnh52nUpm +MUHfP/vFBu8btn4aRjb3ZGM74zkYI+dndRTVdVeSN72+ahsmUPI2JgaQxXABZG12 +ZuGR224HwGGALrIuL4xwp9E7PLOR5G62xDtw8mySlwnNR30YwPO7ng/Wi64HtloP +zgsMR6flPri9fcebNaBhlzpBdRfMK5Z3KpIhHtmVdiBnaM8Nvd/WHwlqmuLMc3Gk +L30SgLdTMEZeS1SZD2fJpcjyIMGC7J0R38IC+xo70e0gmu9lZJIQDSri3nDxGGeC +jGHeuLzRL5z7D9Ar7Rt2ueQ5Vfj4oR24qoAATILnsn8JuLwwoC8N9VKejveSswoA +HQBUlwbgsQfZxw9cZX08bVlX5O2ljelAU58VS6Bx9hoh49pwBiFYFIeFd3mqgnkC +AwEAAaNCMEAwHQYDVR0OBBYEFOLJQJ9NzuiaoXzPDj9lxSmIahlRMA8GA1UdEwEB +/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4ICAQDRSVfg +p8xoWLoBDysZzY2wYUWsEe1jUGn4H3++Fo/9nesLqjJHdtJnJO29fDMylyrHBYZm +DRd9FBUb1Ov9H5r2XpdptxolpAqzkT9fNqyL7FeoPueBihhXOYV0GkLH6VsTX4/5 +COmSdI31R9KrO9b7eGZONn356ZLpBN79SWP8bfsUcZNnL0dKt7n/HipzcEYwv1ry +L3ml4Y0M2fmyYzeMN2WFcGpcWwlyua1jPLHd+PwyvzeG5LuOmCd+uh8W4XAR8gPf +JWIyJyYYMoSf/wA6E7qaTfRPuBRwIrHKK5DOKcFw9C+df/KQHtZa37dG/OaG+svg +IHZ6uqbL9XzeYqWxi+7egmaKTjowHz+Ay60nugxe19CxVsp3cbK1daFQqUBDF8Io +2c9Si1vIY9RCPqAzekYu9wogRlR+ak8x8YF+QnQ4ZXMn7sZ8uI7XpTrXmKGcjBBV +09tL7ECQ8s1uV9JiDnxXk7Gnbc2dg7sq5+W2O3FYrf3RRbxake5TFW/TRQl1brqQ +XR4EzzffHqhmsYzmIGrv/EhOdJhCrylvLmrH+33RZjEizIYAfmaDDEL0vTSSwxrq +T8p+ck0LcIymSLumoRT2+1hEmRSuqguTaaApJUqlyyvdimYHFngVV3Eb7PVHhPOe +MTd61X8kreS8/f3MboPoDKi3QWwH3b08hpcv0g== +-----END CERTIFICATE----- + +# Issuer: CN=SSL.com Root Certification Authority RSA O=SSL Corporation +# Subject: CN=SSL.com Root Certification Authority RSA O=SSL Corporation +# Label: "SSL.com Root Certification Authority RSA" +# Serial: 8875640296558310041 +# MD5 Fingerprint: 86:69:12:c0:70:f1:ec:ac:ac:c2:d5:bc:a5:5b:a1:29 +# SHA1 Fingerprint: b7:ab:33:08:d1:ea:44:77:ba:14:80:12:5a:6f:bd:a9:36:49:0c:bb +# SHA256 Fingerprint: 85:66:6a:56:2e:e0:be:5c:e9:25:c1:d8:89:0a:6f:76:a8:7e:c1:6d:4d:7d:5f:29:ea:74:19:cf:20:12:3b:69 +-----BEGIN CERTIFICATE----- +MIIF3TCCA8WgAwIBAgIIeyyb0xaAMpkwDQYJKoZIhvcNAQELBQAwfDELMAkGA1UE +BhMCVVMxDjAMBgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQK +DA9TU0wgQ29ycG9yYXRpb24xMTAvBgNVBAMMKFNTTC5jb20gUm9vdCBDZXJ0aWZp +Y2F0aW9uIEF1dGhvcml0eSBSU0EwHhcNMTYwMjEyMTczOTM5WhcNNDEwMjEyMTcz +OTM5WjB8MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hv +dXN0b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjExMC8GA1UEAwwoU1NMLmNv +bSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFJTQTCCAiIwDQYJKoZIhvcN +AQEBBQADggIPADCCAgoCggIBAPkP3aMrfcvQKv7sZ4Wm5y4bunfh4/WvpOz6Sl2R +xFdHaxh3a3by/ZPkPQ/CFp4LZsNWlJ4Xg4XOVu/yFv0AYvUiCVToZRdOQbngT0aX +qhvIuG5iXmmxX9sqAn78bMrzQdjt0Oj8P2FI7bADFB0QDksZ4LtO7IZl/zbzXmcC +C52GVWH9ejjt/uIZALdvoVBidXQ8oPrIJZK0bnoix/geoeOy3ZExqysdBP+lSgQ3 +6YWkMyv94tZVNHwZpEpox7Ko07fKoZOI68GXvIz5HdkihCR0xwQ9aqkpk8zruFvh +/l8lqjRYyMEjVJ0bmBHDOJx+PYZspQ9AhnwC9FwCTyjLrnGfDzrIM/4RJTXq/LrF +YD3ZfBjVsqnTdXgDciLKOsMf7yzlLqn6niy2UUb9rwPW6mBo6oUWNmuF6R7As93E +JNyAKoFBbZQ+yODJgUEAnl6/f8UImKIYLEJAs/lvOCdLToD0PYFH4Ih86hzOtXVc +US4cK38acijnALXRdMbX5J+tB5O2UzU1/Dfkw/ZdFr4hc96SCvigY2q8lpJqPvi8 +ZVWb3vUNiSYE/CUapiVpy8JtynziWV+XrOvvLsi81xtZPCvM8hnIk2snYxnP/Okm ++Mpxm3+T/jRnhE6Z6/yzeAkzcLpmpnbtG3PrGqUNxCITIJRWCk4sbE6x/c+cCbqi +M+2HAgMBAAGjYzBhMB0GA1UdDgQWBBTdBAkHovV6fVJTEpKV7jiAJQ2mWTAPBgNV +HRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFN0ECQei9Xp9UlMSkpXuOIAlDaZZMA4G +A1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAIBgRlCn7Jp0cHh5wYfGV +cpNxJK1ok1iOMq8bs3AD/CUrdIWQPXhq9LmLpZc7tRiRux6n+UBbkflVma8eEdBc +Hadm47GUBwwyOabqG7B52B2ccETjit3E+ZUfijhDPwGFpUenPUayvOUiaPd7nNgs +PgohyC0zrL/FgZkxdMF1ccW+sfAjRfSda/wZY52jvATGGAslu1OJD7OAUN5F7kR/ +q5R4ZJjT9ijdh9hwZXT7DrkT66cPYakylszeu+1jTBi7qUD3oFRuIIhxdRjqerQ0 +cuAjJ3dctpDqhiVAq+8zD8ufgr6iIPv2tS0a5sKFsXQP+8hlAqRSAUfdSSLBv9jr +a6x+3uxjMxW3IwiPxg+NQVrdjsW5j+VFP3jbutIbQLH+cU0/4IGiul607BXgk90I +H37hVZkLId6Tngr75qNJvTYw/ud3sqB1l7UtgYgXZSD32pAAn8lSzDLKNXz1PQ/Y +K9f1JmzJBjSWFupwWRoyeXkLtoh/D1JIPb9s2KJELtFOt3JY04kTlf5Eq/jXixtu +nLwsoFvVagCvXzfh1foQC5ichucmj87w7G6KVwuA406ywKBjYZC6VWg3dGq2ktuf +oYYitmUnDuy2n0Jg5GfCtdpBC8TTi2EbvPofkSvXRAdeuims2cXp71NIWuuA8ShY +Ic2wBlX7Jz9TkHCpBB5XJ7k= +-----END CERTIFICATE----- + +# Issuer: CN=SSL.com Root Certification Authority ECC O=SSL Corporation +# Subject: CN=SSL.com Root Certification Authority ECC O=SSL Corporation +# Label: "SSL.com Root Certification Authority ECC" +# Serial: 8495723813297216424 +# MD5 Fingerprint: 2e:da:e4:39:7f:9c:8f:37:d1:70:9f:26:17:51:3a:8e +# SHA1 Fingerprint: c3:19:7c:39:24:e6:54:af:1b:c4:ab:20:95:7a:e2:c3:0e:13:02:6a +# SHA256 Fingerprint: 34:17:bb:06:cc:60:07:da:1b:96:1c:92:0b:8a:b4:ce:3f:ad:82:0e:4a:a3:0b:9a:cb:c4:a7:4e:bd:ce:bc:65 +-----BEGIN CERTIFICATE----- +MIICjTCCAhSgAwIBAgIIdebfy8FoW6gwCgYIKoZIzj0EAwIwfDELMAkGA1UEBhMC +VVMxDjAMBgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQKDA9T +U0wgQ29ycG9yYXRpb24xMTAvBgNVBAMMKFNTTC5jb20gUm9vdCBDZXJ0aWZpY2F0 +aW9uIEF1dGhvcml0eSBFQ0MwHhcNMTYwMjEyMTgxNDAzWhcNNDEwMjEyMTgxNDAz +WjB8MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hvdXN0 +b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjExMC8GA1UEAwwoU1NMLmNvbSBS +b290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IEVDQzB2MBAGByqGSM49AgEGBSuB +BAAiA2IABEVuqVDEpiM2nl8ojRfLliJkP9x6jh3MCLOicSS6jkm5BBtHllirLZXI +7Z4INcgn64mMU1jrYor+8FsPazFSY0E7ic3s7LaNGdM0B9y7xgZ/wkWV7Mt/qCPg +CemB+vNH06NjMGEwHQYDVR0OBBYEFILRhXMw5zUE044CkvvlpNHEIejNMA8GA1Ud +EwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUgtGFczDnNQTTjgKS++Wk0cQh6M0wDgYD +VR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA2cAMGQCMG/n61kRpGDPYbCWe+0F+S8T +kdzt5fxQaxFGRrMcIQBiu77D5+jNB5n5DQtdcj7EqgIwH7y6C+IwJPt8bYBVCpk+ +gA0z5Wajs6O7pdWLjwkspl1+4vAHCGht0nxpbl/f5Wpl +-----END CERTIFICATE----- + +# Issuer: CN=SSL.com EV Root Certification Authority RSA R2 O=SSL Corporation +# Subject: CN=SSL.com EV Root Certification Authority RSA R2 O=SSL Corporation +# Label: "SSL.com EV Root Certification Authority RSA R2" +# Serial: 6248227494352943350 +# MD5 Fingerprint: e1:1e:31:58:1a:ae:54:53:02:f6:17:6a:11:7b:4d:95 +# SHA1 Fingerprint: 74:3a:f0:52:9b:d0:32:a0:f4:4a:83:cd:d4:ba:a9:7b:7c:2e:c4:9a +# SHA256 Fingerprint: 2e:7b:f1:6c:c2:24:85:a7:bb:e2:aa:86:96:75:07:61:b0:ae:39:be:3b:2f:e9:d0:cc:6d:4e:f7:34:91:42:5c +-----BEGIN CERTIFICATE----- +MIIF6zCCA9OgAwIBAgIIVrYpzTS8ePYwDQYJKoZIhvcNAQELBQAwgYIxCzAJBgNV +BAYTAlVTMQ4wDAYDVQQIDAVUZXhhczEQMA4GA1UEBwwHSG91c3RvbjEYMBYGA1UE +CgwPU1NMIENvcnBvcmF0aW9uMTcwNQYDVQQDDC5TU0wuY29tIEVWIFJvb3QgQ2Vy +dGlmaWNhdGlvbiBBdXRob3JpdHkgUlNBIFIyMB4XDTE3MDUzMTE4MTQzN1oXDTQy +MDUzMDE4MTQzN1owgYIxCzAJBgNVBAYTAlVTMQ4wDAYDVQQIDAVUZXhhczEQMA4G +A1UEBwwHSG91c3RvbjEYMBYGA1UECgwPU1NMIENvcnBvcmF0aW9uMTcwNQYDVQQD +DC5TU0wuY29tIEVWIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgUlNBIFIy +MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAjzZlQOHWTcDXtOlG2mvq +M0fNTPl9fb69LT3w23jhhqXZuglXaO1XPqDQCEGD5yhBJB/jchXQARr7XnAjssuf +OePPxU7Gkm0mxnu7s9onnQqG6YE3Bf7wcXHswxzpY6IXFJ3vG2fThVUCAtZJycxa +4bH3bzKfydQ7iEGonL3Lq9ttewkfokxykNorCPzPPFTOZw+oz12WGQvE43LrrdF9 +HSfvkusQv1vrO6/PgN3B0pYEW3p+pKk8OHakYo6gOV7qd89dAFmPZiw+B6KjBSYR +aZfqhbcPlgtLyEDhULouisv3D5oi53+aNxPN8k0TayHRwMwi8qFG9kRpnMphNQcA +b9ZhCBHqurj26bNg5U257J8UZslXWNvNh2n4ioYSA0e/ZhN2rHd9NCSFg83XqpyQ +Gp8hLH94t2S42Oim9HizVcuE0jLEeK6jj2HdzghTreyI/BXkmg3mnxp3zkyPuBQV +PWKchjgGAGYS5Fl2WlPAApiiECtoRHuOec4zSnaqW4EWG7WK2NAAe15itAnWhmMO +pgWVSbooi4iTsjQc2KRVbrcc0N6ZVTsj9CLg+SlmJuwgUHfbSguPvuUCYHBBXtSu +UDkiFCbLsjtzdFVHB3mBOagwE0TlBIqulhMlQg+5U8Sb/M3kHN48+qvWBkofZ6aY +MBzdLNvcGJVXZsb/XItW9XcCAwEAAaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAfBgNV +HSMEGDAWgBT5YLvU49U09rj1BoAlp3PbRmmonjAdBgNVHQ4EFgQU+WC71OPVNPa4 +9QaAJadz20ZpqJ4wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4ICAQBW +s47LCp1Jjr+kxJG7ZhcFUZh1++VQLHqe8RT6q9OKPv+RKY9ji9i0qVQBDb6Thi/5 +Sm3HXvVX+cpVHBK+Rw82xd9qt9t1wkclf7nxY/hoLVUE0fKNsKTPvDxeH3jnpaAg +cLAExbf3cqfeIg29MyVGjGSSJuM+LmOW2puMPfgYCdcDzH2GguDKBAdRUNf/ktUM +79qGn5nX67evaOI5JpS6aLe/g9Pqemc9YmeuJeVy6OLk7K4S9ksrPJ/psEDzOFSz +/bdoyNrGj1E8svuR3Bznm53htw1yj+KkxKl4+esUrMZDBcJlOSgYAsOCsp0FvmXt +ll9ldDz7CTUue5wT/RsPXcdtgTpWD8w74a8CLyKsRspGPKAcTNZEtF4uXBVmCeEm +Kf7GUmG6sXP/wwyc5WxqlD8UykAWlYTzWamsX0xhk23RO8yilQwipmdnRC652dKK +QbNmC1r7fSOl8hqw/96bg5Qu0T/fkreRrwU7ZcegbLHNYhLDkBvjJc40vG93drEQ +w/cFGsDWr3RiSBd3kmmQYRzelYB0VI8YHMPzA9C/pEN1hlMYegouCRw2n5H9gooi +S9EOUCXdywMMF8mDAAhONU2Ki+3wApRmLER/y5UnlhetCTCstnEXbosX9hwJ1C07 +mKVx01QT2WDz9UtmT/rx7iASjbSsV7FFY6GsdqnC+w== +-----END CERTIFICATE----- + +# Issuer: CN=SSL.com EV Root Certification Authority ECC O=SSL Corporation +# Subject: CN=SSL.com EV Root Certification Authority ECC O=SSL Corporation +# Label: "SSL.com EV Root Certification Authority ECC" +# Serial: 3182246526754555285 +# MD5 Fingerprint: 59:53:22:65:83:42:01:54:c0:ce:42:b9:5a:7c:f2:90 +# SHA1 Fingerprint: 4c:dd:51:a3:d1:f5:20:32:14:b0:c6:c5:32:23:03:91:c7:46:42:6d +# SHA256 Fingerprint: 22:a2:c1:f7:bd:ed:70:4c:c1:e7:01:b5:f4:08:c3:10:88:0f:e9:56:b5:de:2a:4a:44:f9:9c:87:3a:25:a7:c8 +-----BEGIN CERTIFICATE----- +MIIClDCCAhqgAwIBAgIILCmcWxbtBZUwCgYIKoZIzj0EAwIwfzELMAkGA1UEBhMC +VVMxDjAMBgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQKDA9T +U0wgQ29ycG9yYXRpb24xNDAyBgNVBAMMK1NTTC5jb20gRVYgUm9vdCBDZXJ0aWZp +Y2F0aW9uIEF1dGhvcml0eSBFQ0MwHhcNMTYwMjEyMTgxNTIzWhcNNDEwMjEyMTgx +NTIzWjB/MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hv +dXN0b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjE0MDIGA1UEAwwrU1NMLmNv +bSBFViBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IEVDQzB2MBAGByqGSM49 +AgEGBSuBBAAiA2IABKoSR5CYG/vvw0AHgyBO8TCCogbR8pKGYfL2IWjKAMTH6kMA +VIbc/R/fALhBYlzccBYy3h+Z1MzFB8gIH2EWB1E9fVwHU+M1OIzfzZ/ZLg1Kthku +WnBaBu2+8KGwytAJKaNjMGEwHQYDVR0OBBYEFFvKXuXe0oGqzagtZFG22XKbl+ZP +MA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUW8pe5d7SgarNqC1kUbbZcpuX +5k8wDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA2gAMGUCMQCK5kCJN+vp1RPZ +ytRrJPOwPYdGWBrssd9v+1a6cGvHOMzosYxPD/fxZ3YOg9AeUY8CMD32IygmTMZg +h5Mmm7I1HrrW9zzRHM76JTymGoEVW/MSD2zuZYrJh6j5B+BimoxcSg== +-----END CERTIFICATE----- + +# Issuer: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R6 +# Subject: CN=GlobalSign O=GlobalSign OU=GlobalSign Root CA - R6 +# Label: "GlobalSign Root CA - R6" +# Serial: 1417766617973444989252670301619537 +# MD5 Fingerprint: 4f:dd:07:e4:d4:22:64:39:1e:0c:37:42:ea:d1:c6:ae +# SHA1 Fingerprint: 80:94:64:0e:b5:a7:a1:ca:11:9c:1f:dd:d5:9f:81:02:63:a7:fb:d1 +# SHA256 Fingerprint: 2c:ab:ea:fe:37:d0:6c:a2:2a:ba:73:91:c0:03:3d:25:98:29:52:c4:53:64:73:49:76:3a:3a:b5:ad:6c:cf:69 +-----BEGIN CERTIFICATE----- +MIIFgzCCA2ugAwIBAgIORea7A4Mzw4VlSOb/RVEwDQYJKoZIhvcNAQEMBQAwTDEg +MB4GA1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjYxEzARBgNVBAoTCkdsb2Jh +bFNpZ24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMTQxMjEwMDAwMDAwWhcNMzQx +MjEwMDAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSNjET +MBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCAiIwDQYJ +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAJUH6HPKZvnsFMp7PPcNCPG0RQssgrRI +xutbPK6DuEGSMxSkb3/pKszGsIhrxbaJ0cay/xTOURQh7ErdG1rG1ofuTToVBu1k +ZguSgMpE3nOUTvOniX9PeGMIyBJQbUJmL025eShNUhqKGoC3GYEOfsSKvGRMIRxD +aNc9PIrFsmbVkJq3MQbFvuJtMgamHvm566qjuL++gmNQ0PAYid/kD3n16qIfKtJw +LnvnvJO7bVPiSHyMEAc4/2ayd2F+4OqMPKq0pPbzlUoSB239jLKJz9CgYXfIWHSw +1CM69106yqLbnQneXUQtkPGBzVeS+n68UARjNN9rkxi+azayOeSsJDa38O+2HBNX +k7besvjihbdzorg1qkXy4J02oW9UivFyVm4uiMVRQkQVlO6jxTiWm05OWgtH8wY2 +SXcwvHE35absIQh1/OZhFj931dmRl4QKbNQCTXTAFO39OfuD8l4UoQSwC+n+7o/h +bguyCLNhZglqsQY6ZZZZwPA1/cnaKI0aEYdwgQqomnUdnjqGBQCe24DWJfncBZ4n +WUx2OVvq+aWh2IMP0f/fMBH5hc8zSPXKbWQULHpYT9NLCEnFlWQaYw55PfWzjMpY +rZxCRXluDocZXFSxZba/jJvcE+kNb7gu3GduyYsRtYQUigAZcIN5kZeR1Bonvzce +MgfYFGM8KEyvAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTAD +AQH/MB0GA1UdDgQWBBSubAWjkxPioufi1xzWx/B/yGdToDAfBgNVHSMEGDAWgBSu +bAWjkxPioufi1xzWx/B/yGdToDANBgkqhkiG9w0BAQwFAAOCAgEAgyXt6NH9lVLN +nsAEoJFp5lzQhN7craJP6Ed41mWYqVuoPId8AorRbrcWc+ZfwFSY1XS+wc3iEZGt +Ixg93eFyRJa0lV7Ae46ZeBZDE1ZXs6KzO7V33EByrKPrmzU+sQghoefEQzd5Mr61 +55wsTLxDKZmOMNOsIeDjHfrYBzN2VAAiKrlNIC5waNrlU/yDXNOd8v9EDERm8tLj +vUYAGm0CuiVdjaExUd1URhxN25mW7xocBFymFe944Hn+Xds+qkxV/ZoVqW/hpvvf +cDDpw+5CRu3CkwWJ+n1jez/QcYF8AOiYrg54NMMl+68KnyBr3TsTjxKM4kEaSHpz +oHdpx7Zcf4LIHv5YGygrqGytXm3ABdJ7t+uA/iU3/gKbaKxCXcPu9czc8FB10jZp +nOZ7BN9uBmm23goJSFmH63sUYHpkqmlD75HHTOwY3WzvUy2MmeFe8nI+z1TIvWfs +pA9MRf/TuTAjB0yPEL+GltmZWrSZVxykzLsViVO6LAUP5MSeGbEYNNVMnbrt9x+v +JJUEeKgDu+6B5dpffItKoZB0JaezPkvILFa9x8jvOOJckvB595yEunQtYQEgfn7R +8k8HWV+LLUNS60YMlOH1Zkd5d9VUWx+tJDfLRVpOoERIyNiwmcUVhAn21klJwGW4 +5hpxbqCo8YLoRT5s1gLXCmeDBVrJpBA= +-----END CERTIFICATE----- + +# Issuer: CN=OISTE WISeKey Global Root GC CA O=WISeKey OU=OISTE Foundation Endorsed +# Subject: CN=OISTE WISeKey Global Root GC CA O=WISeKey OU=OISTE Foundation Endorsed +# Label: "OISTE WISeKey Global Root GC CA" +# Serial: 44084345621038548146064804565436152554 +# MD5 Fingerprint: a9:d6:b9:2d:2f:93:64:f8:a5:69:ca:91:e9:68:07:23 +# SHA1 Fingerprint: e0:11:84:5e:34:de:be:88:81:b9:9c:f6:16:26:d1:96:1f:c3:b9:31 +# SHA256 Fingerprint: 85:60:f9:1c:36:24:da:ba:95:70:b5:fe:a0:db:e3:6f:f1:1a:83:23:be:94:86:85:4f:b3:f3:4a:55:71:19:8d +-----BEGIN CERTIFICATE----- +MIICaTCCAe+gAwIBAgIQISpWDK7aDKtARb8roi066jAKBggqhkjOPQQDAzBtMQsw +CQYDVQQGEwJDSDEQMA4GA1UEChMHV0lTZUtleTEiMCAGA1UECxMZT0lTVEUgRm91 +bmRhdGlvbiBFbmRvcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9iYWwg +Um9vdCBHQyBDQTAeFw0xNzA1MDkwOTQ4MzRaFw00MjA1MDkwOTU4MzNaMG0xCzAJ +BgNVBAYTAkNIMRAwDgYDVQQKEwdXSVNlS2V5MSIwIAYDVQQLExlPSVNURSBGb3Vu +ZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5IEdsb2JhbCBS +b290IEdDIENBMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETOlQwMYPchi82PG6s4ni +eUqjFqdrVCTbUf/q9Akkwwsin8tqJ4KBDdLArzHkdIJuyiXZjHWd8dvQmqJLIX4W +p2OQ0jnUsYd4XxiWD1AbNTcPasbc2RNNpI6QN+a9WzGRo1QwUjAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUSIcUrOPDnpBgOtfKie7T +rYy0UGYwEAYJKwYBBAGCNxUBBAMCAQAwCgYIKoZIzj0EAwMDaAAwZQIwJsdpW9zV +57LnyAyMjMPdeYwbY9XJUpROTYJKcx6ygISpJcBMWm1JKWB4E+J+SOtkAjEA2zQg +Mgj/mkkCtojeFK9dbJlxjRo/i9fgojaGHAeCOnZT/cKi7e97sIBPWA9LUzm9 +-----END CERTIFICATE----- + +# Issuer: CN=UCA Global G2 Root O=UniTrust +# Subject: CN=UCA Global G2 Root O=UniTrust +# Label: "UCA Global G2 Root" +# Serial: 124779693093741543919145257850076631279 +# MD5 Fingerprint: 80:fe:f0:c4:4a:f0:5c:62:32:9f:1c:ba:78:a9:50:f8 +# SHA1 Fingerprint: 28:f9:78:16:19:7a:ff:18:25:18:aa:44:fe:c1:a0:ce:5c:b6:4c:8a +# SHA256 Fingerprint: 9b:ea:11:c9:76:fe:01:47:64:c1:be:56:a6:f9:14:b5:a5:60:31:7a:bd:99:88:39:33:82:e5:16:1a:a0:49:3c +-----BEGIN CERTIFICATE----- +MIIFRjCCAy6gAwIBAgIQXd+x2lqj7V2+WmUgZQOQ7zANBgkqhkiG9w0BAQsFADA9 +MQswCQYDVQQGEwJDTjERMA8GA1UECgwIVW5pVHJ1c3QxGzAZBgNVBAMMElVDQSBH +bG9iYWwgRzIgUm9vdDAeFw0xNjAzMTEwMDAwMDBaFw00MDEyMzEwMDAwMDBaMD0x +CzAJBgNVBAYTAkNOMREwDwYDVQQKDAhVbmlUcnVzdDEbMBkGA1UEAwwSVUNBIEds +b2JhbCBHMiBSb290MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxeYr +b3zvJgUno4Ek2m/LAfmZmqkywiKHYUGRO8vDaBsGxUypK8FnFyIdK+35KYmToni9 +kmugow2ifsqTs6bRjDXVdfkX9s9FxeV67HeToI8jrg4aA3++1NDtLnurRiNb/yzm +VHqUwCoV8MmNsHo7JOHXaOIxPAYzRrZUEaalLyJUKlgNAQLx+hVRZ2zA+te2G3/R +VogvGjqNO7uCEeBHANBSh6v7hn4PJGtAnTRnvI3HLYZveT6OqTwXS3+wmeOwcWDc +C/Vkw85DvG1xudLeJ1uK6NjGruFZfc8oLTW4lVYa8bJYS7cSN8h8s+1LgOGN+jIj +tm+3SJUIsUROhYw6AlQgL9+/V087OpAh18EmNVQg7Mc/R+zvWr9LesGtOxdQXGLY +D0tK3Cv6brxzks3sx1DoQZbXqX5t2Okdj4q1uViSukqSKwxW/YDrCPBeKW4bHAyv +j5OJrdu9o54hyokZ7N+1wxrrFv54NkzWbtA+FxyQF2smuvt6L78RHBgOLXMDj6Dl +NaBa4kx1HXHhOThTeEDMg5PXCp6dW4+K5OXgSORIskfNTip1KnvyIvbJvgmRlld6 +iIis7nCs+dwp4wwcOxJORNanTrAmyPPZGpeRaOrvjUYG0lZFWJo8DA+DuAUlwznP +O6Q0ibd5Ei9Hxeepl2n8pndntd978XplFeRhVmUCAwEAAaNCMEAwDgYDVR0PAQH/ +BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFIHEjMz15DD/pQwIX4wV +ZyF0Ad/fMA0GCSqGSIb3DQEBCwUAA4ICAQATZSL1jiutROTL/7lo5sOASD0Ee/oj +L3rtNtqyzm325p7lX1iPyzcyochltq44PTUbPrw7tgTQvPlJ9Zv3hcU2tsu8+Mg5 +1eRfB70VVJd0ysrtT7q6ZHafgbiERUlMjW+i67HM0cOU2kTC5uLqGOiiHycFutfl +1qnN3e92mI0ADs0b+gO3joBYDic/UvuUospeZcnWhNq5NXHzJsBPd+aBJ9J3O5oU +b3n09tDh05S60FdRvScFDcH9yBIw7m+NESsIndTUv4BFFJqIRNow6rSn4+7vW4LV +PtateJLbXDzz2K36uGt/xDYotgIVilQsnLAXc47QN6MUPJiVAAwpBVueSUmxX8fj +y88nZY41F7dXyDDZQVu5FLbowg+UMaeUmMxq67XhJ/UQqAHojhJi6IjMtX9Gl8Cb +EGY4GjZGXyJoPd/JxhMnq1MGrKI8hgZlb7F+sSlEmqO6SWkoaY/X5V+tBIZkbxqg +DMUIYs6Ao9Dz7GjevjPHF1t/gMRMTLGmhIrDO7gJzRSBuhjjVFc2/tsvfEehOjPI ++Vg7RE+xygKJBJYoaMVLuCaJu9YzL1DV/pqJuhgyklTGW+Cd+V7lDSKb9triyCGy +YiGqhkCyLmTTX8jjfhFnRR8F/uOi77Oos/N9j/gMHyIfLXC0uAE0djAA5SN4p1bX +UB+K+wb1whnw0A== +-----END CERTIFICATE----- + +# Issuer: CN=UCA Extended Validation Root O=UniTrust +# Subject: CN=UCA Extended Validation Root O=UniTrust +# Label: "UCA Extended Validation Root" +# Serial: 106100277556486529736699587978573607008 +# MD5 Fingerprint: a1:f3:5f:43:c6:34:9b:da:bf:8c:7e:05:53:ad:96:e2 +# SHA1 Fingerprint: a3:a1:b0:6f:24:61:23:4a:e3:36:a5:c2:37:fc:a6:ff:dd:f0:d7:3a +# SHA256 Fingerprint: d4:3a:f9:b3:54:73:75:5c:96:84:fc:06:d7:d8:cb:70:ee:5c:28:e7:73:fb:29:4e:b4:1e:e7:17:22:92:4d:24 +-----BEGIN CERTIFICATE----- +MIIFWjCCA0KgAwIBAgIQT9Irj/VkyDOeTzRYZiNwYDANBgkqhkiG9w0BAQsFADBH +MQswCQYDVQQGEwJDTjERMA8GA1UECgwIVW5pVHJ1c3QxJTAjBgNVBAMMHFVDQSBF +eHRlbmRlZCBWYWxpZGF0aW9uIFJvb3QwHhcNMTUwMzEzMDAwMDAwWhcNMzgxMjMx +MDAwMDAwWjBHMQswCQYDVQQGEwJDTjERMA8GA1UECgwIVW5pVHJ1c3QxJTAjBgNV +BAMMHFVDQSBFeHRlbmRlZCBWYWxpZGF0aW9uIFJvb3QwggIiMA0GCSqGSIb3DQEB +AQUAA4ICDwAwggIKAoICAQCpCQcoEwKwmeBkqh5DFnpzsZGgdT6o+uM4AHrsiWog +D4vFsJszA1qGxliG1cGFu0/GnEBNyr7uaZa4rYEwmnySBesFK5pI0Lh2PpbIILvS +sPGP2KxFRv+qZ2C0d35qHzwaUnoEPQc8hQ2E0B92CvdqFN9y4zR8V05WAT558aop +O2z6+I9tTcg1367r3CTueUWnhbYFiN6IXSV8l2RnCdm/WhUFhvMJHuxYMjMR83dk +sHYf5BA1FxvyDrFspCqjc/wJHx4yGVMR59mzLC52LqGj3n5qiAno8geK+LLNEOfi +c0CTuwjRP+H8C5SzJe98ptfRr5//lpr1kXuYC3fUfugH0mK1lTnj8/FtDw5lhIpj +VMWAtuCeS31HJqcBCF3RiJ7XwzJE+oJKCmhUfzhTA8ykADNkUVkLo4KRel7sFsLz +KuZi2irbWWIQJUoqgQtHB0MGcIfS+pMRKXpITeuUx3BNr2fVUbGAIAEBtHoIppB/ +TuDvB0GHr2qlXov7z1CymlSvw4m6WC31MJixNnI5fkkE/SmnTHnkBVfblLkWU41G +sx2VYVdWf6/wFlthWG82UBEL2KwrlRYaDh8IzTY0ZRBiZtWAXxQgXy0MoHgKaNYs +1+lvK9JKBZP8nm9rZ/+I8U6laUpSNwXqxhaN0sSZ0YIrO7o1dfdRUVjzyAfd5LQD +fwIDAQABo0IwQDAdBgNVHQ4EFgQU2XQ65DA9DfcS3H5aBZ8eNJr34RQwDwYDVR0T +AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwDQYJKoZIhvcNAQELBQADggIBADaN +l8xCFWQpN5smLNb7rhVpLGsaGvdftvkHTFnq88nIua7Mui563MD1sC3AO6+fcAUR +ap8lTwEpcOPlDOHqWnzcSbvBHiqB9RZLcpHIojG5qtr8nR/zXUACE/xOHAbKsxSQ +VBcZEhrxH9cMaVr2cXj0lH2RC47skFSOvG+hTKv8dGT9cZr4QQehzZHkPJrgmzI5 +c6sq1WnIeJEmMX3ixzDx/BR4dxIOE/TdFpS/S2d7cFOFyrC78zhNLJA5wA3CXWvp +4uXViI3WLL+rG761KIcSF3Ru/H38j9CHJrAb+7lsq+KePRXBOy5nAliRn+/4Qh8s +t2j1da3Ptfb/EX3C8CSlrdP6oDyp+l3cpaDvRKS+1ujl5BOWF3sGPjLtx7dCvHaj +2GU4Kzg1USEODm8uNBNA4StnDG1KQTAYI1oyVZnJF+A83vbsea0rWBmirSwiGpWO +vpaQXUJXxPkUAzUrHC1RVwinOt4/5Mi0A3PCwSaAuwtCH60NryZy2sy+s6ODWA2C +xR9GUeOcGMyNm43sSet1UNWMKFnKdDTajAshqx7qG+XH/RU+wBeq+yNuJkbL+vmx +cmtpzyKEC2IPrNkZAJSidjzULZrtBJ4tBmIQN1IchXIbJ+XMxjHsN+xjWZsLHXbM +fjKaiJUINlK73nZfdklJrX+9ZSCyycErdhh2n1ax +-----END CERTIFICATE----- + +# Issuer: CN=Certigna Root CA O=Dhimyotis OU=0002 48146308100036 +# Subject: CN=Certigna Root CA O=Dhimyotis OU=0002 48146308100036 +# Label: "Certigna Root CA" +# Serial: 269714418870597844693661054334862075617 +# MD5 Fingerprint: 0e:5c:30:62:27:eb:5b:bc:d7:ae:62:ba:e9:d5:df:77 +# SHA1 Fingerprint: 2d:0d:52:14:ff:9e:ad:99:24:01:74:20:47:6e:6c:85:27:27:f5:43 +# SHA256 Fingerprint: d4:8d:3d:23:ee:db:50:a4:59:e5:51:97:60:1c:27:77:4b:9d:7b:18:c9:4d:5a:05:95:11:a1:02:50:b9:31:68 +-----BEGIN CERTIFICATE----- +MIIGWzCCBEOgAwIBAgIRAMrpG4nxVQMNo+ZBbcTjpuEwDQYJKoZIhvcNAQELBQAw +WjELMAkGA1UEBhMCRlIxEjAQBgNVBAoMCURoaW15b3RpczEcMBoGA1UECwwTMDAw +MiA0ODE0NjMwODEwMDAzNjEZMBcGA1UEAwwQQ2VydGlnbmEgUm9vdCBDQTAeFw0x +MzEwMDEwODMyMjdaFw0zMzEwMDEwODMyMjdaMFoxCzAJBgNVBAYTAkZSMRIwEAYD +VQQKDAlEaGlteW90aXMxHDAaBgNVBAsMEzAwMDIgNDgxNDYzMDgxMDAwMzYxGTAX +BgNVBAMMEENlcnRpZ25hIFJvb3QgQ0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw +ggIKAoICAQDNGDllGlmx6mQWDoyUJJV8g9PFOSbcDO8WV43X2KyjQn+Cyu3NW9sO +ty3tRQgXstmzy9YXUnIo245Onoq2C/mehJpNdt4iKVzSs9IGPjA5qXSjklYcoW9M +CiBtnyN6tMbaLOQdLNyzKNAT8kxOAkmhVECe5uUFoC2EyP+YbNDrihqECB63aCPu +I9Vwzm1RaRDuoXrC0SIxwoKF0vJVdlB8JXrJhFwLrN1CTivngqIkicuQstDuI7pm +TLtipPlTWmR7fJj6o0ieD5Wupxj0auwuA0Wv8HT4Ks16XdG+RCYyKfHx9WzMfgIh +C59vpD++nVPiz32pLHxYGpfhPTc3GGYo0kDFUYqMwy3OU4gkWGQwFsWq4NYKpkDf +ePb1BHxpE4S80dGnBs8B92jAqFe7OmGtBIyT46388NtEbVncSVmurJqZNjBBe3Yz +IoejwpKGbvlw7q6Hh5UbxHq9MfPU0uWZ/75I7HX1eBYdpnDBfzwboZL7z8g81sWT +Co/1VTp2lc5ZmIoJlXcymoO6LAQ6l73UL77XbJuiyn1tJslV1c/DeVIICZkHJC1k +JWumIWmbat10TWuXekG9qxf5kBdIjzb5LdXF2+6qhUVB+s06RbFo5jZMm5BX7CO5 +hwjCxAnxl4YqKE3idMDaxIzb3+KhF1nOJFl0Mdp//TBt2dzhauH8XwIDAQABo4IB +GjCCARYwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE +FBiHVuBud+4kNTxOc5of1uHieX4rMB8GA1UdIwQYMBaAFBiHVuBud+4kNTxOc5of +1uHieX4rMEQGA1UdIAQ9MDswOQYEVR0gADAxMC8GCCsGAQUFBwIBFiNodHRwczov +L3d3d3cuY2VydGlnbmEuZnIvYXV0b3JpdGVzLzBtBgNVHR8EZjBkMC+gLaArhilo +dHRwOi8vY3JsLmNlcnRpZ25hLmZyL2NlcnRpZ25hcm9vdGNhLmNybDAxoC+gLYYr +aHR0cDovL2NybC5kaGlteW90aXMuY29tL2NlcnRpZ25hcm9vdGNhLmNybDANBgkq +hkiG9w0BAQsFAAOCAgEAlLieT/DjlQgi581oQfccVdV8AOItOoldaDgvUSILSo3L +6btdPrtcPbEo/uRTVRPPoZAbAh1fZkYJMyjhDSSXcNMQH+pkV5a7XdrnxIxPTGRG +HVyH41neQtGbqH6mid2PHMkwgu07nM3A6RngatgCdTer9zQoKJHyBApPNeNgJgH6 +0BGM+RFq7q89w1DTj18zeTyGqHNFkIwgtnJzFyO+B2XleJINugHA64wcZr+shncB +lA2c5uk5jR+mUYyZDDl34bSb+hxnV29qao6pK0xXeXpXIs/NX2NGjVxZOob4Mkdi +o2cNGJHc+6Zr9UhhcyNZjgKnvETq9Emd8VRY+WCv2hikLyhF3HqgiIZd8zvn/yk1 +gPxkQ5Tm4xxvvq0OKmOZK8l+hfZx6AYDlf7ej0gcWtSS6Cvu5zHbugRqh5jnxV/v +faci9wHYTfmJ0A6aBVmknpjZbyvKcL5kwlWj9Omvw5Ip3IgWJJk8jSaYtlu3zM63 +Nwf9JtmYhST/WSMDmu2dnajkXjjO11INb9I/bbEFa0nOipFGc/T2L/Coc3cOZayh +jWZSaX5LaAzHHjcng6WMxwLkFM1JAbBzs/3GkDpv0mztO+7skb6iQ12LAEpmJURw +3kAP+HwV96LOPNdeE4yBFxgX0b3xdxA61GU5wSesVywlVP+i2k+KYTlerj1KjL0= +-----END CERTIFICATE----- + +# Issuer: CN=emSign Root CA - G1 O=eMudhra Technologies Limited OU=emSign PKI +# Subject: CN=emSign Root CA - G1 O=eMudhra Technologies Limited OU=emSign PKI +# Label: "emSign Root CA - G1" +# Serial: 235931866688319308814040 +# MD5 Fingerprint: 9c:42:84:57:dd:cb:0b:a7:2e:95:ad:b6:f3:da:bc:ac +# SHA1 Fingerprint: 8a:c7:ad:8f:73:ac:4e:c1:b5:75:4d:a5:40:f4:fc:cf:7c:b5:8e:8c +# SHA256 Fingerprint: 40:f6:af:03:46:a9:9a:a1:cd:1d:55:5a:4e:9c:ce:62:c7:f9:63:46:03:ee:40:66:15:83:3d:c8:c8:d0:03:67 +-----BEGIN CERTIFICATE----- +MIIDlDCCAnygAwIBAgIKMfXkYgxsWO3W2DANBgkqhkiG9w0BAQsFADBnMQswCQYD +VQQGEwJJTjETMBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBU +ZWNobm9sb2dpZXMgTGltaXRlZDEcMBoGA1UEAxMTZW1TaWduIFJvb3QgQ0EgLSBH +MTAeFw0xODAyMTgxODMwMDBaFw00MzAyMTgxODMwMDBaMGcxCzAJBgNVBAYTAklO +MRMwEQYDVQQLEwplbVNpZ24gUEtJMSUwIwYDVQQKExxlTXVkaHJhIFRlY2hub2xv +Z2llcyBMaW1pdGVkMRwwGgYDVQQDExNlbVNpZ24gUm9vdCBDQSAtIEcxMIIBIjAN +BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAk0u76WaK7p1b1TST0Bsew+eeuGQz +f2N4aLTNLnF115sgxk0pvLZoYIr3IZpWNVrzdr3YzZr/k1ZLpVkGoZM0Kd0WNHVO +8oG0x5ZOrRkVUkr+PHB1cM2vK6sVmjM8qrOLqs1D/fXqcP/tzxE7lM5OMhbTI0Aq +d7OvPAEsbO2ZLIvZTmmYsvePQbAyeGHWDV/D+qJAkh1cF+ZwPjXnorfCYuKrpDhM +tTk1b+oDafo6VGiFbdbyL0NVHpENDtjVaqSW0RM8LHhQ6DqS0hdW5TUaQBw+jSzt +Od9C4INBdN+jzcKGYEho42kLVACL5HZpIQ15TjQIXhTCzLG3rdd8cIrHhQIDAQAB +o0IwQDAdBgNVHQ4EFgQU++8Nhp6w492pufEhF38+/PB3KxowDgYDVR0PAQH/BAQD +AgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAFn/8oz1h31x +PaOfG1vR2vjTnGs2vZupYeveFix0PZ7mddrXuqe8QhfnPZHr5X3dPpzxz5KsbEjM +wiI/aTvFthUvozXGaCocV685743QNcMYDHsAVhzNixl03r4PEuDQqqE/AjSxcM6d +GNYIAwlG7mDgfrbESQRRfXBgvKqy/3lyeqYdPV8q+Mri/Tm3R7nrft8EI6/6nAYH +6ftjk4BAtcZsCjEozgyfz7MjNYBBjWzEN3uBL4ChQEKF6dk4jeihU80Bv2noWgby +RQuQ+q7hv53yrlc8pa6yVvSLZUDp/TGBLPQ5Cdjua6e0ph0VpZj3AYHYhX3zUVxx +iN66zB+Afko= +-----END CERTIFICATE----- + +# Issuer: CN=emSign ECC Root CA - G3 O=eMudhra Technologies Limited OU=emSign PKI +# Subject: CN=emSign ECC Root CA - G3 O=eMudhra Technologies Limited OU=emSign PKI +# Label: "emSign ECC Root CA - G3" +# Serial: 287880440101571086945156 +# MD5 Fingerprint: ce:0b:72:d1:9f:88:8e:d0:50:03:e8:e3:b8:8b:67:40 +# SHA1 Fingerprint: 30:43:fa:4f:f2:57:dc:a0:c3:80:ee:2e:58:ea:78:b2:3f:e6:bb:c1 +# SHA256 Fingerprint: 86:a1:ec:ba:08:9c:4a:8d:3b:be:27:34:c6:12:ba:34:1d:81:3e:04:3c:f9:e8:a8:62:cd:5c:57:a3:6b:be:6b +-----BEGIN CERTIFICATE----- +MIICTjCCAdOgAwIBAgIKPPYHqWhwDtqLhDAKBggqhkjOPQQDAzBrMQswCQYDVQQG +EwJJTjETMBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBUZWNo +bm9sb2dpZXMgTGltaXRlZDEgMB4GA1UEAxMXZW1TaWduIEVDQyBSb290IENBIC0g +RzMwHhcNMTgwMjE4MTgzMDAwWhcNNDMwMjE4MTgzMDAwWjBrMQswCQYDVQQGEwJJ +TjETMBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBUZWNobm9s +b2dpZXMgTGltaXRlZDEgMB4GA1UEAxMXZW1TaWduIEVDQyBSb290IENBIC0gRzMw +djAQBgcqhkjOPQIBBgUrgQQAIgNiAAQjpQy4LRL1KPOxst3iAhKAnjlfSU2fySU0 +WXTsuwYc58Byr+iuL+FBVIcUqEqy6HyC5ltqtdyzdc6LBtCGI79G1Y4PPwT01xyS +fvalY8L1X44uT6EYGQIrMgqCZH0Wk9GjQjBAMB0GA1UdDgQWBBR8XQKEE9TMipuB +zhccLikenEhjQjAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAKBggq +hkjOPQQDAwNpADBmAjEAvvNhzwIQHWSVB7gYboiFBS+DCBeQyh+KTOgNG3qxrdWB +CUfvO6wIBHxcmbHtRwfSAjEAnbpV/KlK6O3t5nYBQnvI+GDZjVGLVTv7jHvrZQnD ++JbNR6iC8hZVdyR+EhCVBCyj +-----END CERTIFICATE----- + +# Issuer: CN=emSign Root CA - C1 O=eMudhra Inc OU=emSign PKI +# Subject: CN=emSign Root CA - C1 O=eMudhra Inc OU=emSign PKI +# Label: "emSign Root CA - C1" +# Serial: 825510296613316004955058 +# MD5 Fingerprint: d8:e3:5d:01:21:fa:78:5a:b0:df:ba:d2:ee:2a:5f:68 +# SHA1 Fingerprint: e7:2e:f1:df:fc:b2:09:28:cf:5d:d4:d5:67:37:b1:51:cb:86:4f:01 +# SHA256 Fingerprint: 12:56:09:aa:30:1d:a0:a2:49:b9:7a:82:39:cb:6a:34:21:6f:44:dc:ac:9f:39:54:b1:42:92:f2:e8:c8:60:8f +-----BEGIN CERTIFICATE----- +MIIDczCCAlugAwIBAgILAK7PALrEzzL4Q7IwDQYJKoZIhvcNAQELBQAwVjELMAkG +A1UEBhMCVVMxEzARBgNVBAsTCmVtU2lnbiBQS0kxFDASBgNVBAoTC2VNdWRocmEg +SW5jMRwwGgYDVQQDExNlbVNpZ24gUm9vdCBDQSAtIEMxMB4XDTE4MDIxODE4MzAw +MFoXDTQzMDIxODE4MzAwMFowVjELMAkGA1UEBhMCVVMxEzARBgNVBAsTCmVtU2ln +biBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMRwwGgYDVQQDExNlbVNpZ24gUm9v +dCBDQSAtIEMxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz+upufGZ +BczYKCFK83M0UYRWEPWgTywS4/oTmifQz/l5GnRfHXk5/Fv4cI7gklL35CX5VIPZ +HdPIWoU/Xse2B+4+wM6ar6xWQio5JXDWv7V7Nq2s9nPczdcdioOl+yuQFTdrHCZH +3DspVpNqs8FqOp099cGXOFgFixwR4+S0uF2FHYP+eF8LRWgYSKVGczQ7/g/IdrvH +GPMF0Ybzhe3nudkyrVWIzqa2kbBPrH4VI5b2P/AgNBbeCsbEBEV5f6f9vtKppa+c +xSMq9zwhbL2vj07FOrLzNBL834AaSaTUqZX3noleoomslMuoaJuvimUnzYnu3Yy1 +aylwQ6BpC+S5DwIDAQABo0IwQDAdBgNVHQ4EFgQU/qHgcB4qAzlSWkK+XJGFehiq +TbUwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL +BQADggEBAMJKVvoVIXsoounlHfv4LcQ5lkFMOycsxGwYFYDGrK9HWS8mC+M2sO87 +/kOXSTKZEhVb3xEp/6tT+LvBeA+snFOvV71ojD1pM/CjoCNjO2RnIkSt1XHLVip4 +kqNPEjE2NuLe/gDEo2APJ62gsIq1NnpSob0n9CAnYuhNlCQT5AoE6TyrLshDCUrG +YQTlSTR+08TI9Q/Aqum6VF7zYytPT1DU/rl7mYw9wC68AivTxEDkigcxHpvOJpkT ++xHqmiIMERnHXhuBUDDIlhJu58tBf5E7oke3VIAb3ADMmpDqw8NQBmIMMMAVSKeo +WXzhriKi4gp6D/piq1JM4fHfyr6DDUI= +-----END CERTIFICATE----- + +# Issuer: CN=emSign ECC Root CA - C3 O=eMudhra Inc OU=emSign PKI +# Subject: CN=emSign ECC Root CA - C3 O=eMudhra Inc OU=emSign PKI +# Label: "emSign ECC Root CA - C3" +# Serial: 582948710642506000014504 +# MD5 Fingerprint: 3e:53:b3:a3:81:ee:d7:10:f8:d3:b0:1d:17:92:f5:d5 +# SHA1 Fingerprint: b6:af:43:c2:9b:81:53:7d:f6:ef:6b:c3:1f:1f:60:15:0c:ee:48:66 +# SHA256 Fingerprint: bc:4d:80:9b:15:18:9d:78:db:3e:1d:8c:f4:f9:72:6a:79:5d:a1:64:3c:a5:f1:35:8e:1d:db:0e:dc:0d:7e:b3 +-----BEGIN CERTIFICATE----- +MIICKzCCAbGgAwIBAgIKe3G2gla4EnycqDAKBggqhkjOPQQDAzBaMQswCQYDVQQG +EwJVUzETMBEGA1UECxMKZW1TaWduIFBLSTEUMBIGA1UEChMLZU11ZGhyYSBJbmMx +IDAeBgNVBAMTF2VtU2lnbiBFQ0MgUm9vdCBDQSAtIEMzMB4XDTE4MDIxODE4MzAw +MFoXDTQzMDIxODE4MzAwMFowWjELMAkGA1UEBhMCVVMxEzARBgNVBAsTCmVtU2ln +biBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMSAwHgYDVQQDExdlbVNpZ24gRUND +IFJvb3QgQ0EgLSBDMzB2MBAGByqGSM49AgEGBSuBBAAiA2IABP2lYa57JhAd6bci +MK4G9IGzsUJxlTm801Ljr6/58pc1kjZGDoeVjbk5Wum739D+yAdBPLtVb4Ojavti +sIGJAnB9SMVK4+kiVCJNk7tCDK93nCOmfddhEc5lx/h//vXyqaNCMEAwHQYDVR0O +BBYEFPtaSNCAIEDyqOkAB2kZd6fmw/TPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMB +Af8EBTADAQH/MAoGCCqGSM49BAMDA2gAMGUCMQC02C8Cif22TGK6Q04ThHK1rt0c +3ta13FaPWEBaLd4gTCKDypOofu4SQMfWh0/434UCMBwUZOR8loMRnLDRWmFLpg9J +0wD8ofzkpf9/rdcw0Md3f76BB1UwUCAU9Vc4CqgxUQ== +-----END CERTIFICATE----- + +# Issuer: CN=Hongkong Post Root CA 3 O=Hongkong Post +# Subject: CN=Hongkong Post Root CA 3 O=Hongkong Post +# Label: "Hongkong Post Root CA 3" +# Serial: 46170865288971385588281144162979347873371282084 +# MD5 Fingerprint: 11:fc:9f:bd:73:30:02:8a:fd:3f:f3:58:b9:cb:20:f0 +# SHA1 Fingerprint: 58:a2:d0:ec:20:52:81:5b:c1:f3:f8:64:02:24:4e:c2:8e:02:4b:02 +# SHA256 Fingerprint: 5a:2f:c0:3f:0c:83:b0:90:bb:fa:40:60:4b:09:88:44:6c:76:36:18:3d:f9:84:6e:17:10:1a:44:7f:b8:ef:d6 +-----BEGIN CERTIFICATE----- +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 +mpv0 +-----END CERTIFICATE----- + +# Issuer: CN=Microsoft ECC Root Certificate Authority 2017 O=Microsoft Corporation +# Subject: CN=Microsoft ECC Root Certificate Authority 2017 O=Microsoft Corporation +# Label: "Microsoft ECC Root Certificate Authority 2017" +# Serial: 136839042543790627607696632466672567020 +# MD5 Fingerprint: dd:a1:03:e6:4a:93:10:d1:bf:f0:19:42:cb:fe:ed:67 +# SHA1 Fingerprint: 99:9a:64:c3:7f:f4:7d:9f:ab:95:f1:47:69:89:14:60:ee:c4:c3:c5 +# SHA256 Fingerprint: 35:8d:f3:9d:76:4a:f9:e1:b7:66:e9:c9:72:df:35:2e:e1:5c:fa:c2:27:af:6a:d1:d7:0e:8e:4a:6e:dc:ba:02 +-----BEGIN CERTIFICATE----- +MIICWTCCAd+gAwIBAgIQZvI9r4fei7FK6gxXMQHC7DAKBggqhkjOPQQDAzBlMQsw +CQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYD +VQQDEy1NaWNyb3NvZnQgRUNDIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIw +MTcwHhcNMTkxMjE4MjMwNjQ1WhcNNDIwNzE4MjMxNjA0WjBlMQswCQYDVQQGEwJV +UzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYDVQQDEy1NaWNy +b3NvZnQgRUNDIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwdjAQBgcq +hkjOPQIBBgUrgQQAIgNiAATUvD0CQnVBEyPNgASGAlEvaqiBYgtlzPbKnR5vSmZR +ogPZnZH6thaxjG7efM3beaYvzrvOcS/lpaso7GMEZpn4+vKTEAXhgShC48Zo9OYb +hGBKia/teQ87zvH2RPUBeMCjVDBSMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8E +BTADAQH/MB0GA1UdDgQWBBTIy5lycFIM+Oa+sgRXKSrPQhDtNTAQBgkrBgEEAYI3 +FQEEAwIBADAKBggqhkjOPQQDAwNoADBlAjBY8k3qDPlfXu5gKcs68tvWMoQZP3zV +L8KxzJOuULsJMsbG7X7JNpQS5GiFBqIb0C8CMQCZ6Ra0DvpWSNSkMBaReNtUjGUB +iudQZsIxtzm6uBoiB078a1QWIP8rtedMDE2mT3M= +-----END CERTIFICATE----- + +# Issuer: CN=Microsoft RSA Root Certificate Authority 2017 O=Microsoft Corporation +# Subject: CN=Microsoft RSA Root Certificate Authority 2017 O=Microsoft Corporation +# Label: "Microsoft RSA Root Certificate Authority 2017" +# Serial: 40975477897264996090493496164228220339 +# MD5 Fingerprint: 10:ff:00:ff:cf:c9:f8:c7:7a:c0:ee:35:8e:c9:0f:47 +# SHA1 Fingerprint: 73:a5:e6:4a:3b:ff:83:16:ff:0e:dc:cc:61:8a:90:6e:4e:ae:4d:74 +# SHA256 Fingerprint: c7:41:f7:0f:4b:2a:8d:88:bf:2e:71:c1:41:22:ef:53:ef:10:eb:a0:cf:a5:e6:4c:fa:20:f4:18:85:30:73:e0 +-----BEGIN CERTIFICATE----- +MIIFqDCCA5CgAwIBAgIQHtOXCV/YtLNHcB6qvn9FszANBgkqhkiG9w0BAQwFADBl +MQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYw +NAYDVQQDEy1NaWNyb3NvZnQgUlNBIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5 +IDIwMTcwHhcNMTkxMjE4MjI1MTIyWhcNNDIwNzE4MjMwMDIzWjBlMQswCQYDVQQG +EwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYDVQQDEy1N +aWNyb3NvZnQgUlNBIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwggIi +MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKW76UM4wplZEWCpW9R2LBifOZ +Nt9GkMml7Xhqb0eRaPgnZ1AzHaGm++DlQ6OEAlcBXZxIQIJTELy/xztokLaCLeX0 +ZdDMbRnMlfl7rEqUrQ7eS0MdhweSE5CAg2Q1OQT85elss7YfUJQ4ZVBcF0a5toW1 +HLUX6NZFndiyJrDKxHBKrmCk3bPZ7Pw71VdyvD/IybLeS2v4I2wDwAW9lcfNcztm +gGTjGqwu+UcF8ga2m3P1eDNbx6H7JyqhtJqRjJHTOoI+dkC0zVJhUXAoP8XFWvLJ +jEm7FFtNyP9nTUwSlq31/niol4fX/V4ggNyhSyL71Imtus5Hl0dVe49FyGcohJUc +aDDv70ngNXtk55iwlNpNhTs+VcQor1fznhPbRiefHqJeRIOkpcrVE7NLP8TjwuaG +YaRSMLl6IE9vDzhTyzMMEyuP1pq9KsgtsRx9S1HKR9FIJ3Jdh+vVReZIZZ2vUpC6 +W6IYZVcSn2i51BVrlMRpIpj0M+Dt+VGOQVDJNE92kKz8OMHY4Xu54+OU4UZpyw4K +UGsTuqwPN1q3ErWQgR5WrlcihtnJ0tHXUeOrO8ZV/R4O03QK0dqq6mm4lyiPSMQH ++FJDOvTKVTUssKZqwJz58oHhEmrARdlns87/I6KJClTUFLkqqNfs+avNJVgyeY+Q +W5g5xAgGwax/Dj0ApQIDAQABo1QwUjAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/ +BAUwAwEB/zAdBgNVHQ4EFgQUCctZf4aycI8awznjwNnpv7tNsiMwEAYJKwYBBAGC +NxUBBAMCAQAwDQYJKoZIhvcNAQEMBQADggIBAKyvPl3CEZaJjqPnktaXFbgToqZC +LgLNFgVZJ8og6Lq46BrsTaiXVq5lQ7GPAJtSzVXNUzltYkyLDVt8LkS/gxCP81OC +gMNPOsduET/m4xaRhPtthH80dK2Jp86519efhGSSvpWhrQlTM93uCupKUY5vVau6 +tZRGrox/2KJQJWVggEbbMwSubLWYdFQl3JPk+ONVFT24bcMKpBLBaYVu32TxU5nh +SnUgnZUP5NbcA/FZGOhHibJXWpS2qdgXKxdJ5XbLwVaZOjex/2kskZGT4d9Mozd2 +TaGf+G0eHdP67Pv0RR0Tbc/3WeUiJ3IrhvNXuzDtJE3cfVa7o7P4NHmJweDyAmH3 +pvwPuxwXC65B2Xy9J6P9LjrRk5Sxcx0ki69bIImtt2dmefU6xqaWM/5TkshGsRGR +xpl/j8nWZjEgQRCHLQzWwa80mMpkg/sTV9HB8Dx6jKXB/ZUhoHHBk2dxEuqPiApp +GWSZI1b7rCoucL5mxAyE7+WL85MB+GqQk2dLsmijtWKP6T+MejteD+eMuMZ87zf9 +dOLITzNy4ZQ5bb0Sr74MTnB8G2+NszKTc0QWbej09+CVgI+WXTik9KveCjCHk9hN +AHFiRSdLOkKEW39lt2c0Ui2cFmuqqNh7o0JMcccMyj6D5KbvtwEwXlGjefVwaaZB +RA+GsCyRxj3qrg+E +-----END CERTIFICATE----- + +# Issuer: CN=e-Szigno Root CA 2017 O=Microsec Ltd. +# Subject: CN=e-Szigno Root CA 2017 O=Microsec Ltd. +# Label: "e-Szigno Root CA 2017" +# Serial: 411379200276854331539784714 +# MD5 Fingerprint: de:1f:f6:9e:84:ae:a7:b4:21:ce:1e:58:7d:d1:84:98 +# SHA1 Fingerprint: 89:d4:83:03:4f:9e:9a:48:80:5f:72:37:d4:a9:a6:ef:cb:7c:1f:d1 +# SHA256 Fingerprint: be:b0:0b:30:83:9b:9b:c3:2c:32:e4:44:79:05:95:06:41:f2:64:21:b1:5e:d0:89:19:8b:51:8a:e2:ea:1b:99 +-----BEGIN CERTIFICATE----- +MIICQDCCAeWgAwIBAgIMAVRI7yH9l1kN9QQKMAoGCCqGSM49BAMCMHExCzAJBgNV +BAYTAkhVMREwDwYDVQQHDAhCdWRhcGVzdDEWMBQGA1UECgwNTWljcm9zZWMgTHRk +LjEXMBUGA1UEYQwOVkFUSFUtMjM1ODQ0OTcxHjAcBgNVBAMMFWUtU3ppZ25vIFJv +b3QgQ0EgMjAxNzAeFw0xNzA4MjIxMjA3MDZaFw00MjA4MjIxMjA3MDZaMHExCzAJ +BgNVBAYTAkhVMREwDwYDVQQHDAhCdWRhcGVzdDEWMBQGA1UECgwNTWljcm9zZWMg +THRkLjEXMBUGA1UEYQwOVkFUSFUtMjM1ODQ0OTcxHjAcBgNVBAMMFWUtU3ppZ25v +IFJvb3QgQ0EgMjAxNzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJbcPYrYsHtv +xie+RJCxs1YVe45DJH0ahFnuY2iyxl6H0BVIHqiQrb1TotreOpCmYF9oMrWGQd+H +Wyx7xf58etqjYzBhMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G +A1UdDgQWBBSHERUI0arBeAyxr87GyZDvvzAEwDAfBgNVHSMEGDAWgBSHERUI0arB +eAyxr87GyZDvvzAEwDAKBggqhkjOPQQDAgNJADBGAiEAtVfd14pVCzbhhkT61Nlo +jbjcI4qKDdQvfepz7L9NbKgCIQDLpbQS+ue16M9+k/zzNY9vTlp8tLxOsvxyqltZ ++efcMQ== +-----END CERTIFICATE----- + +# Issuer: O=CERTSIGN SA OU=certSIGN ROOT CA G2 +# Subject: O=CERTSIGN SA OU=certSIGN ROOT CA G2 +# Label: "certSIGN Root CA G2" +# Serial: 313609486401300475190 +# MD5 Fingerprint: 8c:f1:75:8a:c6:19:cf:94:b7:f7:65:20:87:c3:97:c7 +# SHA1 Fingerprint: 26:f9:93:b4:ed:3d:28:27:b0:b9:4b:a7:e9:15:1d:a3:8d:92:e5:32 +# SHA256 Fingerprint: 65:7c:fe:2f:a7:3f:aa:38:46:25:71:f3:32:a2:36:3a:46:fc:e7:02:09:51:71:07:02:cd:fb:b6:ee:da:33:05 +-----BEGIN CERTIFICATE----- +MIIFRzCCAy+gAwIBAgIJEQA0tk7GNi02MA0GCSqGSIb3DQEBCwUAMEExCzAJBgNV +BAYTAlJPMRQwEgYDVQQKEwtDRVJUU0lHTiBTQTEcMBoGA1UECxMTY2VydFNJR04g +Uk9PVCBDQSBHMjAeFw0xNzAyMDYwOTI3MzVaFw00MjAyMDYwOTI3MzVaMEExCzAJ +BgNVBAYTAlJPMRQwEgYDVQQKEwtDRVJUU0lHTiBTQTEcMBoGA1UECxMTY2VydFNJ +R04gUk9PVCBDQSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMDF +dRmRfUR0dIf+DjuW3NgBFszuY5HnC2/OOwppGnzC46+CjobXXo9X69MhWf05N0Iw +vlDqtg+piNguLWkh59E3GE59kdUWX2tbAMI5Qw02hVK5U2UPHULlj88F0+7cDBrZ +uIt4ImfkabBoxTzkbFpG583H+u/E7Eu9aqSs/cwoUe+StCmrqzWaTOTECMYmzPhp +n+Sc8CnTXPnGFiWeI8MgwT0PPzhAsP6CRDiqWhqKa2NYOLQV07YRaXseVO6MGiKs +cpc/I1mbySKEwQdPzH/iV8oScLumZfNpdWO9lfsbl83kqK/20U6o2YpxJM02PbyW +xPFsqa7lzw1uKA2wDrXKUXt4FMMgL3/7FFXhEZn91QqhngLjYl/rNUssuHLoPj1P +rCy7Lobio3aP5ZMqz6WryFyNSwb/EkaseMsUBzXgqd+L6a8VTxaJW732jcZZroiF +DsGJ6x9nxUWO/203Nit4ZoORUSs9/1F3dmKh7Gc+PoGD4FapUB8fepmrY7+EF3fx +DTvf95xhszWYijqy7DwaNz9+j5LP2RIUZNoQAhVB/0/E6xyjyfqZ90bp4RjZsbgy +LcsUDFDYg2WD7rlcz8sFWkz6GZdr1l0T08JcVLwyc6B49fFtHsufpaafItzRUZ6C +eWRgKRM+o/1Pcmqr4tTluCRVLERLiohEnMqE0yo7AgMBAAGjQjBAMA8GA1UdEwEB +/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSCIS1mxteg4BXrzkwJ +d8RgnlRuAzANBgkqhkiG9w0BAQsFAAOCAgEAYN4auOfyYILVAzOBywaK8SJJ6ejq +kX/GM15oGQOGO0MBzwdw5AgeZYWR5hEit/UCI46uuR59H35s5r0l1ZUa8gWmr4UC +b6741jH/JclKyMeKqdmfS0mbEVeZkkMR3rYzpMzXjWR91M08KCy0mpbqTfXERMQl +qiCA2ClV9+BB/AYm/7k29UMUA2Z44RGx2iBfRgB4ACGlHgAoYXhvqAEBj500mv/0 +OJD7uNGzcgbJceaBxXntC6Z58hMLnPddDnskk7RI24Zf3lCGeOdA5jGokHZwYa+c +NywRtYK3qq4kNFtyDGkNzVmf9nGvnAvRCjj5BiKDUyUM/FHE5r7iOZULJK2v0ZXk +ltd0ZGtxTgI8qoXzIKNDOXZbbFD+mpwUHmUUihW9o4JFWklWatKcsWMy5WHgUyIO +pwpJ6st+H6jiYoD2EEVSmAYY3qXNL3+q1Ok+CHLsIwMCPKaq2LxndD0UF/tUSxfj +03k9bWtJySgOLnRQvwzZRjoQhsmnP+mg7H/rpXdYaXHmgwo38oZJar55CJD2AhZk +PuXaTH4MNMn5X7azKFGnpyuqSfqNZSlO42sTp5SjLVFteAxEy9/eCG/Oo2Sr05WE +1LlSVHJ7liXMvGnjSG4N0MedJ5qq+BOS3R7fY581qRY27Iy4g/Q9iY/NtBde17MX +QRBdJ3NghVdJIgc= +-----END CERTIFICATE----- + +# Issuer: CN=NAVER Global Root Certification Authority O=NAVER BUSINESS PLATFORM Corp. +# Subject: CN=NAVER Global Root Certification Authority O=NAVER BUSINESS PLATFORM Corp. +# Label: "NAVER Global Root Certification Authority" +# Serial: 9013692873798656336226253319739695165984492813 +# MD5 Fingerprint: c8:7e:41:f6:25:3b:f5:09:b3:17:e8:46:3d:bf:d0:9b +# SHA1 Fingerprint: 8f:6b:f2:a9:27:4a:da:14:a0:c4:f4:8e:61:27:f9:c0:1e:78:5d:d1 +# SHA256 Fingerprint: 88:f4:38:dc:f8:ff:d1:fa:8f:42:91:15:ff:e5:f8:2a:e1:e0:6e:0c:70:c3:75:fa:ad:71:7b:34:a4:9e:72:65 +-----BEGIN CERTIFICATE----- +MIIFojCCA4qgAwIBAgIUAZQwHqIL3fXFMyqxQ0Rx+NZQTQ0wDQYJKoZIhvcNAQEM +BQAwaTELMAkGA1UEBhMCS1IxJjAkBgNVBAoMHU5BVkVSIEJVU0lORVNTIFBMQVRG +T1JNIENvcnAuMTIwMAYDVQQDDClOQVZFUiBHbG9iYWwgUm9vdCBDZXJ0aWZpY2F0 +aW9uIEF1dGhvcml0eTAeFw0xNzA4MTgwODU4NDJaFw0zNzA4MTgyMzU5NTlaMGkx +CzAJBgNVBAYTAktSMSYwJAYDVQQKDB1OQVZFUiBCVVNJTkVTUyBQTEFURk9STSBD +b3JwLjEyMDAGA1UEAwwpTkFWRVIgR2xvYmFsIFJvb3QgQ2VydGlmaWNhdGlvbiBB +dXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC21PGTXLVA +iQqrDZBbUGOukJR0F0Vy1ntlWilLp1agS7gvQnXp2XskWjFlqxcX0TM62RHcQDaH +38dq6SZeWYp34+hInDEW+j6RscrJo+KfziFTowI2MMtSAuXaMl3Dxeb57hHHi8lE +HoSTGEq0n+USZGnQJoViAbbJAh2+g1G7XNr4rRVqmfeSVPc0W+m/6imBEtRTkZaz +kVrd/pBzKPswRrXKCAfHcXLJZtM0l/aM9BhK4dA9WkW2aacp+yPOiNgSnABIqKYP +szuSjXEOdMWLyEz59JuOuDxp7W87UC9Y7cSw0BwbagzivESq2M0UXZR4Yb8Obtoq +vC8MC3GmsxY/nOb5zJ9TNeIDoKAYv7vxvvTWjIcNQvcGufFt7QSUqP620wbGQGHf +nZ3zVHbOUzoBppJB7ASjjw2i1QnK1sua8e9DXcCrpUHPXFNwcMmIpi3Ua2FzUCaG +YQ5fG8Ir4ozVu53BA0K6lNpfqbDKzE0K70dpAy8i+/Eozr9dUGWokG2zdLAIx6yo +0es+nPxdGoMuK8u180SdOqcXYZaicdNwlhVNt0xz7hlcxVs+Qf6sdWA7G2POAN3a +CJBitOUt7kinaxeZVL6HSuOpXgRM6xBtVNbv8ejyYhbLgGvtPe31HzClrkvJE+2K +AQHJuFFYwGY6sWZLxNUxAmLpdIQM201GLQIDAQABo0IwQDAdBgNVHQ4EFgQU0p+I +36HNLL3s9TsBAZMzJ7LrYEswDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB +Af8wDQYJKoZIhvcNAQEMBQADggIBADLKgLOdPVQG3dLSLvCkASELZ0jKbY7gyKoN +qo0hV4/GPnrK21HUUrPUloSlWGB/5QuOH/XcChWB5Tu2tyIvCZwTFrFsDDUIbatj +cu3cvuzHV+YwIHHW1xDBE1UBjCpD5EHxzzp6U5LOogMFDTjfArsQLtk70pt6wKGm ++LUx5vR1yblTmXVHIloUFcd4G7ad6Qz4G3bxhYTeodoS76TiEJd6eN4MUZeoIUCL +hr0N8F5OSza7OyAfikJW4Qsav3vQIkMsRIz75Sq0bBwcupTgE34h5prCy8VCZLQe +lHsIJchxzIdFV4XTnyliIoNRlwAYl3dqmJLJfGBs32x9SuRwTMKeuB330DTHD8z7 +p/8Dvq1wkNoL3chtl1+afwkyQf3NosxabUzyqkn+Zvjp2DXrDige7kgvOtB5CTh8 +piKCk5XQA76+AqAF3SAi428diDRgxuYKuQl1C/AH6GmWNcf7I4GOODm4RStDeKLR +LBT/DShycpWbXgnbiUSYqqFJu3FS8r/2/yehNq+4tneI3TqkbZs0kNwUXTC/t+sX +5Ie3cdCh13cV1ELX8vMxmV2b3RZtP+oGI/hGoiLtk/bdmuYqh7GYVPEi92tF4+KO +dh2ajcQGjTa3FPOdVGm3jjzVpG2Tgbet9r1ke8LJaDmgkpzNNIaRkPpkUZ3+/uul +9XXeifdy +-----END CERTIFICATE----- + +# Issuer: CN=AC RAIZ FNMT-RCM SERVIDORES SEGUROS O=FNMT-RCM OU=Ceres +# Subject: CN=AC RAIZ FNMT-RCM SERVIDORES SEGUROS O=FNMT-RCM OU=Ceres +# Label: "AC RAIZ FNMT-RCM SERVIDORES SEGUROS" +# Serial: 131542671362353147877283741781055151509 +# MD5 Fingerprint: 19:36:9c:52:03:2f:d2:d1:bb:23:cc:dd:1e:12:55:bb +# SHA1 Fingerprint: 62:ff:d9:9e:c0:65:0d:03:ce:75:93:d2:ed:3f:2d:32:c9:e3:e5:4a +# SHA256 Fingerprint: 55:41:53:b1:3d:2c:f9:dd:b7:53:bf:be:1a:4e:0a:e0:8d:0a:a4:18:70:58:fe:60:a2:b8:62:b2:e4:b8:7b:cb +-----BEGIN CERTIFICATE----- +MIICbjCCAfOgAwIBAgIQYvYybOXE42hcG2LdnC6dlTAKBggqhkjOPQQDAzB4MQsw +CQYDVQQGEwJFUzERMA8GA1UECgwIRk5NVC1SQ00xDjAMBgNVBAsMBUNlcmVzMRgw +FgYDVQRhDA9WQVRFUy1RMjgyNjAwNEoxLDAqBgNVBAMMI0FDIFJBSVogRk5NVC1S +Q00gU0VSVklET1JFUyBTRUdVUk9TMB4XDTE4MTIyMDA5MzczM1oXDTQzMTIyMDA5 +MzczM1oweDELMAkGA1UEBhMCRVMxETAPBgNVBAoMCEZOTVQtUkNNMQ4wDAYDVQQL +DAVDZXJlczEYMBYGA1UEYQwPVkFURVMtUTI4MjYwMDRKMSwwKgYDVQQDDCNBQyBS +QUlaIEZOTVQtUkNNIFNFUlZJRE9SRVMgU0VHVVJPUzB2MBAGByqGSM49AgEGBSuB +BAAiA2IABPa6V1PIyqvfNkpSIeSX0oNnnvBlUdBeh8dHsVnyV0ebAAKTRBdp20LH +sbI6GA60XYyzZl2hNPk2LEnb80b8s0RpRBNm/dfF/a82Tc4DTQdxz69qBdKiQ1oK +Um8BA06Oi6NCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYD +VR0OBBYEFAG5L++/EYZg8k/QQW6rcx/n0m5JMAoGCCqGSM49BAMDA2kAMGYCMQCu +SuMrQMN0EfKVrRYj3k4MGuZdpSRea0R7/DjiT8ucRRcRTBQnJlU5dUoDzBOQn5IC +MQD6SmxgiHPz7riYYqnOK8LZiqZwMR2vsJRM60/G49HzYqc8/5MuB1xJAWdpEgJy +v+c= +-----END CERTIFICATE----- + +# Issuer: CN=GlobalSign Root R46 O=GlobalSign nv-sa +# Subject: CN=GlobalSign Root R46 O=GlobalSign nv-sa +# Label: "GlobalSign Root R46" +# Serial: 1552617688466950547958867513931858518042577 +# MD5 Fingerprint: c4:14:30:e4:fa:66:43:94:2a:6a:1b:24:5f:19:d0:ef +# SHA1 Fingerprint: 53:a2:b0:4b:ca:6b:d6:45:e6:39:8a:8e:c4:0d:d2:bf:77:c3:a2:90 +# SHA256 Fingerprint: 4f:a3:12:6d:8d:3a:11:d1:c4:85:5a:4f:80:7c:ba:d6:cf:91:9d:3a:5a:88:b0:3b:ea:2c:63:72:d9:3c:40:c9 +-----BEGIN CERTIFICATE----- +MIIFWjCCA0KgAwIBAgISEdK7udcjGJ5AXwqdLdDfJWfRMA0GCSqGSIb3DQEBDAUA +MEYxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRwwGgYD +VQQDExNHbG9iYWxTaWduIFJvb3QgUjQ2MB4XDTE5MDMyMDAwMDAwMFoXDTQ2MDMy +MDAwMDAwMFowRjELMAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYt +c2ExHDAaBgNVBAMTE0dsb2JhbFNpZ24gUm9vdCBSNDYwggIiMA0GCSqGSIb3DQEB +AQUAA4ICDwAwggIKAoICAQCsrHQy6LNl5brtQyYdpokNRbopiLKkHWPd08EsCVeJ +OaFV6Wc0dwxu5FUdUiXSE2te4R2pt32JMl8Nnp8semNgQB+msLZ4j5lUlghYruQG +vGIFAha/r6gjA7aUD7xubMLL1aa7DOn2wQL7Id5m3RerdELv8HQvJfTqa1VbkNud +316HCkD7rRlr+/fKYIje2sGP1q7Vf9Q8g+7XFkyDRTNrJ9CG0Bwta/OrffGFqfUo +0q3v84RLHIf8E6M6cqJaESvWJ3En7YEtbWaBkoe0G1h6zD8K+kZPTXhc+CtI4wSE +y132tGqzZfxCnlEmIyDLPRT5ge1lFgBPGmSXZgjPjHvjK8Cd+RTyG/FWaha/LIWF +zXg4mutCagI0GIMXTpRW+LaCtfOW3T3zvn8gdz57GSNrLNRyc0NXfeD412lPFzYE ++cCQYDdF3uYM2HSNrpyibXRdQr4G9dlkbgIQrImwTDsHTUB+JMWKmIJ5jqSngiCN +I/onccnfxkF0oE32kRbcRoxfKWMxWXEM2G/CtjJ9++ZdU6Z+Ffy7dXxd7Pj2Fxzs +x2sZy/N78CsHpdlseVR2bJ0cpm4O6XkMqCNqo98bMDGfsVR7/mrLZqrcZdCinkqa +ByFrgY/bxFn63iLABJzjqls2k+g9vXqhnQt2sQvHnf3PmKgGwvgqo6GDoLclcqUC +4wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNV +HQ4EFgQUA1yrc4GHqMywptWU4jaWSf8FmSwwDQYJKoZIhvcNAQEMBQADggIBAHx4 +7PYCLLtbfpIrXTncvtgdokIzTfnvpCo7RGkerNlFo048p9gkUbJUHJNOxO97k4Vg +JuoJSOD1u8fpaNK7ajFxzHmuEajwmf3lH7wvqMxX63bEIaZHU1VNaL8FpO7XJqti +2kM3S+LGteWygxk6x9PbTZ4IevPuzz5i+6zoYMzRx6Fcg0XERczzF2sUyQQCPtIk +pnnpHs6i58FZFZ8d4kuaPp92CC1r2LpXFNqD6v6MVenQTqnMdzGxRBF6XLE+0xRF +FRhiJBPSy03OXIPBNvIQtQ6IbbjhVp+J3pZmOUdkLG5NrmJ7v2B0GbhWrJKsFjLt +rWhV/pi60zTe9Mlhww6G9kuEYO4Ne7UyWHmRVSyBQ7N0H3qqJZ4d16GLuc1CLgSk +ZoNNiTW2bKg2SnkheCLQQrzRQDGQob4Ez8pn7fXwgNNgyYMqIgXQBztSvwyeqiv5 +u+YfjyW6hY0XHgL+XVAEV8/+LbzvXMAaq7afJMbfc2hIkCwU9D9SGuTSyxTDYWnP +4vkYxboznxSjBF25cfe1lNj2M8FawTSLfJvdkzrnE6JwYZ+vj+vYxXX4M2bUdGc6 +N3ec592kD3ZDZopD8p/7DEJ4Y9HiD2971KE9dJeFt0g5QdYg/NA6s/rob8SKunE3 +vouXsXgxT7PntgMTzlSdriVZzH81Xwj3QEUxeCp6 +-----END CERTIFICATE----- + +# Issuer: CN=GlobalSign Root E46 O=GlobalSign nv-sa +# Subject: CN=GlobalSign Root E46 O=GlobalSign nv-sa +# Label: "GlobalSign Root E46" +# Serial: 1552617690338932563915843282459653771421763 +# MD5 Fingerprint: b5:b8:66:ed:de:08:83:e3:c9:e2:01:34:06:ac:51:6f +# SHA1 Fingerprint: 39:b4:6c:d5:fe:80:06:eb:e2:2f:4a:bb:08:33:a0:af:db:b9:dd:84 +# SHA256 Fingerprint: cb:b9:c4:4d:84:b8:04:3e:10:50:ea:31:a6:9f:51:49:55:d7:bf:d2:e2:c6:b4:93:01:01:9a:d6:1d:9f:50:58 +-----BEGIN CERTIFICATE----- +MIICCzCCAZGgAwIBAgISEdK7ujNu1LzmJGjFDYQdmOhDMAoGCCqGSM49BAMDMEYx +CzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRwwGgYDVQQD +ExNHbG9iYWxTaWduIFJvb3QgRTQ2MB4XDTE5MDMyMDAwMDAwMFoXDTQ2MDMyMDAw +MDAwMFowRjELMAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2Ex +HDAaBgNVBAMTE0dsb2JhbFNpZ24gUm9vdCBFNDYwdjAQBgcqhkjOPQIBBgUrgQQA +IgNiAAScDrHPt+ieUnd1NPqlRqetMhkytAepJ8qUuwzSChDH2omwlwxwEwkBjtjq +R+q+soArzfwoDdusvKSGN+1wCAB16pMLey5SnCNoIwZD7JIvU4Tb+0cUB+hflGdd +yXqBPCCjQjBAMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud +DgQWBBQxCpCPtsad0kRLgLWi5h+xEk8blTAKBggqhkjOPQQDAwNoADBlAjEA31SQ +7Zvvi5QCkxeCmb6zniz2C5GMn0oUsfZkvLtoURMMA/cVi4RguYv/Uo7njLwcAjA8 ++RHUjE7AwWHCFUyqqx0LMV87HOIAl0Qx5v5zli/altP+CAezNIm8BZ/3Hobui3A= +-----END CERTIFICATE----- + +# Issuer: CN=ANF Secure Server Root CA O=ANF Autoridad de Certificacion OU=ANF CA Raiz +# Subject: CN=ANF Secure Server Root CA O=ANF Autoridad de Certificacion OU=ANF CA Raiz +# Label: "ANF Secure Server Root CA" +# Serial: 996390341000653745 +# MD5 Fingerprint: 26:a6:44:5a:d9:af:4e:2f:b2:1d:b6:65:b0:4e:e8:96 +# SHA1 Fingerprint: 5b:6e:68:d0:cc:15:b6:a0:5f:1e:c1:5f:ae:02:fc:6b:2f:5d:6f:74 +# SHA256 Fingerprint: fb:8f:ec:75:91:69:b9:10:6b:1e:51:16:44:c6:18:c5:13:04:37:3f:6c:06:43:08:8d:8b:ef:fd:1b:99:75:99 +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- + +# Issuer: CN=Certum EC-384 CA O=Asseco Data Systems S.A. OU=Certum Certification Authority +# Subject: CN=Certum EC-384 CA O=Asseco Data Systems S.A. OU=Certum Certification Authority +# Label: "Certum EC-384 CA" +# Serial: 160250656287871593594747141429395092468 +# MD5 Fingerprint: b6:65:b3:96:60:97:12:a1:ec:4e:e1:3d:a3:c6:c9:f1 +# SHA1 Fingerprint: f3:3e:78:3c:ac:df:f4:a2:cc:ac:67:55:69:56:d7:e5:16:3c:e1:ed +# SHA256 Fingerprint: 6b:32:80:85:62:53:18:aa:50:d1:73:c9:8d:8b:da:09:d5:7e:27:41:3d:11:4c:f7:87:a0:f5:d0:6c:03:0c:f6 +-----BEGIN CERTIFICATE----- +MIICZTCCAeugAwIBAgIQeI8nXIESUiClBNAt3bpz9DAKBggqhkjOPQQDAzB0MQsw +CQYDVQQGEwJQTDEhMB8GA1UEChMYQXNzZWNvIERhdGEgU3lzdGVtcyBTLkEuMScw +JQYDVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxGTAXBgNVBAMT +EENlcnR1bSBFQy0zODQgQ0EwHhcNMTgwMzI2MDcyNDU0WhcNNDMwMzI2MDcyNDU0 +WjB0MQswCQYDVQQGEwJQTDEhMB8GA1UEChMYQXNzZWNvIERhdGEgU3lzdGVtcyBT +LkEuMScwJQYDVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxGTAX +BgNVBAMTEENlcnR1bSBFQy0zODQgQ0EwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAATE +KI6rGFtqvm5kN2PkzeyrOvfMobgOgknXhimfoZTy42B4mIF4Bk3y7JoOV2CDn7Tm +Fy8as10CW4kjPMIRBSqniBMY81CE1700LCeJVf/OTOffph8oxPBUw7l8t1Ot68Kj +QjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI0GZnQkdjrzife81r1HfS+8 +EF9LMA4GA1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNoADBlAjADVS2m5hjEfO/J +UG7BJw+ch69u1RsIGL2SKcHvlJF40jocVYli5RsJHrpka/F2tNQCMQC0QoSZ/6vn +nvuRlydd3LBbMHHOXjgaatkl5+r3YZJW+OraNsKHZZYuciUvf9/DE8k= +-----END CERTIFICATE----- + +# Issuer: CN=Certum Trusted Root CA O=Asseco Data Systems S.A. OU=Certum Certification Authority +# Subject: CN=Certum Trusted Root CA O=Asseco Data Systems S.A. OU=Certum Certification Authority +# Label: "Certum Trusted Root CA" +# Serial: 40870380103424195783807378461123655149 +# MD5 Fingerprint: 51:e1:c2:e7:fe:4c:84:af:59:0e:2f:f4:54:6f:ea:29 +# SHA1 Fingerprint: c8:83:44:c0:18:ae:9f:cc:f1:87:b7:8f:22:d1:c5:d7:45:84:ba:e5 +# SHA256 Fingerprint: fe:76:96:57:38:55:77:3e:37:a9:5e:7a:d4:d9:cc:96:c3:01:57:c1:5d:31:76:5b:a9:b1:57:04:e1:ae:78:fd +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- + +# Issuer: CN=TunTrust Root CA O=Agence Nationale de Certification Electronique +# Subject: CN=TunTrust Root CA O=Agence Nationale de Certification Electronique +# Label: "TunTrust Root CA" +# Serial: 108534058042236574382096126452369648152337120275 +# MD5 Fingerprint: 85:13:b9:90:5b:36:5c:b6:5e:b8:5a:f8:e0:31:57:b4 +# SHA1 Fingerprint: cf:e9:70:84:0f:e0:73:0f:9d:f6:0c:7f:2c:4b:ee:20:46:34:9c:bb +# SHA256 Fingerprint: 2e:44:10:2a:b5:8c:b8:54:19:45:1c:8e:19:d9:ac:f3:66:2c:af:bc:61:4b:6a:53:96:0a:30:f7:d0:e2:eb:41 +-----BEGIN CERTIFICATE----- +MIIFszCCA5ugAwIBAgIUEwLV4kBMkkaGFmddtLu7sms+/BMwDQYJKoZIhvcNAQEL +BQAwYTELMAkGA1UEBhMCVE4xNzA1BgNVBAoMLkFnZW5jZSBOYXRpb25hbGUgZGUg +Q2VydGlmaWNhdGlvbiBFbGVjdHJvbmlxdWUxGTAXBgNVBAMMEFR1blRydXN0IFJv +b3QgQ0EwHhcNMTkwNDI2MDg1NzU2WhcNNDQwNDI2MDg1NzU2WjBhMQswCQYDVQQG +EwJUTjE3MDUGA1UECgwuQWdlbmNlIE5hdGlvbmFsZSBkZSBDZXJ0aWZpY2F0aW9u +IEVsZWN0cm9uaXF1ZTEZMBcGA1UEAwwQVHVuVHJ1c3QgUm9vdCBDQTCCAiIwDQYJ +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMPN0/y9BFPdDCA61YguBUtB9YOCfvdZ +n56eY+hz2vYGqU8ftPkLHzmMmiDQfgbU7DTZhrx1W4eI8NLZ1KMKsmwb60ksPqxd +2JQDoOw05TDENX37Jk0bbjBU2PWARZw5rZzJJQRNmpA+TkBuimvNKWfGzC3gdOgF +VwpIUPp6Q9p+7FuaDmJ2/uqdHYVy7BG7NegfJ7/Boce7SBbdVtfMTqDhuazb1YMZ +GoXRlJfXyqNlC/M4+QKu3fZnz8k/9YosRxqZbwUN/dAdgjH8KcwAWJeRTIAAHDOF +li/LQcKLEITDCSSJH7UP2dl3RxiSlGBcx5kDPP73lad9UKGAwqmDrViWVSHbhlnU +r8a83YFuB9tgYv7sEG7aaAH0gxupPqJbI9dkxt/con3YS7qC0lH4Zr8GRuR5KiY2 +eY8fTpkdso8MDhz/yV3A/ZAQprE38806JG60hZC/gLkMjNWb1sjxVj8agIl6qeIb +MlEsPvLfe/ZdeikZjuXIvTZxi11Mwh0/rViizz1wTaZQmCXcI/m4WEEIcb9PuISg +jwBUFfyRbVinljvrS5YnzWuioYasDXxU5mZMZl+QviGaAkYt5IPCgLnPSz7ofzwB +7I9ezX/SKEIBlYrilz0QIX32nRzFNKHsLA4KUiwSVXAkPcvCFDVDXSdOvsC9qnyW +5/yeYa1E0wCXAgMBAAGjYzBhMB0GA1UdDgQWBBQGmpsfU33x9aTI04Y+oXNZtPdE +ITAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFAaamx9TffH1pMjThj6hc1m0 +90QhMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAqgVutt0Vyb+z +xiD2BkewhpMl0425yAA/l/VSJ4hxyXT968pk21vvHl26v9Hr7lxpuhbI87mP0zYu +QEkHDVneixCwSQXi/5E/S7fdAo74gShczNxtr18UnH1YeA32gAm56Q6XKRm4t+v4 +FstVEuTGfbvE7Pi1HE4+Z7/FXxttbUcoqgRYYdZ2vyJ/0Adqp2RT8JeNnYA/u8EH +22Wv5psymsNUk8QcCMNE+3tjEUPRahphanltkE8pjkcFwRJpadbGNjHh/PqAulxP +xOu3Mqz4dWEX1xAZufHSCe96Qp1bWgvUxpVOKs7/B9dPfhgGiPEZtdmYu65xxBzn +dFlY7wyJz4sfdZMaBBSSSFCp61cpABbjNhzI+L/wM9VBD8TMPN3pM0MBkRArHtG5 +Xc0yGYuPjCB31yLEQtyEFpslbei0VXF/sHyz03FJuc9SpAQ/3D2gu68zngowYI7b +nV2UqL1g52KAdoGDDIzMMEZJ4gzSqK/rYXHv5yJiqfdcZGyfFoxnNidF9Ql7v/YQ +CvGwjVRDjAS6oz/v4jXH+XTgbzRB0L9zZVcg+ZtnemZoJE6AZb0QmQZZ8mWvuMZH +u/2QeItBcy6vVR/cO5JyboTT0GFMDcx2V+IthSIVNg3rAZ3r2OvEhJn7wAzMMujj +d9qDRIueVSjAi1jTkD5OGwDxFa2DK5o= +-----END CERTIFICATE----- + +# Issuer: CN=HARICA TLS RSA Root CA 2021 O=Hellenic Academic and Research Institutions CA +# Subject: CN=HARICA TLS RSA Root CA 2021 O=Hellenic Academic and Research Institutions CA +# Label: "HARICA TLS RSA Root CA 2021" +# Serial: 76817823531813593706434026085292783742 +# MD5 Fingerprint: 65:47:9b:58:86:dd:2c:f0:fc:a2:84:1f:1e:96:c4:91 +# SHA1 Fingerprint: 02:2d:05:82:fa:88:ce:14:0c:06:79:de:7f:14:10:e9:45:d7:a5:6d +# SHA256 Fingerprint: d9:5d:0e:8e:da:79:52:5b:f9:be:b1:1b:14:d2:10:0d:32:94:98:5f:0c:62:d9:fa:bd:9c:d9:99:ec:cb:7b:1d +-----BEGIN CERTIFICATE----- +MIIFpDCCA4ygAwIBAgIQOcqTHO9D88aOk8f0ZIk4fjANBgkqhkiG9w0BAQsFADBs +MQswCQYDVQQGEwJHUjE3MDUGA1UECgwuSGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJl +c2VhcmNoIEluc3RpdHV0aW9ucyBDQTEkMCIGA1UEAwwbSEFSSUNBIFRMUyBSU0Eg +Um9vdCBDQSAyMDIxMB4XDTIxMDIxOTEwNTUzOFoXDTQ1MDIxMzEwNTUzN1owbDEL +MAkGA1UEBhMCR1IxNzA1BgNVBAoMLkhlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNl +YXJjaCBJbnN0aXR1dGlvbnMgQ0ExJDAiBgNVBAMMG0hBUklDQSBUTFMgUlNBIFJv +b3QgQ0EgMjAyMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAIvC569l +mwVnlskNJLnQDmT8zuIkGCyEf3dRywQRNrhe7Wlxp57kJQmXZ8FHws+RFjZiPTgE +4VGC/6zStGndLuwRo0Xua2s7TL+MjaQenRG56Tj5eg4MmOIjHdFOY9TnuEFE+2uv +a9of08WRiFukiZLRgeaMOVig1mlDqa2YUlhu2wr7a89o+uOkXjpFc5gH6l8Cct4M +pbOfrqkdtx2z/IpZ525yZa31MJQjB/OCFks1mJxTuy/K5FrZx40d/JiZ+yykgmvw +Kh+OC19xXFyuQnspiYHLA6OZyoieC0AJQTPb5lh6/a6ZcMBaD9YThnEvdmn8kN3b +LW7R8pv1GmuebxWMevBLKKAiOIAkbDakO/IwkfN4E8/BPzWr8R0RI7VDIp4BkrcY +AuUR0YLbFQDMYTfBKnya4dC6s1BG7oKsnTH4+yPiAwBIcKMJJnkVU2DzOFytOOqB +AGMUuTNe3QvboEUHGjMJ+E20pwKmafTCWQWIZYVWrkvL4N48fS0ayOn7H6NhStYq +E613TBoYm5EPWNgGVMWX+Ko/IIqmhaZ39qb8HOLubpQzKoNQhArlT4b4UEV4AIHr +W2jjJo3Me1xR9BQsQL4aYB16cmEdH2MtiKrOokWQCPxrvrNQKlr9qEgYRtaQQJKQ +CoReaDH46+0N0x3GfZkYVVYnZS6NRcUk7M7jAgMBAAGjQjBAMA8GA1UdEwEB/wQF +MAMBAf8wHQYDVR0OBBYEFApII6ZgpJIKM+qTW8VX6iVNvRLuMA4GA1UdDwEB/wQE +AwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAPpBIqm5iFSVmewzVjIuJndftTgfvnNAU +X15QvWiWkKQUEapobQk1OUAJ2vQJLDSle1mESSmXdMgHHkdt8s4cUCbjnj1AUz/3 +f5Z2EMVGpdAgS1D0NTsY9FVqQRtHBmg8uwkIYtlfVUKqrFOFrJVWNlar5AWMxaja +H6NpvVMPxP/cyuN+8kyIhkdGGvMA9YCRotxDQpSbIPDRzbLrLFPCU3hKTwSUQZqP +JzLB5UkZv/HywouoCjkxKLR9YjYsTewfM7Z+d21+UPCfDtcRj88YxeMn/ibvBZ3P +zzfF0HvaO7AWhAw6k9a+F9sPPg4ZeAnHqQJyIkv3N3a6dcSFA1pj1bF1BcK5vZSt +jBWZp5N99sXzqnTPBIWUmAD04vnKJGW/4GKvyMX6ssmeVkjaef2WdhW+o45WxLM0 +/L5H9MG0qPzVMIho7suuyWPEdr6sOBjhXlzPrjoiUevRi7PzKzMHVIf6tLITe7pT +BGIBnfHAT+7hOtSLIBD6Alfm78ELt5BGnBkpjNxvoEppaZS3JGWg/6w/zgH7IS79 +aPib8qXPMThcFarmlwDB31qlpzmq6YR/PFGoOtmUW4y/Twhx5duoXNTSpv4Ao8YW +xw/ogM4cKGR0GQjTQuPOAF1/sdwTsOEFy9EgqoZ0njnnkf3/W9b3raYvAwtt41dU +63ZTGI0RmLo= +-----END CERTIFICATE----- + +# Issuer: CN=HARICA TLS ECC Root CA 2021 O=Hellenic Academic and Research Institutions CA +# Subject: CN=HARICA TLS ECC Root CA 2021 O=Hellenic Academic and Research Institutions CA +# Label: "HARICA TLS ECC Root CA 2021" +# Serial: 137515985548005187474074462014555733966 +# MD5 Fingerprint: ae:f7:4c:e5:66:35:d1:b7:9b:8c:22:93:74:d3:4b:b0 +# SHA1 Fingerprint: bc:b0:c1:9d:e9:98:92:70:19:38:57:e9:8d:a7:b4:5d:6e:ee:01:48 +# SHA256 Fingerprint: 3f:99:cc:47:4a:cf:ce:4d:fe:d5:87:94:66:5e:47:8d:15:47:73:9f:2e:78:0f:1b:b4:ca:9b:13:30:97:d4:01 +-----BEGIN CERTIFICATE----- +MIICVDCCAdugAwIBAgIQZ3SdjXfYO2rbIvT/WeK/zjAKBggqhkjOPQQDAzBsMQsw +CQYDVQQGEwJHUjE3MDUGA1UECgwuSGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJlc2Vh +cmNoIEluc3RpdHV0aW9ucyBDQTEkMCIGA1UEAwwbSEFSSUNBIFRMUyBFQ0MgUm9v +dCBDQSAyMDIxMB4XDTIxMDIxOTExMDExMFoXDTQ1MDIxMzExMDEwOVowbDELMAkG +A1UEBhMCR1IxNzA1BgNVBAoMLkhlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJj +aCBJbnN0aXR1dGlvbnMgQ0ExJDAiBgNVBAMMG0hBUklDQSBUTFMgRUNDIFJvb3Qg +Q0EgMjAyMTB2MBAGByqGSM49AgEGBSuBBAAiA2IABDgI/rGgltJ6rK9JOtDA4MM7 +KKrxcm1lAEeIhPyaJmuqS7psBAqIXhfyVYf8MLA04jRYVxqEU+kw2anylnTDUR9Y +STHMmE5gEYd103KUkE+bECUqqHgtvpBBWJAVcqeht6NCMEAwDwYDVR0TAQH/BAUw +AwEB/zAdBgNVHQ4EFgQUyRtTgRL+BNUW0aq8mm+3oJUZbsowDgYDVR0PAQH/BAQD +AgGGMAoGCCqGSM49BAMDA2cAMGQCMBHervjcToiwqfAircJRQO9gcS3ujwLEXQNw +SaSS6sUUiHCm0w2wqsosQJz76YJumgIwK0eaB8bRwoF8yguWGEEbo/QwCZ61IygN +nxS2PFOiTAZpffpskcYqSUXm7LcT4Tps +-----END CERTIFICATE----- + +# Issuer: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068 +# Subject: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068 +# Label: "Autoridad de Certificacion Firmaprofesional CIF A62634068" +# Serial: 1977337328857672817 +# MD5 Fingerprint: 4e:6e:9b:54:4c:ca:b7:fa:48:e4:90:b1:15:4b:1c:a3 +# SHA1 Fingerprint: 0b:be:c2:27:22:49:cb:39:aa:db:35:5c:53:e3:8c:ae:78:ff:b6:fe +# SHA256 Fingerprint: 57:de:05:83:ef:d2:b2:6e:03:61:da:99:da:9d:f4:64:8d:ef:7e:e8:44:1c:3b:72:8a:fa:9b:cd:e0:f9:b2:6a +-----BEGIN CERTIFICATE----- +MIIGFDCCA/ygAwIBAgIIG3Dp0v+ubHEwDQYJKoZIhvcNAQELBQAwUTELMAkGA1UE +BhMCRVMxQjBABgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1h +cHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2ODAeFw0xNDA5MjMxNTIyMDdaFw0zNjA1 +MDUxNTIyMDdaMFExCzAJBgNVBAYTAkVTMUIwQAYDVQQDDDlBdXRvcmlkYWQgZGUg +Q2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBBNjI2MzQwNjgwggIi +MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDDUtd9 +thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQM +cas9UX4PB99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefG +L9ItWY16Ck6WaVICqjaY7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15i +NA9wBj4gGFrO93IbJWyTdBSTo3OxDqqHECNZXyAFGUftaI6SEspd/NYrspI8IM/h +X68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyIplD9amML9ZMWGxmPsu2b +m8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctXMbScyJCy +Z/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirja +EbsXLZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/T +KI8xWVvTyQKmtFLKbpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF +6NkBiDkal4ZkQdU7hwxu+g/GvUgUvzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVh +OSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMB0GA1UdDgQWBBRlzeurNR4APn7VdMAc +tHNHDhpkLzASBgNVHRMBAf8ECDAGAQH/AgEBMIGmBgNVHSAEgZ4wgZswgZgGBFUd +IAAwgY8wLwYIKwYBBQUHAgEWI2h0dHA6Ly93d3cuZmlybWFwcm9mZXNpb25hbC5j +b20vY3BzMFwGCCsGAQUFBwICMFAeTgBQAGEAcwBlAG8AIABkAGUAIABsAGEAIABC +AG8AbgBhAG4AbwB2AGEAIAA0ADcAIABCAGEAcgBjAGUAbABvAG4AYQAgADAAOAAw +ADEANzAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggIBAHSHKAIrdx9m +iWTtj3QuRhy7qPj4Cx2Dtjqn6EWKB7fgPiDL4QjbEwj4KKE1soCzC1HA01aajTNF +Sa9J8OA9B3pFE1r/yJfY0xgsfZb43aJlQ3CTkBW6kN/oGbDbLIpgD7dvlAceHabJ +hfa9NPhAeGIQcDq+fUs5gakQ1JZBu/hfHAsdCPKxsIl68veg4MSPi3i1O1ilI45P +Vf42O+AMt8oqMEEgtIDNrvx2ZnOorm7hfNoD6JQg5iKj0B+QXSBTFCZX2lSX3xZE +EAEeiGaPcjiT3SC3NL7X8e5jjkd5KAb881lFJWAiMxujX6i6KtoaPc1A6ozuBRWV +1aUsIC+nmCjuRfzxuIgALI9C2lHVnOUTaHFFQ4ueCyE8S1wF3BqfmI7avSKecs2t +CsvMo2ebKHTEm9caPARYpoKdrcd7b/+Alun4jWq9GJAd/0kakFI3ky88Al2CdgtR +5xbHV/g4+afNmyJU72OwFW1TZQNKXkqgsqeOSQBZONXH9IBk9W6VULgRfhVwOEqw +f9DEMnDAGf/JOC0ULGb0QkTmVXYbgBVX/8Cnp6o5qtjTcNAuuuuUavpfNIbnYrX9 +ivAwhZTJryQCL2/W3Wf+47BVTwSYT6RBVuKT0Gro1vP7ZeDOdcQxWQzugsgMYDNK +GbqEZycPvEJdvSRUDewdcAZfpLz6IHxV +-----END CERTIFICATE----- + +# Issuer: CN=vTrus ECC Root CA O=iTrusChina Co.,Ltd. +# Subject: CN=vTrus ECC Root CA O=iTrusChina Co.,Ltd. +# Label: "vTrus ECC Root CA" +# Serial: 630369271402956006249506845124680065938238527194 +# MD5 Fingerprint: de:4b:c1:f5:52:8c:9b:43:e1:3e:8f:55:54:17:8d:85 +# SHA1 Fingerprint: f6:9c:db:b0:fc:f6:02:13:b6:52:32:a6:a3:91:3f:16:70:da:c3:e1 +# SHA256 Fingerprint: 30:fb:ba:2c:32:23:8e:2a:98:54:7a:f9:79:31:e5:50:42:8b:9b:3f:1c:8e:eb:66:33:dc:fa:86:c5:b2:7d:d3 +-----BEGIN CERTIFICATE----- +MIICDzCCAZWgAwIBAgIUbmq8WapTvpg5Z6LSa6Q75m0c1towCgYIKoZIzj0EAwMw +RzELMAkGA1UEBhMCQ04xHDAaBgNVBAoTE2lUcnVzQ2hpbmEgQ28uLEx0ZC4xGjAY +BgNVBAMTEXZUcnVzIEVDQyBSb290IENBMB4XDTE4MDczMTA3MjY0NFoXDTQzMDcz +MTA3MjY0NFowRzELMAkGA1UEBhMCQ04xHDAaBgNVBAoTE2lUcnVzQ2hpbmEgQ28u +LEx0ZC4xGjAYBgNVBAMTEXZUcnVzIEVDQyBSb290IENBMHYwEAYHKoZIzj0CAQYF +K4EEACIDYgAEZVBKrox5lkqqHAjDo6LN/llWQXf9JpRCux3NCNtzslt188+cToL0 +v/hhJoVs1oVbcnDS/dtitN9Ti72xRFhiQgnH+n9bEOf+QP3A2MMrMudwpremIFUd +e4BdS49nTPEQo0IwQDAdBgNVHQ4EFgQUmDnNvtiyjPeyq+GtJK97fKHbH88wDwYD +VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwCgYIKoZIzj0EAwMDaAAwZQIw +V53dVvHH4+m4SVBrm2nDb+zDfSXkV5UTQJtS0zvzQBm8JsctBp61ezaf9SXUY2sA +AjEA6dPGnlaaKsyh2j/IZivTWJwghfqrkYpwcBE4YGQLYgmRWAD5Tfs0aNoJrSEG +GJTO +-----END CERTIFICATE----- + +# Issuer: CN=vTrus Root CA O=iTrusChina Co.,Ltd. +# Subject: CN=vTrus Root CA O=iTrusChina Co.,Ltd. +# Label: "vTrus Root CA" +# Serial: 387574501246983434957692974888460947164905180485 +# MD5 Fingerprint: b8:c9:37:df:fa:6b:31:84:64:c5:ea:11:6a:1b:75:fc +# SHA1 Fingerprint: 84:1a:69:fb:f5:cd:1a:25:34:13:3d:e3:f8:fc:b8:99:d0:c9:14:b7 +# SHA256 Fingerprint: 8a:71:de:65:59:33:6f:42:6c:26:e5:38:80:d0:0d:88:a1:8d:a4:c6:a9:1f:0d:cb:61:94:e2:06:c5:c9:63:87 +-----BEGIN CERTIFICATE----- +MIIFVjCCAz6gAwIBAgIUQ+NxE9izWRRdt86M/TX9b7wFjUUwDQYJKoZIhvcNAQEL +BQAwQzELMAkGA1UEBhMCQ04xHDAaBgNVBAoTE2lUcnVzQ2hpbmEgQ28uLEx0ZC4x +FjAUBgNVBAMTDXZUcnVzIFJvb3QgQ0EwHhcNMTgwNzMxMDcyNDA1WhcNNDMwNzMx +MDcyNDA1WjBDMQswCQYDVQQGEwJDTjEcMBoGA1UEChMTaVRydXNDaGluYSBDby4s +THRkLjEWMBQGA1UEAxMNdlRydXMgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAL1VfGHTuB0EYgWgrmy3cLRB6ksDXhA/kFocizuwZotsSKYc +IrrVQJLuM7IjWcmOvFjai57QGfIvWcaMY1q6n6MLsLOaXLoRuBLpDLvPbmyAhykU +AyyNJJrIZIO1aqwTLDPxn9wsYTwaP3BVm60AUn/PBLn+NvqcwBauYv6WTEN+VRS+ +GrPSbcKvdmaVayqwlHeFXgQPYh1jdfdr58tbmnDsPmcF8P4HCIDPKNsFxhQnL4Z9 +8Cfe/+Z+M0jnCx5Y0ScrUw5XSmXX+6KAYPxMvDVTAWqXcoKv8R1w6Jz1717CbMdH +flqUhSZNO7rrTOiwCcJlwp2dCZtOtZcFrPUGoPc2BX70kLJrxLT5ZOrpGgrIDajt +J8nU57O5q4IikCc9Kuh8kO+8T/3iCiSn3mUkpF3qwHYw03dQ+A0Em5Q2AXPKBlim +0zvc+gRGE1WKyURHuFE5Gi7oNOJ5y1lKCn+8pu8fA2dqWSslYpPZUxlmPCdiKYZN +pGvu/9ROutW04o5IWgAZCfEF2c6Rsffr6TlP9m8EQ5pV9T4FFL2/s1m02I4zhKOQ +UqqzApVg+QxMaPnu1RcN+HFXtSXkKe5lXa/R7jwXC1pDxaWG6iSe4gUH3DRCEpHW +OXSuTEGC2/KmSNGzm/MzqvOmwMVO9fSddmPmAsYiS8GVP1BkLFTltvA8Kc9XAgMB +AAGjQjBAMB0GA1UdDgQWBBRUYnBj8XWEQ1iO0RYgscasGrz2iTAPBgNVHRMBAf8E +BTADAQH/MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAKbqSSaet +8PFww+SX8J+pJdVrnjT+5hpk9jprUrIQeBqfTNqK2uwcN1LgQkv7bHbKJAs5EhWd +nxEt/Hlk3ODg9d3gV8mlsnZwUKT+twpw1aA08XXXTUm6EdGz2OyC/+sOxL9kLX1j +bhd47F18iMjrjld22VkE+rxSH0Ws8HqA7Oxvdq6R2xCOBNyS36D25q5J08FsEhvM +Kar5CKXiNxTKsbhm7xqC5PD48acWabfbqWE8n/Uxy+QARsIvdLGx14HuqCaVvIiv +TDUHKgLKeBRtRytAVunLKmChZwOgzoy8sHJnxDHO2zTlJQNgJXtxmOTAGytfdELS +S8VZCAeHvsXDf+eW2eHcKJfWjwXj9ZtOyh1QRwVTsMo554WgicEFOwE30z9J4nfr +I8iIZjs9OXYhRvHsXyO466JmdXTBQPfYaJqT4i2pLr0cox7IdMakLXogqzu4sEb9 +b91fUlV1YvCXoHzXOP0l382gmxDPi7g4Xl7FtKYCNqEeXxzP4padKar9mK5S4fNB +UvupLnKWnyfjqnN9+BojZns7q2WwMgFLFT49ok8MKzWixtlnEjUwzXYuFrOZnk1P +Ti07NEPhmg4NpGaXutIcSkwsKouLgU9xGqndXHt7CMUADTdA43x7VF8vhV929ven +sBxXVsFy6K2ir40zSbofitzmdHxghm+Hl3s= +-----END CERTIFICATE----- + +# Issuer: CN=ISRG Root X2 O=Internet Security Research Group +# Subject: CN=ISRG Root X2 O=Internet Security Research Group +# Label: "ISRG Root X2" +# Serial: 87493402998870891108772069816698636114 +# MD5 Fingerprint: d3:9e:c4:1e:23:3c:a6:df:cf:a3:7e:6d:e0:14:e6:e5 +# SHA1 Fingerprint: bd:b1:b9:3c:d5:97:8d:45:c6:26:14:55:f8:db:95:c7:5a:d1:53:af +# SHA256 Fingerprint: 69:72:9b:8e:15:a8:6e:fc:17:7a:57:af:b7:17:1d:fc:64:ad:d2:8c:2f:ca:8c:f1:50:7e:34:45:3c:cb:14:70 +-----BEGIN CERTIFICATE----- +MIICGzCCAaGgAwIBAgIQQdKd0XLq7qeAwSxs6S+HUjAKBggqhkjOPQQDAzBPMQsw +CQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJuZXQgU2VjdXJpdHkgUmVzZWFyY2gg +R3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBYMjAeFw0yMDA5MDQwMDAwMDBaFw00 +MDA5MTcxNjAwMDBaME8xCzAJBgNVBAYTAlVTMSkwJwYDVQQKEyBJbnRlcm5ldCBT +ZWN1cml0eSBSZXNlYXJjaCBHcm91cDEVMBMGA1UEAxMMSVNSRyBSb290IFgyMHYw +EAYHKoZIzj0CAQYFK4EEACIDYgAEzZvVn4CDCuwJSvMWSj5cz3es3mcFDR0HttwW ++1qLFNvicWDEukWVEYmO6gbf9yoWHKS5xcUy4APgHoIYOIvXRdgKam7mAHf7AlF9 +ItgKbppbd9/w+kHsOdx1ymgHDB/qo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0T +AQH/BAUwAwEB/zAdBgNVHQ4EFgQUfEKWrt5LSDv6kviejM9ti6lyN5UwCgYIKoZI +zj0EAwMDaAAwZQIwe3lORlCEwkSHRhtFcP9Ymd70/aTSVaYgLXTWNLxBo1BfASdW +tL4ndQavEi51mI38AjEAi/V3bNTIZargCyzuFJ0nN6T5U6VR5CmD1/iQMVtCnwr1 +/q4AaOeMSQ+2b1tbFfLn +-----END CERTIFICATE----- + +# Issuer: CN=HiPKI Root CA - G1 O=Chunghwa Telecom Co., Ltd. +# Subject: CN=HiPKI Root CA - G1 O=Chunghwa Telecom Co., Ltd. +# Label: "HiPKI Root CA - G1" +# Serial: 60966262342023497858655262305426234976 +# MD5 Fingerprint: 69:45:df:16:65:4b:e8:68:9a:8f:76:5f:ff:80:9e:d3 +# SHA1 Fingerprint: 6a:92:e4:a8:ee:1b:ec:96:45:37:e3:29:57:49:cd:96:e3:e5:d2:60 +# SHA256 Fingerprint: f0:15:ce:3c:c2:39:bf:ef:06:4b:e9:f1:d2:c4:17:e1:a0:26:4a:0a:94:be:1f:0c:8d:12:18:64:eb:69:49:cc +-----BEGIN CERTIFICATE----- +MIIFajCCA1KgAwIBAgIQLd2szmKXlKFD6LDNdmpeYDANBgkqhkiG9w0BAQsFADBP +MQswCQYDVQQGEwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0 +ZC4xGzAZBgNVBAMMEkhpUEtJIFJvb3QgQ0EgLSBHMTAeFw0xOTAyMjIwOTQ2MDRa +Fw0zNzEyMzExNTU5NTlaME8xCzAJBgNVBAYTAlRXMSMwIQYDVQQKDBpDaHVuZ2h3 +YSBUZWxlY29tIENvLiwgTHRkLjEbMBkGA1UEAwwSSGlQS0kgUm9vdCBDQSAtIEcx +MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA9B5/UnMyDHPkvRN0o9Qw +qNCuS9i233VHZvR85zkEHmpwINJaR3JnVfSl6J3VHiGh8Ge6zCFovkRTv4354twv +Vcg3Px+kwJyz5HdcoEb+d/oaoDjq7Zpy3iu9lFc6uux55199QmQ5eiY29yTw1S+6 +lZgRZq2XNdZ1AYDgr/SEYYwNHl98h5ZeQa/rh+r4XfEuiAU+TCK72h8q3VJGZDnz +Qs7ZngyzsHeXZJzA9KMuH5UHsBffMNsAGJZMoYFL3QRtU6M9/Aes1MU3guvklQgZ +KILSQjqj2FPseYlgSGDIcpJQ3AOPgz+yQlda22rpEZfdhSi8MEyr48KxRURHH+CK +FgeW0iEPU8DtqX7UTuybCeyvQqww1r/REEXgphaypcXTT3OUM3ECoWqj1jOXTyFj +HluP2cFeRXF3D4FdXyGarYPM+l7WjSNfGz1BryB1ZlpK9p/7qxj3ccC2HTHsOyDr +y+K49a6SsvfhhEvyovKTmiKe0xRvNlS9H15ZFblzqMF8b3ti6RZsR1pl8w4Rm0bZ +/W3c1pzAtH2lsN0/Vm+h+fbkEkj9Bn8SV7apI09bA8PgcSojt/ewsTu8mL3WmKgM +a/aOEmem8rJY5AIJEzypuxC00jBF8ez3ABHfZfjcK0NVvxaXxA/VLGGEqnKG/uY6 +fsI/fe78LxQ+5oXdUG+3Se0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNV +HQ4EFgQU8ncX+l6o/vY9cdVouslGDDjYr7AwDgYDVR0PAQH/BAQDAgGGMA0GCSqG +SIb3DQEBCwUAA4ICAQBQUfB13HAE4/+qddRxosuej6ip0691x1TPOhwEmSKsxBHi +7zNKpiMdDg1H2DfHb680f0+BazVP6XKlMeJ45/dOlBhbQH3PayFUhuaVevvGyuqc +SE5XCV0vrPSltJczWNWseanMX/mF+lLFjfiRFOs6DRfQUsJ748JzjkZ4Bjgs6Fza +ZsT0pPBWGTMpWmWSBUdGSquEwx4noR8RkpkndZMPvDY7l1ePJlsMu5wP1G4wB9Tc +XzZoZjmDlicmisjEOf6aIW/Vcobpf2Lll07QJNBAsNB1CI69aO4I1258EHBGG3zg +iLKecoaZAeO/n0kZtCW+VmWuF2PlHt/o/0elv+EmBYTksMCv5wiZqAxeJoBF1Pho +L5aPruJKHJwWDBNvOIf2u8g0X5IDUXlwpt/L9ZlNec1OvFefQ05rLisY+GpzjLrF +Ne85akEez3GoorKGB1s6yeHvP2UEgEcyRHCVTjFnanRbEEV16rCf0OY1/k6fi8wr +kkVbbiVghUbN0aqwdmaTd5a+g744tiROJgvM7XpWGuDpWsZkrUx6AEhEL7lAuxM+ +vhV4nYWBSipX3tUZQ9rbyltHhoMLP7YNdnhzeSJesYAfz77RP1YQmCuVh6EfnWQU +YDksswBVLuT1sw5XxJFBAJw/6KXf6vb/yPCtbVKoF6ubYfwSUTXkJf2vqmqGOQ== +-----END CERTIFICATE----- + +# Issuer: CN=GlobalSign O=GlobalSign OU=GlobalSign ECC Root CA - R4 +# Subject: CN=GlobalSign O=GlobalSign OU=GlobalSign ECC Root CA - R4 +# Label: "GlobalSign ECC Root CA - R4" +# Serial: 159662223612894884239637590694 +# MD5 Fingerprint: 26:29:f8:6d:e1:88:bf:a2:65:7f:aa:c4:cd:0f:7f:fc +# SHA1 Fingerprint: 6b:a0:b0:98:e1:71:ef:5a:ad:fe:48:15:80:77:10:f4:bd:6f:0b:28 +# SHA256 Fingerprint: b0:85:d7:0b:96:4f:19:1a:73:e4:af:0d:54:ae:7a:0e:07:aa:fd:af:9b:71:dd:08:62:13:8a:b7:32:5a:24:a2 +-----BEGIN CERTIFICATE----- +MIIB3DCCAYOgAwIBAgINAgPlfvU/k/2lCSGypjAKBggqhkjOPQQDAjBQMSQwIgYD +VQQLExtHbG9iYWxTaWduIEVDQyBSb290IENBIC0gUjQxEzARBgNVBAoTCkdsb2Jh +bFNpZ24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMTIxMTEzMDAwMDAwWhcNMzgw +MTE5MDMxNDA3WjBQMSQwIgYDVQQLExtHbG9iYWxTaWduIEVDQyBSb290IENBIC0g +UjQxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2JhbFNpZ24wWTAT +BgcqhkjOPQIBBggqhkjOPQMBBwNCAAS4xnnTj2wlDp8uORkcA6SumuU5BwkWymOx +uYb4ilfBV85C+nOh92VC/x7BALJucw7/xyHlGKSq2XE/qNS5zowdo0IwQDAOBgNV +HQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUVLB7rUW44kB/ ++wpu+74zyTyjhNUwCgYIKoZIzj0EAwIDRwAwRAIgIk90crlgr/HmnKAWBVBfw147 +bmF0774BxL4YSFlhgjICICadVGNA3jdgUM/I2O2dgq43mLyjj0xMqTQrbO/7lZsm +-----END CERTIFICATE----- + +# Issuer: CN=GTS Root R1 O=Google Trust Services LLC +# Subject: CN=GTS Root R1 O=Google Trust Services LLC +# Label: "GTS Root R1" +# Serial: 159662320309726417404178440727 +# MD5 Fingerprint: 05:fe:d0:bf:71:a8:a3:76:63:da:01:e0:d8:52:dc:40 +# SHA1 Fingerprint: e5:8c:1c:c4:91:3b:38:63:4b:e9:10:6e:e3:ad:8e:6b:9d:d9:81:4a +# SHA256 Fingerprint: d9:47:43:2a:bd:e7:b7:fa:90:fc:2e:6b:59:10:1b:12:80:e0:e1:c7:e4:e4:0f:a3:c6:88:7f:ff:57:a7:f4:cf +-----BEGIN CERTIFICATE----- +MIIFVzCCAz+gAwIBAgINAgPlk28xsBNJiGuiFzANBgkqhkiG9w0BAQwFADBHMQsw +CQYDVQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEU +MBIGA1UEAxMLR1RTIFJvb3QgUjEwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAw +MDAwWjBHMQswCQYDVQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZp +Y2VzIExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjEwggIiMA0GCSqGSIb3DQEBAQUA +A4ICDwAwggIKAoICAQC2EQKLHuOhd5s73L+UPreVp0A8of2C+X0yBoJx9vaMf/vo +27xqLpeXo4xL+Sv2sfnOhB2x+cWX3u+58qPpvBKJXqeqUqv4IyfLpLGcY9vXmX7w +Cl7raKb0xlpHDU0QM+NOsROjyBhsS+z8CZDfnWQpJSMHobTSPS5g4M/SCYe7zUjw +TcLCeoiKu7rPWRnWr4+wB7CeMfGCwcDfLqZtbBkOtdh+JhpFAz2weaSUKK0Pfybl +qAj+lug8aJRT7oM6iCsVlgmy4HqMLnXWnOunVmSPlk9orj2XwoSPwLxAwAtcvfaH +szVsrBhQf4TgTM2S0yDpM7xSma8ytSmzJSq0SPly4cpk9+aCEI3oncKKiPo4Zor8 +Y/kB+Xj9e1x3+naH+uzfsQ55lVe0vSbv1gHR6xYKu44LtcXFilWr06zqkUspzBmk +MiVOKvFlRNACzqrOSbTqn3yDsEB750Orp2yjj32JgfpMpf/VjsPOS+C12LOORc92 +wO1AK/1TD7Cn1TsNsYqiA94xrcx36m97PtbfkSIS5r762DL8EGMUUXLeXdYWk70p +aDPvOmbsB4om3xPXV2V4J95eSRQAogB/mqghtqmxlbCluQ0WEdrHbEg8QOB+DVrN +VjzRlwW5y0vtOUucxD/SVRNuJLDWcfr0wbrM7Rv1/oFB2ACYPTrIrnqYNxgFlQID +AQABo0IwQDAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E +FgQU5K8rJnEaK0gnhS9SZizv8IkTcT4wDQYJKoZIhvcNAQEMBQADggIBAJ+qQibb +C5u+/x6Wki4+omVKapi6Ist9wTrYggoGxval3sBOh2Z5ofmmWJyq+bXmYOfg6LEe +QkEzCzc9zolwFcq1JKjPa7XSQCGYzyI0zzvFIoTgxQ6KfF2I5DUkzps+GlQebtuy +h6f88/qBVRRiClmpIgUxPoLW7ttXNLwzldMXG+gnoot7TiYaelpkttGsN/H9oPM4 +7HLwEXWdyzRSjeZ2axfG34arJ45JK3VmgRAhpuo+9K4l/3wV3s6MJT/KYnAK9y8J +ZgfIPxz88NtFMN9iiMG1D53Dn0reWVlHxYciNuaCp+0KueIHoI17eko8cdLiA6Ef +MgfdG+RCzgwARWGAtQsgWSl4vflVy2PFPEz0tv/bal8xa5meLMFrUKTX5hgUvYU/ +Z6tGn6D/Qqc6f1zLXbBwHSs09dR2CQzreExZBfMzQsNhFRAbd03OIozUhfJFfbdT +6u9AWpQKXCBfTkBdYiJ23//OYb2MI3jSNwLgjt7RETeJ9r/tSQdirpLsQBqvFAnZ +0E6yove+7u7Y/9waLd64NnHi/Hm3lCXRSHNboTXns5lndcEZOitHTtNCjv0xyBZm +2tIMPNuzjsmhDYAPexZ3FL//2wmUspO8IFgV6dtxQ/PeEMMA3KgqlbbC1j+Qa3bb +bP6MvPJwNQzcmRk13NfIRmPVNnGuV/u3gm3c +-----END CERTIFICATE----- + +# Issuer: CN=GTS Root R3 O=Google Trust Services LLC +# Subject: CN=GTS Root R3 O=Google Trust Services LLC +# Label: "GTS Root R3" +# Serial: 159662495401136852707857743206 +# MD5 Fingerprint: 3e:e7:9d:58:02:94:46:51:94:e5:e0:22:4a:8b:e7:73 +# SHA1 Fingerprint: ed:e5:71:80:2b:c8:92:b9:5b:83:3c:d2:32:68:3f:09:cd:a0:1e:46 +# SHA256 Fingerprint: 34:d8:a7:3e:e2:08:d9:bc:db:0d:95:65:20:93:4b:4e:40:e6:94:82:59:6e:8b:6f:73:c8:42:6b:01:0a:6f:48 +-----BEGIN CERTIFICATE----- +MIICCTCCAY6gAwIBAgINAgPluILrIPglJ209ZjAKBggqhkjOPQQDAzBHMQswCQYD +VQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIG +A1UEAxMLR1RTIFJvb3QgUjMwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAwMDAw +WjBHMQswCQYDVQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2Vz +IExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjMwdjAQBgcqhkjOPQIBBgUrgQQAIgNi +AAQfTzOHMymKoYTey8chWEGJ6ladK0uFxh1MJ7x/JlFyb+Kf1qPKzEUURout736G +jOyxfi//qXGdGIRFBEFVbivqJn+7kAHjSxm65FSWRQmx1WyRRK2EE46ajA2ADDL2 +4CejQjBAMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW +BBTB8Sa6oC2uhYHP0/EqEr24Cmf9vDAKBggqhkjOPQQDAwNpADBmAjEA9uEglRR7 +VKOQFhG/hMjqb2sXnh5GmCCbn9MN2azTL818+FsuVbu/3ZL3pAzcMeGiAjEA/Jdm +ZuVDFhOD3cffL74UOO0BzrEXGhF16b0DjyZ+hOXJYKaV11RZt+cRLInUue4X +-----END CERTIFICATE----- + +# Issuer: CN=GTS Root R4 O=Google Trust Services LLC +# Subject: CN=GTS Root R4 O=Google Trust Services LLC +# Label: "GTS Root R4" +# Serial: 159662532700760215368942768210 +# MD5 Fingerprint: 43:96:83:77:19:4d:76:b3:9d:65:52:e4:1d:22:a5:e8 +# SHA1 Fingerprint: 77:d3:03:67:b5:e0:0c:15:f6:0c:38:61:df:7c:e1:3b:92:46:4d:47 +# SHA256 Fingerprint: 34:9d:fa:40:58:c5:e2:63:12:3b:39:8a:e7:95:57:3c:4e:13:13:c8:3f:e6:8f:93:55:6c:d5:e8:03:1b:3c:7d +-----BEGIN CERTIFICATE----- +MIICCTCCAY6gAwIBAgINAgPlwGjvYxqccpBQUjAKBggqhkjOPQQDAzBHMQswCQYD +VQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIG +A1UEAxMLR1RTIFJvb3QgUjQwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAwMDAw +WjBHMQswCQYDVQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2Vz +IExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjQwdjAQBgcqhkjOPQIBBgUrgQQAIgNi +AATzdHOnaItgrkO4NcWBMHtLSZ37wWHO5t5GvWvVYRg1rkDdc/eJkTBa6zzuhXyi +QHY7qca4R9gq55KRanPpsXI5nymfopjTX15YhmUPoYRlBtHci8nHc8iMai/lxKvR +HYqjQjBAMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW +BBSATNbrdP9JNqPV2Py1PsVq8JQdjDAKBggqhkjOPQQDAwNpADBmAjEA6ED/g94D +9J+uHXqnLrmvT/aDHQ4thQEd0dlq7A/Cr8deVl5c1RxYIigL9zC2L7F8AjEA8GE8 +p/SgguMh1YQdc4acLa/KNJvxn7kjNuK8YAOdgLOaVsjh4rsUecrNIdSUtUlD +-----END CERTIFICATE----- + +# Issuer: CN=Telia Root CA v2 O=Telia Finland Oyj +# Subject: CN=Telia Root CA v2 O=Telia Finland Oyj +# Label: "Telia Root CA v2" +# Serial: 7288924052977061235122729490515358 +# MD5 Fingerprint: 0e:8f:ac:aa:82:df:85:b1:f4:dc:10:1c:fc:99:d9:48 +# SHA1 Fingerprint: b9:99:cd:d1:73:50:8a:c4:47:05:08:9c:8c:88:fb:be:a0:2b:40:cd +# SHA256 Fingerprint: 24:2b:69:74:2f:cb:1e:5b:2a:bf:98:89:8b:94:57:21:87:54:4e:5b:4d:99:11:78:65:73:62:1f:6a:74:b8:2c +-----BEGIN CERTIFICATE----- +MIIFdDCCA1ygAwIBAgIPAWdfJ9b+euPkrL4JWwWeMA0GCSqGSIb3DQEBCwUAMEQx +CzAJBgNVBAYTAkZJMRowGAYDVQQKDBFUZWxpYSBGaW5sYW5kIE95ajEZMBcGA1UE +AwwQVGVsaWEgUm9vdCBDQSB2MjAeFw0xODExMjkxMTU1NTRaFw00MzExMjkxMTU1 +NTRaMEQxCzAJBgNVBAYTAkZJMRowGAYDVQQKDBFUZWxpYSBGaW5sYW5kIE95ajEZ +MBcGA1UEAwwQVGVsaWEgUm9vdCBDQSB2MjCCAiIwDQYJKoZIhvcNAQEBBQADggIP +ADCCAgoCggIBALLQPwe84nvQa5n44ndp586dpAO8gm2h/oFlH0wnrI4AuhZ76zBq +AMCzdGh+sq/H1WKzej9Qyow2RCRj0jbpDIX2Q3bVTKFgcmfiKDOlyzG4OiIjNLh9 +vVYiQJ3q9HsDrWj8soFPmNB06o3lfc1jw6P23pLCWBnglrvFxKk9pXSW/q/5iaq9 +lRdU2HhE8Qx3FZLgmEKnpNaqIJLNwaCzlrI6hEKNfdWV5Nbb6WLEWLN5xYzTNTOD +n3WhUidhOPFZPY5Q4L15POdslv5e2QJltI5c0BE0312/UqeBAMN/mUWZFdUXyApT +7GPzmX3MaRKGwhfwAZ6/hLzRUssbkmbOpFPlob/E2wnW5olWK8jjfN7j/4nlNW4o +6GwLI1GpJQXrSPjdscr6bAhR77cYbETKJuFzxokGgeWKrLDiKca5JLNrRBH0pUPC +TEPlcDaMtjNXepUugqD0XBCzYYP2AgWGLnwtbNwDRm41k9V6lS/eINhbfpSQBGq6 +WT0EBXWdN6IOLj3rwaRSg/7Qa9RmjtzG6RJOHSpXqhC8fF6CfaamyfItufUXJ63R +DolUK5X6wK0dmBR4M0KGCqlztft0DbcbMBnEWg4cJ7faGND/isgFuvGqHKI3t+ZI +pEYslOqodmJHixBTB0hXbOKSTbauBcvcwUpej6w9GU7C7WB1K9vBykLVAgMBAAGj +YzBhMB8GA1UdIwQYMBaAFHKs5DN5qkWH9v2sHZ7Wxy+G2CQ5MB0GA1UdDgQWBBRy +rOQzeapFh/b9rB2e1scvhtgkOTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUw +AwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAoDtZpwmUPjaE0n4vOaWWl/oRrfxn83EJ +8rKJhGdEr7nv7ZbsnGTbMjBvZ5qsfl+yqwE2foH65IRe0qw24GtixX1LDoJt0nZi +0f6X+J8wfBj5tFJ3gh1229MdqfDBmgC9bXXYfef6xzijnHDoRnkDry5023X4blMM +A8iZGok1GTzTyVR8qPAs5m4HeW9q4ebqkYJpCh3DflminmtGFZhb069GHWLIzoBS +SRE/yQQSwxN8PzuKlts8oB4KtItUsiRnDe+Cy748fdHif64W1lZYudogsYMVoe+K +TTJvQS8TUoKU1xrBeKJR3Stwbbca+few4GeXVtt8YVMJAygCQMez2P2ccGrGKMOF +6eLtGpOg3kuYooQ+BXcBlj37tCAPnHICehIv1aO6UXivKitEZU61/Qrowc15h2Er +3oBXRb9n8ZuRXqWk7FlIEA04x7D6w0RtBPV4UBySllva9bguulvP5fBqnUsvWHMt +Ty3EHD70sz+rFQ47GUGKpMFXEmZxTPpT41frYpUJnlTd0cI8Vzy9OK2YZLe4A5pT +VmBds9hCG1xLEooc6+t9xnppxyd/pPiL8uSUZodL6ZQHCRJ5irLrdATczvREWeAW +ysUsWNc8e89ihmpQfTU2Zqf7N+cox9jQraVplI/owd8k+BsHMYeB2F326CjYSlKA +rBPuUBQemMc= +-----END CERTIFICATE----- + +# Issuer: CN=D-TRUST BR Root CA 1 2020 O=D-Trust GmbH +# Subject: CN=D-TRUST BR Root CA 1 2020 O=D-Trust GmbH +# Label: "D-TRUST BR Root CA 1 2020" +# Serial: 165870826978392376648679885835942448534 +# MD5 Fingerprint: b5:aa:4b:d5:ed:f7:e3:55:2e:8f:72:0a:f3:75:b8:ed +# SHA1 Fingerprint: 1f:5b:98:f0:e3:b5:f7:74:3c:ed:e6:b0:36:7d:32:cd:f4:09:41:67 +# SHA256 Fingerprint: e5:9a:aa:81:60:09:c2:2b:ff:5b:25:ba:d3:7d:f3:06:f0:49:79:7c:1f:81:d8:5a:b0:89:e6:57:bd:8f:00:44 +-----BEGIN CERTIFICATE----- +MIIC2zCCAmCgAwIBAgIQfMmPK4TX3+oPyWWa00tNljAKBggqhkjOPQQDAzBIMQsw +CQYDVQQGEwJERTEVMBMGA1UEChMMRC1UcnVzdCBHbWJIMSIwIAYDVQQDExlELVRS +VVNUIEJSIFJvb3QgQ0EgMSAyMDIwMB4XDTIwMDIxMTA5NDUwMFoXDTM1MDIxMTA5 +NDQ1OVowSDELMAkGA1UEBhMCREUxFTATBgNVBAoTDEQtVHJ1c3QgR21iSDEiMCAG +A1UEAxMZRC1UUlVTVCBCUiBSb290IENBIDEgMjAyMDB2MBAGByqGSM49AgEGBSuB +BAAiA2IABMbLxyjR+4T1mu9CFCDhQ2tuda38KwOE1HaTJddZO0Flax7mNCq7dPYS +zuht56vkPE4/RAiLzRZxy7+SmfSk1zxQVFKQhYN4lGdnoxwJGT11NIXe7WB9xwy0 +QVK5buXuQqOCAQ0wggEJMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFHOREKv/ +VbNafAkl1bK6CKBrqx9tMA4GA1UdDwEB/wQEAwIBBjCBxgYDVR0fBIG+MIG7MD6g +PKA6hjhodHRwOi8vY3JsLmQtdHJ1c3QubmV0L2NybC9kLXRydXN0X2JyX3Jvb3Rf +Y2FfMV8yMDIwLmNybDB5oHegdYZzbGRhcDovL2RpcmVjdG9yeS5kLXRydXN0Lm5l +dC9DTj1ELVRSVVNUJTIwQlIlMjBSb290JTIwQ0ElMjAxJTIwMjAyMCxPPUQtVHJ1 +c3QlMjBHbWJILEM9REU/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdDAKBggqhkjO +PQQDAwNpADBmAjEAlJAtE/rhY/hhY+ithXhUkZy4kzg+GkHaQBZTQgjKL47xPoFW +wKrY7RjEsK70PvomAjEA8yjixtsrmfu3Ubgko6SUeho/5jbiA1czijDLgsfWFBHV +dWNbFJWcHwHP2NVypw87 +-----END CERTIFICATE----- + +# Issuer: CN=D-TRUST EV Root CA 1 2020 O=D-Trust GmbH +# Subject: CN=D-TRUST EV Root CA 1 2020 O=D-Trust GmbH +# Label: "D-TRUST EV Root CA 1 2020" +# Serial: 126288379621884218666039612629459926992 +# MD5 Fingerprint: 8c:2d:9d:70:9f:48:99:11:06:11:fb:e9:cb:30:c0:6e +# SHA1 Fingerprint: 61:db:8c:21:59:69:03:90:d8:7c:9c:12:86:54:cf:9d:3d:f4:dd:07 +# SHA256 Fingerprint: 08:17:0d:1a:a3:64:53:90:1a:2f:95:92:45:e3:47:db:0c:8d:37:ab:aa:bc:56:b8:1a:a1:00:dc:95:89:70:db +-----BEGIN CERTIFICATE----- +MIIC2zCCAmCgAwIBAgIQXwJB13qHfEwDo6yWjfv/0DAKBggqhkjOPQQDAzBIMQsw +CQYDVQQGEwJERTEVMBMGA1UEChMMRC1UcnVzdCBHbWJIMSIwIAYDVQQDExlELVRS +VVNUIEVWIFJvb3QgQ0EgMSAyMDIwMB4XDTIwMDIxMTEwMDAwMFoXDTM1MDIxMTA5 +NTk1OVowSDELMAkGA1UEBhMCREUxFTATBgNVBAoTDEQtVHJ1c3QgR21iSDEiMCAG +A1UEAxMZRC1UUlVTVCBFViBSb290IENBIDEgMjAyMDB2MBAGByqGSM49AgEGBSuB +BAAiA2IABPEL3YZDIBnfl4XoIkqbz52Yv7QFJsnL46bSj8WeeHsxiamJrSc8ZRCC +/N/DnU7wMyPE0jL1HLDfMxddxfCxivnvubcUyilKwg+pf3VlSSowZ/Rk99Yad9rD +wpdhQntJraOCAQ0wggEJMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFH8QARY3 +OqQo5FD4pPfsazK2/umLMA4GA1UdDwEB/wQEAwIBBjCBxgYDVR0fBIG+MIG7MD6g +PKA6hjhodHRwOi8vY3JsLmQtdHJ1c3QubmV0L2NybC9kLXRydXN0X2V2X3Jvb3Rf +Y2FfMV8yMDIwLmNybDB5oHegdYZzbGRhcDovL2RpcmVjdG9yeS5kLXRydXN0Lm5l +dC9DTj1ELVRSVVNUJTIwRVYlMjBSb290JTIwQ0ElMjAxJTIwMjAyMCxPPUQtVHJ1 +c3QlMjBHbWJILEM9REU/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdDAKBggqhkjO +PQQDAwNpADBmAjEAyjzGKnXCXnViOTYAYFqLwZOZzNnbQTs7h5kXO9XMT8oi96CA +y/m0sRtW9XLS/BnRAjEAkfcwkz8QRitxpNA7RJvAKQIFskF3UfN5Wp6OFKBOQtJb +gfM0agPnIjhQW+0ZT0MW +-----END CERTIFICATE----- + +# Issuer: CN=DigiCert TLS ECC P384 Root G5 O=DigiCert, Inc. +# Subject: CN=DigiCert TLS ECC P384 Root G5 O=DigiCert, Inc. +# Label: "DigiCert TLS ECC P384 Root G5" +# Serial: 13129116028163249804115411775095713523 +# MD5 Fingerprint: d3:71:04:6a:43:1c:db:a6:59:e1:a8:a3:aa:c5:71:ed +# SHA1 Fingerprint: 17:f3:de:5e:9f:0f:19:e9:8e:f6:1f:32:26:6e:20:c4:07:ae:30:ee +# SHA256 Fingerprint: 01:8e:13:f0:77:25:32:cf:80:9b:d1:b1:72:81:86:72:83:fc:48:c6:e1:3b:e9:c6:98:12:85:4a:49:0c:1b:05 +-----BEGIN CERTIFICATE----- +MIICGTCCAZ+gAwIBAgIQCeCTZaz32ci5PhwLBCou8zAKBggqhkjOPQQDAzBOMQsw +CQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJjAkBgNVBAMTHURp +Z2lDZXJ0IFRMUyBFQ0MgUDM4NCBSb290IEc1MB4XDTIxMDExNTAwMDAwMFoXDTQ2 +MDExNDIzNTk1OVowTjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJ +bmMuMSYwJAYDVQQDEx1EaWdpQ2VydCBUTFMgRUNDIFAzODQgUm9vdCBHNTB2MBAG +ByqGSM49AgEGBSuBBAAiA2IABMFEoc8Rl1Ca3iOCNQfN0MsYndLxf3c1TzvdlHJS +7cI7+Oz6e2tYIOyZrsn8aLN1udsJ7MgT9U7GCh1mMEy7H0cKPGEQQil8pQgO4CLp +0zVozptjn4S1mU1YoI71VOeVyaNCMEAwHQYDVR0OBBYEFMFRRVBZqz7nLFr6ICIS +B4CIfBFqMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MAoGCCqGSM49 +BAMDA2gAMGUCMQCJao1H5+z8blUD2WdsJk6Dxv3J+ysTvLd6jLRl0mlpYxNjOyZQ +LgGheQaRnUi/wr4CMEfDFXuxoJGZSZOoPHzoRgaLLPIxAJSdYsiJvRmEFOml+wG4 +DXZDjC5Ty3zfDBeWUA== +-----END CERTIFICATE----- + +# Issuer: CN=DigiCert TLS RSA4096 Root G5 O=DigiCert, Inc. +# Subject: CN=DigiCert TLS RSA4096 Root G5 O=DigiCert, Inc. +# Label: "DigiCert TLS RSA4096 Root G5" +# Serial: 11930366277458970227240571539258396554 +# MD5 Fingerprint: ac:fe:f7:34:96:a9:f2:b3:b4:12:4b:e4:27:41:6f:e1 +# SHA1 Fingerprint: a7:88:49:dc:5d:7c:75:8c:8c:de:39:98:56:b3:aa:d0:b2:a5:71:35 +# SHA256 Fingerprint: 37:1a:00:dc:05:33:b3:72:1a:7e:eb:40:e8:41:9e:70:79:9d:2b:0a:0f:2c:1d:80:69:31:65:f7:ce:c4:ad:75 +-----BEGIN CERTIFICATE----- +MIIFZjCCA06gAwIBAgIQCPm0eKj6ftpqMzeJ3nzPijANBgkqhkiG9w0BAQwFADBN +MQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJTAjBgNVBAMT +HERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwHhcNMjEwMTE1MDAwMDAwWhcN +NDYwMTE0MjM1OTU5WjBNMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQs +IEluYy4xJTAjBgNVBAMTHERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwggIi +MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCz0PTJeRGd/fxmgefM1eS87IE+ +ajWOLrfn3q/5B03PMJ3qCQuZvWxX2hhKuHisOjmopkisLnLlvevxGs3npAOpPxG0 +2C+JFvuUAT27L/gTBaF4HI4o4EXgg/RZG5Wzrn4DReW+wkL+7vI8toUTmDKdFqgp +wgscONyfMXdcvyej/Cestyu9dJsXLfKB2l2w4SMXPohKEiPQ6s+d3gMXsUJKoBZM +pG2T6T867jp8nVid9E6P/DsjyG244gXazOvswzH016cpVIDPRFtMbzCe88zdH5RD +nU1/cHAN1DrRN/BsnZvAFJNY781BOHW8EwOVfH/jXOnVDdXifBBiqmvwPXbzP6Po +sMH976pXTayGpxi0KcEsDr9kvimM2AItzVwv8n/vFfQMFawKsPHTDU9qTXeXAaDx +Zre3zu/O7Oyldcqs4+Fj97ihBMi8ez9dLRYiVu1ISf6nL3kwJZu6ay0/nTvEF+cd +Lvvyz6b84xQslpghjLSR6Rlgg/IwKwZzUNWYOwbpx4oMYIwo+FKbbuH2TbsGJJvX +KyY//SovcfXWJL5/MZ4PbeiPT02jP/816t9JXkGPhvnxd3lLG7SjXi/7RgLQZhNe +XoVPzthwiHvOAbWWl9fNff2C+MIkwcoBOU+NosEUQB+cZtUMCUbW8tDRSHZWOkPL +tgoRObqME2wGtZ7P6wIDAQABo0IwQDAdBgNVHQ4EFgQUUTMc7TZArxfTJc1paPKv +TiM+s0EwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcN +AQEMBQADggIBAGCmr1tfV9qJ20tQqcQjNSH/0GEwhJG3PxDPJY7Jv0Y02cEhJhxw +GXIeo8mH/qlDZJY6yFMECrZBu8RHANmfGBg7sg7zNOok992vIGCukihfNudd5N7H +PNtQOa27PShNlnx2xlv0wdsUpasZYgcYQF+Xkdycx6u1UQ3maVNVzDl92sURVXLF +O4uJ+DQtpBflF+aZfTCIITfNMBc9uPK8qHWgQ9w+iUuQrm0D4ByjoJYJu32jtyoQ +REtGBzRj7TG5BO6jm5qu5jF49OokYTurWGT/u4cnYiWB39yhL/btp/96j1EuMPik +AdKFOV8BmZZvWltwGUb+hmA+rYAQCd05JS9Yf7vSdPD3Rh9GOUrYU9DzLjtxpdRv +/PNn5AeP3SYZ4Y1b+qOTEZvpyDrDVWiakuFSdjjo4bq9+0/V77PnSIMx8IIh47a+ +p6tv75/fTM8BuGJqIz3nCU2AG3swpMPdB380vqQmsvZB6Akd4yCYqjdP//fx4ilw +MUc/dNAUFvohigLVigmUdy7yWSiLfFCSCmZ4OIN1xLVaqBHG5cGdZlXPU8Sv13WF +qUITVuwhd4GTWgzqltlJyqEI8pc7bZsEGCREjnwB8twl2F6GmrE52/WRMmrRpnCK +ovfepEWFJqgejF0pW8hL2JpqA15w8oVPbEtoL8pU9ozaMv7Da4M/OMZ+ +-----END CERTIFICATE----- + +# Issuer: CN=Certainly Root R1 O=Certainly +# Subject: CN=Certainly Root R1 O=Certainly +# Label: "Certainly Root R1" +# Serial: 188833316161142517227353805653483829216 +# MD5 Fingerprint: 07:70:d4:3e:82:87:a0:fa:33:36:13:f4:fa:33:e7:12 +# SHA1 Fingerprint: a0:50:ee:0f:28:71:f4:27:b2:12:6d:6f:50:96:25:ba:cc:86:42:af +# SHA256 Fingerprint: 77:b8:2c:d8:64:4c:43:05:f7:ac:c5:cb:15:6b:45:67:50:04:03:3d:51:c6:0c:62:02:a8:e0:c3:34:67:d3:a0 +-----BEGIN CERTIFICATE----- +MIIFRzCCAy+gAwIBAgIRAI4P+UuQcWhlM1T01EQ5t+AwDQYJKoZIhvcNAQELBQAw +PTELMAkGA1UEBhMCVVMxEjAQBgNVBAoTCUNlcnRhaW5seTEaMBgGA1UEAxMRQ2Vy +dGFpbmx5IFJvb3QgUjEwHhcNMjEwNDAxMDAwMDAwWhcNNDYwNDAxMDAwMDAwWjA9 +MQswCQYDVQQGEwJVUzESMBAGA1UEChMJQ2VydGFpbmx5MRowGAYDVQQDExFDZXJ0 +YWlubHkgUm9vdCBSMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANA2 +1B/q3avk0bbm+yLA3RMNansiExyXPGhjZjKcA7WNpIGD2ngwEc/csiu+kr+O5MQT +vqRoTNoCaBZ0vrLdBORrKt03H2As2/X3oXyVtwxwhi7xOu9S98zTm/mLvg7fMbed +aFySpvXl8wo0tf97ouSHocavFwDvA5HtqRxOcT3Si2yJ9HiG5mpJoM610rCrm/b0 +1C7jcvk2xusVtyWMOvwlDbMicyF0yEqWYZL1LwsYpfSt4u5BvQF5+paMjRcCMLT5 +r3gajLQ2EBAHBXDQ9DGQilHFhiZ5shGIXsXwClTNSaa/ApzSRKft43jvRl5tcdF5 +cBxGX1HpyTfcX35pe0HfNEXgO4T0oYoKNp43zGJS4YkNKPl6I7ENPT2a/Z2B7yyQ +wHtETrtJ4A5KVpK8y7XdeReJkd5hiXSSqOMyhb5OhaRLWcsrxXiOcVTQAjeZjOVJ +6uBUcqQRBi8LjMFbvrWhsFNunLhgkR9Za/kt9JQKl7XsxXYDVBtlUrpMklZRNaBA +2CnbrlJ2Oy0wQJuK0EJWtLeIAaSHO1OWzaMWj/Nmqhexx2DgwUMFDO6bW2BvBlyH +Wyf5QBGenDPBt+U1VwV/J84XIIwc/PH72jEpSe31C4SnT8H2TsIonPru4K8H+zMR +eiFPCyEQtkA6qyI6BJyLm4SGcprSp6XEtHWRqSsjAgMBAAGjQjBAMA4GA1UdDwEB +/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTgqj8ljZ9EXME66C6u +d0yEPmcM9DANBgkqhkiG9w0BAQsFAAOCAgEAuVevuBLaV4OPaAszHQNTVfSVcOQr +PbA56/qJYv331hgELyE03fFo8NWWWt7CgKPBjcZq91l3rhVkz1t5BXdm6ozTaw3d +8VkswTOlMIAVRQdFGjEitpIAq5lNOo93r6kiyi9jyhXWx8bwPWz8HA2YEGGeEaIi +1wrykXprOQ4vMMM2SZ/g6Q8CRFA3lFV96p/2O7qUpUzpvD5RtOjKkjZUbVwlKNrd +rRT90+7iIgXr0PK3aBLXWopBGsaSpVo7Y0VPv+E6dyIvXL9G+VoDhRNCX8reU9di +taY1BMJH/5n9hN9czulegChB8n3nHpDYT3Y+gjwN/KUD+nsa2UUeYNrEjvn8K8l7 +lcUq/6qJ34IxD3L/DCfXCh5WAFAeDJDBlrXYFIW7pw0WwfgHJBu6haEaBQmAupVj +yTrsJZ9/nbqkRxWbRHDxakvWOF5D8xh+UG7pWijmZeZ3Gzr9Hb4DJqPb1OG7fpYn +Kx3upPvaJVQTA945xsMfTZDsjxtK0hzthZU4UHlG1sGQUDGpXJpuHfUzVounmdLy +yCwzk5Iwx06MZTMQZBf9JBeW0Y3COmor6xOLRPIh80oat3df1+2IpHLlOR+Vnb5n +wXARPbv0+Em34yaXOp/SX3z7wJl8OSngex2/DaeP0ik0biQVy96QXr8axGbqwua6 +OV+KmalBWQewLK8= +-----END CERTIFICATE----- + +# Issuer: CN=Certainly Root E1 O=Certainly +# Subject: CN=Certainly Root E1 O=Certainly +# Label: "Certainly Root E1" +# Serial: 8168531406727139161245376702891150584 +# MD5 Fingerprint: 0a:9e:ca:cd:3e:52:50:c6:36:f3:4b:a3:ed:a7:53:e9 +# SHA1 Fingerprint: f9:e1:6d:dc:01:89:cf:d5:82:45:63:3e:c5:37:7d:c2:eb:93:6f:2b +# SHA256 Fingerprint: b4:58:5f:22:e4:ac:75:6a:4e:86:12:a1:36:1c:5d:9d:03:1a:93:fd:84:fe:bb:77:8f:a3:06:8b:0f:c4:2d:c2 +-----BEGIN CERTIFICATE----- +MIIB9zCCAX2gAwIBAgIQBiUzsUcDMydc+Y2aub/M+DAKBggqhkjOPQQDAzA9MQsw +CQYDVQQGEwJVUzESMBAGA1UEChMJQ2VydGFpbmx5MRowGAYDVQQDExFDZXJ0YWlu +bHkgUm9vdCBFMTAeFw0yMTA0MDEwMDAwMDBaFw00NjA0MDEwMDAwMDBaMD0xCzAJ +BgNVBAYTAlVTMRIwEAYDVQQKEwlDZXJ0YWlubHkxGjAYBgNVBAMTEUNlcnRhaW5s +eSBSb290IEUxMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE3m/4fxzf7flHh4axpMCK ++IKXgOqPyEpeKn2IaKcBYhSRJHpcnqMXfYqGITQYUBsQ3tA3SybHGWCA6TS9YBk2 +QNYphwk8kXr2vBMj3VlOBF7PyAIcGFPBMdjaIOlEjeR2o0IwQDAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU8ygYy2R17ikq6+2uI1g4 +hevIIgcwCgYIKoZIzj0EAwMDaAAwZQIxALGOWiDDshliTd6wT99u0nCK8Z9+aozm +ut6Dacpps6kFtZaSF4fC0urQe87YQVt8rgIwRt7qy12a7DLCZRawTDBcMPPaTnOG +BtjOiQRINzf43TNRnXCve1XYAS59BWQOhriR +-----END CERTIFICATE----- + +# Issuer: CN=Security Communication ECC RootCA1 O=SECOM Trust Systems CO.,LTD. +# Subject: CN=Security Communication ECC RootCA1 O=SECOM Trust Systems CO.,LTD. +# Label: "Security Communication ECC RootCA1" +# Serial: 15446673492073852651 +# MD5 Fingerprint: 7e:43:b0:92:68:ec:05:43:4c:98:ab:5d:35:2e:7e:86 +# SHA1 Fingerprint: b8:0e:26:a9:bf:d2:b2:3b:c0:ef:46:c9:ba:c7:bb:f6:1d:0d:41:41 +# SHA256 Fingerprint: e7:4f:bd:a5:5b:d5:64:c4:73:a3:6b:44:1a:a7:99:c8:a6:8e:07:74:40:e8:28:8b:9f:a1:e5:0e:4b:ba:ca:11 +-----BEGIN CERTIFICATE----- +MIICODCCAb6gAwIBAgIJANZdm7N4gS7rMAoGCCqGSM49BAMDMGExCzAJBgNVBAYT +AkpQMSUwIwYDVQQKExxTRUNPTSBUcnVzdCBTeXN0ZW1zIENPLixMVEQuMSswKQYD +VQQDEyJTZWN1cml0eSBDb21tdW5pY2F0aW9uIEVDQyBSb290Q0ExMB4XDTE2MDYx +NjA1MTUyOFoXDTM4MDExODA1MTUyOFowYTELMAkGA1UEBhMCSlAxJTAjBgNVBAoT +HFNFQ09NIFRydXN0IFN5c3RlbXMgQ08uLExURC4xKzApBgNVBAMTIlNlY3VyaXR5 +IENvbW11bmljYXRpb24gRUNDIFJvb3RDQTEwdjAQBgcqhkjOPQIBBgUrgQQAIgNi +AASkpW9gAwPDvTH00xecK4R1rOX9PVdu12O/5gSJko6BnOPpR27KkBLIE+Cnnfdl +dB9sELLo5OnvbYUymUSxXv3MdhDYW72ixvnWQuRXdtyQwjWpS4g8EkdtXP9JTxpK +ULGjQjBAMB0GA1UdDgQWBBSGHOf+LaVKiwj+KBH6vqNm+GBZLzAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjAVXUI9/Lbu +9zuxNuie9sRGKEkz0FhDKmMpzE2xtHqiuQ04pV1IKv3LsnNdo4gIxwwCMQDAqy0O +be0YottT6SXbVQjgUMzfRGEWgqtJsLKB7HOHeLRMsmIbEvoWTSVLY70eN9k= +-----END CERTIFICATE----- + +# Issuer: CN=BJCA Global Root CA1 O=BEIJING CERTIFICATE AUTHORITY +# Subject: CN=BJCA Global Root CA1 O=BEIJING CERTIFICATE AUTHORITY +# Label: "BJCA Global Root CA1" +# Serial: 113562791157148395269083148143378328608 +# MD5 Fingerprint: 42:32:99:76:43:33:36:24:35:07:82:9b:28:f9:d0:90 +# SHA1 Fingerprint: d5:ec:8d:7b:4c:ba:79:f4:e7:e8:cb:9d:6b:ae:77:83:10:03:21:6a +# SHA256 Fingerprint: f3:89:6f:88:fe:7c:0a:88:27:66:a7:fa:6a:d2:74:9f:b5:7a:7f:3e:98:fb:76:9c:1f:a7:b0:9c:2c:44:d5:ae +-----BEGIN CERTIFICATE----- +MIIFdDCCA1ygAwIBAgIQVW9l47TZkGobCdFsPsBsIDANBgkqhkiG9w0BAQsFADBU +MQswCQYDVQQGEwJDTjEmMCQGA1UECgwdQkVJSklORyBDRVJUSUZJQ0FURSBBVVRI +T1JJVFkxHTAbBgNVBAMMFEJKQ0EgR2xvYmFsIFJvb3QgQ0ExMB4XDTE5MTIxOTAz +MTYxN1oXDTQ0MTIxMjAzMTYxN1owVDELMAkGA1UEBhMCQ04xJjAkBgNVBAoMHUJF +SUpJTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZMR0wGwYDVQQDDBRCSkNBIEdsb2Jh +bCBSb290IENBMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAPFmCL3Z +xRVhy4QEQaVpN3cdwbB7+sN3SJATcmTRuHyQNZ0YeYjjlwE8R4HyDqKYDZ4/N+AZ +spDyRhySsTphzvq3Rp4Dhtczbu33RYx2N95ulpH3134rhxfVizXuhJFyV9xgw8O5 +58dnJCNPYwpj9mZ9S1WnP3hkSWkSl+BMDdMJoDIwOvqfwPKcxRIqLhy1BDPapDgR +at7GGPZHOiJBhyL8xIkoVNiMpTAK+BcWyqw3/XmnkRd4OJmtWO2y3syJfQOcs4ll +5+M7sSKGjwZteAf9kRJ/sGsciQ35uMt0WwfCyPQ10WRjeulumijWML3mG90Vr4Tq +nMfK9Q7q8l0ph49pczm+LiRvRSGsxdRpJQaDrXpIhRMsDQa4bHlW/KNnMoH1V6XK +V0Jp6VwkYe/iMBhORJhVb3rCk9gZtt58R4oRTklH2yiUAguUSiz5EtBP6DF+bHq/ +pj+bOT0CFqMYs2esWz8sgytnOYFcuX6U1WTdno9uruh8W7TXakdI136z1C2OVnZO +z2nxbkRs1CTqjSShGL+9V/6pmTW12xB3uD1IutbB5/EjPtffhZ0nPNRAvQoMvfXn +jSXWgXSHRtQpdaJCbPdzied9v3pKH9MiyRVVz99vfFXQpIsHETdfg6YmV6YBW37+ +WGgHqel62bno/1Afq8K0wM7o6v0PvY1NuLxxAgMBAAGjQjBAMB0GA1UdDgQWBBTF +7+3M2I0hxkjk49cULqcWk+WYATAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE +AwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAUoKsITQfI/Ki2Pm4rzc2IInRNwPWaZ+4 +YRC6ojGYWUfo0Q0lHhVBDOAqVdVXUsv45Mdpox1NcQJeXyFFYEhcCY5JEMEE3Kli +awLwQ8hOnThJdMkycFRtwUf8jrQ2ntScvd0g1lPJGKm1Vrl2i5VnZu69mP6u775u ++2D2/VnGKhs/I0qUJDAnyIm860Qkmss9vk/Ves6OF8tiwdneHg56/0OGNFK8YT88 +X7vZdrRTvJez/opMEi4r89fO4aL/3Xtw+zuhTaRjAv04l5U/BXCga99igUOLtFkN +SoxUnMW7gZ/NfaXvCyUeOiDbHPwfmGcCCtRzRBPbUYQaVQNW4AB+dAb/OMRyHdOo +P2gxXdMJxy6MW2Pg6Nwe0uxhHvLe5e/2mXZgLR6UcnHGCyoyx5JO1UbXHfmpGQrI ++pXObSOYqgs4rZpWDW+N8TEAiMEXnM0ZNjX+VVOg4DwzX5Ze4jLp3zO7Bkqp2IRz +znfSxqxx4VyjHQy7Ct9f4qNx2No3WqB4K/TUfet27fJhcKVlmtOJNBir+3I+17Q9 +eVzYH6Eze9mCUAyTF6ps3MKCuwJXNq+YJyo5UOGwifUll35HaBC07HPKs5fRJNz2 +YqAo07WjuGS3iGJCz51TzZm+ZGiPTx4SSPfSKcOYKMryMguTjClPPGAyzQWWYezy +r/6zcCwupvI= +-----END CERTIFICATE----- + +# Issuer: CN=BJCA Global Root CA2 O=BEIJING CERTIFICATE AUTHORITY +# Subject: CN=BJCA Global Root CA2 O=BEIJING CERTIFICATE AUTHORITY +# Label: "BJCA Global Root CA2" +# Serial: 58605626836079930195615843123109055211 +# MD5 Fingerprint: 5e:0a:f6:47:5f:a6:14:e8:11:01:95:3f:4d:01:eb:3c +# SHA1 Fingerprint: f4:27:86:eb:6e:b8:6d:88:31:67:02:fb:ba:66:a4:53:00:aa:7a:a6 +# SHA256 Fingerprint: 57:4d:f6:93:1e:27:80:39:66:7b:72:0a:fd:c1:60:0f:c2:7e:b6:6d:d3:09:29:79:fb:73:85:64:87:21:28:82 +-----BEGIN CERTIFICATE----- +MIICJTCCAaugAwIBAgIQLBcIfWQqwP6FGFkGz7RK6zAKBggqhkjOPQQDAzBUMQsw +CQYDVQQGEwJDTjEmMCQGA1UECgwdQkVJSklORyBDRVJUSUZJQ0FURSBBVVRIT1JJ +VFkxHTAbBgNVBAMMFEJKQ0EgR2xvYmFsIFJvb3QgQ0EyMB4XDTE5MTIxOTAzMTgy +MVoXDTQ0MTIxMjAzMTgyMVowVDELMAkGA1UEBhMCQ04xJjAkBgNVBAoMHUJFSUpJ +TkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZMR0wGwYDVQQDDBRCSkNBIEdsb2JhbCBS +b290IENBMjB2MBAGByqGSM49AgEGBSuBBAAiA2IABJ3LgJGNU2e1uVCxA/jlSR9B +IgmwUVJY1is0j8USRhTFiy8shP8sbqjV8QnjAyEUxEM9fMEsxEtqSs3ph+B99iK+ ++kpRuDCK/eHeGBIK9ke35xe/J4rUQUyWPGCWwf0VHKNCMEAwHQYDVR0OBBYEFNJK +sVF/BvDRgh9Obl+rg/xI1LCRMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD +AgEGMAoGCCqGSM49BAMDA2gAMGUCMBq8W9f+qdJUDkpd0m2xQNz0Q9XSSpkZElaA +94M04TVOSG0ED1cxMDAtsaqdAzjbBgIxAMvMh1PLet8gUXOQwKhbYdDFUDn9hf7B +43j4ptZLvZuHjw/l1lOWqzzIQNph91Oj9w== +-----END CERTIFICATE----- + +# Issuer: CN=Sectigo Public Server Authentication Root E46 O=Sectigo Limited +# Subject: CN=Sectigo Public Server Authentication Root E46 O=Sectigo Limited +# Label: "Sectigo Public Server Authentication Root E46" +# Serial: 88989738453351742415770396670917916916 +# MD5 Fingerprint: 28:23:f8:b2:98:5c:37:16:3b:3e:46:13:4e:b0:b3:01 +# SHA1 Fingerprint: ec:8a:39:6c:40:f0:2e:bc:42:75:d4:9f:ab:1c:1a:5b:67:be:d2:9a +# SHA256 Fingerprint: c9:0f:26:f0:fb:1b:40:18:b2:22:27:51:9b:5c:a2:b5:3e:2c:a5:b3:be:5c:f1:8e:fe:1b:ef:47:38:0c:53:83 +-----BEGIN CERTIFICATE----- +MIICOjCCAcGgAwIBAgIQQvLM2htpN0RfFf51KBC49DAKBggqhkjOPQQDAzBfMQsw +CQYDVQQGEwJHQjEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMTYwNAYDVQQDEy1T +ZWN0aWdvIFB1YmxpYyBTZXJ2ZXIgQXV0aGVudGljYXRpb24gUm9vdCBFNDYwHhcN +MjEwMzIyMDAwMDAwWhcNNDYwMzIxMjM1OTU5WjBfMQswCQYDVQQGEwJHQjEYMBYG +A1UEChMPU2VjdGlnbyBMaW1pdGVkMTYwNAYDVQQDEy1TZWN0aWdvIFB1YmxpYyBT +ZXJ2ZXIgQXV0aGVudGljYXRpb24gUm9vdCBFNDYwdjAQBgcqhkjOPQIBBgUrgQQA +IgNiAAR2+pmpbiDt+dd34wc7qNs9Xzjoq1WmVk/WSOrsfy2qw7LFeeyZYX8QeccC +WvkEN/U0NSt3zn8gj1KjAIns1aeibVvjS5KToID1AZTc8GgHHs3u/iVStSBDHBv+ +6xnOQ6OjQjBAMB0GA1UdDgQWBBTRItpMWfFLXyY4qp3W7usNw/upYTAOBgNVHQ8B +Af8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNnADBkAjAn7qRa +qCG76UeXlImldCBteU/IvZNeWBj7LRoAasm4PdCkT0RHlAFWovgzJQxC36oCMB3q +4S6ILuH5px0CMk7yn2xVdOOurvulGu7t0vzCAxHrRVxgED1cf5kDW21USAGKcw== +-----END CERTIFICATE----- + +# Issuer: CN=Sectigo Public Server Authentication Root R46 O=Sectigo Limited +# Subject: CN=Sectigo Public Server Authentication Root R46 O=Sectigo Limited +# Label: "Sectigo Public Server Authentication Root R46" +# Serial: 156256931880233212765902055439220583700 +# MD5 Fingerprint: 32:10:09:52:00:d5:7e:6c:43:df:15:c0:b1:16:93:e5 +# SHA1 Fingerprint: ad:98:f9:f3:e4:7d:75:3b:65:d4:82:b3:a4:52:17:bb:6e:f5:e4:38 +# SHA256 Fingerprint: 7b:b6:47:a6:2a:ee:ac:88:bf:25:7a:a5:22:d0:1f:fe:a3:95:e0:ab:45:c7:3f:93:f6:56:54:ec:38:f2:5a:06 +-----BEGIN CERTIFICATE----- +MIIFijCCA3KgAwIBAgIQdY39i658BwD6qSWn4cetFDANBgkqhkiG9w0BAQwFADBf +MQswCQYDVQQGEwJHQjEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMTYwNAYDVQQD +Ey1TZWN0aWdvIFB1YmxpYyBTZXJ2ZXIgQXV0aGVudGljYXRpb24gUm9vdCBSNDYw +HhcNMjEwMzIyMDAwMDAwWhcNNDYwMzIxMjM1OTU5WjBfMQswCQYDVQQGEwJHQjEY +MBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMTYwNAYDVQQDEy1TZWN0aWdvIFB1Ymxp +YyBTZXJ2ZXIgQXV0aGVudGljYXRpb24gUm9vdCBSNDYwggIiMA0GCSqGSIb3DQEB +AQUAA4ICDwAwggIKAoICAQCTvtU2UnXYASOgHEdCSe5jtrch/cSV1UgrJnwUUxDa +ef0rty2k1Cz66jLdScK5vQ9IPXtamFSvnl0xdE8H/FAh3aTPaE8bEmNtJZlMKpnz +SDBh+oF8HqcIStw+KxwfGExxqjWMrfhu6DtK2eWUAtaJhBOqbchPM8xQljeSM9xf +iOefVNlI8JhD1mb9nxc4Q8UBUQvX4yMPFF1bFOdLvt30yNoDN9HWOaEhUTCDsG3X +ME6WW5HwcCSrv0WBZEMNvSE6Lzzpng3LILVCJ8zab5vuZDCQOc2TZYEhMbUjUDM3 +IuM47fgxMMxF/mL50V0yeUKH32rMVhlATc6qu/m1dkmU8Sf4kaWD5QazYw6A3OAS +VYCmO2a0OYctyPDQ0RTp5A1NDvZdV3LFOxxHVp3i1fuBYYzMTYCQNFu31xR13NgE +SJ/AwSiItOkcyqex8Va3e0lMWeUgFaiEAin6OJRpmkkGj80feRQXEgyDet4fsZfu ++Zd4KKTIRJLpfSYFplhym3kT2BFfrsU4YjRosoYwjviQYZ4ybPUHNs2iTG7sijbt +8uaZFURww3y8nDnAtOFr94MlI1fZEoDlSfB1D++N6xybVCi0ITz8fAr/73trdf+L +HaAZBav6+CuBQug4urv7qv094PPK306Xlynt8xhW6aWWrL3DkJiy4Pmi1KZHQ3xt +zwIDAQABo0IwQDAdBgNVHQ4EFgQUVnNYZJX5khqwEioEYnmhQBWIIUkwDgYDVR0P +AQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAC9c +mTz8Bl6MlC5w6tIyMY208FHVvArzZJ8HXtXBc2hkeqK5Duj5XYUtqDdFqij0lgVQ +YKlJfp/imTYpE0RHap1VIDzYm/EDMrraQKFz6oOht0SmDpkBm+S8f74TlH7Kph52 +gDY9hAaLMyZlbcp+nv4fjFg4exqDsQ+8FxG75gbMY/qB8oFM2gsQa6H61SilzwZA +Fv97fRheORKkU55+MkIQpiGRqRxOF3yEvJ+M0ejf5lG5Nkc/kLnHvALcWxxPDkjB +JYOcCj+esQMzEhonrPcibCTRAUH4WAP+JWgiH5paPHxsnnVI84HxZmduTILA7rpX +DhjvLpr3Etiga+kFpaHpaPi8TD8SHkXoUsCjvxInebnMMTzD9joiFgOgyY9mpFui +TdaBJQbpdqQACj7LzTWb4OE4y2BThihCQRxEV+ioratF4yUQvNs+ZUH7G6aXD+u5 +dHn5HrwdVw1Hr8Mvn4dGp+smWg9WY7ViYG4A++MnESLn/pmPNPW56MORcr3Ywx65 +LvKRRFHQV80MNNVIIb/bE/FmJUNS0nAiNs2fxBx1IK1jcmMGDw4nztJqDby1ORrp +0XZ60Vzk50lJLVU3aPAaOpg+VBeHVOmmJ1CJeyAvP/+/oYtKR5j/K3tJPsMpRmAY +QqszKbrAKbkTidOIijlBO8n9pu0f9GBj39ItVQGL +-----END CERTIFICATE----- + +# Issuer: CN=SSL.com TLS RSA Root CA 2022 O=SSL Corporation +# Subject: CN=SSL.com TLS RSA Root CA 2022 O=SSL Corporation +# Label: "SSL.com TLS RSA Root CA 2022" +# Serial: 148535279242832292258835760425842727825 +# MD5 Fingerprint: d8:4e:c6:59:30:d8:fe:a0:d6:7a:5a:2c:2c:69:78:da +# SHA1 Fingerprint: ec:2c:83:40:72:af:26:95:10:ff:0e:f2:03:ee:31:70:f6:78:9d:ca +# SHA256 Fingerprint: 8f:af:7d:2e:2c:b4:70:9b:b8:e0:b3:36:66:bf:75:a5:dd:45:b5:de:48:0f:8e:a8:d4:bf:e6:be:bc:17:f2:ed +-----BEGIN CERTIFICATE----- +MIIFiTCCA3GgAwIBAgIQb77arXO9CEDii02+1PdbkTANBgkqhkiG9w0BAQsFADBO +MQswCQYDVQQGEwJVUzEYMBYGA1UECgwPU1NMIENvcnBvcmF0aW9uMSUwIwYDVQQD +DBxTU0wuY29tIFRMUyBSU0EgUm9vdCBDQSAyMDIyMB4XDTIyMDgyNTE2MzQyMloX +DTQ2MDgxOTE2MzQyMVowTjELMAkGA1UEBhMCVVMxGDAWBgNVBAoMD1NTTCBDb3Jw +b3JhdGlvbjElMCMGA1UEAwwcU1NMLmNvbSBUTFMgUlNBIFJvb3QgQ0EgMjAyMjCC +AiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANCkCXJPQIgSYT41I57u9nTP +L3tYPc48DRAokC+X94xI2KDYJbFMsBFMF3NQ0CJKY7uB0ylu1bUJPiYYf7ISf5OY +t6/wNr/y7hienDtSxUcZXXTzZGbVXcdotL8bHAajvI9AI7YexoS9UcQbOcGV0ins +S657Lb85/bRi3pZ7QcacoOAGcvvwB5cJOYF0r/c0WRFXCsJbwST0MXMwgsadugL3 +PnxEX4MN8/HdIGkWCVDi1FW24IBydm5MR7d1VVm0U3TZlMZBrViKMWYPHqIbKUBO +L9975hYsLfy/7PO0+r4Y9ptJ1O4Fbtk085zx7AGL0SDGD6C1vBdOSHtRwvzpXGk3 +R2azaPgVKPC506QVzFpPulJwoxJF3ca6TvvC0PeoUidtbnm1jPx7jMEWTO6Af77w +dr5BUxIzrlo4QqvXDz5BjXYHMtWrifZOZ9mxQnUjbvPNQrL8VfVThxc7wDNY8VLS ++YCk8OjwO4s4zKTGkH8PnP2L0aPP2oOnaclQNtVcBdIKQXTbYxE3waWglksejBYS +d66UNHsef8JmAOSqg+qKkK3ONkRN0VHpvB/zagX9wHQfJRlAUW7qglFA35u5CCoG +AtUjHBPW6dvbxrB6y3snm/vg1UYk7RBLY0ulBY+6uB0rpvqR4pJSvezrZ5dtmi2f +gTIFZzL7SAg/2SW4BCUvAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0j +BBgwFoAU+y437uOEeicuzRk1sTN8/9REQrkwHQYDVR0OBBYEFPsuN+7jhHonLs0Z +NbEzfP/UREK5MA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAjYlt +hEUY8U+zoO9opMAdrDC8Z2awms22qyIZZtM7QbUQnRC6cm4pJCAcAZli05bg4vsM +QtfhWsSWTVTNj8pDU/0quOr4ZcoBwq1gaAafORpR2eCNJvkLTqVTJXojpBzOCBvf +R4iyrT7gJ4eLSYwfqUdYe5byiB0YrrPRpgqU+tvT5TgKa3kSM/tKWTcWQA673vWJ +DPFs0/dRa1419dvAJuoSc06pkZCmF8NsLzjUo3KUQyxi4U5cMj29TH0ZR6LDSeeW +P4+a0zvkEdiLA9z2tmBVGKaBUfPhqBVq6+AL8BQx1rmMRTqoENjwuSfr98t67wVy +lrXEj5ZzxOhWc5y8aVFjvO9nHEMaX3cZHxj4HCUp+UmZKbaSPaKDN7EgkaibMOlq +bLQjk2UEqxHzDh1TJElTHaE/nUiSEeJ9DU/1172iWD54nR4fK/4huxoTtrEoZP2w +AgDHbICivRZQIA9ygV/MlP+7mea6kMvq+cYMwq7FGc4zoWtcu358NFcXrfA/rs3q +r5nsLFR+jM4uElZI7xc7P0peYNLcdDa8pUNjyw9bowJWCZ4kLOGGgYz+qxcs+sji +Mho6/4UIyYOf8kpIEFR3N+2ivEC+5BB09+Rbu7nzifmPQdjH5FCQNYA+HLhNkNPU +98OwoX6EyneSMSy4kLGCenROmxMmtNVQZlR4rmA= +-----END CERTIFICATE----- + +# Issuer: CN=SSL.com TLS ECC Root CA 2022 O=SSL Corporation +# Subject: CN=SSL.com TLS ECC Root CA 2022 O=SSL Corporation +# Label: "SSL.com TLS ECC Root CA 2022" +# Serial: 26605119622390491762507526719404364228 +# MD5 Fingerprint: 99:d7:5c:f1:51:36:cc:e9:ce:d9:19:2e:77:71:56:c5 +# SHA1 Fingerprint: 9f:5f:d9:1a:54:6d:f5:0c:71:f0:ee:7a:bd:17:49:98:84:73:e2:39 +# SHA256 Fingerprint: c3:2f:fd:9f:46:f9:36:d1:6c:36:73:99:09:59:43:4b:9a:d6:0a:af:bb:9e:7c:f3:36:54:f1:44:cc:1b:a1:43 +-----BEGIN CERTIFICATE----- +MIICOjCCAcCgAwIBAgIQFAP1q/s3ixdAW+JDsqXRxDAKBggqhkjOPQQDAzBOMQsw +CQYDVQQGEwJVUzEYMBYGA1UECgwPU1NMIENvcnBvcmF0aW9uMSUwIwYDVQQDDBxT +U0wuY29tIFRMUyBFQ0MgUm9vdCBDQSAyMDIyMB4XDTIyMDgyNTE2MzM0OFoXDTQ2 +MDgxOTE2MzM0N1owTjELMAkGA1UEBhMCVVMxGDAWBgNVBAoMD1NTTCBDb3Jwb3Jh +dGlvbjElMCMGA1UEAwwcU1NMLmNvbSBUTFMgRUNDIFJvb3QgQ0EgMjAyMjB2MBAG +ByqGSM49AgEGBSuBBAAiA2IABEUpNXP6wrgjzhR9qLFNoFs27iosU8NgCTWyJGYm +acCzldZdkkAZDsalE3D07xJRKF3nzL35PIXBz5SQySvOkkJYWWf9lCcQZIxPBLFN +SeR7T5v15wj4A4j3p8OSSxlUgaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSME +GDAWgBSJjy+j6CugFFR781a4Jl9nOAuc0DAdBgNVHQ4EFgQUiY8vo+groBRUe/NW +uCZfZzgLnNAwDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMDA2gAMGUCMFXjIlbp +15IkWE8elDIPDAI2wv2sdDJO4fscgIijzPvX6yv/N33w7deedWo1dlJF4AIxAMeN +b0Igj762TVntd00pxCAgRWSGOlDGxK0tk/UYfXLtqc/ErFc2KAhl3zx5Zn6g6g== +-----END CERTIFICATE----- + +# Issuer: CN=Atos TrustedRoot Root CA ECC TLS 2021 O=Atos +# Subject: CN=Atos TrustedRoot Root CA ECC TLS 2021 O=Atos +# Label: "Atos TrustedRoot Root CA ECC TLS 2021" +# Serial: 81873346711060652204712539181482831616 +# MD5 Fingerprint: 16:9f:ad:f1:70:ad:79:d6:ed:29:b4:d1:c5:79:70:a8 +# SHA1 Fingerprint: 9e:bc:75:10:42:b3:02:f3:81:f4:f7:30:62:d4:8f:c3:a7:51:b2:dd +# SHA256 Fingerprint: b2:fa:e5:3e:14:cc:d7:ab:92:12:06:47:01:ae:27:9c:1d:89:88:fa:cb:77:5f:a8:a0:08:91:4e:66:39:88:a8 +-----BEGIN CERTIFICATE----- +MIICFTCCAZugAwIBAgIQPZg7pmY9kGP3fiZXOATvADAKBggqhkjOPQQDAzBMMS4w +LAYDVQQDDCVBdG9zIFRydXN0ZWRSb290IFJvb3QgQ0EgRUNDIFRMUyAyMDIxMQ0w +CwYDVQQKDARBdG9zMQswCQYDVQQGEwJERTAeFw0yMTA0MjIwOTI2MjNaFw00MTA0 +MTcwOTI2MjJaMEwxLjAsBgNVBAMMJUF0b3MgVHJ1c3RlZFJvb3QgUm9vdCBDQSBF +Q0MgVExTIDIwMjExDTALBgNVBAoMBEF0b3MxCzAJBgNVBAYTAkRFMHYwEAYHKoZI +zj0CAQYFK4EEACIDYgAEloZYKDcKZ9Cg3iQZGeHkBQcfl+3oZIK59sRxUM6KDP/X +tXa7oWyTbIOiaG6l2b4siJVBzV3dscqDY4PMwL502eCdpO5KTlbgmClBk1IQ1SQ4 +AjJn8ZQSb+/Xxd4u/RmAo0IwQDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBR2 +KCXWfeBmmnoJsmo7jjPXNtNPojAOBgNVHQ8BAf8EBAMCAYYwCgYIKoZIzj0EAwMD +aAAwZQIwW5kp85wxtolrbNa9d+F851F+uDrNozZffPc8dz7kUK2o59JZDCaOMDtu +CCrCp1rIAjEAmeMM56PDr9NJLkaCI2ZdyQAUEv049OGYa3cpetskz2VAv9LcjBHo +9H1/IISpQuQo +-----END CERTIFICATE----- + +# Issuer: CN=Atos TrustedRoot Root CA RSA TLS 2021 O=Atos +# Subject: CN=Atos TrustedRoot Root CA RSA TLS 2021 O=Atos +# Label: "Atos TrustedRoot Root CA RSA TLS 2021" +# Serial: 111436099570196163832749341232207667876 +# MD5 Fingerprint: d4:d3:46:b8:9a:c0:9c:76:5d:9e:3a:c3:b9:99:31:d2 +# SHA1 Fingerprint: 18:52:3b:0d:06:37:e4:d6:3a:df:23:e4:98:fb:5b:16:fb:86:74:48 +# SHA256 Fingerprint: 81:a9:08:8e:a5:9f:b3:64:c5:48:a6:f8:55:59:09:9b:6f:04:05:ef:bf:18:e5:32:4e:c9:f4:57:ba:00:11:2f +-----BEGIN CERTIFICATE----- +MIIFZDCCA0ygAwIBAgIQU9XP5hmTC/srBRLYwiqipDANBgkqhkiG9w0BAQwFADBM +MS4wLAYDVQQDDCVBdG9zIFRydXN0ZWRSb290IFJvb3QgQ0EgUlNBIFRMUyAyMDIx +MQ0wCwYDVQQKDARBdG9zMQswCQYDVQQGEwJERTAeFw0yMTA0MjIwOTIxMTBaFw00 +MTA0MTcwOTIxMDlaMEwxLjAsBgNVBAMMJUF0b3MgVHJ1c3RlZFJvb3QgUm9vdCBD +QSBSU0EgVExTIDIwMjExDTALBgNVBAoMBEF0b3MxCzAJBgNVBAYTAkRFMIICIjAN +BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtoAOxHm9BYx9sKOdTSJNy/BBl01Z +4NH+VoyX8te9j2y3I49f1cTYQcvyAh5x5en2XssIKl4w8i1mx4QbZFc4nXUtVsYv +Ye+W/CBGvevUez8/fEc4BKkbqlLfEzfTFRVOvV98r61jx3ncCHvVoOX3W3WsgFWZ +kmGbzSoXfduP9LVq6hdKZChmFSlsAvFr1bqjM9xaZ6cF4r9lthawEO3NUDPJcFDs +GY6wx/J0W2tExn2WuZgIWWbeKQGb9Cpt0xU6kGpn8bRrZtkh68rZYnxGEFzedUln +nkL5/nWpo63/dgpnQOPF943HhZpZnmKaau1Fh5hnstVKPNe0OwANwI8f4UDErmwh +3El+fsqyjW22v5MvoVw+j8rtgI5Y4dtXz4U2OLJxpAmMkokIiEjxQGMYsluMWuPD +0xeqqxmjLBvk1cbiZnrXghmmOxYsL3GHX0WelXOTwkKBIROW1527k2gV+p2kHYzy +geBYBr3JtuP2iV2J+axEoctr+hbxx1A9JNr3w+SH1VbxT5Aw+kUJWdo0zuATHAR8 +ANSbhqRAvNncTFd+rrcztl524WWLZt+NyteYr842mIycg5kDcPOvdO3GDjbnvezB +c6eUWsuSZIKmAMFwoW4sKeFYV+xafJlrJaSQOoD0IJ2azsct+bJLKZWD6TWNp0lI +pw9MGZHQ9b8Q4HECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU +dEmZ0f+0emhFdcN+tNzMzjkz2ggwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEB +DAUAA4ICAQAjQ1MkYlxt/T7Cz1UAbMVWiLkO3TriJQ2VSpfKgInuKs1l+NsW4AmS +4BjHeJi78+xCUvuppILXTdiK/ORO/auQxDh1MoSf/7OwKwIzNsAQkG8dnK/haZPs +o0UvFJ/1TCplQ3IM98P4lYsU84UgYt1UU90s3BiVaU+DR3BAM1h3Egyi61IxHkzJ +qM7F78PRreBrAwA0JrRUITWXAdxfG/F851X6LWh3e9NpzNMOa7pNdkTWwhWaJuyw +xfW70Xp0wmzNxbVe9kzmWy2B27O3Opee7c9GslA9hGCZcbUztVdF5kJHdWoOsAgM +rr3e97sPWD2PAzHoPYJQyi9eDF20l74gNAf0xBLh7tew2VktafcxBPTy+av5EzH4 +AXcOPUIjJsyacmdRIXrMPIWo6iFqO9taPKU0nprALN+AnCng33eU0aKAQv9qTFsR +0PXNor6uzFFcw9VUewyu1rkGd4Di7wcaaMxZUa1+XGdrudviB0JbuAEFWDlN5LuY +o7Ey7Nmj1m+UI/87tyll5gfp77YZ6ufCOB0yiJA8EytuzO+rdwY0d4RPcuSBhPm5 +dDTedk+SKlOxJTnbPP/lPqYO5Wue/9vsL3SD3460s6neFE3/MaNFcyT6lSnMEpcE +oji2jbDwN/zIIX8/syQbPYtuzE2wFg2WHYMfRsCbvUOZ58SWLs5fyQ== +-----END CERTIFICATE----- + +# Issuer: CN=TrustAsia Global Root CA G3 O=TrustAsia Technologies, Inc. +# Subject: CN=TrustAsia Global Root CA G3 O=TrustAsia Technologies, Inc. +# Label: "TrustAsia Global Root CA G3" +# Serial: 576386314500428537169965010905813481816650257167 +# MD5 Fingerprint: 30:42:1b:b7:bb:81:75:35:e4:16:4f:53:d2:94:de:04 +# SHA1 Fingerprint: 63:cf:b6:c1:27:2b:56:e4:88:8e:1c:23:9a:b6:2e:81:47:24:c3:c7 +# SHA256 Fingerprint: e0:d3:22:6a:eb:11:63:c2:e4:8f:f9:be:3b:50:b4:c6:43:1b:e7:bb:1e:ac:c5:c3:6b:5d:5e:c5:09:03:9a:08 +-----BEGIN CERTIFICATE----- +MIIFpTCCA42gAwIBAgIUZPYOZXdhaqs7tOqFhLuxibhxkw8wDQYJKoZIhvcNAQEM +BQAwWjELMAkGA1UEBhMCQ04xJTAjBgNVBAoMHFRydXN0QXNpYSBUZWNobm9sb2dp +ZXMsIEluYy4xJDAiBgNVBAMMG1RydXN0QXNpYSBHbG9iYWwgUm9vdCBDQSBHMzAe +Fw0yMTA1MjAwMjEwMTlaFw00NjA1MTkwMjEwMTlaMFoxCzAJBgNVBAYTAkNOMSUw +IwYDVQQKDBxUcnVzdEFzaWEgVGVjaG5vbG9naWVzLCBJbmMuMSQwIgYDVQQDDBtU +cnVzdEFzaWEgR2xvYmFsIFJvb3QgQ0EgRzMwggIiMA0GCSqGSIb3DQEBAQUAA4IC +DwAwggIKAoICAQDAMYJhkuSUGwoqZdC+BqmHO1ES6nBBruL7dOoKjbmzTNyPtxNS +T1QY4SxzlZHFZjtqz6xjbYdT8PfxObegQ2OwxANdV6nnRM7EoYNl9lA+sX4WuDqK +AtCWHwDNBSHvBm3dIZwZQ0WhxeiAysKtQGIXBsaqvPPW5vxQfmZCHzyLpnl5hkA1 +nyDvP+uLRx+PjsXUjrYsyUQE49RDdT/VP68czH5GX6zfZBCK70bwkPAPLfSIC7Ep +qq+FqklYqL9joDiR5rPmd2jE+SoZhLsO4fWvieylL1AgdB4SQXMeJNnKziyhWTXA +yB1GJ2Faj/lN03J5Zh6fFZAhLf3ti1ZwA0pJPn9pMRJpxx5cynoTi+jm9WAPzJMs +hH/x/Gr8m0ed262IPfN2dTPXS6TIi/n1Q1hPy8gDVI+lhXgEGvNz8teHHUGf59gX +zhqcD0r83ERoVGjiQTz+LISGNzzNPy+i2+f3VANfWdP3kXjHi3dqFuVJhZBFcnAv +kV34PmVACxmZySYgWmjBNb9Pp1Hx2BErW+Canig7CjoKH8GB5S7wprlppYiU5msT +f9FkPz2ccEblooV7WIQn3MSAPmeamseaMQ4w7OYXQJXZRe0Blqq/DPNL0WP3E1jA +uPP6Z92bfW1K/zJMtSU7/xxnD4UiWQWRkUF3gdCFTIcQcf+eQxuulXUtgQIDAQAB +o2MwYTAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFEDk5PIj7zjKsK5Xf/Ih +MBY027ySMB0GA1UdDgQWBBRA5OTyI+84yrCuV3/yITAWNNu8kjAOBgNVHQ8BAf8E +BAMCAQYwDQYJKoZIhvcNAQEMBQADggIBACY7UeFNOPMyGLS0XuFlXsSUT9SnYaP4 +wM8zAQLpw6o1D/GUE3d3NZ4tVlFEbuHGLige/9rsR82XRBf34EzC4Xx8MnpmyFq2 +XFNFV1pF1AWZLy4jVe5jaN/TG3inEpQGAHUNcoTpLrxaatXeL1nHo+zSh2bbt1S1 +JKv0Q3jbSwTEb93mPmY+KfJLaHEih6D4sTNjduMNhXJEIlU/HHzp/LgV6FL6qj6j +ITk1dImmasI5+njPtqzn59ZW/yOSLlALqbUHM/Q4X6RJpstlcHboCoWASzY9M/eV +VHUl2qzEc4Jl6VL1XP04lQJqaTDFHApXB64ipCz5xUG3uOyfT0gA+QEEVcys+TIx +xHWVBqB/0Y0n3bOppHKH/lmLmnp0Ft0WpWIp6zqW3IunaFnT63eROfjXy9mPX1on +AX1daBli2MjN9LdyR75bl87yraKZk62Uy5P2EgmVtqvXO9A/EcswFi55gORngS1d +7XB4tmBZrOFdRWOPyN9yaFvqHbgB8X7754qz41SgOAngPN5C8sLtLpvzHzW2Ntjj +gKGLzZlkD8Kqq7HK9W+eQ42EVJmzbsASZthwEPEGNTNDqJwuuhQxzhB/HIbjj9LV ++Hfsm6vxL2PZQl/gZ4FkkfGXL/xuJvYz+NO1+MRiqzFRJQJ6+N1rZdVtTTDIZbpo +FGWsJwt0ivKH +-----END CERTIFICATE----- + +# Issuer: CN=TrustAsia Global Root CA G4 O=TrustAsia Technologies, Inc. +# Subject: CN=TrustAsia Global Root CA G4 O=TrustAsia Technologies, Inc. +# Label: "TrustAsia Global Root CA G4" +# Serial: 451799571007117016466790293371524403291602933463 +# MD5 Fingerprint: 54:dd:b2:d7:5f:d8:3e:ed:7c:e0:0b:2e:cc:ed:eb:eb +# SHA1 Fingerprint: 57:73:a5:61:5d:80:b2:e6:ac:38:82:fc:68:07:31:ac:9f:b5:92:5a +# SHA256 Fingerprint: be:4b:56:cb:50:56:c0:13:6a:52:6d:f4:44:50:8d:aa:36:a0:b5:4f:42:e4:ac:38:f7:2a:f4:70:e4:79:65:4c +-----BEGIN CERTIFICATE----- +MIICVTCCAdygAwIBAgIUTyNkuI6XY57GU4HBdk7LKnQV1tcwCgYIKoZIzj0EAwMw +WjELMAkGA1UEBhMCQ04xJTAjBgNVBAoMHFRydXN0QXNpYSBUZWNobm9sb2dpZXMs +IEluYy4xJDAiBgNVBAMMG1RydXN0QXNpYSBHbG9iYWwgUm9vdCBDQSBHNDAeFw0y +MTA1MjAwMjEwMjJaFw00NjA1MTkwMjEwMjJaMFoxCzAJBgNVBAYTAkNOMSUwIwYD +VQQKDBxUcnVzdEFzaWEgVGVjaG5vbG9naWVzLCBJbmMuMSQwIgYDVQQDDBtUcnVz +dEFzaWEgR2xvYmFsIFJvb3QgQ0EgRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAATx +s8045CVD5d4ZCbuBeaIVXxVjAd7Cq92zphtnS4CDr5nLrBfbK5bKfFJV4hrhPVbw +LxYI+hW8m7tH5j/uqOFMjPXTNvk4XatwmkcN4oFBButJ+bAp3TPsUKV/eSm4IJij +YzBhMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUpbtKl86zK3+kMd6Xg1mD +pm9xy94wHQYDVR0OBBYEFKW7SpfOsyt/pDHel4NZg6ZvccveMA4GA1UdDwEB/wQE +AwIBBjAKBggqhkjOPQQDAwNnADBkAjBe8usGzEkxn0AAbbd+NvBNEU/zy4k6LHiR +UKNbwMp1JvK/kF0LgoxgKJ/GcJpo5PECMFxYDlZ2z1jD1xCMuo6u47xkdUfFVZDj +/bpV6wfEU6s3qe4hsiFbYI89MvHVI5TWWA== +-----END CERTIFICATE----- + +# Issuer: CN=Telekom Security TLS ECC Root 2020 O=Deutsche Telekom Security GmbH +# Subject: CN=Telekom Security TLS ECC Root 2020 O=Deutsche Telekom Security GmbH +# Label: "Telekom Security TLS ECC Root 2020" +# Serial: 72082518505882327255703894282316633856 +# MD5 Fingerprint: c1:ab:fe:6a:10:2c:03:8d:bc:1c:22:32:c0:85:a7:fd +# SHA1 Fingerprint: c0:f8:96:c5:a9:3b:01:06:21:07:da:18:42:48:bc:e9:9d:88:d5:ec +# SHA256 Fingerprint: 57:8a:f4:de:d0:85:3f:4e:59:98:db:4a:ea:f9:cb:ea:8d:94:5f:60:b6:20:a3:8d:1a:3c:13:b2:bc:7b:a8:e1 +-----BEGIN CERTIFICATE----- +MIICQjCCAcmgAwIBAgIQNjqWjMlcsljN0AFdxeVXADAKBggqhkjOPQQDAzBjMQsw +CQYDVQQGEwJERTEnMCUGA1UECgweRGV1dHNjaGUgVGVsZWtvbSBTZWN1cml0eSBH +bWJIMSswKQYDVQQDDCJUZWxla29tIFNlY3VyaXR5IFRMUyBFQ0MgUm9vdCAyMDIw +MB4XDTIwMDgyNTA3NDgyMFoXDTQ1MDgyNTIzNTk1OVowYzELMAkGA1UEBhMCREUx +JzAlBgNVBAoMHkRldXRzY2hlIFRlbGVrb20gU2VjdXJpdHkgR21iSDErMCkGA1UE +AwwiVGVsZWtvbSBTZWN1cml0eSBUTFMgRUNDIFJvb3QgMjAyMDB2MBAGByqGSM49 +AgEGBSuBBAAiA2IABM6//leov9Wq9xCazbzREaK9Z0LMkOsVGJDZos0MKiXrPk/O +tdKPD/M12kOLAoC+b1EkHQ9rK8qfwm9QMuU3ILYg/4gND21Ju9sGpIeQkpT0CdDP +f8iAC8GXs7s1J8nCG6NCMEAwHQYDVR0OBBYEFONyzG6VmUex5rNhTNHLq+O6zd6f +MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMAoGCCqGSM49BAMDA2cA +MGQCMHVSi7ekEE+uShCLsoRbQuHmKjYC2qBuGT8lv9pZMo7k+5Dck2TOrbRBR2Di +z6fLHgIwN0GMZt9Ba9aDAEH9L1r3ULRn0SyocddDypwnJJGDSA3PzfdUga/sf+Rn +27iQ7t0l +-----END CERTIFICATE----- + +# Issuer: CN=Telekom Security TLS RSA Root 2023 O=Deutsche Telekom Security GmbH +# Subject: CN=Telekom Security TLS RSA Root 2023 O=Deutsche Telekom Security GmbH +# Label: "Telekom Security TLS RSA Root 2023" +# Serial: 44676229530606711399881795178081572759 +# MD5 Fingerprint: bf:5b:eb:54:40:cd:48:71:c4:20:8d:7d:de:0a:42:f2 +# SHA1 Fingerprint: 54:d3:ac:b3:bd:57:56:f6:85:9d:ce:e5:c3:21:e2:d4:ad:83:d0:93 +# SHA256 Fingerprint: ef:c6:5c:ad:bb:59:ad:b6:ef:e8:4d:a2:23:11:b3:56:24:b7:1b:3b:1e:a0:da:8b:66:55:17:4e:c8:97:86:46 +-----BEGIN CERTIFICATE----- +MIIFszCCA5ugAwIBAgIQIZxULej27HF3+k7ow3BXlzANBgkqhkiG9w0BAQwFADBj +MQswCQYDVQQGEwJERTEnMCUGA1UECgweRGV1dHNjaGUgVGVsZWtvbSBTZWN1cml0 +eSBHbWJIMSswKQYDVQQDDCJUZWxla29tIFNlY3VyaXR5IFRMUyBSU0EgUm9vdCAy +MDIzMB4XDTIzMDMyODEyMTY0NVoXDTQ4MDMyNzIzNTk1OVowYzELMAkGA1UEBhMC +REUxJzAlBgNVBAoMHkRldXRzY2hlIFRlbGVrb20gU2VjdXJpdHkgR21iSDErMCkG +A1UEAwwiVGVsZWtvbSBTZWN1cml0eSBUTFMgUlNBIFJvb3QgMjAyMzCCAiIwDQYJ +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAO01oYGA88tKaVvC+1GDrib94W7zgRJ9 +cUD/h3VCKSHtgVIs3xLBGYSJwb3FKNXVS2xE1kzbB5ZKVXrKNoIENqil/Cf2SfHV +cp6R+SPWcHu79ZvB7JPPGeplfohwoHP89v+1VmLhc2o0mD6CuKyVU/QBoCcHcqMA +U6DksquDOFczJZSfvkgdmOGjup5czQRxUX11eKvzWarE4GC+j4NSuHUaQTXtvPM6 +Y+mpFEXX5lLRbtLevOP1Czvm4MS9Q2QTps70mDdsipWol8hHD/BeEIvnHRz+sTug +BTNoBUGCwQMrAcjnj02r6LX2zWtEtefdi+zqJbQAIldNsLGyMcEWzv/9FIS3R/qy +8XDe24tsNlikfLMR0cN3f1+2JeANxdKz+bi4d9s3cXFH42AYTyS2dTd4uaNir73J +co4vzLuu2+QVUhkHM/tqty1LkCiCc/4YizWN26cEar7qwU02OxY2kTLvtkCJkUPg +8qKrBC7m8kwOFjQgrIfBLX7JZkcXFBGk8/ehJImr2BrIoVyxo/eMbcgByU/J7MT8 +rFEz0ciD0cmfHdRHNCk+y7AO+oMLKFjlKdw/fKifybYKu6boRhYPluV75Gp6SG12 +mAWl3G0eQh5C2hrgUve1g8Aae3g1LDj1H/1Joy7SWWO/gLCMk3PLNaaZlSJhZQNg ++y+TS/qanIA7AgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUtqeX +gj10hZv3PJ+TmpV5dVKMbUcwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBS2 +p5eCPXSFm/c8n5OalXl1UoxtRzANBgkqhkiG9w0BAQwFAAOCAgEAqMxhpr51nhVQ +pGv7qHBFfLp+sVr8WyP6Cnf4mHGCDG3gXkaqk/QeoMPhk9tLrbKmXauw1GLLXrtm +9S3ul0A8Yute1hTWjOKWi0FpkzXmuZlrYrShF2Y0pmtjxrlO8iLpWA1WQdH6DErw +M807u20hOq6OcrXDSvvpfeWxm4bu4uB9tPcy/SKE8YXJN3nptT+/XOR0so8RYgDd +GGah2XsjX/GO1WfoVNpbOms2b/mBsTNHM3dA+VKq3dSDz4V4mZqTuXNnQkYRIer+ +CqkbGmVps4+uFrb2S1ayLfmlyOw7YqPta9BO1UAJpB+Y1zqlklkg5LB9zVtzaL1t +xKITDmcZuI1CfmwMmm6gJC3VRRvcxAIU/oVbZZfKTpBQCHpCNfnqwmbU+AGuHrS+ +w6jv/naaoqYfRvaE7fzbzsQCzndILIyy7MMAo+wsVRjBfhnu4S/yrYObnqsZ38aK +L4x35bcF7DvB7L6Gs4a8wPfc5+pbrrLMtTWGS9DiP7bY+A4A7l3j941Y/8+LN+lj +X273CXE2whJdV/LItM3z7gLfEdxquVeEHVlNjM7IDiPCtyaaEBRx/pOyiriA8A4Q +ntOoUAw3gi/q4Iqd4Sw5/7W0cwDk90imc6y/st53BIe0o82bNSQ3+pCTE4FCxpgm +dTdmQRCsu/WU48IxK63nI1bMNSWSs1A= +-----END CERTIFICATE----- + +# Issuer: CN=TWCA CYBER Root CA O=TAIWAN-CA OU=Root CA +# Subject: CN=TWCA CYBER Root CA O=TAIWAN-CA OU=Root CA +# Label: "TWCA CYBER Root CA" +# Serial: 85076849864375384482682434040119489222 +# MD5 Fingerprint: 0b:33:a0:97:52:95:d4:a9:fd:bb:db:6e:a3:55:5b:51 +# SHA1 Fingerprint: f6:b1:1c:1a:83:38:e9:7b:db:b3:a8:c8:33:24:e0:2d:9c:7f:26:66 +# SHA256 Fingerprint: 3f:63:bb:28:14:be:17:4e:c8:b6:43:9c:f0:8d:6d:56:f0:b7:c4:05:88:3a:56:48:a3:34:42:4d:6b:3e:c5:58 +-----BEGIN CERTIFICATE----- +MIIFjTCCA3WgAwIBAgIQQAE0jMIAAAAAAAAAATzyxjANBgkqhkiG9w0BAQwFADBQ +MQswCQYDVQQGEwJUVzESMBAGA1UEChMJVEFJV0FOLUNBMRAwDgYDVQQLEwdSb290 +IENBMRswGQYDVQQDExJUV0NBIENZQkVSIFJvb3QgQ0EwHhcNMjIxMTIyMDY1NDI5 +WhcNNDcxMTIyMTU1OTU5WjBQMQswCQYDVQQGEwJUVzESMBAGA1UEChMJVEFJV0FO +LUNBMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJUV0NBIENZQkVSIFJvb3Qg +Q0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDG+Moe2Qkgfh1sTs6P +40czRJzHyWmqOlt47nDSkvgEs1JSHWdyKKHfi12VCv7qze33Kc7wb3+szT3vsxxF +avcokPFhV8UMxKNQXd7UtcsZyoC5dc4pztKFIuwCY8xEMCDa6pFbVuYdHNWdZsc/ +34bKS1PE2Y2yHer43CdTo0fhYcx9tbD47nORxc5zb87uEB8aBs/pJ2DFTxnk684i +JkXXYJndzk834H/nY62wuFm40AZoNWDTNq5xQwTxaWV4fPMf88oon1oglWa0zbfu +j3ikRRjpJi+NmykosaS3Om251Bw4ckVYsV7r8Cibt4LK/c/WMw+f+5eesRycnupf +Xtuq3VTpMCEobY5583WSjCb+3MX2w7DfRFlDo7YDKPYIMKoNM+HvnKkHIuNZW0CP +2oi3aQiotyMuRAlZN1vH4xfyIutuOVLF3lSnmMlLIJXcRolftBL5hSmO68gnFSDA +S9TMfAxsNAwmmyYxpjyn9tnQS6Jk/zuZQXLB4HCX8SS7K8R0IrGsayIyJNN4KsDA +oS/xUgXJP+92ZuJF2A09rZXIx4kmyA+upwMu+8Ff+iDhcK2wZSA3M2Cw1a/XDBzC +kHDXShi8fgGwsOsVHkQGzaRP6AzRwyAQ4VRlnrZR0Bp2a0JaWHY06rc3Ga4udfmW +5cFZ95RXKSWNOkyrTZpB0F8mAwIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAQYwDwYD +VR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBSdhWEUfMFib5do5E83QOGt4A1WNzAd +BgNVHQ4EFgQUnYVhFHzBYm+XaORPN0DhreANVjcwDQYJKoZIhvcNAQEMBQADggIB +AGSPesRiDrWIzLjHhg6hShbNcAu3p4ULs3a2D6f/CIsLJc+o1IN1KriWiLb73y0t +tGlTITVX1olNc79pj3CjYcya2x6a4CD4bLubIp1dhDGaLIrdaqHXKGnK/nZVekZn +68xDiBaiA9a5F/gZbG0jAn/xX9AKKSM70aoK7akXJlQKTcKlTfjF/biBzysseKNn +TKkHmvPfXvt89YnNdJdhEGoHK4Fa0o635yDRIG4kqIQnoVesqlVYL9zZyvpoBJ7t +RCT5dEA7IzOrg1oYJkK2bVS1FmAwbLGg+LhBoF1JSdJlBTrq/p1hvIbZv97Tujqx +f36SNI7JAG7cmL3c7IAFrQI932XtCwP39xaEBDG6k5TY8hL4iuO/Qq+n1M0RFxbI +Qh0UqEL20kCGoE8jypZFVmAGzbdVAaYBlGX+bgUJurSkquLvWL69J1bY73NxW0Qz +8ppy6rBePm6pUlvscG21h483XjyMnM7k8M4MZ0HMzvaAq07MTFb1wWFZk7Q+ptq4 +NxKfKjLji7gh7MMrZQzvIt6IKTtM1/r+t+FHvpw+PoP7UV31aPcuIYXcv/Fa4nzX +xeSDwWrruoBa3lwtcHb4yOWHh8qgnaHlIhInD0Q9HWzq1MKLL295q39QpsQZp6F6 +t5b5wR9iWqJDB0BeJsas7a5wFsWqynKKTbDPAYsDP27X +-----END CERTIFICATE----- + +# Issuer: CN=SecureSign Root CA12 O=Cybertrust Japan Co., Ltd. +# Subject: CN=SecureSign Root CA12 O=Cybertrust Japan Co., Ltd. +# Label: "SecureSign Root CA12" +# Serial: 587887345431707215246142177076162061960426065942 +# MD5 Fingerprint: c6:89:ca:64:42:9b:62:08:49:0b:1e:7f:e9:07:3d:e8 +# SHA1 Fingerprint: 7a:22:1e:3d:de:1b:06:ac:9e:c8:47:70:16:8e:3c:e5:f7:6b:06:f4 +# SHA256 Fingerprint: 3f:03:4b:b5:70:4d:44:b2:d0:85:45:a0:20:57:de:93:eb:f3:90:5f:ce:72:1a:cb:c7:30:c0:6d:da:ee:90:4e +-----BEGIN CERTIFICATE----- +MIIDcjCCAlqgAwIBAgIUZvnHwa/swlG07VOX5uaCwysckBYwDQYJKoZIhvcNAQEL +BQAwUTELMAkGA1UEBhMCSlAxIzAhBgNVBAoTGkN5YmVydHJ1c3QgSmFwYW4gQ28u +LCBMdGQuMR0wGwYDVQQDExRTZWN1cmVTaWduIFJvb3QgQ0ExMjAeFw0yMDA0MDgw +NTM2NDZaFw00MDA0MDgwNTM2NDZaMFExCzAJBgNVBAYTAkpQMSMwIQYDVQQKExpD +eWJlcnRydXN0IEphcGFuIENvLiwgTHRkLjEdMBsGA1UEAxMUU2VjdXJlU2lnbiBS +b290IENBMTIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC6OcE3emhF +KxS06+QT61d1I02PJC0W6K6OyX2kVzsqdiUzg2zqMoqUm048luT9Ub+ZyZN+v/mt +p7JIKwccJ/VMvHASd6SFVLX9kHrko+RRWAPNEHl57muTH2SOa2SroxPjcf59q5zd +J1M3s6oYwlkm7Fsf0uZlfO+TvdhYXAvA42VvPMfKWeP+bl+sg779XSVOKik71gur +FzJ4pOE+lEa+Ym6b3kaosRbnhW70CEBFEaCeVESE99g2zvVQR9wsMJvuwPWW0v4J +hscGWa5Pro4RmHvzC1KqYiaqId+OJTN5lxZJjfU+1UefNzFJM3IFTQy2VYzxV4+K +h9GtxRESOaCtAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD +AgEGMB0GA1UdDgQWBBRXNPN0zwRL1SXm8UC2LEzZLemgrTANBgkqhkiG9w0BAQsF +AAOCAQEAPrvbFxbS8hQBICw4g0utvsqFepq2m2um4fylOqyttCg6r9cBg0krY6Ld +mmQOmFxv3Y67ilQiLUoT865AQ9tPkbeGGuwAtEGBpE/6aouIs3YIcipJQMPTw4WJ +mBClnW8Zt7vPemVV2zfrPIpyMpcemik+rY3moxtt9XUa5rBouVui7mlHJzWhhpmA +8zNL4WukJsPvdFlseqJkth5Ew1DgDzk9qTPxpfPSvWKErI4cqc1avTc7bgoitPQV +55FYxTpE05Uo2cBl6XLK0A+9H7MV2anjpEcJnuDLN/v9vZfVvhgaaaI5gdka9at/ +yOPiZwud9AzqVN/Ssq+xIvEg37xEHA== +-----END CERTIFICATE----- + +# Issuer: CN=SecureSign Root CA14 O=Cybertrust Japan Co., Ltd. +# Subject: CN=SecureSign Root CA14 O=Cybertrust Japan Co., Ltd. +# Label: "SecureSign Root CA14" +# Serial: 575790784512929437950770173562378038616896959179 +# MD5 Fingerprint: 71:0d:72:fa:92:19:65:5e:89:04:ac:16:33:f0:bc:d5 +# SHA1 Fingerprint: dd:50:c0:f7:79:b3:64:2e:74:a2:b8:9d:9f:d3:40:dd:bb:f0:f2:4f +# SHA256 Fingerprint: 4b:00:9c:10:34:49:4f:9a:b5:6b:ba:3b:a1:d6:27:31:fc:4d:20:d8:95:5a:dc:ec:10:a9:25:60:72:61:e3:38 +-----BEGIN CERTIFICATE----- +MIIFcjCCA1qgAwIBAgIUZNtaDCBO6Ncpd8hQJ6JaJ90t8sswDQYJKoZIhvcNAQEM +BQAwUTELMAkGA1UEBhMCSlAxIzAhBgNVBAoTGkN5YmVydHJ1c3QgSmFwYW4gQ28u +LCBMdGQuMR0wGwYDVQQDExRTZWN1cmVTaWduIFJvb3QgQ0ExNDAeFw0yMDA0MDgw +NzA2MTlaFw00NTA0MDgwNzA2MTlaMFExCzAJBgNVBAYTAkpQMSMwIQYDVQQKExpD +eWJlcnRydXN0IEphcGFuIENvLiwgTHRkLjEdMBsGA1UEAxMUU2VjdXJlU2lnbiBS +b290IENBMTQwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDF0nqh1oq/ +FjHQmNE6lPxauG4iwWL3pwon71D2LrGeaBLwbCRjOfHw3xDG3rdSINVSW0KZnvOg +vlIfX8xnbacuUKLBl422+JX1sLrcneC+y9/3OPJH9aaakpUqYllQC6KxNedlsmGy +6pJxaeQp8E+BgQQ8sqVb1MWoWWd7VRxJq3qdwudzTe/NCcLEVxLbAQ4jeQkHO6Lo +/IrPj8BGJJw4J+CDnRugv3gVEOuGTgpa/d/aLIJ+7sr2KeH6caH3iGicnPCNvg9J +kdjqOvn90Ghx2+m1K06Ckm9mH+Dw3EzsytHqunQG+bOEkJTRX45zGRBdAuVwpcAQ +0BB8b8VYSbSwbprafZX1zNoCr7gsfXmPvkPx+SgojQlD+Ajda8iLLCSxjVIHvXib +y8posqTdDEx5YMaZ0ZPxMBoH064iwurO8YQJzOAUbn8/ftKChazcqRZOhaBgy/ac +18izju3Gm5h1DVXoX+WViwKkrkMpKBGk5hIwAUt1ax5mnXkvpXYvHUC0bcl9eQjs +0Wq2XSqypWa9a4X0dFbD9ed1Uigspf9mR6XU/v6eVL9lfgHWMI+lNpyiUBzuOIAB +SMbHdPTGrMNASRZhdCyvjG817XsYAFs2PJxQDcqSMxDxJklt33UkN4Ii1+iW/RVL +ApY+B3KVfqs9TC7XyvDf4Fg/LS8EmjijAQIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUBpOjCl4oaTeqYR3r6/wtbyPk +86AwDQYJKoZIhvcNAQEMBQADggIBAJaAcgkGfpzMkwQWu6A6jZJOtxEaCnFxEM0E +rX+lRVAQZk5KQaID2RFPeje5S+LGjzJmdSX7684/AykmjbgWHfYfM25I5uj4V7Ib +ed87hwriZLoAymzvftAj63iP/2SbNDefNWWipAA9EiOWWF3KY4fGoweITedpdopT +zfFP7ELyk+OZpDc8h7hi2/DsHzc/N19DzFGdtfCXwreFamgLRB7lUe6TzktuhsHS +DCRZNhqfLJGP4xjblJUK7ZGqDpncllPjYYPGFrojutzdfhrGe0K22VoF3Jpf1d+4 +2kd92jjbrDnVHmtsKheMYc2xbXIBw8MgAGJoFjHVdqqGuw6qnsb58Nn4DSEC5MUo +FlkRudlpcyqSeLiSV5sI8jrlL5WwWLdrIBRtFO8KvH7YVdiI2i/6GaX7i+B/OfVy +K4XELKzvGUWSTLNhB9xNH27SgRNcmvMSZ4PPmz+Ln52kuaiWA3rF7iDeM9ovnhp6 +dB7h7sxaOgTdsxoEqBRjrLdHEoOabPXm6RUVkRqEGQ6UROcSjiVbgGcZ3GOTEAtl +Lor6CZpO2oYofaphNdgOpygau1LgePhsumywbrmHXumZNTfxPWQrqaA0k89jL9WB +365jJ6UeTo3cKXhZ+PmhIIynJkBugnLNeLLIjzwec+fBH7/PzqUqm9tEZDKgu39c +JRNItX+S +-----END CERTIFICATE----- + +# Issuer: CN=SecureSign Root CA15 O=Cybertrust Japan Co., Ltd. +# Subject: CN=SecureSign Root CA15 O=Cybertrust Japan Co., Ltd. +# Label: "SecureSign Root CA15" +# Serial: 126083514594751269499665114766174399806381178503 +# MD5 Fingerprint: 13:30:fc:c4:62:a6:a9:de:b5:c1:68:af:b5:d2:31:47 +# SHA1 Fingerprint: cb:ba:83:c8:c1:5a:5d:f1:f9:73:6f:ca:d7:ef:28:13:06:4a:07:7d +# SHA256 Fingerprint: e7:78:f0:f0:95:fe:84:37:29:cd:1a:00:82:17:9e:53:14:a9:c2:91:44:28:05:e1:fb:1d:8f:b6:b8:88:6c:3a +-----BEGIN CERTIFICATE----- +MIICIzCCAamgAwIBAgIUFhXHw9hJp75pDIqI7fBw+d23PocwCgYIKoZIzj0EAwMw +UTELMAkGA1UEBhMCSlAxIzAhBgNVBAoTGkN5YmVydHJ1c3QgSmFwYW4gQ28uLCBM +dGQuMR0wGwYDVQQDExRTZWN1cmVTaWduIFJvb3QgQ0ExNTAeFw0yMDA0MDgwODMy +NTZaFw00NTA0MDgwODMyNTZaMFExCzAJBgNVBAYTAkpQMSMwIQYDVQQKExpDeWJl +cnRydXN0IEphcGFuIENvLiwgTHRkLjEdMBsGA1UEAxMUU2VjdXJlU2lnbiBSb290 +IENBMTUwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQLUHSNZDKZmbPSYAi4Io5GdCx4 +wCtELW1fHcmuS1Iggz24FG1Th2CeX2yF2wYUleDHKP+dX+Sq8bOLbe1PL0vJSpSR +ZHX+AezB2Ot6lHhWGENfa4HL9rzatAy2KZMIaY+jQjBAMA8GA1UdEwEB/wQFMAMB +Af8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTrQciu/NWeUUj1vYv0hyCTQSvT +9DAKBggqhkjOPQQDAwNoADBlAjEA2S6Jfl5OpBEHvVnCB96rMjhTKkZEBhd6zlHp +4P9mLQlO4E/0BdGF9jVg3PVys0Z9AjBEmEYagoUeYWmJSwdLZrWeqrqgHkHZAXQ6 +bkU6iYAZezKYVWOr62Nuk22rGwlgMU4= +-----END CERTIFICATE----- + +# Issuer: CN=D-TRUST BR Root CA 2 2023 O=D-Trust GmbH +# Subject: CN=D-TRUST BR Root CA 2 2023 O=D-Trust GmbH +# Label: "D-TRUST BR Root CA 2 2023" +# Serial: 153168538924886464690566649552453098598 +# MD5 Fingerprint: e1:09:ed:d3:60:d4:56:1b:47:1f:b7:0c:5f:1b:5f:85 +# SHA1 Fingerprint: 2d:b0:70:ee:71:94:af:69:68:17:db:79:ce:58:9f:a0:6b:96:f7:87 +# SHA256 Fingerprint: 05:52:e6:f8:3f:df:65:e8:fa:96:70:e6:66:df:28:a4:e2:13:40:b5:10:cb:e5:25:66:f9:7c:4f:b9:4b:2b:d1 +-----BEGIN CERTIFICATE----- +MIIFqTCCA5GgAwIBAgIQczswBEhb2U14LnNLyaHcZjANBgkqhkiG9w0BAQ0FADBI +MQswCQYDVQQGEwJERTEVMBMGA1UEChMMRC1UcnVzdCBHbWJIMSIwIAYDVQQDExlE +LVRSVVNUIEJSIFJvb3QgQ0EgMiAyMDIzMB4XDTIzMDUwOTA4NTYzMVoXDTM4MDUw +OTA4NTYzMFowSDELMAkGA1UEBhMCREUxFTATBgNVBAoTDEQtVHJ1c3QgR21iSDEi +MCAGA1UEAxMZRC1UUlVTVCBCUiBSb290IENBIDIgMjAyMzCCAiIwDQYJKoZIhvcN +AQEBBQADggIPADCCAgoCggIBAK7/CVmRgApKaOYkP7in5Mg6CjoWzckjYaCTcfKr +i3OPoGdlYNJUa2NRb0kz4HIHE304zQaSBylSa053bATTlfrdTIzZXcFhfUvnKLNE +gXtRr90zsWh81k5M/itoucpmacTsXld/9w3HnDY25QdgrMBM6ghs7wZ8T1soegj8 +k12b9py0i4a6Ibn08OhZWiihNIQaJZG2tY/vsvmA+vk9PBFy2OMvhnbFeSzBqZCT +Rphny4NqoFAjpzv2gTng7fC5v2Xx2Mt6++9zA84A9H3X4F07ZrjcjrqDy4d2A/wl +2ecjbwb9Z/Pg/4S8R7+1FhhGaRTMBffb00msa8yr5LULQyReS2tNZ9/WtT5PeB+U +cSTq3nD88ZP+npNa5JRal1QMNXtfbO4AHyTsA7oC9Xb0n9Sa7YUsOCIvx9gvdhFP +/Wxc6PWOJ4d/GUohR5AdeY0cW/jPSoXk7bNbjb7EZChdQcRurDhaTyN0dKkSw/bS +uREVMweR2Ds3OmMwBtHFIjYoYiMQ4EbMl6zWK11kJNXuHA7e+whadSr2Y23OC0K+ +0bpwHJwh5Q8xaRfX/Aq03u2AnMuStIv13lmiWAmlY0cL4UEyNEHZmrHZqLAbWt4N +DfTisl01gLmB1IRpkQLLddCNxbU9CZEJjxShFHR5PtbJFR2kWVki3PaKRT08EtY+ +XTIvAgMBAAGjgY4wgYswDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUZ5Dw1t61 +GNVGKX5cq/ieCLxklRAwDgYDVR0PAQH/BAQDAgEGMEkGA1UdHwRCMEAwPqA8oDqG +OGh0dHA6Ly9jcmwuZC10cnVzdC5uZXQvY3JsL2QtdHJ1c3RfYnJfcm9vdF9jYV8y +XzIwMjMuY3JsMA0GCSqGSIb3DQEBDQUAA4ICAQA097N3U9swFrktpSHxQCF16+tI +FoE9c+CeJyrrd6kTpGoKWloUMz1oH4Guaf2Mn2VsNELZLdB/eBaxOqwjMa1ef67n +riv6uvw8l5VAk1/DLQOj7aRvU9f6QA4w9QAgLABMjDu0ox+2v5Eyq6+SmNMW5tTR +VFxDWy6u71cqqLRvpO8NVhTaIasgdp4D/Ca4nj8+AybmTNudX0KEPUUDAxxZiMrc +LmEkWqTqJwtzEr5SswrPMhfiHocaFpVIbVrg0M8JkiZmkdijYQ6qgYF/6FKC0ULn +4B0Y+qSFNueG4A3rvNTJ1jxD8V1Jbn6Bm2m1iWKPiFLY1/4nwSPFyysCu7Ff/vtD +hQNGvl3GyiEm/9cCnnRK3PgTFbGBVzbLZVzRHTF36SXDw7IyN9XxmAnkbWOACKsG +koHU6XCPpz+y7YaMgmo1yEJagtFSGkUPFaUA8JR7ZSdXOUPPfH/mvTWze/EZTN46 +ls/pdu4D58JDUjxqgejBWoC9EV2Ta/vH5mQ/u2kc6d0li690yVRAysuTEwrt+2aS +Ecr1wPrYg1UDfNPFIkZ1cGt5SAYqgpq/5usWDiJFAbzdNpQ0qTUmiteXue4Icr80 +knCDgKs4qllo3UCkGJCy89UDyibK79XH4I9TjvAA46jtn/mtd+ArY0+ew+43u3gJ +hJ65bvspmZDogNOfJA== +-----END CERTIFICATE----- + +# Issuer: CN=TrustAsia TLS ECC Root CA O=TrustAsia Technologies, Inc. +# Subject: CN=TrustAsia TLS ECC Root CA O=TrustAsia Technologies, Inc. +# Label: "TrustAsia TLS ECC Root CA" +# Serial: 310892014698942880364840003424242768478804666567 +# MD5 Fingerprint: 09:48:04:77:d2:fc:65:93:71:66:b1:11:95:4f:06:8c +# SHA1 Fingerprint: b5:ec:39:f3:a1:66:37:ae:c3:05:94:57:e2:be:11:be:b7:a1:7f:36 +# SHA256 Fingerprint: c0:07:6b:9e:f0:53:1f:b1:a6:56:d6:7c:4e:be:97:cd:5d:ba:a4:1e:f4:45:98:ac:c2:48:98:78:c9:2d:87:11 +-----BEGIN CERTIFICATE----- +MIICMTCCAbegAwIBAgIUNnThTXxlE8msg1UloD5Sfi9QaMcwCgYIKoZIzj0EAwMw +WDELMAkGA1UEBhMCQ04xJTAjBgNVBAoTHFRydXN0QXNpYSBUZWNobm9sb2dpZXMs +IEluYy4xIjAgBgNVBAMTGVRydXN0QXNpYSBUTFMgRUNDIFJvb3QgQ0EwHhcNMjQw +NTE1MDU0MTU2WhcNNDQwNTE1MDU0MTU1WjBYMQswCQYDVQQGEwJDTjElMCMGA1UE +ChMcVHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEiMCAGA1UEAxMZVHJ1c3RB +c2lhIFRMUyBFQ0MgUm9vdCBDQTB2MBAGByqGSM49AgEGBSuBBAAiA2IABLh/pVs/ +AT598IhtrimY4ZtcU5nb9wj/1WrgjstEpvDBjL1P1M7UiFPoXlfXTr4sP/MSpwDp +guMqWzJ8S5sUKZ74LYO1644xST0mYekdcouJtgq7nDM1D9rs3qlKH8kzsaNCMEAw +DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQULIVTu7FDzTLqnqOH/qKYqKaT6RAw +DgYDVR0PAQH/BAQDAgEGMAoGCCqGSM49BAMDA2gAMGUCMFRH18MtYYZI9HlaVQ01 +L18N9mdsd0AaRuf4aFtOJx24mH1/k78ITcTaRTChD15KeAIxAKORh/IRM4PDwYqR +OkwrULG9IpRdNYlzg8WbGf60oenUoWa2AaU2+dhoYSi3dOGiMQ== +-----END CERTIFICATE----- + +# Issuer: CN=TrustAsia TLS RSA Root CA O=TrustAsia Technologies, Inc. +# Subject: CN=TrustAsia TLS RSA Root CA O=TrustAsia Technologies, Inc. +# Label: "TrustAsia TLS RSA Root CA" +# Serial: 160405846464868906657516898462547310235378010780 +# MD5 Fingerprint: 3b:9e:c3:86:0f:34:3c:6b:c5:46:c4:8e:1d:e7:19:12 +# SHA1 Fingerprint: a5:46:50:c5:62:ea:95:9a:1a:a7:04:6f:17:58:c7:29:53:3d:03:fa +# SHA256 Fingerprint: 06:c0:8d:7d:af:d8:76:97:1e:b1:12:4f:e6:7f:84:7e:c0:c7:a1:58:d3:ea:53:cb:e9:40:e2:ea:97:91:f4:c3 +-----BEGIN CERTIFICATE----- +MIIFgDCCA2igAwIBAgIUHBjYz+VTPyI1RlNUJDxsR9FcSpwwDQYJKoZIhvcNAQEM +BQAwWDELMAkGA1UEBhMCQ04xJTAjBgNVBAoTHFRydXN0QXNpYSBUZWNobm9sb2dp +ZXMsIEluYy4xIjAgBgNVBAMTGVRydXN0QXNpYSBUTFMgUlNBIFJvb3QgQ0EwHhcN +MjQwNTE1MDU0MTU3WhcNNDQwNTE1MDU0MTU2WjBYMQswCQYDVQQGEwJDTjElMCMG +A1UEChMcVHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEiMCAGA1UEAxMZVHJ1 +c3RBc2lhIFRMUyBSU0EgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCC +AgoCggIBAMMWuBtqpERz5dZO9LnPWwvB0ZqB9WOwj0PBuwhaGnrhB3YmH49pVr7+ +NmDQDIPNlOrnxS1cLwUWAp4KqC/lYCZUlviYQB2srp10Zy9U+5RjmOMmSoPGlbYJ +Q1DNDX3eRA5gEk9bNb2/mThtfWza4mhzH/kxpRkQcwUqwzIZheo0qt1CHjCNP561 +HmHVb70AcnKtEj+qpklz8oYVlQwQX1Fkzv93uMltrOXVmPGZLmzjyUT5tUMnCE32 +ft5EebuyjBza00tsLtbDeLdM1aTk2tyKjg7/D8OmYCYozza/+lcK7Fs/6TAWe8Tb +xNRkoDD75f0dcZLdKY9BWN4ArTr9PXwaqLEX8E40eFgl1oUh63kd0Nyrz2I8sMeX +i9bQn9P+PN7F4/w6g3CEIR0JwqH8uyghZVNgepBtljhb//HXeltt08lwSUq6HTrQ +UNoyIBnkiz/r1RYmNzz7dZ6wB3C4FGB33PYPXFIKvF1tjVEK2sUYyJtt3LCDs3+j +TnhMmCWr8n4uIF6CFabW2I+s5c0yhsj55NqJ4js+k8UTav/H9xj8Z7XvGCxUq0DT +bE3txci3OE9kxJRMT6DNrqXGJyV1J23G2pyOsAWZ1SgRxSHUuPzHlqtKZFlhaxP8 +S8ySpg+kUb8OWJDZgoM5pl+z+m6Ss80zDoWo8SnTq1mt1tve1CuBAgMBAAGjQjBA +MA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFLgHkXlcBvRG/XtZylomkadFK/hT +MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQwFAAOCAgEAIZtqBSBdGBanEqT3 +Rz/NyjuujsCCztxIJXgXbODgcMTWltnZ9r96nBO7U5WS/8+S4PPFJzVXqDuiGev4 +iqME3mmL5Dw8veWv0BIb5Ylrc5tvJQJLkIKvQMKtuppgJFqBTQUYo+IzeXoLH5Pt +7DlK9RME7I10nYEKqG/odv6LTytpEoYKNDbdgptvT+Bz3Ul/KD7JO6NXBNiT2Twp +2xIQaOHEibgGIOcberyxk2GaGUARtWqFVwHxtlotJnMnlvm5P1vQiJ3koP26TpUJ +g3933FEFlJ0gcXax7PqJtZwuhfG5WyRasQmr2soaB82G39tp27RIGAAtvKLEiUUj +pQ7hRGU+isFqMB3iYPg6qocJQrmBktwliJiJ8Xw18WLK7nn4GS/+X/jbh87qqA8M +pugLoDzga5SYnH+tBuYc6kIQX+ImFTw3OffXvO645e8D7r0i+yiGNFjEWn9hongP +XvPKnbwbPKfILfanIhHKA9jnZwqKDss1jjQ52MjqjZ9k4DewbNfFj8GQYSbbJIwe +SsCI3zWQzj8C9GRh3sfIB5XeMhg6j6JCQCTl1jNdfK7vsU1P1FeQNWrcrgSXSYk0 +ly4wBOeY99sLAZDBHwo/+ML+TvrbmnNzFrwFuHnYWa8G5z9nODmxfKuU4CkUpijy +323imttUQ/hHWKNddBWcwauwxzQ= +-----END CERTIFICATE----- + +# Issuer: CN=D-TRUST EV Root CA 2 2023 O=D-Trust GmbH +# Subject: CN=D-TRUST EV Root CA 2 2023 O=D-Trust GmbH +# Label: "D-TRUST EV Root CA 2 2023" +# Serial: 139766439402180512324132425437959641711 +# MD5 Fingerprint: 96:b4:78:09:f0:09:cb:77:eb:bb:1b:4d:6f:36:bc:b6 +# SHA1 Fingerprint: a5:5b:d8:47:6c:8f:19:f7:4c:f4:6d:6b:b6:c2:79:82:22:df:54:8b +# SHA256 Fingerprint: 8e:82:21:b2:e7:d4:00:78:36:a1:67:2f:0d:cc:29:9c:33:bc:07:d3:16:f1:32:fa:1a:20:6d:58:71:50:f1:ce +-----BEGIN CERTIFICATE----- +MIIFqTCCA5GgAwIBAgIQaSYJfoBLTKCnjHhiU19abzANBgkqhkiG9w0BAQ0FADBI +MQswCQYDVQQGEwJERTEVMBMGA1UEChMMRC1UcnVzdCBHbWJIMSIwIAYDVQQDExlE +LVRSVVNUIEVWIFJvb3QgQ0EgMiAyMDIzMB4XDTIzMDUwOTA5MTAzM1oXDTM4MDUw +OTA5MTAzMlowSDELMAkGA1UEBhMCREUxFTATBgNVBAoTDEQtVHJ1c3QgR21iSDEi +MCAGA1UEAxMZRC1UUlVTVCBFViBSb290IENBIDIgMjAyMzCCAiIwDQYJKoZIhvcN +AQEBBQADggIPADCCAgoCggIBANiOo4mAC7JXUtypU0w3uX9jFxPvp1sjW2l1sJkK +F8GLxNuo4MwxusLyzV3pt/gdr2rElYfXR8mV2IIEUD2BCP/kPbOx1sWy/YgJ25yE +7CUXFId/MHibaljJtnMoPDT3mfd/06b4HEV8rSyMlD/YZxBTfiLNTiVR8CUkNRFe +EMbsh2aJgWi6zCudR3Mfvc2RpHJqnKIbGKBv7FD0fUDCqDDPvXPIEysQEx6Lmqg6 +lHPTGGkKSv/BAQP/eX+1SH977ugpbzZMlWGG2Pmic4ruri+W7mjNPU0oQvlFKzIb +RlUWaqZLKfm7lVa/Rh3sHZMdwGWyH6FDrlaeoLGPaxK3YG14C8qKXO0elg6DpkiV +jTujIcSuWMYAsoS0I6SWhjW42J7YrDRJmGOVxcttSEfi8i4YHtAxq9107PncjLgc +jmgjutDzUNzPZY9zOjLHfP7KgiJPvo5iR2blzYfi6NUPGJ/lBHJLRjwQ8kTCZFZx +TnXonMkmdMV9WdEKWw9t/p51HBjGGjp82A0EzM23RWV6sY+4roRIPrN6TagD4uJ+ +ARZZaBhDM7DS3LAaQzXupdqpRlyuhoFBAUp0JuyfBr/CBTdkdXgpaP3F9ev+R/nk +hbDhezGdpn9yo7nELC7MmVcOIQxFAZRl62UJxmMiCzNJkkg8/M3OsD6Onov4/knF +NXJHAgMBAAGjgY4wgYswDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUqvyREBuH +kV8Wub9PS5FeAByxMoAwDgYDVR0PAQH/BAQDAgEGMEkGA1UdHwRCMEAwPqA8oDqG +OGh0dHA6Ly9jcmwuZC10cnVzdC5uZXQvY3JsL2QtdHJ1c3RfZXZfcm9vdF9jYV8y +XzIwMjMuY3JsMA0GCSqGSIb3DQEBDQUAA4ICAQCTy6UfmRHsmg1fLBWTxj++EI14 +QvBukEdHjqOSMo1wj/Zbjb6JzkcBahsgIIlbyIIQbODnmaprxiqgYzWRaoUlrRc4 +pZt+UPJ26oUFKidBK7GB0aL2QHWpDsvxVUjY7NHss+jOFKE17MJeNRqrphYBBo7q +3C+jisosketSjl8MmxfPy3MHGcRqwnNU73xDUmPBEcrCRbH0O1P1aa4846XerOhU +t7KR/aypH/KH5BfGSah82ApB9PI+53c0BFLd6IHyTS9URZ0V4U/M5d40VxDJI3IX +cI1QcB9WbMy5/zpaT2N6w25lBx2Eof+pDGOJbbJAiDnXH3dotfyc1dZnaVuodNv8 +ifYbMvekJKZ2t0dT741Jj6m2g1qllpBFYfXeA08mD6iL8AOWsKwV0HFaanuU5nCT +2vFp4LJiTZ6P/4mdm13NRemUAiKN4DV/6PEEeXFsVIP4M7kFMhtYVRFP0OUnR3Hs +7dpn1mKmS00PaaLJvOwiS5THaJQXfuKOKD62xur1NGyfN4gHONuGcfrNlUhDbqNP +gofXNJhuS5N5YHVpD/Aa1VP6IQzCP+k/HxiMkl14p3ZnGbuy6n/pcAlWVqOwDAst +Nl7F6cTVg8uGF5csbBNvh1qvSaYd2804BC5f4ko1Di1L+KIkBI3Y4WNeApI02phh +XBxvWHZks/wCuPWdCg== +-----END CERTIFICATE----- + +# Issuer: CN=SwissSign RSA TLS Root CA 2022 - 1 O=SwissSign AG +# Subject: CN=SwissSign RSA TLS Root CA 2022 - 1 O=SwissSign AG +# Label: "SwissSign RSA TLS Root CA 2022 - 1" +# Serial: 388078645722908516278762308316089881486363258315 +# MD5 Fingerprint: 16:2e:e4:19:76:81:85:ba:8e:91:58:f1:15:ef:72:39 +# SHA1 Fingerprint: 81:34:0a:be:4c:cd:ce:cc:e7:7d:cc:8a:d4:57:e2:45:a0:77:5d:ce +# SHA256 Fingerprint: 19:31:44:f4:31:e0:fd:db:74:07:17:d4:de:92:6a:57:11:33:88:4b:43:60:d3:0e:27:29:13:cb:e6:60:ce:41 +-----BEGIN CERTIFICATE----- +MIIFkzCCA3ugAwIBAgIUQ/oMX04bgBhE79G0TzUfRPSA7cswDQYJKoZIhvcNAQEL +BQAwUTELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzErMCkGA1UE +AxMiU3dpc3NTaWduIFJTQSBUTFMgUm9vdCBDQSAyMDIyIC0gMTAeFw0yMjA2MDgx +MTA4MjJaFw00NzA2MDgxMTA4MjJaMFExCzAJBgNVBAYTAkNIMRUwEwYDVQQKEwxT +d2lzc1NpZ24gQUcxKzApBgNVBAMTIlN3aXNzU2lnbiBSU0EgVExTIFJvb3QgQ0Eg +MjAyMiAtIDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDLKmjiC8NX +vDVjvHClO/OMPE5Xlm7DTjak9gLKHqquuN6orx122ro10JFwB9+zBvKK8i5VUXu7 +LCTLf5ImgKO0lPaCoaTo+nUdWfMHamFk4saMla+ju45vVs9xzF6BYQ1t8qsCLqSX +5XH8irCRIFucdFJtrhUnWXjyCcplDn/L9Ovn3KlMd/YrFgSVrpxxpT8q2kFC5zyE +EPThPYxr4iuRR1VPuFa+Rd4iUU1OKNlfGUEGjw5NBuBwQCMBauTLE5tzrE0USJIt +/m2n+IdreXXhvhCxqohAWVTXz8TQm0SzOGlkjIHRI36qOTw7D59Ke4LKa2/KIj4x +0LDQKhySio/YGZxH5D4MucLNvkEM+KRHBdvBFzA4OmnczcNpI/2aDwLOEGrOyvi5 +KaM2iYauC8BPY7kGWUleDsFpswrzd34unYyzJ5jSmY0lpx+Gs6ZUcDj8fV3oT4MM +0ZPlEuRU2j7yrTrePjxF8CgPBrnh25d7mUWe3f6VWQQvdT/TromZhqwUtKiE+shd +OxtYk8EXlFXIC+OCeYSf8wCENO7cMdWP8vpPlkwGqnj73mSiI80fPsWMvDdUDrta +clXvyFu1cvh43zcgTFeRc5JzrBh3Q4IgaezprClG5QtO+DdziZaKHG29777YtvTK +wP1H8K4LWCDFyB02rpeNUIMmJCn3nTsPBQIDAQABo2MwYTAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBRvjmKLk0Ow4UD2p8P98Q+4 +DxU4pTAdBgNVHQ4EFgQUb45ii5NDsOFA9qfD/fEPuA8VOKUwDQYJKoZIhvcNAQEL +BQADggIBAKwsKUF9+lz1GpUYvyypiqkkVHX1uECry6gkUSsYP2OprphWKwVDIqO3 +10aewCoSPY6WlkDfDDOLazeROpW7OSltwAJsipQLBwJNGD77+3v1dj2b9l4wBlgz +Hqp41eZUBDqyggmNzhYzWUUo8aWjlw5DI/0LIICQ/+Mmz7hkkeUFjxOgdg3XNwwQ +iJb0Pr6VvfHDffCjw3lHC1ySFWPtUnWK50Zpy1FVCypM9fJkT6lc/2cyjlUtMoIc +gC9qkfjLvH4YoiaoLqNTKIftV+Vlek4ASltOU8liNr3CjlvrzG4ngRhZi0Rjn9UM +ZfQpZX+RLOV/fuiJz48gy20HQhFRJjKKLjpHE7iNvUcNCfAWpO2Whi4Z2L6MOuhF +LhG6rlrnub+xzI/goP+4s9GFe3lmozm1O2bYQL7Pt2eLSMkZJVX8vY3PXtpOpvJp +zv1/THfQwUY1mFwjmwJFQ5Ra3bxHrSL+ul4vkSkphnsh3m5kt8sNjzdbowhq6/Td +Ao9QAwKxuDdollDruF/UKIqlIgyKhPBZLtU30WHlQnNYKoH3dtvi4k0NX/a3vgW0 +rk4N3hY9A4GzJl5LuEsAz/+MF7psYC0nhzck5npgL7XTgwSqT0N1osGDsieYK7EO +gLrAhV5Cud+xYJHT6xh+cHiudoO+cVrQkOPKwRYlZ0rwtnu64ZzZ +-----END CERTIFICATE----- + +# Issuer: CN=OISTE Server Root ECC G1 O=OISTE Foundation +# Subject: CN=OISTE Server Root ECC G1 O=OISTE Foundation +# Label: "OISTE Server Root ECC G1" +# Serial: 47819833811561661340092227008453318557 +# MD5 Fingerprint: 42:a7:d2:35:ae:02:92:db:19:76:08:de:2f:05:b4:d4 +# SHA1 Fingerprint: 3b:f6:8b:09:ae:2a:92:7b:ba:e3:8d:3f:11:95:d9:e6:44:0c:45:e2 +# SHA256 Fingerprint: ee:c9:97:c0:c3:0f:21:6f:7e:3b:8b:30:7d:2b:ae:42:41:2d:75:3f:c8:21:9d:af:d1:52:0b:25:72:85:0f:49 +-----BEGIN CERTIFICATE----- +MIICNTCCAbqgAwIBAgIQI/nD1jWvjyhLH/BU6n6XnTAKBggqhkjOPQQDAzBLMQsw +CQYDVQQGEwJDSDEZMBcGA1UECgwQT0lTVEUgRm91bmRhdGlvbjEhMB8GA1UEAwwY +T0lTVEUgU2VydmVyIFJvb3QgRUNDIEcxMB4XDTIzMDUzMTE0NDIyOFoXDTQ4MDUy +NDE0NDIyN1owSzELMAkGA1UEBhMCQ0gxGTAXBgNVBAoMEE9JU1RFIEZvdW5kYXRp +b24xITAfBgNVBAMMGE9JU1RFIFNlcnZlciBSb290IEVDQyBHMTB2MBAGByqGSM49 +AgEGBSuBBAAiA2IABBcv+hK8rBjzCvRE1nZCnrPoH7d5qVi2+GXROiFPqOujvqQy +cvO2Ackr/XeFblPdreqqLiWStukhEaivtUwL85Zgmjvn6hp4LrQ95SjeHIC6XG4N +2xml4z+cKrhAS93mT6NjMGEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBQ3 +TYhlz/w9itWj8UnATgwQb0K0nDAdBgNVHQ4EFgQUN02IZc/8PYrVo/FJwE4MEG9C +tJwwDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMDA2kAMGYCMQCpKjAd0MKfkFFR +QD6VVCHNFmb3U2wIFjnQEnx/Yxvf4zgAOdktUyBFCxxgZzFDJe0CMQCSia7pXGKD +YmH5LVerVrkR3SW+ak5KGoJr3M/TvEqzPNcum9v4KGm8ay3sMaE641c= +-----END CERTIFICATE----- + +# Issuer: CN=OISTE Server Root RSA G1 O=OISTE Foundation +# Subject: CN=OISTE Server Root RSA G1 O=OISTE Foundation +# Label: "OISTE Server Root RSA G1" +# Serial: 113845518112613905024960613408179309848 +# MD5 Fingerprint: 23:a7:9e:d4:70:b8:b9:14:57:41:8a:7e:44:59:e2:68 +# SHA1 Fingerprint: f7:00:34:25:94:88:68:31:e4:34:87:3f:70:fe:86:b3:86:9f:f0:6e +# SHA256 Fingerprint: 9a:e3:62:32:a5:18:9f:fd:db:35:3d:fd:26:52:0c:01:53:95:d2:27:77:da:c5:9d:b5:7b:98:c0:89:a6:51:e6 +-----BEGIN CERTIFICATE----- +MIIFgzCCA2ugAwIBAgIQVaXZZ5Qoxu0M+ifdWwFNGDANBgkqhkiG9w0BAQwFADBL +MQswCQYDVQQGEwJDSDEZMBcGA1UECgwQT0lTVEUgRm91bmRhdGlvbjEhMB8GA1UE +AwwYT0lTVEUgU2VydmVyIFJvb3QgUlNBIEcxMB4XDTIzMDUzMTE0MzcxNloXDTQ4 +MDUyNDE0MzcxNVowSzELMAkGA1UEBhMCQ0gxGTAXBgNVBAoMEE9JU1RFIEZvdW5k +YXRpb24xITAfBgNVBAMMGE9JU1RFIFNlcnZlciBSb290IFJTQSBHMTCCAiIwDQYJ +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAKqu9KuCz/vlNwvn1ZatkOhLKdxVYOPM +vLO8LZK55KN68YG0nnJyQ98/qwsmtO57Gmn7KNByXEptaZnwYx4M0rH/1ow00O7b +rEi56rAUjtgHqSSY3ekJvqgiG1k50SeH3BzN+Puz6+mTeO0Pzjd8JnduodgsIUzk +ik/HEzxux9UTl7Ko2yRpg1bTacuCErudG/L4NPKYKyqOBGf244ehHa1uzjZ0Dl4z +O8vbUZeUapU8zhhabkvG/AePLhq5SvdkNCncpo1Q4Y2LS+VIG24ugBA/5J8bZT8R +tOpXaZ+0AOuFJJkk9SGdl6r7NH8CaxWQrbueWhl/pIzY+m0o/DjH40ytas7ZTpOS +jswMZ78LS5bOZmdTaMsXEY5Z96ycG7mOaES3GK/m5Q9l3JUJsJMStR8+lKXHiHUh +sd4JJCpM4rzsTGdHwimIuQq6+cF0zowYJmXa92/GjHtoXAvuY8BeS/FOzJ8vD+Ho +mnqT8eDI278n5mUpezbgMxVz8p1rhAhoKzYHKyfMeNhqhw5HdPSqoBNdZH702xSu ++zrkL8Fl47l6QGzwBrd7KJvX4V84c5Ss2XCTLdyEr0YconosP4EmQufU2MVshGYR +i3drVByjtdgQ8K4p92cIiBdcuJd5z+orKu5YM+Vt6SmqZQENghPsJQtdLEByFSnT +kCz3GkPVavBpAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAU +8snBDw1jALvsRQ5KH7WxszbNDo0wHQYDVR0OBBYEFPLJwQ8NYwC77EUOSh+1sbM2 +zQ6NMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQwFAAOCAgEANGd5sjrG5T33 +I3K5Ce+SrScfoE4KsvXaFwyihdJ+klH9FWXXXGtkFu6KRcoMQzZENdl//nk6HOjG +5D1rd9QhEOP28yBOqb6J8xycqd+8MDoX0TJD0KqKchxRKEzdNsjkLWd9kYccnbz8 +qyiWXmFcuCIzGEgWUOrKL+mlSdx/PKQZvDatkuK59EvV6wit53j+F8Bdh3foZ3dP +AGav9LEDOr4SfEE15fSmG0eLy3n31r8Xbk5l8PjaV8GUgeV6Vg27Rn9vkf195hfk +gSe7BYhW3SCl95gtkRlpMV+bMPKZrXJAlszYd2abtNUOshD+FKrDgHGdPY3ofRRs +YWSGRqbXVMW215AWRqWFyp464+YTFrYVI8ypKVL9AMb2kI5Wj4kI3Zaq5tNqqYY1 +9tVFeEJKRvwDyF7YZvZFZSS0vod7VSCd9521Kvy5YhnLbDuv0204bKt7ph6N/Ome +/msVuduCmsuY33OhkKCgxeDoAaijFJzIwZqsFVAzje18KotzlUBDJvyBpCpfOZC3 +J8tRd/iWkx7P8nd9H0aTolkelUTFLXVksNb54Dxp6gS1HAviRkRNQzuXSXERvSS2 +wq1yVAb+axj5d9spLFKebXd7Yv0PTY6YMjAwcRLWJTXjn/hvnLXrahut6hDTlhZy +BiElxky8j3C7DOReIoMt0r7+hVu05L0= +-----END CERTIFICATE----- + +# Issuer: CN=e-Szigno TLS Root CA 2023 O=Microsec Ltd. +# Subject: CN=e-Szigno TLS Root CA 2023 O=Microsec Ltd. +# Label: "e-Szigno TLS Root CA 2023" +# Serial: 71934828665710877219916191754 +# MD5 Fingerprint: 6a:e9:99:74:a5:da:5e:f1:d9:2e:f2:c8:d1:86:8b:71 +# SHA1 Fingerprint: 6f:9a:d5:d5:df:e8:2c:eb:be:37:07:ee:4f:4f:52:58:29:41:d1:fe +# SHA256 Fingerprint: b4:91:41:50:2d:00:66:3d:74:0f:2e:7e:c3:40:c5:28:00:96:26:66:12:1a:36:d0:9c:f7:dd:2b:90:38:4f:b4 +-----BEGIN CERTIFICATE----- +MIICzzCCAjGgAwIBAgINAOhvGHvWOWuYSkmYCjAKBggqhkjOPQQDBDB1MQswCQYD +VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0 +ZC4xFzAVBgNVBGEMDlZBVEhVLTIzNTg0NDk3MSIwIAYDVQQDDBllLVN6aWdubyBU +TFMgUm9vdCBDQSAyMDIzMB4XDTIzMDcxNzE0MDAwMFoXDTM4MDcxNzE0MDAwMFow +dTELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRYwFAYDVQQKDA1NaWNy +b3NlYyBMdGQuMRcwFQYDVQRhDA5WQVRIVS0yMzU4NDQ5NzEiMCAGA1UEAwwZZS1T +emlnbm8gVExTIFJvb3QgQ0EgMjAyMzCBmzAQBgcqhkjOPQIBBgUrgQQAIwOBhgAE +AGgP36J8PKp0iGEKjcJMpQEiFNT3YHdCnAo4YKGMZz6zY+n6kbCLS+Y53wLCMAFS +AL/fjO1ZrTJlqwlZULUZwmgcAOAFX9pQJhzDrAQixTpN7+lXWDajwRlTEArRzT/v +SzUaQ49CE0y5LBqcvjC2xN7cS53kpDzLLtmt3999Cd8ukv+ho2MwYTAPBgNVHRMB +Af8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUWYQCYlpGePVd3I8K +ECgj3NXW+0UwHwYDVR0jBBgwFoAUWYQCYlpGePVd3I8KECgj3NXW+0UwCgYIKoZI +zj0EAwQDgYsAMIGHAkIBLdqu9S54tma4n7Zwf2Z0z+yOfP7AAXmazlIC58PRDHpt +y7Ve7hekm9sEdu4pKeiv+62sUvTXK9Z3hBC9xdIoaDQCQTV2WnXzkoYI9bIeCvZl +C9p2x1L/Cx6AcCIwwzPbGO2E14vs7dOoY4G1VnxHx1YwlGhza9IuqbnZLBwpvQy6 +uWWL +-----END CERTIFICATE----- diff --git a/venv/lib/python3.9/site-packages/certifi/core.py b/venv/lib/python3.9/site-packages/certifi/core.py new file mode 100644 index 0000000..1c9661c --- /dev/null +++ b/venv/lib/python3.9/site-packages/certifi/core.py @@ -0,0 +1,83 @@ +""" +certifi.py +~~~~~~~~~~ + +This module returns the installation location of cacert.pem or its contents. +""" +import sys +import atexit + +def exit_cacert_ctx() -> None: + _CACERT_CTX.__exit__(None, None, None) # type: ignore[union-attr] + + +if sys.version_info >= (3, 11): + + from importlib.resources import as_file, files + + _CACERT_CTX = None + _CACERT_PATH = None + + def where() -> str: + # This is slightly terrible, but we want to delay extracting the file + # in cases where we're inside of a zipimport situation until someone + # actually calls where(), but we don't want to re-extract the file + # on every call of where(), so we'll do it once then store it in a + # global variable. + global _CACERT_CTX + global _CACERT_PATH + if _CACERT_PATH is None: + # This is slightly janky, the importlib.resources API wants you to + # manage the cleanup of this file, so it doesn't actually return a + # path, it returns a context manager that will give you the path + # when you enter it and will do any cleanup when you leave it. In + # the common case of not needing a temporary file, it will just + # return the file system location and the __exit__() is a no-op. + # + # We also have to hold onto the actual context manager, because + # it will do the cleanup whenever it gets garbage collected, so + # we will also store that at the global level as well. + _CACERT_CTX = as_file(files("certifi").joinpath("cacert.pem")) + _CACERT_PATH = str(_CACERT_CTX.__enter__()) + atexit.register(exit_cacert_ctx) + + return _CACERT_PATH + + def contents() -> str: + return files("certifi").joinpath("cacert.pem").read_text(encoding="ascii") + +else: + + from importlib.resources import path as get_path, read_text + + _CACERT_CTX = None + _CACERT_PATH = None + + def where() -> str: + # This is slightly terrible, but we want to delay extracting the + # file in cases where we're inside of a zipimport situation until + # someone actually calls where(), but we don't want to re-extract + # the file on every call of where(), so we'll do it once then store + # it in a global variable. + global _CACERT_CTX + global _CACERT_PATH + if _CACERT_PATH is None: + # This is slightly janky, the importlib.resources API wants you + # to manage the cleanup of this file, so it doesn't actually + # return a path, it returns a context manager that will give + # you the path when you enter it and will do any cleanup when + # you leave it. In the common case of not needing a temporary + # file, it will just return the file system location and the + # __exit__() is a no-op. + # + # We also have to hold onto the actual context manager, because + # it will do the cleanup whenever it gets garbage collected, so + # we will also store that at the global level as well. + _CACERT_CTX = get_path("certifi", "cacert.pem") + _CACERT_PATH = str(_CACERT_CTX.__enter__()) + atexit.register(exit_cacert_ctx) + + return _CACERT_PATH + + def contents() -> str: + return read_text("certifi", "cacert.pem", encoding="ascii") diff --git a/venv/lib/python3.9/site-packages/certifi/py.typed b/venv/lib/python3.9/site-packages/certifi/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/METADATA b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/METADATA new file mode 100644 index 0000000..67508e5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/METADATA @@ -0,0 +1,68 @@ +Metadata-Version: 2.4 +Name: cffi +Version: 2.0.0 +Summary: Foreign Function Interface for Python calling C code. +Author: Armin Rigo, Maciej Fijalkowski +Maintainer: Matt Davis, Matt Clay, Matti Picus +License-Expression: MIT +Project-URL: Documentation, https://cffi.readthedocs.io/ +Project-URL: Changelog, https://cffi.readthedocs.io/en/latest/whatsnew.html +Project-URL: Downloads, https://github.com/python-cffi/cffi/releases +Project-URL: Contact, https://groups.google.com/forum/#!forum/python-cffi +Project-URL: Source Code, https://github.com/python-cffi/cffi +Project-URL: Issue Tracker, https://github.com/python-cffi/cffi/issues +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: Programming Language :: Python :: 3.14 +Classifier: Programming Language :: Python :: Free Threading :: 2 - Beta +Classifier: Programming Language :: Python :: Implementation :: CPython +Requires-Python: >=3.9 +Description-Content-Type: text/markdown +License-File: LICENSE +License-File: AUTHORS +Requires-Dist: pycparser; implementation_name != "PyPy" +Dynamic: license-file + +[![GitHub Actions Status](https://github.com/python-cffi/cffi/actions/workflows/ci.yaml/badge.svg?branch=main)](https://github.com/python-cffi/cffi/actions/workflows/ci.yaml?query=branch%3Amain++) +[![PyPI version](https://img.shields.io/pypi/v/cffi.svg)](https://pypi.org/project/cffi) +[![Read the Docs](https://img.shields.io/badge/docs-latest-blue.svg)][Documentation] + + +CFFI +==== + +Foreign Function Interface for Python calling C code. + +Please see the [Documentation] or uncompiled in the `doc/` subdirectory. + +Download +-------- + +[Download page](https://github.com/python-cffi/cffi/releases) + +Source Code +----------- + +Source code is publicly available on +[GitHub](https://github.com/python-cffi/cffi). + +Contact +------- + +[Mailing list](https://groups.google.com/forum/#!forum/python-cffi) + +Testing/development tips +------------------------ + +After `git clone` or `wget && tar`, we will get a directory called `cffi` or `cffi-x.x.x`. we call it `repo-directory`. To run tests under CPython, run the following in the `repo-directory`: + + pip install pytest + pip install -e . # editable install of CFFI for local development + pytest src/c/ testing/ + +[Documentation]: http://cffi.readthedocs.org/ diff --git a/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/RECORD b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/RECORD new file mode 100644 index 0000000..25e5445 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/RECORD @@ -0,0 +1,49 @@ +_cffi_backend.cpython-39-x86_64-linux-gnu.so,sha256=9J_Iuv_0UXORJQsmFFKfZwHTQDTC313tRixPBAunqCU,339784 +cffi-2.0.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +cffi-2.0.0.dist-info/METADATA,sha256=uYzn40F68Im8EtXHNBLZs7FoPM-OxzyYbDWsjJvhujk,2559 +cffi-2.0.0.dist-info/RECORD,, +cffi-2.0.0.dist-info/WHEEL,sha256=A4SdjgbIBZ_kjTsEuOcR8fCpVKV5dez8wjeT_kpjoQs,147 +cffi-2.0.0.dist-info/entry_points.txt,sha256=y6jTxnyeuLnL-XJcDv8uML3n6wyYiGRg8MTp_QGJ9Ho,75 +cffi-2.0.0.dist-info/licenses/AUTHORS,sha256=KmemC7-zN1nWfWRf8TG45ta8TK_CMtdR_Kw-2k0xTMg,208 +cffi-2.0.0.dist-info/licenses/LICENSE,sha256=W6JN3FcGf5JJrdZEw6_EGl1tw34jQz73Wdld83Cwr2M,1123 +cffi-2.0.0.dist-info/top_level.txt,sha256=rE7WR3rZfNKxWI9-jn6hsHCAl7MDkB-FmuQbxWjFehQ,19 +cffi/__init__.py,sha256=-ksBQ7MfDzVvbBlV_ftYBWAmEqfA86ljIzMxzaZeAlI,511 +cffi/__pycache__/__init__.cpython-39.pyc,, +cffi/__pycache__/_imp_emulation.cpython-39.pyc,, +cffi/__pycache__/_shimmed_dist_utils.cpython-39.pyc,, +cffi/__pycache__/api.cpython-39.pyc,, +cffi/__pycache__/backend_ctypes.cpython-39.pyc,, +cffi/__pycache__/cffi_opcode.cpython-39.pyc,, +cffi/__pycache__/commontypes.cpython-39.pyc,, +cffi/__pycache__/cparser.cpython-39.pyc,, +cffi/__pycache__/error.cpython-39.pyc,, +cffi/__pycache__/ffiplatform.cpython-39.pyc,, +cffi/__pycache__/lock.cpython-39.pyc,, +cffi/__pycache__/model.cpython-39.pyc,, +cffi/__pycache__/pkgconfig.cpython-39.pyc,, +cffi/__pycache__/recompiler.cpython-39.pyc,, +cffi/__pycache__/setuptools_ext.cpython-39.pyc,, +cffi/__pycache__/vengine_cpy.cpython-39.pyc,, +cffi/__pycache__/vengine_gen.cpython-39.pyc,, +cffi/__pycache__/verifier.cpython-39.pyc,, +cffi/_cffi_errors.h,sha256=zQXt7uR_m8gUW-fI2hJg0KoSkJFwXv8RGUkEDZ177dQ,3908 +cffi/_cffi_include.h,sha256=Exhmgm9qzHWzWivjfTe0D7Xp4rPUkVxdNuwGhMTMzbw,15055 +cffi/_embedding.h,sha256=Ai33FHblE7XSpHOCp8kPcWwN5_9BV14OvN0JVa6ITpw,18786 +cffi/_imp_emulation.py,sha256=RxREG8zAbI2RPGBww90u_5fi8sWdahpdipOoPzkp7C0,2960 +cffi/_shimmed_dist_utils.py,sha256=Bjj2wm8yZbvFvWEx5AEfmqaqZyZFhYfoyLLQHkXZuao,2230 +cffi/api.py,sha256=alBv6hZQkjpmZplBphdaRn2lPO9-CORs_M7ixabvZWI,42169 +cffi/backend_ctypes.py,sha256=h5ZIzLc6BFVXnGyc9xPqZWUS7qGy7yFSDqXe68Sa8z4,42454 +cffi/cffi_opcode.py,sha256=JDV5l0R0_OadBX_uE7xPPTYtMdmpp8I9UYd6av7aiDU,5731 +cffi/commontypes.py,sha256=7N6zPtCFlvxXMWhHV08psUjdYIK2XgsN3yo5dgua_v4,2805 +cffi/cparser.py,sha256=QUTfmlL-aO-MYR8bFGlvAUHc36OQr7XYLe0WLkGFjRo,44790 +cffi/error.py,sha256=v6xTiS4U0kvDcy4h_BDRo5v39ZQuj-IMRYLv5ETddZs,877 +cffi/ffiplatform.py,sha256=avxFjdikYGJoEtmJO7ewVmwG_VEVl6EZ_WaNhZYCqv4,3584 +cffi/lock.py,sha256=l9TTdwMIMpi6jDkJGnQgE9cvTIR7CAntIJr8EGHt3pY,747 +cffi/model.py,sha256=W30UFQZE73jL5Mx5N81YT77us2W2iJjTm0XYfnwz1cg,21797 +cffi/parse_c_type.h,sha256=OdwQfwM9ktq6vlCB43exFQmxDBtj2MBNdK8LYl15tjw,5976 +cffi/pkgconfig.py,sha256=LP1w7vmWvmKwyqLaU1Z243FOWGNQMrgMUZrvgFuOlco,4374 +cffi/recompiler.py,sha256=78J6lMEEOygXNmjN9-fOFFO3j7eW-iFxSrxfvQb54bY,65509 +cffi/setuptools_ext.py,sha256=0rCwBJ1W7FHWtiMKfNXsSST88V8UXrui5oeXFlDNLG8,9411 +cffi/vengine_cpy.py,sha256=oyQKD23kpE0aChUKA8Jg0e723foPiYzLYEdb-J0MiNs,43881 +cffi/vengine_gen.py,sha256=DUlEIrDiVin1Pnhn1sfoamnS5NLqfJcOdhRoeSNeJRg,26939 +cffi/verifier.py,sha256=oX8jpaohg2Qm3aHcznidAdvrVm5N4sQYG0a3Eo5mIl4,11182 diff --git a/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/WHEEL b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/WHEEL new file mode 100644 index 0000000..fb8eff6 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/WHEEL @@ -0,0 +1,6 @@ +Wheel-Version: 1.0 +Generator: setuptools (80.9.0) +Root-Is-Purelib: false +Tag: cp39-cp39-manylinux_2_17_x86_64 +Tag: cp39-cp39-manylinux2014_x86_64 + diff --git a/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/entry_points.txt b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/entry_points.txt new file mode 100644 index 0000000..4b0274f --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/entry_points.txt @@ -0,0 +1,2 @@ +[distutils.setup_keywords] +cffi_modules = cffi.setuptools_ext:cffi_modules diff --git a/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/licenses/AUTHORS b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/licenses/AUTHORS new file mode 100644 index 0000000..370a25d --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/licenses/AUTHORS @@ -0,0 +1,8 @@ +This package has been mostly done by Armin Rigo with help from +Maciej Fijałkowski. The idea is heavily based (although not directly +copied) from LuaJIT ffi by Mike Pall. + + +Other contributors: + + Google Inc. diff --git a/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/licenses/LICENSE b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/licenses/LICENSE new file mode 100644 index 0000000..0a1dbfb --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/licenses/LICENSE @@ -0,0 +1,23 @@ + +Except when otherwise stated (look for LICENSE files in directories or +information at the beginning of each file) all software and +documentation is licensed as follows: + + MIT No Attribution + + Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation + files (the "Software"), to deal in the Software without + restriction, including without limitation the rights to use, + copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the + Software is furnished to do so. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + diff --git a/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/top_level.txt new file mode 100644 index 0000000..f645779 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi-2.0.0.dist-info/top_level.txt @@ -0,0 +1,2 @@ +_cffi_backend +cffi diff --git a/venv/lib/python3.9/site-packages/cffi/__init__.py b/venv/lib/python3.9/site-packages/cffi/__init__.py new file mode 100644 index 0000000..c99ec3d --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/__init__.py @@ -0,0 +1,14 @@ +__all__ = ['FFI', 'VerificationError', 'VerificationMissing', 'CDefError', + 'FFIError'] + +from .api import FFI +from .error import CDefError, FFIError, VerificationError, VerificationMissing +from .error import PkgConfigError + +__version__ = "2.0.0" +__version_info__ = (2, 0, 0) + +# The verifier module file names are based on the CRC32 of a string that +# contains the following version number. It may be older than __version__ +# if nothing is clearly incompatible. +__version_verifier_modules__ = "0.8.6" diff --git a/venv/lib/python3.9/site-packages/cffi/_cffi_errors.h b/venv/lib/python3.9/site-packages/cffi/_cffi_errors.h new file mode 100644 index 0000000..158e059 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/_cffi_errors.h @@ -0,0 +1,149 @@ +#ifndef CFFI_MESSAGEBOX +# ifdef _MSC_VER +# define CFFI_MESSAGEBOX 1 +# else +# define CFFI_MESSAGEBOX 0 +# endif +#endif + + +#if CFFI_MESSAGEBOX +/* Windows only: logic to take the Python-CFFI embedding logic + initialization errors and display them in a background thread + with MessageBox. The idea is that if the whole program closes + as a result of this problem, then likely it is already a console + program and you can read the stderr output in the console too. + If it is not a console program, then it will likely show its own + dialog to complain, or generally not abruptly close, and for this + case the background thread should stay alive. +*/ +static void *volatile _cffi_bootstrap_text; + +static PyObject *_cffi_start_error_capture(void) +{ + PyObject *result = NULL; + PyObject *x, *m, *bi; + + if (InterlockedCompareExchangePointer(&_cffi_bootstrap_text, + (void *)1, NULL) != NULL) + return (PyObject *)1; + + m = PyImport_AddModule("_cffi_error_capture"); + if (m == NULL) + goto error; + + result = PyModule_GetDict(m); + if (result == NULL) + goto error; + +#if PY_MAJOR_VERSION >= 3 + bi = PyImport_ImportModule("builtins"); +#else + bi = PyImport_ImportModule("__builtin__"); +#endif + if (bi == NULL) + goto error; + PyDict_SetItemString(result, "__builtins__", bi); + Py_DECREF(bi); + + x = PyRun_String( + "import sys\n" + "class FileLike:\n" + " def write(self, x):\n" + " try:\n" + " of.write(x)\n" + " except: pass\n" + " self.buf += x\n" + " def flush(self):\n" + " pass\n" + "fl = FileLike()\n" + "fl.buf = ''\n" + "of = sys.stderr\n" + "sys.stderr = fl\n" + "def done():\n" + " sys.stderr = of\n" + " return fl.buf\n", /* make sure the returned value stays alive */ + Py_file_input, + result, result); + Py_XDECREF(x); + + error: + if (PyErr_Occurred()) + { + PyErr_WriteUnraisable(Py_None); + PyErr_Clear(); + } + return result; +} + +#pragma comment(lib, "user32.lib") + +static DWORD WINAPI _cffi_bootstrap_dialog(LPVOID ignored) +{ + Sleep(666); /* may be interrupted if the whole process is closing */ +#if PY_MAJOR_VERSION >= 3 + MessageBoxW(NULL, (wchar_t *)_cffi_bootstrap_text, + L"Python-CFFI error", + MB_OK | MB_ICONERROR); +#else + MessageBoxA(NULL, (char *)_cffi_bootstrap_text, + "Python-CFFI error", + MB_OK | MB_ICONERROR); +#endif + _cffi_bootstrap_text = NULL; + return 0; +} + +static void _cffi_stop_error_capture(PyObject *ecap) +{ + PyObject *s; + void *text; + + if (ecap == (PyObject *)1) + return; + + if (ecap == NULL) + goto error; + + s = PyRun_String("done()", Py_eval_input, ecap, ecap); + if (s == NULL) + goto error; + + /* Show a dialog box, but in a background thread, and + never show multiple dialog boxes at once. */ +#if PY_MAJOR_VERSION >= 3 + text = PyUnicode_AsWideCharString(s, NULL); +#else + text = PyString_AsString(s); +#endif + + _cffi_bootstrap_text = text; + + if (text != NULL) + { + HANDLE h; + h = CreateThread(NULL, 0, _cffi_bootstrap_dialog, + NULL, 0, NULL); + if (h != NULL) + CloseHandle(h); + } + /* decref the string, but it should stay alive as 'fl.buf' + in the small module above. It will really be freed only if + we later get another similar error. So it's a leak of at + most one copy of the small module. That's fine for this + situation which is usually a "fatal error" anyway. */ + Py_DECREF(s); + PyErr_Clear(); + return; + + error: + _cffi_bootstrap_text = NULL; + PyErr_Clear(); +} + +#else + +static PyObject *_cffi_start_error_capture(void) { return NULL; } +static void _cffi_stop_error_capture(PyObject *ecap) { } + +#endif diff --git a/venv/lib/python3.9/site-packages/cffi/_cffi_include.h b/venv/lib/python3.9/site-packages/cffi/_cffi_include.h new file mode 100644 index 0000000..908a1d7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/_cffi_include.h @@ -0,0 +1,389 @@ +#define _CFFI_ + +/* We try to define Py_LIMITED_API before including Python.h. + + Mess: we can only define it if Py_DEBUG, Py_TRACE_REFS and + Py_REF_DEBUG are not defined. This is a best-effort approximation: + we can learn about Py_DEBUG from pyconfig.h, but it is unclear if + the same works for the other two macros. Py_DEBUG implies them, + but not the other way around. + + The implementation is messy (issue #350): on Windows, with _MSC_VER, + we have to define Py_LIMITED_API even before including pyconfig.h. + In that case, we guess what pyconfig.h will do to the macros above, + and check our guess after the #include. + + Note that on Windows, with CPython 3.x, you need >= 3.5 and virtualenv + version >= 16.0.0. With older versions of either, you don't get a + copy of PYTHON3.DLL in the virtualenv. We can't check the version of + CPython *before* we even include pyconfig.h. ffi.set_source() puts + a ``#define _CFFI_NO_LIMITED_API'' at the start of this file if it is + running on Windows < 3.5, as an attempt at fixing it, but that's + arguably wrong because it may not be the target version of Python. + Still better than nothing I guess. As another workaround, you can + remove the definition of Py_LIMITED_API here. + + See also 'py_limited_api' in cffi/setuptools_ext.py. +*/ +#if !defined(_CFFI_USE_EMBEDDING) && !defined(Py_LIMITED_API) +# ifdef _MSC_VER +# if !defined(_DEBUG) && !defined(Py_DEBUG) && !defined(Py_TRACE_REFS) && !defined(Py_REF_DEBUG) && !defined(_CFFI_NO_LIMITED_API) +# define Py_LIMITED_API +# endif +# include + /* sanity-check: Py_LIMITED_API will cause crashes if any of these + are also defined. Normally, the Python file PC/pyconfig.h does not + cause any of these to be defined, with the exception that _DEBUG + causes Py_DEBUG. Double-check that. */ +# ifdef Py_LIMITED_API +# if defined(Py_DEBUG) +# error "pyconfig.h unexpectedly defines Py_DEBUG, but Py_LIMITED_API is set" +# endif +# if defined(Py_TRACE_REFS) +# error "pyconfig.h unexpectedly defines Py_TRACE_REFS, but Py_LIMITED_API is set" +# endif +# if defined(Py_REF_DEBUG) +# error "pyconfig.h unexpectedly defines Py_REF_DEBUG, but Py_LIMITED_API is set" +# endif +# endif +# else +# include +# if !defined(Py_DEBUG) && !defined(Py_TRACE_REFS) && !defined(Py_REF_DEBUG) && !defined(_CFFI_NO_LIMITED_API) +# define Py_LIMITED_API +# endif +# endif +#endif + +#include +#ifdef __cplusplus +extern "C" { +#endif +#include +#include "parse_c_type.h" + +/* this block of #ifs should be kept exactly identical between + c/_cffi_backend.c, cffi/vengine_cpy.py, cffi/vengine_gen.py + and cffi/_cffi_include.h */ +#if defined(_MSC_VER) +# include /* for alloca() */ +# if _MSC_VER < 1600 /* MSVC < 2010 */ + typedef __int8 int8_t; + typedef __int16 int16_t; + typedef __int32 int32_t; + typedef __int64 int64_t; + typedef unsigned __int8 uint8_t; + typedef unsigned __int16 uint16_t; + typedef unsigned __int32 uint32_t; + typedef unsigned __int64 uint64_t; + typedef __int8 int_least8_t; + typedef __int16 int_least16_t; + typedef __int32 int_least32_t; + typedef __int64 int_least64_t; + typedef unsigned __int8 uint_least8_t; + typedef unsigned __int16 uint_least16_t; + typedef unsigned __int32 uint_least32_t; + typedef unsigned __int64 uint_least64_t; + typedef __int8 int_fast8_t; + typedef __int16 int_fast16_t; + typedef __int32 int_fast32_t; + typedef __int64 int_fast64_t; + typedef unsigned __int8 uint_fast8_t; + typedef unsigned __int16 uint_fast16_t; + typedef unsigned __int32 uint_fast32_t; + typedef unsigned __int64 uint_fast64_t; + typedef __int64 intmax_t; + typedef unsigned __int64 uintmax_t; +# else +# include +# endif +# if _MSC_VER < 1800 /* MSVC < 2013 */ +# ifndef __cplusplus + typedef unsigned char _Bool; +# endif +# endif +# define _cffi_float_complex_t _Fcomplex /* include for it */ +# define _cffi_double_complex_t _Dcomplex /* include for it */ +#else +# include +# if (defined (__SVR4) && defined (__sun)) || defined(_AIX) || defined(__hpux) +# include +# endif +# define _cffi_float_complex_t float _Complex +# define _cffi_double_complex_t double _Complex +#endif + +#ifdef __GNUC__ +# define _CFFI_UNUSED_FN __attribute__((unused)) +#else +# define _CFFI_UNUSED_FN /* nothing */ +#endif + +#ifdef __cplusplus +# ifndef _Bool + typedef bool _Bool; /* semi-hackish: C++ has no _Bool; bool is builtin */ +# endif +#endif + +/********** CPython-specific section **********/ +#ifndef PYPY_VERSION + + +#if PY_MAJOR_VERSION >= 3 +# define PyInt_FromLong PyLong_FromLong +#endif + +#define _cffi_from_c_double PyFloat_FromDouble +#define _cffi_from_c_float PyFloat_FromDouble +#define _cffi_from_c_long PyInt_FromLong +#define _cffi_from_c_ulong PyLong_FromUnsignedLong +#define _cffi_from_c_longlong PyLong_FromLongLong +#define _cffi_from_c_ulonglong PyLong_FromUnsignedLongLong +#define _cffi_from_c__Bool PyBool_FromLong + +#define _cffi_to_c_double PyFloat_AsDouble +#define _cffi_to_c_float PyFloat_AsDouble + +#define _cffi_from_c_int(x, type) \ + (((type)-1) > 0 ? /* unsigned */ \ + (sizeof(type) < sizeof(long) ? \ + PyInt_FromLong((long)x) : \ + sizeof(type) == sizeof(long) ? \ + PyLong_FromUnsignedLong((unsigned long)x) : \ + PyLong_FromUnsignedLongLong((unsigned long long)x)) : \ + (sizeof(type) <= sizeof(long) ? \ + PyInt_FromLong((long)x) : \ + PyLong_FromLongLong((long long)x))) + +#define _cffi_to_c_int(o, type) \ + ((type)( \ + sizeof(type) == 1 ? (((type)-1) > 0 ? (type)_cffi_to_c_u8(o) \ + : (type)_cffi_to_c_i8(o)) : \ + sizeof(type) == 2 ? (((type)-1) > 0 ? (type)_cffi_to_c_u16(o) \ + : (type)_cffi_to_c_i16(o)) : \ + sizeof(type) == 4 ? (((type)-1) > 0 ? (type)_cffi_to_c_u32(o) \ + : (type)_cffi_to_c_i32(o)) : \ + sizeof(type) == 8 ? (((type)-1) > 0 ? (type)_cffi_to_c_u64(o) \ + : (type)_cffi_to_c_i64(o)) : \ + (Py_FatalError("unsupported size for type " #type), (type)0))) + +#define _cffi_to_c_i8 \ + ((int(*)(PyObject *))_cffi_exports[1]) +#define _cffi_to_c_u8 \ + ((int(*)(PyObject *))_cffi_exports[2]) +#define _cffi_to_c_i16 \ + ((int(*)(PyObject *))_cffi_exports[3]) +#define _cffi_to_c_u16 \ + ((int(*)(PyObject *))_cffi_exports[4]) +#define _cffi_to_c_i32 \ + ((int(*)(PyObject *))_cffi_exports[5]) +#define _cffi_to_c_u32 \ + ((unsigned int(*)(PyObject *))_cffi_exports[6]) +#define _cffi_to_c_i64 \ + ((long long(*)(PyObject *))_cffi_exports[7]) +#define _cffi_to_c_u64 \ + ((unsigned long long(*)(PyObject *))_cffi_exports[8]) +#define _cffi_to_c_char \ + ((int(*)(PyObject *))_cffi_exports[9]) +#define _cffi_from_c_pointer \ + ((PyObject *(*)(char *, struct _cffi_ctypedescr *))_cffi_exports[10]) +#define _cffi_to_c_pointer \ + ((char *(*)(PyObject *, struct _cffi_ctypedescr *))_cffi_exports[11]) +#define _cffi_get_struct_layout \ + not used any more +#define _cffi_restore_errno \ + ((void(*)(void))_cffi_exports[13]) +#define _cffi_save_errno \ + ((void(*)(void))_cffi_exports[14]) +#define _cffi_from_c_char \ + ((PyObject *(*)(char))_cffi_exports[15]) +#define _cffi_from_c_deref \ + ((PyObject *(*)(char *, struct _cffi_ctypedescr *))_cffi_exports[16]) +#define _cffi_to_c \ + ((int(*)(char *, struct _cffi_ctypedescr *, PyObject *))_cffi_exports[17]) +#define _cffi_from_c_struct \ + ((PyObject *(*)(char *, struct _cffi_ctypedescr *))_cffi_exports[18]) +#define _cffi_to_c_wchar_t \ + ((_cffi_wchar_t(*)(PyObject *))_cffi_exports[19]) +#define _cffi_from_c_wchar_t \ + ((PyObject *(*)(_cffi_wchar_t))_cffi_exports[20]) +#define _cffi_to_c_long_double \ + ((long double(*)(PyObject *))_cffi_exports[21]) +#define _cffi_to_c__Bool \ + ((_Bool(*)(PyObject *))_cffi_exports[22]) +#define _cffi_prepare_pointer_call_argument \ + ((Py_ssize_t(*)(struct _cffi_ctypedescr *, \ + PyObject *, char **))_cffi_exports[23]) +#define _cffi_convert_array_from_object \ + ((int(*)(char *, struct _cffi_ctypedescr *, PyObject *))_cffi_exports[24]) +#define _CFFI_CPIDX 25 +#define _cffi_call_python \ + ((void(*)(struct _cffi_externpy_s *, char *))_cffi_exports[_CFFI_CPIDX]) +#define _cffi_to_c_wchar3216_t \ + ((int(*)(PyObject *))_cffi_exports[26]) +#define _cffi_from_c_wchar3216_t \ + ((PyObject *(*)(int))_cffi_exports[27]) +#define _CFFI_NUM_EXPORTS 28 + +struct _cffi_ctypedescr; + +static void *_cffi_exports[_CFFI_NUM_EXPORTS]; + +#define _cffi_type(index) ( \ + assert((((uintptr_t)_cffi_types[index]) & 1) == 0), \ + (struct _cffi_ctypedescr *)_cffi_types[index]) + +static PyObject *_cffi_init(const char *module_name, Py_ssize_t version, + const struct _cffi_type_context_s *ctx) +{ + PyObject *module, *o_arg, *new_module; + void *raw[] = { + (void *)module_name, + (void *)version, + (void *)_cffi_exports, + (void *)ctx, + }; + + module = PyImport_ImportModule("_cffi_backend"); + if (module == NULL) + goto failure; + + o_arg = PyLong_FromVoidPtr((void *)raw); + if (o_arg == NULL) + goto failure; + + new_module = PyObject_CallMethod( + module, (char *)"_init_cffi_1_0_external_module", (char *)"O", o_arg); + + Py_DECREF(o_arg); + Py_DECREF(module); + return new_module; + + failure: + Py_XDECREF(module); + return NULL; +} + + +#ifdef HAVE_WCHAR_H +typedef wchar_t _cffi_wchar_t; +#else +typedef uint16_t _cffi_wchar_t; /* same random pick as _cffi_backend.c */ +#endif + +_CFFI_UNUSED_FN static uint16_t _cffi_to_c_char16_t(PyObject *o) +{ + if (sizeof(_cffi_wchar_t) == 2) + return (uint16_t)_cffi_to_c_wchar_t(o); + else + return (uint16_t)_cffi_to_c_wchar3216_t(o); +} + +_CFFI_UNUSED_FN static PyObject *_cffi_from_c_char16_t(uint16_t x) +{ + if (sizeof(_cffi_wchar_t) == 2) + return _cffi_from_c_wchar_t((_cffi_wchar_t)x); + else + return _cffi_from_c_wchar3216_t((int)x); +} + +_CFFI_UNUSED_FN static int _cffi_to_c_char32_t(PyObject *o) +{ + if (sizeof(_cffi_wchar_t) == 4) + return (int)_cffi_to_c_wchar_t(o); + else + return (int)_cffi_to_c_wchar3216_t(o); +} + +_CFFI_UNUSED_FN static PyObject *_cffi_from_c_char32_t(unsigned int x) +{ + if (sizeof(_cffi_wchar_t) == 4) + return _cffi_from_c_wchar_t((_cffi_wchar_t)x); + else + return _cffi_from_c_wchar3216_t((int)x); +} + +union _cffi_union_alignment_u { + unsigned char m_char; + unsigned short m_short; + unsigned int m_int; + unsigned long m_long; + unsigned long long m_longlong; + float m_float; + double m_double; + long double m_longdouble; +}; + +struct _cffi_freeme_s { + struct _cffi_freeme_s *next; + union _cffi_union_alignment_u alignment; +}; + +_CFFI_UNUSED_FN static int +_cffi_convert_array_argument(struct _cffi_ctypedescr *ctptr, PyObject *arg, + char **output_data, Py_ssize_t datasize, + struct _cffi_freeme_s **freeme) +{ + char *p; + if (datasize < 0) + return -1; + + p = *output_data; + if (p == NULL) { + struct _cffi_freeme_s *fp = (struct _cffi_freeme_s *)PyObject_Malloc( + offsetof(struct _cffi_freeme_s, alignment) + (size_t)datasize); + if (fp == NULL) + return -1; + fp->next = *freeme; + *freeme = fp; + p = *output_data = (char *)&fp->alignment; + } + memset((void *)p, 0, (size_t)datasize); + return _cffi_convert_array_from_object(p, ctptr, arg); +} + +_CFFI_UNUSED_FN static void +_cffi_free_array_arguments(struct _cffi_freeme_s *freeme) +{ + do { + void *p = (void *)freeme; + freeme = freeme->next; + PyObject_Free(p); + } while (freeme != NULL); +} + +/********** end CPython-specific section **********/ +#else +_CFFI_UNUSED_FN +static void (*_cffi_call_python_org)(struct _cffi_externpy_s *, char *); +# define _cffi_call_python _cffi_call_python_org +#endif + + +#define _cffi_array_len(array) (sizeof(array) / sizeof((array)[0])) + +#define _cffi_prim_int(size, sign) \ + ((size) == 1 ? ((sign) ? _CFFI_PRIM_INT8 : _CFFI_PRIM_UINT8) : \ + (size) == 2 ? ((sign) ? _CFFI_PRIM_INT16 : _CFFI_PRIM_UINT16) : \ + (size) == 4 ? ((sign) ? _CFFI_PRIM_INT32 : _CFFI_PRIM_UINT32) : \ + (size) == 8 ? ((sign) ? _CFFI_PRIM_INT64 : _CFFI_PRIM_UINT64) : \ + _CFFI__UNKNOWN_PRIM) + +#define _cffi_prim_float(size) \ + ((size) == sizeof(float) ? _CFFI_PRIM_FLOAT : \ + (size) == sizeof(double) ? _CFFI_PRIM_DOUBLE : \ + (size) == sizeof(long double) ? _CFFI__UNKNOWN_LONG_DOUBLE : \ + _CFFI__UNKNOWN_FLOAT_PRIM) + +#define _cffi_check_int(got, got_nonpos, expected) \ + ((got_nonpos) == (expected <= 0) && \ + (got) == (unsigned long long)expected) + +#ifdef MS_WIN32 +# define _cffi_stdcall __stdcall +#else +# define _cffi_stdcall /* nothing */ +#endif + +#ifdef __cplusplus +} +#endif diff --git a/venv/lib/python3.9/site-packages/cffi/_embedding.h b/venv/lib/python3.9/site-packages/cffi/_embedding.h new file mode 100644 index 0000000..64c04f6 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/_embedding.h @@ -0,0 +1,550 @@ + +/***** Support code for embedding *****/ + +#ifdef __cplusplus +extern "C" { +#endif + + +#if defined(_WIN32) +# define CFFI_DLLEXPORT __declspec(dllexport) +#elif defined(__GNUC__) +# define CFFI_DLLEXPORT __attribute__((visibility("default"))) +#else +# define CFFI_DLLEXPORT /* nothing */ +#endif + + +/* There are two global variables of type _cffi_call_python_fnptr: + + * _cffi_call_python, which we declare just below, is the one called + by ``extern "Python"`` implementations. + + * _cffi_call_python_org, which on CPython is actually part of the + _cffi_exports[] array, is the function pointer copied from + _cffi_backend. If _cffi_start_python() fails, then this is set + to NULL; otherwise, it should never be NULL. + + After initialization is complete, both are equal. However, the + first one remains equal to &_cffi_start_and_call_python until the + very end of initialization, when we are (or should be) sure that + concurrent threads also see a completely initialized world, and + only then is it changed. +*/ +#undef _cffi_call_python +typedef void (*_cffi_call_python_fnptr)(struct _cffi_externpy_s *, char *); +static void _cffi_start_and_call_python(struct _cffi_externpy_s *, char *); +static _cffi_call_python_fnptr _cffi_call_python = &_cffi_start_and_call_python; + + +#ifndef _MSC_VER + /* --- Assuming a GCC not infinitely old --- */ +# define cffi_compare_and_swap(l,o,n) __sync_bool_compare_and_swap(l,o,n) +# define cffi_write_barrier() __sync_synchronize() +# if !defined(__amd64__) && !defined(__x86_64__) && \ + !defined(__i386__) && !defined(__i386) +# define cffi_read_barrier() __sync_synchronize() +# else +# define cffi_read_barrier() (void)0 +# endif +#else + /* --- Windows threads version --- */ +# include +# define cffi_compare_and_swap(l,o,n) \ + (InterlockedCompareExchangePointer(l,n,o) == (o)) +# define cffi_write_barrier() InterlockedCompareExchange(&_cffi_dummy,0,0) +# define cffi_read_barrier() (void)0 +static volatile LONG _cffi_dummy; +#endif + +#ifdef WITH_THREAD +# ifndef _MSC_VER +# include + static pthread_mutex_t _cffi_embed_startup_lock; +# else + static CRITICAL_SECTION _cffi_embed_startup_lock; +# endif + static char _cffi_embed_startup_lock_ready = 0; +#endif + +static void _cffi_acquire_reentrant_mutex(void) +{ + static void *volatile lock = NULL; + + while (!cffi_compare_and_swap(&lock, NULL, (void *)1)) { + /* should ideally do a spin loop instruction here, but + hard to do it portably and doesn't really matter I + think: pthread_mutex_init() should be very fast, and + this is only run at start-up anyway. */ + } + +#ifdef WITH_THREAD + if (!_cffi_embed_startup_lock_ready) { +# ifndef _MSC_VER + pthread_mutexattr_t attr; + pthread_mutexattr_init(&attr); + pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); + pthread_mutex_init(&_cffi_embed_startup_lock, &attr); +# else + InitializeCriticalSection(&_cffi_embed_startup_lock); +# endif + _cffi_embed_startup_lock_ready = 1; + } +#endif + + while (!cffi_compare_and_swap(&lock, (void *)1, NULL)) + ; + +#ifndef _MSC_VER + pthread_mutex_lock(&_cffi_embed_startup_lock); +#else + EnterCriticalSection(&_cffi_embed_startup_lock); +#endif +} + +static void _cffi_release_reentrant_mutex(void) +{ +#ifndef _MSC_VER + pthread_mutex_unlock(&_cffi_embed_startup_lock); +#else + LeaveCriticalSection(&_cffi_embed_startup_lock); +#endif +} + + +/********** CPython-specific section **********/ +#ifndef PYPY_VERSION + +#include "_cffi_errors.h" + + +#define _cffi_call_python_org _cffi_exports[_CFFI_CPIDX] + +PyMODINIT_FUNC _CFFI_PYTHON_STARTUP_FUNC(void); /* forward */ + +static void _cffi_py_initialize(void) +{ + /* XXX use initsigs=0, which "skips initialization registration of + signal handlers, which might be useful when Python is + embedded" according to the Python docs. But review and think + if it should be a user-controllable setting. + + XXX we should also give a way to write errors to a buffer + instead of to stderr. + + XXX if importing 'site' fails, CPython (any version) calls + exit(). Should we try to work around this behavior here? + */ + Py_InitializeEx(0); +} + +static int _cffi_initialize_python(void) +{ + /* This initializes Python, imports _cffi_backend, and then the + present .dll/.so is set up as a CPython C extension module. + */ + int result; + PyGILState_STATE state; + PyObject *pycode=NULL, *global_dict=NULL, *x; + PyObject *builtins; + + state = PyGILState_Ensure(); + + /* Call the initxxx() function from the present module. It will + create and initialize us as a CPython extension module, instead + of letting the startup Python code do it---it might reimport + the same .dll/.so and get maybe confused on some platforms. + It might also have troubles locating the .dll/.so again for all + I know. + */ + (void)_CFFI_PYTHON_STARTUP_FUNC(); + if (PyErr_Occurred()) + goto error; + + /* Now run the Python code provided to ffi.embedding_init_code(). + */ + pycode = Py_CompileString(_CFFI_PYTHON_STARTUP_CODE, + "", + Py_file_input); + if (pycode == NULL) + goto error; + global_dict = PyDict_New(); + if (global_dict == NULL) + goto error; + builtins = PyEval_GetBuiltins(); + if (builtins == NULL) + goto error; + if (PyDict_SetItemString(global_dict, "__builtins__", builtins) < 0) + goto error; + x = PyEval_EvalCode( +#if PY_MAJOR_VERSION < 3 + (PyCodeObject *) +#endif + pycode, global_dict, global_dict); + if (x == NULL) + goto error; + Py_DECREF(x); + + /* Done! Now if we've been called from + _cffi_start_and_call_python() in an ``extern "Python"``, we can + only hope that the Python code did correctly set up the + corresponding @ffi.def_extern() function. Otherwise, the + general logic of ``extern "Python"`` functions (inside the + _cffi_backend module) will find that the reference is still + missing and print an error. + */ + result = 0; + done: + Py_XDECREF(pycode); + Py_XDECREF(global_dict); + PyGILState_Release(state); + return result; + + error:; + { + /* Print as much information as potentially useful. + Debugging load-time failures with embedding is not fun + */ + PyObject *ecap; + PyObject *exception, *v, *tb, *f, *modules, *mod; + PyErr_Fetch(&exception, &v, &tb); + ecap = _cffi_start_error_capture(); + f = PySys_GetObject((char *)"stderr"); + if (f != NULL && f != Py_None) { + PyFile_WriteString( + "Failed to initialize the Python-CFFI embedding logic:\n\n", f); + } + + if (exception != NULL) { + PyErr_NormalizeException(&exception, &v, &tb); + PyErr_Display(exception, v, tb); + } + Py_XDECREF(exception); + Py_XDECREF(v); + Py_XDECREF(tb); + + if (f != NULL && f != Py_None) { + PyFile_WriteString("\nFrom: " _CFFI_MODULE_NAME + "\ncompiled with cffi version: 2.0.0" + "\n_cffi_backend module: ", f); + modules = PyImport_GetModuleDict(); + mod = PyDict_GetItemString(modules, "_cffi_backend"); + if (mod == NULL) { + PyFile_WriteString("not loaded", f); + } + else { + v = PyObject_GetAttrString(mod, "__file__"); + PyFile_WriteObject(v, f, 0); + Py_XDECREF(v); + } + PyFile_WriteString("\nsys.path: ", f); + PyFile_WriteObject(PySys_GetObject((char *)"path"), f, 0); + PyFile_WriteString("\n\n", f); + } + _cffi_stop_error_capture(ecap); + } + result = -1; + goto done; +} + +#if PY_VERSION_HEX < 0x03080000 +PyAPI_DATA(char *) _PyParser_TokenNames[]; /* from CPython */ +#endif + +static int _cffi_carefully_make_gil(void) +{ + /* This does the basic initialization of Python. It can be called + completely concurrently from unrelated threads. It assumes + that we don't hold the GIL before (if it exists), and we don't + hold it afterwards. + + (What it really does used to be completely different in Python 2 + and Python 3, with the Python 2 solution avoiding the spin-lock + around the Py_InitializeEx() call. However, after recent changes + to CPython 2.7 (issue #358) it no longer works. So we use the + Python 3 solution everywhere.) + + This initializes Python by calling Py_InitializeEx(). + Important: this must not be called concurrently at all. + So we use a global variable as a simple spin lock. This global + variable must be from 'libpythonX.Y.so', not from this + cffi-based extension module, because it must be shared from + different cffi-based extension modules. + + In Python < 3.8, we choose + _PyParser_TokenNames[0] as a completely arbitrary pointer value + that is never written to. The default is to point to the + string "ENDMARKER". We change it temporarily to point to the + next character in that string. (Yes, I know it's REALLY + obscure.) + + In Python >= 3.8, this string array is no longer writable, so + instead we pick PyCapsuleType.tp_version_tag. We can't change + Python < 3.8 because someone might use a mixture of cffi + embedded modules, some of which were compiled before this file + changed. + + In Python >= 3.12, this stopped working because that particular + tp_version_tag gets modified during interpreter startup. It's + arguably a bad idea before 3.12 too, but again we can't change + that because someone might use a mixture of cffi embedded + modules, and no-one reported a bug so far. In Python >= 3.12 + we go instead for PyCapsuleType.tp_as_buffer, which is supposed + to always be NULL. We write to it temporarily a pointer to + a struct full of NULLs, which is semantically the same. + */ + +#ifdef WITH_THREAD +# if PY_VERSION_HEX < 0x03080000 + char *volatile *lock = (char *volatile *)_PyParser_TokenNames; + char *old_value, *locked_value; + + while (1) { /* spin loop */ + old_value = *lock; + locked_value = old_value + 1; + if (old_value[0] == 'E') { + assert(old_value[1] == 'N'); + if (cffi_compare_and_swap(lock, old_value, locked_value)) + break; + } + else { + assert(old_value[0] == 'N'); + /* should ideally do a spin loop instruction here, but + hard to do it portably and doesn't really matter I + think: PyEval_InitThreads() should be very fast, and + this is only run at start-up anyway. */ + } + } +# else +# if PY_VERSION_HEX < 0x030C0000 + int volatile *lock = (int volatile *)&PyCapsule_Type.tp_version_tag; + int old_value, locked_value = -42; + assert(!(PyCapsule_Type.tp_flags & Py_TPFLAGS_HAVE_VERSION_TAG)); +# else + static struct ebp_s { PyBufferProcs buf; int mark; } empty_buffer_procs; + empty_buffer_procs.mark = -42; + PyBufferProcs *volatile *lock = (PyBufferProcs *volatile *) + &PyCapsule_Type.tp_as_buffer; + PyBufferProcs *old_value, *locked_value = &empty_buffer_procs.buf; +# endif + + while (1) { /* spin loop */ + old_value = *lock; + if (old_value == 0) { + if (cffi_compare_and_swap(lock, old_value, locked_value)) + break; + } + else { +# if PY_VERSION_HEX < 0x030C0000 + assert(old_value == locked_value); +# else + /* The pointer should point to a possibly different + empty_buffer_procs from another C extension module */ + assert(((struct ebp_s *)old_value)->mark == -42); +# endif + /* should ideally do a spin loop instruction here, but + hard to do it portably and doesn't really matter I + think: PyEval_InitThreads() should be very fast, and + this is only run at start-up anyway. */ + } + } +# endif +#endif + + /* call Py_InitializeEx() */ + if (!Py_IsInitialized()) { + _cffi_py_initialize(); +#if PY_VERSION_HEX < 0x03070000 + PyEval_InitThreads(); +#endif + PyEval_SaveThread(); /* release the GIL */ + /* the returned tstate must be the one that has been stored into the + autoTLSkey by _PyGILState_Init() called from Py_Initialize(). */ + } + else { +#if PY_VERSION_HEX < 0x03070000 + /* PyEval_InitThreads() is always a no-op from CPython 3.7 */ + PyGILState_STATE state = PyGILState_Ensure(); + PyEval_InitThreads(); + PyGILState_Release(state); +#endif + } + +#ifdef WITH_THREAD + /* release the lock */ + while (!cffi_compare_and_swap(lock, locked_value, old_value)) + ; +#endif + + return 0; +} + +/********** end CPython-specific section **********/ + + +#else + + +/********** PyPy-specific section **********/ + +PyMODINIT_FUNC _CFFI_PYTHON_STARTUP_FUNC(const void *[]); /* forward */ + +static struct _cffi_pypy_init_s { + const char *name; + void *func; /* function pointer */ + const char *code; +} _cffi_pypy_init = { + _CFFI_MODULE_NAME, + _CFFI_PYTHON_STARTUP_FUNC, + _CFFI_PYTHON_STARTUP_CODE, +}; + +extern int pypy_carefully_make_gil(const char *); +extern int pypy_init_embedded_cffi_module(int, struct _cffi_pypy_init_s *); + +static int _cffi_carefully_make_gil(void) +{ + return pypy_carefully_make_gil(_CFFI_MODULE_NAME); +} + +static int _cffi_initialize_python(void) +{ + return pypy_init_embedded_cffi_module(0xB011, &_cffi_pypy_init); +} + +/********** end PyPy-specific section **********/ + + +#endif + + +#ifdef __GNUC__ +__attribute__((noinline)) +#endif +static _cffi_call_python_fnptr _cffi_start_python(void) +{ + /* Delicate logic to initialize Python. This function can be + called multiple times concurrently, e.g. when the process calls + its first ``extern "Python"`` functions in multiple threads at + once. It can also be called recursively, in which case we must + ignore it. We also have to consider what occurs if several + different cffi-based extensions reach this code in parallel + threads---it is a different copy of the code, then, and we + can't have any shared global variable unless it comes from + 'libpythonX.Y.so'. + + Idea: + + * _cffi_carefully_make_gil(): "carefully" call + PyEval_InitThreads() (possibly with Py_InitializeEx() first). + + * then we use a (local) custom lock to make sure that a call to this + cffi-based extension will wait if another call to the *same* + extension is running the initialization in another thread. + It is reentrant, so that a recursive call will not block, but + only one from a different thread. + + * then we grab the GIL and (Python 2) we call Py_InitializeEx(). + At this point, concurrent calls to Py_InitializeEx() are not + possible: we have the GIL. + + * do the rest of the specific initialization, which may + temporarily release the GIL but not the custom lock. + Only release the custom lock when we are done. + */ + static char called = 0; + + if (_cffi_carefully_make_gil() != 0) + return NULL; + + _cffi_acquire_reentrant_mutex(); + + /* Here the GIL exists, but we don't have it. We're only protected + from concurrency by the reentrant mutex. */ + + /* This file only initializes the embedded module once, the first + time this is called, even if there are subinterpreters. */ + if (!called) { + called = 1; /* invoke _cffi_initialize_python() only once, + but don't set '_cffi_call_python' right now, + otherwise concurrent threads won't call + this function at all (we need them to wait) */ + if (_cffi_initialize_python() == 0) { + /* now initialization is finished. Switch to the fast-path. */ + + /* We would like nobody to see the new value of + '_cffi_call_python' without also seeing the rest of the + data initialized. However, this is not possible. But + the new value of '_cffi_call_python' is the function + 'cffi_call_python()' from _cffi_backend. So: */ + cffi_write_barrier(); + /* ^^^ we put a write barrier here, and a corresponding + read barrier at the start of cffi_call_python(). This + ensures that after that read barrier, we see everything + done here before the write barrier. + */ + + assert(_cffi_call_python_org != NULL); + _cffi_call_python = (_cffi_call_python_fnptr)_cffi_call_python_org; + } + else { + /* initialization failed. Reset this to NULL, even if it was + already set to some other value. Future calls to + _cffi_start_python() are still forced to occur, and will + always return NULL from now on. */ + _cffi_call_python_org = NULL; + } + } + + _cffi_release_reentrant_mutex(); + + return (_cffi_call_python_fnptr)_cffi_call_python_org; +} + +static +void _cffi_start_and_call_python(struct _cffi_externpy_s *externpy, char *args) +{ + _cffi_call_python_fnptr fnptr; + int current_err = errno; +#ifdef _MSC_VER + int current_lasterr = GetLastError(); +#endif + fnptr = _cffi_start_python(); + if (fnptr == NULL) { + fprintf(stderr, "function %s() called, but initialization code " + "failed. Returning 0.\n", externpy->name); + memset(args, 0, externpy->size_of_result); + } +#ifdef _MSC_VER + SetLastError(current_lasterr); +#endif + errno = current_err; + + if (fnptr != NULL) + fnptr(externpy, args); +} + + +/* The cffi_start_python() function makes sure Python is initialized + and our cffi module is set up. It can be called manually from the + user C code. The same effect is obtained automatically from any + dll-exported ``extern "Python"`` function. This function returns + -1 if initialization failed, 0 if all is OK. */ +_CFFI_UNUSED_FN +static int cffi_start_python(void) +{ + if (_cffi_call_python == &_cffi_start_and_call_python) { + if (_cffi_start_python() == NULL) + return -1; + } + cffi_read_barrier(); + return 0; +} + +#undef cffi_compare_and_swap +#undef cffi_write_barrier +#undef cffi_read_barrier + +#ifdef __cplusplus +} +#endif diff --git a/venv/lib/python3.9/site-packages/cffi/_imp_emulation.py b/venv/lib/python3.9/site-packages/cffi/_imp_emulation.py new file mode 100644 index 0000000..136abdd --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/_imp_emulation.py @@ -0,0 +1,83 @@ + +try: + # this works on Python < 3.12 + from imp import * + +except ImportError: + # this is a limited emulation for Python >= 3.12. + # Note that this is used only for tests or for the old ffi.verify(). + # This is copied from the source code of Python 3.11. + + from _imp import (acquire_lock, release_lock, + is_builtin, is_frozen) + + from importlib._bootstrap import _load + + from importlib import machinery + import os + import sys + import tokenize + + SEARCH_ERROR = 0 + PY_SOURCE = 1 + PY_COMPILED = 2 + C_EXTENSION = 3 + PY_RESOURCE = 4 + PKG_DIRECTORY = 5 + C_BUILTIN = 6 + PY_FROZEN = 7 + PY_CODERESOURCE = 8 + IMP_HOOK = 9 + + def get_suffixes(): + extensions = [(s, 'rb', C_EXTENSION) + for s in machinery.EXTENSION_SUFFIXES] + source = [(s, 'r', PY_SOURCE) for s in machinery.SOURCE_SUFFIXES] + bytecode = [(s, 'rb', PY_COMPILED) for s in machinery.BYTECODE_SUFFIXES] + return extensions + source + bytecode + + def find_module(name, path=None): + if not isinstance(name, str): + raise TypeError("'name' must be a str, not {}".format(type(name))) + elif not isinstance(path, (type(None), list)): + # Backwards-compatibility + raise RuntimeError("'path' must be None or a list, " + "not {}".format(type(path))) + + if path is None: + if is_builtin(name): + return None, None, ('', '', C_BUILTIN) + elif is_frozen(name): + return None, None, ('', '', PY_FROZEN) + else: + path = sys.path + + for entry in path: + package_directory = os.path.join(entry, name) + for suffix in ['.py', machinery.BYTECODE_SUFFIXES[0]]: + package_file_name = '__init__' + suffix + file_path = os.path.join(package_directory, package_file_name) + if os.path.isfile(file_path): + return None, package_directory, ('', '', PKG_DIRECTORY) + for suffix, mode, type_ in get_suffixes(): + file_name = name + suffix + file_path = os.path.join(entry, file_name) + if os.path.isfile(file_path): + break + else: + continue + break # Break out of outer loop when breaking out of inner loop. + else: + raise ImportError(name, name=name) + + encoding = None + if 'b' not in mode: + with open(file_path, 'rb') as file: + encoding = tokenize.detect_encoding(file.readline)[0] + file = open(file_path, mode, encoding=encoding) + return file, file_path, (suffix, mode, type_) + + def load_dynamic(name, path, file=None): + loader = machinery.ExtensionFileLoader(name, path) + spec = machinery.ModuleSpec(name=name, loader=loader, origin=path) + return _load(spec) diff --git a/venv/lib/python3.9/site-packages/cffi/_shimmed_dist_utils.py b/venv/lib/python3.9/site-packages/cffi/_shimmed_dist_utils.py new file mode 100644 index 0000000..c3d2312 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/_shimmed_dist_utils.py @@ -0,0 +1,45 @@ +""" +Temporary shim module to indirect the bits of distutils we need from setuptools/distutils while providing useful +error messages beyond `No module named 'distutils' on Python >= 3.12, or when setuptools' vendored distutils is broken. + +This is a compromise to avoid a hard-dep on setuptools for Python >= 3.12, since many users don't need runtime compilation support from CFFI. +""" +import sys + +try: + # import setuptools first; this is the most robust way to ensure its embedded distutils is available + # (the .pth shim should usually work, but this is even more robust) + import setuptools +except Exception as ex: + if sys.version_info >= (3, 12): + # Python 3.12 has no built-in distutils to fall back on, so any import problem is fatal + raise Exception("This CFFI feature requires setuptools on Python >= 3.12. The setuptools module is missing or non-functional.") from ex + + # silently ignore on older Pythons (support fallback to stdlib distutils where available) +else: + del setuptools + +try: + # bring in just the bits of distutils we need, whether they really came from setuptools or stdlib-embedded distutils + from distutils import log, sysconfig + from distutils.ccompiler import CCompiler + from distutils.command.build_ext import build_ext + from distutils.core import Distribution, Extension + from distutils.dir_util import mkpath + from distutils.errors import DistutilsSetupError, CompileError, LinkError + from distutils.log import set_threshold, set_verbosity + + if sys.platform == 'win32': + try: + # FUTURE: msvc9compiler module was removed in setuptools 74; consider removing, as it's only used by an ancient patch in `recompiler` + from distutils.msvc9compiler import MSVCCompiler + except ImportError: + MSVCCompiler = None +except Exception as ex: + if sys.version_info >= (3, 12): + raise Exception("This CFFI feature requires setuptools on Python >= 3.12. Please install the setuptools package.") from ex + + # anything older, just let the underlying distutils import error fly + raise Exception("This CFFI feature requires distutils. Please install the distutils or setuptools package.") from ex + +del sys diff --git a/venv/lib/python3.9/site-packages/cffi/api.py b/venv/lib/python3.9/site-packages/cffi/api.py new file mode 100644 index 0000000..5a474f3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/api.py @@ -0,0 +1,967 @@ +import sys, types +from .lock import allocate_lock +from .error import CDefError +from . import model + +try: + callable +except NameError: + # Python 3.1 + from collections import Callable + callable = lambda x: isinstance(x, Callable) + +try: + basestring +except NameError: + # Python 3.x + basestring = str + +_unspecified = object() + + + +class FFI(object): + r''' + The main top-level class that you instantiate once, or once per module. + + Example usage: + + ffi = FFI() + ffi.cdef(""" + int printf(const char *, ...); + """) + + C = ffi.dlopen(None) # standard library + -or- + C = ffi.verify() # use a C compiler: verify the decl above is right + + C.printf("hello, %s!\n", ffi.new("char[]", "world")) + ''' + + def __init__(self, backend=None): + """Create an FFI instance. The 'backend' argument is used to + select a non-default backend, mostly for tests. + """ + if backend is None: + # You need PyPy (>= 2.0 beta), or a CPython (>= 2.6) with + # _cffi_backend.so compiled. + import _cffi_backend as backend + from . import __version__ + if backend.__version__ != __version__: + # bad version! Try to be as explicit as possible. + if hasattr(backend, '__file__'): + # CPython + raise Exception("Version mismatch: this is the 'cffi' package version %s, located in %r. When we import the top-level '_cffi_backend' extension module, we get version %s, located in %r. The two versions should be equal; check your installation." % ( + __version__, __file__, + backend.__version__, backend.__file__)) + else: + # PyPy + raise Exception("Version mismatch: this is the 'cffi' package version %s, located in %r. This interpreter comes with a built-in '_cffi_backend' module, which is version %s. The two versions should be equal; check your installation." % ( + __version__, __file__, backend.__version__)) + # (If you insist you can also try to pass the option + # 'backend=backend_ctypes.CTypesBackend()', but don't + # rely on it! It's probably not going to work well.) + + from . import cparser + self._backend = backend + self._lock = allocate_lock() + self._parser = cparser.Parser() + self._cached_btypes = {} + self._parsed_types = types.ModuleType('parsed_types').__dict__ + self._new_types = types.ModuleType('new_types').__dict__ + self._function_caches = [] + self._libraries = [] + self._cdefsources = [] + self._included_ffis = [] + self._windows_unicode = None + self._init_once_cache = {} + self._cdef_version = None + self._embedding = None + self._typecache = model.get_typecache(backend) + if hasattr(backend, 'set_ffi'): + backend.set_ffi(self) + for name in list(backend.__dict__): + if name.startswith('RTLD_'): + setattr(self, name, getattr(backend, name)) + # + with self._lock: + self.BVoidP = self._get_cached_btype(model.voidp_type) + self.BCharA = self._get_cached_btype(model.char_array_type) + if isinstance(backend, types.ModuleType): + # _cffi_backend: attach these constants to the class + if not hasattr(FFI, 'NULL'): + FFI.NULL = self.cast(self.BVoidP, 0) + FFI.CData, FFI.CType = backend._get_types() + else: + # ctypes backend: attach these constants to the instance + self.NULL = self.cast(self.BVoidP, 0) + self.CData, self.CType = backend._get_types() + self.buffer = backend.buffer + + def cdef(self, csource, override=False, packed=False, pack=None): + """Parse the given C source. This registers all declared functions, + types, and global variables. The functions and global variables can + then be accessed via either 'ffi.dlopen()' or 'ffi.verify()'. + The types can be used in 'ffi.new()' and other functions. + If 'packed' is specified as True, all structs declared inside this + cdef are packed, i.e. laid out without any field alignment at all. + Alternatively, 'pack' can be a small integer, and requests for + alignment greater than that are ignored (pack=1 is equivalent to + packed=True). + """ + self._cdef(csource, override=override, packed=packed, pack=pack) + + def embedding_api(self, csource, packed=False, pack=None): + self._cdef(csource, packed=packed, pack=pack, dllexport=True) + if self._embedding is None: + self._embedding = '' + + def _cdef(self, csource, override=False, **options): + if not isinstance(csource, str): # unicode, on Python 2 + if not isinstance(csource, basestring): + raise TypeError("cdef() argument must be a string") + csource = csource.encode('ascii') + with self._lock: + self._cdef_version = object() + self._parser.parse(csource, override=override, **options) + self._cdefsources.append(csource) + if override: + for cache in self._function_caches: + cache.clear() + finishlist = self._parser._recomplete + if finishlist: + self._parser._recomplete = [] + for tp in finishlist: + tp.finish_backend_type(self, finishlist) + + def dlopen(self, name, flags=0): + """Load and return a dynamic library identified by 'name'. + The standard C library can be loaded by passing None. + Note that functions and types declared by 'ffi.cdef()' are not + linked to a particular library, just like C headers; in the + library we only look for the actual (untyped) symbols. + """ + if not (isinstance(name, basestring) or + name is None or + isinstance(name, self.CData)): + raise TypeError("dlopen(name): name must be a file name, None, " + "or an already-opened 'void *' handle") + with self._lock: + lib, function_cache = _make_ffi_library(self, name, flags) + self._function_caches.append(function_cache) + self._libraries.append(lib) + return lib + + def dlclose(self, lib): + """Close a library obtained with ffi.dlopen(). After this call, + access to functions or variables from the library will fail + (possibly with a segmentation fault). + """ + type(lib).__cffi_close__(lib) + + def _typeof_locked(self, cdecl): + # call me with the lock! + key = cdecl + if key in self._parsed_types: + return self._parsed_types[key] + # + if not isinstance(cdecl, str): # unicode, on Python 2 + cdecl = cdecl.encode('ascii') + # + type = self._parser.parse_type(cdecl) + really_a_function_type = type.is_raw_function + if really_a_function_type: + type = type.as_function_pointer() + btype = self._get_cached_btype(type) + result = btype, really_a_function_type + self._parsed_types[key] = result + return result + + def _typeof(self, cdecl, consider_function_as_funcptr=False): + # string -> ctype object + try: + result = self._parsed_types[cdecl] + except KeyError: + with self._lock: + result = self._typeof_locked(cdecl) + # + btype, really_a_function_type = result + if really_a_function_type and not consider_function_as_funcptr: + raise CDefError("the type %r is a function type, not a " + "pointer-to-function type" % (cdecl,)) + return btype + + def typeof(self, cdecl): + """Parse the C type given as a string and return the + corresponding object. + It can also be used on 'cdata' instance to get its C type. + """ + if isinstance(cdecl, basestring): + return self._typeof(cdecl) + if isinstance(cdecl, self.CData): + return self._backend.typeof(cdecl) + if isinstance(cdecl, types.BuiltinFunctionType): + res = _builtin_function_type(cdecl) + if res is not None: + return res + if (isinstance(cdecl, types.FunctionType) + and hasattr(cdecl, '_cffi_base_type')): + with self._lock: + return self._get_cached_btype(cdecl._cffi_base_type) + raise TypeError(type(cdecl)) + + def sizeof(self, cdecl): + """Return the size in bytes of the argument. It can be a + string naming a C type, or a 'cdata' instance. + """ + if isinstance(cdecl, basestring): + BType = self._typeof(cdecl) + return self._backend.sizeof(BType) + else: + return self._backend.sizeof(cdecl) + + def alignof(self, cdecl): + """Return the natural alignment size in bytes of the C type + given as a string. + """ + if isinstance(cdecl, basestring): + cdecl = self._typeof(cdecl) + return self._backend.alignof(cdecl) + + def offsetof(self, cdecl, *fields_or_indexes): + """Return the offset of the named field inside the given + structure or array, which must be given as a C type name. + You can give several field names in case of nested structures. + You can also give numeric values which correspond to array + items, in case of an array type. + """ + if isinstance(cdecl, basestring): + cdecl = self._typeof(cdecl) + return self._typeoffsetof(cdecl, *fields_or_indexes)[1] + + def new(self, cdecl, init=None): + """Allocate an instance according to the specified C type and + return a pointer to it. The specified C type must be either a + pointer or an array: ``new('X *')`` allocates an X and returns + a pointer to it, whereas ``new('X[n]')`` allocates an array of + n X'es and returns an array referencing it (which works + mostly like a pointer, like in C). You can also use + ``new('X[]', n)`` to allocate an array of a non-constant + length n. + + The memory is initialized following the rules of declaring a + global variable in C: by default it is zero-initialized, but + an explicit initializer can be given which can be used to + fill all or part of the memory. + + When the returned object goes out of scope, the memory + is freed. In other words the returned object has + ownership of the value of type 'cdecl' that it points to. This + means that the raw data can be used as long as this object is + kept alive, but must not be used for a longer time. Be careful + about that when copying the pointer to the memory somewhere + else, e.g. into another structure. + """ + if isinstance(cdecl, basestring): + cdecl = self._typeof(cdecl) + return self._backend.newp(cdecl, init) + + def new_allocator(self, alloc=None, free=None, + should_clear_after_alloc=True): + """Return a new allocator, i.e. a function that behaves like ffi.new() + but uses the provided low-level 'alloc' and 'free' functions. + + 'alloc' is called with the size as argument. If it returns NULL, a + MemoryError is raised. 'free' is called with the result of 'alloc' + as argument. Both can be either Python function or directly C + functions. If 'free' is None, then no free function is called. + If both 'alloc' and 'free' are None, the default is used. + + If 'should_clear_after_alloc' is set to False, then the memory + returned by 'alloc' is assumed to be already cleared (or you are + fine with garbage); otherwise CFFI will clear it. + """ + compiled_ffi = self._backend.FFI() + allocator = compiled_ffi.new_allocator(alloc, free, + should_clear_after_alloc) + def allocate(cdecl, init=None): + if isinstance(cdecl, basestring): + cdecl = self._typeof(cdecl) + return allocator(cdecl, init) + return allocate + + def cast(self, cdecl, source): + """Similar to a C cast: returns an instance of the named C + type initialized with the given 'source'. The source is + casted between integers or pointers of any type. + """ + if isinstance(cdecl, basestring): + cdecl = self._typeof(cdecl) + return self._backend.cast(cdecl, source) + + def string(self, cdata, maxlen=-1): + """Return a Python string (or unicode string) from the 'cdata'. + If 'cdata' is a pointer or array of characters or bytes, returns + the null-terminated string. The returned string extends until + the first null character, or at most 'maxlen' characters. If + 'cdata' is an array then 'maxlen' defaults to its length. + + If 'cdata' is a pointer or array of wchar_t, returns a unicode + string following the same rules. + + If 'cdata' is a single character or byte or a wchar_t, returns + it as a string or unicode string. + + If 'cdata' is an enum, returns the value of the enumerator as a + string, or 'NUMBER' if the value is out of range. + """ + return self._backend.string(cdata, maxlen) + + def unpack(self, cdata, length): + """Unpack an array of C data of the given length, + returning a Python string/unicode/list. + + If 'cdata' is a pointer to 'char', returns a byte string. + It does not stop at the first null. This is equivalent to: + ffi.buffer(cdata, length)[:] + + If 'cdata' is a pointer to 'wchar_t', returns a unicode string. + 'length' is measured in wchar_t's; it is not the size in bytes. + + If 'cdata' is a pointer to anything else, returns a list of + 'length' items. This is a faster equivalent to: + [cdata[i] for i in range(length)] + """ + return self._backend.unpack(cdata, length) + + #def buffer(self, cdata, size=-1): + # """Return a read-write buffer object that references the raw C data + # pointed to by the given 'cdata'. The 'cdata' must be a pointer or + # an array. Can be passed to functions expecting a buffer, or directly + # manipulated with: + # + # buf[:] get a copy of it in a regular string, or + # buf[idx] as a single character + # buf[:] = ... + # buf[idx] = ... change the content + # """ + # note that 'buffer' is a type, set on this instance by __init__ + + def from_buffer(self, cdecl, python_buffer=_unspecified, + require_writable=False): + """Return a cdata of the given type pointing to the data of the + given Python object, which must support the buffer interface. + Note that this is not meant to be used on the built-in types + str or unicode (you can build 'char[]' arrays explicitly) + but only on objects containing large quantities of raw data + in some other format, like 'array.array' or numpy arrays. + + The first argument is optional and default to 'char[]'. + """ + if python_buffer is _unspecified: + cdecl, python_buffer = self.BCharA, cdecl + elif isinstance(cdecl, basestring): + cdecl = self._typeof(cdecl) + return self._backend.from_buffer(cdecl, python_buffer, + require_writable) + + def memmove(self, dest, src, n): + """ffi.memmove(dest, src, n) copies n bytes of memory from src to dest. + + Like the C function memmove(), the memory areas may overlap; + apart from that it behaves like the C function memcpy(). + + 'src' can be any cdata ptr or array, or any Python buffer object. + 'dest' can be any cdata ptr or array, or a writable Python buffer + object. The size to copy, 'n', is always measured in bytes. + + Unlike other methods, this one supports all Python buffer including + byte strings and bytearrays---but it still does not support + non-contiguous buffers. + """ + return self._backend.memmove(dest, src, n) + + def callback(self, cdecl, python_callable=None, error=None, onerror=None): + """Return a callback object or a decorator making such a + callback object. 'cdecl' must name a C function pointer type. + The callback invokes the specified 'python_callable' (which may + be provided either directly or via a decorator). Important: the + callback object must be manually kept alive for as long as the + callback may be invoked from the C level. + """ + def callback_decorator_wrap(python_callable): + if not callable(python_callable): + raise TypeError("the 'python_callable' argument " + "is not callable") + return self._backend.callback(cdecl, python_callable, + error, onerror) + if isinstance(cdecl, basestring): + cdecl = self._typeof(cdecl, consider_function_as_funcptr=True) + if python_callable is None: + return callback_decorator_wrap # decorator mode + else: + return callback_decorator_wrap(python_callable) # direct mode + + def getctype(self, cdecl, replace_with=''): + """Return a string giving the C type 'cdecl', which may be itself + a string or a object. If 'replace_with' is given, it gives + extra text to append (or insert for more complicated C types), like + a variable name, or '*' to get actually the C type 'pointer-to-cdecl'. + """ + if isinstance(cdecl, basestring): + cdecl = self._typeof(cdecl) + replace_with = replace_with.strip() + if (replace_with.startswith('*') + and '&[' in self._backend.getcname(cdecl, '&')): + replace_with = '(%s)' % replace_with + elif replace_with and not replace_with[0] in '[(': + replace_with = ' ' + replace_with + return self._backend.getcname(cdecl, replace_with) + + def gc(self, cdata, destructor, size=0): + """Return a new cdata object that points to the same + data. Later, when this new cdata object is garbage-collected, + 'destructor(old_cdata_object)' will be called. + + The optional 'size' gives an estimate of the size, used to + trigger the garbage collection more eagerly. So far only used + on PyPy. It tells the GC that the returned object keeps alive + roughly 'size' bytes of external memory. + """ + return self._backend.gcp(cdata, destructor, size) + + def _get_cached_btype(self, type): + assert self._lock.acquire(False) is False + # call me with the lock! + try: + BType = self._cached_btypes[type] + except KeyError: + finishlist = [] + BType = type.get_cached_btype(self, finishlist) + for type in finishlist: + type.finish_backend_type(self, finishlist) + return BType + + def verify(self, source='', tmpdir=None, **kwargs): + """Verify that the current ffi signatures compile on this + machine, and return a dynamic library object. The dynamic + library can be used to call functions and access global + variables declared in this 'ffi'. The library is compiled + by the C compiler: it gives you C-level API compatibility + (including calling macros). This is unlike 'ffi.dlopen()', + which requires binary compatibility in the signatures. + """ + from .verifier import Verifier, _caller_dir_pycache + # + # If set_unicode(True) was called, insert the UNICODE and + # _UNICODE macro declarations + if self._windows_unicode: + self._apply_windows_unicode(kwargs) + # + # Set the tmpdir here, and not in Verifier.__init__: it picks + # up the caller's directory, which we want to be the caller of + # ffi.verify(), as opposed to the caller of Veritier(). + tmpdir = tmpdir or _caller_dir_pycache() + # + # Make a Verifier() and use it to load the library. + self.verifier = Verifier(self, source, tmpdir, **kwargs) + lib = self.verifier.load_library() + # + # Save the loaded library for keep-alive purposes, even + # if the caller doesn't keep it alive itself (it should). + self._libraries.append(lib) + return lib + + def _get_errno(self): + return self._backend.get_errno() + def _set_errno(self, errno): + self._backend.set_errno(errno) + errno = property(_get_errno, _set_errno, None, + "the value of 'errno' from/to the C calls") + + def getwinerror(self, code=-1): + return self._backend.getwinerror(code) + + def _pointer_to(self, ctype): + with self._lock: + return model.pointer_cache(self, ctype) + + def addressof(self, cdata, *fields_or_indexes): + """Return the address of a . + If 'fields_or_indexes' are given, returns the address of that + field or array item in the structure or array, recursively in + case of nested structures. + """ + try: + ctype = self._backend.typeof(cdata) + except TypeError: + if '__addressof__' in type(cdata).__dict__: + return type(cdata).__addressof__(cdata, *fields_or_indexes) + raise + if fields_or_indexes: + ctype, offset = self._typeoffsetof(ctype, *fields_or_indexes) + else: + if ctype.kind == "pointer": + raise TypeError("addressof(pointer)") + offset = 0 + ctypeptr = self._pointer_to(ctype) + return self._backend.rawaddressof(ctypeptr, cdata, offset) + + def _typeoffsetof(self, ctype, field_or_index, *fields_or_indexes): + ctype, offset = self._backend.typeoffsetof(ctype, field_or_index) + for field1 in fields_or_indexes: + ctype, offset1 = self._backend.typeoffsetof(ctype, field1, 1) + offset += offset1 + return ctype, offset + + def include(self, ffi_to_include): + """Includes the typedefs, structs, unions and enums defined + in another FFI instance. Usage is similar to a #include in C, + where a part of the program might include types defined in + another part for its own usage. Note that the include() + method has no effect on functions, constants and global + variables, which must anyway be accessed directly from the + lib object returned by the original FFI instance. + """ + if not isinstance(ffi_to_include, FFI): + raise TypeError("ffi.include() expects an argument that is also of" + " type cffi.FFI, not %r" % ( + type(ffi_to_include).__name__,)) + if ffi_to_include is self: + raise ValueError("self.include(self)") + with ffi_to_include._lock: + with self._lock: + self._parser.include(ffi_to_include._parser) + self._cdefsources.append('[') + self._cdefsources.extend(ffi_to_include._cdefsources) + self._cdefsources.append(']') + self._included_ffis.append(ffi_to_include) + + def new_handle(self, x): + return self._backend.newp_handle(self.BVoidP, x) + + def from_handle(self, x): + return self._backend.from_handle(x) + + def release(self, x): + self._backend.release(x) + + def set_unicode(self, enabled_flag): + """Windows: if 'enabled_flag' is True, enable the UNICODE and + _UNICODE defines in C, and declare the types like TCHAR and LPTCSTR + to be (pointers to) wchar_t. If 'enabled_flag' is False, + declare these types to be (pointers to) plain 8-bit characters. + This is mostly for backward compatibility; you usually want True. + """ + if self._windows_unicode is not None: + raise ValueError("set_unicode() can only be called once") + enabled_flag = bool(enabled_flag) + if enabled_flag: + self.cdef("typedef wchar_t TBYTE;" + "typedef wchar_t TCHAR;" + "typedef const wchar_t *LPCTSTR;" + "typedef const wchar_t *PCTSTR;" + "typedef wchar_t *LPTSTR;" + "typedef wchar_t *PTSTR;" + "typedef TBYTE *PTBYTE;" + "typedef TCHAR *PTCHAR;") + else: + self.cdef("typedef char TBYTE;" + "typedef char TCHAR;" + "typedef const char *LPCTSTR;" + "typedef const char *PCTSTR;" + "typedef char *LPTSTR;" + "typedef char *PTSTR;" + "typedef TBYTE *PTBYTE;" + "typedef TCHAR *PTCHAR;") + self._windows_unicode = enabled_flag + + def _apply_windows_unicode(self, kwds): + defmacros = kwds.get('define_macros', ()) + if not isinstance(defmacros, (list, tuple)): + raise TypeError("'define_macros' must be a list or tuple") + defmacros = list(defmacros) + [('UNICODE', '1'), + ('_UNICODE', '1')] + kwds['define_macros'] = defmacros + + def _apply_embedding_fix(self, kwds): + # must include an argument like "-lpython2.7" for the compiler + def ensure(key, value): + lst = kwds.setdefault(key, []) + if value not in lst: + lst.append(value) + # + if '__pypy__' in sys.builtin_module_names: + import os + if sys.platform == "win32": + # we need 'libpypy-c.lib'. Current distributions of + # pypy (>= 4.1) contain it as 'libs/python27.lib'. + pythonlib = "python{0[0]}{0[1]}".format(sys.version_info) + if hasattr(sys, 'prefix'): + ensure('library_dirs', os.path.join(sys.prefix, 'libs')) + else: + # we need 'libpypy-c.{so,dylib}', which should be by + # default located in 'sys.prefix/bin' for installed + # systems. + if sys.version_info < (3,): + pythonlib = "pypy-c" + else: + pythonlib = "pypy3-c" + if hasattr(sys, 'prefix'): + ensure('library_dirs', os.path.join(sys.prefix, 'bin')) + # On uninstalled pypy's, the libpypy-c is typically found in + # .../pypy/goal/. + if hasattr(sys, 'prefix'): + ensure('library_dirs', os.path.join(sys.prefix, 'pypy', 'goal')) + else: + if sys.platform == "win32": + template = "python%d%d" + if hasattr(sys, 'gettotalrefcount'): + template += '_d' + else: + try: + import sysconfig + except ImportError: # 2.6 + from cffi._shimmed_dist_utils import sysconfig + template = "python%d.%d" + if sysconfig.get_config_var('DEBUG_EXT'): + template += sysconfig.get_config_var('DEBUG_EXT') + pythonlib = (template % + (sys.hexversion >> 24, (sys.hexversion >> 16) & 0xff)) + if hasattr(sys, 'abiflags'): + pythonlib += sys.abiflags + ensure('libraries', pythonlib) + if sys.platform == "win32": + ensure('extra_link_args', '/MANIFEST') + + def set_source(self, module_name, source, source_extension='.c', **kwds): + import os + if hasattr(self, '_assigned_source'): + raise ValueError("set_source() cannot be called several times " + "per ffi object") + if not isinstance(module_name, basestring): + raise TypeError("'module_name' must be a string") + if os.sep in module_name or (os.altsep and os.altsep in module_name): + raise ValueError("'module_name' must not contain '/': use a dotted " + "name to make a 'package.module' location") + self._assigned_source = (str(module_name), source, + source_extension, kwds) + + def set_source_pkgconfig(self, module_name, pkgconfig_libs, source, + source_extension='.c', **kwds): + from . import pkgconfig + if not isinstance(pkgconfig_libs, list): + raise TypeError("the pkgconfig_libs argument must be a list " + "of package names") + kwds2 = pkgconfig.flags_from_pkgconfig(pkgconfig_libs) + pkgconfig.merge_flags(kwds, kwds2) + self.set_source(module_name, source, source_extension, **kwds) + + def distutils_extension(self, tmpdir='build', verbose=True): + from cffi._shimmed_dist_utils import mkpath + from .recompiler import recompile + # + if not hasattr(self, '_assigned_source'): + if hasattr(self, 'verifier'): # fallback, 'tmpdir' ignored + return self.verifier.get_extension() + raise ValueError("set_source() must be called before" + " distutils_extension()") + module_name, source, source_extension, kwds = self._assigned_source + if source is None: + raise TypeError("distutils_extension() is only for C extension " + "modules, not for dlopen()-style pure Python " + "modules") + mkpath(tmpdir) + ext, updated = recompile(self, module_name, + source, tmpdir=tmpdir, extradir=tmpdir, + source_extension=source_extension, + call_c_compiler=False, **kwds) + if verbose: + if updated: + sys.stderr.write("regenerated: %r\n" % (ext.sources[0],)) + else: + sys.stderr.write("not modified: %r\n" % (ext.sources[0],)) + return ext + + def emit_c_code(self, filename): + from .recompiler import recompile + # + if not hasattr(self, '_assigned_source'): + raise ValueError("set_source() must be called before emit_c_code()") + module_name, source, source_extension, kwds = self._assigned_source + if source is None: + raise TypeError("emit_c_code() is only for C extension modules, " + "not for dlopen()-style pure Python modules") + recompile(self, module_name, source, + c_file=filename, call_c_compiler=False, + uses_ffiplatform=False, **kwds) + + def emit_python_code(self, filename): + from .recompiler import recompile + # + if not hasattr(self, '_assigned_source'): + raise ValueError("set_source() must be called before emit_c_code()") + module_name, source, source_extension, kwds = self._assigned_source + if source is not None: + raise TypeError("emit_python_code() is only for dlopen()-style " + "pure Python modules, not for C extension modules") + recompile(self, module_name, source, + c_file=filename, call_c_compiler=False, + uses_ffiplatform=False, **kwds) + + def compile(self, tmpdir='.', verbose=0, target=None, debug=None): + """The 'target' argument gives the final file name of the + compiled DLL. Use '*' to force distutils' choice, suitable for + regular CPython C API modules. Use a file name ending in '.*' + to ask for the system's default extension for dynamic libraries + (.so/.dll/.dylib). + + The default is '*' when building a non-embedded C API extension, + and (module_name + '.*') when building an embedded library. + """ + from .recompiler import recompile + # + if not hasattr(self, '_assigned_source'): + raise ValueError("set_source() must be called before compile()") + module_name, source, source_extension, kwds = self._assigned_source + return recompile(self, module_name, source, tmpdir=tmpdir, + target=target, source_extension=source_extension, + compiler_verbose=verbose, debug=debug, **kwds) + + def init_once(self, func, tag): + # Read _init_once_cache[tag], which is either (False, lock) if + # we're calling the function now in some thread, or (True, result). + # Don't call setdefault() in most cases, to avoid allocating and + # immediately freeing a lock; but still use setdefaut() to avoid + # races. + try: + x = self._init_once_cache[tag] + except KeyError: + x = self._init_once_cache.setdefault(tag, (False, allocate_lock())) + # Common case: we got (True, result), so we return the result. + if x[0]: + return x[1] + # Else, it's a lock. Acquire it to serialize the following tests. + with x[1]: + # Read again from _init_once_cache the current status. + x = self._init_once_cache[tag] + if x[0]: + return x[1] + # Call the function and store the result back. + result = func() + self._init_once_cache[tag] = (True, result) + return result + + def embedding_init_code(self, pysource): + if self._embedding: + raise ValueError("embedding_init_code() can only be called once") + # fix 'pysource' before it gets dumped into the C file: + # - remove empty lines at the beginning, so it starts at "line 1" + # - dedent, if all non-empty lines are indented + # - check for SyntaxErrors + import re + match = re.match(r'\s*\n', pysource) + if match: + pysource = pysource[match.end():] + lines = pysource.splitlines() or [''] + prefix = re.match(r'\s*', lines[0]).group() + for i in range(1, len(lines)): + line = lines[i] + if line.rstrip(): + while not line.startswith(prefix): + prefix = prefix[:-1] + i = len(prefix) + lines = [line[i:]+'\n' for line in lines] + pysource = ''.join(lines) + # + compile(pysource, "cffi_init", "exec") + # + self._embedding = pysource + + def def_extern(self, *args, **kwds): + raise ValueError("ffi.def_extern() is only available on API-mode FFI " + "objects") + + def list_types(self): + """Returns the user type names known to this FFI instance. + This returns a tuple containing three lists of names: + (typedef_names, names_of_structs, names_of_unions) + """ + typedefs = [] + structs = [] + unions = [] + for key in self._parser._declarations: + if key.startswith('typedef '): + typedefs.append(key[8:]) + elif key.startswith('struct '): + structs.append(key[7:]) + elif key.startswith('union '): + unions.append(key[6:]) + typedefs.sort() + structs.sort() + unions.sort() + return (typedefs, structs, unions) + + +def _load_backend_lib(backend, name, flags): + import os + if not isinstance(name, basestring): + if sys.platform != "win32" or name is not None: + return backend.load_library(name, flags) + name = "c" # Windows: load_library(None) fails, but this works + # on Python 2 (backward compatibility hack only) + first_error = None + if '.' in name or '/' in name or os.sep in name: + try: + return backend.load_library(name, flags) + except OSError as e: + first_error = e + import ctypes.util + path = ctypes.util.find_library(name) + if path is None: + if name == "c" and sys.platform == "win32" and sys.version_info >= (3,): + raise OSError("dlopen(None) cannot work on Windows for Python 3 " + "(see http://bugs.python.org/issue23606)") + msg = ("ctypes.util.find_library() did not manage " + "to locate a library called %r" % (name,)) + if first_error is not None: + msg = "%s. Additionally, %s" % (first_error, msg) + raise OSError(msg) + return backend.load_library(path, flags) + +def _make_ffi_library(ffi, libname, flags): + backend = ffi._backend + backendlib = _load_backend_lib(backend, libname, flags) + # + def accessor_function(name): + key = 'function ' + name + tp, _ = ffi._parser._declarations[key] + BType = ffi._get_cached_btype(tp) + value = backendlib.load_function(BType, name) + library.__dict__[name] = value + # + def accessor_variable(name): + key = 'variable ' + name + tp, _ = ffi._parser._declarations[key] + BType = ffi._get_cached_btype(tp) + read_variable = backendlib.read_variable + write_variable = backendlib.write_variable + setattr(FFILibrary, name, property( + lambda self: read_variable(BType, name), + lambda self, value: write_variable(BType, name, value))) + # + def addressof_var(name): + try: + return addr_variables[name] + except KeyError: + with ffi._lock: + if name not in addr_variables: + key = 'variable ' + name + tp, _ = ffi._parser._declarations[key] + BType = ffi._get_cached_btype(tp) + if BType.kind != 'array': + BType = model.pointer_cache(ffi, BType) + p = backendlib.load_function(BType, name) + addr_variables[name] = p + return addr_variables[name] + # + def accessor_constant(name): + raise NotImplementedError("non-integer constant '%s' cannot be " + "accessed from a dlopen() library" % (name,)) + # + def accessor_int_constant(name): + library.__dict__[name] = ffi._parser._int_constants[name] + # + accessors = {} + accessors_version = [False] + addr_variables = {} + # + def update_accessors(): + if accessors_version[0] is ffi._cdef_version: + return + # + for key, (tp, _) in ffi._parser._declarations.items(): + if not isinstance(tp, model.EnumType): + tag, name = key.split(' ', 1) + if tag == 'function': + accessors[name] = accessor_function + elif tag == 'variable': + accessors[name] = accessor_variable + elif tag == 'constant': + accessors[name] = accessor_constant + else: + for i, enumname in enumerate(tp.enumerators): + def accessor_enum(name, tp=tp, i=i): + tp.check_not_partial() + library.__dict__[name] = tp.enumvalues[i] + accessors[enumname] = accessor_enum + for name in ffi._parser._int_constants: + accessors.setdefault(name, accessor_int_constant) + accessors_version[0] = ffi._cdef_version + # + def make_accessor(name): + with ffi._lock: + if name in library.__dict__ or name in FFILibrary.__dict__: + return # added by another thread while waiting for the lock + if name not in accessors: + update_accessors() + if name not in accessors: + raise AttributeError(name) + accessors[name](name) + # + class FFILibrary(object): + def __getattr__(self, name): + make_accessor(name) + return getattr(self, name) + def __setattr__(self, name, value): + try: + property = getattr(self.__class__, name) + except AttributeError: + make_accessor(name) + setattr(self, name, value) + else: + property.__set__(self, value) + def __dir__(self): + with ffi._lock: + update_accessors() + return accessors.keys() + def __addressof__(self, name): + if name in library.__dict__: + return library.__dict__[name] + if name in FFILibrary.__dict__: + return addressof_var(name) + make_accessor(name) + if name in library.__dict__: + return library.__dict__[name] + if name in FFILibrary.__dict__: + return addressof_var(name) + raise AttributeError("cffi library has no function or " + "global variable named '%s'" % (name,)) + def __cffi_close__(self): + backendlib.close_lib() + self.__dict__.clear() + # + if isinstance(libname, basestring): + try: + if not isinstance(libname, str): # unicode, on Python 2 + libname = libname.encode('utf-8') + FFILibrary.__name__ = 'FFILibrary_%s' % libname + except UnicodeError: + pass + library = FFILibrary() + return library, library.__dict__ + +def _builtin_function_type(func): + # a hack to make at least ffi.typeof(builtin_function) work, + # if the builtin function was obtained by 'vengine_cpy'. + import sys + try: + module = sys.modules[func.__module__] + ffi = module._cffi_original_ffi + types_of_builtin_funcs = module._cffi_types_of_builtin_funcs + tp = types_of_builtin_funcs[func] + except (KeyError, AttributeError, TypeError): + return None + else: + with ffi._lock: + return ffi._get_cached_btype(tp) diff --git a/venv/lib/python3.9/site-packages/cffi/backend_ctypes.py b/venv/lib/python3.9/site-packages/cffi/backend_ctypes.py new file mode 100644 index 0000000..e7956a7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/backend_ctypes.py @@ -0,0 +1,1121 @@ +import ctypes, ctypes.util, operator, sys +from . import model + +if sys.version_info < (3,): + bytechr = chr +else: + unicode = str + long = int + xrange = range + bytechr = lambda num: bytes([num]) + +class CTypesType(type): + pass + +class CTypesData(object): + __metaclass__ = CTypesType + __slots__ = ['__weakref__'] + __name__ = '' + + def __init__(self, *args): + raise TypeError("cannot instantiate %r" % (self.__class__,)) + + @classmethod + def _newp(cls, init): + raise TypeError("expected a pointer or array ctype, got '%s'" + % (cls._get_c_name(),)) + + @staticmethod + def _to_ctypes(value): + raise TypeError + + @classmethod + def _arg_to_ctypes(cls, *value): + try: + ctype = cls._ctype + except AttributeError: + raise TypeError("cannot create an instance of %r" % (cls,)) + if value: + res = cls._to_ctypes(*value) + if not isinstance(res, ctype): + res = cls._ctype(res) + else: + res = cls._ctype() + return res + + @classmethod + def _create_ctype_obj(cls, init): + if init is None: + return cls._arg_to_ctypes() + else: + return cls._arg_to_ctypes(init) + + @staticmethod + def _from_ctypes(ctypes_value): + raise TypeError + + @classmethod + def _get_c_name(cls, replace_with=''): + return cls._reftypename.replace(' &', replace_with) + + @classmethod + def _fix_class(cls): + cls.__name__ = 'CData<%s>' % (cls._get_c_name(),) + cls.__qualname__ = 'CData<%s>' % (cls._get_c_name(),) + cls.__module__ = 'ffi' + + def _get_own_repr(self): + raise NotImplementedError + + def _addr_repr(self, address): + if address == 0: + return 'NULL' + else: + if address < 0: + address += 1 << (8*ctypes.sizeof(ctypes.c_void_p)) + return '0x%x' % address + + def __repr__(self, c_name=None): + own = self._get_own_repr() + return '' % (c_name or self._get_c_name(), own) + + def _convert_to_address(self, BClass): + if BClass is None: + raise TypeError("cannot convert %r to an address" % ( + self._get_c_name(),)) + else: + raise TypeError("cannot convert %r to %r" % ( + self._get_c_name(), BClass._get_c_name())) + + @classmethod + def _get_size(cls): + return ctypes.sizeof(cls._ctype) + + def _get_size_of_instance(self): + return ctypes.sizeof(self._ctype) + + @classmethod + def _cast_from(cls, source): + raise TypeError("cannot cast to %r" % (cls._get_c_name(),)) + + def _cast_to_integer(self): + return self._convert_to_address(None) + + @classmethod + def _alignment(cls): + return ctypes.alignment(cls._ctype) + + def __iter__(self): + raise TypeError("cdata %r does not support iteration" % ( + self._get_c_name()),) + + def _make_cmp(name): + cmpfunc = getattr(operator, name) + def cmp(self, other): + v_is_ptr = not isinstance(self, CTypesGenericPrimitive) + w_is_ptr = (isinstance(other, CTypesData) and + not isinstance(other, CTypesGenericPrimitive)) + if v_is_ptr and w_is_ptr: + return cmpfunc(self._convert_to_address(None), + other._convert_to_address(None)) + elif v_is_ptr or w_is_ptr: + return NotImplemented + else: + if isinstance(self, CTypesGenericPrimitive): + self = self._value + if isinstance(other, CTypesGenericPrimitive): + other = other._value + return cmpfunc(self, other) + cmp.func_name = name + return cmp + + __eq__ = _make_cmp('__eq__') + __ne__ = _make_cmp('__ne__') + __lt__ = _make_cmp('__lt__') + __le__ = _make_cmp('__le__') + __gt__ = _make_cmp('__gt__') + __ge__ = _make_cmp('__ge__') + + def __hash__(self): + return hash(self._convert_to_address(None)) + + def _to_string(self, maxlen): + raise TypeError("string(): %r" % (self,)) + + +class CTypesGenericPrimitive(CTypesData): + __slots__ = [] + + def __hash__(self): + return hash(self._value) + + def _get_own_repr(self): + return repr(self._from_ctypes(self._value)) + + +class CTypesGenericArray(CTypesData): + __slots__ = [] + + @classmethod + def _newp(cls, init): + return cls(init) + + def __iter__(self): + for i in xrange(len(self)): + yield self[i] + + def _get_own_repr(self): + return self._addr_repr(ctypes.addressof(self._blob)) + + +class CTypesGenericPtr(CTypesData): + __slots__ = ['_address', '_as_ctype_ptr'] + _automatic_casts = False + kind = "pointer" + + @classmethod + def _newp(cls, init): + return cls(init) + + @classmethod + def _cast_from(cls, source): + if source is None: + address = 0 + elif isinstance(source, CTypesData): + address = source._cast_to_integer() + elif isinstance(source, (int, long)): + address = source + else: + raise TypeError("bad type for cast to %r: %r" % + (cls, type(source).__name__)) + return cls._new_pointer_at(address) + + @classmethod + def _new_pointer_at(cls, address): + self = cls.__new__(cls) + self._address = address + self._as_ctype_ptr = ctypes.cast(address, cls._ctype) + return self + + def _get_own_repr(self): + try: + return self._addr_repr(self._address) + except AttributeError: + return '???' + + def _cast_to_integer(self): + return self._address + + def __nonzero__(self): + return bool(self._address) + __bool__ = __nonzero__ + + @classmethod + def _to_ctypes(cls, value): + if not isinstance(value, CTypesData): + raise TypeError("unexpected %s object" % type(value).__name__) + address = value._convert_to_address(cls) + return ctypes.cast(address, cls._ctype) + + @classmethod + def _from_ctypes(cls, ctypes_ptr): + address = ctypes.cast(ctypes_ptr, ctypes.c_void_p).value or 0 + return cls._new_pointer_at(address) + + @classmethod + def _initialize(cls, ctypes_ptr, value): + if value: + ctypes_ptr.contents = cls._to_ctypes(value).contents + + def _convert_to_address(self, BClass): + if (BClass in (self.__class__, None) or BClass._automatic_casts + or self._automatic_casts): + return self._address + else: + return CTypesData._convert_to_address(self, BClass) + + +class CTypesBaseStructOrUnion(CTypesData): + __slots__ = ['_blob'] + + @classmethod + def _create_ctype_obj(cls, init): + # may be overridden + raise TypeError("cannot instantiate opaque type %s" % (cls,)) + + def _get_own_repr(self): + return self._addr_repr(ctypes.addressof(self._blob)) + + @classmethod + def _offsetof(cls, fieldname): + return getattr(cls._ctype, fieldname).offset + + def _convert_to_address(self, BClass): + if getattr(BClass, '_BItem', None) is self.__class__: + return ctypes.addressof(self._blob) + else: + return CTypesData._convert_to_address(self, BClass) + + @classmethod + def _from_ctypes(cls, ctypes_struct_or_union): + self = cls.__new__(cls) + self._blob = ctypes_struct_or_union + return self + + @classmethod + def _to_ctypes(cls, value): + return value._blob + + def __repr__(self, c_name=None): + return CTypesData.__repr__(self, c_name or self._get_c_name(' &')) + + +class CTypesBackend(object): + + PRIMITIVE_TYPES = { + 'char': ctypes.c_char, + 'short': ctypes.c_short, + 'int': ctypes.c_int, + 'long': ctypes.c_long, + 'long long': ctypes.c_longlong, + 'signed char': ctypes.c_byte, + 'unsigned char': ctypes.c_ubyte, + 'unsigned short': ctypes.c_ushort, + 'unsigned int': ctypes.c_uint, + 'unsigned long': ctypes.c_ulong, + 'unsigned long long': ctypes.c_ulonglong, + 'float': ctypes.c_float, + 'double': ctypes.c_double, + '_Bool': ctypes.c_bool, + } + + for _name in ['unsigned long long', 'unsigned long', + 'unsigned int', 'unsigned short', 'unsigned char']: + _size = ctypes.sizeof(PRIMITIVE_TYPES[_name]) + PRIMITIVE_TYPES['uint%d_t' % (8*_size)] = PRIMITIVE_TYPES[_name] + if _size == ctypes.sizeof(ctypes.c_void_p): + PRIMITIVE_TYPES['uintptr_t'] = PRIMITIVE_TYPES[_name] + if _size == ctypes.sizeof(ctypes.c_size_t): + PRIMITIVE_TYPES['size_t'] = PRIMITIVE_TYPES[_name] + + for _name in ['long long', 'long', 'int', 'short', 'signed char']: + _size = ctypes.sizeof(PRIMITIVE_TYPES[_name]) + PRIMITIVE_TYPES['int%d_t' % (8*_size)] = PRIMITIVE_TYPES[_name] + if _size == ctypes.sizeof(ctypes.c_void_p): + PRIMITIVE_TYPES['intptr_t'] = PRIMITIVE_TYPES[_name] + PRIMITIVE_TYPES['ptrdiff_t'] = PRIMITIVE_TYPES[_name] + if _size == ctypes.sizeof(ctypes.c_size_t): + PRIMITIVE_TYPES['ssize_t'] = PRIMITIVE_TYPES[_name] + + + def __init__(self): + self.RTLD_LAZY = 0 # not supported anyway by ctypes + self.RTLD_NOW = 0 + self.RTLD_GLOBAL = ctypes.RTLD_GLOBAL + self.RTLD_LOCAL = ctypes.RTLD_LOCAL + + def set_ffi(self, ffi): + self.ffi = ffi + + def _get_types(self): + return CTypesData, CTypesType + + def load_library(self, path, flags=0): + cdll = ctypes.CDLL(path, flags) + return CTypesLibrary(self, cdll) + + def new_void_type(self): + class CTypesVoid(CTypesData): + __slots__ = [] + _reftypename = 'void &' + @staticmethod + def _from_ctypes(novalue): + return None + @staticmethod + def _to_ctypes(novalue): + if novalue is not None: + raise TypeError("None expected, got %s object" % + (type(novalue).__name__,)) + return None + CTypesVoid._fix_class() + return CTypesVoid + + def new_primitive_type(self, name): + if name == 'wchar_t': + raise NotImplementedError(name) + ctype = self.PRIMITIVE_TYPES[name] + if name == 'char': + kind = 'char' + elif name in ('float', 'double'): + kind = 'float' + else: + if name in ('signed char', 'unsigned char'): + kind = 'byte' + elif name == '_Bool': + kind = 'bool' + else: + kind = 'int' + is_signed = (ctype(-1).value == -1) + # + def _cast_source_to_int(source): + if isinstance(source, (int, long, float)): + source = int(source) + elif isinstance(source, CTypesData): + source = source._cast_to_integer() + elif isinstance(source, bytes): + source = ord(source) + elif source is None: + source = 0 + else: + raise TypeError("bad type for cast to %r: %r" % + (CTypesPrimitive, type(source).__name__)) + return source + # + kind1 = kind + class CTypesPrimitive(CTypesGenericPrimitive): + __slots__ = ['_value'] + _ctype = ctype + _reftypename = '%s &' % name + kind = kind1 + + def __init__(self, value): + self._value = value + + @staticmethod + def _create_ctype_obj(init): + if init is None: + return ctype() + return ctype(CTypesPrimitive._to_ctypes(init)) + + if kind == 'int' or kind == 'byte': + @classmethod + def _cast_from(cls, source): + source = _cast_source_to_int(source) + source = ctype(source).value # cast within range + return cls(source) + def __int__(self): + return self._value + + if kind == 'bool': + @classmethod + def _cast_from(cls, source): + if not isinstance(source, (int, long, float)): + source = _cast_source_to_int(source) + return cls(bool(source)) + def __int__(self): + return int(self._value) + + if kind == 'char': + @classmethod + def _cast_from(cls, source): + source = _cast_source_to_int(source) + source = bytechr(source & 0xFF) + return cls(source) + def __int__(self): + return ord(self._value) + + if kind == 'float': + @classmethod + def _cast_from(cls, source): + if isinstance(source, float): + pass + elif isinstance(source, CTypesGenericPrimitive): + if hasattr(source, '__float__'): + source = float(source) + else: + source = int(source) + else: + source = _cast_source_to_int(source) + source = ctype(source).value # fix precision + return cls(source) + def __int__(self): + return int(self._value) + def __float__(self): + return self._value + + _cast_to_integer = __int__ + + if kind == 'int' or kind == 'byte' or kind == 'bool': + @staticmethod + def _to_ctypes(x): + if not isinstance(x, (int, long)): + if isinstance(x, CTypesData): + x = int(x) + else: + raise TypeError("integer expected, got %s" % + type(x).__name__) + if ctype(x).value != x: + if not is_signed and x < 0: + raise OverflowError("%s: negative integer" % name) + else: + raise OverflowError("%s: integer out of bounds" + % name) + return x + + if kind == 'char': + @staticmethod + def _to_ctypes(x): + if isinstance(x, bytes) and len(x) == 1: + return x + if isinstance(x, CTypesPrimitive): # > + return x._value + raise TypeError("character expected, got %s" % + type(x).__name__) + def __nonzero__(self): + return ord(self._value) != 0 + else: + def __nonzero__(self): + return self._value != 0 + __bool__ = __nonzero__ + + if kind == 'float': + @staticmethod + def _to_ctypes(x): + if not isinstance(x, (int, long, float, CTypesData)): + raise TypeError("float expected, got %s" % + type(x).__name__) + return ctype(x).value + + @staticmethod + def _from_ctypes(value): + return getattr(value, 'value', value) + + @staticmethod + def _initialize(blob, init): + blob.value = CTypesPrimitive._to_ctypes(init) + + if kind == 'char': + def _to_string(self, maxlen): + return self._value + if kind == 'byte': + def _to_string(self, maxlen): + return chr(self._value & 0xff) + # + CTypesPrimitive._fix_class() + return CTypesPrimitive + + def new_pointer_type(self, BItem): + getbtype = self.ffi._get_cached_btype + if BItem is getbtype(model.PrimitiveType('char')): + kind = 'charp' + elif BItem in (getbtype(model.PrimitiveType('signed char')), + getbtype(model.PrimitiveType('unsigned char'))): + kind = 'bytep' + elif BItem is getbtype(model.void_type): + kind = 'voidp' + else: + kind = 'generic' + # + class CTypesPtr(CTypesGenericPtr): + __slots__ = ['_own'] + if kind == 'charp': + __slots__ += ['__as_strbuf'] + _BItem = BItem + if hasattr(BItem, '_ctype'): + _ctype = ctypes.POINTER(BItem._ctype) + _bitem_size = ctypes.sizeof(BItem._ctype) + else: + _ctype = ctypes.c_void_p + if issubclass(BItem, CTypesGenericArray): + _reftypename = BItem._get_c_name('(* &)') + else: + _reftypename = BItem._get_c_name(' * &') + + def __init__(self, init): + ctypeobj = BItem._create_ctype_obj(init) + if kind == 'charp': + self.__as_strbuf = ctypes.create_string_buffer( + ctypeobj.value + b'\x00') + self._as_ctype_ptr = ctypes.cast( + self.__as_strbuf, self._ctype) + else: + self._as_ctype_ptr = ctypes.pointer(ctypeobj) + self._address = ctypes.cast(self._as_ctype_ptr, + ctypes.c_void_p).value + self._own = True + + def __add__(self, other): + if isinstance(other, (int, long)): + return self._new_pointer_at(self._address + + other * self._bitem_size) + else: + return NotImplemented + + def __sub__(self, other): + if isinstance(other, (int, long)): + return self._new_pointer_at(self._address - + other * self._bitem_size) + elif type(self) is type(other): + return (self._address - other._address) // self._bitem_size + else: + return NotImplemented + + def __getitem__(self, index): + if getattr(self, '_own', False) and index != 0: + raise IndexError + return BItem._from_ctypes(self._as_ctype_ptr[index]) + + def __setitem__(self, index, value): + self._as_ctype_ptr[index] = BItem._to_ctypes(value) + + if kind == 'charp' or kind == 'voidp': + @classmethod + def _arg_to_ctypes(cls, *value): + if value and isinstance(value[0], bytes): + return ctypes.c_char_p(value[0]) + else: + return super(CTypesPtr, cls)._arg_to_ctypes(*value) + + if kind == 'charp' or kind == 'bytep': + def _to_string(self, maxlen): + if maxlen < 0: + maxlen = sys.maxsize + p = ctypes.cast(self._as_ctype_ptr, + ctypes.POINTER(ctypes.c_char)) + n = 0 + while n < maxlen and p[n] != b'\x00': + n += 1 + return b''.join([p[i] for i in range(n)]) + + def _get_own_repr(self): + if getattr(self, '_own', False): + return 'owning %d bytes' % ( + ctypes.sizeof(self._as_ctype_ptr.contents),) + return super(CTypesPtr, self)._get_own_repr() + # + if (BItem is self.ffi._get_cached_btype(model.void_type) or + BItem is self.ffi._get_cached_btype(model.PrimitiveType('char'))): + CTypesPtr._automatic_casts = True + # + CTypesPtr._fix_class() + return CTypesPtr + + def new_array_type(self, CTypesPtr, length): + if length is None: + brackets = ' &[]' + else: + brackets = ' &[%d]' % length + BItem = CTypesPtr._BItem + getbtype = self.ffi._get_cached_btype + if BItem is getbtype(model.PrimitiveType('char')): + kind = 'char' + elif BItem in (getbtype(model.PrimitiveType('signed char')), + getbtype(model.PrimitiveType('unsigned char'))): + kind = 'byte' + else: + kind = 'generic' + # + class CTypesArray(CTypesGenericArray): + __slots__ = ['_blob', '_own'] + if length is not None: + _ctype = BItem._ctype * length + else: + __slots__.append('_ctype') + _reftypename = BItem._get_c_name(brackets) + _declared_length = length + _CTPtr = CTypesPtr + + def __init__(self, init): + if length is None: + if isinstance(init, (int, long)): + len1 = init + init = None + elif kind == 'char' and isinstance(init, bytes): + len1 = len(init) + 1 # extra null + else: + init = tuple(init) + len1 = len(init) + self._ctype = BItem._ctype * len1 + self._blob = self._ctype() + self._own = True + if init is not None: + self._initialize(self._blob, init) + + @staticmethod + def _initialize(blob, init): + if isinstance(init, bytes): + init = [init[i:i+1] for i in range(len(init))] + else: + if isinstance(init, CTypesGenericArray): + if (len(init) != len(blob) or + not isinstance(init, CTypesArray)): + raise TypeError("length/type mismatch: %s" % (init,)) + init = tuple(init) + if len(init) > len(blob): + raise IndexError("too many initializers") + addr = ctypes.cast(blob, ctypes.c_void_p).value + PTR = ctypes.POINTER(BItem._ctype) + itemsize = ctypes.sizeof(BItem._ctype) + for i, value in enumerate(init): + p = ctypes.cast(addr + i * itemsize, PTR) + BItem._initialize(p.contents, value) + + def __len__(self): + return len(self._blob) + + def __getitem__(self, index): + if not (0 <= index < len(self._blob)): + raise IndexError + return BItem._from_ctypes(self._blob[index]) + + def __setitem__(self, index, value): + if not (0 <= index < len(self._blob)): + raise IndexError + self._blob[index] = BItem._to_ctypes(value) + + if kind == 'char' or kind == 'byte': + def _to_string(self, maxlen): + if maxlen < 0: + maxlen = len(self._blob) + p = ctypes.cast(self._blob, + ctypes.POINTER(ctypes.c_char)) + n = 0 + while n < maxlen and p[n] != b'\x00': + n += 1 + return b''.join([p[i] for i in range(n)]) + + def _get_own_repr(self): + if getattr(self, '_own', False): + return 'owning %d bytes' % (ctypes.sizeof(self._blob),) + return super(CTypesArray, self)._get_own_repr() + + def _convert_to_address(self, BClass): + if BClass in (CTypesPtr, None) or BClass._automatic_casts: + return ctypes.addressof(self._blob) + else: + return CTypesData._convert_to_address(self, BClass) + + @staticmethod + def _from_ctypes(ctypes_array): + self = CTypesArray.__new__(CTypesArray) + self._blob = ctypes_array + return self + + @staticmethod + def _arg_to_ctypes(value): + return CTypesPtr._arg_to_ctypes(value) + + def __add__(self, other): + if isinstance(other, (int, long)): + return CTypesPtr._new_pointer_at( + ctypes.addressof(self._blob) + + other * ctypes.sizeof(BItem._ctype)) + else: + return NotImplemented + + @classmethod + def _cast_from(cls, source): + raise NotImplementedError("casting to %r" % ( + cls._get_c_name(),)) + # + CTypesArray._fix_class() + return CTypesArray + + def _new_struct_or_union(self, kind, name, base_ctypes_class): + # + class struct_or_union(base_ctypes_class): + pass + struct_or_union.__name__ = '%s_%s' % (kind, name) + kind1 = kind + # + class CTypesStructOrUnion(CTypesBaseStructOrUnion): + __slots__ = ['_blob'] + _ctype = struct_or_union + _reftypename = '%s &' % (name,) + _kind = kind = kind1 + # + CTypesStructOrUnion._fix_class() + return CTypesStructOrUnion + + def new_struct_type(self, name): + return self._new_struct_or_union('struct', name, ctypes.Structure) + + def new_union_type(self, name): + return self._new_struct_or_union('union', name, ctypes.Union) + + def complete_struct_or_union(self, CTypesStructOrUnion, fields, tp, + totalsize=-1, totalalignment=-1, sflags=0, + pack=0): + if totalsize >= 0 or totalalignment >= 0: + raise NotImplementedError("the ctypes backend of CFFI does not support " + "structures completed by verify(); please " + "compile and install the _cffi_backend module.") + struct_or_union = CTypesStructOrUnion._ctype + fnames = [fname for (fname, BField, bitsize) in fields] + btypes = [BField for (fname, BField, bitsize) in fields] + bitfields = [bitsize for (fname, BField, bitsize) in fields] + # + bfield_types = {} + cfields = [] + for (fname, BField, bitsize) in fields: + if bitsize < 0: + cfields.append((fname, BField._ctype)) + bfield_types[fname] = BField + else: + cfields.append((fname, BField._ctype, bitsize)) + bfield_types[fname] = Ellipsis + if sflags & 8: + struct_or_union._pack_ = 1 + elif pack: + struct_or_union._pack_ = pack + struct_or_union._fields_ = cfields + CTypesStructOrUnion._bfield_types = bfield_types + # + @staticmethod + def _create_ctype_obj(init): + result = struct_or_union() + if init is not None: + initialize(result, init) + return result + CTypesStructOrUnion._create_ctype_obj = _create_ctype_obj + # + def initialize(blob, init): + if is_union: + if len(init) > 1: + raise ValueError("union initializer: %d items given, but " + "only one supported (use a dict if needed)" + % (len(init),)) + if not isinstance(init, dict): + if isinstance(init, (bytes, unicode)): + raise TypeError("union initializer: got a str") + init = tuple(init) + if len(init) > len(fnames): + raise ValueError("too many values for %s initializer" % + CTypesStructOrUnion._get_c_name()) + init = dict(zip(fnames, init)) + addr = ctypes.addressof(blob) + for fname, value in init.items(): + BField, bitsize = name2fieldtype[fname] + assert bitsize < 0, \ + "not implemented: initializer with bit fields" + offset = CTypesStructOrUnion._offsetof(fname) + PTR = ctypes.POINTER(BField._ctype) + p = ctypes.cast(addr + offset, PTR) + BField._initialize(p.contents, value) + is_union = CTypesStructOrUnion._kind == 'union' + name2fieldtype = dict(zip(fnames, zip(btypes, bitfields))) + # + for fname, BField, bitsize in fields: + if fname == '': + raise NotImplementedError("nested anonymous structs/unions") + if hasattr(CTypesStructOrUnion, fname): + raise ValueError("the field name %r conflicts in " + "the ctypes backend" % fname) + if bitsize < 0: + def getter(self, fname=fname, BField=BField, + offset=CTypesStructOrUnion._offsetof(fname), + PTR=ctypes.POINTER(BField._ctype)): + addr = ctypes.addressof(self._blob) + p = ctypes.cast(addr + offset, PTR) + return BField._from_ctypes(p.contents) + def setter(self, value, fname=fname, BField=BField): + setattr(self._blob, fname, BField._to_ctypes(value)) + # + if issubclass(BField, CTypesGenericArray): + setter = None + if BField._declared_length == 0: + def getter(self, fname=fname, BFieldPtr=BField._CTPtr, + offset=CTypesStructOrUnion._offsetof(fname), + PTR=ctypes.POINTER(BField._ctype)): + addr = ctypes.addressof(self._blob) + p = ctypes.cast(addr + offset, PTR) + return BFieldPtr._from_ctypes(p) + # + else: + def getter(self, fname=fname, BField=BField): + return BField._from_ctypes(getattr(self._blob, fname)) + def setter(self, value, fname=fname, BField=BField): + # xxx obscure workaround + value = BField._to_ctypes(value) + oldvalue = getattr(self._blob, fname) + setattr(self._blob, fname, value) + if value != getattr(self._blob, fname): + setattr(self._blob, fname, oldvalue) + raise OverflowError("value too large for bitfield") + setattr(CTypesStructOrUnion, fname, property(getter, setter)) + # + CTypesPtr = self.ffi._get_cached_btype(model.PointerType(tp)) + for fname in fnames: + if hasattr(CTypesPtr, fname): + raise ValueError("the field name %r conflicts in " + "the ctypes backend" % fname) + def getter(self, fname=fname): + return getattr(self[0], fname) + def setter(self, value, fname=fname): + setattr(self[0], fname, value) + setattr(CTypesPtr, fname, property(getter, setter)) + + def new_function_type(self, BArgs, BResult, has_varargs): + nameargs = [BArg._get_c_name() for BArg in BArgs] + if has_varargs: + nameargs.append('...') + nameargs = ', '.join(nameargs) + # + class CTypesFunctionPtr(CTypesGenericPtr): + __slots__ = ['_own_callback', '_name'] + _ctype = ctypes.CFUNCTYPE(getattr(BResult, '_ctype', None), + *[BArg._ctype for BArg in BArgs], + use_errno=True) + _reftypename = BResult._get_c_name('(* &)(%s)' % (nameargs,)) + + def __init__(self, init, error=None): + # create a callback to the Python callable init() + import traceback + assert not has_varargs, "varargs not supported for callbacks" + if getattr(BResult, '_ctype', None) is not None: + error = BResult._from_ctypes( + BResult._create_ctype_obj(error)) + else: + error = None + def callback(*args): + args2 = [] + for arg, BArg in zip(args, BArgs): + args2.append(BArg._from_ctypes(arg)) + try: + res2 = init(*args2) + res2 = BResult._to_ctypes(res2) + except: + traceback.print_exc() + res2 = error + if issubclass(BResult, CTypesGenericPtr): + if res2: + res2 = ctypes.cast(res2, ctypes.c_void_p).value + # .value: http://bugs.python.org/issue1574593 + else: + res2 = None + #print repr(res2) + return res2 + if issubclass(BResult, CTypesGenericPtr): + # The only pointers callbacks can return are void*s: + # http://bugs.python.org/issue5710 + callback_ctype = ctypes.CFUNCTYPE( + ctypes.c_void_p, + *[BArg._ctype for BArg in BArgs], + use_errno=True) + else: + callback_ctype = CTypesFunctionPtr._ctype + self._as_ctype_ptr = callback_ctype(callback) + self._address = ctypes.cast(self._as_ctype_ptr, + ctypes.c_void_p).value + self._own_callback = init + + @staticmethod + def _initialize(ctypes_ptr, value): + if value: + raise NotImplementedError("ctypes backend: not supported: " + "initializers for function pointers") + + def __repr__(self): + c_name = getattr(self, '_name', None) + if c_name: + i = self._reftypename.index('(* &)') + if self._reftypename[i-1] not in ' )*': + c_name = ' ' + c_name + c_name = self._reftypename.replace('(* &)', c_name) + return CTypesData.__repr__(self, c_name) + + def _get_own_repr(self): + if getattr(self, '_own_callback', None) is not None: + return 'calling %r' % (self._own_callback,) + return super(CTypesFunctionPtr, self)._get_own_repr() + + def __call__(self, *args): + if has_varargs: + assert len(args) >= len(BArgs) + extraargs = args[len(BArgs):] + args = args[:len(BArgs)] + else: + assert len(args) == len(BArgs) + ctypes_args = [] + for arg, BArg in zip(args, BArgs): + ctypes_args.append(BArg._arg_to_ctypes(arg)) + if has_varargs: + for i, arg in enumerate(extraargs): + if arg is None: + ctypes_args.append(ctypes.c_void_p(0)) # NULL + continue + if not isinstance(arg, CTypesData): + raise TypeError( + "argument %d passed in the variadic part " + "needs to be a cdata object (got %s)" % + (1 + len(BArgs) + i, type(arg).__name__)) + ctypes_args.append(arg._arg_to_ctypes(arg)) + result = self._as_ctype_ptr(*ctypes_args) + return BResult._from_ctypes(result) + # + CTypesFunctionPtr._fix_class() + return CTypesFunctionPtr + + def new_enum_type(self, name, enumerators, enumvalues, CTypesInt): + assert isinstance(name, str) + reverse_mapping = dict(zip(reversed(enumvalues), + reversed(enumerators))) + # + class CTypesEnum(CTypesInt): + __slots__ = [] + _reftypename = '%s &' % name + + def _get_own_repr(self): + value = self._value + try: + return '%d: %s' % (value, reverse_mapping[value]) + except KeyError: + return str(value) + + def _to_string(self, maxlen): + value = self._value + try: + return reverse_mapping[value] + except KeyError: + return str(value) + # + CTypesEnum._fix_class() + return CTypesEnum + + def get_errno(self): + return ctypes.get_errno() + + def set_errno(self, value): + ctypes.set_errno(value) + + def string(self, b, maxlen=-1): + return b._to_string(maxlen) + + def buffer(self, bptr, size=-1): + raise NotImplementedError("buffer() with ctypes backend") + + def sizeof(self, cdata_or_BType): + if isinstance(cdata_or_BType, CTypesData): + return cdata_or_BType._get_size_of_instance() + else: + assert issubclass(cdata_or_BType, CTypesData) + return cdata_or_BType._get_size() + + def alignof(self, BType): + assert issubclass(BType, CTypesData) + return BType._alignment() + + def newp(self, BType, source): + if not issubclass(BType, CTypesData): + raise TypeError + return BType._newp(source) + + def cast(self, BType, source): + return BType._cast_from(source) + + def callback(self, BType, source, error, onerror): + assert onerror is None # XXX not implemented + return BType(source, error) + + _weakref_cache_ref = None + + def gcp(self, cdata, destructor, size=0): + if self._weakref_cache_ref is None: + import weakref + class MyRef(weakref.ref): + def __eq__(self, other): + myref = self() + return self is other or ( + myref is not None and myref is other()) + def __ne__(self, other): + return not (self == other) + def __hash__(self): + try: + return self._hash + except AttributeError: + self._hash = hash(self()) + return self._hash + self._weakref_cache_ref = {}, MyRef + weak_cache, MyRef = self._weakref_cache_ref + + if destructor is None: + try: + del weak_cache[MyRef(cdata)] + except KeyError: + raise TypeError("Can remove destructor only on a object " + "previously returned by ffi.gc()") + return None + + def remove(k): + cdata, destructor = weak_cache.pop(k, (None, None)) + if destructor is not None: + destructor(cdata) + + new_cdata = self.cast(self.typeof(cdata), cdata) + assert new_cdata is not cdata + weak_cache[MyRef(new_cdata, remove)] = (cdata, destructor) + return new_cdata + + typeof = type + + def getcname(self, BType, replace_with): + return BType._get_c_name(replace_with) + + def typeoffsetof(self, BType, fieldname, num=0): + if isinstance(fieldname, str): + if num == 0 and issubclass(BType, CTypesGenericPtr): + BType = BType._BItem + if not issubclass(BType, CTypesBaseStructOrUnion): + raise TypeError("expected a struct or union ctype") + BField = BType._bfield_types[fieldname] + if BField is Ellipsis: + raise TypeError("not supported for bitfields") + return (BField, BType._offsetof(fieldname)) + elif isinstance(fieldname, (int, long)): + if issubclass(BType, CTypesGenericArray): + BType = BType._CTPtr + if not issubclass(BType, CTypesGenericPtr): + raise TypeError("expected an array or ptr ctype") + BItem = BType._BItem + offset = BItem._get_size() * fieldname + if offset > sys.maxsize: + raise OverflowError + return (BItem, offset) + else: + raise TypeError(type(fieldname)) + + def rawaddressof(self, BTypePtr, cdata, offset=None): + if isinstance(cdata, CTypesBaseStructOrUnion): + ptr = ctypes.pointer(type(cdata)._to_ctypes(cdata)) + elif isinstance(cdata, CTypesGenericPtr): + if offset is None or not issubclass(type(cdata)._BItem, + CTypesBaseStructOrUnion): + raise TypeError("unexpected cdata type") + ptr = type(cdata)._to_ctypes(cdata) + elif isinstance(cdata, CTypesGenericArray): + ptr = type(cdata)._to_ctypes(cdata) + else: + raise TypeError("expected a ") + if offset: + ptr = ctypes.cast( + ctypes.c_void_p( + ctypes.cast(ptr, ctypes.c_void_p).value + offset), + type(ptr)) + return BTypePtr._from_ctypes(ptr) + + +class CTypesLibrary(object): + + def __init__(self, backend, cdll): + self.backend = backend + self.cdll = cdll + + def load_function(self, BType, name): + c_func = getattr(self.cdll, name) + funcobj = BType._from_ctypes(c_func) + funcobj._name = name + return funcobj + + def read_variable(self, BType, name): + try: + ctypes_obj = BType._ctype.in_dll(self.cdll, name) + except AttributeError as e: + raise NotImplementedError(e) + return BType._from_ctypes(ctypes_obj) + + def write_variable(self, BType, name, value): + new_ctypes_obj = BType._to_ctypes(value) + ctypes_obj = BType._ctype.in_dll(self.cdll, name) + ctypes.memmove(ctypes.addressof(ctypes_obj), + ctypes.addressof(new_ctypes_obj), + ctypes.sizeof(BType._ctype)) diff --git a/venv/lib/python3.9/site-packages/cffi/cffi_opcode.py b/venv/lib/python3.9/site-packages/cffi/cffi_opcode.py new file mode 100644 index 0000000..6421df6 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/cffi_opcode.py @@ -0,0 +1,187 @@ +from .error import VerificationError + +class CffiOp(object): + def __init__(self, op, arg): + self.op = op + self.arg = arg + + def as_c_expr(self): + if self.op is None: + assert isinstance(self.arg, str) + return '(_cffi_opcode_t)(%s)' % (self.arg,) + classname = CLASS_NAME[self.op] + return '_CFFI_OP(_CFFI_OP_%s, %s)' % (classname, self.arg) + + def as_python_bytes(self): + if self.op is None and self.arg.isdigit(): + value = int(self.arg) # non-negative: '-' not in self.arg + if value >= 2**31: + raise OverflowError("cannot emit %r: limited to 2**31-1" + % (self.arg,)) + return format_four_bytes(value) + if isinstance(self.arg, str): + raise VerificationError("cannot emit to Python: %r" % (self.arg,)) + return format_four_bytes((self.arg << 8) | self.op) + + def __str__(self): + classname = CLASS_NAME.get(self.op, self.op) + return '(%s %s)' % (classname, self.arg) + +def format_four_bytes(num): + return '\\x%02X\\x%02X\\x%02X\\x%02X' % ( + (num >> 24) & 0xFF, + (num >> 16) & 0xFF, + (num >> 8) & 0xFF, + (num ) & 0xFF) + +OP_PRIMITIVE = 1 +OP_POINTER = 3 +OP_ARRAY = 5 +OP_OPEN_ARRAY = 7 +OP_STRUCT_UNION = 9 +OP_ENUM = 11 +OP_FUNCTION = 13 +OP_FUNCTION_END = 15 +OP_NOOP = 17 +OP_BITFIELD = 19 +OP_TYPENAME = 21 +OP_CPYTHON_BLTN_V = 23 # varargs +OP_CPYTHON_BLTN_N = 25 # noargs +OP_CPYTHON_BLTN_O = 27 # O (i.e. a single arg) +OP_CONSTANT = 29 +OP_CONSTANT_INT = 31 +OP_GLOBAL_VAR = 33 +OP_DLOPEN_FUNC = 35 +OP_DLOPEN_CONST = 37 +OP_GLOBAL_VAR_F = 39 +OP_EXTERN_PYTHON = 41 + +PRIM_VOID = 0 +PRIM_BOOL = 1 +PRIM_CHAR = 2 +PRIM_SCHAR = 3 +PRIM_UCHAR = 4 +PRIM_SHORT = 5 +PRIM_USHORT = 6 +PRIM_INT = 7 +PRIM_UINT = 8 +PRIM_LONG = 9 +PRIM_ULONG = 10 +PRIM_LONGLONG = 11 +PRIM_ULONGLONG = 12 +PRIM_FLOAT = 13 +PRIM_DOUBLE = 14 +PRIM_LONGDOUBLE = 15 + +PRIM_WCHAR = 16 +PRIM_INT8 = 17 +PRIM_UINT8 = 18 +PRIM_INT16 = 19 +PRIM_UINT16 = 20 +PRIM_INT32 = 21 +PRIM_UINT32 = 22 +PRIM_INT64 = 23 +PRIM_UINT64 = 24 +PRIM_INTPTR = 25 +PRIM_UINTPTR = 26 +PRIM_PTRDIFF = 27 +PRIM_SIZE = 28 +PRIM_SSIZE = 29 +PRIM_INT_LEAST8 = 30 +PRIM_UINT_LEAST8 = 31 +PRIM_INT_LEAST16 = 32 +PRIM_UINT_LEAST16 = 33 +PRIM_INT_LEAST32 = 34 +PRIM_UINT_LEAST32 = 35 +PRIM_INT_LEAST64 = 36 +PRIM_UINT_LEAST64 = 37 +PRIM_INT_FAST8 = 38 +PRIM_UINT_FAST8 = 39 +PRIM_INT_FAST16 = 40 +PRIM_UINT_FAST16 = 41 +PRIM_INT_FAST32 = 42 +PRIM_UINT_FAST32 = 43 +PRIM_INT_FAST64 = 44 +PRIM_UINT_FAST64 = 45 +PRIM_INTMAX = 46 +PRIM_UINTMAX = 47 +PRIM_FLOATCOMPLEX = 48 +PRIM_DOUBLECOMPLEX = 49 +PRIM_CHAR16 = 50 +PRIM_CHAR32 = 51 + +_NUM_PRIM = 52 +_UNKNOWN_PRIM = -1 +_UNKNOWN_FLOAT_PRIM = -2 +_UNKNOWN_LONG_DOUBLE = -3 + +_IO_FILE_STRUCT = -1 + +PRIMITIVE_TO_INDEX = { + 'char': PRIM_CHAR, + 'short': PRIM_SHORT, + 'int': PRIM_INT, + 'long': PRIM_LONG, + 'long long': PRIM_LONGLONG, + 'signed char': PRIM_SCHAR, + 'unsigned char': PRIM_UCHAR, + 'unsigned short': PRIM_USHORT, + 'unsigned int': PRIM_UINT, + 'unsigned long': PRIM_ULONG, + 'unsigned long long': PRIM_ULONGLONG, + 'float': PRIM_FLOAT, + 'double': PRIM_DOUBLE, + 'long double': PRIM_LONGDOUBLE, + '_cffi_float_complex_t': PRIM_FLOATCOMPLEX, + '_cffi_double_complex_t': PRIM_DOUBLECOMPLEX, + '_Bool': PRIM_BOOL, + 'wchar_t': PRIM_WCHAR, + 'char16_t': PRIM_CHAR16, + 'char32_t': PRIM_CHAR32, + 'int8_t': PRIM_INT8, + 'uint8_t': PRIM_UINT8, + 'int16_t': PRIM_INT16, + 'uint16_t': PRIM_UINT16, + 'int32_t': PRIM_INT32, + 'uint32_t': PRIM_UINT32, + 'int64_t': PRIM_INT64, + 'uint64_t': PRIM_UINT64, + 'intptr_t': PRIM_INTPTR, + 'uintptr_t': PRIM_UINTPTR, + 'ptrdiff_t': PRIM_PTRDIFF, + 'size_t': PRIM_SIZE, + 'ssize_t': PRIM_SSIZE, + 'int_least8_t': PRIM_INT_LEAST8, + 'uint_least8_t': PRIM_UINT_LEAST8, + 'int_least16_t': PRIM_INT_LEAST16, + 'uint_least16_t': PRIM_UINT_LEAST16, + 'int_least32_t': PRIM_INT_LEAST32, + 'uint_least32_t': PRIM_UINT_LEAST32, + 'int_least64_t': PRIM_INT_LEAST64, + 'uint_least64_t': PRIM_UINT_LEAST64, + 'int_fast8_t': PRIM_INT_FAST8, + 'uint_fast8_t': PRIM_UINT_FAST8, + 'int_fast16_t': PRIM_INT_FAST16, + 'uint_fast16_t': PRIM_UINT_FAST16, + 'int_fast32_t': PRIM_INT_FAST32, + 'uint_fast32_t': PRIM_UINT_FAST32, + 'int_fast64_t': PRIM_INT_FAST64, + 'uint_fast64_t': PRIM_UINT_FAST64, + 'intmax_t': PRIM_INTMAX, + 'uintmax_t': PRIM_UINTMAX, + } + +F_UNION = 0x01 +F_CHECK_FIELDS = 0x02 +F_PACKED = 0x04 +F_EXTERNAL = 0x08 +F_OPAQUE = 0x10 + +G_FLAGS = dict([('_CFFI_' + _key, globals()[_key]) + for _key in ['F_UNION', 'F_CHECK_FIELDS', 'F_PACKED', + 'F_EXTERNAL', 'F_OPAQUE']]) + +CLASS_NAME = {} +for _name, _value in list(globals().items()): + if _name.startswith('OP_') and isinstance(_value, int): + CLASS_NAME[_value] = _name[3:] diff --git a/venv/lib/python3.9/site-packages/cffi/commontypes.py b/venv/lib/python3.9/site-packages/cffi/commontypes.py new file mode 100644 index 0000000..d4dae35 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/commontypes.py @@ -0,0 +1,82 @@ +import sys +from . import model +from .error import FFIError + + +COMMON_TYPES = {} + +try: + # fetch "bool" and all simple Windows types + from _cffi_backend import _get_common_types + _get_common_types(COMMON_TYPES) +except ImportError: + pass + +COMMON_TYPES['FILE'] = model.unknown_type('FILE', '_IO_FILE') +COMMON_TYPES['bool'] = '_Bool' # in case we got ImportError above +COMMON_TYPES['float _Complex'] = '_cffi_float_complex_t' +COMMON_TYPES['double _Complex'] = '_cffi_double_complex_t' + +for _type in model.PrimitiveType.ALL_PRIMITIVE_TYPES: + if _type.endswith('_t'): + COMMON_TYPES[_type] = _type +del _type + +_CACHE = {} + +def resolve_common_type(parser, commontype): + try: + return _CACHE[commontype] + except KeyError: + cdecl = COMMON_TYPES.get(commontype, commontype) + if not isinstance(cdecl, str): + result, quals = cdecl, 0 # cdecl is already a BaseType + elif cdecl in model.PrimitiveType.ALL_PRIMITIVE_TYPES: + result, quals = model.PrimitiveType(cdecl), 0 + elif cdecl == 'set-unicode-needed': + raise FFIError("The Windows type %r is only available after " + "you call ffi.set_unicode()" % (commontype,)) + else: + if commontype == cdecl: + raise FFIError( + "Unsupported type: %r. Please look at " + "http://cffi.readthedocs.io/en/latest/cdef.html#ffi-cdef-limitations " + "and file an issue if you think this type should really " + "be supported." % (commontype,)) + result, quals = parser.parse_type_and_quals(cdecl) # recursive + + assert isinstance(result, model.BaseTypeByIdentity) + _CACHE[commontype] = result, quals + return result, quals + + +# ____________________________________________________________ +# extra types for Windows (most of them are in commontypes.c) + + +def win_common_types(): + return { + "UNICODE_STRING": model.StructType( + "_UNICODE_STRING", + ["Length", + "MaximumLength", + "Buffer"], + [model.PrimitiveType("unsigned short"), + model.PrimitiveType("unsigned short"), + model.PointerType(model.PrimitiveType("wchar_t"))], + [-1, -1, -1]), + "PUNICODE_STRING": "UNICODE_STRING *", + "PCUNICODE_STRING": "const UNICODE_STRING *", + + "TBYTE": "set-unicode-needed", + "TCHAR": "set-unicode-needed", + "LPCTSTR": "set-unicode-needed", + "PCTSTR": "set-unicode-needed", + "LPTSTR": "set-unicode-needed", + "PTSTR": "set-unicode-needed", + "PTBYTE": "set-unicode-needed", + "PTCHAR": "set-unicode-needed", + } + +if sys.platform == 'win32': + COMMON_TYPES.update(win_common_types()) diff --git a/venv/lib/python3.9/site-packages/cffi/cparser.py b/venv/lib/python3.9/site-packages/cffi/cparser.py new file mode 100644 index 0000000..dd590d8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/cparser.py @@ -0,0 +1,1015 @@ +from . import model +from .commontypes import COMMON_TYPES, resolve_common_type +from .error import FFIError, CDefError +try: + from . import _pycparser as pycparser +except ImportError: + import pycparser +import weakref, re, sys + +try: + if sys.version_info < (3,): + import thread as _thread + else: + import _thread + lock = _thread.allocate_lock() +except ImportError: + lock = None + +def _workaround_for_static_import_finders(): + # Issue #392: packaging tools like cx_Freeze can not find these + # because pycparser uses exec dynamic import. This is an obscure + # workaround. This function is never called. + import pycparser.yacctab + import pycparser.lextab + +CDEF_SOURCE_STRING = "" +_r_comment = re.compile(r"/\*.*?\*/|//([^\n\\]|\\.)*?$", + re.DOTALL | re.MULTILINE) +_r_define = re.compile(r"^\s*#\s*define\s+([A-Za-z_][A-Za-z_0-9]*)" + r"\b((?:[^\n\\]|\\.)*?)$", + re.DOTALL | re.MULTILINE) +_r_line_directive = re.compile(r"^[ \t]*#[ \t]*(?:line|\d+)\b.*$", re.MULTILINE) +_r_partial_enum = re.compile(r"=\s*\.\.\.\s*[,}]|\.\.\.\s*\}") +_r_enum_dotdotdot = re.compile(r"__dotdotdot\d+__$") +_r_partial_array = re.compile(r"\[\s*\.\.\.\s*\]") +_r_words = re.compile(r"\w+|\S") +_parser_cache = None +_r_int_literal = re.compile(r"-?0?x?[0-9a-f]+[lu]*$", re.IGNORECASE) +_r_stdcall1 = re.compile(r"\b(__stdcall|WINAPI)\b") +_r_stdcall2 = re.compile(r"[(]\s*(__stdcall|WINAPI)\b") +_r_cdecl = re.compile(r"\b__cdecl\b") +_r_extern_python = re.compile(r'\bextern\s*"' + r'(Python|Python\s*\+\s*C|C\s*\+\s*Python)"\s*.') +_r_star_const_space = re.compile( # matches "* const " + r"[*]\s*((const|volatile|restrict)\b\s*)+") +_r_int_dotdotdot = re.compile(r"(\b(int|long|short|signed|unsigned|char)\s*)+" + r"\.\.\.") +_r_float_dotdotdot = re.compile(r"\b(double|float)\s*\.\.\.") + +def _get_parser(): + global _parser_cache + if _parser_cache is None: + _parser_cache = pycparser.CParser() + return _parser_cache + +def _workaround_for_old_pycparser(csource): + # Workaround for a pycparser issue (fixed between pycparser 2.10 and + # 2.14): "char*const***" gives us a wrong syntax tree, the same as + # for "char***(*const)". This means we can't tell the difference + # afterwards. But "char(*const(***))" gives us the right syntax + # tree. The issue only occurs if there are several stars in + # sequence with no parenthesis in between, just possibly qualifiers. + # Attempt to fix it by adding some parentheses in the source: each + # time we see "* const" or "* const *", we add an opening + # parenthesis before each star---the hard part is figuring out where + # to close them. + parts = [] + while True: + match = _r_star_const_space.search(csource) + if not match: + break + #print repr(''.join(parts)+csource), '=>', + parts.append(csource[:match.start()]) + parts.append('('); closing = ')' + parts.append(match.group()) # e.g. "* const " + endpos = match.end() + if csource.startswith('*', endpos): + parts.append('('); closing += ')' + level = 0 + i = endpos + while i < len(csource): + c = csource[i] + if c == '(': + level += 1 + elif c == ')': + if level == 0: + break + level -= 1 + elif c in ',;=': + if level == 0: + break + i += 1 + csource = csource[endpos:i] + closing + csource[i:] + #print repr(''.join(parts)+csource) + parts.append(csource) + return ''.join(parts) + +def _preprocess_extern_python(csource): + # input: `extern "Python" int foo(int);` or + # `extern "Python" { int foo(int); }` + # output: + # void __cffi_extern_python_start; + # int foo(int); + # void __cffi_extern_python_stop; + # + # input: `extern "Python+C" int foo(int);` + # output: + # void __cffi_extern_python_plus_c_start; + # int foo(int); + # void __cffi_extern_python_stop; + parts = [] + while True: + match = _r_extern_python.search(csource) + if not match: + break + endpos = match.end() - 1 + #print + #print ''.join(parts)+csource + #print '=>' + parts.append(csource[:match.start()]) + if 'C' in match.group(1): + parts.append('void __cffi_extern_python_plus_c_start; ') + else: + parts.append('void __cffi_extern_python_start; ') + if csource[endpos] == '{': + # grouping variant + closing = csource.find('}', endpos) + if closing < 0: + raise CDefError("'extern \"Python\" {': no '}' found") + if csource.find('{', endpos + 1, closing) >= 0: + raise NotImplementedError("cannot use { } inside a block " + "'extern \"Python\" { ... }'") + parts.append(csource[endpos+1:closing]) + csource = csource[closing+1:] + else: + # non-grouping variant + semicolon = csource.find(';', endpos) + if semicolon < 0: + raise CDefError("'extern \"Python\": no ';' found") + parts.append(csource[endpos:semicolon+1]) + csource = csource[semicolon+1:] + parts.append(' void __cffi_extern_python_stop;') + #print ''.join(parts)+csource + #print + parts.append(csource) + return ''.join(parts) + +def _warn_for_string_literal(csource): + if '"' not in csource: + return + for line in csource.splitlines(): + if '"' in line and not line.lstrip().startswith('#'): + import warnings + warnings.warn("String literal found in cdef() or type source. " + "String literals are ignored here, but you should " + "remove them anyway because some character sequences " + "confuse pre-parsing.") + break + +def _warn_for_non_extern_non_static_global_variable(decl): + if not decl.storage: + import warnings + warnings.warn("Global variable '%s' in cdef(): for consistency " + "with C it should have a storage class specifier " + "(usually 'extern')" % (decl.name,)) + +def _remove_line_directives(csource): + # _r_line_directive matches whole lines, without the final \n, if they + # start with '#line' with some spacing allowed, or '#NUMBER'. This + # function stores them away and replaces them with exactly the string + # '#line@N', where N is the index in the list 'line_directives'. + line_directives = [] + def replace(m): + i = len(line_directives) + line_directives.append(m.group()) + return '#line@%d' % i + csource = _r_line_directive.sub(replace, csource) + return csource, line_directives + +def _put_back_line_directives(csource, line_directives): + def replace(m): + s = m.group() + if not s.startswith('#line@'): + raise AssertionError("unexpected #line directive " + "(should have been processed and removed") + return line_directives[int(s[6:])] + return _r_line_directive.sub(replace, csource) + +def _preprocess(csource): + # First, remove the lines of the form '#line N "filename"' because + # the "filename" part could confuse the rest + csource, line_directives = _remove_line_directives(csource) + # Remove comments. NOTE: this only work because the cdef() section + # should not contain any string literals (except in line directives)! + def replace_keeping_newlines(m): + return ' ' + m.group().count('\n') * '\n' + csource = _r_comment.sub(replace_keeping_newlines, csource) + # Remove the "#define FOO x" lines + macros = {} + for match in _r_define.finditer(csource): + macroname, macrovalue = match.groups() + macrovalue = macrovalue.replace('\\\n', '').strip() + macros[macroname] = macrovalue + csource = _r_define.sub('', csource) + # + if pycparser.__version__ < '2.14': + csource = _workaround_for_old_pycparser(csource) + # + # BIG HACK: replace WINAPI or __stdcall with "volatile const". + # It doesn't make sense for the return type of a function to be + # "volatile volatile const", so we abuse it to detect __stdcall... + # Hack number 2 is that "int(volatile *fptr)();" is not valid C + # syntax, so we place the "volatile" before the opening parenthesis. + csource = _r_stdcall2.sub(' volatile volatile const(', csource) + csource = _r_stdcall1.sub(' volatile volatile const ', csource) + csource = _r_cdecl.sub(' ', csource) + # + # Replace `extern "Python"` with start/end markers + csource = _preprocess_extern_python(csource) + # + # Now there should not be any string literal left; warn if we get one + _warn_for_string_literal(csource) + # + # Replace "[...]" with "[__dotdotdotarray__]" + csource = _r_partial_array.sub('[__dotdotdotarray__]', csource) + # + # Replace "...}" with "__dotdotdotNUM__}". This construction should + # occur only at the end of enums; at the end of structs we have "...;}" + # and at the end of vararg functions "...);". Also replace "=...[,}]" + # with ",__dotdotdotNUM__[,}]": this occurs in the enums too, when + # giving an unknown value. + matches = list(_r_partial_enum.finditer(csource)) + for number, match in enumerate(reversed(matches)): + p = match.start() + if csource[p] == '=': + p2 = csource.find('...', p, match.end()) + assert p2 > p + csource = '%s,__dotdotdot%d__ %s' % (csource[:p], number, + csource[p2+3:]) + else: + assert csource[p:p+3] == '...' + csource = '%s __dotdotdot%d__ %s' % (csource[:p], number, + csource[p+3:]) + # Replace "int ..." or "unsigned long int..." with "__dotdotdotint__" + csource = _r_int_dotdotdot.sub(' __dotdotdotint__ ', csource) + # Replace "float ..." or "double..." with "__dotdotdotfloat__" + csource = _r_float_dotdotdot.sub(' __dotdotdotfloat__ ', csource) + # Replace all remaining "..." with the same name, "__dotdotdot__", + # which is declared with a typedef for the purpose of C parsing. + csource = csource.replace('...', ' __dotdotdot__ ') + # Finally, put back the line directives + csource = _put_back_line_directives(csource, line_directives) + return csource, macros + +def _common_type_names(csource): + # Look in the source for what looks like usages of types from the + # list of common types. A "usage" is approximated here as the + # appearance of the word, minus a "definition" of the type, which + # is the last word in a "typedef" statement. Approximative only + # but should be fine for all the common types. + look_for_words = set(COMMON_TYPES) + look_for_words.add(';') + look_for_words.add(',') + look_for_words.add('(') + look_for_words.add(')') + look_for_words.add('typedef') + words_used = set() + is_typedef = False + paren = 0 + previous_word = '' + for word in _r_words.findall(csource): + if word in look_for_words: + if word == ';': + if is_typedef: + words_used.discard(previous_word) + look_for_words.discard(previous_word) + is_typedef = False + elif word == 'typedef': + is_typedef = True + paren = 0 + elif word == '(': + paren += 1 + elif word == ')': + paren -= 1 + elif word == ',': + if is_typedef and paren == 0: + words_used.discard(previous_word) + look_for_words.discard(previous_word) + else: # word in COMMON_TYPES + words_used.add(word) + previous_word = word + return words_used + + +class Parser(object): + + def __init__(self): + self._declarations = {} + self._included_declarations = set() + self._anonymous_counter = 0 + self._structnode2type = weakref.WeakKeyDictionary() + self._options = {} + self._int_constants = {} + self._recomplete = [] + self._uses_new_feature = None + + def _parse(self, csource): + csource, macros = _preprocess(csource) + # XXX: for more efficiency we would need to poke into the + # internals of CParser... the following registers the + # typedefs, because their presence or absence influences the + # parsing itself (but what they are typedef'ed to plays no role) + ctn = _common_type_names(csource) + typenames = [] + for name in sorted(self._declarations): + if name.startswith('typedef '): + name = name[8:] + typenames.append(name) + ctn.discard(name) + typenames += sorted(ctn) + # + csourcelines = [] + csourcelines.append('# 1 ""') + for typename in typenames: + csourcelines.append('typedef int %s;' % typename) + csourcelines.append('typedef int __dotdotdotint__, __dotdotdotfloat__,' + ' __dotdotdot__;') + # this forces pycparser to consider the following in the file + # called from line 1 + csourcelines.append('# 1 "%s"' % (CDEF_SOURCE_STRING,)) + csourcelines.append(csource) + csourcelines.append('') # see test_missing_newline_bug + fullcsource = '\n'.join(csourcelines) + if lock is not None: + lock.acquire() # pycparser is not thread-safe... + try: + ast = _get_parser().parse(fullcsource) + except pycparser.c_parser.ParseError as e: + self.convert_pycparser_error(e, csource) + finally: + if lock is not None: + lock.release() + # csource will be used to find buggy source text + return ast, macros, csource + + def _convert_pycparser_error(self, e, csource): + # xxx look for ":NUM:" at the start of str(e) + # and interpret that as a line number. This will not work if + # the user gives explicit ``# NUM "FILE"`` directives. + line = None + msg = str(e) + match = re.match(r"%s:(\d+):" % (CDEF_SOURCE_STRING,), msg) + if match: + linenum = int(match.group(1), 10) + csourcelines = csource.splitlines() + if 1 <= linenum <= len(csourcelines): + line = csourcelines[linenum-1] + return line + + def convert_pycparser_error(self, e, csource): + line = self._convert_pycparser_error(e, csource) + + msg = str(e) + if line: + msg = 'cannot parse "%s"\n%s' % (line.strip(), msg) + else: + msg = 'parse error\n%s' % (msg,) + raise CDefError(msg) + + def parse(self, csource, override=False, packed=False, pack=None, + dllexport=False): + if packed: + if packed != True: + raise ValueError("'packed' should be False or True; use " + "'pack' to give another value") + if pack: + raise ValueError("cannot give both 'pack' and 'packed'") + pack = 1 + elif pack: + if pack & (pack - 1): + raise ValueError("'pack' must be a power of two, not %r" % + (pack,)) + else: + pack = 0 + prev_options = self._options + try: + self._options = {'override': override, + 'packed': pack, + 'dllexport': dllexport} + self._internal_parse(csource) + finally: + self._options = prev_options + + def _internal_parse(self, csource): + ast, macros, csource = self._parse(csource) + # add the macros + self._process_macros(macros) + # find the first "__dotdotdot__" and use that as a separator + # between the repeated typedefs and the real csource + iterator = iter(ast.ext) + for decl in iterator: + if decl.name == '__dotdotdot__': + break + else: + assert 0 + current_decl = None + # + try: + self._inside_extern_python = '__cffi_extern_python_stop' + for decl in iterator: + current_decl = decl + if isinstance(decl, pycparser.c_ast.Decl): + self._parse_decl(decl) + elif isinstance(decl, pycparser.c_ast.Typedef): + if not decl.name: + raise CDefError("typedef does not declare any name", + decl) + quals = 0 + if (isinstance(decl.type.type, pycparser.c_ast.IdentifierType) and + decl.type.type.names[-1].startswith('__dotdotdot')): + realtype = self._get_unknown_type(decl) + elif (isinstance(decl.type, pycparser.c_ast.PtrDecl) and + isinstance(decl.type.type, pycparser.c_ast.TypeDecl) and + isinstance(decl.type.type.type, + pycparser.c_ast.IdentifierType) and + decl.type.type.type.names[-1].startswith('__dotdotdot')): + realtype = self._get_unknown_ptr_type(decl) + else: + realtype, quals = self._get_type_and_quals( + decl.type, name=decl.name, partial_length_ok=True, + typedef_example="*(%s *)0" % (decl.name,)) + self._declare('typedef ' + decl.name, realtype, quals=quals) + elif decl.__class__.__name__ == 'Pragma': + # skip pragma, only in pycparser 2.15 + import warnings + warnings.warn( + "#pragma in cdef() are entirely ignored. " + "They should be removed for now, otherwise your " + "code might behave differently in a future version " + "of CFFI if #pragma support gets added. Note that " + "'#pragma pack' needs to be replaced with the " + "'packed' keyword argument to cdef().") + else: + raise CDefError("unexpected <%s>: this construct is valid " + "C but not valid in cdef()" % + decl.__class__.__name__, decl) + except CDefError as e: + if len(e.args) == 1: + e.args = e.args + (current_decl,) + raise + except FFIError as e: + msg = self._convert_pycparser_error(e, csource) + if msg: + e.args = (e.args[0] + "\n *** Err: %s" % msg,) + raise + + def _add_constants(self, key, val): + if key in self._int_constants: + if self._int_constants[key] == val: + return # ignore identical double declarations + raise FFIError( + "multiple declarations of constant: %s" % (key,)) + self._int_constants[key] = val + + def _add_integer_constant(self, name, int_str): + int_str = int_str.lower().rstrip("ul") + neg = int_str.startswith('-') + if neg: + int_str = int_str[1:] + # "010" is not valid oct in py3 + if (int_str.startswith("0") and int_str != '0' + and not int_str.startswith("0x")): + int_str = "0o" + int_str[1:] + pyvalue = int(int_str, 0) + if neg: + pyvalue = -pyvalue + self._add_constants(name, pyvalue) + self._declare('macro ' + name, pyvalue) + + def _process_macros(self, macros): + for key, value in macros.items(): + value = value.strip() + if _r_int_literal.match(value): + self._add_integer_constant(key, value) + elif value == '...': + self._declare('macro ' + key, value) + else: + raise CDefError( + 'only supports one of the following syntax:\n' + ' #define %s ... (literally dot-dot-dot)\n' + ' #define %s NUMBER (with NUMBER an integer' + ' constant, decimal/hex/octal)\n' + 'got:\n' + ' #define %s %s' + % (key, key, key, value)) + + def _declare_function(self, tp, quals, decl): + tp = self._get_type_pointer(tp, quals) + if self._options.get('dllexport'): + tag = 'dllexport_python ' + elif self._inside_extern_python == '__cffi_extern_python_start': + tag = 'extern_python ' + elif self._inside_extern_python == '__cffi_extern_python_plus_c_start': + tag = 'extern_python_plus_c ' + else: + tag = 'function ' + self._declare(tag + decl.name, tp) + + def _parse_decl(self, decl): + node = decl.type + if isinstance(node, pycparser.c_ast.FuncDecl): + tp, quals = self._get_type_and_quals(node, name=decl.name) + assert isinstance(tp, model.RawFunctionType) + self._declare_function(tp, quals, decl) + else: + if isinstance(node, pycparser.c_ast.Struct): + self._get_struct_union_enum_type('struct', node) + elif isinstance(node, pycparser.c_ast.Union): + self._get_struct_union_enum_type('union', node) + elif isinstance(node, pycparser.c_ast.Enum): + self._get_struct_union_enum_type('enum', node) + elif not decl.name: + raise CDefError("construct does not declare any variable", + decl) + # + if decl.name: + tp, quals = self._get_type_and_quals(node, + partial_length_ok=True) + if tp.is_raw_function: + self._declare_function(tp, quals, decl) + elif (tp.is_integer_type() and + hasattr(decl, 'init') and + hasattr(decl.init, 'value') and + _r_int_literal.match(decl.init.value)): + self._add_integer_constant(decl.name, decl.init.value) + elif (tp.is_integer_type() and + isinstance(decl.init, pycparser.c_ast.UnaryOp) and + decl.init.op == '-' and + hasattr(decl.init.expr, 'value') and + _r_int_literal.match(decl.init.expr.value)): + self._add_integer_constant(decl.name, + '-' + decl.init.expr.value) + elif (tp is model.void_type and + decl.name.startswith('__cffi_extern_python_')): + # hack: `extern "Python"` in the C source is replaced + # with "void __cffi_extern_python_start;" and + # "void __cffi_extern_python_stop;" + self._inside_extern_python = decl.name + else: + if self._inside_extern_python !='__cffi_extern_python_stop': + raise CDefError( + "cannot declare constants or " + "variables with 'extern \"Python\"'") + if (quals & model.Q_CONST) and not tp.is_array_type: + self._declare('constant ' + decl.name, tp, quals=quals) + else: + _warn_for_non_extern_non_static_global_variable(decl) + self._declare('variable ' + decl.name, tp, quals=quals) + + def parse_type(self, cdecl): + return self.parse_type_and_quals(cdecl)[0] + + def parse_type_and_quals(self, cdecl): + ast, macros = self._parse('void __dummy(\n%s\n);' % cdecl)[:2] + assert not macros + exprnode = ast.ext[-1].type.args.params[0] + if isinstance(exprnode, pycparser.c_ast.ID): + raise CDefError("unknown identifier '%s'" % (exprnode.name,)) + return self._get_type_and_quals(exprnode.type) + + def _declare(self, name, obj, included=False, quals=0): + if name in self._declarations: + prevobj, prevquals = self._declarations[name] + if prevobj is obj and prevquals == quals: + return + if not self._options.get('override'): + raise FFIError( + "multiple declarations of %s (for interactive usage, " + "try cdef(xx, override=True))" % (name,)) + assert '__dotdotdot__' not in name.split() + self._declarations[name] = (obj, quals) + if included: + self._included_declarations.add(obj) + + def _extract_quals(self, type): + quals = 0 + if isinstance(type, (pycparser.c_ast.TypeDecl, + pycparser.c_ast.PtrDecl)): + if 'const' in type.quals: + quals |= model.Q_CONST + if 'volatile' in type.quals: + quals |= model.Q_VOLATILE + if 'restrict' in type.quals: + quals |= model.Q_RESTRICT + return quals + + def _get_type_pointer(self, type, quals, declname=None): + if isinstance(type, model.RawFunctionType): + return type.as_function_pointer() + if (isinstance(type, model.StructOrUnionOrEnum) and + type.name.startswith('$') and type.name[1:].isdigit() and + type.forcename is None and declname is not None): + return model.NamedPointerType(type, declname, quals) + return model.PointerType(type, quals) + + def _get_type_and_quals(self, typenode, name=None, partial_length_ok=False, + typedef_example=None): + # first, dereference typedefs, if we have it already parsed, we're good + if (isinstance(typenode, pycparser.c_ast.TypeDecl) and + isinstance(typenode.type, pycparser.c_ast.IdentifierType) and + len(typenode.type.names) == 1 and + ('typedef ' + typenode.type.names[0]) in self._declarations): + tp, quals = self._declarations['typedef ' + typenode.type.names[0]] + quals |= self._extract_quals(typenode) + return tp, quals + # + if isinstance(typenode, pycparser.c_ast.ArrayDecl): + # array type + if typenode.dim is None: + length = None + else: + length = self._parse_constant( + typenode.dim, partial_length_ok=partial_length_ok) + # a hack: in 'typedef int foo_t[...][...];', don't use '...' as + # the length but use directly the C expression that would be + # generated by recompiler.py. This lets the typedef be used in + # many more places within recompiler.py + if typedef_example is not None: + if length == '...': + length = '_cffi_array_len(%s)' % (typedef_example,) + typedef_example = "*" + typedef_example + # + tp, quals = self._get_type_and_quals(typenode.type, + partial_length_ok=partial_length_ok, + typedef_example=typedef_example) + return model.ArrayType(tp, length), quals + # + if isinstance(typenode, pycparser.c_ast.PtrDecl): + # pointer type + itemtype, itemquals = self._get_type_and_quals(typenode.type) + tp = self._get_type_pointer(itemtype, itemquals, declname=name) + quals = self._extract_quals(typenode) + return tp, quals + # + if isinstance(typenode, pycparser.c_ast.TypeDecl): + quals = self._extract_quals(typenode) + type = typenode.type + if isinstance(type, pycparser.c_ast.IdentifierType): + # assume a primitive type. get it from .names, but reduce + # synonyms to a single chosen combination + names = list(type.names) + if names != ['signed', 'char']: # keep this unmodified + prefixes = {} + while names: + name = names[0] + if name in ('short', 'long', 'signed', 'unsigned'): + prefixes[name] = prefixes.get(name, 0) + 1 + del names[0] + else: + break + # ignore the 'signed' prefix below, and reorder the others + newnames = [] + for prefix in ('unsigned', 'short', 'long'): + for i in range(prefixes.get(prefix, 0)): + newnames.append(prefix) + if not names: + names = ['int'] # implicitly + if names == ['int']: # but kill it if 'short' or 'long' + if 'short' in prefixes or 'long' in prefixes: + names = [] + names = newnames + names + ident = ' '.join(names) + if ident == 'void': + return model.void_type, quals + if ident == '__dotdotdot__': + raise FFIError(':%d: bad usage of "..."' % + typenode.coord.line) + tp0, quals0 = resolve_common_type(self, ident) + return tp0, (quals | quals0) + # + if isinstance(type, pycparser.c_ast.Struct): + # 'struct foobar' + tp = self._get_struct_union_enum_type('struct', type, name) + return tp, quals + # + if isinstance(type, pycparser.c_ast.Union): + # 'union foobar' + tp = self._get_struct_union_enum_type('union', type, name) + return tp, quals + # + if isinstance(type, pycparser.c_ast.Enum): + # 'enum foobar' + tp = self._get_struct_union_enum_type('enum', type, name) + return tp, quals + # + if isinstance(typenode, pycparser.c_ast.FuncDecl): + # a function type + return self._parse_function_type(typenode, name), 0 + # + # nested anonymous structs or unions end up here + if isinstance(typenode, pycparser.c_ast.Struct): + return self._get_struct_union_enum_type('struct', typenode, name, + nested=True), 0 + if isinstance(typenode, pycparser.c_ast.Union): + return self._get_struct_union_enum_type('union', typenode, name, + nested=True), 0 + # + raise FFIError(":%d: bad or unsupported type declaration" % + typenode.coord.line) + + def _parse_function_type(self, typenode, funcname=None): + params = list(getattr(typenode.args, 'params', [])) + for i, arg in enumerate(params): + if not hasattr(arg, 'type'): + raise CDefError("%s arg %d: unknown type '%s'" + " (if you meant to use the old C syntax of giving" + " untyped arguments, it is not supported)" + % (funcname or 'in expression', i + 1, + getattr(arg, 'name', '?'))) + ellipsis = ( + len(params) > 0 and + isinstance(params[-1].type, pycparser.c_ast.TypeDecl) and + isinstance(params[-1].type.type, + pycparser.c_ast.IdentifierType) and + params[-1].type.type.names == ['__dotdotdot__']) + if ellipsis: + params.pop() + if not params: + raise CDefError( + "%s: a function with only '(...)' as argument" + " is not correct C" % (funcname or 'in expression')) + args = [self._as_func_arg(*self._get_type_and_quals(argdeclnode.type)) + for argdeclnode in params] + if not ellipsis and args == [model.void_type]: + args = [] + result, quals = self._get_type_and_quals(typenode.type) + # the 'quals' on the result type are ignored. HACK: we absure them + # to detect __stdcall functions: we textually replace "__stdcall" + # with "volatile volatile const" above. + abi = None + if hasattr(typenode.type, 'quals'): # else, probable syntax error anyway + if typenode.type.quals[-3:] == ['volatile', 'volatile', 'const']: + abi = '__stdcall' + return model.RawFunctionType(tuple(args), result, ellipsis, abi) + + def _as_func_arg(self, type, quals): + if isinstance(type, model.ArrayType): + return model.PointerType(type.item, quals) + elif isinstance(type, model.RawFunctionType): + return type.as_function_pointer() + else: + return type + + def _get_struct_union_enum_type(self, kind, type, name=None, nested=False): + # First, a level of caching on the exact 'type' node of the AST. + # This is obscure, but needed because pycparser "unrolls" declarations + # such as "typedef struct { } foo_t, *foo_p" and we end up with + # an AST that is not a tree, but a DAG, with the "type" node of the + # two branches foo_t and foo_p of the trees being the same node. + # It's a bit silly but detecting "DAG-ness" in the AST tree seems + # to be the only way to distinguish this case from two independent + # structs. See test_struct_with_two_usages. + try: + return self._structnode2type[type] + except KeyError: + pass + # + # Note that this must handle parsing "struct foo" any number of + # times and always return the same StructType object. Additionally, + # one of these times (not necessarily the first), the fields of + # the struct can be specified with "struct foo { ...fields... }". + # If no name is given, then we have to create a new anonymous struct + # with no caching; in this case, the fields are either specified + # right now or never. + # + force_name = name + name = type.name + # + # get the type or create it if needed + if name is None: + # 'force_name' is used to guess a more readable name for + # anonymous structs, for the common case "typedef struct { } foo". + if force_name is not None: + explicit_name = '$%s' % force_name + else: + self._anonymous_counter += 1 + explicit_name = '$%d' % self._anonymous_counter + tp = None + else: + explicit_name = name + key = '%s %s' % (kind, name) + tp, _ = self._declarations.get(key, (None, None)) + # + if tp is None: + if kind == 'struct': + tp = model.StructType(explicit_name, None, None, None) + elif kind == 'union': + tp = model.UnionType(explicit_name, None, None, None) + elif kind == 'enum': + if explicit_name == '__dotdotdot__': + raise CDefError("Enums cannot be declared with ...") + tp = self._build_enum_type(explicit_name, type.values) + else: + raise AssertionError("kind = %r" % (kind,)) + if name is not None: + self._declare(key, tp) + else: + if kind == 'enum' and type.values is not None: + raise NotImplementedError( + "enum %s: the '{}' declaration should appear on the first " + "time the enum is mentioned, not later" % explicit_name) + if not tp.forcename: + tp.force_the_name(force_name) + if tp.forcename and '$' in tp.name: + self._declare('anonymous %s' % tp.forcename, tp) + # + self._structnode2type[type] = tp + # + # enums: done here + if kind == 'enum': + return tp + # + # is there a 'type.decls'? If yes, then this is the place in the + # C sources that declare the fields. If no, then just return the + # existing type, possibly still incomplete. + if type.decls is None: + return tp + # + if tp.fldnames is not None: + raise CDefError("duplicate declaration of struct %s" % name) + fldnames = [] + fldtypes = [] + fldbitsize = [] + fldquals = [] + for decl in type.decls: + if (isinstance(decl.type, pycparser.c_ast.IdentifierType) and + ''.join(decl.type.names) == '__dotdotdot__'): + # XXX pycparser is inconsistent: 'names' should be a list + # of strings, but is sometimes just one string. Use + # str.join() as a way to cope with both. + self._make_partial(tp, nested) + continue + if decl.bitsize is None: + bitsize = -1 + else: + bitsize = self._parse_constant(decl.bitsize) + self._partial_length = False + type, fqual = self._get_type_and_quals(decl.type, + partial_length_ok=True) + if self._partial_length: + self._make_partial(tp, nested) + if isinstance(type, model.StructType) and type.partial: + self._make_partial(tp, nested) + fldnames.append(decl.name or '') + fldtypes.append(type) + fldbitsize.append(bitsize) + fldquals.append(fqual) + tp.fldnames = tuple(fldnames) + tp.fldtypes = tuple(fldtypes) + tp.fldbitsize = tuple(fldbitsize) + tp.fldquals = tuple(fldquals) + if fldbitsize != [-1] * len(fldbitsize): + if isinstance(tp, model.StructType) and tp.partial: + raise NotImplementedError("%s: using both bitfields and '...;'" + % (tp,)) + tp.packed = self._options.get('packed') + if tp.completed: # must be re-completed: it is not opaque any more + tp.completed = 0 + self._recomplete.append(tp) + return tp + + def _make_partial(self, tp, nested): + if not isinstance(tp, model.StructOrUnion): + raise CDefError("%s cannot be partial" % (tp,)) + if not tp.has_c_name() and not nested: + raise NotImplementedError("%s is partial but has no C name" %(tp,)) + tp.partial = True + + def _parse_constant(self, exprnode, partial_length_ok=False): + # for now, limited to expressions that are an immediate number + # or positive/negative number + if isinstance(exprnode, pycparser.c_ast.Constant): + s = exprnode.value + if '0' <= s[0] <= '9': + s = s.rstrip('uUlL') + try: + if s.startswith('0'): + return int(s, 8) + else: + return int(s, 10) + except ValueError: + if len(s) > 1: + if s.lower()[0:2] == '0x': + return int(s, 16) + elif s.lower()[0:2] == '0b': + return int(s, 2) + raise CDefError("invalid constant %r" % (s,)) + elif s[0] == "'" and s[-1] == "'" and ( + len(s) == 3 or (len(s) == 4 and s[1] == "\\")): + return ord(s[-2]) + else: + raise CDefError("invalid constant %r" % (s,)) + # + if (isinstance(exprnode, pycparser.c_ast.UnaryOp) and + exprnode.op == '+'): + return self._parse_constant(exprnode.expr) + # + if (isinstance(exprnode, pycparser.c_ast.UnaryOp) and + exprnode.op == '-'): + return -self._parse_constant(exprnode.expr) + # load previously defined int constant + if (isinstance(exprnode, pycparser.c_ast.ID) and + exprnode.name in self._int_constants): + return self._int_constants[exprnode.name] + # + if (isinstance(exprnode, pycparser.c_ast.ID) and + exprnode.name == '__dotdotdotarray__'): + if partial_length_ok: + self._partial_length = True + return '...' + raise FFIError(":%d: unsupported '[...]' here, cannot derive " + "the actual array length in this context" + % exprnode.coord.line) + # + if isinstance(exprnode, pycparser.c_ast.BinaryOp): + left = self._parse_constant(exprnode.left) + right = self._parse_constant(exprnode.right) + if exprnode.op == '+': + return left + right + elif exprnode.op == '-': + return left - right + elif exprnode.op == '*': + return left * right + elif exprnode.op == '/': + return self._c_div(left, right) + elif exprnode.op == '%': + return left - self._c_div(left, right) * right + elif exprnode.op == '<<': + return left << right + elif exprnode.op == '>>': + return left >> right + elif exprnode.op == '&': + return left & right + elif exprnode.op == '|': + return left | right + elif exprnode.op == '^': + return left ^ right + # + raise FFIError(":%d: unsupported expression: expected a " + "simple numeric constant" % exprnode.coord.line) + + def _c_div(self, a, b): + result = a // b + if ((a < 0) ^ (b < 0)) and (a % b) != 0: + result += 1 + return result + + def _build_enum_type(self, explicit_name, decls): + if decls is not None: + partial = False + enumerators = [] + enumvalues = [] + nextenumvalue = 0 + for enum in decls.enumerators: + if _r_enum_dotdotdot.match(enum.name): + partial = True + continue + if enum.value is not None: + nextenumvalue = self._parse_constant(enum.value) + enumerators.append(enum.name) + enumvalues.append(nextenumvalue) + self._add_constants(enum.name, nextenumvalue) + nextenumvalue += 1 + enumerators = tuple(enumerators) + enumvalues = tuple(enumvalues) + tp = model.EnumType(explicit_name, enumerators, enumvalues) + tp.partial = partial + else: # opaque enum + tp = model.EnumType(explicit_name, (), ()) + return tp + + def include(self, other): + for name, (tp, quals) in other._declarations.items(): + if name.startswith('anonymous $enum_$'): + continue # fix for test_anonymous_enum_include + kind = name.split(' ', 1)[0] + if kind in ('struct', 'union', 'enum', 'anonymous', 'typedef'): + self._declare(name, tp, included=True, quals=quals) + for k, v in other._int_constants.items(): + self._add_constants(k, v) + + def _get_unknown_type(self, decl): + typenames = decl.type.type.names + if typenames == ['__dotdotdot__']: + return model.unknown_type(decl.name) + + if typenames == ['__dotdotdotint__']: + if self._uses_new_feature is None: + self._uses_new_feature = "'typedef int... %s'" % decl.name + return model.UnknownIntegerType(decl.name) + + if typenames == ['__dotdotdotfloat__']: + # note: not for 'long double' so far + if self._uses_new_feature is None: + self._uses_new_feature = "'typedef float... %s'" % decl.name + return model.UnknownFloatType(decl.name) + + raise FFIError(':%d: unsupported usage of "..." in typedef' + % decl.coord.line) + + def _get_unknown_ptr_type(self, decl): + if decl.type.type.type.names == ['__dotdotdot__']: + return model.unknown_ptr_type(decl.name) + raise FFIError(':%d: unsupported usage of "..." in typedef' + % decl.coord.line) diff --git a/venv/lib/python3.9/site-packages/cffi/error.py b/venv/lib/python3.9/site-packages/cffi/error.py new file mode 100644 index 0000000..0a27247 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/error.py @@ -0,0 +1,31 @@ + +class FFIError(Exception): + __module__ = 'cffi' + +class CDefError(Exception): + __module__ = 'cffi' + def __str__(self): + try: + current_decl = self.args[1] + filename = current_decl.coord.file + linenum = current_decl.coord.line + prefix = '%s:%d: ' % (filename, linenum) + except (AttributeError, TypeError, IndexError): + prefix = '' + return '%s%s' % (prefix, self.args[0]) + +class VerificationError(Exception): + """ An error raised when verification fails + """ + __module__ = 'cffi' + +class VerificationMissing(Exception): + """ An error raised when incomplete structures are passed into + cdef, but no verification has been done + """ + __module__ = 'cffi' + +class PkgConfigError(Exception): + """ An error raised for missing modules in pkg-config + """ + __module__ = 'cffi' diff --git a/venv/lib/python3.9/site-packages/cffi/ffiplatform.py b/venv/lib/python3.9/site-packages/cffi/ffiplatform.py new file mode 100644 index 0000000..adca28f --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/ffiplatform.py @@ -0,0 +1,113 @@ +import sys, os +from .error import VerificationError + + +LIST_OF_FILE_NAMES = ['sources', 'include_dirs', 'library_dirs', + 'extra_objects', 'depends'] + +def get_extension(srcfilename, modname, sources=(), **kwds): + from cffi._shimmed_dist_utils import Extension + allsources = [srcfilename] + for src in sources: + allsources.append(os.path.normpath(src)) + return Extension(name=modname, sources=allsources, **kwds) + +def compile(tmpdir, ext, compiler_verbose=0, debug=None): + """Compile a C extension module using distutils.""" + + saved_environ = os.environ.copy() + try: + outputfilename = _build(tmpdir, ext, compiler_verbose, debug) + outputfilename = os.path.abspath(outputfilename) + finally: + # workaround for a distutils bugs where some env vars can + # become longer and longer every time it is used + for key, value in saved_environ.items(): + if os.environ.get(key) != value: + os.environ[key] = value + return outputfilename + +def _build(tmpdir, ext, compiler_verbose=0, debug=None): + # XXX compact but horrible :-( + from cffi._shimmed_dist_utils import Distribution, CompileError, LinkError, set_threshold, set_verbosity + + dist = Distribution({'ext_modules': [ext]}) + dist.parse_config_files() + options = dist.get_option_dict('build_ext') + if debug is None: + debug = sys.flags.debug + options['debug'] = ('ffiplatform', debug) + options['force'] = ('ffiplatform', True) + options['build_lib'] = ('ffiplatform', tmpdir) + options['build_temp'] = ('ffiplatform', tmpdir) + # + try: + old_level = set_threshold(0) or 0 + try: + set_verbosity(compiler_verbose) + dist.run_command('build_ext') + cmd_obj = dist.get_command_obj('build_ext') + [soname] = cmd_obj.get_outputs() + finally: + set_threshold(old_level) + except (CompileError, LinkError) as e: + raise VerificationError('%s: %s' % (e.__class__.__name__, e)) + # + return soname + +try: + from os.path import samefile +except ImportError: + def samefile(f1, f2): + return os.path.abspath(f1) == os.path.abspath(f2) + +def maybe_relative_path(path): + if not os.path.isabs(path): + return path # already relative + dir = path + names = [] + while True: + prevdir = dir + dir, name = os.path.split(prevdir) + if dir == prevdir or not dir: + return path # failed to make it relative + names.append(name) + try: + if samefile(dir, os.curdir): + names.reverse() + return os.path.join(*names) + except OSError: + pass + +# ____________________________________________________________ + +try: + int_or_long = (int, long) + import cStringIO +except NameError: + int_or_long = int # Python 3 + import io as cStringIO + +def _flatten(x, f): + if isinstance(x, str): + f.write('%ds%s' % (len(x), x)) + elif isinstance(x, dict): + keys = sorted(x.keys()) + f.write('%dd' % len(keys)) + for key in keys: + _flatten(key, f) + _flatten(x[key], f) + elif isinstance(x, (list, tuple)): + f.write('%dl' % len(x)) + for value in x: + _flatten(value, f) + elif isinstance(x, int_or_long): + f.write('%di' % (x,)) + else: + raise TypeError( + "the keywords to verify() contains unsupported object %r" % (x,)) + +def flatten(x): + f = cStringIO.StringIO() + _flatten(x, f) + return f.getvalue() diff --git a/venv/lib/python3.9/site-packages/cffi/lock.py b/venv/lib/python3.9/site-packages/cffi/lock.py new file mode 100644 index 0000000..db91b71 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/lock.py @@ -0,0 +1,30 @@ +import sys + +if sys.version_info < (3,): + try: + from thread import allocate_lock + except ImportError: + from dummy_thread import allocate_lock +else: + try: + from _thread import allocate_lock + except ImportError: + from _dummy_thread import allocate_lock + + +##import sys +##l1 = allocate_lock + +##class allocate_lock(object): +## def __init__(self): +## self._real = l1() +## def __enter__(self): +## for i in range(4, 0, -1): +## print sys._getframe(i).f_code +## print +## return self._real.__enter__() +## def __exit__(self, *args): +## return self._real.__exit__(*args) +## def acquire(self, f): +## assert f is False +## return self._real.acquire(f) diff --git a/venv/lib/python3.9/site-packages/cffi/model.py b/venv/lib/python3.9/site-packages/cffi/model.py new file mode 100644 index 0000000..e5f4cae --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/model.py @@ -0,0 +1,618 @@ +import types +import weakref + +from .lock import allocate_lock +from .error import CDefError, VerificationError, VerificationMissing + +# type qualifiers +Q_CONST = 0x01 +Q_RESTRICT = 0x02 +Q_VOLATILE = 0x04 + +def qualify(quals, replace_with): + if quals & Q_CONST: + replace_with = ' const ' + replace_with.lstrip() + if quals & Q_VOLATILE: + replace_with = ' volatile ' + replace_with.lstrip() + if quals & Q_RESTRICT: + # It seems that __restrict is supported by gcc and msvc. + # If you hit some different compiler, add a #define in + # _cffi_include.h for it (and in its copies, documented there) + replace_with = ' __restrict ' + replace_with.lstrip() + return replace_with + + +class BaseTypeByIdentity(object): + is_array_type = False + is_raw_function = False + + def get_c_name(self, replace_with='', context='a C file', quals=0): + result = self.c_name_with_marker + assert result.count('&') == 1 + # some logic duplication with ffi.getctype()... :-( + replace_with = replace_with.strip() + if replace_with: + if replace_with.startswith('*') and '&[' in result: + replace_with = '(%s)' % replace_with + elif not replace_with[0] in '[(': + replace_with = ' ' + replace_with + replace_with = qualify(quals, replace_with) + result = result.replace('&', replace_with) + if '$' in result: + raise VerificationError( + "cannot generate '%s' in %s: unknown type name" + % (self._get_c_name(), context)) + return result + + def _get_c_name(self): + return self.c_name_with_marker.replace('&', '') + + def has_c_name(self): + return '$' not in self._get_c_name() + + def is_integer_type(self): + return False + + def get_cached_btype(self, ffi, finishlist, can_delay=False): + try: + BType = ffi._cached_btypes[self] + except KeyError: + BType = self.build_backend_type(ffi, finishlist) + BType2 = ffi._cached_btypes.setdefault(self, BType) + assert BType2 is BType + return BType + + def __repr__(self): + return '<%s>' % (self._get_c_name(),) + + def _get_items(self): + return [(name, getattr(self, name)) for name in self._attrs_] + + +class BaseType(BaseTypeByIdentity): + + def __eq__(self, other): + return (self.__class__ == other.__class__ and + self._get_items() == other._get_items()) + + def __ne__(self, other): + return not self == other + + def __hash__(self): + return hash((self.__class__, tuple(self._get_items()))) + + +class VoidType(BaseType): + _attrs_ = () + + def __init__(self): + self.c_name_with_marker = 'void&' + + def build_backend_type(self, ffi, finishlist): + return global_cache(self, ffi, 'new_void_type') + +void_type = VoidType() + + +class BasePrimitiveType(BaseType): + def is_complex_type(self): + return False + + +class PrimitiveType(BasePrimitiveType): + _attrs_ = ('name',) + + ALL_PRIMITIVE_TYPES = { + 'char': 'c', + 'short': 'i', + 'int': 'i', + 'long': 'i', + 'long long': 'i', + 'signed char': 'i', + 'unsigned char': 'i', + 'unsigned short': 'i', + 'unsigned int': 'i', + 'unsigned long': 'i', + 'unsigned long long': 'i', + 'float': 'f', + 'double': 'f', + 'long double': 'f', + '_cffi_float_complex_t': 'j', + '_cffi_double_complex_t': 'j', + '_Bool': 'i', + # the following types are not primitive in the C sense + 'wchar_t': 'c', + 'char16_t': 'c', + 'char32_t': 'c', + 'int8_t': 'i', + 'uint8_t': 'i', + 'int16_t': 'i', + 'uint16_t': 'i', + 'int32_t': 'i', + 'uint32_t': 'i', + 'int64_t': 'i', + 'uint64_t': 'i', + 'int_least8_t': 'i', + 'uint_least8_t': 'i', + 'int_least16_t': 'i', + 'uint_least16_t': 'i', + 'int_least32_t': 'i', + 'uint_least32_t': 'i', + 'int_least64_t': 'i', + 'uint_least64_t': 'i', + 'int_fast8_t': 'i', + 'uint_fast8_t': 'i', + 'int_fast16_t': 'i', + 'uint_fast16_t': 'i', + 'int_fast32_t': 'i', + 'uint_fast32_t': 'i', + 'int_fast64_t': 'i', + 'uint_fast64_t': 'i', + 'intptr_t': 'i', + 'uintptr_t': 'i', + 'intmax_t': 'i', + 'uintmax_t': 'i', + 'ptrdiff_t': 'i', + 'size_t': 'i', + 'ssize_t': 'i', + } + + def __init__(self, name): + assert name in self.ALL_PRIMITIVE_TYPES + self.name = name + self.c_name_with_marker = name + '&' + + def is_char_type(self): + return self.ALL_PRIMITIVE_TYPES[self.name] == 'c' + def is_integer_type(self): + return self.ALL_PRIMITIVE_TYPES[self.name] == 'i' + def is_float_type(self): + return self.ALL_PRIMITIVE_TYPES[self.name] == 'f' + def is_complex_type(self): + return self.ALL_PRIMITIVE_TYPES[self.name] == 'j' + + def build_backend_type(self, ffi, finishlist): + return global_cache(self, ffi, 'new_primitive_type', self.name) + + +class UnknownIntegerType(BasePrimitiveType): + _attrs_ = ('name',) + + def __init__(self, name): + self.name = name + self.c_name_with_marker = name + '&' + + def is_integer_type(self): + return True + + def build_backend_type(self, ffi, finishlist): + raise NotImplementedError("integer type '%s' can only be used after " + "compilation" % self.name) + +class UnknownFloatType(BasePrimitiveType): + _attrs_ = ('name', ) + + def __init__(self, name): + self.name = name + self.c_name_with_marker = name + '&' + + def build_backend_type(self, ffi, finishlist): + raise NotImplementedError("float type '%s' can only be used after " + "compilation" % self.name) + + +class BaseFunctionType(BaseType): + _attrs_ = ('args', 'result', 'ellipsis', 'abi') + + def __init__(self, args, result, ellipsis, abi=None): + self.args = args + self.result = result + self.ellipsis = ellipsis + self.abi = abi + # + reprargs = [arg._get_c_name() for arg in self.args] + if self.ellipsis: + reprargs.append('...') + reprargs = reprargs or ['void'] + replace_with = self._base_pattern % (', '.join(reprargs),) + if abi is not None: + replace_with = replace_with[:1] + abi + ' ' + replace_with[1:] + self.c_name_with_marker = ( + self.result.c_name_with_marker.replace('&', replace_with)) + + +class RawFunctionType(BaseFunctionType): + # Corresponds to a C type like 'int(int)', which is the C type of + # a function, but not a pointer-to-function. The backend has no + # notion of such a type; it's used temporarily by parsing. + _base_pattern = '(&)(%s)' + is_raw_function = True + + def build_backend_type(self, ffi, finishlist): + raise CDefError("cannot render the type %r: it is a function " + "type, not a pointer-to-function type" % (self,)) + + def as_function_pointer(self): + return FunctionPtrType(self.args, self.result, self.ellipsis, self.abi) + + +class FunctionPtrType(BaseFunctionType): + _base_pattern = '(*&)(%s)' + + def build_backend_type(self, ffi, finishlist): + result = self.result.get_cached_btype(ffi, finishlist) + args = [] + for tp in self.args: + args.append(tp.get_cached_btype(ffi, finishlist)) + abi_args = () + if self.abi == "__stdcall": + if not self.ellipsis: # __stdcall ignored for variadic funcs + try: + abi_args = (ffi._backend.FFI_STDCALL,) + except AttributeError: + pass + return global_cache(self, ffi, 'new_function_type', + tuple(args), result, self.ellipsis, *abi_args) + + def as_raw_function(self): + return RawFunctionType(self.args, self.result, self.ellipsis, self.abi) + + +class PointerType(BaseType): + _attrs_ = ('totype', 'quals') + + def __init__(self, totype, quals=0): + self.totype = totype + self.quals = quals + extra = " *&" + if totype.is_array_type: + extra = "(%s)" % (extra.lstrip(),) + extra = qualify(quals, extra) + self.c_name_with_marker = totype.c_name_with_marker.replace('&', extra) + + def build_backend_type(self, ffi, finishlist): + BItem = self.totype.get_cached_btype(ffi, finishlist, can_delay=True) + return global_cache(self, ffi, 'new_pointer_type', BItem) + +voidp_type = PointerType(void_type) + +def ConstPointerType(totype): + return PointerType(totype, Q_CONST) + +const_voidp_type = ConstPointerType(void_type) + + +class NamedPointerType(PointerType): + _attrs_ = ('totype', 'name') + + def __init__(self, totype, name, quals=0): + PointerType.__init__(self, totype, quals) + self.name = name + self.c_name_with_marker = name + '&' + + +class ArrayType(BaseType): + _attrs_ = ('item', 'length') + is_array_type = True + + def __init__(self, item, length): + self.item = item + self.length = length + # + if length is None: + brackets = '&[]' + elif length == '...': + brackets = '&[/*...*/]' + else: + brackets = '&[%s]' % length + self.c_name_with_marker = ( + self.item.c_name_with_marker.replace('&', brackets)) + + def length_is_unknown(self): + return isinstance(self.length, str) + + def resolve_length(self, newlength): + return ArrayType(self.item, newlength) + + def build_backend_type(self, ffi, finishlist): + if self.length_is_unknown(): + raise CDefError("cannot render the type %r: unknown length" % + (self,)) + self.item.get_cached_btype(ffi, finishlist) # force the item BType + BPtrItem = PointerType(self.item).get_cached_btype(ffi, finishlist) + return global_cache(self, ffi, 'new_array_type', BPtrItem, self.length) + +char_array_type = ArrayType(PrimitiveType('char'), None) + + +class StructOrUnionOrEnum(BaseTypeByIdentity): + _attrs_ = ('name',) + forcename = None + + def build_c_name_with_marker(self): + name = self.forcename or '%s %s' % (self.kind, self.name) + self.c_name_with_marker = name + '&' + + def force_the_name(self, forcename): + self.forcename = forcename + self.build_c_name_with_marker() + + def get_official_name(self): + assert self.c_name_with_marker.endswith('&') + return self.c_name_with_marker[:-1] + + +class StructOrUnion(StructOrUnionOrEnum): + fixedlayout = None + completed = 0 + partial = False + packed = 0 + + def __init__(self, name, fldnames, fldtypes, fldbitsize, fldquals=None): + self.name = name + self.fldnames = fldnames + self.fldtypes = fldtypes + self.fldbitsize = fldbitsize + self.fldquals = fldquals + self.build_c_name_with_marker() + + def anonymous_struct_fields(self): + if self.fldtypes is not None: + for name, type in zip(self.fldnames, self.fldtypes): + if name == '' and isinstance(type, StructOrUnion): + yield type + + def enumfields(self, expand_anonymous_struct_union=True): + fldquals = self.fldquals + if fldquals is None: + fldquals = (0,) * len(self.fldnames) + for name, type, bitsize, quals in zip(self.fldnames, self.fldtypes, + self.fldbitsize, fldquals): + if (name == '' and isinstance(type, StructOrUnion) + and expand_anonymous_struct_union): + # nested anonymous struct/union + for result in type.enumfields(): + yield result + else: + yield (name, type, bitsize, quals) + + def force_flatten(self): + # force the struct or union to have a declaration that lists + # directly all fields returned by enumfields(), flattening + # nested anonymous structs/unions. + names = [] + types = [] + bitsizes = [] + fldquals = [] + for name, type, bitsize, quals in self.enumfields(): + names.append(name) + types.append(type) + bitsizes.append(bitsize) + fldquals.append(quals) + self.fldnames = tuple(names) + self.fldtypes = tuple(types) + self.fldbitsize = tuple(bitsizes) + self.fldquals = tuple(fldquals) + + def get_cached_btype(self, ffi, finishlist, can_delay=False): + BType = StructOrUnionOrEnum.get_cached_btype(self, ffi, finishlist, + can_delay) + if not can_delay: + self.finish_backend_type(ffi, finishlist) + return BType + + def finish_backend_type(self, ffi, finishlist): + if self.completed: + if self.completed != 2: + raise NotImplementedError("recursive structure declaration " + "for '%s'" % (self.name,)) + return + BType = ffi._cached_btypes[self] + # + self.completed = 1 + # + if self.fldtypes is None: + pass # not completing it: it's an opaque struct + # + elif self.fixedlayout is None: + fldtypes = [tp.get_cached_btype(ffi, finishlist) + for tp in self.fldtypes] + lst = list(zip(self.fldnames, fldtypes, self.fldbitsize)) + extra_flags = () + if self.packed: + if self.packed == 1: + extra_flags = (8,) # SF_PACKED + else: + extra_flags = (0, self.packed) + ffi._backend.complete_struct_or_union(BType, lst, self, + -1, -1, *extra_flags) + # + else: + fldtypes = [] + fieldofs, fieldsize, totalsize, totalalignment = self.fixedlayout + for i in range(len(self.fldnames)): + fsize = fieldsize[i] + ftype = self.fldtypes[i] + # + if isinstance(ftype, ArrayType) and ftype.length_is_unknown(): + # fix the length to match the total size + BItemType = ftype.item.get_cached_btype(ffi, finishlist) + nlen, nrest = divmod(fsize, ffi.sizeof(BItemType)) + if nrest != 0: + self._verification_error( + "field '%s.%s' has a bogus size?" % ( + self.name, self.fldnames[i] or '{}')) + ftype = ftype.resolve_length(nlen) + self.fldtypes = (self.fldtypes[:i] + (ftype,) + + self.fldtypes[i+1:]) + # + BFieldType = ftype.get_cached_btype(ffi, finishlist) + if isinstance(ftype, ArrayType) and ftype.length is None: + assert fsize == 0 + else: + bitemsize = ffi.sizeof(BFieldType) + if bitemsize != fsize: + self._verification_error( + "field '%s.%s' is declared as %d bytes, but is " + "really %d bytes" % (self.name, + self.fldnames[i] or '{}', + bitemsize, fsize)) + fldtypes.append(BFieldType) + # + lst = list(zip(self.fldnames, fldtypes, self.fldbitsize, fieldofs)) + ffi._backend.complete_struct_or_union(BType, lst, self, + totalsize, totalalignment) + self.completed = 2 + + def _verification_error(self, msg): + raise VerificationError(msg) + + def check_not_partial(self): + if self.partial and self.fixedlayout is None: + raise VerificationMissing(self._get_c_name()) + + def build_backend_type(self, ffi, finishlist): + self.check_not_partial() + finishlist.append(self) + # + return global_cache(self, ffi, 'new_%s_type' % self.kind, + self.get_official_name(), key=self) + + +class StructType(StructOrUnion): + kind = 'struct' + + +class UnionType(StructOrUnion): + kind = 'union' + + +class EnumType(StructOrUnionOrEnum): + kind = 'enum' + partial = False + partial_resolved = False + + def __init__(self, name, enumerators, enumvalues, baseinttype=None): + self.name = name + self.enumerators = enumerators + self.enumvalues = enumvalues + self.baseinttype = baseinttype + self.build_c_name_with_marker() + + def force_the_name(self, forcename): + StructOrUnionOrEnum.force_the_name(self, forcename) + if self.forcename is None: + name = self.get_official_name() + self.forcename = '$' + name.replace(' ', '_') + + def check_not_partial(self): + if self.partial and not self.partial_resolved: + raise VerificationMissing(self._get_c_name()) + + def build_backend_type(self, ffi, finishlist): + self.check_not_partial() + base_btype = self.build_baseinttype(ffi, finishlist) + return global_cache(self, ffi, 'new_enum_type', + self.get_official_name(), + self.enumerators, self.enumvalues, + base_btype, key=self) + + def build_baseinttype(self, ffi, finishlist): + if self.baseinttype is not None: + return self.baseinttype.get_cached_btype(ffi, finishlist) + # + if self.enumvalues: + smallest_value = min(self.enumvalues) + largest_value = max(self.enumvalues) + else: + import warnings + try: + # XXX! The goal is to ensure that the warnings.warn() + # will not suppress the warning. We want to get it + # several times if we reach this point several times. + __warningregistry__.clear() + except NameError: + pass + warnings.warn("%r has no values explicitly defined; " + "guessing that it is equivalent to 'unsigned int'" + % self._get_c_name()) + smallest_value = largest_value = 0 + if smallest_value < 0: # needs a signed type + sign = 1 + candidate1 = PrimitiveType("int") + candidate2 = PrimitiveType("long") + else: + sign = 0 + candidate1 = PrimitiveType("unsigned int") + candidate2 = PrimitiveType("unsigned long") + btype1 = candidate1.get_cached_btype(ffi, finishlist) + btype2 = candidate2.get_cached_btype(ffi, finishlist) + size1 = ffi.sizeof(btype1) + size2 = ffi.sizeof(btype2) + if (smallest_value >= ((-1) << (8*size1-1)) and + largest_value < (1 << (8*size1-sign))): + return btype1 + if (smallest_value >= ((-1) << (8*size2-1)) and + largest_value < (1 << (8*size2-sign))): + return btype2 + raise CDefError("%s values don't all fit into either 'long' " + "or 'unsigned long'" % self._get_c_name()) + +def unknown_type(name, structname=None): + if structname is None: + structname = '$%s' % name + tp = StructType(structname, None, None, None) + tp.force_the_name(name) + tp.origin = "unknown_type" + return tp + +def unknown_ptr_type(name, structname=None): + if structname is None: + structname = '$$%s' % name + tp = StructType(structname, None, None, None) + return NamedPointerType(tp, name) + + +global_lock = allocate_lock() +_typecache_cffi_backend = weakref.WeakValueDictionary() + +def get_typecache(backend): + # returns _typecache_cffi_backend if backend is the _cffi_backend + # module, or type(backend).__typecache if backend is an instance of + # CTypesBackend (or some FakeBackend class during tests) + if isinstance(backend, types.ModuleType): + return _typecache_cffi_backend + with global_lock: + if not hasattr(type(backend), '__typecache'): + type(backend).__typecache = weakref.WeakValueDictionary() + return type(backend).__typecache + +def global_cache(srctype, ffi, funcname, *args, **kwds): + key = kwds.pop('key', (funcname, args)) + assert not kwds + try: + return ffi._typecache[key] + except KeyError: + pass + try: + res = getattr(ffi._backend, funcname)(*args) + except NotImplementedError as e: + raise NotImplementedError("%s: %r: %s" % (funcname, srctype, e)) + # note that setdefault() on WeakValueDictionary is not atomic + # and contains a rare bug (http://bugs.python.org/issue19542); + # we have to use a lock and do it ourselves + cache = ffi._typecache + with global_lock: + res1 = cache.get(key) + if res1 is None: + cache[key] = res + return res + else: + return res1 + +def pointer_cache(ffi, BType): + return global_cache('?', ffi, 'new_pointer_type', BType) + +def attach_exception_info(e, name): + if e.args and type(e.args[0]) is str: + e.args = ('%s: %s' % (name, e.args[0]),) + e.args[1:] diff --git a/venv/lib/python3.9/site-packages/cffi/parse_c_type.h b/venv/lib/python3.9/site-packages/cffi/parse_c_type.h new file mode 100644 index 0000000..84e4ef8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/parse_c_type.h @@ -0,0 +1,181 @@ + +/* This part is from file 'cffi/parse_c_type.h'. It is copied at the + beginning of C sources generated by CFFI's ffi.set_source(). */ + +typedef void *_cffi_opcode_t; + +#define _CFFI_OP(opcode, arg) (_cffi_opcode_t)(opcode | (((uintptr_t)(arg)) << 8)) +#define _CFFI_GETOP(cffi_opcode) ((unsigned char)(uintptr_t)cffi_opcode) +#define _CFFI_GETARG(cffi_opcode) (((intptr_t)cffi_opcode) >> 8) + +#define _CFFI_OP_PRIMITIVE 1 +#define _CFFI_OP_POINTER 3 +#define _CFFI_OP_ARRAY 5 +#define _CFFI_OP_OPEN_ARRAY 7 +#define _CFFI_OP_STRUCT_UNION 9 +#define _CFFI_OP_ENUM 11 +#define _CFFI_OP_FUNCTION 13 +#define _CFFI_OP_FUNCTION_END 15 +#define _CFFI_OP_NOOP 17 +#define _CFFI_OP_BITFIELD 19 +#define _CFFI_OP_TYPENAME 21 +#define _CFFI_OP_CPYTHON_BLTN_V 23 // varargs +#define _CFFI_OP_CPYTHON_BLTN_N 25 // noargs +#define _CFFI_OP_CPYTHON_BLTN_O 27 // O (i.e. a single arg) +#define _CFFI_OP_CONSTANT 29 +#define _CFFI_OP_CONSTANT_INT 31 +#define _CFFI_OP_GLOBAL_VAR 33 +#define _CFFI_OP_DLOPEN_FUNC 35 +#define _CFFI_OP_DLOPEN_CONST 37 +#define _CFFI_OP_GLOBAL_VAR_F 39 +#define _CFFI_OP_EXTERN_PYTHON 41 + +#define _CFFI_PRIM_VOID 0 +#define _CFFI_PRIM_BOOL 1 +#define _CFFI_PRIM_CHAR 2 +#define _CFFI_PRIM_SCHAR 3 +#define _CFFI_PRIM_UCHAR 4 +#define _CFFI_PRIM_SHORT 5 +#define _CFFI_PRIM_USHORT 6 +#define _CFFI_PRIM_INT 7 +#define _CFFI_PRIM_UINT 8 +#define _CFFI_PRIM_LONG 9 +#define _CFFI_PRIM_ULONG 10 +#define _CFFI_PRIM_LONGLONG 11 +#define _CFFI_PRIM_ULONGLONG 12 +#define _CFFI_PRIM_FLOAT 13 +#define _CFFI_PRIM_DOUBLE 14 +#define _CFFI_PRIM_LONGDOUBLE 15 + +#define _CFFI_PRIM_WCHAR 16 +#define _CFFI_PRIM_INT8 17 +#define _CFFI_PRIM_UINT8 18 +#define _CFFI_PRIM_INT16 19 +#define _CFFI_PRIM_UINT16 20 +#define _CFFI_PRIM_INT32 21 +#define _CFFI_PRIM_UINT32 22 +#define _CFFI_PRIM_INT64 23 +#define _CFFI_PRIM_UINT64 24 +#define _CFFI_PRIM_INTPTR 25 +#define _CFFI_PRIM_UINTPTR 26 +#define _CFFI_PRIM_PTRDIFF 27 +#define _CFFI_PRIM_SIZE 28 +#define _CFFI_PRIM_SSIZE 29 +#define _CFFI_PRIM_INT_LEAST8 30 +#define _CFFI_PRIM_UINT_LEAST8 31 +#define _CFFI_PRIM_INT_LEAST16 32 +#define _CFFI_PRIM_UINT_LEAST16 33 +#define _CFFI_PRIM_INT_LEAST32 34 +#define _CFFI_PRIM_UINT_LEAST32 35 +#define _CFFI_PRIM_INT_LEAST64 36 +#define _CFFI_PRIM_UINT_LEAST64 37 +#define _CFFI_PRIM_INT_FAST8 38 +#define _CFFI_PRIM_UINT_FAST8 39 +#define _CFFI_PRIM_INT_FAST16 40 +#define _CFFI_PRIM_UINT_FAST16 41 +#define _CFFI_PRIM_INT_FAST32 42 +#define _CFFI_PRIM_UINT_FAST32 43 +#define _CFFI_PRIM_INT_FAST64 44 +#define _CFFI_PRIM_UINT_FAST64 45 +#define _CFFI_PRIM_INTMAX 46 +#define _CFFI_PRIM_UINTMAX 47 +#define _CFFI_PRIM_FLOATCOMPLEX 48 +#define _CFFI_PRIM_DOUBLECOMPLEX 49 +#define _CFFI_PRIM_CHAR16 50 +#define _CFFI_PRIM_CHAR32 51 + +#define _CFFI__NUM_PRIM 52 +#define _CFFI__UNKNOWN_PRIM (-1) +#define _CFFI__UNKNOWN_FLOAT_PRIM (-2) +#define _CFFI__UNKNOWN_LONG_DOUBLE (-3) + +#define _CFFI__IO_FILE_STRUCT (-1) + + +struct _cffi_global_s { + const char *name; + void *address; + _cffi_opcode_t type_op; + void *size_or_direct_fn; // OP_GLOBAL_VAR: size, or 0 if unknown + // OP_CPYTHON_BLTN_*: addr of direct function +}; + +struct _cffi_getconst_s { + unsigned long long value; + const struct _cffi_type_context_s *ctx; + int gindex; +}; + +struct _cffi_struct_union_s { + const char *name; + int type_index; // -> _cffi_types, on a OP_STRUCT_UNION + int flags; // _CFFI_F_* flags below + size_t size; + int alignment; + int first_field_index; // -> _cffi_fields array + int num_fields; +}; +#define _CFFI_F_UNION 0x01 // is a union, not a struct +#define _CFFI_F_CHECK_FIELDS 0x02 // complain if fields are not in the + // "standard layout" or if some are missing +#define _CFFI_F_PACKED 0x04 // for CHECK_FIELDS, assume a packed struct +#define _CFFI_F_EXTERNAL 0x08 // in some other ffi.include() +#define _CFFI_F_OPAQUE 0x10 // opaque + +struct _cffi_field_s { + const char *name; + size_t field_offset; + size_t field_size; + _cffi_opcode_t field_type_op; +}; + +struct _cffi_enum_s { + const char *name; + int type_index; // -> _cffi_types, on a OP_ENUM + int type_prim; // _CFFI_PRIM_xxx + const char *enumerators; // comma-delimited string +}; + +struct _cffi_typename_s { + const char *name; + int type_index; /* if opaque, points to a possibly artificial + OP_STRUCT which is itself opaque */ +}; + +struct _cffi_type_context_s { + _cffi_opcode_t *types; + const struct _cffi_global_s *globals; + const struct _cffi_field_s *fields; + const struct _cffi_struct_union_s *struct_unions; + const struct _cffi_enum_s *enums; + const struct _cffi_typename_s *typenames; + int num_globals; + int num_struct_unions; + int num_enums; + int num_typenames; + const char *const *includes; + int num_types; + int flags; /* future extension */ +}; + +struct _cffi_parse_info_s { + const struct _cffi_type_context_s *ctx; + _cffi_opcode_t *output; + unsigned int output_size; + size_t error_location; + const char *error_message; +}; + +struct _cffi_externpy_s { + const char *name; + size_t size_of_result; + void *reserved1, *reserved2; +}; + +#ifdef _CFFI_INTERNAL +static int parse_c_type(struct _cffi_parse_info_s *info, const char *input); +static int search_in_globals(const struct _cffi_type_context_s *ctx, + const char *search, size_t search_len); +static int search_in_struct_unions(const struct _cffi_type_context_s *ctx, + const char *search, size_t search_len); +#endif diff --git a/venv/lib/python3.9/site-packages/cffi/pkgconfig.py b/venv/lib/python3.9/site-packages/cffi/pkgconfig.py new file mode 100644 index 0000000..5c93f15 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/pkgconfig.py @@ -0,0 +1,121 @@ +# pkg-config, https://www.freedesktop.org/wiki/Software/pkg-config/ integration for cffi +import sys, os, subprocess + +from .error import PkgConfigError + + +def merge_flags(cfg1, cfg2): + """Merge values from cffi config flags cfg2 to cf1 + + Example: + merge_flags({"libraries": ["one"]}, {"libraries": ["two"]}) + {"libraries": ["one", "two"]} + """ + for key, value in cfg2.items(): + if key not in cfg1: + cfg1[key] = value + else: + if not isinstance(cfg1[key], list): + raise TypeError("cfg1[%r] should be a list of strings" % (key,)) + if not isinstance(value, list): + raise TypeError("cfg2[%r] should be a list of strings" % (key,)) + cfg1[key].extend(value) + return cfg1 + + +def call(libname, flag, encoding=sys.getfilesystemencoding()): + """Calls pkg-config and returns the output if found + """ + a = ["pkg-config", "--print-errors"] + a.append(flag) + a.append(libname) + try: + pc = subprocess.Popen(a, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + except EnvironmentError as e: + raise PkgConfigError("cannot run pkg-config: %s" % (str(e).strip(),)) + + bout, berr = pc.communicate() + if pc.returncode != 0: + try: + berr = berr.decode(encoding) + except Exception: + pass + raise PkgConfigError(berr.strip()) + + if sys.version_info >= (3,) and not isinstance(bout, str): # Python 3.x + try: + bout = bout.decode(encoding) + except UnicodeDecodeError: + raise PkgConfigError("pkg-config %s %s returned bytes that cannot " + "be decoded with encoding %r:\n%r" % + (flag, libname, encoding, bout)) + + if os.altsep != '\\' and '\\' in bout: + raise PkgConfigError("pkg-config %s %s returned an unsupported " + "backslash-escaped output:\n%r" % + (flag, libname, bout)) + return bout + + +def flags_from_pkgconfig(libs): + r"""Return compiler line flags for FFI.set_source based on pkg-config output + + Usage + ... + ffibuilder.set_source("_foo", pkgconfig = ["libfoo", "libbar >= 1.8.3"]) + + If pkg-config is installed on build machine, then arguments include_dirs, + library_dirs, libraries, define_macros, extra_compile_args and + extra_link_args are extended with an output of pkg-config for libfoo and + libbar. + + Raises PkgConfigError in case the pkg-config call fails. + """ + + def get_include_dirs(string): + return [x[2:] for x in string.split() if x.startswith("-I")] + + def get_library_dirs(string): + return [x[2:] for x in string.split() if x.startswith("-L")] + + def get_libraries(string): + return [x[2:] for x in string.split() if x.startswith("-l")] + + # convert -Dfoo=bar to list of tuples [("foo", "bar")] expected by distutils + def get_macros(string): + def _macro(x): + x = x[2:] # drop "-D" + if '=' in x: + return tuple(x.split("=", 1)) # "-Dfoo=bar" => ("foo", "bar") + else: + return (x, None) # "-Dfoo" => ("foo", None) + return [_macro(x) for x in string.split() if x.startswith("-D")] + + def get_other_cflags(string): + return [x for x in string.split() if not x.startswith("-I") and + not x.startswith("-D")] + + def get_other_libs(string): + return [x for x in string.split() if not x.startswith("-L") and + not x.startswith("-l")] + + # return kwargs for given libname + def kwargs(libname): + fse = sys.getfilesystemencoding() + all_cflags = call(libname, "--cflags") + all_libs = call(libname, "--libs") + return { + "include_dirs": get_include_dirs(all_cflags), + "library_dirs": get_library_dirs(all_libs), + "libraries": get_libraries(all_libs), + "define_macros": get_macros(all_cflags), + "extra_compile_args": get_other_cflags(all_cflags), + "extra_link_args": get_other_libs(all_libs), + } + + # merge all arguments together + ret = {} + for libname in libs: + lib_flags = kwargs(libname) + merge_flags(ret, lib_flags) + return ret diff --git a/venv/lib/python3.9/site-packages/cffi/recompiler.py b/venv/lib/python3.9/site-packages/cffi/recompiler.py new file mode 100644 index 0000000..7734a34 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/recompiler.py @@ -0,0 +1,1598 @@ +import io, os, sys, sysconfig +from . import ffiplatform, model +from .error import VerificationError +from .cffi_opcode import * + +VERSION_BASE = 0x2601 +VERSION_EMBEDDED = 0x2701 +VERSION_CHAR16CHAR32 = 0x2801 + +USE_LIMITED_API = ((sys.platform != 'win32' or sys.version_info < (3, 0) or + sys.version_info >= (3, 5)) and + not sysconfig.get_config_var("Py_GIL_DISABLED")) # free-threaded doesn't yet support limited API + +class GlobalExpr: + def __init__(self, name, address, type_op, size=0, check_value=0): + self.name = name + self.address = address + self.type_op = type_op + self.size = size + self.check_value = check_value + + def as_c_expr(self): + return ' { "%s", (void *)%s, %s, (void *)%s },' % ( + self.name, self.address, self.type_op.as_c_expr(), self.size) + + def as_python_expr(self): + return "b'%s%s',%d" % (self.type_op.as_python_bytes(), self.name, + self.check_value) + +class FieldExpr: + def __init__(self, name, field_offset, field_size, fbitsize, field_type_op): + self.name = name + self.field_offset = field_offset + self.field_size = field_size + self.fbitsize = fbitsize + self.field_type_op = field_type_op + + def as_c_expr(self): + spaces = " " * len(self.name) + return (' { "%s", %s,\n' % (self.name, self.field_offset) + + ' %s %s,\n' % (spaces, self.field_size) + + ' %s %s },' % (spaces, self.field_type_op.as_c_expr())) + + def as_python_expr(self): + raise NotImplementedError + + def as_field_python_expr(self): + if self.field_type_op.op == OP_NOOP: + size_expr = '' + elif self.field_type_op.op == OP_BITFIELD: + size_expr = format_four_bytes(self.fbitsize) + else: + raise NotImplementedError + return "b'%s%s%s'" % (self.field_type_op.as_python_bytes(), + size_expr, + self.name) + +class StructUnionExpr: + def __init__(self, name, type_index, flags, size, alignment, comment, + first_field_index, c_fields): + self.name = name + self.type_index = type_index + self.flags = flags + self.size = size + self.alignment = alignment + self.comment = comment + self.first_field_index = first_field_index + self.c_fields = c_fields + + def as_c_expr(self): + return (' { "%s", %d, %s,' % (self.name, self.type_index, self.flags) + + '\n %s, %s, ' % (self.size, self.alignment) + + '%d, %d ' % (self.first_field_index, len(self.c_fields)) + + ('/* %s */ ' % self.comment if self.comment else '') + + '},') + + def as_python_expr(self): + flags = eval(self.flags, G_FLAGS) + fields_expr = [c_field.as_field_python_expr() + for c_field in self.c_fields] + return "(b'%s%s%s',%s)" % ( + format_four_bytes(self.type_index), + format_four_bytes(flags), + self.name, + ','.join(fields_expr)) + +class EnumExpr: + def __init__(self, name, type_index, size, signed, allenums): + self.name = name + self.type_index = type_index + self.size = size + self.signed = signed + self.allenums = allenums + + def as_c_expr(self): + return (' { "%s", %d, _cffi_prim_int(%s, %s),\n' + ' "%s" },' % (self.name, self.type_index, + self.size, self.signed, self.allenums)) + + def as_python_expr(self): + prim_index = { + (1, 0): PRIM_UINT8, (1, 1): PRIM_INT8, + (2, 0): PRIM_UINT16, (2, 1): PRIM_INT16, + (4, 0): PRIM_UINT32, (4, 1): PRIM_INT32, + (8, 0): PRIM_UINT64, (8, 1): PRIM_INT64, + }[self.size, self.signed] + return "b'%s%s%s\\x00%s'" % (format_four_bytes(self.type_index), + format_four_bytes(prim_index), + self.name, self.allenums) + +class TypenameExpr: + def __init__(self, name, type_index): + self.name = name + self.type_index = type_index + + def as_c_expr(self): + return ' { "%s", %d },' % (self.name, self.type_index) + + def as_python_expr(self): + return "b'%s%s'" % (format_four_bytes(self.type_index), self.name) + + +# ____________________________________________________________ + + +class Recompiler: + _num_externpy = 0 + + def __init__(self, ffi, module_name, target_is_python=False): + self.ffi = ffi + self.module_name = module_name + self.target_is_python = target_is_python + self._version = VERSION_BASE + + def needs_version(self, ver): + self._version = max(self._version, ver) + + def collect_type_table(self): + self._typesdict = {} + self._generate("collecttype") + # + all_decls = sorted(self._typesdict, key=str) + # + # prepare all FUNCTION bytecode sequences first + self.cffi_types = [] + for tp in all_decls: + if tp.is_raw_function: + assert self._typesdict[tp] is None + self._typesdict[tp] = len(self.cffi_types) + self.cffi_types.append(tp) # placeholder + for tp1 in tp.args: + assert isinstance(tp1, (model.VoidType, + model.BasePrimitiveType, + model.PointerType, + model.StructOrUnionOrEnum, + model.FunctionPtrType)) + if self._typesdict[tp1] is None: + self._typesdict[tp1] = len(self.cffi_types) + self.cffi_types.append(tp1) # placeholder + self.cffi_types.append('END') # placeholder + # + # prepare all OTHER bytecode sequences + for tp in all_decls: + if not tp.is_raw_function and self._typesdict[tp] is None: + self._typesdict[tp] = len(self.cffi_types) + self.cffi_types.append(tp) # placeholder + if tp.is_array_type and tp.length is not None: + self.cffi_types.append('LEN') # placeholder + assert None not in self._typesdict.values() + # + # collect all structs and unions and enums + self._struct_unions = {} + self._enums = {} + for tp in all_decls: + if isinstance(tp, model.StructOrUnion): + self._struct_unions[tp] = None + elif isinstance(tp, model.EnumType): + self._enums[tp] = None + for i, tp in enumerate(sorted(self._struct_unions, + key=lambda tp: tp.name)): + self._struct_unions[tp] = i + for i, tp in enumerate(sorted(self._enums, + key=lambda tp: tp.name)): + self._enums[tp] = i + # + # emit all bytecode sequences now + for tp in all_decls: + method = getattr(self, '_emit_bytecode_' + tp.__class__.__name__) + method(tp, self._typesdict[tp]) + # + # consistency check + for op in self.cffi_types: + assert isinstance(op, CffiOp) + self.cffi_types = tuple(self.cffi_types) # don't change any more + + def _enum_fields(self, tp): + # When producing C, expand all anonymous struct/union fields. + # That's necessary to have C code checking the offsets of the + # individual fields contained in them. When producing Python, + # don't do it and instead write it like it is, with the + # corresponding fields having an empty name. Empty names are + # recognized at runtime when we import the generated Python + # file. + expand_anonymous_struct_union = not self.target_is_python + return tp.enumfields(expand_anonymous_struct_union) + + def _do_collect_type(self, tp): + if not isinstance(tp, model.BaseTypeByIdentity): + if isinstance(tp, tuple): + for x in tp: + self._do_collect_type(x) + return + if tp not in self._typesdict: + self._typesdict[tp] = None + if isinstance(tp, model.FunctionPtrType): + self._do_collect_type(tp.as_raw_function()) + elif isinstance(tp, model.StructOrUnion): + if tp.fldtypes is not None and ( + tp not in self.ffi._parser._included_declarations): + for name1, tp1, _, _ in self._enum_fields(tp): + self._do_collect_type(self._field_type(tp, name1, tp1)) + else: + for _, x in tp._get_items(): + self._do_collect_type(x) + + def _generate(self, step_name): + lst = self.ffi._parser._declarations.items() + for name, (tp, quals) in sorted(lst): + kind, realname = name.split(' ', 1) + try: + method = getattr(self, '_generate_cpy_%s_%s' % (kind, + step_name)) + except AttributeError: + raise VerificationError( + "not implemented in recompile(): %r" % name) + try: + self._current_quals = quals + method(tp, realname) + except Exception as e: + model.attach_exception_info(e, name) + raise + + # ---------- + + ALL_STEPS = ["global", "field", "struct_union", "enum", "typename"] + + def collect_step_tables(self): + # collect the declarations for '_cffi_globals', '_cffi_typenames', etc. + self._lsts = {} + for step_name in self.ALL_STEPS: + self._lsts[step_name] = [] + self._seen_struct_unions = set() + self._generate("ctx") + self._add_missing_struct_unions() + # + for step_name in self.ALL_STEPS: + lst = self._lsts[step_name] + if step_name != "field": + lst.sort(key=lambda entry: entry.name) + self._lsts[step_name] = tuple(lst) # don't change any more + # + # check for a possible internal inconsistency: _cffi_struct_unions + # should have been generated with exactly self._struct_unions + lst = self._lsts["struct_union"] + for tp, i in self._struct_unions.items(): + assert i < len(lst) + assert lst[i].name == tp.name + assert len(lst) == len(self._struct_unions) + # same with enums + lst = self._lsts["enum"] + for tp, i in self._enums.items(): + assert i < len(lst) + assert lst[i].name == tp.name + assert len(lst) == len(self._enums) + + # ---------- + + def _prnt(self, what=''): + self._f.write(what + '\n') + + def write_source_to_f(self, f, preamble): + if self.target_is_python: + assert preamble is None + self.write_py_source_to_f(f) + else: + assert preamble is not None + self.write_c_source_to_f(f, preamble) + + def _rel_readlines(self, filename): + g = open(os.path.join(os.path.dirname(__file__), filename), 'r') + lines = g.readlines() + g.close() + return lines + + def write_c_source_to_f(self, f, preamble): + self._f = f + prnt = self._prnt + if self.ffi._embedding is not None: + prnt('#define _CFFI_USE_EMBEDDING') + if not USE_LIMITED_API: + prnt('#define _CFFI_NO_LIMITED_API') + # + # first the '#include' (actually done by inlining the file's content) + lines = self._rel_readlines('_cffi_include.h') + i = lines.index('#include "parse_c_type.h"\n') + lines[i:i+1] = self._rel_readlines('parse_c_type.h') + prnt(''.join(lines)) + # + # if we have ffi._embedding != None, we give it here as a macro + # and include an extra file + base_module_name = self.module_name.split('.')[-1] + if self.ffi._embedding is not None: + prnt('#define _CFFI_MODULE_NAME "%s"' % (self.module_name,)) + prnt('static const char _CFFI_PYTHON_STARTUP_CODE[] = {') + self._print_string_literal_in_array(self.ffi._embedding) + prnt('0 };') + prnt('#ifdef PYPY_VERSION') + prnt('# define _CFFI_PYTHON_STARTUP_FUNC _cffi_pypyinit_%s' % ( + base_module_name,)) + prnt('#elif PY_MAJOR_VERSION >= 3') + prnt('# define _CFFI_PYTHON_STARTUP_FUNC PyInit_%s' % ( + base_module_name,)) + prnt('#else') + prnt('# define _CFFI_PYTHON_STARTUP_FUNC init%s' % ( + base_module_name,)) + prnt('#endif') + lines = self._rel_readlines('_embedding.h') + i = lines.index('#include "_cffi_errors.h"\n') + lines[i:i+1] = self._rel_readlines('_cffi_errors.h') + prnt(''.join(lines)) + self.needs_version(VERSION_EMBEDDED) + # + # then paste the C source given by the user, verbatim. + prnt('/************************************************************/') + prnt() + prnt(preamble) + prnt() + prnt('/************************************************************/') + prnt() + # + # the declaration of '_cffi_types' + prnt('static void *_cffi_types[] = {') + typeindex2type = dict([(i, tp) for (tp, i) in self._typesdict.items()]) + for i, op in enumerate(self.cffi_types): + comment = '' + if i in typeindex2type: + comment = ' // ' + typeindex2type[i]._get_c_name() + prnt('/* %2d */ %s,%s' % (i, op.as_c_expr(), comment)) + if not self.cffi_types: + prnt(' 0') + prnt('};') + prnt() + # + # call generate_cpy_xxx_decl(), for every xxx found from + # ffi._parser._declarations. This generates all the functions. + self._seen_constants = set() + self._generate("decl") + # + # the declaration of '_cffi_globals' and '_cffi_typenames' + nums = {} + for step_name in self.ALL_STEPS: + lst = self._lsts[step_name] + nums[step_name] = len(lst) + if nums[step_name] > 0: + prnt('static const struct _cffi_%s_s _cffi_%ss[] = {' % ( + step_name, step_name)) + for entry in lst: + prnt(entry.as_c_expr()) + prnt('};') + prnt() + # + # the declaration of '_cffi_includes' + if self.ffi._included_ffis: + prnt('static const char * const _cffi_includes[] = {') + for ffi_to_include in self.ffi._included_ffis: + try: + included_module_name, included_source = ( + ffi_to_include._assigned_source[:2]) + except AttributeError: + raise VerificationError( + "ffi object %r includes %r, but the latter has not " + "been prepared with set_source()" % ( + self.ffi, ffi_to_include,)) + if included_source is None: + raise VerificationError( + "not implemented yet: ffi.include() of a Python-based " + "ffi inside a C-based ffi") + prnt(' "%s",' % (included_module_name,)) + prnt(' NULL') + prnt('};') + prnt() + # + # the declaration of '_cffi_type_context' + prnt('static const struct _cffi_type_context_s _cffi_type_context = {') + prnt(' _cffi_types,') + for step_name in self.ALL_STEPS: + if nums[step_name] > 0: + prnt(' _cffi_%ss,' % step_name) + else: + prnt(' NULL, /* no %ss */' % step_name) + for step_name in self.ALL_STEPS: + if step_name != "field": + prnt(' %d, /* num_%ss */' % (nums[step_name], step_name)) + if self.ffi._included_ffis: + prnt(' _cffi_includes,') + else: + prnt(' NULL, /* no includes */') + prnt(' %d, /* num_types */' % (len(self.cffi_types),)) + flags = 0 + if self._num_externpy > 0 or self.ffi._embedding is not None: + flags |= 1 # set to mean that we use extern "Python" + prnt(' %d, /* flags */' % flags) + prnt('};') + prnt() + # + # the init function + prnt('#ifdef __GNUC__') + prnt('# pragma GCC visibility push(default) /* for -fvisibility= */') + prnt('#endif') + prnt() + prnt('#ifdef PYPY_VERSION') + prnt('PyMODINIT_FUNC') + prnt('_cffi_pypyinit_%s(const void *p[])' % (base_module_name,)) + prnt('{') + if flags & 1: + prnt(' if (((intptr_t)p[0]) >= 0x0A03) {') + prnt(' _cffi_call_python_org = ' + '(void(*)(struct _cffi_externpy_s *, char *))p[1];') + prnt(' }') + prnt(' p[0] = (const void *)0x%x;' % self._version) + prnt(' p[1] = &_cffi_type_context;') + prnt('#if PY_MAJOR_VERSION >= 3') + prnt(' return NULL;') + prnt('#endif') + prnt('}') + # on Windows, distutils insists on putting init_cffi_xyz in + # 'export_symbols', so instead of fighting it, just give up and + # give it one + prnt('# ifdef _MSC_VER') + prnt(' PyMODINIT_FUNC') + prnt('# if PY_MAJOR_VERSION >= 3') + prnt(' PyInit_%s(void) { return NULL; }' % (base_module_name,)) + prnt('# else') + prnt(' init%s(void) { }' % (base_module_name,)) + prnt('# endif') + prnt('# endif') + prnt('#elif PY_MAJOR_VERSION >= 3') + prnt('PyMODINIT_FUNC') + prnt('PyInit_%s(void)' % (base_module_name,)) + prnt('{') + prnt(' return _cffi_init("%s", 0x%x, &_cffi_type_context);' % ( + self.module_name, self._version)) + prnt('}') + prnt('#else') + prnt('PyMODINIT_FUNC') + prnt('init%s(void)' % (base_module_name,)) + prnt('{') + prnt(' _cffi_init("%s", 0x%x, &_cffi_type_context);' % ( + self.module_name, self._version)) + prnt('}') + prnt('#endif') + prnt() + prnt('#ifdef __GNUC__') + prnt('# pragma GCC visibility pop') + prnt('#endif') + self._version = None + + def _to_py(self, x): + if isinstance(x, str): + return "b'%s'" % (x,) + if isinstance(x, (list, tuple)): + rep = [self._to_py(item) for item in x] + if len(rep) == 1: + rep.append('') + return "(%s)" % (','.join(rep),) + return x.as_python_expr() # Py2: unicode unexpected; Py3: bytes unexp. + + def write_py_source_to_f(self, f): + self._f = f + prnt = self._prnt + # + # header + prnt("# auto-generated file") + prnt("import _cffi_backend") + # + # the 'import' of the included ffis + num_includes = len(self.ffi._included_ffis or ()) + for i in range(num_includes): + ffi_to_include = self.ffi._included_ffis[i] + try: + included_module_name, included_source = ( + ffi_to_include._assigned_source[:2]) + except AttributeError: + raise VerificationError( + "ffi object %r includes %r, but the latter has not " + "been prepared with set_source()" % ( + self.ffi, ffi_to_include,)) + if included_source is not None: + raise VerificationError( + "not implemented yet: ffi.include() of a C-based " + "ffi inside a Python-based ffi") + prnt('from %s import ffi as _ffi%d' % (included_module_name, i)) + prnt() + prnt("ffi = _cffi_backend.FFI('%s'," % (self.module_name,)) + prnt(" _version = 0x%x," % (self._version,)) + self._version = None + # + # the '_types' keyword argument + self.cffi_types = tuple(self.cffi_types) # don't change any more + types_lst = [op.as_python_bytes() for op in self.cffi_types] + prnt(' _types = %s,' % (self._to_py(''.join(types_lst)),)) + typeindex2type = dict([(i, tp) for (tp, i) in self._typesdict.items()]) + # + # the keyword arguments from ALL_STEPS + for step_name in self.ALL_STEPS: + lst = self._lsts[step_name] + if len(lst) > 0 and step_name != "field": + prnt(' _%ss = %s,' % (step_name, self._to_py(lst))) + # + # the '_includes' keyword argument + if num_includes > 0: + prnt(' _includes = (%s,),' % ( + ', '.join(['_ffi%d' % i for i in range(num_includes)]),)) + # + # the footer + prnt(')') + + # ---------- + + def _gettypenum(self, type): + # a KeyError here is a bug. please report it! :-) + return self._typesdict[type] + + def _convert_funcarg_to_c(self, tp, fromvar, tovar, errcode): + extraarg = '' + if isinstance(tp, model.BasePrimitiveType) and not tp.is_complex_type(): + if tp.is_integer_type() and tp.name != '_Bool': + converter = '_cffi_to_c_int' + extraarg = ', %s' % tp.name + elif isinstance(tp, model.UnknownFloatType): + # don't check with is_float_type(): it may be a 'long + # double' here, and _cffi_to_c_double would loose precision + converter = '(%s)_cffi_to_c_double' % (tp.get_c_name(''),) + else: + cname = tp.get_c_name('') + converter = '(%s)_cffi_to_c_%s' % (cname, + tp.name.replace(' ', '_')) + if cname in ('char16_t', 'char32_t'): + self.needs_version(VERSION_CHAR16CHAR32) + errvalue = '-1' + # + elif isinstance(tp, model.PointerType): + self._convert_funcarg_to_c_ptr_or_array(tp, fromvar, + tovar, errcode) + return + # + elif (isinstance(tp, model.StructOrUnionOrEnum) or + isinstance(tp, model.BasePrimitiveType)): + # a struct (not a struct pointer) as a function argument; + # or, a complex (the same code works) + self._prnt(' if (_cffi_to_c((char *)&%s, _cffi_type(%d), %s) < 0)' + % (tovar, self._gettypenum(tp), fromvar)) + self._prnt(' %s;' % errcode) + return + # + elif isinstance(tp, model.FunctionPtrType): + converter = '(%s)_cffi_to_c_pointer' % tp.get_c_name('') + extraarg = ', _cffi_type(%d)' % self._gettypenum(tp) + errvalue = 'NULL' + # + else: + raise NotImplementedError(tp) + # + self._prnt(' %s = %s(%s%s);' % (tovar, converter, fromvar, extraarg)) + self._prnt(' if (%s == (%s)%s && PyErr_Occurred())' % ( + tovar, tp.get_c_name(''), errvalue)) + self._prnt(' %s;' % errcode) + + def _extra_local_variables(self, tp, localvars, freelines): + if isinstance(tp, model.PointerType): + localvars.add('Py_ssize_t datasize') + localvars.add('struct _cffi_freeme_s *large_args_free = NULL') + freelines.add('if (large_args_free != NULL)' + ' _cffi_free_array_arguments(large_args_free);') + + def _convert_funcarg_to_c_ptr_or_array(self, tp, fromvar, tovar, errcode): + self._prnt(' datasize = _cffi_prepare_pointer_call_argument(') + self._prnt(' _cffi_type(%d), %s, (char **)&%s);' % ( + self._gettypenum(tp), fromvar, tovar)) + self._prnt(' if (datasize != 0) {') + self._prnt(' %s = ((size_t)datasize) <= 640 ? ' + '(%s)alloca((size_t)datasize) : NULL;' % ( + tovar, tp.get_c_name(''))) + self._prnt(' if (_cffi_convert_array_argument(_cffi_type(%d), %s, ' + '(char **)&%s,' % (self._gettypenum(tp), fromvar, tovar)) + self._prnt(' datasize, &large_args_free) < 0)') + self._prnt(' %s;' % errcode) + self._prnt(' }') + + def _convert_expr_from_c(self, tp, var, context): + if isinstance(tp, model.BasePrimitiveType): + if tp.is_integer_type() and tp.name != '_Bool': + return '_cffi_from_c_int(%s, %s)' % (var, tp.name) + elif isinstance(tp, model.UnknownFloatType): + return '_cffi_from_c_double(%s)' % (var,) + elif tp.name != 'long double' and not tp.is_complex_type(): + cname = tp.name.replace(' ', '_') + if cname in ('char16_t', 'char32_t'): + self.needs_version(VERSION_CHAR16CHAR32) + return '_cffi_from_c_%s(%s)' % (cname, var) + else: + return '_cffi_from_c_deref((char *)&%s, _cffi_type(%d))' % ( + var, self._gettypenum(tp)) + elif isinstance(tp, (model.PointerType, model.FunctionPtrType)): + return '_cffi_from_c_pointer((char *)%s, _cffi_type(%d))' % ( + var, self._gettypenum(tp)) + elif isinstance(tp, model.ArrayType): + return '_cffi_from_c_pointer((char *)%s, _cffi_type(%d))' % ( + var, self._gettypenum(model.PointerType(tp.item))) + elif isinstance(tp, model.StructOrUnion): + if tp.fldnames is None: + raise TypeError("'%s' is used as %s, but is opaque" % ( + tp._get_c_name(), context)) + return '_cffi_from_c_struct((char *)&%s, _cffi_type(%d))' % ( + var, self._gettypenum(tp)) + elif isinstance(tp, model.EnumType): + return '_cffi_from_c_deref((char *)&%s, _cffi_type(%d))' % ( + var, self._gettypenum(tp)) + else: + raise NotImplementedError(tp) + + # ---------- + # typedefs + + def _typedef_type(self, tp, name): + return self._global_type(tp, "(*(%s *)0)" % (name,)) + + def _generate_cpy_typedef_collecttype(self, tp, name): + self._do_collect_type(self._typedef_type(tp, name)) + + def _generate_cpy_typedef_decl(self, tp, name): + pass + + def _typedef_ctx(self, tp, name): + type_index = self._typesdict[tp] + self._lsts["typename"].append(TypenameExpr(name, type_index)) + + def _generate_cpy_typedef_ctx(self, tp, name): + tp = self._typedef_type(tp, name) + self._typedef_ctx(tp, name) + if getattr(tp, "origin", None) == "unknown_type": + self._struct_ctx(tp, tp.name, approxname=None) + elif isinstance(tp, model.NamedPointerType): + self._struct_ctx(tp.totype, tp.totype.name, approxname=tp.name, + named_ptr=tp) + + # ---------- + # function declarations + + def _generate_cpy_function_collecttype(self, tp, name): + self._do_collect_type(tp.as_raw_function()) + if tp.ellipsis and not self.target_is_python: + self._do_collect_type(tp) + + def _generate_cpy_function_decl(self, tp, name): + assert not self.target_is_python + assert isinstance(tp, model.FunctionPtrType) + if tp.ellipsis: + # cannot support vararg functions better than this: check for its + # exact type (including the fixed arguments), and build it as a + # constant function pointer (no CPython wrapper) + self._generate_cpy_constant_decl(tp, name) + return + prnt = self._prnt + numargs = len(tp.args) + if numargs == 0: + argname = 'noarg' + elif numargs == 1: + argname = 'arg0' + else: + argname = 'args' + # + # ------------------------------ + # the 'd' version of the function, only for addressof(lib, 'func') + arguments = [] + call_arguments = [] + context = 'argument of %s' % name + for i, type in enumerate(tp.args): + arguments.append(type.get_c_name(' x%d' % i, context)) + call_arguments.append('x%d' % i) + repr_arguments = ', '.join(arguments) + repr_arguments = repr_arguments or 'void' + if tp.abi: + abi = tp.abi + ' ' + else: + abi = '' + name_and_arguments = '%s_cffi_d_%s(%s)' % (abi, name, repr_arguments) + prnt('static %s' % (tp.result.get_c_name(name_and_arguments),)) + prnt('{') + call_arguments = ', '.join(call_arguments) + result_code = 'return ' + if isinstance(tp.result, model.VoidType): + result_code = '' + prnt(' %s%s(%s);' % (result_code, name, call_arguments)) + prnt('}') + # + prnt('#ifndef PYPY_VERSION') # ------------------------------ + # + prnt('static PyObject *') + prnt('_cffi_f_%s(PyObject *self, PyObject *%s)' % (name, argname)) + prnt('{') + # + context = 'argument of %s' % name + for i, type in enumerate(tp.args): + arg = type.get_c_name(' x%d' % i, context) + prnt(' %s;' % arg) + # + localvars = set() + freelines = set() + for type in tp.args: + self._extra_local_variables(type, localvars, freelines) + for decl in sorted(localvars): + prnt(' %s;' % (decl,)) + # + if not isinstance(tp.result, model.VoidType): + result_code = 'result = ' + context = 'result of %s' % name + result_decl = ' %s;' % tp.result.get_c_name(' result', context) + prnt(result_decl) + prnt(' PyObject *pyresult;') + else: + result_decl = None + result_code = '' + # + if len(tp.args) > 1: + rng = range(len(tp.args)) + for i in rng: + prnt(' PyObject *arg%d;' % i) + prnt() + prnt(' if (!PyArg_UnpackTuple(args, "%s", %d, %d, %s))' % ( + name, len(rng), len(rng), + ', '.join(['&arg%d' % i for i in rng]))) + prnt(' return NULL;') + prnt() + # + for i, type in enumerate(tp.args): + self._convert_funcarg_to_c(type, 'arg%d' % i, 'x%d' % i, + 'return NULL') + prnt() + # + prnt(' Py_BEGIN_ALLOW_THREADS') + prnt(' _cffi_restore_errno();') + call_arguments = ['x%d' % i for i in range(len(tp.args))] + call_arguments = ', '.join(call_arguments) + prnt(' { %s%s(%s); }' % (result_code, name, call_arguments)) + prnt(' _cffi_save_errno();') + prnt(' Py_END_ALLOW_THREADS') + prnt() + # + prnt(' (void)self; /* unused */') + if numargs == 0: + prnt(' (void)noarg; /* unused */') + if result_code: + prnt(' pyresult = %s;' % + self._convert_expr_from_c(tp.result, 'result', 'result type')) + for freeline in freelines: + prnt(' ' + freeline) + prnt(' return pyresult;') + else: + for freeline in freelines: + prnt(' ' + freeline) + prnt(' Py_INCREF(Py_None);') + prnt(' return Py_None;') + prnt('}') + # + prnt('#else') # ------------------------------ + # + # the PyPy version: need to replace struct/union arguments with + # pointers, and if the result is a struct/union, insert a first + # arg that is a pointer to the result. We also do that for + # complex args and return type. + def need_indirection(type): + return (isinstance(type, model.StructOrUnion) or + (isinstance(type, model.PrimitiveType) and + type.is_complex_type())) + difference = False + arguments = [] + call_arguments = [] + context = 'argument of %s' % name + for i, type in enumerate(tp.args): + indirection = '' + if need_indirection(type): + indirection = '*' + difference = True + arg = type.get_c_name(' %sx%d' % (indirection, i), context) + arguments.append(arg) + call_arguments.append('%sx%d' % (indirection, i)) + tp_result = tp.result + if need_indirection(tp_result): + context = 'result of %s' % name + arg = tp_result.get_c_name(' *result', context) + arguments.insert(0, arg) + tp_result = model.void_type + result_decl = None + result_code = '*result = ' + difference = True + if difference: + repr_arguments = ', '.join(arguments) + repr_arguments = repr_arguments or 'void' + name_and_arguments = '%s_cffi_f_%s(%s)' % (abi, name, + repr_arguments) + prnt('static %s' % (tp_result.get_c_name(name_and_arguments),)) + prnt('{') + if result_decl: + prnt(result_decl) + call_arguments = ', '.join(call_arguments) + prnt(' { %s%s(%s); }' % (result_code, name, call_arguments)) + if result_decl: + prnt(' return result;') + prnt('}') + else: + prnt('# define _cffi_f_%s _cffi_d_%s' % (name, name)) + # + prnt('#endif') # ------------------------------ + prnt() + + def _generate_cpy_function_ctx(self, tp, name): + if tp.ellipsis and not self.target_is_python: + self._generate_cpy_constant_ctx(tp, name) + return + type_index = self._typesdict[tp.as_raw_function()] + numargs = len(tp.args) + if self.target_is_python: + meth_kind = OP_DLOPEN_FUNC + elif numargs == 0: + meth_kind = OP_CPYTHON_BLTN_N # 'METH_NOARGS' + elif numargs == 1: + meth_kind = OP_CPYTHON_BLTN_O # 'METH_O' + else: + meth_kind = OP_CPYTHON_BLTN_V # 'METH_VARARGS' + self._lsts["global"].append( + GlobalExpr(name, '_cffi_f_%s' % name, + CffiOp(meth_kind, type_index), + size='_cffi_d_%s' % name)) + + # ---------- + # named structs or unions + + def _field_type(self, tp_struct, field_name, tp_field): + if isinstance(tp_field, model.ArrayType): + actual_length = tp_field.length + if actual_length == '...': + ptr_struct_name = tp_struct.get_c_name('*') + actual_length = '_cffi_array_len(((%s)0)->%s)' % ( + ptr_struct_name, field_name) + tp_item = self._field_type(tp_struct, '%s[0]' % field_name, + tp_field.item) + tp_field = model.ArrayType(tp_item, actual_length) + return tp_field + + def _struct_collecttype(self, tp): + self._do_collect_type(tp) + if self.target_is_python: + # also requires nested anon struct/unions in ABI mode, recursively + for fldtype in tp.anonymous_struct_fields(): + self._struct_collecttype(fldtype) + + def _struct_decl(self, tp, cname, approxname): + if tp.fldtypes is None: + return + prnt = self._prnt + checkfuncname = '_cffi_checkfld_%s' % (approxname,) + prnt('_CFFI_UNUSED_FN') + prnt('static void %s(%s *p)' % (checkfuncname, cname)) + prnt('{') + prnt(' /* only to generate compile-time warnings or errors */') + prnt(' (void)p;') + for fname, ftype, fbitsize, fqual in self._enum_fields(tp): + try: + if ftype.is_integer_type() or fbitsize >= 0: + # accept all integers, but complain on float or double + if fname != '': + prnt(" (void)((p->%s) | 0); /* check that '%s.%s' is " + "an integer */" % (fname, cname, fname)) + continue + # only accept exactly the type declared, except that '[]' + # is interpreted as a '*' and so will match any array length. + # (It would also match '*', but that's harder to detect...) + while (isinstance(ftype, model.ArrayType) + and (ftype.length is None or ftype.length == '...')): + ftype = ftype.item + fname = fname + '[0]' + prnt(' { %s = &p->%s; (void)tmp; }' % ( + ftype.get_c_name('*tmp', 'field %r'%fname, quals=fqual), + fname)) + except VerificationError as e: + prnt(' /* %s */' % str(e)) # cannot verify it, ignore + prnt('}') + prnt('struct _cffi_align_%s { char x; %s y; };' % (approxname, cname)) + prnt() + + def _struct_ctx(self, tp, cname, approxname, named_ptr=None): + type_index = self._typesdict[tp] + reason_for_not_expanding = None + flags = [] + if isinstance(tp, model.UnionType): + flags.append("_CFFI_F_UNION") + if tp.fldtypes is None: + flags.append("_CFFI_F_OPAQUE") + reason_for_not_expanding = "opaque" + if (tp not in self.ffi._parser._included_declarations and + (named_ptr is None or + named_ptr not in self.ffi._parser._included_declarations)): + if tp.fldtypes is None: + pass # opaque + elif tp.partial or any(tp.anonymous_struct_fields()): + pass # field layout obtained silently from the C compiler + else: + flags.append("_CFFI_F_CHECK_FIELDS") + if tp.packed: + if tp.packed > 1: + raise NotImplementedError( + "%r is declared with 'pack=%r'; only 0 or 1 are " + "supported in API mode (try to use \"...;\", which " + "does not require a 'pack' declaration)" % + (tp, tp.packed)) + flags.append("_CFFI_F_PACKED") + else: + flags.append("_CFFI_F_EXTERNAL") + reason_for_not_expanding = "external" + flags = '|'.join(flags) or '0' + c_fields = [] + if reason_for_not_expanding is None: + enumfields = list(self._enum_fields(tp)) + for fldname, fldtype, fbitsize, fqual in enumfields: + fldtype = self._field_type(tp, fldname, fldtype) + self._check_not_opaque(fldtype, + "field '%s.%s'" % (tp.name, fldname)) + # cname is None for _add_missing_struct_unions() only + op = OP_NOOP + if fbitsize >= 0: + op = OP_BITFIELD + size = '%d /* bits */' % fbitsize + elif cname is None or ( + isinstance(fldtype, model.ArrayType) and + fldtype.length is None): + size = '(size_t)-1' + else: + size = 'sizeof(((%s)0)->%s)' % ( + tp.get_c_name('*') if named_ptr is None + else named_ptr.name, + fldname) + if cname is None or fbitsize >= 0: + offset = '(size_t)-1' + elif named_ptr is not None: + offset = '(size_t)(((char *)&((%s)4096)->%s) - (char *)4096)' % ( + named_ptr.name, fldname) + else: + offset = 'offsetof(%s, %s)' % (tp.get_c_name(''), fldname) + c_fields.append( + FieldExpr(fldname, offset, size, fbitsize, + CffiOp(op, self._typesdict[fldtype]))) + first_field_index = len(self._lsts["field"]) + self._lsts["field"].extend(c_fields) + # + if cname is None: # unknown name, for _add_missing_struct_unions + size = '(size_t)-2' + align = -2 + comment = "unnamed" + else: + if named_ptr is not None: + size = 'sizeof(*(%s)0)' % (named_ptr.name,) + align = '-1 /* unknown alignment */' + else: + size = 'sizeof(%s)' % (cname,) + align = 'offsetof(struct _cffi_align_%s, y)' % (approxname,) + comment = None + else: + size = '(size_t)-1' + align = -1 + first_field_index = -1 + comment = reason_for_not_expanding + self._lsts["struct_union"].append( + StructUnionExpr(tp.name, type_index, flags, size, align, comment, + first_field_index, c_fields)) + self._seen_struct_unions.add(tp) + + def _check_not_opaque(self, tp, location): + while isinstance(tp, model.ArrayType): + tp = tp.item + if isinstance(tp, model.StructOrUnion) and tp.fldtypes is None: + raise TypeError( + "%s is of an opaque type (not declared in cdef())" % location) + + def _add_missing_struct_unions(self): + # not very nice, but some struct declarations might be missing + # because they don't have any known C name. Check that they are + # not partial (we can't complete or verify them!) and emit them + # anonymously. + lst = list(self._struct_unions.items()) + lst.sort(key=lambda tp_order: tp_order[1]) + for tp, order in lst: + if tp not in self._seen_struct_unions: + if tp.partial: + raise NotImplementedError("internal inconsistency: %r is " + "partial but was not seen at " + "this point" % (tp,)) + if tp.name.startswith('$') and tp.name[1:].isdigit(): + approxname = tp.name[1:] + elif tp.name == '_IO_FILE' and tp.forcename == 'FILE': + approxname = 'FILE' + self._typedef_ctx(tp, 'FILE') + else: + raise NotImplementedError("internal inconsistency: %r" % + (tp,)) + self._struct_ctx(tp, None, approxname) + + def _generate_cpy_struct_collecttype(self, tp, name): + self._struct_collecttype(tp) + _generate_cpy_union_collecttype = _generate_cpy_struct_collecttype + + def _struct_names(self, tp): + cname = tp.get_c_name('') + if ' ' in cname: + return cname, cname.replace(' ', '_') + else: + return cname, '_' + cname + + def _generate_cpy_struct_decl(self, tp, name): + self._struct_decl(tp, *self._struct_names(tp)) + _generate_cpy_union_decl = _generate_cpy_struct_decl + + def _generate_cpy_struct_ctx(self, tp, name): + self._struct_ctx(tp, *self._struct_names(tp)) + _generate_cpy_union_ctx = _generate_cpy_struct_ctx + + # ---------- + # 'anonymous' declarations. These are produced for anonymous structs + # or unions; the 'name' is obtained by a typedef. + + def _generate_cpy_anonymous_collecttype(self, tp, name): + if isinstance(tp, model.EnumType): + self._generate_cpy_enum_collecttype(tp, name) + else: + self._struct_collecttype(tp) + + def _generate_cpy_anonymous_decl(self, tp, name): + if isinstance(tp, model.EnumType): + self._generate_cpy_enum_decl(tp) + else: + self._struct_decl(tp, name, 'typedef_' + name) + + def _generate_cpy_anonymous_ctx(self, tp, name): + if isinstance(tp, model.EnumType): + self._enum_ctx(tp, name) + else: + self._struct_ctx(tp, name, 'typedef_' + name) + + # ---------- + # constants, declared with "static const ..." + + def _generate_cpy_const(self, is_int, name, tp=None, category='const', + check_value=None): + if (category, name) in self._seen_constants: + raise VerificationError( + "duplicate declaration of %s '%s'" % (category, name)) + self._seen_constants.add((category, name)) + # + prnt = self._prnt + funcname = '_cffi_%s_%s' % (category, name) + if is_int: + prnt('static int %s(unsigned long long *o)' % funcname) + prnt('{') + prnt(' int n = (%s) <= 0;' % (name,)) + prnt(' *o = (unsigned long long)((%s) | 0);' + ' /* check that %s is an integer */' % (name, name)) + if check_value is not None: + if check_value > 0: + check_value = '%dU' % (check_value,) + prnt(' if (!_cffi_check_int(*o, n, %s))' % (check_value,)) + prnt(' n |= 2;') + prnt(' return n;') + prnt('}') + else: + assert check_value is None + prnt('static void %s(char *o)' % funcname) + prnt('{') + prnt(' *(%s)o = %s;' % (tp.get_c_name('*'), name)) + prnt('}') + prnt() + + def _generate_cpy_constant_collecttype(self, tp, name): + is_int = tp.is_integer_type() + if not is_int or self.target_is_python: + self._do_collect_type(tp) + + def _generate_cpy_constant_decl(self, tp, name): + is_int = tp.is_integer_type() + self._generate_cpy_const(is_int, name, tp) + + def _generate_cpy_constant_ctx(self, tp, name): + if not self.target_is_python and tp.is_integer_type(): + type_op = CffiOp(OP_CONSTANT_INT, -1) + else: + if self.target_is_python: + const_kind = OP_DLOPEN_CONST + else: + const_kind = OP_CONSTANT + type_index = self._typesdict[tp] + type_op = CffiOp(const_kind, type_index) + self._lsts["global"].append( + GlobalExpr(name, '_cffi_const_%s' % name, type_op)) + + # ---------- + # enums + + def _generate_cpy_enum_collecttype(self, tp, name): + self._do_collect_type(tp) + + def _generate_cpy_enum_decl(self, tp, name=None): + for enumerator in tp.enumerators: + self._generate_cpy_const(True, enumerator) + + def _enum_ctx(self, tp, cname): + type_index = self._typesdict[tp] + type_op = CffiOp(OP_ENUM, -1) + if self.target_is_python: + tp.check_not_partial() + for enumerator, enumvalue in zip(tp.enumerators, tp.enumvalues): + self._lsts["global"].append( + GlobalExpr(enumerator, '_cffi_const_%s' % enumerator, type_op, + check_value=enumvalue)) + # + if cname is not None and '$' not in cname and not self.target_is_python: + size = "sizeof(%s)" % cname + signed = "((%s)-1) <= 0" % cname + else: + basetp = tp.build_baseinttype(self.ffi, []) + size = self.ffi.sizeof(basetp) + signed = int(int(self.ffi.cast(basetp, -1)) < 0) + allenums = ",".join(tp.enumerators) + self._lsts["enum"].append( + EnumExpr(tp.name, type_index, size, signed, allenums)) + + def _generate_cpy_enum_ctx(self, tp, name): + self._enum_ctx(tp, tp._get_c_name()) + + # ---------- + # macros: for now only for integers + + def _generate_cpy_macro_collecttype(self, tp, name): + pass + + def _generate_cpy_macro_decl(self, tp, name): + if tp == '...': + check_value = None + else: + check_value = tp # an integer + self._generate_cpy_const(True, name, check_value=check_value) + + def _generate_cpy_macro_ctx(self, tp, name): + if tp == '...': + if self.target_is_python: + raise VerificationError( + "cannot use the syntax '...' in '#define %s ...' when " + "using the ABI mode" % (name,)) + check_value = None + else: + check_value = tp # an integer + type_op = CffiOp(OP_CONSTANT_INT, -1) + self._lsts["global"].append( + GlobalExpr(name, '_cffi_const_%s' % name, type_op, + check_value=check_value)) + + # ---------- + # global variables + + def _global_type(self, tp, global_name): + if isinstance(tp, model.ArrayType): + actual_length = tp.length + if actual_length == '...': + actual_length = '_cffi_array_len(%s)' % (global_name,) + tp_item = self._global_type(tp.item, '%s[0]' % global_name) + tp = model.ArrayType(tp_item, actual_length) + return tp + + def _generate_cpy_variable_collecttype(self, tp, name): + self._do_collect_type(self._global_type(tp, name)) + + def _generate_cpy_variable_decl(self, tp, name): + prnt = self._prnt + tp = self._global_type(tp, name) + if isinstance(tp, model.ArrayType) and tp.length is None: + tp = tp.item + ampersand = '' + else: + ampersand = '&' + # This code assumes that casts from "tp *" to "void *" is a + # no-op, i.e. a function that returns a "tp *" can be called + # as if it returned a "void *". This should be generally true + # on any modern machine. The only exception to that rule (on + # uncommon architectures, and as far as I can tell) might be + # if 'tp' were a function type, but that is not possible here. + # (If 'tp' is a function _pointer_ type, then casts from "fn_t + # **" to "void *" are again no-ops, as far as I can tell.) + decl = '*_cffi_var_%s(void)' % (name,) + prnt('static ' + tp.get_c_name(decl, quals=self._current_quals)) + prnt('{') + prnt(' return %s(%s);' % (ampersand, name)) + prnt('}') + prnt() + + def _generate_cpy_variable_ctx(self, tp, name): + tp = self._global_type(tp, name) + type_index = self._typesdict[tp] + if self.target_is_python: + op = OP_GLOBAL_VAR + else: + op = OP_GLOBAL_VAR_F + self._lsts["global"].append( + GlobalExpr(name, '_cffi_var_%s' % name, CffiOp(op, type_index))) + + # ---------- + # extern "Python" + + def _generate_cpy_extern_python_collecttype(self, tp, name): + assert isinstance(tp, model.FunctionPtrType) + self._do_collect_type(tp) + _generate_cpy_dllexport_python_collecttype = \ + _generate_cpy_extern_python_plus_c_collecttype = \ + _generate_cpy_extern_python_collecttype + + def _extern_python_decl(self, tp, name, tag_and_space): + prnt = self._prnt + if isinstance(tp.result, model.VoidType): + size_of_result = '0' + else: + context = 'result of %s' % name + size_of_result = '(int)sizeof(%s)' % ( + tp.result.get_c_name('', context),) + prnt('static struct _cffi_externpy_s _cffi_externpy__%s =' % name) + prnt(' { "%s.%s", %s, 0, 0 };' % ( + self.module_name, name, size_of_result)) + prnt() + # + arguments = [] + context = 'argument of %s' % name + for i, type in enumerate(tp.args): + arg = type.get_c_name(' a%d' % i, context) + arguments.append(arg) + # + repr_arguments = ', '.join(arguments) + repr_arguments = repr_arguments or 'void' + name_and_arguments = '%s(%s)' % (name, repr_arguments) + if tp.abi == "__stdcall": + name_and_arguments = '_cffi_stdcall ' + name_and_arguments + # + def may_need_128_bits(tp): + return (isinstance(tp, model.PrimitiveType) and + tp.name == 'long double') + # + size_of_a = max(len(tp.args)*8, 8) + if may_need_128_bits(tp.result): + size_of_a = max(size_of_a, 16) + if isinstance(tp.result, model.StructOrUnion): + size_of_a = 'sizeof(%s) > %d ? sizeof(%s) : %d' % ( + tp.result.get_c_name(''), size_of_a, + tp.result.get_c_name(''), size_of_a) + prnt('%s%s' % (tag_and_space, tp.result.get_c_name(name_and_arguments))) + prnt('{') + prnt(' char a[%s];' % size_of_a) + prnt(' char *p = a;') + for i, type in enumerate(tp.args): + arg = 'a%d' % i + if (isinstance(type, model.StructOrUnion) or + may_need_128_bits(type)): + arg = '&' + arg + type = model.PointerType(type) + prnt(' *(%s)(p + %d) = %s;' % (type.get_c_name('*'), i*8, arg)) + prnt(' _cffi_call_python(&_cffi_externpy__%s, p);' % name) + if not isinstance(tp.result, model.VoidType): + prnt(' return *(%s)p;' % (tp.result.get_c_name('*'),)) + prnt('}') + prnt() + self._num_externpy += 1 + + def _generate_cpy_extern_python_decl(self, tp, name): + self._extern_python_decl(tp, name, 'static ') + + def _generate_cpy_dllexport_python_decl(self, tp, name): + self._extern_python_decl(tp, name, 'CFFI_DLLEXPORT ') + + def _generate_cpy_extern_python_plus_c_decl(self, tp, name): + self._extern_python_decl(tp, name, '') + + def _generate_cpy_extern_python_ctx(self, tp, name): + if self.target_is_python: + raise VerificationError( + "cannot use 'extern \"Python\"' in the ABI mode") + if tp.ellipsis: + raise NotImplementedError("a vararg function is extern \"Python\"") + type_index = self._typesdict[tp] + type_op = CffiOp(OP_EXTERN_PYTHON, type_index) + self._lsts["global"].append( + GlobalExpr(name, '&_cffi_externpy__%s' % name, type_op, name)) + + _generate_cpy_dllexport_python_ctx = \ + _generate_cpy_extern_python_plus_c_ctx = \ + _generate_cpy_extern_python_ctx + + def _print_string_literal_in_array(self, s): + prnt = self._prnt + prnt('// # NB. this is not a string because of a size limit in MSVC') + if not isinstance(s, bytes): # unicode + s = s.encode('utf-8') # -> bytes + else: + s.decode('utf-8') # got bytes, check for valid utf-8 + try: + s.decode('ascii') + except UnicodeDecodeError: + s = b'# -*- encoding: utf8 -*-\n' + s + for line in s.splitlines(True): + comment = line + if type('//') is bytes: # python2 + line = map(ord, line) # make a list of integers + else: # python3 + # type(line) is bytes, which enumerates like a list of integers + comment = ascii(comment)[1:-1] + prnt(('// ' + comment).rstrip()) + printed_line = '' + for c in line: + if len(printed_line) >= 76: + prnt(printed_line) + printed_line = '' + printed_line += '%d,' % (c,) + prnt(printed_line) + + # ---------- + # emitting the opcodes for individual types + + def _emit_bytecode_VoidType(self, tp, index): + self.cffi_types[index] = CffiOp(OP_PRIMITIVE, PRIM_VOID) + + def _emit_bytecode_PrimitiveType(self, tp, index): + prim_index = PRIMITIVE_TO_INDEX[tp.name] + self.cffi_types[index] = CffiOp(OP_PRIMITIVE, prim_index) + + def _emit_bytecode_UnknownIntegerType(self, tp, index): + s = ('_cffi_prim_int(sizeof(%s), (\n' + ' ((%s)-1) | 0 /* check that %s is an integer type */\n' + ' ) <= 0)' % (tp.name, tp.name, tp.name)) + self.cffi_types[index] = CffiOp(OP_PRIMITIVE, s) + + def _emit_bytecode_UnknownFloatType(self, tp, index): + s = ('_cffi_prim_float(sizeof(%s) *\n' + ' (((%s)1) / 2) * 2 /* integer => 0, float => 1 */\n' + ' )' % (tp.name, tp.name)) + self.cffi_types[index] = CffiOp(OP_PRIMITIVE, s) + + def _emit_bytecode_RawFunctionType(self, tp, index): + self.cffi_types[index] = CffiOp(OP_FUNCTION, self._typesdict[tp.result]) + index += 1 + for tp1 in tp.args: + realindex = self._typesdict[tp1] + if index != realindex: + if isinstance(tp1, model.PrimitiveType): + self._emit_bytecode_PrimitiveType(tp1, index) + else: + self.cffi_types[index] = CffiOp(OP_NOOP, realindex) + index += 1 + flags = int(tp.ellipsis) + if tp.abi is not None: + if tp.abi == '__stdcall': + flags |= 2 + else: + raise NotImplementedError("abi=%r" % (tp.abi,)) + self.cffi_types[index] = CffiOp(OP_FUNCTION_END, flags) + + def _emit_bytecode_PointerType(self, tp, index): + self.cffi_types[index] = CffiOp(OP_POINTER, self._typesdict[tp.totype]) + + _emit_bytecode_ConstPointerType = _emit_bytecode_PointerType + _emit_bytecode_NamedPointerType = _emit_bytecode_PointerType + + def _emit_bytecode_FunctionPtrType(self, tp, index): + raw = tp.as_raw_function() + self.cffi_types[index] = CffiOp(OP_POINTER, self._typesdict[raw]) + + def _emit_bytecode_ArrayType(self, tp, index): + item_index = self._typesdict[tp.item] + if tp.length is None: + self.cffi_types[index] = CffiOp(OP_OPEN_ARRAY, item_index) + elif tp.length == '...': + raise VerificationError( + "type %s badly placed: the '...' array length can only be " + "used on global arrays or on fields of structures" % ( + str(tp).replace('/*...*/', '...'),)) + else: + assert self.cffi_types[index + 1] == 'LEN' + self.cffi_types[index] = CffiOp(OP_ARRAY, item_index) + self.cffi_types[index + 1] = CffiOp(None, str(tp.length)) + + def _emit_bytecode_StructType(self, tp, index): + struct_index = self._struct_unions[tp] + self.cffi_types[index] = CffiOp(OP_STRUCT_UNION, struct_index) + _emit_bytecode_UnionType = _emit_bytecode_StructType + + def _emit_bytecode_EnumType(self, tp, index): + enum_index = self._enums[tp] + self.cffi_types[index] = CffiOp(OP_ENUM, enum_index) + + +if sys.version_info >= (3,): + NativeIO = io.StringIO +else: + class NativeIO(io.BytesIO): + def write(self, s): + if isinstance(s, unicode): + s = s.encode('ascii') + super(NativeIO, self).write(s) + +def _is_file_like(maybefile): + # compare to xml.etree.ElementTree._get_writer + return hasattr(maybefile, 'write') + +def _make_c_or_py_source(ffi, module_name, preamble, target_file, verbose): + if verbose: + print("generating %s" % (target_file,)) + recompiler = Recompiler(ffi, module_name, + target_is_python=(preamble is None)) + recompiler.collect_type_table() + recompiler.collect_step_tables() + if _is_file_like(target_file): + recompiler.write_source_to_f(target_file, preamble) + return True + f = NativeIO() + recompiler.write_source_to_f(f, preamble) + output = f.getvalue() + try: + with open(target_file, 'r') as f1: + if f1.read(len(output) + 1) != output: + raise IOError + if verbose: + print("(already up-to-date)") + return False # already up-to-date + except IOError: + tmp_file = '%s.~%d' % (target_file, os.getpid()) + with open(tmp_file, 'w') as f1: + f1.write(output) + try: + os.rename(tmp_file, target_file) + except OSError: + os.unlink(target_file) + os.rename(tmp_file, target_file) + return True + +def make_c_source(ffi, module_name, preamble, target_c_file, verbose=False): + assert preamble is not None + return _make_c_or_py_source(ffi, module_name, preamble, target_c_file, + verbose) + +def make_py_source(ffi, module_name, target_py_file, verbose=False): + return _make_c_or_py_source(ffi, module_name, None, target_py_file, + verbose) + +def _modname_to_file(outputdir, modname, extension): + parts = modname.split('.') + try: + os.makedirs(os.path.join(outputdir, *parts[:-1])) + except OSError: + pass + parts[-1] += extension + return os.path.join(outputdir, *parts), parts + + +# Aaargh. Distutils is not tested at all for the purpose of compiling +# DLLs that are not extension modules. Here are some hacks to work +# around that, in the _patch_for_*() functions... + +def _patch_meth(patchlist, cls, name, new_meth): + old = getattr(cls, name) + patchlist.append((cls, name, old)) + setattr(cls, name, new_meth) + return old + +def _unpatch_meths(patchlist): + for cls, name, old_meth in reversed(patchlist): + setattr(cls, name, old_meth) + +def _patch_for_embedding(patchlist): + if sys.platform == 'win32': + # we must not remove the manifest when building for embedding! + # FUTURE: this module was removed in setuptools 74; this is likely dead code and should be removed, + # since the toolchain it supports (VS2005-2008) is also long dead. + from cffi._shimmed_dist_utils import MSVCCompiler + if MSVCCompiler is not None: + _patch_meth(patchlist, MSVCCompiler, '_remove_visual_c_ref', + lambda self, manifest_file: manifest_file) + + if sys.platform == 'darwin': + # we must not make a '-bundle', but a '-dynamiclib' instead + from cffi._shimmed_dist_utils import CCompiler + def my_link_shared_object(self, *args, **kwds): + if '-bundle' in self.linker_so: + self.linker_so = list(self.linker_so) + i = self.linker_so.index('-bundle') + self.linker_so[i] = '-dynamiclib' + return old_link_shared_object(self, *args, **kwds) + old_link_shared_object = _patch_meth(patchlist, CCompiler, + 'link_shared_object', + my_link_shared_object) + +def _patch_for_target(patchlist, target): + from cffi._shimmed_dist_utils import build_ext + # if 'target' is different from '*', we need to patch some internal + # method to just return this 'target' value, instead of having it + # built from module_name + if target.endswith('.*'): + target = target[:-2] + if sys.platform == 'win32': + target += '.dll' + elif sys.platform == 'darwin': + target += '.dylib' + else: + target += '.so' + _patch_meth(patchlist, build_ext, 'get_ext_filename', + lambda self, ext_name: target) + + +def recompile(ffi, module_name, preamble, tmpdir='.', call_c_compiler=True, + c_file=None, source_extension='.c', extradir=None, + compiler_verbose=1, target=None, debug=None, + uses_ffiplatform=True, **kwds): + if not isinstance(module_name, str): + module_name = module_name.encode('ascii') + if ffi._windows_unicode: + ffi._apply_windows_unicode(kwds) + if preamble is not None: + if call_c_compiler and _is_file_like(c_file): + raise TypeError("Writing to file-like objects is not supported " + "with call_c_compiler=True") + embedding = (ffi._embedding is not None) + if embedding: + ffi._apply_embedding_fix(kwds) + if c_file is None: + c_file, parts = _modname_to_file(tmpdir, module_name, + source_extension) + if extradir: + parts = [extradir] + parts + ext_c_file = os.path.join(*parts) + else: + ext_c_file = c_file + # + if target is None: + if embedding: + target = '%s.*' % module_name + else: + target = '*' + # + if uses_ffiplatform: + ext = ffiplatform.get_extension(ext_c_file, module_name, **kwds) + else: + ext = None + updated = make_c_source(ffi, module_name, preamble, c_file, + verbose=compiler_verbose) + if call_c_compiler: + patchlist = [] + cwd = os.getcwd() + try: + if embedding: + _patch_for_embedding(patchlist) + if target != '*': + _patch_for_target(patchlist, target) + if compiler_verbose: + if tmpdir == '.': + msg = 'the current directory is' + else: + msg = 'setting the current directory to' + print('%s %r' % (msg, os.path.abspath(tmpdir))) + os.chdir(tmpdir) + outputfilename = ffiplatform.compile('.', ext, + compiler_verbose, debug) + finally: + os.chdir(cwd) + _unpatch_meths(patchlist) + return outputfilename + else: + return ext, updated + else: + if c_file is None: + c_file, _ = _modname_to_file(tmpdir, module_name, '.py') + updated = make_py_source(ffi, module_name, c_file, + verbose=compiler_verbose) + if call_c_compiler: + return c_file + else: + return None, updated + diff --git a/venv/lib/python3.9/site-packages/cffi/setuptools_ext.py b/venv/lib/python3.9/site-packages/cffi/setuptools_ext.py new file mode 100644 index 0000000..5cdd246 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/setuptools_ext.py @@ -0,0 +1,229 @@ +import os +import sys +import sysconfig + +try: + basestring +except NameError: + # Python 3.x + basestring = str + +def error(msg): + from cffi._shimmed_dist_utils import DistutilsSetupError + raise DistutilsSetupError(msg) + + +def execfile(filename, glob): + # We use execfile() (here rewritten for Python 3) instead of + # __import__() to load the build script. The problem with + # a normal import is that in some packages, the intermediate + # __init__.py files may already try to import the file that + # we are generating. + with open(filename) as f: + src = f.read() + src += '\n' # Python 2.6 compatibility + code = compile(src, filename, 'exec') + exec(code, glob, glob) + + +def add_cffi_module(dist, mod_spec): + from cffi.api import FFI + + if not isinstance(mod_spec, basestring): + error("argument to 'cffi_modules=...' must be a str or a list of str," + " not %r" % (type(mod_spec).__name__,)) + mod_spec = str(mod_spec) + try: + build_file_name, ffi_var_name = mod_spec.split(':') + except ValueError: + error("%r must be of the form 'path/build.py:ffi_variable'" % + (mod_spec,)) + if not os.path.exists(build_file_name): + ext = '' + rewritten = build_file_name.replace('.', '/') + '.py' + if os.path.exists(rewritten): + ext = ' (rewrite cffi_modules to [%r])' % ( + rewritten + ':' + ffi_var_name,) + error("%r does not name an existing file%s" % (build_file_name, ext)) + + mod_vars = {'__name__': '__cffi__', '__file__': build_file_name} + execfile(build_file_name, mod_vars) + + try: + ffi = mod_vars[ffi_var_name] + except KeyError: + error("%r: object %r not found in module" % (mod_spec, + ffi_var_name)) + if not isinstance(ffi, FFI): + ffi = ffi() # maybe it's a function instead of directly an ffi + if not isinstance(ffi, FFI): + error("%r is not an FFI instance (got %r)" % (mod_spec, + type(ffi).__name__)) + if not hasattr(ffi, '_assigned_source'): + error("%r: the set_source() method was not called" % (mod_spec,)) + module_name, source, source_extension, kwds = ffi._assigned_source + if ffi._windows_unicode: + kwds = kwds.copy() + ffi._apply_windows_unicode(kwds) + + if source is None: + _add_py_module(dist, ffi, module_name) + else: + _add_c_module(dist, ffi, module_name, source, source_extension, kwds) + +def _set_py_limited_api(Extension, kwds): + """ + Add py_limited_api to kwds if setuptools >= 26 is in use. + Do not alter the setting if it already exists. + Setuptools takes care of ignoring the flag on Python 2 and PyPy. + + CPython itself should ignore the flag in a debugging version + (by not listing .abi3.so in the extensions it supports), but + it doesn't so far, creating troubles. That's why we check + for "not hasattr(sys, 'gettotalrefcount')" (the 2.7 compatible equivalent + of 'd' not in sys.abiflags). (http://bugs.python.org/issue28401) + + On Windows, with CPython <= 3.4, it's better not to use py_limited_api + because virtualenv *still* doesn't copy PYTHON3.DLL on these versions. + Recently (2020) we started shipping only >= 3.5 wheels, though. So + we'll give it another try and set py_limited_api on Windows >= 3.5. + """ + from cffi._shimmed_dist_utils import log + from cffi import recompiler + + if ('py_limited_api' not in kwds and not hasattr(sys, 'gettotalrefcount') + and recompiler.USE_LIMITED_API): + import setuptools + try: + setuptools_major_version = int(setuptools.__version__.partition('.')[0]) + if setuptools_major_version >= 26: + kwds['py_limited_api'] = True + except ValueError: # certain development versions of setuptools + # If we don't know the version number of setuptools, we + # try to set 'py_limited_api' anyway. At worst, we get a + # warning. + kwds['py_limited_api'] = True + + if sysconfig.get_config_var("Py_GIL_DISABLED"): + if kwds.get('py_limited_api'): + log.info("Ignoring py_limited_api=True for free-threaded build.") + + kwds['py_limited_api'] = False + + if kwds.get('py_limited_api') is False: + # avoid setting Py_LIMITED_API if py_limited_api=False + # which _cffi_include.h does unless _CFFI_NO_LIMITED_API is defined + kwds.setdefault("define_macros", []).append(("_CFFI_NO_LIMITED_API", None)) + return kwds + +def _add_c_module(dist, ffi, module_name, source, source_extension, kwds): + # We are a setuptools extension. Need this build_ext for py_limited_api. + from setuptools.command.build_ext import build_ext + from cffi._shimmed_dist_utils import Extension, log, mkpath + from cffi import recompiler + + allsources = ['$PLACEHOLDER'] + allsources.extend(kwds.pop('sources', [])) + kwds = _set_py_limited_api(Extension, kwds) + ext = Extension(name=module_name, sources=allsources, **kwds) + + def make_mod(tmpdir, pre_run=None): + c_file = os.path.join(tmpdir, module_name + source_extension) + log.info("generating cffi module %r" % c_file) + mkpath(tmpdir) + # a setuptools-only, API-only hook: called with the "ext" and "ffi" + # arguments just before we turn the ffi into C code. To use it, + # subclass the 'distutils.command.build_ext.build_ext' class and + # add a method 'def pre_run(self, ext, ffi)'. + if pre_run is not None: + pre_run(ext, ffi) + updated = recompiler.make_c_source(ffi, module_name, source, c_file) + if not updated: + log.info("already up-to-date") + return c_file + + if dist.ext_modules is None: + dist.ext_modules = [] + dist.ext_modules.append(ext) + + base_class = dist.cmdclass.get('build_ext', build_ext) + class build_ext_make_mod(base_class): + def run(self): + if ext.sources[0] == '$PLACEHOLDER': + pre_run = getattr(self, 'pre_run', None) + ext.sources[0] = make_mod(self.build_temp, pre_run) + base_class.run(self) + dist.cmdclass['build_ext'] = build_ext_make_mod + # NB. multiple runs here will create multiple 'build_ext_make_mod' + # classes. Even in this case the 'build_ext' command should be + # run once; but just in case, the logic above does nothing if + # called again. + + +def _add_py_module(dist, ffi, module_name): + from setuptools.command.build_py import build_py + from setuptools.command.build_ext import build_ext + from cffi._shimmed_dist_utils import log, mkpath + from cffi import recompiler + + def generate_mod(py_file): + log.info("generating cffi module %r" % py_file) + mkpath(os.path.dirname(py_file)) + updated = recompiler.make_py_source(ffi, module_name, py_file) + if not updated: + log.info("already up-to-date") + + base_class = dist.cmdclass.get('build_py', build_py) + class build_py_make_mod(base_class): + def run(self): + base_class.run(self) + module_path = module_name.split('.') + module_path[-1] += '.py' + generate_mod(os.path.join(self.build_lib, *module_path)) + def get_source_files(self): + # This is called from 'setup.py sdist' only. Exclude + # the generate .py module in this case. + saved_py_modules = self.py_modules + try: + if saved_py_modules: + self.py_modules = [m for m in saved_py_modules + if m != module_name] + return base_class.get_source_files(self) + finally: + self.py_modules = saved_py_modules + dist.cmdclass['build_py'] = build_py_make_mod + + # distutils and setuptools have no notion I could find of a + # generated python module. If we don't add module_name to + # dist.py_modules, then things mostly work but there are some + # combination of options (--root and --record) that will miss + # the module. So we add it here, which gives a few apparently + # harmless warnings about not finding the file outside the + # build directory. + # Then we need to hack more in get_source_files(); see above. + if dist.py_modules is None: + dist.py_modules = [] + dist.py_modules.append(module_name) + + # the following is only for "build_ext -i" + base_class_2 = dist.cmdclass.get('build_ext', build_ext) + class build_ext_make_mod(base_class_2): + def run(self): + base_class_2.run(self) + if self.inplace: + # from get_ext_fullpath() in distutils/command/build_ext.py + module_path = module_name.split('.') + package = '.'.join(module_path[:-1]) + build_py = self.get_finalized_command('build_py') + package_dir = build_py.get_package_dir(package) + file_name = module_path[-1] + '.py' + generate_mod(os.path.join(package_dir, file_name)) + dist.cmdclass['build_ext'] = build_ext_make_mod + +def cffi_modules(dist, attr, value): + assert attr == 'cffi_modules' + if isinstance(value, basestring): + value = [value] + + for cffi_module in value: + add_cffi_module(dist, cffi_module) diff --git a/venv/lib/python3.9/site-packages/cffi/vengine_cpy.py b/venv/lib/python3.9/site-packages/cffi/vengine_cpy.py new file mode 100644 index 0000000..02e6a47 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/vengine_cpy.py @@ -0,0 +1,1087 @@ +# +# DEPRECATED: implementation for ffi.verify() +# +import sys +from . import model +from .error import VerificationError +from . import _imp_emulation as imp + + +class VCPythonEngine(object): + _class_key = 'x' + _gen_python_module = True + + def __init__(self, verifier): + self.verifier = verifier + self.ffi = verifier.ffi + self._struct_pending_verification = {} + self._types_of_builtin_functions = {} + + def patch_extension_kwds(self, kwds): + pass + + def find_module(self, module_name, path, so_suffixes): + try: + f, filename, descr = imp.find_module(module_name, path) + except ImportError: + return None + if f is not None: + f.close() + # Note that after a setuptools installation, there are both .py + # and .so files with the same basename. The code here relies on + # imp.find_module() locating the .so in priority. + if descr[0] not in so_suffixes: + return None + return filename + + def collect_types(self): + self._typesdict = {} + self._generate("collecttype") + + def _prnt(self, what=''): + self._f.write(what + '\n') + + def _gettypenum(self, type): + # a KeyError here is a bug. please report it! :-) + return self._typesdict[type] + + def _do_collect_type(self, tp): + if ((not isinstance(tp, model.PrimitiveType) + or tp.name == 'long double') + and tp not in self._typesdict): + num = len(self._typesdict) + self._typesdict[tp] = num + + def write_source_to_f(self): + self.collect_types() + # + # The new module will have a _cffi_setup() function that receives + # objects from the ffi world, and that calls some setup code in + # the module. This setup code is split in several independent + # functions, e.g. one per constant. The functions are "chained" + # by ending in a tail call to each other. + # + # This is further split in two chained lists, depending on if we + # can do it at import-time or if we must wait for _cffi_setup() to + # provide us with the objects. This is needed because we + # need the values of the enum constants in order to build the + # that we may have to pass to _cffi_setup(). + # + # The following two 'chained_list_constants' items contains + # the head of these two chained lists, as a string that gives the + # call to do, if any. + self._chained_list_constants = ['((void)lib,0)', '((void)lib,0)'] + # + prnt = self._prnt + # first paste some standard set of lines that are mostly '#define' + prnt(cffimod_header) + prnt() + # then paste the C source given by the user, verbatim. + prnt(self.verifier.preamble) + prnt() + # + # call generate_cpy_xxx_decl(), for every xxx found from + # ffi._parser._declarations. This generates all the functions. + self._generate("decl") + # + # implement the function _cffi_setup_custom() as calling the + # head of the chained list. + self._generate_setup_custom() + prnt() + # + # produce the method table, including the entries for the + # generated Python->C function wrappers, which are done + # by generate_cpy_function_method(). + prnt('static PyMethodDef _cffi_methods[] = {') + self._generate("method") + prnt(' {"_cffi_setup", _cffi_setup, METH_VARARGS, NULL},') + prnt(' {NULL, NULL, 0, NULL} /* Sentinel */') + prnt('};') + prnt() + # + # standard init. + modname = self.verifier.get_module_name() + constants = self._chained_list_constants[False] + prnt('#if PY_MAJOR_VERSION >= 3') + prnt() + prnt('static struct PyModuleDef _cffi_module_def = {') + prnt(' PyModuleDef_HEAD_INIT,') + prnt(' "%s",' % modname) + prnt(' NULL,') + prnt(' -1,') + prnt(' _cffi_methods,') + prnt(' NULL, NULL, NULL, NULL') + prnt('};') + prnt() + prnt('PyMODINIT_FUNC') + prnt('PyInit_%s(void)' % modname) + prnt('{') + prnt(' PyObject *lib;') + prnt(' lib = PyModule_Create(&_cffi_module_def);') + prnt(' if (lib == NULL)') + prnt(' return NULL;') + prnt(' if (%s < 0 || _cffi_init() < 0) {' % (constants,)) + prnt(' Py_DECREF(lib);') + prnt(' return NULL;') + prnt(' }') + prnt('#if Py_GIL_DISABLED') + prnt(' PyUnstable_Module_SetGIL(lib, Py_MOD_GIL_NOT_USED);') + prnt('#endif') + prnt(' return lib;') + prnt('}') + prnt() + prnt('#else') + prnt() + prnt('PyMODINIT_FUNC') + prnt('init%s(void)' % modname) + prnt('{') + prnt(' PyObject *lib;') + prnt(' lib = Py_InitModule("%s", _cffi_methods);' % modname) + prnt(' if (lib == NULL)') + prnt(' return;') + prnt(' if (%s < 0 || _cffi_init() < 0)' % (constants,)) + prnt(' return;') + prnt(' return;') + prnt('}') + prnt() + prnt('#endif') + + def load_library(self, flags=None): + # XXX review all usages of 'self' here! + # import it as a new extension module + imp.acquire_lock() + try: + if hasattr(sys, "getdlopenflags"): + previous_flags = sys.getdlopenflags() + try: + if hasattr(sys, "setdlopenflags") and flags is not None: + sys.setdlopenflags(flags) + module = imp.load_dynamic(self.verifier.get_module_name(), + self.verifier.modulefilename) + except ImportError as e: + error = "importing %r: %s" % (self.verifier.modulefilename, e) + raise VerificationError(error) + finally: + if hasattr(sys, "setdlopenflags"): + sys.setdlopenflags(previous_flags) + finally: + imp.release_lock() + # + # call loading_cpy_struct() to get the struct layout inferred by + # the C compiler + self._load(module, 'loading') + # + # the C code will need the objects. Collect them in + # order in a list. + revmapping = dict([(value, key) + for (key, value) in self._typesdict.items()]) + lst = [revmapping[i] for i in range(len(revmapping))] + lst = list(map(self.ffi._get_cached_btype, lst)) + # + # build the FFILibrary class and instance and call _cffi_setup(). + # this will set up some fields like '_cffi_types', and only then + # it will invoke the chained list of functions that will really + # build (notably) the constant objects, as if they are + # pointers, and store them as attributes on the 'library' object. + class FFILibrary(object): + _cffi_python_module = module + _cffi_ffi = self.ffi + _cffi_dir = [] + def __dir__(self): + return FFILibrary._cffi_dir + list(self.__dict__) + library = FFILibrary() + if module._cffi_setup(lst, VerificationError, library): + import warnings + warnings.warn("reimporting %r might overwrite older definitions" + % (self.verifier.get_module_name())) + # + # finally, call the loaded_cpy_xxx() functions. This will perform + # the final adjustments, like copying the Python->C wrapper + # functions from the module to the 'library' object, and setting + # up the FFILibrary class with properties for the global C variables. + self._load(module, 'loaded', library=library) + module._cffi_original_ffi = self.ffi + module._cffi_types_of_builtin_funcs = self._types_of_builtin_functions + return library + + def _get_declarations(self): + lst = [(key, tp) for (key, (tp, qual)) in + self.ffi._parser._declarations.items()] + lst.sort() + return lst + + def _generate(self, step_name): + for name, tp in self._get_declarations(): + kind, realname = name.split(' ', 1) + try: + method = getattr(self, '_generate_cpy_%s_%s' % (kind, + step_name)) + except AttributeError: + raise VerificationError( + "not implemented in verify(): %r" % name) + try: + method(tp, realname) + except Exception as e: + model.attach_exception_info(e, name) + raise + + def _load(self, module, step_name, **kwds): + for name, tp in self._get_declarations(): + kind, realname = name.split(' ', 1) + method = getattr(self, '_%s_cpy_%s' % (step_name, kind)) + try: + method(tp, realname, module, **kwds) + except Exception as e: + model.attach_exception_info(e, name) + raise + + def _generate_nothing(self, tp, name): + pass + + def _loaded_noop(self, tp, name, module, **kwds): + pass + + # ---------- + + def _convert_funcarg_to_c(self, tp, fromvar, tovar, errcode): + extraarg = '' + if isinstance(tp, model.PrimitiveType): + if tp.is_integer_type() and tp.name != '_Bool': + converter = '_cffi_to_c_int' + extraarg = ', %s' % tp.name + elif tp.is_complex_type(): + raise VerificationError( + "not implemented in verify(): complex types") + else: + converter = '(%s)_cffi_to_c_%s' % (tp.get_c_name(''), + tp.name.replace(' ', '_')) + errvalue = '-1' + # + elif isinstance(tp, model.PointerType): + self._convert_funcarg_to_c_ptr_or_array(tp, fromvar, + tovar, errcode) + return + # + elif isinstance(tp, (model.StructOrUnion, model.EnumType)): + # a struct (not a struct pointer) as a function argument + self._prnt(' if (_cffi_to_c((char *)&%s, _cffi_type(%d), %s) < 0)' + % (tovar, self._gettypenum(tp), fromvar)) + self._prnt(' %s;' % errcode) + return + # + elif isinstance(tp, model.FunctionPtrType): + converter = '(%s)_cffi_to_c_pointer' % tp.get_c_name('') + extraarg = ', _cffi_type(%d)' % self._gettypenum(tp) + errvalue = 'NULL' + # + else: + raise NotImplementedError(tp) + # + self._prnt(' %s = %s(%s%s);' % (tovar, converter, fromvar, extraarg)) + self._prnt(' if (%s == (%s)%s && PyErr_Occurred())' % ( + tovar, tp.get_c_name(''), errvalue)) + self._prnt(' %s;' % errcode) + + def _extra_local_variables(self, tp, localvars, freelines): + if isinstance(tp, model.PointerType): + localvars.add('Py_ssize_t datasize') + localvars.add('struct _cffi_freeme_s *large_args_free = NULL') + freelines.add('if (large_args_free != NULL)' + ' _cffi_free_array_arguments(large_args_free);') + + def _convert_funcarg_to_c_ptr_or_array(self, tp, fromvar, tovar, errcode): + self._prnt(' datasize = _cffi_prepare_pointer_call_argument(') + self._prnt(' _cffi_type(%d), %s, (char **)&%s);' % ( + self._gettypenum(tp), fromvar, tovar)) + self._prnt(' if (datasize != 0) {') + self._prnt(' %s = ((size_t)datasize) <= 640 ? ' + 'alloca((size_t)datasize) : NULL;' % (tovar,)) + self._prnt(' if (_cffi_convert_array_argument(_cffi_type(%d), %s, ' + '(char **)&%s,' % (self._gettypenum(tp), fromvar, tovar)) + self._prnt(' datasize, &large_args_free) < 0)') + self._prnt(' %s;' % errcode) + self._prnt(' }') + + def _convert_expr_from_c(self, tp, var, context): + if isinstance(tp, model.PrimitiveType): + if tp.is_integer_type() and tp.name != '_Bool': + return '_cffi_from_c_int(%s, %s)' % (var, tp.name) + elif tp.name != 'long double': + return '_cffi_from_c_%s(%s)' % (tp.name.replace(' ', '_'), var) + else: + return '_cffi_from_c_deref((char *)&%s, _cffi_type(%d))' % ( + var, self._gettypenum(tp)) + elif isinstance(tp, (model.PointerType, model.FunctionPtrType)): + return '_cffi_from_c_pointer((char *)%s, _cffi_type(%d))' % ( + var, self._gettypenum(tp)) + elif isinstance(tp, model.ArrayType): + return '_cffi_from_c_pointer((char *)%s, _cffi_type(%d))' % ( + var, self._gettypenum(model.PointerType(tp.item))) + elif isinstance(tp, model.StructOrUnion): + if tp.fldnames is None: + raise TypeError("'%s' is used as %s, but is opaque" % ( + tp._get_c_name(), context)) + return '_cffi_from_c_struct((char *)&%s, _cffi_type(%d))' % ( + var, self._gettypenum(tp)) + elif isinstance(tp, model.EnumType): + return '_cffi_from_c_deref((char *)&%s, _cffi_type(%d))' % ( + var, self._gettypenum(tp)) + else: + raise NotImplementedError(tp) + + # ---------- + # typedefs: generates no code so far + + _generate_cpy_typedef_collecttype = _generate_nothing + _generate_cpy_typedef_decl = _generate_nothing + _generate_cpy_typedef_method = _generate_nothing + _loading_cpy_typedef = _loaded_noop + _loaded_cpy_typedef = _loaded_noop + + # ---------- + # function declarations + + def _generate_cpy_function_collecttype(self, tp, name): + assert isinstance(tp, model.FunctionPtrType) + if tp.ellipsis: + self._do_collect_type(tp) + else: + # don't call _do_collect_type(tp) in this common case, + # otherwise test_autofilled_struct_as_argument fails + for type in tp.args: + self._do_collect_type(type) + self._do_collect_type(tp.result) + + def _generate_cpy_function_decl(self, tp, name): + assert isinstance(tp, model.FunctionPtrType) + if tp.ellipsis: + # cannot support vararg functions better than this: check for its + # exact type (including the fixed arguments), and build it as a + # constant function pointer (no CPython wrapper) + self._generate_cpy_const(False, name, tp) + return + prnt = self._prnt + numargs = len(tp.args) + if numargs == 0: + argname = 'noarg' + elif numargs == 1: + argname = 'arg0' + else: + argname = 'args' + prnt('static PyObject *') + prnt('_cffi_f_%s(PyObject *self, PyObject *%s)' % (name, argname)) + prnt('{') + # + context = 'argument of %s' % name + for i, type in enumerate(tp.args): + prnt(' %s;' % type.get_c_name(' x%d' % i, context)) + # + localvars = set() + freelines = set() + for type in tp.args: + self._extra_local_variables(type, localvars, freelines) + for decl in sorted(localvars): + prnt(' %s;' % (decl,)) + # + if not isinstance(tp.result, model.VoidType): + result_code = 'result = ' + context = 'result of %s' % name + prnt(' %s;' % tp.result.get_c_name(' result', context)) + prnt(' PyObject *pyresult;') + else: + result_code = '' + # + if len(tp.args) > 1: + rng = range(len(tp.args)) + for i in rng: + prnt(' PyObject *arg%d;' % i) + prnt() + prnt(' if (!PyArg_ParseTuple(args, "%s:%s", %s))' % ( + 'O' * numargs, name, ', '.join(['&arg%d' % i for i in rng]))) + prnt(' return NULL;') + prnt() + # + for i, type in enumerate(tp.args): + self._convert_funcarg_to_c(type, 'arg%d' % i, 'x%d' % i, + 'return NULL') + prnt() + # + prnt(' Py_BEGIN_ALLOW_THREADS') + prnt(' _cffi_restore_errno();') + prnt(' { %s%s(%s); }' % ( + result_code, name, + ', '.join(['x%d' % i for i in range(len(tp.args))]))) + prnt(' _cffi_save_errno();') + prnt(' Py_END_ALLOW_THREADS') + prnt() + # + prnt(' (void)self; /* unused */') + if numargs == 0: + prnt(' (void)noarg; /* unused */') + if result_code: + prnt(' pyresult = %s;' % + self._convert_expr_from_c(tp.result, 'result', 'result type')) + for freeline in freelines: + prnt(' ' + freeline) + prnt(' return pyresult;') + else: + for freeline in freelines: + prnt(' ' + freeline) + prnt(' Py_INCREF(Py_None);') + prnt(' return Py_None;') + prnt('}') + prnt() + + def _generate_cpy_function_method(self, tp, name): + if tp.ellipsis: + return + numargs = len(tp.args) + if numargs == 0: + meth = 'METH_NOARGS' + elif numargs == 1: + meth = 'METH_O' + else: + meth = 'METH_VARARGS' + self._prnt(' {"%s", _cffi_f_%s, %s, NULL},' % (name, name, meth)) + + _loading_cpy_function = _loaded_noop + + def _loaded_cpy_function(self, tp, name, module, library): + if tp.ellipsis: + return + func = getattr(module, name) + setattr(library, name, func) + self._types_of_builtin_functions[func] = tp + + # ---------- + # named structs + + _generate_cpy_struct_collecttype = _generate_nothing + def _generate_cpy_struct_decl(self, tp, name): + assert name == tp.name + self._generate_struct_or_union_decl(tp, 'struct', name) + def _generate_cpy_struct_method(self, tp, name): + self._generate_struct_or_union_method(tp, 'struct', name) + def _loading_cpy_struct(self, tp, name, module): + self._loading_struct_or_union(tp, 'struct', name, module) + def _loaded_cpy_struct(self, tp, name, module, **kwds): + self._loaded_struct_or_union(tp) + + _generate_cpy_union_collecttype = _generate_nothing + def _generate_cpy_union_decl(self, tp, name): + assert name == tp.name + self._generate_struct_or_union_decl(tp, 'union', name) + def _generate_cpy_union_method(self, tp, name): + self._generate_struct_or_union_method(tp, 'union', name) + def _loading_cpy_union(self, tp, name, module): + self._loading_struct_or_union(tp, 'union', name, module) + def _loaded_cpy_union(self, tp, name, module, **kwds): + self._loaded_struct_or_union(tp) + + def _generate_struct_or_union_decl(self, tp, prefix, name): + if tp.fldnames is None: + return # nothing to do with opaque structs + checkfuncname = '_cffi_check_%s_%s' % (prefix, name) + layoutfuncname = '_cffi_layout_%s_%s' % (prefix, name) + cname = ('%s %s' % (prefix, name)).strip() + # + prnt = self._prnt + prnt('static void %s(%s *p)' % (checkfuncname, cname)) + prnt('{') + prnt(' /* only to generate compile-time warnings or errors */') + prnt(' (void)p;') + for fname, ftype, fbitsize, fqual in tp.enumfields(): + if (isinstance(ftype, model.PrimitiveType) + and ftype.is_integer_type()) or fbitsize >= 0: + # accept all integers, but complain on float or double + prnt(' (void)((p->%s) << 1);' % fname) + else: + # only accept exactly the type declared. + try: + prnt(' { %s = &p->%s; (void)tmp; }' % ( + ftype.get_c_name('*tmp', 'field %r'%fname, quals=fqual), + fname)) + except VerificationError as e: + prnt(' /* %s */' % str(e)) # cannot verify it, ignore + prnt('}') + prnt('static PyObject *') + prnt('%s(PyObject *self, PyObject *noarg)' % (layoutfuncname,)) + prnt('{') + prnt(' struct _cffi_aligncheck { char x; %s y; };' % cname) + prnt(' static Py_ssize_t nums[] = {') + prnt(' sizeof(%s),' % cname) + prnt(' offsetof(struct _cffi_aligncheck, y),') + for fname, ftype, fbitsize, fqual in tp.enumfields(): + if fbitsize >= 0: + continue # xxx ignore fbitsize for now + prnt(' offsetof(%s, %s),' % (cname, fname)) + if isinstance(ftype, model.ArrayType) and ftype.length is None: + prnt(' 0, /* %s */' % ftype._get_c_name()) + else: + prnt(' sizeof(((%s *)0)->%s),' % (cname, fname)) + prnt(' -1') + prnt(' };') + prnt(' (void)self; /* unused */') + prnt(' (void)noarg; /* unused */') + prnt(' return _cffi_get_struct_layout(nums);') + prnt(' /* the next line is not executed, but compiled */') + prnt(' %s(0);' % (checkfuncname,)) + prnt('}') + prnt() + + def _generate_struct_or_union_method(self, tp, prefix, name): + if tp.fldnames is None: + return # nothing to do with opaque structs + layoutfuncname = '_cffi_layout_%s_%s' % (prefix, name) + self._prnt(' {"%s", %s, METH_NOARGS, NULL},' % (layoutfuncname, + layoutfuncname)) + + def _loading_struct_or_union(self, tp, prefix, name, module): + if tp.fldnames is None: + return # nothing to do with opaque structs + layoutfuncname = '_cffi_layout_%s_%s' % (prefix, name) + # + function = getattr(module, layoutfuncname) + layout = function() + if isinstance(tp, model.StructOrUnion) and tp.partial: + # use the function()'s sizes and offsets to guide the + # layout of the struct + totalsize = layout[0] + totalalignment = layout[1] + fieldofs = layout[2::2] + fieldsize = layout[3::2] + tp.force_flatten() + assert len(fieldofs) == len(fieldsize) == len(tp.fldnames) + tp.fixedlayout = fieldofs, fieldsize, totalsize, totalalignment + else: + cname = ('%s %s' % (prefix, name)).strip() + self._struct_pending_verification[tp] = layout, cname + + def _loaded_struct_or_union(self, tp): + if tp.fldnames is None: + return # nothing to do with opaque structs + self.ffi._get_cached_btype(tp) # force 'fixedlayout' to be considered + + if tp in self._struct_pending_verification: + # check that the layout sizes and offsets match the real ones + def check(realvalue, expectedvalue, msg): + if realvalue != expectedvalue: + raise VerificationError( + "%s (we have %d, but C compiler says %d)" + % (msg, expectedvalue, realvalue)) + ffi = self.ffi + BStruct = ffi._get_cached_btype(tp) + layout, cname = self._struct_pending_verification.pop(tp) + check(layout[0], ffi.sizeof(BStruct), "wrong total size") + check(layout[1], ffi.alignof(BStruct), "wrong total alignment") + i = 2 + for fname, ftype, fbitsize, fqual in tp.enumfields(): + if fbitsize >= 0: + continue # xxx ignore fbitsize for now + check(layout[i], ffi.offsetof(BStruct, fname), + "wrong offset for field %r" % (fname,)) + if layout[i+1] != 0: + BField = ffi._get_cached_btype(ftype) + check(layout[i+1], ffi.sizeof(BField), + "wrong size for field %r" % (fname,)) + i += 2 + assert i == len(layout) + + # ---------- + # 'anonymous' declarations. These are produced for anonymous structs + # or unions; the 'name' is obtained by a typedef. + + _generate_cpy_anonymous_collecttype = _generate_nothing + + def _generate_cpy_anonymous_decl(self, tp, name): + if isinstance(tp, model.EnumType): + self._generate_cpy_enum_decl(tp, name, '') + else: + self._generate_struct_or_union_decl(tp, '', name) + + def _generate_cpy_anonymous_method(self, tp, name): + if not isinstance(tp, model.EnumType): + self._generate_struct_or_union_method(tp, '', name) + + def _loading_cpy_anonymous(self, tp, name, module): + if isinstance(tp, model.EnumType): + self._loading_cpy_enum(tp, name, module) + else: + self._loading_struct_or_union(tp, '', name, module) + + def _loaded_cpy_anonymous(self, tp, name, module, **kwds): + if isinstance(tp, model.EnumType): + self._loaded_cpy_enum(tp, name, module, **kwds) + else: + self._loaded_struct_or_union(tp) + + # ---------- + # constants, likely declared with '#define' + + def _generate_cpy_const(self, is_int, name, tp=None, category='const', + vartp=None, delayed=True, size_too=False, + check_value=None): + prnt = self._prnt + funcname = '_cffi_%s_%s' % (category, name) + prnt('static int %s(PyObject *lib)' % funcname) + prnt('{') + prnt(' PyObject *o;') + prnt(' int res;') + if not is_int: + prnt(' %s;' % (vartp or tp).get_c_name(' i', name)) + else: + assert category == 'const' + # + if check_value is not None: + self._check_int_constant_value(name, check_value) + # + if not is_int: + if category == 'var': + realexpr = '&' + name + else: + realexpr = name + prnt(' i = (%s);' % (realexpr,)) + prnt(' o = %s;' % (self._convert_expr_from_c(tp, 'i', + 'variable type'),)) + assert delayed + else: + prnt(' o = _cffi_from_c_int_const(%s);' % name) + prnt(' if (o == NULL)') + prnt(' return -1;') + if size_too: + prnt(' {') + prnt(' PyObject *o1 = o;') + prnt(' o = Py_BuildValue("On", o1, (Py_ssize_t)sizeof(%s));' + % (name,)) + prnt(' Py_DECREF(o1);') + prnt(' if (o == NULL)') + prnt(' return -1;') + prnt(' }') + prnt(' res = PyObject_SetAttrString(lib, "%s", o);' % name) + prnt(' Py_DECREF(o);') + prnt(' if (res < 0)') + prnt(' return -1;') + prnt(' return %s;' % self._chained_list_constants[delayed]) + self._chained_list_constants[delayed] = funcname + '(lib)' + prnt('}') + prnt() + + def _generate_cpy_constant_collecttype(self, tp, name): + is_int = isinstance(tp, model.PrimitiveType) and tp.is_integer_type() + if not is_int: + self._do_collect_type(tp) + + def _generate_cpy_constant_decl(self, tp, name): + is_int = isinstance(tp, model.PrimitiveType) and tp.is_integer_type() + self._generate_cpy_const(is_int, name, tp) + + _generate_cpy_constant_method = _generate_nothing + _loading_cpy_constant = _loaded_noop + _loaded_cpy_constant = _loaded_noop + + # ---------- + # enums + + def _check_int_constant_value(self, name, value, err_prefix=''): + prnt = self._prnt + if value <= 0: + prnt(' if ((%s) > 0 || (long)(%s) != %dL) {' % ( + name, name, value)) + else: + prnt(' if ((%s) <= 0 || (unsigned long)(%s) != %dUL) {' % ( + name, name, value)) + prnt(' char buf[64];') + prnt(' if ((%s) <= 0)' % name) + prnt(' snprintf(buf, 63, "%%ld", (long)(%s));' % name) + prnt(' else') + prnt(' snprintf(buf, 63, "%%lu", (unsigned long)(%s));' % + name) + prnt(' PyErr_Format(_cffi_VerificationError,') + prnt(' "%s%s has the real value %s, not %s",') + prnt(' "%s", "%s", buf, "%d");' % ( + err_prefix, name, value)) + prnt(' return -1;') + prnt(' }') + + def _enum_funcname(self, prefix, name): + # "$enum_$1" => "___D_enum____D_1" + name = name.replace('$', '___D_') + return '_cffi_e_%s_%s' % (prefix, name) + + def _generate_cpy_enum_decl(self, tp, name, prefix='enum'): + if tp.partial: + for enumerator in tp.enumerators: + self._generate_cpy_const(True, enumerator, delayed=False) + return + # + funcname = self._enum_funcname(prefix, name) + prnt = self._prnt + prnt('static int %s(PyObject *lib)' % funcname) + prnt('{') + for enumerator, enumvalue in zip(tp.enumerators, tp.enumvalues): + self._check_int_constant_value(enumerator, enumvalue, + "enum %s: " % name) + prnt(' return %s;' % self._chained_list_constants[True]) + self._chained_list_constants[True] = funcname + '(lib)' + prnt('}') + prnt() + + _generate_cpy_enum_collecttype = _generate_nothing + _generate_cpy_enum_method = _generate_nothing + + def _loading_cpy_enum(self, tp, name, module): + if tp.partial: + enumvalues = [getattr(module, enumerator) + for enumerator in tp.enumerators] + tp.enumvalues = tuple(enumvalues) + tp.partial_resolved = True + + def _loaded_cpy_enum(self, tp, name, module, library): + for enumerator, enumvalue in zip(tp.enumerators, tp.enumvalues): + setattr(library, enumerator, enumvalue) + + # ---------- + # macros: for now only for integers + + def _generate_cpy_macro_decl(self, tp, name): + if tp == '...': + check_value = None + else: + check_value = tp # an integer + self._generate_cpy_const(True, name, check_value=check_value) + + _generate_cpy_macro_collecttype = _generate_nothing + _generate_cpy_macro_method = _generate_nothing + _loading_cpy_macro = _loaded_noop + _loaded_cpy_macro = _loaded_noop + + # ---------- + # global variables + + def _generate_cpy_variable_collecttype(self, tp, name): + if isinstance(tp, model.ArrayType): + tp_ptr = model.PointerType(tp.item) + else: + tp_ptr = model.PointerType(tp) + self._do_collect_type(tp_ptr) + + def _generate_cpy_variable_decl(self, tp, name): + if isinstance(tp, model.ArrayType): + tp_ptr = model.PointerType(tp.item) + self._generate_cpy_const(False, name, tp, vartp=tp_ptr, + size_too = tp.length_is_unknown()) + else: + tp_ptr = model.PointerType(tp) + self._generate_cpy_const(False, name, tp_ptr, category='var') + + _generate_cpy_variable_method = _generate_nothing + _loading_cpy_variable = _loaded_noop + + def _loaded_cpy_variable(self, tp, name, module, library): + value = getattr(library, name) + if isinstance(tp, model.ArrayType): # int a[5] is "constant" in the + # sense that "a=..." is forbidden + if tp.length_is_unknown(): + assert isinstance(value, tuple) + (value, size) = value + BItemType = self.ffi._get_cached_btype(tp.item) + length, rest = divmod(size, self.ffi.sizeof(BItemType)) + if rest != 0: + raise VerificationError( + "bad size: %r does not seem to be an array of %s" % + (name, tp.item)) + tp = tp.resolve_length(length) + # 'value' is a which we have to replace with + # a if the N is actually known + if tp.length is not None: + BArray = self.ffi._get_cached_btype(tp) + value = self.ffi.cast(BArray, value) + setattr(library, name, value) + return + # remove ptr= from the library instance, and replace + # it by a property on the class, which reads/writes into ptr[0]. + ptr = value + delattr(library, name) + def getter(library): + return ptr[0] + def setter(library, value): + ptr[0] = value + setattr(type(library), name, property(getter, setter)) + type(library)._cffi_dir.append(name) + + # ---------- + + def _generate_setup_custom(self): + prnt = self._prnt + prnt('static int _cffi_setup_custom(PyObject *lib)') + prnt('{') + prnt(' return %s;' % self._chained_list_constants[True]) + prnt('}') + +cffimod_header = r''' +#include +#include + +/* this block of #ifs should be kept exactly identical between + c/_cffi_backend.c, cffi/vengine_cpy.py, cffi/vengine_gen.py + and cffi/_cffi_include.h */ +#if defined(_MSC_VER) +# include /* for alloca() */ +# if _MSC_VER < 1600 /* MSVC < 2010 */ + typedef __int8 int8_t; + typedef __int16 int16_t; + typedef __int32 int32_t; + typedef __int64 int64_t; + typedef unsigned __int8 uint8_t; + typedef unsigned __int16 uint16_t; + typedef unsigned __int32 uint32_t; + typedef unsigned __int64 uint64_t; + typedef __int8 int_least8_t; + typedef __int16 int_least16_t; + typedef __int32 int_least32_t; + typedef __int64 int_least64_t; + typedef unsigned __int8 uint_least8_t; + typedef unsigned __int16 uint_least16_t; + typedef unsigned __int32 uint_least32_t; + typedef unsigned __int64 uint_least64_t; + typedef __int8 int_fast8_t; + typedef __int16 int_fast16_t; + typedef __int32 int_fast32_t; + typedef __int64 int_fast64_t; + typedef unsigned __int8 uint_fast8_t; + typedef unsigned __int16 uint_fast16_t; + typedef unsigned __int32 uint_fast32_t; + typedef unsigned __int64 uint_fast64_t; + typedef __int64 intmax_t; + typedef unsigned __int64 uintmax_t; +# else +# include +# endif +# if _MSC_VER < 1800 /* MSVC < 2013 */ +# ifndef __cplusplus + typedef unsigned char _Bool; +# endif +# endif +# define _cffi_float_complex_t _Fcomplex /* include for it */ +# define _cffi_double_complex_t _Dcomplex /* include for it */ +#else +# include +# if (defined (__SVR4) && defined (__sun)) || defined(_AIX) || defined(__hpux) +# include +# endif +# define _cffi_float_complex_t float _Complex +# define _cffi_double_complex_t double _Complex +#endif + +#if PY_MAJOR_VERSION < 3 +# undef PyCapsule_CheckExact +# undef PyCapsule_GetPointer +# define PyCapsule_CheckExact(capsule) (PyCObject_Check(capsule)) +# define PyCapsule_GetPointer(capsule, name) \ + (PyCObject_AsVoidPtr(capsule)) +#endif + +#if PY_MAJOR_VERSION >= 3 +# define PyInt_FromLong PyLong_FromLong +#endif + +#define _cffi_from_c_double PyFloat_FromDouble +#define _cffi_from_c_float PyFloat_FromDouble +#define _cffi_from_c_long PyInt_FromLong +#define _cffi_from_c_ulong PyLong_FromUnsignedLong +#define _cffi_from_c_longlong PyLong_FromLongLong +#define _cffi_from_c_ulonglong PyLong_FromUnsignedLongLong +#define _cffi_from_c__Bool PyBool_FromLong + +#define _cffi_to_c_double PyFloat_AsDouble +#define _cffi_to_c_float PyFloat_AsDouble + +#define _cffi_from_c_int_const(x) \ + (((x) > 0) ? \ + ((unsigned long long)(x) <= (unsigned long long)LONG_MAX) ? \ + PyInt_FromLong((long)(x)) : \ + PyLong_FromUnsignedLongLong((unsigned long long)(x)) : \ + ((long long)(x) >= (long long)LONG_MIN) ? \ + PyInt_FromLong((long)(x)) : \ + PyLong_FromLongLong((long long)(x))) + +#define _cffi_from_c_int(x, type) \ + (((type)-1) > 0 ? /* unsigned */ \ + (sizeof(type) < sizeof(long) ? \ + PyInt_FromLong((long)x) : \ + sizeof(type) == sizeof(long) ? \ + PyLong_FromUnsignedLong((unsigned long)x) : \ + PyLong_FromUnsignedLongLong((unsigned long long)x)) : \ + (sizeof(type) <= sizeof(long) ? \ + PyInt_FromLong((long)x) : \ + PyLong_FromLongLong((long long)x))) + +#define _cffi_to_c_int(o, type) \ + ((type)( \ + sizeof(type) == 1 ? (((type)-1) > 0 ? (type)_cffi_to_c_u8(o) \ + : (type)_cffi_to_c_i8(o)) : \ + sizeof(type) == 2 ? (((type)-1) > 0 ? (type)_cffi_to_c_u16(o) \ + : (type)_cffi_to_c_i16(o)) : \ + sizeof(type) == 4 ? (((type)-1) > 0 ? (type)_cffi_to_c_u32(o) \ + : (type)_cffi_to_c_i32(o)) : \ + sizeof(type) == 8 ? (((type)-1) > 0 ? (type)_cffi_to_c_u64(o) \ + : (type)_cffi_to_c_i64(o)) : \ + (Py_FatalError("unsupported size for type " #type), (type)0))) + +#define _cffi_to_c_i8 \ + ((int(*)(PyObject *))_cffi_exports[1]) +#define _cffi_to_c_u8 \ + ((int(*)(PyObject *))_cffi_exports[2]) +#define _cffi_to_c_i16 \ + ((int(*)(PyObject *))_cffi_exports[3]) +#define _cffi_to_c_u16 \ + ((int(*)(PyObject *))_cffi_exports[4]) +#define _cffi_to_c_i32 \ + ((int(*)(PyObject *))_cffi_exports[5]) +#define _cffi_to_c_u32 \ + ((unsigned int(*)(PyObject *))_cffi_exports[6]) +#define _cffi_to_c_i64 \ + ((long long(*)(PyObject *))_cffi_exports[7]) +#define _cffi_to_c_u64 \ + ((unsigned long long(*)(PyObject *))_cffi_exports[8]) +#define _cffi_to_c_char \ + ((int(*)(PyObject *))_cffi_exports[9]) +#define _cffi_from_c_pointer \ + ((PyObject *(*)(char *, CTypeDescrObject *))_cffi_exports[10]) +#define _cffi_to_c_pointer \ + ((char *(*)(PyObject *, CTypeDescrObject *))_cffi_exports[11]) +#define _cffi_get_struct_layout \ + ((PyObject *(*)(Py_ssize_t[]))_cffi_exports[12]) +#define _cffi_restore_errno \ + ((void(*)(void))_cffi_exports[13]) +#define _cffi_save_errno \ + ((void(*)(void))_cffi_exports[14]) +#define _cffi_from_c_char \ + ((PyObject *(*)(char))_cffi_exports[15]) +#define _cffi_from_c_deref \ + ((PyObject *(*)(char *, CTypeDescrObject *))_cffi_exports[16]) +#define _cffi_to_c \ + ((int(*)(char *, CTypeDescrObject *, PyObject *))_cffi_exports[17]) +#define _cffi_from_c_struct \ + ((PyObject *(*)(char *, CTypeDescrObject *))_cffi_exports[18]) +#define _cffi_to_c_wchar_t \ + ((wchar_t(*)(PyObject *))_cffi_exports[19]) +#define _cffi_from_c_wchar_t \ + ((PyObject *(*)(wchar_t))_cffi_exports[20]) +#define _cffi_to_c_long_double \ + ((long double(*)(PyObject *))_cffi_exports[21]) +#define _cffi_to_c__Bool \ + ((_Bool(*)(PyObject *))_cffi_exports[22]) +#define _cffi_prepare_pointer_call_argument \ + ((Py_ssize_t(*)(CTypeDescrObject *, PyObject *, char **))_cffi_exports[23]) +#define _cffi_convert_array_from_object \ + ((int(*)(char *, CTypeDescrObject *, PyObject *))_cffi_exports[24]) +#define _CFFI_NUM_EXPORTS 25 + +typedef struct _ctypedescr CTypeDescrObject; + +static void *_cffi_exports[_CFFI_NUM_EXPORTS]; +static PyObject *_cffi_types, *_cffi_VerificationError; + +static int _cffi_setup_custom(PyObject *lib); /* forward */ + +static PyObject *_cffi_setup(PyObject *self, PyObject *args) +{ + PyObject *library; + int was_alive = (_cffi_types != NULL); + (void)self; /* unused */ + if (!PyArg_ParseTuple(args, "OOO", &_cffi_types, &_cffi_VerificationError, + &library)) + return NULL; + Py_INCREF(_cffi_types); + Py_INCREF(_cffi_VerificationError); + if (_cffi_setup_custom(library) < 0) + return NULL; + return PyBool_FromLong(was_alive); +} + +union _cffi_union_alignment_u { + unsigned char m_char; + unsigned short m_short; + unsigned int m_int; + unsigned long m_long; + unsigned long long m_longlong; + float m_float; + double m_double; + long double m_longdouble; +}; + +struct _cffi_freeme_s { + struct _cffi_freeme_s *next; + union _cffi_union_alignment_u alignment; +}; + +#ifdef __GNUC__ + __attribute__((unused)) +#endif +static int _cffi_convert_array_argument(CTypeDescrObject *ctptr, PyObject *arg, + char **output_data, Py_ssize_t datasize, + struct _cffi_freeme_s **freeme) +{ + char *p; + if (datasize < 0) + return -1; + + p = *output_data; + if (p == NULL) { + struct _cffi_freeme_s *fp = (struct _cffi_freeme_s *)PyObject_Malloc( + offsetof(struct _cffi_freeme_s, alignment) + (size_t)datasize); + if (fp == NULL) + return -1; + fp->next = *freeme; + *freeme = fp; + p = *output_data = (char *)&fp->alignment; + } + memset((void *)p, 0, (size_t)datasize); + return _cffi_convert_array_from_object(p, ctptr, arg); +} + +#ifdef __GNUC__ + __attribute__((unused)) +#endif +static void _cffi_free_array_arguments(struct _cffi_freeme_s *freeme) +{ + do { + void *p = (void *)freeme; + freeme = freeme->next; + PyObject_Free(p); + } while (freeme != NULL); +} + +static int _cffi_init(void) +{ + PyObject *module, *c_api_object = NULL; + + module = PyImport_ImportModule("_cffi_backend"); + if (module == NULL) + goto failure; + + c_api_object = PyObject_GetAttrString(module, "_C_API"); + if (c_api_object == NULL) + goto failure; + if (!PyCapsule_CheckExact(c_api_object)) { + PyErr_SetNone(PyExc_ImportError); + goto failure; + } + memcpy(_cffi_exports, PyCapsule_GetPointer(c_api_object, "cffi"), + _CFFI_NUM_EXPORTS * sizeof(void *)); + + Py_DECREF(module); + Py_DECREF(c_api_object); + return 0; + + failure: + Py_XDECREF(module); + Py_XDECREF(c_api_object); + return -1; +} + +#define _cffi_type(num) ((CTypeDescrObject *)PyList_GET_ITEM(_cffi_types, num)) + +/**********/ +''' diff --git a/venv/lib/python3.9/site-packages/cffi/vengine_gen.py b/venv/lib/python3.9/site-packages/cffi/vengine_gen.py new file mode 100644 index 0000000..bffc821 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/vengine_gen.py @@ -0,0 +1,679 @@ +# +# DEPRECATED: implementation for ffi.verify() +# +import sys, os +import types + +from . import model +from .error import VerificationError + + +class VGenericEngine(object): + _class_key = 'g' + _gen_python_module = False + + def __init__(self, verifier): + self.verifier = verifier + self.ffi = verifier.ffi + self.export_symbols = [] + self._struct_pending_verification = {} + + def patch_extension_kwds(self, kwds): + # add 'export_symbols' to the dictionary. Note that we add the + # list before filling it. When we fill it, it will thus also show + # up in kwds['export_symbols']. + kwds.setdefault('export_symbols', self.export_symbols) + + def find_module(self, module_name, path, so_suffixes): + for so_suffix in so_suffixes: + basename = module_name + so_suffix + if path is None: + path = sys.path + for dirname in path: + filename = os.path.join(dirname, basename) + if os.path.isfile(filename): + return filename + + def collect_types(self): + pass # not needed in the generic engine + + def _prnt(self, what=''): + self._f.write(what + '\n') + + def write_source_to_f(self): + prnt = self._prnt + # first paste some standard set of lines that are mostly '#include' + prnt(cffimod_header) + # then paste the C source given by the user, verbatim. + prnt(self.verifier.preamble) + # + # call generate_gen_xxx_decl(), for every xxx found from + # ffi._parser._declarations. This generates all the functions. + self._generate('decl') + # + # on Windows, distutils insists on putting init_cffi_xyz in + # 'export_symbols', so instead of fighting it, just give up and + # give it one + if sys.platform == 'win32': + if sys.version_info >= (3,): + prefix = 'PyInit_' + else: + prefix = 'init' + modname = self.verifier.get_module_name() + prnt("void %s%s(void) { }\n" % (prefix, modname)) + + def load_library(self, flags=0): + # import it with the CFFI backend + backend = self.ffi._backend + # needs to make a path that contains '/', on Posix + filename = os.path.join(os.curdir, self.verifier.modulefilename) + module = backend.load_library(filename, flags) + # + # call loading_gen_struct() to get the struct layout inferred by + # the C compiler + self._load(module, 'loading') + + # build the FFILibrary class and instance, this is a module subclass + # because modules are expected to have usually-constant-attributes and + # in PyPy this means the JIT is able to treat attributes as constant, + # which we want. + class FFILibrary(types.ModuleType): + _cffi_generic_module = module + _cffi_ffi = self.ffi + _cffi_dir = [] + def __dir__(self): + return FFILibrary._cffi_dir + library = FFILibrary("") + # + # finally, call the loaded_gen_xxx() functions. This will set + # up the 'library' object. + self._load(module, 'loaded', library=library) + return library + + def _get_declarations(self): + lst = [(key, tp) for (key, (tp, qual)) in + self.ffi._parser._declarations.items()] + lst.sort() + return lst + + def _generate(self, step_name): + for name, tp in self._get_declarations(): + kind, realname = name.split(' ', 1) + try: + method = getattr(self, '_generate_gen_%s_%s' % (kind, + step_name)) + except AttributeError: + raise VerificationError( + "not implemented in verify(): %r" % name) + try: + method(tp, realname) + except Exception as e: + model.attach_exception_info(e, name) + raise + + def _load(self, module, step_name, **kwds): + for name, tp in self._get_declarations(): + kind, realname = name.split(' ', 1) + method = getattr(self, '_%s_gen_%s' % (step_name, kind)) + try: + method(tp, realname, module, **kwds) + except Exception as e: + model.attach_exception_info(e, name) + raise + + def _generate_nothing(self, tp, name): + pass + + def _loaded_noop(self, tp, name, module, **kwds): + pass + + # ---------- + # typedefs: generates no code so far + + _generate_gen_typedef_decl = _generate_nothing + _loading_gen_typedef = _loaded_noop + _loaded_gen_typedef = _loaded_noop + + # ---------- + # function declarations + + def _generate_gen_function_decl(self, tp, name): + assert isinstance(tp, model.FunctionPtrType) + if tp.ellipsis: + # cannot support vararg functions better than this: check for its + # exact type (including the fixed arguments), and build it as a + # constant function pointer (no _cffi_f_%s wrapper) + self._generate_gen_const(False, name, tp) + return + prnt = self._prnt + numargs = len(tp.args) + argnames = [] + for i, type in enumerate(tp.args): + indirection = '' + if isinstance(type, model.StructOrUnion): + indirection = '*' + argnames.append('%sx%d' % (indirection, i)) + context = 'argument of %s' % name + arglist = [type.get_c_name(' %s' % arg, context) + for type, arg in zip(tp.args, argnames)] + tpresult = tp.result + if isinstance(tpresult, model.StructOrUnion): + arglist.insert(0, tpresult.get_c_name(' *r', context)) + tpresult = model.void_type + arglist = ', '.join(arglist) or 'void' + wrappername = '_cffi_f_%s' % name + self.export_symbols.append(wrappername) + if tp.abi: + abi = tp.abi + ' ' + else: + abi = '' + funcdecl = ' %s%s(%s)' % (abi, wrappername, arglist) + context = 'result of %s' % name + prnt(tpresult.get_c_name(funcdecl, context)) + prnt('{') + # + if isinstance(tp.result, model.StructOrUnion): + result_code = '*r = ' + elif not isinstance(tp.result, model.VoidType): + result_code = 'return ' + else: + result_code = '' + prnt(' %s%s(%s);' % (result_code, name, ', '.join(argnames))) + prnt('}') + prnt() + + _loading_gen_function = _loaded_noop + + def _loaded_gen_function(self, tp, name, module, library): + assert isinstance(tp, model.FunctionPtrType) + if tp.ellipsis: + newfunction = self._load_constant(False, tp, name, module) + else: + indirections = [] + base_tp = tp + if (any(isinstance(typ, model.StructOrUnion) for typ in tp.args) + or isinstance(tp.result, model.StructOrUnion)): + indirect_args = [] + for i, typ in enumerate(tp.args): + if isinstance(typ, model.StructOrUnion): + typ = model.PointerType(typ) + indirections.append((i, typ)) + indirect_args.append(typ) + indirect_result = tp.result + if isinstance(indirect_result, model.StructOrUnion): + if indirect_result.fldtypes is None: + raise TypeError("'%s' is used as result type, " + "but is opaque" % ( + indirect_result._get_c_name(),)) + indirect_result = model.PointerType(indirect_result) + indirect_args.insert(0, indirect_result) + indirections.insert(0, ("result", indirect_result)) + indirect_result = model.void_type + tp = model.FunctionPtrType(tuple(indirect_args), + indirect_result, tp.ellipsis) + BFunc = self.ffi._get_cached_btype(tp) + wrappername = '_cffi_f_%s' % name + newfunction = module.load_function(BFunc, wrappername) + for i, typ in indirections: + newfunction = self._make_struct_wrapper(newfunction, i, typ, + base_tp) + setattr(library, name, newfunction) + type(library)._cffi_dir.append(name) + + def _make_struct_wrapper(self, oldfunc, i, tp, base_tp): + backend = self.ffi._backend + BType = self.ffi._get_cached_btype(tp) + if i == "result": + ffi = self.ffi + def newfunc(*args): + res = ffi.new(BType) + oldfunc(res, *args) + return res[0] + else: + def newfunc(*args): + args = args[:i] + (backend.newp(BType, args[i]),) + args[i+1:] + return oldfunc(*args) + newfunc._cffi_base_type = base_tp + return newfunc + + # ---------- + # named structs + + def _generate_gen_struct_decl(self, tp, name): + assert name == tp.name + self._generate_struct_or_union_decl(tp, 'struct', name) + + def _loading_gen_struct(self, tp, name, module): + self._loading_struct_or_union(tp, 'struct', name, module) + + def _loaded_gen_struct(self, tp, name, module, **kwds): + self._loaded_struct_or_union(tp) + + def _generate_gen_union_decl(self, tp, name): + assert name == tp.name + self._generate_struct_or_union_decl(tp, 'union', name) + + def _loading_gen_union(self, tp, name, module): + self._loading_struct_or_union(tp, 'union', name, module) + + def _loaded_gen_union(self, tp, name, module, **kwds): + self._loaded_struct_or_union(tp) + + def _generate_struct_or_union_decl(self, tp, prefix, name): + if tp.fldnames is None: + return # nothing to do with opaque structs + checkfuncname = '_cffi_check_%s_%s' % (prefix, name) + layoutfuncname = '_cffi_layout_%s_%s' % (prefix, name) + cname = ('%s %s' % (prefix, name)).strip() + # + prnt = self._prnt + prnt('static void %s(%s *p)' % (checkfuncname, cname)) + prnt('{') + prnt(' /* only to generate compile-time warnings or errors */') + prnt(' (void)p;') + for fname, ftype, fbitsize, fqual in tp.enumfields(): + if (isinstance(ftype, model.PrimitiveType) + and ftype.is_integer_type()) or fbitsize >= 0: + # accept all integers, but complain on float or double + prnt(' (void)((p->%s) << 1);' % fname) + else: + # only accept exactly the type declared. + try: + prnt(' { %s = &p->%s; (void)tmp; }' % ( + ftype.get_c_name('*tmp', 'field %r'%fname, quals=fqual), + fname)) + except VerificationError as e: + prnt(' /* %s */' % str(e)) # cannot verify it, ignore + prnt('}') + self.export_symbols.append(layoutfuncname) + prnt('intptr_t %s(intptr_t i)' % (layoutfuncname,)) + prnt('{') + prnt(' struct _cffi_aligncheck { char x; %s y; };' % cname) + prnt(' static intptr_t nums[] = {') + prnt(' sizeof(%s),' % cname) + prnt(' offsetof(struct _cffi_aligncheck, y),') + for fname, ftype, fbitsize, fqual in tp.enumfields(): + if fbitsize >= 0: + continue # xxx ignore fbitsize for now + prnt(' offsetof(%s, %s),' % (cname, fname)) + if isinstance(ftype, model.ArrayType) and ftype.length is None: + prnt(' 0, /* %s */' % ftype._get_c_name()) + else: + prnt(' sizeof(((%s *)0)->%s),' % (cname, fname)) + prnt(' -1') + prnt(' };') + prnt(' return nums[i];') + prnt(' /* the next line is not executed, but compiled */') + prnt(' %s(0);' % (checkfuncname,)) + prnt('}') + prnt() + + def _loading_struct_or_union(self, tp, prefix, name, module): + if tp.fldnames is None: + return # nothing to do with opaque structs + layoutfuncname = '_cffi_layout_%s_%s' % (prefix, name) + # + BFunc = self.ffi._typeof_locked("intptr_t(*)(intptr_t)")[0] + function = module.load_function(BFunc, layoutfuncname) + layout = [] + num = 0 + while True: + x = function(num) + if x < 0: break + layout.append(x) + num += 1 + if isinstance(tp, model.StructOrUnion) and tp.partial: + # use the function()'s sizes and offsets to guide the + # layout of the struct + totalsize = layout[0] + totalalignment = layout[1] + fieldofs = layout[2::2] + fieldsize = layout[3::2] + tp.force_flatten() + assert len(fieldofs) == len(fieldsize) == len(tp.fldnames) + tp.fixedlayout = fieldofs, fieldsize, totalsize, totalalignment + else: + cname = ('%s %s' % (prefix, name)).strip() + self._struct_pending_verification[tp] = layout, cname + + def _loaded_struct_or_union(self, tp): + if tp.fldnames is None: + return # nothing to do with opaque structs + self.ffi._get_cached_btype(tp) # force 'fixedlayout' to be considered + + if tp in self._struct_pending_verification: + # check that the layout sizes and offsets match the real ones + def check(realvalue, expectedvalue, msg): + if realvalue != expectedvalue: + raise VerificationError( + "%s (we have %d, but C compiler says %d)" + % (msg, expectedvalue, realvalue)) + ffi = self.ffi + BStruct = ffi._get_cached_btype(tp) + layout, cname = self._struct_pending_verification.pop(tp) + check(layout[0], ffi.sizeof(BStruct), "wrong total size") + check(layout[1], ffi.alignof(BStruct), "wrong total alignment") + i = 2 + for fname, ftype, fbitsize, fqual in tp.enumfields(): + if fbitsize >= 0: + continue # xxx ignore fbitsize for now + check(layout[i], ffi.offsetof(BStruct, fname), + "wrong offset for field %r" % (fname,)) + if layout[i+1] != 0: + BField = ffi._get_cached_btype(ftype) + check(layout[i+1], ffi.sizeof(BField), + "wrong size for field %r" % (fname,)) + i += 2 + assert i == len(layout) + + # ---------- + # 'anonymous' declarations. These are produced for anonymous structs + # or unions; the 'name' is obtained by a typedef. + + def _generate_gen_anonymous_decl(self, tp, name): + if isinstance(tp, model.EnumType): + self._generate_gen_enum_decl(tp, name, '') + else: + self._generate_struct_or_union_decl(tp, '', name) + + def _loading_gen_anonymous(self, tp, name, module): + if isinstance(tp, model.EnumType): + self._loading_gen_enum(tp, name, module, '') + else: + self._loading_struct_or_union(tp, '', name, module) + + def _loaded_gen_anonymous(self, tp, name, module, **kwds): + if isinstance(tp, model.EnumType): + self._loaded_gen_enum(tp, name, module, **kwds) + else: + self._loaded_struct_or_union(tp) + + # ---------- + # constants, likely declared with '#define' + + def _generate_gen_const(self, is_int, name, tp=None, category='const', + check_value=None): + prnt = self._prnt + funcname = '_cffi_%s_%s' % (category, name) + self.export_symbols.append(funcname) + if check_value is not None: + assert is_int + assert category == 'const' + prnt('int %s(char *out_error)' % funcname) + prnt('{') + self._check_int_constant_value(name, check_value) + prnt(' return 0;') + prnt('}') + elif is_int: + assert category == 'const' + prnt('int %s(long long *out_value)' % funcname) + prnt('{') + prnt(' *out_value = (long long)(%s);' % (name,)) + prnt(' return (%s) <= 0;' % (name,)) + prnt('}') + else: + assert tp is not None + assert check_value is None + if category == 'var': + ampersand = '&' + else: + ampersand = '' + extra = '' + if category == 'const' and isinstance(tp, model.StructOrUnion): + extra = 'const *' + ampersand = '&' + prnt(tp.get_c_name(' %s%s(void)' % (extra, funcname), name)) + prnt('{') + prnt(' return (%s%s);' % (ampersand, name)) + prnt('}') + prnt() + + def _generate_gen_constant_decl(self, tp, name): + is_int = isinstance(tp, model.PrimitiveType) and tp.is_integer_type() + self._generate_gen_const(is_int, name, tp) + + _loading_gen_constant = _loaded_noop + + def _load_constant(self, is_int, tp, name, module, check_value=None): + funcname = '_cffi_const_%s' % name + if check_value is not None: + assert is_int + self._load_known_int_constant(module, funcname) + value = check_value + elif is_int: + BType = self.ffi._typeof_locked("long long*")[0] + BFunc = self.ffi._typeof_locked("int(*)(long long*)")[0] + function = module.load_function(BFunc, funcname) + p = self.ffi.new(BType) + negative = function(p) + value = int(p[0]) + if value < 0 and not negative: + BLongLong = self.ffi._typeof_locked("long long")[0] + value += (1 << (8*self.ffi.sizeof(BLongLong))) + else: + assert check_value is None + fntypeextra = '(*)(void)' + if isinstance(tp, model.StructOrUnion): + fntypeextra = '*' + fntypeextra + BFunc = self.ffi._typeof_locked(tp.get_c_name(fntypeextra, name))[0] + function = module.load_function(BFunc, funcname) + value = function() + if isinstance(tp, model.StructOrUnion): + value = value[0] + return value + + def _loaded_gen_constant(self, tp, name, module, library): + is_int = isinstance(tp, model.PrimitiveType) and tp.is_integer_type() + value = self._load_constant(is_int, tp, name, module) + setattr(library, name, value) + type(library)._cffi_dir.append(name) + + # ---------- + # enums + + def _check_int_constant_value(self, name, value): + prnt = self._prnt + if value <= 0: + prnt(' if ((%s) > 0 || (long)(%s) != %dL) {' % ( + name, name, value)) + else: + prnt(' if ((%s) <= 0 || (unsigned long)(%s) != %dUL) {' % ( + name, name, value)) + prnt(' char buf[64];') + prnt(' if ((%s) <= 0)' % name) + prnt(' sprintf(buf, "%%ld", (long)(%s));' % name) + prnt(' else') + prnt(' sprintf(buf, "%%lu", (unsigned long)(%s));' % + name) + prnt(' sprintf(out_error, "%s has the real value %s, not %s",') + prnt(' "%s", buf, "%d");' % (name[:100], value)) + prnt(' return -1;') + prnt(' }') + + def _load_known_int_constant(self, module, funcname): + BType = self.ffi._typeof_locked("char[]")[0] + BFunc = self.ffi._typeof_locked("int(*)(char*)")[0] + function = module.load_function(BFunc, funcname) + p = self.ffi.new(BType, 256) + if function(p) < 0: + error = self.ffi.string(p) + if sys.version_info >= (3,): + error = str(error, 'utf-8') + raise VerificationError(error) + + def _enum_funcname(self, prefix, name): + # "$enum_$1" => "___D_enum____D_1" + name = name.replace('$', '___D_') + return '_cffi_e_%s_%s' % (prefix, name) + + def _generate_gen_enum_decl(self, tp, name, prefix='enum'): + if tp.partial: + for enumerator in tp.enumerators: + self._generate_gen_const(True, enumerator) + return + # + funcname = self._enum_funcname(prefix, name) + self.export_symbols.append(funcname) + prnt = self._prnt + prnt('int %s(char *out_error)' % funcname) + prnt('{') + for enumerator, enumvalue in zip(tp.enumerators, tp.enumvalues): + self._check_int_constant_value(enumerator, enumvalue) + prnt(' return 0;') + prnt('}') + prnt() + + def _loading_gen_enum(self, tp, name, module, prefix='enum'): + if tp.partial: + enumvalues = [self._load_constant(True, tp, enumerator, module) + for enumerator in tp.enumerators] + tp.enumvalues = tuple(enumvalues) + tp.partial_resolved = True + else: + funcname = self._enum_funcname(prefix, name) + self._load_known_int_constant(module, funcname) + + def _loaded_gen_enum(self, tp, name, module, library): + for enumerator, enumvalue in zip(tp.enumerators, tp.enumvalues): + setattr(library, enumerator, enumvalue) + type(library)._cffi_dir.append(enumerator) + + # ---------- + # macros: for now only for integers + + def _generate_gen_macro_decl(self, tp, name): + if tp == '...': + check_value = None + else: + check_value = tp # an integer + self._generate_gen_const(True, name, check_value=check_value) + + _loading_gen_macro = _loaded_noop + + def _loaded_gen_macro(self, tp, name, module, library): + if tp == '...': + check_value = None + else: + check_value = tp # an integer + value = self._load_constant(True, tp, name, module, + check_value=check_value) + setattr(library, name, value) + type(library)._cffi_dir.append(name) + + # ---------- + # global variables + + def _generate_gen_variable_decl(self, tp, name): + if isinstance(tp, model.ArrayType): + if tp.length_is_unknown(): + prnt = self._prnt + funcname = '_cffi_sizeof_%s' % (name,) + self.export_symbols.append(funcname) + prnt("size_t %s(void)" % funcname) + prnt("{") + prnt(" return sizeof(%s);" % (name,)) + prnt("}") + tp_ptr = model.PointerType(tp.item) + self._generate_gen_const(False, name, tp_ptr) + else: + tp_ptr = model.PointerType(tp) + self._generate_gen_const(False, name, tp_ptr, category='var') + + _loading_gen_variable = _loaded_noop + + def _loaded_gen_variable(self, tp, name, module, library): + if isinstance(tp, model.ArrayType): # int a[5] is "constant" in the + # sense that "a=..." is forbidden + if tp.length_is_unknown(): + funcname = '_cffi_sizeof_%s' % (name,) + BFunc = self.ffi._typeof_locked('size_t(*)(void)')[0] + function = module.load_function(BFunc, funcname) + size = function() + BItemType = self.ffi._get_cached_btype(tp.item) + length, rest = divmod(size, self.ffi.sizeof(BItemType)) + if rest != 0: + raise VerificationError( + "bad size: %r does not seem to be an array of %s" % + (name, tp.item)) + tp = tp.resolve_length(length) + tp_ptr = model.PointerType(tp.item) + value = self._load_constant(False, tp_ptr, name, module) + # 'value' is a which we have to replace with + # a if the N is actually known + if tp.length is not None: + BArray = self.ffi._get_cached_btype(tp) + value = self.ffi.cast(BArray, value) + setattr(library, name, value) + type(library)._cffi_dir.append(name) + return + # remove ptr= from the library instance, and replace + # it by a property on the class, which reads/writes into ptr[0]. + funcname = '_cffi_var_%s' % name + BFunc = self.ffi._typeof_locked(tp.get_c_name('*(*)(void)', name))[0] + function = module.load_function(BFunc, funcname) + ptr = function() + def getter(library): + return ptr[0] + def setter(library, value): + ptr[0] = value + setattr(type(library), name, property(getter, setter)) + type(library)._cffi_dir.append(name) + +cffimod_header = r''' +#include +#include +#include +#include +#include /* XXX for ssize_t on some platforms */ + +/* this block of #ifs should be kept exactly identical between + c/_cffi_backend.c, cffi/vengine_cpy.py, cffi/vengine_gen.py + and cffi/_cffi_include.h */ +#if defined(_MSC_VER) +# include /* for alloca() */ +# if _MSC_VER < 1600 /* MSVC < 2010 */ + typedef __int8 int8_t; + typedef __int16 int16_t; + typedef __int32 int32_t; + typedef __int64 int64_t; + typedef unsigned __int8 uint8_t; + typedef unsigned __int16 uint16_t; + typedef unsigned __int32 uint32_t; + typedef unsigned __int64 uint64_t; + typedef __int8 int_least8_t; + typedef __int16 int_least16_t; + typedef __int32 int_least32_t; + typedef __int64 int_least64_t; + typedef unsigned __int8 uint_least8_t; + typedef unsigned __int16 uint_least16_t; + typedef unsigned __int32 uint_least32_t; + typedef unsigned __int64 uint_least64_t; + typedef __int8 int_fast8_t; + typedef __int16 int_fast16_t; + typedef __int32 int_fast32_t; + typedef __int64 int_fast64_t; + typedef unsigned __int8 uint_fast8_t; + typedef unsigned __int16 uint_fast16_t; + typedef unsigned __int32 uint_fast32_t; + typedef unsigned __int64 uint_fast64_t; + typedef __int64 intmax_t; + typedef unsigned __int64 uintmax_t; +# else +# include +# endif +# if _MSC_VER < 1800 /* MSVC < 2013 */ +# ifndef __cplusplus + typedef unsigned char _Bool; +# endif +# endif +# define _cffi_float_complex_t _Fcomplex /* include for it */ +# define _cffi_double_complex_t _Dcomplex /* include for it */ +#else +# include +# if (defined (__SVR4) && defined (__sun)) || defined(_AIX) || defined(__hpux) +# include +# endif +# define _cffi_float_complex_t float _Complex +# define _cffi_double_complex_t double _Complex +#endif +''' diff --git a/venv/lib/python3.9/site-packages/cffi/verifier.py b/venv/lib/python3.9/site-packages/cffi/verifier.py new file mode 100644 index 0000000..e392a2b --- /dev/null +++ b/venv/lib/python3.9/site-packages/cffi/verifier.py @@ -0,0 +1,306 @@ +# +# DEPRECATED: implementation for ffi.verify() +# +import sys, os, binascii, shutil, io +from . import __version_verifier_modules__ +from . import ffiplatform +from .error import VerificationError + +if sys.version_info >= (3, 3): + import importlib.machinery + def _extension_suffixes(): + return importlib.machinery.EXTENSION_SUFFIXES[:] +else: + import imp + def _extension_suffixes(): + return [suffix for suffix, _, type in imp.get_suffixes() + if type == imp.C_EXTENSION] + + +if sys.version_info >= (3,): + NativeIO = io.StringIO +else: + class NativeIO(io.BytesIO): + def write(self, s): + if isinstance(s, unicode): + s = s.encode('ascii') + super(NativeIO, self).write(s) + + +class Verifier(object): + + def __init__(self, ffi, preamble, tmpdir=None, modulename=None, + ext_package=None, tag='', force_generic_engine=False, + source_extension='.c', flags=None, relative_to=None, **kwds): + if ffi._parser._uses_new_feature: + raise VerificationError( + "feature not supported with ffi.verify(), but only " + "with ffi.set_source(): %s" % (ffi._parser._uses_new_feature,)) + self.ffi = ffi + self.preamble = preamble + if not modulename: + flattened_kwds = ffiplatform.flatten(kwds) + vengine_class = _locate_engine_class(ffi, force_generic_engine) + self._vengine = vengine_class(self) + self._vengine.patch_extension_kwds(kwds) + self.flags = flags + self.kwds = self.make_relative_to(kwds, relative_to) + # + if modulename: + if tag: + raise TypeError("can't specify both 'modulename' and 'tag'") + else: + key = '\x00'.join(['%d.%d' % sys.version_info[:2], + __version_verifier_modules__, + preamble, flattened_kwds] + + ffi._cdefsources) + if sys.version_info >= (3,): + key = key.encode('utf-8') + k1 = hex(binascii.crc32(key[0::2]) & 0xffffffff) + k1 = k1.lstrip('0x').rstrip('L') + k2 = hex(binascii.crc32(key[1::2]) & 0xffffffff) + k2 = k2.lstrip('0').rstrip('L') + modulename = '_cffi_%s_%s%s%s' % (tag, self._vengine._class_key, + k1, k2) + suffix = _get_so_suffixes()[0] + self.tmpdir = tmpdir or _caller_dir_pycache() + self.sourcefilename = os.path.join(self.tmpdir, modulename + source_extension) + self.modulefilename = os.path.join(self.tmpdir, modulename + suffix) + self.ext_package = ext_package + self._has_source = False + self._has_module = False + + def write_source(self, file=None): + """Write the C source code. It is produced in 'self.sourcefilename', + which can be tweaked beforehand.""" + with self.ffi._lock: + if self._has_source and file is None: + raise VerificationError( + "source code already written") + self._write_source(file) + + def compile_module(self): + """Write the C source code (if not done already) and compile it. + This produces a dynamic link library in 'self.modulefilename'.""" + with self.ffi._lock: + if self._has_module: + raise VerificationError("module already compiled") + if not self._has_source: + self._write_source() + self._compile_module() + + def load_library(self): + """Get a C module from this Verifier instance. + Returns an instance of a FFILibrary class that behaves like the + objects returned by ffi.dlopen(), but that delegates all + operations to the C module. If necessary, the C code is written + and compiled first. + """ + with self.ffi._lock: + if not self._has_module: + self._locate_module() + if not self._has_module: + if not self._has_source: + self._write_source() + self._compile_module() + return self._load_library() + + def get_module_name(self): + basename = os.path.basename(self.modulefilename) + # kill both the .so extension and the other .'s, as introduced + # by Python 3: 'basename.cpython-33m.so' + basename = basename.split('.', 1)[0] + # and the _d added in Python 2 debug builds --- but try to be + # conservative and not kill a legitimate _d + if basename.endswith('_d') and hasattr(sys, 'gettotalrefcount'): + basename = basename[:-2] + return basename + + def get_extension(self): + if not self._has_source: + with self.ffi._lock: + if not self._has_source: + self._write_source() + sourcename = ffiplatform.maybe_relative_path(self.sourcefilename) + modname = self.get_module_name() + return ffiplatform.get_extension(sourcename, modname, **self.kwds) + + def generates_python_module(self): + return self._vengine._gen_python_module + + def make_relative_to(self, kwds, relative_to): + if relative_to and os.path.dirname(relative_to): + dirname = os.path.dirname(relative_to) + kwds = kwds.copy() + for key in ffiplatform.LIST_OF_FILE_NAMES: + if key in kwds: + lst = kwds[key] + if not isinstance(lst, (list, tuple)): + raise TypeError("keyword '%s' should be a list or tuple" + % (key,)) + lst = [os.path.join(dirname, fn) for fn in lst] + kwds[key] = lst + return kwds + + # ---------- + + def _locate_module(self): + if not os.path.isfile(self.modulefilename): + if self.ext_package: + try: + pkg = __import__(self.ext_package, None, None, ['__doc__']) + except ImportError: + return # cannot import the package itself, give up + # (e.g. it might be called differently before installation) + path = pkg.__path__ + else: + path = None + filename = self._vengine.find_module(self.get_module_name(), path, + _get_so_suffixes()) + if filename is None: + return + self.modulefilename = filename + self._vengine.collect_types() + self._has_module = True + + def _write_source_to(self, file): + self._vengine._f = file + try: + self._vengine.write_source_to_f() + finally: + del self._vengine._f + + def _write_source(self, file=None): + if file is not None: + self._write_source_to(file) + else: + # Write our source file to an in memory file. + f = NativeIO() + self._write_source_to(f) + source_data = f.getvalue() + + # Determine if this matches the current file + if os.path.exists(self.sourcefilename): + with open(self.sourcefilename, "r") as fp: + needs_written = not (fp.read() == source_data) + else: + needs_written = True + + # Actually write the file out if it doesn't match + if needs_written: + _ensure_dir(self.sourcefilename) + with open(self.sourcefilename, "w") as fp: + fp.write(source_data) + + # Set this flag + self._has_source = True + + def _compile_module(self): + # compile this C source + tmpdir = os.path.dirname(self.sourcefilename) + outputfilename = ffiplatform.compile(tmpdir, self.get_extension()) + try: + same = ffiplatform.samefile(outputfilename, self.modulefilename) + except OSError: + same = False + if not same: + _ensure_dir(self.modulefilename) + shutil.move(outputfilename, self.modulefilename) + self._has_module = True + + def _load_library(self): + assert self._has_module + if self.flags is not None: + return self._vengine.load_library(self.flags) + else: + return self._vengine.load_library() + +# ____________________________________________________________ + +_FORCE_GENERIC_ENGINE = False # for tests + +def _locate_engine_class(ffi, force_generic_engine): + if _FORCE_GENERIC_ENGINE: + force_generic_engine = True + if not force_generic_engine: + if '__pypy__' in sys.builtin_module_names: + force_generic_engine = True + else: + try: + import _cffi_backend + except ImportError: + _cffi_backend = '?' + if ffi._backend is not _cffi_backend: + force_generic_engine = True + if force_generic_engine: + from . import vengine_gen + return vengine_gen.VGenericEngine + else: + from . import vengine_cpy + return vengine_cpy.VCPythonEngine + +# ____________________________________________________________ + +_TMPDIR = None + +def _caller_dir_pycache(): + if _TMPDIR: + return _TMPDIR + result = os.environ.get('CFFI_TMPDIR') + if result: + return result + filename = sys._getframe(2).f_code.co_filename + return os.path.abspath(os.path.join(os.path.dirname(filename), + '__pycache__')) + +def set_tmpdir(dirname): + """Set the temporary directory to use instead of __pycache__.""" + global _TMPDIR + _TMPDIR = dirname + +def cleanup_tmpdir(tmpdir=None, keep_so=False): + """Clean up the temporary directory by removing all files in it + called `_cffi_*.{c,so}` as well as the `build` subdirectory.""" + tmpdir = tmpdir or _caller_dir_pycache() + try: + filelist = os.listdir(tmpdir) + except OSError: + return + if keep_so: + suffix = '.c' # only remove .c files + else: + suffix = _get_so_suffixes()[0].lower() + for fn in filelist: + if fn.lower().startswith('_cffi_') and ( + fn.lower().endswith(suffix) or fn.lower().endswith('.c')): + try: + os.unlink(os.path.join(tmpdir, fn)) + except OSError: + pass + clean_dir = [os.path.join(tmpdir, 'build')] + for dir in clean_dir: + try: + for fn in os.listdir(dir): + fn = os.path.join(dir, fn) + if os.path.isdir(fn): + clean_dir.append(fn) + else: + os.unlink(fn) + except OSError: + pass + +def _get_so_suffixes(): + suffixes = _extension_suffixes() + if not suffixes: + # bah, no C_EXTENSION available. Occurs on pypy without cpyext + if sys.platform == 'win32': + suffixes = [".pyd"] + else: + suffixes = [".so"] + + return suffixes + +def _ensure_dir(filename): + dirname = os.path.dirname(filename) + if dirname and not os.path.isdir(dirname): + os.makedirs(dirname) diff --git a/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/METADATA b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/METADATA new file mode 100644 index 0000000..6b5a360 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/METADATA @@ -0,0 +1,808 @@ +Metadata-Version: 2.4 +Name: charset-normalizer +Version: 3.4.7 +Summary: The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +Author-email: "Ahmed R. TAHRI" +Maintainer-email: "Ahmed R. TAHRI" +License: MIT +Project-URL: Changelog, https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md +Project-URL: Documentation, https://charset-normalizer.readthedocs.io/ +Project-URL: Code, https://github.com/jawah/charset_normalizer +Project-URL: Issue tracker, https://github.com/jawah/charset_normalizer/issues +Keywords: encoding,charset,charset-detector,detector,normalization,unicode,chardet,detect +Classifier: Development Status :: 5 - Production/Stable +Classifier: Intended Audience :: Developers +Classifier: Operating System :: OS Independent +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.7 +Classifier: Programming Language :: Python :: 3.8 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: Programming Language :: Python :: 3.14 +Classifier: Programming Language :: Python :: 3 :: Only +Classifier: Programming Language :: Python :: Implementation :: CPython +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Programming Language :: Python :: Free Threading :: 4 - Resilient +Classifier: Topic :: Text Processing :: Linguistic +Classifier: Topic :: Utilities +Classifier: Typing :: Typed +Requires-Python: >=3.7 +Description-Content-Type: text/markdown +License-File: LICENSE +Provides-Extra: unicode-backport +Dynamic: license-file + +

Charset Detection, for Everyone 👋

+ +

+ The Real First Universal Charset Detector
+ + + + + Download Count Total + + + + +

+

+ Featured Packages
+ + Static Badge + + + Static Badge + +

+

+ In other language (unofficial port - by the community)
+ + Static Badge + +

+ +> A library that helps you read text from an unknown charset encoding.
Motivated by `chardet`, +> I'm trying to resolve the issue by taking a new approach. +> All IANA character set names for which the Python core library provides codecs are supported. +> You can also register your own set of codecs, and yes, it would work as-is. + +

+ >>>>> 👉 Try Me Online Now, Then Adopt Me 👈 <<<<< +

+ +This project offers you an alternative to **Universal Charset Encoding Detector**, also known as **Chardet**. + +| Feature | [Chardet](https://github.com/chardet/chardet) | Charset Normalizer | [cChardet](https://github.com/PyYoshi/cChardet) | +|--------------------------------------------------|:---------------------------------------------:|:-----------------------------------------------------------------------------------------------:|:-----------------------------------------------:| +| `Fast` | ✅ | ✅ | ✅ | +| `Universal`[^1] | ❌ | ✅ | ❌ | +| `Reliable` **without** distinguishable standards | ✅ | ✅ | ✅ | +| `Reliable` **with** distinguishable standards | ✅ | ✅ | ✅ | +| `License` | _Disputed_[^2]
_restrictive_ | MIT | MPL-1.1
_restrictive_ | +| `Native Python` | ✅ | ✅ | ❌ | +| `Detect spoken language` | ✅ | ✅ | N/A | +| `UnicodeDecodeError Safety` | ✅ | ✅ | ❌ | +| `Whl Size (min)` | 500 kB | 150 kB | ~200 kB | +| `Supported Encoding` | 99 | [99](https://charset-normalizer.readthedocs.io/en/latest/user/support.html#supported-encodings) | 40 | +| `Can register custom encoding` | ❌ | ✅ | ❌ | + +

+Reading Normalized TextCat Reading Text +

+ +[^1]: They are clearly using specific code for a specific encoding even if covering most of used one. +[^2]: Chardet 7.0+ was relicensed from LGPL-2.1 to MIT following an AI-assisted rewrite. This relicensing is disputed on two independent grounds: **(a)** the original author [contests](https://github.com/chardet/chardet/issues/327) that the maintainer had the right to relicense, arguing the rewrite is a derivative work of the LGPL-licensed codebase since it was not a clean room implementation; **(b)** the copyright claim itself is [questionable](https://github.com/chardet/chardet/issues/334) given the code was primarily generated by an LLM, and AI-generated output may not be copyrightable under most jurisdictions. Either issue alone could undermine the MIT license. Beyond licensing, the rewrite raises questions about responsible use of AI in open source: key architectural ideas pioneered by charset-normalizer - notably decode-first validity filtering (our foundational approach since v1) and encoding pairwise similarity with the same algorithm and threshold — surfaced in chardet 7 without acknowledgment. The project also imported test files from charset-normalizer to train and benchmark against it, then claimed superior accuracy on those very files. Charset-normalizer has always been MIT-licensed, encoding-agnostic by design, and built on a verifiable human-authored history. + +## ⚡ Performance + +This package offer better performances (99th, and 95th) against Chardet. Here are some numbers. + +| Package | Accuracy | Mean per file (ms) | File per sec (est) | +|---------------------------------------------------|:--------:|:------------------:|:------------------:| +| [chardet 7.1](https://github.com/chardet/chardet) | 89 % | 3 ms | 333 file/sec | +| charset-normalizer | **97 %** | 3 ms | 333 file/sec | + +| Package | 99th percentile | 95th percentile | 50th percentile | +|---------------------------------------------------|:---------------:|:---------------:|:---------------:| +| [chardet 7.1](https://github.com/chardet/chardet) | 32 ms | 17 ms | < 1 ms | +| charset-normalizer | 16 ms | 10 ms | 1 ms | + +_updated as of March 2026 using CPython 3.12, Charset-Normalizer 3.4.6, and Chardet 7.1.0_ + +~Chardet's performance on larger file (1MB+) are very poor. Expect huge difference on large payload.~ No longer the case since Chardet 7.0+ + +> Stats are generated using 400+ files using default parameters. More details on used files, see GHA workflows. +> And yes, these results might change at any time. The dataset can be updated to include more files. +> The actual delays heavily depends on your CPU capabilities. The factors should remain the same. +> Chardet claims on his documentation to have a greater accuracy than us based on the dataset they trained Chardet on(...) +> Well, it's normal, the opposite would have been worrying. Whereas charset-normalizer don't train on anything, our solution +> is based on a completely different algorithm, still heuristic through, it does not need weights across every encoding tables. + +## ✨ Installation + +Using pip: + +```sh +pip install charset-normalizer -U +``` + +## 🚀 Basic Usage + +### CLI +This package comes with a CLI. + +``` +usage: normalizer [-h] [-v] [-a] [-n] [-m] [-r] [-f] [-t THRESHOLD] + file [file ...] + +The Real First Universal Charset Detector. Discover originating encoding used +on text file. Normalize text to unicode. + +positional arguments: + files File(s) to be analysed + +optional arguments: + -h, --help show this help message and exit + -v, --verbose Display complementary information about file if any. + Stdout will contain logs about the detection process. + -a, --with-alternative + Output complementary possibilities if any. Top-level + JSON WILL be a list. + -n, --normalize Permit to normalize input file. If not set, program + does not write anything. + -m, --minimal Only output the charset detected to STDOUT. Disabling + JSON output. + -r, --replace Replace file when trying to normalize it instead of + creating a new one. + -f, --force Replace file without asking if you are sure, use this + flag with caution. + -t THRESHOLD, --threshold THRESHOLD + Define a custom maximum amount of chaos allowed in + decoded content. 0. <= chaos <= 1. + --version Show version information and exit. +``` + +```bash +normalizer ./data/sample.1.fr.srt +``` + +or + +```bash +python -m charset_normalizer ./data/sample.1.fr.srt +``` + +🎉 Since version 1.4.0 the CLI produce easily usable stdout result in JSON format. + +```json +{ + "path": "/home/default/projects/charset_normalizer/data/sample.1.fr.srt", + "encoding": "cp1252", + "encoding_aliases": [ + "1252", + "windows_1252" + ], + "alternative_encodings": [ + "cp1254", + "cp1256", + "cp1258", + "iso8859_14", + "iso8859_15", + "iso8859_16", + "iso8859_3", + "iso8859_9", + "latin_1", + "mbcs" + ], + "language": "French", + "alphabets": [ + "Basic Latin", + "Latin-1 Supplement" + ], + "has_sig_or_bom": false, + "chaos": 0.149, + "coherence": 97.152, + "unicode_path": null, + "is_preferred": true +} +``` + +### Python +*Just print out normalized text* +```python +from charset_normalizer import from_path + +results = from_path('./my_subtitle.srt') + +print(str(results.best())) +``` + +*Upgrade your code without effort* +```python +from charset_normalizer import detect +``` + +The above code will behave the same as **chardet**. We ensure that we offer the best (reasonable) BC result possible. + +See the docs for advanced usage : [readthedocs.io](https://charset-normalizer.readthedocs.io/en/latest/) + +## 😇 Why + +When I started using Chardet, I noticed that it was not suited to my expectations, and I wanted to propose a +reliable alternative using a completely different method. Also! I never back down on a good challenge! + +I **don't care** about the **originating charset** encoding, because **two different tables** can +produce **two identical rendered string.** +What I want is to get readable text, the best I can. + +In a way, **I'm brute forcing text decoding.** How cool is that ? 😎 + +Don't confuse package **ftfy** with charset-normalizer or chardet. ftfy goal is to repair Unicode string whereas charset-normalizer to convert raw file in unknown encoding to unicode. + +## 🍰 How + + - Discard all charset encoding table that could not fit the binary content. + - Measure noise, or the mess once opened (by chunks) with a corresponding charset encoding. + - Extract matches with the lowest mess detected. + - Additionally, we measure coherence / probe for a language. + +**Wait a minute**, what is noise/mess and coherence according to **YOU ?** + +*Noise :* I opened hundred of text files, **written by humans**, with the wrong encoding table. **I observed**, then +**I established** some ground rules about **what is obvious** when **it seems like** a mess (aka. defining noise in rendered text). + I know that my interpretation of what is noise is probably incomplete, feel free to contribute in order to + improve or rewrite it. + +*Coherence :* For each language there is on earth, we have computed ranked letter appearance occurrences (the best we can). So I thought +that intel is worth something here. So I use those records against decoded text to check if I can detect intelligent design. + +## ⚡ Known limitations + + - Language detection is unreliable when text contains two or more languages sharing identical letters. (eg. HTML (english tags) + Turkish content (Sharing Latin characters)) + - Every charset detector heavily depends on sufficient content. In common cases, do not bother run detection on very tiny content. + +## ⚠️ About Python EOLs + +**If you are running:** + +- Python >=2.7,<3.5: Unsupported +- Python 3.5: charset-normalizer < 2.1 +- Python 3.6: charset-normalizer < 3.1 + +Upgrade your Python interpreter as soon as possible. + +## 👤 Contributing + +Contributions, issues and feature requests are very much welcome.
+Feel free to check [issues page](https://github.com/ousret/charset_normalizer/issues) if you want to contribute. + +## 📝 License + +Copyright © [Ahmed TAHRI @Ousret](https://github.com/Ousret).
+This project is [MIT](https://github.com/Ousret/charset_normalizer/blob/master/LICENSE) licensed. + +Characters frequencies used in this project © 2012 [Denny Vrandečić](http://simia.net/letters/) + +## 💼 For Enterprise + +Professional support for charset-normalizer is available as part of the [Tidelift +Subscription][1]. Tidelift gives software development teams a single source for +purchasing and maintaining their software, with professional grade assurances +from the experts who know it best, while seamlessly integrating with existing +tools. + +[1]: https://tidelift.com/subscription/pkg/pypi-charset-normalizer?utm_source=pypi-charset-normalizer&utm_medium=readme + +[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/7297/badge)](https://www.bestpractices.dev/projects/7297) + +# Changelog +All notable changes to charset-normalizer will be documented in this file. This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). + +## [3.4.7](https://github.com/Ousret/charset_normalizer/compare/3.4.6...3.4.7) (2026-04-02) + +### Changed +- Pre-built optimized version using mypy[c] v1.20. +- Relax `setuptools` constraint to `setuptools>=68,<82.1`. + +### Fixed +- Correctly remove SIG remnant in utf-7 decoded string. (#718) (#716) + +## [3.4.6](https://github.com/Ousret/charset_normalizer/compare/3.4.5...3.4.6) (2026-03-15) + +### Changed +- Flattened the logic in `charset_normalizer.md` for higher performance. Removed `eligible(..)` and `feed(...)` + in favor of `feed_info(...)`. +- Raised upper bound for mypy[c] to 1.20, for our optimized version. +- Updated `UNICODE_RANGES_COMBINED` using Unicode blocks v17. + +### Fixed +- Edge case where noise difference between two candidates can be almost insignificant. (#672) +- CLI `--normalize` writing to wrong path when passing multiple files in. (#702) + +### Misc +- Freethreaded pre-built wheels now shipped in PyPI starting with 3.14t. (#616) + +## [3.4.5](https://github.com/Ousret/charset_normalizer/compare/3.4.4...3.4.5) (2026-03-06) + +### Changed +- Update `setuptools` constraint to `setuptools>=68,<=82`. +- Raised upper bound of mypyc for the optional pre-built extension to v1.19.1 + +### Fixed +- Add explicit link to lib math in our optimized build. (#692) +- Logger level not restored correctly for empty byte sequences. (#701) +- TypeError when passing bytearray to from_bytes. (#703) + +### Misc +- Applied safe micro-optimizations in both our noise detector and language detector. +- Rewrote the `query_yes_no` function (inside CLI) to avoid using ambiguous licensed code. +- Added `cd.py` submodule into mypyc optional compilation to reduce further the performance impact. + +## [3.4.4](https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.4) (2025-10-13) + +### Changed +- Bound `setuptools` to a specific constraint `setuptools>=68,<=81`. +- Raised upper bound of mypyc for the optional pre-built extension to v1.18.2 + +### Removed +- `setuptools-scm` as a build dependency. + +### Misc +- Enforced hashes in `dev-requirements.txt` and created `ci-requirements.txt` for security purposes. +- Additional pre-built wheels for riscv64, s390x, and armv7l architectures. +- Restore ` multiple.intoto.jsonl` in GitHub releases in addition to individual attestation file per wheel. + +## [3.4.3](https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3) (2025-08-09) + +### Changed +- mypy(c) is no longer a required dependency at build time if `CHARSET_NORMALIZER_USE_MYPYC` isn't set to `1`. (#595) (#583) +- automatically lower confidence on small bytes samples that are not Unicode in `detect` output legacy function. (#391) + +### Added +- Custom build backend to overcome inability to mark mypy as an optional dependency in the build phase. +- Support for Python 3.14 + +### Fixed +- sdist archive contained useless directories. +- automatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (#633) + +### Misc +- SBOM are automatically published to the relevant GitHub release to comply with regulatory changes. + Each published wheel comes with its SBOM. We choose CycloneDX as the format. +- Prebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel. + +## [3.4.2](https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2) (2025-05-02) + +### Fixed +- Addressed the DeprecationWarning in our CLI regarding `argparse.FileType` by backporting the target class into the package. (#591) +- Improved the overall reliability of the detector with CJK Ideographs. (#605) (#587) + +### Changed +- Optional mypyc compilation upgraded to version 1.15 for Python >= 3.8 + +## [3.4.1](https://github.com/Ousret/charset_normalizer/compare/3.4.0...3.4.1) (2024-12-24) + +### Changed +- Project metadata are now stored using `pyproject.toml` instead of `setup.cfg` using setuptools as the build backend. +- Enforce annotation delayed loading for a simpler and consistent types in the project. +- Optional mypyc compilation upgraded to version 1.14 for Python >= 3.8 + +### Added +- pre-commit configuration. +- noxfile. + +### Removed +- `build-requirements.txt` as per using `pyproject.toml` native build configuration. +- `bin/integration.py` and `bin/serve.py` in favor of downstream integration test (see noxfile). +- `setup.cfg` in favor of `pyproject.toml` metadata configuration. +- Unused `utils.range_scan` function. + +### Fixed +- Converting content to Unicode bytes may insert `utf_8` instead of preferred `utf-8`. (#572) +- Deprecation warning "'count' is passed as positional argument" when converting to Unicode bytes on Python 3.13+ + +## [3.4.0](https://github.com/Ousret/charset_normalizer/compare/3.3.2...3.4.0) (2024-10-08) + +### Added +- Argument `--no-preemptive` in the CLI to prevent the detector to search for hints. +- Support for Python 3.13 (#512) + +### Fixed +- Relax the TypeError exception thrown when trying to compare a CharsetMatch with anything else than a CharsetMatch. +- Improved the general reliability of the detector based on user feedbacks. (#520) (#509) (#498) (#407) (#537) +- Declared charset in content (preemptive detection) not changed when converting to utf-8 bytes. (#381) + +## [3.3.2](https://github.com/Ousret/charset_normalizer/compare/3.3.1...3.3.2) (2023-10-31) + +### Fixed +- Unintentional memory usage regression when using large payload that match several encoding (#376) +- Regression on some detection case showcased in the documentation (#371) + +### Added +- Noise (md) probe that identify malformed arabic representation due to the presence of letters in isolated form (credit to my wife) + +## [3.3.1](https://github.com/Ousret/charset_normalizer/compare/3.3.0...3.3.1) (2023-10-22) + +### Changed +- Optional mypyc compilation upgraded to version 1.6.1 for Python >= 3.8 +- Improved the general detection reliability based on reports from the community + +## [3.3.0](https://github.com/Ousret/charset_normalizer/compare/3.2.0...3.3.0) (2023-09-30) + +### Added +- Allow to execute the CLI (e.g. normalizer) through `python -m charset_normalizer.cli` or `python -m charset_normalizer` +- Support for 9 forgotten encoding that are supported by Python but unlisted in `encoding.aliases` as they have no alias (#323) + +### Removed +- (internal) Redundant utils.is_ascii function and unused function is_private_use_only +- (internal) charset_normalizer.assets is moved inside charset_normalizer.constant + +### Changed +- (internal) Unicode code blocks in constants are updated using the latest v15.0.0 definition to improve detection +- Optional mypyc compilation upgraded to version 1.5.1 for Python >= 3.8 + +### Fixed +- Unable to properly sort CharsetMatch when both chaos/noise and coherence were close due to an unreachable condition in \_\_lt\_\_ (#350) + +## [3.2.0](https://github.com/Ousret/charset_normalizer/compare/3.1.0...3.2.0) (2023-06-07) + +### Changed +- Typehint for function `from_path` no longer enforce `PathLike` as its first argument +- Minor improvement over the global detection reliability + +### Added +- Introduce function `is_binary` that relies on main capabilities, and optimized to detect binaries +- Propagate `enable_fallback` argument throughout `from_bytes`, `from_path`, and `from_fp` that allow a deeper control over the detection (default True) +- Explicit support for Python 3.12 + +### Fixed +- Edge case detection failure where a file would contain 'very-long' camel cased word (Issue #289) + +## [3.1.0](https://github.com/Ousret/charset_normalizer/compare/3.0.1...3.1.0) (2023-03-06) + +### Added +- Argument `should_rename_legacy` for legacy function `detect` and disregard any new arguments without errors (PR #262) + +### Removed +- Support for Python 3.6 (PR #260) + +### Changed +- Optional speedup provided by mypy/c 1.0.1 + +## [3.0.1](https://github.com/Ousret/charset_normalizer/compare/3.0.0...3.0.1) (2022-11-18) + +### Fixed +- Multi-bytes cutter/chunk generator did not always cut correctly (PR #233) + +### Changed +- Speedup provided by mypy/c 0.990 on Python >= 3.7 + +## [3.0.0](https://github.com/Ousret/charset_normalizer/compare/2.1.1...3.0.0) (2022-10-20) + +### Added +- Extend the capability of explain=True when cp_isolation contains at most two entries (min one), will log in details of the Mess-detector results +- Support for alternative language frequency set in charset_normalizer.assets.FREQUENCIES +- Add parameter `language_threshold` in `from_bytes`, `from_path` and `from_fp` to adjust the minimum expected coherence ratio +- `normalizer --version` now specify if current version provide extra speedup (meaning mypyc compilation whl) + +### Changed +- Build with static metadata using 'build' frontend +- Make the language detection stricter +- Optional: Module `md.py` can be compiled using Mypyc to provide an extra speedup up to 4x faster than v2.1 + +### Fixed +- CLI with opt --normalize fail when using full path for files +- TooManyAccentuatedPlugin induce false positive on the mess detection when too few alpha character have been fed to it +- Sphinx warnings when generating the documentation + +### Removed +- Coherence detector no longer return 'Simple English' instead return 'English' +- Coherence detector no longer return 'Classical Chinese' instead return 'Chinese' +- Breaking: Method `first()` and `best()` from CharsetMatch +- UTF-7 will no longer appear as "detected" without a recognized SIG/mark (is unreliable/conflict with ASCII) +- Breaking: Class aliases CharsetDetector, CharsetDoctor, CharsetNormalizerMatch and CharsetNormalizerMatches +- Breaking: Top-level function `normalize` +- Breaking: Properties `chaos_secondary_pass`, `coherence_non_latin` and `w_counter` from CharsetMatch +- Support for the backport `unicodedata2` + +## [3.0.0rc1](https://github.com/Ousret/charset_normalizer/compare/3.0.0b2...3.0.0rc1) (2022-10-18) + +### Added +- Extend the capability of explain=True when cp_isolation contains at most two entries (min one), will log in details of the Mess-detector results +- Support for alternative language frequency set in charset_normalizer.assets.FREQUENCIES +- Add parameter `language_threshold` in `from_bytes`, `from_path` and `from_fp` to adjust the minimum expected coherence ratio + +### Changed +- Build with static metadata using 'build' frontend +- Make the language detection stricter + +### Fixed +- CLI with opt --normalize fail when using full path for files +- TooManyAccentuatedPlugin induce false positive on the mess detection when too few alpha character have been fed to it + +### Removed +- Coherence detector no longer return 'Simple English' instead return 'English' +- Coherence detector no longer return 'Classical Chinese' instead return 'Chinese' + +## [3.0.0b2](https://github.com/Ousret/charset_normalizer/compare/3.0.0b1...3.0.0b2) (2022-08-21) + +### Added +- `normalizer --version` now specify if current version provide extra speedup (meaning mypyc compilation whl) + +### Removed +- Breaking: Method `first()` and `best()` from CharsetMatch +- UTF-7 will no longer appear as "detected" without a recognized SIG/mark (is unreliable/conflict with ASCII) + +### Fixed +- Sphinx warnings when generating the documentation + +## [3.0.0b1](https://github.com/Ousret/charset_normalizer/compare/2.1.0...3.0.0b1) (2022-08-15) + +### Changed +- Optional: Module `md.py` can be compiled using Mypyc to provide an extra speedup up to 4x faster than v2.1 + +### Removed +- Breaking: Class aliases CharsetDetector, CharsetDoctor, CharsetNormalizerMatch and CharsetNormalizerMatches +- Breaking: Top-level function `normalize` +- Breaking: Properties `chaos_secondary_pass`, `coherence_non_latin` and `w_counter` from CharsetMatch +- Support for the backport `unicodedata2` + +## [2.1.1](https://github.com/Ousret/charset_normalizer/compare/2.1.0...2.1.1) (2022-08-19) + +### Deprecated +- Function `normalize` scheduled for removal in 3.0 + +### Changed +- Removed useless call to decode in fn is_unprintable (#206) + +### Fixed +- Third-party library (i18n xgettext) crashing not recognizing utf_8 (PEP 263) with underscore from [@aleksandernovikov](https://github.com/aleksandernovikov) (#204) + +## [2.1.0](https://github.com/Ousret/charset_normalizer/compare/2.0.12...2.1.0) (2022-06-19) + +### Added +- Output the Unicode table version when running the CLI with `--version` (PR #194) + +### Changed +- Re-use decoded buffer for single byte character sets from [@nijel](https://github.com/nijel) (PR #175) +- Fixing some performance bottlenecks from [@deedy5](https://github.com/deedy5) (PR #183) + +### Fixed +- Workaround potential bug in cpython with Zero Width No-Break Space located in Arabic Presentation Forms-B, Unicode 1.1 not acknowledged as space (PR #175) +- CLI default threshold aligned with the API threshold from [@oleksandr-kuzmenko](https://github.com/oleksandr-kuzmenko) (PR #181) + +### Removed +- Support for Python 3.5 (PR #192) + +### Deprecated +- Use of backport unicodedata from `unicodedata2` as Python is quickly catching up, scheduled for removal in 3.0 (PR #194) + +## [2.0.12](https://github.com/Ousret/charset_normalizer/compare/2.0.11...2.0.12) (2022-02-12) + +### Fixed +- ASCII miss-detection on rare cases (PR #170) + +## [2.0.11](https://github.com/Ousret/charset_normalizer/compare/2.0.10...2.0.11) (2022-01-30) + +### Added +- Explicit support for Python 3.11 (PR #164) + +### Changed +- The logging behavior have been completely reviewed, now using only TRACE and DEBUG levels (PR #163 #165) + +## [2.0.10](https://github.com/Ousret/charset_normalizer/compare/2.0.9...2.0.10) (2022-01-04) + +### Fixed +- Fallback match entries might lead to UnicodeDecodeError for large bytes sequence (PR #154) + +### Changed +- Skipping the language-detection (CD) on ASCII (PR #155) + +## [2.0.9](https://github.com/Ousret/charset_normalizer/compare/2.0.8...2.0.9) (2021-12-03) + +### Changed +- Moderating the logging impact (since 2.0.8) for specific environments (PR #147) + +### Fixed +- Wrong logging level applied when setting kwarg `explain` to True (PR #146) + +## [2.0.8](https://github.com/Ousret/charset_normalizer/compare/2.0.7...2.0.8) (2021-11-24) +### Changed +- Improvement over Vietnamese detection (PR #126) +- MD improvement on trailing data and long foreign (non-pure latin) data (PR #124) +- Efficiency improvements in cd/alphabet_languages from [@adbar](https://github.com/adbar) (PR #122) +- call sum() without an intermediary list following PEP 289 recommendations from [@adbar](https://github.com/adbar) (PR #129) +- Code style as refactored by Sourcery-AI (PR #131) +- Minor adjustment on the MD around european words (PR #133) +- Remove and replace SRTs from assets / tests (PR #139) +- Initialize the library logger with a `NullHandler` by default from [@nmaynes](https://github.com/nmaynes) (PR #135) +- Setting kwarg `explain` to True will add provisionally (bounded to function lifespan) a specific stream handler (PR #135) + +### Fixed +- Fix large (misleading) sequence giving UnicodeDecodeError (PR #137) +- Avoid using too insignificant chunk (PR #137) + +### Added +- Add and expose function `set_logging_handler` to configure a specific StreamHandler from [@nmaynes](https://github.com/nmaynes) (PR #135) +- Add `CHANGELOG.md` entries, format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) (PR #141) + +## [2.0.7](https://github.com/Ousret/charset_normalizer/compare/2.0.6...2.0.7) (2021-10-11) +### Added +- Add support for Kazakh (Cyrillic) language detection (PR #109) + +### Changed +- Further, improve inferring the language from a given single-byte code page (PR #112) +- Vainly trying to leverage PEP263 when PEP3120 is not supported (PR #116) +- Refactoring for potential performance improvements in loops from [@adbar](https://github.com/adbar) (PR #113) +- Various detection improvement (MD+CD) (PR #117) + +### Removed +- Remove redundant logging entry about detected language(s) (PR #115) + +### Fixed +- Fix a minor inconsistency between Python 3.5 and other versions regarding language detection (PR #117 #102) + +## [2.0.6](https://github.com/Ousret/charset_normalizer/compare/2.0.5...2.0.6) (2021-09-18) +### Fixed +- Unforeseen regression with the loss of the backward-compatibility with some older minor of Python 3.5.x (PR #100) +- Fix CLI crash when using --minimal output in certain cases (PR #103) + +### Changed +- Minor improvement to the detection efficiency (less than 1%) (PR #106 #101) + +## [2.0.5](https://github.com/Ousret/charset_normalizer/compare/2.0.4...2.0.5) (2021-09-14) +### Changed +- The project now comply with: flake8, mypy, isort and black to ensure a better overall quality (PR #81) +- The BC-support with v1.x was improved, the old staticmethods are restored (PR #82) +- The Unicode detection is slightly improved (PR #93) +- Add syntax sugar \_\_bool\_\_ for results CharsetMatches list-container (PR #91) + +### Removed +- The project no longer raise warning on tiny content given for detection, will be simply logged as warning instead (PR #92) + +### Fixed +- In some rare case, the chunks extractor could cut in the middle of a multi-byte character and could mislead the mess detection (PR #95) +- Some rare 'space' characters could trip up the UnprintablePlugin/Mess detection (PR #96) +- The MANIFEST.in was not exhaustive (PR #78) + +## [2.0.4](https://github.com/Ousret/charset_normalizer/compare/2.0.3...2.0.4) (2021-07-30) +### Fixed +- The CLI no longer raise an unexpected exception when no encoding has been found (PR #70) +- Fix accessing the 'alphabets' property when the payload contains surrogate characters (PR #68) +- The logger could mislead (explain=True) on detected languages and the impact of one MBCS match (PR #72) +- Submatch factoring could be wrong in rare edge cases (PR #72) +- Multiple files given to the CLI were ignored when publishing results to STDOUT. (After the first path) (PR #72) +- Fix line endings from CRLF to LF for certain project files (PR #67) + +### Changed +- Adjust the MD to lower the sensitivity, thus improving the global detection reliability (PR #69 #76) +- Allow fallback on specified encoding if any (PR #71) + +## [2.0.3](https://github.com/Ousret/charset_normalizer/compare/2.0.2...2.0.3) (2021-07-16) +### Changed +- Part of the detection mechanism has been improved to be less sensitive, resulting in more accurate detection results. Especially ASCII. (PR #63) +- According to the community wishes, the detection will fall back on ASCII or UTF-8 in a last-resort case. (PR #64) + +## [2.0.2](https://github.com/Ousret/charset_normalizer/compare/2.0.1...2.0.2) (2021-07-15) +### Fixed +- Empty/Too small JSON payload miss-detection fixed. Report from [@tseaver](https://github.com/tseaver) (PR #59) + +### Changed +- Don't inject unicodedata2 into sys.modules from [@akx](https://github.com/akx) (PR #57) + +## [2.0.1](https://github.com/Ousret/charset_normalizer/compare/2.0.0...2.0.1) (2021-07-13) +### Fixed +- Make it work where there isn't a filesystem available, dropping assets frequencies.json. Report from [@sethmlarson](https://github.com/sethmlarson). (PR #55) +- Using explain=False permanently disable the verbose output in the current runtime (PR #47) +- One log entry (language target preemptive) was not show in logs when using explain=True (PR #47) +- Fix undesired exception (ValueError) on getitem of instance CharsetMatches (PR #52) + +### Changed +- Public function normalize default args values were not aligned with from_bytes (PR #53) + +### Added +- You may now use charset aliases in cp_isolation and cp_exclusion arguments (PR #47) + +## [2.0.0](https://github.com/Ousret/charset_normalizer/compare/1.4.1...2.0.0) (2021-07-02) +### Changed +- 4x to 5 times faster than the previous 1.4.0 release. At least 2x faster than Chardet. +- Accent has been made on UTF-8 detection, should perform rather instantaneous. +- The backward compatibility with Chardet has been greatly improved. The legacy detect function returns an identical charset name whenever possible. +- The detection mechanism has been slightly improved, now Turkish content is detected correctly (most of the time) +- The program has been rewritten to ease the readability and maintainability. (+Using static typing)+ +- utf_7 detection has been reinstated. + +### Removed +- This package no longer require anything when used with Python 3.5 (Dropped cached_property) +- Removed support for these languages: Catalan, Esperanto, Kazakh, Baque, Volapük, Azeri, Galician, Nynorsk, Macedonian, and Serbocroatian. +- The exception hook on UnicodeDecodeError has been removed. + +### Deprecated +- Methods coherence_non_latin, w_counter, chaos_secondary_pass of the class CharsetMatch are now deprecated and scheduled for removal in v3.0 + +### Fixed +- The CLI output used the relative path of the file(s). Should be absolute. + +## [1.4.1](https://github.com/Ousret/charset_normalizer/compare/1.4.0...1.4.1) (2021-05-28) +### Fixed +- Logger configuration/usage no longer conflict with others (PR #44) + +## [1.4.0](https://github.com/Ousret/charset_normalizer/compare/1.3.9...1.4.0) (2021-05-21) +### Removed +- Using standard logging instead of using the package loguru. +- Dropping nose test framework in favor of the maintained pytest. +- Choose to not use dragonmapper package to help with gibberish Chinese/CJK text. +- Require cached_property only for Python 3.5 due to constraint. Dropping for every other interpreter version. +- Stop support for UTF-7 that does not contain a SIG. +- Dropping PrettyTable, replaced with pure JSON output in CLI. + +### Fixed +- BOM marker in a CharsetNormalizerMatch instance could be False in rare cases even if obviously present. Due to the sub-match factoring process. +- Not searching properly for the BOM when trying utf32/16 parent codec. + +### Changed +- Improving the package final size by compressing frequencies.json. +- Huge improvement over the larges payload. + +### Added +- CLI now produces JSON consumable output. +- Return ASCII if given sequences fit. Given reasonable confidence. + +## [1.3.9](https://github.com/Ousret/charset_normalizer/compare/1.3.8...1.3.9) (2021-05-13) + +### Fixed +- In some very rare cases, you may end up getting encode/decode errors due to a bad bytes payload (PR #40) + +## [1.3.8](https://github.com/Ousret/charset_normalizer/compare/1.3.7...1.3.8) (2021-05-12) + +### Fixed +- Empty given payload for detection may cause an exception if trying to access the `alphabets` property. (PR #39) + +## [1.3.7](https://github.com/Ousret/charset_normalizer/compare/1.3.6...1.3.7) (2021-05-12) + +### Fixed +- The legacy detect function should return UTF-8-SIG if sig is present in the payload. (PR #38) + +## [1.3.6](https://github.com/Ousret/charset_normalizer/compare/1.3.5...1.3.6) (2021-02-09) + +### Changed +- Amend the previous release to allow prettytable 2.0 (PR #35) + +## [1.3.5](https://github.com/Ousret/charset_normalizer/compare/1.3.4...1.3.5) (2021-02-08) + +### Fixed +- Fix error while using the package with a python pre-release interpreter (PR #33) + +### Changed +- Dependencies refactoring, constraints revised. + +### Added +- Add python 3.9 and 3.10 to the supported interpreters + +MIT License + +Copyright (c) 2025 TAHRI Ahmed R. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/RECORD b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/RECORD new file mode 100644 index 0000000..98e4e02 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/RECORD @@ -0,0 +1,36 @@ +../../../bin/normalizer,sha256=yAm3CjdxDfNfljUzrm_8za_BbnOFgJfLtYXQ3n133iE,207 +81d243bd2c585b0f4821__mypyc.cpython-39-x86_64-linux-gnu.so,sha256=Ujxa5iPb6AesmIlxxCdsF1WEp8tSMlzb-rW_532i3cU,410832 +charset_normalizer-3.4.7.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +charset_normalizer-3.4.7.dist-info/METADATA,sha256=K8lK8L8LaZ1YmKvWLt3zEkpIxiCOC58xNhzFQrfQJxQ,40931 +charset_normalizer-3.4.7.dist-info/RECORD,, +charset_normalizer-3.4.7.dist-info/WHEEL,sha256=OZLCzpIUHEX42a9RmtxH4_auVuxdXhghS0dmIdhxCRQ,184 +charset_normalizer-3.4.7.dist-info/entry_points.txt,sha256=ADSTKrkXZ3hhdOVFi6DcUEHQRS0xfxDIE_pEz4wLIXA,65 +charset_normalizer-3.4.7.dist-info/licenses/LICENSE,sha256=bQ1Bv-FwrGx9wkjJpj4lTQ-0WmDVCoJX0K-SxuJJuIc,1071 +charset_normalizer-3.4.7.dist-info/top_level.txt,sha256=c_vZbitqecT2GfK3zdxSTLCn8C-6pGnHQY5o_5Y32M0,47 +charset_normalizer/__init__.py,sha256=OKRxRv2Zhnqk00tqkN0c1BtJjm165fWXLydE52IKuHc,1590 +charset_normalizer/__main__.py,sha256=yzYxMR-IhKRHYwcSlavEv8oGdwxsR89mr2X09qXGdps,109 +charset_normalizer/__pycache__/__init__.cpython-39.pyc,, +charset_normalizer/__pycache__/__main__.cpython-39.pyc,, +charset_normalizer/__pycache__/api.cpython-39.pyc,, +charset_normalizer/__pycache__/cd.cpython-39.pyc,, +charset_normalizer/__pycache__/constant.cpython-39.pyc,, +charset_normalizer/__pycache__/legacy.cpython-39.pyc,, +charset_normalizer/__pycache__/md.cpython-39.pyc,, +charset_normalizer/__pycache__/models.cpython-39.pyc,, +charset_normalizer/__pycache__/utils.cpython-39.pyc,, +charset_normalizer/__pycache__/version.cpython-39.pyc,, +charset_normalizer/api.py,sha256=387F3n23MlMu-xfSbFULW2DLGsBmVrZVGhnkiGXeKBo,38844 +charset_normalizer/cd.cpython-39-x86_64-linux-gnu.so,sha256=q9uObNt5v2-3JR3GmbMsHY7cJIiCz9Eez4Hmvs0IR3M,15912 +charset_normalizer/cd.py,sha256=v0iPJweGsRegXywrM1LzUgqW9bJ1KFvIblQHP1jm5FQ,15174 +charset_normalizer/cli/__init__.py,sha256=D8I86lFk2-py45JvqxniTirSj_sFyE6sjaY_0-G1shc,136 +charset_normalizer/cli/__main__.py,sha256=E9FFSV1E2iOE_B2B1tJHQT9ExJqc60Ks_c-08sNawh8,11940 +charset_normalizer/cli/__pycache__/__init__.cpython-39.pyc,, +charset_normalizer/cli/__pycache__/__main__.cpython-39.pyc,, +charset_normalizer/constant.py,sha256=yvLAWDrdSC743Cu4amhwHLIO-FGuRTOTZouCzZKGikc,44431 +charset_normalizer/legacy.py,sha256=yBIFMNABNPE5JkdKOWyVo36fZtV9nm8bf37LrDWulz8,2661 +charset_normalizer/md.cpython-39-x86_64-linux-gnu.so,sha256=MvlOADQzK-FTt2QLGo1y7joPU_7evdj0LunrWj6uzXs,15912 +charset_normalizer/md.py,sha256=AYCdfDX79FrgoId3zXqmbCuDcbGr1NRuGqgJN94Rx9Q,30441 +charset_normalizer/models.py,sha256=FbaQnI6ECmVmyHRSvVM5fHNeMAQ3KSGdwLjGcQqWDws,12821 +charset_normalizer/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +charset_normalizer/utils.py,sha256=9cpi-_0-vC9pGDfuoarhC6VlF_Jxwx5Jsa_8I4w2D8k,12282 +charset_normalizer/version.py,sha256=2LxFuGp3BBuIwt95cp64y7v8bCNHcMAi08IfXt_47Co,115 diff --git a/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/WHEEL b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/WHEEL new file mode 100644 index 0000000..fbcc8e7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/WHEEL @@ -0,0 +1,7 @@ +Wheel-Version: 1.0 +Generator: setuptools (82.0.1) +Root-Is-Purelib: false +Tag: cp39-cp39-manylinux_2_17_x86_64 +Tag: cp39-cp39-manylinux2014_x86_64 +Tag: cp39-cp39-manylinux_2_28_x86_64 + diff --git a/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/entry_points.txt b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/entry_points.txt new file mode 100644 index 0000000..65619e7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/entry_points.txt @@ -0,0 +1,2 @@ +[console_scripts] +normalizer = charset_normalizer.cli:cli_detect diff --git a/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/licenses/LICENSE b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/licenses/LICENSE new file mode 100644 index 0000000..9725772 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/licenses/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2025 TAHRI Ahmed R. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/top_level.txt new file mode 100644 index 0000000..89847be --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer-3.4.7.dist-info/top_level.txt @@ -0,0 +1,2 @@ +81d243bd2c585b0f4821__mypyc +charset_normalizer diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/__init__.py b/venv/lib/python3.9/site-packages/charset_normalizer/__init__.py new file mode 100644 index 0000000..0d3a379 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/__init__.py @@ -0,0 +1,48 @@ +""" +Charset-Normalizer +~~~~~~~~~~~~~~ +The Real First Universal Charset Detector. +A library that helps you read text from an unknown charset encoding. +Motivated by chardet, This package is trying to resolve the issue by taking a new approach. +All IANA character set names for which the Python core library provides codecs are supported. + +Basic usage: + >>> from charset_normalizer import from_bytes + >>> results = from_bytes('Bсеки човек има право на образование. Oбразованието!'.encode('utf_8')) + >>> best_guess = results.best() + >>> str(best_guess) + 'Bсеки човек има право на образование. Oбразованието!' + +Others methods and usages are available - see the full documentation +at . +:copyright: (c) 2021 by Ahmed TAHRI +:license: MIT, see LICENSE for more details. +""" + +from __future__ import annotations + +import logging + +from .api import from_bytes, from_fp, from_path, is_binary +from .legacy import detect +from .models import CharsetMatch, CharsetMatches +from .utils import set_logging_handler +from .version import VERSION, __version__ + +__all__ = ( + "from_fp", + "from_path", + "from_bytes", + "is_binary", + "detect", + "CharsetMatch", + "CharsetMatches", + "__version__", + "VERSION", + "set_logging_handler", +) + +# Attach a NullHandler to the top level logger by default +# https://docs.python.org/3.3/howto/logging.html#configuring-logging-for-a-library + +logging.getLogger("charset_normalizer").addHandler(logging.NullHandler()) diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/__main__.py b/venv/lib/python3.9/site-packages/charset_normalizer/__main__.py new file mode 100644 index 0000000..e0e76f7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/__main__.py @@ -0,0 +1,6 @@ +from __future__ import annotations + +from .cli import cli_detect + +if __name__ == "__main__": + cli_detect() diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/api.py b/venv/lib/python3.9/site-packages/charset_normalizer/api.py new file mode 100644 index 0000000..50cb955 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/api.py @@ -0,0 +1,988 @@ +from __future__ import annotations + +import logging +from os import PathLike +from typing import BinaryIO + +from .cd import ( + coherence_ratio, + encoding_languages, + mb_encoding_languages, + merge_coherence_ratios, +) +from .constant import ( + IANA_SUPPORTED, + IANA_SUPPORTED_SIMILAR, + TOO_BIG_SEQUENCE, + TOO_SMALL_SEQUENCE, + TRACE, +) +from .md import mess_ratio +from .models import CharsetMatch, CharsetMatches +from .utils import ( + any_specified_encoding, + cut_sequence_chunks, + iana_name, + identify_sig_or_bom, + is_multi_byte_encoding, + should_strip_sig_or_bom, +) + +logger = logging.getLogger("charset_normalizer") +explain_handler = logging.StreamHandler() +explain_handler.setFormatter( + logging.Formatter("%(asctime)s | %(levelname)s | %(message)s") +) + +# Pre-compute a reordered encoding list: multibyte first, then single-byte. +# This allows the mb_definitive_match optimization to fire earlier, skipping +# all single-byte encodings for genuine CJK content. Multibyte codecs +# hard-fail (UnicodeDecodeError) on single-byte data almost instantly, so +# testing them first costs negligible time for non-CJK files. +_mb_supported: list[str] = [] +_sb_supported: list[str] = [] + +for _supported_enc in IANA_SUPPORTED: + try: + if is_multi_byte_encoding(_supported_enc): + _mb_supported.append(_supported_enc) + else: + _sb_supported.append(_supported_enc) + except ImportError: + _sb_supported.append(_supported_enc) + +IANA_SUPPORTED_MB_FIRST: list[str] = _mb_supported + _sb_supported + + +def from_bytes( + sequences: bytes | bytearray, + steps: int = 5, + chunk_size: int = 512, + threshold: float = 0.2, + cp_isolation: list[str] | None = None, + cp_exclusion: list[str] | None = None, + preemptive_behaviour: bool = True, + explain: bool = False, + language_threshold: float = 0.1, + enable_fallback: bool = True, +) -> CharsetMatches: + """ + Given a raw bytes sequence, return the best possibles charset usable to render str objects. + If there is no results, it is a strong indicator that the source is binary/not text. + By default, the process will extract 5 blocks of 512o each to assess the mess and coherence of a given sequence. + And will give up a particular code page after 20% of measured mess. Those criteria are customizable at will. + + The preemptive behavior DOES NOT replace the traditional detection workflow, it prioritize a particular code page + but never take it for granted. Can improve the performance. + + You may want to focus your attention to some code page or/and not others, use cp_isolation and cp_exclusion for that + purpose. + + This function will strip the SIG in the payload/sequence every time except on UTF-16, UTF-32. + By default the library does not setup any handler other than the NullHandler, if you choose to set the 'explain' + toggle to True it will alter the logger configuration to add a StreamHandler that is suitable for debugging. + Custom logging format and handler can be set manually. + """ + + if not isinstance(sequences, (bytearray, bytes)): + raise TypeError( + "Expected object of type bytes or bytearray, got: {}".format( + type(sequences) + ) + ) + + if explain: + previous_logger_level: int = logger.level + logger.addHandler(explain_handler) + logger.setLevel(TRACE) + + length: int = len(sequences) + + if length == 0: + logger.debug("Encoding detection on empty bytes, assuming utf_8 intention.") + if explain: # Defensive: ensure exit path clean handler + logger.removeHandler(explain_handler) + logger.setLevel(previous_logger_level) + return CharsetMatches([CharsetMatch(sequences, "utf_8", 0.0, False, [], "")]) + + if cp_isolation is not None: + logger.log( + TRACE, + "cp_isolation is set. use this flag for debugging purpose. " + "limited list of encoding allowed : %s.", + ", ".join(cp_isolation), + ) + cp_isolation = [iana_name(cp, False) for cp in cp_isolation] + else: + cp_isolation = [] + + if cp_exclusion is not None: + logger.log( + TRACE, + "cp_exclusion is set. use this flag for debugging purpose. " + "limited list of encoding excluded : %s.", + ", ".join(cp_exclusion), + ) + cp_exclusion = [iana_name(cp, False) for cp in cp_exclusion] + else: + cp_exclusion = [] + + if length <= (chunk_size * steps): + logger.log( + TRACE, + "override steps (%i) and chunk_size (%i) as content does not fit (%i byte(s) given) parameters.", + steps, + chunk_size, + length, + ) + steps = 1 + chunk_size = length + + if steps > 1 and length / steps < chunk_size: + chunk_size = int(length / steps) + + is_too_small_sequence: bool = len(sequences) < TOO_SMALL_SEQUENCE + is_too_large_sequence: bool = len(sequences) >= TOO_BIG_SEQUENCE + + if is_too_small_sequence: + logger.log( + TRACE, + "Trying to detect encoding from a tiny portion of ({}) byte(s).".format( + length + ), + ) + elif is_too_large_sequence: + logger.log( + TRACE, + "Using lazy str decoding because the payload is quite large, ({}) byte(s).".format( + length + ), + ) + + prioritized_encodings: list[str] = [] + + specified_encoding: str | None = ( + any_specified_encoding(sequences) if preemptive_behaviour else None + ) + + if specified_encoding is not None: + prioritized_encodings.append(specified_encoding) + logger.log( + TRACE, + "Detected declarative mark in sequence. Priority +1 given for %s.", + specified_encoding, + ) + + tested: set[str] = set() + tested_but_hard_failure: list[str] = [] + tested_but_soft_failure: list[str] = [] + soft_failure_skip: set[str] = set() + success_fast_tracked: set[str] = set() + + # Cache for decoded payload deduplication: hash(decoded_payload) -> (mean_mess_ratio, cd_ratios_merged, passed) + # When multiple encodings decode to the exact same string, we can skip the expensive + # mess_ratio and coherence_ratio analysis and reuse the results from the first encoding. + payload_result_cache: dict[int, tuple[float, list[tuple[str, float]], bool]] = {} + + # When a definitive result (chaos=0.0 and good coherence) is found after testing + # the prioritized encodings (ascii, utf_8), we can significantly reduce the remaining + # work. Encodings that target completely different language families (e.g., Cyrillic + # when the definitive match is Latin) are skipped entirely. + # Additionally, for same-family encodings that pass chaos probing, we reuse the + # definitive match's coherence ratios instead of recomputing them — a major savings + # since coherence_ratio accounts for ~30% of total time on slow Latin files. + definitive_match_found: bool = False + definitive_target_languages: set[str] = set() + # After the definitive match fires, we cap the number of additional same-family + # single-byte encodings that pass chaos probing. Once we've accumulated enough + # good candidates (N), further same-family SB encodings are unlikely to produce + # a better best() result and just waste mess_ratio + coherence_ratio time. + # The first encoding to trigger the definitive match is NOT counted (it's already in). + post_definitive_sb_success_count: int = 0 + POST_DEFINITIVE_SB_CAP: int = 7 + + # When a non-UTF multibyte encoding passes chaos probing with significant multibyte + # content (decoded length < 98% of raw length), skip all remaining single-byte encodings. + # Rationale: multi-byte decoders (CJK) have strict byte-sequence validation — if they + # decode without error AND pass chaos probing with substantial multibyte content, the + # data is genuinely multibyte encoded. Single-byte encodings will always decode (every + # byte maps to something) but waste time on mess_ratio before failing. + # The 98% threshold prevents false triggers on files that happen to have a few valid + # multibyte pairs (e.g., cp424/_ude_1.txt where big5 decodes with 99% ratio). + mb_definitive_match_found: bool = False + + fallback_ascii: CharsetMatch | None = None + fallback_u8: CharsetMatch | None = None + fallback_specified: CharsetMatch | None = None + + results: CharsetMatches = CharsetMatches() + + early_stop_results: CharsetMatches = CharsetMatches() + + sig_encoding, sig_payload = identify_sig_or_bom(sequences) + + if sig_encoding is not None: + prioritized_encodings.append(sig_encoding) + logger.log( + TRACE, + "Detected a SIG or BOM mark on first %i byte(s). Priority +1 given for %s.", + len(sig_payload), + sig_encoding, + ) + + prioritized_encodings.append("ascii") + + if "utf_8" not in prioritized_encodings: + prioritized_encodings.append("utf_8") + + for encoding_iana in prioritized_encodings + IANA_SUPPORTED_MB_FIRST: + if cp_isolation and encoding_iana not in cp_isolation: + continue + + if cp_exclusion and encoding_iana in cp_exclusion: + continue + + if encoding_iana in tested: + continue + + tested.add(encoding_iana) + + decoded_payload: str | None = None + bom_or_sig_available: bool = sig_encoding == encoding_iana + strip_sig_or_bom: bool = bom_or_sig_available and should_strip_sig_or_bom( + encoding_iana + ) + + if encoding_iana in {"utf_16", "utf_32"} and not bom_or_sig_available: + logger.log( + TRACE, + "Encoding %s won't be tested as-is because it require a BOM. Will try some sub-encoder LE/BE.", + encoding_iana, + ) + continue + if encoding_iana in {"utf_7"} and not bom_or_sig_available: + logger.log( + TRACE, + "Encoding %s won't be tested as-is because detection is unreliable without BOM/SIG.", + encoding_iana, + ) + continue + + # Skip encodings similar to ones that already soft-failed (high mess ratio). + # Checked BEFORE the expensive decode attempt. + if encoding_iana in soft_failure_skip: + logger.log( + TRACE, + "%s is deemed too similar to a code page that was already considered unsuited. Continuing!", + encoding_iana, + ) + continue + + # Skip encodings that were already fast-tracked from a similar successful encoding. + if encoding_iana in success_fast_tracked: + logger.log( + TRACE, + "Skipping %s: already fast-tracked from a similar successful encoding.", + encoding_iana, + ) + continue + + try: + is_multi_byte_decoder: bool = is_multi_byte_encoding(encoding_iana) + except (ModuleNotFoundError, ImportError): # Defensive: + logger.log( + TRACE, + "Encoding %s does not provide an IncrementalDecoder", + encoding_iana, + ) + continue + + # When we've already found a definitive match (chaos=0.0 with good coherence) + # after testing the prioritized encodings, skip encodings that target + # completely different language families. This avoids running expensive + # mess_ratio + coherence_ratio on clearly unrelated candidates (e.g., Cyrillic + # when the definitive match is Latin-based). + if definitive_match_found: + if not is_multi_byte_decoder: + enc_languages = set(encoding_languages(encoding_iana)) + else: + enc_languages = set(mb_encoding_languages(encoding_iana)) + if not enc_languages.intersection(definitive_target_languages): + logger.log( + TRACE, + "Skipping %s: definitive match already found, this encoding targets different languages (%s vs %s).", + encoding_iana, + enc_languages, + definitive_target_languages, + ) + continue + + # After the definitive match, cap the number of additional same-family + # single-byte encodings that pass chaos probing. This avoids testing the + # tail of rare, low-value same-family encodings (mac_iceland, cp860, etc.) + # that almost never change best() but each cost ~1-2ms of mess_ratio + coherence. + if ( + definitive_match_found + and not is_multi_byte_decoder + and post_definitive_sb_success_count >= POST_DEFINITIVE_SB_CAP + ): + logger.log( + TRACE, + "Skipping %s: already accumulated %d same-family results after definitive match (cap=%d).", + encoding_iana, + post_definitive_sb_success_count, + POST_DEFINITIVE_SB_CAP, + ) + continue + + # When a multibyte encoding with significant multibyte content has already + # passed chaos probing, skip all single-byte encodings. They will either fail + # chaos probing (wasting mess_ratio time) or produce inferior results. + if mb_definitive_match_found and not is_multi_byte_decoder: + logger.log( + TRACE, + "Skipping single-byte %s: multi-byte definitive match already found.", + encoding_iana, + ) + continue + + try: + if is_too_large_sequence and is_multi_byte_decoder is False: + str( + ( + sequences[: int(50e4)] + if strip_sig_or_bom is False + else sequences[len(sig_payload) : int(50e4)] + ), + encoding=encoding_iana, + ) + else: + # UTF-7 BOM is encoded in modified Base64 whose byte boundary + # can overlap with the next character. Stripping raw SIG bytes + # before decoding may leave stray bytes that decode as garbage. + # Decode the full sequence and remove the leading BOM char instead. + # see https://github.com/jawah/charset_normalizer/issues/718 + # and https://github.com/jawah/charset_normalizer/issues/716 + if encoding_iana == "utf_7" and bom_or_sig_available: + decoded_payload = str( + sequences, + encoding=encoding_iana, + ) + if decoded_payload and decoded_payload[0] == "\ufeff": + decoded_payload = decoded_payload[1:] + else: + decoded_payload = str( + ( + sequences + if strip_sig_or_bom is False + else sequences[len(sig_payload) :] + ), + encoding=encoding_iana, + ) + except (UnicodeDecodeError, LookupError) as e: + if not isinstance(e, LookupError): + logger.log( + TRACE, + "Code page %s does not fit given bytes sequence at ALL. %s", + encoding_iana, + str(e), + ) + tested_but_hard_failure.append(encoding_iana) + continue + + r_ = range( + 0 if not bom_or_sig_available else len(sig_payload), + length, + int(length / steps), + ) + + multi_byte_bonus: bool = ( + is_multi_byte_decoder + and decoded_payload is not None + and len(decoded_payload) < length + ) + + if multi_byte_bonus: + logger.log( + TRACE, + "Code page %s is a multi byte encoding table and it appear that at least one character " + "was encoded using n-bytes.", + encoding_iana, + ) + + # Payload-hash deduplication: if another encoding already decoded to the + # exact same string, reuse its mess_ratio and coherence results entirely. + # This is strictly more general than the old IANA_SUPPORTED_SIMILAR approach + # because it catches ALL identical decoding, not just pre-mapped ones. + if decoded_payload is not None and not is_multi_byte_decoder: + payload_hash: int = hash(decoded_payload) + cached = payload_result_cache.get(payload_hash) + if cached is not None: + cached_mess, cached_cd, cached_passed = cached + if cached_passed: + # The previous encoding with identical output passed chaos probing. + fast_match = CharsetMatch( + sequences, + encoding_iana, + cached_mess, + bom_or_sig_available, + cached_cd, + ( + decoded_payload + if ( + is_too_large_sequence is False + or encoding_iana + in [specified_encoding, "ascii", "utf_8"] + ) + else None + ), + preemptive_declaration=specified_encoding, + ) + results.append(fast_match) + success_fast_tracked.add(encoding_iana) + logger.log( + TRACE, + "%s fast-tracked (identical decoded payload to a prior encoding, chaos=%f %%).", + encoding_iana, + round(cached_mess * 100, ndigits=3), + ) + + if ( + encoding_iana in [specified_encoding, "ascii", "utf_8"] + and cached_mess < 0.1 + ): + if cached_mess == 0.0: + logger.debug( + "Encoding detection: %s is most likely the one.", + fast_match.encoding, + ) + if explain: + logger.removeHandler(explain_handler) + logger.setLevel(previous_logger_level) + return CharsetMatches([fast_match]) + early_stop_results.append(fast_match) + + if ( + len(early_stop_results) + and (specified_encoding is None or specified_encoding in tested) + and "ascii" in tested + and "utf_8" in tested + ): + probable_result: CharsetMatch = early_stop_results.best() # type: ignore[assignment] + logger.debug( + "Encoding detection: %s is most likely the one.", + probable_result.encoding, + ) + if explain: + logger.removeHandler(explain_handler) + logger.setLevel(previous_logger_level) + return CharsetMatches([probable_result]) + + continue + else: + # The previous encoding with identical output failed chaos probing. + tested_but_soft_failure.append(encoding_iana) + logger.log( + TRACE, + "%s fast-skipped (identical decoded payload to a prior encoding that failed chaos probing).", + encoding_iana, + ) + # Prepare fallbacks for special encodings even when skipped. + if enable_fallback and encoding_iana in [ + "ascii", + "utf_8", + specified_encoding, + "utf_16", + "utf_32", + ]: + fallback_entry = CharsetMatch( + sequences, + encoding_iana, + threshold, + bom_or_sig_available, + [], + decoded_payload, + preemptive_declaration=specified_encoding, + ) + if encoding_iana == specified_encoding: + fallback_specified = fallback_entry + elif encoding_iana == "ascii": + fallback_ascii = fallback_entry + else: + fallback_u8 = fallback_entry + continue + + max_chunk_gave_up: int = int(len(r_) / 4) + + max_chunk_gave_up = max(max_chunk_gave_up, 2) + early_stop_count: int = 0 + lazy_str_hard_failure = False + + md_chunks: list[str] = [] + md_ratios = [] + + try: + for chunk in cut_sequence_chunks( + sequences, + encoding_iana, + r_, + chunk_size, + bom_or_sig_available, + strip_sig_or_bom, + sig_payload, + is_multi_byte_decoder, + decoded_payload, + ): + md_chunks.append(chunk) + + md_ratios.append( + mess_ratio( + chunk, + threshold, + explain is True and 1 <= len(cp_isolation) <= 2, + ) + ) + + if md_ratios[-1] >= threshold: + early_stop_count += 1 + + if (early_stop_count >= max_chunk_gave_up) or ( + bom_or_sig_available and strip_sig_or_bom is False + ): + break + except ( + UnicodeDecodeError + ) as e: # Lazy str loading may have missed something there + logger.log( + TRACE, + "LazyStr Loading: After MD chunk decode, code page %s does not fit given bytes sequence at ALL. %s", + encoding_iana, + str(e), + ) + early_stop_count = max_chunk_gave_up + lazy_str_hard_failure = True + + # We might want to check the sequence again with the whole content + # Only if initial MD tests passes + if ( + not lazy_str_hard_failure + and is_too_large_sequence + and not is_multi_byte_decoder + ): + try: + sequences[int(50e3) :].decode(encoding_iana, errors="strict") + except UnicodeDecodeError as e: + logger.log( + TRACE, + "LazyStr Loading: After final lookup, code page %s does not fit given bytes sequence at ALL. %s", + encoding_iana, + str(e), + ) + tested_but_hard_failure.append(encoding_iana) + continue + + mean_mess_ratio: float = sum(md_ratios) / len(md_ratios) if md_ratios else 0.0 + if mean_mess_ratio >= threshold or early_stop_count >= max_chunk_gave_up: + tested_but_soft_failure.append(encoding_iana) + if encoding_iana in IANA_SUPPORTED_SIMILAR: + soft_failure_skip.update(IANA_SUPPORTED_SIMILAR[encoding_iana]) + # Cache this soft-failure so identical decoding from other encodings + # can be skipped immediately. + if decoded_payload is not None and not is_multi_byte_decoder: + payload_result_cache.setdefault( + hash(decoded_payload), (mean_mess_ratio, [], False) + ) + logger.log( + TRACE, + "%s was excluded because of initial chaos probing. Gave up %i time(s). " + "Computed mean chaos is %f %%.", + encoding_iana, + early_stop_count, + round(mean_mess_ratio * 100, ndigits=3), + ) + # Preparing those fallbacks in case we got nothing. + if ( + enable_fallback + and encoding_iana + in ["ascii", "utf_8", specified_encoding, "utf_16", "utf_32"] + and not lazy_str_hard_failure + ): + fallback_entry = CharsetMatch( + sequences, + encoding_iana, + threshold, + bom_or_sig_available, + [], + decoded_payload, + preemptive_declaration=specified_encoding, + ) + if encoding_iana == specified_encoding: + fallback_specified = fallback_entry + elif encoding_iana == "ascii": + fallback_ascii = fallback_entry + else: + fallback_u8 = fallback_entry + continue + + logger.log( + TRACE, + "%s passed initial chaos probing. Mean measured chaos is %f %%", + encoding_iana, + round(mean_mess_ratio * 100, ndigits=3), + ) + + if not is_multi_byte_decoder: + target_languages: list[str] = encoding_languages(encoding_iana) + else: + target_languages = mb_encoding_languages(encoding_iana) + + if target_languages: + logger.log( + TRACE, + "{} should target any language(s) of {}".format( + encoding_iana, str(target_languages) + ), + ) + + cd_ratios = [] + + # Run coherence detection on all chunks. We previously tried limiting to + # 1-2 chunks for post-definitive encodings to save time, but this caused + # coverage regressions by producing unrepresentative coherence scores. + # The SB cap and language-family skip optimizations provide sufficient + # speedup without sacrificing coherence accuracy. + if encoding_iana != "ascii": + # We shall skip the CD when its about ASCII + # Most of the time its not relevant to run "language-detection" on it. + for chunk in md_chunks: + chunk_languages = coherence_ratio( + chunk, + language_threshold, + ",".join(target_languages) if target_languages else None, + ) + + cd_ratios.append(chunk_languages) + cd_ratios_merged = merge_coherence_ratios(cd_ratios) + else: + cd_ratios_merged = merge_coherence_ratios(cd_ratios) + + if cd_ratios_merged: + logger.log( + TRACE, + "We detected language {} using {}".format( + cd_ratios_merged, encoding_iana + ), + ) + + current_match = CharsetMatch( + sequences, + encoding_iana, + mean_mess_ratio, + bom_or_sig_available, + cd_ratios_merged, + ( + decoded_payload + if ( + is_too_large_sequence is False + or encoding_iana in [specified_encoding, "ascii", "utf_8"] + ) + else None + ), + preemptive_declaration=specified_encoding, + ) + + results.append(current_match) + + # Cache the successful result for payload-hash deduplication. + if decoded_payload is not None and not is_multi_byte_decoder: + payload_result_cache.setdefault( + hash(decoded_payload), + (mean_mess_ratio, cd_ratios_merged, True), + ) + + # Count post-definitive same-family SB successes for the early termination cap. + # Only count low-mess encodings (< 2%) toward the cap. High-mess encodings are + # marginal results that shouldn't prevent better-quality candidates from being + # tested. For example, iso8859_4 (mess=0%) should not be skipped just because + # 7 high-mess Latin encodings (cp1252 at 8%, etc.) were tried first. + if ( + definitive_match_found + and not is_multi_byte_decoder + and mean_mess_ratio < 0.02 + ): + post_definitive_sb_success_count += 1 + + if ( + encoding_iana in [specified_encoding, "ascii", "utf_8"] + and mean_mess_ratio < 0.1 + ): + # If md says nothing to worry about, then... stop immediately! + if mean_mess_ratio == 0.0: + logger.debug( + "Encoding detection: %s is most likely the one.", + current_match.encoding, + ) + if explain: # Defensive: ensure exit path clean handler + logger.removeHandler(explain_handler) + logger.setLevel(previous_logger_level) + return CharsetMatches([current_match]) + + early_stop_results.append(current_match) + + if ( + len(early_stop_results) + and (specified_encoding is None or specified_encoding in tested) + and "ascii" in tested + and "utf_8" in tested + ): + probable_result = early_stop_results.best() # type: ignore[assignment] + logger.debug( + "Encoding detection: %s is most likely the one.", + probable_result.encoding, # type: ignore[union-attr] + ) + if explain: # Defensive: ensure exit path clean handler + logger.removeHandler(explain_handler) + logger.setLevel(previous_logger_level) + + return CharsetMatches([probable_result]) + + # Once we find a result with good coherence (>= 0.5) after testing the + # prioritized encodings (ascii, utf_8), activate "definitive mode": skip + # encodings that target completely different language families. This avoids + # running expensive mess_ratio + coherence_ratio on clearly unrelated + # candidates (e.g., Cyrillic encodings when the match is Latin-based). + # We require coherence >= 0.5 to avoid false positives (e.g., cp1251 decoding + # Hebrew text with 0.0 chaos but wrong language detection at coherence 0.33). + if not definitive_match_found and not is_multi_byte_decoder: + best_coherence = ( + max((v for _, v in cd_ratios_merged), default=0.0) + if cd_ratios_merged + else 0.0 + ) + if best_coherence >= 0.5 and "ascii" in tested and "utf_8" in tested: + definitive_match_found = True + definitive_target_languages.update(target_languages) + logger.log( + TRACE, + "Definitive match found: %s (chaos=%.3f, coherence=%.2f). Encodings targeting different language families will be skipped.", + encoding_iana, + mean_mess_ratio, + best_coherence, + ) + + # When a non-UTF multibyte encoding passes chaos probing with significant + # multibyte content (decoded < 98% of raw), activate mb_definitive_match. + # This skips all remaining single-byte encodings which would either soft-fail + # (running expensive mess_ratio for nothing) or produce inferior results. + if ( + not mb_definitive_match_found + and is_multi_byte_decoder + and multi_byte_bonus + and decoded_payload is not None + and len(decoded_payload) < length * 0.98 + and encoding_iana + not in { + "utf_8", + "utf_8_sig", + "utf_16", + "utf_16_be", + "utf_16_le", + "utf_32", + "utf_32_be", + "utf_32_le", + "utf_7", + } + and "ascii" in tested + and "utf_8" in tested + ): + mb_definitive_match_found = True + logger.log( + TRACE, + "Multi-byte definitive match: %s (chaos=%.3f, decoded=%d/%d=%.1f%%). Single-byte encodings will be skipped.", + encoding_iana, + mean_mess_ratio, + len(decoded_payload), + length, + len(decoded_payload) / length * 100, + ) + + if encoding_iana == sig_encoding: + logger.debug( + "Encoding detection: %s is most likely the one as we detected a BOM or SIG within " + "the beginning of the sequence.", + encoding_iana, + ) + if explain: # Defensive: ensure exit path clean handler + logger.removeHandler(explain_handler) + logger.setLevel(previous_logger_level) + return CharsetMatches([results[encoding_iana]]) + + if len(results) == 0: + if fallback_u8 or fallback_ascii or fallback_specified: + logger.log( + TRACE, + "Nothing got out of the detection process. Using ASCII/UTF-8/Specified fallback.", + ) + + if fallback_specified: + logger.debug( + "Encoding detection: %s will be used as a fallback match", + fallback_specified.encoding, + ) + results.append(fallback_specified) + elif ( + (fallback_u8 and fallback_ascii is None) + or ( + fallback_u8 + and fallback_ascii + and fallback_u8.fingerprint != fallback_ascii.fingerprint + ) + or (fallback_u8 is not None) + ): + logger.debug("Encoding detection: utf_8 will be used as a fallback match") + results.append(fallback_u8) + elif fallback_ascii: + logger.debug("Encoding detection: ascii will be used as a fallback match") + results.append(fallback_ascii) + + if results: + logger.debug( + "Encoding detection: Found %s as plausible (best-candidate) for content. With %i alternatives.", + results.best().encoding, # type: ignore + len(results) - 1, + ) + else: + logger.debug("Encoding detection: Unable to determine any suitable charset.") + + if explain: + logger.removeHandler(explain_handler) + logger.setLevel(previous_logger_level) + + return results + + +def from_fp( + fp: BinaryIO, + steps: int = 5, + chunk_size: int = 512, + threshold: float = 0.20, + cp_isolation: list[str] | None = None, + cp_exclusion: list[str] | None = None, + preemptive_behaviour: bool = True, + explain: bool = False, + language_threshold: float = 0.1, + enable_fallback: bool = True, +) -> CharsetMatches: + """ + Same thing than the function from_bytes but using a file pointer that is already ready. + Will not close the file pointer. + """ + return from_bytes( + fp.read(), + steps, + chunk_size, + threshold, + cp_isolation, + cp_exclusion, + preemptive_behaviour, + explain, + language_threshold, + enable_fallback, + ) + + +def from_path( + path: str | bytes | PathLike, # type: ignore[type-arg] + steps: int = 5, + chunk_size: int = 512, + threshold: float = 0.20, + cp_isolation: list[str] | None = None, + cp_exclusion: list[str] | None = None, + preemptive_behaviour: bool = True, + explain: bool = False, + language_threshold: float = 0.1, + enable_fallback: bool = True, +) -> CharsetMatches: + """ + Same thing than the function from_bytes but with one extra step. Opening and reading given file path in binary mode. + Can raise IOError. + """ + with open(path, "rb") as fp: + return from_fp( + fp, + steps, + chunk_size, + threshold, + cp_isolation, + cp_exclusion, + preemptive_behaviour, + explain, + language_threshold, + enable_fallback, + ) + + +def is_binary( + fp_or_path_or_payload: PathLike | str | BinaryIO | bytes, # type: ignore[type-arg] + steps: int = 5, + chunk_size: int = 512, + threshold: float = 0.20, + cp_isolation: list[str] | None = None, + cp_exclusion: list[str] | None = None, + preemptive_behaviour: bool = True, + explain: bool = False, + language_threshold: float = 0.1, + enable_fallback: bool = False, +) -> bool: + """ + Detect if the given input (file, bytes, or path) points to a binary file. aka. not a string. + Based on the same main heuristic algorithms and default kwargs at the sole exception that fallbacks match + are disabled to be stricter around ASCII-compatible but unlikely to be a string. + """ + if isinstance(fp_or_path_or_payload, (str, PathLike)): + guesses = from_path( + fp_or_path_or_payload, + steps=steps, + chunk_size=chunk_size, + threshold=threshold, + cp_isolation=cp_isolation, + cp_exclusion=cp_exclusion, + preemptive_behaviour=preemptive_behaviour, + explain=explain, + language_threshold=language_threshold, + enable_fallback=enable_fallback, + ) + elif isinstance( + fp_or_path_or_payload, + ( + bytes, + bytearray, + ), + ): + guesses = from_bytes( + fp_or_path_or_payload, + steps=steps, + chunk_size=chunk_size, + threshold=threshold, + cp_isolation=cp_isolation, + cp_exclusion=cp_exclusion, + preemptive_behaviour=preemptive_behaviour, + explain=explain, + language_threshold=language_threshold, + enable_fallback=enable_fallback, + ) + else: + guesses = from_fp( + fp_or_path_or_payload, + steps=steps, + chunk_size=chunk_size, + threshold=threshold, + cp_isolation=cp_isolation, + cp_exclusion=cp_exclusion, + preemptive_behaviour=preemptive_behaviour, + explain=explain, + language_threshold=language_threshold, + enable_fallback=enable_fallback, + ) + + return not guesses diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/cd.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/charset_normalizer/cd.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..15eb479fb5e35e6c56169d4197ebf0c3cf2691b2 GIT binary patch literal 15912 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 list[str]: + """ + Return associated unicode ranges in a single byte code page. + """ + if is_multi_byte_encoding(iana_name): + raise OSError( # Defensive: + "Function not supported on multi-byte code page" + ) + + decoder = importlib.import_module(f"encodings.{iana_name}").IncrementalDecoder + + p: IncrementalDecoder = decoder(errors="ignore") + seen_ranges: dict[str, int] = {} + character_count: int = 0 + + for i in range(0x40, 0xFF): + chunk: str = p.decode(bytes([i])) + + if chunk: + character_range: str | None = unicode_range(chunk) + + if character_range is None: + continue + + if is_unicode_range_secondary(character_range) is False: + if character_range not in seen_ranges: + seen_ranges[character_range] = 0 + seen_ranges[character_range] += 1 + character_count += 1 + + return sorted( + [ + character_range + for character_range in seen_ranges + if seen_ranges[character_range] / character_count >= 0.15 + ] + ) + + +def unicode_range_languages(primary_range: str) -> list[str]: + """ + Return inferred languages used with a unicode range. + """ + languages: list[str] = [] + + for language, characters in FREQUENCIES.items(): + for character in characters: + if unicode_range(character) == primary_range: + languages.append(language) + break + + return languages + + +@lru_cache() +def encoding_languages(iana_name: str) -> list[str]: + """ + Single-byte encoding language association. Some code page are heavily linked to particular language(s). + This function does the correspondence. + """ + unicode_ranges: list[str] = encoding_unicode_range(iana_name) + primary_range: str | None = None + + for specified_range in unicode_ranges: + if "Latin" not in specified_range: + primary_range = specified_range + break + + if primary_range is None: + return ["Latin Based"] + + return unicode_range_languages(primary_range) + + +@lru_cache() +def mb_encoding_languages(iana_name: str) -> list[str]: + """ + Multi-byte encoding language association. Some code page are heavily linked to particular language(s). + This function does the correspondence. + """ + if ( + iana_name.startswith("shift_") + or iana_name.startswith("iso2022_jp") + or iana_name.startswith("euc_j") + or iana_name == "cp932" + ): + return ["Japanese"] + if iana_name.startswith("gb") or iana_name in ZH_NAMES: + return ["Chinese"] + if iana_name.startswith("iso2022_kr") or iana_name in KO_NAMES: + return ["Korean"] + + return [] + + +@lru_cache(maxsize=LANGUAGE_SUPPORTED_COUNT) +def get_target_features(language: str) -> tuple[bool, bool]: + """ + Determine main aspects from a supported language if it contains accents and if is pure Latin. + """ + target_have_accents: bool = False + target_pure_latin: bool = True + + for character in FREQUENCIES[language]: + if not target_have_accents and is_accentuated(character): + target_have_accents = True + if target_pure_latin and is_latin(character) is False: + target_pure_latin = False + + return target_have_accents, target_pure_latin + + +def alphabet_languages( + characters: list[str], ignore_non_latin: bool = False +) -> list[str]: + """ + Return associated languages associated to given characters. + """ + languages: list[tuple[str, float]] = [] + + characters_set: frozenset[str] = frozenset(characters) + source_have_accents = any(is_accentuated(character) for character in characters) + + for language, language_characters in FREQUENCIES.items(): + target_have_accents, target_pure_latin = get_target_features(language) + + if ignore_non_latin and target_pure_latin is False: + continue + + if target_have_accents is False and source_have_accents: + continue + + character_count: int = len(language_characters) + + character_match_count: int = len(_FREQUENCIES_SET[language] & characters_set) + + ratio: float = character_match_count / character_count + + if ratio >= 0.2: + languages.append((language, ratio)) + + languages = sorted(languages, key=lambda x: x[1], reverse=True) + + return [compatible_language[0] for compatible_language in languages] + + +def characters_popularity_compare( + language: str, ordered_characters: list[str] +) -> float: + """ + Determine if a ordered characters list (by occurrence from most appearance to rarest) match a particular language. + The result is a ratio between 0. (absolutely no correspondence) and 1. (near perfect fit). + Beware that is function is not strict on the match in order to ease the detection. (Meaning close match is 1.) + """ + if language not in FREQUENCIES: + raise ValueError(f"{language} not available") # Defensive: + + character_approved_count: int = 0 + frequencies_language_set: frozenset[str] = _FREQUENCIES_SET[language] + lang_rank: dict[str, int] = _FREQUENCIES_RANK[language] + + ordered_characters_count: int = len(ordered_characters) + target_language_characters_count: int = len(FREQUENCIES[language]) + + large_alphabet: bool = target_language_characters_count > 26 + + expected_projection_ratio: float = ( + target_language_characters_count / ordered_characters_count + ) + + # Pre-built rank dict for ordered_characters (avoids repeated list slicing). + ordered_rank: dict[str, int] = { + char: rank for rank, char in enumerate(ordered_characters) + } + + # Pre-compute characters common to both orderings. + # Avoids repeated `c in ordered_rank` dict lookups in the inner counts. + common_chars: list[tuple[int, int]] = [ + (lr, ordered_rank[c]) for c, lr in lang_rank.items() if c in ordered_rank + ] + + # Pre-extract lr and orr arrays for faster iteration in the inner loop. + # Plain integer loops with local arrays are much faster under mypyc than + # generator expression sums over a list of tuples. + common_count: int = len(common_chars) + common_lr: list[int] = [p[0] for p in common_chars] + common_orr: list[int] = [p[1] for p in common_chars] + + for character, character_rank in zip( + ordered_characters, range(0, ordered_characters_count) + ): + if character not in frequencies_language_set: + continue + + character_rank_in_language: int = lang_rank[character] + character_rank_projection: int = int(character_rank * expected_projection_ratio) + + if ( + large_alphabet is False + and abs(character_rank_projection - character_rank_in_language) > 4 + ): + continue + + if ( + large_alphabet is True + and abs(character_rank_projection - character_rank_in_language) + < target_language_characters_count / 3 + ): + character_approved_count += 1 + continue + + # Count how many characters appear "before" in both orderings, + # and how many appear "at or after" in both orderings. + # Single pass over pre-extracted arrays — much faster under mypyc + # than two generator expression sums. + before_match_count: int = 0 + after_match_count: int = 0 + for i in range(common_count): + lr_i: int = common_lr[i] + orr_i: int = common_orr[i] + if lr_i < character_rank_in_language: + if orr_i < character_rank: + before_match_count += 1 + else: + if orr_i >= character_rank: + after_match_count += 1 + + after_len: int = target_language_characters_count - character_rank_in_language + + if character_rank_in_language == 0 and before_match_count <= 4: + character_approved_count += 1 + continue + + if after_len == 0 and after_match_count <= 4: + character_approved_count += 1 + continue + + if ( + character_rank_in_language > 0 + and before_match_count / character_rank_in_language >= 0.4 + ) or (after_len > 0 and after_match_count / after_len >= 0.4): + character_approved_count += 1 + continue + + return character_approved_count / len(ordered_characters) + + +def alpha_unicode_split(decoded_sequence: str) -> list[str]: + """ + Given a decoded text sequence, return a list of str. Unicode range / alphabet separation. + Ex. a text containing English/Latin with a bit a Hebrew will return two items in the resulting list; + One containing the latin letters and the other hebrew. + """ + layers: dict[str, list[str]] = {} + + # Fast path: track single-layer key to skip dict iteration for single-script text. + single_layer_key: str | None = None + multi_layer: bool = False + + # Cache the last character_range and its resolved layer to avoid repeated + # is_suspiciously_successive_range calls for consecutive same-range chars. + prev_character_range: str | None = None + prev_layer_target: str | None = None + + for character in decoded_sequence: + if character.isalpha() is False: + continue + + # ASCII fast-path: a-z and A-Z are always "Basic Latin". + # Avoids unicode_range() function call overhead for the most common case. + character_ord: int = ord(character) + if character_ord < 128: + character_range: str | None = "Basic Latin" + else: + character_range = unicode_range(character) + + if character_range is None: + continue + + # Fast path: same range as previous character → reuse cached layer target. + if character_range == prev_character_range: + if prev_layer_target is not None: + layers[prev_layer_target].append(character) + continue + + layer_target_range: str | None = None + + if multi_layer: + for discovered_range in layers: + if ( + is_suspiciously_successive_range(discovered_range, character_range) + is False + ): + layer_target_range = discovered_range + break + elif single_layer_key is not None: + if ( + is_suspiciously_successive_range(single_layer_key, character_range) + is False + ): + layer_target_range = single_layer_key + + if layer_target_range is None: + layer_target_range = character_range + + if layer_target_range not in layers: + layers[layer_target_range] = [] + if single_layer_key is None: + single_layer_key = layer_target_range + else: + multi_layer = True + + layers[layer_target_range].append(character) + + # Cache for next iteration + prev_character_range = character_range + prev_layer_target = layer_target_range + + return ["".join(chars).lower() for chars in layers.values()] + + +def merge_coherence_ratios(results: list[CoherenceMatches]) -> CoherenceMatches: + """ + This function merge results previously given by the function coherence_ratio. + The return type is the same as coherence_ratio. + """ + per_language_ratios: dict[str, list[float]] = {} + for result in results: + for sub_result in result: + language, ratio = sub_result + if language not in per_language_ratios: + per_language_ratios[language] = [ratio] + continue + per_language_ratios[language].append(ratio) + + merge = [ + ( + language, + round( + sum(per_language_ratios[language]) / len(per_language_ratios[language]), + 4, + ), + ) + for language in per_language_ratios + ] + + return sorted(merge, key=lambda x: x[1], reverse=True) + + +def filter_alt_coherence_matches(results: CoherenceMatches) -> CoherenceMatches: + """ + We shall NOT return "English—" in CoherenceMatches because it is an alternative + of "English". This function only keeps the best match and remove the em-dash in it. + """ + index_results: dict[str, list[float]] = dict() + + for result in results: + language, ratio = result + no_em_name: str = language.replace("—", "") + + if no_em_name not in index_results: + index_results[no_em_name] = [] + + index_results[no_em_name].append(ratio) + + if any(len(index_results[e]) > 1 for e in index_results): + filtered_results: CoherenceMatches = [] + + for language in index_results: + filtered_results.append((language, max(index_results[language]))) + + return filtered_results + + return results + + +@lru_cache(maxsize=2048) +def coherence_ratio( + decoded_sequence: str, threshold: float = 0.1, lg_inclusion: str | None = None +) -> CoherenceMatches: + """ + Detect ANY language that can be identified in given sequence. The sequence will be analysed by layers. + A layer = Character extraction by alphabets/ranges. + """ + + results: list[tuple[str, float]] = [] + ignore_non_latin: bool = False + + sufficient_match_count: int = 0 + + lg_inclusion_list = lg_inclusion.split(",") if lg_inclusion is not None else [] + if "Latin Based" in lg_inclusion_list: + ignore_non_latin = True + lg_inclusion_list.remove("Latin Based") + + for layer in alpha_unicode_split(decoded_sequence): + sequence_frequencies: TypeCounter[str] = Counter(layer) + most_common = sequence_frequencies.most_common() + + character_count: int = len(layer) + + if character_count <= TOO_SMALL_SEQUENCE: + continue + + popular_character_ordered: list[str] = [c for c, o in most_common] + + for language in lg_inclusion_list or alphabet_languages( + popular_character_ordered, ignore_non_latin + ): + ratio: float = characters_popularity_compare( + language, popular_character_ordered + ) + + if ratio < threshold: + continue + elif ratio >= 0.8: + sufficient_match_count += 1 + + results.append((language, round(ratio, 4))) + + if sufficient_match_count >= 3: + break + + return sorted( + filter_alt_coherence_matches(results), key=lambda x: x[1], reverse=True + ) diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/cli/__init__.py b/venv/lib/python3.9/site-packages/charset_normalizer/cli/__init__.py new file mode 100644 index 0000000..543a5a4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/cli/__init__.py @@ -0,0 +1,8 @@ +from __future__ import annotations + +from .__main__ import cli_detect, query_yes_no + +__all__ = ( + "cli_detect", + "query_yes_no", +) diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/cli/__main__.py b/venv/lib/python3.9/site-packages/charset_normalizer/cli/__main__.py new file mode 100644 index 0000000..ad843c1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/cli/__main__.py @@ -0,0 +1,362 @@ +from __future__ import annotations + +import argparse +import sys +import typing +from json import dumps +from os.path import abspath, basename, dirname, join, realpath +from platform import python_version +from unicodedata import unidata_version + +import charset_normalizer.md as md_module +from charset_normalizer import from_fp +from charset_normalizer.models import CliDetectionResult +from charset_normalizer.version import __version__ + + +def query_yes_no(question: str, default: str = "yes") -> bool: # Defensive: + """Ask a yes/no question via input() and return the answer as a bool.""" + prompt = " [Y/n] " if default == "yes" else " [y/N] " + + while True: + choice = input(question + prompt).strip().lower() + if not choice: + return default == "yes" + if choice in ("y", "yes"): + return True + if choice in ("n", "no"): + return False + print("Please respond with 'y' or 'n'.") + + +class FileType: + """Factory for creating file object types + + Instances of FileType are typically passed as type= arguments to the + ArgumentParser add_argument() method. + + Keyword Arguments: + - mode -- A string indicating how the file is to be opened. Accepts the + same values as the builtin open() function. + - bufsize -- The file's desired buffer size. Accepts the same values as + the builtin open() function. + - encoding -- The file's encoding. Accepts the same values as the + builtin open() function. + - errors -- A string indicating how encoding and decoding errors are to + be handled. Accepts the same value as the builtin open() function. + + Backported from CPython 3.12 + """ + + def __init__( + self, + mode: str = "r", + bufsize: int = -1, + encoding: str | None = None, + errors: str | None = None, + ): + self._mode = mode + self._bufsize = bufsize + self._encoding = encoding + self._errors = errors + + def __call__(self, string: str) -> typing.IO: # type: ignore[type-arg] + # the special argument "-" means sys.std{in,out} + if string == "-": + if "r" in self._mode: + return sys.stdin.buffer if "b" in self._mode else sys.stdin + elif any(c in self._mode for c in "wax"): + return sys.stdout.buffer if "b" in self._mode else sys.stdout + else: + msg = f'argument "-" with mode {self._mode}' + raise ValueError(msg) + + # all other arguments are used as file names + try: + return open(string, self._mode, self._bufsize, self._encoding, self._errors) + except OSError as e: + message = f"can't open '{string}': {e}" + raise argparse.ArgumentTypeError(message) + + def __repr__(self) -> str: + args = self._mode, self._bufsize + kwargs = [("encoding", self._encoding), ("errors", self._errors)] + args_str = ", ".join( + [repr(arg) for arg in args if arg != -1] + + [f"{kw}={arg!r}" for kw, arg in kwargs if arg is not None] + ) + return f"{type(self).__name__}({args_str})" + + +def cli_detect(argv: list[str] | None = None) -> int: + """ + CLI assistant using ARGV and ArgumentParser + :param argv: + :return: 0 if everything is fine, anything else equal trouble + """ + parser = argparse.ArgumentParser( + description="The Real First Universal Charset Detector. " + "Discover originating encoding used on text file. " + "Normalize text to unicode." + ) + + parser.add_argument( + "files", type=FileType("rb"), nargs="+", help="File(s) to be analysed" + ) + parser.add_argument( + "-v", + "--verbose", + action="store_true", + default=False, + dest="verbose", + help="Display complementary information about file if any. " + "Stdout will contain logs about the detection process.", + ) + parser.add_argument( + "-a", + "--with-alternative", + action="store_true", + default=False, + dest="alternatives", + help="Output complementary possibilities if any. Top-level JSON WILL be a list.", + ) + parser.add_argument( + "-n", + "--normalize", + action="store_true", + default=False, + dest="normalize", + help="Permit to normalize input file. If not set, program does not write anything.", + ) + parser.add_argument( + "-m", + "--minimal", + action="store_true", + default=False, + dest="minimal", + help="Only output the charset detected to STDOUT. Disabling JSON output.", + ) + parser.add_argument( + "-r", + "--replace", + action="store_true", + default=False, + dest="replace", + help="Replace file when trying to normalize it instead of creating a new one.", + ) + parser.add_argument( + "-f", + "--force", + action="store_true", + default=False, + dest="force", + help="Replace file without asking if you are sure, use this flag with caution.", + ) + parser.add_argument( + "-i", + "--no-preemptive", + action="store_true", + default=False, + dest="no_preemptive", + help="Disable looking at a charset declaration to hint the detector.", + ) + parser.add_argument( + "-t", + "--threshold", + action="store", + default=0.2, + type=float, + dest="threshold", + help="Define a custom maximum amount of noise allowed in decoded content. 0. <= noise <= 1.", + ) + parser.add_argument( + "--version", + action="version", + version="Charset-Normalizer {} - Python {} - Unicode {} - SpeedUp {}".format( + __version__, + python_version(), + unidata_version, + "OFF" if md_module.__file__.lower().endswith(".py") else "ON", + ), + help="Show version information and exit.", + ) + + args = parser.parse_args(argv) + + if args.replace is True and args.normalize is False: + if args.files: + for my_file in args.files: + my_file.close() + print("Use --replace in addition of --normalize only.", file=sys.stderr) + return 1 + + if args.force is True and args.replace is False: + if args.files: + for my_file in args.files: + my_file.close() + print("Use --force in addition of --replace only.", file=sys.stderr) + return 1 + + if args.threshold < 0.0 or args.threshold > 1.0: + if args.files: + for my_file in args.files: + my_file.close() + print("--threshold VALUE should be between 0. AND 1.", file=sys.stderr) + return 1 + + x_ = [] + + for my_file in args.files: + matches = from_fp( + my_file, + threshold=args.threshold, + explain=args.verbose, + preemptive_behaviour=args.no_preemptive is False, + ) + + best_guess = matches.best() + + if best_guess is None: + print( + 'Unable to identify originating encoding for "{}". {}'.format( + my_file.name, + ( + "Maybe try increasing maximum amount of chaos." + if args.threshold < 1.0 + else "" + ), + ), + file=sys.stderr, + ) + x_.append( + CliDetectionResult( + abspath(my_file.name), + None, + [], + [], + "Unknown", + [], + False, + 1.0, + 0.0, + None, + True, + ) + ) + else: + cli_result = CliDetectionResult( + abspath(my_file.name), + best_guess.encoding, + best_guess.encoding_aliases, + [ + cp + for cp in best_guess.could_be_from_charset + if cp != best_guess.encoding + ], + best_guess.language, + best_guess.alphabets, + best_guess.bom, + best_guess.percent_chaos, + best_guess.percent_coherence, + None, + True, + ) + x_.append(cli_result) + + if len(matches) > 1 and args.alternatives: + for el in matches: + if el != best_guess: + x_.append( + CliDetectionResult( + abspath(my_file.name), + el.encoding, + el.encoding_aliases, + [ + cp + for cp in el.could_be_from_charset + if cp != el.encoding + ], + el.language, + el.alphabets, + el.bom, + el.percent_chaos, + el.percent_coherence, + None, + False, + ) + ) + + if args.normalize is True: + if best_guess.encoding.startswith("utf") is True: + print( + '"{}" file does not need to be normalized, as it already came from unicode.'.format( + my_file.name + ), + file=sys.stderr, + ) + if my_file.closed is False: + my_file.close() + continue + + dir_path = dirname(realpath(my_file.name)) + file_name = basename(realpath(my_file.name)) + + o_: list[str] = file_name.split(".") + + if args.replace is False: + o_.insert(-1, best_guess.encoding) + if my_file.closed is False: + my_file.close() + elif ( + args.force is False + and query_yes_no( + 'Are you sure to normalize "{}" by replacing it ?'.format( + my_file.name + ), + "no", + ) + is False + ): + if my_file.closed is False: + my_file.close() + continue + + try: + cli_result.unicode_path = join(dir_path, ".".join(o_)) + + with open(cli_result.unicode_path, "wb") as fp: + fp.write(best_guess.output()) + except OSError as e: # Defensive: + print(str(e), file=sys.stderr) + if my_file.closed is False: + my_file.close() + return 2 + + if my_file.closed is False: + my_file.close() + + if args.minimal is False: + print( + dumps( + [el.__dict__ for el in x_] if len(x_) > 1 else x_[0].__dict__, + ensure_ascii=True, + indent=4, + ) + ) + else: + for my_file in args.files: + print( + ", ".join( + [ + el.encoding or "undefined" + for el in x_ + if el.path == abspath(my_file.name) + ] + ) + ) + + return 0 + + +if __name__ == "__main__": # Defensive: + cli_detect() diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/constant.py b/venv/lib/python3.9/site-packages/charset_normalizer/constant.py new file mode 100644 index 0000000..e1297d2 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/constant.py @@ -0,0 +1,2050 @@ +from __future__ import annotations + +from codecs import BOM_UTF8, BOM_UTF16_BE, BOM_UTF16_LE, BOM_UTF32_BE, BOM_UTF32_LE +from encodings.aliases import aliases +from re import IGNORECASE +from re import compile as re_compile + +# Contain for each eligible encoding a list of/item bytes SIG/BOM +ENCODING_MARKS: dict[str, bytes | list[bytes]] = { + "utf_8": BOM_UTF8, + "utf_7": [ + b"\x2b\x2f\x76\x38\x2d", + b"\x2b\x2f\x76\x38", + b"\x2b\x2f\x76\x39", + b"\x2b\x2f\x76\x2b", + b"\x2b\x2f\x76\x2f", + ], + "gb18030": b"\x84\x31\x95\x33", + "utf_32": [BOM_UTF32_BE, BOM_UTF32_LE], + "utf_16": [BOM_UTF16_BE, BOM_UTF16_LE], +} + +TOO_SMALL_SEQUENCE: int = 32 +TOO_BIG_SEQUENCE: int = int(10e6) + +UTF8_MAXIMAL_ALLOCATION: int = 1_112_064 + +# Up-to-date Unicode ucd/17.0.0 +UNICODE_RANGES_COMBINED: dict[str, range] = { + "Control character": range(32), + "Basic Latin": range(32, 128), + "Latin-1 Supplement": range(128, 256), + "Latin Extended-A": range(256, 384), + "Latin Extended-B": range(384, 592), + "IPA Extensions": range(592, 688), + "Spacing Modifier Letters": range(688, 768), + "Combining Diacritical Marks": range(768, 880), + "Greek and Coptic": range(880, 1024), + "Cyrillic": range(1024, 1280), + "Cyrillic Supplement": range(1280, 1328), + "Armenian": range(1328, 1424), + "Hebrew": range(1424, 1536), + "Arabic": range(1536, 1792), + "Syriac": range(1792, 1872), + "Arabic Supplement": range(1872, 1920), + "Thaana": range(1920, 1984), + "NKo": range(1984, 2048), + "Samaritan": range(2048, 2112), + "Mandaic": range(2112, 2144), + "Syriac Supplement": range(2144, 2160), + "Arabic Extended-B": range(2160, 2208), + "Arabic Extended-A": range(2208, 2304), + "Devanagari": range(2304, 2432), + "Bengali": range(2432, 2560), + "Gurmukhi": range(2560, 2688), + "Gujarati": range(2688, 2816), + "Oriya": range(2816, 2944), + "Tamil": range(2944, 3072), + "Telugu": range(3072, 3200), + "Kannada": range(3200, 3328), + "Malayalam": range(3328, 3456), + "Sinhala": range(3456, 3584), + "Thai": range(3584, 3712), + "Lao": range(3712, 3840), + "Tibetan": range(3840, 4096), + "Myanmar": range(4096, 4256), + "Georgian": range(4256, 4352), + "Hangul Jamo": range(4352, 4608), + "Ethiopic": range(4608, 4992), + "Ethiopic Supplement": range(4992, 5024), + "Cherokee": range(5024, 5120), + "Unified Canadian Aboriginal Syllabics": range(5120, 5760), + "Ogham": range(5760, 5792), + "Runic": range(5792, 5888), + "Tagalog": range(5888, 5920), + "Hanunoo": range(5920, 5952), + "Buhid": range(5952, 5984), + "Tagbanwa": range(5984, 6016), + "Khmer": range(6016, 6144), + "Mongolian": range(6144, 6320), + "Unified Canadian Aboriginal Syllabics Extended": range(6320, 6400), + "Limbu": range(6400, 6480), + "Tai Le": range(6480, 6528), + "New Tai Lue": range(6528, 6624), + "Khmer Symbols": range(6624, 6656), + "Buginese": range(6656, 6688), + "Tai Tham": range(6688, 6832), + "Combining Diacritical Marks Extended": range(6832, 6912), + "Balinese": range(6912, 7040), + "Sundanese": range(7040, 7104), + "Batak": range(7104, 7168), + "Lepcha": range(7168, 7248), + "Ol Chiki": range(7248, 7296), + "Cyrillic Extended-C": range(7296, 7312), + "Georgian Extended": range(7312, 7360), + "Sundanese Supplement": range(7360, 7376), + "Vedic Extensions": range(7376, 7424), + "Phonetic Extensions": range(7424, 7552), + "Phonetic Extensions Supplement": range(7552, 7616), + "Combining Diacritical Marks Supplement": range(7616, 7680), + "Latin Extended Additional": range(7680, 7936), + "Greek Extended": range(7936, 8192), + "General Punctuation": range(8192, 8304), + "Superscripts and Subscripts": range(8304, 8352), + "Currency Symbols": range(8352, 8400), + "Combining Diacritical Marks for Symbols": range(8400, 8448), + "Letterlike Symbols": range(8448, 8528), + "Number Forms": range(8528, 8592), + "Arrows": range(8592, 8704), + "Mathematical Operators": range(8704, 8960), + "Miscellaneous Technical": range(8960, 9216), + "Control Pictures": range(9216, 9280), + "Optical Character Recognition": range(9280, 9312), + "Enclosed Alphanumerics": range(9312, 9472), + "Box Drawing": range(9472, 9600), + "Block Elements": range(9600, 9632), + "Geometric Shapes": range(9632, 9728), + "Miscellaneous Symbols": range(9728, 9984), + "Dingbats": range(9984, 10176), + "Miscellaneous Mathematical Symbols-A": range(10176, 10224), + "Supplemental Arrows-A": range(10224, 10240), + "Braille Patterns": range(10240, 10496), + "Supplemental Arrows-B": range(10496, 10624), + "Miscellaneous Mathematical Symbols-B": range(10624, 10752), + "Supplemental Mathematical Operators": range(10752, 11008), + "Miscellaneous Symbols and Arrows": range(11008, 11264), + "Glagolitic": range(11264, 11360), + "Latin Extended-C": range(11360, 11392), + "Coptic": range(11392, 11520), + "Georgian Supplement": range(11520, 11568), + "Tifinagh": range(11568, 11648), + "Ethiopic Extended": range(11648, 11744), + "Cyrillic Extended-A": range(11744, 11776), + "Supplemental Punctuation": range(11776, 11904), + "CJK Radicals Supplement": range(11904, 12032), + "Kangxi Radicals": range(12032, 12256), + "Ideographic Description Characters": range(12272, 12288), + "CJK Symbols and Punctuation": range(12288, 12352), + "Hiragana": range(12352, 12448), + "Katakana": range(12448, 12544), + "Bopomofo": range(12544, 12592), + "Hangul Compatibility Jamo": range(12592, 12688), + "Kanbun": range(12688, 12704), + "Bopomofo Extended": range(12704, 12736), + "CJK Strokes": range(12736, 12784), + "Katakana Phonetic Extensions": range(12784, 12800), + "Enclosed CJK Letters and Months": range(12800, 13056), + "CJK Compatibility": range(13056, 13312), + "CJK Unified Ideographs Extension A": range(13312, 19904), + "Yijing Hexagram Symbols": range(19904, 19968), + "CJK Unified Ideographs": range(19968, 40960), + "Yi Syllables": range(40960, 42128), + "Yi Radicals": range(42128, 42192), + "Lisu": range(42192, 42240), + "Vai": range(42240, 42560), + "Cyrillic Extended-B": range(42560, 42656), + "Bamum": range(42656, 42752), + "Modifier Tone Letters": range(42752, 42784), + "Latin Extended-D": range(42784, 43008), + "Syloti Nagri": range(43008, 43056), + "Common Indic Number Forms": range(43056, 43072), + "Phags-pa": range(43072, 43136), + "Saurashtra": range(43136, 43232), + "Devanagari Extended": range(43232, 43264), + "Kayah Li": range(43264, 43312), + "Rejang": range(43312, 43360), + "Hangul Jamo Extended-A": range(43360, 43392), + "Javanese": range(43392, 43488), + "Myanmar Extended-B": range(43488, 43520), + "Cham": range(43520, 43616), + "Myanmar Extended-A": range(43616, 43648), + "Tai Viet": range(43648, 43744), + "Meetei Mayek Extensions": range(43744, 43776), + "Ethiopic Extended-A": range(43776, 43824), + "Latin Extended-E": range(43824, 43888), + "Cherokee Supplement": range(43888, 43968), + "Meetei Mayek": range(43968, 44032), + "Hangul Syllables": range(44032, 55216), + "Hangul Jamo Extended-B": range(55216, 55296), + "High Surrogates": range(55296, 56192), + "High Private Use Surrogates": range(56192, 56320), + "Low Surrogates": range(56320, 57344), + "Private Use Area": range(57344, 63744), + "CJK Compatibility Ideographs": range(63744, 64256), + "Alphabetic Presentation Forms": range(64256, 64336), + "Arabic Presentation Forms-A": range(64336, 65024), + "Variation Selectors": range(65024, 65040), + "Vertical Forms": range(65040, 65056), + "Combining Half Marks": range(65056, 65072), + "CJK Compatibility Forms": range(65072, 65104), + "Small Form Variants": range(65104, 65136), + "Arabic Presentation Forms-B": range(65136, 65280), + "Halfwidth and Fullwidth Forms": range(65280, 65520), + "Specials": range(65520, 65536), + "Linear B Syllabary": range(65536, 65664), + "Linear B Ideograms": range(65664, 65792), + "Aegean Numbers": range(65792, 65856), + "Ancient Greek Numbers": range(65856, 65936), + "Ancient Symbols": range(65936, 66000), + "Phaistos Disc": range(66000, 66048), + "Lycian": range(66176, 66208), + "Carian": range(66208, 66272), + "Coptic Epact Numbers": range(66272, 66304), + "Old Italic": range(66304, 66352), + "Gothic": range(66352, 66384), + "Old Permic": range(66384, 66432), + "Ugaritic": range(66432, 66464), + "Old Persian": range(66464, 66528), + "Deseret": range(66560, 66640), + "Shavian": range(66640, 66688), + "Osmanya": range(66688, 66736), + "Osage": range(66736, 66816), + "Elbasan": range(66816, 66864), + "Caucasian Albanian": range(66864, 66928), + "Vithkuqi": range(66928, 67008), + "Todhri": range(67008, 67072), + "Linear A": range(67072, 67456), + "Latin Extended-F": range(67456, 67520), + "Cypriot Syllabary": range(67584, 67648), + "Imperial Aramaic": range(67648, 67680), + "Palmyrene": range(67680, 67712), + "Nabataean": range(67712, 67760), + "Hatran": range(67808, 67840), + "Phoenician": range(67840, 67872), + "Lydian": range(67872, 67904), + "Sidetic": range(67904, 67936), + "Meroitic Hieroglyphs": range(67968, 68000), + "Meroitic Cursive": range(68000, 68096), + "Kharoshthi": range(68096, 68192), + "Old South Arabian": range(68192, 68224), + "Old North Arabian": range(68224, 68256), + "Manichaean": range(68288, 68352), + "Avestan": range(68352, 68416), + "Inscriptional Parthian": range(68416, 68448), + "Inscriptional Pahlavi": range(68448, 68480), + "Psalter Pahlavi": range(68480, 68528), + "Old Turkic": range(68608, 68688), + "Old Hungarian": range(68736, 68864), + "Hanifi Rohingya": range(68864, 68928), + "Garay": range(68928, 69008), + "Rumi Numeral Symbols": range(69216, 69248), + "Yezidi": range(69248, 69312), + "Arabic Extended-C": range(69312, 69376), + "Old Sogdian": range(69376, 69424), + "Sogdian": range(69424, 69488), + "Old Uyghur": range(69488, 69552), + "Chorasmian": range(69552, 69600), + "Elymaic": range(69600, 69632), + "Brahmi": range(69632, 69760), + "Kaithi": range(69760, 69840), + "Sora Sompeng": range(69840, 69888), + "Chakma": range(69888, 69968), + "Mahajani": range(69968, 70016), + "Sharada": range(70016, 70112), + "Sinhala Archaic Numbers": range(70112, 70144), + "Khojki": range(70144, 70224), + "Multani": range(70272, 70320), + "Khudawadi": range(70320, 70400), + "Grantha": range(70400, 70528), + "Tulu-Tigalari": range(70528, 70656), + "Newa": range(70656, 70784), + "Tirhuta": range(70784, 70880), + "Siddham": range(71040, 71168), + "Modi": range(71168, 71264), + "Mongolian Supplement": range(71264, 71296), + "Takri": range(71296, 71376), + "Myanmar Extended-C": range(71376, 71424), + "Ahom": range(71424, 71504), + "Dogra": range(71680, 71760), + "Warang Citi": range(71840, 71936), + "Dives Akuru": range(71936, 72032), + "Nandinagari": range(72096, 72192), + "Zanabazar Square": range(72192, 72272), + "Soyombo": range(72272, 72368), + "Unified Canadian Aboriginal Syllabics Extended-A": range(72368, 72384), + "Pau Cin Hau": range(72384, 72448), + "Devanagari Extended-A": range(72448, 72544), + "Sharada Supplement": range(72544, 72576), + "Sunuwar": range(72640, 72704), + "Bhaiksuki": range(72704, 72816), + "Marchen": range(72816, 72896), + "Masaram Gondi": range(72960, 73056), + "Gunjala Gondi": range(73056, 73136), + "Tolong Siki": range(73136, 73200), + "Makasar": range(73440, 73472), + "Kawi": range(73472, 73568), + "Lisu Supplement": range(73648, 73664), + "Tamil Supplement": range(73664, 73728), + "Cuneiform": range(73728, 74752), + "Cuneiform Numbers and Punctuation": range(74752, 74880), + "Early Dynastic Cuneiform": range(74880, 75088), + "Cypro-Minoan": range(77712, 77824), + "Egyptian Hieroglyphs": range(77824, 78896), + "Egyptian Hieroglyph Format Controls": range(78896, 78944), + "Egyptian Hieroglyphs Extended-A": range(78944, 82944), + "Anatolian Hieroglyphs": range(82944, 83584), + "Gurung Khema": range(90368, 90432), + "Bamum Supplement": range(92160, 92736), + "Mro": range(92736, 92784), + "Tangsa": range(92784, 92880), + "Bassa Vah": range(92880, 92928), + "Pahawh Hmong": range(92928, 93072), + "Kirat Rai": range(93504, 93568), + "Medefaidrin": range(93760, 93856), + "Beria Erfe": range(93856, 93920), + "Miao": range(93952, 94112), + "Ideographic Symbols and Punctuation": range(94176, 94208), + "Tangut": range(94208, 100352), + "Tangut Components": range(100352, 101120), + "Khitan Small Script": range(101120, 101632), + "Tangut Supplement": range(101632, 101760), + "Tangut Components Supplement": range(101760, 101888), + "Kana Extended-B": range(110576, 110592), + "Kana Supplement": range(110592, 110848), + "Kana Extended-A": range(110848, 110896), + "Small Kana Extension": range(110896, 110960), + "Nushu": range(110960, 111360), + "Duployan": range(113664, 113824), + "Shorthand Format Controls": range(113824, 113840), + "Symbols for Legacy Computing Supplement": range(117760, 118464), + "Miscellaneous Symbols Supplement": range(118464, 118528), + "Znamenny Musical Notation": range(118528, 118736), + "Byzantine Musical Symbols": range(118784, 119040), + "Musical Symbols": range(119040, 119296), + "Ancient Greek Musical Notation": range(119296, 119376), + "Kaktovik Numerals": range(119488, 119520), + "Mayan Numerals": range(119520, 119552), + "Tai Xuan Jing Symbols": range(119552, 119648), + "Counting Rod Numerals": range(119648, 119680), + "Mathematical Alphanumeric Symbols": range(119808, 120832), + "Sutton SignWriting": range(120832, 121520), + "Latin Extended-G": range(122624, 122880), + "Glagolitic Supplement": range(122880, 122928), + "Cyrillic Extended-D": range(122928, 123024), + "Nyiakeng Puachue Hmong": range(123136, 123216), + "Toto": range(123536, 123584), + "Wancho": range(123584, 123648), + "Nag Mundari": range(124112, 124160), + "Ol Onal": range(124368, 124416), + "Tai Yo": range(124608, 124672), + "Ethiopic Extended-B": range(124896, 124928), + "Mende Kikakui": range(124928, 125152), + "Adlam": range(125184, 125280), + "Indic Siyaq Numbers": range(126064, 126144), + "Ottoman Siyaq Numbers": range(126208, 126288), + "Arabic Mathematical Alphabetic Symbols": range(126464, 126720), + "Mahjong Tiles": range(126976, 127024), + "Domino Tiles": range(127024, 127136), + "Playing Cards": range(127136, 127232), + "Enclosed Alphanumeric Supplement": range(127232, 127488), + "Enclosed Ideographic Supplement": range(127488, 127744), + "Miscellaneous Symbols and Pictographs": range(127744, 128512), + "Emoticons": range(128512, 128592), + "Ornamental Dingbats": range(128592, 128640), + "Transport and Map Symbols": range(128640, 128768), + "Alchemical Symbols": range(128768, 128896), + "Geometric Shapes Extended": range(128896, 129024), + "Supplemental Arrows-C": range(129024, 129280), + "Supplemental Symbols and Pictographs": range(129280, 129536), + "Chess Symbols": range(129536, 129648), + "Symbols and Pictographs Extended-A": range(129648, 129792), + "Symbols for Legacy Computing": range(129792, 130048), + "CJK Unified Ideographs Extension B": range(131072, 173792), + "CJK Unified Ideographs Extension C": range(173824, 177984), + "CJK Unified Ideographs Extension D": range(177984, 178208), + "CJK Unified Ideographs Extension E": range(178208, 183984), + "CJK Unified Ideographs Extension F": range(183984, 191472), + "CJK Unified Ideographs Extension I": range(191472, 192096), + "CJK Compatibility Ideographs Supplement": range(194560, 195104), + "CJK Unified Ideographs Extension G": range(196608, 201552), + "CJK Unified Ideographs Extension H": range(201552, 205744), + "CJK Unified Ideographs Extension J": range(205744, 210048), + "Tags": range(917504, 917632), + "Variation Selectors Supplement": range(917760, 918000), + "Supplementary Private Use Area-A": range(983040, 1048576), + "Supplementary Private Use Area-B": range(1048576, 1114112), +} + + +UNICODE_SECONDARY_RANGE_KEYWORD: list[str] = [ + "Supplement", + "Extended", + "Extensions", + "Modifier", + "Marks", + "Punctuation", + "Symbols", + "Forms", + "Operators", + "Miscellaneous", + "Drawing", + "Block", + "Shapes", + "Supplemental", + "Tags", +] + +RE_POSSIBLE_ENCODING_INDICATION = re_compile( + r"(?:(?:encoding)|(?:charset)|(?:coding))(?:[\:= ]{1,10})(?:[\"\']?)([a-zA-Z0-9\-_]+)(?:[\"\']?)", + IGNORECASE, +) + +IANA_NO_ALIASES = [ + "cp720", + "cp737", + "cp856", + "cp874", + "cp875", + "cp1006", + "koi8_r", + "koi8_t", + "koi8_u", +] + +IANA_SUPPORTED: list[str] = sorted( + filter( + lambda x: x.endswith("_codec") is False + and x not in {"rot_13", "tactis", "mbcs"}, + list(set(aliases.values())) + IANA_NO_ALIASES, + ) +) + +IANA_SUPPORTED_COUNT: int = len(IANA_SUPPORTED) + +# pre-computed code page that are similar using the function cp_similarity. +IANA_SUPPORTED_SIMILAR: dict[str, list[str]] = { + "cp037": ["cp1026", "cp1140", "cp273", "cp500"], + "cp1026": ["cp037", "cp1140", "cp273", "cp500"], + "cp1125": ["cp866"], + "cp1140": ["cp037", "cp1026", "cp273", "cp500"], + "cp1250": ["iso8859_2"], + "cp1251": ["kz1048", "ptcp154"], + "cp1252": ["iso8859_15", "iso8859_9", "latin_1"], + "cp1253": ["iso8859_7"], + "cp1254": ["iso8859_15", "iso8859_9", "latin_1"], + "cp1257": ["iso8859_13"], + "cp273": ["cp037", "cp1026", "cp1140", "cp500"], + "cp437": ["cp850", "cp858", "cp860", "cp861", "cp862", "cp863", "cp865"], + "cp500": ["cp037", "cp1026", "cp1140", "cp273"], + "cp850": ["cp437", "cp857", "cp858", "cp865"], + "cp857": ["cp850", "cp858", "cp865"], + "cp858": ["cp437", "cp850", "cp857", "cp865"], + "cp860": ["cp437", "cp861", "cp862", "cp863", "cp865"], + "cp861": ["cp437", "cp860", "cp862", "cp863", "cp865"], + "cp862": ["cp437", "cp860", "cp861", "cp863", "cp865"], + "cp863": ["cp437", "cp860", "cp861", "cp862", "cp865"], + "cp865": ["cp437", "cp850", "cp857", "cp858", "cp860", "cp861", "cp862", "cp863"], + "cp866": ["cp1125"], + "iso8859_10": ["iso8859_14", "iso8859_15", "iso8859_4", "iso8859_9", "latin_1"], + "iso8859_11": ["tis_620"], + "iso8859_13": ["cp1257"], + "iso8859_14": [ + "iso8859_10", + "iso8859_15", + "iso8859_16", + "iso8859_3", + "iso8859_9", + "latin_1", + ], + "iso8859_15": [ + "cp1252", + "cp1254", + "iso8859_10", + "iso8859_14", + "iso8859_16", + "iso8859_3", + "iso8859_9", + "latin_1", + ], + "iso8859_16": [ + "iso8859_14", + "iso8859_15", + "iso8859_2", + "iso8859_3", + "iso8859_9", + "latin_1", + ], + "iso8859_2": ["cp1250", "iso8859_16", "iso8859_4"], + "iso8859_3": ["iso8859_14", "iso8859_15", "iso8859_16", "iso8859_9", "latin_1"], + "iso8859_4": ["iso8859_10", "iso8859_2", "iso8859_9", "latin_1"], + "iso8859_7": ["cp1253"], + "iso8859_9": [ + "cp1252", + "cp1254", + "cp1258", + "iso8859_10", + "iso8859_14", + "iso8859_15", + "iso8859_16", + "iso8859_3", + "iso8859_4", + "latin_1", + ], + "kz1048": ["cp1251", "ptcp154"], + "latin_1": [ + "cp1252", + "cp1254", + "cp1258", + "iso8859_10", + "iso8859_14", + "iso8859_15", + "iso8859_16", + "iso8859_3", + "iso8859_4", + "iso8859_9", + ], + "mac_iceland": ["mac_roman", "mac_turkish"], + "mac_roman": ["mac_iceland", "mac_turkish"], + "mac_turkish": ["mac_iceland", "mac_roman"], + "ptcp154": ["cp1251", "kz1048"], + "tis_620": ["iso8859_11"], +} + + +CHARDET_CORRESPONDENCE: dict[str, str] = { + "iso2022_kr": "ISO-2022-KR", + "iso2022_jp": "ISO-2022-JP", + "euc_kr": "EUC-KR", + "tis_620": "TIS-620", + "utf_32": "UTF-32", + "euc_jp": "EUC-JP", + "koi8_r": "KOI8-R", + "iso8859_1": "ISO-8859-1", + "iso8859_2": "ISO-8859-2", + "iso8859_5": "ISO-8859-5", + "iso8859_6": "ISO-8859-6", + "iso8859_7": "ISO-8859-7", + "iso8859_8": "ISO-8859-8", + "utf_16": "UTF-16", + "cp855": "IBM855", + "mac_cyrillic": "MacCyrillic", + "gb2312": "GB2312", + "gb18030": "GB18030", + "cp932": "CP932", + "cp866": "IBM866", + "utf_8": "utf-8", + "utf_8_sig": "UTF-8-SIG", + "shift_jis": "SHIFT_JIS", + "big5": "Big5", + "cp1250": "windows-1250", + "cp1251": "windows-1251", + "cp1252": "Windows-1252", + "cp1253": "windows-1253", + "cp1255": "windows-1255", + "cp1256": "windows-1256", + "cp1254": "Windows-1254", + "cp949": "CP949", +} + + +COMMON_SAFE_ASCII_CHARACTERS: frozenset[str] = frozenset( + { + "<", + ">", + "=", + ":", + "/", + "&", + ";", + "{", + "}", + "[", + "]", + ",", + "|", + '"', + "-", + "(", + ")", + } +) + +# Sample character sets — replace with full lists if needed +COMMON_CHINESE_CHARACTERS = "的一是在不了有和人这中大为上个国我以要他时来用们生到作地于出就分对成会可主发年动同工也能下过子说产种面而方后多定行学法所民得经十三之进着等部度家电力里如水化高自二理起小物现实加量都两体制机当使点从业本去把性好应开它合还因由其些然前外天政四日那社义事平形相全表间样与关各重新线内数正心反你明看原又么利比或但质气第向道命此变条只没结解问意建月公无系军很情者最立代想已通并提直题党程展五果料象员革位入常文总次品式活设及管特件长求老头基资边流路级少图山统接知较将组见计别她手角期根论运农指几九区强放决西被干做必战先回则任取据处队南给色光门即保治北造百规热领七海口东导器压志世金增争济阶油思术极交受联什认六共权收证改清己美再采转更单风切打白教速花带安场身车例真务具万每目至达走积示议声报斗完类八离华名确才科张信马节话米整空元况今集温传土许步群广石记需段研界拉林律叫且究观越织装影算低持音众书布复容儿须际商非验连断深难近矿千周委素技备半办青省列习响约支般史感劳便团往酸历市克何除消构府太准精值号率族维划选标写存候毛亲快效斯院查江型眼王按格养易置派层片始却专状育厂京识适属圆包火住调满县局照参红细引听该铁价严龙飞" + +COMMON_JAPANESE_CHARACTERS = "日一国年大十二本中長出三時行見月分後前生五間上東四今金九入学高円子外八六下来気小七山話女北午百書先名川千水半男西電校語土木聞食車何南万毎白天母火右読友左休父雨" + +COMMON_KOREAN_CHARACTERS = "一二三四五六七八九十百千萬上下左右中人女子大小山川日月火水木金土父母天地國名年時文校學生" + +# Combine all into a frozenset +COMMON_CJK_CHARACTERS = frozenset( + "".join( + [ + COMMON_CHINESE_CHARACTERS, + COMMON_JAPANESE_CHARACTERS, + COMMON_KOREAN_CHARACTERS, + ] + ) +) + +KO_NAMES: frozenset[str] = frozenset({"johab", "cp949", "euc_kr"}) +ZH_NAMES: frozenset[str] = frozenset({"big5", "cp950", "big5hkscs", "hz"}) + +# Logging LEVEL below DEBUG +TRACE: int = 5 + + +# Language label that contain the em dash "—" +# character are to be considered alternative seq to origin +FREQUENCIES: dict[str, list[str]] = { + "English": [ + "e", + "a", + "t", + "i", + "o", + "n", + "s", + "r", + "h", + "l", + "d", + "c", + "u", + "m", + "f", + "p", + "g", + "w", + "y", + "b", + "v", + "k", + "x", + "j", + "z", + "q", + ], + "English—": [ + "e", + "a", + "t", + "i", + "o", + "n", + "s", + "r", + "h", + "l", + "d", + "c", + "m", + "u", + "f", + "p", + "g", + "w", + "b", + "y", + "v", + "k", + "j", + "x", + "z", + "q", + ], + "German": [ + "e", + "n", + "i", + "r", + "s", + "t", + "a", + "d", + "h", + "u", + "l", + "g", + "o", + "c", + "m", + "b", + "f", + "k", + "w", + "z", + "p", + "v", + "ü", + "ä", + "ö", + "j", + ], + "French": [ + "e", + "a", + "s", + "n", + "i", + "t", + "r", + "l", + "u", + "o", + "d", + "c", + "p", + "m", + "é", + "v", + "g", + "f", + "b", + "h", + "q", + "à", + "x", + "è", + "y", + "j", + ], + "Dutch": [ + "e", + "n", + "a", + "i", + "r", + "t", + "o", + "d", + "s", + "l", + "g", + "h", + "v", + "m", + "u", + "k", + "c", + "p", + "b", + "w", + "j", + "z", + "f", + "y", + "x", + "ë", + ], + "Italian": [ + "e", + "i", + "a", + "o", + "n", + "l", + "t", + "r", + "s", + "c", + "d", + "u", + "p", + "m", + "g", + "v", + "f", + "b", + "z", + "h", + "q", + "è", + "à", + "k", + "y", + "ò", + ], + "Polish": [ + "a", + "i", + "o", + "e", + "n", + "r", + "z", + "w", + "s", + "c", + "t", + "k", + "y", + "d", + "p", + "m", + "u", + "l", + "j", + "ł", + "g", + "b", + "h", + "ą", + "ę", + "ó", + ], + "Spanish": [ + "e", + "a", + "o", + "n", + "s", + "r", + "i", + "l", + "d", + "t", + "c", + "u", + "m", + "p", + "b", + "g", + "v", + "f", + "y", + "ó", + "h", + "q", + "í", + "j", + "z", + "á", + ], + "Russian": [ + "о", + "е", + "а", + "и", + "н", + "т", + "с", + "р", + "в", + "л", + "к", + "м", + "д", + "п", + "у", + "г", + "я", + "ы", + "з", + "б", + "й", + "ь", + "ч", + "х", + "ж", + "ц", + ], + # Jap-Kanji + "Japanese": [ + "日", + "一", + "人", + "年", + "大", + "十", + "二", + "本", + "中", + "長", + "出", + "三", + "時", + "行", + "見", + "月", + "分", + "後", + "前", + "生", + "五", + "間", + "上", + "東", + "四", + "今", + "金", + "九", + "入", + "学", + "高", + "円", + "子", + "外", + "八", + "六", + "下", + "来", + "気", + "小", + "七", + "山", + "話", + "女", + "北", + "午", + "百", + "書", + "先", + "名", + "川", + "千", + "水", + "半", + "男", + "西", + "電", + "校", + "語", + "土", + "木", + "聞", + "食", + "車", + "何", + "南", + "万", + "毎", + "白", + "天", + "母", + "火", + "右", + "読", + "友", + "左", + "休", + "父", + "雨", + ], + # Jap-Katakana + "Japanese—": [ + "ー", + "ン", + "ス", + "・", + "ル", + "ト", + "リ", + "イ", + "ア", + "ラ", + "ッ", + "ク", + "ド", + "シ", + "レ", + "ジ", + "タ", + "フ", + "ロ", + "カ", + "テ", + "マ", + "ィ", + "グ", + "バ", + "ム", + "プ", + "オ", + "コ", + "デ", + "ニ", + "ウ", + "メ", + "サ", + "ビ", + "ナ", + "ブ", + "ャ", + "エ", + "ュ", + "チ", + "キ", + "ズ", + "ダ", + "パ", + "ミ", + "ェ", + "ョ", + "ハ", + "セ", + "ベ", + "ガ", + "モ", + "ツ", + "ネ", + "ボ", + "ソ", + "ノ", + "ァ", + "ヴ", + "ワ", + "ポ", + "ペ", + "ピ", + "ケ", + "ゴ", + "ギ", + "ザ", + "ホ", + "ゲ", + "ォ", + "ヤ", + "ヒ", + "ユ", + "ヨ", + "ヘ", + "ゼ", + "ヌ", + "ゥ", + "ゾ", + "ヶ", + "ヂ", + "ヲ", + "ヅ", + "ヵ", + "ヱ", + "ヰ", + "ヮ", + "ヽ", + "゠", + "ヾ", + "ヷ", + "ヿ", + "ヸ", + "ヹ", + "ヺ", + ], + # Jap-Hiragana + "Japanese——": [ + "の", + "に", + "る", + "た", + "と", + "は", + "し", + "い", + "を", + "で", + "て", + "が", + "な", + "れ", + "か", + "ら", + "さ", + "っ", + "り", + "す", + "あ", + "も", + "こ", + "ま", + "う", + "く", + "よ", + "き", + "ん", + "め", + "お", + "け", + "そ", + "つ", + "だ", + "や", + "え", + "ど", + "わ", + "ち", + "み", + "せ", + "じ", + "ば", + "へ", + "び", + "ず", + "ろ", + "ほ", + "げ", + "む", + "べ", + "ひ", + "ょ", + "ゆ", + "ぶ", + "ご", + "ゃ", + "ね", + "ふ", + "ぐ", + "ぎ", + "ぼ", + "ゅ", + "づ", + "ざ", + "ぞ", + "ぬ", + "ぜ", + "ぱ", + "ぽ", + "ぷ", + "ぴ", + "ぃ", + "ぁ", + "ぇ", + "ぺ", + "ゞ", + "ぢ", + "ぉ", + "ぅ", + "ゐ", + "ゝ", + "ゑ", + "゛", + "゜", + "ゎ", + "ゔ", + "゚", + "ゟ", + "゙", + "ゕ", + "ゖ", + ], + "Portuguese": [ + "a", + "e", + "o", + "s", + "i", + "r", + "d", + "n", + "t", + "m", + "u", + "c", + "l", + "p", + "g", + "v", + "b", + "f", + "h", + "ã", + "q", + "é", + "ç", + "á", + "z", + "í", + ], + "Swedish": [ + "e", + "a", + "n", + "r", + "t", + "s", + "i", + "l", + "d", + "o", + "m", + "k", + "g", + "v", + "h", + "f", + "u", + "p", + "ä", + "c", + "b", + "ö", + "å", + "y", + "j", + "x", + ], + "Chinese": [ + "的", + "一", + "是", + "不", + "了", + "在", + "人", + "有", + "我", + "他", + "这", + "个", + "们", + "中", + "来", + "上", + "大", + "为", + "和", + "国", + "地", + "到", + "以", + "说", + "时", + "要", + "就", + "出", + "会", + "可", + "也", + "你", + "对", + "生", + "能", + "而", + "子", + "那", + "得", + "于", + "着", + "下", + "自", + "之", + "年", + "过", + "发", + "后", + "作", + "里", + "用", + "道", + "行", + "所", + "然", + "家", + "种", + "事", + "成", + "方", + "多", + "经", + "么", + "去", + "法", + "学", + "如", + "都", + "同", + "现", + "当", + "没", + "动", + "面", + "起", + "看", + "定", + "天", + "分", + "还", + "进", + "好", + "小", + "部", + "其", + "些", + "主", + "样", + "理", + "心", + "她", + "本", + "前", + "开", + "但", + "因", + "只", + "从", + "想", + "实", + ], + "Ukrainian": [ + "о", + "а", + "н", + "і", + "и", + "р", + "в", + "т", + "е", + "с", + "к", + "л", + "у", + "д", + "м", + "п", + "з", + "я", + "ь", + "б", + "г", + "й", + "ч", + "х", + "ц", + "ї", + ], + "Norwegian": [ + "e", + "r", + "n", + "t", + "a", + "s", + "i", + "o", + "l", + "d", + "g", + "k", + "m", + "v", + "f", + "p", + "u", + "b", + "h", + "å", + "y", + "j", + "ø", + "c", + "æ", + "w", + ], + "Finnish": [ + "a", + "i", + "n", + "t", + "e", + "s", + "l", + "o", + "u", + "k", + "ä", + "m", + "r", + "v", + "j", + "h", + "p", + "y", + "d", + "ö", + "g", + "c", + "b", + "f", + "w", + "z", + ], + "Vietnamese": [ + "n", + "h", + "t", + "i", + "c", + "g", + "a", + "o", + "u", + "m", + "l", + "r", + "à", + "đ", + "s", + "e", + "v", + "p", + "b", + "y", + "ư", + "d", + "á", + "k", + "ộ", + "ế", + ], + "Czech": [ + "o", + "e", + "a", + "n", + "t", + "s", + "i", + "l", + "v", + "r", + "k", + "d", + "u", + "m", + "p", + "í", + "c", + "h", + "z", + "á", + "y", + "j", + "b", + "ě", + "é", + "ř", + ], + "Hungarian": [ + "e", + "a", + "t", + "l", + "s", + "n", + "k", + "r", + "i", + "o", + "z", + "á", + "é", + "g", + "m", + "b", + "y", + "v", + "d", + "h", + "u", + "p", + "j", + "ö", + "f", + "c", + ], + "Korean": [ + "이", + "다", + "에", + "의", + "는", + "로", + "하", + "을", + "가", + "고", + "지", + "서", + "한", + "은", + "기", + "으", + "년", + "대", + "사", + "시", + "를", + "리", + "도", + "인", + "스", + "일", + ], + "Indonesian": [ + "a", + "n", + "e", + "i", + "r", + "t", + "u", + "s", + "d", + "k", + "m", + "l", + "g", + "p", + "b", + "o", + "h", + "y", + "j", + "c", + "w", + "f", + "v", + "z", + "x", + "q", + ], + "Turkish": [ + "a", + "e", + "i", + "n", + "r", + "l", + "ı", + "k", + "d", + "t", + "s", + "m", + "y", + "u", + "o", + "b", + "ü", + "ş", + "v", + "g", + "z", + "h", + "c", + "p", + "ç", + "ğ", + ], + "Romanian": [ + "e", + "i", + "a", + "r", + "n", + "t", + "u", + "l", + "o", + "c", + "s", + "d", + "p", + "m", + "ă", + "f", + "v", + "î", + "g", + "b", + "ș", + "ț", + "z", + "h", + "â", + "j", + ], + "Farsi": [ + "ا", + "ی", + "ر", + "د", + "ن", + "ه", + "و", + "م", + "ت", + "ب", + "س", + "ل", + "ک", + "ش", + "ز", + "ف", + "گ", + "ع", + "خ", + "ق", + "ج", + "آ", + "پ", + "ح", + "ط", + "ص", + ], + "Arabic": [ + "ا", + "ل", + "ي", + "م", + "و", + "ن", + "ر", + "ت", + "ب", + "ة", + "ع", + "د", + "س", + "ف", + "ه", + "ك", + "ق", + "أ", + "ح", + "ج", + "ش", + "ط", + "ص", + "ى", + "خ", + "إ", + ], + "Danish": [ + "e", + "r", + "n", + "t", + "a", + "i", + "s", + "d", + "l", + "o", + "g", + "m", + "k", + "f", + "v", + "u", + "b", + "h", + "p", + "å", + "y", + "ø", + "æ", + "c", + "j", + "w", + ], + "Serbian": [ + "а", + "и", + "о", + "е", + "н", + "р", + "с", + "у", + "т", + "к", + "ј", + "в", + "д", + "м", + "п", + "л", + "г", + "з", + "б", + "a", + "i", + "e", + "o", + "n", + "ц", + "ш", + ], + "Lithuanian": [ + "i", + "a", + "s", + "o", + "r", + "e", + "t", + "n", + "u", + "k", + "m", + "l", + "p", + "v", + "d", + "j", + "g", + "ė", + "b", + "y", + "ų", + "š", + "ž", + "c", + "ą", + "į", + ], + "Slovene": [ + "e", + "a", + "i", + "o", + "n", + "r", + "s", + "l", + "t", + "j", + "v", + "k", + "d", + "p", + "m", + "u", + "z", + "b", + "g", + "h", + "č", + "c", + "š", + "ž", + "f", + "y", + ], + "Slovak": [ + "o", + "a", + "e", + "n", + "i", + "r", + "v", + "t", + "s", + "l", + "k", + "d", + "m", + "p", + "u", + "c", + "h", + "j", + "b", + "z", + "á", + "y", + "ý", + "í", + "č", + "é", + ], + "Hebrew": [ + "י", + "ו", + "ה", + "ל", + "ר", + "ב", + "ת", + "מ", + "א", + "ש", + "נ", + "ע", + "ם", + "ד", + "ק", + "ח", + "פ", + "ס", + "כ", + "ג", + "ט", + "צ", + "ן", + "ז", + "ך", + ], + "Bulgarian": [ + "а", + "и", + "о", + "е", + "н", + "т", + "р", + "с", + "в", + "л", + "к", + "д", + "п", + "м", + "з", + "г", + "я", + "ъ", + "у", + "б", + "ч", + "ц", + "й", + "ж", + "щ", + "х", + ], + "Croatian": [ + "a", + "i", + "o", + "e", + "n", + "r", + "j", + "s", + "t", + "u", + "k", + "l", + "v", + "d", + "m", + "p", + "g", + "z", + "b", + "c", + "č", + "h", + "š", + "ž", + "ć", + "f", + ], + "Hindi": [ + "क", + "र", + "स", + "न", + "त", + "म", + "ह", + "प", + "य", + "ल", + "व", + "ज", + "द", + "ग", + "ब", + "श", + "ट", + "अ", + "ए", + "थ", + "भ", + "ड", + "च", + "ध", + "ष", + "इ", + ], + "Estonian": [ + "a", + "i", + "e", + "s", + "t", + "l", + "u", + "n", + "o", + "k", + "r", + "d", + "m", + "v", + "g", + "p", + "j", + "h", + "ä", + "b", + "õ", + "ü", + "f", + "c", + "ö", + "y", + ], + "Thai": [ + "า", + "น", + "ร", + "อ", + "ก", + "เ", + "ง", + "ม", + "ย", + "ล", + "ว", + "ด", + "ท", + "ส", + "ต", + "ะ", + "ป", + "บ", + "ค", + "ห", + "แ", + "จ", + "พ", + "ช", + "ข", + "ใ", + ], + "Greek": [ + "α", + "τ", + "ο", + "ι", + "ε", + "ν", + "ρ", + "σ", + "κ", + "η", + "π", + "ς", + "υ", + "μ", + "λ", + "ί", + "ό", + "ά", + "γ", + "έ", + "δ", + "ή", + "ω", + "χ", + "θ", + "ύ", + ], + "Tamil": [ + "க", + "த", + "ப", + "ட", + "ர", + "ம", + "ல", + "ன", + "வ", + "ற", + "ய", + "ள", + "ச", + "ந", + "இ", + "ண", + "அ", + "ஆ", + "ழ", + "ங", + "எ", + "உ", + "ஒ", + "ஸ", + ], + "Kazakh": [ + "а", + "ы", + "е", + "н", + "т", + "р", + "л", + "і", + "д", + "с", + "м", + "қ", + "к", + "о", + "б", + "и", + "у", + "ғ", + "ж", + "ң", + "з", + "ш", + "й", + "п", + "г", + "ө", + ], +} + +LANGUAGE_SUPPORTED_COUNT: int = len(FREQUENCIES) + +# Bit flags for unified character classification. +# A single unicodedata.name() call sets all relevant flags at once. +_LATIN: int = 1 +_ACCENTUATED: int = 1 << 1 +_CJK: int = 1 << 2 +_HANGUL: int = 1 << 3 +_KATAKANA: int = 1 << 4 +_HIRAGANA: int = 1 << 5 +_THAI: int = 1 << 6 +_ARABIC: int = 1 << 7 +_ARABIC_ISOLATED_FORM: int = 1 << 8 + +_ACCENT_KEYWORDS: tuple[str, ...] = ( + "WITH GRAVE", + "WITH ACUTE", + "WITH CEDILLA", + "WITH DIAERESIS", + "WITH CIRCUMFLEX", + "WITH TILDE", + "WITH MACRON", + "WITH RING ABOVE", +) + +# Pre-built lookup structures for FREQUENCIES (computed once at import time). +# character -> rank mapping per language (replaces list .index() calls). +_FREQUENCIES_RANK: dict[str, dict[str, int]] = { + lang: {char: rank for rank, char in enumerate(chars)} + for lang, chars in FREQUENCIES.items() +} + +# frozenset per language (avoids rebuilding set() per call). +_FREQUENCIES_SET: dict[str, frozenset[str]] = { + lang: frozenset(chars) for lang, chars in FREQUENCIES.items() +} diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/legacy.py b/venv/lib/python3.9/site-packages/charset_normalizer/legacy.py new file mode 100644 index 0000000..293c1ef --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/legacy.py @@ -0,0 +1,79 @@ +from __future__ import annotations + +from typing import TYPE_CHECKING, Any +from warnings import warn + +from .api import from_bytes +from .constant import CHARDET_CORRESPONDENCE, TOO_SMALL_SEQUENCE + +if TYPE_CHECKING: + from typing import TypedDict + + class ResultDict(TypedDict): + encoding: str | None + language: str + confidence: float | None + + +def detect( + byte_str: bytes, should_rename_legacy: bool = False, **kwargs: Any +) -> ResultDict: + """ + chardet legacy method + Detect the encoding of the given byte string. It should be mostly backward-compatible. + Encoding name will match Chardet own writing whenever possible. (Not on encoding name unsupported by it) + This function is deprecated and should be used to migrate your project easily, consult the documentation for + further information. Not planned for removal. + + :param byte_str: The byte sequence to examine. + :param should_rename_legacy: Should we rename legacy encodings + to their more modern equivalents? + """ + if len(kwargs): + warn( + f"charset-normalizer disregard arguments '{','.join(list(kwargs.keys()))}' in legacy function detect()" + ) + + if not isinstance(byte_str, (bytearray, bytes)): + raise TypeError( # pragma: nocover + f"Expected object of type bytes or bytearray, got: {type(byte_str)}" + ) + + if isinstance(byte_str, bytearray): + byte_str = bytes(byte_str) + + r = from_bytes(byte_str).best() + + encoding = r.encoding if r is not None else None + language = r.language if r is not None and r.language != "Unknown" else "" + confidence = 1.0 - r.chaos if r is not None else None + + # automatically lower confidence + # on small bytes samples. + # https://github.com/jawah/charset_normalizer/issues/391 + if ( + confidence is not None + and confidence >= 0.9 + and encoding + not in { + "utf_8", + "ascii", + } + and r.bom is False # type: ignore[union-attr] + and len(byte_str) < TOO_SMALL_SEQUENCE + ): + confidence -= 0.2 + + # Note: CharsetNormalizer does not return 'UTF-8-SIG' as the sig get stripped in the detection/normalization process + # but chardet does return 'utf-8-sig' and it is a valid codec name. + if r is not None and encoding == "utf_8" and r.bom: + encoding += "_sig" + + if should_rename_legacy is False and encoding in CHARDET_CORRESPONDENCE: + encoding = CHARDET_CORRESPONDENCE[encoding] + + return { + "encoding": encoding, + "language": language, + "confidence": confidence, + } diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/md.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/charset_normalizer/md.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..55128423488bd10dd78bfc64fe4666fba8a146a3 GIT binary patch literal 15912 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 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/md.py b/venv/lib/python3.9/site-packages/charset_normalizer/md.py new file mode 100644 index 0000000..b41d9cf --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/md.py @@ -0,0 +1,936 @@ +from __future__ import annotations + +import sys +from functools import lru_cache +from logging import getLogger + +if sys.version_info >= (3, 8): + from typing import final +else: + try: + from typing_extensions import final + except ImportError: + + def final(cls): # type: ignore[misc,no-untyped-def] + return cls + + +from .constant import ( + COMMON_CJK_CHARACTERS, + COMMON_SAFE_ASCII_CHARACTERS, + TRACE, + UNICODE_SECONDARY_RANGE_KEYWORD, + _ACCENTUATED, + _ARABIC, + _ARABIC_ISOLATED_FORM, + _CJK, + _HANGUL, + _HIRAGANA, + _KATAKANA, + _LATIN, + _THAI, +) +from .utils import ( + _character_flags, + is_emoticon, + is_punctuation, + is_separator, + is_symbol, + remove_accent, + unicode_range, +) + +# Combined bitmask for CJK/Hangul/Katakana/Hiragana/Thai glyph detection. +_GLYPH_MASK: int = _CJK | _HANGUL | _KATAKANA | _HIRAGANA | _THAI + + +@final +class CharInfo: + """Pre-computed character properties shared across all detectors. + + Instantiated once and reused via :meth:`update` on every character + in the hot loop so that redundant calls to str methods + (``isalpha``, ``isupper``, …) and cached utility functions + (``_character_flags``, ``is_punctuation``, …) are avoided when + several plugins need the same information. + """ + + __slots__ = ( + "character", + "printable", + "alpha", + "upper", + "lower", + "space", + "digit", + "is_ascii", + "case_variable", + "flags", + "accentuated", + "latin", + "is_cjk", + "is_arabic", + "is_glyph", + "punct", + "sym", + ) + + def __init__(self) -> None: + self.character: str = "" + self.printable: bool = False + self.alpha: bool = False + self.upper: bool = False + self.lower: bool = False + self.space: bool = False + self.digit: bool = False + self.is_ascii: bool = False + self.case_variable: bool = False + self.flags: int = 0 + self.accentuated: bool = False + self.latin: bool = False + self.is_cjk: bool = False + self.is_arabic: bool = False + self.is_glyph: bool = False + self.punct: bool = False + self.sym: bool = False + + def update(self, character: str) -> None: + """Update all properties for *character* (called once per character).""" + self.character = character + + # ASCII fast-path: for characters with ord < 128, we can skip + # _character_flags() entirely and derive most properties from ord. + o: int = ord(character) + if o < 128: + self.is_ascii = True + self.accentuated = False + self.is_cjk = False + self.is_arabic = False + self.is_glyph = False + # ASCII alpha: a-z (97-122) or A-Z (65-90) + if 65 <= o <= 90: + # Uppercase ASCII letter + self.alpha = True + self.upper = True + self.lower = False + self.space = False + self.digit = False + self.printable = True + self.case_variable = True + self.flags = _LATIN + self.latin = True + self.punct = False + self.sym = False + elif 97 <= o <= 122: + # Lowercase ASCII letter + self.alpha = True + self.upper = False + self.lower = True + self.space = False + self.digit = False + self.printable = True + self.case_variable = True + self.flags = _LATIN + self.latin = True + self.punct = False + self.sym = False + elif 48 <= o <= 57: + # ASCII digit 0-9 + self.alpha = False + self.upper = False + self.lower = False + self.space = False + self.digit = True + self.printable = True + self.case_variable = False + self.flags = 0 + self.latin = False + self.punct = False + self.sym = False + elif o == 32 or (9 <= o <= 13): + # Space, tab, newline, etc. + self.alpha = False + self.upper = False + self.lower = False + self.space = True + self.digit = False + self.printable = o == 32 + self.case_variable = False + self.flags = 0 + self.latin = False + self.punct = False + self.sym = False + else: + # Other ASCII (punctuation, symbols, control chars) + self.printable = character.isprintable() + self.alpha = False + self.upper = False + self.lower = False + self.space = False + self.digit = False + self.case_variable = False + self.flags = 0 + self.latin = False + self.punct = is_punctuation(character) if self.printable else False + self.sym = is_symbol(character) if self.printable else False + else: + # Non-ASCII path + self.is_ascii = False + self.printable = character.isprintable() + self.alpha = character.isalpha() + self.upper = character.isupper() + self.lower = character.islower() + self.space = character.isspace() + self.digit = character.isdigit() + self.case_variable = self.lower != self.upper + + # Flag-based classification (single unicodedata.name() call, lru-cached) + flags: int + if self.alpha: + flags = _character_flags(character) + else: + flags = 0 + self.flags = flags + self.accentuated = bool(flags & _ACCENTUATED) + self.latin = bool(flags & _LATIN) + self.is_cjk = bool(flags & _CJK) + self.is_arabic = bool(flags & _ARABIC) + self.is_glyph = bool(flags & _GLYPH_MASK) + + # Eagerly compute punct and sym (avoids property dispatch overhead + # on 300K+ accesses in the hot loop). + self.punct = is_punctuation(character) if self.printable else False + self.sym = is_symbol(character) if self.printable else False + + +class MessDetectorPlugin: + """ + Base abstract class used for mess detection plugins. + All detectors MUST extend and implement given methods. + """ + + __slots__ = () + + def feed_info(self, character: str, info: CharInfo) -> None: + """ + The main routine to be executed upon character. + Insert the logic in witch the text would be considered chaotic. + """ + raise NotImplementedError # Defensive: + + def reset(self) -> None: # Defensive: + """ + Permit to reset the plugin to the initial state. + """ + raise NotImplementedError + + @property + def ratio(self) -> float: + """ + Compute the chaos ratio based on what your feed() has seen. + Must NOT be lower than 0.; No restriction gt 0. + """ + raise NotImplementedError # Defensive: + + +@final +class TooManySymbolOrPunctuationPlugin(MessDetectorPlugin): + __slots__ = ( + "_punctuation_count", + "_symbol_count", + "_character_count", + "_last_printable_char", + "_frenzy_symbol_in_word", + ) + + def __init__(self) -> None: + self._punctuation_count: int = 0 + self._symbol_count: int = 0 + self._character_count: int = 0 + + self._last_printable_char: str | None = None + self._frenzy_symbol_in_word: bool = False + + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + self._character_count += 1 + + if ( + character != self._last_printable_char + and character not in COMMON_SAFE_ASCII_CHARACTERS + ): + if info.punct: + self._punctuation_count += 1 + elif not info.digit and info.sym and not is_emoticon(character): + self._symbol_count += 2 + + self._last_printable_char = character + + def reset(self) -> None: # Abstract + self._punctuation_count = 0 + self._character_count = 0 + self._symbol_count = 0 + + @property + def ratio(self) -> float: + if self._character_count == 0: + return 0.0 + + ratio_of_punctuation: float = ( + self._punctuation_count + self._symbol_count + ) / self._character_count + + return ratio_of_punctuation if ratio_of_punctuation >= 0.3 else 0.0 + + +@final +class TooManyAccentuatedPlugin(MessDetectorPlugin): + __slots__ = ("_character_count", "_accentuated_count") + + def __init__(self) -> None: + self._character_count: int = 0 + self._accentuated_count: int = 0 + + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + self._character_count += 1 + + if info.accentuated: + self._accentuated_count += 1 + + def reset(self) -> None: # Abstract + self._character_count = 0 + self._accentuated_count = 0 + + @property + def ratio(self) -> float: + if self._character_count < 8: + return 0.0 + + ratio_of_accentuation: float = self._accentuated_count / self._character_count + return ratio_of_accentuation if ratio_of_accentuation >= 0.35 else 0.0 + + +@final +class UnprintablePlugin(MessDetectorPlugin): + __slots__ = ("_unprintable_count", "_character_count") + + def __init__(self) -> None: + self._unprintable_count: int = 0 + self._character_count: int = 0 + + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + if ( + not info.space + and not info.printable + and character != "\x1a" + and character != "\ufeff" + ): + self._unprintable_count += 1 + self._character_count += 1 + + def reset(self) -> None: # Abstract + self._unprintable_count = 0 + + @property + def ratio(self) -> float: + if self._character_count == 0: # Defensive: + return 0.0 + + return (self._unprintable_count * 8) / self._character_count + + +@final +class SuspiciousDuplicateAccentPlugin(MessDetectorPlugin): + __slots__ = ( + "_successive_count", + "_character_count", + "_last_latin_character", + "_last_was_accentuated", + ) + + def __init__(self) -> None: + self._successive_count: int = 0 + self._character_count: int = 0 + + self._last_latin_character: str | None = None + self._last_was_accentuated: bool = False + + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + self._character_count += 1 + if ( + self._last_latin_character is not None + and info.accentuated + and self._last_was_accentuated + ): + if info.upper and self._last_latin_character.isupper(): + self._successive_count += 1 + if remove_accent(character) == remove_accent(self._last_latin_character): + self._successive_count += 1 + self._last_latin_character = character + self._last_was_accentuated = info.accentuated + + def reset(self) -> None: # Abstract + self._successive_count = 0 + self._character_count = 0 + self._last_latin_character = None + self._last_was_accentuated = False + + @property + def ratio(self) -> float: + if self._character_count == 0: + return 0.0 + + return (self._successive_count * 2) / self._character_count + + +@final +class SuspiciousRange(MessDetectorPlugin): + __slots__ = ( + "_suspicious_successive_range_count", + "_character_count", + "_last_printable_seen", + "_last_printable_range", + ) + + def __init__(self) -> None: + self._suspicious_successive_range_count: int = 0 + self._character_count: int = 0 + self._last_printable_seen: str | None = None + self._last_printable_range: str | None = None + + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + self._character_count += 1 + + if info.space or info.punct or character in COMMON_SAFE_ASCII_CHARACTERS: + self._last_printable_seen = None + self._last_printable_range = None + return + + if self._last_printable_seen is None: + self._last_printable_seen = character + self._last_printable_range = unicode_range(character) + return + + unicode_range_a: str | None = self._last_printable_range + unicode_range_b: str | None = unicode_range(character) + + if is_suspiciously_successive_range(unicode_range_a, unicode_range_b): + self._suspicious_successive_range_count += 1 + + self._last_printable_seen = character + self._last_printable_range = unicode_range_b + + def reset(self) -> None: # Abstract + self._character_count = 0 + self._suspicious_successive_range_count = 0 + self._last_printable_seen = None + self._last_printable_range = None + + @property + def ratio(self) -> float: + if self._character_count <= 13: + return 0.0 + + ratio_of_suspicious_range_usage: float = ( + self._suspicious_successive_range_count * 2 + ) / self._character_count + + return ratio_of_suspicious_range_usage + + +@final +class SuperWeirdWordPlugin(MessDetectorPlugin): + __slots__ = ( + "_word_count", + "_bad_word_count", + "_foreign_long_count", + "_is_current_word_bad", + "_foreign_long_watch", + "_character_count", + "_bad_character_count", + "_buffer_length", + "_buffer_last_char", + "_buffer_last_char_accentuated", + "_buffer_accent_count", + "_buffer_glyph_count", + "_buffer_upper_count", + ) + + def __init__(self) -> None: + self._word_count: int = 0 + self._bad_word_count: int = 0 + self._foreign_long_count: int = 0 + + self._is_current_word_bad: bool = False + self._foreign_long_watch: bool = False + + self._character_count: int = 0 + self._bad_character_count: int = 0 + + self._buffer_length: int = 0 + self._buffer_last_char: str | None = None + self._buffer_last_char_accentuated: bool = False + self._buffer_accent_count: int = 0 + self._buffer_glyph_count: int = 0 + self._buffer_upper_count: int = 0 + + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + if info.alpha: + self._buffer_length += 1 + self._buffer_last_char = character + + if info.upper: + self._buffer_upper_count += 1 + + self._buffer_last_char_accentuated = info.accentuated + + if info.accentuated: + self._buffer_accent_count += 1 + if ( + not self._foreign_long_watch + and (not info.latin or info.accentuated) + and not info.is_glyph + ): + self._foreign_long_watch = True + if info.is_glyph: + self._buffer_glyph_count += 1 + return + if not self._buffer_length: + return + if info.space or info.punct or is_separator(character): + self._word_count += 1 + buffer_length: int = self._buffer_length + + self._character_count += buffer_length + + if buffer_length >= 4: + if self._buffer_accent_count / buffer_length >= 0.5: + self._is_current_word_bad = True + elif ( + self._buffer_last_char_accentuated + and self._buffer_last_char.isupper() # type: ignore[union-attr] + and self._buffer_upper_count != buffer_length + ): + self._foreign_long_count += 1 + self._is_current_word_bad = True + elif self._buffer_glyph_count == 1: + self._is_current_word_bad = True + self._foreign_long_count += 1 + if buffer_length >= 24 and self._foreign_long_watch: + probable_camel_cased: bool = ( + self._buffer_upper_count > 0 + and self._buffer_upper_count / buffer_length <= 0.3 + ) + + if not probable_camel_cased: + self._foreign_long_count += 1 + self._is_current_word_bad = True + + if self._is_current_word_bad: + self._bad_word_count += 1 + self._bad_character_count += buffer_length + self._is_current_word_bad = False + + self._foreign_long_watch = False + self._buffer_length = 0 + self._buffer_last_char = None + self._buffer_last_char_accentuated = False + self._buffer_accent_count = 0 + self._buffer_glyph_count = 0 + self._buffer_upper_count = 0 + elif ( + character not in {"<", ">", "-", "=", "~", "|", "_"} + and not info.digit + and info.sym + ): + self._is_current_word_bad = True + self._buffer_length += 1 + self._buffer_last_char = character + self._buffer_last_char_accentuated = False + + def reset(self) -> None: # Abstract + self._buffer_length = 0 + self._buffer_last_char = None + self._buffer_last_char_accentuated = False + self._is_current_word_bad = False + self._foreign_long_watch = False + self._bad_word_count = 0 + self._word_count = 0 + self._character_count = 0 + self._bad_character_count = 0 + self._foreign_long_count = 0 + self._buffer_accent_count = 0 + self._buffer_glyph_count = 0 + self._buffer_upper_count = 0 + + @property + def ratio(self) -> float: + if self._word_count <= 10 and self._foreign_long_count == 0: + return 0.0 + + return self._bad_character_count / self._character_count + + +@final +class CjkUncommonPlugin(MessDetectorPlugin): + """ + Detect messy CJK text that probably means nothing. + """ + + __slots__ = ("_character_count", "_uncommon_count") + + def __init__(self) -> None: + self._character_count: int = 0 + self._uncommon_count: int = 0 + + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + self._character_count += 1 + + if character not in COMMON_CJK_CHARACTERS: + self._uncommon_count += 1 + + def reset(self) -> None: # Abstract + self._character_count = 0 + self._uncommon_count = 0 + + @property + def ratio(self) -> float: + if self._character_count < 8: + return 0.0 + + uncommon_form_usage: float = self._uncommon_count / self._character_count + + # we can be pretty sure it's garbage when uncommon characters are widely + # used. otherwise it could just be traditional chinese for example. + return uncommon_form_usage / 10 if uncommon_form_usage > 0.5 else 0.0 + + +@final +class ArchaicUpperLowerPlugin(MessDetectorPlugin): + __slots__ = ( + "_buf", + "_character_count_since_last_sep", + "_successive_upper_lower_count", + "_successive_upper_lower_count_final", + "_character_count", + "_last_alpha_seen", + "_last_alpha_seen_upper", + "_last_alpha_seen_lower", + "_current_ascii_only", + ) + + def __init__(self) -> None: + self._buf: bool = False + + self._character_count_since_last_sep: int = 0 + + self._successive_upper_lower_count: int = 0 + self._successive_upper_lower_count_final: int = 0 + + self._character_count: int = 0 + + self._last_alpha_seen: str | None = None + self._last_alpha_seen_upper: bool = False + self._last_alpha_seen_lower: bool = False + self._current_ascii_only: bool = True + + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + is_concerned: bool = info.alpha and info.case_variable + chunk_sep: bool = not is_concerned + + if chunk_sep and self._character_count_since_last_sep > 0: + if ( + self._character_count_since_last_sep <= 64 + and not info.digit + and not self._current_ascii_only + ): + self._successive_upper_lower_count_final += ( + self._successive_upper_lower_count + ) + + self._successive_upper_lower_count = 0 + self._character_count_since_last_sep = 0 + self._last_alpha_seen = None + self._buf = False + self._character_count += 1 + self._current_ascii_only = True + + return + + if self._current_ascii_only and not info.is_ascii: + self._current_ascii_only = False + + if self._last_alpha_seen is not None: + if (info.upper and self._last_alpha_seen_lower) or ( + info.lower and self._last_alpha_seen_upper + ): + if self._buf: + self._successive_upper_lower_count += 2 + self._buf = False + else: + self._buf = True + else: + self._buf = False + + self._character_count += 1 + self._character_count_since_last_sep += 1 + self._last_alpha_seen = character + self._last_alpha_seen_upper = info.upper + self._last_alpha_seen_lower = info.lower + + def reset(self) -> None: # Abstract + self._character_count = 0 + self._character_count_since_last_sep = 0 + self._successive_upper_lower_count = 0 + self._successive_upper_lower_count_final = 0 + self._last_alpha_seen = None + self._last_alpha_seen_upper = False + self._last_alpha_seen_lower = False + self._buf = False + self._current_ascii_only = True + + @property + def ratio(self) -> float: + if self._character_count == 0: # Defensive: + return 0.0 + + return self._successive_upper_lower_count_final / self._character_count + + +@final +class ArabicIsolatedFormPlugin(MessDetectorPlugin): + __slots__ = ("_character_count", "_isolated_form_count") + + def __init__(self) -> None: + self._character_count: int = 0 + self._isolated_form_count: int = 0 + + def reset(self) -> None: # Abstract + self._character_count = 0 + self._isolated_form_count = 0 + + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + self._character_count += 1 + + if info.flags & _ARABIC_ISOLATED_FORM: + self._isolated_form_count += 1 + + @property + def ratio(self) -> float: + if self._character_count < 8: + return 0.0 + + isolated_form_usage: float = self._isolated_form_count / self._character_count + + return isolated_form_usage + + +@lru_cache(maxsize=1024) +def is_suspiciously_successive_range( + unicode_range_a: str | None, unicode_range_b: str | None +) -> bool: + """ + Determine if two Unicode range seen next to each other can be considered as suspicious. + """ + if unicode_range_a is None or unicode_range_b is None: + return True + + if unicode_range_a == unicode_range_b: + return False + + if "Latin" in unicode_range_a and "Latin" in unicode_range_b: + return False + + if "Emoticons" in unicode_range_a or "Emoticons" in unicode_range_b: + return False + + # Latin characters can be accompanied with a combining diacritical mark + # eg. Vietnamese. + if ("Latin" in unicode_range_a or "Latin" in unicode_range_b) and ( + "Combining" in unicode_range_a or "Combining" in unicode_range_b + ): + return False + + keywords_range_a, keywords_range_b = ( + unicode_range_a.split(" "), + unicode_range_b.split(" "), + ) + + for el in keywords_range_a: + if el in UNICODE_SECONDARY_RANGE_KEYWORD: + continue + if el in keywords_range_b: + return False + + # Japanese Exception + range_a_jp_chars, range_b_jp_chars = ( + unicode_range_a + in ( + "Hiragana", + "Katakana", + ), + unicode_range_b in ("Hiragana", "Katakana"), + ) + if (range_a_jp_chars or range_b_jp_chars) and ( + "CJK" in unicode_range_a or "CJK" in unicode_range_b + ): + return False + if range_a_jp_chars and range_b_jp_chars: + return False + + if "Hangul" in unicode_range_a or "Hangul" in unicode_range_b: + if "CJK" in unicode_range_a or "CJK" in unicode_range_b: + return False + if unicode_range_a == "Basic Latin" or unicode_range_b == "Basic Latin": + return False + + # Chinese/Japanese use dedicated range for punctuation and/or separators. + if ("CJK" in unicode_range_a or "CJK" in unicode_range_b) or ( + unicode_range_a in ["Katakana", "Hiragana"] + and unicode_range_b in ["Katakana", "Hiragana"] + ): + if "Punctuation" in unicode_range_a or "Punctuation" in unicode_range_b: + return False + if "Forms" in unicode_range_a or "Forms" in unicode_range_b: + return False + if unicode_range_a == "Basic Latin" or unicode_range_b == "Basic Latin": + return False + + return True + + +@lru_cache(maxsize=2048) +def mess_ratio( + decoded_sequence: str, maximum_threshold: float = 0.2, debug: bool = False +) -> float: + """ + Compute a mess ratio given a decoded bytes sequence. The maximum threshold does stop the computation earlier. + """ + + seq_len: int = len(decoded_sequence) + + if seq_len < 511: + step: int = 32 + elif seq_len < 1024: + step = 64 + else: + step = 128 + + # Create each detector as a named local variable (unrolled from the generic loop). + # This eliminates per-character iteration over the detector list and + # per-character eligible() virtual dispatch, while keeping every plugin class + # intact and fully readable. + d_sp: TooManySymbolOrPunctuationPlugin = TooManySymbolOrPunctuationPlugin() + d_ta: TooManyAccentuatedPlugin = TooManyAccentuatedPlugin() + d_up: UnprintablePlugin = UnprintablePlugin() + d_sda: SuspiciousDuplicateAccentPlugin = SuspiciousDuplicateAccentPlugin() + d_sr: SuspiciousRange = SuspiciousRange() + d_sw: SuperWeirdWordPlugin = SuperWeirdWordPlugin() + d_cu: CjkUncommonPlugin = CjkUncommonPlugin() + d_au: ArchaicUpperLowerPlugin = ArchaicUpperLowerPlugin() + d_ai: ArabicIsolatedFormPlugin = ArabicIsolatedFormPlugin() + + # Local references for feed_info methods called in the hot loop. + d_sp_feed = d_sp.feed_info + d_ta_feed = d_ta.feed_info + d_up_feed = d_up.feed_info + d_sda_feed = d_sda.feed_info + d_sr_feed = d_sr.feed_info + d_sw_feed = d_sw.feed_info + d_cu_feed = d_cu.feed_info + d_au_feed = d_au.feed_info + d_ai_feed = d_ai.feed_info + + # Single reusable CharInfo object (avoids per-character allocation). + info: CharInfo = CharInfo() + info_update = info.update + + mean_mess_ratio: float + + for block_start in range(0, seq_len, step): + for character in decoded_sequence[block_start : block_start + step]: + # Pre-compute all character properties once (shared across all plugins). + info_update(character) + + # Detectors with eligible() == always True + d_up_feed(character, info) + d_sw_feed(character, info) + d_au_feed(character, info) + + # Detectors with eligible() == isprintable + if info.printable: + d_sp_feed(character, info) + d_sr_feed(character, info) + + # Detectors with eligible() == isalpha + if info.alpha: + d_ta_feed(character, info) + # SuspiciousDuplicateAccent: isalpha() and is_latin() + if info.latin: + d_sda_feed(character, info) + # CjkUncommon: is_cjk() + if info.is_cjk: + d_cu_feed(character, info) + # ArabicIsolatedForm: is_arabic() + if info.is_arabic: + d_ai_feed(character, info) + + mean_mess_ratio = ( + d_sp.ratio + + d_ta.ratio + + d_up.ratio + + d_sda.ratio + + d_sr.ratio + + d_sw.ratio + + d_cu.ratio + + d_au.ratio + + d_ai.ratio + ) + + if mean_mess_ratio >= maximum_threshold: + break + else: + # Flush last word buffer in SuperWeirdWordPlugin via trailing newline. + info_update("\n") + d_sw_feed("\n", info) + d_au_feed("\n", info) + d_up_feed("\n", info) + + mean_mess_ratio = ( + d_sp.ratio + + d_ta.ratio + + d_up.ratio + + d_sda.ratio + + d_sr.ratio + + d_sw.ratio + + d_cu.ratio + + d_au.ratio + + d_ai.ratio + ) + + if debug: # Defensive: + logger = getLogger("charset_normalizer") + + logger.log( + TRACE, + "Mess-detector extended-analysis start. " + f"intermediary_mean_mess_ratio_calc={step} mean_mess_ratio={mean_mess_ratio} " + f"maximum_threshold={maximum_threshold}", + ) + + if seq_len > 16: + logger.log(TRACE, f"Starting with: {decoded_sequence[:16]}") + logger.log(TRACE, f"Ending with: {decoded_sequence[-16::]}") + + for dt in [d_sp, d_ta, d_up, d_sda, d_sr, d_sw, d_cu, d_au, d_ai]: + logger.log(TRACE, f"{dt.__class__}: {dt.ratio}") + + return round(mean_mess_ratio, 3) diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/models.py b/venv/lib/python3.9/site-packages/charset_normalizer/models.py new file mode 100644 index 0000000..382de15 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/models.py @@ -0,0 +1,369 @@ +from __future__ import annotations + +from encodings.aliases import aliases +from json import dumps +from re import sub +from typing import Any, Iterator, List, Tuple + +from .constant import RE_POSSIBLE_ENCODING_INDICATION, TOO_BIG_SEQUENCE +from .utils import iana_name, is_multi_byte_encoding, unicode_range + + +class CharsetMatch: + def __init__( + self, + payload: bytes | bytearray, + guessed_encoding: str, + mean_mess_ratio: float, + has_sig_or_bom: bool, + languages: CoherenceMatches, + decoded_payload: str | None = None, + preemptive_declaration: str | None = None, + ): + self._payload: bytes | bytearray = payload + + self._encoding: str = guessed_encoding + self._mean_mess_ratio: float = mean_mess_ratio + self._languages: CoherenceMatches = languages + self._has_sig_or_bom: bool = has_sig_or_bom + self._unicode_ranges: list[str] | None = None + + self._leaves: list[CharsetMatch] = [] + self._mean_coherence_ratio: float = 0.0 + + self._output_payload: bytes | None = None + self._output_encoding: str | None = None + + self._string: str | None = decoded_payload + + self._preemptive_declaration: str | None = preemptive_declaration + + def __eq__(self, other: object) -> bool: + if not isinstance(other, CharsetMatch): + if isinstance(other, str): + return iana_name(other) == self.encoding + return False + return self.encoding == other.encoding and self.fingerprint == other.fingerprint + + def __lt__(self, other: object) -> bool: + """ + Implemented to make sorted available upon CharsetMatches items. + """ + if not isinstance(other, CharsetMatch): + raise ValueError + + chaos_difference: float = abs(self.chaos - other.chaos) + coherence_difference: float = abs(self.coherence - other.coherence) + + # Below 0.5% difference --> Use Coherence + if chaos_difference < 0.005 and coherence_difference > 0.02: + return self.coherence > other.coherence + elif chaos_difference < 0.005 and coherence_difference <= 0.02: + # When having a difficult decision, use the result that decoded as many multi-byte as possible. + # preserve RAM usage! + if len(self._payload) >= TOO_BIG_SEQUENCE: + return self.chaos < other.chaos + return self.multi_byte_usage > other.multi_byte_usage + + return self.chaos < other.chaos + + @property + def multi_byte_usage(self) -> float: + return 1.0 - (len(str(self)) / len(self.raw)) + + def __str__(self) -> str: + # Lazy Str Loading + if self._string is None: + self._string = str(self._payload, self._encoding, "strict") + # UTF-7 BOM is encoded in modified Base64 whose byte boundary + # can overlap with the next character, so raw-byte stripping + # is unreliable. Strip the decoded BOM character instead. + if ( + self._has_sig_or_bom + and self._encoding == "utf_7" + and self._string + and self._string[0] == "\ufeff" + ): + self._string = self._string[1:] + return self._string + + def __repr__(self) -> str: + return f"" + + def add_submatch(self, other: CharsetMatch) -> None: + if not isinstance(other, CharsetMatch) or other == self: + raise ValueError( + "Unable to add instance <{}> as a submatch of a CharsetMatch".format( + other.__class__ + ) + ) + + other._string = None # Unload RAM usage; dirty trick. + self._leaves.append(other) + + @property + def encoding(self) -> str: + return self._encoding + + @property + def encoding_aliases(self) -> list[str]: + """ + Encoding name are known by many name, using this could help when searching for IBM855 when it's listed as CP855. + """ + also_known_as: list[str] = [] + for u, p in aliases.items(): + if self.encoding == u: + also_known_as.append(p) + elif self.encoding == p: + also_known_as.append(u) + return also_known_as + + @property + def bom(self) -> bool: + return self._has_sig_or_bom + + @property + def byte_order_mark(self) -> bool: + return self._has_sig_or_bom + + @property + def languages(self) -> list[str]: + """ + Return the complete list of possible languages found in decoded sequence. + Usually not really useful. Returned list may be empty even if 'language' property return something != 'Unknown'. + """ + return [e[0] for e in self._languages] + + @property + def language(self) -> str: + """ + Most probable language found in decoded sequence. If none were detected or inferred, the property will return + "Unknown". + """ + if not self._languages: + # Trying to infer the language based on the given encoding + # Its either English or we should not pronounce ourselves in certain cases. + if "ascii" in self.could_be_from_charset: + return "English" + + # doing it there to avoid circular import + from charset_normalizer.cd import encoding_languages, mb_encoding_languages + + languages = ( + mb_encoding_languages(self.encoding) + if is_multi_byte_encoding(self.encoding) + else encoding_languages(self.encoding) + ) + + if len(languages) == 0 or "Latin Based" in languages: + return "Unknown" + + return languages[0] + + return self._languages[0][0] + + @property + def chaos(self) -> float: + return self._mean_mess_ratio + + @property + def coherence(self) -> float: + if not self._languages: + return 0.0 + return self._languages[0][1] + + @property + def percent_chaos(self) -> float: + return round(self.chaos * 100, ndigits=3) + + @property + def percent_coherence(self) -> float: + return round(self.coherence * 100, ndigits=3) + + @property + def raw(self) -> bytes | bytearray: + """ + Original untouched bytes. + """ + return self._payload + + @property + def submatch(self) -> list[CharsetMatch]: + return self._leaves + + @property + def has_submatch(self) -> bool: + return len(self._leaves) > 0 + + @property + def alphabets(self) -> list[str]: + if self._unicode_ranges is not None: + return self._unicode_ranges + # list detected ranges + detected_ranges: list[str | None] = [unicode_range(char) for char in str(self)] + # filter and sort + self._unicode_ranges = sorted(list({r for r in detected_ranges if r})) + return self._unicode_ranges + + @property + def could_be_from_charset(self) -> list[str]: + """ + The complete list of encoding that output the exact SAME str result and therefore could be the originating + encoding. + This list does include the encoding available in property 'encoding'. + """ + return [self._encoding] + [m.encoding for m in self._leaves] + + def output(self, encoding: str = "utf_8") -> bytes: + """ + Method to get re-encoded bytes payload using given target encoding. Default to UTF-8. + Any errors will be simply ignored by the encoder NOT replaced. + """ + if self._output_encoding is None or self._output_encoding != encoding: + self._output_encoding = encoding + decoded_string = str(self) + if ( + self._preemptive_declaration is not None + and self._preemptive_declaration.lower() + not in ["utf-8", "utf8", "utf_8"] + ): + patched_header = sub( + RE_POSSIBLE_ENCODING_INDICATION, + lambda m: m.string[m.span()[0] : m.span()[1]].replace( + m.groups()[0], + iana_name(self._output_encoding).replace("_", "-"), # type: ignore[arg-type] + ), + decoded_string[:8192], + count=1, + ) + + decoded_string = patched_header + decoded_string[8192:] + + self._output_payload = decoded_string.encode(encoding, "replace") + + return self._output_payload # type: ignore + + @property + def fingerprint(self) -> int: + """ + Retrieve a hash fingerprint of the decoded payload, used for deduplication. + """ + return hash(str(self)) + + +class CharsetMatches: + """ + Container with every CharsetMatch items ordered by default from most probable to the less one. + Act like a list(iterable) but does not implements all related methods. + """ + + def __init__(self, results: list[CharsetMatch] | None = None): + self._results: list[CharsetMatch] = sorted(results) if results else [] + + def __iter__(self) -> Iterator[CharsetMatch]: + yield from self._results + + def __getitem__(self, item: int | str) -> CharsetMatch: + """ + Retrieve a single item either by its position or encoding name (alias may be used here). + Raise KeyError upon invalid index or encoding not present in results. + """ + if isinstance(item, int): + return self._results[item] + if isinstance(item, str): + item = iana_name(item, False) + for result in self._results: + if item in result.could_be_from_charset: + return result + raise KeyError + + def __len__(self) -> int: + return len(self._results) + + def __bool__(self) -> bool: + return len(self._results) > 0 + + def append(self, item: CharsetMatch) -> None: + """ + Insert a single match. Will be inserted accordingly to preserve sort. + Can be inserted as a submatch. + """ + if not isinstance(item, CharsetMatch): + raise ValueError( + "Cannot append instance '{}' to CharsetMatches".format( + str(item.__class__) + ) + ) + # We should disable the submatch factoring when the input file is too heavy (conserve RAM usage) + if len(item.raw) < TOO_BIG_SEQUENCE: + for match in self._results: + if match.fingerprint == item.fingerprint and match.chaos == item.chaos: + match.add_submatch(item) + return + self._results.append(item) + self._results = sorted(self._results) + + def best(self) -> CharsetMatch | None: + """ + Simply return the first match. Strict equivalent to matches[0]. + """ + if not self._results: + return None + return self._results[0] + + def first(self) -> CharsetMatch | None: + """ + Redundant method, call the method best(). Kept for BC reasons. + """ + return self.best() + + +CoherenceMatch = Tuple[str, float] +CoherenceMatches = List[CoherenceMatch] + + +class CliDetectionResult: + def __init__( + self, + path: str, + encoding: str | None, + encoding_aliases: list[str], + alternative_encodings: list[str], + language: str, + alphabets: list[str], + has_sig_or_bom: bool, + chaos: float, + coherence: float, + unicode_path: str | None, + is_preferred: bool, + ): + self.path: str = path + self.unicode_path: str | None = unicode_path + self.encoding: str | None = encoding + self.encoding_aliases: list[str] = encoding_aliases + self.alternative_encodings: list[str] = alternative_encodings + self.language: str = language + self.alphabets: list[str] = alphabets + self.has_sig_or_bom: bool = has_sig_or_bom + self.chaos: float = chaos + self.coherence: float = coherence + self.is_preferred: bool = is_preferred + + @property + def __dict__(self) -> dict[str, Any]: # type: ignore + return { + "path": self.path, + "encoding": self.encoding, + "encoding_aliases": self.encoding_aliases, + "alternative_encodings": self.alternative_encodings, + "language": self.language, + "alphabets": self.alphabets, + "has_sig_or_bom": self.has_sig_or_bom, + "chaos": self.chaos, + "coherence": self.coherence, + "unicode_path": self.unicode_path, + "is_preferred": self.is_preferred, + } + + def to_json(self) -> str: + return dumps(self.__dict__, ensure_ascii=True, indent=4) diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/py.typed b/venv/lib/python3.9/site-packages/charset_normalizer/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/utils.py b/venv/lib/python3.9/site-packages/charset_normalizer/utils.py new file mode 100644 index 0000000..0f529b5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/utils.py @@ -0,0 +1,422 @@ +from __future__ import annotations + +import importlib +import logging +import unicodedata +from bisect import bisect_right +from codecs import IncrementalDecoder +from encodings.aliases import aliases +from functools import lru_cache +from re import findall +from typing import Generator + +from _multibytecodec import ( # type: ignore[import-not-found,import] + MultibyteIncrementalDecoder, +) + +from .constant import ( + ENCODING_MARKS, + IANA_SUPPORTED_SIMILAR, + RE_POSSIBLE_ENCODING_INDICATION, + UNICODE_RANGES_COMBINED, + UNICODE_SECONDARY_RANGE_KEYWORD, + UTF8_MAXIMAL_ALLOCATION, + COMMON_CJK_CHARACTERS, + _LATIN, + _CJK, + _HANGUL, + _KATAKANA, + _HIRAGANA, + _THAI, + _ARABIC, + _ARABIC_ISOLATED_FORM, + _ACCENT_KEYWORDS, + _ACCENTUATED, +) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def _character_flags(character: str) -> int: + """Compute all name-based classification flags with a single unicodedata.name() call.""" + try: + desc: str = unicodedata.name(character) + except ValueError: + return 0 + + flags: int = 0 + + if "LATIN" in desc: + flags |= _LATIN + if "CJK" in desc: + flags |= _CJK + if "HANGUL" in desc: + flags |= _HANGUL + if "KATAKANA" in desc: + flags |= _KATAKANA + if "HIRAGANA" in desc: + flags |= _HIRAGANA + if "THAI" in desc: + flags |= _THAI + if "ARABIC" in desc: + flags |= _ARABIC + if "ISOLATED FORM" in desc: + flags |= _ARABIC_ISOLATED_FORM + + for kw in _ACCENT_KEYWORDS: + if kw in desc: + flags |= _ACCENTUATED + break + + return flags + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_accentuated(character: str) -> bool: + return bool(_character_flags(character) & _ACCENTUATED) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def remove_accent(character: str) -> str: + decomposed: str = unicodedata.decomposition(character) + if not decomposed: + return character + + codes: list[str] = decomposed.split(" ") + + return chr(int(codes[0], 16)) + + +# Pre-built sorted lookup table for O(log n) binary search in unicode_range(). +# Each entry is (range_start, range_end_exclusive, range_name). +_UNICODE_RANGES_SORTED: list[tuple[int, int, str]] = sorted( + (ord_range.start, ord_range.stop, name) + for name, ord_range in UNICODE_RANGES_COMBINED.items() +) +_UNICODE_RANGE_STARTS: list[int] = [e[0] for e in _UNICODE_RANGES_SORTED] + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def unicode_range(character: str) -> str | None: + """ + Retrieve the Unicode range official name from a single character. + """ + character_ord: int = ord(character) + + # Binary search: find the rightmost range whose start <= character_ord + idx = bisect_right(_UNICODE_RANGE_STARTS, character_ord) - 1 + if idx >= 0: + start, stop, name = _UNICODE_RANGES_SORTED[idx] + if character_ord < stop: + return name + + return None + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_latin(character: str) -> bool: + return bool(_character_flags(character) & _LATIN) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_punctuation(character: str) -> bool: + character_category: str = unicodedata.category(character) + + if "P" in character_category: + return True + + character_range: str | None = unicode_range(character) + + if character_range is None: + return False + + return "Punctuation" in character_range + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_symbol(character: str) -> bool: + character_category: str = unicodedata.category(character) + + if "S" in character_category or "N" in character_category: + return True + + character_range: str | None = unicode_range(character) + + if character_range is None: + return False + + return "Forms" in character_range and character_category != "Lo" + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_emoticon(character: str) -> bool: + character_range: str | None = unicode_range(character) + + if character_range is None: + return False + + return "Emoticons" in character_range or "Pictographs" in character_range + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_separator(character: str) -> bool: + if character.isspace() or character in {"|", "+", "<", ">"}: + return True + + character_category: str = unicodedata.category(character) + + return "Z" in character_category or character_category in {"Po", "Pd", "Pc"} + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_case_variable(character: str) -> bool: + return character.islower() != character.isupper() + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_cjk(character: str) -> bool: + return bool(_character_flags(character) & _CJK) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_hiragana(character: str) -> bool: + return bool(_character_flags(character) & _HIRAGANA) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_katakana(character: str) -> bool: + return bool(_character_flags(character) & _KATAKANA) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_hangul(character: str) -> bool: + return bool(_character_flags(character) & _HANGUL) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_thai(character: str) -> bool: + return bool(_character_flags(character) & _THAI) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_arabic(character: str) -> bool: + return bool(_character_flags(character) & _ARABIC) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_arabic_isolated_form(character: str) -> bool: + return bool(_character_flags(character) & _ARABIC_ISOLATED_FORM) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_cjk_uncommon(character: str) -> bool: + return character not in COMMON_CJK_CHARACTERS + + +@lru_cache(maxsize=len(UNICODE_RANGES_COMBINED)) +def is_unicode_range_secondary(range_name: str) -> bool: + return any(keyword in range_name for keyword in UNICODE_SECONDARY_RANGE_KEYWORD) + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_unprintable(character: str) -> bool: + return ( + character.isspace() is False # includes \n \t \r \v + and character.isprintable() is False + and character != "\x1a" # Why? Its the ASCII substitute character. + and character != "\ufeff" # bug discovered in Python, + # Zero Width No-Break Space located in Arabic Presentation Forms-B, Unicode 1.1 not acknowledged as space. + ) + + +def any_specified_encoding( + sequence: bytes | bytearray, search_zone: int = 8192 +) -> str | None: + """ + Extract using ASCII-only decoder any specified encoding in the first n-bytes. + """ + if not isinstance(sequence, (bytes, bytearray)): + raise TypeError + + seq_len: int = len(sequence) + + results: list[str] = findall( + RE_POSSIBLE_ENCODING_INDICATION, + sequence[: min(seq_len, search_zone)].decode("ascii", errors="ignore"), + ) + + if len(results) == 0: + return None + + for specified_encoding in results: + specified_encoding = specified_encoding.lower().replace("-", "_") + + encoding_alias: str + encoding_iana: str + + for encoding_alias, encoding_iana in aliases.items(): + if encoding_alias == specified_encoding: + return encoding_iana + if encoding_iana == specified_encoding: + return encoding_iana + + return None + + +@lru_cache(maxsize=128) +def is_multi_byte_encoding(name: str) -> bool: + """ + Verify is a specific encoding is a multi byte one based on it IANA name + """ + return name in { + "utf_8", + "utf_8_sig", + "utf_16", + "utf_16_be", + "utf_16_le", + "utf_32", + "utf_32_le", + "utf_32_be", + "utf_7", + } or issubclass( + importlib.import_module(f"encodings.{name}").IncrementalDecoder, + MultibyteIncrementalDecoder, + ) + + +def identify_sig_or_bom(sequence: bytes | bytearray) -> tuple[str | None, bytes]: + """ + Identify and extract SIG/BOM in given sequence. + """ + + for iana_encoding in ENCODING_MARKS: + marks: bytes | list[bytes] = ENCODING_MARKS[iana_encoding] + + if isinstance(marks, bytes): + marks = [marks] + + for mark in marks: + if sequence.startswith(mark): + return iana_encoding, mark + + return None, b"" + + +def should_strip_sig_or_bom(iana_encoding: str) -> bool: + return iana_encoding not in {"utf_16", "utf_32"} + + +def iana_name(cp_name: str, strict: bool = True) -> str: + """Returns the Python normalized encoding name (Not the IANA official name).""" + cp_name = cp_name.lower().replace("-", "_") + + encoding_alias: str + encoding_iana: str + + for encoding_alias, encoding_iana in aliases.items(): + if cp_name in [encoding_alias, encoding_iana]: + return encoding_iana + + if strict: + raise ValueError(f"Unable to retrieve IANA for '{cp_name}'") + + return cp_name + + +def cp_similarity(iana_name_a: str, iana_name_b: str) -> float: + if is_multi_byte_encoding(iana_name_a) or is_multi_byte_encoding(iana_name_b): + return 0.0 + + decoder_a = importlib.import_module(f"encodings.{iana_name_a}").IncrementalDecoder + decoder_b = importlib.import_module(f"encodings.{iana_name_b}").IncrementalDecoder + + id_a: IncrementalDecoder = decoder_a(errors="ignore") + id_b: IncrementalDecoder = decoder_b(errors="ignore") + + character_match_count: int = 0 + + for i in range(256): + to_be_decoded: bytes = bytes([i]) + if id_a.decode(to_be_decoded) == id_b.decode(to_be_decoded): + character_match_count += 1 + + return character_match_count / 256 + + +def is_cp_similar(iana_name_a: str, iana_name_b: str) -> bool: + """ + Determine if two code page are at least 80% similar. IANA_SUPPORTED_SIMILAR dict was generated using + the function cp_similarity. + """ + return ( + iana_name_a in IANA_SUPPORTED_SIMILAR + and iana_name_b in IANA_SUPPORTED_SIMILAR[iana_name_a] + ) + + +def set_logging_handler( + name: str = "charset_normalizer", + level: int = logging.INFO, + format_string: str = "%(asctime)s | %(levelname)s | %(message)s", +) -> None: + logger = logging.getLogger(name) + logger.setLevel(level) + + handler = logging.StreamHandler() + handler.setFormatter(logging.Formatter(format_string)) + logger.addHandler(handler) + + +def cut_sequence_chunks( + sequences: bytes | bytearray, + encoding_iana: str, + offsets: range, + chunk_size: int, + bom_or_sig_available: bool, + strip_sig_or_bom: bool, + sig_payload: bytes, + is_multi_byte_decoder: bool, + decoded_payload: str | None = None, +) -> Generator[str, None, None]: + if decoded_payload and is_multi_byte_decoder is False: + for i in offsets: + chunk = decoded_payload[i : i + chunk_size] + if not chunk: + break + yield chunk + else: + for i in offsets: + chunk_end = i + chunk_size + if chunk_end > len(sequences) + 8: + continue + + cut_sequence = sequences[i : i + chunk_size] + + if bom_or_sig_available and strip_sig_or_bom is False: + cut_sequence = sig_payload + cut_sequence + + chunk = cut_sequence.decode( + encoding_iana, + errors="ignore" if is_multi_byte_decoder else "strict", + ) + + # multi-byte bad cutting detector and adjustment + # not the cleanest way to perform that fix but clever enough for now. + if is_multi_byte_decoder and i > 0: + chunk_partial_size_chk: int = min(chunk_size, 16) + + if ( + decoded_payload + and chunk[:chunk_partial_size_chk] not in decoded_payload + ): + for j in range(i, i - 4, -1): + cut_sequence = sequences[j:chunk_end] + + if bom_or_sig_available and strip_sig_or_bom is False: + cut_sequence = sig_payload + cut_sequence + + chunk = cut_sequence.decode(encoding_iana, errors="ignore") + + if chunk[:chunk_partial_size_chk] in decoded_payload: + break + + yield chunk diff --git a/venv/lib/python3.9/site-packages/charset_normalizer/version.py b/venv/lib/python3.9/site-packages/charset_normalizer/version.py new file mode 100644 index 0000000..a93d367 --- /dev/null +++ b/venv/lib/python3.9/site-packages/charset_normalizer/version.py @@ -0,0 +1,8 @@ +""" +Expose version +""" + +from __future__ import annotations + +__version__ = "3.4.7" +VERSION = __version__.split(".") diff --git a/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/LICENSE.txt b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/LICENSE.txt new file mode 100644 index 0000000..d12a849 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/LICENSE.txt @@ -0,0 +1,28 @@ +Copyright 2014 Pallets + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/METADATA b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/METADATA new file mode 100644 index 0000000..366d1a7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/METADATA @@ -0,0 +1,74 @@ +Metadata-Version: 2.3 +Name: click +Version: 8.1.8 +Summary: Composable command line interface toolkit +Maintainer-email: Pallets +Requires-Python: >=3.7 +Description-Content-Type: text/markdown +Classifier: Development Status :: 5 - Production/Stable +Classifier: Intended Audience :: Developers +Classifier: License :: OSI Approved :: BSD License +Classifier: Operating System :: OS Independent +Classifier: Programming Language :: Python +Classifier: Typing :: Typed +Requires-Dist: colorama; platform_system == 'Windows' +Requires-Dist: importlib-metadata; python_version < '3.8' +Project-URL: Changes, https://click.palletsprojects.com/changes/ +Project-URL: Chat, https://discord.gg/pallets +Project-URL: Documentation, https://click.palletsprojects.com/ +Project-URL: Donate, https://palletsprojects.com/donate +Project-URL: Source, https://github.com/pallets/click/ + +# $ click_ + +Click is a Python package for creating beautiful command line interfaces +in a composable way with as little code as necessary. It's the "Command +Line Interface Creation Kit". It's highly configurable but comes with +sensible defaults out of the box. + +It aims to make the process of writing command line tools quick and fun +while also preventing any frustration caused by the inability to +implement an intended CLI API. + +Click in three points: + +- Arbitrary nesting of commands +- Automatic help page generation +- Supports lazy loading of subcommands at runtime + + +## A Simple Example + +```python +import click + +@click.command() +@click.option("--count", default=1, help="Number of greetings.") +@click.option("--name", prompt="Your name", help="The person to greet.") +def hello(count, name): + """Simple program that greets NAME for a total of COUNT times.""" + for _ in range(count): + click.echo(f"Hello, {name}!") + +if __name__ == '__main__': + hello() +``` + +``` +$ python hello.py --count=3 +Your name: Click +Hello, Click! +Hello, Click! +Hello, Click! +``` + + +## Donate + +The Pallets organization develops and supports Click and other popular +packages. In order to grow the community of contributors and users, and +allow the maintainers to devote more time to the projects, [please +donate today][]. + +[please donate today]: https://palletsprojects.com/donate + diff --git a/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/RECORD b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/RECORD new file mode 100644 index 0000000..ea71034 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/RECORD @@ -0,0 +1,38 @@ +click-8.1.8.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +click-8.1.8.dist-info/LICENSE.txt,sha256=morRBqOU6FO_4h9C9OctWSgZoigF2ZG18ydQKSkrZY0,1475 +click-8.1.8.dist-info/METADATA,sha256=WJtQ6uGS2ybLfvUE4vC0XIhIBr4yFGwjrMBR2fiCQ-Q,2263 +click-8.1.8.dist-info/RECORD,, +click-8.1.8.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82 +click/__init__.py,sha256=j1DJeCbga4ribkv5uyvIAzI0oFN13fW9mevDKShFelo,3188 +click/__pycache__/__init__.cpython-39.pyc,, +click/__pycache__/_compat.cpython-39.pyc,, +click/__pycache__/_termui_impl.cpython-39.pyc,, +click/__pycache__/_textwrap.cpython-39.pyc,, +click/__pycache__/_winconsole.cpython-39.pyc,, +click/__pycache__/core.cpython-39.pyc,, +click/__pycache__/decorators.cpython-39.pyc,, +click/__pycache__/exceptions.cpython-39.pyc,, +click/__pycache__/formatting.cpython-39.pyc,, +click/__pycache__/globals.cpython-39.pyc,, +click/__pycache__/parser.cpython-39.pyc,, +click/__pycache__/shell_completion.cpython-39.pyc,, +click/__pycache__/termui.cpython-39.pyc,, +click/__pycache__/testing.cpython-39.pyc,, +click/__pycache__/types.cpython-39.pyc,, +click/__pycache__/utils.cpython-39.pyc,, +click/_compat.py,sha256=IGKh_J5QdfKELitnRfTGHneejWxoCw_NX9tfMbdcg3w,18730 +click/_termui_impl.py,sha256=a5z7I9gOFeMmu7Gb6_RPyQ8GPuVP1EeblixcWSPSQPk,24783 +click/_textwrap.py,sha256=10fQ64OcBUMuK7mFvh8363_uoOxPlRItZBmKzRJDgoY,1353 +click/_winconsole.py,sha256=5ju3jQkcZD0W27WEMGqmEP4y_crUVzPCqsX_FYb7BO0,7860 +click/core.py,sha256=Q1nEVdctZwvIPOlt4vfHko0TYnHCeE40UEEul8Wpyvs,114748 +click/decorators.py,sha256=7t6F-QWowtLh6F_6l-4YV4Y4yNTcqFQEu9i37zIz68s,18925 +click/exceptions.py,sha256=V7zDT6emqJ8iNl0kF1P5kpFmLMWQ1T1L7aNNKM4YR0w,9600 +click/formatting.py,sha256=Frf0-5W33-loyY_i9qrwXR8-STnW3m5gvyxLVUdyxyk,9706 +click/globals.py,sha256=cuJ6Bbo073lgEEmhjr394PeM-QFmXM-Ci-wmfsd7H5g,1954 +click/parser.py,sha256=h4sndcpF5OHrZQN8vD8IWb5OByvW7ABbhRToxovrqS8,19067 +click/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +click/shell_completion.py,sha256=TR0dXEGcvWb9Eo3aaQEXGhnvNS3FF4H4QcuLnvAvYo4,18636 +click/termui.py,sha256=dLxiS70UOvIYBda_nEEZaPAFOVDVmRs1sEPMuLDowQo,28310 +click/testing.py,sha256=3RA8anCf7TZ8-5RAF5it2Te-aWXBAL5VLasQnMiC2ZQ,16282 +click/types.py,sha256=BD5Qqq4h-8kawBmOIzJlmq4xzThAf4wCvaOLZSBDNx0,36422 +click/utils.py,sha256=ce-IrO9ilII76LGkU354pOdHbepM8UftfNH7SfMU_28,20330 diff --git a/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/WHEEL b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/WHEEL new file mode 100644 index 0000000..e3c6fee --- /dev/null +++ b/venv/lib/python3.9/site-packages/click-8.1.8.dist-info/WHEEL @@ -0,0 +1,4 @@ +Wheel-Version: 1.0 +Generator: flit 3.10.1 +Root-Is-Purelib: true +Tag: py3-none-any diff --git a/venv/lib/python3.9/site-packages/click/__init__.py b/venv/lib/python3.9/site-packages/click/__init__.py new file mode 100644 index 0000000..2610d0e --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/__init__.py @@ -0,0 +1,75 @@ +""" +Click is a simple Python module inspired by the stdlib optparse to make +writing command line scripts fun. Unlike other modules, it's based +around a simple API that does not come with too much magic and is +composable. +""" + +from .core import Argument as Argument +from .core import BaseCommand as BaseCommand +from .core import Command as Command +from .core import CommandCollection as CommandCollection +from .core import Context as Context +from .core import Group as Group +from .core import MultiCommand as MultiCommand +from .core import Option as Option +from .core import Parameter as Parameter +from .decorators import argument as argument +from .decorators import command as command +from .decorators import confirmation_option as confirmation_option +from .decorators import group as group +from .decorators import help_option as help_option +from .decorators import HelpOption as HelpOption +from .decorators import make_pass_decorator as make_pass_decorator +from .decorators import option as option +from .decorators import pass_context as pass_context +from .decorators import pass_obj as pass_obj +from .decorators import password_option as password_option +from .decorators import version_option as version_option +from .exceptions import Abort as Abort +from .exceptions import BadArgumentUsage as BadArgumentUsage +from .exceptions import BadOptionUsage as BadOptionUsage +from .exceptions import BadParameter as BadParameter +from .exceptions import ClickException as ClickException +from .exceptions import FileError as FileError +from .exceptions import MissingParameter as MissingParameter +from .exceptions import NoSuchOption as NoSuchOption +from .exceptions import UsageError as UsageError +from .formatting import HelpFormatter as HelpFormatter +from .formatting import wrap_text as wrap_text +from .globals import get_current_context as get_current_context +from .parser import OptionParser as OptionParser +from .termui import clear as clear +from .termui import confirm as confirm +from .termui import echo_via_pager as echo_via_pager +from .termui import edit as edit +from .termui import getchar as getchar +from .termui import launch as launch +from .termui import pause as pause +from .termui import progressbar as progressbar +from .termui import prompt as prompt +from .termui import secho as secho +from .termui import style as style +from .termui import unstyle as unstyle +from .types import BOOL as BOOL +from .types import Choice as Choice +from .types import DateTime as DateTime +from .types import File as File +from .types import FLOAT as FLOAT +from .types import FloatRange as FloatRange +from .types import INT as INT +from .types import IntRange as IntRange +from .types import ParamType as ParamType +from .types import Path as Path +from .types import STRING as STRING +from .types import Tuple as Tuple +from .types import UNPROCESSED as UNPROCESSED +from .types import UUID as UUID +from .utils import echo as echo +from .utils import format_filename as format_filename +from .utils import get_app_dir as get_app_dir +from .utils import get_binary_stream as get_binary_stream +from .utils import get_text_stream as get_text_stream +from .utils import open_file as open_file + +__version__ = "8.1.8" diff --git a/venv/lib/python3.9/site-packages/click/_compat.py b/venv/lib/python3.9/site-packages/click/_compat.py new file mode 100644 index 0000000..9153d15 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/_compat.py @@ -0,0 +1,623 @@ +import codecs +import io +import os +import re +import sys +import typing as t +from weakref import WeakKeyDictionary + +CYGWIN = sys.platform.startswith("cygwin") +WIN = sys.platform.startswith("win") +auto_wrap_for_ansi: t.Optional[t.Callable[[t.TextIO], t.TextIO]] = None +_ansi_re = re.compile(r"\033\[[;?0-9]*[a-zA-Z]") + + +def _make_text_stream( + stream: t.BinaryIO, + encoding: t.Optional[str], + errors: t.Optional[str], + force_readable: bool = False, + force_writable: bool = False, +) -> t.TextIO: + if encoding is None: + encoding = get_best_encoding(stream) + if errors is None: + errors = "replace" + return _NonClosingTextIOWrapper( + stream, + encoding, + errors, + line_buffering=True, + force_readable=force_readable, + force_writable=force_writable, + ) + + +def is_ascii_encoding(encoding: str) -> bool: + """Checks if a given encoding is ascii.""" + try: + return codecs.lookup(encoding).name == "ascii" + except LookupError: + return False + + +def get_best_encoding(stream: t.IO[t.Any]) -> str: + """Returns the default stream encoding if not found.""" + rv = getattr(stream, "encoding", None) or sys.getdefaultencoding() + if is_ascii_encoding(rv): + return "utf-8" + return rv + + +class _NonClosingTextIOWrapper(io.TextIOWrapper): + def __init__( + self, + stream: t.BinaryIO, + encoding: t.Optional[str], + errors: t.Optional[str], + force_readable: bool = False, + force_writable: bool = False, + **extra: t.Any, + ) -> None: + self._stream = stream = t.cast( + t.BinaryIO, _FixupStream(stream, force_readable, force_writable) + ) + super().__init__(stream, encoding, errors, **extra) + + def __del__(self) -> None: + try: + self.detach() + except Exception: + pass + + def isatty(self) -> bool: + # https://bitbucket.org/pypy/pypy/issue/1803 + return self._stream.isatty() + + +class _FixupStream: + """The new io interface needs more from streams than streams + traditionally implement. As such, this fix-up code is necessary in + some circumstances. + + The forcing of readable and writable flags are there because some tools + put badly patched objects on sys (one such offender are certain version + of jupyter notebook). + """ + + def __init__( + self, + stream: t.BinaryIO, + force_readable: bool = False, + force_writable: bool = False, + ): + self._stream = stream + self._force_readable = force_readable + self._force_writable = force_writable + + def __getattr__(self, name: str) -> t.Any: + return getattr(self._stream, name) + + def read1(self, size: int) -> bytes: + f = getattr(self._stream, "read1", None) + + if f is not None: + return t.cast(bytes, f(size)) + + return self._stream.read(size) + + def readable(self) -> bool: + if self._force_readable: + return True + x = getattr(self._stream, "readable", None) + if x is not None: + return t.cast(bool, x()) + try: + self._stream.read(0) + except Exception: + return False + return True + + def writable(self) -> bool: + if self._force_writable: + return True + x = getattr(self._stream, "writable", None) + if x is not None: + return t.cast(bool, x()) + try: + self._stream.write("") # type: ignore + except Exception: + try: + self._stream.write(b"") + except Exception: + return False + return True + + def seekable(self) -> bool: + x = getattr(self._stream, "seekable", None) + if x is not None: + return t.cast(bool, x()) + try: + self._stream.seek(self._stream.tell()) + except Exception: + return False + return True + + +def _is_binary_reader(stream: t.IO[t.Any], default: bool = False) -> bool: + try: + return isinstance(stream.read(0), bytes) + except Exception: + return default + # This happens in some cases where the stream was already + # closed. In this case, we assume the default. + + +def _is_binary_writer(stream: t.IO[t.Any], default: bool = False) -> bool: + try: + stream.write(b"") + except Exception: + try: + stream.write("") + return False + except Exception: + pass + return default + return True + + +def _find_binary_reader(stream: t.IO[t.Any]) -> t.Optional[t.BinaryIO]: + # We need to figure out if the given stream is already binary. + # This can happen because the official docs recommend detaching + # the streams to get binary streams. Some code might do this, so + # we need to deal with this case explicitly. + if _is_binary_reader(stream, False): + return t.cast(t.BinaryIO, stream) + + buf = getattr(stream, "buffer", None) + + # Same situation here; this time we assume that the buffer is + # actually binary in case it's closed. + if buf is not None and _is_binary_reader(buf, True): + return t.cast(t.BinaryIO, buf) + + return None + + +def _find_binary_writer(stream: t.IO[t.Any]) -> t.Optional[t.BinaryIO]: + # We need to figure out if the given stream is already binary. + # This can happen because the official docs recommend detaching + # the streams to get binary streams. Some code might do this, so + # we need to deal with this case explicitly. + if _is_binary_writer(stream, False): + return t.cast(t.BinaryIO, stream) + + buf = getattr(stream, "buffer", None) + + # Same situation here; this time we assume that the buffer is + # actually binary in case it's closed. + if buf is not None and _is_binary_writer(buf, True): + return t.cast(t.BinaryIO, buf) + + return None + + +def _stream_is_misconfigured(stream: t.TextIO) -> bool: + """A stream is misconfigured if its encoding is ASCII.""" + # If the stream does not have an encoding set, we assume it's set + # to ASCII. This appears to happen in certain unittest + # environments. It's not quite clear what the correct behavior is + # but this at least will force Click to recover somehow. + return is_ascii_encoding(getattr(stream, "encoding", None) or "ascii") + + +def _is_compat_stream_attr(stream: t.TextIO, attr: str, value: t.Optional[str]) -> bool: + """A stream attribute is compatible if it is equal to the + desired value or the desired value is unset and the attribute + has a value. + """ + stream_value = getattr(stream, attr, None) + return stream_value == value or (value is None and stream_value is not None) + + +def _is_compatible_text_stream( + stream: t.TextIO, encoding: t.Optional[str], errors: t.Optional[str] +) -> bool: + """Check if a stream's encoding and errors attributes are + compatible with the desired values. + """ + return _is_compat_stream_attr( + stream, "encoding", encoding + ) and _is_compat_stream_attr(stream, "errors", errors) + + +def _force_correct_text_stream( + text_stream: t.IO[t.Any], + encoding: t.Optional[str], + errors: t.Optional[str], + is_binary: t.Callable[[t.IO[t.Any], bool], bool], + find_binary: t.Callable[[t.IO[t.Any]], t.Optional[t.BinaryIO]], + force_readable: bool = False, + force_writable: bool = False, +) -> t.TextIO: + if is_binary(text_stream, False): + binary_reader = t.cast(t.BinaryIO, text_stream) + else: + text_stream = t.cast(t.TextIO, text_stream) + # If the stream looks compatible, and won't default to a + # misconfigured ascii encoding, return it as-is. + if _is_compatible_text_stream(text_stream, encoding, errors) and not ( + encoding is None and _stream_is_misconfigured(text_stream) + ): + return text_stream + + # Otherwise, get the underlying binary reader. + possible_binary_reader = find_binary(text_stream) + + # If that's not possible, silently use the original reader + # and get mojibake instead of exceptions. + if possible_binary_reader is None: + return text_stream + + binary_reader = possible_binary_reader + + # Default errors to replace instead of strict in order to get + # something that works. + if errors is None: + errors = "replace" + + # Wrap the binary stream in a text stream with the correct + # encoding parameters. + return _make_text_stream( + binary_reader, + encoding, + errors, + force_readable=force_readable, + force_writable=force_writable, + ) + + +def _force_correct_text_reader( + text_reader: t.IO[t.Any], + encoding: t.Optional[str], + errors: t.Optional[str], + force_readable: bool = False, +) -> t.TextIO: + return _force_correct_text_stream( + text_reader, + encoding, + errors, + _is_binary_reader, + _find_binary_reader, + force_readable=force_readable, + ) + + +def _force_correct_text_writer( + text_writer: t.IO[t.Any], + encoding: t.Optional[str], + errors: t.Optional[str], + force_writable: bool = False, +) -> t.TextIO: + return _force_correct_text_stream( + text_writer, + encoding, + errors, + _is_binary_writer, + _find_binary_writer, + force_writable=force_writable, + ) + + +def get_binary_stdin() -> t.BinaryIO: + reader = _find_binary_reader(sys.stdin) + if reader is None: + raise RuntimeError("Was not able to determine binary stream for sys.stdin.") + return reader + + +def get_binary_stdout() -> t.BinaryIO: + writer = _find_binary_writer(sys.stdout) + if writer is None: + raise RuntimeError("Was not able to determine binary stream for sys.stdout.") + return writer + + +def get_binary_stderr() -> t.BinaryIO: + writer = _find_binary_writer(sys.stderr) + if writer is None: + raise RuntimeError("Was not able to determine binary stream for sys.stderr.") + return writer + + +def get_text_stdin( + encoding: t.Optional[str] = None, errors: t.Optional[str] = None +) -> t.TextIO: + rv = _get_windows_console_stream(sys.stdin, encoding, errors) + if rv is not None: + return rv + return _force_correct_text_reader(sys.stdin, encoding, errors, force_readable=True) + + +def get_text_stdout( + encoding: t.Optional[str] = None, errors: t.Optional[str] = None +) -> t.TextIO: + rv = _get_windows_console_stream(sys.stdout, encoding, errors) + if rv is not None: + return rv + return _force_correct_text_writer(sys.stdout, encoding, errors, force_writable=True) + + +def get_text_stderr( + encoding: t.Optional[str] = None, errors: t.Optional[str] = None +) -> t.TextIO: + rv = _get_windows_console_stream(sys.stderr, encoding, errors) + if rv is not None: + return rv + return _force_correct_text_writer(sys.stderr, encoding, errors, force_writable=True) + + +def _wrap_io_open( + file: t.Union[str, "os.PathLike[str]", int], + mode: str, + encoding: t.Optional[str], + errors: t.Optional[str], +) -> t.IO[t.Any]: + """Handles not passing ``encoding`` and ``errors`` in binary mode.""" + if "b" in mode: + return open(file, mode) + + return open(file, mode, encoding=encoding, errors=errors) + + +def open_stream( + filename: "t.Union[str, os.PathLike[str]]", + mode: str = "r", + encoding: t.Optional[str] = None, + errors: t.Optional[str] = "strict", + atomic: bool = False, +) -> t.Tuple[t.IO[t.Any], bool]: + binary = "b" in mode + filename = os.fspath(filename) + + # Standard streams first. These are simple because they ignore the + # atomic flag. Use fsdecode to handle Path("-"). + if os.fsdecode(filename) == "-": + if any(m in mode for m in ["w", "a", "x"]): + if binary: + return get_binary_stdout(), False + return get_text_stdout(encoding=encoding, errors=errors), False + if binary: + return get_binary_stdin(), False + return get_text_stdin(encoding=encoding, errors=errors), False + + # Non-atomic writes directly go out through the regular open functions. + if not atomic: + return _wrap_io_open(filename, mode, encoding, errors), True + + # Some usability stuff for atomic writes + if "a" in mode: + raise ValueError( + "Appending to an existing file is not supported, because that" + " would involve an expensive `copy`-operation to a temporary" + " file. Open the file in normal `w`-mode and copy explicitly" + " if that's what you're after." + ) + if "x" in mode: + raise ValueError("Use the `overwrite`-parameter instead.") + if "w" not in mode: + raise ValueError("Atomic writes only make sense with `w`-mode.") + + # Atomic writes are more complicated. They work by opening a file + # as a proxy in the same folder and then using the fdopen + # functionality to wrap it in a Python file. Then we wrap it in an + # atomic file that moves the file over on close. + import errno + import random + + try: + perm: t.Optional[int] = os.stat(filename).st_mode + except OSError: + perm = None + + flags = os.O_RDWR | os.O_CREAT | os.O_EXCL + + if binary: + flags |= getattr(os, "O_BINARY", 0) + + while True: + tmp_filename = os.path.join( + os.path.dirname(filename), + f".__atomic-write{random.randrange(1 << 32):08x}", + ) + try: + fd = os.open(tmp_filename, flags, 0o666 if perm is None else perm) + break + except OSError as e: + if e.errno == errno.EEXIST or ( + os.name == "nt" + and e.errno == errno.EACCES + and os.path.isdir(e.filename) + and os.access(e.filename, os.W_OK) + ): + continue + raise + + if perm is not None: + os.chmod(tmp_filename, perm) # in case perm includes bits in umask + + f = _wrap_io_open(fd, mode, encoding, errors) + af = _AtomicFile(f, tmp_filename, os.path.realpath(filename)) + return t.cast(t.IO[t.Any], af), True + + +class _AtomicFile: + def __init__(self, f: t.IO[t.Any], tmp_filename: str, real_filename: str) -> None: + self._f = f + self._tmp_filename = tmp_filename + self._real_filename = real_filename + self.closed = False + + @property + def name(self) -> str: + return self._real_filename + + def close(self, delete: bool = False) -> None: + if self.closed: + return + self._f.close() + os.replace(self._tmp_filename, self._real_filename) + self.closed = True + + def __getattr__(self, name: str) -> t.Any: + return getattr(self._f, name) + + def __enter__(self) -> "_AtomicFile": + return self + + def __exit__(self, exc_type: t.Optional[t.Type[BaseException]], *_: t.Any) -> None: + self.close(delete=exc_type is not None) + + def __repr__(self) -> str: + return repr(self._f) + + +def strip_ansi(value: str) -> str: + return _ansi_re.sub("", value) + + +def _is_jupyter_kernel_output(stream: t.IO[t.Any]) -> bool: + while isinstance(stream, (_FixupStream, _NonClosingTextIOWrapper)): + stream = stream._stream + + return stream.__class__.__module__.startswith("ipykernel.") + + +def should_strip_ansi( + stream: t.Optional[t.IO[t.Any]] = None, color: t.Optional[bool] = None +) -> bool: + if color is None: + if stream is None: + stream = sys.stdin + return not isatty(stream) and not _is_jupyter_kernel_output(stream) + return not color + + +# On Windows, wrap the output streams with colorama to support ANSI +# color codes. +# NOTE: double check is needed so mypy does not analyze this on Linux +if sys.platform.startswith("win") and WIN: + from ._winconsole import _get_windows_console_stream + + def _get_argv_encoding() -> str: + import locale + + return locale.getpreferredencoding() + + _ansi_stream_wrappers: t.MutableMapping[t.TextIO, t.TextIO] = WeakKeyDictionary() + + def auto_wrap_for_ansi( + stream: t.TextIO, color: t.Optional[bool] = None + ) -> t.TextIO: + """Support ANSI color and style codes on Windows by wrapping a + stream with colorama. + """ + try: + cached = _ansi_stream_wrappers.get(stream) + except Exception: + cached = None + + if cached is not None: + return cached + + import colorama + + strip = should_strip_ansi(stream, color) + ansi_wrapper = colorama.AnsiToWin32(stream, strip=strip) + rv = t.cast(t.TextIO, ansi_wrapper.stream) + _write = rv.write + + def _safe_write(s): + try: + return _write(s) + except BaseException: + ansi_wrapper.reset_all() + raise + + rv.write = _safe_write + + try: + _ansi_stream_wrappers[stream] = rv + except Exception: + pass + + return rv + +else: + + def _get_argv_encoding() -> str: + return getattr(sys.stdin, "encoding", None) or sys.getfilesystemencoding() + + def _get_windows_console_stream( + f: t.TextIO, encoding: t.Optional[str], errors: t.Optional[str] + ) -> t.Optional[t.TextIO]: + return None + + +def term_len(x: str) -> int: + return len(strip_ansi(x)) + + +def isatty(stream: t.IO[t.Any]) -> bool: + try: + return stream.isatty() + except Exception: + return False + + +def _make_cached_stream_func( + src_func: t.Callable[[], t.Optional[t.TextIO]], + wrapper_func: t.Callable[[], t.TextIO], +) -> t.Callable[[], t.Optional[t.TextIO]]: + cache: t.MutableMapping[t.TextIO, t.TextIO] = WeakKeyDictionary() + + def func() -> t.Optional[t.TextIO]: + stream = src_func() + + if stream is None: + return None + + try: + rv = cache.get(stream) + except Exception: + rv = None + if rv is not None: + return rv + rv = wrapper_func() + try: + cache[stream] = rv + except Exception: + pass + return rv + + return func + + +_default_text_stdin = _make_cached_stream_func(lambda: sys.stdin, get_text_stdin) +_default_text_stdout = _make_cached_stream_func(lambda: sys.stdout, get_text_stdout) +_default_text_stderr = _make_cached_stream_func(lambda: sys.stderr, get_text_stderr) + + +binary_streams: t.Mapping[str, t.Callable[[], t.BinaryIO]] = { + "stdin": get_binary_stdin, + "stdout": get_binary_stdout, + "stderr": get_binary_stderr, +} + +text_streams: t.Mapping[ + str, t.Callable[[t.Optional[str], t.Optional[str]], t.TextIO] +] = { + "stdin": get_text_stdin, + "stdout": get_text_stdout, + "stderr": get_text_stderr, +} diff --git a/venv/lib/python3.9/site-packages/click/_termui_impl.py b/venv/lib/python3.9/site-packages/click/_termui_impl.py new file mode 100644 index 0000000..ad9f8f6 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/_termui_impl.py @@ -0,0 +1,788 @@ +""" +This module contains implementations for the termui module. To keep the +import time of Click down, some infrequently used functionality is +placed in this module and only imported as needed. +""" + +import contextlib +import math +import os +import sys +import time +import typing as t +from gettext import gettext as _ +from io import StringIO +from shutil import which +from types import TracebackType + +from ._compat import _default_text_stdout +from ._compat import CYGWIN +from ._compat import get_best_encoding +from ._compat import isatty +from ._compat import open_stream +from ._compat import strip_ansi +from ._compat import term_len +from ._compat import WIN +from .exceptions import ClickException +from .utils import echo + +V = t.TypeVar("V") + +if os.name == "nt": + BEFORE_BAR = "\r" + AFTER_BAR = "\n" +else: + BEFORE_BAR = "\r\033[?25l" + AFTER_BAR = "\033[?25h\n" + + +class ProgressBar(t.Generic[V]): + def __init__( + self, + iterable: t.Optional[t.Iterable[V]], + length: t.Optional[int] = None, + fill_char: str = "#", + empty_char: str = " ", + bar_template: str = "%(bar)s", + info_sep: str = " ", + show_eta: bool = True, + show_percent: t.Optional[bool] = None, + show_pos: bool = False, + item_show_func: t.Optional[t.Callable[[t.Optional[V]], t.Optional[str]]] = None, + label: t.Optional[str] = None, + file: t.Optional[t.TextIO] = None, + color: t.Optional[bool] = None, + update_min_steps: int = 1, + width: int = 30, + ) -> None: + self.fill_char = fill_char + self.empty_char = empty_char + self.bar_template = bar_template + self.info_sep = info_sep + self.show_eta = show_eta + self.show_percent = show_percent + self.show_pos = show_pos + self.item_show_func = item_show_func + self.label: str = label or "" + + if file is None: + file = _default_text_stdout() + + # There are no standard streams attached to write to. For example, + # pythonw on Windows. + if file is None: + file = StringIO() + + self.file = file + self.color = color + self.update_min_steps = update_min_steps + self._completed_intervals = 0 + self.width: int = width + self.autowidth: bool = width == 0 + + if length is None: + from operator import length_hint + + length = length_hint(iterable, -1) + + if length == -1: + length = None + if iterable is None: + if length is None: + raise TypeError("iterable or length is required") + iterable = t.cast(t.Iterable[V], range(length)) + self.iter: t.Iterable[V] = iter(iterable) + self.length = length + self.pos = 0 + self.avg: t.List[float] = [] + self.last_eta: float + self.start: float + self.start = self.last_eta = time.time() + self.eta_known: bool = False + self.finished: bool = False + self.max_width: t.Optional[int] = None + self.entered: bool = False + self.current_item: t.Optional[V] = None + self.is_hidden: bool = not isatty(self.file) + self._last_line: t.Optional[str] = None + + def __enter__(self) -> "ProgressBar[V]": + self.entered = True + self.render_progress() + return self + + def __exit__( + self, + exc_type: t.Optional[t.Type[BaseException]], + exc_value: t.Optional[BaseException], + tb: t.Optional[TracebackType], + ) -> None: + self.render_finish() + + def __iter__(self) -> t.Iterator[V]: + if not self.entered: + raise RuntimeError("You need to use progress bars in a with block.") + self.render_progress() + return self.generator() + + def __next__(self) -> V: + # Iteration is defined in terms of a generator function, + # returned by iter(self); use that to define next(). This works + # because `self.iter` is an iterable consumed by that generator, + # so it is re-entry safe. Calling `next(self.generator())` + # twice works and does "what you want". + return next(iter(self)) + + def render_finish(self) -> None: + if self.is_hidden: + return + self.file.write(AFTER_BAR) + self.file.flush() + + @property + def pct(self) -> float: + if self.finished: + return 1.0 + return min(self.pos / (float(self.length or 1) or 1), 1.0) + + @property + def time_per_iteration(self) -> float: + if not self.avg: + return 0.0 + return sum(self.avg) / float(len(self.avg)) + + @property + def eta(self) -> float: + if self.length is not None and not self.finished: + return self.time_per_iteration * (self.length - self.pos) + return 0.0 + + def format_eta(self) -> str: + if self.eta_known: + t = int(self.eta) + seconds = t % 60 + t //= 60 + minutes = t % 60 + t //= 60 + hours = t % 24 + t //= 24 + if t > 0: + return f"{t}d {hours:02}:{minutes:02}:{seconds:02}" + else: + return f"{hours:02}:{minutes:02}:{seconds:02}" + return "" + + def format_pos(self) -> str: + pos = str(self.pos) + if self.length is not None: + pos += f"/{self.length}" + return pos + + def format_pct(self) -> str: + return f"{int(self.pct * 100): 4}%"[1:] + + def format_bar(self) -> str: + if self.length is not None: + bar_length = int(self.pct * self.width) + bar = self.fill_char * bar_length + bar += self.empty_char * (self.width - bar_length) + elif self.finished: + bar = self.fill_char * self.width + else: + chars = list(self.empty_char * (self.width or 1)) + if self.time_per_iteration != 0: + chars[ + int( + (math.cos(self.pos * self.time_per_iteration) / 2.0 + 0.5) + * self.width + ) + ] = self.fill_char + bar = "".join(chars) + return bar + + def format_progress_line(self) -> str: + show_percent = self.show_percent + + info_bits = [] + if self.length is not None and show_percent is None: + show_percent = not self.show_pos + + if self.show_pos: + info_bits.append(self.format_pos()) + if show_percent: + info_bits.append(self.format_pct()) + if self.show_eta and self.eta_known and not self.finished: + info_bits.append(self.format_eta()) + if self.item_show_func is not None: + item_info = self.item_show_func(self.current_item) + if item_info is not None: + info_bits.append(item_info) + + return ( + self.bar_template + % { + "label": self.label, + "bar": self.format_bar(), + "info": self.info_sep.join(info_bits), + } + ).rstrip() + + def render_progress(self) -> None: + import shutil + + if self.is_hidden: + # Only output the label as it changes if the output is not a + # TTY. Use file=stderr if you expect to be piping stdout. + if self._last_line != self.label: + self._last_line = self.label + echo(self.label, file=self.file, color=self.color) + + return + + buf = [] + # Update width in case the terminal has been resized + if self.autowidth: + old_width = self.width + self.width = 0 + clutter_length = term_len(self.format_progress_line()) + new_width = max(0, shutil.get_terminal_size().columns - clutter_length) + if new_width < old_width: + buf.append(BEFORE_BAR) + buf.append(" " * self.max_width) # type: ignore + self.max_width = new_width + self.width = new_width + + clear_width = self.width + if self.max_width is not None: + clear_width = self.max_width + + buf.append(BEFORE_BAR) + line = self.format_progress_line() + line_len = term_len(line) + if self.max_width is None or self.max_width < line_len: + self.max_width = line_len + + buf.append(line) + buf.append(" " * (clear_width - line_len)) + line = "".join(buf) + # Render the line only if it changed. + + if line != self._last_line: + self._last_line = line + echo(line, file=self.file, color=self.color, nl=False) + self.file.flush() + + def make_step(self, n_steps: int) -> None: + self.pos += n_steps + if self.length is not None and self.pos >= self.length: + self.finished = True + + if (time.time() - self.last_eta) < 1.0: + return + + self.last_eta = time.time() + + # self.avg is a rolling list of length <= 7 of steps where steps are + # defined as time elapsed divided by the total progress through + # self.length. + if self.pos: + step = (time.time() - self.start) / self.pos + else: + step = time.time() - self.start + + self.avg = self.avg[-6:] + [step] + + self.eta_known = self.length is not None + + def update(self, n_steps: int, current_item: t.Optional[V] = None) -> None: + """Update the progress bar by advancing a specified number of + steps, and optionally set the ``current_item`` for this new + position. + + :param n_steps: Number of steps to advance. + :param current_item: Optional item to set as ``current_item`` + for the updated position. + + .. versionchanged:: 8.0 + Added the ``current_item`` optional parameter. + + .. versionchanged:: 8.0 + Only render when the number of steps meets the + ``update_min_steps`` threshold. + """ + if current_item is not None: + self.current_item = current_item + + self._completed_intervals += n_steps + + if self._completed_intervals >= self.update_min_steps: + self.make_step(self._completed_intervals) + self.render_progress() + self._completed_intervals = 0 + + def finish(self) -> None: + self.eta_known = False + self.current_item = None + self.finished = True + + def generator(self) -> t.Iterator[V]: + """Return a generator which yields the items added to the bar + during construction, and updates the progress bar *after* the + yielded block returns. + """ + # WARNING: the iterator interface for `ProgressBar` relies on + # this and only works because this is a simple generator which + # doesn't create or manage additional state. If this function + # changes, the impact should be evaluated both against + # `iter(bar)` and `next(bar)`. `next()` in particular may call + # `self.generator()` repeatedly, and this must remain safe in + # order for that interface to work. + if not self.entered: + raise RuntimeError("You need to use progress bars in a with block.") + + if self.is_hidden: + yield from self.iter + else: + for rv in self.iter: + self.current_item = rv + + # This allows show_item_func to be updated before the + # item is processed. Only trigger at the beginning of + # the update interval. + if self._completed_intervals == 0: + self.render_progress() + + yield rv + self.update(1) + + self.finish() + self.render_progress() + + +def pager(generator: t.Iterable[str], color: t.Optional[bool] = None) -> None: + """Decide what method to use for paging through text.""" + stdout = _default_text_stdout() + + # There are no standard streams attached to write to. For example, + # pythonw on Windows. + if stdout is None: + stdout = StringIO() + + if not isatty(sys.stdin) or not isatty(stdout): + return _nullpager(stdout, generator, color) + pager_cmd = (os.environ.get("PAGER", None) or "").strip() + if pager_cmd: + if WIN: + if _tempfilepager(generator, pager_cmd, color): + return + elif _pipepager(generator, pager_cmd, color): + return + if os.environ.get("TERM") in ("dumb", "emacs"): + return _nullpager(stdout, generator, color) + if (WIN or sys.platform.startswith("os2")) and _tempfilepager( + generator, "more", color + ): + return + if _pipepager(generator, "less", color): + return + + import tempfile + + fd, filename = tempfile.mkstemp() + os.close(fd) + try: + if _pipepager(generator, "more", color): + return + return _nullpager(stdout, generator, color) + finally: + os.unlink(filename) + + +def _pipepager(generator: t.Iterable[str], cmd: str, color: t.Optional[bool]) -> bool: + """Page through text by feeding it to another program. Invoking a + pager through this might support colors. + + Returns True if the command was found, False otherwise and thus another + pager should be attempted. + """ + cmd_absolute = which(cmd) + if cmd_absolute is None: + return False + + import subprocess + + env = dict(os.environ) + + # If we're piping to less we might support colors under the + # condition that + cmd_detail = cmd.rsplit("/", 1)[-1].split() + if color is None and cmd_detail[0] == "less": + less_flags = f"{os.environ.get('LESS', '')}{' '.join(cmd_detail[1:])}" + if not less_flags: + env["LESS"] = "-R" + color = True + elif "r" in less_flags or "R" in less_flags: + color = True + + c = subprocess.Popen( + [cmd_absolute], + shell=True, + stdin=subprocess.PIPE, + env=env, + errors="replace", + text=True, + ) + assert c.stdin is not None + try: + for text in generator: + if not color: + text = strip_ansi(text) + + c.stdin.write(text) + except (OSError, KeyboardInterrupt): + pass + else: + c.stdin.close() + + # Less doesn't respect ^C, but catches it for its own UI purposes (aborting + # search or other commands inside less). + # + # That means when the user hits ^C, the parent process (click) terminates, + # but less is still alive, paging the output and messing up the terminal. + # + # If the user wants to make the pager exit on ^C, they should set + # `LESS='-K'`. It's not our decision to make. + while True: + try: + c.wait() + except KeyboardInterrupt: + pass + else: + break + + return True + + +def _tempfilepager( + generator: t.Iterable[str], + cmd: str, + color: t.Optional[bool], +) -> bool: + """Page through text by invoking a program on a temporary file. + + Returns True if the command was found, False otherwise and thus another + pager should be attempted. + """ + # Which is necessary for Windows, it is also recommended in the Popen docs. + cmd_absolute = which(cmd) + if cmd_absolute is None: + return False + + import subprocess + import tempfile + + fd, filename = tempfile.mkstemp() + # TODO: This never terminates if the passed generator never terminates. + text = "".join(generator) + if not color: + text = strip_ansi(text) + encoding = get_best_encoding(sys.stdout) + with open_stream(filename, "wb")[0] as f: + f.write(text.encode(encoding)) + try: + subprocess.call([cmd_absolute, filename]) + except OSError: + # Command not found + pass + finally: + os.close(fd) + os.unlink(filename) + + return True + + +def _nullpager( + stream: t.TextIO, generator: t.Iterable[str], color: t.Optional[bool] +) -> None: + """Simply print unformatted text. This is the ultimate fallback.""" + for text in generator: + if not color: + text = strip_ansi(text) + stream.write(text) + + +class Editor: + def __init__( + self, + editor: t.Optional[str] = None, + env: t.Optional[t.Mapping[str, str]] = None, + require_save: bool = True, + extension: str = ".txt", + ) -> None: + self.editor = editor + self.env = env + self.require_save = require_save + self.extension = extension + + def get_editor(self) -> str: + if self.editor is not None: + return self.editor + for key in "VISUAL", "EDITOR": + rv = os.environ.get(key) + if rv: + return rv + if WIN: + return "notepad" + for editor in "sensible-editor", "vim", "nano": + if which(editor) is not None: + return editor + return "vi" + + def edit_file(self, filename: str) -> None: + import subprocess + + editor = self.get_editor() + environ: t.Optional[t.Dict[str, str]] = None + + if self.env: + environ = os.environ.copy() + environ.update(self.env) + + try: + c = subprocess.Popen(f'{editor} "{filename}"', env=environ, shell=True) + exit_code = c.wait() + if exit_code != 0: + raise ClickException( + _("{editor}: Editing failed").format(editor=editor) + ) + except OSError as e: + raise ClickException( + _("{editor}: Editing failed: {e}").format(editor=editor, e=e) + ) from e + + def edit(self, text: t.Optional[t.AnyStr]) -> t.Optional[t.AnyStr]: + import tempfile + + if not text: + data = b"" + elif isinstance(text, (bytes, bytearray)): + data = text + else: + if text and not text.endswith("\n"): + text += "\n" + + if WIN: + data = text.replace("\n", "\r\n").encode("utf-8-sig") + else: + data = text.encode("utf-8") + + fd, name = tempfile.mkstemp(prefix="editor-", suffix=self.extension) + f: t.BinaryIO + + try: + with os.fdopen(fd, "wb") as f: + f.write(data) + + # If the filesystem resolution is 1 second, like Mac OS + # 10.12 Extended, or 2 seconds, like FAT32, and the editor + # closes very fast, require_save can fail. Set the modified + # time to be 2 seconds in the past to work around this. + os.utime(name, (os.path.getatime(name), os.path.getmtime(name) - 2)) + # Depending on the resolution, the exact value might not be + # recorded, so get the new recorded value. + timestamp = os.path.getmtime(name) + + self.edit_file(name) + + if self.require_save and os.path.getmtime(name) == timestamp: + return None + + with open(name, "rb") as f: + rv = f.read() + + if isinstance(text, (bytes, bytearray)): + return rv + + return rv.decode("utf-8-sig").replace("\r\n", "\n") # type: ignore + finally: + os.unlink(name) + + +def open_url(url: str, wait: bool = False, locate: bool = False) -> int: + import subprocess + + def _unquote_file(url: str) -> str: + from urllib.parse import unquote + + if url.startswith("file://"): + url = unquote(url[7:]) + + return url + + if sys.platform == "darwin": + args = ["open"] + if wait: + args.append("-W") + if locate: + args.append("-R") + args.append(_unquote_file(url)) + null = open("/dev/null", "w") + try: + return subprocess.Popen(args, stderr=null).wait() + finally: + null.close() + elif WIN: + if locate: + url = _unquote_file(url) + args = ["explorer", f"/select,{url}"] + else: + args = ["start"] + if wait: + args.append("/WAIT") + args.append("") + args.append(url) + try: + return subprocess.call(args) + except OSError: + # Command not found + return 127 + elif CYGWIN: + if locate: + url = _unquote_file(url) + args = ["cygstart", os.path.dirname(url)] + else: + args = ["cygstart"] + if wait: + args.append("-w") + args.append(url) + try: + return subprocess.call(args) + except OSError: + # Command not found + return 127 + + try: + if locate: + url = os.path.dirname(_unquote_file(url)) or "." + else: + url = _unquote_file(url) + c = subprocess.Popen(["xdg-open", url]) + if wait: + return c.wait() + return 0 + except OSError: + if url.startswith(("http://", "https://")) and not locate and not wait: + import webbrowser + + webbrowser.open(url) + return 0 + return 1 + + +def _translate_ch_to_exc(ch: str) -> t.Optional[BaseException]: + if ch == "\x03": + raise KeyboardInterrupt() + + if ch == "\x04" and not WIN: # Unix-like, Ctrl+D + raise EOFError() + + if ch == "\x1a" and WIN: # Windows, Ctrl+Z + raise EOFError() + + return None + + +if WIN: + import msvcrt + + @contextlib.contextmanager + def raw_terminal() -> t.Iterator[int]: + yield -1 + + def getchar(echo: bool) -> str: + # The function `getch` will return a bytes object corresponding to + # the pressed character. Since Windows 10 build 1803, it will also + # return \x00 when called a second time after pressing a regular key. + # + # `getwch` does not share this probably-bugged behavior. Moreover, it + # returns a Unicode object by default, which is what we want. + # + # Either of these functions will return \x00 or \xe0 to indicate + # a special key, and you need to call the same function again to get + # the "rest" of the code. The fun part is that \u00e0 is + # "latin small letter a with grave", so if you type that on a French + # keyboard, you _also_ get a \xe0. + # E.g., consider the Up arrow. This returns \xe0 and then \x48. The + # resulting Unicode string reads as "a with grave" + "capital H". + # This is indistinguishable from when the user actually types + # "a with grave" and then "capital H". + # + # When \xe0 is returned, we assume it's part of a special-key sequence + # and call `getwch` again, but that means that when the user types + # the \u00e0 character, `getchar` doesn't return until a second + # character is typed. + # The alternative is returning immediately, but that would mess up + # cross-platform handling of arrow keys and others that start with + # \xe0. Another option is using `getch`, but then we can't reliably + # read non-ASCII characters, because return values of `getch` are + # limited to the current 8-bit codepage. + # + # Anyway, Click doesn't claim to do this Right(tm), and using `getwch` + # is doing the right thing in more situations than with `getch`. + func: t.Callable[[], str] + + if echo: + func = msvcrt.getwche # type: ignore + else: + func = msvcrt.getwch # type: ignore + + rv = func() + + if rv in ("\x00", "\xe0"): + # \x00 and \xe0 are control characters that indicate special key, + # see above. + rv += func() + + _translate_ch_to_exc(rv) + return rv + +else: + import termios + import tty + + @contextlib.contextmanager + def raw_terminal() -> t.Iterator[int]: + f: t.Optional[t.TextIO] + fd: int + + if not isatty(sys.stdin): + f = open("/dev/tty") + fd = f.fileno() + else: + fd = sys.stdin.fileno() + f = None + + try: + old_settings = termios.tcgetattr(fd) + + try: + tty.setraw(fd) + yield fd + finally: + termios.tcsetattr(fd, termios.TCSADRAIN, old_settings) + sys.stdout.flush() + + if f is not None: + f.close() + except termios.error: + pass + + def getchar(echo: bool) -> str: + with raw_terminal() as fd: + ch = os.read(fd, 32).decode(get_best_encoding(sys.stdin), "replace") + + if echo and isatty(sys.stdout): + sys.stdout.write(ch) + + _translate_ch_to_exc(ch) + return ch diff --git a/venv/lib/python3.9/site-packages/click/_textwrap.py b/venv/lib/python3.9/site-packages/click/_textwrap.py new file mode 100644 index 0000000..b47dcbd --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/_textwrap.py @@ -0,0 +1,49 @@ +import textwrap +import typing as t +from contextlib import contextmanager + + +class TextWrapper(textwrap.TextWrapper): + def _handle_long_word( + self, + reversed_chunks: t.List[str], + cur_line: t.List[str], + cur_len: int, + width: int, + ) -> None: + space_left = max(width - cur_len, 1) + + if self.break_long_words: + last = reversed_chunks[-1] + cut = last[:space_left] + res = last[space_left:] + cur_line.append(cut) + reversed_chunks[-1] = res + elif not cur_line: + cur_line.append(reversed_chunks.pop()) + + @contextmanager + def extra_indent(self, indent: str) -> t.Iterator[None]: + old_initial_indent = self.initial_indent + old_subsequent_indent = self.subsequent_indent + self.initial_indent += indent + self.subsequent_indent += indent + + try: + yield + finally: + self.initial_indent = old_initial_indent + self.subsequent_indent = old_subsequent_indent + + def indent_only(self, text: str) -> str: + rv = [] + + for idx, line in enumerate(text.splitlines()): + indent = self.initial_indent + + if idx > 0: + indent = self.subsequent_indent + + rv.append(f"{indent}{line}") + + return "\n".join(rv) diff --git a/venv/lib/python3.9/site-packages/click/_winconsole.py b/venv/lib/python3.9/site-packages/click/_winconsole.py new file mode 100644 index 0000000..6b20df3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/_winconsole.py @@ -0,0 +1,279 @@ +# This module is based on the excellent work by Adam Bartoš who +# provided a lot of what went into the implementation here in +# the discussion to issue1602 in the Python bug tracker. +# +# There are some general differences in regards to how this works +# compared to the original patches as we do not need to patch +# the entire interpreter but just work in our little world of +# echo and prompt. +import io +import sys +import time +import typing as t +from ctypes import byref +from ctypes import c_char +from ctypes import c_char_p +from ctypes import c_int +from ctypes import c_ssize_t +from ctypes import c_ulong +from ctypes import c_void_p +from ctypes import POINTER +from ctypes import py_object +from ctypes import Structure +from ctypes.wintypes import DWORD +from ctypes.wintypes import HANDLE +from ctypes.wintypes import LPCWSTR +from ctypes.wintypes import LPWSTR + +from ._compat import _NonClosingTextIOWrapper + +assert sys.platform == "win32" +import msvcrt # noqa: E402 +from ctypes import windll # noqa: E402 +from ctypes import WINFUNCTYPE # noqa: E402 + +c_ssize_p = POINTER(c_ssize_t) + +kernel32 = windll.kernel32 +GetStdHandle = kernel32.GetStdHandle +ReadConsoleW = kernel32.ReadConsoleW +WriteConsoleW = kernel32.WriteConsoleW +GetConsoleMode = kernel32.GetConsoleMode +GetLastError = kernel32.GetLastError +GetCommandLineW = WINFUNCTYPE(LPWSTR)(("GetCommandLineW", windll.kernel32)) +CommandLineToArgvW = WINFUNCTYPE(POINTER(LPWSTR), LPCWSTR, POINTER(c_int))( + ("CommandLineToArgvW", windll.shell32) +) +LocalFree = WINFUNCTYPE(c_void_p, c_void_p)(("LocalFree", windll.kernel32)) + +STDIN_HANDLE = GetStdHandle(-10) +STDOUT_HANDLE = GetStdHandle(-11) +STDERR_HANDLE = GetStdHandle(-12) + +PyBUF_SIMPLE = 0 +PyBUF_WRITABLE = 1 + +ERROR_SUCCESS = 0 +ERROR_NOT_ENOUGH_MEMORY = 8 +ERROR_OPERATION_ABORTED = 995 + +STDIN_FILENO = 0 +STDOUT_FILENO = 1 +STDERR_FILENO = 2 + +EOF = b"\x1a" +MAX_BYTES_WRITTEN = 32767 + +try: + from ctypes import pythonapi +except ImportError: + # On PyPy we cannot get buffers so our ability to operate here is + # severely limited. + get_buffer = None +else: + + class Py_buffer(Structure): + _fields_ = [ + ("buf", c_void_p), + ("obj", py_object), + ("len", c_ssize_t), + ("itemsize", c_ssize_t), + ("readonly", c_int), + ("ndim", c_int), + ("format", c_char_p), + ("shape", c_ssize_p), + ("strides", c_ssize_p), + ("suboffsets", c_ssize_p), + ("internal", c_void_p), + ] + + PyObject_GetBuffer = pythonapi.PyObject_GetBuffer + PyBuffer_Release = pythonapi.PyBuffer_Release + + def get_buffer(obj, writable=False): + buf = Py_buffer() + flags = PyBUF_WRITABLE if writable else PyBUF_SIMPLE + PyObject_GetBuffer(py_object(obj), byref(buf), flags) + + try: + buffer_type = c_char * buf.len + return buffer_type.from_address(buf.buf) + finally: + PyBuffer_Release(byref(buf)) + + +class _WindowsConsoleRawIOBase(io.RawIOBase): + def __init__(self, handle): + self.handle = handle + + def isatty(self): + super().isatty() + return True + + +class _WindowsConsoleReader(_WindowsConsoleRawIOBase): + def readable(self): + return True + + def readinto(self, b): + bytes_to_be_read = len(b) + if not bytes_to_be_read: + return 0 + elif bytes_to_be_read % 2: + raise ValueError( + "cannot read odd number of bytes from UTF-16-LE encoded console" + ) + + buffer = get_buffer(b, writable=True) + code_units_to_be_read = bytes_to_be_read // 2 + code_units_read = c_ulong() + + rv = ReadConsoleW( + HANDLE(self.handle), + buffer, + code_units_to_be_read, + byref(code_units_read), + None, + ) + if GetLastError() == ERROR_OPERATION_ABORTED: + # wait for KeyboardInterrupt + time.sleep(0.1) + if not rv: + raise OSError(f"Windows error: {GetLastError()}") + + if buffer[0] == EOF: + return 0 + return 2 * code_units_read.value + + +class _WindowsConsoleWriter(_WindowsConsoleRawIOBase): + def writable(self): + return True + + @staticmethod + def _get_error_message(errno): + if errno == ERROR_SUCCESS: + return "ERROR_SUCCESS" + elif errno == ERROR_NOT_ENOUGH_MEMORY: + return "ERROR_NOT_ENOUGH_MEMORY" + return f"Windows error {errno}" + + def write(self, b): + bytes_to_be_written = len(b) + buf = get_buffer(b) + code_units_to_be_written = min(bytes_to_be_written, MAX_BYTES_WRITTEN) // 2 + code_units_written = c_ulong() + + WriteConsoleW( + HANDLE(self.handle), + buf, + code_units_to_be_written, + byref(code_units_written), + None, + ) + bytes_written = 2 * code_units_written.value + + if bytes_written == 0 and bytes_to_be_written > 0: + raise OSError(self._get_error_message(GetLastError())) + return bytes_written + + +class ConsoleStream: + def __init__(self, text_stream: t.TextIO, byte_stream: t.BinaryIO) -> None: + self._text_stream = text_stream + self.buffer = byte_stream + + @property + def name(self) -> str: + return self.buffer.name + + def write(self, x: t.AnyStr) -> int: + if isinstance(x, str): + return self._text_stream.write(x) + try: + self.flush() + except Exception: + pass + return self.buffer.write(x) + + def writelines(self, lines: t.Iterable[t.AnyStr]) -> None: + for line in lines: + self.write(line) + + def __getattr__(self, name: str) -> t.Any: + return getattr(self._text_stream, name) + + def isatty(self) -> bool: + return self.buffer.isatty() + + def __repr__(self): + return f"" + + +def _get_text_stdin(buffer_stream: t.BinaryIO) -> t.TextIO: + text_stream = _NonClosingTextIOWrapper( + io.BufferedReader(_WindowsConsoleReader(STDIN_HANDLE)), + "utf-16-le", + "strict", + line_buffering=True, + ) + return t.cast(t.TextIO, ConsoleStream(text_stream, buffer_stream)) + + +def _get_text_stdout(buffer_stream: t.BinaryIO) -> t.TextIO: + text_stream = _NonClosingTextIOWrapper( + io.BufferedWriter(_WindowsConsoleWriter(STDOUT_HANDLE)), + "utf-16-le", + "strict", + line_buffering=True, + ) + return t.cast(t.TextIO, ConsoleStream(text_stream, buffer_stream)) + + +def _get_text_stderr(buffer_stream: t.BinaryIO) -> t.TextIO: + text_stream = _NonClosingTextIOWrapper( + io.BufferedWriter(_WindowsConsoleWriter(STDERR_HANDLE)), + "utf-16-le", + "strict", + line_buffering=True, + ) + return t.cast(t.TextIO, ConsoleStream(text_stream, buffer_stream)) + + +_stream_factories: t.Mapping[int, t.Callable[[t.BinaryIO], t.TextIO]] = { + 0: _get_text_stdin, + 1: _get_text_stdout, + 2: _get_text_stderr, +} + + +def _is_console(f: t.TextIO) -> bool: + if not hasattr(f, "fileno"): + return False + + try: + fileno = f.fileno() + except (OSError, io.UnsupportedOperation): + return False + + handle = msvcrt.get_osfhandle(fileno) + return bool(GetConsoleMode(handle, byref(DWORD()))) + + +def _get_windows_console_stream( + f: t.TextIO, encoding: t.Optional[str], errors: t.Optional[str] +) -> t.Optional[t.TextIO]: + if ( + get_buffer is not None + and encoding in {"utf-16-le", None} + and errors in {"strict", None} + and _is_console(f) + ): + func = _stream_factories.get(f.fileno()) + if func is not None: + b = getattr(f, "buffer", None) + + if b is None: + return None + + return func(b) diff --git a/venv/lib/python3.9/site-packages/click/core.py b/venv/lib/python3.9/site-packages/click/core.py new file mode 100644 index 0000000..e630501 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/core.py @@ -0,0 +1,3047 @@ +import enum +import errno +import inspect +import os +import sys +import typing as t +from collections import abc +from contextlib import contextmanager +from contextlib import ExitStack +from functools import update_wrapper +from gettext import gettext as _ +from gettext import ngettext +from itertools import repeat +from types import TracebackType + +from . import types +from .exceptions import Abort +from .exceptions import BadParameter +from .exceptions import ClickException +from .exceptions import Exit +from .exceptions import MissingParameter +from .exceptions import UsageError +from .formatting import HelpFormatter +from .formatting import join_options +from .globals import pop_context +from .globals import push_context +from .parser import _flag_needs_value +from .parser import OptionParser +from .parser import split_opt +from .termui import confirm +from .termui import prompt +from .termui import style +from .utils import _detect_program_name +from .utils import _expand_args +from .utils import echo +from .utils import make_default_short_help +from .utils import make_str +from .utils import PacifyFlushWrapper + +if t.TYPE_CHECKING: + import typing_extensions as te + + from .decorators import HelpOption + from .shell_completion import CompletionItem + +F = t.TypeVar("F", bound=t.Callable[..., t.Any]) +V = t.TypeVar("V") + + +def _complete_visible_commands( + ctx: "Context", incomplete: str +) -> t.Iterator[t.Tuple[str, "Command"]]: + """List all the subcommands of a group that start with the + incomplete value and aren't hidden. + + :param ctx: Invocation context for the group. + :param incomplete: Value being completed. May be empty. + """ + multi = t.cast(MultiCommand, ctx.command) + + for name in multi.list_commands(ctx): + if name.startswith(incomplete): + command = multi.get_command(ctx, name) + + if command is not None and not command.hidden: + yield name, command + + +def _check_multicommand( + base_command: "MultiCommand", cmd_name: str, cmd: "Command", register: bool = False +) -> None: + if not base_command.chain or not isinstance(cmd, MultiCommand): + return + if register: + hint = ( + "It is not possible to add multi commands as children to" + " another multi command that is in chain mode." + ) + else: + hint = ( + "Found a multi command as subcommand to a multi command" + " that is in chain mode. This is not supported." + ) + raise RuntimeError( + f"{hint}. Command {base_command.name!r} is set to chain and" + f" {cmd_name!r} was added as a subcommand but it in itself is a" + f" multi command. ({cmd_name!r} is a {type(cmd).__name__}" + f" within a chained {type(base_command).__name__} named" + f" {base_command.name!r})." + ) + + +def batch(iterable: t.Iterable[V], batch_size: int) -> t.List[t.Tuple[V, ...]]: + return list(zip(*repeat(iter(iterable), batch_size))) + + +@contextmanager +def augment_usage_errors( + ctx: "Context", param: t.Optional["Parameter"] = None +) -> t.Iterator[None]: + """Context manager that attaches extra information to exceptions.""" + try: + yield + except BadParameter as e: + if e.ctx is None: + e.ctx = ctx + if param is not None and e.param is None: + e.param = param + raise + except UsageError as e: + if e.ctx is None: + e.ctx = ctx + raise + + +def iter_params_for_processing( + invocation_order: t.Sequence["Parameter"], + declaration_order: t.Sequence["Parameter"], +) -> t.List["Parameter"]: + """Returns all declared parameters in the order they should be processed. + + The declared parameters are re-shuffled depending on the order in which + they were invoked, as well as the eagerness of each parameters. + + The invocation order takes precedence over the declaration order. I.e. the + order in which the user provided them to the CLI is respected. + + This behavior and its effect on callback evaluation is detailed at: + https://click.palletsprojects.com/en/stable/advanced/#callback-evaluation-order + """ + + def sort_key(item: "Parameter") -> t.Tuple[bool, float]: + try: + idx: float = invocation_order.index(item) + except ValueError: + idx = float("inf") + + return not item.is_eager, idx + + return sorted(declaration_order, key=sort_key) + + +class ParameterSource(enum.Enum): + """This is an :class:`~enum.Enum` that indicates the source of a + parameter's value. + + Use :meth:`click.Context.get_parameter_source` to get the + source for a parameter by name. + + .. versionchanged:: 8.0 + Use :class:`~enum.Enum` and drop the ``validate`` method. + + .. versionchanged:: 8.0 + Added the ``PROMPT`` value. + """ + + COMMANDLINE = enum.auto() + """The value was provided by the command line args.""" + ENVIRONMENT = enum.auto() + """The value was provided with an environment variable.""" + DEFAULT = enum.auto() + """Used the default specified by the parameter.""" + DEFAULT_MAP = enum.auto() + """Used a default provided by :attr:`Context.default_map`.""" + PROMPT = enum.auto() + """Used a prompt to confirm a default or provide a value.""" + + +class Context: + """The context is a special internal object that holds state relevant + for the script execution at every single level. It's normally invisible + to commands unless they opt-in to getting access to it. + + The context is useful as it can pass internal objects around and can + control special execution features such as reading data from + environment variables. + + A context can be used as context manager in which case it will call + :meth:`close` on teardown. + + :param command: the command class for this context. + :param parent: the parent context. + :param info_name: the info name for this invocation. Generally this + is the most descriptive name for the script or + command. For the toplevel script it is usually + the name of the script, for commands below it it's + the name of the script. + :param obj: an arbitrary object of user data. + :param auto_envvar_prefix: the prefix to use for automatic environment + variables. If this is `None` then reading + from environment variables is disabled. This + does not affect manually set environment + variables which are always read. + :param default_map: a dictionary (like object) with default values + for parameters. + :param terminal_width: the width of the terminal. The default is + inherit from parent context. If no context + defines the terminal width then auto + detection will be applied. + :param max_content_width: the maximum width for content rendered by + Click (this currently only affects help + pages). This defaults to 80 characters if + not overridden. In other words: even if the + terminal is larger than that, Click will not + format things wider than 80 characters by + default. In addition to that, formatters might + add some safety mapping on the right. + :param resilient_parsing: if this flag is enabled then Click will + parse without any interactivity or callback + invocation. Default values will also be + ignored. This is useful for implementing + things such as completion support. + :param allow_extra_args: if this is set to `True` then extra arguments + at the end will not raise an error and will be + kept on the context. The default is to inherit + from the command. + :param allow_interspersed_args: if this is set to `False` then options + and arguments cannot be mixed. The + default is to inherit from the command. + :param ignore_unknown_options: instructs click to ignore options it does + not know and keeps them for later + processing. + :param help_option_names: optionally a list of strings that define how + the default help parameter is named. The + default is ``['--help']``. + :param token_normalize_func: an optional function that is used to + normalize tokens (options, choices, + etc.). This for instance can be used to + implement case insensitive behavior. + :param color: controls if the terminal supports ANSI colors or not. The + default is autodetection. This is only needed if ANSI + codes are used in texts that Click prints which is by + default not the case. This for instance would affect + help output. + :param show_default: Show the default value for commands. If this + value is not set, it defaults to the value from the parent + context. ``Command.show_default`` overrides this default for the + specific command. + + .. versionchanged:: 8.1 + The ``show_default`` parameter is overridden by + ``Command.show_default``, instead of the other way around. + + .. versionchanged:: 8.0 + The ``show_default`` parameter defaults to the value from the + parent context. + + .. versionchanged:: 7.1 + Added the ``show_default`` parameter. + + .. versionchanged:: 4.0 + Added the ``color``, ``ignore_unknown_options``, and + ``max_content_width`` parameters. + + .. versionchanged:: 3.0 + Added the ``allow_extra_args`` and ``allow_interspersed_args`` + parameters. + + .. versionchanged:: 2.0 + Added the ``resilient_parsing``, ``help_option_names``, and + ``token_normalize_func`` parameters. + """ + + #: The formatter class to create with :meth:`make_formatter`. + #: + #: .. versionadded:: 8.0 + formatter_class: t.Type["HelpFormatter"] = HelpFormatter + + def __init__( + self, + command: "Command", + parent: t.Optional["Context"] = None, + info_name: t.Optional[str] = None, + obj: t.Optional[t.Any] = None, + auto_envvar_prefix: t.Optional[str] = None, + default_map: t.Optional[t.MutableMapping[str, t.Any]] = None, + terminal_width: t.Optional[int] = None, + max_content_width: t.Optional[int] = None, + resilient_parsing: bool = False, + allow_extra_args: t.Optional[bool] = None, + allow_interspersed_args: t.Optional[bool] = None, + ignore_unknown_options: t.Optional[bool] = None, + help_option_names: t.Optional[t.List[str]] = None, + token_normalize_func: t.Optional[t.Callable[[str], str]] = None, + color: t.Optional[bool] = None, + show_default: t.Optional[bool] = None, + ) -> None: + #: the parent context or `None` if none exists. + self.parent = parent + #: the :class:`Command` for this context. + self.command = command + #: the descriptive information name + self.info_name = info_name + #: Map of parameter names to their parsed values. Parameters + #: with ``expose_value=False`` are not stored. + self.params: t.Dict[str, t.Any] = {} + #: the leftover arguments. + self.args: t.List[str] = [] + #: protected arguments. These are arguments that are prepended + #: to `args` when certain parsing scenarios are encountered but + #: must be never propagated to another arguments. This is used + #: to implement nested parsing. + self.protected_args: t.List[str] = [] + #: the collected prefixes of the command's options. + self._opt_prefixes: t.Set[str] = set(parent._opt_prefixes) if parent else set() + + if obj is None and parent is not None: + obj = parent.obj + + #: the user object stored. + self.obj: t.Any = obj + self._meta: t.Dict[str, t.Any] = getattr(parent, "meta", {}) + + #: A dictionary (-like object) with defaults for parameters. + if ( + default_map is None + and info_name is not None + and parent is not None + and parent.default_map is not None + ): + default_map = parent.default_map.get(info_name) + + self.default_map: t.Optional[t.MutableMapping[str, t.Any]] = default_map + + #: This flag indicates if a subcommand is going to be executed. A + #: group callback can use this information to figure out if it's + #: being executed directly or because the execution flow passes + #: onwards to a subcommand. By default it's None, but it can be + #: the name of the subcommand to execute. + #: + #: If chaining is enabled this will be set to ``'*'`` in case + #: any commands are executed. It is however not possible to + #: figure out which ones. If you require this knowledge you + #: should use a :func:`result_callback`. + self.invoked_subcommand: t.Optional[str] = None + + if terminal_width is None and parent is not None: + terminal_width = parent.terminal_width + + #: The width of the terminal (None is autodetection). + self.terminal_width: t.Optional[int] = terminal_width + + if max_content_width is None and parent is not None: + max_content_width = parent.max_content_width + + #: The maximum width of formatted content (None implies a sensible + #: default which is 80 for most things). + self.max_content_width: t.Optional[int] = max_content_width + + if allow_extra_args is None: + allow_extra_args = command.allow_extra_args + + #: Indicates if the context allows extra args or if it should + #: fail on parsing. + #: + #: .. versionadded:: 3.0 + self.allow_extra_args = allow_extra_args + + if allow_interspersed_args is None: + allow_interspersed_args = command.allow_interspersed_args + + #: Indicates if the context allows mixing of arguments and + #: options or not. + #: + #: .. versionadded:: 3.0 + self.allow_interspersed_args: bool = allow_interspersed_args + + if ignore_unknown_options is None: + ignore_unknown_options = command.ignore_unknown_options + + #: Instructs click to ignore options that a command does not + #: understand and will store it on the context for later + #: processing. This is primarily useful for situations where you + #: want to call into external programs. Generally this pattern is + #: strongly discouraged because it's not possibly to losslessly + #: forward all arguments. + #: + #: .. versionadded:: 4.0 + self.ignore_unknown_options: bool = ignore_unknown_options + + if help_option_names is None: + if parent is not None: + help_option_names = parent.help_option_names + else: + help_option_names = ["--help"] + + #: The names for the help options. + self.help_option_names: t.List[str] = help_option_names + + if token_normalize_func is None and parent is not None: + token_normalize_func = parent.token_normalize_func + + #: An optional normalization function for tokens. This is + #: options, choices, commands etc. + self.token_normalize_func: t.Optional[t.Callable[[str], str]] = ( + token_normalize_func + ) + + #: Indicates if resilient parsing is enabled. In that case Click + #: will do its best to not cause any failures and default values + #: will be ignored. Useful for completion. + self.resilient_parsing: bool = resilient_parsing + + # If there is no envvar prefix yet, but the parent has one and + # the command on this level has a name, we can expand the envvar + # prefix automatically. + if auto_envvar_prefix is None: + if ( + parent is not None + and parent.auto_envvar_prefix is not None + and self.info_name is not None + ): + auto_envvar_prefix = ( + f"{parent.auto_envvar_prefix}_{self.info_name.upper()}" + ) + else: + auto_envvar_prefix = auto_envvar_prefix.upper() + + if auto_envvar_prefix is not None: + auto_envvar_prefix = auto_envvar_prefix.replace("-", "_") + + self.auto_envvar_prefix: t.Optional[str] = auto_envvar_prefix + + if color is None and parent is not None: + color = parent.color + + #: Controls if styling output is wanted or not. + self.color: t.Optional[bool] = color + + if show_default is None and parent is not None: + show_default = parent.show_default + + #: Show option default values when formatting help text. + self.show_default: t.Optional[bool] = show_default + + self._close_callbacks: t.List[t.Callable[[], t.Any]] = [] + self._depth = 0 + self._parameter_source: t.Dict[str, ParameterSource] = {} + self._exit_stack = ExitStack() + + def to_info_dict(self) -> t.Dict[str, t.Any]: + """Gather information that could be useful for a tool generating + user-facing documentation. This traverses the entire CLI + structure. + + .. code-block:: python + + with Context(cli) as ctx: + info = ctx.to_info_dict() + + .. versionadded:: 8.0 + """ + return { + "command": self.command.to_info_dict(self), + "info_name": self.info_name, + "allow_extra_args": self.allow_extra_args, + "allow_interspersed_args": self.allow_interspersed_args, + "ignore_unknown_options": self.ignore_unknown_options, + "auto_envvar_prefix": self.auto_envvar_prefix, + } + + def __enter__(self) -> "Context": + self._depth += 1 + push_context(self) + return self + + def __exit__( + self, + exc_type: t.Optional[t.Type[BaseException]], + exc_value: t.Optional[BaseException], + tb: t.Optional[TracebackType], + ) -> None: + self._depth -= 1 + if self._depth == 0: + self.close() + pop_context() + + @contextmanager + def scope(self, cleanup: bool = True) -> t.Iterator["Context"]: + """This helper method can be used with the context object to promote + it to the current thread local (see :func:`get_current_context`). + The default behavior of this is to invoke the cleanup functions which + can be disabled by setting `cleanup` to `False`. The cleanup + functions are typically used for things such as closing file handles. + + If the cleanup is intended the context object can also be directly + used as a context manager. + + Example usage:: + + with ctx.scope(): + assert get_current_context() is ctx + + This is equivalent:: + + with ctx: + assert get_current_context() is ctx + + .. versionadded:: 5.0 + + :param cleanup: controls if the cleanup functions should be run or + not. The default is to run these functions. In + some situations the context only wants to be + temporarily pushed in which case this can be disabled. + Nested pushes automatically defer the cleanup. + """ + if not cleanup: + self._depth += 1 + try: + with self as rv: + yield rv + finally: + if not cleanup: + self._depth -= 1 + + @property + def meta(self) -> t.Dict[str, t.Any]: + """This is a dictionary which is shared with all the contexts + that are nested. It exists so that click utilities can store some + state here if they need to. It is however the responsibility of + that code to manage this dictionary well. + + The keys are supposed to be unique dotted strings. For instance + module paths are a good choice for it. What is stored in there is + irrelevant for the operation of click. However what is important is + that code that places data here adheres to the general semantics of + the system. + + Example usage:: + + LANG_KEY = f'{__name__}.lang' + + def set_language(value): + ctx = get_current_context() + ctx.meta[LANG_KEY] = value + + def get_language(): + return get_current_context().meta.get(LANG_KEY, 'en_US') + + .. versionadded:: 5.0 + """ + return self._meta + + def make_formatter(self) -> HelpFormatter: + """Creates the :class:`~click.HelpFormatter` for the help and + usage output. + + To quickly customize the formatter class used without overriding + this method, set the :attr:`formatter_class` attribute. + + .. versionchanged:: 8.0 + Added the :attr:`formatter_class` attribute. + """ + return self.formatter_class( + width=self.terminal_width, max_width=self.max_content_width + ) + + def with_resource(self, context_manager: t.ContextManager[V]) -> V: + """Register a resource as if it were used in a ``with`` + statement. The resource will be cleaned up when the context is + popped. + + Uses :meth:`contextlib.ExitStack.enter_context`. It calls the + resource's ``__enter__()`` method and returns the result. When + the context is popped, it closes the stack, which calls the + resource's ``__exit__()`` method. + + To register a cleanup function for something that isn't a + context manager, use :meth:`call_on_close`. Or use something + from :mod:`contextlib` to turn it into a context manager first. + + .. code-block:: python + + @click.group() + @click.option("--name") + @click.pass_context + def cli(ctx): + ctx.obj = ctx.with_resource(connect_db(name)) + + :param context_manager: The context manager to enter. + :return: Whatever ``context_manager.__enter__()`` returns. + + .. versionadded:: 8.0 + """ + return self._exit_stack.enter_context(context_manager) + + def call_on_close(self, f: t.Callable[..., t.Any]) -> t.Callable[..., t.Any]: + """Register a function to be called when the context tears down. + + This can be used to close resources opened during the script + execution. Resources that support Python's context manager + protocol which would be used in a ``with`` statement should be + registered with :meth:`with_resource` instead. + + :param f: The function to execute on teardown. + """ + return self._exit_stack.callback(f) + + def close(self) -> None: + """Invoke all close callbacks registered with + :meth:`call_on_close`, and exit all context managers entered + with :meth:`with_resource`. + """ + self._exit_stack.close() + # In case the context is reused, create a new exit stack. + self._exit_stack = ExitStack() + + @property + def command_path(self) -> str: + """The computed command path. This is used for the ``usage`` + information on the help page. It's automatically created by + combining the info names of the chain of contexts to the root. + """ + rv = "" + if self.info_name is not None: + rv = self.info_name + if self.parent is not None: + parent_command_path = [self.parent.command_path] + + if isinstance(self.parent.command, Command): + for param in self.parent.command.get_params(self): + parent_command_path.extend(param.get_usage_pieces(self)) + + rv = f"{' '.join(parent_command_path)} {rv}" + return rv.lstrip() + + def find_root(self) -> "Context": + """Finds the outermost context.""" + node = self + while node.parent is not None: + node = node.parent + return node + + def find_object(self, object_type: t.Type[V]) -> t.Optional[V]: + """Finds the closest object of a given type.""" + node: t.Optional[Context] = self + + while node is not None: + if isinstance(node.obj, object_type): + return node.obj + + node = node.parent + + return None + + def ensure_object(self, object_type: t.Type[V]) -> V: + """Like :meth:`find_object` but sets the innermost object to a + new instance of `object_type` if it does not exist. + """ + rv = self.find_object(object_type) + if rv is None: + self.obj = rv = object_type() + return rv + + @t.overload + def lookup_default( + self, name: str, call: "te.Literal[True]" = True + ) -> t.Optional[t.Any]: ... + + @t.overload + def lookup_default( + self, name: str, call: "te.Literal[False]" = ... + ) -> t.Optional[t.Union[t.Any, t.Callable[[], t.Any]]]: ... + + def lookup_default(self, name: str, call: bool = True) -> t.Optional[t.Any]: + """Get the default for a parameter from :attr:`default_map`. + + :param name: Name of the parameter. + :param call: If the default is a callable, call it. Disable to + return the callable instead. + + .. versionchanged:: 8.0 + Added the ``call`` parameter. + """ + if self.default_map is not None: + value = self.default_map.get(name) + + if call and callable(value): + return value() + + return value + + return None + + def fail(self, message: str) -> "te.NoReturn": + """Aborts the execution of the program with a specific error + message. + + :param message: the error message to fail with. + """ + raise UsageError(message, self) + + def abort(self) -> "te.NoReturn": + """Aborts the script.""" + raise Abort() + + def exit(self, code: int = 0) -> "te.NoReturn": + """Exits the application with a given exit code.""" + raise Exit(code) + + def get_usage(self) -> str: + """Helper method to get formatted usage string for the current + context and command. + """ + return self.command.get_usage(self) + + def get_help(self) -> str: + """Helper method to get formatted help page for the current + context and command. + """ + return self.command.get_help(self) + + def _make_sub_context(self, command: "Command") -> "Context": + """Create a new context of the same type as this context, but + for a new command. + + :meta private: + """ + return type(self)(command, info_name=command.name, parent=self) + + @t.overload + def invoke( + __self, + __callback: "t.Callable[..., V]", + *args: t.Any, + **kwargs: t.Any, + ) -> V: ... + + @t.overload + def invoke( + __self, + __callback: "Command", + *args: t.Any, + **kwargs: t.Any, + ) -> t.Any: ... + + def invoke( + __self, + __callback: t.Union["Command", "t.Callable[..., V]"], + *args: t.Any, + **kwargs: t.Any, + ) -> t.Union[t.Any, V]: + """Invokes a command callback in exactly the way it expects. There + are two ways to invoke this method: + + 1. the first argument can be a callback and all other arguments and + keyword arguments are forwarded directly to the function. + 2. the first argument is a click command object. In that case all + arguments are forwarded as well but proper click parameters + (options and click arguments) must be keyword arguments and Click + will fill in defaults. + + Note that before Click 3.2 keyword arguments were not properly filled + in against the intention of this code and no context was created. For + more information about this change and why it was done in a bugfix + release see :ref:`upgrade-to-3.2`. + + .. versionchanged:: 8.0 + All ``kwargs`` are tracked in :attr:`params` so they will be + passed if :meth:`forward` is called at multiple levels. + """ + if isinstance(__callback, Command): + other_cmd = __callback + + if other_cmd.callback is None: + raise TypeError( + "The given command does not have a callback that can be invoked." + ) + else: + __callback = t.cast("t.Callable[..., V]", other_cmd.callback) + + ctx = __self._make_sub_context(other_cmd) + + for param in other_cmd.params: + if param.name not in kwargs and param.expose_value: + kwargs[param.name] = param.type_cast_value( # type: ignore + ctx, param.get_default(ctx) + ) + + # Track all kwargs as params, so that forward() will pass + # them on in subsequent calls. + ctx.params.update(kwargs) + else: + ctx = __self + + with augment_usage_errors(__self): + with ctx: + return __callback(*args, **kwargs) + + def forward(__self, __cmd: "Command", *args: t.Any, **kwargs: t.Any) -> t.Any: + """Similar to :meth:`invoke` but fills in default keyword + arguments from the current context if the other command expects + it. This cannot invoke callbacks directly, only other commands. + + .. versionchanged:: 8.0 + All ``kwargs`` are tracked in :attr:`params` so they will be + passed if ``forward`` is called at multiple levels. + """ + # Can only forward to other commands, not direct callbacks. + if not isinstance(__cmd, Command): + raise TypeError("Callback is not a command.") + + for param in __self.params: + if param not in kwargs: + kwargs[param] = __self.params[param] + + return __self.invoke(__cmd, *args, **kwargs) + + def set_parameter_source(self, name: str, source: ParameterSource) -> None: + """Set the source of a parameter. This indicates the location + from which the value of the parameter was obtained. + + :param name: The name of the parameter. + :param source: A member of :class:`~click.core.ParameterSource`. + """ + self._parameter_source[name] = source + + def get_parameter_source(self, name: str) -> t.Optional[ParameterSource]: + """Get the source of a parameter. This indicates the location + from which the value of the parameter was obtained. + + This can be useful for determining when a user specified a value + on the command line that is the same as the default value. It + will be :attr:`~click.core.ParameterSource.DEFAULT` only if the + value was actually taken from the default. + + :param name: The name of the parameter. + :rtype: ParameterSource + + .. versionchanged:: 8.0 + Returns ``None`` if the parameter was not provided from any + source. + """ + return self._parameter_source.get(name) + + +class BaseCommand: + """The base command implements the minimal API contract of commands. + Most code will never use this as it does not implement a lot of useful + functionality but it can act as the direct subclass of alternative + parsing methods that do not depend on the Click parser. + + For instance, this can be used to bridge Click and other systems like + argparse or docopt. + + Because base commands do not implement a lot of the API that other + parts of Click take for granted, they are not supported for all + operations. For instance, they cannot be used with the decorators + usually and they have no built-in callback system. + + .. versionchanged:: 2.0 + Added the `context_settings` parameter. + + :param name: the name of the command to use unless a group overrides it. + :param context_settings: an optional dictionary with defaults that are + passed to the context object. + """ + + #: The context class to create with :meth:`make_context`. + #: + #: .. versionadded:: 8.0 + context_class: t.Type[Context] = Context + #: the default for the :attr:`Context.allow_extra_args` flag. + allow_extra_args = False + #: the default for the :attr:`Context.allow_interspersed_args` flag. + allow_interspersed_args = True + #: the default for the :attr:`Context.ignore_unknown_options` flag. + ignore_unknown_options = False + + def __init__( + self, + name: t.Optional[str], + context_settings: t.Optional[t.MutableMapping[str, t.Any]] = None, + ) -> None: + #: the name the command thinks it has. Upon registering a command + #: on a :class:`Group` the group will default the command name + #: with this information. You should instead use the + #: :class:`Context`\'s :attr:`~Context.info_name` attribute. + self.name = name + + if context_settings is None: + context_settings = {} + + #: an optional dictionary with defaults passed to the context. + self.context_settings: t.MutableMapping[str, t.Any] = context_settings + + def to_info_dict(self, ctx: Context) -> t.Dict[str, t.Any]: + """Gather information that could be useful for a tool generating + user-facing documentation. This traverses the entire structure + below this command. + + Use :meth:`click.Context.to_info_dict` to traverse the entire + CLI structure. + + :param ctx: A :class:`Context` representing this command. + + .. versionadded:: 8.0 + """ + return {"name": self.name} + + def __repr__(self) -> str: + return f"<{self.__class__.__name__} {self.name}>" + + def get_usage(self, ctx: Context) -> str: + raise NotImplementedError("Base commands cannot get usage") + + def get_help(self, ctx: Context) -> str: + raise NotImplementedError("Base commands cannot get help") + + def make_context( + self, + info_name: t.Optional[str], + args: t.List[str], + parent: t.Optional[Context] = None, + **extra: t.Any, + ) -> Context: + """This function when given an info name and arguments will kick + off the parsing and create a new :class:`Context`. It does not + invoke the actual command callback though. + + To quickly customize the context class used without overriding + this method, set the :attr:`context_class` attribute. + + :param info_name: the info name for this invocation. Generally this + is the most descriptive name for the script or + command. For the toplevel script it's usually + the name of the script, for commands below it's + the name of the command. + :param args: the arguments to parse as list of strings. + :param parent: the parent context if available. + :param extra: extra keyword arguments forwarded to the context + constructor. + + .. versionchanged:: 8.0 + Added the :attr:`context_class` attribute. + """ + for key, value in self.context_settings.items(): + if key not in extra: + extra[key] = value + + ctx = self.context_class( + self, # type: ignore[arg-type] + info_name=info_name, + parent=parent, + **extra, + ) + + with ctx.scope(cleanup=False): + self.parse_args(ctx, args) + return ctx + + def parse_args(self, ctx: Context, args: t.List[str]) -> t.List[str]: + """Given a context and a list of arguments this creates the parser + and parses the arguments, then modifies the context as necessary. + This is automatically invoked by :meth:`make_context`. + """ + raise NotImplementedError("Base commands do not know how to parse arguments.") + + def invoke(self, ctx: Context) -> t.Any: + """Given a context, this invokes the command. The default + implementation is raising a not implemented error. + """ + raise NotImplementedError("Base commands are not invocable by default") + + def shell_complete(self, ctx: Context, incomplete: str) -> t.List["CompletionItem"]: + """Return a list of completions for the incomplete value. Looks + at the names of chained multi-commands. + + Any command could be part of a chained multi-command, so sibling + commands are valid at any point during command completion. Other + command classes will return more completions. + + :param ctx: Invocation context for this command. + :param incomplete: Value being completed. May be empty. + + .. versionadded:: 8.0 + """ + from click.shell_completion import CompletionItem + + results: t.List[CompletionItem] = [] + + while ctx.parent is not None: + ctx = ctx.parent + + if isinstance(ctx.command, MultiCommand) and ctx.command.chain: + results.extend( + CompletionItem(name, help=command.get_short_help_str()) + for name, command in _complete_visible_commands(ctx, incomplete) + if name not in ctx.protected_args + ) + + return results + + @t.overload + def main( + self, + args: t.Optional[t.Sequence[str]] = None, + prog_name: t.Optional[str] = None, + complete_var: t.Optional[str] = None, + standalone_mode: "te.Literal[True]" = True, + **extra: t.Any, + ) -> "te.NoReturn": ... + + @t.overload + def main( + self, + args: t.Optional[t.Sequence[str]] = None, + prog_name: t.Optional[str] = None, + complete_var: t.Optional[str] = None, + standalone_mode: bool = ..., + **extra: t.Any, + ) -> t.Any: ... + + def main( + self, + args: t.Optional[t.Sequence[str]] = None, + prog_name: t.Optional[str] = None, + complete_var: t.Optional[str] = None, + standalone_mode: bool = True, + windows_expand_args: bool = True, + **extra: t.Any, + ) -> t.Any: + """This is the way to invoke a script with all the bells and + whistles as a command line application. This will always terminate + the application after a call. If this is not wanted, ``SystemExit`` + needs to be caught. + + This method is also available by directly calling the instance of + a :class:`Command`. + + :param args: the arguments that should be used for parsing. If not + provided, ``sys.argv[1:]`` is used. + :param prog_name: the program name that should be used. By default + the program name is constructed by taking the file + name from ``sys.argv[0]``. + :param complete_var: the environment variable that controls the + bash completion support. The default is + ``"__COMPLETE"`` with prog_name in + uppercase. + :param standalone_mode: the default behavior is to invoke the script + in standalone mode. Click will then + handle exceptions and convert them into + error messages and the function will never + return but shut down the interpreter. If + this is set to `False` they will be + propagated to the caller and the return + value of this function is the return value + of :meth:`invoke`. + :param windows_expand_args: Expand glob patterns, user dir, and + env vars in command line args on Windows. + :param extra: extra keyword arguments are forwarded to the context + constructor. See :class:`Context` for more information. + + .. versionchanged:: 8.0.1 + Added the ``windows_expand_args`` parameter to allow + disabling command line arg expansion on Windows. + + .. versionchanged:: 8.0 + When taking arguments from ``sys.argv`` on Windows, glob + patterns, user dir, and env vars are expanded. + + .. versionchanged:: 3.0 + Added the ``standalone_mode`` parameter. + """ + if args is None: + args = sys.argv[1:] + + if os.name == "nt" and windows_expand_args: + args = _expand_args(args) + else: + args = list(args) + + if prog_name is None: + prog_name = _detect_program_name() + + # Process shell completion requests and exit early. + self._main_shell_completion(extra, prog_name, complete_var) + + try: + try: + with self.make_context(prog_name, args, **extra) as ctx: + rv = self.invoke(ctx) + if not standalone_mode: + return rv + # it's not safe to `ctx.exit(rv)` here! + # note that `rv` may actually contain data like "1" which + # has obvious effects + # more subtle case: `rv=[None, None]` can come out of + # chained commands which all returned `None` -- so it's not + # even always obvious that `rv` indicates success/failure + # by its truthiness/falsiness + ctx.exit() + except (EOFError, KeyboardInterrupt) as e: + echo(file=sys.stderr) + raise Abort() from e + except ClickException as e: + if not standalone_mode: + raise + e.show() + sys.exit(e.exit_code) + except OSError as e: + if e.errno == errno.EPIPE: + sys.stdout = t.cast(t.TextIO, PacifyFlushWrapper(sys.stdout)) + sys.stderr = t.cast(t.TextIO, PacifyFlushWrapper(sys.stderr)) + sys.exit(1) + else: + raise + except Exit as e: + if standalone_mode: + sys.exit(e.exit_code) + else: + # in non-standalone mode, return the exit code + # note that this is only reached if `self.invoke` above raises + # an Exit explicitly -- thus bypassing the check there which + # would return its result + # the results of non-standalone execution may therefore be + # somewhat ambiguous: if there are codepaths which lead to + # `ctx.exit(1)` and to `return 1`, the caller won't be able to + # tell the difference between the two + return e.exit_code + except Abort: + if not standalone_mode: + raise + echo(_("Aborted!"), file=sys.stderr) + sys.exit(1) + + def _main_shell_completion( + self, + ctx_args: t.MutableMapping[str, t.Any], + prog_name: str, + complete_var: t.Optional[str] = None, + ) -> None: + """Check if the shell is asking for tab completion, process + that, then exit early. Called from :meth:`main` before the + program is invoked. + + :param prog_name: Name of the executable in the shell. + :param complete_var: Name of the environment variable that holds + the completion instruction. Defaults to + ``_{PROG_NAME}_COMPLETE``. + + .. versionchanged:: 8.2.0 + Dots (``.``) in ``prog_name`` are replaced with underscores (``_``). + """ + if complete_var is None: + complete_name = prog_name.replace("-", "_").replace(".", "_") + complete_var = f"_{complete_name}_COMPLETE".upper() + + instruction = os.environ.get(complete_var) + + if not instruction: + return + + from .shell_completion import shell_complete + + rv = shell_complete(self, ctx_args, prog_name, complete_var, instruction) + sys.exit(rv) + + def __call__(self, *args: t.Any, **kwargs: t.Any) -> t.Any: + """Alias for :meth:`main`.""" + return self.main(*args, **kwargs) + + +class Command(BaseCommand): + """Commands are the basic building block of command line interfaces in + Click. A basic command handles command line parsing and might dispatch + more parsing to commands nested below it. + + :param name: the name of the command to use unless a group overrides it. + :param context_settings: an optional dictionary with defaults that are + passed to the context object. + :param callback: the callback to invoke. This is optional. + :param params: the parameters to register with this command. This can + be either :class:`Option` or :class:`Argument` objects. + :param help: the help string to use for this command. + :param epilog: like the help string but it's printed at the end of the + help page after everything else. + :param short_help: the short help to use for this command. This is + shown on the command listing of the parent command. + :param add_help_option: by default each command registers a ``--help`` + option. This can be disabled by this parameter. + :param no_args_is_help: this controls what happens if no arguments are + provided. This option is disabled by default. + If enabled this will add ``--help`` as argument + if no arguments are passed + :param hidden: hide this command from help outputs. + + :param deprecated: issues a message indicating that + the command is deprecated. + + .. versionchanged:: 8.1 + ``help``, ``epilog``, and ``short_help`` are stored unprocessed, + all formatting is done when outputting help text, not at init, + and is done even if not using the ``@command`` decorator. + + .. versionchanged:: 8.0 + Added a ``repr`` showing the command name. + + .. versionchanged:: 7.1 + Added the ``no_args_is_help`` parameter. + + .. versionchanged:: 2.0 + Added the ``context_settings`` parameter. + """ + + def __init__( + self, + name: t.Optional[str], + context_settings: t.Optional[t.MutableMapping[str, t.Any]] = None, + callback: t.Optional[t.Callable[..., t.Any]] = None, + params: t.Optional[t.List["Parameter"]] = None, + help: t.Optional[str] = None, + epilog: t.Optional[str] = None, + short_help: t.Optional[str] = None, + options_metavar: t.Optional[str] = "[OPTIONS]", + add_help_option: bool = True, + no_args_is_help: bool = False, + hidden: bool = False, + deprecated: bool = False, + ) -> None: + super().__init__(name, context_settings) + #: the callback to execute when the command fires. This might be + #: `None` in which case nothing happens. + self.callback = callback + #: the list of parameters for this command in the order they + #: should show up in the help page and execute. Eager parameters + #: will automatically be handled before non eager ones. + self.params: t.List[Parameter] = params or [] + self.help = help + self.epilog = epilog + self.options_metavar = options_metavar + self.short_help = short_help + self.add_help_option = add_help_option + self._help_option: t.Optional[HelpOption] = None + self.no_args_is_help = no_args_is_help + self.hidden = hidden + self.deprecated = deprecated + + def to_info_dict(self, ctx: Context) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict(ctx) + info_dict.update( + params=[param.to_info_dict() for param in self.get_params(ctx)], + help=self.help, + epilog=self.epilog, + short_help=self.short_help, + hidden=self.hidden, + deprecated=self.deprecated, + ) + return info_dict + + def get_usage(self, ctx: Context) -> str: + """Formats the usage line into a string and returns it. + + Calls :meth:`format_usage` internally. + """ + formatter = ctx.make_formatter() + self.format_usage(ctx, formatter) + return formatter.getvalue().rstrip("\n") + + def get_params(self, ctx: Context) -> t.List["Parameter"]: + rv = self.params + help_option = self.get_help_option(ctx) + + if help_option is not None: + rv = [*rv, help_option] + + return rv + + def format_usage(self, ctx: Context, formatter: HelpFormatter) -> None: + """Writes the usage line into the formatter. + + This is a low-level method called by :meth:`get_usage`. + """ + pieces = self.collect_usage_pieces(ctx) + formatter.write_usage(ctx.command_path, " ".join(pieces)) + + def collect_usage_pieces(self, ctx: Context) -> t.List[str]: + """Returns all the pieces that go into the usage line and returns + it as a list of strings. + """ + rv = [self.options_metavar] if self.options_metavar else [] + + for param in self.get_params(ctx): + rv.extend(param.get_usage_pieces(ctx)) + + return rv + + def get_help_option_names(self, ctx: Context) -> t.List[str]: + """Returns the names for the help option.""" + all_names = set(ctx.help_option_names) + for param in self.params: + all_names.difference_update(param.opts) + all_names.difference_update(param.secondary_opts) + return list(all_names) + + def get_help_option(self, ctx: Context) -> t.Optional["Option"]: + """Returns the help option object. + + Unless ``add_help_option`` is ``False``. + + .. versionchanged:: 8.1.8 + The help option is now cached to avoid creating it multiple times. + """ + help_options = self.get_help_option_names(ctx) + + if not help_options or not self.add_help_option: + return None + + # Cache the help option object in private _help_option attribute to + # avoid creating it multiple times. Not doing this will break the + # callback odering by iter_params_for_processing(), which relies on + # object comparison. + if self._help_option is None: + # Avoid circular import. + from .decorators import HelpOption + + self._help_option = HelpOption(help_options) + + return self._help_option + + def make_parser(self, ctx: Context) -> OptionParser: + """Creates the underlying option parser for this command.""" + parser = OptionParser(ctx) + for param in self.get_params(ctx): + param.add_to_parser(parser, ctx) + return parser + + def get_help(self, ctx: Context) -> str: + """Formats the help into a string and returns it. + + Calls :meth:`format_help` internally. + """ + formatter = ctx.make_formatter() + self.format_help(ctx, formatter) + return formatter.getvalue().rstrip("\n") + + def get_short_help_str(self, limit: int = 45) -> str: + """Gets short help for the command or makes it by shortening the + long help string. + """ + if self.short_help: + text = inspect.cleandoc(self.short_help) + elif self.help: + text = make_default_short_help(self.help, limit) + else: + text = "" + + if self.deprecated: + text = _("(Deprecated) {text}").format(text=text) + + return text.strip() + + def format_help(self, ctx: Context, formatter: HelpFormatter) -> None: + """Writes the help into the formatter if it exists. + + This is a low-level method called by :meth:`get_help`. + + This calls the following methods: + + - :meth:`format_usage` + - :meth:`format_help_text` + - :meth:`format_options` + - :meth:`format_epilog` + """ + self.format_usage(ctx, formatter) + self.format_help_text(ctx, formatter) + self.format_options(ctx, formatter) + self.format_epilog(ctx, formatter) + + def format_help_text(self, ctx: Context, formatter: HelpFormatter) -> None: + """Writes the help text to the formatter if it exists.""" + if self.help is not None: + # truncate the help text to the first form feed + text = inspect.cleandoc(self.help).partition("\f")[0] + else: + text = "" + + if self.deprecated: + text = _("(Deprecated) {text}").format(text=text) + + if text: + formatter.write_paragraph() + + with formatter.indentation(): + formatter.write_text(text) + + def format_options(self, ctx: Context, formatter: HelpFormatter) -> None: + """Writes all the options into the formatter if they exist.""" + opts = [] + for param in self.get_params(ctx): + rv = param.get_help_record(ctx) + if rv is not None: + opts.append(rv) + + if opts: + with formatter.section(_("Options")): + formatter.write_dl(opts) + + def format_epilog(self, ctx: Context, formatter: HelpFormatter) -> None: + """Writes the epilog into the formatter if it exists.""" + if self.epilog: + epilog = inspect.cleandoc(self.epilog) + formatter.write_paragraph() + + with formatter.indentation(): + formatter.write_text(epilog) + + def parse_args(self, ctx: Context, args: t.List[str]) -> t.List[str]: + if not args and self.no_args_is_help and not ctx.resilient_parsing: + echo(ctx.get_help(), color=ctx.color) + ctx.exit() + + parser = self.make_parser(ctx) + opts, args, param_order = parser.parse_args(args=args) + + for param in iter_params_for_processing(param_order, self.get_params(ctx)): + value, args = param.handle_parse_result(ctx, opts, args) + + if args and not ctx.allow_extra_args and not ctx.resilient_parsing: + ctx.fail( + ngettext( + "Got unexpected extra argument ({args})", + "Got unexpected extra arguments ({args})", + len(args), + ).format(args=" ".join(map(str, args))) + ) + + ctx.args = args + ctx._opt_prefixes.update(parser._opt_prefixes) + return args + + def invoke(self, ctx: Context) -> t.Any: + """Given a context, this invokes the attached callback (if it exists) + in the right way. + """ + if self.deprecated: + message = _( + "DeprecationWarning: The command {name!r} is deprecated." + ).format(name=self.name) + echo(style(message, fg="red"), err=True) + + if self.callback is not None: + return ctx.invoke(self.callback, **ctx.params) + + def shell_complete(self, ctx: Context, incomplete: str) -> t.List["CompletionItem"]: + """Return a list of completions for the incomplete value. Looks + at the names of options and chained multi-commands. + + :param ctx: Invocation context for this command. + :param incomplete: Value being completed. May be empty. + + .. versionadded:: 8.0 + """ + from click.shell_completion import CompletionItem + + results: t.List[CompletionItem] = [] + + if incomplete and not incomplete[0].isalnum(): + for param in self.get_params(ctx): + if ( + not isinstance(param, Option) + or param.hidden + or ( + not param.multiple + and ctx.get_parameter_source(param.name) # type: ignore + is ParameterSource.COMMANDLINE + ) + ): + continue + + results.extend( + CompletionItem(name, help=param.help) + for name in [*param.opts, *param.secondary_opts] + if name.startswith(incomplete) + ) + + results.extend(super().shell_complete(ctx, incomplete)) + return results + + +class MultiCommand(Command): + """A multi command is the basic implementation of a command that + dispatches to subcommands. The most common version is the + :class:`Group`. + + :param invoke_without_command: this controls how the multi command itself + is invoked. By default it's only invoked + if a subcommand is provided. + :param no_args_is_help: this controls what happens if no arguments are + provided. This option is enabled by default if + `invoke_without_command` is disabled or disabled + if it's enabled. If enabled this will add + ``--help`` as argument if no arguments are + passed. + :param subcommand_metavar: the string that is used in the documentation + to indicate the subcommand place. + :param chain: if this is set to `True` chaining of multiple subcommands + is enabled. This restricts the form of commands in that + they cannot have optional arguments but it allows + multiple commands to be chained together. + :param result_callback: The result callback to attach to this multi + command. This can be set or changed later with the + :meth:`result_callback` decorator. + :param attrs: Other command arguments described in :class:`Command`. + """ + + allow_extra_args = True + allow_interspersed_args = False + + def __init__( + self, + name: t.Optional[str] = None, + invoke_without_command: bool = False, + no_args_is_help: t.Optional[bool] = None, + subcommand_metavar: t.Optional[str] = None, + chain: bool = False, + result_callback: t.Optional[t.Callable[..., t.Any]] = None, + **attrs: t.Any, + ) -> None: + super().__init__(name, **attrs) + + if no_args_is_help is None: + no_args_is_help = not invoke_without_command + + self.no_args_is_help = no_args_is_help + self.invoke_without_command = invoke_without_command + + if subcommand_metavar is None: + if chain: + subcommand_metavar = "COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]..." + else: + subcommand_metavar = "COMMAND [ARGS]..." + + self.subcommand_metavar = subcommand_metavar + self.chain = chain + # The result callback that is stored. This can be set or + # overridden with the :func:`result_callback` decorator. + self._result_callback = result_callback + + if self.chain: + for param in self.params: + if isinstance(param, Argument) and not param.required: + raise RuntimeError( + "Multi commands in chain mode cannot have" + " optional arguments." + ) + + def to_info_dict(self, ctx: Context) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict(ctx) + commands = {} + + for name in self.list_commands(ctx): + command = self.get_command(ctx, name) + + if command is None: + continue + + sub_ctx = ctx._make_sub_context(command) + + with sub_ctx.scope(cleanup=False): + commands[name] = command.to_info_dict(sub_ctx) + + info_dict.update(commands=commands, chain=self.chain) + return info_dict + + def collect_usage_pieces(self, ctx: Context) -> t.List[str]: + rv = super().collect_usage_pieces(ctx) + rv.append(self.subcommand_metavar) + return rv + + def format_options(self, ctx: Context, formatter: HelpFormatter) -> None: + super().format_options(ctx, formatter) + self.format_commands(ctx, formatter) + + def result_callback(self, replace: bool = False) -> t.Callable[[F], F]: + """Adds a result callback to the command. By default if a + result callback is already registered this will chain them but + this can be disabled with the `replace` parameter. The result + callback is invoked with the return value of the subcommand + (or the list of return values from all subcommands if chaining + is enabled) as well as the parameters as they would be passed + to the main callback. + + Example:: + + @click.group() + @click.option('-i', '--input', default=23) + def cli(input): + return 42 + + @cli.result_callback() + def process_result(result, input): + return result + input + + :param replace: if set to `True` an already existing result + callback will be removed. + + .. versionchanged:: 8.0 + Renamed from ``resultcallback``. + + .. versionadded:: 3.0 + """ + + def decorator(f: F) -> F: + old_callback = self._result_callback + + if old_callback is None or replace: + self._result_callback = f + return f + + def function(__value, *args, **kwargs): # type: ignore + inner = old_callback(__value, *args, **kwargs) + return f(inner, *args, **kwargs) + + self._result_callback = rv = update_wrapper(t.cast(F, function), f) + return rv # type: ignore[return-value] + + return decorator + + def format_commands(self, ctx: Context, formatter: HelpFormatter) -> None: + """Extra format methods for multi methods that adds all the commands + after the options. + """ + commands = [] + for subcommand in self.list_commands(ctx): + cmd = self.get_command(ctx, subcommand) + # What is this, the tool lied about a command. Ignore it + if cmd is None: + continue + if cmd.hidden: + continue + + commands.append((subcommand, cmd)) + + # allow for 3 times the default spacing + if len(commands): + limit = formatter.width - 6 - max(len(cmd[0]) for cmd in commands) + + rows = [] + for subcommand, cmd in commands: + help = cmd.get_short_help_str(limit) + rows.append((subcommand, help)) + + if rows: + with formatter.section(_("Commands")): + formatter.write_dl(rows) + + def parse_args(self, ctx: Context, args: t.List[str]) -> t.List[str]: + if not args and self.no_args_is_help and not ctx.resilient_parsing: + echo(ctx.get_help(), color=ctx.color) + ctx.exit() + + rest = super().parse_args(ctx, args) + + if self.chain: + ctx.protected_args = rest + ctx.args = [] + elif rest: + ctx.protected_args, ctx.args = rest[:1], rest[1:] + + return ctx.args + + def invoke(self, ctx: Context) -> t.Any: + def _process_result(value: t.Any) -> t.Any: + if self._result_callback is not None: + value = ctx.invoke(self._result_callback, value, **ctx.params) + return value + + if not ctx.protected_args: + if self.invoke_without_command: + # No subcommand was invoked, so the result callback is + # invoked with the group return value for regular + # groups, or an empty list for chained groups. + with ctx: + rv = super().invoke(ctx) + return _process_result([] if self.chain else rv) + ctx.fail(_("Missing command.")) + + # Fetch args back out + args = [*ctx.protected_args, *ctx.args] + ctx.args = [] + ctx.protected_args = [] + + # If we're not in chain mode, we only allow the invocation of a + # single command but we also inform the current context about the + # name of the command to invoke. + if not self.chain: + # Make sure the context is entered so we do not clean up + # resources until the result processor has worked. + with ctx: + cmd_name, cmd, args = self.resolve_command(ctx, args) + assert cmd is not None + ctx.invoked_subcommand = cmd_name + super().invoke(ctx) + sub_ctx = cmd.make_context(cmd_name, args, parent=ctx) + with sub_ctx: + return _process_result(sub_ctx.command.invoke(sub_ctx)) + + # In chain mode we create the contexts step by step, but after the + # base command has been invoked. Because at that point we do not + # know the subcommands yet, the invoked subcommand attribute is + # set to ``*`` to inform the command that subcommands are executed + # but nothing else. + with ctx: + ctx.invoked_subcommand = "*" if args else None + super().invoke(ctx) + + # Otherwise we make every single context and invoke them in a + # chain. In that case the return value to the result processor + # is the list of all invoked subcommand's results. + contexts = [] + while args: + cmd_name, cmd, args = self.resolve_command(ctx, args) + assert cmd is not None + sub_ctx = cmd.make_context( + cmd_name, + args, + parent=ctx, + allow_extra_args=True, + allow_interspersed_args=False, + ) + contexts.append(sub_ctx) + args, sub_ctx.args = sub_ctx.args, [] + + rv = [] + for sub_ctx in contexts: + with sub_ctx: + rv.append(sub_ctx.command.invoke(sub_ctx)) + return _process_result(rv) + + def resolve_command( + self, ctx: Context, args: t.List[str] + ) -> t.Tuple[t.Optional[str], t.Optional[Command], t.List[str]]: + cmd_name = make_str(args[0]) + original_cmd_name = cmd_name + + # Get the command + cmd = self.get_command(ctx, cmd_name) + + # If we can't find the command but there is a normalization + # function available, we try with that one. + if cmd is None and ctx.token_normalize_func is not None: + cmd_name = ctx.token_normalize_func(cmd_name) + cmd = self.get_command(ctx, cmd_name) + + # If we don't find the command we want to show an error message + # to the user that it was not provided. However, there is + # something else we should do: if the first argument looks like + # an option we want to kick off parsing again for arguments to + # resolve things like --help which now should go to the main + # place. + if cmd is None and not ctx.resilient_parsing: + if split_opt(cmd_name)[0]: + self.parse_args(ctx, ctx.args) + ctx.fail(_("No such command {name!r}.").format(name=original_cmd_name)) + return cmd_name if cmd else None, cmd, args[1:] + + def get_command(self, ctx: Context, cmd_name: str) -> t.Optional[Command]: + """Given a context and a command name, this returns a + :class:`Command` object if it exists or returns `None`. + """ + raise NotImplementedError + + def list_commands(self, ctx: Context) -> t.List[str]: + """Returns a list of subcommand names in the order they should + appear. + """ + return [] + + def shell_complete(self, ctx: Context, incomplete: str) -> t.List["CompletionItem"]: + """Return a list of completions for the incomplete value. Looks + at the names of options, subcommands, and chained + multi-commands. + + :param ctx: Invocation context for this command. + :param incomplete: Value being completed. May be empty. + + .. versionadded:: 8.0 + """ + from click.shell_completion import CompletionItem + + results = [ + CompletionItem(name, help=command.get_short_help_str()) + for name, command in _complete_visible_commands(ctx, incomplete) + ] + results.extend(super().shell_complete(ctx, incomplete)) + return results + + +class Group(MultiCommand): + """A group allows a command to have subcommands attached. This is + the most common way to implement nesting in Click. + + :param name: The name of the group command. + :param commands: A dict mapping names to :class:`Command` objects. + Can also be a list of :class:`Command`, which will use + :attr:`Command.name` to create the dict. + :param attrs: Other command arguments described in + :class:`MultiCommand`, :class:`Command`, and + :class:`BaseCommand`. + + .. versionchanged:: 8.0 + The ``commands`` argument can be a list of command objects. + """ + + #: If set, this is used by the group's :meth:`command` decorator + #: as the default :class:`Command` class. This is useful to make all + #: subcommands use a custom command class. + #: + #: .. versionadded:: 8.0 + command_class: t.Optional[t.Type[Command]] = None + + #: If set, this is used by the group's :meth:`group` decorator + #: as the default :class:`Group` class. This is useful to make all + #: subgroups use a custom group class. + #: + #: If set to the special value :class:`type` (literally + #: ``group_class = type``), this group's class will be used as the + #: default class. This makes a custom group class continue to make + #: custom groups. + #: + #: .. versionadded:: 8.0 + group_class: t.Optional[t.Union[t.Type["Group"], t.Type[type]]] = None + # Literal[type] isn't valid, so use Type[type] + + def __init__( + self, + name: t.Optional[str] = None, + commands: t.Optional[ + t.Union[t.MutableMapping[str, Command], t.Sequence[Command]] + ] = None, + **attrs: t.Any, + ) -> None: + super().__init__(name, **attrs) + + if commands is None: + commands = {} + elif isinstance(commands, abc.Sequence): + commands = {c.name: c for c in commands if c.name is not None} + + #: The registered subcommands by their exported names. + self.commands: t.MutableMapping[str, Command] = commands + + def add_command(self, cmd: Command, name: t.Optional[str] = None) -> None: + """Registers another :class:`Command` with this group. If the name + is not provided, the name of the command is used. + """ + name = name or cmd.name + if name is None: + raise TypeError("Command has no name.") + _check_multicommand(self, name, cmd, register=True) + self.commands[name] = cmd + + @t.overload + def command(self, __func: t.Callable[..., t.Any]) -> Command: ... + + @t.overload + def command( + self, *args: t.Any, **kwargs: t.Any + ) -> t.Callable[[t.Callable[..., t.Any]], Command]: ... + + def command( + self, *args: t.Any, **kwargs: t.Any + ) -> t.Union[t.Callable[[t.Callable[..., t.Any]], Command], Command]: + """A shortcut decorator for declaring and attaching a command to + the group. This takes the same arguments as :func:`command` and + immediately registers the created command with this group by + calling :meth:`add_command`. + + To customize the command class used, set the + :attr:`command_class` attribute. + + .. versionchanged:: 8.1 + This decorator can be applied without parentheses. + + .. versionchanged:: 8.0 + Added the :attr:`command_class` attribute. + """ + from .decorators import command + + func: t.Optional[t.Callable[..., t.Any]] = None + + if args and callable(args[0]): + assert ( + len(args) == 1 and not kwargs + ), "Use 'command(**kwargs)(callable)' to provide arguments." + (func,) = args + args = () + + if self.command_class and kwargs.get("cls") is None: + kwargs["cls"] = self.command_class + + def decorator(f: t.Callable[..., t.Any]) -> Command: + cmd: Command = command(*args, **kwargs)(f) + self.add_command(cmd) + return cmd + + if func is not None: + return decorator(func) + + return decorator + + @t.overload + def group(self, __func: t.Callable[..., t.Any]) -> "Group": ... + + @t.overload + def group( + self, *args: t.Any, **kwargs: t.Any + ) -> t.Callable[[t.Callable[..., t.Any]], "Group"]: ... + + def group( + self, *args: t.Any, **kwargs: t.Any + ) -> t.Union[t.Callable[[t.Callable[..., t.Any]], "Group"], "Group"]: + """A shortcut decorator for declaring and attaching a group to + the group. This takes the same arguments as :func:`group` and + immediately registers the created group with this group by + calling :meth:`add_command`. + + To customize the group class used, set the :attr:`group_class` + attribute. + + .. versionchanged:: 8.1 + This decorator can be applied without parentheses. + + .. versionchanged:: 8.0 + Added the :attr:`group_class` attribute. + """ + from .decorators import group + + func: t.Optional[t.Callable[..., t.Any]] = None + + if args and callable(args[0]): + assert ( + len(args) == 1 and not kwargs + ), "Use 'group(**kwargs)(callable)' to provide arguments." + (func,) = args + args = () + + if self.group_class is not None and kwargs.get("cls") is None: + if self.group_class is type: + kwargs["cls"] = type(self) + else: + kwargs["cls"] = self.group_class + + def decorator(f: t.Callable[..., t.Any]) -> "Group": + cmd: Group = group(*args, **kwargs)(f) + self.add_command(cmd) + return cmd + + if func is not None: + return decorator(func) + + return decorator + + def get_command(self, ctx: Context, cmd_name: str) -> t.Optional[Command]: + return self.commands.get(cmd_name) + + def list_commands(self, ctx: Context) -> t.List[str]: + return sorted(self.commands) + + +class CommandCollection(MultiCommand): + """A command collection is a multi command that merges multiple multi + commands together into one. This is a straightforward implementation + that accepts a list of different multi commands as sources and + provides all the commands for each of them. + + See :class:`MultiCommand` and :class:`Command` for the description of + ``name`` and ``attrs``. + """ + + def __init__( + self, + name: t.Optional[str] = None, + sources: t.Optional[t.List[MultiCommand]] = None, + **attrs: t.Any, + ) -> None: + super().__init__(name, **attrs) + #: The list of registered multi commands. + self.sources: t.List[MultiCommand] = sources or [] + + def add_source(self, multi_cmd: MultiCommand) -> None: + """Adds a new multi command to the chain dispatcher.""" + self.sources.append(multi_cmd) + + def get_command(self, ctx: Context, cmd_name: str) -> t.Optional[Command]: + for source in self.sources: + rv = source.get_command(ctx, cmd_name) + + if rv is not None: + if self.chain: + _check_multicommand(self, cmd_name, rv) + + return rv + + return None + + def list_commands(self, ctx: Context) -> t.List[str]: + rv: t.Set[str] = set() + + for source in self.sources: + rv.update(source.list_commands(ctx)) + + return sorted(rv) + + +def _check_iter(value: t.Any) -> t.Iterator[t.Any]: + """Check if the value is iterable but not a string. Raises a type + error, or return an iterator over the value. + """ + if isinstance(value, str): + raise TypeError + + return iter(value) + + +class Parameter: + r"""A parameter to a command comes in two versions: they are either + :class:`Option`\s or :class:`Argument`\s. Other subclasses are currently + not supported by design as some of the internals for parsing are + intentionally not finalized. + + Some settings are supported by both options and arguments. + + :param param_decls: the parameter declarations for this option or + argument. This is a list of flags or argument + names. + :param type: the type that should be used. Either a :class:`ParamType` + or a Python type. The latter is converted into the former + automatically if supported. + :param required: controls if this is optional or not. + :param default: the default value if omitted. This can also be a callable, + in which case it's invoked when the default is needed + without any arguments. + :param callback: A function to further process or validate the value + after type conversion. It is called as ``f(ctx, param, value)`` + and must return the value. It is called for all sources, + including prompts. + :param nargs: the number of arguments to match. If not ``1`` the return + value is a tuple instead of single value. The default for + nargs is ``1`` (except if the type is a tuple, then it's + the arity of the tuple). If ``nargs=-1``, all remaining + parameters are collected. + :param metavar: how the value is represented in the help page. + :param expose_value: if this is `True` then the value is passed onwards + to the command callback and stored on the context, + otherwise it's skipped. + :param is_eager: eager values are processed before non eager ones. This + should not be set for arguments or it will inverse the + order of processing. + :param envvar: a string or list of strings that are environment variables + that should be checked. + :param shell_complete: A function that returns custom shell + completions. Used instead of the param's type completion if + given. Takes ``ctx, param, incomplete`` and must return a list + of :class:`~click.shell_completion.CompletionItem` or a list of + strings. + + .. versionchanged:: 8.0 + ``process_value`` validates required parameters and bounded + ``nargs``, and invokes the parameter callback before returning + the value. This allows the callback to validate prompts. + ``full_process_value`` is removed. + + .. versionchanged:: 8.0 + ``autocompletion`` is renamed to ``shell_complete`` and has new + semantics described above. The old name is deprecated and will + be removed in 8.1, until then it will be wrapped to match the + new requirements. + + .. versionchanged:: 8.0 + For ``multiple=True, nargs>1``, the default must be a list of + tuples. + + .. versionchanged:: 8.0 + Setting a default is no longer required for ``nargs>1``, it will + default to ``None``. ``multiple=True`` or ``nargs=-1`` will + default to ``()``. + + .. versionchanged:: 7.1 + Empty environment variables are ignored rather than taking the + empty string value. This makes it possible for scripts to clear + variables if they can't unset them. + + .. versionchanged:: 2.0 + Changed signature for parameter callback to also be passed the + parameter. The old callback format will still work, but it will + raise a warning to give you a chance to migrate the code easier. + """ + + param_type_name = "parameter" + + def __init__( + self, + param_decls: t.Optional[t.Sequence[str]] = None, + type: t.Optional[t.Union[types.ParamType, t.Any]] = None, + required: bool = False, + default: t.Optional[t.Union[t.Any, t.Callable[[], t.Any]]] = None, + callback: t.Optional[t.Callable[[Context, "Parameter", t.Any], t.Any]] = None, + nargs: t.Optional[int] = None, + multiple: bool = False, + metavar: t.Optional[str] = None, + expose_value: bool = True, + is_eager: bool = False, + envvar: t.Optional[t.Union[str, t.Sequence[str]]] = None, + shell_complete: t.Optional[ + t.Callable[ + [Context, "Parameter", str], + t.Union[t.List["CompletionItem"], t.List[str]], + ] + ] = None, + ) -> None: + self.name: t.Optional[str] + self.opts: t.List[str] + self.secondary_opts: t.List[str] + self.name, self.opts, self.secondary_opts = self._parse_decls( + param_decls or (), expose_value + ) + self.type: types.ParamType = types.convert_type(type, default) + + # Default nargs to what the type tells us if we have that + # information available. + if nargs is None: + if self.type.is_composite: + nargs = self.type.arity + else: + nargs = 1 + + self.required = required + self.callback = callback + self.nargs = nargs + self.multiple = multiple + self.expose_value = expose_value + self.default = default + self.is_eager = is_eager + self.metavar = metavar + self.envvar = envvar + self._custom_shell_complete = shell_complete + + if __debug__: + if self.type.is_composite and nargs != self.type.arity: + raise ValueError( + f"'nargs' must be {self.type.arity} (or None) for" + f" type {self.type!r}, but it was {nargs}." + ) + + # Skip no default or callable default. + check_default = default if not callable(default) else None + + if check_default is not None: + if multiple: + try: + # Only check the first value against nargs. + check_default = next(_check_iter(check_default), None) + except TypeError: + raise ValueError( + "'default' must be a list when 'multiple' is true." + ) from None + + # Can be None for multiple with empty default. + if nargs != 1 and check_default is not None: + try: + _check_iter(check_default) + except TypeError: + if multiple: + message = ( + "'default' must be a list of lists when 'multiple' is" + " true and 'nargs' != 1." + ) + else: + message = "'default' must be a list when 'nargs' != 1." + + raise ValueError(message) from None + + if nargs > 1 and len(check_default) != nargs: + subject = "item length" if multiple else "length" + raise ValueError( + f"'default' {subject} must match nargs={nargs}." + ) + + def to_info_dict(self) -> t.Dict[str, t.Any]: + """Gather information that could be useful for a tool generating + user-facing documentation. + + Use :meth:`click.Context.to_info_dict` to traverse the entire + CLI structure. + + .. versionadded:: 8.0 + """ + return { + "name": self.name, + "param_type_name": self.param_type_name, + "opts": self.opts, + "secondary_opts": self.secondary_opts, + "type": self.type.to_info_dict(), + "required": self.required, + "nargs": self.nargs, + "multiple": self.multiple, + "default": self.default, + "envvar": self.envvar, + } + + def __repr__(self) -> str: + return f"<{self.__class__.__name__} {self.name}>" + + def _parse_decls( + self, decls: t.Sequence[str], expose_value: bool + ) -> t.Tuple[t.Optional[str], t.List[str], t.List[str]]: + raise NotImplementedError() + + @property + def human_readable_name(self) -> str: + """Returns the human readable name of this parameter. This is the + same as the name for options, but the metavar for arguments. + """ + return self.name # type: ignore + + def make_metavar(self) -> str: + if self.metavar is not None: + return self.metavar + + metavar = self.type.get_metavar(self) + + if metavar is None: + metavar = self.type.name.upper() + + if self.nargs != 1: + metavar += "..." + + return metavar + + @t.overload + def get_default( + self, ctx: Context, call: "te.Literal[True]" = True + ) -> t.Optional[t.Any]: ... + + @t.overload + def get_default( + self, ctx: Context, call: bool = ... + ) -> t.Optional[t.Union[t.Any, t.Callable[[], t.Any]]]: ... + + def get_default( + self, ctx: Context, call: bool = True + ) -> t.Optional[t.Union[t.Any, t.Callable[[], t.Any]]]: + """Get the default for the parameter. Tries + :meth:`Context.lookup_default` first, then the local default. + + :param ctx: Current context. + :param call: If the default is a callable, call it. Disable to + return the callable instead. + + .. versionchanged:: 8.0.2 + Type casting is no longer performed when getting a default. + + .. versionchanged:: 8.0.1 + Type casting can fail in resilient parsing mode. Invalid + defaults will not prevent showing help text. + + .. versionchanged:: 8.0 + Looks at ``ctx.default_map`` first. + + .. versionchanged:: 8.0 + Added the ``call`` parameter. + """ + value = ctx.lookup_default(self.name, call=False) # type: ignore + + if value is None: + value = self.default + + if call and callable(value): + value = value() + + return value + + def add_to_parser(self, parser: OptionParser, ctx: Context) -> None: + raise NotImplementedError() + + def consume_value( + self, ctx: Context, opts: t.Mapping[str, t.Any] + ) -> t.Tuple[t.Any, ParameterSource]: + value = opts.get(self.name) # type: ignore + source = ParameterSource.COMMANDLINE + + if value is None: + value = self.value_from_envvar(ctx) + source = ParameterSource.ENVIRONMENT + + if value is None: + value = ctx.lookup_default(self.name) # type: ignore + source = ParameterSource.DEFAULT_MAP + + if value is None: + value = self.get_default(ctx) + source = ParameterSource.DEFAULT + + return value, source + + def type_cast_value(self, ctx: Context, value: t.Any) -> t.Any: + """Convert and validate a value against the option's + :attr:`type`, :attr:`multiple`, and :attr:`nargs`. + """ + if value is None: + return () if self.multiple or self.nargs == -1 else None + + def check_iter(value: t.Any) -> t.Iterator[t.Any]: + try: + return _check_iter(value) + except TypeError: + # This should only happen when passing in args manually, + # the parser should construct an iterable when parsing + # the command line. + raise BadParameter( + _("Value must be an iterable."), ctx=ctx, param=self + ) from None + + if self.nargs == 1 or self.type.is_composite: + + def convert(value: t.Any) -> t.Any: + return self.type(value, param=self, ctx=ctx) + + elif self.nargs == -1: + + def convert(value: t.Any) -> t.Any: # t.Tuple[t.Any, ...] + return tuple(self.type(x, self, ctx) for x in check_iter(value)) + + else: # nargs > 1 + + def convert(value: t.Any) -> t.Any: # t.Tuple[t.Any, ...] + value = tuple(check_iter(value)) + + if len(value) != self.nargs: + raise BadParameter( + ngettext( + "Takes {nargs} values but 1 was given.", + "Takes {nargs} values but {len} were given.", + len(value), + ).format(nargs=self.nargs, len=len(value)), + ctx=ctx, + param=self, + ) + + return tuple(self.type(x, self, ctx) for x in value) + + if self.multiple: + return tuple(convert(x) for x in check_iter(value)) + + return convert(value) + + def value_is_missing(self, value: t.Any) -> bool: + if value is None: + return True + + if (self.nargs != 1 or self.multiple) and value == (): + return True + + return False + + def process_value(self, ctx: Context, value: t.Any) -> t.Any: + value = self.type_cast_value(ctx, value) + + if self.required and self.value_is_missing(value): + raise MissingParameter(ctx=ctx, param=self) + + if self.callback is not None: + value = self.callback(ctx, self, value) + + return value + + def resolve_envvar_value(self, ctx: Context) -> t.Optional[str]: + if self.envvar is None: + return None + + if isinstance(self.envvar, str): + rv = os.environ.get(self.envvar) + + if rv: + return rv + else: + for envvar in self.envvar: + rv = os.environ.get(envvar) + + if rv: + return rv + + return None + + def value_from_envvar(self, ctx: Context) -> t.Optional[t.Any]: + rv: t.Optional[t.Any] = self.resolve_envvar_value(ctx) + + if rv is not None and self.nargs != 1: + rv = self.type.split_envvar_value(rv) + + return rv + + def handle_parse_result( + self, ctx: Context, opts: t.Mapping[str, t.Any], args: t.List[str] + ) -> t.Tuple[t.Any, t.List[str]]: + with augment_usage_errors(ctx, param=self): + value, source = self.consume_value(ctx, opts) + ctx.set_parameter_source(self.name, source) # type: ignore + + try: + value = self.process_value(ctx, value) + except Exception: + if not ctx.resilient_parsing: + raise + + value = None + + if self.expose_value: + ctx.params[self.name] = value # type: ignore + + return value, args + + def get_help_record(self, ctx: Context) -> t.Optional[t.Tuple[str, str]]: + pass + + def get_usage_pieces(self, ctx: Context) -> t.List[str]: + return [] + + def get_error_hint(self, ctx: Context) -> str: + """Get a stringified version of the param for use in error messages to + indicate which param caused the error. + """ + hint_list = self.opts or [self.human_readable_name] + return " / ".join(f"'{x}'" for x in hint_list) + + def shell_complete(self, ctx: Context, incomplete: str) -> t.List["CompletionItem"]: + """Return a list of completions for the incomplete value. If a + ``shell_complete`` function was given during init, it is used. + Otherwise, the :attr:`type` + :meth:`~click.types.ParamType.shell_complete` function is used. + + :param ctx: Invocation context for this command. + :param incomplete: Value being completed. May be empty. + + .. versionadded:: 8.0 + """ + if self._custom_shell_complete is not None: + results = self._custom_shell_complete(ctx, self, incomplete) + + if results and isinstance(results[0], str): + from click.shell_completion import CompletionItem + + results = [CompletionItem(c) for c in results] + + return t.cast(t.List["CompletionItem"], results) + + return self.type.shell_complete(ctx, self, incomplete) + + +class Option(Parameter): + """Options are usually optional values on the command line and + have some extra features that arguments don't have. + + All other parameters are passed onwards to the parameter constructor. + + :param show_default: Show the default value for this option in its + help text. Values are not shown by default, unless + :attr:`Context.show_default` is ``True``. If this value is a + string, it shows that string in parentheses instead of the + actual value. This is particularly useful for dynamic options. + For single option boolean flags, the default remains hidden if + its value is ``False``. + :param show_envvar: Controls if an environment variable should be + shown on the help page. Normally, environment variables are not + shown. + :param prompt: If set to ``True`` or a non empty string then the + user will be prompted for input. If set to ``True`` the prompt + will be the option name capitalized. + :param confirmation_prompt: Prompt a second time to confirm the + value if it was prompted for. Can be set to a string instead of + ``True`` to customize the message. + :param prompt_required: If set to ``False``, the user will be + prompted for input only when the option was specified as a flag + without a value. + :param hide_input: If this is ``True`` then the input on the prompt + will be hidden from the user. This is useful for password input. + :param is_flag: forces this option to act as a flag. The default is + auto detection. + :param flag_value: which value should be used for this flag if it's + enabled. This is set to a boolean automatically if + the option string contains a slash to mark two options. + :param multiple: if this is set to `True` then the argument is accepted + multiple times and recorded. This is similar to ``nargs`` + in how it works but supports arbitrary number of + arguments. + :param count: this flag makes an option increment an integer. + :param allow_from_autoenv: if this is enabled then the value of this + parameter will be pulled from an environment + variable in case a prefix is defined on the + context. + :param help: the help string. + :param hidden: hide this option from help outputs. + :param attrs: Other command arguments described in :class:`Parameter`. + + .. versionchanged:: 8.1.0 + Help text indentation is cleaned here instead of only in the + ``@option`` decorator. + + .. versionchanged:: 8.1.0 + The ``show_default`` parameter overrides + ``Context.show_default``. + + .. versionchanged:: 8.1.0 + The default of a single option boolean flag is not shown if the + default value is ``False``. + + .. versionchanged:: 8.0.1 + ``type`` is detected from ``flag_value`` if given. + """ + + param_type_name = "option" + + def __init__( + self, + param_decls: t.Optional[t.Sequence[str]] = None, + show_default: t.Union[bool, str, None] = None, + prompt: t.Union[bool, str] = False, + confirmation_prompt: t.Union[bool, str] = False, + prompt_required: bool = True, + hide_input: bool = False, + is_flag: t.Optional[bool] = None, + flag_value: t.Optional[t.Any] = None, + multiple: bool = False, + count: bool = False, + allow_from_autoenv: bool = True, + type: t.Optional[t.Union[types.ParamType, t.Any]] = None, + help: t.Optional[str] = None, + hidden: bool = False, + show_choices: bool = True, + show_envvar: bool = False, + **attrs: t.Any, + ) -> None: + if help: + help = inspect.cleandoc(help) + + default_is_missing = "default" not in attrs + super().__init__(param_decls, type=type, multiple=multiple, **attrs) + + if prompt is True: + if self.name is None: + raise TypeError("'name' is required with 'prompt=True'.") + + prompt_text: t.Optional[str] = self.name.replace("_", " ").capitalize() + elif prompt is False: + prompt_text = None + else: + prompt_text = prompt + + self.prompt = prompt_text + self.confirmation_prompt = confirmation_prompt + self.prompt_required = prompt_required + self.hide_input = hide_input + self.hidden = hidden + + # If prompt is enabled but not required, then the option can be + # used as a flag to indicate using prompt or flag_value. + self._flag_needs_value = self.prompt is not None and not self.prompt_required + + if is_flag is None: + if flag_value is not None: + # Implicitly a flag because flag_value was set. + is_flag = True + elif self._flag_needs_value: + # Not a flag, but when used as a flag it shows a prompt. + is_flag = False + else: + # Implicitly a flag because flag options were given. + is_flag = bool(self.secondary_opts) + elif is_flag is False and not self._flag_needs_value: + # Not a flag, and prompt is not enabled, can be used as a + # flag if flag_value is set. + self._flag_needs_value = flag_value is not None + + self.default: t.Union[t.Any, t.Callable[[], t.Any]] + + if is_flag and default_is_missing and not self.required: + if multiple: + self.default = () + else: + self.default = False + + if flag_value is None: + flag_value = not self.default + + self.type: types.ParamType + if is_flag and type is None: + # Re-guess the type from the flag value instead of the + # default. + self.type = types.convert_type(None, flag_value) + + self.is_flag: bool = is_flag + self.is_bool_flag: bool = is_flag and isinstance(self.type, types.BoolParamType) + self.flag_value: t.Any = flag_value + + # Counting + self.count = count + if count: + if type is None: + self.type = types.IntRange(min=0) + if default_is_missing: + self.default = 0 + + self.allow_from_autoenv = allow_from_autoenv + self.help = help + self.show_default = show_default + self.show_choices = show_choices + self.show_envvar = show_envvar + + if __debug__: + if self.nargs == -1: + raise TypeError("nargs=-1 is not supported for options.") + + if self.prompt and self.is_flag and not self.is_bool_flag: + raise TypeError("'prompt' is not valid for non-boolean flag.") + + if not self.is_bool_flag and self.secondary_opts: + raise TypeError("Secondary flag is not valid for non-boolean flag.") + + if self.is_bool_flag and self.hide_input and self.prompt is not None: + raise TypeError( + "'prompt' with 'hide_input' is not valid for boolean flag." + ) + + if self.count: + if self.multiple: + raise TypeError("'count' is not valid with 'multiple'.") + + if self.is_flag: + raise TypeError("'count' is not valid with 'is_flag'.") + + def to_info_dict(self) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict() + info_dict.update( + help=self.help, + prompt=self.prompt, + is_flag=self.is_flag, + flag_value=self.flag_value, + count=self.count, + hidden=self.hidden, + ) + return info_dict + + def _parse_decls( + self, decls: t.Sequence[str], expose_value: bool + ) -> t.Tuple[t.Optional[str], t.List[str], t.List[str]]: + opts = [] + secondary_opts = [] + name = None + possible_names = [] + + for decl in decls: + if decl.isidentifier(): + if name is not None: + raise TypeError(f"Name '{name}' defined twice") + name = decl + else: + split_char = ";" if decl[:1] == "/" else "/" + if split_char in decl: + first, second = decl.split(split_char, 1) + first = first.rstrip() + if first: + possible_names.append(split_opt(first)) + opts.append(first) + second = second.lstrip() + if second: + secondary_opts.append(second.lstrip()) + if first == second: + raise ValueError( + f"Boolean option {decl!r} cannot use the" + " same flag for true/false." + ) + else: + possible_names.append(split_opt(decl)) + opts.append(decl) + + if name is None and possible_names: + possible_names.sort(key=lambda x: -len(x[0])) # group long options first + name = possible_names[0][1].replace("-", "_").lower() + if not name.isidentifier(): + name = None + + if name is None: + if not expose_value: + return None, opts, secondary_opts + raise TypeError( + f"Could not determine name for option with declarations {decls!r}" + ) + + if not opts and not secondary_opts: + raise TypeError( + f"No options defined but a name was passed ({name})." + " Did you mean to declare an argument instead? Did" + f" you mean to pass '--{name}'?" + ) + + return name, opts, secondary_opts + + def add_to_parser(self, parser: OptionParser, ctx: Context) -> None: + if self.multiple: + action = "append" + elif self.count: + action = "count" + else: + action = "store" + + if self.is_flag: + action = f"{action}_const" + + if self.is_bool_flag and self.secondary_opts: + parser.add_option( + obj=self, opts=self.opts, dest=self.name, action=action, const=True + ) + parser.add_option( + obj=self, + opts=self.secondary_opts, + dest=self.name, + action=action, + const=False, + ) + else: + parser.add_option( + obj=self, + opts=self.opts, + dest=self.name, + action=action, + const=self.flag_value, + ) + else: + parser.add_option( + obj=self, + opts=self.opts, + dest=self.name, + action=action, + nargs=self.nargs, + ) + + def get_help_record(self, ctx: Context) -> t.Optional[t.Tuple[str, str]]: + if self.hidden: + return None + + any_prefix_is_slash = False + + def _write_opts(opts: t.Sequence[str]) -> str: + nonlocal any_prefix_is_slash + + rv, any_slashes = join_options(opts) + + if any_slashes: + any_prefix_is_slash = True + + if not self.is_flag and not self.count: + rv += f" {self.make_metavar()}" + + return rv + + rv = [_write_opts(self.opts)] + + if self.secondary_opts: + rv.append(_write_opts(self.secondary_opts)) + + help = self.help or "" + extra = [] + + if self.show_envvar: + envvar = self.envvar + + if envvar is None: + if ( + self.allow_from_autoenv + and ctx.auto_envvar_prefix is not None + and self.name is not None + ): + envvar = f"{ctx.auto_envvar_prefix}_{self.name.upper()}" + + if envvar is not None: + var_str = ( + envvar + if isinstance(envvar, str) + else ", ".join(str(d) for d in envvar) + ) + extra.append(_("env var: {var}").format(var=var_str)) + + # Temporarily enable resilient parsing to avoid type casting + # failing for the default. Might be possible to extend this to + # help formatting in general. + resilient = ctx.resilient_parsing + ctx.resilient_parsing = True + + try: + default_value = self.get_default(ctx, call=False) + finally: + ctx.resilient_parsing = resilient + + show_default = False + show_default_is_str = False + + if self.show_default is not None: + if isinstance(self.show_default, str): + show_default_is_str = show_default = True + else: + show_default = self.show_default + elif ctx.show_default is not None: + show_default = ctx.show_default + + if show_default_is_str or (show_default and (default_value is not None)): + if show_default_is_str: + default_string = f"({self.show_default})" + elif isinstance(default_value, (list, tuple)): + default_string = ", ".join(str(d) for d in default_value) + elif inspect.isfunction(default_value): + default_string = _("(dynamic)") + elif self.is_bool_flag and self.secondary_opts: + # For boolean flags that have distinct True/False opts, + # use the opt without prefix instead of the value. + default_string = split_opt( + (self.opts if default_value else self.secondary_opts)[0] + )[1] + elif self.is_bool_flag and not self.secondary_opts and not default_value: + default_string = "" + elif default_value == "": + default_string = '""' + else: + default_string = str(default_value) + + if default_string: + extra.append(_("default: {default}").format(default=default_string)) + + if ( + isinstance(self.type, types._NumberRangeBase) + # skip count with default range type + and not (self.count and self.type.min == 0 and self.type.max is None) + ): + range_str = self.type._describe_range() + + if range_str: + extra.append(range_str) + + if self.required: + extra.append(_("required")) + + if extra: + extra_str = "; ".join(extra) + help = f"{help} [{extra_str}]" if help else f"[{extra_str}]" + + return ("; " if any_prefix_is_slash else " / ").join(rv), help + + @t.overload + def get_default( + self, ctx: Context, call: "te.Literal[True]" = True + ) -> t.Optional[t.Any]: ... + + @t.overload + def get_default( + self, ctx: Context, call: bool = ... + ) -> t.Optional[t.Union[t.Any, t.Callable[[], t.Any]]]: ... + + def get_default( + self, ctx: Context, call: bool = True + ) -> t.Optional[t.Union[t.Any, t.Callable[[], t.Any]]]: + # If we're a non boolean flag our default is more complex because + # we need to look at all flags in the same group to figure out + # if we're the default one in which case we return the flag + # value as default. + if self.is_flag and not self.is_bool_flag: + for param in ctx.command.params: + if param.name == self.name and param.default: + return t.cast(Option, param).flag_value + + return None + + return super().get_default(ctx, call=call) + + def prompt_for_value(self, ctx: Context) -> t.Any: + """This is an alternative flow that can be activated in the full + value processing if a value does not exist. It will prompt the + user until a valid value exists and then returns the processed + value as result. + """ + assert self.prompt is not None + + # Calculate the default before prompting anything to be stable. + default = self.get_default(ctx) + + # If this is a prompt for a flag we need to handle this + # differently. + if self.is_bool_flag: + return confirm(self.prompt, default) + + return prompt( + self.prompt, + default=default, + type=self.type, + hide_input=self.hide_input, + show_choices=self.show_choices, + confirmation_prompt=self.confirmation_prompt, + value_proc=lambda x: self.process_value(ctx, x), + ) + + def resolve_envvar_value(self, ctx: Context) -> t.Optional[str]: + rv = super().resolve_envvar_value(ctx) + + if rv is not None: + return rv + + if ( + self.allow_from_autoenv + and ctx.auto_envvar_prefix is not None + and self.name is not None + ): + envvar = f"{ctx.auto_envvar_prefix}_{self.name.upper()}" + rv = os.environ.get(envvar) + + if rv: + return rv + + return None + + def value_from_envvar(self, ctx: Context) -> t.Optional[t.Any]: + rv: t.Optional[t.Any] = self.resolve_envvar_value(ctx) + + if rv is None: + return None + + value_depth = (self.nargs != 1) + bool(self.multiple) + + if value_depth > 0: + rv = self.type.split_envvar_value(rv) + + if self.multiple and self.nargs != 1: + rv = batch(rv, self.nargs) + + return rv + + def consume_value( + self, ctx: Context, opts: t.Mapping[str, "Parameter"] + ) -> t.Tuple[t.Any, ParameterSource]: + value, source = super().consume_value(ctx, opts) + + # The parser will emit a sentinel value if the option can be + # given as a flag without a value. This is different from None + # to distinguish from the flag not being given at all. + if value is _flag_needs_value: + if self.prompt is not None and not ctx.resilient_parsing: + value = self.prompt_for_value(ctx) + source = ParameterSource.PROMPT + else: + value = self.flag_value + source = ParameterSource.COMMANDLINE + + elif ( + self.multiple + and value is not None + and any(v is _flag_needs_value for v in value) + ): + value = [self.flag_value if v is _flag_needs_value else v for v in value] + source = ParameterSource.COMMANDLINE + + # The value wasn't set, or used the param's default, prompt if + # prompting is enabled. + elif ( + source in {None, ParameterSource.DEFAULT} + and self.prompt is not None + and (self.required or self.prompt_required) + and not ctx.resilient_parsing + ): + value = self.prompt_for_value(ctx) + source = ParameterSource.PROMPT + + return value, source + + +class Argument(Parameter): + """Arguments are positional parameters to a command. They generally + provide fewer features than options but can have infinite ``nargs`` + and are required by default. + + All parameters are passed onwards to the constructor of :class:`Parameter`. + """ + + param_type_name = "argument" + + def __init__( + self, + param_decls: t.Sequence[str], + required: t.Optional[bool] = None, + **attrs: t.Any, + ) -> None: + if required is None: + if attrs.get("default") is not None: + required = False + else: + required = attrs.get("nargs", 1) > 0 + + if "multiple" in attrs: + raise TypeError("__init__() got an unexpected keyword argument 'multiple'.") + + super().__init__(param_decls, required=required, **attrs) + + if __debug__: + if self.default is not None and self.nargs == -1: + raise TypeError("'default' is not supported for nargs=-1.") + + @property + def human_readable_name(self) -> str: + if self.metavar is not None: + return self.metavar + return self.name.upper() # type: ignore + + def make_metavar(self) -> str: + if self.metavar is not None: + return self.metavar + var = self.type.get_metavar(self) + if not var: + var = self.name.upper() # type: ignore + if not self.required: + var = f"[{var}]" + if self.nargs != 1: + var += "..." + return var + + def _parse_decls( + self, decls: t.Sequence[str], expose_value: bool + ) -> t.Tuple[t.Optional[str], t.List[str], t.List[str]]: + if not decls: + if not expose_value: + return None, [], [] + raise TypeError("Argument is marked as exposed, but does not have a name.") + if len(decls) == 1: + name = arg = decls[0] + name = name.replace("-", "_").lower() + else: + raise TypeError( + "Arguments take exactly one parameter declaration, got" + f" {len(decls)}." + ) + return name, [arg], [] + + def get_usage_pieces(self, ctx: Context) -> t.List[str]: + return [self.make_metavar()] + + def get_error_hint(self, ctx: Context) -> str: + return f"'{self.make_metavar()}'" + + def add_to_parser(self, parser: OptionParser, ctx: Context) -> None: + parser.add_argument(dest=self.name, nargs=self.nargs, obj=self) diff --git a/venv/lib/python3.9/site-packages/click/decorators.py b/venv/lib/python3.9/site-packages/click/decorators.py new file mode 100644 index 0000000..bcf8906 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/decorators.py @@ -0,0 +1,562 @@ +import inspect +import types +import typing as t +from functools import update_wrapper +from gettext import gettext as _ + +from .core import Argument +from .core import Command +from .core import Context +from .core import Group +from .core import Option +from .core import Parameter +from .globals import get_current_context +from .utils import echo + +if t.TYPE_CHECKING: + import typing_extensions as te + + P = te.ParamSpec("P") + +R = t.TypeVar("R") +T = t.TypeVar("T") +_AnyCallable = t.Callable[..., t.Any] +FC = t.TypeVar("FC", bound=t.Union[_AnyCallable, Command]) + + +def pass_context(f: "t.Callable[te.Concatenate[Context, P], R]") -> "t.Callable[P, R]": + """Marks a callback as wanting to receive the current context + object as first argument. + """ + + def new_func(*args: "P.args", **kwargs: "P.kwargs") -> "R": + return f(get_current_context(), *args, **kwargs) + + return update_wrapper(new_func, f) + + +def pass_obj(f: "t.Callable[te.Concatenate[t.Any, P], R]") -> "t.Callable[P, R]": + """Similar to :func:`pass_context`, but only pass the object on the + context onwards (:attr:`Context.obj`). This is useful if that object + represents the state of a nested system. + """ + + def new_func(*args: "P.args", **kwargs: "P.kwargs") -> "R": + return f(get_current_context().obj, *args, **kwargs) + + return update_wrapper(new_func, f) + + +def make_pass_decorator( + object_type: t.Type[T], ensure: bool = False +) -> t.Callable[["t.Callable[te.Concatenate[T, P], R]"], "t.Callable[P, R]"]: + """Given an object type this creates a decorator that will work + similar to :func:`pass_obj` but instead of passing the object of the + current context, it will find the innermost context of type + :func:`object_type`. + + This generates a decorator that works roughly like this:: + + from functools import update_wrapper + + def decorator(f): + @pass_context + def new_func(ctx, *args, **kwargs): + obj = ctx.find_object(object_type) + return ctx.invoke(f, obj, *args, **kwargs) + return update_wrapper(new_func, f) + return decorator + + :param object_type: the type of the object to pass. + :param ensure: if set to `True`, a new object will be created and + remembered on the context if it's not there yet. + """ + + def decorator(f: "t.Callable[te.Concatenate[T, P], R]") -> "t.Callable[P, R]": + def new_func(*args: "P.args", **kwargs: "P.kwargs") -> "R": + ctx = get_current_context() + + obj: t.Optional[T] + if ensure: + obj = ctx.ensure_object(object_type) + else: + obj = ctx.find_object(object_type) + + if obj is None: + raise RuntimeError( + "Managed to invoke callback without a context" + f" object of type {object_type.__name__!r}" + " existing." + ) + + return ctx.invoke(f, obj, *args, **kwargs) + + return update_wrapper(new_func, f) + + return decorator + + +def pass_meta_key( + key: str, *, doc_description: t.Optional[str] = None +) -> "t.Callable[[t.Callable[te.Concatenate[t.Any, P], R]], t.Callable[P, R]]": + """Create a decorator that passes a key from + :attr:`click.Context.meta` as the first argument to the decorated + function. + + :param key: Key in ``Context.meta`` to pass. + :param doc_description: Description of the object being passed, + inserted into the decorator's docstring. Defaults to "the 'key' + key from Context.meta". + + .. versionadded:: 8.0 + """ + + def decorator(f: "t.Callable[te.Concatenate[t.Any, P], R]") -> "t.Callable[P, R]": + def new_func(*args: "P.args", **kwargs: "P.kwargs") -> R: + ctx = get_current_context() + obj = ctx.meta[key] + return ctx.invoke(f, obj, *args, **kwargs) + + return update_wrapper(new_func, f) + + if doc_description is None: + doc_description = f"the {key!r} key from :attr:`click.Context.meta`" + + decorator.__doc__ = ( + f"Decorator that passes {doc_description} as the first argument" + " to the decorated function." + ) + return decorator + + +CmdType = t.TypeVar("CmdType", bound=Command) + + +# variant: no call, directly as decorator for a function. +@t.overload +def command(name: _AnyCallable) -> Command: ... + + +# variant: with positional name and with positional or keyword cls argument: +# @command(namearg, CommandCls, ...) or @command(namearg, cls=CommandCls, ...) +@t.overload +def command( + name: t.Optional[str], + cls: t.Type[CmdType], + **attrs: t.Any, +) -> t.Callable[[_AnyCallable], CmdType]: ... + + +# variant: name omitted, cls _must_ be a keyword argument, @command(cls=CommandCls, ...) +@t.overload +def command( + name: None = None, + *, + cls: t.Type[CmdType], + **attrs: t.Any, +) -> t.Callable[[_AnyCallable], CmdType]: ... + + +# variant: with optional string name, no cls argument provided. +@t.overload +def command( + name: t.Optional[str] = ..., cls: None = None, **attrs: t.Any +) -> t.Callable[[_AnyCallable], Command]: ... + + +def command( + name: t.Union[t.Optional[str], _AnyCallable] = None, + cls: t.Optional[t.Type[CmdType]] = None, + **attrs: t.Any, +) -> t.Union[Command, t.Callable[[_AnyCallable], t.Union[Command, CmdType]]]: + r"""Creates a new :class:`Command` and uses the decorated function as + callback. This will also automatically attach all decorated + :func:`option`\s and :func:`argument`\s as parameters to the command. + + The name of the command defaults to the name of the function with + underscores replaced by dashes. If you want to change that, you can + pass the intended name as the first argument. + + All keyword arguments are forwarded to the underlying command class. + For the ``params`` argument, any decorated params are appended to + the end of the list. + + Once decorated the function turns into a :class:`Command` instance + that can be invoked as a command line utility or be attached to a + command :class:`Group`. + + :param name: the name of the command. This defaults to the function + name with underscores replaced by dashes. + :param cls: the command class to instantiate. This defaults to + :class:`Command`. + + .. versionchanged:: 8.1 + This decorator can be applied without parentheses. + + .. versionchanged:: 8.1 + The ``params`` argument can be used. Decorated params are + appended to the end of the list. + """ + + func: t.Optional[t.Callable[[_AnyCallable], t.Any]] = None + + if callable(name): + func = name + name = None + assert cls is None, "Use 'command(cls=cls)(callable)' to specify a class." + assert not attrs, "Use 'command(**kwargs)(callable)' to provide arguments." + + if cls is None: + cls = t.cast(t.Type[CmdType], Command) + + def decorator(f: _AnyCallable) -> CmdType: + if isinstance(f, Command): + raise TypeError("Attempted to convert a callback into a command twice.") + + attr_params = attrs.pop("params", None) + params = attr_params if attr_params is not None else [] + + try: + decorator_params = f.__click_params__ # type: ignore + except AttributeError: + pass + else: + del f.__click_params__ # type: ignore + params.extend(reversed(decorator_params)) + + if attrs.get("help") is None: + attrs["help"] = f.__doc__ + + if t.TYPE_CHECKING: + assert cls is not None + assert not callable(name) + + cmd = cls( + name=name or f.__name__.lower().replace("_", "-"), + callback=f, + params=params, + **attrs, + ) + cmd.__doc__ = f.__doc__ + return cmd + + if func is not None: + return decorator(func) + + return decorator + + +GrpType = t.TypeVar("GrpType", bound=Group) + + +# variant: no call, directly as decorator for a function. +@t.overload +def group(name: _AnyCallable) -> Group: ... + + +# variant: with positional name and with positional or keyword cls argument: +# @group(namearg, GroupCls, ...) or @group(namearg, cls=GroupCls, ...) +@t.overload +def group( + name: t.Optional[str], + cls: t.Type[GrpType], + **attrs: t.Any, +) -> t.Callable[[_AnyCallable], GrpType]: ... + + +# variant: name omitted, cls _must_ be a keyword argument, @group(cmd=GroupCls, ...) +@t.overload +def group( + name: None = None, + *, + cls: t.Type[GrpType], + **attrs: t.Any, +) -> t.Callable[[_AnyCallable], GrpType]: ... + + +# variant: with optional string name, no cls argument provided. +@t.overload +def group( + name: t.Optional[str] = ..., cls: None = None, **attrs: t.Any +) -> t.Callable[[_AnyCallable], Group]: ... + + +def group( + name: t.Union[str, _AnyCallable, None] = None, + cls: t.Optional[t.Type[GrpType]] = None, + **attrs: t.Any, +) -> t.Union[Group, t.Callable[[_AnyCallable], t.Union[Group, GrpType]]]: + """Creates a new :class:`Group` with a function as callback. This + works otherwise the same as :func:`command` just that the `cls` + parameter is set to :class:`Group`. + + .. versionchanged:: 8.1 + This decorator can be applied without parentheses. + """ + if cls is None: + cls = t.cast(t.Type[GrpType], Group) + + if callable(name): + return command(cls=cls, **attrs)(name) + + return command(name, cls, **attrs) + + +def _param_memo(f: t.Callable[..., t.Any], param: Parameter) -> None: + if isinstance(f, Command): + f.params.append(param) + else: + if not hasattr(f, "__click_params__"): + f.__click_params__ = [] # type: ignore + + f.__click_params__.append(param) # type: ignore + + +def argument( + *param_decls: str, cls: t.Optional[t.Type[Argument]] = None, **attrs: t.Any +) -> t.Callable[[FC], FC]: + """Attaches an argument to the command. All positional arguments are + passed as parameter declarations to :class:`Argument`; all keyword + arguments are forwarded unchanged (except ``cls``). + This is equivalent to creating an :class:`Argument` instance manually + and attaching it to the :attr:`Command.params` list. + + For the default argument class, refer to :class:`Argument` and + :class:`Parameter` for descriptions of parameters. + + :param cls: the argument class to instantiate. This defaults to + :class:`Argument`. + :param param_decls: Passed as positional arguments to the constructor of + ``cls``. + :param attrs: Passed as keyword arguments to the constructor of ``cls``. + """ + if cls is None: + cls = Argument + + def decorator(f: FC) -> FC: + _param_memo(f, cls(param_decls, **attrs)) + return f + + return decorator + + +def option( + *param_decls: str, cls: t.Optional[t.Type[Option]] = None, **attrs: t.Any +) -> t.Callable[[FC], FC]: + """Attaches an option to the command. All positional arguments are + passed as parameter declarations to :class:`Option`; all keyword + arguments are forwarded unchanged (except ``cls``). + This is equivalent to creating an :class:`Option` instance manually + and attaching it to the :attr:`Command.params` list. + + For the default option class, refer to :class:`Option` and + :class:`Parameter` for descriptions of parameters. + + :param cls: the option class to instantiate. This defaults to + :class:`Option`. + :param param_decls: Passed as positional arguments to the constructor of + ``cls``. + :param attrs: Passed as keyword arguments to the constructor of ``cls``. + """ + if cls is None: + cls = Option + + def decorator(f: FC) -> FC: + _param_memo(f, cls(param_decls, **attrs)) + return f + + return decorator + + +def confirmation_option(*param_decls: str, **kwargs: t.Any) -> t.Callable[[FC], FC]: + """Add a ``--yes`` option which shows a prompt before continuing if + not passed. If the prompt is declined, the program will exit. + + :param param_decls: One or more option names. Defaults to the single + value ``"--yes"``. + :param kwargs: Extra arguments are passed to :func:`option`. + """ + + def callback(ctx: Context, param: Parameter, value: bool) -> None: + if not value: + ctx.abort() + + if not param_decls: + param_decls = ("--yes",) + + kwargs.setdefault("is_flag", True) + kwargs.setdefault("callback", callback) + kwargs.setdefault("expose_value", False) + kwargs.setdefault("prompt", "Do you want to continue?") + kwargs.setdefault("help", "Confirm the action without prompting.") + return option(*param_decls, **kwargs) + + +def password_option(*param_decls: str, **kwargs: t.Any) -> t.Callable[[FC], FC]: + """Add a ``--password`` option which prompts for a password, hiding + input and asking to enter the value again for confirmation. + + :param param_decls: One or more option names. Defaults to the single + value ``"--password"``. + :param kwargs: Extra arguments are passed to :func:`option`. + """ + if not param_decls: + param_decls = ("--password",) + + kwargs.setdefault("prompt", True) + kwargs.setdefault("confirmation_prompt", True) + kwargs.setdefault("hide_input", True) + return option(*param_decls, **kwargs) + + +def version_option( + version: t.Optional[str] = None, + *param_decls: str, + package_name: t.Optional[str] = None, + prog_name: t.Optional[str] = None, + message: t.Optional[str] = None, + **kwargs: t.Any, +) -> t.Callable[[FC], FC]: + """Add a ``--version`` option which immediately prints the version + number and exits the program. + + If ``version`` is not provided, Click will try to detect it using + :func:`importlib.metadata.version` to get the version for the + ``package_name``. On Python < 3.8, the ``importlib_metadata`` + backport must be installed. + + If ``package_name`` is not provided, Click will try to detect it by + inspecting the stack frames. This will be used to detect the + version, so it must match the name of the installed package. + + :param version: The version number to show. If not provided, Click + will try to detect it. + :param param_decls: One or more option names. Defaults to the single + value ``"--version"``. + :param package_name: The package name to detect the version from. If + not provided, Click will try to detect it. + :param prog_name: The name of the CLI to show in the message. If not + provided, it will be detected from the command. + :param message: The message to show. The values ``%(prog)s``, + ``%(package)s``, and ``%(version)s`` are available. Defaults to + ``"%(prog)s, version %(version)s"``. + :param kwargs: Extra arguments are passed to :func:`option`. + :raise RuntimeError: ``version`` could not be detected. + + .. versionchanged:: 8.0 + Add the ``package_name`` parameter, and the ``%(package)s`` + value for messages. + + .. versionchanged:: 8.0 + Use :mod:`importlib.metadata` instead of ``pkg_resources``. The + version is detected based on the package name, not the entry + point name. The Python package name must match the installed + package name, or be passed with ``package_name=``. + """ + if message is None: + message = _("%(prog)s, version %(version)s") + + if version is None and package_name is None: + frame = inspect.currentframe() + f_back = frame.f_back if frame is not None else None + f_globals = f_back.f_globals if f_back is not None else None + # break reference cycle + # https://docs.python.org/3/library/inspect.html#the-interpreter-stack + del frame + + if f_globals is not None: + package_name = f_globals.get("__name__") + + if package_name == "__main__": + package_name = f_globals.get("__package__") + + if package_name: + package_name = package_name.partition(".")[0] + + def callback(ctx: Context, param: Parameter, value: bool) -> None: + if not value or ctx.resilient_parsing: + return + + nonlocal prog_name + nonlocal version + + if prog_name is None: + prog_name = ctx.find_root().info_name + + if version is None and package_name is not None: + metadata: t.Optional[types.ModuleType] + + try: + from importlib import metadata + except ImportError: + # Python < 3.8 + import importlib_metadata as metadata # type: ignore + + try: + version = metadata.version(package_name) # type: ignore + except metadata.PackageNotFoundError: # type: ignore + raise RuntimeError( + f"{package_name!r} is not installed. Try passing" + " 'package_name' instead." + ) from None + + if version is None: + raise RuntimeError( + f"Could not determine the version for {package_name!r} automatically." + ) + + echo( + message % {"prog": prog_name, "package": package_name, "version": version}, + color=ctx.color, + ) + ctx.exit() + + if not param_decls: + param_decls = ("--version",) + + kwargs.setdefault("is_flag", True) + kwargs.setdefault("expose_value", False) + kwargs.setdefault("is_eager", True) + kwargs.setdefault("help", _("Show the version and exit.")) + kwargs["callback"] = callback + return option(*param_decls, **kwargs) + + +class HelpOption(Option): + """Pre-configured ``--help`` option which immediately prints the help page + and exits the program. + """ + + def __init__( + self, + param_decls: t.Optional[t.Sequence[str]] = None, + **kwargs: t.Any, + ) -> None: + if not param_decls: + param_decls = ("--help",) + + kwargs.setdefault("is_flag", True) + kwargs.setdefault("expose_value", False) + kwargs.setdefault("is_eager", True) + kwargs.setdefault("help", _("Show this message and exit.")) + kwargs.setdefault("callback", self.show_help) + + super().__init__(param_decls, **kwargs) + + @staticmethod + def show_help(ctx: Context, param: Parameter, value: bool) -> None: + """Callback that print the help page on ```` and exits.""" + if value and not ctx.resilient_parsing: + echo(ctx.get_help(), color=ctx.color) + ctx.exit() + + +def help_option(*param_decls: str, **kwargs: t.Any) -> t.Callable[[FC], FC]: + """Decorator for the pre-configured ``--help`` option defined above. + + :param param_decls: One or more option names. Defaults to the single + value ``"--help"``. + :param kwargs: Extra arguments are passed to :func:`option`. + """ + kwargs.setdefault("cls", HelpOption) + return option(*param_decls, **kwargs) diff --git a/venv/lib/python3.9/site-packages/click/exceptions.py b/venv/lib/python3.9/site-packages/click/exceptions.py new file mode 100644 index 0000000..0b83151 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/exceptions.py @@ -0,0 +1,296 @@ +import typing as t +from gettext import gettext as _ +from gettext import ngettext + +from ._compat import get_text_stderr +from .globals import resolve_color_default +from .utils import echo +from .utils import format_filename + +if t.TYPE_CHECKING: + from .core import Command + from .core import Context + from .core import Parameter + + +def _join_param_hints( + param_hint: t.Optional[t.Union[t.Sequence[str], str]], +) -> t.Optional[str]: + if param_hint is not None and not isinstance(param_hint, str): + return " / ".join(repr(x) for x in param_hint) + + return param_hint + + +class ClickException(Exception): + """An exception that Click can handle and show to the user.""" + + #: The exit code for this exception. + exit_code = 1 + + def __init__(self, message: str) -> None: + super().__init__(message) + # The context will be removed by the time we print the message, so cache + # the color settings here to be used later on (in `show`) + self.show_color: t.Optional[bool] = resolve_color_default() + self.message = message + + def format_message(self) -> str: + return self.message + + def __str__(self) -> str: + return self.message + + def show(self, file: t.Optional[t.IO[t.Any]] = None) -> None: + if file is None: + file = get_text_stderr() + + echo( + _("Error: {message}").format(message=self.format_message()), + file=file, + color=self.show_color, + ) + + +class UsageError(ClickException): + """An internal exception that signals a usage error. This typically + aborts any further handling. + + :param message: the error message to display. + :param ctx: optionally the context that caused this error. Click will + fill in the context automatically in some situations. + """ + + exit_code = 2 + + def __init__(self, message: str, ctx: t.Optional["Context"] = None) -> None: + super().__init__(message) + self.ctx = ctx + self.cmd: t.Optional[Command] = self.ctx.command if self.ctx else None + + def show(self, file: t.Optional[t.IO[t.Any]] = None) -> None: + if file is None: + file = get_text_stderr() + color = None + hint = "" + if ( + self.ctx is not None + and self.ctx.command.get_help_option(self.ctx) is not None + ): + hint = _("Try '{command} {option}' for help.").format( + command=self.ctx.command_path, option=self.ctx.help_option_names[0] + ) + hint = f"{hint}\n" + if self.ctx is not None: + color = self.ctx.color + echo(f"{self.ctx.get_usage()}\n{hint}", file=file, color=color) + echo( + _("Error: {message}").format(message=self.format_message()), + file=file, + color=color, + ) + + +class BadParameter(UsageError): + """An exception that formats out a standardized error message for a + bad parameter. This is useful when thrown from a callback or type as + Click will attach contextual information to it (for instance, which + parameter it is). + + .. versionadded:: 2.0 + + :param param: the parameter object that caused this error. This can + be left out, and Click will attach this info itself + if possible. + :param param_hint: a string that shows up as parameter name. This + can be used as alternative to `param` in cases + where custom validation should happen. If it is + a string it's used as such, if it's a list then + each item is quoted and separated. + """ + + def __init__( + self, + message: str, + ctx: t.Optional["Context"] = None, + param: t.Optional["Parameter"] = None, + param_hint: t.Optional[str] = None, + ) -> None: + super().__init__(message, ctx) + self.param = param + self.param_hint = param_hint + + def format_message(self) -> str: + if self.param_hint is not None: + param_hint = self.param_hint + elif self.param is not None: + param_hint = self.param.get_error_hint(self.ctx) # type: ignore + else: + return _("Invalid value: {message}").format(message=self.message) + + return _("Invalid value for {param_hint}: {message}").format( + param_hint=_join_param_hints(param_hint), message=self.message + ) + + +class MissingParameter(BadParameter): + """Raised if click required an option or argument but it was not + provided when invoking the script. + + .. versionadded:: 4.0 + + :param param_type: a string that indicates the type of the parameter. + The default is to inherit the parameter type from + the given `param`. Valid values are ``'parameter'``, + ``'option'`` or ``'argument'``. + """ + + def __init__( + self, + message: t.Optional[str] = None, + ctx: t.Optional["Context"] = None, + param: t.Optional["Parameter"] = None, + param_hint: t.Optional[str] = None, + param_type: t.Optional[str] = None, + ) -> None: + super().__init__(message or "", ctx, param, param_hint) + self.param_type = param_type + + def format_message(self) -> str: + if self.param_hint is not None: + param_hint: t.Optional[str] = self.param_hint + elif self.param is not None: + param_hint = self.param.get_error_hint(self.ctx) # type: ignore + else: + param_hint = None + + param_hint = _join_param_hints(param_hint) + param_hint = f" {param_hint}" if param_hint else "" + + param_type = self.param_type + if param_type is None and self.param is not None: + param_type = self.param.param_type_name + + msg = self.message + if self.param is not None: + msg_extra = self.param.type.get_missing_message(self.param) + if msg_extra: + if msg: + msg += f". {msg_extra}" + else: + msg = msg_extra + + msg = f" {msg}" if msg else "" + + # Translate param_type for known types. + if param_type == "argument": + missing = _("Missing argument") + elif param_type == "option": + missing = _("Missing option") + elif param_type == "parameter": + missing = _("Missing parameter") + else: + missing = _("Missing {param_type}").format(param_type=param_type) + + return f"{missing}{param_hint}.{msg}" + + def __str__(self) -> str: + if not self.message: + param_name = self.param.name if self.param else None + return _("Missing parameter: {param_name}").format(param_name=param_name) + else: + return self.message + + +class NoSuchOption(UsageError): + """Raised if click attempted to handle an option that does not + exist. + + .. versionadded:: 4.0 + """ + + def __init__( + self, + option_name: str, + message: t.Optional[str] = None, + possibilities: t.Optional[t.Sequence[str]] = None, + ctx: t.Optional["Context"] = None, + ) -> None: + if message is None: + message = _("No such option: {name}").format(name=option_name) + + super().__init__(message, ctx) + self.option_name = option_name + self.possibilities = possibilities + + def format_message(self) -> str: + if not self.possibilities: + return self.message + + possibility_str = ", ".join(sorted(self.possibilities)) + suggest = ngettext( + "Did you mean {possibility}?", + "(Possible options: {possibilities})", + len(self.possibilities), + ).format(possibility=possibility_str, possibilities=possibility_str) + return f"{self.message} {suggest}" + + +class BadOptionUsage(UsageError): + """Raised if an option is generally supplied but the use of the option + was incorrect. This is for instance raised if the number of arguments + for an option is not correct. + + .. versionadded:: 4.0 + + :param option_name: the name of the option being used incorrectly. + """ + + def __init__( + self, option_name: str, message: str, ctx: t.Optional["Context"] = None + ) -> None: + super().__init__(message, ctx) + self.option_name = option_name + + +class BadArgumentUsage(UsageError): + """Raised if an argument is generally supplied but the use of the argument + was incorrect. This is for instance raised if the number of values + for an argument is not correct. + + .. versionadded:: 6.0 + """ + + +class FileError(ClickException): + """Raised if a file cannot be opened.""" + + def __init__(self, filename: str, hint: t.Optional[str] = None) -> None: + if hint is None: + hint = _("unknown error") + + super().__init__(hint) + self.ui_filename: str = format_filename(filename) + self.filename = filename + + def format_message(self) -> str: + return _("Could not open file {filename!r}: {message}").format( + filename=self.ui_filename, message=self.message + ) + + +class Abort(RuntimeError): + """An internal signalling exception that signals Click to abort.""" + + +class Exit(RuntimeError): + """An exception that indicates that the application should exit with some + status code. + + :param code: the status code to exit with. + """ + + __slots__ = ("exit_code",) + + def __init__(self, code: int = 0) -> None: + self.exit_code: int = code diff --git a/venv/lib/python3.9/site-packages/click/formatting.py b/venv/lib/python3.9/site-packages/click/formatting.py new file mode 100644 index 0000000..ddd2a2f --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/formatting.py @@ -0,0 +1,301 @@ +import typing as t +from contextlib import contextmanager +from gettext import gettext as _ + +from ._compat import term_len +from .parser import split_opt + +# Can force a width. This is used by the test system +FORCED_WIDTH: t.Optional[int] = None + + +def measure_table(rows: t.Iterable[t.Tuple[str, str]]) -> t.Tuple[int, ...]: + widths: t.Dict[int, int] = {} + + for row in rows: + for idx, col in enumerate(row): + widths[idx] = max(widths.get(idx, 0), term_len(col)) + + return tuple(y for x, y in sorted(widths.items())) + + +def iter_rows( + rows: t.Iterable[t.Tuple[str, str]], col_count: int +) -> t.Iterator[t.Tuple[str, ...]]: + for row in rows: + yield row + ("",) * (col_count - len(row)) + + +def wrap_text( + text: str, + width: int = 78, + initial_indent: str = "", + subsequent_indent: str = "", + preserve_paragraphs: bool = False, +) -> str: + """A helper function that intelligently wraps text. By default, it + assumes that it operates on a single paragraph of text but if the + `preserve_paragraphs` parameter is provided it will intelligently + handle paragraphs (defined by two empty lines). + + If paragraphs are handled, a paragraph can be prefixed with an empty + line containing the ``\\b`` character (``\\x08``) to indicate that + no rewrapping should happen in that block. + + :param text: the text that should be rewrapped. + :param width: the maximum width for the text. + :param initial_indent: the initial indent that should be placed on the + first line as a string. + :param subsequent_indent: the indent string that should be placed on + each consecutive line. + :param preserve_paragraphs: if this flag is set then the wrapping will + intelligently handle paragraphs. + """ + from ._textwrap import TextWrapper + + text = text.expandtabs() + wrapper = TextWrapper( + width, + initial_indent=initial_indent, + subsequent_indent=subsequent_indent, + replace_whitespace=False, + ) + if not preserve_paragraphs: + return wrapper.fill(text) + + p: t.List[t.Tuple[int, bool, str]] = [] + buf: t.List[str] = [] + indent = None + + def _flush_par() -> None: + if not buf: + return + if buf[0].strip() == "\b": + p.append((indent or 0, True, "\n".join(buf[1:]))) + else: + p.append((indent or 0, False, " ".join(buf))) + del buf[:] + + for line in text.splitlines(): + if not line: + _flush_par() + indent = None + else: + if indent is None: + orig_len = term_len(line) + line = line.lstrip() + indent = orig_len - term_len(line) + buf.append(line) + _flush_par() + + rv = [] + for indent, raw, text in p: + with wrapper.extra_indent(" " * indent): + if raw: + rv.append(wrapper.indent_only(text)) + else: + rv.append(wrapper.fill(text)) + + return "\n\n".join(rv) + + +class HelpFormatter: + """This class helps with formatting text-based help pages. It's + usually just needed for very special internal cases, but it's also + exposed so that developers can write their own fancy outputs. + + At present, it always writes into memory. + + :param indent_increment: the additional increment for each level. + :param width: the width for the text. This defaults to the terminal + width clamped to a maximum of 78. + """ + + def __init__( + self, + indent_increment: int = 2, + width: t.Optional[int] = None, + max_width: t.Optional[int] = None, + ) -> None: + import shutil + + self.indent_increment = indent_increment + if max_width is None: + max_width = 80 + if width is None: + width = FORCED_WIDTH + if width is None: + width = max(min(shutil.get_terminal_size().columns, max_width) - 2, 50) + self.width = width + self.current_indent = 0 + self.buffer: t.List[str] = [] + + def write(self, string: str) -> None: + """Writes a unicode string into the internal buffer.""" + self.buffer.append(string) + + def indent(self) -> None: + """Increases the indentation.""" + self.current_indent += self.indent_increment + + def dedent(self) -> None: + """Decreases the indentation.""" + self.current_indent -= self.indent_increment + + def write_usage( + self, prog: str, args: str = "", prefix: t.Optional[str] = None + ) -> None: + """Writes a usage line into the buffer. + + :param prog: the program name. + :param args: whitespace separated list of arguments. + :param prefix: The prefix for the first line. Defaults to + ``"Usage: "``. + """ + if prefix is None: + prefix = f"{_('Usage:')} " + + usage_prefix = f"{prefix:>{self.current_indent}}{prog} " + text_width = self.width - self.current_indent + + if text_width >= (term_len(usage_prefix) + 20): + # The arguments will fit to the right of the prefix. + indent = " " * term_len(usage_prefix) + self.write( + wrap_text( + args, + text_width, + initial_indent=usage_prefix, + subsequent_indent=indent, + ) + ) + else: + # The prefix is too long, put the arguments on the next line. + self.write(usage_prefix) + self.write("\n") + indent = " " * (max(self.current_indent, term_len(prefix)) + 4) + self.write( + wrap_text( + args, text_width, initial_indent=indent, subsequent_indent=indent + ) + ) + + self.write("\n") + + def write_heading(self, heading: str) -> None: + """Writes a heading into the buffer.""" + self.write(f"{'':>{self.current_indent}}{heading}:\n") + + def write_paragraph(self) -> None: + """Writes a paragraph into the buffer.""" + if self.buffer: + self.write("\n") + + def write_text(self, text: str) -> None: + """Writes re-indented text into the buffer. This rewraps and + preserves paragraphs. + """ + indent = " " * self.current_indent + self.write( + wrap_text( + text, + self.width, + initial_indent=indent, + subsequent_indent=indent, + preserve_paragraphs=True, + ) + ) + self.write("\n") + + def write_dl( + self, + rows: t.Sequence[t.Tuple[str, str]], + col_max: int = 30, + col_spacing: int = 2, + ) -> None: + """Writes a definition list into the buffer. This is how options + and commands are usually formatted. + + :param rows: a list of two item tuples for the terms and values. + :param col_max: the maximum width of the first column. + :param col_spacing: the number of spaces between the first and + second column. + """ + rows = list(rows) + widths = measure_table(rows) + if len(widths) != 2: + raise TypeError("Expected two columns for definition list") + + first_col = min(widths[0], col_max) + col_spacing + + for first, second in iter_rows(rows, len(widths)): + self.write(f"{'':>{self.current_indent}}{first}") + if not second: + self.write("\n") + continue + if term_len(first) <= first_col - col_spacing: + self.write(" " * (first_col - term_len(first))) + else: + self.write("\n") + self.write(" " * (first_col + self.current_indent)) + + text_width = max(self.width - first_col - 2, 10) + wrapped_text = wrap_text(second, text_width, preserve_paragraphs=True) + lines = wrapped_text.splitlines() + + if lines: + self.write(f"{lines[0]}\n") + + for line in lines[1:]: + self.write(f"{'':>{first_col + self.current_indent}}{line}\n") + else: + self.write("\n") + + @contextmanager + def section(self, name: str) -> t.Iterator[None]: + """Helpful context manager that writes a paragraph, a heading, + and the indents. + + :param name: the section name that is written as heading. + """ + self.write_paragraph() + self.write_heading(name) + self.indent() + try: + yield + finally: + self.dedent() + + @contextmanager + def indentation(self) -> t.Iterator[None]: + """A context manager that increases the indentation.""" + self.indent() + try: + yield + finally: + self.dedent() + + def getvalue(self) -> str: + """Returns the buffer contents.""" + return "".join(self.buffer) + + +def join_options(options: t.Sequence[str]) -> t.Tuple[str, bool]: + """Given a list of option strings this joins them in the most appropriate + way and returns them in the form ``(formatted_string, + any_prefix_is_slash)`` where the second item in the tuple is a flag that + indicates if any of the option prefixes was a slash. + """ + rv = [] + any_prefix_is_slash = False + + for opt in options: + prefix = split_opt(opt)[0] + + if prefix == "/": + any_prefix_is_slash = True + + rv.append((len(prefix), opt)) + + rv.sort(key=lambda x: x[0]) + return ", ".join(x[1] for x in rv), any_prefix_is_slash diff --git a/venv/lib/python3.9/site-packages/click/globals.py b/venv/lib/python3.9/site-packages/click/globals.py new file mode 100644 index 0000000..191e712 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/globals.py @@ -0,0 +1,67 @@ +import typing as t +from threading import local + +if t.TYPE_CHECKING: + import typing_extensions as te + + from .core import Context + +_local = local() + + +@t.overload +def get_current_context(silent: "te.Literal[False]" = False) -> "Context": ... + + +@t.overload +def get_current_context(silent: bool = ...) -> t.Optional["Context"]: ... + + +def get_current_context(silent: bool = False) -> t.Optional["Context"]: + """Returns the current click context. This can be used as a way to + access the current context object from anywhere. This is a more implicit + alternative to the :func:`pass_context` decorator. This function is + primarily useful for helpers such as :func:`echo` which might be + interested in changing its behavior based on the current context. + + To push the current context, :meth:`Context.scope` can be used. + + .. versionadded:: 5.0 + + :param silent: if set to `True` the return value is `None` if no context + is available. The default behavior is to raise a + :exc:`RuntimeError`. + """ + try: + return t.cast("Context", _local.stack[-1]) + except (AttributeError, IndexError) as e: + if not silent: + raise RuntimeError("There is no active click context.") from e + + return None + + +def push_context(ctx: "Context") -> None: + """Pushes a new context to the current stack.""" + _local.__dict__.setdefault("stack", []).append(ctx) + + +def pop_context() -> None: + """Removes the top level from the stack.""" + _local.stack.pop() + + +def resolve_color_default(color: t.Optional[bool] = None) -> t.Optional[bool]: + """Internal helper to get the default value of the color flag. If a + value is passed it's returned unchanged, otherwise it's looked up from + the current context. + """ + if color is not None: + return color + + ctx = get_current_context(silent=True) + + if ctx is not None: + return ctx.color + + return None diff --git a/venv/lib/python3.9/site-packages/click/parser.py b/venv/lib/python3.9/site-packages/click/parser.py new file mode 100644 index 0000000..600b843 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/parser.py @@ -0,0 +1,531 @@ +""" +This module started out as largely a copy paste from the stdlib's +optparse module with the features removed that we do not need from +optparse because we implement them in Click on a higher level (for +instance type handling, help formatting and a lot more). + +The plan is to remove more and more from here over time. + +The reason this is a different module and not optparse from the stdlib +is that there are differences in 2.x and 3.x about the error messages +generated and optparse in the stdlib uses gettext for no good reason +and might cause us issues. + +Click uses parts of optparse written by Gregory P. Ward and maintained +by the Python Software Foundation. This is limited to code in parser.py. + +Copyright 2001-2006 Gregory P. Ward. All rights reserved. +Copyright 2002-2006 Python Software Foundation. All rights reserved. +""" + +# This code uses parts of optparse written by Gregory P. Ward and +# maintained by the Python Software Foundation. +# Copyright 2001-2006 Gregory P. Ward +# Copyright 2002-2006 Python Software Foundation +import typing as t +from collections import deque +from gettext import gettext as _ +from gettext import ngettext + +from .exceptions import BadArgumentUsage +from .exceptions import BadOptionUsage +from .exceptions import NoSuchOption +from .exceptions import UsageError + +if t.TYPE_CHECKING: + import typing_extensions as te + + from .core import Argument as CoreArgument + from .core import Context + from .core import Option as CoreOption + from .core import Parameter as CoreParameter + +V = t.TypeVar("V") + +# Sentinel value that indicates an option was passed as a flag without a +# value but is not a flag option. Option.consume_value uses this to +# prompt or use the flag_value. +_flag_needs_value = object() + + +def _unpack_args( + args: t.Sequence[str], nargs_spec: t.Sequence[int] +) -> t.Tuple[t.Sequence[t.Union[str, t.Sequence[t.Optional[str]], None]], t.List[str]]: + """Given an iterable of arguments and an iterable of nargs specifications, + it returns a tuple with all the unpacked arguments at the first index + and all remaining arguments as the second. + + The nargs specification is the number of arguments that should be consumed + or `-1` to indicate that this position should eat up all the remainders. + + Missing items are filled with `None`. + """ + args = deque(args) + nargs_spec = deque(nargs_spec) + rv: t.List[t.Union[str, t.Tuple[t.Optional[str], ...], None]] = [] + spos: t.Optional[int] = None + + def _fetch(c: "te.Deque[V]") -> t.Optional[V]: + try: + if spos is None: + return c.popleft() + else: + return c.pop() + except IndexError: + return None + + while nargs_spec: + nargs = _fetch(nargs_spec) + + if nargs is None: + continue + + if nargs == 1: + rv.append(_fetch(args)) + elif nargs > 1: + x = [_fetch(args) for _ in range(nargs)] + + # If we're reversed, we're pulling in the arguments in reverse, + # so we need to turn them around. + if spos is not None: + x.reverse() + + rv.append(tuple(x)) + elif nargs < 0: + if spos is not None: + raise TypeError("Cannot have two nargs < 0") + + spos = len(rv) + rv.append(None) + + # spos is the position of the wildcard (star). If it's not `None`, + # we fill it with the remainder. + if spos is not None: + rv[spos] = tuple(args) + args = [] + rv[spos + 1 :] = reversed(rv[spos + 1 :]) + + return tuple(rv), list(args) + + +def split_opt(opt: str) -> t.Tuple[str, str]: + first = opt[:1] + if first.isalnum(): + return "", opt + if opt[1:2] == first: + return opt[:2], opt[2:] + return first, opt[1:] + + +def normalize_opt(opt: str, ctx: t.Optional["Context"]) -> str: + if ctx is None or ctx.token_normalize_func is None: + return opt + prefix, opt = split_opt(opt) + return f"{prefix}{ctx.token_normalize_func(opt)}" + + +def split_arg_string(string: str) -> t.List[str]: + """Split an argument string as with :func:`shlex.split`, but don't + fail if the string is incomplete. Ignores a missing closing quote or + incomplete escape sequence and uses the partial token as-is. + + .. code-block:: python + + split_arg_string("example 'my file") + ["example", "my file"] + + split_arg_string("example my\\") + ["example", "my"] + + :param string: String to split. + """ + import shlex + + lex = shlex.shlex(string, posix=True) + lex.whitespace_split = True + lex.commenters = "" + out = [] + + try: + for token in lex: + out.append(token) + except ValueError: + # Raised when end-of-string is reached in an invalid state. Use + # the partial token as-is. The quote or escape character is in + # lex.state, not lex.token. + out.append(lex.token) + + return out + + +class Option: + def __init__( + self, + obj: "CoreOption", + opts: t.Sequence[str], + dest: t.Optional[str], + action: t.Optional[str] = None, + nargs: int = 1, + const: t.Optional[t.Any] = None, + ): + self._short_opts = [] + self._long_opts = [] + self.prefixes: t.Set[str] = set() + + for opt in opts: + prefix, value = split_opt(opt) + if not prefix: + raise ValueError(f"Invalid start character for option ({opt})") + self.prefixes.add(prefix[0]) + if len(prefix) == 1 and len(value) == 1: + self._short_opts.append(opt) + else: + self._long_opts.append(opt) + self.prefixes.add(prefix) + + if action is None: + action = "store" + + self.dest = dest + self.action = action + self.nargs = nargs + self.const = const + self.obj = obj + + @property + def takes_value(self) -> bool: + return self.action in ("store", "append") + + def process(self, value: t.Any, state: "ParsingState") -> None: + if self.action == "store": + state.opts[self.dest] = value # type: ignore + elif self.action == "store_const": + state.opts[self.dest] = self.const # type: ignore + elif self.action == "append": + state.opts.setdefault(self.dest, []).append(value) # type: ignore + elif self.action == "append_const": + state.opts.setdefault(self.dest, []).append(self.const) # type: ignore + elif self.action == "count": + state.opts[self.dest] = state.opts.get(self.dest, 0) + 1 # type: ignore + else: + raise ValueError(f"unknown action '{self.action}'") + state.order.append(self.obj) + + +class Argument: + def __init__(self, obj: "CoreArgument", dest: t.Optional[str], nargs: int = 1): + self.dest = dest + self.nargs = nargs + self.obj = obj + + def process( + self, + value: t.Union[t.Optional[str], t.Sequence[t.Optional[str]]], + state: "ParsingState", + ) -> None: + if self.nargs > 1: + assert value is not None + holes = sum(1 for x in value if x is None) + if holes == len(value): + value = None + elif holes != 0: + raise BadArgumentUsage( + _("Argument {name!r} takes {nargs} values.").format( + name=self.dest, nargs=self.nargs + ) + ) + + if self.nargs == -1 and self.obj.envvar is not None and value == (): + # Replace empty tuple with None so that a value from the + # environment may be tried. + value = None + + state.opts[self.dest] = value # type: ignore + state.order.append(self.obj) + + +class ParsingState: + def __init__(self, rargs: t.List[str]) -> None: + self.opts: t.Dict[str, t.Any] = {} + self.largs: t.List[str] = [] + self.rargs = rargs + self.order: t.List[CoreParameter] = [] + + +class OptionParser: + """The option parser is an internal class that is ultimately used to + parse options and arguments. It's modelled after optparse and brings + a similar but vastly simplified API. It should generally not be used + directly as the high level Click classes wrap it for you. + + It's not nearly as extensible as optparse or argparse as it does not + implement features that are implemented on a higher level (such as + types or defaults). + + :param ctx: optionally the :class:`~click.Context` where this parser + should go with. + """ + + def __init__(self, ctx: t.Optional["Context"] = None) -> None: + #: The :class:`~click.Context` for this parser. This might be + #: `None` for some advanced use cases. + self.ctx = ctx + #: This controls how the parser deals with interspersed arguments. + #: If this is set to `False`, the parser will stop on the first + #: non-option. Click uses this to implement nested subcommands + #: safely. + self.allow_interspersed_args: bool = True + #: This tells the parser how to deal with unknown options. By + #: default it will error out (which is sensible), but there is a + #: second mode where it will ignore it and continue processing + #: after shifting all the unknown options into the resulting args. + self.ignore_unknown_options: bool = False + + if ctx is not None: + self.allow_interspersed_args = ctx.allow_interspersed_args + self.ignore_unknown_options = ctx.ignore_unknown_options + + self._short_opt: t.Dict[str, Option] = {} + self._long_opt: t.Dict[str, Option] = {} + self._opt_prefixes = {"-", "--"} + self._args: t.List[Argument] = [] + + def add_option( + self, + obj: "CoreOption", + opts: t.Sequence[str], + dest: t.Optional[str], + action: t.Optional[str] = None, + nargs: int = 1, + const: t.Optional[t.Any] = None, + ) -> None: + """Adds a new option named `dest` to the parser. The destination + is not inferred (unlike with optparse) and needs to be explicitly + provided. Action can be any of ``store``, ``store_const``, + ``append``, ``append_const`` or ``count``. + + The `obj` can be used to identify the option in the order list + that is returned from the parser. + """ + opts = [normalize_opt(opt, self.ctx) for opt in opts] + option = Option(obj, opts, dest, action=action, nargs=nargs, const=const) + self._opt_prefixes.update(option.prefixes) + for opt in option._short_opts: + self._short_opt[opt] = option + for opt in option._long_opts: + self._long_opt[opt] = option + + def add_argument( + self, obj: "CoreArgument", dest: t.Optional[str], nargs: int = 1 + ) -> None: + """Adds a positional argument named `dest` to the parser. + + The `obj` can be used to identify the option in the order list + that is returned from the parser. + """ + self._args.append(Argument(obj, dest=dest, nargs=nargs)) + + def parse_args( + self, args: t.List[str] + ) -> t.Tuple[t.Dict[str, t.Any], t.List[str], t.List["CoreParameter"]]: + """Parses positional arguments and returns ``(values, args, order)`` + for the parsed options and arguments as well as the leftover + arguments if there are any. The order is a list of objects as they + appear on the command line. If arguments appear multiple times they + will be memorized multiple times as well. + """ + state = ParsingState(args) + try: + self._process_args_for_options(state) + self._process_args_for_args(state) + except UsageError: + if self.ctx is None or not self.ctx.resilient_parsing: + raise + return state.opts, state.largs, state.order + + def _process_args_for_args(self, state: ParsingState) -> None: + pargs, args = _unpack_args( + state.largs + state.rargs, [x.nargs for x in self._args] + ) + + for idx, arg in enumerate(self._args): + arg.process(pargs[idx], state) + + state.largs = args + state.rargs = [] + + def _process_args_for_options(self, state: ParsingState) -> None: + while state.rargs: + arg = state.rargs.pop(0) + arglen = len(arg) + # Double dashes always handled explicitly regardless of what + # prefixes are valid. + if arg == "--": + return + elif arg[:1] in self._opt_prefixes and arglen > 1: + self._process_opts(arg, state) + elif self.allow_interspersed_args: + state.largs.append(arg) + else: + state.rargs.insert(0, arg) + return + + # Say this is the original argument list: + # [arg0, arg1, ..., arg(i-1), arg(i), arg(i+1), ..., arg(N-1)] + # ^ + # (we are about to process arg(i)). + # + # Then rargs is [arg(i), ..., arg(N-1)] and largs is a *subset* of + # [arg0, ..., arg(i-1)] (any options and their arguments will have + # been removed from largs). + # + # The while loop will usually consume 1 or more arguments per pass. + # If it consumes 1 (eg. arg is an option that takes no arguments), + # then after _process_arg() is done the situation is: + # + # largs = subset of [arg0, ..., arg(i)] + # rargs = [arg(i+1), ..., arg(N-1)] + # + # If allow_interspersed_args is false, largs will always be + # *empty* -- still a subset of [arg0, ..., arg(i-1)], but + # not a very interesting subset! + + def _match_long_opt( + self, opt: str, explicit_value: t.Optional[str], state: ParsingState + ) -> None: + if opt not in self._long_opt: + from difflib import get_close_matches + + possibilities = get_close_matches(opt, self._long_opt) + raise NoSuchOption(opt, possibilities=possibilities, ctx=self.ctx) + + option = self._long_opt[opt] + if option.takes_value: + # At this point it's safe to modify rargs by injecting the + # explicit value, because no exception is raised in this + # branch. This means that the inserted value will be fully + # consumed. + if explicit_value is not None: + state.rargs.insert(0, explicit_value) + + value = self._get_value_from_state(opt, option, state) + + elif explicit_value is not None: + raise BadOptionUsage( + opt, _("Option {name!r} does not take a value.").format(name=opt) + ) + + else: + value = None + + option.process(value, state) + + def _match_short_opt(self, arg: str, state: ParsingState) -> None: + stop = False + i = 1 + prefix = arg[0] + unknown_options = [] + + for ch in arg[1:]: + opt = normalize_opt(f"{prefix}{ch}", self.ctx) + option = self._short_opt.get(opt) + i += 1 + + if not option: + if self.ignore_unknown_options: + unknown_options.append(ch) + continue + raise NoSuchOption(opt, ctx=self.ctx) + if option.takes_value: + # Any characters left in arg? Pretend they're the + # next arg, and stop consuming characters of arg. + if i < len(arg): + state.rargs.insert(0, arg[i:]) + stop = True + + value = self._get_value_from_state(opt, option, state) + + else: + value = None + + option.process(value, state) + + if stop: + break + + # If we got any unknown options we recombine the string of the + # remaining options and re-attach the prefix, then report that + # to the state as new larg. This way there is basic combinatorics + # that can be achieved while still ignoring unknown arguments. + if self.ignore_unknown_options and unknown_options: + state.largs.append(f"{prefix}{''.join(unknown_options)}") + + def _get_value_from_state( + self, option_name: str, option: Option, state: ParsingState + ) -> t.Any: + nargs = option.nargs + + if len(state.rargs) < nargs: + if option.obj._flag_needs_value: + # Option allows omitting the value. + value = _flag_needs_value + else: + raise BadOptionUsage( + option_name, + ngettext( + "Option {name!r} requires an argument.", + "Option {name!r} requires {nargs} arguments.", + nargs, + ).format(name=option_name, nargs=nargs), + ) + elif nargs == 1: + next_rarg = state.rargs[0] + + if ( + option.obj._flag_needs_value + and isinstance(next_rarg, str) + and next_rarg[:1] in self._opt_prefixes + and len(next_rarg) > 1 + ): + # The next arg looks like the start of an option, don't + # use it as the value if omitting the value is allowed. + value = _flag_needs_value + else: + value = state.rargs.pop(0) + else: + value = tuple(state.rargs[:nargs]) + del state.rargs[:nargs] + + return value + + def _process_opts(self, arg: str, state: ParsingState) -> None: + explicit_value = None + # Long option handling happens in two parts. The first part is + # supporting explicitly attached values. In any case, we will try + # to long match the option first. + if "=" in arg: + long_opt, explicit_value = arg.split("=", 1) + else: + long_opt = arg + norm_long_opt = normalize_opt(long_opt, self.ctx) + + # At this point we will match the (assumed) long option through + # the long option matching code. Note that this allows options + # like "-foo" to be matched as long options. + try: + self._match_long_opt(norm_long_opt, explicit_value, state) + except NoSuchOption: + # At this point the long option matching failed, and we need + # to try with short options. However there is a special rule + # which says, that if we have a two character options prefix + # (applies to "--foo" for instance), we do not dispatch to the + # short option code and will instead raise the no option + # error. + if arg[:2] not in self._opt_prefixes: + self._match_short_opt(arg, state) + return + + if not self.ignore_unknown_options: + raise + + state.largs.append(arg) diff --git a/venv/lib/python3.9/site-packages/click/py.typed b/venv/lib/python3.9/site-packages/click/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/click/shell_completion.py b/venv/lib/python3.9/site-packages/click/shell_completion.py new file mode 100644 index 0000000..07d0f09 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/shell_completion.py @@ -0,0 +1,603 @@ +import os +import re +import typing as t +from gettext import gettext as _ + +from .core import Argument +from .core import BaseCommand +from .core import Context +from .core import MultiCommand +from .core import Option +from .core import Parameter +from .core import ParameterSource +from .parser import split_arg_string +from .utils import echo + + +def shell_complete( + cli: BaseCommand, + ctx_args: t.MutableMapping[str, t.Any], + prog_name: str, + complete_var: str, + instruction: str, +) -> int: + """Perform shell completion for the given CLI program. + + :param cli: Command being called. + :param ctx_args: Extra arguments to pass to + ``cli.make_context``. + :param prog_name: Name of the executable in the shell. + :param complete_var: Name of the environment variable that holds + the completion instruction. + :param instruction: Value of ``complete_var`` with the completion + instruction and shell, in the form ``instruction_shell``. + :return: Status code to exit with. + """ + shell, _, instruction = instruction.partition("_") + comp_cls = get_completion_class(shell) + + if comp_cls is None: + return 1 + + comp = comp_cls(cli, ctx_args, prog_name, complete_var) + + if instruction == "source": + echo(comp.source()) + return 0 + + if instruction == "complete": + echo(comp.complete()) + return 0 + + return 1 + + +class CompletionItem: + """Represents a completion value and metadata about the value. The + default metadata is ``type`` to indicate special shell handling, + and ``help`` if a shell supports showing a help string next to the + value. + + Arbitrary parameters can be passed when creating the object, and + accessed using ``item.attr``. If an attribute wasn't passed, + accessing it returns ``None``. + + :param value: The completion suggestion. + :param type: Tells the shell script to provide special completion + support for the type. Click uses ``"dir"`` and ``"file"``. + :param help: String shown next to the value if supported. + :param kwargs: Arbitrary metadata. The built-in implementations + don't use this, but custom type completions paired with custom + shell support could use it. + """ + + __slots__ = ("value", "type", "help", "_info") + + def __init__( + self, + value: t.Any, + type: str = "plain", + help: t.Optional[str] = None, + **kwargs: t.Any, + ) -> None: + self.value: t.Any = value + self.type: str = type + self.help: t.Optional[str] = help + self._info = kwargs + + def __getattr__(self, name: str) -> t.Any: + return self._info.get(name) + + +# Only Bash >= 4.4 has the nosort option. +_SOURCE_BASH = """\ +%(complete_func)s() { + local IFS=$'\\n' + local response + + response=$(env COMP_WORDS="${COMP_WORDS[*]}" COMP_CWORD=$COMP_CWORD \ +%(complete_var)s=bash_complete $1) + + for completion in $response; do + IFS=',' read type value <<< "$completion" + + if [[ $type == 'dir' ]]; then + COMPREPLY=() + compopt -o dirnames + elif [[ $type == 'file' ]]; then + COMPREPLY=() + compopt -o default + elif [[ $type == 'plain' ]]; then + COMPREPLY+=($value) + fi + done + + return 0 +} + +%(complete_func)s_setup() { + complete -o nosort -F %(complete_func)s %(prog_name)s +} + +%(complete_func)s_setup; +""" + +_SOURCE_ZSH = """\ +#compdef %(prog_name)s + +%(complete_func)s() { + local -a completions + local -a completions_with_descriptions + local -a response + (( ! $+commands[%(prog_name)s] )) && return 1 + + response=("${(@f)$(env COMP_WORDS="${words[*]}" COMP_CWORD=$((CURRENT-1)) \ +%(complete_var)s=zsh_complete %(prog_name)s)}") + + for type key descr in ${response}; do + if [[ "$type" == "plain" ]]; then + if [[ "$descr" == "_" ]]; then + completions+=("$key") + else + completions_with_descriptions+=("$key":"$descr") + fi + elif [[ "$type" == "dir" ]]; then + _path_files -/ + elif [[ "$type" == "file" ]]; then + _path_files -f + fi + done + + if [ -n "$completions_with_descriptions" ]; then + _describe -V unsorted completions_with_descriptions -U + fi + + if [ -n "$completions" ]; then + compadd -U -V unsorted -a completions + fi +} + +if [[ $zsh_eval_context[-1] == loadautofunc ]]; then + # autoload from fpath, call function directly + %(complete_func)s "$@" +else + # eval/source/. command, register function for later + compdef %(complete_func)s %(prog_name)s +fi +""" + +_SOURCE_FISH = """\ +function %(complete_func)s; + set -l response (env %(complete_var)s=fish_complete COMP_WORDS=(commandline -cp) \ +COMP_CWORD=(commandline -t) %(prog_name)s); + + for completion in $response; + set -l metadata (string split "," $completion); + + if test $metadata[1] = "dir"; + __fish_complete_directories $metadata[2]; + else if test $metadata[1] = "file"; + __fish_complete_path $metadata[2]; + else if test $metadata[1] = "plain"; + echo $metadata[2]; + end; + end; +end; + +complete --no-files --command %(prog_name)s --arguments \ +"(%(complete_func)s)"; +""" + + +class ShellComplete: + """Base class for providing shell completion support. A subclass for + a given shell will override attributes and methods to implement the + completion instructions (``source`` and ``complete``). + + :param cli: Command being called. + :param prog_name: Name of the executable in the shell. + :param complete_var: Name of the environment variable that holds + the completion instruction. + + .. versionadded:: 8.0 + """ + + name: t.ClassVar[str] + """Name to register the shell as with :func:`add_completion_class`. + This is used in completion instructions (``{name}_source`` and + ``{name}_complete``). + """ + + source_template: t.ClassVar[str] + """Completion script template formatted by :meth:`source`. This must + be provided by subclasses. + """ + + def __init__( + self, + cli: BaseCommand, + ctx_args: t.MutableMapping[str, t.Any], + prog_name: str, + complete_var: str, + ) -> None: + self.cli = cli + self.ctx_args = ctx_args + self.prog_name = prog_name + self.complete_var = complete_var + + @property + def func_name(self) -> str: + """The name of the shell function defined by the completion + script. + """ + safe_name = re.sub(r"\W*", "", self.prog_name.replace("-", "_"), flags=re.ASCII) + return f"_{safe_name}_completion" + + def source_vars(self) -> t.Dict[str, t.Any]: + """Vars for formatting :attr:`source_template`. + + By default this provides ``complete_func``, ``complete_var``, + and ``prog_name``. + """ + return { + "complete_func": self.func_name, + "complete_var": self.complete_var, + "prog_name": self.prog_name, + } + + def source(self) -> str: + """Produce the shell script that defines the completion + function. By default this ``%``-style formats + :attr:`source_template` with the dict returned by + :meth:`source_vars`. + """ + return self.source_template % self.source_vars() + + def get_completion_args(self) -> t.Tuple[t.List[str], str]: + """Use the env vars defined by the shell script to return a + tuple of ``args, incomplete``. This must be implemented by + subclasses. + """ + raise NotImplementedError + + def get_completions( + self, args: t.List[str], incomplete: str + ) -> t.List[CompletionItem]: + """Determine the context and last complete command or parameter + from the complete args. Call that object's ``shell_complete`` + method to get the completions for the incomplete value. + + :param args: List of complete args before the incomplete value. + :param incomplete: Value being completed. May be empty. + """ + ctx = _resolve_context(self.cli, self.ctx_args, self.prog_name, args) + obj, incomplete = _resolve_incomplete(ctx, args, incomplete) + return obj.shell_complete(ctx, incomplete) + + def format_completion(self, item: CompletionItem) -> str: + """Format a completion item into the form recognized by the + shell script. This must be implemented by subclasses. + + :param item: Completion item to format. + """ + raise NotImplementedError + + def complete(self) -> str: + """Produce the completion data to send back to the shell. + + By default this calls :meth:`get_completion_args`, gets the + completions, then calls :meth:`format_completion` for each + completion. + """ + args, incomplete = self.get_completion_args() + completions = self.get_completions(args, incomplete) + out = [self.format_completion(item) for item in completions] + return "\n".join(out) + + +class BashComplete(ShellComplete): + """Shell completion for Bash.""" + + name = "bash" + source_template = _SOURCE_BASH + + @staticmethod + def _check_version() -> None: + import shutil + import subprocess + + bash_exe = shutil.which("bash") + + if bash_exe is None: + match = None + else: + output = subprocess.run( + [bash_exe, "--norc", "-c", 'echo "${BASH_VERSION}"'], + stdout=subprocess.PIPE, + ) + match = re.search(r"^(\d+)\.(\d+)\.\d+", output.stdout.decode()) + + if match is not None: + major, minor = match.groups() + + if major < "4" or major == "4" and minor < "4": + echo( + _( + "Shell completion is not supported for Bash" + " versions older than 4.4." + ), + err=True, + ) + else: + echo( + _("Couldn't detect Bash version, shell completion is not supported."), + err=True, + ) + + def source(self) -> str: + self._check_version() + return super().source() + + def get_completion_args(self) -> t.Tuple[t.List[str], str]: + cwords = split_arg_string(os.environ["COMP_WORDS"]) + cword = int(os.environ["COMP_CWORD"]) + args = cwords[1:cword] + + try: + incomplete = cwords[cword] + except IndexError: + incomplete = "" + + return args, incomplete + + def format_completion(self, item: CompletionItem) -> str: + return f"{item.type},{item.value}" + + +class ZshComplete(ShellComplete): + """Shell completion for Zsh.""" + + name = "zsh" + source_template = _SOURCE_ZSH + + def get_completion_args(self) -> t.Tuple[t.List[str], str]: + cwords = split_arg_string(os.environ["COMP_WORDS"]) + cword = int(os.environ["COMP_CWORD"]) + args = cwords[1:cword] + + try: + incomplete = cwords[cword] + except IndexError: + incomplete = "" + + return args, incomplete + + def format_completion(self, item: CompletionItem) -> str: + return f"{item.type}\n{item.value}\n{item.help if item.help else '_'}" + + +class FishComplete(ShellComplete): + """Shell completion for Fish.""" + + name = "fish" + source_template = _SOURCE_FISH + + def get_completion_args(self) -> t.Tuple[t.List[str], str]: + cwords = split_arg_string(os.environ["COMP_WORDS"]) + incomplete = os.environ["COMP_CWORD"] + args = cwords[1:] + + # Fish stores the partial word in both COMP_WORDS and + # COMP_CWORD, remove it from complete args. + if incomplete and args and args[-1] == incomplete: + args.pop() + + return args, incomplete + + def format_completion(self, item: CompletionItem) -> str: + if item.help: + return f"{item.type},{item.value}\t{item.help}" + + return f"{item.type},{item.value}" + + +ShellCompleteType = t.TypeVar("ShellCompleteType", bound=t.Type[ShellComplete]) + + +_available_shells: t.Dict[str, t.Type[ShellComplete]] = { + "bash": BashComplete, + "fish": FishComplete, + "zsh": ZshComplete, +} + + +def add_completion_class( + cls: ShellCompleteType, name: t.Optional[str] = None +) -> ShellCompleteType: + """Register a :class:`ShellComplete` subclass under the given name. + The name will be provided by the completion instruction environment + variable during completion. + + :param cls: The completion class that will handle completion for the + shell. + :param name: Name to register the class under. Defaults to the + class's ``name`` attribute. + """ + if name is None: + name = cls.name + + _available_shells[name] = cls + + return cls + + +def get_completion_class(shell: str) -> t.Optional[t.Type[ShellComplete]]: + """Look up a registered :class:`ShellComplete` subclass by the name + provided by the completion instruction environment variable. If the + name isn't registered, returns ``None``. + + :param shell: Name the class is registered under. + """ + return _available_shells.get(shell) + + +def _is_incomplete_argument(ctx: Context, param: Parameter) -> bool: + """Determine if the given parameter is an argument that can still + accept values. + + :param ctx: Invocation context for the command represented by the + parsed complete args. + :param param: Argument object being checked. + """ + if not isinstance(param, Argument): + return False + + assert param.name is not None + # Will be None if expose_value is False. + value = ctx.params.get(param.name) + return ( + param.nargs == -1 + or ctx.get_parameter_source(param.name) is not ParameterSource.COMMANDLINE + or ( + param.nargs > 1 + and isinstance(value, (tuple, list)) + and len(value) < param.nargs + ) + ) + + +def _start_of_option(ctx: Context, value: str) -> bool: + """Check if the value looks like the start of an option.""" + if not value: + return False + + c = value[0] + return c in ctx._opt_prefixes + + +def _is_incomplete_option(ctx: Context, args: t.List[str], param: Parameter) -> bool: + """Determine if the given parameter is an option that needs a value. + + :param args: List of complete args before the incomplete value. + :param param: Option object being checked. + """ + if not isinstance(param, Option): + return False + + if param.is_flag or param.count: + return False + + last_option = None + + for index, arg in enumerate(reversed(args)): + if index + 1 > param.nargs: + break + + if _start_of_option(ctx, arg): + last_option = arg + + return last_option is not None and last_option in param.opts + + +def _resolve_context( + cli: BaseCommand, + ctx_args: t.MutableMapping[str, t.Any], + prog_name: str, + args: t.List[str], +) -> Context: + """Produce the context hierarchy starting with the command and + traversing the complete arguments. This only follows the commands, + it doesn't trigger input prompts or callbacks. + + :param cli: Command being called. + :param prog_name: Name of the executable in the shell. + :param args: List of complete args before the incomplete value. + """ + ctx_args["resilient_parsing"] = True + ctx = cli.make_context(prog_name, args.copy(), **ctx_args) + args = ctx.protected_args + ctx.args + + while args: + command = ctx.command + + if isinstance(command, MultiCommand): + if not command.chain: + name, cmd, args = command.resolve_command(ctx, args) + + if cmd is None: + return ctx + + ctx = cmd.make_context(name, args, parent=ctx, resilient_parsing=True) + args = ctx.protected_args + ctx.args + else: + sub_ctx = ctx + + while args: + name, cmd, args = command.resolve_command(ctx, args) + + if cmd is None: + return ctx + + sub_ctx = cmd.make_context( + name, + args, + parent=ctx, + allow_extra_args=True, + allow_interspersed_args=False, + resilient_parsing=True, + ) + args = sub_ctx.args + + ctx = sub_ctx + args = [*sub_ctx.protected_args, *sub_ctx.args] + else: + break + + return ctx + + +def _resolve_incomplete( + ctx: Context, args: t.List[str], incomplete: str +) -> t.Tuple[t.Union[BaseCommand, Parameter], str]: + """Find the Click object that will handle the completion of the + incomplete value. Return the object and the incomplete value. + + :param ctx: Invocation context for the command represented by + the parsed complete args. + :param args: List of complete args before the incomplete value. + :param incomplete: Value being completed. May be empty. + """ + # Different shells treat an "=" between a long option name and + # value differently. Might keep the value joined, return the "=" + # as a separate item, or return the split name and value. Always + # split and discard the "=" to make completion easier. + if incomplete == "=": + incomplete = "" + elif "=" in incomplete and _start_of_option(ctx, incomplete): + name, _, incomplete = incomplete.partition("=") + args.append(name) + + # The "--" marker tells Click to stop treating values as options + # even if they start with the option character. If it hasn't been + # given and the incomplete arg looks like an option, the current + # command will provide option name completions. + if "--" not in args and _start_of_option(ctx, incomplete): + return ctx.command, incomplete + + params = ctx.command.get_params(ctx) + + # If the last complete arg is an option name with an incomplete + # value, the option will provide value completions. + for param in params: + if _is_incomplete_option(ctx, args, param): + return param, incomplete + + # It's not an option name or value. The first argument without a + # parsed value will provide value completions. + for param in params: + if _is_incomplete_argument(ctx, param): + return param, incomplete + + # There were no unparsed arguments, the command may be a group that + # will provide command name completions. + return ctx.command, incomplete diff --git a/venv/lib/python3.9/site-packages/click/termui.py b/venv/lib/python3.9/site-packages/click/termui.py new file mode 100644 index 0000000..c084f19 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/termui.py @@ -0,0 +1,784 @@ +import inspect +import io +import itertools +import sys +import typing as t +from gettext import gettext as _ + +from ._compat import isatty +from ._compat import strip_ansi +from .exceptions import Abort +from .exceptions import UsageError +from .globals import resolve_color_default +from .types import Choice +from .types import convert_type +from .types import ParamType +from .utils import echo +from .utils import LazyFile + +if t.TYPE_CHECKING: + from ._termui_impl import ProgressBar + +V = t.TypeVar("V") + +# The prompt functions to use. The doc tools currently override these +# functions to customize how they work. +visible_prompt_func: t.Callable[[str], str] = input + +_ansi_colors = { + "black": 30, + "red": 31, + "green": 32, + "yellow": 33, + "blue": 34, + "magenta": 35, + "cyan": 36, + "white": 37, + "reset": 39, + "bright_black": 90, + "bright_red": 91, + "bright_green": 92, + "bright_yellow": 93, + "bright_blue": 94, + "bright_magenta": 95, + "bright_cyan": 96, + "bright_white": 97, +} +_ansi_reset_all = "\033[0m" + + +def hidden_prompt_func(prompt: str) -> str: + import getpass + + return getpass.getpass(prompt) + + +def _build_prompt( + text: str, + suffix: str, + show_default: bool = False, + default: t.Optional[t.Any] = None, + show_choices: bool = True, + type: t.Optional[ParamType] = None, +) -> str: + prompt = text + if type is not None and show_choices and isinstance(type, Choice): + prompt += f" ({', '.join(map(str, type.choices))})" + if default is not None and show_default: + prompt = f"{prompt} [{_format_default(default)}]" + return f"{prompt}{suffix}" + + +def _format_default(default: t.Any) -> t.Any: + if isinstance(default, (io.IOBase, LazyFile)) and hasattr(default, "name"): + return default.name + + return default + + +def prompt( + text: str, + default: t.Optional[t.Any] = None, + hide_input: bool = False, + confirmation_prompt: t.Union[bool, str] = False, + type: t.Optional[t.Union[ParamType, t.Any]] = None, + value_proc: t.Optional[t.Callable[[str], t.Any]] = None, + prompt_suffix: str = ": ", + show_default: bool = True, + err: bool = False, + show_choices: bool = True, +) -> t.Any: + """Prompts a user for input. This is a convenience function that can + be used to prompt a user for input later. + + If the user aborts the input by sending an interrupt signal, this + function will catch it and raise a :exc:`Abort` exception. + + :param text: the text to show for the prompt. + :param default: the default value to use if no input happens. If this + is not given it will prompt until it's aborted. + :param hide_input: if this is set to true then the input value will + be hidden. + :param confirmation_prompt: Prompt a second time to confirm the + value. Can be set to a string instead of ``True`` to customize + the message. + :param type: the type to use to check the value against. + :param value_proc: if this parameter is provided it's a function that + is invoked instead of the type conversion to + convert a value. + :param prompt_suffix: a suffix that should be added to the prompt. + :param show_default: shows or hides the default value in the prompt. + :param err: if set to true the file defaults to ``stderr`` instead of + ``stdout``, the same as with echo. + :param show_choices: Show or hide choices if the passed type is a Choice. + For example if type is a Choice of either day or week, + show_choices is true and text is "Group by" then the + prompt will be "Group by (day, week): ". + + .. versionadded:: 8.0 + ``confirmation_prompt`` can be a custom string. + + .. versionadded:: 7.0 + Added the ``show_choices`` parameter. + + .. versionadded:: 6.0 + Added unicode support for cmd.exe on Windows. + + .. versionadded:: 4.0 + Added the `err` parameter. + + """ + + def prompt_func(text: str) -> str: + f = hidden_prompt_func if hide_input else visible_prompt_func + try: + # Write the prompt separately so that we get nice + # coloring through colorama on Windows + echo(text.rstrip(" "), nl=False, err=err) + # Echo a space to stdout to work around an issue where + # readline causes backspace to clear the whole line. + return f(" ") + except (KeyboardInterrupt, EOFError): + # getpass doesn't print a newline if the user aborts input with ^C. + # Allegedly this behavior is inherited from getpass(3). + # A doc bug has been filed at https://bugs.python.org/issue24711 + if hide_input: + echo(None, err=err) + raise Abort() from None + + if value_proc is None: + value_proc = convert_type(type, default) + + prompt = _build_prompt( + text, prompt_suffix, show_default, default, show_choices, type + ) + + if confirmation_prompt: + if confirmation_prompt is True: + confirmation_prompt = _("Repeat for confirmation") + + confirmation_prompt = _build_prompt(confirmation_prompt, prompt_suffix) + + while True: + while True: + value = prompt_func(prompt) + if value: + break + elif default is not None: + value = default + break + try: + result = value_proc(value) + except UsageError as e: + if hide_input: + echo(_("Error: The value you entered was invalid."), err=err) + else: + echo(_("Error: {e.message}").format(e=e), err=err) + continue + if not confirmation_prompt: + return result + while True: + value2 = prompt_func(confirmation_prompt) + is_empty = not value and not value2 + if value2 or is_empty: + break + if value == value2: + return result + echo(_("Error: The two entered values do not match."), err=err) + + +def confirm( + text: str, + default: t.Optional[bool] = False, + abort: bool = False, + prompt_suffix: str = ": ", + show_default: bool = True, + err: bool = False, +) -> bool: + """Prompts for confirmation (yes/no question). + + If the user aborts the input by sending a interrupt signal this + function will catch it and raise a :exc:`Abort` exception. + + :param text: the question to ask. + :param default: The default value to use when no input is given. If + ``None``, repeat until input is given. + :param abort: if this is set to `True` a negative answer aborts the + exception by raising :exc:`Abort`. + :param prompt_suffix: a suffix that should be added to the prompt. + :param show_default: shows or hides the default value in the prompt. + :param err: if set to true the file defaults to ``stderr`` instead of + ``stdout``, the same as with echo. + + .. versionchanged:: 8.0 + Repeat until input is given if ``default`` is ``None``. + + .. versionadded:: 4.0 + Added the ``err`` parameter. + """ + prompt = _build_prompt( + text, + prompt_suffix, + show_default, + "y/n" if default is None else ("Y/n" if default else "y/N"), + ) + + while True: + try: + # Write the prompt separately so that we get nice + # coloring through colorama on Windows + echo(prompt.rstrip(" "), nl=False, err=err) + # Echo a space to stdout to work around an issue where + # readline causes backspace to clear the whole line. + value = visible_prompt_func(" ").lower().strip() + except (KeyboardInterrupt, EOFError): + raise Abort() from None + if value in ("y", "yes"): + rv = True + elif value in ("n", "no"): + rv = False + elif default is not None and value == "": + rv = default + else: + echo(_("Error: invalid input"), err=err) + continue + break + if abort and not rv: + raise Abort() + return rv + + +def echo_via_pager( + text_or_generator: t.Union[t.Iterable[str], t.Callable[[], t.Iterable[str]], str], + color: t.Optional[bool] = None, +) -> None: + """This function takes a text and shows it via an environment specific + pager on stdout. + + .. versionchanged:: 3.0 + Added the `color` flag. + + :param text_or_generator: the text to page, or alternatively, a + generator emitting the text to page. + :param color: controls if the pager supports ANSI colors or not. The + default is autodetection. + """ + color = resolve_color_default(color) + + if inspect.isgeneratorfunction(text_or_generator): + i = t.cast(t.Callable[[], t.Iterable[str]], text_or_generator)() + elif isinstance(text_or_generator, str): + i = [text_or_generator] + else: + i = iter(t.cast(t.Iterable[str], text_or_generator)) + + # convert every element of i to a text type if necessary + text_generator = (el if isinstance(el, str) else str(el) for el in i) + + from ._termui_impl import pager + + return pager(itertools.chain(text_generator, "\n"), color) + + +def progressbar( + iterable: t.Optional[t.Iterable[V]] = None, + length: t.Optional[int] = None, + label: t.Optional[str] = None, + show_eta: bool = True, + show_percent: t.Optional[bool] = None, + show_pos: bool = False, + item_show_func: t.Optional[t.Callable[[t.Optional[V]], t.Optional[str]]] = None, + fill_char: str = "#", + empty_char: str = "-", + bar_template: str = "%(label)s [%(bar)s] %(info)s", + info_sep: str = " ", + width: int = 36, + file: t.Optional[t.TextIO] = None, + color: t.Optional[bool] = None, + update_min_steps: int = 1, +) -> "ProgressBar[V]": + """This function creates an iterable context manager that can be used + to iterate over something while showing a progress bar. It will + either iterate over the `iterable` or `length` items (that are counted + up). While iteration happens, this function will print a rendered + progress bar to the given `file` (defaults to stdout) and will attempt + to calculate remaining time and more. By default, this progress bar + will not be rendered if the file is not a terminal. + + The context manager creates the progress bar. When the context + manager is entered the progress bar is already created. With every + iteration over the progress bar, the iterable passed to the bar is + advanced and the bar is updated. When the context manager exits, + a newline is printed and the progress bar is finalized on screen. + + Note: The progress bar is currently designed for use cases where the + total progress can be expected to take at least several seconds. + Because of this, the ProgressBar class object won't display + progress that is considered too fast, and progress where the time + between steps is less than a second. + + No printing must happen or the progress bar will be unintentionally + destroyed. + + Example usage:: + + with progressbar(items) as bar: + for item in bar: + do_something_with(item) + + Alternatively, if no iterable is specified, one can manually update the + progress bar through the `update()` method instead of directly + iterating over the progress bar. The update method accepts the number + of steps to increment the bar with:: + + with progressbar(length=chunks.total_bytes) as bar: + for chunk in chunks: + process_chunk(chunk) + bar.update(chunks.bytes) + + The ``update()`` method also takes an optional value specifying the + ``current_item`` at the new position. This is useful when used + together with ``item_show_func`` to customize the output for each + manual step:: + + with click.progressbar( + length=total_size, + label='Unzipping archive', + item_show_func=lambda a: a.filename + ) as bar: + for archive in zip_file: + archive.extract() + bar.update(archive.size, archive) + + :param iterable: an iterable to iterate over. If not provided the length + is required. + :param length: the number of items to iterate over. By default the + progressbar will attempt to ask the iterator about its + length, which might or might not work. If an iterable is + also provided this parameter can be used to override the + length. If an iterable is not provided the progress bar + will iterate over a range of that length. + :param label: the label to show next to the progress bar. + :param show_eta: enables or disables the estimated time display. This is + automatically disabled if the length cannot be + determined. + :param show_percent: enables or disables the percentage display. The + default is `True` if the iterable has a length or + `False` if not. + :param show_pos: enables or disables the absolute position display. The + default is `False`. + :param item_show_func: A function called with the current item which + can return a string to show next to the progress bar. If the + function returns ``None`` nothing is shown. The current item can + be ``None``, such as when entering and exiting the bar. + :param fill_char: the character to use to show the filled part of the + progress bar. + :param empty_char: the character to use to show the non-filled part of + the progress bar. + :param bar_template: the format string to use as template for the bar. + The parameters in it are ``label`` for the label, + ``bar`` for the progress bar and ``info`` for the + info section. + :param info_sep: the separator between multiple info items (eta etc.) + :param width: the width of the progress bar in characters, 0 means full + terminal width + :param file: The file to write to. If this is not a terminal then + only the label is printed. + :param color: controls if the terminal supports ANSI colors or not. The + default is autodetection. This is only needed if ANSI + codes are included anywhere in the progress bar output + which is not the case by default. + :param update_min_steps: Render only when this many updates have + completed. This allows tuning for very fast iterators. + + .. versionchanged:: 8.0 + Output is shown even if execution time is less than 0.5 seconds. + + .. versionchanged:: 8.0 + ``item_show_func`` shows the current item, not the previous one. + + .. versionchanged:: 8.0 + Labels are echoed if the output is not a TTY. Reverts a change + in 7.0 that removed all output. + + .. versionadded:: 8.0 + Added the ``update_min_steps`` parameter. + + .. versionchanged:: 4.0 + Added the ``color`` parameter. Added the ``update`` method to + the object. + + .. versionadded:: 2.0 + """ + from ._termui_impl import ProgressBar + + color = resolve_color_default(color) + return ProgressBar( + iterable=iterable, + length=length, + show_eta=show_eta, + show_percent=show_percent, + show_pos=show_pos, + item_show_func=item_show_func, + fill_char=fill_char, + empty_char=empty_char, + bar_template=bar_template, + info_sep=info_sep, + file=file, + label=label, + width=width, + color=color, + update_min_steps=update_min_steps, + ) + + +def clear() -> None: + """Clears the terminal screen. This will have the effect of clearing + the whole visible space of the terminal and moving the cursor to the + top left. This does not do anything if not connected to a terminal. + + .. versionadded:: 2.0 + """ + if not isatty(sys.stdout): + return + + # ANSI escape \033[2J clears the screen, \033[1;1H moves the cursor + echo("\033[2J\033[1;1H", nl=False) + + +def _interpret_color( + color: t.Union[int, t.Tuple[int, int, int], str], offset: int = 0 +) -> str: + if isinstance(color, int): + return f"{38 + offset};5;{color:d}" + + if isinstance(color, (tuple, list)): + r, g, b = color + return f"{38 + offset};2;{r:d};{g:d};{b:d}" + + return str(_ansi_colors[color] + offset) + + +def style( + text: t.Any, + fg: t.Optional[t.Union[int, t.Tuple[int, int, int], str]] = None, + bg: t.Optional[t.Union[int, t.Tuple[int, int, int], str]] = None, + bold: t.Optional[bool] = None, + dim: t.Optional[bool] = None, + underline: t.Optional[bool] = None, + overline: t.Optional[bool] = None, + italic: t.Optional[bool] = None, + blink: t.Optional[bool] = None, + reverse: t.Optional[bool] = None, + strikethrough: t.Optional[bool] = None, + reset: bool = True, +) -> str: + """Styles a text with ANSI styles and returns the new string. By + default the styling is self contained which means that at the end + of the string a reset code is issued. This can be prevented by + passing ``reset=False``. + + Examples:: + + click.echo(click.style('Hello World!', fg='green')) + click.echo(click.style('ATTENTION!', blink=True)) + click.echo(click.style('Some things', reverse=True, fg='cyan')) + click.echo(click.style('More colors', fg=(255, 12, 128), bg=117)) + + Supported color names: + + * ``black`` (might be a gray) + * ``red`` + * ``green`` + * ``yellow`` (might be an orange) + * ``blue`` + * ``magenta`` + * ``cyan`` + * ``white`` (might be light gray) + * ``bright_black`` + * ``bright_red`` + * ``bright_green`` + * ``bright_yellow`` + * ``bright_blue`` + * ``bright_magenta`` + * ``bright_cyan`` + * ``bright_white`` + * ``reset`` (reset the color code only) + + If the terminal supports it, color may also be specified as: + + - An integer in the interval [0, 255]. The terminal must support + 8-bit/256-color mode. + - An RGB tuple of three integers in [0, 255]. The terminal must + support 24-bit/true-color mode. + + See https://en.wikipedia.org/wiki/ANSI_color and + https://gist.github.com/XVilka/8346728 for more information. + + :param text: the string to style with ansi codes. + :param fg: if provided this will become the foreground color. + :param bg: if provided this will become the background color. + :param bold: if provided this will enable or disable bold mode. + :param dim: if provided this will enable or disable dim mode. This is + badly supported. + :param underline: if provided this will enable or disable underline. + :param overline: if provided this will enable or disable overline. + :param italic: if provided this will enable or disable italic. + :param blink: if provided this will enable or disable blinking. + :param reverse: if provided this will enable or disable inverse + rendering (foreground becomes background and the + other way round). + :param strikethrough: if provided this will enable or disable + striking through text. + :param reset: by default a reset-all code is added at the end of the + string which means that styles do not carry over. This + can be disabled to compose styles. + + .. versionchanged:: 8.0 + A non-string ``message`` is converted to a string. + + .. versionchanged:: 8.0 + Added support for 256 and RGB color codes. + + .. versionchanged:: 8.0 + Added the ``strikethrough``, ``italic``, and ``overline`` + parameters. + + .. versionchanged:: 7.0 + Added support for bright colors. + + .. versionadded:: 2.0 + """ + if not isinstance(text, str): + text = str(text) + + bits = [] + + if fg: + try: + bits.append(f"\033[{_interpret_color(fg)}m") + except KeyError: + raise TypeError(f"Unknown color {fg!r}") from None + + if bg: + try: + bits.append(f"\033[{_interpret_color(bg, 10)}m") + except KeyError: + raise TypeError(f"Unknown color {bg!r}") from None + + if bold is not None: + bits.append(f"\033[{1 if bold else 22}m") + if dim is not None: + bits.append(f"\033[{2 if dim else 22}m") + if underline is not None: + bits.append(f"\033[{4 if underline else 24}m") + if overline is not None: + bits.append(f"\033[{53 if overline else 55}m") + if italic is not None: + bits.append(f"\033[{3 if italic else 23}m") + if blink is not None: + bits.append(f"\033[{5 if blink else 25}m") + if reverse is not None: + bits.append(f"\033[{7 if reverse else 27}m") + if strikethrough is not None: + bits.append(f"\033[{9 if strikethrough else 29}m") + bits.append(text) + if reset: + bits.append(_ansi_reset_all) + return "".join(bits) + + +def unstyle(text: str) -> str: + """Removes ANSI styling information from a string. Usually it's not + necessary to use this function as Click's echo function will + automatically remove styling if necessary. + + .. versionadded:: 2.0 + + :param text: the text to remove style information from. + """ + return strip_ansi(text) + + +def secho( + message: t.Optional[t.Any] = None, + file: t.Optional[t.IO[t.AnyStr]] = None, + nl: bool = True, + err: bool = False, + color: t.Optional[bool] = None, + **styles: t.Any, +) -> None: + """This function combines :func:`echo` and :func:`style` into one + call. As such the following two calls are the same:: + + click.secho('Hello World!', fg='green') + click.echo(click.style('Hello World!', fg='green')) + + All keyword arguments are forwarded to the underlying functions + depending on which one they go with. + + Non-string types will be converted to :class:`str`. However, + :class:`bytes` are passed directly to :meth:`echo` without applying + style. If you want to style bytes that represent text, call + :meth:`bytes.decode` first. + + .. versionchanged:: 8.0 + A non-string ``message`` is converted to a string. Bytes are + passed through without style applied. + + .. versionadded:: 2.0 + """ + if message is not None and not isinstance(message, (bytes, bytearray)): + message = style(message, **styles) + + return echo(message, file=file, nl=nl, err=err, color=color) + + +def edit( + text: t.Optional[t.AnyStr] = None, + editor: t.Optional[str] = None, + env: t.Optional[t.Mapping[str, str]] = None, + require_save: bool = True, + extension: str = ".txt", + filename: t.Optional[str] = None, +) -> t.Optional[t.AnyStr]: + r"""Edits the given text in the defined editor. If an editor is given + (should be the full path to the executable but the regular operating + system search path is used for finding the executable) it overrides + the detected editor. Optionally, some environment variables can be + used. If the editor is closed without changes, `None` is returned. In + case a file is edited directly the return value is always `None` and + `require_save` and `extension` are ignored. + + If the editor cannot be opened a :exc:`UsageError` is raised. + + Note for Windows: to simplify cross-platform usage, the newlines are + automatically converted from POSIX to Windows and vice versa. As such, + the message here will have ``\n`` as newline markers. + + :param text: the text to edit. + :param editor: optionally the editor to use. Defaults to automatic + detection. + :param env: environment variables to forward to the editor. + :param require_save: if this is true, then not saving in the editor + will make the return value become `None`. + :param extension: the extension to tell the editor about. This defaults + to `.txt` but changing this might change syntax + highlighting. + :param filename: if provided it will edit this file instead of the + provided text contents. It will not use a temporary + file as an indirection in that case. + """ + from ._termui_impl import Editor + + ed = Editor(editor=editor, env=env, require_save=require_save, extension=extension) + + if filename is None: + return ed.edit(text) + + ed.edit_file(filename) + return None + + +def launch(url: str, wait: bool = False, locate: bool = False) -> int: + """This function launches the given URL (or filename) in the default + viewer application for this file type. If this is an executable, it + might launch the executable in a new session. The return value is + the exit code of the launched application. Usually, ``0`` indicates + success. + + Examples:: + + click.launch('https://click.palletsprojects.com/') + click.launch('/my/downloaded/file', locate=True) + + .. versionadded:: 2.0 + + :param url: URL or filename of the thing to launch. + :param wait: Wait for the program to exit before returning. This + only works if the launched program blocks. In particular, + ``xdg-open`` on Linux does not block. + :param locate: if this is set to `True` then instead of launching the + application associated with the URL it will attempt to + launch a file manager with the file located. This + might have weird effects if the URL does not point to + the filesystem. + """ + from ._termui_impl import open_url + + return open_url(url, wait=wait, locate=locate) + + +# If this is provided, getchar() calls into this instead. This is used +# for unittesting purposes. +_getchar: t.Optional[t.Callable[[bool], str]] = None + + +def getchar(echo: bool = False) -> str: + """Fetches a single character from the terminal and returns it. This + will always return a unicode character and under certain rare + circumstances this might return more than one character. The + situations which more than one character is returned is when for + whatever reason multiple characters end up in the terminal buffer or + standard input was not actually a terminal. + + Note that this will always read from the terminal, even if something + is piped into the standard input. + + Note for Windows: in rare cases when typing non-ASCII characters, this + function might wait for a second character and then return both at once. + This is because certain Unicode characters look like special-key markers. + + .. versionadded:: 2.0 + + :param echo: if set to `True`, the character read will also show up on + the terminal. The default is to not show it. + """ + global _getchar + + if _getchar is None: + from ._termui_impl import getchar as f + + _getchar = f + + return _getchar(echo) + + +def raw_terminal() -> t.ContextManager[int]: + from ._termui_impl import raw_terminal as f + + return f() + + +def pause(info: t.Optional[str] = None, err: bool = False) -> None: + """This command stops execution and waits for the user to press any + key to continue. This is similar to the Windows batch "pause" + command. If the program is not run through a terminal, this command + will instead do nothing. + + .. versionadded:: 2.0 + + .. versionadded:: 4.0 + Added the `err` parameter. + + :param info: The message to print before pausing. Defaults to + ``"Press any key to continue..."``. + :param err: if set to message goes to ``stderr`` instead of + ``stdout``, the same as with echo. + """ + if not isatty(sys.stdin) or not isatty(sys.stdout): + return + + if info is None: + info = _("Press any key to continue...") + + try: + if info: + echo(info, nl=False, err=err) + try: + getchar() + except (KeyboardInterrupt, EOFError): + pass + finally: + if info: + echo(err=err) diff --git a/venv/lib/python3.9/site-packages/click/testing.py b/venv/lib/python3.9/site-packages/click/testing.py new file mode 100644 index 0000000..772b215 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/testing.py @@ -0,0 +1,483 @@ +import contextlib +import io +import os +import shlex +import shutil +import sys +import tempfile +import typing as t +from types import TracebackType + +from . import _compat +from . import formatting +from . import termui +from . import utils +from ._compat import _find_binary_reader + +if t.TYPE_CHECKING: + from .core import BaseCommand + + +class EchoingStdin: + def __init__(self, input: t.BinaryIO, output: t.BinaryIO) -> None: + self._input = input + self._output = output + self._paused = False + + def __getattr__(self, x: str) -> t.Any: + return getattr(self._input, x) + + def _echo(self, rv: bytes) -> bytes: + if not self._paused: + self._output.write(rv) + + return rv + + def read(self, n: int = -1) -> bytes: + return self._echo(self._input.read(n)) + + def read1(self, n: int = -1) -> bytes: + return self._echo(self._input.read1(n)) # type: ignore + + def readline(self, n: int = -1) -> bytes: + return self._echo(self._input.readline(n)) + + def readlines(self) -> t.List[bytes]: + return [self._echo(x) for x in self._input.readlines()] + + def __iter__(self) -> t.Iterator[bytes]: + return iter(self._echo(x) for x in self._input) + + def __repr__(self) -> str: + return repr(self._input) + + +@contextlib.contextmanager +def _pause_echo(stream: t.Optional[EchoingStdin]) -> t.Iterator[None]: + if stream is None: + yield + else: + stream._paused = True + yield + stream._paused = False + + +class _NamedTextIOWrapper(io.TextIOWrapper): + def __init__( + self, buffer: t.BinaryIO, name: str, mode: str, **kwargs: t.Any + ) -> None: + super().__init__(buffer, **kwargs) + self._name = name + self._mode = mode + + @property + def name(self) -> str: + return self._name + + @property + def mode(self) -> str: + return self._mode + + +def make_input_stream( + input: t.Optional[t.Union[str, bytes, t.IO[t.Any]]], charset: str +) -> t.BinaryIO: + # Is already an input stream. + if hasattr(input, "read"): + rv = _find_binary_reader(t.cast(t.IO[t.Any], input)) + + if rv is not None: + return rv + + raise TypeError("Could not find binary reader for input stream.") + + if input is None: + input = b"" + elif isinstance(input, str): + input = input.encode(charset) + + return io.BytesIO(input) + + +class Result: + """Holds the captured result of an invoked CLI script.""" + + def __init__( + self, + runner: "CliRunner", + stdout_bytes: bytes, + stderr_bytes: t.Optional[bytes], + return_value: t.Any, + exit_code: int, + exception: t.Optional[BaseException], + exc_info: t.Optional[ + t.Tuple[t.Type[BaseException], BaseException, TracebackType] + ] = None, + ): + #: The runner that created the result + self.runner = runner + #: The standard output as bytes. + self.stdout_bytes = stdout_bytes + #: The standard error as bytes, or None if not available + self.stderr_bytes = stderr_bytes + #: The value returned from the invoked command. + #: + #: .. versionadded:: 8.0 + self.return_value = return_value + #: The exit code as integer. + self.exit_code = exit_code + #: The exception that happened if one did. + self.exception = exception + #: The traceback + self.exc_info = exc_info + + @property + def output(self) -> str: + """The (standard) output as unicode string.""" + return self.stdout + + @property + def stdout(self) -> str: + """The standard output as unicode string.""" + return self.stdout_bytes.decode(self.runner.charset, "replace").replace( + "\r\n", "\n" + ) + + @property + def stderr(self) -> str: + """The standard error as unicode string.""" + if self.stderr_bytes is None: + raise ValueError("stderr not separately captured") + return self.stderr_bytes.decode(self.runner.charset, "replace").replace( + "\r\n", "\n" + ) + + def __repr__(self) -> str: + exc_str = repr(self.exception) if self.exception else "okay" + return f"<{type(self).__name__} {exc_str}>" + + +class CliRunner: + """The CLI runner provides functionality to invoke a Click command line + script for unittesting purposes in a isolated environment. This only + works in single-threaded systems without any concurrency as it changes the + global interpreter state. + + :param charset: the character set for the input and output data. + :param env: a dictionary with environment variables for overriding. + :param echo_stdin: if this is set to `True`, then reading from stdin writes + to stdout. This is useful for showing examples in + some circumstances. Note that regular prompts + will automatically echo the input. + :param mix_stderr: if this is set to `False`, then stdout and stderr are + preserved as independent streams. This is useful for + Unix-philosophy apps that have predictable stdout and + noisy stderr, such that each may be measured + independently + """ + + def __init__( + self, + charset: str = "utf-8", + env: t.Optional[t.Mapping[str, t.Optional[str]]] = None, + echo_stdin: bool = False, + mix_stderr: bool = True, + ) -> None: + self.charset = charset + self.env: t.Mapping[str, t.Optional[str]] = env or {} + self.echo_stdin = echo_stdin + self.mix_stderr = mix_stderr + + def get_default_prog_name(self, cli: "BaseCommand") -> str: + """Given a command object it will return the default program name + for it. The default is the `name` attribute or ``"root"`` if not + set. + """ + return cli.name or "root" + + def make_env( + self, overrides: t.Optional[t.Mapping[str, t.Optional[str]]] = None + ) -> t.Mapping[str, t.Optional[str]]: + """Returns the environment overrides for invoking a script.""" + rv = dict(self.env) + if overrides: + rv.update(overrides) + return rv + + @contextlib.contextmanager + def isolation( + self, + input: t.Optional[t.Union[str, bytes, t.IO[t.Any]]] = None, + env: t.Optional[t.Mapping[str, t.Optional[str]]] = None, + color: bool = False, + ) -> t.Iterator[t.Tuple[io.BytesIO, t.Optional[io.BytesIO]]]: + """A context manager that sets up the isolation for invoking of a + command line tool. This sets up stdin with the given input data + and `os.environ` with the overrides from the given dictionary. + This also rebinds some internals in Click to be mocked (like the + prompt functionality). + + This is automatically done in the :meth:`invoke` method. + + :param input: the input stream to put into sys.stdin. + :param env: the environment overrides as dictionary. + :param color: whether the output should contain color codes. The + application can still override this explicitly. + + .. versionchanged:: 8.0 + ``stderr`` is opened with ``errors="backslashreplace"`` + instead of the default ``"strict"``. + + .. versionchanged:: 4.0 + Added the ``color`` parameter. + """ + bytes_input = make_input_stream(input, self.charset) + echo_input = None + + old_stdin = sys.stdin + old_stdout = sys.stdout + old_stderr = sys.stderr + old_forced_width = formatting.FORCED_WIDTH + formatting.FORCED_WIDTH = 80 + + env = self.make_env(env) + + bytes_output = io.BytesIO() + + if self.echo_stdin: + bytes_input = echo_input = t.cast( + t.BinaryIO, EchoingStdin(bytes_input, bytes_output) + ) + + sys.stdin = text_input = _NamedTextIOWrapper( + bytes_input, encoding=self.charset, name="", mode="r" + ) + + if self.echo_stdin: + # Force unbuffered reads, otherwise TextIOWrapper reads a + # large chunk which is echoed early. + text_input._CHUNK_SIZE = 1 # type: ignore + + sys.stdout = _NamedTextIOWrapper( + bytes_output, encoding=self.charset, name="", mode="w" + ) + + bytes_error = None + if self.mix_stderr: + sys.stderr = sys.stdout + else: + bytes_error = io.BytesIO() + sys.stderr = _NamedTextIOWrapper( + bytes_error, + encoding=self.charset, + name="", + mode="w", + errors="backslashreplace", + ) + + @_pause_echo(echo_input) # type: ignore + def visible_input(prompt: t.Optional[str] = None) -> str: + sys.stdout.write(prompt or "") + val = text_input.readline().rstrip("\r\n") + sys.stdout.write(f"{val}\n") + sys.stdout.flush() + return val + + @_pause_echo(echo_input) # type: ignore + def hidden_input(prompt: t.Optional[str] = None) -> str: + sys.stdout.write(f"{prompt or ''}\n") + sys.stdout.flush() + return text_input.readline().rstrip("\r\n") + + @_pause_echo(echo_input) # type: ignore + def _getchar(echo: bool) -> str: + char = sys.stdin.read(1) + + if echo: + sys.stdout.write(char) + + sys.stdout.flush() + return char + + default_color = color + + def should_strip_ansi( + stream: t.Optional[t.IO[t.Any]] = None, color: t.Optional[bool] = None + ) -> bool: + if color is None: + return not default_color + return not color + + old_visible_prompt_func = termui.visible_prompt_func + old_hidden_prompt_func = termui.hidden_prompt_func + old__getchar_func = termui._getchar + old_should_strip_ansi = utils.should_strip_ansi # type: ignore + old__compat_should_strip_ansi = _compat.should_strip_ansi + termui.visible_prompt_func = visible_input + termui.hidden_prompt_func = hidden_input + termui._getchar = _getchar + utils.should_strip_ansi = should_strip_ansi # type: ignore + _compat.should_strip_ansi = should_strip_ansi + + old_env = {} + try: + for key, value in env.items(): + old_env[key] = os.environ.get(key) + if value is None: + try: + del os.environ[key] + except Exception: + pass + else: + os.environ[key] = value + yield (bytes_output, bytes_error) + finally: + for key, value in old_env.items(): + if value is None: + try: + del os.environ[key] + except Exception: + pass + else: + os.environ[key] = value + sys.stdout = old_stdout + sys.stderr = old_stderr + sys.stdin = old_stdin + termui.visible_prompt_func = old_visible_prompt_func + termui.hidden_prompt_func = old_hidden_prompt_func + termui._getchar = old__getchar_func + utils.should_strip_ansi = old_should_strip_ansi # type: ignore + _compat.should_strip_ansi = old__compat_should_strip_ansi + formatting.FORCED_WIDTH = old_forced_width + + def invoke( + self, + cli: "BaseCommand", + args: t.Optional[t.Union[str, t.Sequence[str]]] = None, + input: t.Optional[t.Union[str, bytes, t.IO[t.Any]]] = None, + env: t.Optional[t.Mapping[str, t.Optional[str]]] = None, + catch_exceptions: bool = True, + color: bool = False, + **extra: t.Any, + ) -> Result: + """Invokes a command in an isolated environment. The arguments are + forwarded directly to the command line script, the `extra` keyword + arguments are passed to the :meth:`~clickpkg.Command.main` function of + the command. + + This returns a :class:`Result` object. + + :param cli: the command to invoke + :param args: the arguments to invoke. It may be given as an iterable + or a string. When given as string it will be interpreted + as a Unix shell command. More details at + :func:`shlex.split`. + :param input: the input data for `sys.stdin`. + :param env: the environment overrides. + :param catch_exceptions: Whether to catch any other exceptions than + ``SystemExit``. + :param extra: the keyword arguments to pass to :meth:`main`. + :param color: whether the output should contain color codes. The + application can still override this explicitly. + + .. versionchanged:: 8.0 + The result object has the ``return_value`` attribute with + the value returned from the invoked command. + + .. versionchanged:: 4.0 + Added the ``color`` parameter. + + .. versionchanged:: 3.0 + Added the ``catch_exceptions`` parameter. + + .. versionchanged:: 3.0 + The result object has the ``exc_info`` attribute with the + traceback if available. + """ + exc_info = None + with self.isolation(input=input, env=env, color=color) as outstreams: + return_value = None + exception: t.Optional[BaseException] = None + exit_code = 0 + + if isinstance(args, str): + args = shlex.split(args) + + try: + prog_name = extra.pop("prog_name") + except KeyError: + prog_name = self.get_default_prog_name(cli) + + try: + return_value = cli.main(args=args or (), prog_name=prog_name, **extra) + except SystemExit as e: + exc_info = sys.exc_info() + e_code = t.cast(t.Optional[t.Union[int, t.Any]], e.code) + + if e_code is None: + e_code = 0 + + if e_code != 0: + exception = e + + if not isinstance(e_code, int): + sys.stdout.write(str(e_code)) + sys.stdout.write("\n") + e_code = 1 + + exit_code = e_code + + except Exception as e: + if not catch_exceptions: + raise + exception = e + exit_code = 1 + exc_info = sys.exc_info() + finally: + sys.stdout.flush() + stdout = outstreams[0].getvalue() + if self.mix_stderr: + stderr = None + else: + stderr = outstreams[1].getvalue() # type: ignore + + return Result( + runner=self, + stdout_bytes=stdout, + stderr_bytes=stderr, + return_value=return_value, + exit_code=exit_code, + exception=exception, + exc_info=exc_info, # type: ignore + ) + + @contextlib.contextmanager + def isolated_filesystem( + self, temp_dir: t.Optional[t.Union[str, "os.PathLike[str]"]] = None + ) -> t.Iterator[str]: + """A context manager that creates a temporary directory and + changes the current working directory to it. This isolates tests + that affect the contents of the CWD to prevent them from + interfering with each other. + + :param temp_dir: Create the temporary directory under this + directory. If given, the created directory is not removed + when exiting. + + .. versionchanged:: 8.0 + Added the ``temp_dir`` parameter. + """ + cwd = os.getcwd() + dt = tempfile.mkdtemp(dir=temp_dir) + os.chdir(dt) + + try: + yield dt + finally: + os.chdir(cwd) + + if temp_dir is None: + try: + shutil.rmtree(dt) + except OSError: + pass diff --git a/venv/lib/python3.9/site-packages/click/types.py b/venv/lib/python3.9/site-packages/click/types.py new file mode 100644 index 0000000..a70fd58 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/types.py @@ -0,0 +1,1093 @@ +import os +import stat +import sys +import typing as t +from datetime import datetime +from gettext import gettext as _ +from gettext import ngettext + +from ._compat import _get_argv_encoding +from ._compat import open_stream +from .exceptions import BadParameter +from .utils import format_filename +from .utils import LazyFile +from .utils import safecall + +if t.TYPE_CHECKING: + import typing_extensions as te + + from .core import Context + from .core import Parameter + from .shell_completion import CompletionItem + + +class ParamType: + """Represents the type of a parameter. Validates and converts values + from the command line or Python into the correct type. + + To implement a custom type, subclass and implement at least the + following: + + - The :attr:`name` class attribute must be set. + - Calling an instance of the type with ``None`` must return + ``None``. This is already implemented by default. + - :meth:`convert` must convert string values to the correct type. + - :meth:`convert` must accept values that are already the correct + type. + - It must be able to convert a value if the ``ctx`` and ``param`` + arguments are ``None``. This can occur when converting prompt + input. + """ + + is_composite: t.ClassVar[bool] = False + arity: t.ClassVar[int] = 1 + + #: the descriptive name of this type + name: str + + #: if a list of this type is expected and the value is pulled from a + #: string environment variable, this is what splits it up. `None` + #: means any whitespace. For all parameters the general rule is that + #: whitespace splits them up. The exception are paths and files which + #: are split by ``os.path.pathsep`` by default (":" on Unix and ";" on + #: Windows). + envvar_list_splitter: t.ClassVar[t.Optional[str]] = None + + def to_info_dict(self) -> t.Dict[str, t.Any]: + """Gather information that could be useful for a tool generating + user-facing documentation. + + Use :meth:`click.Context.to_info_dict` to traverse the entire + CLI structure. + + .. versionadded:: 8.0 + """ + # The class name without the "ParamType" suffix. + param_type = type(self).__name__.partition("ParamType")[0] + param_type = param_type.partition("ParameterType")[0] + + # Custom subclasses might not remember to set a name. + if hasattr(self, "name"): + name = self.name + else: + name = param_type + + return {"param_type": param_type, "name": name} + + def __call__( + self, + value: t.Any, + param: t.Optional["Parameter"] = None, + ctx: t.Optional["Context"] = None, + ) -> t.Any: + if value is not None: + return self.convert(value, param, ctx) + + def get_metavar(self, param: "Parameter") -> t.Optional[str]: + """Returns the metavar default for this param if it provides one.""" + + def get_missing_message(self, param: "Parameter") -> t.Optional[str]: + """Optionally might return extra information about a missing + parameter. + + .. versionadded:: 2.0 + """ + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + """Convert the value to the correct type. This is not called if + the value is ``None`` (the missing value). + + This must accept string values from the command line, as well as + values that are already the correct type. It may also convert + other compatible types. + + The ``param`` and ``ctx`` arguments may be ``None`` in certain + situations, such as when converting prompt input. + + If the value cannot be converted, call :meth:`fail` with a + descriptive message. + + :param value: The value to convert. + :param param: The parameter that is using this type to convert + its value. May be ``None``. + :param ctx: The current context that arrived at this value. May + be ``None``. + """ + return value + + def split_envvar_value(self, rv: str) -> t.Sequence[str]: + """Given a value from an environment variable this splits it up + into small chunks depending on the defined envvar list splitter. + + If the splitter is set to `None`, which means that whitespace splits, + then leading and trailing whitespace is ignored. Otherwise, leading + and trailing splitters usually lead to empty items being included. + """ + return (rv or "").split(self.envvar_list_splitter) + + def fail( + self, + message: str, + param: t.Optional["Parameter"] = None, + ctx: t.Optional["Context"] = None, + ) -> "t.NoReturn": + """Helper method to fail with an invalid value message.""" + raise BadParameter(message, ctx=ctx, param=param) + + def shell_complete( + self, ctx: "Context", param: "Parameter", incomplete: str + ) -> t.List["CompletionItem"]: + """Return a list of + :class:`~click.shell_completion.CompletionItem` objects for the + incomplete value. Most types do not provide completions, but + some do, and this allows custom types to provide custom + completions as well. + + :param ctx: Invocation context for this command. + :param param: The parameter that is requesting completion. + :param incomplete: Value being completed. May be empty. + + .. versionadded:: 8.0 + """ + return [] + + +class CompositeParamType(ParamType): + is_composite = True + + @property + def arity(self) -> int: # type: ignore + raise NotImplementedError() + + +class FuncParamType(ParamType): + def __init__(self, func: t.Callable[[t.Any], t.Any]) -> None: + self.name: str = func.__name__ + self.func = func + + def to_info_dict(self) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict() + info_dict["func"] = self.func + return info_dict + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + try: + return self.func(value) + except ValueError: + try: + value = str(value) + except UnicodeError: + value = value.decode("utf-8", "replace") + + self.fail(value, param, ctx) + + +class UnprocessedParamType(ParamType): + name = "text" + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + return value + + def __repr__(self) -> str: + return "UNPROCESSED" + + +class StringParamType(ParamType): + name = "text" + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + if isinstance(value, bytes): + enc = _get_argv_encoding() + try: + value = value.decode(enc) + except UnicodeError: + fs_enc = sys.getfilesystemencoding() + if fs_enc != enc: + try: + value = value.decode(fs_enc) + except UnicodeError: + value = value.decode("utf-8", "replace") + else: + value = value.decode("utf-8", "replace") + return value + return str(value) + + def __repr__(self) -> str: + return "STRING" + + +class Choice(ParamType): + """The choice type allows a value to be checked against a fixed set + of supported values. All of these values have to be strings. + + You should only pass a list or tuple of choices. Other iterables + (like generators) may lead to surprising results. + + The resulting value will always be one of the originally passed choices + regardless of ``case_sensitive`` or any ``ctx.token_normalize_func`` + being specified. + + See :ref:`choice-opts` for an example. + + :param case_sensitive: Set to false to make choices case + insensitive. Defaults to true. + """ + + name = "choice" + + def __init__(self, choices: t.Sequence[str], case_sensitive: bool = True) -> None: + self.choices = choices + self.case_sensitive = case_sensitive + + def to_info_dict(self) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict() + info_dict["choices"] = self.choices + info_dict["case_sensitive"] = self.case_sensitive + return info_dict + + def get_metavar(self, param: "Parameter") -> str: + choices_str = "|".join(self.choices) + + # Use curly braces to indicate a required argument. + if param.required and param.param_type_name == "argument": + return f"{{{choices_str}}}" + + # Use square braces to indicate an option or optional argument. + return f"[{choices_str}]" + + def get_missing_message(self, param: "Parameter") -> str: + return _("Choose from:\n\t{choices}").format(choices=",\n\t".join(self.choices)) + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + # Match through normalization and case sensitivity + # first do token_normalize_func, then lowercase + # preserve original `value` to produce an accurate message in + # `self.fail` + normed_value = value + normed_choices = {choice: choice for choice in self.choices} + + if ctx is not None and ctx.token_normalize_func is not None: + normed_value = ctx.token_normalize_func(value) + normed_choices = { + ctx.token_normalize_func(normed_choice): original + for normed_choice, original in normed_choices.items() + } + + if not self.case_sensitive: + normed_value = normed_value.casefold() + normed_choices = { + normed_choice.casefold(): original + for normed_choice, original in normed_choices.items() + } + + if normed_value in normed_choices: + return normed_choices[normed_value] + + choices_str = ", ".join(map(repr, self.choices)) + self.fail( + ngettext( + "{value!r} is not {choice}.", + "{value!r} is not one of {choices}.", + len(self.choices), + ).format(value=value, choice=choices_str, choices=choices_str), + param, + ctx, + ) + + def __repr__(self) -> str: + return f"Choice({list(self.choices)})" + + def shell_complete( + self, ctx: "Context", param: "Parameter", incomplete: str + ) -> t.List["CompletionItem"]: + """Complete choices that start with the incomplete value. + + :param ctx: Invocation context for this command. + :param param: The parameter that is requesting completion. + :param incomplete: Value being completed. May be empty. + + .. versionadded:: 8.0 + """ + from click.shell_completion import CompletionItem + + str_choices = map(str, self.choices) + + if self.case_sensitive: + matched = (c for c in str_choices if c.startswith(incomplete)) + else: + incomplete = incomplete.lower() + matched = (c for c in str_choices if c.lower().startswith(incomplete)) + + return [CompletionItem(c) for c in matched] + + +class DateTime(ParamType): + """The DateTime type converts date strings into `datetime` objects. + + The format strings which are checked are configurable, but default to some + common (non-timezone aware) ISO 8601 formats. + + When specifying *DateTime* formats, you should only pass a list or a tuple. + Other iterables, like generators, may lead to surprising results. + + The format strings are processed using ``datetime.strptime``, and this + consequently defines the format strings which are allowed. + + Parsing is tried using each format, in order, and the first format which + parses successfully is used. + + :param formats: A list or tuple of date format strings, in the order in + which they should be tried. Defaults to + ``'%Y-%m-%d'``, ``'%Y-%m-%dT%H:%M:%S'``, + ``'%Y-%m-%d %H:%M:%S'``. + """ + + name = "datetime" + + def __init__(self, formats: t.Optional[t.Sequence[str]] = None): + self.formats: t.Sequence[str] = formats or [ + "%Y-%m-%d", + "%Y-%m-%dT%H:%M:%S", + "%Y-%m-%d %H:%M:%S", + ] + + def to_info_dict(self) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict() + info_dict["formats"] = self.formats + return info_dict + + def get_metavar(self, param: "Parameter") -> str: + return f"[{'|'.join(self.formats)}]" + + def _try_to_convert_date(self, value: t.Any, format: str) -> t.Optional[datetime]: + try: + return datetime.strptime(value, format) + except ValueError: + return None + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + if isinstance(value, datetime): + return value + + for format in self.formats: + converted = self._try_to_convert_date(value, format) + + if converted is not None: + return converted + + formats_str = ", ".join(map(repr, self.formats)) + self.fail( + ngettext( + "{value!r} does not match the format {format}.", + "{value!r} does not match the formats {formats}.", + len(self.formats), + ).format(value=value, format=formats_str, formats=formats_str), + param, + ctx, + ) + + def __repr__(self) -> str: + return "DateTime" + + +class _NumberParamTypeBase(ParamType): + _number_class: t.ClassVar[t.Type[t.Any]] + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + try: + return self._number_class(value) + except ValueError: + self.fail( + _("{value!r} is not a valid {number_type}.").format( + value=value, number_type=self.name + ), + param, + ctx, + ) + + +class _NumberRangeBase(_NumberParamTypeBase): + def __init__( + self, + min: t.Optional[float] = None, + max: t.Optional[float] = None, + min_open: bool = False, + max_open: bool = False, + clamp: bool = False, + ) -> None: + self.min = min + self.max = max + self.min_open = min_open + self.max_open = max_open + self.clamp = clamp + + def to_info_dict(self) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict() + info_dict.update( + min=self.min, + max=self.max, + min_open=self.min_open, + max_open=self.max_open, + clamp=self.clamp, + ) + return info_dict + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + import operator + + rv = super().convert(value, param, ctx) + lt_min: bool = self.min is not None and ( + operator.le if self.min_open else operator.lt + )(rv, self.min) + gt_max: bool = self.max is not None and ( + operator.ge if self.max_open else operator.gt + )(rv, self.max) + + if self.clamp: + if lt_min: + return self._clamp(self.min, 1, self.min_open) # type: ignore + + if gt_max: + return self._clamp(self.max, -1, self.max_open) # type: ignore + + if lt_min or gt_max: + self.fail( + _("{value} is not in the range {range}.").format( + value=rv, range=self._describe_range() + ), + param, + ctx, + ) + + return rv + + def _clamp(self, bound: float, dir: "te.Literal[1, -1]", open: bool) -> float: + """Find the valid value to clamp to bound in the given + direction. + + :param bound: The boundary value. + :param dir: 1 or -1 indicating the direction to move. + :param open: If true, the range does not include the bound. + """ + raise NotImplementedError + + def _describe_range(self) -> str: + """Describe the range for use in help text.""" + if self.min is None: + op = "<" if self.max_open else "<=" + return f"x{op}{self.max}" + + if self.max is None: + op = ">" if self.min_open else ">=" + return f"x{op}{self.min}" + + lop = "<" if self.min_open else "<=" + rop = "<" if self.max_open else "<=" + return f"{self.min}{lop}x{rop}{self.max}" + + def __repr__(self) -> str: + clamp = " clamped" if self.clamp else "" + return f"<{type(self).__name__} {self._describe_range()}{clamp}>" + + +class IntParamType(_NumberParamTypeBase): + name = "integer" + _number_class = int + + def __repr__(self) -> str: + return "INT" + + +class IntRange(_NumberRangeBase, IntParamType): + """Restrict an :data:`click.INT` value to a range of accepted + values. See :ref:`ranges`. + + If ``min`` or ``max`` are not passed, any value is accepted in that + direction. If ``min_open`` or ``max_open`` are enabled, the + corresponding boundary is not included in the range. + + If ``clamp`` is enabled, a value outside the range is clamped to the + boundary instead of failing. + + .. versionchanged:: 8.0 + Added the ``min_open`` and ``max_open`` parameters. + """ + + name = "integer range" + + def _clamp( # type: ignore + self, bound: int, dir: "te.Literal[1, -1]", open: bool + ) -> int: + if not open: + return bound + + return bound + dir + + +class FloatParamType(_NumberParamTypeBase): + name = "float" + _number_class = float + + def __repr__(self) -> str: + return "FLOAT" + + +class FloatRange(_NumberRangeBase, FloatParamType): + """Restrict a :data:`click.FLOAT` value to a range of accepted + values. See :ref:`ranges`. + + If ``min`` or ``max`` are not passed, any value is accepted in that + direction. If ``min_open`` or ``max_open`` are enabled, the + corresponding boundary is not included in the range. + + If ``clamp`` is enabled, a value outside the range is clamped to the + boundary instead of failing. This is not supported if either + boundary is marked ``open``. + + .. versionchanged:: 8.0 + Added the ``min_open`` and ``max_open`` parameters. + """ + + name = "float range" + + def __init__( + self, + min: t.Optional[float] = None, + max: t.Optional[float] = None, + min_open: bool = False, + max_open: bool = False, + clamp: bool = False, + ) -> None: + super().__init__( + min=min, max=max, min_open=min_open, max_open=max_open, clamp=clamp + ) + + if (min_open or max_open) and clamp: + raise TypeError("Clamping is not supported for open bounds.") + + def _clamp(self, bound: float, dir: "te.Literal[1, -1]", open: bool) -> float: + if not open: + return bound + + # Could use Python 3.9's math.nextafter here, but clamping an + # open float range doesn't seem to be particularly useful. It's + # left up to the user to write a callback to do it if needed. + raise RuntimeError("Clamping is not supported for open bounds.") + + +class BoolParamType(ParamType): + name = "boolean" + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + if value in {False, True}: + return bool(value) + + norm = value.strip().lower() + + if norm in {"1", "true", "t", "yes", "y", "on"}: + return True + + if norm in {"0", "false", "f", "no", "n", "off"}: + return False + + self.fail( + _("{value!r} is not a valid boolean.").format(value=value), param, ctx + ) + + def __repr__(self) -> str: + return "BOOL" + + +class UUIDParameterType(ParamType): + name = "uuid" + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + import uuid + + if isinstance(value, uuid.UUID): + return value + + value = value.strip() + + try: + return uuid.UUID(value) + except ValueError: + self.fail( + _("{value!r} is not a valid UUID.").format(value=value), param, ctx + ) + + def __repr__(self) -> str: + return "UUID" + + +class File(ParamType): + """Declares a parameter to be a file for reading or writing. The file + is automatically closed once the context tears down (after the command + finished working). + + Files can be opened for reading or writing. The special value ``-`` + indicates stdin or stdout depending on the mode. + + By default, the file is opened for reading text data, but it can also be + opened in binary mode or for writing. The encoding parameter can be used + to force a specific encoding. + + The `lazy` flag controls if the file should be opened immediately or upon + first IO. The default is to be non-lazy for standard input and output + streams as well as files opened for reading, `lazy` otherwise. When opening a + file lazily for reading, it is still opened temporarily for validation, but + will not be held open until first IO. lazy is mainly useful when opening + for writing to avoid creating the file until it is needed. + + Files can also be opened atomically in which case all writes go into a + separate file in the same folder and upon completion the file will + be moved over to the original location. This is useful if a file + regularly read by other users is modified. + + See :ref:`file-args` for more information. + + .. versionchanged:: 2.0 + Added the ``atomic`` parameter. + """ + + name = "filename" + envvar_list_splitter: t.ClassVar[str] = os.path.pathsep + + def __init__( + self, + mode: str = "r", + encoding: t.Optional[str] = None, + errors: t.Optional[str] = "strict", + lazy: t.Optional[bool] = None, + atomic: bool = False, + ) -> None: + self.mode = mode + self.encoding = encoding + self.errors = errors + self.lazy = lazy + self.atomic = atomic + + def to_info_dict(self) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict() + info_dict.update(mode=self.mode, encoding=self.encoding) + return info_dict + + def resolve_lazy_flag(self, value: "t.Union[str, os.PathLike[str]]") -> bool: + if self.lazy is not None: + return self.lazy + if os.fspath(value) == "-": + return False + elif "w" in self.mode: + return True + return False + + def convert( + self, + value: t.Union[str, "os.PathLike[str]", t.IO[t.Any]], + param: t.Optional["Parameter"], + ctx: t.Optional["Context"], + ) -> t.IO[t.Any]: + if _is_file_like(value): + return value + + value = t.cast("t.Union[str, os.PathLike[str]]", value) + + try: + lazy = self.resolve_lazy_flag(value) + + if lazy: + lf = LazyFile( + value, self.mode, self.encoding, self.errors, atomic=self.atomic + ) + + if ctx is not None: + ctx.call_on_close(lf.close_intelligently) + + return t.cast(t.IO[t.Any], lf) + + f, should_close = open_stream( + value, self.mode, self.encoding, self.errors, atomic=self.atomic + ) + + # If a context is provided, we automatically close the file + # at the end of the context execution (or flush out). If a + # context does not exist, it's the caller's responsibility to + # properly close the file. This for instance happens when the + # type is used with prompts. + if ctx is not None: + if should_close: + ctx.call_on_close(safecall(f.close)) + else: + ctx.call_on_close(safecall(f.flush)) + + return f + except OSError as e: + self.fail(f"'{format_filename(value)}': {e.strerror}", param, ctx) + + def shell_complete( + self, ctx: "Context", param: "Parameter", incomplete: str + ) -> t.List["CompletionItem"]: + """Return a special completion marker that tells the completion + system to use the shell to provide file path completions. + + :param ctx: Invocation context for this command. + :param param: The parameter that is requesting completion. + :param incomplete: Value being completed. May be empty. + + .. versionadded:: 8.0 + """ + from click.shell_completion import CompletionItem + + return [CompletionItem(incomplete, type="file")] + + +def _is_file_like(value: t.Any) -> "te.TypeGuard[t.IO[t.Any]]": + return hasattr(value, "read") or hasattr(value, "write") + + +class Path(ParamType): + """The ``Path`` type is similar to the :class:`File` type, but + returns the filename instead of an open file. Various checks can be + enabled to validate the type of file and permissions. + + :param exists: The file or directory needs to exist for the value to + be valid. If this is not set to ``True``, and the file does not + exist, then all further checks are silently skipped. + :param file_okay: Allow a file as a value. + :param dir_okay: Allow a directory as a value. + :param readable: if true, a readable check is performed. + :param writable: if true, a writable check is performed. + :param executable: if true, an executable check is performed. + :param resolve_path: Make the value absolute and resolve any + symlinks. A ``~`` is not expanded, as this is supposed to be + done by the shell only. + :param allow_dash: Allow a single dash as a value, which indicates + a standard stream (but does not open it). Use + :func:`~click.open_file` to handle opening this value. + :param path_type: Convert the incoming path value to this type. If + ``None``, keep Python's default, which is ``str``. Useful to + convert to :class:`pathlib.Path`. + + .. versionchanged:: 8.1 + Added the ``executable`` parameter. + + .. versionchanged:: 8.0 + Allow passing ``path_type=pathlib.Path``. + + .. versionchanged:: 6.0 + Added the ``allow_dash`` parameter. + """ + + envvar_list_splitter: t.ClassVar[str] = os.path.pathsep + + def __init__( + self, + exists: bool = False, + file_okay: bool = True, + dir_okay: bool = True, + writable: bool = False, + readable: bool = True, + resolve_path: bool = False, + allow_dash: bool = False, + path_type: t.Optional[t.Type[t.Any]] = None, + executable: bool = False, + ): + self.exists = exists + self.file_okay = file_okay + self.dir_okay = dir_okay + self.readable = readable + self.writable = writable + self.executable = executable + self.resolve_path = resolve_path + self.allow_dash = allow_dash + self.type = path_type + + if self.file_okay and not self.dir_okay: + self.name: str = _("file") + elif self.dir_okay and not self.file_okay: + self.name = _("directory") + else: + self.name = _("path") + + def to_info_dict(self) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict() + info_dict.update( + exists=self.exists, + file_okay=self.file_okay, + dir_okay=self.dir_okay, + writable=self.writable, + readable=self.readable, + allow_dash=self.allow_dash, + ) + return info_dict + + def coerce_path_result( + self, value: "t.Union[str, os.PathLike[str]]" + ) -> "t.Union[str, bytes, os.PathLike[str]]": + if self.type is not None and not isinstance(value, self.type): + if self.type is str: + return os.fsdecode(value) + elif self.type is bytes: + return os.fsencode(value) + else: + return t.cast("os.PathLike[str]", self.type(value)) + + return value + + def convert( + self, + value: "t.Union[str, os.PathLike[str]]", + param: t.Optional["Parameter"], + ctx: t.Optional["Context"], + ) -> "t.Union[str, bytes, os.PathLike[str]]": + rv = value + + is_dash = self.file_okay and self.allow_dash and rv in (b"-", "-") + + if not is_dash: + if self.resolve_path: + # os.path.realpath doesn't resolve symlinks on Windows + # until Python 3.8. Use pathlib for now. + import pathlib + + rv = os.fsdecode(pathlib.Path(rv).resolve()) + + try: + st = os.stat(rv) + except OSError: + if not self.exists: + return self.coerce_path_result(rv) + self.fail( + _("{name} {filename!r} does not exist.").format( + name=self.name.title(), filename=format_filename(value) + ), + param, + ctx, + ) + + if not self.file_okay and stat.S_ISREG(st.st_mode): + self.fail( + _("{name} {filename!r} is a file.").format( + name=self.name.title(), filename=format_filename(value) + ), + param, + ctx, + ) + if not self.dir_okay and stat.S_ISDIR(st.st_mode): + self.fail( + _("{name} {filename!r} is a directory.").format( + name=self.name.title(), filename=format_filename(value) + ), + param, + ctx, + ) + + if self.readable and not os.access(rv, os.R_OK): + self.fail( + _("{name} {filename!r} is not readable.").format( + name=self.name.title(), filename=format_filename(value) + ), + param, + ctx, + ) + + if self.writable and not os.access(rv, os.W_OK): + self.fail( + _("{name} {filename!r} is not writable.").format( + name=self.name.title(), filename=format_filename(value) + ), + param, + ctx, + ) + + if self.executable and not os.access(value, os.X_OK): + self.fail( + _("{name} {filename!r} is not executable.").format( + name=self.name.title(), filename=format_filename(value) + ), + param, + ctx, + ) + + return self.coerce_path_result(rv) + + def shell_complete( + self, ctx: "Context", param: "Parameter", incomplete: str + ) -> t.List["CompletionItem"]: + """Return a special completion marker that tells the completion + system to use the shell to provide path completions for only + directories or any paths. + + :param ctx: Invocation context for this command. + :param param: The parameter that is requesting completion. + :param incomplete: Value being completed. May be empty. + + .. versionadded:: 8.0 + """ + from click.shell_completion import CompletionItem + + type = "dir" if self.dir_okay and not self.file_okay else "file" + return [CompletionItem(incomplete, type=type)] + + +class Tuple(CompositeParamType): + """The default behavior of Click is to apply a type on a value directly. + This works well in most cases, except for when `nargs` is set to a fixed + count and different types should be used for different items. In this + case the :class:`Tuple` type can be used. This type can only be used + if `nargs` is set to a fixed number. + + For more information see :ref:`tuple-type`. + + This can be selected by using a Python tuple literal as a type. + + :param types: a list of types that should be used for the tuple items. + """ + + def __init__(self, types: t.Sequence[t.Union[t.Type[t.Any], ParamType]]) -> None: + self.types: t.Sequence[ParamType] = [convert_type(ty) for ty in types] + + def to_info_dict(self) -> t.Dict[str, t.Any]: + info_dict = super().to_info_dict() + info_dict["types"] = [t.to_info_dict() for t in self.types] + return info_dict + + @property + def name(self) -> str: # type: ignore + return f"<{' '.join(ty.name for ty in self.types)}>" + + @property + def arity(self) -> int: # type: ignore + return len(self.types) + + def convert( + self, value: t.Any, param: t.Optional["Parameter"], ctx: t.Optional["Context"] + ) -> t.Any: + len_type = len(self.types) + len_value = len(value) + + if len_value != len_type: + self.fail( + ngettext( + "{len_type} values are required, but {len_value} was given.", + "{len_type} values are required, but {len_value} were given.", + len_value, + ).format(len_type=len_type, len_value=len_value), + param=param, + ctx=ctx, + ) + + return tuple(ty(x, param, ctx) for ty, x in zip(self.types, value)) + + +def convert_type(ty: t.Optional[t.Any], default: t.Optional[t.Any] = None) -> ParamType: + """Find the most appropriate :class:`ParamType` for the given Python + type. If the type isn't provided, it can be inferred from a default + value. + """ + guessed_type = False + + if ty is None and default is not None: + if isinstance(default, (tuple, list)): + # If the default is empty, ty will remain None and will + # return STRING. + if default: + item = default[0] + + # A tuple of tuples needs to detect the inner types. + # Can't call convert recursively because that would + # incorrectly unwind the tuple to a single type. + if isinstance(item, (tuple, list)): + ty = tuple(map(type, item)) + else: + ty = type(item) + else: + ty = type(default) + + guessed_type = True + + if isinstance(ty, tuple): + return Tuple(ty) + + if isinstance(ty, ParamType): + return ty + + if ty is str or ty is None: + return STRING + + if ty is int: + return INT + + if ty is float: + return FLOAT + + if ty is bool: + return BOOL + + if guessed_type: + return STRING + + if __debug__: + try: + if issubclass(ty, ParamType): + raise AssertionError( + f"Attempted to use an uninstantiated parameter type ({ty})." + ) + except TypeError: + # ty is an instance (correct), so issubclass fails. + pass + + return FuncParamType(ty) + + +#: A dummy parameter type that just does nothing. From a user's +#: perspective this appears to just be the same as `STRING` but +#: internally no string conversion takes place if the input was bytes. +#: This is usually useful when working with file paths as they can +#: appear in bytes and unicode. +#: +#: For path related uses the :class:`Path` type is a better choice but +#: there are situations where an unprocessed type is useful which is why +#: it is is provided. +#: +#: .. versionadded:: 4.0 +UNPROCESSED = UnprocessedParamType() + +#: A unicode string parameter type which is the implicit default. This +#: can also be selected by using ``str`` as type. +STRING = StringParamType() + +#: An integer parameter. This can also be selected by using ``int`` as +#: type. +INT = IntParamType() + +#: A floating point value parameter. This can also be selected by using +#: ``float`` as type. +FLOAT = FloatParamType() + +#: A boolean parameter. This is the default for boolean flags. This can +#: also be selected by using ``bool`` as a type. +BOOL = BoolParamType() + +#: A UUID parameter. +UUID = UUIDParameterType() diff --git a/venv/lib/python3.9/site-packages/click/utils.py b/venv/lib/python3.9/site-packages/click/utils.py new file mode 100644 index 0000000..836c6f2 --- /dev/null +++ b/venv/lib/python3.9/site-packages/click/utils.py @@ -0,0 +1,624 @@ +import os +import re +import sys +import typing as t +from functools import update_wrapper +from types import ModuleType +from types import TracebackType + +from ._compat import _default_text_stderr +from ._compat import _default_text_stdout +from ._compat import _find_binary_writer +from ._compat import auto_wrap_for_ansi +from ._compat import binary_streams +from ._compat import open_stream +from ._compat import should_strip_ansi +from ._compat import strip_ansi +from ._compat import text_streams +from ._compat import WIN +from .globals import resolve_color_default + +if t.TYPE_CHECKING: + import typing_extensions as te + + P = te.ParamSpec("P") + +R = t.TypeVar("R") + + +def _posixify(name: str) -> str: + return "-".join(name.split()).lower() + + +def safecall(func: "t.Callable[P, R]") -> "t.Callable[P, t.Optional[R]]": + """Wraps a function so that it swallows exceptions.""" + + def wrapper(*args: "P.args", **kwargs: "P.kwargs") -> t.Optional[R]: + try: + return func(*args, **kwargs) + except Exception: + pass + return None + + return update_wrapper(wrapper, func) + + +def make_str(value: t.Any) -> str: + """Converts a value into a valid string.""" + if isinstance(value, bytes): + try: + return value.decode(sys.getfilesystemencoding()) + except UnicodeError: + return value.decode("utf-8", "replace") + return str(value) + + +def make_default_short_help(help: str, max_length: int = 45) -> str: + """Returns a condensed version of help string.""" + # Consider only the first paragraph. + paragraph_end = help.find("\n\n") + + if paragraph_end != -1: + help = help[:paragraph_end] + + # Collapse newlines, tabs, and spaces. + words = help.split() + + if not words: + return "" + + # The first paragraph started with a "no rewrap" marker, ignore it. + if words[0] == "\b": + words = words[1:] + + total_length = 0 + last_index = len(words) - 1 + + for i, word in enumerate(words): + total_length += len(word) + (i > 0) + + if total_length > max_length: # too long, truncate + break + + if word[-1] == ".": # sentence end, truncate without "..." + return " ".join(words[: i + 1]) + + if total_length == max_length and i != last_index: + break # not at sentence end, truncate with "..." + else: + return " ".join(words) # no truncation needed + + # Account for the length of the suffix. + total_length += len("...") + + # remove words until the length is short enough + while i > 0: + total_length -= len(words[i]) + (i > 0) + + if total_length <= max_length: + break + + i -= 1 + + return " ".join(words[:i]) + "..." + + +class LazyFile: + """A lazy file works like a regular file but it does not fully open + the file but it does perform some basic checks early to see if the + filename parameter does make sense. This is useful for safely opening + files for writing. + """ + + def __init__( + self, + filename: t.Union[str, "os.PathLike[str]"], + mode: str = "r", + encoding: t.Optional[str] = None, + errors: t.Optional[str] = "strict", + atomic: bool = False, + ): + self.name: str = os.fspath(filename) + self.mode = mode + self.encoding = encoding + self.errors = errors + self.atomic = atomic + self._f: t.Optional[t.IO[t.Any]] + self.should_close: bool + + if self.name == "-": + self._f, self.should_close = open_stream(filename, mode, encoding, errors) + else: + if "r" in mode: + # Open and close the file in case we're opening it for + # reading so that we can catch at least some errors in + # some cases early. + open(filename, mode).close() + self._f = None + self.should_close = True + + def __getattr__(self, name: str) -> t.Any: + return getattr(self.open(), name) + + def __repr__(self) -> str: + if self._f is not None: + return repr(self._f) + return f"" + + def open(self) -> t.IO[t.Any]: + """Opens the file if it's not yet open. This call might fail with + a :exc:`FileError`. Not handling this error will produce an error + that Click shows. + """ + if self._f is not None: + return self._f + try: + rv, self.should_close = open_stream( + self.name, self.mode, self.encoding, self.errors, atomic=self.atomic + ) + except OSError as e: + from .exceptions import FileError + + raise FileError(self.name, hint=e.strerror) from e + self._f = rv + return rv + + def close(self) -> None: + """Closes the underlying file, no matter what.""" + if self._f is not None: + self._f.close() + + def close_intelligently(self) -> None: + """This function only closes the file if it was opened by the lazy + file wrapper. For instance this will never close stdin. + """ + if self.should_close: + self.close() + + def __enter__(self) -> "LazyFile": + return self + + def __exit__( + self, + exc_type: t.Optional[t.Type[BaseException]], + exc_value: t.Optional[BaseException], + tb: t.Optional[TracebackType], + ) -> None: + self.close_intelligently() + + def __iter__(self) -> t.Iterator[t.AnyStr]: + self.open() + return iter(self._f) # type: ignore + + +class KeepOpenFile: + def __init__(self, file: t.IO[t.Any]) -> None: + self._file: t.IO[t.Any] = file + + def __getattr__(self, name: str) -> t.Any: + return getattr(self._file, name) + + def __enter__(self) -> "KeepOpenFile": + return self + + def __exit__( + self, + exc_type: t.Optional[t.Type[BaseException]], + exc_value: t.Optional[BaseException], + tb: t.Optional[TracebackType], + ) -> None: + pass + + def __repr__(self) -> str: + return repr(self._file) + + def __iter__(self) -> t.Iterator[t.AnyStr]: + return iter(self._file) + + +def echo( + message: t.Optional[t.Any] = None, + file: t.Optional[t.IO[t.Any]] = None, + nl: bool = True, + err: bool = False, + color: t.Optional[bool] = None, +) -> None: + """Print a message and newline to stdout or a file. This should be + used instead of :func:`print` because it provides better support + for different data, files, and environments. + + Compared to :func:`print`, this does the following: + + - Ensures that the output encoding is not misconfigured on Linux. + - Supports Unicode in the Windows console. + - Supports writing to binary outputs, and supports writing bytes + to text outputs. + - Supports colors and styles on Windows. + - Removes ANSI color and style codes if the output does not look + like an interactive terminal. + - Always flushes the output. + + :param message: The string or bytes to output. Other objects are + converted to strings. + :param file: The file to write to. Defaults to ``stdout``. + :param err: Write to ``stderr`` instead of ``stdout``. + :param nl: Print a newline after the message. Enabled by default. + :param color: Force showing or hiding colors and other styles. By + default Click will remove color if the output does not look like + an interactive terminal. + + .. versionchanged:: 6.0 + Support Unicode output on the Windows console. Click does not + modify ``sys.stdout``, so ``sys.stdout.write()`` and ``print()`` + will still not support Unicode. + + .. versionchanged:: 4.0 + Added the ``color`` parameter. + + .. versionadded:: 3.0 + Added the ``err`` parameter. + + .. versionchanged:: 2.0 + Support colors on Windows if colorama is installed. + """ + if file is None: + if err: + file = _default_text_stderr() + else: + file = _default_text_stdout() + + # There are no standard streams attached to write to. For example, + # pythonw on Windows. + if file is None: + return + + # Convert non bytes/text into the native string type. + if message is not None and not isinstance(message, (str, bytes, bytearray)): + out: t.Optional[t.Union[str, bytes]] = str(message) + else: + out = message + + if nl: + out = out or "" + if isinstance(out, str): + out += "\n" + else: + out += b"\n" + + if not out: + file.flush() + return + + # If there is a message and the value looks like bytes, we manually + # need to find the binary stream and write the message in there. + # This is done separately so that most stream types will work as you + # would expect. Eg: you can write to StringIO for other cases. + if isinstance(out, (bytes, bytearray)): + binary_file = _find_binary_writer(file) + + if binary_file is not None: + file.flush() + binary_file.write(out) + binary_file.flush() + return + + # ANSI style code support. For no message or bytes, nothing happens. + # When outputting to a file instead of a terminal, strip codes. + else: + color = resolve_color_default(color) + + if should_strip_ansi(file, color): + out = strip_ansi(out) + elif WIN: + if auto_wrap_for_ansi is not None: + file = auto_wrap_for_ansi(file, color) # type: ignore + elif not color: + out = strip_ansi(out) + + file.write(out) # type: ignore + file.flush() + + +def get_binary_stream(name: "te.Literal['stdin', 'stdout', 'stderr']") -> t.BinaryIO: + """Returns a system stream for byte processing. + + :param name: the name of the stream to open. Valid names are ``'stdin'``, + ``'stdout'`` and ``'stderr'`` + """ + opener = binary_streams.get(name) + if opener is None: + raise TypeError(f"Unknown standard stream '{name}'") + return opener() + + +def get_text_stream( + name: "te.Literal['stdin', 'stdout', 'stderr']", + encoding: t.Optional[str] = None, + errors: t.Optional[str] = "strict", +) -> t.TextIO: + """Returns a system stream for text processing. This usually returns + a wrapped stream around a binary stream returned from + :func:`get_binary_stream` but it also can take shortcuts for already + correctly configured streams. + + :param name: the name of the stream to open. Valid names are ``'stdin'``, + ``'stdout'`` and ``'stderr'`` + :param encoding: overrides the detected default encoding. + :param errors: overrides the default error mode. + """ + opener = text_streams.get(name) + if opener is None: + raise TypeError(f"Unknown standard stream '{name}'") + return opener(encoding, errors) + + +def open_file( + filename: t.Union[str, "os.PathLike[str]"], + mode: str = "r", + encoding: t.Optional[str] = None, + errors: t.Optional[str] = "strict", + lazy: bool = False, + atomic: bool = False, +) -> t.IO[t.Any]: + """Open a file, with extra behavior to handle ``'-'`` to indicate + a standard stream, lazy open on write, and atomic write. Similar to + the behavior of the :class:`~click.File` param type. + + If ``'-'`` is given to open ``stdout`` or ``stdin``, the stream is + wrapped so that using it in a context manager will not close it. + This makes it possible to use the function without accidentally + closing a standard stream: + + .. code-block:: python + + with open_file(filename) as f: + ... + + :param filename: The name or Path of the file to open, or ``'-'`` for + ``stdin``/``stdout``. + :param mode: The mode in which to open the file. + :param encoding: The encoding to decode or encode a file opened in + text mode. + :param errors: The error handling mode. + :param lazy: Wait to open the file until it is accessed. For read + mode, the file is temporarily opened to raise access errors + early, then closed until it is read again. + :param atomic: Write to a temporary file and replace the given file + on close. + + .. versionadded:: 3.0 + """ + if lazy: + return t.cast( + t.IO[t.Any], LazyFile(filename, mode, encoding, errors, atomic=atomic) + ) + + f, should_close = open_stream(filename, mode, encoding, errors, atomic=atomic) + + if not should_close: + f = t.cast(t.IO[t.Any], KeepOpenFile(f)) + + return f + + +def format_filename( + filename: "t.Union[str, bytes, os.PathLike[str], os.PathLike[bytes]]", + shorten: bool = False, +) -> str: + """Format a filename as a string for display. Ensures the filename can be + displayed by replacing any invalid bytes or surrogate escapes in the name + with the replacement character ``�``. + + Invalid bytes or surrogate escapes will raise an error when written to a + stream with ``errors="strict"``. This will typically happen with ``stdout`` + when the locale is something like ``en_GB.UTF-8``. + + Many scenarios *are* safe to write surrogates though, due to PEP 538 and + PEP 540, including: + + - Writing to ``stderr``, which uses ``errors="backslashreplace"``. + - The system has ``LANG=C.UTF-8``, ``C``, or ``POSIX``. Python opens + stdout and stderr with ``errors="surrogateescape"``. + - None of ``LANG/LC_*`` are set. Python assumes ``LANG=C.UTF-8``. + - Python is started in UTF-8 mode with ``PYTHONUTF8=1`` or ``-X utf8``. + Python opens stdout and stderr with ``errors="surrogateescape"``. + + :param filename: formats a filename for UI display. This will also convert + the filename into unicode without failing. + :param shorten: this optionally shortens the filename to strip of the + path that leads up to it. + """ + if shorten: + filename = os.path.basename(filename) + else: + filename = os.fspath(filename) + + if isinstance(filename, bytes): + filename = filename.decode(sys.getfilesystemencoding(), "replace") + else: + filename = filename.encode("utf-8", "surrogateescape").decode( + "utf-8", "replace" + ) + + return filename + + +def get_app_dir(app_name: str, roaming: bool = True, force_posix: bool = False) -> str: + r"""Returns the config folder for the application. The default behavior + is to return whatever is most appropriate for the operating system. + + To give you an idea, for an app called ``"Foo Bar"``, something like + the following folders could be returned: + + Mac OS X: + ``~/Library/Application Support/Foo Bar`` + Mac OS X (POSIX): + ``~/.foo-bar`` + Unix: + ``~/.config/foo-bar`` + Unix (POSIX): + ``~/.foo-bar`` + Windows (roaming): + ``C:\Users\\AppData\Roaming\Foo Bar`` + Windows (not roaming): + ``C:\Users\\AppData\Local\Foo Bar`` + + .. versionadded:: 2.0 + + :param app_name: the application name. This should be properly capitalized + and can contain whitespace. + :param roaming: controls if the folder should be roaming or not on Windows. + Has no effect otherwise. + :param force_posix: if this is set to `True` then on any POSIX system the + folder will be stored in the home folder with a leading + dot instead of the XDG config home or darwin's + application support folder. + """ + if WIN: + key = "APPDATA" if roaming else "LOCALAPPDATA" + folder = os.environ.get(key) + if folder is None: + folder = os.path.expanduser("~") + return os.path.join(folder, app_name) + if force_posix: + return os.path.join(os.path.expanduser(f"~/.{_posixify(app_name)}")) + if sys.platform == "darwin": + return os.path.join( + os.path.expanduser("~/Library/Application Support"), app_name + ) + return os.path.join( + os.environ.get("XDG_CONFIG_HOME", os.path.expanduser("~/.config")), + _posixify(app_name), + ) + + +class PacifyFlushWrapper: + """This wrapper is used to catch and suppress BrokenPipeErrors resulting + from ``.flush()`` being called on broken pipe during the shutdown/final-GC + of the Python interpreter. Notably ``.flush()`` is always called on + ``sys.stdout`` and ``sys.stderr``. So as to have minimal impact on any + other cleanup code, and the case where the underlying file is not a broken + pipe, all calls and attributes are proxied. + """ + + def __init__(self, wrapped: t.IO[t.Any]) -> None: + self.wrapped = wrapped + + def flush(self) -> None: + try: + self.wrapped.flush() + except OSError as e: + import errno + + if e.errno != errno.EPIPE: + raise + + def __getattr__(self, attr: str) -> t.Any: + return getattr(self.wrapped, attr) + + +def _detect_program_name( + path: t.Optional[str] = None, _main: t.Optional[ModuleType] = None +) -> str: + """Determine the command used to run the program, for use in help + text. If a file or entry point was executed, the file name is + returned. If ``python -m`` was used to execute a module or package, + ``python -m name`` is returned. + + This doesn't try to be too precise, the goal is to give a concise + name for help text. Files are only shown as their name without the + path. ``python`` is only shown for modules, and the full path to + ``sys.executable`` is not shown. + + :param path: The Python file being executed. Python puts this in + ``sys.argv[0]``, which is used by default. + :param _main: The ``__main__`` module. This should only be passed + during internal testing. + + .. versionadded:: 8.0 + Based on command args detection in the Werkzeug reloader. + + :meta private: + """ + if _main is None: + _main = sys.modules["__main__"] + + if not path: + path = sys.argv[0] + + # The value of __package__ indicates how Python was called. It may + # not exist if a setuptools script is installed as an egg. It may be + # set incorrectly for entry points created with pip on Windows. + # It is set to "" inside a Shiv or PEX zipapp. + if getattr(_main, "__package__", None) in {None, ""} or ( + os.name == "nt" + and _main.__package__ == "" + and not os.path.exists(path) + and os.path.exists(f"{path}.exe") + ): + # Executed a file, like "python app.py". + return os.path.basename(path) + + # Executed a module, like "python -m example". + # Rewritten by Python from "-m script" to "/path/to/script.py". + # Need to look at main module to determine how it was executed. + py_module = t.cast(str, _main.__package__) + name = os.path.splitext(os.path.basename(path))[0] + + # A submodule like "example.cli". + if name != "__main__": + py_module = f"{py_module}.{name}" + + return f"python -m {py_module.lstrip('.')}" + + +def _expand_args( + args: t.Iterable[str], + *, + user: bool = True, + env: bool = True, + glob_recursive: bool = True, +) -> t.List[str]: + """Simulate Unix shell expansion with Python functions. + + See :func:`glob.glob`, :func:`os.path.expanduser`, and + :func:`os.path.expandvars`. + + This is intended for use on Windows, where the shell does not do any + expansion. It may not exactly match what a Unix shell would do. + + :param args: List of command line arguments to expand. + :param user: Expand user home directory. + :param env: Expand environment variables. + :param glob_recursive: ``**`` matches directories recursively. + + .. versionchanged:: 8.1 + Invalid glob patterns are treated as empty expansions rather + than raising an error. + + .. versionadded:: 8.0 + + :meta private: + """ + from glob import glob + + out = [] + + for arg in args: + if user: + arg = os.path.expanduser(arg) + + if env: + arg = os.path.expandvars(arg) + + try: + matches = glob(arg, recursive=glob_recursive) + except re.error: + matches = [] + + if not matches: + out.append(arg) + else: + out.extend(matches) + + return out diff --git a/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/METADATA b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/METADATA new file mode 100644 index 0000000..4c5602f --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/METADATA @@ -0,0 +1,112 @@ +Metadata-Version: 2.4 +Name: cryptography +Version: 47.0.0 +Classifier: Development Status :: 5 - Production/Stable +Classifier: Intended Audience :: Developers +Classifier: Natural Language :: English +Classifier: Operating System :: MacOS :: MacOS X +Classifier: Operating System :: POSIX +Classifier: Operating System :: POSIX :: BSD +Classifier: Operating System :: POSIX :: Linux +Classifier: Operating System :: Microsoft :: Windows +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3 :: Only +Classifier: Programming Language :: Python :: 3.8 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: Programming Language :: Python :: 3.14 +Classifier: Programming Language :: Python :: Implementation :: CPython +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Programming Language :: Python :: Free Threading :: 3 - Stable +Classifier: Topic :: Security :: Cryptography +Requires-Dist: cffi>=1.14 ; python_full_version == '3.8.*' and platform_python_implementation != 'PyPy' +Requires-Dist: cffi>=2.0.0 ; python_full_version >= '3.9' and platform_python_implementation != 'PyPy' +Requires-Dist: typing-extensions>=4.13.2 ; python_full_version < '3.11' +Requires-Dist: bcrypt>=3.1.5 ; extra == 'ssh' +Provides-Extra: ssh +License-File: LICENSE +License-File: LICENSE.APACHE +License-File: LICENSE.BSD +Summary: cryptography is a package which provides cryptographic recipes and primitives to Python developers. +Author-email: The Python Cryptographic Authority and individual contributors +License-Expression: Apache-2.0 OR BSD-3-Clause +Requires-Python: >=3.8, !=3.9.0, !=3.9.1 +Description-Content-Type: text/x-rst; charset=UTF-8 +Project-URL: changelog, https://cryptography.io/en/latest/changelog/ +Project-URL: documentation, https://cryptography.io/ +Project-URL: homepage, https://github.com/pyca/cryptography +Project-URL: issues, https://github.com/pyca/cryptography/issues +Project-URL: source, https://github.com/pyca/cryptography/ + +pyca/cryptography +================= + +.. image:: https://img.shields.io/pypi/v/cryptography.svg + :target: https://pypi.org/project/cryptography/ + :alt: Latest Version + +.. image:: https://readthedocs.org/projects/cryptography/badge/?version=latest + :target: https://cryptography.io + :alt: Latest Docs + +.. image:: https://github.com/pyca/cryptography/actions/workflows/ci.yml/badge.svg + :target: https://github.com/pyca/cryptography/actions/workflows/ci.yml?query=branch%3Amain + +``cryptography`` is a package which provides cryptographic recipes and +primitives to Python developers. Our goal is for it to be your "cryptographic +standard library". It supports Python 3.8+ and PyPy3 7.3.11+. + +``cryptography`` includes both high level recipes and low level interfaces to +common cryptographic algorithms such as symmetric ciphers, message digests, and +key derivation functions. For example, to encrypt something with +``cryptography``'s high level symmetric encryption recipe: + +.. code-block:: pycon + + >>> from cryptography.fernet import Fernet + >>> # Put this somewhere safe! + >>> key = Fernet.generate_key() + >>> f = Fernet(key) + >>> token = f.encrypt(b"A really secret message. Not for prying eyes.") + >>> token + b'...' + >>> f.decrypt(token) + b'A really secret message. Not for prying eyes.' + +You can find more information in the `documentation`_. + +You can install ``cryptography`` with: + +.. code-block:: console + + $ pip install cryptography + +For full details see `the installation documentation`_. + +Discussion +~~~~~~~~~~ + +If you run into bugs, you can file them in our `issue tracker`_. + +We maintain a `cryptography-dev`_ mailing list for development discussion. + +You can also join ``#pyca`` on ``irc.libera.chat`` to ask questions or get +involved. + +Security +~~~~~~~~ + +Need to report a security issue? Please consult our `security reporting`_ +documentation. + + +.. _`documentation`: https://cryptography.io/ +.. _`the installation documentation`: https://cryptography.io/en/latest/installation/ +.. _`issue tracker`: https://github.com/pyca/cryptography/issues +.. _`cryptography-dev`: https://mail.python.org/mailman/listinfo/cryptography-dev +.. _`security reporting`: https://cryptography.io/en/latest/security/ + diff --git a/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/RECORD b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/RECORD new file mode 100644 index 0000000..5cc47da --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/RECORD @@ -0,0 +1,195 @@ +cryptography-47.0.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +cryptography-47.0.0.dist-info/METADATA,sha256=spA0qph4_Uul5FvzBHdM7gCN9zlQ7Ifh-Az_byXIdt0,4530 +cryptography-47.0.0.dist-info/RECORD,, +cryptography-47.0.0.dist-info/WHEEL,sha256=-iKa_lvJNlSbyUjxkTBN8abWl7pGEY8A5QN_6ltdYAo,108 +cryptography-47.0.0.dist-info/licenses/LICENSE,sha256=Pgx8CRqUi4JTO6mP18u0BDLW8amsv4X1ki0vmak65rs,197 +cryptography-47.0.0.dist-info/licenses/LICENSE.APACHE,sha256=qsc7MUj20dcRHbyjIJn2jSbGRMaBOuHk8F9leaomY_4,11360 +cryptography-47.0.0.dist-info/licenses/LICENSE.BSD,sha256=YCxMdILeZHndLpeTzaJ15eY9dz2s0eymiSMqtwCPtPs,1532 +cryptography-47.0.0.dist-info/sboms/cryptography-rust.cyclonedx.json,sha256=P-zdudRpzBj1Ak-ep5-X52pbPOQWOxruSVFSH9iYY3M,45695 +cryptography-47.0.0.dist-info/sboms/sbom.json,sha256=8Y1rx6HzDpNelLFfUd5Z4DYa614U0MQBphDf3RH7E2w,1206 +cryptography/__about__.py,sha256=YLscbQ4_C8LtY_R1ZAKbYckhIxyZ9kOSbGPsThdJwrY,445 +cryptography/__init__.py,sha256=7lfTn2kedUixiEdXgtdkhoMRgqJGBrETA1Rihx87LO0,762 +cryptography/__pycache__/__about__.cpython-39.pyc,, +cryptography/__pycache__/__init__.cpython-39.pyc,, +cryptography/__pycache__/exceptions.cpython-39.pyc,, +cryptography/__pycache__/fernet.cpython-39.pyc,, +cryptography/__pycache__/utils.cpython-39.pyc,, +cryptography/exceptions.py,sha256=835EWILc2fwxw-gyFMriciC2SqhViETB10LBSytnDIc,1087 +cryptography/fernet.py,sha256=3Cvxkh0KJSbX8HbnCHu4wfCW7U0GgfUA3v_qQ8a8iWc,6963 +cryptography/hazmat/__init__.py,sha256=5IwrLWrVp0AjEr_4FdWG_V057NSJGY_W4egNNsuct0g,455 +cryptography/hazmat/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/__pycache__/_oid.cpython-39.pyc,, +cryptography/hazmat/_oid.py,sha256=p8ThjwJB56Ci_rAIrjyJ1f8VjgD6e39es2dh8JIUBOw,17240 +cryptography/hazmat/asn1/__init__.py,sha256=AZVmLA09Q9-bq27G8fYr3dof-iRkh5KSX3zEPmNb-9w,744 +cryptography/hazmat/asn1/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/asn1/__pycache__/asn1.cpython-39.pyc,, +cryptography/hazmat/asn1/asn1.py,sha256=ldCLBAAEvzWNnTGdSFBh1STfIsl33VdArH421FqyI8o,15465 +cryptography/hazmat/backends/__init__.py,sha256=O5jvKFQdZnXhKeqJ-HtulaEL9Ni7mr1mDzZY5kHlYhI,361 +cryptography/hazmat/backends/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/backends/openssl/__init__.py,sha256=p3jmJfnCag9iE5sdMrN6VvVEu55u46xaS_IjoI0SrmA,305 +cryptography/hazmat/backends/openssl/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/backends/openssl/__pycache__/backend.cpython-39.pyc,, +cryptography/hazmat/backends/openssl/backend.py,sha256=MI08Kthlz5uJlf1x045VdNEw1zYdGRONqFqloYAbLQY,10392 +cryptography/hazmat/bindings/__init__.py,sha256=s9oKCQ2ycFdXoERdS1imafueSkBsL9kvbyfghaauZ9Y,180 +cryptography/hazmat/bindings/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/bindings/_rust.abi3.so,sha256=PF3QtAmwvdZ8uXkABobz6uqn5wAFMctet1Dm3lyLDZY,13621264 +cryptography/hazmat/bindings/_rust/__init__.pyi,sha256=uUnnvOq_uameYnBNpmsv3SRAVO0WQGpjI58aR1lL4Kw,2285 +cryptography/hazmat/bindings/_rust/_openssl.pyi,sha256=T_5TpYO8bghIPjAQ3BtAABqw-CcYskHp92wm5PNY6dc,228 +cryptography/hazmat/bindings/_rust/asn1.pyi,sha256=BrGjC8J6nwuS-r3EVcdXJB8ndotfY9mbQYOfpbPG0HA,354 +cryptography/hazmat/bindings/_rust/declarative_asn1.pyi,sha256=iSeRyyd3hN0VIUKg_p424AzQ-b7hW1b_53Yx50yniYY,3661 +cryptography/hazmat/bindings/_rust/exceptions.pyi,sha256=exXr2xw_0pB1kk93cYbM3MohbzoUkjOms1ZMUi0uQZE,640 +cryptography/hazmat/bindings/_rust/ocsp.pyi,sha256=VPVWuKHI9EMs09ZLRYAGvR0Iz0mCMmEzXAkgJHovpoM,4020 +cryptography/hazmat/bindings/_rust/openssl/__init__.pyi,sha256=JDCef29vXnrEMvF13JH9z1-W9ahiTZQAk5xhu_KH6po,1550 +cryptography/hazmat/bindings/_rust/openssl/aead.pyi,sha256=7d--xdc0vuzRe4S2uuQaGm-9GGKv4NcSLQcLyWcaD6s,4582 +cryptography/hazmat/bindings/_rust/openssl/ciphers.pyi,sha256=LhPzHWSXJq4grAJXn6zSvSSdV-aYIIscHDwIPlJGGPs,1315 +cryptography/hazmat/bindings/_rust/openssl/cmac.pyi,sha256=nPH0X57RYpsAkRowVpjQiHE566ThUTx7YXrsadmrmHk,564 +cryptography/hazmat/bindings/_rust/openssl/dh.pyi,sha256=Z3TC-G04-THtSdAOPLM1h2G7ml5bda1ElZUcn5wpuhk,1564 +cryptography/hazmat/bindings/_rust/openssl/dsa.pyi,sha256=qBtkgj2albt2qFcnZ9UDrhzoNhCVO7HTby5VSf1EXMI,1299 +cryptography/hazmat/bindings/_rust/openssl/ec.pyi,sha256=zJy0pRa5n-_p2dm45PxECB_-B6SVZyNKfjxFDpPqT38,1691 +cryptography/hazmat/bindings/_rust/openssl/ed25519.pyi,sha256=VXfXd5G6hUivg399R1DYdmW3eTb0EebzDTqjRC2gaRw,532 +cryptography/hazmat/bindings/_rust/openssl/ed448.pyi,sha256=Yx49lqdnjsD7bxiDV1kcaMrDktug5evi5a6zerMiy2s,514 +cryptography/hazmat/bindings/_rust/openssl/hashes.pyi,sha256=bFe3T13UeyRInUJMD-R5ArGTGLqWDiWo2Lv2KGzUbf4,1076 +cryptography/hazmat/bindings/_rust/openssl/hmac.pyi,sha256=BXZn7NDjL3JAbYW0SQ8pg1iyC5DbQXVhUAiwsi8DFR8,702 +cryptography/hazmat/bindings/_rust/openssl/hpke.pyi,sha256=wrz8c12gBNBAItz9jorr_W4s8rFYDE1Yel1z2I-Wd2s,2877 +cryptography/hazmat/bindings/_rust/openssl/kdf.pyi,sha256=HiiLdEB9nqMsTvMwiFppQpfPz6fHUz9_gpjEB_XAOXA,6619 +cryptography/hazmat/bindings/_rust/openssl/keys.pyi,sha256=teIt8M6ZEMJrn4s3W0UnW0DZ-30Jd68WnSsKKG124l0,912 +cryptography/hazmat/bindings/_rust/openssl/mldsa.pyi,sha256=HChNsjW0C_vO9OVD4FhEZrXO3_FiEq2ZTF59hlfcEdM,1073 +cryptography/hazmat/bindings/_rust/openssl/mlkem.pyi,sha256=byoeus4-lIOlWlEiRQdCc00qCkXpOB5peBY6yo9ik8s,835 +cryptography/hazmat/bindings/_rust/openssl/poly1305.pyi,sha256=_SW9NtQ5FDlAbdclFtWpT4lGmxKIKHpN-4j8J2BzYfQ,585 +cryptography/hazmat/bindings/_rust/openssl/rsa.pyi,sha256=2OQCNSXkxgc-3uw1xiCCloIQTV6p9_kK79Yu0rhZgPc,1364 +cryptography/hazmat/bindings/_rust/openssl/x25519.pyi,sha256=ewn4GpQyb7zPwE-ni7GtyQgMC0A1mLuqYsSyqv6nI_s,523 +cryptography/hazmat/bindings/_rust/openssl/x448.pyi,sha256=juTZTmli8jO_5Vcufg-vHvx_tCyezmSLIh_9PU3TczI,505 +cryptography/hazmat/bindings/_rust/pkcs12.pyi,sha256=vEEd5wDiZvb8ZGFaziLCaWLzAwoG_tvPUxLQw5_uOl8,1605 +cryptography/hazmat/bindings/_rust/pkcs7.pyi,sha256=txGBJijqZshEcqra6byPNbnisIdlxzOSIHP2hl9arPs,1601 +cryptography/hazmat/bindings/_rust/test_support.pyi,sha256=PPhld-WkO743iXFPebeG0LtgK0aTzGdjcIsay1Gm5GE,757 +cryptography/hazmat/bindings/_rust/x509.pyi,sha256=rmt4enscdvDQ7lBEHb2cASwN0d3TP3ymEVZcEJ-Rf3A,10152 +cryptography/hazmat/bindings/openssl/__init__.py,sha256=s9oKCQ2ycFdXoERdS1imafueSkBsL9kvbyfghaauZ9Y,180 +cryptography/hazmat/bindings/openssl/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/bindings/openssl/__pycache__/_conditional.cpython-39.pyc,, +cryptography/hazmat/bindings/openssl/__pycache__/binding.cpython-39.pyc,, +cryptography/hazmat/bindings/openssl/_conditional.py,sha256=vfzi-xHdStAcJQjLqqOlSos94L8D_tqFtBe7Ovw-KtY,5611 +cryptography/hazmat/bindings/openssl/binding.py,sha256=GnoZLYvCzXbKf4KldUXec-oz-hdVSa_sinZnqXgdS2s,4096 +cryptography/hazmat/decrepit/__init__.py,sha256=wHCbWfaefa-fk6THSw9th9fJUsStJo7245wfFBqmduA,216 +cryptography/hazmat/decrepit/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/decrepit/ciphers/__init__.py,sha256=wHCbWfaefa-fk6THSw9th9fJUsStJo7245wfFBqmduA,216 +cryptography/hazmat/decrepit/ciphers/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/decrepit/ciphers/__pycache__/algorithms.cpython-39.pyc,, +cryptography/hazmat/decrepit/ciphers/__pycache__/modes.cpython-39.pyc,, +cryptography/hazmat/decrepit/ciphers/algorithms.py,sha256=yqHt7k5OzF_KuvO8M9vTlNLtG7EotbvShyYKIaUJqhg,3566 +cryptography/hazmat/decrepit/ciphers/modes.py,sha256=Oq_PEwCke5OLczOfr_vzAOJ6wPx-rlsvHAXPBuh5b9o,1649 +cryptography/hazmat/primitives/__init__.py,sha256=s9oKCQ2ycFdXoERdS1imafueSkBsL9kvbyfghaauZ9Y,180 +cryptography/hazmat/primitives/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/_asymmetric.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/_cipheralgorithm.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/_modes.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/_serialization.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/cmac.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/constant_time.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/hashes.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/hmac.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/hpke.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/keywrap.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/padding.cpython-39.pyc,, +cryptography/hazmat/primitives/__pycache__/poly1305.cpython-39.pyc,, +cryptography/hazmat/primitives/_asymmetric.py,sha256=RhgcouUB6HTiFDBrR1LxqkMjpUxIiNvQ1r_zJjRG6qQ,532 +cryptography/hazmat/primitives/_cipheralgorithm.py,sha256=Eh3i7lwedHfi0eLSsH93PZxQKzY9I6lkK67vL4V5tOc,1522 +cryptography/hazmat/primitives/_modes.py,sha256=_EiAOD8Jb6WpFXluwkcUT3ECz_TH8xjGvbQlGkNm59Q,3075 +cryptography/hazmat/primitives/_serialization.py,sha256=hi0xJblBAZ8pmZx2lWa-lruphxvvvG3g9DNK0G8Odfs,4440 +cryptography/hazmat/primitives/asymmetric/__init__.py,sha256=s9oKCQ2ycFdXoERdS1imafueSkBsL9kvbyfghaauZ9Y,180 +cryptography/hazmat/primitives/asymmetric/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/dh.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/dsa.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/ec.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/ed25519.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/ed448.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/mldsa.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/mlkem.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/padding.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/rsa.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/types.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/utils.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/x25519.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/__pycache__/x448.cpython-39.pyc,, +cryptography/hazmat/primitives/asymmetric/dh.py,sha256=klvHVaxAFkUyaWXLytqYjBTh81Zx1ByCJNZVRcSDYX8,3912 +cryptography/hazmat/primitives/asymmetric/dsa.py,sha256=kQzTViqAI9PiELNOBco_n6MfP3N9ehIPkSduOpupt0M,4482 +cryptography/hazmat/primitives/asymmetric/ec.py,sha256=LklVCLLxbbQzqiE6HRaYTRauLMphYUw3tE6c8oBIxYQ,10183 +cryptography/hazmat/primitives/asymmetric/ed25519.py,sha256=mbffLvs-3PgCDeg1rQXVXh7GLntlVL4ATjkIEc4pt5M,2998 +cryptography/hazmat/primitives/asymmetric/ed448.py,sha256=n0dK6y-VLxuw-zvrDxuPT4598hymgX-1Ry_jq9aUQhE,4002 +cryptography/hazmat/primitives/asymmetric/mldsa.py,sha256=49DPIhoHEyfGVwL6DRc3WlJ20Rinq-ldtjsp91NpyMM,12226 +cryptography/hazmat/primitives/asymmetric/mlkem.py,sha256=wvVkeFT-4of-VcUAER2-zI_5hXT6rwTJPMCQ8gF9GTA,7901 +cryptography/hazmat/primitives/asymmetric/padding.py,sha256=vQ6l6gOg9HqcbOsvHrSiJRVLdEj9L4m4HkRGYziTyFA,2854 +cryptography/hazmat/primitives/asymmetric/rsa.py,sha256=GfFpxwFoYfMhIPEd_1V4y7awu0HTMEozZ9xWfYPtiPc,8640 +cryptography/hazmat/primitives/asymmetric/types.py,sha256=q3glpax4EHgNpkRSEXlhK43a07F3Dsk-rQ3bbjL9ZnM,3309 +cryptography/hazmat/primitives/asymmetric/utils.py,sha256=Qs8Re9GFPjW_tNp_73IeJEjPCf0slOIsWOxo6qymT6k,821 +cryptography/hazmat/primitives/asymmetric/x25519.py,sha256=lQcgUk-Piubj8ynFNWQeYme3tYZMgHQqkRKkIDOHLzo,3888 +cryptography/hazmat/primitives/asymmetric/x448.py,sha256=b37ig7k7poG6SJDry42j-ElCj5q4eQ0X5CFmN0Sn8z8,3913 +cryptography/hazmat/primitives/ciphers/__init__.py,sha256=eyEXmjk6_CZXaOPYDr7vAYGXr29QvzgWL2-4CSolLFs,680 +cryptography/hazmat/primitives/ciphers/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/primitives/ciphers/__pycache__/aead.cpython-39.pyc,, +cryptography/hazmat/primitives/ciphers/__pycache__/algorithms.cpython-39.pyc,, +cryptography/hazmat/primitives/ciphers/__pycache__/base.cpython-39.pyc,, +cryptography/hazmat/primitives/ciphers/__pycache__/modes.cpython-39.pyc,, +cryptography/hazmat/primitives/ciphers/aead.py,sha256=Fzlyx7w8KYQakzDp1zWgJnIr62zgZrgVh1u2h4exB54,634 +cryptography/hazmat/primitives/ciphers/algorithms.py,sha256=IGfCycYJOh1TvoI34rfw8KfJ_xmt1p_DpBht2Fghceo,3496 +cryptography/hazmat/primitives/ciphers/base.py,sha256=aBC7HHBBoixebmparVr0UlODs3VD0A7B6oz_AaRjDv8,4253 +cryptography/hazmat/primitives/ciphers/modes.py,sha256=pNI0cSLCLxr7lz7ApfUpVpFH5q_bzOpKW-QggmgQB74,6007 +cryptography/hazmat/primitives/cmac.py,sha256=sz_s6H_cYnOvx-VNWdIKhRhe3Ymp8z8J0D3CBqOX3gg,338 +cryptography/hazmat/primitives/constant_time.py,sha256=xdunWT0nf8OvKdcqUhhlFKayGp4_PgVJRU2W1wLSr_A,422 +cryptography/hazmat/primitives/hashes.py,sha256=M8BrlKB3U6DEtHvWTV5VRjpteHv1kS3Zxm_Bsk04cr8,5184 +cryptography/hazmat/primitives/hmac.py,sha256=RpB3z9z5skirCQrm7zQbtnp9pLMnAjrlTUvKqF5aDDc,423 +cryptography/hazmat/primitives/hpke.py,sha256=RsHissC5l-dTPn1p2JbcrIrAnDBrLqM5ugBFSGpmKu4,865 +cryptography/hazmat/primitives/kdf/__init__.py,sha256=v3yiYBGU272EojNXbwfYZdbbfI9cVOCCG3nXhTDda3k,1037 +cryptography/hazmat/primitives/kdf/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/primitives/kdf/__pycache__/argon2.cpython-39.pyc,, +cryptography/hazmat/primitives/kdf/__pycache__/concatkdf.cpython-39.pyc,, +cryptography/hazmat/primitives/kdf/__pycache__/hkdf.cpython-39.pyc,, +cryptography/hazmat/primitives/kdf/__pycache__/kbkdf.cpython-39.pyc,, +cryptography/hazmat/primitives/kdf/__pycache__/pbkdf2.cpython-39.pyc,, +cryptography/hazmat/primitives/kdf/__pycache__/scrypt.cpython-39.pyc,, +cryptography/hazmat/primitives/kdf/__pycache__/x963kdf.cpython-39.pyc,, +cryptography/hazmat/primitives/kdf/argon2.py,sha256=ZJx-enUlAA4o7b46C1wlzG_XAQQW0wIkFgUKkrM_wA8,632 +cryptography/hazmat/primitives/kdf/concatkdf.py,sha256=BFnOKS72txKF0yQvASr0Na7uhzvLHpUCckK5iNAC_aQ,591 +cryptography/hazmat/primitives/kdf/hkdf.py,sha256=M0lAEfRoc4kpp4-nwDj9yB-vNZukIOYEQrUlWsBNn9o,543 +cryptography/hazmat/primitives/kdf/kbkdf.py,sha256=C3w99vjFqhqzAxzFOH4zzvVoHkb5AC6Lz6AEQGV7d_g,737 +cryptography/hazmat/primitives/kdf/pbkdf2.py,sha256=Xchkk99s-Mk6b6KSCouqdk8FVyiNVOSFIenmnW3tLgQ,468 +cryptography/hazmat/primitives/kdf/scrypt.py,sha256=XyWUdUUmhuI9V6TqAPOvujCSMGv1XQdg0a21IWCmO-U,590 +cryptography/hazmat/primitives/kdf/x963kdf.py,sha256=QKjhRehuTsAstL384bKfvjuv1yfdamAHVhsBRWen2Vw,456 +cryptography/hazmat/primitives/keywrap.py,sha256=UI-0UESQxBXTKU1HrrRoUwDiFsrWif81qyXlV1e7kyY,5776 +cryptography/hazmat/primitives/padding.py,sha256=QT-U-NvV2eQGO1wVPbDiNGNSc9keRDS-ig5cQOrLz0E,1865 +cryptography/hazmat/primitives/poly1305.py,sha256=P5EPQV-RB_FJPahpg01u0Ts4S_PnAmsroxIGXbGeRRo,355 +cryptography/hazmat/primitives/serialization/__init__.py,sha256=Q7uTgDlt7n3WfsMT6jYwutC6DIg_7SEeoAm1GHZ5B5E,1705 +cryptography/hazmat/primitives/serialization/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/primitives/serialization/__pycache__/base.cpython-39.pyc,, +cryptography/hazmat/primitives/serialization/__pycache__/pkcs12.cpython-39.pyc,, +cryptography/hazmat/primitives/serialization/__pycache__/pkcs7.cpython-39.pyc,, +cryptography/hazmat/primitives/serialization/__pycache__/ssh.cpython-39.pyc,, +cryptography/hazmat/primitives/serialization/base.py,sha256=ikq5MJIwp_oUnjiaBco_PmQwOTYuGi-XkYUYHKy8Vo0,615 +cryptography/hazmat/primitives/serialization/pkcs12.py,sha256=mS9cFNG4afzvseoc5e1MWoY2VskfL8N8Y_OFjl67luY,5104 +cryptography/hazmat/primitives/serialization/pkcs7.py,sha256=wJoAz3yW98E2L2SMWugrkdqIFUVWWltNMRbyk0bylpM,14012 +cryptography/hazmat/primitives/serialization/ssh.py,sha256=HV6ZqIjqNNaNUL6M4gQyNJJtZ75EsiSZs6yxddqBrWI,53789 +cryptography/hazmat/primitives/twofactor/__init__.py,sha256=tmMZGB-g4IU1r7lIFqASU019zr0uPp_wEBYcwdDCKCA,258 +cryptography/hazmat/primitives/twofactor/__pycache__/__init__.cpython-39.pyc,, +cryptography/hazmat/primitives/twofactor/__pycache__/hotp.cpython-39.pyc,, +cryptography/hazmat/primitives/twofactor/__pycache__/totp.cpython-39.pyc,, +cryptography/hazmat/primitives/twofactor/hotp.py,sha256=ivZo5BrcCGWLsqql4nZV0XXCjyGPi_iHfDFltGlOJwk,3256 +cryptography/hazmat/primitives/twofactor/totp.py,sha256=m5LPpRL00kp4zY8gTjr55Hfz9aMlPS53kHmVkSQCmdY,1652 +cryptography/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +cryptography/utils.py,sha256=arFzed6V2Llsmt8Uog1ywpxye6ntYd12Mq6WTU_38sQ,4353 +cryptography/x509/__init__.py,sha256=zciyadRgnCp2DNPPm6ujEKd6EX-8_zOnwtCjJbZBatg,8273 +cryptography/x509/__pycache__/__init__.cpython-39.pyc,, +cryptography/x509/__pycache__/base.cpython-39.pyc,, +cryptography/x509/__pycache__/certificate_transparency.cpython-39.pyc,, +cryptography/x509/__pycache__/extensions.cpython-39.pyc,, +cryptography/x509/__pycache__/general_name.cpython-39.pyc,, +cryptography/x509/__pycache__/name.cpython-39.pyc,, +cryptography/x509/__pycache__/ocsp.cpython-39.pyc,, +cryptography/x509/__pycache__/oid.cpython-39.pyc,, +cryptography/x509/__pycache__/verification.cpython-39.pyc,, +cryptography/x509/base.py,sha256=8322G4opJ1a2juXU14Qi2y-G1V-cQHaudo7gAFbTPlM,25998 +cryptography/x509/certificate_transparency.py,sha256=JqoOIDhlwInrYMFW6IFn77WJ0viF-PB_rlZV3vs9MYc,797 +cryptography/x509/extensions.py,sha256=0AUgutLe26SLg1KaxSeo0fG7fUBAyK2tEgJl9c_AQRM,77968 +cryptography/x509/general_name.py,sha256=sP_rV11Qlpsk4x3XXGJY_Mv0Q_s9dtjeLckHsjpLQoQ,7836 +cryptography/x509/name.py,sha256=WyW7n9vkcLhz43Im2klKF1-wXALdj9wr6WOIJRxyszc,15363 +cryptography/x509/ocsp.py,sha256=Yey6NdFV1MPjop24Mj_VenjEpg3kUaMopSWOK0AbeBs,12699 +cryptography/x509/oid.py,sha256=BUzgXXGVWilkBkdKPTm9R4qElE9gAGHgdYPMZAp7PJo,931 +cryptography/x509/verification.py,sha256=gR2C2c-XZQtblZhT5T5vjSKOtCb74ef2alPVmEcwFlM,958 diff --git a/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/WHEEL b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/WHEEL new file mode 100644 index 0000000..7c76b98 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: maturin (1.13.1) +Root-Is-Purelib: false +Tag: cp38-abi3-manylinux_2_28_x86_64 + diff --git a/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE new file mode 100644 index 0000000..b11f379 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE @@ -0,0 +1,3 @@ +This software is made available under the terms of *either* of the licenses +found in LICENSE.APACHE or LICENSE.BSD. Contributions to cryptography are made +under the terms of *both* these licenses. diff --git a/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE.APACHE b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE.APACHE new file mode 100644 index 0000000..62589ed --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE.APACHE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + https://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE.BSD b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE.BSD new file mode 100644 index 0000000..ec1a29d --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/licenses/LICENSE.BSD @@ -0,0 +1,27 @@ +Copyright (c) Individual contributors. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of PyCA Cryptography nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/sboms/cryptography-rust.cyclonedx.json b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/sboms/cryptography-rust.cyclonedx.json new file mode 100644 index 0000000..6a2f415 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/sboms/cryptography-rust.cyclonedx.json @@ -0,0 +1,1363 @@ +{ + "bomFormat": "CycloneDX", + "specVersion": "1.5", + "version": 1, + "serialNumber": "urn:uuid:98211b3c-5581-4c78-a325-55202a96d30c", + "metadata": { + "timestamp": "2026-04-24T19:48:10.692455991Z", + "tools": [ + { + "vendor": "CycloneDX", + "name": "cargo-cyclonedx", + "version": "0.5.9" + } + ], + "authors": [ + { + "name": "The cryptography developers", + "email": "cryptography-dev@python.org" + } + ], + "component": { + "type": "library", + "bom-ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust#cryptography-rust@0.1.0", + "author": "The cryptography developers ", + "name": "cryptography-rust", + "version": "0.1.0", + "scope": "required", + "licenses": [ + { + "expression": "Apache-2.0 OR BSD-3-Clause" + } + ], + "purl": "pkg:cargo/cryptography-rust@0.1.0?download_url=file://.", + "components": [ + { + "type": "library", + "bom-ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust#cryptography-rust@0.1.0 bin-target-0", + "name": "cryptography_rust", + "version": "0.1.0", + "purl": "pkg:cargo/cryptography-rust@0.1.0?download_url=file://.#src/lib.rs" + } + ] + }, + "properties": [ + { + "name": "cdx:rustc:sbom:target:all_targets", + "value": "true" + } + ] + }, + "components": [ + { + "type": "library", + "bom-ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-cffi#0.1.0", + "author": "The cryptography developers ", + "name": "cryptography-cffi", + "version": "0.1.0", + "scope": "required", + "licenses": [ + { + "expression": "Apache-2.0 OR BSD-3-Clause" + } + ], + "purl": "pkg:cargo/cryptography-cffi@0.1.0?download_url=file://cryptography-cffi" + }, + { + "type": "library", + "bom-ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-crypto#0.1.0", + "author": "The cryptography developers ", + "name": "cryptography-crypto", + "version": "0.1.0", + "scope": "required", + "licenses": [ + { + "expression": "Apache-2.0 OR BSD-3-Clause" + } + ], + "purl": "pkg:cargo/cryptography-crypto@0.1.0?download_url=file://cryptography-crypto" + }, + { + "type": "library", + "bom-ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-keepalive#0.1.0", + "author": "The cryptography developers ", + "name": "cryptography-keepalive", + "version": "0.1.0", + "scope": "required", + "licenses": [ + { + "expression": "Apache-2.0 OR BSD-3-Clause" + } + ], + "purl": "pkg:cargo/cryptography-keepalive@0.1.0?download_url=file://cryptography-keepalive" + }, + { + "type": "library", + "bom-ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-key-parsing#0.1.0", + "author": "The cryptography developers ", + "name": "cryptography-key-parsing", + "version": "0.1.0", + "scope": "required", + "licenses": [ + { + "expression": "Apache-2.0 OR BSD-3-Clause" + } + ], + "purl": "pkg:cargo/cryptography-key-parsing@0.1.0?download_url=file://cryptography-key-parsing" + }, + { + "type": "library", + "bom-ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-openssl#0.1.0", + "author": "The cryptography developers ", + "name": "cryptography-openssl", + "version": "0.1.0", + "scope": "required", + "licenses": [ + { + "expression": "Apache-2.0 OR BSD-3-Clause" + } + ], + "purl": "pkg:cargo/cryptography-openssl@0.1.0?download_url=file://cryptography-openssl" + }, + { + "type": "library", + "bom-ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-x509#0.1.0", + "author": "The cryptography developers ", + "name": "cryptography-x509", + "version": "0.1.0", + "scope": "required", + "licenses": [ + { + "expression": "Apache-2.0 OR BSD-3-Clause" + } + ], + "purl": "pkg:cargo/cryptography-x509@0.1.0?download_url=file://cryptography-x509" + }, + { + "type": "library", + "bom-ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-x509-verification#0.1.0", + "author": "The cryptography developers ", + "name": "cryptography-x509-verification", + "version": "0.1.0", + "scope": "required", + "licenses": [ + { + "expression": "Apache-2.0 OR BSD-3-Clause" + } + ], + "purl": "pkg:cargo/cryptography-x509-verification@0.1.0?download_url=file://cryptography-x509-verification" + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#asn1@0.24.1", + "author": "Alex Gaynor ", + "name": "asn1", + "version": "0.24.1", + "description": "ASN.1 (DER) parser and writer for Rust.", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "c9795210620c0cb3f9a7ce4f882808c38e1ef7b347c90591dceae0886e031fb1" + } + ], + "licenses": [ + { + "expression": "BSD-3-Clause" + } + ], + "purl": "pkg:cargo/asn1@0.24.1", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/alex/rust-asn1" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#asn1_derive@0.24.1", + "author": "Alex Gaynor ", + "name": "asn1_derive", + "version": "0.24.1", + "description": "#[derive] support for asn1", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "909e307f1cc32bb8bccbd98f446e6d1bf03fa30f7b53a4337da7181ad30fa11a" + } + ], + "licenses": [ + { + "expression": "BSD-3-Clause" + } + ], + "purl": "pkg:cargo/asn1_derive@0.24.1", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/alex/rust-asn1" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#base64@0.22.1", + "author": "Marshall Pierce ", + "name": "base64", + "version": "0.22.1", + "description": "encodes and decodes base64 as bytes or utf8", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/base64@0.22.1", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/base64" + }, + { + "type": "vcs", + "url": "https://github.com/marshallpierce/rust-base64" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#bitflags@2.11.1", + "author": "The Rust Project Developers", + "name": "bitflags", + "version": "2.11.1", + "description": "A macro to generate structures which behave like bitflags. ", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/bitflags@2.11.1", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/bitflags" + }, + { + "type": "website", + "url": "https://github.com/bitflags/bitflags" + }, + { + "type": "vcs", + "url": "https://github.com/bitflags/bitflags" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#cc@1.2.60", + "author": "Alex Crichton ", + "name": "cc", + "version": "1.2.60", + "description": "A build-time dependency for Cargo build scripts to assist in invoking the native C compiler to compile native C code into a static archive to be linked into Rust code. ", + "scope": "excluded", + "hashes": [ + { + "alg": "SHA-256", + "content": "43c5703da9466b66a946814e1adf53ea2c90f10063b86290cc9eb67ce3478a20" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/cc@1.2.60", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/cc" + }, + { + "type": "website", + "url": "https://github.com/rust-lang/cc-rs" + }, + { + "type": "vcs", + "url": "https://github.com/rust-lang/cc-rs" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.4", + "author": "Alex Crichton ", + "name": "cfg-if", + "version": "1.0.4", + "description": "A macro to ergonomically define an item depending on a large number of #[cfg] parameters. Structured like an if-else chain, the first matching branch is the item that gets emitted. ", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/cfg-if@1.0.4", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/rust-lang/cfg-if" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#find-msvc-tools@0.1.9", + "name": "find-msvc-tools", + "version": "0.1.9", + "description": "Find windows-specific tools, read MSVC versions from the registry and from COM interfaces", + "scope": "excluded", + "hashes": [ + { + "alg": "SHA-256", + "content": "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/find-msvc-tools@0.1.9", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/find-msvc-tools" + }, + { + "type": "vcs", + "url": "https://github.com/rust-lang/cc-rs" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#foreign-types-shared@0.1.1", + "author": "Steven Fackler ", + "name": "foreign-types-shared", + "version": "0.1.1", + "description": "An internal crate used by foreign-types", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/foreign-types-shared@0.1.1", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/sfackler/foreign-types" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#foreign-types@0.3.2", + "author": "Steven Fackler ", + "name": "foreign-types", + "version": "0.3.2", + "description": "A framework for Rust wrappers over C APIs", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/foreign-types@0.3.2", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/sfackler/foreign-types" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#heck@0.5.0", + "name": "heck", + "version": "0.5.0", + "description": "heck is a case conversion library.", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/heck@0.5.0", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/withoutboats/heck" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.18", + "author": "David Tolnay ", + "name": "itoa", + "version": "1.0.18", + "description": "Fast integer primitive to string conversion", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/itoa@1.0.18", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/itoa" + }, + { + "type": "vcs", + "url": "https://github.com/dtolnay/itoa" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.186", + "author": "The Rust Project Developers", + "name": "libc", + "version": "0.2.186", + "description": "Raw FFI bindings to platform libraries like libc.", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/libc@0.2.186", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/rust-lang/libc" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.4", + "author": "Aleksey Kladov ", + "name": "once_cell", + "version": "1.21.4", + "description": "Single assignment cells and lazy values.", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/once_cell@1.21.4", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/once_cell" + }, + { + "type": "vcs", + "url": "https://github.com/matklad/once_cell" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#openssl-macros@0.1.1", + "name": "openssl-macros", + "version": "0.1.1", + "description": "Internal macros used by the openssl crate.", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/openssl-macros@0.1.1" + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#openssl-sys@0.9.114", + "author": "Alex Crichton , Steven Fackler ", + "name": "openssl-sys", + "version": "0.9.114", + "description": "FFI bindings to OpenSSL", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "13ce1245cd07fcc4cfdb438f7507b0c7e4f3849a69fd84d52374c66d83741bb6" + } + ], + "licenses": [ + { + "expression": "MIT" + } + ], + "purl": "pkg:cargo/openssl-sys@0.9.114", + "externalReferences": [ + { + "type": "other", + "url": "openssl" + }, + { + "type": "vcs", + "url": "https://github.com/rust-openssl/rust-openssl" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#openssl@0.10.78", + "author": "Steven Fackler ", + "name": "openssl", + "version": "0.10.78", + "description": "OpenSSL bindings", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "f38c4372413cdaaf3cc79dd92d29d7d9f5ab09b51b10dded508fb90bb70b9222" + } + ], + "licenses": [ + { + "expression": "Apache-2.0" + } + ], + "purl": "pkg:cargo/openssl@0.10.78", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/rust-openssl/rust-openssl" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#pem@3.0.6", + "author": "Jonathan Creekmore ", + "name": "pem", + "version": "3.0.6", + "description": "Parse and encode PEM-encoded data.", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "1d30c53c26bc5b31a98cd02d20f25a7c8567146caf63ed593a9d87b2775291be" + } + ], + "licenses": [ + { + "expression": "MIT" + } + ], + "purl": "pkg:cargo/pem@3.0.6", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/pem/" + }, + { + "type": "website", + "url": "https://github.com/jcreekmore/pem-rs.git" + }, + { + "type": "vcs", + "url": "https://github.com/jcreekmore/pem-rs.git" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#pkg-config@0.3.33", + "author": "Alex Crichton ", + "name": "pkg-config", + "version": "0.3.33", + "description": "A library to run the pkg-config system tool at build time in order to be used in Cargo build scripts. ", + "scope": "excluded", + "hashes": [ + { + "alg": "SHA-256", + "content": "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/pkg-config@0.3.33", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/pkg-config" + }, + { + "type": "vcs", + "url": "https://github.com/rust-lang/pkg-config-rs" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#portable-atomic@1.13.1", + "name": "portable-atomic", + "version": "1.13.1", + "description": "Portable atomic types including support for 128-bit atomics, atomic float, etc. ", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" + } + ], + "licenses": [ + { + "expression": "Apache-2.0 OR MIT" + } + ], + "purl": "pkg:cargo/portable-atomic@1.13.1", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/taiki-e/portable-atomic" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.106", + "author": "David Tolnay , Alex Crichton ", + "name": "proc-macro2", + "version": "1.0.106", + "description": "A substitute implementation of the compiler's `proc_macro` API to decouple token-based libraries from the procedural macro use case.", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/proc-macro2@1.0.106", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/proc-macro2" + }, + { + "type": "vcs", + "url": "https://github.com/dtolnay/proc-macro2" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3-build-config@0.28.3", + "author": "PyO3 Project and Contributors ", + "name": "pyo3-build-config", + "version": "0.28.3", + "description": "Build configuration for the PyO3 ecosystem", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "e368e7ddfdeb98c9bca7f8383be1648fd84ab466bf2bc015e94008db6d35611e" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/pyo3-build-config@0.28.3", + "externalReferences": [ + { + "type": "website", + "url": "https://github.com/pyo3/pyo3" + }, + { + "type": "vcs", + "url": "https://github.com/pyo3/pyo3" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3-ffi@0.28.3", + "author": "PyO3 Project and Contributors ", + "name": "pyo3-ffi", + "version": "0.28.3", + "description": "Python-API bindings for the PyO3 ecosystem", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "7f29e10af80b1f7ccaf7f69eace800a03ecd13e883acfacc1e5d0988605f651e" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/pyo3-ffi@0.28.3", + "externalReferences": [ + { + "type": "website", + "url": "https://github.com/pyo3/pyo3" + }, + { + "type": "other", + "url": "python" + }, + { + "type": "vcs", + "url": "https://github.com/pyo3/pyo3" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3-macros-backend@0.28.3", + "author": "PyO3 Project and Contributors ", + "name": "pyo3-macros-backend", + "version": "0.28.3", + "description": "Code generation for PyO3 package", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "c4cdc218d835738f81c2338f822078af45b4afdf8b2e33cbb5916f108b813acb" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/pyo3-macros-backend@0.28.3", + "externalReferences": [ + { + "type": "website", + "url": "https://github.com/pyo3/pyo3" + }, + { + "type": "vcs", + "url": "https://github.com/pyo3/pyo3" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3-macros@0.28.3", + "author": "PyO3 Project and Contributors ", + "name": "pyo3-macros", + "version": "0.28.3", + "description": "Proc macros for PyO3 package", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "df6e520eff47c45997d2fc7dd8214b25dd1310918bbb2642156ef66a67f29813" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/pyo3-macros@0.28.3", + "externalReferences": [ + { + "type": "website", + "url": "https://github.com/pyo3/pyo3" + }, + { + "type": "vcs", + "url": "https://github.com/pyo3/pyo3" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3@0.28.3", + "author": "PyO3 Project and Contributors ", + "name": "pyo3", + "version": "0.28.3", + "description": "Bindings to Python interpreter", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "91fd8e38a3b50ed1167fb981cd6fd60147e091784c427b8f7183a7ee32c31c12" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/pyo3@0.28.3", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/crate/pyo3/" + }, + { + "type": "website", + "url": "https://github.com/pyo3/pyo3" + }, + { + "type": "vcs", + "url": "https://github.com/pyo3/pyo3" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.45", + "author": "David Tolnay ", + "name": "quote", + "version": "1.0.45", + "description": "Quasi-quoting macro quote!(...)", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/quote@1.0.45", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/quote/" + }, + { + "type": "vcs", + "url": "https://github.com/dtolnay/quote" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#self_cell@1.2.2", + "author": "Lukas Bergdoll ", + "name": "self_cell", + "version": "1.2.2", + "description": "Safe-to-use proc-macro-free self-referential structs in stable Rust.", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "b12e76d157a900eb52e81bc6e9f3069344290341720e9178cde2407113ac8d89" + } + ], + "licenses": [ + { + "expression": "Apache-2.0 OR GPL-2.0-only" + } + ], + "purl": "pkg:cargo/self_cell@1.2.2", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/self_cell" + }, + { + "type": "vcs", + "url": "https://github.com/Voultapher/self_cell" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#shlex@1.3.0", + "author": "comex , Fenhl , Adrian Taylor , Alex Touchet , Daniel Parks , Garrett Berg ", + "name": "shlex", + "version": "1.3.0", + "description": "Split a string into shell words, like Python's shlex.", + "scope": "excluded", + "hashes": [ + { + "alg": "SHA-256", + "content": "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/shlex@1.3.0", + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/comex/rust-shlex" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.117", + "author": "David Tolnay ", + "name": "syn", + "version": "2.0.117", + "description": "Parser for Rust source code", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/syn@2.0.117", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/syn" + }, + { + "type": "vcs", + "url": "https://github.com/dtolnay/syn" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#target-lexicon@0.13.5", + "author": "Dan Gohman ", + "name": "target-lexicon", + "version": "0.13.5", + "description": "LLVM target triple types", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca" + } + ], + "licenses": [ + { + "expression": "Apache-2.0 WITH LLVM-exception" + } + ], + "purl": "pkg:cargo/target-lexicon@0.13.5", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/target-lexicon/" + }, + { + "type": "vcs", + "url": "https://github.com/bytecodealliance/target-lexicon" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.24", + "author": "David Tolnay ", + "name": "unicode-ident", + "version": "1.0.24", + "description": "Determine whether characters have the XID_Start or XID_Continue properties according to Unicode Standard Annex #31", + "scope": "required", + "hashes": [ + { + "alg": "SHA-256", + "content": "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" + } + ], + "licenses": [ + { + "expression": "(MIT OR Apache-2.0) AND Unicode-3.0" + } + ], + "purl": "pkg:cargo/unicode-ident@1.0.24", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/unicode-ident" + }, + { + "type": "vcs", + "url": "https://github.com/dtolnay/unicode-ident" + } + ] + }, + { + "type": "library", + "bom-ref": "registry+https://github.com/rust-lang/crates.io-index#vcpkg@0.2.15", + "author": "Jim McGrath ", + "name": "vcpkg", + "version": "0.2.15", + "description": "A library to find native dependencies in a vcpkg tree at build time in order to be used in Cargo build scripts. ", + "scope": "excluded", + "hashes": [ + { + "alg": "SHA-256", + "content": "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + } + ], + "licenses": [ + { + "expression": "MIT OR Apache-2.0" + } + ], + "purl": "pkg:cargo/vcpkg@0.2.15", + "externalReferences": [ + { + "type": "documentation", + "url": "https://docs.rs/vcpkg" + }, + { + "type": "vcs", + "url": "https://github.com/mcgoo/vcpkg-rs" + } + ] + } + ], + "dependencies": [ + { + "ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust#cryptography-rust@0.1.0", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#asn1@0.24.1", + "registry+https://github.com/rust-lang/crates.io-index#base64@0.22.1", + "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.4", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-cffi#0.1.0", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-crypto#0.1.0", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-keepalive#0.1.0", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-key-parsing#0.1.0", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-openssl#0.1.0", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-x509#0.1.0", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-x509-verification#0.1.0", + "registry+https://github.com/rust-lang/crates.io-index#foreign-types-shared@0.1.1", + "registry+https://github.com/rust-lang/crates.io-index#openssl@0.10.78", + "registry+https://github.com/rust-lang/crates.io-index#openssl-sys@0.9.114", + "registry+https://github.com/rust-lang/crates.io-index#pem@3.0.6", + "registry+https://github.com/rust-lang/crates.io-index#pyo3@0.28.3", + "registry+https://github.com/rust-lang/crates.io-index#pyo3-build-config@0.28.3", + "registry+https://github.com/rust-lang/crates.io-index#self_cell@1.2.2" + ] + }, + { + "ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-cffi#0.1.0", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#cc@1.2.60", + "registry+https://github.com/rust-lang/crates.io-index#openssl-sys@0.9.114", + "registry+https://github.com/rust-lang/crates.io-index#pyo3@0.28.3" + ] + }, + { + "ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-crypto#0.1.0", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#openssl@0.10.78" + ] + }, + { + "ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-keepalive#0.1.0", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#pyo3@0.28.3" + ] + }, + { + "ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-key-parsing#0.1.0", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#asn1@0.24.1", + "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.4", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-crypto#0.1.0", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-openssl#0.1.0", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-x509#0.1.0", + "registry+https://github.com/rust-lang/crates.io-index#openssl@0.10.78", + "registry+https://github.com/rust-lang/crates.io-index#openssl-sys@0.9.114", + "registry+https://github.com/rust-lang/crates.io-index#pem@3.0.6" + ] + }, + { + "ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-openssl#0.1.0", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.4", + "registry+https://github.com/rust-lang/crates.io-index#foreign-types@0.3.2", + "registry+https://github.com/rust-lang/crates.io-index#foreign-types-shared@0.1.1", + "registry+https://github.com/rust-lang/crates.io-index#openssl@0.10.78", + "registry+https://github.com/rust-lang/crates.io-index#openssl-sys@0.9.114" + ] + }, + { + "ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-x509#0.1.0", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#asn1@0.24.1" + ] + }, + { + "ref": "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-x509-verification#0.1.0", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#asn1@0.24.1", + "path+file:///__w/cryptography/cryptography/tmpwheelhouse/.tmpyLMvqZ/cryptography-47.0.0/src/rust/cryptography-x509#0.1.0" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#asn1@0.24.1", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#asn1_derive@0.24.1", + "registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.18" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#asn1_derive@0.24.1", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.106", + "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.45", + "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.117" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#base64@0.22.1" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#bitflags@2.11.1" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#cc@1.2.60", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#find-msvc-tools@0.1.9", + "registry+https://github.com/rust-lang/crates.io-index#shlex@1.3.0" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.4" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#find-msvc-tools@0.1.9" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#foreign-types-shared@0.1.1" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#foreign-types@0.3.2", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#foreign-types-shared@0.1.1" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#heck@0.5.0" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.18" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.186" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.4" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#openssl-macros@0.1.1", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.106", + "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.45", + "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.117" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#openssl-sys@0.9.114", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#cc@1.2.60", + "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.186", + "registry+https://github.com/rust-lang/crates.io-index#pkg-config@0.3.33", + "registry+https://github.com/rust-lang/crates.io-index#vcpkg@0.2.15" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#openssl@0.10.78", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#bitflags@2.11.1", + "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.4", + "registry+https://github.com/rust-lang/crates.io-index#foreign-types@0.3.2", + "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.186", + "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.4", + "registry+https://github.com/rust-lang/crates.io-index#openssl-macros@0.1.1", + "registry+https://github.com/rust-lang/crates.io-index#openssl-sys@0.9.114" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#pem@3.0.6", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#base64@0.22.1" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#pkg-config@0.3.33" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#portable-atomic@1.13.1" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.106", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.24" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3-build-config@0.28.3", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#target-lexicon@0.13.5" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3-ffi@0.28.3", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.186", + "registry+https://github.com/rust-lang/crates.io-index#pyo3-build-config@0.28.3" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3-macros-backend@0.28.3", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#heck@0.5.0", + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.106", + "registry+https://github.com/rust-lang/crates.io-index#pyo3-build-config@0.28.3", + "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.45", + "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.117" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3-macros@0.28.3", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.106", + "registry+https://github.com/rust-lang/crates.io-index#pyo3-macros-backend@0.28.3", + "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.45", + "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.117" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#pyo3@0.28.3", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.186", + "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.4", + "registry+https://github.com/rust-lang/crates.io-index#portable-atomic@1.13.1", + "registry+https://github.com/rust-lang/crates.io-index#pyo3-build-config@0.28.3", + "registry+https://github.com/rust-lang/crates.io-index#pyo3-ffi@0.28.3", + "registry+https://github.com/rust-lang/crates.io-index#pyo3-macros@0.28.3" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.45", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.106" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#self_cell@1.2.2" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#shlex@1.3.0" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.117", + "dependsOn": [ + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.106", + "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.45", + "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.24" + ] + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#target-lexicon@0.13.5" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.24" + }, + { + "ref": "registry+https://github.com/rust-lang/crates.io-index#vcpkg@0.2.15" + } + ] +} \ No newline at end of file diff --git a/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/sboms/sbom.json b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/sboms/sbom.json new file mode 100644 index 0000000..18d2a1b --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography-47.0.0.dist-info/sboms/sbom.json @@ -0,0 +1,43 @@ +{ + "bomFormat": "CycloneDX", + "specVersion": "1.5", + "version": 1, + "serialNumber": "urn:uuid:b5f772cd-86a5-4c2f-891d-743d5ad4aadb", + "metadata": { + "timestamp": "2026-04-24T19:12:44Z" + }, + "components": [ + { + "type": "library", + "name": "openssl", + "version": "4.0.0", + "purl": "pkg:generic/openssl@4.0.0?download_url=https://github.com/openssl/openssl/releases/download/openssl-4.0.0/openssl-4.0.0.tar.gz", + "hashes": [ + { + "alg": "SHA-256", + "content": "c32cf49a959c4f345f9606982dd36e7d28f7c58b19c2e25d75624d2b3d2f79ac" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://github.com/openssl/openssl/releases/download/openssl-4.0.0/openssl-4.0.0.tar.gz" + } + ], + "properties": [ + { + "name": "build:operating-system", + "value": "linux" + }, + { + "name": "build:architecture", + "value": "x86_64" + }, + { + "name": "build:flags", + "value": "no-zlib no-shared no-module no-comp no-apps no-docs no-sm2-precomp no-atexit enable-ec_nistp_64_gcc_128" + } + ] + } + ] +} diff --git a/venv/lib/python3.9/site-packages/cryptography/__about__.py b/venv/lib/python3.9/site-packages/cryptography/__about__.py new file mode 100644 index 0000000..17fefda --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/__about__.py @@ -0,0 +1,17 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +__all__ = [ + "__author__", + "__copyright__", + "__version__", +] + +__version__ = "47.0.0" + + +__author__ = "The Python Cryptographic Authority and individual contributors" +__copyright__ = f"Copyright 2013-2026 {__author__}" diff --git a/venv/lib/python3.9/site-packages/cryptography/__init__.py b/venv/lib/python3.9/site-packages/cryptography/__init__.py new file mode 100644 index 0000000..530bb8f --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/__init__.py @@ -0,0 +1,26 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import sys +import warnings + +from cryptography import utils +from cryptography.__about__ import __author__, __copyright__, __version__ + +__all__ = [ + "__author__", + "__copyright__", + "__version__", +] + +if sys.version_info[:2] == (3, 8): + warnings.warn( + "Python 3.8 is no longer supported by the Python core team " + "and support for it is deprecated in cryptography. The next " + "release of cryptography will remove support for Python 3.8.", + utils.CryptographyDeprecationWarning, + stacklevel=2, + ) diff --git a/venv/lib/python3.9/site-packages/cryptography/exceptions.py b/venv/lib/python3.9/site-packages/cryptography/exceptions.py new file mode 100644 index 0000000..fe125ea --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/exceptions.py @@ -0,0 +1,52 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import typing + +from cryptography.hazmat.bindings._rust import exceptions as rust_exceptions + +if typing.TYPE_CHECKING: + from cryptography.hazmat.bindings._rust import openssl as rust_openssl + +_Reasons = rust_exceptions._Reasons + + +class UnsupportedAlgorithm(Exception): + def __init__(self, message: str, reason: _Reasons | None = None) -> None: + super().__init__(message) + self._reason = reason + + +class AlreadyFinalized(Exception): + pass + + +class AlreadyUpdated(Exception): + pass + + +class NotYetFinalized(Exception): + pass + + +class InvalidTag(Exception): + pass + + +class InvalidSignature(Exception): + pass + + +class InternalError(Exception): + def __init__( + self, msg: str, err_code: list[rust_openssl.OpenSSLError] + ) -> None: + super().__init__(msg) + self.err_code = err_code + + +class InvalidKey(Exception): + pass diff --git a/venv/lib/python3.9/site-packages/cryptography/fernet.py b/venv/lib/python3.9/site-packages/cryptography/fernet.py new file mode 100644 index 0000000..c6744ae --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/fernet.py @@ -0,0 +1,224 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import base64 +import binascii +import os +import time +import typing +from collections.abc import Iterable + +from cryptography import utils +from cryptography.exceptions import InvalidSignature +from cryptography.hazmat.primitives import hashes, padding +from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes +from cryptography.hazmat.primitives.hmac import HMAC + + +class InvalidToken(Exception): + pass + + +_MAX_CLOCK_SKEW = 60 + + +class Fernet: + def __init__( + self, + key: bytes | str, + backend: typing.Any = None, + ) -> None: + try: + key = base64.urlsafe_b64decode(key) + except binascii.Error as exc: + raise ValueError( + "Fernet key must be 32 url-safe base64-encoded bytes." + ) from exc + if len(key) != 32: + raise ValueError( + "Fernet key must be 32 url-safe base64-encoded bytes." + ) + + self._signing_key = key[:16] + self._encryption_key = key[16:] + + @classmethod + def generate_key(cls) -> bytes: + return base64.urlsafe_b64encode(os.urandom(32)) + + def encrypt(self, data: bytes) -> bytes: + return self.encrypt_at_time(data, int(time.time())) + + def encrypt_at_time(self, data: bytes, current_time: int) -> bytes: + iv = os.urandom(16) + return self._encrypt_from_parts(data, current_time, iv) + + def _encrypt_from_parts( + self, data: bytes, current_time: int, iv: bytes + ) -> bytes: + utils._check_bytes("data", data) + + padder = padding.PKCS7(algorithms.AES.block_size).padder() + padded_data = padder.update(data) + padder.finalize() + encryptor = Cipher( + algorithms.AES(self._encryption_key), + modes.CBC(iv), + ).encryptor() + ciphertext = encryptor.update(padded_data) + encryptor.finalize() + + basic_parts = ( + b"\x80" + + current_time.to_bytes(length=8, byteorder="big") + + iv + + ciphertext + ) + + h = HMAC(self._signing_key, hashes.SHA256()) + h.update(basic_parts) + hmac = h.finalize() + return base64.urlsafe_b64encode(basic_parts + hmac) + + def decrypt(self, token: bytes | str, ttl: int | None = None) -> bytes: + timestamp, data = Fernet._get_unverified_token_data(token) + if ttl is None: + time_info = None + else: + time_info = (ttl, int(time.time())) + return self._decrypt_data(data, timestamp, time_info) + + def decrypt_at_time( + self, token: bytes | str, ttl: int, current_time: int + ) -> bytes: + if ttl is None: + raise ValueError( + "decrypt_at_time() can only be used with a non-None ttl" + ) + timestamp, data = Fernet._get_unverified_token_data(token) + return self._decrypt_data(data, timestamp, (ttl, current_time)) + + def extract_timestamp(self, token: bytes | str) -> int: + timestamp, data = Fernet._get_unverified_token_data(token) + # Verify the token was not tampered with. + self._verify_signature(data) + return timestamp + + @staticmethod + def _get_unverified_token_data(token: bytes | str) -> tuple[int, bytes]: + if not isinstance(token, (str, bytes)): + raise TypeError("token must be bytes or str") + + try: + data = base64.urlsafe_b64decode(token) + except (TypeError, binascii.Error): + raise InvalidToken + + if not data or data[0] != 0x80: + raise InvalidToken + + if len(data) < 9: + raise InvalidToken + + timestamp = int.from_bytes(data[1:9], byteorder="big") + return timestamp, data + + def _verify_signature(self, data: bytes) -> None: + h = HMAC(self._signing_key, hashes.SHA256()) + h.update(data[:-32]) + try: + h.verify(data[-32:]) + except InvalidSignature: + raise InvalidToken + + def _decrypt_data( + self, + data: bytes, + timestamp: int, + time_info: tuple[int, int] | None, + ) -> bytes: + if time_info is not None: + ttl, current_time = time_info + if timestamp + ttl < current_time: + raise InvalidToken + + if current_time + _MAX_CLOCK_SKEW < timestamp: + raise InvalidToken + + self._verify_signature(data) + + iv = data[9:25] + ciphertext = data[25:-32] + decryptor = Cipher( + algorithms.AES(self._encryption_key), modes.CBC(iv) + ).decryptor() + plaintext_padded = decryptor.update(ciphertext) + try: + plaintext_padded += decryptor.finalize() + except ValueError: + raise InvalidToken + unpadder = padding.PKCS7(algorithms.AES.block_size).unpadder() + + unpadded = unpadder.update(plaintext_padded) + try: + unpadded += unpadder.finalize() + except ValueError: + raise InvalidToken + return unpadded + + +class MultiFernet: + def __init__(self, fernets: Iterable[Fernet]): + fernets = list(fernets) + if not fernets: + raise ValueError( + "MultiFernet requires at least one Fernet instance" + ) + self._fernets = fernets + + def encrypt(self, msg: bytes) -> bytes: + return self.encrypt_at_time(msg, int(time.time())) + + def encrypt_at_time(self, msg: bytes, current_time: int) -> bytes: + return self._fernets[0].encrypt_at_time(msg, current_time) + + def rotate(self, msg: bytes | str) -> bytes: + timestamp, data = Fernet._get_unverified_token_data(msg) + for f in self._fernets: + try: + p = f._decrypt_data(data, timestamp, None) + break + except InvalidToken: + pass + else: + raise InvalidToken + + iv = os.urandom(16) + return self._fernets[0]._encrypt_from_parts(p, timestamp, iv) + + def decrypt(self, msg: bytes | str, ttl: int | None = None) -> bytes: + for f in self._fernets: + try: + return f.decrypt(msg, ttl) + except InvalidToken: + pass + raise InvalidToken + + def decrypt_at_time( + self, msg: bytes | str, ttl: int, current_time: int + ) -> bytes: + for f in self._fernets: + try: + return f.decrypt_at_time(msg, ttl, current_time) + except InvalidToken: + pass + raise InvalidToken + + def extract_timestamp(self, msg: bytes | str) -> int: + for f in self._fernets: + try: + return f.extract_timestamp(msg) + except InvalidToken: + pass + raise InvalidToken diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/__init__.py new file mode 100644 index 0000000..b9f1187 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/__init__.py @@ -0,0 +1,13 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +""" +Hazardous Materials + +This is a "Hazardous Materials" module. You should ONLY use it if you're +100% absolutely sure that you know what you're doing because this module +is full of land mines, dragons, and dinosaurs with laser guns. +""" diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/_oid.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/_oid.py new file mode 100644 index 0000000..4bf138d --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/_oid.py @@ -0,0 +1,356 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import ( + ObjectIdentifier as ObjectIdentifier, +) +from cryptography.hazmat.primitives import hashes + + +class ExtensionOID: + SUBJECT_DIRECTORY_ATTRIBUTES = ObjectIdentifier("2.5.29.9") + SUBJECT_KEY_IDENTIFIER = ObjectIdentifier("2.5.29.14") + KEY_USAGE = ObjectIdentifier("2.5.29.15") + PRIVATE_KEY_USAGE_PERIOD = ObjectIdentifier("2.5.29.16") + SUBJECT_ALTERNATIVE_NAME = ObjectIdentifier("2.5.29.17") + ISSUER_ALTERNATIVE_NAME = ObjectIdentifier("2.5.29.18") + BASIC_CONSTRAINTS = ObjectIdentifier("2.5.29.19") + NAME_CONSTRAINTS = ObjectIdentifier("2.5.29.30") + CRL_DISTRIBUTION_POINTS = ObjectIdentifier("2.5.29.31") + CERTIFICATE_POLICIES = ObjectIdentifier("2.5.29.32") + POLICY_MAPPINGS = ObjectIdentifier("2.5.29.33") + AUTHORITY_KEY_IDENTIFIER = ObjectIdentifier("2.5.29.35") + POLICY_CONSTRAINTS = ObjectIdentifier("2.5.29.36") + EXTENDED_KEY_USAGE = ObjectIdentifier("2.5.29.37") + FRESHEST_CRL = ObjectIdentifier("2.5.29.46") + INHIBIT_ANY_POLICY = ObjectIdentifier("2.5.29.54") + ISSUING_DISTRIBUTION_POINT = ObjectIdentifier("2.5.29.28") + AUTHORITY_INFORMATION_ACCESS = ObjectIdentifier("1.3.6.1.5.5.7.1.1") + SUBJECT_INFORMATION_ACCESS = ObjectIdentifier("1.3.6.1.5.5.7.1.11") + OCSP_NO_CHECK = ObjectIdentifier("1.3.6.1.5.5.7.48.1.5") + TLS_FEATURE = ObjectIdentifier("1.3.6.1.5.5.7.1.24") + CRL_NUMBER = ObjectIdentifier("2.5.29.20") + DELTA_CRL_INDICATOR = ObjectIdentifier("2.5.29.27") + PRECERT_SIGNED_CERTIFICATE_TIMESTAMPS = ObjectIdentifier( + "1.3.6.1.4.1.11129.2.4.2" + ) + PRECERT_POISON = ObjectIdentifier("1.3.6.1.4.1.11129.2.4.3") + SIGNED_CERTIFICATE_TIMESTAMPS = ObjectIdentifier("1.3.6.1.4.1.11129.2.4.5") + MS_CERTIFICATE_TEMPLATE = ObjectIdentifier("1.3.6.1.4.1.311.21.7") + ADMISSIONS = ObjectIdentifier("1.3.36.8.3.3") + + +class OCSPExtensionOID: + NONCE = ObjectIdentifier("1.3.6.1.5.5.7.48.1.2") + ACCEPTABLE_RESPONSES = ObjectIdentifier("1.3.6.1.5.5.7.48.1.4") + + +class CRLEntryExtensionOID: + CERTIFICATE_ISSUER = ObjectIdentifier("2.5.29.29") + CRL_REASON = ObjectIdentifier("2.5.29.21") + INVALIDITY_DATE = ObjectIdentifier("2.5.29.24") + + +class NameOID: + COMMON_NAME = ObjectIdentifier("2.5.4.3") + COUNTRY_NAME = ObjectIdentifier("2.5.4.6") + LOCALITY_NAME = ObjectIdentifier("2.5.4.7") + STATE_OR_PROVINCE_NAME = ObjectIdentifier("2.5.4.8") + STREET_ADDRESS = ObjectIdentifier("2.5.4.9") + ORGANIZATION_IDENTIFIER = ObjectIdentifier("2.5.4.97") + ORGANIZATION_NAME = ObjectIdentifier("2.5.4.10") + ORGANIZATIONAL_UNIT_NAME = ObjectIdentifier("2.5.4.11") + SERIAL_NUMBER = ObjectIdentifier("2.5.4.5") + SURNAME = ObjectIdentifier("2.5.4.4") + GIVEN_NAME = ObjectIdentifier("2.5.4.42") + TITLE = ObjectIdentifier("2.5.4.12") + INITIALS = ObjectIdentifier("2.5.4.43") + GENERATION_QUALIFIER = ObjectIdentifier("2.5.4.44") + X500_UNIQUE_IDENTIFIER = ObjectIdentifier("2.5.4.45") + DN_QUALIFIER = ObjectIdentifier("2.5.4.46") + PSEUDONYM = ObjectIdentifier("2.5.4.65") + USER_ID = ObjectIdentifier("0.9.2342.19200300.100.1.1") + DOMAIN_COMPONENT = ObjectIdentifier("0.9.2342.19200300.100.1.25") + EMAIL_ADDRESS = ObjectIdentifier("1.2.840.113549.1.9.1") + JURISDICTION_COUNTRY_NAME = ObjectIdentifier("1.3.6.1.4.1.311.60.2.1.3") + JURISDICTION_LOCALITY_NAME = ObjectIdentifier("1.3.6.1.4.1.311.60.2.1.1") + JURISDICTION_STATE_OR_PROVINCE_NAME = ObjectIdentifier( + "1.3.6.1.4.1.311.60.2.1.2" + ) + BUSINESS_CATEGORY = ObjectIdentifier("2.5.4.15") + POSTAL_ADDRESS = ObjectIdentifier("2.5.4.16") + POSTAL_CODE = ObjectIdentifier("2.5.4.17") + INN = ObjectIdentifier("1.2.643.3.131.1.1") + OGRN = ObjectIdentifier("1.2.643.100.1") + SNILS = ObjectIdentifier("1.2.643.100.3") + UNSTRUCTURED_NAME = ObjectIdentifier("1.2.840.113549.1.9.2") + + +class SignatureAlgorithmOID: + RSA_WITH_MD5 = ObjectIdentifier("1.2.840.113549.1.1.4") + RSA_WITH_SHA1 = ObjectIdentifier("1.2.840.113549.1.1.5") + # This is an alternate OID for RSA with SHA1 that is occasionally seen + _RSA_WITH_SHA1 = ObjectIdentifier("1.3.14.3.2.29") + RSA_WITH_SHA224 = ObjectIdentifier("1.2.840.113549.1.1.14") + RSA_WITH_SHA256 = ObjectIdentifier("1.2.840.113549.1.1.11") + RSA_WITH_SHA384 = ObjectIdentifier("1.2.840.113549.1.1.12") + RSA_WITH_SHA512 = ObjectIdentifier("1.2.840.113549.1.1.13") + RSA_WITH_SHA3_224 = ObjectIdentifier("2.16.840.1.101.3.4.3.13") + RSA_WITH_SHA3_256 = ObjectIdentifier("2.16.840.1.101.3.4.3.14") + RSA_WITH_SHA3_384 = ObjectIdentifier("2.16.840.1.101.3.4.3.15") + RSA_WITH_SHA3_512 = ObjectIdentifier("2.16.840.1.101.3.4.3.16") + RSASSA_PSS = ObjectIdentifier("1.2.840.113549.1.1.10") + ECDSA_WITH_SHA1 = ObjectIdentifier("1.2.840.10045.4.1") + ECDSA_WITH_SHA224 = ObjectIdentifier("1.2.840.10045.4.3.1") + ECDSA_WITH_SHA256 = ObjectIdentifier("1.2.840.10045.4.3.2") + ECDSA_WITH_SHA384 = ObjectIdentifier("1.2.840.10045.4.3.3") + ECDSA_WITH_SHA512 = ObjectIdentifier("1.2.840.10045.4.3.4") + ECDSA_WITH_SHA3_224 = ObjectIdentifier("2.16.840.1.101.3.4.3.9") + ECDSA_WITH_SHA3_256 = ObjectIdentifier("2.16.840.1.101.3.4.3.10") + ECDSA_WITH_SHA3_384 = ObjectIdentifier("2.16.840.1.101.3.4.3.11") + ECDSA_WITH_SHA3_512 = ObjectIdentifier("2.16.840.1.101.3.4.3.12") + DSA_WITH_SHA1 = ObjectIdentifier("1.2.840.10040.4.3") + DSA_WITH_SHA224 = ObjectIdentifier("2.16.840.1.101.3.4.3.1") + DSA_WITH_SHA256 = ObjectIdentifier("2.16.840.1.101.3.4.3.2") + DSA_WITH_SHA384 = ObjectIdentifier("2.16.840.1.101.3.4.3.3") + DSA_WITH_SHA512 = ObjectIdentifier("2.16.840.1.101.3.4.3.4") + ED25519 = ObjectIdentifier("1.3.101.112") + ED448 = ObjectIdentifier("1.3.101.113") + GOSTR3411_94_WITH_3410_2001 = ObjectIdentifier("1.2.643.2.2.3") + GOSTR3410_2012_WITH_3411_2012_256 = ObjectIdentifier("1.2.643.7.1.1.3.2") + GOSTR3410_2012_WITH_3411_2012_512 = ObjectIdentifier("1.2.643.7.1.1.3.3") + + +_SIG_OIDS_TO_HASH: dict[ObjectIdentifier, hashes.HashAlgorithm | None] = { + SignatureAlgorithmOID.RSA_WITH_MD5: hashes.MD5(), + SignatureAlgorithmOID.RSA_WITH_SHA1: hashes.SHA1(), + SignatureAlgorithmOID._RSA_WITH_SHA1: hashes.SHA1(), + SignatureAlgorithmOID.RSA_WITH_SHA224: hashes.SHA224(), + SignatureAlgorithmOID.RSA_WITH_SHA256: hashes.SHA256(), + SignatureAlgorithmOID.RSA_WITH_SHA384: hashes.SHA384(), + SignatureAlgorithmOID.RSA_WITH_SHA512: hashes.SHA512(), + SignatureAlgorithmOID.RSA_WITH_SHA3_224: hashes.SHA3_224(), + SignatureAlgorithmOID.RSA_WITH_SHA3_256: hashes.SHA3_256(), + SignatureAlgorithmOID.RSA_WITH_SHA3_384: hashes.SHA3_384(), + SignatureAlgorithmOID.RSA_WITH_SHA3_512: hashes.SHA3_512(), + SignatureAlgorithmOID.ECDSA_WITH_SHA1: hashes.SHA1(), + SignatureAlgorithmOID.ECDSA_WITH_SHA224: hashes.SHA224(), + SignatureAlgorithmOID.ECDSA_WITH_SHA256: hashes.SHA256(), + SignatureAlgorithmOID.ECDSA_WITH_SHA384: hashes.SHA384(), + SignatureAlgorithmOID.ECDSA_WITH_SHA512: hashes.SHA512(), + SignatureAlgorithmOID.ECDSA_WITH_SHA3_224: hashes.SHA3_224(), + SignatureAlgorithmOID.ECDSA_WITH_SHA3_256: hashes.SHA3_256(), + SignatureAlgorithmOID.ECDSA_WITH_SHA3_384: hashes.SHA3_384(), + SignatureAlgorithmOID.ECDSA_WITH_SHA3_512: hashes.SHA3_512(), + SignatureAlgorithmOID.DSA_WITH_SHA1: hashes.SHA1(), + SignatureAlgorithmOID.DSA_WITH_SHA224: hashes.SHA224(), + SignatureAlgorithmOID.DSA_WITH_SHA256: hashes.SHA256(), + SignatureAlgorithmOID.ED25519: None, + SignatureAlgorithmOID.ED448: None, + SignatureAlgorithmOID.GOSTR3411_94_WITH_3410_2001: None, + SignatureAlgorithmOID.GOSTR3410_2012_WITH_3411_2012_256: None, + SignatureAlgorithmOID.GOSTR3410_2012_WITH_3411_2012_512: None, +} + + +class HashAlgorithmOID: + SHA1 = ObjectIdentifier("1.3.14.3.2.26") + SHA224 = ObjectIdentifier("2.16.840.1.101.3.4.2.4") + SHA256 = ObjectIdentifier("2.16.840.1.101.3.4.2.1") + SHA384 = ObjectIdentifier("2.16.840.1.101.3.4.2.2") + SHA512 = ObjectIdentifier("2.16.840.1.101.3.4.2.3") + SHA3_224 = ObjectIdentifier("1.3.6.1.4.1.37476.3.2.1.99.7.224") + SHA3_256 = ObjectIdentifier("1.3.6.1.4.1.37476.3.2.1.99.7.256") + SHA3_384 = ObjectIdentifier("1.3.6.1.4.1.37476.3.2.1.99.7.384") + SHA3_512 = ObjectIdentifier("1.3.6.1.4.1.37476.3.2.1.99.7.512") + SHA3_224_NIST = ObjectIdentifier("2.16.840.1.101.3.4.2.7") + SHA3_256_NIST = ObjectIdentifier("2.16.840.1.101.3.4.2.8") + SHA3_384_NIST = ObjectIdentifier("2.16.840.1.101.3.4.2.9") + SHA3_512_NIST = ObjectIdentifier("2.16.840.1.101.3.4.2.10") + + +class PublicKeyAlgorithmOID: + DSA = ObjectIdentifier("1.2.840.10040.4.1") + EC_PUBLIC_KEY = ObjectIdentifier("1.2.840.10045.2.1") + RSAES_PKCS1_v1_5 = ObjectIdentifier("1.2.840.113549.1.1.1") + RSASSA_PSS = ObjectIdentifier("1.2.840.113549.1.1.10") + X25519 = ObjectIdentifier("1.3.101.110") + X448 = ObjectIdentifier("1.3.101.111") + ED25519 = ObjectIdentifier("1.3.101.112") + ED448 = ObjectIdentifier("1.3.101.113") + + +class ExtendedKeyUsageOID: + SERVER_AUTH = ObjectIdentifier("1.3.6.1.5.5.7.3.1") + CLIENT_AUTH = ObjectIdentifier("1.3.6.1.5.5.7.3.2") + CODE_SIGNING = ObjectIdentifier("1.3.6.1.5.5.7.3.3") + EMAIL_PROTECTION = ObjectIdentifier("1.3.6.1.5.5.7.3.4") + TIME_STAMPING = ObjectIdentifier("1.3.6.1.5.5.7.3.8") + OCSP_SIGNING = ObjectIdentifier("1.3.6.1.5.5.7.3.9") + ANY_EXTENDED_KEY_USAGE = ObjectIdentifier("2.5.29.37.0") + SMARTCARD_LOGON = ObjectIdentifier("1.3.6.1.4.1.311.20.2.2") + KERBEROS_PKINIT_KDC = ObjectIdentifier("1.3.6.1.5.2.3.5") + IPSEC_IKE = ObjectIdentifier("1.3.6.1.5.5.7.3.17") + BUNDLE_SECURITY = ObjectIdentifier("1.3.6.1.5.5.7.3.35") + CERTIFICATE_TRANSPARENCY = ObjectIdentifier("1.3.6.1.4.1.11129.2.4.4") + + +class OtherNameFormOID: + PERMANENT_IDENTIFIER = ObjectIdentifier("1.3.6.1.5.5.7.8.3") + HW_MODULE_NAME = ObjectIdentifier("1.3.6.1.5.5.7.8.4") + DNS_SRV = ObjectIdentifier("1.3.6.1.5.5.7.8.7") + NAI_REALM = ObjectIdentifier("1.3.6.1.5.5.7.8.8") + SMTP_UTF8_MAILBOX = ObjectIdentifier("1.3.6.1.5.5.7.8.9") + ACP_NODE_NAME = ObjectIdentifier("1.3.6.1.5.5.7.8.10") + BUNDLE_EID = ObjectIdentifier("1.3.6.1.5.5.7.8.11") + + +class AuthorityInformationAccessOID: + CA_ISSUERS = ObjectIdentifier("1.3.6.1.5.5.7.48.2") + OCSP = ObjectIdentifier("1.3.6.1.5.5.7.48.1") + + +class SubjectInformationAccessOID: + CA_REPOSITORY = ObjectIdentifier("1.3.6.1.5.5.7.48.5") + + +class CertificatePoliciesOID: + CPS_QUALIFIER = ObjectIdentifier("1.3.6.1.5.5.7.2.1") + CPS_USER_NOTICE = ObjectIdentifier("1.3.6.1.5.5.7.2.2") + ANY_POLICY = ObjectIdentifier("2.5.29.32.0") + + +class AttributeOID: + CHALLENGE_PASSWORD = ObjectIdentifier("1.2.840.113549.1.9.7") + UNSTRUCTURED_NAME = ObjectIdentifier("1.2.840.113549.1.9.2") + + +_OID_NAMES = { + NameOID.COMMON_NAME: "commonName", + NameOID.COUNTRY_NAME: "countryName", + NameOID.LOCALITY_NAME: "localityName", + NameOID.STATE_OR_PROVINCE_NAME: "stateOrProvinceName", + NameOID.STREET_ADDRESS: "streetAddress", + NameOID.ORGANIZATION_NAME: "organizationName", + NameOID.ORGANIZATIONAL_UNIT_NAME: "organizationalUnitName", + NameOID.SERIAL_NUMBER: "serialNumber", + NameOID.SURNAME: "surname", + NameOID.GIVEN_NAME: "givenName", + NameOID.TITLE: "title", + NameOID.GENERATION_QUALIFIER: "generationQualifier", + NameOID.X500_UNIQUE_IDENTIFIER: "x500UniqueIdentifier", + NameOID.DN_QUALIFIER: "dnQualifier", + NameOID.PSEUDONYM: "pseudonym", + NameOID.USER_ID: "userID", + NameOID.DOMAIN_COMPONENT: "domainComponent", + NameOID.EMAIL_ADDRESS: "emailAddress", + NameOID.JURISDICTION_COUNTRY_NAME: "jurisdictionCountryName", + NameOID.JURISDICTION_LOCALITY_NAME: "jurisdictionLocalityName", + NameOID.JURISDICTION_STATE_OR_PROVINCE_NAME: ( + "jurisdictionStateOrProvinceName" + ), + NameOID.BUSINESS_CATEGORY: "businessCategory", + NameOID.POSTAL_ADDRESS: "postalAddress", + NameOID.POSTAL_CODE: "postalCode", + NameOID.INN: "INN", + NameOID.OGRN: "OGRN", + NameOID.SNILS: "SNILS", + NameOID.UNSTRUCTURED_NAME: "unstructuredName", + SignatureAlgorithmOID.RSA_WITH_MD5: "md5WithRSAEncryption", + SignatureAlgorithmOID.RSA_WITH_SHA1: "sha1WithRSAEncryption", + SignatureAlgorithmOID.RSA_WITH_SHA224: "sha224WithRSAEncryption", + SignatureAlgorithmOID.RSA_WITH_SHA256: "sha256WithRSAEncryption", + SignatureAlgorithmOID.RSA_WITH_SHA384: "sha384WithRSAEncryption", + SignatureAlgorithmOID.RSA_WITH_SHA512: "sha512WithRSAEncryption", + SignatureAlgorithmOID.RSASSA_PSS: "rsassaPss", + SignatureAlgorithmOID.ECDSA_WITH_SHA1: "ecdsa-with-SHA1", + SignatureAlgorithmOID.ECDSA_WITH_SHA224: "ecdsa-with-SHA224", + SignatureAlgorithmOID.ECDSA_WITH_SHA256: "ecdsa-with-SHA256", + SignatureAlgorithmOID.ECDSA_WITH_SHA384: "ecdsa-with-SHA384", + SignatureAlgorithmOID.ECDSA_WITH_SHA512: "ecdsa-with-SHA512", + SignatureAlgorithmOID.DSA_WITH_SHA1: "dsa-with-sha1", + SignatureAlgorithmOID.DSA_WITH_SHA224: "dsa-with-sha224", + SignatureAlgorithmOID.DSA_WITH_SHA256: "dsa-with-sha256", + SignatureAlgorithmOID.ED25519: "ed25519", + SignatureAlgorithmOID.ED448: "ed448", + SignatureAlgorithmOID.GOSTR3411_94_WITH_3410_2001: ( + "GOST R 34.11-94 with GOST R 34.10-2001" + ), + SignatureAlgorithmOID.GOSTR3410_2012_WITH_3411_2012_256: ( + "GOST R 34.10-2012 with GOST R 34.11-2012 (256 bit)" + ), + SignatureAlgorithmOID.GOSTR3410_2012_WITH_3411_2012_512: ( + "GOST R 34.10-2012 with GOST R 34.11-2012 (512 bit)" + ), + HashAlgorithmOID.SHA1: "sha1", + HashAlgorithmOID.SHA224: "sha224", + HashAlgorithmOID.SHA256: "sha256", + HashAlgorithmOID.SHA384: "sha384", + HashAlgorithmOID.SHA512: "sha512", + HashAlgorithmOID.SHA3_224: "sha3_224", + HashAlgorithmOID.SHA3_256: "sha3_256", + HashAlgorithmOID.SHA3_384: "sha3_384", + HashAlgorithmOID.SHA3_512: "sha3_512", + HashAlgorithmOID.SHA3_224_NIST: "sha3_224", + HashAlgorithmOID.SHA3_256_NIST: "sha3_256", + HashAlgorithmOID.SHA3_384_NIST: "sha3_384", + HashAlgorithmOID.SHA3_512_NIST: "sha3_512", + PublicKeyAlgorithmOID.DSA: "dsaEncryption", + PublicKeyAlgorithmOID.EC_PUBLIC_KEY: "id-ecPublicKey", + PublicKeyAlgorithmOID.RSAES_PKCS1_v1_5: "rsaEncryption", + PublicKeyAlgorithmOID.X25519: "X25519", + PublicKeyAlgorithmOID.X448: "X448", + ExtendedKeyUsageOID.SERVER_AUTH: "serverAuth", + ExtendedKeyUsageOID.CLIENT_AUTH: "clientAuth", + ExtendedKeyUsageOID.CODE_SIGNING: "codeSigning", + ExtendedKeyUsageOID.EMAIL_PROTECTION: "emailProtection", + ExtendedKeyUsageOID.TIME_STAMPING: "timeStamping", + ExtendedKeyUsageOID.OCSP_SIGNING: "OCSPSigning", + ExtendedKeyUsageOID.SMARTCARD_LOGON: "msSmartcardLogin", + ExtendedKeyUsageOID.KERBEROS_PKINIT_KDC: "pkInitKDC", + ExtensionOID.SUBJECT_DIRECTORY_ATTRIBUTES: "subjectDirectoryAttributes", + ExtensionOID.SUBJECT_KEY_IDENTIFIER: "subjectKeyIdentifier", + ExtensionOID.KEY_USAGE: "keyUsage", + ExtensionOID.PRIVATE_KEY_USAGE_PERIOD: "privateKeyUsagePeriod", + ExtensionOID.SUBJECT_ALTERNATIVE_NAME: "subjectAltName", + ExtensionOID.ISSUER_ALTERNATIVE_NAME: "issuerAltName", + ExtensionOID.BASIC_CONSTRAINTS: "basicConstraints", + ExtensionOID.PRECERT_SIGNED_CERTIFICATE_TIMESTAMPS: ( + "signedCertificateTimestampList" + ), + ExtensionOID.SIGNED_CERTIFICATE_TIMESTAMPS: ( + "signedCertificateTimestampList" + ), + ExtensionOID.PRECERT_POISON: "ctPoison", + ExtensionOID.MS_CERTIFICATE_TEMPLATE: "msCertificateTemplate", + ExtensionOID.ADMISSIONS: "Admissions", + CRLEntryExtensionOID.CRL_REASON: "cRLReason", + CRLEntryExtensionOID.INVALIDITY_DATE: "invalidityDate", + CRLEntryExtensionOID.CERTIFICATE_ISSUER: "certificateIssuer", + ExtensionOID.NAME_CONSTRAINTS: "nameConstraints", + ExtensionOID.CRL_DISTRIBUTION_POINTS: "cRLDistributionPoints", + ExtensionOID.CERTIFICATE_POLICIES: "certificatePolicies", + ExtensionOID.POLICY_MAPPINGS: "policyMappings", + ExtensionOID.AUTHORITY_KEY_IDENTIFIER: "authorityKeyIdentifier", + ExtensionOID.POLICY_CONSTRAINTS: "policyConstraints", + ExtensionOID.EXTENDED_KEY_USAGE: "extendedKeyUsage", + ExtensionOID.FRESHEST_CRL: "freshestCRL", + ExtensionOID.INHIBIT_ANY_POLICY: "inhibitAnyPolicy", + ExtensionOID.ISSUING_DISTRIBUTION_POINT: "issuingDistributionPoint", + ExtensionOID.AUTHORITY_INFORMATION_ACCESS: "authorityInfoAccess", + ExtensionOID.SUBJECT_INFORMATION_ACCESS: "subjectInfoAccess", + ExtensionOID.OCSP_NO_CHECK: "OCSPNoCheck", + ExtensionOID.CRL_NUMBER: "cRLNumber", + ExtensionOID.DELTA_CRL_INDICATOR: "deltaCRLIndicator", + ExtensionOID.TLS_FEATURE: "TLSFeature", + AuthorityInformationAccessOID.OCSP: "OCSP", + AuthorityInformationAccessOID.CA_ISSUERS: "caIssuers", + SubjectInformationAccessOID.CA_REPOSITORY: "caRepository", + CertificatePoliciesOID.CPS_QUALIFIER: "id-qt-cps", + CertificatePoliciesOID.CPS_USER_NOTICE: "id-qt-unotice", + OCSPExtensionOID.NONCE: "OCSPNonce", + AttributeOID.CHALLENGE_PASSWORD: "challengePassword", +} diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/asn1/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/asn1/__init__.py new file mode 100644 index 0000000..ac3d4bd --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/asn1/__init__.py @@ -0,0 +1,43 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.hazmat.asn1.asn1 import ( + TLV, + BitString, + Default, + Explicit, + GeneralizedTime, + IA5String, + Implicit, + Null, + PrintableString, + SetOf, + Size, + UTCTime, + Variant, + decode_der, + encode_der, + sequence, + set, +) + +__all__ = [ + "TLV", + "BitString", + "Default", + "Explicit", + "GeneralizedTime", + "IA5String", + "Implicit", + "Null", + "PrintableString", + "SetOf", + "Size", + "UTCTime", + "Variant", + "decode_der", + "encode_der", + "sequence", + "set", +] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/asn1/asn1.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/asn1/asn1.py new file mode 100644 index 0000000..dde7e10 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/asn1/asn1.py @@ -0,0 +1,439 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import builtins +import dataclasses +import sys +import types +import typing + +if sys.version_info < (3, 11): + import typing_extensions + + LiteralString = typing_extensions.LiteralString + + # We use the `include_extras` parameter of `get_type_hints`, which was + # added in Python 3.9. This can be replaced by the `typing` version + # once the min version is >= 3.9 + if sys.version_info < (3, 9): + get_type_hints = typing_extensions.get_type_hints + get_type_args = typing_extensions.get_args + get_type_origin = typing_extensions.get_origin + Annotated = typing_extensions.Annotated + else: + get_type_hints = typing.get_type_hints + get_type_args = typing.get_args + get_type_origin = typing.get_origin + Annotated = typing.Annotated +else: + get_type_hints = typing.get_type_hints + get_type_args = typing.get_args + get_type_origin = typing.get_origin + Annotated = typing.Annotated + LiteralString = typing.LiteralString + +if sys.version_info < (3, 10): + NoneType = type(None) +else: + NoneType = types.NoneType # type: ignore[nonetype-type] + +from cryptography.hazmat.bindings._rust import declarative_asn1 + +T = typing.TypeVar("T", covariant=True) +U = typing.TypeVar("U") +Tag = typing.TypeVar("Tag", bound=LiteralString) + + +@dataclasses.dataclass(frozen=True) +class Variant(typing.Generic[U, Tag]): + """ + A tagged variant for CHOICE fields with the same underlying type. + + Use this when you have multiple CHOICE alternatives with the same type + and need to distinguish between them: + + foo: ( + Annotated[Variant[int, typing.Literal["IntA"]], Implicit(0)] + | Annotated[Variant[int, typing.Literal["IntB"]], Implicit(1)] + ) + + Usage: + example = Example(foo=Variant(5, "IntA")) + decoded.foo.value # The int value + decoded.foo.tag # "IntA" or "IntB" + """ + + value: U + tag: str + + +decode_der = declarative_asn1.decode_der +encode_der = declarative_asn1.encode_der + + +def _is_union(field_type: type) -> bool: + # NOTE: types.UnionType for `T | U`, typing.Union for `Union[T, U]`. + # TODO: Drop the `hasattr()` once the minimum supported Python version + # is >= 3.10. + union_types = ( + (types.UnionType, typing.Union) + if hasattr(types, "UnionType") + else (typing.Union,) + ) + return get_type_origin(field_type) in union_types + + +def _extract_annotation( + metadata: tuple, field_name: str +) -> declarative_asn1.Annotation: + default = None + encoding = None + size = None + for raw_annotation in metadata: + if isinstance(raw_annotation, Default): + if default is not None: + raise TypeError( + f"multiple DEFAULT annotations found in field " + f"'{field_name}'" + ) + default = raw_annotation.value + elif isinstance(raw_annotation, declarative_asn1.Encoding): + if encoding is not None: + raise TypeError( + f"multiple IMPLICIT/EXPLICIT annotations found in field " + f"'{field_name}'" + ) + encoding = raw_annotation + elif isinstance(raw_annotation, declarative_asn1.Size): + if size is not None: + raise TypeError( + f"multiple SIZE annotations found in field '{field_name}'" + ) + size = raw_annotation + else: + raise TypeError(f"unsupported annotation: {raw_annotation}") + + return declarative_asn1.Annotation( + default=default, encoding=encoding, size=size + ) + + +def _normalize_field_type( + field_type: typing.Any, field_name: str +) -> declarative_asn1.AnnotatedType: + # Strip the `Annotated[...]` off, and populate the annotation + # from it if it exists. + if get_type_origin(field_type) is Annotated: + annotation = _extract_annotation(field_type.__metadata__, field_name) + field_type, *_ = get_type_args(field_type) + else: + annotation = declarative_asn1.Annotation() + + if annotation.size is not None and ( + get_type_origin(field_type) not in (builtins.list, SetOf) + and field_type + not in ( + builtins.bytes, + builtins.str, + BitString, + IA5String, + PrintableString, + ) + ): + raise TypeError( + f"field '{field_name}' has a SIZE annotation, but SIZE " + "annotations are only supported for fields of types: " + "[SEQUENCE OF, SET OF, BIT STRING, OCTET STRING, UTF8String, " + "PrintableString, IA5String]" + ) + + if field_type is TLV: + if isinstance(annotation.encoding, Implicit): + raise TypeError( + f"field '{field_name}' has an IMPLICIT annotation, but " + "IMPLICIT annotations are not supported for TLV types." + ) + elif annotation.default is not None: + raise TypeError( + f"field '{field_name}' has a DEFAULT annotation, but " + "DEFAULT annotations are not supported for TLV types." + ) + + if hasattr(field_type, "__asn1_root__"): + root_type = field_type.__asn1_root__ + if not isinstance( + root_type, + (declarative_asn1.Type.Sequence, declarative_asn1.Type.Set), + ): + raise TypeError(f"unsupported root type: {root_type}") + return declarative_asn1.AnnotatedType( + typing.cast(declarative_asn1.Type, root_type), annotation + ) + elif _is_union(field_type): + union_args = get_type_args(field_type) + if len(union_args) == 2 and NoneType in union_args: + # A Union between a type and None is an OPTIONAL + optional_type = ( + union_args[0] if union_args[1] is type(None) else union_args[1] + ) + if optional_type is TLV: + raise TypeError( + "optional TLV types (`TLV | None`) are not " + "currently supported" + ) + annotated_type = _normalize_field_type(optional_type, field_name) + + if not annotated_type.annotation.is_empty(): + raise TypeError( + "optional (`X | None`) types cannot have `X` " + "annotated: annotations must apply to the union " + "(i.e: `Annotated[X | None, annotation]`)" + ) + + if annotation.default is not None: + raise TypeError( + "optional (`X | None`) types should not have a DEFAULT " + "annotation" + ) + + rust_field_type = declarative_asn1.Type.Option(annotated_type) + + else: + # Otherwise, the Union is a CHOICE + if isinstance(annotation.encoding, Implicit): + # CHOICEs cannot be IMPLICIT. See X.680 section 31.2.9. + raise TypeError( + "CHOICE (`X | Y | ...`) types should not have an IMPLICIT " + "annotation" + ) + variants = [ + _type_to_variant(arg, field_name) + for arg in union_args + if arg is not type(None) + ] + + # Union types should either be all Variants + # (`Variant[..] | Variant[..] | etc`) or all non Variants + are_union_types_tagged = variants[0].tag_name is not None + if any( + (v.tag_name is not None) != are_union_types_tagged + for v in variants + ): + raise TypeError( + "When using `asn1.Variant` in a union, all the other " + "types in the union must also be `asn1.Variant`" + ) + + if are_union_types_tagged: + tags = {v.tag_name for v in variants} + if len(variants) != len(tags): + raise TypeError( + "When using `asn1.Variant` in a union, the tags used " + "must be unique" + ) + + rust_choice_type = declarative_asn1.Type.Choice(variants) + # If None is part of the union types, this is an OPTIONAL CHOICE + rust_field_type = ( + declarative_asn1.Type.Option( + declarative_asn1.AnnotatedType( + rust_choice_type, declarative_asn1.Annotation() + ) + ) + if NoneType in union_args + else rust_choice_type + ) + + elif get_type_origin(field_type) is builtins.list: + inner_type = _normalize_field_type( + get_type_args(field_type)[0], field_name + ) + rust_field_type = declarative_asn1.Type.SequenceOf(inner_type) + elif get_type_origin(field_type) is SetOf: + inner_type = _normalize_field_type( + get_type_args(field_type)[0], field_name + ) + rust_field_type = declarative_asn1.Type.SetOf(inner_type) + else: + rust_field_type = declarative_asn1.non_root_python_to_rust(field_type) + + return declarative_asn1.AnnotatedType(rust_field_type, annotation) + + +# Convert a type to a Variant. Used with types inside Union +# annotations (T1, T2, etc in `Union[T1, T2, ...]`). +def _type_to_variant( + t: typing.Any, field_name: str +) -> declarative_asn1.Variant: + is_annotated = get_type_origin(t) is Annotated + inner_type = get_type_args(t)[0] if is_annotated else t + + # Check if this is a Variant[T, Tag] type + if get_type_origin(inner_type) is Variant: + value_type, tag_literal = get_type_args(inner_type) + if get_type_origin(tag_literal) is not typing.Literal: + raise TypeError( + "When using `asn1.Variant` in a type annotation, the second " + "type parameter must be a `typing.Literal` type. E.g: " + '`Variant[int, typing.Literal["MyInt"]]`.' + ) + tag_name = get_type_args(tag_literal)[0] + + if hasattr(value_type, "__asn1_root__"): + rust_type = value_type.__asn1_root__ + else: + rust_type = declarative_asn1.non_root_python_to_rust(value_type) + + if is_annotated: + ann_type = declarative_asn1.AnnotatedType( + rust_type, + _extract_annotation(t.__metadata__, field_name), + ) + else: + ann_type = declarative_asn1.AnnotatedType( + rust_type, + declarative_asn1.Annotation(), + ) + + return declarative_asn1.Variant(Variant, ann_type, tag_name) + else: + # Plain type (not a tagged Variant) + return declarative_asn1.Variant( + inner_type, + _normalize_field_type(t, field_name), + None, + ) + + +def _annotate_fields( + raw_fields: dict[str, type], +) -> dict[str, declarative_asn1.AnnotatedType]: + fields = {} + for field_name, field_type in raw_fields.items(): + # Recursively normalize the field type into something that the + # Rust code can understand. + annotated_field_type = _normalize_field_type(field_type, field_name) + fields[field_name] = annotated_field_type + + return fields + + +def _register_asn1_sequence(cls: type[U]) -> None: + raw_fields = get_type_hints(cls, include_extras=True) + root = declarative_asn1.Type.Sequence(cls, _annotate_fields(raw_fields)) + + setattr(cls, "__asn1_root__", root) + + +def _register_asn1_set(cls: type[U]) -> None: + raw_fields = get_type_hints(cls, include_extras=True) + root = declarative_asn1.Type.Set(cls, _annotate_fields(raw_fields)) + + setattr(cls, "__asn1_root__", root) + + +# Due to https://github.com/python/mypy/issues/19731, we can't define an alias +# for `dataclass_transform` that conditionally points to `typing` or +# `typing_extensions` depending on the Python version (like we do for +# `get_type_hints`). +# We work around it by making the whole decorated class conditional on the +# Python version. +if sys.version_info < (3, 11): + + @typing_extensions.dataclass_transform(kw_only_default=True) + def sequence(cls: type[U]) -> type[U]: + # We use `dataclasses.dataclass` to add an __init__ method + # to the class with keyword-only parameters. + if sys.version_info >= (3, 10): + dataclass_cls = dataclasses.dataclass( + repr=False, + eq=False, + # `match_args` was added in Python 3.10 and defaults + # to True + match_args=False, + # `kw_only` was added in Python 3.10 and defaults to + # False + kw_only=True, + )(cls) + else: + dataclass_cls = dataclasses.dataclass( + repr=False, + eq=False, + )(cls) + _register_asn1_sequence(dataclass_cls) + return dataclass_cls + + @typing_extensions.dataclass_transform(kw_only_default=True) + def set(cls: type[U]) -> type[U]: + # We use `dataclasses.dataclass` to add an __init__ method + # to the class with keyword-only parameters. + if sys.version_info >= (3, 10): + dataclass_cls = dataclasses.dataclass( + repr=False, + eq=False, + # `match_args` was added in Python 3.10 and defaults + # to True + match_args=False, + # `kw_only` was added in Python 3.10 and defaults to + # False + kw_only=True, + )(cls) + else: + dataclass_cls = dataclasses.dataclass( + repr=False, + eq=False, + )(cls) + _register_asn1_set(dataclass_cls) + return dataclass_cls + +else: + + @typing.dataclass_transform(kw_only_default=True) + def sequence(cls: type[U]) -> type[U]: + # Only add an __init__ method, with keyword-only + # parameters. + dataclass_cls = dataclasses.dataclass( + repr=False, + eq=False, + match_args=False, + kw_only=True, + )(cls) + _register_asn1_sequence(dataclass_cls) + return dataclass_cls + + @typing.dataclass_transform(kw_only_default=True) + def set(cls: type[U]) -> type[U]: + # Only add an __init__ method, with keyword-only + # parameters. + dataclass_cls = dataclasses.dataclass( + repr=False, + eq=False, + match_args=False, + kw_only=True, + )(cls) + _register_asn1_set(dataclass_cls) + return dataclass_cls + + +# TODO: replace with `Default[U]` once the min Python version is >= 3.12 +@dataclasses.dataclass(frozen=True) +class Default(typing.Generic[U]): + value: U + + +SetOf = declarative_asn1.SetOf + +Explicit = declarative_asn1.Encoding.Explicit +Implicit = declarative_asn1.Encoding.Implicit +Size = declarative_asn1.Size + +PrintableString = declarative_asn1.PrintableString +IA5String = declarative_asn1.IA5String +UTCTime = declarative_asn1.UTCTime +GeneralizedTime = declarative_asn1.GeneralizedTime +BitString = declarative_asn1.BitString +TLV = declarative_asn1.Tlv +Null = declarative_asn1.Null diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/backends/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/backends/__init__.py new file mode 100644 index 0000000..b4400aa --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/backends/__init__.py @@ -0,0 +1,13 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from typing import Any + + +def default_backend() -> Any: + from cryptography.hazmat.backends.openssl.backend import backend + + return backend diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/backends/openssl/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/backends/openssl/__init__.py new file mode 100644 index 0000000..51b0447 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/backends/openssl/__init__.py @@ -0,0 +1,9 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.backends.openssl.backend import backend + +__all__ = ["backend"] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/backends/openssl/backend.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/backends/openssl/backend.py new file mode 100644 index 0000000..d245a42 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/backends/openssl/backend.py @@ -0,0 +1,310 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.bindings.openssl import binding +from cryptography.hazmat.primitives import hashes +from cryptography.hazmat.primitives._asymmetric import AsymmetricPadding +from cryptography.hazmat.primitives.asymmetric import ec +from cryptography.hazmat.primitives.asymmetric import utils as asym_utils +from cryptography.hazmat.primitives.asymmetric.padding import ( + MGF1, + OAEP, + PSS, + PKCS1v15, +) +from cryptography.hazmat.primitives.ciphers import ( + CipherAlgorithm, +) +from cryptography.hazmat.primitives.ciphers.algorithms import ( + AES, +) +from cryptography.hazmat.primitives.ciphers.modes import ( + CBC, + Mode, +) + + +class Backend: + """ + OpenSSL API binding interfaces. + """ + + name = "openssl" + + # TripleDES encryption is disallowed/deprecated throughout 2023 in + # FIPS 140-3. To keep it simple we denylist any use of TripleDES (TDEA). + _fips_ciphers = (AES,) + # Sometimes SHA1 is still permissible. That logic is contained + # within the various *_supported methods. + _fips_hashes = ( + hashes.SHA224, + hashes.SHA256, + hashes.SHA384, + hashes.SHA512, + hashes.SHA512_224, + hashes.SHA512_256, + hashes.SHA3_224, + hashes.SHA3_256, + hashes.SHA3_384, + hashes.SHA3_512, + hashes.SHAKE128, + hashes.SHAKE256, + ) + _fips_ecdh_curves = ( + ec.SECP224R1, + ec.SECP256R1, + ec.SECP384R1, + ec.SECP521R1, + ) + _fips_rsa_min_key_size = 2048 + _fips_rsa_min_public_exponent = 65537 + _fips_dsa_min_modulus = 1 << 2048 + _fips_dh_min_key_size = 2048 + _fips_dh_min_modulus = 1 << _fips_dh_min_key_size + + def __init__(self) -> None: + self._binding = binding.Binding() + self._ffi = self._binding.ffi + self._lib = self._binding.lib + self._fips_enabled = rust_openssl.is_fips_enabled() + + def __repr__(self) -> str: + return ( + f"" + ) + + def openssl_assert(self, ok: bool) -> None: + return binding._openssl_assert(ok) + + def _enable_fips(self) -> None: + # This function enables FIPS mode for OpenSSL 3.0.0 on installs that + # have the FIPS provider installed properly. + rust_openssl.enable_fips(rust_openssl._providers) + assert rust_openssl.is_fips_enabled() + self._fips_enabled = rust_openssl.is_fips_enabled() + + def openssl_version_text(self) -> str: + """ + Friendly string name of the loaded OpenSSL library. This is not + necessarily the same version as it was compiled against. + + Example: OpenSSL 3.2.1 30 Jan 2024 + """ + return rust_openssl.openssl_version_text() + + def openssl_version_number(self) -> int: + return rust_openssl.openssl_version() + + def hash_supported(self, algorithm: hashes.HashAlgorithm) -> bool: + if self._fips_enabled and not isinstance(algorithm, self._fips_hashes): + return False + + return rust_openssl.hashes.hash_supported(algorithm) + + def signature_hash_supported( + self, algorithm: hashes.HashAlgorithm + ) -> bool: + # Dedicated check for hashing algorithm use in message digest for + # signatures, e.g. RSA PKCS#1 v1.5 SHA1 (sha1WithRSAEncryption). + if self._fips_enabled and isinstance(algorithm, hashes.SHA1): + return False + return self.hash_supported(algorithm) + + def scrypt_supported(self) -> bool: + if self._fips_enabled: + return False + else: + return hasattr(rust_openssl.kdf.Scrypt, "derive") + + def argon2_supported(self) -> bool: + if self._fips_enabled: + return False + else: + return hasattr(rust_openssl.kdf.Argon2id, "derive") + + def hmac_supported(self, algorithm: hashes.HashAlgorithm) -> bool: + # FIPS mode still allows SHA1 for HMAC + if self._fips_enabled and isinstance(algorithm, hashes.SHA1): + return True + if rust_openssl.CRYPTOGRAPHY_IS_AWSLC: + return isinstance( + algorithm, + ( + hashes.MD5, + hashes.SHA1, + hashes.SHA224, + hashes.SHA256, + hashes.SHA384, + hashes.SHA512, + hashes.SHA512_224, + hashes.SHA512_256, + ), + ) + return self.hash_supported(algorithm) + + def cipher_supported(self, cipher: CipherAlgorithm, mode: Mode) -> bool: + if self._fips_enabled: + # FIPS mode requires AES. TripleDES is disallowed/deprecated in + # FIPS 140-3. + if not isinstance(cipher, self._fips_ciphers): + return False + + return rust_openssl.ciphers.cipher_supported(cipher, mode) + + def pbkdf2_hmac_supported(self, algorithm: hashes.HashAlgorithm) -> bool: + return self.hmac_supported(algorithm) + + def _consume_errors(self) -> list[rust_openssl.OpenSSLError]: + return rust_openssl.capture_error_stack() + + def _oaep_hash_supported(self, algorithm: hashes.HashAlgorithm) -> bool: + if self._fips_enabled and isinstance(algorithm, hashes.SHA1): + return False + + return isinstance( + algorithm, + ( + hashes.SHA1, + hashes.SHA224, + hashes.SHA256, + hashes.SHA384, + hashes.SHA512, + ), + ) + + def rsa_padding_supported(self, padding: AsymmetricPadding) -> bool: + if isinstance(padding, PKCS1v15): + return True + elif isinstance(padding, PSS) and isinstance(padding._mgf, MGF1): + # FIPS 186-4 only allows salt length == digest length for PSS + # It is technically acceptable to set an explicit salt length + # equal to the digest length and this will incorrectly fail, but + # since we don't do that in the tests and this method is + # private, we'll ignore that until we need to do otherwise. + if ( + self._fips_enabled + and padding._salt_length != PSS.DIGEST_LENGTH + ): + return False + return self.hash_supported(padding._mgf._algorithm) + elif isinstance(padding, OAEP) and isinstance(padding._mgf, MGF1): + return self._oaep_hash_supported( + padding._mgf._algorithm + ) and self._oaep_hash_supported(padding._algorithm) + else: + return False + + def rsa_encryption_supported(self, padding: AsymmetricPadding) -> bool: + if self._fips_enabled and isinstance(padding, PKCS1v15): + return False + else: + return self.rsa_padding_supported(padding) + + def dsa_supported(self) -> bool: + return ( + not rust_openssl.CRYPTOGRAPHY_IS_BORINGSSL + and not self._fips_enabled + ) + + def dsa_hash_supported(self, algorithm: hashes.HashAlgorithm) -> bool: + if not self.dsa_supported(): + return False + return self.signature_hash_supported(algorithm) + + def cmac_algorithm_supported(self, algorithm) -> bool: + return self.cipher_supported( + algorithm, CBC(b"\x00" * algorithm.block_size) + ) + + def elliptic_curve_supported(self, curve: ec.EllipticCurve) -> bool: + if self._fips_enabled and not isinstance( + curve, self._fips_ecdh_curves + ): + return False + + return rust_openssl.ec.curve_supported(curve) + + def elliptic_curve_signature_algorithm_supported( + self, + signature_algorithm: ec.EllipticCurveSignatureAlgorithm, + curve: ec.EllipticCurve, + ) -> bool: + # We only support ECDSA right now. + if not isinstance(signature_algorithm, ec.ECDSA): + return False + + return self.elliptic_curve_supported(curve) and ( + isinstance(signature_algorithm.algorithm, asym_utils.Prehashed) + or self.hash_supported(signature_algorithm.algorithm) + ) + + def elliptic_curve_exchange_algorithm_supported( + self, algorithm: ec.ECDH, curve: ec.EllipticCurve + ) -> bool: + return self.elliptic_curve_supported(curve) and isinstance( + algorithm, ec.ECDH + ) + + def dh_supported(self) -> bool: + return ( + not rust_openssl.CRYPTOGRAPHY_IS_BORINGSSL + and not rust_openssl.CRYPTOGRAPHY_IS_AWSLC + ) + + def dh_x942_serialization_supported(self) -> bool: + return self._lib.Cryptography_HAS_EVP_PKEY_DHX == 1 + + def x25519_supported(self) -> bool: + return not self._fips_enabled + + def x448_supported(self) -> bool: + if self._fips_enabled: + return False + return ( + not rust_openssl.CRYPTOGRAPHY_IS_LIBRESSL + and not rust_openssl.CRYPTOGRAPHY_IS_BORINGSSL + and not rust_openssl.CRYPTOGRAPHY_IS_AWSLC + ) + + def mlkem_supported(self) -> bool: + return ( + rust_openssl.CRYPTOGRAPHY_IS_AWSLC + or rust_openssl.CRYPTOGRAPHY_IS_BORINGSSL + ) + + def mldsa_supported(self) -> bool: + return ( + rust_openssl.CRYPTOGRAPHY_IS_AWSLC + or rust_openssl.CRYPTOGRAPHY_IS_BORINGSSL + ) + + def ed25519_supported(self) -> bool: + return True + + def ed448_supported(self) -> bool: + return ( + not rust_openssl.CRYPTOGRAPHY_IS_LIBRESSL + and not rust_openssl.CRYPTOGRAPHY_IS_BORINGSSL + and not rust_openssl.CRYPTOGRAPHY_IS_AWSLC + ) + + def ecdsa_deterministic_supported(self) -> bool: + return ( + rust_openssl.CRYPTOGRAPHY_OPENSSL_320_OR_GREATER + and not self._fips_enabled + ) + + def poly1305_supported(self) -> bool: + return not self._fips_enabled + + def pkcs7_supported(self) -> bool: + return True + + +backend = Backend() diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/__init__.py new file mode 100644 index 0000000..b509336 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/__init__.py @@ -0,0 +1,3 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust.abi3.so b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust.abi3.so new file mode 100755 index 0000000000000000000000000000000000000000..0082e9af8c155594cabe492b3fe3f95c32cfcd18 GIT binary patch literal 13621264 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୉J>;9JTj*h>A*Sg-E2mbs0b>W59`*0gi01x!K z7QqjDs+?y=@Zfa4pM>9fhtwzVbM!gV1YVsleWvhx9OrI64`%Qa_4DZrUd^P>9DbXh zOP>P%?o(x5mGE5Wy@p%8v!k8Aujf4vZuLGq(E1R5bG?6#;He%*3Eb*ac&+2l;Z|S3 zQ~MkTxB42MXuZ3CI|r-x;I7sOaH|jDxt`}^xaFC^L%TnRTmKwhYkdi~`U;-db*JCn zUmK4L&vbu%xb+X1>EXOc&g*6;a2ZFsGWnS^&Z^D z@53Ff58+lH!7Ckq0=N1U?rQ%WZuJE`()tQ+_c=8@)$68vKs$#U?JVcLF1-4%oR@m= z6ZVkvk`KSD-j4h~YM03B1<)Gq}xH4tKP^gj+rp+}GpCIjFtAx3cFL@KF2vaO)qy zYdx<E^tPvDh4f5_lgpTm7y|8T3X;J(hU^YDMazb?Gg{C&86-VflV z-T%O?K86=|{{y%2XK+u)U%;)tgs0lShFiV!h;|N@t$(=H`|w=rL%7vPaL?91+>VzN z9_jfchg*FC&vkz*xQ(ZVhuYtLWIKmPd{^(2;ngekJ{f**eV*XMZMy+H)8l9gzn?x| z&EWRE{G6`eXSJeVWv#@Y~!) zuH#d9_D<-vEgZWFUPlnrm z`Ebj*4=+xW@eJT^)$xb$uj~7;huiqI)ERe`xU}J_C3jG2#+2k z`!#|;VSlL~!~G*3y~!ts-}UwSeeM>ox48S{cAnP9-{RpGkKs2-Wjra|`sZ-_U0Vr% z>l^fb68>&=_bFS(zs18X9&hm!{`7NYJURSX>LuKM2VKLh-aWiM{^w{PAO6HQ%XUL} z^ZP#dV_vWKIdD&(Gfdz=()*AU{#iX=P2tY-WZll-57Tv?!|%1H9M^Mrr03xUe83P6~H`gh6^&#oggWGj#1iwPB zr!m}~t4!dr9?vuQFYYBd=kV-I8BYQ4UM=fn0pIZ==~KcJ&AEbKrRVL@k?q{hd9U<| z;n`U-o&UY#p_GWZYles~7A`;#1A>2Q12Yo z&f$yaOMMS+zZ)9Bt$qZ*WhQ+la65m_;MRWuxB3;_>N`ib$8X+)Tc5!eA8qjo-1^Vp z*1v@3|NWTFb+8k)$C>NrG8dlc{Ces`xUharnBvOolpMHX3P zkp(7*EV9TV3k*g?z0=b*sHU#*Uf;X_egF49{C!w8zdn8HRMn~2)zxVnf1cK(bdEQr zJcHw&w+ua*9A7lTXqP&3JlCul^AV00?!8>47$!x z!g1gHu9V~McMUz|9M7ZvU%_!-K38%)jrw6V$9?(i`NTi}SJQfz!|}8q414l8P9_=U zQo!*Z)XqYVgNNo1$LG-grSemMdkQWZ?TNdyKfg}bF%mdlG1}1Ig6E%T-g=tG@lRA=*i~zR@xqVIR4Q~hF|4y9OyhNkK`kGynXrh%tCN$ID_3?&0`K+D_(h+}+2pCy(O^ zG(QVC{_<4A&O(lR=z3!@$17>Q^JMwkKVZ9|Cx_!DbbOe{@t^59vw-7YcQE|FkmK%o zM!JeQZl?KM&GA3cdIW#*x6{`yg>gKMrZbDQ}`a_k3cc ztCZupG+kvJ_w^&?9EVAUo=T4U`jLdc`sc%Z>OUzQ_oXYH;}x_WDd6}5TJD7$_vtC& zcnPf!6&!z`mRBXmOK7^PIewA0hwwN5bd}J2mN;JUxsg9%9RHfOKWX3i>zVzn=B=mc z9IyDNp{Fg!-=gJJIniGaBxZQ^be`nT-LVF*bXC~zd9Iv4I(>Y#9pDSf?{Ifnryty3r*;&N#fAllt z6Q=sx<34T77g8R;vpIhJWuss4Jb;&S{2G-n<9OqILr++tzdgSXFu0rJ8+T}iKXAPB z978^f;~lAeGFzm17_|G)GRUA*K zYv^xLqM<*H;}dAP=WslP`e!c3ThVea=lIiEMtUnaUOv=_H({>7J@s1}@+lnu zXqq9P&G9;S4DR80rZ?MxQO)4nnC zznJ5FX#SUQd>PGuX}-TbA=Dm?<8Oav*x8oj1=N2sIWE6qSaGiduzz;SH@^?!~}i8Inw#qrK&>i-Ms6U4-_P1xZul?tE7VY0Vb9^oJhb)dq({`hnbEyARbNoH(&#=VbPIm*t-_kkm zIAD}l2FEje?LWugr2baG@y>L-SIP0ibX;1+@mwn3VyVBK=V|$-aXg#alf&`nY5wPO zJo|=`-g1tcjvM(|!SQT5{!CcrZ%+bkXHqy`NXJ*%9B)kh$HVblI({hS_!qRDEaUif znr~st{q51N8}_?7{xq#$ojLw{%Ck7$m$n1N9Dj`VcO@MEh_-vu3V(b4Nc~OY_@CMt ze$|%a*XejBljGUHH_EG!08_@n2R{GmnK>Z<|Jh6R7>^9B)YboeYkr(Ecuu$7}I=-#s z_)wq!bG(r97VG@&97FRbjpN0%zsTYETeN(0Ii5$y1LYil*XREnPoeY2g!TURyg>6O zh2z>O!ymFa9!=W^568RE`9dkj$J25w<9G@kPlj#qx2FLeC%ZY`mX=p%jz2-$lPr!y zcf_(9`%Cav#nIUY^>uS||7P^rDfUl^j1r`>!gFx268pVw1m}BYpE< zj%U;I&EfbQDxb^oG`c=e&hgLb_^pEDrM~gcW`BFO)B2vmaX0P1vN_(&=l>kfp#EIS z@igi`WgO3-?N!*1{`Ndc`*%0Tt9|odjt`{mXBNlH==iOe<6~$&E#Y_;?H{Er{`L$D zFvd9=$1`aDwB>j{Z6`B1UO>yYkmH-;4E;qM&!F|Cn&aR2{C}&zomD>n=lI`fdziuT zLb`sH$MFF^|L1rawZD?%&1rqF;<(2*{@Lbl=Qp&zr*XX6H~-~$7us*;avTmBVcf&+)UgzL#)3oyto){Ox(2_AeU8v*~(5TaH&yf6nB1 z0hKT0cwaiME8=(&O>Z^Fr_lNiJN@k}p!17#jxVPDZwALbwEfBBcqPsM0*)t8f2-v9 zC_2BW;<$&_-xj<4?fk?y{^xiO?N4(!zL&0VNzOKJC|FpTC_&v>ekp9!ulR;CMFeH}g1tl*U`Y z@gnM1l^kD0$JJFFFQe^zi*kQEr_g$r#_=**k8(J^jkc?~98deiXlKefUP#;j3XYd< zHRKca``c4Q>thPX%V~PEIlh|O@8Ng~omZA}yesv?GL9F~dJ%TO-<}ugILFQLGHPdM zj^|VTSsc%y^{ANRt>`$vgyY4&ari-hdu~yG&^TUB{jDv>chYt*lj8++ouQE9&-?tJ zNu^bG&GpA)oO8 zp2zV=Y5gsD0I%eD@E;8QRS)1Tj`-Wzj`~~L19%R{NBic*58zcC&wcAN@ALg?j=S3$ z9FF?iQ}w37C5~skV{nb*8B~85&#C?tj+eY^=xM?6D$3J14pe_S$4e;B;J8M4TaJ6E zJ)Jq8^08r07RNIvFX4EPOk><$%JHmqfAZ#Y8OLFp!OJ=B*=q0#ju&h(cqPX@R8JMh z(`dZa9M>p^ikZg#4)6Z~QYe==?x`^1b#wgL&c?b^0>^#nP2qS6O;-z!`_h}nabJ4V zIqpku2FHErZOd_AdNVohOK)e6`_h}sacK9sH>dJAUi6{C3puW}H+T`p)2Mtg$AR)P zj#p4#&T(J7l^l0dJF7VEi?^ENzIfr7zdyL?Z{J_vcU7KSZM0(voP5@IMtV~?UhtK{ zTX4MU8-u5D+(YHlIbKHPJ99iup6o3b564@qFy@0f98X(g#GA|U+|>rp<9JGm!3#NF zvC`m094}a5@KTPKtu=TV$1|yXIme-%k*-RPR|JK7(_6*!WP?k`{mZc^FWW1xaXf3J z!NWLSM&;8uo;K#6UOnj?2g=)WylAu`pUH8bd}oe(sJw^ce=jxK)f|pLx4_`J93MT) z@XtJsck62K0*?2j`U^S!+>3^M5yxjy{ly$lv>Eax9B;pqK7ZtRj}Zp1~wSd^Y3Z<&+$)aex`A}E{!*x z~VA4rze5u zR8I=WVWCl8EjaGelg9B3s>j3e0{Ywc*Vms`%`@h|g`B+Si|@StQ^fJ2KO4M+;~9T5 zcqzwIs2(`wpU*i%jd&%Fdpw37jpHelCvZHiyCI*#@sb}5p22a?*9Onz_)J<}IUFzR zZ^#$(yr02KIG(c0NLLxh(?%Qel^ib^Z}2LPXHogE)BgEZGR}~9bKJAp;0YYhqCAb` znUtqDO$~ceIDU%Cr*XX7+lG8P$Nx_4&*6BB*NlA2<@lXmhMoeBckN)v7jnGa zr?gx+KBB*&r-b7_(003wea+m*eKs zhCLd`Lut8(aXdfJ(38ONzdvs96ppW;cBXOsI<0r<98aeCoXhbv{93Mg3 zpAwE=rR)C{9M7coRC0VVt-nyOGg?vt<34#0$M+pE>O}#^efAV``~t1- zB^ug4a&zhJX2b?iP5t#_^O_#(R0`*crxk@BeH6ms9Y|JY(7~bI+z< z<`oa%Vx>#!*HKZ z=$CUCZe!$&7_KnfP4iQa)6Vb=hN}!OWVqoW#>FCr8y;ft5{4TdV(?Oi8!N5`FJrhd zBQtn8!;Lp^4G!aL^D~$t{g1@(5Qev4cqqfu7#_y(bcP!%rN+gS3AORoVdT>oUYFq+ z43A)VCc`5cUc&Ht3~w>9Hr^oYu?;c*O4 zn_3%h1BMqcJf7hRwEpUTn85H-h9@$-oZ(3fub5REZ!*KB*|oeO!!?FCVt80lt$bsK zyBYon!&4ZZ!tiQ_H(@x;t<~R@;TpqJ8D7coW(+TzSF5Kv!^;`|D8q{v)XG1`@U(@s zyamH^7uE8|8D7BfmJBaq_!A5-Wq2!wYm003KgsYghCjt{H^ZN1cml)I7+$u#R{tvu zFK76x46k7LYYeYscpHXSG5mFgS2H|=;jp6Co;MgSG5mK7*BJgL!^0T<7Q@{Pf1BY6 z41b5=DGYy?;Vl^6mf>j(|2@Og8U7x_GZ_9p!`m|a1BPcZ{6mI!W_UY>XED4z!#xbo zWOyFKJ21R};T;)X#PCiGFJ|~h3@>B&#|$rL_$LgnWca5HuVQ#-hQrEQ|1owN7#Agm z|ACR$82(3whcWz540ki!c=BjmOkwyJjC>1*|C!2@GOS^mEqY8{~N<| z82%;03mE=)h8HvZ9}F*H_*V=sWq3Bj%NhPP!z&p64Z|xLZampEE>z!!sD(jp3OL@6PZ7hWB82A;Wtzyolkw z7+%8g9EO)Nyf?$k8QzEC6%6mo@G6G)V|X>g`!hVDq&EKtFg%Ch0~wyn@LY!HF?
  • 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%0Dg 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¥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�r2iop7cuC2|mOz{- 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%0AmjVON?u^Qk!ut(F$HL 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

    ;vdWb(obt5&@tp|yF#5nC{dNVqJgEl&)j<8 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

      Feic(7+xS_kB$GrD9Zv%zMi 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%0D*=$?^kQpH#c)=&{Cn^3*ZAxTA6 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�{9}{MJyD?R+F-R2=@QB=2m}PwA56zU;nsm-AaM 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 z�#jLsd3D?`Cwf*jWzU#@_WZbN$EpO4uP3bABO{d7X_PO*(Ucs8lzoyNl}5pAZ#7 z`<)9;vHeru!T}Uj?$2Fr*S@B*Rqdv1H(XxEs?Y`gQ|PI*Xv*e@l|jB-sTU)Rm`*1x z|CRf^FKMF+E2uDVA<5JKWZB9)Zz{wq-c1om(m(XS-yWZG>{63f?*sksna`>JT~eZY z-3F-Xe}kO<=V;yAR)WwsUjMU>_Fw-SN)s091aQTsL>wW@S3>&VD^aaO`dOg=-3@z? zP%gm<(Q0Z(y;hP`grvzpRRAepyV!{a zLyFT2cLi2)59>2}p;-)u-!ZIo=>KbZ#VUz^*0b2LJf7v(v1uzEmm$qKJi!z#SrRr?_e5#15fM=056>udB zC#M4b`l3(;4E)0AziIaZgS`whZirq>O|LtVIwArEVRVRUrEnm4q{}(Y&Kb6P)$7nG z_df(n_CLg)P&w;bcdQve=Kcjh57`1{)Hu57`Jq7^ZWH_9Zlz>WKz8&6lhY z4TxYg^avoTuo);lPFTIoat89ZL+LW zuxWvu-uP9gTdBNstLXx@!|7K4(UfH9D!lq~S-W6Db@yCn9WWp2Fh%NXPaQ_|WyhWE z8R#kt3_i^r%?U~5O2H5Rv$+K7+;@(aOoy@hDJT&Q*=z|ces1*8VMIbU4b1EHw*VF) zxy;W^kYz}CJ*uqk4IKo4_vjr8%yvrd|bg3t)3Ki=a9#Iv`&;{B$ z$q!X5!&RVS8J+?atCSjzs8yWL5yW=W z6-zm4!c?lrfHwI2$$FAs%F_mPn$OUHYP2w|@BeeJVpWo7oKi1Yz|G@f3%L3Gum#*g zen`G9;i;*nYSq)FJZ%Bj$&XN0===1|FMOT_oV1^aRWWLBJNbI7q={g*W#ea(&TK1h zo3^q4J~{;{4E=>EgHH2Hfz0$e?*bOu);-^jYJRnRsoc3Pw`*6Y`BkZb(NY|lab-@+ z+fGG6SD?;$EpG##-Iwf83;WVSH~-)s_C2El4Iu!d+ig2BWtc1p7G(bX@aBIu-Hr>% zY(tz7LF&f;^;!>hsT44$k`5l;t!_TJWC8>c(6ymTIYu+{*>8LFrLV+ zyy^3lqgoYVOiZ?5-0_K&674?GpoA09PT)x&Q%T7f(Kqo#&Zij_6El3lM>Avxt2-acw5FiVcS};+N?w6|_=)TBfy_DzYi6?T{HPVN>#S__w z%p_akB1r#IH0poO$^C5iKMPtKXB3Dh^2|^2N47_#9`!4nSu1_QW|n%YH#W0Mlt9ZY zF(Es9mGMM&d8+XF;km#Q1fQH^b#;#?vW{@U#uD2sE7Gq$B?*q=?uXb3ghXJ1EtLs2 zdNOrQ#uFJaIYJ;#(c2a1#aE^YPcV{cA_j;LyH_;Wk0Y<tUZ0;?$aZTM}{YpOn3aSml0SC`oPa;<>UW?WD~Tdyrad8@%l)45$nLu>&7?e^)Ly zb`?>`Hocbd)IUjzPCeU--`XQ($uvpx^>XG*?U3=6F^{$d<|HQ1A_1HWyRyB82K|;@ zqZR4mC61o^GI%(r2Kh0C*PCmc?0R#?1m|Y?&#`GNU?O*447bqd(o2VBy|AKozZ1$AF-hSTC=RI1Y26&s_Wyy8sgb8&3QcR~ z{;IZxmnbsHjO=CST?*i>)b9a!fMAv3v` zKfjrAZtd8L?5?Pb0{`)pXy4rxRi9qxGV`Slu8KOD$_m|Gb2_l}@6<*=?yecA5yCek z#pr$a#QeK!-c_erBC#o<4Gt__3F6<(1T$sy`MwhVaE~=|18;M8 zmX1bb9<|wgsk@`Z!7QM!* zFejKfBaaij3N{LHg5&!QNk2HjCql001ScMs&k52r)Pob;*p$x+enuJ^S^ZnA&S5+< zf49Akym@#it!A2VcZp8Lv9wZnD(=9WzNX?T$*)KP6;Dv&ge)w#dw%=_gc zVtYQgO-A>83f^CJ`*g7o_I$ns_gDS?z7X_oYu%nU9%-hb?RyD{{@!1;PPMb~%;TF} z4EcJ{P;jklW=`yx&epS9_g77t26rfUf7M>RSqt}%{FrLL*!?3T{}hfuHyh6yyua$% zqosp)zrX77OL`drEh}VYE4Alr+tv?vA1Y0sEf~!lAETEq*8D0Mg_PWxn(1ykLh3(1 z`?!DPa;mDCv51w6ywUi>eG5HILjqM&$hPWi+kiw$izflEH@2Z*mK)Y23zdl#JChs?q&bHxA_xs4Ld*`>XC(mmQ~Fk^bd9t7kHBUfj#jpdwBH0z0?o)W^Kb-*Z*3 zJ3y;|VFgz8!cmb?cP50teP6@FR)UIAd@}tmu%(bvHUv;_Pj~!H>+Q(>RUcl|+dv1q z1kd{tJqKNm0$YrYSOxOdZ$d_%KWL|bWwpDUr~c8k8(Ba&oHKZx;A*LLl)2<`El0wzC7~d+=U_NYfpYWIJ%JhCd4bVJIU!~1p2gYPhMKoGDf3riuNkQ4M z)Q>=?AA#jO!?j0|ER8xI64~epR_a>z6~4b}pL6o@-(wM>Hq~2OL@e`(lyE61^u`tu zwqJ$vY{hvw&yeKK)~IlrwEX{)d?erD3Vkfbu5B45-2GMGxIM&rH@aVg`^&|(5v;E( zz~pcC_p^J!`f^H0Vmrw_+ZInD))VSSVXR9i8yfumRj*8@f$sihkCUl_1sFNGb7AE3z5Vt#>+SxkJ%Fe0{pBAC7orL6$2H!v zdcuB9`kVc!CPE-ixZih{#woWroCa13EDk3t8(K-(vtRyZkDci#K%~-xJZ|?ddy+?> z3AFhVg-C_?*SkhE0q1a*x1L;;KJdZLse<~zHP?M{ec+X@KJSWOCMNvdT;u` zZM^A|YpKuLG;{~zlEyWJdOy&K)HL4Dx;{UTTo^?}Du?FH*=N*{Q-p@2ScADL@MA2^(v`02MTRJaKAfs^L`@AQFN$3+Ol=>xZ&qH$Uq`oO&>I|?YM5B$Qv>|G!D zzAsT&AGm+V9{ND9{$>XgQcLJB;BPi(wu%4G?Qd4i$bMdbvt1Ia_BR`KQocJzC24cV z@cw4ES2LiW%irwcuYeT4o>^UgvpWQZAr$@g>KhzA_qEx&#{JEHKURdC^EXRRa#TFa zRE96)Z}#ko-rvmj_g8iQ*iko#uiO1&XAroI&FEym?;ksp`^Qdp_m4G6%IhAg^J%?i z#wP^S<1YdA_)9>&x9Aq}+fm&WQ15Sg5>W5YQso&2T=lq=>)*94FX>*csxx#Lo6}4E zyq9YQb?fL8yKi5bd%3zMW#eN{$S3_O(nk6}5x{MOkKQLFeZ}7E?Rqp^D}TIUioK=- zd@$#{Thhu@X}4R_Hev`)CVt*U+q?LA7jJDN^XBmqJ3VhmvzN=Mr|YGtyULXmms3i3 zd)TdHM4RGw`q6u}X8$1l&UOl#H-<`r;3+)w);FUtisaoNwz$LG7T4XkjQb}p)BO`0 z(LglR!g^{@Q39Sp6#!wM?j0g*m_y-(8xU%1%iJAgSGnxgA>Mhhx4U^(eUn&6N-BX5 z)EN4`4g0la_j-4SVqK}D(OuHEwR%I((f~)-)Aiscv4_aa#Zll4@jYY^o~jk-iKFn$ zaUz5@eUsQWecaHKf0NjF+W(T?B=+ccH0+G;|9_L%#XnU@gVn!D?6Pn7=Z2mhH;HY_ zXVII)b|RgBlh|LloJ~BZd20(Az!-7=0i~38w#(~r1g)Ymuv zDsX>TEwx7Z*Lc##zx@4S)AtPdR}d$r&-=s9fbC<^?DhVzp@lnF+*jxRyZ48EO~cdu z{;*+W=5eQ?WWb%?{FZU2J$bBo?lkS`{@x$JFW8mu(PQqdVkmjq{I8eHcO!k?Zj9`?hh*^nv@vTlCm80I+l-=x4`A~U|xIk zzJLxg%(DAnUX!R#YFM8BrEP^e-8A~N?v80i>uP>nr=c(I z+6I2wwF7_ZnqQqV#NU_mwuRbyQ5|GRs?%HF0m$yC2Hf^VK92AbkMw7tM|VOXz0GFb z4HSjwsix(zfTRv8Q|mdBG85NAPf{I@q%1(?5?wYk<(zDMD`1EU%uPt!U_8!ODE#%i zbr+c2dkmg?84FfQqt{DmSQ5cd08y-&8;*-I`|_u@^~}4XO7HuwK`4RyXSX$>F^XU@z1gCEalv9U2ws&f7JgbVq;< zQ7t}}M!IhvmQT8`kv42Gu02V&41aqlV}C)B z)uvlbn{0d!)t-01)b`5Jr4x^`a>GtQOIms^?y4}FesjuZM$<$-u5EcM8{d%kIuEhf z5%&1oql7)s01H+4o`k*sCZ4eK=vjp7{5i!FZGJN*hX9WnDHB60^=CZGr<={K%!ho! z?!aC@$Ho#m<5{UQp4El6{wKj3#EKxbx#jaTW~x}b?n)45^RcVsB&R#(H0s8%6!D6q zp!;Y6tT3B4I-4HKKyXjN6oO2DS~+DC{#M7Dw-!yejXizWC$e1_3dbI$AA|U@A3uo4 zhFaCsG36}Iy&b~H84rvy!fVJiYC218wGG~tue@Pycfiv<@Eiu6&rdrHx{x0s)gqo z^GFXn#@U0)6q)bel#1Y*t1gcM48?a+tY$q0nXbSTBp%}8Od~J3&!%2I*Vsn6&h_M4 z&l}~p(Kh&$5n<0|msyQocYP?~?oP^jljJgLz$rM*L!u$`K7S-;bUmJsX;ynHs_Ro zkH(aH@93EDH<1#$ETutD;u>mOVye|52H`GZC%=RP!)1X((1hT$Fl5hqc7oR$4R8Ay zpY!pLdBf~CzXU_xb5b2I_)0`b=kqg&InO^`CLM6bgO-GHDuV;n0giq{FjKiKIVyp9+DOm`W1b{no>%=qc5Lo9vq+`lprat9 z1k7`~zD7MQGv@hxt!8@|b$6xewfQ$@*cpH&H-nN`lSFC_R&l~H{*zn`Yr_2px))}h z#zD!}u_f@}Z2SjQ=5q-es*bkC-x4DY@j*n34p#b_aWophTQKCeLl^`5} zGMQFOEj`y_JSzBXqz<0JH0me(K%)_^-NWX=F!cXRD4- zuQp+_@z#TEvkanY{lPAn)6y9QtELNh~Sv|LcM zx{FK1R^4}Q?DC?%c3Qy^<$&RbkNXO^XW&_>xlIa7&nRcK*U}?)YB@`@?ZnfqQ5x@5 z<3vbBU-2!Hs8+&yL!w@ZQgw|)N{NI|Oje@O5?+XquJ-9!s+e@WPq&jMYAXC$C+r!A z$-K~#D3RXkG8Z*fIr>DrGK!FyK7W?a@1Ux@Q2s&)7|6zl)WA1|Ix@oG(umj!hRH&v zR`NrlPS$x*N>XV)P?gHBCv6c^Q~a>uHg`x8>BeU553*R$5bJ^qQ05|WS`O>P@XCwR zp?rVk#X>&qCV#3We;^otcZ#dcT}l!}XBKFNA0~{G93WVo1aHPj+p3NkePZc&(b~>5beGbdt)G16t95JBHbr+*xvZuFZWXWR`+IqBra%S$IEkWTN+=uJ9(&7@O# zx$)<{)O2Ct^aQUYoXTQNQm?#l8VAaI3a8Uyi`n>_`$vS+G`>MN9l{%pwRK;SxR+BX z5Kc!VoN&@hFPsipJzOALE?0%z)aqrEL`-J1lTBtLs%vdb)C_nlc4>ypK%~SZFoY_J z6wUf%>w4wN)6CbJ3E4f@MJ{E6w5tFGMVgZKEU4Vo$X=}6Ygk0A%u%OXR1m!=XKwJNrD9F zAT7zFrx>ZIT8y+FXp{~lP0FBiO9P?TSPhIr%_uFFgP?tAKhc_QO?ENpHK|J#M%-?( z&BzXdBzZuO+2xCPurv(?jI~Xh23sItIw>SEQY~n#Q-Odf5{Q9-DfI~xFbPZK1Wct* z&r)4fQ|;63r1Jz!2QQp}x#tomV3cEc(KCt{pHBJrX`gm@*}FU&U$`&!Vpd2Dipdcv z6OtSCDp}#(i!0ofqmm;MI9h#5&cuey4sWnXNSvsa^o|D8q*aTP+LjY@;zaDSS8-xs z2jXNIkV%{@v?o)Yr-*ooJ^i@=h}Sq@Th)dGoH$W&FHVl7&k`pqL2MvS(n7iyCvJqj zD#0xmENSwVGXaCi#!ncBFgel10^f5TnRZGcEpHZgm;0vgWanB^;F;DLc; z<9qY9-pqDy6#kn_URdq%%*MCjE&OJ470Tx~`XATUqfh>Ubzx1Fc{p`G7Y zlrm;$F~0TQpV!^}ER#K}8{_*iIGlKEy#&wO=QF zkY zCyI&Au&2bT8*~H7FQ%Awg*S`~3N6-n{MJbI(2dJ?B2&$&wRGq-5mLu;tVAv*z>Iw^Ig2 zYg92;Lu;|=96rAM9@xBVC9WzD>mi86m?s}#>5F5azkW|CtxyW()e|>)2Dha5{Nt#+ zu!x~G*FC(~2$b^kZ1A5rW|LpyT?jzPHY9u-wLDSfF}XLXSRHmyhr#3ChMXG!v154u z_)HqDy;@x1G{Ub{Vv!$QS%QnyDNE&;xD7eB5x|(f&QS`P&q}C)AHMLsbO!Xgkv)ii zO0w~1WG-czh)3vzA`HZU_dyBe4Gt>cq)@&ICnsA-a2+@VQ+tSO`U_Vr!$ETuJTB_+ z7+|2fF414e_VFWzf$e7C7;x$wKF+-ll->rB5RV|Bau)#!kpeNLgs2Z8!if+NLAD9V zmK8S`8WFsww@-O`Nu=83b> z-17t!6q7}kTySIK5?R%%AO%T+B(8U=tqMRLX26u!U_`_Le!l$t$F=py&r@U|hgN=` zF|ASZbJnl_WAbwax{8yZeL4I@`8f^(5bK|Xaq{y#Eis{zAV0suP0knP=cr@i<>!Uy zNXU)c;5%TjaKK`GRpFKZMEkD}=jQZv0jRe$^ zpO=*X@5s-AJCo$+UBBWS92WU`|LHQzf5st&{QPpKlAm?v^MANg$;lM?{Ahji+Q|v~$5J`S{;`$(A^XQdjV0_Kd&!QU4!D18S?~BI`%;`s2v_IxKi&o`cToBK zfB%H`zh1UN@EW!fReyu_kNuobP>@lrue?r?Wqro=CKvo_Uv}TfUsD) z`y;FlByJviJF(Vt9f(B`o#PmS9$vaZczy8{-Lnu5PN4tJoY-=sc*;1tJs#adF=fm`Xbimv19OZqjs#k;~NpE zasE7Au|u?fvZjA*9(!v+0{!D$W?63@TR|>Y(v9?gfX!n+djB$n9I*7E5^dlTy0>ku zd-K?g1Ss~Ns-e)E#}*!8L!tACk;cQ;S7qcONe%07KWuEo3)eY#BJRj$>MR208Rj)l*Hm3qXv?!He1{u~e9@JzkO$UU6;=fx zi*R-yt`)zOgWv8fsNdtNF#PcnyKD793!Bw?;ZdChwGclg3u+O5kk=STT!JJ2(T1V6 z2gms_!#u6Qsm=$Y&yR;U;eZ~}B0Y#U|2`>~+b896`%o@7A6H|Zt_X{ z%;RN-6wBqB^;YRo*;cun#w6?~g2!Mq!9fsvAr6_5SMZmiDFlXY%R3hxF{aRl*gt_` zgd$$)tiwsTgI#R&dIC-m}5Fq0;x2mx%ds9 zLnKMX4H-|`7)cRNO4{#)i)`d0=5X*I#K(kxEAdezo1fykjwd~Ep~#RTovSp>k|Cz# zDj`0G)bEtJN-rR?MyxPgNLOL;(`q$X&Jjq6d@)*mE2(=>Kj&&qFVxh#xP&9lk$^Pk^`8V96nkaC- zo1R@4k}eu!BWVl@h><@ws?P7GXA{`eNP18$6JRB#4kZ1Qrua{gWB^k!&(4z+{|OGj zfAiTq1aB$PkI^jRQTDSMY9mcjTlheV@20m#dx9KBae*Z38@NOw&-oqo2p2Ex{N`v^ z`EEK0UMLG_tmT71*3+_j5c4eV#5UDxCs*JJD^W@5!|T?$1+!eo{W5)@glqb1;9u?* z|MC>H=a!i#vVA6iwE^9;dNq`JR1^DS>NK(Oee=8Cz6|N&SSRy#xgeJ$n{W8JT7z5n zzXK=hW&8%qF-;49a&+Pw7i!gLu<6%PSk&H@M^i^WiH)xXzlSRy;fgHw%SGVJwcO3G zXWJ=pq5{)Lo+XRpEfq$g zxG5lb!o30HG`Ob-4`sumTHY_>q&fQ7)5J~-j1NeR@} zML70|c>_pLdpG9cyvsZ@Nn5$qOvz}A%T7whR#^%)a1Hvswj&RnI`be|8P;FqMFDl9 z>g0$G+lW^HJ&(tb7Vgk>>N)x7yKp5gaa`6~QuuM5pfMR2nV|7of?UJ-$chA^;0_=n ziA>ODo+ zaanl7@Br8;1Te^P5I7biapr91vbfQxYKa&04YFc{nTxOtufyfwoq6RrK++FHzF;v8 z#%VYwTmr9^HX^`SX(J2y1WqRNu_bbX$I&RyYxMa%eZEegFVyF?`h1B#-=WWIa6T6q zE6iIoNmoTeU;Ntpm7`T!39qmVlSdcEM(OLN`g$&og0ac^!Z7q9sET!R(EuIQLT26BOG<;?4r8pvs0+SK* z{Lq17?$dCIx*9!8S!$o~vYIZ~YLZxvhw}BSD%avzBv?GFpUc*I1T*$7F5jmwGr^0^ zq*6ER^}SDRhcPaG!%Dfhd<^29_Fo!s#DB2=UZ{21f4pzme*cNtmcX_TRDSf?PvzDI!Q4w$$ed?Z1m{t3ymPSRKGO__yk5 zNCzqOaWAvem_cM4j_fZ1jAN2%YXf>%#638E9dU^B9UKSFHxY;+5-9&tCc5805sRnTBtydNo$?qMzOYe$pt%cVF^^Jy!Y#ANo(`~x0jG6FOp zDAlnGq3jg*CL*QyH}(wS6DYKx>$VG%kV4~GAw{JhaK`FD%I7o5H1*=yW3sz8aq+dhL|w6n5dxwu;X!2BjTHhPC(^;`-gl<)k|V40F&}TJ!{0 zcF+!GBjN>E-G7p{kmGLI7#x}qn~Ml7KrJE+%LLW3=+mfr9PN7pZ^b+v(3IO0JeEyY z*AUe(+`onwh1z4-gT5c$h8dBO=Ve?|hdYT5G4=@+@)FCDh10t=8lY&R&Y^(X|4V1w z+80e2b)0>-LfLmO3iX7#?RX77_y#&1epU5wGD(HgM15Z-bD`}ZnOe)%BGFS>uHzAQ zP$iD4ECrlGN|6B)ZS#48wie3qL9zF}{uS92HbR$6aDzq|37Sn3uWYggN1%|&u2{og ztMF!2{SBCPOsg7PR@=d_hT`*>=Q&(}lAa5!z`Xj`abyU7yv_Qn>?i_8JBss56P5hD zkUSL9LK8-mvbUsuLWYh@GO&=+z2TAJ_+pA#fY-9CzLhqwAp!j$JQwqv4p5Zzt8PMk zWB6jdq;a^()(feM)=RA%9V=xW&ow)cJ_^_qM7ppMu&3TrbQ4!pLFEi`S(~HC#myGt z99V%2O>0KgqX10v5OrbX&p0R4rM5dwbi|2CMTxD}) zBx^p7*K+mwJbhlE&ll?RB7MF@pAXaLH8_tmu7(Mb(YR_hg2vT@Qjx(f#F%nTXc?a5 z^~pTqdNz(Sp_TdqCzJvXrq55m(8d+1L4+i4!hKtW1Kc+x?c;~IZ%grm?6?L;avPiF zNY~*g?prN>*lL3Bhc6j^Fzy=-AD8>)HuBm6TxH~~1AbzjjyR8WaB4A1fxYmms{scL ztC{b*jl66;%ByASD&?QYk$*%-LG%n|_dBh-K+nxHJvh5_-me=(64OR~j+pe*>wsGG#*sxILikS=u zxW26>2HpN+h?jv4&b4jG_YICZpElGru+pSf0ob;3Z8w62UD~u(a&3nL1eznmxCg-~ zns=p=FG;Y5QO}S~cruD7qx4BBPe=m1Q^pgehVBp@H`uIP=h;>^$_l7{LuP@>>ROXzdsrp+sMwy!yg~)5qhY(Wa)W;mok2# z92>QtaTeN)bODRS8_=+wKRJp>A7dju=_}vt)kgY!eIiIF95&Jy$w{628J`RQI5+c% zYiRGeI2u(E{H<#S-Z|Hvfy1|-@r_%QT3G@>obMY<0ZvlRz&Z?4w5%MFgo~rS(|#Hy zp+qK~4_RC5baj8<;LEwB|f16N@OSMAw9D7=>ghW#nW=@h0;!Xr)w+mJUGL_b0ITpxjj*4YpY%VWgF} z2L)_tr6_<`lE`DNzDaqdZ_ZOct?wH=uAiWm(N8SYKVb%Jf6Fohm>MAe8f6bmTASJ) zc&_iyw+EKbug4zP){kH-BD0^V{5p~%EZ{tqAQj5LXQtP1YfnzbK#@PcahuAZ4`0RnJzH|v5 z2A)JST>+f@r|f}qTEyf3zibbjJJ`m00^J`%d%*LB3+uK$uqCSwtRE_S;JfB2?14{k z@$lFKLLE}IFJJSFANBE z@*w$!D`Wswga_=}QB+bmuE8zGzFki!K+jk;+8KVPNYQgPtw^NvDf>3xvTt)}-yZUM zhz%c+kXeqa>LIcS5vZ6pC8KxrniMDq#;M=AyiQ^wK(w_LP?4*x9kO1|#!akeHaWcY z5dPgQE8238(Jt3!8~(4*C$jnaJf%w-qJ3hXD*=If?c!pb%cQ?4v(ajkGwE&B>;HQ6 z5LN@^p*vC6ZSliNi*ALppOc`CSX8#Ra8gdi4AZ|wa%@Yv>tUaf#jzW*uWlJ`zkh$s z^smT8g48IaOOWEccqcJC`{wk9g3*BN>=T*-vpPF_?uXo|0LqzLyN-%^I9}RkSS*3_ zCfUC+&zdw$O%6bNISYSco*JBEYRZR5;*hnsD`=jR`qUFxzHR^YstTvHyM#)#Q+5t)+&R$esMMjERi09Fr zu-X#*uqUn4{W$wMtQKbS0=IB0cIv2R1mp5nH96pYs8HNX{WRJ&>m}fN-PX_Ow&YkPIj#2s$0+AnG)jy1xUWfsW&D9ioO;B)bOIY5e&IzOM*KkyE6()-0+{gWynp#XP0*=$&$ARX(bS52}aBH`s+7f3$&~_ z-rM(rT*E&Y&!gO;=Y#HYi~ML&%rgo-#pyrx%rrh&97Yv$CsbL-%5_ZRYvx@&IE!{V z8hd%cWun(QtBi8e5%(CBT8*>NiYq}J;=Vve1p5Y;B|$~f%0=wsMdUOd{%Vbhr!tQ6 zGpjXB|4&E~!S@{4QjRfa7x<-t6&!)b;)^#Rd%0rT66myQxG1FZIngSEIY1Gyv%<$)Dk!?Q>|LO1U z9KWu3lUJ+MRjZK0!^>*+kh^CUa$KfgW$-(#oP``)x2or?4A(v|`*8VPeYrmU!(LmX zLA|iA4{`CQhSYPsvBYH`?f^D)J;#Q&2WcNB)^q&n+ymBg#I_I%4Yv;)QqOVpDYiAz zxO$GW0Sv`7Jv!zDi|Gb~jOWzT>nL$?ZkcqOaDJeAj+;BvSUvpp9P1Y+)pK+d+$yys zsY)=DXoXt#B>h*Z`{np>F|qD4vj9>N#G;twz;zT$gXp&|$6TIBKQR z7tG4h_F`+mN_$bpdwzn^@XT1v#WPNH(;k#$@f#;jZV{Q{$2d%7WYr&{9bR zOWM<_SDBs(6<&Pc|6D!C=_ek#dX7`R(k52{mYfcGJ;!Y)9E^ikPd&%bFU7EfRi}a= z!*QNe&#|+Qvi1J{pxf3f!lSgh=Bul))4KBth}M?-Ry~IYHxlbP()GhM>TC(R>}n&n-OsA$SU#wp{LSt%D!8@v zq&GvSLVq7LOsVV9c<7c;0{wg$GZztp5EEPQ6)X?3I?j6wxrOsloyFR~CQ{Np-L^wf&(ZS}F@?>b zyPo5CT;!Fx=tNuqRPH)I=Q}?a>Yss4*a9?R^B7h)Csj&4{c-%v-jr8LXRC}zl=3u= z%jPUPcs6IHxj9Sh7$`p`Wb$ik!+0~~R11?ReK?oq0^7n}>!|0b0zCESZ+?y^7*dmZ zj+MtzjU!B{r}#fv&(Z2R7l9~iuQg$V4_`?FHfDH7%QQvvPu{P)la`6z>bF7-5${sidXh&_lM9P81#e->$W}64wy)Z^+RP3bbL33Ji?kYIp$$z54N7;rqF@wIp(g9 z4`Wy2T=MyJJxAi~`XzC{yG4eVQ~=lH6%qUZVo9*4Z1qv@k0 zWT&2^5Agyjrpv)t=29LH?)w&<{xx0&oQ9+BpvVmDF_Gn7x+6W!-!G55H^Y?gqgIo| zrf1p&il9-y;@AgEq0Z8xO|Z+5`uwhcMbX8}-(&^;A{38=uk4kUcG2>f=Ye&)CuP!- ze*IfaouwP<-L4vWq{@rHN2lM$!=SV*R1Pgc>u76ZzQ_qROYzJI%Qzq}mx zcEsJAV&CJpzZS%`dx3qgpDn`9Z_`AH-=@j9PJr(}0TpNeKIDeoIoIEGrc^EK4 zl>G57mn0ZgEM@fJFZVT5JX~=Sp)@ThF|XX*6;Pr|$$>I@4aWx;bZ7Xdj>_;aWu|W# zGyk%A4_}A?H}Gft79JX9Wtd1m31y`d8zMvRWFdlxwdZ+Vok>u|c433_sh(lqHsqU>_BuCG8Cucv6TW`A2$_wTZ{9aI0UWrJUjKd097!z4x+aFx4kfmAS{htnk6@YtuPc&Dt zLK#_Masn&-^36C_n2uAh!eGq`iPntqG7HEAKBqb-1 zbi+_vDQA`!i2pP-nLJgK8GD0-glQTqKb*-dKu4@-#A{7mi0dR0j225{@DTm#60KXHHwTl;WQKlWWy0pw1gK@ z8MNGp-XXLiM__gyb@Sp&k`s*7^LcfhNj4n$?!yA6DI_&$EiyQOv0%krZM`EJu4v~Oimda0j00P;?wxmptKMD>KAuQEW?=&q{Y$t& zHk)`0+3Y!-X*P@FuPnIdK$_kiKAR{+0&Omi{0CM${&un&K1z*K)-Ui8ouAh82QZwv zlU~t}lPQWzXUxyV3oO*&1amqU@#wN&EdD!RDh=@Ucr;9fUqBdihZJ}`has`5DS7cR zp$cx^M&pt>Uu@n2!l?Qs8cW(&ZqG_`BvZejmz9k|1}){J!0^DHiR=<5!+0`HpUC=H zr9LU;ow+z+m+Eo-B+3H&5FRopGidYqh6{Y21N`O!{?h_Jw^UZ(KNb&u_461E@wiZq z>I*g8XuE*EghJpze9R}%D~~1yBo=CuS(u2rxiQ?0yZ4AHSVDo%WFuiQOdiJAQwCj# zR&rI59Mvj>9c(Pc#X1Zj1RGyiAv#KY>6`MHFBu8JB1|%h{PG+CBl3Y;+0^eE7v2ej zjrTtKMDR|ict`MV;)GMr$E|()Oq99g@*%D?eU6T3UuMxYGOGRxU}!7B2vyWcGUB9# z+dz34&#E8;z6&(g5@oyGh{O#<38+AL7p z+TzU`z5#o92e0FtHmcai7$nbY^|@@!iSr%$JXhaOllH1)<5$YGbNO-&FXl^+Re4X~ zWUktz7L)tQtDIbw5X7X}Xg7P5z+xp@7pWEVR4)h8IaGXl9+C^&iaxq(JP|~Uh%wXq zG&~}*=tgODDlOA1eQ0JHfa9d_Q7r@^v3jyaptJ~gY0DiQ%M@;y%%`8!76pW2Ee?*Xb>;$wI6l+r>s*Y81Sf6kne5=w!sfurp8VxL}#n+Q|4BY?yeTMZ6Zw)s+Qg562Ok> zg*iO}Z@cF-@~gd~C)D(vqo;2RxF}j2^V~*Iuu~c=g5`Mmt(y3kbzE#rUZ0Y{KHPsi z;XZZFkCm>dSe(AuBy(x$n_M6cqdjG=(lH_wLrVP=KaVHV!fUsQj^Q1xW7fz7>rX@A zH>p8HBXkV)kDD4S9n(qc81_dUQzZSWm0{8$&mp9**!R8Y80r)XnuT&ykwfSh0m7)- z3ZhEVG55SeEWzicOfIEe2>Xv72xug=CgC0N3+E9SoJ^*UnU53dm`b^5l_J6NB|Ow6 z)G;C|!6*cX;PV{dKd_hJV~1*9hP+hZKPK3*!LNQ%?pjXgZL&oQbxaZIOCb<8AIAdv z$A?cipj-;Yd@30RX133uyY0)%cGOG}hM!W+5VKS>!{i8l#nDzXlW|hFni=sjQHssD zC6AYhijmQvi6k}CPM!m3gt?S31NGOqP)`_$VBD*c?|Rv&Csa1-N8yC1=i|gS)egmx zh2=_|hu2cxK!fn2r9l++=}lT7$3<@BIMQ>pW9572w#U1`GRwSE|yAHcrJVy zG!!==&V~jFz6O#HuIbv~8jtlZ?c!UPIj2dK^(dJJ1x&bvv7>)AHb@BvK z&h>e%K4<;`@9)s(Ir=<}&p}D#>+@`V&ZrNi+-1DEh8Lkh&|_5|jZtV2jsgNFx{>o4unqtw9F71VJNXRVoBK>6by6K!vcS%nEoYN>#ydzKm+a1O%ja-geZ+ zUi4=nn`+~u-AZk+Cx@n)?qJzajBPo4>bOm5r8X#}64b^LG{DCv{TEilB$^xzh$ zwFkFQs*+op->pP>wie|cf{TI8Ws4xlB^V6RI*Q5z-p>elKZr{$;{NC6$}{dgnjQ{Ao9oLWhs9f`~S-YHy2SrkDBfXXqS9O*w+kv=MC(S zdGBz>hy<+ z$TFA8|KL=_K!zir0E6LqO68d6Z(v_UsQW_3U3V=VHqnY%+{fU@@Z?)CmlR6;S7{dF zA)~sd##lBB_#_J2@7X8SC?S${Om%=%ehWsLrvragCKHd^s$OU|%zMF%)RG zCKwX850XuTKn3_Ju%Zndvw=4D?SZYfnXw+pmYco_Y+*(>6^(z8tpiFt0vi)#0XV5cXoMo`R)MmAEc z^$9P))^5=gW1fLTbYQvHLJS1cY`lOel&4Wd`e}Gw#iePCUlorSZqD99!_6C5i}~Z^ zQAUR4OSI2|X<=-16{i+2$2{w#?bV3X;wvT)lrhiOXd3c*=BlQdkqu}EcyECTXc-uu z5g3}zz%y36pq79FXg^G@wboDn>A$gVD;L0r`z2HniFq;@AY6)f_z$`j>`{F& zU?Rtej_5-(y2w`;HmYafI?W0bVxcIL))qkye*pugw>c=>Ze1<;(d0DLALlit3|A1J_*whZR4{6{7@dDg!2tK zO^S^3yybHVr1#DlP~&PaS`IBD*#CH*)=>g`RFr(&IAlZjn-^%vNbs6EyT=t z4NT@;4HKT@EYB-)q}C094#Y`va%5DT;28M?o&eBdYkJqRW=BCqJ>F6buac^t@#w)KTt9V0g&E9GvFSdZ6Yo+1E5X@nqHE3_YJr2@b< zjKEje2mXlmjCr0W0PyRviQ{sarSRvJR2VS=#%SQnCAe?R1M7RqI;UR8=<$ts)n25r z5Nsi0vs5G*@ii=5+v>ZRuMp2w97|k4Gf*(g z^bE-I1$suWqn=h_j1CaBk)xk@D?dQD(_3j-McvA3;EK!#=uT7<#YCN@_Uzb(lBs z9#=4fgTWseSY5c5E5SEr_xKRc3om8^QQT;4Z#fV?{2$}fUI0O)sZX&6wqsosmnaR_ zngQ~rtWl6V`v9zH=1Y7Si_zI$psfi0G}f-6%nC{ZU12vMzFC4l*57|ik;|@Tip3qWVr|vV!|8zl|1VW&Qf-0%=0>)^(Hs*lr*t9+;Ng1 zgqo@ny-`PzZmyxB7zC?fT(X~J7UvK%M(vyDf>gRdo_&%+CG?S=Y}#aEkSp7Ep`-Rh%{JFOm@y45w97Ph)$B3u16 zT6KWNYB(&Y{#)^3;+V&9wL2W`#ypuqp@dV-*`>>A1p?A?-R1&m^J_e;$1nLhIq=%h z>ahat^Mp!6yYDeh>R=H&OoM19ViC4Z-hw?a{B%b-%yQ8k9jQC&DILwQJJLf?`9acO zF!M53Pj}SOQ_NFrV+mt&ceN10gLqnV4e@l8bQOpHVCFs`&l*b)^kB{By?8jqe4e9Q zyk1(Y!3!GS_X@u6bG7!xqr~@JykemNJYu6EL$}mbTDl%BCE*+6ceQs1+DnP)vk{E9 zyKoQxuTUi%{%aFB{G(MDGJY~wa2EE&naUIoFIsl&#^CeG+@% z{6}~?qZl!xJlY|I9;;RKZWAEeFCGbt(|ESIe|J-3&U(enM%8Wj;oqHURMp@IxgzU{{~p1$BY}--RMw-t26*sK<=(BA9v{eTmN$K{-?IwiabFpEC_)B zQPUw&xZ97#I;8_f`*gWIa`j_45ryFPo^jxpU5imVJI)M`zZzwx{yu3lTe8Dgr}rK~ z3(M8-D4ub(k$}IcM>sv9(F%{52=yL_br&|v%QPl0M!V4?=2`eV9Pt4`l~MH@ng#9{ z0SL#2I@W1D2I~ya)QSQ0rxin|C-8uc#`?!!o&yT1KoZDwN8iLc&0Pd0OT^0;ARaef zCTqM5KyT5bpxoo>>oDTy*Y)G)NkH%5XSf->ESt3R0xpwwx|C_!IYQCPpC6_~Ar(Er z7ZpGI&xGMR7b6CZP*Z`e%6)95LbvkO_)B5EuM#4>O03P{Y$rH9n-=!W%VVAa>RdkU zSu7VvC=Tz`8F#>|aCR?7-bYiiM<$zCX9lN&S$1Mi_uy~@C}aBh&+xpG3ewRL03mu; z%+rL&d-XFv;2FRZZAqZec6fy_-}IdD3s^mhcEEn$>ItilR=SUvXAZ%ESo?My4F-|F zpec#70s)m~`Zs1^hq-L`ndS*=%3Hkvbpztq-K;z>de#fHYzQ&NF+`Cc6&qceuBuho zOda?D49J^0s3)|djCE>(M=Y&rPnb=wY$$jc0ztE2w#CY?^M$UYK->5bMtyX$JUjIC z<_$JWmRzJ1E3g#nGz7rdr;6ni{V*&WBfSj56QsIl#ya%UUZ%0*-!NmOmE)vM_~Wro z2Cm7?lQ_!HoEyKuxz_hlpq$e+04>HmA-rMZjz5NLQTZlru;YGsOsG_o`(qDUF> zs^JBdpGkP{(ywK@;O#CTP34P_69V%|peJ>%=>2$2hUeg-JUtfeMAyYUqj^*|T&&YD zoVbV-@e*<}sdX@Za8TEd;h>hH6>Ct|c=qBN$8!yyaF6Gs2dwdYD{l?2JTt94*9`2Y zKs1A+WIMiQ@TctO7ULHZtMxx?{4V_+zyopmn=0r?J;H1FwnR@<19ASwF8C5XJ_MCs zN^>XJtpjA^pdLHNx%6*I;okDDvefbpxG24%6BJ6(D|Av39ztw6ebv;DFb`w56A=$% zNaB;gzQo3$idpQirT}2`3+()L(#js?^=l&%4mWH_I(P8!ifGNlBSox=)_iXG<)+`o z=%#0;^6(IxijGh4ocm+=j%(+Qt-!2dcy4~&n_k|=7n()yE2jiaAkK(TXFh>YMn!;41Kml20W+h4MuaK_q1eZQ=*bR` z@08AH$BfL1<~=@)EWul#0z_3R@e5=ShCvOxunk2b0;*V=g=1)R;9cC-X$c%V9k4Q^ zv(6*INj`n+K3rx(%;XZRI(61rC|q;m3tV%Oqe_#(Y#?Gzy6S97WQ@@(5EhNj^yO22 z1;T^p8-6a&g10i7$pNMth*}z^e@D6*_yCa+4&0uI(Fj2F-?)WX`h~`lqWvU%h4Grg z7u;e&61-wkA6AJp+JG^HT@~6&=K>5>{M|$_SA+Kz<~S%|?qwM4z}$Nf9K>87!CV}@ znL%f9t`;v5g;Cs(Z8y>KCj38yeg^83`fAn3AWUMXHNX#K})0Dwuo`-c9nw zR;ezwPQK`0Wu%^$#jquk=f&dakqj8j-okLVRa2CC_H@S4tJHEjV&N2345-IE*WNci z4KTJet3NFNEv*ByZ~t3yt=wYNpmF3iJeglo|L$cKz;*s}f@mUV^ABR_7qF*gM9W%U_fEtAG$zqD}Tw zXW{+;0q z)R?jL=;K(J}Zji=~v@J_@Zfq!!~;z&U5>LGfiYe+WFBTcdP;{$LAdm~WFka5SD zCl@1dhm0|^9$cc=@F+$b&3pxj6`7Vx10vr9JruAxZ*Y*BKW}h!map(Tra@u-W(@Sy zEvw+T_1H>=YHNlvPDNJ|dY0Jh2Qkl!=m09nO#j$S-(C{<-rISLDfHsslVRNQ3CTW` zdBc?$?v*X)o9WA#Y1=3E852-g1$ZJ`hlSd|9PJn#iU7)p_Br0p8;v@p;rHefxJp5le{U0G&fRhC!!e{> zcrI<6?%@WfhbHKuNn8&vMY_3qI6?JLAw6I{0`McKc6wa<`?$)KV?0~jWbTkA#&hXb zH{=sNkf!LSX%327UQP$ z5?g7;R>$@6YILmXpnNopqbKeepEl3i`J*Y*y+NguN`jN1had~#ZSxQ9)xZb*1QSk6 zI&YbBo|*pX*`O*454jI|{x?hr%!fSV>kH$o;?a`Mur10dYmiOr3*3-R@q?8e^s*bO zW0bAZ#WdViF3h$5QZN^aD8O8^02vm#AZBtUj!?`TFnsI;z=VSvzJA> zM!^ACa~UWQIPzslB<9(Cw@9Dxg%{XM!owJh2p~5m)Vo>5+c7M`-HLvh>Wk$uC1YAZ z*j!{ec=R7l%G?d`#j0y&9_3!FfXLb;aYOJGnV)BtBGgB?QIDYECKauC$f#%;>vTE9 zc&yVMut{T`=r6~;5$iMs9XXfcU|-#8c)g_>!BB{tpq{d&Tl(EG;hyv!_o{rU^c^mWFZsYG(9<>_YO z8q*lE#`OQ#qFB-xe8zwu5k`ZW!2~H9S0#~5hV#GuZA{rURj085iYzRkg5iK3(BqK@ z>Q)SGlQAm8)AiT?NwjW|)Beni$p827IDG$PcsTeNogM;8p8$%8Sc4uL|!# zW0+^m_}P$YJwCMcZQ;k|-MpcG9l}SElZ8I-k=fpC&GvG>%h}!#AxO%BLi`f#P|zYu z)58pUf%b3B&aaz=>#qL|^w!koJ!&Fz1oIid{4!vE8Cq{q{8AR%Fb0IF_V8{>^hd%O zZ)xJ-=VZHL>L4v z$aN&xfEZmTuR`T|XYZ@TZ^KWc))yR`?JFFMn6hjm795l{cy8BRiJssF_yW=|ADJHE zw+A3m8O;Rnk{KM7?dx1?%=rsviPoOCaAo;qp!kO?VJ^d9V1A8Y2lomGA-J7yV8#LLcG9St}!7S@#U}nli#OodGdCqSVw=0|F2H~YwaJ@GC(jR4}sz-Q%wI0 z3(zLGu;wUa*myN&g?C_`R!9z~fdSBpOsEJQ;T^YOdUnO2Z3lot)2u;QUIcy)AlMELGQB`5tcg9SF zTd9I3+ll;~)Pcsc%9S4&yfcp$*+6)oO?g7GJTP!fUUc%|>287U?h zfpdeExDNutu$u<_vvCp#a_Lq@;A`>Aw(gggq#u*#>%5K$PFdd0tBg6-mte$Jr3;VwGizOVw6<29v!XVUBQ@y<0_e>AWM%MGap9I2h4wYF7`? zK=~jBR>*W_KtSeX>J(Q7$#v3eQh>b8#lw(=Rs;kfe`!E28(AlfpzIEKU|+ZnL^h2a zfk9|86v$54xJ^MuVBm+0fWbyuEhfgz!0RY%nT8rQw1D`)fE;}+&_|QU)dNb&Q<$nT ztHf4Li#!NP&j3;-uA}E^I+8P>j6X_oMWQ@HwOFfR5*?z{7{kRT#?c4k$j3A29@)Er z;h6lUk@KlZLj9YJBp-fxYrMpDr9<6)7w`+W^wAf)U1khPfR zw%$HZH=$KC*b=Fy2}bBeFhY$vuaV$GaTchpt9`*< zdEVd!$>u+mb=9l39u=kmc94WMILjO84&?RNYT3`w+8TZ{)Gyz{-GgrUP5;(Pt_yCA zw2g;92rGzV*aQhmtMM0taTxiqpeoUV;co-*9ed5k*%sromt}8JPQr-R=I1}&Rp#eg z?8h=c7t@i$^z`u-BDDZBWK=x`ogcwAMs8$Uzzo&E1aRBwdLr>iQ_r?L$BL)#^xaeU zeIA<)Y^Mo2?{JS1)YlV$r|Ke{`F#eQRt&>PLa42x$-qX(Gxv#)|1$JqCBcYluIBIU^U~%(DC3 z{?f=~QU#i6z`l!&T&%)lVX?1_Rdv0(f04m()_o{{}L4vI6bcKVuN_2uS_ zc>9g~(M$N-%^$A1(t>x`$>sn$+0*Dw z7QJ9&>k-16Qd+#s$zmsS*vS%{HEtvWoK6PT*-0^-Pj=Fto%B?$sMkls=#AN87&-RP zupY0OeT~UCc%}M?whl}U*c`00oP@=tuTX~8el+AKY>jacAaGMr56XDvDF_Bxnwe6? z>)%p|IGVC-P(TUoymIQh5r(}SsUuO$<0*(x1QbLkqPFk|ig$+ORCu&kWv0Jw`0v8y z$bEc0&@#^*gPW8K*zz@O%OG~)UcO#M*kV@x2;hTS+OFWM=;(#9;KZ&3w$)QVfMh)S z4NAt5mEv5U?7)dN2FbXeie{Pi3|mMv5dfQljF31_5X~&`61lC>Op17GA61X+KeI{s z(ISg>hP$FDh;s5LtU{zgkWKYJ;}G@ z&9LGZv+yW=78gzddID}6AW_gR<$vH+5G$n1WYKHkvG zA}eB+t|MkjPR~`Z=19{6RIIL;Ct}Nr4O{~Q17j_QG4K@|4vkIMXzJkMM{sH#^Zrj-tc}J))^j!< zZWNQ(4!zrW_#3F5gSnXZfd{qPizIqkd2%gUfsDgtXwO%;+or?HO;GM^Dvou2LM z+gC^2{zB$aVbwk$5^xmmYLtJjQN9DTfM-A_yNx-=v0vbg@eUvb`B-Rp`;sO=(f|<4 z3O&%k1S z=-ON{fscX+Csr#e%+L%ZL1A_5o>_GwZxp*}H1ZyL+D6{7Y{22PjsnB&5Y5doKL-py`={7R~C>z30-gT1t)-6EI6+deiu^6#~Q>+L`!UD8LjQ}BM(ql?b;ZvODb8PAT(iCDpwReA6L2{AiU>=^ z;j7qqb~V=C#oLpKiJlVagVyA?!fihrxBit_s@SJoy*pqI4h%%Z*V_zV&n)axvDO#L zn}`YJWUHkLpK(?#wN;X@2QSta_$++xlQvn^;5|245p-YSS4Q=9Fm8dFnCBFLAK{us zD!VGBh7eaT`h@PIywugcW9GK}QMdm(m?p9xIk$~#KWMdI(FUO>|B60#IFb29wvcf; z3|bvt#13chEY!dHESee3r&(r(wVdF}7s7f15;dAjh^`w9BCiNbkaSw*3>p{BFmGDP zV7c|q>B5nb?>HZ}Ye+FM(ifZvg9BTMO{mBj1>>)f!rT=QYd;F_V%trrU*&qjMDVyI z$l&eYAgg7RSQGCuRb$m6Z~BUG5293!8wjCR`N*V9gmkhmOZy`fpy8=z}m6tQ4f-R*0B3xg0LbnLnSl30cQ1FI9T zQ1ufC6R?-0?=|N9S#VRFhK)-?GnFBN{5&**_o7W@nPBsj8@bBccVh13TnMgQtRuqA z5lAQEB_&Qxd1Ylu`o1YcD`%Xg+EWTW=IJ6gSFk^eJZ}OUB+TWbSP8B_#bT`$Ht)_irj<;zzxGdz++7=`ga?R*SYA=oH_A_xHAj6ryUls z$}qXeHQONc`{>K0->p;e{MKlm%g^wy1@$n#fu=C`R(H(n2q(-nDB-65q=bjijLrJ; zgX>Mhy{HZHuQp?zo!~4r7SJYBanGQUYZDL zoJ9~V?3>NvR<4G0NHPY`x3VT~rA?k-(!8vlr5)ldVW%(g@vLl>Z^G|93ax@4r029i0SxcAGUDtP57~l!avx1QaJ#DVVH}J50ci?W926TB4);b z){SaE<_oS0WWZ|ZFs`RRiYpeSwr5L;KE0Zi^Cemnx3uC8R>OixB-2Q^`y=__Z z?h;qzogJ&hxD0<^vG-HY?U?}2RXNG!&ueHwGoE12@)TiSGKyX`0HYu=EuW()K<=hUAS%E}dxF}~1DG*ly8gt{~ z62Zkc2pcNwg}R=Ojd6U&kT3*Si>b{NoiS6%EeB=et4R3uhb(+7(Q!vmq7|l%L&ZWE ztQ^j9nxx1AM)f7iK!?H(uboQQg+S)Gy{fMCWWMBZtU%K|5LJpys^Ly1)s@)^nN&GZ zEQ_Gw1pZX=!=@}KCnulk8jMHfQz6zM3sM~`)+Q}RB{?WmI+97XTU6Va1U zjg?Y&B{t4@cBSRUMY|D0uJsDgm-8ej*m2@2z^lrM^Fax3*ow3{;s=YvNcpsK&DNyG zk2mmUc;15+ey)exWa9@Ly7&Se2{im{qx!cNimrk@j$FgDI^5_TXirqd$!w0YTGL4J zvp~nH;+kzh$F&LQI2x@cqhpnwgh!f*b{5iM{(pV+G7A&%bLge=0Sh1FcDeB3rk8RH z8JAoKWT<7FT4X&^`(VKt3wHq5sAdMO!$FZKnzOyq`b``7yx)X(-ERT%@lF>YzCcgT z3Q`D+>S97jw|c{50MfIO9o%hqa8q3!v7L z)_O`cTA&)C>|{FLr%)VaPf{H(9uGoRP7G#W*7?^?pcAvw1!a(#a4VqG}ISAeChw5+Ai9v$9m_q6}lSTgF5O=bd|jAlK302%3;I8Y&NJZ zVbZobn<&LP4Jr_xd-^SC+g7*by#ZX~uI%Vpyc7xzPhb;-3kiXLMUJbez{!{MZ-MsS z;R_yH5;{BA8#-Hzuq^b4g3tC}oyK{)1pCy6dM_EoI*0yG;u1E=>>!c0h(;C6DiFwyef?rfU7M zj@J0Fx{>A@-wmLoRO6HV5!Y~LvHuo#&=@C~2S^31=A=?_sJ&y|seq`!nq=Ko`>jhV zAX9m;PY-mk$^^U`#Nf&VT(6S>(a(Dbn0(05BS{5TEec8`6_AO4iK&3t*pBH}4M_!5 zpEe1qOh6_A;wO`-bQ<8H?~0j!D(f&I4G=D;$uvMzSz>v?3`~_YK&1U8qyY|XNE+ZB zl^6rK2R2uH8sKbuKTU2C$qmLrEq`G$39z+fX%w!QQmRt`F%!NMP!P1c8MY4ye2Thp z&N<0TcC&b7Eatj_`Et|ke7Wh=2%-LY-N~5E#<)b4?fdgv=5 z)Aav0`l8=Y;+hVrH#L{(haj*%t~}EsUts7kSDxu8=9!iuKXI}v&ve?rxp&NU6PR#J zkYo*tkf2l?v81N6tK;eHc{@k3a7{{rn+s||W@Z+8;W1Yq`{?5^9#;=2qj<(3uURD} zR%wx|6~#T-g%o$^r-4Jz@ZL9>*5VK?EE4 z%jS!Mzdy*hj>&U!GQ3w!%HDyiL>I;b6XJs_6Y+C8@$R3S7vMU ztjB=bE+%?LUq%g&y#lyr~KR#aAs~va2yk8Ggw0q>}KG0g1^T4fK$A|8?s;kWxqns z;Fb>l6+4*m$@PGXA0hnrUdjMs^i)?t9t-85Ghes@U8ZlEa=cyy@GRy9ozCy5dbIT8 z$pn8mT5`Zojz41KA}4=ifA|`#VA02&fsj^@8gJhrxz~X$0Ve-d7CqC%TR5c1s4B&6 zOqmG^A0|tRz6m=RjVTFyB?ETZe>;t;3Dg`++i6Bvg%T#x0~R}Qm4s#9i`;`NC86=T zUOQ_9(~j@Xz`7L_{}wF>9X=11O^Pug1c1B|?uK3h=QSbtci`3Wm3PBqKvf?~rb$~= zDG-PhjvY~SEr2XWxJdS7!jhv$~A2f=xi2jS&6w^qmWh6 z!Y)QtSi*($OMB((^-wTMu7pl~=!GrrgVchrhU@_>+$kNqkpqruoO!vx!P zVLIsdCZ^jIx?<2zGJOJI?nHbUH*djh;>^!lYb;6Jjt+r3I!IDJrWU2+gEPWE81}=6 z@es&S1X7icZM;IQ+O9*KE>eW+_Gqu*Xp@s}CDw6@9=dZ6Q|rcY z@r~6$gYs8Vh2q_?#m7b1vqN2F5jLS-EX5)$gab3TU%%6y`X6-YSEgRvRxGI(Zgqt@ z{ssb;Fh?EETykZoxO3y2K7Q}+!<}#VJKmtsE@mH6K9)enRuSrM3F;?z^<#Md9rjo{ z$M@5>1YsRG*I6YKz5=6S+v%IIIWyOHzAWzsQG)tBQjYK@tMVb9;G?YoZ@xSALkN=< z4^k{O`;D8rgkXn)8%Ya3$TAj@BXX*f(Mxcpu24rN5TXi4C|1lE%5M=otpM@Fr;+p) zUT5&MS09~cV+T*U(WFt;1iays;Hl25z~T(V#)8pmG!@r#Eg$hy=I%59#txv4mY`u1 ziAu*6``Q6iFnY0T-9)mq=@n*$@BV|0=VkQsDK4aHMr=_p)W1&i*sPuGv^YGnMrkFMwLN_868F>)hrC77#B-+h@@sp=z`x4 zNQIe5c;@eIygb6!ZM=8`T~XGAZ*Xqc2pIuak}1pz8LQlJ)cs+66frHZQkDr#Tct6b zAaxjiDSAyNrhEW^_!*P^i=RgPY(;U+7G#B7lZODBJC|!c>0YhESR{sc;);6WiG$}N zR;AD!7f-wbv}7fPD0$RZ;)!S0A5SDBLr~+}0^u{}+4#GP;T_^nsUeia_9fhikr~xD zkZvd{egW8}eiil$^2~G;Z58&21@}Wk3_d|=2zNMWF-Qy23qUoX+!cjVk?^A5X{dzK zjHj;jsi30ZyiP3#k^MX+E%lYbhg}#t`D9FEvH7}ptTJT7a`p^aI&fesJkvy*f6T!=YxprAYwEj7uJq8*Rc%R zzZ4HqA0CetCIseITJ|}r*=V1yoceiWJKlDhhCCGy<7Bqp6ufH8siivNQXAZiY+RNJ zKL={Z+U$Ua>eLjeQg!M2I%fZv+tf^yKjR*?jP;QV^vs{1Vw}*g-KOCI%f7;RjjB0< zytpxIpJcVHm#$tw<=^6bS=kdWWF#n>%II`RBKSRE|1*rLWteJ)?kqio5B6Z-a8GxJ zd!L}(ie`9T{IdPw`$s8@@l7bu$TrBU1iZq%T00UWLHxHV7X{{2Q`ZsW@Pgg}b+i9x z#c1N9pxS?7>R5PSfaWBl>P`z9wfciE2U)-@%2mLy!h_r>yDs#i`h|^MU?M%Cir-*_ z{A|YWgK!;`;q(HvtbX-yP>I#aJW_Y!mI$0Oy(I#B72{Ur7|Nnfw2NBEll(H`ORo&` z**JYd^FZknudLr;SSi-;*jt>LVz1xr2w2=2qLpJw2$Uoee(r%#Jw?q2_QwLPMp#y6 zs|MR?N=boG44;L6XLr!m-9bs2isgBhHRswyQr!b_i1qSC0INyc<- zRe;>)7r=!{LPZs?O7eoNeMhkN9pT!ytYRV!HJp-4BH_1gvBsZ{&TSGY3BZA`MCW9< za6aKdb`|2$HY~!0=Yl`Ug|Cr!{Cm~2)Or$W_!ApJetQ>)R=W+%iVIGb)O+ZWExQ?;Te>HTRb z|K@hJ1_#Z7_2#|I>olsEx;HTJne1=E^=4p%{%SjIAnmc&oHwPMEtp5|huht3P1rDs z9*3uoCnmgw9~;#-T0FfQk}5I*XDNN+y84KOmsVSSYysS^KEQSCV`~LIxC4%xkM>2B zMf^ZxBL_0v?&OyEPMm>kuw=)n9LP$XHL{QGRcavRC%XpWv~P3vTJV%`HbQP0QMCn* zJC7NfV6P`x6O@(+`@e=;G0)JU5@(C&e^no4V(TfIKulQCx%r=~8;#0;W>HT8Z>KZeWwK)nj6 z&1NHxC(~Dri8j$1Y%SJYJZhvXtiix~eCRFw1Rtp5{!&fs0o@rt5)O>k*v7c+r5@m9 zq#6ljqwFrl%;3bqxR&DU984tq@Ekpu@};hU*qcka^GyhUFM1QZRqtA>vT)^Qh6)ZvY_pR~?V27iR`=rd*i}p{5m}Q9CVvlP>?zT@a*iQq05O*$Ot3@Q5h?JBf$NvZL;{PYxJaurUm{sr1vb*_Gn>~&%ulKJS zj=_jK@gx{4GKgoP{-0!1)Rhi)mK5UT-6$^?SoS%FJokSpL$2O5T04kQg(^u`ASL9f zwtNe}<;28>3tn(PGEujBL7uR}L5wTKK1M#hQ8k@}W2ZzK)x9Yv{VTCu%knUDP(O%_ z#})5OY)~9;PVB#752|=3b55|ZG#hPefrttUtR=95f}5D03sK~D&x|>}lSPFuu*Y`E z?Eq|!+wkTtfHP(aW^=HPz^}S;0(12)fL^ZW0j~3HxUd6;1(4@UhybiE04|By{{U@5 z3E(mKh&!sv$^-2C33KXHqpCwI3>%-~KzLMH9Fv5bQAJhdQ;fW^wLGEL5voPMAPS1D zJ)B9x7iciMVCo#h6)n=Gb~j+rO*c?s(<$Os2lMAF!rg@T(~ zqN&8?1#V1h+i8<%r&)V?2q8v0!=a+(QZP?p4-%FZ9m>M}%boo^o&Z|(ejW_x0pk_x zkSTahsGnGDUVqHCuR#$B$)(_G>^F%ruOGu@H`zq-5&1|F1yf9CAW}9FDA{LJ%c?Z# z<1C2L$R)7a5_DC=2ypLoyRXSkUtGxQO9DjKV7-i$pgicpc12`5EDAXJTC86|{kxTZ zY*b&0S%p_Bye9jnK@2>18@1Mt#hNtWsSg5gkzU7QHi+V3+8^gfbq)VeC=h$X?rEXt z-m;QOv#=Dn(`_GE$qeWdPD+I$ItN*9`Aeq)gW;#kC7LvgPvAqgN#Xr*5?H&2CS<4| z(t&rwCECp?Lprc5q@;{uW6FLEFa52JL(8wtmFRv6M&k?i%X8(o34oL;h!SAa)_Y;8 z5)Y$~B-U04){N>Qm`&ya@N1p^PSmEM{&yTnQR;EwFdgj0cTd2(Hn#R)^-TI8p@Lns zZ?a-fPr#VvUwH!` zL91wNO@iIc5uZwNAlO=o&zX9~e*x!j3(p)(&X+`S6;h34;87bn&$9YHIr>r;??+L^ zvsU(^`~*_X^4BOmQ}h2=5RdS`H?YOw{~zn%|KuGhZT_ETW9K6s)z1}E6&q6e0)@Wd zRU!haE+v@+)<((%0bwltQWX|4AXWVw#w~bI1%H^vN;CLJF@-~eAvmcr3zu{1D>8bl zkKX7D{&k+r_4D&_@GjfjO#2O#=fU0;XVHBa2wWmRGanS9%eyYeG{kRLxVnb6_NGWC z4F#9`59gr(jUe-Y9N|EP+=gsdJw08M9E{&rxWlOagaQ4&vW;syFcMcFtIrhq^2$O$ z3Fc=>xHtIRBAn>G4c`EV(BgHqNdgMI8eVn-J}W8}pLn`bI$$+vN$?f>b+!IoXA85? zg1k2f?@52Mq&aP%BFp(8FA+@;8z_I`sTsr`T)~PIrP|xWJ*?JtVLc(i%AANM6SvNR zj6<>b(uIItvR!8n()`bU5Pin;X%d=zn=FMH&Orb~V@)D1@V_E=0evOGhdI~Y;6G%p z1KYgIzHWAIsB16GE4j$L2k$fVUgS)mWKv8jstdPcuTL_lPvEFjgS+k~p|18~pF*1= z1aoH$P(!#BQVU2!K14R8Ig2t7=-O8aAi0T}`2v9Eze>a3gP9X3)Jxol0Re_^Z3TcR z+=MNycj+i|-!pXRp*=cMq0_EhiesdiDLmL5r6+bzX~qp$XgORuTp1H@OMb?RBA~UV z;&U^I9I0TDEW6IRj)~K1=?wSx$hb)G8|<`! zuFMef2K=uq;TVmot}?{umf}S3z`5&;y70cWTvOyzJB5<%mxPjEsq?*OtoNqlJ?X_8 z_*kaoQBXf+>>JF&?c&poWS*1 z5G%OZoV}W3mNk(H5Dx5jIQpe(g43s{IgLU&+x;I0ao=CXH(u@kUr}rD5 z=3drohyf(_*6t}<-iqQhs>c6-9sz=7i8D0?HkV#UTn{FIX%zW0=-YCm8qyU!sUO23 zt1F`_J*gLZQhRkT*XUlF$y1Cqr1oUDpuq$uei2sAxWwvgKhikw@|9L1FvW>ul|||GWASebt!?(J`Rl zpnA%6db+dTo?_q=PH8RV#zFP;>|}dPr_|fiUAiZT{)6ku=k$b)|LP&rF1n{|z*CpN z{0ABnfeG0JSq;Y35fD54F`*LCH?XoLN8jmBPUaGnEk_aku$(3F4WgYA9&q_c@_w9i^%59otbQ~VaaU-8nG|muQ)d3Q@EGcM@rn9 z>qki7f!o)Bl`wefFvBC^W!DJP^Rqd9@IEz0w#umJt~bDbYG+H4rL8CX|th`JX4+l#~BMTAixB_PlTiJ1SbF|aVt$^O1EvFl8Dt_CC z3=LEHYQ#et-OXcH|3CJ=1U{nn1uaGNVyZQ9!5* zqM%ZeAS!CeOeCknRBZ9PSh+2Bx%J*|+FDfH5|$7YWpe>k3@AF|00uWUVZP`2zvrAe zGno)VwXMC^UrXj}@A}`j*PM;=A*Ia3?BXG-3kK%4sDcwiov&C7Sn%wAg$2%Nf<8aM z=urO#k5K=nFkx6VW44p*tGbC1FbEdlJg))xlwv(BtZ5H2d7tZ&5>aDiPwukp!%49N zOrBhPtG$0LvLOp=)`uVp7XXNH{){QziGvyka}>Zlk?RlL1yvGpK+r!B0Z%to4~`K) zodDEzkG)XanDc&lFgGbd! zN|`U>ebOM$ln4K=(0T1hqgl4JlNOh2n%ZdbZ#IdqTR*&qPt1ZFDt-H>a27TX5Z}M zEr4hA0bI4Ki}{HzX13NvwbeyAyQshw2*5MD6#`lQ z%27vKBJ*#SC1$cjmB}bg_t7bdUcc9RuQUg@zt@u!y)s~fu#?g&knP2D6taCnq=EpP zhp=UsZsf8Rjq4t?n0I!vPC0uECK*Vh~z4l$D*dCO;Pjp0D_-I2e(V$Ev{mjv_Y^c!$!oa-&Ex>l?e zn8GSxMCuf@2XPp$@;R|qb_<5vnr=N8qfgrD%4H&HnCv0F)(5JQuv>p|D-6pgPuC-Pb>!UaK`tU^(SCqv?90ESx0GeSA^IdeS^Ip zUyCAw^;Nv3Q7~bmRIe@`2YH$-Oo>){rHSiWZzE$x97&6uXg?P{t6_unze)y zh-7_t=8cn_Fz3@lz6PLK zU~4Bgl!T{v0Jly{(U*cgNmF$uHz>H3cvQENZxp#V(UW+jH=nobDM;FLeXp2BeQ0l(x?LM|zIVff- zAJ@iTgs9Xp1Y!yRZvs-Ieq4b&AJ^PcJiiayjlG|^lY8$z^_C9F{Md}|d=Zr1jPEp> zC8jCdzgf3pJo`B5ftlQ!6z`ey6h=`-!L&{LaOD_8)6)SljWQ?tTE~BZ&8G z9Aouy=y=a3^2v)4i+?2Xo;TW^%r+$l3FS_x>spN+?|BhAI+A$L_;qR`ZN+=O51eWv z-n0Ammc(G{DMAc3#z+jtoFt-p5^l(tCR`Uf}1BB87$QCoK!&RZf zMTK3EoJ2dI_t?3I*dX*Za`YKm+ko_#a=RCU!@9MB4ex<-s?Yw5vB5g8n*sOprN z6jf|*r2Ja!1uSb&66Uf2TGLcrwfoST45SzXL3tli&iE=Q`=YJvKTXk?arg)t4dmXv zGF2E4?ab0LN{2L@${Cv%y4ieE1fLS?R40`4mD4=;WiY_R%xIV02hX|O9FSH+ zOz;|;5u3K{WK*m_RbiM;B{t26!)&G0UCS+Dq<`v`IGAJFE!h%jy2joTLX=}mZpLIV zvS%pe3L`q(lEeTTUW`qJrpX3f2QJ9d9fMn9I7P(4OIS^bf@pDk z*BAlS)7VxDs5&e_uv1w|Z3?_bBTKKg7pF-?IMZ%`6m6iT6CdUL*glbC!WJ(62HPky zVG1s;hvYEl77~ls`>5>&@hp%<%m%)35#=OvkOVBExW~1?ja=5yeOST!=sSiZ-Sjvp zQ56q>D9SYSN#qVJFqe1dWnhT>;*`vS=wqBDDv% z@;0(910nnnrP1j@N(_}AYZ%VjIwj0X5Y~;cp4`~^2r}m4=8F2~)cwwrezE$}m2N4tUfk8*opj=&T5BvcYS-B~xz$0!1&!RbpMwQqxU) zs_zAo=6s(@bWx}JM*9(xY!rWm``XH4^^>9vw>#5hWU*KpLyw(ntr($Mx8lQ0Le6+h z97cxqa^%mjUa88T0TuDC-$^3F^MPY&^IM4NB`N9qSTp!2aQ@j9_L_Yzs-DwGXx4lf zXRX;&xmdHym&-gz3JmXZIsb%yS#wt2fzrJmb4XaSEyd+vgd#P?^$l1yPw+Ty8Ii6%P*7Vu0$+LW@Las-nWi=#R%w z#ClA_6^y2;690IMER416P(|)>$ez?L;K7 z{a~3rk>eA6a3YR#?JA`cOk~3en8+>d?&Q%#CyUrrLb7pmG8vkUtX4TY8HcO(&168L zlgnG}gakx7Ihvj5Y9_KJ>CTu=!Uhw#Uc1a*uunj5?M)E_k|^Y6{K_Btg1X}P=Q|O- zW9|Flb}}i^NzEZUx!COFcFcq&U5w4n=#9hZPLO-=rS_b9x9Cog+nmz|aAnL1au!Hw z^h)f}k#`zQbow|0oGj>;g>-g$V^XK}9AJuz&JyIdFs7W$EoI}jM2<~#HXzZN!dF{# zEskd&3+n~hbx*z|nFW#l$1CpoLxhn;_cEj}+#~n>mTrk)Z>&vt$d1hvU+(N>yCstJ zoq;XwAL0JfB>>Mdew>)X4`KhH@Q`HxXbfO@!nxDgKaTxI?H@kCMqBoefgDd-`^Wdy zdVXW}kC#?`8}^S$W~)y7$8l=gzkBwNk=BMChW+C>P{AXye_Ueq(T4pa2RL!W_7A(0 z!?1s#qa(6^c-2JOw0{7n+OmJVlg9pWjL?LQo5cQ+mDc_Nl{s(`PU%H1N9BzPSH3=Z ze9mZ|yC{Y6hBQzg3Z41s_gd7)WB$oB&?@u19j#_Js0G4yM~i&`3KotbS&Bng8p_{{ zo`K{Sv!vCW3W05cNwjwdVBlW=ATWyZUD8e$(R^^W2km1-- ziE~UOU}prHrQV4k)|6wTmEL(Yl(tm8(~7icrdogxm1LCSOx+b3sbkMnqHLq7cbYCW zxRa157btR7PIjJFQv%V9k>jBfyax*eD({UJ!_knb$8(f@AH_DorD(=06n#`No!qDZ zXLaY=s~~_*^-E4MS~gnc({2$J>sACSq3HAE%~;b9eW4+jqdlBrZ2AY7j~BsO!AfDb zHU-~7voY874dmmom|yamN>K2@o~^Cp^`gHwpyAYYw1rDE4Q3P;6HGB>A)}Fw7uyRd zH8?S6Rg=qa^!H$aFd5c6!+PKtfzAUqLDnPSECSu| zqlJE%Xa^^7O1^D8TLWK(=KCf?HBmRsv;cg-u|Ow6&16Kiv#`paM4`2#G<{N61;!zU zT;s)oRLzI|KhdHMXzt1ka5c9803zqD1P$U!xW~C~E3}5vJjyyJ zxb6VlQ-CNCjnOm`3`bL{+Y}>#8W6_v3=TNuXM2^Kg|cQ~nM2u*{?{?7QyhpXrioUO zatlfez2BL}2Ynl}hjp%(U?vvJvX@HOomngnU|#lQ5jZAgcm}pkE<3$?0D*^Y;?;ZY+pO61{^|w|f*Rc+pWw`%Z{MU0J|4x9&o8 z$!-!x*I@+jB(U5?!kMz(_ymzlq)#l)7w0#VH%#({QG-v#7g2+Z_dw4g@Tq(>X1KRF z;N)gWM|&D-9M084Bxe&6_?mdM9uoLu30s_SLaM;BG<$~Hd&DCi%sm>8(pXSuITELT zUSe|N*~>sXId5@Gnxsstxs=<7*?@ejbdf*-XA~at=6bH+HC>Ze&_bK@!5ansp~u*^ zwY%{pgUW!iDUtgyAmt&h429Kz`P^0?9JzVE(5Yu*P$}}WsCzGWPhLN)d5gkgD*utX zE(`y)wt~s9ZUXw2$f6Q^1%H4R%oSvDvC~+^kHfR@jqA6wB>o2HD+f*6i$^n)U@1^1 z@-%XGqft@EoRqB(IY&$LQEO;Vd!HT~Wa55~hGif`QYh0c|24^^>Az0F|M7rn6aQ6t zKHxvnq%KM-l%uyOr}U+T{|pjdP;9Tvai($!th6i)_rbmVsTLf|nHxK$o>HPRpV+i( zo(34e9?MiXOOJNiHquH7Vm~=K(ep1&rO%`XRslYw-^!4LFzzRgQSykE;ilb{gZQ-8 z)t1OJ7nze3c-4YuC-;X!1g0OoPzaOs7qa{7gPT@=j*z{p!BRd?!@0%CHQee^3oe0D zDgZ~PeZmf*)m$gyk#u%~bcUUeZo}K{?QFw^_8wlX zN9Xek{4M9I;O~h9C;Yumh;WZRuRHu(X87XR&bDblB9j&Mzjnl2K-K))c8O!nYB()Mh_eWnUUk9%$NFG zFZocEbf9`(#!iqf?KjqV^Xs(POXXVAjX9n=bm4QY_3?ZI&1>+To!TyOpxUTr8c5g;l<9uoO=eodWE8{Wjqd9{AB!0-Z37P^2#1W4~Q zK8xISa7R4wg4~27gR=JGTKq%cht(GCeB^=!c~Q_qzX=#&#$5v-Bot#wmeG@gV)muW z2I4P->?zBNtrrK!wcuaT-@&?C^`&YQy>bQP*$<;pJv2{^C5$E0vWiD*S^6X`Kj^7K zyITGn&s;$weFhhUQNvmm{-WX8D7v9&5<1_#iBip`=uxg*^L)ZnHO?uNuGGO{xRcN zV2)!f$Faa12WYt8csq8ceF{q9N*sbx$YWl8#yVf<1%YZ7oEOL40$Enwc-qs5Y50s6 zJQ5~n%=2uJ>)&{qmhTxSPhvjc2TAq zGN+5@GF_~yOc(EQy1tN_-sjr==5zonoQ^L%Pv&2uWgVsU)Cc14B{+XYFXNAa_%U^O z=sItyF@F|X86LXAS8B{91=9^ANX!6~mq8SrfC>OOSJxPwryDbHUx$$LR`CR%Q9P-( zwu*1hT1Fa~RO6Vgs1@eii`{q$^PYrT#X0~&%%~Lv>F(IvIG0urGu^XFN$9s7ucIPSV)_RV{)XMTOJvY z)<+Ub@O(GNr=E|po)@7f=9htK_>o{S`%mmS)CI1^EI*ilaW-nyxPAE_Xw@%}s-e$< zlB$CpD+(ll10d|pe+%Kd>q(q)MLkCSQgT?uE}ALe*A|%s5qc>ix`Pkkk_@PRCk`2J zL})a>1H6bzKbG}lAZUZn$h475Z)+naf!tscNRY(}4>C$BJQJ9zGKpiDN&-29v~VhB zLO8F*3RomDiAFBu(g5zCkQWq9B(D&32CmiNKFQ)T{^gNKyr`FpULHCAlhpAaGKdA{ zAk3qZ)F6-;h!Eq`Qt2a$+=DzKR)JMS2E_M$O>s7sWDdX2kh%CT?a_oKq4m-WTq^+-%xxq!XTH zR`jl_N5gBq>!TQ&r}JP}MJ77!Qi?j0##ZF_b-1O&wM#L{iqkl$+EE4ZCp+Q>>J}~G z(v90AOSeca%GAZfaxn}S4hrwk2Lju%*Nl&JxCP`KZQ7wg4{_8jV*n9x_V#|#XV||- zg05S^i1vBcy}1!7HZ?~)BGlTJ#nQJGKrKo=?|P6JQo9q>v(GyL6+whjkQR zuecoc*x%MGl?p_Et4fRR2GFx@Mw;1pBIb!_btzqBsA^qROFS64lB#%MS)K!7>@ofr z&7`riv`htbR;fN!TwQ8v>GM~5fgdHuFSYM{*|M|Mrf9*_Owk`(mmIh>Lo6u>2O zK~C-(X$74)^zSrVE^#fNo@I5w;<1!Ar2}NG*cOamuxG|TzWOyfn2RfPfCQWtXCtJ- zl*F6-#O~mxbxv>EEurPQ@RjtY_>zAKKCU>ubq2alm7(l}BiV_uK8{7wiL+RsfHev;4|2G#X)o%oK26DsZ$c)V@is-j8 z?Dy$z8IBrDQFvi-S|$E50~_weMmesf$};%UXA?nh8)&_>hH#e*p%O4e&yo^*%CEHt zLz93h@>uzkO6$c~w!g=*;Ot0|dG>16=ZVaNa8(g{v>H0cK^K$Ct6Q@S5uRFlgG5eI zPT+f0FtL(TVkb|WtHxpadl0bbJl~y}uaL!r$2j)U6IYOdA77++uCpvk zC*nqU$Q^hT&u)$-$mU_lFQmK4^2_W`iR#~^KJkc0F`9~(9a5#zC-&_oJ~6Aw(kJqO zVcF#%-14f*A&zop7A&u>3W`K6<3-I8B2c75mMmky_>O*tHW;@xHdAZsq$KeT8-Vt9gu(_Ths57;U6`Zy4|bv&e7Ayo)yORw)?&L<5XzJlS??_|7X4gi|{ zFF;ljnE3UfHT(4mHkYc|PecGTov+;DAeU56~!o<6Gw2p~$ z55X}{_Qsd_4713OQ?qxTKXoYm{%8mPRQXBm)9i3^cux2nexr2m$zljgXnt#j= zRw>qe*aif@-NAm7XPOp@LdcsDv8kz<4kcIhw@=i3^!mSDIVLn_BP}c!QxLL29Q( zYqc6W{sViF=P&ANXnc-7==z+>8Be+x%3AJ2IeErG`@?r+(T#WN`VS^zeHN9TRaSCA z>DgtKm&wItytu4#s5g8uN=OfYqv=!K_37e^&^BTdYw9WyAUWzRw|CH}v)z?_a9qUM z-q7H))T16$@Aderl}|kBiowYY?bMyHqGNsZzzVk>XmCelu_lLiW7R701JTiw z*jgM6ivX|n+}X(uqs2Rok%wWVK>WEkjPoYLa6=;e$<5&{ru!cBom%@tg}CNTx&A2f z0It>aYVo!dU^U;o*?Llz`eY=Y_(L8X)i&iU#43Ye#ly7MMs?J@$#29__qmUE>F_-NfggM`P9xB@ z5gYVb`(1#u^6s(#&(W9_y8(wlcbX z%)RbC@(Z3T1o`b9Y`$o`D!YOweg72qV64IVp~fVR$V1?9#nR#2#)Bm#+E43z#y&sF zTK)_@V=x@R^la9Ym1U8%eF%oPzl%m@Epuanj@i>JVvZk6xjXXmW8*rs`1Bln%7?$g z!zBCqKWV-CVLaA)-La|Vdfk9~hp}D(r24nMUPHL(ZLZftKToq>9q}pGYZ@M=td|?{ z5I&p^l~aoFim^BliwD@|N-~j3CIM;`7p~KHe+8=I(gPbH7^%=MK%WbHSAIN!ac#sr z(M(T!*4)3$)B8xl|mp%m2^^*kO*H32_hdQp)QdZ4bEtykgu z5<$JfcZL@tCLR$ej1^$8gr1L9#(K)8-)+Y)B1XxxkdFX}^;G5~~$A2#3M*+!*_KNiC!Ptvtghver z1f!xPmP$LZ7=>aa#a*ZjD*JcT0`KBU^qovTF2y(yG3hm$%g?{W`tkxiPuM%zB__X1 zFKW=WVU4iMwmo!tpzFWRBaJ`F!q z6gr+Q5tlh{@ywgqefa~%M0j`+tK$txg4iV81$_G`azhDUJJ zgjRb1qd-u&9s%k>Fhnp`HI}j6a#7)l}klRLsgUXyaPr=7(q0RZ+U3hqNxf^rwA#x=PW`BF0euQ=6 zWEW&D5I^u#!hyiLF+Hui6O|-H#BwV;XvTlbx@`pS(1QOdzc=eB8SJG~AEJPqU^58^ z_2_|*Asx+=$R&n&>X(KykMdztGM@HS;k&|ha}kbL+^l6CU4po@X02yu#5DK|*Ls0^ zc+z30met*jNA96o&rI;}B^|wix?J$`CcWtG%B5e`yDD;ZW39e>tzN$s{7Ama>}`J4 zy*IxC;*2B8sr&*ThO-b?K4Xp08EiILV7S-udj1kvFRo>5+h^W&aA~*~ML@(M;53y758~I* zfeQxz4S%)juXsPc`jSvk4wxmVuHE5BHKnyX{o(#+`HQyQm21?Oc3m6T;;QWJcj4J5 zZ0D{QqS65A1NW=UpTC{_*q3pWXW$dAO22MI^gyEvp)GYKf#!>byZGmRp#r*4CxmIJ zF%wmaL7!Lw9g%R5V%A4)g+${uHsK5n23!@Ce6<9^9b*L;xlsRcrq6{az2-xApva%q zdZag+jIISv%`JJEt8u9@Po_MycER99xMnPq5M%+oqRrDiEL_6SDRZA7#F?~OdvGP9 z+M}cJ4@XuxfE?oxlci^4V1gL0jQm&_<1+Fphp3>3dl-*j53oS&Izj_JiD&Oy59|u} zD92slJcta(-4E5>adKDPTB~kdV!hZPFFudE$^QCT+y62Au`9{Kca1+*eD8k^f4m!7 z=D#F=Y-&;i`*-1wS;_PHKmPbH#vd1c{+;BHE0GHM4fDt8%&zcSC1Tqw1p>&>*}xgU*W*IFmO{m7{AI&>uKhtOfc)dhv#i z_Q6DkGbGp+gyqZe<4a%uYg%b+EPt5EFITeL=-eHVWi&E?9{X6*s z8XLYs1&9^UXMM)2dj6|egO$4RN<6z^Bb^KwITs4-aRY3dIBP{SqSQX|CF+P`hqKuZ zbZ6=!xCvMr<(YxQSP`)V*&P#m!BfRyV^7O;qmlYQr-=-gNXBz`0Hp&eJgBtKg?_Q| zG^hnGH}zwT4(i!dcT)Zg%%C1Glr*f(F45;RS#GoFD{c0E$lM%7F07?4Z>ZFTSCm@6 z3r~2U*6avhalz6GY`}ci1K^;)Z`=UHHs=X@Y%}JnYdWSw_0nV^9%@!zY(I0O24rC$I@72dH^0{JaAVfaV*D;VXb0Empj9?(h*xaE8 zVj5?lA!1b4NH9;FZH)wn=|~2U+K_TUi4BReFo6|y%)!LznX*aFwJDGh zsY!VQ%Zh!2Zo-kR)s3bvR7c%nfLbGA5TLe93n=ryAOf;&0BUnvz}IgO4Im5q7=EOO zuZQIotZ6M@alNm*U}k$wnPIT4cfaMB0%c8{lLa7iOaUXtc>*B9Gy-ILsQl+){8^}C zV@`ob+0aTcP%i@YtIUZFGV2-m3>;fz-LC-Ch;Wk94D1M{U7FdM*_Li>h|YxD7F3rf z9)Zd-4+~)aSv)(l!5Snqsr;P@azz6|6;M?RhKaD@;V!)h_z#;$UF=3eUtkMt9;KeC zmxOy2(9AN!moe5e3FnMHYuS{N^WRora2Z-paI8RGM_=Izs@NRw1zOLJuz2Kp1507; zsIPpp_^Sq2#qlG<-3y7xyVog`hnn0mSRy!FFn5raimT}m7^qdpV7Bwa+=ARNVWtKx zldxJg5Gygyy~ANv3oCnRWSXSXgDH|Z1`eDA-nsgXi5*~&#DnPl^3)=9JQ9`bO30a@ z8VmQwInQQ4prRyeVs3qncE4ha6i%H8 zvMWH?Tj;NpinWQ$G4c@L*OfnDtZ<>uYJ$8`ulFM>Md+4I=7u*Ht^`(>Xph$GnpcS3 zJ}$79H5{pznIvCeN1?$unzo`dSbDRUrFu7r)efw7HLZ3iPmS`YSU*K(UzLYzwAoAW zqqKIV*R@)W#%I8qu^!9?HpwaJN7K~mXh`o`8Oh0^n!l}mKW=TrjXQGaV2F=QpW?i1J4k9v8jMHpeb@?&3f(J zXAr$)cqH>Vv{Ko2d_VM*#Z6F8Onm2v<+bqFb3;vv~c<(aQI zuP;o61;qU9I?OTL;|W}gssiy2caP&;lMt4O7lwYuGq$0DU#kZ0k_OhrvvnRWq;hU z((`h03#ym==Wu(Y-Uq%oT>Y#3<-^mzLa$@6(6vVYpZ=9j|C;jJx21ngYx?)mzed1V zkVHL&2mG7rU)R10Vq*&?|3v+3%`0jk|9t&xggFus0>T&n6ZNkbRyrW@yQzQeZFEfG zUseAKK5Gr~f3f~`*@}Nd{p%iR*8e*C*Y@RUNApk8zphU|ntzi1wPu-xgBCaXj_O}s zFp+;%{p+#6DlOzYuYdh&Nvi%eu*%fG{`?nFpYm|+(7zt#-4^=StD6)0*X{?{05q*T zR0AL5+G+rIN2|MQLt|#I;p526tR`jp%!=iuv*L}ABb&6{F54dCLUklk7f{cAequ*HKHCFnd zV#B6XpobZbWb}jv_q4o^xVklEC0F1)6%dBDK6yO(lcVs-s#PV|lw4hMRmrF;@im%m z_8NPA;cGhS;mcsWV?p%5cDFCwcR9Y*!-xsDXe+erNJ7P}k6mb_N;vW%Fek~q)1D{q&>DH+hL_hXrr!OyipJA@A@p<5{x?C;B8S& z7NJucBUgX2%RGi+pBRK>`$k|3PcZxD=@V~AlI-E=W2n!;-@!sJ<3m?pank^H{%F*X)VmLakOb`*%&s(ZmtU`<4&^R# zPe!a=VzLE|eb^xuK|YJ4_7%mnn(62QbBkxsS%hSeN%Sh9{iK58>D%WiRApxSSjIP> z2ayTxz_9IZys8_$C|223y2wWtiG7Jah&A*h?)~uR)AX@5pP;j&#C*(->HzD0<3N<> zQ@5{&`^_F$HLAsGnXTVow$4m8_&hRW9dU|GAh{qwxW}9sBq(&qg-4-)TfA^3^1%O$ z1qcth7LVfD@BC4WP&R$~E8G|Bc=GsL@RxgyuS*2~=Z*~Z>OXQ&ud^#p7#XTKd(X(w z%>H{K$G-7(JXlxJ4VKRwZ~XPjO-TEA$JmfWXiWRomAdO1*mo~0_SdYeIJ-m;+n?VE zcQ6Wj`HA6y{h8BFC=K;~7TyBj4?=-gx_m_&ryUk^O3v$bdXbT$if z>FYo6cHM*s#E!nA4dq#-+M+(4>zguI2kZlX*G(uR_8Qvl;9bAf*X^2tJ_G+RT2c;| z|5~4MS@D>qD9@GSD_r9XjfWjw^SL%+ux_ub-dn%4hqv%my}m9>udmPb6*l@^8*#HI zjwtZU{cN9sZwec|c&r;}#kkDvD_pA^nlFDziLtgMu%(M0*t!REEx%0k3gIOdC5^yPL#MW^LafJBYlj zE~JBQE$d=8e12f5Vbk#rfOJP5eHf)jRhdylpSwx7jE{Zc-*~FI}Gwv_(G8I8?yv zRPi_bzR7bj{dfp}LH$ZlEEt)&Gg!N^{58p1Z#{G`h`^X)J$x}hbXb9(r=UEJ@s~&* zl0Sd5H*nBhBFhG%@K)hUTxXWNj5j(w%MC+z#~$rx_2Eo9eLIA^hXFMmN{iN(pQv8N zGk|jcIW{P7^LPDJ5rs8E6nbTvL}9DH>)Rj-@39^4`j36x?gdESI}l{ZJ^f_(dfm}$ z(YB4BIBzF5-no9EVIUVsi5LTN(M`z3l^_?y*<^CD#_!r>lZ*8rBOn*}hU8)i$OT$4 zt^~Q*s~g=)o~O9u&;PvC*bry}y=W*Oi@frzOGASPpbiZB+v^JfAD8$-lhM~}Xsie5 zKo-eXVU+FR_!+P372NOXD}=+nJ{xq%TfaQlU$_q^Dq_h;=AcV>oF^j>>w6`E4?rbA zc26FG9-LHSf%Q~0V?+7LI9F(dwy4(t$6CjFC$%R# z-vuk|-1&=21OXE}UkYq;`?R4u((d_5_MU6cOqpYmFMa(sZ`U1#JFH#r3HTh9=}rvg z&BV3?It~EBE<*ljVCh91Q_T&KLZion2Z?~|pg-L2$Tzm%$oA_N>ye;ufUlD03E|lO z;l_IgA*V_3_w(;y9G_aF=Lb?pcefP zft&Q6!A&Hy^p$I+%Pnlw*EjjPBED?oZsaZn*GJOG6kxgj`=8|1v?ImPC8c>{YB z@UWKfus5^BSOb2yymesMYXU=`1Ta9q+28~Qr;M{E0Sp-B9_)<(gZ5x020?&`&O@Lo z^ncg-#3+9Q@KzOr@^>S_54nIC(`pV+tM*|Ar6HwL*s9n{oR*IJ(W~)~mEQ*eu++%p z+_m6!XiyzC<#x(I04fTkM}eh@Sz~ebvp?;@ zO~6ykI1_{p77&b!IeU|E+7bpAy$%03>09!)ox<_|OKjU9Yum2FwiU*slQ^=MxReND z5)k(zs?E}#6(oCFK(Z_xqE?EUr(Nk>jEadOe~Y{gr|O=>GJ=x4?+srnv{?(dxRmh* z#OXvQ;3pCnqjw|5lz(@2!6Vl)qK7Ae9!s6QRQ|j~W$5s2B|b^y^Eyy1MZX|4jRZ}BI==+;iz0GD zod>g6qUaazgMQ%~OP!~DJ`(ad`GuapPe-~cNS9u;qWn(E{U{|#&VcONqrfiT<=<~1m3K6)v!j1N+&!b@jC9kEH zbGN|OE`fcS(|VPLGA~TfvZA$0p~oT$H-;+oeI&PEh*j*KAYNQ7t|GX_@d&JkI)9<; z4b*vW*Jf~9GOSpZ`9n^OxQQ|Jfqm|0G)~eyNac(2WdGi?0cv@7VB(Y=z%L zbC1?heFw|(Qzc7ck?78kUIl)z+vt(Iy+i=P?h!Bnkp$Vk&K{`(0)v2o6iE>NT8iR_ zSeRkpDwh%KOq% zR75H!3}{ZFVi|DFG@yOx@A@@a*Yu;kkoclM00n|sE;b5k3U;8$xgI9UrHBl$paJGh zk%6K_LS(4V#r#Z^+k*A5i0)blTOu+nu|$SGy_Cp+9nXM?3W6ba`*k#Cs>F3bB|;Gd zIVAMpKA;RhNRa`ZH$Y^7f+ z1#Oijq~)wHGoIzVGqUG0W@%|#J*yM z>qyQ3x>!(?fYyPQ;ie*>NE702;u|6WN(9Jmf=JRH+AW$dxe5dmY}hwsIU!}Xj0mq= zl4ZRGCcU~VFaiBnU@``ipfxuECa~rbOqSYUvcU$Er2vyPToRBO({eIKfr%+uW{(JE zc6WlwE(=T)IW8?yEVw(lT7n*1T+I|F>j5U+yPIG_S`DfMq^G2wc>&T9Mk}QMs-h@K zDkDg|O-zT+2}oEPI$B0z6RWjaHG_wvzsEli74jgQsa^fQ#V1~TV~fwC(&-leS6uwR zs>SDdr=%XpCo?@8Yem$t{TJeU^J8ea$E2xJ0N% zr>J9MYKo`>Or>{0VJgHBhp6MkR17gi)VYZiz#-}&AH)~x1NmlC`{f%<@mrN|j%g|1 z5Sv6kIUltKzlBX$7x_nQLR<3YcW^&`_i;Qf@}=orF}GhL=_b;`HdY=@c z-frFxqQ2BY)LZcWUVWTI-RAwtUb8+ec)##l(`&YryuVL^_b(xnr6i}j-iEYGA+F*q zlb){@Eqgua`TOMd)B3j1us2Toe(Wp|afT-lgcB;$Mxi4E5-QV2{;sUVlGYEpA;I^d zGEw>^9YIw&cnv7QXMbdYGI+$draJw*(36ip#A>z3eQ%l1(Fh(O&d{Kz3HxU`>mvBA zGb1~wj*QG20XJz-j!UGcl&{hqx(9#7GdjgH;YDc79U^Dnjt?2y!qVuGlXykLYM2b3 z{=Oi8;CRS7wt!siM*L+jD*4bn(Ge}H=Lo#`DDtkxS3lLmD&Ie{3fGK1KnwSkS5cf%eH^X~n(i3M_&n0HGD zeqQ-QjQUA@h!okf%29O8jzUj7thI844yUcI51J>HpDNGSLr=>@SahH`p8flWq}$*d zaBj!G&qYmzO)WSX&p?r8EhC^iyw-Zxr6^t+`zSfyY}R(EP|o0hpd1ls;X^ZqW8y;x zuBeF*j0~772VN68i8PU&x8qHCq|11R??&Fm9oqA<7@vh4^RaO9BbqPII+qu_Q-?1J zm20G%;#_v$gx~bmmoW@#G@bVo82mR$50%Jsu9=qQ(z3kR{5hV5yhKxT@fUh}24)A_ zVuluc*SZnxg3&On3}ze2;pITE_)U0$E$8V*NiJcg4mWrhEJvgDMDsmetn63D@H)u* z9EiDRYCz^^?3te}Onhc84Ze-M^#ro00|#B&yd}s*hY=xnZLqHLhryK<$9N}yIob?I z_%xoqyq2+gU%OB?)L#?V=Al@qR>KSb{J);a!8X`0W8A7M)%^idugi7v=+=HJs(N*}6mgqJU z5J_|$0!Vt1BgjPu-C>scTspm2ftv{pv z%JWpD4oCokiV&27W0p{yIG3ahB|?$+S_$(Ij&Vh%xJRBLk5=O3$gZ&&4sfg5)p0;a zcOwbaR(tzZye^`3XKf$N?PLwUi8y+l6>88w3y!kyc=mPyAH+5(x`VSOwVIFdhCG%S z(RJ1v99#~fVe!WKXp<3_teKc!ug(5Xxjqku+uk~lR6m;Wk*ow!eQrmz^(=gj@i^Y` zowP@PE(^_b2lS#wt>$Dt55FL#664u_nm@4v%0n_f2)(F+B{;U2<1vN-5KQ@_C$<2; z7ves*{Ym*dPmv_><2Ae{NC;>UL^5KT4a2U=K%oY#9~Xq{cYVotM9m=@mMaZH%K|x& z7|?X7N9Pt7bHvC|#^LE?`?y2Yz!A|5GQxeFG;Z<0dBQ8P$Kb!{9km_i;Sb8Tbi+@? ziSeg9`VfA6OFi%I6LJ9LRH_69cQ133ri=Ic*x&{NG^YyVz?@t%bGF^ zIXwJ*LjFFj))mKi(`xO*dlbV+ySXkr|C{T~bHSU;`&=E~CySGF!72IactP+Dc$X_L z1aV3i##TE|2oP4>jkWBC_K(ADyxj+XVxtk@nR6)vJog1a;8v(nqCNS|9p`_%&r$I| z{%(?AI1O7#q;xBBVqfELgQ9l;HbkeB?Gnfq*Ww=pwZ*f?R!dB&?*@rWzaBmN!kr$v z4B_|L^2(-o_DT%IMleVG`K;|6f}q$PK(QTKuo~AyvCvsWBX>Oe!61n=W=br}A`VsF zBaZ~brY4?(?J{S=eeIIRzJjp`XP*pi&v{EHv+o#%Gft=1gJw z!&E+zg}}QrYSm(dGCf$R3_vs|5BTQF0IVb91;+M`6c{_h&j4po2LZHr_KmXy5c}Y1 zJo{jk1#%MKEcASa?015mFGi~gdfta{j9qoo^QWX=nJQxbJ6dlz=s8QXJL&l?a-EKz zZ(;9;py#jixneERpJFIxZRTdVjiNY<>o^!<+$Z->>=5gsuVDB;?vOHbYKKLcoAF69 zWp2WqRw(ltJo>vS^O5&>m%kIk+u93alTx z^z`x)XV9DC)UgtEPzQLw%^x+Uzr>%O6Ozs?m%S6QIjYzXjFW zeXb_0`a!M(&b5$S#|_AJMD(5`*O7%xRUIT1CS|Ve#>k|nkavc4c2!_s%(-F`*nkpD z={Od7Qp|M1iSc~G>KbJ39ND)UQ0}fyn6n9NLyNXXl@F2iD1Z1nRie7d*(r!H4FO8v7 zK!%9SXteV8vFBj3yk{7bigEsoRKy=0&vxNmBn$@*WS0-ncfV8e0s-DfNE#U)aJm>w zK8uXHeRuqlaONrSk^{w-QTorSd_US9%07X4Dqf>8<&TddXlFM~m>py21$rys0SDZi zf$CTScd=vSZflG1NF|po-6Gt}C&v4c*Z_z1C?y|?GQ(dx3ZVZFq%|bhqKd7nvJW&! zBHgTId?B%Z(FY#J=&A7%-wW_eXaeC&Q3>mgPymrHESiujk0x&(jo4-yoC;zEDjpN` z0On1Rh_(or8%QTGrnud5xZzE(im}?@(kCj0%XvWuBm3vd0mLT|@r!9$&1K2Qtja~E zbb2K$aIyaueT){wpdla+;E6sezgQOy{T0i`+n9>vA~QQ^2GLY5C%_Qdkw#dz7GPYU z((yP}z6|vWss->=3sMc0iey4VTpI;NDdFj{KEO{wZJ#kUi-i?&j)-3LsupbIHzAw? zIN8Qip1W=0DK&0nBl|(0k&|uW=_CtJ83u_&+4Fowdwkl(dvN4~N=SyAZjYiPp|Td3 z3W(bqdFhXWsZ(7Qck{&=oCB7-1nOuJr>7?nbyxyXNtr@3oY>mAoM1<6?St2_&K1Y9 zDxI?9qMbZ|Pdt0iGzFXmfUv)Ith^uwP>%JJehTYUaBU4x9j{mPvOmX{#?pB93yyCU zb`LbM`&W1($ej$FOM$AZFG@kxtMRUeG|;cJ%a5hGdV;h;zf$IpcE_V~Br;hG?!>cC zdJyFNSRkm0iBPtPiunw7!yt2TxVEtrb5$cg#yR46cK24t``M2aBHmEg;yfhI0QsG6 z;vn2(EQII_T?A4gIEa%b(%|6n_Y(&Jlt+q#8-Rl!#tO~+IUE1XBBz%co`Oq_DFqfk z&IK0{{JWU=Re&Ky9=%UtAYBtcqba}waF?vgr%eo83$sV;cL@xfCwNB;Wc)V4Mqwb| z04fQa#MamtIEfgDOOulbuWTT0;C+!DlJQRMJwKZ1-COk@N{Y!w+tn8*l(ZHbI`-)SM^iHAVO$?_I-%_Bg@vmM_iBV#t6 zw1SL72d5z8$~$bn`2+9n&Ce^gd6Q>?H$31(VVheceJAdYd&8M0kZsELD7Go*qlcAI z*5sVSz>A_$C+BPzzK+FU$T+zi$x|B2Ct#d^IkN@6?jgSNTt{&cHsQ*05k~kVtbF5< zyi3VTmp$20?D8=v(5Rj1eX%Frp~ch}I`=J53#s<8GcxAYgW$Tr_)77wyalg7i=$ev zLlTQty$}s4vcDH(e{TxeZ+XalE`e;-?*zzlU0QGg2LkxXgUuZT9~F^H(V*c$&EJnH zdIPO?MpnIY5cQ4`5BjDI2S?{!0zrah9#~UXTyr%!L^XUcL!Wh^3Ukr|U&*v?M9qX# zv>*$}BKFHYw6?!}t}?|MFir3glYPQe`-0dkD1y5qUw#^oBiESeZJn?_i$F8A-~+g# zK)Hc`@ilCdL1nDY2Z7)P2`D`Uv`f%v|AhQqAeQa4`PImCMt`}Hztu{iiW-*0O&-Z) z$4Dw?VIEnq%WBov@+i)X4AO!txJaS?@XKQ*8ZrkWFM+u@ zAR$N{ZEYEL?o2F01)@>DmAOARn{%(IiTc5B0O_RZU*e!bq1M>`L#%}hF}dVnhMab5x;ob7SBM$`_r00*id z>U|s};%UJ}7y#o6w(Rj5pL*AS3TUfbeOb7_C#l{C`%G0+fC^BPqLG(=V`IY=vOhL9 zB+g^zA=RP?J_;m_UX82E!XBLK^|dWzHMP=(oLN1_>VliE1!EYw1L+b6SAU4fNH^!O zo40UvS$F_ua?tLkxs`4(lU02;)hCFv$1S4BVe zPX@US54j0XM&i1fzV;UKs_J`OO(m9Ad3sZIPMGG;?{4C5bb@gZF;EhRigTV zmc{xi{Q~z&aL+qy8DH|^Xu#n8_!cBDzFx@g{rbzIt`Hnp2x!plX$k>dD+Jif55xT- zcSk{hqe)PgrV0!J&i^ZH(_jy%Z+CpmWwc7n*!Ac+5XMZsofwGn&w{lQCEq4WvMNvo zRSHxEidS*E2<1RkAV&K5Lw8`m&(eal;nUg={K@mim-~%7;4Pqngz^=v3Z%nA#TIMO zBHjaGi)huqV)G!b1vsIC!dwn?6KrMlPTWU4t=+f~{ZQX8DpWlnkhDCIG}VdOeguXm zwtp%OdO!zI4+x7=x%!fDAB5n@5+1T_lN?O4F|uHxwP9mS0wEjb zHBR8jy+!Y7HF7>8YXZ%Hq!68qPA>`fH~TnX_Yp}85jaRA8X0Kz0oeR46e%s(%<);U zfx1Ads~u)Rot`49U}vHMtYSOov+9@Dd_u{cB<8acv_}dMJps^7*;6wh9Eb25cUq7OQRGgb(* zOM}7MfHQ0sqF?%2+_7WlN(mHjm11y}I;@BmWSaEI@Zj^sL5M?aAd3M-@aSbEg^(to zeA8*5ODGv8B2fcthlPHCNMG=Bt5Vo#ArRw)KzKkPwtzrvX_IGU!3!Me_Y0xq2<8g* zHE9GSF-mBs0RK2LYfuX@9>!wjStCPT@JT>NqrsBZegR@i417y45N09FvI<{mfo1&G z;?=tZw8>}(Sd12gT*To>x0y;3_!*k8rJtvH0U}Y1+8>G4#nKL+Liqh1vAYuQ@O&Qx z2|;S?WsZbtxpu$bGy4Vc$OZ90Rr?#UhVR2{c7Eh%_o{wbO$_&_qffX^5f49`r#n&N z`%QV{VMRY0lITY|d85BcKd3&s=ZZL%5KK`a3iRWEk}vk4pHd?#^y5p=4^zIt0XoSR zmX`7bHWFNUZ{+#~_Fi6Yk`Hq)2Pv-nwN_JM$rnYp0UajdY9vIMq>^Ik7(crp@!0>E z-NjDqDKSpE&@ zglR_~g;pOGdG;)zmY54=w%^NcU)2)>$DJ*!z^2C8hEppy&d7>I* z^qZ9@ia~t-Zg~QuqRf&`o@g>h?2sq?z!!A+-H|7J^Q{eQTb{_92vj`+c_Q*3st?K& zXre87q8=<%B)ub%CuW*`X~DMTiP7ljNaTqevyZmqi9JBAHspy@^IFOi#&{tNpPf#^ zP%-Wh@%X$6^fIuAQBBFXjuJ&v66h+ChvHx6?K zlI-r<@iI6WdR{jn4Pm%KvTAVYmz=ln8z-$0N!|ApQWo!?}0eVhi$Tkr5|r9kjvb3KNIcu?gZU8(F8` zQ(DKT$i1M{I~}6EtMbt2=~B`7akrz9s`8` z=J@gLKehJ1-Te47kRjs5H>ck}3sH|P{yqA=2Q<4iemvT2-@%Vxy#71Jk6)N;ZCKm< zc>eVO_9NiOqs>0RkKY6ZZHpflqMIY;$J-yW=F>JmZUpEb2|uni`)G?FPh$Ir*6$z5 zZAl#VUL(Ze20V&qe|VLHIKTqff<7qw->(%v7W?1i$Y>G=kAT(N}@>$fyk%jo! z`^vwf)yyLGOg8pidTknFFjjc*aDLxD9z5YE)?V;%WSfwJ2RrQL7?PVqN@wzWe~d!l z*T}+Y^7~O5lb_V9vrK+(lPe}OUx&#rvh&M>V%DFD2JxEWy^peWllPhyzXnkB=tSI~ zYqNFQ`_dDF$b7Ta)9?Yf0_}W%yH3%8``FOYxNpZNStB*|^>5PNcMN#x-)ryt!yIeR zl4^jbwfEJ6aUBUg(Ct1BZRpEG`$tR&J_uP8X_XMHw+wwR1MH*A+i&Q5!0e+HLeLkR zFH*vIwoiS%bwl5rJ}n7B^OZsfuEitN|Gr!ZK`Z!wPA5PoGcoRT>yuH3#1$b#=f*Ug zXgHeT2)SDDXuKm-!56+AF^0%4{11#v+4oqAD`7>u7(_=mmMbfSoE`{LQKc8TE3;rg zbfMfSL*t@fivx8uym!SgTcM=PmM-we)+3xEf!~aU83NHaa>{!a-C0SxGi#~XQIg5e z>QR(jR?Gk#qcmCh(rB1H*zdsNgFIKf!(cFsqWa#X$MNik_|CSf#shWhxHtOsP)u>BzauZ)$f?T@}l(X`2f3iuICW;!~bl3$GN&tPHw+iQQS{J zvTV}#$26o*oz)OIkRf!gW^sb_EruEasVi6we2R)UC3yosxq|Dlf|IZ2XDK6y0rn`g zv7oM#+Lw>A$1|%Xk(ZS>$8@VXCX!>D$d6-BmVy=h2)@5)Hg4H%wwD~AZp8~7!vAv1 zH$ad3%(j5=O3c~`gdBRZ|78!r-=xRw^6@l5P; zW68cUt8NJ57F;lao6H4bRi8!p)|9>2Ti=z z>8|~?h1Yr!f`!FhyAqHSor?Rcmun-q>8~9H;W|}}vpT3XJ8?|FHC3;eadut$8UNzSu0 zzElYu-xAqgZS7Z*KIb=1qW0jzfE_o(W({N9YCrm)(1Y>CirBV2v+5tRn6ZPP=&6UdG8# zAl4@{+!xugA6oGyMW0s;!m-_FA>Ntdws^ZG)#h0%K2Z|9*66dBat_;-7{3ruT;Xjh)`mRmpK$j3U_*IsO3)q3=v4 zz^9q!STKpR?oHmxBPS`N-MrE$1`A%lWLpd>SyH3($7 zU-TGfi?p}HzTUP!-8`V{Jf`*VfcR+`UjiQ0lGuTtN%a0*%vGJ&fYICW*K2HU(L)Q= zw|jWZ?7`fhPlO_wVOt_0PGk>eXwGzizt8wQIvq3fGLRux+O9K4X701LJp)E2oDY-u0&L zipV>?>!qba$p>gPbBSph8~*ZslpY*i@8-SY4arh zBJ*6u9hZjYNqTiD5~EO|W1fd8*Sv7Y?jkw(wt8J)_G;DzQN51!Af4z<-N@ikIw)8T zqI_kJ)^j9i(!B**o>kUqYthD|N44OQVe7aB;` z%?Oa?8lfQmRrz(?QJb|b^}Bj`d@K_~bjfefs=I<^_>2e~jJf)Az{I$Ozn>J<1G{>& zAXwM>${(_h$3is7dT=x($j0koRqHGA+TiWTw_$x63?P?4l82JppoU?-iWF>q0*NdD zV*YX${3NeqIaA~h7p{vo;f`M4Wc5yBaMEkut}sq;G#F0@-${{_$~A7xi6PKB{vtHm zXM7g9rDR7Oeen*u?u$Rq;{SMSj;9Piq7rVUU<;YCgr6q?k1S-6fU$*g#|dL|aR*?C zYBQytnfz!fZrD-nNa>%+Ym|?hkG@!Kz}n(0UNEDdbzr`y8}p6z}KCeN_jC_c=7)ABex$ALgL)whR!reY{5ay$lf7qj6na z`?O~g{$fTLU#aJN`0iF*mtr_m_`K?1#$6MNwM7jSXpktqEP@%}0hY1Hl0HahHs&mo z@#7Kwvy?NmML}tFFcSGz;@yLFwd#frJmdGoPWcF-^8AQ^Ba_Y=F+uA&3~M{041Xu# zZ!!Lk*0MTlS(j#MSy$(3S=XcP!WbRZga!fw^6(fTPFT*7K%8M&(eH!eqKX9?MRMb? z9P@91`B&%P6~mZQffb#6Q$wJNccLFM<{HpbhtYB{gc+%k5YJva2vQ>^RE%37av67( zS}Vbq&6QYryjqDyevg${gTJg)V|~b#cp2BS64H_hs_cyIn4R5(&X_;I{t2gSk6V_7 zYi3O3%HMgO0{-oZ8caP$V!^JQ%7v9?jh|Ja8|3^JgMX7CPzMG_Vm(zAkm&1t79Mh9XEF%aVBr?~I`Lv2#%amI{L9K# zS)9AEUk}{x?oe@w&htwd^DSjo;*GjNQUBw}4R0P~Xm!U*DR1K@SnYgHtTCh zJ+43UL;HkUVR3z}0Yb6FL;Zsgh_I#pHdLj53yk|MNQtKQEijtVc$s*7E`4HzPk ziD$ovE)s<;2qXleh0=*iuQ6l%IlnQg)K+-NY}wa*t{l)mSH}df3;(utx86Fex?5(o zN{~VFC>`wWN&ICUt!MGq2eR16Yw+Y^tmQwV?$*MN1la0<*rvayPQ}xQQ+Mmb^8`oU z=q+gU5qbt1-IeJ?qsuW6M?E_-8E5^M)mR;I@tEkp0oQuG5xTfS8nKaeDzcFV@}h$1 z7x*HPM&5{VxTbBGfl43l||alK{=2nwanc{K4)K%8)Ms*%|Httkefi_ z1XX$ST(c;WiYecKEE&$1vXhjn3lABV!OhvmWjhoO)nRhU6_N;5tyD-_h(~{Sg`_$( za%4Szdliy6rsN7q3b)c$NLnZ_A9jVLd*W1S#$v;yf&o63A1323^$6$ZqX~R;=n6@7 zcq0J>Ykq(>!$a!6CpfVV{QxI!bUATi2)cE$LkE7$AXGW(J8U{7Ft!btL!CIvT+O&hV8!ABvfqX&Fg z3_wQ8Gex|kwBSyD$W-XXPjEQIh{w++Ml=L|%Qw=L1Pc$*4scVR;sPEDBi5jSWQ?f8 zopc!SB<}yc7;%KX{T&#Atra0!(1Jt(@SjJFK&eN|;^FfY6C+USagK+x=R2bXBPJ0e zq|hU0&!Uhshz>#%Y;+KMpb9<;I$X7vD}O$Ai0I(Phw>xW`Z3V@QN|y5Ws-#sQ-BU^ z8@sJ4+NxdWE!p+opDF0@SPwymKcXL?!-e~u=#YbMEhf=AK4=6|hRB%mQ*T080w0ug zw45`bbfk>QLjCv2;4Jy+_tqN@`RNii?U0|Il52u1hb))7 zU%7bncS~PK-s6!=U#frmoPhuV z6gRJ7;sc8tgXP18gO`r8ULr=CFWrZih>>374R8K3ZFWSiTVN#03V+V##2Bjzcke~Y zzV!1k9|ZQf5KU6EP7D4K=%+2}i~>kghQLk=8*4TG4c5)LpQkTQ&x+lS6aZCmt?I%K zGbSa3<$NU8BbNgSrN(;1@#PVxXu;K9ssAA3t9MXfZv9q${U?Hx(1W;22^(_N{jLso zACE4&qCS4SK`Khcem(8+XQ?<9u0-DOO4@hV6@En@;L7N=9Cdg|Cu~nV`*-CacBpXG`t@D42fs>nD#nGqW6nduAt##4oUXdoj&wvSd=q)hz~ z3~7UfZ9fw~X@SMhE>iyc+w7K@Y}tM@d12XpyHHx}C4LWO@y4QfjWtpWc|UB!-I)%F zii#h{PQe;I{u$ROfc;R%vEf;F`!jswGcK6u)$VVYs7Ua)%v`4n$0l(!T+tTk7- z6ie&#bb*apmNzI9$KXSq1r7fba{xa)>kFKjfbr*;#g#i_Qar-!EmW@a8tZT{aI_fa zec)t*KR!W7ap+HkJ12kKh-(KzD*pIef!<{P_#$7V&M(*)vfgm;#~$d)$sfz*x&=0( zjQ$P|>Ja>K6Q8rM$kI>X31Lt|=Y)YFYjHEjLSeDu)D{K?PS{~!*ecr}JdNmh2qPW2 zRx*pr!kt!FTn9Y*yII_k_ju$ij?PA`S63iTDLY2Dn6to#0GCo6a z=4RxR>%`OwcbOFMf$@2l^>_vGd6UK#>W%H3 zJKy;K?7a(|jnxrW!&K)ktz1CY{l^Uy@stR4S26?vbI6V}wv{p`@s! zzVVgheh;D0O+$$@M(F02I=|0aYd`zh&z$F(8RPVQ{r|t$uh%Q{oaeIley_Fm+H0@p zvgMszj`XZIc2fdhr&L}Y`{ER6qiL{SN_z3@{guDg={*FC^nSD1{SNp)u^#{8RbFTX zSDGi#SV{}KagLtqrn`}}Gqmj*-1+1BxoWD4Zrjs|1^Sg(Mz`!UpTSN%(v=!GgD0mD z5gx!!J0gTbyZIQYaSI6;y{!@gJ51*}yu;HRZ78yvoUj@fQLKl^4huL~PiatOmyGHW z+DWF%e2ilbE}@lOUc+De!Hp}i!iD`rN1;r9(%^qyZA#$#tTH`fPpp>c4)HFA`5IfW zXG=1MB&0kLR8hFLPQo>8t)-thqxYKQw6!`@?jF`%5F+UXucJqOx+lbN@J9hOKPd4X zV(8J}=eNdKy0kt>b&8Q|k>_eafi2=^^`y*doT{XZ=#HOsz#ft^x%Z*`abQS~B0R)` zanO+ri#=kWSMi>bw~AsBM;21iZQxpbB9P-vGGz?TNa0XRP!7gr&fic=%y^RqZufW- z(+`O^=tMn!-eR3$jGwom!!|Vi1iW)%YpglArTFif? zr^R|K$3%msoxsmFXm({oyyRNx#_?oF|2N+z{{QRpOoI-Qzvx&FYWmj)&CklBmh`&s zpW*Jd3N@p*jou8hd15U?=?oCGpvrs~|O9>Uu zl9y_PXDToSz;l+EebKyt9w_CfFG|sho=^%ur$I9_Jg3nKQGB*lJaf#oREFHczRydM zSk%LGLG>^lqS9q7CiO5KTExav8Bf`QI2BI^AHZ>HX^8$}ze>QU$Axi10h~y)!WjCC ziDW$favv;<4G5K%t;8IJ7W^a?VlyU_Ur7I-H-@?=wMMT6O6|$hTA&p0U`FNn)CdWS zI-{Q^TKv=qiHY`Pe`Q#HZqg@0zW=t_svlyxo`G8&V6$<>OtgK=6kbmo{Ys;Tk$-u z+>Ohg|Ig+5Dar1?MJ>-3FIvw}$r(ZG3}d`12_c!iuOI(*>wWy#M-KVT?{Fp01;f6D zl*ys)hv%oPCk%}n0DVhDJU^A~2Eakq1lfA28a_ z!J4HE7`_&JJacSpO5bG&hkcc8ltm;Sjq)3eaUSgxD1a2R76?p*(_uEDPUMRG}CaeubcDd&b+Y+N6~k$Ensi&G-`Rb(ry%;gM$iG`ArG zq_!C+aVt)TrfoEYXw;9Ti*Kj?6!;>QjCC+BhW1rk((sEUrQ1Ti-Zy~u(qk>O2p}zM zQ5S82T(o-8gXPLL~p#|*`y?o{9Q}`f1 zEg%V3k%}*)7j)&p>&;NjEIhY`IMhOdvinNi4)?HXT~6({>H}wObQXgH>N;0rBAXV^VmJ)pmAmV5YXC8}N9SJj6p8Kk<`IZBY^{117jb`6`TjQyQHFvBx z$Ncd1{$Oc3CFT?9Mz_E==e+zZK^Vk=T; zV675i$fCbWnjEKOi3l=RS>C{JJ(8v2s{r&5Df)NvP4lON{u}S*>PjP`P;LxEBR1H zsEjn0`g5dx-hiGH+1~rD_6|lFG>yJk;Wn|_TiLt4B~^QSe5UOo(*MZZ>0RkF7w3PL zLKiH6qUw1ZOgGSL5Z2bCO53IeD^oB@!+u3vr~=z}Nu>08`dXY#W=DYvFKIoE z8;7wEKab*j{}3pRoaO0_Z1rJ*tiJGbw8T*0TJqf9D4%8Yj*_!$>G{vBHx^TXK6g)!Hr`CgzA-gzmU5L=1%R-)tPTl%!1HjTL$ z2l}A`@(3f>kH9WRyxr$G#Y&_Pnty<{I?m0SZH-~I`O1vYq~$!tZb~cPpun5d?jhLC znv;Kwcx2=;$`)&Z#-_bYKZ6B{4ao+~yn5nKPmC$uu@EtG3oR(Y&|U=|jYwA{=ihM^ z=o2OeOt)X{eo z)X|^R;fKD@vO4^D3Ld-BXi0!l%Q?S|Y&Sh73a#{xtxVsTfmWaz4kK`is0F`BFY%-o zdeYGTdV-;s@6T9zAz^8~bf$^W*Zde%69^iLq0u+&n}XA`W>~73%@=2cPA}8h4}Yk` z$CCZ{5j&N?w8!#4(J$F(F$bfOJnU6T~)&rE(|JW|10I;*=v7b zN7y$K!g7}RJoa#z|D0wzXPKG2Gb5BlWn%npf%gV5R|xwyi%Erjn{WmaEizl~B8duw z2a9?4=}?T-n27d-eQn@@osD@GrE+8XxHYDeYRt#~6*G47g?;02+*#g@R(UtLl~-Jq z*FCa4ilzETH19i1Qn`7%Pr1nIGv1jI@~Pr%f0Y{eylDU*k^F;JaaWo+tr|P}yVxnK zlhQWyM^szBoU|zH>xQy8Hb)2k4IkGE`<|yEEm)zwRKg3Mo#ubfXhVeXH{q1Th*QF$ zkxMD=-Xtr4h1NaE(}2*E*b9G#^VuPo`rT>i_sE~F`rXO9Plqa@2)@|TFXGV#md#=5 zT7=G9LpMEfE=)0G3@x|VAI}w0cSEm?r(Q|j4gcQ{cZl^|1AWQ=k}J$YqKYh^<|n=+ zOOfqSuS81?oR(Uj4`hU1U7{Pr{;hS3WD-3E$d>4b0vL8O`j>u}`GX~z;aAqB*k~(q zv#P9!qy{Vd=Rd3}F-T#ELVs61?sGnZ?@3FYYCNPlOw+)6)QO&A)fvNubJ7#f2ObU` zXip;Po)CwT1Yc6QCEK02q}WpJs^gz#@%X1PUK8mNld_4P@-C2d4I0G`0Tb(kunR=| zJnq$##)N%|*pMEH_(Hy609rn$oOMnqKIe4kiH~JIMiKqrzteT6Lv3XrE(ld&LpdF4 zh+X1O=zh(pW0+wg@A_A;$gTlB3XEReKgEyluwXMa7!O}KfA6;N%FEH#u&)%f!n09m z5?8F{CT~NK4dcdhkEl_U+1_d?-6ob>QRzkItw5?gfZ;Q}$jC8x%8$k(e|lmOROCGDVESiNZ8vEQh98KLC=*#0IP|ANJue=0VG|HD1tFDCqub0j}cABmqUpsAB9e|Nf7 zApG6%c%H?-{{!aVfrl2sU&p~Owf3cQqrm^G;{V8#zt3};zY8{n|I@F)FEhJR&_pCZ z&qax!EAZq`_*C=H9c}Z!CHn7$XEDM5gM(jc?MvlGf&Zl9|Im|v&2-Jb2%Ew`xjy(~ zME}r4BtOq3iJvR*OXWs^ z|G47+z?*-G&5upt-@Xg{%Kt$Vk^DS;BYv*HlfM(b!ln58@TTJbnEAWltyS>%dd1{d z{*TIy0{<_He~~AD%DbAsCN_ot>z&|N{tudn9{K<#4{U`lo+yAhI%)jV7 z^Cvj?mH(r1qriVm@xSlMUl4s!jeo~qv-p2Rzg!6=D3Vx10I@nP}=?YVAwqMu9&|@xSNEKXR((?}bg#|N7Zm!YgSI2R}3s$&bKV z#(%EBlYi#N1kL0BhrB8FzhnyYm&98Eu>S{8neG3i*1lA36!?!S{&zk3=i&=I6qww#k&HT+4F#jj%rvBCVN99I=KU489 z^yKfhPV+azrtqKr9Q?}vLlcqw$P0-6xdKoA?`c(f(f_Z!sr=ts=6}6#LDK)_FPr?z z|5Le9;14PO1)ltYu9|-UHkJL)u|M{b8Y|M@TTy8hQ;a7|BwGi z>>rgy*gusU1^y$7{~b^MgOfD>4r~hl@vYE5eG>rvADW2d=ad8Sa|NFK*KX4G-{(Wy z|M^f6_^+GG{N2Wy`j=Y!Qn^v!KdkuQ_T<02p60KJP2o>?!`44E5y_84jo3d|;K~10 z5v~7B-W2^mU6=WH{LK9So$I21DmM!JKP&$Ep8Pkg*8C;0Df|y_hW=wk|IkDvKe8Oc z&lPy`C)1lJ0rvkBYmh4t{y|Pnuz2_EWQiN8i+f|A!_b`8m-<{9J)2|Io^M{GZ61(*O4?W&Ua(G5_<9 z_)lu>OXWs^|A6A3>&ZW@mgXOWP2nG5@Iw=k{74E&|K|!k`LAuR^`BC}*8ldqgdaCs z5dU1^#!ux&fj>j>&++6h^{D3mr@O^Ja}DhOYSBM55y_9Ffbeq#p8SOuX#SCXZT@>v z5&HiQJjf3I%4w$kORasW+$iw>p!jEd@=xrd`G;du^j~l-_)7{uG!e;z@4Gkc&|BpJvz;{z|j#{trz=@*^oA z{9J)Ie+AwDlWrkVNdKRLL=*JCXd3f>I@64QRR5=Pqrm^Y;-BToU+@;qf4qvtKV}v5 zPalSd|AQtX`H>V5ey+fizx&-<|CPV8=YNT)2>e~vFn{M4O#Mr(eW~0i@PDWHXL|DA zP)YNb#HQ%K!e`)D<3BVJ$&aLf@N)&8{PXV8{7>w*`P<&i{Pk8af5P)7zZ(Ck+$ivW ztN3Sl^0(}$`Rid*_+wXsU&X)BL?l0w0>aM~c=BIMQ`-Q?zYn&u`~T<;(*H*?|H@$| zzZ(Ck+$ivWqxh$L@^`cK-%RWOI?{g`v43bHk{?L{;pYlG`PV0E{=iOK|5HT&)!tFP@?KOW~VF+W*aF z{g0o|{QrH~^nWV|L_Eyx~_{3ma!_;(TWuf$h}5dXX|$mCb~Zz?wm{CgDtR8RgJkc(IRC9x^| zcYXqXc~Y$uG!e;3>cvH>)7l{4K{O7BICco6$m&%O-|5u8CiYNar zzvf?wP2pd%6#Odwg(f2TkrWVquE3K&t*5sCPj0mBzX&SA_R)Q@OXWs^f4Aa)#gqT)%9_6@HibX*AMn$+xDfwA6OsH#3J5<};K_gGZ#3v}|F6uO zV*gDmG5?Nj%-_(#FSYiia-+b%OYu+g`EV@S60AJ9Z3Kav8% z&lPy`e}z~1l>U>hBT=L$Ue6Ao(qe|QxQ1;U?*ilG0Mnaux~8$XpB1^yk1|7B19HE4@v|C;~a z#pwU^>M;60G!e;V5ey+fizwmy|-|`CE{(Yzj z{9Ppfb$>6DUux}3w=0W_{-KFTek28i zpDXa>pNWslDE_3Y$P~o??+G&h@fmFYEgkkRwf3cQqrkse@drHlYou!a>#!;OkGuzd zmH&b!BKeUN5Pq(}lYc!u+9Ud(+tJqlqxUoa>k|L}`n0KkmH(o0qrksO@xSEBU$Bqn zKi=Eo?@jiv_@RkNek28ipDXa>Uol_vx13<}C!!*X|JJkqM?K-fPvu5|f1~1m(Ubq1 z@|u4mHbwu#7J^^p|DlOUek28ipDXa>KYyp@U+}Y?|0;osz(4#5^Z(`GSNVS`Hwye4 z6#p1c{u_Lnza%z=KZyG_*8Cruh~!67K=`==PyRM|Gf&xn(iJ2M>Hlr7Wd0q`GXGBw zel`E6a-+b%Uh$9in#n$$x_#|CGe0@Q;5R{3`zqO+@k|DIok@fhYfYzUj~7Us5TX zzpcbSy(TgLJr4b={5O>w1^%^)f0QSG(hRNtYSK{&>)w;y=lM4SLMfzqADhDe(OckG@jo;X$&aLf z@N)&8{B`DP{)s``|M!22`H!z+{TFfYtN5SFjROB_#Xr)U{|TEPo5H{TIXnLWO+@k| zDIok@fhYg@*_wY>z~FzJ`MV5c{s&N*J^xere=0W${HqlI2v7dZp_+d$HiduLo6x^{ z{t23h$*1oi+aLxt#fjzrp+yx|;l||5Le9;QvhV z5BKCRI8yT;A7Syw!fq}94^2e!BPk&KT!AP5I6OzC^k3>rTmOlu2>L%hiuo^f@GJjM zyYd-7MVq4i$|o1*{Cv+Vv4O+@k|DIok@ zfhT`jJSm;yziGTF_TRa>*#FDSKa6e?>HMea|5R=i_?IdEL7x00(=~rDYzqH%({1~Q zCL;Nf6cB!{z>|O8R&D<+u@be_|Cfvt{>99HxRc4R?4Qbw0{?#%|3FXvHN!RkB5Vr( zz8TR)Of8&`ujQ{oI{?|Kg zO@4L%m&%O-|Hq2IzbF4e`~JrcegC7@tKh#z@}JN|BtMb@!p{|W^3U9=`9I`M;rF2; z@b4JM`XAKZORe% zR1lOZ{`py+e{Lr6Z>XKgukv41ZWQ=GQv7{A`5#0quHv7@*cAK!mF!=|KhQ)ZKav8% z&lPy`f6Na(a{u4Lo1*{pVyyp?_|zqyf7tkd$*=rBl^X^A4;BBjp8PFqYW{lI6#g?) zZ2dzMk^D#s2tQZg$$#s;w*Glj_(vx)f0r+rzd>u0U+JI9jROB-#ox!1e*qr)Q2L*W zP2n#}{A&DzCL;Nf6cB!{z?1(gQf+|sKd3B;LiqPr68%g5dslOlUyXlMZWQ=GQ2f0; z`7`k>rsCg=P2n$%SMsg*-=T>}ek28ipDXa>pG;j__|KNH`OBjs_`hCDS^oo@nEdMf zcPcju{EHO-GoJi4ZqoeMVN>|azXE=B{|}moFNUY`7);OjF=|MTfXH2nRSYItwKvVUkIk{?L{;pYlG`RiP( z^`E)jj(>hB!u-Q!{Cn2X|CRkyxl!PMPw_wP$-m~WM=kzE*cATSxNo=eDjENwiAa7V z1%#g~@Z>LindaYuSJ15f|K~Y0E8W-Z6V`v{W~Tn7*1lA36!_m&{7-rEPrOa*e>gUU zzvTq*OC(kbnuz2_Qb72*0#E)!{WSlYdUpTcP>uEf!xrZMxP{5D;y)@k3j7Nd|C65l zXRp@$hp{RAkGyQ#KQs}^kEDR`a|NFKZK`Yjq@%X}tD++Ef71VNZff!?`=@fFz`sE8 z_w?jXfiF`1za}}X<8{qNp!BV#Vhv7jx@Q?qP^*_;X z@+<#OMG}4?eH?cVJWa$BYBN`u+tp5y_9Ffbeq#p8Uz5*!;%(4?a|6 z`@d6;@n3!ag365o|9r*&m?wWh_ydF7jX+8dL#HR9pW5BQCKWHM7 zA4vh>=L$Ue*K^XJ`Agvw1lIUp0u|Z*uZ)9V#eY<86!_m%{M|kIUB7=aiS)1X-_S%P zKav8%&lPy`7e*dk>A&DK+yANWpDY^6`oGfQ|5g5*%8dg58;buCPyQR4YWpvVP0|1D zcqQ3-{t=ppf3D(x*pq+c zuiE~5VN>{Lkp0V(IHjP8NPZ**gr6($~?v(zMPJFKOKTA%cS$O{IE#}{PugR~T z|DkfDz&}Uvck|>wdq(pg#-{McJY+xr4oyVzBPk&KT!A+~KAW%j1H38vuZoJO|958o z8C}f#|LXaFDmM!JvlV|=PyS!+`R@;U{`)%FzsmnX6OsH#3J5<};K_gNc5VL!@38xS z1ylt7UUL8Ar({$AD*r>}MuGoz#s82e|7B%$|37t=)&JkaEBV&^7n+FVM^ZrexdKoA zKghHL?Ej|~wfXC!BJh`-$@;&xp2@G`e=0W${Ie8)7f=4c1DbyTHpTvz;gxjj`A=vf zk{?L{;pYlG`3obDruYj^viU!2$NaAkVgAP&nEdMbS1LCO{4*7QXHWi-nY#b?!lv+V z7zuv${1Y@0$&aLf@N)&8{Ap*%>9PJ(@CuqW{x1okSi#d4 z8wLL9ioc^L|AMxfe=0VG|MTZ<{X-Lx{74E2KUd(%-`)QHN4J-4``_P&`Nwx*{^4%= zr*fmfKTYv>@Z?{Exu}}|EW)PnpB)T-_5MFJ5y_9Ffbeq#p8RQej$GM)4Xk)=+5ewU zF@G|O!Y3)L z`9Cxf$&aLf@N)&8{PU1UQ~Yy{=U->FWd3^1ng1~dzncG3xl!PsqWIf+^3ScO`Nv~Z z_`jq6uipQFCL;Nf6cB!{z>|Nbo&T-T#n%6xy3D_*5%W*J+tj}r|Eb(4@K09!Z9Vx1 zW$E$12R4O2G|1+MCL;Nf6cB!{z?1*`OSJw2_yoP>|K2}}W+DIo1oNlVa^a_Pqrm@) z;&0>0|LYZ6|36?;_-70NzsmnY6OsH#3J5<};K`qSIVqjvpQMBK{I3Ek0{`$P%)h^; z$*=OiRBjabCn^5cp8N$L)cnWWTl|v`eXgJXgeD^SkrWVquE3MO&H|hNfX$zXiim#^ z^WTihZ2zyG|D=L$UeC*!?4rT+!I zDf3?+DgytGROY`8mD&7i{G)QCz&}CpxAf#+17BptKiCxhKl{V}WhPb%nuz2_Qb72* z0#E)Gy>*RBjab(-nU+PyTNB z7P+$jX4n+{m+TAutNbrC5y_9Ffbeq#p8PZE)z$#}|6d=l$NwpJv;B{MjQLm8F!itU zzf^7%_{S;!rk?x-&R!v6S2dh=SGx z3wDfCYXMIs;b3t&tcP895-WgLsQV3P(Xw;}ao-9}x0X0p3!BL@N?6L%^iLC!qQ>9W+CMtn?7x(Dl51qzo{!z6G3@?sLJBBMfhN3!R#VOhzf^+Q4<@!nxzJK(oe(_XDLsiH} z*$TPQD5Rz?MCq?SR?d3~)M!X*@cEdgXjCc{_9rf)7Cnl>NQBg=C)jSk43K>diAxz( zufXtbVc$CWU6y!~cxM}4DJxuI0gj~NOvoQA%@!iL7oj3{l6I)srTxLySoJHc&hJJI zrA4-6De02Ola+GWZoGkqo-w0#hry zUb40FGtObHv?jwFRlh*LVrUI)Z#}1BhQx<`%V}%WkhlWF;RafR4QA~a+TKksp|X{+0MUJpWl$rZ{ffD*XOVX{APdUozK?vSKgR% z_sQq(^A|jqQt(VFY?&5oTiZTdA(g_%^dc2t>NVhivHsi+e_&16H;>Ab{k*K1J`m&s zb+3oNUU>`mpRHlvVeEABiM@?HHUXztE3#p|N42IfF8LjojJT&jznG?he==XAf?y@$ zM{4X2`)(z-4t14K3wGgz0$EQ|@Yf>jyZ%L92C_wgenV&pNHOSSSppJka;7FcPV0UR z%)SIG>`PO-zsGJImXc%H!Ptf-)Ixt5&9bY- zvP(|rO(RWpS}+X@Xr?A$0nIj8Koe_cW?Rt|MP*yjl$NclM9bEdrDf}^CF@|bVc%@j zA*<32)N8$^*PT0v-02l)s#?#qD^AOrOP!Z4>d66SeD=T@uMzSV(y$10kSj@DhSO}b zx`Hn{9eT2n!>rD~KxLf{wZU$Zl(9Z8cfsvg!4pqxOHF=&eU^iJQyu>+ z$zg&n@}*@uY3A1}mvnaLfMH4V_=ta5n(w0m zS82Z2kED4W2$VFR#F@4<`}1`fq3sPE{kV(Ty;OFy#Wle`Ymw)A>iAR~mwujIzS|&N zESQ}dMCe;J{5)H263Gh-$?j1de;}!f3^&AvyFtkqOR)C95v7mT)=9gyb^BSx%9k4Y zI7;PPPW4IgDo%YorkrXQG>EM`Hf=15y%3L)cMHE7mALApY+usJSjaG|1VXUO_~#J( zR4Up$97iTu2EQA>FcO8T)K>-{4*OPOU(>*G9??Hi$BS9V;htaT<1*q;QpbiJFz%@%v#2a)Pkc|{ETkw>0`bg_AmE}S5bkh2B!8Q z4a9&ziM%b&w0p%vd|gK9zjYnG!moDEk=@)Y?!-Q;S5#8RN8q@7f2fuktc~UBPYk90 za3U#;1>eK?SDE_bq$#J6JG1gw$gpnP^{^wiOnrp7ET^ekuBR{R`d1zK?Wn+2$TfPC zkl%z*l#ovjF@<~%zsRmz)lqhR0`Ug+S&sZ$b^LZ5j~pMjr3ChIlv)jf4Etu`WF^HL zNed*!wbZi_r3R~B#fouA5jCsf&chX?)pVtfO2xQcP^(FuMe3B} z#>Y@-3P!vX9`Ta6#T!zBjmxG6E3sQ?%(Zq;@cW^}7Nki_e=F!@>K>8$TfpT=H!<`l z8ng75noWNz$crKv_txLS0XXA-r@xL=ornG&=t=t90^w-=U5V3e{awcwXM_gSRK6X3 zshHaLuUL2JDX#p$+Q#_+`%p&#yK zy@(Eys*4V`V5ioBA%C8aVsL=m;GTNKjH*|#f5oKW@WNr=4s_v^z=otz!{Z9}tBjF$ z16P0ns5sS|fY|>(*xpAQBvSK2uSy~k~rP&ZDsl5j8N|yT08#Gm$!;`I%22pZJzOj;qRJ` zKGZ)Bs(BctvT7Fernb2`!RyH^+|^Q?E#?B9;PvFXa~zyXP+R_YYFYUVp}Pkc%O4@N z+zKgawLFK@ZMBT#i!(ys+-9hy&Ml&r_1H;jk^2XujE!pSR&(?gGoS2Nw|5Z7;XVnf)EY|sFUAV4bvPBn8bVG4`K77&or!na zadarg9bh&H`v%d-!WtSu8lp_nKct^0s1y?Ph&l;MJ#nNSNU{yd)>aR5K1vZ~*w+Xx zLH-2QC!NOEGYZ7?ztkVBn~1$(--)L%6soOgA4K9FYC>QwilgY7 z6&GVEPTeIEz4`TBj=&M6u7AS54{79uZN!YKlTfffo0Vs~p$fG7d9*tS(Qv!NRtu@! z!>~8(yUS?z{b=`NBvzIacrU2ktd%oQLJPH_ZITdM@ zq~3<)rCq}V*hC^KLAPvBpkGhwP6PGbDnD5O?)A07y}ro1Re4Vm{?U^t$dgga)s4LX z!sT^1koA!TyPZ$N_=m1mb_ohPBwKGSd z`%yo5oCNfE*w=@Kh*4(>#g1NpBX&RNMuq8qaEtg6&wgN)UV%%8zRo>Cq=tQ#qI#%2 zw$Gf(Be!Rjw~hKH8rnPTt3-YmzNj~5vr|AqE$ST`H!fiW{ivLlu$cdjOIXc+$rdW( z79%wRjRG?aYaD6cYDDblPw7l{kgi}xL&zLj@E}_TEux$Hv7@W2wzUZR4v}rg({B`x zJ9m>4Mxba^9rj&Kg22_){eiTEt~ez&j=Fm)yfVxQ_dT;Wd~(80zBVo40RL@7V?y>x zcjkZS*gc7jP`ca-;>u={0mE;_rjanH+FHbiaUqoknKtBO#wCo#vDi|R6IhD)9YYOA z>nc&}u)i$-O-nfAsJ{_PN#k?jmC7mwNiQprfv$@1e`rE`ddi>-8byybjH!enm!9o- zng@u}k16v!jt%JrWY5wIYOKz>G1KI@*h+MJSPg{aF!@f8=6YUW{ z(~8@c5n6b&IRsJvOKQ{FKk^ujaAuIu1Xt@JsP3I;2Uq`B4>X8-pacn5pxDd@aBXVf zV|jugeFgu;{c{=)xC1T&4+%70g$h5=5g1e@_@wv({dkb5PO5A`s)Tgxv4~7H^EBxT z<VX>8Amgq2X+yXlcc+hGDx?X(2 z*wOFOHL$6i8uBX2^9Mgppa(6eGt8mCXc+aFua#w9f1 z-;)zs(BI0F6XN)<)kp44JTF3A`Q$vIY1LivXa^Arl%ud-a~lfBuI%tb5t>7c$; zI2_z;*hp3nlH1oPj^uWL{!-0h-|p@tG)~ziQ!J873TQ(v zxhQ@>shs$-b$GssYC^FycOMC_5?LF@kv1eo+vPy76&{9+>CV=^lpr3J!r#xJ zq5@e@AQ)MIV@!Xt8+0D*P9yQH2{cDS@Yg*dPGx=`CN&`*YmUScO6*8K14nE8k}c_j zrx<>t6p)PM_(gd;z9)*F6}UwLN-1J5>mT1M!-_(=YwwlV@PhKkJ*&<~;7BjD{A54o$KeF!xgBVZ{M?J)v!JTU4^ z;n>kt@Ro(ug(+J9p1O3tN5E6)X;ByfAFvvsoc;SS@!UqhX%Le42v~$<^KXuTq$AxK z5dK(WAo<^Dje!kd(5dLxc^(5Fi5vr$pq-8}a0Z#9*BH2?Gl}hA8w1y{8|N|bN;1|D z@mr694ZA4+U)~x6r=acZ;I2orGShG}ITg&Q@4~5+CSUUl2Eijqqkfh_a52i{o{`as z2Eju-2yW=th3(xQIx=Cj99nSDC$W7F)@FnjT=*muP9=5?4g3=0LKBROccEg{sSe{l z9G!5XCoX40?Xq+b~`JMD&SdgDh{Y5J!s?Pj4h!T|!k zhfZjY-7M6)XuBN0Ngcn2j@tusakaZJ?Y0Ky)4TA)8kmpb2jwqXT|)!&OcZF2FUI&h z@)$?Wfi?+cd7OqxVO%T(fDyyX!ZH$Lu-P>5XVchwPxyo7Cv_mJIuZUd3HEX|Hvdea z1J<5$NarH~NQsO%L}aP4_tss8x`~RfxTXMhCBDVGPGc8OPLV!|r#k?cvObkii;RT} zXh3NLKaJp=T!{}2xR%E_Kg=G?oL>2fJezCocmSJV*thFJvcFDzV;Ym1VN`s3idH%B z&K7PU_!|NJatKaYov!3H=|oAnP;`!YV(-{W>OAL+038&hu)SeaC#PLVw%Rdv7Nv)M z_u{zyv}_|m zANVU+u!sJ`-syAcwJD{H^df(~MK2Vk$&3%z(5EvL z`Wm$jbW3;iY(aXFn#H#o^u)&WH>-^n6iw$sPah?-=+k`_e_`w|uKWe%W?1BlDOJhJ zCqlgN;#AR z_VqTss}6xX?Q8UW)4s@PSi)7+MvD^I$VI|V`|93~?Q7PbEa<6!9n<#Jgt84RWiR`p z{jjfW;@_Pp4QD=HibL~d(Dw(F5!G|$8&Zp`&gwtaExy|#wORU!NOH{b>(ytEE5s=3*{h#h2i1GQ`nU3+fVIOGgPvqTs%KG%57b}&$VyBVTDr82+yr+t(}^zlxr>$LEEdSj)-3Yx_Eq;Eez9Gt#~W z^Ji1-_-}^8zIM{5Ba~~bX1hjb{8wg@=^eHA*YS14lafKEC;hcQg*L3;_rSi{HlN|o* zdqc=CU+!jKvl2}EYCu#lr>3ilrcW~{`}+DajqbFsAAii*zVbj%A3d??(|tvMWbErH z`nBg5EhxR>J-_JlifvzeUUT@bit@Sn`Y?3(uhe25_7!g8VPEBNg|e@oa8ADL>)aJ0 zN%CIAxyWH|@(GVP9A0ZeQ8Pf5J%jb(W6Y7z2f6Uq_Kt%g^}# zZAY80BCA6C=QCB@n5KkGrdo=rJ^sp=Pf=VheWnVXqWets6lSV?;26!xe=KY>mGNZq zo)3;)ZO3b4rkdtdq;@sop+WuGTin?Czh<%#3Ht+`Z@@sB8=F&KZT!skz6|VB&)EK; zHsxyb5wAUbvoxISu_iCgp!M}dRh#eAe>SrNaN6Vihs_>e-Qv^nXdcE>TIS5wUBCO7 zuf$KsNOy;gc)J6#aQWe@Qs3sQ$g8kxz7B@|vRw6d(_vG8y1!Lcpe^z+VzzYfO>Qju z%VNHYCv5!#bz9eLCI@GX4B?td$JTkCIxD^uY+O`XLnRoVW86A(Gacr_eM2a=iT zL1CH%)mc7rqfT>9z!heWF9(0Z@8ik*=yl%KJijX&Bz@iF8o!Qw!DNfo9OVDwBW&1w35{5HoxkJ$Rut1*OLxWc$+r++(6{2lmAtL>_pln@n6H2v-!x=~ z?f%w4wYe+V8{xFD`0(3{?aIo@?oV!r*~v;Hb#nq}#)31vp}!FP_Qw9@~&;9W!G z{y{f`@8nHxe2cf5eA+&>zbrz^$(heN-la8QzRnWp4lwe&Jt;GqAHG)7aMIu2bVvWY zq>>yW{T)%P&i=RIWs|Rgvcj(9R zGtQyEHHwM&o;>dsj}>v})ApGM|Kil&p}NdB?CWC`kL@+$m93OH%m?4}H*NoNnBVl* z{xi+c-;6VEd==7N^>@2vpLvKkoqUCbukK#vn`(^hM=5id5599e?m*yBS&9oFCeJykJ#sa=G$oSRcVo%{&rIJl;3@r)?d#X)ZTo6F+F@VwOR#;d`kn1-+bIwGdj2jC`$kbKPUmC#b?rumt)_hs_V10j|*6hl~KRf5kX*Jot_De_J zi`&Fj{Lu4$OUmSN%(*2!$>2S|>@Z21NdEb{s*d<}!FTI+(}LnrF~>)G z{Gl~Da^Z9O=Xr_D_xG1W?>LIxQb0_nC_7(H(J!I=|A!Q-+!8d(|&9{iRHQ%2G-z`Vn;-ecK z`NnvQkM3D<{2oV*&pCdlvDoH2bO-az`hxieAO&LC=T^!@=7VqWyEb3Vk*0enl4S6` zGDIv!=(T9z+)(u{;E)>H6QwG)z}^%rVe-5=cF>CGve!i zrJMdnk1*|%XxM*h`@G=zqkDDH-v-v-d?UZpgfgx9;G52KN(ukE;GH`&|6%amT-uHA z^G{5^c#BVu59}Os_AiMJ{iWT;eEYXD-%_L@E&cVR%w#_JO5=N>*7#77x3&L#SLuxO zcf~Jm_8Gs?9RIZbbpOl4{Mo#N8BCm4jrlt7X1>G5_%N0-llkDQJ=XRw|Iqtk#`CZ0 z)*|s0SKChiayDf0Y5nQ@QF)kuQKz-XhxJvNPx+UPm}Xk~TS%G7eDFQn(AHm>A&&l6 z+TdFm=VqTphMD%MVRzrnF>stUr^%zBNG1~^@{&*@rwU(g%$tfoP5Rqt@yzP z@qho&r{L}W^M_$yCt}^~>#f1A_NDz_2@+q<{?8eIq*Y=2+P{VEYXH)~mVNc4%xRAH z#g-BgAD5d*Ou|=bIZ2lLbzx9=vuk&W% zGxWERGK=}(o31iR1EHj;<*6%a{r$&q0+n3(I$dS*)w1+Q&qr|lpNIKPZHN92-OPNm zK4ZSd2H#f7Earo6QeE3U%;#;*w?x?_+2^Xu-1OJGvnXFYT)f4n?UQe=*fk=f@gruI;S^tn9bOh~`B&+MJR zOk0*S({96Owxgt~t4(_6gBAwu@n9uy>;CqZ@*$+J?S)AjIq2=stSou1iI$$-cboO@qvE!)`l*(js zB8-Tq<{B@26j2l-m?E*=8J6ZVKX5!X^q@yPb=!>|@l+FBq2j44a8ADBsVZvHPyMB0 z8ApF+wq4S03W2`lJLMZ`^qUOC(+VK}87K^5^9!)0(4wv86=B zQ!l(M)2>ea^m*{_JOFC{zH|v=*Qac` z?ce86j*`jU{X4#MYIVR0iedz5B0aI)uPn{j;`FOTOfPUa@5fRL!@lO%dieLfPk$a> zF6Z2VbMoci#}2gpU$ZM5{pY-4U;clzkg2b!`(^!~G$q`^vM=3#eAtuA2ak_ z(19|g`QW?coXywnkc00;SPoGqIeXrXuh$WCe6DWs>3l~X=96X*2_{ayn)#j<|3LXA zOMinYQ<@LHt!h$C{%>PRhyQ!uZ~`Y>`3l}?@(r~3DyfYNpKpC!mibDk_|~w`>69tW zk&nCs$G7{AJN(~j{EYN}#n^4=_%`cN(x3hwz-nc#q}r}u=v22ezO8;z4tV7Yb9SAZn$ifXmN@m-?klB_R{%$N~MqSyg`L4UZYO6^*`Ma9V=U>Mv z8zg&7JME^sL#Ir8^jmy%&p)sE!Ilo)t-nI}-etbV#(1@mGNU>2?W9_1K7S>N_q<7OIeEJ`<{{eU35|~T4u8bhU#!C) z+utpwoFbDGVT8Zi)xq|6iHc$bi30DxhFF@jcd);EZK_n_h~oTc8*sY9y0l~|I_-TxdiEtoE(u;AL0!-wjFK*S@GUj%5vt&r~Sj*haCQ40)9sNhv^+1{^7e$g8mw{E4|2KrB3z_ z-09eKo&I6c_ojdFrngvK=uPWQ_ig-;{X;CJ{cQg*fpVbU{$b(+wgP>MVgyqpHvWmF z8Rk#1l{oVd5Z&g3^-FsAhmE*G%?EG7Ir;Jrx9_w2Ph;NJ@z6_#kY7ITW?w(2nf4V= zRMdZTzNi%TkbU8gmwh?k^-V6p5*hXm3wkdebF%EK3MDjiv@du6P}{hFGp3!`)Cg)0 z-nsZqn8=8dUHSH$FfAxvQP?9)9`0{A-|y;PocTISyw~^>o39CFI&_ zen$464vLkfl3rxSgO2{w`&S$NF0b+Rk?|&dA@%72|aVatEVG1-o|UvX$(&hpR0-Ftq)Btrgh+lKsiQV!Ew{=c@g z<=^%Jhy3Sfu>4nTVEJ#`>>>Z>FY}Q9bX=k2{|L^>MgH#nd$}<`D2fjj8~Oa8>eJM} zpUBceHs%N29p4X(93k=`VdwXy(qdR5!`@~?KZX3E<-dATCN;-eFB!S~EzH@>UC zG(DW(;=7Rep&^MtdAML=Vd3jMi|w-_rWuxf9;HlWj(pm`-~64!zsKQcu zbBBLetb85``Bhi@+R)0?|LOa+7ks~O-X$!N&t79e_rQF>vahj}kj&A(*is_$bqg2R ze9d|~_zD{S{dZTspIf@}>Hc%U{$YJV=BqoK`Pv~+v-lQLrZOLVr4QPCJ)HWhe?$(E z{;vL6ww?3Wsg8_xb+SsDUr-K}Hd^H230R(jX#a4ifbfa_Dk9Bg@olB7Wj^?}UT^!q zA9&mLe=6o6zIQ)G=Rumn$(J$K)L*>Cr}Y+@%2|~cJkfZ+?7w~A2_(kd4A{|zY@aT$s-LD{S`$T!qQ){eDan4 z!M4x&o1A=xf9crN%|2&rGsiD&pLbaH8I!yIIK8gzGx;Cp`+JJ?Kf^w&P-ZqC`Wvj0 zL<6Cu0lzu;MjQR_y8~`~zQQJ71BGQjFO~=Yc`u1T^L785`8vPKd^Iu6xAfP95}f(q zyZuR9e?Q>c@J9T{APwexQVV^xI^O+C6Vt;hR zb<+R#rVy+4FC!Hb@vU{$--i2L`LzGcLx$Yh|K|P0eETP`{!ITlmNK6?^6ez^q5A`y zb~)m!#rPQ+UoF4S5np}h7xdSt5aj<9E}=iaUz@Ho|JP%WNgtWN$iwW;Ie#7_W*es4 z1a^EifpVfuPJ|Kh)rZClFg`^wf+-Sv?8KGnzUP;6d^PS9kNB$ox$f@YNAG|uRD5+4 z&dFbV#oxpf`|9ERKIZ)yB3KggU*BsX8}sK!Q*xH@1>0BhS+Oq_zt6G#LlsJJ=4f9N zNT?C<)zR6~@PUA6*45!33K>Rp)|GFx-{jNtFFk%;@bhrp&oJMxncRO4BVO13k20S* z^6CEb;togu>5ZQ*{fEs?=bvWWOJdOTlisS&kZRA_uF=_l&Xg0;dCgDq5Pii#Czkh5 z_cfOO6H948yZ^MHoTzvI=~LgHpX^B%3e|rqZpW4BzWV=>{NGZK{u4gs(SOR}3e|sp z!a4csKONNUj_j-5F^7G>d+#;-PrSvK|NfKk zr|^j(4M3X4>OaNu$#-;y%{RW2gKwna|7yDG@6lwFPsa~Be!pPs#sYoMQ z`fEa&(|qs^Zf@(Z-cgE`bbQoJ>5S|%$(66n=Q1nH_WqHMkMi(+raK`^yZ@#A#(cBV zrT-axJt=dVBcJx~Z*O+^_X+qJ>EEZTZ=Z6n#r@y%5>jD z@3Vh@YO#lZzy4Pb|6UtcDF0pv=j6}7t4SdFzjlWm{$Zveu_O6=3%>q(i@eDHnL(dPT1xTF6K`C1MU-`npBi8H?1b+xHK z?cub4&%^g0ocHhN9TWQ$N7n<>d~5s~OPSMr@Qr=N=Bw7m!B^1ee@%C~>F?)zOg^o@ z{EyG;vzTwz%dEepa5EO)Ldq=WgRjF#n{T}H`>dmsO_Khu-R{O$#K9NoKQH+E_=k=% z-)Ao{-{HA7-&V>j=7aCtd7H1X^L?GmmClIom(Sh!zWFBS{+Ea6OUySCasNyBW{qXO zGG_cwnZ+FWbo_DiYDfGLho6!0M{UKb;*WdoB0e2|#C;*SgkETmMt8;^aZlwOe_ZhV zvZA=149ZT~^UITzb7XSY_@h(}JO1cjQz%A|r^o%Tl_1CcuX%F+>urztV|K_R{#cGH zRQxdt=j1E?Sj*q^k@0J9qS?G6s|^1>&vpFTaF^*H{MPuT{U3*KIY)TT@p;}6U|@ZT z0Nd9o3}cpm7)zPY9PP_J{wQ}=tYaW7W#es*`N_$x+Hj1RD*j57$?^&9!6x^F^6(B4 zjc;~Lwev7DWj@bL4aeI|ODWsw%H;jL`c~t9!p83${(QOeanvcY?sQ`tG}r7AT3rLS)(Vd%=1^YiLePTTrgTGgSiYm|>8z9;9ojmIa4 zntXaZ*6~Ij#$)I6C|3&KcJb$p4SPICnZ$hXUBchMmHt-7`90iwlsyvP;*DPxSCjpI zW&b-&zQ}kZ5BBNwCvARWzN*8RZ%okUt4*2G9QCKitLHv(j8|RpGjhCISWRqIjaR|y zg8mxm2=7#Fw$U4|mu-ZS&hcu}S0;U=_2yx;Ht$BK`=*Xy?Az#WyFFetIBk);j#u6I zB^WW#4Yvu!2&PCZvy8{9+g|7Ks?J=G@#@4ukMXJ)u2AFEmpCV1im8V z|M!X^e;;tz0-EHCQKsPOXHs)vMD6mVa+li!Lb} zTdGk!ZNy+B?laYpu&*NONev8%@ds`pQH)wY(6O|7-RpMJTK5wm!`RFHfg@qx{_naM z$a>WuSjVffAHgq-8=?9$$&A-E4gABqcdFf$WOpi-s`stHzNUf0e0;Gw9)sf)>(PHn z4eTmdSUt~7v zCU1ePO2Hzp@-?xeCz8zY-X4CY25WKsx1!F}z#Rfhq+L5EbxC>%Yl%ZTbUn_W^MaUU z47QUSi516T78YvFquM85^Qg9oKBNdW#nTevF-gnl7DU*0Ey^E(odx>!ql1-j*&5uq zS}sS660uQJO{1o78`?DumztVOO`Tn9`siC#Q~#-~?98jfXcwzp%P4mA*I1!EbHBYz zd4zm}Ewy|HV$&(#W@xXAd>`Ozw0s-jrzPKQ-{daeoehMP@&z$j?TwXQ@%Znng$y+)svcHrKT>fHMO#8x;Xics-)%H8=Fq~ z9!DK6@@>x7X!+K{PfNZ}eVw~}yY8fJNFS3=FLJ9&{F8j=(EFq5zN^1y`7RmilrQz3 zu&)!!&nDlKDU2FPnUv%tuvX<{aY&zvT z9_@9J?*n{|mTv?6wB%bHt;)?mELJ%slJ9%l>|XoMD=gmypE33DY*s}@o(Ze`u%D1smQ$wSsdQww;sp(4BnkHE_U8Mcqq~+Tin@;&wgS1@a+nle_@~wrR zmVDpale>Id+%A?x^1X7qSQy*yjV#|mZ?SyGWuqqV9rn#c`PuAu$$ueVIXVVMP5BQP{VI3) z#vQihyMo^YNlqa79(b4Kd-Y+K@0#bF{-FrVw+_nBCf`q&LB4XdB95B!o&U34Q!AsU z0aDWkKXXkFxYo4$%c%H=cVE`>eGQvV`SwD4UF7>5U!&#Q6+bQc9^0L}d|RmW6WMR- zX4^k(9?$YkImXn_-r$rkr7Xg}?@@j>`KI7R^>Xb-95v;8SS5m}rXTs4VbNq4sVO6i zYl?BL=~=6$i?iQR)3khhW78?$lF*@xe4Fz%TE4aL(~|GFUAfD*th(Js)Ypb=`ObNb z6DpkJa+6g-xe?7oiRp`Ci4>X!#bvPfNbH?#x}ji`Dd#aYw`zW|3_mUTZrhQ&d_zBpOi8}ut`!R-{~J&Br~B@n%krJs&q*ya zh!rS5n|zCZ1o_I*`8aCIceqj0jYdsNCvZ()%;B1DcdejQ zem40w{t)t&qm6OYly6O=rY1&BC8eg9rKbB_Yx-?lRP49WKrP?u*mTNwJlg9b-&npz z%lFK4wtS1DRk_8#p?Ae*$$slhwf#d^lmq#G)1T%0@H0;PrJJaTe?O0q@2wv|zH;<1 zj+*ivZq&4Uie1yG0bJ8FQqvj!exdE@rL0L-O&4ds>+m|Avfst@W}U-+t3g^W@_m`F z(efRLpO*c;w>5Y9E>?3kl5f8?c2s&mzR`8}OqOqLSL&H4Kb!q_u;n`jM@{)QHfkzn z)HFb9`eFvxwDV~Wy`mBgnW0P4j1{-ci9a8Tg#Ad>XzK)8)r~|wc3{N z9HCB;QK#dRPHM^rhkbQWem42ehmkIqqZM(~l<#~sCninyG-|3THD$cV^8K}^TTQz+ zN5wxBdQ;o)$v3jwZ!fghMZRC)L_@yI@YAy2W1Di9@6K<*qw){$`DB~NH>y9~H|<5H zPRK?r8JzD?em40|A^Vl18*$W>Zx5rUhDJ?G=W=C80wX`Nr}!+CQAZ8)ue$$8F4AzKd_P<=gKw+kU&!n``O5l($*Fw`G&BL|{Wv zem40|e;e|Zqdjocly76Brea1-r%G{68S}ZO4cX)?WtFySx;Xj1i{&nq|9y>CzHs>8 zMX19?zR&SBTE1QJ(~|G48*-O#1NB{B>b3K3wMU)Jv@!+qXWN+irmjw_qDSlz|DybC z^1XQh>6C9X zwAV$xAMiC=zOUh@CEso9a+mMPJvQ~s;_}cF`G*2jf4Xnbr%YYraVNDzU@K65Hu-)z z5Av0x^KsOa?--+|+l`v0zRESlN==&{bE~P9Rnx`Echqz(-`?1C%J(?xaFK6wzDCQp z7JgdteQIqUJd!TtDn^7)MR{PCa1Pv`}qRP0ggH z4~B6~D^P%$>5!TxSv6gp{eFs2Mfrz!C~9%|-)fMSi+o??YqWfO2|B8i<9pa^|X8oVACnz9jL=az8TK(ZL=}HrLN3fzME-2sz#kdiT3zb9p%73d?RlG zpYP_BuS89CP<}S~mYfaw%F&8AYRb2ZQPW_frj0VbJtH+ua;<6iXHoGFpC@YhF2kl% zzP-?17x})**J%44fuENB9$S&SeB;UADfzBXu;m-NljVC>z7lty-X}2flM*3(kMgt0 zH+e4PD@Qlts43s2WSOd_4n|GGrKXpqrb(_fJ!{o;arS!;f==ZhDpCCD@DC-SLl^m8 z%GYT5okRd64gSwpYAUZIf4QFHz|?OV~d&%@&{06K`SPP?VodzMW@6zH+n& zjymM~tzFYrwM{i0k7G?fBQ^b$Ek2X7N?SEuoP0+;rsdlkn@;&ILLDyhZO+$d`PRZu zOTM=*&t1NcPq(dVMVf8Db9ylKCxcnO%{n{nS3UoL^0Ude82JbF`~!}f^8II;T~jNg zrkYYybE)Z2C%2kD`Xnm;q4nKbz74SHly5V%*G0b9^EFz&G5Bf8ciXbuVxy>_qtN^P@$Ksglu%Bb_k zv(BhV?f`W{`Pt+<2q&uhLyd9Nly5turk+Mk$K~s>&84PVt~LF(G%EJ{L5+&bAR+@{F`%O2hRn!71|8_Okwq9l zMf!i=Q+Mq&L>GXt>1Pa){5_rS4~RWUp6V7t0*}Xr90wMdQ_)WJN~T;qn9?n?WI-9Hosj4 zwBq3VDH2-u&k)q{Eq}Xae07(8%7-Dpnyq#ztJssX1>eJi>{5~Eui*cH@?-e-p+5m% z6*~j5R(yL_n)v>B#H6%jru5|Hiqb=IDP5scsvW)~CK&kU;nj}sC!i4r-^(SB!M|w; z>iGKJsu|z(4^&HuZ%6H&@}cNHY4zWS3BE60Z^!p6!M7vIkHNPC@l~-GBG!uU3eEaY zN}pRi0h%gGcPmO)$EEc7niOK@-|hzu5tZc-zqfvYXM&E{j~yhj?-ULC6CcxqY>2mtE1H8`2MZ~E6wpRMtf&} zZ7h)f^3Rg~y0X8$zxb25QD`^BTQ z`t_4C9v&NH;9G=OJHEqE-#GXVmplf(9t3rKx4c&Kc$hoEY<0QzPJ9;+6ntO0Pw@4` zw3_$vMV%W^ehj{cW&>Xpy9BXTd@r+5>T03XQ&H-oC~dvYj;|`~W}VXS9}iZ4?Y1)a ziNChYS2lTb6g1-C8^v^EnJ+^K>iAB2wPt*?E6^To6jFGx==%!@~nQzehVzoQY<@oipSGrj`@W~+C}Nh-C=yRpBt`h!K%>T~9pBv#nv|wnD2-B-hAT>M^W=eJTCMyA%Tay|zU`4v^A~&^u~zKfQ>q>R ze$m&!w*s$re9uK6#=&>KkG@?mcuY4r#FrPZ&;v|35U zGL#>KZ$8AiCV$5x){1W*3#ILMnUrQIO2ZYU9&stP)G5^x-~EPssKBco-xZ({4`0b+ z;)|e;Z^u8^jIXPXiSKuER!z-sdw&Fd*!v$8eA8k^t@8M3jq+pgePt%_Rk2MGYsGg- zqDkp~3#A!~((5=O2Ydf(G5D&oR==oGsvW*>9Wd}+fLA-d!%*Ki_)e8P2EL;a)bZW& zLe2PQXf5R`c-}s9J-Ctm3xAbcq}4y(WZ#cdR?H13KL+0qkZ_rbU4mFEzLig#E6*z| zltw8^+eQkdS#c@dtW&BTzV8h+M+U$G7=&HRHSa9dp*%vfIMH%1Y5pox)oEV?3>? zA(f>(kMmg_2tr&1LIP99%Tuo+Tq)_(7@M)S3AC)(V95; zMhlq7z&C`Tj_>mMHRGEN2Ww;fW;tb%hjJhvo>WqCMprxks#R+_%8$V}JRSV2VjoAW zm47!aHYv5VP}(t0C|#~7HIGZFt4^tQ_5eMJ-lE=Vz7J@pyL!PY} z-@}v5R{KVq@?oz>TK&@v!c`q}?D#4P;6wQ___m#9$cJ`_wc`7bh0^w0O-eHqrP+$o z=h^WnZGYyZ@b7*T->Pc(PCsTl)RQS#xFFpBj48E$Y={lv_@$VVC2%)Us67Xv0 z-*eH2aq!(1;b((?*CVL&@4TmL#&_{!=B&O}d#Bc)fpUOvc!0F}nj7Qk4`nDn2H*3L zP}3jABi4#ch&-vtI8Ieqc#KO0N=kqAowQoN?gnSgW5%Jjq+pgJvasYt74lX){5`B7D_EG zlq!b_rMnfSCpyKWwED@DA|Ecn#jYCvrtywf+y3M*)He>khj!cew+cZW-z{@%#y73L ziSOEX6fcv1JtznGzVx)s~z8?pb-b(7Lv!14=D)h_)dDFW_%BiH}Tz&Z}RWh zF2YrV`U<|+^|6myW$zz@@?-FAg@l^De*j{w_&#KzbhCw0Jw<6xAE6Y=jYp}DPN{bI z?!U{xw+gRze4ho4IQXuVJO;jt5Y+K){&>y!CTKS?k*mtLn)s%YKKNIi2W`^9&Q)sF z+7RW(;QRbU@UMzJ_$NEQkN?H&$*vYk3-1(4T@e6t?nArYUQuuL-{fIHk$x^Rct%NTJddap>(>1 z(rJp)>%E22=Bw=ZsI=UrsLJlzf(}(IQZ6=JO=;nJ;mhTBahUKZyq^Q zv%ekq$(-K?q8!Kvzq&=k$GbKx`h)Ta+=cRE@QoA#UlqFvu~vL{u#YrK4_YYgZXlFe zC`#LTrD8Qo({)O<(@?qY?HRGFo*wlafYwy$_ z(nvq(95hC_YE4Y5c|~E=S%&gs@a=F9@Kv$n5o^VF(;<`6_u4xty;e^s?YToJ4T?*t zrB11K__iHj;OoMx9p4q85eMI>*z62^LkQ~lcAQ-^zG(}UOyK<1T6<@!^H2`(ZKk{= zTU}}AD&>#a8s*2}`y=sHu}u+c#rL&8o0L{-@1(RtS^8eTOYmLUHXfzb51kbGu;z3F z-^F;f<2wxXjf3xO$z$L<0YM$#Ey0@copqks>Ur8bTV196wcmYRTK)9p_Ez(XKlneO z{1|-yMtoK562w~ZJ=a3%3Jaz2ic()isZCr;H|vyY$G>k~XW+X4uXcQof<_#Cr%E0J z-_Z!__)aRT8Q%~bZgi=*>v?m2+jy<;Z@5(OO^Yjk$DsTee7B7? zX_TTgRZ)5^Mm{K6UPq@?JAB98Y~Y)ZS3ADXf<_#CyGR}b-*g0Ze47Vq#y9^N6W{VL zO?)4|N$~aN2)?hjw)3yLajGH8kHPmE952=GqdNGY9p8iVOiEoXlrB`1wq*;YZgD9+ zkFtbP?eINgq=9b&UhVjHMr-2WyKMyX82GM7P{((<|2N=kX?6KmCcYUc2lBU7J8AXn zm)P-D9y;YHKL+2!cK}}%`#55){Cn_e3%(XgmE@$Lb7iJb>JgVxSDjMr@GWj=;5!zt zc6_&jMjU+mN*)8>ECh9Yhs>%O-->I^R?m}PCRO&$1=J7W53f#f&*oV;i`Jwx1Ru(e z!S`|UuZnGlSS!8*ER?RWP->?r^;MKEh)Zev%#*^u{dybtX5-b4?-bNG4!$iUkAZIr zf;zrOX4H&tdeFqTe4fd_W3Lf>U%E%Q>bfrRb_I5!{1|*&A)&VaunDnNd{>m2l)73d z)l-zZC`zHu@hDB#Db}89^Q2d8IYuo6<~S zO8u<4_D=mFTWS6N#|7V`7u)$)X$WN~KL+3PZwLRX*zt(9;`?lxN$E}Pos>4ENKdv< zl;*^x)KaHZJA5BA`M0PV|E>UyIQR~?^RLIkza2|z#&_V;W~;|&?`-vA#Z|2y7JR>G zWye>|>a9_J48BKh1->e_DPpbo?taRoRL4T8r=qlSwotk)E~VAQ8l~Fd+ixQw6#GRs zUhVul4E2qJZwtv|$_E5>{@pUYW_+`^DVs6*H|c(JeLVJ4(1(4fr?h$}?~1X=U;gAD z^k0-8gYRE(ymXn0U4mFEzMHn1l%ASsQmUsY&F>+UCdZ|8vreg&_+Dzrhitss@jVI} z@$i*ACcX&j_)eNuGrn0jnNqQ=x8gAJ@7UHdYQs~d)d?5b@zwkvP<{-)XWjyQHU9_1 zTJilP-=x&iLaCmjG*wZ0{K9yY>gbeehi~x#gMY{3)sFA8pb-b(zLLklHw!@>-{wU% z4t>@Lh)P()K40PPOB^#A#Cc{$rC;J4LC5 zqO`$n$5&B$9%Tuo+Tr`rX9m7Y@oLAnGg=b|-zOxGfo~ClI=;)N)QoS{cjl;VJ=JV= zi1G>YL9H*gw~sfgm!td`eBVVvO@DYCu~z;aZ=tk$ib-jTqBLKvFDAsL)K#ZcJABXR zYRHEKyxQ^I3L0_n-Iin1AJ!wN<2z(>&G>G9)SPvif26Rce8@mKz}Ktxf193f=PI>= z@S*$|e7}GY(AF325NpNvE(@hMKQt*-(h`Q>?^64}mj}> zb`xT)_>Qtry3RtWvu2-Hl(OPdnyyo-9shoTtK&6%D|m~%UH?TN#=&>KWniBm zkHL5RjlfsME%lm z#rGi#rK>HJp4}jn9Ews|TuOCxO0~mx#6bh!JiOZReHJw0;Cs2`G4M@8P{+4e>dU8?uEQoPqfsi~qA zRr=Y+wecuDkFtbP?eOjAGUP)xUhVjHMr-2W+d}df_@*GJa+Du~@5}+T01>Pf^--mQadvJ!u&!iqiIbP741W8k|0K^@;CV{68D??ELKIBK^nw#Z-7hkum9_X4hMEv;5N=(|vU48C{cc(%5` zz6r5bd}mlF-D{!r>^7m)MNxXMNjyr^bxO74-v~(Q^Bbw!^d-4?4B`k}4Y8Tg~5Rh5rM}kHNPej1-5(8n_wI|ucLiv~!S_=nwCt}hMNr4L<6Sl5TSR{(P5ur^G^L`8 z^xqZRz-OF7M8@|tiMjU)UMMA55Kv3u3=C{|3?^3Qu zb^kugeYY;s$NZKm_zr4h$5-v2HAML__%_J}zAE2TKRX${U)V47D^W?N?jDCd*f2-s#B^Rz7Mz!d`IKe zj_+2`h=Xr0$z$M~fuN4>kXviUw~F_3YW%xph>7pq^JRVESF5T$r`ownA?QQ-G5CJn z+rYOSVy*a&w@|v*Lg_L^sfD6c8kf@cQ5vP%;X49DMbppnIBIP2VG8OS2j9yjkAZI* zf;zrOZmAhx7yaope2-ZCQ;R|}YFo7x{=F~7j<1@*cA@+jd;>T>tj%wm5NpMEiREVK zM=g|^DoQJ_5K4{WQkt$)svW)^Tn7K96{nY4 zNvl^U+woO1SZkCYgYT8yfv<{fidZYYTSuFeZnjXGp(u4xlm^D7wEAX^Qtj~FFTP}= zpH<=2j_)wkHx9llC69scA_R4Ox7<`SzK1VXJj?ZQ!%Iy5O(lKYzjM0a`=--wzfkA1 zHlX|%eEmqM**BLU){5^#7D~@+@6-ero+^~0jfIjYE~T4wO0~oH1ylchxVrue8gcNw z+phl(L{P_fQhv?&ZsvMl*U!E-*T)q~|7~!Uw7O3WS84mdC_e_@QQg45+Ws$Mt@z$$ zq4c1I(f~zizVg)kF3CPpR9SU&O0~oHj-`Z9_;(;)?fm;JXvD$yD#>H;uM0sP-{!-A z1HK=d`wt}+`~0kTKp*D=It#vyV(?WK%!VjG2H&>CSH&J27K5*a(peTt=PF9CcM?i3 z#NeySdLCs7rP|@U|1|^OD!kh9?TpsM!FQ$PG4Nf4ppNhIp*7=MvCPERJ;3DORMN-! zq2|)+0||DnQolG`j`CyheJC6Fs@TU7Yvtbo7D~&mHz_TARVcMklpc&rsjE(@cK8O~ zHt?N*S3AC2K_d>nH%J}>-)sbRe1{CF8Q;U2Cj#ZKdy?7eMQ=%~8{94U?mo*df0g~% zhw@|aeIE&zsn~Xiwc`7bh0?MIOiG;8vZ{MTfa*KYZPRQ><`7!u5>kR%? zv6~QU#rHA`rLGoAqZFn2`9kU6zs939U8ht#{(S&Hwx`M8(Rj7vdoKDg4!*r4kAZIn zf;ztQ2GxvjKJP2l=C>hzP5ohRQ^EIx(bDQJy#LpNud)!Aq5K$phjs+MDt0_#t@s|q z)}>DA$37;d%M_*IiqcmxJ*moSsZ**QzHRFm_`2|F$9Dy2#KAY3$UFwVAp~`NI}WTF z-=&sQQyVO&rt(k@F?PH;IvxU-*1fjG| zoj-0Cm(uDRPKtbZ4@bc?{$0dVVYc=0Fw{2=zB46{f$vxZb$quBs2Se{yct#F-+30V z(aovS>JJ(S|2`h0l`09l0p-Wwdnff@6}tqnR(#u8C|zNpbeEzuTv2Krm(tBTrP}fD z({MV_@SR2f0~@|aK_d>nw@MxZ-#i3$d?#IBGrkqe)l9?r?Mv;Q@^|S5(8v8SF2VP@ z6#M+9-T#2{WAJT-g!=sth_&K7z(VPE3#C4a(o{t$R6ic2Iy$A_hwp%XxLw)f@$dKg zk4Bw;#s&j8DT#tE#pgd5b-utQX0U*vLmvM>qRxA7Ly|R2kQ8;^i9zGv>?vOB!Nuci zJjVCy@!jL!778{Q3?tds{YNHfSCZ%4kRuec6-BRqC$2LWLRW(jX!!g`h0LiSgL1QD zE;K)O{vWY^wdDT@TYbmLpRev%4t}H*-D*xHRifpW%@b;<;O5q zawY_$iv9IEw0>Q8HxCJ-sAQ*wQY#Ckk1r8Qo9+}A?iQEQODIby9hb2_JsORMzr-K& z?)mul&!>xgB;E_~Y9GIy(I^A&e_dM*@9~n^7|6pB)bV~xQXe00hvj(4xcQiF!0N<% z-9>^zRU<*+hgAFUQljt$lplllS|rp2We~Aey#M^9*|QBSl!huw;}xaixRl!KluioX z->UsC;=Qrje%B`;W#D~JUNyWI+Bd#tTQyyt6Il%`;Co&U5cPi{atz&llKr^xuXEF6^MUO$u{ zgLl=lhT~o*#9Hyrv`~8YDU;F<=Lw~S3h((Sz`8_Hl)}DR@^?=EetBxTRzFEngv#}3 z^W96BT2kB+! z+9uiONw#=hN^YQwfO3Y=F!*WOS~i}z3?(u{p-}ZlD*~BcP_ltrMu$H8?r_u-=#riPBLJQ|Ih5p^!P28~wAV`?ajkJKHnJ%zgC(}=RD6v93+{J0lMG=5A3 zKi(6|k8{1p=Epo#IScFHsPhV>8ni||O@f}{qlpD)EKLMvp3;Mkk_mWoEOA86!k?vy z2o(QxiKFCZdAZb4G6*kiDvI!J4t|tppQqI-PvSaH@lOrLUF<3SprF99hqkt<$XUw8e~&gFI9in8g^Bn15EWT(PnE@G0XOd84Zm*N^-A(!@Fm32TJT8vHyEOLZ){FA=nh zN%l?T2sU{%*kk}G*D08RxH@{=S=Ko8gcavzw(a%$fAR$TV(2ty)K3pxikB?Av}L$;q&)b^vOFPNE*PtX?g5dw#g!b7y} zoTZ%CJpOe#*X8uPJ-J`bfT(jQ*FVK;v$!fUD~C6Bc7Vd@zEtFhUeFy%fHeWdVv!X0 zi-!xYO;P8no+A^A4@V1{6dz7>%;}ccreaoI&$P8nHCWbR*;uzR%_MhrV&M%G851Z2 zGAJxOj#Qs}pd+=vd$gk!B#fh#&zl!43EECmLomM?MUa>bjCOC2Px7!&C$49 z%Hl*TA^*;(vnR+z-nZ8GdM@Xt?W#g$fIQ~GF}!BdUm}9Zv#!Lw05Rv{|ERMK1{fmd zFlp&Gj*^+={lEh$o(`RQBC5a%>DLJ_QRh|Y8|*igY?sj?eUSOB81o?bDNgXaSl{-L z7N;gUO184ZVCEw~E6J&+SY@VIu2KxAK^?MHPch$2@svt&=V5ypll2q@lR#m(IMkW> zha0iO5c|eY_PjYpY&K%wiithnh;5133u0QAtj9V^O9UqLBvCCwHQB9c?ACO4YZkk8 zEW0(|(Fzl%C!kW113Zp&d|~J2vvbGBOcZ}Z$q8Z3j{-{6IlQ}$X=&E)rAk7m*g#G} zF20TCTZSj#BRBfo*`7d|yNI+9KwHoTp&z->7s%|14wp6d58Xy4$Y<6F!*Q$6|6|k{ z#aGO%sh+?P{wZMdNd*M*`If=AvE=A%9V7+>F;0{o{}2GLkyqh|3dPF8mpF&cQcqY)o5Qh5Q)BL)SnLp;K={n;*hsk;@b4@6PuG z=eZZ*n~0g)kOeQ1msoaQ)Y%NR4u1=2W|rESlC6)M z!%|gT&*~*_d*+Ud5hP&Iau+1j#LFIai?DnKswCP zYNAPrK=M(U|CO-t_{%g*OWcd4K`*+OO2tdu6%sCYuV*-z{QA!T7o%dMM9*_?mS>5( zN=29c`T?TBiPTNTdQh>^3{LO_lArMqW^JSdGq0&q3&U*IcS6)Tiv0s-^N`uVIhaH~ z!Y8kP9Y1746DT-s8Ap#qWgv>mZcb&rWX7j69(+2#nT0#NsLMGHfTPXIeLW3d^^v2Vw(*k%B`MeciO2ti|36;;5l&Z&*sJ*G19L3KJGpTwo(xwo zj5O;lX*TlPQa5t&f3nnOe5nKv;*mHCsY84Lw@v~#1>Y6|q4Dqk5cOcb9$2q1mCAOW zw|Htw0wz3^5p^!@JThTrDqcl}i8>b}4E@DXvaK#i1RM2g%_$c9kl88xSrpkY40f6jUuAXZk_C)cR*M`za5na=zD~;fKGKLJVO!q zig)#x1PbPRf~tB-(gc(5*oDqVf+A$XM1RYvT%s>`r=ta$u=xp;d;#rKpxm8-sHpR; zj;K!>GHFck3c^yK-mDK~K^9B!dr~=KS(>A9O`MR?a7aRU->=aqTAu;Xv&hVQk(K|* z=!d1q5_bYgAe_P{(xl?4r%B_trL7U<|I&1P0mG-`Aq=0v7c_1X=f}5&K&W)JV)(Ij z3-936JlYc&n}W4foqIcb0$HP`b-A-s;gz019{A$tI`>}e3uLE`%9)l`(5diTUtn~) zxA@mO_ku}1E?MG_n$~`7Cr8P@Q2`kzp?U{oXX_eX?4t(81&E6@SFxe}65CL^N_y}- z#MUruo<8N6!v+H*`>&A41!$l?ct%?WkBeP}SQ%QU8xgV%kc7DGk{=wU&mF;j`C9yu zL39B=hnFBE3zQWcz)@$#)%bV{Zi?|?C}X+64FYgdDtigg6`WEuwN8bj?Db@Z*VXY9 zR~`-d_Ngf`4T%;d7PM0c?D$a-2&EhNv;>9lPvBuikc<{}_9ek5rMO9MSDgX}yDGJ4 z0;ycb&yW(SLJF;O3B4_QNe{{xh&5HjCMse#f>^i=6xeyHsB~4-Sz1x)EXrH_{!yQQ zcjz&#pmejK3{}t`T&xqu%|c+?`?9@(8z4p}xhI6KNTRx;t#wkdX1+(G{}UkyHhP@d zP7_V7#9f5;v6@*_kEtdRNXko;nTIk5sxr6MMVU(x&3{FP?waOlzsfPEyZh9_VXBFb zD-w-CLgP2$Sp!FTQ;x?`;kPK6B9_7omv zZuYl#RoKNkyF7UD0h)C0s*npgA@AwKC1VoGIA+QIC~?5;385cg+`u|D)v*LXQdPVJ zs!_ZO~nEs>Rg#MGNA5o-#{gmrp6O5*p3WMm-Med8G?W9G3V>QIq$V$Q52H&`X?K!wm76VWY`av*Y`d-~j>d=_a{)YL;Rz(AO-ml8z% z!Ezch4hf9podjR=Q}krbw<)jD)8YO9Zr zNL{8<c>7bnjlq0soJa>UnTtz2{CgPVDWk=0I5` zqI6<`8)|&uM$DW$Lk;kZI{P6zmH?*ypV!_0aS#9dIsQ+){;$Qnam3@l(j9d^hq<_< zqTuSN^Kuj^Jg4bk7a=SrkFLnXbCJBY~-vvBw^X*fG6CY1Dnh1M^Oy4nUrxT zXvY=yg0>jk8HKb!kdS0t{&K9O7DTKs@6I9laW)|-F>B+$s+GaiJefjNO{zm$>%ho zc`;ufwCa89Gt@w@j5J5}wFNVlkD(UdK^S3@%MLmD1{+BytS&enF4#vNXMOFhDhV z`u`De(#V+t@?busDcpjOZ7O;MhPrYBL)|?BcS2L%1u?T+RDd=IMSr8tltnEs!-u!@ zoc`D6T;DIJUljXOdH6FB|L5gIKL`KjQ6=D9?D4Osp4`sdtYSma#DQG3PrFPPptRaf zTT5;+SMAX%DxJih9m4K^Gs)wBJ9f`)%oB7wP}4h=5B9aAvC?a>l4M76=V8_ytwLq0 zNNDu3JHlFqmSV{*yKn44bg0>b=wj7_jKQY2>OmPsYc54M1X{bX35SVqSPF?3p)_hf zs?YWARvH_Wi=L_Y)5qoY_sqaH7hsr-5{43r@hHr?fnkS2S&_6w+Sy17izXV79d%xa zKzJ%v*lG-|i8O>&Q>y2d>IvLFEPY|7JY8sfjnSJE#r(4^bkh$vCTvjtZPRwK%0B-Z zj8aS{p>|jq!q(^Rm|S=T_lqzGV&8f+I?Na721(Q#EJ|hC=U*LlPDH_&zb11#GW;dV z0ed7uor5N)?<7K-B7!c0;Nn{b-=M*9rGYmYJ9&JA=7vpOzUA|6EZ<}l5?cgj@W~ir z2|(43VdS=`^T$i41@4;x5Rl44eWK^Rnss2<-IWw*0bebsTuuIS} z6t3$d=osyvsXrL<^p~P37}uks&IDw%O2fk!ON$*PJFtdFtMfP6q@ibBH)%1R(qb6n z*y4-la0GQ@i(!OIU)N3ATUobm_+dyxZ1z|7OiT0y?@IM`=#%Ow{RXY%=Hy&?QeZ($ zEI@#3EB}W+|Gz?q>+A&gDE8+Xud~QFwQ;Pg@D!U6c%sxN|79C09_;RRa3p6SHAirk z;apG9fOfL9=vYov{QHtq*2 zPHz{QoQk&6FDiTs($l#k8yof;*hQ!wq(o-hB<$GK3+vw|10AuXTKC&+k&yUYMb(MRLUISU~6tF-{ zpbMDmUFOBVB2WAEj#6xAfCN?!1F1#%KeOcXP_DN>cGe}x%FUM3W~uQix|KD5aE`XE zeBi=k(!U3V=y~YzogH%gy2B`;M8H%gcw3nMq8ah)qH8(ch%H znq@PPx%C1i;=zAVYREgVMNDZysZXv4x9#NQi)at}8F|BBBOG;B;x)1bjxhdiDV24T zIcQQtiCYsB!W|{PC(5--?#>8{;CNp!X|!;oO>%2`EG46+$M$FgiIjQwLloWPT+}_3 z*fiv~$KM;{?E#3`ZfUd5kh+JT;;fFrP6n*33vH@f3Wqp&{X!|In@bb^;YW}H>J|{B zw290C_dbUgSO{Ol!{0B--&?k5SQ1OD;IlDA7v49j_Y9j@!FQ{;v5KKovDNe-2gQOuPZ2$VQ)Sk{qY7~Wn{Gl#Nk(v z1tOu>-vM{p$Azl)t6;SRy}4&uoTv3K3rrGe(Zcj?jU;x^yT?O)P}vmD4Ugg)pO}SsYI+ zu0oM9EFm8q6uNjlM<6y=si=--1;NpP#pnMS^8%U{X`UOrFGGg+;|M}k?JWtgUSh*R z4Mfx|2c`vQDNd$p!qI_If)f~EQb0@xjTqyi4@+>U*CQ#U={`#ID9r}8`8?EO_&)3c zV1HPq93SSLbZMib^lcU=0tL!48e67jX;6n_Wr-|Xd|2#M3Dt7hy!83YWejnWI*ji= zP#O(5cgyWpYI!QhutmjOejX&3Beg#M?+aBq^#+%|df~3H3@q#tSD+jk=UC=Op#{_} zFzXEmvMJ#MOkBJ!HMjJKr2>bedr0PwMJ{MxX#8kmF_sh71Xi|)1)_}@Hro7y0HT!u zVhn5pO2SamNOFXiGFx!DSQtE*M;0KAsf;+Lgf7L_E0*hNpr2d_+k{ef+I$enqd&?b zeCD`j^sPDWMHRlocnHJ&m?@lP-q~8if}*0bQ(FI0_o@+)?F%aPEazRMObG4C zl|cY)>S7I^Zdv;scVjrSKZpHJ9#C$z)6{ z7pA5blg{F^IV{pKEK-K3VF7O!>NXfV11amEjr|SnAo+aF6jtUQ2*g+ycz2b!JqU1E zq!UKJvRwQ8FKVXg649E-2b)<;F!M{f!K+M?nZ74+`qmPbI3fM*0K-Cl3E{( zk-N7neE_=xAOSOJdp20n90oPNe(;N3I6|padRNfyJH*gY@nV-&i1g( zJaRC0139+{FSmj~L>^?AfP_u>aT4Y8Vtl0DR7OM)uF%5swD3kPT&{(y5Edxua4Jl^ z7heG5286*qbgYQnA9Zdz%dT&Jg0SeDParwAU{QH!feUcYl-FP1yRKIXEnJ$+VnwC3 zpD|M~`N!~JEZ`h>RgCgF?)r3;W6XLGhUqWoow_;8k(LIbCfsv_4HbR$G;^^JWUFKk z{tDJ-V@Jvb_++xW6=|TXrnIRD??=Y&vzCi12;fNro@b*W4bTuwk`3|TfKQcYxjPL{ zu23;$V85Vf zc?PfuFNC9^RfD{+8I{6ZDw}JdNn(#Lkl7XAEQ26&A>-UCjr7-fOc2OC3lF^m%=B=& ze2Ed5zy|%D6W9v~#m-->nwLa>5njNKjd*egGY5RHCa`?3zbfZl$i0M6+g>tvvGkh`c-qEX{WwdLLg?3hR3UoqFLT)(1$dJ~~Q+tX{x*8B>Fb zOLmb`NEjh%RY{xHVWj|*&oZ_y>Kr4L;yi@mN!3EljY@6d^vE&H3DY_`a{J*0WaK`_ z8Jl%awwu@pE;ftKL|1=^vT&G$Q(;;UtQcWDb9y>lnuKfx*v*A3@*_4cE_3(cm>W~9m*1i+IjbLv^OcC8Mc)`C)MP`&m9q5g{FRnMGa2_F>o&eWd9pCk^Nspq1E&^iWjwh(fEHXYV_ew z#rtVozKqp0x6JOs{b}0rB~NF4)Ci)Hqdwb;U8In`xfESbt!*^?!l|`M7+PBez8mWp zuqL#&JDo~vy9HVsc5FUDP+!NmqRw>)5)o;?M@NL(t$d+&Yh_E-No<^@lc-;hrQ!w# z!Rm>+T0V5OA=m9g-C$_q>IyUT7%V?{b z1X%WRh8P%i{_}K-z~yRz>EDetw8tOL_3zDvxVdL1hE*W*LndKrt?<$Ew9&!}?J$~> zEHvq`y+k@a3W47(sl1+RttZC zKOj@sXeG$Nn*sVFDkgB#AtW^y-JM1^5SMZTVa}4zWj=)WuRbqcggoKp5<(X>W9VrX z9PE_47R|tbEJEp_?5D9aIv%4)wyMou4Ao!9#EsVR-Y8{N?Sb_8G7OCjpN$FEx(|EX zX;fZ?;oy`NxfXw?j8E4^kE*YrUa@_$M~!6}qMDWUQY zxE%~x5qchP82q6JKj9$#5-B-AZR2w;`^MsplB#*5yskR0;5zX}SqJ|oez1C?Ji`xx zeyL*m23uen-VL3MV)4f9w3TBGLR05Mz(MzR2n#s~)Ajg>ec?tUEuJQegiWx7kSbyB zsV3~9E_0TnrwM!#;IAs{N122;^l=Uk=P2<4mlJe6*;ytr7vJ*9#_8ejksp(D8_eHV zVk(wJVVU~_d=(Bg=4uWiB~BocLRui7^69V^fM%=K=B#EBKO&rlx--mKjbUn)3@^~a zSz36p7WN=KOL=KhUD$}voNGAH$#aA$)Y@AI!{kNz$g)PW3~6bJdxE^9v5c6d1zaLd zG81pGq6g*H8t;{7z34cAQnHu*0Ly zcabnW3FE|O%YP4F4WEEcui6Vc6gu*eY0Hn{N4W+G#(b9;^V=e))g*KY%jF@QAS#2Q z_1F?)u<<;|F>J^~3!t3FHRfN1Vk&#OV96hq21|ZgA#4fI_Q56||9^7*AA7|wG3x9M zt;_4*=nLe+^PWyX*w5zntN%xwh0eJiUOrjTLM*gS<@RUsS{Ky*4wR(Rc%s!CNP_u6 zY+m6?gsFXHK(bCj_mCywERgx{@6_2h6paZh>bxBdjXJM9#V$`$6pXc(l%@P}_L2$pslAN+BkU!)xYh9Y+DqO= z_4HvMn%C_F>?M6sLN$BI)hrgg|9vIr=PMD4k%!ZE%{BO6+j~qE*_U}}vl;=h_L7xX z*3w?`T99Mmxb~9$$(p@HjfnpBZ1$2|1UVx9tM-!3U5~X_e{$_5FCI`MgY&p)FS!>0 z{Bib@AxRt?|MTo6{d11h2PfBF(ortUve`@a)vc|)?Q3wov^*++XT!tvG$UK(Gk_`C8r~yWe`-im+V6( z>~DRKhu#5ZdT6{8Q2-~fRu!DU#vv5DzT}$3W-rO7o|#AIm$A?h!3~)kK37v2uKW>Y zE*YOghc1fCU2M1uC! zQPN9_D4>BvNL&OGTIr7=D%bxjbxPbYfURWQA;r`DPG5)2EYz%^p(vD-QCu#rl)`e4 zOG|vi#uN9KVRrpjuK#doj5ztCbY7GXITk$>-kc~%85>~R=s|CpTv|DvXA!$m4>5*2uIu{ukh znQ#1{rb>R+%o5k2X|#MX1sAAl)k_swUlCJFR;%SmKNz3hU?VerR>P~_M2CKK}+C=b_=vf zH0(6gSzlMVqR#qk0(utwK~+-ox;ZKKn|WD=3FE(NzZw0#8W2UmK(pVpN1Ms;GK5aP z{pO0F6=)ME&t&T>pMytPu9W>|{#8cf|Eu{Zt7HytF-230lt%}S=h%zgJ#&fM=J#HFYFv&oCO=(=40r`QTJ&*$di2+?)9+zXaF z2Vm9M5xODy2ifvX;g;_%WD>C)vkULVR=kT_@#*GPeCg9j9G)*6()G{?+lJrO2#b!H z$yqko=%yWDDz&@LW39(Kn+h%SyGov0q6n#W>yEj7?f?l&VFwVP6rTEy?vwBqD8O|@ zw9D{8K`ZL4;tO^|5oeh=u{+iP6Lv%EVSP-@6kXhB)ub342k?r?4+2eIv-vtuUi0`m zT3++{Ize8?a=38vL`d6XMqHZ2nTPVl6mmH%3}O5VpR)1~LaV~P4WmOUiikQ7{D&H# zm>RZ4olVga+6L}g!V|hMGw23|Uy+Q?0Jpp$&Hz#8F8Q!C)Ez0K&WDgs=ahK-!k)6& z6Vfz$!f@4<1^4OpgaQ0uwI}5ALwtL}Kf)G!g6bFjsxSS%qh6>at*-uU>g1VyzZxee zApzD448I;2VKF-Vne~N=^8bwvcB8{Pa1}cNqeI1hbi)Z59WqOqReF$rk7aS_g;e3G zu@(m}zM2+?4pNd~zBm+m@GX6BnH+1AZz<^iT>n}xcl(ipXR=|KzHJfLsdD;`$|Z&^ zjHAgT_*G2OaBV?+@{RnUOwyQgVVY|X-tq+Ixr@MQP|+tO7G9|jVV+Z?*r3nXB0MpO z2hcX%ho)(q+5~7kGaLRA3L1Ap(>ZfP9mhSXU!YXZby+AfLyD9=d);>~PD!-+U?@bL z89xH9X(&=cEfMnh-EKI8PIR>S2H!jZUbk>R04u(x1Odi*;5jKpvxY&G6(Oula}>+6 zFv>Z&4hykHpvMUVrsO=VXFNb#Z1E^M>RgLj(EtI6d3M?{O%{1@#(@#$Q0VA8JFs6l z#O0`Rpe?Tv`=wfIAEEBD2yRf=|>bE>*klD-37 z#4^HuqzVDFXGl8`4ykZYk<**C0OYqa=&@fR*Uj4jv+-pZ`y5_lAliiqCuy9j5CZaNld63ok=h=E5+dF&92Amz~?s^<#F)UZS1q{~RlXfbuocmtfgTl5%FX z<8^{w{{WnN?+L{)x$_|HbZ{q!RO!;8K>}dbu|T7 zm!S!N!DLt5(Vb9;RraCKAjFBj%ofNH`Bcl*1u;>lA0cBBw8;}Lso@+d=aEO_-s9c& zUL1|ErxYg4@wl4_y}0p7L!&v43G=BNus(wcbChFG1^vFQCz5AicfdH2jN9Hj^ht4) z%2m4bG?UttiJ91kmHk+ReXui+#uMJR$Y@Lc!c5(Pi#V9kEXYaH8u_ue~sN8Zf5T# z7YC9jpd4;FaAaX2x@Da*gnGEe$|Sf43W!CW=|2F+GarHKUe5ve;>fI)_Lb%cX8`{o(h-!VaLJv;_)u8e=HXU3^w+ z?j7VM+$XyWjJgdQ77}_EA#ZUPVD?v$^yPA%gTku}ZQ?LHQjTE;OsYVTj^ijB6-ypk zK_*bgBHDaF*Ex!x$eCWuQz@PRX0cy={(au|m5$<}BJj)9CN=mQea1URLT~=GON6tB z!g)Otu?t1RjiOrO_n*&h^{72GybXkFI&K-iOeQ>^`=&r*z*`s2Tn;cy!`wh?_$TiH z`{Dlh$OyWYH$-1J5MLkhN!o7%z}br@pwh+k-F?<1cU}I;Lh2->uFui$^7m=(@7WBW znmE>@kpx?usJUH->hCcbVkiMzfq4Ea;;iBEwcqO~ZH+2|8?#W`+W?v5A!Q0dgn1f~ z-V!+fhXTkl$hOZ>s;r4+!vC33Do+D{fhL;; z@kqZGofb+tT`h+M>Hh%fT>Q!s_a%`6_uI1ue)u1%KIB!s=)uOGfadwp>Sx|3$3ek0T6!alA(UX&mAW z^9%ycuZQhIt{7n%oO{S(!A6leHX%nTrVeI+tYyAx#7)mUcIZINRN1rI$_ZCLJdD(> z40Ep2r65Ki8AL>3xG#`EZ+em02RF`cV7_cluP8|@`f!csd6uzAa}VOkpao=L3aSa* z&ty>?%rgHYoPYuiZ4F^H$kml4OfQ2S>6bDe!Wmln^;$R^;fRyxK|bbrkV>2fS+zKc zb*Ky44N*@A>RBIkNaD>XOzvnLC}M5|rL@Mq$MRijhBFybqx5;ICh0F~;$}oXt|rKX z*vW>J%|OxFD7u?EiA-pq0gg-a`R{OL&w3yo(MgD|@9*8p->>zox{+%IBm0@>E3Q=t zYiFLT@rUCf9@30D|FKgW7nt`Ik5q-w<v;wPhxKw_ey zJDo*85Oto8C$@bhLBSnbQ%-w%-xhjgAx=NHmLr;xHi+bqkgMG; zW8da!E;#$O)FY5uN`Qzu^ly}gzD)~#{H!_@&;zkJAB?ny=A&M0`cHg+okX@6rP=&- znlw3Kf1M`WT|S1t&h@Cd<$UuJ1oeGoD1@)GT@W!f`A+M{7=Q2i<}NM&0Dqm+zEqp5 zRbUa*D`CrbSU~?l=bP7mOC|ab@z-f|0_U3>01Cx#IJ>i}#R>T9%tr&O`RhE0k61&5 zu6}_-p#&k002}`w%U`GOJ8A^P`s+9v*VbQ$KX@NFuD?#V?P^45=bK+d5F+tvRX@dx_rlvivblE1hi1a_ z%_|!n%U|ai)Y0y*^A-w-_1D?96+-rZ!};ce|FkRRyAc+p+~%)S@zHVpb@nk+F!}UX zf0w_`d&~v>B96aKHsF&XITLCAPn~a`fm^RAM#o~cqHd_j2FL4rv~pMoPTwJu zqofjFyn(4`><~0he0ZW(AD%w=8g-^1t?t89`ZBV>`Q%E1LzNf1+3-hT70_H#K0L%n_WE1oKlg3~A4zgWF<4Xd}6dp!$~oqIj0PwN}iJp#F97i`8QZ=KE6 zOm}RvV8u~^VrfcTk0*BDK4%>E`Ir{FhA*)Xg2`+7)x1rROQC_-hm!`E3m$qu6#9%N zLZ(Zzu^F~enyf@FZw|=Qh;pHeAF1F17l)$D<%$wmBG|l?!rLSF2=-z|*$!I#?1I6A z=W1pB3+)8Qn{m4$Hy7a%a(n{3SR{+BQbSoa}V1EhaLHf=fjA_y$E01w_l$_SSFK~2r>4kxMfmv_ox<4 z!UTH>2%yHH-PjY7sV>w61#t2?@+VF{J&`)j{y|*-v>#tqizl0Z+E;aD<#b~A3rt92 zCm;8IfktS6_@`xvz_<%ReILOUb>52L@p=sM-zxKe&;0^N8XGQJ|5g9A^=lL#7Gbbx z{%KEs39i7bB_bRmy$Vsfn!XqB)NQD~SE%nPXyxy@U*OR%6lk#IV$+U)@|DnssLWUX zY0*@p@&8r-w6m>^r-Z?|Y}D=q8xNhU@^iM$=5+Pj{L>~gBW4mViLgSk-7oOmw;1+; z%-f}GyR%metz+IVFok(*^iSI?l@Q(MVCX&h6~dbL$d*EYp=@=(z+EW8;-B`;XN1FE zW!*pRX^FEzRn0%Gg;aZ6=+j3iESe#tghi~rIu~`Y`WxxD>F;5FxGfm|MmwZH%T48DLWdwdt@W@I2h+oAWARx6$Ud<0`g}|AD*LlECry~I6RT(sA zfZ-VfhX0g*F{M<=Q@6HhHm%qTv2o-0w=~0Jbx?%#pnU@hrP3<;XfX4=ztBNI70zuP zriwbR25Qh>KDH~VM>c3!9$=ABQmc?yS5jq$JKm}3qff`fG~8YD5+Gsm5@;u_RthuL zMf{#v*q$wZ7_Xcx7szvtwiJxH0$lSEn1#BAL%NT^{j9mVx|@b~yS00QC+LB?udLag z;tHtvFsX4Z(;EPAE%RO(?KqfRE#3oXKF{XBDym!uIQFP~?cC8#MO!Wj#E z_XL(}7V~SU?C7ZT*IZyZ4PEe}x|y0t(w~6t4BUEU_v1(kPHfC^&y?c2raEx1c;h;b z)H>WuaCrhUv7U{V&JFqnDqdz>GkM(9!! z7c;(-S@bF*D;DwFeg2=K&KZ(YsWjpz@Vzt*kcp)~(-Xk$X3*!L`Dhn@vrJM4urTuX zjLrWt^IIuleTg()Kd$!E?s&wysfrcT?EA)GD1AegYua^QXg3aDD8L-4IW8SAN8_%| zu#1ucI!KZl$m!_sifZOu>G5~HlmjeHT7bzK_rHILYNMN7ASWGKgeQj&$BS{j5^%=0 zlrpX2Jr%EuCBDF&&4qFW0=zh!JuW@p>SxFF6d>wjqZD^|+kb^S!*PKRoec;*MFw|! zM1&wCS;;Z|2ei=J{u4u#&-6=^VVuU#+-EyxUdUj3Trtk82tA4GH~|!aeAIb8nxY&O zo{=o{ene&S#WA5})OpJX?D8I{6P;YlG2xir8|$3NDYzdWC0MQ)m&-;t5Xq5tL$~(| zHMqlPveHQM8Io|UR>@PlW&}Qf35>@c#%z9XRpKs^c(uZ`{GLFzBvZEO4E3JRVqNN8 zyZ}?xd$##|0wtRTmz|}j>gRi&G4XqKDxnT%Og7JCIINRKyoeyUXElw5U z1gM6jlEHCZE84fwgk8GUMDtfKB5>Qm55)WLfVbrcSk~1Jr%TwVTNYu(Yc^&d_zYRQ z%<&Mn)uPVV)}hu|U=P%Ov>-j|tjmT}bMUoV&b`Rg1{2?hOS4f3+PdHw80Y)oQ?Suw zyb4XMRfC-_pR8sqms}E28JgekFc!)O!$V`N_J=CL8^h$vj`b*HGz;Ocb6|vj31X3M zQKuW#3SW!Gvb82FneRdnS}~6{{1DPa&cv3*HUveUvekLm4@87*O$g5S~BGueDB zdh5^BZ0oSjKaDc^ZT}2d=P#AZD|HJVugAcYtK^7gp6{;}u@=d>IuBwSA+&CaT1>x= zk5T7OC^5c%9N!*4jkQNPHhX-@fjV?rK7sqj&w`5uC1yUiVq@?>Gtl=KIDcqI!zouo*f8cf_*Gp%onS&}Oy!#vLf3nmzvKHEJNeT+Bgm03i;7 z-(-*f^hq@WV(sx$_sJm0KH>YuPxGpsCDBYUcZ%$_-#7l&YBeGX)re?*cBkO>6D1W1^=D<#z(%PMn*cg#T*$|0DwR4{*30UI5z(0+2flWJysu_ zTzmYH*JJu1>U^W3w)Xh1SIYJ-7toycwdZl~8=r$L6av{+d;B(d_r$+%yb-$1ZjV17 zwT`vN_eG)qE9~*3R@k+B1y*B<`@u&8E_U$UGEp4}e*IlciseGpW)$G^b@fy|fj&^y3P z4-<8JP@*Onp2P{PEkd#L7gt&EuQ%=S`CLNV?$3DfF}pH{9g2j|JKyWdoUEceM1k`y z^ekNdM-ysRJTv@kEWK!Xg`YYU)$Q-G-rD^c@Q1%f*bhcLL%3nV0 z@I#1H$x75h+2OxLxVjy_5?^uOHz*i(crLPFhc72uLA8}4rubr31A+s`l`=n_SnU#s z@1&N$S%u_I$$22bosvf$Q08}bPKx89-e^zMd1M*7e+F>pFG^v09F4ojXMu*JM69ZT z$>_KQ)h5`*tiA<5A{G36k>6<3YpP9~r3tD{V&Z-siS#xdepw0VBBa&a3sQf7n{ttb zZTj2&x+PmI>jksSL%lgjYv$}58Nm^!Wn?_Nz*Qh|*jOK7W_41-7e7 zkT^x|UjGSqe}Nx%1` z=4(n$c}am?L9nr%i4J=K&Eif5_e{8I=iZ1~iB!L)B*v~sX8ID@34Hg7ikTd?-!Vpz z;@Nc!i+2ppzsG*M{J>s}+y4Lc``KqLvo?sWQbuuUAf18OvVn4m_ZNg!%vTi>eEO9ods@YGsF%1O8>;ejkzaw;v{UMnF8sg|wcV5trvtnP# zMIXP?sDpEy$wzPFomnH@Ex5ga13PMi5SE$$AVOJ%o!vlSY} z`6L|*1AcU)H3xeJHIQs-AbB`$d_B(`=eqEx2hPCvNWgW)g(=~^QY-95v11>Wj>Un@ zkEAqp2|G+J{GM3YjV!kSuN-fSKy#0 z-B8sJVOa{Srw?F!LzQ6TUDtzFfdo8L@qkv@;a*e*EOhu>786MR4xd$r*JnM0 z$=~pUy~DH6U}}u2!yTmyk@Yupx)+@;+6qUd2j{oz;e7WSm{w8yLZHLx_22hsdd)#Y zr5Pb63iO>9X?g5h*L4O;1g6{!L}_h9|G8oh0CA}9bwW4>jMQ;8$F$V6OebN zg!%isKm#X?fxgdwIJ`&rK#dsDJ|7WrrFvE$NsiJaAcD&mGH3u4D~8>tO^g|>wDXX# zh0r#_-*vcwKeNz_Hziy}i}6Lms;sMvBOSvXzZSr$zAx>DH*lmUa?Cg80L7{N9{A<= z+$`}xoBldv;9wR@_(Ly@QF8QmNDmZ;_M-%^e<;LR58QHarx-05aG_?rd8kK1GDT~C z)Y%vWHI{RfZig8u{4IUv0-jW2AQl^7ptV)mF415B1b4ZwUgP5LZ5bu#!iBd|uhRxg zF!PzM%1|8==;uhPsPhrfqXkdCLLTfztQ>0(ts6zU>R^O!qh=~NQXX&UduGHR`W%BU z8t#MPS^5nOP1qY>ASBFKkD<8|!nit&T;Ug( zGT3Ru2rzF@0TF6(H6+YVcq>|+4ex&yngNcAcKVkjr6fAk9_bnYY_I?Q@ESCfzln(6 zdO!Rk0(kPK#HLbjpe>emA81B!Ny__1=zq5epW(yL@oe=zC1zv^nZ8^DxI(f5va3&YQ+K(=zhOQc|6!XjR z#Nq1DnRjyDy$MCc>_^L>`2sHXxM{{07^VN-LKoEDWA#^R#}C%~k=VXt_$xj2&l>MX zx(Ibw-YzxyEB*78|L?C<^N%t-u@n6a`#u-}QockvP_*LDPn3w$1ce0*99UE`0Rk>r zdoOqy-Ed<5O1Cg;js8j(AysvMrB?WA`YW9+C0XuAy8ZTJ`zy(4grW2oPx1Y@86n+U zT&c_!nV1{l4d5yL+~L0pjpT0|Y9sYxun;bNjXLjn$-e1%8^YjnN6A?-LI31g748IU z?3qttF`>MivO&+YE{RwCh}wxm6HrVMz+eEP5VW^Eh{Y`4)5O~ez#>5gio=~gym!vK zY9~$?>W7yx_rPWt74c5rXBh>raw{EZqfCMn2v z<+%gPU6LDreE8KMPGK(j`BRc<<-;*a^k_b7fhn)Q`yx($XL9nZUs<;uzWkIdf`qj@JH!2Xjq#cu%E_bEQx@gg17yi z!qd>(QZc$x*tq$|J z!_4+5pA*K}zPb?4=yn~a1VAV$BX#jx=DGYyd)^xbdsj9;!~BJkTJ80=U+0)fUl1yh z&3tubQwt|I05*Ox`@O%g5acuR13&3y9AF}j=;AyI@3Z!LqBuvx?xF?*w}1)gr|=wx zaYfZYsGYS4tAV68=b%pauV83;s+Min~`=LY3!Fk8{e@G>}=+8rXnBONL@w>-4Bo z+9z9JQRnnOqpeu9{^OQo$|Gv+x&BY&_Q{Xn#7KQT&+7-i<(e}aMkf|4_g$w{?1Edc zGP|9DV54sGKxMc(s~<|rIsE_FI}`XQtE>NqLP}h4f;u&=+o(~4YpAA%B03R}i3W`; zagQ5fMU4uIS}~eLnTAnX@fEFA+FF;ER$9@bMGcC8Tg9anZI!64eTKN;3Tk!!-`}~< zGfOf75`njGKYu=&XYPIObC+|^J@?$RT|NVWiKoErNgO0|#N)81V{|w@T!+(998UYg zdyFcw@NRS>*7CPd%NP7Gb{o1hK()7)8TWC|9SnqF*BZCoM5<|3YQlw0t8iu-sgGL= zzv*`{)O>=S0V+N@!aDh9d!##gN;JEZq2~Q5ymlQ;M%55#h`4$q^?+YAf2;yeG3uxY z-E2@uwXsvBqiQ2UovCa%{b}~}O@ac`pfW$7xFl8%N37Q=CjqKe$AR%HeTUW5X7oUg zTHC27G`E*MiF_uaxwnX>yK6?URX2*%4OZ6CGCPH~ifk%M+9(|u4%dNU3^OsX7{AQjUN$Ce1hd)fR0r&k2|V*{x@1$hXp~VdZuB+6MRhttmm42F%0EJn;s`y; zj?n4Z7Ek%sFEpzT&zSxRJ83=tl{U4W4?aCu&wV8X*LuE>@+xwlUt}j0(ZXsdLc0e?htJGK z=b@wxozK@CCkCAJ<20L8wt93vwMoaq)u1y76J!0*Kyn8o*T&BHE1me4$2tj6rx`wt zY&XO2OPG=d{1j5{AR3&}Ky*-djKWG9_9K z6}yUbdfMM3(V2?*R7q6m&w342Qp_+lu`Z}j@^uhb{J+?H`m_<8@!&Rjzl}3e`g z1ylvZ^g(dbK(b)sCi*!^KPMcbpN;nOK-ZD;Tt_axKHZTa6ijyT$0*5Ow}S(}=fLh0 zk?oXzz|u#f`b<3)Yx=z3MaRYBuf{fE9;iCh(#*%M_F`B2)tTDArP>qxF%r1sHfmeN z)!nJ^6Z*NWDi%%qqf)y{P9QSuEk4G;wNa*?ZOHD3xwpS|Z*RCRJ%;V|b~k(wL(?B? zelgU1H)&UPvMc+yOxZB+Rzvz99^c(sLHeEwzjv$f`Bodb&oY`o;jiS|`QllAB>#@N zX)NLNyQ%Oml=bwgTt;r9G9{6#j-OIAI(|OFj!`A-WD()0lrA_)Q#PNEC$DB)Y;7G4`a^io$2%^!oz6h`8@})0 zP-Y5Eq;5Y|x|p;K<~6VmZpgEj(4@&h;ozmA%Q$j@wm0)IjmlxWcY~kMD)6o$p>hB2 z*kIgu=oj4N)Dt9%`71Rz6-bVKpq34X+u+KHIbI z7Yo%_6Q5<`NIgsFvILJ2d(N{vChgi1$?$9?q{2&7Rs8wnt-`ma1$aZ;VIo}^&qARN zM7B~RPgI;e!G+x9Xg%GEq{1C^AQis^Y$e(cXBKgCN^y^?bELU{ zTs~kV?}dsHND%%Mv3IjSxVJIL_D;OhNwbRORkFPX$=R!}(>@X^J`oGaLCsE34X+xd zppNLZ_Po^(_%g>WC{9C$MgtkcXpTk2qd6p%$c33`08pdPW-vB&1%BNeN0Qt-@9lGK zR!6Mf%n5;(R{$Gv$py4n-Skyes41jP3`wZo1mFY%@mQ#_6D!l~9dNExl75&`M8Tr} zViK>TYvLons&h@^(M9Ok+edId-YFH{j!d#TN{mDXfpZ<+c&CDubaXjQ)wB*9 zu19>O-Px+YB7WB&Yx-Z_*!P^)(`WJ$|4ja|y|Fxvh!rSGijAypT2u_>n+qlv#6lxHI|;73L8x=a zhVUPFmW>l@3+-ZS?LRPNIZV2cBbqUHk_gB2$ax2S;g<%puhU z|7U{dW$|A7PNe@*{^y@qNntTvwCML%&X!uKC|iDZ`lz_TQ6 z{R#iqS3JME=eo09e^_Y6?9^*nOwzKb17hk6N^@YG z(EI$YYD^VQ+!~gnfeMY2`6FfitNaHZc+%}M4cbsG5b9dT^E(|_bnzd!c&fO*T>pWe zke9Uxy7~`XpaR5y;So$graW@}&-8)~?4BBJU>}j{%)d!KwTAmQM>OOzb4XMRyh|Pm zm^t{HH8XR;1&cb>>A2?n2Y%72erNm#Ha7Ij_z(P#N~6Hx@QeR|IIMaUgowaH%`a#h z8MenCm( zP%yc=i$lQ;*6p?CDRp{V!Y4YtMGpkJP83d+y1n zq2{-hFxP@#k?uOgo5)RtkD#vf5OsvZUE&JfWDOBINugkLsBDe1Y^3Z%h%l(*e!Z67 z7R=!L9t|_ew;JYghuGaIl6P)V-GpNOy0eTPqf>Y!PWLTq1X;pb0Dcdd$s1^|T34Hn zx2sU4=?H85)Hz{OJDy*tZ{x{W!d<#Sp0Edf?sB^db%pmvF;$8Wv~&9B-oX9-~x-&^jlCo4!*j-JjqH8vY%uN!b+h{os8Fca;S7rF42v6L7+nv4 z;(B!WYp|yi#|MYMY2;gp^;3Bn@B z-YwS|qQpD&Cz8X>G8BvPvJDVM8^1(4I9YrQg#Pq-2s3fOuQb3(QU&T4nW6wlx?N5paic5?>m^ShoY&oUaaJ1jsm?TtRYx zcA%?tv7V$?`00qB#>w8^m;32r>!@ETv$I6`Woo_5ZymXvT30XH>?7oP{>L+U0+KhI zx`O1dj9MT$ctik_pHtWe$?y3fI%QUAnP9?}!*p&z+k;55SoYu{k%&UUm^@Cc(Hm=3 zQbeU$MA}NF$cx!?dTAX`TYPGW>c&|b_$bk!LWm^W{mNF@lXz2>e`~4Wph_p%lQ1^+ zz?QEIZ^RuRJ%9$>u=qk^IFYYGhIlh0xBP6N~D0yCRa&4 zlNfMXU0MQ}3jb4;a2>eeY&jE@JYMEIE*(*NzrcWpBHqcv*fJ_ic&OyzO74;hU#p%< zgH!SBRk=uEHF>*IPMb^UAZ;$kQCgxE`Za z5131ny-i#@`Qk)Daw!!`#Q5?cCswgEl%ib?1z{Obk6=@`4Fi#&aWZ5M+3cAlvjmMN zlN2@Uk)Tnd%bN9?`2JXBogt3q4krPD=%9FU;t)2UK9A@~FUFJ|ERrp4d_euB`HZx2 z2{{t0AnkJ`Q8J2|D#nt!o2QnR5LT-~7*mtD!wox8@$C7INtsEuzvsZZ{j|~coX%#C z&3Sb!X=BNH#@NlilT;+9F0#g{R|;WVU({!ZtxhtkKCe=r*<0K7r0?ZwfV3+IIq=gf z{P$5mZQoHoMp}zi-)YNH`RdlmC9=2K1pb#%q8jV?#^AQ<#Kk~gVnucpYX?%=TxUF!X}}Bz67G;7-Fyz zrEL$oQonqJ<$gV2g!MPe>%7T=mJZ!+Gh&C)fa%OYTHF#cikCzIP3qD!Lr}FJA>riT z>Ar$H>bN6el9iKaqkH(_!5vDspVi}*BBOzEZeGEf>ZJ=T68 zgeF3=-b09Is(cw#-JVWhEu*j*dJk2fVo#q#h`)~>^ztjfLn%JleE*{DV;n_<0UDKh z+Q3toGh69k38|2$TN|}@Fle)t;nV?TfjR&R=@VxHS{ZR}?N=(J&18-FG7P9ZDvMJ7 ziGEm2rxn$y!{Be0c~!&MqrLVE&_cgDa?on zkW!x%RKGxd^2v3T%Rni*^b<7Vo0 z9IltArhkg1U5s*}#SEocLT&b}@P6QkTq8*%a@=!%x!XX6>g&Nj_YapjpiS~EnOH_b zPs9x9woKdRZ9g|X_zB#I$Yu}>UQ@N!gP)Td;IHf8hh`7HFIA_)^XQ!xa4!ZA9eVpx zjV;INRJ|`wzOH`5;*QG}+tzS?5F>yA&Cm29v$BeEo&9q!cwNfyiXU0sl$L;zug2Lk zr>$=Nb8pkPYxK`uWu0Iu#0&iGei4Z^Z{;F?)ZN#u4{FHr&wY84z>(YKz(4m-_AaOU zUHo$ov~Dl+-mesYG=x-|XyoumOX+O{Vu@S*TL6}smU}y}O$WW141ja9)+Q@l+9BcK-S+hFP~^^t#iaAM zca~0mlD)K4N5Vmb~l=DvL8gs#o zpC}K=!dBr06B&c#f9rTT3yc0GU>Q>3OKg0Q1fz%euhB%d_08VuO$*}w&uCWUk^LxU zyBwsLnH_N0NcIo`r(1VH+$_7e2s449mOsG%Cm-O?==c@pG--lU&J(pe3-vg!cbpLXhy^}=6}<1*G04vE z;`bS47?qDqeMuSSctgrWAz%!>z3tcjrQWgdhwx$E0To)XQz#lN*qrq$t|mJkd5MfZ zFseSq&0i)S`LW8#_U{|5jQsJ)4|&BIB9+S`>ONpHIzG7wH!>^%hsIh@Kzv>?YJzws z8LF(wzwgV7{=a|Un*IC!c&|?UcbFhb1WVjyXwVw{``RvK8hYp7*P>5t2KBc~cvKOK za{R<7)z!bRn%p!l3>#`SW%>90=)2iGX%4%qGx6<*5jQ5|1W z(>j_Bj}T0u;*o6KNNDX!>FP(I1^RcT@`^(P`?3At0)cgiq`u{`_Bppv!g8<>L=^=8%=5%lK3*0|4kR8gi-e&q*6t z+O^!F#<74J!yyxExNkRxq4yjJk78${$zVI+B6T#~*S?s0Gw3h|O>BU%m3o zl2D@)r;S%nG1D_ZX}hkE&G)ucuQ@>I55FccmTT>F>lgusQ~iY`NL*p9;Y><}iy4mC zwo0|iwzK5?+<`47Z3A;Y^oz6;Kv74z^AtODf4SLRqU`dTL_O8)c|Wk|*mCUHy+VHc z@am=ovFg;HCmbQ8)b?un>MiU~t)EVCUSJ&R^k$XL<6Bm@?pxaR?S#_Bl%IUR$}KU* znU6Z|l*(xP*!+L?jV1PdmkA|+^m`8#=}9>j$8L1RkAa_O4p2|Si5I?hw3~xP!z;xX zv(mH%vbOkaqrSHDfR9>uq=Y}j9VgwfeRj@m${D~GcP{m&!iR%PE)K8|(p#~!6N44) zZ3jo~HO|SLt;F_)O9XH$`h;KfwY{vUWDb??$j0EJzO7zN#W{%1rBL4er;-Jhk*C$t zX{xW-NMojz9DBX#xAsh)ma*4c{?u0p47;({`^&iiMD}`7Q)7J(_yp%l;{EPT(%1{J znbF`}Sst7#BYDr28dTNyLhmEq_hTd_Olsj{Li)58>6euL6pw+ zde`H4*YyS))v7$;lJPv-WTWcc_{m=2`$bkj!9nJz5X`)Vc5*z7kDCuImpBAg9wCATKZB%-NpLUz}y!3Zg zp6wUWe6thil89(S=5Pnbi8Pf#no95NZVuM1z22sEo#r4Fo_4c9Ho$d8bq0;{o_IekO&E=%eBW;{jj=f&==+)ZmU7(M+ zAF-lG_IgA06-+}Od%ZSZnRKJS{rE46_xsIXxLpQLxTp4d_nj$0MJK1Xg=dJ7%eB{g zlf0}&(A8dVz6!KfJj5fIfJ}J|SE^}A8`x*1+Q5dB>au@9Y;X`mzUS{>qB>I5wEIuv z84?xy9qRV8BB`#FSM{KRnR<`@#P+kIJ`?xVrV>SpQ>l%G%{TDymz=GPKch?dGqQ+a zas@P6kc{(J5vCD{y`kgk4NP#wy^%#JvlhVVjQgJTMzsqC zDmC5Z`lZWa37Eic0l|67&P#IGIs`aI^j#zJMI=53z51uM`_&Q6ZI&*D^ z1{Eih_5tH0xk}`~Mv~^YsX~(GV|U<~)+8sr+o;44=<#|6Jsg2&Z@T*Uk-3B3?CW)v z4tc-a8pq%J%$^YR9!Z5kY!8)3NX31fWuWJM*zCJT~ zGMiNIRC>uzMM}}zLBq~~bod@&DDGC(#P`J~nM2r{Cpn;TDzeB7dGwiw|1>@L^{UT2 zXLQ!!`vQSf_#JxJ%fYipf6K;}qoi9qede<#0u(6UDnrdq_q8rJeda?d0t40?edeF_ z?Hcu&W$Ha7-}ITA-0WDN5>fQk$W&~*3G|td&`y>Ayn7Jp(*Uw-4l>R4iADz<|+F)HWo3r%D7W4&zc zM`NSVZk+-}Kfi?d3z5w@! zwGVNq7L8ILhy$DnVx&kCu#D_kndn85)#BjJN-m>v?OtU7Q@huU@3`G-@~)cLSkr={ zjC?J%^XJDg(wsb^GjuKXkw#ENKOQOOPbz!^pPB44)9!55#HZd?VYiK>zAgNy=F2?z z5xeT08Ag>d@iBw@e7AR4kkOxgOBvbvvjNJ;uRq)PUu)E#^{1n2r$2kR?*Hr0)~r9f zWO}dkXN_Z+hTiGVM(Wcw>d*R9s;mBNBXTqPvoDTSO1>W{o2l5Fs;*JKV0J<8;Cvr{!8Ku)P@8w+t#TMPN{-~TqFrQ?w z2#QnThe&3Q!TI4Ko-1b&Xk?j95%(!fq+}7G!N`0Wdk}*-oX8wYAmXi>CTsnEj?6u_{@6J8G-KH<=oNc&XGGtfRoG=Titr(_d@4-B_C65tDjiRg<*_=_OhqiI%Y zBW-AC<0LdtgGwNV^Bq@6aDH%(D>{2yani;`k+v^5U)1WQm}+;};E;E>C7j^iq%DH9 zM<$Sd`8r2;Ol|_C&qzaBBB?b%S`ZfWWNq#seMf1VKBHR_@dS{5ESe9}697Y3x+8QD zq@zBhYqKC--#w%`iA=2(cA_oT?&Y5vk`|A+Ns&67AAC({gl9gIhpDtoB7~3)5^zmQ zyOjl#V5k{PLZuoHCPBT+o`jgv9A?JZ)7hy9#_&dwy!UoAVx$6v69M$FE9iiUI~E+S z9}*#V94&#_Dyw6T)%DOc121BS$?C5!D)UaA>IhS1u z&^C{g6KJ?Iz|!%>DE^k-L$q!PiDD$Q%^M~?hL{AQMav~M3j$k8#$T{RH7Jht)F zKNjFQ`(@EKy{~!@d0>Gz{EC3Kl?&j}V36I=w!mk4Gmf+JIJB0`1^5?qxvLBCbaGSS z!wv)c0=cWlGL-~$hIP#3u6G)|kwN-G)m^Dw)Cei#oYI+D<)Ddvk=rRUf)%u>irAvl zd=ZZ{Q)D0xlp`Q#R%CXj7SUb5mZ>TNI@ScH*(0EIn+85_#D0dJgqo#ptQopzC8G#6 zTSf6bN=L+>t+s*RL$<{-z`c7BC5tBZkF^f_DY=}NMr+_Mw*kNB7IKBUwqWHvbs`09 z3uKD+@mH>1;>oVl$-{chw5)DZ%-#faYB?1ml{^m=8I1=9j>)Zxs_dw;M97TiWjCI2 zR32)6io^&knXm@hqtuP)WwokX2i{-#1aIAdo+2|9Zmv1Kz-79Kij3*^DxDcq4aPC9 zTrjSa4s;aB#wCG2{#;aJzEgCwCj*oW@Cb}pIUjnL_Gg^e@V&&&3{q1Ut4YlAh2Za- zyY+`7;%|%qfHk#MW4!&a3gC!{$l0Xecy&)VlXUNZFIJ`uBixm5pxxSD`G!nC=gK!N z&8!U=@ce|K*02Y-DaUS%Ss#0-K<0$sf7mEn`2CFDto?*{#Dh!a8UaL>&_0jUdx=1u zsCeZ2nvIOq`*>?Hu&{T#nd3H`HkscMNvxKtfm{a)9nM?%T!-^7HV#C~e*y$a?1F3@ z&=a?NifhQGDY;U40m$#)lyv_#rbQD3{P7T0mIH9 z)HFfB5xJgrYX1Oeg+Zrw>}jV?^*iaFK53S2Qkdy*9(MQiHd)f zyFCr7KF6y0{QCLa@yT*7@8hKQ@OVK$J@|EE>>Z7}SQg?qsePM)?o;mHrJm8ozalA1?TVagWk?;=c5LcgCJ32e|Wkydp{>M}&Y87OedU2?Gx;V%Q}C z({K#CtvEo?;Ar__q#Vm6E|DRydGB(tK|ZbetHF7`rzjtJtFHLeLJY)M4b=YG2v<866jpng|IBX9 zxrgcs+*s>8i-?i*_!@VK{rglWMk1M?V~2s!LnoF@MBC+TgQ^o(6pv0!jHbe$7-!Jz zM?Q10SF4+@h`>jPsh}VoUg8&OBuB_*w0D6egvhOh`)Qh)-btX?ZQHp!r`q%$d*22F zNGiNFqlQlyj0w{O``D6n?pcIj^mZt;5M6^CLcDEqbX1B#1GZfNJ9S@Emr4SGSaeC_-(NoNO|Y(2L!*7OdiY^Q7{c#gusd?s~#l(IGSypm_ig#)QNy6Tv!Bdd-g zsS{W&PxXk$Vp_z{2I(z)OD&;ihq@pf7aXi*QestM&%E=O2T?-kQk8m1Pv+j9%)LFq zw3qDsQz`%&%aYWL2$!|E656#eV72el?A0Z5=3p36@HX3V;dzU7G1b zxA>I!85GRN>RfOhY3#|)5-M3wyN~L`D zGrscS+wIu&9^vJ81O~RVr}}6++mck5^ILxT>)B{b1c4lT=R3~tt^D;>oSkA2mwIgv zo#T`KGnylMI+)=FI~YSa&_=uds_-x9#nyce^H2H{BZkk7wXr`fr>T&macK>X&8)Z!yVFGL8J z@RS%%``Y$b5$iS5ZiNf(k2LU_{@SE|D%GEy;qqFCnul??=vqn_Dc=D-?+1G_*vl zY9Lsa&%6kEnFQ!i^Qoon%JF5&fh<{Vwvn%n8;E_-?&q&;1FcRxsql>qQWZ`T>#6>R z@Xwv0=fF&anY*nnc`l@-=14Lh8!Gr@VpSx6Wxk-;(}6>T_IuK9C4Go*vAnBLJI%jU zf`yHF*OiR(ZZf%D2548U)TZj>CAW}ETsvwHaxX?2&`hqD970fx;7;bPEkF=vzrBPo zil^m7BxT&o;wceTa5)pSfm}TJ?Q@B(_DxVE>Z0(4Eoo&ti#re(09zHe2u` zt(#(7;CZEA7}+ReDxIYCC<6yF&|9pwjHFb1trn4rX0~mOPa}{~p|{^9J(QHr1$XtY zv3kftohCz5%Q$bES;O}HuszruvkPe^xv75^Z5_5*myvdGJDmdid^{v~HbsY`pC1Pf zJs!($?T0d+n8?v;nYRP4ttIuqTDytr^`<{>d@1ZvsQKIJsmNBDTPkS}K5to}Q`Oh* zUpTQs(^V(D#{UoZH3jhE7QGtXw>Luf?Pa`X2r7To0#$kfEXdT-Mt;dt?m*RWglafd zHC!N34pC5~X&MANsOVBFnhq?l#Q{=-{C=1vi!JXvtXp__$JkMZ({I4>4Y!CDuyco& zE2dU)s7y_isj=M1_dzFpP}n2qeBKQ|vtu59=B2T{Lcb-#QY%1j{ydL3asL@dpLq_P(SzjM~Z6i_EeUZwef#NV}jnz?bJ7GGZV=;;A}(^LI&#n1CDiel3* z7gXddic?7jivs=f@g#e&zc^+?BkQy%)~H{8_wsKLM zXr8lMHcu3YiZ_!$G)KRD5dH0{U*4Bo?mOFCT(*oT@ayqdrV{Ch{Wl1w!Ur3$*Q{SY z7@Fv7hHs|>`Si;>Wr}pCUl!f1B=$Aj= zLoN1Nzq~sg9*ZjXr|)oxGuNfBsb4Nj_b;tq9zz$`T3IUn^8fIGI`z$Tr*ta*8v5n3 z?E;{s^~;a#-osAy@jG=vM*yj`e);v?*eH6hU%p-ebZkn~`sLD|^v?9Z{{%oe`sK5! zB3r+F4<*w2|7cw0N?>X)w|9cx)<`sMRJ#?%KX_BimZH~Qsk z#Kx?D{qnAocdk~y{IgO@fLUwQFE3ER^`l?@cBT*A>R`LqFaJhgbKWxj@^$s@yk&C0 zx`2ePLBCu@4PErhNAJXf&DJkpL`Dzv%X?5MD|Z-Q`S9&_Yy7f zA&-5EQFf8X-cP0$!I|w^1ox84h%)R~&U%PRB9LF-eDo%1u|-DTy!T;&%wnDBo7+!J z3qaSOzWLtG96Fj(G;Qv1#rFBov6lkSwbM7Bww`(ZYunbZ6pwKT4?E;wZH%qafN8fCA8G*|A_kZuCa&EVJP&w~vKh~sje#0Mx zshk(o^-yv;7h0fy8I|+Sfy#NC9F_A=XePN)TIKxHtve4kP&r=}yzwu)5M6rqZ>v=~ z|BlzWD(6xSiVvsrrptal#f~e)yDcf0Fb@05@8tUUFD7kF>&5+{bBO`v3klQhVo|Rq z-tFg2;!TG~#)jT+BTnG(GC#H`K}eHLNYM!BwD8~(g5FNHptrthG0bSA^=4}6B%U=e zw+;53YD_M{{|a|_UPv~gbPKWIB~-0*R%_vRlx<<%-=%f}gbh@N3+rBMVMS*PkgVUj zM&$mW{X(Y6q6yYZ8Qvh1jz+Q&7o)m8lt6=54lky+HSvpzlFt{aGr>*cg@2(cG2W{v zkK}X6$1b8Q(SMu)L@N9zfCiuP?N0nZX#?dc>LVu9^@@?34r#cWD7j5uesCuDqh~S1 zmm<1mUGSg{(_I-uka^|znK+a-oP~`jN--eSa3gwl8SXh?KK70q(bwcF{Y+Sy3V%@o zQD{04u+0L)W#hxjuv(qF5`- z_{-1(HKl#0$g3v)0TvperlV{looeQ@GIV0z6l==cY?pViL}mk3tZ&_hD@A>sX+ut+ z^%0>5FhSJR*2)T~PMmB#*Rl2sHSa1pKUC=K);_J(eX)M%57P7-jXO__J%omFL?~ux zaEtwzj{cMgQG(!C+Dg&MN2K>Dvp`hJD<3iChoyb>r;<-L<&%(%<|FaLwuvA7?V!(c z{4q3cb!f~z69V5OfI$BmMF(qZhO7v+l+iyDTZR^^Um#{Bofc$k;_p5P?0G^()eUTy z`=!DYs7H9i*B^vhE~TL0SuDxrgvx3_hURrP?22F0W)$FFpL8Yh$5P?JIaPem+OjrE zys-yl!FdI6u8wo}3=lOqP1A?*zg7cICU9V^)erYL=yTZ{>kJy>spT4L-Sg>hv9nw~ zhvCU6StF_*vZOk6(2{Cu=<`+R>Ob;o^pHP?t{tl>8uDT2TAQmr&&A>k@mt%9 zH>wJz=`VIZk)+oHEE@3SZBu{o$9b3ND5H<0!av~47j3wSIK9KV1#cjZJlFk&1@~wl?Z(l2+TmL+#Ey>sgt*(kWDS zt0OdJcldL^tYj~~@9erO*-2k>3aqB|!NopMnbuQ%m&D1PXm z_)&XI>Dz(H5@1@`x1XldOllH^H(ud@?C&jIP$YESAL%9WbGG!C#Dq6$j$^sejc+dC8oHzA0ep*cNo&#J+N5Tr0ob>P^r=6HoZ-P=Zz;z;CMR%TwVCc_Lo70u#>hUp}Fi zC*!~BUfOC(qcQfv;nE#>e1bUi-4LVzJokN1idgbSBLrgb)`} zVZNBKpy9 zRzwgV{7c?yMPP2~sIy60MN(ng&xg4(=3N^_ju)f`nnmq>o6C7NHpvvq1plb$sA5x3 zIn*tSn3&31+40w5b`kY&Y_gqSI|R1vQ;oqe{2J&hj}eTG^2yZn*g1n-0+0_|JjDktAb!y_D z*uHommHwZI4}R>%xvcqNq+>0NCMQ04WYv?fKm8T(4>D_tuR*Y2w&;M#5&9@mc;PF@ zb36^5*Cv+sIau1oaPb6Ht@>l%s(F+x&>5ApMS)#@Ua_^lg1(Mc1lzUsB-m zMLcF0Y<93KKG6>5F5Ii(pj=;NhidP)-(v@J*?lJNFV@>=vH9`)ehr+L<_f#~i}(Z# z=j@Z-Q<6nGxw1FZgD}K1=&u1xP&g`Ab1J+Sm=iP;YQ9vm6#SU(rdm1wG~n4KVAURaM*_&jxi*3|-|zxHzxHExT4NTx`s z@N?F~V0^)eMBWPNlZu^k{1Z&J&w{Ly3TR7$o`yw%0nkWBWMhBrn_$CdwgS&6Ehesw z*q})x2meD}Fk5!)Dz?kwfBAU|GhPv+I|?(7tSQ0wqvIb-*200S@Z^UzjuEB(V+fAg zs8+k`VxGwPj?_Ekd@5TMYPm;qkSH9XTnYOe=(UB{rNWQcfL+k6U>+vcqz`Gqk(enK zC!z~@>#eb=<|nO2b=JjIS!Z01YO`z$#|6%~yoo>PxWHg9`pS9%Q#dir=nutq)mL}p~PaFrbEKu0?;P%F;a5zS* z4yCMrd*es+#Gt$%dD39dH1u!*+A^+INqfrxC@XE+lU04z!fMTth2Tbat;8$_%Wz|U zKV1yTKV8DN@{LgAw)9bq6NJS4_K4LG8}eA_nq}54Wijj4$JWB}3{^=VqhrOwX#bYm zgk!q7UrIfPjkMFJZ`6zYl6JFw`}>f#&Ey_BDM{4~wdecx>r?03@1`1$e9Z*^nRmX> zK>ySgad%+chcDE>x#jF4YH$ z)$#~X4d=1o{>7%g^g7|=gP*ZOYGJ z(8(gbg@rdDw#LfEu&$uFP%;1M!pz!;ym;D`g?MR+J>9|+en%iB-iMAqYU7>nKzNmU zrZ$D;;I{L6suT}yc%OXm3v~i9#xhDK&o>d>up1t9<55N4H?K!lG13go!T7lHrfMM^w`;~Jbat?}-g?EL2 z)fgX}{qm-?nF02Q#rhQ_dvC5g~LM?_bvK9D*!73`5Gj>omcGCbi#Kz zwq4zqes+o&vlj8*KTMrw{pXk`DJ_4pM(%tyP8pUSJSRsT6obKQs@8h&!37pBaExe6 zr@>$Te%9bcVN&6L)4N^{9-eC#8(U5gbM=1B_gBC66+mHDR?&&h_gDY?EsOX5l!|~1 zy@~h!y1q3^rYMTQ1!5s0sOJ0)3#Oq`y>}$>Q*Y~`j+I@Lj4ar%-1?xMta$HR<>_(| z@BND}HJlt!b&2`!3q39UQ+Uz~ttVhS+@OFE1jq$wqV+<}D^qTI&efQs|>3+M#z#I1TSL!dTslfUz z(RJtL1_!l5MR6srl`C;n40yS%1nmWt?v_|>6Xer-ey+K;vY@QkFW}`Amm(X{mr}^nJKRwe= zSNdrqPL$WKJO!qc*P>ZV^aSDS$rdIm-@A*CdT}4_>@S#x-o^8ts881z&wD>gb&cme zgxpL#@7=AYta#p+{VDB?-uZl0ncm;z^HR&ufkDN5X{5oy9QpXsgL*9=-*q+e@f$xs zEjym~rzC@Y4ST=$NeYwJwDxmkff`iyzP1|w>nr!$0P^v}l8(5y1Ko_h-!=?w9m~hN z^}jCq>@p`oRooKUQ~&D`^wA+5CzM?)dLbl#brp-Fv;XxIWQxt3 zI9HVWQBrBjorm9(mvWB0e5P9wseif^VfT+I&zF}UxQi_cZo=xR|MkwLc^5^o8NoKL z%vls~kPH?DRsgS()S`gB7XkL!b7UBfJuk`2>}h137Da4L@x4#oH*J2n{`{}Y-*&4* zR3S;ony3J^(4M`UjOTlKJgcYtB&8HdO4V$uE9L0oxB@$d2+?u3j1v6X#v8nU=NP z1UTS$SIt^W|LZAKo;SYtO10YA|9Ux@sqh^uPV4M{{k%$N##Ga)_}(fPjO&WG97VEm zVK+%Nh5DwK{?`}$Qm|X;-Ta%L`d^QE0NGSi9{=l;vAHpfSP${N{{SR(26j{K{I9Qh zKLec?ew*!o{f^$O{e<_z|N8aUH5-U>d@t2)6F6wZMyYGKp_D+UzuS|t^AZg5k7zG3y zPOgr)!!hm%LGnmxHN-5&JzH91Y8E8YS@FGpSLOtk$YjT_&-mV#z3M3U6ky;>YY%1Y zlEXML&N`0oeeiOD&S$gXs3Q_BWewelYiIB3k6!YrsLrB6bn|r^-}{+YvPKWP0d|h2 zgS{L*h6tA=HN2ksUk~Q1y#CiEJLdRbf7`De3y5xgM89r)@38n6&Ows4N$RfyM3?y9 zD~x?`qB|8b+Pgr@$Y!&(aEzvz--?6!$YXN7m{;1S_lZn=@1cwaKEXRJM+f-jzxcAH zZC%Cpe(wPY2*VNU-y8qyZ`w$wn|btljPHFf(%jYiUvDe8fLYA_>f?KlP(i0-)Qkw1 zwYb+seD9mzPWPc({OjKTdUth9G*0KO&4{Wl5?U@2S{IN|=_omoIBAF}x`OkTZF%!) zzl;C%OaElSX8T`%L`Dz%uV+yyEB9f(^5NU<*z_J@=Jy2#wzK8G(ss5lDV^eS&TskU zu@}7LcC#FL?1C+9D=YRzPqE;5#@Vw*rU^$&G?Y1>b!4uV`}M%Qq9+VZ@V_n;6lAX) zHPDSE8Hk=3!YMY|^(T*ge}@eqkA37tN4?uY?~KH0>Obs zK~dbeem#Zx&3IwMesazENG@+5S-@TBBa473ccG6|4OBi-E{SIye7t@}suqo`)OjR1 zf~w39yRJ{H^&-~QQ6<%;K!Blcq<}Z^=bBe%S%<1lc?A;)LGJ6(SsXLTk&UdjK00tr zIe$h+)Rkh_mH4?u$-g6tk@e)=bV|&6BZW2bN_$7#*MW1dWB29XyGSoN#A(_29KUN$ ziE-7ib#O862r(L#sTMH>%p8_PRK{-@6o^yJkX50UEwY+pebmI?^!EL(tRymx%}|ka zWBqV=%(N9zLW^DvSE}J+n}E;xrfC%>o+Zqi&q7L-gFG@uY3h?n-VMCO$nYvMTBnyb z^Qej+)2}K%x=)&E27E?S0N>rb4;9~PCdYzciC|gApOerRxZAFjjlYYF&aOnA5}qn1 zF;0n9eqxf$8-)SY@r1xwHD#mETpdRK_8y0kY3vO!^SYunK~JqY z=s6@55a8||6Q%^rzccz$BC5m^I;2Fc677DXUWpZcqCp95n-ohly3CP9)p6zn5GGgk zXF2kgp@I=Y3w(ooF@w#2CGQH7>Xy)jJqrFhHt4a7&LbY~E4l0WLed7hix?{F`K+hX z>v>1MUmeu8?*?i$t$UOvzfB*d1&qWJ`}T>UFT>^z+hfDw7(@oJRcfMJo(we~Pt!H= zRk4j0$L4#H2^;f!@C&h(A9VB|pbKQl01>%XrF0`9+2&Y31;np_H_#e3dKaS@kG?xGBZfj#PT(Qtp+-;wQ?$j*XVr z)kB_(H7&7Erjazw+oGj_EFd3oZgiM#&3fDKvLc0fcO#Yd2{nggl%DXk6 zF*K;TG~z#_)GD66mZzx__}YG`hxVgHIbt{}v0^vdM19gCtN({phWog^Wza5uwGFTkk5D`f8VVA|<4J8f(C$VXg)=UU z%_X6Kjj#e0T^+_V&uc{)NoqFDJq#OY>)z#Lj{Y8R2a^nYW!(F8N#^MKUIXeDt)xMYl z*f~JGbY+IVR1LFv+Kn!H0^a(7w5jQ(_VQM<28+dSHIrxIiW-1ajQ|%%i~z+~k=Bft z`_CefMvEE3%BWPypwB~BzadOxkEm3}kR>sTZt!w-AM<`d9STl|u6~_DHACHMQDIdX zYX#Fo*H-BJrd3hl%oMUi*Y;5kw(!>)68FVaU!@ahe|QpS`mdT&984up-oocFKzw^y zWiOi@LSsevtrf9U(Zq6LMXePm0Bt%V8bO_Er7y*LHdPjcu6xd4`K`aGez#abU7Jse zgqoHzeh&VqDPuzxhprie$#!x9c@_+zYA$8yC4$Mp;LwNO-kZONHTrmYe6TXA6Z`KS zV?G-wW$4>zt$_H+N2#ZC75+xuF)+K1%*7(ZmL?(neiXR}q4U`N#ry_fxGBc9fBQwEGO?&oMi|hn2IhaJe2d`%FNS3fH}uyF=8HwjJUu`X*9%Sbo<%XD^YW{P=NlcLSUfs@MG0f% z(igWZ1%fiTph|6~YFujpK+q8%r#Ca4Hrw0_HG0YjcY%T$bxTSR>x$evG1uK8_cy5` z6&~^eR1*h)@A>NnX(uZ5jva(Hljv%Zrn4}H`q|VqnNr-t$fwc~G!zg&g5pru)3tre z1L4i*r71gLbnC@MoS9xC#Tf!<*-2t(tn~!DA2Ys8>8loq)z8w?WJg{&n@^Lk0P4Z; z^^eVs3g`@#Df{DHM0wbO?8JcabNIPAOHrVS2sDWS4dhwLIG&3HcqyT`rmM{Mo!Erh zJ0?S~_3{%OLNZP3+f;b@5(=D@$xVfqD(6u4@#C>P@qJ&XE<{i!#!i0c=I!s7~Qw+G%H2?5r zf11B|j(%>0Upi%IB|YOizsU=`{gN3+cJ9ykOC0vxotWMZ(>U_w$g3)CJ#%O07h*hW z={|j{IO5Sf^4or2^^vVfFXXqEowXYI?MRJA@>}Ev=%Vi=nI*ryousx-gv4fay{_*w z+I!OtAiw?UVJ9$a7j~q*>Yw>@K7rXx%Jf=(+ikpwxz9@6v3}&Yo#IV=xiu`^JR``3 z6E_WL1L3x6r7^kN=)@d*osqMAM)$O77fW>e_l}@S32r~f zsCLYg0&0)qO>D_0A_7qzv+8LCmdLwztM1}WBV?06H;Er!Vcu`n67 z`aWUZR3VTULHw|-5t-PHs92SQ<62F1<|?FLP^3soG}eRfJhK1gPUO__{^89QW&_jpNRVH!=JEG}E0g z-ozXFC{g&0n|c&);y3yV1_h0K=Xew4fY0O|mr&-vD&EA!ecdk8;G;6!1=EBr;hN)3 z>;x>j#GCluLNS%O@g|NWFKZEWjW;n^1zIb1;}J|irabW`9@Gmqu(Pkx26i7QHn1H2 z%>$WY@lUGbDS!Wp3je@MooDon_|IbhS->;6E*^{oT`K-0(-9V4nPMyHebs|fJ$YMv zY)I%rc~BZ6?z=QD-g3Fjyx!?@-P!a$2Dp zGUj}aJA(|Z_#v%@njf>VS-tzHUU|YIpeo}P9@VykR!TNmFG=BSax^k5+gSE~BC3Qt zh6Yy72#k2C^Qg&~5*3lAg?6G>_Cs`+S^8vwCeyi6IEdw1mH;j$H{aO19tnPh&tnyAyWUUxxlHw zd-FYq^A5lh57LmCQKFt|GVAEa80kz7kEln*bUv6+^{UwWXtG*W|C0PlYN{p5MYJ5m z1Q;;)f!t;h02g@Yp+P&-~UzY{p$*sSLD6MFOb{&i#=Cyu-2N)I#}1l<*mbNh^dR5 zvc}PG9s1PwNr+;H?)l_nrxi@t%mO5B#!r1QPJ@!bVI*SkmQO>?o9pYL6}Ry|)Lf{9 zrq`l$roy#`bSzCD#VvjX*bRywEfjZ3u{EQ(P`i=dX;Jtn{=po_9w_^v&G^GT=k($0 zq4>BMfkM8S3YX7UO$a@_u@h*OUlH#_|5u53r2nhfoAg8Xw#Yk=U&*Nm4XW%oU6Yt) zB1B*($xVaCTNI1GGCICOkzln@YO9V+5dkJO#}+d`qrv}GM|;l|QE}6Pr~_vFy;yv? zcg|U6LJ!^BE0!QklSFlHC8x!7S}Iv|&lVVSU2*FB^BhUHGBUcyenbu?m}OIZu<*@vIeY z)64H6u|=+uyn{ui=Y8(k@qH21xkRS9^l0-P7-6*Z!4w8>c@n zPk+7(zZkN&ojw*8X-F0NvrBqhFEj+>TFkGGzW$41FF7d~+%kTtnwNPd?{U>Ay-4Ys z{c3|6OT0$E#$xYI3Z!c+@^13$xn9|4q#J4^X|v>A>=!ss1%~?tio8?&>@mvTBb^=d zv!lumr?Ut9*@Ntv@&;ZZzUqXBb8NbD_^TV8v?=S)zjn#5 z9o3r+q%$&s+y0bKTDF2RBA{Y4d*WYvHPgxtY;?OOG-8E``EPhgTkjcir2XIZueF`c zo4)dW)84ID7u);p$pW@huAr?N3?$g3`t$$c+O5V!v^%*YMQ>bes~>dKtyU*Y&|866 zl3y`*d9OI$M5V<7tp^ud7aT-NIE_Z)#xGyZy50C&;;I{XlM4THu6m&mRto$=d>L|M ziO#;Y2db|yVrC(><0qn4XcM&#@ild#xkzB^UCa;6gN7IRe0<|jZBsihBS8l0*z7JuE08r~s~U}ow>Urn5TWJJ!_{1KpU1jcK)Vnj5aE7i-m zdV>bl^?G`#b~W|#K|KeZNK6+(%hW5h4Dn?U8>oU}`coahUQMV9kt1jIqv-giGO1{FlkT2~>^);>jd8=i@(X$4@8|Tk)(rr&uHoEObdp5f(94IdHWxbbdPw#KHXLITGJk>po z#6dqW#d3yh8ng7~nk3cXpy$JJ465%@Fzkop3y1pjmvcagPgU^)<4db7YZ_V6=65Gt z4&&VaS5KxManUQ^V9?bBLkck8hAe&OQiBF{jp0L``GoQTyhANXRlfExA00oxsAF6z z{M3E9rf!dsHrb#p*TjGm?}CUs`^z0@VPUlR8#ZN&Mil`@OfN?j^PtD0WO_ONS2A=P z6>)}cqspoljWQEVjV3~QZ};=GIew~0kBWy$V>&k^7?I8mUtR>uZHI<4D2#N9doI+U zs}_jXWSx5r8_YBO4?snV1o6CRPWEx>P3u!=AF_{;b5%Ch)?7<*w(#7?*T_ z2uflPt(vedT-3pN5%Ufo6(ZxaQQ>L|NgTPHT;!DA3m0ey+U5_rJ5bL4qg~U*cc^I{ zTN_JQAXO1fwh)&7H$ugSu!)%D4Rjz_Yy9n0_yuY-{Qj}#2Pp|B`bDYm)Mtl?K>xUONEc5MHY7%nUFVG5{lf^>nRGy$6D;=q_v+!?K$0cGx4e- z4chG*?TIc=jDLgH#v}_(mL_RzG7(iQN-bz0kZ`ptfrJNEK{C)fHpKROVcb$LfjRt5 ze#QsvEEgaXnScmr4>}N^S~`e_HXPfWta0R=mDV|bizXfO(=(|;a?m2^Oo!%wg9(|41e((DT`-HtD$Ya?5Gbs10Z#SU%qE>pl*tU3S&#~ehe zej=iT=O=)So#6^uAum=)!FKuD( z{We$o(@xq}z{UdvkO8sda_EsG-K)2-FWjn=h5apzm8H1w;4BOK#Nq7M^NbPkK5qG^ z*`sR;h5Uc!DNOS;WrDb#aA`sT;ddKPBJ9NUThl+f^(+I_q?*=-;#g}G>-RehXKRME zhgwdcM9>tAoKvm0PhZC-1`WQYA~dLm+^Q$h?kB)=*A=~q(ylXr9|=60WB@;wA9Ja| zy4I*?wheq`@(tc=6wmWYtFhgleyl*ay8^xyWAVP8jIv!%%GdIQYPU36`DR5gfgV^5>*-{u~ogwrW>480nf&0&Z?30~ce|iVUqK;=0=MH)-ZC7v!xfb#hz(^sqpQzlM0{xn_LFt zRMLiiAIe*TJ+xgP`L^_`U=6nPr(V{LE&anAL6N4~B(zR1eTkZ~JrQi;dF?PRV+s%G z(x&jvmfi=iv!(X|?`-KsZ2{_Nro@q4C77(K!AvF^)hb}m*wXJxuhO>kQ6U%{xkxL} zQ)!`6lxIQmr~Co;N+f2E%9{TCRCteH=dRsS(gwVLP%Ufs+doaO-5vRSb=LIHUz#6o zBJV}X{fjgi66%{d{hZQ9s!Lnc({Hn=*HSc#`rpyKF-c}ouhUzx%<7F(GP8PdO4(-h zvY3m8nm>@$K8D9yO^Vdj#*;Be1Pzg3=?3a~iYc7LSj7~2XF~y*Ipqs}$l#2Hd2F$*wqyC7*S{Rql^suQEoXce+#v2h6d011IV1dy3aD%!n3E$ zvg3%(%~Mp1Z%)sBaXayWIOQ#C`oN{VXC}paY7}5k#5apCuNkyT=n^wy>aF=ga4y4{ zVZv62B=*Nh&rM`1{L$U|l9JVZSopO3sUxs1N3?yDzxl8x{+4XF zZFSROTS_XWe>k8m2(>KdTaBTO9OLYNc^B<5MP-1>fDxZ%t_c?VoxGp{My9!#X5V3x z|03U|+sbZZ;$c~zps%JJcZIl_(+Ae6G)?!Fs99vac4TvE!buC^5&I<_>lJJUnX>Kl zLKtRS%{X@u`H;@qh~Bu9eP5q5zuR!OX9$H~hLF_qK||8GNt#>XS7FSb`V=aziU?v=`@DpP15i@lI)VKz3&Hj9bsB)h; z4Z&u~3OOgUP}AoOR2XjqkATQvEM;HyUVYu}JhEKVZXv{OZ;;g`^5C14b9^e=lh zm%hw1?QkH9)0v?Xex%43)K!V&a=JJi2uqM|Yj3NkR4V+&FLJliS4i7ddabZAF`()& zx0QnY__#%jbT;?xUTP^Z+rLg{@Vgx$b)j8dP}$l2tSPN4l?&E7T+y;k0vCi5zYqkN zm0+r5=WN<_H985V*!VgIXseOK>*)BIuoUOQ`XauQpI&u*B8LvQgarZfH_+QU-tNz{ z9v93JV*W7shvVo5{XZ5E7>$qq1~1>~AZrc$j`_~J2Dmx{$S(T1JPtmcaG>cHgmuWg zKJC~|WO)W)Qs;fA1EzyjXaJkwY}T!KDtrzd2{sUI{+E;1=HGFulL$?oXh?V>O~u%+ zXHzX!4O*6S`IQR)MlV>LS!`}OS^3#q=cACz=02Y767a-K5d7~{Y>oD(FCB5o4?eGY zG)gYmvdJYlD3qA5LK`E9v%M|Z=NJ+_fF!w5TGFAqch1L@olz<A;Jcl^RujQHh zoV;cM`$eXbiJK>7T8LAACeQYe(SnDzIK2wMA8LM@oXixIsgP!)V_%9Tf9@BDl8OoN z2G;Rr+f=xkVmU2zoJO+aq})6lDCoo-$8&&N$EuyBRB1TYQKe4~w=zCvvoxS~_BIvX zmNsHE+z5Vpu`!O33P`_0Pxgh|T_NF;cM*j;;m?ZOR)aq%^}M}Lk%;P2s)4`cZ|C!P zCBt^{lf@I((hQxd`294e-OY(#)9=~d`ae9i@JnW}i)xnxGOFE?3?bY9fn=cCC4SBA zBsJy|$%UeUN=agjh;kx%R2-;wW1$hAsdneysxA2pU!^GJ;v{vp zQ571yz-~9wPZ+c0xIWP;-l#94z>Rv6)&dghmH?1gqLcr_!{6zJ{{!8N0W9bLz!FlY z5OW!)GZ5kj|JO+y>!0iY(7by82YrP9!`PnrKj7P9HR~F zK2n|eH_sO1*Ykfk{aUxzb@6|Ad|mlJOcxy1?EfGfORRPB&HJkB&xJE=BAm#W!5ShSOT7zEC{U1ha$-rlN zNq*(`e`v{V*7-l=Hrr$Whmo#X{2$UC7^e>8^?&Hp0VHw--f}J(&Kh@*{U1iS4&eXb z|HA*FCV<6j{E|h%U+mdS|A!xE{2%zaTK@;$=kb3qq~ox%9{eAg9DC3RBm@5k`tbEo z9Q$79|1eE8ng7FZ2T=SU{9pJ#_`mRfI5YtFdHh<>{tqV{@So!UK!_1>W(IoS|KWNE z`o+wK6skIIB3tW;{{uBhYE^N#Q`$Ev=1e=)*wV)T;W}Dam;MhmT}b2$Y6243`#}`= zgJ?J`J&26|L&6Op@P8ng}9N;g`tPcKTRYB-^LX{tpKR z<66wGw6_BO52J#?E#sG}d6{R9|AW%9AXT+l{tteQ_&-n}T_gSvem&PKJInupq}y^X z_6wY+0$KhKe)bq;XZb()*->R@`9JvCgY1d_Lyh>V6Q<@EaOK#mOi9bfd^!6}#)N#} z%E^vr>f--^WP;tb7yb{wx-YMg%=dq2%@LAaMKTbQ$^U`mnj|JBELnupFWrwX#eza3 z%UDo6E?e`Mq~RK%6l>+;Ea4!EVhP7paJ6io#T&x^;ZjHSBz4Nj1aA9LK53Z{SJJWq zI{WqgAL8125t99f_&+S%5dII7vVh&!rk>N@U?9;|G%1V_u%kY(Yk3BuNuAeqlFB2R z#Zk9xlm6BCKdAHu^M5$$m2UhWu2nDA=>MR;YL&>9V#fsl0nuEMByy5bn`lll zY7OB4rQUS~VVYWT- z6XhvYT^mm+Etl96>9#%RIUA~O{U0Q=v4B@{et5V2E6nH+*2{+ORjp5ek!|H(d?Kco z18;TO)j`e9Xc)9|=+(*V!O4TLsP}HXL9uE5dXG?liwob_U*`TJO81jgS|}*V{5b1# z;a~I)zkpCn3wVuGBU76-5fSc1J=ne35sskk&lxTCsu5IM0dTaHj7+(&0 z&Nk!QT+ced>B5}({btRut0)FHYjJGrAtkttn>~6qr&?9Hu_CTVI^5o#F-hKL(Mfb-aCu@ z9W;!zMgERTIg9+WQ{m^Y&J_wiN!o;hPt$AkxXl+sy)%KQS7WAs$&vY;9+EAnbhYv$ zG`wz1_b;GEbTY})&48HsIY%HnL8-*B1BYnE&auVn{baM1spQ!>eq}Vssqnj3!Rkmy zJbt2V`WGVfGMoO1mb@M`Fq{6#mK=wCGO+0<{+~YWYQ%rS{@DoiFoh&j+j*E~EaeS2 zNMv*jko8Gu4*gsOSbA)~zqw%rl4!HI!T zU(0^~vB@mB?(Fv;=B3}vAM}%@ueSp8YLRv*);er!(3yL+_?)eIYz01Yi8D(3i=&1G!r&B}?0RzDru-V;)Fdj#D8uKU zQsH~3kZ%vsx7nXnr$2jCO(hDWWM~H|64dIoQI*IX31L1e>*`jFZo&zzb83#n5GmJt zcg}h@6}`Vuwk6W=NBT_MP8GnR)nHe^c3mr%2J_IIM5pXt z6TgUMtdmnCeb7d8a@8p(Jr1GT`2z9K;eHn!U+~C|yi0{|)^?K^cHzDn9L68s-5aeW zq{6}^j-jH0m!@A_&x<61@FC;4S~%0A2|x;6xNj%&3C+`&M_3uDaDfucSluvx#)jQ# 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

        8Y|f%8fC z`Ei%)3qGX@oOd#w8ahg#jA5f2j@TDpl4K;-jo;FBI467ZC~RdXYJ7TWAHF)NYF1=e|u1Cd8y zT~Ps3N$z2CkXK{a`v_$!|HCJbr3#=f{?0bDtpkxw$`)-fGEDHH=oIO7ibdGx?=XNK=Y&7SGh z?C`T_ITz<@IheMq8GNk3qI7{tDaV|yTXXwZ4*)PeLEXafv>{KXyq2b^No2ad>A@c4 zXp~G-cu}ezyd+m2HWr4n7snlFa>04frAo}U4`8;PEx=dO1rg1c8RG=Zy~k&1^{-Rm zjJX&G%r^V!Ycvta~>|*w^+@;QQ<&x;P4aX z;A^9olLeN9&a{$7?G~2+Ccq~!8{VrUY8$F^cerI)s-4u;A9iG#mSk$V7<%9o-o&k8Zur$X4VVzFaT2yf^rr_PzZUCA->z$fA}&}}tm(p^wVcfmxA9h`bWvj=WS zqbGdMdKjwOIIBE594dwKW7gxwpe+v}5O>30Fwn`=S>A$(_WQ=8U_AW?FnhzyHpAN$ znOP*Xg>-wm{WoWvt<`-YuXDS_@%{m0+9K9EE}XhDSw)>ypzE(a#uI-jaNumMej(z; zT8u4$-SijSY=aBHe_-eAp$OD;Y5cf*V9&_xL;eG;GYP5a8ra>Vard!}d&G(GW%jlO zaQWtB_@;USFJ*#W&H1qW?wS3j@g?)DyAG9-Zcjs(ZVY_; zjdtreU;?{#1{xm@9N41;$`Fk8O~|Ki2^mKbeXRw~8675FsY zKi{3MhxAI*HjQ zN}cGo2pcIzNUO#adqdOVD&pcnpskyR@i<4paQ38^PcQhy6B<*9ng8&7@ruPA4~VIz zW9J~!=(bPTR*hIi!51@!R~X+*EhGPml8+?+nlmJCIH-%^pf2<{1PA{UEGtDVisbUoKt-TrxQn^wnz zW6@9WQ(?@@hajMXpWrpiYr6*1+TZHIllMG^UM8(Xq!k*RAKy+_6+PFV=teVicjmEr zSI7pAPj5*JmKCy^e8Wu!XC6(?R>v~omCpxjZks3Ao!RLH>vS6lQvXrA?Ht(;lq4M4 zlq4kZ%-zX>n`r{{t`~S^31oh*9*Aeo8W_8Q6_V(`gBk8&rN!TAbt_Tss?~?$RolZ= z{nu%A_aeMkTf0RMWgg=V^+Ypi)NL3shQIfeG|s}%e4W_8vfv42!%nPu$rEVI^aR#r z0y#4ldn7SmPLlLpveE|ck8cdAa&CHzt!!vk&HG@><|`6Fm$IR-7Fz-7;_HXsu5L7W zV8$KOwQOi*7lhW8Wo?0{*yj76^)O{CZRovs4VsuG~ z@ik(!A_kuCeuWr&@%~L!srJ?@?gd}cW&eji-e$VEOLHNV)-Uf5O0+*2_w*A1`4%&(#j{*e4)Qg+;dvN5@(ok z3KogWk7<@8JUpvrgpPu69E(BTA=(poqKMLiS^9Ypu^x2c#gu1ulUDyW%}QN25bNj4 z7~V~*m-9j(!c-95vtn`fdyMx^G3rfVJ%$WQO}wF}Of|vM2lS%{2m{#~9|g5oPfH(LDA0sHo`vK`(8re%`M;!(YHao2w^|p7<*)zV zR0XPDrdBT--4pf;#;XJqP_b99Bf=5vmD~8jYkZTcJaEE4WGc^x33~0qy@KU)u{ zKigyP)4UxL?=A~M2@QF*fO22!Y=aStbU9sM=bcFygcSL5 z0L3VBs&iJOT9vHOGfy)E6WL8yngN{w+R0AkR-gtr?C0|s2mQQVo^{R)Ji*MliHvJg zGj260PM2YX8IX*d&46SaHUk|h3>mK^4jC_(=OX7~d19o3C$@^;iTPcyycTAy{&VpR z4Ve#!lEG)rR2gt|C;CDem;ogNGoWN(20CMAr(BK8H>?XD;ZpQT1v*PjAdoqVg{59%z%=C z8R#tImBdj7@`McJ2^rvtjPFQf{L!hY8KcQ3Gd2S%V>6&KHUphzOdK`R=v@?7TRU1n^799OdO@={>ZSu9W3cRuYHFi99=95c)f08AG)!xPPLGoI|urt@iF zf?$TL*(MR5*bV70o0!J7np5Z0&2Xg|E;hq1Gn{XRGZ@Y{jZ401Z1PRxle5g3%Xm3U zoLTZ*WDIg6YTdDc01So|O!^ADT!T9^*yS!srw&G2$F95%z8kBa;lM*fTCX<8TL zzf$5YbNU$%dQ&aWMb2sRL@$CTzqwy{;i0|{8yUvT9^*yUv7q*&G2F~95%y#Gwf%W z<(H>vSy+CFx6E11cqsogc`kC&wvxUJPtgY&0OX&~_K5PfAk6aTn&D1=bMfN&Z9MZx1nc@6V4?kd$*I!AQ@l*mdn%J)PpgGpJ5CDX+R=-#vXy&oN*jy zVTq4^74eT}A%9uNv-2hHIAi{#j2B&aeF0KHxF5nYE#Za$8psZoFJ~f#ZIyXij*ekl z2G@g-QkG^7i!~)XOJ8`sp$rHSo|wcM@TzRrLAa} zwv1^9v>iEZ>j23&r(N1?ru89h+%cws<6!I?yF6>-XuB<1h0(Y8j$WidUT}$2a^_*g zezZAU7P0?52Xi>iI+@gi%^2k;>P2)ClRV1?&n&n9A(J2r=DZdX01uXK}W(I`b2FA_7{aiOomC%`%;xDw7|qjn zHjcDo@qdlt78mW$00FE3bLrk|%*x^_@PZA*vSlh&W(fKY3QCoYk0S@Nl^hy}Q4U9g zMshjMl*bMz5O~#2QuCWy5Q&_6g1}}8jPsiu0{-8d-^@&8yfil@<5m6%r7y6e#V7Bm&>zbXU+5uEkcc82^7jZ`s`p48x@f7rw9XiGDW?Pm7W>?rh5nX2V7Ac^ZYCm2h51#|` z>x(=7MrM==7x>v6CRzqN&kRt_BgY{S8)cb$LTst%uQ9%koo1pX!EQoe;V)8I(88aC zTxsDyKA)DY2#5~$y(i9~S@ym4SoKc({<`_@!ux9To%Vg1`JRV&zxhu4ewDm;V&B&T zVcPd*$jY+sc`5dNMNPVWUyg96_WceJ_)+$~3KSCd{RB=0A%$H-D21~?ql0}fhJ3LQ zhjL8DAw)|aF7uu8aGLLwN0#|cd3Jl9EZfFJi_48l7}lr9!q`c z@>q;;r}CIjLH(HiZagR?zWyc+L3YL~2?)WR9RO~)rT``^59pj(>>uxpkxH%>;GQ(Hn30`Th z2+qS9m$=X64gCu4?X#yNbw_{p23Zg3>p{;g3nHI+g2SDO6%lv*jo7GBg^#nEw-98)&qRQVtmsOq*j8)~bzc@HG zk63nlNg{wGYG@E?85`4(aYrto~ZYw(@$e5&w_!>`cwA)?Ly#^nmJGv)PE@D=Ol4c^2vSCQWBI70;-xE?G8)?;iB zJwY`_T_|Xp6jl8rS`0@CHkxrG7)FX%i@<8!aTCy%aLF(CgLlU3;pKY*+UF7E`*W&6E5hxK-}7o}EC&8XTQW$FRL&92 zT}$RuIl}&nhF46swH&8jA(7f8nH7H%uhyZ1_sL3EAuj^4N zEGru8B|7h0Qf0*YWd`EJI%#)#fU~_UKBq&wL#ylpEGic3o%YCm@PaUA6=Gt3GXwki zd3<>s>hLfsH%z4B6qOt24bGBgat=iw`042b_n94M6n#WK7;? z(@t`~0Rz}dQro_Dp6OHCLw!H5W{NlX&*jL@y%zRBGUa`wLMnEi9(vACoE+_loWgw1 zMts89p!+8iJ&2}~Ci%GI|WZ^2s!gLTnG7HmDs>Q+rh7ZC*Q5p-?#K~EfNG@3@Mts7^!a(<0E73AY zC`}5=V#yBb_<%RBg+Rp4sV&vGtVd}dj%sXbS9y;juIK9SYGXZt^IUzXR`zFjLvw09 z3l2?0Rrz}9ww;l8ks;JPwue^f^MTa6Vx+W8$bYJTTTxcUVygc2InYu6x={G(E%)PV zewzM0Lm?(A-;eq*_3u7-uMVewr&^qvT`ijCZzTVpq<@3cSV+;olPnfG(ZBm4mbA)` zJ3hQxn!pe1A6sF%{{4dmN=P9^|CYjcC{nQW53SJBzrGz=_=RGjjC%xr~LqCY`G?WFMj??ejJ+9S6@vfvjMF!>P{9%F$LQsB(o z{Q_~3yY`t^IS)hazI6rrbb1bsx8&e8|nJid|>>XLSLa`A3K^ABZ zBfexy0P2XVz5_ABK-40K z{hhKQVkHy+qyD&KYgPJOZUe%Y%V~9Tt&*|60#`?1{vQ^h?u+~jeADw%$i|7?m(_Gr zyY3J!9 zY{ss|mb+Wn8{>I9Y2o&QkEg|Y#F56g@|Y!A$1)q_ z!7z!-@{}1?1weVta2Q1C;p@B%rYA4q*|R)-rspqTF?CoE89a63Ny9Q_E%Qrw+HhnX zVR!Heie1ac@gwXiwR2Z#9(R>OaF*}P*Uv;Kvu2NyDZ{Sm$bcgQRLGML22-EML zg)sdPQ#o3O-Xfoq!G~EawfAY7wfCvg+WX{Ed!MW`UD*1R$E{CTKTF^GBuBPtQ7E%a z%sB2?_N&gC-hJSN1vsWd0n~g>?b(t-TnqxKg&2*nG{8?m-z-FLKIV zojEaqm|BRR3D`oLGZvd^b9!Lu12+L#+sWj(o?8Dv*j>ksQ}8IQF+ED# zuqb-`_qb2*SH17lZCm2IvHKkjgfbWdMWO`8K#y4dF;F9xzPo0>#ID)L=V|sUp+Zyf ze?lHh%|b8Oz)VRQ#WS_2;pJJda!|Ow$jx;pKSJ5tMAUL~Fe$3XA3~@LdeJ>5f;c0X;K%jdX z-=A0S+$kFU2cxnY(YaC^bEW^qB~OKrX+8`KW!emtr|GXoi$heJdcNi2iUCBqve2`s z`voL+Ra(Bo3A!{5R6@{&X`r(SItw6hm&^BlX=sk8qCFLw{-S7xddGr%M)Ygcb+YJ3 z5wwfdzo`e?o%+^&LZyx&XkA(gEHr0C|E^M;%J;vdp`8RRCK{hv4}8+)S@Z$)4{y=y zaWY?QS%63W3SdxIV+fcL{Vm>-3>6VnnMU$Ff<~l)&LZec=CX-bW@kiC;d@|SR)+7_ zDSEvK!#kLy*yTz3Coy&_=4(iq$M+A_dw;&~z8dVX) z7qWse49>`qJsKV{Kr}>Ci`n163ssJcCRBQja-26GJI!lMm|og2wYp*I^$lZZB1V=` zJ_~n`ID0mf&xtOBzMK97?D=hiSk!raZ?Fpcc+io>9W_(Y$1xqRbm7UuE;W^ck`v%l zEv%dXBvz~c6UorOZfw&Fa8&ts)Ec%;Tq6`ND|!t#A>e3O5$*+e3%5DE3xp2RINIz( z>9CnPpI5*Xvs;94)L95#9s|*t8(5bk$zE+9I#nKMMPtUDV6xK?a8wFbTk#TH;#`CW zWZo68248zSW7YqStV(e%h&7f}78mDvjnSw; z^AuCg#l>FZVx8gTNCkXlmGhU;zR~unxcI zBUy1=sensbhH;^ueR#sxI0kkr%Tuyp=5O`Y=uhJOdWN@uoBk{fJV&;;Pod^`G`4ga z@c}MYt9i@brqQ%k2##jI%BRlfrqR=Af>F4uHU|8JL}wxgtSP^1R8*E-i(sT_xq`(S=#e6pQa zu`Wgk^HHsC7+z!~b}nAL#$epUFc~K{kqyK?4#yKf$Brd1b#o@2xyGJI7g$&vmaBx$ z@{R#LSXRNY{AUo1I?;snclC~N>ajPRNFy9`hOj(Qm-56iIG?MQIsXQE@L)@BM$O65 zIVg1U{KP-IDTG!x6>zZPH9n8bfhjau;Y7w_GYz2_4u{A)R*eZam z*=}0!L~D3Tc%do@Z`3oxL;cO=lMA&Cx1ed)9sqoP7`ct6R(Ldm)6o<*!h)_Awj|Nb1IBo9`rf4W@3!w3HG@t)bmttL5pb#^^*14!fXsL+gU>n zv8W=vU8ep+=4C)PM8}rMwpiW`zNm4x(bZo^yNz8Q7gnJj`#Dt z78RCA-N@UT zl2(@wjeC}({-S*x7{rTS!?@s1gk?R1BMTS1ZA_f)@eR28r|X=nT-qvZyU29uo9Z?c zBR0j%cXG);TyeO8ri8^OHKf9gi4Szc+o6qAD<+~!uqZn8c{-lFOwo@ga$brDhd9dw zyhzRl@r*j@qoa?skI2bzokf=4bi=?$tt)AcS zV+q+(qvRFZwo916wsO%n-l3wi!qMA6?>O*8=L1!fSTcWvYljd!Af?Eax@HXny%5u4 zgjtoe-i()lc$UVY?2iD90ZJZTA6KuZMIXhB7rOrc9SdG#SL_V;i_nE+ORO;9!dWB@ z7q6%EB{5#9$=;j|p%zc+t|<(-ZvBGCXuyP1 zn1nAyxYQW#EJd0X@(wXcTx;-R3KVfy1J0JwgeQ8yJk;E2$eOorLiaWki*}*idLP(M zZ5!kr|DD})my6{EUiQhkub_<6H4j#(W#%k?{W-hMpjA>-}(&$uZ_h8Z9U;K zhnNvR!41M}j0_7$2)CGF;p%Z`7cE1J@j7;o(}vo91Zg zF(33A+o<>GyK!+Cn>O=diII<;Pv&EWGt4ma6TUzU)t-xLKMC@%Bh%wbQSt8q?u9^G z@T@RituTghE|AZ;KFlv08Gc+|MAv0Ybsnit?|kpuGsq!#_3p>CF? zv1B%E37q{Q_#qw$@wO`|1fSGrJgK8A@I*&thngJ+b1yBwPHX|{q3lZ;T&?A_a~6gj!>}SQj)&+w3WGtDC<$v3 z+L%DU0(8+nB;}YSIU;!oV0ggQdc=`7ROX{ap6kQM!?4M0nCvWT!pt~UXzotp4$D7+ za&oKL+o*=*I;HsOZ@-uoj_s4r6IYBMYq3YD#0Ol92x)G7Nj3pcwe^f?7a$qejIzzR zsbsKk7Et>4?>Q=M%}C0JVY<1$aYRSnzPc#6zwwlIXlpmtD~N-&nAB2XyT)pP?u_Ik z%XV07ulqBw*8axXpo_UjL`zP;1nNmxU+~4N~8Wq;Qi}Xh*QR1G0i24h`0l9UKHx>glk{YgIvH@P^VS~e4ptJVu09ubf$ht2y7&`uRaNgM`X5JPS7Xv7G{!0SUPwyp_uLVeCo$YHT0vb}Qn^ zw*_tZaK-u@->IJ9g?hoJHFm;rDT}#dVhTNaQ{n>_lv6Lcd3Lf}!PX}gELlD*^A@{t z4Hq3=TqFwO#xdI=Z6WUt=Eg%$Xgp44;$q$iCM(AP7YCVs6X(D((eiImIhe8=LhytcUGVN9*DWE-7_{-G4zJO+O7Z^Lg{ z3bkZCh&}xnA@NoC5Dnjl!Y2{ncYFbr3F~|XqHi372%($dPmCzJMoqcuf$y_*ZPcqA zUMP2m2PD`l=g~h2ktvPiwPkJY{cn}=8&w~9j4+2wg=8jQ>0ebDW-w&1<}{7>H{lAi zGWg-4SCVo8=G$N`u+ffqzTJD>+S;978$MLCgO{LR9frORhQ4lW5YKny6!d9av&Fz5 zU+;ea(PxzQ0!_J_ziti74TiIz@vmY1R`36<+dmiUXPVIjlshywUfTbF2lqrZMoRS1 z%vQbsA$LQmBLhD}?9lB7{p!~mJV9S(o5%1u+A#Aj&5U6BTI#?r-gn45e(~NU?@hu& zW&>I-x?bU8;%lMmLmmTXX<`m;?R_B=i>&8rpv&Zra7Yb=Q3VLfUk6AM7jeQ&m&tV9`j9HpX5#*% zZ|&N`5HmO45)0t9;S$|FamTmbNf>^7##`G5J7axJ`+^G=apR)5xaC9*j*JJcj0hMnh4`vj|x1F~(*QvKSCM zAxi)fq^K+OR&6{ zkT4*{goFWc5z+*Ri;yNjbV8Z|(Fth=q>_*wfK(E)1CWV?v;Z=ZkQP9u5fTAp8X*xt zrW4W%$aF$l0jVaW4UlR=+F$^pQ=n{ax%(Yez`N=DzbdsdoVDT!gzc!7dR`6|+YMbo z_e40WC`zEI52`6%fu^_(f*%OMQ|@$u6rrr5DD`i#Grr0b%EYelaDyJIXw^@d^dNZN6^D zPeu$@2Kp7eDHop{Kwq;Cm%w*LM~9B48NEUl3}T~R(B_fvrNE&0v4O$vm21$8Q#v;? z&q+*P>?D2^Cd;(P_zu?o%fxEOUS^kb7PfSGjkB<}29>_p&W(vfJy&l`>0j~HC0NFs zWPZN8-~?5Tj5k%o%{jn@GxImV0wg0ve}~|U>;t0L!&j8-YUS;6-8P}n8yxGxmHNJO z+^adCt-u}nCD5Af722pB_y|en%u`B(eO60X$qh1_ZTM=%%#&h+Fq??3M1mqNgv#C- zLCtb#&-Cpc>iH5-8T$4QJlXH)fu=6rk{z?`Si|Yt9T#fhCjRXoRAj$1D%A5|jON+C z+k5l`tRCWj$+}tD9@{o7__}b@6k3e8sM#BwYR9<}ukCFxo8__LBLDThJVh_-jbXdq z*qG-nYO1ik4PcILYpf8s!)qW-QIiK~EF|ZGUY56Ln{H^h)!%Jw!&fZuIj`MqDC?}> zaTyPUkxi~QI01IAUme-XxG31Sy9Zw$!EOJI>v|!3PtiK$Vpmz`dBLV_2T(blqAh?s z$cv|FymccU?og_`yM^}D=d{mf|OdKmNAObbpy?8 z1}-J7ZYqV{?zQ48SZf%1G{EYn&k3n&6$msC@KR@E>x&08C^)(bh;C;$SJfe)HI+FMXsRV9l1;*&cms}*-$603GcBc(UJ30Vt!?ft$C#DWFQi{ zz!!6WM5Vf@o3rBJZ#rcBF*lPWGJYE&992ZdRmeD<#plyv{$0h)Lrg4xrN_KGEhfL` z3z~&RVNAL3*{=3d`8Dwv0iF(0Q0a71dK#&rij?bcq)s$R6+v)%d%=B=EhAP*(**Y+ z5dk$x;YI{Yh(Ahx|C2&>cjQk99Zr5Xr^TG1VnTkiA;0u0zC0yn8mB{nu((70a(^v%2-9u|;|#v44xi!ogw(#8EEhI|=bZFHL#GX(6>fz`0si~JHiP&w*Wakzy` zowd4scw-})*}ze;#J1YkV8o^av>lO?Ndyc+jqIMl_qe3{s`gR7#l+T9f!&c$5ki7o zB*4t3L*##@MSf95&PQbUVLL=#o)-Bo6}dR6r-?#X4SoirKN#u991e!1gTM@ztd0urVHMSBsR#eTUWb69a z;EE7bgO|gPq_In@-8#gTeF%zl#D_3bm3J)6&wzq5+7m;nRF!Ps9_M4M_?r%9st-vd z%8-Q+v_8MR(P_nAJ(yyzf%DZV#`SH0rC7P0HI?Ux4bIC;Gy&PT6nzLYAT|T>KcW*h zb-$FytUIXs94m(t-N7-L7*Cs8tVUcrBNGI_QOQ!2B~6yaKwHfQty;;7*1sPRDQ(f> zC)s~_@%azP3**jo3%dtLWRmjQfe?xgFHE|X2rD>>o(^B3;2q?<81S-=^1Xr4sW!(; z=@l)j=#zm=wZk3iyHoy8XR1Vf=OUDB)9EGs?(5W;pCi->hi?IVSPs{aLZD+$p#-na zD?oJWyBP4ESZ%>>RavAK6q0RWUt~JMYzrgN7Bn^+O}@;C0!1oRX1VY#s#efm9-a2* z$1_zz9N7q=I-!y2)%GRMWOOJS)!q6`{YjvQ1-ILCTZTTpk6PWNG$9{){k6 zbIUm})eR~~%V^IB3XUm$5Yz{1Zta;{c(+oO$rw8a7J4G0!REYB2weNdIUG2tnv=>3SU@}}o=y}25YuoMJFhhgqZ1Vzb7TB_xliu5wQi+%%4r^$Q5ly{22 zw<9}842AXMeGcr0_H{D!`UKw`kX?wQFmHqlI-T85G578?zrP$VzuTmFZ_MgIst99K ztK{tmD!&F3R{KyUjdv|jUKaz?fz%&p(b?HRlWqf9)W&t!7KL5@@4IwT!Yq&wRNYi1 zd<+ZQ71O~sf?DZ-_|7!N9T2lH(tui}_^%gynkBoh4zdfRiw%kcGq86JcjVW@y@joEv+UZftMSH7Sz*MaIjCL3TSnozjXO?8GVT*0 z${WNQKb{pO`+c*$A#CnKz;pGc+KWO1v55DQ-D7;T7<)0Rxjc-0#%0sw&;VX4WiKLL zTzqli1?%>yTSV!Z#Ky(E#Nj-#CZ9(Rq2BNXEfBA*C^=N~AlBqr=0s1;4`g4C{$Zzh zwBwFr;QEgiL9eis!;Mz8k>TJmb}GJ8e~zs0$mh7s;#eQwiZq~A(+-3`zZ8->3NhQY zU-iB91)oj?F)kIfmp8ykd2{g{=bQ(%lXsa|n>2ZIvyhT^t5_b$`)^1_d8>Uy*cO2( z33=Bd@ZXj9?eKTElQ+wJSb5)9)?VIT@JM-YI6GC|Qk;ammr`7icjaf4_n#3nDeq)| zuw5_MTLXV@vggz3t%Bb#zCO7>SPvYu`QGv3765!jB613tMazjru~wnh1Nd!;oQhCY zEx?gD22B;lp4cZ`f_v>#=H53g_tg38PsyMAt&foZ{M7s}ll+$rOf9`Nzd9Iqj2#c^fyjcw-0i}Jesh!+;2Y5w5)I@B+@`uH}gFu7VN3p<0rrCMJn zE_GqtT!!q02ptz6_n&1g{mS|}RRinmj{s^dSz0zY?syqc*3q!or77x=^d|&+a4_j9 z*wkJp!lDy_O?D`5)nfM5zW4Re)LJYxMvg(2kRbJ8qtXX1K<3~+q*^NA7t-uLpg!!6 ztowxe&=YJVwJ}8>ep3FoBZDL4KO;5&QIh|nGdt#gxlC#?u#ZPN*fKj!+-s$~J zJkw`g-*X?MvMUz7W|LLzH9p|ed{qO7+h4F%@H->J!E}55llJ{z-e2HF{z=ZEvu48{ z47k-;V_6-WcyHi4+h6eA8LBy7^Kp84lH-?3SS_rxV@m;6(;kG(c$E~r6W4l!zp|?p z9BYF?Wd9rH`b|~+XEpgL-`8Ng_WK7S3os0c>jp; z5^O=u-#c9b@j0+6W4HDg$jZlAC=fcExG%p|k6)Zs)BgpRRnL%?)lFG@5WYX1u~pY) z?m>X;B>jmh{c&mOVgHaq?BAX=fhFaYICAz4h9KV1Z}PD1J#upd<4Am^I&hOc14jg4 z?!3YCAU{}xLwe)qB{)O|!j&5=I0A0k6VmyFP}51)$Ao}p;hJecg?J=h)L4Q4uh$AP`|IDFr4Z>hF6Tw!ag z=-&da-%;S2L2elW#=4?>UQClb_>?#L1S~4sqsO9ElBW!e-0_uiZsQw`McD5ABzYbJ zo?r#WtZExFR_ZuzRpV#|WbDedJ~epdVqd2pZ9+WkkxZUXblN;2z17=)*XV}9-Q5ko zW3c2mW3(NoTTmxWRocd0t~XzZ<2!8!8?hER+V0uE!-M??+$*~nGV>VT?rq!_=|_M| z|J@_jQQOk)JFK&|rQJbkhAgPez+O$fg9rRhc2;8basK4)tN9q$U2O>Ht~La8Z;(SR zO(2{yu#=0lpvhP;HwV*=!!Wq}8w@tvSa--dETR|DMdce{#(IkN5#>3KEck%-_T|%( zodXORRxpN*$*Y;9ttuZdbj*O7%kbhHI>uRpPl8Rz;um9UMw&if>x;1?xXD*8?k)`Os0tEggO z+oU=uNp-Tq;Tpv8`N%Q9=2+nJ=y;1eT!QoUO6Gzrfht6lLVhCfBpr*XyO6XPNsDXV ziaUBKa{r2T1FB{tBD)aT#SiLcw~}|HdXlOBhEzII=`|0;9dE(L;HXcsXj``?$}@@O zQRhvq@~n{PHKn*mKG!pBd~VH9T&ZBE<%&BNDO^5q`M~AZoB~`Pa41i8`)txAnA-bT z<56)g1xF&|$S@4C@txV;C=!;gamln2eDpNHlLAT*QT;8BFv?MB_i9+E3~Zok)`K{1 zx!DtlcEKWWlec7xRzDU^Q8r1vi8$EjfrEy0OK7Vm%p5v?rdCe}56>K(!FX6hh4SDN zb|)~z?|{ul?}V!6_lEC)E#>EDzGr5^@%Y{_zA#k(1<9hr0q41K$JJ(>w^f`%#KGNf_+r-IuUUW7v{jY*&`Wi#o~;&NN_OePE_JD| zv&J3Wg#gkZbc&Z>DkmRT3B*{%m~%tJBqEX|3c1{3jPHy&;dMbbY@BmYgc@>H&LvbQDzRJ zRQPtfDAxIsgUDQzN@Q*-)QSHGxwE~OBmXh>n*QJfVuO7=9u=+(*fX%L3Hw01w{@%b z%&p?m944O4n)yktBRms^LeD^Dh;wvkfGwzIsvi0$eXE|(3w)RwI9W*7jPk(ws)uIP zMlM&Wi?me%`bFJ-agS#B&IHN6BuQWB&;Wl^#F=JE+RK)etn@4OuF+9Vdaw`fQOLx0 zmu9_Wn^u1(XtDtu7(M3%J>*!hjz>Xz-iAGn@m**^S?7+)N|I(PVrz=5!#Lb(H0Wx} zu`6%JB^a>y&_%x0ID#X>=p~>m5)NL1Z(Ks7&%>69?8fN%ECn2_f%#e3gV_rqevmL5 z&tQ4aVPkq~bv^JNZG%h_`TdgJp4CX99aKe_1@&EGmz6K;GY(0Ad3ebR#QzD+xcClD}nFeojjWVNhw4*2UkSYEv@;?f+VwwjF(K&A8!R zVr2<#czsFPR0JvA@ITiIGLU0}&HH!FnB!D%b1Hr1Ay$ zv|qDU?PWg~R{a`x2fYpZDubLAn;6YHe6o_1l%9g4zV~f*s`#x6v%rs^c&T=Aet2;w z9E`2Q!9!iK_lY@g;o3Otp&dn)lNd~9`rjaPEZ+IT)8RX zBk2IPXH_y9N=36`N2G`!=S9ibsnezQEy3SR7qd#b{#vONym$)BVSQGV--&m z#fej`sS{Qg~10=Xn9U>8>Nab z4yo}=Dt6)r-?7EQ^6PO6dkM;*FiZktnrLxu4y*YT2l4e~I~wh0+;5B*R0&=ciy(ln-e7<~%#{*Lq!ZX& zKtk&sfW776 zzGvX&Fw-(3{W!=UtEmNQ&C_4h+a3MH9Y1(HM$$;kR~t8qJ#1WP0bx}M?t;+o{no@; z)TsCMqbt4-qeR8yKmvlq+T}yBfUH}$y(#TujBpfNIu`xmsjyu{rn+O726yC!xnh^J zT-|TIFQMb1g~vJ`yQJkaCzd>G%aUJ?c%CB%*M>7@ zbkLP;0&8QlQ?Ya3L1#G+K5+uni2w39#65)^jpnhqdF*{W;+~cjNk2O7G{hb0sFxaM z2+n$xA$AR{!+va!a65Sz=!lHN501jsjXB7XND$8=^LGoAC4 zj$Zg3L*1!pkIc23n@f(&4Lb=1T!-C?hVP&Y*%KVS<}ua~zCA`S%;uyJt0BwWw^^1? z3>6QdFDWY@frpFB|HYrs=eS#50@Lq$jZjhVvv?L+Mg8e`DPzFp1blRrF*2l~Bn3f4E2AgGo+6vLCyo?~y(Mxp;;`Z0;znhA_^>S= z>cyYifx^ekTk0-VTCrk%LO#?~Mocz<+AMT^lywd7bK7@HtM> zZc%0ewQgHZDqxdYZ(rJDRHLF5erXI#yF0w^b?#2}&up+e)xe%!_2rDop;zFA%Ju4n zkB4&>m(j47zhW~t)q&Su|zFC>Td36E)&B6h%056Buz=Z7K6RscV8pWwT2l>$HqDU!o zL~+7{Q=q03GW8yt_LRw?JyFc)_?Hv)2C+4T(q^c5PLOiskwG+d2@{^qSQdyAB9P(W z&yqA*wX^dA8(0MVRpNr}MGjh0Q>fp8qUfvTi;8Nl-cwXl5#FALO{O2p)0L^h=s&^7 zwI@+-XjLQ~{jg$ZApfhy>-frQ1bsdBTHS+zTK4;z02DdZ!ATeZFdL7k#V=nIG>4f@yFnE3RkYF1g>fBhk#QGL)R|jlhB%K{1kU$-({QO*PPNY{mKEgs1rviqai2H|D>_8j)2{U)9k)>`_qZ;3a7u z)=CNT#)mXNzB{*<+DH_m-smLsjjM;jCnx(zfQNf#AbO-(v8wJyRS%xA1Je!O+AIJ$ zzKfhimC922sMsB+4o1DZu%rq+i%|TlbQ9(nnEwtOZ&~;+qTcn`S8DiBuIjSF-ETJi z8qEW}H<15s#pz5Kd0_9UJD+1iPC|}~LRa8`Q3=X=;Ak=Qs6`2n_eLF(K;w(YRf6r2 ziHHkEfFtF(g+@Af$KkfZ2t-MP++SZTr3F+H>j|E$o%L1KTEU{2|Cj~7nC!kd7cVwE zuXP(*JdJlX!w_-Qd$$+Waw`^R&b2h$j~;`yfOFjtLN247>UU68qq#zGg8cB7QeD7f z^($^kM)SZv2qZ=Amg@j2ve)Cc5@8VjMMPT+k1*Cf;i!m7A9-#GJe?Wi`}|V^f!fu2 zE4+Cqo9nis_4Y8SauinjtR=P6njQ$N4t8>?=R!J>2fdIJcMM=irpUPH$A&z(agj|&bNequb}L@}KZ@*H zIC4EoWV_vMmm@^>DcS!kk+FkFWQ!0*1Cd>m4w3P3&)a8xh^I z!#wijT=x)asCM~qY*tnsg#V!FY!0<8F8+Js{?yvO%TklNF>}jthA&<-&)oQ5*32(> z>Hk=Y<^U2Zftg(+WZW!#v~v0Mz!s5lfM%2sXwzv##}nO zJ-8Muw+FA5tJXl%SJ`UOSFF~BCY#$P?h$$wAgKQ@dF+D}abBjS(nM)LyZGeksX z1_lgd4BvvEIOr4THR7)FS0ck4Bw0odn)QQaH9r%=G7l;YzpusTxF%xdt~J-XxybA2 z+t|{BBVyTZRG;l^B?x=rv9mpQemu*_RKq-PZJn5BH_Nw*`5&@eUU`^>ikjfzZ;=#N4KIQBz6J~5g)XyA0i^# zK~RgHK`k09B#gIHIhJ>fMHNqsfXbPYhXgSaw9!m*RCThcO^?+kx<@`06n2kTZK5&4 zuaUU_u{x=99g*;JKuaO>fJdRvuGb#o&8%UrwjhF-_?+ruw48!}z}*@0 zjy{Z>V!v1+j-A6Fpow5A>ZAr|8&=9`LI=JGuMgU9c^rdjYT4mGvm;mEhfcrj@O{F6 z5`I7({PPw`NgMDlDN?IpK_!AeU2e_Opc5|#^O)FM-o=8`gbf@w8(d0a`7Cf zYh_!P+R#8LvYB3N5UsC`sJHCM5}+znh$hO#{r*ZMO)ruhLjzD0;(flNGn;rIgmE5z zyJP)b?P58@a=Af$PTpZMnv+xQ>ZUij*TA5<12NU}mL7~hQOgW$L^S-X4CH_91bd>Y z0#PXC^BeZ7Pb4dM>5Nq68Dvg$rp+{GyK87{>!emNGTP)?tE;l#QZ7;NID{UwKhj!C zfP4cbH0NWAEys;^0mNm^))m`pP^vgrRw5~SgFH%XPOuFMLeUi;OLSFuxB=ZNsjl&c zX84I$f78I)zW$VyM(N3L8-e9h-Gq3(yNp2y0d>pAm)jcdPV6zP9SOb}kFv4b<)C_V z=>J)x{Qprks2KJ?QVU*(A`{t0-LTVr%hB-X=2eNB_O)>VWslL1J<3TznjitB&{#InGre04~hLDG-OF z9`*;Rv&bKmJ~@$h4KokE9rfOxY~u_zpRgMj2z?vq{bC^hb?2IXY_iF)KhwPrhR{eA z+73s6S(^VS1ZT}ETb}L3^6VyCp1l~@{BbrW^kvLQQ~0karkwUdPMe8wIMbGDf&6l8 z!vv=z!`y$t7rNM%`lK;31DSBIl?PGjsk#)?5<|@9Xox-CO$t+OzCYn~a|Vm-RF7h? z5VkfBtUZBALm1ikg=c&`$H78=ZjF7Z<$Rmb)@g$IPs7I9-Iy@OWVyzAC%!~=mdP;> z>xh4q^rr>2C_ycSk7^q^Vxs}Js5EvA{mC6WnnAZ?|Hi17gZyzrFvA@=P|~Qk83Gnm z?=Q!eY&ir@T_8TNaN3A^BZp@~oxlN+k7Fy{m>453f)gX6-s@8-Q%Hk5W!aDvy>Rn( zganyhqA=BVm;mypOzF^+^?)}biqM8MW(Yg&BlL!OUgei06zNM02Ki&9kKfgHZU8O6 z60sDAeu)>QnXAt9L=mK%crljahz>Fd#oq0IM$2ZL&E7{%i19$@X09S_6)EN;wyK=} zRcl_#`tQz|tMAzA8Bh%^??D z=tl=+q;+?JP-%IzS>$T2ih8?2L84c<&|87}fd&h!T%6-b!i~M5ZQS@7jxnXE>SrwX zbVd@x+e*Y8SoTXL(sim9l7LhS7-_DWi;fXnzQPY6JH?#1>3D;i+y%uW&-dq6G*fWc zWss1WP%!J~ja%6-TUs;1DU)0?Av;T@hG3J?%@b8PstE<~;O;Ch(u|E^n_0=EzX7k%C`1(uFo$g{G`StL*m$#rep!Q~kC|!5nN)&EuDFlv9H&{EWHY zO}z(GXK67IhNow1B|=HHaC4Q5@dwr)4oLYtUOq>WYsg;Zzmi0Jexfh^>H~Tn3wM(R z;p!=LGS=4d;R@nbvJ1i)JxUgK7#`eHTVtl3;#J9OJYq+i!3=D&#I&zrb%RJ^|M$B1&OWseo6qN zN*;@Dt@#o&P!&wh|I!K0c6Y4NV&3`%wLAm#$+f9t)qU&=QD^*~|ImHlS$S`GT!S

        ?Zde32+Yd~WPwgYYG7dR)534n9Ig0h)rX9zU`>VtP_H88EbFHraEZ_*t-4oJEWmA zZMPxedV2*v${oG?4!Umkj=T#OVvI+IalZqTs~uekPSktezahOE@WFZdPI5}Ysap)P z5&`Ob00RkdG<5Ve1TdZaAD)-}?N=&YXwn&c_nO1$XSYAQ;uPQecQv+)?yeNIxj*R3_U*H$x#dLR3CCinGWwd=$F z#^uY2NRso@vFmsVUZ6IRgIp(}j;dj*Egu_?7jvCyG59WAAz@8(gJo6pVm7A4-g1JY zF`Pvvb4&w29<2ObH@5l-b{5XNyRjv_{wuN&;dhu+=P;ICLQCP6$j8jSD~@+C_){DO zPf#3C`r@J3Y_){tE6eN^%H-(YwCWqSAt=vbPq&yPD?A+V(j#Bu#dz6cGCcz?*yC65 z81p_Oz_A3YgQI&+PSl%&ATcEe!2*d@g{}>iAnHwxhsnaqS+)HJ7L*a199>m>OI>z- zLiLrc7?8^IU&m6x*GrUmtnb0_g)|`LyW=6!V`&7DMqCm5A2pR}hzu{_TDk7=787q& z(&1xGrMHF5N-EEGGgdF904mDOT_XhJfYh0RrXgg0{n%#XS|g6cOP_ZnB*Ujz5qU?mRq;tfV(Nyi>{S z)viu_cRVw}&)vA1gE`Ns=1~Hz))AP_aH|g3S>GaOJnY?==HLwyK7QfLa|N3W>>GF9 zoM7LOAr7xH3aS}g6~4nLL-+gl;J2s-2QhH@=UQ3;;1U?x+$MYxcrevjaVypE+7{O* zM)!DfC>58e-UPb=6Hkx4PxWR;3YN$9xrB&tCi&-teAWgK@1azjUw-2g1qgup zPxx!>CPpgAcSRC@wG%k!fuq!7Y^*;q1|E4h7AIWoq$^Ln>W~xGZ%K8PoQV%2dgYP? z4b3Dn+#wdx<~5DH}65wsz6W z3ZN6!Kvp{T5LrS&A+`-z52vjDtGF+Z#eL0xGwxU4v$&;n zA5lC=t5rp@)dNo}d{rF!HtPKVEeYK$ewgKe&MJIV2QI{g z0*ahYeG1E>P3$b8no9iea0Rzq(E8wA#69JaIbP>L@SpBBv`rk|`hC4Zo`F-^(+Y6( z72a3JXJda-8*Na#FcYOjHsjQ8ai||`pf;?y`}Lu1T&k?NO1(1nYKQIzom8CsRqSK(sQ1AyW?HbiHuch9M}x0g81uoSSLN;8>24HG zSvAKfav9zWVEj?-XtZ~#%lKhR1A#P)JdV{FTv%f^u#brgF@!fC;RO4krMkU&Jd4Ev zNx9M?mb%IAvw^W^b%R_^;}}P(zD5PTSJ%}IkQxghKScGR;{7y?!WA9kgMFv^O*}!{ z8R`TlY51A$hoihJ@s;Q#RPF?SE&yuWPTT|Mkcn@#CZW$_Z$;^|;+X*UJE?=X%>cV2 z;p+CRVqCC}sJVlY&Lr6L*J3fjzon`|v}T-%DGI%UkKQJSwsRcF<7%FBQQ>KYr%pjz zD9}IeR4fb79^jHPFp^GimhEBwu`A55%1z`Sv2s`$@D;O)z-`)C{!v1#+he(&ctoyW z&0>@q8`0Vt&NVNopRL%$L8rDw-gOC67tY;%h1v3jSVnY$^Y@s?>sl&fI+L^r^nY_s z7>#)f$t2b3kl++7UUfJY{V?Hhtj)%3t#+CXJASw~`}3K{uI=D5L|9a_G$;I`7sCT7 zoMYIJEVjjWv;1x8{x*qvp93u={3!?&owmLrSJzi0dtki!*h#U(!T}bmHSb;6&O>cw z$7}0y){R?RaHWOPfyCLX@Cf9GZ)QwR-os%@qd6S%Ihm;%Sk!XRF|%}d>Ko1ydAQdd z>u!z?P|{id*jBlbG1lV7L?$HNCl@n5KRlVj4^ME=j5j;x+~u!CK#XYF7}+qYoq>;0 z+#9rT8!GYL_8c$RSM~@C%`5gnRFz&wgscr@vYC`1e)6U<1GS(LdemoV5I-U&W3c4b z72IuYEFdzNQB+@SbFe91DXdAW+VldB`OU*X8x3EEBO>))CDg3;eL9o(8X;!&w>|g` z?|=whUSt#YDfE?a9VS?my+Pwyn}*+pR@ixnVoB+>(TKHy}05EjCgl+CP*5U19ugY?qLNZo0Mg~buMn$M&$ zU`Wtsp*|vyvfi-Lq0YOHG6{W!#WYW3n~ZE^DK7^*bnuM4seW-2g)s$T6??Slv`SYysm$0n6O#ut|qe}AtLdQ#UJp>)WCtyq> zvD6Uw)eMIv#{PTd+U8gj2zFywo9)?7w31llCI%y5F*B zn6G08ZLQ}tsxOeO8KmIM8^PsJ-rx$aQt8J+P^}H0fsNt1&Lk^Ij$%$QlvRJs0x

        &^r`jci4j`@z19d&Kt^Ez>YLo`fAR?;06!NI2F7I&X4kn;s>Pz zHT_EwQC)`XU!|yOE6z*5Rz9r=U11OIrtrs3Os83ey~PJQG2ObTW~kpiFCOZXvwDXirdr|hP2F_FB1#GZhT+0R+ zdbud{RuONT#bO!XGf?5gY4O<{J?2m?TEJCwaz$2A=xm()oP>)`uFNXh!4G!%+;*(zmjN ziCcFlBu;QM%j@kR1alp5bIsi6;e}_IdAp^7c|H|-1*bXAKaW$K(8pef)TFj5ZB+ zowF#xETo#anfz4O!t=+g~~8&osx;(n||WT%QMh#Ap)f{E1ZcVA)J0<--%!!8J_`E zeSl2!>h|GS+(x?UyVT>#qUEfk>h=f9_~^P_#U`)1bvB?bjEBKj>>aH=i%6T*BQDFf}AYjUh-WBNk(hJx?vDSh9E05~M_uQH)R z$WogKS8{9Zs0#V^J-0$0gqwxPwfGMSaSYF`yB;cE_iCzq`w_d-tgf$)Q0y;AemN9J@H6XYlnK7g^9YDaG3F09Ij-Z#_ob<_kf4t(lF zPu|WC=6-&6W`cHc#P@PoKhYT(T?X>Fghmce zUNDEcjU2b?eCYZcwH(G1khH z{Wa*VZZF+G)6IGLBZ-l@xmMTA(!LaO-JXNF=YO6?D3*p(J%I&I$aG>l9b)M`u^Z_$ z2Zgmho6t&ZQmkd`#a|`AmWP^4ZC1m9eK!cdvHyZdtF{Ib6eP?{msN6R!a&ATl?65@ zbwGd8IxQa$qu!Kv)YDNPSa2O9;w^8pu6Boq+#h+>dPRHu!hw`2*)XM3((Z?Hs0sHL|N^t|FR6F`r5sw@37ZLY?h_4oo7_XoQ z{#&0dVpPK33Pu}@N++RyifV=x)s$c~anI6SF%_EJd^Y>PA=q)1Ik?_Jm-{@i>#*ab z&p;y|81$l_(4q3qZ(CA<6xJ~!S2d3+>MbjIlre<-JfGm&BWLs zH#u}6a)qOCc8Z0kQKQ%-gt?oj95Eod%=ZwD{;&j7ecv9ST(O+EF7LQ%#f@ z1n3THub*aebE>P@H#w5(lfcjbmP11t?;4X)^=C|&kuyOZJpdiER&O@*)QA@Bqnf0EP)YBU^c1R7Q+_XxPig-V;eO-c}oqv zF&<$2-W6}t0qu>UQQ{o*j>YgU7_Gpqs2A^;;V!1>Bs$t-$(ykk>T5Ao&^ z`x;XbHs(K=hpZDH$L=Q{fG|gFvfvAaEOB>-SKe?e|G|gfK)pv|PiT-b20+^YI4j!YNydX4ZWka#Y{vlmr{FT?=7=#C7k^!U*oh9t zXlXszr~DNBKe)UN{vT3N5p&r43R+Oz0PG%sp`5M9=U#WzkGcr7Sp(4U<>3}*Bt*TI28i(EsWK~^$4TW zB}Zi7aqu}MWM6-joKXvZz*AH$ym@7Wmq11g`NMUTa{->juAkY3j#GyF>JUT?VAN(g_Ih|U-vh6WhUk# z$@-EcR_X57j#Z^EfXgWJ6QgwfOMi!{V4?Wj#_O|j(+?{`*-qF`!hOJSpN78TtXXk4V%ro>!*cB) zP65`du$}*jcxx~)o}4gQoEn=fuB2V?_$&Wu*g82%E!rD?7oHKM&6TfrbrpWG)m@3I ztUEEKQLoKH^qe!WmvAB-cZ$^weA72_d`!f&05*0ZwlSIH~4oS@vT zVa7_2pGLh~TK@c_HZ#~PJ3!q0W;u8=$6iWuWcP}uYBdjW(1jf1=TGra4(+fXi@gA* ze-rcu1Tj(GLV}{iant%tnFnQz>a(t}Q61Gj-JfCOdUG~R__EdNE@7L6Ije+Jl(Q$; zx!}gNc;rYoXDwnmi=RuyQ#Wf7EX|pMaaXwH+V*@hk?~XL@*c6v5d5vYFE(GWq@~ZYEbUIfcKibuwyeM-k5Q zKgVimgz8cIbI@CuUJa@PdJd|pH4szEz!A|(1a+#)|3g(>9!ske(rPG>pVcJUxCfi0)v##Lv=nE34tE{5@?N0T#Z0xlyHkMlr;az;`V>NUUhLfY` zeE88lR_~Qskp;Js?sDu$9khG+-j@Sa#wi|lr=ZJx#fdTzUo8Df(xI;-Q8HZ zR&7nZ6Buiw7w1xSyy=B{U8`O{s`@e;`!@CSoU;Z_>9@Q4G5N1(c2@L3?i_F^xFBJZ znNva=1==w=`A27YD*JoQQ@252TI58%KfH|BLYs?|4>`-VaZtaWu9>zVP&+3%kpFE( z=Rt4U%$)q<{Im#lPn9Fvrsty2tAYIID@HgOGFihw(*$O3ZgSLO!N@&R?4z^CqwA&( z`XM|OZ3XX#-p2WrCP@`*>WTw3dNXiw%}T^Q1M`(4(FO+JN3TC-Oba0D`k37FW@=O@FESat>X8*R+K1Wh3Bw`tWOY=^bzjn7vPEkkH{ z&c=hvC7x6#c%o1<@J3qT=2e@2s5;c%S};VE&P zV6qXdJSCY<@cZe?NgGc|YbW@*5p6vsUU(BVBFj_K&I!I^LIy=D!jmY+tbajHa8{zYmbc1h2BmAC{?r>CLL{Cpi4<|U!h#XHzFMK{?L?2H{ zZznjzh<=_D2A9k4EB@^f~nnzp`MZ+$a#fQW=Z}0hH|oUuLMPCAolHa2D50#O^M<(ASjU$YIG0c~idt zODo)>fIR)lLeGY{Zv><_a3>ftW(Jr`0HN`ol03oZV3Q{51nGU4oRkT^Q@Hs977yl; z)p&yE6g0S#KvphA&kPm_r6I~;Zjh!3k`90EF4+vE2U@I4wgB1O2{v^}2V_epco;Jy zqt67H;RNekvNcF}u>HU#y~s}+%g+lgs~uQvjkU&QwFfK9SogWCj$m~#*7Yu{GgzIB zbv0O(OS_EDr79?-SH;@J!q1hA}OnC>b&S2_ao!}6Ijd6A^ z$6%8ionU8!Y4~2GmBI9`#$dBkp~V?&euWc!-(ZW|oZ#yQ zTV4YPuLhmJKfc}|^w+)yJHP1!vki8cq~-#$rn4pkA)gxsCh>y1%AR`6-xcq32qf?ycgvc zYSPaMJ}#6t4x^4x`XncKmr&D#@LwzBfy7n{HTw+hU#R(~POx04#d%KfBB7S|JHc5( zPJt6VO(+BD77Jxw=>*3KwMubN-QH9fqMMLRojC z{&D!Ja$)=L(f@@y+~WkpLLD&+I-||KDAWb*fd{857j}K#39b>!z6C2I zp>C&O)DiOSgHJu7?vTs1LjI3odJ*dJs}o!#)U$&VoFmk0sS~_VDCbTmc&1SAYn|X! zp+0EI0inJq(HNnACpkghmRz~8|6(WDM`!@1m29Dbe{zCtg>u_E!RA7P`Z~czLW9w! z4&qCz%7sH9m#>6|mN~&sgib&^cu!~;M)KE%hM$FRuY~gO?s}p8mz>~}LL=5V!H0!L zqTc=_G-@_haYCap(Ena&%yUk#QfO?c6TCvG;NKYkfH0WOs?0~LJR5|wW?`cO-@@dA zO5osR*cc8Oj7kTU<^;PMvMP7C8i zjFSP5W1N41Q@Jn`P4^X{R%p6ggjyeVg6o9ZJc|A=wS&)=uymquL@LUdu{08ZtItxhnLU{UfPG5!lR8V0Qc z%l67eDVQ_A6H3L{9uaDcj<#E<35LbDgwk%rx41&-7h(PvYI>m)d|Jq}zzIGo)NHR4 zyice(3VXXy3#5CUP|Kc9Fev0a?F6q9%2?(E=L%*18D>PGR!f}VZ-iQ3?*yj-MMjN> z3c92z{f!_eCsBoIfdO!{P)k(S(?C#TovK4=PIcpKs`IMs zNiH&YJMJq!rk?0U{XkDV2dU~x<0Z2($X*O+dg3|8%mDK=z=nF_1ecSbCk}F1jiFxA z9EjfC#bu>|)x=oMTvk)C(v5Wxi*?4{3@neaK6P0wz-n%+H(izkR!d_&=dv=v$}rX= zE~_ zdVeD1Jc{{WD5D(Z7s^E4Zx?EXwy|EQH5MsP3bi>G`k#;&x%!h(+lMgg2(^Po`+K1* zG~G&}_NQa~6YB6I^gkh7{T@75sM8+oItX=M?gUGOx=eS16NI`#yd#9N^U(fQZUh58`f zmxcPCh4wGh59zKI>Oap3{#|Im6{vrqfgUG#hfpr2`s;-TVKTZ#XmC3xxL9b&N9g}T zLr=o4lh6sbIKi`ohG8_CE;Jl7;YmVymt*}el#db(6B_X+%(_A&Azh!)D3mfwX!IYT z{|Su&N);OW0oMOtQU(Pm`PV{)2hsk8#(j_VztDKp^qWExHaNkZLMLKS+$c2h4jhFL zn$!lfu25jH6TDlfD1!bkbkcj+brL!mqu_F(V)X3=LX-dD1TPaR`PvDdFLcUUCpc4R z$|ff`MW_@qohUSQmJ=K$Gz~3#u+a2Z(f@@`MV`9|owfv)386BKP#&Qfe{_OLLZ>fs zf!bUts(fI=dzMztF6+q5lHK*Dm*gXt;K{ z!8i$Pm!-yOf|W*NTWMTsoOE!~jB|!@64o$9#z|Pi3^z`~8m5PF64o%SjnfJ-XIjk3 z#%TjiYvUaFLV1Q-z7T3TaPULpKrLSgwVa%nz`=qU1IT8f4(DO~7wR|}`mazYi1|LD z&S*ln3w6PObe&Mw{?LDgvUfxO73wwv`md0$1Li-W?k%AI3i+Re)+y8@fbn0b=i^Rr ztWYluFDD4)pep+c^~Mm~O{fo0JE6Xq;93avyT}Qq2=#v%^IwD|8n6xb6$%YRSNK#Y zcRt2{BCW070E(}zwt{H5wtCVy32Upnjf3i)i|XZS>ssTWdgr2g$ysb1RPS6YQOUW; zIH=yaSfY|M!#Jqkxmco-GtoGx-nm$!k~7pesNT7#UUGcKLG{i>^^%ieoP<@^uVIxU zVb%4eaS~Qt?-?gy)wR<&39GI(;9w^NX*?p7{VUdg7Rrb8yIK0z8^;e$cjGKEPEV`~ zdtm-EDhE_AjQ>XU0fh>gZd5-|eNld+1|X*X7SmAUO|{jZkB>lFx;j+>7=vl!kV-ODG)!!wW)9lbqmlLY|Nl{D)98 z#P>I$=D&shBh&(I=vEK1=P;0z<22f;m7h6q? z!}=feF;^4sB23Y;LqXXmdLR@OjoEmi1EbQ$bA~Z9z-&zB*ktHGpPACz2zqR?>9G-) zl?oQm8lqO;c3Dlp;%P##wz#Zxu+oh6xXbc@)znyjbXm>8YG$n8yR4RAwJ_F|E-M2p zcOU$Gm(>caObb=&vf6;v+E`;;R$H*V#_H>`vcPI*tSpz+0j&1MYV5K)fz{Di-+pS6 z=mJ(}W9@cX*&i!D;KPR#v1Cf27@)oSlwLKP_Tv=tEI~t2G$A2`souZb{<&6 zjTLrTBf!cx)>|%X6j&pT^}Nd(1J-C`J?63sz#40;yTGbkTKF^ee}S+RLbq8dv>>?@ z>mP%SZifD2Fl7wJe}k#(p#K_dd=Az>2Ae>iooFzv6V^Wl)9--(XRv8ktbYu8(A7H_ zY=!`i!RFnd{}^m>H^%>cS^~6O1O3+^LI(F4%qYP8Z!q&KtbYu)x)=JN!Pf6#{xjHS z9>za|-ZRku4Ys`<`j5eOPhtIIFv|=5*C6)+D-3pkzH^bmj;pc$G1v(M%yfgDZ@~O# zunXic#$eZPu>LWa-4yzd!ESr8{xRq~4f?Oa?ikS_k{{{zOjc~2OflpxkGno4v z^gn}x(y;4fa4-hza}5r`7+7X-=x*%)8$4kp_CE~{8x8%}Al2i(2J?nu{bMj6((xJ` zfi;-N;K&nU|JbX-k3xg_-r(qeV*k(J7_6N?GB_4%(Om`$#zOx!Scs;)0nlC0Jqc(F zx`&Clp!+ky!eoTIS*Q`#sWn0=Xkp8QQc;ap3N>zm@(VS=V&OcYG{kbcP&&{lLQNyE zItzI)XN(kT_9s|fg_@)P^b%_E66#;5<%Kv0B;<65{ZA+ZT`szZ`O8F0`?pXl%nWrx zt?zPzdxhGZ?*#uP#O3`fLT%A-wg|OrjQww+EC}W?q4xj4{Vv%ew3{;M`zzYNP(RG@p9}ThjQL+^0MwCPLIct9 zUl7WTV*VEz^f2asp}`+v{uiP#@8IADRy0j3eg9>LgUa5nhA|h z#;F6L30Y3?$B!t36H%-Cg(mjK_$M?8xq4S9umGpngo-edZWB5QUHVy}lhNg$5GqDH zeMo5Xnb`jlD)~M3zl2UX8}@IZDQI;|g-X$DD}<(Ajr~udX&s&5IYQIlMgJE%^)}dl zgiiZ6u0Rkfn}A(sp&3QEuUzQ#GK~L1GaZWcNpxqn*df?Kiv5xNjF#eG7*#guTn(Cpi> z{t^1!Sy=xFUGzQHKSCGx#QI0*k^;>mQ*j=V1Q(fHGKc4c0$G3(>|u6*yZFNmxg>HcrAiI@vf0>*xdTE3Jfe z^oPbtSVzBPoP>4sI^!g)qaQL(!aDk9<0P!3tBiw%)XB!6# zt%Wdeku%viFmEk{d5fHp;8ZT`b{ONokgpWuzfgD7XlEh+3XK0kJ*qJN3-x>sx2gUi1A-&AXJbCgmNFi z_%Af*b&UT)gE3~T5E_Dc;%cFxFJSx^I$$fVu6bcPWEHF;2p|f0S_&*8P2qGZ=3TvbVB~GZdU5 z#%W@lVc?u#obUgovgd&_+&CW_X9PI;#(CX1qre$yoQ=jA1I}pUJYt*zaK;+v4sg)G z&{eM|8iAg$f?!edpV0n=8et@zFO-sm_Aiv$8|`1HaVNBYp(f}ZCkv%bL;Dv>N1q)o z)D-=*zmVs*X#YaZFpISpYL4065o$3Q?O&*6HQN8%%!~6^w11(DyP^LGWnyLXp-?OI zlU+isp@F>s6v^vMOSFeKA|NOIXaJ@CdAJb#dIb9e!4jQOb*P0?{aGJcqMJF@<-G|o zIkmLMcH}YH2s`rleP6w3M;<>n!j3$?XM`Pje8mVm^0>(eJM#FH5q9M9K_l$Q$m{g)YGw*QliFx&rVBh2=nYlPYUyBlG)|F%Y$?Z2rJ zX8ZpcO#=cj+y4P0%=Z7W5oY^;%Ludm?=-?}|IZp>w*S8yVYdH!j4<2(O-7jQe}xfd z`(I>)+5Rsz!fgMuj4<2(G$YLRKM{o4{zn0=(Z0*vJ%LStHRtqZ|9mQbo5iI?Y$sM06vgoBGPqMSuIIqHE?W^N9Y~=oY@R=Az#; z+VPdO6#cx>nZB|N(N7xP+E>;}^u0!VePwM#|H0^XzOuHWmmA&QSC%Dup3xnBWgSGH zYjkH{Strp`L7SaFAVfR=7z@+QSC*|X1B~wOEAxr&VssBrnIHPU5xqQRP_|Qz=q0c^ZwE57{(2#q^`9_Ev;KnyY1Y5fAkF&M z8>Cr3Xpm<8MFwfszuX|r`sW*@@%D6sH0zfbq*;HwL7MgR4AQLM-yqHUK7%ytw=+ny zeshB~>n9teS^tOEwGl$Iew{&@_4gR$y8kVMH0!@;kY@eo4AQK>+91vPe=$h2{+|re ztbe0Hn)O#2q*?!JgEZ^UGf1=kZw=C{f2Kj2^-B%XtUu8p&H5t^(yX6rkY@cJ25Hvs zV31~g#~{u6sRn7*KlGXkPqY4425HvcXOL$7cMQ_3|B6AH^`AFLv;Nb7+VJ^1fh_p< z3(>pzl#tp_-%w}!S@K!f}bQr3;qwUPzJQ%eMVJ;J+h8 z3;wG@wBTY}33w{S7TJST3Xu)qHL<|1UFSF#d;D0Mb z3w~IL7W|KdXuTJYNn(SqMxh!*@t zLbTu?e2Frk1^+9cxCMVN2xm=cBVTE~)>rBkJ;>-R zU#Tes-9VeAzMT*)^(};GsZSB2rT);13`a}-0U=uIKNX^-{(T`@>faEerGAGHE%h6O zXsLfnh?e@l2+>miXCYeZZx*7ZzD9_a`ej12)L$t?OZ}xnwA7y`L`(hYLbTMMB1B95 zi9)p0j})S%eh`t?@4bNHmii7L606Z;bi5i5zo6&wYW%|Jcs0Ifbi5j0G&)|5&lnxA z#=jaJuf{u!j#uOFjgD92BBSHgc#+ZZYMg0w2VZG>Rr5(kck-2X6g|S|F22&vqWge0 zTYR<-7yZLd$)KmFv4KBdc;4_WQF;c<20qQj@C4O(gfP4r#lBT+%nt=~ zi#EpY(cAbEKH7@Z;4`eaVY`^Inqj*T(3Ilg#-w4pADJ|4cL#uW+{jmEy|=Z|slGDn zy(vaF@s(Nc{ceZCr~AsR_wF;=<14e?yUXb2zB22*Ta0e$E3@AFl+hW!GV8tf8QscP zX1(`Dqucn(toK$K-PTuTy?4IRS-vvsz2_O-!B=M0KF#P(zA~%!@kV#?m07h9F*@5< z)>Y!~ZnV!=W>wzWXuq$_syxN$p1!gk3jf`9l|RQ<)=Tt0qx<;EdW+s=bU$BNU(s8P z9^fmp>VL}UTwj@0|9wUe_LU7%_#2HL>MI)}y2|KbzOoZU&o?^HS2kSqc}9=$mF0_` zX7ngu*+|jjjUMAG8!dW>(FMM;v7)U*&^GCRG(3N0kcQ`d z25ESH#~=;QuNb7^`FVphJU?xahUZ5N((rtbK^mTKF-XI6jX@foD-F`{TwxF@YVab1 zG(4YekcQ{!25ERMGDySo7=tuC4>3r?bB;k8o;w?);klJT8lKY(((wHARu!Ix=Wh(s z@cfxU8lK-bNW=5%25ETSW{`&GXAIKt{Fp%+p6@qE!}IM1X?VWYAPvt|25ER+V33CA zOAXTSe6B$np34l<@LX(=hUY?qG&~P8NW*hqgETy68>HdcYmkO#k3kxqqgzyX8lJy5 zNW*i)APvtS8KmKPmq8kycN(POd4oY}bx#_k;rSthG(6vBkcQ_Q4ASs?jX@fouQEu( z^BjXTJYQgthUb|EX?Q-xAPvtG0JY>8Ngx~ZAR*eAdkN9T+*yb==GH>AF*g;WjXC-} z-=&TD-$Jx8*9pu#CLbNeIAVeGUokFxR-ylRA z^9mu_n6DP1jd{Kh*P6c*qK)}%A=;Qv6{3y#WFgv^3x#N79xg;1bAKV)n7a$n#@t?r zHfBeNHs;1cv@!p*nKGb_`5PhHm_HYyjrl_%+L(6<(Z>9O5N*uQ3DL&<4OND4-o+LyY^JpR3n1=|_ z#@t(oHs-EEv@v^yXk%_BL>qIm5N*sqZlVlmW8N=B8}mLP+L+%JqK)}AA=;R?3DL&< ztPpL?PYBV*{E!fB%zqT3jrm3)+L&==2U4Srd8rU>%oRekF<&f18}m6rv@w?n(Z)Pk zh&JZ&LbNgG3(>|rP>43>9zwJ+cNC(HIa7!><}@MNn16YWd7+K@J0aSbBSN$>?-rts z`7I&Zm|qg2jd`;WZOl&#(Z>9!5N*u&3DL%UyAW;6*9pu!oA=;RWglJu!PLbNgO5TcEFgAi@ZPYKb+{1+kGnExz98}rRVv@zER(Z;+? zh&JXcg=k~GRERd_^Mq()K3#}5=2L`dV?L26W@FA1;o6w{ig0brT|~Gx=1dW;jX4#B zt@KdFA2&$-jj!}RH#)vV_?OY~CBhD)<4c66jgBu79x^(k zq7C_7A=;2%6QT`yn-Fct&kE6o{Dcr~$PWq8hWtk%+K_J)q76ADL>ux_A=;2DglI#) zSco>{bA)I^E)${+d9n~~$m4}*L(UhX4SAptZOA=@XhZHOL>qFZ5N*h5LbM_O@+?bE z8}fHTv>``?XhYsDL>uy3LbM^jBt#qXW+B>;pBADG`B5URLGJ^K+mLSok+=rE#^`th zyTa&r1G~`Zcmq4l=y(I0Xmq@R4Kq64zun@doyp(eVcM zw$bqhw%zD>16yNsyn#Jvbi9GxVsw1{d5zKW_2(5v_w<$8V&p=jb9|+?7&*=8KE6_0 zj7&7TpRd#wBg2f2uSI(r9bb#KHF~hG)D|O6j2`MMwZ+H}>s0<>zEWF^d}ef>uhbSJ zZyP9!3YYozaNR>f)5LsZ59z-rRNb}6O2I)bh%pg686dR-mkwSy?ATrD#J&5!* zNDm^}2I)b>Ymgp9JO=4OB)Ue0rw5Vm4bp>1#2`J0d}NTi^Dcw*AhHusYmes$gy<}!NQllt#sbB+>j#5KoMU}P z$LH8qMmO=4HpcqTh;&bB8utI6(wp(wHEeWzc74a_`0TpV==kiq7PPqs`MVI^gWNAf z_aJu&(LKoZLUa#ujS$^~EEb}BkaDVbyEA7A(LKm?A-V@SNr>)23WVq$WS9`$ zgY*-kdk~)x-GgKiNhxUw6yF$629YSRZ=Mt#7ua5-OmaQ_+su1!cKytIjf*++UL>3_^TLOs_M`jI;YLbw+D0Dl;BgMz z0`9#wc9>&^v+N(3jCq)2R%F0O6r$_otvA>_10^SKos6&(PmU3G;;E4lcH-&Za5;;2 z?8H;p2s`ogz7clf=~W}_#M5RY?8MV*BkaV}Lq^z%r#ps_0^U*&QCSrngz)0Mpw0-Zf{%=_DtN;PtAedYSQR`CVjb59=IZdOcX3qn zJ_}$Xzr_d>dB_M8`C=nX?=iwezRL&``F0~rK7PcBEQ%O6FKfW;yWgC__HQqBA)LVNUpI>(EW`tL1!Cbf`;#AzHNeTVuT6$ z5LS11VuJqC2ov;fBTUe|h8Mw1(A$hKLDP_mCno5>8DWC{lMyE98;mePR~tb=S6qdc zDddWI02FY=?*J&=idg^@Y(*IWg<4SpK!H}A2tZ+0i~^t_D~142h!uSRD8Pzt02E$D z761iT;jDWALPI-k>QwV^aR4_LI2lcx3^=LEI1RSqvvAky4BUV|CCAAO;0E*poRLhz zkO{v^Tj!X^+R3=>2=`+Y;A)|QLMLM)-WZ=tfU8=^XA|JQ)$#IET@ao|cb+(Gxg&*< z6o;-#ulonRCFk;OCkGc3<-kKNFMY+^yy%q|zS_$(!flUud477NA{vdt!S6KQ$3!pg zt*@Dx^l)O=nAR(WS0_8Me{w*%Hq1?XQNvXw!G{INdd2Mn15-j@2157&pRHOM&U8BBgW*{zx* z?>AWXa5-fd4v#@GR zYQ@F8%)Yt{NNVfIxtm6gn?{bC2JUfI8gOWh!K4@$9%kY)M~g2-ApDGojX4#WkzdM&J}2+h;EzL0#BzY4yyc(B{pNl&U>x za2H6`X!UX5(@3-r_H!-WM0saeFMbM=Um6`}E_x&ax&6;c*Z0B81$4B=}bu zdnZtHlf9E4h82h};2KQa#1eI?_qng<;1_=1i$jNT9aAwb@x%Q~2czD1DiL4)BYr-{ zmJi0K;+pmTTu_l;_-4&2yB9N5Q;7uGeh>0DbNn3Quwk|9cMPk+-=?su{PY*kYe_Zh z;abw23WMvp6G!h*3jEZkM;aqJT;qgFTjjqS6^M#prJ?(|1nLdd=@O`&YTa^*U`N;9 zUAWv9DWmaD(eEmMfqtv){@VYKTOoy(i}V7a7XwvaG}?%Q!Lj+cw{cN59i0RI8py}K zLvx0Kv-3%Gc3x2tZxpqw^?Kx1Oih>zo8k4yLboy~S@5tPMfAKJ4x1x}t;A-10!i{>nSg1Y> z#oAz~f{Km|1!vsr{WHMByQZrAxs%E+^dDMVTH^_CRQwm3=zjb$h37 z1slI4u{*7=?;6`B6QqsEae+W_=-c8@gcsGPBfoqJJ%P_~qR0(dppfV`UlfN9MZHbk zKx9|U<%k*pV&ZcY@U!qz53UbIG^8QOc(y(ZUx1OH#o!#nj>~B!kRQQ@ECDJL<>v<` zb@TZaJ7joV3p_EY@Y0^ye88mZCLBW^(3d2Sx>2$Ggc~KkkLv@MUxAwu+VC+;8Q#}C zG5V-?mxdt>4N-3fLgJeHsCN=7NW3JE$ougj>z6$V>yDNoevtAKnl`GP`e zs;_dXK#gR&zC8XEg8d4akYF!BFkCDVKDCFgvJ$V<Gv9S7EkkN)1xF?$p}l(sd6)*S!NT25MWRw4kn=x-5{q zGr9-r(vX%=%s9y6F~~L|Ijv_jK8T>2H-SF@j=X?;#1!3I5I&~pa&B67n2IhA)uk(* z4;n_hAtBm(T#Ol{aS%8%Ptlsn`+%a-!Z3KUMRh~-205H3(sFp3iy74j;7Bh-1^kh6 z9xv2$Zb4Y6`w|MZf`$6t3SQUnm6sD+QN4=?hYPp+km!{9gl}1yN8Gk{=xt2xFLE~dtWJk}zI64Qn;{|^pm0gh=c^{oY zd(Rx?bteyIY`0K~D;CzNejGt{*-hk+d0e4xU4}Au~dy`P@$epg?fRLd6zA1@LHuFS8F_HG#nqD%xY8IK;P}sRN$yn z;#pfs1cVYZsmck?&0~vTroGfvyqAptqX+jT%ftgPm-X8z%1r#-J+d?T( z`LR1kd3*f)bX*P{$wn&+9C43agZp)*peG^aLJpBhg=!O+-ov%~@I~`_KOZHRujb5~ z4ydI_F|Lx*6;^0SucGm?h`9k=vR0ovXi%6APoEvX)SOFwTuY2{aLdQto^Tb*(Uo91 zxYdgfqtqS2oWHL~#Ke zE+Dl=YkBL8jJp@E|K#Q2JI@KDT@^Zu(l>lsA2uvKhdg z@p;I$-S@TVT+H>qQsTVrG?0%xIn`4{BQx7mbCQmgk(;h`GeW%w1xKd}7a(Q#*7sO; z&~vD9!I3krA7{Zb*{ZW7Ggba7e^(MCtJP`CCsWt4$2Zv%Xd38zcx`<8gq2W$cOVfc zMWgGBY;7raL9yK|7xi9s7R0I6f#8)1uOm5CSRR!X3(d|Oh ze8z;8qvB1aDDh>w?A>NEd6Ne7Qxt4ybY~Ucjwrmr{thJ+SFocI0BmF5J#Y>`sAN z>qn?r_N*a$>U)+`t?S&5?pYHOe<`daz4 zBGluaBGgxSdm3*WFHh6h9({`s4sx~Ax~OKT|EP!M{+-47UoC!`uRO`Huem0lG^8c~-F7S00)!u*778-1E zr_zlQJQ?+P0R;dbF zwPL{nDU`NcE#+1bp;f@WO@VUj1(5xIe{1I1mn1D0kG`M(`#<~BW}dmvtXZ>Wtu9N-u?3=!)I^pK_#-$>zKa- zdg`nr4T*7Eu{EOn;<*+l{|uwo?*QsYzQZF371lqTi$^?ucWu%*`+o{I`&bMXRVa4;N8>8uTf6>cHTYx z%TsDFDo1-iS0pywas#FGfA=)I${IQv`l_M)%}%7Tr%%7h!d?9I=|kf2xAXF4YgnDO z|HCIA-7B@FBHi}d@4%-|U;IvqRVxDk2Opk3JwqPgGKBIZEBDrJ z@r3NSg0X=Y-}LvBAiF#Q9Q2$VzPkJRsY2?(5pwF29u9G9TH(v9Z)hph}7AK<;=Mh-UWK!6bP7316qZ6kPQ3?5up917Dt<=Iaz0vN|`Xt6iO) zKP8A4Xn(kaLAW}s_3Ukoc;t?I_3~`)+22V6p8eg->g`Cufg!0ZoOOMbF7oIwvIzZa zp}d9Y-(PmK=D(2s+vD^kuXK6DsCttaE9iJ<*=w%oNI zPCcf8&#r7e@h-`aR928zOV&ySrS3L?F;V*J^u78<`qz2oi_piD-c%o-YcxYc&z-@q zaiP@sBeIIRkEjQI|54tqwq|bz5Q*;dO!0s)bP6CciCE%mIlUOd)`}>bNtnlku|YQv zrYjbEO%>C990K+uLG|*;wHGjbma?F6Pv^zGlg6%{H1@tpV|&L^&y!<&GjJ7@4|66- zqcT#?#;UeFY9r@JgM#u z{syyFXyC+-YjES;hX*|)cMq!9#8V%Rr;aO&k6UqRbHIrOevCw7->o)?AB74OXU&fJ z%887%Q&$A5CRR`?-ibBd4dkwx*zDAhSDm}EJ*kk)RTK83_Jbo=N!mm|h@B2sbORDC<@vFn( zS3UUE;qYtNKZal1t!fAO1sxdi0r6|f2gR=s2R)-pgX)#>)b8=rW#HHAk=dI;gy8l( zj=jmI@sJq@AUsAo7Aa2DuOV{lE* z=Q`KUD39D4FYUPRiq8tUTW{F4wG^yNe@Hb+nAQ)9gQR0uBg^pVK57cq+q=&2FY?AW!5)Dw_X zr}ecBaoM4XoQmZ2C#SO2d5`4OZ3)+VdRi}nDvzUaj->uGs@o1pZ73kA(;=x-jHE(d z`;pX%?}enA)yR7xsXKqJXC$)yS|h2ag7S}DdRo9aIDSS_xAD05uoc@P!f<>+x4ufq%s3>G2d+`(Db3r!f1#`cRxb18a)=N@Mi1(KA2i zP!TOX`axSWrU+5P`1&wjOTWc)YDEoY^+o~i*8ZO|!wYb=-`fAOB}db1+DIX5o!0(5 zYAzOZSsbPcSzB!FCxo@XBbKzh4moASV+*C201_Azuz&>MshULBM(}x~`z-6bQd8oe zR;kFfY85*$LLSvCPZ|7xw#KyZ2e?bkT@vfXjf@Jn&N^%d%NPW@qVV;^C)kA8q;z5w zeE3%UFbkn>`FgX@E8Hj3wnTl`T-&J763al1pqy%g*(f^@N1GSgdeR<8()(47{4L(E zYUFRjFS9CZKKXhT4p_x~M9QysMum*TdifcNW~Hxon|{h)r}C&buyDU8MLF904DuFS zYIJD9rL8c&o7GHfUg~(WuT#?qXO8EKvEpft6%Ujel_uP495tmDR;voG3e=PxBK9mP z*~7vD^^(w;0}BliagBS@?k1DM>tJS|O`>8Z>b7$FS)yPGSij{v=vii4lj&^{Ja7em z<%4ILYdSd$1C>4n_TuKvEj!#sC@>Ukh0VR@&i61~=wWKce(V8y13+!ARY-D{1;gQNC~17xIt= z`r}y}*HNR$Ri(&P73OJ?j@QT^Pdyf-=>OP1CVHj;5dKs~_URx-$+4DfNWILKx~X0} zCONtWQk{teVIs?|q-#k19lIFxN|x%pd@8p6U8>QloNiXdQ(NQJy^-s>EkGOJJ)_43 z)mzmlTBa1^RzzlRLU0RGPX%{|3q`Q+tHGUlwBdy5#a03h4BFqqAm#z($Ub1QBX$Sc z59sVor2ftcJ<15S{L#dh%y5#8{bQyCM?3Uzs92Y33X1Ftedfva#4zYy;x^0)H}oQ0 z=*Lv)C0RXFYXxose04J!dsm;`rWy9Q>+yFli#>+}lt=Kn!F`rx#GL%g+919|jSv$8 zWu0rykcY|qR^RBzX}z~g4j6kMf_UnkvAvPg?yF}S*CZH{Lk)E3S3rjvr5xr{S~80i zLNsZ1riltt^NrvpQcJv1shhnb$mM`fq-BoWQFCLJxB=;Ee7MbS!fWw+f~R$jc67uN zgw^Azt;ZwVKow+wCPNecuItT2tzHCM2}da5H06SZo{yW{HuUl2Jd5#6>Yi|DJpgZP=$>$(ARj2YR?!PwbbL~GJfVTvP3fFY zps-*SP!79-wIx)GzyEWbo1*x;KOw=);lD>-tO0_34>a<#Y zt2ul(3XF~Qsmaqc3PB<@`CP@SHN>_E(&b7*bG|W)g6dP(b>IZ4;VM0mx*VJJ$&jnh zvwmD2q)uz@`bN^?x3YSOBIUQjq+8iPBO>$Y(oOBMsy-Qbb?ypJZzBd6zOQvqBNkLW4?P-VLKlapVLMU z#H&<_>U61l%={WLOe#9xi^m)r6X|Ft7~NADj@(M`)_S*5?y8AX9WT=*U*;{(%V;q5 z6EC9y48Jva;kO1%KayyOv=(Um1rPWdjY>)8O5;h;-O+YD^T9-V0Ie zOr7sJBYK-G)`)7iMo92g?m^^ZVnp3i$2TjH zBr@jXxqObc&}k}4Eo8zniyg1Wcb&f1xp3yWXZktqs#4Sh$;eu&n)xO@v)s$cLfChe zll#<}q7|im>(CjkqV$W1%0>^X6 zgUPjLS<8&PPXs13$pGTWTjm8v=ns8Xg#MYsLPB38uj&Ghej2uAv2_S3resU6e}Ut@ zE&wIL7(x8jn`7%Oepzfa%aTji^qi$r0O^inQj1$(qj&(fPA;%&5tJKqh41e&DS%9$ zMp#thCdHGOy)(wxdzx*0DArY%`HNMzhyZd*Qc~i@iYI4NqWk99QcJunR-1&iMW}z0Z4kF3YR+W?s!z_J=ORoUZza~IYiKdK{N|m_c)?1AHB$zqP35jQ! zq%TNozE)-d)2Tb7`+bI$`BtwE1MM!a4@Dy-ra&_6`t3j6jd92ID{SdTQkqBb?)(ok z9*uxBiNzCDsxOIFyAfMr^0lw*H-`w1ueT`W)u3tbQJWjf|6CsV?UI-l>Rq0wXQXss zK3M)jRebpiW$|4$$9GvNaa&aDxTw1V|y5@7o{7IzWnxMD~I$ z++7k=Ili(Js7%mNl%S*OE9hwE3OcnU6?E#%oo@&J1Ra^fYyLHvyD-*_E9gu$7r_Hp z&}owkbaa9<2OYcDBZSU8#pIyVc|Ts(vdZq(*#0QuMj*yZdMU#%-EuSY7{TcrO=m~B z-@`6k0k4{QT;;oR=&s61O+Pbr{OLM{%g#ARZjP^DkEJq^I-`p7rRY?yVh8=4I+)J@ z)ox>5*M&`R$COf%Q9p#@OKmVwgW>mZ-F&bc#9GFn7{!&?58}QX+#vQUKZB_2V!}aG zMh)T~gxMfkNmQmvG@n$CuPjAn8bn2D5Eq-E@#KHTUM&I&+uB)|0nwC605h$G1}nsSj{kBF;XokPv(v3lXaLag0{xg8_EG-J5U&k=HC8z3 zr&vh^Srs72R+!u2*HEvefJW3<_S6ZI2(P+Foqo%NkEm-!OyTA zNGB*~qj!h#l7K8e(z!sefp0)CbvuyHQ^`_@<>1ywf3@V=-(+m*3Mbl3N2npU6a9jT zSdeCgOpU;n3uXmJPT(vKtH%LYkyQ7JaeIlunTs!*bj zYRp+8sm`1wl4H96?@2)3cB#W{Kwj@QAejIX3~VA8tjC{GU8p`9M9meD-sv5LL4|5A zbTzrnJMhU&@K;7=A4Rfap`=*NwO9o*0~g?CqaO#Yv~#lEI`s+tP(zBXc5ChewpT2wT%YBP6)KB4? z+~eDAE$08%8xU;sq^Os6=qHl%KFJRT1i$%*4G6wsBy9Xm4~b5l7|U@Rh4!aa zaH%`uH!c|CDAxA)jg!Loe_5bBtfznvT;aR%8^Tttfn|oZ zUi*W1C=OK`)Jlu*@EhmO&_Lm}7LH7ybOrluA_b;#ZRSHd)2Wug>kiSlY8pu6s_D_4 z<2PpEBXI|gBp_=Q?gIR5tMyeDF5^4oH-tg&f!|1}q8&{3Qfr9YZcJZqt#BU4ZiL%v z#qAt3v8bK4t=2`}h`$g))M1_qW*^Z}6PV^AUPN0=eh=yQjQR&;L?|U)_Gz+HpYaN} z0Tlg`GK9MRQB6dd{oZdB3;hyN!G)We?CfYZ`t5z-Dt_*%hI*)N(EB$N$HDq6$X=KRYGuuUtY>QrptM zf<#e~aYMZ=()vAZ?Hivn*Z76Ufrv5`Yf#KPgR;=z6?jdf3%l7E2On ziL=oU?JN31n+cMf)}<)3KblQ1`Xzo|t@Vke?8_&9Mu`hWoNK9X`y$Sf43ElQZ*`zB zCAAmHU)jsa|E3%&lK+*Me`MVCqxU)aKdt=8|C?|nflAM(jFSJWcJcDRl|*F@L`$qv zUs(s0nbwl}p;*|o@u5OqroiRv(U@Kzdy&swmIuo>RMsP(X7I&#c}O=As#1Y$E3THk z5-QG#qUGLWqG+Y})G1kw_cXp1xdh1#-+7U1>SN7#^C~j6IU`0hfay1k_Lw0p!UB3K zecNL7m=ZO!R55yKXRxV2k!UT#YiONqj;$v^(qUQ=NQav&fiq4qYAxV0sKao)bSRpD zbeOU0NB*@95fxWUa#Ew(;-p5*gPob5%%C(YWgQ{vEbE9mTv2PyP+3Pb$&bBXivpW1 z(C=!Ag!{y8xJJT7yF|k0D1!Z_UQ6I;m`L~{{CN`o6MQ7T8Ar%$8ZbzB6@HIjv5z}s zHvLc$GAl9Zgv?`CI%JmSOvo(F*&Z4k@K70r%x9pFF=dvOL}jW(>xRnlmHqZ(4w)4t zSy7FZ3dPC=UsY~H>iPKc7dh9mBv$5iQ{{5Oo=Ra&rS}-x)_9MhZJqZxv~9#!fVRze zES_kYwmO@*8M zC{huhb!*y%C|jpjz81O0ZtFB6dr;H;htApP!ybI)WdqnY2LM2uA%t}-Xh?|2i@En&UwWZ{Y=1?FdG09V6l*dLDV zR0ZO(u@%b8V`JOpJ&npU&wH9#1_G`gvi2C(oEJncep!E3o)?*x&W!L2rU0U!7EDdQ z@LQFK-!1-|B&rM;FgusT#AmQzE>dh}sm@#jNmHT%Spm?a_R}AA^Jpu0R;(0OV&!HY zJ$$#DM@c1O9!dH7aiTPjlu`5OAY7YAR#I-*fG`ohvP-B;tDKE!%2a&|ZTJLX4WDMu z9MT)Kw;dS04lFuGEKBf}noPKDK)igg(1r8xt=0yPvk8O?u z8)1(%*RIXGV|QBIv(vAaJEd%ku9j;1m_a36>`!KONWGJu2yUuShkZ+8NfP;Px2X`i zZBb#jg@Ed2m)x+M^SsBpxyXC0n@hdNy1CkWTsPO@E9z#N072An8|^Yc6?*%gr^k&^ zdX_|iMZ!%*=DVnHKR9WD{x71pvW>L`lRLduo1bkubDcSY7MCP`N%bNviPS>30HuZ0*en#^E~tJMT!LJ$~BUdQ-Ry%Bnrpmwq6yNIrrud$mY7iOz$0|c>=Y5NnPl1 z{SZK7*RyQn*mC^BEsnFbixHQOhUxq>!CEeoS;g+e9TxL^{M z;VQje0deUUx%3Jk{W&&|7sk3QJ@*Iu^qOrheVa?K0MehJdYK)yif4APE90nLkm4o^ zDq5P$c#O-a05aC7VA6_}5N<7C1ms`s{bKi(UyPuuSTEQD00oeL1RIe`A1I#ujv0hH zdB1Q}`8C^I{<~a$1(1KC&%ef}Px|^bAJvgIW!7@;GS7CI6+q@XL7mE*6i;G~D#KuV z&s60UEps^oms0`ceAee&?-MsGr%0WOX;MzN5Nag9{v%re6+q6b;oC)Wrs6e{qnvH> zn6XQ>)-1m2BGmv>wIDv$VuJV|AL4t}#7g=nx7NFja#s~uWnyX1h2NRum4SvVQU>OR zFwWD$X`|eFqou8Qy-{KU$*}9e%iMaiSYFl}QI&8LQW>@0+(aF=-dIUg=J4F@FZjx` z<&N-L6wu-D9E=!^k%9bgDRlV;1d+M1-|)H1{c!NVRE5j`T!lqh2jN=3nTv5zyu`^&eLRO?8N%X>2OxG7^=U zg|t&ZOfx_NqNbzo*C*(gx-wN$r-=DgVoDGY|GdI&XKzw|fVdU6oTxCPfcS5rBxfa2 znIi&Nz>?Tkc6-DD(V_%Ii8>+%YPJyr%~QHqViOtm7gwMuH<#=3%*DvZ-1)I8bK&pI zMZhq3VXV$vSS?(E#_S^~rwPA6qZQhLCZ(B2Yg?33w3pWS){dmL>ft6u6@f;HJ!n4K z>p;_{M1UrV8-hj|1)9l#-|)*yqB2MCmRO~}vLAfdfySaj(1`8{G)DJ4Xu4DpSThG# zpqXbb@}{{+KjvZ!WG>bO=7MeJVhd#M&9ODO0?j&ey%`dqN#l2*xmdN++A;$XK&H#S zwXf{zK+~nDBG4$Y2hGv#=5yg`va26=>F*i=M$;^bF?CH#Lc^&@4Q* zLYuqLo+8lBe+7PlrqWy_d|ZL1j7B@q)H2=0h)A;|W>_nvwKg5Kz>ex`%u{)ORsAFH}QFnDrxpN(B zl7~RYjku0YwJ?Yut~%CcE(Q_i!q1yK--I`HY@Yeq4mWpUY>~N$9JuP(Qgh+maMiKZ za;;;x2&w5L$<^pcGt#0+beCH4+Z54{c^uWARGX12Q7TEX#Icd?kz9?W z!`N3agq!P&zeY+1G?+Uo%#IQ}tpD3aQ-bW>Y>%xG7LRNr@;> zMqGV~)Ms=viY_Ch1Wwanq)3&t*s8|j$7y#7<0=6EegjR=_Z+o1b$p$^yWDr6@1*-~ zRAFr-XwnA_lMQ|XlWH#Q(MK~Mu|?Kgiuoe^qz8Xa28sl#t4)`=x3S zXRlq!Mu4aA_4o_#XQ=bx;_%=5`HNuWw(-S;I2+( z34`(nHU`tnVjFdYswvRRZtbU+U8v$%P8Q&D@9>_cmz9U(>R;?<7v-Dy-J$)O=yH3~ zW@i=sHslAghq4a(7NxJ|O_I#6Y6t30fl5Dp_u7~H)`01!@J;S>hxSmNwr%K6{w*NA zwH$lHA$X$CN&WzhZ+wBvldq@Jc+ zOkrylZW2F+2bY%gnXV&oJsk6|Z;Ljs)tKDowVLBio^_RX zr7ni4(w#Bb{>!|Z$zped2^0!}&xB*sY!?vhArhv#l(o#wCTdHc|H#p zJ`%b-lvHNf?QFeeCSEDl51vx$_U=}$>43ZkvMp~^ku4OZ4UaYz3Fw>U2jX)mQtYBM zkt)8cJE=;1>D{yN$V5U@_`Fnir@W;60d80Kb@DNsNxA(`b2k&h@ohL;7;Se`nyXcP zR%>#X@eF>_b32T~^VGF{S~KHft#lRH=%1h-#-?f_L^_{lrWuR`4=yrtlSS7=844R; z(0cy+I^Ld{Y=nc&R$2trV0^=mW_@Ub&Jl>2v6)Z@0av#cov5ZrX22^@r~x@p_!C4M z9bstvkqE<^Z=DWdDB53XgLn4(E6t(^rl;RTZK4Rx>5^M)dqDy8y@aWZ^#{w5C17VT zmvGfDETIBOs29j3bxE)?4VO>9NvL84Z<%Xqd zTw{L<#Mxv~0FA9tXK2(M#q+p8xhk87N0qNvVT_3i(E`&bkF|&avX)f&Yh9|`Nx(th z!esiX_d99!wM05}Td!nNcc8;O2|e`5p%Gn5#r0I@YKz0qc8Hy(qRb@>GpZLl%%F9> zglh|ADqA2Cjr^*KWdyy)WiDgFG>{Q(6+0lb@Qc!yx3Vaqr0!Bwk-AZd`A3Fb=l!?a z1SwY{X<~7sM1>ipZWL-cO{@}8nJQ6bD#us$<`zv!SAPy4Rmew4W0qKRV^KbLxtpDj zN>FN)%G%`-VU6mP6+|Vj2Chmj17)LF>phi<3B1R4uA984PBBxx2Qiv0X*|O5B(Bh+ z3pX>`a0hJyIHksGUiik3r}1j56lleeQerX-Qm5SLAeB@iAk~E%n)xWBAoVbH7^JKu zAmwHw`eYLL%GPXlkW!T9j+>A)+WZSm{b=Y*mK+ood5=M1srMKZR(p>@VV(CF6w-JE z1*r!G1+^)oTa7e?B?b*5>78%b5j0FtNGhrbUzFHG;fMte3S~+J6v}ZcJiaKSpr9rh z6s#oS3z-FSmE$YB{|%2XL)Nre*?xPnHd+z=;fyvLwX=RF3EM(;6b zG<%OhqXm!AJ=~0p(FBF04K1o)0)4~A(l9|m9WI7~5)&v~*y9Hd3R=1a1x@Y{3Q8j= z+>L8cu#%|E5ihWk#J;i>uRACxN>G@CtKKdkiC8XMKH!*o&F`=7GbmKcD69HpEq7-+ zBcSz4L!9;2DH?&eW-4GUGvs35!YW$mG^VL-!SYO*b|JC*dNSDM{`Wx87CM_S2$^WE zxVTDluXpxegW7#fhq0Yv3NsXEm8jj?67Do4S}X@ad;Q!g7_|EJQ@~m8RWfutsa`_2 zjhsTa7nt9jZ^zmUi?b=lm%yJ?DgAmz0p*>NbG8z01?3%22bc}oU~P%qS|5vawX4|7 zg(ka<|Hchks9$+a3$_0_eOmWELFXS^4+^?R1nrq&OSN|#L?-HWmCv+Fv_7Quqx}8k zjH3c>RZ6d>w7wdzJ5j(Y()aDds~%`7v*}$x{5#tSGMi>I3%c`Fu%qXyw)Bg1;!Y95 z@U0vxB|GK@5^&XfziihL+BZ}e%Pa3M$=0_^HagCyEi5J*J%do0d_3?=vr`WHm$yy{ z#;uyU6Yu=YD7`1RaFsJl;bnQQiqDSOo6IhU!Gr7Z65YqBFXPqT;=a84%IPHy-IoFV zEoqtM6-ICI-FcWan4lCzWur?i^x1S3P3#xTi=*EqHr~F{%Ds$oWy+qF(E2`UpZjUla)Wd(<5So?8nB0&*M1M2{j=7MOdV+k z4$7;W!a;Fq(^@(Nj1#S~-y=F~EH1bCFpURk>(SQM1FWqaDY={%uQ#_wRL&kW)NrJ) zI%wCcNoU;?w67}j-pe0gN%K4QWJkq3W1us^)tz>P{qpJeRx*YxB~+7ubamIQ*i zB(ZY6HJCrx6X~=oIrKQgMiWqm#S)g(KWly`BThMq)C)XGo{g?1P5dsx^h>&e+0C#w zcWxoblJel*Vp}78wHEs;7n}a^6{JF9lqf{LZIMnFV^^S}!z{_%&L2reZIDB*=Bn3w znC@P#Dm#~~>$s32xdWv??X(+uLc)Dc1w^y5?-I$Nx`=wXH6Z`8XWuFPV?^)~Jju5u z8{G`)>^o#&65X|Zd_^DIC{lZb#pd5ub_;?=Ag87>1GQ{)Ath?2kG{o?Tao-E_Ay|{ zdS+sqbhq7nhM+DWA+4g-(pQ~Y6G)^f54vaS0o9qhgXUb_2s2Ih*i4gP)5>vpQ~^m^ zp!+b?5-B>gm`D*a4_DIB0=X1bCC?%YM4+%h!~v-Z%6JDY(lHGZAEX`*Qm`}DMt3P- zc$i6+iekfMfwPST-DPocck;pFgC%{wB!{Gve6sEgc=xC z6Y1QNPsoe2a}7AzXj_=jI%5g@l+fwatmm8^p-g2F{OEs}MMLe%UP~5xt<3|A84)$n2GZ_DcnjRC^L9BZ5nn zU`$EIHkW8sU2ZDtqAy1WG7)P}ailmgQGm=}RpNl0JacLk1iHTjI&JSx_fJI+ToFck z2NdBd@4I+lHcxxv17rM?^7{&U`L5)tlCfs{yM-eg{g^(O04xX`&f+|lMex{psYM+2 z=1Yua>g5U9C&+4^qQ2!P?R5vLf ze39CwcRa0m7ZwHDi_lF)L9~^5Q5>Z1aekOU-}*87g#3Q{CS%EbXvBwJLudgnqt7Dx zENMKRdOb+}9nmS4WbE~me3-=L>DjSs$KD73_M+-@fkBUx)w0pqCOy07oJDXPEk>{* zEBYXnP eAoWFhJ_A1gqKaVEBvBs}04!U@HO{s4s&TVwd}8BZHI`eAPE8x?R3)qR zuW=G!ZlK1m=4-rOW^ybHO+kwFyQs5HG32UV3m-mc)!#NDxwvXkufeMhQm5pr-ijC{ z($}W?8@2918ny#%_@Kh-wN(9G*>gbO^@F$LRNsykwWCh$2#VWLFb3J^V|@i9pmtnW z)Q(PLg+35GmLR1{LtY~~L{ncZ*R;-zh*Iq z#)>1FveB<70(I3WYbrC!9;iJ-p{X={NEdxA^A-<3Ck_Z7T-#~-hc;e337k8CtSX^|03kwkYamU)zc;5+jd=k|@k(>Godh#A>j_~baVgW<|X zr#(w|i7YRSWQH+f+34qeBrgVh%z&h^tyCm0nIA%=GzeBU&z|Q~Fx}zMv(fUx6hUE% zI;9A*(U+d_WvKNE8#sIqkffpWxz^os4S<-vkd6MD@PVUu1EJER?E3wF99IFq)xI&% zfi*E(!(xWH>|K^I*i0bkyoE?ee?@FgJ1?qT6WnE?hWorHS@Rbny1^(YKzWdQHK@Kn z7`NuKrl55B^xE~Lar9UU{3!8x?XUMzXEur&bU?&nXpmu9su;2yZ`q*y(`Q5(#9E6KOs)vbxN zKd4Ux`troMSS-@9n-K)6IJRp~_YNviLFxsKF;nd=I2=7-yWA&pk8W?24^m$jjJv0G zDvy6AQtt6jj=UipjLm9gu44*ieosn?0n~OhwMhZ0UKPAZOB~f%=f3VMJK2gyA@olA zcYLb;2?`=3X(zG$H7phxHK`hW1QI8l;cy8n&N3 zmQ7k-@ksO>c&|uh-`GUzjq}dSzwd5sJFd&W2utFkCt;sQ@mB9&M1Iy@M2^K~JQz>C zbbQZ&yxRQtU6yKigUGRItF&-rCEHeju|X=69)7kT;Yi27dw5g|n()a7q8U@I<2FV* z^%kKX73_2Bg|beZ&_`Fe)*tH*b#L0$Tm;-m*WQ}uM>d!O|@_{Cg* zzH2X8oA_-Lq_CbXVLh+^nR+t##`XfiE<_Qny!s_UBsYDvQV842{94uglqUR&pqS{N zbgk&@xqlR$?F0D{9Q|Tam^Y@p2!M0H;|LE-)M@23EZm zMC6XUC$#sLO<0~D8gx%Co758|C-pRDkL?-xxSAPHJsN+suf8i$gVCjpc(g|3Av|iE^@ObxHA2wt{a$9NZ89l+KeArOJ zhO|x|mL@2dc^H91TMwDgQ}<@i$a{U!zL1@W8`ipeaybP*5`Q#9(_%XxUD`T~N{82@ zDNFr18=V2zPrpY??E&gk*U2^6#X|__8GlcQz_^#d#Ct8~DR-Xb<{65oKt?X6*FpEe zLFbE+j>`qh)LZc!Jzfb05Hd~VK}4?nxH8?4i2u#(VLFx%~5%JO$)1S{sEtLcx3cC)a5i#|Dc{~n-1*S{;n{(bT3LHc*57PJqupq&mtc%l0wLBHR+_U=9X zNZ8ZX-xT(;pkws6PThg+@EYlYj*WdW(IYy~cEh@A*PoB)#w#ejclz_-)2W?8uI49C zm*r2ZR!s)>8MDD@y7ihNQV~GkS~477_B`s{+$V} zrKkpi)7K;{EAvmrPd`0ZP`7}hg7Qyt+X||3KHX!N|vydY)V-n)*2cE4pIHjHs!GQPolVa z?ERG5-!SgwNavNdim|11K658CZ97ZYpwq)vu%}MT)p12}9s9dFSiX+5<%>FYQXL1n zL&ePxef-h`|x=82?ZqVq>yL*nTXK# z=CWjBwgl|f^W~o9YDk?&t9U(-Y_9+VvhAssCaO0;VKoy{Be~E!KJNFC&L#4;uc#_m zrgO#WoJBlx$EqSmP|f#zpz0}L12v~B`XK8#nm+mYqqcd*Sb2)L!6`O>GR&U@n`)2t z(V-c?AHWH!)c306hdbo$sx4%eI}fu9q0CqH72gT6}j~~(ed8&aESa?C}1A9 zzyJ6kxP3~9+dEvh42t5>3&%>>{e>w;e-Ou(X^1KZpm&@JrN!kn8fBXbIV^nHCe!cK z+I~202wsL8VKZh1 zJ<}`Ye}~Ibm@?Dw*U0~p^J5UNZLBTnXPh6cgAV*{Nk8oTN8@jn|4!#W5PysOKX?8; zgZ928ewx9A!&2wW316IW)`YV&XKe;=3q$VN4)zQLtRd(-Cwkbj7=alD@XaI8??MEs zW?9eN;t=RhR}Q3!kAO9x&`*it-LT&~6f*od8Jm$*0p3Jz-4tYb6y&grA3eRqutz)} z8jSAgj!>F+WkcyZk=e$qcTcadWZCG^6Xas`!y2X)2n>cz82+jaq*R+YJJqs z1-Y;#R#f1l`qrvI<+}8%1ULEM$1GU&TzVeCQ+@Cq7QCXN^zBPOPjH(L{&85y3zyag z?Y~P>MM>-K8a2rxQea7e(Yo{4-oBAz*P6Z|QTpnoBN;pFVb0W8iZ}nk6$0J959emz zgAbxOdj!RT=|A=g%qU}sVW{*U)EcDjw&G5|XKe53_dNLEl%RWf(A`o7d|S~N?lqD$ zccGCe$)c|yV~NYX60gsBhH8%5yuaz8f|{KWkYCS`q=t{ZFF2~~D@O#~Z7{_x<>`Zw z27}b2YF(uBT1qc$A$;H0g%ZA=z6%qyD{*0Sc@q!Ub{}*B6g4kE1l@31$$N+l^Va=Jb-n^@*mX zSMN>7kzYQ}V4M8%SiE$l@x#YiBO7TXeE#r~)?pyPXyayCU%x_8A#iA~t)oJOu&L(e z;g8ABJX6a^m(zVQwn_+MdlC`{T1$pVXI8-oaC#B}?7UF^hUKh#f{)sMv^$8ygi?+$|>2TSst$D_ZIN$WL;T@AK( zG~dki4Vo_{Qm>{j|8F}lP)@zP=d+PI%}Q0Au;henbocw6Y3yR6K!c%|qs1M@7J2;& z?RH3?xS|%fB$1l7qE7mDC6p=buc^;WVHMyCWef$uY;^g3g4bNv7I2|9QeMY{fq}h? zkfdB0(a*s}Mr;!>7ATB23(Er(WQ~=P@+Ld-vDhc=HJA5>&BbB{mwVdk>g@8eP53AX zLdoqibX2b(MmoPLWn%VT+8wLF++7My2CoVQWPJI?s)p`M;0ODpSF8-!gjh-^KnueF z&Q*Ad&K80SEXh2hVr4rZ6;~k366Q1(R+5vNoefsCJMAW$53I5}VoCBv2yCWxuPR^; z0ilIacw?yG(5OyvLPv1aTg6M{vde1^7wcLfd$?E%ud0mF{A=1V-?!sTwPU_rZ)682 z8&Xg99h5s~HukkSPy^dWdJA_4 z9>a%}!*iJVQ%4LdFw)8Ca>1&~?Q-e7Wd(jaZ&_stI^6jy5*SeZfy^$qcU3R7bv>iT zL&=ouMjKk7lXokZH3dQk1xFOi!2;5uB5 zTVN$HBW~nF&n1UfJcV0fzPsJNyTqr-D)4MF*Bv{R5t_PZr|Yac>_gWOkm#9f{pWS$ z4@E`=wYZi$B!J~eL^rA_KSi5HXSbg1AIj1;R)sRBs9BXbPW7f})d5+(pmpzn3k2hs1T1l3jO8@I;0f!tMf z%}TQ}ndEP2-_NxhY17flNd-+Z-QGlLkx_LVtb>y1o3ZLO*UxT_>#VmlO?0iXitf?Z zx-v5p_vzeJ73nY1Z%hCCaZYmdBE8c{9%Uv_ zhfqB`_8hgh>RJ7Q2b>%u+gwyfr86$E6#+d{l8{LILjESYxfo>J{*jJ{)Ee|;$8{a* zcAL(Tz;CN)8%hnNm-C&P41xa~Ef`+lf4KET1jjor=`T3`5%}eFWzLokCEUtkwX9pF z8w*SSm@A!=4yMeTB7wD7dys46*JvZ!gOx?v1F3LxyGZ8@)E-#$90SYI%j zIpubb8d6(q_h|n?^aZMCLcx|`USF`LJ{0He26iX{Lnli@lx%)v(m12&2V!6}pXKAfxI+~NwX z2c|DruLxCeq$*g8@BLJ8%ft{wL$_DK{$UUPz^utc$ zY?>vw7gUy+#cH`d{>pVLUu2u_T_>&edh|^O8z%+sV z0|B6apYzc89|M3X8!~S*WAY-RMt^`B&Q_>%P0@TD6#kWxaE)=ZZedJ3E&mJzFi$mG?W9^Pd_xFl^0HE~5$P=*m}jxlXfnO8KIJ5AhYWvd{9 zak|yIqS6i`zsUKWuS1F3-Xd4DuN1R=B@+SrYD}Ik(2w`q@`|^wV1MatBYYjF+IqLa z^y6;?kG}XG_m`v}x80@n<3nP8g{XA6-X*l&`OT$^!u4+CJrMJ=-{*RFO|F89;tKLR zOQx9@cKz&bDwsjC_p_kxovYxt#miB?0_&P8_?#-ZkP2XPo;a^RoAdfI@Du&`RIO9j z+-{zEq{>Fu;>piP`0t$lE$VT*>rRsA^mLSRla(?~8AE;4tc|v$rCtlVk3oHP)bPkG zoyrQ8QO;6HiixtcYycMzL7{Zf&`8JENF;f`MGC44ZPAt$?Vo7WrUof@nqP#uNrcY` zC7ueMwc@}Psve!S3i8(ggx3N%`&!Y*7ACp9zxlf9xJRS;Vjm^lM+2-aGv>0HI%|cx zkyB}+uPzG7>@}>U09b%6Pagz1r(gVds9$92n0nM{@iM)E_}D@n;sMA)MLNX2?lARS ze*fq_>l43cgZZPS1^UF)Q^gGsP0Np0lTG!v65Z#aihC~7q3s6|VaB068yzVW0rrUF zj0?mVWsV&tQMBzoyn35YAytS^VcTZxcm*lD4(GZXL?gNnhg9z#NX7PHk=*#W6_MG8 zi8bHBMP~ac9tLS1t;$9pMn48CArI|1QE@O1T4W)Mjap>a^UeCpBIuXR?Va%+bp|)f zOkqVop0#^u->{VvPZ{dgV*w;L^7Oh=%0@fQ2i5ZHD;U;cM$ytRp-i*2*J%js)vp%W z@}YThHs*GSn^M_la`*_#CiT7aN_^^M4WDJ1Z}1@{)<2;}sf|>n)JCR5Ql+Ltilal? zBd0@}GZxm?DIE4|NB+yv<~Wu!u=qpJ#EW8waN zFv4qmc$#q26K&ltCjlcTP@R1-)fb9`d)8eb^(>@W)fS+#F^#HxO>io&xRFOd7&mX8=bj?T6)Gm zc{bM)^z8bd)ST$q=@&S6MoAZ>p2|iuzbPP~d3q2YaqXU5{_7!THU4ApHqm_zCx;Qf z_e2(For1n}QBYpvlQ~j{VOhpGRZ^e7Bu5-QT>%Yo?V~*W(Cz3JQfVO2rp+gG679CdE2e8#PwFics6sqIgkJV_ylh?wTzYrt=_B?}Ugiq+5U5 zv@K!YW~@xnuhY{=`)%a4GOevjSEZR$8Fb#qyY%WGZI`mQDk%Mf3T)I)Y0$T4Ln(%) zpbCmL__>vIr92q-05@eQPd5wwg{bs5#;Z5FcV!btO=H?#CyazHacmyea#Nyu6Ex|v zsR=$y*+SJWRifwU!#NV1h)mv!#euWS#F}NRRTgwN7BQCs4eb54^u>o6huKovdW90U zsSkjA0?iwz?ga{HjE`gIW1={Zp>`sc=4-`Bl(Ip}egWohJO4_wm86+HNv2cXAB`{n z>o9jo0p(QLUdPs7DwQ@wIye7%$c!WVFe>c(q}4OFS67pvOo#0udF$w0c5zD}!#-$MP%ts0G){iVM+I6b7jZ+Y)Z&%u%Yw<@4Tg-a2-S)n^7$~qy z`EM<3dUXmUaMJf@pudek|;7kv*CoS`O{eUN-&Mr)K>A zgr3+%Gy%opyNwM~Z$tX#v06uYB6#*?%pEw+wIp(tg&)3egS%i@RM1Z zl|N7AZ>4GE(JCeX2F#d&WO?y10PRz%(zt6!N$0 z=$}?wC`zPbnL3LKj>XuPV$Gu?~7b_hT+Z7pyyERwjT*nOh_UzICDJjZD3C}OPa*KuLL=I6O4PM zb+4u3OGGb6y6rqTvh3K+nG;A1gl4T!k8%uZ&-l{~0K45H{Wa?)Td^4S@)xc_5>cbL z&t7YsZI5!@okA89Lh?3k#Ld)pSCRlRtRnYHus|+5YT|=nQon-(lRAvg`R;SL-5vQ) zt5Y1SDixDDOdeG$&v3R3`gT7r@^Y_nt%6ZJwPx&QLhfUKUK_L{1-WbNs{cA7C>J14W9b ztCR+&N{k&+jV?f-<#l2b*ig6YIwaTJid=(IZODwhwBM`Fh|d>Bbo91f;IAdntAO)W0oNilc1>(@GMIW$ zKnEms%pu5nl#RaZMNZfyhB>@dV<+ZEkQ&WfQ*_%nC}`~plEyX5^-DTBM8{b;(~-_i zgjs6%66`aw(fq||D3HhN4xHMZK8 z`oVl^PJg8S#+uWR+LVnx=jCm>78d+mm^6I^3$Y(cN#x@)kxq*&xRv4#5mnHObLzQE zWO7$TEEqHrZb6sCe5HRj-NCOI+pU`mdFeZ0U=n|K0(UtS*U4yFW;my8^faSQhc(J! z!-zW??7oJe`)HKBM-pl#%KeK#(QZZ9u^WfCVW0AMMPwedRZ6d_ffqOH_#fOOwQ#?8 z=(7$yiqBPepT1xe$DQZzR!}RJ_`n!}npp+>V$Y|60*n)#FUFF;;Y=L*v#MA5)lEZ zET{oWts3m+gy$rG7S!;x`Oidx5)qfNN4|!=<6O=_E#(bdl@Qh-p{X*XS9DYjvrVg4 zzBkBct}d=hXe+8q)UYudz0d+BvN6(BxTK)M{ne#7cQeqf;tJLOip-{+RjVXIs;(=j zHH0DOPK)Yf-x0P)U31mRJR{$~-NWkWXRf-wD^){{YT%rIZj?e8a$k&;9>7S*7e z5c4&h64ua=`uAK70)JKUso$Dx^s0q!VCsl57+aSSR(C>u0N&6GE~Cl(6|WlDtOhoD zp_l{rBgIKTQ?;gRL$E|d3>BCB?3R5`kTasJ1NYA|Rl>vBl9qG?eYQ_gYs$Dgde-+|MaXTm4TJ>{=cJz(wj^u zJhqDMLf=h9FhY=wzZQuhccxlYQ;!vvh@5)cPfstI zkXj`X?8g$(+TX%B^dX9nt(10Q*`P?`jkI5AVv(!c#=M{b>5mMo{QyhPDij=bU~I-N zv^X367PZ;(RNn=bWnu6YuO{kHtEN#l`Xq~kZ;`v>K%%pxhsAJ=f@ir}g<7>kVl8a* zagAakmRM_pp1Bt9nCFe4ZRY#R=3zFV-Cr0(WHHn(7IH#IX!o9ByZ`tT-|m&eDyZ_D zQZZAxhG(Pu=iA(D-9DL>tNPE8*{>N)b&hd&zD)IOc7c&QUTt4lw)`ct0xRpeI$7Uy zoK7*`3#h?q9TlwWIvU#LxH5&-!&>#?PU--4f5=DA)$jBS`#T?GSfkU3>H4mY*mC@0 z<~x#n*n!41KIU!$>XO;g*7NO5V;Fpo3m(#Xl8!az3tHjAhqfNsb6oylW0*?~rLbYG zdvdlBC2H{K%XMALVk-&ec;j&NnydI^Cljk1#-taIO}-S6^rL$?fX>KF6wW{Bw&S7h zo#f16HU!&2wVU=IFk~4@7rR%8YE_Hii6VEb=x3IK2D)q5CqvXLl(|{mk>9%Z%;9B` zxP2NcuoJfvslRZ1B^U=%KZN4!BI-uoF4CG&iPI0bbLv5le~MA!^0xHh`!PZ;goBJ7 z*4GZx;EHUPB~nLY?m%Y}H5rAUBOil(Ee*kBc)vaE&-@8bo$FaZ)0((Tu{)U zm;rZ096_kG1+!L&(D1IQL;Ob`iwjvJ68xoOWFv2;cRwzbb8h(q`{t zXFSqTB1l1w*IP+*EmfSmj99Wq6+(k(>$9K{>3j)pF|&<7fYk_44im*kW_~7SvS<8= zg`ckQ-SJK>PCtQgj!5r= zwxh2}e_HsH>7IH;pyu?&lfYOSop4{!s{rSHLhqadr6^4uA_+N zmg*WCbjIID))hw9DzYvcz1BxI7Dfh&gi|`-M^+X_GIHn=;B$!7S>a`86kjM&z;8Nx zy#eR#K6E3q_J8!eo$UP!EDHu4NLu>C(3pTNsrP=~Zq|>SF~R?{=k4a~<>2;S&f6{f zZ)nr|J#Y8vTm|ob-tG)l@P5zRJ-lbwgLgk~_a=B3p10dPIaI@i=j|2>*?Y#{OGGyM zjqm2v61KnG|GeGg#=#ETjb)w>KlRPTDr9q3Nf>4aQ4vT1rx z=hq3jO8G}RzfQ=Z1=*5*J9k3vo;v)n>Op(q3Av|~maTgZ|xl8gysBrNePH z$hnhoCxahm@3p;?ahHCX?Sb%A+ySI^r{XScBse?~7qMVF+cu8i@HE`k@8weOM{sx& zZUe!XsU%9@ymW*u`p%Gx27lffocb>soX5{u8(ToJ22P@+9%3&Xy;<_JF!~!U@L{o; zNe1~S{v!}cuqn+(&-ymKYUBIPGXAjth2P|+KM7l=!^ElqDc#gH4aL88RBp}V$@kR{5iFfKPQy)XJ^TWNvpS_U%lmFy^jzr zer2klm~zll7l0TwceqC?JoIW^IJJ8_S)eE3Owg+^cfNb>VpKoq4LzJ%P(q?AoLJts z8~U;N1!GuJxAZIhxoi|DE8KtXul9ZA@dv`1x8nV&9lFSlGkNf6mmqO!~ei2XK zr?Sy|3sbC9;O^XK9R~X1dX*D}S1?7lwtth@BK=nT#ZUT}JNJa%*SlYdsNM+)wbVF*x1(g#{f)lz+GI{%oN*RI) zH)h>JSyCPKn#-%oR(7+gw#Cy@Ufpe#1akX*LuzY7>Xod!9yoNOPb+QvigF1g;(9Bk zR58TFY*^ZA6qYER%i494Q*s*P$^e#RMj}nAsf@0g%6)MVF_wt3(iyddclp=_zn0@E z{tETMgNdNDIw133U*0le#T7flDD3(mgMx_%$7XIIci?b>PU8g?6Hd-X?|`xjA}Y6B z?T0U92g$VqJ+RD+r8u1;{jIe^HrjmCg_2C5Z?+`RqlKz2?oHc%#dNu(@q#i{T<lx4GpihE$vbT-Z*=w%J!~Y_Q~jjr#c_%Rb4ZKUdQqt{q4W-|`<)g$=`x;44m^sqKSC$sB+P!!>&hda9OKo6Piq<(fz zLFx}%A8dVFrEn&9`--;Q%;t!dtPY-Q-QA~i70xHAsg$=XC|qfUJ)8d9=LxByTFJ?^nk!yB_V%0?p;$v$;3qe^P#^1Kz&=5M%$vj<3# z1#M5{N(s|jM^}!Wf^0x8JcmG|Ro~gCmnt`FvVP*8H@8dEL&D%!??e_-p?1Nkk zN7kVGt8`&TdgXA|vCXYcBGk4+_gA;_(njlOB1;BF&RCro_tMPYD9d7!t}#R)Ti<^V z3Xj{4u}=LIlpNTpgPF1YI`u=Kv;9te=IeBdT}^+VRIWc48BG5r{i(D5JO%O%?9W-k zlHx&nl)Z%Q_vf6R!TWOqx&G(J$ImS8Re%#4aCTYm_f$ipBGoJyS|&I)DXe3QR@A6U zp;d~nQc8%tdr)o)2OiI;&D_3|TI^>j6GAJaHe9rLX{GEn|3Xt!>1O^l3U?FcxEn-( zsKe<`{Pq9iRG<>D6q!NDK1wFKs$bG)kTrrfDZh;>-lt}hk}b_wByzbz&-H0GE6reY zHeG+BWA(Qwmd8+ z{T*1C%#oVRgSF(g5r$neLGuCFHEWx4VIC0@k_t&XSoTVvExq;{Trqg!T_e>fe!YJa z@REPA_pkT<1>V0v{_R-+SM$uhl{eQPq;Z$os=Q{xt?#1F@}%eA^NtBkek9wsLIYpW z9Crh~7wl2NxcPy$SKPoDM@p~vq;#1(NSxXXhXdd6189A2>=WZ|c4o4jLK3YJwbqnn z#`ChpV`hP0CXZ5zABc2r_W0QtHah)zsIit;=q#gY`@~lYLkjkZ-L{dl;T4q^GKWXT zRqbm0zHhT6?F~TUR$Deg)(>07FOaP8wH3p9tA1;w(`dX$rm<`>{yh&b5Xs(L*XWrn~D zWSekVSa}HjPlWa6$;a$4P5R36Lg-rov!$shK-$tRt|^t!3CNBiG%PE_&l4BV=?8}(0bxOw3gl`US~-Wuk&MV zXjEWyJM{RTL$f(cg%`1mJC>?8-Xt9bAP3IZOOdK37&z~om1X-kT~rcicEi7=;hlykAQ*6 zT?04-gxvf!3Y|zQjc=D5U(Rr#{9wqY>SHP&P5Q9oAhjCbAbi{@V0>#CUzmo8h>Rm{ z1D~CKD07|4`X4BB=u(w=8w+zuCdnUlQ)@u_=bDPXn~N0Dk7V6eL7-_Ug48e!5l4?O zDE=0HJahAF1EH8Rz4?YkifPD?=u#DCy-TEqp~M(Hlv|KmQ!Gic?Rgwf+F$gDXA_u7 z3@9RRy+aP}A%H3v{5Oe{mj3Z3LNcSt*LNgBS-+wGP&;UdHsi`;&3wm-xR?xFEbk3} z(p~rtHy?$qmB>i?&yl`wFAHU?JHon-5=|odQ(I*O{asUTHo9L0y)Y!Gjo(4R`X#wkYqYA|EidoI+gBj({l0Zd zynAMBeH?Z)l=g<(QpY7*M3}U{$$t2J#3e(9t_cML?4&Q4$mfY|5UgO@XVZaP1v(RVLZO0h) z^&6bOU86;BCHkB#>D_^#5bOj}W~1|nDQcf=LH#;x+VI;(%)mhmwd#e2QRk>Ft7s}kR!2g)r7XmNO z!i1?{qEbjU`pj3|k8=0`+HAP_jwe)C#hR*^AzSZ__cgDjHaJS3-UoU$~I%N zW9kW4dmUVhT5kDb#2a=LWyW64_h{zP{ot+pJ-MH;A+-ui9S}Q_;!Tnb6dak;8{B4e z1WLlK$?IAq9ISBEP^coEu;Giw5@<&MU!kK@Vme z$SE^Y?8mxxm4Ov59s0(%Vn57|L7A=3eGzH4U|Y>+w{aZ`x3_;tD(r5&2CR~3Ayz<3 z)eL?~j$X#wx0N>Ru{P*FBEHM3@#^~%DGf9Y1Y&t~@|@cOLY zgt(iV5AGg&UwqcKQkbX6H!MJrKS{LW~!S2&cLk%YXA-$U6 zath#)CN_v`sOaN4dPFzfffrBh!%;YzU0HM$f{_q+TSEoiXrS|D+W6QeNN^kEYwB3{ z5%0fsECaMocM<&|t-F`aHUV879I&=3<0)P^T~Q%S51`km|6%rduZ(IRe2{BTe?o7E z%-B`Vuo)w>V>S?x9rMH4`uijPhNREjynePZNR34EPOIPM%z7NvI7`v^xncpj5BoMm z%AGeF_j2puiJnWE8d3+wbP$XUh8fj`7K6I)UH2()uj5+w8h5MK=ICCuL6>F9Zf9jl zsf{&SQrV#j)CnuC#<)h z>et)H>FT9N*g3#=(l;;njhoRqSbt}&P@f7E)m<{_FjERL+a{+_c7wB zo%>EUEY3!IW=cKFgcg2QXgiphUEar|&>(p>dNI*9-=&3t8tpkDbt(kleP`G zG$C~Yj19!*G5A4S;)X(MSN-%|W4OtAr3QG7-G@J1~;mg^xOb{Jufo`v_%g#DZD zsD4rZE+K5k{kw$$-$DPrE_@I@d)NNG?s&XxbT?~h0TmAWw>C`iN{8#;`G@8E_a`5A z3Sooy?^~4HfBgQ7upRgBp(}UTzn>HR-ugE>Z2iZrrGxbERk4v`VzwdhY5Y=$=KJ@& z51T>Q;QjkG<@WF2U4-qpe=kCfb})Vq6aC)$cWBu9*T^y`etslO@rb3^lK#nO^8LHR zhkcu{T>rxR%PZ||&$q&7T)6w3Jv0WZa>a3zcTm8QE{ zR@T24sVUt2!z5$hng0{Zv<2U641Bv z1iO}*#;{}&q=}ccKgiw*VP3^wGx9U=8TM=xx-zu?T;VWw> z>ge4YG|%nm!mIdO#odN(|CA3{%4gF@9pWKt;2n&AxN*8ThjT#b?3jP&uS@9v7OdB1 zulZ=ux%P^PF?;YY(850IX-KWq0*-#K(s7#(f~{yZ-r!yPuK-eGLJg#b>$?&rklrS{ zRZ-QK>}rX3a!CV>eZghQ6Qiyr_bF`t*)Y;uMl^~HO^Rk*E@H=^l6YJfPcu$;_6_(5lOrlp+YH2@HO3=N| z+Di-eVF5ubyGP^0_~x@Xx3lTXxpTkxPdI79lnZv5qKBUMatnE_n8u>R9MGBSkSXz$j}oo z)3ak{^Ecmw!P6fMbh2YMU9P{c@;9H}_ygHf7HdmdYtfXzuO9UJB?I&$71EDXNHqc@ zu(|ccILGb$miFU)&w3@tK3>UD7b-b&(jANJk_KFZ?i zG3GF{Rc>?Jp#;S#!gS| zfZo-aWxYe!L<}CWeWUg~=P=IocC;~&3VkwG_sc?NPj1z9fa^jyOqS#X#!LTX# zIV;WQVR$EerH&imiwIQHIE8K2Pk0~J4BUpoSI8pnvl6H2Bnk;6z|fJ7qIp>I>Ib6A z)(nj4L~q3hb0%;L;=FMI)aK|I;=M3?ykTOvJWkV3xZy{WrHiF6dU4k=Ic>vvge!>V z-yHOP6n~i&q&Wq=86gqvFOJ5omVLtC&61oValT2kem=L7NYXcLxuD7|Bq&P z_>zGv=vT+O4ND8HtnplELY@)5UgoriWuecL=+g|@7dmjQ@d1>(hqk%8ql0BCFO}<^ z+js{J{8Q#KxAJYm|2MVOUslU_iElV8jjG*p1+_>T>&P~vydyvK^-S)ZOfIrrxtv#{ z4IAlxnmGoxO@(q5eQE#0oHk<^gbQhAwDvur7+`A?M4iGf;N zU@O|3>+b|)ISvtjU%}M4$CMi-V7VQtDYU0ULgE#{5%Rc8DZXQ!u=VV+skh> z&(q+%IseBEBDw9=2{2&~cnY4oCWq&U1(C~hlc&?SlJMkNB0?s*$(M*lP4C!uuWI>Q z1D%QVDMvyTgl}2MOZaahQT+I=KkM8Qv+o%U4`Y|o3+^XU%HhdgOe8^HoFF`2SVFh5 z$&9xblP8NcH{&l7nnLsuoxxs5OCk;FK87@06d5JPdjF5*SH*YB51pKKn)_L@ACTih znkb-%AMh@x{UW1RX6I}aJDWfhbP>h;tI~!jVwNakGfi0XAS$0`^$dC3=#fVc$m2$j zJP>9I2&1nw^K(suy&qii6Xy4-@F*=l94HMrGxNqxm{acK>?2NYn32(f()ugv;yT8_ zvUA`e+Q>^Y@mt^8D-*YyE`ya@&2-5@Q7W;FY-2+jUOrQmA&q{lZbZE3g&L8|-Dp;^ zMPYXj8C`I8=o14;i<|*kqnl*qCu{!xY3Ir zNel&oM=CM|>GLHL)O&}MEe)VcVIyzi7iK9!Z0r}l(T3Nw0XOBx(?YI}%C_n&L@hEi zV$10!2a4uS22+MCSFG#zSTN#c~ul312bRKdDMc@=lt$mJEkHlBhqrPq<3b{S#} z)D-f|x{>srI2GLiZ;`opi(E#hFYbqTkQ8}0Y`lxC^01C?(t--zp+oT0mChogy=Mui z9l^@YPO~;ZB#}yDH~i8{A~TaY&ATBxCx2!^)T(ec^curUVRV%m|q4FaAdaO#Kxp zEdhNTEnx?3dJ36YbsN*hEl(f+vj9Sr=o03N<<9lGoMx%CgG{*9wcNl# z=e{6OVuYVOBUR&H7x6Fwpb{9DGA?kEDu7Z>Tu6~?D@CONOjn8_V96QuhxsfQ(8+Hv zZ{S^WM+0vNoL?g@e#`^(DcwBGM4ArmRgjqfuWYggS!mY-Bbj#Y^%O>?agHBJeO2r& zqa&ab7#*P%0MQvn6IICQ2tJT1R+LvxU^=l#^3hHxSvR zSx)+TXFR7u+4{P8E@bvE`o*3bZ266ang}C3Xhsn@D!a{indWu~yJ)FMJc|sVfqZmz zNv3@s=RIiYUuD4KQOi}sdWx%7U67f%tsP^s7Pnf`F2|sVjd}my;qMqI3xuB{WQ*nUVDt(MPNQZP zdzL_K-pSGjLO_D$^B9gm?iVU^?;kmA{OQ$ao?GW0SL8lmo~DeiagVDjaEl+UpTL~0 z?Y~3?d^(z=>s8)TosBm{H^gEc1y@yefTM8<<=rgJdhGW5s9f9abK;Ka^cjSl->c_yG^DYfz z`VOlp~x5hf(ZAu4X(TE_1_-o0bkU5MrJ=^PAv7S^eWbC(Uj_^X@c%pV!oR z6GA%@tbYZEW`kHE8Wj(};o8!?VMLhZQHP(1?gCZU)z`~G^h%K0qdp|mI?WO*?vkU9 z9d-Os)#Iw&`~Bl5A2s6G(MP$*)iM#?l$ZS6=N?CNZO}Z+=BlX4J#IY7YeE6`C$Oa^ z&Ih&HJdK-3WvdH%=-DnJ3uNMrw}?uY)X>2An(@cE$Boa6)N+aT2d3fTHcs}eE+|pK z3n_?y8%Fp<*JSCNGR9ZD5%j$wlccLZQzfy>Qeon5qjgP1)3woS%q$E7r<1g$w`ukKJg*8 z-V_XCU}le<66{rha2tLu0EE4Z8q0j4!&GiaY<_p}yt=>cw);2W-K zLf4X=ih4ndYG0BFHEJt|GmU*PS=#J1K9dHf`$D~9{cYX+%}X3?!eg34kKK^6MbNyD zhD7rk`_#^h-Q~IFT*W{kkny|B=El5iJOT)9brCu7=QPKgaK7~incURwP&K)UuIhqv z-}P!ueLI+3pwH0kCs)QjTgeo7|bL~ zkD013xyev#^Xb~pIUyLuz7rW-N=~9r)_FJLd1K#yvc7L1GS8Uz-wQ-eG1d5!&m^{p zNQpkv%H^%ri7{>8PnNDdN3AFjnof6GU6r`i=HvKD5>O0BjjbRmi7sZpP!tI6OsHruI&mi7m zs&ksP4o;Sq%VKJEfM1*Sk7X+7`r*uzVk|laLdr6O`Fq(vy*6;!lHM(Hs10v6jI>-8 z!d_K|3B(+A(EMm$h|6cjZHdXnBCP!6!bHag0#1vb4tEU zNruUuEj4ilg(q9{!WHd|4I(n;27?Yn_A7cX6U);fR@SIy6p-?9+>`v26B%m2okysgi4aWNY*jdycekFdI#5x4L&7;O5 zA&K$%AJaZjQ1h-nNUXrOtjR2|A4uQgvoYP(kLA42lpKQa3L` zn`G%IT2Jg}w?WMpiY_=)@qA`$)aPqfM9Wjid7fNt1Jy~E)=_~G&{K=Nhv_CIS~}Nf zoOnX~s5?tYzF$*?|9N9CR7w?*~Q)J+mL)s1$Upz|h3 zk5&pXrzb`)P4m1PwP&XAKT~%-C0nN!G#hFWFZOq%r4Rnbeq;a>@PK3@eV!iQoyvgO!g* zR3^w4vx+ynpf{OHD6+D z9^bL%o2gmb>MIhLXb&Gu9O8A`QpT<`XqlDeio`7Ci`osA<81(zN{K)2y-51RUgZUz zj-Ak39w#eObQSxNM|y|nH1HEOfJ11eoZ`tFITpK(noN_45h@@BC@*xe>fTgh>u%m; z^3z&_1$sPn8YpEJGa{&ykuNiaB)jNzO2jhqMWh=D5x8dL@&Blky7X4;o3v_{4H`Gu+_w z- zeL+9b$ovk6QWj8QqL*2}K`;Np^C%dhA+;|(kn(=*9y^%wuMO|S#nv_cLG-Y}^=)+9 zc0ocPGQSn=LKI!x=Z83PC%3xMGce7f5-^8#+kFN)Lmzp_R8s~C`0N*Fcn-IoXDo3@ zq*%Z;a+8@rsgx_O(vpMk6;DJ*?XL_iU?4`D@jo_0Z9m}o&DxAb%4lpuJ3}|()4sOl z2Wi=Q*-DW%G+k#(+LnKvkAqH0b^|B2t7q{}(}T(BdZZ_qdWzEZWHo!UEnb)|o_6ki z!SV^tz5Fx$8D?j9ryHFF%xV9ni3U^Ff9VQS*QkD`u2DhWm{U&YXOI3%Uq9a2RV^cZ@jEDHbPm5UBd{{k#lo*>m-_rNY>4mSd5hlx z8ffanIjh4THf%km;n4d1*44H=x0k0d{p|53%&zG3!Z`gbaDHQs^-xlw& zko81f-n;|+4Qn^owDj=RwAA=iGCy&szhMg{*EY1hw|`Z`liLJVO-s;cisVzIAm9U@ zc_rp92?;d+g<^9vAIQHN3#`tYb<=S(tSp?LnD;f!FZj1y$JIONdtBx8z0+9s`Ci43 zIbF{*)wDdT^GH!vpXQ|Yi?Oc{vWi{gx{}0V4MQi+U}sE}Th{?+>TfB3vqtOj4)(En z=D6$v_PoVZS>b%}Dr?5rrAJ87Gz$b4HBiHVPa!C&>L145Jq(&AuS!BbEAq_~0q9A( zkN!32nz|n4-)2vbHHh5(%UF*UCYTh&a`4@7r=*aJUu{M=dj)C*Mg{VRTfX$dEy;%3 zxMHd~o56~^la?o|Wmfddi_8q2k+DT`dfxQJaN92|9^+(A-DgG2k_?<+`NES))Ns{&v+TQ%v>YSU3(b_8C)< zI%cLmovjoTMGX-C%dBa&+=|L*gXLy8E{J^&rE=CRs`RFv5=EsGfBA^18$SYeXo=5p z-nm?l;4~{jLLf4pP(`iUC~lx`uC3;8AaZ$`mgT|d$SSkMI_eQV$&F`oTIAZnMW;pT z2baYDLXXruw9B59py5eF0vOrAS*S261KKA$3}}hK!+-`O0yp`VF% zs$?=^g$W`xX#H>ilUK?OA5c)ikhr`?3rabn*w7R86BtI7407QX%Qnr7PSed4S9P4{)+``>T9#sr+UqRdA8e9QqJ+w}GcAJfHX$UWk98`U&f`i)bCDR$TJ6BI_$3LlZCqCNW<*r$|t zV=}#ohIIr2s1&*ecB>_?f?%;!BL=7$;+e>1(#k#JjMO~j2f;~oD{Cl4)e zqm6J|h{kn^co7^xd?X~%s2igHRkTph0*zW6O)SgDth z59pi3?m&q@waN`o0O_X^MS+tv#|sEYQroNKgBl&Ey{?RSmgw}a*Pm1yy%MTE>IKph z{S13$pC4X{e*d`aXQ7n+>^pWM}C9dui~(htff_}rk3ICi6MS4F{*hde%A{o?;aJ+cB;5wB`E^&oUi zJtvrYW~rV_%KLF9tSFBYrD?IAsYemrF7B5&J15VV7$@``BO!1g6E@el8ISNbS35gS z(`MW1)uTteYs|6oi&CGn>(3XQ>5Vh>H;cT96EyDJymp5Ljw4A*?A>md2}B1hZ5Y18 zt7Sia{p#L|GHtG6O_u(dG-tnL>8E~7Ovb_7b7;p7nIKK|JS}6OssZ?|#3!VBoi1=A zs+~)^b zayUK^J&U%q;iNc#)&1fv$W~3zNXBY)g;d?iGMTPbLn=e#^EFWs&{IN2|75X}`9e+( zKla}5&@W}~;#dFDHt{90`0Kw?G{S7OxANngLFqL-kQ05#c&NBhYut*Ju`Oe|ppV$(bP1Dl@(b{ebL*D!gib{uI*V=4ki zV{-J8Oxuv0#IHgNa$7j>%XrWIb~N8A=Pp|^D-+f`#LJA3nWYeB{C-h^$^7t)d1oS&Z@9pHFj)8Cop+t0++2wTVMsJQivOA|U^efXJR;nDb zeX>@&q^QNudXCkNJDqtaNp8&_(TaVh;o2^FC)Q7Oldb40p$|s1wv+G5?_NJTm7f^5 z^h5#aNsE&ab!JcWz@?VM-*-H+gscm<{+8wq#T*j4UylB8EWU@ZPV9I z%H4L5Pr`Gg8C>Ci0j@xlofnAmx?&8I|B-eHoK>SeHDMj6nIH#whu1Pq+W1VVnb^+v zEN{~Dz0rh5mW#j<-%K5z5;BYS#LF*zmP_F|^gSef|KJElQED{v7FL63VU=A~MGM;? zJ~uMpHlr9Z69pqPIixY2(^suAp}9;E3;Jg0i|cy>m0WK78VC!9H{)bZ_@<+whduib zoQP{g2mgU1t%t196pZ(BFRD@>IjmWzKb;^$ISuZy%Qv|ByIOyJ08WbhPynG?Tfm9ej*e_xf- zzfU$iP(Y!#`JDx{Z94=d=yWY z%8@Vq8m{xhEeRuB*!G3^gSz6HMNKer#Sjra7Z$8^e$)ytl+|*X&dmfwahfmS1N;In z9zD)kJnQgds+`3u2}9h)Y1Hl!9~H`3$x6Vok8ywvcHb+`#rQTJehxM(8 zf;;*reL`I`ZbD=hn$u%{lYXOVYe0MxIcf5Cn$>7#|IzncAc<7Jrc8^3inpAbTZ1RD zk}{!OoM!ne>E3K}n*z&$PnZ#yJe$uV-Hj9k!zTqQIQ$AC;+mn=mmI*IdHpTm zasW^COGDcQXcNUmxag7wG<0Mj4O?wxJHVRO(;B#%`-21xURJiM+K;&a_xfv!0Eh!% z-6vKx5Uxd#g-#CmR!KAts&2UU&xpa(FBvFza5#Q1~O4`e*D5+{m z&UKq3%C2I;d<)jPuq1IOhKO6=IwQ{>SYXwLIGIB6EcG;7pIi8jRw14mXH@q|sLxs~ zF_xRMdHqqrlg5;X9yAs?BLvOSAis&UXDqtAW1oQ-ol&KDg$@{=U$o(vDM~h1Qx7PR~=roY}R$HGxmrlvp=!K+yMS zFnpjJR;ZwPOg0nx;d*Mls(6U@ob$#R+{0i_a4tO-@`#SjBL#mu(Mq(-e!S>XHYp@{ zN0v)IDM!qJ?=9Rh5ojd0q z>?T*a$wxzRL;N)qLVAT)CGz=+_Wa9c4=&AUv2V~|kY%bd)E-1pb3=&uVYqmZnZX#6 zFi7#~0(}aPj`kbpbGwL$4Kgru@c_}Z&pM}#?J0N5J4#Z<^% zBzVFd%Baq8wQ9v;x4oYA$CzUSOES2#^A*!tcLHOT%{#W%xpU3jVG{7kCqprXgYPy1 zk+&<6ib#Rz%+~akc>tCl^hYg$!jlc~Oro*_U4|h+UjE_9BwRL}1;uEL3doj;ZsNXd zc{rJ6EvUkW`mNYK>H@*7Fxp8@!NHhHbfR{+Vu@C98U$0tVoPN&|JKg-u!$v0$Aw*(Fp2GqN@WTv1)5%T$)vmQKG0%def_EbdX{ zUl;dpZ^IXJC}pzz8{Nv?PLu9_($VYPzc;lAy4d(JkgFrU!grC6{uX!^2A4&NQptMhkf8E>u?aM%^ghxtW zGv%dvu|r+sJaSGF$mY}EtCQoS=h30hy3BbgacO2fNp0uu_BVXi`W>dk#pixuo+$n~ zZAoKJ^<7-aV5SYiUVEe^XGtQ!Kr#r739Q_M-8N8i6 zKK!)5Edky>GkDu1ynWU;bg~Lqye*5Dn@>LjZ@ui(@X$c=J-jW87m}LBLtLvxx8g%4 z47cJ@?zK3-Q-2S6Mkqc)Fmh#yF*jm=MwyXM@(4Ek9(+}v4v3im293y3x05A#91NG2 z%U@orDLiXlB;IK93FI-d6GQ)XlxnAe<#4O<7m%ULY!RHzhRBBc8trrF$O$#XqB|uv zFf!o3p1(O9 z-g$hV(^;k^2hTo1f9LQw^GWCNh+cf-A$eP!ut_>=Ry?8$pg|LlsP~%>WyK?!WJuFg z>iHvejHmS2iy8WSWTTwi2F9mi}t67az;4e)~fiMu~opxshyudmmC&8+;GQOt_|@FSSi@x+mCtMIMWg!d&{7eOKUwqqDB zRyGS?5S7S6AMIiyYDh6>`SWm6P9UXol+8reFIjpZbvyfc@!D{xJ%x8~VVFAHV}bZN zxYAOu*Be<&Ju_}O_#Vwp4N-S7m7%8{?cV=~-`js?dA|jhD|daujrKU-ZF?~Nz@x1P$OtZ;|H7%dyFFUU#=e&46}~VIzCzY^5NMV z%w{Cdq!XGg7i*cSbwQA2MiV&bc2=J|2v3kx`;kHj-Xxvi3 zmQm$$r%7=M{HqGPjU|?D{a{vJs8e^Dw3=={67#Y8Hzv7C{1z`Uf2<~M2F54@rMC?; zo-HN5`cZ_fRXof<_yTgbS?0-XBSd@t^*Ie2D{Ib!V0YQCoN=!+GrAmn_=cl*dSX4m zbkBGWd)n~nIKD$R{7s*;(NgjVyRs~EF9v@J6q!=xyP9$Rz@mje8*`na) zxg|=i0h9%KYUo+RK@)d^VOc{Dc+Cub&Ugb)Ci9wv+GKG4Rpa-^i%!TW)~S2+iJId93v zPtLly$@?*RCZ@h>!<;myL=UVI9+rj7ZG0J%MW6Cu1x&KVt$fzGAwseM3j&T zW5l8fzP?N6@hvJix+ zqQ63X@~c>%J*dXG8?l92Bk5_D2W4rDEN7Dw5s)lB(qz6G>-K6I0qT!z8uW#!f?h#_+S8 zYfWY7#r~_A6U%WGl&?9n%*0sb_{75~ZS=_an&28D57{BOqw3rjWtt9E0-#w%)EG2J^!Z*VQKD|BPJB=}vWg{4PEk>CmxOA|+Q zY$r478PBaoBD;G8TBiu^@1xzBiMKUPw<#qp)&7X2(TX@vM_Dk@S?hNl)}fbQ(z@rL z?cEpNjz2Dy&Ix6WfwH7Mw8aKF&EI2W%;NjK8Z)UIW|?4N+6%Mv1hhRf%ln7!1@J6p z>DHfeDSGqfa!k)-|NNMlneSLUcHww@rpL zJMhz7nGo9X)0L#{ou7`P2Yc?Hvyc5d(!eJ1h%m_Jr(Pb=yI=h3{DhuRnBgbzQmB77^$_LZX$aD0@*QDY>VCDJqUZJ#(QMbBCMbf|@-Gm73gs6#7XLec5^Eki!RHiCBx z^0)hD7*_L#(`1Lr{uIIQ90R0k)d>a5o>$Hq4^&W7?(;t=T~hVbKZrH6e?B%y%A1|$=%x7q z)RN{|6!9BHM$ytXBzl?fDeo%IUMp>n*n}ep3z7QrspFfr*OycAc7Nk;w5k`Vn$zh4 z-*#uwGj!0ueN}U`=!XoMSH zhXELy`fbYsm^H)f4{IN6LJ48CWoaLY#zTVziDM076SoB`ADw%czwP~!nwD$3a4kq( zJ{9HH->3BMB;gRzT9Ehy-xRWm2E+&@oQ$$BI^yDyjbP*2@_g>J8XGFFg?ICV6&u~? zxdnbhO>X7Wq2oquvSSjz4*idT?tda9S3fZry|jQ)3r+GrtnCXkV&lU*;!`R0fKrGd z!T_JCF>M&rXROoQmq)f|AR;`2ws@6RP~2=u>Dz~RG2~KU2(B!MB36rUT0yX4RWRx= z^qY#=EexF^pP=(0q%jauGFg8i;1mj+>3*a18gSxIp)9g!p81$GIHE@|zY>CDVPB4! zTFqDx-UF-#!q9x6qh5jcy6u&gn(;8TEK!e)23*VLur?kphmD587+;JHO%mn`!JOYz z3n*OxrGB6}!6m?iih9mMfriilG@=#~7SQ-mYEQ8ggfs~hsMYF*G5N{R2(#rDH01K4;N1))mg;ktFXPTfZM&IRVt2-&F&zG90*as<*M} z7V548TJIIQ&N%ewkKDFIKAWEB2P)g<4*W}@G}Mxo(^w|VfkVa-jXqzb8J~$ytpdcA z1(s}v()qU_a408M);Kp@WZZ2Lq1;EKh;gIkw>7+`WmdUU(=w%;Fpr8b*K{WX>MqR~ zDAo{?%l-5%_$nBF5!Ip)D606svLEe@NE(MJc_gy{N9D%?FH}?!X_?z^cQ{Q4(<;s~ z!;WR7`yUfn_!-C6SXDmFhNXOHj`fjVPWtCI{RgD0g6SqRACWTV7LYw_ z7Z)DmjPU+ zZ+oMpws>X0c|vNKgx7@du&#l&cgto>2+!(TsJ4r;d(ZZU)AStZH+?V8>EolRQRF~Ic8#lh*RMi0ut!O5v)O}|-ma8xS&kX#(}Po?+I zg?+zN`hZ*<>_Unda0XI7i*DknbXkDE(ZUmLZ$b<21&d#4dktFn z$aNkY7oOH_eKM*+m;;<6iF5JViLYkZ@>)3g+#w|+ns%iRLRB2m2Z5m_VNy{R^OI@9h8 z$VEN~5>MS1cNYDXXCZJH)APtdDW-XqT1cHX%tvyMK`9=P$;~9^Ygc&?+pLzy6hzFV z7f^i6pp^7d_@1^m4{qDi2cucr)?RII71b0!SNxRo6uloa91Ub#%eBLq7giSH-5;oY z*J+kLO-f%cCX#7{)dvS9GRHFiBL6`Qe&xbfnL$>af3p9aBwj1AI$3>Ko1i+!&qrAp zu{Qn~`=xlR1Nj_(^Tc3A zIX^LozXged_*=+nyT(;r65aXRHNnKZs+-xK#Tu__s#<2E&k=#gt7aW_nS12of6$Zs zZj2wbIbCBs4$a*Z@u+fTr;Ru2sV9FD*Dk@wJ}(hkqGR!iE9@0=-&$gV(M?~Xpj(M^ zmmHvCk17-7;4j}Dcu_Caibyq0F&Njn5hD5 zxUKw)9!80IvrQV!I#Xoqr4&h)9^NZUTk-s}Cf9M70xJM^9Q+T^1$0Y%I-GHvoa@Em zS{t-__elhzlMhA*c5b*7u^Wum;RUHx>UmRe4x$YN1W-pPSmnAKu7fpl@z!*S5DyFm40Vfd!{U zrVQ)~oK-Eee9&eNu(Nz@Hz=hYw8b{H9kktTYCCAzFz5tY?%+~tJ7{}$3T>|xv{Mc& z;9$NZh?~i2t+XAmy=`hcVE4DF?SMVNrnWg}W0w1N5l);IHO!Y@~~ zzT35?=o6&-CmA|cG1j23ouZHF<}~(G4;N4A>kDtJYJIQJ-?|lGKV)M6 z5Y{yvVq3w-T6lJTuyU2t*o*S5Tk{*Xj`5r2TcS$1v@nDkOsghp6pe;Af)uZck*dLG zYPcWhXr*E6aO*aSCl&xe^?gPJeJpc~QATkn5QvSBNJeUsGh(lQkp$fAGIGu!$JqaI zOYK5(AUan<^)UN^Dg9nICC_1z((|K-RnK!lIk7%RGCO`VNir4S#2PFyNk7X_+oWJtQXWZJ>%o*iHw!wMqho(T*-|t`*)}+?7dgEoF!Xe; zo4IOuVCYpt!28J~HuxK^E8{BCnh!Zx&FYCeN}68L;6~1#F5jnX^}S5GWY2Uf)@2CT zQg2|%S>8X~j2RI>ZvQjk>+PF{hbr@F3hox7TQGT{NIdL32IKi2ha zNQ6?plQ@_&+8GD)KQk@d<>>TP-l- z)>JhCQ_YjEZ#`??HM(=ksbSH)v)FIEw1ZCdPF!?TcZeBZssHVYqe$roh3!tfVX1$E zG+BpnX;@j+GDMrin1M85V`dct2$QqjjEnoJxUe^sH;{pc`>FN>uAZv2*D;-^uKYh; zKJaJb@K4dtc~h5Ufc2sKxc|s@lHF$3{Pm%yx$=Fr7C_IFprP z2}qQf0@#stOnGPx1)5vuU+%)n;bnPyTgCQODGStRL72H2WM z;cw?-gXoGRuPI(NhTE!sV{-lM3#cl;=jJOffX$~AZ!2CG*Cw{Rdct&mIEllhORZ(= z#`r=fkS4$6yzsUeZLJ&)k+ZQ1mPq-X!Lb4vx}#Nsv4}ZwO1FOZ`0yZYTtGlx0$ofP z;#N)=9_q;#Wqg2DmrTwJQhw496(4Pi<8@F|ybPN9DSpMp8^hbiYQufbjZvsKnb#KY zzHn{c^LcrLlL*nCc`uokXNT9s6}&UcJpVY0zYyB_2g$+TWeUO5%ctG!l8+91Tx)jt16Lxt?0?*ns!+SI1;FH0j{ffdK zpK{GNR#oGLlPn#{5F}c`)-{V$*eWn*hVTjIfI+hK8bEONOUGO3$mt&@r-J5JW8YXR zPS2r-A&Qjldq#7MjSs*8Pt=$*ZE$E}gVVGTOqt^t*kXxOvU_T7v;b&iE@_%^mdf*4 z!)Z@b@tw|-yV0Y*_7`*dgC@N5u`o^lq2U+W;)SsDmdet?roqxD)@J1XDW=1iv8P$yYEtvUYtq;MV1fsacnI zCOMhnd(A%(~=*_!fo+(5(%%5a8YmH>E<3D9Gm-+!m_*v;{pT3D}oO4qv zCyVUAhG4}9fy$@M8A{?b(1_Aa?TIluiCAHRN6ZEcJ5N>NF?VdT^evATjwKuk2*cfk zFzNPV9jV8%Z}v6C1}6L(aeuv@JSjgGovKg#Bv*iW{@t1$Ckj?w`qx7yFD|Zs(r8KM z$RAqL2kBelQ7%4+>Bb@BxNW9uK|}q=F@kvZT(DeT4Htn^u^QtGQQ&XGdp3V8d}k)q zgi%WLSf}lUskO~(ukIx~!mB1q!XVWk70YS*Z)OLTbHy!YkD)4AI_a~id1l|z>O$I} ztszP5@{klDtXgv2;}2(y5QM^VFnV|SPxv*=b9;G%Ny0#g2)OI7Rs;;s)-PBx0KS_n zJs4Cvi|xHesnFum?PP;;BVOELLceV0eM}+h77+U*wfrXpKWuk(`0RpkFWsA?FO2%9 z&s1DnCbL@zStWPWYRNv_UGuxk5pb(pvCLU?vwB}JMSTG?Y(=w8cC&h#k#fW_ZlEfs z*#wid#gJge)(NUE*+c0|83J?Y(W{xAGJ-uEzlYK$O1Y^U_?W5C@6@QLl%l_mf1f|K zN&cLLX}{#_gHqS>D8_G<5gvEj*uNg;6!Uj8RVaU(`MurTvgC&EHb+L?#xML_i@=w5 zu5%Xsw`!@3q0Gl5NJ=yTR<4|PlFrBxL7xHVJbsxQwIOm$yt5N_O;unrO`u3LNb?F3 zG*c}a02L?32;)dCNP;Afy4v zj*?EVrV}T7r`S-;kkV1D2P*L%Opa!hg)790+0$pV=c9k-q;VA>5fCHHwE}PNm@3EU zXqTUmA)dleOpJ2QZGud1hD?;$iPE-Qw8xeop)N`AqnAv|BYqrjDXEk-e=dAyG(d5! zfDR?Hz~#yTEqw1acnX4rnD7;S$h;>@H?U}v>^w`sz-RMipmNnb#0BSnnRchqhHTyh zC{Sd@%s3z;?5%!d3Ki?Csr(Mrs!JFc01Xx=eu}V1b00vm^i&BX?}qND$YaUb~ zQ{~)^90KAf5;LmO#RGcH<2yJ*`DW+#}dj&odk+V&kIPCl z#ffHQx+^sujL1LUN<3n~5})lRC`14Bd{5T%I-d2a^yjnEH+$)d?G`iX5@XwV(v6lo z_*IVC88dJb=ILJ3NbHM*koJ&)fOu7G#1Ji_X;b}BG==%Y>#txv@gZx5cCq?SAx%oq z{;0l*Nfb3`ySfj~Ge)089QqsOWstSt1j%KAUup4gy6t`~B; z#%X$yA_ND5yQ--6d%vUF!P)C$R|s=I{fNK=Sab_Z)JCxKy}5^S-2Q0ONS$e9n_K+6 zY2-V8I}c9|CSo-ADh0^&FFS^X5wy==?Yq1}l6h;^@Mh+#)< zXbl~ocw~v_*3dzEsGCbAsiI@o{jW9#AHd=jKb~6CB}>FRRWvD`Thi3!eCDNYa*d{w z7}W(m$>c_QJ_Hy@hp*pdb&DZdFcU2w<6d&TwC*B4m$oE9mY&xT?Bch~4DK{V*-1=k z-Qmdv;r;eLC94sDs*?{V6M31@qtJf^O^$AD+HLNmO-tkPX^%8og?`?QH;ig z8Jc@>kn+=d2 zCRh%!tnt;wOZVELZrokv+^|~^U{4eyIZY1&7iab~@gp^yK{brf8n_>6)YL~{wAA#Z zPn>_$D!lTk`a%40nue)6I0agbvK5~&uYjnP`c!!bOgh4`Dxu1TT=vJerPYEfp z!D(I%07zDGW>NiQA}ykeaKJPjFN)|Wit^%H?JW8(MU8~|1`i0Ykz=q&)s*Jd_}Y9Q z_*;66(J`v#4I$2;$};EM#x>7#{_L4-z{F2LjyH=xqQ{7b%t+7g^BR8%cO6f#@i}p3 zl(<;D!ETh*Ck7Tmk?5{P&aEki#o=-g!K-YS`DQR7qSXs z9z2!Qbg43f_hjh^Q%`5N6dh=Cw2c*W;`S*%2OTx&E;P7 zNw7H0v$5pHuQle~E|>kXgC5xOHY4~kg_#M1WV2W6EkL>FPkGPVyy2NolckfDv6Kwi zMWS7vG2hAR0}vSY9@5Nzhxu;o9pquR0OYv#Jej#}|A`Kcl-@_iBgc}IEWMWUiMhtc zf^*Dudi$oO&+w;-Kk&(CcQ8exn~v>nYP((IkI8220p|5LK$95B>r1?vVt1PKvt(xO zPkNzweMQB3@_LqeJ%QZR3i{;4(TVjsHk8fbf~ zE9y{Y|H7E5w#Pyj73Ph}4;_ZfSQQ6DTSIRVMyPRhQRXZL+y3!mx^~G6ujE3>#(nE)B)Wb>P`D!h;Xmd}BT znSj)&S~U}DHyLM}H|%^OtHDgEDy`(}gcFx@+iM;5f-M1GL4{Bntq@AC*8O*=pf2z> zzjh@qYv*ha)Caz0P}#@O-FvYI5AH%xVL%Aon#d0?Hx>wWJS}T-cihY=iPc4oqd8V` z$908y@rjAT>?NJSANP&OYq0T@y!r#Q%WH<;*u>*^GdN(R#Ne`iBzPhhHS6&=U{-NUWA=Vae0rBI*rR~JxwVxu z@wvHPM?L&7LLmAMVrI5VJ{?%NQi6eil5?M>YfrMC!@lwQSMAzwPw=`1GTg>(zC^KE zRN>sxn$@?j+g+aQ?wNRGlQlBcMx0%?px@LHn{vh@S${l49xHeYM$mW+L53nPR^R3N zo;KrgkO6wrYnDdL-d21RY$MW0TGGgDcxBm7JdzMTQ2{2DK)`Zy_D*te`uDdi zPHz%E|0{#f8Q`-u7oSyG_`HtgVY0Le&>#+xN-xZ_Vhtz+`;SK%b^b7hL+>G(eO zC&jNgj|u$nXARe#(k;Z1UWJI@Wa5I`IGK2g!8pc{tJrgk~cz>C3B)Imdx5Xr8P@|6LZ@V z2c}9$iStS<0(^X{n94S~6|0=<^QqSaa+={>(VDr(oxO_nT;;x+(z&fZ2$H3Pr&^VF zqdc85t^P7o!nCRqKSArovyKS->jD*Poa=qGIwRm*vCK3*V#5doF>dg$n`MW{k1jDE z;<#l@I+`Py6tN(R255b%Ql=|K%d?N1>x|jDzI?t@V!f<1a}FnqrIMXOF$CWVnCvhV z@F?euaG&z{Tl{|HT!~fAG$sYHO4BfnQ4ik>5E`4J#%?v+Az*xV4ItDDvYhs&Q$E#P zjn`fc4eqBGwWyb(c+yn+FX?0ri);0=hT~oZdaA1b`G`kqlJJo z#Iuc%zM1zR`#2KCN*8h+(s%Ga!`awm%tx}hmMCM0-IQ>8H<`V>nwDG3hmaoWQw|yn z!nc-J@J8Wb{Kybrrr+@7`NEM3w%pP{y=0hjw=7hn_uX246j?LEw>0aOlDa6M<(3=t z#tPFk+`D?Fp7Y4TNY3!2)T$f3-IZHSPn?q5ZBKfi?-JO6;06gpn$xk(`|+0T41_7~Z;)qAzQT4XY( z=VYGaW&Ti6`lF*7b23l#no`(pqh~T%#l{}Z3-S_WlnG06`zApEVM6QP_O79opPIn` zsSRIUUz6TF#y7aS=u|$7pJpMBd@mc~Wv^JwwOEM%^uz4T-`LFNBeQ{;|HC2=C<32x zR7ex(qZ~?7JA>8EO)ea%AX%OR5`FI!B!$0h>cm;X2${QvPX*INRcfaNBmw_N9C zjxi9jM$p*(U}y@6?6K28mT4gG5Wo!Na1G==dNGJRRbV0(OiH+Vc6uP0R`dyCZaSi^ z4l7-U@a0HA~Z?(syaIA#+$Q2Uk*2laeiw%{pXy_-+Gy6+D>oC z$qaj$@7gi@Bqwv0m-$OOW>a&}HOb3FeHK91SYG7R92+$$aw#i-gB)=9xK?W389D%w~pe%I@dg zUgpy_^T#=v-}f>fwV4m*WX|z2+id15Ihkj9nL7Ik;(b5JZgaGk`DdGXNlxY=US_M! zydfuZ_w%-&>uu)mb27JhnOkk<6FHeHyv&bm=C+*7|MfBpEkhlU!{OicGD~gd@j027 zdznYr%yV-x>%7bpZ05B&na6pVuFZTkC$q1Yd5_J^&k^4{pR-74vzdc)GGFpCJ=x&q zWG?kGH`y=$kdyfh!YCdoe5R&ECswknNpMK5O!%QBg>%rJ9Mq4Wa#{8+MF~ruJj4Gom9CdYLnsPE*s&l;_ zK&YAVS6Yg^AB%KE(g00+Ac>J@{Lx2KrW!Fsvb1EqM+4^0R;!j>qS5i{OqOn6=asNq zjb{926r>D9>$$DkxjqR}J24P(7UwzEOMj+xs=nBfoxpgt6enQR+5Px6X8QLAa_4tD z_GqG48XY1pUaQh6jAJIS6ovhu6N&<{QgrCQzRhD^%H_p>Wb_}ebaSWbm8c}GJL_d1*w7B&RY;z! zZr17fOS%c&NtKpLZB^-!g0fq7pRNpd9Emn@5#y#{3-RU9Kzfw@os_=CE6s@I#cxw- zW0S-VRA#oeWGjOuJQ*W1hOBrdOt9Gqn@)Uk7mo?te*unUX%doZ!nYeN>0M~jyYPe|FlFA5LGTW;WY4>cUm5!D z;a5hfR=vYI*5H&f7~YsR7;3y!elz8aVQ?D{ng@2653Qlr!7wPEm0_@iUszcnFmM__ z3d_F4X!hYpHayu}#P0$|_Cf)pefTBj*Rx)hSYQNn72l~7uKD$xlc{gC>SK;7Q#$n( znS5rV#Wxx_T8!`}!?Yh+NcGNrHS+A5-XqA@84SEAM(=X5N7*m>OcYNMH zV_%#&TFj_6g}CA7_g2q>I(bO^d)cCIcXLPjtdrb;J}ap)erA@Kj;-sY^kH6Urii?F zd3NbvbyE6caU^x0sM6a3EzK$Qos?eXl}5W@rlxe~*1_l1qa5qt{Uv;%5jWQ*ujN^0 z!khSwT|2RWvGB}3W}fNJGBh>n4x?&F5bM20Tdc3qmEWGhq&J%FMcFZwHCDy=3E5Kj z7fl_}`++zf6r98-@sIeEM!~l`DZSh)jRuw%U#ZfV4F#e8?a9hW5wQWE8q4Cx{9;)Y z<;${ou<_gW=7ldBJ3=_gYjX_c6I0UQZRn(^u7p!(gzrQ}y6FFQQdHr$RFreOdB%_$ zKf(K0F?muZmCuxxQZ+Uo%8PU+$znDExiQL&n1T(s;qLeQ^&wGsf{b+V+x0BL8^-2#_ z>D#kQAKXc4MLt#C!&Lf;?9%TvbnNBHUg@J$x+=T$?vPhHheAWWMV&`e+EAxK64OVE zNtk1lbSCU^%;H8{ALpqby~kB4rJqq$q>N=pV0_x#eEe+|UrGAuQD-hp5ZHTonx~UDZbPw+=_IhZSNKwxD zAQipM^d{4ZUXL7ae%D*a*wl!}WxCiqZiJ|`?r()`lBzmDI>cMNwA18Iplp0BVlXq# zryA;>?er!_3YCKlLZq1C08zt*C|+^YcX|^drT5uoPVdu8bj_#&E^tL4yP|PjC56w; zi}SU~b!{6f#8i)-GdBJ9i|L%v?$D#qh<)wNX!Yhw8qf5`QY{dhwSqR`ft}8s&p=OR zVLcHptu}hsO$KebYrS~m_ACbcZ)Ts4!(owrTQ<_YWzxw4XLGjH8NJ6ELg%DA>3uC% zkod2%zutv4z4P`%2etpYN?%{X*X>b3-?jH`238y2;5Z|% z`_01Esa~@LVrOJaCtRWJ$R6J%u1|7H0|LcqY9nVUIv@vX@C#lJ0fd*C;^!{6@pg^c z!C@$TlOpqQ4PPA_%krKJo$!T=-8?w`cwgpm8k6R^%af(DU!J?XVZr73^+Ehz(v% ze=RcwB97Y_FMPo3{(3fIzixWo=LcMhnB0oX^O!kpNnC)t+A-yX)b!(B@dEBeN#-vBPe15epf3H{X zFt6TA>TUW*wC@NbmP903wrKs96I^tL!Kcr zZK@2_rKTO?Q>1dU%#?~fVg1;wnexAoXL~kNZld&F%`Nv(AlD>y2PvJIq;4X;gGtJI zm4(T|t1L15U(r;?vg7%7skNH0=i5d26gf3rgHzL7w3>-!!7w*%Vu(=3cpn|)O5e0G zwD-h1tTxrtneUBFUVUO_nO)=g3>B86;}qn$3@u!tflH}Jomm9t%-pjzAk>!w2dG$C zb;R#Klp{~+i_@7~8KRCpkcA}Ew@Xrfkhhi$e=?3`>@z=f4*Hfw7|IpXJ5q(vB zpDmexRR4NthUn{pKkp-bHQ%#0`noce`ycxHH=?hfto$eD$7z>{zINZekMuS8PkW;; zCzbmj`uaDbukcg<1buyek?8B^zu!mtTKR{)(bu0-x&NWBe#$xYkisz9f6BWB>o=287e-Ug^DaIq~4nEn7`OEr2>R_YwHo^d=7i*KUCa`}+ zb1CPhb|wmr)Uk_aO<;2|flW3hFw9}?Okna0^!AAMYyz|1LHl3=Y)3V*vp>%?cV5dX(snS^a#>Bn9TnFK#xTPx`?pn@PAK_4d;m- z54$s)9y`PfaGHMrW&@9uh^mooxsgB0P2>;4bp)eakjXtA#K*8VuYFom`_7qk_ExTg`s zzR*y2X&S`vE8OcP-thKIxn_e{53eiM14Zkf)s>;ykwUT}YUqAsvn#UOY_TRwH^HvN z7cvpK0}FRIfQ2~&hym%{|3w@_!iyD=lU$(vlvVTIU5djIQ2t6E`ktS2cs5|GlBM4@ z721tlz$j99ak}=P8H`cC%pQy^`9LrV?Hm)#;GCR@B1P$V5jLU-5yUiIrDBS_+|@*k zAfQUuywHpcB*rg2&q89Nj3fd!bj-I(WVbhwPaMTxQ@oQkCf><2T|hdBF3XJ}qo^k@ z0{`E>si6toA#6RLLT~$MCGF#txDTerOd&p|1tZ^LXD%nwMt`;hf{{^Y{aP_8k~32A zHQw^#m0V3En^pkUt_C-qB{veV#0J<{J@*-)8epJ$^%r{%NI@hNLyD;w8=r0KD(74q zf@XlLo#Izbtg#L72?S;DsYw*@9aNC&XgYLBF8^fu$KVm;Cv z>aWIgrld?(e{Fyf+uz!YMP&~C-BZAn_T#xhmE#(-?nAJfU{n|BKxk;*FO3 zv!FNJpKqbJ+)qC`XIk}VvTlpl{&-}-6Y#ecj87{zZRDzc-Wwt^==*Gr8)&?)EU*4V za=1ftRsHy-ICBF1ZALDva(%DN8Jxjlvh+J9-3mh+ga>x?y)qXmHa0v({XYD5`W+qH z$LR5Wc}Y>8{gu3~+P>OXf1dG-@dWfi;SbXCxwS1`WTkWX$$8tLzhd=4GMXKJBnFUM zZ<->K^zM6p?f_ccYMTG`|9BlX*G42uA4imAIzSD{()*R<%`_>2o(A&E_yb{(j?^@S zT?pX2l=^b`gZNA-{*XM_)=u8p08N%Zj+!ok@eu|Sv+wp7CSJbI?O zT1Z#Z$mYSeA2~(xrz$ICR3;u-vi^LhSxKpad(PV=82iKSf)U7$4$p&lVyh2LT4!It?h*+JhfXVLdnES%BnFNU!J_eDQ>_3idf?E zrxqFwZ)^j|nR8IMEk!Q~G33WsDR<#D^FHthbrn(p-lrRq zR&xes$Rb(#dy|(f(&*62I(6urALSCO=+)?(R@wAK%%!G+T#fS(qj92-?OESER-bjE zZyuZlPf9!i(Vde7(aImTgUImDm&98${Bz4s_QXHGJ6|lOS-&na;$K6DnD#aZL71f1ugxdm7zg^QZ zrJQT^cI4Mz8FhD%>ZRrT8+Q8Y&yTv>GHC^*<=0OrjAegZNMb?#vHob)u4s>yUe#VD zUC1k}@7vHu#p?r4#{sRp>lj~sA&nBcxy@Ca{{M%)FM*G$y8h1s7zBJljYdTsbLAPyo>MTZam6za z7AbhX@KjGl_{fUzRODb;+XG~Y+i3lafB;<_+ByQB+&X!f3)+TA2v`7&`c9CwT4~&NRSg_z!9 zep^Lor*G{hG(GUz@W`=V1YznbA=6aQr4c#KsliN1=%iS5!L!x`71Mxc4VW1^hOPJY z-w>#iHP!>tjnN+t-yu33FZ(^f%%&H=-1v_X{63ynKNBbv9-iyZ+)nR)f1mZnv@smU zPzygp(00%Oa zgsWCZVktWki}tgDyg>hb2M~yixxPN%R`mbMn0^;(cEpcCpD^6fD=>8|6{{A&#orDi zS2z`O;Gli}bgd`2-|bt-u8!Ll*fj!gffWE^JP6SiEL{IfL z86nzroQO&u(qj>38u^*ki#b53SQrRy@Q>$pwc1??u|u_cy{p|B((dI_c-fz}WvGRulUI%4G`s|z^dG9|q=2TILPaT; zV1{M9(cn^PaA2fAJOx~9fDt^2LkxZ~ctxiogeF>veF_Yi)wX|#!BE;ZQrZUj+-}!$ zyaY$=Cg`;@I(-`uvfdS-(;ff`gl;^)Viy^jiEyQ!78v*NVEh%~XEs-L@v|p^%N9S| z>RbEOF7h+Aef7Bs#_%B`xCpu+p01`TL74$uu{etM;)ADkl^EDjgRZn z;NwnkzvxW~7`>e^{GlT_6BYfxFd8P2DhcB=pkQnqQfatPYn&Gbw_gHAGY{e=P+wTH zaJb0?P8fBBaTQV>gYo#2_E=q#4#vJ#KMp30E=)y=>xPK@8wRRJif=As;sqoW<8kqu z0`MCsc7Ck8VuBDmy^GDG#0J;N(@K`pwFO*UTmq* z>HDNFdpT=(l1aCn-LCdjR-3%)v-x_}CmhGBPa?@jNG%XazI**=+XgrG;`+~TT=X&m zxU1;J4}-+o7IY}Z`cJ4%w(3~_A6Mgs%j7w;T!7?C&QM?W1M9!haJ8)ZSR{Jg0R*^M z5lhlKopM$LjnA?H9PR{Ap#TUL*W!hUgU^Ap#U>!t8jI5d*z`B62hExkr3X#`Bt-#m zApwvS!CF5oNftpmDRllbUckQ8XrXhf_0zd{hWiTBuMgHd2t*U#;zw_ZOF4kgylOlj~gub;mYGpMv}e`%X@{cONX z$ND++YtYkw;re<1Uo^Vx%KF(g0)p!J`gvLcM*HjMA3zhkv3|b&XS*Nmub-ua(ed?j zLIOtn>*og`C2RdG1zyJUjtR>8IdC8oQ;|ruelEzWKOH330M^oNXd!$^_zGoIEUo*o7PU?|qCB*|JhaYb ze`5QhId$8`z}P%_vo0{sN)w_FG#;C1-!j+_epL2@vj7}Z2K#{@$hCGOl!(Au1>vuZh8p&rLhAd#$QY%GG{SZ=(ut^T*Z{t;mUo4F z2}%2ALMDJI1TY?{jsW<}!&VQbrvo4s1_C&c07S5l6i+WA)vl@?mEo3m6_NVGM{0Kp zMHh!aZGf>z@J-vdO+^uiv1$8LoI{2{>zh-3w&mjYcY|!#%-4jViV%PVLbHdX zVIbJP)_wr!LHTWtxRgmQ0rUP)R1>isexB)5ftNTw*=2y#ZmF4U@yol%h^%iS6bNCA& zMimcZn_+}PiDijzqG^;h)8z+OCcvWP)ptR(4Ddy!;;iqW4bJeh8v$|(X(X&PbkKu=QN6OB{-E!F<$4OX9UDfLC>~gtm)Zp4sTB}K3WuG zwO+TO4=Z}6J$(1{;kgf4)G&icpGqHAR&bzTcMP3H&%3M-53&Iq;{@PTS4q!;VaISW%a-bfb=W?&L99y&#(4Nrssc65qiEw#M4`El*CMw!aXWTC|Q+% z-S}gJYG3U_(PlG zd1d(8%tYYUEW9_LxBTd!jEYl=m#@>VmirMQlf*{Zea61R=9K36ucNCd#=4dl{?qM<~|m=a8?q=T)jV4I~ABr%Ct>KZO=7qQ(s4)c)+UsW%tr|B4?zc z|G$g|N|Pd69!dbCk?IJ5b8GTNOVcbUcuI7bs(Mc_)t?hZn*lk3^GW7cv#;@yM}iUT_bU-nLwW z(T55AM!bmUJy$JL;o^ryiXSHS+x+3v89OiUOqfn&%k6FeP%;i#R>Jf)1XB(MB86#Z zQDtP;IrB?n+G^ZZVr{z}NbF$zMPGP4Xal=Yn`ua-YtyNA?TavaiQ2!IEVWDFM_E`5 zd$TxEto<5C?Tb;=%tr0TG=y+fK;i842WBU;-}A-5FpT^ziTB#mVr{JCIxW)FCB1Vn zEAW^{!1XSy081AJnwx#c$RPBx`ZR_MleBk;YsB_ZeUifO(3mS_aP^Do(>>NsA0)&m z=1rEPsi+>aK|806*B*A=G1quK&572tF~zQ%ejO&qYk;Hf8M-J}wn8f(#(-HMHyQ(u zL4#=RFEHzN)S?2TzJN`%b{7kz@1n9e7XdK$iLrQ`6?}=0!1FQF!t*cI*=yMtYeR7v zYf&4DX8%`=;6l6v21olS40diPb_d#88;YBONd$2li>pn=>Oo>aaBV0G+)txy4ugZ* zO?h2q`K4t$ql4d%$6E%a(Z;dwm4pJK@E`I!3kw>yq7fph7ujTf$x?fqF6S`r%5tT= zDmdafYJVliy}zPX+|>J#yi8T?ulPb8Sijge?O}1|Z>|0W3pKM5tWGRpMgwn|lU3#! zU~udLXEDEHOHnrZsY%|+Vq=|)QG3)SdofFA+fDfcmmMd8$%2R7o@rdD2%|4yR3p`z zv8JJ5fpKX9Mrk@2L-~R*UIL}WikONN_XTERpYD2)S)@3#fQfD@(d#HCet`s6w`6(K zvA+nE2O{r;{x`9$g>85C7aQ-v&<*rvChadOh}d6Tge4iY(9!+HIt(&C`+s+TvGO-+ z+;(MuaWVK%hxZr1y4wQK{{G@c1klm_#oKKF?e8ys54^MX7pHoYWw?3c1-C2kBA)l_ zYb|t6me*(@QQrDgc;b1*RroAx$Rm@NTDNt)wSU3(=rgl~6D0f82v`vfqZ8CR zFqzz9CA*^~uT8Lr{MLBqVTsUt8Lv23Oy#lJqBv-kSd_Ut9|BU}GP)Y{|fFy)r| zSStE1gkI&JjpYG3kU@Nu6KWwRlo|{BmIOD_vYOvb}?#G7Pxp`AJ7c=>g0ryJ;jzAPGdjaO15a&(5fj>MejqT zCwvPFuU{{iX|Ye2c{w4RSpJ__eLJjQkFYDhFP-{3(Gmrg0DWUuAZ3diZR4IO z@LPUuwSHha01*qoF9<*^Uy&XkACkY=?@cBFpF1gG;2>uMY>lCexcO#--F<5y?e&*d>Pah43y4^NAn{3h%sD-*$8o zRol3Y#|LZ+>_Xz9+v5rCboe$8l^VpidD_{+_}qTqRy$*9+Iay&kf=?CefYJ*2nj!I z__glf&fsld1BzS~5&PWPx*OTLU3Z*nIbOth$Np6t_TfCCm)*Ay*G8<4ou-$KB!8(u zomdSvU!&#($VUkzHDloaF#xQ43PtFWtrO%k63w^kv~|h1V(h4(2`h*O&!(@ zv|;6VbB5K{+b!x)2ARGJ5g_ev#S3X~3ELY(sv`g<+5nDA2jC=(k^uM!v>@RlT#n4p z__orQ`L`HWVur$ocllAI$H0SnHLQyQdW z(Vk&7g|77#)(}Vt32(|?(!1rZo*ja2S^K$me|FHp0Y(gazxiW~C(iRLKWJG#zYyu~ z%W<-NUY*$F9d9q6V!e>%(>{^Fl@V9Gz(&0@8h=ZcN7$rS(nig!_tzz@m}?wp{;JV% zFOz9j%tP=lo!djIqZ3E8<6lf>wj2J%wmrHwWYN^o7X7ERM{mAT(|>DvN;%b{J0D?J z{)$CUmi^0C&k2>P^REej27!(Mc(KuH{k7=;{MrK0mjH06n3VYV{>ha1?qx!Wv3yeE zm`f#5jZ!#AgoL$Hs%J8N^8A4kb*ufQ;UP|uZ=X=}*qKT49=2Uh1F4G`twl*#Au~ig zKpN+7Cg#O>yhtfc^xux><&e8Bwswrfx&;E=@=G){ErE(JPZEK;RjFhTmF>~0+foqd z0FmP1c~d=d*ZOxM+Lh?v@F$NJ==_>ZEWAgTzh6Sh(DB{$*zz74|d-9f@VIi3Wbq$RBd#FP$_ zR$ed_X~~Ag;Q&v~IrO%L^+g~8ioR50VS<2L$O`ZQMFZ9u9x8q|DO^SAJBbt`0Z{-4 zzD6=I8h$_xW+Wg=VE#W;-WMv*10Edhr1Qk?9tl90_$azrNXTed!g4$Xv?+Sr+v?ND zm}QygA0v3JG{OgPCf;G5&e%J7o~kf4w*BQ?jw0IZI^3fhecP)-yJuJpzEaWhX-G?B zN2>JENJ~S9sWdM|VIv#WvTYsy2`vM0q*;<@a){G-BBof9)wzaa)VYS#`mEzTV+|1Y zr>xKG>MZ(pdGjUoS;yfY|7cK18_vtg++MaPZnXhep3A~O{0=ky1r`amfF@$Yk?IJI zA7TSo_M?MCIS)3LllUnF{E7fhL8>DFp0BlrNJ4>GEYJzyV5s1yUtD=nTl^xG^G171@n^TDchj7IQ1$%n$!Y+a(@+zCK$2bYQ`fLz&V6SANzIT*^sEt%at=)%jQng!D z`At)Ls{GaNP$eQ!YyV)EeaS(O+#mlb^jJC7LN*B6gG90TsMv4g>0aA(Bs@Z}1t6^mN6;`cO=@^sl-mK;|F*68NT zlpj2{r-X|yzlBDLJk)5r%fX%`SWt-do=eY{?_@O{^HRufIZivf27xxJ73uhMcbh+V$UnihXDq0(*ysM_DyjH$ z6)~U8rx(aM_DiH7ZKT?2ODQj%Wdm5~=57i8{2PluKL^y0QGw}*IJ0T8)r0fg020Tf z-{lMT;6ehRTWm)FL~H>6N+*yVWc6S>h$z;BsYvk^UC5vRbY?65?3R}lTW~7${&Pqb zxOr}Tj?1P8S)JBO+DCXkBgOfVz40aQBS~YQ{O0TwB;KZdvONxS!z9gNme{D{=iM%r zeNy;qJntp|2A#Wl(~E{zYkyDmrvt^dQH14WNDf^Ckl5sQ&rq@zxNvuYVpu09yZS*ii{`Tsb6}9Fz4Qp+`}69wk#I6;4R_ zpg36fK*NmgTR zt9cs?#YKr?VYW=XqH$dFV=^V)G1Nhcc_}mw%g$7zYPTpc_LuaO_#d^;?gdu-Q|v({ z*ILMSi01ubK6ToI?8})R1DoowefFbkECA2D)q#Y*!OONq9T-jkze1`b>cCVRz{PF= z34P-qmcH>NkUPe+MI8Zfunpjcboz#EpA8X!w$FaMo%DF>;8ygg?+ZTEZ1`t2G)qJ- zk9At4gOl?TwiBxh@b`r3{qgtczyLEcB`3NH^W0KsT||tGdmwwX9Ew!~Vn96l9#Hj# z8e~078A(o1++PAhj!dbEKF@bW_#^Ky&{9jh_bn)ZeafWIu0(E2HuB}$I(*jBHJ*2X zF6*o&o;LuwP{E^*#?N$aF-!m8faMPlV%v&aw=D}F>RW%K^eAw)VXJQ5hl9|51VM20 z3THf5N$y9{B7jVK8^=Akc+1ldY}6#wO9f*ul#J(%!W(NBT#Y}EJxg48_s}0ML*G+| z{$v^Y3Ls<)_GvKahjSL}LBAYB?Q9+z(1*>dUs_|0a;yYpS`Ts-im5?XWuphktZj{6 zwv&y0^z=ky(P-Y+o3gC~rL9LwTk~=8bWQ~>CpFml1JF>J^Oimk5LCPeDp=}w>_T)2 z<$*d|qxZ9@bC7kRc<+nR4304;9iG3f=3=0{|0w#{4%hTs_hBEJ619()HXkBw9t`wF zo8#5}i6?Y6RIqxW-hkTB?YIp0=58}Oyexg2n z9M8KJ`5ck=e{}ap$+PElVUlZ@|%(bG&o;uFotl zw>gbIGrYC(EcaGn9OzSf;qz>2U|&oN+@hlwp%K!8z^s<6(DG0e(Y!el`oR7rj#wt7 zF_-@4xb<6wqZs55*WjA=(Ye0nPdhQ9MfkWDumi_^7mWWgkv3LXffkO zizys9Dq|7w9Nf-W$SUhM!<&8!Xu)x$Q8SPv{YKvhEmxd}uZPRruza(5T{doyl|VJs z3{=D8N0H0DhRhe^ZA@u1Rt=N`G@8*qKIXaDzt6I6elBOE8gofcG*s?hrlI)HU?#ZZ zMgrE%Lx=9mpjvk60CFNB`GUl0tyt5Aop6K;Enr}p&_B>W$6Gy*$^DZkBEQ76IiraD zsT@#khaOyeek7WKIY`74iR*YN*CTifk+E=C@6(3% z4xED@-qVJ913p~TonsC-KPNCq)(|qTQ?M|b;X(1d+rjM`ngRvz7|u5bjK~ihB3InP z=`)@;LEcI1BDHw*YeK9My)Z1bYrR<4Dpj5$wHB#bi|ktaCTi`a-r;c7`2~Pj5ZD{< zJiG`xo|hr-s(U1$03=>vBWq%zi6!D7Uc9{?pBCZMqQE=xyjMW7=)fy2o$)HL0)pNrTZW&g!MNq@#EAPAQ=BHuUQ z{QLmJjDW_cV3hpo9qv&bQGj;^fkW`lgLmi;`AI{Q1B`0~H6rRqf?w8cSO-G!h5lvI zWA=1E0wc&u5YH3fbtoMQbEk;$ZR(bBMr{VXv?6m~ufNY4pBxVFv%;A6wH!!}!r<;PpTS4M*ZqgZ z%0pk8^;`Bg7B-n(o6WAT2L_pu#okKcqi}rL68+8W%#3=KqwSJrIOrXP0%KQ}K?{Hz z-JS?Dh&0aFLB>;&3At*ZcC-HLeAH_+oX>P1F3#*^ouk8CYVt_&_?Vf=>=dW5$(K`orIOsxNS^)B*z5T5>UVB82cp@N-F zjk+d1Km^8mG_YF;EH~)o_eSmvZ&aSMyxZhC$D4yXFq4Q~HQZzL98qZWyr_ib^Hn~= zVg|iD1CBC4{-C!={jTD0O9w*rwQLrUf?YIvX2-H1tU?CBjAG#98Tj9K*ekxS%Xc;G z<29GBkUBGBiy#D(;vm3*Bq^&cK(k4RAWc6>6EQ83Lt;hi{3Oj8UYZ<0%r(ronHg2m zR~5L^=sClCGt&!aY2uurDFZh%m4lQOrTV@5VD!CFP6lMl&Fo^&pm&?@Dx1M{4xWCz z&u1D#z{W7&gQp3^D%AOG67!4j1fH2XTN;LJKhqdoX&BO@kZzpi9ft=xl8fH$gUYT& z5+7fMNA367lSdj0U$hX1?L;;a=hCeTaoA+y6q}rf|A{!Pkce{|(tuh$A;RDiJb@fpM(!E8M(#NtBlkjuJAy;RCB|%kg{Uki z_Vo|(ILR^-1{4|*BE^$q6nhRh0c<@|e2yd@>!;Md%CQWF(tSxj;J#qsPs^T5_UCV6 ze?0H`lkts?+QIN&O5TQgf?yK<$mA?DdrsR) zUBnSiM3czA5VjrU!?)#WypZ)tImizXxXS;dNZIqw;6NkV2RmdNyGv#Cl?Nq4Im-3u zP{HKG9az+82<)lK;6x5KQr~5Q%oA+GFoNH(vPh5LM`6edea=hSbJV5mt1z(6L2EoI zMc?gBBhkS+-2F}$=YVuBpOZgcMJZY!Nnb-PDWx5vwPQ5q{# zU6#-)y30L`h92N13$jctxHH-zj9IC+|69+PI82^7%AT|=ROOhoghlQu@-M2y&zu5# z7H`t)7>qAR+Aze~3+zgdP6Eb{7L4-}a$P)QV)b~}G1SQ}3!(&CX!ku=X0UAdEnj>&oL@P)9 z<<}B#lj7YDwIwSuv9yxaM}SEg2kR$fGje3eSU<;KcFIySF+^mpmMoPb{<4TtoIY)H zfNrqY8IgT^iY&FCT#?>?*@QeuXPA`{xa(s|z7~F37@?=@r^KsAj}^R1)^8E~GYq5N ztv~>rxdab__gD>t1~Q+Eh2P+EB>Vj4)7T$(O@ei%_pb{j$7UEuqzmk zL`P0m9wzpKr0ba+_s>_?s=a{3U3+U=#h!sOPB}pa(~3RQAS;5~00B0$%NOf4jIf$( zU7phFqWMd~Riw#ZV`+_@t@zk31Mu1a%E_I`B9hN*4zd8uB!GS_mM-E9$GugcgjjUR zIaV(|;x2^)2o+5$;>>-h*>O-4ec~z2Z_q%Nit!W+mce`1C+}x99|PVNDZUyn;(3qt zQEXM&lVLS`(X9V6t8@{BR$$@aHMj=U7h3JZO`sLV;8p(qFBuJIamE@Dmg{YlG3&nv zMSP22#=?;kPCI{s(ZB;t{Z|=In1gH$~4H&OwylN1VJkB z8$qlUU^FlTam)p&WXv@}JtFUttV$h(PWup6hyg=$1Bam{7&h3`_Q!-P1JN)6p<53l z83c0U>Dx{KJ&YYNosYn+iB?B5_Y%qFdQ8T2(#~o1{2RE`j66Zb!xwph4~>BvK(FZ8 zU|(b^T#YBzM3+K{#E|tf7S>a(Dy@BikBsW0k=ct?^2Fq6_5AA?PM75=d2Bh!PW#gu z9;8lTe`-2X2}!B#Pmd(t{-^9u92d9!X&rLX+n?6p?N7Hq{Y0p{XMZA4r~Qc?McQqD zV*i{n6Beh`_9xD08}_G>Y|G+B6PBqV}rlVUmT7uqm@rY1~_xhw;VrqS>l zR6-*Hzml@FryxyZ0@JxV%`ceFK$>5S*qlHl7$a4X?LOM+}C7PaczGpNqyqahJi41FCH!fO%io@oB7ZiXnA`a}dyUS1j8Ak-I)q}h0F*Q;`x+)O7dp*8 zfU+9dXvE8WTe~xRa%G9J5FP}|rpG4ZKa6#c_dZjm8EG|4Goz4CGY3sGtMHqqnM*L} zVwz!w7}@xY%#f}cxuqpWt`ByXvqu}b7gWJmR|BKnIMBx^kOPn^6R%;9IopHRu*a0; z;8i|~6rd5P17zyzk0LSrnzWP0izllYvZRjLErxEg9dCu}i7l#oU^R3s>mIryKlb9bKxdt@;hT4th)Y8@MA@W^A>Lmh>ENm6S=solv$J3fH1_v2V9?7>c{RMIB&1 zI*!EpH<=iK1lE7ZGIWGVb^pJ|y8pkBk}>Z8?~TvtF<2-LdoBCH{}<*P$x05Dop%^s z*mlZ(O=7F0yy4QnL6X`L#|7UAN{~i?!u3h$1&o^ZF}B4XRGiw5`6-Jg8S-ApL8g7l zIQYFw{pJ4pfFWY8%7NzlkifD%pw-zqG3JduLRkcOU;*leoMpQeMmpzNwivl7{C^;t zo{o>qdS|%CSTzowC$`MR*Z>pTezeL;KY3?{b^7bwL#aNyBk~#37qfLZ0d_Ukwc7}a zU2T1CE>#~#mg_!NWB)eMKlTL2=8T3DsPgNhb4w4WBg}WPLztH|nzpy6=(DXMZI5m& zvq$qhZAZvedNalZ9qtWNtbNE#j4j;&kH(fK(LFi*3#+^HI$mB7YTHacN57Q?L=Ks$ z=z#QEf!z=_!)>JsuVFgHwLsH2S1_Fxn*EnokA#MN;~PptE^x%}ybt7wFvPfD{B$E| zg;=nT^jCy%36eO)!0sV7p+Ha3zIR5y4azZ?bp26VAY{6Hp}y>hgdDsI zP{fY%Fi0wU!4TI*TA%wwu2htdWTH~A? zhMAOr@uBw9)MzLDkjRG109;_K2YJPK0Ip*&_D;aKDIE;nV+$ul zSmc~AG$*0TDLB$xad00$NL=FMgPS zM{S&{Kg=-784jixBe)u*8*SO_C}w^8$FEXkKKMb3%paX45qTZDcutHPc+nF!CW>2j zoD1onhsM!J09aa=o_nC^(#5d1T$csI%XNWs2WGVlu}5z97m1qe%=%4@Fztv3P0wZfizfqHhzZq^H^`}S9t!0?Z$*Qm78 z(*2=}#7m?}GP$!MyU1a^vmx#w%2h-;i4Y5HCH<16zDxv+?-NaUiR{+}3)v#@-FO_+ z<~wXTmdSmpC*kiQ)y4SR%V-eE1p?@TY)TQL&>oSMMU{m)SX~drgJR?&KA~Q$C_6Z- z<#G{_JK3MCg9L+5ijad(h$A9-BB?*g#sWn#H}S~_=p+>*^$Ar#ezGd@NheE@$wl+& zY(k-#282a;3QkjCW+wcc_S0xj)XFu0Y%^I1i0Pp>!dxcARN!MTApP?-i*1%-N*gdk zN~@r0fG}tpKyx6&i@O4I_}hb~TEB}Nzp0$^ABv2_PZ|_fK(%LXjOr8nPkCL$eAKJO z{Jfq@r|__dOC4ijehqbO=sQZMn9uK_Q&0z>^EY)0en_3-6x1m?h13LKoDBkFJsQ~j zT;^aY)-&fRJ=38G8$E%wD8G&6s5|3#4u`ZS+?(*5`fE(i z^8Z4%A~4pY zfjwua&JsQqsWrN@B`CtqR?2gZceFg`d8_zL(b-y+FP)vKeoJTP;&&`66SNrSAJy3f z$kgx$5I#CPo3C7*Wntafinml}JuHOI7T{@hmLIaSj7TJ%m73650%2!aj|TSYUaGV5 zidrKZiWwVl(-ldK zcuwL&fuOP;Ap!e}A_l%GAbZDZa4v0l7h?hFIY<0;jGnWUc?u3jq$hq;z^6r~NarF= zXmd3*(jdt-hffU1OnE*jX+0p%_fVssi-x;LpM~)sKJ0Pin`-oD^Lvc`Ts$qh;)fi4 z>Q^%QQWJnFpic@=4XhHt*go}2nZ?M?7N9=PLX$jaX@lP!?>eS?mU%F`FgA@Sfei<% zBG{42AI;wxGU8=b)cFN;=&o9}I$Vi0W<f#mSzdzAV=K^M^h|b-F3nl84|*n={k7m_X?k|V zZuP9?B)exH6Ns~CgepzjPxtIaX~xBnzUqHK&zQ7(wjUTB#7Xwd4mhuSHgaFpvwD=r zd!_H5PBB60yGxDW*BB(|ybViR>%0#WSzOkMc<;_$X#I(aKSUY|t-1o-FL`*3>11z= zEmZ#ohDe-l+$yj&Hym>a#K!YWU17|8*h#as;45<_Qm%>%Blmu_;C?ztrRqM4q=|L- zI~c*u(6%i7_e0;>O+bjiYbkslM!JkXmLM(q?}_$goecTJo-AMJc+P|9zt@Z45|8IS z3?hhKhLk-;51@lYzT^w|(sz&-fO~MDj2+be9Iokg^^cdyss8z))~s#mc>jKJg5AIK zFjy)3$17!cpdoKHNI|ZY={Pxm*UyHtkxH)<=@l-49uGtPq(|OYVUzRZbL`Q4iddDJ zl!s~~(Vh6zM)(RDeHeIr{Z|+b243M(q$)h@8dvHX|3mXbT=;48^FpCLZcim_3d5kk zCh*UmpFW^P>&l;2ek>{Ztk^~_Ou#tX38O;65ZlNs$N_=_%OQZorX!WgHj*C3cgNfP z*eD`}&CaDC0%MB><1)hdw8Jp&Ouz`Gg@H9x`mqB%F7_!>9qUKm1dQJ4V06PE3XI

        }rR3b` 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%0A7zz{fVv<2 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 z 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

        TEZ|c(J*cvRQ_{h+~3KJ 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

        w{$^&S+@+f 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�mDXWVG4;m2bQKN)NIDG-q9X5eyLw#_au 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≀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%0DoZzKr-dlYn4zJn_$?>GT^nTLF9Zxfxi3Th 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

        tQq+gYm+CExpQ>AmqrE^D-YvnREtJTmsmb}jOd1 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≀TpzlF7SYDdr+lrRh*EImKuXmoW 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�Cym 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�yGa~p|Ao}R{fmXH*Q-{T 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ɌRn*=VS|OHk zfqJcTAluL{GwKo>Pv-_(sBWUAx35L%eW_lxdzU0;PKh_usHuLml;A{yA z+MK)5$i$`Poh_JCLVPaNDh#^&GqVP(7B@>AWeSHvDAXG27?*j{vMI%*$zJzdN zU~QyzP>Se*!!u7_YFgM2sT>x{v#>TMNEq}u?V*MVnFXIv0T-&>WgA~)jK+q3&VkIV zpz*yB=o*2?(CHpAJU|mR+BCh)^xWZe@fBwJ%kc7mn3Ja~#{6*=h_Yoxfykv zqRs}E<+4rXZ0~SZv*95#JEUTy6^Ep=VE(hZr8i@O_>4Uk+9#OYO-{3r+B^uPc7|Fq zi>_74;-E1)81$gi54s{4^u)}9t4z)AL1XXqHyG8Rt6Ebxk@|FFEV37q4>_VigVK;0 zw0X;3ln7yJ4H|UM%hnHM#Ee^mRsj;gYpjvuQP+%{L9^+rDa?==aJh;wU~yQPUo!IXnI}isZU@-WpJvnu293Hx zWlKiQOq<#b1BBxv96WdGh!IWcl9g^J zHvWoi^MKBEPO~rusrFGJ#J)t#E~kM>nwLf7i-=64g2)K>HOPz>q&hoyoW0QBa8t2E zwgSh+Y=DL^K8?F($k$XZSb8zH-I0Jn683ivBQnfeNkS|=X$88)((7;LVAr_JEYrA- zv=rNIh`PstFX~8eEClXBQRfh1!!**OO;j9V6A;lDJx+n!4SCUIfp) zWzZUHVcZOwb^B~nKThj#4n;GI-1hsv`!`}6Gh&0&`mh--6K>u?gq;{#!GQZ|o*lSw z7j&lgk;0&v{A=_;KAQ$^{8}6ioDL%{5Jre_jd-|};a`l`7=(L78M3<3^m>_gI2>Kd(k{ z`(>W2QgFg~!??}SEZJS~)N^vZWA3ZYQd#Y5=+u9Ocb5|C$h#c|qWX%M`-0Qu>>%JW z$Ibdp&S8myR&W(_w#IlmAGuzCDZ6b~yK4zcKmwcmT?l9eAe=S@Zsxj2h#9~b0*K(a zq;b?;&ap93XMZ%Cg%7har#^~YXy66>rVkJ~ye5iJ=e(MFIrez@Th!em0Y)Xfc;ti@ zj0}r9o7`-al30p|qizSB67!phGB{fmgIQ+4igEx`bANpj=B$kqoWT^5k4f+)ij^$z zobB{5k8TOBI~`F3Yt*TCHX}Fik~t`*iPsAhT-v}pv?0A6tLn#PhJB7>Qp4Dr-vCJyl@4oOeEY38~zFWdeBbbGBm zX7v&pVc#uhxMl8Q_u3H-L+w}Qg?8C}d!u;!@6|N#jc8&!APYSv(Im@jnc8xXkH}}f z*yZ_r9}xRDm!mbs*)9M->ery?|d}g$UI-&uoesboK@_X-kvw`vJ`vVpsDwaBBr2Y#(+Miiv zNsog@wQ1e-MTX29^Bdbwo@}=0)~2m$s^!0R)2k=beOSawkMHZp`;yhmkC&&%SNQP? z76tuy_h*Z&4UvC|Pdm!JW;&n?f`nb>V&k5Zx%XX5`#NPyV-9zu{pQI%djtA0 zd+-M{3No`BRJ3b73b-slz;jIS7>t{J8bqq=A%e?Km?TEU<&jmaFa7TSyRtif7i$iG z(t61sQ(p@&QwiixWqs*Ss;`FbrlGsJFdKBkmp?WGH0V}abh*`!Zs*!t{pfa~z15Fy z>+P+6JiCq6^B-&Bj%mwe0yH{&*7f%tj8$K7p)9qiM)a>`YtoFnfq z%S6}D{^1W#<|lrD=Sn2=tY(=K<9_v!-C3C5Q^~8DIr5el1ccqELxa<=(2E|zqp?n> z_^^NMMs`B-l1;r|d-emg8GNqWe*KsB74}=%c7jzRyX^aoPikFfIy$6~Ya4m6Bfq(3 zpO$-&%IxdikzWpFmaaDT$oFPG_Agm7+g8zI$*j)49|lNmR$U=lINe;CrqrSq~g0nU%TrmI;OR zz!BbgTn{w;{o)hF{-!+hVcXxqIQ`uXocZ5PwEbNVC%ox>20=8 za@%qzypldw^2DajResz$dt0p)>hYCeuu>PSP*-b(dVDn()w*DXy1GUe2FtoY;#EuH z&75HxoS`4x*4bPA=ytBX)sJo$+FSkTw%*?Ar^gbqnZNIkDBv>~-&i|`e;8jF-=lGZ z)BmL7dusS8;~Q_sw_{vkeE$^t&pf{0e(aR-Dd!O~=47-mzNYd2Nyqm)D=x1b#ZaD| z3iY;cg%rE(+uvF7cI6PgzgzF0>G|G@qbuL2F1-KmJ>OgLab;Wa{onL_Z(04yMS3q* zZ~tn~_m)+ze6sldGdM$@02+y0H8O*E?d zEc-XUPitoXMxdLTKM&mq*;4%NUx9W`-M>-1xBEW|^#fh=nCfdXO#SzswSH$+(0`yi zCibYmW!%~N|81dupbG}{sQ>q8t^fT({Xniae=gt~JN~oQzphX}keiS7sQ=!x*6;jC zF#bR;P3%#BOZ2ScFVqkCen5}2yv?YGz7vp0CrtFQg^ zeXi$^Oi#Mg_eceDhwqV{JS*pTW|o7C4iCETZ_qFU&{EQE69;oqnVwYXdsM0Ny-__2 zhkyJCU8&%33XayrXf8Zmcw9`;#S|{?5I6(8=1cCUyh$hMFKes=yhqnfZ{K||@UPNg z-y2MR65ks_rg+~Qnx0hQd&AO`2KydR4Dr3H^rWG_H#|LQnD1THev5I<*jGDgxbKZl zPrAzY#-=BY^u6lzq*1;XOHUf@dtQ3dSl>&gCsq4iO?pzy_ijv2@_cVfdQ#H&Zc0z8 z@x7_(NjLi5t?5ZqeD99*q?>&2&h(_IzIS(e(yhKXt^ISRBR;gS_&pZjH_QMY`OFUP z!av@rXF~C{?$s8>Pqgt!Sbn0#T%3aF@Q<5#41#(hTNsl?Awy!KEQ)Fd!1oGX4Zoh? z)(aUHQ*|N3LiWT&42yy>VcaNg>umeRjpBB0aI0T#7Y4Wb<+eV!)i1XKxiDutxh~9^ z{hq_j+bg^G74|u%!vIEbXcBI-$H&-{u#vnh$`PHYWPVuSRcMW{L^gt3eusmxxXK=o9P2gs`ctJ?{`JjHD=KC zUFrME$9(_J=`W_eikXK$|NX6GdGaUSL0rz8x$ANw#DnhpIuelstjt#8>Pmu4gVQx5 z{o2ZO%_zT?+$%>)3x7w2QCky->jJekQHrb@wKY+StojZvrr6NuomLN|YX6&4FZ3PE6`L*;^<<|~L*9<3?ovyjcuN}7gM+N;>Gup2mo~{||*IvaD zE`IIEG+PmBN2O~#zjk!GCh6CXP1n@;wbkjG8~xf?x@L-B%Xv^Y`L)S(%~Zd(CS7x@ zUwdP^<_^DhO1kDwzxJkd&E0`h&>g>6`;7={u7?9 z{sPah2+zNj5}Ur&p!$d3=b*47zENi-2n_#t0cC`#9vIhyk)W7ISi{E&V@2dMn(?2+gJkyhn`*>m_+(v_g zBfe$6tKauJ9;C=b9iP|l|JiGZyUcbfrO?!{bF1Gj4uHM^Q^LlrC z|M=$V+Ux2x?fvp6#rA$o*|WiS$!Xym$|xA`ue!(k&j(M_9(X8>_gi3z>r=*S)~9Oh z`jp9UVV9_Cf+ea^TB5o;{Mb(kusm}&A_Aet+7AmCp9gXz^Mi8MmYUI{RBn#-?=ly5WpTubOvTkUBRs2GUddXJ7hdN1GwW3+JsyRl zJ1vvtZ$ej^Wr(BPrDsa?ax!Un)(`->@1B`mBg3<@z&f+5I{c`@7hbxLsU25C<@OS3 zMubvr#t~@ahuTYI8re|HQ^eZ%;r0^AHh!eNM7WI~Z7)af{$8N3W_Aq?&(b2*%&uY6 z|I68Xy8&_9V!pO+WrcFI65@E-y~FwNraJr^j)iR>ncc~eFv~+7{IbQ9KP`TI=+_Jx z+uYzY7*^TW+s`+d7RH*Z&BveMB>ba|ylB@cUIzZcxZZ8YwU3wX^4tC7 zyHB*g#C37}?GKW8sMH=&1`dUFqF?57al1iaGAsNwCHn)6lY7+bGqKv6*~;wjo85JN z+AQdK&IL)$NvJae!}uD`XGq`Jw=3b_*sm)w;`q2s z@{?uB5qm8V{=c+P*|0;&ilBXfzMs#k`C<)ApW*(6X5%-Xu72E|e@S@O_1s0nzn#{X z-2>B{6YZbmzRvD5c$yllTK=5$5Php2A75j38vK+j_2J*%Nbx9;oY?)S*7wP?V)qP~ zBtP0^FubZ%eN}4o0nXV-d z?>9#8z65?(M!ipddeGx1J$G#~{n3=)L`u3ucvT|1`aLOsZOUy*WY_ddxto%HRaL@W znu;{@s&C5K#xq{^r$ov*MlQT$pWDhPkZ^ZUU{Jz;E*UvVfnh0UPr^N#bY4t3FL{~o zmMa@W`u1|ZBTo6-gPu4qCgE;SPf5UFqfvRv-R?!`KwY)*P+h5rb1X?B6uMFYSFq4k zL!#JK$~}^FUPw7F($&zEbAYZ$vbQ?rZw$I32TH8QFmN;<`9(q>d0bX7^xO^ymGj%r83PF2Dp zurkF|*ttqLZ9KGHX|7Ust|*YwaaS!h(AMW71Uxk{27q=>+zdzgu0x-_b!BLs55(S}43fhm7S z%92IG&eh0-yC!AHBH?V~q3wz^7f_%g?yR*?cX zr7T$_T{EiD33q$ak_Fkg(DFD+5f$aGy9aR?-rIWwSs5DpAXJV^ctE$f< zUwLQdEAKq=Rn3|Cs^&cM)s!>y)s*wdS5wc-S5wa;U)^zLzPjT)^3~mE=BvBUBVXNr zX1==ryztd-Hj~Q#R2CJo-9ALZM1K#gI3Vee59mZ9yY}NL_mxC;&wxbh>Xh4=AipyY zuSmIjxJ&lAwaQEOsj7l6jp$fP)eEHV1R?78p(^lVAVmL>9?9zgVbVg#LqW)$Ags|J z=}AP6R3#u@AU!D`|^h0y50h-XgD@&HCu{JG)rZoz0w z0V!KE*B8nZ0LIb6V`UM>{pUuH_Y206$U4K-X09)k4FQbR!Xp?71kX9Kbybx>G`5G( z7;yE4u{{8hRcf+Z7C}5max52&GFnb69M6~0B9^HU8o|ihla7N0qpY1XNXPSI?Fhyx z!Xp@Yd*X4ZU^HgZ>BZyuF_Q%2RN>Jp!g!A2u~IO~zB+?=JU{l8V7xqz{pkK15FX5IO1djnUp`7X^Wq0iI7WpJJ@?C4Gwd6k}yC>3?H%_(wn6 ztJW8pXiPHwgO+6azRk(>_ej-vd)`Zbuft1!z01pd^k8FMNlfbPT>hycqNc9zpDjvM zQ36k0(*t*Xpxk-mtP#rpD$PD8XhQXQ*TPNO|IsWvniUQZ8uNlGKMql zFEu4=h;5m2Q}NPGDJZ{b_rQ|j5dR`OG*P(REq@)ZFSizUNA8v{g}0Tb{8f1T{hsjd zZ(KH7K`yr~mmPC&%K%FC#bM87A82b#MRL4K_8F$bAXKz<0Ob@Z$VJEO%MuGCmO_O= zL?WKJPqqjW{P{$L_|66cPqGh(SP>wjgn$6ElV=bmBg!Hmh*3~H=y?NBvQJD2^9jG1$$+jV&n2!#T&9SJH7O@=Lzv*9KIL@D?{`Ex zBy!H(^38BVfC%Uz8r}{fwv{5HDZwNZ>4Bg?F8iIf^@&IhqupZ`FkJ(JpkN6i))HAO zLBtjiu{7!I3J{?voehI4of&IlFng;3Y;|t5tX@Hz7lQ>7-N6#mIuN+ zV2lz(C_Gn65yTO4*>AQzmx{FU%IgDb5}30TLBS#-h|v*@D?!9oIAcw+$Qg=^3K8o- z#1>DS@y)i)Mk|zXMzY8mhDM3srFtM@dn!UaceMe?gCf{^0cTi5e6wxxPKCUS6rr$$ zled9V5K*6Wx)ikwC}O09Latjv{B?NqIY@}Fw7pc25I0FMor{Qgu6Gf!z9=HT(zf%D z77+j>5#g1Hh_AFwE<0xtabs1r#6nZIjQCD?%Q?u1FSYINmJv1QCL^}>E+g8CGU7{Z z`9E4l0FY$FloA>7rMAhHZ$n1ZNGvSvmJ#0!Z#@SYk!U;EEhDhs&P7H%-@A<1P?Qmg zwvInqMgWjx#2qCvLR$50$cU*D3(eg!;w$0j&Ot^*+m3e2h`Y~CMr`k0Mr2u>f+iFLkjTIr2dKCs(?kZKjf!bw>t6Sq* zU29hpk@3>7mT}aoQcYVE%W71$T2!W|=+Sdy58EofnNgTlRoYfr#46Q~foANX6s~LGw$(F|t5sp=pI%F}(Rrj-X_@m+uO$lOJkqNa z!TG1x5}AG;=~c4&{L^cR*gZFTE&A+yK!dYhaNEy=&;DKxJ}mg`xW{L9+yDRYzaQUk zoNoEw$M?LG{O?qF!Rv@&9In6t=fRu(a@i60wm1b3TuwK|q(*bu2=2I5rn#(pZwKKm zqf+GyH6W){y}zoj8(`I|amrO){3vQ$mOV` zg;l;^)35H`bVavYzEy>!k=65oj|bkl{M3SSR?n@hPp(pRJY<}EEBK5Pr|NRmZGge} z>&B1AX;=BvdF`qOXx(nR3J1t5`0cprDh6=)?LwYa?*-&p_dUR#8C!rotMGflUQaLH zfCu)9ZoI{w+<36pQNZ5*z`Zxa7xr4fUcs3!U=KIaV$b;W7JJsGx7fq8S9cbBRurFt zJq?!KB2M0T|G4@Fywmym!VBo@cJ@`eh(7D><4>!YY>fi?WN}#Z6`X#9K7_gI7ttph zq*wHn`u?gR;ww7;LZ7uyK;M3gJ~{si3Sg=j2ti*fYsQ5TfJGl>i$z}$2@v`U7EA$s z+bn=0KC2y0L7$=-CN^MV1_THUc&CdH@KUVX9U?Hm2?(*SjS(m;AoQ6Sfn{A8K?U^L zP(gscQtGp2Q7`E088I;MfxcqMz@ks?0O&hVK;OY2lwin5)VB`w6#@qZ^aZ>d#1Aa` zZ2Z8Yk0^q=EAXydgj3MRU~NQ!Am-$qgcS^Ur;95HFIMsefd!R5Me-?_V9^&)Ur)(r ztuuqZKS}fz0}VYy-@yX&f<6KeC8BTrIg38oc?I;HP4sE7R`e-8aT?KAj7Avr8QB+v zBTCR$kbQXk27RZMeKHsW^p#TI+mwC9@I(*U_eKGI$UYOcD9XOJbC!KFJqyfxHrc1a zTG^+l#%X0=5W@)2hwKZ27(LKuWgl^Z0DY&CeX?N#=KT|7UooiBL-rjiFfX!?U`L7U z+i=dZPu6e&eI?A>tL#&h#>zg$LQX6Dg2;zKpOJk*=%WOE1=*)?#~Edx%<2GrrPTK} zWnVEA(nI#WSwJ7mYeFPN*|+hWWuFZ60`r!j&l>9je2d0s?G^?b$Ua3-PAmJm<0Wsh z2p3>c9;m^eHTVLgy(MI#BJ2m&@`{Sco+}1T^bRXY3o15hq7p&aMDO}pTTM@8rdb26 zV4D@JGHZ~jjK*YTQEy@>Xj{RPplvOY1Z}@He4;Wz{6u90cQJsXcfhR$5F0^J3E)-; zMel%HR+63q_gjM~D%0PZLMmh7mI2fo|Eq-T9Rew;N893aJ(YR$mQaey0JrQIm9cQk zcp;dgcRivhDiMTJ^p1_zGEelh*MN%30Jjz;R7P-H?(2>5R6>RZK^4`bZ5bDOD!bw> zVHK5uPPEvdGL}xX&Ol&A?|MX5RD!k@TG2b&mR+EywEfoLipuo244^U=?qCr??`XSw z6+tDW;m=Io#Sn{W`+U=P5NI)NpKtmO!Y!t4t1>m>^F!Z3(8aWUzUey%y##QdU-}LL zFag}>m%gPhEa9Jj`VN9I2JUmE?+X`?3GI6u@tD%Z{qC=PdVi|#lX}K)9@$f=?WM%6z#jb#}w%5%3&XPZW{&zvf4+Q9$GjX&CvACbFdG8;B@-Sw_7WcrSr zlo|GsT=tW=p1E<054@OikLz8>pj`Ihw#Hoc&j@^|NXk9Ll58$}Es>*K^w0J+y&bhP8hyXf?qNtq!ZR<8#>t`}Q! z>HpQ>NVbqa7~+^^lJv)9ny>a`3|%^KRg+xSR={Ji}Nq zugZjR_fq&X7%bpidp^F)o{wao*^rI^T&4cn!D))!AG$saa6_)1l&OdmaN2QTr*O)< z{lGQ7ZDj$c6%pW)8&!f+pm-7JDn_6cN^#2b0|v%jz&Px(x8Rf&C2-nOg42pI7((E* z1DsB8TbArIt7^Cbd7D7lEu6M=_wSh1v2t}xI zc9Q723+VcegqX~XL#W^CI`Be(R1xZT+typ8s)#{q4?+c)ogd>BK}3AQZbIcbgv#Ii zFlg|KUXZ#Lq_!53ihP3*av*g-Nd0bGiw7NefK1@X(2tPX8X&dtXvb0bYsl5ml%a(J zp?+)bftQ3-`t5;Kl>>G;UIwYRh!l7@0%Ok(ktYxVe|G`zkV}n}DIisZO5rhBdR9v0 zZn>GgC?4ED)j-&$4tIgnhuM{)>mxu{;X+Lx5l)2E`Ib_7Cl0!;?YRO{1MUZTJ-Gh` zz!Uc~=iNvJJZ7H1?EqQv-nSqXQxc@ED?zHbzYU}w0I9dNZT6tlI}FIH1ZKOCx~?0k zhXH%oH4s$~N*%Ybh*WV|k^5E7AT{8A;CczD`wmBl+9C1;?&t4r;Du6eQvgbS2HejF zoglUEXauc6>Qu?qQUN=eT`s){*y-$d5$tCZus658R1gN|U%;*}qPSbY9t6cVx9#jr zz^?BW2Io`2YKUN>hk(6VL8<`7Zxyg9Hq7)QV86@O8BNpK1nlIt-36SUe*xQ8g42S4 zeFL0MZp-&3VB5NJdOiiLh6ql32-wL)t_rfC7Xce*^Gz=T_BOWR2&rciu&FkJA+iK6 zgn->pL~6HyJp@uyZ7f#4RlsiOmIdciz-owKqKAN$g;qdnF9P;qHuCf$U~gtikLKrW z0yf^pMm>wv^DkgGmLRntVBZ9(@wTqs1nkCcq@GU!t098a9s)M5DA(x)?7zxbo$>Hv zYz+D&fi6kc8Eg~kHebPPiCpbrvX9!`hDV1}DL6(R($+fwro1)>^L!yl( zB|O~2Jd)W2(iDcK_W29WFiF1j>~^y*47bF{%76(ER(FrMP^^N-Pn=kN$g{aHe3ImY zwt_2ip_qhl1#x4E3Y-c4UI-3}@g)>w6YLZx26CU-qrdFuPzi$7eoO@*peXrKJgXmxLeUQwZ`D%2@| zD#{xC@v@}`tkq+3;xFFZ_Q>3zV$M`tS*W<7ZJ#Rc>8;{6jpmX1pkkA$xT;Wbbz7$@9_p>)D;nV= zJA;bFL0V8>Y1?s@F^ZD@s4-Rs72oz4tAmPfdyG?qif?<2Gyd2y&i!M@SpUb4apxa9 zM$*Flk@FZ-JlA;?nN|mN&UFe!p;J}o6o$`52e!SDi(c8b+k0f`3`p2Jxgz}N>Z2!5 z<{Gb@u*TKjjYyW`Wy^o1zw3V0L@q@B)m9?54mJi!_kQljPvS#SyOUe z9ry1oy*K&7o9ka!7XE=)Ecpk&RLFiv6V+uU=ZVRC!zirB~n2i*MKP=Nn4o zU3)iwo|r*f{00Y6%vICj%b%9g3twJ0-~2qj*!;{`#t$IR)sO%9W_zb1-0ie?3+-Lr z-l-n%I_zD&z3b9X=J7I(D>!&WV-yVPfb%W%O1J7Ee0fv@drU2IU8!rez_o_?SUF|6 zuGaNXd#wRJHr!rM)%9q5t>HfAnQNo9bUVe~ih{lLV|Q@p`9?Dp&eSO8OEu@AOnaSU zQsz@?_YTjTtD*BU%9*rklNyrqGWZ?JeGR{r{7&I_IKM38nsYVo;8#eE~lMvX~CK_mCL7X0X9NBKG$B}&80zpdeZ$|8qBB7baJ=YlzHND{rHd9 z+dI>o|G2QsG@2Iu$6L5-|EMy8QDS#BhTNCgwcU@$cH0BX6DL86n|F5+kf)h%cbWnl^i>JH2-xvqNT5L znww#enMY1e`+z-cH2rBV7jgOr)Ck}F^qeox)d;ewo zN#w#mGcLFO4`cYrSN_}flR@6%;(WIMj}%F_yT^Qk`&@qW?+p~GXI`^I?Yh1&)MvLa zRG&jD>!*F{nVq!xtnx}T_T&hfl`c*LRN&?2EDY zPp?d5?sH(vCm(tEWPZ-i2I)Z73eHarKl&OqS>jKo?;Wm#TWM|DCrN?af9$=}n^h_4 zpUnT2t?*om)0+Pa+c--KPhYQNT{$D-*Af;SJe*&{v5-o<{0}rtg_3vs^8at}PPv~s zXKd(Vp{9_+Ir@!8oBz{qW(FyFYb%9rHKL%S>k~I`cdKN6Fm1WGeMIboZ~qzloPIcPnj$llgzM z6_~r1r>)Ot=NSyV@81FaTk1Y@{pW@;+~o`jwE67?jONA^F#5e;_KMM%X7}ak@9%9I z1AHekMWXm62mC>D>+;nWfZr_vfPc66{=jGe@C*Pw@O@~$I^O+gUH&p#=~h+xE>O3} z$*$e4FQAu_3Anv(vgaR?&NS!rJ@IQJXx=ZodHe)Jc325I#P@4AxBsP-ZJkcM)7ioW zdtCZqimmq5XF3g#*WQ0!L4JI0eNjG*b(fpm`_Fzzs6+$(qdG|U`$Wu2s4MvOnrDhL z02rzN7G-4igQ>s#A_L}EpE+#%D=+r9W?hf|j6^K-ceU;B_v3AUKj-%x`@7%v_m|Hc zwf#N)>B9KF-re7*->Ek{L_#TMh<}KiA$mcVBh}?w$JJv#G`{jef5&Zq!;AgxZ7q(E z{&@S08DgQoNw&YuWuL>W>fe_U*`qJ?o=I}G({)-)aaZ#?+*S{-ygpGW8urc z!RbJ?mEp@L=};iq(#8+q*Ej#wVRO)gVj4?eq&&L|Ab(_u9 zJvCQ9>AIcv&f2SWd3$F~*18URXHC|+E_+wckNVNH(5P%y-43?5YFxLK_EzobcBH*k z6S}Rox8?lkw#MEL4Q{8}+u^~j&`n39gWDPQ)(dXy?ClhOy!4E@`tgmsu$W5@GdHIZ z>CmET(wC7Z-W*1Re`gL=;(!lxs8S`rQ+Yp}UkrJ3Xc1O?ElxxYCVXu*h?+rjT;fOA z`QuzEE)7mOR*K7~ZGov=&b62L6lQv;hFei*u zlxaC_&P?V`jkkZ^$S0j&c1UMG97D2gK(ehglI_@Ue8(HxMsJGVTq;pdjW1Nx^>Fdu z5?|Q!L~rj$(zA^(tm^fBwcdODXp-7ng>=-*%T@Bf4Q_ivBB z%bbh!U5}U`m?G_RF@E(QK7RG~=zGRR`hMafeRII{f13F0+oSKYOD@Xqi}d}@rSF|( z&PDtCqJ8qtmEX=q`o1W?-?{R8#zp$RXn(UG;+<=MUzFb$<@Y<6zGtw8b}{~aF+TW? zmEX=q`o1W?-^ud(;{N1|^!=ZUzFXOlNEAH$WP|s}VQqdn*ZnryjDK;zjoBQMzPR5; zM%#aY{WgEX{xNMnxk%3!>G?m@{;@xSp0(NJB0XQE=XVM{Yjep(dcH`{?-Y90W|E8a ze372tDfFz(BNyrUB0axT=(&u=^o#U-k)Gcv^sLPx7wP#TJ-<`vx$KgQ^z1)%k)Gcv z^sLPv7v=LsdVZ(Sa~YdGF4FTwdj1bY&#PAPX}MAqw2vxhp_}|#(b{C@5Bi8-*M{4F;Q;vnNMFRv8 z8EBIJk(6^HIpTQ!(HjPpB}e>Tt;EulRmy>DlVe`FcVaU0FShgxN&iLQCEGw^#Gd@i zW*Cft+ykBY399b@+@PeFR6xo{;OE_SNuNgEOmx0MJBjeW<;Z~G`3(ubDgRS7N1xf0 zv)2w__m53pk6sKd3AgE&a9cr+r#&^^r?RQx1uOgX=uWWEtO5K4*!Pj8mkNRnSYSR zNT+t0mwmmD=l_ezn_$vL1pPirF5NIqL~GrWY*Zyg<$V8}kd?-mw6qTS0j&}QebrF6 z5^bOSuXPmQWTxbp*YCNsd8QD-|4Ji7g1Hf|c$wc@s(CSy8TIG+kAA60A7)4ve&wc! zew|cN&_~MOmm2X}a?Fu?CVQDDY+VuO7cyfb31^SzC#%ZyJ8IO-D<0@6hk-lJQQs^)nAU_f=YO zN!0glVff@zPxIDxKz5t5uQitD){y+LjCskl_t@fdi^Y{U^J|TDr{*`h;h8T{#3cSB z3E*FLJa{ty%bygJ=qM?X@LEhtG>{}BBqiE-Y=}ww_AI|=P7>s$CywQ?zZf6jCOPHr zMlXHWO+E6Xrzg%yrYEgRrfZKS)8DwtyJpe?@0!|0Nm${UZ_MMi&AVn|F5&O-uDNST z(rx9A%i3*8cO_3=ra%>shVZB_72e=kMZ#b0wPrmxn{>B&t@WPU!kb}UYlFxAHFu5j zS{prgx7XT~bYD-n%M!rjezk%?>r$6IYq`KuGz#w$~y)|8t~WOIX3*Mw6r zXv%+;^xjGTi*qrzA6>kNauYyfr1`K(PJ** z?n=0gH2L0y+e%mEoHt8Xocy|s(Y-4Le?_(?TI&;?>r?Iu#_>il(sb<`DVJf~ek>JQ zO&2$E>@b7clZs?h?tTENFvFXav%{;Rv%UbjB;l?|xa;Zg(uBK(4#Np|4;@w|+<<3zgip&C51?4ho2Q*{18D zf(kF2y@a_Q;yu>sW$QoYWgADJL%ql@uXBUvu3$&dO$mRg7s)5xyys6Gn+UDu%;2Pd z*Nt9eOVZu%`IC~#&_Pj$56$`;;POOg^GSFo{OFgCa|m`q8z^* ztwny{>OHbYOzw5o&g0(#{%zymG5%HYZ)`Gi{hqrYBfaIcs$26fD)ISg3ewgb?~$C^ zihctTMQ+TSzecAen&Wi+=c$wM_nSUW*F13CDmeTvPE!J^uX(7JWM<-=MA}JZ66J|& z%2Ju?a&P9Y@`PXA<;`q&roYTo-|G2azBB)E;7+EwNq_lHFa5=7yO)$eReEXjV)-qn zgMtAH*wYQr%1w)10hsVP_4y5^GvTj^hRN1>&!6pf>Jl@Lm)|p@0JzWLnK}nEG4u8E zX&*FzZ_j@PnMGw%{OxW{`fJEll=RyV&a-GOCQ=UaDU(sEfB5nN{7fKu)^_c)q;IIuvb^>0@$ks`*>ilzDem_V`XK(v&~=ma^(+C zKC9;2|M#Ok^1DtBj8f%~Qf54xKWh5zub=d09{tdLeHr%^$Zn(ZZSp5;N6FaSmw%Yl zi-5X4(Ht+Uq;;d-cDHsLL?#>6$7qdGA1REr7GTU+)ogoc7629O9otnQ8}_PI;=^$# zi>VT4?inl-$HUg?@-RX>$W0ucHEBdyS^7QciNpLGs~$&C@?sB{%hI*w{IsQOEBMK$ zYX|f5WV&_;KdaKUL;2b4rEjY0ilvj(yOSah4vD27tRmTEb=+T>zPCR87rAJ*u_C-S z8eW^eVO4s3ODuiEvRHb22S>av4zEc+xH-mEOL$p$1vU3X!^>nF=fcawYk9sT{ouA} zcmodu2#jJEm41W)Hxh=pQA>M`apSW z)$AB(n-_Drw=3p%W*Y~@{O7aH;TXo#A77>`EXgE4jq^vr7j=-BmI7Xv}|2ATWfLD(slMC!HOD6!Tv)@Vks>Wz21i zInTxYmw*}{24J#F>1SKif79O{&8`Y_%W&N7z%s|(5(5c-6YxZ{O#{qr4D`&6(U!lO zXJL0`c6li7?}>BkZi~Bz0LMR^%>wDIRdty;gKit*z83XYK^{vOaMV2>b2db?SvqN@ zLd-d=8Lf{w?NMh{%+E%%%Lc~WE$)7&-Pz)=^jBwBhe4*R`Dt-i(#(RWyNjE}*=!h? zqV5V`GnR|v7z&>DnE$%k&aMc#tE2wwad$)9e=(YE0HQmq7LCiyzGCI@Z>@<@+&>a` zS7fsTs2WS(ST#HDz7loU#hn9Gbk@h*BXMV!=4M{DIV7n41KBkL<8DLL-5Phc#+=ru zzk-Gt{(5t@A{=+uM-7k*fzDl_K}Y>{bV0Fj%-yfn=D4lE2Hf-&!-qN&gNdGw`nv>U z6j1yF;{o!iFXiT_tJh&PWPUW83&ovm)Ze5=vJC@b z&T zm~%qyWt*7xdJ&zoH0G@FJN=IAvM|_nn^j$e;C6zdoZA6$#$40J0@1jijky~QgtWTN zT`B%soNz%&Y-lpK$rTY7-)R6&@FREQ~oD<33o;#@($^ zXMfD!=$>%k$>xyw0cj)pa~l24VpqR`-(}&b+u&zLGFGttOK-B|0tJhfep^zhZOT$5F~&D>ioU5ROfd2&F)?v z8j$?sF@G)i3%P4yQH1A1&|#B?Spiqfh7f==eSOQV@tqYon25VA{r1fr%5h?gP(G=h`vrkMK*O(9i9L@Q$MCP%_x zn}1l6u_fkaodXhfIUs#H<{U?gEc2WFEF1vV+_jMZLWJ`GLvZdgZY4*=4_j2N-resn zh5VO7`a9rp7di0)a3YYFYS_7uznVJpg*G^uu+3}8H+MtSUCVsN{KIYs72&@iSLYr^a5(#cZ#F{1$TwI6YSuXBLCbNqCDBH6hEk+*<^tGWe**<$?p|10 zYQ}xVT_cu&|J?mZVbe(xMpob13WUg|YY=sCh&o;%LFcY?*Tn5mTcXIwOD0%-Jgq<{phQqM;Q(Tgg34Fn6k0TNg_j*u= z{z4>)`VONcVn`Qfxsh?Jq`E|bad)Q}eU6cFhnX>C+6#KJASwpPA?#m3$HVaqg-JOs z#QB{uM84Z>RN)?JFcjadRXgMUG0ng{unBXNk3r-~$uTd^NhXLv(vs5}^S6o|W6~Wj z#N38>rYa=t&2~09`}`xQL#VGISkx31j^c| z(-4Jkd^oaIU@;>Q|KT|11MlHN1dmZubrRT7QMKEu=S$+uizWpEk+ySDD`*H5DAVh2 z5dL;BJh2G+2(SewL{|~Z%r1Ww>E|Agqi~(0n&Y^80D6f!2awn+fNp8ju<>FSwa`j2 zY$_Nc?yQ7ZDNhF?+b96XM8F21MKO1~cy=dnpkJXjD1!Sraeu9(JJy~F)7>E zL;pq{$~r+>OvpSr=&`@~$6#yOydE8L- zbFq-IZR$kbGF}eEofpLpbzoe>i!{Y}fb!yZD`uhIEs14rys`|YtB?8XfGF<1q`?^B zb0qHX6QTQCg=_4N<^cCp#@Yq?-2wChogSEtnEQMb3(;+3@B&}FwQyW!!Mi@VYs7u< zQ8Xm8nS#u@W;+_$5sfhQhWQr7L)+BV;+Uk$QIw6tOuRHPQ+0(jxu(HA5RI(U-^|!c z{4UHox)xZV{pT+hguYMhV*;(F(w(qS1&l6DiNe z%7b7Ak8QhQj|e6fdMzG7^M_&)nDbD;8tX$+Q#2ZL-gMSNsE#G@tg|oXzk)Fy^;bqC zjd9$LOvN=C*F0l7BG>(m=4u5bzR_KS_}GR(o0Asg90822~EBbbXvHKxUwdSLo;_(uK;zJxR=Ry{TYp2HRRca=E!Jll3Lh90iMv1iAbI;+UB? zVi}2~cPYSmQog1^jGrSNmI#yr6n6YHQ8->zfRhZHY#(@*6|(NUPf(53Mpf z3LhFb7r$Y}K%>2yi`pyFjAMd%+l*o0?9EhM=dWcZFw52=4BQjIl#_jgs$sg(5U4R+ zSwlz5(a-)q$p&;9k}wnD zp=9VdLIrOE?gYoqCaiMM>g)q;v!%~a6ILHQElL%+HH3M$$kHmZc^MOmPzii+^@lu3 zLf9Cu{!0+9-%3{)cW{>59y;pk7DNVGPC#2l2dAOR1+pMR0QxUsyp(?yDQqf7)s_r^o&z9>5wat+LmJ5j^xi#({j7J*q^fdGEJtjoOyQFpJ z#<03%fi-|ZU9SuqMS<6bYTFXkzmodMEEc4{-DG-^6v&d%H~tgfPi62;?B{3LxfCeOB>BBY3Q1}Faw=3%8iJ+kH=y9%ymaf!07KhxuWdl)5 z&P#EBue6_$_qfK90}$4DR38DSK=)a*!QAG0FgA?(!?|7utrj()=mZ_O zAJWGy>(+nqNTb4TnTjh6c}O%vuV`$EW)ssuG$Z(mlFsNmC>(gPk7ex1w38CkSmwi* z5`HH15-_M$s}Rhk-$Gg=Y(j|T#sQHnXhFEd=`vy&|5^|%fuLrC1~7}nh|dvmPEj}OF6DFl6#B49`d$6oT$dC!Du84 zDaVcObHzm=e>*=255@I%N^DET8MTKGA$}AwBO7=P$)HCA5YcK;|M{q(lS(lWPsPhJ zvj_bIf$hs7i-opmaFN6D2u3RIUq_&>b8$pAvUai1jjqxJx5w#Sew`zS5Rz{7S4R%H z8^%c&8soy~X-mR+V^zR3#VETN12YuRbKEr%)_TYSYoo-< zK<*oF4*{*Aw^*;Qn-X$H)60q@$bf6g(Gvt-4am_55fz|*L&KUARa|FnK+w2Sf_xEp zzjOp*+-FdtX{pOC(U8KcbEzwP#9794$K1pC%}5HV7&&o_ATwk{k($BzhNAhg^AvIp z5L;*BBd}MyfgVEyA5Ua!(ngfh>+?hK;~E#VNs=gTxTS&K8KF?TF$_e}OEP#f*s$$|EO?o%9CR$o{<;%+{a? zIoth4gtN$Xr9xp4Lp_Sm*$=h5uZ+u#>J#-lut$q=e%OdObq5VCHm0PMY76s#%Zf-R zE~gNoOkzUsM#ZD0E&UNI96AYUi@zt`s3nIGzR)&JVq|?hvMP!{q&5ihw-YpBvQZA3 zoc$n7rW)#DRV>o%P<=Pc8Ie7iQDN2^Fx(FFgW;x#!%iX>N5u*Lc4Vos<(2^9d~twT zV%di6rj-bmA%OHK2=sT*9ubK(SQMeX1S0A(OWylG5wEcbZQ#Sb5rf*?6KD?5Cavsj z6g3)Ty$tbvFa{2V!S#`q?s`y0hx5RifI^HKHMK~A-@Srju`9?h=iL(sC#|AjLZf+@ zUx2{!54lH0g4<&ue9kwG6Sh$^NhEzQ3nlT$#>||N*CRdyeyW#@3mwBOm3PL(?8F;m zI-FgKN;|JPTb)h@x7mrrXEu=d z+XJ%Fk(SW?jQCM2~nBLFoTIUbGdmg8b5U`b}t)dVFT!wg`~RSNq` z&P^72glMoVoepCLw4sn>Bx0>SCq=eU3QR1zY~c9JC`ZJDwCR9j#4lE&8hK1Kpn&H& zg}6FW*;vJ5F6(0wPtnRoz&-$QSVktYo*+Wx1u%~tjOl*F3}I^=bQ6xiz-tpsh-+-T z&??Db8$eowk^)(ZHg0#DBvRpdpnh8Hk4@&R5d}9H6lRhG%j8+0nQ+;NT2pB`O^GsI zmiH%F4|E5kA#ngPLyWEU(gSpj4T;4s*Ueb33Y@HtMh-b67fNq5R5&JZR-P1SJVaEWuV$fWvohL&mxF#t(ptlMI)Fk3O}riyTqfh4>J{) zn6VT2*Ls*>R}=zvz+iHDW&*k_-WYW<+n9(lDNzJi^VpNdj4_G~%eWn2jKXCS4-tAO zC-N|sHC4@LJNh$)uoi7RPcC1XosEMeQc zW~@m3tyt#C&k&7xfY#wbYehynqoJb;$hiBQ9X>0QJB;~YntP5&8xEcjIv*Cr(J;tn zY8wVj%v2C%!#g%1X^@OF2PrLLg)3@I9HvJY=NI97&LQGD+oh9VC*;JuV#qO{g!1Vptky2~p7$ z%oVuOhiA4!;JA6XchStKOPNK>n39#&N}Mf?h_G)redPp!#IHJ@OACxf_@zJfPRzwB zHi9!qqU~mN_(s_c`$4r!km5BYO=!FD6^pzYVtotq;!RbZ@9d5FP0n`FH$k;l)QO^+ zm{Y`mVMiPjBdFDz71Rq5)Q2oRyIQEKgX!Fks4F*ou^KkUiGonLp}PQ3Hsb+F!w6o{ zdIX1baA*Zui$F(2G6TeKGw#{}$;l%uXcMPkjT`=Z5gmrRCKZP?!kS@;&R^jifMm7& zN)#i~po`3?cS$f)rrVsw?9O3L6*`W~R&eSrmA-QK;S;l;AadN$ zrgh9lU1oICAyFuyRl?Dr7a~0{V(a0D= zt>ZF_E?2adxB)X9jV$Mx0~Uzcj&g{Ih)1L~38qD`&ycF>(E63Q=!D0N4uc+y9BnnG z6_Lwq1qxLZ&9WQu&T>U(u@R&b%=!r{S}fKOX<)ec&>QhDi-V>s$E=Q2YsljUu?wc-lAA~%>fI>mQdIUzGUq`)XxA|O%d zmc0XXMrf4IWm&RiL7g6(kQws6n2p}UJS*H?h##|RiJiVL9syv20yy5wp(-?ED=YBO zl&p4ER@B#}Ca8&|BD$?1=GZ?#U-CS0d3F;2A*SPKxgE1YHeJ1Z2sBnbRA+mVAS(1B z-vEZ7hjE!%CJ-r$0-q+dMZ1IWY;CmE%+z8TDeU^d#lpY^V@n_%*1^%TioiNhhP)RU zYLPu?^$3~>GF=WLSSSzr46HGh$=M(g$`eQ&sz72a(h>}aE&teN?APgXx=@hLPL{g0 zGayn=AdR@E5sSpik84?nKAk2%k5`X<8`&(28WBXO6@Od$7v#$o8)E~2$NYULR2E(2 zKHxz@7cE3x*@OVCLrx)r+WS0SWJRvir`09MO*;yK8IUmY2g3vBLIV+qaK5=3u4A*6S zEW&z!bEfZgbYvpW>W__5n^-6GS-`0X0mb3WlFuok#<1mvG=jLDvOIt>PlRV&=BjdL z68yt)5;Kw}l29uKMmjJT940`mOHkPHfVX|(dm5Up@nq(V`M>PF4SZGAmG_?;0tAYl zXt7OOt=PHKA+2r66fJ47&D8|&wKr{AUu)lpI@B;q5EE*vRcOF+yk48>*cqRx&kXZS zXa3gl8R^vV1+6B5@a9_xM8K#7L^vU60%8bMlIQzd``nug6`M}yng9Ru`PYx!oW0Lp zd#}Cr-fOMB*4q1+^-IW0sVxmen+FI2t5h5pCcB`enTg86u{Rhe*CEjv>GsIh*o45} zbXITWS>3S-Th&-(EfN7opp35T_^Y*u^1(KQorU=lWhzb=6pAkQF+t6PYy7vgrL+a4 znkv#uJ|Mf6A*2Y2ehuLYoJvxe9D4UiOF+&bKBPjd0=3dN8CVMb+&IlXX4+YAS4?p3 zax7u~(~`GawMRkzYtO;jVk9C%m8EZ^q>jhk#ukp5W7}K}`inlEtX9o#ap*2-U+H^4 zXeKMUBT>ZHMX+ta%+^4gN}M94cx$EZ5+<=vxXCWd(w=}$d@vSa-M1=vR`XeVD<v}7k+~%xr*pI;!2E{5nVH(l!!wHPqYe3TT5>tQjvc+QXu}Em^W|B z9L{ji3q&qY&npWaT@k%|j(61t9qZuls)|wtGgd^O(fN+jWOOU7Zmr;9AJp0hTtN6M ze>MobnTOr+#_OW}5n$Wmz)|&821~$eQM_?**jpOBKqPbH>Y|*JL)rLDi?=+)5rWv| z>4HuoK6S7Os{~=wMDr3us&9~TYRNvZoVq+Z=E5odg;P=&UfbA_N7U~b$RlE>^$qY= zDoLhq8Ou-IR89^h^cC*es*jhn#fb^_et1BM)Hpt!%Qu?$#~XJN z06Lx?d{Tj+pW;}}7Ead0BYk$prg6A%0b!hb28kz4O^?L=>G|=-=E8W{;DWx~nC2!v zr9I){;=I_vtimbv@8Qqnd~d0~uO3g2UDP=|yb?S(Bcg9Yb8KX|J&~@1h<(j#FSwQ$ zdEO}(OpSS`R2J!Hihibn?H3k)l9Mg*mc8SwUT^8`uEI}Ip*y8D+|B`}cw={SBC=XN z*10*O47qOICRo8m*y4o$pddd^g4-ce@W zn~FD1&AN6?#ki@981YCVJ*j|MJ;VFaM*v+p1Mp<}6YmqIB}B%R4mTbt^cw$#?15GY zT}2@d=S*4?A`j^BbZE7QlY)qJi~kOW zuX$}aHO5=#SLUTIDA3=6)CGn5TbR0FlKxIg5!%h)qSOVG^>=dWf@1wGPF--i{+@o^ zq##r-p1z?lzE*VLs1E9?Jv8oS6|9SwAle$c2O9@jFZvET&!rvy#>Q5b%*>O^S{J<8 z^GO>UCVV9`eaX3`=*ey>=_%#8X=SJfd7k zH8$syv)~Pgx&Gg^ejrT!$E?=+KcU9Esiya=IZX~x@O+z$yq*=z08er06gjISyS#L8 zak!l`cs4*i*I21Vg77;^o0;6F4D~c<@-%7f8A=M&=ie0m5ek1{Isd*f$EzFrp_6VN zHjY;}w%XIz{p>shd6Lfei7hu+`T)Aw}Swgp?>+qQARp_AIS^|h^j^@jYxF>T+g`_q^IpW?in z89k?o%oq5#om$_=zi$=sGiM4v^QNtCt zU*7m~!Ro7~z1X_?>Kbpuq}8u}#e1f3^;M-WwzTzJ_w?#l6R#Z3YwNk5r`Rj|^V`06 z8wJ1Otrp;m2DnNUJq=*3_iPBbs_v_=-Y#%@N`}Ohc zY#%@Q`}J{JwvT_VKDK41;`D46&TY%gvKd+IKHHX=Kr^!qe|~jKqVK@!mRKJO#hUW? z@CI+`|KPw9tMian=a$UsJfzjRC3kg>tmwnn?Qc7L{o%GFx3So7yRGP(IfsPcL;mW? zc^sArzki+{`@KCmY2!6Z2kPJF_cwM&8cr)8Sd-r{(eM9L6>m6Y)uTGL$r~zI#8cj* z%I|$6D^EuSzcFw%z!(2h@b@jroJDFn5q#9)e}>_IYH9Q0-9i*F9W_?F5-6N^8Wq0x zE&ZMCy(_)$8*@VV_|jo-iS)1Rksp)kMe(%-QF76O2D~Ld(nIQ#I^cazm^4KzZByPUf6a!!DgCeks^;<||0O)0ThsN5fBkRCT4# z`^L^&hlA}?$oG3no1c`lqQr|2-8}qM8PCCzD6i0oOPe#=nLA&lJfm4Q+tD-8*v66K z>!O8f@kO29Be};8-v-yN-^Fn#NFd;^bB2uLfI7KMjd{nP=Z#%vr}eA+HYwQ8I0ZZP zqeAH=DA}o-3WKlR%|}mAksCg)Q)3@Z{i=wUD@CKPb1?3kiPYzzS;Ya4x4UMfQ{{cV zG~4Pi@@u8eC~_R_=aJindu~f|GHXQF3eT^-8GLuli<}z%Yax;PYVmyq^&eP#Uox$S>KyH3YtUW8}mnqrq#`D=6&!n0gJpu=?>vDAs=xa*Vuw?ZDhCRz?2 z_E4>diq!1Wm3xIH{MXRY#^Ss6H%lp=${LKPJ{M0Xqt)^BCDHQWqmTp&Fa3L~`Icz; z%1e3rHUH55{&Zd5ZBoO74@9{W0{w}1A`u3^`b+O!v!M6YSmPD7444Va^`$#GG9{vXRA76o2vLw3VnDXr^Pj0iy|J}yi2Dx7$p1vhITh(nn z253+~0ve72NEhvDiglu^EN0Ynk4r(Xos7O&P&`@zUsX$l@c>y_cy!0HHm zor>a(3`d@~WINA6(Vwv9Y!D*u(?4lAY+pQM}-95Pd;XMn@L zn!iEUhivWNc`j=oZI)p@@6jRF{;Q|IGF;m6!`mllt01K5Ur<>-a0;H{PeJnCOe|UQ{~lG^=rz5bnQJ| zJZ0roZ1FA$hWZN~Qm&^qq(Dvsvi^)X76v+7AC0qPaD6p=lHk*nYBYrC?E-o`rz!ZH z@HtnyyVLtq=TA{BpLvH`dS0MdrXOQ~D}CL@l_h)H(OZXmmeVVtbw$tr&aDqdk2&E0 zS;yAdvym)gF{#f7tN(EVGiCeN0;rkC~`=0|p_rPe|Uy+4hm;=9I z|7hXoXW`Gyf&bX3;iqNc2P#MUe@Fjl+wULD_CE)HZ{KL)S7hNA=D=SxYWVqC_;YjM z?|);o?N7_X4^)iwf8wa&`wwONp94Sl_0hJ!A`8DT2Y$o8(ZbKq!k?Q1|FKcSPs_p& zTrkrAJ9KQ{;d{+`jcKP?MCaQ;aDCypAv z|E+BQbKvI&qiugh7Jgw4{06qeqm+MH_;YjMKQ?OkX<7Jz*hv5H*ge|z`wwROp98=5 zwb8<_$igqofxl?f@bk0q=jOoQziYJZPs_p&l#ld(;;7;K-^}(u2Y&9Wqiugh7Jgw4 z{Dz&Qg`b~=KQ{;dW21(jmW3bq!btz`*fHAn`wwLMp982Y&7=qiugh7Jgw4{DzlD3qL;#e{K%^$3_i5 zEek(z-bnxNcxkll_xES}p98W{&iK z;;7;K`?CGdfuFl=wC%6R!Y|B$->`MG@bk0q=jOnFY}D}6vhV|+8|nWYTSnV{{~Ou< z=fLlMVYKiovhWLY;4d0A{QNBZxjFFncaFCGX<7Jz&yMte;;7;KU(fbG2Y&A6(YC)L z3%@W2e#55G!q3mbpPK{!u~EZM%fb(ojr9MHj?uQ?zc1VW9QeH(M+?6q3%@W2{-ROC z&(Ff2n*)D;`)J#rmW3afG1C8uqlWMA&GtVBe(v+5ZGS};eqj#$hUeZ5KJFig6HGbW z^G^r&VN^j=4AYz5vUJA&QqeSGe;GV`#Qu^kfAyhb%1_QIU)b{wB3ru?oSkJLZ) z%~K`s%~Srf)oA=}VL8^KqW*W;6?FiKl*Ow)fP;cQ#8d)OhN%!CQAt$ScKu_o6~m zFme{lmc{j{LGt^Xb$Oh(ZHD1lA9SjKE_{%e-aj_cD_1sC4DSq_LLYh?N&g0#4_ zLq)kHHki3@^Ds8pNy81-%hXmJPt6E|@4Uu!b@9|v_55?y#op4i0T#v64f1LPk9<%j zG@@9V>lenarZL^9N=s{l|M?NU*{;TZ0!;7;q1U*2D$y^_2%Pbo1s9AnyX;F-u*?3n z4EpKwru1N!{o?pnhMznPtl4BkBruzA`p|9I`?z5@=$Qy4*Ya)r-ey@0{l3!IgP(qY z8s4d$Qtm^gT<;4RJLAuk+Aw1Oygc-{*x&{#*Y?NfkGpH}?MTWPlix0lA%*}m_dKoM2Un0{Q7V9dX7 zav5?t?cPfJ1fZ=vXf+N6m;U)KmRyB8ygevpHkNilevGDDGq!%amKXc`*TIM0SM0fU z_{p_4&Zn*W@Q?7v3*K<~XFy?>-JfG~AT1K!>Dw@h8X zr6+}bI{2b1zgp!xDc|#T*|tBKt?%RR{m=FO)v&(Lg!P^2>MQ=`tybUXa_rrk?-=2S zga5K8iyscex1P*nW@H#zaM3UKK$!Yj=jAaE8$K0J{Zz{w5ApYln+TC$D{+Wtd@ zoYywP8@%zQ&>epmSj&!Ff%a1R9eYE`b19;6e4ga(J^%pn23;d}3 z-G8Wm{$1h&x>$Tuv3#`+e;QByATM}enV8z8@R#kl zMuPu2w2d~~dM9S)pBU=)V4+a4^$gq2^?+pK1^#Q}3r-v#FskwTgX0ta(D;Vm9gp$u z@e%(o!@tXX9Tolm2>*x01O1VHf27|Z5>NKW`SZv5^Z)1h^M~qde}s1&g#Fx!;z{3C zfB7T*{zyM@;6KivKdzr8Y-Rtu z@n0iUeqa1gIWhk4J0Abe>J#Aq1TWqV|Cz_)|B2V%(cUudKZE~Qt~w$8FQdL==zrRY z@PGTu?~ea13y-D$^Y2LiSwiLarT<^moDl!Np}u4AzZ5jz(cU%lci{g-!!h`Ovu4jb z&VQkj#XtO%ko}3_9~e38%#qW^eMGvS$!$`TlIiQBMak5!mc#Lg6ju;_k~n^UaJ?wV@n6BC zkxUo7w~B))9jWr7bU}GC(p??2z9%p5Ti^Cuokgajeg+6%kz;Ll@z(nOWC)w7sy;d+ zc3IE}_?2IyvC{-Ma;zn^(`PW?U^X9QRI}4*c6YFE$4NR_aktK{T#<8j#lVpF#GCW2 zz|@bHf&Dw3XVLqc`6S;bKJ$y4hgae%afWETSRCAqr=DseCm8=h93iR4oAvy&3uWwo z{82ss*gdb)^QUWf5K`XPjCs-y+j^%oTA5S{GXtYE2Y-0AvXQc1|7OpBd?55smx0uM|Qt10J-?z#^|ze6=owey23Mz&dR zNmS+hbldIdUd(<9)mi?)n5} z{Kge3I^x>VID_b_zjlcFmAQyEtdIeDEUpP$LdU=?q83nU67oG`%!g7=`f;UgW{A*l zzkg&ZG^yfnDlBo&LOPgA2g0e4nFT-Ps6g*s;H9<7IU`Lj9U@t3WBQ4e|8g^3=9bcf zD}PE2I8kkIgIk#q8zEg!I%1VGlkrjxGIbIxR$=eRXK$RodK%k__2M7tFoMj za^-L^*}lY8Ih%*s%9+o@d>)oAvYHm@kCHZUYb{9*Z7fob-Yn;De61yU(i`RI%?kdm zU33q>`i~dN(2Hi5)E_OgvB9S*M6h3LUAT-7y9_tfD)I7PF!rfm8ybLoVCDa$EaV94 zacnWt?nQHboYN{}>ZivWf4ztTdG+wI#^pS~7$VJhB_dlXyoiigs6&{>;YR5#zY^?@#@$AWNJ10vX3BLwn2d=l8OJ-*Ttj z@bF~XZg?*^6`S*H#6cE3{V}@aeCgeAY`a-NeQ7)l(fmG~&69%9P)1Ti@aB3e2MtFj zS2oZpz39>REVc;UrzCg)J;WS zPDj7M-CT*tTk)mqy(K>*8?rn9{uk4e|14S7T3@!-hMreUCLQkA=Tw#Azo6$&9EUzm z=7i(#Kc^{D*>w_-h#r`DU+@{e@5Wf&U)tehSg>%=K1%yPlK#IgqDt4AW{5^PR|Ynf zuE$>vl)fswD9@ajcYPaPqkL7b{QL5if7_3HX7S><^Nvm|{b;%B#?N*hOq|Y|_$$=; z#&8nm%wH=Tu8UPoBa9p(EN?~WT<*B0e$FUd}Jj1w>XM@RX6M3AEBR{@7eU($EBwqla8mPjZ|n5L;4rG zbndk^zX`sDn4+g3U$(b?lCY0daWuu-!HyvC5D>}jUj`fF?(u{Pi znR)TZ_PGDJnhwfn(`p=9R3T>c=Q#QH0|0aj3WMEX8qFcUGZ?g9ZP$0PtAv17>*=f( z?vUYl;vIlAzQ$cAI}CPvP-aNdd|U8gd*tKd1fQJq-Z>JQt--bnwrdU8@#Vs-3K*Uv z4{qN1vf>}EIePo>lY3}{IG*G`ppP`Z`m)Yf=0_&Mt6Yr9v^``QV|McdT7&%dV4aR8 z3dyIysI*yMW=@|o@#9Xr=>2pjt=~#m&Gz6yJHu$0-ffRP6dZH66%?kQa+ogts1|&4 z?@y^eQ{D2fy6Wz=>bxII|0r$l(Y-h}Pl8|VuzuY8HvM?r^<&B3(~rmLpDO7w{z*@# zypcI0K6|%b_2`&qcD@FG>FT*e^&F(0-iLFy6MWyYio40QrSLl~%_$E{dc7JRyfIIB1(zbn4FNqm)dtd5}sV&iRS4iXvi9 z5%Yf93Uj=PZyY#c+lR8}G$mQlQ`3`Ag`cDo!*i#^(-qMfaimOfwW==Wixbn?+)NEF zrdP2mV%jmhhZ=kT-K}@df)>x6lJK`x`GbwE5uJg(BF+tkQ!Xd2Y`R#6Y6(sQ`di;# z+DyfT_03P_8+z&hU6Fj?X@r&m%F!5mXrs&kXvcFffU&-9)fyIi-n?oaqV!}TDClrL^P5Rn`NW=ilZ z3sN1ek8bRZHLi(Nlu@0w08d!E?i2RG`%OwU{E7iTc4r4aCo9XI!q27WNT5*u54kPw z=1U2DbklJL^wLMurzTU6I#Mmu983C&J#$n`-7qbYx}1Nvl~<&$73oCCVi63~nY(c& zQW12V6dUGKtZoKhUaY}R_yl=;@5L;0DBU9+| zB1p;&}?epXMrvL~2$M5^BNs5~&X-OM+PAT1dGk;m=~)4N2Y=U6h{u z@r3`r;dU{@hT4ssIOdo=h5R=-+w4#a@yg(n^w+!iMn+_YvO#NGY6+8K*fi zpB>e5qXP3fHMeL9I@%u6WE)dREwbU0=JPb;d3rLnV5$N{8Q7a<1TUlZi^QrS<~`iT z($vJ~%7)=BqJ~i~Kr`eM=}8!c)}F2K*zgNl-}Q5KEB5J7p}5j}xU(ufH^N`;(Ayfn zM_i>SQP#HL1HIqN@<$s4F3X7U;zmCA=VrwgRm>$G?ArVnS-pX^VU4e+C9_*_E!^rE z$LWyeQUGCJdq)V~bA(vz5fw}C-+lfke5BkKXXTO3{xmmK+{ffgz%bN<41H58+yWqc zHkrE5hzjp4kNY#DSaQ@^7jt{vsbk{agL~srH&NGmU>W76bfvG+eGX`*dt$?vRzHbs zVCw1_;4pWJqxnuK06Sn>@}+L0xT1Q+W2kJ#m0#mx1z|YSX$fPePrLczf?1P(+r@Nd ztIY;hGlL#>CZ4)S9Y``Erm>uDqVUW$ju#Q+dv|n^UZ%K8j)-T$6@QVBNyO7%9;0qf zNv5Np6>pePr47MPV0npjj2+(K$=>ZLQdR!bk9qtT_xlqqy#?GsxUtILI>(#ek(X%c zF8ES<^0*up^v;i&{;<#GL*~sz@y6CET=&&7$Lk_^_l94N_FjE zAxt)^(3iM<@rC#5hx^}_Y=)fP!_&B+xN)~vzHC7x*1WeMk)9u^Saxc%>^ZMd!N1$ra(lIbo5pVUaNuDWJ%WH&6qgb_idO4__DXdYoQ=mDdH? z*Av3mV|iVu*PrI~*hFLVI9Eik!Sp@6o>*13?#9X9!{y`rHI3a~dGi|u%g#TEmy_b@ z3&Uam2P8Z*-e`$wWD|jW-v$p`Oi1Wf5UcOK=m897Lvn*hJicMNN9FgBHtz2`WZPZyG><*-s0{ZiThk8*`7?7 zGc5+kExedGG+ZRlQl+J7bvSSlU1OsY0A=CH^8yV zIzw67T(U^UkzID=#)-;WWTpH;)?CS8Nk0}+zjaQ_-onP6UToRqsNc$HGR(1M718|I zvP+_oBrIw+JZbpi>L*bo#h!*QhC3lUcrabDTt*zYVrG4YoNJ3T7g(j_3Oh(xRiTNy z*ke&ls}Xc> ziDh0pK?2lRW|7SN86hjKhfGAtHEjsiIl@MXFMVtDJ7meZ05iIpeXj!o{|hRMLOb zm{ihlPqI}H*(~DQ*lfIIPeE1s^v}*|`cLrBt?*A+XCghhI8ip_ExE>6=bMR=-z3ss z2L)K?oHt{z&d(YKRsM^K^yxQ=OD4FamDOMzFfSR|l8mqb;h?d`SI5JNzbeituDSj4 z6LC#3O~*64MN04CB7N0^2@4;BYxWi-)0e|FKUh_Ez-#=qD^eX9DFffMGVskS^R3W5 zVWIqyLU2wi1n0c6fI>HZmxikOMnk40c&8PBcV0P81uj#8f{_AnPb&cTys}UQ&QXD} z@y4~|!a^zl&hXDGCnn1dh5U1^@y|ZTKfe$E%nYgSU?nU(!#b0gSVQiaNY5-f0h1ij za^AUs)&axuF8p)w_u-#|$Meq@GW@gO_-8fz^GJq&YWh0<*&5D@kbidke*AMV%Rg0P zWUb?${f>YBGLr@W?05Y0-!ob8&wj^0C0q><{@L&N=R=t+_-DW4pZ`IY@z1q!#?$y` zro~xflI&=TO1l!Wh)F%}N3{}H?JpV3VX3E#aMTzK^($!n1yN&=+#{U2kex}t_rs@Y zCz1M$DS9RSk9kV^7Z!02h81#d!hgT_@Fizp<_S3=JE@Y5-oxvIH{To{{@S<1C46BD zON4|Z!}L|-mn_L*FZY*T91ME}BxBk$p# z@MWcrwG3x2k;EcPEgTsKnX}Pqn-p zkS1uO@>Z4Lz32Szo|b?HOfF^OIN?~Kt0nj5>Xh)3F2<&qnFSLk2JxzP|W z!{U8|stgg!tYvCW%32k4E(PsDo`>Mf^+R~8%;2>hgI93o^FzZc7YUG3>2s#^+&-Kv zIT93-t$XWm|Gtlx!QgXB?{yPC*h?y|b9_BMaP_(o+;yq;)u54s`!&Js!|{^6LDF!=SQO$uQ`ic3 zbtm{_CZ%n1FhwcX3;zL!dzD%_0q$nkbo9^KcZB>s$a5$!y=IyzH1YHU&VcAh!-BSr zuXcyUsVh)l;4YXA&rV$dUwJW^p828Rr!CmUWwG1MHSTBR1xqd67hJ#A^?C{~F@Ocv zKdbJjoKoLb%8jSJ{c@N##gUC>UvM5dUrgU}9+kfl%%?Jz_UUv`IOk}1Bl9_t8b^g^ zC(>Uom)#hpI}EUy9l7=GNsN>m?u(c?3>p`Cy%Johft-d zMRqT#()T*UVdgAvWGya3Ji1nQ7v2d1DhD)SC;rcG5+U zSZaz=l3bRWrj$rwsdA;-GpTB&x-+TSO7)WpwtcP7Mu|RS#n>LKCyfA@ti^*v^3JF( zOAR(%*2f202MkMX58B=Br~c6-$d_a6boOG3@HTb0^iDd3Q`d@V@h|JM(U&AE#J9Fc34B)Q^bzQIYM(64#IS(2qppkmoJ^ z3I=3JQf!HRNj{n(IAbG+f`56E>E4LQMWi#_$w;6P#ylb^T(*wO*X43qyjrvAw|L0N zWHolmQtbR)=)?N`Bv)-J8w~~!J`eCDz$*h zb*b#56db8$YgkP;fAw}9e+?Zl4fcLN7n;isoD0T<>wpK5HzrTYWAN4~bP!omJq7i_ ztgMHExzl$HHx5SXPs3Edc(n+dBUqZOoJ9$odXANA*ea_A){N=I@f`}@cF+y2rf!#Z zJXUVF9isA}I)wNa@o#v&S`7a3Pt3w@_aXP*)dcm`*Ph#97#Vq#;In&#Eip$;xyXnl zh6JKwaFBc!mkcNUXyo%-j~y$YU$b;y@bZ_mh_qX9^7(a5$ES(((u)EsWl z+1|`)3RMId&7=gl#;kH{juvP!B>eJY>ix+vsa@b8G2QTQ(l404QtuPmTn`6@k2vXE zWYT$B+)3vtLaNB5^LQjXYh7b;jD%osDtR`T@H-48O`c~BuN8r zWP1oX4Sc?`h;)7J8tr8>(shfaGSYRuOPLn3C-{(vxp=keJO&p{;R>8^Y&AN>4V*R7 zVPiho3?9rS!y}&h$#TX>8mS>~bQD6t71kh8P$oAovJ?Y{_O>UuS5$qc=EM0RdATkm zff!QgLlUYsjZf4xb;tcR!OK^R4sPqUCwShaLPXATO{=P$p65zG(~oSwHF9Zu6_?)@Qbr&m``hyqCtC2h$ott zFk1oMri2-u|0|O+Jny!Y8^i6v?bgG|Y?5{FIG~;CV&m%K970-vM-#)B6U29`SyIk? z>_H7*`m}HVD=btqFL-Ob!aXZ_-CTbuHkBf=+K*svnMsky9-@eqLkomg;%IzWxzdF&rY8iVJp z;;xuS@0Xr%B&eok?l@AhX+|d~vo`p?sOW#weL5@Y{{^nW3@dgqF1C(V{u9+&6vp=8 zzFyFx&~eV=MMCqxQ=eUw43%zMmkUUpNS|Gp;9cYDchG0!>9N1~$H{q1hZ|0fr!ADa zafm3K@;Kp!t(ab<{X2*5@D%A68rQEY{(j7It{?gfdTbJw#UN*U>bAn*j=fMvGr)gi zd>N`cyUN4o;0nUJ0hdvMDaL`7^cUO);YPxjg=Tw1Ai|6$JJt&UgcY~%0 zbzQ-`dw<&& zC(g97dkDV?HQ&Vde0>R4be1491STA{T^aa7PvjgKBc6j)~Xtqz7ZK4p+N4N1Tbk)bY zr^#4LRX21~^yqUAu5TMTT~yxJ>YY*$p%|50i7w`RUkjP~<{>m)>n&|#%3YM6{()rV z#Q{DsI-bujj*&m@k(0eg7?%h6PVKW*wXbW|BwAiCuB?4MauQ=x(o>oKCG%z2K7YA? zPORmqS9unntA8uzuc<8IYqfm*^)4&wAF4>-XGKd@ZkTV129Ju)jFWESMdya)M+W=mD=dWT96sH|806(#E`(#sqwe3To) zf=b0%`YtD_SP7rJ@2^a!9V&bQRm}~9t3D|oB1Vf}!t2)qVmY`JI9x8mWdt%0u%1BV zO9kE|=NJ6nr^}b{A?6ZhT!;*wDUdlcL}nbwjQeju247_^GKC>B;|!UfAU{Q!LXau^ zZ$O6c-sU1RF+_$>ctV-6Auzxx~wxWhWi|DLa$d}Z2FwjK?|%QkpFT!^IZnZl3h z*MpBr@vQk&Ta^4cj`uycIkhR417v0!7k@*e=3xGhscVY1fQSZh0y&*v|Vra zJOv^Wegk=kuU*ROQ;}V$h858O{WN~{HqkIZ2zKjDCz1F_!HbD$mrBI8=e_s*Zp4iyS_h^R_^1l)tw+=g55+i|xA_DOk`Z{@denuX$!!K(=9=4i1e9+_} z-=_Q*lZWTSyIXF2&!StR+w+L43&rA~#A4s;;68tC9w;KdB$lQ)`Hg6d=JPXC0s+xg zht#QgmVd~|Ba%M)jPMWwqLxgHhiacf&Ov=}_#p4+cNFr|%+FQGDb;Xv4}~RRiE^R_ z2W=5f4pPk<7JWajNb#9l@YI|(ct5a~{$gKRCOCDh4_d7WT>m=FVGXUsb)$;ulyXce3e{uxS&N|7A@VoVe)%ns$1`DyeEocXIK_J0+-|O_ZFUkbK;kuP-dB_~SA<;O?{{;15ao|ArS~(pXT7^X>o9>v zkZ35-+D)LfI)T<5S&u;5g+TiX8F55hKl`&>9y_ub&B@K|9}sVGWLs_Xo=I#uu5OPz zVNG;Zv6Iy$?GA7M0I0Sc@y=?OT#6x=wk>G=-SU$?PHC?EWM!8ORQUai*BDtM0VI=< ztg0PwBzpsr4LFhwRHPqvO2VNE{H3NupEYEU{tZJ8E#zg$DNufe+4+)~3zqe)G6w>p zZct`!4v@4Hgmr1WG04YSHh8*s`$l+_g|;HW0))HreofwE!UNw&`i$mvw-X3CZ`)%g zIlXy3kA>2*E01hAqiw{raU3DBT)2~C`c1})-b5NrDi_0_JO<_pZ>~ew*1(swE2`OV z#mb8$v`E(tkq6(dK`7J?0tNG?9^TY$A@`6$kzuda>pgo6(a*OFU<@T)s4d|>=Fs;5>`sBRDCYJLM6wXeFD?E5IeCXoEM$vW7Dz>(y*ag*Em zvCZ2ip|no8zlvm{1=}66H9Lqj)#gwF%yxs|yh?5DP~`|X`c>)ek}#62tXa)ZExSv} zDs5d45Ap_Vk4juqZy#y5DHQq;sZU^?gZzl3^s>U+WgA!ZqxLrj#eVixrEDLHxEs=b zafnu2|0No&|5AhMw)3v$i2DDclBz2dwMG~E&o-3)^G@`-3e@SWBTKjq?kI*N+6P;o zgx5RJ3xqeQsa3+vs#Ei!oF?BkxX5;>Q0aAUq|~ncMh}QAk-e7EHOT$nri=zzRdR*xUD&Lqp-eO_uv8kZQ^jb+v&&I>AQ`7N#OSG zF@K+_@^7Qccb5j8PL5E4g>|Gg`VRVd^uh4=W)W3oqUM51jSA~ zl(eRQC{E|EDJ24Z$UEx*fBj3o3|nH~vG}m-{tAaEjtS5EZ&jlMGnt_a3_8DltlUm`Ez1^71zKYx{(Odqr~(Roa#N? zLHPA~l$gNV$~+ETagt=HzRG*}^WMXkAr{w+@gANvTvhhgf?uc)#j(cK9LrkcEqy-& zfv4eY9j_!B=BT1~2)JIl4SdZ5(EGuRd9Br+*^K^_GYp z`!(M-?ew?BCmbo+-}uJ#gkKcj6eKz8gYM30`Ld4sZ=}D3K9iqJUzFc?_zT`$KceQU z^c97ThsztDWNJ*0PrwJ5S5>y5z7#D89ryeB39dDWq68HvD443AEEZ;uqebLZ(AcK# z_ypD6@bmcMwndsyWjnp4I^r&&H?C?--L#l@N~OhJ%_`DkQI0Y(B2Q!fo1p4H*L%O) z&si8iX$Ovyw`8ctBSrLwbN=5@91P`af;F6MR93Dnmz8Jngt?l+czY);A{9(NsJT=B zf?Qf#SH6Owd~L9ZzX}Ao7*ZyKH-h)RWdQ%Yn2$lIhK8RJP5bz5{P);+ z{=-2A)124!c!dA-)biLE{zFfA_3TJICa?|5y@*k|N10@3efvl$=&+N}T zw2QTKRP%Zt*EumI*Q0WnQFU)j)UiH-cE)U?BDb+>ZQ3-!(0Y_D!eJt5^Shu_z zIt$dIWNTMn2Elz~z1=oaWE>zH$15#4)kRxfGEjposeOhSEgvOyt+1XgRp_uJ>fu8q zk^kPc8(hBZ&zbCiQW8NXcAUC_F4FZZ*+&IjCp54%BZ0AXNtrP_vvji2xs>u@zL$f z?{?-}JjML}aGsmrc&L@<9CoWR^P9q&-_5)Urtf$2TmF^7N8J2g&R@;%wJgVx`K>0H z-=97(GQU+r!_VxZke(doB>u}ej)?d0_q1t%JKn%{yt&eEX%Au?B8oNch;W-sMPwaW zN`z0%J!33YV)@NIoOj_}CN(xpv4=y&Kg?uVyd!cFpfUe2n|m5ifmm}et~nSVqkdvl zd0P>|iZB?XWi?r1iRJ(ta#A!KrkbgGP*r!UY87UukPm!wFt#}Wq3(!^+MDv`J`T79 zpa8Wgn~VZd;p2FC zWudCIikjaT$Lq0Npko!5^!sZh`{yj)O_gpZlXl^#n7zEEKV&k6XVt$QLmNM(y}D*rc`-28{4%dPH7 z1a~Pq2Qwg6KlhRIdVdpg>DtmX``%$}Zs63fcMACWptkgcSugjFE^rSHvXJflL z8sYpw#>WV2#|N2V;JZNeZfnHuXWCZUoLJnfKE@ZX(jTq2H{n=!#*`B8nywk7AlEx% zMaqIL$?F9xg)OmTGZnsOy$Z~-0=#=u@66o?)5YKj?=mj-3Z)*JWzC^Ut9I=fr2gZf zvdx$_sdX1&htrvK+tp)EJF~|&vKWIFwD zDmR<*XXvPdRld|e zA|%8r&7GDhZFG3K^l~ zNTN9Twmz8>GU_?|4fClMtBd21n|Z^;aAmtmm{qGqkULpE%m#QQ^}(8UVZ705Q0xR| zEn0%%8xz2lq#Ed*@p`G^YC%Au8H@Gz3e_Ckq94}JZ##~{WpA(fVUixhMV*m|3QZ;m z17SihAsy(E(b>rZ<|kG;jxk4PwiT>&Fzx53Zz~0E*lmpQO(FXtKUe{IV9ydmQV#vH{ap$I^4xH>5z&AjF&aPPK_4E za+OwlF=lwxAQ6~h_w-@q1aZiQTtNsjgJ z0`HVdE;z>eSBUj5vA9L+ysE6*Tl%Q+N5{Kj{N0f^h zO*a}ZEBlSNSRSAyt%y5sM!e;XV&}{#+3zA2Vt&7c1IhWb&U++zT3)QQ-+N^G#Z<-y^1&AWu=n6P zDmlWxw#fciWL;9>Kju%03?{G`W<5$R73sy!Bf6%dw8hMZ&r#*Y`4y#WA}w?L=@>}X z#a-l3yrrku1rC+0b74dNa|8{^)Y#8ozv5yGZ-_5G;!KUYpG@ajbUoMXkhW;r^Nqe& zp!4_qOxqFvxt{y@Tj}p3?kI`My#jGz+khmIaH+GSNlX*-p$zntKCef&52*C_0HwS| zgx)K zY;4O8 zQq68KeybN^L~vWNkr75jcXC|*=L!3Uw#L55(&5|gtMGT&E)?c8?;yd)n-E@oIQDuP zg9t*sIkN`}9$jpam)bbY>wa|6I8k7}u1YW?meCsnm=WC>G2`hU%6b{b*Rp9po2tieTI-!sj$N$XTl!~=Z(~n{+p&H;p2rHmyQQ1E zT3`3>`YSEgs|Rgkf47+;V(zFB`YN}mj0=4O99ObW!6sM?RM0y;8xNbrlAlapU)VTQ z&OL7&cdyh1Ft5i5m-Jf_n|jh;YUU0(toZe3;l?kFrKfXiaC3f@|7>E@YgH41#-T6V z_Bih1vNa9c zqRz1KxV*?xpp$7VA1rBB#?#oJSp@6FCzwk|i3qnly^2B(qmf2s>0=;dPn8W<9Hyka zKUvn?uwkXF&YAjkFW++LSjxfqPBp?OiE*wO8`&W8UFlpe zkuu#ZJ|B?RC~2$0xqFw(l&S_$AK4>giPk3K>UA%BCHI;Zz?*xT^al2@ zB`jOBjt%WYcEX+<^iY0Kkd4RGt>{*1`m1iq+)vBkFFG^wHJDuLnwnh^-hhD_OE#&; zVmh{ksCiaaM;$-23e*Y1O)Wa9=VQrNnr|@2}^^l{SR}DAI)3sOk9AxA`>j| zu10jij^peGwhfTAD6@6oNk%LN(7MHF*pxQ1+jdD?8NxOAF$~lfqp<~f*i5W*U0$TF zS@YV@QKi|{Iv~e4&~d@RMy6XuPz)Fh+In8~(v8~H6k~(W%P!7DliN4Iv$isIZM?cB zs#Pb)4{MMLc9DNwR7=?iVWetNueATpbhd7lL9(z-)QG?ub0e@83YIk*R&~OZq1HB= zl9rV+|^S)b_$2+}^Zf<7@Lb&h8jD4_%>@X}B;Q1`~} z$0(TKfN%z?HR*ByAjMogUH68Z-TF?94wpx=LNv?ocI?0*G}{!eE-=0~TJA{PO&KX< zov-m@Lxw9a+jVA6pQeu{XpP_=h|UJix?HUaj0&!!+Wi|THKImWb&4K$a;jJb6{~B} zO=>fw4_Im#YSg;O!~?b1T3fBw<{OqrZAHKWbu*#^RR{Y-v6sm)+LCY-Q}tTTyv|~j zA+sdC5fiW*+L6^}r^Yt|%`$=z$13W6hR+!?j&Kqq@O2RII<+X67?NEYOq<2x4mG;CdFAQFj@Tla$ zUe&x@HG_q0BEqV!AWG|SaOHyw6Im`=XT>oh$pFKOhd9ExPs`gzB0CXPi@h?$+(0e;dd?3^tx(r@*JKBjIS)bTa*>QiM+`T+>=815@*FNDE zvRC6gSCrAp11B=vgf;E~w&FC72+c;`+J~YxAt@~duH8|9u2hHwHX)%Am(1|Yi1B<) zwA^8CV+k9T)UDaA>HdZa8NE$eFf-L_Q1*dnx1)GXw;JhpjT|*&J=_I{_(9doBk)>l z<{;;olhw`}%^s~<24Od4EbhI_1|}Q;d*O8jSsJ%()=2if&Q+suVQz*^PUrx<4PO-X z1(ppjf4~&8@ZCm%&~+*c;ksJ&N^L7#v29aCz?zG*!(r0!X+n2u{GIIu`c{Z})+})h z&#PVH*c_cPvYO*+Y(swReVmrSnLJnpn+u7G=nno7e=8I4b<=-r}MSSD|)_*AjH45$QaTsUknO zirfSd8FtLAZhBOAbr?<@r2v|~4Q0T`kUENGpKQotu@0F2-C%EY#f>PGI;?D!p`iNJ z$6e&rHnEM6P)Xe`;C0)k0-n2`H`-;IJS+lEnqZZ5$)_Pox9KKe*2fepMTo|@OxwEU zR{hQlh}Q*q5kTSlO=D@i+*%wKbQ-Ay7}Ij&b03r{l^R;bycT*9?h8jt8J7@{p-HQ^ipUG<+5GP7Tq-Y-?h? z5okQm;xe5m-gPn(dNt@r*_xM!6?#mX6>3GK8lQvnMoVNzSdCXeeQajc)YaChb$V3V zJEI>C?pt9YvD2fDR&-Ql#BSZMW7H)gQuP%fnTOv7m`F?e=^73=?#`x7!l{Y3Q zufVUKp}c~eys>_DTzO-2^2YhqS14~>PTqLG`da0U5A(pjJ!zj|bNYJ*C`l{JV2V9A~~LgEbYy&ew(L^l5@ir@@w2xM`R--yG&ye@2NXG$~#nbF&MA*Zl}ITLYm?t z$pwRwS}JW9Zr%w3b`0ziDKRzLItjkp;C0%XI!rq;gFzprLyO?EjR@@#apxUvM|tK& z#xObDn?4+-k%U;V{H9NaY0>%f;j`#0Lv~1)rf-GMqVv4)S#-YD zo^Pd^>bodQY@=WO_j(YW|4k2~^OJfIouAW#==_QvL}$1plY|G3?YCfCK0JkQ{@^@- z=goV-B9fe8+v^*ilk{%w^|x*6KF+A!pKH_(GDhvKP~L@TcJrV!`U>qNB#P?+Oj1KH zPGPWZHG7D*!v{L`Bh#yyP|eoBhR4EHV%}Vt9T!H9|~V5*fL%4r}XxdzGZL z7WY)>o-(#NCT2pTb-*WM(iEQ2^$)Rzi`{H{KLH+p`QdBw^_t{&cfz= zqTrCHRuRX>H!{7YR}e%O$G@kz{CLmim$UvBkWmkMzRNOG{F&m>?Q+-flR*dVJ|BGp zhoC|5m%TcXit){r8@O}p7Tx~7R^JiAIu3K1jZct7>_eQQ4?k!F5sC&Znr6WG~gp)a*zB{^zdUa>gPhY_D z-zJc=D3|G8F!U?Fy`r7cY$DzZVA(v*=aGTvIiG@anykr{&agFZjNFy^PCt zfy<%3h&01);8K|Jy{nDpe-p=9tod(mYI%}zK>J+!Dgscyk9lPRzw%7KY=OuQ85gTyCal*1`xgS#w7QD!7Xk02+o z0-J>Lx@55IkO`>+0nsH%)uH`%2kL-qPDI%#$i_^QwP-eS!zfSEN?bPNy^iamIwub9`$k__IeHcbbxjtaeR>Ur$#Tqw%N0M=LjC4=wKyu6# z?rTQ6Mo{WY>Fb-i@rmn%ME@ALZTi|_eQuD5jc0vK8I}HCe^Rt}YK7l%)`3{r+YK{f zWvg%dG}Tt6*m08Gzm^*+Bv=Q^fUM~@QaUP00em@TRvpDi z;c(<5Bi_;mMye|HooWRzYZVb$!+nFnU8{{hmPa_Kgal)-h>>36N~F)5pLTK573uhJ zCO*K$NGDi$blAm7S4DQv-{V8236bW@DPdqB3?s34wT#%uME~hL46^$w)3%6TRID^< z7e9^I8Ht)U=XeW+%?)8roE8%g(=IqrifR5H}lo9HM^Gy zkn2gjtMoJXbypmiy(1+%Rq`z>nQH|F(7clZ#4>N@QIP6~7P4XEGk~yfQq5uO{tl8y zcTo&eDjJ;vA#Qk01`N*OkQwmPsYZE2QuUd40lyTQsmzr_WpM6GuC zm=Jl&tyZ~L^g=}}aIXg5g}06@Sz;|{(_)+rWvuFST|aZXcuTMO5hJ{@(}=W5UGH5+ zE{loK6IPT0ht0ucK_=%#OU9RW2fQN?TVH zpq*VZ*MYeiZFW+KctQ}N65@EEo*lk&7hpLAsZUxir=~5okg|4W9A+GzoCX;cFrE*s zAQ(*A9iP?)gW376L4=B_cA=8;xiPI=I5mx093iAbp>{i$7mB?#3ZJx3 zt+@Q8l(c<`CO4x9UCkwF1QJLlCmUkT-d0;<3#$YZs9-^-UKf=aNf>aqvTL`7A=X!B zL#&@92wL->XVotmUEox^XPm=|7 z3I%=(SQ8 z45&B{qU(Zz0#y(Z9OPA8=>mm;F6akNHd4z05pp2RP&OwYRF8Cr%_&>4QF=eJi3Dq# zylPi-TE+!}mdI}BL3=RUQ4+(%?or8J3;tILHh-?XHk6dp8YesoV%grbhdj5dG?!lA zPF|yX0HPpdLIR+b_-n7hX+bK$irJ+Vr|W{0gfVCVXx6!nqHwf{YQf-|lFt9Hscv&{ zozaXTV(uwe#T+IM7IG@bHk55%NhM;n*IW8wX=ieuNOyU3IBz(wRQp`KTZlRy9>{oU zA95i#v;%4E-@T#R4F4#I5<{Wj5>7$N5m_#1$jJB;Qo?IhdZ+VvfSs~62XsD!wq=?J z+_u`1lk|@K2kelRo>*aFFi8k2ujUc{?WGR$^GfExKNS)~dB&Q6gs?39z(O)uATF3j z1`EOfps7R{+|O7KV76CBuT!WVOe8=o2E@3o1vcO$b*M`#;bKaDFmqUzwMwNx?x3FM z^$_r5n*+W<;@~)8=N_ze8%y&hYSumw7Q)~eR%x|agp&+6+*e|_K?M!HG=N%mJ2G(c za*z77RX>`oHdPFV-?$(+urX!CQ0f+xwd;nFZfLq{5YZ6ANrp$)dFD}Rd9v^`QJrZ+ zb86Ftl`$jO_>gZjR29-`bZaN?jg@dlOG*&{HXxb|yH!LDuvFyYqzD=Ncq0vnH{grE zn4kbuZRNb?LU7!$7)R2HD+T&fIHZVHWuGEjngv8Rklcz5o44*!JELxA%BhQa+||Qu zXH--W-slcPW|o`#Q|tU!k77v zX1*imY8S%5o!zG!MKmd8oPCz}wlwSSz;1Z(y4acZLc1Fd$b+d!#hS41V$W>AYTY?i z#Vol_!Gw%h>I3!IXei!F4R|*oi+RgXb~!lO#Bd7T89|5!sc0CtyVwR2fHZB?@Z~e5 zjW0{vcY6=9Qb%Lfy74TXgAtSD%)h$gmd|&zsTcF%st;gU%$~(&hydWIQJg|&H7yKV zCRjiJS(cEt+Y3N1B)m$}kMRJrN4J5I>42CPuNMXgN~Z5hcFJUiFuhb zHr7*ey3{d=DHm3$-s-3m(H)=);ce%u9j^MMuAp#r^B)<^SySca4JzbCE+P;^C305) zcP+83>>BX8-1GxYEo-w9xvs;Nt1&L{qFrba;iME8?b45q0m08#gn63hpoKG6`FBRA zh50*Gc363LN2geAl1NNGm=iFP;+Cr!_8nuDyU1nwx?K7~>!vywOYJ>ik(TNcRW|cR zZy$;lsW@{Sz0IOeE%Ma3xhV#%8gq-g#Aa?vfvEwuMX?|GmFtYpYOYw6fs8sP|IN8< zC#E)2yGd8$U!p**9i`LUGi$qrZAvzyd@xuhfaR;I)!^>rpXm|C%2_~;9~*ISf4LsW z0bnOxZ7$Fn*hmPV+fa?vI(kgII!KE$#*g;Dyr76F1?sBB@z@DFZi@mn1;(&3RTs4& z7io4GYpR|uUt*#It~qL~Q-o8s zQZzu7NlL9Wu7&ST!0A#hRC!SAqFOuNCz+2Lpk^tmT{L2YpI1~*HKn9zT1gEnyIK{Z zJ`+@OjMR!(h+j(UH}{@_+#79Ioi;lOVxn&NjRk0GV6=yYMJ`tnP(oP2xGY7}L<~F7 zd!yZYfH0;Tck5|TSeS$}G%XTlK!gg75~|3+sn*N^VKM_HfmQ=2W%3$=K+3`(jwIe0 zwnwy`d#Ztt>WSKfvUmXti7L>*Lekg~J(Mpp#cON%Ha4qKlNmCZf?>3Rwb`X;^hHrd zvQvbU13d|wjto3T7^(<~OLuokxJ^-?S#+o%G$MG%*|zeeEk+GeNva)?EJO?xWEsVz zkf3=P&b*XK0~-W+rpk5G?*C!!O~9inviIRcLI@J7aC8Z=-~&_n@2LDME+w{)B! zi($YK1Q}2qK@tp$Kum(PZ9AaI=(vo`DB^Aukpu_{O9Cp&z6i<=)dUC#ghimg_dRvH zZ>KwP!tek2Jd!^5-l}@*)H$b4Rh_EZ#+N{Yx(IVMg|P%E#eZmr1umBfkv(#t=Oi)a zvIieVYX}Mz->#G?Al1B23twV@f;4=C91Ic;0={7vhX*VM)t1^J&ohuDqu)d^e9m#t zQ2ntu=i-w~PX>nLo3oNax>iQ*8GY=~OSD!oVu433(Lbc;?a96t<)SB-eptGbq4ZeM zxynC)O5sA!3goh{R9GP%$3`hEp4p;kPBT3tlE-!vIJz-p9tnf61->9$h#Ni?25HbJ zV8;o`EXA;>v;<&9nrNiSOV|l+u2-4Uyk)V8jPvs$GOl3z_BD6HfXf}}Yi#jH!1?W16;S?h*nIk)3 z6ww1$Sn{Y+nzk7HlHT%fR9OrJrx7wSp!h~oyzZ_m#Yn*+HSmB}%ot`BnX>a>&qYCC zv!SEZ+Q1?pcbpZ%dwjkJ3?&_+j2pF*7TJ&&A4~&Wgn-i>IHVay zaA<2NG+HMG|Dr!d%h+AdC9>3V{zHF<`WH}58J|OQZCtKGe&}Z5F@QlB8N+Qr9d{#< z^!juh@QcXlP{S=vV$;*Hfk>dE)`Bn!TU&h3Ej!SM!~YcL2cf8?WG&c@r z^xb>~R|QuB(+y!%OwpKlkhN%RIPsTdy}_&%U#)eZ@u`OnuVcZJQ-;0S*|z znp98cPh63bl@QNxJactQ@O}83e0c34et4&IGme2azFT_`yGq??MM30S7UaS~!F;`} z*ISnLp2LE<@2z^$c*WE2c>N$22H^xS2PZD!I>t-Kp8H6rZi-Lx;O)cyV};hs^&%|% ze2H(jT<-3+T2 z^F7&nJ(D@%V@~hkym9mVH+|n3uBejBb8d0C9!zodltbXQps`T8!~G)Lk;gTpyJySp z(wTPmjA_Wz;rywx8P~mez}?g|2M!RDdyy>*t>HMrsTD#}aB!PG!pXTDCm@yWjl#J~ zWd|chFpUIoXNYW5yz^4Hso{ zQ9eDaqd!sbTHoG9-g49Wm0g+pX}GhdJe0AljST0R!1NuI_MX#=dTni=Xrho5kdo^$l$^!Qi1P0cjG&( zU-7<@-+3L3&9&@HAmJSZLr~XM;NzZ563QP!`Na9)Ve6Q&aGN23l8Nc9hST;CsVS_cRa7_44d?+?bSCIwaTo zC4aZf^~#x2?rABgYO#FGJ9z@cAN7}mspJ+q0Jh}6#Vqrdv686KMMP@JgQ*!f1o4z5 z{}oUUcgJv6dN!F;D&OIL-oxsScTsViCW3lqYWyif@RnwecOU|M3YIUQCu1!6E153u z`HZlvhtiw}^A0w^twGp7il=#(uEv$@k2ydG+$~*xrtXNAzu1&DNBAs$}m1C{=}%h3ztt{F`N9Y z5cu;5(A7XtyZer|4NI{(oWsE4RMcp9W8&pfemG8V4Mc5o_D!<6U(?ki_@1a{UsQ7v zS|%gLCvi4cb_TMusrzia$nJSExS2pgn!M6@uw{tn3Oqo|Bzuc30I4=j+vhEg(QuQ! z>WMe@c|G^SFcyENpYhzsFY%41eN78YHR&xnh#Qa9ZJ!&QY^#67tJeBQqH4w;(DU9G zz#HeTLB;EkF)mHY{(6$vGXOd3IFFj*jd-d7lyJNA6wdg&=-k@ZxlyfQ4ith62!X@h z`A+0e{3LQ)RtmP-ovUCfR049;(rn3Z!S9@jJfF|q`OU?X@d8(oj*O~E8HuCD!&Ka7 zzkn5dIV8n+nTq!EKh198dm5*XeCqpl;+%;(qttk{1y7|h^CrcFp&7a&TQp5-B7P^y z?~2q+sl%$PA@QI(E3-ny1x6TpN2u7B5ig?{rTZv;8LKc@f-7BPWX)Z$^HmGGF1_IO1y;nJwx)@G#dFl zAx+d{Lm@hb2FMHNl)77d)ocpla!Mk@qrxP(DS3zb5P4NDko2~^i78=O?QO0r(Rp+m z8lWkGS4baDecfPp zza)F%lLR;J$iy!8jfZd+Yx@(9#^=-AQ+~j)uQum33<+~C=UJ{pgk!{U8e5- zQ*;<1?KXMjKm5>OR85ZC3O0b1uKS1BZ~{PfLkL4W3t2)a8{rRP5MyzQwCjEr zgJ%!0n3NdF9#oRi&TP96Q89MR8>Q7L5tf1iJcDoy3Co@$MdjFBFGz=ttJ5Ie57^up zG)$Q=XhV=Oyuetg2(IyFMO>*Y7PolEhVd_ZB*Y@~E;(L~W_pChk&VQxT>r%+@3It> zsa|@8mO%Po*6yE7MfXbMt;r4aN5s#5%;;F94slwln?a=EoB8@KL*9!Q;p?#MeTHPl zWp9TRs(x=n^>9))s)lQoG2@FHXI}aohN>;_(Sy&M6xgF>O_ZLDJ({mKLr=yIjqB*g z{C!#~L>#uOcUN{5>?Ue<5Wa3r9l)V3sO*)rxZA6FBnvJ~b;4UymGJ!`LeZXN2$<*} z(D-_RA1C^I0X$QWy}A$QFb6ms27k7SZu(3!ZyBb`Et-E#Addp>PqgJ3eA?x3-EHso zTvYZJTvMz%zQtZaoQ`rkdJs5U!#@L;?q@3^{BiBe=v7@)9lIS4=V<$|2W)mHCJrQARJv99HQ5$kf&13&2xm*OBLbD3sU4ij z#M^wKwOHO9?w3+>(!&H)#!WqTsh8spHR zUdGVkYc-&^80kiTgOR=#&LV_DJ?@~fx0s`fFa87-kWob=*mQr~^C7hw!hvSOWrP%n zpFcDNA`RUL?Xi~Y+zM@qR#^%XAt~t%o`WUA{h>Hs=!}|MH1!ZiSf=%G0KodaS}UL4BHp2_VXz2fZ%6wI{5ULh2$#QiZI zx<3B?QjZsTSU3W*7h&q32C%uvF6k$lU%U#J&(wt`lMkCr!p|<15CU`%M z*dN7Zue0SXragmlrzJ#L@)ZQq<~FV{cm8Y)L(r9A;z&)$iBRC*+f>iHPr?y{Mj{d% zmR^-qf-2=ewu`*RE^u7Ggael0w^eD z)^YIsNx7PclLC(uZqwfXf|0|lFem{|CB{AQKON4eGN2~*@Kv>&ncNA+akmc4|Ih)g zNFBne!x4oa`&4FjBjo@1JT?@9+HJ0JiOCzJb~2YDRv+kbHx2d?BAE-fjXE8;X&tjy zq~)tp`~VvgXCUr+hMr^K`nCyQi3O{y-k$m z$6-*Ge38W-VIP5u$#y&^Kwo%#MpljR`1MdI<{l$$r=Df*gstYk&nDWXrs0@dIWyRb zQ0aacK|~d&5Ru#0>hM6=+P23J>J~ZPgR!a71j$KZ%S<-~Ff_e(xRptCSjtmjx{m z^-o+$A_mA#n#1PSD~j-M)Ubc*Y(7Ocm=ofMh()FB6ugN?(k91QJ69??C0GHx5_X_R zmX~2j!CqOt`K}gd6pYKPEct)&C6AH9CuOA3EaOrHA0Xz1nDo&JiELq(YA%!U$j*Pc!cl+zMYa3w+@o})fIY@#>- zN^5@>?PtI;;Pe+bRaP7aW_N!kaK^qwINqsCF&UC5P`VNYxIPHOx!yL13nRi;7BvP7 zhCvY=PE4Wp#LSDk^CLs29cx}y2q56BUv;HXS%k!K^_4_u<}nx_vawYxj{ z4_e+Pr;OU2XKYR^vi)5jfd)^*x4x_JgBQ9YfFa$v$L9Rr2p)Fee7wNpMDv?a1o2Fv z6yr*uF?c37%LboW#q78GIS1hK3r@+1YsC*ffNrtD=>d+2t4 zsSgU3m3ORe;-hu^XB)neA6QJslsTR-1FV)ZDNKr|+^U5L z6J&`6P1Ftuxq^VuE^Jj})Ul2xMo5F)l5`t9ivfkWMF*AMhX7aHrHh(x z;xW{lW)S*r{=*2M$9GF4vHlKM@5pCJA*a&qo&j`3fP-d`C07+CC3%5`Xgp%$N(h1+ zJ_E_%akA$iC5#R8on2T3T5|=GR>gF9iz+kc{bV4HV*-!39FMlt(T^gTh=oLnTu#3v z%N|^`#QjQ;3}GNcw7?*wM`1cdrxd)C6C1eFsn?wlN`iM-WWh&|Q_LyEvS*RYRXmec z%M;eTzy@bo_vh`x^YCL5i1S7&AEcyV} zv)}}y&G4)W>oES)8yPCe2f9JwK}TEh4-^fC!GG(}aRdp|)`h1#u_9cx-;%!=)8ag? zGKbd!IoH~p>#;)wn}0BomhP;CY4N$!;U^t5GQNAqendAeh6lGP`koczS#l}uO>`>l zO{&p1&_f|X^_^D{E4>I%V~1d#UGt#EG7qR!sjqFv?kG3=3ty> z3>vFTT(i?w3jEWB(aw5KKmiY22qC)D@c^sNm?BQ z9YJyq;~7rKLanG(5|*hqF-S?&A4FNo+Zvk~80G|3!arhn>c5GhF2jQ&7-HZ%$^~Ry zn-~~bu$im1usqnrAn~pYa>21Jk_ikAb>G;;AYm@%CI(ih?oAAP@m6nQV6cqd#31oA zqI1;ufK3e2p}<_Am84t%; zeipDzK}-;17y@=EFj^PkA{M?&*PW$uL!3>Dq1gW zV8ACRR7{(gZTTh9+PM1_pV2mnf#A|NtEq+ps8SSi^|4Kt3|J26T$Ri_Ly1+KtE z>0J$54WoqjVxquv$yuVPVP}jlja?1ge8CtU8X5uRH(YpvaskY5tnkT2bREE=w>2EH zU;!9Ls)}X~2I~)v)z>gq>D{n`G7di+&fPq0Hz(b>$?C+O(C=(G5f`&NdQr~S&5;$3^kjU`pp6t{!~9k#XwjH!-~o zCoqvI+sMcelbu)!!FDdg?~fP1|BQO!CGD{PjoUOK0o zrnz*AHArE&_*jEm42sih1fmC0;7-0o4)|RA-6&Ef++2M#<)sYa-1lSfmpTMv?09)t zDqr27q-;6CD;^+83*QSTOs86%hjAwKIvfRE#p9sSml)S`hU3^K-vyo4 z_8YA3SLOD&Emmw7z?sh0Hov7gkAXn$%_EWY40efPgZ~%uz#9IWH5}vD4Ygg&y&+BK zmFC=%rZYoc_>t;tZbfeWtXG6Dx8W|$TCNF|3%#9NaGke4R(c&0rCG1A!U#!CaJFU*&jGBgTvx9B^OUSpRxl7153_{Y95i^6^P1D+- z+Lw?~cPnCx%sI4S1L7dFBj7pMz^-AS~l| z^@dw3p^TgxaFG8`IgS<|8cWd!RTjSCzjH-KLZ zTeUO=I>I4ay1PS!Z%~EFgE($==4_j~}8LHhEla2Nu{yT{Xc zU7WIa+m!X!H1`8oinzn!ei%y;XYZSmn(iKmVe#3N>}9sHgIJ2ddDqG5__CAD{UDYi z?#GRNd$Mk}eEY0%4c&HGgec;Agl*$NTjS%EA39lBnzN$v7#XLnNAWZamQ~DjT^Z*w zn#LoR7q|vbam3`rxFloWd6n`M=+7RAp&Zzo?%-i07Wku&TcE5@f0!({V8| zv{;`er0{RSQ7pITJ&(nt=9p!(L7t_QXPi+jL_3xl{wWY&m-WF z;PT~Tcb1y@{Irz$pc1}(t}^neT3d&{s~B&3Vx7Jmj+VQ|tO1gp5z=#8sShC+0M8H2PtDeGs#{ z)}nZ1s(N5<$KkwyWs$^yDN?NC^GQ$;%QPf_hhB5N&z_f)0p@2zzRZ0FoSD5mYF&1;G4bk1NX+W!pMB%RaXiXU*8n)ggNaQHdR|*Ce!(vT z#Hm-6vM`JoM$2Oag4!QNnAALOwk@S zRoY4918xu(K;K7{{qYtAE4wmZXZclL>bRm!?m*8cL2hX<^` zA)RHmG}PI)$t_c6|oQz2~2NeC<^7@=DLkG zWhy4`F!hK@v^O4_?5#x8?XUg8f-L)uCjWLEfE# z8RT|?r^nkLP4TL#J2(;S!D{#gdD`M|xi64wb{D+LTNx89e|%PBMb_XCZc~NzfGK5( zKik~m^&Kjv7oc)>>|RWs}p&%y8-T7=H=Ch-i!$B~PE!x25 zj2jfFfJXeBwO_jP2Siw$mPigPjBs2I3>mb$_(xx77iGgbSSGSZh=Z{prn;k^SSX=` zTCKilc|b>Ij7Omkx84lJRZx6BlIhgb-N?y)2_uu&z;^MhgX1WwM6Q?AgA+1s!$v1KtV>X&Su2OT$C8_;z_3-R!6;5W(%Gz}4bv4F zs_lO_%7V*hs6G}Vv;LI4fj7yfV;TeH3{h?0-ze^Zni5G+r@+H_Qj|4K4n03qs@EosW#4j2$3)-9x^@(7+f&;AtuH zRae)Z!AAoTM&s_>cSx|hcn8EsAz%eP-=>Y}}hC!|F&hwKQp`)kj z34;=(b0Nit_*=?sgf3)^bcdlZO z{R1r=10EA?uKVEMM^m@rz@9MGC+!GivLd-Ooi>r~4D~0D5;OhUt&|+B5Wd}ilMY!f zIGXb;B{I(8Zt+vX6mRh}On}g1c9zW^o!G6vORwU(veSu$_NOylRB zpB}|%H)CPbl^R7!pNW+6L6XgtAy3}J6V?7_L-ymTEX;?+0m8MP_Q` zyA2e@e>HQsDQt8qf}}f@!4FRM6K8j8dy;pRh^~9;jecy zhQH)h?!(}f^HA}3NX8~9dxV@wg(gf+$nj<*!CJH3(`sCas_ucEW`~2$%8@X*L|PTq zg^k6e5Zad`aoAeO1sCPw6hlI>EULz_(V(cWoJ4U{4VZ@EPF&Q55?x`C+k*9Yk#{yy z|A3N>1dhS#cd!wFdxXsl53{^@kyzb5?)~n0ud|}Kz(9U8ko#g$N1=VwV8*46gfK>( z9lptH?S^~Vy++aSbf&TZ#y$-~6{W^f^#X79RGTY>{Uw5nVUYML4p0Zna-?@1bA;1` zuvXZdiTI$hxA=PyE^7(03iI$7D${4nJDX+6za5$Z)HBvV=TeaddOjbA?9IpLx@czh z4*^2clw~P+gHXO-w;NI=fqK1VXj_r@dt_F;YOsAbJ-GZzd_;?S zr)?X)lVcL;cdKTL^?R4`{-z3yIRoB*-IjKt#f6?2GdzuNu)!kvcKA_?+fgVPK#K_k zZNEp}@{5;+PD(ynIopWSQsZ>`B~0I6r$2EU(od4~Mntb+|B)U^b2%PT_vm!_O!rrv zu88SUkxoAM7p{&&%rR0`YTIt4_jEyf&s4uB2<|kdAEDDvVEP8ST%z_V)0a9u4xyZf z96Vbf0^+Zr$3|-(Z#~J&(A~9Y0(9DGm}JO3LW65_&DH@MoYTR^8>Q0G1myKIe9JDe zLd{OuO|^s-Q;i?m4Idk;h4i;%K7{@sdUg7Z`(6aLMw@h>m1Gwba%#|8EV5upNl4A5yK^Hv86p+Nq6TP9c)SWkQb1p(r>k*K+<8_&v#y5SC~~>;e#j+z z#>$&?KjVs(Zl-6!hU}Nsz51hX`4RaIrCV|<1f_33-g*vc8uB0OTVb`302Y%qRycnw!4AJBH%5MdaTHHo(b|Qpb8bUWhSOI9s zr5Ltl;i1;sF@S)rbeurOKYE@-P15O4S&@FFPJiweq|ame4JFxlu zw}j~^N2q!k)AiQrastwwg^BPqK#@pib#72WVnc%x3mOEsQmcE@#g z&oa9UC6?qkwvZ@Go^JVU|`y;Tw zz?~MB5;&xwKToT4(b~`I+{7slD0{wpvKO9x6$Cs}O@6dj?M7d<1Mc=f;gzr&4{#Cq=W--n6*5mabN3< zlq->}Nl)jPXq;5c76XHiRMo-YRhPx!C+@Gw;40OCEEfhBJ-Au_f-~zLc~xF%Ba2;? zU2K3kv|*>!_k%Wj9pNX1^P9RAU`l~xA(KkY(@qd^e^|V7mnV;rLKtzI?U8vnmxHjA0 zqA zG;dK$E%KE2<@}j5-99Sb(9`yuei(^8Yaai*($O$?F-WZ#|*bw9> z%;7rAWfn>u>db{c%PWuJ9T#ie*tm#w&#pZF9O*b+JVY%&%i$pAe{JA1W);uKap5v` zFReg-juV%qJ(<;h)Q@?j&}qcVp)uWsZWGh=^TA#RbDowD0%lXAREPCUku``R*PXa}4e*Gy&T1H@!sXC+ zO94lGm3RBbY2RNXyD+@B7NqFI_lIK45H|FSp=QCitWFz=oWmOFfzY8n4C;$Ei;PxyZhdp|S3daF{_9q|pf2wY7E)9^<2@UXtZh#N2Lj&B7 zh5=Wu3}}FzP+K$Kv5;-;ANil50M9L=3)6s7^g#=RA564Pl+V||Ls`J=3U_iDaw1aU zIRFKd^Glptp&nf1;QG!5(GCPD-L7K4rJtZR<1tsfkYDjC4U9 z3bW>wTSOVGWyd0Ls7+7kT83nxwP}HHUDZ3r$8iGV zJv4~8GK7KN4ZTmiEgT@=W~pcKsTTXJNj4X58%IY7ne1I8ePjMW%8l-`V7Bl^=3mqW z}02@LxaVnK&0^=9?dq(ZYUz@9Yg4!WJXeZVizhYE{@heU(#V@MwH+&*? zXV6!Wy1bRPnl{9*e?WsEC|U0pHFiKqp~g8jS44sx&0Xn>_b}owME)_m$a)&}uch*; zAVw-ZB?*;2PENafG+>S0Uu{rUP8G=!soQ2B14{SX{=fA5(f z>aF$n5Ayf)!FQqWJ$DD{zyH1GCO$@gD4viJt-?Sj9k2o?Yj{FDnA99K1B(x;hkNT4 z!2%DYhAtQe2^aw**2ure6vK6;=I91F`yZz=j)*5J`;uMFAl%K-KSZlFh_{1dYOEM> zxe048AH+@MiV;_PxYl*LJKbq*8#?0|#^LY|IUs@Qh*RYca>Zz+rQj%1!!S2@HAAT= zA)4Af6Ax80x`*sFFq>qoD>cU)H)du^vzjJX=ba5-#F;Nk+Ho~f@zWK>&+5V{w*66l zWoOt&HR&pmgax-j68@|u;oLQlgglE#Lg1QAQZqc-0b#|6(|c1Ei0FUP> zZFkj8I^V&}H&f?3m-*hR^PL84K0j?6)U0xz)>~ECRPZD)9hdg0EoYDyq%si8`&7*x z9&VM^^MGF?UCC&j03h8h_IBj{XPxrz0i`{Ol%C@va*$`^z9QoaDa=xF?i?XadQ8G0 zNR;Zj0+7h~zeR9OVwU=%D%-gTj-SKq1%5@;42Fk;vj>R5i{r z(;od1aKIk^iyiYfc4uVX#YUFtb}`vF9G1BvI)|eH`1yb5DI-gNM%9cyuaK?8{z5!^ z0HYh^P~xBG*xfy&-2LIVA9BEz@1E}ddldSh1S>+Von;7M6^y74L&+0W%Qcefe%r9D zgzjRYnK1mA>hZn2Xm54(iehwiVh>IbWHsr*QN5+0oj~oLknTKP`INLPF~sd8$XzOF z2ip87JCrE#OVyw440Fc_zW7VwYw7xK(vq+EABVzH#vr_~c-|btb#}QMEam8y_qA+)h=v$yy zhV%BNyaY+#Y(?U+2N) z37=M9VdU`_oyR!l!4r-QJ#Qd*8oHY?9I3^lfCWT2s-+$HtRi)G69cmQ8k+1W_oojO z)L&`zWsn5S_^AWeUOhljLl6iUAfm=3kWa+X9HQ#L;ega)o>`47*I&-WmmG(R#Nx|C zdK~IptzVDDYoFZ4iQHQ9|BPo^cJtHlQ*~_YGTI;Cwfb|PzT&CzC z4m7S!nK~Y+Q8%np{#65dZY!QXA@hAQ=d-ylBD^JT6z&_&E&=z z2tSUoJEVKW{W$QEYB(7@boCEoSD05x6^u~>Vf=9C(+h9%71H1}lF=+c^X^lJvD-yV z9IW=|#wWFRlx&CYd+>GM%6Lu%$h!0Qm@Gl^%4G&WdN-1G`SfPA3uTpkO^=Egv`Zgw z3hfdow3i^qm9NM;aWkDRi|NRFN%s$?Yo*f#HbObldHRAAGu4hrDX%-zY5w;Z$W;4~ zA4&^k{!FI24ygiW1TgfM$xhDXN2B&(Y9e$9HHS!84YC9r4ced?duT6n^Bx(cHc>$lwrJFKk{CV zLU0Jk4p0ofz)>zTH(bIr407v4!XNA7uuv}|DM8d|?KT5;iJi`x;heO#97&7ReWU4lFxnRm+y*)!k z%1|zS+ch3WPicGpe`qh%+H9}ZJub7ozQ;O9-R(8y%8>T@?zTT{ueZ7fw%2E2LG9Hc z9_{sQcu0E)T#9d|0%| zr(~H_vLq@Q^b6V)hX&^~d29Yv)^sRS7<=+7=bmN>M7IquENUnJ7@J64mLujaFKKcdC(hXHBh|emz<#790-JsuCI_ zv{F={R=s&UV!PqDYA0p`NBc6=M|XhHKAo87wh1RQYgx}wu1h=Fj?Gb`PwyI|I_foG z3MxH?s<@-_wE(@trLRwh=^Y=Ppk`RV29h)&Org%%)Ms?Ij5bUK=Vxkt>t*Vj4(t|x zAdY^!p3J2`z?Ca#wM`-P3ZvP)v)-(yYxL9Zj*m5B*L+ZoNQ8%wg^`$c=iwdX-zwe# z&nS%ZU9K$t+glfbd=4i!t&cD~)tI+3Can?~Nr!n@OfMV(c89Br3>$ajH(V^tdt;*M z&VNn9g2>UzyR?1lJ|;Wf?j9cw^ZJ*q81Roi8O@DW(G2h_u%H}l$a3JoFmA{~W?9Kr z%fiU+!?P=xh;uLZ=ma|$8dC5IO0qkD2}qFrlg-@|Q`x8ycT!!;1@$P|Mg^};-8N5l zQpq{UIAI)4-e`Vzlt*>qJIq8C$0JJ>slSsQSBU{Tu4Hm)8or=^k|>T!4Vg{}Q;UC> z_U*^^WfzKyhCTT_;=eBJgs7a5onr8(+$~CGPBf0^8%a}!{LH;#W;yC9onHj=y9@bM zelC89@0`A3hm_ITF%CO@EbT+~FZ3<8@&k##O~g0L*uASQx4=4}sWq z*nZvH3{VH-2!`b9bms;5U3SF((*#AFpqyFqm*7KtUU|43M!}wU>FVrXmjVsaw!QLM zY+Z>IXuGJ>%WnpcU_^3?8Q#SwU&@mu3Dc0EILdhV79ZxWB$Ir4F2`Q_;<#Lh+vcZk zTvCs8fbDSNJbw9!brXHrulfcTodaG$TbZ;$1+Zeo4J0!KUFExe{~niWV*hwUNBCKX zi`Nlk#-SGBmg$^n#4kAbx65qKZ#Yl1A4$2rl$S}Vh;`??Cf5c#$1BJ@D z%CiaHt>_;^;ls0Uv|;iTsK)H)k$rUgWGU&9USehnrjtL|vJO*|s9u=r+e78)pMj~< z)szb44qQ0<5ZzV>n+u^4l0?gjdaPXcUhs}tzGr}xJ`JBB+XV^yfdKkeGSiJ&S?sAW z4oK|sg%&3d<~Tf`A{7N0?rGsloeD|1ds` zr)bWXY>di$Gv%@?vjK|%uyXO>;%z9?&<~%G+2}5%J1+{_fF2F~S^Iqf{h9MP2AI3U z(dEou-gw;#oY#x~=?oZAvuCQ${@<(rX#ejK>6U!^e@}}|f3GEMa64goj|)S%|F;^? zYwZ7h$!F7NpT{c<(@mT1o8S09?En3D{rCUYzF+P|S}Wg{xlvCVTjp+M7tqf2bqrqq z;jTH@(SUt(HT)5bSGay%%NE7lBWKAf*L`YH6BvGU12)jG7ZAD;Fhyz3#Vi;@KUs8M z!QZYt0jl@MFwTY}stg-!LlR!o0Wn98*l>n-{6}K@$Ecx8wbo%rAXiyo0o3QM5xHPw zN`KIskqBE&Ts3!bnGq|HC!DnIOClSevKk^TjXRyH^o}N#DY=eD^ejAwHz>K78Hd}6 zDyE@gs1hyJ>I1N09jCGr;Z|AyZaRG1`Gz}aC%I`%mn2mY^AoSP(xFmn&wpx!{7bF~ z+4b$C`&T>eqr-LtBc0KeSh$B2Ak=Rm$@Lz(_wdq8QVPmv%GIt9Ym^9QmV=TEX1TgX zD#cWIx($D=+_zosaqIaCYjp)S0IUPyW1=)>!JT;GDUxrdA(6kSUH3R#W8%~k6Jbwa z1EU;n?D!J?-LV3!bCzMvikz~kz009d!{D#xT#3VcuCe8vZ;VJKwkqW(Kb1xDM?aRt zHCVCJ5Cl(SA@W&l7!E#|iioL4Yl}F zc77oK)EIoTEDqA9rndoBC{rxV@wL0)gK$6749aqi-S*ImQ~! z_B(Z&VD5LyeBIpd1bf*H0AOr%egE(FF{kMt*vD@U1=`1oi$u9o%{r(N222ENhfC(MH&uzhRwmzSZL z(fy=5%Z=?$#%&c0B%OhGbaB@4FMNZpGIvIUwi-`hFgl6Bz>gGUBF?l}Nj3Y&N=UyP zjD9U+vy-tHTgpX=6xHouC49x~whRn`XZsz$%w5Tnf_D<6v2Y||p*H5C-r1zjA+V{w z8T-9G-asO(|KVRwLcq|%zW9#>!1?ce=tfMLgJKYoHWUTn<{$cchrq!>9pOs!z@;%T zCJ_nxDJ)$)hBgxqb8)Bh)-FN&pknAe(rKi{c@KZp#dm5;f4wZibw2&FJ`-ROz7&fk z>1lI(7D+AjrI#(~xQRsobbjLmw@%0={oOSZ*Vq%a&X<@K(kT%Y3gAt5Pm=vuQDBT& za3YxnqbC~QZ-N0_C)8!JlQO^0;PxF0JqUY$mOc6 z`zTkix_i}a!@@C2%1XDn?%`1Y>c=eY<~a{z=YL;p{Rf-5=YJ$8fw0!kxT*8-G36JX zyW+=CC2%l3<9UqRD%A7WLUAy&P*XB%`gfke0q4CeLZz|ADyyaQINZGK7Ae)`S7cx5 zJl>Y(EIW1u&tngp&w~QwY?+yh_`K3w|EOR3{QsFgL6?7>lz%nO13Jipkj#j0l5#j- zQZKv(|FgV5tS>kLgFX!a!v0V7U9WTwum{2EJ(Fw)1J?^YO={AJJt+x04gns9tqKs0 z8+wGrAWE4xXaG_Q=BsjlpNZ-6K{)jX4?trls}NdV^?bJMw=$L>zK77|s8eqs%&Y*0t%4Gd>A8zb%--6 zv4`{r`Eh6)I*^I@BAQ=_#pH~Y^Kc1gbh>_wgmHX(EEFFx6p|VZ0SFabRAU zI&+C1-U`LYNvknw0C{SN53J6J1f8UEhi@Li-Ed&_^WNfbxirDZtTY4)+;mhfNa*w<_w1ut;2Iq3R=`DU!hYsK!p4ZV@*1#0{3G}a;mB9=L%zk^kUyu{R<^|9 z^MeA$X-J;LBUtCK;8oAkUS&?g@C*Jr@(p!b+`FP_Yze&%#2s+lJ2V4Lh zE;LU4a`!k0e&cXvCy$Zv3>+NJpjO&LstDhgf5tuh#`|ue@7sME@V-^(`*}qH@6RD9 zF)07(s{`I|4}E{IJm7s%==<^(0r=kxec$V7K>7)x@5?I#-VdzhJ><`{}GTk|NHHs?j5;C-vm_wCLHyg!#2QvdR^0q?ihc+Vj(_s#g$ zXY^(^-fxq4#Kw7rc>a?li!`6Jk8|BC=R^I6{hRZ5EYhH#MF1Los)(Jy*oPYDgtFE zYDRvm%zx@GJBL|eN~Q(B#jI|Xy4QFEOAbqQkGeF9(+rc4&noq7p#~|9Sq?e|*yA7| zh&GN{tFK-9OYvn~ld$u;mDxM}xcNG9F~Zqr$W0?||8AHxqY z_;_GE246|rWKE+W7o!03sbCqtb2v|X#^6EC?~g48-@}aW8Mh8TWlus_tB1EfiQfkA z4gR6}eYcF|_uq-Jd>`b8h98rSxy}ZAxqfxdT)(=M?HkL_KY-=SQg}1A8jE4mkUC6# zqVt>0{O-X6WBp3Krk_vd^Im*DN0&cIKOfHLNq8=LjtX}zoZ4723#$^(+P)D2MP2NfjcDQ??cru<1depNO zPYr(cEq+Rh;(0ad2*&>zti(Jv4!kVfrxsU{!eJpMb_B2Z#}FQM=f$lElnHND+BP2p zqK0q4kLtFKjUSXJr&Bkp(qBb%+TV(%`vp9L=zLI#X`t1+ zC?8nhZW@LoZ@MA5%HGGBpQC>vb>Oxd{An_v2F+yx|518e;8f>Ju+fgppq5Eg(h4=_fNV~?2_sln(tdv&{8ag3 zm--g3d0-W3_0mZ?^D_)YcaZ`!vkNLIM@QM)w#;SjYJh<^8 z3-i+}6Kjhzdus>z+3{tC^U9tA^D$j!gThd1-UF+HSej02D6?;O5*^DgmeZurW3*|E zJu`0v^pzZcnR{$y(?}eRnd@GE@2)O9&KVutQmf_NI0Tf-7ZBW44tMW3t4OHqA7KyI zW{sH}0|6Al*= zdur^@S)tzgS>!2=`kgEF?=kHV%7>=4Q|M&EhcW-YV40PpDwK;CuC|!b|jQocu8Sj=XIm7tw7Y7m=_ta7o=gMjU`- zIKgSK^B0unV`mo{wVLTub^0F|(tM>aeLJSN>-6shq_2jiRhCd+O#Ba@u7SVr-$U@P z``Cwn`mqrFE4B)L2jg^)qu&zz^Y)|sH9!XZI|IrePor8Bf1XYs&Ge^y=|?cVQ>PEa z-=!A(uhNe&`TyF}A^2nb_{)!m;BTPIAC36Tl8HY49o&cV8|(4|`M;1xtS0^yTcrMs z?<|?(OFxh4*C1!qKM?(CHma&x4Sq{SNMB{X_9DM0$;1pQ2A^PQ?~;$NnztwqBL@W4O8+B%+3B zNnT8cJ3tSQp-ktCw&9qg-Lj!W;`w9}@h%){o5AM0jZ<+5;eQ~Ls}jD!4kiRu*@rw+ zIwu{#6QMNukSDkwy*CTrn_mmuNt_&X_edh@zNn8lT~~xh8%|dk?UMAd=6PqTiB7+% z71H0W(;wf1^v!(fO{cAtid0%zQo|nm?q=_+`cz#K0ZgO$=tsi2f-!jL2CGyj&_y@1 zD{!}%iTtso4m+WiUdI_stcsxK-LV;HGi=F zP_Oj=uj?Q4{~y<1=Kt^YqCZ@}`GfT;y*?sRi%ygmT;$I}yTD6L$F`XKrT7g=MidRM zld?L0Ooz^lQkBpdE;D4^z&Qt8ko3wj{?#mawyqfBV1XN-O5^BiV+w2fnQf- zKWEL|oev`WUS-!M{O3lLupi4Ouzieptb$AbuQ! z@=K2p$d5O1R}uMfUs#x*ALFO^`SD;NF7ji7eBUs2ctCwtB?t234DL`;R|lpG_M;#=#JVHak%HG%zKo@+UUj%ClVSdr{p?wExwaZe%(Rqu>Jwt_vwe6zT`PFn63^c?o>@Nw&jR2K z!ZWlEJa3*AJfCCAujrc~Jl7G=B5dI?IrGPOT5CN08v@TW8c#U!B!uEwFZzRwaXhMj z{tE5gSmW9DI{33N2#~`Rp4V*#zvDSfS0(PLIy}qJ8 zeH(=5;uzq0g8{OBO)~3JTYFvjUhsU=0C>h~JbShQPedr5LeZyC{&;u~pu1rT@o+ge zP=1~!o~X;fGg{+0a0T!@tMT+9o-FV!h(B%Wz%x+e`AJRi78M2I`31KNs2m7Qiy@jNuH7X5OgLr|HQfoI7Y;ZJrL@MLQ|bGHD`O5hCQ&sb5pQ2u;`eS(mm zoL6hnuZ!b=XSJOA=IdGhSe`p*JRf)qaLj_n6H7duLh7UEiX3Qvj$+DD&49qySHF&w3!Wz~0MA5?XZ=RtIR%_Sc;<@Ah4N=R zdVlce;YL%uMT>**JW4!geH&w?tNG*h8m#fW{yXqY(s-=IGdvVeY#n&)8qadvja0NG z2+!IlfoJ4p;Q3*d@MqO|;F+xP6m9^XO~4t%pIlM7Q2rEYfAHE^;8_}krw8$Db z?7zBeJg3hA&+{5j8{$a|#dAVLJQPoRjpySS;3)~h^Vuliv0Vn9Pge?m+7izcjc3++ z;8_5iLHrq72OjN@Hv9|Rl%i!pc&;O!MZS%?^^l*|8c+YTz%y0j2`8R}P(15J zSo^DoG4mUuUytJa3zc{ocwSy1{3$pCJkvCuvFm_mHgE><$65!T2{_*i`t@6bTJ&oz z77NrH5cvAa&jm)=yIXuy4LrFT&z_%vCn6M2p{QIae>_J8&*L}MqF+6TC+afrjMjJ# zoCcm3G@d@hlLfv7@uy84cm`@b#Z7C`ug|bGQRP73>&u^=Wx}5p#FMA-l>G=i`++kE z&n!{7Q2wmJF>PqC2Z<+Gzpf)51p%us9*4%$^AzypYdp!s(=QZHcpZ4UX*}oQ7KG@R zoAx=go_Man_-je2@F)8u@Dyk~bJqgTO5hCQ&sb5pQ2rQr9$Hq5fB4Hmj3ie>;OoO5 z;_0CA6#ND}(>0!0;^`EMXOD<@D4vfhrM>PuQ;UC?PCQ*N1JB#bw0@lco)6x@$a}j{uKb<7q=YX`y&dh=_;cDZ=?(;Ln_awdmK{$AHIn z8F)TjEc|ImJg;axvsMGo0^khd&(J#XwAXls< zlMsq$y{KF$f3OjN{JHt-TJ-C)zXDIUAG(h z9(5UbMr%B)6!5&N@$?~{EbuLeKW*y3PQKRXu*e@-6) zp4T*1{t7$_4O(A34vnWR@yynEl8L8ZD4y^- z@T|e{F5pkIcfgMDlX)33&t-W6mSONnJX$6%AZjh&)09(qF>Kv z0?%1AXnpYv)_Ah_0MA<*kCk|ahvJE?1J8EYJn-kCs9N;v=p(>0@-p!J@U`&ggWbUM zw#HLf3Ot*DGl)OAqH>}9v1>dxFRewt9wnY_#u=bG=^xLJb=P<{?*g9pG@drZlNO5S zgot>ZcpQzupU;ElTaI1_Jhscg^XXT@pN7OUSL2zr40sj*XApme)`6!8HW=--B(fGf zpA7<@MG&z1$Pd>CTWdU>e+8cZXguM>lMsq$y{KF$f7)w29cshl#_<6v@iOqdTqyi` z;uqlguf{XB1bAixXApm^b>MjuHW>VQyJ0Q-Sxf%B0RgKIe>h&g@TK5+eJAj|ukq|z z3Oo^^cnU@3Liy857Rk;Lyf0w3GnO(&LBLqMCC&H=ap+}!IMt=oOu~|mV7S!>AxL#KGJyR zE(V^Jz!}7!v7&OJ{8{s}@aIy?TJUsadtn~5-u&sH@f2(Wo{u%2SmNmvif50AcqpE3 z8qeQr!}B!x)3u&>s9$e?Cj9wkEAa3taKtC%76Z@wz!}7!K6T(J+AjRryC3o#EI&&( zLcivtLF*$w#1pOY9M}RppK3fOih!qiD4sG=xlsPJ*LWVT4bM9n;7?pV@ld}ee=7WG zK|G&pJVS{mA2@^flUxTL=QiQbfNc0bUk2${$7_IR1{$ZVeJYQ=( zvlar+0^khd&(J#Xtl2F58FzgxczUFRKa0?y|BF9=5I@&gLwt4}AXaFI$G!o?*ieWi zqJ_dTBYqU|K%>?WU(<&H(;qL^E7Kn@c5NU!#*5kI`-aW#h5eFvJ3M>6NnpHKBV?ua zq8ZFu`Qn}NZ7ZGLULKIXe~t7Nn~?rLwWt5z@pI=slqS3XC-7sn=EtuKz>je7DX7Ul z7p)88$H3K^AK3Tl=SP=E{QS5w5EuE;O}=l~phrM`3a$*~$G6|1J{!Q4TKUmfr|-5Z zAbro!^sm;QJ}6%8!aS*b{~u8K{krmdzDDIE=7&_iP*h4PZ;nY&pZ4g3VDI+0fTu9X z{(cqGsRPfO8w5|E+VDJ0dzS-oF**Ck zcy@ju{Q2fP;5n%Alzjy}`++kE&n(fOQ2sR5c*<~AU zJjukK^i(Z)nmT|d?lSO9{*Uly^D5vus__gZo_yd8 z;!koNcs}}3`1AML@Eq+0JTuUs_2tizxq_!5@f_25)_)E>r+_mE&sDN*8tIBp6cs~8N@Ml#S@SN0mW_=1g3xG3-KSS%l zv;BL)Q*xmeJfGpTK(z=AtS^6BYdoh*f#;OQ6HYt{p?KDd%7yaBuJPPf8y3-1V?{>y-; zTI1RCG4Mo$;wcoB3*}EYjc43F(Dz{Zxo#!&E9x@vjMjJxN`U8##?yy*vcR_>{JIDvh9nkt8roomHnQtxbIVTH{GOA*?ecH*_}^^RTkm=gx+sUgJm%wqC56&a{nXFRaJe#IAM^ve=$sKK;;bCm()zB z>&|qkI^Eg%NcX4EbgOAou#YMp&~V;FPvAHAugLjkk^jYcS?go{=Yv)M2XvW9A0%C9 z(pyN+HR*EFvrKxxT+q2D-HY^ClkP%#s7bdY-N&R`lD3+3yAMDon{-RkZA?0nbgW5N zzYjXxqz{rl5#z7lc-D81Nso~FoAdzEWhUK=bfHOiAwAcm%MXB_Wzq{t=bH39(qm0} z4(XvLJ)LwPlkTz~wAG~Bkxn-0mZaO5bR_9mldj$eI^3k^?FD@T*Hakh+07xn$E2r| zUT@OlNtc=Q2-1Zn-Et4;xh5S+dX`C7?*^S~(g#V8HR&y+hnn>CU7-7z^mx)%lO91j z*`x=MZe!BDNXMFV^)H~qP5L0|6Ic1`zlHQ3lP)K{-lP|jE;H#7J3$wk^Z?RxO}ZE9 zSti|ubgoIaBR$rnxBLuxs7aTT?qkvmNn1^N9_eJ0o130hvk7z?lb%jG)}+Ui4mar$q)*^HNkjezkltg`y}kjx-lV&bE;H$N zqzg^DCF!{)9Z7nYNzeHjbgoHHCq34r$CDmv(j!RsG3f!MttNf25OlIhZz0{rq{~Ui zn)E`_;U+zg^a&iwWz>Hm&O7w%G3j}v*PHYl(q$$+ophl|k0(9XqB~B%N#0 zk)+3(boD2ohnn<3(tS*N&c~pwCOw^WvPq98-NvLxkd8I!0i?r8*Vvz&$m@@W;7o$% z?8E(Mo8g)feG&9O(Zl1UDcor7+>A3x(w#ra#UpR9b3}F>2rA|;1k}&(z1w;a40noa%&ZZ?alBx zaE1x)Qms-0PaQVSF!}ey{ocw(at;zc#jy!NJD}lj_{&6&I1dGP?W#53`pV0mS$Ul? z&uPuO6q$7`{*B4LQVw`iSAPs|;3&?g!9h#d_sK)w)b&=JoOC!~`@SJBy;gvqg^m64 z(}nb0lWs?PmPxlHoomvOq{o_c^>WZdP5L0|J|;b21Zb;C_adEa(p^ZmG3j=sV@2Q;dBz*$so*DJ2eggC!lRij#y-9B&U1rj~#(^$0=`N(_nshtTvrM`r>0FbJBt6!o ztDglu)T9rR?qkwhNLx+1oOH5D3xC^~wD339q=moXCN2CufqQ_A`fnk>_n34!>GdYP zkaU?z&m&!E(sM}9HRbI;s6!%#hbkIx@Jdpwf4_jS)}dA?p}d);%+4W#Q? z>UGHgTu)Q43+Q@`dYwnt!_?~>y6&r9XVSG%y2tdXsvcL)RrA>{pk6Pc>sjjcT)Lj7UQeg%G3*-o zdhh3{@e|dg@hRTVQ)B1#rpy)26SW2C&KvC{(nsp)p&~s|PcNAx@NccB=ZW-cdV0!i zp}e!QUO$nZtEY#G^d)+F$wvZzo1UI0(norre=L+w)YCIXdTTv>u1K$@r;iiq&PqD_ zQ$%{Mp6-V452pPTqMqJqpCG@ro*pXFtLf<_dxi4OGWztB z+j--8B0X16&lKrP^z@WH0)LyH-btj7)YC&ndZM0Q^1HylwVs|Q(yQs|<8}+>op*Hh zr-<}iJ-w4iU!tdnigcTvUh2pPTH9dWtNOzX%><`^0=$EUfmuwa2 zOZ4p>)_OY4KV0-`dU^@Q|1P@orq2F6k)ErkXNvSC zdivb21^zZYo$|Xb`6Kmo%I~`9iF!KacU|<>dU~ixucoKZMgH1V-g!f3|2UDJtEZ=k z^d)+FCy{Q`(?do2NIiY-7lM9?dipq#-dayj5$VFIeQeWaeADbf@5^tmFvwVvK-o*=)Po*pXFo!4~smwY0W&(+iOMEVjvJyWFH z^mMoJ^+-Lv)5n7RL_IxJq_@`7OT_t8H9b8~q&xA|A=miFEg#3v3%rE%8V(6&=LLSo zGjKRQ*kn7z&Y5TD2JWJB1804%JE7hfvo-CNM0}wZA0(6Nd_w06=HPvu!Ez9MRv8gYCej>uMy55&3II6aWg6OY8Xtwmj60=?gx zKb5_&TSyB=={!KZubb+?d$+Hr;e8!Ht4}%CvyTbshrnVO+8QW#uTREy^Fy42!G{z?0s18Z6exf54Ocd0#O3o0md9o##*TyI`}We4gR@+dkyqn9S_2MDqWT?YEQtdil#U zJlW6XKUpl=|E_AkFZtN{b8#8;^}=Z{FU?i zZoS2fXY2byxbPG2L3n^(_=>k(#;a=vvHsDykgZ49Q;PTP%>THT2A$ONA-|Qd3ZR3i zhb|r!eMWPAzM=JWpmXOX~1aiMW4Z3pEyyUGoOk2ywnmE>Z?*AF1+e(p7*H_TmSebuV1vDt})kV+B?u^A@tPX)7OhWHdv1)?eCL_AJ)F1eucQ{ z(+eAtrG3|Z;ltKHa(&Lwdb%cDpG(uBPkp^Un^=|8<8y#HVTt;PYsO z^qG{-@ChM(nsR-Hkv-(B< zefCPP*Pf?#2-SlZi_}uGLAGZFH>yt+7`|jcT7)hTO^!n8C zqE9uBPy1-pFC~5sej?&C9<8(&y>vi$r?5o<3cq57yIDMS6^$ zo*>d2>gg>-`i&x;{?ii$`;O@8sUm%yo}M7m=jrJ!MS8lP9w^cW>*)n1LBAM1Jx8QB z)YBJ<^c!dO_KWl*dOE!ybIq66>FM--%tfE4r_=i}7d>51pDxk|>*=W?Jw{JY5a|u| z^p+z1hEr#Mph!QWrx)}W^k1i^)A~1;ee?8mTL0#vr|apo{>?=ntf%LQ^cX#Tkw|Z- zr%xB@Hzb|?sUrP|o}M7m*XijkMfyBFJy4{l>*)nzzGkqVo)aVB6Qidu66p=~^ywn~ zMxow*k$yx^PY~(r^z@b@eV(2kDALpQ^nxyeeS`J%9FZQQr!Nxe4fXWtBK<~z&i;Z< zg8U8Fx>GSmT=^{N{Pfr!;gZ1EGp1w$=-#D$af4WFNqNk^d^mTfA zf=HjIr?(X8>3VvgNFS`H7xWSB7wI1IRY-Tb@>O5sH$HNuJ;amzuCI zj=#k|0-iR>IPErlXgqCfqP=?r<*SBS)qK^TEE&bVh0#RJSJC&{5c$A==*UQw*$=%>C7u^n0JA;Dacu?U*E(q@BFJ6 z=DBCB{`UrMdCFQ%g?!|{IH!fgNzPkMB~D*+PGa7w4>%RAcIB;JC@U*--D0Cq*M3V(rluiT5(xb$S=9fniDj-Y z9!$hYUFsy}tXLk8<*gi5eiO^pdi+hbTn{RDN6hu8K`rYF?*7z{|C@xoM$~8RceXll9L7fGpO9dp34c}ci1(GkN-D7^B@3- zG~|j2(EI=_(r7;Ibrw5U(F`Uv8d71n3j%M710>!43{uFtIT&}TLD)ZjC$ z9DQCC_4%f^fKOus^qE^K&eh7prwP|5g!HMw_3LBbYvE zYoJdpuFr`y=o6sVX9cUAp7HtSEdieZQ6GCv;8Sp;BKlB%W;EC5n@s3ao9ok;^f3cB z4L;4w(dRzWhq@1H-(I^c#t)sCl2T!Pj=se3IrtOwF>rl0nW4{V=&8|X7OQfe@tHG8 z(C7FiL7)6!;FIH)D=IIZlej)rNS|P?PZa6XU$2jUIr>x)^?5?nXG0C>)2YJxY)obN zM6ZTEb+|qY#zLR1&{KoY7*^#xz#69bC5E{7R=Z6_W{p$Tb;wQAi`h5B#!)MM)=u?mDGwluNvk-b}@abEQ zK0QT!?h*BAQw{h`cgq!d!pFV;4dhxq=zvyPT&ton(5kjxs|~E;F_eVy!%ykJ2L)OE zs!!fizJ=9o7Vs(gTd42qIKWZGA(s1%tWwHVrgB-H%jw1s2`?~IpLieo|HAceL;61s zyELelvWlVA|L+Nc{{3+>j!Tbj??8`Ep7p@^M=V!M)V~LnyCZ%{LbY3`|McNZ{|DcL z{s*}Jqh5#pGhmlS|85@jj~4Zqjgxd-`fp(Ezh^x#{t?S1#|!xL@sHZrG*Ke8sZ{LT8*!8}B!ARHp z=3kEqI=JRfg8XV+{@c_fpWyN@jE4L=dihzbKFZ)J@>_HHPm+A)efy3ZF8Po7l5cyC z+5h&BkbgzCpXASiURwJ-$zOu8G3-D2yJ-Iim;7J<^kqMnzxfBqzbe~5itN|R&tmmK zYd@F&Jjr+2f88bjF<0!kk@^S6rT^k3IqAAI?-Npe%+d=wV^)2O_=V3`; z?D~?t>-+LX`}msHlC(6ocXJ_3HQEO%-hb7t9F8rY`c+cyBLoxl+#fq zWIGdNJ2N&ayD~@aW*;AS|FXPmeLu~wZ5NCKrMI`00T_ILc0bwahQqxahncT4)0Yxm zw%dvRsEpzAQB_8qA#BE^`$|0h+wb+>Esuck^}XkEzIR+P{Qm3rn(vmMlWoXETRL+s zHLFDzTMQk9SA`MdbZ9PMD&<`iEM4GUpG9=!%CF7L8!J3OSfpVI07pYAv zw!17M9lN^P*lcf|g#s7UNDb3eQ0SR0%;lTQ0&OxAq{%P-($vOi+7;oEJ} zj}S)_lVkTMU`_id(T%`3XEHf1+)Rx?>&tJ7Y|=zpcuxp>&=lc=W-& zXxyXobo&_lV(Z_bC$ZObWq+(u$GOV*Qk=pD=l4i$S~B}PlKphv4!0jVNKrrr_KPR( z9J~K$nG;)b)$^gHqWf6+04o0uvmka)2b8`7z9=2z7v!g$SN$cGZcn9E{eAk!F7qD` z{!Ya|uabmWTtc9~D&b*B@aCTIXY_f-FM?hF6a?dQ=y_6UaWY_i|wpI4!SGz-XR{PS>Yoqu}s@-I+%*+1>6 zbU$8N^p78v*7(QRpLr;lYEW1_!rNAwaR!xWwNQz=Nd+yKl8=}n#287&F@JuHmp8{zOo{11r4xUfN=<&Ssn2P7w9(p`eoLW3Bk9oy&9T))5 zR*i)C{t5R~JO=_@sY4%+crI%g@@%=2SygQyg+mGIyzu5%- zJF$D0wQmm)|Gu2R*nZqWrSR5%)a_D!`>}7n$M$0s1)|t~tZc{HkBrCN+m9BB-rA4B zk1~9l3=!gW0Pd;n$F(HjyYF$2?MLr$hHw9|3cl38Jpdh~zCcEU?;V7&rhTu$%STXo zx&64<7NzU)(qj9OO{M=;`?2UArsNL^5VDJ$L_uI9G0Pxc6Yql|rkr?xxsyKLPsFS7 zelt!V@2Lgac%R+NYrN-z0pk7r!Gb@w;hq}rFTp#~qsboQeM2*5>eexeKgiV2+rZRK z072uAS5e#lVZ0CF{NsCq|86DTA1408IDawTYlFYHc)vHg{CGe4iN|=KXwt;{=KEQ^ zf7IJO-XBWv7Vje;VfY>j5!#a%aZio+s*eHRlf6C0`;ev#-xpq2@TGWv7&=J9fQ$y; z+Gqka@!pu1??~n4c=w~yEqG}$-uIvi{JVJ1Y{HbB(gQ+%SK@tMYlzth@tSxa2{Glw z`mhu9`8MRc#HS+?hN1V1BCV@4foV|Z_o?)UdE7~@YRgpM>S&jnqN`y zrFefFI!I%Hj0WFkXaY3x-iDWtr}A>V2UF>Xcxf@-|3Ve`ck!OnkSY1ZBM|bJ67Ne| zLd-6R*Tj1|#FP{7@3q&*yZ<9nHf*4DPA%{tmn& zJrAdNi1++3X6ortia#jcvv9tibOIn~{4oQy-96roDL98h7<2RQoWw{L&bI0EVB10o z^OuP2dz`Hp=AFT|s5hGrn`{T!5F2O8V=P^Y*=n-wH!0yk7lw_Jv6VZD&V-FKIVOfB z;dF{FClI>XX-%T?X(at#oQ%|A8c7?UF+PhoU4Hf+HSwME08HlCcg}-oY>g57E_*+I z6b3s41M}7_GYC>1_K$jZU%kVeDCd3Wll6g{Ctak4VWLEep&GY z)r(FM0BkUz)c7F~O@*@oin8NuL-22KS`dAjDY@OgvYu?$`Db+b?AE#w=(%JbK|$3=hr@$i55S4(Wk_u{Xm=uSj` zZHV#Uueqo$vcKlr-2K(<$|>1j&2NeR`Z|OGwrqsxuj%&!uqA*}};b~RP@8-Uvr4&biT*Lm$rR6OTq9CLv7gU&}@Pi+GZ zvw?tq$Wrx%n$Y$;3U2kUo{@;V}_nq~={JpW2yT5m3Y5YA<@OT%>T2T*LDXo|EC|7*LU?|>-d%P7X z{#adIdwdOzLC>fXIK4}}?V=L!#^-QeOrq@&>rd-bs?&CxWq)^4mwKg@(nK39_<#Yb z_<3H%UpL{afYhy?IKo{{`Dgn8)=h>}H`ye~#@&SuwF$zQb*SNZ$WQuwEa8zu4Z~bq zn~?AdrwZPL(#nzah{+ZZA-#0*tgCrh#crOZyu`cNBwLZR;B{&ra;SX>g+Qf!D4}Zi zVwe48&RwY5Qoe!3$7vd<$mh3bHv!D2f_3pR6Lrlwo3{tj*Q{K-*?2Z*(`1opb^}xqo=E6a0Ua`M(zTKMi~o|2HE4*Vg+VHP5+F@jolqbT*!4{)h9s zJWb9&E-mIoMduGdQBuWmo;yEGcK$J`O}CR6#oY=tH^slKlPHtkX+e!f3H1}`V^}{z zRb%FQv>k=QXpX*T;AQ+Bz|H!zKg?=_Xklr@!iF%cI@eB&mo;c=${o+;v``ugvxo8b z+Jh7u%J{o_^nV)9(HjS;MUreVphlBImqhC8Nua$8*0mcN@`>PvVtMgYVb0TI~ z+oZ;m-Tk$pP#J$OK>x4Kms(V3{%ZS-=&!&A0IW5j)b#9mh)4mYjj>7WkPST9WsziAkkBtgqz?o?vE4R0OLIB)Y0IKm?INC6`@fhhY zjK85K#@{zvLpw*U?;o95CN*Q@kFDj5zuPu*ACGnaNi!bv*q$aztE)1#YdrzAAK?C; zS08F`ggF|2k3@z2hyG4&=F8vx_xu-s=S7z1@1Q7me}97L@Zj&gr(NUkac^q;9rBx{bFY5V|<3RT+Qpmc}+w zU5*ciW5`uvZbVb;*ApFBT|pm28oHbN{4mHyP=p~kjk>5d=!f7%EnTB7`WTaI;7y~h zCN$~_m!#9`s4Iz8sbcAB!66)yh;jRmRLEA$#^chnZzG4y2IHhZAB>Y&J{XT1s1C+4 z8pA*w12P)rv?@Kzk^{xy#fM`_wkuMd7hUbebZDTA$Ju=SU|WpGHqv;kcL0OEKMix` zcxhh;u=j&IH1XnxCc|l=LZPfsyQ+9F>yJt>z!7rgF+LJ+%*!2xD$2T!9jLR?sme#? zft#(EeCG&BN8c-*11E?P$8PiRI9av#ly>0$S`-HEXdKJb`Mb%{Zd&kLWkp}e>jk`x z=Q~T!Ljg!_3_Y{jD?NTsl$Azs9mF0#1UfhyF<2^!Ek}zQ(9d=H&7F z1*!fn9!tAG)s5ffNYaeo7evSda0|`EgyFkc8NPpUQk};QX9^WdOHa#zlu3oyk|K=8 zL#85-*kHaJJ;w&~BvrcAUmeU}Mg+0Je6e)qI**`Qct%c~US6aO1WXWH6vW5#Jm)+2 ze%Aa%+FUtbR6dqZmP-8@%mD-Bcwz(LW3>UZKOCTmsO6~JMVZoeR;KA%Jf(!wLcEWs zvHh+}tdJN^=_n-4=3=7zKnzU>>De#&vtleI<5`xUI-#8hw0Mx_0Z10LQ<6nx(v$}B z=)_rtO#_g>GC7(yhgwB5`2dDA9JP7GSsu%{A@W zx2QAajxRGCDDmcLKCn2KVojM3+>HG1_;O2GK2^_MG$41)2Nu-?V7Y)&6F1{fV?B;9e-3dQU+!L3vGHY$ z6wk%KMX$vlQvB75#6QNxi><>oL~^3$Bs=w;pVg71D19F$YN~!~}hJaGzuN>4&kN&Dv-_2jm zmR8JPiPG%bOuU2Mkay&xg>(}BDb&)`u0#m`hvUP9`s!f8^L(IV4sYN8-FzUkS$X3_ z2}26mWo$k$0p9g6J{_^toN-#N(Jde6sSM{6ni`&~qb2Y+um?3xdxzN+zel@{Lo zJ?bU{&YZ0JyH8aBHx__u{2h*pTaLf`LQR_gHD>-EbQ%7B^=n`LZX4|G@9y7f{Oxr< zu<`~|ybY}h=)^t#aUc|54}&xwe+iZTpUww{2dggkG9T!(nfv@7%?I)u$*wk7yv+v= zAJ)$YPXFO)KJfUs^5z5WdwZD=G(gIm<`(Yr0sq0S_F^0~aBDBNg)8%cZr2&?@x9e} z39ka!d%zuE;6`|ECND zx9=%G> zp&rIjt7vOF&?uA!K1Y!@=qdWWp@}#g-GcArINA4LT5u!U(uBt4$3QZoH8(DMa7N{6p7JjQeZt8NM&8~niP7=&o>uoElac+9Tu6OU;dz2cF{$1wR@I36E= zs^YPt;BFKXDIep z1HjPvD{C`&{;Dk!J8t>V;Z@b~4}Fh|@}Z$@$&o7`+GiaDWRlcs&smK8V#6Se@4PWs zsC6>g(+1(TKW<|UL!EWu_&#uw?WPnNb5efGY#wT|zcR>re)5oC9zg>nO@8!LSyV38 z65u;mNIqdT2ZoerbW#hbyD>*6*$U7)C)rL({rezIu&roh)Ol*ITZS=^gZM5RT4Si> zoABCJdbd~}N+3BysD#{uv4`{_@B++Y>;DL9CW#yW``I$~LO98Ghej3+nx15x%X7G2 z^a0OfJp`s;)%{V$e*|~vEx;Ya8H@faK!`hsz!-JCpKE0a+W!lT)wB*^^@tMBJ4?ap z0)%Mdc|Nh)3v_vYNm)NY{!{ahi>j#OjrGiV@?sLX@xLI=UPHb!SUv?+dTBTLFM1F} zDyz(B-pc(KZNzQCf0v~Zoe2(F|79K_`|o+~zpOafe~Grks{e|mMaVDX>F#psaLtFx zP@xt{2I4Pg5NlDi0k{|@722b+Bs2S&4Y;L~W@69tSG< z#ADNHuXvP%Fg!Z<=Xe~Nt>RHs&odtViWnYGqp48w=tM>ghItx10?7!kcm#1)C)$D4 zqY55H*TAYaXC>mX0ad;Ncx?6eiN}gnUhycX&+ur~kK@t#0~L?_x}NdqahBnc6f5G< zl8i`%c^W)Q5cl5kxb9@EX0-*Y9ts}$C17<2LcmJIV=1xn-G8t4^NGiTm0t14tHcgj`3oz5AH{%Z-wPOtrUBxhx84OTssc&zf|z_-hYqatcRHZ8#G?kW^4&hy#}Wh|c=&(s6^~A}86Nk)%JFF6Q1NI} z(=#3)onm-=il#!vW86g;F%RZx@JK*C^^S*$vsw@VRwf0HHpJ?2&Pv3i6cJqkJOXa| z#N*OZuXwbq#qenK3ddvoJ1QQHYk0;Z<0Ql5eVR18;v=;fM%ZAU29Hi;gxB#*7tX40 z3$RL5@Muh|9_Fk>Jc>|-DuBmTEHLm9A1A)^ibp7xN?^QOeKg0T^ZP0uHL82YW9$ir z$0TZvTzI5hfD!31PlHEGGJ@mbb^d)XXIR=C3?Cy@s6(kj3?n&15tW0eNagq6r>^5*W&&6aokt>?^VZ{|2ER3nfZ_4 zo_h{(uY)*^|5Cx&d;dLxv+@rItKLdH_a;`aa#o_}8WSsD^Y4}=zWVR_i^+F#|6Q0x z{);|b*N8`Um;OV{pUd&nf zHv_9A#ea5UwVbmO{Wk=xD$pLiaMfpf)OV549@TK`zo%Da?a>d7Co*&!VC%J#Kc85| zb9;2^D8u6%O`2VJQH(T z!x5aJh)M_;mfwH3z!owd+51b5zPz$#-)9-D(Z_FFFh&6_*S7bAQ|x{C8Q34ENA~GyhF)?YaL>MIu}1 zzsFBh`tRQ|AsL9@SGLb*{(M>aXl? z@%Nj(9#QdFddo8&^|%pDD5>I#kCMM&L_=}PoR*9EJA3LZ;|)ouvU z;4zU{`NqR?)+ZigJ{9oDbi*U{4#Ok*Q+dAmu!_h0QqOo)=0?;+)2ZT7a2!Td<3@;h zWTFar$7Ah2hR2Fvuo|S`F`rmvL5K#AQN+qO9%iRcJci8|@L1!9N6Kx6#|Kwe-Z2<)1Lna95syWvLf-LM%vlXHfYo3H4?D41&RL1=#}H!W z8;=(xpLq2BpMb|&H#`z%#$*5Q43DGtig;umg%L+!o(7NUs6yWHc$c%U*D0qw_Rx>y&5sz-f$~PYI zSdrkPe~J1;z{9_)zbQ&B4#G^5>@{LCX zRy_EKk2-S&Jly-2!0QZ;gL8O%w8D`#3Lf45_Ke5ZyBHqJ?h)~regsA=fq5D{QqT@~ z$72v@wKoW?o>lPZMy#IYtVBF&5G&t!)W>E$A9(oB5%6&DUrI_C9uJM$ChG8axuv4tU4I#92+N3Rcf4c(fr_k8@Tc9;K*46~H3^ zd**!Lap@xg5BL71;BSUU>^Y7{RUCn%;L-SsXFM`~Wq7>bRKz3o5R9V_Gxa=8^ zvAGP7Nt7gW#YajWj7W!h8a!H(5nl0#M;UJ6{3G*~~gpv_n@d)Fr zW>p5O=M_9k4}euO&Pv2%C#p~d@Hl`K1U~A^rkMgB8{F{7yv*AV>~ng zZ((@!y#qW_6+AZV0jpyWqQS#XtbF4!`wyRZOnYCz;}Tx5QP*TzrA0@xTh=$w<5sw^HA@6wX*v#vHF~|67lFwtbF6qA1fey;9-1Mz{92#Li@iBIw6CMLcsCbMj^o+;; zEQZI?IwBsKJ7L5Tn5V&GI;xO&Jl^H3HeCZAqZB+w5vv)Tm54_-V&xl;c&sS!fk)Ik z0v_)DOG_ui<6CSjCp>y#Te#Am4k_@A$CjTN9=j;%>57ja#{)j`Xg*!Q!@YkAl^7m}Fnl09I;X05^giPmk5wBP z9vdm?>B3`fE{s?Q^E7y*q8%t&w+sK7Y}dC4Cl<~WFKC~|TI?h7qpd!+i})s5T1Z?; zPNlT!wu|>!a6hfimbEy|$8Yg;!<=kGW;V_^f6Q@NkiA1r(*6UeYb%D(Sm^Z0m`uV zwy)3@_8$RJR5qX>fBq5!n)D1cmGnU#_E{fx7&+fZLwlcWS4_4;D2_v%*m>l1T27F3 zw#y+zI(`}H zmG#4*0KU()k2a}qlTLWnlEUstqYgc^DqKD2s;5GjGQlVX1y0y$;IRrt*6y_@Vw0(q5#<^fMau6dE zP4)*&IK+2sqU|;gAHe(Jd+>#$qEIE?j+*SFB25`v@Nv2GSVvFCSYMNV{-Fkr!B0C) z2fiMaeqYO6x0n*wEy*}XYlV8kvM)Kkj0gB6s{GmHLgmja<)uw5iN7C0N=&g}uWcvVI5?8C|2v zq%!B7GbhB4v0-0Tzx7E(r$W(E<4I+|#NkrPA$Q^hc6F02YHw4NHzqXW9I6x!S(9wfAIEF;?NmMr8vs$y$`0c9eRM){95yotSMvMQ~e(43^sr1PlCq|{NzDXhcPEoRF8K$E?jWO}43_PTX5Q6h^X72O+Eoi2q@>K_sN%4G7s_k!+ZNIT3+dpj#oyBd;qCU#JPkMbQ z8NiN~GVo75NPj+doMNCMxxH9=ZRBxrRRrOlXzz{_sxL^ET`nK*NASRzJ*_2a4W;fs z+`&);K9%bqc}c|co)KR0 z?6}i2p69+-@O=BI8=gIu6QSq~Z`NJ^Vtit ztOxKMog9M)p2PzP6SgNO2YjTyf9*#*a1#w(Yp|haU{h4KRD|`6Xj^BTLP=_&8YS6q zn0j=d6%*(Y>1drliEP=*$T(sWjTgwhk8|?RGWi=uK5eeY8oXlZ@A|x$1NTXp`+kQq z;PZi*3`7gS8f~S?XN?>0ADJ1J5)^~E)@>8`Io8Z#e`YaTL+i~+yqa>b5Qac1lBIaq5O%^RbCcl{Sb|ebbSSr zGlt~!pl2Pif0`l3kIVTJw-htc$AW)7&R;yJBpbEZxfErEHinO9a>k=+ z*oz^6Jf7|}4%eI1>zoW+uTZZuKg9I{^}6LOT+dRkGuPmHntGj(iR&@yb;^2N4^yuT z*5bOadY!o&*GBa^;Wu1Isn>Zsaot?K4m^SDI_mY@$qN^UI$*o^(^%|^KV>FQ?FC6;(CmF9eM@V!_@1X zOStZUG|ETsK#*r=P=h9e(ZV4=$zQ=I98o{Xt(d=t#PQSSvhnHn)kiaXHn3N_D=7+3-l!K^u51= z-qt(4Z!YLHz0=1W1O42+UhThh6!cx*>2)Y5mwBhJ*aG_d-sycegFf0jy$%I&l6U%w z642Xvr}w2Guj!qBiGuuGbFcQ#x(xa*@AN3D6wAER_fn;J-#dNG1<*%(r`MrMl;oYh zq6qZ1-sx=qR?|EEl7#Z-!rkp>--G4j2!DU-#`rkmZ?xR@$A_Bm#TG}E-w&skW!$J_ zZe)1pXWX~u;@;$i>9j)f=`8f)hMt=++AzOh%9z;4&tSPkt-g)Ai-Ic?J;-G5hfi)t7d;IQ=t&yYq^{na!bpyOb#M>VP7mNXy|Nl?6u{*gpNB?CfL>#g0UqS!XZz=j+O0H0zn$JD`exO@LpVPQls>jP+rI&nP z@^aTlqg-R99Ch=&+>Yf`j`i4>|14qhHd48zyj(VwI|Y7B9`%^K+)Q4s4K#Jx=QbW3 zL=*BZ%r5+hV?StwNZ;2{Je$vc-^O?agG4F$y+g`a#WJiCMu8<;F>L$*df-)SKQHa6ekE9+>)WT?yPjXCe*h6CRKjLOBOEl09^fE)CQAodu(Aq2gPrDMyHE5bk- z-yHgS#i6ozdq4z@plRp~tS;7|(Ui0VDNtn6l8g-ks0{6d?Iu8XMAyHc2hbl? z|0LU-+isJ+lAZHkO)n1zgFg$T*jGrzOo(7LDQaI-b{5q~DHbA_hQz@R4g}YI*TwkIRVT$o-b$F{3>lMjcDR?*@sg|OSvQyqBW7yZ%_iv$Qj~9Y?X$LD} zG<>n$iTA294yV3hIMgIPUvTNUZ3Og`V1lYA)qiOYwJr?Ff?KSeqO{i3Df{7azH4JU zZo}8ovZ*vlE0*HFcST;zGKvg7k^2qIh#UeZxdMUW7HOMo`bK22RGml^$#n5E%CZbX zd_dpTDM&>_Ya5tpmz$e1S{ajtgQLN%%m{V-#WG zCVR(-WZPdPrUcsJeh2#f9z;UQte4ZvVm}5j<`|Q`K5`hv(#*=#RHQv4MC448dzjf= zDER>o29nWs+?iF%tKg8|aMB~%A@f0L=yj(5*zeiwmFwS@>%SHfZC#MA{D`aOh`#v_ zdrE4|gqlC5`;mBRVGSO3mDzoRWg=A{R4EgXWzbfK{;-4U{Bz$Clzfie56{7ljGF-l z%XK`OaWl|hInI8dosA|gjw&ZJX1oU_IG96jWy(xfv% z84%&Tk6ZahE%_R!6uCDqaq9QSXy{?PhRi5sng^L|$WiB>aC-= zgZ1tP^K`;JBz>OM^LAqzy6IUDPW|s8&gv z!wMKFPTH}X;+$%bBl`1b7N)Fe8j7Wm>>C->K79>0(L-R2PtX-h{rtGM?ecwyhRwxN zH+J7V9!Ob#fPy73W~#wT-{s(mN0QyCK4DZWJ;45!NiFf0cbnqZ{@6IE#sc21(aYD< zWH9Fc!_lbK`--*i2H}fz*=PdM?iPJUR#U~MpGN$zAVeFF})=>>)Sn;Vo>DAx%m-VD< zHjYy(VQu-H7f}%$(LJ5iq)T@$@x~voFDaV7p#3n8D&HPRFLTbsE!e@d&xX@$poFtF zZp!^PIW^1gB0_QG<7cRTST4cXSU-HL&cM<{Xjhu%quBWz6X_aWp0?l>Ucc#smFYu|PqqCz<4Drs5fvTc*dx z^2d5&3mC-FW6kBq2Ft99r6>3^RXZ?Q^vvzsTwJuus#uETkB$Aq#VSvJjPM|>%A^4P z%*`0rGb`n1&Z1*AX2E#H1z;>IK0@a7 zCFoJvHhj`A+V4dsM~an;T9u;3(wkz@c5=}d)uQ*l%ZpZ$i#`UD(J>Cug!R8-*-N)L z7Om+4{=T#}=*E~F!~6JXT$ytL_0i;IUa_ROHO$x6|IvN4O}7}Vh#+Y$7HL|unWx`k zg`P&Mj1k}kl)zt;4c8Q}cj%fp+O|k_*DAl!cS{k%Reh-wT{)r`JjEoS%?U#=M=>FW z8R?LKZ+^rfk|*B51CCmS&C@Zqxt3^%-(h0S(m2Kq4HTH<=PND)kMmePNv?DZq_#$;&(!qVRDHjyac+jTFv-#T^F%zbH+`7 z{wP8G5POjw+YJQH=+F-Glr7%m2TTvDH|_nQT5=vlkR_*!(RsPEP zO#aSGkbjiR|M*$RUk|;|D2no5(#f~3^dNucbs7?o{Jbr`<#*un^DjdF3E6&<-&HTa z@C%*&p5%u&b=hA5`78g&?9aad`4?sTpCS99m)3rreCrAi_V-zHTd{w01?=bYhmigJ z8&9zfNPbtn{KC(5_Ir|_-Ogoy1>~=s$L!y59`Y~A_CHPbLocoUI{DTgJ=ve>vVT(r z?3d*e{wHPsll-oF`Gr&^+~ePq{P4yu`zs)SJ3-Shjx%*$=(6_Uq(ZfAC;` zTw6tcUUmiS=kiMl|G#AWNq$$o{6eY{?)H0){ zpN0Ihvi*a|e(0sOUnk$X%#-~t`FTHAz>on%&&l==B>SP4)_$FQ>rzklyX5C>tbqMo{ssy1&&&3c{H}WWg;XWn?e`>q z&yOzqDg5+wm2kJ;ll-X#iu{xc$X_{&*}s$Q-!0qUpX`TTTKjeKt&2U_pIxZP&s*o!e)0T2 zBvx|G$xyLSf@87c8+o_;}^A^M&O zwqu#4UrwChb0PX#C9Q-B=`CI?hl+iq6dOv#GI%j@JxY5jHXp@=1hYE- z>cCmeCssLf{U=6UIU{lYRY(=Vz5ajW3T}1&*ZvQs{-tDkt$%d>KAV58bTHt$k^F6P z{qIBeLoaRp*U7go^dSGoBZ~aIpM1;jz~zrR4f(rd`$>LRz5GHn5E}bE$;ZbN~=MpV`0k6y)!f?SF#ohhAFyb@HuWd$8Z{gd#t0bp`C_@=H%b{yy1$lHXM?zmRHz zyZ=4OpZb>~KcxclSK68VLrDI9+5X4Le(0sOUnk%Cl_&dM^7B@??02n9H`i^7Yp8 zV(TEOIocJLOxq?U@Sn)?OQYx~dW$)m(c+^oz^ZY}X7j^H_M2nS_?Dr&Vk>Z4q6v>@ z3u(*tqgii2%M48FHVfB!Yg@6g44W*9j&q#og@$wpZ4A8!!}9RsLul=19F~W3x^X}v zS9I5asPp~s>Lbkcnoi385^GLTtOeVsL46WZH>Kka;=?f44sJSsk2O1;WeI~;vMn@W ziZST{_t37E>(&=u9hJSp~1{UYu6CivA`e4>#_F1?j;RxJ-*M z*?XE2haWIyWQUq!HmB83wD-g+m|y52)nU%VocB4X&Y^S;0*_ow8o5cq0*Uo*ZBysAe6)OLux8A*yuUp>JfGw`olE3g?XD?#MY87y=08?W!jSFMLz z48GS0I@+g$_sSPsg;Bhy-3x|fC=bxg>yMw;whq~+4d zvY5l>=cCHj(+dWK!huMb*y^Vf)DTPe;CVm~gI=tEi@&F4o`CYACn#Q_l|Qs{z5=7= z>l1;ven!5I+6U%K7t_$ESQ==k3Kx$LGTGmP%#cx7mW!8{Qg98ZKtnBJLN5~|@nRl! zm?N67cgS(0_mv@$+ypt|`Vj^zjW$ffk-N^gUfD3CGP#Ief+gF##@j0y4Lhic_DZtl z2@O{2%*2>pL1__*!>0sil;O?m1@Lgxyp4actYwRFe^JkF&($|r7J*rkeR8lVBPSSa z(y+du>H1c*_N0D<6f>O#Mu%evi~}SU`1E{74hmWz1CwgKJE^SbAsUa>U{5!lgwk0* z)6wn@!777I`g>LXdU(TmYH;<&%?-9f95!^4fW70>fxKHdi_LlM2J!@*GZrT)- zYK(az%wYKntQqdMLy9Y_L8SDwT&zD8qg5B!nGuznY=0s$@!F>2(5Xn+1{&9GW=krbtU+2p26Cb6!+h3ipfj+T&_p>3Kg(8Z>|KO@H(Egjpk`lxrrH5 zBK^$O675ffn=0cCK~Huo4!0n*OA_6plJG2E&m8Y#TpJFFWodCzrJA?OoY0Z zV6an+H&|&KhV;=&+5YP=WF%gx@cO?FYgYVBt#6nd9jo*A$=%+H!|O^|Dw|=hp46?U z$zYA4Tlnf!f7psQWRC}!{12I8ZkQ*VVy+piTNyN$OqG-4Ot#%*y@ggf!wi$jf3GQK zH{y*RshnnFJ5@N(Gth%REOqTg?dA82-4UN%f?dCJ_b;y(vqK0e-2BJ6_S# zYx<0wa0WFFttl&-WA9|xZHyV;-fVHk;VEh93U24u*I?&Nyhahi7xAR_S<-^)XfWvI z&o(KiA#ZM@Xq!`We7DN9t_iEpAp!SI!b97o)w@ohZ3rMond8yo(&{Ga2c%IMESlr< z5zP(wFk(*x0%xp6j%Yq2M%bp$#CE0_@OL{*&IXKLuU!Qr+G&D3{y(Y zYwiim4Ax~7Mj7dmerb`;@9|l*$zoF zaa&$7@X)O%B7ZDy;#MErGFV$uy|o*$eJi%~UJ8VO2%~Ki zW}F7gDv;>KpJ{kN#QGs5#1VT4&#;|cv~7!4MPMdK)4^~l8lvgV9GYylr7Jrgf6=jQ zHdqqylFx1o&bW>h4OhS?<2u?^dLcjx(E10vv3|1SsQ|+cqpgw*A6pPO9uLn8bVO*!e(`f&>{#y@0|Blcf!-&_L zqkh#>Z1__Nh{Pl%Al9JnIjd0HVhc@n>%e9zF_J{PZRta&6TfFmddMF^g!o=G8OgTG z&Miy_0m!$fFd(~;A|s%Pb0zG&Vl=!K5RsU%CERGJ)8j9?#M&?VeG#rgt33|k(*%9i_DW+Eb4 z1NsR0+8)Z5Til<+-kD1^e&<;&%AO!UWp2DKoPOD8RmH67d}+kMV=T2bHqrh#Vt{st z)qaq@s+VFpWiTjMaCDYl@;joR^274V7L0<~6-}ImsC#nR#0hq1oUUZfRg`%f2We7% zZt`wYX37dRe+XTvyu6{86`l(H{G^OYENGe>K+t@{>!H*X_0awn^<|hatLwPCplYIf z%Ot#|-n`uD{V4YXFZUyr>xXiQ_S#rDO8n8ktbJE$g07>=V?8&u#51KDy!=8cpNaBC zS#EPG%)0C;sJN2@tox=^x9x4c$+m;~<<@&_^oz|OSkH=W!RzpT*pDWRSy&{5-s&6z zeo{pHU#ij->K8^eAy+Z*l(ujGi)LR2OEt93vLVLQ0LK#660=9(qxEDwFFr&yAihHJMY@akpaUk_EZchj! z-uTOAGx*C^<>4<|2uVdz1D>S^2hoEpqf6`1u~XG?-|Ow(l*e=Oe!p+VpoTg|SMf7W zeT&8jXCM+JnmqhEzJ^~!-n^6VjjP}R7 zU=TYaiv3QZh0HUaVZRdwA$S~#_Jlr&Qkwr^O4Kd)M44?fYX@k>^Jq9RV~f9SP*6r` zpuzeKE`=J2_0+@j*ONE0FtC7z*D(KVO|9RiQvuS<*K7DCZVzY%3cR%y0WYqO6Zzt4iDOky3~)+V*@~!wx{FB zcBs>ZMknprfZ&Bo6U*3Gix070L~X^p0%sanyVXDKg)m>&=Qr;0Q}P?%+>4Fx7P28X{mP7VrMQ;u$?-FPLx(S|+U^xSpSw=N9hkS-`mh1x5H`6*%w}7*oCiGc@EYat)Sl z;3noP_R=Gj)54thf{+wLJVQ87%2%WyUr`_Vih-1`sLS&e)I2A~{A#eyW!zo)3d}Eo zqb^_ZI-W{$w7XO?v248sh*0#P!Ivgb&Pf3+V=ZBe@Ufsu3tHC7g4u#zUyf;Z3$ zINCiAb+TyQi7;Kh)50p`qOo%L(u5KB6L4HQ{%O~$;*r}ITig$l{ni)KuT0|cc8OBOv#3HGZd`v|-}$2@#K z-Le(0|AuKCz3^{D&-O3mWDR@GY<`(W*FeS(EvRj?O~ST0Ho|53o26q&w|1jZE^9Hj z`jcO&{uN6MQ>mhoh z(Iv^A1_+SDHrf;7VtKF7A4BC>)}OY+C}2@(T`+BW&$YUKvD7V?Tk?H+ND688>EYoR zJcWnr(w~gCXb0**8nHPp{&n1h!!s4KN_r>7zFe4_nfD7)YyCLkYPMX2%Y`Bx@8 zoRe>UtS4UlSeKAR855BjYUlhGzXkUSKb8KO9yC~{P#OCmIX{%2CP|fFXVJO!3jB1O z`)SV(9-Tpe6jO;TYFpXhWuQsvaKAU_m#uFHWl=LIBk%Z(GDErRA5?DrF1?9c>bT2v ztw-c9a8=q2lf4Je3ng|-KnpVwH*t&Sg*rijBpmBQ+kApB&~DcbYW1`oGFWJ5W#aJ7 z>x<|K%qfCF3nSdgfD76^xv@Xd)25YJ8l$itam~HO&|w8!~&20Ilj}?CaQ< zEme+hF2x%%C23hnAk-X-Ms}0)cRUO*k!{ZgGbaX8nBTSG3I>pZTgfIz>|YprN)JIv zyxQ_(`w9_bqq@3Phy$oD&dy-ShV8W32kEY$)R}_v41Q_;d>QPX)KLYY1h?k~(;Pk` zloq|hP@0khC9XpW=RxRZvYlm3B|U;U18rBsbTM2S*^F9F+@qlgYw58TKb#zjU}$Zp+Q$JX>{4rG zG5$h05==}ux(V6ZU}LzoLDX-u^LUUSSI^_I2jYDxUZ2`cVM%s41@_Wr zF-tH(oH3bNEE{H&ccj$@>%K!eabW}k|fdRq4+BoCNf+; z!*iHYuYZn9HQ6VGN$C)aWC1hc8Sp0~*sd_X@9(>Y9Ii(h=@KTbkYWnrU^#a3^;UGO zO|>n~W~3gQr%DgK%mVb>W&~(ANJG7s&ZFLU8-n1$L zAcN}8T@=>$#K9Aj<3RfcG)lc$JL6#|j@(jkm9~te{^LFi9$@KPG%2q`HgyU+ph^-B z!8 z)8E$&*5!Bv;8j6P2Xw*EsMWIspgb*LmKdzmSS4Z57VM;LgD!bey=)Vc|B9IhD zy=aCUO^Xo}q&L`!jVwr;;mi&B{TEf4Y-$(_PvwDqVh&J==!vK0tTb0>z{JZV26_$+vSOp{tI^m1-uxZJl;55)V-|X%94qx$0bVw(~lrxPCvrwM^O~&CGyMT{Sg-1--gq64PkY&Cgp>z zouN^Z?R>KRE!53ztTLNeWgca)d=1InUr+mmLf0RADASJ6uS)A)0Na>NX*(&p{nECw zm$|L}A8YRdA9Zo{|0fV2D!NfoW3@KcSc9M@t+Ak>yC#8M*=Q6LRMa51peRuiMFSE| zqO9vGtyXPoD;008T70Tih=}200xHNI1eJ>jvjh!_0$%fbe`da$Y>+VH-#b7x2BN! zj<>zVceD!&$6mE1MZFo8Zga&H`0$$fqj}HEZattxtFp`qZ$U=U^X$s}xp`?GUlF8g zZ@s%*RrI;TviiDm4LG2&&-j&~qRV&nna0kp5$?R$H6Jj2lpDrW6pU8oBzCBm&6;c- z99aFn`F^@Qu)wZ^O$FYd7v$1UDw+htJB*)9u=qIbkZnS4qDt}QlD$?dT>CQFqpngg z@mfJ9#&$KEe>`OQv;wwapH&Q^dKSks*8g*IYkj@N)6?126tbJ5Q4HN}YDLYI3@EL@ zPeO|9@203?d5lP!KGPlFC}`(bH(qb2;i$PxxMh@tF#G%rel>CA0sQLbeF=V*35$bY z-MvV2uLH~Sb6%k}sje^FfS_3KnJy^Sdy0Yy)+_$tdq~<5v0k|*5$jDMi^ppsT&p%O z4s%S+pa^ke=d0U8UJ+MLd?m4NJv1{%*nT|m2K~4YpmE;3k-wK%{**)93O2$66(9kM z21rU=cax>Me8ABiGXkl$$(-X+*|B8R=n`4Ls?}H8LC5TnVX9=NQ~b|BB}W>Xe6sA)+9c!=0U`(<_v1S$E!Ibo=+_2f2DR@ zvg;X_7~P_5#*5I`(To>z;_GBj*nBmNVox}e5ix78vxVNDLm^$Cj*n4ngNvP`SgDQT zC5ruri=C<1XBB&{Vjpp_F~zD$@oZw%#;laeLxq{F_#aS5oAEB+XyubDi1_!6Owxpr zz0qoX5`Qf-S@UDLeTVm0DMyaf)aHH?5)?)s&vzGyRJ&y$S!6( z!ivX5HDTiU-)I?U-+ei{tCSa**C&A+)q$c*wxmG}(#(?&h`9jhSpkYxWthLXK$gj_ z2Sd?`h)Y%MpmxsrCB@Bzhr|YCcZ;%OQ@zOT>TBXx0;O%fduOS(JF3U@vR(4@aFViq z4;Jj{WQ0ICdLz(U%$h1)Az36r@Ew9;W&NSbiaugTh_8*}XSt_u1`ie1H%*T_gp-P( zZS{`ZEFLl(^EpTIi`jFH9pVpP2l3AcMy&t-ze5+_U2Ey$U7`|n@jNWb%17S0cJiI@ zHvhO_P9C_UQ`6g*T~@mZ?6Bd(WsD$(#G%N0Mc6;=n?!pa*ZB1f^2ij-=_YmSu2AstkZgr(7P&qpnBc!)NcV@qI@DpP{Wn|c&8@%Q!p)xs+_!W*ZGI&}v-f-|j?!?Sv#o2}qK}z| zB`GXk@%PXD4?#3v-6UAP+G56^eM^5p)t^P!!qe7yRWt$8SF3emk8c79i%wy9{C?_8 z@f~U7GJHq+GnAN1z{(T+rt?pdM#YilU1&!YS$hi=k5n-(Q_#J&Rvd0#vZ)n!*q8_- zs2zz-S@qgR5#V(;CQ_BfZ;nz9VF#g2SmhbS_!V<}y{xh z&lzO%Y&AE!JiuzGe3SKsrPWX*;(os zgqcNooyS?@V#i0MPqFs;o*BISqyHeSagMoVJWseU6mH%Eo!<6MBxAR4r_f&XZ+#>X z){41=@Vjx(M~OQR%W$U=7yuiIpJuL-|E*) zxxm*fvZ}*$dRuqmfz!{AZYVA%Rc-v&d^gOtZ}q=C{=j(0`v3SeElhPStOja=L;RCT zAD59rn?52i6kU^;UMPY+eR1SHu0wg7pa{l!(Ye`W8dYuiWDGN)UNXGQGhQ;JC*B=0k4aN-O+u=3vrEQ1AZM8Ae zy3JcXz=AQWx+dBJP~q5jWRX``K{yL7gi5l^@!bVZjcJ5$*j7Hp+S4PWFF71fd5UX0L|yKw{n7(*HE|euDl!AB7PByFva76p`f(& z)$HfV>HTQw%ds0i6S0!hqAW-~SwZ1Q5?xGuN3uRF*5!lk$=_0O?PJgq8~1ig>HkJQ zc2Xxs+0&05MHrrE?WFGdKn~2?H{4q4GikKlVW%r_5dGMZ)Sjg7^7Lb)+x26?u-$_@ z{h0Jy;YdgQn8dvkqm`LR-rm6tr~AL>?F+Fuo$n+o&~!Eq^;Z<)BvyJfr#Egf*LQLP z{^?4$VtShb?LNAtl_=d5k4sXZ<$5LdtAmtaC)%b!%QV0I+SR|oOBEZJ*q^LK%P>zs z*0j>?93)D6dTMWTrfaSQwK@Ah!NlgQ7mf5iB>t(**=+r?IeV>r=dmlBoriCb+j;zz zc-KH*-G!8NYNKhy>OB#sFYY|V^1bi>3E#6iL>!7PKwo^=a(^kOf=D*uyS z%!!hpfar_XqZZRGRjq4gGOzW_H{BzRHQQ6;m$$d~9|mR1br-qze(voB(o-sLaN4mC ziP3g$HNV;|p&eV|g4)i_b3twAaFJoVnvvqPV;S+k5#w#gR$d2Ez74rbG;P|nW0UzX zDT6HvzIh20RDq^AuROP!otN3zPZX;oi}+T>u6D6Y6??B@r6@P^T;KjAs)eNhCr+dFM_=OC8wZEl|G&=~*%51r{U!fAK5bGm7 zO7tYFlkH77B!;;yZzTq1swo37Tug6&N2$4IyGV-O`q1hssjcne9KD7!x3>|d*m(So zV!qcp_ZwZgfgB?%w^mnm8ddpWbyerG%C*&1X=hX}udeDcvhtnks;(0%7gbkv8&f&2 zx+;A{g$B@s5Ckk*=a>-otF}4_rFry*p-8e2+wVD=6rvk#Yxzg z9AWh$!g*p#;Mwoe7jz-r5e4WEv#k>$R6SM+-4hPyduSJhG}$iZOOtIgLra^bgq|w5 zUAE1C8JN`OdCFlqiLb7~a!GCYWj%{5t*AV3361FiB8QuftK?-z`*dA8IcKJOk#o6 zZv(mYyWIQT?EUWM*L3!(dza=)O0c-4Gt&D}L9*UYwjZm%ajkoT>@tWkr@Wv;@C%R$ zaSmYq{SUq(1CjmV$diN@Ry+S_r}z6xQ^0XttM|kB*NvrF*5aTJPzeudfRWH#ak<59LIB+%>dv9@Ddw2(T*1R#b8_k(OUqxn8jt?B?Z z6!|>-MKG>g)T9iZ_`L3LS&gO$|{Ob)>}qA_lps*s{XM zpNGADDIl@_qvnFp9TyWH`JnymWb4+%8u0)eF@7JA%u}xL)heuQNArC1kc%o)lz1BO zdba@YG2k7bdny#13k2sXSLkRJ(nOBm#)L41F7}7#h?T?@FIDWBE_R1vWp*9Eh*&Xw ztg}ChpM(O;9OkktQkJdCavE9M`Jwbbk8^lyRXE_<7b*-~$H=`h>WJtG4LJ?#ytIV2am07h^54&J% zVs!*gVYc)drzTiRl4bHzC0gy$8wA49k?6*Dn03A77q~^PX5S-dYiKmTv$0L)@29rA zbr#2!uoV<5E3hWL+-b&t^NqIEd4hJxujF01#hh$=QgOM(hikfph_ zXBi(U6`_%I&X~=_aI({BsiRC*iA0qh=6M>Fq_c7I%_$Df+-HFEh=bFx3pl-i1FdyV z^7Fd>l6JjKvVLa9a63A`t{-K~=T}qyEx&5MmofG9GuAK5qbsq>iFEdcgj0ex4UHS` z!Dfhs<*U`~g2eIxRj)y?@WfDm(*_dxoCNPCl!jZH8FvxN>Sk>4pxT)u%$pD>lyiqA z6RBntu)3Ke%->wvH7*L}i~?}z)`}xc{xeoP6L3+eXB4pdnL|VDJgkBSa!e>f{3&z9 z&{&sE^Y4WUwDAz>$5#K6Zg%|Kn=c=`K$htO{GZI161rTkS>h&)@!y`TZgG4{_c`tU zT8MlvF>$1Ci4L^qA}_P~Z1Lz5%=_inWtTgNI;ziwWblqE#NbMR|OA0omvF6NDkuJNOPbrKe}~6fg74mi3i7#8JuWE zO~*{G0)E$IzB++|@JkufVmQnl4Iby?#xu(_0>P$0>u&?Cw`ZAa@UtQnje4d-m5_!9 zRgYVSWkr;*TTGx)N+1u7FB3H99+~gs>k%;#7$ut*Pc%uYQ&X;xBWgm6GGpm`Z2~F73 zz{+cw(^s@0BP?Bovh8~T9ja~L&4N4K{Mo_lk$^}0`lx*~e+sii?aO!V3vz35xE8ns zmHl2+_TcgBTAQbtZmdN1x+oq$O#O)(QqiJ_ikF<-AV_iEWJkgbQ}&;OuEfBYMus?k z7%@NHpGoJUX&U4gX*pqeaL`SfHQm*|DIDR>BDH@^7`_C{3Psk!uN1eHIIDP=PXNZ# zhm+%Tw!=h*YqYR{49d!U)U9Hp&azGNjFhefLz3wc1|s zcIHql_Qccefh?>0D-E=+o}*_{oX{@CnH|E} z6|_ZoZ$5hZ9KE_?(_738;_ZG)IO@P?{Rxg*ah9E{6*=bN>~*a;%Mb?SxIm-lFBXaK z$EXu#*U~w@2Vvb*6MtI>K_8i)LLW7SKcTtYAoNiMur}?heSh|jv}4=t!7L+5 zvKRNHAFHBIH_L`N@#iTzz%aDF!7$7u{8pwS7>1YZFf8=!uI~b2MLHNkaSu*8=!g{9 z#q&YdlAvC4<=8;!d|R zgy~xU57!E@gR{#S10b;&p<~}{?~m%-!wdo*FznOH*xXG9t{M7Mcxk{>i_Nh^A9?3K<9^w7ijtBKr!L3 z2^`FzCE)nqD3UTvXWOi6Jb`gln>>vo);dm-Y|ws+`srnAS>=&}nGg*@pXl^xj@tde6NrNzEdWZf#WT93ZyubhQyZ-)}{tk8heR2-{tp^VW^mi;g z@gV(uc|co#)6LO*1S8kDha{WZ`l~h8bfXNQM|8*ULQ_|~ZGXJ%O z@#g<_^U}>?!_0r{L+ffg|E0%F@Brq&={sC4DbRXTQDUdeP+m~x<7i*!g%@Ft?+s>v-?Cdz&?J4a+cN=|3Y1{3Zk97{E8J!iZ*^db; z$MUzHEkw8zCp0`W$-~L}+~P>36C@G~g3~V-N47V=FMjps{+0~3Jq{UE+7|XVe}fEW zo^Qz@Sw1O&GsLxkCv`b-zTLw%nfo9@4|d6bsLvidz!v~aizXl^$OC>!%C~EN>9dXRVSfBQy3XIrN^NwSOm}GYS6Ig&zEg9{fuWfIp%g{%!vU z`1d5>U+|(dR88iKQ61aALO`9rpkx0J@PCY04KplSeD(QdJ{=|IQHpp>0Z@yIi^}zYE zaNJMk%kueNk7NIEJ-$HICe4?Y%k}N%%ShX#|8~BVk3HCYu`7rv?AX3Fe>t#yr~I^i zxrz2&_pZa(lh=1_-z7=yTd1`Eem*ZBlia?);XI z0gsi8+I=Eg)q~wqM9;KpwkODnOo#CK=p8)gl@W@37>wS?q07P?Nl~R%q1R%H&XP{H za+?^*hh}IW%R^`U0UjC$0HW0Q8CWP>*Oz!MT6|9&>u2nktClA8uxYSeyQEr`V4&@N zNdY_|*whG@wYszM>!moaSe@YivysVLo15C?LpjiF-yL$EbvaFc>+#905Sm?!U{%ox zqr%bWs@1UQThsV4$39HMqHj!Bxc*fJBKn4;$@-hq#7sXoSB!@EJjppDIx%z3EjD4N z>0f3OtX7JIoH-R}$LKN04 z^hA3r4_htL4$`GKe(tf!$%CG9mfXU;Y+p~xk)cW;N6(Ay=n zcWA1 zCzDq@r6uSQ354V!TF1M_oyM5I$zP@SoSTLEamM8&VN6HYig%X+g!A@?+5Jxou4st7qmB0rDo#i0;@+We)><40mQY<8k-=czm$*p_&R>uf zh%67LE-&`YnjeUKaZxOd))2phN*4!Hmnr_D*ogxGlD8o^{~fr?y2wgF3#Z!39`~T; z0yQI;$D>9S+0%hZffcsN01wB~%1JIM&RYm(ZM}`u`(-e7H}Kz~(qIvd$y-1L)Vnfd z+w;yPu^vIX9?n}EoWCrC*17z&r?($)C0rA_Y1JD{E=^H{n?CyKr!kXG9N$T-i*WFIdcKV7;sZ%5WZThU~;%KzYmrW(1=p z=>qU2Io}5%ye~Q}UHmUPot@^-RBgF246Aj#!!8 z??+ZZ6X8@_-{S%vrWnAhX$HWB944f!BbntZBJT%RG^!8O5sr1gGZ>v+?OGu(dEvbG z15hKZEx?u2)NiS6RZ-+!8X|IXvxDJYqIjm*r4U#+ZZeb$=$@vv zDV(>ZF!HWt6Dy!uXmM3A`uH^J;}KMN#--utv}rV=IB!J=1QbP0ZbVX%Krc7BNrY zqLDqJRCx5uqFc%>927e{Pz16gFAIUeyk&*VsufuKzN`U{tOd%lP$~$n$kve(&eX(y zmT5u;BI4eQi(_fOg#p2-mv{_FW1hN#G)B66C>RNrvn~{}Akb-Y!GeO3Y5UbnIt0LS zK6hL4vK#>dT*`j`-43jyQCmL zaula0GY~6~9}2sqj0yN!(mG=g+r5-8s|R%J*bd$5FkV++1?V~LFODp-n{Nbj?aXu_+{gTR5;f?Qrdm;) z7vW_i|Jxg+0N4S2nycTjhf26dVu8&fQYT4%O$(hpVKr_~mdqm`C$d@N7nd1mei@OM zC9*r?acfs@Iz6&c2Dufd%1jY$|AqI`kh>SDWrgjI3DG91VJY=~{&;%0Ni>;~m5q5T z-Ju2$%)@us$bj#W#^#sX<@qH47tSo7qrE}_#E`J^sGr`MY%I(!O2fQaE|DUuF!DBc z;*ZHHLmMiPjdkK?&*gMPs5XJE_r~c$Bkv0>IpF-QHDPUM`w#Nk@7!*tsJZSVXbQCE z+Fk!X4@%!C+)rTC*@K7<0y`fwwk8d-iaU z8MoPHC?&Le%ygHT1427Ch|PuB>2v&4rmkx&z07>gNPJmi*O%Q_yVYw05vG_kSsIL| zXgUMe<@ha7(}EIuVV12~G2Bop*d3^8^;h2W|8wo{vvkzw^ zdh9JHcr8D&AUA#o*%Rjv(g&rbBLxg?+Y<9Mg{)V2mx7r$><}FhPYy?i;@{_q>=MRO z4#4McK9oriieZUCBUpF>(c&RB-=zBPZ3Qni-*oof`y_$FSm^tLSYb-*TMP)O+45tc zW`37QV__;TV+CgWp&=F(poLS{UL5Pk6kVUh4(xt7?N~@De5`yy$!^roc(w$0v$5Xn z>lxfFOQXrhW$5Q@E-f!mmiPJBn8*;k`&+yE{ToL~1+lcu!oKfRbdRiy-_D51q$8!K zDODH8OS&Kr{1{*#T=RJ<@+-Tc`CDn$$^+Z;ll^_T@9xSSg{h5w-=BCmz?v5%z|Cn* zX@v~ABJt%I-_0M4DfE?ZOkpTe2u&!VL#8@dv$L9*Ni!4`eA(ACEt}6C`V(wWT#Nqr zm-Ah|IpAwtIgQZPB41-%ft`@th)?-5?lZnr!Gy2Kw4OAg`P$B(abJ_xT|YQ^2UCX*RCa%sUa#fbEag_#fllSqV9a?|_c-$u>Y~c4p+bRlfb_o_BBdzkPZI!Rl zmfKFuY9M|pAkE~Zpw|`kQ7yF%v z{(n_&$nPo_SdoPtOj=@F;Q?E0fi-%-KBvrDRkTJG?V2VGih4v~>Xs#Vh6KuT(SQPl zV+CA;iw=7njh#T<6Er0XeWeSCf*eOIA`03o^p(L!M!d}z#?k7MZO=kq<5wCF$Zf#fbTazzXGL#3rZ%Vk34cl&^4R3;3W*&bN1?vMG%sd zTN^hlbNXdVF3RapJgDNt_EGUaM4YsAv+|mCRU5GdLr9X`dH?XO?nAQC6g~pc%8Ed= zXjCXVr7XyT$~nv_b9@qjV#mBam1CF3FF|a(dy!W1q^;ka?k>wy%JR%8j_x<&zF!YC zRAg6JiOjrplWm2sPA2S1t5+jrMfyx4WjHAzWE?boLdpa zy3=kuMRIE}zV9A1Nu+`SP-G->tsdk4R5yKvK|? zH^I6T6KT9;!U2iXOEd=}6VSQaI$WiRnm(takoIJ%YUDD~0hOsu9cn1Fqk0hdHI1o7 z=T#2z-J`dfm_&9m8UK}BalLzyu#z+{k{~7p6X!d@XphdJNRKp{pYAn(SG*rk6Y})I z(kHj42ZrY1D~rI*h1qG$shij74-Zfv-m?<`KU6!$cfD1eXL^OMpHHM{RE?x)Q8|}AQRUTU zml6>zs-VC^{-Fn}%`PKKdCT=%H3L_gCTkbW_+LXGm zF!htj`oh?t*1*0!7sd)tXsufr@D*`#^mY+mHfk<~F{)dr>C$|UHbAZ?@2*=(=L@*| zjAvRJ!)DH3%ZBDPvT8G^?r0BOQV15&ey>oLEZ=K|*{J_HO5@HzQDjq1Ln_f+j4*{L zPa}((r?l_KW0f?#A+jE70vdBeSrpk7h}Gkmo@1d74L?pZ^qu`>9*rcXtaitvIXU32}v*?hG1_4N)k*%QnZKVms=qeMX+6 zJievHtHi4c9)?Q-Re`@4uL`hfe%OS+E}T$o^;C18@vR!tttLSC2T}raA$xp70a^5f zy@>C%OVXo5)1tq{cr(MCivY?(RAY@)JFc(mHDJ^!vj|_Ulwgu8%UNFMFvn!_65*tB zFO1aM*;IFdJ4JtG#n{Tj$c&CIi+qgI%Dm6eXY=jXH^zxrv5Y9MWtsj;v3(S)Krj&~ zNd$5dfs8~TGZBCpN_v}|J**g4)lN?dEACojM)W(zcb~gI-4GgCSjWMIY29od>amfx zu)dl%n{o(~FW-V+^jQBqU2l8j7@2i%X*cD0=ARx>k2Fq+86ZC=k&weEV0FhidM` zJJauUOGP#+X9c3SXU^FR*U=f`FxtGR0_pa#Lhd{@4YU~1DbFxO9E%lQ(S@&Z{T@dr z>&(=*+^yX6sYZ;X46oJV2)?=#Xqj$6D>f*jx7)0LK40z8WTkd%A#*CV=gc{lQKjNR zs`w;VaTbWsMQArRG(Ol~ah5s6t93D??P{&r-_3XLVLJIq)E{;AV|T^$u@8G$4vULG zU+r|t(FALYqbBs3vk?T)gvAqS!k-Il-*det^wF=KgzZhpHTTYQ9WQEYLZV{R)pi_i zF2`{4`SM8YEMu-xBBXu z$wMbPfrNLlo-^-ub4XZ4yughG;fv+X-fKi{B=7G=+Z-Kx8f88Tg zrxxaP1hEvZ7{AkksMUBT;OtodKK&k?pa%!is2lCU$><2DPH=SR+iOSanRF$^E1$0N zTG0Zw@FyLMUZkS?EO%x+yz);Cr2dAk4i$?@R6pdu@;I-4ZpS5Kx{HAPOZi};mM`RO zbRH+N)GNhW2BAPnBF1k6Z~(hT`GXN|YPP!9qsz=5oKQ*J>I6`+4n3-SZxAAZZD4x8 zvEo#1tl=n|%wjL=I#v>8RWZHFK+dp?Dv@_=&KC1mFXu~1ITw<%KU^opci%o&Xqe`+ z<$t{OKuI&!D|VY#%*)=5xvaX*cXN7(?m+*_mXIpp*IuE3SI9D<%Uo8LRnV#4p6qJq z;$`lk%tNxvbPW(EG4!BRS;Y>0wXcJFmwoMD9dbV9rnf^5B9ut1X8+N?+9&~Y$`SVD zFnj|ihr{U?^qoEd?$OI<|b6e-PCNfxh znD!0DRNti;_%cE3ru%U?NpWOHN0Rt*KP2%aS=>4WygPY+)0OUwuY+6L0gWXn0`mj( zeviQX9icrfXqQ@O)gl{j%61Ji-!ju2oo0Dp`T%CQ2L`*dWIDY@U=Fol+ zc!0v=PXu4_vE(vay@U}ip|cV$R>Bf5;R=_qa~uizN_g2z7~~RGDB(mUJmw`VbP2PS z&{+w0c?o`(@T3xU?jvC|3A`C{#ZA1@+zQdtvg=6{wcl{~#@0E|YwNsnN+B4;jydl1 zgsgD*k@CVZHKRUVL(VmgU47e^>clD?|EH?x@;o!&Z@1f2LPO#8r_+{Dn1TS&gYY%=UMT8gr^^ z%w=98(18Rj=YkZg4?tpFuMC>?)tF9|>M5~^Inc}lof38}Wu zW8N9d40*@4vj6rQY2_iRkna@hLc${Wva&>lFEV}NH&dL>`Rj{pQ}bu3*gbu0=lm2D z8tk$hFC-_Ec(|6}600Y@kK~$3>1n>Y9MbeAODOu*<3!evvcS%`9$=gYn_pXa_bEyL z*~>WfV=d0*Ucz)5OnniXZUKMrwHoE@uOA()F?wq{NT@tuj{KR%mykKiLHJ^rMM?@70{Pge2!UGeqfDE=K_MSdyPd!eoU zfxjkd|Er3Zs`#s}_|H}RQCIwrDn7TZcv+(M^*k@{E`467;wP(kr7QmND2hMfieIJT zQ&imcy{&lWK%PzN3ow(V;#*N3nsZ$7sVY9(6+c16&sXtu^3H2c)PCRSMD1Ik^Y~1P zC#mJ8vp>t!CM(_Cims4dS!S}uxBOYL`*L>P&JpiY-6%unwpcB?`FL5;RQ`;m|L#SK zNnD1LUr0hDD9hKy^o0w>2%@z!Nhso( z_#!=*^e7(zo+=IZ-Hc-*Rt^b)UywOa^F3lh6SJf!GB%yt_@i*Ql%db)*kL51!@FMD zqCKcWsJ{c#$yG|+C|~0u&gHYS`MsXFQN(3ha~nR&%oaSjc^8#$4nw`%b4h^r^76#4{q1 zf0;49yVyCK6kNk`_E7PztwE+^4_>cHGuJwcnwL%`reDEUME)No0Ie{rQ9;$rM>g>c z$1psPN|_nPKrb^8ojPRBIYN($Vnbs7dg*5L)5QLkSR&?0XbeVp5jxUn?k17$Y2#XZ zE&{(rUy*h*(V^vX3$~QDV*q@1-pXQLv(YIBwvCYmAfN|e5C=abE*Jgx5RK7PatEWm zc_D6dv22!xWM|=K5~9}SPr&3fpD2Al`uz|_2zW(HXWN_^;5n$8$1MpB7*-hhj_+Ij zD0A}m_C&p#hLu#m<>t9%pIX^<4Eci5?%C3(_8Nd#*>67Y6}z;Hl-5+FhH0UehBAKt z5VWTAw`UbgyBdmGhYP_&FeA->`*S8EMxpY6x)rNTixS*)nDI+LC85Y7qwW&;loc0c zhLeMg98!}CBj4b22sf3%*oljqvz>g$UCtCU)wYv6o{4tQ$zb1R?sAigP1PoVGo4p4 z)K(8)?($lP0@G$2EGQ%5P(x_vkOyN!A4d-2-D($-a#-A-kovAk|c#UME65QGsN$FSV|hNF{&KDAI<&3Iu1uT`yP)~6~l za7X~9a)2ApTkVlS%@1jn960F6>-O?n=Q3H9_vj7mB#xEbGAG4iV!?1)c(%jDUq{fw z`Lx`lXH&Q2Q#+)d3*=*-d8`V8Yp|%{>8LBZ(B3BP2*wMTHiz@Jff>m8YQUP?91?sN z^Vm`{QcqI3hbU)feS9c0Fc4`f>U9?y$z3{1fR%i0S=Lm@FBm;htSA`ky%5{R=3dSp z0({{1cQnr{dM5Zlz+-qt=S>;ntI^|k9z$40H(&@{SK1Wc2?^uvhkf$i3Y1hsGj(uk zm!9<(duP-iXas7ema;hOJqb{oleDVX%&cU7^IW39^ArGPmS7$O%p5H;5v3Yz0`Ip2 zIVWnp$yp0c3LX?(k3@lE95{cXNk}d`%-&+J zN&CRP?T3V#LXx!F`T?v%{gg`>oi*fOo^lRb!#b1-WA35n2^>WADk#)rptSRBL^<(T>xYwNATYMLmJJyTHAR>Mf>MiZ~q^ULY&fAL9l|W=_ zX8a*^h*Dl^6K0-O{N6z1_CE1LwMH=5@OS~&^Ju227m#cEWg})?$fhKI60^^{28$GP z{FBM|UGXpcmyX{bJkjyH=bw|mrMPIKl7u7FPy};idwEpv#e=R~u*KmfY9sy8&|`!G zwIuuvuNV0>rDZEyF!EjAXUVQinaRx|(Xl*rHjuO5xXRwBpQY2hzaAaf_j?Z2MOs{K zqL0+OU`&W)c{kY+@klfs-TK|+t9=eYcfHhaV&xWM2BxBptXbBZ(Ih#jp+u!nfF{v^;--PB0KbHO(ru>ARt=v$Cvj3?*N+|g^Aas}g z-$&wic;s%P9^9ZbhTY8P?MUTWLWHjIqMQOqFMv?OmYzk5`BTP+NMP7*H=3z`cO~@b zj1*xP)=WuH!}|$(9b!1a^3~o!g*88R^40DkMn?iSDsL=*@VB=Ew#D@GKnx+;wO@K` zlyuRF8mfxJd6ywaPFd?7P(jFB4+>;yu;dr;B=VIf@=db&CXp}HRAjTb9q6}YPVi%I z?4r{dJO7s&J73)}NLhzEbuxuzj~^dMgm>QJ@huh+-`B^Oq>E?;&UEBoP+5CGsAG+VgSP#_A_b}8CpCJRS z7IW!yE-UX3w#G+Er?TlA+owsYOXf({SEgCwVy{=M9u9~fsl2ba*nWzAm%Q}<`7hLe z+KU`=H&F?Jtn9}P=)c5=V)@71sjK`gX7#hK@+Uxce1}D9HAUS0jD%mGj9~NvbNby} zyogrXbte#xjU@8&bPjgJm+v~x?mv%W-|D^Mk+?sg)Ras+Rm|)ooFCfFz}LbiJ#6oq zspw>C`_mt(Si76S_t^&3>U}<_x_ixjc9PpEA+_`g{v)N;2%h_yI zPjTrfnL3Oa)Q9(M$gDtE$MF_9DG3x@FEWvu@rV<*9mYAFpE-)m{v zHD**l-|ak=k#zXm#;+=}c?1&q^)tIL{X+aE3$*;1c8T9)byzTPp*V))T0JDWt#YQ6 zCushR&U0!OO-kY#ZTu+&@oMq=Y&qMS)?Ky^)+fi)p7iQSPlD>J3qeoKPbasJ@+a^* zt9i?o_to8Q30Cq!U7-b`HLk5)zPfIt$FJiL`XLMnQqk@g@}+R6JA8G0yl`jA_a?07 z=q#zuYffhTSe3PWEYbd@|6&2Sz^i{BgBToX4}sEr4;|u)E#ib=OinDAD)eBRT4tAs z$)YZ2V^OW~NWeSye&DqabhJ4-w zlmSO2^O+ADzZMfu9Nn`5tc@i2d$p#RCS>wRd3ZK84&JW8z`G523I2Ygi(jqyyA|*F zyBX}_=PJG*@$o9*4F8WV{%OSzbnTkmK)VWTy8^S(MA5%3H0+Z_Z0YXe({0GMY9cqp zuK|qNyT^9!Isq9c;3pC5))gzif$_iX&F$y0FfWnorK1?0lAV@ZPfSdS8B}Y1p(jm=Bxfm= zPjPKYe0@EVGgvN9%m?v35AKj#AmjaU3wMzxrbR5+6H(Q)`CZ|-nGQG48Z*6mO6q7l z)KBSjN97~cQ#z;cZn;OTqrKK-#wS_ixcTnYbJEMSf4Z#)d4=?La<%VwMTRf(t3He_ z_VV~d&|y-je$p=kRzNL^V=X^9kiE_Fp}6yyrppL)NYrEZ|8qFVv-Iw zyIBHFve!wg4X18y-R$J8jk|6CDkw7VD%J_`KI~2U_X&;cAlH3dm+0R#O+ESFnsk8r zoAu6T~)%w+3uupJsLEk46j9B~*N)wn3^q zrr8&%!e74$9XTuLDTc;w|GA_J60KOlwyVGoCP<#>Hye1+T>#`NT>x?&fRcLaf+m)~ zbq4^R@c`sn0K))K;sGczfAjzx;sN0JwYC+yMm#E`C8cxZg9d!Wj(JR=uF7(4>0?2a z0jkskRcbD_pzyf+cKl5sFpq^V>5tFe?pU|%)e`)nl(2oApaYUlCpNy;mImKQ_NiET z{F`s>qq|8{%J@5hsW zhL>Oa6OXrCW3%^Wd2D+!md8dV(-xA6{-`}HkEilQP^%*kmn*2n(Psg<#Zk;p6=%l3 zN#1{W8`6rQ*viyxB1KSmL%@3|MF;ENLn&z--+K?GbYYvLhf>Jfm1^`lz51u+PjC9F znvD4GRSoO+)K28CbGbWXh@*#uiPeGs1h1eD*yk~5D#!tQQdeI>G>KnHwuC(7;rFQR z@U!x54!=1b7}>?R^) zu|FzygC+d_r+*5u_5Yly*il;D$;6GzkBCWeh5o2Qjo=}krP!UjYy)Z(TdWG?P{6Eq zu{SC9LdAY14emS_J5;d}BI6$`_IVc@P^?@f#1|9mt@}DZ+b0ootuAGAFEsIFnAJTa z#&8h_Rfu^t)$UOqtff5fzFF4=V4OL#Z%+_|*I>>1)?j~aQtg?N?>=oJBmvdx@jUZ& zd=uL$c{=pfO5(Ndyg8LY)5%Rtj)*X}Fb$t@WJ7D>_C#htlhljSAP@@?;{D6+2?Y58>Yk?aO#)&Ygi ziF$sCTbkTpU%W;Pcflt8Q~wK#RV4r2PE67t<6c!kr(XI~Jg`62bT)96j! z5^OrTH{N2t-Ksh(&apQgxVO<_p5Ja`Sm1}~a!>^-31WY5W3gj~O|{cgUc)>;z>&!5 zV7i%-qgT3GOg?RvE~EJnZ`@eQ?p~xZN(dR8XId;K@oMQutVV+cD?$IBODxY-8m&2t zrw%g;qpw#3%f4eNy}q`w!ZgCnVd*;&gKY7jQxj$w-yW}-EZ)w3uFZxlD!A%sMbiGndKHrgpxQ)w3)VekeT+8vO zw?E=~*U*e`Y%I#Y9@+5|G#2fH0e=*t%xT}n6aH;as=rzF#`3S;f`3{KfH~xNy26Ne z4n{JsPClI${v{tUx$1e|0hfHm?omFuJy@EzMAxs&h}XE4>e-#FV5DER_cq@q-L6^| z)LO_Z9MM;^8^~GDoQAMBnW78q_VZ+gkH5%sgDqHz9@^t=)*EZ`tX!SXx1g4BUgvGw z{${ts6?22kff;IsTgmTt(a)&RKQZm3{y#!(wBUI%*~5R5f;DsPcS_J#!~-^@aI&eZ zAqtvDEexJB&=SlJFjK&`oF`zu+Mpu&zT5V}SF7!q%&?JOxJb?Wa*Nd%-tu$5Oib@| zj}^j%VO>{UY2Qq=@{p6iyvOhKkco6Nt3d2}4b9Ep#Ho_=|AUw-JAOf@MdkU3FLZQW zh@r?ZW4rF;G{kYMUZ6ansi%|X5L%bYf2py$FX0a{p;70z*e59lUmj@1I8T3YWL|** zGg+|E#Gu&hwJXe`+;}B@we1cOPY%SJ5V}+ug)#WBG{u+5hMSuQuo`^^70OY_uMh=f z8%&5s2swoMn5S><$^cr2>3-Agd%d3Fd$0?&@iKzFK6xHI(H>PFO2Fjj>wwW|Y5Nl4 zd9G+O;|pEUY$Ag(cVAD5jF`QD6EyYbxE$_{PVAWqI3cpb2ft_u46)SAunZA4_~#c( zFVP9`F!=;46&EZs+gQYyk+~v>YY{UjS`5J#f9HU!O*})1W#|)w7~T$>pT^KkZahao-=&16aU31>l%z?kQU>6OBu+>hV$PHS521 zm98ZkF?>#eq;V{5<9FK8ss=O_cKMs)S!>|ltcdYh03S15s*}tMIam3kg~|D+Yw4?G zo;S;_{JCmrfm+&8@3=e8%0EJt(ulz{f?w8FQ})fq)*G}$=B`VK7+Ky6T?rOQXr`qPr&OOuEEggFP!aa` z)|-&8_FkbclA|jhI}o~;RiZ+RB_00F|%?EGokXgJXOP+xXql^wjp!V`~$Sq(x+Hb0cJZkiwI#)Pwdw zBpf}>ocFcsnr`{xLbGCHa@S-B_p_v~HLL#-W@%+kFc#!r3E?SO=Cv-)d(S^fCy_(1 zDH#2tevJ*zHGlLHC4Z0@B+*Y|kVLw014s)pG1Kq z31YE}XqO;fw-E#p zq$R$d-LtLwFd<)em_I+3x%sp9%MSC$_dzm|Y5x2hZ2yP(^WzqL#m4eeKVtrzKmC6@ ze|FK%|Iz$eh3#bW{Q1oh|6%?l^M{kX{_XvuL;ucNe_;RCXhaXrAN;4@ss5e(A^p4d zq5p0Fy8lo6w+A!Frc9r!3 z`C^|r727k=z9|&DE5oGI#>C?L0E<~DdYh~R@Y^h&qo*!$(2meC0KNFleRR9NHlGxo z_|&Emzsll&+xMV!TUx3<+vAoxsTac| zrE>&Eq1@EH3t)1{{VX#a8+9|Eyu?u6to>3e5(^QFlI|>_`{s5JbPs>>#FC7X057TG z4E_oR@6WtG$T}4?{Rg)%P_-Xhbpo=JeGGcA3=1+O7i38;K*$>+Iq_pN?hEYn{BR}~ zDy_6;(g|Bzue~msmL1navW`zV8SLV6WA6W@zct7LF3CkXa#G*wWP6KPm(bMYZ)r$n&u}pN3yevzSkz4DB5L#= zc>YGMaE2D!0&kAstGNgwaPmsOn<{%*9aNz2+m$C(;)*X#s8f%D(ORpDffXN{0E> z%qA>?xh%O3$rp=i?M|HC(;F|7r+%#p#qzHa{KpRhKT@M?39t=>W&TnWjNOjoR|F+6OvaR`r&CB`!I!o_!e+zxys;GB#<5K{V6BipUQR|wzN6=iYOG7;HAOnE0!=(rM(l3J}kn-T&iMTFdDU#g%#_+ z!qJ)r;(2PW;#u{zNP9fGXMXi{rEvo@{pFO2C8#@88;zET%EVXYUAReeVyPI z33~-(tk@a%a+0mKhojHUP*Fs!g#oy$xaggGz*+Pa+n~r!=u*v`6XK6~$WDY;8dSt4 zsiku+Qc{JIa166tAEzCyO93-y5Effa-t+1h`8)N+{CbC#l-Yfqv5y06`>xenDy~i7 zF)&;-sUbUX~F@{pHk|gp+tdr-Q$* zkhGs+zdUOO#Z0&DPTXH97_n0qzm<$GITzmES(Pr7nxgi8h(T6P;mGqUECodmlTW9@ z;!P2>sCI=s!G6Xnp_vx*tlLl2SycjSZ}bHfHM1_D6v<;r_Ap@yK{`%H7iMx=8zx+A zJ4uWn$dO7YJfj#^{K^!qjD-H)yM z3B?w|4&z?}DoNHmSTGptGUxVWc@O!o!?);LD!stvb_s#Zp>K|mxaO4*1P~J{ZuAT{ zMj{oUVY+4B9Xw8hT##fWQPHbq!Na^hBGp*`;4dWqf+y?`IG^$C2ksh^SZ8v?uao2| z*?S;2+5R;@l_X54{p!Eoiow3?NYG%tMKPyv{NY%S^9me{y=q;h@%k3l12o=OTTSj_ z>57>!x5FAP%(F%VkGyaPGv|ym9+b_OU-n+u4~*=0)a^wWxUf;HO9`gp>m$Kmz4i7~ z8gI&*EW)sFnQJTK_%jppoN(l6`)Sufsi-~w9Icg4A@`bdhe-n1l@2rJjA%)TTg_^% z7vLaTdq@9|*gIH3P7U_cZu9TmZ3|uP93s&7U@+NQaXKER`AjiA`iraO$9ijpY%+f+ z)N5|O+QYl*-J4N%{fN%Z-mIb&J6Ez-AG65`MbL_K=%)Q=9|mm9cNhytOES%aC)rW1 ztFU0wRZ|c!%k>+>PFQA)_upeBt6wQWZ6yI1m`C1X6F3lOwA$7uI zsk)!e4AGG_$KDHEu=5$dy4Mxtv_Gxicwg-;w51VqR;rvq|p@kkHA?&@ZTW8Vnk3kSarCXgD%*46#gk(P>1EeCMdXaQ^@D@ z-bm{+d60c|bJ)?vk0Q6FC;CP1uZdIP-IV3?2(Pd{I~Ja-!fW`GB;QE^lIHd9MGug1 zfG)H0_tV+>>LR>Aik#x|&%yjo$iLT1{$1oo zbhcOQao3WQ>4A#rvtvsxAY=S-{+cLv79yPYT9mIbA_j>@N*Pyo^NKlsPT%r#=$EWycd9%uuA-f z*^OtPCpy@dT_mVo1hv$G=qV5b0b$>U433;@5slj2YVgImXOL*Vyvy>Q+IQ4{c#9?) zyajo3Vu?A%OMJ;ow5JU)Hr&ZgEHz`VbVVQXQZ>!Q_ISL8^E8%8KM^VTH+0#`$i{ZU zA1m2iv$dt-h{ytdYQE)K#l@s(A42uwAA+G8%1jrp=ow@PM@PC>Z0$1hbJbZ>g)L0& zQG#1A3Ng2oTNSy%ClGN{ai(L^??gz7VU#iFP&G8NeGiAnJIs+& zU36JewA!!j?3%uozd!gAH+xjSy|uv=4*BldVIJ#aQ{9&60kX8u2Q3_C$2oSfIK13zGq^c*k!Po$fwC6?|+oz5WJdn&R1 zWrwoQta-=EL{bSQHeb2Rpp0e;G4D-*E7x7+UL{j}koeC53)8@(z?c@Mud#_>eXEnC zk68m_lM=sP)qlU(R{wTSz${d38eq(J7duO_%M|;$=yAD={i9<4tl0I6t#`3Cik+_5 z1;jEJyD*c_+^@l%YhBo;RNgEuB+82)OT4+;6}&+OpSHx>|K>yJd4!&^f0+WTM9rtDLa;<38?PLzKs3Z_(t>%p$JIUnUfC)2CFwSYagOorHaW^?09nlUeow z!nwJaiew+aMQfIIMR6Z7X=T^>u3nNiMc4;$laX3i7e_~D*qM?FTeRAGT_7)t7LSrE zfVvwkv)o|@pRKFHi|m$%Qv#IsMZ?tUi{&FAWO_7doVy%Ouja{A3cfS{GB>KAMfH>d^s^*97ddN{D45vE)Q?!)4s!qqcTn?~$UCm;; zwpj+G?A3*MX>gI;F5`rOgGSCOFCW%en=LL(V=FT`rYxa{#1{o=E?W`I7x?fi;3r^B z8*&J+YqHi3MJU18_77C+lM zYTlyK)n0-g87l7km6U@eSlsCR17Fyyb<4K6=XN|$=7du}HTS@_RqCQ#m~G#WeD{2V zNLUC4O7pO9Br>jRMxmN1Soj9`;rh_IrvD<#zV>D_#Rphg>wkI|cu3LPmd28=!G8&b z$7|pKPT$tqm7J@R_J(h)|L!zO9_C6)<(HTUvsE%=OKMvAi#bG>Hwliu^OvXH$-H{R zVuaQQBTqPrfhj%24>E(g&cBYtMO!?U7KA^Kt@c<`Bg##za}*4r^PU2c-0p3 z;n7=?O^4zVl$2mpeCMw%B|P+dKA1Tt(5b{MW^XI9407s)0ud%;VkszO81kTQSk9@m z6KuPAeGgaAuVyvI9(Cgai{VF30Z(Cv;l-W7(4Z_AXVskVZF_2{!`_Fy@(f35Jn1SG?O%~ z#`EB#ol%jcx;QaRx;3U}X|pfEpCblGT?fppoHN^J*4^r&ZR59^R>fW$Z?n-lFl1_E ziA;avrPw=V9VXoIUdr*5A)yQr#!k4>wh6ZnYF5v+RCSziA9*Q4o){1e{HGIcwwFoV zMQzo|sGV>=ujVI7ILL&vWAnc>t=%u%no`L>}q^NqTO=}ht-UC7X+8y~+{V>VrM zAv;+42gx)a|NBt!fh;vTGyXY}5@RzbwS8XumVC;ft42yRQ@tgI@kkY#$tM{aJo&My`tM3p2EUc zOW4XH(rq5vqE*l7HtnfQgvD!0#=#{M6Yj<6MhZ}VKyNw^VLep-EcOrRBL-)gJGWT9 z^KB%sE+*Lxjc^IqkPsxnpV)Djpi97w`vEpXXSsx4GWZEZFE6u3KSi05!Gu_di%Mxp zX|RJnP`c1Q&|Li^>aTlezRxatNUn}bP$2=FOP|$5zzux=)`Y&=4gBG!ic=P!| z27Z-`>^SiAT;wpQp`>l#|E@?k@TjicnA`EUZRXKDj|4gr03G{}G!Va{d9ybU79LEg znH0zT`et-T{br=Yx9}l861c+YH>EH4G@Kb7G@MnQhI1kYXjaLY-{VJ=oX5KP*inDU z2F%%!y!nb%*?I49zdzTm1$|CpEtssqi1q*Q=d1bvKSGn@i#2$I_e4A90 zWDD)|eCS69gkn?D&7m9Op7{mL?l3Xk{qJGnIdZqwh^4#|2<3LT)~lmxRGy9=+Vq}J zxPHjD0@J2$Q&lVH857dQ6{I~3N6*rk*-PuCx##MBv?>$*{G6-kg;^|mi%!fXGDneD zEAka0b*3DS^g>IX&Od3?ahTij{cFKDw=ZqmKb%xwXc3d&nHId&N06>$uqBBf)Lz@t z^J8eGoP9z_mm?BSsjK0<3xX_akF@P+b_I({IC`dzH|;&1q(w3Bv%tL3syw0BZoXv9 z^nN2N`=PrlN|kTfRtooFWu4ygyhxhA5!FUX{;DU2z> zECtPxW1MjLu8;r!1OfyFHYjMkQ;lt?M-vr=3YthF8(B0JR8&+D1XNVijiMk1b|Y-# zD)p)r&uS~JTJeUcNVpXb1P>GyM1}VfQM>>}<^O!m`?JXgu=e-;w-3o@=lz~}-}9cC z_q^vlqpU3g3b!t(yDC2C9pjt>nG-#1@nvXo>Hc%mX4#tgbZ^$o=~hnf>3g$g9;}yL zDdX+>drwZUnegmj&GcwNutrt0u`DAXe61oc=vS***8uO?5UQ;bM3**0wHA1}b^~&1 z;-{4OYq~zc&~JDLZ@1NtdmCRq>E1!1`f#~|=cd{M@$0Gi{_jj{$G&PuKMG78iS*@O z^w73~9wq30fTOdqPd`oH+}nQfm>!?Vu|N2W{1#E=O$}s;`vCUnV?|utUW5u690`BwIvC%ToH~?@ReL^=b zyyP+zEP-{d=UbL}ua+BQAU`Q1nId(ExUZJ)q+2?;opj4)su=VM{h@BLKCx$Q{Npx= zu!p#%pMtyHKAW~*;C!e{&dv85?xYXgO^a1k*)LXNzYwTA?VM}QJ+fce{f2|l0?ZXK z`j)OZV7@=gu+)(^3Z2G!TkgwlfKEaOe4Ze1Rpo|Rt5&a5uTcOzQ0#>3I z#^2P)Afo1$C-yCL&o5H2r9(rtlK@x7e#);NAC7J9$~%_FW~spHODx;B7q3j0kCnu~ zVquIZxJ$*pWBFeAi_b?Z$II6cF#tWD_A&^TVb>ejoG86ub}0qA$TuGw-QXdCEceJW zwocyKgSlTPj+X4b1$R{U)U&29W%|Jlfd!B@#~^0DuDLBjm_?Jkwow{a@<#eIl|Ah=5k)H|8}uGR5ZnO|aDix!&h z`WHMsJ$iqqNsQ+)B6=ok(r@^vNNlX=`Fbe+G~eZkH@Heyo>**t*DnL{>zh}$-zizP z`K!cY-WUDaUf4tdD=yiD{%~lRQ2U85%hAkwl_zvr3ZE2>Yk~X6zjk4?1kzh2Xcxuh z=mzXuk2jQU{yOHe%MuGiQ#R1!dbWXQUIq)Zu&}&tc;TTLCcUXfpd#^&Mg1(>yfN9O zG}&t^kHc(o$)}Wt+b$OZM5;KRK`~Je`b8WVq>3d)klXYZKq|D`!vs z*=_lj_6tjSVJ3TNdG_kEDXkh@Zdqb}8Lv8C`4_^j)TtI!rz}~v4f{x>cFtJz4zxs` z8&7s=Tb8{1=Wg$0R59Zd`9Jh*t7L~B$(%i2Vy>`ltOo>qZ{Q-x@Y12Zr0~*v^isI43%WM99*O@o+K;qOxthU| zVWSHpZm&yy+Mc9=Mgu~%cOwRHq41>S`0j`Ux~3TExjqs)5qFyP{jdrB_3daKlcF;A zMLYL6RO#{l+5A%>XtGO^y-Lt8hH zWlf&{k<+lIO>9kp|IwylP21R-QhrRSXy^Xf^9RmCE4D;>B1RoSTQRIz80D$1@d>}r z?aumD;jG^t@|*qUNn5`)fYNrM`&rVduTX*+M|E=5MBkCG!~8ONi_(TCeVSs#>v!Q? zmSwP}yD(dN3HZi%%XCxH2((zs?x29c<)r!5JMjun@;u88m*PSjPtNHvi{ePAVoPc> z1M2qi?TPG0d+Y`(=L_<$J;=A`?u_;|KVY$|6s_J{Xg9g zcM311(}e$cq<1@m6qxk4E(hsZk91E4(l8-CL}Bh4kMwsT-Rn8#LLp7uv82O=beWLK zJ<=sY(j7sD=`TWxc%+LnO8Wk3ko3xmv2C~(6WSPvc#zxmAL2Z$U$Gy%Yz>#PoF$u@ zbG5Nt@F(R=UBFC^BrnOWm+FrQTAt{|Li@r!zQJz>Z2bj68nF^dW}mvXDa{9tcat8s z4t^w$7OeCwcw-qY_%kh|gC*3ZJNOv2U@RS+p%@0AvcH_!Qa`M0@mu=gDro&b`oB#3 zAN*hF6Sm3!(f{R?W{Db^Bg6mYKh_PmsT&?scM>;iFx?PS_q6bT>64a^i=HA08fm}c z|K|VF!oH&WR!d&;^4&%&>#)JZ>8u~k_e)^`7{q^n*eu^I0p{;p6||7=PF!jt+o{NR zT!y#~ZHD{4$pN|UFrUy9v8@>S4yk3GJ9CL;?uG%R2m?qF){)XgpVIBcy*Oo28i+#5 z0ZB?~eGH(gbu$D>8KtiWL{edIp%+b*vq#i-ylnT-quNon%n&1s)9#(4FzuQ1GYqThJDuZR5fdw@cmOZ@ch?VhfS(Pg_lV9cn4`F-n=7D8b6=lLXWyVw-% zi_p-v*BIW}0U1AiVp|62@9d2g*eZ^S z;JGDhcplSAen&qp@@wc-HId&p(r2=1mA_=0b?xoY*6xxo-w0a{h0Y!04HtSwgrq_q zKiS4ZjK(7nsF+w&%UnAb*~TfHR(hKx*~dcUB6Of+74wzOUVy~ZtCOy*kUS`pTYA+8r2X4JcLnixla6ts2l<0eV6=?5#S%RvSB{?KHW?j1O0DceKfr;xA=$=8)bD`s#bV z{X?;17|c-ZA1Fo!6FnN0Ue9`8OeQbIpXhZ3ac2k#^C0QL12K2%v&923H~2*PHI3sl zee=WnO);FQ3xG12J-<)eSE!dva$&^*3kUV;6`(6l%?}iB*Ys1r75d?6`~YvSwOHWt z0zA2Js92^+?TP@8(;7R^al1Zj`|YQ>?6$-X9fr4Jnh|o%K+e#fYeIY2qpe4Ech7sYsL*`qnBKWU zo0mpY<9%skJla#Bwd{+L%dIcq3G{{h|19*LKQ9$%Kf1@A>I>Rc1^wRF@4ka6=&W=> z9XqYZ#-*FnmrB3d+%Sb1OH0Q%?i& z6_^{EBux$Gkf)bEbIBf;OO$!dJSFxJoJNOZTP_RTAU6jdo`jv5!^6a0g~muG-w4X{ z>cor=;{5wTKfl{Fk8e>S-Tui#Op9fSk8EfOVSX#?#{w_`Y_b(sI@fxJl&7Q+%d4Q(Ea9tRXBhwG`q~j9>(#DQr}0YGS7M#IPaBacqy4p*+MxnbgvwIK^Pna! z0V;br!xgw~_%{ z4o|sSd?u0$%NjQ1qzgdmdUCil3>8 ziS;2@W7PRRKN8&xh)82SzRjI^w}*EIuE9}!6E{2n>cFpd<%CDsZVEevCMTJf9FfdP zZLsNFn&qb5Z|mo%R;+`-&&Cz74jz0!>t}Wh{Ir@|1*=N^1#1TD;CV6W)C72;JJVCx zO%wvg_fJt6>M3Z&rYUq1g;Su=w7=ry0`sEArtF_fttFM6&R^5_e`}?cvtYit&+2(& zHl_4Z48Uc0ScO=z+|{9e@$&X=0)4;&wb`L9a88%1uR88M==KXCYT9hbs% zEIJ_HJ?0Z+e`q>idavG8JlP+5AaV8hHTwh1V4aJDgp^-oy}%~#9(<*_BV>QDj<|`s z!qn!FfrBRG{Zd+zRWEm}?d=c4gdf}9sYCi>)a&c(ul47ENj87!>#c$sK-&++Z+2FL z4*zov{K%wMzT84zH~sYucFbSUUk6EREofF^O@Cbke@Gv~KQCUvE}Ey7>pnS;tbE#} zw(0{zhIE^_{>Z$|5juKkj7=+a^LJoNrR~lyRN68nXAAJO0MY7V&U0H`P~A<(x>r;m z$RFNY*e9)1Orzd*VB4$@WS+R+DrI%+fjV)Qf@&x3TsCZQXUy_*@H|S_qn-G>c$bJ- za`wi3Vw1ZTKDoyIN3*|4r<;(e(!D_iD`OMT==RRk=r%ha&y9ym)iG#uB94kYt|(3X zZvpW?dE&+D77LM1Nk#e*im!k;peEwXd`{<42oF2aE2#f49H}_bJ-j-tP_FkC`P9il zDylPgH_^F3@8Lc^%2LhCzwyF=AE}F0{HEo(evg^9V9Nc4y5mg_cgz1~JTUTO%R-_2d=zpyL0?^czV{$`!%plLb<)%) z?Y18nx2wTR^`Y-v8xNfzXoaAM0j*zdHC^i!)MX3Ahq=sxL|bdO!-|Euxw*rT--}K8nL9Egm69z^bvNaea0$4HBfJ{d4=LHh@=kh z18m}tKEjC?M&n@{-Mf6!-kY|u%sD?c#L!LBOd`WveT4QQqzSPKUUbo?;zbCZ!wF!} zd%he#*4Fp8JQjX1-xUF@m#u&l0v=_{_S^*+!YWm&(ya)IVkadd#nfPN<>pQL9S(PU zQ@tL4nQ~87nuJ@WR(5;yq-0KewX6!oN&<3Ga92Bm(>EH?C{=EVdwibuG;tx`vLe#9 z=Xjy`T;r>shT?WIRXa!37@`B(QHo6n^M8O0NayNGu+1NuL{T21Qpbq=Sl%;1#Q|Z6 zus|h&t5BhM()yPBPog`vWK)K|n)&JN2Rcv>Z{Ey0&)L0fN)ER0g$Vy&Rj-X?HuT8&S&~^HEF*4f4oFX^wHq$@ehe%q>DH8KSurR|orYVGu zIS3u8{<4NJhpJ?*NxYHjBObJm(eE0CraheoZ_lSJcaWzW%b>dyc9nX@G$P`k++y|m zd^PndBNKjjd71V41iI)&Z3#4+uGduIEAp4dfo^1gY;4##{4SjMqJPhyB8eZk{qeTD zW%4dKss9v;t%iD}+vvhPj^?z(~)vSFF{_;5dQx za6Ro*0i`9&rosYj+fK_{Vcax$h$QD2uBUf6x*~gVdG?$sIme8^i33rtdUYgwO(c6= zxaTWZEJz)r{%ZV-=kMRrUu&)1z1=GM>l^xGJ3a9JJ7{k$dSE2ckeXqd9n(fZWE!Ak zb4Wj)P5)rfdkOFl0GT@8fBR-?>{Z%Q|NGbRnZN&!`roo&(f=46Rzq6SFwwbcI(PRl;=+bxMx+Ta-Jm-N5lKqx~z|6lY!9qr|wgHPU2>S2C^^2sJT zK;88PZrh7mg?NYRwm*y@kX+6C)2*2!UFEViyIjLjS#U0b#)ehrvNlK8T)mC&Qm-Rq z`UsYB(QPR{HemvmpB`>l-42B=S>A4rd09{V+))dTIEi@x6M>7$;c1Ap1;y7Wr4sNt z{Zy2VQuazXUWj`>H6E=Lxi(&SKR?9vQ8oN6p-_B$4jZGMas9b}!nIfrvP7L+;0;)? zfC4fihA%8d3%jwfh97*`27(n&xz3#ffZZoTO^SH^_T$q8J$)lj+AbjFHjBK#bH5Wl zBXRX<;-6LFIY*Y4{2=6g%NiDUDo=L!V@1iv zvWABC6(!$SBzx_4V)Ce6${H4SEGv1vPqITv!^@pY-Y9EW)UKjr9l!rb#`2Q)$`VW9 z++E6&9YPHa9ZTL!4%{!xs2A=EJikve(k82{;nhwh?=&>DOLpN2&$r4;zG|4;z9P9V z4Sq$HD^GUWgZ5L6xfHgZita|EOWsFH$So^bNz?XfnAfqqq_I4CXpf3yhkdMvs82=W zb=jjjRFo{#u;D`Z+KI^yfADQ+=$kC>NZE6sIj2uDC!0o=EQ%r8Wru15 zZ%)MRs=J>_qdzO>_jIPXwiTA`&mWLyEij#NsoJ4#Omtu$g3tWA^eg_Z67iq-;mQ-Y z6+UVUWb_AoF162}u{2#u_dw+X0Jcon_-~PZd_`=7nI3aq;)TK&_?%s8zkkM@ zdnp~4xUuk60O_R-a4yKN@!!I7ZUoM;%%dC1$@i8=oLdeh@zV0dL&gCTkJ|k{a_i`# zoS*agn`Q~x-Uhi{nZ>|q-UJ*V>!fWEafT1AEY$TzVHeuEwHa*zKSC~2f~_a?_u}vpIE@ztF_QwLW!sqVsjZf zYz9Xf;O^QD14Ck-yW;L9qukNyOAzOt!6k@6AiII}ux7N6eOUKxCSNIU1sobmjr-2L zR@}F=lxx&ecd(c316hfay8H?6?*K*bk1eu@dhUl=607`usKd!b0bPGf0sP(XTqv9W z&UICx&Q&yYP^k<~9bEb7(TT!Zi`xis4ii0cO1)vh?eI~FH)=(;v^0?f3yB|RL z$2_NfY+RLl9g&rf0^99Wv;8dP7k0QT`nX=_pk4x|0}kHr3hRi&PHVC04Wkklm%63T zQcSF+NzUwHe}#rN+WR;dwo0|!Xmi~i!c+wh3o1y7R!2A9QhuR==h;wM_%BscQ(^q& zJMPBQ$7b%vscw)&sgHw^m6f?S+j+m_pXbmK((yfm%QJzR%oaIDXj<5%`p0(TA!fz9 z1_c-^UM105b(`iTel{8Mkf2LedOwr`;qyXz|HK=dkv7TQXr?vmk<%$5S2?u(7cqZv zGl{uNdbPc}yMOS@zopbv|G@uX=oWldhDw_03mx_?u^cW7kO8 zmwmA^b`1u#JxZ2UCQr$)OkSNANxb1cI70GQl-IZj1AMx2$?FASDqYO90alEAkeLV3 zA`vwU0zV4$BNWd94G`9$co#mcfFcSgkhU|<3gB3qrHNj!Gb@GN!>GZ>BUGz*5!05Y zhf#CwX`YNe;hjKoq(0%Fz;0yz8AC(y*3id>6@Q8<#j&O6l-=v*q1wL%l(0ZG^=_#4 zPom_HT}yeF$jZMiz|zx4y#p+wB4=RjBdlTk`aYc%Y1kE zd58OGRn~WbdWdF zBJXiNZ`eH7dNSk6ViR~awN^ekm35cm#c+LY{gd=qIJw{XRpZ!1K5`d5VGGAI3Ch^7 z{uyPkEBLPWtJb0B1ruM53JHZO_bxG-E9=h4t*kp9cgh)+%!%OwCHkW9GPhrXfIA_^ z-auf*e_L@~k6jzv=1z{Ak}6-Nv{JrxGD@o5<@R>$T|pxz>g=OE+PuGEEC5!{d<;Z&b+xe}_B&^Jgp$0rO@!Z9Rp_>vl`rP*x2(tA_e z{FTZeL>X+;eegQXVuT35OV$!}>TrG+AdG<%yK_U&F^a z;pMBtJr`UNbw^G#9lgV+=;*I7Ga1y?{Tb9_=_~9Ol6;vGZTaI|ErY3d(8Z6pxeEzf z+dSJ&=*w)|M3`62wn}+9vZ4+M+N#D|d(CCaR&8bI@dW}ENIBL=9?x=Z+jf0u^4nbP z2&*~zUp8jAWdBy_W=&){u%}{;l^G|mvSDpI2rUd}H-wRqC2WT#{YQoNJS7~ObftB| zVA&fZviK2vzDGq6UH$_(F%;h@0yzJ+I8R- zdTf4y^5kk;=Ght9YD+`$d(|m$yCO;NdHq9=e-zRCU(}y|IUe8`iZuDcR+i%ET6~=^RrUMyZ)Y)r5Ax{au9oFMBBW zVAT2<08dI{!VQ(v%haqgdyC+ATIP*X8o103V7dUB;wLal5^%x*s5O#^ehn(+S6UuZ zGX~jGm z^3P>&lH=?&M>&FA67hiG?A@{R4At2C=|Vv2ObV*HI8^f}hn zo}XRuNhI-^?9Npr!_ez|NK={Tk5-Pv#{QfSB|hgw706|a}*?X1U<2pQuT&bV*kVz zLe_|t46$>daI(A=J?y&^rZQd&b4;Yp_avLdaiJR?G9nDZ>|j-G!X<4oC9Oe4Xwlo zGm@MmMREn`%PGwY0f!pBry6~%8ZFV3r$EtGp;x@6oXhfkE;78TFA^YG5xUTr!dv=! zQ*f;dOVqj*h1CMg;hzh&1}~c<>a4w?{AW$lDqZLE*diawa$UI)Abepci7Q$3XU`=_V5>u&FWMOHxg}J4rpeE6 z;cU$(_8dMV*;tbG54@Ly4`y3v(&d~)1iO^qx!8~Rt?jC8AV~RDOqwnH()7~m_>pgS zb{oG}X%o!W7D~cQ%LKch)fEkalb<^(kR%@X7g3?!CNP~_G}dH|`&S}sd;m`BW*%>H zPk88Ef-Vq+Wbbo@H|rXcKqdi73#B8jLjsv1QsX_+1wwkoBXtu}+#|&@kV=F!KuCQ( zQh|`9n506KFHbvl(fFNo5pU;*dDWQ3py!UxRs`p5lGWkd$C3x`2wn11) zhP+zWWpbj+WELZ*vIc%Ps-LN*d{X2=H_%U#D zs|K#gejTK=ZdjXdKU8dG&w14^r+PA(+^Vare`dZ%lQyY;9;VLCoJh&xoq_Kx?HG5QEYxLM80jMecq?mFJb=k9Bn5_1stn&0}geZk~Y=|~pi=7!ts z77&tV^l10qpXL29L6Jv^a^u!_Z9W0Z%Xp228)fV-Y5Ra1;Oq9|3c6PED|0dr&j@!m zb+hXU69M`<Zbog*1qQWI5LyE zTLH4;&G}#AxhMUi-}SL| zsqRQZxsCtMSpT9xe3$AwM61=T;Sl0&p(%0z%&MMfZe3GAL}E&fVOZUQ%_6 zztz;MF!d?0^!=+TKOh5P=|EpW%Lt<7$a=kMs+rAWJ~|IuSKt_Ut<}40>Br3HV;|IH z`>)Y?iUQkA52|FoNHGrcdvDnm$_h;`1V$%C@h%Bm8Ux~=;K<-U`uom;2x%b(N5$?{ z9(rdh^r3*?Q$u+R z>@%2dIG$ydy=9JG-`y;Rlr~(9WJ1xA=Hz9zz4&L;1}88q&#+$$7LBV{gz;kS^dim6 z@#^TfR!V#v-R`Ph5}WiVF%~M4y*SscueC@A6h`nY$FAnC_60v<} zmm0}0-A|8wye(A%vGo4scSv(ADkJ=@5dQwe%8$L{3rAlwT%*Jo{a>hWOimacRA2C&0GdAq?+W@7d zmKiLm)L$4P#>LI^c!vs4dpmeF!do)N@G_;HvBHxSC%ih3_w6$9>O5Xpc(;1Ii5caU z3hy@o-T?4s>w=>79WvS9p+KR#3iY&PQ+|%N);Af9cHyknBAAwbq zCxSJVz#%%BA(!iGJrs(cMN-B9%pr8S#6)>e+POp;;|KQ{5#W?mWEca{nh;en6|Hhh zf|O1|N)S}jyt|$Wpj(g{C^3M(5madnP*{g*B<*d~uwAlJZvvzLbbQw$e$=iX27co{ z$eZ#nu4~@JVawhOZ=#duh)_c#XqsJ zJ#6#``1fneYl#lWqC5ycZ?tPnonpEKkEBGTjpPlAN2(J(p<5rTV7Rd z0zTZ-EzbeemgCUHPZd2X*3zr|42iP-;p zyu#s+{i;0Ik*U(`w{*a0Tib3aYwbZBkKUt)vp4?k659Zq;}ss5o!%Q?)k@mAJQqFM zWVy2vVx5cJsRU~YM7ZB|_yrNp-aoJ{pz%>}F9_tX55z{{gBHrT;(lg|?nEeK1bgsbScBE%jui*NyHL63#%IW9X8`5Y zq4BTdf}{JtX_$XmK4Uy}UK}*+Y0!3dvF51BJ89S{RF}!uvSEMpz?Ka=7+|na@$l1( zgtyd7M(5iW>W*zpZT#!%Z9AS9^V;Jnn8BMItMwA|SQ93vio3GG4S_7X-_hzxNt4C; z$DbbC!OzAvK3}f#VYeY-!Ajxf>33z~XCzUAK-}`0KOHU*RLMo@k9>WkQHtvz~Et!G*{QKB^HTo*-T_gpGU9JKE5&DYZl zi`;ADd>Di8Bw8oCSEFHx$v+!_Kl0!u6XoBr%H0=$7Xfy+jIzaeEZvfR=yUSzEXKPo zv<*{%q|zI0U)E>PKeiUfW{5NaJl!vC`f%}m&-2tTJdmQ@#|(I(T50YkU1#(NHwVa( z`iy_l@&o-FIlDUcr5brk?fj6;t<+4I#O_&~EH3qwn-E&b5LP z@=9;H==~ghw}z17HHv5f-)}JxBFbrQ22q{&29N7Cjr)KTsMj$;y$%RS=vKuy6ekj# zX=jjlOeETnZTt2;^ds}<%X57D-X)hg9oTiB#MTxhbRL?T%Ri=nT1&VZ@(_S@OYRgp zE#b|M+Jl0Y@CWVtup7><$UigY(Ttm3~)7`mRB`_J8ni zBt3Pt37j=RvRvZ@zP{SN%58cHWCzugr2!@J6_*e4&o1W7ijVy!r_D;&5LZvm7S7o~zot zObw~cn2g$7#TrkQfHzg#g%h`J+DxwwyN=(jHkw_fpVakL2kgh;zs~;Gfd5VCg*mY; z`JtQN=0{ngZ^ZCXQMN_*1;5I@_N~W%8*^S+?E0#9p~+rb8LX54mC-6jh~wAmdj!qx z+C_J^-n}hoYbiu}(7+y$r?*$}S*lOBAe5m7UJG%lfioIS4IFD5dJC3Rnic4Ij}7y) z=WNkSc0GJCvu7`c*xeQ+RQZIiO2|^eI1Je%Hr4hEVs8aPp=;}+EO~%>zzLZ^5%6=Y6!!N6&UdGd^lt+i#*5 zk-%ikh>yAc1xJL=>5?T5m6kJnn%lMUlGzdKqgiLm*KkkV7i+LY*sc ztE|AguA)=|@?|$ebUOjLg?eAwq~GuGUW{z;ZvQLQ9o2iY3r?IbNXD%5@+3X3Ksg6v z0B7yIOP^)+Pgdu;oKzdOht2L$8k>F=CO1c0#%6b?I)K~<@`{F>!^QwNR#RQz#$WDP z4FQG~@{`w8Sgjld$CXDsaJs@RhQyP)B~-&5SUpP7#VL= zD2r`lX?7>OEtK-a_c$(0e<)P@DEr6s%24fK=$F0Ng(gnl4c`hCf-8D{83A8!{+azu zJznzi2yFM4nlu)!<46%vEnIg(TYZdhPflK@dFTFZe`RfuOIyV1JxA(jekgt%zj#@N z_10^CY+Fq)t}4d$++NwNc9d-15#sH)&z0Hn_Brvnp?D(|lo?B%u!`@Vn?pAr28v>C zyiac`Kt`@>Gi@0G1^A+0L-FrC4u>pac8QOCp3AeB`#j3Bj4Yhw>6ni^mLYi8Cf|)s z2E@pC)3K~GxkD*B#K114#RCg3k)KptmbYZp&l&L1u`R7a@m&r6QwIFv*p}9zxa5Uo z)sGqQi}apbe5Jv+X236uZD|vV&olTB8SqiDEp2_Qi)7XJ8Ss&@E$w`Kq-52W4ETuH zmfYy|$*Rp6unS^a+D9)=R&C0F4UcWvC3;4(>bnfsu-KMeqkWQ9-)6whk8SA?{X??q zn+({{*p`mbePXVY!dsN*lom53GFF(qFHQX6F_pvK=AIn$^LV!jPa-$m?R^R_bH&sAI=A zb?l{lrOu-SBA&>iYb&~GauJ}igx5-dyW7vkdiS!;1I@f-*ZD7*^{#dbRlk!a*%6L> zSiQ_!F+{y8_MoaXKKqMT#5g}YGq0t+B^Ap2Eqlum3n zTgn3GQv)~i&n62rZTrIne9!~&CmUBPBg}9CZvv>DiQ|JXzgdkf9*dAoqJ_;RcyF%n z#ToXNe&C@>PrD0yi=;!>EkW^Y&%baU#(3(!b~;`~3+Kkz=R1wJIGOzEc#GrsP9KUf z>14W)7Ky>);}>Iy3X5c_Fv~`hNh5=y2LA2Cdv&q*elyJ#adiNCtHsy5-~tZ3YEH2U z!h64VR`f5`B2ieFL2d-+X)M6X*nCbJHdX(fpp7ytap^UkgMz4Q#8bI>Of0N zd(C@otw1et4Ll;Qt@>Zm#Oyr@Uc9;5D^CHfwV3f-!f5Hl3WcvYtvLl+RI!n|Dj;>P zNTHVWflwH=q;yt5=pGR&g^&>mgIt={Mc_Dm+VpaV2Xyu@I!I&Bz%jyXX7IHyU8y%i z#KWT~oZ{fG5h)n#$ zOTaG;@K=z-zbi`x@r7!MZ}y6LWC`pQ6S6VF=!≥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 zΞ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

          sw|OEidL0LUQtA( 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

        1. -&SHP2oe*sS! ze$-ycCvA8ec*gL)@T}oaz;lMLhUX3611}hU)HjlkH`J|vJ9xrY!SH7L zsQ>M5{kyd2Lt!IrNq+MadPlZR|x<1nt9);^V_Aq!1 zuFqvN;Bn(;;R(Yx!;^-815X)V;Ya$p;Vs}9xaQvpo;7|Sc+U9u!t-!_?wA2Dz)$6Q zd9}}jze5-PYhjV(;T!QI!=(NirvQ(_@4-L3AnnS+zl1l2XNJ3RE>It?zdO_m9(rDU zeNGt)&l`U-+`ChJjk5$EHgUEn$JciK3Xd3GbHB7JYWPX;nBf<}B1_9tm?-tao`g5j;;-d*nb?E()O-VYu&d?GvopG^N* z?DOFJxpDRjjc+3VVO5d)Po<~JN@+vt)hL`O2{A+l|@XEhQyRwF#1kV|M89ZfKP3N{;ceh?!(;G-;r-xA!|#Wu44(l{8@>#lF?<6& zYxsBYoZ(0ODecM|-UMDS{9?Fwk6Zui;332Bfrkx$0v<7Z5j+alb*gvZG2?#&j~ib8 zFKJi8@H+6M;cek5!(;HY;e+8B!^gn0hR=uR41XV1ERUjYvrJ_H^y`~i5>@TcK1 z!?%nU! ze>FU0_$TnN;eWs*h97g7)FEnk3wX@%i{Np?uZJfLzXzT)d@ej?_-c6C@ZIo?;pNIm z{#nE8z;lM52G1KFhZo?jc`lm(kBoNfKNB7`JPVH*{uw-O_}}n^;m4Mhb|noz4W2T* zGdykhAb7^`G4QP6GvPVIv+%s(8{q}R_rtw0QnxGrVkh$uniz;#`*GdyYd0C>vqN8oA0UxjB3{{)^j{1%M|h;c>%z!xJXX-SDL0bKxn&H^I|} z{|V0+-nf$FnKe8H&lx@(o;Q37ykPhexHsPI|J&dp!w%ACr@$kIcZNp|zZD)cd=flv_(FKX@HgQ}!*{_`hF3a*`WxO7o-zDVc-HWN z@SNe};d#U7zzc@2gnJLV_1^#w8U7hOZ1|t>h~bs1N_(S*p9qf`ei}Ru*ZIuF@U-!- zhGz`F6P`7E3Or}{5_sP5P4I%@1-LiCty{^F(%z8aP2pj~FM>x5?+cF_o`lEXx({|b zJZ1b>;Ayz7^RM^$Vg6q`iB^&IeBBqi3qLwh+9kVWJ?~F=96nv=MInh3CXPP0HuiaO zJ>elY&ROsd|H~ziwgyB=+NyF#EQ*f=r3ZDmcNLQ9R=zil(_>qU* z^ScKgg=?Gx#7UYsM;;}0$eTD#;RVAlgnN&;$L$Rd8Ga8uZ1_}o1g`Vg=izDNzYWhA zz5|{${0Df>@QO#%Uc--v7YuI&_fpbcorlEWA-MLF1UwAa`loyzoJX%j&SRMV^DKTA z|2+8X`1wlW>-Qqx#Scw#>z{{*;d$M(&T)^Y4r}p4kGjYG93F=2_4qqHX8dESNqgglpAJvJ zHJ|Q2FV^93ssD-OGYCI4#m(nFc-Zi1@QC3r!=r|;g~ts40v0jQ8U7VKY4;_*6H3`C5{H_(?Z@BcBKL$)6&AU5aenatf{`m-g+W61m=kPWDoA{w;-1r;uLsccd?z{U2KWY4b@UzUL zv_8kwk@^&jAMtrmACLRE*1tV|e1@CPHTd}ol8^ka=iQ2*GyX&PX?%@82S1v2Y$HJqAzXp#Pz8@Ypyk%JONf>?wJZboS@RZ@Nz|)5R z0M8g+>qI$j*6;{CXLv_=-ta!~g5jg!-W<37Pr^fnuYrdR{}LWCyj)$$KWcaw9y9!W zc--)-;0ePYgeMJu5uSqUbLBR8+VF$$jNx_bQGdhRz;lLoh35?)3@;d-f_rnN{+j11 zc*yXt;bFs%sxNs)3~vpO8h$-IX806%-0*eqgyFm4NyE!GkbF{xH-x7RZx7EHeiJ-v z_+#*#;cvt9hW`LB7+$5J)#9>GWU3eO<40B@QmRL;90{rz;lKlg69oC zp{e9qFuX0?oA1{Da(Kw_JK=^qzpeDo;JKcJY)Dn@T}p>;W@+e@Vw!Nx0HMehMx`h z7P$5A0S_5|FFb7cJb1+L4e+Sp2jMZp8%8A0I9%7AqVR;_SHhEq-wsb1o`R~*0HV9kgXhf*&)53>qrn<~p~O*t zG``3Bj6Q!&$Iraz`mf?gS)bA8>kascjO%}oA7Opw1fB=WpCavzEOz}GJ`eIwv3{b@ zk1g>FFS~wc{0!?S8owWYW{Kn*Xo(nbode+Dh8%)suX5y{nnegY|*L+pgaMKUvq!KaL++ z>-t0RW5w6F27uLD{Ec{e$@pXN2Iez9n*Z&Z|aHRNpy?l+ISnv7=@N-AF`5bu~ z{eOe&H}!eYAELY`)%Bcn@e3cies}yh>rq<&LHL=Cu798UtVc;!p7#WP;v?5zfFEYP zNbC6~e&l1<--sVF>q~p_3tL?O0DiWdWTNX)N1iVA$!v4|20jn!lQZi-?eG&jT>lFE z2)^eM0_4xFR@*&e=&X%U;Fd*_~AXSe-D0&@ma6O$MFkax&F)eh1Qa}jt}qS zXZO1PZv5P7;%hz!@l)TreyEMKH-oSBY3%c$z43jn-yT1OujB1?_>mu6e>i@K^?%JL zh3^$y|9Sib>;GE+)%dynuKy{1iu;lFpI`CQKf8XdGo-y?{07_~Pw{ziJp9%5uTr1& z{6_dg@T0%G{$%|8Nm5CDkGuds^oQ%O#V>F_()-2d`1wCw|8M*V_ap5;$F$}8J?Q#p z_`G<(wknFZ6J|# zJpT^AP}cP;oXPp(ex&{3c%KL7D_h?6&&K!g!?d>>e(G@7AB3MfQS#CG$yoe&CD(rv zKY_3HS&Sd4?D{#49~M*3*Is<@2-h#yj_VO$ulG7W589in>iVbQ$ME&~x)eVha{U|d z!zZ}y9fhAb+Vvm9FVqoVt>*e4<9qmey?l=!s_y#L&yx10t4VzAKP`M7v^QVF z^*iIoj}l+cZ$JFZv93Q3Ka8)};|%;{ZP#CcUkFKjt^Y^(vEy9-NBorW4?kP-51-)r zO?)0)k7?#JdjC2XzYuo)?)VwzGygx|z|Yoo{rm9q%x9z({(J*JRp0erz|R_g4Su|# z>uloP8EL(^OHJ05Bfub z@l)qZt?&!2T>ldM7{2z0-uSuG#s8T2!|*-!L+W_@Fn*?u8~<7SIP*ho?<)LMTi4%; zA2t3D_=$F|U*TM7Zx~<4+v9v5^oQ8lu74)Jhp*%3<@k}P`1*W31V75YGM%4{$1j}g z#(xe!$^A&jhd1$a=ez#r`1#|d=W9N{<7X~({Tk=dUh>iLs)f&k_NLmq{(1OW_Iv2{ zbrpW%V%NU~KW6;V__2oIp|3myR&oA2Eukb@%T>o$U9P<i9e!Ki$>!XX8ik^?F=^pXlcL+wlv` zKefI4@uNLl|Hum@|D5p~`8+tkp{rg09Q+Kv_W$nq`DRG zG=3ak?~l{*v;AEEb^NfIZ-0!R>hJo$<7b&~Yy2ZGlKkU0xqdUB7w^~j+TYH{j|_DE zKKMy|t-G2+etx*?Z^w_Y-lgNoe*DZ` zu76|)X>XkIT(93oJ`dWP9O?S4@uSS=bv>jDe(Y}7AB-Qy*Y=LX4<}uJ27ZD0xnA$D z;TP_8{SWaY#{U{Wd%x=+aj~>F%Y0sc2dRP2gZ8Gzxc)`>aeVC$*W$;=x&GbwQG9Lh zWB8E=Tz?6En){>Pe?P$YCb<4S{J8PUT_XACCc1vu=fU+D#@Fky4SxDz*S`$k!`J!D z0Q^MC^&h~`v!1E#orxcv?D|XbGx*v+bNHbtuD=gIg|GRS>nQEbPj&s8J`dWP;rT`9 z0}=epUcX!L!%w^ZulQ;9`)T|m zI!SvA&$xaQp9k$t;%j}*#m}Z)|62So&o6qvyB$9@%k?MYd&YkbKR(CxSK}vne$nTV z9r%%XuD=gI&3skgrV{-vK|v^M#IY*W#z2cl|r? z)6DmD{CNmJ@q+8m!p||^)8~a{_|Zk;f5m)kC%(u0LGMSu;749^{W_hcz1fqcC+mEm zmCuXwhnHRdO8h+QZ#rJxf*)Gq`eX4!^(DSu@6X_SuettP_*veM==HJ#zp&Kx|H2Q~ zlK7fWX&0{F<*t9G&x7-uukN<@3jEwk@qeJ61My>K{dP2dc9rYT$4^pE%|DBu$-4gM z_=$+*qu1l_`02M?zgmp`iLcjJbDtOQFKb-?V*CW}VC&3qoTH@d;~+vBHdNxtEZ3LjGXOuo-StP|Cpljle=2_N6W3pWAII16=Pmr~r>?&pKgapf z`|p1I%;&CO^9pHinDeF2n-QM}=QsU@>tBo?;(Y0Nay@=(m+Ozi&vU+XJ~jhCxySY2 z#!nmnQ~bo&u73bO$NHh(e?wg*|M)kq-_qyB@u#d*Ua$9y@MGVJU#pB){0zX)@_tIs z@4fhm?_GZeew6d2_oLVFQ$M=?Zv1==$>$_FtalJUv)}dWU&-}|ulI{~J`c`U?q}D( z2|teCg82907k+j91^8hT|1JE`0oUJ!AEiI&`2QDvp&R{;^Q+@?Yo7=C#}2yw zRrq<Gjgg z=f(P$bN#FFvs_>LJ& z{`dGv-v8?OU%m&|%Mq?0_IYr!Ea{Y(#LtI~az0AYU zmWr?SS%sfq{YvkTTks3VxbeTkkFj2)<7e5cq`je<40<_{?+&i z)+_Y>bt`_Xj_XgtFR=cg=4StB{Umf3e;-|u{e*iyfo(Dr$OM5eQUB9u< zgZ3sF54E1>;OFX#eGtUcmQSyZ(Co0{vh6!*2Zi8Ls~aey+9Tul@O`p3>fIJJ)aO^Ps&Me7#?vho3&j z^?Tr_@O6Ah;3v;>{qgt-eC<%=O1UZs{+0LpFg7{10Yf1R{9f1~R+@OjYQs98@w3qO04>tBJNW4zV=d^3Lf7S|uA zKI4_H1gU zCz${1crpav8|nIwerjkA8J@h`%U&vgAbe%`Df4#SVmas7wzqddRs^*aYY z{H*IQSHHZB=jw07_ZGPRF8qR7pZpU)ztHt-^p*A|*#DsQImzcif6gv){fqGntWWBA zavgqpvG_WlN#aLYPtg834L`BO^-@xa^ z@s|B#+TOG9y;ZJ%1AdbEsy?5N!p~=2|4IBD*RRH3jGtZY`XAtD%=~Zv&SGKmBvJ>(};q(B25X&JRz;k9_U=9r5GzXT6{H z!H<6H`Xlh8jL+&niXZ#l^s?-(0@~ev0u&^SKs3^@sRT`okUgc~hT<@pA`Ve*u1m>qWlK<$J)albTi^BD z<42j_>U{4y^&7eVefU}Cx7y#HRKKa~zkwgd*XwJm`X{;mU-(JptC~;gE#x0@{kA?Y z&X-sZ)baUp^-p#ETh-@!3Cm^SJ*fWau0I_=%y^~!^A+{aaQ%1ilV<+&srv0){|Edu zgVMCC*tK zcM5)n`-08`7vje|xc(aa1ip^*JMq&UUH>=y5YM5y&Qo=;)FIzl{0RBf_jyo<4A1qN zPdoh3<*wfiKf-gd#vg*Z$cCKl_mD_rOo%>o_(TKQ`I*C*UXXwLY`(^N+cH7C&zC--@4j zO8lC%_fPyZ>q7MySC76;+MAjo{&)CIeIB$o$MvP-!+H40IpY6?-wi*;yhX3CLFzx} z`VZo#T8R1o?N$Fp@tc;HL|15hbG?6rpLyB!f5P_|Keazp8Y=D0FLnJUJ`dWPr~l~r zisFY>iNA{W_P{UjoUZj5jGuc;{3+x=6+g~%kY0~3;3w9({zv$E?rZ9QhacJ?{#fEy zyq)vKeNC_56MP=bE7Bi{e|`n2=jr$<>Z#XPXZ*r;@i*fS#t(D->T~*7{9NAkpTmz= zkn^kkEsLM|TKo#c-=*;xZ`J<`Km3FEG}o(l2iGZF$Kj4X56)wnaYOIFz19E8jWZ4& zh4<&WSV){aaT>r^7kR0d-Z#5QV(=}>{}9ffQ}TAhlLv%{50iheU;Tpc+~LB@4-4}5 zceQ*kJXKbBbbhFK9y8?mCC82VJox*qd;eTmBo*Pk;5ox@foBaL4c}(?WO(Q=H~uql z&+u2_>r9+?;CaJ0!7G|LKfsq7zru6U-i+bL!4DXI8oXe5C-{8BZ}xd`y=1?aesUT0 zoB$7-{&S3fzRG#~525}4|CPU?M6SD^C611Vr~ijP(C5YD;#XjPxCWj)LVDV79HHrO zuInno^YEnd65;#lZ=v&!lzb`*{{z1CV&TcM!YdJ{(j~%kze@gn;oadW{5OcR5FRTp zaisV9|EQzH$^I^J3UtuUaIb>+kI~+F@Qf$CG5jBRzKrlE$!Eb^a=xO!N&MT%XYgvj zpOh)_9&0O=Cyckwug|}ouYagpu9?JtocLGY8C-ysyxsGvLgfDj`aC#ak?P_<$bWqY zo;Cc$yTp&x5dQ=I;9pO8;w<4g2DpuI?^NLx;hjd%Pg)3{!*Lh;JjnB)$#V^UxSsgs zsm~#Jh&XeJ(|e@E8UC!>-l0A(wzs~-`H=hIB6u<)d^m+}I!fY9H*wneJc#2paq}65 zzt{K=;D?&J{u=x$^W8kR;DeTs=1(17qCY%_-`M!i;fK$Zx-F(|Rqvy2#y`>LLHs=a z1nU1Ve%$ySIxxOfmG}#|&+hkm@OP#A&z1XHh~r-FkB0#tZupn$g8NQwZ|`jJllZOP z72bc2%g4g^8a~s{^WVmwt>iz&OW-{W?+H&B{*r$m z3F?;UDs}sq{QImC9=lSwjwd_d>2AXH`n~FH{O-cn5NAKUKpY*1Z+S=ja1Zgf;C~Wu z|Gaxw3BR8HJjl=g-|9KX=YgMyi@%lYrOFuL={~|=CVm_q?<>3w{yOz<5dIi`WGwx# zpYY4!)8J`%19+Kn;^*L3(r<5pM+Qio>G<2!hu;f7f4szr-z0t({vtelv+!B)S`Tns zxc0+w@W?>%mH!G)!8a1;q4k`{-r`?GeXjUGc;Xh}m(s4j5B~dkdD7>>{d&CVZwui| z4POP{Yj_UsEp)GoFX1%}{{feC#@;Kvv`ZnRZe`A|JJ_pxzcChe%|3}w-$H{cQe*-@f zWeGAYqJ@c;)khZ*8KNu^MqeTf78@3W6{}{n5K%@+f+&O4+XRUvk_-{i4bej~N@Tx6 zGSQ;vxzBt)_w#zr_3Z8+-`DH+&h@*_b?$cVbLPxoe4j&b$55;PMGuUEf5rZN?J(l) z%%8$>a+U5MhIsA2a-29uSpC1_$P-Ahy8R^F7zx+w$ufF~$JOgnyPuhd`SrSVKs)p3 z^~Ze*@vaY$U#~xlRXb<4o}5%3T~Ed$-ox{an*k5gkJ0DS1LF`sjQ)h~7!R*UPnya6 z^bPEn({#HR@go`EWESH6^wIP!bo&Ivr_x`Z&3Jk>`b>I=zMB3c=eu_z@;qWa&s2P7 z?NeRdu$%1@K8AR`Km3&Lm$Z>cg>))!}T;B?9w$9Ui zI-cjN$7h-O%pXD?y$(;I``DgMng1F+{4L_o(z|?$JZ|RE`|vZ$&3ejhvDTA84-0=p zuM)7v=lu+M;)R!{CkwAhPZi#bzFl|%Jt(~Eio96gCgXf3abM?K3HJry&GVrl2Ig1u zT8)$7ckmSM6ZX+PpTg}W5WnUu;*E3g_u0P}&%tdc;Me%PZlJ0&v+=)Jd35|Y!;=%; zFMsj8j)?OzK1aO2DdP3GYM|Wgub3~b?VrYWh}1y*7Cuk-`^|hfZguzz9M8pgzWxUA zfB1l-?`5oep7S`bL7mYKo0XgUVOKo%!%nafq5Fi_yu$sn@D%MWt$DuI-pc9^=spqO z;41QmgpbuOj{66QOL{?JwAxz6)iL$@(cHO5cMK)i$T3$=5+*-j%*SzdpOM-cD5 z1HZ!jm$d&4zsqsk^B=^!Pr+9*e}wM62#-FdQ~#~$ZN&RC;9Zz!C*2l?7ol&ygLva6 zTs>Be{{5asKNeYP2IMvxivEhDCkk(%+#FYq?0CYU$7f^ie?0eb+}1qqB#y)2LwF+B zu@d)Go#wh7gFIVMrm=!<l-!Vj{3duim?`=S!da9&0k z_*~XALAlvJw(ZvOJdYk0zKS06l{J0`y^8RI^!mbop?4R4i=HCng?DCuWvfTe4S&Y*T*KUdn$O?L!gYVmqua~Dx3k@XcM%_^&!WfO$8$@g zZCX@{(%)BZ=6AhGK7mnX58?L4W4s?Jeceb+tV5mu37I<>ok9AliQxeWUQ@^q}zV^i#rrqGt%7&HaY2 z66*Pd^^`U5BUF0^Dq6iK-BktNiR*vUUl8wzgMZ3A?ZWg5@Tc@&=zg}tO!_MBPeRP2 z>-kTutLF1+pXm2_e<8o8vbD}o7QR@mt7e{}BG0COkw><}4Z5tSGRKc>pLf)FFx$=X zD(d--=k+Pw#`D5mgJE3a`1vT&7LDZXi?R7J#+7{DenItPX6x7s%Q3D3RdHNBuHI5^ zj;kl4-#gLser;W6`ZJHeI`Xt+{aYAs7x8^{e>FjT4aQgd6Yb!v2R~qzq5kS~pBAnK z??L}oUmstGcjta7PWR)R@b-*P=k+e^fS2Jotjcx6Rug`ZUP`s6*)I{ER|S+~^rPFE zNBiIOFx#^!^Ta+u9v9;$GS4u&gZcZ=cPTf=o84tyubxEx|NlH?uWIMa`u7g|#r77? zOOKz{D|kH>zLFkjhxl`>C;Ljohg@)d{pzgT948LZze$Yuwnh8~=2=U3G0#Z)J?3dG z^5jZmos8G(c1OCeJ@R*FJO9r8fQ#q#nEif+`vF%A#8>8h?nad-vv&K5`6C?=uluF& zD%9id2rta~+tI!B{H!NH_jN*iGUM~DMjoRxyez#L-9gv=wUq9nA7%Vc%FXsq7wvYQ z@xlJcug6>IHHbeV;%m^u!r!9Xc39_oC*|h#$lDkB-{kdr0^RL~?`55gSsHTIK9zR zHLq1W*b?D`+3!`K!5zKer`SI2R6UuEw`ApJKl(-e}Nl z=VkN2JJ8RU#=gs*0{7DI{D<|*7z+QK^}l8mh^~jmK=>a#-B{~ zKYI@G9@aCF$L;$(+&>(7hSE={^UAEDkk*^RznMA$%*_Co~rMW6ZSbuMYd&!{hd5{|=#tM&MC*KF<6HK z%#XV#!)VYL>zIq@TZ{2uegQY=t?8XV!1^3wo&px#oYyMuH%b(Qd*;F2d~P;7i#)s7kN(AoPvg96y$S1pPxN~adYW(#Jt%zgAoQba zDe~*~OyYITL(k83`%k*pk9ZI3DHntG2`zx{<9d=#cdUdD(e0lb@sZ{5Pw44%?+W+| z`b1TKX8p2>=XFY)*Z1_2JFV;C3A#sk>G~Kaj*U2O#}{zm&o8ha*T8$T-`BGp{5&uH zJ&UVZ)R}KH=3}4%uDqYHeOk~RHR1ZX)&#omE{@xc?H{7Mu3NqI7UcKbvie|p=x?ik zOAkMWf5iNG1IT0h(;ELSJ&oK=t3RYi?pr&au4*Wybd7Ez3f$yMK`3m`+jo@=RPWsV9ZQuns4*m3SS-5V83-n-1_yp!D z^fmJ*SiKG1oe%yGp-96#@x#DWN(+yw1 z^UD4W+p`xujXprRc^^@7mv!A6&v<8V#P4JLQ^q$H@db7xf0)PB&n;7woB5MO{51Lu z;fv{M!UN17=#P3ltS9HUIIcYjevIy+N9e=o7wEoWh_6R){vF%%W4L~AXBRy@60YAb zdi8s@=P0;-E-{~O8x7a*7i9}Fo}S9%4x!t|AYQLmztNra)r@!TL3{2N?UP7Z%E@*(90&IfK_0z7Z&H!_J^E?p8Il4I^0=*-=O4P4uE)c+Vz|Bsjv@aX z#&74o(ZhDwPVdu%`vJPnQ))gu!uA}*_{DTP{RsWFcliD}+fCP5U^BlL!*>3i@rP2e z-;nkHbqVf2j{5sDex&*Nrdn6sbX})mex9h@zYOvEK6JJDIk<8cyakJ`T}_wB&-x;Xu3<>vb{X&rIjgu5ieDD(pEvlb*^rPBAa zos>sEFJK0?A>O_l{xjp_3c!tT;ksY;(mnJ;jPG6$ z@y_oMul>I1X1{z7e~A-mT`b)3BYY{pSi3O}9=Z(I`-DLi;gLybxA%G6O_dmb1@TU{ zXP?S&+wbtQY|r9V(C>HpqTkEv`lB9e1Vq38RaNCt{o;9sJog#jq8i*VP|sevpB|$B zN`FWXWJCNl`o-$V<9`mW)2;?Q$o-zqzn<>kzVtK3 zKVK91-J6iV8QX0N-8c!?<1l|M%!~T(TIWSO~Ja_26 zzv1e(BKp@vJs2_Tcin;4rq7`VpIY;W=?|1giS4tezWSr#g}0pMcwicRmRZ3%C7@ zdNzvuW$D?2*7K@McL;B(+^okC^CI^t`U2EBko`FFG(5BnuKV|#av=7quND5K^5}dK{W$Cw z)NlM?&GQj`zVJo#Q^GgXp9tTpJUV_juRmwImAZ)I#_h8nwkI#!-dgwuI)9e*3Tg8;^a0-d7hbj66ms#Q(!Q zP3VpY;!o3y7eRdZWyJqQf62VBRQu9US$K4LQI#!K_kGd*Y98cqnWwM*4$zGg@R{`6 zbmwTC*F4r=lJ|+h`G}vx{aAClZ32#ag8OX`J-icnf_#p#i0;@AkLPjs(VZRPJDKMr zb3d=n%bA_^Fg`%{p2t2-?>~#0`+OB2EQERr>Gq_%A6w(s(>?icUMqQCr|6Nj@bzqm z$>#ln%5S?5zsY*aoA(RKBePLwfZmoK9&hzgbX!~G(eVcFBOF)Zx*u24gWti`{*nC?4+e!0r}hq~a-U*Y=uP4BdWM}D{V z<5zUsAISeE$IowccNNq#pW`rhd*pGwkNPuMPc6FdKJx4PjxXp&Q{>Oh&n17<{t)r{ z{-tUM9`JV3PeZ*GQ^FO-h8^kwfzmM;T{B|4sF?}sP@G8!C zIrE&P`&Yu#(CtRMPRvsXc>+c7AFk6qo#9uQ-_{xNHtv`7zUzms%(DXdQ@F2g(hVM} zgggsbPcq$89Uf2rj2^57U(I$7>i9R|A2UAqF7gN4!}UD6L3ek9x8*wE>yG$9Pk3*R zw_S95Z}?Hhw|x)sk^b;8Y==>F&p^2TJ(HF6;7ItVd~Q&`2lBYRaNQ2Q>BbcJE4iMrz3?7v z=Y@3RUG(o;jQ@ciIE;AR&hPg|9?w$5>(9%=bjMowK90lGK8W|7LY}2uXWI0IyKcdM zVLPc9`N zo>Y3M9((}fSJ1=9;bqzWN9fMC;QIS__vw)q@M3I#`v9JAYj{uO{W+&>RKnDNC2v;IZ! zPk3HU>HekgkJxU5wO@x%%!h%pfbLiiAIN^(OAl>@>+9FvA*}N&xL#+*4uyLU!h5jJ zvBOyB6}Yam%y78lE?keF4I|*5zRMOJ%>zD9=+eW zk39Olg3WZ#PWTp{SBcBKk1N?Fnt24rVJGG0{dGv}^ONXLgpXk!&%emOhxxx^e7T>j z_b&$-Z>xdh>g#5iYdCIe5nq>{AiNdbE4&9iP53Z+K=?=WYr+@NV-8sB-%Kwgd@sF< z@H6zL!f()%gg>MEgctlB?UOFN0zE9e0o``cT7MgQL*c#YNy0y%&lf(O9u&TmepC2X zdeKAHdiK+u!Y|NMg#SffE8NZdO5;4nq5fWKGVdRKzr*$SE?3hXzrj0lT?*5Uh&4}B z-fxC}gx_HNczW;%Jcgc5w|@&?$LrK>y1N+0|4`1C<}YEsJHLbL-*GxX_iTed=DN|U zDB`_);Y&GxkJ0@(;S-p@Ofkf}zk%!D7fPc$UWZraezjO}#JgUDpQ6vA`+BkOs4!f=FZy#!=I_aP=4sms?%Iy=Kaa;gvWSLdld86FZ|a0=XD zzr-`o4SIyG^Dq90`M*N`b&NkZ74G^PUYz~acp5*S?Vc8m)bG_yrY8um@GY-oo z|794f=|)X>4UUtN(-H5f4cEW7Sz-p<`55)+_XLK}1OLJGdzC-Xz0V5(z;0rV$yZz^2h*9={R&+E&LD-^A;FzehNb@e?Rjw?I; zU;0`x-Wq&?dW?_j@tO?Nbd>-DGRV#K@R;kw^HUIO=afa`IRV=3I(1^$TnKUqe9 z7rua=%MTCtfa~9xoJ4o^vF7<3 zjUE{U*T3^KDGl**{rr#a7=ifxZ2xDg5N~_{*ZnnmHS46`Vf=mVBN0ECK5Px*ee?tL z0c+uIjuUQ+j6die;fd=I@12VL`no)F1KhO;uAl$kr-zro^>w-ZX2eI5M3V4s#L$A(x(d<>Y zo&Gk@H~ve!H|wu!%~Q0TI$u>!fL@Y$%9V$^t08_l*S(PW97)B8entH=`TS=TukXGG z@cTUOP37kJvGuTCX9t?sag`@n0r|Hx|4TEKtMTJ_0j}S38%THNg5O}je^2*4#&Pxa zGaRqLC1UUA~Q zs&kzQJ%@N*&xoBEpWS&~aI$@N&=(7TNWUoj^DzOF4ZUFG)`f%{p{?jZ6U5cT{=e;~Zc9>hDvai>H*k0IBM zpXk%W7$9*xu0M`JVj`tOLf|*7Isa_qBoR>s_A(TnCcidL8(1E#|xH z1Gs+Pn0*~QFc`j=&wHoQZFJpk`POsYVE#XNfZE%!Zn(!@7s45^XLcVW_%zO`8To7c(pGw=lcRt&lq$6pyK_Bi0{Mr z+vasvd3XwZ1J}tsd*RMz@aStHs@9!!e+T$yZ2!0RAwJR_zJ>L7_zCqK5cPZ(b@jXS zt1&*SupLs>xXSE#>&w<5ouUl-}_)o{JfERwe|%w+sJ|^CbX(#(rP_Ip&422(IVF<%MwXPgalj!+l@DTd+M_ zuY|kjS>wxZpdYdNS$b%J)r<0bJ@$~*U*C>Ao*&@7*e`XzWk;0LZsWYr_Z^Gq4#sQ$ zpN<#4v1(^1c3 zc#Ggg82ucnty&*4Ti-@;-3XsX{d%3*Mz^1Z>viUqa&sNKDAqCCSD2^vCy3YeA8dp3 zvOR}4@b!Fb-4^a({3ZTB)Mh)_u37VRH?OCv9fF+KcCK&h%;z@hIuiL4@rCGd=JOfl zcIG+4b?n%WaK}}|>))|yy&vwo2>*=z{?b9T^8?Y&U6q^lM9w2#zdtsg@nI2v#*A0> z*lr=dS3Y!PmqT#xBltqre_pwH{XH}U_hpsY?&m0;pB>{+e?MX(-IWWzP~XQfPt0NQ zIoCAQ>F0PJr2A`K=AODfb3d1bkJy-be4$O5`?f6n1fOsGe|4(;Pjnu=i1U4k=bNV6 zIX7JYdtr5tAwDA9mxbTR!kZq?JkQcB{6QApK9qT$jahik6Pd@mv+!M6_!TuCGFw0M z{>lAbWwe`KKbtEz*U55X{B)()7oJRSE&M~eTlidhitttRX~NU#i-jMi2ZaAh-zWSZ z`Z?j*qc4u;Hf{=kiEbRR&ZBmp;dk$2z$ z=J}fI{F2GIz8G&K{-5mlf5^w{ueT;#e@}CQ`8$o~^}=EG52s@Mcq_s6bIXO(m8*DP zJ9s+lDf$WGeO2K4eqo^LD&AvNU2&o%O7q+kCEQ=4k?7!1L<09qua$*Y{)B_U!z&bZa{U?&<>9 z>&5}PF9Cj?>+^HBkSEg9>J91P-f;c-#RqhMKll=k{~P-LE*Y-p-If8k?+6ToU*mbz z8OZw)#_NAqcg20U(HZftGXAwka0gvK|Ed20=4rSS;$LEXgukQZ9S0x6^BuJq@&4iP zpE+OJUc@|gGLN5mF4EoY5r3X}R+_)>s@mU0*XL`if&R58TE~f}HO7^l{i2@_e8lJN zZl0HZzBe*D9@Osui*b^!+&r#xAnIwub*#Zz9M>g|J2vWhj2}j0Ti5jX;RQW@K14nGbM_{GVO%+v!u9jyv2_3Ea6PWRrbp($^|+1D9rNIN zoLBlA`Q2Z@_3zar(u2$3dVCgHf$KtK6o_M;Skh*Q4-9aNRz|+c3`rcs`z3 zkiX;M4#HpHIBCZFrXbHt-;W&QeUoPg;_Gvqw|4P9Yb*Rc=08X`*bch>&h2>r#rD+o z7vlYFXg%^Q=Y7yo-p>Z3IC4qo78hjbKS824(GCGJmB++ z$PsvzqA2KR{k%fN|HkLT@%^mr|JNF>ON<}F*A_mBo*?`)`efnj z=xc@VriX+dr$>Zep%*=7t@9o|PI$~6v}bMMCFtFSSEGA{H>S@J-jN;@-k*L=_-J}W z_)L1taqD^cl}GnKvG~TfeqMT?@pciP`!3G6zVMRDqw}IL@*Ly%{D>Z*52HtzCqd+S z{vPs=6<&ny7haLRPk2M+W)!z@d>`??mk~db@e}E`Qt;9AzjZu4 zmHytp$YU#w_-gc{bSHf^eR(O&Yxg6p8+o|iR#xk_xxaOb^&#Gl`0#Vc-+=Ka>GoXk zM)Zb!KIyrO{QCFO7nz@%tM$Zl8$O@$E6vZ%mAi5v&jZ$3wE{gSd=GsG-SG^0^zVms ztb}-X4B~4rzI}DL-GJ-&14}sJp2x^jjqC6#y6-;xU*?(J81cSr$nzHKKktGEUxLr0 z_wES~6@s^9o-Q7Eg#Ds_FYX#WP!RF^^!W})yg|q6Z5Yc_;Evpg4>P{jD7d>Ayddj2 zLH87ax21>2vL4RIv&?gGJoCSZc>Q~@XD7h@Z0G5WzsJuLJrB@s`u8VGeb4x(a3AB> z(jyPyL+CYwh_`Y4;J+G1^&jA&dl3Dcd?($P9d+(zo?YhWfNEU%{zbh0cRHGy&wG{I z8LxjA>!A6(SGix*`Q9(|{K)??^Pi^s3cz)q_7{2FyzoS}^G|d;UB@@Pgm_yX#GhvV zzvu>!tM9w}{)+erFE9w)C|!S!AKdmoL|iyWC< z-)sJi{NC4)rxBmGB-5R3t-e~vceZ+1$JexaarGXO*)Kt-)jMi0YxP-lBi`xUrvL+r2J(RPS6QpI}sjO`=uznoVy&oeO#-h0*kc~+mV zUlIL+l3*^8K;kLF7r~ylea_+TZ=&yHQ!h z>&`~H{|@3C(;LSj-rpYav&`*^`g^+$+;Ir;TfoLzlZ$MkN?#F&%^|{tpegZF#Z-j^0w6zx-$M}~K8k+yJ?4KMd8W~4^k95N_yPLA^gs!#4{;;j-59Rx z%-)N6vcbP)o)vxIfv2eFOM1RUxFc-!RC=H*@~me3Rl2PXTz@}0wJ-7n>%klAc)CB{ z>i7F0-hBqgwK4u&f95$3*XMOL3GTTGU(WcH0r1F0cq97F!ORnbC@jsdrNDC0ZBbw3su1~=SrU1#gz@W@rvqyIgox+!p1Uc}F5J*VmR2;x)d&JlkgdP$Fo?+{#0(RdlAO>VfCNLBL*Yl6zcoEX|D1ks5T2{Jry#yRUH$N6 zG>>a6ycye}!!WpG0=zVjdo2|nNrv}jo|w^a&lqd|lriuSkK2{~)nY6>JOlC9m}lpw zbmkdAAHDc5&(9x z!uYRxGrwrh1ilXzn1gtIf3#yNp7;7#XGPXiVLhJj$$mM@&n0~$k*6w;JD0!D>=_2v z_uV%us`;+wk$V(;9`kRhOaB0_>o49ME|2TW!vAf{JhPCe1?N}YWVpu*->Tbr5Ii&! zK7l@bBHUoR>GzkaEP>lbAifpP_wjW+mw3=WEt;Vy^Sto~+?HhZ59x8j_t2ff&u8F% zNABl~{}1)Z_L-#CrOfVwmT|pu&PDwdSmz&l9s3G?m*=%L8S8*!ADoX}jq~?7ujzQo zZ5aFbJq5>)h}WM7#q;;fos8G(PpfJepOGzy@6Y3&eHY^}_yatFbsnsU&&3?`;5}c$ ze<-5b-@HEx?SSij<{Z^-rh9n4`uWBzv)#=5HM;u5H2Qaj9v1CW>IUL%Jg$C!ub*=B zd6e&cYyYmJrwYGm=27F{w;px&;0F?;{zQKFmvB#Z)Dxh4)8S)SXZf4RW9)>hpO=sR z&ANqgvcDWYUwe=7mDCRtWi}p~E04}c_E%ZPkEi>De@ze4^?1mjhv>tZ$Dv+Wjh^p8 z)H#zrfgU^xU&DTH&hZvG0RMvVqv_uL@K__;|B(Diky%ikFPPo@-#X4ZKYMLpI?5XZelx6}2yZI2+&6!kuf`R9uMuVM72 z%XK(a^>1e5WWMrjMjm7AN2uoj^E_|1o4Jn-qn-8d9t5+K_^eV!$J;Qjb zFFckWFT4WXE&Mfls_@qI$-;Zm!@`HrV@_Dd{}j4i_yW2^_y)RD_;+-d@Dub@;n$Q$ z*S){c{$H_QKKKvqHebYlOy4bhG5vt>E%b}R_bQL}dp3Myu>+4=SdAWYeXyUjwoe>= zvGCXFA>nQ4*?+d?=}k`-{(*9{9*2Q?aF=HoG1*X0s)#R1PZ#c>pA+7cp7)fso&q`KA-LtzLxG2zMFnZc-s{GyKlDqXop(tm*6M#Jn&EG)#kv1IpF&9<@uZ7 zf!{H%iZFi9X1Mn{d=dTJ5xD&dT>n08^%PvET+CmW@n0;0hqL3j4d^FU!-E;flbe2E zHuh#t!@4)rG zz4PmE+yCJCSm)HC^qcS&+;99Cf%`cgt~37o2H2NISbtU4Kl^pKUHIubS?-}pYRI}Y~a33|(a;o)59 z#}4$vbo<}PqrV52`w{Yo*zY#RZ!z86--`1}c#L>gKIGTyZO5mKzl;33UuHjphwoW^ zu~9IZ-}3 zc9TB;TiogB)$EfP#5bLa>$~1R)XI(H`tn-OcfRuI_Y>7~W%I8`^nVTGOcwF=@?@T8 z0bRD|<1D<#3&ktW4FO|dv;fDUI$}NYr%mB(~AoC(jCI*(&L4v(cQv#&{KsUqWgqjqOTPmp$COO zpB?9QPIwV|M0iDd%o%GtG^E>wx24w?-ka_cK7yVkd>Y*={0sU5;hX6J;d|%@grA~^ zh5tc+Ap8;CcGlVs`EsB=pskZwjwXk2!B`&ldFh!n@HEg%6@15$>hm6+Vw1cfoqx)pVEeo%FH7 zkI)wj|Bb#;_-*=b;W_f4-Hr$^O5ga4wa&`)1Hv28uL*BQkGW{glSr>3d?bCW@af8< zM?!Hcn`#~MM=&h3;($0x_z0gl5T z3&VrOP^W(WR-g!u8!is7YfeM;H?Jt--DTkVx!-x^=5Y=7i#-}`7$u6q?ZUSeNBt8X zV&B_`@o$vCab-W=Q1dIZ{ba5e%)-?7uf=>UMvu8=cxp}^6BF_nW zNcc77*^Cm#v{f6UEo_heuVM7hk31P7el*?vtF_%`(x(ac)BVD?(GLjUPd_L8MHkkq zP(7UQIgZa!Q{j=CaQz&h{C;@&4fr;m*X5&dcWrC@bw2lSH-i^u{$ZoA?%5r1{rO!I zpNBXYUxN7`e}Q;g9mJzmRgdsFiMKgi?>8FJ?L4n_%=6?R^Sp`pQoJEt)dSBxTs*Gc zZ>*dT53^3)4sYkedh4lct>@DFT%T*f(|Ozt>3GiIs{s$t>+OU)MLWCHKUiRn=OE8l zA9oAaVb74XXa+q#w?8r0=Mu(RG2U*e`*G6`2(R=XJVW>!+06B!gb}maI&S}<#|dBg z9OC1JALM%CtcLT|-}8FAB-R-R=hri~!>cdD-JI_uI8J)f{f&@kFym{K!a7#IDAuv^ z^pvQ_8udl{?4TE=+ZmsuH1cc>hMXo0; zP=8tGAFJG4PmJHJ^L-ZMBW)1hnDH%bh>sKT-IYhzy;g|V&mX>~d+B;#WK%y(8jXM3 z8b6TkrR(_p+FK)DudA;VL>|vOaJ@bUl$+<}5_SH-cn9P4dfQIDfD~;vx<23Q^a%YD z+hIl_%gxGF+UbHHV_!%PpJ$kxuk8(4Q(}nZ;p2xjNH`>7`(BCbB{QE?n z!Sr*&Cnz`bhnYux%o_dsj`24|{0SZ33CB(5yvY9&j@vP89Y3!qH}ePGh;PRD5p)+_ zkI(zeGgjouT@?AtUAE>gNp}jbPEQoxgg#k#C;9^6N%WxbG4yM~@3hBt$JGVrdz+u1 zF6;oe^@hLA{_3HwQ`wA?hVcaJ8&(g)XnO@p&&d1iQ=aF{KJMDujAl}Y-r}JD|; z_oPMtZ$17;(%p2upWmt6e7@@AIMnk!XB_hQMSMKH{!nZFf|ZcR&34v#-lGTT`uh}L zRK|Myrux2x`S(ure+{EW6?oChSceDFXQ_VAY`xvU@lfuHb$otHuPyvIy}R(s^km_8 z=sw{&ieX-?6<(CSTX<#q0pX44=Y+STUlX24H?CUG_Y-xUGW*fi2jeX_pNE&WbNuv$ z@5+G&-9`@&fFI+yZSe}?1Ih4eZ2!OMVR}UlxN@8qwxNiB%J`A0&dmC2KI^xO`d8B% z3Qwme3qP#foOkvQa9n*Id9OI!Jhw6_P3ZB$JJFMbC()+~A46X&d=~wH@a6Oj;oIpkzgz47i5@5X0zFCiE&5{NMoF|= zKzJOeeO}h@Cffy z9qUr@>G(XT9LITD)YbPEhowcuPXC=APuJ^k1qatjj$3^lnMw~2N1c4_%Xmx=PJ{1d z{Ud82PlWND*2bT7+lPo>&2^xEO~e~1aQ&R;Of9&VuJg324fjn){007p{n|x*gF1*0 zOhJ53?q|NH`$c@Ex{RNQ_}i>=wRTZw@p_1Nj6nQlw)1MbkMmvMPi3!<>sNs7udjE_ zm7D9NGZlIAvOUune@?_-XS{0^;ve(4OtR<=l@8#ncp?qn*SQ(<3xOg28ef$ zLHthUpRC-xj=Mzse#YC!B3_?wxz`b&D&qSoH|q&8UZ3wi#`{Hl&W4B&kF(}aRBqOD zK*X^>ec>Zy--_0$lf3!kci9&l-P9x%oWpj{4q=`PZB6&{NIp%&sG2l}Got zbCD;J@n`AAe7L@TIbY7MBGmV!#QM-)xtYf?5ApiGW)tI$KdkG|_c~tWuT~2AON#i$ z^rpf)(vyYvr_UEYn!a23OnQcJKfO?fwf=2%r||vsWZ~!O(}droZx{X_JuJLnX|&H1 z;pOSJ|5@v-PcJ9@ZRKWvh1R0K{${^_uH4+u+r)nUCiB!6dH$n!7hcegI#Yzd7|-Wj z0UTGa&nw@7M?Qy_W<4n#;m%cX{ru|i1m;Pzdf#nu`%3syu1hO-!QIT`V*a6gzsSvT zsK0Of{V~Kx=#ROsesBoSyNo5sAH((eHr?ij=cRj&@wpt2tDmQ}>yG=Q0KF9J>D`m} zP2zmpO@;?~zB>NoG`MX6j$4GsefkNm*Ace!X68TF0MEf3Um#vz2VcDdH$*+3j^O*` zBL4di;9=4JTW_2D0rehfN?P=Y`g(nl@8<;9;JDLSPb>316LX#CI2=bmrrsMdJ-80> zdVIcEl)f6S<2yEj2iC){GEZSAJi>LdFns{sHV5(geT*w~JJ-Wx#wRpJ9v@x5H@lS{ z=DMfPw`dc@huEIim}j(dvwb35{~h!f-@>|ml>4H3bXU~X^EbAqoj#Xt7w!B+x!G<` zwzF=ZrcL4g4c7KtXS!Mkd>i4-&1tLtvNuCL+f#A>sPChj(dBcz@@l?kc7180+{_>O z68Tpmy|ILDY=>8)=X?e0#saZ!6jg5K@oz=EzE4?C57Tw~cPN8A+eMzf%FR3u9=8pT zd!6xN5&w{0@`iO?&07}vs|YVmuP?kNJzjV-dUxRo^vS{p($j>Gr|%O!hki=4)?h<~9K3RB#o-X|Pa%i^$!i&()39m@MDZC-wxM{7kEj>iLX0AN?HvEt#hb_jSIV z$fMtzovP-S8E-(Avx|icte_wcYbIj9l0_LfW`7@#(YXro)QLzQqpO_J8(MUaC z1}Zm?E9>z``6hF7DPd=>fg{$*|F>dMVLwu6XY#rWxruPx%2&=Z6Q zm?y|Q`nu304*88k$gjuw9p&cvdPJU_>Oq`YkBjx|_xvYEAJFAC7K`}L>1&0rr>6`5 zmVQlmh+gz>Yx`WKJA~h-dxYn%g!5V;yd*s&ygEI5#CqH&bcgUx^hDuF^clj((Dw^J@c!a7Tz?NPR(%iMypMCp`?%G( z-Z_3m{4Lg#@+Yr@Tu=1)UwjAdI*It1jNg14_X{?j*F^g0B(7teM+ND}`1yE1JP%y| zyjri+ybCe@3tmsBzof2Hs(z=a{||nCZRh%<-qeZyy};{i;3w3n_xVrNbvD~`B@MgC zvs2wKnE748%W(blGEW8O-(b3`)4m`1>$A>9EwSFZ8L#WPLJx^N;Z}$@ME&F5hTFMb z>FfS)^f24MA;-y^t{X^(>;S=e#g?~zq z7rvI>UHCWjX~K`u{lYKP(}mxq9}%9bD%$Ou@Z$6b!mHA4_pI&Uq^An+Ku;6ikG@^_ zDEdC(Gw7#;FQY#Yo^%N7u=gU?0T1WJK)weRx&U9v^&yVyq2pKha>jQy-;-49NrZXy z?=eo)`#t8->&ZQO;5_o^{az)m4Pi$UvuARJBN6^9=2%%chL27kNtEf^XTUu z4cnUQMy!#}^+7+c7_Z#SA7Gt&-B{tmIuqo&q@QD4i@G|SkyvN!tg}KpjP_YU&v+5;zXG2{Z(C8hd7TQw z^?Epu?)}Z`3#%dCE#gzm`c)pAh)?HvIa$vZ9=CW0#79JY54x;p1>JEK^;F^ecz@I7 zacgzVyw2lUwC7FbX8rE}A%8{I*|-|qN7v(R96dnSK57YJaeXerze#9k?yGqC3LY=dD+G?@3NoZobDG;yzG6 zuei=U+eMy-^u!0&I`h`SagB#oFHJ8h+%*yFw&QQqulLn04!{F1qfUKZ2EShrqF3Sh z=H%~z2TLM8LO-^V-xpy18uV57uupcg-L{m(f7lcKorG8;gX^IlC+|hyGtXmeorRIF z-B0&)wm#?iSiR?Cu4BesoYzKPcXC&S2kyc3_c}kO`&g%rFJP`$Dv$FY#Or^T_L6dQ zpBc}32JpP>{9N9XnidsZXOB*Zm(PWk)4yAU{inWe)>QqK*}C0UxjBCPrP0oM9au~E zmVsAeJq7AwJUB$ZmsM`&2{MmfH^wtQUc}F#Ckjtv9{VdeuAc98>mk3FuIKf5<>q|! ziac}Z8-=IQgTi;{_(#@peu!S^vDGipBaou>!hU=8SEIbF}uc>hr9si}^ z`nvO4XSkiNuRCAT9UKq(y7Oum#Cz<>qsPe?bT|7~kMs8uFwQ@ig7K{Hzm`Q^{kzYj zFfZ&JpO@)tIbZZXs!Uhp`Iqxc@0a>SU42f(c%5ez{hXM0e=v{SFU57kdCB@4s(#FD z-gQ+TUFRKWhqA1H4n0WM&n>U%_&SJh%=q!IAy1$#T>p;2IpyZOh!f-I2IHNz5wD*c zG;4r72J`EAcUHNXXTHqC_y~{dWIfGaM;>>5u^qazO(_@}m z=S7Z&$X`x)QMyNXW%>-^jp*Bjx1;Y9o=86>d?Y_UH969_?10?b(Ij z*9+5if7MAwywMWz`Z>cxx{vKYhb|5!F0VA02LAM5;= z$L+7aS7Od1<2A&0;d7gB)bBi)@5_a`|IzO|L1z6N4;@+ON#$nyI7L0PxUPn(BTpa3 z-=llDPQFD?de_X8#~3vm{i3fI>y<~3E7qkd-QjMoV~v@o{Cn^a$HU9?Im*pC&yBM7 z*Gam;e$@RQ+k^SpZhGELrF-bQ{>Stny*Q6Mq$l$D#QNXgjq_c^aae}&>!KcO#ErG~ z@1Kl6$L}9iV*J~^kY_jZ==XwVMqT~8nYk7`E6p{cB3ZU4S51-jVJW-k-iv_-J||^IH4={LQ4>h5P9);oInog`XLS{e!z3+Ef2~*}lW@NH2I* z9y_)nKK}~71J|Etjiv`W!H+XOgKq0+jqmgZ@_0ML_cMM!J>r7LvVW_qb;leJ?zZsR zysm|^oAXY6|8&j9Xa>Dr{lfbxM-t*6F@GWReoEzWya!J=yIcKDH|L#ldvExD=D$ym z^nt5kAN}k7KIXez5BIBf&TO7uR~|j?`^cl`>FZ4}-nNT=`R^{Dw=iB`AM>mA*39Fl z7eP73J1S3R#~sA{2Sk1^-JZ=luIABe3tvr-7rv9;UHB2YNBD2_$--~b=L^sA7TRa6 z@S^nX!Yk8*!W+>~32#S#B0P~^)VyZ=KYt_X4&l@3O@%L^CkhYHCkx+4PZNHQo-X_* z{giN{DcUVVcp>@|;c;}^^VaiiNG~VcMXxX1TM*;cJpkjpH0RMS{(G!Jj$3_ybg@33 zhd3Btoo$_{@@F=lC-bq`ehTwc(cynxKnt2dT2P}_5NY@d9LS-=f^n40lHuK z1A0h!;sxXh(Dgp#B;6@|AhO2D~wMN@%QK{!ed(Cd>0EZ zK~EQ6jebseWBLQ(9qC1LTFKPYj|eZF z2jeg_#u{IM-)jgme=)Xy%`s|xs%wIaa1b9Ej?;Q#EOoUIO&l&}{Gr!*FclKbsg~uUYf38t&DBR$2_4BUwUbvlJf%Pn+ zyM$k%dqtk66ICAbdOaD(Je7n}Z%KCu z?@o^wK7{TTK9Qa({4=^w_bb!9Z0iwku$}*+ciaH?vS0epM{Z;MY~<0OBYeyKiDxcc-^W$reP4JUybSYr`1@vI z#_P{bR?&Sv#Q)6x9h;2%N85aOQ|^9~AwbBM&~G3W)d%YJ6t4 z4m{$xy(z|R-qx7E#tYW@Sc+aqcnx}O;Z5lsg?FKQg%6-_6h4j~6z-$n6uy$4H?Ot+ zujy5UAEdVyevzIe{BQbX;m^H;c3U94Aiw8pTa5nI^U*y6N_z`j0Nxx%rj;o+)e+49_BvTw#b@)@(b8M+j-nYjCa<6M@0UQYQn>x zBaeQ*SAGoh(6=*BH{M5wnEws>^=pi0J^H!juQRc4v5P!~RXb-kp6e)&uAgkr#>_vD z9;EC0$HVjpUGMWtwLw2_6#ZC(o-Vv8{fO``^sw*&^qa!R(X;2%J&qIb(TfUSNp}kW zn%-UbL3*n2!2_`VgqB#x&n-T`ax8`G=PgD}j4MA~uZQ*Mwq=Od&#M>a!n)*U{{HNj z?BlS%wbAwXzo_cWtbde^8ulEnlU1*;pdlOUu0X2^V0W6%V*(vpo8bD-}~y}ql@^RbQfL6f5vqXCHykI&=+v;3b(O;4F2egHLE+bVKj`-(&rs%n>f^e{dUnu% zRqd16ym+SE?Dq)IORsy~+rgb{kYBHR^XWmlUibb`ZhjtGMYR7TdPm_Otw+B&wj#fN z&UuJ#UkC5Vea?&xi1)6ydgYDqFzeBIR@03D;?vj;{Q`*h@VNSV=cflYBYqd-Z_r)e z!1epy<-g={H^KKXelXp>7Otg$2uON?I_#nDp_*%N{Yis_ibVJ0Kx{CZ>;a%ww;q&QX zabCyiZV{j78m~vfo6%jO&Ixq4@NelJ;ScFS;q`v!afOedhlOvWN5pykMfZsMD_%$b zu<%5>L-;bfT^#oU-7CDvAIR?$-ku&1KARp9ew6MPo;w5ijUCo;5>IyspGtQN-%qy* z&+$LxcM5Mx_XwXvw+r7(cL~pS1NpteopitOiS&T*ee|I4oPV;YDxaxM9{~=lx^(TX3I-DzW-#D%z{9U?T_&mBp_+h$J`129ucZhl#(SxG?5%iGojr6eat8~BU-}Cyx8Z7(U0|f_VMB zWhy-=)}_64m++_bkT~D$wZICPqXRIiFn)zJl{$K z&ChGp_n^JlIoRn-x$p9DztNJuW*Fil6A-WWMUSJN$2c+%ceu?N-)K1E9U^`L-6wn> zJym$F6nw5!nfdj5q^+W^e(y!pKa(C5d9Kpe3h%ByZ#CPYsPJ9%bHdNe#eG?j`^kzt z-!1b{r=NA|_jPYaUF~*7o;vdp-UVW`Ub>ynF@7xL%Q3#hr>H+e#P^7L z9^)+EORT~8<&1ZWdalvqh1dNYb#ARV$74fw@Ab)_KoAKl6j&G4)x7!Kj=DvNb*q>jc`-T5Y-zYp!N8~vt{AK!G z;SPEgoAo~KEqc80&UCl%_vvGWj~d7OtV1|o{r#ZFd>$S;057Q9hrfg2*#}o&N{s%M zk6`_Ad!VSf&##WcKV+WXwcwr~;hmqyfB3TwJi_BnW_}+(Uv?iuyuN-l8Oc0! zeSfz@J@+u*zpXwW>xrK4kD{)A=V4-6^niBO(~zGpAD9H!{eE>S^2qn`Myc^^ey;82 z`0T?xmrXbC6N5Zop4aOOINv$mk{G{&?&5gUpBvg2B9HGd^2D<}eTz`f+O>Ei5&zXN z#;X3!?7np|`+dIX_bv1^;d|-Zg`cMH6P`goCHyh{n(+LcF#hife}$gCfOVYLrWX?4 zf?iH|H+sDALG;lI)M3BOH0Cp<@IwA)SLMd?OC zYr9pZ7ZTox-d%V*x<_~-eXQ`2^cljdNz2Vo!cD!e$oyYQ-Xk8me_n(z+v#lrj1cMBgy4-20`e;|ArJ*JSg z9k$X-3ZJ4szc_&vL;ntQ{f_)x<1Ac%@8Cnao36jdw3Y5Sj(C0D9L&!z>>+pqu5ShT z`9+ZNdR=Wp_t5Jxei5$=wv)*74}DT?tn;DM@Qd^_bPrvBPCAm;kpT1S>qUU>r0eTi z>AJj*oI?KF%s=*&UgH+^ z|1cQq|7Kp-^m~9ghM2DQ;ghY`ug{kv{@cga>&1EH=5gwH3lMK(p6@w+_AP?DFCdS8PJZkR#+&^Y z_@9iQJplWVz&ZFVx=ZgjINuZLuP;Nq!T2rzhpu}Mo1y;yI6e-g_*RP?l4_7cg_abG zjFd=eMJdGUfON1@se~ydQCca9VnQgDr9!3JB1s3Eh*C@>>9|Gb)Nk+m^?d)XYv;Q8 zqwD%Uyua_ydp@W6%PS0;sJ@)U{>@8`x zFh3pq8``Z`$WvCk9S`7F6};s4X4GDwpW`U0qU6uCf|um?zf`++KHP(6B7VUeIwyyr z;_dff?7|)5%}?X|1}@%9%{oV2r|Zg)N2}6t)=ZFRaeM!8cAv7Z_kx0#)E|=HejoUi z1uy3m{?{Wq_u77Y1DLHJfYz^C9}l;;}t)`~6fK7O0-YuX6r53+E?1iQ9XC{dgL;?=>}C zs677f%2S7STNk{XQ}}n6?wMCADg3afbLhB!(Wo8aa%`gR>(7dD*g)c?7D~kB)$c{qtI?y z`@{Ft>C9H0e-Qtl`K)5E*|%gJ72dZzQS8mkA20T^&1V+-W#%)AeT4aA#XiM+da*Ay zf3(;?FrQZJd(0mx_6q&Du7``gp83>b?_mB=v0rXJrPyyXPZ#@S^9PIlDf7w2zQX*0 zV&7f&z1 zTjKGEcfq}g_rsGBzY$MGd;;!Ad={RL_)Jp~|5Cf({i}G}w_n5a zxSdbF#WNBA)%-u@v2)J4=hP2L;yY63Mm$FR1Gb;z0bUXR5zpeC@xLsOqbDr8&sKh3 z?Yg-2TTR@<>yc;n0s3cQ!AsUxig;VsZ{R*|=b~+R8n=G<0S|EdenqAJ%I}m@{g%Hm z9>Xnvr-GN9Z=KI|zRmHTum_&y+#7GD3+s=&c);~uQ|gtSg)?++wDaUm_;lRPjbm{i zw{zx1Jc--S%{_uAaH~JSJ>2?d5gw2D2g|hYxvkYdQ>lL@^DSOpZvFW#p2q9ZKPS)E ze8^T*d;@$UoKC=bK(;{U#dA_fpR)+-oGSz(a{Kw0)_4j(k9PavKJ&`nlU$Fd@y5hIhP$+D{r@cP z)ls|e5)$kFR4~!UJ5_9_nLU&#DPx0COto^ICv zXUJFM`wr0Vf2HkKcbq`y)i%Ue9#C?>D4ZXtrw~#4r$(t4eqR&uF>bV%Kf`|Osokac z7kK;vxvkTc)ES;F@5Y2^R>)u0xVI^I$^FzLkIkQ6cmlWk#V|aH({0XpJQeXLa6jV9 z@N~pK#sl2u&(8%f{r#)kbf2XgoI{c&Ue`(T`|!bByjHm1UHxO%)d5fA zotakyO7mBCLdMHwyoOr-3zf(E?M^(8Tf37>^VD^&iqtuu`1DQ6^91d#E{!j&>&LYo zZNJUo0j|GwoUOQz+kO9QJQ<1q8BgGL-~R`Xz$nEosOE{mzu9RO(p7pONk8_2*8UEBt zdFE>QT>RsEwBP2hlD~>C8ZYQV60{hWB~&l~VOZoiLlbiqsRv*|!9 z#Xd!vK)iFi+U>zP^BFujR^FC6Un7tIr1IQKog0V`e8t=EmHG}(-Nkh=aSy&i^(3gr z_SLGmGe`MzAIt$(xXW1D?n2dcVf~8H%_2$X~cOOK$hC zQ^slD#)hb_~E1n^by~mh}$8f9jSv>xv@|;5cLEJAw`r#$! z)nWEI0`XVk2Xp=m(#m7=#O1jli(5Y&{+g~gJ4x~Puzruj6O-jnQ%_smc~Cx;cCUV2 zc|!8r=Nb#}fa|sM)ysGmxAnUgkIhtmwsU6>?&4Fav+5hv|AgW#|0#G5x98%Xc!*p6 ztMPoqZ^a$P-SSMpW4O)3*?1a%hJJe)_hzfk8TfiU#K+*f@noR*_wnEG6yt8^_G7Z@ zhx{DH+x%>a$LGpz-|L2Z_yYEsD=g2m#qoFG&U5lXbljA}`Ymg}eZ1hM@7XenXWMXI zDqZh&ogtBP><0Y0i2oYsy3*vijDFa9fOdD$uCt`L{&H8Uo)~WD_IkLBGp(G{@p#00 z;$FmWz!MRF08ipJe`ew-d@k4ZH0~}{{a4~|;Ay-)zPaEf_o>t(?YH*ay_0zF1?92* z=N~+QS0Yc1tJFV9-1fufcq)?TT-=X%5>H3`Hax&R+MS4p_)hkdSp_e-F84WIm;UQG z&k&z`N!Rrrd6rxLW%3R9YCN+-Zu9>$@@Jk=W_v#Rns|S?;;qi#@hoopbET`*Zw~qI zrQNCpFR4F9{{LU6#HSI|96yeBx8O0{?nhtY4sP$I^LWU(oBxC7a66A3GKlNKZCxLUXYl_~ zkBbKpZ(8t@{p!8B14<*Ue>xKH6L0-<0iML|bC%0+54Z29U5y`tv)www@h#74T+Bz~ zS={p6hX=U5|9J$TfZKe262BF<>v|4PMB-n@J>2^FZ9Irh9o*L4UOe-(dd&KHKOW*P?H)Qr4WDN>bmUteulkXw;$IDOV;PMF`{-*nv{hrkj56)1$oul@cHO?KT`2Ex!yDIv|F4%fhQl7kFx%;JYD2H$v?t; zzuL9=KM9ZjBi}&$OgvprdF;Hj7>|9gcpLW>xU&N%&uTpNgS;~5`48~;Yx0MP{{hc7 zR=dOT{kYer_`0g|e%0BoJa)Z}@f7pH-j8*`<1zBkZ+-1OZCm+IwEG|)Y*T)HOTlrT z!o8jH#>BsYr*J!0Z^o0%H(M9GEl(u>(Yzndo~e55etH5Po*=jU9v;v?R{!;Q@_$?} zb>3j=NpU}aiDzmmejxe(z@3ruYw)9%YoBpz$(Q1-@bt0r!p*hx z&uBbzy8Kk)SKvP01pf-p(Qo!WmIwHLV3PG{=d}5F0=IqjWjuAT+8xWh-GS#1l^;X9 z|9e^2<-ei+`2jx(Pj^zh?W+kqcUG~d@OUJC8lH;8FSGpDDUUs8eS&A1Z?^A!iwESl z`&tFwgT;p`kM+;7xR)%hvlpH?Rc`mMoAID_aeReW)jv7r;al|2(YVL`!o^$SsmOSB z#slV?-G2w-F8k+N^4x|e*eC6}?!j}XsZLu*b1e_|7wgYg@i=aIzOnrDvyJaR=8=A@ z&HKPO*K6n1lg(LQmgg)y7_K^B=Ec*6c=jvJw*_49C;WaS=PiXHC**9#w{=~EA z7LQleyLsP5yq#lDz&+-P^-o{ip&x7=ZN|e3l;6&2Kj0bKwRw1ueV)}#@s`KMGgamG z`^itk9s1LrYdTvV_6PGz@bodtQ+QY{{c{bTpdP!AjK<@U{Wgtz%zqolz^AqskF!^4_y}iA^?OdFH6rS!aXB%^-;9jJjx9|k@ z*g4@-JkwQq?0fHd+__Xfj(QHem-lJc$REWU;qGO{@n>6nB+u1&K>gMa6Y-Gyh~-~| zXCnDG;R)*RL_M$b-Y#igJXufBaX{0=7;4K%c{uuko33z8b74fNf zaFX(LCw?6srsb>f*?c~mnIfNp$M}3U;9OzPcPsH&GsVBehH^NcZ{|23{{K0j&jq~7 zinsmkP5ZncCErN9?RlRc;*Ig1xX1OH`*@Q4Hs8{Cp8kB7JdeGl{>;CsaX*9oWC`xQ zF1Pwu;u+lfVJ)7+`;mVO9_L)q0RI+G;`ToFS3H$fyY~5DY?bQFyh)wp>5u2}EAiX$ z*zQ6 zp202u96YwJxZUNJAD>D6>n;90#qY&;n7?0~CvSQ13t5lV*U%3iEB+7WLkIIsa+?nq z;W^yKWgs4K&N+vAhU0nsPW*A)->m#E<0Ht^4NvV>{5bq>-1$as z=e^l@EaI=@E^h5^!qXAYTmC)D|Nr~OI@O=RPokdIxQ~yw=S@7$`wCl+_gNm?`hTwF z$*bM#$g>#F|03UqZ!!N>zMFb>;STS+tlho1i`#pE+VAPQVt*-*eO})S&;2d8^XEj1 z=l#zH+MSQP|0;ef{u=K5CvU|-SufShd0w_UkH?d^t;h55828yDX}2Gq zjog1n;BFP&-~S?hvN_L{r{MD}4{rO?3OqPmdG4bA?RdJX+&*Xd9nV#h4jR;>*9Vs8_(l5KYcvL^S-U?hjBOJ3-Ki0nmX6xPCK=` zlKr{L$EqjaLEedZ*bsMl|7P`c#Qlh0j)xH+i+j9(vpfNwiM*G43C~76#B&j^v{Chk z_#s^HNq9cuJ#pu3U9ZKD!ejU*@=Uipk@%&S=N$Tt_zidhx9j~44{%#wbvCJfr?c|B zO`cQm9By@XHRrvJeQq)W4|v{Z7@a%u)OpHp=eL=b2e*1&!sFeF-w}$>9>dv!Q*%%@;`(p zahoTL@Dy(2@(%7td^hg(Q9XmXuGnX)C(}>9pZ-79yubW;>bVe44v^bCN#a?26!AA& zJnxOqrQL@t{}sw(zt8_k+`CFXo_dzyxvS+Xxl!ftaH!n+IgjUYyYIxd>Uy1P6z<)t|HYd*z=J|N1uNNjxOKn*873S=_Fx&UVFnQ^`;KwRkS#EAiyR zif=}I9#2QSQK)F7h)>3|5&zBdOjn)yuj3rMOZh|G zt}B5%k15jpF5Hdyi@1kdf0qB6afx_S+{f+w*#i$F@z>+djNq*6PY3d?6 z=zC?E#mZy*L$!jJ)RW7q-4l2aZAg5ac$@!mJdM|)&NJ{t#5?0D+@9}x;4$1jFX)Fm zxP9+#Fdp)KHf#4rJcrx+x6ycpez5C(98cr+y|@*Yhjy($SK;}Hug7ELvFmF0q~=wE zab$R%^YGYw_47mYTR%L5x4?(td2-l9e#g_x;C{zKZ8)*Y=q; zc!qe}$2Q<8+}8Crizkoy9z2a(o_%-{Kb|`O!#&*UtbDEd-^HzeYT!;J-o?YnKI}42 zg1zd`j4eiEh*WNR9<~b`jSIhHy@;;kQM z;(7cs`r#Qo(Li-xT26nl63-kje+B;lPc@SFP`DG~xrqOQ#~T;NSG-RBna1sXNG&{z zUqb#yxZ6Z|+ECAFc=81K>BOH?@Y3IN_~yJ)N#nhUkGD{K6~=uC9z^ooM4sg9$}@rZ z@x+J3pG^L##5=Dkeha>U_}GbR_iXB4PJBqbPyAcNCr?s*2mE6^i1=4{h}-vqe!}BT zmB;+B>$x9Aydj>$f27?uc($4HEWpn%cu7A8^m9;2f6<5dRCC4K^$xW>C(CXA+=09C zVt)YlBR&fcal5Xkaqkr6S>@=@D|oDx{BL}n`KfY?|IG5^7XQ8ZX~lW=o3}3Z!*9_2 zcz{^AGX-8S>YN5AjSpxn0*ExZhr0llVj5 zRQ>?B&u5RplN}WQ81X0Ljwf%7cgEwm-CqXa9{wotx8fn*fqr-Zch6G(Bk)rT{ZrQd z-=W|o`*XaL;*TZ&Wq1O&`}=S_g&)Sc9#im=^H_4Z?jtr{6N&fFQU1Fts)5QR)T34$=U?2z?fg@DnCf>UUK4k4n^*Pm zZy*dl`F`BRZQuK_FurB&C!aDOJmT#f^*f%xQ?z?TO7q9LLG6yC-x?LX zWIu_o(E76Z+=BS@aK&$AygCyfBi`0s4?G{)2m0YT-1eWrcqS5mBc8@>y-a7`Ca0*L zom^KNe%>cNLf#X9#D2bJl)Ni`4nNNln;^G-8-&Mk+gBgM^Ek%`=VLreKil_0|6rcS zCMo|Zw0k-~$B}ucxZSC^Gqu<=cs>%p(S8ns{3nsW$6NY&kl0Pi^9sJ}F3oe7ez5)I z{c-X%{uJ}!?7QW`ZOU^a<9-Y7&<}(=kDA}Cc$>G+;E8+XENkZtJU?D;^?$!i?WPz< zyFa#nOYSi4Homp(dnOMk&odNs3!i(sv}^fm{-`{8^4s%EbKIfd%sb;byt1P|m*638 z_lrTe8|jC;a1XcnGYe1P6WQOES^kl_uBG(<=ay%z{Bitei}&TF|BO+g)Kh=b^?LWn z|0r0=pRVTg|6H*%5Kq!?lkwZ|d}JIa<1X{T*3o>+AMq@nz%L>HXLtrb9RC^5M)K6m z>$-Bd&FAL0b6>JFgN@?_cnr7w=Q=!&-%Y!d@GNfE^(3B)_^Wt`|3jY5<`Y#V^ASS@-ew+}C{KPhlT;>mJpUou+nA#OIJdKV9CCI$yJT9xL{btsdNE z-`InvW+=W1KH&g$PAPcF`7@ZQ_`@oy;rZOJ{nvGVu;-~Icm}ug|4KZK+j@KlPvUmp z-++g&DgW(i*6F%X{S%w3dg{hPvhz5AF!@*D_mRi$ zgR96BtWus<%)|Ff;|ssPZo|CN3@P$#AwKh};@9Ip;QmVa@8ofAR6qN#%ikpaa6Ivb z{6WUCM!`$p7rm=?S1@3Wi4WgW{7UkiQW{_Qe1z+=`G2OxuU33_>gi2}s`yYunMqqLZFhcR}Pl_+cx~`4Kf0o*DtRP=Qo^5#c3*}i#f9}O|TjXix;XzAOPjV~m;w$jnCvy9FuBVnNK6Q%PeZkS6 zb-24z@q_W5cp4vu$6rvM+^>qa_b0!-B=_hCTX#qEJe9>yB2T{+iqBS3J&VifFCO8& ztMj|^FChLo^B?8*`ybZxy}p3?(}wu%c!=BgXY%&_z^|0&e{5I>bI#8lsd~nfr|NI2 zGf(}G;wRzhjmpy&?~dmpeia_ur1(p?-kb0g>;!owNf^WlbiVf zyPV^+#N$;Ie+2QD;2!=qp21`PQ+x|NhbM5Bi}Nj>#9t%6)?duG!<5I)f#>0gh~JL; z5q|;C;Kx*=fxneMSws0xgPY+2-jD;|Ik(ezHy&#w?|GOK`FOmQ+~!pp&)_%G z?xw>1uB`L+m)r+8t=9e5%Ks71;&$%(3lH#WJUj7B#4GMs{Xq}aQvhRv{WA}b)2^-Gm+*XlACY9$B>Ny*C2g+*_{{Ze?A-{w9{JiD4O5U6JgZ`r*2FbI; z55U7A@}b1f#1lj1KJ~nX=kRm!k1hYTitmPhiKim|6P}HD#lo{-$$c<(U2&eH@FZ^Y zswM76yc-@w{3<+)+kJ2%9!BDy#GUI^kHxRT-H2DbrR@DAR`8PR@`$JVohEo9;vSxi zcpp3!@mp~pxBFKbPe*(%9^mU4uU9Sq4Z7Y>@elFDFnJ^V3*5(T-}nJfX7uOZM5Cgze(}>uj4$6CvKM5^JdoK@%H5Z2zN&+zA65v<+)Y<2-j8ZR@LvXRXujzJGS7Z z=R@Kfk>?EJL*lLebBT9vSN<*J??-%|{;7cvA>J9K_^M3MvBZ1t7Wd~Q%RgH2-x41X z??>`KOMJ{%{CC8^Mto|W^4t09UE-Z_iocJ2{!`-9#K)+A7xC%w#qkH z&jl~(Pj{l?x3fVXPkf4aJI}}Q1a9-H9eJFz^7P_?p&RiNh_~ms-j<*Kv2*E_cz_>I zox|{jbHipyByEr_IcJSJc#&u+{bO- z-ioJi>!00t0$3D!wrrpkX0=ITA!sEF0TYo%;+j<;|hpfB$a;MSja;XZETH5qqtyRI2{61RP3 zKJG+(DV~k&ORwVrZuP9Q{J5=`O}K}=ZDv1@d`^5-hgtz6fuxHGTVw^%&hn)v;AHsVv) zD!;c@d7dk$|HE7SKBDkN`E;9z{JtRf8F``X(mx&W#7?=r2fGfBe<64W0}9ALW;kzuz|H5Ag@_9G;!8_`dkRxVu1Jm;C2%r_P1)dx?Jn&qe$r zJo$8S{)0p1$ws^#9)C*lJIOx+ckpKTV%(+vY4{&_{$1tyvYh^+(U)pBMgN~ld@nrn zzTz9>58+|NU%_J^6vvm}L4JHJd79&S+@2%);NFMIqyIWi8qeVWkmn=Z|5%Y#%IPl- z*{OE@Pvv)V4)O5V=klw`Gt%Pm-S|R0^@ZX$<2&)hHu(>DgRj)Cw_ScwIsL^DJP76I z;`8zB4*C7$S&gSR%I)7{`T}>h$ZsZ3CHwhq)^&ZZw-uiHTJfI~Kgj$i`B2VX)A8Ut z`4;kQ!E?XL?R(2&k^AK7hbO*~uOa>pJRr}!a{7y(agTX&GVvp8 z>G?7FsPfcd-@6C*XUa3Q`!F7#B`3Y}6z<{Ylm8_=9r3sE5V!ltMm&$(y!r)CvR`@R z|KwQJA3U#m?B6@vg~wQrw(fq%y@(%jobvc@D39G1YU64A3C6cE9$%$+`#$Gsc(_J> zc{vq&mHB(}b<{r<&#af*bJ-%x|B<{a{olb=o%t{2_I~nbJp4s|0{N@dQ@p!ZeoZ<3 zMOQq%Pj2^xNqFK9xsA&#Jc&;t|1vxuiQj-b+`s5H=SMt-+w)hI`l>S?iLZxy5kC#j z;O|rDDBS-~^^c^^mvG0qqEv?9zvHQhw{4($Lfp<9y>Pdj^4R)qUpO$7^WZI7o{KHMyZiyx#g%xxv%EKc2cD}Xe~CQParbO_rSkfVmvH|SdBB6^`{rHcM-#sb zPq&osBLCl(|44ad>Zv(e=XUQyJ)xXLd_COF$?bWn86K{e*CM_xp2clFo`VOtJ@53e zJhW^3Oh4SAU5g)rr---Dp+;DKydL$8!PB&B&+ij)AGhc9X?P5`_jpg@F8S>_ZV{d! z-h7$G^H%BnvT@uqk-;$84`?c(db5)W|u+<6S{ z9;Nsl)H4^4)sfrhdK>UKZsYzd?%_7ys#a0`$w;2&xF7NEc!1k^{yIFwZQLi|dHfgF z>9gi_Rlm)v4S4Jrx#jr_cX6Bl4gSac!EIbT+`~D(IsNcNB>r|h8S!a&3O~)}51zq) z;YPl}yq@ZxL;O#czrK7O@ih;l{zh^euaj{v;^*TDd}nzzFx=u#P#*i-e=44ADz|=H zjHht>zQ@OS2H(Jf{1;E3t2{q4j*Smj{XsYR-twxa3m#9%hv7+!zexTT8_n%_YOuT~ z`KRN#A@aHSV%#4pw|!$Bp2kn1|Npi;xP4x5;t{GpcCGT*{@e$T<88|;(P%t%z2X~^ ze=#25UGVjI9=Fen_u@`Ud2FAl6;nMvK8QT0<9YmId?20}t~@sXAHf>I0-lKES&kZsUwvqd9$v|#`k4BjoW_mF&^M{j{OeL;@1CFYAAmWZ$&>e z#ACOpUAy0P#glk*;s@ht-1f=)@Bp`U5#X7KFUPaE&A0dP_(;{$h<3lllep!tSX0-P zig;t(#}B5TyW;6vmH%e)UxCMNlUqOEhP$}6o5tf2Ux0hKod@2;Q@Hh8i2D)$6Hnvy zsI&Z-vgg&I1uvObS>mnE8h8#L&qD29p80l{uJ;!Drym}UlTV@DYjOW>`LXyYJizTa zdOVLeBhNP6ycH@=8?y0Q0RG^U9g3`0r`AHJ*P&em?W+JluO!zMlAjcx<}7 zK0eOk@n7)A%pX&H7XO#;GvukqKEF7u9Q(t=itj`Gad-~5=Z=%{JpL^49q@qbvh~>8 z^5FKK>RLR+Z9R^`of)cUC;1=2^LUJYd&c4)FOJVzJidxN8}aNDihqjn-GQg($ZL}S zXFNSu-WPXRU-^0RKgz3t!_61S|0TYz`P1_6SdS;-;dAnxcso3|L|%zJ3ku^~)_wB@ z#@%^A@#VSRkMLN;f5P2}A2C+@WIW=h;2v)K|Jir~w{zO1cnY6GK{w&<4oD-2WHL6Y-jrbX_5SHTm1%i4T>> z>hFnXal5|^!*jUx+hofh@qA(al(mljW?toqx6d6a_*xh4deyUuI-euIlat#%wjPf~ z{72l4c-2GH4{_YqS99Epcy~O3^ZL*kh9_}*pLQqi;{zGrhw=PJs=q(}tmXe${vg-; z79Qf|h~Hv)HY&a?p2y>#$nAR(G2YuG@cQJhU+Cwu#^q%C-zUBY@$K;tx9@vgf;*el zuATpH#9cf?p8N3}UKM`~&*QeAEHVF7`5z~K4W9n2*mvOZt@2Lv&yTqOx!lI3;+>jr z`7h)l`H#YL+vL5-(*%!)^1JcQc=k)V-8Xj^&I2VsmlsBUE^j~~zO4Sgi9F6uu@F&oFv7GLhl(###ne|UB6Gfw$pZ;B^ydk^r+0s3t%{gWjA zUGjG!PrQQi+qhhgXYm%qkFa_wD&F?bDR?a6&*3g!gFNrx9zF)&jc0M|&x*VU$l>u5ZQ+qmCr`EgtCGx2OC<+tm71~R@*G9}y0~|^d=~Yz#Y4OY@d-Rjzl|e)FrKNdJP+V~3;kc#edn5jm;U_tmU*R- ze-MAC`Q~B|%s(miHRhX&{ko_1J(k3gs>jZacjL*3&&5*_e--y4zN^q~S=TlHd9@qV zP`kFi4yvR6_sLU-{yg|-=1EP(H>DqX*JZr$6Y=~p@+|o;!mIOr5}$b6_wom*^Phs3 zyf+Jox6hYr6n=qZi95Abk3BCp$K9jktt+bGGYekwz5VP4y-BdoL%R~6t*>~SpBLe| zCh|cX$ZjA{KpuPEybaIc)}MFdK5pmF>PM-6oCd}1o{YyL-VOKaDZVP>@*tk1etU2E zG#)lqyxmVvV7yYt%MWK<7USOO@-}RUAL4oPj3<5t{ zx3LfV5kI7f@}zL4q0;~lBJtz#tfzjnbK3pQspm}jD_rlAQ|0Ln@_O|1pSa8XITLqn z-#$k1pH@(!8Eup&8JQ0&a38NvyMx;*-fyQoU6>~i7Up?b`^+)y8~IL(Kb?-K#=Od% zC7(_Hj_eOv+{W>0Jiu+dCg2&|-tRq9Uv;Kv*UlAd>7S5(w&$kpxZhFr*!gfg_Y0r= zwvOiF>4+!kw>)_~u4^p)PZv9Xn4{l)L*-S>U4;=^H{Yr-%e|)_$+nWIddreezrUWX_ox z;%%Mo#j}w-N3mW~7peYfER62B!+6>Kw_iK1i~4I(XMhLvo2}~?@fda5I$DdnxaDcp zUiov>Y3sCoVZN2MA6{hhbExWXQ$Ym{V}52n*399!;oOe98|C(%Z4zD^w|;&CKR6Qq zJnoa<_Vbr<4{uEWti~Pu1bjUn;*Idn@WUeQUd(zA=^y*v#d17-qx#`r@_d53^iLD~ zH2Ob1Lh;`*Fk^7%2D$ydg0JxGF!>kcsls>#DY<=Lr8l0SU3=gAUE#XQ8pnUQ-Z;2&I+Gi5Dy&ss%ev-dk?Y>Dplh{wc&_xj?v7m2T0n1^M} z+vAy^smQ!-i%-YxT+tn$5OJ6LLh>P9ul-(;6zexPP2QS*yWQ5^BXXN3kKrEibf@zQ z?&9{G^*QcDypD|{`5VygsW$GB_{;DFZu4yvp2Y2a{#}eqfZKh)hmA{G*L5oE;>rW` z|BVGNIbX#dRs2`fc`xovmp@OQN9g|y{cqogtX+rsKTq*?ZuE|3p3Iip{O^sYXUXrT z-7d#5&xto*%YNlQq4+zA|Au`jGef@G>a=|+klWA4O=Dlml7ByW*3oY<>bVI&y`$=h z%~2lP|8K%Q-1eW~0R6ng`tvE}vCm(!xQo}P-H-7^#CPL9UWe;Fr0@^OmYgSp&D#0v zk>|*Qm%gu9pmyy(-kA90CdKQ&j?)5{5Cuu@oBh++d2FxJb~Lj{{o(j#J`27 zaN9R>cpATe{<++qA3xG{-A6z4WZw%ukoV$(TX7z9a`JY>x8>a8y-z%TJ|5C;58B;@ z=Qb$*BmBOzw0~wkmXpTWUZ}sU`Bta4;&Y!Vz8-n5!t-0?)}Q0>^!8$Z3eVv79&)Ya z|6K7e(huL_&Q`g7-{UmyYknxV^U^JNmO5=5S8@LeXxGjyOBk2*C(3gt*L5-XuPptO zqn=sxo4Z-@Q|P!i@htsd_oMB&^Qq$PIjDRm?xzty0Z&H!96XKN^ zz1;4nbMee~a(f>C3U_{#+vhd$V^n{FdRmgdA0Gc!@n7N39;$Us-F4k#^{8NZO z!c}~X`2Rmw*Ow=Wx95Trn1|V&YPSV>&aidOc7Ubxf79-d^t1JUUG|MU{xR`g@D$z(-^uz7smJ!!L(W$Jc+4Mr zpVkuh@oUM`4|mDm5TAtSnJ2yQWq5}ExdQ*l^5oV3c1~DcSQlm8U*5NMMEoPK<)IYI(s?*{d6}%)qPQ1z`hD z{2$eM2>*wn1uq%LRAgLkCf@r`@k6*_PbNOib=ka{QR>y5xBp8v3`DreJNH!@hfQejLvE|MgBG9f2Yt7W$mjQ3SRO& z!=W{&Q zU2gZ&4fdXmJa*2h$n$0{;y2@79p$lkJ_C={mD_vTH}Ld@ay!@khdboA`|owOE@~@& zG5u44&mFSVZ*|VbGvt4c_|&*V_U2$Yc4h z=5vP>_1L(q!F}B7e~9y5mhrNBRe zOT3-8C)+y0?YW>9>mrHQq)zu-)t~OIc3V)->39;i^S~W=?o!2nMV=>cmv}orkLs%Y z*~=7f_wgBctdHEr{WaVtkIkQLxJ&#&v|GK<4`q$7Tkz8J75k4phyKKV5+~1K8?OW8 zX-z)|#P=lrdb_p<|O485&ybvuTP$BxR3Y2|G{JQ zv&A=Vr8;xe-<@&45O?XffIK(j!7#P^89vM6hs*!M-^Bftd^Y|q9;YAddaLujujDAj zzeRj|JWcryl_htV{5MLR88TTT-8Bei(Exvpg z^=IlT)o=UQiFkOW+~)Iz=KbV4y*tjWxHC|G9pkbPPqMCOQRjL*bGhPepZN`s^_P#N z9~yO4ory^Ng}6)ow%?w0p5oI3l;;}Sy#r5iUFNg#40-H&*W&p|{y%W@g&}a>-yY2p9<6ub`G4#{0|iny{;`4XQt^OzZyxzS>zKl9g=kt1Ry4-#qY9Jn? zew#l};A!f#dZshJ;dtfoSQl^L9`z^ifAHK)#h*d_OA7s8)_s3v!Aqaxo>crj#NWdE z^BivDcpo0(9f+Ter{*iqF#2Jg#V?TC{M?4SbL1CPRHBUssBiHATGvDm|T=7Aja~$GrKHu|{p5MKN)K4B~K0hDvw7dsi3(pWg!{Yh(0W-vZ#KO40 z@bCAP^mBH(^4NXqRXn{+ej@!gWS`>Q74mxIA9=p!VFI`7J)&@3WsUE#1utpWC;kNT zoQ`L3n{Pev9B%u-HF$_$K%I9LyyV=Nqd)C)@CWb=Ztqp53jAtvuWC5A1z4{b1{*F7qw9TJc+nzZcKGDrZ}D7U4PE*2{Z% ze5K;;zP|$xB7W@!n&$!I+lzMh6vnZvdHyT&!P%qyb{}`rnkNao5_ziPN!;d1b3B6& zrvKaE?sv-Hiv6~G!As_UY@7BadrrIzPvH7n$GHkm;dQ8I7#_!u#+w%Uq2%Yk0_O8t zd=mYW{6Y2n$O3p0Py8Xb`{qjA|5IL%JhvCxEvrArQ%{z9?E61c3SP4A5`QbtboyZi zp5HH@!wZG^#FYgeaCf@qKurt@fz0u zcnY_AZo@si0rB_XF7Dz}@R0to`k%1;xb52u3toCZZKwW!h5mod@-Tm_&b7Elo`$sh zG49~?@ojjPezyAe;6C1%_7P1< z`CoFqF7wU$rzM`Kt$5pqd*Hd_<(tTVJDw!oo~Q1|UkOWSQmfcHF~N}-&6d5cxyZp8TW^9H?qFw;9hIx*-f60EdQDE`S^c@ zeWtAY)c+pRe(0R1c-w#K<1SvF{_jxml5>mC{lfa~JmTZsl;;EDuOvQ8yzRp`5bs=| zc>7-H1mXkYt)8jG$GR)ty)1=kKuOT zJPwaX;?KmrNPIs$iGNBxBMV+KzVV&9?_2)6EKh&c(}nArNqmfW8{dDqe|g)A`*T%c zewP0JoQTga4#^bnM*AWjZPXf1dV{JSc@p^a)x9{IA42#M`;oc|`r0zC!Khh;LNzlKk#2al%n4)O6}#n-ij_#wpGdykdGXNmui{5j%1 z;x+3WXDjjPl=9oY`aK@vcag_=RO6BwuK4kI<${;&tNwQFw^y`Ok*HcGye`cLnreb^y>72XTa;kN%Q z!eb+pXDacp;Thb{51T9x{x|Xenct*5Q}7xWtDe-&ayxHafctmIw-Y}IPmY$~gO9@V z_!FE(WAhmUSN-TJVzlOKyVV4`Cm;mHtoc(TuX^rn}9*m)m_IjmIPY zIPTy!UJLQucgkb;sTc78xARXHPvXbZ5AWkHZuz(1`EQlKF7aRCS={3DcpA5Q{=rkY z-R};Wu6-sE$$umskK}RjSj3y+dHUJfZG&fVyN{fW`?&Q_0#D+0e(s0Iahtb8@EC6I z({94^->Bd0oaW;>-0Hj^5AeqH^K?8F$ukd6;MQ&ik4NHH;xXK=Yb~DNtvW5wMm!hs z5YOQD9_f2Lh1>Z4fu|$!6(3{VakcI^F+3j0Qx|t|n{Q3<+}Fxr_k~mN3~uL{Gx0QT zl|QylZofCo$K#L7tCA;c{+|46>U1t6PaqG7KNWXB zl=sDl;+Z+}zsU0l?&sw5xnI0#@pI)Da=ky}@s09Xc*8!b$9YO_@0okyxlM9=t{H;| z^W~pgJ-GY6{8#cX#Qg>GuZZ7($3Ky`#Q(ul3ybsj>`R@iJibjnk#?WPlS|}vIWT>O=YNn-CcfeT z<&S?YU&=Y;Xxv{e-%Wg1JiA@~4L$--y)3_%7jx4J`%GEqnS})}InVe%DcXUT%4;wB5vhwcDThcFjt8>OZ-?pS%|joI$0L z=9O0H9Gm@3@voDo8}9!ux9`i1-mG|+cAF4?i~YO0e<;3nMg7J7xJUl6#J~5w@_5u~ z&znE;Ic$df;~1BpINv&X<-dhIP1)yt+}3G3Jd5`s&%?O;i}D;xoz)8cT-Nv=U+~iN zYB}|ry$?AH4{_Vi6L_qG;x|+0l?5*u-|Wx2|Jr?O81C{D5?3pZvm5s!dG_KiZtebuJGiZ* zDl^reA^mC3YqjtIxARN`+{azU){XL;ZJJU&QUY*0Jl5~EPupbu>28!1JD1c{5J0I;W^x%cQ)f0 z+|Fq`@pQz0!jrh|pMT?V+~z~2$2IOT+{UFE9{!*@t$&WeGq}z3CU_dRI#0oqxb^3m zxQDy+e^=az#P`BO_HBzFfM;=Ar$g}ow|ds`{vlsc`^lx8yWU|R%d^kyrJntG=48d& z=Mk51F3rZ}8;O4yPgIh>gXi#|h5SAINY0<`A#(e7E6%iY?4j~F`|YiGs-^rp^1Nc+ zKyLS!&+z0a@>*PPea@@N%JMtN(;xRwl|PHm!Gr(FdvHG4X6N41AC%v}vuZi!7yGP1x-y3Y_($nQu z&l`B|c==%R?6UYXOPcvCyC(mz}Ap?3bPLH>jF7mwqac5uDmDb z#`1P9?I^$hAmup?&vur-NV~mpuc7==d=l=TE4SYV`wkv-mv^Rre!%k=%0FWMpT@Z~ zB>xqhOZ(Y5wu|ClrQMqg`$<{nnK1<~InQ{PD1JX5G~Untme}=`o)7qCJ)W8tS>2?~A4{me0W#ABK2$+~@m;aoX*P z&%(W{l%L^sI`aKPrsMGE*89YHAyAO`!`--`Xl*iib$@dj=(zQ%sVXUSvxNgNOH`o#C) zdx8{bB_hg zh}2)>|LD5&xT)s%kK>1=O&LOw<+LZoBvi7Dr9xrIlKn(l2vbP*iI5ay$rd>%Qe>i( zr5p*_M~Da`R9YCmq^!R)bG_cb$74Q^`|gkLAJ6aQ`h3oHKHE7n_kH7eT-VzY59z=1 zbi#ecr^Z!x-qcj6rKA|6dJ*LmzKJip3Z`)S?ttUslq`H8gK0Z+3 z;- z{F{RZ!!5ok8{vm|_F8lO9B2v8U2lF4>p)@&?h#m~XMQCCcIXym?>zB|Lb^ zTCPUrkqcSuEE#7lU3Yx8CJKKi+j-z|^s<6(H|PxBjy zZ^t^2{mXn?HmbhN)8udFdY-z8dE}FS6nU0vJZ!Xh)qfox;QGAG8)oAwwaMaVF%Eae zbM*5R^8X#zxu)^cAY}a1vpO^)z73wnmy-XW*vsd%R2>^9+86o|pKMT_=LF@)?$$H5p2c-t?QtKsDtX?%xaY(ljEB@szn8dA z?B(?&zn|U58C=(ZN__nDYpbVLB)~7kLwq!TE%`I#*SY0ZyvTZ@`*jb#1Xmp%!SlH4 zFayuwdcK&82Y4I$6X7MNKJVc^@$HG+p7TJzzj^L!Y_9Xea6V6o`kEg@o-6T0Kl8rKqX~HWX!G;QKb-SYwvYJ& z@=S@nJb%4t4YBK}^y(AK;+?M}n}4(2D)?kjk*zxj>i`3}$SWj>YoU09!!P0U+x zp4ksCH8tsCL)O;t^AJ6P)ZvX3fU*NeTOiriWMmo><=EuVy7lKeuJf7JiS@d#J^EIg0LD?;VpD|imq`utYKn|l5lTmQQg|1t62 z4%VO6_&0de)LiTEIy{TFBmNIOjqANZoyYCI__*GCY>NlmSLbhmr*NGg+T%%F`)^k~ z&Hd8z_@Q_aSO5Fs8C>-_6;F^~dCtQ_XFObsr@6oXzdtGuu5mR9Pdf3B;(5k{&I8Zj zC0zMm#6$A<)c*~1buf0D)T zyS2sdc!AZSc!v3FOvr9{ez>{b51)nyBh7cBZdc*iOU<*q-*%AJQCli_{YqrQ->XfTb|7G=3Dc{qr>s+ zV)Low8G?u0-${(m>+sYPi(fz?9>xRub13zkqdXs5yxxx;8PB82bHS(P-w{6m4?i;> zNV}Keg)huMB7U6mtT6wU_^EiVXnrgH@q>0w_P;Z4iLb^3;@eY)y)Ux5C1`gpeqik0 zmhtBrIP4umeE5y!e}(_!6yoKIA547u2aCU(bJ{54<%*Bu>#FH|@=h)OX)S)qH9U8$ zw{|rSU%K8rxz2n94Ient>QGu+9p4{M5U>5~X*`dQBG12gl6INy-Z!=Mb9L;M_XC}+ zhx)v!HF*N^JVyRb>dyx2r~XdaueId=GxqX0EdFHiyRk0SnP%;F*xTAwKbznIuKjcu zJmq*>Jb~-|RT3|8UCPrFFW@>?^u~+0o@YJYmk$ulF zwZ+g%h4uUKK8hFEa@}%UnlGmQZ5UUHU#*^f@D7YCk30wBJ@Arec^LlQF^VUT{1!Z@ zWATSFe;>Tm#%DnMFz#a>FZ^!(xs848GsXXD{xa)H!^

          |F^mFx5R^g&99~Z-SHx> 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�+0Olu$ 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 n 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

          gd%bctID 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�QsH*LL<&Np%ekX@Kfhc4qun)Dxs$&&Kk zv*J@+lDF2&X+uzM#+;vZAJgC2ZEFQG>$@EGYWpD&Td<+V(CGtPD@D8*qX zpt9Q8!>i9E^^6z)K4Wt|3$_lL{FrJyLuL;i<{CMxv=j3dtrj^YgPwt#%st#4_7c;3 zYM>_1dO4tR`?ujV!^M>DiKK@?T7xw%yKT;K>uBdq5|7XE1=}{R*uaOk>ami-VO_r; z(0Ltp>3CmqGVcWsGy-q}Y!_+@mgSX*OC3_a9UYNEc#e;#@l(#oTW=rm5cy7ef(WopW;x*7E48nwKyj1b)p7VOD*K^@&ygO#tFLUC-D&1ZTG3{ zsTcGk43IL2F&;gFllA)h9WC^g1mLbVsB`*}oPbbr$oriY)dKEUqIGfDAny!B#Km=+ zvAEY>A2}!&af^|I+E)zYo!&dl^UmVsPNR08_Wf~m9Z;e;mPgDgo3li0= zA~J00VR;0hF9}1v-wWE5>L{O1;CXWv zcj~U5>siU^sfxVL(!2LY8S|$(B%0HYs<24ivRwOgy-JWOiAzqAZiYiMTvLYEM<*$+ zD)670bEo9Q3gYWIUJvgN*}YnPFQDi(Wj%0;UpiiQw%HNZ&qJ&SgHV3qSDOT_8>GA3 zCdh)}boo&bOz|WP-rqrqimb0gy5iU6=Oy^!ws3;WN09Zw&-pT~zm^@9u`2As#`YMc zJxy-nA%+2(_1a(FKjqWwPRTZM4n1t;>*iKO3T(u0B?R^ovOtD!Edyd!9+Y?Ld? z8)X~ly`%S(iSZdv^dFkRA~8ptP4j*VpB%pyX<}O&*V|mTyENCz-Tv%RF!OdERnh#= z5vS;;iS6MLjjkJ>8}~E#kKeQRcCGJ7&kD4>2<2N}qxd}0RtTpRpVdzC`pH|`msvjX zI6s-gO!PmH@>Ps{uSC$~J3L;^htmySPn+Prx|7tI&<=A$q@zO$nJu_6E|Fp8N+52W zq`Mz?6NoCFq~XK;!$+qNH%a&+Y9r${S%s(w@)(Zkdm{`2k*|`{m6+@lR;nKvK6*P#Q$ znx6szx#76bO(llfIjK2*aD)`}c!&hz2)C@R#%lPz#=A3wpz;nkom#bql=IFmb98c5 z|Je)#RQeyT!^pWbiGlVwhM20@4UNVylTk0?ksJ`f*T~9+j@)+Q*rFy&ak~mqk;Fnk zGN4OO5lhUQWNGkZGvp&qfQN%|{V{gKG0PEI!FEz;7vRwhIHr75m98v`vWI)bMQ~P$ zBD*~gw$ecz@tGf4W+m|iE8qoirMt}V` z1-<(GbrOnyB>zw0KU4n>%Knc=|NDOn1^A~vzt6w&`YHWo@j(w?zJdRgUXOoUK-A~; zUs9OjQ>v2{euQtNlcN9f?+cLn{H_1`i(H`KO1`q+J4sJ^(7#{*l|NtjeECcKllc>k zN&gQ~Mmj0}-}^g)UVZ-Xn+hWMnD$#r`cQxm4lblX`FVRG_$lzgU(CMomq+~7<=_4e zdBnki`uyQP@yq`WgT50Ahf|-Azby4(u6h0C&x7BR^yDA(?{}~NuK0W@K0n}J`5&|X z{~RFFU(tUl>A#fpM(s=f_uB^j!DmA5!7K6kdq2Op|_pFaZjU%-Fg zIQW3+{!r5YVFf)SYm{wR7?@IMXuFMlNHzWlf1^N@m`_RpmMUw~1W(*NKO1l_^!$xp+9Wpy%+KgKs* z|AYT-&}W$9iz)w?KAfC@DD*x8Xl?w`T09P6!NKk^nZj)|I}v}Uw%#$75@I_j|Ba<|I;sW`CrH1 y|M44n{8I7%81z}&X&ip=PyYk|x>AB9%=mfm+Cl$U|Cyj){exfDxaNAR!v7EM!Ui$` literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/__init__.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/__init__.pyi new file mode 100644 index 0000000..c3148f1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/__init__.pyi @@ -0,0 +1,67 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives import padding +from cryptography.hazmat.primitives._serialization import ( + KeySerializationEncryptionBuilder, +) +from cryptography.utils import Buffer + +class PKCS7PaddingContext(padding.PaddingContext): + def __init__(self, block_size: int) -> None: ... + def update(self, data: Buffer) -> bytes: ... + def finalize(self) -> bytes: ... + +class ANSIX923PaddingContext(padding.PaddingContext): + def __init__(self, block_size: int) -> None: ... + def update(self, data: Buffer) -> bytes: ... + def finalize(self) -> bytes: ... + +class PKCS7UnpaddingContext(padding.PaddingContext): + def __init__(self, block_size: int) -> None: ... + def update(self, data: Buffer) -> bytes: ... + def finalize(self) -> bytes: ... + +class ANSIX923UnpaddingContext(padding.PaddingContext): + def __init__(self, block_size: int) -> None: ... + def update(self, data: Buffer) -> bytes: ... + def finalize(self) -> bytes: ... + +class Encoding: + PEM: typing.ClassVar[Encoding] + DER: typing.ClassVar[Encoding] + OpenSSH: typing.ClassVar[Encoding] + Raw: typing.ClassVar[Encoding] + X962: typing.ClassVar[Encoding] + SMIME: typing.ClassVar[Encoding] + +class PrivateFormat: + PKCS8: typing.ClassVar[PrivateFormat] + TraditionalOpenSSL: typing.ClassVar[PrivateFormat] + Raw: typing.ClassVar[PrivateFormat] + OpenSSH: typing.ClassVar[PrivateFormat] + PKCS12: typing.ClassVar[PrivateFormat] + def encryption_builder(self) -> KeySerializationEncryptionBuilder: ... + +class PublicFormat: + SubjectPublicKeyInfo: typing.ClassVar[PublicFormat] + PKCS1: typing.ClassVar[PublicFormat] + OpenSSH: typing.ClassVar[PublicFormat] + Raw: typing.ClassVar[PublicFormat] + CompressedPoint: typing.ClassVar[PublicFormat] + UncompressedPoint: typing.ClassVar[PublicFormat] + +class ParameterFormat: + PKCS3: typing.ClassVar[ParameterFormat] + +class ObjectIdentifier: + def __init__(self, value: str) -> None: ... + @property + def dotted_string(self) -> str: ... + @property + def _name(self) -> str: ... + +T = typing.TypeVar("T") diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/_openssl.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/_openssl.pyi new file mode 100644 index 0000000..3d4ea4e --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/_openssl.pyi @@ -0,0 +1,8 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +lib: typing.Any +ffi: typing.Any diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/asn1.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/asn1.pyi new file mode 100644 index 0000000..3b5f208 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/asn1.pyi @@ -0,0 +1,7 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +def decode_dss_signature(signature: bytes) -> tuple[int, int]: ... +def encode_dss_signature(r: int, s: int) -> bytes: ... +def parse_spki_for_data(data: bytes) -> bytes: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/declarative_asn1.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/declarative_asn1.pyi new file mode 100644 index 0000000..a4c0cb6 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/declarative_asn1.pyi @@ -0,0 +1,127 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import datetime +import typing + +def decode_der(cls: type, value: bytes) -> typing.Any: ... +def encode_der(value: typing.Any) -> bytes: ... +def non_root_python_to_rust(cls: type) -> Type: ... + +# Type is a Rust enum with tuple variants. For now, we express the type +# annotations like this: +class Type: + Sequence: typing.ClassVar[type] + SequenceOf: typing.ClassVar[type] + Set: typing.ClassVar[type] + SetOf: typing.ClassVar[type] + Option: typing.ClassVar[type] + Choice: typing.ClassVar[type] + PyBool: typing.ClassVar[type] + PyInt: typing.ClassVar[type] + PyBytes: typing.ClassVar[type] + PyStr: typing.ClassVar[type] + +class Annotation: + default: typing.Any | None + encoding: Encoding | None + size: Size | None + def __new__( + cls, + default: typing.Any | None = None, + encoding: Encoding | None = None, + size: Size | None = None, + ) -> Annotation: ... + def is_empty(self) -> bool: ... + +# Encoding is a Rust enum with tuple variants. For now, we express the type +# annotations like this: +class Encoding: + Implicit: typing.ClassVar[type] + Explicit: typing.ClassVar[type] + +class Size: + min: int + max: int | None + + def __new__(cls, min: int, max: int | None) -> Size: ... + @staticmethod + def exact(n: int) -> Size: ... + +class AnnotatedType: + inner: Type + annotation: Annotation + + def __new__(cls, inner: Type, annotation: Annotation) -> AnnotatedType: ... + +class AnnotatedTypeObject: + annotated_type: AnnotatedType + value: typing.Any + + def __new__( + cls, annotated_type: AnnotatedType, value: typing.Any + ) -> AnnotatedTypeObject: ... + +class Variant: + python_class: type + ann_type: AnnotatedType + tag_name: str | None + + def __new__( + cls, + python_class: type, + ann_type: AnnotatedType, + tag_name: str | None, + ) -> Variant: ... + +class PrintableString: + def __new__(cls, inner: str) -> PrintableString: ... + def __repr__(self) -> str: ... + def __eq__(self, other: object) -> bool: ... + def as_str(self) -> str: ... + +class IA5String: + def __new__(cls, inner: str) -> IA5String: ... + def __repr__(self) -> str: ... + def __eq__(self, other: object) -> bool: ... + def as_str(self) -> str: ... + +class UTCTime: + def __new__(cls, inner: datetime.datetime) -> UTCTime: ... + def __repr__(self) -> str: ... + def __eq__(self, other: object) -> bool: ... + def as_datetime(self) -> datetime.datetime: ... + +class GeneralizedTime: + def __new__(cls, inner: datetime.datetime) -> GeneralizedTime: ... + def __repr__(self) -> str: ... + def __eq__(self, other: object) -> bool: ... + def as_datetime(self) -> datetime.datetime: ... + +class BitString: + def __new__(cls, data: bytes, padding_bits: int) -> BitString: ... + def __repr__(self) -> str: ... + def __eq__(self, other: object) -> bool: ... + def as_bytes(self) -> bytes: ... + def padding_bits(self) -> int: ... + +class Tlv: + @property + def tag_bytes(self) -> bytes: ... + @property + def data(self) -> memoryview: ... + def parse(self, cls: type): ... + +T = typing.TypeVar("T") + +class SetOf(typing.Generic[T]): + def __new__(cls, inner: list[T]) -> SetOf[T]: ... + def as_list(self) -> list[T]: ... + def __eq__(self, other: object) -> bool: ... + def __repr__(self) -> str: ... + +class Null: + def __new__(cls) -> Null: ... + def __repr__(self) -> str: ... + def __eq__(self, other: object) -> bool: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/exceptions.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/exceptions.pyi new file mode 100644 index 0000000..09f46b1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/exceptions.pyi @@ -0,0 +1,17 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +class _Reasons: + BACKEND_MISSING_INTERFACE: _Reasons + UNSUPPORTED_HASH: _Reasons + UNSUPPORTED_CIPHER: _Reasons + UNSUPPORTED_PADDING: _Reasons + UNSUPPORTED_MGF: _Reasons + UNSUPPORTED_PUBLIC_KEY_ALGORITHM: _Reasons + UNSUPPORTED_ELLIPTIC_CURVE: _Reasons + UNSUPPORTED_SERIALIZATION: _Reasons + UNSUPPORTED_X509: _Reasons + UNSUPPORTED_EXCHANGE_ALGORITHM: _Reasons + UNSUPPORTED_DIFFIE_HELLMAN: _Reasons + UNSUPPORTED_MAC: _Reasons diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/ocsp.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/ocsp.pyi new file mode 100644 index 0000000..103e96c --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/ocsp.pyi @@ -0,0 +1,117 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import datetime +from collections.abc import Iterator + +from cryptography import x509 +from cryptography.hazmat.primitives import hashes, serialization +from cryptography.hazmat.primitives.asymmetric.types import PrivateKeyTypes +from cryptography.x509 import ocsp + +class OCSPRequest: + @property + def issuer_key_hash(self) -> bytes: ... + @property + def issuer_name_hash(self) -> bytes: ... + @property + def hash_algorithm(self) -> hashes.HashAlgorithm: ... + @property + def serial_number(self) -> int: ... + def public_bytes(self, encoding: serialization.Encoding) -> bytes: ... + @property + def extensions(self) -> x509.Extensions: ... + +class OCSPResponse: + @property + def responses(self) -> Iterator[OCSPSingleResponse]: ... + @property + def response_status(self) -> ocsp.OCSPResponseStatus: ... + @property + def signature_algorithm_oid(self) -> x509.ObjectIdentifier: ... + @property + def signature_hash_algorithm( + self, + ) -> hashes.HashAlgorithm | None: ... + @property + def signature(self) -> bytes: ... + @property + def tbs_response_bytes(self) -> bytes: ... + @property + def certificates(self) -> list[x509.Certificate]: ... + @property + def responder_key_hash(self) -> bytes | None: ... + @property + def responder_name(self) -> x509.Name | None: ... + @property + def produced_at(self) -> datetime.datetime: ... + @property + def produced_at_utc(self) -> datetime.datetime: ... + @property + def certificate_status(self) -> ocsp.OCSPCertStatus: ... + @property + def revocation_time(self) -> datetime.datetime | None: ... + @property + def revocation_time_utc(self) -> datetime.datetime | None: ... + @property + def revocation_reason(self) -> x509.ReasonFlags | None: ... + @property + def this_update(self) -> datetime.datetime: ... + @property + def this_update_utc(self) -> datetime.datetime: ... + @property + def next_update(self) -> datetime.datetime | None: ... + @property + def next_update_utc(self) -> datetime.datetime | None: ... + @property + def issuer_key_hash(self) -> bytes: ... + @property + def issuer_name_hash(self) -> bytes: ... + @property + def hash_algorithm(self) -> hashes.HashAlgorithm: ... + @property + def serial_number(self) -> int: ... + @property + def extensions(self) -> x509.Extensions: ... + @property + def single_extensions(self) -> x509.Extensions: ... + def public_bytes(self, encoding: serialization.Encoding) -> bytes: ... + +class OCSPSingleResponse: + @property + def certificate_status(self) -> ocsp.OCSPCertStatus: ... + @property + def revocation_time(self) -> datetime.datetime | None: ... + @property + def revocation_time_utc(self) -> datetime.datetime | None: ... + @property + def revocation_reason(self) -> x509.ReasonFlags | None: ... + @property + def this_update(self) -> datetime.datetime: ... + @property + def this_update_utc(self) -> datetime.datetime: ... + @property + def next_update(self) -> datetime.datetime | None: ... + @property + def next_update_utc(self) -> datetime.datetime | None: ... + @property + def issuer_key_hash(self) -> bytes: ... + @property + def issuer_name_hash(self) -> bytes: ... + @property + def hash_algorithm(self) -> hashes.HashAlgorithm: ... + @property + def serial_number(self) -> int: ... + +def load_der_ocsp_request(data: bytes) -> ocsp.OCSPRequest: ... +def load_der_ocsp_response(data: bytes) -> ocsp.OCSPResponse: ... +def create_ocsp_request( + builder: ocsp.OCSPRequestBuilder, +) -> ocsp.OCSPRequest: ... +def create_ocsp_response( + status: ocsp.OCSPResponseStatus, + builder: ocsp.OCSPResponseBuilder | None, + private_key: PrivateKeyTypes | None, + hash_algorithm: hashes.HashAlgorithm | None, +) -> ocsp.OCSPResponse: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi new file mode 100644 index 0000000..404a300 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi @@ -0,0 +1,80 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.bindings._rust.openssl import ( + aead, + ciphers, + cmac, + dh, + dsa, + ec, + ed448, + ed25519, + hashes, + hmac, + hpke, + kdf, + keys, + mldsa, + mlkem, + poly1305, + rsa, + x448, + x25519, +) + +__all__ = [ + "aead", + "ciphers", + "cmac", + "dh", + "dsa", + "ec", + "ed448", + "ed25519", + "hashes", + "hmac", + "hpke", + "kdf", + "keys", + "mldsa", + "mlkem", + "openssl_version", + "openssl_version_text", + "poly1305", + "raise_openssl_error", + "rsa", + "x448", + "x25519", +] + +CRYPTOGRAPHY_IS_LIBRESSL: bool +CRYPTOGRAPHY_IS_BORINGSSL: bool +CRYPTOGRAPHY_IS_AWSLC: bool +CRYPTOGRAPHY_OPENSSL_309_OR_GREATER: bool +CRYPTOGRAPHY_OPENSSL_320_OR_GREATER: bool +CRYPTOGRAPHY_OPENSSL_330_OR_GREATER: bool +CRYPTOGRAPHY_OPENSSL_350_OR_GREATER: bool + +class Providers: ... + +_legacy_provider_loaded: bool +_providers: Providers + +def openssl_version() -> int: ... +def openssl_version_text() -> str: ... +def raise_openssl_error() -> typing.NoReturn: ... +def capture_error_stack() -> list[OpenSSLError]: ... +def is_fips_enabled() -> bool: ... +def enable_fips(providers: Providers) -> None: ... + +class OpenSSLError: + @property + def lib(self) -> int: ... + @property + def reason(self) -> int: ... + @property + def reason_text(self) -> bytes: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/aead.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/aead.pyi new file mode 100644 index 0000000..eb44608 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/aead.pyi @@ -0,0 +1,189 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from collections.abc import Sequence + +from cryptography.utils import Buffer + +class AESGCM: + def __init__(self, key: Buffer) -> None: ... + @staticmethod + def generate_key(bit_length: int) -> bytes: ... + def encrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def decrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def encrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... + def decrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... + +class ChaCha20Poly1305: + def __init__(self, key: Buffer) -> None: ... + @staticmethod + def generate_key() -> bytes: ... + def encrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def encrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... + def decrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def decrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... + +class AESCCM: + def __init__(self, key: Buffer, tag_length: int = 16) -> None: ... + @staticmethod + def generate_key(bit_length: int) -> bytes: ... + def encrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def encrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... + def decrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def decrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... + +class AESSIV: + def __init__(self, key: Buffer) -> None: ... + @staticmethod + def generate_key(bit_length: int) -> bytes: ... + def encrypt( + self, + data: Buffer, + associated_data: Sequence[Buffer] | None, + ) -> bytes: ... + def encrypt_into( + self, + data: Buffer, + associated_data: Sequence[Buffer] | None, + buf: Buffer, + ) -> int: ... + def decrypt( + self, + data: Buffer, + associated_data: Sequence[Buffer] | None, + ) -> bytes: ... + def decrypt_into( + self, + data: Buffer, + associated_data: Sequence[Buffer] | None, + buf: Buffer, + ) -> int: ... + +class AESOCB3: + def __init__(self, key: Buffer) -> None: ... + @staticmethod + def generate_key(bit_length: int) -> bytes: ... + def encrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def encrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... + def decrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def decrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... + +class AESGCMSIV: + def __init__(self, key: Buffer) -> None: ... + @staticmethod + def generate_key(bit_length: int) -> bytes: ... + def encrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def encrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... + def decrypt( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + ) -> bytes: ... + def decrypt_into( + self, + nonce: Buffer, + data: Buffer, + associated_data: Buffer | None, + buf: Buffer, + ) -> int: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ciphers.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ciphers.pyi new file mode 100644 index 0000000..a48fb01 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ciphers.pyi @@ -0,0 +1,38 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives import ciphers +from cryptography.hazmat.primitives.ciphers import modes + +@typing.overload +def create_encryption_ctx( + algorithm: ciphers.CipherAlgorithm, mode: modes.ModeWithAuthenticationTag +) -> ciphers.AEADEncryptionContext: ... +@typing.overload +def create_encryption_ctx( + algorithm: ciphers.CipherAlgorithm, mode: modes.Mode | None +) -> ciphers.CipherContext: ... +@typing.overload +def create_decryption_ctx( + algorithm: ciphers.CipherAlgorithm, mode: modes.ModeWithAuthenticationTag +) -> ciphers.AEADDecryptionContext: ... +@typing.overload +def create_decryption_ctx( + algorithm: ciphers.CipherAlgorithm, mode: modes.Mode | None +) -> ciphers.CipherContext: ... +def cipher_supported( + algorithm: ciphers.CipherAlgorithm, mode: modes.Mode +) -> bool: ... +def _advance( + ctx: ciphers.AEADEncryptionContext | ciphers.AEADDecryptionContext, n: int +) -> None: ... +def _advance_aad( + ctx: ciphers.AEADEncryptionContext | ciphers.AEADDecryptionContext, n: int +) -> None: ... + +class CipherContext: ... +class AEADEncryptionContext: ... +class AEADDecryptionContext: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/cmac.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/cmac.pyi new file mode 100644 index 0000000..9c03508 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/cmac.pyi @@ -0,0 +1,18 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives import ciphers + +class CMAC: + def __init__( + self, + algorithm: ciphers.BlockCipherAlgorithm, + backend: typing.Any = None, + ) -> None: ... + def update(self, data: bytes) -> None: ... + def finalize(self) -> bytes: ... + def verify(self, signature: bytes) -> None: ... + def copy(self) -> CMAC: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/dh.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/dh.pyi new file mode 100644 index 0000000..08733d7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/dh.pyi @@ -0,0 +1,51 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives.asymmetric import dh + +MIN_MODULUS_SIZE: int + +class DHPrivateKey: ... +class DHPublicKey: ... +class DHParameters: ... + +class DHPrivateNumbers: + def __init__(self, x: int, public_numbers: DHPublicNumbers) -> None: ... + def private_key(self, backend: typing.Any = None) -> dh.DHPrivateKey: ... + @property + def x(self) -> int: ... + @property + def public_numbers(self) -> DHPublicNumbers: ... + +class DHPublicNumbers: + def __init__( + self, y: int, parameter_numbers: DHParameterNumbers + ) -> None: ... + def public_key(self, backend: typing.Any = None) -> dh.DHPublicKey: ... + @property + def y(self) -> int: ... + @property + def parameter_numbers(self) -> DHParameterNumbers: ... + +class DHParameterNumbers: + def __init__(self, p: int, g: int, q: int | None = None) -> None: ... + def parameters(self, backend: typing.Any = None) -> dh.DHParameters: ... + @property + def p(self) -> int: ... + @property + def g(self) -> int: ... + @property + def q(self) -> int | None: ... + +def generate_parameters( + generator: int, key_size: int, backend: typing.Any = None +) -> dh.DHParameters: ... +def from_pem_parameters( + data: bytes, backend: typing.Any = None +) -> dh.DHParameters: ... +def from_der_parameters( + data: bytes, backend: typing.Any = None +) -> dh.DHParameters: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/dsa.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/dsa.pyi new file mode 100644 index 0000000..0922a4c --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/dsa.pyi @@ -0,0 +1,41 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives.asymmetric import dsa + +class DSAPrivateKey: ... +class DSAPublicKey: ... +class DSAParameters: ... + +class DSAPrivateNumbers: + def __init__(self, x: int, public_numbers: DSAPublicNumbers) -> None: ... + @property + def x(self) -> int: ... + @property + def public_numbers(self) -> DSAPublicNumbers: ... + def private_key(self, backend: typing.Any = None) -> dsa.DSAPrivateKey: ... + +class DSAPublicNumbers: + def __init__( + self, y: int, parameter_numbers: DSAParameterNumbers + ) -> None: ... + @property + def y(self) -> int: ... + @property + def parameter_numbers(self) -> DSAParameterNumbers: ... + def public_key(self, backend: typing.Any = None) -> dsa.DSAPublicKey: ... + +class DSAParameterNumbers: + def __init__(self, p: int, q: int, g: int) -> None: ... + @property + def p(self) -> int: ... + @property + def q(self) -> int: ... + @property + def g(self) -> int: ... + def parameters(self, backend: typing.Any = None) -> dsa.DSAParameters: ... + +def generate_parameters(key_size: int) -> dsa.DSAParameters: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ec.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ec.pyi new file mode 100644 index 0000000..5c3b7bf --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ec.pyi @@ -0,0 +1,52 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives.asymmetric import ec + +class ECPrivateKey: ... +class ECPublicKey: ... + +class EllipticCurvePrivateNumbers: + def __init__( + self, private_value: int, public_numbers: EllipticCurvePublicNumbers + ) -> None: ... + def private_key( + self, backend: typing.Any = None + ) -> ec.EllipticCurvePrivateKey: ... + @property + def private_value(self) -> int: ... + @property + def public_numbers(self) -> EllipticCurvePublicNumbers: ... + +class EllipticCurvePublicNumbers: + def __init__(self, x: int, y: int, curve: ec.EllipticCurve) -> None: ... + def public_key( + self, backend: typing.Any = None + ) -> ec.EllipticCurvePublicKey: ... + @property + def x(self) -> int: ... + @property + def y(self) -> int: ... + @property + def curve(self) -> ec.EllipticCurve: ... + def __eq__(self, other: object) -> bool: ... + +def curve_supported(curve: ec.EllipticCurve) -> bool: ... +def generate_private_key( + curve: ec.EllipticCurve, backend: typing.Any = None +) -> ec.EllipticCurvePrivateKey: ... +def from_private_numbers( + numbers: ec.EllipticCurvePrivateNumbers, +) -> ec.EllipticCurvePrivateKey: ... +def from_public_numbers( + numbers: ec.EllipticCurvePublicNumbers, +) -> ec.EllipticCurvePublicKey: ... +def from_public_bytes( + curve: ec.EllipticCurve, data: bytes +) -> ec.EllipticCurvePublicKey: ... +def derive_private_key( + private_value: int, curve: ec.EllipticCurve +) -> ec.EllipticCurvePrivateKey: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed25519.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed25519.pyi new file mode 100644 index 0000000..f85b3d1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed25519.pyi @@ -0,0 +1,13 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.hazmat.primitives.asymmetric import ed25519 +from cryptography.utils import Buffer + +class Ed25519PrivateKey: ... +class Ed25519PublicKey: ... + +def generate_key() -> ed25519.Ed25519PrivateKey: ... +def from_private_bytes(data: Buffer) -> ed25519.Ed25519PrivateKey: ... +def from_public_bytes(data: bytes) -> ed25519.Ed25519PublicKey: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed448.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed448.pyi new file mode 100644 index 0000000..c8ca0ec --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed448.pyi @@ -0,0 +1,13 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.hazmat.primitives.asymmetric import ed448 +from cryptography.utils import Buffer + +class Ed448PrivateKey: ... +class Ed448PublicKey: ... + +def generate_key() -> ed448.Ed448PrivateKey: ... +def from_private_bytes(data: Buffer) -> ed448.Ed448PrivateKey: ... +def from_public_bytes(data: bytes) -> ed448.Ed448PublicKey: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hashes.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hashes.pyi new file mode 100644 index 0000000..106b531 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hashes.pyi @@ -0,0 +1,30 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives import hashes +from cryptography.utils import Buffer + +class Hash(hashes.HashContext): + def __init__( + self, algorithm: hashes.HashAlgorithm, backend: typing.Any = None + ) -> None: ... + @property + def algorithm(self) -> hashes.HashAlgorithm: ... + def update(self, data: Buffer) -> None: ... + def finalize(self) -> bytes: ... + def copy(self) -> Hash: ... + @staticmethod + def hash(algorithm: hashes.HashAlgorithm, data: Buffer) -> bytes: ... + +def hash_supported(algorithm: hashes.HashAlgorithm) -> bool: ... + +class XOFHash: + def __init__(self, algorithm: hashes.ExtendableOutputFunction) -> None: ... + @property + def algorithm(self) -> hashes.ExtendableOutputFunction: ... + def update(self, data: Buffer) -> None: ... + def squeeze(self, length: int) -> bytes: ... + def copy(self) -> XOFHash: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hmac.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hmac.pyi new file mode 100644 index 0000000..3883d1b --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hmac.pyi @@ -0,0 +1,22 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives import hashes +from cryptography.utils import Buffer + +class HMAC(hashes.HashContext): + def __init__( + self, + key: Buffer, + algorithm: hashes.HashAlgorithm, + backend: typing.Any = None, + ) -> None: ... + @property + def algorithm(self) -> hashes.HashAlgorithm: ... + def update(self, data: Buffer) -> None: ... + def finalize(self) -> bytes: ... + def verify(self, signature: bytes) -> None: ... + def copy(self) -> HMAC: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hpke.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hpke.pyi new file mode 100644 index 0000000..a9d8a11 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/hpke.pyi @@ -0,0 +1,108 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.hazmat.primitives.asymmetric import ec, mlkem, x25519 +from cryptography.utils import Buffer + +class KEM: + X25519: KEM + P256: KEM + P384: KEM + P521: KEM + MLKEM768: KEM + MLKEM1024: KEM + MLKEM768_X25519: KEM + MLKEM1024_P384: KEM + +class KDF: + HKDF_SHA256: KDF + HKDF_SHA384: KDF + HKDF_SHA512: KDF + SHAKE128: KDF + SHAKE256: KDF + +class AEAD: + AES_128_GCM: AEAD + AES_256_GCM: AEAD + CHACHA20_POLY1305: AEAD + +class MLKEM768X25519PrivateKey: + def __init__( + self, + mlkem_key: mlkem.MLKEM768PrivateKey, + x25519_key: x25519.X25519PrivateKey, + ) -> None: ... + def public_key(self) -> MLKEM768X25519PublicKey: ... + +class MLKEM768X25519PublicKey: + def __init__( + self, + mlkem_key: mlkem.MLKEM768PublicKey, + x25519_key: x25519.X25519PublicKey, + ) -> None: ... + +class MLKEM1024P384PrivateKey: + def __init__( + self, + mlkem_key: mlkem.MLKEM1024PrivateKey, + p384_key: ec.EllipticCurvePrivateKey, + ) -> None: ... + def public_key(self) -> MLKEM1024P384PublicKey: ... + +class MLKEM1024P384PublicKey: + def __init__( + self, + mlkem_key: mlkem.MLKEM1024PublicKey, + p384_key: ec.EllipticCurvePublicKey, + ) -> None: ... + +class Suite: + def __init__(self, kem: KEM, kdf: KDF, aead: AEAD) -> None: ... + def encrypt( + self, + plaintext: Buffer, + public_key: x25519.X25519PublicKey + | ec.EllipticCurvePublicKey + | mlkem.MLKEM768PublicKey + | mlkem.MLKEM1024PublicKey + | MLKEM768X25519PublicKey + | MLKEM1024P384PublicKey, + info: Buffer | None = None, + ) -> bytes: ... + def decrypt( + self, + ciphertext: Buffer, + private_key: x25519.X25519PrivateKey + | ec.EllipticCurvePrivateKey + | mlkem.MLKEM768PrivateKey + | mlkem.MLKEM1024PrivateKey + | MLKEM768X25519PrivateKey + | MLKEM1024P384PrivateKey, + info: Buffer | None = None, + ) -> bytes: ... + +def _encrypt_with_aad( + suite: Suite, + plaintext: Buffer, + public_key: x25519.X25519PublicKey + | ec.EllipticCurvePublicKey + | mlkem.MLKEM768PublicKey + | mlkem.MLKEM1024PublicKey + | MLKEM768X25519PublicKey + | MLKEM1024P384PublicKey, + info: Buffer | None = None, + aad: Buffer | None = None, +) -> bytes: ... +def _decrypt_with_aad( + suite: Suite, + ciphertext: Buffer, + private_key: x25519.X25519PrivateKey + | ec.EllipticCurvePrivateKey + | mlkem.MLKEM768PrivateKey + | mlkem.MLKEM1024PrivateKey + | MLKEM768X25519PrivateKey + | MLKEM1024P384PrivateKey, + info: Buffer | None = None, + aad: Buffer | None = None, +) -> bytes: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/kdf.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/kdf.pyi new file mode 100644 index 0000000..bb37b96 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/kdf.pyi @@ -0,0 +1,205 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives.hashes import HashAlgorithm +from cryptography.hazmat.primitives.kdf.kbkdf import CounterLocation, Mode +from cryptography.utils import Buffer + +class PBKDF2HMAC: + def __init__( + self, + algorithm: HashAlgorithm, + length: int, + salt: bytes, + iterations: int, + backend: typing.Any = None, + ) -> None: ... + def derive(self, key_material: Buffer) -> bytes: ... + def derive_into(self, key_material: Buffer, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + +class Scrypt: + def __init__( + self, + salt: bytes, + length: int, + n: int, + r: int, + p: int, + backend: typing.Any = None, + ) -> None: ... + def derive(self, key_material: Buffer) -> bytes: ... + def derive_into(self, key_material: Buffer, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + +class Argon2d: + def __init__( + self, + *, + salt: bytes, + length: int, + iterations: int, + lanes: int, + memory_cost: int, + ad: bytes | None = None, + secret: bytes | None = None, + ) -> None: ... + def derive(self, key_material: bytes) -> bytes: ... + def derive_into(self, key_material: bytes, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + def derive_phc_encoded(self, key_material: bytes) -> str: ... + @classmethod + def verify_phc_encoded( + cls, key_material: bytes, phc_encoded: str, secret: bytes | None = None + ) -> None: ... + +class Argon2i: + def __init__( + self, + *, + salt: bytes, + length: int, + iterations: int, + lanes: int, + memory_cost: int, + ad: bytes | None = None, + secret: bytes | None = None, + ) -> None: ... + def derive(self, key_material: bytes) -> bytes: ... + def derive_into(self, key_material: bytes, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + def derive_phc_encoded(self, key_material: bytes) -> str: ... + @classmethod + def verify_phc_encoded( + cls, key_material: bytes, phc_encoded: str, secret: bytes | None = None + ) -> None: ... + +class Argon2id: + def __init__( + self, + *, + salt: bytes, + length: int, + iterations: int, + lanes: int, + memory_cost: int, + ad: bytes | None = None, + secret: bytes | None = None, + ) -> None: ... + def derive(self, key_material: bytes) -> bytes: ... + def derive_into(self, key_material: bytes, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + def derive_phc_encoded(self, key_material: bytes) -> str: ... + @classmethod + def verify_phc_encoded( + cls, key_material: bytes, phc_encoded: str, secret: bytes | None = None + ) -> None: ... + +class HKDF: + def __init__( + self, + algorithm: HashAlgorithm, + length: int, + salt: bytes | None, + info: bytes | None, + backend: typing.Any = None, + ): ... + @staticmethod + def extract( + algorithm: HashAlgorithm, salt: bytes | None, key_material: Buffer + ) -> bytes: ... + def derive(self, key_material: Buffer) -> bytes: ... + def derive_into(self, key_material: Buffer, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + +class HKDFExpand: + def __init__( + self, + algorithm: HashAlgorithm, + length: int, + info: bytes | None, + backend: typing.Any = None, + ): ... + def derive(self, key_material: Buffer) -> bytes: ... + def derive_into(self, key_material: Buffer, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + +class X963KDF: + def __init__( + self, + algorithm: HashAlgorithm, + length: int, + sharedinfo: bytes | None, + backend: typing.Any = None, + ) -> None: ... + def derive(self, key_material: Buffer) -> bytes: ... + def derive_into(self, key_material: Buffer, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + +class ConcatKDFHash: + def __init__( + self, + algorithm: HashAlgorithm, + length: int, + otherinfo: bytes | None, + backend: typing.Any = None, + ) -> None: ... + def derive(self, key_material: Buffer) -> bytes: ... + def derive_into(self, key_material: Buffer, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + +class ConcatKDFHMAC: + def __init__( + self, + algorithm: HashAlgorithm, + length: int, + salt: bytes | None, + otherinfo: bytes | None, + backend: typing.Any = None, + ) -> None: ... + def derive(self, key_material: Buffer) -> bytes: ... + def derive_into(self, key_material: Buffer, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + +class KBKDFHMAC: + def __init__( + self, + algorithm: HashAlgorithm, + mode: Mode, + length: int, + rlen: int, + llen: int | None, + location: CounterLocation, + label: bytes | None, + context: bytes | None, + fixed: bytes | None, + backend: typing.Any = None, + *, + break_location: int | None = None, + ) -> None: ... + def derive(self, key_material: Buffer) -> bytes: ... + def derive_into(self, key_material: Buffer, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... + +class KBKDFCMAC: + def __init__( + self, + algorithm: typing.Any, + mode: Mode, + length: int, + rlen: int, + llen: int | None, + location: CounterLocation, + label: bytes | None, + context: bytes | None, + fixed: bytes | None, + backend: typing.Any = None, + *, + break_location: int | None = None, + ) -> None: ... + def derive(self, key_material: Buffer) -> bytes: ... + def derive_into(self, key_material: Buffer, buffer: Buffer) -> int: ... + def verify(self, key_material: bytes, expected_key: bytes) -> None: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/keys.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/keys.pyi new file mode 100644 index 0000000..404057e --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/keys.pyi @@ -0,0 +1,34 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives.asymmetric.types import ( + PrivateKeyTypes, + PublicKeyTypes, +) +from cryptography.utils import Buffer + +def load_der_private_key( + data: Buffer, + password: bytes | None, + backend: typing.Any = None, + *, + unsafe_skip_rsa_key_validation: bool = False, +) -> PrivateKeyTypes: ... +def load_pem_private_key( + data: Buffer, + password: bytes | None, + backend: typing.Any = None, + *, + unsafe_skip_rsa_key_validation: bool = False, +) -> PrivateKeyTypes: ... +def load_der_public_key( + data: bytes, + backend: typing.Any = None, +) -> PublicKeyTypes: ... +def load_pem_public_key( + data: bytes, + backend: typing.Any = None, +) -> PublicKeyTypes: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/mldsa.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/mldsa.pyi new file mode 100644 index 0000000..232469a --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/mldsa.pyi @@ -0,0 +1,23 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.hazmat.primitives.asymmetric import mldsa +from cryptography.utils import Buffer + +class MLDSA44PrivateKey: ... +class MLDSA44PublicKey: ... +class MLDSA65PrivateKey: ... +class MLDSA65PublicKey: ... +class MLDSA87PrivateKey: ... +class MLDSA87PublicKey: ... + +def generate_mldsa44_key() -> mldsa.MLDSA44PrivateKey: ... +def from_mldsa44_public_bytes(data: bytes) -> mldsa.MLDSA44PublicKey: ... +def from_mldsa44_seed_bytes(data: Buffer) -> mldsa.MLDSA44PrivateKey: ... +def generate_mldsa65_key() -> mldsa.MLDSA65PrivateKey: ... +def from_mldsa65_public_bytes(data: bytes) -> mldsa.MLDSA65PublicKey: ... +def from_mldsa65_seed_bytes(data: Buffer) -> mldsa.MLDSA65PrivateKey: ... +def generate_mldsa87_key() -> mldsa.MLDSA87PrivateKey: ... +def from_mldsa87_public_bytes(data: bytes) -> mldsa.MLDSA87PublicKey: ... +def from_mldsa87_seed_bytes(data: Buffer) -> mldsa.MLDSA87PrivateKey: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/mlkem.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/mlkem.pyi new file mode 100644 index 0000000..768a340 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/mlkem.pyi @@ -0,0 +1,18 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.hazmat.primitives.asymmetric import mlkem +from cryptography.utils import Buffer + +class MLKEM768PrivateKey: ... +class MLKEM768PublicKey: ... +class MLKEM1024PrivateKey: ... +class MLKEM1024PublicKey: ... + +def generate_mlkem768_key() -> mlkem.MLKEM768PrivateKey: ... +def from_mlkem768_seed_bytes(data: Buffer) -> mlkem.MLKEM768PrivateKey: ... +def from_mlkem768_public_bytes(data: Buffer) -> mlkem.MLKEM768PublicKey: ... +def generate_mlkem1024_key() -> mlkem.MLKEM1024PrivateKey: ... +def from_mlkem1024_seed_bytes(data: Buffer) -> mlkem.MLKEM1024PrivateKey: ... +def from_mlkem1024_public_bytes(data: Buffer) -> mlkem.MLKEM1024PublicKey: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/poly1305.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/poly1305.pyi new file mode 100644 index 0000000..45a2a39 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/poly1305.pyi @@ -0,0 +1,15 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.utils import Buffer + +class Poly1305: + def __init__(self, key: Buffer) -> None: ... + @staticmethod + def generate_tag(key: Buffer, data: Buffer) -> bytes: ... + @staticmethod + def verify_tag(key: Buffer, data: Buffer, tag: bytes) -> None: ... + def update(self, data: Buffer) -> None: ... + def finalize(self) -> bytes: ... + def verify(self, tag: bytes) -> None: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/rsa.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/rsa.pyi new file mode 100644 index 0000000..ef7752d --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/rsa.pyi @@ -0,0 +1,55 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing + +from cryptography.hazmat.primitives.asymmetric import rsa + +class RSAPrivateKey: ... +class RSAPublicKey: ... + +class RSAPrivateNumbers: + def __init__( + self, + p: int, + q: int, + d: int, + dmp1: int, + dmq1: int, + iqmp: int, + public_numbers: RSAPublicNumbers, + ) -> None: ... + @property + def p(self) -> int: ... + @property + def q(self) -> int: ... + @property + def d(self) -> int: ... + @property + def dmp1(self) -> int: ... + @property + def dmq1(self) -> int: ... + @property + def iqmp(self) -> int: ... + @property + def public_numbers(self) -> RSAPublicNumbers: ... + def private_key( + self, + backend: typing.Any = None, + *, + unsafe_skip_rsa_key_validation: bool = False, + ) -> rsa.RSAPrivateKey: ... + +class RSAPublicNumbers: + def __init__(self, e: int, n: int) -> None: ... + @property + def n(self) -> int: ... + @property + def e(self) -> int: ... + def public_key(self, backend: typing.Any = None) -> rsa.RSAPublicKey: ... + +def generate_private_key( + public_exponent: int, + key_size: int, +) -> rsa.RSAPrivateKey: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/x25519.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/x25519.pyi new file mode 100644 index 0000000..38d2add --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/x25519.pyi @@ -0,0 +1,13 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.hazmat.primitives.asymmetric import x25519 +from cryptography.utils import Buffer + +class X25519PrivateKey: ... +class X25519PublicKey: ... + +def generate_key() -> x25519.X25519PrivateKey: ... +def from_private_bytes(data: Buffer) -> x25519.X25519PrivateKey: ... +def from_public_bytes(data: bytes) -> x25519.X25519PublicKey: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/x448.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/x448.pyi new file mode 100644 index 0000000..3ac0980 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/openssl/x448.pyi @@ -0,0 +1,13 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.hazmat.primitives.asymmetric import x448 +from cryptography.utils import Buffer + +class X448PrivateKey: ... +class X448PublicKey: ... + +def generate_key() -> x448.X448PrivateKey: ... +def from_private_bytes(data: Buffer) -> x448.X448PrivateKey: ... +def from_public_bytes(data: bytes) -> x448.X448PublicKey: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/pkcs12.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/pkcs12.pyi new file mode 100644 index 0000000..b25becb --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/pkcs12.pyi @@ -0,0 +1,52 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import typing +from collections.abc import Iterable + +from cryptography import x509 +from cryptography.hazmat.primitives.asymmetric.types import PrivateKeyTypes +from cryptography.hazmat.primitives.serialization import ( + KeySerializationEncryption, +) +from cryptography.hazmat.primitives.serialization.pkcs12 import ( + PKCS12KeyAndCertificates, + PKCS12PrivateKeyTypes, +) +from cryptography.utils import Buffer + +class PKCS12Certificate: + def __init__( + self, cert: x509.Certificate, friendly_name: bytes | None + ) -> None: ... + @property + def friendly_name(self) -> bytes | None: ... + @property + def certificate(self) -> x509.Certificate: ... + +def load_key_and_certificates( + data: Buffer, + password: Buffer | None, + backend: typing.Any = None, +) -> tuple[ + PrivateKeyTypes | None, + x509.Certificate | None, + list[x509.Certificate], +]: ... +def load_pkcs12( + data: bytes, + password: bytes | None, + backend: typing.Any = None, +) -> PKCS12KeyAndCertificates: ... +def serialize_java_truststore( + certs: Iterable[PKCS12Certificate], + encryption_algorithm: KeySerializationEncryption, +) -> bytes: ... +def serialize_key_and_certificates( + name: bytes | None, + key: PKCS12PrivateKeyTypes | None, + cert: x509.Certificate | None, + cas: Iterable[x509.Certificate | PKCS12Certificate] | None, + encryption_algorithm: KeySerializationEncryption, +) -> bytes: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/pkcs7.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/pkcs7.pyi new file mode 100644 index 0000000..358b135 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/pkcs7.pyi @@ -0,0 +1,50 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from collections.abc import Iterable + +from cryptography import x509 +from cryptography.hazmat.primitives import serialization +from cryptography.hazmat.primitives.asymmetric import rsa +from cryptography.hazmat.primitives.serialization import pkcs7 + +def serialize_certificates( + certs: list[x509.Certificate], + encoding: serialization.Encoding, +) -> bytes: ... +def encrypt_and_serialize( + builder: pkcs7.PKCS7EnvelopeBuilder, + content_encryption_algorithm: pkcs7.ContentEncryptionAlgorithm, + encoding: serialization.Encoding, + options: Iterable[pkcs7.PKCS7Options], +) -> bytes: ... +def sign_and_serialize( + builder: pkcs7.PKCS7SignatureBuilder, + encoding: serialization.Encoding, + options: Iterable[pkcs7.PKCS7Options], +) -> bytes: ... +def decrypt_der( + data: bytes, + certificate: x509.Certificate, + private_key: rsa.RSAPrivateKey, + options: Iterable[pkcs7.PKCS7Options], +) -> bytes: ... +def decrypt_pem( + data: bytes, + certificate: x509.Certificate, + private_key: rsa.RSAPrivateKey, + options: Iterable[pkcs7.PKCS7Options], +) -> bytes: ... +def decrypt_smime( + data: bytes, + certificate: x509.Certificate, + private_key: rsa.RSAPrivateKey, + options: Iterable[pkcs7.PKCS7Options], +) -> bytes: ... +def load_pem_pkcs7_certificates( + data: bytes, +) -> list[x509.Certificate]: ... +def load_der_pkcs7_certificates( + data: bytes, +) -> list[x509.Certificate]: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/test_support.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/test_support.pyi new file mode 100644 index 0000000..c6c6d0b --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/test_support.pyi @@ -0,0 +1,23 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography import x509 +from cryptography.hazmat.primitives import serialization +from cryptography.hazmat.primitives.serialization import pkcs7 +from cryptography.utils import Buffer + +class TestCertificate: + not_after_tag: int + not_before_tag: int + issuer_value_tags: list[int] + subject_value_tags: list[int] + +def test_parse_certificate(data: bytes) -> TestCertificate: ... +def pkcs7_verify( + encoding: serialization.Encoding, + sig: bytes, + msg: Buffer | None, + certs: list[x509.Certificate], + options: list[pkcs7.PKCS7Options], +) -> None: ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/x509.pyi b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/x509.pyi new file mode 100644 index 0000000..196a3c6 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/_rust/x509.pyi @@ -0,0 +1,312 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +import datetime +import typing +from collections.abc import Iterator + +from cryptography import x509 +from cryptography.hazmat.primitives import hashes, serialization +from cryptography.hazmat.primitives.asymmetric.ec import ECDSA +from cryptography.hazmat.primitives.asymmetric.padding import PSS, PKCS1v15 +from cryptography.hazmat.primitives.asymmetric.types import ( + CertificateIssuerPublicKeyTypes, + CertificatePublicKeyTypes, + PrivateKeyTypes, +) +from cryptography.x509 import certificate_transparency + +def load_pem_x509_certificate( + data: bytes, backend: typing.Any = None +) -> x509.Certificate: ... +def load_der_x509_certificate( + data: bytes, backend: typing.Any = None +) -> x509.Certificate: ... +def load_pem_x509_certificates( + data: bytes, +) -> list[x509.Certificate]: ... +def load_pem_x509_crl( + data: bytes, backend: typing.Any = None +) -> x509.CertificateRevocationList: ... +def load_der_x509_crl( + data: bytes, backend: typing.Any = None +) -> x509.CertificateRevocationList: ... +def load_pem_x509_csr( + data: bytes, backend: typing.Any = None +) -> x509.CertificateSigningRequest: ... +def load_der_x509_csr( + data: bytes, backend: typing.Any = None +) -> x509.CertificateSigningRequest: ... +def encode_name_bytes(name: x509.Name) -> bytes: ... +def encode_extension_value(extension: x509.ExtensionType) -> bytes: ... +def create_x509_certificate( + builder: x509.CertificateBuilder, + private_key: PrivateKeyTypes, + hash_algorithm: hashes.HashAlgorithm | None, + rsa_padding: PKCS1v15 | PSS | None, + ecdsa_deterministic: bool | None, +) -> x509.Certificate: ... +def create_x509_csr( + builder: x509.CertificateSigningRequestBuilder, + private_key: PrivateKeyTypes, + hash_algorithm: hashes.HashAlgorithm | None, + rsa_padding: PKCS1v15 | PSS | None, + ecdsa_deterministic: bool | None, +) -> x509.CertificateSigningRequest: ... +def create_revoked_certificate( + builder: x509.RevokedCertificateBuilder, +) -> x509.RevokedCertificate: ... +def create_x509_crl( + builder: x509.CertificateRevocationListBuilder, + private_key: PrivateKeyTypes, + hash_algorithm: hashes.HashAlgorithm | None, + rsa_padding: PKCS1v15 | PSS | None, + ecdsa_deterministic: bool | None, +) -> x509.CertificateRevocationList: ... + +class Sct: + @property + def version(self) -> certificate_transparency.Version: ... + @property + def log_id(self) -> bytes: ... + @property + def timestamp(self) -> datetime.datetime: ... + @property + def entry_type(self) -> certificate_transparency.LogEntryType: ... + @property + def signature_hash_algorithm(self) -> hashes.HashAlgorithm: ... + @property + def signature_algorithm( + self, + ) -> certificate_transparency.SignatureAlgorithm: ... + @property + def signature(self) -> bytes: ... + @property + def extension_bytes(self) -> bytes: ... + +class Certificate: + def fingerprint(self, algorithm: hashes.HashAlgorithm) -> bytes: ... + @property + def serial_number(self) -> int: ... + @property + def version(self) -> x509.Version: ... + def public_key(self) -> CertificatePublicKeyTypes: ... + @property + def public_key_algorithm_oid(self) -> x509.ObjectIdentifier: ... + @property + def not_valid_before(self) -> datetime.datetime: ... + @property + def not_valid_before_utc(self) -> datetime.datetime: ... + @property + def not_valid_after(self) -> datetime.datetime: ... + @property + def not_valid_after_utc(self) -> datetime.datetime: ... + @property + def issuer(self) -> x509.Name: ... + @property + def subject(self) -> x509.Name: ... + @property + def signature_hash_algorithm( + self, + ) -> hashes.HashAlgorithm | None: ... + @property + def signature_algorithm_oid(self) -> x509.ObjectIdentifier: ... + @property + def signature_algorithm_parameters( + self, + ) -> PSS | PKCS1v15 | ECDSA | None: ... + @property + def extensions(self) -> x509.Extensions: ... + @property + def signature(self) -> bytes: ... + @property + def tbs_certificate_bytes(self) -> bytes: ... + @property + def tbs_precertificate_bytes(self) -> bytes: ... + def __eq__(self, other: object) -> bool: ... + def __hash__(self) -> int: ... + def public_bytes(self, encoding: serialization.Encoding) -> bytes: ... + def verify_directly_issued_by(self, issuer: Certificate) -> None: ... + +class RevokedCertificate: + @property + def serial_number(self) -> int: ... + @property + def revocation_date(self) -> datetime.datetime: ... + @property + def revocation_date_utc(self) -> datetime.datetime: ... + @property + def extensions(self) -> x509.Extensions: ... + +class CertificateRevocationList: + def public_bytes(self, encoding: serialization.Encoding) -> bytes: ... + def fingerprint(self, algorithm: hashes.HashAlgorithm) -> bytes: ... + def get_revoked_certificate_by_serial_number( + self, serial_number: int + ) -> x509.RevokedCertificate | None: ... + @property + def signature_hash_algorithm( + self, + ) -> hashes.HashAlgorithm | None: ... + @property + def signature_algorithm_oid(self) -> x509.ObjectIdentifier: ... + @property + def signature_algorithm_parameters( + self, + ) -> PSS | PKCS1v15 | ECDSA | None: ... + @property + def issuer(self) -> x509.Name: ... + @property + def next_update(self) -> datetime.datetime | None: ... + @property + def next_update_utc(self) -> datetime.datetime | None: ... + @property + def last_update(self) -> datetime.datetime: ... + @property + def last_update_utc(self) -> datetime.datetime: ... + @property + def extensions(self) -> x509.Extensions: ... + @property + def signature(self) -> bytes: ... + @property + def tbs_certlist_bytes(self) -> bytes: ... + def __eq__(self, other: object) -> bool: ... + def __len__(self) -> int: ... + @typing.overload + def __getitem__(self, idx: int) -> x509.RevokedCertificate: ... + @typing.overload + def __getitem__(self, idx: slice) -> list[x509.RevokedCertificate]: ... + def __iter__(self) -> Iterator[x509.RevokedCertificate]: ... + def is_signature_valid( + self, public_key: CertificateIssuerPublicKeyTypes + ) -> bool: ... + +class CertificateSigningRequest: + def __eq__(self, other: object) -> bool: ... + def __hash__(self) -> int: ... + def public_key(self) -> CertificatePublicKeyTypes: ... + @property + def subject(self) -> x509.Name: ... + @property + def signature_hash_algorithm( + self, + ) -> hashes.HashAlgorithm | None: ... + @property + def signature_algorithm_oid(self) -> x509.ObjectIdentifier: ... + @property + def signature_algorithm_parameters( + self, + ) -> PSS | PKCS1v15 | ECDSA | None: ... + @property + def extensions(self) -> x509.Extensions: ... + @property + def attributes(self) -> x509.Attributes: ... + def public_bytes(self, encoding: serialization.Encoding) -> bytes: ... + @property + def signature(self) -> bytes: ... + @property + def tbs_certrequest_bytes(self) -> bytes: ... + @property + def is_signature_valid(self) -> bool: ... + +class PolicyBuilder: + def time(self, time: datetime.datetime) -> PolicyBuilder: ... + def store(self, store: Store) -> PolicyBuilder: ... + def max_chain_depth(self, max_chain_depth: int) -> PolicyBuilder: ... + def extension_policies( + self, *, ca_policy: ExtensionPolicy, ee_policy: ExtensionPolicy + ) -> PolicyBuilder: ... + def build_client_verifier(self) -> ClientVerifier: ... + def build_server_verifier( + self, subject: x509.verification.Subject + ) -> ServerVerifier: ... + +class Policy: + @property + def max_chain_depth(self) -> int: ... + @property + def subject(self) -> x509.verification.Subject | None: ... + @property + def validation_time(self) -> datetime.datetime: ... + @property + def extended_key_usage(self) -> x509.ObjectIdentifier: ... + @property + def minimum_rsa_modulus(self) -> int: ... + +class Criticality: + CRITICAL: Criticality + AGNOSTIC: Criticality + NON_CRITICAL: Criticality + +T = typing.TypeVar("T", contravariant=True, bound=x509.ExtensionType) + +MaybeExtensionValidatorCallback = typing.Callable[ + [ + Policy, + x509.Certificate, + T | None, + ], + None, +] + +PresentExtensionValidatorCallback = typing.Callable[ + [Policy, x509.Certificate, T], + None, +] + +class ExtensionPolicy: + @staticmethod + def permit_all() -> ExtensionPolicy: ... + @staticmethod + def webpki_defaults_ca() -> ExtensionPolicy: ... + @staticmethod + def webpki_defaults_ee() -> ExtensionPolicy: ... + def require_not_present( + self, extension_type: type[x509.ExtensionType] + ) -> ExtensionPolicy: ... + def may_be_present( + self, + extension_type: type[T], + criticality: Criticality, + validator: MaybeExtensionValidatorCallback[T] | None, + ) -> ExtensionPolicy: ... + def require_present( + self, + extension_type: type[T], + criticality: Criticality, + validator: PresentExtensionValidatorCallback[T] | None, + ) -> ExtensionPolicy: ... + +class VerifiedClient: + @property + def subjects(self) -> list[x509.GeneralName] | None: ... + @property + def chain(self) -> list[x509.Certificate]: ... + +class ClientVerifier: + @property + def policy(self) -> Policy: ... + @property + def store(self) -> Store: ... + def verify( + self, + leaf: x509.Certificate, + intermediates: list[x509.Certificate], + ) -> VerifiedClient: ... + +class ServerVerifier: + @property + def policy(self) -> Policy: ... + @property + def store(self) -> Store: ... + def verify( + self, + leaf: x509.Certificate, + intermediates: list[x509.Certificate], + ) -> list[x509.Certificate]: ... + +class Store: + def __init__(self, certs: list[x509.Certificate]) -> None: ... + +class VerificationError(Exception): ... diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/__init__.py new file mode 100644 index 0000000..b509336 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/__init__.py @@ -0,0 +1,3 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/_conditional.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/_conditional.py new file mode 100644 index 0000000..1e447a5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/_conditional.py @@ -0,0 +1,199 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + + +def cryptography_has_set_cert_cb() -> list[str]: + return [ + "SSL_CTX_set_cert_cb", + "SSL_set_cert_cb", + ] + + +def cryptography_has_ssl_st() -> list[str]: + return [ + "SSL_ST_BEFORE", + "SSL_ST_OK", + "SSL_ST_INIT", + "SSL_ST_RENEGOTIATE", + ] + + +def cryptography_has_tls_st() -> list[str]: + return [ + "TLS_ST_BEFORE", + "TLS_ST_OK", + ] + + +def cryptography_has_ssl_sigalgs() -> list[str]: + return [ + "SSL_CTX_set1_sigalgs_list", + ] + + +def cryptography_has_psk() -> list[str]: + return [ + "SSL_CTX_use_psk_identity_hint", + "SSL_CTX_set_psk_server_callback", + "SSL_CTX_set_psk_client_callback", + ] + + +def cryptography_has_psk_tlsv13() -> list[str]: + return [ + "SSL_CTX_set_psk_find_session_callback", + "SSL_CTX_set_psk_use_session_callback", + "Cryptography_SSL_SESSION_new", + "SSL_CIPHER_find", + "SSL_SESSION_set1_master_key", + "SSL_SESSION_set_cipher", + "SSL_SESSION_set_protocol_version", + ] + + +def cryptography_has_custom_ext() -> list[str]: + return [ + "SSL_CTX_add_client_custom_ext", + "SSL_CTX_add_server_custom_ext", + "SSL_extension_supported", + ] + + +def cryptography_has_tlsv13_functions() -> list[str]: + return [ + "SSL_CTX_set_ciphersuites", + ] + + +def cryptography_has_tlsv13_hs_functions() -> list[str]: + return [ + "SSL_VERIFY_POST_HANDSHAKE", + "SSL_verify_client_post_handshake", + "SSL_CTX_set_post_handshake_auth", + "SSL_set_post_handshake_auth", + "SSL_SESSION_get_max_early_data", + "SSL_write_early_data", + "SSL_read_early_data", + "SSL_CTX_set_max_early_data", + ] + + +def cryptography_has_ssl_verify_client_post_handshake() -> list[str]: + return [ + "SSL_verify_client_post_handshake", + ] + + +def cryptography_has_engine() -> list[str]: + return [ + "ENGINE_by_id", + "ENGINE_init", + "ENGINE_finish", + "ENGINE_get_default_RAND", + "ENGINE_set_default_RAND", + "ENGINE_unregister_RAND", + "ENGINE_ctrl_cmd", + "ENGINE_free", + "ENGINE_get_name", + "ENGINE_ctrl_cmd_string", + "ENGINE_load_builtin_engines", + "ENGINE_load_private_key", + "ENGINE_load_public_key", + "SSL_CTX_set_client_cert_engine", + ] + + +def cryptography_has_verified_chain() -> list[str]: + return [ + "SSL_get0_verified_chain", + ] + + +def cryptography_has_srtp() -> list[str]: + return [ + "SSL_CTX_set_tlsext_use_srtp", + "SSL_set_tlsext_use_srtp", + "SSL_get_selected_srtp_profile", + ] + + +def cryptography_has_dtls_get_data_mtu() -> list[str]: + return [ + "DTLS_get_data_mtu", + ] + + +def cryptography_has_ssl_cookie() -> list[str]: + return [ + "SSL_OP_COOKIE_EXCHANGE", + "DTLS1_COOKIE_LENGTH", + "DTLSv1_listen", + "SSL_CTX_set_cookie_generate_cb", + "SSL_CTX_set_cookie_verify_cb", + ] + + +def cryptography_has_prime_checks() -> list[str]: + return [ + "BN_prime_checks_for_size", + ] + + +def cryptography_has_unexpected_eof_while_reading() -> list[str]: + return ["SSL_R_UNEXPECTED_EOF_WHILE_READING"] + + +def cryptography_has_ssl_op_ignore_unexpected_eof() -> list[str]: + return [ + "SSL_OP_IGNORE_UNEXPECTED_EOF", + ] + + +def cryptography_has_get_extms_support() -> list[str]: + return ["SSL_get_extms_support"] + + +def cryptography_has_ssl_get0_group_name() -> list[str]: + return ["SSL_get0_group_name"] + + +# This is a mapping of +# {condition: function-returning-names-dependent-on-that-condition} so we can +# loop over them and delete unsupported names at runtime. It will be removed +# when cffi supports #if in cdef. We use functions instead of just a dict of +# lists so we can use coverage to measure which are used. +CONDITIONAL_NAMES = { + "Cryptography_HAS_SET_CERT_CB": cryptography_has_set_cert_cb, + "Cryptography_HAS_SSL_ST": cryptography_has_ssl_st, + "Cryptography_HAS_TLS_ST": cryptography_has_tls_st, + "Cryptography_HAS_SIGALGS": cryptography_has_ssl_sigalgs, + "Cryptography_HAS_PSK": cryptography_has_psk, + "Cryptography_HAS_PSK_TLSv1_3": cryptography_has_psk_tlsv13, + "Cryptography_HAS_CUSTOM_EXT": cryptography_has_custom_ext, + "Cryptography_HAS_TLSv1_3_FUNCTIONS": cryptography_has_tlsv13_functions, + "Cryptography_HAS_TLSv1_3_HS_FUNCTIONS": ( + cryptography_has_tlsv13_hs_functions + ), + "Cryptography_HAS_SSL_VERIFY_CLIENT_POST_HANDSHAKE": ( + cryptography_has_ssl_verify_client_post_handshake + ), + "Cryptography_HAS_ENGINE": cryptography_has_engine, + "Cryptography_HAS_VERIFIED_CHAIN": cryptography_has_verified_chain, + "Cryptography_HAS_SRTP": cryptography_has_srtp, + "Cryptography_HAS_DTLS_GET_DATA_MTU": cryptography_has_dtls_get_data_mtu, + "Cryptography_HAS_SSL_COOKIE": cryptography_has_ssl_cookie, + "Cryptography_HAS_PRIME_CHECKS": cryptography_has_prime_checks, + "Cryptography_HAS_UNEXPECTED_EOF_WHILE_READING": ( + cryptography_has_unexpected_eof_while_reading + ), + "Cryptography_HAS_SSL_OP_IGNORE_UNEXPECTED_EOF": ( + cryptography_has_ssl_op_ignore_unexpected_eof + ), + "Cryptography_HAS_GET_EXTMS_SUPPORT": cryptography_has_get_extms_support, + "Cryptography_HAS_SSL_GET0_GROUP_NAME": ( + cryptography_has_ssl_get0_group_name + ), +} diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/binding.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/binding.py new file mode 100644 index 0000000..6a0cafd --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/bindings/openssl/binding.py @@ -0,0 +1,122 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import os +import sys +import threading +import types +import typing +import warnings +from collections.abc import Callable + +import cryptography +from cryptography.exceptions import InternalError +from cryptography.hazmat.bindings._rust import _openssl, openssl +from cryptography.hazmat.bindings.openssl._conditional import CONDITIONAL_NAMES + + +def _openssl_assert(ok: bool) -> None: + if not ok: + errors = openssl.capture_error_stack() + + raise InternalError( + "Unknown OpenSSL error. This error is commonly encountered when " + "another library is not cleaning up the OpenSSL error stack. If " + "you are using cryptography with another library that uses " + "OpenSSL try disabling it before reporting a bug. Otherwise " + "please file an issue at https://github.com/pyca/cryptography/" + "issues with information on how to reproduce " + f"this. ({errors!r})", + errors, + ) + + +def build_conditional_library( + lib: typing.Any, + conditional_names: dict[str, Callable[[], list[str]]], +) -> typing.Any: + conditional_lib = types.ModuleType("lib") + conditional_lib._original_lib = lib # type: ignore[attr-defined] + excluded_names = set() + for condition, names_cb in conditional_names.items(): + if not getattr(lib, condition): + excluded_names.update(names_cb()) + + for attr in dir(lib): + if attr not in excluded_names: + setattr(conditional_lib, attr, getattr(lib, attr)) + + return conditional_lib + + +class Binding: + """ + OpenSSL API wrapper. + """ + + lib: typing.ClassVar[typing.Any] = None + ffi: typing.Any = _openssl.ffi + _lib_loaded = False + _init_lock = threading.Lock() + + def __init__(self) -> None: + self._ensure_ffi_initialized() + + @classmethod + def _ensure_ffi_initialized(cls) -> None: + with cls._init_lock: + if not cls._lib_loaded: + cls.lib = build_conditional_library( + _openssl.lib, CONDITIONAL_NAMES + ) + cls._lib_loaded = True + + @classmethod + def init_static_locks(cls) -> None: + cls._ensure_ffi_initialized() + + +def _verify_package_version(version: str) -> None: + # Occasionally we run into situations where the version of the Python + # package does not match the version of the shared object that is loaded. + # This may occur in environments where multiple versions of cryptography + # are installed and available in the python path. To avoid errors cropping + # up later this code checks that the currently imported package and the + # shared object that were loaded have the same version and raise an + # ImportError if they do not + so_package_version = _openssl.ffi.string( + _openssl.lib.CRYPTOGRAPHY_PACKAGE_VERSION + ) + if version.encode("ascii") != so_package_version: + raise ImportError( + "The version of cryptography does not match the loaded " + "shared object. This can happen if you have multiple copies of " + "cryptography installed in your Python path. Please try creating " + "a new virtual environment to resolve this issue. " + f"Loaded python version: {version}, " + f"shared object version: {so_package_version}" + ) + + _openssl_assert( + _openssl.lib.OpenSSL_version_num() == openssl.openssl_version(), + ) + + +_verify_package_version(cryptography.__version__) + +Binding.init_static_locks() + +if ( + sys.platform == "win32" + and os.environ.get("PROCESSOR_ARCHITEW6432") is not None +): + warnings.warn( + "You are using cryptography on a 32-bit Python on a 64-bit Windows " + "Operating System. Cryptography will be significantly faster if you " + "switch to using a 64-bit Python.", + UserWarning, + stacklevel=2, + ) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/__init__.py new file mode 100644 index 0000000..41d7318 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/__init__.py @@ -0,0 +1,5 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/__init__.py new file mode 100644 index 0000000..41d7318 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/__init__.py @@ -0,0 +1,5 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py new file mode 100644 index 0000000..703c8e4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py @@ -0,0 +1,142 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import warnings + +from cryptography import utils +from cryptography.hazmat.primitives._cipheralgorithm import ( + BlockCipherAlgorithm, + CipherAlgorithm, + _verify_key_size, +) + + +class ARC4(CipherAlgorithm): + name = "RC4" + key_sizes = frozenset([40, 56, 64, 80, 128, 160, 192, 256]) + + def __init__(self, key: bytes): + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 + + +class TripleDES(BlockCipherAlgorithm): + name = "3DES" + block_size = 64 + key_sizes = frozenset([64, 128, 192]) + + def __init__(self, key: bytes): + if len(key) == 8: + warnings.warn( + "Single-key TripleDES (8-byte keys) is deprecated and " + "support will be removed in a future release. Use 24-byte " + "keys instead (e.g., key + key + key).", + utils.DeprecatedIn47, + stacklevel=2, + ) + key = key + key + key + elif len(key) == 16: + warnings.warn( + "Two-key TripleDES (16-byte keys) is deprecated and " + "support will be removed in a future release. Use 24-byte " + "keys instead (e.g., key + key[:8]).", + utils.DeprecatedIn47, + stacklevel=2, + ) + key = key + key[:8] + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 + + +# Not actually supported, marker for tests +class _DES: + key_size = 64 + + +class Blowfish(BlockCipherAlgorithm): + name = "Blowfish" + block_size = 64 + key_sizes = frozenset(range(32, 449, 8)) + + def __init__(self, key: bytes): + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 + + +class CAST5(BlockCipherAlgorithm): + name = "CAST5" + block_size = 64 + key_sizes = frozenset(range(40, 129, 8)) + + def __init__(self, key: bytes): + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 + + +class SEED(BlockCipherAlgorithm): + name = "SEED" + block_size = 128 + key_sizes = frozenset([128]) + + def __init__(self, key: bytes): + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 + + +class IDEA(BlockCipherAlgorithm): + name = "IDEA" + block_size = 64 + key_sizes = frozenset([128]) + + def __init__(self, key: bytes): + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 + + +class Camellia(BlockCipherAlgorithm): + name = "camellia" + block_size = 128 + key_sizes = frozenset([128, 192, 256]) + + def __init__(self, key: bytes): + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 + + +# This class only allows RC2 with a 128-bit key. No support for +# effective key bits or other key sizes is provided. +class RC2(BlockCipherAlgorithm): + name = "RC2" + block_size = 64 + key_sizes = frozenset([128]) + + def __init__(self, key: bytes): + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/modes.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/modes.py new file mode 100644 index 0000000..1786bb0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/decrepit/ciphers/modes.py @@ -0,0 +1,53 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography import utils +from cryptography.hazmat.primitives._modes import ( + ModeWithInitializationVector, + _check_iv_and_key_length, +) + + +class OFB(ModeWithInitializationVector): + name = "OFB" + + def __init__(self, initialization_vector: utils.Buffer): + utils._check_byteslike("initialization_vector", initialization_vector) + self._initialization_vector = initialization_vector + + @property + def initialization_vector(self) -> utils.Buffer: + return self._initialization_vector + + validate_for_algorithm = _check_iv_and_key_length + + +class CFB(ModeWithInitializationVector): + name = "CFB" + + def __init__(self, initialization_vector: utils.Buffer): + utils._check_byteslike("initialization_vector", initialization_vector) + self._initialization_vector = initialization_vector + + @property + def initialization_vector(self) -> utils.Buffer: + return self._initialization_vector + + validate_for_algorithm = _check_iv_and_key_length + + +class CFB8(ModeWithInitializationVector): + name = "CFB8" + + def __init__(self, initialization_vector: utils.Buffer): + utils._check_byteslike("initialization_vector", initialization_vector) + self._initialization_vector = initialization_vector + + @property + def initialization_vector(self) -> utils.Buffer: + return self._initialization_vector + + validate_for_algorithm = _check_iv_and_key_length diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/__init__.py new file mode 100644 index 0000000..b509336 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/__init__.py @@ -0,0 +1,3 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_asymmetric.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_asymmetric.py new file mode 100644 index 0000000..ea55ffd --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_asymmetric.py @@ -0,0 +1,19 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +# This exists to break an import cycle. It is normally accessible from the +# asymmetric padding module. + + +class AsymmetricPadding(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def name(self) -> str: + """ + A string naming this padding (e.g. "PSS", "PKCS1"). + """ diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_cipheralgorithm.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_cipheralgorithm.py new file mode 100644 index 0000000..305a9fd --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_cipheralgorithm.py @@ -0,0 +1,60 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography import utils + +# This exists to break an import cycle. It is normally accessible from the +# ciphers module. + + +class CipherAlgorithm(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def name(self) -> str: + """ + A string naming this mode (e.g. "AES", "Camellia"). + """ + + @property + @abc.abstractmethod + def key_sizes(self) -> frozenset[int]: + """ + Valid key sizes for this algorithm in bits + """ + + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + The size of the key being used as an integer in bits (e.g. 128, 256). + """ + + +class BlockCipherAlgorithm(CipherAlgorithm): + key: utils.Buffer + + @property + @abc.abstractmethod + def block_size(self) -> int: + """ + The size of a block as an integer in bits (e.g. 64, 128). + """ + + +def _verify_key_size( + algorithm: CipherAlgorithm, key: utils.Buffer +) -> utils.Buffer: + # Verify that the key is instance of bytes + utils._check_byteslike("key", key) + + # Verify that the key size matches the expected key size + if len(key) * 8 not in algorithm.key_sizes: + raise ValueError( + f"Invalid key size ({len(key) * 8}) for {algorithm.name}." + ) + return key diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_modes.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_modes.py new file mode 100644 index 0000000..deae8bc --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_modes.py @@ -0,0 +1,105 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography import utils +from cryptography.exceptions import UnsupportedAlgorithm, _Reasons +from cryptography.hazmat.primitives._cipheralgorithm import ( + BlockCipherAlgorithm, + CipherAlgorithm, +) + + +class Mode(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def name(self) -> str: + """ + A string naming this mode (e.g. "ECB", "CBC"). + """ + + @abc.abstractmethod + def validate_for_algorithm(self, algorithm: CipherAlgorithm) -> None: + """ + Checks that all the necessary invariants of this (mode, algorithm) + combination are met. + """ + + +class ModeWithInitializationVector(Mode, metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def initialization_vector(self) -> utils.Buffer: + """ + The value of the initialization vector for this mode as bytes. + """ + + +class ModeWithTweak(Mode, metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def tweak(self) -> utils.Buffer: + """ + The value of the tweak for this mode as bytes. + """ + + +class ModeWithNonce(Mode, metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def nonce(self) -> utils.Buffer: + """ + The value of the nonce for this mode as bytes. + """ + + +class ModeWithAuthenticationTag(Mode, metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def tag(self) -> bytes | None: + """ + The value of the tag supplied to the constructor of this mode. + """ + + +def _check_aes_key_length(self: Mode, algorithm: CipherAlgorithm) -> None: + if algorithm.key_size > 256 and algorithm.name == "AES": + raise ValueError( + "Only 128, 192, and 256 bit keys are allowed for this AES mode" + ) + + +def _check_iv_length( + self: ModeWithInitializationVector, algorithm: BlockCipherAlgorithm +) -> None: + iv_len = len(self.initialization_vector) + if iv_len * 8 != algorithm.block_size: + raise ValueError(f"Invalid IV size ({iv_len}) for {self.name}.") + + +def _check_nonce_length( + nonce: utils.Buffer, name: str, algorithm: CipherAlgorithm +) -> None: + if not isinstance(algorithm, BlockCipherAlgorithm): + raise UnsupportedAlgorithm( + f"{name} requires a block cipher algorithm", + _Reasons.UNSUPPORTED_CIPHER, + ) + if len(nonce) * 8 != algorithm.block_size: + raise ValueError(f"Invalid nonce size ({len(nonce)}) for {name}.") + + +def _check_iv_and_key_length( + self: ModeWithInitializationVector, algorithm: CipherAlgorithm +) -> None: + if not isinstance(algorithm, BlockCipherAlgorithm): + raise UnsupportedAlgorithm( + f"{self} requires a block cipher algorithm", + _Reasons.UNSUPPORTED_CIPHER, + ) + _check_aes_key_length(self, algorithm) + _check_iv_length(self, algorithm) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_serialization.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_serialization.py new file mode 100644 index 0000000..9c3c474 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/_serialization.py @@ -0,0 +1,136 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography import utils +from cryptography.hazmat.bindings._rust import Encoding as Encoding +from cryptography.hazmat.bindings._rust import ( + ParameterFormat as ParameterFormat, +) +from cryptography.hazmat.bindings._rust import PrivateFormat as PrivateFormat +from cryptography.hazmat.bindings._rust import PublicFormat as PublicFormat +from cryptography.hazmat.primitives.hashes import HashAlgorithm + +# This exists to break an import cycle. These classes are normally accessible +# from the serialization module. + + +class PBES(utils.Enum): + PBESv1SHA1And3KeyTripleDESCBC = "PBESv1 using SHA1 and 3-Key TripleDES" + PBESv2SHA256AndAES256CBC = "PBESv2 using SHA256 PBKDF2 and AES256 CBC" + + +class KeySerializationEncryption(metaclass=abc.ABCMeta): + pass + + +class BestAvailableEncryption(KeySerializationEncryption): + def __init__(self, password: bytes): + if not isinstance(password, bytes) or len(password) == 0: + raise ValueError("Password must be 1 or more bytes.") + + self.password = password + + +class NoEncryption(KeySerializationEncryption): + pass + + +class KeySerializationEncryptionBuilder: + def __init__( + self, + format: PrivateFormat, + *, + _kdf_rounds: int | None = None, + _hmac_hash: HashAlgorithm | None = None, + _key_cert_algorithm: PBES | None = None, + ) -> None: + self._format = format + + self._kdf_rounds = _kdf_rounds + self._hmac_hash = _hmac_hash + self._key_cert_algorithm = _key_cert_algorithm + + def kdf_rounds(self, rounds: int) -> KeySerializationEncryptionBuilder: + if self._kdf_rounds is not None: + raise ValueError("kdf_rounds already set") + + if not isinstance(rounds, int): + raise TypeError("kdf_rounds must be an integer") + + if rounds < 1: + raise ValueError("kdf_rounds must be a positive integer") + + return KeySerializationEncryptionBuilder( + self._format, + _kdf_rounds=rounds, + _hmac_hash=self._hmac_hash, + _key_cert_algorithm=self._key_cert_algorithm, + ) + + def hmac_hash( + self, algorithm: HashAlgorithm + ) -> KeySerializationEncryptionBuilder: + if self._format is not PrivateFormat.PKCS12: + raise TypeError( + "hmac_hash only supported with PrivateFormat.PKCS12" + ) + + if self._hmac_hash is not None: + raise ValueError("hmac_hash already set") + return KeySerializationEncryptionBuilder( + self._format, + _kdf_rounds=self._kdf_rounds, + _hmac_hash=algorithm, + _key_cert_algorithm=self._key_cert_algorithm, + ) + + def key_cert_algorithm( + self, algorithm: PBES + ) -> KeySerializationEncryptionBuilder: + if self._format is not PrivateFormat.PKCS12: + raise TypeError( + "key_cert_algorithm only supported with PrivateFormat.PKCS12" + ) + if self._key_cert_algorithm is not None: + raise ValueError("key_cert_algorithm already set") + return KeySerializationEncryptionBuilder( + self._format, + _kdf_rounds=self._kdf_rounds, + _hmac_hash=self._hmac_hash, + _key_cert_algorithm=algorithm, + ) + + def build(self, password: bytes) -> KeySerializationEncryption: + if not isinstance(password, bytes) or len(password) == 0: + raise ValueError("Password must be 1 or more bytes.") + + return _KeySerializationEncryption( + self._format, + password, + kdf_rounds=self._kdf_rounds, + hmac_hash=self._hmac_hash, + key_cert_algorithm=self._key_cert_algorithm, + ) + + +class _KeySerializationEncryption(KeySerializationEncryption): + def __init__( + self, + format: PrivateFormat, + password: bytes, + *, + kdf_rounds: int | None, + hmac_hash: HashAlgorithm | None, + key_cert_algorithm: PBES | None, + ): + self._format = format + self.password = password + + self._kdf_rounds = kdf_rounds + self._hmac_hash = hmac_hash + self._key_cert_algorithm = key_cert_algorithm diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/__init__.py new file mode 100644 index 0000000..b509336 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/__init__.py @@ -0,0 +1,3 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/dh.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/dh.py new file mode 100644 index 0000000..2f6b834 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/dh.py @@ -0,0 +1,159 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization + +generate_parameters = rust_openssl.dh.generate_parameters + + +DHPrivateNumbers = rust_openssl.dh.DHPrivateNumbers +DHPublicNumbers = rust_openssl.dh.DHPublicNumbers +DHParameterNumbers = rust_openssl.dh.DHParameterNumbers + + +class DHParameters(metaclass=abc.ABCMeta): + @abc.abstractmethod + def generate_private_key(self) -> DHPrivateKey: + """ + Generates and returns a DHPrivateKey. + """ + + @abc.abstractmethod + def parameter_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.ParameterFormat, + ) -> bytes: + """ + Returns the parameters serialized as bytes. + """ + + @abc.abstractmethod + def parameter_numbers(self) -> DHParameterNumbers: + """ + Returns a DHParameterNumbers. + """ + + +DHParametersWithSerialization = DHParameters +DHParameters.register(rust_openssl.dh.DHParameters) + + +class DHPublicKey(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + The bit length of the prime modulus. + """ + + @abc.abstractmethod + def parameters(self) -> DHParameters: + """ + The DHParameters object associated with this public key. + """ + + @abc.abstractmethod + def public_numbers(self) -> DHPublicNumbers: + """ + Returns a DHPublicNumbers. + """ + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + Returns the key serialized as bytes. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> DHPublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> DHPublicKey: + """ + Returns a deep copy. + """ + + +DHPublicKeyWithSerialization = DHPublicKey +DHPublicKey.register(rust_openssl.dh.DHPublicKey) + + +class DHPrivateKey(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + The bit length of the prime modulus. + """ + + @abc.abstractmethod + def public_key(self) -> DHPublicKey: + """ + The DHPublicKey associated with this private key. + """ + + @abc.abstractmethod + def parameters(self) -> DHParameters: + """ + The DHParameters object associated with this private key. + """ + + @abc.abstractmethod + def exchange(self, peer_public_key: DHPublicKey) -> bytes: + """ + Given peer's DHPublicKey, carry out the key exchange and + return shared key as bytes. + """ + + @abc.abstractmethod + def private_numbers(self) -> DHPrivateNumbers: + """ + Returns a DHPrivateNumbers. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + Returns the key serialized as bytes. + """ + + @abc.abstractmethod + def __copy__(self) -> DHPrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> DHPrivateKey: + """ + Returns a deep copy. + """ + + +DHPrivateKeyWithSerialization = DHPrivateKey +DHPrivateKey.register(rust_openssl.dh.DHPrivateKey) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/dsa.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/dsa.py new file mode 100644 index 0000000..f245557 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/dsa.py @@ -0,0 +1,179 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc +import typing + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization, hashes +from cryptography.hazmat.primitives.asymmetric import utils as asym_utils +from cryptography.utils import Buffer + + +class DSAParameters(metaclass=abc.ABCMeta): + @abc.abstractmethod + def generate_private_key(self) -> DSAPrivateKey: + """ + Generates and returns a DSAPrivateKey. + """ + + @abc.abstractmethod + def parameter_numbers(self) -> DSAParameterNumbers: + """ + Returns a DSAParameterNumbers. + """ + + +DSAParametersWithNumbers = DSAParameters +DSAParameters.register(rust_openssl.dsa.DSAParameters) + + +class DSAPrivateKey(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + The bit length of the prime modulus. + """ + + @abc.abstractmethod + def public_key(self) -> DSAPublicKey: + """ + The DSAPublicKey associated with this private key. + """ + + @abc.abstractmethod + def parameters(self) -> DSAParameters: + """ + The DSAParameters object associated with this private key. + """ + + @abc.abstractmethod + def sign( + self, + data: Buffer, + algorithm: asym_utils.Prehashed | hashes.HashAlgorithm, + ) -> bytes: + """ + Signs the data + """ + + @abc.abstractmethod + def private_numbers(self) -> DSAPrivateNumbers: + """ + Returns a DSAPrivateNumbers. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + Returns the key serialized as bytes. + """ + + @abc.abstractmethod + def __copy__(self) -> DSAPrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> DSAPrivateKey: + """ + Returns a deep copy. + """ + + +DSAPrivateKeyWithSerialization = DSAPrivateKey +DSAPrivateKey.register(rust_openssl.dsa.DSAPrivateKey) + + +class DSAPublicKey(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + The bit length of the prime modulus. + """ + + @abc.abstractmethod + def parameters(self) -> DSAParameters: + """ + The DSAParameters object associated with this public key. + """ + + @abc.abstractmethod + def public_numbers(self) -> DSAPublicNumbers: + """ + Returns a DSAPublicNumbers. + """ + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + Returns the key serialized as bytes. + """ + + @abc.abstractmethod + def verify( + self, + signature: Buffer, + data: Buffer, + algorithm: asym_utils.Prehashed | hashes.HashAlgorithm, + ) -> None: + """ + Verifies the signature of the data. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> DSAPublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> DSAPublicKey: + """ + Returns a deep copy. + """ + + +DSAPublicKeyWithSerialization = DSAPublicKey +DSAPublicKey.register(rust_openssl.dsa.DSAPublicKey) + +DSAPrivateNumbers = rust_openssl.dsa.DSAPrivateNumbers +DSAPublicNumbers = rust_openssl.dsa.DSAPublicNumbers +DSAParameterNumbers = rust_openssl.dsa.DSAParameterNumbers + + +def generate_parameters( + key_size: int, backend: typing.Any = None +) -> DSAParameters: + if key_size not in (1024, 2048, 3072, 4096): + raise ValueError("Key size must be 1024, 2048, 3072, or 4096 bits.") + + return rust_openssl.dsa.generate_parameters(key_size) + + +def generate_private_key( + key_size: int, backend: typing.Any = None +) -> DSAPrivateKey: + parameters = generate_parameters(key_size) + return parameters.generate_private_key() diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ec.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ec.py new file mode 100644 index 0000000..39e6751 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ec.py @@ -0,0 +1,369 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc +import typing + +from cryptography import utils +from cryptography.exceptions import UnsupportedAlgorithm, _Reasons +from cryptography.hazmat._oid import ObjectIdentifier +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization, hashes +from cryptography.hazmat.primitives.asymmetric import utils as asym_utils + + +class EllipticCurveOID: + SECP192R1 = ObjectIdentifier("1.2.840.10045.3.1.1") + SECP224R1 = ObjectIdentifier("1.3.132.0.33") + SECP256K1 = ObjectIdentifier("1.3.132.0.10") + SECP256R1 = ObjectIdentifier("1.2.840.10045.3.1.7") + SECP384R1 = ObjectIdentifier("1.3.132.0.34") + SECP521R1 = ObjectIdentifier("1.3.132.0.35") + BRAINPOOLP256R1 = ObjectIdentifier("1.3.36.3.3.2.8.1.1.7") + BRAINPOOLP384R1 = ObjectIdentifier("1.3.36.3.3.2.8.1.1.11") + BRAINPOOLP512R1 = ObjectIdentifier("1.3.36.3.3.2.8.1.1.13") + + +class EllipticCurve(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def name(self) -> str: + """ + The name of the curve. e.g. secp256r1. + """ + + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + Bit size of a secret scalar for the curve. + """ + + @property + @abc.abstractmethod + def group_order(self) -> int: + """ + The order of the curve's group. + """ + + +class EllipticCurveSignatureAlgorithm(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def algorithm( + self, + ) -> asym_utils.Prehashed | hashes.HashAlgorithm: + """ + The digest algorithm used with this signature. + """ + + +class EllipticCurvePrivateKey(metaclass=abc.ABCMeta): + @abc.abstractmethod + def exchange( + self, algorithm: ECDH, peer_public_key: EllipticCurvePublicKey + ) -> bytes: + """ + Performs a key exchange operation using the provided algorithm with the + provided peer's public key. + """ + + @abc.abstractmethod + def public_key(self) -> EllipticCurvePublicKey: + """ + The EllipticCurvePublicKey for this private key. + """ + + @property + @abc.abstractmethod + def curve(self) -> EllipticCurve: + """ + The EllipticCurve that this key is on. + """ + + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + Bit size of a secret scalar for the curve. + """ + + @abc.abstractmethod + def sign( + self, + data: utils.Buffer, + signature_algorithm: EllipticCurveSignatureAlgorithm, + ) -> bytes: + """ + Signs the data + """ + + @abc.abstractmethod + def private_numbers(self) -> EllipticCurvePrivateNumbers: + """ + Returns an EllipticCurvePrivateNumbers. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + Returns the key serialized as bytes. + """ + + @abc.abstractmethod + def __copy__(self) -> EllipticCurvePrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> EllipticCurvePrivateKey: + """ + Returns a deep copy. + """ + + +EllipticCurvePrivateKeyWithSerialization = EllipticCurvePrivateKey +EllipticCurvePrivateKey.register(rust_openssl.ec.ECPrivateKey) + + +class EllipticCurvePublicKey(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def curve(self) -> EllipticCurve: + """ + The EllipticCurve that this key is on. + """ + + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + Bit size of a secret scalar for the curve. + """ + + @abc.abstractmethod + def public_numbers(self) -> EllipticCurvePublicNumbers: + """ + Returns an EllipticCurvePublicNumbers. + """ + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + Returns the key serialized as bytes. + """ + + @abc.abstractmethod + def verify( + self, + signature: utils.Buffer, + data: utils.Buffer, + signature_algorithm: EllipticCurveSignatureAlgorithm, + ) -> None: + """ + Verifies the signature of the data. + """ + + @classmethod + def from_encoded_point( + cls, curve: EllipticCurve, data: bytes + ) -> EllipticCurvePublicKey: + utils._check_bytes("data", data) + + if len(data) == 0: + raise ValueError("data must not be an empty byte string") + + if data[0] not in [0x02, 0x03, 0x04]: + raise ValueError("Unsupported elliptic curve point type") + + return rust_openssl.ec.from_public_bytes(curve, data) + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> EllipticCurvePublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> EllipticCurvePublicKey: + """ + Returns a deep copy. + """ + + +EllipticCurvePublicKeyWithSerialization = EllipticCurvePublicKey +EllipticCurvePublicKey.register(rust_openssl.ec.ECPublicKey) + +EllipticCurvePrivateNumbers = rust_openssl.ec.EllipticCurvePrivateNumbers +EllipticCurvePublicNumbers = rust_openssl.ec.EllipticCurvePublicNumbers + + +class SECP521R1(EllipticCurve): + name = "secp521r1" + key_size = 521 + group_order = 0x1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA51868783BF2F966B7FCC0148F709A5D03BB5C9B8899C47AEBB6FB71E91386409 # noqa: E501 + + +class SECP384R1(EllipticCurve): + name = "secp384r1" + key_size = 384 + group_order = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7634D81F4372DDF581A0DB248B0A77AECEC196ACCC52973 # noqa: E501 + + +class SECP256R1(EllipticCurve): + name = "secp256r1" + key_size = 256 + group_order = ( + 0xFFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551 + ) + + +class SECP256K1(EllipticCurve): + name = "secp256k1" + key_size = 256 + group_order = ( + 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 + ) + + +class SECP224R1(EllipticCurve): + name = "secp224r1" + key_size = 224 + group_order = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF16A2E0B8F03E13DD29455C5C2A3D + + +class SECP192R1(EllipticCurve): + name = "secp192r1" + key_size = 192 + group_order = 0xFFFFFFFFFFFFFFFFFFFFFFFF99DEF836146BC9B1B4D22831 + + +class BrainpoolP256R1(EllipticCurve): + name = "brainpoolP256r1" + key_size = 256 + group_order = ( + 0xA9FB57DBA1EEA9BC3E660A909D838D718C397AA3B561A6F7901E0E82974856A7 + ) + + +class BrainpoolP384R1(EllipticCurve): + name = "brainpoolP384r1" + key_size = 384 + group_order = 0x8CB91E82A3386D280F5D6F7E50E641DF152F7109ED5456B31F166E6CAC0425A7CF3AB6AF6B7FC3103B883202E9046565 # noqa: E501 + + +class BrainpoolP512R1(EllipticCurve): + name = "brainpoolP512r1" + key_size = 512 + group_order = 0xAADD9DB8DBE9C48B3FD4E6AE33C9FC07CB308DB3B3C9D20ED6639CCA70330870553E5C414CA92619418661197FAC10471DB1D381085DDADDB58796829CA90069 # noqa: E501 + + +_CURVE_TYPES: dict[str, EllipticCurve] = { + "prime192v1": SECP192R1(), + "prime256v1": SECP256R1(), + "secp192r1": SECP192R1(), + "secp224r1": SECP224R1(), + "secp256r1": SECP256R1(), + "secp384r1": SECP384R1(), + "secp521r1": SECP521R1(), + "secp256k1": SECP256K1(), + "brainpoolP256r1": BrainpoolP256R1(), + "brainpoolP384r1": BrainpoolP384R1(), + "brainpoolP512r1": BrainpoolP512R1(), +} + + +class ECDSA(EllipticCurveSignatureAlgorithm): + def __init__( + self, + algorithm: asym_utils.Prehashed | hashes.HashAlgorithm, + deterministic_signing: bool = False, + ): + from cryptography.hazmat.backends.openssl.backend import backend + + if ( + deterministic_signing + and not backend.ecdsa_deterministic_supported() + ): + raise UnsupportedAlgorithm( + "ECDSA with deterministic signature (RFC 6979) is not " + "supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + self._algorithm = algorithm + self._deterministic_signing = deterministic_signing + + @property + def algorithm( + self, + ) -> asym_utils.Prehashed | hashes.HashAlgorithm: + return self._algorithm + + @property + def deterministic_signing( + self, + ) -> bool: + return self._deterministic_signing + + +generate_private_key = rust_openssl.ec.generate_private_key + + +def derive_private_key( + private_value: int, + curve: EllipticCurve, + backend: typing.Any = None, +) -> EllipticCurvePrivateKey: + if not isinstance(private_value, int): + raise TypeError("private_value must be an integer type.") + + if private_value <= 0: + raise ValueError("private_value must be a positive integer.") + + return rust_openssl.ec.derive_private_key(private_value, curve) + + +class ECDH: + pass + + +_OID_TO_CURVE = { + EllipticCurveOID.SECP192R1: SECP192R1, + EllipticCurveOID.SECP224R1: SECP224R1, + EllipticCurveOID.SECP256K1: SECP256K1, + EllipticCurveOID.SECP256R1: SECP256R1, + EllipticCurveOID.SECP384R1: SECP384R1, + EllipticCurveOID.SECP521R1: SECP521R1, + EllipticCurveOID.BRAINPOOLP256R1: BrainpoolP256R1, + EllipticCurveOID.BRAINPOOLP384R1: BrainpoolP384R1, + EllipticCurveOID.BRAINPOOLP512R1: BrainpoolP512R1, +} + + +def get_curve_for_oid(oid: ObjectIdentifier) -> type[EllipticCurve]: + try: + return _OID_TO_CURVE[oid] + except KeyError: + raise LookupError( + "The provided object identifier has no matching elliptic " + "curve class" + ) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py new file mode 100644 index 0000000..70aec5b --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py @@ -0,0 +1,116 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization +from cryptography.utils import Buffer + + +class Ed25519PublicKey(metaclass=abc.ABCMeta): + @classmethod + def from_public_bytes(cls, data: bytes) -> Ed25519PublicKey: + return rust_openssl.ed25519.from_public_bytes(data) + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + The serialized bytes of the public key. + """ + + @abc.abstractmethod + def public_bytes_raw(self) -> bytes: + """ + The raw bytes of the public key. + Equivalent to public_bytes(Raw, Raw). + """ + + @abc.abstractmethod + def verify(self, signature: Buffer, data: Buffer) -> None: + """ + Verify the signature. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> Ed25519PublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> Ed25519PublicKey: + """ + Returns a deep copy. + """ + + +Ed25519PublicKey.register(rust_openssl.ed25519.Ed25519PublicKey) + + +class Ed25519PrivateKey(metaclass=abc.ABCMeta): + @classmethod + def generate(cls) -> Ed25519PrivateKey: + return rust_openssl.ed25519.generate_key() + + @classmethod + def from_private_bytes(cls, data: Buffer) -> Ed25519PrivateKey: + return rust_openssl.ed25519.from_private_bytes(data) + + @abc.abstractmethod + def public_key(self) -> Ed25519PublicKey: + """ + The Ed25519PublicKey derived from the private key. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + The serialized bytes of the private key. + """ + + @abc.abstractmethod + def private_bytes_raw(self) -> bytes: + """ + The raw bytes of the private key. + Equivalent to private_bytes(Raw, Raw, NoEncryption()). + """ + + @abc.abstractmethod + def sign(self, data: Buffer) -> bytes: + """ + Signs the data. + """ + + @abc.abstractmethod + def __copy__(self) -> Ed25519PrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> Ed25519PrivateKey: + """ + Returns a deep copy. + """ + + +Ed25519PrivateKey.register(rust_openssl.ed25519.Ed25519PrivateKey) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ed448.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ed448.py new file mode 100644 index 0000000..9ecb478 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/ed448.py @@ -0,0 +1,143 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.exceptions import UnsupportedAlgorithm, _Reasons +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization +from cryptography.utils import Buffer + + +class Ed448PublicKey(metaclass=abc.ABCMeta): + @classmethod + def from_public_bytes(cls, data: bytes) -> Ed448PublicKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.ed448_supported(): + raise UnsupportedAlgorithm( + "ed448 is not supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.ed448.from_public_bytes(data) + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + The serialized bytes of the public key. + """ + + @abc.abstractmethod + def public_bytes_raw(self) -> bytes: + """ + The raw bytes of the public key. + Equivalent to public_bytes(Raw, Raw). + """ + + @abc.abstractmethod + def verify(self, signature: Buffer, data: Buffer) -> None: + """ + Verify the signature. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> Ed448PublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> Ed448PublicKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "ed448"): + Ed448PublicKey.register(rust_openssl.ed448.Ed448PublicKey) + + +class Ed448PrivateKey(metaclass=abc.ABCMeta): + @classmethod + def generate(cls) -> Ed448PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.ed448_supported(): + raise UnsupportedAlgorithm( + "ed448 is not supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.ed448.generate_key() + + @classmethod + def from_private_bytes(cls, data: Buffer) -> Ed448PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.ed448_supported(): + raise UnsupportedAlgorithm( + "ed448 is not supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.ed448.from_private_bytes(data) + + @abc.abstractmethod + def public_key(self) -> Ed448PublicKey: + """ + The Ed448PublicKey derived from the private key. + """ + + @abc.abstractmethod + def sign(self, data: Buffer) -> bytes: + """ + Signs the data. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + The serialized bytes of the private key. + """ + + @abc.abstractmethod + def private_bytes_raw(self) -> bytes: + """ + The raw bytes of the private key. + Equivalent to private_bytes(Raw, Raw, NoEncryption()). + """ + + @abc.abstractmethod + def __copy__(self) -> Ed448PrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> Ed448PrivateKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "x448"): + Ed448PrivateKey.register(rust_openssl.ed448.Ed448PrivateKey) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/mldsa.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/mldsa.py new file mode 100644 index 0000000..0bd9684 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/mldsa.py @@ -0,0 +1,441 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.exceptions import UnsupportedAlgorithm, _Reasons +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization +from cryptography.utils import Buffer + + +class MLDSA44PublicKey(metaclass=abc.ABCMeta): + @classmethod + def from_public_bytes(cls, data: bytes) -> MLDSA44PublicKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mldsa_supported(): + raise UnsupportedAlgorithm( + "ML-DSA-44 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mldsa.from_mldsa44_public_bytes(data) + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + The serialized bytes of the public key. + """ + + @abc.abstractmethod + def public_bytes_raw(self) -> bytes: + """ + The raw bytes of the public key. + Equivalent to public_bytes(Raw, Raw). + + The public key is 1,312 bytes for MLDSA-44. + """ + + @abc.abstractmethod + def verify( + self, + signature: Buffer, + data: Buffer, + context: Buffer | None = None, + ) -> None: + """ + Verify the signature. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> MLDSA44PublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLDSA44PublicKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mldsa"): + MLDSA44PublicKey.register(rust_openssl.mldsa.MLDSA44PublicKey) + + +class MLDSA44PrivateKey(metaclass=abc.ABCMeta): + @classmethod + def generate(cls) -> MLDSA44PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mldsa_supported(): + raise UnsupportedAlgorithm( + "ML-DSA-44 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mldsa.generate_mldsa44_key() + + @classmethod + def from_seed_bytes(cls, data: Buffer) -> MLDSA44PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mldsa_supported(): + raise UnsupportedAlgorithm( + "ML-DSA-44 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mldsa.from_mldsa44_seed_bytes(data) + + @abc.abstractmethod + def public_key(self) -> MLDSA44PublicKey: + """ + The MLDSA44PublicKey derived from the private key. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + The serialized bytes of the private key. + + This method only returns the serialization of the seed form of the + private key, never the expanded one. + """ + + @abc.abstractmethod + def private_bytes_raw(self) -> bytes: + """ + The raw bytes of the private key. + Equivalent to private_bytes(Raw, Raw, NoEncryption()). + + This method only returns the seed form of the private key (32 bytes). + """ + + @abc.abstractmethod + def sign(self, data: Buffer, context: Buffer | None = None) -> bytes: + """ + Signs the data. + """ + + @abc.abstractmethod + def __copy__(self) -> MLDSA44PrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLDSA44PrivateKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mldsa"): + MLDSA44PrivateKey.register(rust_openssl.mldsa.MLDSA44PrivateKey) + + +class MLDSA65PublicKey(metaclass=abc.ABCMeta): + @classmethod + def from_public_bytes(cls, data: bytes) -> MLDSA65PublicKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mldsa_supported(): + raise UnsupportedAlgorithm( + "ML-DSA-65 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mldsa.from_mldsa65_public_bytes(data) + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + The serialized bytes of the public key. + """ + + @abc.abstractmethod + def public_bytes_raw(self) -> bytes: + """ + The raw bytes of the public key. + Equivalent to public_bytes(Raw, Raw). + + The public key is 1,952 bytes for MLDSA-65. + """ + + @abc.abstractmethod + def verify( + self, + signature: Buffer, + data: Buffer, + context: Buffer | None = None, + ) -> None: + """ + Verify the signature. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> MLDSA65PublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLDSA65PublicKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mldsa"): + MLDSA65PublicKey.register(rust_openssl.mldsa.MLDSA65PublicKey) + + +class MLDSA65PrivateKey(metaclass=abc.ABCMeta): + @classmethod + def generate(cls) -> MLDSA65PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mldsa_supported(): + raise UnsupportedAlgorithm( + "ML-DSA-65 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mldsa.generate_mldsa65_key() + + @classmethod + def from_seed_bytes(cls, data: Buffer) -> MLDSA65PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mldsa_supported(): + raise UnsupportedAlgorithm( + "ML-DSA-65 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mldsa.from_mldsa65_seed_bytes(data) + + @abc.abstractmethod + def public_key(self) -> MLDSA65PublicKey: + """ + The MLDSA65PublicKey derived from the private key. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + The serialized bytes of the private key. + + This method only returns the serialization of the seed form of the + private key, never the expanded one. + """ + + @abc.abstractmethod + def private_bytes_raw(self) -> bytes: + """ + The raw bytes of the private key. + Equivalent to private_bytes(Raw, Raw, NoEncryption()). + + This method only returns the seed form of the private key (32 bytes). + """ + + @abc.abstractmethod + def sign(self, data: Buffer, context: Buffer | None = None) -> bytes: + """ + Signs the data. + """ + + @abc.abstractmethod + def __copy__(self) -> MLDSA65PrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLDSA65PrivateKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mldsa"): + MLDSA65PrivateKey.register(rust_openssl.mldsa.MLDSA65PrivateKey) + + +class MLDSA87PublicKey(metaclass=abc.ABCMeta): + @classmethod + def from_public_bytes(cls, data: bytes) -> MLDSA87PublicKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mldsa_supported(): + raise UnsupportedAlgorithm( + "ML-DSA-87 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mldsa.from_mldsa87_public_bytes(data) + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + The serialized bytes of the public key. + """ + + @abc.abstractmethod + def public_bytes_raw(self) -> bytes: + """ + The raw bytes of the public key. + Equivalent to public_bytes(Raw, Raw). + + The public key is 2,592 bytes for MLDSA-87. + """ + + @abc.abstractmethod + def verify( + self, + signature: Buffer, + data: Buffer, + context: Buffer | None = None, + ) -> None: + """ + Verify the signature. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> MLDSA87PublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLDSA87PublicKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mldsa"): + MLDSA87PublicKey.register(rust_openssl.mldsa.MLDSA87PublicKey) + + +class MLDSA87PrivateKey(metaclass=abc.ABCMeta): + @classmethod + def generate(cls) -> MLDSA87PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mldsa_supported(): + raise UnsupportedAlgorithm( + "ML-DSA-87 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mldsa.generate_mldsa87_key() + + @classmethod + def from_seed_bytes(cls, data: Buffer) -> MLDSA87PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mldsa_supported(): + raise UnsupportedAlgorithm( + "ML-DSA-87 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mldsa.from_mldsa87_seed_bytes(data) + + @abc.abstractmethod + def public_key(self) -> MLDSA87PublicKey: + """ + The MLDSA87PublicKey derived from the private key. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + The serialized bytes of the private key. + + This method only returns the serialization of the seed form of the + private key, never the expanded one. + """ + + @abc.abstractmethod + def private_bytes_raw(self) -> bytes: + """ + The raw bytes of the private key. + Equivalent to private_bytes(Raw, Raw, NoEncryption()). + + This method only returns the seed form of the private key (32 bytes). + """ + + @abc.abstractmethod + def sign(self, data: Buffer, context: Buffer | None = None) -> bytes: + """ + Signs the data. + """ + + @abc.abstractmethod + def __copy__(self) -> MLDSA87PrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLDSA87PrivateKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mldsa"): + MLDSA87PrivateKey.register(rust_openssl.mldsa.MLDSA87PrivateKey) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/mlkem.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/mlkem.py new file mode 100644 index 0000000..64bca11 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/mlkem.py @@ -0,0 +1,278 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.exceptions import UnsupportedAlgorithm, _Reasons +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization +from cryptography.utils import Buffer + + +class MLKEM768PublicKey(metaclass=abc.ABCMeta): + @classmethod + def from_public_bytes(cls, data: Buffer) -> MLKEM768PublicKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mlkem_supported(): + raise UnsupportedAlgorithm( + "ML-KEM-768 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mlkem.from_mlkem768_public_bytes(data) + + @abc.abstractmethod + def encapsulate(self) -> tuple[bytes, bytes]: + """ + Encapsulate: returns (shared_secret, ciphertext). + """ + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + The serialized bytes of the public key. + """ + + @abc.abstractmethod + def public_bytes_raw(self) -> bytes: + """ + The raw bytes of the public key. + Equivalent to public_bytes(Raw, Raw). + + The public key is 1,184 bytes for ML-KEM-768. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> MLKEM768PublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLKEM768PublicKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mlkem"): + MLKEM768PublicKey.register(rust_openssl.mlkem.MLKEM768PublicKey) + + +class MLKEM768PrivateKey(metaclass=abc.ABCMeta): + @classmethod + def generate(cls) -> MLKEM768PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mlkem_supported(): + raise UnsupportedAlgorithm( + "ML-KEM-768 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mlkem.generate_mlkem768_key() + + @classmethod + def from_seed_bytes(cls, data: Buffer) -> MLKEM768PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mlkem_supported(): + raise UnsupportedAlgorithm( + "ML-KEM-768 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mlkem.from_mlkem768_seed_bytes(data) + + @abc.abstractmethod + def decapsulate(self, ciphertext: Buffer) -> bytes: + """ + Decapsulate: returns shared_secret. + """ + + @abc.abstractmethod + def public_key(self) -> MLKEM768PublicKey: + """ + The MLKEM768PublicKey derived from this private key. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + The serialized bytes of the private key. + """ + + @abc.abstractmethod + def private_bytes_raw(self) -> bytes: + """ + The raw bytes of the private key (64-byte seed). + Equivalent to private_bytes(Raw, Raw, NoEncryption()). + """ + + @abc.abstractmethod + def __copy__(self) -> MLKEM768PrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLKEM768PrivateKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mlkem"): + MLKEM768PrivateKey.register(rust_openssl.mlkem.MLKEM768PrivateKey) + + +class MLKEM1024PublicKey(metaclass=abc.ABCMeta): + @classmethod + def from_public_bytes(cls, data: Buffer) -> MLKEM1024PublicKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mlkem_supported(): + raise UnsupportedAlgorithm( + "ML-KEM-1024 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mlkem.from_mlkem1024_public_bytes(data) + + @abc.abstractmethod + def encapsulate(self) -> tuple[bytes, bytes]: + """ + Encapsulate: returns (shared_secret, ciphertext). + """ + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + The serialized bytes of the public key. + """ + + @abc.abstractmethod + def public_bytes_raw(self) -> bytes: + """ + The raw bytes of the public key. + Equivalent to public_bytes(Raw, Raw). + + The public key is 1,568 bytes for ML-KEM-1024. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> MLKEM1024PublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLKEM1024PublicKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mlkem"): + MLKEM1024PublicKey.register(rust_openssl.mlkem.MLKEM1024PublicKey) + + +class MLKEM1024PrivateKey(metaclass=abc.ABCMeta): + @classmethod + def generate(cls) -> MLKEM1024PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mlkem_supported(): + raise UnsupportedAlgorithm( + "ML-KEM-1024 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mlkem.generate_mlkem1024_key() + + @classmethod + def from_seed_bytes(cls, data: Buffer) -> MLKEM1024PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.mlkem_supported(): + raise UnsupportedAlgorithm( + "ML-KEM-1024 is not supported by this backend.", + _Reasons.UNSUPPORTED_PUBLIC_KEY_ALGORITHM, + ) + + return rust_openssl.mlkem.from_mlkem1024_seed_bytes(data) + + @abc.abstractmethod + def decapsulate(self, ciphertext: Buffer) -> bytes: + """ + Decapsulate: returns shared_secret. + """ + + @abc.abstractmethod + def public_key(self) -> MLKEM1024PublicKey: + """ + The MLKEM1024PublicKey derived from this private key. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + The serialized bytes of the private key. + """ + + @abc.abstractmethod + def private_bytes_raw(self) -> bytes: + """ + The raw bytes of the private key (64-byte seed). + Equivalent to private_bytes(Raw, Raw, NoEncryption()). + """ + + @abc.abstractmethod + def __copy__(self) -> MLKEM1024PrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> MLKEM1024PrivateKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "mlkem"): + MLKEM1024PrivateKey.register(rust_openssl.mlkem.MLKEM1024PrivateKey) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/padding.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/padding.py new file mode 100644 index 0000000..5121a28 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/padding.py @@ -0,0 +1,111 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.hazmat.primitives import hashes +from cryptography.hazmat.primitives._asymmetric import ( + AsymmetricPadding as AsymmetricPadding, +) +from cryptography.hazmat.primitives.asymmetric import rsa + + +class PKCS1v15(AsymmetricPadding): + name = "EMSA-PKCS1-v1_5" + + +class _MaxLength: + "Sentinel value for `MAX_LENGTH`." + + +class _Auto: + "Sentinel value for `AUTO`." + + +class _DigestLength: + "Sentinel value for `DIGEST_LENGTH`." + + +class PSS(AsymmetricPadding): + MAX_LENGTH = _MaxLength() + AUTO = _Auto() + DIGEST_LENGTH = _DigestLength() + name = "EMSA-PSS" + _salt_length: int | _MaxLength | _Auto | _DigestLength + + def __init__( + self, + mgf: MGF, + salt_length: int | _MaxLength | _Auto | _DigestLength, + ) -> None: + self._mgf = mgf + + if not isinstance( + salt_length, (int, _MaxLength, _Auto, _DigestLength) + ): + raise TypeError( + "salt_length must be an integer, MAX_LENGTH, " + "DIGEST_LENGTH, or AUTO" + ) + + if isinstance(salt_length, int) and salt_length < 0: + raise ValueError("salt_length must be zero or greater.") + + self._salt_length = salt_length + + @property + def mgf(self) -> MGF: + return self._mgf + + +class OAEP(AsymmetricPadding): + name = "EME-OAEP" + + def __init__( + self, + mgf: MGF, + algorithm: hashes.HashAlgorithm, + label: bytes | None, + ): + if not isinstance(algorithm, hashes.HashAlgorithm): + raise TypeError("Expected instance of hashes.HashAlgorithm.") + + self._mgf = mgf + self._algorithm = algorithm + self._label = label + + @property + def algorithm(self) -> hashes.HashAlgorithm: + return self._algorithm + + @property + def mgf(self) -> MGF: + return self._mgf + + +class MGF(metaclass=abc.ABCMeta): + _algorithm: hashes.HashAlgorithm + + +class MGF1(MGF): + def __init__(self, algorithm: hashes.HashAlgorithm): + if not isinstance(algorithm, hashes.HashAlgorithm): + raise TypeError("Expected instance of hashes.HashAlgorithm.") + + self._algorithm = algorithm + + +def calculate_max_pss_salt_length( + key: rsa.RSAPrivateKey | rsa.RSAPublicKey, + hash_algorithm: hashes.HashAlgorithm, +) -> int: + if not isinstance(key, (rsa.RSAPrivateKey, rsa.RSAPublicKey)): + raise TypeError("key must be an RSA public or private key") + # bit length - 1 per RFC 3447 + emlen = (key.key_size + 6) // 8 + salt_length = emlen - hash_algorithm.digest_size - 2 + assert salt_length >= 0 + return salt_length diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/rsa.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/rsa.py new file mode 100644 index 0000000..a85a02b --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/rsa.py @@ -0,0 +1,299 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc +import random +import typing +from math import gcd + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization, hashes +from cryptography.hazmat.primitives._asymmetric import AsymmetricPadding +from cryptography.hazmat.primitives.asymmetric import utils as asym_utils + + +class RSAPrivateKey(metaclass=abc.ABCMeta): + @abc.abstractmethod + def decrypt(self, ciphertext: bytes, padding: AsymmetricPadding) -> bytes: + """ + Decrypts the provided ciphertext. + """ + + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + The bit length of the public modulus. + """ + + @abc.abstractmethod + def public_key(self) -> RSAPublicKey: + """ + The RSAPublicKey associated with this private key. + """ + + @abc.abstractmethod + def sign( + self, + data: bytes, + padding: AsymmetricPadding, + algorithm: asym_utils.Prehashed + | hashes.HashAlgorithm + | asym_utils.NoDigestInfo, + ) -> bytes: + """ + Signs the data. + """ + + @abc.abstractmethod + def private_numbers(self) -> RSAPrivateNumbers: + """ + Returns an RSAPrivateNumbers. + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + Returns the key serialized as bytes. + """ + + @abc.abstractmethod + def __copy__(self) -> RSAPrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> RSAPrivateKey: + """ + Returns a deep copy. + """ + + +RSAPrivateKeyWithSerialization = RSAPrivateKey +RSAPrivateKey.register(rust_openssl.rsa.RSAPrivateKey) + + +class RSAPublicKey(metaclass=abc.ABCMeta): + @abc.abstractmethod + def encrypt(self, plaintext: bytes, padding: AsymmetricPadding) -> bytes: + """ + Encrypts the given plaintext. + """ + + @property + @abc.abstractmethod + def key_size(self) -> int: + """ + The bit length of the public modulus. + """ + + @abc.abstractmethod + def public_numbers(self) -> RSAPublicNumbers: + """ + Returns an RSAPublicNumbers + """ + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + Returns the key serialized as bytes. + """ + + @abc.abstractmethod + def verify( + self, + signature: bytes, + data: bytes, + padding: AsymmetricPadding, + algorithm: asym_utils.Prehashed | hashes.HashAlgorithm, + ) -> None: + """ + Verifies the signature of the data. + """ + + @abc.abstractmethod + def recover_data_from_signature( + self, + signature: bytes, + padding: AsymmetricPadding, + algorithm: hashes.HashAlgorithm | asym_utils.NoDigestInfo | None, + ) -> bytes: + """ + Recovers the original data from the signature. + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> RSAPublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> RSAPublicKey: + """ + Returns a deep copy. + """ + + +RSAPublicKeyWithSerialization = RSAPublicKey +RSAPublicKey.register(rust_openssl.rsa.RSAPublicKey) + +RSAPrivateNumbers = rust_openssl.rsa.RSAPrivateNumbers +RSAPublicNumbers = rust_openssl.rsa.RSAPublicNumbers + + +def generate_private_key( + public_exponent: int, + key_size: int, + backend: typing.Any = None, +) -> RSAPrivateKey: + _verify_rsa_parameters(public_exponent, key_size) + return rust_openssl.rsa.generate_private_key(public_exponent, key_size) + + +def _verify_rsa_parameters(public_exponent: int, key_size: int) -> None: + if public_exponent not in (3, 65537): + raise ValueError( + "public_exponent must be either 3 (for legacy compatibility) or " + "65537. Almost everyone should choose 65537 here!" + ) + + if key_size < 1024: + raise ValueError("key_size must be at least 1024-bits.") + + +def _modinv(e: int, m: int) -> int: + """ + Modular Multiplicative Inverse. Returns x such that: (x*e) mod m == 1 + """ + x1, x2 = 1, 0 + a, b = e, m + while b > 0: + q, r = divmod(a, b) + xn = x1 - q * x2 + a, b, x1, x2 = b, r, x2, xn + return x1 % m + + +def rsa_crt_iqmp(p: int, q: int) -> int: + """ + Compute the CRT (q ** -1) % p value from RSA primes p and q. + """ + if p <= 1 or q <= 1: + raise ValueError("Values can't be <= 1") + return _modinv(q, p) + + +def rsa_crt_dmp1(private_exponent: int, p: int) -> int: + """ + Compute the CRT private_exponent % (p - 1) value from the RSA + private_exponent (d) and p. + """ + if private_exponent <= 1 or p <= 1: + raise ValueError("Values can't be <= 1") + return private_exponent % (p - 1) + + +def rsa_crt_dmq1(private_exponent: int, q: int) -> int: + """ + Compute the CRT private_exponent % (q - 1) value from the RSA + private_exponent (d) and q. + """ + if private_exponent <= 1 or q <= 1: + raise ValueError("Values can't be <= 1") + return private_exponent % (q - 1) + + +def rsa_recover_private_exponent(e: int, p: int, q: int) -> int: + """ + Compute the RSA private_exponent (d) given the public exponent (e) + and the RSA primes p and q. + + This uses the Carmichael totient function to generate the + smallest possible working value of the private exponent. + """ + # This lambda_n is the Carmichael totient function. + # The original RSA paper uses the Euler totient function + # here: phi_n = (p - 1) * (q - 1) + # Either version of the private exponent will work, but the + # one generated by the older formulation may be larger + # than necessary. (lambda_n always divides phi_n) + # + # TODO: Replace with lcm(p - 1, q - 1) once the minimum + # supported Python version is >= 3.9. + if e <= 1 or p <= 1 or q <= 1: + raise ValueError("Values can't be <= 1") + lambda_n = (p - 1) * (q - 1) // gcd(p - 1, q - 1) + return _modinv(e, lambda_n) + + +# Controls the number of iterations rsa_recover_prime_factors will perform +# to obtain the prime factors. +_MAX_RECOVERY_ATTEMPTS = 500 + + +def rsa_recover_prime_factors(n: int, e: int, d: int) -> tuple[int, int]: + """ + Compute factors p and q from the private exponent d. We assume that n has + no more than two factors. This function is adapted from code in PyCrypto. + """ + # reject invalid values early + if d <= 1 or e <= 1: + raise ValueError("d, e can't be <= 1") + if 17 != pow(17, e * d, n): + raise ValueError("n, d, e don't match") + # See 8.2.2(i) in Handbook of Applied Cryptography. + ktot = d * e - 1 + # The quantity d*e-1 is a multiple of phi(n), even, + # and can be represented as t*2^s. + t = ktot + while t % 2 == 0: + t = t // 2 + # Cycle through all multiplicative inverses in Zn. + # The algorithm is non-deterministic, but there is a 50% chance + # any candidate a leads to successful factoring. + # See "Digitalized Signatures and Public Key Functions as Intractable + # as Factorization", M. Rabin, 1979 + spotted = False + tries = 0 + while not spotted and tries < _MAX_RECOVERY_ATTEMPTS: + a = random.randint(2, n - 1) + tries += 1 + k = t + # Cycle through all values a^{t*2^i}=a^k + while k < ktot: + cand = pow(a, k, n) + # Check if a^k is a non-trivial root of unity (mod n) + if cand != 1 and cand != (n - 1) and pow(cand, 2, n) == 1: + # We have found a number such that (cand-1)(cand+1)=0 (mod n). + # Either of the terms divides n. + p = gcd(cand + 1, n) + spotted = True + break + k *= 2 + if not spotted: + raise ValueError("Unable to compute factors p and q from exponent d.") + # Found ! + q, r = divmod(n, p) + assert r == 0 + p, q = sorted((p, q), reverse=True) + return (p, q) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/types.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/types.py new file mode 100644 index 0000000..dfd12ce --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/types.py @@ -0,0 +1,123 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import typing + +from cryptography import utils +from cryptography.hazmat.primitives.asymmetric import ( + dh, + dsa, + ec, + ed448, + ed25519, + mldsa, + mlkem, + rsa, + x448, + x25519, +) + +# Every asymmetric key type +PublicKeyTypes = typing.Union[ + dh.DHPublicKey, + dsa.DSAPublicKey, + rsa.RSAPublicKey, + ec.EllipticCurvePublicKey, + ed25519.Ed25519PublicKey, + ed448.Ed448PublicKey, + mldsa.MLDSA44PublicKey, + mldsa.MLDSA65PublicKey, + mldsa.MLDSA87PublicKey, + mlkem.MLKEM768PublicKey, + mlkem.MLKEM1024PublicKey, + x25519.X25519PublicKey, + x448.X448PublicKey, +] +PUBLIC_KEY_TYPES = PublicKeyTypes +utils.deprecated( + PUBLIC_KEY_TYPES, + __name__, + "Use PublicKeyTypes instead", + utils.DeprecatedIn40, + name="PUBLIC_KEY_TYPES", +) +# Every asymmetric key type +PrivateKeyTypes = typing.Union[ + dh.DHPrivateKey, + ed25519.Ed25519PrivateKey, + ed448.Ed448PrivateKey, + mldsa.MLDSA44PrivateKey, + mldsa.MLDSA65PrivateKey, + mldsa.MLDSA87PrivateKey, + mlkem.MLKEM768PrivateKey, + mlkem.MLKEM1024PrivateKey, + rsa.RSAPrivateKey, + dsa.DSAPrivateKey, + ec.EllipticCurvePrivateKey, + x25519.X25519PrivateKey, + x448.X448PrivateKey, +] +PRIVATE_KEY_TYPES = PrivateKeyTypes +utils.deprecated( + PRIVATE_KEY_TYPES, + __name__, + "Use PrivateKeyTypes instead", + utils.DeprecatedIn40, + name="PRIVATE_KEY_TYPES", +) +# Just the key types we allow to be used for x509 signing. This mirrors +# the certificate public key types +CertificateIssuerPrivateKeyTypes = typing.Union[ + ed25519.Ed25519PrivateKey, + ed448.Ed448PrivateKey, + rsa.RSAPrivateKey, + dsa.DSAPrivateKey, + ec.EllipticCurvePrivateKey, +] +CERTIFICATE_PRIVATE_KEY_TYPES = CertificateIssuerPrivateKeyTypes +utils.deprecated( + CERTIFICATE_PRIVATE_KEY_TYPES, + __name__, + "Use CertificateIssuerPrivateKeyTypes instead", + utils.DeprecatedIn40, + name="CERTIFICATE_PRIVATE_KEY_TYPES", +) +# Just the key types we allow to be used for x509 signing. This mirrors +# the certificate private key types +CertificateIssuerPublicKeyTypes = typing.Union[ + dsa.DSAPublicKey, + rsa.RSAPublicKey, + ec.EllipticCurvePublicKey, + ed25519.Ed25519PublicKey, + ed448.Ed448PublicKey, +] +CERTIFICATE_ISSUER_PUBLIC_KEY_TYPES = CertificateIssuerPublicKeyTypes +utils.deprecated( + CERTIFICATE_ISSUER_PUBLIC_KEY_TYPES, + __name__, + "Use CertificateIssuerPublicKeyTypes instead", + utils.DeprecatedIn40, + name="CERTIFICATE_ISSUER_PUBLIC_KEY_TYPES", +) +# This type removes DHPublicKey. x448/x25519 can be a public key +# but cannot be used in signing so they are allowed here. +CertificatePublicKeyTypes = typing.Union[ + dsa.DSAPublicKey, + rsa.RSAPublicKey, + ec.EllipticCurvePublicKey, + ed25519.Ed25519PublicKey, + ed448.Ed448PublicKey, + x25519.X25519PublicKey, + x448.X448PublicKey, +] +CERTIFICATE_PUBLIC_KEY_TYPES = CertificatePublicKeyTypes +utils.deprecated( + CERTIFICATE_PUBLIC_KEY_TYPES, + __name__, + "Use CertificatePublicKeyTypes instead", + utils.DeprecatedIn40, + name="CERTIFICATE_PUBLIC_KEY_TYPES", +) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/utils.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/utils.py new file mode 100644 index 0000000..c01c342 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/utils.py @@ -0,0 +1,28 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import asn1 +from cryptography.hazmat.primitives import hashes + +decode_dss_signature = asn1.decode_dss_signature +encode_dss_signature = asn1.encode_dss_signature + + +class NoDigestInfo: + pass + + +class Prehashed: + def __init__(self, algorithm: hashes.HashAlgorithm): + if not isinstance(algorithm, hashes.HashAlgorithm): + raise TypeError("Expected instance of HashAlgorithm.") + + self._algorithm = algorithm + self._digest_size = algorithm.digest_size + + @property + def digest_size(self) -> int: + return self._digest_size diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/x25519.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/x25519.py new file mode 100644 index 0000000..7498998 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/x25519.py @@ -0,0 +1,134 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.exceptions import UnsupportedAlgorithm, _Reasons +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization +from cryptography.utils import Buffer + + +class X25519PublicKey(metaclass=abc.ABCMeta): + @classmethod + def from_public_bytes(cls, data: bytes) -> X25519PublicKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.x25519_supported(): + raise UnsupportedAlgorithm( + "X25519 is not supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_EXCHANGE_ALGORITHM, + ) + + return rust_openssl.x25519.from_public_bytes(data) + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + The serialized bytes of the public key. + """ + + @abc.abstractmethod + def public_bytes_raw(self) -> bytes: + """ + The raw bytes of the public key. + Equivalent to public_bytes(Raw, Raw). + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> X25519PublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> X25519PublicKey: + """ + Returns a deep copy. + """ + + +X25519PublicKey.register(rust_openssl.x25519.X25519PublicKey) + + +class X25519PrivateKey(metaclass=abc.ABCMeta): + @classmethod + def generate(cls) -> X25519PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.x25519_supported(): + raise UnsupportedAlgorithm( + "X25519 is not supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_EXCHANGE_ALGORITHM, + ) + return rust_openssl.x25519.generate_key() + + @classmethod + def from_private_bytes(cls, data: Buffer) -> X25519PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.x25519_supported(): + raise UnsupportedAlgorithm( + "X25519 is not supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_EXCHANGE_ALGORITHM, + ) + + return rust_openssl.x25519.from_private_bytes(data) + + @abc.abstractmethod + def public_key(self) -> X25519PublicKey: + """ + Returns the public key associated with this private key + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + The serialized bytes of the private key. + """ + + @abc.abstractmethod + def private_bytes_raw(self) -> bytes: + """ + The raw bytes of the private key. + Equivalent to private_bytes(Raw, Raw, NoEncryption()). + """ + + @abc.abstractmethod + def exchange(self, peer_public_key: X25519PublicKey) -> bytes: + """ + Performs a key exchange operation using the provided peer's public key. + """ + + @abc.abstractmethod + def __copy__(self) -> X25519PrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> X25519PrivateKey: + """ + Returns a deep copy. + """ + + +X25519PrivateKey.register(rust_openssl.x25519.X25519PrivateKey) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/x448.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/x448.py new file mode 100644 index 0000000..b9dc826 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/asymmetric/x448.py @@ -0,0 +1,137 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.exceptions import UnsupportedAlgorithm, _Reasons +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import _serialization +from cryptography.utils import Buffer + + +class X448PublicKey(metaclass=abc.ABCMeta): + @classmethod + def from_public_bytes(cls, data: bytes) -> X448PublicKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.x448_supported(): + raise UnsupportedAlgorithm( + "X448 is not supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_EXCHANGE_ALGORITHM, + ) + + return rust_openssl.x448.from_public_bytes(data) + + @abc.abstractmethod + def public_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PublicFormat, + ) -> bytes: + """ + The serialized bytes of the public key. + """ + + @abc.abstractmethod + def public_bytes_raw(self) -> bytes: + """ + The raw bytes of the public key. + Equivalent to public_bytes(Raw, Raw). + """ + + @abc.abstractmethod + def __eq__(self, other: object) -> bool: + """ + Checks equality. + """ + + @abc.abstractmethod + def __copy__(self) -> X448PublicKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> X448PublicKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "x448"): + X448PublicKey.register(rust_openssl.x448.X448PublicKey) + + +class X448PrivateKey(metaclass=abc.ABCMeta): + @classmethod + def generate(cls) -> X448PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.x448_supported(): + raise UnsupportedAlgorithm( + "X448 is not supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_EXCHANGE_ALGORITHM, + ) + + return rust_openssl.x448.generate_key() + + @classmethod + def from_private_bytes(cls, data: Buffer) -> X448PrivateKey: + from cryptography.hazmat.backends.openssl.backend import backend + + if not backend.x448_supported(): + raise UnsupportedAlgorithm( + "X448 is not supported by this version of OpenSSL.", + _Reasons.UNSUPPORTED_EXCHANGE_ALGORITHM, + ) + + return rust_openssl.x448.from_private_bytes(data) + + @abc.abstractmethod + def public_key(self) -> X448PublicKey: + """ + Returns the public key associated with this private key + """ + + @abc.abstractmethod + def private_bytes( + self, + encoding: _serialization.Encoding, + format: _serialization.PrivateFormat, + encryption_algorithm: _serialization.KeySerializationEncryption, + ) -> bytes: + """ + The serialized bytes of the private key. + """ + + @abc.abstractmethod + def private_bytes_raw(self) -> bytes: + """ + The raw bytes of the private key. + Equivalent to private_bytes(Raw, Raw, NoEncryption()). + """ + + @abc.abstractmethod + def exchange(self, peer_public_key: X448PublicKey) -> bytes: + """ + Performs a key exchange operation using the provided peer's public key. + """ + + @abc.abstractmethod + def __copy__(self) -> X448PrivateKey: + """ + Returns a copy. + """ + + @abc.abstractmethod + def __deepcopy__(self, memo: dict) -> X448PrivateKey: + """ + Returns a deep copy. + """ + + +if hasattr(rust_openssl, "x448"): + X448PrivateKey.register(rust_openssl.x448.X448PrivateKey) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/__init__.py new file mode 100644 index 0000000..10c15d0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/__init__.py @@ -0,0 +1,27 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.primitives._cipheralgorithm import ( + BlockCipherAlgorithm, + CipherAlgorithm, +) +from cryptography.hazmat.primitives.ciphers.base import ( + AEADCipherContext, + AEADDecryptionContext, + AEADEncryptionContext, + Cipher, + CipherContext, +) + +__all__ = [ + "AEADCipherContext", + "AEADDecryptionContext", + "AEADEncryptionContext", + "BlockCipherAlgorithm", + "Cipher", + "CipherAlgorithm", + "CipherContext", +] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/aead.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/aead.py new file mode 100644 index 0000000..c8a582d --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/aead.py @@ -0,0 +1,23 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl + +__all__ = [ + "AESCCM", + "AESGCM", + "AESGCMSIV", + "AESOCB3", + "AESSIV", + "ChaCha20Poly1305", +] + +AESGCM = rust_openssl.aead.AESGCM +ChaCha20Poly1305 = rust_openssl.aead.ChaCha20Poly1305 +AESCCM = rust_openssl.aead.AESCCM +AESSIV = rust_openssl.aead.AESSIV +AESOCB3 = rust_openssl.aead.AESOCB3 +AESGCMSIV = rust_openssl.aead.AESGCMSIV diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/algorithms.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/algorithms.py new file mode 100644 index 0000000..6b20dd5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/algorithms.py @@ -0,0 +1,138 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography import utils +from cryptography.hazmat.decrepit.ciphers.algorithms import ( + ARC4 as ARC4, +) +from cryptography.hazmat.decrepit.ciphers.algorithms import ( + CAST5 as CAST5, +) +from cryptography.hazmat.decrepit.ciphers.algorithms import ( + IDEA as IDEA, +) +from cryptography.hazmat.decrepit.ciphers.algorithms import ( + SEED as SEED, +) +from cryptography.hazmat.decrepit.ciphers.algorithms import ( + Blowfish as Blowfish, +) +from cryptography.hazmat.decrepit.ciphers.algorithms import ( + Camellia as Camellia, +) +from cryptography.hazmat.decrepit.ciphers.algorithms import ( + TripleDES as TripleDES, +) +from cryptography.hazmat.primitives._cipheralgorithm import _verify_key_size +from cryptography.hazmat.primitives.ciphers import ( + BlockCipherAlgorithm, + CipherAlgorithm, +) + + +class AES(BlockCipherAlgorithm): + name = "AES" + block_size = 128 + # 512 added to support AES-256-XTS, which uses 512-bit keys + key_sizes = frozenset([128, 192, 256, 512]) + + def __init__(self, key: utils.Buffer): + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 + + +class AES128(BlockCipherAlgorithm): + name = "AES" + block_size = 128 + key_sizes = frozenset([128]) + key_size = 128 + + def __init__(self, key: utils.Buffer): + self.key = _verify_key_size(self, key) + + +class AES256(BlockCipherAlgorithm): + name = "AES" + block_size = 128 + key_sizes = frozenset([256]) + key_size = 256 + + def __init__(self, key: utils.Buffer): + self.key = _verify_key_size(self, key) + + +utils.deprecated( + Camellia, + __name__, + "Camellia has been moved to " + "cryptography.hazmat.decrepit.ciphers.algorithms.Camellia and " + "will be removed from " + "cryptography.hazmat.primitives.ciphers.algorithms in 49.0.0.", + utils.DeprecatedIn43, + name="Camellia", +) + + +utils.deprecated( + ARC4, + __name__, + "ARC4 has been moved to " + "cryptography.hazmat.decrepit.ciphers.algorithms.ARC4 and " + "will be removed from " + "cryptography.hazmat.primitives.ciphers.algorithms in 48.0.0.", + utils.DeprecatedIn43, + name="ARC4", +) + + +utils.deprecated( + TripleDES, + __name__, + "TripleDES has been moved to " + "cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and " + "will be removed from " + "cryptography.hazmat.primitives.ciphers.algorithms in 48.0.0.", + utils.DeprecatedIn43, + name="TripleDES", +) + + +class ChaCha20(CipherAlgorithm): + name = "ChaCha20" + key_sizes = frozenset([256]) + + def __init__(self, key: utils.Buffer, nonce: utils.Buffer): + self.key = _verify_key_size(self, key) + utils._check_byteslike("nonce", nonce) + + if len(nonce) != 16: + raise ValueError("nonce must be 128-bits (16 bytes)") + + self._nonce = nonce + + @property + def nonce(self) -> utils.Buffer: + return self._nonce + + @property + def key_size(self) -> int: + return len(self.key) * 8 + + +class SM4(BlockCipherAlgorithm): + name = "SM4" + block_size = 128 + key_sizes = frozenset([128]) + + def __init__(self, key: bytes): + self.key = _verify_key_size(self, key) + + @property + def key_size(self) -> int: + return len(self.key) * 8 diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/base.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/base.py new file mode 100644 index 0000000..24fceea --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/base.py @@ -0,0 +1,146 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc +import typing + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives._cipheralgorithm import CipherAlgorithm +from cryptography.hazmat.primitives.ciphers import modes +from cryptography.utils import Buffer + + +class CipherContext(metaclass=abc.ABCMeta): + @abc.abstractmethod + def update(self, data: Buffer) -> bytes: + """ + Processes the provided bytes through the cipher and returns the results + as bytes. + """ + + @abc.abstractmethod + def update_into(self, data: Buffer, buf: Buffer) -> int: + """ + Processes the provided bytes and writes the resulting data into the + provided buffer. Returns the number of bytes written. + """ + + @abc.abstractmethod + def finalize(self) -> bytes: + """ + Returns the results of processing the final block as bytes. + """ + + @abc.abstractmethod + def reset_nonce(self, nonce: bytes) -> None: + """ + Resets the nonce for the cipher context to the provided value. + Raises an exception if it does not support reset or if the + provided nonce does not have a valid length. + """ + + +class AEADCipherContext(CipherContext, metaclass=abc.ABCMeta): + @abc.abstractmethod + def authenticate_additional_data(self, data: Buffer) -> None: + """ + Authenticates the provided bytes. + """ + + +class AEADDecryptionContext(AEADCipherContext, metaclass=abc.ABCMeta): + @abc.abstractmethod + def finalize_with_tag(self, tag: bytes) -> bytes: + """ + Returns the results of processing the final block as bytes and allows + delayed passing of the authentication tag. + """ + + +class AEADEncryptionContext(AEADCipherContext, metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def tag(self) -> bytes: + """ + Returns tag bytes. This is only available after encryption is + finalized. + """ + + +Mode = typing.TypeVar( + "Mode", bound=typing.Optional[modes.Mode], covariant=True +) + + +class Cipher(typing.Generic[Mode]): + def __init__( + self, + algorithm: CipherAlgorithm, + mode: Mode, + backend: typing.Any = None, + ) -> None: + if not isinstance(algorithm, CipherAlgorithm): + raise TypeError("Expected interface of CipherAlgorithm.") + + if mode is not None: + # mypy needs this assert to narrow the type from our generic + # type. Maybe it won't some time in the future. + assert isinstance(mode, modes.Mode) + mode.validate_for_algorithm(algorithm) + + self.algorithm = algorithm + self.mode = mode + + @typing.overload + def encryptor( + self: Cipher[modes.ModeWithAuthenticationTag], + ) -> AEADEncryptionContext: ... + + @typing.overload + def encryptor( + self: _CIPHER_TYPE, + ) -> CipherContext: ... + + def encryptor(self): + if isinstance(self.mode, modes.ModeWithAuthenticationTag): + if self.mode.tag is not None: + raise ValueError( + "Authentication tag must be None when encrypting." + ) + + return rust_openssl.ciphers.create_encryption_ctx( + self.algorithm, self.mode + ) + + @typing.overload + def decryptor( + self: Cipher[modes.ModeWithAuthenticationTag], + ) -> AEADDecryptionContext: ... + + @typing.overload + def decryptor( + self: _CIPHER_TYPE, + ) -> CipherContext: ... + + def decryptor(self): + return rust_openssl.ciphers.create_decryption_ctx( + self.algorithm, self.mode + ) + + +_CIPHER_TYPE = Cipher[ + typing.Union[ + modes.ModeWithNonce, + modes.ModeWithTweak, + modes.ECB, + modes.ModeWithInitializationVector, + None, + ] +] + +CipherContext.register(rust_openssl.ciphers.CipherContext) +AEADEncryptionContext.register(rust_openssl.ciphers.AEADEncryptionContext) +AEADDecryptionContext.register(rust_openssl.ciphers.AEADDecryptionContext) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/modes.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/modes.py new file mode 100644 index 0000000..0f1c217 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/ciphers/modes.py @@ -0,0 +1,192 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography import utils +from cryptography.exceptions import UnsupportedAlgorithm, _Reasons +from cryptography.hazmat.decrepit.ciphers.modes import CFB as CFB +from cryptography.hazmat.decrepit.ciphers.modes import CFB8 as CFB8 +from cryptography.hazmat.decrepit.ciphers.modes import OFB as OFB +from cryptography.hazmat.primitives._cipheralgorithm import ( + BlockCipherAlgorithm, + CipherAlgorithm, +) +from cryptography.hazmat.primitives._modes import ( + Mode as Mode, +) +from cryptography.hazmat.primitives._modes import ( + ModeWithAuthenticationTag as ModeWithAuthenticationTag, +) +from cryptography.hazmat.primitives._modes import ( + ModeWithInitializationVector as ModeWithInitializationVector, +) +from cryptography.hazmat.primitives._modes import ( + ModeWithNonce as ModeWithNonce, +) +from cryptography.hazmat.primitives._modes import ( + ModeWithTweak as ModeWithTweak, +) +from cryptography.hazmat.primitives._modes import ( + _check_aes_key_length, + _check_iv_and_key_length, + _check_nonce_length, +) +from cryptography.hazmat.primitives.ciphers import algorithms + + +class CBC(ModeWithInitializationVector): + name = "CBC" + + def __init__(self, initialization_vector: utils.Buffer): + utils._check_byteslike("initialization_vector", initialization_vector) + self._initialization_vector = initialization_vector + + @property + def initialization_vector(self) -> utils.Buffer: + return self._initialization_vector + + validate_for_algorithm = _check_iv_and_key_length + + +class XTS(ModeWithTweak): + name = "XTS" + + def __init__(self, tweak: utils.Buffer): + utils._check_byteslike("tweak", tweak) + + if len(tweak) != 16: + raise ValueError("tweak must be 128-bits (16 bytes)") + + self._tweak = tweak + + @property + def tweak(self) -> utils.Buffer: + return self._tweak + + def validate_for_algorithm(self, algorithm: CipherAlgorithm) -> None: + if isinstance(algorithm, (algorithms.AES128, algorithms.AES256)): + raise TypeError( + "The AES128 and AES256 classes do not support XTS, please use " + "the standard AES class instead." + ) + + if algorithm.key_size not in (256, 512): + raise ValueError( + "The XTS specification requires a 256-bit key for AES-128-XTS" + " and 512-bit key for AES-256-XTS" + ) + + +class ECB(Mode): + name = "ECB" + + validate_for_algorithm = _check_aes_key_length + + +class CTR(ModeWithNonce): + name = "CTR" + + def __init__(self, nonce: utils.Buffer): + utils._check_byteslike("nonce", nonce) + self._nonce = nonce + + @property + def nonce(self) -> utils.Buffer: + return self._nonce + + def validate_for_algorithm(self, algorithm: CipherAlgorithm) -> None: + _check_aes_key_length(self, algorithm) + _check_nonce_length(self.nonce, self.name, algorithm) + + +class GCM(ModeWithInitializationVector, ModeWithAuthenticationTag): + name = "GCM" + _MAX_ENCRYPTED_BYTES = (2**39 - 256) // 8 + _MAX_AAD_BYTES = (2**64) // 8 + + def __init__( + self, + initialization_vector: utils.Buffer, + tag: bytes | None = None, + min_tag_length: int = 16, + ): + # OpenSSL 3.0.0 constrains GCM IVs to [64, 1024] bits inclusive + # This is a sane limit anyway so we'll enforce it here. + utils._check_byteslike("initialization_vector", initialization_vector) + if len(initialization_vector) < 8 or len(initialization_vector) > 128: + raise ValueError( + "initialization_vector must be between 8 and 128 bytes (64 " + "and 1024 bits)." + ) + self._initialization_vector = initialization_vector + if tag is not None: + utils._check_bytes("tag", tag) + if min_tag_length < 4: + raise ValueError("min_tag_length must be >= 4") + if len(tag) < min_tag_length: + raise ValueError( + f"Authentication tag must be {min_tag_length} bytes or " + "longer." + ) + self._tag = tag + self._min_tag_length = min_tag_length + + @property + def tag(self) -> bytes | None: + return self._tag + + @property + def initialization_vector(self) -> utils.Buffer: + return self._initialization_vector + + def validate_for_algorithm(self, algorithm: CipherAlgorithm) -> None: + _check_aes_key_length(self, algorithm) + if not isinstance(algorithm, BlockCipherAlgorithm): + raise UnsupportedAlgorithm( + "GCM requires a block cipher algorithm", + _Reasons.UNSUPPORTED_CIPHER, + ) + block_size_bytes = algorithm.block_size // 8 + if self._tag is not None and len(self._tag) > block_size_bytes: + raise ValueError( + f"Authentication tag cannot be more than {block_size_bytes} " + "bytes." + ) + + +utils.deprecated( + OFB, + __name__, + "OFB has been moved to " + "cryptography.hazmat.decrepit.ciphers.modes.OFB and " + "will be removed from " + "cryptography.hazmat.primitives.ciphers.modes in 49.0.0.", + utils.DeprecatedIn47, + name="OFB", +) + + +utils.deprecated( + CFB, + __name__, + "CFB has been moved to " + "cryptography.hazmat.decrepit.ciphers.modes.CFB and " + "will be removed from " + "cryptography.hazmat.primitives.ciphers.modes in 49.0.0.", + utils.DeprecatedIn47, + name="CFB", +) + + +utils.deprecated( + CFB8, + __name__, + "CFB8 has been moved to " + "cryptography.hazmat.decrepit.ciphers.modes.CFB8 and " + "will be removed from " + "cryptography.hazmat.primitives.ciphers.modes in 49.0.0.", + utils.DeprecatedIn47, + name="CFB8", +) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/cmac.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/cmac.py new file mode 100644 index 0000000..2c67ce2 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/cmac.py @@ -0,0 +1,10 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl + +__all__ = ["CMAC"] +CMAC = rust_openssl.cmac.CMAC diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/constant_time.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/constant_time.py new file mode 100644 index 0000000..3975c71 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/constant_time.py @@ -0,0 +1,14 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import hmac + + +def bytes_eq(a: bytes, b: bytes) -> bool: + if not isinstance(a, bytes) or not isinstance(b, bytes): + raise TypeError("a and b must be bytes.") + + return hmac.compare_digest(a, b) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hashes.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hashes.py new file mode 100644 index 0000000..4b55ec3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hashes.py @@ -0,0 +1,246 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.utils import Buffer + +__all__ = [ + "MD5", + "SHA1", + "SHA3_224", + "SHA3_256", + "SHA3_384", + "SHA3_512", + "SHA224", + "SHA256", + "SHA384", + "SHA512", + "SHA512_224", + "SHA512_256", + "SHAKE128", + "SHAKE256", + "SM3", + "BLAKE2b", + "BLAKE2s", + "ExtendableOutputFunction", + "Hash", + "HashAlgorithm", + "HashContext", + "XOFHash", +] + + +class HashAlgorithm(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def name(self) -> str: + """ + A string naming this algorithm (e.g. "sha256", "md5"). + """ + + @property + @abc.abstractmethod + def digest_size(self) -> int: + """ + The size of the resulting digest in bytes. + """ + + @property + @abc.abstractmethod + def block_size(self) -> int | None: + """ + The internal block size of the hash function, or None if the hash + function does not use blocks internally (e.g. SHA3). + """ + + +class HashContext(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def algorithm(self) -> HashAlgorithm: + """ + A HashAlgorithm that will be used by this context. + """ + + @abc.abstractmethod + def update(self, data: Buffer) -> None: + """ + Processes the provided bytes through the hash. + """ + + @abc.abstractmethod + def finalize(self) -> bytes: + """ + Finalizes the hash context and returns the hash digest as bytes. + """ + + @abc.abstractmethod + def copy(self) -> HashContext: + """ + Return a HashContext that is a copy of the current context. + """ + + +Hash = rust_openssl.hashes.Hash +HashContext.register(Hash) + +XOFHash = rust_openssl.hashes.XOFHash + + +class ExtendableOutputFunction(metaclass=abc.ABCMeta): + """ + An interface for extendable output functions. + """ + + +class SHA1(HashAlgorithm): + name = "sha1" + digest_size = 20 + block_size = 64 + + +class SHA512_224(HashAlgorithm): # noqa: N801 + name = "sha512-224" + digest_size = 28 + block_size = 128 + + +class SHA512_256(HashAlgorithm): # noqa: N801 + name = "sha512-256" + digest_size = 32 + block_size = 128 + + +class SHA224(HashAlgorithm): + name = "sha224" + digest_size = 28 + block_size = 64 + + +class SHA256(HashAlgorithm): + name = "sha256" + digest_size = 32 + block_size = 64 + + +class SHA384(HashAlgorithm): + name = "sha384" + digest_size = 48 + block_size = 128 + + +class SHA512(HashAlgorithm): + name = "sha512" + digest_size = 64 + block_size = 128 + + +class SHA3_224(HashAlgorithm): # noqa: N801 + name = "sha3-224" + digest_size = 28 + block_size = None + + +class SHA3_256(HashAlgorithm): # noqa: N801 + name = "sha3-256" + digest_size = 32 + block_size = None + + +class SHA3_384(HashAlgorithm): # noqa: N801 + name = "sha3-384" + digest_size = 48 + block_size = None + + +class SHA3_512(HashAlgorithm): # noqa: N801 + name = "sha3-512" + digest_size = 64 + block_size = None + + +class SHAKE128(HashAlgorithm, ExtendableOutputFunction): + name = "shake128" + block_size = None + + def __init__(self, digest_size: int): + if not isinstance(digest_size, int): + raise TypeError("digest_size must be an integer") + + if digest_size < 1: + raise ValueError("digest_size must be a positive integer") + + self._digest_size = digest_size + + @property + def digest_size(self) -> int: + return self._digest_size + + +class SHAKE256(HashAlgorithm, ExtendableOutputFunction): + name = "shake256" + block_size = None + + def __init__(self, digest_size: int): + if not isinstance(digest_size, int): + raise TypeError("digest_size must be an integer") + + if digest_size < 1: + raise ValueError("digest_size must be a positive integer") + + self._digest_size = digest_size + + @property + def digest_size(self) -> int: + return self._digest_size + + +class MD5(HashAlgorithm): + name = "md5" + digest_size = 16 + block_size = 64 + + +class BLAKE2b(HashAlgorithm): + name = "blake2b" + _max_digest_size = 64 + _min_digest_size = 1 + block_size = 128 + + def __init__(self, digest_size: int): + if digest_size != 64: + raise ValueError("Digest size must be 64") + + self._digest_size = digest_size + + @property + def digest_size(self) -> int: + return self._digest_size + + +class BLAKE2s(HashAlgorithm): + name = "blake2s" + block_size = 64 + _max_digest_size = 32 + _min_digest_size = 1 + + def __init__(self, digest_size: int): + if digest_size != 32: + raise ValueError("Digest size must be 32") + + self._digest_size = digest_size + + @property + def digest_size(self) -> int: + return self._digest_size + + +class SM3(HashAlgorithm): + name = "sm3" + digest_size = 32 + block_size = 64 diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hmac.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hmac.py new file mode 100644 index 0000000..a9442d5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hmac.py @@ -0,0 +1,13 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives import hashes + +__all__ = ["HMAC"] + +HMAC = rust_openssl.hmac.HMAC +hashes.HashContext.register(HMAC) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hpke.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hpke.py new file mode 100644 index 0000000..c802808 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/hpke.py @@ -0,0 +1,27 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl + +AEAD = rust_openssl.hpke.AEAD +KDF = rust_openssl.hpke.KDF +KEM = rust_openssl.hpke.KEM +MLKEM768X25519PrivateKey = rust_openssl.hpke.MLKEM768X25519PrivateKey +MLKEM768X25519PublicKey = rust_openssl.hpke.MLKEM768X25519PublicKey +MLKEM1024P384PrivateKey = rust_openssl.hpke.MLKEM1024P384PrivateKey +MLKEM1024P384PublicKey = rust_openssl.hpke.MLKEM1024P384PublicKey +Suite = rust_openssl.hpke.Suite + +__all__ = [ + "AEAD", + "KDF", + "KEM", + "MLKEM768X25519PrivateKey", + "MLKEM768X25519PublicKey", + "MLKEM1024P384PrivateKey", + "MLKEM1024P384PublicKey", + "Suite", +] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/__init__.py new file mode 100644 index 0000000..26c45bd --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/__init__.py @@ -0,0 +1,32 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography.utils import Buffer + + +class KeyDerivationFunction(metaclass=abc.ABCMeta): + @abc.abstractmethod + def derive(self, key_material: bytes) -> bytes: + """ + Deterministically generates and returns a new key based on the existing + key material. + """ + + @abc.abstractmethod + def derive_into(self, key_material: bytes, buffer: Buffer) -> None: + """ + Deterministically generates a new key based on the existing key + material and stores it in the provided buffer. + """ + + @abc.abstractmethod + def verify(self, key_material: bytes, expected_key: bytes) -> None: + """ + Checks whether the key generated by the key material matches the + expected derived key. Raises an exception if they do not match. + """ diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/argon2.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/argon2.py new file mode 100644 index 0000000..03e84d4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/argon2.py @@ -0,0 +1,17 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives.kdf import KeyDerivationFunction + +Argon2d = rust_openssl.kdf.Argon2d +Argon2i = rust_openssl.kdf.Argon2i +Argon2id = rust_openssl.kdf.Argon2id +KeyDerivationFunction.register(Argon2d) +KeyDerivationFunction.register(Argon2i) +KeyDerivationFunction.register(Argon2id) + +__all__ = ["Argon2d", "Argon2i", "Argon2id"] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/concatkdf.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/concatkdf.py new file mode 100644 index 0000000..398dc5d --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/concatkdf.py @@ -0,0 +1,16 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives.kdf import KeyDerivationFunction + +ConcatKDFHash = rust_openssl.kdf.ConcatKDFHash +ConcatKDFHMAC = rust_openssl.kdf.ConcatKDFHMAC + +KeyDerivationFunction.register(ConcatKDFHash) +KeyDerivationFunction.register(ConcatKDFHMAC) + +__all__ = ["ConcatKDFHMAC", "ConcatKDFHash"] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/hkdf.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/hkdf.py new file mode 100644 index 0000000..1e162d9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/hkdf.py @@ -0,0 +1,16 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives.kdf import KeyDerivationFunction + +HKDF = rust_openssl.kdf.HKDF +HKDFExpand = rust_openssl.kdf.HKDFExpand + +KeyDerivationFunction.register(HKDF) +KeyDerivationFunction.register(HKDFExpand) + +__all__ = ["HKDF", "HKDFExpand"] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/kbkdf.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/kbkdf.py new file mode 100644 index 0000000..e559df8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/kbkdf.py @@ -0,0 +1,26 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography import utils +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives.kdf import KeyDerivationFunction + + +class Mode(utils.Enum): + CounterMode = "ctr" + + +class CounterLocation(utils.Enum): + BeforeFixed = "before_fixed" + AfterFixed = "after_fixed" + MiddleFixed = "middle_fixed" + + +KBKDFHMAC = rust_openssl.kdf.KBKDFHMAC +KeyDerivationFunction.register(KBKDFHMAC) + +KBKDFCMAC = rust_openssl.kdf.KBKDFCMAC +KeyDerivationFunction.register(KBKDFCMAC) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/pbkdf2.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/pbkdf2.py new file mode 100644 index 0000000..771d80d --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/pbkdf2.py @@ -0,0 +1,13 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives.kdf import KeyDerivationFunction + +PBKDF2HMAC = rust_openssl.kdf.PBKDF2HMAC +KeyDerivationFunction.register(PBKDF2HMAC) + +__all__ = ["PBKDF2HMAC"] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/scrypt.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/scrypt.py new file mode 100644 index 0000000..f791cee --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/scrypt.py @@ -0,0 +1,19 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import sys + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives.kdf import KeyDerivationFunction + +# This is used by the scrypt tests to skip tests that require more memory +# than the MEM_LIMIT +_MEM_LIMIT = sys.maxsize // 2 + +Scrypt = rust_openssl.kdf.Scrypt +KeyDerivationFunction.register(Scrypt) + +__all__ = ["Scrypt"] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.py new file mode 100644 index 0000000..8c4e2d3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.py @@ -0,0 +1,13 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl +from cryptography.hazmat.primitives.kdf import KeyDerivationFunction + +X963KDF = rust_openssl.kdf.X963KDF +KeyDerivationFunction.register(X963KDF) + +__all__ = ["X963KDF"] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/keywrap.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/keywrap.py new file mode 100644 index 0000000..a3e56b9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/keywrap.py @@ -0,0 +1,180 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import typing + +from cryptography.hazmat.primitives.ciphers import Cipher +from cryptography.hazmat.primitives.ciphers.algorithms import AES +from cryptography.hazmat.primitives.ciphers.modes import ECB +from cryptography.hazmat.primitives.constant_time import bytes_eq + + +def _wrap_core( + wrapping_key: bytes, + a: bytes, + r: list[bytes], +) -> bytes: + # RFC 3394 Key Wrap - 2.2.1 (index method) + encryptor = Cipher(AES(wrapping_key), ECB()).encryptor() + n = len(r) + for j in range(6): + for i in range(n): + # every encryption operation is a discrete 16 byte chunk (because + # AES has a 128-bit block size) and since we're using ECB it is + # safe to reuse the encryptor for the entire operation + b = encryptor.update(a + r[i]) + a = ( + int.from_bytes(b[:8], byteorder="big") ^ ((n * j) + i + 1) + ).to_bytes(length=8, byteorder="big") + r[i] = b[-8:] + + assert encryptor.finalize() == b"" + + return a + b"".join(r) + + +def aes_key_wrap( + wrapping_key: bytes, + key_to_wrap: bytes, + backend: typing.Any = None, +) -> bytes: + if len(wrapping_key) not in [16, 24, 32]: + raise ValueError("The wrapping key must be a valid AES key length") + + if len(key_to_wrap) < 16: + raise ValueError("The key to wrap must be at least 16 bytes") + + if len(key_to_wrap) % 8 != 0: + raise ValueError("The key to wrap must be a multiple of 8 bytes") + + a = b"\xa6\xa6\xa6\xa6\xa6\xa6\xa6\xa6" + r = [key_to_wrap[i : i + 8] for i in range(0, len(key_to_wrap), 8)] + return _wrap_core(wrapping_key, a, r) + + +def _unwrap_core( + wrapping_key: bytes, + a: bytes, + r: list[bytes], +) -> tuple[bytes, list[bytes]]: + # Implement RFC 3394 Key Unwrap - 2.2.2 (index method) + decryptor = Cipher(AES(wrapping_key), ECB()).decryptor() + n = len(r) + for j in reversed(range(6)): + for i in reversed(range(n)): + atr = ( + int.from_bytes(a, byteorder="big") ^ ((n * j) + i + 1) + ).to_bytes(length=8, byteorder="big") + r[i] + # every decryption operation is a discrete 16 byte chunk so + # it is safe to reuse the decryptor for the entire operation + b = decryptor.update(atr) + a = b[:8] + r[i] = b[-8:] + + assert decryptor.finalize() == b"" + return a, r + + +def aes_key_wrap_with_padding( + wrapping_key: bytes, + key_to_wrap: bytes, + backend: typing.Any = None, +) -> bytes: + if len(wrapping_key) not in [16, 24, 32]: + raise ValueError("The wrapping key must be a valid AES key length") + + if not key_to_wrap or len(key_to_wrap) > 2**32: + raise ValueError("key_to_wrap must be between 1 and 2^32 bytes") + + aiv = b"\xa6\x59\x59\xa6" + len(key_to_wrap).to_bytes( + length=4, byteorder="big" + ) + # pad the key to wrap if necessary + pad = (8 - (len(key_to_wrap) % 8)) % 8 + key_to_wrap = key_to_wrap + b"\x00" * pad + if len(key_to_wrap) == 8: + # RFC 5649 - 4.1 - exactly 8 octets after padding + encryptor = Cipher(AES(wrapping_key), ECB()).encryptor() + b = encryptor.update(aiv + key_to_wrap) + assert encryptor.finalize() == b"" + return b + else: + r = [key_to_wrap[i : i + 8] for i in range(0, len(key_to_wrap), 8)] + return _wrap_core(wrapping_key, aiv, r) + + +def aes_key_unwrap_with_padding( + wrapping_key: bytes, + wrapped_key: bytes, + backend: typing.Any = None, +) -> bytes: + if len(wrapped_key) < 16: + raise InvalidUnwrap("Must be at least 16 bytes") + + if len(wrapping_key) not in [16, 24, 32]: + raise ValueError("The wrapping key must be a valid AES key length") + + if len(wrapped_key) == 16: + # RFC 5649 - 4.2 - exactly two 64-bit blocks + decryptor = Cipher(AES(wrapping_key), ECB()).decryptor() + out = decryptor.update(wrapped_key) + assert decryptor.finalize() == b"" + a = out[:8] + data = out[8:] + n = 1 + else: + r = [wrapped_key[i : i + 8] for i in range(0, len(wrapped_key), 8)] + encrypted_aiv = r.pop(0) + n = len(r) + a, r = _unwrap_core(wrapping_key, encrypted_aiv, r) + data = b"".join(r) + + # 1) Check that MSB(32,A) = A65959A6. + # 2) Check that 8*(n-1) < LSB(32,A) <= 8*n. If so, let + # MLI = LSB(32,A). + # 3) Let b = (8*n)-MLI, and then check that the rightmost b octets of + # the output data are zero. + mli = int.from_bytes(a[4:], byteorder="big") + b = (8 * n) - mli + if ( + not bytes_eq(a[:4], b"\xa6\x59\x59\xa6") + or not 8 * (n - 1) < mli <= 8 * n + or (b != 0 and not bytes_eq(data[-b:], b"\x00" * b)) + ): + raise InvalidUnwrap() + + if b == 0: + return data + else: + return data[:-b] + + +def aes_key_unwrap( + wrapping_key: bytes, + wrapped_key: bytes, + backend: typing.Any = None, +) -> bytes: + if len(wrapped_key) < 24: + raise InvalidUnwrap("Must be at least 24 bytes") + + if len(wrapped_key) % 8 != 0: + raise InvalidUnwrap("The wrapped key must be a multiple of 8 bytes") + + if len(wrapping_key) not in [16, 24, 32]: + raise ValueError("The wrapping key must be a valid AES key length") + + aiv = b"\xa6\xa6\xa6\xa6\xa6\xa6\xa6\xa6" + r = [wrapped_key[i : i + 8] for i in range(0, len(wrapped_key), 8)] + a = r.pop(0) + a, r = _unwrap_core(wrapping_key, a, r) + if not bytes_eq(a, aiv): + raise InvalidUnwrap() + + return b"".join(r) + + +class InvalidUnwrap(Exception): + pass diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/padding.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/padding.py new file mode 100644 index 0000000..f9cd1f1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/padding.py @@ -0,0 +1,69 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc + +from cryptography import utils +from cryptography.hazmat.bindings._rust import ( + ANSIX923PaddingContext, + ANSIX923UnpaddingContext, + PKCS7PaddingContext, + PKCS7UnpaddingContext, +) + + +class PaddingContext(metaclass=abc.ABCMeta): + @abc.abstractmethod + def update(self, data: utils.Buffer) -> bytes: + """ + Pads the provided bytes and returns any available data as bytes. + """ + + @abc.abstractmethod + def finalize(self) -> bytes: + """ + Finalize the padding, returns bytes. + """ + + +def _byte_padding_check(block_size: int) -> None: + if not (0 <= block_size <= 2040): + raise ValueError("block_size must be in range(0, 2041).") + + if block_size % 8 != 0: + raise ValueError("block_size must be a multiple of 8.") + + +class PKCS7: + def __init__(self, block_size: int): + _byte_padding_check(block_size) + self.block_size = block_size + + def padder(self) -> PaddingContext: + return PKCS7PaddingContext(self.block_size) + + def unpadder(self) -> PaddingContext: + return PKCS7UnpaddingContext(self.block_size) + + +PaddingContext.register(PKCS7PaddingContext) +PaddingContext.register(PKCS7UnpaddingContext) + + +class ANSIX923: + def __init__(self, block_size: int): + _byte_padding_check(block_size) + self.block_size = block_size + + def padder(self) -> PaddingContext: + return ANSIX923PaddingContext(self.block_size) + + def unpadder(self) -> PaddingContext: + return ANSIX923UnpaddingContext(self.block_size) + + +PaddingContext.register(ANSIX923PaddingContext) +PaddingContext.register(ANSIX923UnpaddingContext) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/poly1305.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/poly1305.py new file mode 100644 index 0000000..7f5a77a --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/poly1305.py @@ -0,0 +1,11 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl + +__all__ = ["Poly1305"] + +Poly1305 = rust_openssl.poly1305.Poly1305 diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/__init__.py new file mode 100644 index 0000000..62283cc --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/__init__.py @@ -0,0 +1,65 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat.primitives._serialization import ( + BestAvailableEncryption, + Encoding, + KeySerializationEncryption, + NoEncryption, + ParameterFormat, + PrivateFormat, + PublicFormat, + _KeySerializationEncryption, +) +from cryptography.hazmat.primitives.serialization.base import ( + load_der_parameters, + load_der_private_key, + load_der_public_key, + load_pem_parameters, + load_pem_private_key, + load_pem_public_key, +) +from cryptography.hazmat.primitives.serialization.ssh import ( + SSHCertificate, + SSHCertificateBuilder, + SSHCertificateType, + SSHCertPrivateKeyTypes, + SSHCertPublicKeyTypes, + SSHPrivateKeyTypes, + SSHPublicKeyTypes, + load_ssh_private_key, + load_ssh_public_identity, + load_ssh_public_key, + ssh_key_fingerprint, +) + +__all__ = [ + "BestAvailableEncryption", + "Encoding", + "KeySerializationEncryption", + "NoEncryption", + "ParameterFormat", + "PrivateFormat", + "PublicFormat", + "SSHCertPrivateKeyTypes", + "SSHCertPublicKeyTypes", + "SSHCertificate", + "SSHCertificateBuilder", + "SSHCertificateType", + "SSHPrivateKeyTypes", + "SSHPublicKeyTypes", + "_KeySerializationEncryption", + "load_der_parameters", + "load_der_private_key", + "load_der_public_key", + "load_pem_parameters", + "load_pem_private_key", + "load_pem_public_key", + "load_ssh_private_key", + "load_ssh_public_identity", + "load_ssh_public_key", + "ssh_key_fingerprint", +] diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/base.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/base.py new file mode 100644 index 0000000..e7c998b --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/base.py @@ -0,0 +1,14 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from cryptography.hazmat.bindings._rust import openssl as rust_openssl + +load_pem_private_key = rust_openssl.keys.load_pem_private_key +load_der_private_key = rust_openssl.keys.load_der_private_key + +load_pem_public_key = rust_openssl.keys.load_pem_public_key +load_der_public_key = rust_openssl.keys.load_der_public_key + +load_pem_parameters = rust_openssl.dh.from_pem_parameters +load_der_parameters = rust_openssl.dh.from_der_parameters diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/pkcs12.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/pkcs12.py new file mode 100644 index 0000000..58884ff --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/pkcs12.py @@ -0,0 +1,176 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import typing +from collections.abc import Iterable + +from cryptography import x509 +from cryptography.hazmat.bindings._rust import pkcs12 as rust_pkcs12 +from cryptography.hazmat.primitives import serialization +from cryptography.hazmat.primitives._serialization import PBES as PBES +from cryptography.hazmat.primitives.asymmetric import ( + dsa, + ec, + ed448, + ed25519, + rsa, +) +from cryptography.hazmat.primitives.asymmetric.types import PrivateKeyTypes + +__all__ = [ + "PBES", + "PKCS12Certificate", + "PKCS12KeyAndCertificates", + "PKCS12PrivateKeyTypes", + "load_key_and_certificates", + "load_pkcs12", + "serialize_java_truststore", + "serialize_key_and_certificates", +] + +PKCS12PrivateKeyTypes = typing.Union[ + rsa.RSAPrivateKey, + dsa.DSAPrivateKey, + ec.EllipticCurvePrivateKey, + ed25519.Ed25519PrivateKey, + ed448.Ed448PrivateKey, +] + + +PKCS12Certificate = rust_pkcs12.PKCS12Certificate + + +class PKCS12KeyAndCertificates: + def __init__( + self, + key: PrivateKeyTypes | None, + cert: PKCS12Certificate | None, + additional_certs: list[PKCS12Certificate], + ): + if key is not None and not isinstance( + key, + ( + rsa.RSAPrivateKey, + dsa.DSAPrivateKey, + ec.EllipticCurvePrivateKey, + ed25519.Ed25519PrivateKey, + ed448.Ed448PrivateKey, + ), + ): + raise TypeError( + "Key must be RSA, DSA, EllipticCurve, ED25519, or ED448" + " private key, or None." + ) + if cert is not None and not isinstance(cert, PKCS12Certificate): + raise TypeError("cert must be a PKCS12Certificate object or None") + if not all( + isinstance(add_cert, PKCS12Certificate) + for add_cert in additional_certs + ): + raise TypeError( + "all values in additional_certs must be PKCS12Certificate" + " objects" + ) + self._key = key + self._cert = cert + self._additional_certs = additional_certs + + @property + def key(self) -> PrivateKeyTypes | None: + return self._key + + @property + def cert(self) -> PKCS12Certificate | None: + return self._cert + + @property + def additional_certs(self) -> list[PKCS12Certificate]: + return self._additional_certs + + def __eq__(self, other: object) -> bool: + if not isinstance(other, PKCS12KeyAndCertificates): + return NotImplemented + + return ( + self.key == other.key + and self.cert == other.cert + and self.additional_certs == other.additional_certs + ) + + def __hash__(self) -> int: + return hash((self.key, self.cert, tuple(self.additional_certs))) + + def __repr__(self) -> str: + fmt = ( + "" + ) + return fmt.format(self.key, self.cert, self.additional_certs) + + +load_key_and_certificates = rust_pkcs12.load_key_and_certificates +load_pkcs12 = rust_pkcs12.load_pkcs12 + + +_PKCS12CATypes = typing.Union[ + x509.Certificate, + PKCS12Certificate, +] + + +def serialize_java_truststore( + certs: Iterable[PKCS12Certificate], + encryption_algorithm: serialization.KeySerializationEncryption, +) -> bytes: + if not certs: + raise ValueError("You must supply at least one cert") + + if not isinstance( + encryption_algorithm, serialization.KeySerializationEncryption + ): + raise TypeError( + "Key encryption algorithm must be a " + "KeySerializationEncryption instance" + ) + + return rust_pkcs12.serialize_java_truststore(certs, encryption_algorithm) + + +def serialize_key_and_certificates( + name: bytes | None, + key: PKCS12PrivateKeyTypes | None, + cert: x509.Certificate | None, + cas: Iterable[_PKCS12CATypes] | None, + encryption_algorithm: serialization.KeySerializationEncryption, +) -> bytes: + if key is not None and not isinstance( + key, + ( + rsa.RSAPrivateKey, + dsa.DSAPrivateKey, + ec.EllipticCurvePrivateKey, + ed25519.Ed25519PrivateKey, + ed448.Ed448PrivateKey, + ), + ): + raise TypeError( + "Key must be RSA, DSA, EllipticCurve, ED25519, or ED448" + " private key, or None." + ) + + if not isinstance( + encryption_algorithm, serialization.KeySerializationEncryption + ): + raise TypeError( + "Key encryption algorithm must be a " + "KeySerializationEncryption instance" + ) + + if key is None and cert is None and not cas: + raise ValueError("You must supply at least one of key, cert, or cas") + + return rust_pkcs12.serialize_key_and_certificates( + name, key, cert, cas, encryption_algorithm + ) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/pkcs7.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/pkcs7.py new file mode 100644 index 0000000..4fac500 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/pkcs7.py @@ -0,0 +1,412 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import email.base64mime +import email.generator +import email.message +import email.policy +import io +import typing +from collections.abc import Iterable + +from cryptography import utils, x509 +from cryptography.exceptions import UnsupportedAlgorithm, _Reasons +from cryptography.hazmat.bindings._rust import pkcs7 as rust_pkcs7 +from cryptography.hazmat.primitives import hashes, serialization +from cryptography.hazmat.primitives.asymmetric import ec, padding, rsa +from cryptography.hazmat.primitives.ciphers import ( + algorithms, +) +from cryptography.utils import _check_byteslike + +load_pem_pkcs7_certificates = rust_pkcs7.load_pem_pkcs7_certificates + +load_der_pkcs7_certificates = rust_pkcs7.load_der_pkcs7_certificates + +serialize_certificates = rust_pkcs7.serialize_certificates + +PKCS7HashTypes = typing.Union[ + hashes.SHA224, + hashes.SHA256, + hashes.SHA384, + hashes.SHA512, +] + +PKCS7PrivateKeyTypes = typing.Union[ + rsa.RSAPrivateKey, ec.EllipticCurvePrivateKey +] + +ContentEncryptionAlgorithm = typing.Union[ + typing.Type[algorithms.AES128], typing.Type[algorithms.AES256] +] + + +class PKCS7Options(utils.Enum): + Text = "Add text/plain MIME type" + Binary = "Don't translate input data into canonical MIME format" + DetachedSignature = "Don't embed data in the PKCS7 structure" + NoCapabilities = "Don't embed SMIME capabilities" + NoAttributes = "Don't embed authenticatedAttributes" + NoCerts = "Don't embed signer certificate" + + +class PKCS7SignatureBuilder: + def __init__( + self, + data: utils.Buffer | None = None, + signers: list[ + tuple[ + x509.Certificate, + PKCS7PrivateKeyTypes, + PKCS7HashTypes, + padding.PSS | padding.PKCS1v15 | None, + ] + ] = [], + additional_certs: list[x509.Certificate] = [], + ): + self._data = data + self._signers = signers + self._additional_certs = additional_certs + + def set_data(self, data: utils.Buffer) -> PKCS7SignatureBuilder: + _check_byteslike("data", data) + if self._data is not None: + raise ValueError("data may only be set once") + + return PKCS7SignatureBuilder(data, self._signers) + + def add_signer( + self, + certificate: x509.Certificate, + private_key: PKCS7PrivateKeyTypes, + hash_algorithm: PKCS7HashTypes, + *, + rsa_padding: padding.PSS | padding.PKCS1v15 | None = None, + ) -> PKCS7SignatureBuilder: + if not isinstance( + hash_algorithm, + ( + hashes.SHA224, + hashes.SHA256, + hashes.SHA384, + hashes.SHA512, + ), + ): + raise TypeError( + "hash_algorithm must be one of hashes.SHA224, " + "SHA256, SHA384, or SHA512" + ) + if not isinstance(certificate, x509.Certificate): + raise TypeError("certificate must be a x509.Certificate") + + if not isinstance( + private_key, (rsa.RSAPrivateKey, ec.EllipticCurvePrivateKey) + ): + raise TypeError("Only RSA & EC keys are supported at this time.") + + if rsa_padding is not None: + if not isinstance(rsa_padding, (padding.PSS, padding.PKCS1v15)): + raise TypeError("Padding must be PSS or PKCS1v15") + if not isinstance(private_key, rsa.RSAPrivateKey): + raise TypeError("Padding is only supported for RSA keys") + + return PKCS7SignatureBuilder( + self._data, + [ + *self._signers, + (certificate, private_key, hash_algorithm, rsa_padding), + ], + ) + + def add_certificate( + self, certificate: x509.Certificate + ) -> PKCS7SignatureBuilder: + if not isinstance(certificate, x509.Certificate): + raise TypeError("certificate must be a x509.Certificate") + + return PKCS7SignatureBuilder( + self._data, self._signers, [*self._additional_certs, certificate] + ) + + def sign( + self, + encoding: serialization.Encoding, + options: Iterable[PKCS7Options], + backend: typing.Any = None, + ) -> bytes: + if len(self._signers) == 0: + raise ValueError("Must have at least one signer") + if self._data is None: + raise ValueError("You must add data to sign") + options = list(options) + if not all(isinstance(x, PKCS7Options) for x in options): + raise ValueError("options must be from the PKCS7Options enum") + if encoding not in ( + serialization.Encoding.PEM, + serialization.Encoding.DER, + serialization.Encoding.SMIME, + ): + raise ValueError( + "Must be PEM, DER, or SMIME from the Encoding enum" + ) + + # Text is a meaningless option unless it is accompanied by + # DetachedSignature + if ( + PKCS7Options.Text in options + and PKCS7Options.DetachedSignature not in options + ): + raise ValueError( + "When passing the Text option you must also pass " + "DetachedSignature" + ) + + if PKCS7Options.Text in options and encoding in ( + serialization.Encoding.DER, + serialization.Encoding.PEM, + ): + raise ValueError( + "The Text option is only available for SMIME serialization" + ) + + # No attributes implies no capabilities so we'll error if you try to + # pass both. + if ( + PKCS7Options.NoAttributes in options + and PKCS7Options.NoCapabilities in options + ): + raise ValueError( + "NoAttributes is a superset of NoCapabilities. Do not pass " + "both values." + ) + + return rust_pkcs7.sign_and_serialize(self, encoding, options) + + +class PKCS7EnvelopeBuilder: + def __init__( + self, + *, + _data: bytes | None = None, + _recipients: list[x509.Certificate] | None = None, + _content_encryption_algorithm: ContentEncryptionAlgorithm + | None = None, + ): + from cryptography.hazmat.backends.openssl.backend import ( + backend as ossl, + ) + + if not ossl.rsa_encryption_supported(padding=padding.PKCS1v15()): + raise UnsupportedAlgorithm( + "RSA with PKCS1 v1.5 padding is not supported by this version" + " of OpenSSL.", + _Reasons.UNSUPPORTED_PADDING, + ) + self._data = _data + self._recipients = _recipients if _recipients is not None else [] + self._content_encryption_algorithm = _content_encryption_algorithm + + def set_data(self, data: bytes) -> PKCS7EnvelopeBuilder: + _check_byteslike("data", data) + if self._data is not None: + raise ValueError("data may only be set once") + + return PKCS7EnvelopeBuilder( + _data=data, + _recipients=self._recipients, + _content_encryption_algorithm=self._content_encryption_algorithm, + ) + + def add_recipient( + self, + certificate: x509.Certificate, + ) -> PKCS7EnvelopeBuilder: + if not isinstance(certificate, x509.Certificate): + raise TypeError("certificate must be a x509.Certificate") + + if not isinstance(certificate.public_key(), rsa.RSAPublicKey): + raise TypeError("Only RSA keys are supported at this time.") + + return PKCS7EnvelopeBuilder( + _data=self._data, + _recipients=[ + *self._recipients, + certificate, + ], + _content_encryption_algorithm=self._content_encryption_algorithm, + ) + + def set_content_encryption_algorithm( + self, content_encryption_algorithm: ContentEncryptionAlgorithm + ) -> PKCS7EnvelopeBuilder: + if self._content_encryption_algorithm is not None: + raise ValueError("Content encryption algo may only be set once") + if content_encryption_algorithm not in { + algorithms.AES128, + algorithms.AES256, + }: + raise TypeError("Only AES128 and AES256 are supported") + + return PKCS7EnvelopeBuilder( + _data=self._data, + _recipients=self._recipients, + _content_encryption_algorithm=content_encryption_algorithm, + ) + + def encrypt( + self, + encoding: serialization.Encoding, + options: Iterable[PKCS7Options], + ) -> bytes: + if len(self._recipients) == 0: + raise ValueError("Must have at least one recipient") + if self._data is None: + raise ValueError("You must add data to encrypt") + + # The default content encryption algorithm is AES-128-CBC, which the + # S/MIME v3.2 RFC specifies as MUST support (https://datatracker.ietf.org/doc/html/rfc5751#section-2.7) + # however rest of S/MIME v3.2 is not currently supported + content_encryption_algorithm = ( + self._content_encryption_algorithm or algorithms.AES128 + ) + + options = list(options) + if not all(isinstance(x, PKCS7Options) for x in options): + raise ValueError("options must be from the PKCS7Options enum") + if encoding not in ( + serialization.Encoding.PEM, + serialization.Encoding.DER, + serialization.Encoding.SMIME, + ): + raise ValueError( + "Must be PEM, DER, or SMIME from the Encoding enum" + ) + + # Only allow options that make sense for encryption + if any( + opt not in [PKCS7Options.Text, PKCS7Options.Binary] + for opt in options + ): + raise ValueError( + "Only the following options are supported for encryption: " + "Text, Binary" + ) + elif PKCS7Options.Text in options and PKCS7Options.Binary in options: + # OpenSSL accepts both options at the same time, but ignores Text. + # We fail defensively to avoid unexpected outputs. + raise ValueError( + "Cannot use Binary and Text options at the same time" + ) + + return rust_pkcs7.encrypt_and_serialize( + self, content_encryption_algorithm, encoding, options + ) + + +pkcs7_decrypt_der = rust_pkcs7.decrypt_der +pkcs7_decrypt_pem = rust_pkcs7.decrypt_pem +pkcs7_decrypt_smime = rust_pkcs7.decrypt_smime + + +def _smime_signed_encode( + data: bytes, signature: bytes, micalg: str, text_mode: bool +) -> bytes: + # This function works pretty hard to replicate what OpenSSL does + # precisely. For good and for ill. + + m = email.message.Message() + m.add_header("MIME-Version", "1.0") + m.add_header( + "Content-Type", + "multipart/signed", + protocol="application/x-pkcs7-signature", + micalg=micalg, + ) + + m.preamble = "This is an S/MIME signed message\n" + + msg_part = OpenSSLMimePart() + msg_part.set_payload(data) + if text_mode: + msg_part.add_header("Content-Type", "text/plain") + m.attach(msg_part) + + sig_part = email.message.MIMEPart() + sig_part.add_header( + "Content-Type", "application/x-pkcs7-signature", name="smime.p7s" + ) + sig_part.add_header("Content-Transfer-Encoding", "base64") + sig_part.add_header( + "Content-Disposition", "attachment", filename="smime.p7s" + ) + sig_part.set_payload( + email.base64mime.body_encode(signature, maxlinelen=65) + ) + del sig_part["MIME-Version"] + m.attach(sig_part) + + fp = io.BytesIO() + g = email.generator.BytesGenerator( + fp, + maxheaderlen=0, + mangle_from_=False, + policy=m.policy.clone(linesep="\r\n"), + ) + g.flatten(m) + return fp.getvalue() + + +def _smime_enveloped_encode(data: bytes) -> bytes: + m = email.message.Message() + m.add_header("MIME-Version", "1.0") + m.add_header("Content-Disposition", "attachment", filename="smime.p7m") + m.add_header( + "Content-Type", + "application/pkcs7-mime", + smime_type="enveloped-data", + name="smime.p7m", + ) + m.add_header("Content-Transfer-Encoding", "base64") + + m.set_payload(email.base64mime.body_encode(data, maxlinelen=65)) + + return m.as_bytes(policy=m.policy.clone(linesep="\n", max_line_length=0)) + + +def _smime_enveloped_decode(data: bytes) -> bytes: + m = email.message_from_bytes(data) + if m.get_content_type() not in { + "application/x-pkcs7-mime", + "application/pkcs7-mime", + }: + raise ValueError("Not an S/MIME enveloped message") + return bytes(m.get_payload(decode=True)) + + +def _smime_remove_text_headers(data: bytes) -> bytes: + m = email.message_from_bytes(data) + # Using get() instead of get_content_type() since it has None as default, + # where the latter has "text/plain". Both methods are case-insensitive. + content_type = m.get("content-type") + if content_type is None: + raise ValueError( + "Decrypted MIME data has no 'Content-Type' header. " + "Please remove the 'Text' option to parse it manually." + ) + if "text/plain" not in content_type: + raise ValueError( + f"Decrypted MIME data content type is '{content_type}', not " + "'text/plain'. Remove the 'Text' option to parse it manually." + ) + return bytes(m.get_payload(decode=True)) + + +class OpenSSLMimePart(email.message.MIMEPart): + # A MIMEPart subclass that replicates OpenSSL's behavior of not including + # a newline if there are no headers. + def _write_headers(self, generator) -> None: + if list(self.raw_items()): + generator._write_headers(self) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/ssh.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/ssh.py new file mode 100644 index 0000000..411113b --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/serialization/ssh.py @@ -0,0 +1,1621 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import binascii +import enum +import os +import re +import typing +import warnings +from base64 import encodebytes as _base64_encode +from dataclasses import dataclass + +from cryptography import utils +from cryptography.exceptions import UnsupportedAlgorithm +from cryptography.hazmat.primitives import hashes +from cryptography.hazmat.primitives.asymmetric import ( + dsa, + ec, + ed25519, + padding, + rsa, +) +from cryptography.hazmat.primitives.asymmetric import utils as asym_utils +from cryptography.hazmat.primitives.ciphers import ( + AEADDecryptionContext, + Cipher, + algorithms, + modes, +) +from cryptography.hazmat.primitives.serialization import ( + Encoding, + KeySerializationEncryption, + NoEncryption, + PrivateFormat, + PublicFormat, + _KeySerializationEncryption, +) + +try: + from bcrypt import kdf as _bcrypt_kdf + + _bcrypt_supported = True +except ImportError: + _bcrypt_supported = False + + def _bcrypt_kdf( + password: bytes, + salt: bytes, + desired_key_bytes: int, + rounds: int, + ignore_few_rounds: bool = False, + ) -> bytes: + raise UnsupportedAlgorithm("Need bcrypt module") + + +_SSH_ED25519 = b"ssh-ed25519" +_SSH_RSA = b"ssh-rsa" +_SSH_DSA = b"ssh-dss" +_ECDSA_NISTP256 = b"ecdsa-sha2-nistp256" +_ECDSA_NISTP384 = b"ecdsa-sha2-nistp384" +_ECDSA_NISTP521 = b"ecdsa-sha2-nistp521" +_CERT_SUFFIX = b"-cert-v01@openssh.com" + +# U2F application string suffixed pubkey +_SK_SSH_ED25519 = b"sk-ssh-ed25519@openssh.com" +_SK_SSH_ECDSA_NISTP256 = b"sk-ecdsa-sha2-nistp256@openssh.com" + +# These are not key types, only algorithms, so they cannot appear +# as a public key type +_SSH_RSA_SHA256 = b"rsa-sha2-256" +_SSH_RSA_SHA512 = b"rsa-sha2-512" + +_SSH_PUBKEY_RC = re.compile(rb"\A(\S+)[ \t]+(\S+)") +_SK_MAGIC = b"openssh-key-v1\0" +_SK_START = b"-----BEGIN OPENSSH PRIVATE KEY-----" +_SK_END = b"-----END OPENSSH PRIVATE KEY-----" +_BCRYPT = b"bcrypt" +_NONE = b"none" +_DEFAULT_CIPHER = b"aes256-ctr" +_DEFAULT_ROUNDS = 16 + +# re is only way to work on bytes-like data +_PEM_RC = re.compile(_SK_START + b"(.*?)" + _SK_END, re.DOTALL) + +# padding for max blocksize +_PADDING = memoryview(bytearray(range(1, 1 + 16))) + + +@dataclass +class _SSHCipher: + alg: type[algorithms.AES] + key_len: int + mode: type[modes.CTR] | type[modes.CBC] | type[modes.GCM] + block_len: int + iv_len: int + tag_len: int | None + is_aead: bool + + +# ciphers that are actually used in key wrapping +_SSH_CIPHERS: dict[bytes, _SSHCipher] = { + b"aes256-ctr": _SSHCipher( + alg=algorithms.AES, + key_len=32, + mode=modes.CTR, + block_len=16, + iv_len=16, + tag_len=None, + is_aead=False, + ), + b"aes256-cbc": _SSHCipher( + alg=algorithms.AES, + key_len=32, + mode=modes.CBC, + block_len=16, + iv_len=16, + tag_len=None, + is_aead=False, + ), + b"aes256-gcm@openssh.com": _SSHCipher( + alg=algorithms.AES, + key_len=32, + mode=modes.GCM, + block_len=16, + iv_len=12, + tag_len=16, + is_aead=True, + ), +} + +# map local curve name to key type +_ECDSA_KEY_TYPE = { + "secp256r1": _ECDSA_NISTP256, + "secp384r1": _ECDSA_NISTP384, + "secp521r1": _ECDSA_NISTP521, +} + + +def _get_ssh_key_type(key: SSHPrivateKeyTypes | SSHPublicKeyTypes) -> bytes: + if isinstance(key, ec.EllipticCurvePrivateKey): + key_type = _ecdsa_key_type(key.public_key()) + elif isinstance(key, ec.EllipticCurvePublicKey): + key_type = _ecdsa_key_type(key) + elif isinstance(key, (rsa.RSAPrivateKey, rsa.RSAPublicKey)): + key_type = _SSH_RSA + elif isinstance(key, (dsa.DSAPrivateKey, dsa.DSAPublicKey)): + key_type = _SSH_DSA + elif isinstance( + key, (ed25519.Ed25519PrivateKey, ed25519.Ed25519PublicKey) + ): + key_type = _SSH_ED25519 + else: + raise ValueError("Unsupported key type") + + return key_type + + +def _ecdsa_key_type(public_key: ec.EllipticCurvePublicKey) -> bytes: + """Return SSH key_type and curve_name for private key.""" + curve = public_key.curve + if curve.name not in _ECDSA_KEY_TYPE: + raise ValueError( + f"Unsupported curve for ssh private key: {curve.name!r}" + ) + return _ECDSA_KEY_TYPE[curve.name] + + +def _ssh_pem_encode( + data: utils.Buffer, + prefix: bytes = _SK_START + b"\n", + suffix: bytes = _SK_END + b"\n", +) -> bytes: + return b"".join([prefix, _base64_encode(data), suffix]) + + +def _check_block_size(data: utils.Buffer, block_len: int) -> None: + """Require data to be full blocks""" + if not data or len(data) % block_len != 0: + raise ValueError("Corrupt data: missing padding") + + +def _check_empty(data: utils.Buffer) -> None: + """All data should have been parsed.""" + if data: + raise ValueError("Corrupt data: unparsed data") + + +def _init_cipher( + ciphername: bytes, + password: bytes | None, + salt: bytes, + rounds: int, +) -> Cipher[modes.CBC | modes.CTR | modes.GCM]: + """Generate key + iv and return cipher.""" + if not password: + raise TypeError( + "Key is password-protected, but password was not provided." + ) + + ciph = _SSH_CIPHERS[ciphername] + seed = _bcrypt_kdf( + password, salt, ciph.key_len + ciph.iv_len, rounds, True + ) + return Cipher( + ciph.alg(seed[: ciph.key_len]), + ciph.mode(seed[ciph.key_len :]), + ) + + +def _get_u32(data: memoryview) -> tuple[int, memoryview]: + """Uint32""" + if len(data) < 4: + raise ValueError("Invalid data") + return int.from_bytes(data[:4], byteorder="big"), data[4:] + + +def _get_u64(data: memoryview) -> tuple[int, memoryview]: + """Uint64""" + if len(data) < 8: + raise ValueError("Invalid data") + return int.from_bytes(data[:8], byteorder="big"), data[8:] + + +def _get_sshstr(data: memoryview) -> tuple[memoryview, memoryview]: + """Bytes with u32 length prefix""" + n, data = _get_u32(data) + if n > len(data): + raise ValueError("Invalid data") + return data[:n], data[n:] + + +def _get_mpint(data: memoryview) -> tuple[int, memoryview]: + """Big integer.""" + val, data = _get_sshstr(data) + if val and val[0] > 0x7F: + raise ValueError("Invalid data") + return int.from_bytes(val, "big"), data + + +def _to_mpint(val: int) -> bytes: + """Storage format for signed bigint.""" + if val < 0: + raise ValueError("negative mpint not allowed") + if not val: + return b"" + nbytes = (val.bit_length() + 8) // 8 + return utils.int_to_bytes(val, nbytes) + + +class _FragList: + """Build recursive structure without data copy.""" + + flist: list[utils.Buffer] + + def __init__(self, init: list[utils.Buffer] | None = None) -> None: + self.flist = [] + if init: + self.flist.extend(init) + + def put_raw(self, val: utils.Buffer) -> None: + """Add plain bytes""" + self.flist.append(val) + + def put_u32(self, val: int) -> None: + """Big-endian uint32""" + self.flist.append(val.to_bytes(length=4, byteorder="big")) + + def put_u64(self, val: int) -> None: + """Big-endian uint64""" + self.flist.append(val.to_bytes(length=8, byteorder="big")) + + def put_sshstr(self, val: bytes | _FragList) -> None: + """Bytes prefixed with u32 length""" + if isinstance(val, (bytes, memoryview, bytearray)): + self.put_u32(len(val)) + self.flist.append(val) + else: + self.put_u32(val.size()) + self.flist.extend(val.flist) + + def put_mpint(self, val: int) -> None: + """Big-endian bigint prefixed with u32 length""" + self.put_sshstr(_to_mpint(val)) + + def size(self) -> int: + """Current number of bytes""" + return sum(map(len, self.flist)) + + def render(self, dstbuf: memoryview, pos: int = 0) -> int: + """Write into bytearray""" + for frag in self.flist: + flen = len(frag) + start, pos = pos, pos + flen + dstbuf[start:pos] = frag + return pos + + def tobytes(self) -> bytes: + """Return as bytes""" + buf = memoryview(bytearray(self.size())) + self.render(buf) + return buf.tobytes() + + +class _SSHFormatRSA: + """Format for RSA keys. + + Public: + mpint e, n + Private: + mpint n, e, d, iqmp, p, q + """ + + def get_public( + self, data: memoryview + ) -> tuple[tuple[int, int], memoryview]: + """RSA public fields""" + e, data = _get_mpint(data) + n, data = _get_mpint(data) + return (e, n), data + + def load_public( + self, data: memoryview + ) -> tuple[rsa.RSAPublicKey, memoryview]: + """Make RSA public key from data.""" + (e, n), data = self.get_public(data) + public_numbers = rsa.RSAPublicNumbers(e, n) + public_key = public_numbers.public_key() + return public_key, data + + def load_private( + self, data: memoryview, pubfields, unsafe_skip_rsa_key_validation: bool + ) -> tuple[rsa.RSAPrivateKey, memoryview]: + """Make RSA private key from data.""" + n, data = _get_mpint(data) + e, data = _get_mpint(data) + d, data = _get_mpint(data) + iqmp, data = _get_mpint(data) + p, data = _get_mpint(data) + q, data = _get_mpint(data) + + if (e, n) != pubfields: + raise ValueError("Corrupt data: rsa field mismatch") + dmp1 = rsa.rsa_crt_dmp1(d, p) + dmq1 = rsa.rsa_crt_dmq1(d, q) + public_numbers = rsa.RSAPublicNumbers(e, n) + private_numbers = rsa.RSAPrivateNumbers( + p, q, d, dmp1, dmq1, iqmp, public_numbers + ) + private_key = private_numbers.private_key( + unsafe_skip_rsa_key_validation=unsafe_skip_rsa_key_validation + ) + return private_key, data + + def encode_public( + self, public_key: rsa.RSAPublicKey, f_pub: _FragList + ) -> None: + """Write RSA public key""" + pubn = public_key.public_numbers() + f_pub.put_mpint(pubn.e) + f_pub.put_mpint(pubn.n) + + def encode_private( + self, private_key: rsa.RSAPrivateKey, f_priv: _FragList + ) -> None: + """Write RSA private key""" + private_numbers = private_key.private_numbers() + public_numbers = private_numbers.public_numbers + + f_priv.put_mpint(public_numbers.n) + f_priv.put_mpint(public_numbers.e) + + f_priv.put_mpint(private_numbers.d) + f_priv.put_mpint(private_numbers.iqmp) + f_priv.put_mpint(private_numbers.p) + f_priv.put_mpint(private_numbers.q) + + +class _SSHFormatDSA: + """Format for DSA keys. + + Public: + mpint p, q, g, y + Private: + mpint p, q, g, y, x + """ + + def get_public(self, data: memoryview) -> tuple[tuple, memoryview]: + """DSA public fields""" + p, data = _get_mpint(data) + q, data = _get_mpint(data) + g, data = _get_mpint(data) + y, data = _get_mpint(data) + return (p, q, g, y), data + + def load_public( + self, data: memoryview + ) -> tuple[dsa.DSAPublicKey, memoryview]: + """Make DSA public key from data.""" + (p, q, g, y), data = self.get_public(data) + parameter_numbers = dsa.DSAParameterNumbers(p, q, g) + public_numbers = dsa.DSAPublicNumbers(y, parameter_numbers) + self._validate(public_numbers) + public_key = public_numbers.public_key() + return public_key, data + + def load_private( + self, data: memoryview, pubfields, unsafe_skip_rsa_key_validation: bool + ) -> tuple[dsa.DSAPrivateKey, memoryview]: + """Make DSA private key from data.""" + (p, q, g, y), data = self.get_public(data) + x, data = _get_mpint(data) + + if (p, q, g, y) != pubfields: + raise ValueError("Corrupt data: dsa field mismatch") + parameter_numbers = dsa.DSAParameterNumbers(p, q, g) + public_numbers = dsa.DSAPublicNumbers(y, parameter_numbers) + self._validate(public_numbers) + private_numbers = dsa.DSAPrivateNumbers(x, public_numbers) + private_key = private_numbers.private_key() + return private_key, data + + def encode_public( + self, public_key: dsa.DSAPublicKey, f_pub: _FragList + ) -> None: + """Write DSA public key""" + public_numbers = public_key.public_numbers() + parameter_numbers = public_numbers.parameter_numbers + self._validate(public_numbers) + + f_pub.put_mpint(parameter_numbers.p) + f_pub.put_mpint(parameter_numbers.q) + f_pub.put_mpint(parameter_numbers.g) + f_pub.put_mpint(public_numbers.y) + + def encode_private( + self, private_key: dsa.DSAPrivateKey, f_priv: _FragList + ) -> None: + """Write DSA private key""" + self.encode_public(private_key.public_key(), f_priv) + f_priv.put_mpint(private_key.private_numbers().x) + + def _validate(self, public_numbers: dsa.DSAPublicNumbers) -> None: + parameter_numbers = public_numbers.parameter_numbers + if parameter_numbers.p.bit_length() != 1024: + raise ValueError("SSH supports only 1024 bit DSA keys") + + +class _SSHFormatECDSA: + """Format for ECDSA keys. + + Public: + str curve + bytes point + Private: + str curve + bytes point + mpint secret + """ + + def __init__(self, ssh_curve_name: bytes, curve: ec.EllipticCurve): + self.ssh_curve_name = ssh_curve_name + self.curve = curve + + def get_public( + self, data: memoryview + ) -> tuple[tuple[memoryview, memoryview], memoryview]: + """ECDSA public fields""" + curve, data = _get_sshstr(data) + point, data = _get_sshstr(data) + if curve != self.ssh_curve_name: + raise ValueError("Curve name mismatch") + if len(point) == 0: + raise ValueError("Invalid EC point: empty data") + if point[0] != 4: + raise NotImplementedError("Need uncompressed point") + return (curve, point), data + + def load_public( + self, data: memoryview + ) -> tuple[ec.EllipticCurvePublicKey, memoryview]: + """Make ECDSA public key from data.""" + (_, point), data = self.get_public(data) + public_key = ec.EllipticCurvePublicKey.from_encoded_point( + self.curve, point.tobytes() + ) + return public_key, data + + def load_private( + self, data: memoryview, pubfields, unsafe_skip_rsa_key_validation: bool + ) -> tuple[ec.EllipticCurvePrivateKey, memoryview]: + """Make ECDSA private key from data.""" + (curve_name, point), data = self.get_public(data) + secret, data = _get_mpint(data) + + if (curve_name, point) != pubfields: + raise ValueError("Corrupt data: ecdsa field mismatch") + private_key = ec.derive_private_key(secret, self.curve) + return private_key, data + + def encode_public( + self, public_key: ec.EllipticCurvePublicKey, f_pub: _FragList + ) -> None: + """Write ECDSA public key""" + point = public_key.public_bytes( + Encoding.X962, PublicFormat.UncompressedPoint + ) + f_pub.put_sshstr(self.ssh_curve_name) + f_pub.put_sshstr(point) + + def encode_private( + self, private_key: ec.EllipticCurvePrivateKey, f_priv: _FragList + ) -> None: + """Write ECDSA private key""" + public_key = private_key.public_key() + private_numbers = private_key.private_numbers() + + self.encode_public(public_key, f_priv) + f_priv.put_mpint(private_numbers.private_value) + + +class _SSHFormatEd25519: + """Format for Ed25519 keys. + + Public: + bytes point + Private: + bytes point + bytes secret_and_point + """ + + def get_public( + self, data: memoryview + ) -> tuple[tuple[memoryview], memoryview]: + """Ed25519 public fields""" + point, data = _get_sshstr(data) + return (point,), data + + def load_public( + self, data: memoryview + ) -> tuple[ed25519.Ed25519PublicKey, memoryview]: + """Make Ed25519 public key from data.""" + (point,), data = self.get_public(data) + public_key = ed25519.Ed25519PublicKey.from_public_bytes( + point.tobytes() + ) + return public_key, data + + def load_private( + self, data: memoryview, pubfields, unsafe_skip_rsa_key_validation: bool + ) -> tuple[ed25519.Ed25519PrivateKey, memoryview]: + """Make Ed25519 private key from data.""" + (point,), data = self.get_public(data) + keypair, data = _get_sshstr(data) + + secret = keypair[:32] + point2 = keypair[32:] + if point != point2 or (point,) != pubfields: + raise ValueError("Corrupt data: ed25519 field mismatch") + private_key = ed25519.Ed25519PrivateKey.from_private_bytes(secret) + return private_key, data + + def encode_public( + self, public_key: ed25519.Ed25519PublicKey, f_pub: _FragList + ) -> None: + """Write Ed25519 public key""" + raw_public_key = public_key.public_bytes( + Encoding.Raw, PublicFormat.Raw + ) + f_pub.put_sshstr(raw_public_key) + + def encode_private( + self, private_key: ed25519.Ed25519PrivateKey, f_priv: _FragList + ) -> None: + """Write Ed25519 private key""" + public_key = private_key.public_key() + raw_private_key = private_key.private_bytes( + Encoding.Raw, PrivateFormat.Raw, NoEncryption() + ) + raw_public_key = public_key.public_bytes( + Encoding.Raw, PublicFormat.Raw + ) + f_keypair = _FragList([raw_private_key, raw_public_key]) + + self.encode_public(public_key, f_priv) + f_priv.put_sshstr(f_keypair) + + +def load_application(data) -> tuple[memoryview, memoryview]: + """ + U2F application strings + """ + application, data = _get_sshstr(data) + if not application.tobytes().startswith(b"ssh:"): + raise ValueError( + "U2F application string does not start with b'ssh:' " + f"({application})" + ) + return application, data + + +class _SSHFormatSKEd25519: + """ + The format of a sk-ssh-ed25519@openssh.com public key is: + + string "sk-ssh-ed25519@openssh.com" + string public key + string application (user-specified, but typically "ssh:") + """ + + def load_public( + self, data: memoryview + ) -> tuple[ed25519.Ed25519PublicKey, memoryview]: + """Make Ed25519 public key from data.""" + public_key, data = _lookup_kformat(_SSH_ED25519).load_public(data) + _, data = load_application(data) + return public_key, data + + def get_public(self, data: memoryview) -> typing.NoReturn: + # Confusingly `get_public` is an entry point used by private key + # loading. + raise UnsupportedAlgorithm( + "sk-ssh-ed25519 private keys cannot be loaded" + ) + + +class _SSHFormatSKECDSA: + """ + The format of a sk-ecdsa-sha2-nistp256@openssh.com public key is: + + string "sk-ecdsa-sha2-nistp256@openssh.com" + string curve name + ec_point Q + string application (user-specified, but typically "ssh:") + """ + + def load_public( + self, data: memoryview + ) -> tuple[ec.EllipticCurvePublicKey, memoryview]: + """Make ECDSA public key from data.""" + public_key, data = _lookup_kformat(_ECDSA_NISTP256).load_public(data) + _, data = load_application(data) + return public_key, data + + def get_public(self, data: memoryview) -> typing.NoReturn: + # Confusingly `get_public` is an entry point used by private key + # loading. + raise UnsupportedAlgorithm( + "sk-ecdsa-sha2-nistp256 private keys cannot be loaded" + ) + + +_KEY_FORMATS = { + _SSH_RSA: _SSHFormatRSA(), + _SSH_DSA: _SSHFormatDSA(), + _SSH_ED25519: _SSHFormatEd25519(), + _ECDSA_NISTP256: _SSHFormatECDSA(b"nistp256", ec.SECP256R1()), + _ECDSA_NISTP384: _SSHFormatECDSA(b"nistp384", ec.SECP384R1()), + _ECDSA_NISTP521: _SSHFormatECDSA(b"nistp521", ec.SECP521R1()), + _SK_SSH_ED25519: _SSHFormatSKEd25519(), + _SK_SSH_ECDSA_NISTP256: _SSHFormatSKECDSA(), +} + + +def _lookup_kformat(key_type: utils.Buffer): + """Return valid format or throw error""" + if not isinstance(key_type, bytes): + key_type = memoryview(key_type).tobytes() + if key_type in _KEY_FORMATS: + return _KEY_FORMATS[key_type] + raise UnsupportedAlgorithm(f"Unsupported key type: {key_type!r}") + + +SSHPrivateKeyTypes = typing.Union[ + ec.EllipticCurvePrivateKey, + rsa.RSAPrivateKey, + dsa.DSAPrivateKey, + ed25519.Ed25519PrivateKey, +] + + +def load_ssh_private_key( + data: utils.Buffer, + password: bytes | None, + backend: typing.Any = None, + *, + unsafe_skip_rsa_key_validation: bool = False, +) -> SSHPrivateKeyTypes: + """Load private key from OpenSSH custom encoding.""" + utils._check_byteslike("data", data) + if password is not None: + utils._check_bytes("password", password) + + m = _PEM_RC.search(data) + if not m: + raise ValueError("Not OpenSSH private key format") + p1 = m.start(1) + p2 = m.end(1) + data = binascii.a2b_base64(memoryview(data)[p1:p2]) + if not data.startswith(_SK_MAGIC): + raise ValueError("Not OpenSSH private key format") + data = memoryview(data)[len(_SK_MAGIC) :] + + # parse header + ciphername, data = _get_sshstr(data) + kdfname, data = _get_sshstr(data) + kdfoptions, data = _get_sshstr(data) + nkeys, data = _get_u32(data) + if nkeys != 1: + raise ValueError("Only one key supported") + + # load public key data + pubdata, data = _get_sshstr(data) + pub_key_type, pubdata = _get_sshstr(pubdata) + kformat = _lookup_kformat(pub_key_type) + pubfields, pubdata = kformat.get_public(pubdata) + _check_empty(pubdata) + + if ciphername != _NONE or kdfname != _NONE: + ciphername_bytes = ciphername.tobytes() + if ciphername_bytes not in _SSH_CIPHERS: + raise UnsupportedAlgorithm( + f"Unsupported cipher: {ciphername_bytes!r}" + ) + if kdfname != _BCRYPT: + raise UnsupportedAlgorithm(f"Unsupported KDF: {kdfname!r}") + blklen = _SSH_CIPHERS[ciphername_bytes].block_len + tag_len = _SSH_CIPHERS[ciphername_bytes].tag_len + # load secret data + edata, data = _get_sshstr(data) + # see https://bugzilla.mindrot.org/show_bug.cgi?id=3553 for + # information about how OpenSSH handles AEAD tags + if _SSH_CIPHERS[ciphername_bytes].is_aead: + tag = bytes(data) + if len(tag) != tag_len: + raise ValueError("Corrupt data: invalid tag length for cipher") + else: + _check_empty(data) + _check_block_size(edata, blklen) + salt, kbuf = _get_sshstr(kdfoptions) + rounds, kbuf = _get_u32(kbuf) + _check_empty(kbuf) + ciph = _init_cipher(ciphername_bytes, password, salt.tobytes(), rounds) + dec = ciph.decryptor() + edata = memoryview(dec.update(edata)) + if _SSH_CIPHERS[ciphername_bytes].is_aead: + assert isinstance(dec, AEADDecryptionContext) + _check_empty(dec.finalize_with_tag(tag)) + else: + # _check_block_size requires data to be a full block so there + # should be no output from finalize + _check_empty(dec.finalize()) + else: + if password: + raise TypeError( + "Password was given but private key is not encrypted." + ) + # load secret data + edata, data = _get_sshstr(data) + _check_empty(data) + blklen = 8 + _check_block_size(edata, blklen) + ck1, edata = _get_u32(edata) + ck2, edata = _get_u32(edata) + if ck1 != ck2: + raise ValueError("Corrupt data: broken checksum") + + # load per-key struct + key_type, edata = _get_sshstr(edata) + if key_type != pub_key_type: + raise ValueError("Corrupt data: key type mismatch") + private_key, edata = kformat.load_private( + edata, + pubfields, + unsafe_skip_rsa_key_validation=unsafe_skip_rsa_key_validation, + ) + # We don't use the comment + _, edata = _get_sshstr(edata) + + # yes, SSH does padding check *after* all other parsing is done. + # need to follow as it writes zero-byte padding too. + if edata != _PADDING[: len(edata)]: + raise ValueError("Corrupt data: invalid padding") + + if isinstance(private_key, dsa.DSAPrivateKey): + warnings.warn( + "SSH DSA keys are deprecated and will be removed in a future " + "release.", + utils.DeprecatedIn40, + stacklevel=2, + ) + + return private_key + + +def _serialize_ssh_private_key( + private_key: SSHPrivateKeyTypes, + password: bytes, + encryption_algorithm: KeySerializationEncryption, +) -> bytes: + """Serialize private key with OpenSSH custom encoding.""" + utils._check_bytes("password", password) + if isinstance(private_key, dsa.DSAPrivateKey): + warnings.warn( + "SSH DSA key support is deprecated and will be " + "removed in a future release", + utils.DeprecatedIn40, + stacklevel=4, + ) + + key_type = _get_ssh_key_type(private_key) + kformat = _lookup_kformat(key_type) + + # setup parameters + f_kdfoptions = _FragList() + if password: + ciphername = _DEFAULT_CIPHER + blklen = _SSH_CIPHERS[ciphername].block_len + kdfname = _BCRYPT + rounds = _DEFAULT_ROUNDS + if ( + isinstance(encryption_algorithm, _KeySerializationEncryption) + and encryption_algorithm._kdf_rounds is not None + ): + rounds = encryption_algorithm._kdf_rounds + salt = os.urandom(16) + f_kdfoptions.put_sshstr(salt) + f_kdfoptions.put_u32(rounds) + ciph = _init_cipher(ciphername, password, salt, rounds) + else: + ciphername = kdfname = _NONE + blklen = 8 + ciph = None + nkeys = 1 + checkval = os.urandom(4) + comment = b"" + + # encode public and private parts together + f_public_key = _FragList() + f_public_key.put_sshstr(key_type) + kformat.encode_public(private_key.public_key(), f_public_key) + + f_secrets = _FragList([checkval, checkval]) + f_secrets.put_sshstr(key_type) + kformat.encode_private(private_key, f_secrets) + f_secrets.put_sshstr(comment) + f_secrets.put_raw(_PADDING[: blklen - (f_secrets.size() % blklen)]) + + # top-level structure + f_main = _FragList() + f_main.put_raw(_SK_MAGIC) + f_main.put_sshstr(ciphername) + f_main.put_sshstr(kdfname) + f_main.put_sshstr(f_kdfoptions) + f_main.put_u32(nkeys) + f_main.put_sshstr(f_public_key) + f_main.put_sshstr(f_secrets) + + # copy result info bytearray + slen = f_secrets.size() + mlen = f_main.size() + buf = memoryview(bytearray(mlen + blklen)) + f_main.render(buf) + ofs = mlen - slen + + # encrypt in-place + if ciph is not None: + ciph.encryptor().update_into(buf[ofs:mlen], buf[ofs:]) + + return _ssh_pem_encode(buf[:mlen]) + + +SSHPublicKeyTypes = typing.Union[ + ec.EllipticCurvePublicKey, + rsa.RSAPublicKey, + dsa.DSAPublicKey, + ed25519.Ed25519PublicKey, +] + +SSHCertPublicKeyTypes = typing.Union[ + ec.EllipticCurvePublicKey, + rsa.RSAPublicKey, + ed25519.Ed25519PublicKey, +] + + +class SSHCertificateType(enum.Enum): + USER = 1 + HOST = 2 + + +class SSHCertificate: + def __init__( + self, + _nonce: memoryview, + _public_key: SSHPublicKeyTypes, + _serial: int, + _cctype: int, + _key_id: memoryview, + _valid_principals: list[bytes], + _valid_after: int, + _valid_before: int, + _critical_options: dict[bytes, bytes], + _extensions: dict[bytes, bytes], + _sig_type: memoryview, + _sig_key: memoryview, + _inner_sig_type: memoryview, + _signature: memoryview, + _tbs_cert_body: memoryview, + _cert_key_type: bytes, + _cert_body: memoryview, + ): + self._nonce = _nonce + self._public_key = _public_key + self._serial = _serial + try: + self._type = SSHCertificateType(_cctype) + except ValueError: + raise ValueError("Invalid certificate type") + self._key_id = _key_id + self._valid_principals = _valid_principals + self._valid_after = _valid_after + self._valid_before = _valid_before + self._critical_options = _critical_options + self._extensions = _extensions + self._sig_type = _sig_type + self._sig_key = _sig_key + self._inner_sig_type = _inner_sig_type + self._signature = _signature + self._cert_key_type = _cert_key_type + self._cert_body = _cert_body + self._tbs_cert_body = _tbs_cert_body + + @property + def nonce(self) -> bytes: + return bytes(self._nonce) + + def public_key(self) -> SSHCertPublicKeyTypes: + # make mypy happy until we remove DSA support entirely and + # the underlying union won't have a disallowed type + return typing.cast(SSHCertPublicKeyTypes, self._public_key) + + @property + def serial(self) -> int: + return self._serial + + @property + def type(self) -> SSHCertificateType: + return self._type + + @property + def key_id(self) -> bytes: + return bytes(self._key_id) + + @property + def valid_principals(self) -> list[bytes]: + return self._valid_principals + + @property + def valid_before(self) -> int: + return self._valid_before + + @property + def valid_after(self) -> int: + return self._valid_after + + @property + def critical_options(self) -> dict[bytes, bytes]: + return self._critical_options + + @property + def extensions(self) -> dict[bytes, bytes]: + return self._extensions + + def signature_key(self) -> SSHCertPublicKeyTypes: + sigformat = _lookup_kformat(self._sig_type) + signature_key, sigkey_rest = sigformat.load_public(self._sig_key) + _check_empty(sigkey_rest) + return signature_key + + def public_bytes(self) -> bytes: + return ( + bytes(self._cert_key_type) + + b" " + + binascii.b2a_base64(bytes(self._cert_body), newline=False) + ) + + def verify_cert_signature(self) -> None: + signature_key = self.signature_key() + if isinstance(signature_key, ed25519.Ed25519PublicKey): + signature_key.verify( + bytes(self._signature), bytes(self._tbs_cert_body) + ) + elif isinstance(signature_key, ec.EllipticCurvePublicKey): + # The signature is encoded as a pair of big-endian integers + r, data = _get_mpint(self._signature) + s, data = _get_mpint(data) + _check_empty(data) + computed_sig = asym_utils.encode_dss_signature(r, s) + hash_alg = _get_ec_hash_alg(signature_key.curve) + signature_key.verify( + computed_sig, bytes(self._tbs_cert_body), ec.ECDSA(hash_alg) + ) + else: + assert isinstance(signature_key, rsa.RSAPublicKey) + if self._inner_sig_type == _SSH_RSA: + hash_alg = hashes.SHA1() + elif self._inner_sig_type == _SSH_RSA_SHA256: + hash_alg = hashes.SHA256() + else: + assert self._inner_sig_type == _SSH_RSA_SHA512 + hash_alg = hashes.SHA512() + signature_key.verify( + bytes(self._signature), + bytes(self._tbs_cert_body), + padding.PKCS1v15(), + hash_alg, + ) + + +def _get_ec_hash_alg(curve: ec.EllipticCurve) -> hashes.HashAlgorithm: + if isinstance(curve, ec.SECP256R1): + return hashes.SHA256() + elif isinstance(curve, ec.SECP384R1): + return hashes.SHA384() + else: + assert isinstance(curve, ec.SECP521R1) + return hashes.SHA512() + + +def _load_ssh_public_identity( + data: utils.Buffer, + _legacy_dsa_allowed=False, +) -> SSHCertificate | SSHPublicKeyTypes: + utils._check_byteslike("data", data) + + m = _SSH_PUBKEY_RC.match(data) + if not m: + raise ValueError("Invalid line format") + key_type = orig_key_type = m.group(1) + key_body = m.group(2) + with_cert = False + if key_type.endswith(_CERT_SUFFIX): + with_cert = True + key_type = key_type[: -len(_CERT_SUFFIX)] + if key_type == _SSH_DSA and not _legacy_dsa_allowed: + raise UnsupportedAlgorithm( + "DSA keys aren't supported in SSH certificates" + ) + kformat = _lookup_kformat(key_type) + + try: + rest = memoryview(binascii.a2b_base64(key_body)) + except (TypeError, binascii.Error): + raise ValueError("Invalid format") + + if with_cert: + cert_body = rest + inner_key_type, rest = _get_sshstr(rest) + if inner_key_type != orig_key_type: + raise ValueError("Invalid key format") + if with_cert: + nonce, rest = _get_sshstr(rest) + public_key, rest = kformat.load_public(rest) + if with_cert: + serial, rest = _get_u64(rest) + cctype, rest = _get_u32(rest) + key_id, rest = _get_sshstr(rest) + principals, rest = _get_sshstr(rest) + valid_principals = [] + while principals: + principal, principals = _get_sshstr(principals) + valid_principals.append(bytes(principal)) + valid_after, rest = _get_u64(rest) + valid_before, rest = _get_u64(rest) + crit_options, rest = _get_sshstr(rest) + critical_options = _parse_exts_opts(crit_options) + exts, rest = _get_sshstr(rest) + extensions = _parse_exts_opts(exts) + # Get the reserved field, which is unused. + _, rest = _get_sshstr(rest) + sig_key_raw, rest = _get_sshstr(rest) + sig_type, sig_key = _get_sshstr(sig_key_raw) + if sig_type == _SSH_DSA and not _legacy_dsa_allowed: + raise UnsupportedAlgorithm( + "DSA signatures aren't supported in SSH certificates" + ) + # Get the entire cert body and subtract the signature + tbs_cert_body = cert_body[: -len(rest)] + signature_raw, rest = _get_sshstr(rest) + _check_empty(rest) + inner_sig_type, sig_rest = _get_sshstr(signature_raw) + # RSA certs can have multiple algorithm types + if ( + sig_type == _SSH_RSA + and inner_sig_type + not in [_SSH_RSA_SHA256, _SSH_RSA_SHA512, _SSH_RSA] + ) or (sig_type != _SSH_RSA and inner_sig_type != sig_type): + raise ValueError("Signature key type does not match") + signature, sig_rest = _get_sshstr(sig_rest) + _check_empty(sig_rest) + return SSHCertificate( + nonce, + public_key, + serial, + cctype, + key_id, + valid_principals, + valid_after, + valid_before, + critical_options, + extensions, + sig_type, + sig_key, + inner_sig_type, + signature, + tbs_cert_body, + orig_key_type, + cert_body, + ) + else: + _check_empty(rest) + return public_key + + +def load_ssh_public_identity( + data: utils.Buffer, +) -> SSHCertificate | SSHPublicKeyTypes: + return _load_ssh_public_identity(data) + + +def _parse_exts_opts(exts_opts: memoryview) -> dict[bytes, bytes]: + result: dict[bytes, bytes] = {} + last_name = None + while exts_opts: + name, exts_opts = _get_sshstr(exts_opts) + bname: bytes = bytes(name) + if bname in result: + raise ValueError("Duplicate name") + if last_name is not None and bname < last_name: + raise ValueError("Fields not lexically sorted") + value, exts_opts = _get_sshstr(exts_opts) + if len(value) > 0: + value, extra = _get_sshstr(value) + if len(extra) > 0: + raise ValueError("Unexpected extra data after value") + result[bname] = bytes(value) + last_name = bname + return result + + +def ssh_key_fingerprint( + key: SSHPublicKeyTypes, + hash_algorithm: hashes.MD5 | hashes.SHA256, +) -> bytes: + if not isinstance(hash_algorithm, (hashes.MD5, hashes.SHA256)): + raise TypeError("hash_algorithm must be either MD5 or SHA256") + + key_type = _get_ssh_key_type(key) + kformat = _lookup_kformat(key_type) + + f_pub = _FragList() + f_pub.put_sshstr(key_type) + kformat.encode_public(key, f_pub) + + ssh_binary_data = f_pub.tobytes() + + # Hash the binary data + hash_obj = hashes.Hash(hash_algorithm) + hash_obj.update(ssh_binary_data) + return hash_obj.finalize() + + +def load_ssh_public_key( + data: utils.Buffer, backend: typing.Any = None +) -> SSHPublicKeyTypes: + cert_or_key = _load_ssh_public_identity(data, _legacy_dsa_allowed=True) + public_key: SSHPublicKeyTypes + if isinstance(cert_or_key, SSHCertificate): + public_key = cert_or_key.public_key() + else: + public_key = cert_or_key + + if isinstance(public_key, dsa.DSAPublicKey): + warnings.warn( + "SSH DSA keys are deprecated and will be removed in a future " + "release.", + utils.DeprecatedIn40, + stacklevel=2, + ) + return public_key + + +def serialize_ssh_public_key(public_key: SSHPublicKeyTypes) -> bytes: + """One-line public key format for OpenSSH""" + if isinstance(public_key, dsa.DSAPublicKey): + warnings.warn( + "SSH DSA key support is deprecated and will be " + "removed in a future release", + utils.DeprecatedIn40, + stacklevel=4, + ) + key_type = _get_ssh_key_type(public_key) + kformat = _lookup_kformat(key_type) + + f_pub = _FragList() + f_pub.put_sshstr(key_type) + kformat.encode_public(public_key, f_pub) + + pub = binascii.b2a_base64(f_pub.tobytes()).strip() + return b"".join([key_type, b" ", pub]) + + +SSHCertPrivateKeyTypes = typing.Union[ + ec.EllipticCurvePrivateKey, + rsa.RSAPrivateKey, + ed25519.Ed25519PrivateKey, +] + + +# This is an undocumented limit enforced in the openssh codebase for sshd and +# ssh-keygen, but it is undefined in the ssh certificates spec. +_SSHKEY_CERT_MAX_PRINCIPALS = 256 + + +class SSHCertificateBuilder: + def __init__( + self, + _public_key: SSHCertPublicKeyTypes | None = None, + _serial: int | None = None, + _type: SSHCertificateType | None = None, + _key_id: bytes | None = None, + _valid_principals: list[bytes] = [], + _valid_for_all_principals: bool = False, + _valid_before: int | None = None, + _valid_after: int | None = None, + _critical_options: list[tuple[bytes, bytes]] = [], + _extensions: list[tuple[bytes, bytes]] = [], + ): + self._public_key = _public_key + self._serial = _serial + self._type = _type + self._key_id = _key_id + self._valid_principals = _valid_principals + self._valid_for_all_principals = _valid_for_all_principals + self._valid_before = _valid_before + self._valid_after = _valid_after + self._critical_options = _critical_options + self._extensions = _extensions + + def public_key( + self, public_key: SSHCertPublicKeyTypes + ) -> SSHCertificateBuilder: + if not isinstance( + public_key, + ( + ec.EllipticCurvePublicKey, + rsa.RSAPublicKey, + ed25519.Ed25519PublicKey, + ), + ): + raise TypeError("Unsupported key type") + if self._public_key is not None: + raise ValueError("public_key already set") + + return SSHCertificateBuilder( + _public_key=public_key, + _serial=self._serial, + _type=self._type, + _key_id=self._key_id, + _valid_principals=self._valid_principals, + _valid_for_all_principals=self._valid_for_all_principals, + _valid_before=self._valid_before, + _valid_after=self._valid_after, + _critical_options=self._critical_options, + _extensions=self._extensions, + ) + + def serial(self, serial: int) -> SSHCertificateBuilder: + if not isinstance(serial, int): + raise TypeError("serial must be an integer") + if not 0 <= serial < 2**64: + raise ValueError("serial must be between 0 and 2**64") + if self._serial is not None: + raise ValueError("serial already set") + + return SSHCertificateBuilder( + _public_key=self._public_key, + _serial=serial, + _type=self._type, + _key_id=self._key_id, + _valid_principals=self._valid_principals, + _valid_for_all_principals=self._valid_for_all_principals, + _valid_before=self._valid_before, + _valid_after=self._valid_after, + _critical_options=self._critical_options, + _extensions=self._extensions, + ) + + def type(self, type: SSHCertificateType) -> SSHCertificateBuilder: + if not isinstance(type, SSHCertificateType): + raise TypeError("type must be an SSHCertificateType") + if self._type is not None: + raise ValueError("type already set") + + return SSHCertificateBuilder( + _public_key=self._public_key, + _serial=self._serial, + _type=type, + _key_id=self._key_id, + _valid_principals=self._valid_principals, + _valid_for_all_principals=self._valid_for_all_principals, + _valid_before=self._valid_before, + _valid_after=self._valid_after, + _critical_options=self._critical_options, + _extensions=self._extensions, + ) + + def key_id(self, key_id: bytes) -> SSHCertificateBuilder: + if not isinstance(key_id, bytes): + raise TypeError("key_id must be bytes") + if self._key_id is not None: + raise ValueError("key_id already set") + + return SSHCertificateBuilder( + _public_key=self._public_key, + _serial=self._serial, + _type=self._type, + _key_id=key_id, + _valid_principals=self._valid_principals, + _valid_for_all_principals=self._valid_for_all_principals, + _valid_before=self._valid_before, + _valid_after=self._valid_after, + _critical_options=self._critical_options, + _extensions=self._extensions, + ) + + def valid_principals( + self, valid_principals: list[bytes] + ) -> SSHCertificateBuilder: + if self._valid_for_all_principals: + raise ValueError( + "Principals can't be set because the cert is valid " + "for all principals" + ) + if ( + not all(isinstance(x, bytes) for x in valid_principals) + or not valid_principals + ): + raise TypeError( + "principals must be a list of bytes and can't be empty" + ) + if self._valid_principals: + raise ValueError("valid_principals already set") + + if len(valid_principals) > _SSHKEY_CERT_MAX_PRINCIPALS: + raise ValueError( + "Reached or exceeded the maximum number of valid_principals" + ) + + return SSHCertificateBuilder( + _public_key=self._public_key, + _serial=self._serial, + _type=self._type, + _key_id=self._key_id, + _valid_principals=valid_principals, + _valid_for_all_principals=self._valid_for_all_principals, + _valid_before=self._valid_before, + _valid_after=self._valid_after, + _critical_options=self._critical_options, + _extensions=self._extensions, + ) + + def valid_for_all_principals(self): + if self._valid_principals: + raise ValueError( + "valid_principals already set, can't set " + "valid_for_all_principals" + ) + if self._valid_for_all_principals: + raise ValueError("valid_for_all_principals already set") + + return SSHCertificateBuilder( + _public_key=self._public_key, + _serial=self._serial, + _type=self._type, + _key_id=self._key_id, + _valid_principals=self._valid_principals, + _valid_for_all_principals=True, + _valid_before=self._valid_before, + _valid_after=self._valid_after, + _critical_options=self._critical_options, + _extensions=self._extensions, + ) + + def valid_before(self, valid_before: int | float) -> SSHCertificateBuilder: + if not isinstance(valid_before, (int, float)): + raise TypeError("valid_before must be an int or float") + valid_before = int(valid_before) + if valid_before < 0 or valid_before >= 2**64: + raise ValueError("valid_before must [0, 2**64)") + if self._valid_before is not None: + raise ValueError("valid_before already set") + + return SSHCertificateBuilder( + _public_key=self._public_key, + _serial=self._serial, + _type=self._type, + _key_id=self._key_id, + _valid_principals=self._valid_principals, + _valid_for_all_principals=self._valid_for_all_principals, + _valid_before=valid_before, + _valid_after=self._valid_after, + _critical_options=self._critical_options, + _extensions=self._extensions, + ) + + def valid_after(self, valid_after: int | float) -> SSHCertificateBuilder: + if not isinstance(valid_after, (int, float)): + raise TypeError("valid_after must be an int or float") + valid_after = int(valid_after) + if valid_after < 0 or valid_after >= 2**64: + raise ValueError("valid_after must [0, 2**64)") + if self._valid_after is not None: + raise ValueError("valid_after already set") + + return SSHCertificateBuilder( + _public_key=self._public_key, + _serial=self._serial, + _type=self._type, + _key_id=self._key_id, + _valid_principals=self._valid_principals, + _valid_for_all_principals=self._valid_for_all_principals, + _valid_before=self._valid_before, + _valid_after=valid_after, + _critical_options=self._critical_options, + _extensions=self._extensions, + ) + + def add_critical_option( + self, name: bytes, value: bytes + ) -> SSHCertificateBuilder: + if not isinstance(name, bytes) or not isinstance(value, bytes): + raise TypeError("name and value must be bytes") + # This is O(n**2) + if name in [name for name, _ in self._critical_options]: + raise ValueError("Duplicate critical option name") + + return SSHCertificateBuilder( + _public_key=self._public_key, + _serial=self._serial, + _type=self._type, + _key_id=self._key_id, + _valid_principals=self._valid_principals, + _valid_for_all_principals=self._valid_for_all_principals, + _valid_before=self._valid_before, + _valid_after=self._valid_after, + _critical_options=[*self._critical_options, (name, value)], + _extensions=self._extensions, + ) + + def add_extension( + self, name: bytes, value: bytes + ) -> SSHCertificateBuilder: + if not isinstance(name, bytes) or not isinstance(value, bytes): + raise TypeError("name and value must be bytes") + # This is O(n**2) + if name in [name for name, _ in self._extensions]: + raise ValueError("Duplicate extension name") + + return SSHCertificateBuilder( + _public_key=self._public_key, + _serial=self._serial, + _type=self._type, + _key_id=self._key_id, + _valid_principals=self._valid_principals, + _valid_for_all_principals=self._valid_for_all_principals, + _valid_before=self._valid_before, + _valid_after=self._valid_after, + _critical_options=self._critical_options, + _extensions=[*self._extensions, (name, value)], + ) + + def sign(self, private_key: SSHCertPrivateKeyTypes) -> SSHCertificate: + if not isinstance( + private_key, + ( + ec.EllipticCurvePrivateKey, + rsa.RSAPrivateKey, + ed25519.Ed25519PrivateKey, + ), + ): + raise TypeError("Unsupported private key type") + + if self._public_key is None: + raise ValueError("public_key must be set") + + # Not required + serial = 0 if self._serial is None else self._serial + + if self._type is None: + raise ValueError("type must be set") + + # Not required + key_id = b"" if self._key_id is None else self._key_id + + # A zero length list is valid, but means the certificate + # is valid for any principal of the specified type. We require + # the user to explicitly set valid_for_all_principals to get + # that behavior. + if not self._valid_principals and not self._valid_for_all_principals: + raise ValueError( + "valid_principals must be set if valid_for_all_principals " + "is False" + ) + + if self._valid_before is None: + raise ValueError("valid_before must be set") + + if self._valid_after is None: + raise ValueError("valid_after must be set") + + if self._valid_after > self._valid_before: + raise ValueError("valid_after must be earlier than valid_before") + + # lexically sort our byte strings + self._critical_options.sort(key=lambda x: x[0]) + self._extensions.sort(key=lambda x: x[0]) + + key_type = _get_ssh_key_type(self._public_key) + cert_prefix = key_type + _CERT_SUFFIX + + # Marshal the bytes to be signed + nonce = os.urandom(32) + kformat = _lookup_kformat(key_type) + f = _FragList() + f.put_sshstr(cert_prefix) + f.put_sshstr(nonce) + kformat.encode_public(self._public_key, f) + f.put_u64(serial) + f.put_u32(self._type.value) + f.put_sshstr(key_id) + fprincipals = _FragList() + for p in self._valid_principals: + fprincipals.put_sshstr(p) + f.put_sshstr(fprincipals.tobytes()) + f.put_u64(self._valid_after) + f.put_u64(self._valid_before) + fcrit = _FragList() + for name, value in self._critical_options: + fcrit.put_sshstr(name) + if len(value) > 0: + foptval = _FragList() + foptval.put_sshstr(value) + fcrit.put_sshstr(foptval.tobytes()) + else: + fcrit.put_sshstr(value) + f.put_sshstr(fcrit.tobytes()) + fext = _FragList() + for name, value in self._extensions: + fext.put_sshstr(name) + if len(value) > 0: + fextval = _FragList() + fextval.put_sshstr(value) + fext.put_sshstr(fextval.tobytes()) + else: + fext.put_sshstr(value) + f.put_sshstr(fext.tobytes()) + f.put_sshstr(b"") # RESERVED FIELD + # encode CA public key + ca_type = _get_ssh_key_type(private_key) + caformat = _lookup_kformat(ca_type) + caf = _FragList() + caf.put_sshstr(ca_type) + caformat.encode_public(private_key.public_key(), caf) + f.put_sshstr(caf.tobytes()) + # Sigs according to the rules defined for the CA's public key + # (RFC4253 section 6.6 for ssh-rsa, RFC5656 for ECDSA, + # and RFC8032 for Ed25519). + if isinstance(private_key, ed25519.Ed25519PrivateKey): + signature = private_key.sign(f.tobytes()) + fsig = _FragList() + fsig.put_sshstr(ca_type) + fsig.put_sshstr(signature) + f.put_sshstr(fsig.tobytes()) + elif isinstance(private_key, ec.EllipticCurvePrivateKey): + hash_alg = _get_ec_hash_alg(private_key.curve) + signature = private_key.sign(f.tobytes(), ec.ECDSA(hash_alg)) + r, s = asym_utils.decode_dss_signature(signature) + fsig = _FragList() + fsig.put_sshstr(ca_type) + fsigblob = _FragList() + fsigblob.put_mpint(r) + fsigblob.put_mpint(s) + fsig.put_sshstr(fsigblob.tobytes()) + f.put_sshstr(fsig.tobytes()) + + else: + assert isinstance(private_key, rsa.RSAPrivateKey) + # Just like Golang, we're going to use SHA512 for RSA + # https://cs.opensource.google/go/x/crypto/+/refs/tags/ + # v0.4.0:ssh/certs.go;l=445 + # RFC 8332 defines SHA256 and 512 as options + fsig = _FragList() + fsig.put_sshstr(_SSH_RSA_SHA512) + signature = private_key.sign( + f.tobytes(), padding.PKCS1v15(), hashes.SHA512() + ) + fsig.put_sshstr(signature) + f.put_sshstr(fsig.tobytes()) + + cert_data = binascii.b2a_base64(f.tobytes()).strip() + # load_ssh_public_identity returns a union, but this is + # guaranteed to be an SSHCertificate, so we cast to make + # mypy happy. + return typing.cast( + SSHCertificate, + load_ssh_public_identity(b"".join([cert_prefix, b" ", cert_data])), + ) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/__init__.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/__init__.py new file mode 100644 index 0000000..c1af423 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/__init__.py @@ -0,0 +1,9 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + + +class InvalidToken(Exception): + pass diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/hotp.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/hotp.py new file mode 100644 index 0000000..21fb000 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/hotp.py @@ -0,0 +1,101 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import base64 +import typing +from urllib.parse import quote, urlencode + +from cryptography.hazmat.primitives import constant_time, hmac +from cryptography.hazmat.primitives.hashes import SHA1, SHA256, SHA512 +from cryptography.hazmat.primitives.twofactor import InvalidToken +from cryptography.utils import Buffer + +HOTPHashTypes = typing.Union[SHA1, SHA256, SHA512] + + +def _generate_uri( + hotp: HOTP, + type_name: str, + account_name: str, + issuer: str | None, + extra_parameters: list[tuple[str, int]], +) -> str: + parameters = [ + ("digits", hotp._length), + ("secret", base64.b32encode(hotp._key)), + ("algorithm", hotp._algorithm.name.upper()), + ] + + if issuer is not None: + parameters.append(("issuer", issuer)) + + parameters.extend(extra_parameters) + + label = ( + f"{quote(issuer)}:{quote(account_name)}" + if issuer + else quote(account_name) + ) + return f"otpauth://{type_name}/{label}?{urlencode(parameters)}" + + +class HOTP: + def __init__( + self, + key: Buffer, + length: int, + algorithm: HOTPHashTypes, + backend: typing.Any = None, + enforce_key_length: bool = True, + ) -> None: + if len(key) < 16 and enforce_key_length is True: + raise ValueError("Key length has to be at least 128 bits.") + + if not isinstance(length, int): + raise TypeError("Length parameter must be an integer type.") + + if length < 6 or length > 8: + raise ValueError("Length of HOTP has to be between 6 and 8.") + + if not isinstance(algorithm, (SHA1, SHA256, SHA512)): + raise TypeError("Algorithm must be SHA1, SHA256 or SHA512.") + + self._key = key + self._length = length + self._algorithm = algorithm + + def generate(self, counter: int) -> bytes: + if not isinstance(counter, int): + raise TypeError("Counter parameter must be an integer type.") + + truncated_value = self._dynamic_truncate(counter) + hotp = truncated_value % (10**self._length) + return "{0:0{1}}".format(hotp, self._length).encode() + + def verify(self, hotp: bytes, counter: int) -> None: + if not constant_time.bytes_eq(self.generate(counter), hotp): + raise InvalidToken("Supplied HOTP value does not match.") + + def _dynamic_truncate(self, counter: int) -> int: + ctx = hmac.HMAC(self._key, self._algorithm) + + try: + ctx.update(counter.to_bytes(length=8, byteorder="big")) + except OverflowError: + raise ValueError(f"Counter must be between 0 and {2**64 - 1}.") + + hmac_value = ctx.finalize() + + offset = hmac_value[len(hmac_value) - 1] & 0b1111 + p = hmac_value[offset : offset + 4] + return int.from_bytes(p, byteorder="big") & 0x7FFFFFFF + + def get_provisioning_uri( + self, account_name: str, counter: int, issuer: str | None + ) -> str: + return _generate_uri( + self, "hotp", account_name, issuer, [("counter", int(counter))] + ) diff --git a/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/totp.py b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/totp.py new file mode 100644 index 0000000..10c725c --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/totp.py @@ -0,0 +1,56 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import typing + +from cryptography.hazmat.primitives import constant_time +from cryptography.hazmat.primitives.twofactor import InvalidToken +from cryptography.hazmat.primitives.twofactor.hotp import ( + HOTP, + HOTPHashTypes, + _generate_uri, +) +from cryptography.utils import Buffer + + +class TOTP: + def __init__( + self, + key: Buffer, + length: int, + algorithm: HOTPHashTypes, + time_step: int, + backend: typing.Any = None, + enforce_key_length: bool = True, + ): + self._time_step = time_step + self._hotp = HOTP( + key, length, algorithm, enforce_key_length=enforce_key_length + ) + + def generate(self, time: int | float) -> bytes: + if not isinstance(time, (int, float)): + raise TypeError( + "Time parameter must be an integer type or float type." + ) + + counter = int(time / self._time_step) + return self._hotp.generate(counter) + + def verify(self, totp: bytes, time: int) -> None: + if not constant_time.bytes_eq(self.generate(time), totp): + raise InvalidToken("Supplied TOTP value does not match.") + + def get_provisioning_uri( + self, account_name: str, issuer: str | None + ) -> str: + return _generate_uri( + self._hotp, + "totp", + account_name, + issuer, + [("period", int(self._time_step))], + ) diff --git a/venv/lib/python3.9/site-packages/cryptography/py.typed b/venv/lib/python3.9/site-packages/cryptography/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/cryptography/utils.py b/venv/lib/python3.9/site-packages/cryptography/utils.py new file mode 100644 index 0000000..b3868a0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/utils.py @@ -0,0 +1,138 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import enum +import sys +import types +import typing +import warnings +from collections.abc import Callable, Sequence + + +# We use a UserWarning subclass, instead of DeprecationWarning, because CPython +# decided deprecation warnings should be invisible by default. +class CryptographyDeprecationWarning(UserWarning): + pass + + +# Several APIs were deprecated with no specific end-of-life date because of the +# ubiquity of their use. They should not be removed until we agree on when that +# cycle ends. +DeprecatedIn36 = CryptographyDeprecationWarning +DeprecatedIn40 = CryptographyDeprecationWarning +DeprecatedIn41 = CryptographyDeprecationWarning +DeprecatedIn42 = CryptographyDeprecationWarning +DeprecatedIn43 = CryptographyDeprecationWarning +DeprecatedIn47 = CryptographyDeprecationWarning + + +# If you're wondering why we don't use `Buffer`, it's because `Buffer` would +# be more accurately named: Bufferable. It means something which has an +# `__buffer__`. Which means you can't actually treat the result as a buffer +# (and do things like take a `len()`). +if sys.version_info >= (3, 9): + Buffer = typing.Union[bytes, bytearray, memoryview] +else: + Buffer = typing.ByteString + + +def _check_bytes(name: str, value: bytes) -> None: + if not isinstance(value, bytes): + raise TypeError(f"{name} must be bytes") + + +def _check_byteslike(name: str, value: Buffer) -> None: + try: + memoryview(value) + except TypeError: + raise TypeError(f"{name} must be bytes-like") + + +def int_to_bytes(integer: int, length: int | None = None) -> bytes: + if length == 0: + raise ValueError("length argument can't be 0") + return integer.to_bytes( + length or (integer.bit_length() + 7) // 8 or 1, "big" + ) + + +class InterfaceNotImplemented(Exception): + pass + + +class _DeprecatedValue: + def __init__(self, value: object, message: str, warning_class): + self.value = value + self.message = message + self.warning_class = warning_class + + +class _ModuleWithDeprecations(types.ModuleType): + def __init__(self, module: types.ModuleType): + super().__init__(module.__name__) + self.__dict__["_module"] = module + + def __getattr__(self, name: str) -> typing.Any: + obj = getattr(self._module, name) + if isinstance(obj, _DeprecatedValue): + warnings.warn(obj.message, obj.warning_class, stacklevel=2) + obj = obj.value + return obj + + def __setattr__(self, attr: str, value: object) -> None: + setattr(self._module, attr, value) + + def __delattr__(self, attr: str) -> None: + obj = getattr(self._module, attr) + if isinstance(obj, _DeprecatedValue): + warnings.warn(obj.message, obj.warning_class, stacklevel=2) + + delattr(self._module, attr) + + def __dir__(self) -> Sequence[str]: + return ["_module", *dir(self._module)] + + +def deprecated( + value: object, + module_name: str, + message: str, + warning_class: type[Warning], + name: str | None = None, +) -> _DeprecatedValue: + module = sys.modules[module_name] + if not isinstance(module, _ModuleWithDeprecations): + sys.modules[module_name] = module = _ModuleWithDeprecations(module) + dv = _DeprecatedValue(value, message, warning_class) + # Maintain backwards compatibility with `name is None` for pyOpenSSL. + if name is not None: + setattr(module, name, dv) + return dv + + +def cached_property(func: Callable) -> property: + cached_name = f"_cached_{func}" + sentinel = object() + + def inner(instance: object): + cache = getattr(instance, cached_name, sentinel) + if cache is not sentinel: + return cache + result = func(instance) + setattr(instance, cached_name, result) + return result + + return property(inner) + + +# Python 3.10 changed representation of enums. We use well-defined object +# representation and string representation from Python 3.9. +class Enum(enum.Enum): + def __repr__(self) -> str: + return f"<{self.__class__.__name__}.{self._name_}: {self._value_!r}>" + + def __str__(self) -> str: + return f"{self.__class__.__name__}.{self._name_}" diff --git a/venv/lib/python3.9/site-packages/cryptography/x509/__init__.py b/venv/lib/python3.9/site-packages/cryptography/x509/__init__.py new file mode 100644 index 0000000..cb34833 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/x509/__init__.py @@ -0,0 +1,271 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.x509 import certificate_transparency, oid, verification +from cryptography.x509.base import ( + Attribute, + AttributeNotFound, + Attributes, + Certificate, + CertificateBuilder, + CertificateRevocationList, + CertificateRevocationListBuilder, + CertificateSigningRequest, + CertificateSigningRequestBuilder, + InvalidVersion, + RevokedCertificate, + RevokedCertificateBuilder, + Version, + load_der_x509_certificate, + load_der_x509_crl, + load_der_x509_csr, + load_pem_x509_certificate, + load_pem_x509_certificates, + load_pem_x509_crl, + load_pem_x509_csr, + random_serial_number, +) +from cryptography.x509.extensions import ( + AccessDescription, + Admission, + Admissions, + AuthorityInformationAccess, + AuthorityKeyIdentifier, + BasicConstraints, + CertificateIssuer, + CertificatePolicies, + CRLDistributionPoints, + CRLNumber, + CRLReason, + DeltaCRLIndicator, + DistributionPoint, + DuplicateExtension, + ExtendedKeyUsage, + Extension, + ExtensionNotFound, + Extensions, + ExtensionType, + FreshestCRL, + GeneralNames, + InhibitAnyPolicy, + InvalidityDate, + IssuerAlternativeName, + IssuingDistributionPoint, + KeyUsage, + MSCertificateTemplate, + NameConstraints, + NamingAuthority, + NoticeReference, + OCSPAcceptableResponses, + OCSPNoCheck, + OCSPNonce, + PolicyConstraints, + PolicyInformation, + PrecertificateSignedCertificateTimestamps, + PrecertPoison, + PrivateKeyUsagePeriod, + ProfessionInfo, + ReasonFlags, + SignedCertificateTimestamps, + SubjectAlternativeName, + SubjectInformationAccess, + SubjectKeyIdentifier, + TLSFeature, + TLSFeatureType, + UnrecognizedExtension, + UserNotice, +) +from cryptography.x509.general_name import ( + DirectoryName, + DNSName, + GeneralName, + IPAddress, + OtherName, + RegisteredID, + RFC822Name, + UniformResourceIdentifier, + UnsupportedGeneralNameType, +) +from cryptography.x509.name import ( + Name, + NameAttribute, + RelativeDistinguishedName, +) +from cryptography.x509.oid import ( + AuthorityInformationAccessOID, + CertificatePoliciesOID, + CRLEntryExtensionOID, + ExtendedKeyUsageOID, + ExtensionOID, + NameOID, + ObjectIdentifier, + PublicKeyAlgorithmOID, + SignatureAlgorithmOID, +) + +OID_AUTHORITY_INFORMATION_ACCESS = ExtensionOID.AUTHORITY_INFORMATION_ACCESS +OID_AUTHORITY_KEY_IDENTIFIER = ExtensionOID.AUTHORITY_KEY_IDENTIFIER +OID_BASIC_CONSTRAINTS = ExtensionOID.BASIC_CONSTRAINTS +OID_CERTIFICATE_POLICIES = ExtensionOID.CERTIFICATE_POLICIES +OID_CRL_DISTRIBUTION_POINTS = ExtensionOID.CRL_DISTRIBUTION_POINTS +OID_EXTENDED_KEY_USAGE = ExtensionOID.EXTENDED_KEY_USAGE +OID_FRESHEST_CRL = ExtensionOID.FRESHEST_CRL +OID_INHIBIT_ANY_POLICY = ExtensionOID.INHIBIT_ANY_POLICY +OID_ISSUER_ALTERNATIVE_NAME = ExtensionOID.ISSUER_ALTERNATIVE_NAME +OID_KEY_USAGE = ExtensionOID.KEY_USAGE +OID_PRIVATE_KEY_USAGE_PERIOD = ExtensionOID.PRIVATE_KEY_USAGE_PERIOD +OID_NAME_CONSTRAINTS = ExtensionOID.NAME_CONSTRAINTS +OID_OCSP_NO_CHECK = ExtensionOID.OCSP_NO_CHECK +OID_POLICY_CONSTRAINTS = ExtensionOID.POLICY_CONSTRAINTS +OID_POLICY_MAPPINGS = ExtensionOID.POLICY_MAPPINGS +OID_SUBJECT_ALTERNATIVE_NAME = ExtensionOID.SUBJECT_ALTERNATIVE_NAME +OID_SUBJECT_DIRECTORY_ATTRIBUTES = ExtensionOID.SUBJECT_DIRECTORY_ATTRIBUTES +OID_SUBJECT_INFORMATION_ACCESS = ExtensionOID.SUBJECT_INFORMATION_ACCESS +OID_SUBJECT_KEY_IDENTIFIER = ExtensionOID.SUBJECT_KEY_IDENTIFIER + +OID_DSA_WITH_SHA1 = SignatureAlgorithmOID.DSA_WITH_SHA1 +OID_DSA_WITH_SHA224 = SignatureAlgorithmOID.DSA_WITH_SHA224 +OID_DSA_WITH_SHA256 = SignatureAlgorithmOID.DSA_WITH_SHA256 +OID_ECDSA_WITH_SHA1 = SignatureAlgorithmOID.ECDSA_WITH_SHA1 +OID_ECDSA_WITH_SHA224 = SignatureAlgorithmOID.ECDSA_WITH_SHA224 +OID_ECDSA_WITH_SHA256 = SignatureAlgorithmOID.ECDSA_WITH_SHA256 +OID_ECDSA_WITH_SHA384 = SignatureAlgorithmOID.ECDSA_WITH_SHA384 +OID_ECDSA_WITH_SHA512 = SignatureAlgorithmOID.ECDSA_WITH_SHA512 +OID_RSA_WITH_MD5 = SignatureAlgorithmOID.RSA_WITH_MD5 +OID_RSA_WITH_SHA1 = SignatureAlgorithmOID.RSA_WITH_SHA1 +OID_RSA_WITH_SHA224 = SignatureAlgorithmOID.RSA_WITH_SHA224 +OID_RSA_WITH_SHA256 = SignatureAlgorithmOID.RSA_WITH_SHA256 +OID_RSA_WITH_SHA384 = SignatureAlgorithmOID.RSA_WITH_SHA384 +OID_RSA_WITH_SHA512 = SignatureAlgorithmOID.RSA_WITH_SHA512 +OID_RSASSA_PSS = SignatureAlgorithmOID.RSASSA_PSS + +OID_COMMON_NAME = NameOID.COMMON_NAME +OID_COUNTRY_NAME = NameOID.COUNTRY_NAME +OID_DOMAIN_COMPONENT = NameOID.DOMAIN_COMPONENT +OID_DN_QUALIFIER = NameOID.DN_QUALIFIER +OID_EMAIL_ADDRESS = NameOID.EMAIL_ADDRESS +OID_GENERATION_QUALIFIER = NameOID.GENERATION_QUALIFIER +OID_GIVEN_NAME = NameOID.GIVEN_NAME +OID_LOCALITY_NAME = NameOID.LOCALITY_NAME +OID_ORGANIZATIONAL_UNIT_NAME = NameOID.ORGANIZATIONAL_UNIT_NAME +OID_ORGANIZATION_NAME = NameOID.ORGANIZATION_NAME +OID_PSEUDONYM = NameOID.PSEUDONYM +OID_SERIAL_NUMBER = NameOID.SERIAL_NUMBER +OID_STATE_OR_PROVINCE_NAME = NameOID.STATE_OR_PROVINCE_NAME +OID_SURNAME = NameOID.SURNAME +OID_TITLE = NameOID.TITLE + +OID_CLIENT_AUTH = ExtendedKeyUsageOID.CLIENT_AUTH +OID_CODE_SIGNING = ExtendedKeyUsageOID.CODE_SIGNING +OID_EMAIL_PROTECTION = ExtendedKeyUsageOID.EMAIL_PROTECTION +OID_OCSP_SIGNING = ExtendedKeyUsageOID.OCSP_SIGNING +OID_SERVER_AUTH = ExtendedKeyUsageOID.SERVER_AUTH +OID_TIME_STAMPING = ExtendedKeyUsageOID.TIME_STAMPING + +OID_ANY_POLICY = CertificatePoliciesOID.ANY_POLICY +OID_CPS_QUALIFIER = CertificatePoliciesOID.CPS_QUALIFIER +OID_CPS_USER_NOTICE = CertificatePoliciesOID.CPS_USER_NOTICE + +OID_CERTIFICATE_ISSUER = CRLEntryExtensionOID.CERTIFICATE_ISSUER +OID_CRL_REASON = CRLEntryExtensionOID.CRL_REASON +OID_INVALIDITY_DATE = CRLEntryExtensionOID.INVALIDITY_DATE + +OID_CA_ISSUERS = AuthorityInformationAccessOID.CA_ISSUERS +OID_OCSP = AuthorityInformationAccessOID.OCSP + +__all__ = [ + "OID_CA_ISSUERS", + "OID_OCSP", + "AccessDescription", + "Admission", + "Admissions", + "Attribute", + "AttributeNotFound", + "Attributes", + "AuthorityInformationAccess", + "AuthorityKeyIdentifier", + "BasicConstraints", + "CRLDistributionPoints", + "CRLNumber", + "CRLReason", + "Certificate", + "CertificateBuilder", + "CertificateIssuer", + "CertificatePolicies", + "CertificateRevocationList", + "CertificateRevocationListBuilder", + "CertificateSigningRequest", + "CertificateSigningRequestBuilder", + "DNSName", + "DeltaCRLIndicator", + "DirectoryName", + "DistributionPoint", + "DuplicateExtension", + "ExtendedKeyUsage", + "Extension", + "ExtensionNotFound", + "ExtensionType", + "Extensions", + "FreshestCRL", + "GeneralName", + "GeneralNames", + "IPAddress", + "InhibitAnyPolicy", + "InvalidVersion", + "InvalidityDate", + "IssuerAlternativeName", + "IssuingDistributionPoint", + "KeyUsage", + "MSCertificateTemplate", + "Name", + "NameAttribute", + "NameConstraints", + "NameOID", + "NamingAuthority", + "NoticeReference", + "OCSPAcceptableResponses", + "OCSPNoCheck", + "OCSPNonce", + "ObjectIdentifier", + "OtherName", + "PolicyConstraints", + "PolicyInformation", + "PrecertPoison", + "PrecertificateSignedCertificateTimestamps", + "PrivateKeyUsagePeriod", + "ProfessionInfo", + "PublicKeyAlgorithmOID", + "RFC822Name", + "ReasonFlags", + "RegisteredID", + "RelativeDistinguishedName", + "RevokedCertificate", + "RevokedCertificateBuilder", + "SignatureAlgorithmOID", + "SignedCertificateTimestamps", + "SubjectAlternativeName", + "SubjectInformationAccess", + "SubjectKeyIdentifier", + "TLSFeature", + "TLSFeatureType", + "UniformResourceIdentifier", + "UnrecognizedExtension", + "UnsupportedGeneralNameType", + "UserNotice", + "Version", + "certificate_transparency", + "load_der_x509_certificate", + "load_der_x509_crl", + "load_der_x509_csr", + "load_pem_x509_certificate", + "load_pem_x509_certificates", + "load_pem_x509_crl", + "load_pem_x509_csr", + "oid", + "random_serial_number", + "verification", + "verification", +] diff --git a/venv/lib/python3.9/site-packages/cryptography/x509/base.py b/venv/lib/python3.9/site-packages/cryptography/x509/base.py new file mode 100644 index 0000000..a11b8fe --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/x509/base.py @@ -0,0 +1,773 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import datetime +import os +import typing +from collections.abc import Iterable + +from cryptography import utils +from cryptography.hazmat.bindings._rust import x509 as rust_x509 +from cryptography.hazmat.primitives import hashes +from cryptography.hazmat.primitives.asymmetric import ( + dsa, + ec, + ed448, + ed25519, + padding, + rsa, + x448, + x25519, +) +from cryptography.hazmat.primitives.asymmetric.types import ( + CertificateIssuerPrivateKeyTypes, + CertificatePublicKeyTypes, +) +from cryptography.x509.extensions import ( + Extension, + ExtensionType, + _make_sequence_methods, +) +from cryptography.x509.name import Name, _ASN1Type +from cryptography.x509.oid import ObjectIdentifier + +_EARLIEST_UTC_TIME = datetime.datetime(1950, 1, 1) + +# This must be kept in sync with sign.rs's list of allowable types in +# identify_hash_type +_AllowedHashTypes = typing.Union[ + hashes.SHA224, + hashes.SHA256, + hashes.SHA384, + hashes.SHA512, + hashes.SHA3_224, + hashes.SHA3_256, + hashes.SHA3_384, + hashes.SHA3_512, +] + + +class AttributeNotFound(Exception): + def __init__(self, msg: str, oid: ObjectIdentifier) -> None: + super().__init__(msg) + self.oid = oid + + +def _reject_duplicate_extension( + extension: Extension[ExtensionType], + extensions: list[Extension[ExtensionType]], +) -> None: + # This is quadratic in the number of extensions + for e in extensions: + if e.oid == extension.oid: + raise ValueError("This extension has already been set.") + + +def _reject_duplicate_attribute( + oid: ObjectIdentifier, + attributes: list[tuple[ObjectIdentifier, bytes, int | None]], +) -> None: + # This is quadratic in the number of attributes + for attr_oid, _, _ in attributes: + if attr_oid == oid: + raise ValueError("This attribute has already been set.") + + +def _convert_to_naive_utc_time(time: datetime.datetime) -> datetime.datetime: + """Normalizes a datetime to a naive datetime in UTC. + + time -- datetime to normalize. Assumed to be in UTC if not timezone + aware. + """ + if time.tzinfo is not None: + offset = time.utcoffset() + offset = offset if offset else datetime.timedelta() + return time.replace(tzinfo=None) - offset + else: + return time + + +class Attribute: + def __init__( + self, + oid: ObjectIdentifier, + value: bytes, + _type: int = _ASN1Type.UTF8String.value, + ) -> None: + self._oid = oid + self._value = value + self._type = _type + + @property + def oid(self) -> ObjectIdentifier: + return self._oid + + @property + def value(self) -> bytes: + return self._value + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, Attribute): + return NotImplemented + + return ( + self.oid == other.oid + and self.value == other.value + and self._type == other._type + ) + + def __hash__(self) -> int: + return hash((self.oid, self.value, self._type)) + + +class Attributes: + def __init__( + self, + attributes: Iterable[Attribute], + ) -> None: + self._attributes = list(attributes) + + __len__, __iter__, __getitem__ = _make_sequence_methods("_attributes") + + def __repr__(self) -> str: + return f"" + + def get_attribute_for_oid(self, oid: ObjectIdentifier) -> Attribute: + for attr in self: + if attr.oid == oid: + return attr + + raise AttributeNotFound(f"No {oid} attribute was found", oid) + + +class Version(utils.Enum): + v1 = 0 + v3 = 2 + + +class InvalidVersion(Exception): + def __init__(self, msg: str, parsed_version: int) -> None: + super().__init__(msg) + self.parsed_version = parsed_version + + +Certificate = rust_x509.Certificate +RevokedCertificate = rust_x509.RevokedCertificate + + +CertificateRevocationList = rust_x509.CertificateRevocationList +CertificateSigningRequest = rust_x509.CertificateSigningRequest + + +load_pem_x509_certificate = rust_x509.load_pem_x509_certificate +load_der_x509_certificate = rust_x509.load_der_x509_certificate + +load_pem_x509_certificates = rust_x509.load_pem_x509_certificates + +load_pem_x509_csr = rust_x509.load_pem_x509_csr +load_der_x509_csr = rust_x509.load_der_x509_csr + +load_pem_x509_crl = rust_x509.load_pem_x509_crl +load_der_x509_crl = rust_x509.load_der_x509_crl + + +class CertificateSigningRequestBuilder: + def __init__( + self, + subject_name: Name | None = None, + extensions: list[Extension[ExtensionType]] = [], + attributes: list[tuple[ObjectIdentifier, bytes, int | None]] = [], + ): + """ + Creates an empty X.509 certificate request (v1). + """ + self._subject_name = subject_name + self._extensions = extensions + self._attributes = attributes + + def subject_name(self, name: Name) -> CertificateSigningRequestBuilder: + """ + Sets the certificate requestor's distinguished name. + """ + if not isinstance(name, Name): + raise TypeError("Expecting x509.Name object.") + if self._subject_name is not None: + raise ValueError("The subject name may only be set once.") + return CertificateSigningRequestBuilder( + name, self._extensions, self._attributes + ) + + def add_extension( + self, extval: ExtensionType, critical: bool + ) -> CertificateSigningRequestBuilder: + """ + Adds an X.509 extension to the certificate request. + """ + if not isinstance(extval, ExtensionType): + raise TypeError("extension must be an ExtensionType") + + extension = Extension(extval.oid, critical, extval) + _reject_duplicate_extension(extension, self._extensions) + + return CertificateSigningRequestBuilder( + self._subject_name, + [*self._extensions, extension], + self._attributes, + ) + + def add_attribute( + self, + oid: ObjectIdentifier, + value: bytes, + *, + _tag: _ASN1Type | None = None, + ) -> CertificateSigningRequestBuilder: + """ + Adds an X.509 attribute with an OID and associated value. + """ + if not isinstance(oid, ObjectIdentifier): + raise TypeError("oid must be an ObjectIdentifier") + + if not isinstance(value, bytes): + raise TypeError("value must be bytes") + + if _tag is not None and not isinstance(_tag, _ASN1Type): + raise TypeError("tag must be _ASN1Type") + + _reject_duplicate_attribute(oid, self._attributes) + + if _tag is not None: + tag = _tag.value + else: + tag = None + + return CertificateSigningRequestBuilder( + self._subject_name, + self._extensions, + [*self._attributes, (oid, value, tag)], + ) + + def sign( + self, + private_key: CertificateIssuerPrivateKeyTypes, + algorithm: _AllowedHashTypes | None, + backend: typing.Any = None, + *, + rsa_padding: padding.PSS | padding.PKCS1v15 | None = None, + ecdsa_deterministic: bool | None = None, + ) -> CertificateSigningRequest: + """ + Signs the request using the requestor's private key. + """ + if self._subject_name is None: + raise ValueError("A CertificateSigningRequest must have a subject") + + if rsa_padding is not None: + if not isinstance(rsa_padding, (padding.PSS, padding.PKCS1v15)): + raise TypeError("Padding must be PSS or PKCS1v15") + if not isinstance(private_key, rsa.RSAPrivateKey): + raise TypeError("Padding is only supported for RSA keys") + + if ecdsa_deterministic is not None: + if not isinstance(private_key, ec.EllipticCurvePrivateKey): + raise TypeError( + "Deterministic ECDSA is only supported for EC keys" + ) + + return rust_x509.create_x509_csr( + self, + private_key, + algorithm, + rsa_padding, + ecdsa_deterministic, + ) + + +class CertificateBuilder: + _extensions: list[Extension[ExtensionType]] + + def __init__( + self, + issuer_name: Name | None = None, + subject_name: Name | None = None, + public_key: CertificatePublicKeyTypes | None = None, + serial_number: int | None = None, + not_valid_before: datetime.datetime | None = None, + not_valid_after: datetime.datetime | None = None, + extensions: list[Extension[ExtensionType]] = [], + ) -> None: + self._version = Version.v3 + self._issuer_name = issuer_name + self._subject_name = subject_name + self._public_key = public_key + self._serial_number = serial_number + self._not_valid_before = not_valid_before + self._not_valid_after = not_valid_after + self._extensions = extensions + + def issuer_name(self, name: Name) -> CertificateBuilder: + """ + Sets the CA's distinguished name. + """ + if not isinstance(name, Name): + raise TypeError("Expecting x509.Name object.") + if self._issuer_name is not None: + raise ValueError("The issuer name may only be set once.") + return CertificateBuilder( + name, + self._subject_name, + self._public_key, + self._serial_number, + self._not_valid_before, + self._not_valid_after, + self._extensions, + ) + + def subject_name(self, name: Name) -> CertificateBuilder: + """ + Sets the requestor's distinguished name. + """ + if not isinstance(name, Name): + raise TypeError("Expecting x509.Name object.") + if self._subject_name is not None: + raise ValueError("The subject name may only be set once.") + return CertificateBuilder( + self._issuer_name, + name, + self._public_key, + self._serial_number, + self._not_valid_before, + self._not_valid_after, + self._extensions, + ) + + def public_key( + self, + key: CertificatePublicKeyTypes, + ) -> CertificateBuilder: + """ + Sets the requestor's public key (as found in the signing request). + """ + if not isinstance( + key, + ( + dsa.DSAPublicKey, + rsa.RSAPublicKey, + ec.EllipticCurvePublicKey, + ed25519.Ed25519PublicKey, + ed448.Ed448PublicKey, + x25519.X25519PublicKey, + x448.X448PublicKey, + ), + ): + raise TypeError( + "Expecting one of DSAPublicKey, RSAPublicKey," + " EllipticCurvePublicKey, Ed25519PublicKey," + " Ed448PublicKey, X25519PublicKey, or " + "X448PublicKey." + ) + if self._public_key is not None: + raise ValueError("The public key may only be set once.") + return CertificateBuilder( + self._issuer_name, + self._subject_name, + key, + self._serial_number, + self._not_valid_before, + self._not_valid_after, + self._extensions, + ) + + def serial_number(self, number: int) -> CertificateBuilder: + """ + Sets the certificate serial number. + """ + if not isinstance(number, int): + raise TypeError("Serial number must be of integral type.") + if self._serial_number is not None: + raise ValueError("The serial number may only be set once.") + if number <= 0: + raise ValueError("The serial number should be positive.") + + # ASN.1 integers are always signed, so most significant bit must be + # zero. + if number.bit_length() >= 160: # As defined in RFC 5280 + raise ValueError( + "The serial number should not be more than 159 bits." + ) + return CertificateBuilder( + self._issuer_name, + self._subject_name, + self._public_key, + number, + self._not_valid_before, + self._not_valid_after, + self._extensions, + ) + + def not_valid_before(self, time: datetime.datetime) -> CertificateBuilder: + """ + Sets the certificate activation time. + """ + if not isinstance(time, datetime.datetime): + raise TypeError("Expecting datetime object.") + if self._not_valid_before is not None: + raise ValueError("The not valid before may only be set once.") + time = _convert_to_naive_utc_time(time) + if time < _EARLIEST_UTC_TIME: + raise ValueError( + "The not valid before date must be on or after" + " 1950 January 1)." + ) + if self._not_valid_after is not None and time > self._not_valid_after: + raise ValueError( + "The not valid before date must be before the not valid after " + "date." + ) + return CertificateBuilder( + self._issuer_name, + self._subject_name, + self._public_key, + self._serial_number, + time, + self._not_valid_after, + self._extensions, + ) + + def not_valid_after(self, time: datetime.datetime) -> CertificateBuilder: + """ + Sets the certificate expiration time. + """ + if not isinstance(time, datetime.datetime): + raise TypeError("Expecting datetime object.") + if self._not_valid_after is not None: + raise ValueError("The not valid after may only be set once.") + time = _convert_to_naive_utc_time(time) + if time < _EARLIEST_UTC_TIME: + raise ValueError( + "The not valid after date must be on or after 1950 January 1." + ) + if ( + self._not_valid_before is not None + and time < self._not_valid_before + ): + raise ValueError( + "The not valid after date must be after the not valid before " + "date." + ) + return CertificateBuilder( + self._issuer_name, + self._subject_name, + self._public_key, + self._serial_number, + self._not_valid_before, + time, + self._extensions, + ) + + def add_extension( + self, extval: ExtensionType, critical: bool + ) -> CertificateBuilder: + """ + Adds an X.509 extension to the certificate. + """ + if not isinstance(extval, ExtensionType): + raise TypeError("extension must be an ExtensionType") + + extension = Extension(extval.oid, critical, extval) + _reject_duplicate_extension(extension, self._extensions) + + return CertificateBuilder( + self._issuer_name, + self._subject_name, + self._public_key, + self._serial_number, + self._not_valid_before, + self._not_valid_after, + [*self._extensions, extension], + ) + + def sign( + self, + private_key: CertificateIssuerPrivateKeyTypes, + algorithm: _AllowedHashTypes | None, + backend: typing.Any = None, + *, + rsa_padding: padding.PSS | padding.PKCS1v15 | None = None, + ecdsa_deterministic: bool | None = None, + ) -> Certificate: + """ + Signs the certificate using the CA's private key. + """ + if self._subject_name is None: + raise ValueError("A certificate must have a subject name") + + if self._issuer_name is None: + raise ValueError("A certificate must have an issuer name") + + if self._serial_number is None: + raise ValueError("A certificate must have a serial number") + + if self._not_valid_before is None: + raise ValueError("A certificate must have a not valid before time") + + if self._not_valid_after is None: + raise ValueError("A certificate must have a not valid after time") + + if self._public_key is None: + raise ValueError("A certificate must have a public key") + + if rsa_padding is not None: + if not isinstance(rsa_padding, (padding.PSS, padding.PKCS1v15)): + raise TypeError("Padding must be PSS or PKCS1v15") + if not isinstance(private_key, rsa.RSAPrivateKey): + raise TypeError("Padding is only supported for RSA keys") + + if ecdsa_deterministic is not None: + if not isinstance(private_key, ec.EllipticCurvePrivateKey): + raise TypeError( + "Deterministic ECDSA is only supported for EC keys" + ) + + return rust_x509.create_x509_certificate( + self, + private_key, + algorithm, + rsa_padding, + ecdsa_deterministic, + ) + + +class CertificateRevocationListBuilder: + _extensions: list[Extension[ExtensionType]] + _revoked_certificates: list[RevokedCertificate] + + def __init__( + self, + issuer_name: Name | None = None, + last_update: datetime.datetime | None = None, + next_update: datetime.datetime | None = None, + extensions: list[Extension[ExtensionType]] = [], + revoked_certificates: list[RevokedCertificate] = [], + ): + self._issuer_name = issuer_name + self._last_update = last_update + self._next_update = next_update + self._extensions = extensions + self._revoked_certificates = revoked_certificates + + def issuer_name( + self, issuer_name: Name + ) -> CertificateRevocationListBuilder: + if not isinstance(issuer_name, Name): + raise TypeError("Expecting x509.Name object.") + if self._issuer_name is not None: + raise ValueError("The issuer name may only be set once.") + return CertificateRevocationListBuilder( + issuer_name, + self._last_update, + self._next_update, + self._extensions, + self._revoked_certificates, + ) + + def last_update( + self, last_update: datetime.datetime + ) -> CertificateRevocationListBuilder: + if not isinstance(last_update, datetime.datetime): + raise TypeError("Expecting datetime object.") + if self._last_update is not None: + raise ValueError("Last update may only be set once.") + last_update = _convert_to_naive_utc_time(last_update) + if last_update < _EARLIEST_UTC_TIME: + raise ValueError( + "The last update date must be on or after 1950 January 1." + ) + if self._next_update is not None and last_update > self._next_update: + raise ValueError( + "The last update date must be before the next update date." + ) + return CertificateRevocationListBuilder( + self._issuer_name, + last_update, + self._next_update, + self._extensions, + self._revoked_certificates, + ) + + def next_update( + self, next_update: datetime.datetime + ) -> CertificateRevocationListBuilder: + if not isinstance(next_update, datetime.datetime): + raise TypeError("Expecting datetime object.") + if self._next_update is not None: + raise ValueError("Last update may only be set once.") + next_update = _convert_to_naive_utc_time(next_update) + if next_update < _EARLIEST_UTC_TIME: + raise ValueError( + "The last update date must be on or after 1950 January 1." + ) + if self._last_update is not None and next_update < self._last_update: + raise ValueError( + "The next update date must be after the last update date." + ) + return CertificateRevocationListBuilder( + self._issuer_name, + self._last_update, + next_update, + self._extensions, + self._revoked_certificates, + ) + + def add_extension( + self, extval: ExtensionType, critical: bool + ) -> CertificateRevocationListBuilder: + """ + Adds an X.509 extension to the certificate revocation list. + """ + if not isinstance(extval, ExtensionType): + raise TypeError("extension must be an ExtensionType") + + extension = Extension(extval.oid, critical, extval) + _reject_duplicate_extension(extension, self._extensions) + return CertificateRevocationListBuilder( + self._issuer_name, + self._last_update, + self._next_update, + [*self._extensions, extension], + self._revoked_certificates, + ) + + def add_revoked_certificate( + self, revoked_certificate: RevokedCertificate + ) -> CertificateRevocationListBuilder: + """ + Adds a revoked certificate to the CRL. + """ + if not isinstance(revoked_certificate, RevokedCertificate): + raise TypeError("Must be an instance of RevokedCertificate") + + return CertificateRevocationListBuilder( + self._issuer_name, + self._last_update, + self._next_update, + self._extensions, + [*self._revoked_certificates, revoked_certificate], + ) + + def sign( + self, + private_key: CertificateIssuerPrivateKeyTypes, + algorithm: _AllowedHashTypes | None, + backend: typing.Any = None, + *, + rsa_padding: padding.PSS | padding.PKCS1v15 | None = None, + ecdsa_deterministic: bool | None = None, + ) -> CertificateRevocationList: + if self._issuer_name is None: + raise ValueError("A CRL must have an issuer name") + + if self._last_update is None: + raise ValueError("A CRL must have a last update time") + + if self._next_update is None: + raise ValueError("A CRL must have a next update time") + + if rsa_padding is not None: + if not isinstance(rsa_padding, (padding.PSS, padding.PKCS1v15)): + raise TypeError("Padding must be PSS or PKCS1v15") + if not isinstance(private_key, rsa.RSAPrivateKey): + raise TypeError("Padding is only supported for RSA keys") + + if ecdsa_deterministic is not None: + if not isinstance(private_key, ec.EllipticCurvePrivateKey): + raise TypeError( + "Deterministic ECDSA is only supported for EC keys" + ) + + return rust_x509.create_x509_crl( + self, + private_key, + algorithm, + rsa_padding, + ecdsa_deterministic, + ) + + +class RevokedCertificateBuilder: + def __init__( + self, + serial_number: int | None = None, + revocation_date: datetime.datetime | None = None, + extensions: list[Extension[ExtensionType]] = [], + ): + self._serial_number = serial_number + self._revocation_date = revocation_date + self._extensions = extensions + + def serial_number(self, number: int) -> RevokedCertificateBuilder: + if not isinstance(number, int): + raise TypeError("Serial number must be of integral type.") + if self._serial_number is not None: + raise ValueError("The serial number may only be set once.") + if number <= 0: + raise ValueError("The serial number should be positive") + + # ASN.1 integers are always signed, so most significant bit must be + # zero. + if number.bit_length() >= 160: # As defined in RFC 5280 + raise ValueError( + "The serial number should not be more than 159 bits." + ) + return RevokedCertificateBuilder( + number, self._revocation_date, self._extensions + ) + + def revocation_date( + self, time: datetime.datetime + ) -> RevokedCertificateBuilder: + if not isinstance(time, datetime.datetime): + raise TypeError("Expecting datetime object.") + if self._revocation_date is not None: + raise ValueError("The revocation date may only be set once.") + time = _convert_to_naive_utc_time(time) + if time < _EARLIEST_UTC_TIME: + raise ValueError( + "The revocation date must be on or after 1950 January 1." + ) + return RevokedCertificateBuilder( + self._serial_number, time, self._extensions + ) + + def add_extension( + self, extval: ExtensionType, critical: bool + ) -> RevokedCertificateBuilder: + if not isinstance(extval, ExtensionType): + raise TypeError("extension must be an ExtensionType") + + extension = Extension(extval.oid, critical, extval) + _reject_duplicate_extension(extension, self._extensions) + return RevokedCertificateBuilder( + self._serial_number, + self._revocation_date, + [*self._extensions, extension], + ) + + def build(self, backend: typing.Any = None) -> RevokedCertificate: + if self._serial_number is None: + raise ValueError("A revoked certificate must have a serial number") + if self._revocation_date is None: + raise ValueError( + "A revoked certificate must have a revocation date" + ) + return rust_x509.create_revoked_certificate(self) + + +def random_serial_number() -> int: + return int.from_bytes(os.urandom(20), "big") >> 1 diff --git a/venv/lib/python3.9/site-packages/cryptography/x509/certificate_transparency.py b/venv/lib/python3.9/site-packages/cryptography/x509/certificate_transparency.py new file mode 100644 index 0000000..fb66cc6 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/x509/certificate_transparency.py @@ -0,0 +1,35 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography import utils +from cryptography.hazmat.bindings._rust import x509 as rust_x509 + + +class LogEntryType(utils.Enum): + X509_CERTIFICATE = 0 + PRE_CERTIFICATE = 1 + + +class Version(utils.Enum): + v1 = 0 + + +class SignatureAlgorithm(utils.Enum): + """ + Signature algorithms that are valid for SCTs. + + These are exactly the same as SignatureAlgorithm in RFC 5246 (TLS 1.2). + + See: + """ + + ANONYMOUS = 0 + RSA = 1 + DSA = 2 + ECDSA = 3 + + +SignedCertificateTimestamp = rust_x509.Sct diff --git a/venv/lib/python3.9/site-packages/cryptography/x509/extensions.py b/venv/lib/python3.9/site-packages/cryptography/x509/extensions.py new file mode 100644 index 0000000..7b78e9e --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/x509/extensions.py @@ -0,0 +1,2533 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc +import datetime +import hashlib +import ipaddress +import typing +from collections.abc import Iterable, Iterator + +from cryptography import utils +from cryptography.hazmat.bindings._rust import asn1 +from cryptography.hazmat.bindings._rust import x509 as rust_x509 +from cryptography.hazmat.primitives import constant_time, serialization +from cryptography.hazmat.primitives.asymmetric.ec import EllipticCurvePublicKey +from cryptography.hazmat.primitives.asymmetric.rsa import RSAPublicKey +from cryptography.hazmat.primitives.asymmetric.types import ( + CertificateIssuerPublicKeyTypes, + CertificatePublicKeyTypes, +) +from cryptography.x509.certificate_transparency import ( + SignedCertificateTimestamp, +) +from cryptography.x509.general_name import ( + DirectoryName, + DNSName, + GeneralName, + IPAddress, + OtherName, + RegisteredID, + RFC822Name, + UniformResourceIdentifier, + _IPAddressTypes, +) +from cryptography.x509.name import Name, RelativeDistinguishedName +from cryptography.x509.oid import ( + CRLEntryExtensionOID, + ExtensionOID, + ObjectIdentifier, + OCSPExtensionOID, +) + +ExtensionTypeVar = typing.TypeVar( + "ExtensionTypeVar", bound="ExtensionType", covariant=True +) + + +def _key_identifier_from_public_key( + public_key: CertificatePublicKeyTypes, +) -> bytes: + if isinstance(public_key, RSAPublicKey): + data = public_key.public_bytes( + serialization.Encoding.DER, + serialization.PublicFormat.PKCS1, + ) + elif isinstance(public_key, EllipticCurvePublicKey): + data = public_key.public_bytes( + serialization.Encoding.X962, + serialization.PublicFormat.UncompressedPoint, + ) + else: + # This is a very slow way to do this. + serialized = public_key.public_bytes( + serialization.Encoding.DER, + serialization.PublicFormat.SubjectPublicKeyInfo, + ) + data = asn1.parse_spki_for_data(serialized) + + return hashlib.sha1(data).digest() + + +def _make_sequence_methods(field_name: str): + def len_method(self) -> int: + return len(getattr(self, field_name)) + + def iter_method(self): + return iter(getattr(self, field_name)) + + def getitem_method(self, idx): + return getattr(self, field_name)[idx] + + return len_method, iter_method, getitem_method + + +class DuplicateExtension(Exception): + def __init__(self, msg: str, oid: ObjectIdentifier) -> None: + super().__init__(msg) + self.oid = oid + + +class ExtensionNotFound(Exception): + def __init__(self, msg: str, oid: ObjectIdentifier) -> None: + super().__init__(msg) + self.oid = oid + + +class ExtensionType(metaclass=abc.ABCMeta): + oid: typing.ClassVar[ObjectIdentifier] + + def public_bytes(self) -> bytes: + """ + Serializes the extension type to DER. + """ + raise NotImplementedError( + f"public_bytes is not implemented for extension type {self!r}" + ) + + +class Extensions: + def __init__(self, extensions: Iterable[Extension[ExtensionType]]) -> None: + self._extensions = list(extensions) + + def get_extension_for_oid( + self, oid: ObjectIdentifier + ) -> Extension[ExtensionType]: + for ext in self: + if ext.oid == oid: + return ext + + raise ExtensionNotFound(f"No {oid} extension was found", oid) + + def get_extension_for_class( + self, extclass: type[ExtensionTypeVar] + ) -> Extension[ExtensionTypeVar]: + if extclass is UnrecognizedExtension: + raise TypeError( + "UnrecognizedExtension can't be used with " + "get_extension_for_class because more than one instance of the" + " class may be present." + ) + + for ext in self: + if isinstance(ext.value, extclass): + return ext + + raise ExtensionNotFound( + f"No {extclass} extension was found", extclass.oid + ) + + __len__, __iter__, __getitem__ = _make_sequence_methods("_extensions") + + def __repr__(self) -> str: + return f"" + + +class CRLNumber(ExtensionType): + oid = ExtensionOID.CRL_NUMBER + + def __init__(self, crl_number: int) -> None: + if not isinstance(crl_number, int): + raise TypeError("crl_number must be an integer") + + self._crl_number = crl_number + + def __eq__(self, other: object) -> bool: + if not isinstance(other, CRLNumber): + return NotImplemented + + return self.crl_number == other.crl_number + + def __hash__(self) -> int: + return hash(self.crl_number) + + def __repr__(self) -> str: + return f"" + + @property + def crl_number(self) -> int: + return self._crl_number + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class AuthorityKeyIdentifier(ExtensionType): + oid = ExtensionOID.AUTHORITY_KEY_IDENTIFIER + + def __init__( + self, + key_identifier: bytes | None, + authority_cert_issuer: Iterable[GeneralName] | None, + authority_cert_serial_number: int | None, + ) -> None: + if (authority_cert_issuer is None) != ( + authority_cert_serial_number is None + ): + raise ValueError( + "authority_cert_issuer and authority_cert_serial_number " + "must both be present or both None" + ) + + if authority_cert_issuer is not None: + authority_cert_issuer = list(authority_cert_issuer) + if not all( + isinstance(x, GeneralName) for x in authority_cert_issuer + ): + raise TypeError( + "authority_cert_issuer must be a list of GeneralName " + "objects" + ) + + if authority_cert_serial_number is not None and not isinstance( + authority_cert_serial_number, int + ): + raise TypeError("authority_cert_serial_number must be an integer") + + self._key_identifier = key_identifier + self._authority_cert_issuer = authority_cert_issuer + self._authority_cert_serial_number = authority_cert_serial_number + + # This takes a subset of CertificatePublicKeyTypes because an issuer + # cannot have an X25519/X448 key. This introduces some unfortunate + # asymmetry that requires typing users to explicitly + # narrow their type, but we should make this accurate and not just + # convenient. + @classmethod + def from_issuer_public_key( + cls, public_key: CertificateIssuerPublicKeyTypes + ) -> AuthorityKeyIdentifier: + digest = _key_identifier_from_public_key(public_key) + return cls( + key_identifier=digest, + authority_cert_issuer=None, + authority_cert_serial_number=None, + ) + + @classmethod + def from_issuer_subject_key_identifier( + cls, ski: SubjectKeyIdentifier + ) -> AuthorityKeyIdentifier: + return cls( + key_identifier=ski.digest, + authority_cert_issuer=None, + authority_cert_serial_number=None, + ) + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, AuthorityKeyIdentifier): + return NotImplemented + + return ( + self.key_identifier == other.key_identifier + and self.authority_cert_issuer == other.authority_cert_issuer + and self.authority_cert_serial_number + == other.authority_cert_serial_number + ) + + def __hash__(self) -> int: + if self.authority_cert_issuer is None: + aci = None + else: + aci = tuple(self.authority_cert_issuer) + return hash( + (self.key_identifier, aci, self.authority_cert_serial_number) + ) + + @property + def key_identifier(self) -> bytes | None: + return self._key_identifier + + @property + def authority_cert_issuer( + self, + ) -> list[GeneralName] | None: + return self._authority_cert_issuer + + @property + def authority_cert_serial_number(self) -> int | None: + return self._authority_cert_serial_number + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class SubjectKeyIdentifier(ExtensionType): + oid = ExtensionOID.SUBJECT_KEY_IDENTIFIER + + def __init__(self, digest: bytes) -> None: + self._digest = digest + + @classmethod + def from_public_key( + cls, public_key: CertificatePublicKeyTypes + ) -> SubjectKeyIdentifier: + return cls(_key_identifier_from_public_key(public_key)) + + @property + def digest(self) -> bytes: + return self._digest + + @property + def key_identifier(self) -> bytes: + return self._digest + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, SubjectKeyIdentifier): + return NotImplemented + + return constant_time.bytes_eq(self.digest, other.digest) + + def __hash__(self) -> int: + return hash(self.digest) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class AuthorityInformationAccess(ExtensionType): + oid = ExtensionOID.AUTHORITY_INFORMATION_ACCESS + + def __init__(self, descriptions: Iterable[AccessDescription]) -> None: + descriptions = list(descriptions) + if not all(isinstance(x, AccessDescription) for x in descriptions): + raise TypeError( + "Every item in the descriptions list must be an " + "AccessDescription" + ) + + self._descriptions = descriptions + + __len__, __iter__, __getitem__ = _make_sequence_methods("_descriptions") + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, AuthorityInformationAccess): + return NotImplemented + + return self._descriptions == other._descriptions + + def __hash__(self) -> int: + return hash(tuple(self._descriptions)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class SubjectInformationAccess(ExtensionType): + oid = ExtensionOID.SUBJECT_INFORMATION_ACCESS + + def __init__(self, descriptions: Iterable[AccessDescription]) -> None: + descriptions = list(descriptions) + if not all(isinstance(x, AccessDescription) for x in descriptions): + raise TypeError( + "Every item in the descriptions list must be an " + "AccessDescription" + ) + + self._descriptions = descriptions + + __len__, __iter__, __getitem__ = _make_sequence_methods("_descriptions") + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, SubjectInformationAccess): + return NotImplemented + + return self._descriptions == other._descriptions + + def __hash__(self) -> int: + return hash(tuple(self._descriptions)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class AccessDescription: + def __init__( + self, access_method: ObjectIdentifier, access_location: GeneralName + ) -> None: + if not isinstance(access_method, ObjectIdentifier): + raise TypeError("access_method must be an ObjectIdentifier") + + if not isinstance(access_location, GeneralName): + raise TypeError("access_location must be a GeneralName") + + self._access_method = access_method + self._access_location = access_location + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, AccessDescription): + return NotImplemented + + return ( + self.access_method == other.access_method + and self.access_location == other.access_location + ) + + def __hash__(self) -> int: + return hash((self.access_method, self.access_location)) + + @property + def access_method(self) -> ObjectIdentifier: + return self._access_method + + @property + def access_location(self) -> GeneralName: + return self._access_location + + +class BasicConstraints(ExtensionType): + oid = ExtensionOID.BASIC_CONSTRAINTS + + def __init__(self, ca: bool, path_length: int | None) -> None: + if not isinstance(ca, bool): + raise TypeError("ca must be a boolean value") + + if path_length is not None and not ca: + raise ValueError("path_length must be None when ca is False") + + if path_length is not None and ( + not isinstance(path_length, int) or path_length < 0 + ): + raise TypeError( + "path_length must be a non-negative integer or None" + ) + + self._ca = ca + self._path_length = path_length + + @property + def ca(self) -> bool: + return self._ca + + @property + def path_length(self) -> int | None: + return self._path_length + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, BasicConstraints): + return NotImplemented + + return self.ca == other.ca and self.path_length == other.path_length + + def __hash__(self) -> int: + return hash((self.ca, self.path_length)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class DeltaCRLIndicator(ExtensionType): + oid = ExtensionOID.DELTA_CRL_INDICATOR + + def __init__(self, crl_number: int) -> None: + if not isinstance(crl_number, int): + raise TypeError("crl_number must be an integer") + + self._crl_number = crl_number + + @property + def crl_number(self) -> int: + return self._crl_number + + def __eq__(self, other: object) -> bool: + if not isinstance(other, DeltaCRLIndicator): + return NotImplemented + + return self.crl_number == other.crl_number + + def __hash__(self) -> int: + return hash(self.crl_number) + + def __repr__(self) -> str: + return f"" + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class CRLDistributionPoints(ExtensionType): + oid = ExtensionOID.CRL_DISTRIBUTION_POINTS + + def __init__( + self, distribution_points: Iterable[DistributionPoint] + ) -> None: + distribution_points = list(distribution_points) + if not all( + isinstance(x, DistributionPoint) for x in distribution_points + ): + raise TypeError( + "distribution_points must be a list of DistributionPoint " + "objects" + ) + + self._distribution_points = distribution_points + + __len__, __iter__, __getitem__ = _make_sequence_methods( + "_distribution_points" + ) + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, CRLDistributionPoints): + return NotImplemented + + return self._distribution_points == other._distribution_points + + def __hash__(self) -> int: + return hash(tuple(self._distribution_points)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class FreshestCRL(ExtensionType): + oid = ExtensionOID.FRESHEST_CRL + + def __init__( + self, distribution_points: Iterable[DistributionPoint] + ) -> None: + distribution_points = list(distribution_points) + if not all( + isinstance(x, DistributionPoint) for x in distribution_points + ): + raise TypeError( + "distribution_points must be a list of DistributionPoint " + "objects" + ) + + self._distribution_points = distribution_points + + __len__, __iter__, __getitem__ = _make_sequence_methods( + "_distribution_points" + ) + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, FreshestCRL): + return NotImplemented + + return self._distribution_points == other._distribution_points + + def __hash__(self) -> int: + return hash(tuple(self._distribution_points)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class DistributionPoint: + def __init__( + self, + full_name: Iterable[GeneralName] | None, + relative_name: RelativeDistinguishedName | None, + reasons: frozenset[ReasonFlags] | None, + crl_issuer: Iterable[GeneralName] | None, + ) -> None: + if full_name and relative_name: + raise ValueError( + "You cannot provide both full_name and relative_name, at " + "least one must be None." + ) + if not full_name and not relative_name and not crl_issuer: + raise ValueError( + "Either full_name, relative_name or crl_issuer must be " + "provided." + ) + + if full_name is not None: + full_name = list(full_name) + if not all(isinstance(x, GeneralName) for x in full_name): + raise TypeError( + "full_name must be a list of GeneralName objects" + ) + + if relative_name: + if not isinstance(relative_name, RelativeDistinguishedName): + raise TypeError( + "relative_name must be a RelativeDistinguishedName" + ) + + if crl_issuer is not None: + crl_issuer = list(crl_issuer) + if not all(isinstance(x, GeneralName) for x in crl_issuer): + raise TypeError( + "crl_issuer must be None or a list of general names" + ) + + if reasons and ( + not isinstance(reasons, frozenset) + or not all(isinstance(x, ReasonFlags) for x in reasons) + ): + raise TypeError("reasons must be None or frozenset of ReasonFlags") + + if reasons and ( + ReasonFlags.unspecified in reasons + or ReasonFlags.remove_from_crl in reasons + ): + raise ValueError( + "unspecified and remove_from_crl are not valid reasons in a " + "DistributionPoint" + ) + + self._full_name = full_name + self._relative_name = relative_name + self._reasons = reasons + self._crl_issuer = crl_issuer + + def __repr__(self) -> str: + return ( + "".format(self) + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, DistributionPoint): + return NotImplemented + + return ( + self.full_name == other.full_name + and self.relative_name == other.relative_name + and self.reasons == other.reasons + and self.crl_issuer == other.crl_issuer + ) + + def __hash__(self) -> int: + if self.full_name is not None: + fn: tuple[GeneralName, ...] | None = tuple(self.full_name) + else: + fn = None + + if self.crl_issuer is not None: + crl_issuer: tuple[GeneralName, ...] | None = tuple(self.crl_issuer) + else: + crl_issuer = None + + return hash((fn, self.relative_name, self.reasons, crl_issuer)) + + @property + def full_name(self) -> list[GeneralName] | None: + return self._full_name + + @property + def relative_name(self) -> RelativeDistinguishedName | None: + return self._relative_name + + @property + def reasons(self) -> frozenset[ReasonFlags] | None: + return self._reasons + + @property + def crl_issuer(self) -> list[GeneralName] | None: + return self._crl_issuer + + +class ReasonFlags(utils.Enum): + unspecified = "unspecified" + key_compromise = "keyCompromise" + ca_compromise = "cACompromise" + affiliation_changed = "affiliationChanged" + superseded = "superseded" + cessation_of_operation = "cessationOfOperation" + certificate_hold = "certificateHold" + privilege_withdrawn = "privilegeWithdrawn" + aa_compromise = "aACompromise" + remove_from_crl = "removeFromCRL" + + +# These are distribution point bit string mappings. Not to be confused with +# CRLReason reason flags bit string mappings. +# ReasonFlags ::= BIT STRING { +# unused (0), +# keyCompromise (1), +# cACompromise (2), +# affiliationChanged (3), +# superseded (4), +# cessationOfOperation (5), +# certificateHold (6), +# privilegeWithdrawn (7), +# aACompromise (8) } +_REASON_BIT_MAPPING = { + 1: ReasonFlags.key_compromise, + 2: ReasonFlags.ca_compromise, + 3: ReasonFlags.affiliation_changed, + 4: ReasonFlags.superseded, + 5: ReasonFlags.cessation_of_operation, + 6: ReasonFlags.certificate_hold, + 7: ReasonFlags.privilege_withdrawn, + 8: ReasonFlags.aa_compromise, +} + +_CRLREASONFLAGS = { + ReasonFlags.key_compromise: 1, + ReasonFlags.ca_compromise: 2, + ReasonFlags.affiliation_changed: 3, + ReasonFlags.superseded: 4, + ReasonFlags.cessation_of_operation: 5, + ReasonFlags.certificate_hold: 6, + ReasonFlags.privilege_withdrawn: 7, + ReasonFlags.aa_compromise: 8, +} + +# CRLReason ::= ENUMERATED { +# unspecified (0), +# keyCompromise (1), +# cACompromise (2), +# affiliationChanged (3), +# superseded (4), +# cessationOfOperation (5), +# certificateHold (6), +# -- value 7 is not used +# removeFromCRL (8), +# privilegeWithdrawn (9), +# aACompromise (10) } +_CRL_ENTRY_REASON_ENUM_TO_CODE = { + ReasonFlags.unspecified: 0, + ReasonFlags.key_compromise: 1, + ReasonFlags.ca_compromise: 2, + ReasonFlags.affiliation_changed: 3, + ReasonFlags.superseded: 4, + ReasonFlags.cessation_of_operation: 5, + ReasonFlags.certificate_hold: 6, + ReasonFlags.remove_from_crl: 8, + ReasonFlags.privilege_withdrawn: 9, + ReasonFlags.aa_compromise: 10, +} + + +class PolicyConstraints(ExtensionType): + oid = ExtensionOID.POLICY_CONSTRAINTS + + def __init__( + self, + require_explicit_policy: int | None, + inhibit_policy_mapping: int | None, + ) -> None: + if require_explicit_policy is not None and not isinstance( + require_explicit_policy, int + ): + raise TypeError( + "require_explicit_policy must be a non-negative integer or " + "None" + ) + + if inhibit_policy_mapping is not None and not isinstance( + inhibit_policy_mapping, int + ): + raise TypeError( + "inhibit_policy_mapping must be a non-negative integer or None" + ) + + if inhibit_policy_mapping is None and require_explicit_policy is None: + raise ValueError( + "At least one of require_explicit_policy and " + "inhibit_policy_mapping must not be None" + ) + + self._require_explicit_policy = require_explicit_policy + self._inhibit_policy_mapping = inhibit_policy_mapping + + def __repr__(self) -> str: + return ( + "".format(self) + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, PolicyConstraints): + return NotImplemented + + return ( + self.require_explicit_policy == other.require_explicit_policy + and self.inhibit_policy_mapping == other.inhibit_policy_mapping + ) + + def __hash__(self) -> int: + return hash( + (self.require_explicit_policy, self.inhibit_policy_mapping) + ) + + @property + def require_explicit_policy(self) -> int | None: + return self._require_explicit_policy + + @property + def inhibit_policy_mapping(self) -> int | None: + return self._inhibit_policy_mapping + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class CertificatePolicies(ExtensionType): + oid = ExtensionOID.CERTIFICATE_POLICIES + + def __init__(self, policies: Iterable[PolicyInformation]) -> None: + policies = list(policies) + if not all(isinstance(x, PolicyInformation) for x in policies): + raise TypeError( + "Every item in the policies list must be a PolicyInformation" + ) + + self._policies = policies + + __len__, __iter__, __getitem__ = _make_sequence_methods("_policies") + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, CertificatePolicies): + return NotImplemented + + return self._policies == other._policies + + def __hash__(self) -> int: + return hash(tuple(self._policies)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class PolicyInformation: + def __init__( + self, + policy_identifier: ObjectIdentifier, + policy_qualifiers: Iterable[str | UserNotice] | None, + ) -> None: + if not isinstance(policy_identifier, ObjectIdentifier): + raise TypeError("policy_identifier must be an ObjectIdentifier") + + self._policy_identifier = policy_identifier + + if policy_qualifiers is not None: + policy_qualifiers = list(policy_qualifiers) + if not all( + isinstance(x, (str, UserNotice)) for x in policy_qualifiers + ): + raise TypeError( + "policy_qualifiers must be a list of strings and/or " + "UserNotice objects or None" + ) + + self._policy_qualifiers = policy_qualifiers + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, PolicyInformation): + return NotImplemented + + return ( + self.policy_identifier == other.policy_identifier + and self.policy_qualifiers == other.policy_qualifiers + ) + + def __hash__(self) -> int: + if self.policy_qualifiers is not None: + pq = tuple(self.policy_qualifiers) + else: + pq = None + + return hash((self.policy_identifier, pq)) + + @property + def policy_identifier(self) -> ObjectIdentifier: + return self._policy_identifier + + @property + def policy_qualifiers( + self, + ) -> list[str | UserNotice] | None: + return self._policy_qualifiers + + +class UserNotice: + def __init__( + self, + notice_reference: NoticeReference | None, + explicit_text: str | None, + ) -> None: + if notice_reference and not isinstance( + notice_reference, NoticeReference + ): + raise TypeError( + "notice_reference must be None or a NoticeReference" + ) + + self._notice_reference = notice_reference + self._explicit_text = explicit_text + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, UserNotice): + return NotImplemented + + return ( + self.notice_reference == other.notice_reference + and self.explicit_text == other.explicit_text + ) + + def __hash__(self) -> int: + return hash((self.notice_reference, self.explicit_text)) + + @property + def notice_reference(self) -> NoticeReference | None: + return self._notice_reference + + @property + def explicit_text(self) -> str | None: + return self._explicit_text + + +class NoticeReference: + def __init__( + self, + organization: str | None, + notice_numbers: Iterable[int], + ) -> None: + self._organization = organization + notice_numbers = list(notice_numbers) + if not all(isinstance(x, int) for x in notice_numbers): + raise TypeError("notice_numbers must be a list of integers") + + self._notice_numbers = notice_numbers + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, NoticeReference): + return NotImplemented + + return ( + self.organization == other.organization + and self.notice_numbers == other.notice_numbers + ) + + def __hash__(self) -> int: + return hash((self.organization, tuple(self.notice_numbers))) + + @property + def organization(self) -> str | None: + return self._organization + + @property + def notice_numbers(self) -> list[int]: + return self._notice_numbers + + +class ExtendedKeyUsage(ExtensionType): + oid = ExtensionOID.EXTENDED_KEY_USAGE + + def __init__(self, usages: Iterable[ObjectIdentifier]) -> None: + usages = list(usages) + if not all(isinstance(x, ObjectIdentifier) for x in usages): + raise TypeError( + "Every item in the usages list must be an ObjectIdentifier" + ) + + self._usages = usages + + __len__, __iter__, __getitem__ = _make_sequence_methods("_usages") + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, ExtendedKeyUsage): + return NotImplemented + + return self._usages == other._usages + + def __hash__(self) -> int: + return hash(tuple(self._usages)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class OCSPNoCheck(ExtensionType): + oid = ExtensionOID.OCSP_NO_CHECK + + def __eq__(self, other: object) -> bool: + if not isinstance(other, OCSPNoCheck): + return NotImplemented + + return True + + def __hash__(self) -> int: + return hash(OCSPNoCheck) + + def __repr__(self) -> str: + return "" + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class PrecertPoison(ExtensionType): + oid = ExtensionOID.PRECERT_POISON + + def __eq__(self, other: object) -> bool: + if not isinstance(other, PrecertPoison): + return NotImplemented + + return True + + def __hash__(self) -> int: + return hash(PrecertPoison) + + def __repr__(self) -> str: + return "" + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class TLSFeature(ExtensionType): + oid = ExtensionOID.TLS_FEATURE + + def __init__(self, features: Iterable[TLSFeatureType]) -> None: + features = list(features) + if ( + not all(isinstance(x, TLSFeatureType) for x in features) + or len(features) == 0 + ): + raise TypeError( + "features must be a list of elements from the TLSFeatureType " + "enum" + ) + + self._features = features + + __len__, __iter__, __getitem__ = _make_sequence_methods("_features") + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, TLSFeature): + return NotImplemented + + return self._features == other._features + + def __hash__(self) -> int: + return hash(tuple(self._features)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class TLSFeatureType(utils.Enum): + # status_request is defined in RFC 6066 and is used for what is commonly + # called OCSP Must-Staple when present in the TLS Feature extension in an + # X.509 certificate. + status_request = 5 + # status_request_v2 is defined in RFC 6961 and allows multiple OCSP + # responses to be provided. It is not currently in use by clients or + # servers. + status_request_v2 = 17 + + +_TLS_FEATURE_TYPE_TO_ENUM = {x.value: x for x in TLSFeatureType} + + +class InhibitAnyPolicy(ExtensionType): + oid = ExtensionOID.INHIBIT_ANY_POLICY + + def __init__(self, skip_certs: int) -> None: + if not isinstance(skip_certs, int): + raise TypeError("skip_certs must be an integer") + + if skip_certs < 0: + raise ValueError("skip_certs must be a non-negative integer") + + self._skip_certs = skip_certs + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, InhibitAnyPolicy): + return NotImplemented + + return self.skip_certs == other.skip_certs + + def __hash__(self) -> int: + return hash(self.skip_certs) + + @property + def skip_certs(self) -> int: + return self._skip_certs + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class KeyUsage(ExtensionType): + oid = ExtensionOID.KEY_USAGE + + def __init__( + self, + digital_signature: bool, + content_commitment: bool, + key_encipherment: bool, + data_encipherment: bool, + key_agreement: bool, + key_cert_sign: bool, + crl_sign: bool, + encipher_only: bool, + decipher_only: bool, + ) -> None: + if not key_agreement and (encipher_only or decipher_only): + raise ValueError( + "encipher_only and decipher_only can only be true when " + "key_agreement is true" + ) + + self._digital_signature = digital_signature + self._content_commitment = content_commitment + self._key_encipherment = key_encipherment + self._data_encipherment = data_encipherment + self._key_agreement = key_agreement + self._key_cert_sign = key_cert_sign + self._crl_sign = crl_sign + self._encipher_only = encipher_only + self._decipher_only = decipher_only + + @property + def digital_signature(self) -> bool: + return self._digital_signature + + @property + def content_commitment(self) -> bool: + return self._content_commitment + + @property + def key_encipherment(self) -> bool: + return self._key_encipherment + + @property + def data_encipherment(self) -> bool: + return self._data_encipherment + + @property + def key_agreement(self) -> bool: + return self._key_agreement + + @property + def key_cert_sign(self) -> bool: + return self._key_cert_sign + + @property + def crl_sign(self) -> bool: + return self._crl_sign + + @property + def encipher_only(self) -> bool: + if not self.key_agreement: + raise ValueError( + "encipher_only is undefined unless key_agreement is true" + ) + else: + return self._encipher_only + + @property + def decipher_only(self) -> bool: + if not self.key_agreement: + raise ValueError( + "decipher_only is undefined unless key_agreement is true" + ) + else: + return self._decipher_only + + def __repr__(self) -> str: + try: + encipher_only = self.encipher_only + decipher_only = self.decipher_only + except ValueError: + # Users found None confusing because even though encipher/decipher + # have no meaning unless key_agreement is true, to construct an + # instance of the class you still need to pass False. + encipher_only = False + decipher_only = False + + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, KeyUsage): + return NotImplemented + + return ( + self.digital_signature == other.digital_signature + and self.content_commitment == other.content_commitment + and self.key_encipherment == other.key_encipherment + and self.data_encipherment == other.data_encipherment + and self.key_agreement == other.key_agreement + and self.key_cert_sign == other.key_cert_sign + and self.crl_sign == other.crl_sign + and self._encipher_only == other._encipher_only + and self._decipher_only == other._decipher_only + ) + + def __hash__(self) -> int: + return hash( + ( + self.digital_signature, + self.content_commitment, + self.key_encipherment, + self.data_encipherment, + self.key_agreement, + self.key_cert_sign, + self.crl_sign, + self._encipher_only, + self._decipher_only, + ) + ) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class PrivateKeyUsagePeriod(ExtensionType): + oid = ExtensionOID.PRIVATE_KEY_USAGE_PERIOD + + def __init__( + self, + not_before: datetime.datetime | None, + not_after: datetime.datetime | None, + ) -> None: + if ( + not isinstance(not_before, datetime.datetime) + and not_before is not None + ): + raise TypeError("not_before must be a datetime.datetime or None") + + if ( + not isinstance(not_after, datetime.datetime) + and not_after is not None + ): + raise TypeError("not_after must be a datetime.datetime or None") + + if not_before is None and not_after is None: + raise ValueError( + "At least one of not_before and not_after must not be None" + ) + + if ( + not_before is not None + and not_after is not None + and not_before > not_after + ): + raise ValueError("not_before must be before not_after") + + self._not_before = not_before + self._not_after = not_after + + @property + def not_before(self) -> datetime.datetime | None: + return self._not_before + + @property + def not_after(self) -> datetime.datetime | None: + return self._not_after + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, PrivateKeyUsagePeriod): + return NotImplemented + + return ( + self.not_before == other.not_before + and self.not_after == other.not_after + ) + + def __hash__(self) -> int: + return hash((self.not_before, self.not_after)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class NameConstraints(ExtensionType): + oid = ExtensionOID.NAME_CONSTRAINTS + + def __init__( + self, + permitted_subtrees: Iterable[GeneralName] | None, + excluded_subtrees: Iterable[GeneralName] | None, + ) -> None: + if permitted_subtrees is not None: + permitted_subtrees = list(permitted_subtrees) + if not permitted_subtrees: + raise ValueError( + "permitted_subtrees must be a non-empty list or None" + ) + if not all(isinstance(x, GeneralName) for x in permitted_subtrees): + raise TypeError( + "permitted_subtrees must be a list of GeneralName objects " + "or None" + ) + + self._validate_tree(permitted_subtrees) + + if excluded_subtrees is not None: + excluded_subtrees = list(excluded_subtrees) + if not excluded_subtrees: + raise ValueError( + "excluded_subtrees must be a non-empty list or None" + ) + if not all(isinstance(x, GeneralName) for x in excluded_subtrees): + raise TypeError( + "excluded_subtrees must be a list of GeneralName objects " + "or None" + ) + + self._validate_tree(excluded_subtrees) + + if permitted_subtrees is None and excluded_subtrees is None: + raise ValueError( + "At least one of permitted_subtrees and excluded_subtrees " + "must not be None" + ) + + self._permitted_subtrees = permitted_subtrees + self._excluded_subtrees = excluded_subtrees + + def __eq__(self, other: object) -> bool: + if not isinstance(other, NameConstraints): + return NotImplemented + + return ( + self.excluded_subtrees == other.excluded_subtrees + and self.permitted_subtrees == other.permitted_subtrees + ) + + def _validate_tree(self, tree: Iterable[GeneralName]) -> None: + self._validate_ip_name(tree) + self._validate_dns_name(tree) + + def _validate_ip_name(self, tree: Iterable[GeneralName]) -> None: + if any( + isinstance(name, IPAddress) + and not isinstance( + name.value, (ipaddress.IPv4Network, ipaddress.IPv6Network) + ) + for name in tree + ): + raise TypeError( + "IPAddress name constraints must be an IPv4Network or" + " IPv6Network object" + ) + + def _validate_dns_name(self, tree: Iterable[GeneralName]) -> None: + if any( + isinstance(name, DNSName) and "*" in name.value for name in tree + ): + raise ValueError( + "DNSName name constraints must not contain the '*' wildcard" + " character" + ) + + def __repr__(self) -> str: + return ( + f"" + ) + + def __hash__(self) -> int: + if self.permitted_subtrees is not None: + ps: tuple[GeneralName, ...] | None = tuple(self.permitted_subtrees) + else: + ps = None + + if self.excluded_subtrees is not None: + es: tuple[GeneralName, ...] | None = tuple(self.excluded_subtrees) + else: + es = None + + return hash((ps, es)) + + @property + def permitted_subtrees( + self, + ) -> list[GeneralName] | None: + return self._permitted_subtrees + + @property + def excluded_subtrees( + self, + ) -> list[GeneralName] | None: + return self._excluded_subtrees + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class Extension(typing.Generic[ExtensionTypeVar]): + def __init__( + self, oid: ObjectIdentifier, critical: bool, value: ExtensionTypeVar + ) -> None: + if not isinstance(oid, ObjectIdentifier): + raise TypeError( + "oid argument must be an ObjectIdentifier instance." + ) + + if not isinstance(critical, bool): + raise TypeError("critical must be a boolean value") + + self._oid = oid + self._critical = critical + self._value = value + + @property + def oid(self) -> ObjectIdentifier: + return self._oid + + @property + def critical(self) -> bool: + return self._critical + + @property + def value(self) -> ExtensionTypeVar: + return self._value + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, Extension): + return NotImplemented + + return ( + self.oid == other.oid + and self.critical == other.critical + and self.value == other.value + ) + + def __hash__(self) -> int: + return hash((self.oid, self.critical, self.value)) + + +class GeneralNames: + def __init__(self, general_names: Iterable[GeneralName]) -> None: + general_names = list(general_names) + if not all(isinstance(x, GeneralName) for x in general_names): + raise TypeError( + "Every item in the general_names list must be an " + "object conforming to the GeneralName interface" + ) + + self._general_names = general_names + + __len__, __iter__, __getitem__ = _make_sequence_methods("_general_names") + + @typing.overload + def get_values_for_type( + self, + type: type[DNSName] + | type[UniformResourceIdentifier] + | type[RFC822Name], + ) -> list[str]: ... + + @typing.overload + def get_values_for_type( + self, + type: type[DirectoryName], + ) -> list[Name]: ... + + @typing.overload + def get_values_for_type( + self, + type: type[RegisteredID], + ) -> list[ObjectIdentifier]: ... + + @typing.overload + def get_values_for_type( + self, type: type[IPAddress] + ) -> list[_IPAddressTypes]: ... + + @typing.overload + def get_values_for_type( + self, type: type[OtherName] + ) -> list[OtherName]: ... + + def get_values_for_type( + self, + type: type[DNSName] + | type[DirectoryName] + | type[IPAddress] + | type[OtherName] + | type[RFC822Name] + | type[RegisteredID] + | type[UniformResourceIdentifier], + ) -> ( + list[_IPAddressTypes] + | list[str] + | list[OtherName] + | list[Name] + | list[ObjectIdentifier] + ): + # Return the value of each GeneralName, except for OtherName instances + # which we return directly because it has two important properties not + # just one value. + objs = (i for i in self if isinstance(i, type)) + if type != OtherName: + return [i.value for i in objs] # type: ignore[return-value,unused-ignore] + return list(objs) # type: ignore[return-value,unused-ignore] + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, GeneralNames): + return NotImplemented + + return self._general_names == other._general_names + + def __hash__(self) -> int: + return hash(tuple(self._general_names)) + + +class SubjectAlternativeName(ExtensionType): + oid = ExtensionOID.SUBJECT_ALTERNATIVE_NAME + + def __init__(self, general_names: Iterable[GeneralName]) -> None: + self._general_names = GeneralNames(general_names) + + __len__, __iter__, __getitem__ = _make_sequence_methods("_general_names") + + @typing.overload + def get_values_for_type( + self, + type: type[DNSName] + | type[UniformResourceIdentifier] + | type[RFC822Name], + ) -> list[str]: ... + + @typing.overload + def get_values_for_type( + self, + type: type[DirectoryName], + ) -> list[Name]: ... + + @typing.overload + def get_values_for_type( + self, + type: type[RegisteredID], + ) -> list[ObjectIdentifier]: ... + + @typing.overload + def get_values_for_type( + self, type: type[IPAddress] + ) -> list[_IPAddressTypes]: ... + + @typing.overload + def get_values_for_type( + self, type: type[OtherName] + ) -> list[OtherName]: ... + + def get_values_for_type( + self, + type: type[DNSName] + | type[DirectoryName] + | type[IPAddress] + | type[OtherName] + | type[RFC822Name] + | type[RegisteredID] + | type[UniformResourceIdentifier], + ) -> ( + list[_IPAddressTypes] + | list[str] + | list[OtherName] + | list[Name] + | list[ObjectIdentifier] + ): + return self._general_names.get_values_for_type(type) + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, SubjectAlternativeName): + return NotImplemented + + return self._general_names == other._general_names + + def __hash__(self) -> int: + return hash(self._general_names) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class IssuerAlternativeName(ExtensionType): + oid = ExtensionOID.ISSUER_ALTERNATIVE_NAME + + def __init__(self, general_names: Iterable[GeneralName]) -> None: + self._general_names = GeneralNames(general_names) + + __len__, __iter__, __getitem__ = _make_sequence_methods("_general_names") + + @typing.overload + def get_values_for_type( + self, + type: type[DNSName] + | type[UniformResourceIdentifier] + | type[RFC822Name], + ) -> list[str]: ... + + @typing.overload + def get_values_for_type( + self, + type: type[DirectoryName], + ) -> list[Name]: ... + + @typing.overload + def get_values_for_type( + self, + type: type[RegisteredID], + ) -> list[ObjectIdentifier]: ... + + @typing.overload + def get_values_for_type( + self, type: type[IPAddress] + ) -> list[_IPAddressTypes]: ... + + @typing.overload + def get_values_for_type( + self, type: type[OtherName] + ) -> list[OtherName]: ... + + def get_values_for_type( + self, + type: type[DNSName] + | type[DirectoryName] + | type[IPAddress] + | type[OtherName] + | type[RFC822Name] + | type[RegisteredID] + | type[UniformResourceIdentifier], + ) -> ( + list[_IPAddressTypes] + | list[str] + | list[OtherName] + | list[Name] + | list[ObjectIdentifier] + ): + return self._general_names.get_values_for_type(type) + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, IssuerAlternativeName): + return NotImplemented + + return self._general_names == other._general_names + + def __hash__(self) -> int: + return hash(self._general_names) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class CertificateIssuer(ExtensionType): + oid = CRLEntryExtensionOID.CERTIFICATE_ISSUER + + def __init__(self, general_names: Iterable[GeneralName]) -> None: + self._general_names = GeneralNames(general_names) + + __len__, __iter__, __getitem__ = _make_sequence_methods("_general_names") + + @typing.overload + def get_values_for_type( + self, + type: type[DNSName] + | type[UniformResourceIdentifier] + | type[RFC822Name], + ) -> list[str]: ... + + @typing.overload + def get_values_for_type( + self, + type: type[DirectoryName], + ) -> list[Name]: ... + + @typing.overload + def get_values_for_type( + self, + type: type[RegisteredID], + ) -> list[ObjectIdentifier]: ... + + @typing.overload + def get_values_for_type( + self, type: type[IPAddress] + ) -> list[_IPAddressTypes]: ... + + @typing.overload + def get_values_for_type( + self, type: type[OtherName] + ) -> list[OtherName]: ... + + def get_values_for_type( + self, + type: type[DNSName] + | type[DirectoryName] + | type[IPAddress] + | type[OtherName] + | type[RFC822Name] + | type[RegisteredID] + | type[UniformResourceIdentifier], + ) -> ( + list[_IPAddressTypes] + | list[str] + | list[OtherName] + | list[Name] + | list[ObjectIdentifier] + ): + return self._general_names.get_values_for_type(type) + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, CertificateIssuer): + return NotImplemented + + return self._general_names == other._general_names + + def __hash__(self) -> int: + return hash(self._general_names) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class CRLReason(ExtensionType): + oid = CRLEntryExtensionOID.CRL_REASON + + def __init__(self, reason: ReasonFlags) -> None: + if not isinstance(reason, ReasonFlags): + raise TypeError("reason must be an element from ReasonFlags") + + self._reason = reason + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, CRLReason): + return NotImplemented + + return self.reason == other.reason + + def __hash__(self) -> int: + return hash(self.reason) + + @property + def reason(self) -> ReasonFlags: + return self._reason + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class InvalidityDate(ExtensionType): + oid = CRLEntryExtensionOID.INVALIDITY_DATE + + def __init__(self, invalidity_date: datetime.datetime) -> None: + if not isinstance(invalidity_date, datetime.datetime): + raise TypeError("invalidity_date must be a datetime.datetime") + + self._invalidity_date = invalidity_date + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, InvalidityDate): + return NotImplemented + + return self.invalidity_date == other.invalidity_date + + def __hash__(self) -> int: + return hash(self.invalidity_date) + + @property + def invalidity_date(self) -> datetime.datetime: + return self._invalidity_date + + @property + def invalidity_date_utc(self) -> datetime.datetime: + if self._invalidity_date.tzinfo is None: + return self._invalidity_date.replace(tzinfo=datetime.timezone.utc) + else: + return self._invalidity_date.astimezone(tz=datetime.timezone.utc) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class PrecertificateSignedCertificateTimestamps(ExtensionType): + oid = ExtensionOID.PRECERT_SIGNED_CERTIFICATE_TIMESTAMPS + + def __init__( + self, + signed_certificate_timestamps: Iterable[SignedCertificateTimestamp], + ) -> None: + signed_certificate_timestamps = list(signed_certificate_timestamps) + if not all( + isinstance(sct, SignedCertificateTimestamp) + for sct in signed_certificate_timestamps + ): + raise TypeError( + "Every item in the signed_certificate_timestamps list must be " + "a SignedCertificateTimestamp" + ) + self._signed_certificate_timestamps = signed_certificate_timestamps + + __len__, __iter__, __getitem__ = _make_sequence_methods( + "_signed_certificate_timestamps" + ) + + def __repr__(self) -> str: + return f"" + + def __hash__(self) -> int: + return hash(tuple(self._signed_certificate_timestamps)) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, PrecertificateSignedCertificateTimestamps): + return NotImplemented + + return ( + self._signed_certificate_timestamps + == other._signed_certificate_timestamps + ) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class SignedCertificateTimestamps(ExtensionType): + oid = ExtensionOID.SIGNED_CERTIFICATE_TIMESTAMPS + + def __init__( + self, + signed_certificate_timestamps: Iterable[SignedCertificateTimestamp], + ) -> None: + signed_certificate_timestamps = list(signed_certificate_timestamps) + if not all( + isinstance(sct, SignedCertificateTimestamp) + for sct in signed_certificate_timestamps + ): + raise TypeError( + "Every item in the signed_certificate_timestamps list must be " + "a SignedCertificateTimestamp" + ) + self._signed_certificate_timestamps = signed_certificate_timestamps + + __len__, __iter__, __getitem__ = _make_sequence_methods( + "_signed_certificate_timestamps" + ) + + def __repr__(self) -> str: + return f"" + + def __hash__(self) -> int: + return hash(tuple(self._signed_certificate_timestamps)) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, SignedCertificateTimestamps): + return NotImplemented + + return ( + self._signed_certificate_timestamps + == other._signed_certificate_timestamps + ) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class OCSPNonce(ExtensionType): + oid = OCSPExtensionOID.NONCE + + def __init__(self, nonce: bytes) -> None: + if not isinstance(nonce, bytes): + raise TypeError("nonce must be bytes") + + self._nonce = nonce + + def __eq__(self, other: object) -> bool: + if not isinstance(other, OCSPNonce): + return NotImplemented + + return self.nonce == other.nonce + + def __hash__(self) -> int: + return hash(self.nonce) + + def __repr__(self) -> str: + return f"" + + @property + def nonce(self) -> bytes: + return self._nonce + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class OCSPAcceptableResponses(ExtensionType): + oid = OCSPExtensionOID.ACCEPTABLE_RESPONSES + + def __init__(self, responses: Iterable[ObjectIdentifier]) -> None: + responses = list(responses) + if any(not isinstance(r, ObjectIdentifier) for r in responses): + raise TypeError("All responses must be ObjectIdentifiers") + + self._responses = responses + + def __eq__(self, other: object) -> bool: + if not isinstance(other, OCSPAcceptableResponses): + return NotImplemented + + return self._responses == other._responses + + def __hash__(self) -> int: + return hash(tuple(self._responses)) + + def __repr__(self) -> str: + return f"" + + def __iter__(self) -> Iterator[ObjectIdentifier]: + return iter(self._responses) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class IssuingDistributionPoint(ExtensionType): + oid = ExtensionOID.ISSUING_DISTRIBUTION_POINT + + def __init__( + self, + full_name: Iterable[GeneralName] | None, + relative_name: RelativeDistinguishedName | None, + only_contains_user_certs: bool, + only_contains_ca_certs: bool, + only_some_reasons: frozenset[ReasonFlags] | None, + indirect_crl: bool, + only_contains_attribute_certs: bool, + ) -> None: + if full_name is not None: + full_name = list(full_name) + + if only_some_reasons and ( + not isinstance(only_some_reasons, frozenset) + or not all(isinstance(x, ReasonFlags) for x in only_some_reasons) + ): + raise TypeError( + "only_some_reasons must be None or frozenset of ReasonFlags" + ) + + if only_some_reasons and ( + ReasonFlags.unspecified in only_some_reasons + or ReasonFlags.remove_from_crl in only_some_reasons + ): + raise ValueError( + "unspecified and remove_from_crl are not valid reasons in an " + "IssuingDistributionPoint" + ) + + if not ( + isinstance(only_contains_user_certs, bool) + and isinstance(only_contains_ca_certs, bool) + and isinstance(indirect_crl, bool) + and isinstance(only_contains_attribute_certs, bool) + ): + raise TypeError( + "only_contains_user_certs, only_contains_ca_certs, " + "indirect_crl and only_contains_attribute_certs " + "must all be boolean." + ) + + # Per RFC5280 Section 5.2.5, the Issuing Distribution Point extension + # in a CRL can have only one of onlyContainsUserCerts, + # onlyContainsCACerts, onlyContainsAttributeCerts set to TRUE. + crl_constraints = [ + only_contains_user_certs, + only_contains_ca_certs, + only_contains_attribute_certs, + ] + + if len([x for x in crl_constraints if x]) > 1: + raise ValueError( + "Only one of the following can be set to True: " + "only_contains_user_certs, only_contains_ca_certs, " + "only_contains_attribute_certs" + ) + + if not any( + [ + only_contains_user_certs, + only_contains_ca_certs, + indirect_crl, + only_contains_attribute_certs, + full_name, + relative_name, + only_some_reasons, + ] + ): + raise ValueError( + "Cannot create empty extension: " + "if only_contains_user_certs, only_contains_ca_certs, " + "indirect_crl, and only_contains_attribute_certs are all False" + ", then either full_name, relative_name, or only_some_reasons " + "must have a value." + ) + + self._only_contains_user_certs = only_contains_user_certs + self._only_contains_ca_certs = only_contains_ca_certs + self._indirect_crl = indirect_crl + self._only_contains_attribute_certs = only_contains_attribute_certs + self._only_some_reasons = only_some_reasons + self._full_name = full_name + self._relative_name = relative_name + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, IssuingDistributionPoint): + return NotImplemented + + return ( + self.full_name == other.full_name + and self.relative_name == other.relative_name + and self.only_contains_user_certs == other.only_contains_user_certs + and self.only_contains_ca_certs == other.only_contains_ca_certs + and self.only_some_reasons == other.only_some_reasons + and self.indirect_crl == other.indirect_crl + and self.only_contains_attribute_certs + == other.only_contains_attribute_certs + ) + + def __hash__(self) -> int: + if self.full_name is not None: + full_name: tuple[GeneralName, ...] | None = tuple(self.full_name) + else: + full_name = None + + return hash( + ( + full_name, + self.relative_name, + self.only_contains_user_certs, + self.only_contains_ca_certs, + self.only_some_reasons, + self.indirect_crl, + self.only_contains_attribute_certs, + ) + ) + + @property + def full_name(self) -> list[GeneralName] | None: + return self._full_name + + @property + def relative_name(self) -> RelativeDistinguishedName | None: + return self._relative_name + + @property + def only_contains_user_certs(self) -> bool: + return self._only_contains_user_certs + + @property + def only_contains_ca_certs(self) -> bool: + return self._only_contains_ca_certs + + @property + def only_some_reasons( + self, + ) -> frozenset[ReasonFlags] | None: + return self._only_some_reasons + + @property + def indirect_crl(self) -> bool: + return self._indirect_crl + + @property + def only_contains_attribute_certs(self) -> bool: + return self._only_contains_attribute_certs + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class MSCertificateTemplate(ExtensionType): + oid = ExtensionOID.MS_CERTIFICATE_TEMPLATE + + def __init__( + self, + template_id: ObjectIdentifier, + major_version: int | None, + minor_version: int | None, + ) -> None: + if not isinstance(template_id, ObjectIdentifier): + raise TypeError("oid must be an ObjectIdentifier") + self._template_id = template_id + if ( + major_version is not None and not isinstance(major_version, int) + ) or ( + minor_version is not None and not isinstance(minor_version, int) + ): + raise TypeError( + "major_version and minor_version must be integers or None" + ) + self._major_version = major_version + self._minor_version = minor_version + + @property + def template_id(self) -> ObjectIdentifier: + return self._template_id + + @property + def major_version(self) -> int | None: + return self._major_version + + @property + def minor_version(self) -> int | None: + return self._minor_version + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, MSCertificateTemplate): + return NotImplemented + + return ( + self.template_id == other.template_id + and self.major_version == other.major_version + and self.minor_version == other.minor_version + ) + + def __hash__(self) -> int: + return hash((self.template_id, self.major_version, self.minor_version)) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class NamingAuthority: + def __init__( + self, + id: ObjectIdentifier | None, + url: str | None, + text: str | None, + ) -> None: + if id is not None and not isinstance(id, ObjectIdentifier): + raise TypeError("id must be an ObjectIdentifier") + + if url is not None and not isinstance(url, str): + raise TypeError("url must be a str") + + if text is not None and not isinstance(text, str): + raise TypeError("text must be a str") + + self._id = id + self._url = url + self._text = text + + @property + def id(self) -> ObjectIdentifier | None: + return self._id + + @property + def url(self) -> str | None: + return self._url + + @property + def text(self) -> str | None: + return self._text + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, NamingAuthority): + return NotImplemented + + return ( + self.id == other.id + and self.url == other.url + and self.text == other.text + ) + + def __hash__(self) -> int: + return hash( + ( + self.id, + self.url, + self.text, + ) + ) + + +class ProfessionInfo: + def __init__( + self, + naming_authority: NamingAuthority | None, + profession_items: Iterable[str], + profession_oids: Iterable[ObjectIdentifier] | None, + registration_number: str | None, + add_profession_info: bytes | None, + ) -> None: + if naming_authority is not None and not isinstance( + naming_authority, NamingAuthority + ): + raise TypeError("naming_authority must be a NamingAuthority") + + profession_items = list(profession_items) + if not all(isinstance(item, str) for item in profession_items): + raise TypeError( + "Every item in the profession_items list must be a str" + ) + + if profession_oids is not None: + profession_oids = list(profession_oids) + if not all( + isinstance(oid, ObjectIdentifier) for oid in profession_oids + ): + raise TypeError( + "Every item in the profession_oids list must be an " + "ObjectIdentifier" + ) + + if registration_number is not None and not isinstance( + registration_number, str + ): + raise TypeError("registration_number must be a str") + + if add_profession_info is not None and not isinstance( + add_profession_info, bytes + ): + raise TypeError("add_profession_info must be bytes") + + self._naming_authority = naming_authority + self._profession_items = profession_items + self._profession_oids = profession_oids + self._registration_number = registration_number + self._add_profession_info = add_profession_info + + @property + def naming_authority(self) -> NamingAuthority | None: + return self._naming_authority + + @property + def profession_items(self) -> list[str]: + return self._profession_items + + @property + def profession_oids(self) -> list[ObjectIdentifier] | None: + return self._profession_oids + + @property + def registration_number(self) -> str | None: + return self._registration_number + + @property + def add_profession_info(self) -> bytes | None: + return self._add_profession_info + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, ProfessionInfo): + return NotImplemented + + return ( + self.naming_authority == other.naming_authority + and self.profession_items == other.profession_items + and self.profession_oids == other.profession_oids + and self.registration_number == other.registration_number + and self.add_profession_info == other.add_profession_info + ) + + def __hash__(self) -> int: + if self.profession_oids is not None: + profession_oids = tuple(self.profession_oids) + else: + profession_oids = None + return hash( + ( + self.naming_authority, + tuple(self.profession_items), + profession_oids, + self.registration_number, + self.add_profession_info, + ) + ) + + +class Admission: + def __init__( + self, + admission_authority: GeneralName | None, + naming_authority: NamingAuthority | None, + profession_infos: Iterable[ProfessionInfo], + ) -> None: + if admission_authority is not None and not isinstance( + admission_authority, GeneralName + ): + raise TypeError("admission_authority must be a GeneralName") + + if naming_authority is not None and not isinstance( + naming_authority, NamingAuthority + ): + raise TypeError("naming_authority must be a NamingAuthority") + + profession_infos = list(profession_infos) + if not all( + isinstance(info, ProfessionInfo) for info in profession_infos + ): + raise TypeError( + "Every item in the profession_infos list must be a " + "ProfessionInfo" + ) + + self._admission_authority = admission_authority + self._naming_authority = naming_authority + self._profession_infos = profession_infos + + @property + def admission_authority(self) -> GeneralName | None: + return self._admission_authority + + @property + def naming_authority(self) -> NamingAuthority | None: + return self._naming_authority + + @property + def profession_infos(self) -> list[ProfessionInfo]: + return self._profession_infos + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, Admission): + return NotImplemented + + return ( + self.admission_authority == other.admission_authority + and self.naming_authority == other.naming_authority + and self.profession_infos == other.profession_infos + ) + + def __hash__(self) -> int: + return hash( + ( + self.admission_authority, + self.naming_authority, + tuple(self.profession_infos), + ) + ) + + +class Admissions(ExtensionType): + oid = ExtensionOID.ADMISSIONS + + def __init__( + self, + authority: GeneralName | None, + admissions: Iterable[Admission], + ) -> None: + if authority is not None and not isinstance(authority, GeneralName): + raise TypeError("authority must be a GeneralName") + + admissions = list(admissions) + if not all( + isinstance(admission, Admission) for admission in admissions + ): + raise TypeError( + "Every item in the contents_of_admissions list must be an " + "Admission" + ) + + self._authority = authority + self._admissions = admissions + + __len__, __iter__, __getitem__ = _make_sequence_methods("_admissions") + + @property + def authority(self) -> GeneralName | None: + return self._authority + + def __repr__(self) -> str: + return ( + f"" + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, Admissions): + return NotImplemented + + return ( + self.authority == other.authority + and self._admissions == other._admissions + ) + + def __hash__(self) -> int: + return hash((self.authority, tuple(self._admissions))) + + def public_bytes(self) -> bytes: + return rust_x509.encode_extension_value(self) + + +class UnrecognizedExtension(ExtensionType): + def __init__(self, oid: ObjectIdentifier, value: bytes) -> None: + if not isinstance(oid, ObjectIdentifier): + raise TypeError("oid must be an ObjectIdentifier") + self._oid = oid + self._value = value + + @property + def oid(self) -> ObjectIdentifier: # type: ignore[override] + return self._oid + + @property + def value(self) -> bytes: + return self._value + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, UnrecognizedExtension): + return NotImplemented + + return self.oid == other.oid and self.value == other.value + + def __hash__(self) -> int: + return hash((self.oid, self.value)) + + def public_bytes(self) -> bytes: + return self.value diff --git a/venv/lib/python3.9/site-packages/cryptography/x509/general_name.py b/venv/lib/python3.9/site-packages/cryptography/x509/general_name.py new file mode 100644 index 0000000..672f287 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/x509/general_name.py @@ -0,0 +1,281 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import abc +import ipaddress +import typing +from email.utils import parseaddr + +from cryptography.x509.name import Name +from cryptography.x509.oid import ObjectIdentifier + +_IPAddressTypes = typing.Union[ + ipaddress.IPv4Address, + ipaddress.IPv6Address, + ipaddress.IPv4Network, + ipaddress.IPv6Network, +] + + +class UnsupportedGeneralNameType(Exception): + pass + + +class GeneralName(metaclass=abc.ABCMeta): + @property + @abc.abstractmethod + def value(self) -> typing.Any: + """ + Return the value of the object + """ + + +class RFC822Name(GeneralName): + def __init__(self, value: str) -> None: + if isinstance(value, str): + try: + value.encode("ascii") + except UnicodeEncodeError: + raise ValueError( + "RFC822Name values should be passed as an A-label string. " + "This means unicode characters should be encoded via " + "a library like idna." + ) + else: + raise TypeError("value must be string") + + name, address = parseaddr(value) + if name or not address: + # parseaddr has found a name (e.g. Name ) or the entire + # value is an empty string. + raise ValueError("Invalid rfc822name value") + + self._value = value + + @property + def value(self) -> str: + return self._value + + @classmethod + def _init_without_validation(cls, value: str) -> RFC822Name: + instance = cls.__new__(cls) + instance._value = value + return instance + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, RFC822Name): + return NotImplemented + + return self.value == other.value + + def __hash__(self) -> int: + return hash(self.value) + + +class DNSName(GeneralName): + def __init__(self, value: str) -> None: + if isinstance(value, str): + try: + value.encode("ascii") + except UnicodeEncodeError: + raise ValueError( + "DNSName values should be passed as an A-label string. " + "This means unicode characters should be encoded via " + "a library like idna." + ) + else: + raise TypeError("value must be string") + + self._value = value + + @property + def value(self) -> str: + return self._value + + @classmethod + def _init_without_validation(cls, value: str) -> DNSName: + instance = cls.__new__(cls) + instance._value = value + return instance + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, DNSName): + return NotImplemented + + return self.value == other.value + + def __hash__(self) -> int: + return hash(self.value) + + +class UniformResourceIdentifier(GeneralName): + def __init__(self, value: str) -> None: + if isinstance(value, str): + try: + value.encode("ascii") + except UnicodeEncodeError: + raise ValueError( + "URI values should be passed as an A-label string. " + "This means unicode characters should be encoded via " + "a library like idna." + ) + else: + raise TypeError("value must be string") + + self._value = value + + @property + def value(self) -> str: + return self._value + + @classmethod + def _init_without_validation(cls, value: str) -> UniformResourceIdentifier: + instance = cls.__new__(cls) + instance._value = value + return instance + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, UniformResourceIdentifier): + return NotImplemented + + return self.value == other.value + + def __hash__(self) -> int: + return hash(self.value) + + +class DirectoryName(GeneralName): + def __init__(self, value: Name) -> None: + if not isinstance(value, Name): + raise TypeError("value must be a Name") + + self._value = value + + @property + def value(self) -> Name: + return self._value + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, DirectoryName): + return NotImplemented + + return self.value == other.value + + def __hash__(self) -> int: + return hash(self.value) + + +class RegisteredID(GeneralName): + def __init__(self, value: ObjectIdentifier) -> None: + if not isinstance(value, ObjectIdentifier): + raise TypeError("value must be an ObjectIdentifier") + + self._value = value + + @property + def value(self) -> ObjectIdentifier: + return self._value + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, RegisteredID): + return NotImplemented + + return self.value == other.value + + def __hash__(self) -> int: + return hash(self.value) + + +class IPAddress(GeneralName): + def __init__(self, value: _IPAddressTypes) -> None: + if not isinstance( + value, + ( + ipaddress.IPv4Address, + ipaddress.IPv6Address, + ipaddress.IPv4Network, + ipaddress.IPv6Network, + ), + ): + raise TypeError( + "value must be an instance of ipaddress.IPv4Address, " + "ipaddress.IPv6Address, ipaddress.IPv4Network, or " + "ipaddress.IPv6Network" + ) + + self._value = value + + @property + def value(self) -> _IPAddressTypes: + return self._value + + def _packed(self) -> bytes: + if isinstance( + self.value, (ipaddress.IPv4Address, ipaddress.IPv6Address) + ): + return self.value.packed + else: + return ( + self.value.network_address.packed + self.value.netmask.packed + ) + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, IPAddress): + return NotImplemented + + return self.value == other.value + + def __hash__(self) -> int: + return hash(self.value) + + +class OtherName(GeneralName): + def __init__(self, type_id: ObjectIdentifier, value: bytes) -> None: + if not isinstance(type_id, ObjectIdentifier): + raise TypeError("type_id must be an ObjectIdentifier") + if not isinstance(value, bytes): + raise TypeError("value must be a binary string") + + self._type_id = type_id + self._value = value + + @property + def type_id(self) -> ObjectIdentifier: + return self._type_id + + @property + def value(self) -> bytes: + return self._value + + def __repr__(self) -> str: + return f"" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, OtherName): + return NotImplemented + + return self.type_id == other.type_id and self.value == other.value + + def __hash__(self) -> int: + return hash((self.type_id, self.value)) diff --git a/venv/lib/python3.9/site-packages/cryptography/x509/name.py b/venv/lib/python3.9/site-packages/cryptography/x509/name.py new file mode 100644 index 0000000..907f96a --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/x509/name.py @@ -0,0 +1,482 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import binascii +import re +import sys +import typing +import warnings +from collections.abc import Iterable, Iterator + +from cryptography import utils +from cryptography.hazmat.bindings._rust import x509 as rust_x509 +from cryptography.x509.oid import NameOID, ObjectIdentifier + + +class _ASN1Type(utils.Enum): + BitString = 3 + OctetString = 4 + UTF8String = 12 + NumericString = 18 + PrintableString = 19 + T61String = 20 + IA5String = 22 + UTCTime = 23 + GeneralizedTime = 24 + VisibleString = 26 + UniversalString = 28 + BMPString = 30 + + +_ASN1_TYPE_TO_ENUM = {i.value: i for i in _ASN1Type} +_NAMEOID_DEFAULT_TYPE: dict[ObjectIdentifier, _ASN1Type] = { + NameOID.COUNTRY_NAME: _ASN1Type.PrintableString, + NameOID.JURISDICTION_COUNTRY_NAME: _ASN1Type.PrintableString, + NameOID.SERIAL_NUMBER: _ASN1Type.PrintableString, + NameOID.DN_QUALIFIER: _ASN1Type.PrintableString, + NameOID.EMAIL_ADDRESS: _ASN1Type.IA5String, + NameOID.DOMAIN_COMPONENT: _ASN1Type.IA5String, +} + +# Type alias +_OidNameMap = typing.Mapping[ObjectIdentifier, str] +_NameOidMap = typing.Mapping[str, ObjectIdentifier] + +#: Short attribute names from RFC 4514: +#: https://tools.ietf.org/html/rfc4514#page-7 +_NAMEOID_TO_NAME: _OidNameMap = { + NameOID.COMMON_NAME: "CN", + NameOID.LOCALITY_NAME: "L", + NameOID.STATE_OR_PROVINCE_NAME: "ST", + NameOID.ORGANIZATION_NAME: "O", + NameOID.ORGANIZATIONAL_UNIT_NAME: "OU", + NameOID.COUNTRY_NAME: "C", + NameOID.STREET_ADDRESS: "STREET", + NameOID.DOMAIN_COMPONENT: "DC", + NameOID.USER_ID: "UID", +} +_NAME_TO_NAMEOID = {v: k for k, v in _NAMEOID_TO_NAME.items()} + +_NAMEOID_LENGTH_LIMIT = { + NameOID.COUNTRY_NAME: (2, 2), + NameOID.JURISDICTION_COUNTRY_NAME: (2, 2), + NameOID.COMMON_NAME: (1, 64), +} + + +def _escape_dn_value(val: str | bytes) -> str: + """Escape special characters in RFC4514 Distinguished Name value.""" + + if not val: + return "" + + # RFC 4514 Section 2.4 defines the value as being the # (U+0023) character + # followed by the hexadecimal encoding of the octets. + if isinstance(val, bytes): + return "#" + binascii.hexlify(val).decode("utf8") + + # See https://tools.ietf.org/html/rfc4514#section-2.4 + val = val.replace("\\", "\\\\") + val = val.replace('"', '\\"') + val = val.replace("+", "\\+") + val = val.replace(",", "\\,") + val = val.replace(";", "\\;") + val = val.replace("<", "\\<") + val = val.replace(">", "\\>") + val = val.replace("\0", "\\00") + + if val[0] == "#" or (val[0] == " " and len(val) > 1): + val = "\\" + val + if val[-1] == " ": + val = val[:-1] + "\\ " + + return val + + +def _unescape_dn_value(val: str) -> str: + if not val: + return "" + + # See https://tools.ietf.org/html/rfc4514#section-3 + + # special = escaped / SPACE / SHARP / EQUALS + # escaped = DQUOTE / PLUS / COMMA / SEMI / LANGLE / RANGLE + def sub(m): + val = m.group(0) + # Special character escape + if len(val) == 2: + return val[1:] + + # Unicode string of hex + return binascii.unhexlify(val.replace("\\", "")).decode() + + return _RFC4514NameParser._PAIR_MULTI_RE.sub(sub, val) + + +NameAttributeValueType = typing.TypeVar( + "NameAttributeValueType", + typing.Union[str, bytes], + str, + bytes, + covariant=True, +) + + +class NameAttribute(typing.Generic[NameAttributeValueType]): + def __init__( + self, + oid: ObjectIdentifier, + value: NameAttributeValueType, + _type: _ASN1Type | None = None, + *, + _validate: bool = True, + ) -> None: + if not isinstance(oid, ObjectIdentifier): + raise TypeError( + "oid argument must be an ObjectIdentifier instance." + ) + if _type == _ASN1Type.BitString: + if oid != NameOID.X500_UNIQUE_IDENTIFIER: + raise TypeError( + "oid must be X500_UNIQUE_IDENTIFIER for BitString type." + ) + if not isinstance(value, bytes): + raise TypeError("value must be bytes for BitString") + elif not isinstance(value, str): + raise TypeError("value argument must be a str") + + length_limits = _NAMEOID_LENGTH_LIMIT.get(oid) + if length_limits is not None: + min_length, max_length = length_limits + assert isinstance(value, str) + c_len = len(value.encode("utf8")) + if c_len < min_length or c_len > max_length: + msg = ( + f"Attribute's length must be >= {min_length} and " + f"<= {max_length}, but it was {c_len}" + ) + if _validate is True: + raise ValueError(msg) + else: + warnings.warn(msg, stacklevel=2) + + # The appropriate ASN1 string type varies by OID and is defined across + # multiple RFCs including 2459, 3280, and 5280. In general UTF8String + # is preferred (2459), but 3280 and 5280 specify several OIDs with + # alternate types. This means when we see the sentinel value we need + # to look up whether the OID has a non-UTF8 type. If it does, set it + # to that. Otherwise, UTF8! + if _type is None: + _type = _NAMEOID_DEFAULT_TYPE.get(oid, _ASN1Type.UTF8String) + + if not isinstance(_type, _ASN1Type): + raise TypeError("_type must be from the _ASN1Type enum") + + self._oid = oid + self._value: NameAttributeValueType = value + self._type: _ASN1Type = _type + + @property + def oid(self) -> ObjectIdentifier: + return self._oid + + @property + def value(self) -> NameAttributeValueType: + return self._value + + @property + def rfc4514_attribute_name(self) -> str: + """ + The short attribute name (for example "CN") if available, + otherwise the OID dotted string. + """ + return _NAMEOID_TO_NAME.get(self.oid, self.oid.dotted_string) + + def rfc4514_string( + self, attr_name_overrides: _OidNameMap | None = None + ) -> str: + """ + Format as RFC4514 Distinguished Name string. + + Use short attribute name if available, otherwise fall back to OID + dotted string. + """ + attr_name = ( + attr_name_overrides.get(self.oid) if attr_name_overrides else None + ) + if attr_name is None: + attr_name = self.rfc4514_attribute_name + + return f"{attr_name}={_escape_dn_value(self.value)}" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, NameAttribute): + return NotImplemented + + return self.oid == other.oid and self.value == other.value + + def __hash__(self) -> int: + return hash((self.oid, self.value)) + + def __repr__(self) -> str: + return f"" + + +class RelativeDistinguishedName: + def __init__(self, attributes: Iterable[NameAttribute[str | bytes]]): + attributes = list(attributes) + if not attributes: + raise ValueError("a relative distinguished name cannot be empty") + if not all(isinstance(x, NameAttribute) for x in attributes): + raise TypeError("attributes must be an iterable of NameAttribute") + + # Keep list and frozenset to preserve attribute order where it matters + self._attributes = attributes + self._attribute_set = frozenset(attributes) + + if len(self._attribute_set) != len(attributes): + raise ValueError("duplicate attributes are not allowed") + + def get_attributes_for_oid( + self, + oid: ObjectIdentifier, + ) -> list[NameAttribute[str | bytes]]: + return [i for i in self if i.oid == oid] + + def rfc4514_string( + self, attr_name_overrides: _OidNameMap | None = None + ) -> str: + """ + Format as RFC4514 Distinguished Name string. + + Within each RDN, attributes are joined by '+', although that is rarely + used in certificates. + """ + return "+".join( + attr.rfc4514_string(attr_name_overrides) + for attr in self._attributes + ) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, RelativeDistinguishedName): + return NotImplemented + + return self._attribute_set == other._attribute_set + + def __hash__(self) -> int: + return hash(self._attribute_set) + + def __iter__(self) -> Iterator[NameAttribute[str | bytes]]: + return iter(self._attributes) + + def __len__(self) -> int: + return len(self._attributes) + + def __repr__(self) -> str: + return f"" + + +class Name: + @typing.overload + def __init__( + self, attributes: Iterable[NameAttribute[str | bytes]] + ) -> None: ... + + @typing.overload + def __init__( + self, attributes: Iterable[RelativeDistinguishedName] + ) -> None: ... + + def __init__( + self, + attributes: Iterable[ + NameAttribute[str | bytes] | RelativeDistinguishedName + ], + ) -> None: + attributes = list(attributes) + if all(isinstance(x, NameAttribute) for x in attributes): + self._attributes = [ + RelativeDistinguishedName([typing.cast(NameAttribute, x)]) + for x in attributes + ] + elif all(isinstance(x, RelativeDistinguishedName) for x in attributes): + self._attributes = typing.cast( + typing.List[RelativeDistinguishedName], attributes + ) + else: + raise TypeError( + "attributes must be a list of NameAttribute" + " or a list RelativeDistinguishedName" + ) + + @classmethod + def from_rfc4514_string( + cls, + data: str, + attr_name_overrides: _NameOidMap | None = None, + ) -> Name: + return _RFC4514NameParser(data, attr_name_overrides or {}).parse() + + def rfc4514_string( + self, attr_name_overrides: _OidNameMap | None = None + ) -> str: + """ + Format as RFC4514 Distinguished Name string. + For example 'CN=foobar.com,O=Foo Corp,C=US' + + An X.509 name is a two-level structure: a list of sets of attributes. + Each list element is separated by ',' and within each list element, set + elements are separated by '+'. The latter is almost never used in + real world certificates. According to RFC4514 section 2.1 the + RDNSequence must be reversed when converting to string representation. + """ + return ",".join( + attr.rfc4514_string(attr_name_overrides) + for attr in reversed(self._attributes) + ) + + def get_attributes_for_oid( + self, + oid: ObjectIdentifier, + ) -> list[NameAttribute[str | bytes]]: + return [i for i in self if i.oid == oid] + + @property + def rdns(self) -> list[RelativeDistinguishedName]: + return self._attributes + + def public_bytes(self, backend: typing.Any = None) -> bytes: + return rust_x509.encode_name_bytes(self) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, Name): + return NotImplemented + + return self._attributes == other._attributes + + def __hash__(self) -> int: + # TODO: this is relatively expensive, if this looks like a bottleneck + # for you, consider optimizing! + return hash(tuple(self._attributes)) + + def __iter__(self) -> Iterator[NameAttribute[str | bytes]]: + for rdn in self._attributes: + yield from rdn + + def __len__(self) -> int: + return sum(len(rdn) for rdn in self._attributes) + + def __repr__(self) -> str: + return f"" + + +class _RFC4514NameParser: + _OID_RE = re.compile(r"(0|([1-9]\d*))(\.(0|([1-9]\d*)))+") + _DESCR_RE = re.compile(r"[a-zA-Z][a-zA-Z\d-]*") + + _ESCAPE_SPECIAL = r"[\\ #=\"\+,;<>]" + _ESCAPE_HEX = r"[\da-zA-Z]{2}" + _PAIR = rf"\\({_ESCAPE_SPECIAL}|{_ESCAPE_HEX})" + _PAIR_MULTI_RE = re.compile(rf"(\\{_ESCAPE_SPECIAL})|((\\{_ESCAPE_HEX})+)") + _LUTF1 = r"[\x01-\x1f\x21\x24-\x2A\x2D-\x3A\x3D\x3F-\x5B\x5D-\x7F]" + _SUTF1 = r"[\x01-\x21\x23-\x2A\x2D-\x3A\x3D\x3F-\x5B\x5D-\x7F]" + _TUTF1 = r"[\x01-\x1F\x21\x23-\x2A\x2D-\x3A\x3D\x3F-\x5B\x5D-\x7F]" + _UTFMB = rf"[\x80-{chr(sys.maxunicode)}]" + _LEADCHAR = rf"{_LUTF1}|{_UTFMB}" + _STRINGCHAR = rf"{_SUTF1}|{_UTFMB}" + _TRAILCHAR = rf"{_TUTF1}|{_UTFMB}" + _STRING_RE = re.compile( + rf""" + ( + ({_LEADCHAR}|{_PAIR}) + ( + ({_STRINGCHAR}|{_PAIR})* + ({_TRAILCHAR}|{_PAIR}) + )? + )? + """, + re.VERBOSE, + ) + _HEXSTRING_RE = re.compile(r"#([\da-zA-Z]{2})+") + + def __init__(self, data: str, attr_name_overrides: _NameOidMap) -> None: + self._data = data + self._idx = 0 + + self._attr_name_overrides = attr_name_overrides + + def _has_data(self) -> bool: + return self._idx < len(self._data) + + def _peek(self) -> str | None: + if self._has_data(): + return self._data[self._idx] + return None + + def _read_char(self, ch: str) -> None: + if self._peek() != ch: + raise ValueError + self._idx += 1 + + def _read_re(self, pat) -> str: + match = pat.match(self._data, pos=self._idx) + if match is None: + raise ValueError + val = match.group() + self._idx += len(val) + return val + + def parse(self) -> Name: + """ + Parses the `data` string and converts it to a Name. + + According to RFC4514 section 2.1 the RDNSequence must be + reversed when converting to string representation. So, when + we parse it, we need to reverse again to get the RDNs on the + correct order. + """ + + if not self._has_data(): + return Name([]) + + rdns = [self._parse_rdn()] + + while self._has_data(): + self._read_char(",") + rdns.append(self._parse_rdn()) + + return Name(reversed(rdns)) + + def _parse_rdn(self) -> RelativeDistinguishedName: + nas = [self._parse_na()] + while self._peek() == "+": + self._read_char("+") + nas.append(self._parse_na()) + + return RelativeDistinguishedName(nas) + + def _parse_na(self) -> NameAttribute[str]: + try: + oid_value = self._read_re(self._OID_RE) + except ValueError: + name = self._read_re(self._DESCR_RE) + oid = self._attr_name_overrides.get( + name, _NAME_TO_NAMEOID.get(name) + ) + if oid is None: + raise ValueError + else: + oid = ObjectIdentifier(oid_value) + + self._read_char("=") + if self._peek() == "#": + value = self._read_re(self._HEXSTRING_RE) + value = binascii.unhexlify(value[1:]).decode() + else: + raw_value = self._read_re(self._STRING_RE) + value = _unescape_dn_value(raw_value) + + return NameAttribute(oid, value) diff --git a/venv/lib/python3.9/site-packages/cryptography/x509/ocsp.py b/venv/lib/python3.9/site-packages/cryptography/x509/ocsp.py new file mode 100644 index 0000000..f61ed80 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/x509/ocsp.py @@ -0,0 +1,379 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import datetime +from collections.abc import Iterable + +from cryptography import utils, x509 +from cryptography.hazmat.bindings._rust import ocsp +from cryptography.hazmat.primitives import hashes +from cryptography.hazmat.primitives.asymmetric.types import ( + CertificateIssuerPrivateKeyTypes, +) +from cryptography.x509.base import _reject_duplicate_extension + + +class OCSPResponderEncoding(utils.Enum): + HASH = "By Hash" + NAME = "By Name" + + +class OCSPResponseStatus(utils.Enum): + SUCCESSFUL = 0 + MALFORMED_REQUEST = 1 + INTERNAL_ERROR = 2 + TRY_LATER = 3 + SIG_REQUIRED = 5 + UNAUTHORIZED = 6 + + +_ALLOWED_HASHES = ( + hashes.SHA1, + hashes.SHA224, + hashes.SHA256, + hashes.SHA384, + hashes.SHA512, +) + + +def _verify_algorithm(algorithm: hashes.HashAlgorithm) -> None: + if not isinstance(algorithm, _ALLOWED_HASHES): + raise ValueError( + "Algorithm must be SHA1, SHA224, SHA256, SHA384, or SHA512" + ) + + +class OCSPCertStatus(utils.Enum): + GOOD = 0 + REVOKED = 1 + UNKNOWN = 2 + + +class _SingleResponse: + def __init__( + self, + resp: tuple[x509.Certificate, x509.Certificate] | None, + resp_hash: tuple[bytes, bytes, int] | None, + algorithm: hashes.HashAlgorithm, + cert_status: OCSPCertStatus, + this_update: datetime.datetime, + next_update: datetime.datetime | None, + revocation_time: datetime.datetime | None, + revocation_reason: x509.ReasonFlags | None, + ): + _verify_algorithm(algorithm) + if not isinstance(this_update, datetime.datetime): + raise TypeError("this_update must be a datetime object") + if next_update is not None and not isinstance( + next_update, datetime.datetime + ): + raise TypeError("next_update must be a datetime object or None") + + self._resp = resp + self._resp_hash = resp_hash + self._algorithm = algorithm + self._this_update = this_update + self._next_update = next_update + + if not isinstance(cert_status, OCSPCertStatus): + raise TypeError( + "cert_status must be an item from the OCSPCertStatus enum" + ) + if cert_status is not OCSPCertStatus.REVOKED: + if revocation_time is not None: + raise ValueError( + "revocation_time can only be provided if the certificate " + "is revoked" + ) + if revocation_reason is not None: + raise ValueError( + "revocation_reason can only be provided if the certificate" + " is revoked" + ) + else: + if not isinstance(revocation_time, datetime.datetime): + raise TypeError("revocation_time must be a datetime object") + + if revocation_reason is not None and not isinstance( + revocation_reason, x509.ReasonFlags + ): + raise TypeError( + "revocation_reason must be an item from the ReasonFlags " + "enum or None" + ) + + self._cert_status = cert_status + self._revocation_time = revocation_time + self._revocation_reason = revocation_reason + + +OCSPRequest = ocsp.OCSPRequest +OCSPResponse = ocsp.OCSPResponse +OCSPSingleResponse = ocsp.OCSPSingleResponse + + +class OCSPRequestBuilder: + def __init__( + self, + request: tuple[ + x509.Certificate, x509.Certificate, hashes.HashAlgorithm + ] + | None = None, + request_hash: tuple[bytes, bytes, int, hashes.HashAlgorithm] + | None = None, + extensions: list[x509.Extension[x509.ExtensionType]] = [], + ) -> None: + self._request = request + self._request_hash = request_hash + self._extensions = extensions + + def add_certificate( + self, + cert: x509.Certificate, + issuer: x509.Certificate, + algorithm: hashes.HashAlgorithm, + ) -> OCSPRequestBuilder: + if self._request is not None or self._request_hash is not None: + raise ValueError("Only one certificate can be added to a request") + + _verify_algorithm(algorithm) + if not isinstance(cert, x509.Certificate) or not isinstance( + issuer, x509.Certificate + ): + raise TypeError("cert and issuer must be a Certificate") + + return OCSPRequestBuilder( + (cert, issuer, algorithm), self._request_hash, self._extensions + ) + + def add_certificate_by_hash( + self, + issuer_name_hash: bytes, + issuer_key_hash: bytes, + serial_number: int, + algorithm: hashes.HashAlgorithm, + ) -> OCSPRequestBuilder: + if self._request is not None or self._request_hash is not None: + raise ValueError("Only one certificate can be added to a request") + + if not isinstance(serial_number, int): + raise TypeError("serial_number must be an integer") + + _verify_algorithm(algorithm) + utils._check_bytes("issuer_name_hash", issuer_name_hash) + utils._check_bytes("issuer_key_hash", issuer_key_hash) + if algorithm.digest_size != len( + issuer_name_hash + ) or algorithm.digest_size != len(issuer_key_hash): + raise ValueError( + "issuer_name_hash and issuer_key_hash must be the same length " + "as the digest size of the algorithm" + ) + + return OCSPRequestBuilder( + self._request, + (issuer_name_hash, issuer_key_hash, serial_number, algorithm), + self._extensions, + ) + + def add_extension( + self, extval: x509.ExtensionType, critical: bool + ) -> OCSPRequestBuilder: + if not isinstance(extval, x509.ExtensionType): + raise TypeError("extension must be an ExtensionType") + + extension = x509.Extension(extval.oid, critical, extval) + _reject_duplicate_extension(extension, self._extensions) + + return OCSPRequestBuilder( + self._request, self._request_hash, [*self._extensions, extension] + ) + + def build(self) -> OCSPRequest: + if self._request is None and self._request_hash is None: + raise ValueError("You must add a certificate before building") + + return ocsp.create_ocsp_request(self) + + +class OCSPResponseBuilder: + def __init__( + self, + response: _SingleResponse | None = None, + responder_id: tuple[x509.Certificate, OCSPResponderEncoding] + | None = None, + certs: list[x509.Certificate] | None = None, + extensions: list[x509.Extension[x509.ExtensionType]] = [], + ): + self._response = response + self._responder_id = responder_id + self._certs = certs + self._extensions = extensions + + def add_response( + self, + cert: x509.Certificate, + issuer: x509.Certificate, + algorithm: hashes.HashAlgorithm, + cert_status: OCSPCertStatus, + this_update: datetime.datetime, + next_update: datetime.datetime | None, + revocation_time: datetime.datetime | None, + revocation_reason: x509.ReasonFlags | None, + ) -> OCSPResponseBuilder: + if self._response is not None: + raise ValueError("Only one response per OCSPResponse.") + + if not isinstance(cert, x509.Certificate) or not isinstance( + issuer, x509.Certificate + ): + raise TypeError("cert and issuer must be a Certificate") + + singleresp = _SingleResponse( + (cert, issuer), + None, + algorithm, + cert_status, + this_update, + next_update, + revocation_time, + revocation_reason, + ) + return OCSPResponseBuilder( + singleresp, + self._responder_id, + self._certs, + self._extensions, + ) + + def add_response_by_hash( + self, + issuer_name_hash: bytes, + issuer_key_hash: bytes, + serial_number: int, + algorithm: hashes.HashAlgorithm, + cert_status: OCSPCertStatus, + this_update: datetime.datetime, + next_update: datetime.datetime | None, + revocation_time: datetime.datetime | None, + revocation_reason: x509.ReasonFlags | None, + ) -> OCSPResponseBuilder: + if self._response is not None: + raise ValueError("Only one response per OCSPResponse.") + + if not isinstance(serial_number, int): + raise TypeError("serial_number must be an integer") + + utils._check_bytes("issuer_name_hash", issuer_name_hash) + utils._check_bytes("issuer_key_hash", issuer_key_hash) + _verify_algorithm(algorithm) + if algorithm.digest_size != len( + issuer_name_hash + ) or algorithm.digest_size != len(issuer_key_hash): + raise ValueError( + "issuer_name_hash and issuer_key_hash must be the same length " + "as the digest size of the algorithm" + ) + + singleresp = _SingleResponse( + None, + (issuer_name_hash, issuer_key_hash, serial_number), + algorithm, + cert_status, + this_update, + next_update, + revocation_time, + revocation_reason, + ) + return OCSPResponseBuilder( + singleresp, + self._responder_id, + self._certs, + self._extensions, + ) + + def responder_id( + self, encoding: OCSPResponderEncoding, responder_cert: x509.Certificate + ) -> OCSPResponseBuilder: + if self._responder_id is not None: + raise ValueError("responder_id can only be set once") + if not isinstance(responder_cert, x509.Certificate): + raise TypeError("responder_cert must be a Certificate") + if not isinstance(encoding, OCSPResponderEncoding): + raise TypeError( + "encoding must be an element from OCSPResponderEncoding" + ) + + return OCSPResponseBuilder( + self._response, + (responder_cert, encoding), + self._certs, + self._extensions, + ) + + def certificates( + self, certs: Iterable[x509.Certificate] + ) -> OCSPResponseBuilder: + if self._certs is not None: + raise ValueError("certificates may only be set once") + certs = list(certs) + if len(certs) == 0: + raise ValueError("certs must not be an empty list") + if not all(isinstance(x, x509.Certificate) for x in certs): + raise TypeError("certs must be a list of Certificates") + return OCSPResponseBuilder( + self._response, + self._responder_id, + certs, + self._extensions, + ) + + def add_extension( + self, extval: x509.ExtensionType, critical: bool + ) -> OCSPResponseBuilder: + if not isinstance(extval, x509.ExtensionType): + raise TypeError("extension must be an ExtensionType") + + extension = x509.Extension(extval.oid, critical, extval) + _reject_duplicate_extension(extension, self._extensions) + + return OCSPResponseBuilder( + self._response, + self._responder_id, + self._certs, + [*self._extensions, extension], + ) + + def sign( + self, + private_key: CertificateIssuerPrivateKeyTypes, + algorithm: hashes.HashAlgorithm | None, + ) -> OCSPResponse: + if self._response is None: + raise ValueError("You must add a response before signing") + if self._responder_id is None: + raise ValueError("You must add a responder_id before signing") + + return ocsp.create_ocsp_response( + OCSPResponseStatus.SUCCESSFUL, self, private_key, algorithm + ) + + @classmethod + def build_unsuccessful( + cls, response_status: OCSPResponseStatus + ) -> OCSPResponse: + if not isinstance(response_status, OCSPResponseStatus): + raise TypeError( + "response_status must be an item from OCSPResponseStatus" + ) + if response_status is OCSPResponseStatus.SUCCESSFUL: + raise ValueError("response_status cannot be SUCCESSFUL") + + return ocsp.create_ocsp_response(response_status, None, None, None) + + +load_der_ocsp_request = ocsp.load_der_ocsp_request +load_der_ocsp_response = ocsp.load_der_ocsp_response diff --git a/venv/lib/python3.9/site-packages/cryptography/x509/oid.py b/venv/lib/python3.9/site-packages/cryptography/x509/oid.py new file mode 100644 index 0000000..520fc7a --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/x509/oid.py @@ -0,0 +1,37 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +from cryptography.hazmat._oid import ( + AttributeOID, + AuthorityInformationAccessOID, + CertificatePoliciesOID, + CRLEntryExtensionOID, + ExtendedKeyUsageOID, + ExtensionOID, + NameOID, + ObjectIdentifier, + OCSPExtensionOID, + OtherNameFormOID, + PublicKeyAlgorithmOID, + SignatureAlgorithmOID, + SubjectInformationAccessOID, +) + +__all__ = [ + "AttributeOID", + "AuthorityInformationAccessOID", + "CRLEntryExtensionOID", + "CertificatePoliciesOID", + "ExtendedKeyUsageOID", + "ExtensionOID", + "NameOID", + "OCSPExtensionOID", + "ObjectIdentifier", + "OtherNameFormOID", + "PublicKeyAlgorithmOID", + "SignatureAlgorithmOID", + "SubjectInformationAccessOID", +] diff --git a/venv/lib/python3.9/site-packages/cryptography/x509/verification.py b/venv/lib/python3.9/site-packages/cryptography/x509/verification.py new file mode 100644 index 0000000..2db4324 --- /dev/null +++ b/venv/lib/python3.9/site-packages/cryptography/x509/verification.py @@ -0,0 +1,34 @@ +# This file is dual licensed under the terms of the Apache License, Version +# 2.0, and the BSD License. See the LICENSE file in the root of this repository +# for complete details. + +from __future__ import annotations + +import typing + +from cryptography.hazmat.bindings._rust import x509 as rust_x509 +from cryptography.x509.general_name import DNSName, IPAddress + +__all__ = [ + "ClientVerifier", + "Criticality", + "ExtensionPolicy", + "Policy", + "PolicyBuilder", + "ServerVerifier", + "Store", + "Subject", + "VerificationError", + "VerifiedClient", +] + +Store = rust_x509.Store +Subject = typing.Union[DNSName, IPAddress] +VerifiedClient = rust_x509.VerifiedClient +ClientVerifier = rust_x509.ClientVerifier +ServerVerifier = rust_x509.ServerVerifier +PolicyBuilder = rust_x509.PolicyBuilder +Policy = rust_x509.Policy +ExtensionPolicy = rust_x509.ExtensionPolicy +Criticality = rust_x509.Criticality +VerificationError = rust_x509.VerificationError diff --git a/venv/lib/python3.9/site-packages/distutils-precedence.pth b/venv/lib/python3.9/site-packages/distutils-precedence.pth new file mode 100644 index 0000000..7f009fe --- /dev/null +++ b/venv/lib/python3.9/site-packages/distutils-precedence.pth @@ -0,0 +1 @@ +import os; var = 'SETUPTOOLS_USE_DISTUTILS'; enabled = os.environ.get(var, 'local') == 'local'; enabled and __import__('_distutils_hack').add_shim(); diff --git a/venv/lib/python3.9/site-packages/engineio/__init__.py b/venv/lib/python3.9/site-packages/engineio/__init__.py new file mode 100644 index 0000000..4919efd --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/__init__.py @@ -0,0 +1,13 @@ +from .client import Client +from .middleware import WSGIApp, Middleware +from .server import Server +from .async_server import AsyncServer +from .async_client import AsyncClient +from .async_drivers.asgi import ASGIApp +try: + from .async_drivers.tornado import get_tornado_handler +except ImportError: # pragma: no cover + get_tornado_handler = None + +__all__ = ['Server', 'WSGIApp', 'Middleware', 'Client', + 'AsyncServer', 'ASGIApp', 'get_tornado_handler', 'AsyncClient'] diff --git a/venv/lib/python3.9/site-packages/engineio/async_client.py b/venv/lib/python3.9/site-packages/engineio/async_client.py new file mode 100644 index 0000000..238ba52 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_client.py @@ -0,0 +1,692 @@ +import asyncio +from http.cookies import SimpleCookie +import inspect +import signal +import ssl +import threading + +try: + import aiohttp +except ImportError: # pragma: no cover + aiohttp = None + +from . import base_client +from . import exceptions +from . import packet +from . import payload + +async_signal_handler_set = False + +# this set is used to keep references to background tasks to prevent them from +# being garbage collected mid-execution. Solution taken from +# https://docs.python.org/3/library/asyncio-task.html#asyncio.create_task +task_reference_holder = set() + + +def async_signal_handler(): + """SIGINT handler. + + Disconnect all active async clients. + """ + async def _handler(): # pragma: no cover + for c in base_client.connected_clients[:]: + if c.is_asyncio_based(): + await c.disconnect() + + # cancel all running tasks + tasks = [task for task in asyncio.all_tasks() if task is not + asyncio.current_task()] + for task in tasks: + task.cancel() + await asyncio.gather(*tasks, return_exceptions=True) + asyncio.get_running_loop().stop() + + asyncio.ensure_future(_handler()) + + +class AsyncClient(base_client.BaseClient): + """An Engine.IO client for asyncio. + + This class implements a fully compliant Engine.IO web client with support + for websocket and long-polling transports, compatible with the asyncio + framework on Python 3.5 or newer. + + :param logger: To enable logging set to ``True`` or pass a logger object to + use. To disable logging set to ``False``. The default is + ``False``. Note that fatal errors are logged even when + ``logger`` is ``False``. + :param json: An alternative JSON module to use for encoding and decoding + packets. Custom json modules must have ``dumps`` and ``loads`` + functions that are compatible with the standard library + versions. This is a process-wide setting, all instantiated + servers and clients must use the same JSON module. + :param request_timeout: A timeout in seconds for requests. The default is + 5 seconds. + :param http_session: an initialized ``aiohttp.ClientSession`` object to be + used when sending requests to the server. Use it if + you need to add special client options such as proxy + servers, SSL certificates, custom CA bundle, etc. + :param ssl_verify: ``True`` to verify SSL certificates, or ``False`` to + skip SSL certificate verification, allowing + connections to servers with self signed certificates. + The default is ``True``. + :param handle_sigint: Set to ``True`` to automatically handle disconnection + when the process is interrupted, or to ``False`` to + leave interrupt handling to the calling application. + Interrupt handling can only be enabled when the + client instance is created in the main thread. + :param websocket_extra_options: Dictionary containing additional keyword + arguments passed to + ``aiohttp.ws_connect()``. + :param timestamp_requests: If ``True`` a timestamp is added to the query + string of Socket.IO requests as a cache-busting + measure. Set to ``False`` to disable. + """ + def is_asyncio_based(self): + return True + + async def connect(self, url, headers=None, transports=None, + engineio_path='engine.io'): + """Connect to an Engine.IO server. + + :param url: The URL of the Engine.IO server. It can include custom + query string parameters if required by the server. + :param headers: A dictionary with custom headers to send with the + connection request. + :param transports: The list of allowed transports. Valid transports + are ``'polling'`` and ``'websocket'``. If not + given, the polling transport is connected first, + then an upgrade to websocket is attempted. + :param engineio_path: The endpoint where the Engine.IO server is + installed. The default value is appropriate for + most cases. + + Note: this method is a coroutine. + + Example usage:: + + eio = engineio.Client() + await eio.connect('http://localhost:5000') + """ + global async_signal_handler_set + if self.handle_sigint and not async_signal_handler_set and \ + threading.current_thread() == threading.main_thread(): + try: + asyncio.get_running_loop().add_signal_handler( + signal.SIGINT, async_signal_handler) + except NotImplementedError: # pragma: no cover + self.logger.warning('Signal handler is unsupported') + async_signal_handler_set = True + + if self.state != 'disconnected': + raise ValueError('Client is not in a disconnected state') + valid_transports = ['polling', 'websocket'] + if transports is not None: + if isinstance(transports, str): + transports = [transports] + transports = [transport for transport in transports + if transport in valid_transports] + if not transports: + raise ValueError('No valid transports provided') + self.transports = transports or valid_transports + return await getattr(self, '_connect_' + self.transports[0])( + url, headers or {}, engineio_path) + + async def wait(self): + """Wait until the connection with the server ends. + + Client applications can use this function to block the main thread + during the life of the connection. + + Note: this method is a coroutine. + """ + if self.read_loop_task: + await self.read_loop_task + + async def send(self, data): + """Send a message to the server. + + :param data: The data to send to the server. Data can be of type + ``str``, ``bytes``, ``list`` or ``dict``. If a ``list`` + or ``dict``, the data will be serialized as JSON. + + Note: this method is a coroutine. + """ + await self._send_packet(packet.Packet(packet.MESSAGE, data=data)) + + async def disconnect(self, abort=False, reason=None): + """Disconnect from the server. + + :param abort: If set to ``True``, do not wait for background tasks + associated with the connection to end. + + Note: this method is a coroutine. + """ + if self.state == 'connected': + await self._send_packet(packet.Packet(packet.CLOSE)) + await self.queue.put(None) + self.state = 'disconnecting' + await self._trigger_event('disconnect', + reason or self.reason.CLIENT_DISCONNECT, + run_async=False) + if self.current_transport == 'websocket': + await self.ws.close() + if not abort: + await self.read_loop_task + self.state = 'disconnected' + try: + base_client.connected_clients.remove(self) + except ValueError: # pragma: no cover + pass + await self._reset() + + def start_background_task(self, target, *args, **kwargs): + """Start a background task. + + This is a utility function that applications can use to start a + background task. + + :param target: the target function to execute. + :param args: arguments to pass to the function. + :param kwargs: keyword arguments to pass to the function. + + The return value is a ``asyncio.Task`` object. + """ + return asyncio.ensure_future(target(*args, **kwargs)) + + async def sleep(self, seconds=0): + """Sleep for the requested amount of time. + + Note: this method is a coroutine. + """ + return await asyncio.sleep(seconds) + + def create_queue(self, *args, **kwargs): + """Create a queue object.""" + return asyncio.Queue(*args, **kwargs) + + def get_queue_empty_exception(self): + """Return the queue empty exception raised by queues created by the + ``create_queue()`` method. + """ + return asyncio.QueueEmpty + + def create_event(self): + """Create an event object.""" + return asyncio.Event() + + async def _reset(self): + super()._reset() + while True: # pragma: no cover + try: + self.queue.get_nowait() + self.queue.task_done() + except self.queue_empty: + break + if not self.external_http: # pragma: no cover + if self.http and not self.http.closed: + await self.http.close() + + def __del__(self): # pragma: no cover + # try to close the aiohttp session if it is still open + if self.http and not self.http.closed: + try: + loop = asyncio.get_event_loop() + if loop.is_running(): + loop.ensure_future(self.http.close()) + else: + loop.run_until_complete(self.http.close()) + except: + pass + + async def _connect_polling(self, url, headers, engineio_path): + """Establish a long-polling connection to the Engine.IO server.""" + if aiohttp is None: # pragma: no cover + self.logger.error('aiohttp not installed -- cannot make HTTP ' + 'requests!') + return + self.base_url = self._get_engineio_url(url, engineio_path, 'polling') + self.logger.info('Attempting polling connection to ' + self.base_url) + r = await self._send_request( + 'GET', self.base_url + self._get_url_timestamp(), headers=headers, + timeout=self.request_timeout) + if r is None or isinstance(r, str): + await self._reset() + raise exceptions.ConnectionError( + r or 'Connection refused by the server') + if r.status < 200 or r.status >= 300: + await self._reset() + try: + arg = await r.json() + except aiohttp.ClientError: + arg = None + raise exceptions.ConnectionError( + 'Unexpected status code {} in server response'.format( + r.status), arg) + try: + p = payload.Payload(encoded_payload=(await r.read()).decode( + 'utf-8')) + except ValueError: + raise exceptions.ConnectionError( + 'Unexpected response from server') from None + open_packet = p.packets[0] + if open_packet.packet_type != packet.OPEN: + raise exceptions.ConnectionError( + 'OPEN packet not returned by server') + self.logger.info( + 'Polling connection accepted with ' + str(open_packet.data)) + self.sid = open_packet.data['sid'] + self.upgrades = open_packet.data['upgrades'] + self.ping_interval = int(open_packet.data['pingInterval']) / 1000.0 + self.ping_timeout = int(open_packet.data['pingTimeout']) / 1000.0 + self.current_transport = 'polling' + self.base_url += '&sid=' + self.sid + + self.state = 'connected' + base_client.connected_clients.append(self) + await self._trigger_event('connect', run_async=False) + + for pkt in p.packets[1:]: + await self._receive_packet(pkt) + + if 'websocket' in self.upgrades and 'websocket' in self.transports: + # attempt to upgrade to websocket + if await self._connect_websocket(url, headers, engineio_path): + # upgrade to websocket succeeded, we're done here + return + + self.write_loop_task = self.start_background_task(self._write_loop) + self.read_loop_task = self.start_background_task( + self._read_loop_polling) + + async def _connect_websocket(self, url, headers, engineio_path): + """Establish or upgrade to a WebSocket connection with the server.""" + if aiohttp is None: # pragma: no cover + self.logger.error('aiohttp package not installed') + return False + websocket_url = self._get_engineio_url(url, engineio_path, + 'websocket') + if self.sid: + self.logger.info( + 'Attempting WebSocket upgrade to ' + websocket_url) + upgrade = True + websocket_url += '&sid=' + self.sid + else: + upgrade = False + self.base_url = websocket_url + self.logger.info( + 'Attempting WebSocket connection to ' + websocket_url) + + if self.http is None or self.http.closed: # pragma: no cover + self.http = aiohttp.ClientSession() + + # extract any new cookies passed in a header so that they can also be + # sent the the WebSocket route + for header, value in headers.items(): + if header.lower() == 'cookie': + ck = SimpleCookie(headers[header]) + self.http.cookie_jar.update_cookies( + {k: m.value for k, m in ck.items()}) + del headers[header] + break + + extra_options = { + 'timeout': aiohttp.ClientWSTimeout(ws_close=self.request_timeout)} + if not self.ssl_verify: + ssl_context = ssl.create_default_context() + ssl_context.check_hostname = False + ssl_context.verify_mode = ssl.CERT_NONE + extra_options['ssl'] = ssl_context + + # combine internally generated options with the ones supplied by the + # caller. The caller's options take precedence. + headers.update(self.websocket_extra_options.pop('headers', {})) + extra_options['headers'] = headers + extra_options.update(self.websocket_extra_options) + + try: + ws = await self.http.ws_connect( + websocket_url + self._get_url_timestamp(), **extra_options) + except (aiohttp.client_exceptions.WSServerHandshakeError, + aiohttp.client_exceptions.ServerConnectionError, + aiohttp.client_exceptions.ClientConnectionError): + if upgrade: + self.logger.warning( + 'WebSocket upgrade failed: connection error') + return False + else: + raise exceptions.ConnectionError('Connection error') + if upgrade: + p = packet.Packet(packet.PING, data='probe').encode() + try: + await ws.send_str(p) + except Exception as e: # pragma: no cover + self.logger.warning( + 'WebSocket upgrade failed: unexpected send exception: %s', + str(e)) + return False + try: + p = (await ws.receive()).data + except Exception as e: # pragma: no cover + self.logger.warning( + 'WebSocket upgrade failed: unexpected recv exception: %s', + str(e)) + return False + pkt = packet.Packet(encoded_packet=p) + if pkt.packet_type != packet.PONG or pkt.data != 'probe': + self.logger.warning( + 'WebSocket upgrade failed: no PONG packet') + return False + p = packet.Packet(packet.UPGRADE).encode() + try: + await ws.send_str(p) + except Exception as e: # pragma: no cover + self.logger.warning( + 'WebSocket upgrade failed: unexpected send exception: %s', + str(e)) + return False + self.current_transport = 'websocket' + self.logger.info('WebSocket upgrade was successful') + else: + try: + p = (await ws.receive()).data + except Exception as e: # pragma: no cover + raise exceptions.ConnectionError( + 'Unexpected recv exception: ' + str(e)) + open_packet = packet.Packet(encoded_packet=p) + if open_packet.packet_type != packet.OPEN: + raise exceptions.ConnectionError('no OPEN packet') + self.logger.info( + 'WebSocket connection accepted with ' + str(open_packet.data)) + self.sid = open_packet.data['sid'] + self.upgrades = open_packet.data['upgrades'] + self.ping_interval = int(open_packet.data['pingInterval']) / 1000.0 + self.ping_timeout = int(open_packet.data['pingTimeout']) / 1000.0 + self.current_transport = 'websocket' + + self.state = 'connected' + base_client.connected_clients.append(self) + await self._trigger_event('connect', run_async=False) + + self.ws = ws + self.write_loop_task = self.start_background_task(self._write_loop) + self.read_loop_task = self.start_background_task( + self._read_loop_websocket) + return True + + async def _receive_packet(self, pkt): + """Handle incoming packets from the server.""" + packet_name = packet.packet_names[pkt.packet_type] \ + if pkt.packet_type < len(packet.packet_names) else 'UNKNOWN' + self.logger.info( + 'Received packet %s data %s', packet_name, + pkt.data if not isinstance(pkt.data, bytes) else '') + if pkt.packet_type == packet.MESSAGE: + await self._trigger_event('message', pkt.data, run_async=True) + elif pkt.packet_type == packet.PING: + await self._send_packet(packet.Packet(packet.PONG, pkt.data)) + elif pkt.packet_type == packet.CLOSE: + await self.disconnect(abort=True, + reason=self.reason.SERVER_DISCONNECT) + elif pkt.packet_type == packet.NOOP: + pass + else: + self.logger.error('Received unexpected packet of type %s', + pkt.packet_type) + + async def _send_packet(self, pkt): + """Queue a packet to be sent to the server.""" + if self.state != 'connected': + return + await self.queue.put(pkt) + self.logger.info( + 'Sending packet %s data %s', + packet.packet_names[pkt.packet_type], + pkt.data if not isinstance(pkt.data, bytes) else '') + + async def _send_request( + self, method, url, headers=None, body=None, + timeout=None): # pragma: no cover + if self.http is None or self.http.closed: + self.http = aiohttp.ClientSession() + http_method = getattr(self.http, method.lower()) + + try: + if not self.ssl_verify: + return await http_method( + url, headers=headers, data=body, + timeout=aiohttp.ClientTimeout(total=timeout), ssl=False) + else: + return await http_method( + url, headers=headers, data=body, + timeout=aiohttp.ClientTimeout(total=timeout)) + + except (aiohttp.ClientError, asyncio.TimeoutError) as exc: + self.logger.info('HTTP %s request to %s failed with error %s.', + method, url, exc) + return str(exc) + + async def _trigger_event(self, event, *args, **kwargs): + """Invoke an event handler.""" + run_async = kwargs.pop('run_async', False) + ret = None + if event in self.handlers: + if inspect.iscoroutinefunction(self.handlers[event]) is True: + if run_async: + task = self.start_background_task(self.handlers[event], + *args) + task_reference_holder.add(task) + task.add_done_callback(task_reference_holder.discard) + return task + else: + try: + try: + ret = await self.handlers[event](*args) + except TypeError: + if event == 'disconnect' and \ + len(args) == 1: # pragma: no branch + # legacy disconnect events do not have a reason + # argument + return await self.handlers[event]() + else: # pragma: no cover + raise + except asyncio.CancelledError: # pragma: no cover + pass + except: + self.logger.exception(event + ' async handler error') + if event == 'connect': + # if connect handler raised error we reject the + # connection + return False + else: + if run_async: + async def async_handler(): + return self.handlers[event](*args) + + task = self.start_background_task(async_handler) + task_reference_holder.add(task) + task.add_done_callback(task_reference_holder.discard) + return task + else: + try: + try: + ret = self.handlers[event](*args) + except TypeError: + if event == 'disconnect' and \ + len(args) == 1: # pragma: no branch + # legacy disconnect events do not have a reason + # argument + ret = self.handlers[event]() + else: # pragma: no cover + raise + except: + self.logger.exception(event + ' handler error') + if event == 'connect': + # if connect handler raised error we reject the + # connection + return False + return ret + + async def _read_loop_polling(self): + """Read packets by polling the Engine.IO server.""" + while self.state == 'connected' and self.write_loop_task: + self.logger.info( + 'Sending polling GET request to ' + self.base_url) + r = await self._send_request( + 'GET', self.base_url + self._get_url_timestamp(), + timeout=max(self.ping_interval, self.ping_timeout) + 5) + if r is None or isinstance(r, str): + self.logger.warning( + r or 'Connection refused by the server, aborting') + await self.queue.put(None) + break + if r.status < 200 or r.status >= 300: + self.logger.warning('Unexpected status code %s in server ' + 'response, aborting', r.status) + await self.queue.put(None) + break + try: + p = payload.Payload(encoded_payload=(await r.read()).decode( + 'utf-8')) + except ValueError: + self.logger.warning( + 'Unexpected packet from server, aborting') + await self.queue.put(None) + break + for pkt in p.packets: + await self._receive_packet(pkt) + + if self.write_loop_task: # pragma: no branch + self.logger.info('Waiting for write loop task to end') + await self.write_loop_task + if self.state == 'connected': + await self._trigger_event( + 'disconnect', self.reason.TRANSPORT_ERROR, run_async=False) + try: + base_client.connected_clients.remove(self) + except ValueError: # pragma: no cover + pass + await self._reset() + self.logger.info('Exiting read loop task') + + async def _read_loop_websocket(self): + """Read packets from the Engine.IO WebSocket connection.""" + while self.state == 'connected': + p = None + try: + p = await asyncio.wait_for( + self.ws.receive(), + timeout=self.ping_interval + self.ping_timeout) + if not isinstance(p.data, (str, bytes)): # pragma: no cover + self.logger.warning( + 'Server sent %s packet data %s, aborting', + 'close' if p.type in [aiohttp.WSMsgType.CLOSE, + aiohttp.WSMsgType.CLOSING] + else str(p.type), str(p.data)) + await self.queue.put(None) + break # the connection is broken + p = p.data + except asyncio.TimeoutError: + self.logger.warning( + 'Server has stopped communicating, aborting') + await self.queue.put(None) + break + except aiohttp.client_exceptions.ServerDisconnectedError: + self.logger.info( + 'Read loop: WebSocket connection was closed, aborting') + await self.queue.put(None) + break + except Exception as e: + self.logger.info( + 'Unexpected error receiving packet: "%s", aborting', + str(e)) + await self.queue.put(None) + break + try: + pkt = packet.Packet(encoded_packet=p) + except Exception as e: # pragma: no cover + self.logger.info( + 'Unexpected error decoding packet: "%s", aborting', str(e)) + await self.queue.put(None) + break + await self._receive_packet(pkt) + + if self.write_loop_task: # pragma: no branch + self.logger.info('Waiting for write loop task to end') + await self.write_loop_task + if self.state == 'connected': + await self._trigger_event( + 'disconnect', self.reason.TRANSPORT_ERROR, run_async=False) + try: + base_client.connected_clients.remove(self) + except ValueError: # pragma: no cover + pass + await self._reset() + self.logger.info('Exiting read loop task') + + async def _write_loop(self): + """This background task sends packages to the server as they are + pushed to the send queue. + """ + while self.state == 'connected': + # to simplify the timeout handling, use the maximum of the + # ping interval and ping timeout as timeout, with an extra 5 + # seconds grace period + timeout = max(self.ping_interval, self.ping_timeout) + 5 + packets = None + try: + packets = [await asyncio.wait_for(self.queue.get(), timeout)] + except (self.queue_empty, asyncio.TimeoutError): + self.logger.error('packet queue is empty, aborting') + break + except asyncio.CancelledError: # pragma: no cover + break + if packets == [None]: + self.queue.task_done() + packets = [] + else: + while True: + try: + packets.append(self.queue.get_nowait()) + except self.queue_empty: + break + if packets[-1] is None: + packets = packets[:-1] + self.queue.task_done() + break + if not packets: + # empty packet list returned -> connection closed + break + if self.current_transport == 'polling': + p = payload.Payload(packets=packets) + r = await self._send_request( + 'POST', self.base_url, body=p.encode(), + headers={'Content-Type': 'text/plain'}, + timeout=self.request_timeout) + for pkt in packets: + self.queue.task_done() + if r is None or isinstance(r, str): + self.logger.warning( + r or 'Connection refused by the server, aborting') + break + if r.status < 200 or r.status >= 300: + self.logger.warning('Unexpected status code %s in server ' + 'response, aborting', r.status) + self.write_loop_task = None + break + else: + # websocket + try: + for pkt in packets: + if pkt.binary: + await self.ws.send_bytes(pkt.encode()) + else: + await self.ws.send_str(pkt.encode()) + self.queue.task_done() + except (aiohttp.client_exceptions.ServerDisconnectedError, + BrokenPipeError, OSError): + self.logger.info( + 'Write loop: WebSocket connection was closed, ' + 'aborting') + break + self.logger.info('Exiting write loop task') diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/__init__.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/_websocket_wsgi.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/_websocket_wsgi.py new file mode 100644 index 0000000..aca30dc --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_drivers/_websocket_wsgi.py @@ -0,0 +1,34 @@ +import simple_websocket + + +class SimpleWebSocketWSGI: # pragma: no cover + """ + This wrapper class provides a threading WebSocket interface that is + compatible with eventlet's implementation. + """ + def __init__(self, handler, server, **kwargs): + self.app = handler + self.server_args = kwargs + + def __call__(self, environ, start_response): + self.ws = simple_websocket.Server(environ, **self.server_args) + ret = self.app(self) + if self.ws.mode == 'gunicorn': + raise StopIteration() + return ret + + def close(self): + if self.ws.connected: + self.ws.close() + + def send(self, message): + try: + return self.ws.send(message) + except simple_websocket.ConnectionClosed: + raise OSError() + + def wait(self): + try: + return self.ws.receive() + except simple_websocket.ConnectionClosed: + return None diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/aiohttp.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/aiohttp.py new file mode 100644 index 0000000..41131d8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_drivers/aiohttp.py @@ -0,0 +1,120 @@ +import inspect +import sys + +from aiohttp.web import Response, WebSocketResponse + + +def create_route(app, engineio_server, engineio_endpoint): + """This function sets up the engine.io endpoint as a route for the + application. + + Note that both GET and POST requests must be hooked up on the engine.io + endpoint. + """ + app.router.add_get(engineio_endpoint, engineio_server.handle_request) + app.router.add_post(engineio_endpoint, engineio_server.handle_request) + app.router.add_route('OPTIONS', engineio_endpoint, + engineio_server.handle_request) + + +def translate_request(request): + """This function takes the arguments passed to the request handler and + uses them to generate a WSGI compatible environ dictionary. + """ + environ = { + 'wsgi.input': request.content, + 'wsgi.errors': sys.stderr, + 'wsgi.version': (1, 0), + 'wsgi.async': True, + 'wsgi.multithread': False, + 'wsgi.multiprocess': False, + 'wsgi.run_once': False, + 'SERVER_SOFTWARE': 'aiohttp', + 'REQUEST_METHOD': request.method, + 'QUERY_STRING': request.query_string or '', + 'RAW_URI': request.path_qs, + 'SERVER_PROTOCOL': f'HTTP/{request.version[0]}.{request.version[1]}', + 'REMOTE_ADDR': '127.0.0.1', + 'REMOTE_PORT': '0', + 'SERVER_NAME': 'aiohttp', + 'SERVER_PORT': '0', + 'aiohttp.request': request + } + + for hdr_name, hdr_value in request.headers.items(): + hdr_name = hdr_name.upper() + if hdr_name == 'CONTENT-TYPE': + environ['CONTENT_TYPE'] = hdr_value + continue + elif hdr_name == 'CONTENT-LENGTH': + environ['CONTENT_LENGTH'] = hdr_value + continue + + key = 'HTTP_%s' % hdr_name.replace('-', '_') + if key in environ: + hdr_value = f'{environ[key]},{hdr_value}' + + environ[key] = hdr_value + + environ['wsgi.url_scheme'] = environ.get('HTTP_X_FORWARDED_PROTO', 'http') + + environ['PATH_INFO'] = request.path + environ['SCRIPT_NAME'] = '' + + return environ + + +def make_response(status, headers, payload, environ): + """This function generates an appropriate response object for this async + mode. + """ + return Response(body=payload, status=int(status.split()[0]), + headers=headers) + + +class WebSocket: # pragma: no cover + """ + This wrapper class provides a aiohttp WebSocket interface that is + somewhat compatible with eventlet's implementation. + """ + def __init__(self, handler, server): + self.handler = handler + self._sock = None + + async def __call__(self, environ): + request = environ['aiohttp.request'] + self._sock = WebSocketResponse(max_msg_size=0) + await self._sock.prepare(request) + + self.environ = environ + await self.handler(self) + return self._sock + + async def close(self): + await self._sock.close() + + async def send(self, message): + if isinstance(message, bytes): + f = self._sock.send_bytes + else: + f = self._sock.send_str + if inspect.iscoroutinefunction(f): + await f(message) + else: + f(message) + + async def wait(self): + msg = await self._sock.receive() + if not isinstance(msg.data, bytes) and \ + not isinstance(msg.data, str): + raise OSError() + return msg.data + + +_async = { + 'asyncio': True, + 'create_route': create_route, + 'translate_request': translate_request, + 'make_response': make_response, + 'websocket': WebSocket, +} diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/asgi.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/asgi.py new file mode 100644 index 0000000..c3581c6 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_drivers/asgi.py @@ -0,0 +1,296 @@ +import inspect +import os +import sys + +from engineio.static_files import get_static_file + + +class ASGIApp: + """ASGI application middleware for Engine.IO. + + This middleware dispatches traffic to an Engine.IO application. It can + also serve a list of static files to the client, or forward unrelated + HTTP traffic to another ASGI application. + + :param engineio_server: The Engine.IO server. Must be an instance of the + ``engineio.AsyncServer`` class. + :param static_files: A dictionary with static file mapping rules. See the + documentation for details on this argument. + :param other_asgi_app: A separate ASGI app that receives all other traffic. + :param engineio_path: The endpoint where the Engine.IO application should + be installed. The default value is appropriate for + most cases. With a value of ``None``, all incoming + traffic is directed to the Engine.IO server, with the + assumption that routing, if necessary, is handled by + a different layer. When this option is set to + ``None``, ``static_files`` and ``other_asgi_app`` are + ignored. + :param on_startup: function to be called on application startup; can be + coroutine + :param on_shutdown: function to be called on application shutdown; can be + coroutine + + Example usage:: + + import engineio + import uvicorn + + eio = engineio.AsyncServer() + app = engineio.ASGIApp(eio, static_files={ + '/': {'content_type': 'text/html', 'filename': 'index.html'}, + '/index.html': {'content_type': 'text/html', + 'filename': 'index.html'}, + }) + uvicorn.run(app, '127.0.0.1', 5000) + """ + def __init__(self, engineio_server, other_asgi_app=None, + static_files=None, engineio_path='engine.io', + on_startup=None, on_shutdown=None): + self.engineio_server = engineio_server + self.other_asgi_app = other_asgi_app + self.engineio_path = engineio_path + if self.engineio_path is not None: + if not self.engineio_path.startswith('/'): + self.engineio_path = '/' + self.engineio_path + if not self.engineio_path.endswith('/'): + self.engineio_path += '/' + self.static_files = static_files or {} + self.on_startup = on_startup + self.on_shutdown = on_shutdown + + async def __call__(self, scope, receive, send): + if scope['type'] == 'lifespan': + await self.lifespan(scope, receive, send) + elif scope['type'] in ['http', 'websocket'] and ( + self.engineio_path is None + or self._ensure_trailing_slash(scope['path']).startswith( + self.engineio_path)): + await self.engineio_server.handle_request(scope, receive, send) + else: + static_file = get_static_file(scope['path'], self.static_files) \ + if scope['type'] == 'http' and self.static_files else None + if static_file and os.path.exists(static_file['filename']): + await self.serve_static_file(static_file, receive, send) + elif self.other_asgi_app is not None: + await self.other_asgi_app(scope, receive, send) + else: + await self.not_found(receive, send) + + async def serve_static_file(self, static_file, receive, + send): # pragma: no cover + event = await receive() + if event['type'] == 'http.request': + with open(static_file['filename'], 'rb') as f: + payload = f.read() + await send({'type': 'http.response.start', + 'status': 200, + 'headers': [(b'Content-Type', static_file[ + 'content_type'].encode('utf-8'))]}) + await send({'type': 'http.response.body', + 'body': payload}) + + async def lifespan(self, scope, receive, send): + if self.other_asgi_app is not None and self.on_startup is None and \ + self.on_shutdown is None: + # let the other ASGI app handle lifespan events + await self.other_asgi_app(scope, receive, send) + return + + while True: + event = await receive() + if event['type'] == 'lifespan.startup': + if self.on_startup: + try: + await self.on_startup() \ + if inspect.iscoroutinefunction(self.on_startup) \ + else self.on_startup() + except: + await send({'type': 'lifespan.startup.failed'}) + return + await send({'type': 'lifespan.startup.complete'}) + elif event['type'] == 'lifespan.shutdown': + if self.on_shutdown: + try: + await self.on_shutdown() \ + if inspect.iscoroutinefunction(self.on_shutdown) \ + else self.on_shutdown() + except: + await send({'type': 'lifespan.shutdown.failed'}) + return + await send({'type': 'lifespan.shutdown.complete'}) + return + + async def not_found(self, receive, send): + """Return a 404 Not Found error to the client.""" + await send({'type': 'http.response.start', + 'status': 404, + 'headers': [(b'Content-Type', b'text/plain')]}) + await send({'type': 'http.response.body', + 'body': b'Not Found'}) + + def _ensure_trailing_slash(self, path): + if not path.endswith('/'): + path += '/' + return path + + +async def translate_request(scope, receive, send): + class AwaitablePayload: # pragma: no cover + def __init__(self, payload): + self.payload = payload or b'' + + async def read(self, length=None): + if length is None: + r = self.payload + self.payload = b'' + else: + r = self.payload[:length] + self.payload = self.payload[length:] + return r + + event = await receive() + payload = b'' + if event['type'] == 'http.request': + payload += event.get('body') or b'' + while event.get('more_body'): + event = await receive() + if event['type'] == 'http.request': + payload += event.get('body') or b'' + elif event['type'] == 'websocket.connect': + pass + else: + return {} + + raw_uri = scope['path'] + query_string = '' + if 'query_string' in scope and scope['query_string']: + try: + query_string = scope['query_string'].decode('utf-8') + except UnicodeDecodeError: + pass + else: + raw_uri += '?' + query_string + environ = { + 'wsgi.input': AwaitablePayload(payload), + 'wsgi.errors': sys.stderr, + 'wsgi.version': (1, 0), + 'wsgi.async': True, + 'wsgi.multithread': False, + 'wsgi.multiprocess': False, + 'wsgi.run_once': False, + 'SERVER_SOFTWARE': 'asgi', + 'REQUEST_METHOD': scope.get('method', 'GET'), + 'PATH_INFO': scope['path'], + 'QUERY_STRING': query_string, + 'RAW_URI': raw_uri, + 'SCRIPT_NAME': '', + 'SERVER_PROTOCOL': 'HTTP/1.1', + 'REMOTE_ADDR': '127.0.0.1', + 'REMOTE_PORT': '0', + 'SERVER_NAME': 'asgi', + 'SERVER_PORT': '0', + 'asgi.receive': receive, + 'asgi.send': send, + 'asgi.scope': scope, + } + + for hdr_name, hdr_value in scope['headers']: + try: + hdr_name = hdr_name.upper().decode('utf-8') + hdr_value = hdr_value.decode('utf-8') + except UnicodeDecodeError: + # skip header if it cannot be decoded + continue + if hdr_name == 'CONTENT-TYPE': + environ['CONTENT_TYPE'] = hdr_value + continue + elif hdr_name == 'CONTENT-LENGTH': + environ['CONTENT_LENGTH'] = hdr_value + continue + + key = 'HTTP_%s' % hdr_name.replace('-', '_') + if key in environ: + hdr_value = f'{environ[key]},{hdr_value}' + + environ[key] = hdr_value + + environ['wsgi.url_scheme'] = environ.get('HTTP_X_FORWARDED_PROTO', 'http') + return environ + + +async def make_response(status, headers, payload, environ): + headers = [(h[0].encode('utf-8'), h[1].encode('utf-8')) for h in headers] + if environ['asgi.scope']['type'] == 'websocket': + if status.startswith('200 '): + await environ['asgi.send']({'type': 'websocket.accept', + 'headers': headers}) + else: + if payload: + reason = payload.decode('utf-8') \ + if isinstance(payload, bytes) else str(payload) + await environ['asgi.send']({'type': 'websocket.close', + 'reason': reason}) + else: + await environ['asgi.send']({'type': 'websocket.close'}) + return + + await environ['asgi.send']({'type': 'http.response.start', + 'status': int(status.split(' ')[0]), + 'headers': headers}) + await environ['asgi.send']({'type': 'http.response.body', + 'body': payload}) + + +class WebSocket: # pragma: no cover + """ + This wrapper class provides an asgi WebSocket interface that is + somewhat compatible with eventlet's implementation. + """ + def __init__(self, handler, server): + self.handler = handler + self.asgi_receive = None + self.asgi_send = None + + async def __call__(self, environ): + self.asgi_receive = environ['asgi.receive'] + self.asgi_send = environ['asgi.send'] + await self.asgi_send({'type': 'websocket.accept'}) + await self.handler(self) + return '' # send nothing as response + + async def close(self): + try: + await self.asgi_send({'type': 'websocket.close'}) + except Exception: + # if the socket is already close we don't care + pass + + async def send(self, message): + msg_bytes = None + msg_text = None + if isinstance(message, bytes): + msg_bytes = message + else: + msg_text = message + await self.asgi_send({'type': 'websocket.send', + 'bytes': msg_bytes, + 'text': msg_text}) + + async def wait(self): + event = await self.asgi_receive() + if event['type'] != 'websocket.receive': + raise OSError() + if event.get('bytes', None) is not None: + return event['bytes'] + elif event.get('text', None) is not None: + return event['text'] + else: # pragma: no cover + raise OSError() + + +_async = { + 'asyncio': True, + 'translate_request': translate_request, + 'make_response': make_response, + 'websocket': WebSocket, +} diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/eventlet.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/eventlet.py new file mode 100644 index 0000000..6361c4d --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_drivers/eventlet.py @@ -0,0 +1,52 @@ +from eventlet.green.threading import Event +from eventlet import queue, sleep, spawn +from eventlet.websocket import WebSocketWSGI as _WebSocketWSGI + + +class EventletThread: # pragma: no cover + """Thread class that uses eventlet green threads. + + Eventlet's own Thread class has a strange bug that causes _DummyThread + objects to be created and leaked, since they are never garbage collected. + """ + def __init__(self, target, args=None, kwargs=None): + self.target = target + self.args = args or () + self.kwargs = kwargs or {} + self.g = None + + def start(self): + self.g = spawn(self.target, *self.args, **self.kwargs) + + def join(self): + if self.g: + return self.g.wait() + + +class WebSocketWSGI(_WebSocketWSGI): # pragma: no cover + def __init__(self, handler, server): + try: + super().__init__( + handler, max_frame_length=int(server.max_http_buffer_size)) + except TypeError: # pragma: no cover + # older versions of eventlet do not support a max frame size + super().__init__(handler) + self._sock = None + + def __call__(self, environ, start_response): + if 'eventlet.input' not in environ: + raise RuntimeError('You need to use the eventlet server. ' + 'See the Deployment section of the ' + 'documentation for more information.') + self._sock = environ['eventlet.input'].get_socket() + return super().__call__(environ, start_response) + + +_async = { + 'thread': EventletThread, + 'queue': queue.Queue, + 'queue_empty': queue.Empty, + 'event': Event, + 'websocket': WebSocketWSGI, + 'sleep': sleep, +} diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/gevent.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/gevent.py new file mode 100644 index 0000000..db284a5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_drivers/gevent.py @@ -0,0 +1,83 @@ +import gevent +from gevent import queue +from gevent.event import Event +try: + # use gevent-websocket if installed + import geventwebsocket # noqa + SimpleWebSocketWSGI = None +except ImportError: # pragma: no cover + # fallback to simple_websocket when gevent-websocket is not installed + from engineio.async_drivers._websocket_wsgi import SimpleWebSocketWSGI + + +class Thread(gevent.Greenlet): # pragma: no cover + """ + This wrapper class provides gevent Greenlet interface that is compatible + with the standard library's Thread class. + """ + def __init__(self, target, args=[], kwargs={}): + super().__init__(target, *args, **kwargs) + + def _run(self): + return self.run() + + +if SimpleWebSocketWSGI is not None: + class WebSocketWSGI(SimpleWebSocketWSGI): # pragma: no cover + """ + This wrapper class provides a gevent WebSocket interface that is + compatible with eventlet's implementation, using the simple-websocket + package. + """ + def __init__(self, handler, server): + # to avoid the requirement that the standard library is + # monkey-patched, here we pass the gevent versions of the + # concurrency and networking classes required by simple-websocket + import gevent.event + import gevent.selectors + super().__init__(handler, server, + thread_class=Thread, + event_class=gevent.event.Event, + selector_class=gevent.selectors.DefaultSelector) +else: + class WebSocketWSGI: # pragma: no cover + """ + This wrapper class provides a gevent WebSocket interface that is + compatible with eventlet's implementation, using the gevent-websocket + package. + """ + def __init__(self, handler, server): + self.app = handler + + def __call__(self, environ, start_response): + if 'wsgi.websocket' not in environ: + raise RuntimeError('The gevent-websocket server is not ' + 'configured appropriately. ' + 'See the Deployment section of the ' + 'documentation for more information.') + self._sock = environ['wsgi.websocket'] + self.environ = environ + self.version = self._sock.version + self.path = self._sock.path + self.origin = self._sock.origin + self.protocol = self._sock.protocol + return self.app(self) + + def close(self): + return self._sock.close() + + def send(self, message): + return self._sock.send(message) + + def wait(self): + return self._sock.receive() + + +_async = { + 'thread': Thread, + 'queue': queue.JoinableQueue, + 'queue_empty': queue.Empty, + 'event': Event, + 'websocket': WebSocketWSGI, + 'sleep': gevent.sleep, +} diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/gevent_uwsgi.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/gevent_uwsgi.py new file mode 100644 index 0000000..b5ccefc --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_drivers/gevent_uwsgi.py @@ -0,0 +1,168 @@ +import gevent +from gevent import queue +from gevent.event import Event +from gevent import selectors +import uwsgi +_websocket_available = hasattr(uwsgi, 'websocket_handshake') + + +class Thread(gevent.Greenlet): # pragma: no cover + """ + This wrapper class provides gevent Greenlet interface that is compatible + with the standard library's Thread class. + """ + def __init__(self, target, args=[], kwargs={}): + super().__init__(target, *args, **kwargs) + + def _run(self): + return self.run() + + +class uWSGIWebSocket: # pragma: no cover + """ + This wrapper class provides a uWSGI WebSocket interface that is + compatible with eventlet's implementation. + """ + def __init__(self, handler, server): + self.app = handler + self._sock = None + self.received_messages = [] + + def __call__(self, environ, start_response): + self._sock = uwsgi.connection_fd() + self.environ = environ + + uwsgi.websocket_handshake() + + self._req_ctx = None + if hasattr(uwsgi, 'request_context'): + # uWSGI >= 2.1.x with support for api access across-greenlets + self._req_ctx = uwsgi.request_context() + else: + # use event and queue for sending messages + self._event = Event() + self._send_queue = queue.Queue() + + # spawn a select greenlet + def select_greenlet_runner(fd, event): + """Sets event when data becomes available to read on fd.""" + sel = selectors.DefaultSelector() + sel.register(fd, selectors.EVENT_READ) + try: + while True: + sel.select() + event.set() + except gevent.GreenletExit: + sel.unregister(fd) + self._select_greenlet = gevent.spawn( + select_greenlet_runner, + self._sock, + self._event) + + self.app(self) + uwsgi.disconnect() + return '' # send nothing as response + + def close(self): + """Disconnects uWSGI from the client.""" + if self._req_ctx is None: + # better kill it here in case wait() is not called again + self._select_greenlet.kill() + self._event.set() + + def _send(self, msg): + """Transmits message either in binary or UTF-8 text mode, + depending on its type.""" + if isinstance(msg, bytes): + method = uwsgi.websocket_send_binary + else: + method = uwsgi.websocket_send + if self._req_ctx is not None: + method(msg, request_context=self._req_ctx) + else: + method(msg) + + def _decode_received(self, msg): + """Returns either bytes or str, depending on message type.""" + if not isinstance(msg, bytes): + # already decoded - do nothing + return msg + # only decode from utf-8 if message is not binary data + type = ord(msg[0:1]) + if type >= 48: # no binary + return msg.decode('utf-8') + # binary message, don't try to decode + return msg + + def send(self, msg): + """Queues a message for sending. Real transmission is done in + wait method. + Sends directly if uWSGI version is new enough.""" + if self._req_ctx is not None: + self._send(msg) + else: + self._send_queue.put(msg) + self._event.set() + + def wait(self): + """Waits and returns received messages. + If running in compatibility mode for older uWSGI versions, + it also sends messages that have been queued by send(). + A return value of None means that connection was closed. + This must be called repeatedly. For uWSGI < 2.1.x it must + be called from the main greenlet.""" + while True: + if self._req_ctx is not None: + try: + msg = uwsgi.websocket_recv(request_context=self._req_ctx) + except OSError: # connection closed + self.close() + return None + return self._decode_received(msg) + else: + if self.received_messages: + return self.received_messages.pop(0) + + # we wake up at least every 3 seconds to let uWSGI + # do its ping/ponging + event_set = self._event.wait(timeout=3) + if event_set: + self._event.clear() + # maybe there is something to send + msgs = [] + while True: + try: + msgs.append(self._send_queue.get(block=False)) + except gevent.queue.Empty: + break + for msg in msgs: + try: + self._send(msg) + except OSError: + self.close() + return None + # maybe there is something to receive, if not, at least + # ensure uWSGI does its ping/ponging + while True: + try: + msg = uwsgi.websocket_recv_nb() + except OSError: # connection closed + self.close() + return None + if msg: # message available + self.received_messages.append( + self._decode_received(msg)) + else: + break + if self.received_messages: + return self.received_messages.pop(0) + + +_async = { + 'thread': Thread, + 'queue': queue.JoinableQueue, + 'queue_empty': queue.Empty, + 'event': Event, + 'websocket': uWSGIWebSocket if _websocket_available else None, + 'sleep': gevent.sleep, +} diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/sanic.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/sanic.py new file mode 100644 index 0000000..4d6a5b8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_drivers/sanic.py @@ -0,0 +1,148 @@ +import sys +from urllib.parse import urlsplit + +try: # pragma: no cover + from sanic.response import HTTPResponse + try: + from sanic.server.protocols.websocket_protocol import WebSocketProtocol + except ImportError: + from sanic.websocket import WebSocketProtocol +except ImportError: + HTTPResponse = None + WebSocketProtocol = None + + +def create_route(app, engineio_server, engineio_endpoint): # pragma: no cover + """This function sets up the engine.io endpoint as a route for the + application. + + Note that both GET and POST requests must be hooked up on the engine.io + endpoint. + """ + app.add_route(engineio_server.handle_request, engineio_endpoint, + methods=['GET', 'POST', 'OPTIONS']) + try: + app.enable_websocket() + except AttributeError: + # ignore, this version does not support websocket + pass + + +def translate_request(request): # pragma: no cover + """This function takes the arguments passed to the request handler and + uses them to generate a WSGI compatible environ dictionary. + """ + class AwaitablePayload: + def __init__(self, payload): + self.payload = payload or b'' + + async def read(self, length=None): + if length is None: + r = self.payload + self.payload = b'' + else: + r = self.payload[:length] + self.payload = self.payload[length:] + return r + + uri_parts = urlsplit(request.url) + environ = { + 'wsgi.input': AwaitablePayload(request.body), + 'wsgi.errors': sys.stderr, + 'wsgi.version': (1, 0), + 'wsgi.async': True, + 'wsgi.multithread': False, + 'wsgi.multiprocess': False, + 'wsgi.run_once': False, + 'SERVER_SOFTWARE': 'sanic', + 'REQUEST_METHOD': request.method, + 'QUERY_STRING': uri_parts.query or '', + 'RAW_URI': request.url, + 'SERVER_PROTOCOL': 'HTTP/' + request.version, + 'REMOTE_ADDR': '127.0.0.1', + 'REMOTE_PORT': '0', + 'SERVER_NAME': 'sanic', + 'SERVER_PORT': '0', + 'sanic.request': request + } + + for hdr_name, hdr_value in request.headers.items(): + hdr_name = hdr_name.upper() + if hdr_name == 'CONTENT-TYPE': + environ['CONTENT_TYPE'] = hdr_value + continue + elif hdr_name == 'CONTENT-LENGTH': + environ['CONTENT_LENGTH'] = hdr_value + continue + + key = 'HTTP_%s' % hdr_name.replace('-', '_') + if key in environ: + hdr_value = f'{environ[key]},{hdr_value}' + + environ[key] = hdr_value + + environ['wsgi.url_scheme'] = environ.get('HTTP_X_FORWARDED_PROTO', 'http') + + path_info = uri_parts.path + + environ['PATH_INFO'] = path_info + environ['SCRIPT_NAME'] = '' + + return environ + + +def make_response(status, headers, payload, environ): # pragma: no cover + """This function generates an appropriate response object for this async + mode. + """ + headers_dict = {} + content_type = None + for h in headers: + if h[0].lower() == 'content-type': + content_type = h[1] + else: + headers_dict[h[0]] = h[1] + return HTTPResponse(body=payload, content_type=content_type, + status=int(status.split()[0]), headers=headers_dict) + + +class WebSocket: # pragma: no cover + """ + This wrapper class provides a sanic WebSocket interface that is + somewhat compatible with eventlet's implementation. + """ + def __init__(self, handler, server): + self.handler = handler + self.server = server + self._sock = None + + async def __call__(self, environ): + request = environ['sanic.request'] + protocol = request.transport.get_protocol() + self._sock = await protocol.websocket_handshake(request) + + self.environ = environ + await self.handler(self) + return self.server._ok() + + async def close(self): + await self._sock.close() + + async def send(self, message): + await self._sock.send(message) + + async def wait(self): + data = await self._sock.recv() + if not isinstance(data, bytes) and \ + not isinstance(data, str): + raise OSError() + return data + + +_async = { + 'asyncio': True, + 'create_route': create_route, + 'translate_request': translate_request, + 'make_response': make_response, + 'websocket': WebSocket if WebSocketProtocol else None, +} diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/threading.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/threading.py new file mode 100644 index 0000000..1615579 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_drivers/threading.py @@ -0,0 +1,19 @@ +import queue +import threading +import time +from engineio.async_drivers._websocket_wsgi import SimpleWebSocketWSGI + + +class DaemonThread(threading.Thread): # pragma: no cover + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs, daemon=True) + + +_async = { + 'thread': DaemonThread, + 'queue': queue.Queue, + 'queue_empty': queue.Empty, + 'event': threading.Event, + 'websocket': SimpleWebSocketWSGI, + 'sleep': time.sleep, +} diff --git a/venv/lib/python3.9/site-packages/engineio/async_drivers/tornado.py b/venv/lib/python3.9/site-packages/engineio/async_drivers/tornado.py new file mode 100644 index 0000000..01e7d71 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_drivers/tornado.py @@ -0,0 +1,183 @@ +import asyncio +import inspect +import sys +from urllib.parse import urlsplit +from .. import exceptions + +import tornado.web +import tornado.websocket + + +def get_tornado_handler(engineio_server): + class Handler(tornado.websocket.WebSocketHandler): # pragma: no cover + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + if isinstance(engineio_server.cors_allowed_origins, str): + if engineio_server.cors_allowed_origins == '*': + self.allowed_origins = None + else: + self.allowed_origins = [ + engineio_server.cors_allowed_origins] + else: + self.allowed_origins = engineio_server.cors_allowed_origins + self.receive_queue = asyncio.Queue() + + async def get(self, *args, **kwargs): + if self.request.headers.get('Upgrade', '').lower() == 'websocket': + ret = super().get(*args, **kwargs) + if inspect.iscoroutine(ret): + await ret + else: + await engineio_server.handle_request(self) + + async def open(self, *args, **kwargs): + # this is the handler for the websocket request + asyncio.ensure_future(engineio_server.handle_request(self)) + + async def post(self, *args, **kwargs): + await engineio_server.handle_request(self) + + async def options(self, *args, **kwargs): + await engineio_server.handle_request(self) + + async def on_message(self, message): + await self.receive_queue.put(message) + + async def get_next_message(self): + return await self.receive_queue.get() + + def on_close(self): + self.receive_queue.put_nowait(None) + + def check_origin(self, origin): + if self.allowed_origins is None or origin in self.allowed_origins: + return True + return super().check_origin(origin) + + def get_compression_options(self): + # enable compression + return {} + + return Handler + + +def translate_request(handler): + """This function takes the arguments passed to the request handler and + uses them to generate a WSGI compatible environ dictionary. + """ + class AwaitablePayload: + def __init__(self, payload): + self.payload = payload or b'' + + async def read(self, length=None): + if length is None: + r = self.payload + self.payload = b'' + else: + r = self.payload[:length] + self.payload = self.payload[length:] + return r + + payload = handler.request.body + + uri_parts = urlsplit(handler.request.path) + full_uri = handler.request.path + if handler.request.query: # pragma: no cover + full_uri += '?' + handler.request.query + environ = { + 'wsgi.input': AwaitablePayload(payload), + 'wsgi.errors': sys.stderr, + 'wsgi.version': (1, 0), + 'wsgi.async': True, + 'wsgi.multithread': False, + 'wsgi.multiprocess': False, + 'wsgi.run_once': False, + 'SERVER_SOFTWARE': 'aiohttp', + 'REQUEST_METHOD': handler.request.method, + 'QUERY_STRING': handler.request.query or '', + 'RAW_URI': full_uri, + 'SERVER_PROTOCOL': 'HTTP/%s' % handler.request.version, + 'REMOTE_ADDR': '127.0.0.1', + 'REMOTE_PORT': '0', + 'SERVER_NAME': 'aiohttp', + 'SERVER_PORT': '0', + 'tornado.handler': handler + } + + for hdr_name, hdr_value in handler.request.headers.items(): + hdr_name = hdr_name.upper() + if hdr_name == 'CONTENT-TYPE': + environ['CONTENT_TYPE'] = hdr_value + continue + elif hdr_name == 'CONTENT-LENGTH': + environ['CONTENT_LENGTH'] = hdr_value + continue + + key = 'HTTP_%s' % hdr_name.replace('-', '_') + environ[key] = hdr_value + + environ['wsgi.url_scheme'] = environ.get('HTTP_X_FORWARDED_PROTO', 'http') + + path_info = uri_parts.path + + environ['PATH_INFO'] = path_info + environ['SCRIPT_NAME'] = '' + + return environ + + +def make_response(status, headers, payload, environ): + """This function generates an appropriate response object for this async + mode. + """ + tornado_handler = environ['tornado.handler'] + try: + tornado_handler.set_status(int(status.split()[0])) + except RuntimeError: # pragma: no cover + # for websocket connections Tornado does not accept a response, since + # it already emitted the 101 status code + return + for header, value in headers: + tornado_handler.set_header(header, value) + tornado_handler.write(payload) + tornado_handler.finish() + + +class WebSocket: # pragma: no cover + """ + This wrapper class provides a tornado WebSocket interface that is + somewhat compatible with eventlet's implementation. + """ + def __init__(self, handler, server): + self.handler = handler + self.tornado_handler = None + + async def __call__(self, environ): + self.tornado_handler = environ['tornado.handler'] + self.environ = environ + await self.handler(self) + + async def close(self): + self.tornado_handler.close() + + async def send(self, message): + try: + self.tornado_handler.write_message( + message, binary=isinstance(message, bytes)) + except tornado.websocket.WebSocketClosedError: + raise exceptions.EngineIOError() + + async def wait(self): + msg = await self.tornado_handler.get_next_message() + if not isinstance(msg, bytes) and \ + not isinstance(msg, str): + raise OSError() + return msg + + +_async = { + 'asyncio': True, + 'translate_request': translate_request, + 'make_response': make_response, + 'websocket': WebSocket, +} diff --git a/venv/lib/python3.9/site-packages/engineio/async_server.py b/venv/lib/python3.9/site-packages/engineio/async_server.py new file mode 100644 index 0000000..e0e252e --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_server.py @@ -0,0 +1,613 @@ +import asyncio +import inspect +import urllib + +from . import base_server +from . import exceptions +from . import packet +from . import async_socket + +# this set is used to keep references to background tasks to prevent them from +# being garbage collected mid-execution. Solution taken from +# https://docs.python.org/3/library/asyncio-task.html#asyncio.create_task +task_reference_holder = set() + + +class AsyncServer(base_server.BaseServer): + """An Engine.IO server for asyncio. + + This class implements a fully compliant Engine.IO web server with support + for websocket and long-polling transports, compatible with the asyncio + framework on Python 3.5 or newer. + + :param async_mode: The asynchronous model to use. See the Deployment + section in the documentation for a description of the + available options. Valid async modes are "aiohttp", + "sanic", "tornado" and "asgi". If this argument is not + given, "aiohttp" is tried first, followed by "sanic", + "tornado", and finally "asgi". The first async mode that + has all its dependencies installed is the one that is + chosen. + :param ping_interval: The interval in seconds at which the server pings + the client. The default is 25 seconds. For advanced + control, a two element tuple can be given, where + the first number is the ping interval and the second + is a grace period added by the server. + :param ping_timeout: The time in seconds that the client waits for the + server to respond before disconnecting. The default + is 20 seconds. + :param max_http_buffer_size: The maximum size that is accepted for incoming + messages. The default is 1,000,000 bytes. In + spite of its name, the value set in this + argument is enforced for HTTP long-polling and + WebSocket connections. + :param allow_upgrades: Whether to allow transport upgrades or not. + :param http_compression: Whether to compress packages when using the + polling transport. + :param compression_threshold: Only compress messages when their byte size + is greater than this value. + :param cookie: If set to a string, it is the name of the HTTP cookie the + server sends back tot he client containing the client + session id. If set to a dictionary, the ``'name'`` key + contains the cookie name and other keys define cookie + attributes, where the value of each attribute can be a + string, a callable with no arguments, or a boolean. If set + to ``None`` (the default), a cookie is not sent to the + client. + :param cors_allowed_origins: Origin or list of origins that are allowed to + connect to this server. Only the same origin + is allowed by default. Set this argument to + ``'*'`` or ``['*']`` to allow all origins, or + to ``[]`` to disable CORS handling. + :param cors_credentials: Whether credentials (cookies, authentication) are + allowed in requests to this server. + :param logger: To enable logging set to ``True`` or pass a logger object to + use. To disable logging set to ``False``. Note that fatal + errors are logged even when ``logger`` is ``False``. + :param json: An alternative JSON module to use for encoding and decoding + packets. Custom JSON modules must have ``dumps`` and ``loads`` + functions that are compatible with the standard library + versions. This is a process-wide setting, all instantiated + servers and clients must use the same JSON module. + :param async_handlers: If set to ``True``, run message event handlers in + non-blocking threads. To run handlers synchronously, + set to ``False``. The default is ``True``. + :param monitor_clients: If set to ``True``, a background task will ensure + inactive clients are closed. Set to ``False`` to + disable the monitoring task (not recommended). The + default is ``True``. + :param transports: The list of allowed transports. Valid transports + are ``'polling'`` and ``'websocket'``. Defaults to + ``['polling', 'websocket']``. + :param kwargs: Reserved for future extensions, any additional parameters + given as keyword arguments will be silently ignored. + """ + def is_asyncio_based(self): + return True + + def async_modes(self): + return ['aiohttp', 'sanic', 'tornado', 'asgi'] + + def attach(self, app, engineio_path='engine.io'): + """Attach the Engine.IO server to an application.""" + engineio_path = engineio_path.strip('/') + self._async['create_route'](app, self, f'/{engineio_path}/') + + async def send(self, sid, data): + """Send a message to a client. + + :param sid: The session id of the recipient client. + :param data: The data to send to the client. Data can be of type + ``str``, ``bytes``, ``list`` or ``dict``. If a ``list`` + or ``dict``, the data will be serialized as JSON. + + Note: this method is a coroutine. + """ + await self.send_packet(sid, packet.Packet(packet.MESSAGE, data=data)) + + async def send_packet(self, sid, pkt): + """Send a raw packet to a client. + + :param sid: The session id of the recipient client. + :param pkt: The packet to send to the client. + + Note: this method is a coroutine. + """ + try: + socket = self._get_socket(sid) + except KeyError: + # the socket is not available + self.logger.warning('Cannot send to sid %s', sid) + return + await socket.send(pkt) + + async def get_session(self, sid): + """Return the user session for a client. + + :param sid: The session id of the client. + + The return value is a dictionary. Modifications made to this + dictionary are not guaranteed to be preserved. If you want to modify + the user session, use the ``session`` context manager instead. + """ + socket = self._get_socket(sid) + return socket.session + + async def save_session(self, sid, session): + """Store the user session for a client. + + :param sid: The session id of the client. + :param session: The session dictionary. + """ + socket = self._get_socket(sid) + socket.session = session + + def session(self, sid): + """Return the user session for a client with context manager syntax. + + :param sid: The session id of the client. + + This is a context manager that returns the user session dictionary for + the client. Any changes that are made to this dictionary inside the + context manager block are saved back to the session. Example usage:: + + @eio.on('connect') + def on_connect(sid, environ): + username = authenticate_user(environ) + if not username: + return False + with eio.session(sid) as session: + session['username'] = username + + @eio.on('message') + def on_message(sid, msg): + async with eio.session(sid) as session: + print('received message from ', session['username']) + """ + class _session_context_manager: + def __init__(self, server, sid): + self.server = server + self.sid = sid + self.session = None + + async def __aenter__(self): + self.session = await self.server.get_session(sid) + return self.session + + async def __aexit__(self, *args): + await self.server.save_session(sid, self.session) + + return _session_context_manager(self, sid) + + async def disconnect(self, sid=None): + """Disconnect a client. + + :param sid: The session id of the client to close. If this parameter + is not given, then all clients are closed. + + Note: this method is a coroutine. + """ + if sid is not None: + try: + socket = self._get_socket(sid) + except KeyError: # pragma: no cover + # the socket was already closed or gone + pass + else: + await socket.close(reason=self.reason.SERVER_DISCONNECT) + if sid in self.sockets: # pragma: no cover + del self.sockets[sid] + else: + await asyncio.wait([ + asyncio.create_task(client.close( + reason=self.reason.SERVER_DISCONNECT)) + for client in self.sockets.values() + ]) + self.sockets = {} + + async def handle_request(self, *args, **kwargs): + """Handle an HTTP request from the client. + + This is the entry point of the Engine.IO application. This function + returns the HTTP response to deliver to the client. + + Note: this method is a coroutine. + """ + translate_request = self._async['translate_request'] + if inspect.iscoroutinefunction(translate_request): + environ = await translate_request(*args, **kwargs) + else: + environ = translate_request(*args, **kwargs) + + if self.cors_allowed_origins != []: + # Validate the origin header if present + # This is important for WebSocket more than for HTTP, since + # browsers only apply CORS controls to HTTP. + origin = environ.get('HTTP_ORIGIN') + if origin: + allowed_origins = self._cors_allowed_origins(environ) + if allowed_origins is not None and origin not in \ + allowed_origins: + self._log_error_once( + origin + ' is not an accepted origin.', 'bad-origin') + return await self._make_response( + self._bad_request( + origin + ' is not an accepted origin.'), + environ) + + method = environ['REQUEST_METHOD'] + query = urllib.parse.parse_qs(environ.get('QUERY_STRING', '')) + + sid = query['sid'][0] if 'sid' in query else None + jsonp = False + jsonp_index = None + + # make sure the client uses an allowed transport + transport = query.get('transport', ['polling'])[0] + if transport not in self.transports: + self._log_error_once('Invalid transport', 'bad-transport') + return await self._make_response( + self._bad_request('Invalid transport'), environ) + + # make sure the client speaks a compatible Engine.IO version + sid = query['sid'][0] if 'sid' in query else None + if sid is None and query.get('EIO') != ['4']: + self._log_error_once( + 'The client is using an unsupported version of the Socket.IO ' + 'or Engine.IO protocols', 'bad-version' + ) + return await self._make_response(self._bad_request( + 'The client is using an unsupported version of the Socket.IO ' + 'or Engine.IO protocols' + ), environ) + + if 'j' in query: + jsonp = True + try: + jsonp_index = int(query['j'][0]) + except (ValueError, KeyError, IndexError): + # Invalid JSONP index number + pass + + if jsonp and jsonp_index is None: + self._log_error_once('Invalid JSONP index number', + 'bad-jsonp-index') + r = self._bad_request('Invalid JSONP index number') + elif method == 'GET': + upgrade_header = environ.get('HTTP_UPGRADE').lower() \ + if 'HTTP_UPGRADE' in environ else None + if sid is None: + # transport must be one of 'polling' or 'websocket'. + # if 'websocket', the HTTP_UPGRADE header must match. + if transport == 'polling' \ + or transport == upgrade_header == 'websocket': + r = await self._handle_connect(environ, transport, + jsonp_index) + else: + self._log_error_once('Invalid websocket upgrade', + 'bad-upgrade') + r = self._bad_request('Invalid websocket upgrade') + else: + if sid not in self.sockets: + self._log_error_once(f'Invalid session {sid}', 'bad-sid') + r = self._bad_request(f'Invalid session {sid}') + else: + try: + socket = self._get_socket(sid) + except KeyError as e: # pragma: no cover + self._log_error_once(f'{e} {sid}', 'bad-sid') + r = self._bad_request(f'{e} {sid}') + else: + if self.transport(sid) != transport and \ + transport != upgrade_header: + self._log_error_once( + f'Invalid transport for session {sid}', + 'bad-transport') + r = self._bad_request('Invalid transport') + else: + try: + packets = await socket.handle_get_request( + environ) + if isinstance(packets, list): + r = self._ok(packets, + jsonp_index=jsonp_index) + else: + r = packets + except exceptions.EngineIOError: + if sid in self.sockets: # pragma: no cover + await self.disconnect(sid) + r = self._bad_request() + if sid in self.sockets and \ + self.sockets[sid].closed: + del self.sockets[sid] + elif method == 'POST': + if sid is None or sid not in self.sockets: + self._log_error_once(f'Invalid session {sid}', 'bad-sid') + r = self._bad_request(f'Invalid session {sid}') + else: + socket = self._get_socket(sid) + try: + await socket.handle_post_request(environ) + r = self._ok(jsonp_index=jsonp_index) + except exceptions.EngineIOError: + if sid in self.sockets: # pragma: no cover + await self.disconnect(sid) + r = self._bad_request() + except: # pragma: no cover + # for any other unexpected errors, we log the error + # and keep going + self.logger.exception('post request handler error') + r = self._ok(jsonp_index=jsonp_index) + elif method == 'OPTIONS': + r = self._ok() + else: + self.logger.warning('Method %s not supported', method) + r = self._method_not_found() + if not isinstance(r, dict): + return r + if self.http_compression and \ + len(r['response']) >= self.compression_threshold: + encodings = [e.split(';')[0].strip() for e in + environ.get('HTTP_ACCEPT_ENCODING', '').split(',')] + for encoding in encodings: + if encoding in self.compression_methods: + r['response'] = \ + getattr(self, '_' + encoding)(r['response']) + r['headers'] += [('Content-Encoding', encoding)] + break + return await self._make_response(r, environ) + + async def shutdown(self): + """Stop Socket.IO background tasks. + + This method stops background activity initiated by the Socket.IO + server. It must be called before shutting down the web server. + """ + self.logger.info('Socket.IO is shutting down') + if self.service_task_event: # pragma: no cover + self.service_task_event.set() + await self.service_task_handle + self.service_task_handle = None + + def start_background_task(self, target, *args, **kwargs): + """Start a background task using the appropriate async model. + + This is a utility function that applications can use to start a + background task using the method that is compatible with the + selected async mode. + + :param target: the target function to execute. + :param args: arguments to pass to the function. + :param kwargs: keyword arguments to pass to the function. + + The return value is a ``asyncio.Task`` object. + """ + return asyncio.ensure_future(target(*args, **kwargs)) + + async def sleep(self, seconds=0): + """Sleep for the requested amount of time using the appropriate async + model. + + This is a utility function that applications can use to put a task to + sleep without having to worry about using the correct call for the + selected async mode. + + Note: this method is a coroutine. + """ + return await asyncio.sleep(seconds) + + def create_queue(self, *args, **kwargs): + """Create a queue object using the appropriate async model. + + This is a utility function that applications can use to create a queue + without having to worry about using the correct call for the selected + async mode. For asyncio based async modes, this returns an instance of + ``asyncio.Queue``. + """ + return asyncio.Queue(*args, **kwargs) + + def get_queue_empty_exception(self): + """Return the queue empty exception for the appropriate async model. + + This is a utility function that applications can use to work with a + queue without having to worry about using the correct call for the + selected async mode. For asyncio based async modes, this returns an + instance of ``asyncio.QueueEmpty``. + """ + return asyncio.QueueEmpty + + def create_event(self, *args, **kwargs): + """Create an event object using the appropriate async model. + + This is a utility function that applications can use to create an + event without having to worry about using the correct call for the + selected async mode. For asyncio based async modes, this returns + an instance of ``asyncio.Event``. + """ + return asyncio.Event(*args, **kwargs) + + async def _make_response(self, response_dict, environ): + cors_headers = self._cors_headers(environ) + make_response = self._async['make_response'] + if inspect.iscoroutinefunction(make_response): + response = await make_response( + response_dict['status'], + response_dict['headers'] + cors_headers, + response_dict['response'], environ) + else: + response = make_response( + response_dict['status'], + response_dict['headers'] + cors_headers, + response_dict['response'], environ) + return response + + async def _handle_connect(self, environ, transport, jsonp_index=None): + """Handle a client connection request.""" + if self.start_service_task: + # start the service task to monitor connected clients + self.start_service_task = False + self.service_task_handle = self.start_background_task( + self._service_task) + + sid = self.generate_id() + s = async_socket.AsyncSocket(self, sid) + self.sockets[sid] = s + + pkt = packet.Packet(packet.OPEN, { + 'sid': sid, + 'upgrades': self._upgrades(sid, transport), + 'pingTimeout': int(self.ping_timeout * 1000), + 'pingInterval': int( + self.ping_interval + self.ping_interval_grace_period) * 1000, + 'maxPayload': self.max_http_buffer_size, + }) + await s.send(pkt) + s.schedule_ping() + + ret = await self._trigger_event('connect', sid, environ, + run_async=False) + if ret is not None and ret is not True: + del self.sockets[sid] + self.logger.warning('Application rejected connection') + return self._unauthorized(ret or None) + + if transport == 'websocket': + ret = await s.handle_get_request(environ) + if s.closed and sid in self.sockets: + # websocket connection ended, so we are done + del self.sockets[sid] + return ret + else: + s.connected = True + headers = None + if self.cookie: + if isinstance(self.cookie, dict): + headers = [( + 'Set-Cookie', + self._generate_sid_cookie(sid, self.cookie) + )] + else: + headers = [( + 'Set-Cookie', + self._generate_sid_cookie(sid, { + 'name': self.cookie, 'path': '/', 'SameSite': 'Lax' + }) + )] + try: + return self._ok(await s.poll(), headers=headers, + jsonp_index=jsonp_index) + except exceptions.QueueEmpty: + return self._bad_request() + + async def _trigger_event(self, event, *args, **kwargs): + """Invoke an event handler.""" + run_async = kwargs.pop('run_async', False) + ret = None + if event in self.handlers: + if inspect.iscoroutinefunction(self.handlers[event]): + async def run_async_handler(): + try: + try: + return await self.handlers[event](*args) + except TypeError: + if event == 'disconnect' and \ + len(args) == 2: # pragma: no branch + # legacy disconnect events do not have a reason + # argument + return await self.handlers[event](args[0]) + else: # pragma: no cover + raise + except asyncio.CancelledError: # pragma: no cover + pass + except: + self.logger.exception(event + ' async handler error') + if event == 'connect': + # if connect handler raised error we reject the + # connection + return False + + if run_async: + ret = self.start_background_task(run_async_handler) + task_reference_holder.add(ret) + ret.add_done_callback(task_reference_holder.discard) + else: + ret = await run_async_handler() + else: + async def run_sync_handler(): + try: + try: + return self.handlers[event](*args) + except TypeError: + if event == 'disconnect' and \ + len(args) == 2: # pragma: no branch + # legacy disconnect events do not have a reason + # argument + return self.handlers[event](args[0]) + else: # pragma: no cover + raise + except: + self.logger.exception(event + ' handler error') + if event == 'connect': + # if connect handler raised error we reject the + # connection + return False + + if run_async: + ret = self.start_background_task(run_sync_handler) + task_reference_holder.add(ret) + ret.add_done_callback(task_reference_holder.discard) + else: + ret = await run_sync_handler() + return ret + + async def _service_task(self): # pragma: no cover + """Monitor connected clients and clean up those that time out.""" + loop = asyncio.get_running_loop() + self.service_task_event = self.create_event() + while not self.service_task_event.is_set(): + if len(self.sockets) == 0: + # nothing to do + try: + await asyncio.wait_for(self.service_task_event.wait(), + timeout=self.ping_timeout) + break + except asyncio.TimeoutError: + continue + + # go through the entire client list in a ping interval cycle + sleep_interval = self.ping_timeout / len(self.sockets) + + try: + # iterate over the current clients + for s in self.sockets.copy().values(): + if s.closed: + try: + del self.sockets[s.sid] + except KeyError: + # the socket could have also been removed by + # the _get_socket() method from another thread + pass + elif not s.closing: + await s.check_ping_timeout() + try: + await asyncio.wait_for(self.service_task_event.wait(), + timeout=sleep_interval) + raise KeyboardInterrupt() + except asyncio.TimeoutError: + continue + except ( + SystemExit, + KeyboardInterrupt, + asyncio.CancelledError, + GeneratorExit, + ): + self.logger.info('service task canceled') + break + except: + if loop.is_closed(): + self.logger.info('event loop is closed, exiting service ' + 'task') + break + + # an unexpected exception has occurred, log it and continue + self.logger.exception('service task exception') diff --git a/venv/lib/python3.9/site-packages/engineio/async_socket.py b/venv/lib/python3.9/site-packages/engineio/async_socket.py new file mode 100644 index 0000000..cfdbe1a --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/async_socket.py @@ -0,0 +1,261 @@ +import asyncio +import sys +import time + +from . import base_socket +from . import exceptions +from . import packet +from . import payload + + +class AsyncSocket(base_socket.BaseSocket): + async def poll(self): + """Wait for packets to send to the client.""" + try: + packets = [await asyncio.wait_for( + self.queue.get(), + self.server.ping_interval + self.server.ping_timeout)] + self.queue.task_done() + except (asyncio.TimeoutError, asyncio.CancelledError): + raise exceptions.QueueEmpty() + if packets == [None]: + return [] + while True: + try: + pkt = self.queue.get_nowait() + self.queue.task_done() + if pkt is None: + self.queue.put_nowait(None) + break + packets.append(pkt) + except asyncio.QueueEmpty: + break + return packets + + async def receive(self, pkt): + """Receive packet from the client.""" + self.server.logger.info('%s: Received packet %s data %s', + self.sid, packet.packet_names[pkt.packet_type], + pkt.data if not isinstance(pkt.data, bytes) + else '') + if pkt.packet_type == packet.PONG: + self.schedule_ping() + elif pkt.packet_type == packet.MESSAGE: + await self.server._trigger_event( + 'message', self.sid, pkt.data, + run_async=self.server.async_handlers) + elif pkt.packet_type == packet.UPGRADE: + await self.send(packet.Packet(packet.NOOP)) + elif pkt.packet_type == packet.CLOSE: + await self.close(wait=False, abort=True, + reason=self.server.reason.CLIENT_DISCONNECT) + else: + raise exceptions.UnknownPacketError() + + async def check_ping_timeout(self): + """Make sure the client is still sending pings.""" + if self.closed: + raise exceptions.SocketIsClosedError() + if self.last_ping and \ + time.time() - self.last_ping > self.server.ping_timeout: + self.server.logger.info('%s: Client is gone, closing socket', + self.sid) + # Passing abort=False here will cause close() to write a + # CLOSE packet. This has the effect of updating half-open sockets + # to their correct state of disconnected + await self.close(wait=False, abort=False, + reason=self.server.reason.PING_TIMEOUT) + return False + return True + + async def send(self, pkt): + """Send a packet to the client.""" + if not await self.check_ping_timeout(): + return + else: + await self.queue.put(pkt) + self.server.logger.info('%s: Sending packet %s data %s', + self.sid, packet.packet_names[pkt.packet_type], + pkt.data if not isinstance(pkt.data, bytes) + else '') + + async def handle_get_request(self, environ): + """Handle a long-polling GET request from the client.""" + connections = [ + s.strip() + for s in environ.get('HTTP_CONNECTION', '').lower().split(',')] + transport = environ.get('HTTP_UPGRADE', '').lower() + if 'upgrade' in connections and transport in self.upgrade_protocols: + self.server.logger.info('%s: Received request to upgrade to %s', + self.sid, transport) + return await getattr(self, '_upgrade_' + transport)(environ) + if self.upgrading or self.upgraded: + # we are upgrading to WebSocket, do not return any more packets + # through the polling endpoint + return [packet.Packet(packet.NOOP)] + try: + packets = await self.poll() + except exceptions.QueueEmpty: + exc = sys.exc_info() + await self.close(wait=False, + reason=self.server.reason.TRANSPORT_ERROR) + raise exc[1].with_traceback(exc[2]) + return packets + + async def handle_post_request(self, environ): + """Handle a long-polling POST request from the client.""" + length = int(environ.get('CONTENT_LENGTH', '0')) + if length > self.server.max_http_buffer_size: + raise exceptions.ContentTooLongError() + else: + body = (await environ['wsgi.input'].read(length)).decode('utf-8') + p = payload.Payload(encoded_payload=body) + for pkt in p.packets: + await self.receive(pkt) + + async def close(self, wait=True, abort=False, reason=None): + """Close the socket connection.""" + if not self.closed and not self.closing: + self.closing = True + await self.server._trigger_event( + 'disconnect', self.sid, + reason or self.server.reason.SERVER_DISCONNECT, + run_async=False) + if not abort: + await self.send(packet.Packet(packet.CLOSE)) + self.closed = True + if wait: + await self.queue.join() + + def schedule_ping(self): + self.server.start_background_task(self._send_ping) + + async def _send_ping(self): + self.last_ping = None + await asyncio.sleep(self.server.ping_interval) + if not self.closing and not self.closed: + self.last_ping = time.time() + await self.send(packet.Packet(packet.PING)) + + async def _upgrade_websocket(self, environ): + """Upgrade the connection from polling to websocket.""" + if self.upgraded: + raise OSError('Socket has been upgraded already') + if self.server._async['websocket'] is None: + # the selected async mode does not support websocket + return self.server._bad_request() + ws = self.server._async['websocket']( + self._websocket_handler, self.server) + return await ws(environ) + + async def _websocket_handler(self, ws): + """Engine.IO handler for websocket transport.""" + async def websocket_wait(): + data = await ws.wait() + if data and len(data) > self.server.max_http_buffer_size: + raise ValueError('packet is too large') + return data + + if self.connected: + # the socket was already connected, so this is an upgrade + self.upgrading = True # hold packet sends during the upgrade + + try: + pkt = await websocket_wait() + except OSError: # pragma: no cover + return + decoded_pkt = packet.Packet(encoded_packet=pkt) + if decoded_pkt.packet_type != packet.PING or \ + decoded_pkt.data != 'probe': + self.server.logger.info( + '%s: Failed websocket upgrade, no PING packet', self.sid) + self.upgrading = False + return + await ws.send(packet.Packet(packet.PONG, data='probe').encode()) + await self.queue.put(packet.Packet(packet.NOOP)) # end poll + + try: + pkt = await websocket_wait() + except OSError: # pragma: no cover + self.upgrading = False + return + decoded_pkt = packet.Packet(encoded_packet=pkt) + if decoded_pkt.packet_type != packet.UPGRADE: + self.upgraded = False + self.server.logger.info( + ('%s: Failed websocket upgrade, expected UPGRADE packet, ' + 'received %s instead.'), + self.sid, pkt) + self.upgrading = False + return + self.upgraded = True + self.upgrading = False + else: + self.connected = True + self.upgraded = True + + # start separate writer thread + async def writer(): + while True: + packets = None + try: + packets = await self.poll() + except exceptions.QueueEmpty: + break + if not packets: + # empty packet list returned -> connection closed + break + try: + for pkt in packets: + await ws.send(pkt.encode()) + except: + break + await ws.close() + + writer_task = asyncio.ensure_future(writer()) + + self.server.logger.info( + '%s: Upgrade to websocket successful', self.sid) + + while True: + p = None + wait_task = asyncio.ensure_future(websocket_wait()) + try: + p = await asyncio.wait_for( + wait_task, + self.server.ping_interval + self.server.ping_timeout) + except asyncio.CancelledError: # pragma: no cover + # there is a bug (https://bugs.python.org/issue30508) in + # asyncio that causes a "Task exception never retrieved" error + # to appear when wait_task raises an exception before it gets + # cancelled. Calling wait_task.exception() prevents the error + # from being issued in Python 3.6, but causes other errors in + # other versions, so we run it with all errors suppressed and + # hope for the best. + try: + wait_task.exception() + except: + pass + break + except: + break + if p is None: + # connection closed by client + break + pkt = packet.Packet(encoded_packet=p) + try: + await self.receive(pkt) + except exceptions.UnknownPacketError: # pragma: no cover + pass + except exceptions.SocketIsClosedError: # pragma: no cover + self.server.logger.info('Receive error -- socket is closed') + break + except: # pragma: no cover + # if we get an unexpected exception we log the error and exit + # the connection properly + self.server.logger.exception('Unknown receive error') + + await self.queue.put(None) # unlock the writer task so it can exit + await asyncio.wait_for(writer_task, timeout=None) + await self.close(wait=False, abort=True, + reason=self.server.reason.TRANSPORT_CLOSE) diff --git a/venv/lib/python3.9/site-packages/engineio/base_client.py b/venv/lib/python3.9/site-packages/engineio/base_client.py new file mode 100644 index 0000000..01a42c5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/base_client.py @@ -0,0 +1,169 @@ +import logging +import signal +import threading +import time +import urllib +from . import packet + +default_logger = logging.getLogger('engineio.client') +connected_clients = [] + + +def signal_handler(sig, frame): + """SIGINT handler. + + Disconnect all active clients and then invoke the original signal handler. + """ + for client in connected_clients[:]: + if not client.is_asyncio_based(): + client.disconnect() + if callable(original_signal_handler): + return original_signal_handler(sig, frame) + else: # pragma: no cover + # Handle case where no original SIGINT handler was present. + return signal.default_int_handler(sig, frame) + + +original_signal_handler = None + + +class BaseClient: + event_names = ['connect', 'disconnect', 'message'] + + class reason: + """Disconnection reasons.""" + #: Client-initiated disconnection. + CLIENT_DISCONNECT = 'client disconnect' + #: Server-initiated disconnection. + SERVER_DISCONNECT = 'server disconnect' + #: Transport error. + TRANSPORT_ERROR = 'transport error' + + def __init__(self, logger=False, json=None, request_timeout=5, + http_session=None, ssl_verify=True, handle_sigint=True, + websocket_extra_options=None, timestamp_requests=True): + global original_signal_handler + if handle_sigint and original_signal_handler is None and \ + threading.current_thread() == threading.main_thread(): + original_signal_handler = signal.signal(signal.SIGINT, + signal_handler) + self.handlers = {} + self.base_url = None + self.transports = None + self.current_transport = None + self.sid = None + self.upgrades = None + self.ping_interval = None + self.ping_timeout = None + self.http = http_session + self.external_http = http_session is not None + self.handle_sigint = handle_sigint + self.ws = None + self.read_loop_task = None + self.write_loop_task = None + self.queue = self.create_queue() + self.queue_empty = self.get_queue_empty_exception() + self.state = 'disconnected' + self.ssl_verify = ssl_verify + self.websocket_extra_options = websocket_extra_options or {} + self.timestamp_requests = timestamp_requests + + if json is not None: + packet.Packet.json = json + if not isinstance(logger, bool): + self.logger = logger + else: + self.logger = default_logger + if self.logger.level == logging.NOTSET: + if logger: + self.logger.setLevel(logging.INFO) + else: + self.logger.setLevel(logging.ERROR) + self.logger.addHandler(logging.StreamHandler()) + + self.request_timeout = request_timeout + + def is_asyncio_based(self): + return False + + def on(self, event, handler=None): + """Register an event handler. + + :param event: The event name. Can be ``'connect'``, ``'message'`` or + ``'disconnect'``. + :param handler: The function that should be invoked to handle the + event. When this parameter is not given, the method + acts as a decorator for the handler function. + + Example usage:: + + # as a decorator: + @eio.on('connect') + def connect_handler(): + print('Connection request') + + # as a method: + def message_handler(msg): + print('Received message: ', msg) + eio.send('response') + eio.on('message', message_handler) + """ + if event not in self.event_names: + raise ValueError('Invalid event') + + def set_handler(handler): + self.handlers[event] = handler + return handler + + if handler is None: + return set_handler + set_handler(handler) + + def transport(self): + """Return the name of the transport currently in use. + + The possible values returned by this function are ``'polling'`` and + ``'websocket'``. + """ + return self.current_transport + + def _reset(self): + self.state = 'disconnected' + self.sid = None + + def _get_engineio_url(self, url, engineio_path, transport): + """Generate the Engine.IO connection URL.""" + engineio_path = engineio_path.strip('/') + parsed_url = urllib.parse.urlparse(url) + + if transport == 'polling': + scheme = 'http' + elif transport == 'websocket': + scheme = 'ws' + else: # pragma: no cover + raise ValueError('invalid transport') + if parsed_url.scheme in ['https', 'wss']: + scheme += 's' + + return ('{scheme}://{netloc}/{path}/?{query}' + '{sep}transport={transport}&EIO=4').format( + scheme=scheme, netloc=parsed_url.netloc, + path=engineio_path, query=parsed_url.query, + sep='&' if parsed_url.query else '', + transport=transport) + + def _get_url_timestamp(self): + """Generate the Engine.IO query string timestamp.""" + if not self.timestamp_requests: + return '' + return '&t=' + str(time.time()) + + def create_queue(self, *args, **kwargs): # pragma: no cover + """Create a queue object.""" + raise NotImplementedError('must be implemented in a subclass') + + def get_queue_empty_exception(self): # pragma: no cover + """Return the queue empty exception raised by queues created by the + ``create_queue()`` method. + """ + raise NotImplementedError('must be implemented in a subclass') diff --git a/venv/lib/python3.9/site-packages/engineio/base_server.py b/venv/lib/python3.9/site-packages/engineio/base_server.py new file mode 100644 index 0000000..7d717fb --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/base_server.py @@ -0,0 +1,358 @@ +import base64 +import gzip +import importlib +import io +import logging +import secrets +import zlib + +from . import packet +from . import payload + +default_logger = logging.getLogger('engineio.server') + + +class BaseServer: + compression_methods = ['gzip', 'deflate'] + event_names = ['connect', 'disconnect', 'message'] + valid_transports = ['polling', 'websocket'] + _default_monitor_clients = True + sequence_number = 0 + + class reason: + """Disconnection reasons.""" + #: Server-initiated disconnection. + SERVER_DISCONNECT = 'server disconnect' + #: Client-initiated disconnection. + CLIENT_DISCONNECT = 'client disconnect' + #: Ping timeout. + PING_TIMEOUT = 'ping timeout' + #: Transport close. + TRANSPORT_CLOSE = 'transport close' + #: Transport error. + TRANSPORT_ERROR = 'transport error' + + def __init__(self, async_mode=None, ping_interval=25, ping_timeout=20, + max_http_buffer_size=1000000, allow_upgrades=True, + http_compression=True, compression_threshold=1024, + cookie=None, cors_allowed_origins=None, + cors_credentials=True, logger=False, json=None, + async_handlers=True, monitor_clients=None, transports=None, + **kwargs): + self.ping_timeout = ping_timeout + if isinstance(ping_interval, tuple): + self.ping_interval = ping_interval[0] + self.ping_interval_grace_period = ping_interval[1] + else: + self.ping_interval = ping_interval + self.ping_interval_grace_period = 0 + self.max_http_buffer_size = max_http_buffer_size + self.allow_upgrades = allow_upgrades + self.http_compression = http_compression + self.compression_threshold = compression_threshold + self.cookie = cookie + self.cors_allowed_origins = cors_allowed_origins + self.cors_credentials = cors_credentials + self.async_handlers = async_handlers + self.sockets = {} + self.handlers = {} + self.log_message_keys = set() + self.start_service_task = monitor_clients \ + if monitor_clients is not None else self._default_monitor_clients + self.service_task_handle = None + self.service_task_event = None + if json is not None: + packet.Packet.json = json + if not isinstance(logger, bool): + self.logger = logger + else: + self.logger = default_logger + if self.logger.level == logging.NOTSET: + if logger: + self.logger.setLevel(logging.INFO) + else: + self.logger.setLevel(logging.ERROR) + self.logger.addHandler(logging.StreamHandler()) + modes = self.async_modes() + if async_mode is not None: + modes = [async_mode] if async_mode in modes else [] + self._async = None + self.async_mode = None + for mode in modes: + try: + self._async = importlib.import_module( + 'engineio.async_drivers.' + mode)._async + asyncio_based = self._async['asyncio'] \ + if 'asyncio' in self._async else False + if asyncio_based != self.is_asyncio_based(): + continue # pragma: no cover + self.async_mode = mode + break + except ImportError: + pass + if self.async_mode is None: + raise ValueError('Invalid async_mode specified') + if self.is_asyncio_based() and \ + ('asyncio' not in self._async or not + self._async['asyncio']): # pragma: no cover + raise ValueError('The selected async_mode is not asyncio ' + 'compatible') + if not self.is_asyncio_based() and 'asyncio' in self._async and \ + self._async['asyncio']: # pragma: no cover + raise ValueError('The selected async_mode requires asyncio and ' + 'must use the AsyncServer class') + if transports is not None: + if isinstance(transports, str): + transports = [transports] + transports = [transport for transport in transports + if transport in self.valid_transports] + if not transports: + raise ValueError('No valid transports provided') + self.transports = transports or self.valid_transports + self.logger.info('Server initialized for %s.', self.async_mode) + + def is_asyncio_based(self): + return False + + def async_modes(self): + return ['eventlet', 'gevent_uwsgi', 'gevent', 'threading'] + + def on(self, event, handler=None): + """Register an event handler. + + :param event: The event name. Can be ``'connect'``, ``'message'`` or + ``'disconnect'``. + :param handler: The function that should be invoked to handle the + event. When this parameter is not given, the method + acts as a decorator for the handler function. + + Example usage:: + + # as a decorator: + @eio.on('connect') + def connect_handler(sid, environ): + print('Connection request') + if environ['REMOTE_ADDR'] in blacklisted: + return False # reject + + # as a method: + def message_handler(sid, msg): + print('Received message: ', msg) + eio.send(sid, 'response') + eio.on('message', message_handler) + + The handler function receives the ``sid`` (session ID) for the + client as first argument. The ``'connect'`` event handler receives the + WSGI environment as a second argument, and can return ``False`` to + reject the connection. The ``'message'`` handler receives the message + payload as a second argument. The ``'disconnect'`` handler does not + take a second argument. + """ + if event not in self.event_names: + raise ValueError('Invalid event') + + def set_handler(handler): + self.handlers[event] = handler + return handler + + if handler is None: + return set_handler + set_handler(handler) + + def transport(self, sid): + """Return the name of the transport used by the client. + + The two possible values returned by this function are ``'polling'`` + and ``'websocket'``. + + :param sid: The session of the client. + """ + return 'websocket' if self._get_socket(sid).upgraded else 'polling' + + def create_queue(self, *args, **kwargs): + """Create a queue object using the appropriate async model. + + This is a utility function that applications can use to create a queue + without having to worry about using the correct call for the selected + async mode. + """ + return self._async['queue'](*args, **kwargs) + + def get_queue_empty_exception(self): + """Return the queue empty exception for the appropriate async model. + + This is a utility function that applications can use to work with a + queue without having to worry about using the correct call for the + selected async mode. + """ + return self._async['queue_empty'] + + def create_event(self, *args, **kwargs): + """Create an event object using the appropriate async model. + + This is a utility function that applications can use to create an + event without having to worry about using the correct call for the + selected async mode. + """ + return self._async['event'](*args, **kwargs) + + def generate_id(self): + """Generate a unique session id.""" + id = base64.b64encode( + secrets.token_bytes(12) + self.sequence_number.to_bytes(3, 'big')) + self.sequence_number = (self.sequence_number + 1) & 0xffffff + return id.decode('utf-8').replace('/', '_').replace('+', '-') + + def _generate_sid_cookie(self, sid, attributes): + """Generate the sid cookie.""" + cookie = attributes.get('name', 'io') + '=' + sid + for attribute, value in attributes.items(): + if attribute == 'name': + continue + if callable(value): + value = value() + if value is True: + cookie += '; ' + attribute + else: + cookie += '; ' + attribute + '=' + value + return cookie + + def _upgrades(self, sid, transport): + """Return the list of possible upgrades for a client connection.""" + if not self.allow_upgrades or self._get_socket(sid).upgraded or \ + transport == 'websocket': + return [] + if self._async['websocket'] is None: # pragma: no cover + self._log_error_once( + 'The WebSocket transport is not available, you must install a ' + 'WebSocket server that is compatible with your async mode to ' + 'enable it. See the documentation for details.', + 'no-websocket') + return [] + return ['websocket'] + + def _get_socket(self, sid): + """Return the socket object for a given session.""" + try: + s = self.sockets[sid] + except KeyError: + raise KeyError('Session not found') + if s.closed: + del self.sockets[sid] + raise KeyError('Session is disconnected') + return s + + def _ok(self, packets=None, headers=None, jsonp_index=None): + """Generate a successful HTTP response.""" + if packets is not None: + if headers is None: + headers = [] + headers += [('Content-Type', 'text/plain; charset=UTF-8')] + return {'status': '200 OK', + 'headers': headers, + 'response': payload.Payload(packets=packets).encode( + jsonp_index=jsonp_index).encode('utf-8')} + else: + return {'status': '200 OK', + 'headers': [('Content-Type', 'text/plain')], + 'response': b'OK'} + + def _bad_request(self, message=None): + """Generate a bad request HTTP error response.""" + if message is None: + message = 'Bad Request' + message = packet.Packet.json.dumps(message) + return {'status': '400 BAD REQUEST', + 'headers': [('Content-Type', 'text/plain')], + 'response': message.encode('utf-8')} + + def _method_not_found(self): + """Generate a method not found HTTP error response.""" + return {'status': '405 METHOD NOT FOUND', + 'headers': [('Content-Type', 'text/plain')], + 'response': b'Method Not Found'} + + def _unauthorized(self, message=None): + """Generate a unauthorized HTTP error response.""" + if message is None: + message = 'Unauthorized' + message = packet.Packet.json.dumps(message) + return {'status': '401 UNAUTHORIZED', + 'headers': [('Content-Type', 'application/json')], + 'response': message.encode('utf-8')} + + def _cors_allowed_origins(self, environ): + if self.cors_allowed_origins is None: + allowed_origins = [] + if 'wsgi.url_scheme' in environ and 'HTTP_HOST' in environ: + allowed_origins.append('{scheme}://{host}'.format( + scheme=environ['wsgi.url_scheme'], + host=environ['HTTP_HOST'])) + if 'HTTP_X_FORWARDED_PROTO' in environ or \ + 'HTTP_X_FORWARDED_HOST' in environ: + scheme = environ.get( + 'HTTP_X_FORWARDED_PROTO', + environ['wsgi.url_scheme']).split(',')[0].strip() + allowed_origins.append('{scheme}://{host}'.format( + scheme=scheme, host=environ.get( + 'HTTP_X_FORWARDED_HOST', + environ['HTTP_HOST']).split( + ',')[0].strip())) + elif self.cors_allowed_origins == '*': + allowed_origins = None + elif isinstance(self.cors_allowed_origins, str): + allowed_origins = [self.cors_allowed_origins] + elif callable(self.cors_allowed_origins): + origin = environ.get('HTTP_ORIGIN') + try: + is_allowed = self.cors_allowed_origins(origin, environ) + except TypeError: + is_allowed = self.cors_allowed_origins(origin) + allowed_origins = [origin] if is_allowed else [] + else: + if '*' in self.cors_allowed_origins: + allowed_origins = None + else: + allowed_origins = self.cors_allowed_origins + return allowed_origins + + def _cors_headers(self, environ): + """Return the cross-origin-resource-sharing headers.""" + if self.cors_allowed_origins == []: + # special case, CORS handling is completely disabled + return [] + headers = [] + allowed_origins = self._cors_allowed_origins(environ) + if 'HTTP_ORIGIN' in environ and \ + (allowed_origins is None or environ['HTTP_ORIGIN'] in + allowed_origins): + headers = [('Access-Control-Allow-Origin', environ['HTTP_ORIGIN'])] + if environ['REQUEST_METHOD'] == 'OPTIONS': + headers += [('Access-Control-Allow-Methods', 'OPTIONS, GET, POST')] + if 'HTTP_ACCESS_CONTROL_REQUEST_HEADERS' in environ: + headers += [('Access-Control-Allow-Headers', + environ['HTTP_ACCESS_CONTROL_REQUEST_HEADERS'])] + if self.cors_credentials: + headers += [('Access-Control-Allow-Credentials', 'true')] + return headers + + def _gzip(self, response): + """Apply gzip compression to a response.""" + bytesio = io.BytesIO() + with gzip.GzipFile(fileobj=bytesio, mode='w') as gz: + gz.write(response) + return bytesio.getvalue() + + def _deflate(self, response): + """Apply deflate compression to a response.""" + return zlib.compress(response) + + def _log_error_once(self, message, message_key): + """Log message with logging.ERROR level the first time, then log + with given level.""" + if message_key not in self.log_message_keys: + self.logger.error(message + ' (further occurrences of this error ' + 'will be logged with level INFO)') + self.log_message_keys.add(message_key) + else: + self.logger.info(message) diff --git a/venv/lib/python3.9/site-packages/engineio/base_socket.py b/venv/lib/python3.9/site-packages/engineio/base_socket.py new file mode 100644 index 0000000..6b5d7dc --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/base_socket.py @@ -0,0 +1,14 @@ +class BaseSocket: + upgrade_protocols = ['websocket'] + + def __init__(self, server, sid): + self.server = server + self.sid = sid + self.queue = self.server.create_queue() + self.last_ping = None + self.connected = False + self.upgrading = False + self.upgraded = False + self.closing = False + self.closed = False + self.session = {} diff --git a/venv/lib/python3.9/site-packages/engineio/client.py b/venv/lib/python3.9/site-packages/engineio/client.py new file mode 100644 index 0000000..e8865df --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/client.py @@ -0,0 +1,636 @@ +from base64 import b64encode +from http.cookies import SimpleCookie +import logging +import queue +import ssl +import threading +import time +import urllib +from engineio.json import JSONDecodeError + +try: + import requests +except ImportError: # pragma: no cover + requests = None +try: + import websocket +except ImportError: # pragma: no cover + websocket = None +from . import base_client +from . import exceptions +from . import packet +from . import payload + +default_logger = logging.getLogger('engineio.client') + + +class Client(base_client.BaseClient): + """An Engine.IO client. + + This class implements a fully compliant Engine.IO web client with support + for websocket and long-polling transports. + + :param logger: To enable logging set to ``True`` or pass a logger object to + use. To disable logging set to ``False``. The default is + ``False``. Note that fatal errors are logged even when + ``logger`` is ``False``. + :param json: An alternative JSON module to use for encoding and decoding + packets. Custom json modules must have ``dumps`` and ``loads`` + functions that are compatible with the standard library + versions. This is a process-wide setting, all instantiated + servers and clients must use the same JSON module. + :param request_timeout: A timeout in seconds for requests. The default is + 5 seconds. + :param http_session: an initialized ``requests.Session`` object to be used + when sending requests to the server. Use it if you + need to add special client options such as proxy + servers, SSL certificates, custom CA bundle, etc. + :param ssl_verify: ``True`` to verify SSL certificates, or ``False`` to + skip SSL certificate verification, allowing + connections to servers with self signed certificates. + The default is ``True``. + :param handle_sigint: Set to ``True`` to automatically handle disconnection + when the process is interrupted, or to ``False`` to + leave interrupt handling to the calling application. + Interrupt handling can only be enabled when the + client instance is created in the main thread. + :param websocket_extra_options: Dictionary containing additional keyword + arguments passed to + ``websocket.create_connection()``. + :param timestamp_requests: If ``True`` a timestamp is added to the query + string of Socket.IO requests as a cache-busting + measure. Set to ``False`` to disable. + """ + def connect(self, url, headers=None, transports=None, + engineio_path='engine.io'): + """Connect to an Engine.IO server. + + :param url: The URL of the Engine.IO server. It can include custom + query string parameters if required by the server. + :param headers: A dictionary with custom headers to send with the + connection request. + :param transports: The list of allowed transports. Valid transports + are ``'polling'`` and ``'websocket'``. If not + given, the polling transport is connected first, + then an upgrade to websocket is attempted. + :param engineio_path: The endpoint where the Engine.IO server is + installed. The default value is appropriate for + most cases. + + Example usage:: + + eio = engineio.Client() + eio.connect('http://localhost:5000') + """ + if self.state != 'disconnected': + raise ValueError('Client is not in a disconnected state') + valid_transports = ['polling', 'websocket'] + if transports is not None: + if isinstance(transports, str): + transports = [transports] + transports = [transport for transport in transports + if transport in valid_transports] + if not transports: + raise ValueError('No valid transports provided') + self.transports = transports or valid_transports + return getattr(self, '_connect_' + self.transports[0])( + url, headers or {}, engineio_path) + + def wait(self): + """Wait until the connection with the server ends. + + Client applications can use this function to block the main thread + during the life of the connection. + """ + if self.read_loop_task: + self.read_loop_task.join() + + def send(self, data): + """Send a message to the server. + + :param data: The data to send to the server. Data can be of type + ``str``, ``bytes``, ``list`` or ``dict``. If a ``list`` + or ``dict``, the data will be serialized as JSON. + """ + self._send_packet(packet.Packet(packet.MESSAGE, data=data)) + + def disconnect(self, abort=False, reason=None): + """Disconnect from the server. + + :param abort: If set to ``True``, do not wait for background tasks + associated with the connection to end. + """ + if self.state == 'connected': + self._send_packet(packet.Packet(packet.CLOSE)) + self.queue.put(None) + self.state = 'disconnecting' + self._trigger_event('disconnect', + reason or self.reason.CLIENT_DISCONNECT, + run_async=False) + if self.current_transport == 'websocket': + self.ws.close() + if not abort: + self.read_loop_task.join() + self.state = 'disconnected' + try: + base_client.connected_clients.remove(self) + except ValueError: # pragma: no cover + pass + self._reset() + + def start_background_task(self, target, *args, **kwargs): + """Start a background task. + + This is a utility function that applications can use to start a + background task. + + :param target: the target function to execute. + :param args: arguments to pass to the function. + :param kwargs: keyword arguments to pass to the function. + + This function returns an object that represents the background task, + on which the ``join()`` method can be invoked to wait for the task to + complete. + """ + th = threading.Thread(target=target, args=args, kwargs=kwargs, + daemon=True) + th.start() + return th + + def sleep(self, seconds=0): + """Sleep for the requested amount of time.""" + return time.sleep(seconds) + + def create_queue(self, *args, **kwargs): + """Create a queue object.""" + return queue.Queue(*args, **kwargs) + + def get_queue_empty_exception(self): + """Return the queue empty exception raised by queues created by the + ``create_queue()`` method. + """ + return queue.Empty + + def create_event(self, *args, **kwargs): + """Create an event object.""" + return threading.Event(*args, **kwargs) + + def _reset(self): + super()._reset() + while True: # pragma: no cover + try: + self.queue.get_nowait() + self.queue.task_done() + except self.queue_empty: + break + + def _connect_polling(self, url, headers, engineio_path): + """Establish a long-polling connection to the Engine.IO server.""" + if requests is None: # pragma: no cover + # not installed + self.logger.error('requests package is not installed -- cannot ' + 'send HTTP requests!') + return + self.base_url = self._get_engineio_url(url, engineio_path, 'polling') + self.logger.info('Attempting polling connection to ' + self.base_url) + r = self._send_request( + 'GET', self.base_url + self._get_url_timestamp(), headers=headers, + timeout=self.request_timeout) + if r is None or isinstance(r, str): + self._reset() + raise exceptions.ConnectionError( + r or 'Connection refused by the server') + if r.status_code < 200 or r.status_code >= 300: + self._reset() + try: + arg = r.json() + except JSONDecodeError: + arg = None + raise exceptions.ConnectionError( + 'Unexpected status code {} in server response'.format( + r.status_code), arg) + try: + p = payload.Payload(encoded_payload=r.content.decode('utf-8')) + except ValueError: + raise exceptions.ConnectionError( + 'Unexpected response from server') from None + open_packet = p.packets[0] + if open_packet.packet_type != packet.OPEN: + raise exceptions.ConnectionError( + 'OPEN packet not returned by server') + self.logger.info( + 'Polling connection accepted with ' + str(open_packet.data)) + self.sid = open_packet.data['sid'] + self.upgrades = open_packet.data['upgrades'] + self.ping_interval = int(open_packet.data['pingInterval']) / 1000.0 + self.ping_timeout = int(open_packet.data['pingTimeout']) / 1000.0 + self.current_transport = 'polling' + self.base_url += '&sid=' + self.sid + + self.state = 'connected' + base_client.connected_clients.append(self) + self._trigger_event('connect', run_async=False) + + for pkt in p.packets[1:]: + self._receive_packet(pkt) + + if 'websocket' in self.upgrades and 'websocket' in self.transports: + # attempt to upgrade to websocket + if self._connect_websocket(url, headers, engineio_path): + # upgrade to websocket succeeded, we're done here + return + + # start background tasks associated with this client + self.write_loop_task = self.start_background_task(self._write_loop) + self.read_loop_task = self.start_background_task( + self._read_loop_polling) + + def _connect_websocket(self, url, headers, engineio_path): + """Establish or upgrade to a WebSocket connection with the server.""" + if websocket is None: # pragma: no cover + # not installed + self.logger.error('websocket-client package not installed, only ' + 'polling transport is available') + return False + websocket_url = self._get_engineio_url(url, engineio_path, 'websocket') + if self.sid: + self.logger.info( + 'Attempting WebSocket upgrade to ' + websocket_url) + upgrade = True + websocket_url += '&sid=' + self.sid + else: + upgrade = False + self.base_url = websocket_url + self.logger.info( + 'Attempting WebSocket connection to ' + websocket_url) + + # get cookies and other settings from the long-polling connection + # so that they are preserved when connecting to the WebSocket route + cookies = None + extra_options = {} + if self.http: + # cookies + ck = SimpleCookie() + for cookie in self.http.cookies: + ck[cookie.name] = cookie.value + cookies = ck.output(header='', sep=';').strip() + for header, value in headers.items(): + if header.lower() == 'cookie': + if cookies: + cookies += '; ' + cookies += value + del headers[header] + break + + # auth + if 'Authorization' not in headers and self.http.auth is not None: + if not isinstance(self.http.auth, tuple): # pragma: no cover + raise ValueError('Only basic authentication is supported') + basic_auth = '{}:{}'.format( + self.http.auth[0], self.http.auth[1]).encode('utf-8') + basic_auth = b64encode(basic_auth).decode('utf-8') + headers['Authorization'] = 'Basic ' + basic_auth + + # cert + # this can be given as ('certfile', 'keyfile') or just 'certfile' + if isinstance(self.http.cert, tuple): + extra_options['sslopt'] = { + 'certfile': self.http.cert[0], + 'keyfile': self.http.cert[1]} + elif self.http.cert: + extra_options['sslopt'] = {'certfile': self.http.cert} + + # proxies + if self.http.proxies: + proxy_url = None + if websocket_url.startswith('ws://'): + proxy_url = self.http.proxies.get( + 'ws', self.http.proxies.get('http')) + else: # wss:// + proxy_url = self.http.proxies.get( + 'wss', self.http.proxies.get('https')) + if proxy_url: + parsed_url = urllib.parse.urlparse( + proxy_url if '://' in proxy_url + else 'scheme://' + proxy_url) + extra_options['http_proxy_host'] = parsed_url.hostname + extra_options['http_proxy_port'] = parsed_url.port + extra_options['http_proxy_auth'] = ( + (parsed_url.username, parsed_url.password) + if parsed_url.username or parsed_url.password + else None) + + # verify + if isinstance(self.http.verify, str): + if 'sslopt' in extra_options: + extra_options['sslopt']['ca_certs'] = self.http.verify + else: + extra_options['sslopt'] = {'ca_certs': self.http.verify} + elif not self.http.verify: + self.ssl_verify = False + + if not self.ssl_verify: + if 'sslopt' in extra_options: + extra_options['sslopt'].update({"cert_reqs": ssl.CERT_NONE}) + else: + extra_options['sslopt'] = {"cert_reqs": ssl.CERT_NONE} + + # combine internally generated options with the ones supplied by the + # caller. The caller's options take precedence. + headers.update(self.websocket_extra_options.pop('header', {})) + extra_options['header'] = headers + extra_options['cookie'] = cookies + extra_options['enable_multithread'] = True + extra_options['timeout'] = self.request_timeout + extra_options.update(self.websocket_extra_options) + try: + ws = websocket.create_connection( + websocket_url + self._get_url_timestamp(), **extra_options) + except (ConnectionError, OSError, websocket.WebSocketException): + if upgrade: + self.logger.warning( + 'WebSocket upgrade failed: connection error') + return False + else: + raise exceptions.ConnectionError('Connection error') + if upgrade: + p = packet.Packet(packet.PING, data='probe').encode() + try: + ws.send(p) + except Exception as e: # pragma: no cover + self.logger.warning( + 'WebSocket upgrade failed: unexpected send exception: %s', + str(e)) + return False + try: + p = ws.recv() + except Exception as e: # pragma: no cover + self.logger.warning( + 'WebSocket upgrade failed: unexpected recv exception: %s', + str(e)) + return False + pkt = packet.Packet(encoded_packet=p) + if pkt.packet_type != packet.PONG or pkt.data != 'probe': + self.logger.warning( + 'WebSocket upgrade failed: no PONG packet') + return False + p = packet.Packet(packet.UPGRADE).encode() + try: + ws.send(p) + except Exception as e: # pragma: no cover + self.logger.warning( + 'WebSocket upgrade failed: unexpected send exception: %s', + str(e)) + return False + self.current_transport = 'websocket' + self.logger.info('WebSocket upgrade was successful') + else: + try: + p = ws.recv() + except Exception as e: # pragma: no cover + raise exceptions.ConnectionError( + 'Unexpected recv exception: ' + str(e)) + open_packet = packet.Packet(encoded_packet=p) + if open_packet.packet_type != packet.OPEN: + raise exceptions.ConnectionError('no OPEN packet') + self.logger.info( + 'WebSocket connection accepted with ' + str(open_packet.data)) + self.sid = open_packet.data['sid'] + self.upgrades = open_packet.data['upgrades'] + self.ping_interval = int(open_packet.data['pingInterval']) / 1000.0 + self.ping_timeout = int(open_packet.data['pingTimeout']) / 1000.0 + self.current_transport = 'websocket' + + self.state = 'connected' + base_client.connected_clients.append(self) + self._trigger_event('connect', run_async=False) + self.ws = ws + self.ws.settimeout(self.ping_interval + self.ping_timeout) + + # start background tasks associated with this client + self.write_loop_task = self.start_background_task(self._write_loop) + self.read_loop_task = self.start_background_task( + self._read_loop_websocket) + return True + + def _receive_packet(self, pkt): + """Handle incoming packets from the server.""" + packet_name = packet.packet_names[pkt.packet_type] \ + if pkt.packet_type < len(packet.packet_names) else 'UNKNOWN' + self.logger.info( + 'Received packet %s data %s', packet_name, + pkt.data if not isinstance(pkt.data, bytes) else '') + if pkt.packet_type == packet.MESSAGE: + self._trigger_event('message', pkt.data, run_async=True) + elif pkt.packet_type == packet.PING: + self._send_packet(packet.Packet(packet.PONG, pkt.data)) + elif pkt.packet_type == packet.CLOSE: + self.disconnect(abort=True, reason=self.reason.SERVER_DISCONNECT) + elif pkt.packet_type == packet.NOOP: + pass + else: + self.logger.error('Received unexpected packet of type %s', + pkt.packet_type) + + def _send_packet(self, pkt): + """Queue a packet to be sent to the server.""" + if self.state != 'connected': + return + self.queue.put(pkt) + self.logger.info( + 'Sending packet %s data %s', + packet.packet_names[pkt.packet_type], + pkt.data if not isinstance(pkt.data, bytes) else '') + + def _send_request( + self, method, url, headers=None, body=None, + timeout=None): # pragma: no cover + if self.http is None: + self.http = requests.Session() + if not self.ssl_verify: + self.http.verify = False + try: + return self.http.request(method, url, headers=headers, data=body, + timeout=timeout) + except requests.exceptions.RequestException as exc: + self.logger.info('HTTP %s request to %s failed with error %s.', + method, url, exc) + return str(exc) + + def _trigger_event(self, event, *args, **kwargs): + """Invoke an event handler.""" + run_async = kwargs.pop('run_async', False) + if event in self.handlers: + if run_async: + return self.start_background_task(self.handlers[event], *args) + else: + try: + try: + return self.handlers[event](*args) + except TypeError: + if event == 'disconnect' and \ + len(args) == 1: # pragma: no branch + # legacy disconnect events do not have a reason + # argument + return self.handlers[event]() + else: # pragma: no cover + raise + except: + self.logger.exception(event + ' handler error') + + def _read_loop_polling(self): + """Read packets by polling the Engine.IO server.""" + while self.state == 'connected' and self.write_loop_task: + self.logger.info( + 'Sending polling GET request to ' + self.base_url) + r = self._send_request( + 'GET', self.base_url + self._get_url_timestamp(), + timeout=max(self.ping_interval, self.ping_timeout) + 5) + if r is None or isinstance(r, str): + self.logger.warning( + r or 'Connection refused by the server, aborting') + self.queue.put(None) + break + if r.status_code < 200 or r.status_code >= 300: + self.logger.warning('Unexpected status code %s in server ' + 'response, aborting', r.status_code) + self.queue.put(None) + break + try: + p = payload.Payload(encoded_payload=r.content.decode('utf-8')) + except ValueError: + self.logger.warning( + 'Unexpected packet from server, aborting') + self.queue.put(None) + break + for pkt in p.packets: + self._receive_packet(pkt) + + if self.write_loop_task: # pragma: no branch + self.logger.info('Waiting for write loop task to end') + self.write_loop_task.join() + if self.state == 'connected': + self._trigger_event('disconnect', self.reason.TRANSPORT_ERROR, + run_async=False) + try: + base_client.connected_clients.remove(self) + except ValueError: # pragma: no cover + pass + self._reset() + self.logger.info('Exiting read loop task') + + def _read_loop_websocket(self): + """Read packets from the Engine.IO WebSocket connection.""" + while self.state == 'connected': + p = None + try: + p = self.ws.recv() + if len(p) == 0 and not self.ws.connected: # pragma: no cover + # websocket client can return an empty string after close + raise websocket.WebSocketConnectionClosedException() + except websocket.WebSocketTimeoutException: + self.logger.warning( + 'Server has stopped communicating, aborting') + self.queue.put(None) + break + except websocket.WebSocketConnectionClosedException: + self.logger.warning( + 'WebSocket connection was closed, aborting') + self.queue.put(None) + break + except Exception as e: # pragma: no cover + if type(e) is OSError and e.errno == 9: + self.logger.info( + 'WebSocket connection is closing, aborting') + else: + self.logger.info( + 'Unexpected error receiving packet: "%s", aborting', + str(e)) + self.queue.put(None) + break + try: + pkt = packet.Packet(encoded_packet=p) + except Exception as e: # pragma: no cover + self.logger.info( + 'Unexpected error decoding packet: "%s", aborting', str(e)) + self.queue.put(None) + break + self._receive_packet(pkt) + + if self.write_loop_task: # pragma: no branch + self.logger.info('Waiting for write loop task to end') + self.write_loop_task.join() + if self.state == 'connected': + self._trigger_event('disconnect', self.reason.TRANSPORT_ERROR, + run_async=False) + try: + base_client.connected_clients.remove(self) + except ValueError: # pragma: no cover + pass + self._reset() + self.logger.info('Exiting read loop task') + + def _write_loop(self): + """This background task sends packages to the server as they are + pushed to the send queue. + """ + while self.state == 'connected': + # to simplify the timeout handling, use the maximum of the + # ping interval and ping timeout as timeout, with an extra 5 + # seconds grace period + timeout = max(self.ping_interval, self.ping_timeout) + 5 + packets = None + try: + packets = [self.queue.get(timeout=timeout)] + except self.queue_empty: + self.logger.error('packet queue is empty, aborting') + break + if packets == [None]: + self.queue.task_done() + packets = [] + else: + while True: + try: + packets.append(self.queue.get(block=False)) + except self.queue_empty: + break + if packets[-1] is None: + packets = packets[:-1] + self.queue.task_done() + break + if not packets: + # empty packet list returned -> connection closed + break + if self.current_transport == 'polling': + p = payload.Payload(packets=packets) + r = self._send_request( + 'POST', self.base_url, body=p.encode(), + headers={'Content-Type': 'text/plain'}, + timeout=self.request_timeout) + for pkt in packets: + self.queue.task_done() + if r is None or isinstance(r, str): + self.logger.warning( + r or 'Connection refused by the server, aborting') + break + if r.status_code < 200 or r.status_code >= 300: + self.logger.warning('Unexpected status code %s in server ' + 'response, aborting', r.status_code) + self.write_loop_task = None + break + else: + # websocket + try: + for pkt in packets: + encoded_packet = pkt.encode() + if pkt.binary: + self.ws.send_binary(encoded_packet) + else: + self.ws.send(encoded_packet) + self.queue.task_done() + except (websocket.WebSocketConnectionClosedException, + BrokenPipeError, OSError): + self.logger.warning( + 'WebSocket connection was closed, aborting') + break + self.logger.info('Exiting write loop task') diff --git a/venv/lib/python3.9/site-packages/engineio/exceptions.py b/venv/lib/python3.9/site-packages/engineio/exceptions.py new file mode 100644 index 0000000..fb0b3e0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/exceptions.py @@ -0,0 +1,22 @@ +class EngineIOError(Exception): + pass + + +class ContentTooLongError(EngineIOError): + pass + + +class UnknownPacketError(EngineIOError): + pass + + +class QueueEmpty(EngineIOError): + pass + + +class SocketIsClosedError(EngineIOError): + pass + + +class ConnectionError(EngineIOError): + pass diff --git a/venv/lib/python3.9/site-packages/engineio/json.py b/venv/lib/python3.9/site-packages/engineio/json.py new file mode 100644 index 0000000..b612556 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/json.py @@ -0,0 +1,16 @@ +"""JSON-compatible module with sane defaults.""" + +from json import * # noqa: F401, F403 +from json import loads as original_loads + + +def _safe_int(s): + if len(s) > 100: + raise ValueError('Integer is too large') + return int(s) + + +def loads(*args, **kwargs): + if 'parse_int' not in kwargs: # pragma: no cover + kwargs['parse_int'] = _safe_int + return original_loads(*args, **kwargs) diff --git a/venv/lib/python3.9/site-packages/engineio/middleware.py b/venv/lib/python3.9/site-packages/engineio/middleware.py new file mode 100644 index 0000000..0e34fb0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/middleware.py @@ -0,0 +1,86 @@ +import os +from engineio.static_files import get_static_file + + +class WSGIApp: + """WSGI application middleware for Engine.IO. + + This middleware dispatches traffic to an Engine.IO application. It can + also serve a list of static files to the client, or forward unrelated + HTTP traffic to another WSGI application. + + :param engineio_app: The Engine.IO server. Must be an instance of the + ``engineio.Server`` class. + :param wsgi_app: The WSGI app that receives all other traffic. + :param static_files: A dictionary with static file mapping rules. See the + documentation for details on this argument. + :param engineio_path: The endpoint where the Engine.IO application should + be installed. The default value is appropriate for + most cases. + + Example usage:: + + import engineio + import eventlet + + eio = engineio.Server() + app = engineio.WSGIApp(eio, static_files={ + '/': {'content_type': 'text/html', 'filename': 'index.html'}, + '/index.html': {'content_type': 'text/html', + 'filename': 'index.html'}, + }) + eventlet.wsgi.server(eventlet.listen(('', 8000)), app) + """ + def __init__(self, engineio_app, wsgi_app=None, static_files=None, + engineio_path='engine.io'): + self.engineio_app = engineio_app + self.wsgi_app = wsgi_app + self.engineio_path = engineio_path + if not self.engineio_path.startswith('/'): + self.engineio_path = '/' + self.engineio_path + if not self.engineio_path.endswith('/'): + self.engineio_path += '/' + self.static_files = static_files or {} + + def __call__(self, environ, start_response): + if 'gunicorn.socket' in environ: + # gunicorn saves the socket under environ['gunicorn.socket'], while + # eventlet saves it under environ['eventlet.input']. Eventlet also + # stores the socket inside a wrapper class, while gunicon writes it + # directly into the environment. To give eventlet's WebSocket + # module access to this socket when running under gunicorn, here we + # copy the socket to the eventlet format. + class Input: + def __init__(self, socket): + self.socket = socket + + def get_socket(self): + return self.socket + + environ['eventlet.input'] = Input(environ['gunicorn.socket']) + path = environ['PATH_INFO'] + if path is not None and path.startswith(self.engineio_path): + return self.engineio_app.handle_request(environ, start_response) + else: + static_file = get_static_file(path, self.static_files) \ + if self.static_files else None + if static_file and os.path.exists(static_file['filename']): + start_response( + '200 OK', + [('Content-Type', static_file['content_type'])]) + with open(static_file['filename'], 'rb') as f: + return [f.read()] + elif self.wsgi_app is not None: + return self.wsgi_app(environ, start_response) + return self.not_found(start_response) + + def not_found(self, start_response): + start_response("404 Not Found", [('Content-Type', 'text/plain')]) + return [b'Not Found'] + + +class Middleware(WSGIApp): + """This class has been renamed to ``WSGIApp`` and is now deprecated.""" + def __init__(self, engineio_app, wsgi_app=None, + engineio_path='engine.io'): + super().__init__(engineio_app, wsgi_app, engineio_path=engineio_path) diff --git a/venv/lib/python3.9/site-packages/engineio/packet.py b/venv/lib/python3.9/site-packages/engineio/packet.py new file mode 100644 index 0000000..40bb6df --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/packet.py @@ -0,0 +1,82 @@ +import base64 +from engineio import json as _json + +(OPEN, CLOSE, PING, PONG, MESSAGE, UPGRADE, NOOP) = (0, 1, 2, 3, 4, 5, 6) +packet_names = ['OPEN', 'CLOSE', 'PING', 'PONG', 'MESSAGE', 'UPGRADE', 'NOOP'] + +binary_types = (bytes, bytearray) + + +class Packet: + """Engine.IO packet.""" + + json = _json + + def __init__(self, packet_type=NOOP, data=None, encoded_packet=None): + self.packet_type = packet_type + self.data = data + self.encode_cache = None + if isinstance(data, str): + self.binary = False + elif isinstance(data, binary_types): + self.binary = True + else: + self.binary = False + if self.binary and self.packet_type != MESSAGE: + raise ValueError('Binary packets can only be of type MESSAGE') + if encoded_packet is not None: + self.decode(encoded_packet) + + def encode(self, b64=False): + """Encode the packet for transmission. + + Note: as a performance optimization, subsequent calls to this method + will return a cached encoded packet, even if the data has changed. + """ + if self.encode_cache: + return self.encode_cache + if self.binary: + if b64: + encoded_packet = 'b' + base64.b64encode(self.data).decode( + 'utf-8') + else: + encoded_packet = self.data + else: + encoded_packet = str(self.packet_type) + if isinstance(self.data, str): + encoded_packet += self.data + elif isinstance(self.data, dict) or isinstance(self.data, list): + encoded_packet += self.json.dumps(self.data, + separators=(',', ':')) + elif self.data is not None: + encoded_packet += str(self.data) + self.encode_cache = encoded_packet + return encoded_packet + + def decode(self, encoded_packet): + """Decode a transmitted package.""" + self.binary = isinstance(encoded_packet, binary_types) + if not self.binary and len(encoded_packet) == 0: + raise ValueError('Invalid empty packet received') + b64 = not self.binary and encoded_packet[0] == 'b' + if b64: + self.binary = True + self.packet_type = MESSAGE + self.data = base64.b64decode(encoded_packet[1:]) + else: + if self.binary and not isinstance(encoded_packet, bytes): + encoded_packet = bytes(encoded_packet) + if self.binary: + self.packet_type = MESSAGE + self.data = encoded_packet + else: + self.packet_type = int(encoded_packet[0]) + try: + if encoded_packet[1].isnumeric(): + # do not allow integer payloads, see + # github.com/miguelgrinberg/python-engineio/issues/75 + # for background on this decision + raise ValueError + self.data = self.json.loads(encoded_packet[1:]) + except (ValueError, IndexError): + self.data = encoded_packet[1:] diff --git a/venv/lib/python3.9/site-packages/engineio/payload.py b/venv/lib/python3.9/site-packages/engineio/payload.py new file mode 100644 index 0000000..775241b --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/payload.py @@ -0,0 +1,46 @@ +import urllib + +from . import packet + + +class Payload: + """Engine.IO payload.""" + max_decode_packets = 16 + + def __init__(self, packets=None, encoded_payload=None): + self.packets = packets or [] + if encoded_payload is not None: + self.decode(encoded_payload) + + def encode(self, jsonp_index=None): + """Encode the payload for transmission.""" + encoded_payload = '' + for pkt in self.packets: + if encoded_payload: + encoded_payload += '\x1e' + encoded_payload += pkt.encode(b64=True) + if jsonp_index is not None: + encoded_payload = '___eio[' + \ + str(jsonp_index) + \ + ']("' + \ + encoded_payload.replace('"', '\\"') + \ + '");' + return encoded_payload + + def decode(self, encoded_payload): + """Decode a transmitted payload.""" + self.packets = [] + + if len(encoded_payload) == 0: + return + + # JSONP POST payload starts with 'd=' + if encoded_payload.startswith('d='): + encoded_payload = urllib.parse.parse_qs( + encoded_payload)['d'][0] + + encoded_packets = encoded_payload.split('\x1e') + if len(encoded_packets) > self.max_decode_packets: + raise ValueError('Too many packets in payload') + self.packets = [packet.Packet(encoded_packet=encoded_packet) + for encoded_packet in encoded_packets] diff --git a/venv/lib/python3.9/site-packages/engineio/server.py b/venv/lib/python3.9/site-packages/engineio/server.py new file mode 100644 index 0000000..917c53f --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/server.py @@ -0,0 +1,504 @@ +import logging +import urllib + +from . import base_server +from . import exceptions +from . import packet +from . import socket + +default_logger = logging.getLogger('engineio.server') + + +class Server(base_server.BaseServer): + """An Engine.IO server. + + This class implements a fully compliant Engine.IO web server with support + for websocket and long-polling transports. + + :param async_mode: The asynchronous model to use. See the Deployment + section in the documentation for a description of the + available options. Valid async modes are "threading", + "eventlet", "gevent" and "gevent_uwsgi". If this + argument is not given, "eventlet" is tried first, then + "gevent_uwsgi", then "gevent", and finally "threading". + The first async mode that has all its dependencies + installed is the one that is chosen. + :param ping_interval: The interval in seconds at which the server pings + the client. The default is 25 seconds. For advanced + control, a two element tuple can be given, where + the first number is the ping interval and the second + is a grace period added by the server. + :param ping_timeout: The time in seconds that the client waits for the + server to respond before disconnecting. The default + is 20 seconds. + :param max_http_buffer_size: The maximum size that is accepted for incoming + messages. The default is 1,000,000 bytes. In + spite of its name, the value set in this + argument is enforced for HTTP long-polling and + WebSocket connections. + :param allow_upgrades: Whether to allow transport upgrades or not. The + default is ``True``. + :param http_compression: Whether to compress packages when using the + polling transport. The default is ``True``. + :param compression_threshold: Only compress messages when their byte size + is greater than this value. The default is + 1024 bytes. + :param cookie: If set to a string, it is the name of the HTTP cookie the + server sends back tot he client containing the client + session id. If set to a dictionary, the ``'name'`` key + contains the cookie name and other keys define cookie + attributes, where the value of each attribute can be a + string, a callable with no arguments, or a boolean. If set + to ``None`` (the default), a cookie is not sent to the + client. + :param cors_allowed_origins: Origin or list of origins that are allowed to + connect to this server. Only the same origin + is allowed by default. Set this argument to + ``'*'`` or ``['*']`` to allow all origins, or + to ``[]`` to disable CORS handling. + :param cors_credentials: Whether credentials (cookies, authentication) are + allowed in requests to this server. The default + is ``True``. + :param logger: To enable logging set to ``True`` or pass a logger object to + use. To disable logging set to ``False``. The default is + ``False``. Note that fatal errors are logged even when + ``logger`` is ``False``. + :param json: An alternative JSON module to use for encoding and decoding + packets. Custom JSON modules must have ``dumps`` and ``loads`` + functions that are compatible with the standard library + versions. This is a process-wide setting, all instantiated + servers and clients must use the same JSON module. + :param async_handlers: If set to ``True``, run message event handlers in + non-blocking threads. To run handlers synchronously, + set to ``False``. The default is ``True``. + :param monitor_clients: If set to ``True``, a background task will ensure + inactive clients are closed. Set to ``False`` to + disable the monitoring task (not recommended). The + default is ``True``. + :param transports: The list of allowed transports. Valid transports + are ``'polling'`` and ``'websocket'``. Defaults to + ``['polling', 'websocket']``. + :param kwargs: Reserved for future extensions, any additional parameters + given as keyword arguments will be silently ignored. + """ + def send(self, sid, data): + """Send a message to a client. + + :param sid: The session id of the recipient client. + :param data: The data to send to the client. Data can be of type + ``str``, ``bytes``, ``list`` or ``dict``. If a ``list`` + or ``dict``, the data will be serialized as JSON. + """ + self.send_packet(sid, packet.Packet(packet.MESSAGE, data=data)) + + def send_packet(self, sid, pkt): + """Send a raw packet to a client. + + :param sid: The session id of the recipient client. + :param pkt: The packet to send to the client. + """ + try: + socket = self._get_socket(sid) + except KeyError: + # the socket is not available + self.logger.warning('Cannot send to sid %s', sid) + return + socket.send(pkt) + + def get_session(self, sid): + """Return the user session for a client. + + :param sid: The session id of the client. + + The return value is a dictionary. Modifications made to this + dictionary are not guaranteed to be preserved unless + ``save_session()`` is called, or when the ``session`` context manager + is used. + """ + socket = self._get_socket(sid) + return socket.session + + def save_session(self, sid, session): + """Store the user session for a client. + + :param sid: The session id of the client. + :param session: The session dictionary. + """ + socket = self._get_socket(sid) + socket.session = session + + def session(self, sid): + """Return the user session for a client with context manager syntax. + + :param sid: The session id of the client. + + This is a context manager that returns the user session dictionary for + the client. Any changes that are made to this dictionary inside the + context manager block are saved back to the session. Example usage:: + + @eio.on('connect') + def on_connect(sid, environ): + username = authenticate_user(environ) + if not username: + return False + with eio.session(sid) as session: + session['username'] = username + + @eio.on('message') + def on_message(sid, msg): + with eio.session(sid) as session: + print('received message from ', session['username']) + """ + class _session_context_manager: + def __init__(self, server, sid): + self.server = server + self.sid = sid + self.session = None + + def __enter__(self): + self.session = self.server.get_session(sid) + return self.session + + def __exit__(self, *args): + self.server.save_session(sid, self.session) + + return _session_context_manager(self, sid) + + def disconnect(self, sid=None): + """Disconnect a client. + + :param sid: The session id of the client to close. If this parameter + is not given, then all clients are closed. + """ + if sid is not None: + try: + socket = self._get_socket(sid) + except KeyError: # pragma: no cover + # the socket was already closed or gone + pass + else: + socket.close(reason=self.reason.SERVER_DISCONNECT) + if sid in self.sockets: # pragma: no cover + del self.sockets[sid] + else: + for client in self.sockets.copy().values(): + client.close(reason=self.reason.SERVER_DISCONNECT) + self.sockets = {} + + def handle_request(self, environ, start_response): + """Handle an HTTP request from the client. + + This is the entry point of the Engine.IO application, using the same + interface as a WSGI application. For the typical usage, this function + is invoked by the :class:`Middleware` instance, but it can be invoked + directly when the middleware is not used. + + :param environ: The WSGI environment. + :param start_response: The WSGI ``start_response`` function. + + This function returns the HTTP response body to deliver to the client + as a byte sequence. + """ + if self.cors_allowed_origins != []: + # Validate the origin header if present + # This is important for WebSocket more than for HTTP, since + # browsers only apply CORS controls to HTTP. + origin = environ.get('HTTP_ORIGIN') + if origin: + allowed_origins = self._cors_allowed_origins(environ) + if allowed_origins is not None and origin not in \ + allowed_origins: + self._log_error_once( + origin + ' is not an accepted origin.', 'bad-origin') + r = self._bad_request('Not an accepted origin.') + start_response(r['status'], r['headers']) + return [r['response']] + + method = environ['REQUEST_METHOD'] + query = urllib.parse.parse_qs(environ.get('QUERY_STRING', '')) + jsonp = False + jsonp_index = None + + # make sure the client uses an allowed transport + transport = query.get('transport', ['polling'])[0] + if transport not in self.transports: + self._log_error_once('Invalid transport', 'bad-transport') + r = self._bad_request('Invalid transport') + start_response(r['status'], r['headers']) + return [r['response']] + + # make sure the client speaks a compatible Engine.IO version + sid = query['sid'][0] if 'sid' in query else None + if sid is None and query.get('EIO') != ['4']: + self._log_error_once( + 'The client is using an unsupported version of the Socket.IO ' + 'or Engine.IO protocols', 'bad-version') + r = self._bad_request( + 'The client is using an unsupported version of the Socket.IO ' + 'or Engine.IO protocols') + start_response(r['status'], r['headers']) + return [r['response']] + + if 'j' in query: + jsonp = True + try: + jsonp_index = int(query['j'][0]) + except (ValueError, KeyError, IndexError): + # Invalid JSONP index number + pass + + if jsonp and jsonp_index is None: + self._log_error_once('Invalid JSONP index number', + 'bad-jsonp-index') + r = self._bad_request('Invalid JSONP index number') + elif method == 'GET': + upgrade_header = environ.get('HTTP_UPGRADE').lower() \ + if 'HTTP_UPGRADE' in environ else None + if sid is None: + # transport must be one of 'polling' or 'websocket'. + # if 'websocket', the HTTP_UPGRADE header must match. + if transport == 'polling' \ + or transport == upgrade_header == 'websocket': + r = self._handle_connect(environ, start_response, + transport, jsonp_index) + else: + self._log_error_once('Invalid websocket upgrade', + 'bad-upgrade') + r = self._bad_request('Invalid websocket upgrade') + else: + if sid not in self.sockets: + self._log_error_once(f'Invalid session {sid}', 'bad-sid') + r = self._bad_request(f'Invalid session {sid}') + else: + try: + socket = self._get_socket(sid) + except KeyError as e: # pragma: no cover + self._log_error_once(f'{e} {sid}', 'bad-sid') + r = self._bad_request(f'{e} {sid}') + else: + if self.transport(sid) != transport and \ + transport != upgrade_header: + self._log_error_once( + f'Invalid transport for session {sid}', + 'bad-transport') + r = self._bad_request('Invalid transport') + else: + try: + packets = socket.handle_get_request( + environ, start_response) + if isinstance(packets, list): + r = self._ok(packets, + jsonp_index=jsonp_index) + else: + r = packets + except exceptions.EngineIOError: + if sid in self.sockets: # pragma: no cover + self.disconnect(sid) + r = self._bad_request() + if sid in self.sockets and \ + self.sockets[sid].closed: + del self.sockets[sid] + elif method == 'POST': + if sid is None or sid not in self.sockets: + self._log_error_once(f'Invalid session {sid}', 'bad-sid') + r = self._bad_request(f'Invalid session {sid}') + else: + socket = self._get_socket(sid) + try: + socket.handle_post_request(environ) + r = self._ok(jsonp_index=jsonp_index) + except exceptions.EngineIOError: + if sid in self.sockets: # pragma: no cover + self.disconnect(sid) + r = self._bad_request() + except: # pragma: no cover + # for any other unexpected errors, we log the error + # and keep going + self.logger.exception('post request handler error') + r = self._ok(jsonp_index=jsonp_index) + elif method == 'OPTIONS': + r = self._ok() + else: + self.logger.warning('Method %s not supported', method) + r = self._method_not_found() + + if not isinstance(r, dict): + return r + if self.http_compression and \ + len(r['response']) >= self.compression_threshold: + encodings = [e.split(';')[0].strip() for e in + environ.get('HTTP_ACCEPT_ENCODING', '').split(',')] + for encoding in encodings: + if encoding in self.compression_methods: + r['response'] = \ + getattr(self, '_' + encoding)(r['response']) + r['headers'] += [('Content-Encoding', encoding)] + break + cors_headers = self._cors_headers(environ) + start_response(r['status'], r['headers'] + cors_headers) + return [r['response']] + + def shutdown(self): + """Stop Socket.IO background tasks. + + This method stops background activity initiated by the Socket.IO + server. It must be called before shutting down the web server. + """ + self.logger.info('Socket.IO is shutting down') + if self.service_task_event: # pragma: no cover + self.service_task_event.set() + self.service_task_handle.join() + self.service_task_handle = None + + def start_background_task(self, target, *args, **kwargs): + """Start a background task using the appropriate async model. + + This is a utility function that applications can use to start a + background task using the method that is compatible with the + selected async mode. + + :param target: the target function to execute. + :param args: arguments to pass to the function. + :param kwargs: keyword arguments to pass to the function. + + This function returns an object that represents the background task, + on which the ``join()`` methond can be invoked to wait for the task to + complete. + """ + th = self._async['thread'](target=target, args=args, kwargs=kwargs) + th.start() + return th # pragma: no cover + + def sleep(self, seconds=0): + """Sleep for the requested amount of time using the appropriate async + model. + + This is a utility function that applications can use to put a task to + sleep without having to worry about using the correct call for the + selected async mode. + """ + return self._async['sleep'](seconds) + + def _handle_connect(self, environ, start_response, transport, + jsonp_index=None): + """Handle a client connection request.""" + if self.start_service_task: + # start the service task to monitor connected clients + self.start_service_task = False + self.service_task_handle = self.start_background_task( + self._service_task) + + sid = self.generate_id() + s = socket.Socket(self, sid) + self.sockets[sid] = s + + pkt = packet.Packet(packet.OPEN, { + 'sid': sid, + 'upgrades': self._upgrades(sid, transport), + 'pingTimeout': int(self.ping_timeout * 1000), + 'pingInterval': int( + self.ping_interval + self.ping_interval_grace_period) * 1000, + 'maxPayload': self.max_http_buffer_size, + }) + s.send(pkt) + s.schedule_ping() + + # NOTE: some sections below are marked as "no cover" to workaround + # what seems to be a bug in the coverage package. All the lines below + # are covered by tests, but some are not reported as such for some + # reason + ret = self._trigger_event('connect', sid, environ, run_async=False) + if ret is not None and ret is not True: # pragma: no cover + del self.sockets[sid] + self.logger.warning('Application rejected connection') + return self._unauthorized(ret or None) + + if transport == 'websocket': # pragma: no cover + ret = s.handle_get_request(environ, start_response) + if s.closed and sid in self.sockets: + # websocket connection ended, so we are done + del self.sockets[sid] + return ret + else: # pragma: no cover + s.connected = True + headers = None + if self.cookie: + if isinstance(self.cookie, dict): + headers = [( + 'Set-Cookie', + self._generate_sid_cookie(sid, self.cookie) + )] + else: + headers = [( + 'Set-Cookie', + self._generate_sid_cookie(sid, { + 'name': self.cookie, 'path': '/', 'SameSite': 'Lax' + }) + )] + try: + return self._ok(s.poll(), headers=headers, + jsonp_index=jsonp_index) + except exceptions.QueueEmpty: + return self._bad_request() + + def _trigger_event(self, event, *args, **kwargs): + """Invoke an event handler.""" + run_async = kwargs.pop('run_async', False) + if event in self.handlers: + def run_handler(): + try: + try: + return self.handlers[event](*args) + except TypeError: + if event == 'disconnect' and \ + len(args) == 2: # pragma: no branch + # legacy disconnect events do not have a reason + # argument + return self.handlers[event](args[0]) + else: # pragma: no cover + raise + except: + self.logger.exception(event + ' handler error') + if event == 'connect': + # if connect handler raised error we reject the + # connection + return False + + if run_async: + return self.start_background_task(run_handler) + else: + return run_handler() + + def _service_task(self): # pragma: no cover + """Monitor connected clients and clean up those that time out.""" + self.service_task_event = self.create_event() + while not self.service_task_event.is_set(): + if len(self.sockets) == 0: + # nothing to do + if self.service_task_event.wait(timeout=self.ping_timeout): + break + continue + + # go through the entire client list in a ping interval cycle + sleep_interval = float(self.ping_timeout) / len(self.sockets) + + try: + # iterate over the current clients + for s in self.sockets.copy().values(): + if s.closed: + try: + del self.sockets[s.sid] + except KeyError: + # the socket could have also been removed by + # the _get_socket() method from another thread + pass + elif not s.closing: + s.check_ping_timeout() + if self.service_task_event.wait(timeout=sleep_interval): + raise KeyboardInterrupt() + except (SystemExit, KeyboardInterrupt): + self.logger.info('service task canceled') + break + except: + # an unexpected exception has occurred, log it and continue + self.logger.exception('service task exception') diff --git a/venv/lib/python3.9/site-packages/engineio/socket.py b/venv/lib/python3.9/site-packages/engineio/socket.py new file mode 100644 index 0000000..26bb94b --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/socket.py @@ -0,0 +1,256 @@ +import sys +import time + +from . import base_socket +from . import exceptions +from . import packet +from . import payload + + +class Socket(base_socket.BaseSocket): + """An Engine.IO socket.""" + def poll(self): + """Wait for packets to send to the client.""" + queue_empty = self.server.get_queue_empty_exception() + try: + packets = [self.queue.get( + timeout=self.server.ping_interval + self.server.ping_timeout)] + self.queue.task_done() + except queue_empty: + raise exceptions.QueueEmpty() + if packets == [None]: + return [] + while True: + try: + pkt = self.queue.get(block=False) + self.queue.task_done() + if pkt is None: + self.queue.put(None) + break + packets.append(pkt) + except queue_empty: + break + return packets + + def receive(self, pkt): + """Receive packet from the client.""" + packet_name = packet.packet_names[pkt.packet_type] \ + if pkt.packet_type < len(packet.packet_names) else 'UNKNOWN' + self.server.logger.info('%s: Received packet %s data %s', + self.sid, packet_name, + pkt.data if not isinstance(pkt.data, bytes) + else '') + if pkt.packet_type == packet.PONG: + self.schedule_ping() + elif pkt.packet_type == packet.MESSAGE: + self.server._trigger_event('message', self.sid, pkt.data, + run_async=self.server.async_handlers) + elif pkt.packet_type == packet.UPGRADE: + self.send(packet.Packet(packet.NOOP)) + elif pkt.packet_type == packet.CLOSE: + self.close(wait=False, abort=True, + reason=self.server.reason.CLIENT_DISCONNECT) + else: + raise exceptions.UnknownPacketError() + + def check_ping_timeout(self): + """Make sure the client is still responding to pings.""" + if self.closed: + raise exceptions.SocketIsClosedError() + if self.last_ping and \ + time.time() - self.last_ping > self.server.ping_timeout: + self.server.logger.info('%s: Client is gone, closing socket', + self.sid) + # Passing abort=False here will cause close() to write a + # CLOSE packet. This has the effect of updating half-open sockets + # to their correct state of disconnected + self.close(wait=False, abort=False, + reason=self.server.reason.PING_TIMEOUT) + return False + return True + + def send(self, pkt): + """Send a packet to the client.""" + if not self.check_ping_timeout(): + return + else: + self.queue.put(pkt) + self.server.logger.info('%s: Sending packet %s data %s', + self.sid, packet.packet_names[pkt.packet_type], + pkt.data if not isinstance(pkt.data, bytes) + else '') + + def handle_get_request(self, environ, start_response): + """Handle a long-polling GET request from the client.""" + connections = [ + s.strip() + for s in environ.get('HTTP_CONNECTION', '').lower().split(',')] + transport = environ.get('HTTP_UPGRADE', '').lower() + if 'upgrade' in connections and transport in self.upgrade_protocols: + self.server.logger.info('%s: Received request to upgrade to %s', + self.sid, transport) + return getattr(self, '_upgrade_' + transport)(environ, + start_response) + if self.upgrading or self.upgraded: + # we are upgrading to WebSocket, do not return any more packets + # through the polling endpoint + return [packet.Packet(packet.NOOP)] + try: + packets = self.poll() + except exceptions.QueueEmpty: + exc = sys.exc_info() + self.close(wait=False, reason=self.server.reason.TRANSPORT_ERROR) + raise exc[1].with_traceback(exc[2]) + return packets + + def handle_post_request(self, environ): + """Handle a long-polling POST request from the client.""" + length = int(environ.get('CONTENT_LENGTH', '0')) + if length > self.server.max_http_buffer_size: + raise exceptions.ContentTooLongError() + else: + body = environ['wsgi.input'].read(length).decode('utf-8') + p = payload.Payload(encoded_payload=body) + for pkt in p.packets: + self.receive(pkt) + + def close(self, wait=True, abort=False, reason=None): + """Close the socket connection.""" + if not self.closed and not self.closing: + self.closing = True + self.server._trigger_event( + 'disconnect', self.sid, + reason or self.server.reason.SERVER_DISCONNECT, + run_async=False) + if not abort: + self.send(packet.Packet(packet.CLOSE)) + self.closed = True + self.queue.put(None) + if wait: + self.queue.join() + + def schedule_ping(self): + self.server.start_background_task(self._send_ping) + + def _send_ping(self): + self.last_ping = None + self.server.sleep(self.server.ping_interval) + if not self.closing and not self.closed: + self.last_ping = time.time() + self.send(packet.Packet(packet.PING)) + + def _upgrade_websocket(self, environ, start_response): + """Upgrade the connection from polling to websocket.""" + if self.upgraded: + raise OSError('Socket has been upgraded already') + if self.server._async['websocket'] is None: + # the selected async mode does not support websocket + return self.server._bad_request() + ws = self.server._async['websocket']( + self._websocket_handler, self.server) + return ws(environ, start_response) + + def _websocket_handler(self, ws): + """Engine.IO handler for websocket transport.""" + def websocket_wait(): + data = ws.wait() + if data and len(data) > self.server.max_http_buffer_size: + raise ValueError('packet is too large') + return data + + # try to set a socket timeout matching the configured ping interval + # and timeout + for attr in ['_sock', 'socket']: # pragma: no cover + if hasattr(ws, attr) and hasattr(getattr(ws, attr), 'settimeout'): + getattr(ws, attr).settimeout( + self.server.ping_interval + self.server.ping_timeout) + + if self.connected: + # the socket was already connected, so this is an upgrade + self.upgrading = True # hold packet sends during the upgrade + + pkt = websocket_wait() + decoded_pkt = packet.Packet(encoded_packet=pkt) + if decoded_pkt.packet_type != packet.PING or \ + decoded_pkt.data != 'probe': + self.server.logger.info( + '%s: Failed websocket upgrade, no PING packet', self.sid) + self.upgrading = False + return [] + ws.send(packet.Packet(packet.PONG, data='probe').encode()) + self.queue.put(packet.Packet(packet.NOOP)) # end poll + + pkt = websocket_wait() + decoded_pkt = packet.Packet(encoded_packet=pkt) + if decoded_pkt.packet_type != packet.UPGRADE: + self.upgraded = False + self.server.logger.info( + ('%s: Failed websocket upgrade, expected UPGRADE packet, ' + 'received %s instead.'), + self.sid, pkt) + self.upgrading = False + return [] + self.upgraded = True + self.upgrading = False + else: + self.connected = True + self.upgraded = True + + # start separate writer thread + def writer(): + while True: + packets = None + try: + packets = self.poll() + except exceptions.QueueEmpty: + break + if not packets: + # empty packet list returned -> connection closed + break + try: + for pkt in packets: + ws.send(pkt.encode()) + except: + break + ws.close() + + writer_task = self.server.start_background_task(writer) + + self.server.logger.info( + '%s: Upgrade to websocket successful', self.sid) + + while True: + p = None + try: + p = websocket_wait() + except Exception as e: + # if the socket is already closed, we can assume this is a + # downstream error of that + if not self.closed: # pragma: no cover + self.server.logger.info( + '%s: Unexpected error "%s", closing connection', + self.sid, str(e)) + break + if p is None: + # connection closed by client + break + pkt = packet.Packet(encoded_packet=p) + try: + self.receive(pkt) + except exceptions.UnknownPacketError: # pragma: no cover + pass + except exceptions.SocketIsClosedError: # pragma: no cover + self.server.logger.info('Receive error -- socket is closed') + break + except: # pragma: no cover + # if we get an unexpected exception we log the error and exit + # the connection properly + self.server.logger.exception('Unknown receive error') + break + + self.queue.put(None) # unlock the writer task so that it can exit + writer_task.join() + self.close(wait=False, abort=True, + reason=self.server.reason.TRANSPORT_CLOSE) + + return [] diff --git a/venv/lib/python3.9/site-packages/engineio/static_files.py b/venv/lib/python3.9/site-packages/engineio/static_files.py new file mode 100644 index 0000000..77c8915 --- /dev/null +++ b/venv/lib/python3.9/site-packages/engineio/static_files.py @@ -0,0 +1,60 @@ +content_types = { + 'css': 'text/css', + 'gif': 'image/gif', + 'html': 'text/html', + 'jpg': 'image/jpeg', + 'js': 'application/javascript', + 'json': 'application/json', + 'png': 'image/png', + 'txt': 'text/plain', +} + + +def get_static_file(path, static_files): + """Return the local filename and content type for the requested static + file URL. + + :param path: the path portion of the requested URL. + :param static_files: a static file configuration dictionary. + + This function returns a dictionary with two keys, "filename" and + "content_type". If the requested URL does not match any static file, the + return value is None. + """ + extra_path = '' + if path in static_files: + f = static_files[path] + else: + f = None + while path != '': + path, last = path.rsplit('/', 1) + extra_path = '/' + last + extra_path + if path in static_files: + f = static_files[path] + break + elif path + '/' in static_files: + f = static_files[path + '/'] + break + if f: + if isinstance(f, str): + f = {'filename': f} + else: + f = f.copy() # in case it is mutated below + if f['filename'].endswith('/') and extra_path.startswith('/'): + extra_path = extra_path[1:] + f['filename'] += extra_path + if f['filename'].endswith('/'): + if '' in static_files: + if isinstance(static_files[''], str): + f['filename'] += static_files[''] + else: + f['filename'] += static_files['']['filename'] + if 'content_type' in static_files['']: + f['content_type'] = static_files['']['content_type'] + else: + f['filename'] += 'index.html' + if 'content_type' not in f: + ext = f['filename'].rsplit('.')[-1] + f['content_type'] = content_types.get( + ext, 'application/octet-stream') + return f diff --git a/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/METADATA b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/METADATA new file mode 100644 index 0000000..9d8623c --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/METADATA @@ -0,0 +1,91 @@ +Metadata-Version: 2.4 +Name: Flask +Version: 3.1.3 +Summary: A simple framework for building complex web applications. +Maintainer-email: Pallets +Requires-Python: >=3.9 +Description-Content-Type: text/markdown +License-Expression: BSD-3-Clause +Classifier: Development Status :: 5 - Production/Stable +Classifier: Environment :: Web Environment +Classifier: Framework :: Flask +Classifier: Intended Audience :: Developers +Classifier: Operating System :: OS Independent +Classifier: Programming Language :: Python +Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content +Classifier: Topic :: Internet :: WWW/HTTP :: WSGI +Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application +Classifier: Topic :: Software Development :: Libraries :: Application Frameworks +Classifier: Typing :: Typed +License-File: LICENSE.txt +Requires-Dist: blinker>=1.9.0 +Requires-Dist: click>=8.1.3 +Requires-Dist: importlib-metadata>=3.6.0; python_version < '3.10' +Requires-Dist: itsdangerous>=2.2.0 +Requires-Dist: jinja2>=3.1.2 +Requires-Dist: markupsafe>=2.1.1 +Requires-Dist: werkzeug>=3.1.0 +Requires-Dist: asgiref>=3.2 ; extra == "async" +Requires-Dist: python-dotenv ; extra == "dotenv" +Project-URL: Changes, https://flask.palletsprojects.com/page/changes/ +Project-URL: Chat, https://discord.gg/pallets +Project-URL: Documentation, https://flask.palletsprojects.com/ +Project-URL: Donate, https://palletsprojects.com/donate +Project-URL: Source, https://github.com/pallets/flask/ +Provides-Extra: async +Provides-Extra: dotenv + +
          + +# Flask + +Flask is a lightweight [WSGI] web application framework. It is designed +to make getting started quick and easy, with the ability to scale up to +complex applications. It began as a simple wrapper around [Werkzeug] +and [Jinja], and has become one of the most popular Python web +application frameworks. + +Flask offers suggestions, but doesn't enforce any dependencies or +project layout. It is up to the developer to choose the tools and +libraries they want to use. There are many extensions provided by the +community that make adding new functionality easy. + +[WSGI]: https://wsgi.readthedocs.io/ +[Werkzeug]: https://werkzeug.palletsprojects.com/ +[Jinja]: https://jinja.palletsprojects.com/ + +## A Simple Example + +```python +# save this as app.py +from flask import Flask + +app = Flask(__name__) + +@app.route("/") +def hello(): + return "Hello, World!" +``` + +``` +$ flask run + * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) +``` + +## Donate + +The Pallets organization develops and supports Flask and the libraries +it uses. In order to grow the community of contributors and users, and +allow the maintainers to devote more time to the projects, [please +donate today]. + +[please donate today]: https://palletsprojects.com/donate + +## Contributing + +See our [detailed contributing documentation][contrib] for many ways to +contribute, including reporting issues, requesting features, asking or answering +questions, and making PRs. + +[contrib]: https://palletsprojects.com/contributing/ + diff --git a/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/RECORD b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/RECORD new file mode 100644 index 0000000..87b6cba --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/RECORD @@ -0,0 +1,58 @@ +../../../bin/flask,sha256=P08Ez2FkehsldCPBvfWzIWbK7QzGpy60eyWsLKAacP0,182 +flask-3.1.3.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +flask-3.1.3.dist-info/METADATA,sha256=qmdg7W9UVwRHTXBzPkpjp_FIHjdpc-3IlqE9AqciTHw,3167 +flask-3.1.3.dist-info/RECORD,, +flask-3.1.3.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +flask-3.1.3.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82 +flask-3.1.3.dist-info/entry_points.txt,sha256=bBP7hTOS5fz9zLtC7sPofBZAlMkEvBxu7KqS6l5lvc4,40 +flask-3.1.3.dist-info/licenses/LICENSE.txt,sha256=SJqOEQhQntmKN7uYPhHg9-HTHwvY-Zp5yESOf_N9B-o,1475 +flask/__init__.py,sha256=mHvJN9Swtl1RDtjCqCIYyIniK_SZ_l_hqUynOzgpJ9o,2701 +flask/__main__.py,sha256=bYt9eEaoRQWdejEHFD8REx9jxVEdZptECFsV7F49Ink,30 +flask/__pycache__/__init__.cpython-39.pyc,, +flask/__pycache__/__main__.cpython-39.pyc,, +flask/__pycache__/app.cpython-39.pyc,, +flask/__pycache__/blueprints.cpython-39.pyc,, +flask/__pycache__/cli.cpython-39.pyc,, +flask/__pycache__/config.cpython-39.pyc,, +flask/__pycache__/ctx.cpython-39.pyc,, +flask/__pycache__/debughelpers.cpython-39.pyc,, +flask/__pycache__/globals.cpython-39.pyc,, +flask/__pycache__/helpers.cpython-39.pyc,, +flask/__pycache__/logging.cpython-39.pyc,, +flask/__pycache__/sessions.cpython-39.pyc,, +flask/__pycache__/signals.cpython-39.pyc,, +flask/__pycache__/templating.cpython-39.pyc,, +flask/__pycache__/testing.cpython-39.pyc,, +flask/__pycache__/typing.cpython-39.pyc,, +flask/__pycache__/views.cpython-39.pyc,, +flask/__pycache__/wrappers.cpython-39.pyc,, +flask/app.py,sha256=k7tW8LHRSldUi6zKsFKK7Axa_WL4zu1e2wPNthIsu7o,61719 +flask/blueprints.py,sha256=p5QE2lY18GItbdr_RKRpZ8Do17g0PvQGIgZkSUDhX2k,4541 +flask/cli.py,sha256=Pfh72-BxlvoH0QHCDOc1HvXG7Kq5Xetf3zzNz2kNSHk,37184 +flask/config.py,sha256=PiqF0DPam6HW0FH4CH1hpXTBe30NSzjPEOwrz1b6kt0,13219 +flask/ctx.py,sha256=oMe0TRsScW0qdaIqavVsk8P9qiEvAY5VHn1FAgkX8nk,15521 +flask/debughelpers.py,sha256=PGIDhStW_efRjpaa3zHIpo-htStJOR41Ip3OJWPYBwo,6080 +flask/globals.py,sha256=XdQZmStBmPIs8t93tjx6pO7Bm3gobAaONWkFcUHaGas,1713 +flask/helpers.py,sha256=rJZge7_J288J1UQv5-kNf4oEaw332PP8NTW0QRIBbXE,23517 +flask/json/__init__.py,sha256=hLNR898paqoefdeAhraa5wyJy-bmRB2k2dV4EgVy2Z8,5602 +flask/json/__pycache__/__init__.cpython-39.pyc,, +flask/json/__pycache__/provider.cpython-39.pyc,, +flask/json/__pycache__/tag.cpython-39.pyc,, +flask/json/provider.py,sha256=5imEzY5HjV2HoUVrQbJLqXCzMNpZXfD0Y1XqdLV2XBA,7672 +flask/json/tag.py,sha256=DhaNwuIOhdt2R74oOC9Y4Z8ZprxFYiRb5dUP5byyINw,9281 +flask/logging.py,sha256=8sM3WMTubi1cBb2c_lPkWpN0J8dMAqrgKRYLLi1dCVI,2377 +flask/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +flask/sansio/README.md,sha256=-0X1tECnilmz1cogx-YhNw5d7guK7GKrq_DEV2OzlU0,228 +flask/sansio/__pycache__/app.cpython-39.pyc,, +flask/sansio/__pycache__/blueprints.cpython-39.pyc,, +flask/sansio/__pycache__/scaffold.cpython-39.pyc,, +flask/sansio/app.py,sha256=whGURQDkN0jmhS4CHO7DQ96GGlZS0kETkKkAkoRjl4U,38106 +flask/sansio/blueprints.py,sha256=Tqe-7EkZ-tbWchm8iDoCfD848f0_3nLv6NNjeIPvHwM,24637 +flask/sansio/scaffold.py,sha256=wSASXYdFRWJmqcL0Xq-T7N-PDVUSiFGvjO9kPZg58bk,30371 +flask/sessions.py,sha256=eywRqmytTmYnX_EC78-YBGJoTc5XD_lRphQG5LbN1d0,14969 +flask/signals.py,sha256=V7lMUww7CqgJ2ThUBn1PiatZtQanOyt7OZpu2GZI-34,750 +flask/templating.py,sha256=vbIkwYAxsSEfDxQID1gKRvBQQcGWEuWYCnH0XK3EqOI,7678 +flask/testing.py,sha256=zzC7XxhBWOP9H697IV_4SG7Lg3Lzb5PWiyEP93_KQXE,10117 +flask/typing.py,sha256=L-L5t2jKgS0aOmVhioQ_ylqcgiVFnA6yxO-RLNhq-GU,3293 +flask/views.py,sha256=xzJx6oJqGElThtEghZN7ZQGMw5TDFyuRxUkecwRuAoA,6962 +flask/wrappers.py,sha256=jUkv4mVek2Iq4hwxd4RvqrIMb69Bv0PElDgWLmd5ORo,9406 diff --git a/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/REQUESTED b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/REQUESTED new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/WHEEL b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/WHEEL new file mode 100644 index 0000000..d8b9936 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/WHEEL @@ -0,0 +1,4 @@ +Wheel-Version: 1.0 +Generator: flit 3.12.0 +Root-Is-Purelib: true +Tag: py3-none-any diff --git a/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/entry_points.txt b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/entry_points.txt new file mode 100644 index 0000000..eec6733 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/entry_points.txt @@ -0,0 +1,3 @@ +[console_scripts] +flask=flask.cli:main + diff --git a/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/licenses/LICENSE.txt b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/licenses/LICENSE.txt new file mode 100644 index 0000000..9d227a0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask-3.1.3.dist-info/licenses/LICENSE.txt @@ -0,0 +1,28 @@ +Copyright 2010 Pallets + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/venv/lib/python3.9/site-packages/flask/__init__.py b/venv/lib/python3.9/site-packages/flask/__init__.py new file mode 100644 index 0000000..1fdc50c --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/__init__.py @@ -0,0 +1,61 @@ +from __future__ import annotations + +import typing as t + +from . import json as json +from .app import Flask as Flask +from .blueprints import Blueprint as Blueprint +from .config import Config as Config +from .ctx import after_this_request as after_this_request +from .ctx import copy_current_request_context as copy_current_request_context +from .ctx import has_app_context as has_app_context +from .ctx import has_request_context as has_request_context +from .globals import current_app as current_app +from .globals import g as g +from .globals import request as request +from .globals import session as session +from .helpers import abort as abort +from .helpers import flash as flash +from .helpers import get_flashed_messages as get_flashed_messages +from .helpers import get_template_attribute as get_template_attribute +from .helpers import make_response as make_response +from .helpers import redirect as redirect +from .helpers import send_file as send_file +from .helpers import send_from_directory as send_from_directory +from .helpers import stream_with_context as stream_with_context +from .helpers import url_for as url_for +from .json import jsonify as jsonify +from .signals import appcontext_popped as appcontext_popped +from .signals import appcontext_pushed as appcontext_pushed +from .signals import appcontext_tearing_down as appcontext_tearing_down +from .signals import before_render_template as before_render_template +from .signals import got_request_exception as got_request_exception +from .signals import message_flashed as message_flashed +from .signals import request_finished as request_finished +from .signals import request_started as request_started +from .signals import request_tearing_down as request_tearing_down +from .signals import template_rendered as template_rendered +from .templating import render_template as render_template +from .templating import render_template_string as render_template_string +from .templating import stream_template as stream_template +from .templating import stream_template_string as stream_template_string +from .wrappers import Request as Request +from .wrappers import Response as Response + +if not t.TYPE_CHECKING: + + def __getattr__(name: str) -> t.Any: + if name == "__version__": + import importlib.metadata + import warnings + + warnings.warn( + "The '__version__' attribute is deprecated and will be removed in" + " Flask 3.2. Use feature detection or" + " 'importlib.metadata.version(\"flask\")' instead.", + DeprecationWarning, + stacklevel=2, + ) + return importlib.metadata.version("flask") + + raise AttributeError(name) diff --git a/venv/lib/python3.9/site-packages/flask/__main__.py b/venv/lib/python3.9/site-packages/flask/__main__.py new file mode 100644 index 0000000..4e28416 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/__main__.py @@ -0,0 +1,3 @@ +from .cli import main + +main() diff --git a/venv/lib/python3.9/site-packages/flask/app.py b/venv/lib/python3.9/site-packages/flask/app.py new file mode 100644 index 0000000..cc326db --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/app.py @@ -0,0 +1,1536 @@ +from __future__ import annotations + +import collections.abc as cabc +import os +import sys +import typing as t +import weakref +from datetime import timedelta +from inspect import iscoroutinefunction +from itertools import chain +from types import TracebackType +from urllib.parse import quote as _url_quote + +import click +from werkzeug.datastructures import Headers +from werkzeug.datastructures import ImmutableDict +from werkzeug.exceptions import BadRequestKeyError +from werkzeug.exceptions import HTTPException +from werkzeug.exceptions import InternalServerError +from werkzeug.routing import BuildError +from werkzeug.routing import MapAdapter +from werkzeug.routing import RequestRedirect +from werkzeug.routing import RoutingException +from werkzeug.routing import Rule +from werkzeug.serving import is_running_from_reloader +from werkzeug.wrappers import Response as BaseResponse +from werkzeug.wsgi import get_host + +from . import cli +from . import typing as ft +from .ctx import AppContext +from .ctx import RequestContext +from .globals import _cv_app +from .globals import _cv_request +from .globals import current_app +from .globals import g +from .globals import request +from .globals import request_ctx +from .globals import session +from .helpers import get_debug_flag +from .helpers import get_flashed_messages +from .helpers import get_load_dotenv +from .helpers import send_from_directory +from .sansio.app import App +from .sansio.scaffold import _sentinel +from .sessions import SecureCookieSessionInterface +from .sessions import SessionInterface +from .signals import appcontext_tearing_down +from .signals import got_request_exception +from .signals import request_finished +from .signals import request_started +from .signals import request_tearing_down +from .templating import Environment +from .wrappers import Request +from .wrappers import Response + +if t.TYPE_CHECKING: # pragma: no cover + from _typeshed.wsgi import StartResponse + from _typeshed.wsgi import WSGIEnvironment + + from .testing import FlaskClient + from .testing import FlaskCliRunner + from .typing import HeadersValue + +T_shell_context_processor = t.TypeVar( + "T_shell_context_processor", bound=ft.ShellContextProcessorCallable +) +T_teardown = t.TypeVar("T_teardown", bound=ft.TeardownCallable) +T_template_filter = t.TypeVar("T_template_filter", bound=ft.TemplateFilterCallable) +T_template_global = t.TypeVar("T_template_global", bound=ft.TemplateGlobalCallable) +T_template_test = t.TypeVar("T_template_test", bound=ft.TemplateTestCallable) + + +def _make_timedelta(value: timedelta | int | None) -> timedelta | None: + if value is None or isinstance(value, timedelta): + return value + + return timedelta(seconds=value) + + +class Flask(App): + """The flask object implements a WSGI application and acts as the central + object. It is passed the name of the module or package of the + application. Once it is created it will act as a central registry for + the view functions, the URL rules, template configuration and much more. + + The name of the package is used to resolve resources from inside the + package or the folder the module is contained in depending on if the + package parameter resolves to an actual python package (a folder with + an :file:`__init__.py` file inside) or a standard module (just a ``.py`` file). + + For more information about resource loading, see :func:`open_resource`. + + Usually you create a :class:`Flask` instance in your main module or + in the :file:`__init__.py` file of your package like this:: + + from flask import Flask + app = Flask(__name__) + + .. admonition:: About the First Parameter + + The idea of the first parameter is to give Flask an idea of what + belongs to your application. This name is used to find resources + on the filesystem, can be used by extensions to improve debugging + information and a lot more. + + So it's important what you provide there. If you are using a single + module, `__name__` is always the correct value. If you however are + using a package, it's usually recommended to hardcode the name of + your package there. + + For example if your application is defined in :file:`yourapplication/app.py` + you should create it with one of the two versions below:: + + app = Flask('yourapplication') + app = Flask(__name__.split('.')[0]) + + Why is that? The application will work even with `__name__`, thanks + to how resources are looked up. However it will make debugging more + painful. Certain extensions can make assumptions based on the + import name of your application. For example the Flask-SQLAlchemy + extension will look for the code in your application that triggered + an SQL query in debug mode. If the import name is not properly set + up, that debugging information is lost. (For example it would only + pick up SQL queries in `yourapplication.app` and not + `yourapplication.views.frontend`) + + .. versionadded:: 0.7 + The `static_url_path`, `static_folder`, and `template_folder` + parameters were added. + + .. versionadded:: 0.8 + The `instance_path` and `instance_relative_config` parameters were + added. + + .. versionadded:: 0.11 + The `root_path` parameter was added. + + .. versionadded:: 1.0 + The ``host_matching`` and ``static_host`` parameters were added. + + .. versionadded:: 1.0 + The ``subdomain_matching`` parameter was added. Subdomain + matching needs to be enabled manually now. Setting + :data:`SERVER_NAME` does not implicitly enable it. + + :param import_name: the name of the application package + :param static_url_path: can be used to specify a different path for the + static files on the web. Defaults to the name + of the `static_folder` folder. + :param static_folder: The folder with static files that is served at + ``static_url_path``. Relative to the application ``root_path`` + or an absolute path. Defaults to ``'static'``. + :param static_host: the host to use when adding the static route. + Defaults to None. Required when using ``host_matching=True`` + with a ``static_folder`` configured. + :param host_matching: set ``url_map.host_matching`` attribute. + Defaults to False. + :param subdomain_matching: consider the subdomain relative to + :data:`SERVER_NAME` when matching routes. Defaults to False. + :param template_folder: the folder that contains the templates that should + be used by the application. Defaults to + ``'templates'`` folder in the root path of the + application. + :param instance_path: An alternative instance path for the application. + By default the folder ``'instance'`` next to the + package or module is assumed to be the instance + path. + :param instance_relative_config: if set to ``True`` relative filenames + for loading the config are assumed to + be relative to the instance path instead + of the application root. + :param root_path: The path to the root of the application files. + This should only be set manually when it can't be detected + automatically, such as for namespace packages. + """ + + default_config = ImmutableDict( + { + "DEBUG": None, + "TESTING": False, + "PROPAGATE_EXCEPTIONS": None, + "SECRET_KEY": None, + "SECRET_KEY_FALLBACKS": None, + "PERMANENT_SESSION_LIFETIME": timedelta(days=31), + "USE_X_SENDFILE": False, + "TRUSTED_HOSTS": None, + "SERVER_NAME": None, + "APPLICATION_ROOT": "/", + "SESSION_COOKIE_NAME": "session", + "SESSION_COOKIE_DOMAIN": None, + "SESSION_COOKIE_PATH": None, + "SESSION_COOKIE_HTTPONLY": True, + "SESSION_COOKIE_SECURE": False, + "SESSION_COOKIE_PARTITIONED": False, + "SESSION_COOKIE_SAMESITE": None, + "SESSION_REFRESH_EACH_REQUEST": True, + "MAX_CONTENT_LENGTH": None, + "MAX_FORM_MEMORY_SIZE": 500_000, + "MAX_FORM_PARTS": 1_000, + "SEND_FILE_MAX_AGE_DEFAULT": None, + "TRAP_BAD_REQUEST_ERRORS": None, + "TRAP_HTTP_EXCEPTIONS": False, + "EXPLAIN_TEMPLATE_LOADING": False, + "PREFERRED_URL_SCHEME": "http", + "TEMPLATES_AUTO_RELOAD": None, + "MAX_COOKIE_SIZE": 4093, + "PROVIDE_AUTOMATIC_OPTIONS": True, + } + ) + + #: The class that is used for request objects. See :class:`~flask.Request` + #: for more information. + request_class: type[Request] = Request + + #: The class that is used for response objects. See + #: :class:`~flask.Response` for more information. + response_class: type[Response] = Response + + #: the session interface to use. By default an instance of + #: :class:`~flask.sessions.SecureCookieSessionInterface` is used here. + #: + #: .. versionadded:: 0.8 + session_interface: SessionInterface = SecureCookieSessionInterface() + + def __init__( + self, + import_name: str, + static_url_path: str | None = None, + static_folder: str | os.PathLike[str] | None = "static", + static_host: str | None = None, + host_matching: bool = False, + subdomain_matching: bool = False, + template_folder: str | os.PathLike[str] | None = "templates", + instance_path: str | None = None, + instance_relative_config: bool = False, + root_path: str | None = None, + ): + super().__init__( + import_name=import_name, + static_url_path=static_url_path, + static_folder=static_folder, + static_host=static_host, + host_matching=host_matching, + subdomain_matching=subdomain_matching, + template_folder=template_folder, + instance_path=instance_path, + instance_relative_config=instance_relative_config, + root_path=root_path, + ) + + #: The Click command group for registering CLI commands for this + #: object. The commands are available from the ``flask`` command + #: once the application has been discovered and blueprints have + #: been registered. + self.cli = cli.AppGroup() + + # Set the name of the Click group in case someone wants to add + # the app's commands to another CLI tool. + self.cli.name = self.name + + # Add a static route using the provided static_url_path, static_host, + # and static_folder if there is a configured static_folder. + # Note we do this without checking if static_folder exists. + # For one, it might be created while the server is running (e.g. during + # development). Also, Google App Engine stores static files somewhere + if self.has_static_folder: + assert bool(static_host) == host_matching, ( + "Invalid static_host/host_matching combination" + ) + # Use a weakref to avoid creating a reference cycle between the app + # and the view function (see #3761). + self_ref = weakref.ref(self) + self.add_url_rule( + f"{self.static_url_path}/", + endpoint="static", + host=static_host, + view_func=lambda **kw: self_ref().send_static_file(**kw), # type: ignore + ) + + def get_send_file_max_age(self, filename: str | None) -> int | None: + """Used by :func:`send_file` to determine the ``max_age`` cache + value for a given file path if it wasn't passed. + + By default, this returns :data:`SEND_FILE_MAX_AGE_DEFAULT` from + the configuration of :data:`~flask.current_app`. This defaults + to ``None``, which tells the browser to use conditional requests + instead of a timed cache, which is usually preferable. + + Note this is a duplicate of the same method in the Flask + class. + + .. versionchanged:: 2.0 + The default configuration is ``None`` instead of 12 hours. + + .. versionadded:: 0.9 + """ + value = current_app.config["SEND_FILE_MAX_AGE_DEFAULT"] + + if value is None: + return None + + if isinstance(value, timedelta): + return int(value.total_seconds()) + + return value # type: ignore[no-any-return] + + def send_static_file(self, filename: str) -> Response: + """The view function used to serve files from + :attr:`static_folder`. A route is automatically registered for + this view at :attr:`static_url_path` if :attr:`static_folder` is + set. + + Note this is a duplicate of the same method in the Flask + class. + + .. versionadded:: 0.5 + + """ + if not self.has_static_folder: + raise RuntimeError("'static_folder' must be set to serve static_files.") + + # send_file only knows to call get_send_file_max_age on the app, + # call it here so it works for blueprints too. + max_age = self.get_send_file_max_age(filename) + return send_from_directory( + t.cast(str, self.static_folder), filename, max_age=max_age + ) + + def open_resource( + self, resource: str, mode: str = "rb", encoding: str | None = None + ) -> t.IO[t.AnyStr]: + """Open a resource file relative to :attr:`root_path` for reading. + + For example, if the file ``schema.sql`` is next to the file + ``app.py`` where the ``Flask`` app is defined, it can be opened + with: + + .. code-block:: python + + with app.open_resource("schema.sql") as f: + conn.executescript(f.read()) + + :param resource: Path to the resource relative to :attr:`root_path`. + :param mode: Open the file in this mode. Only reading is supported, + valid values are ``"r"`` (or ``"rt"``) and ``"rb"``. + :param encoding: Open the file with this encoding when opening in text + mode. This is ignored when opening in binary mode. + + .. versionchanged:: 3.1 + Added the ``encoding`` parameter. + """ + if mode not in {"r", "rt", "rb"}: + raise ValueError("Resources can only be opened for reading.") + + path = os.path.join(self.root_path, resource) + + if mode == "rb": + return open(path, mode) # pyright: ignore + + return open(path, mode, encoding=encoding) + + def open_instance_resource( + self, resource: str, mode: str = "rb", encoding: str | None = "utf-8" + ) -> t.IO[t.AnyStr]: + """Open a resource file relative to the application's instance folder + :attr:`instance_path`. Unlike :meth:`open_resource`, files in the + instance folder can be opened for writing. + + :param resource: Path to the resource relative to :attr:`instance_path`. + :param mode: Open the file in this mode. + :param encoding: Open the file with this encoding when opening in text + mode. This is ignored when opening in binary mode. + + .. versionchanged:: 3.1 + Added the ``encoding`` parameter. + """ + path = os.path.join(self.instance_path, resource) + + if "b" in mode: + return open(path, mode) + + return open(path, mode, encoding=encoding) + + def create_jinja_environment(self) -> Environment: + """Create the Jinja environment based on :attr:`jinja_options` + and the various Jinja-related methods of the app. Changing + :attr:`jinja_options` after this will have no effect. Also adds + Flask-related globals and filters to the environment. + + .. versionchanged:: 0.11 + ``Environment.auto_reload`` set in accordance with + ``TEMPLATES_AUTO_RELOAD`` configuration option. + + .. versionadded:: 0.5 + """ + options = dict(self.jinja_options) + + if "autoescape" not in options: + options["autoescape"] = self.select_jinja_autoescape + + if "auto_reload" not in options: + auto_reload = self.config["TEMPLATES_AUTO_RELOAD"] + + if auto_reload is None: + auto_reload = self.debug + + options["auto_reload"] = auto_reload + + rv = self.jinja_environment(self, **options) + rv.globals.update( + url_for=self.url_for, + get_flashed_messages=get_flashed_messages, + config=self.config, + # request, session and g are normally added with the + # context processor for efficiency reasons but for imported + # templates we also want the proxies in there. + request=request, + session=session, + g=g, + ) + rv.policies["json.dumps_function"] = self.json.dumps + return rv + + def create_url_adapter(self, request: Request | None) -> MapAdapter | None: + """Creates a URL adapter for the given request. The URL adapter + is created at a point where the request context is not yet set + up so the request is passed explicitly. + + .. versionchanged:: 3.1 + If :data:`SERVER_NAME` is set, it does not restrict requests to + only that domain, for both ``subdomain_matching`` and + ``host_matching``. + + .. versionchanged:: 1.0 + :data:`SERVER_NAME` no longer implicitly enables subdomain + matching. Use :attr:`subdomain_matching` instead. + + .. versionchanged:: 0.9 + This can be called outside a request when the URL adapter is created + for an application context. + + .. versionadded:: 0.6 + """ + if request is not None: + if (trusted_hosts := self.config["TRUSTED_HOSTS"]) is not None: + request.trusted_hosts = trusted_hosts + + # Check trusted_hosts here until bind_to_environ does. + request.host = get_host(request.environ, request.trusted_hosts) # pyright: ignore + subdomain = None + server_name = self.config["SERVER_NAME"] + + if self.url_map.host_matching: + # Don't pass SERVER_NAME, otherwise it's used and the actual + # host is ignored, which breaks host matching. + server_name = None + elif not self.subdomain_matching: + # Werkzeug doesn't implement subdomain matching yet. Until then, + # disable it by forcing the current subdomain to the default, or + # the empty string. + subdomain = self.url_map.default_subdomain or "" + + return self.url_map.bind_to_environ( + request.environ, server_name=server_name, subdomain=subdomain + ) + + # Need at least SERVER_NAME to match/build outside a request. + if self.config["SERVER_NAME"] is not None: + return self.url_map.bind( + self.config["SERVER_NAME"], + script_name=self.config["APPLICATION_ROOT"], + url_scheme=self.config["PREFERRED_URL_SCHEME"], + ) + + return None + + def raise_routing_exception(self, request: Request) -> t.NoReturn: + """Intercept routing exceptions and possibly do something else. + + In debug mode, intercept a routing redirect and replace it with + an error if the body will be discarded. + + With modern Werkzeug this shouldn't occur, since it now uses a + 308 status which tells the browser to resend the method and + body. + + .. versionchanged:: 2.1 + Don't intercept 307 and 308 redirects. + + :meta private: + :internal: + """ + if ( + not self.debug + or not isinstance(request.routing_exception, RequestRedirect) + or request.routing_exception.code in {307, 308} + or request.method in {"GET", "HEAD", "OPTIONS"} + ): + raise request.routing_exception # type: ignore[misc] + + from .debughelpers import FormDataRoutingRedirect + + raise FormDataRoutingRedirect(request) + + def update_template_context(self, context: dict[str, t.Any]) -> None: + """Update the template context with some commonly used variables. + This injects request, session, config and g into the template + context as well as everything template context processors want + to inject. Note that the as of Flask 0.6, the original values + in the context will not be overridden if a context processor + decides to return a value with the same key. + + :param context: the context as a dictionary that is updated in place + to add extra variables. + """ + names: t.Iterable[str | None] = (None,) + + # A template may be rendered outside a request context. + if request: + names = chain(names, reversed(request.blueprints)) + + # The values passed to render_template take precedence. Keep a + # copy to re-apply after all context functions. + orig_ctx = context.copy() + + for name in names: + if name in self.template_context_processors: + for func in self.template_context_processors[name]: + context.update(self.ensure_sync(func)()) + + context.update(orig_ctx) + + def make_shell_context(self) -> dict[str, t.Any]: + """Returns the shell context for an interactive shell for this + application. This runs all the registered shell context + processors. + + .. versionadded:: 0.11 + """ + rv = {"app": self, "g": g} + for processor in self.shell_context_processors: + rv.update(processor()) + return rv + + def run( + self, + host: str | None = None, + port: int | None = None, + debug: bool | None = None, + load_dotenv: bool = True, + **options: t.Any, + ) -> None: + """Runs the application on a local development server. + + Do not use ``run()`` in a production setting. It is not intended to + meet security and performance requirements for a production server. + Instead, see :doc:`/deploying/index` for WSGI server recommendations. + + If the :attr:`debug` flag is set the server will automatically reload + for code changes and show a debugger in case an exception happened. + + If you want to run the application in debug mode, but disable the + code execution on the interactive debugger, you can pass + ``use_evalex=False`` as parameter. This will keep the debugger's + traceback screen active, but disable code execution. + + It is not recommended to use this function for development with + automatic reloading as this is badly supported. Instead you should + be using the :command:`flask` command line script's ``run`` support. + + .. admonition:: Keep in Mind + + Flask will suppress any server error with a generic error page + unless it is in debug mode. As such to enable just the + interactive debugger without the code reloading, you have to + invoke :meth:`run` with ``debug=True`` and ``use_reloader=False``. + Setting ``use_debugger`` to ``True`` without being in debug mode + won't catch any exceptions because there won't be any to + catch. + + :param host: the hostname to listen on. Set this to ``'0.0.0.0'`` to + have the server available externally as well. Defaults to + ``'127.0.0.1'`` or the host in the ``SERVER_NAME`` config variable + if present. + :param port: the port of the webserver. Defaults to ``5000`` or the + port defined in the ``SERVER_NAME`` config variable if present. + :param debug: if given, enable or disable debug mode. See + :attr:`debug`. + :param load_dotenv: Load the nearest :file:`.env` and :file:`.flaskenv` + files to set environment variables. Will also change the working + directory to the directory containing the first file found. + :param options: the options to be forwarded to the underlying Werkzeug + server. See :func:`werkzeug.serving.run_simple` for more + information. + + .. versionchanged:: 1.0 + If installed, python-dotenv will be used to load environment + variables from :file:`.env` and :file:`.flaskenv` files. + + The :envvar:`FLASK_DEBUG` environment variable will override :attr:`debug`. + + Threaded mode is enabled by default. + + .. versionchanged:: 0.10 + The default port is now picked from the ``SERVER_NAME`` + variable. + """ + # Ignore this call so that it doesn't start another server if + # the 'flask run' command is used. + if os.environ.get("FLASK_RUN_FROM_CLI") == "true": + if not is_running_from_reloader(): + click.secho( + " * Ignoring a call to 'app.run()' that would block" + " the current 'flask' CLI command.\n" + " Only call 'app.run()' in an 'if __name__ ==" + ' "__main__"\' guard.', + fg="red", + ) + + return + + if get_load_dotenv(load_dotenv): + cli.load_dotenv() + + # if set, env var overrides existing value + if "FLASK_DEBUG" in os.environ: + self.debug = get_debug_flag() + + # debug passed to method overrides all other sources + if debug is not None: + self.debug = bool(debug) + + server_name = self.config.get("SERVER_NAME") + sn_host = sn_port = None + + if server_name: + sn_host, _, sn_port = server_name.partition(":") + + if not host: + if sn_host: + host = sn_host + else: + host = "127.0.0.1" + + if port or port == 0: + port = int(port) + elif sn_port: + port = int(sn_port) + else: + port = 5000 + + options.setdefault("use_reloader", self.debug) + options.setdefault("use_debugger", self.debug) + options.setdefault("threaded", True) + + cli.show_server_banner(self.debug, self.name) + + from werkzeug.serving import run_simple + + try: + run_simple(t.cast(str, host), port, self, **options) + finally: + # reset the first request information if the development server + # reset normally. This makes it possible to restart the server + # without reloader and that stuff from an interactive shell. + self._got_first_request = False + + def test_client(self, use_cookies: bool = True, **kwargs: t.Any) -> FlaskClient: + """Creates a test client for this application. For information + about unit testing head over to :doc:`/testing`. + + Note that if you are testing for assertions or exceptions in your + application code, you must set ``app.testing = True`` in order for the + exceptions to propagate to the test client. Otherwise, the exception + will be handled by the application (not visible to the test client) and + the only indication of an AssertionError or other exception will be a + 500 status code response to the test client. See the :attr:`testing` + attribute. For example:: + + app.testing = True + client = app.test_client() + + The test client can be used in a ``with`` block to defer the closing down + of the context until the end of the ``with`` block. This is useful if + you want to access the context locals for testing:: + + with app.test_client() as c: + rv = c.get('/?vodka=42') + assert request.args['vodka'] == '42' + + Additionally, you may pass optional keyword arguments that will then + be passed to the application's :attr:`test_client_class` constructor. + For example:: + + from flask.testing import FlaskClient + + class CustomClient(FlaskClient): + def __init__(self, *args, **kwargs): + self._authentication = kwargs.pop("authentication") + super(CustomClient,self).__init__( *args, **kwargs) + + app.test_client_class = CustomClient + client = app.test_client(authentication='Basic ....') + + See :class:`~flask.testing.FlaskClient` for more information. + + .. versionchanged:: 0.4 + added support for ``with`` block usage for the client. + + .. versionadded:: 0.7 + The `use_cookies` parameter was added as well as the ability + to override the client to be used by setting the + :attr:`test_client_class` attribute. + + .. versionchanged:: 0.11 + Added `**kwargs` to support passing additional keyword arguments to + the constructor of :attr:`test_client_class`. + """ + cls = self.test_client_class + if cls is None: + from .testing import FlaskClient as cls + return cls( # type: ignore + self, self.response_class, use_cookies=use_cookies, **kwargs + ) + + def test_cli_runner(self, **kwargs: t.Any) -> FlaskCliRunner: + """Create a CLI runner for testing CLI commands. + See :ref:`testing-cli`. + + Returns an instance of :attr:`test_cli_runner_class`, by default + :class:`~flask.testing.FlaskCliRunner`. The Flask app object is + passed as the first argument. + + .. versionadded:: 1.0 + """ + cls = self.test_cli_runner_class + + if cls is None: + from .testing import FlaskCliRunner as cls + + return cls(self, **kwargs) # type: ignore + + def handle_http_exception( + self, e: HTTPException + ) -> HTTPException | ft.ResponseReturnValue: + """Handles an HTTP exception. By default this will invoke the + registered error handlers and fall back to returning the + exception as response. + + .. versionchanged:: 1.0.3 + ``RoutingException``, used internally for actions such as + slash redirects during routing, is not passed to error + handlers. + + .. versionchanged:: 1.0 + Exceptions are looked up by code *and* by MRO, so + ``HTTPException`` subclasses can be handled with a catch-all + handler for the base ``HTTPException``. + + .. versionadded:: 0.3 + """ + # Proxy exceptions don't have error codes. We want to always return + # those unchanged as errors + if e.code is None: + return e + + # RoutingExceptions are used internally to trigger routing + # actions, such as slash redirects raising RequestRedirect. They + # are not raised or handled in user code. + if isinstance(e, RoutingException): + return e + + handler = self._find_error_handler(e, request.blueprints) + if handler is None: + return e + return self.ensure_sync(handler)(e) # type: ignore[no-any-return] + + def handle_user_exception( + self, e: Exception + ) -> HTTPException | ft.ResponseReturnValue: + """This method is called whenever an exception occurs that + should be handled. A special case is :class:`~werkzeug + .exceptions.HTTPException` which is forwarded to the + :meth:`handle_http_exception` method. This function will either + return a response value or reraise the exception with the same + traceback. + + .. versionchanged:: 1.0 + Key errors raised from request data like ``form`` show the + bad key in debug mode rather than a generic bad request + message. + + .. versionadded:: 0.7 + """ + if isinstance(e, BadRequestKeyError) and ( + self.debug or self.config["TRAP_BAD_REQUEST_ERRORS"] + ): + e.show_exception = True + + if isinstance(e, HTTPException) and not self.trap_http_exception(e): + return self.handle_http_exception(e) + + handler = self._find_error_handler(e, request.blueprints) + + if handler is None: + raise + + return self.ensure_sync(handler)(e) # type: ignore[no-any-return] + + def handle_exception(self, e: Exception) -> Response: + """Handle an exception that did not have an error handler + associated with it, or that was raised from an error handler. + This always causes a 500 ``InternalServerError``. + + Always sends the :data:`got_request_exception` signal. + + If :data:`PROPAGATE_EXCEPTIONS` is ``True``, such as in debug + mode, the error will be re-raised so that the debugger can + display it. Otherwise, the original exception is logged, and + an :exc:`~werkzeug.exceptions.InternalServerError` is returned. + + If an error handler is registered for ``InternalServerError`` or + ``500``, it will be used. For consistency, the handler will + always receive the ``InternalServerError``. The original + unhandled exception is available as ``e.original_exception``. + + .. versionchanged:: 1.1.0 + Always passes the ``InternalServerError`` instance to the + handler, setting ``original_exception`` to the unhandled + error. + + .. versionchanged:: 1.1.0 + ``after_request`` functions and other finalization is done + even for the default 500 response when there is no handler. + + .. versionadded:: 0.3 + """ + exc_info = sys.exc_info() + got_request_exception.send(self, _async_wrapper=self.ensure_sync, exception=e) + propagate = self.config["PROPAGATE_EXCEPTIONS"] + + if propagate is None: + propagate = self.testing or self.debug + + if propagate: + # Re-raise if called with an active exception, otherwise + # raise the passed in exception. + if exc_info[1] is e: + raise + + raise e + + self.log_exception(exc_info) + server_error: InternalServerError | ft.ResponseReturnValue + server_error = InternalServerError(original_exception=e) + handler = self._find_error_handler(server_error, request.blueprints) + + if handler is not None: + server_error = self.ensure_sync(handler)(server_error) + + return self.finalize_request(server_error, from_error_handler=True) + + def log_exception( + self, + exc_info: (tuple[type, BaseException, TracebackType] | tuple[None, None, None]), + ) -> None: + """Logs an exception. This is called by :meth:`handle_exception` + if debugging is disabled and right before the handler is called. + The default implementation logs the exception as error on the + :attr:`logger`. + + .. versionadded:: 0.8 + """ + self.logger.error( + f"Exception on {request.path} [{request.method}]", exc_info=exc_info + ) + + def dispatch_request(self) -> ft.ResponseReturnValue: + """Does the request dispatching. Matches the URL and returns the + return value of the view or error handler. This does not have to + be a response object. In order to convert the return value to a + proper response object, call :func:`make_response`. + + .. versionchanged:: 0.7 + This no longer does the exception handling, this code was + moved to the new :meth:`full_dispatch_request`. + """ + req = request_ctx.request + if req.routing_exception is not None: + self.raise_routing_exception(req) + rule: Rule = req.url_rule # type: ignore[assignment] + # if we provide automatic options for this URL and the + # request came with the OPTIONS method, reply automatically + if ( + getattr(rule, "provide_automatic_options", False) + and req.method == "OPTIONS" + ): + return self.make_default_options_response() + # otherwise dispatch to the handler for that endpoint + view_args: dict[str, t.Any] = req.view_args # type: ignore[assignment] + return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return] + + def full_dispatch_request(self) -> Response: + """Dispatches the request and on top of that performs request + pre and postprocessing as well as HTTP exception catching and + error handling. + + .. versionadded:: 0.7 + """ + self._got_first_request = True + + try: + request_started.send(self, _async_wrapper=self.ensure_sync) + rv = self.preprocess_request() + if rv is None: + rv = self.dispatch_request() + except Exception as e: + rv = self.handle_user_exception(e) + return self.finalize_request(rv) + + def finalize_request( + self, + rv: ft.ResponseReturnValue | HTTPException, + from_error_handler: bool = False, + ) -> Response: + """Given the return value from a view function this finalizes + the request by converting it into a response and invoking the + postprocessing functions. This is invoked for both normal + request dispatching as well as error handlers. + + Because this means that it might be called as a result of a + failure a special safe mode is available which can be enabled + with the `from_error_handler` flag. If enabled, failures in + response processing will be logged and otherwise ignored. + + :internal: + """ + response = self.make_response(rv) + try: + response = self.process_response(response) + request_finished.send( + self, _async_wrapper=self.ensure_sync, response=response + ) + except Exception: + if not from_error_handler: + raise + self.logger.exception( + "Request finalizing failed with an error while handling an error" + ) + return response + + def make_default_options_response(self) -> Response: + """This method is called to create the default ``OPTIONS`` response. + This can be changed through subclassing to change the default + behavior of ``OPTIONS`` responses. + + .. versionadded:: 0.7 + """ + adapter = request_ctx.url_adapter + methods = adapter.allowed_methods() # type: ignore[union-attr] + rv = self.response_class() + rv.allow.update(methods) + return rv + + def ensure_sync(self, func: t.Callable[..., t.Any]) -> t.Callable[..., t.Any]: + """Ensure that the function is synchronous for WSGI workers. + Plain ``def`` functions are returned as-is. ``async def`` + functions are wrapped to run and wait for the response. + + Override this method to change how the app runs async views. + + .. versionadded:: 2.0 + """ + if iscoroutinefunction(func): + return self.async_to_sync(func) + + return func + + def async_to_sync( + self, func: t.Callable[..., t.Coroutine[t.Any, t.Any, t.Any]] + ) -> t.Callable[..., t.Any]: + """Return a sync function that will run the coroutine function. + + .. code-block:: python + + result = app.async_to_sync(func)(*args, **kwargs) + + Override this method to change how the app converts async code + to be synchronously callable. + + .. versionadded:: 2.0 + """ + try: + from asgiref.sync import async_to_sync as asgiref_async_to_sync + except ImportError: + raise RuntimeError( + "Install Flask with the 'async' extra in order to use async views." + ) from None + + return asgiref_async_to_sync(func) + + def url_for( + self, + /, + endpoint: str, + *, + _anchor: str | None = None, + _method: str | None = None, + _scheme: str | None = None, + _external: bool | None = None, + **values: t.Any, + ) -> str: + """Generate a URL to the given endpoint with the given values. + + This is called by :func:`flask.url_for`, and can be called + directly as well. + + An *endpoint* is the name of a URL rule, usually added with + :meth:`@app.route() `, and usually the same name as the + view function. A route defined in a :class:`~flask.Blueprint` + will prepend the blueprint's name separated by a ``.`` to the + endpoint. + + In some cases, such as email messages, you want URLs to include + the scheme and domain, like ``https://example.com/hello``. When + not in an active request, URLs will be external by default, but + this requires setting :data:`SERVER_NAME` so Flask knows what + domain to use. :data:`APPLICATION_ROOT` and + :data:`PREFERRED_URL_SCHEME` should also be configured as + needed. This config is only used when not in an active request. + + Functions can be decorated with :meth:`url_defaults` to modify + keyword arguments before the URL is built. + + If building fails for some reason, such as an unknown endpoint + or incorrect values, the app's :meth:`handle_url_build_error` + method is called. If that returns a string, that is returned, + otherwise a :exc:`~werkzeug.routing.BuildError` is raised. + + :param endpoint: The endpoint name associated with the URL to + generate. If this starts with a ``.``, the current blueprint + name (if any) will be used. + :param _anchor: If given, append this as ``#anchor`` to the URL. + :param _method: If given, generate the URL associated with this + method for the endpoint. + :param _scheme: If given, the URL will have this scheme if it + is external. + :param _external: If given, prefer the URL to be internal + (False) or require it to be external (True). External URLs + include the scheme and domain. When not in an active + request, URLs are external by default. + :param values: Values to use for the variable parts of the URL + rule. Unknown keys are appended as query string arguments, + like ``?a=b&c=d``. + + .. versionadded:: 2.2 + Moved from ``flask.url_for``, which calls this method. + """ + req_ctx = _cv_request.get(None) + + if req_ctx is not None: + url_adapter = req_ctx.url_adapter + blueprint_name = req_ctx.request.blueprint + + # If the endpoint starts with "." and the request matches a + # blueprint, the endpoint is relative to the blueprint. + if endpoint[:1] == ".": + if blueprint_name is not None: + endpoint = f"{blueprint_name}{endpoint}" + else: + endpoint = endpoint[1:] + + # When in a request, generate a URL without scheme and + # domain by default, unless a scheme is given. + if _external is None: + _external = _scheme is not None + else: + app_ctx = _cv_app.get(None) + + # If called by helpers.url_for, an app context is active, + # use its url_adapter. Otherwise, app.url_for was called + # directly, build an adapter. + if app_ctx is not None: + url_adapter = app_ctx.url_adapter + else: + url_adapter = self.create_url_adapter(None) + + if url_adapter is None: + raise RuntimeError( + "Unable to build URLs outside an active request" + " without 'SERVER_NAME' configured. Also configure" + " 'APPLICATION_ROOT' and 'PREFERRED_URL_SCHEME' as" + " needed." + ) + + # When outside a request, generate a URL with scheme and + # domain by default. + if _external is None: + _external = True + + # It is an error to set _scheme when _external=False, in order + # to avoid accidental insecure URLs. + if _scheme is not None and not _external: + raise ValueError("When specifying '_scheme', '_external' must be True.") + + self.inject_url_defaults(endpoint, values) + + try: + rv = url_adapter.build( # type: ignore[union-attr] + endpoint, + values, + method=_method, + url_scheme=_scheme, + force_external=_external, + ) + except BuildError as error: + values.update( + _anchor=_anchor, _method=_method, _scheme=_scheme, _external=_external + ) + return self.handle_url_build_error(error, endpoint, values) + + if _anchor is not None: + _anchor = _url_quote(_anchor, safe="%!#$&'()*+,/:;=?@") + rv = f"{rv}#{_anchor}" + + return rv + + def make_response(self, rv: ft.ResponseReturnValue) -> Response: + """Convert the return value from a view function to an instance of + :attr:`response_class`. + + :param rv: the return value from the view function. The view function + must return a response. Returning ``None``, or the view ending + without returning, is not allowed. The following types are allowed + for ``view_rv``: + + ``str`` + A response object is created with the string encoded to UTF-8 + as the body. + + ``bytes`` + A response object is created with the bytes as the body. + + ``dict`` + A dictionary that will be jsonify'd before being returned. + + ``list`` + A list that will be jsonify'd before being returned. + + ``generator`` or ``iterator`` + A generator that returns ``str`` or ``bytes`` to be + streamed as the response. + + ``tuple`` + Either ``(body, status, headers)``, ``(body, status)``, or + ``(body, headers)``, where ``body`` is any of the other types + allowed here, ``status`` is a string or an integer, and + ``headers`` is a dictionary or a list of ``(key, value)`` + tuples. If ``body`` is a :attr:`response_class` instance, + ``status`` overwrites the exiting value and ``headers`` are + extended. + + :attr:`response_class` + The object is returned unchanged. + + other :class:`~werkzeug.wrappers.Response` class + The object is coerced to :attr:`response_class`. + + :func:`callable` + The function is called as a WSGI application. The result is + used to create a response object. + + .. versionchanged:: 2.2 + A generator will be converted to a streaming response. + A list will be converted to a JSON response. + + .. versionchanged:: 1.1 + A dict will be converted to a JSON response. + + .. versionchanged:: 0.9 + Previously a tuple was interpreted as the arguments for the + response object. + """ + + status: int | None = None + headers: HeadersValue | None = None + + # unpack tuple returns + if isinstance(rv, tuple): + len_rv = len(rv) + + # a 3-tuple is unpacked directly + if len_rv == 3: + rv, status, headers = rv # type: ignore[misc] + # decide if a 2-tuple has status or headers + elif len_rv == 2: + if isinstance(rv[1], (Headers, dict, tuple, list)): + rv, headers = rv # pyright: ignore + else: + rv, status = rv # type: ignore[assignment,misc] + # other sized tuples are not allowed + else: + raise TypeError( + "The view function did not return a valid response tuple." + " The tuple must have the form (body, status, headers)," + " (body, status), or (body, headers)." + ) + + # the body must not be None + if rv is None: + raise TypeError( + f"The view function for {request.endpoint!r} did not" + " return a valid response. The function either returned" + " None or ended without a return statement." + ) + + # make sure the body is an instance of the response class + if not isinstance(rv, self.response_class): + if isinstance(rv, (str, bytes, bytearray)) or isinstance(rv, cabc.Iterator): + # let the response class set the status and headers instead of + # waiting to do it manually, so that the class can handle any + # special logic + rv = self.response_class( + rv, # pyright: ignore + status=status, + headers=headers, # type: ignore[arg-type] + ) + status = headers = None + elif isinstance(rv, (dict, list)): + rv = self.json.response(rv) + elif isinstance(rv, BaseResponse) or callable(rv): + # evaluate a WSGI callable, or coerce a different response + # class to the correct type + try: + rv = self.response_class.force_type( + rv, # type: ignore[arg-type] + request.environ, + ) + except TypeError as e: + raise TypeError( + f"{e}\nThe view function did not return a valid" + " response. The return type must be a string," + " dict, list, tuple with headers or status," + " Response instance, or WSGI callable, but it" + f" was a {type(rv).__name__}." + ).with_traceback(sys.exc_info()[2]) from None + else: + raise TypeError( + "The view function did not return a valid" + " response. The return type must be a string," + " dict, list, tuple with headers or status," + " Response instance, or WSGI callable, but it was a" + f" {type(rv).__name__}." + ) + + rv = t.cast(Response, rv) + # prefer the status if it was provided + if status is not None: + if isinstance(status, (str, bytes, bytearray)): + rv.status = status + else: + rv.status_code = status + + # extend existing headers with provided headers + if headers: + rv.headers.update(headers) + + return rv + + def preprocess_request(self) -> ft.ResponseReturnValue | None: + """Called before the request is dispatched. Calls + :attr:`url_value_preprocessors` registered with the app and the + current blueprint (if any). Then calls :attr:`before_request_funcs` + registered with the app and the blueprint. + + If any :meth:`before_request` handler returns a non-None value, the + value is handled as if it was the return value from the view, and + further request handling is stopped. + """ + names = (None, *reversed(request.blueprints)) + + for name in names: + if name in self.url_value_preprocessors: + for url_func in self.url_value_preprocessors[name]: + url_func(request.endpoint, request.view_args) + + for name in names: + if name in self.before_request_funcs: + for before_func in self.before_request_funcs[name]: + rv = self.ensure_sync(before_func)() + + if rv is not None: + return rv # type: ignore[no-any-return] + + return None + + def process_response(self, response: Response) -> Response: + """Can be overridden in order to modify the response object + before it's sent to the WSGI server. By default this will + call all the :meth:`after_request` decorated functions. + + .. versionchanged:: 0.5 + As of Flask 0.5 the functions registered for after request + execution are called in reverse order of registration. + + :param response: a :attr:`response_class` object. + :return: a new response object or the same, has to be an + instance of :attr:`response_class`. + """ + ctx = request_ctx._get_current_object() # type: ignore[attr-defined] + + for func in ctx._after_request_functions: + response = self.ensure_sync(func)(response) + + for name in chain(request.blueprints, (None,)): + if name in self.after_request_funcs: + for func in reversed(self.after_request_funcs[name]): + response = self.ensure_sync(func)(response) + + if not self.session_interface.is_null_session(ctx._session): + self.session_interface.save_session(self, ctx._session, response) + + return response + + def do_teardown_request( + self, + exc: BaseException | None = _sentinel, # type: ignore[assignment] + ) -> None: + """Called after the request is dispatched and the response is + returned, right before the request context is popped. + + This calls all functions decorated with + :meth:`teardown_request`, and :meth:`Blueprint.teardown_request` + if a blueprint handled the request. Finally, the + :data:`request_tearing_down` signal is sent. + + This is called by + :meth:`RequestContext.pop() `, + which may be delayed during testing to maintain access to + resources. + + :param exc: An unhandled exception raised while dispatching the + request. Detected from the current exception information if + not passed. Passed to each teardown function. + + .. versionchanged:: 0.9 + Added the ``exc`` argument. + """ + if exc is _sentinel: + exc = sys.exc_info()[1] + + for name in chain(request.blueprints, (None,)): + if name in self.teardown_request_funcs: + for func in reversed(self.teardown_request_funcs[name]): + self.ensure_sync(func)(exc) + + request_tearing_down.send(self, _async_wrapper=self.ensure_sync, exc=exc) + + def do_teardown_appcontext( + self, + exc: BaseException | None = _sentinel, # type: ignore[assignment] + ) -> None: + """Called right before the application context is popped. + + When handling a request, the application context is popped + after the request context. See :meth:`do_teardown_request`. + + This calls all functions decorated with + :meth:`teardown_appcontext`. Then the + :data:`appcontext_tearing_down` signal is sent. + + This is called by + :meth:`AppContext.pop() `. + + .. versionadded:: 0.9 + """ + if exc is _sentinel: + exc = sys.exc_info()[1] + + for func in reversed(self.teardown_appcontext_funcs): + self.ensure_sync(func)(exc) + + appcontext_tearing_down.send(self, _async_wrapper=self.ensure_sync, exc=exc) + + def app_context(self) -> AppContext: + """Create an :class:`~flask.ctx.AppContext`. Use as a ``with`` + block to push the context, which will make :data:`current_app` + point at this application. + + An application context is automatically pushed by + :meth:`RequestContext.push() ` + when handling a request, and when running a CLI command. Use + this to manually create a context outside of these situations. + + :: + + with app.app_context(): + init_db() + + See :doc:`/appcontext`. + + .. versionadded:: 0.9 + """ + return AppContext(self) + + def request_context(self, environ: WSGIEnvironment) -> RequestContext: + """Create a :class:`~flask.ctx.RequestContext` representing a + WSGI environment. Use a ``with`` block to push the context, + which will make :data:`request` point at this request. + + See :doc:`/reqcontext`. + + Typically you should not call this from your own code. A request + context is automatically pushed by the :meth:`wsgi_app` when + handling a request. Use :meth:`test_request_context` to create + an environment and context instead of this method. + + :param environ: a WSGI environment + """ + return RequestContext(self, environ) + + def test_request_context(self, *args: t.Any, **kwargs: t.Any) -> RequestContext: + """Create a :class:`~flask.ctx.RequestContext` for a WSGI + environment created from the given values. This is mostly useful + during testing, where you may want to run a function that uses + request data without dispatching a full request. + + See :doc:`/reqcontext`. + + Use a ``with`` block to push the context, which will make + :data:`request` point at the request for the created + environment. :: + + with app.test_request_context(...): + generate_report() + + When using the shell, it may be easier to push and pop the + context manually to avoid indentation. :: + + ctx = app.test_request_context(...) + ctx.push() + ... + ctx.pop() + + Takes the same arguments as Werkzeug's + :class:`~werkzeug.test.EnvironBuilder`, with some defaults from + the application. See the linked Werkzeug docs for most of the + available arguments. Flask-specific behavior is listed here. + + :param path: URL path being requested. + :param base_url: Base URL where the app is being served, which + ``path`` is relative to. If not given, built from + :data:`PREFERRED_URL_SCHEME`, ``subdomain``, + :data:`SERVER_NAME`, and :data:`APPLICATION_ROOT`. + :param subdomain: Subdomain name to append to + :data:`SERVER_NAME`. + :param url_scheme: Scheme to use instead of + :data:`PREFERRED_URL_SCHEME`. + :param data: The request body, either as a string or a dict of + form keys and values. + :param json: If given, this is serialized as JSON and passed as + ``data``. Also defaults ``content_type`` to + ``application/json``. + :param args: other positional arguments passed to + :class:`~werkzeug.test.EnvironBuilder`. + :param kwargs: other keyword arguments passed to + :class:`~werkzeug.test.EnvironBuilder`. + """ + from .testing import EnvironBuilder + + builder = EnvironBuilder(self, *args, **kwargs) + + try: + return self.request_context(builder.get_environ()) + finally: + builder.close() + + def wsgi_app( + self, environ: WSGIEnvironment, start_response: StartResponse + ) -> cabc.Iterable[bytes]: + """The actual WSGI application. This is not implemented in + :meth:`__call__` so that middlewares can be applied without + losing a reference to the app object. Instead of doing this:: + + app = MyMiddleware(app) + + It's a better idea to do this instead:: + + app.wsgi_app = MyMiddleware(app.wsgi_app) + + Then you still have the original application object around and + can continue to call methods on it. + + .. versionchanged:: 0.7 + Teardown events for the request and app contexts are called + even if an unhandled error occurs. Other events may not be + called depending on when an error occurs during dispatch. + See :ref:`callbacks-and-errors`. + + :param environ: A WSGI environment. + :param start_response: A callable accepting a status code, + a list of headers, and an optional exception context to + start the response. + """ + ctx = self.request_context(environ) + error: BaseException | None = None + try: + try: + ctx.push() + response = self.full_dispatch_request() + except Exception as e: + error = e + response = self.handle_exception(e) + except: + error = sys.exc_info()[1] + raise + return response(environ, start_response) + finally: + if "werkzeug.debug.preserve_context" in environ: + environ["werkzeug.debug.preserve_context"](_cv_app.get()) + environ["werkzeug.debug.preserve_context"](_cv_request.get()) + + if error is not None and self.should_ignore_error(error): + error = None + + ctx.pop(error) + + def __call__( + self, environ: WSGIEnvironment, start_response: StartResponse + ) -> cabc.Iterable[bytes]: + """The WSGI server calls the Flask application object as the + WSGI application. This calls :meth:`wsgi_app`, which can be + wrapped to apply middleware. + """ + return self.wsgi_app(environ, start_response) diff --git a/venv/lib/python3.9/site-packages/flask/blueprints.py b/venv/lib/python3.9/site-packages/flask/blueprints.py new file mode 100644 index 0000000..b6d4e43 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/blueprints.py @@ -0,0 +1,128 @@ +from __future__ import annotations + +import os +import typing as t +from datetime import timedelta + +from .cli import AppGroup +from .globals import current_app +from .helpers import send_from_directory +from .sansio.blueprints import Blueprint as SansioBlueprint +from .sansio.blueprints import BlueprintSetupState as BlueprintSetupState # noqa +from .sansio.scaffold import _sentinel + +if t.TYPE_CHECKING: # pragma: no cover + from .wrappers import Response + + +class Blueprint(SansioBlueprint): + def __init__( + self, + name: str, + import_name: str, + static_folder: str | os.PathLike[str] | None = None, + static_url_path: str | None = None, + template_folder: str | os.PathLike[str] | None = None, + url_prefix: str | None = None, + subdomain: str | None = None, + url_defaults: dict[str, t.Any] | None = None, + root_path: str | None = None, + cli_group: str | None = _sentinel, # type: ignore + ) -> None: + super().__init__( + name, + import_name, + static_folder, + static_url_path, + template_folder, + url_prefix, + subdomain, + url_defaults, + root_path, + cli_group, + ) + + #: The Click command group for registering CLI commands for this + #: object. The commands are available from the ``flask`` command + #: once the application has been discovered and blueprints have + #: been registered. + self.cli = AppGroup() + + # Set the name of the Click group in case someone wants to add + # the app's commands to another CLI tool. + self.cli.name = self.name + + def get_send_file_max_age(self, filename: str | None) -> int | None: + """Used by :func:`send_file` to determine the ``max_age`` cache + value for a given file path if it wasn't passed. + + By default, this returns :data:`SEND_FILE_MAX_AGE_DEFAULT` from + the configuration of :data:`~flask.current_app`. This defaults + to ``None``, which tells the browser to use conditional requests + instead of a timed cache, which is usually preferable. + + Note this is a duplicate of the same method in the Flask + class. + + .. versionchanged:: 2.0 + The default configuration is ``None`` instead of 12 hours. + + .. versionadded:: 0.9 + """ + value = current_app.config["SEND_FILE_MAX_AGE_DEFAULT"] + + if value is None: + return None + + if isinstance(value, timedelta): + return int(value.total_seconds()) + + return value # type: ignore[no-any-return] + + def send_static_file(self, filename: str) -> Response: + """The view function used to serve files from + :attr:`static_folder`. A route is automatically registered for + this view at :attr:`static_url_path` if :attr:`static_folder` is + set. + + Note this is a duplicate of the same method in the Flask + class. + + .. versionadded:: 0.5 + + """ + if not self.has_static_folder: + raise RuntimeError("'static_folder' must be set to serve static_files.") + + # send_file only knows to call get_send_file_max_age on the app, + # call it here so it works for blueprints too. + max_age = self.get_send_file_max_age(filename) + return send_from_directory( + t.cast(str, self.static_folder), filename, max_age=max_age + ) + + def open_resource( + self, resource: str, mode: str = "rb", encoding: str | None = "utf-8" + ) -> t.IO[t.AnyStr]: + """Open a resource file relative to :attr:`root_path` for reading. The + blueprint-relative equivalent of the app's :meth:`~.Flask.open_resource` + method. + + :param resource: Path to the resource relative to :attr:`root_path`. + :param mode: Open the file in this mode. Only reading is supported, + valid values are ``"r"`` (or ``"rt"``) and ``"rb"``. + :param encoding: Open the file with this encoding when opening in text + mode. This is ignored when opening in binary mode. + + .. versionchanged:: 3.1 + Added the ``encoding`` parameter. + """ + if mode not in {"r", "rt", "rb"}: + raise ValueError("Resources can only be opened for reading.") + + path = os.path.join(self.root_path, resource) + + if mode == "rb": + return open(path, mode) # pyright: ignore + + return open(path, mode, encoding=encoding) diff --git a/venv/lib/python3.9/site-packages/flask/cli.py b/venv/lib/python3.9/site-packages/flask/cli.py new file mode 100644 index 0000000..ed11f25 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/cli.py @@ -0,0 +1,1135 @@ +from __future__ import annotations + +import ast +import collections.abc as cabc +import importlib.metadata +import inspect +import os +import platform +import re +import sys +import traceback +import typing as t +from functools import update_wrapper +from operator import itemgetter +from types import ModuleType + +import click +from click.core import ParameterSource +from werkzeug import run_simple +from werkzeug.serving import is_running_from_reloader +from werkzeug.utils import import_string + +from .globals import current_app +from .helpers import get_debug_flag +from .helpers import get_load_dotenv + +if t.TYPE_CHECKING: + import ssl + + from _typeshed.wsgi import StartResponse + from _typeshed.wsgi import WSGIApplication + from _typeshed.wsgi import WSGIEnvironment + + from .app import Flask + + +class NoAppException(click.UsageError): + """Raised if an application cannot be found or loaded.""" + + +def find_best_app(module: ModuleType) -> Flask: + """Given a module instance this tries to find the best possible + application in the module or raises an exception. + """ + from . import Flask + + # Search for the most common names first. + for attr_name in ("app", "application"): + app = getattr(module, attr_name, None) + + if isinstance(app, Flask): + return app + + # Otherwise find the only object that is a Flask instance. + matches = [v for v in module.__dict__.values() if isinstance(v, Flask)] + + if len(matches) == 1: + return matches[0] + elif len(matches) > 1: + raise NoAppException( + "Detected multiple Flask applications in module" + f" '{module.__name__}'. Use '{module.__name__}:name'" + " to specify the correct one." + ) + + # Search for app factory functions. + for attr_name in ("create_app", "make_app"): + app_factory = getattr(module, attr_name, None) + + if inspect.isfunction(app_factory): + try: + app = app_factory() + + if isinstance(app, Flask): + return app + except TypeError as e: + if not _called_with_wrong_args(app_factory): + raise + + raise NoAppException( + f"Detected factory '{attr_name}' in module '{module.__name__}'," + " but could not call it without arguments. Use" + f" '{module.__name__}:{attr_name}(args)'" + " to specify arguments." + ) from e + + raise NoAppException( + "Failed to find Flask application or factory in module" + f" '{module.__name__}'. Use '{module.__name__}:name'" + " to specify one." + ) + + +def _called_with_wrong_args(f: t.Callable[..., Flask]) -> bool: + """Check whether calling a function raised a ``TypeError`` because + the call failed or because something in the factory raised the + error. + + :param f: The function that was called. + :return: ``True`` if the call failed. + """ + tb = sys.exc_info()[2] + + try: + while tb is not None: + if tb.tb_frame.f_code is f.__code__: + # In the function, it was called successfully. + return False + + tb = tb.tb_next + + # Didn't reach the function. + return True + finally: + # Delete tb to break a circular reference. + # https://docs.python.org/2/library/sys.html#sys.exc_info + del tb + + +def find_app_by_string(module: ModuleType, app_name: str) -> Flask: + """Check if the given string is a variable name or a function. Call + a function to get the app instance, or return the variable directly. + """ + from . import Flask + + # Parse app_name as a single expression to determine if it's a valid + # attribute name or function call. + try: + expr = ast.parse(app_name.strip(), mode="eval").body + except SyntaxError: + raise NoAppException( + f"Failed to parse {app_name!r} as an attribute name or function call." + ) from None + + if isinstance(expr, ast.Name): + name = expr.id + args = [] + kwargs = {} + elif isinstance(expr, ast.Call): + # Ensure the function name is an attribute name only. + if not isinstance(expr.func, ast.Name): + raise NoAppException( + f"Function reference must be a simple name: {app_name!r}." + ) + + name = expr.func.id + + # Parse the positional and keyword arguments as literals. + try: + args = [ast.literal_eval(arg) for arg in expr.args] + kwargs = { + kw.arg: ast.literal_eval(kw.value) + for kw in expr.keywords + if kw.arg is not None + } + except ValueError: + # literal_eval gives cryptic error messages, show a generic + # message with the full expression instead. + raise NoAppException( + f"Failed to parse arguments as literal values: {app_name!r}." + ) from None + else: + raise NoAppException( + f"Failed to parse {app_name!r} as an attribute name or function call." + ) + + try: + attr = getattr(module, name) + except AttributeError as e: + raise NoAppException( + f"Failed to find attribute {name!r} in {module.__name__!r}." + ) from e + + # If the attribute is a function, call it with any args and kwargs + # to get the real application. + if inspect.isfunction(attr): + try: + app = attr(*args, **kwargs) + except TypeError as e: + if not _called_with_wrong_args(attr): + raise + + raise NoAppException( + f"The factory {app_name!r} in module" + f" {module.__name__!r} could not be called with the" + " specified arguments." + ) from e + else: + app = attr + + if isinstance(app, Flask): + return app + + raise NoAppException( + "A valid Flask application was not obtained from" + f" '{module.__name__}:{app_name}'." + ) + + +def prepare_import(path: str) -> str: + """Given a filename this will try to calculate the python path, add it + to the search path and return the actual module name that is expected. + """ + path = os.path.realpath(path) + + fname, ext = os.path.splitext(path) + if ext == ".py": + path = fname + + if os.path.basename(path) == "__init__": + path = os.path.dirname(path) + + module_name = [] + + # move up until outside package structure (no __init__.py) + while True: + path, name = os.path.split(path) + module_name.append(name) + + if not os.path.exists(os.path.join(path, "__init__.py")): + break + + if sys.path[0] != path: + sys.path.insert(0, path) + + return ".".join(module_name[::-1]) + + +@t.overload +def locate_app( + module_name: str, app_name: str | None, raise_if_not_found: t.Literal[True] = True +) -> Flask: ... + + +@t.overload +def locate_app( + module_name: str, app_name: str | None, raise_if_not_found: t.Literal[False] = ... +) -> Flask | None: ... + + +def locate_app( + module_name: str, app_name: str | None, raise_if_not_found: bool = True +) -> Flask | None: + try: + __import__(module_name) + except ImportError: + # Reraise the ImportError if it occurred within the imported module. + # Determine this by checking whether the trace has a depth > 1. + if sys.exc_info()[2].tb_next: # type: ignore[union-attr] + raise NoAppException( + f"While importing {module_name!r}, an ImportError was" + f" raised:\n\n{traceback.format_exc()}" + ) from None + elif raise_if_not_found: + raise NoAppException(f"Could not import {module_name!r}.") from None + else: + return None + + module = sys.modules[module_name] + + if app_name is None: + return find_best_app(module) + else: + return find_app_by_string(module, app_name) + + +def get_version(ctx: click.Context, param: click.Parameter, value: t.Any) -> None: + if not value or ctx.resilient_parsing: + return + + flask_version = importlib.metadata.version("flask") + werkzeug_version = importlib.metadata.version("werkzeug") + + click.echo( + f"Python {platform.python_version()}\n" + f"Flask {flask_version}\n" + f"Werkzeug {werkzeug_version}", + color=ctx.color, + ) + ctx.exit() + + +version_option = click.Option( + ["--version"], + help="Show the Flask version.", + expose_value=False, + callback=get_version, + is_flag=True, + is_eager=True, +) + + +class ScriptInfo: + """Helper object to deal with Flask applications. This is usually not + necessary to interface with as it's used internally in the dispatching + to click. In future versions of Flask this object will most likely play + a bigger role. Typically it's created automatically by the + :class:`FlaskGroup` but you can also manually create it and pass it + onwards as click object. + + .. versionchanged:: 3.1 + Added the ``load_dotenv_defaults`` parameter and attribute. + """ + + def __init__( + self, + app_import_path: str | None = None, + create_app: t.Callable[..., Flask] | None = None, + set_debug_flag: bool = True, + load_dotenv_defaults: bool = True, + ) -> None: + #: Optionally the import path for the Flask application. + self.app_import_path = app_import_path + #: Optionally a function that is passed the script info to create + #: the instance of the application. + self.create_app = create_app + #: A dictionary with arbitrary data that can be associated with + #: this script info. + self.data: dict[t.Any, t.Any] = {} + self.set_debug_flag = set_debug_flag + + self.load_dotenv_defaults = get_load_dotenv(load_dotenv_defaults) + """Whether default ``.flaskenv`` and ``.env`` files should be loaded. + + ``ScriptInfo`` doesn't load anything, this is for reference when doing + the load elsewhere during processing. + + .. versionadded:: 3.1 + """ + + self._loaded_app: Flask | None = None + + def load_app(self) -> Flask: + """Loads the Flask app (if not yet loaded) and returns it. Calling + this multiple times will just result in the already loaded app to + be returned. + """ + if self._loaded_app is not None: + return self._loaded_app + app: Flask | None = None + if self.create_app is not None: + app = self.create_app() + else: + if self.app_import_path: + path, name = ( + re.split(r":(?![\\/])", self.app_import_path, maxsplit=1) + [None] + )[:2] + import_name = prepare_import(path) + app = locate_app(import_name, name) + else: + for path in ("wsgi.py", "app.py"): + import_name = prepare_import(path) + app = locate_app(import_name, None, raise_if_not_found=False) + + if app is not None: + break + + if app is None: + raise NoAppException( + "Could not locate a Flask application. Use the" + " 'flask --app' option, 'FLASK_APP' environment" + " variable, or a 'wsgi.py' or 'app.py' file in the" + " current directory." + ) + + if self.set_debug_flag: + # Update the app's debug flag through the descriptor so that + # other values repopulate as well. + app.debug = get_debug_flag() + + self._loaded_app = app + return app + + +pass_script_info = click.make_pass_decorator(ScriptInfo, ensure=True) + +F = t.TypeVar("F", bound=t.Callable[..., t.Any]) + + +def with_appcontext(f: F) -> F: + """Wraps a callback so that it's guaranteed to be executed with the + script's application context. + + Custom commands (and their options) registered under ``app.cli`` or + ``blueprint.cli`` will always have an app context available, this + decorator is not required in that case. + + .. versionchanged:: 2.2 + The app context is active for subcommands as well as the + decorated callback. The app context is always available to + ``app.cli`` command and parameter callbacks. + """ + + @click.pass_context + def decorator(ctx: click.Context, /, *args: t.Any, **kwargs: t.Any) -> t.Any: + if not current_app: + app = ctx.ensure_object(ScriptInfo).load_app() + ctx.with_resource(app.app_context()) + + return ctx.invoke(f, *args, **kwargs) + + return update_wrapper(decorator, f) # type: ignore[return-value] + + +class AppGroup(click.Group): + """This works similar to a regular click :class:`~click.Group` but it + changes the behavior of the :meth:`command` decorator so that it + automatically wraps the functions in :func:`with_appcontext`. + + Not to be confused with :class:`FlaskGroup`. + """ + + def command( # type: ignore[override] + self, *args: t.Any, **kwargs: t.Any + ) -> t.Callable[[t.Callable[..., t.Any]], click.Command]: + """This works exactly like the method of the same name on a regular + :class:`click.Group` but it wraps callbacks in :func:`with_appcontext` + unless it's disabled by passing ``with_appcontext=False``. + """ + wrap_for_ctx = kwargs.pop("with_appcontext", True) + + def decorator(f: t.Callable[..., t.Any]) -> click.Command: + if wrap_for_ctx: + f = with_appcontext(f) + return super(AppGroup, self).command(*args, **kwargs)(f) # type: ignore[no-any-return] + + return decorator + + def group( # type: ignore[override] + self, *args: t.Any, **kwargs: t.Any + ) -> t.Callable[[t.Callable[..., t.Any]], click.Group]: + """This works exactly like the method of the same name on a regular + :class:`click.Group` but it defaults the group class to + :class:`AppGroup`. + """ + kwargs.setdefault("cls", AppGroup) + return super().group(*args, **kwargs) # type: ignore[no-any-return] + + +def _set_app(ctx: click.Context, param: click.Option, value: str | None) -> str | None: + if value is None: + return None + + info = ctx.ensure_object(ScriptInfo) + info.app_import_path = value + return value + + +# This option is eager so the app will be available if --help is given. +# --help is also eager, so --app must be before it in the param list. +# no_args_is_help bypasses eager processing, so this option must be +# processed manually in that case to ensure FLASK_APP gets picked up. +_app_option = click.Option( + ["-A", "--app"], + metavar="IMPORT", + help=( + "The Flask application or factory function to load, in the form 'module:name'." + " Module can be a dotted import or file path. Name is not required if it is" + " 'app', 'application', 'create_app', or 'make_app', and can be 'name(args)' to" + " pass arguments." + ), + is_eager=True, + expose_value=False, + callback=_set_app, +) + + +def _set_debug(ctx: click.Context, param: click.Option, value: bool) -> bool | None: + # If the flag isn't provided, it will default to False. Don't use + # that, let debug be set by env in that case. + source = ctx.get_parameter_source(param.name) # type: ignore[arg-type] + + if source is not None and source in ( + ParameterSource.DEFAULT, + ParameterSource.DEFAULT_MAP, + ): + return None + + # Set with env var instead of ScriptInfo.load so that it can be + # accessed early during a factory function. + os.environ["FLASK_DEBUG"] = "1" if value else "0" + return value + + +_debug_option = click.Option( + ["--debug/--no-debug"], + help="Set debug mode.", + expose_value=False, + callback=_set_debug, +) + + +def _env_file_callback( + ctx: click.Context, param: click.Option, value: str | None +) -> str | None: + try: + import dotenv # noqa: F401 + except ImportError: + # Only show an error if a value was passed, otherwise we still want to + # call load_dotenv and show a message without exiting. + if value is not None: + raise click.BadParameter( + "python-dotenv must be installed to load an env file.", + ctx=ctx, + param=param, + ) from None + + # Load if a value was passed, or we want to load default files, or both. + if value is not None or ctx.obj.load_dotenv_defaults: + load_dotenv(value, load_defaults=ctx.obj.load_dotenv_defaults) + + return value + + +# This option is eager so env vars are loaded as early as possible to be +# used by other options. +_env_file_option = click.Option( + ["-e", "--env-file"], + type=click.Path(exists=True, dir_okay=False), + help=( + "Load environment variables from this file, taking precedence over" + " those set by '.env' and '.flaskenv'. Variables set directly in the" + " environment take highest precedence. python-dotenv must be installed." + ), + is_eager=True, + expose_value=False, + callback=_env_file_callback, +) + + +class FlaskGroup(AppGroup): + """Special subclass of the :class:`AppGroup` group that supports + loading more commands from the configured Flask app. Normally a + developer does not have to interface with this class but there are + some very advanced use cases for which it makes sense to create an + instance of this. see :ref:`custom-scripts`. + + :param add_default_commands: if this is True then the default run and + shell commands will be added. + :param add_version_option: adds the ``--version`` option. + :param create_app: an optional callback that is passed the script info and + returns the loaded app. + :param load_dotenv: Load the nearest :file:`.env` and :file:`.flaskenv` + files to set environment variables. Will also change the working + directory to the directory containing the first file found. + :param set_debug_flag: Set the app's debug flag. + + .. versionchanged:: 3.1 + ``-e path`` takes precedence over default ``.env`` and ``.flaskenv`` files. + + .. versionchanged:: 2.2 + Added the ``-A/--app``, ``--debug/--no-debug``, ``-e/--env-file`` options. + + .. versionchanged:: 2.2 + An app context is pushed when running ``app.cli`` commands, so + ``@with_appcontext`` is no longer required for those commands. + + .. versionchanged:: 1.0 + If installed, python-dotenv will be used to load environment variables + from :file:`.env` and :file:`.flaskenv` files. + """ + + def __init__( + self, + add_default_commands: bool = True, + create_app: t.Callable[..., Flask] | None = None, + add_version_option: bool = True, + load_dotenv: bool = True, + set_debug_flag: bool = True, + **extra: t.Any, + ) -> None: + params: list[click.Parameter] = list(extra.pop("params", None) or ()) + # Processing is done with option callbacks instead of a group + # callback. This allows users to make a custom group callback + # without losing the behavior. --env-file must come first so + # that it is eagerly evaluated before --app. + params.extend((_env_file_option, _app_option, _debug_option)) + + if add_version_option: + params.append(version_option) + + if "context_settings" not in extra: + extra["context_settings"] = {} + + extra["context_settings"].setdefault("auto_envvar_prefix", "FLASK") + + super().__init__(params=params, **extra) + + self.create_app = create_app + self.load_dotenv = load_dotenv + self.set_debug_flag = set_debug_flag + + if add_default_commands: + self.add_command(run_command) + self.add_command(shell_command) + self.add_command(routes_command) + + self._loaded_plugin_commands = False + + def _load_plugin_commands(self) -> None: + if self._loaded_plugin_commands: + return + + if sys.version_info >= (3, 10): + from importlib import metadata + else: + # Use a backport on Python < 3.10. We technically have + # importlib.metadata on 3.8+, but the API changed in 3.10, + # so use the backport for consistency. + import importlib_metadata as metadata # pyright: ignore + + for ep in metadata.entry_points(group="flask.commands"): + self.add_command(ep.load(), ep.name) + + self._loaded_plugin_commands = True + + def get_command(self, ctx: click.Context, name: str) -> click.Command | None: + self._load_plugin_commands() + # Look up built-in and plugin commands, which should be + # available even if the app fails to load. + rv = super().get_command(ctx, name) + + if rv is not None: + return rv + + info = ctx.ensure_object(ScriptInfo) + + # Look up commands provided by the app, showing an error and + # continuing if the app couldn't be loaded. + try: + app = info.load_app() + except NoAppException as e: + click.secho(f"Error: {e.format_message()}\n", err=True, fg="red") + return None + + # Push an app context for the loaded app unless it is already + # active somehow. This makes the context available to parameter + # and command callbacks without needing @with_appcontext. + if not current_app or current_app._get_current_object() is not app: # type: ignore[attr-defined] + ctx.with_resource(app.app_context()) + + return app.cli.get_command(ctx, name) + + def list_commands(self, ctx: click.Context) -> list[str]: + self._load_plugin_commands() + # Start with the built-in and plugin commands. + rv = set(super().list_commands(ctx)) + info = ctx.ensure_object(ScriptInfo) + + # Add commands provided by the app, showing an error and + # continuing if the app couldn't be loaded. + try: + rv.update(info.load_app().cli.list_commands(ctx)) + except NoAppException as e: + # When an app couldn't be loaded, show the error message + # without the traceback. + click.secho(f"Error: {e.format_message()}\n", err=True, fg="red") + except Exception: + # When any other errors occurred during loading, show the + # full traceback. + click.secho(f"{traceback.format_exc()}\n", err=True, fg="red") + + return sorted(rv) + + def make_context( + self, + info_name: str | None, + args: list[str], + parent: click.Context | None = None, + **extra: t.Any, + ) -> click.Context: + # Set a flag to tell app.run to become a no-op. If app.run was + # not in a __name__ == __main__ guard, it would start the server + # when importing, blocking whatever command is being called. + os.environ["FLASK_RUN_FROM_CLI"] = "true" + + if "obj" not in extra and "obj" not in self.context_settings: + extra["obj"] = ScriptInfo( + create_app=self.create_app, + set_debug_flag=self.set_debug_flag, + load_dotenv_defaults=self.load_dotenv, + ) + + return super().make_context(info_name, args, parent=parent, **extra) + + def parse_args(self, ctx: click.Context, args: list[str]) -> list[str]: + if (not args and self.no_args_is_help) or ( + len(args) == 1 and args[0] in self.get_help_option_names(ctx) + ): + # Attempt to load --env-file and --app early in case they + # were given as env vars. Otherwise no_args_is_help will not + # see commands from app.cli. + _env_file_option.handle_parse_result(ctx, {}, []) + _app_option.handle_parse_result(ctx, {}, []) + + return super().parse_args(ctx, args) + + +def _path_is_ancestor(path: str, other: str) -> bool: + """Take ``other`` and remove the length of ``path`` from it. Then join it + to ``path``. If it is the original value, ``path`` is an ancestor of + ``other``.""" + return os.path.join(path, other[len(path) :].lstrip(os.sep)) == other + + +def load_dotenv( + path: str | os.PathLike[str] | None = None, load_defaults: bool = True +) -> bool: + """Load "dotenv" files to set environment variables. A given path takes + precedence over ``.env``, which takes precedence over ``.flaskenv``. After + loading and combining these files, values are only set if the key is not + already set in ``os.environ``. + + This is a no-op if `python-dotenv`_ is not installed. + + .. _python-dotenv: https://github.com/theskumar/python-dotenv#readme + + :param path: Load the file at this location. + :param load_defaults: Search for and load the default ``.flaskenv`` and + ``.env`` files. + :return: ``True`` if at least one env var was loaded. + + .. versionchanged:: 3.1 + Added the ``load_defaults`` parameter. A given path takes precedence + over default files. + + .. versionchanged:: 2.0 + The current directory is not changed to the location of the + loaded file. + + .. versionchanged:: 2.0 + When loading the env files, set the default encoding to UTF-8. + + .. versionchanged:: 1.1.0 + Returns ``False`` when python-dotenv is not installed, or when + the given path isn't a file. + + .. versionadded:: 1.0 + """ + try: + import dotenv + except ImportError: + if path or os.path.isfile(".env") or os.path.isfile(".flaskenv"): + click.secho( + " * Tip: There are .env files present. Install python-dotenv" + " to use them.", + fg="yellow", + err=True, + ) + + return False + + data: dict[str, str | None] = {} + + if load_defaults: + for default_name in (".flaskenv", ".env"): + if not (default_path := dotenv.find_dotenv(default_name, usecwd=True)): + continue + + data |= dotenv.dotenv_values(default_path, encoding="utf-8") + + if path is not None and os.path.isfile(path): + data |= dotenv.dotenv_values(path, encoding="utf-8") + + for key, value in data.items(): + if key in os.environ or value is None: + continue + + os.environ[key] = value + + return bool(data) # True if at least one env var was loaded. + + +def show_server_banner(debug: bool, app_import_path: str | None) -> None: + """Show extra startup messages the first time the server is run, + ignoring the reloader. + """ + if is_running_from_reloader(): + return + + if app_import_path is not None: + click.echo(f" * Serving Flask app '{app_import_path}'") + + if debug is not None: + click.echo(f" * Debug mode: {'on' if debug else 'off'}") + + +class CertParamType(click.ParamType): + """Click option type for the ``--cert`` option. Allows either an + existing file, the string ``'adhoc'``, or an import for a + :class:`~ssl.SSLContext` object. + """ + + name = "path" + + def __init__(self) -> None: + self.path_type = click.Path(exists=True, dir_okay=False, resolve_path=True) + + def convert( + self, value: t.Any, param: click.Parameter | None, ctx: click.Context | None + ) -> t.Any: + try: + import ssl + except ImportError: + raise click.BadParameter( + 'Using "--cert" requires Python to be compiled with SSL support.', + ctx, + param, + ) from None + + try: + return self.path_type(value, param, ctx) + except click.BadParameter: + value = click.STRING(value, param, ctx).lower() + + if value == "adhoc": + try: + import cryptography # noqa: F401 + except ImportError: + raise click.BadParameter( + "Using ad-hoc certificates requires the cryptography library.", + ctx, + param, + ) from None + + return value + + obj = import_string(value, silent=True) + + if isinstance(obj, ssl.SSLContext): + return obj + + raise + + +def _validate_key(ctx: click.Context, param: click.Parameter, value: t.Any) -> t.Any: + """The ``--key`` option must be specified when ``--cert`` is a file. + Modifies the ``cert`` param to be a ``(cert, key)`` pair if needed. + """ + cert = ctx.params.get("cert") + is_adhoc = cert == "adhoc" + + try: + import ssl + except ImportError: + is_context = False + else: + is_context = isinstance(cert, ssl.SSLContext) + + if value is not None: + if is_adhoc: + raise click.BadParameter( + 'When "--cert" is "adhoc", "--key" is not used.', ctx, param + ) + + if is_context: + raise click.BadParameter( + 'When "--cert" is an SSLContext object, "--key" is not used.', + ctx, + param, + ) + + if not cert: + raise click.BadParameter('"--cert" must also be specified.', ctx, param) + + ctx.params["cert"] = cert, value + + else: + if cert and not (is_adhoc or is_context): + raise click.BadParameter('Required when using "--cert".', ctx, param) + + return value + + +class SeparatedPathType(click.Path): + """Click option type that accepts a list of values separated by the + OS's path separator (``:``, ``;`` on Windows). Each value is + validated as a :class:`click.Path` type. + """ + + def convert( + self, value: t.Any, param: click.Parameter | None, ctx: click.Context | None + ) -> t.Any: + items = self.split_envvar_value(value) + # can't call no-arg super() inside list comprehension until Python 3.12 + super_convert = super().convert + return [super_convert(item, param, ctx) for item in items] + + +@click.command("run", short_help="Run a development server.") +@click.option("--host", "-h", default="127.0.0.1", help="The interface to bind to.") +@click.option("--port", "-p", default=5000, help="The port to bind to.") +@click.option( + "--cert", + type=CertParamType(), + help="Specify a certificate file to use HTTPS.", + is_eager=True, +) +@click.option( + "--key", + type=click.Path(exists=True, dir_okay=False, resolve_path=True), + callback=_validate_key, + expose_value=False, + help="The key file to use when specifying a certificate.", +) +@click.option( + "--reload/--no-reload", + default=None, + help="Enable or disable the reloader. By default the reloader " + "is active if debug is enabled.", +) +@click.option( + "--debugger/--no-debugger", + default=None, + help="Enable or disable the debugger. By default the debugger " + "is active if debug is enabled.", +) +@click.option( + "--with-threads/--without-threads", + default=True, + help="Enable or disable multithreading.", +) +@click.option( + "--extra-files", + default=None, + type=SeparatedPathType(), + help=( + "Extra files that trigger a reload on change. Multiple paths" + f" are separated by {os.path.pathsep!r}." + ), +) +@click.option( + "--exclude-patterns", + default=None, + type=SeparatedPathType(), + help=( + "Files matching these fnmatch patterns will not trigger a reload" + " on change. Multiple patterns are separated by" + f" {os.path.pathsep!r}." + ), +) +@pass_script_info +def run_command( + info: ScriptInfo, + host: str, + port: int, + reload: bool, + debugger: bool, + with_threads: bool, + cert: ssl.SSLContext | tuple[str, str | None] | t.Literal["adhoc"] | None, + extra_files: list[str] | None, + exclude_patterns: list[str] | None, +) -> None: + """Run a local development server. + + This server is for development purposes only. It does not provide + the stability, security, or performance of production WSGI servers. + + The reloader and debugger are enabled by default with the '--debug' + option. + """ + try: + app: WSGIApplication = info.load_app() # pyright: ignore + except Exception as e: + if is_running_from_reloader(): + # When reloading, print out the error immediately, but raise + # it later so the debugger or server can handle it. + traceback.print_exc() + err = e + + def app( + environ: WSGIEnvironment, start_response: StartResponse + ) -> cabc.Iterable[bytes]: + raise err from None + + else: + # When not reloading, raise the error immediately so the + # command fails. + raise e from None + + debug = get_debug_flag() + + if reload is None: + reload = debug + + if debugger is None: + debugger = debug + + show_server_banner(debug, info.app_import_path) + + run_simple( + host, + port, + app, + use_reloader=reload, + use_debugger=debugger, + threaded=with_threads, + ssl_context=cert, + extra_files=extra_files, + exclude_patterns=exclude_patterns, + ) + + +run_command.params.insert(0, _debug_option) + + +@click.command("shell", short_help="Run a shell in the app context.") +@with_appcontext +def shell_command() -> None: + """Run an interactive Python shell in the context of a given + Flask application. The application will populate the default + namespace of this shell according to its configuration. + + This is useful for executing small snippets of management code + without having to manually configure the application. + """ + import code + + banner = ( + f"Python {sys.version} on {sys.platform}\n" + f"App: {current_app.import_name}\n" + f"Instance: {current_app.instance_path}" + ) + ctx: dict[str, t.Any] = {} + + # Support the regular Python interpreter startup script if someone + # is using it. + startup = os.environ.get("PYTHONSTARTUP") + if startup and os.path.isfile(startup): + with open(startup) as f: + eval(compile(f.read(), startup, "exec"), ctx) + + ctx.update(current_app.make_shell_context()) + + # Site, customize, or startup script can set a hook to call when + # entering interactive mode. The default one sets up readline with + # tab and history completion. + interactive_hook = getattr(sys, "__interactivehook__", None) + + if interactive_hook is not None: + try: + import readline + from rlcompleter import Completer + except ImportError: + pass + else: + # rlcompleter uses __main__.__dict__ by default, which is + # flask.__main__. Use the shell context instead. + readline.set_completer(Completer(ctx).complete) + + interactive_hook() + + code.interact(banner=banner, local=ctx) + + +@click.command("routes", short_help="Show the routes for the app.") +@click.option( + "--sort", + "-s", + type=click.Choice(("endpoint", "methods", "domain", "rule", "match")), + default="endpoint", + help=( + "Method to sort routes by. 'match' is the order that Flask will match routes" + " when dispatching a request." + ), +) +@click.option("--all-methods", is_flag=True, help="Show HEAD and OPTIONS methods.") +@with_appcontext +def routes_command(sort: str, all_methods: bool) -> None: + """Show all registered routes with endpoints and methods.""" + rules = list(current_app.url_map.iter_rules()) + + if not rules: + click.echo("No routes were registered.") + return + + ignored_methods = set() if all_methods else {"HEAD", "OPTIONS"} + host_matching = current_app.url_map.host_matching + has_domain = any(rule.host if host_matching else rule.subdomain for rule in rules) + rows = [] + + for rule in rules: + row = [ + rule.endpoint, + ", ".join(sorted((rule.methods or set()) - ignored_methods)), + ] + + if has_domain: + row.append((rule.host if host_matching else rule.subdomain) or "") + + row.append(rule.rule) + rows.append(row) + + headers = ["Endpoint", "Methods"] + sorts = ["endpoint", "methods"] + + if has_domain: + headers.append("Host" if host_matching else "Subdomain") + sorts.append("domain") + + headers.append("Rule") + sorts.append("rule") + + try: + rows.sort(key=itemgetter(sorts.index(sort))) + except ValueError: + pass + + rows.insert(0, headers) + widths = [max(len(row[i]) for row in rows) for i in range(len(headers))] + rows.insert(1, ["-" * w for w in widths]) + template = " ".join(f"{{{i}:<{w}}}" for i, w in enumerate(widths)) + + for row in rows: + click.echo(template.format(*row)) + + +cli = FlaskGroup( + name="flask", + help="""\ +A general utility script for Flask applications. + +An application to load must be given with the '--app' option, +'FLASK_APP' environment variable, or with a 'wsgi.py' or 'app.py' file +in the current directory. +""", +) + + +def main() -> None: + cli.main() + + +if __name__ == "__main__": + main() diff --git a/venv/lib/python3.9/site-packages/flask/config.py b/venv/lib/python3.9/site-packages/flask/config.py new file mode 100644 index 0000000..34ef1a5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/config.py @@ -0,0 +1,367 @@ +from __future__ import annotations + +import errno +import json +import os +import types +import typing as t + +from werkzeug.utils import import_string + +if t.TYPE_CHECKING: + import typing_extensions as te + + from .sansio.app import App + + +T = t.TypeVar("T") + + +class ConfigAttribute(t.Generic[T]): + """Makes an attribute forward to the config""" + + def __init__( + self, name: str, get_converter: t.Callable[[t.Any], T] | None = None + ) -> None: + self.__name__ = name + self.get_converter = get_converter + + @t.overload + def __get__(self, obj: None, owner: None) -> te.Self: ... + + @t.overload + def __get__(self, obj: App, owner: type[App]) -> T: ... + + def __get__(self, obj: App | None, owner: type[App] | None = None) -> T | te.Self: + if obj is None: + return self + + rv = obj.config[self.__name__] + + if self.get_converter is not None: + rv = self.get_converter(rv) + + return rv # type: ignore[no-any-return] + + def __set__(self, obj: App, value: t.Any) -> None: + obj.config[self.__name__] = value + + +class Config(dict): # type: ignore[type-arg] + """Works exactly like a dict but provides ways to fill it from files + or special dictionaries. There are two common patterns to populate the + config. + + Either you can fill the config from a config file:: + + app.config.from_pyfile('yourconfig.cfg') + + Or alternatively you can define the configuration options in the + module that calls :meth:`from_object` or provide an import path to + a module that should be loaded. It is also possible to tell it to + use the same module and with that provide the configuration values + just before the call:: + + DEBUG = True + SECRET_KEY = 'development key' + app.config.from_object(__name__) + + In both cases (loading from any Python file or loading from modules), + only uppercase keys are added to the config. This makes it possible to use + lowercase values in the config file for temporary values that are not added + to the config or to define the config keys in the same file that implements + the application. + + Probably the most interesting way to load configurations is from an + environment variable pointing to a file:: + + app.config.from_envvar('YOURAPPLICATION_SETTINGS') + + In this case before launching the application you have to set this + environment variable to the file you want to use. On Linux and OS X + use the export statement:: + + export YOURAPPLICATION_SETTINGS='/path/to/config/file' + + On windows use `set` instead. + + :param root_path: path to which files are read relative from. When the + config object is created by the application, this is + the application's :attr:`~flask.Flask.root_path`. + :param defaults: an optional dictionary of default values + """ + + def __init__( + self, + root_path: str | os.PathLike[str], + defaults: dict[str, t.Any] | None = None, + ) -> None: + super().__init__(defaults or {}) + self.root_path = root_path + + def from_envvar(self, variable_name: str, silent: bool = False) -> bool: + """Loads a configuration from an environment variable pointing to + a configuration file. This is basically just a shortcut with nicer + error messages for this line of code:: + + app.config.from_pyfile(os.environ['YOURAPPLICATION_SETTINGS']) + + :param variable_name: name of the environment variable + :param silent: set to ``True`` if you want silent failure for missing + files. + :return: ``True`` if the file was loaded successfully. + """ + rv = os.environ.get(variable_name) + if not rv: + if silent: + return False + raise RuntimeError( + f"The environment variable {variable_name!r} is not set" + " and as such configuration could not be loaded. Set" + " this variable and make it point to a configuration" + " file" + ) + return self.from_pyfile(rv, silent=silent) + + def from_prefixed_env( + self, prefix: str = "FLASK", *, loads: t.Callable[[str], t.Any] = json.loads + ) -> bool: + """Load any environment variables that start with ``FLASK_``, + dropping the prefix from the env key for the config key. Values + are passed through a loading function to attempt to convert them + to more specific types than strings. + + Keys are loaded in :func:`sorted` order. + + The default loading function attempts to parse values as any + valid JSON type, including dicts and lists. + + Specific items in nested dicts can be set by separating the + keys with double underscores (``__``). If an intermediate key + doesn't exist, it will be initialized to an empty dict. + + :param prefix: Load env vars that start with this prefix, + separated with an underscore (``_``). + :param loads: Pass each string value to this function and use + the returned value as the config value. If any error is + raised it is ignored and the value remains a string. The + default is :func:`json.loads`. + + .. versionadded:: 2.1 + """ + prefix = f"{prefix}_" + + for key in sorted(os.environ): + if not key.startswith(prefix): + continue + + value = os.environ[key] + key = key.removeprefix(prefix) + + try: + value = loads(value) + except Exception: + # Keep the value as a string if loading failed. + pass + + if "__" not in key: + # A non-nested key, set directly. + self[key] = value + continue + + # Traverse nested dictionaries with keys separated by "__". + current = self + *parts, tail = key.split("__") + + for part in parts: + # If an intermediate dict does not exist, create it. + if part not in current: + current[part] = {} + + current = current[part] + + current[tail] = value + + return True + + def from_pyfile( + self, filename: str | os.PathLike[str], silent: bool = False + ) -> bool: + """Updates the values in the config from a Python file. This function + behaves as if the file was imported as module with the + :meth:`from_object` function. + + :param filename: the filename of the config. This can either be an + absolute filename or a filename relative to the + root path. + :param silent: set to ``True`` if you want silent failure for missing + files. + :return: ``True`` if the file was loaded successfully. + + .. versionadded:: 0.7 + `silent` parameter. + """ + filename = os.path.join(self.root_path, filename) + d = types.ModuleType("config") + d.__file__ = filename + try: + with open(filename, mode="rb") as config_file: + exec(compile(config_file.read(), filename, "exec"), d.__dict__) + except OSError as e: + if silent and e.errno in (errno.ENOENT, errno.EISDIR, errno.ENOTDIR): + return False + e.strerror = f"Unable to load configuration file ({e.strerror})" + raise + self.from_object(d) + return True + + def from_object(self, obj: object | str) -> None: + """Updates the values from the given object. An object can be of one + of the following two types: + + - a string: in this case the object with that name will be imported + - an actual object reference: that object is used directly + + Objects are usually either modules or classes. :meth:`from_object` + loads only the uppercase attributes of the module/class. A ``dict`` + object will not work with :meth:`from_object` because the keys of a + ``dict`` are not attributes of the ``dict`` class. + + Example of module-based configuration:: + + app.config.from_object('yourapplication.default_config') + from yourapplication import default_config + app.config.from_object(default_config) + + Nothing is done to the object before loading. If the object is a + class and has ``@property`` attributes, it needs to be + instantiated before being passed to this method. + + You should not use this function to load the actual configuration but + rather configuration defaults. The actual config should be loaded + with :meth:`from_pyfile` and ideally from a location not within the + package because the package might be installed system wide. + + See :ref:`config-dev-prod` for an example of class-based configuration + using :meth:`from_object`. + + :param obj: an import name or object + """ + if isinstance(obj, str): + obj = import_string(obj) + for key in dir(obj): + if key.isupper(): + self[key] = getattr(obj, key) + + def from_file( + self, + filename: str | os.PathLike[str], + load: t.Callable[[t.IO[t.Any]], t.Mapping[str, t.Any]], + silent: bool = False, + text: bool = True, + ) -> bool: + """Update the values in the config from a file that is loaded + using the ``load`` parameter. The loaded data is passed to the + :meth:`from_mapping` method. + + .. code-block:: python + + import json + app.config.from_file("config.json", load=json.load) + + import tomllib + app.config.from_file("config.toml", load=tomllib.load, text=False) + + :param filename: The path to the data file. This can be an + absolute path or relative to the config root path. + :param load: A callable that takes a file handle and returns a + mapping of loaded data from the file. + :type load: ``Callable[[Reader], Mapping]`` where ``Reader`` + implements a ``read`` method. + :param silent: Ignore the file if it doesn't exist. + :param text: Open the file in text or binary mode. + :return: ``True`` if the file was loaded successfully. + + .. versionchanged:: 2.3 + The ``text`` parameter was added. + + .. versionadded:: 2.0 + """ + filename = os.path.join(self.root_path, filename) + + try: + with open(filename, "r" if text else "rb") as f: + obj = load(f) + except OSError as e: + if silent and e.errno in (errno.ENOENT, errno.EISDIR): + return False + + e.strerror = f"Unable to load configuration file ({e.strerror})" + raise + + return self.from_mapping(obj) + + def from_mapping( + self, mapping: t.Mapping[str, t.Any] | None = None, **kwargs: t.Any + ) -> bool: + """Updates the config like :meth:`update` ignoring items with + non-upper keys. + + :return: Always returns ``True``. + + .. versionadded:: 0.11 + """ + mappings: dict[str, t.Any] = {} + if mapping is not None: + mappings.update(mapping) + mappings.update(kwargs) + for key, value in mappings.items(): + if key.isupper(): + self[key] = value + return True + + def get_namespace( + self, namespace: str, lowercase: bool = True, trim_namespace: bool = True + ) -> dict[str, t.Any]: + """Returns a dictionary containing a subset of configuration options + that match the specified namespace/prefix. Example usage:: + + app.config['IMAGE_STORE_TYPE'] = 'fs' + app.config['IMAGE_STORE_PATH'] = '/var/app/images' + app.config['IMAGE_STORE_BASE_URL'] = 'http://img.website.com' + image_store_config = app.config.get_namespace('IMAGE_STORE_') + + The resulting dictionary `image_store_config` would look like:: + + { + 'type': 'fs', + 'path': '/var/app/images', + 'base_url': 'http://img.website.com' + } + + This is often useful when configuration options map directly to + keyword arguments in functions or class constructors. + + :param namespace: a configuration namespace + :param lowercase: a flag indicating if the keys of the resulting + dictionary should be lowercase + :param trim_namespace: a flag indicating if the keys of the resulting + dictionary should not include the namespace + + .. versionadded:: 0.11 + """ + rv = {} + for k, v in self.items(): + if not k.startswith(namespace): + continue + if trim_namespace: + key = k[len(namespace) :] + else: + key = k + if lowercase: + key = key.lower() + rv[key] = v + return rv + + def __repr__(self) -> str: + return f"<{type(self).__name__} {dict.__repr__(self)}>" diff --git a/venv/lib/python3.9/site-packages/flask/ctx.py b/venv/lib/python3.9/site-packages/flask/ctx.py new file mode 100644 index 0000000..5f7b1f1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/ctx.py @@ -0,0 +1,459 @@ +from __future__ import annotations + +import contextvars +import sys +import typing as t +from functools import update_wrapper +from types import TracebackType + +from werkzeug.exceptions import HTTPException + +from . import typing as ft +from .globals import _cv_app +from .globals import _cv_request +from .signals import appcontext_popped +from .signals import appcontext_pushed + +if t.TYPE_CHECKING: # pragma: no cover + from _typeshed.wsgi import WSGIEnvironment + + from .app import Flask + from .sessions import SessionMixin + from .wrappers import Request + + +# a singleton sentinel value for parameter defaults +_sentinel = object() + + +class _AppCtxGlobals: + """A plain object. Used as a namespace for storing data during an + application context. + + Creating an app context automatically creates this object, which is + made available as the :data:`g` proxy. + + .. describe:: 'key' in g + + Check whether an attribute is present. + + .. versionadded:: 0.10 + + .. describe:: iter(g) + + Return an iterator over the attribute names. + + .. versionadded:: 0.10 + """ + + # Define attr methods to let mypy know this is a namespace object + # that has arbitrary attributes. + + def __getattr__(self, name: str) -> t.Any: + try: + return self.__dict__[name] + except KeyError: + raise AttributeError(name) from None + + def __setattr__(self, name: str, value: t.Any) -> None: + self.__dict__[name] = value + + def __delattr__(self, name: str) -> None: + try: + del self.__dict__[name] + except KeyError: + raise AttributeError(name) from None + + def get(self, name: str, default: t.Any | None = None) -> t.Any: + """Get an attribute by name, or a default value. Like + :meth:`dict.get`. + + :param name: Name of attribute to get. + :param default: Value to return if the attribute is not present. + + .. versionadded:: 0.10 + """ + return self.__dict__.get(name, default) + + def pop(self, name: str, default: t.Any = _sentinel) -> t.Any: + """Get and remove an attribute by name. Like :meth:`dict.pop`. + + :param name: Name of attribute to pop. + :param default: Value to return if the attribute is not present, + instead of raising a ``KeyError``. + + .. versionadded:: 0.11 + """ + if default is _sentinel: + return self.__dict__.pop(name) + else: + return self.__dict__.pop(name, default) + + def setdefault(self, name: str, default: t.Any = None) -> t.Any: + """Get the value of an attribute if it is present, otherwise + set and return a default value. Like :meth:`dict.setdefault`. + + :param name: Name of attribute to get. + :param default: Value to set and return if the attribute is not + present. + + .. versionadded:: 0.11 + """ + return self.__dict__.setdefault(name, default) + + def __contains__(self, item: str) -> bool: + return item in self.__dict__ + + def __iter__(self) -> t.Iterator[str]: + return iter(self.__dict__) + + def __repr__(self) -> str: + ctx = _cv_app.get(None) + if ctx is not None: + return f"" + return object.__repr__(self) + + +def after_this_request( + f: ft.AfterRequestCallable[t.Any], +) -> ft.AfterRequestCallable[t.Any]: + """Executes a function after this request. This is useful to modify + response objects. The function is passed the response object and has + to return the same or a new one. + + Example:: + + @app.route('/') + def index(): + @after_this_request + def add_header(response): + response.headers['X-Foo'] = 'Parachute' + return response + return 'Hello World!' + + This is more useful if a function other than the view function wants to + modify a response. For instance think of a decorator that wants to add + some headers without converting the return value into a response object. + + .. versionadded:: 0.9 + """ + ctx = _cv_request.get(None) + + if ctx is None: + raise RuntimeError( + "'after_this_request' can only be used when a request" + " context is active, such as in a view function." + ) + + ctx._after_request_functions.append(f) + return f + + +F = t.TypeVar("F", bound=t.Callable[..., t.Any]) + + +def copy_current_request_context(f: F) -> F: + """A helper function that decorates a function to retain the current + request context. This is useful when working with greenlets. The moment + the function is decorated a copy of the request context is created and + then pushed when the function is called. The current session is also + included in the copied request context. + + Example:: + + import gevent + from flask import copy_current_request_context + + @app.route('/') + def index(): + @copy_current_request_context + def do_some_work(): + # do some work here, it can access flask.request or + # flask.session like you would otherwise in the view function. + ... + gevent.spawn(do_some_work) + return 'Regular response' + + .. versionadded:: 0.10 + """ + ctx = _cv_request.get(None) + + if ctx is None: + raise RuntimeError( + "'copy_current_request_context' can only be used when a" + " request context is active, such as in a view function." + ) + + ctx = ctx.copy() + + def wrapper(*args: t.Any, **kwargs: t.Any) -> t.Any: + with ctx: + return ctx.app.ensure_sync(f)(*args, **kwargs) + + return update_wrapper(wrapper, f) # type: ignore[return-value] + + +def has_request_context() -> bool: + """If you have code that wants to test if a request context is there or + not this function can be used. For instance, you may want to take advantage + of request information if the request object is available, but fail + silently if it is unavailable. + + :: + + class User(db.Model): + + def __init__(self, username, remote_addr=None): + self.username = username + if remote_addr is None and has_request_context(): + remote_addr = request.remote_addr + self.remote_addr = remote_addr + + Alternatively you can also just test any of the context bound objects + (such as :class:`request` or :class:`g`) for truthness:: + + class User(db.Model): + + def __init__(self, username, remote_addr=None): + self.username = username + if remote_addr is None and request: + remote_addr = request.remote_addr + self.remote_addr = remote_addr + + .. versionadded:: 0.7 + """ + return _cv_request.get(None) is not None + + +def has_app_context() -> bool: + """Works like :func:`has_request_context` but for the application + context. You can also just do a boolean check on the + :data:`current_app` object instead. + + .. versionadded:: 0.9 + """ + return _cv_app.get(None) is not None + + +class AppContext: + """The app context contains application-specific information. An app + context is created and pushed at the beginning of each request if + one is not already active. An app context is also pushed when + running CLI commands. + """ + + def __init__(self, app: Flask) -> None: + self.app = app + self.url_adapter = app.create_url_adapter(None) + self.g: _AppCtxGlobals = app.app_ctx_globals_class() + self._cv_tokens: list[contextvars.Token[AppContext]] = [] + + def push(self) -> None: + """Binds the app context to the current context.""" + self._cv_tokens.append(_cv_app.set(self)) + appcontext_pushed.send(self.app, _async_wrapper=self.app.ensure_sync) + + def pop(self, exc: BaseException | None = _sentinel) -> None: # type: ignore + """Pops the app context.""" + try: + if len(self._cv_tokens) == 1: + if exc is _sentinel: + exc = sys.exc_info()[1] + self.app.do_teardown_appcontext(exc) + finally: + ctx = _cv_app.get() + _cv_app.reset(self._cv_tokens.pop()) + + if ctx is not self: + raise AssertionError( + f"Popped wrong app context. ({ctx!r} instead of {self!r})" + ) + + appcontext_popped.send(self.app, _async_wrapper=self.app.ensure_sync) + + def __enter__(self) -> AppContext: + self.push() + return self + + def __exit__( + self, + exc_type: type | None, + exc_value: BaseException | None, + tb: TracebackType | None, + ) -> None: + self.pop(exc_value) + + +class RequestContext: + """The request context contains per-request information. The Flask + app creates and pushes it at the beginning of the request, then pops + it at the end of the request. It will create the URL adapter and + request object for the WSGI environment provided. + + Do not attempt to use this class directly, instead use + :meth:`~flask.Flask.test_request_context` and + :meth:`~flask.Flask.request_context` to create this object. + + When the request context is popped, it will evaluate all the + functions registered on the application for teardown execution + (:meth:`~flask.Flask.teardown_request`). + + The request context is automatically popped at the end of the + request. When using the interactive debugger, the context will be + restored so ``request`` is still accessible. Similarly, the test + client can preserve the context after the request ends. However, + teardown functions may already have closed some resources such as + database connections. + """ + + def __init__( + self, + app: Flask, + environ: WSGIEnvironment, + request: Request | None = None, + session: SessionMixin | None = None, + ) -> None: + self.app = app + if request is None: + request = app.request_class(environ) + request.json_module = app.json + self.request: Request = request + self.url_adapter = None + try: + self.url_adapter = app.create_url_adapter(self.request) + except HTTPException as e: + self.request.routing_exception = e + self.flashes: list[tuple[str, str]] | None = None + self._session: SessionMixin | None = session + # Functions that should be executed after the request on the response + # object. These will be called before the regular "after_request" + # functions. + self._after_request_functions: list[ft.AfterRequestCallable[t.Any]] = [] + + self._cv_tokens: list[ + tuple[contextvars.Token[RequestContext], AppContext | None] + ] = [] + + def copy(self) -> RequestContext: + """Creates a copy of this request context with the same request object. + This can be used to move a request context to a different greenlet. + Because the actual request object is the same this cannot be used to + move a request context to a different thread unless access to the + request object is locked. + + .. versionadded:: 0.10 + + .. versionchanged:: 1.1 + The current session object is used instead of reloading the original + data. This prevents `flask.session` pointing to an out-of-date object. + """ + return self.__class__( + self.app, + environ=self.request.environ, + request=self.request, + session=self._session, + ) + + def match_request(self) -> None: + """Can be overridden by a subclass to hook into the matching + of the request. + """ + try: + result = self.url_adapter.match(return_rule=True) # type: ignore + self.request.url_rule, self.request.view_args = result # type: ignore + except HTTPException as e: + self.request.routing_exception = e + + @property + def session(self) -> SessionMixin: + """The session data associated with this request. Not available until + this context has been pushed. Accessing this property, also accessed by + the :data:`~flask.session` proxy, sets :attr:`.SessionMixin.accessed`. + """ + assert self._session is not None, "The session has not yet been opened." + self._session.accessed = True + return self._session + + def push(self) -> None: + # Before we push the request context we have to ensure that there + # is an application context. + app_ctx = _cv_app.get(None) + + if app_ctx is None or app_ctx.app is not self.app: + app_ctx = self.app.app_context() + app_ctx.push() + else: + app_ctx = None + + self._cv_tokens.append((_cv_request.set(self), app_ctx)) + + # Open the session at the moment that the request context is available. + # This allows a custom open_session method to use the request context. + # Only open a new session if this is the first time the request was + # pushed, otherwise stream_with_context loses the session. + if self._session is None: + session_interface = self.app.session_interface + self._session = session_interface.open_session(self.app, self.request) + + if self._session is None: + self._session = session_interface.make_null_session(self.app) + + # Match the request URL after loading the session, so that the + # session is available in custom URL converters. + if self.url_adapter is not None: + self.match_request() + + def pop(self, exc: BaseException | None = _sentinel) -> None: # type: ignore + """Pops the request context and unbinds it by doing that. This will + also trigger the execution of functions registered by the + :meth:`~flask.Flask.teardown_request` decorator. + + .. versionchanged:: 0.9 + Added the `exc` argument. + """ + clear_request = len(self._cv_tokens) == 1 + + try: + if clear_request: + if exc is _sentinel: + exc = sys.exc_info()[1] + self.app.do_teardown_request(exc) + + request_close = getattr(self.request, "close", None) + if request_close is not None: + request_close() + finally: + ctx = _cv_request.get() + token, app_ctx = self._cv_tokens.pop() + _cv_request.reset(token) + + # get rid of circular dependencies at the end of the request + # so that we don't require the GC to be active. + if clear_request: + ctx.request.environ["werkzeug.request"] = None + + if app_ctx is not None: + app_ctx.pop(exc) + + if ctx is not self: + raise AssertionError( + f"Popped wrong request context. ({ctx!r} instead of {self!r})" + ) + + def __enter__(self) -> RequestContext: + self.push() + return self + + def __exit__( + self, + exc_type: type | None, + exc_value: BaseException | None, + tb: TracebackType | None, + ) -> None: + self.pop(exc_value) + + def __repr__(self) -> str: + return ( + f"<{type(self).__name__} {self.request.url!r}" + f" [{self.request.method}] of {self.app.name}>" + ) diff --git a/venv/lib/python3.9/site-packages/flask/debughelpers.py b/venv/lib/python3.9/site-packages/flask/debughelpers.py new file mode 100644 index 0000000..2c8c4c4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/debughelpers.py @@ -0,0 +1,178 @@ +from __future__ import annotations + +import typing as t + +from jinja2.loaders import BaseLoader +from werkzeug.routing import RequestRedirect + +from .blueprints import Blueprint +from .globals import request_ctx +from .sansio.app import App + +if t.TYPE_CHECKING: + from .sansio.scaffold import Scaffold + from .wrappers import Request + + +class UnexpectedUnicodeError(AssertionError, UnicodeError): + """Raised in places where we want some better error reporting for + unexpected unicode or binary data. + """ + + +class DebugFilesKeyError(KeyError, AssertionError): + """Raised from request.files during debugging. The idea is that it can + provide a better error message than just a generic KeyError/BadRequest. + """ + + def __init__(self, request: Request, key: str) -> None: + form_matches = request.form.getlist(key) + buf = [ + f"You tried to access the file {key!r} in the request.files" + " dictionary but it does not exist. The mimetype for the" + f" request is {request.mimetype!r} instead of" + " 'multipart/form-data' which means that no file contents" + " were transmitted. To fix this error you should provide" + ' enctype="multipart/form-data" in your form.' + ] + if form_matches: + names = ", ".join(repr(x) for x in form_matches) + buf.append( + "\n\nThe browser instead transmitted some file names. " + f"This was submitted: {names}" + ) + self.msg = "".join(buf) + + def __str__(self) -> str: + return self.msg + + +class FormDataRoutingRedirect(AssertionError): + """This exception is raised in debug mode if a routing redirect + would cause the browser to drop the method or body. This happens + when method is not GET, HEAD or OPTIONS and the status code is not + 307 or 308. + """ + + def __init__(self, request: Request) -> None: + exc = request.routing_exception + assert isinstance(exc, RequestRedirect) + buf = [ + f"A request was sent to '{request.url}', but routing issued" + f" a redirect to the canonical URL '{exc.new_url}'." + ] + + if f"{request.base_url}/" == exc.new_url.partition("?")[0]: + buf.append( + " The URL was defined with a trailing slash. Flask" + " will redirect to the URL with a trailing slash if it" + " was accessed without one." + ) + + buf.append( + " Send requests to the canonical URL, or use 307 or 308 for" + " routing redirects. Otherwise, browsers will drop form" + " data.\n\n" + "This exception is only raised in debug mode." + ) + super().__init__("".join(buf)) + + +def attach_enctype_error_multidict(request: Request) -> None: + """Patch ``request.files.__getitem__`` to raise a descriptive error + about ``enctype=multipart/form-data``. + + :param request: The request to patch. + :meta private: + """ + oldcls = request.files.__class__ + + class newcls(oldcls): # type: ignore[valid-type, misc] + def __getitem__(self, key: str) -> t.Any: + try: + return super().__getitem__(key) + except KeyError as e: + if key not in request.form: + raise + + raise DebugFilesKeyError(request, key).with_traceback( + e.__traceback__ + ) from None + + newcls.__name__ = oldcls.__name__ + newcls.__module__ = oldcls.__module__ + request.files.__class__ = newcls + + +def _dump_loader_info(loader: BaseLoader) -> t.Iterator[str]: + yield f"class: {type(loader).__module__}.{type(loader).__name__}" + for key, value in sorted(loader.__dict__.items()): + if key.startswith("_"): + continue + if isinstance(value, (tuple, list)): + if not all(isinstance(x, str) for x in value): + continue + yield f"{key}:" + for item in value: + yield f" - {item}" + continue + elif not isinstance(value, (str, int, float, bool)): + continue + yield f"{key}: {value!r}" + + +def explain_template_loading_attempts( + app: App, + template: str, + attempts: list[ + tuple[ + BaseLoader, + Scaffold, + tuple[str, str | None, t.Callable[[], bool] | None] | None, + ] + ], +) -> None: + """This should help developers understand what failed""" + info = [f"Locating template {template!r}:"] + total_found = 0 + blueprint = None + if request_ctx and request_ctx.request.blueprint is not None: + blueprint = request_ctx.request.blueprint + + for idx, (loader, srcobj, triple) in enumerate(attempts): + if isinstance(srcobj, App): + src_info = f"application {srcobj.import_name!r}" + elif isinstance(srcobj, Blueprint): + src_info = f"blueprint {srcobj.name!r} ({srcobj.import_name})" + else: + src_info = repr(srcobj) + + info.append(f"{idx + 1:5}: trying loader of {src_info}") + + for line in _dump_loader_info(loader): + info.append(f" {line}") + + if triple is None: + detail = "no match" + else: + detail = f"found ({triple[1] or ''!r})" + total_found += 1 + info.append(f" -> {detail}") + + seems_fishy = False + if total_found == 0: + info.append("Error: the template could not be found.") + seems_fishy = True + elif total_found > 1: + info.append("Warning: multiple loaders returned a match for the template.") + seems_fishy = True + + if blueprint is not None and seems_fishy: + info.append( + " The template was looked up from an endpoint that belongs" + f" to the blueprint {blueprint!r}." + ) + info.append(" Maybe you did not place a template in the right folder?") + info.append(" See https://flask.palletsprojects.com/blueprints/#templates") + + app.logger.info("\n".join(info)) diff --git a/venv/lib/python3.9/site-packages/flask/globals.py b/venv/lib/python3.9/site-packages/flask/globals.py new file mode 100644 index 0000000..e2c410c --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/globals.py @@ -0,0 +1,51 @@ +from __future__ import annotations + +import typing as t +from contextvars import ContextVar + +from werkzeug.local import LocalProxy + +if t.TYPE_CHECKING: # pragma: no cover + from .app import Flask + from .ctx import _AppCtxGlobals + from .ctx import AppContext + from .ctx import RequestContext + from .sessions import SessionMixin + from .wrappers import Request + + +_no_app_msg = """\ +Working outside of application context. + +This typically means that you attempted to use functionality that needed +the current application. To solve this, set up an application context +with app.app_context(). See the documentation for more information.\ +""" +_cv_app: ContextVar[AppContext] = ContextVar("flask.app_ctx") +app_ctx: AppContext = LocalProxy( # type: ignore[assignment] + _cv_app, unbound_message=_no_app_msg +) +current_app: Flask = LocalProxy( # type: ignore[assignment] + _cv_app, "app", unbound_message=_no_app_msg +) +g: _AppCtxGlobals = LocalProxy( # type: ignore[assignment] + _cv_app, "g", unbound_message=_no_app_msg +) + +_no_req_msg = """\ +Working outside of request context. + +This typically means that you attempted to use functionality that needed +an active HTTP request. Consult the documentation on testing for +information about how to avoid this problem.\ +""" +_cv_request: ContextVar[RequestContext] = ContextVar("flask.request_ctx") +request_ctx: RequestContext = LocalProxy( # type: ignore[assignment] + _cv_request, unbound_message=_no_req_msg +) +request: Request = LocalProxy( # type: ignore[assignment] + _cv_request, "request", unbound_message=_no_req_msg +) +session: SessionMixin = LocalProxy( # type: ignore[assignment] + _cv_request, "session", unbound_message=_no_req_msg +) diff --git a/venv/lib/python3.9/site-packages/flask/helpers.py b/venv/lib/python3.9/site-packages/flask/helpers.py new file mode 100644 index 0000000..5d412c9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/helpers.py @@ -0,0 +1,641 @@ +from __future__ import annotations + +import importlib.util +import os +import sys +import typing as t +from datetime import datetime +from functools import cache +from functools import update_wrapper + +import werkzeug.utils +from werkzeug.exceptions import abort as _wz_abort +from werkzeug.utils import redirect as _wz_redirect +from werkzeug.wrappers import Response as BaseResponse + +from .globals import _cv_app +from .globals import _cv_request +from .globals import current_app +from .globals import request +from .globals import request_ctx +from .globals import session +from .signals import message_flashed + +if t.TYPE_CHECKING: # pragma: no cover + from .wrappers import Response + + +def get_debug_flag() -> bool: + """Get whether debug mode should be enabled for the app, indicated by the + :envvar:`FLASK_DEBUG` environment variable. The default is ``False``. + """ + val = os.environ.get("FLASK_DEBUG") + return bool(val and val.lower() not in {"0", "false", "no"}) + + +def get_load_dotenv(default: bool = True) -> bool: + """Get whether the user has disabled loading default dotenv files by + setting :envvar:`FLASK_SKIP_DOTENV`. The default is ``True``, load + the files. + + :param default: What to return if the env var isn't set. + """ + val = os.environ.get("FLASK_SKIP_DOTENV") + + if not val: + return default + + return val.lower() in ("0", "false", "no") + + +@t.overload +def stream_with_context( + generator_or_function: t.Iterator[t.AnyStr], +) -> t.Iterator[t.AnyStr]: ... + + +@t.overload +def stream_with_context( + generator_or_function: t.Callable[..., t.Iterator[t.AnyStr]], +) -> t.Callable[[t.Iterator[t.AnyStr]], t.Iterator[t.AnyStr]]: ... + + +def stream_with_context( + generator_or_function: t.Iterator[t.AnyStr] | t.Callable[..., t.Iterator[t.AnyStr]], +) -> t.Iterator[t.AnyStr] | t.Callable[[t.Iterator[t.AnyStr]], t.Iterator[t.AnyStr]]: + """Wrap a response generator function so that it runs inside the current + request context. This keeps :data:`request`, :data:`session`, and :data:`g` + available, even though at the point the generator runs the request context + will typically have ended. + + Use it as a decorator on a generator function: + + .. code-block:: python + + from flask import stream_with_context, request, Response + + @app.get("/stream") + def streamed_response(): + @stream_with_context + def generate(): + yield "Hello " + yield request.args["name"] + yield "!" + + return Response(generate()) + + Or use it as a wrapper around a created generator: + + .. code-block:: python + + from flask import stream_with_context, request, Response + + @app.get("/stream") + def streamed_response(): + def generate(): + yield "Hello " + yield request.args["name"] + yield "!" + + return Response(stream_with_context(generate())) + + .. versionadded:: 0.9 + """ + try: + gen = iter(generator_or_function) # type: ignore[arg-type] + except TypeError: + + def decorator(*args: t.Any, **kwargs: t.Any) -> t.Any: + gen = generator_or_function(*args, **kwargs) # type: ignore[operator] + return stream_with_context(gen) + + return update_wrapper(decorator, generator_or_function) # type: ignore[arg-type] + + def generator() -> t.Iterator[t.AnyStr]: + if (req_ctx := _cv_request.get(None)) is None: + raise RuntimeError( + "'stream_with_context' can only be used when a request" + " context is active, such as in a view function." + ) + + app_ctx = _cv_app.get() + # Setup code below will run the generator to this point, so that the + # current contexts are recorded. The contexts must be pushed after, + # otherwise their ContextVar will record the wrong event loop during + # async view functions. + yield None # type: ignore[misc] + + # Push the app context first, so that the request context does not + # automatically create and push a different app context. + with app_ctx, req_ctx: + try: + yield from gen + finally: + # Clean up in case the user wrapped a WSGI iterator. + if hasattr(gen, "close"): + gen.close() + + # Execute the generator to the sentinel value. This ensures the context is + # preserved in the generator's state. Further iteration will push the + # context and yield from the original iterator. + wrapped_g = generator() + next(wrapped_g) + return wrapped_g + + +def make_response(*args: t.Any) -> Response: + """Sometimes it is necessary to set additional headers in a view. Because + views do not have to return response objects but can return a value that + is converted into a response object by Flask itself, it becomes tricky to + add headers to it. This function can be called instead of using a return + and you will get a response object which you can use to attach headers. + + If view looked like this and you want to add a new header:: + + def index(): + return render_template('index.html', foo=42) + + You can now do something like this:: + + def index(): + response = make_response(render_template('index.html', foo=42)) + response.headers['X-Parachutes'] = 'parachutes are cool' + return response + + This function accepts the very same arguments you can return from a + view function. This for example creates a response with a 404 error + code:: + + response = make_response(render_template('not_found.html'), 404) + + The other use case of this function is to force the return value of a + view function into a response which is helpful with view + decorators:: + + response = make_response(view_function()) + response.headers['X-Parachutes'] = 'parachutes are cool' + + Internally this function does the following things: + + - if no arguments are passed, it creates a new response argument + - if one argument is passed, :meth:`flask.Flask.make_response` + is invoked with it. + - if more than one argument is passed, the arguments are passed + to the :meth:`flask.Flask.make_response` function as tuple. + + .. versionadded:: 0.6 + """ + if not args: + return current_app.response_class() + if len(args) == 1: + args = args[0] + return current_app.make_response(args) + + +def url_for( + endpoint: str, + *, + _anchor: str | None = None, + _method: str | None = None, + _scheme: str | None = None, + _external: bool | None = None, + **values: t.Any, +) -> str: + """Generate a URL to the given endpoint with the given values. + + This requires an active request or application context, and calls + :meth:`current_app.url_for() `. See that method + for full documentation. + + :param endpoint: The endpoint name associated with the URL to + generate. If this starts with a ``.``, the current blueprint + name (if any) will be used. + :param _anchor: If given, append this as ``#anchor`` to the URL. + :param _method: If given, generate the URL associated with this + method for the endpoint. + :param _scheme: If given, the URL will have this scheme if it is + external. + :param _external: If given, prefer the URL to be internal (False) or + require it to be external (True). External URLs include the + scheme and domain. When not in an active request, URLs are + external by default. + :param values: Values to use for the variable parts of the URL rule. + Unknown keys are appended as query string arguments, like + ``?a=b&c=d``. + + .. versionchanged:: 2.2 + Calls ``current_app.url_for``, allowing an app to override the + behavior. + + .. versionchanged:: 0.10 + The ``_scheme`` parameter was added. + + .. versionchanged:: 0.9 + The ``_anchor`` and ``_method`` parameters were added. + + .. versionchanged:: 0.9 + Calls ``app.handle_url_build_error`` on build errors. + """ + return current_app.url_for( + endpoint, + _anchor=_anchor, + _method=_method, + _scheme=_scheme, + _external=_external, + **values, + ) + + +def redirect( + location: str, code: int = 302, Response: type[BaseResponse] | None = None +) -> BaseResponse: + """Create a redirect response object. + + If :data:`~flask.current_app` is available, it will use its + :meth:`~flask.Flask.redirect` method, otherwise it will use + :func:`werkzeug.utils.redirect`. + + :param location: The URL to redirect to. + :param code: The status code for the redirect. + :param Response: The response class to use. Not used when + ``current_app`` is active, which uses ``app.response_class``. + + .. versionadded:: 2.2 + Calls ``current_app.redirect`` if available instead of always + using Werkzeug's default ``redirect``. + """ + if current_app: + return current_app.redirect(location, code=code) + + return _wz_redirect(location, code=code, Response=Response) + + +def abort(code: int | BaseResponse, *args: t.Any, **kwargs: t.Any) -> t.NoReturn: + """Raise an :exc:`~werkzeug.exceptions.HTTPException` for the given + status code. + + If :data:`~flask.current_app` is available, it will call its + :attr:`~flask.Flask.aborter` object, otherwise it will use + :func:`werkzeug.exceptions.abort`. + + :param code: The status code for the exception, which must be + registered in ``app.aborter``. + :param args: Passed to the exception. + :param kwargs: Passed to the exception. + + .. versionadded:: 2.2 + Calls ``current_app.aborter`` if available instead of always + using Werkzeug's default ``abort``. + """ + if current_app: + current_app.aborter(code, *args, **kwargs) + + _wz_abort(code, *args, **kwargs) + + +def get_template_attribute(template_name: str, attribute: str) -> t.Any: + """Loads a macro (or variable) a template exports. This can be used to + invoke a macro from within Python code. If you for example have a + template named :file:`_cider.html` with the following contents: + + .. sourcecode:: html+jinja + + {% macro hello(name) %}Hello {{ name }}!{% endmacro %} + + You can access this from Python code like this:: + + hello = get_template_attribute('_cider.html', 'hello') + return hello('World') + + .. versionadded:: 0.2 + + :param template_name: the name of the template + :param attribute: the name of the variable of macro to access + """ + return getattr(current_app.jinja_env.get_template(template_name).module, attribute) + + +def flash(message: str, category: str = "message") -> None: + """Flashes a message to the next request. In order to remove the + flashed message from the session and to display it to the user, + the template has to call :func:`get_flashed_messages`. + + .. versionchanged:: 0.3 + `category` parameter added. + + :param message: the message to be flashed. + :param category: the category for the message. The following values + are recommended: ``'message'`` for any kind of message, + ``'error'`` for errors, ``'info'`` for information + messages and ``'warning'`` for warnings. However any + kind of string can be used as category. + """ + # Original implementation: + # + # session.setdefault('_flashes', []).append((category, message)) + # + # This assumed that changes made to mutable structures in the session are + # always in sync with the session object, which is not true for session + # implementations that use external storage for keeping their keys/values. + flashes = session.get("_flashes", []) + flashes.append((category, message)) + session["_flashes"] = flashes + app = current_app._get_current_object() # type: ignore + message_flashed.send( + app, + _async_wrapper=app.ensure_sync, + message=message, + category=category, + ) + + +def get_flashed_messages( + with_categories: bool = False, category_filter: t.Iterable[str] = () +) -> list[str] | list[tuple[str, str]]: + """Pulls all flashed messages from the session and returns them. + Further calls in the same request to the function will return + the same messages. By default just the messages are returned, + but when `with_categories` is set to ``True``, the return value will + be a list of tuples in the form ``(category, message)`` instead. + + Filter the flashed messages to one or more categories by providing those + categories in `category_filter`. This allows rendering categories in + separate html blocks. The `with_categories` and `category_filter` + arguments are distinct: + + * `with_categories` controls whether categories are returned with message + text (``True`` gives a tuple, where ``False`` gives just the message text). + * `category_filter` filters the messages down to only those matching the + provided categories. + + See :doc:`/patterns/flashing` for examples. + + .. versionchanged:: 0.3 + `with_categories` parameter added. + + .. versionchanged:: 0.9 + `category_filter` parameter added. + + :param with_categories: set to ``True`` to also receive categories. + :param category_filter: filter of categories to limit return values. Only + categories in the list will be returned. + """ + flashes = request_ctx.flashes + if flashes is None: + flashes = session.pop("_flashes") if "_flashes" in session else [] + request_ctx.flashes = flashes + if category_filter: + flashes = list(filter(lambda f: f[0] in category_filter, flashes)) + if not with_categories: + return [x[1] for x in flashes] + return flashes + + +def _prepare_send_file_kwargs(**kwargs: t.Any) -> dict[str, t.Any]: + if kwargs.get("max_age") is None: + kwargs["max_age"] = current_app.get_send_file_max_age + + kwargs.update( + environ=request.environ, + use_x_sendfile=current_app.config["USE_X_SENDFILE"], + response_class=current_app.response_class, + _root_path=current_app.root_path, + ) + return kwargs + + +def send_file( + path_or_file: os.PathLike[t.AnyStr] | str | t.IO[bytes], + mimetype: str | None = None, + as_attachment: bool = False, + download_name: str | None = None, + conditional: bool = True, + etag: bool | str = True, + last_modified: datetime | int | float | None = None, + max_age: None | (int | t.Callable[[str | None], int | None]) = None, +) -> Response: + """Send the contents of a file to the client. + + The first argument can be a file path or a file-like object. Paths + are preferred in most cases because Werkzeug can manage the file and + get extra information from the path. Passing a file-like object + requires that the file is opened in binary mode, and is mostly + useful when building a file in memory with :class:`io.BytesIO`. + + Never pass file paths provided by a user. The path is assumed to be + trusted, so a user could craft a path to access a file you didn't + intend. Use :func:`send_from_directory` to safely serve + user-requested paths from within a directory. + + If the WSGI server sets a ``file_wrapper`` in ``environ``, it is + used, otherwise Werkzeug's built-in wrapper is used. Alternatively, + if the HTTP server supports ``X-Sendfile``, configuring Flask with + ``USE_X_SENDFILE = True`` will tell the server to send the given + path, which is much more efficient than reading it in Python. + + :param path_or_file: The path to the file to send, relative to the + current working directory if a relative path is given. + Alternatively, a file-like object opened in binary mode. Make + sure the file pointer is seeked to the start of the data. + :param mimetype: The MIME type to send for the file. If not + provided, it will try to detect it from the file name. + :param as_attachment: Indicate to a browser that it should offer to + save the file instead of displaying it. + :param download_name: The default name browsers will use when saving + the file. Defaults to the passed file name. + :param conditional: Enable conditional and range responses based on + request headers. Requires passing a file path and ``environ``. + :param etag: Calculate an ETag for the file, which requires passing + a file path. Can also be a string to use instead. + :param last_modified: The last modified time to send for the file, + in seconds. If not provided, it will try to detect it from the + file path. + :param max_age: How long the client should cache the file, in + seconds. If set, ``Cache-Control`` will be ``public``, otherwise + it will be ``no-cache`` to prefer conditional caching. + + .. versionchanged:: 2.0 + ``download_name`` replaces the ``attachment_filename`` + parameter. If ``as_attachment=False``, it is passed with + ``Content-Disposition: inline`` instead. + + .. versionchanged:: 2.0 + ``max_age`` replaces the ``cache_timeout`` parameter. + ``conditional`` is enabled and ``max_age`` is not set by + default. + + .. versionchanged:: 2.0 + ``etag`` replaces the ``add_etags`` parameter. It can be a + string to use instead of generating one. + + .. versionchanged:: 2.0 + Passing a file-like object that inherits from + :class:`~io.TextIOBase` will raise a :exc:`ValueError` rather + than sending an empty file. + + .. versionadded:: 2.0 + Moved the implementation to Werkzeug. This is now a wrapper to + pass some Flask-specific arguments. + + .. versionchanged:: 1.1 + ``filename`` may be a :class:`~os.PathLike` object. + + .. versionchanged:: 1.1 + Passing a :class:`~io.BytesIO` object supports range requests. + + .. versionchanged:: 1.0.3 + Filenames are encoded with ASCII instead of Latin-1 for broader + compatibility with WSGI servers. + + .. versionchanged:: 1.0 + UTF-8 filenames as specified in :rfc:`2231` are supported. + + .. versionchanged:: 0.12 + The filename is no longer automatically inferred from file + objects. If you want to use automatic MIME and etag support, + pass a filename via ``filename_or_fp`` or + ``attachment_filename``. + + .. versionchanged:: 0.12 + ``attachment_filename`` is preferred over ``filename`` for MIME + detection. + + .. versionchanged:: 0.9 + ``cache_timeout`` defaults to + :meth:`Flask.get_send_file_max_age`. + + .. versionchanged:: 0.7 + MIME guessing and etag support for file-like objects was + removed because it was unreliable. Pass a filename if you are + able to, otherwise attach an etag yourself. + + .. versionchanged:: 0.5 + The ``add_etags``, ``cache_timeout`` and ``conditional`` + parameters were added. The default behavior is to add etags. + + .. versionadded:: 0.2 + """ + return werkzeug.utils.send_file( # type: ignore[return-value] + **_prepare_send_file_kwargs( + path_or_file=path_or_file, + environ=request.environ, + mimetype=mimetype, + as_attachment=as_attachment, + download_name=download_name, + conditional=conditional, + etag=etag, + last_modified=last_modified, + max_age=max_age, + ) + ) + + +def send_from_directory( + directory: os.PathLike[str] | str, + path: os.PathLike[str] | str, + **kwargs: t.Any, +) -> Response: + """Send a file from within a directory using :func:`send_file`. + + .. code-block:: python + + @app.route("/uploads/") + def download_file(name): + return send_from_directory( + app.config['UPLOAD_FOLDER'], name, as_attachment=True + ) + + This is a secure way to serve files from a folder, such as static + files or uploads. Uses :func:`~werkzeug.security.safe_join` to + ensure the path coming from the client is not maliciously crafted to + point outside the specified directory. + + If the final path does not point to an existing regular file, + raises a 404 :exc:`~werkzeug.exceptions.NotFound` error. + + :param directory: The directory that ``path`` must be located under, + relative to the current application's root path. This *must not* + be a value provided by the client, otherwise it becomes insecure. + :param path: The path to the file to send, relative to + ``directory``. + :param kwargs: Arguments to pass to :func:`send_file`. + + .. versionchanged:: 2.0 + ``path`` replaces the ``filename`` parameter. + + .. versionadded:: 2.0 + Moved the implementation to Werkzeug. This is now a wrapper to + pass some Flask-specific arguments. + + .. versionadded:: 0.5 + """ + return werkzeug.utils.send_from_directory( # type: ignore[return-value] + directory, path, **_prepare_send_file_kwargs(**kwargs) + ) + + +def get_root_path(import_name: str) -> str: + """Find the root path of a package, or the path that contains a + module. If it cannot be found, returns the current working + directory. + + Not to be confused with the value returned by :func:`find_package`. + + :meta private: + """ + # Module already imported and has a file attribute. Use that first. + mod = sys.modules.get(import_name) + + if mod is not None and hasattr(mod, "__file__") and mod.__file__ is not None: + return os.path.dirname(os.path.abspath(mod.__file__)) + + # Next attempt: check the loader. + try: + spec = importlib.util.find_spec(import_name) + + if spec is None: + raise ValueError + except (ImportError, ValueError): + loader = None + else: + loader = spec.loader + + # Loader does not exist or we're referring to an unloaded main + # module or a main module without path (interactive sessions), go + # with the current working directory. + if loader is None: + return os.getcwd() + + if hasattr(loader, "get_filename"): + filepath = loader.get_filename(import_name) # pyright: ignore + else: + # Fall back to imports. + __import__(import_name) + mod = sys.modules[import_name] + filepath = getattr(mod, "__file__", None) + + # If we don't have a file path it might be because it is a + # namespace package. In this case pick the root path from the + # first module that is contained in the package. + if filepath is None: + raise RuntimeError( + "No root path can be found for the provided module" + f" {import_name!r}. This can happen because the module" + " came from an import hook that does not provide file" + " name information or because it's a namespace package." + " In this case the root path needs to be explicitly" + " provided." + ) + + # filepath is import_name.py for a module, or __init__.py for a package. + return os.path.dirname(os.path.abspath(filepath)) # type: ignore[no-any-return] + + +@cache +def _split_blueprint_path(name: str) -> list[str]: + out: list[str] = [name] + + if "." in name: + out.extend(_split_blueprint_path(name.rpartition(".")[0])) + + return out diff --git a/venv/lib/python3.9/site-packages/flask/json/__init__.py b/venv/lib/python3.9/site-packages/flask/json/__init__.py new file mode 100644 index 0000000..c0941d0 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/json/__init__.py @@ -0,0 +1,170 @@ +from __future__ import annotations + +import json as _json +import typing as t + +from ..globals import current_app +from .provider import _default + +if t.TYPE_CHECKING: # pragma: no cover + from ..wrappers import Response + + +def dumps(obj: t.Any, **kwargs: t.Any) -> str: + """Serialize data as JSON. + + If :data:`~flask.current_app` is available, it will use its + :meth:`app.json.dumps() ` + method, otherwise it will use :func:`json.dumps`. + + :param obj: The data to serialize. + :param kwargs: Arguments passed to the ``dumps`` implementation. + + .. versionchanged:: 2.3 + The ``app`` parameter was removed. + + .. versionchanged:: 2.2 + Calls ``current_app.json.dumps``, allowing an app to override + the behavior. + + .. versionchanged:: 2.0.2 + :class:`decimal.Decimal` is supported by converting to a string. + + .. versionchanged:: 2.0 + ``encoding`` will be removed in Flask 2.1. + + .. versionchanged:: 1.0.3 + ``app`` can be passed directly, rather than requiring an app + context for configuration. + """ + if current_app: + return current_app.json.dumps(obj, **kwargs) + + kwargs.setdefault("default", _default) + return _json.dumps(obj, **kwargs) + + +def dump(obj: t.Any, fp: t.IO[str], **kwargs: t.Any) -> None: + """Serialize data as JSON and write to a file. + + If :data:`~flask.current_app` is available, it will use its + :meth:`app.json.dump() ` + method, otherwise it will use :func:`json.dump`. + + :param obj: The data to serialize. + :param fp: A file opened for writing text. Should use the UTF-8 + encoding to be valid JSON. + :param kwargs: Arguments passed to the ``dump`` implementation. + + .. versionchanged:: 2.3 + The ``app`` parameter was removed. + + .. versionchanged:: 2.2 + Calls ``current_app.json.dump``, allowing an app to override + the behavior. + + .. versionchanged:: 2.0 + Writing to a binary file, and the ``encoding`` argument, will be + removed in Flask 2.1. + """ + if current_app: + current_app.json.dump(obj, fp, **kwargs) + else: + kwargs.setdefault("default", _default) + _json.dump(obj, fp, **kwargs) + + +def loads(s: str | bytes, **kwargs: t.Any) -> t.Any: + """Deserialize data as JSON. + + If :data:`~flask.current_app` is available, it will use its + :meth:`app.json.loads() ` + method, otherwise it will use :func:`json.loads`. + + :param s: Text or UTF-8 bytes. + :param kwargs: Arguments passed to the ``loads`` implementation. + + .. versionchanged:: 2.3 + The ``app`` parameter was removed. + + .. versionchanged:: 2.2 + Calls ``current_app.json.loads``, allowing an app to override + the behavior. + + .. versionchanged:: 2.0 + ``encoding`` will be removed in Flask 2.1. The data must be a + string or UTF-8 bytes. + + .. versionchanged:: 1.0.3 + ``app`` can be passed directly, rather than requiring an app + context for configuration. + """ + if current_app: + return current_app.json.loads(s, **kwargs) + + return _json.loads(s, **kwargs) + + +def load(fp: t.IO[t.AnyStr], **kwargs: t.Any) -> t.Any: + """Deserialize data as JSON read from a file. + + If :data:`~flask.current_app` is available, it will use its + :meth:`app.json.load() ` + method, otherwise it will use :func:`json.load`. + + :param fp: A file opened for reading text or UTF-8 bytes. + :param kwargs: Arguments passed to the ``load`` implementation. + + .. versionchanged:: 2.3 + The ``app`` parameter was removed. + + .. versionchanged:: 2.2 + Calls ``current_app.json.load``, allowing an app to override + the behavior. + + .. versionchanged:: 2.2 + The ``app`` parameter will be removed in Flask 2.3. + + .. versionchanged:: 2.0 + ``encoding`` will be removed in Flask 2.1. The file must be text + mode, or binary mode with UTF-8 bytes. + """ + if current_app: + return current_app.json.load(fp, **kwargs) + + return _json.load(fp, **kwargs) + + +def jsonify(*args: t.Any, **kwargs: t.Any) -> Response: + """Serialize the given arguments as JSON, and return a + :class:`~flask.Response` object with the ``application/json`` + mimetype. A dict or list returned from a view will be converted to a + JSON response automatically without needing to call this. + + This requires an active request or application context, and calls + :meth:`app.json.response() `. + + In debug mode, the output is formatted with indentation to make it + easier to read. This may also be controlled by the provider. + + Either positional or keyword arguments can be given, not both. + If no arguments are given, ``None`` is serialized. + + :param args: A single value to serialize, or multiple values to + treat as a list to serialize. + :param kwargs: Treat as a dict to serialize. + + .. versionchanged:: 2.2 + Calls ``current_app.json.response``, allowing an app to override + the behavior. + + .. versionchanged:: 2.0.2 + :class:`decimal.Decimal` is supported by converting to a string. + + .. versionchanged:: 0.11 + Added support for serializing top-level arrays. This was a + security risk in ancient browsers. See :ref:`security-json`. + + .. versionadded:: 0.2 + """ + return current_app.json.response(*args, **kwargs) # type: ignore[return-value] diff --git a/venv/lib/python3.9/site-packages/flask/json/provider.py b/venv/lib/python3.9/site-packages/flask/json/provider.py new file mode 100644 index 0000000..ea7e475 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/json/provider.py @@ -0,0 +1,215 @@ +from __future__ import annotations + +import dataclasses +import decimal +import json +import typing as t +import uuid +import weakref +from datetime import date + +from werkzeug.http import http_date + +if t.TYPE_CHECKING: # pragma: no cover + from werkzeug.sansio.response import Response + + from ..sansio.app import App + + +class JSONProvider: + """A standard set of JSON operations for an application. Subclasses + of this can be used to customize JSON behavior or use different + JSON libraries. + + To implement a provider for a specific library, subclass this base + class and implement at least :meth:`dumps` and :meth:`loads`. All + other methods have default implementations. + + To use a different provider, either subclass ``Flask`` and set + :attr:`~flask.Flask.json_provider_class` to a provider class, or set + :attr:`app.json ` to an instance of the class. + + :param app: An application instance. This will be stored as a + :class:`weakref.proxy` on the :attr:`_app` attribute. + + .. versionadded:: 2.2 + """ + + def __init__(self, app: App) -> None: + self._app: App = weakref.proxy(app) + + def dumps(self, obj: t.Any, **kwargs: t.Any) -> str: + """Serialize data as JSON. + + :param obj: The data to serialize. + :param kwargs: May be passed to the underlying JSON library. + """ + raise NotImplementedError + + def dump(self, obj: t.Any, fp: t.IO[str], **kwargs: t.Any) -> None: + """Serialize data as JSON and write to a file. + + :param obj: The data to serialize. + :param fp: A file opened for writing text. Should use the UTF-8 + encoding to be valid JSON. + :param kwargs: May be passed to the underlying JSON library. + """ + fp.write(self.dumps(obj, **kwargs)) + + def loads(self, s: str | bytes, **kwargs: t.Any) -> t.Any: + """Deserialize data as JSON. + + :param s: Text or UTF-8 bytes. + :param kwargs: May be passed to the underlying JSON library. + """ + raise NotImplementedError + + def load(self, fp: t.IO[t.AnyStr], **kwargs: t.Any) -> t.Any: + """Deserialize data as JSON read from a file. + + :param fp: A file opened for reading text or UTF-8 bytes. + :param kwargs: May be passed to the underlying JSON library. + """ + return self.loads(fp.read(), **kwargs) + + def _prepare_response_obj( + self, args: tuple[t.Any, ...], kwargs: dict[str, t.Any] + ) -> t.Any: + if args and kwargs: + raise TypeError("app.json.response() takes either args or kwargs, not both") + + if not args and not kwargs: + return None + + if len(args) == 1: + return args[0] + + return args or kwargs + + def response(self, *args: t.Any, **kwargs: t.Any) -> Response: + """Serialize the given arguments as JSON, and return a + :class:`~flask.Response` object with the ``application/json`` + mimetype. + + The :func:`~flask.json.jsonify` function calls this method for + the current application. + + Either positional or keyword arguments can be given, not both. + If no arguments are given, ``None`` is serialized. + + :param args: A single value to serialize, or multiple values to + treat as a list to serialize. + :param kwargs: Treat as a dict to serialize. + """ + obj = self._prepare_response_obj(args, kwargs) + return self._app.response_class(self.dumps(obj), mimetype="application/json") + + +def _default(o: t.Any) -> t.Any: + if isinstance(o, date): + return http_date(o) + + if isinstance(o, (decimal.Decimal, uuid.UUID)): + return str(o) + + if dataclasses and dataclasses.is_dataclass(o): + return dataclasses.asdict(o) # type: ignore[arg-type] + + if hasattr(o, "__html__"): + return str(o.__html__()) + + raise TypeError(f"Object of type {type(o).__name__} is not JSON serializable") + + +class DefaultJSONProvider(JSONProvider): + """Provide JSON operations using Python's built-in :mod:`json` + library. Serializes the following additional data types: + + - :class:`datetime.datetime` and :class:`datetime.date` are + serialized to :rfc:`822` strings. This is the same as the HTTP + date format. + - :class:`uuid.UUID` is serialized to a string. + - :class:`dataclasses.dataclass` is passed to + :func:`dataclasses.asdict`. + - :class:`~markupsafe.Markup` (or any object with a ``__html__`` + method) will call the ``__html__`` method to get a string. + """ + + default: t.Callable[[t.Any], t.Any] = staticmethod(_default) # type: ignore[assignment] + """Apply this function to any object that :meth:`json.dumps` does + not know how to serialize. It should return a valid JSON type or + raise a ``TypeError``. + """ + + ensure_ascii = True + """Replace non-ASCII characters with escape sequences. This may be + more compatible with some clients, but can be disabled for better + performance and size. + """ + + sort_keys = True + """Sort the keys in any serialized dicts. This may be useful for + some caching situations, but can be disabled for better performance. + When enabled, keys must all be strings, they are not converted + before sorting. + """ + + compact: bool | None = None + """If ``True``, or ``None`` out of debug mode, the :meth:`response` + output will not add indentation, newlines, or spaces. If ``False``, + or ``None`` in debug mode, it will use a non-compact representation. + """ + + mimetype = "application/json" + """The mimetype set in :meth:`response`.""" + + def dumps(self, obj: t.Any, **kwargs: t.Any) -> str: + """Serialize data as JSON to a string. + + Keyword arguments are passed to :func:`json.dumps`. Sets some + parameter defaults from the :attr:`default`, + :attr:`ensure_ascii`, and :attr:`sort_keys` attributes. + + :param obj: The data to serialize. + :param kwargs: Passed to :func:`json.dumps`. + """ + kwargs.setdefault("default", self.default) + kwargs.setdefault("ensure_ascii", self.ensure_ascii) + kwargs.setdefault("sort_keys", self.sort_keys) + return json.dumps(obj, **kwargs) + + def loads(self, s: str | bytes, **kwargs: t.Any) -> t.Any: + """Deserialize data as JSON from a string or bytes. + + :param s: Text or UTF-8 bytes. + :param kwargs: Passed to :func:`json.loads`. + """ + return json.loads(s, **kwargs) + + def response(self, *args: t.Any, **kwargs: t.Any) -> Response: + """Serialize the given arguments as JSON, and return a + :class:`~flask.Response` object with it. The response mimetype + will be "application/json" and can be changed with + :attr:`mimetype`. + + If :attr:`compact` is ``False`` or debug mode is enabled, the + output will be formatted to be easier to read. + + Either positional or keyword arguments can be given, not both. + If no arguments are given, ``None`` is serialized. + + :param args: A single value to serialize, or multiple values to + treat as a list to serialize. + :param kwargs: Treat as a dict to serialize. + """ + obj = self._prepare_response_obj(args, kwargs) + dump_args: dict[str, t.Any] = {} + + if (self.compact is None and self._app.debug) or self.compact is False: + dump_args.setdefault("indent", 2) + else: + dump_args.setdefault("separators", (",", ":")) + + return self._app.response_class( + f"{self.dumps(obj, **dump_args)}\n", mimetype=self.mimetype + ) diff --git a/venv/lib/python3.9/site-packages/flask/json/tag.py b/venv/lib/python3.9/site-packages/flask/json/tag.py new file mode 100644 index 0000000..8dc3629 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/json/tag.py @@ -0,0 +1,327 @@ +""" +Tagged JSON +~~~~~~~~~~~ + +A compact representation for lossless serialization of non-standard JSON +types. :class:`~flask.sessions.SecureCookieSessionInterface` uses this +to serialize the session data, but it may be useful in other places. It +can be extended to support other types. + +.. autoclass:: TaggedJSONSerializer + :members: + +.. autoclass:: JSONTag + :members: + +Let's see an example that adds support for +:class:`~collections.OrderedDict`. Dicts don't have an order in JSON, so +to handle this we will dump the items as a list of ``[key, value]`` +pairs. Subclass :class:`JSONTag` and give it the new key ``' od'`` to +identify the type. The session serializer processes dicts first, so +insert the new tag at the front of the order since ``OrderedDict`` must +be processed before ``dict``. + +.. code-block:: python + + from flask.json.tag import JSONTag + + class TagOrderedDict(JSONTag): + __slots__ = ('serializer',) + key = ' od' + + def check(self, value): + return isinstance(value, OrderedDict) + + def to_json(self, value): + return [[k, self.serializer.tag(v)] for k, v in iteritems(value)] + + def to_python(self, value): + return OrderedDict(value) + + app.session_interface.serializer.register(TagOrderedDict, index=0) +""" + +from __future__ import annotations + +import typing as t +from base64 import b64decode +from base64 import b64encode +from datetime import datetime +from uuid import UUID + +from markupsafe import Markup +from werkzeug.http import http_date +from werkzeug.http import parse_date + +from ..json import dumps +from ..json import loads + + +class JSONTag: + """Base class for defining type tags for :class:`TaggedJSONSerializer`.""" + + __slots__ = ("serializer",) + + #: The tag to mark the serialized object with. If empty, this tag is + #: only used as an intermediate step during tagging. + key: str = "" + + def __init__(self, serializer: TaggedJSONSerializer) -> None: + """Create a tagger for the given serializer.""" + self.serializer = serializer + + def check(self, value: t.Any) -> bool: + """Check if the given value should be tagged by this tag.""" + raise NotImplementedError + + def to_json(self, value: t.Any) -> t.Any: + """Convert the Python object to an object that is a valid JSON type. + The tag will be added later.""" + raise NotImplementedError + + def to_python(self, value: t.Any) -> t.Any: + """Convert the JSON representation back to the correct type. The tag + will already be removed.""" + raise NotImplementedError + + def tag(self, value: t.Any) -> dict[str, t.Any]: + """Convert the value to a valid JSON type and add the tag structure + around it.""" + return {self.key: self.to_json(value)} + + +class TagDict(JSONTag): + """Tag for 1-item dicts whose only key matches a registered tag. + + Internally, the dict key is suffixed with `__`, and the suffix is removed + when deserializing. + """ + + __slots__ = () + key = " di" + + def check(self, value: t.Any) -> bool: + return ( + isinstance(value, dict) + and len(value) == 1 + and next(iter(value)) in self.serializer.tags + ) + + def to_json(self, value: t.Any) -> t.Any: + key = next(iter(value)) + return {f"{key}__": self.serializer.tag(value[key])} + + def to_python(self, value: t.Any) -> t.Any: + key = next(iter(value)) + return {key[:-2]: value[key]} + + +class PassDict(JSONTag): + __slots__ = () + + def check(self, value: t.Any) -> bool: + return isinstance(value, dict) + + def to_json(self, value: t.Any) -> t.Any: + # JSON objects may only have string keys, so don't bother tagging the + # key here. + return {k: self.serializer.tag(v) for k, v in value.items()} + + tag = to_json + + +class TagTuple(JSONTag): + __slots__ = () + key = " t" + + def check(self, value: t.Any) -> bool: + return isinstance(value, tuple) + + def to_json(self, value: t.Any) -> t.Any: + return [self.serializer.tag(item) for item in value] + + def to_python(self, value: t.Any) -> t.Any: + return tuple(value) + + +class PassList(JSONTag): + __slots__ = () + + def check(self, value: t.Any) -> bool: + return isinstance(value, list) + + def to_json(self, value: t.Any) -> t.Any: + return [self.serializer.tag(item) for item in value] + + tag = to_json + + +class TagBytes(JSONTag): + __slots__ = () + key = " b" + + def check(self, value: t.Any) -> bool: + return isinstance(value, bytes) + + def to_json(self, value: t.Any) -> t.Any: + return b64encode(value).decode("ascii") + + def to_python(self, value: t.Any) -> t.Any: + return b64decode(value) + + +class TagMarkup(JSONTag): + """Serialize anything matching the :class:`~markupsafe.Markup` API by + having a ``__html__`` method to the result of that method. Always + deserializes to an instance of :class:`~markupsafe.Markup`.""" + + __slots__ = () + key = " m" + + def check(self, value: t.Any) -> bool: + return callable(getattr(value, "__html__", None)) + + def to_json(self, value: t.Any) -> t.Any: + return str(value.__html__()) + + def to_python(self, value: t.Any) -> t.Any: + return Markup(value) + + +class TagUUID(JSONTag): + __slots__ = () + key = " u" + + def check(self, value: t.Any) -> bool: + return isinstance(value, UUID) + + def to_json(self, value: t.Any) -> t.Any: + return value.hex + + def to_python(self, value: t.Any) -> t.Any: + return UUID(value) + + +class TagDateTime(JSONTag): + __slots__ = () + key = " d" + + def check(self, value: t.Any) -> bool: + return isinstance(value, datetime) + + def to_json(self, value: t.Any) -> t.Any: + return http_date(value) + + def to_python(self, value: t.Any) -> t.Any: + return parse_date(value) + + +class TaggedJSONSerializer: + """Serializer that uses a tag system to compactly represent objects that + are not JSON types. Passed as the intermediate serializer to + :class:`itsdangerous.Serializer`. + + The following extra types are supported: + + * :class:`dict` + * :class:`tuple` + * :class:`bytes` + * :class:`~markupsafe.Markup` + * :class:`~uuid.UUID` + * :class:`~datetime.datetime` + """ + + __slots__ = ("tags", "order") + + #: Tag classes to bind when creating the serializer. Other tags can be + #: added later using :meth:`~register`. + default_tags = [ + TagDict, + PassDict, + TagTuple, + PassList, + TagBytes, + TagMarkup, + TagUUID, + TagDateTime, + ] + + def __init__(self) -> None: + self.tags: dict[str, JSONTag] = {} + self.order: list[JSONTag] = [] + + for cls in self.default_tags: + self.register(cls) + + def register( + self, + tag_class: type[JSONTag], + force: bool = False, + index: int | None = None, + ) -> None: + """Register a new tag with this serializer. + + :param tag_class: tag class to register. Will be instantiated with this + serializer instance. + :param force: overwrite an existing tag. If false (default), a + :exc:`KeyError` is raised. + :param index: index to insert the new tag in the tag order. Useful when + the new tag is a special case of an existing tag. If ``None`` + (default), the tag is appended to the end of the order. + + :raise KeyError: if the tag key is already registered and ``force`` is + not true. + """ + tag = tag_class(self) + key = tag.key + + if key: + if not force and key in self.tags: + raise KeyError(f"Tag '{key}' is already registered.") + + self.tags[key] = tag + + if index is None: + self.order.append(tag) + else: + self.order.insert(index, tag) + + def tag(self, value: t.Any) -> t.Any: + """Convert a value to a tagged representation if necessary.""" + for tag in self.order: + if tag.check(value): + return tag.tag(value) + + return value + + def untag(self, value: dict[str, t.Any]) -> t.Any: + """Convert a tagged representation back to the original type.""" + if len(value) != 1: + return value + + key = next(iter(value)) + + if key not in self.tags: + return value + + return self.tags[key].to_python(value[key]) + + def _untag_scan(self, value: t.Any) -> t.Any: + if isinstance(value, dict): + # untag each item recursively + value = {k: self._untag_scan(v) for k, v in value.items()} + # untag the dict itself + value = self.untag(value) + elif isinstance(value, list): + # untag each item recursively + value = [self._untag_scan(item) for item in value] + + return value + + def dumps(self, value: t.Any) -> str: + """Tag the value and dump it to a compact JSON string.""" + return dumps(self.tag(value), separators=(",", ":")) + + def loads(self, value: str) -> t.Any: + """Load data from a JSON string and deserialized any tagged objects.""" + return self._untag_scan(loads(value)) diff --git a/venv/lib/python3.9/site-packages/flask/logging.py b/venv/lib/python3.9/site-packages/flask/logging.py new file mode 100644 index 0000000..0cb8f43 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/logging.py @@ -0,0 +1,79 @@ +from __future__ import annotations + +import logging +import sys +import typing as t + +from werkzeug.local import LocalProxy + +from .globals import request + +if t.TYPE_CHECKING: # pragma: no cover + from .sansio.app import App + + +@LocalProxy +def wsgi_errors_stream() -> t.TextIO: + """Find the most appropriate error stream for the application. If a request + is active, log to ``wsgi.errors``, otherwise use ``sys.stderr``. + + If you configure your own :class:`logging.StreamHandler`, you may want to + use this for the stream. If you are using file or dict configuration and + can't import this directly, you can refer to it as + ``ext://flask.logging.wsgi_errors_stream``. + """ + if request: + return request.environ["wsgi.errors"] # type: ignore[no-any-return] + + return sys.stderr + + +def has_level_handler(logger: logging.Logger) -> bool: + """Check if there is a handler in the logging chain that will handle the + given logger's :meth:`effective level <~logging.Logger.getEffectiveLevel>`. + """ + level = logger.getEffectiveLevel() + current = logger + + while current: + if any(handler.level <= level for handler in current.handlers): + return True + + if not current.propagate: + break + + current = current.parent # type: ignore + + return False + + +#: Log messages to :func:`~flask.logging.wsgi_errors_stream` with the format +#: ``[%(asctime)s] %(levelname)s in %(module)s: %(message)s``. +default_handler = logging.StreamHandler(wsgi_errors_stream) # type: ignore +default_handler.setFormatter( + logging.Formatter("[%(asctime)s] %(levelname)s in %(module)s: %(message)s") +) + + +def create_logger(app: App) -> logging.Logger: + """Get the Flask app's logger and configure it if needed. + + The logger name will be the same as + :attr:`app.import_name `. + + When :attr:`~flask.Flask.debug` is enabled, set the logger level to + :data:`logging.DEBUG` if it is not set. + + If there is no handler for the logger's effective level, add a + :class:`~logging.StreamHandler` for + :func:`~flask.logging.wsgi_errors_stream` with a basic format. + """ + logger = logging.getLogger(app.name) + + if app.debug and not logger.level: + logger.setLevel(logging.DEBUG) + + if not has_level_handler(logger): + logger.addHandler(default_handler) + + return logger diff --git a/venv/lib/python3.9/site-packages/flask/py.typed b/venv/lib/python3.9/site-packages/flask/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/flask/sansio/README.md b/venv/lib/python3.9/site-packages/flask/sansio/README.md new file mode 100644 index 0000000..623ac19 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/sansio/README.md @@ -0,0 +1,6 @@ +# Sansio + +This folder contains code that can be used by alternative Flask +implementations, for example Quart. The code therefore cannot do any +IO, nor be part of a likely IO path. Finally this code cannot use the +Flask globals. diff --git a/venv/lib/python3.9/site-packages/flask/sansio/app.py b/venv/lib/python3.9/site-packages/flask/sansio/app.py new file mode 100644 index 0000000..58cb873 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/sansio/app.py @@ -0,0 +1,964 @@ +from __future__ import annotations + +import logging +import os +import sys +import typing as t +from datetime import timedelta +from itertools import chain + +from werkzeug.exceptions import Aborter +from werkzeug.exceptions import BadRequest +from werkzeug.exceptions import BadRequestKeyError +from werkzeug.routing import BuildError +from werkzeug.routing import Map +from werkzeug.routing import Rule +from werkzeug.sansio.response import Response +from werkzeug.utils import cached_property +from werkzeug.utils import redirect as _wz_redirect + +from .. import typing as ft +from ..config import Config +from ..config import ConfigAttribute +from ..ctx import _AppCtxGlobals +from ..helpers import _split_blueprint_path +from ..helpers import get_debug_flag +from ..json.provider import DefaultJSONProvider +from ..json.provider import JSONProvider +from ..logging import create_logger +from ..templating import DispatchingJinjaLoader +from ..templating import Environment +from .scaffold import _endpoint_from_view_func +from .scaffold import find_package +from .scaffold import Scaffold +from .scaffold import setupmethod + +if t.TYPE_CHECKING: # pragma: no cover + from werkzeug.wrappers import Response as BaseResponse + + from ..testing import FlaskClient + from ..testing import FlaskCliRunner + from .blueprints import Blueprint + +T_shell_context_processor = t.TypeVar( + "T_shell_context_processor", bound=ft.ShellContextProcessorCallable +) +T_teardown = t.TypeVar("T_teardown", bound=ft.TeardownCallable) +T_template_filter = t.TypeVar("T_template_filter", bound=ft.TemplateFilterCallable) +T_template_global = t.TypeVar("T_template_global", bound=ft.TemplateGlobalCallable) +T_template_test = t.TypeVar("T_template_test", bound=ft.TemplateTestCallable) + + +def _make_timedelta(value: timedelta | int | None) -> timedelta | None: + if value is None or isinstance(value, timedelta): + return value + + return timedelta(seconds=value) + + +class App(Scaffold): + """The flask object implements a WSGI application and acts as the central + object. It is passed the name of the module or package of the + application. Once it is created it will act as a central registry for + the view functions, the URL rules, template configuration and much more. + + The name of the package is used to resolve resources from inside the + package or the folder the module is contained in depending on if the + package parameter resolves to an actual python package (a folder with + an :file:`__init__.py` file inside) or a standard module (just a ``.py`` file). + + For more information about resource loading, see :func:`open_resource`. + + Usually you create a :class:`Flask` instance in your main module or + in the :file:`__init__.py` file of your package like this:: + + from flask import Flask + app = Flask(__name__) + + .. admonition:: About the First Parameter + + The idea of the first parameter is to give Flask an idea of what + belongs to your application. This name is used to find resources + on the filesystem, can be used by extensions to improve debugging + information and a lot more. + + So it's important what you provide there. If you are using a single + module, `__name__` is always the correct value. If you however are + using a package, it's usually recommended to hardcode the name of + your package there. + + For example if your application is defined in :file:`yourapplication/app.py` + you should create it with one of the two versions below:: + + app = Flask('yourapplication') + app = Flask(__name__.split('.')[0]) + + Why is that? The application will work even with `__name__`, thanks + to how resources are looked up. However it will make debugging more + painful. Certain extensions can make assumptions based on the + import name of your application. For example the Flask-SQLAlchemy + extension will look for the code in your application that triggered + an SQL query in debug mode. If the import name is not properly set + up, that debugging information is lost. (For example it would only + pick up SQL queries in `yourapplication.app` and not + `yourapplication.views.frontend`) + + .. versionadded:: 0.7 + The `static_url_path`, `static_folder`, and `template_folder` + parameters were added. + + .. versionadded:: 0.8 + The `instance_path` and `instance_relative_config` parameters were + added. + + .. versionadded:: 0.11 + The `root_path` parameter was added. + + .. versionadded:: 1.0 + The ``host_matching`` and ``static_host`` parameters were added. + + .. versionadded:: 1.0 + The ``subdomain_matching`` parameter was added. Subdomain + matching needs to be enabled manually now. Setting + :data:`SERVER_NAME` does not implicitly enable it. + + :param import_name: the name of the application package + :param static_url_path: can be used to specify a different path for the + static files on the web. Defaults to the name + of the `static_folder` folder. + :param static_folder: The folder with static files that is served at + ``static_url_path``. Relative to the application ``root_path`` + or an absolute path. Defaults to ``'static'``. + :param static_host: the host to use when adding the static route. + Defaults to None. Required when using ``host_matching=True`` + with a ``static_folder`` configured. + :param host_matching: set ``url_map.host_matching`` attribute. + Defaults to False. + :param subdomain_matching: consider the subdomain relative to + :data:`SERVER_NAME` when matching routes. Defaults to False. + :param template_folder: the folder that contains the templates that should + be used by the application. Defaults to + ``'templates'`` folder in the root path of the + application. + :param instance_path: An alternative instance path for the application. + By default the folder ``'instance'`` next to the + package or module is assumed to be the instance + path. + :param instance_relative_config: if set to ``True`` relative filenames + for loading the config are assumed to + be relative to the instance path instead + of the application root. + :param root_path: The path to the root of the application files. + This should only be set manually when it can't be detected + automatically, such as for namespace packages. + """ + + #: The class of the object assigned to :attr:`aborter`, created by + #: :meth:`create_aborter`. That object is called by + #: :func:`flask.abort` to raise HTTP errors, and can be + #: called directly as well. + #: + #: Defaults to :class:`werkzeug.exceptions.Aborter`. + #: + #: .. versionadded:: 2.2 + aborter_class = Aborter + + #: The class that is used for the Jinja environment. + #: + #: .. versionadded:: 0.11 + jinja_environment = Environment + + #: The class that is used for the :data:`~flask.g` instance. + #: + #: Example use cases for a custom class: + #: + #: 1. Store arbitrary attributes on flask.g. + #: 2. Add a property for lazy per-request database connectors. + #: 3. Return None instead of AttributeError on unexpected attributes. + #: 4. Raise exception if an unexpected attr is set, a "controlled" flask.g. + #: + #: In Flask 0.9 this property was called `request_globals_class` but it + #: was changed in 0.10 to :attr:`app_ctx_globals_class` because the + #: flask.g object is now application context scoped. + #: + #: .. versionadded:: 0.10 + app_ctx_globals_class = _AppCtxGlobals + + #: The class that is used for the ``config`` attribute of this app. + #: Defaults to :class:`~flask.Config`. + #: + #: Example use cases for a custom class: + #: + #: 1. Default values for certain config options. + #: 2. Access to config values through attributes in addition to keys. + #: + #: .. versionadded:: 0.11 + config_class = Config + + #: The testing flag. Set this to ``True`` to enable the test mode of + #: Flask extensions (and in the future probably also Flask itself). + #: For example this might activate test helpers that have an + #: additional runtime cost which should not be enabled by default. + #: + #: If this is enabled and PROPAGATE_EXCEPTIONS is not changed from the + #: default it's implicitly enabled. + #: + #: This attribute can also be configured from the config with the + #: ``TESTING`` configuration key. Defaults to ``False``. + testing = ConfigAttribute[bool]("TESTING") + + #: If a secret key is set, cryptographic components can use this to + #: sign cookies and other things. Set this to a complex random value + #: when you want to use the secure cookie for instance. + #: + #: This attribute can also be configured from the config with the + #: :data:`SECRET_KEY` configuration key. Defaults to ``None``. + secret_key = ConfigAttribute[t.Union[str, bytes, None]]("SECRET_KEY") + + #: A :class:`~datetime.timedelta` which is used to set the expiration + #: date of a permanent session. The default is 31 days which makes a + #: permanent session survive for roughly one month. + #: + #: This attribute can also be configured from the config with the + #: ``PERMANENT_SESSION_LIFETIME`` configuration key. Defaults to + #: ``timedelta(days=31)`` + permanent_session_lifetime = ConfigAttribute[timedelta]( + "PERMANENT_SESSION_LIFETIME", + get_converter=_make_timedelta, # type: ignore[arg-type] + ) + + json_provider_class: type[JSONProvider] = DefaultJSONProvider + """A subclass of :class:`~flask.json.provider.JSONProvider`. An + instance is created and assigned to :attr:`app.json` when creating + the app. + + The default, :class:`~flask.json.provider.DefaultJSONProvider`, uses + Python's built-in :mod:`json` library. A different provider can use + a different JSON library. + + .. versionadded:: 2.2 + """ + + #: Options that are passed to the Jinja environment in + #: :meth:`create_jinja_environment`. Changing these options after + #: the environment is created (accessing :attr:`jinja_env`) will + #: have no effect. + #: + #: .. versionchanged:: 1.1.0 + #: This is a ``dict`` instead of an ``ImmutableDict`` to allow + #: easier configuration. + #: + jinja_options: dict[str, t.Any] = {} + + #: The rule object to use for URL rules created. This is used by + #: :meth:`add_url_rule`. Defaults to :class:`werkzeug.routing.Rule`. + #: + #: .. versionadded:: 0.7 + url_rule_class = Rule + + #: The map object to use for storing the URL rules and routing + #: configuration parameters. Defaults to :class:`werkzeug.routing.Map`. + #: + #: .. versionadded:: 1.1.0 + url_map_class = Map + + #: The :meth:`test_client` method creates an instance of this test + #: client class. Defaults to :class:`~flask.testing.FlaskClient`. + #: + #: .. versionadded:: 0.7 + test_client_class: type[FlaskClient] | None = None + + #: The :class:`~click.testing.CliRunner` subclass, by default + #: :class:`~flask.testing.FlaskCliRunner` that is used by + #: :meth:`test_cli_runner`. Its ``__init__`` method should take a + #: Flask app object as the first argument. + #: + #: .. versionadded:: 1.0 + test_cli_runner_class: type[FlaskCliRunner] | None = None + + default_config: dict[str, t.Any] + response_class: type[Response] + + def __init__( + self, + import_name: str, + static_url_path: str | None = None, + static_folder: str | os.PathLike[str] | None = "static", + static_host: str | None = None, + host_matching: bool = False, + subdomain_matching: bool = False, + template_folder: str | os.PathLike[str] | None = "templates", + instance_path: str | None = None, + instance_relative_config: bool = False, + root_path: str | None = None, + ) -> None: + super().__init__( + import_name=import_name, + static_folder=static_folder, + static_url_path=static_url_path, + template_folder=template_folder, + root_path=root_path, + ) + + if instance_path is None: + instance_path = self.auto_find_instance_path() + elif not os.path.isabs(instance_path): + raise ValueError( + "If an instance path is provided it must be absolute." + " A relative path was given instead." + ) + + #: Holds the path to the instance folder. + #: + #: .. versionadded:: 0.8 + self.instance_path = instance_path + + #: The configuration dictionary as :class:`Config`. This behaves + #: exactly like a regular dictionary but supports additional methods + #: to load a config from files. + self.config = self.make_config(instance_relative_config) + + #: An instance of :attr:`aborter_class` created by + #: :meth:`make_aborter`. This is called by :func:`flask.abort` + #: to raise HTTP errors, and can be called directly as well. + #: + #: .. versionadded:: 2.2 + #: Moved from ``flask.abort``, which calls this object. + self.aborter = self.make_aborter() + + self.json: JSONProvider = self.json_provider_class(self) + """Provides access to JSON methods. Functions in ``flask.json`` + will call methods on this provider when the application context + is active. Used for handling JSON requests and responses. + + An instance of :attr:`json_provider_class`. Can be customized by + changing that attribute on a subclass, or by assigning to this + attribute afterwards. + + The default, :class:`~flask.json.provider.DefaultJSONProvider`, + uses Python's built-in :mod:`json` library. A different provider + can use a different JSON library. + + .. versionadded:: 2.2 + """ + + #: A list of functions that are called by + #: :meth:`handle_url_build_error` when :meth:`.url_for` raises a + #: :exc:`~werkzeug.routing.BuildError`. Each function is called + #: with ``error``, ``endpoint`` and ``values``. If a function + #: returns ``None`` or raises a ``BuildError``, it is skipped. + #: Otherwise, its return value is returned by ``url_for``. + #: + #: .. versionadded:: 0.9 + self.url_build_error_handlers: list[ + t.Callable[[Exception, str, dict[str, t.Any]], str] + ] = [] + + #: A list of functions that are called when the application context + #: is destroyed. Since the application context is also torn down + #: if the request ends this is the place to store code that disconnects + #: from databases. + #: + #: .. versionadded:: 0.9 + self.teardown_appcontext_funcs: list[ft.TeardownCallable] = [] + + #: A list of shell context processor functions that should be run + #: when a shell context is created. + #: + #: .. versionadded:: 0.11 + self.shell_context_processors: list[ft.ShellContextProcessorCallable] = [] + + #: Maps registered blueprint names to blueprint objects. The + #: dict retains the order the blueprints were registered in. + #: Blueprints can be registered multiple times, this dict does + #: not track how often they were attached. + #: + #: .. versionadded:: 0.7 + self.blueprints: dict[str, Blueprint] = {} + + #: a place where extensions can store application specific state. For + #: example this is where an extension could store database engines and + #: similar things. + #: + #: The key must match the name of the extension module. For example in + #: case of a "Flask-Foo" extension in `flask_foo`, the key would be + #: ``'foo'``. + #: + #: .. versionadded:: 0.7 + self.extensions: dict[str, t.Any] = {} + + #: The :class:`~werkzeug.routing.Map` for this instance. You can use + #: this to change the routing converters after the class was created + #: but before any routes are connected. Example:: + #: + #: from werkzeug.routing import BaseConverter + #: + #: class ListConverter(BaseConverter): + #: def to_python(self, value): + #: return value.split(',') + #: def to_url(self, values): + #: return ','.join(super(ListConverter, self).to_url(value) + #: for value in values) + #: + #: app = Flask(__name__) + #: app.url_map.converters['list'] = ListConverter + self.url_map = self.url_map_class(host_matching=host_matching) + + self.subdomain_matching = subdomain_matching + + # tracks internally if the application already handled at least one + # request. + self._got_first_request = False + + def _check_setup_finished(self, f_name: str) -> None: + if self._got_first_request: + raise AssertionError( + f"The setup method '{f_name}' can no longer be called" + " on the application. It has already handled its first" + " request, any changes will not be applied" + " consistently.\n" + "Make sure all imports, decorators, functions, etc." + " needed to set up the application are done before" + " running it." + ) + + @cached_property + def name(self) -> str: + """The name of the application. This is usually the import name + with the difference that it's guessed from the run file if the + import name is main. This name is used as a display name when + Flask needs the name of the application. It can be set and overridden + to change the value. + + .. versionadded:: 0.8 + """ + if self.import_name == "__main__": + fn: str | None = getattr(sys.modules["__main__"], "__file__", None) + if fn is None: + return "__main__" + return os.path.splitext(os.path.basename(fn))[0] + return self.import_name + + @cached_property + def logger(self) -> logging.Logger: + """A standard Python :class:`~logging.Logger` for the app, with + the same name as :attr:`name`. + + In debug mode, the logger's :attr:`~logging.Logger.level` will + be set to :data:`~logging.DEBUG`. + + If there are no handlers configured, a default handler will be + added. See :doc:`/logging` for more information. + + .. versionchanged:: 1.1.0 + The logger takes the same name as :attr:`name` rather than + hard-coding ``"flask.app"``. + + .. versionchanged:: 1.0.0 + Behavior was simplified. The logger is always named + ``"flask.app"``. The level is only set during configuration, + it doesn't check ``app.debug`` each time. Only one format is + used, not different ones depending on ``app.debug``. No + handlers are removed, and a handler is only added if no + handlers are already configured. + + .. versionadded:: 0.3 + """ + return create_logger(self) + + @cached_property + def jinja_env(self) -> Environment: + """The Jinja environment used to load templates. + + The environment is created the first time this property is + accessed. Changing :attr:`jinja_options` after that will have no + effect. + """ + return self.create_jinja_environment() + + def create_jinja_environment(self) -> Environment: + raise NotImplementedError() + + def make_config(self, instance_relative: bool = False) -> Config: + """Used to create the config attribute by the Flask constructor. + The `instance_relative` parameter is passed in from the constructor + of Flask (there named `instance_relative_config`) and indicates if + the config should be relative to the instance path or the root path + of the application. + + .. versionadded:: 0.8 + """ + root_path = self.root_path + if instance_relative: + root_path = self.instance_path + defaults = dict(self.default_config) + defaults["DEBUG"] = get_debug_flag() + return self.config_class(root_path, defaults) + + def make_aborter(self) -> Aborter: + """Create the object to assign to :attr:`aborter`. That object + is called by :func:`flask.abort` to raise HTTP errors, and can + be called directly as well. + + By default, this creates an instance of :attr:`aborter_class`, + which defaults to :class:`werkzeug.exceptions.Aborter`. + + .. versionadded:: 2.2 + """ + return self.aborter_class() + + def auto_find_instance_path(self) -> str: + """Tries to locate the instance path if it was not provided to the + constructor of the application class. It will basically calculate + the path to a folder named ``instance`` next to your main file or + the package. + + .. versionadded:: 0.8 + """ + prefix, package_path = find_package(self.import_name) + if prefix is None: + return os.path.join(package_path, "instance") + return os.path.join(prefix, "var", f"{self.name}-instance") + + def create_global_jinja_loader(self) -> DispatchingJinjaLoader: + """Creates the loader for the Jinja environment. Can be used to + override just the loader and keeping the rest unchanged. It's + discouraged to override this function. Instead one should override + the :meth:`jinja_loader` function instead. + + The global loader dispatches between the loaders of the application + and the individual blueprints. + + .. versionadded:: 0.7 + """ + return DispatchingJinjaLoader(self) + + def select_jinja_autoescape(self, filename: str | None) -> bool: + """Returns ``True`` if autoescaping should be active for the given + template name. If no template name is given, returns `True`. + + .. versionchanged:: 2.2 + Autoescaping is now enabled by default for ``.svg`` files. + + .. versionadded:: 0.5 + """ + if filename is None: + return True + return filename.endswith((".html", ".htm", ".xml", ".xhtml", ".svg")) + + @property + def debug(self) -> bool: + """Whether debug mode is enabled. When using ``flask run`` to start the + development server, an interactive debugger will be shown for unhandled + exceptions, and the server will be reloaded when code changes. This maps to the + :data:`DEBUG` config key. It may not behave as expected if set late. + + **Do not enable debug mode when deploying in production.** + + Default: ``False`` + """ + return self.config["DEBUG"] # type: ignore[no-any-return] + + @debug.setter + def debug(self, value: bool) -> None: + self.config["DEBUG"] = value + + if self.config["TEMPLATES_AUTO_RELOAD"] is None: + self.jinja_env.auto_reload = value + + @setupmethod + def register_blueprint(self, blueprint: Blueprint, **options: t.Any) -> None: + """Register a :class:`~flask.Blueprint` on the application. Keyword + arguments passed to this method will override the defaults set on the + blueprint. + + Calls the blueprint's :meth:`~flask.Blueprint.register` method after + recording the blueprint in the application's :attr:`blueprints`. + + :param blueprint: The blueprint to register. + :param url_prefix: Blueprint routes will be prefixed with this. + :param subdomain: Blueprint routes will match on this subdomain. + :param url_defaults: Blueprint routes will use these default values for + view arguments. + :param options: Additional keyword arguments are passed to + :class:`~flask.blueprints.BlueprintSetupState`. They can be + accessed in :meth:`~flask.Blueprint.record` callbacks. + + .. versionchanged:: 2.0.1 + The ``name`` option can be used to change the (pre-dotted) + name the blueprint is registered with. This allows the same + blueprint to be registered multiple times with unique names + for ``url_for``. + + .. versionadded:: 0.7 + """ + blueprint.register(self, options) + + def iter_blueprints(self) -> t.ValuesView[Blueprint]: + """Iterates over all blueprints by the order they were registered. + + .. versionadded:: 0.11 + """ + return self.blueprints.values() + + @setupmethod + def add_url_rule( + self, + rule: str, + endpoint: str | None = None, + view_func: ft.RouteCallable | None = None, + provide_automatic_options: bool | None = None, + **options: t.Any, + ) -> None: + if endpoint is None: + endpoint = _endpoint_from_view_func(view_func) # type: ignore + options["endpoint"] = endpoint + methods = options.pop("methods", None) + + # if the methods are not given and the view_func object knows its + # methods we can use that instead. If neither exists, we go with + # a tuple of only ``GET`` as default. + if methods is None: + methods = getattr(view_func, "methods", None) or ("GET",) + if isinstance(methods, str): + raise TypeError( + "Allowed methods must be a list of strings, for" + ' example: @app.route(..., methods=["POST"])' + ) + methods = {item.upper() for item in methods} + + # Methods that should always be added + required_methods: set[str] = set(getattr(view_func, "required_methods", ())) + + # starting with Flask 0.8 the view_func object can disable and + # force-enable the automatic options handling. + if provide_automatic_options is None: + provide_automatic_options = getattr( + view_func, "provide_automatic_options", None + ) + + if provide_automatic_options is None: + if "OPTIONS" not in methods and self.config["PROVIDE_AUTOMATIC_OPTIONS"]: + provide_automatic_options = True + required_methods.add("OPTIONS") + else: + provide_automatic_options = False + + # Add the required methods now. + methods |= required_methods + + rule_obj = self.url_rule_class(rule, methods=methods, **options) + rule_obj.provide_automatic_options = provide_automatic_options # type: ignore[attr-defined] + + self.url_map.add(rule_obj) + if view_func is not None: + old_func = self.view_functions.get(endpoint) + if old_func is not None and old_func != view_func: + raise AssertionError( + "View function mapping is overwriting an existing" + f" endpoint function: {endpoint}" + ) + self.view_functions[endpoint] = view_func + + @setupmethod + def template_filter( + self, name: str | None = None + ) -> t.Callable[[T_template_filter], T_template_filter]: + """A decorator that is used to register custom template filter. + You can specify a name for the filter, otherwise the function + name will be used. Example:: + + @app.template_filter() + def reverse(s): + return s[::-1] + + :param name: the optional name of the filter, otherwise the + function name will be used. + """ + + def decorator(f: T_template_filter) -> T_template_filter: + self.add_template_filter(f, name=name) + return f + + return decorator + + @setupmethod + def add_template_filter( + self, f: ft.TemplateFilterCallable, name: str | None = None + ) -> None: + """Register a custom template filter. Works exactly like the + :meth:`template_filter` decorator. + + :param name: the optional name of the filter, otherwise the + function name will be used. + """ + self.jinja_env.filters[name or f.__name__] = f + + @setupmethod + def template_test( + self, name: str | None = None + ) -> t.Callable[[T_template_test], T_template_test]: + """A decorator that is used to register custom template test. + You can specify a name for the test, otherwise the function + name will be used. Example:: + + @app.template_test() + def is_prime(n): + if n == 2: + return True + for i in range(2, int(math.ceil(math.sqrt(n))) + 1): + if n % i == 0: + return False + return True + + .. versionadded:: 0.10 + + :param name: the optional name of the test, otherwise the + function name will be used. + """ + + def decorator(f: T_template_test) -> T_template_test: + self.add_template_test(f, name=name) + return f + + return decorator + + @setupmethod + def add_template_test( + self, f: ft.TemplateTestCallable, name: str | None = None + ) -> None: + """Register a custom template test. Works exactly like the + :meth:`template_test` decorator. + + .. versionadded:: 0.10 + + :param name: the optional name of the test, otherwise the + function name will be used. + """ + self.jinja_env.tests[name or f.__name__] = f + + @setupmethod + def template_global( + self, name: str | None = None + ) -> t.Callable[[T_template_global], T_template_global]: + """A decorator that is used to register a custom template global function. + You can specify a name for the global function, otherwise the function + name will be used. Example:: + + @app.template_global() + def double(n): + return 2 * n + + .. versionadded:: 0.10 + + :param name: the optional name of the global function, otherwise the + function name will be used. + """ + + def decorator(f: T_template_global) -> T_template_global: + self.add_template_global(f, name=name) + return f + + return decorator + + @setupmethod + def add_template_global( + self, f: ft.TemplateGlobalCallable, name: str | None = None + ) -> None: + """Register a custom template global function. Works exactly like the + :meth:`template_global` decorator. + + .. versionadded:: 0.10 + + :param name: the optional name of the global function, otherwise the + function name will be used. + """ + self.jinja_env.globals[name or f.__name__] = f + + @setupmethod + def teardown_appcontext(self, f: T_teardown) -> T_teardown: + """Registers a function to be called when the application + context is popped. The application context is typically popped + after the request context for each request, at the end of CLI + commands, or after a manually pushed context ends. + + .. code-block:: python + + with app.app_context(): + ... + + When the ``with`` block exits (or ``ctx.pop()`` is called), the + teardown functions are called just before the app context is + made inactive. Since a request context typically also manages an + application context it would also be called when you pop a + request context. + + When a teardown function was called because of an unhandled + exception it will be passed an error object. If an + :meth:`errorhandler` is registered, it will handle the exception + and the teardown will not receive it. + + Teardown functions must avoid raising exceptions. If they + execute code that might fail they must surround that code with a + ``try``/``except`` block and log any errors. + + The return values of teardown functions are ignored. + + .. versionadded:: 0.9 + """ + self.teardown_appcontext_funcs.append(f) + return f + + @setupmethod + def shell_context_processor( + self, f: T_shell_context_processor + ) -> T_shell_context_processor: + """Registers a shell context processor function. + + .. versionadded:: 0.11 + """ + self.shell_context_processors.append(f) + return f + + def _find_error_handler( + self, e: Exception, blueprints: list[str] + ) -> ft.ErrorHandlerCallable | None: + """Return a registered error handler for an exception in this order: + blueprint handler for a specific code, app handler for a specific code, + blueprint handler for an exception class, app handler for an exception + class, or ``None`` if a suitable handler is not found. + """ + exc_class, code = self._get_exc_class_and_code(type(e)) + names = (*blueprints, None) + + for c in (code, None) if code is not None else (None,): + for name in names: + handler_map = self.error_handler_spec[name][c] + + if not handler_map: + continue + + for cls in exc_class.__mro__: + handler = handler_map.get(cls) + + if handler is not None: + return handler + return None + + def trap_http_exception(self, e: Exception) -> bool: + """Checks if an HTTP exception should be trapped or not. By default + this will return ``False`` for all exceptions except for a bad request + key error if ``TRAP_BAD_REQUEST_ERRORS`` is set to ``True``. It + also returns ``True`` if ``TRAP_HTTP_EXCEPTIONS`` is set to ``True``. + + This is called for all HTTP exceptions raised by a view function. + If it returns ``True`` for any exception the error handler for this + exception is not called and it shows up as regular exception in the + traceback. This is helpful for debugging implicitly raised HTTP + exceptions. + + .. versionchanged:: 1.0 + Bad request errors are not trapped by default in debug mode. + + .. versionadded:: 0.8 + """ + if self.config["TRAP_HTTP_EXCEPTIONS"]: + return True + + trap_bad_request = self.config["TRAP_BAD_REQUEST_ERRORS"] + + # if unset, trap key errors in debug mode + if ( + trap_bad_request is None + and self.debug + and isinstance(e, BadRequestKeyError) + ): + return True + + if trap_bad_request: + return isinstance(e, BadRequest) + + return False + + def should_ignore_error(self, error: BaseException | None) -> bool: + """This is called to figure out if an error should be ignored + or not as far as the teardown system is concerned. If this + function returns ``True`` then the teardown handlers will not be + passed the error. + + .. versionadded:: 0.10 + """ + return False + + def redirect(self, location: str, code: int = 302) -> BaseResponse: + """Create a redirect response object. + + This is called by :func:`flask.redirect`, and can be called + directly as well. + + :param location: The URL to redirect to. + :param code: The status code for the redirect. + + .. versionadded:: 2.2 + Moved from ``flask.redirect``, which calls this method. + """ + return _wz_redirect( + location, + code=code, + Response=self.response_class, # type: ignore[arg-type] + ) + + def inject_url_defaults(self, endpoint: str, values: dict[str, t.Any]) -> None: + """Injects the URL defaults for the given endpoint directly into + the values dictionary passed. This is used internally and + automatically called on URL building. + + .. versionadded:: 0.7 + """ + names: t.Iterable[str | None] = (None,) + + # url_for may be called outside a request context, parse the + # passed endpoint instead of using request.blueprints. + if "." in endpoint: + names = chain( + names, reversed(_split_blueprint_path(endpoint.rpartition(".")[0])) + ) + + for name in names: + if name in self.url_default_functions: + for func in self.url_default_functions[name]: + func(endpoint, values) + + def handle_url_build_error( + self, error: BuildError, endpoint: str, values: dict[str, t.Any] + ) -> str: + """Called by :meth:`.url_for` if a + :exc:`~werkzeug.routing.BuildError` was raised. If this returns + a value, it will be returned by ``url_for``, otherwise the error + will be re-raised. + + Each function in :attr:`url_build_error_handlers` is called with + ``error``, ``endpoint`` and ``values``. If a function returns + ``None`` or raises a ``BuildError``, it is skipped. Otherwise, + its return value is returned by ``url_for``. + + :param error: The active ``BuildError`` being handled. + :param endpoint: The endpoint being built. + :param values: The keyword arguments passed to ``url_for``. + """ + for handler in self.url_build_error_handlers: + try: + rv = handler(error, endpoint, values) + except BuildError as e: + # make error available outside except block + error = e + else: + if rv is not None: + return rv + + # Re-raise if called with an active exception, otherwise raise + # the passed in exception. + if error is sys.exc_info()[1]: + raise + + raise error diff --git a/venv/lib/python3.9/site-packages/flask/sansio/blueprints.py b/venv/lib/python3.9/site-packages/flask/sansio/blueprints.py new file mode 100644 index 0000000..4f912cc --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/sansio/blueprints.py @@ -0,0 +1,632 @@ +from __future__ import annotations + +import os +import typing as t +from collections import defaultdict +from functools import update_wrapper + +from .. import typing as ft +from .scaffold import _endpoint_from_view_func +from .scaffold import _sentinel +from .scaffold import Scaffold +from .scaffold import setupmethod + +if t.TYPE_CHECKING: # pragma: no cover + from .app import App + +DeferredSetupFunction = t.Callable[["BlueprintSetupState"], None] +T_after_request = t.TypeVar("T_after_request", bound=ft.AfterRequestCallable[t.Any]) +T_before_request = t.TypeVar("T_before_request", bound=ft.BeforeRequestCallable) +T_error_handler = t.TypeVar("T_error_handler", bound=ft.ErrorHandlerCallable) +T_teardown = t.TypeVar("T_teardown", bound=ft.TeardownCallable) +T_template_context_processor = t.TypeVar( + "T_template_context_processor", bound=ft.TemplateContextProcessorCallable +) +T_template_filter = t.TypeVar("T_template_filter", bound=ft.TemplateFilterCallable) +T_template_global = t.TypeVar("T_template_global", bound=ft.TemplateGlobalCallable) +T_template_test = t.TypeVar("T_template_test", bound=ft.TemplateTestCallable) +T_url_defaults = t.TypeVar("T_url_defaults", bound=ft.URLDefaultCallable) +T_url_value_preprocessor = t.TypeVar( + "T_url_value_preprocessor", bound=ft.URLValuePreprocessorCallable +) + + +class BlueprintSetupState: + """Temporary holder object for registering a blueprint with the + application. An instance of this class is created by the + :meth:`~flask.Blueprint.make_setup_state` method and later passed + to all register callback functions. + """ + + def __init__( + self, + blueprint: Blueprint, + app: App, + options: t.Any, + first_registration: bool, + ) -> None: + #: a reference to the current application + self.app = app + + #: a reference to the blueprint that created this setup state. + self.blueprint = blueprint + + #: a dictionary with all options that were passed to the + #: :meth:`~flask.Flask.register_blueprint` method. + self.options = options + + #: as blueprints can be registered multiple times with the + #: application and not everything wants to be registered + #: multiple times on it, this attribute can be used to figure + #: out if the blueprint was registered in the past already. + self.first_registration = first_registration + + subdomain = self.options.get("subdomain") + if subdomain is None: + subdomain = self.blueprint.subdomain + + #: The subdomain that the blueprint should be active for, ``None`` + #: otherwise. + self.subdomain = subdomain + + url_prefix = self.options.get("url_prefix") + if url_prefix is None: + url_prefix = self.blueprint.url_prefix + #: The prefix that should be used for all URLs defined on the + #: blueprint. + self.url_prefix = url_prefix + + self.name = self.options.get("name", blueprint.name) + self.name_prefix = self.options.get("name_prefix", "") + + #: A dictionary with URL defaults that is added to each and every + #: URL that was defined with the blueprint. + self.url_defaults = dict(self.blueprint.url_values_defaults) + self.url_defaults.update(self.options.get("url_defaults", ())) + + def add_url_rule( + self, + rule: str, + endpoint: str | None = None, + view_func: ft.RouteCallable | None = None, + **options: t.Any, + ) -> None: + """A helper method to register a rule (and optionally a view function) + to the application. The endpoint is automatically prefixed with the + blueprint's name. + """ + if self.url_prefix is not None: + if rule: + rule = "/".join((self.url_prefix.rstrip("/"), rule.lstrip("/"))) + else: + rule = self.url_prefix + options.setdefault("subdomain", self.subdomain) + if endpoint is None: + endpoint = _endpoint_from_view_func(view_func) # type: ignore + defaults = self.url_defaults + if "defaults" in options: + defaults = dict(defaults, **options.pop("defaults")) + + self.app.add_url_rule( + rule, + f"{self.name_prefix}.{self.name}.{endpoint}".lstrip("."), + view_func, + defaults=defaults, + **options, + ) + + +class Blueprint(Scaffold): + """Represents a blueprint, a collection of routes and other + app-related functions that can be registered on a real application + later. + + A blueprint is an object that allows defining application functions + without requiring an application object ahead of time. It uses the + same decorators as :class:`~flask.Flask`, but defers the need for an + application by recording them for later registration. + + Decorating a function with a blueprint creates a deferred function + that is called with :class:`~flask.blueprints.BlueprintSetupState` + when the blueprint is registered on an application. + + See :doc:`/blueprints` for more information. + + :param name: The name of the blueprint. Will be prepended to each + endpoint name. + :param import_name: The name of the blueprint package, usually + ``__name__``. This helps locate the ``root_path`` for the + blueprint. + :param static_folder: A folder with static files that should be + served by the blueprint's static route. The path is relative to + the blueprint's root path. Blueprint static files are disabled + by default. + :param static_url_path: The url to serve static files from. + Defaults to ``static_folder``. If the blueprint does not have + a ``url_prefix``, the app's static route will take precedence, + and the blueprint's static files won't be accessible. + :param template_folder: A folder with templates that should be added + to the app's template search path. The path is relative to the + blueprint's root path. Blueprint templates are disabled by + default. Blueprint templates have a lower precedence than those + in the app's templates folder. + :param url_prefix: A path to prepend to all of the blueprint's URLs, + to make them distinct from the rest of the app's routes. + :param subdomain: A subdomain that blueprint routes will match on by + default. + :param url_defaults: A dict of default values that blueprint routes + will receive by default. + :param root_path: By default, the blueprint will automatically set + this based on ``import_name``. In certain situations this + automatic detection can fail, so the path can be specified + manually instead. + + .. versionchanged:: 1.1.0 + Blueprints have a ``cli`` group to register nested CLI commands. + The ``cli_group`` parameter controls the name of the group under + the ``flask`` command. + + .. versionadded:: 0.7 + """ + + _got_registered_once = False + + def __init__( + self, + name: str, + import_name: str, + static_folder: str | os.PathLike[str] | None = None, + static_url_path: str | None = None, + template_folder: str | os.PathLike[str] | None = None, + url_prefix: str | None = None, + subdomain: str | None = None, + url_defaults: dict[str, t.Any] | None = None, + root_path: str | None = None, + cli_group: str | None = _sentinel, # type: ignore[assignment] + ): + super().__init__( + import_name=import_name, + static_folder=static_folder, + static_url_path=static_url_path, + template_folder=template_folder, + root_path=root_path, + ) + + if not name: + raise ValueError("'name' may not be empty.") + + if "." in name: + raise ValueError("'name' may not contain a dot '.' character.") + + self.name = name + self.url_prefix = url_prefix + self.subdomain = subdomain + self.deferred_functions: list[DeferredSetupFunction] = [] + + if url_defaults is None: + url_defaults = {} + + self.url_values_defaults = url_defaults + self.cli_group = cli_group + self._blueprints: list[tuple[Blueprint, dict[str, t.Any]]] = [] + + def _check_setup_finished(self, f_name: str) -> None: + if self._got_registered_once: + raise AssertionError( + f"The setup method '{f_name}' can no longer be called on the blueprint" + f" '{self.name}'. It has already been registered at least once, any" + " changes will not be applied consistently.\n" + "Make sure all imports, decorators, functions, etc. needed to set up" + " the blueprint are done before registering it." + ) + + @setupmethod + def record(self, func: DeferredSetupFunction) -> None: + """Registers a function that is called when the blueprint is + registered on the application. This function is called with the + state as argument as returned by the :meth:`make_setup_state` + method. + """ + self.deferred_functions.append(func) + + @setupmethod + def record_once(self, func: DeferredSetupFunction) -> None: + """Works like :meth:`record` but wraps the function in another + function that will ensure the function is only called once. If the + blueprint is registered a second time on the application, the + function passed is not called. + """ + + def wrapper(state: BlueprintSetupState) -> None: + if state.first_registration: + func(state) + + self.record(update_wrapper(wrapper, func)) + + def make_setup_state( + self, app: App, options: dict[str, t.Any], first_registration: bool = False + ) -> BlueprintSetupState: + """Creates an instance of :meth:`~flask.blueprints.BlueprintSetupState` + object that is later passed to the register callback functions. + Subclasses can override this to return a subclass of the setup state. + """ + return BlueprintSetupState(self, app, options, first_registration) + + @setupmethod + def register_blueprint(self, blueprint: Blueprint, **options: t.Any) -> None: + """Register a :class:`~flask.Blueprint` on this blueprint. Keyword + arguments passed to this method will override the defaults set + on the blueprint. + + .. versionchanged:: 2.0.1 + The ``name`` option can be used to change the (pre-dotted) + name the blueprint is registered with. This allows the same + blueprint to be registered multiple times with unique names + for ``url_for``. + + .. versionadded:: 2.0 + """ + if blueprint is self: + raise ValueError("Cannot register a blueprint on itself") + self._blueprints.append((blueprint, options)) + + def register(self, app: App, options: dict[str, t.Any]) -> None: + """Called by :meth:`Flask.register_blueprint` to register all + views and callbacks registered on the blueprint with the + application. Creates a :class:`.BlueprintSetupState` and calls + each :meth:`record` callback with it. + + :param app: The application this blueprint is being registered + with. + :param options: Keyword arguments forwarded from + :meth:`~Flask.register_blueprint`. + + .. versionchanged:: 2.3 + Nested blueprints now correctly apply subdomains. + + .. versionchanged:: 2.1 + Registering the same blueprint with the same name multiple + times is an error. + + .. versionchanged:: 2.0.1 + Nested blueprints are registered with their dotted name. + This allows different blueprints with the same name to be + nested at different locations. + + .. versionchanged:: 2.0.1 + The ``name`` option can be used to change the (pre-dotted) + name the blueprint is registered with. This allows the same + blueprint to be registered multiple times with unique names + for ``url_for``. + """ + name_prefix = options.get("name_prefix", "") + self_name = options.get("name", self.name) + name = f"{name_prefix}.{self_name}".lstrip(".") + + if name in app.blueprints: + bp_desc = "this" if app.blueprints[name] is self else "a different" + existing_at = f" '{name}'" if self_name != name else "" + + raise ValueError( + f"The name '{self_name}' is already registered for" + f" {bp_desc} blueprint{existing_at}. Use 'name=' to" + f" provide a unique name." + ) + + first_bp_registration = not any(bp is self for bp in app.blueprints.values()) + first_name_registration = name not in app.blueprints + + app.blueprints[name] = self + self._got_registered_once = True + state = self.make_setup_state(app, options, first_bp_registration) + + if self.has_static_folder: + state.add_url_rule( + f"{self.static_url_path}/", + view_func=self.send_static_file, # type: ignore[attr-defined] + endpoint="static", + ) + + # Merge blueprint data into parent. + if first_bp_registration or first_name_registration: + self._merge_blueprint_funcs(app, name) + + for deferred in self.deferred_functions: + deferred(state) + + cli_resolved_group = options.get("cli_group", self.cli_group) + + if self.cli.commands: + if cli_resolved_group is None: + app.cli.commands.update(self.cli.commands) + elif cli_resolved_group is _sentinel: + self.cli.name = name + app.cli.add_command(self.cli) + else: + self.cli.name = cli_resolved_group + app.cli.add_command(self.cli) + + for blueprint, bp_options in self._blueprints: + bp_options = bp_options.copy() + bp_url_prefix = bp_options.get("url_prefix") + bp_subdomain = bp_options.get("subdomain") + + if bp_subdomain is None: + bp_subdomain = blueprint.subdomain + + if state.subdomain is not None and bp_subdomain is not None: + bp_options["subdomain"] = bp_subdomain + "." + state.subdomain + elif bp_subdomain is not None: + bp_options["subdomain"] = bp_subdomain + elif state.subdomain is not None: + bp_options["subdomain"] = state.subdomain + + if bp_url_prefix is None: + bp_url_prefix = blueprint.url_prefix + + if state.url_prefix is not None and bp_url_prefix is not None: + bp_options["url_prefix"] = ( + state.url_prefix.rstrip("/") + "/" + bp_url_prefix.lstrip("/") + ) + elif bp_url_prefix is not None: + bp_options["url_prefix"] = bp_url_prefix + elif state.url_prefix is not None: + bp_options["url_prefix"] = state.url_prefix + + bp_options["name_prefix"] = name + blueprint.register(app, bp_options) + + def _merge_blueprint_funcs(self, app: App, name: str) -> None: + def extend( + bp_dict: dict[ft.AppOrBlueprintKey, list[t.Any]], + parent_dict: dict[ft.AppOrBlueprintKey, list[t.Any]], + ) -> None: + for key, values in bp_dict.items(): + key = name if key is None else f"{name}.{key}" + parent_dict[key].extend(values) + + for key, value in self.error_handler_spec.items(): + key = name if key is None else f"{name}.{key}" + value = defaultdict( + dict, + { + code: {exc_class: func for exc_class, func in code_values.items()} + for code, code_values in value.items() + }, + ) + app.error_handler_spec[key] = value + + for endpoint, func in self.view_functions.items(): + app.view_functions[endpoint] = func + + extend(self.before_request_funcs, app.before_request_funcs) + extend(self.after_request_funcs, app.after_request_funcs) + extend( + self.teardown_request_funcs, + app.teardown_request_funcs, + ) + extend(self.url_default_functions, app.url_default_functions) + extend(self.url_value_preprocessors, app.url_value_preprocessors) + extend(self.template_context_processors, app.template_context_processors) + + @setupmethod + def add_url_rule( + self, + rule: str, + endpoint: str | None = None, + view_func: ft.RouteCallable | None = None, + provide_automatic_options: bool | None = None, + **options: t.Any, + ) -> None: + """Register a URL rule with the blueprint. See :meth:`.Flask.add_url_rule` for + full documentation. + + The URL rule is prefixed with the blueprint's URL prefix. The endpoint name, + used with :func:`url_for`, is prefixed with the blueprint's name. + """ + if endpoint and "." in endpoint: + raise ValueError("'endpoint' may not contain a dot '.' character.") + + if view_func and hasattr(view_func, "__name__") and "." in view_func.__name__: + raise ValueError("'view_func' name may not contain a dot '.' character.") + + self.record( + lambda s: s.add_url_rule( + rule, + endpoint, + view_func, + provide_automatic_options=provide_automatic_options, + **options, + ) + ) + + @setupmethod + def app_template_filter( + self, name: str | None = None + ) -> t.Callable[[T_template_filter], T_template_filter]: + """Register a template filter, available in any template rendered by the + application. Equivalent to :meth:`.Flask.template_filter`. + + :param name: the optional name of the filter, otherwise the + function name will be used. + """ + + def decorator(f: T_template_filter) -> T_template_filter: + self.add_app_template_filter(f, name=name) + return f + + return decorator + + @setupmethod + def add_app_template_filter( + self, f: ft.TemplateFilterCallable, name: str | None = None + ) -> None: + """Register a template filter, available in any template rendered by the + application. Works like the :meth:`app_template_filter` decorator. Equivalent to + :meth:`.Flask.add_template_filter`. + + :param name: the optional name of the filter, otherwise the + function name will be used. + """ + + def register_template(state: BlueprintSetupState) -> None: + state.app.jinja_env.filters[name or f.__name__] = f + + self.record_once(register_template) + + @setupmethod + def app_template_test( + self, name: str | None = None + ) -> t.Callable[[T_template_test], T_template_test]: + """Register a template test, available in any template rendered by the + application. Equivalent to :meth:`.Flask.template_test`. + + .. versionadded:: 0.10 + + :param name: the optional name of the test, otherwise the + function name will be used. + """ + + def decorator(f: T_template_test) -> T_template_test: + self.add_app_template_test(f, name=name) + return f + + return decorator + + @setupmethod + def add_app_template_test( + self, f: ft.TemplateTestCallable, name: str | None = None + ) -> None: + """Register a template test, available in any template rendered by the + application. Works like the :meth:`app_template_test` decorator. Equivalent to + :meth:`.Flask.add_template_test`. + + .. versionadded:: 0.10 + + :param name: the optional name of the test, otherwise the + function name will be used. + """ + + def register_template(state: BlueprintSetupState) -> None: + state.app.jinja_env.tests[name or f.__name__] = f + + self.record_once(register_template) + + @setupmethod + def app_template_global( + self, name: str | None = None + ) -> t.Callable[[T_template_global], T_template_global]: + """Register a template global, available in any template rendered by the + application. Equivalent to :meth:`.Flask.template_global`. + + .. versionadded:: 0.10 + + :param name: the optional name of the global, otherwise the + function name will be used. + """ + + def decorator(f: T_template_global) -> T_template_global: + self.add_app_template_global(f, name=name) + return f + + return decorator + + @setupmethod + def add_app_template_global( + self, f: ft.TemplateGlobalCallable, name: str | None = None + ) -> None: + """Register a template global, available in any template rendered by the + application. Works like the :meth:`app_template_global` decorator. Equivalent to + :meth:`.Flask.add_template_global`. + + .. versionadded:: 0.10 + + :param name: the optional name of the global, otherwise the + function name will be used. + """ + + def register_template(state: BlueprintSetupState) -> None: + state.app.jinja_env.globals[name or f.__name__] = f + + self.record_once(register_template) + + @setupmethod + def before_app_request(self, f: T_before_request) -> T_before_request: + """Like :meth:`before_request`, but before every request, not only those handled + by the blueprint. Equivalent to :meth:`.Flask.before_request`. + """ + self.record_once( + lambda s: s.app.before_request_funcs.setdefault(None, []).append(f) + ) + return f + + @setupmethod + def after_app_request(self, f: T_after_request) -> T_after_request: + """Like :meth:`after_request`, but after every request, not only those handled + by the blueprint. Equivalent to :meth:`.Flask.after_request`. + """ + self.record_once( + lambda s: s.app.after_request_funcs.setdefault(None, []).append(f) + ) + return f + + @setupmethod + def teardown_app_request(self, f: T_teardown) -> T_teardown: + """Like :meth:`teardown_request`, but after every request, not only those + handled by the blueprint. Equivalent to :meth:`.Flask.teardown_request`. + """ + self.record_once( + lambda s: s.app.teardown_request_funcs.setdefault(None, []).append(f) + ) + return f + + @setupmethod + def app_context_processor( + self, f: T_template_context_processor + ) -> T_template_context_processor: + """Like :meth:`context_processor`, but for templates rendered by every view, not + only by the blueprint. Equivalent to :meth:`.Flask.context_processor`. + """ + self.record_once( + lambda s: s.app.template_context_processors.setdefault(None, []).append(f) + ) + return f + + @setupmethod + def app_errorhandler( + self, code: type[Exception] | int + ) -> t.Callable[[T_error_handler], T_error_handler]: + """Like :meth:`errorhandler`, but for every request, not only those handled by + the blueprint. Equivalent to :meth:`.Flask.errorhandler`. + """ + + def decorator(f: T_error_handler) -> T_error_handler: + def from_blueprint(state: BlueprintSetupState) -> None: + state.app.errorhandler(code)(f) + + self.record_once(from_blueprint) + return f + + return decorator + + @setupmethod + def app_url_value_preprocessor( + self, f: T_url_value_preprocessor + ) -> T_url_value_preprocessor: + """Like :meth:`url_value_preprocessor`, but for every request, not only those + handled by the blueprint. Equivalent to :meth:`.Flask.url_value_preprocessor`. + """ + self.record_once( + lambda s: s.app.url_value_preprocessors.setdefault(None, []).append(f) + ) + return f + + @setupmethod + def app_url_defaults(self, f: T_url_defaults) -> T_url_defaults: + """Like :meth:`url_defaults`, but for every request, not only those handled by + the blueprint. Equivalent to :meth:`.Flask.url_defaults`. + """ + self.record_once( + lambda s: s.app.url_default_functions.setdefault(None, []).append(f) + ) + return f diff --git a/venv/lib/python3.9/site-packages/flask/sansio/scaffold.py b/venv/lib/python3.9/site-packages/flask/sansio/scaffold.py new file mode 100644 index 0000000..0e96f15 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/sansio/scaffold.py @@ -0,0 +1,792 @@ +from __future__ import annotations + +import importlib.util +import os +import pathlib +import sys +import typing as t +from collections import defaultdict +from functools import update_wrapper + +from jinja2 import BaseLoader +from jinja2 import FileSystemLoader +from werkzeug.exceptions import default_exceptions +from werkzeug.exceptions import HTTPException +from werkzeug.utils import cached_property + +from .. import typing as ft +from ..helpers import get_root_path +from ..templating import _default_template_ctx_processor + +if t.TYPE_CHECKING: # pragma: no cover + from click import Group + +# a singleton sentinel value for parameter defaults +_sentinel = object() + +F = t.TypeVar("F", bound=t.Callable[..., t.Any]) +T_after_request = t.TypeVar("T_after_request", bound=ft.AfterRequestCallable[t.Any]) +T_before_request = t.TypeVar("T_before_request", bound=ft.BeforeRequestCallable) +T_error_handler = t.TypeVar("T_error_handler", bound=ft.ErrorHandlerCallable) +T_teardown = t.TypeVar("T_teardown", bound=ft.TeardownCallable) +T_template_context_processor = t.TypeVar( + "T_template_context_processor", bound=ft.TemplateContextProcessorCallable +) +T_url_defaults = t.TypeVar("T_url_defaults", bound=ft.URLDefaultCallable) +T_url_value_preprocessor = t.TypeVar( + "T_url_value_preprocessor", bound=ft.URLValuePreprocessorCallable +) +T_route = t.TypeVar("T_route", bound=ft.RouteCallable) + + +def setupmethod(f: F) -> F: + f_name = f.__name__ + + def wrapper_func(self: Scaffold, *args: t.Any, **kwargs: t.Any) -> t.Any: + self._check_setup_finished(f_name) + return f(self, *args, **kwargs) + + return t.cast(F, update_wrapper(wrapper_func, f)) + + +class Scaffold: + """Common behavior shared between :class:`~flask.Flask` and + :class:`~flask.blueprints.Blueprint`. + + :param import_name: The import name of the module where this object + is defined. Usually :attr:`__name__` should be used. + :param static_folder: Path to a folder of static files to serve. + If this is set, a static route will be added. + :param static_url_path: URL prefix for the static route. + :param template_folder: Path to a folder containing template files. + for rendering. If this is set, a Jinja loader will be added. + :param root_path: The path that static, template, and resource files + are relative to. Typically not set, it is discovered based on + the ``import_name``. + + .. versionadded:: 2.0 + """ + + cli: Group + name: str + _static_folder: str | None = None + _static_url_path: str | None = None + + def __init__( + self, + import_name: str, + static_folder: str | os.PathLike[str] | None = None, + static_url_path: str | None = None, + template_folder: str | os.PathLike[str] | None = None, + root_path: str | None = None, + ): + #: The name of the package or module that this object belongs + #: to. Do not change this once it is set by the constructor. + self.import_name = import_name + + self.static_folder = static_folder + self.static_url_path = static_url_path + + #: The path to the templates folder, relative to + #: :attr:`root_path`, to add to the template loader. ``None`` if + #: templates should not be added. + self.template_folder = template_folder + + if root_path is None: + root_path = get_root_path(self.import_name) + + #: Absolute path to the package on the filesystem. Used to look + #: up resources contained in the package. + self.root_path = root_path + + #: A dictionary mapping endpoint names to view functions. + #: + #: To register a view function, use the :meth:`route` decorator. + #: + #: This data structure is internal. It should not be modified + #: directly and its format may change at any time. + self.view_functions: dict[str, ft.RouteCallable] = {} + + #: A data structure of registered error handlers, in the format + #: ``{scope: {code: {class: handler}}}``. The ``scope`` key is + #: the name of a blueprint the handlers are active for, or + #: ``None`` for all requests. The ``code`` key is the HTTP + #: status code for ``HTTPException``, or ``None`` for + #: other exceptions. The innermost dictionary maps exception + #: classes to handler functions. + #: + #: To register an error handler, use the :meth:`errorhandler` + #: decorator. + #: + #: This data structure is internal. It should not be modified + #: directly and its format may change at any time. + self.error_handler_spec: dict[ + ft.AppOrBlueprintKey, + dict[int | None, dict[type[Exception], ft.ErrorHandlerCallable]], + ] = defaultdict(lambda: defaultdict(dict)) + + #: A data structure of functions to call at the beginning of + #: each request, in the format ``{scope: [functions]}``. The + #: ``scope`` key is the name of a blueprint the functions are + #: active for, or ``None`` for all requests. + #: + #: To register a function, use the :meth:`before_request` + #: decorator. + #: + #: This data structure is internal. It should not be modified + #: directly and its format may change at any time. + self.before_request_funcs: dict[ + ft.AppOrBlueprintKey, list[ft.BeforeRequestCallable] + ] = defaultdict(list) + + #: A data structure of functions to call at the end of each + #: request, in the format ``{scope: [functions]}``. The + #: ``scope`` key is the name of a blueprint the functions are + #: active for, or ``None`` for all requests. + #: + #: To register a function, use the :meth:`after_request` + #: decorator. + #: + #: This data structure is internal. It should not be modified + #: directly and its format may change at any time. + self.after_request_funcs: dict[ + ft.AppOrBlueprintKey, list[ft.AfterRequestCallable[t.Any]] + ] = defaultdict(list) + + #: A data structure of functions to call at the end of each + #: request even if an exception is raised, in the format + #: ``{scope: [functions]}``. The ``scope`` key is the name of a + #: blueprint the functions are active for, or ``None`` for all + #: requests. + #: + #: To register a function, use the :meth:`teardown_request` + #: decorator. + #: + #: This data structure is internal. It should not be modified + #: directly and its format may change at any time. + self.teardown_request_funcs: dict[ + ft.AppOrBlueprintKey, list[ft.TeardownCallable] + ] = defaultdict(list) + + #: A data structure of functions to call to pass extra context + #: values when rendering templates, in the format + #: ``{scope: [functions]}``. The ``scope`` key is the name of a + #: blueprint the functions are active for, or ``None`` for all + #: requests. + #: + #: To register a function, use the :meth:`context_processor` + #: decorator. + #: + #: This data structure is internal. It should not be modified + #: directly and its format may change at any time. + self.template_context_processors: dict[ + ft.AppOrBlueprintKey, list[ft.TemplateContextProcessorCallable] + ] = defaultdict(list, {None: [_default_template_ctx_processor]}) + + #: A data structure of functions to call to modify the keyword + #: arguments passed to the view function, in the format + #: ``{scope: [functions]}``. The ``scope`` key is the name of a + #: blueprint the functions are active for, or ``None`` for all + #: requests. + #: + #: To register a function, use the + #: :meth:`url_value_preprocessor` decorator. + #: + #: This data structure is internal. It should not be modified + #: directly and its format may change at any time. + self.url_value_preprocessors: dict[ + ft.AppOrBlueprintKey, + list[ft.URLValuePreprocessorCallable], + ] = defaultdict(list) + + #: A data structure of functions to call to modify the keyword + #: arguments when generating URLs, in the format + #: ``{scope: [functions]}``. The ``scope`` key is the name of a + #: blueprint the functions are active for, or ``None`` for all + #: requests. + #: + #: To register a function, use the :meth:`url_defaults` + #: decorator. + #: + #: This data structure is internal. It should not be modified + #: directly and its format may change at any time. + self.url_default_functions: dict[ + ft.AppOrBlueprintKey, list[ft.URLDefaultCallable] + ] = defaultdict(list) + + def __repr__(self) -> str: + return f"<{type(self).__name__} {self.name!r}>" + + def _check_setup_finished(self, f_name: str) -> None: + raise NotImplementedError + + @property + def static_folder(self) -> str | None: + """The absolute path to the configured static folder. ``None`` + if no static folder is set. + """ + if self._static_folder is not None: + return os.path.join(self.root_path, self._static_folder) + else: + return None + + @static_folder.setter + def static_folder(self, value: str | os.PathLike[str] | None) -> None: + if value is not None: + value = os.fspath(value).rstrip(r"\/") + + self._static_folder = value + + @property + def has_static_folder(self) -> bool: + """``True`` if :attr:`static_folder` is set. + + .. versionadded:: 0.5 + """ + return self.static_folder is not None + + @property + def static_url_path(self) -> str | None: + """The URL prefix that the static route will be accessible from. + + If it was not configured during init, it is derived from + :attr:`static_folder`. + """ + if self._static_url_path is not None: + return self._static_url_path + + if self.static_folder is not None: + basename = os.path.basename(self.static_folder) + return f"/{basename}".rstrip("/") + + return None + + @static_url_path.setter + def static_url_path(self, value: str | None) -> None: + if value is not None: + value = value.rstrip("/") + + self._static_url_path = value + + @cached_property + def jinja_loader(self) -> BaseLoader | None: + """The Jinja loader for this object's templates. By default this + is a class :class:`jinja2.loaders.FileSystemLoader` to + :attr:`template_folder` if it is set. + + .. versionadded:: 0.5 + """ + if self.template_folder is not None: + return FileSystemLoader(os.path.join(self.root_path, self.template_folder)) + else: + return None + + def _method_route( + self, + method: str, + rule: str, + options: dict[str, t.Any], + ) -> t.Callable[[T_route], T_route]: + if "methods" in options: + raise TypeError("Use the 'route' decorator to use the 'methods' argument.") + + return self.route(rule, methods=[method], **options) + + @setupmethod + def get(self, rule: str, **options: t.Any) -> t.Callable[[T_route], T_route]: + """Shortcut for :meth:`route` with ``methods=["GET"]``. + + .. versionadded:: 2.0 + """ + return self._method_route("GET", rule, options) + + @setupmethod + def post(self, rule: str, **options: t.Any) -> t.Callable[[T_route], T_route]: + """Shortcut for :meth:`route` with ``methods=["POST"]``. + + .. versionadded:: 2.0 + """ + return self._method_route("POST", rule, options) + + @setupmethod + def put(self, rule: str, **options: t.Any) -> t.Callable[[T_route], T_route]: + """Shortcut for :meth:`route` with ``methods=["PUT"]``. + + .. versionadded:: 2.0 + """ + return self._method_route("PUT", rule, options) + + @setupmethod + def delete(self, rule: str, **options: t.Any) -> t.Callable[[T_route], T_route]: + """Shortcut for :meth:`route` with ``methods=["DELETE"]``. + + .. versionadded:: 2.0 + """ + return self._method_route("DELETE", rule, options) + + @setupmethod + def patch(self, rule: str, **options: t.Any) -> t.Callable[[T_route], T_route]: + """Shortcut for :meth:`route` with ``methods=["PATCH"]``. + + .. versionadded:: 2.0 + """ + return self._method_route("PATCH", rule, options) + + @setupmethod + def route(self, rule: str, **options: t.Any) -> t.Callable[[T_route], T_route]: + """Decorate a view function to register it with the given URL + rule and options. Calls :meth:`add_url_rule`, which has more + details about the implementation. + + .. code-block:: python + + @app.route("/") + def index(): + return "Hello, World!" + + See :ref:`url-route-registrations`. + + The endpoint name for the route defaults to the name of the view + function if the ``endpoint`` parameter isn't passed. + + The ``methods`` parameter defaults to ``["GET"]``. ``HEAD`` and + ``OPTIONS`` are added automatically. + + :param rule: The URL rule string. + :param options: Extra options passed to the + :class:`~werkzeug.routing.Rule` object. + """ + + def decorator(f: T_route) -> T_route: + endpoint = options.pop("endpoint", None) + self.add_url_rule(rule, endpoint, f, **options) + return f + + return decorator + + @setupmethod + def add_url_rule( + self, + rule: str, + endpoint: str | None = None, + view_func: ft.RouteCallable | None = None, + provide_automatic_options: bool | None = None, + **options: t.Any, + ) -> None: + """Register a rule for routing incoming requests and building + URLs. The :meth:`route` decorator is a shortcut to call this + with the ``view_func`` argument. These are equivalent: + + .. code-block:: python + + @app.route("/") + def index(): + ... + + .. code-block:: python + + def index(): + ... + + app.add_url_rule("/", view_func=index) + + See :ref:`url-route-registrations`. + + The endpoint name for the route defaults to the name of the view + function if the ``endpoint`` parameter isn't passed. An error + will be raised if a function has already been registered for the + endpoint. + + The ``methods`` parameter defaults to ``["GET"]``. ``HEAD`` is + always added automatically, and ``OPTIONS`` is added + automatically by default. + + ``view_func`` does not necessarily need to be passed, but if the + rule should participate in routing an endpoint name must be + associated with a view function at some point with the + :meth:`endpoint` decorator. + + .. code-block:: python + + app.add_url_rule("/", endpoint="index") + + @app.endpoint("index") + def index(): + ... + + If ``view_func`` has a ``required_methods`` attribute, those + methods are added to the passed and automatic methods. If it + has a ``provide_automatic_methods`` attribute, it is used as the + default if the parameter is not passed. + + :param rule: The URL rule string. + :param endpoint: The endpoint name to associate with the rule + and view function. Used when routing and building URLs. + Defaults to ``view_func.__name__``. + :param view_func: The view function to associate with the + endpoint name. + :param provide_automatic_options: Add the ``OPTIONS`` method and + respond to ``OPTIONS`` requests automatically. + :param options: Extra options passed to the + :class:`~werkzeug.routing.Rule` object. + """ + raise NotImplementedError + + @setupmethod + def endpoint(self, endpoint: str) -> t.Callable[[F], F]: + """Decorate a view function to register it for the given + endpoint. Used if a rule is added without a ``view_func`` with + :meth:`add_url_rule`. + + .. code-block:: python + + app.add_url_rule("/ex", endpoint="example") + + @app.endpoint("example") + def example(): + ... + + :param endpoint: The endpoint name to associate with the view + function. + """ + + def decorator(f: F) -> F: + self.view_functions[endpoint] = f + return f + + return decorator + + @setupmethod + def before_request(self, f: T_before_request) -> T_before_request: + """Register a function to run before each request. + + For example, this can be used to open a database connection, or + to load the logged in user from the session. + + .. code-block:: python + + @app.before_request + def load_user(): + if "user_id" in session: + g.user = db.session.get(session["user_id"]) + + The function will be called without any arguments. If it returns + a non-``None`` value, the value is handled as if it was the + return value from the view, and further request handling is + stopped. + + This is available on both app and blueprint objects. When used on an app, this + executes before every request. When used on a blueprint, this executes before + every request that the blueprint handles. To register with a blueprint and + execute before every request, use :meth:`.Blueprint.before_app_request`. + """ + self.before_request_funcs.setdefault(None, []).append(f) + return f + + @setupmethod + def after_request(self, f: T_after_request) -> T_after_request: + """Register a function to run after each request to this object. + + The function is called with the response object, and must return + a response object. This allows the functions to modify or + replace the response before it is sent. + + If a function raises an exception, any remaining + ``after_request`` functions will not be called. Therefore, this + should not be used for actions that must execute, such as to + close resources. Use :meth:`teardown_request` for that. + + This is available on both app and blueprint objects. When used on an app, this + executes after every request. When used on a blueprint, this executes after + every request that the blueprint handles. To register with a blueprint and + execute after every request, use :meth:`.Blueprint.after_app_request`. + """ + self.after_request_funcs.setdefault(None, []).append(f) + return f + + @setupmethod + def teardown_request(self, f: T_teardown) -> T_teardown: + """Register a function to be called when the request context is + popped. Typically this happens at the end of each request, but + contexts may be pushed manually as well during testing. + + .. code-block:: python + + with app.test_request_context(): + ... + + When the ``with`` block exits (or ``ctx.pop()`` is called), the + teardown functions are called just before the request context is + made inactive. + + When a teardown function was called because of an unhandled + exception it will be passed an error object. If an + :meth:`errorhandler` is registered, it will handle the exception + and the teardown will not receive it. + + Teardown functions must avoid raising exceptions. If they + execute code that might fail they must surround that code with a + ``try``/``except`` block and log any errors. + + The return values of teardown functions are ignored. + + This is available on both app and blueprint objects. When used on an app, this + executes after every request. When used on a blueprint, this executes after + every request that the blueprint handles. To register with a blueprint and + execute after every request, use :meth:`.Blueprint.teardown_app_request`. + """ + self.teardown_request_funcs.setdefault(None, []).append(f) + return f + + @setupmethod + def context_processor( + self, + f: T_template_context_processor, + ) -> T_template_context_processor: + """Registers a template context processor function. These functions run before + rendering a template. The keys of the returned dict are added as variables + available in the template. + + This is available on both app and blueprint objects. When used on an app, this + is called for every rendered template. When used on a blueprint, this is called + for templates rendered from the blueprint's views. To register with a blueprint + and affect every template, use :meth:`.Blueprint.app_context_processor`. + """ + self.template_context_processors[None].append(f) + return f + + @setupmethod + def url_value_preprocessor( + self, + f: T_url_value_preprocessor, + ) -> T_url_value_preprocessor: + """Register a URL value preprocessor function for all view + functions in the application. These functions will be called before the + :meth:`before_request` functions. + + The function can modify the values captured from the matched url before + they are passed to the view. For example, this can be used to pop a + common language code value and place it in ``g`` rather than pass it to + every view. + + The function is passed the endpoint name and values dict. The return + value is ignored. + + This is available on both app and blueprint objects. When used on an app, this + is called for every request. When used on a blueprint, this is called for + requests that the blueprint handles. To register with a blueprint and affect + every request, use :meth:`.Blueprint.app_url_value_preprocessor`. + """ + self.url_value_preprocessors[None].append(f) + return f + + @setupmethod + def url_defaults(self, f: T_url_defaults) -> T_url_defaults: + """Callback function for URL defaults for all view functions of the + application. It's called with the endpoint and values and should + update the values passed in place. + + This is available on both app and blueprint objects. When used on an app, this + is called for every request. When used on a blueprint, this is called for + requests that the blueprint handles. To register with a blueprint and affect + every request, use :meth:`.Blueprint.app_url_defaults`. + """ + self.url_default_functions[None].append(f) + return f + + @setupmethod + def errorhandler( + self, code_or_exception: type[Exception] | int + ) -> t.Callable[[T_error_handler], T_error_handler]: + """Register a function to handle errors by code or exception class. + + A decorator that is used to register a function given an + error code. Example:: + + @app.errorhandler(404) + def page_not_found(error): + return 'This page does not exist', 404 + + You can also register handlers for arbitrary exceptions:: + + @app.errorhandler(DatabaseError) + def special_exception_handler(error): + return 'Database connection failed', 500 + + This is available on both app and blueprint objects. When used on an app, this + can handle errors from every request. When used on a blueprint, this can handle + errors from requests that the blueprint handles. To register with a blueprint + and affect every request, use :meth:`.Blueprint.app_errorhandler`. + + .. versionadded:: 0.7 + Use :meth:`register_error_handler` instead of modifying + :attr:`error_handler_spec` directly, for application wide error + handlers. + + .. versionadded:: 0.7 + One can now additionally also register custom exception types + that do not necessarily have to be a subclass of the + :class:`~werkzeug.exceptions.HTTPException` class. + + :param code_or_exception: the code as integer for the handler, or + an arbitrary exception + """ + + def decorator(f: T_error_handler) -> T_error_handler: + self.register_error_handler(code_or_exception, f) + return f + + return decorator + + @setupmethod + def register_error_handler( + self, + code_or_exception: type[Exception] | int, + f: ft.ErrorHandlerCallable, + ) -> None: + """Alternative error attach function to the :meth:`errorhandler` + decorator that is more straightforward to use for non decorator + usage. + + .. versionadded:: 0.7 + """ + exc_class, code = self._get_exc_class_and_code(code_or_exception) + self.error_handler_spec[None][code][exc_class] = f + + @staticmethod + def _get_exc_class_and_code( + exc_class_or_code: type[Exception] | int, + ) -> tuple[type[Exception], int | None]: + """Get the exception class being handled. For HTTP status codes + or ``HTTPException`` subclasses, return both the exception and + status code. + + :param exc_class_or_code: Any exception class, or an HTTP status + code as an integer. + """ + exc_class: type[Exception] + + if isinstance(exc_class_or_code, int): + try: + exc_class = default_exceptions[exc_class_or_code] + except KeyError: + raise ValueError( + f"'{exc_class_or_code}' is not a recognized HTTP" + " error code. Use a subclass of HTTPException with" + " that code instead." + ) from None + else: + exc_class = exc_class_or_code + + if isinstance(exc_class, Exception): + raise TypeError( + f"{exc_class!r} is an instance, not a class. Handlers" + " can only be registered for Exception classes or HTTP" + " error codes." + ) + + if not issubclass(exc_class, Exception): + raise ValueError( + f"'{exc_class.__name__}' is not a subclass of Exception." + " Handlers can only be registered for Exception classes" + " or HTTP error codes." + ) + + if issubclass(exc_class, HTTPException): + return exc_class, exc_class.code + else: + return exc_class, None + + +def _endpoint_from_view_func(view_func: ft.RouteCallable) -> str: + """Internal helper that returns the default endpoint for a given + function. This always is the function name. + """ + assert view_func is not None, "expected view func if endpoint is not provided." + return view_func.__name__ + + +def _find_package_path(import_name: str) -> str: + """Find the path that contains the package or module.""" + root_mod_name, _, _ = import_name.partition(".") + + try: + root_spec = importlib.util.find_spec(root_mod_name) + + if root_spec is None: + raise ValueError("not found") + except (ImportError, ValueError): + # ImportError: the machinery told us it does not exist + # ValueError: + # - the module name was invalid + # - the module name is __main__ + # - we raised `ValueError` due to `root_spec` being `None` + return os.getcwd() + + if root_spec.submodule_search_locations: + if root_spec.origin is None or root_spec.origin == "namespace": + # namespace package + package_spec = importlib.util.find_spec(import_name) + + if package_spec is not None and package_spec.submodule_search_locations: + # Pick the path in the namespace that contains the submodule. + package_path = pathlib.Path( + os.path.commonpath(package_spec.submodule_search_locations) + ) + search_location = next( + location + for location in root_spec.submodule_search_locations + if package_path.is_relative_to(location) + ) + else: + # Pick the first path. + search_location = root_spec.submodule_search_locations[0] + + return os.path.dirname(search_location) + else: + # package with __init__.py + return os.path.dirname(os.path.dirname(root_spec.origin)) + else: + # module + return os.path.dirname(root_spec.origin) # type: ignore[type-var, return-value] + + +def find_package(import_name: str) -> tuple[str | None, str]: + """Find the prefix that a package is installed under, and the path + that it would be imported from. + + The prefix is the directory containing the standard directory + hierarchy (lib, bin, etc.). If the package is not installed to the + system (:attr:`sys.prefix`) or a virtualenv (``site-packages``), + ``None`` is returned. + + The path is the entry in :attr:`sys.path` that contains the package + for import. If the package is not installed, it's assumed that the + package was imported from the current working directory. + """ + package_path = _find_package_path(import_name) + py_prefix = os.path.abspath(sys.prefix) + + # installed to the system + if pathlib.PurePath(package_path).is_relative_to(py_prefix): + return py_prefix, package_path + + site_parent, site_folder = os.path.split(package_path) + + # installed to a virtualenv + if site_folder.lower() == "site-packages": + parent, folder = os.path.split(site_parent) + + # Windows (prefix/lib/site-packages) + if folder.lower() == "lib": + return parent, package_path + + # Unix (prefix/lib/pythonX.Y/site-packages) + if os.path.basename(parent).lower() == "lib": + return os.path.dirname(parent), package_path + + # something else (prefix/site-packages) + return site_parent, package_path + + # not installed + return None, package_path diff --git a/venv/lib/python3.9/site-packages/flask/sessions.py b/venv/lib/python3.9/site-packages/flask/sessions.py new file mode 100644 index 0000000..ad35770 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/sessions.py @@ -0,0 +1,385 @@ +from __future__ import annotations + +import collections.abc as c +import hashlib +import typing as t +from collections.abc import MutableMapping +from datetime import datetime +from datetime import timezone + +from itsdangerous import BadSignature +from itsdangerous import URLSafeTimedSerializer +from werkzeug.datastructures import CallbackDict + +from .json.tag import TaggedJSONSerializer + +if t.TYPE_CHECKING: # pragma: no cover + import typing_extensions as te + + from .app import Flask + from .wrappers import Request + from .wrappers import Response + + +class SessionMixin(MutableMapping[str, t.Any]): + """Expands a basic dictionary with session attributes.""" + + @property + def permanent(self) -> bool: + """This reflects the ``'_permanent'`` key in the dict.""" + return self.get("_permanent", False) # type: ignore[no-any-return] + + @permanent.setter + def permanent(self, value: bool) -> None: + self["_permanent"] = bool(value) + + #: Some implementations can detect whether a session is newly + #: created, but that is not guaranteed. Use with caution. The mixin + # default is hard-coded ``False``. + new = False + + #: Some implementations can detect changes to the session and set + #: this when that happens. The mixin default is hard coded to + #: ``True``. + modified = True + + accessed = False + """Indicates if the session was accessed, even if it was not modified. This + is set when the session object is accessed through the request context, + including the global :data:`.session` proxy. A ``Vary: cookie`` header will + be added if this is ``True``. + + .. versionchanged:: 3.1.3 + This is tracked by the request context. + """ + + +class SecureCookieSession(CallbackDict[str, t.Any], SessionMixin): + """Base class for sessions based on signed cookies. + + This session backend will set the :attr:`modified` and + :attr:`accessed` attributes. It cannot reliably track whether a + session is new (vs. empty), so :attr:`new` remains hard coded to + ``False``. + """ + + #: When data is changed, this is set to ``True``. Only the session + #: dictionary itself is tracked; if the session contains mutable + #: data (for example a nested dict) then this must be set to + #: ``True`` manually when modifying that data. The session cookie + #: will only be written to the response if this is ``True``. + modified = False + + def __init__( + self, + initial: c.Mapping[str, t.Any] | None = None, + ) -> None: + def on_update(self: te.Self) -> None: + self.modified = True + + super().__init__(initial, on_update) + + +class NullSession(SecureCookieSession): + """Class used to generate nicer error messages if sessions are not + available. Will still allow read-only access to the empty session + but fail on setting. + """ + + def _fail(self, *args: t.Any, **kwargs: t.Any) -> t.NoReturn: + raise RuntimeError( + "The session is unavailable because no secret " + "key was set. Set the secret_key on the " + "application to something unique and secret." + ) + + __setitem__ = __delitem__ = clear = pop = popitem = update = setdefault = _fail + del _fail + + +class SessionInterface: + """The basic interface you have to implement in order to replace the + default session interface which uses werkzeug's securecookie + implementation. The only methods you have to implement are + :meth:`open_session` and :meth:`save_session`, the others have + useful defaults which you don't need to change. + + The session object returned by the :meth:`open_session` method has to + provide a dictionary like interface plus the properties and methods + from the :class:`SessionMixin`. We recommend just subclassing a dict + and adding that mixin:: + + class Session(dict, SessionMixin): + pass + + If :meth:`open_session` returns ``None`` Flask will call into + :meth:`make_null_session` to create a session that acts as replacement + if the session support cannot work because some requirement is not + fulfilled. The default :class:`NullSession` class that is created + will complain that the secret key was not set. + + To replace the session interface on an application all you have to do + is to assign :attr:`flask.Flask.session_interface`:: + + app = Flask(__name__) + app.session_interface = MySessionInterface() + + Multiple requests with the same session may be sent and handled + concurrently. When implementing a new session interface, consider + whether reads or writes to the backing store must be synchronized. + There is no guarantee on the order in which the session for each + request is opened or saved, it will occur in the order that requests + begin and end processing. + + .. versionadded:: 0.8 + """ + + #: :meth:`make_null_session` will look here for the class that should + #: be created when a null session is requested. Likewise the + #: :meth:`is_null_session` method will perform a typecheck against + #: this type. + null_session_class = NullSession + + #: A flag that indicates if the session interface is pickle based. + #: This can be used by Flask extensions to make a decision in regards + #: to how to deal with the session object. + #: + #: .. versionadded:: 0.10 + pickle_based = False + + def make_null_session(self, app: Flask) -> NullSession: + """Creates a null session which acts as a replacement object if the + real session support could not be loaded due to a configuration + error. This mainly aids the user experience because the job of the + null session is to still support lookup without complaining but + modifications are answered with a helpful error message of what + failed. + + This creates an instance of :attr:`null_session_class` by default. + """ + return self.null_session_class() + + def is_null_session(self, obj: object) -> bool: + """Checks if a given object is a null session. Null sessions are + not asked to be saved. + + This checks if the object is an instance of :attr:`null_session_class` + by default. + """ + return isinstance(obj, self.null_session_class) + + def get_cookie_name(self, app: Flask) -> str: + """The name of the session cookie. Uses``app.config["SESSION_COOKIE_NAME"]``.""" + return app.config["SESSION_COOKIE_NAME"] # type: ignore[no-any-return] + + def get_cookie_domain(self, app: Flask) -> str | None: + """The value of the ``Domain`` parameter on the session cookie. If not set, + browsers will only send the cookie to the exact domain it was set from. + Otherwise, they will send it to any subdomain of the given value as well. + + Uses the :data:`SESSION_COOKIE_DOMAIN` config. + + .. versionchanged:: 2.3 + Not set by default, does not fall back to ``SERVER_NAME``. + """ + return app.config["SESSION_COOKIE_DOMAIN"] # type: ignore[no-any-return] + + def get_cookie_path(self, app: Flask) -> str: + """Returns the path for which the cookie should be valid. The + default implementation uses the value from the ``SESSION_COOKIE_PATH`` + config var if it's set, and falls back to ``APPLICATION_ROOT`` or + uses ``/`` if it's ``None``. + """ + return app.config["SESSION_COOKIE_PATH"] or app.config["APPLICATION_ROOT"] # type: ignore[no-any-return] + + def get_cookie_httponly(self, app: Flask) -> bool: + """Returns True if the session cookie should be httponly. This + currently just returns the value of the ``SESSION_COOKIE_HTTPONLY`` + config var. + """ + return app.config["SESSION_COOKIE_HTTPONLY"] # type: ignore[no-any-return] + + def get_cookie_secure(self, app: Flask) -> bool: + """Returns True if the cookie should be secure. This currently + just returns the value of the ``SESSION_COOKIE_SECURE`` setting. + """ + return app.config["SESSION_COOKIE_SECURE"] # type: ignore[no-any-return] + + def get_cookie_samesite(self, app: Flask) -> str | None: + """Return ``'Strict'`` or ``'Lax'`` if the cookie should use the + ``SameSite`` attribute. This currently just returns the value of + the :data:`SESSION_COOKIE_SAMESITE` setting. + """ + return app.config["SESSION_COOKIE_SAMESITE"] # type: ignore[no-any-return] + + def get_cookie_partitioned(self, app: Flask) -> bool: + """Returns True if the cookie should be partitioned. By default, uses + the value of :data:`SESSION_COOKIE_PARTITIONED`. + + .. versionadded:: 3.1 + """ + return app.config["SESSION_COOKIE_PARTITIONED"] # type: ignore[no-any-return] + + def get_expiration_time(self, app: Flask, session: SessionMixin) -> datetime | None: + """A helper method that returns an expiration date for the session + or ``None`` if the session is linked to the browser session. The + default implementation returns now + the permanent session + lifetime configured on the application. + """ + if session.permanent: + return datetime.now(timezone.utc) + app.permanent_session_lifetime + return None + + def should_set_cookie(self, app: Flask, session: SessionMixin) -> bool: + """Used by session backends to determine if a ``Set-Cookie`` header + should be set for this session cookie for this response. If the session + has been modified, the cookie is set. If the session is permanent and + the ``SESSION_REFRESH_EACH_REQUEST`` config is true, the cookie is + always set. + + This check is usually skipped if the session was deleted. + + .. versionadded:: 0.11 + """ + + return session.modified or ( + session.permanent and app.config["SESSION_REFRESH_EACH_REQUEST"] + ) + + def open_session(self, app: Flask, request: Request) -> SessionMixin | None: + """This is called at the beginning of each request, after + pushing the request context, before matching the URL. + + This must return an object which implements a dictionary-like + interface as well as the :class:`SessionMixin` interface. + + This will return ``None`` to indicate that loading failed in + some way that is not immediately an error. The request + context will fall back to using :meth:`make_null_session` + in this case. + """ + raise NotImplementedError() + + def save_session( + self, app: Flask, session: SessionMixin, response: Response + ) -> None: + """This is called at the end of each request, after generating + a response, before removing the request context. It is skipped + if :meth:`is_null_session` returns ``True``. + """ + raise NotImplementedError() + + +session_json_serializer = TaggedJSONSerializer() + + +def _lazy_sha1(string: bytes = b"") -> t.Any: + """Don't access ``hashlib.sha1`` until runtime. FIPS builds may not include + SHA-1, in which case the import and use as a default would fail before the + developer can configure something else. + """ + return hashlib.sha1(string) + + +class SecureCookieSessionInterface(SessionInterface): + """The default session interface that stores sessions in signed cookies + through the :mod:`itsdangerous` module. + """ + + #: the salt that should be applied on top of the secret key for the + #: signing of cookie based sessions. + salt = "cookie-session" + #: the hash function to use for the signature. The default is sha1 + digest_method = staticmethod(_lazy_sha1) + #: the name of the itsdangerous supported key derivation. The default + #: is hmac. + key_derivation = "hmac" + #: A python serializer for the payload. The default is a compact + #: JSON derived serializer with support for some extra Python types + #: such as datetime objects or tuples. + serializer = session_json_serializer + session_class = SecureCookieSession + + def get_signing_serializer(self, app: Flask) -> URLSafeTimedSerializer | None: + if not app.secret_key: + return None + + keys: list[str | bytes] = [] + + if fallbacks := app.config["SECRET_KEY_FALLBACKS"]: + keys.extend(fallbacks) + + keys.append(app.secret_key) # itsdangerous expects current key at top + return URLSafeTimedSerializer( + keys, # type: ignore[arg-type] + salt=self.salt, + serializer=self.serializer, + signer_kwargs={ + "key_derivation": self.key_derivation, + "digest_method": self.digest_method, + }, + ) + + def open_session(self, app: Flask, request: Request) -> SecureCookieSession | None: + s = self.get_signing_serializer(app) + if s is None: + return None + val = request.cookies.get(self.get_cookie_name(app)) + if not val: + return self.session_class() + max_age = int(app.permanent_session_lifetime.total_seconds()) + try: + data = s.loads(val, max_age=max_age) + return self.session_class(data) + except BadSignature: + return self.session_class() + + def save_session( + self, app: Flask, session: SessionMixin, response: Response + ) -> None: + name = self.get_cookie_name(app) + domain = self.get_cookie_domain(app) + path = self.get_cookie_path(app) + secure = self.get_cookie_secure(app) + partitioned = self.get_cookie_partitioned(app) + samesite = self.get_cookie_samesite(app) + httponly = self.get_cookie_httponly(app) + + # Add a "Vary: Cookie" header if the session was accessed at all. + if session.accessed: + response.vary.add("Cookie") + + # If the session is modified to be empty, remove the cookie. + # If the session is empty, return without setting the cookie. + if not session: + if session.modified: + response.delete_cookie( + name, + domain=domain, + path=path, + secure=secure, + partitioned=partitioned, + samesite=samesite, + httponly=httponly, + ) + response.vary.add("Cookie") + + return + + if not self.should_set_cookie(app, session): + return + + expires = self.get_expiration_time(app, session) + val = self.get_signing_serializer(app).dumps(dict(session)) # type: ignore[union-attr] + response.set_cookie( + name, + val, + expires=expires, + httponly=httponly, + domain=domain, + path=path, + secure=secure, + partitioned=partitioned, + samesite=samesite, + ) + response.vary.add("Cookie") diff --git a/venv/lib/python3.9/site-packages/flask/signals.py b/venv/lib/python3.9/site-packages/flask/signals.py new file mode 100644 index 0000000..444fda9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/signals.py @@ -0,0 +1,17 @@ +from __future__ import annotations + +from blinker import Namespace + +# This namespace is only for signals provided by Flask itself. +_signals = Namespace() + +template_rendered = _signals.signal("template-rendered") +before_render_template = _signals.signal("before-render-template") +request_started = _signals.signal("request-started") +request_finished = _signals.signal("request-finished") +request_tearing_down = _signals.signal("request-tearing-down") +got_request_exception = _signals.signal("got-request-exception") +appcontext_tearing_down = _signals.signal("appcontext-tearing-down") +appcontext_pushed = _signals.signal("appcontext-pushed") +appcontext_popped = _signals.signal("appcontext-popped") +message_flashed = _signals.signal("message-flashed") diff --git a/venv/lib/python3.9/site-packages/flask/templating.py b/venv/lib/python3.9/site-packages/flask/templating.py new file mode 100644 index 0000000..c5fb5b9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/templating.py @@ -0,0 +1,220 @@ +from __future__ import annotations + +import typing as t + +from jinja2 import BaseLoader +from jinja2 import Environment as BaseEnvironment +from jinja2 import Template +from jinja2 import TemplateNotFound + +from .globals import _cv_app +from .globals import _cv_request +from .globals import current_app +from .globals import request +from .helpers import stream_with_context +from .signals import before_render_template +from .signals import template_rendered + +if t.TYPE_CHECKING: # pragma: no cover + from .app import Flask + from .sansio.app import App + from .sansio.scaffold import Scaffold + + +def _default_template_ctx_processor() -> dict[str, t.Any]: + """Default template context processor. Replaces the ``request`` and ``g`` + proxies with their concrete objects for faster access. + """ + appctx = _cv_app.get(None) + reqctx = _cv_request.get(None) + rv: dict[str, t.Any] = {} + if appctx is not None: + rv["g"] = appctx.g + if reqctx is not None: + rv["request"] = reqctx.request + # The session proxy cannot be replaced, accessing it gets + # RequestContext.session, which sets session.accessed. + return rv + + +class Environment(BaseEnvironment): + """Works like a regular Jinja environment but has some additional + knowledge of how Flask's blueprint works so that it can prepend the + name of the blueprint to referenced templates if necessary. + """ + + def __init__(self, app: App, **options: t.Any) -> None: + if "loader" not in options: + options["loader"] = app.create_global_jinja_loader() + BaseEnvironment.__init__(self, **options) + self.app = app + + +class DispatchingJinjaLoader(BaseLoader): + """A loader that looks for templates in the application and all + the blueprint folders. + """ + + def __init__(self, app: App) -> None: + self.app = app + + def get_source( + self, environment: BaseEnvironment, template: str + ) -> tuple[str, str | None, t.Callable[[], bool] | None]: + if self.app.config["EXPLAIN_TEMPLATE_LOADING"]: + return self._get_source_explained(environment, template) + return self._get_source_fast(environment, template) + + def _get_source_explained( + self, environment: BaseEnvironment, template: str + ) -> tuple[str, str | None, t.Callable[[], bool] | None]: + attempts = [] + rv: tuple[str, str | None, t.Callable[[], bool] | None] | None + trv: None | (tuple[str, str | None, t.Callable[[], bool] | None]) = None + + for srcobj, loader in self._iter_loaders(template): + try: + rv = loader.get_source(environment, template) + if trv is None: + trv = rv + except TemplateNotFound: + rv = None + attempts.append((loader, srcobj, rv)) + + from .debughelpers import explain_template_loading_attempts + + explain_template_loading_attempts(self.app, template, attempts) + + if trv is not None: + return trv + raise TemplateNotFound(template) + + def _get_source_fast( + self, environment: BaseEnvironment, template: str + ) -> tuple[str, str | None, t.Callable[[], bool] | None]: + for _srcobj, loader in self._iter_loaders(template): + try: + return loader.get_source(environment, template) + except TemplateNotFound: + continue + raise TemplateNotFound(template) + + def _iter_loaders(self, template: str) -> t.Iterator[tuple[Scaffold, BaseLoader]]: + loader = self.app.jinja_loader + if loader is not None: + yield self.app, loader + + for blueprint in self.app.iter_blueprints(): + loader = blueprint.jinja_loader + if loader is not None: + yield blueprint, loader + + def list_templates(self) -> list[str]: + result = set() + loader = self.app.jinja_loader + if loader is not None: + result.update(loader.list_templates()) + + for blueprint in self.app.iter_blueprints(): + loader = blueprint.jinja_loader + if loader is not None: + for template in loader.list_templates(): + result.add(template) + + return list(result) + + +def _render(app: Flask, template: Template, context: dict[str, t.Any]) -> str: + app.update_template_context(context) + before_render_template.send( + app, _async_wrapper=app.ensure_sync, template=template, context=context + ) + rv = template.render(context) + template_rendered.send( + app, _async_wrapper=app.ensure_sync, template=template, context=context + ) + return rv + + +def render_template( + template_name_or_list: str | Template | list[str | Template], + **context: t.Any, +) -> str: + """Render a template by name with the given context. + + :param template_name_or_list: The name of the template to render. If + a list is given, the first name to exist will be rendered. + :param context: The variables to make available in the template. + """ + app = current_app._get_current_object() # type: ignore[attr-defined] + template = app.jinja_env.get_or_select_template(template_name_or_list) + return _render(app, template, context) + + +def render_template_string(source: str, **context: t.Any) -> str: + """Render a template from the given source string with the given + context. + + :param source: The source code of the template to render. + :param context: The variables to make available in the template. + """ + app = current_app._get_current_object() # type: ignore[attr-defined] + template = app.jinja_env.from_string(source) + return _render(app, template, context) + + +def _stream( + app: Flask, template: Template, context: dict[str, t.Any] +) -> t.Iterator[str]: + app.update_template_context(context) + before_render_template.send( + app, _async_wrapper=app.ensure_sync, template=template, context=context + ) + + def generate() -> t.Iterator[str]: + yield from template.generate(context) + template_rendered.send( + app, _async_wrapper=app.ensure_sync, template=template, context=context + ) + + rv = generate() + + # If a request context is active, keep it while generating. + if request: + rv = stream_with_context(rv) + + return rv + + +def stream_template( + template_name_or_list: str | Template | list[str | Template], + **context: t.Any, +) -> t.Iterator[str]: + """Render a template by name with the given context as a stream. + This returns an iterator of strings, which can be used as a + streaming response from a view. + + :param template_name_or_list: The name of the template to render. If + a list is given, the first name to exist will be rendered. + :param context: The variables to make available in the template. + + .. versionadded:: 2.2 + """ + app = current_app._get_current_object() # type: ignore[attr-defined] + template = app.jinja_env.get_or_select_template(template_name_or_list) + return _stream(app, template, context) + + +def stream_template_string(source: str, **context: t.Any) -> t.Iterator[str]: + """Render a template from the given source string with the given + context as a stream. This returns an iterator of strings, which can + be used as a streaming response from a view. + + :param source: The source code of the template to render. + :param context: The variables to make available in the template. + + .. versionadded:: 2.2 + """ + app = current_app._get_current_object() # type: ignore[attr-defined] + template = app.jinja_env.from_string(source) + return _stream(app, template, context) diff --git a/venv/lib/python3.9/site-packages/flask/testing.py b/venv/lib/python3.9/site-packages/flask/testing.py new file mode 100644 index 0000000..55eb12f --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/testing.py @@ -0,0 +1,298 @@ +from __future__ import annotations + +import importlib.metadata +import typing as t +from contextlib import contextmanager +from contextlib import ExitStack +from copy import copy +from types import TracebackType +from urllib.parse import urlsplit + +import werkzeug.test +from click.testing import CliRunner +from click.testing import Result +from werkzeug.test import Client +from werkzeug.wrappers import Request as BaseRequest + +from .cli import ScriptInfo +from .sessions import SessionMixin + +if t.TYPE_CHECKING: # pragma: no cover + from _typeshed.wsgi import WSGIEnvironment + from werkzeug.test import TestResponse + + from .app import Flask + + +class EnvironBuilder(werkzeug.test.EnvironBuilder): + """An :class:`~werkzeug.test.EnvironBuilder`, that takes defaults from the + application. + + :param app: The Flask application to configure the environment from. + :param path: URL path being requested. + :param base_url: Base URL where the app is being served, which + ``path`` is relative to. If not given, built from + :data:`PREFERRED_URL_SCHEME`, ``subdomain``, + :data:`SERVER_NAME`, and :data:`APPLICATION_ROOT`. + :param subdomain: Subdomain name to append to :data:`SERVER_NAME`. + :param url_scheme: Scheme to use instead of + :data:`PREFERRED_URL_SCHEME`. + :param json: If given, this is serialized as JSON and passed as + ``data``. Also defaults ``content_type`` to + ``application/json``. + :param args: other positional arguments passed to + :class:`~werkzeug.test.EnvironBuilder`. + :param kwargs: other keyword arguments passed to + :class:`~werkzeug.test.EnvironBuilder`. + """ + + def __init__( + self, + app: Flask, + path: str = "/", + base_url: str | None = None, + subdomain: str | None = None, + url_scheme: str | None = None, + *args: t.Any, + **kwargs: t.Any, + ) -> None: + assert not (base_url or subdomain or url_scheme) or ( + base_url is not None + ) != bool(subdomain or url_scheme), ( + 'Cannot pass "subdomain" or "url_scheme" with "base_url".' + ) + + if base_url is None: + http_host = app.config.get("SERVER_NAME") or "localhost" + app_root = app.config["APPLICATION_ROOT"] + + if subdomain: + http_host = f"{subdomain}.{http_host}" + + if url_scheme is None: + url_scheme = app.config["PREFERRED_URL_SCHEME"] + + url = urlsplit(path) + base_url = ( + f"{url.scheme or url_scheme}://{url.netloc or http_host}" + f"/{app_root.lstrip('/')}" + ) + path = url.path + + if url.query: + path = f"{path}?{url.query}" + + self.app = app + super().__init__(path, base_url, *args, **kwargs) + + def json_dumps(self, obj: t.Any, **kwargs: t.Any) -> str: + """Serialize ``obj`` to a JSON-formatted string. + + The serialization will be configured according to the config associated + with this EnvironBuilder's ``app``. + """ + return self.app.json.dumps(obj, **kwargs) + + +_werkzeug_version = "" + + +def _get_werkzeug_version() -> str: + global _werkzeug_version + + if not _werkzeug_version: + _werkzeug_version = importlib.metadata.version("werkzeug") + + return _werkzeug_version + + +class FlaskClient(Client): + """Works like a regular Werkzeug test client but has knowledge about + Flask's contexts to defer the cleanup of the request context until + the end of a ``with`` block. For general information about how to + use this class refer to :class:`werkzeug.test.Client`. + + .. versionchanged:: 0.12 + `app.test_client()` includes preset default environment, which can be + set after instantiation of the `app.test_client()` object in + `client.environ_base`. + + Basic usage is outlined in the :doc:`/testing` chapter. + """ + + application: Flask + + def __init__(self, *args: t.Any, **kwargs: t.Any) -> None: + super().__init__(*args, **kwargs) + self.preserve_context = False + self._new_contexts: list[t.ContextManager[t.Any]] = [] + self._context_stack = ExitStack() + self.environ_base = { + "REMOTE_ADDR": "127.0.0.1", + "HTTP_USER_AGENT": f"Werkzeug/{_get_werkzeug_version()}", + } + + @contextmanager + def session_transaction( + self, *args: t.Any, **kwargs: t.Any + ) -> t.Iterator[SessionMixin]: + """When used in combination with a ``with`` statement this opens a + session transaction. This can be used to modify the session that + the test client uses. Once the ``with`` block is left the session is + stored back. + + :: + + with client.session_transaction() as session: + session['value'] = 42 + + Internally this is implemented by going through a temporary test + request context and since session handling could depend on + request variables this function accepts the same arguments as + :meth:`~flask.Flask.test_request_context` which are directly + passed through. + """ + if self._cookies is None: + raise TypeError( + "Cookies are disabled. Create a client with 'use_cookies=True'." + ) + + app = self.application + ctx = app.test_request_context(*args, **kwargs) + self._add_cookies_to_wsgi(ctx.request.environ) + + with ctx: + sess = app.session_interface.open_session(app, ctx.request) + + if sess is None: + raise RuntimeError("Session backend did not open a session.") + + yield sess + resp = app.response_class() + + if app.session_interface.is_null_session(sess): + return + + with ctx: + app.session_interface.save_session(app, sess, resp) + + self._update_cookies_from_response( + ctx.request.host.partition(":")[0], + ctx.request.path, + resp.headers.getlist("Set-Cookie"), + ) + + def _copy_environ(self, other: WSGIEnvironment) -> WSGIEnvironment: + out = {**self.environ_base, **other} + + if self.preserve_context: + out["werkzeug.debug.preserve_context"] = self._new_contexts.append + + return out + + def _request_from_builder_args( + self, args: tuple[t.Any, ...], kwargs: dict[str, t.Any] + ) -> BaseRequest: + kwargs["environ_base"] = self._copy_environ(kwargs.get("environ_base", {})) + builder = EnvironBuilder(self.application, *args, **kwargs) + + try: + return builder.get_request() + finally: + builder.close() + + def open( + self, + *args: t.Any, + buffered: bool = False, + follow_redirects: bool = False, + **kwargs: t.Any, + ) -> TestResponse: + if args and isinstance( + args[0], (werkzeug.test.EnvironBuilder, dict, BaseRequest) + ): + if isinstance(args[0], werkzeug.test.EnvironBuilder): + builder = copy(args[0]) + builder.environ_base = self._copy_environ(builder.environ_base or {}) # type: ignore[arg-type] + request = builder.get_request() + elif isinstance(args[0], dict): + request = EnvironBuilder.from_environ( + args[0], app=self.application, environ_base=self._copy_environ({}) + ).get_request() + else: + # isinstance(args[0], BaseRequest) + request = copy(args[0]) + request.environ = self._copy_environ(request.environ) + else: + # request is None + request = self._request_from_builder_args(args, kwargs) + + # Pop any previously preserved contexts. This prevents contexts + # from being preserved across redirects or multiple requests + # within a single block. + self._context_stack.close() + + response = super().open( + request, + buffered=buffered, + follow_redirects=follow_redirects, + ) + response.json_module = self.application.json # type: ignore[assignment] + + # Re-push contexts that were preserved during the request. + for cm in self._new_contexts: + self._context_stack.enter_context(cm) + + self._new_contexts.clear() + return response + + def __enter__(self) -> FlaskClient: + if self.preserve_context: + raise RuntimeError("Cannot nest client invocations") + self.preserve_context = True + return self + + def __exit__( + self, + exc_type: type | None, + exc_value: BaseException | None, + tb: TracebackType | None, + ) -> None: + self.preserve_context = False + self._context_stack.close() + + +class FlaskCliRunner(CliRunner): + """A :class:`~click.testing.CliRunner` for testing a Flask app's + CLI commands. Typically created using + :meth:`~flask.Flask.test_cli_runner`. See :ref:`testing-cli`. + """ + + def __init__(self, app: Flask, **kwargs: t.Any) -> None: + self.app = app + super().__init__(**kwargs) + + def invoke( # type: ignore + self, cli: t.Any = None, args: t.Any = None, **kwargs: t.Any + ) -> Result: + """Invokes a CLI command in an isolated environment. See + :meth:`CliRunner.invoke ` for + full method documentation. See :ref:`testing-cli` for examples. + + If the ``obj`` argument is not given, passes an instance of + :class:`~flask.cli.ScriptInfo` that knows how to load the Flask + app being tested. + + :param cli: Command object to invoke. Default is the app's + :attr:`~flask.app.Flask.cli` group. + :param args: List of strings to invoke the command with. + + :return: a :class:`~click.testing.Result` object. + """ + if cli is None: + cli = self.app.cli + + if "obj" not in kwargs: + kwargs["obj"] = ScriptInfo(create_app=lambda: self.app) + + return super().invoke(cli, args, **kwargs) diff --git a/venv/lib/python3.9/site-packages/flask/typing.py b/venv/lib/python3.9/site-packages/flask/typing.py new file mode 100644 index 0000000..6b70c40 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/typing.py @@ -0,0 +1,93 @@ +from __future__ import annotations + +import collections.abc as cabc +import typing as t + +if t.TYPE_CHECKING: # pragma: no cover + from _typeshed.wsgi import WSGIApplication # noqa: F401 + from werkzeug.datastructures import Headers # noqa: F401 + from werkzeug.sansio.response import Response # noqa: F401 + +# The possible types that are directly convertible or are a Response object. +ResponseValue = t.Union[ + "Response", + str, + bytes, + list[t.Any], + # Only dict is actually accepted, but Mapping allows for TypedDict. + t.Mapping[str, t.Any], + t.Iterator[str], + t.Iterator[bytes], + cabc.AsyncIterable[str], # for Quart, until App is generic. + cabc.AsyncIterable[bytes], +] + +# the possible types for an individual HTTP header +# This should be a Union, but mypy doesn't pass unless it's a TypeVar. +HeaderValue = t.Union[str, list[str], tuple[str, ...]] + +# the possible types for HTTP headers +HeadersValue = t.Union[ + "Headers", + t.Mapping[str, HeaderValue], + t.Sequence[tuple[str, HeaderValue]], +] + +# The possible types returned by a route function. +ResponseReturnValue = t.Union[ + ResponseValue, + tuple[ResponseValue, HeadersValue], + tuple[ResponseValue, int], + tuple[ResponseValue, int, HeadersValue], + "WSGIApplication", +] + +# Allow any subclass of werkzeug.Response, such as the one from Flask, +# as a callback argument. Using werkzeug.Response directly makes a +# callback annotated with flask.Response fail type checking. +ResponseClass = t.TypeVar("ResponseClass", bound="Response") + +AppOrBlueprintKey = t.Optional[str] # The App key is None, whereas blueprints are named +AfterRequestCallable = t.Union[ + t.Callable[[ResponseClass], ResponseClass], + t.Callable[[ResponseClass], t.Awaitable[ResponseClass]], +] +BeforeFirstRequestCallable = t.Union[ + t.Callable[[], None], t.Callable[[], t.Awaitable[None]] +] +BeforeRequestCallable = t.Union[ + t.Callable[[], t.Optional[ResponseReturnValue]], + t.Callable[[], t.Awaitable[t.Optional[ResponseReturnValue]]], +] +ShellContextProcessorCallable = t.Callable[[], dict[str, t.Any]] +TeardownCallable = t.Union[ + t.Callable[[t.Optional[BaseException]], None], + t.Callable[[t.Optional[BaseException]], t.Awaitable[None]], +] +TemplateContextProcessorCallable = t.Union[ + t.Callable[[], dict[str, t.Any]], + t.Callable[[], t.Awaitable[dict[str, t.Any]]], +] +TemplateFilterCallable = t.Callable[..., t.Any] +TemplateGlobalCallable = t.Callable[..., t.Any] +TemplateTestCallable = t.Callable[..., bool] +URLDefaultCallable = t.Callable[[str, dict[str, t.Any]], None] +URLValuePreprocessorCallable = t.Callable[ + [t.Optional[str], t.Optional[dict[str, t.Any]]], None +] + +# This should take Exception, but that either breaks typing the argument +# with a specific exception, or decorating multiple times with different +# exceptions (and using a union type on the argument). +# https://github.com/pallets/flask/issues/4095 +# https://github.com/pallets/flask/issues/4295 +# https://github.com/pallets/flask/issues/4297 +ErrorHandlerCallable = t.Union[ + t.Callable[[t.Any], ResponseReturnValue], + t.Callable[[t.Any], t.Awaitable[ResponseReturnValue]], +] + +RouteCallable = t.Union[ + t.Callable[..., ResponseReturnValue], + t.Callable[..., t.Awaitable[ResponseReturnValue]], +] diff --git a/venv/lib/python3.9/site-packages/flask/views.py b/venv/lib/python3.9/site-packages/flask/views.py new file mode 100644 index 0000000..53fe976 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/views.py @@ -0,0 +1,191 @@ +from __future__ import annotations + +import typing as t + +from . import typing as ft +from .globals import current_app +from .globals import request + +F = t.TypeVar("F", bound=t.Callable[..., t.Any]) + +http_method_funcs = frozenset( + ["get", "post", "head", "options", "delete", "put", "trace", "patch"] +) + + +class View: + """Subclass this class and override :meth:`dispatch_request` to + create a generic class-based view. Call :meth:`as_view` to create a + view function that creates an instance of the class with the given + arguments and calls its ``dispatch_request`` method with any URL + variables. + + See :doc:`views` for a detailed guide. + + .. code-block:: python + + class Hello(View): + init_every_request = False + + def dispatch_request(self, name): + return f"Hello, {name}!" + + app.add_url_rule( + "/hello/", view_func=Hello.as_view("hello") + ) + + Set :attr:`methods` on the class to change what methods the view + accepts. + + Set :attr:`decorators` on the class to apply a list of decorators to + the generated view function. Decorators applied to the class itself + will not be applied to the generated view function! + + Set :attr:`init_every_request` to ``False`` for efficiency, unless + you need to store request-global data on ``self``. + """ + + #: The methods this view is registered for. Uses the same default + #: (``["GET", "HEAD", "OPTIONS"]``) as ``route`` and + #: ``add_url_rule`` by default. + methods: t.ClassVar[t.Collection[str] | None] = None + + #: Control whether the ``OPTIONS`` method is handled automatically. + #: Uses the same default (``True``) as ``route`` and + #: ``add_url_rule`` by default. + provide_automatic_options: t.ClassVar[bool | None] = None + + #: A list of decorators to apply, in order, to the generated view + #: function. Remember that ``@decorator`` syntax is applied bottom + #: to top, so the first decorator in the list would be the bottom + #: decorator. + #: + #: .. versionadded:: 0.8 + decorators: t.ClassVar[list[t.Callable[..., t.Any]]] = [] + + #: Create a new instance of this view class for every request by + #: default. If a view subclass sets this to ``False``, the same + #: instance is used for every request. + #: + #: A single instance is more efficient, especially if complex setup + #: is done during init. However, storing data on ``self`` is no + #: longer safe across requests, and :data:`~flask.g` should be used + #: instead. + #: + #: .. versionadded:: 2.2 + init_every_request: t.ClassVar[bool] = True + + def dispatch_request(self) -> ft.ResponseReturnValue: + """The actual view function behavior. Subclasses must override + this and return a valid response. Any variables from the URL + rule are passed as keyword arguments. + """ + raise NotImplementedError() + + @classmethod + def as_view( + cls, name: str, *class_args: t.Any, **class_kwargs: t.Any + ) -> ft.RouteCallable: + """Convert the class into a view function that can be registered + for a route. + + By default, the generated view will create a new instance of the + view class for every request and call its + :meth:`dispatch_request` method. If the view class sets + :attr:`init_every_request` to ``False``, the same instance will + be used for every request. + + Except for ``name``, all other arguments passed to this method + are forwarded to the view class ``__init__`` method. + + .. versionchanged:: 2.2 + Added the ``init_every_request`` class attribute. + """ + if cls.init_every_request: + + def view(**kwargs: t.Any) -> ft.ResponseReturnValue: + self = view.view_class( # type: ignore[attr-defined] + *class_args, **class_kwargs + ) + return current_app.ensure_sync(self.dispatch_request)(**kwargs) # type: ignore[no-any-return] + + else: + self = cls(*class_args, **class_kwargs) # pyright: ignore + + def view(**kwargs: t.Any) -> ft.ResponseReturnValue: + return current_app.ensure_sync(self.dispatch_request)(**kwargs) # type: ignore[no-any-return] + + if cls.decorators: + view.__name__ = name + view.__module__ = cls.__module__ + for decorator in cls.decorators: + view = decorator(view) + + # We attach the view class to the view function for two reasons: + # first of all it allows us to easily figure out what class-based + # view this thing came from, secondly it's also used for instantiating + # the view class so you can actually replace it with something else + # for testing purposes and debugging. + view.view_class = cls # type: ignore + view.__name__ = name + view.__doc__ = cls.__doc__ + view.__module__ = cls.__module__ + view.methods = cls.methods # type: ignore + view.provide_automatic_options = cls.provide_automatic_options # type: ignore + return view + + +class MethodView(View): + """Dispatches request methods to the corresponding instance methods. + For example, if you implement a ``get`` method, it will be used to + handle ``GET`` requests. + + This can be useful for defining a REST API. + + :attr:`methods` is automatically set based on the methods defined on + the class. + + See :doc:`views` for a detailed guide. + + .. code-block:: python + + class CounterAPI(MethodView): + def get(self): + return str(session.get("counter", 0)) + + def post(self): + session["counter"] = session.get("counter", 0) + 1 + return redirect(url_for("counter")) + + app.add_url_rule( + "/counter", view_func=CounterAPI.as_view("counter") + ) + """ + + def __init_subclass__(cls, **kwargs: t.Any) -> None: + super().__init_subclass__(**kwargs) + + if "methods" not in cls.__dict__: + methods = set() + + for base in cls.__bases__: + if getattr(base, "methods", None): + methods.update(base.methods) # type: ignore[attr-defined] + + for key in http_method_funcs: + if hasattr(cls, key): + methods.add(key.upper()) + + if methods: + cls.methods = methods + + def dispatch_request(self, **kwargs: t.Any) -> ft.ResponseReturnValue: + meth = getattr(self, request.method.lower(), None) + + # If the request method is HEAD and we don't have a handler for it + # retry with GET. + if meth is None and request.method == "HEAD": + meth = getattr(self, "get", None) + + assert meth is not None, f"Unimplemented method {request.method!r}" + return current_app.ensure_sync(meth)(**kwargs) # type: ignore[no-any-return] diff --git a/venv/lib/python3.9/site-packages/flask/wrappers.py b/venv/lib/python3.9/site-packages/flask/wrappers.py new file mode 100644 index 0000000..bab6102 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask/wrappers.py @@ -0,0 +1,257 @@ +from __future__ import annotations + +import typing as t + +from werkzeug.exceptions import BadRequest +from werkzeug.exceptions import HTTPException +from werkzeug.wrappers import Request as RequestBase +from werkzeug.wrappers import Response as ResponseBase + +from . import json +from .globals import current_app +from .helpers import _split_blueprint_path + +if t.TYPE_CHECKING: # pragma: no cover + from werkzeug.routing import Rule + + +class Request(RequestBase): + """The request object used by default in Flask. Remembers the + matched endpoint and view arguments. + + It is what ends up as :class:`~flask.request`. If you want to replace + the request object used you can subclass this and set + :attr:`~flask.Flask.request_class` to your subclass. + + The request object is a :class:`~werkzeug.wrappers.Request` subclass and + provides all of the attributes Werkzeug defines plus a few Flask + specific ones. + """ + + json_module: t.Any = json + + #: The internal URL rule that matched the request. This can be + #: useful to inspect which methods are allowed for the URL from + #: a before/after handler (``request.url_rule.methods``) etc. + #: Though if the request's method was invalid for the URL rule, + #: the valid list is available in ``routing_exception.valid_methods`` + #: instead (an attribute of the Werkzeug exception + #: :exc:`~werkzeug.exceptions.MethodNotAllowed`) + #: because the request was never internally bound. + #: + #: .. versionadded:: 0.6 + url_rule: Rule | None = None + + #: A dict of view arguments that matched the request. If an exception + #: happened when matching, this will be ``None``. + view_args: dict[str, t.Any] | None = None + + #: If matching the URL failed, this is the exception that will be + #: raised / was raised as part of the request handling. This is + #: usually a :exc:`~werkzeug.exceptions.NotFound` exception or + #: something similar. + routing_exception: HTTPException | None = None + + _max_content_length: int | None = None + _max_form_memory_size: int | None = None + _max_form_parts: int | None = None + + @property + def max_content_length(self) -> int | None: + """The maximum number of bytes that will be read during this request. If + this limit is exceeded, a 413 :exc:`~werkzeug.exceptions.RequestEntityTooLarge` + error is raised. If it is set to ``None``, no limit is enforced at the + Flask application level. However, if it is ``None`` and the request has + no ``Content-Length`` header and the WSGI server does not indicate that + it terminates the stream, then no data is read to avoid an infinite + stream. + + Each request defaults to the :data:`MAX_CONTENT_LENGTH` config, which + defaults to ``None``. It can be set on a specific ``request`` to apply + the limit to that specific view. This should be set appropriately based + on an application's or view's specific needs. + + .. versionchanged:: 3.1 + This can be set per-request. + + .. versionchanged:: 0.6 + This is configurable through Flask config. + """ + if self._max_content_length is not None: + return self._max_content_length + + if not current_app: + return super().max_content_length + + return current_app.config["MAX_CONTENT_LENGTH"] # type: ignore[no-any-return] + + @max_content_length.setter + def max_content_length(self, value: int | None) -> None: + self._max_content_length = value + + @property + def max_form_memory_size(self) -> int | None: + """The maximum size in bytes any non-file form field may be in a + ``multipart/form-data`` body. If this limit is exceeded, a 413 + :exc:`~werkzeug.exceptions.RequestEntityTooLarge` error is raised. If it + is set to ``None``, no limit is enforced at the Flask application level. + + Each request defaults to the :data:`MAX_FORM_MEMORY_SIZE` config, which + defaults to ``500_000``. It can be set on a specific ``request`` to + apply the limit to that specific view. This should be set appropriately + based on an application's or view's specific needs. + + .. versionchanged:: 3.1 + This is configurable through Flask config. + """ + if self._max_form_memory_size is not None: + return self._max_form_memory_size + + if not current_app: + return super().max_form_memory_size + + return current_app.config["MAX_FORM_MEMORY_SIZE"] # type: ignore[no-any-return] + + @max_form_memory_size.setter + def max_form_memory_size(self, value: int | None) -> None: + self._max_form_memory_size = value + + @property # type: ignore[override] + def max_form_parts(self) -> int | None: + """The maximum number of fields that may be present in a + ``multipart/form-data`` body. If this limit is exceeded, a 413 + :exc:`~werkzeug.exceptions.RequestEntityTooLarge` error is raised. If it + is set to ``None``, no limit is enforced at the Flask application level. + + Each request defaults to the :data:`MAX_FORM_PARTS` config, which + defaults to ``1_000``. It can be set on a specific ``request`` to apply + the limit to that specific view. This should be set appropriately based + on an application's or view's specific needs. + + .. versionchanged:: 3.1 + This is configurable through Flask config. + """ + if self._max_form_parts is not None: + return self._max_form_parts + + if not current_app: + return super().max_form_parts + + return current_app.config["MAX_FORM_PARTS"] # type: ignore[no-any-return] + + @max_form_parts.setter + def max_form_parts(self, value: int | None) -> None: + self._max_form_parts = value + + @property + def endpoint(self) -> str | None: + """The endpoint that matched the request URL. + + This will be ``None`` if matching failed or has not been + performed yet. + + This in combination with :attr:`view_args` can be used to + reconstruct the same URL or a modified URL. + """ + if self.url_rule is not None: + return self.url_rule.endpoint # type: ignore[no-any-return] + + return None + + @property + def blueprint(self) -> str | None: + """The registered name of the current blueprint. + + This will be ``None`` if the endpoint is not part of a + blueprint, or if URL matching failed or has not been performed + yet. + + This does not necessarily match the name the blueprint was + created with. It may have been nested, or registered with a + different name. + """ + endpoint = self.endpoint + + if endpoint is not None and "." in endpoint: + return endpoint.rpartition(".")[0] + + return None + + @property + def blueprints(self) -> list[str]: + """The registered names of the current blueprint upwards through + parent blueprints. + + This will be an empty list if there is no current blueprint, or + if URL matching failed. + + .. versionadded:: 2.0.1 + """ + name = self.blueprint + + if name is None: + return [] + + return _split_blueprint_path(name) + + def _load_form_data(self) -> None: + super()._load_form_data() + + # In debug mode we're replacing the files multidict with an ad-hoc + # subclass that raises a different error for key errors. + if ( + current_app + and current_app.debug + and self.mimetype != "multipart/form-data" + and not self.files + ): + from .debughelpers import attach_enctype_error_multidict + + attach_enctype_error_multidict(self) + + def on_json_loading_failed(self, e: ValueError | None) -> t.Any: + try: + return super().on_json_loading_failed(e) + except BadRequest as ebr: + if current_app and current_app.debug: + raise + + raise BadRequest() from ebr + + +class Response(ResponseBase): + """The response object that is used by default in Flask. Works like the + response object from Werkzeug but is set to have an HTML mimetype by + default. Quite often you don't have to create this object yourself because + :meth:`~flask.Flask.make_response` will take care of that for you. + + If you want to replace the response object used you can subclass this and + set :attr:`~flask.Flask.response_class` to your subclass. + + .. versionchanged:: 1.0 + JSON support is added to the response, like the request. This is useful + when testing to get the test client response data as JSON. + + .. versionchanged:: 1.0 + + Added :attr:`max_cookie_size`. + """ + + default_mimetype: str | None = "text/html" + + json_module = json + + autocorrect_location_header = False + + @property + def max_cookie_size(self) -> int: # type: ignore + """Read-only view of the :data:`MAX_COOKIE_SIZE` config key. + + See :attr:`~werkzeug.wrappers.Response.max_cookie_size` in + Werkzeug's docs. + """ + if current_app: + return current_app.config["MAX_COOKIE_SIZE"] # type: ignore[no-any-return] + + # return Werkzeug's default when not in an app context + return super().max_cookie_size diff --git a/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/METADATA b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/METADATA new file mode 100644 index 0000000..e34ddf3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/METADATA @@ -0,0 +1,80 @@ +Metadata-Version: 2.4 +Name: Flask-SocketIO +Version: 5.6.1 +Summary: Socket.IO integration for Flask applications +Author-email: Miguel Grinberg +Project-URL: Homepage, https://github.com/miguelgrinberg/flask-socketio +Project-URL: Bug Tracker, https://github.com/miguelgrinberg/flask-socketio/issues +Classifier: Environment :: Web Environment +Classifier: Intended Audience :: Developers +Classifier: Programming Language :: Python :: 3 +Classifier: License :: OSI Approved :: MIT License +Classifier: Operating System :: OS Independent +Requires-Python: >=3.8 +Description-Content-Type: text/markdown +License-File: LICENSE +Requires-Dist: blinker +Requires-Dist: click +Requires-Dist: flask +Requires-Dist: Flask>=2.1.0 +Requires-Dist: jinja2 +Requires-Dist: python-socketio>=5.12.0 +Requires-Dist: werkzeug +Provides-Extra: docs +Requires-Dist: sphinx; extra == "docs" +Requires-Dist: furo; extra == "docs" +Provides-Extra: dev +Requires-Dist: flask-login; extra == "dev" +Requires-Dist: flask-session; extra == "dev" +Requires-Dist: pytest; extra == "dev" +Requires-Dist: pytest-cov; extra == "dev" +Requires-Dist: redis; extra == "dev" +Requires-Dist: tox; extra == "dev" +Dynamic: license-file + +Flask-SocketIO +============== + +[![Build status](https://github.com/miguelgrinberg/flask-socketio/workflows/build/badge.svg)](https://github.com/miguelgrinberg/Flask-SocketIO/actions) [![codecov](https://codecov.io/gh/miguelgrinberg/flask-socketio/branch/main/graph/badge.svg)](https://codecov.io/gh/miguelgrinberg/flask-socketio) + +Socket.IO integration for Flask applications. + +Installation +------------ + +You can install this package as usual with pip: + + pip install flask-socketio + +Example +------- + +```py +from flask import Flask, render_template +from flask_socketio import SocketIO, emit + +app = Flask(__name__) +app.config['SECRET_KEY'] = 'secret!' +socketio = SocketIO(app) + +@app.route('/') +def index(): + return render_template('index.html') + +@socketio.event +def my_event(message): + emit('my response', {'data': 'got it!'}) + +if __name__ == '__main__': + socketio.run(app) +``` + +Resources +--------- + +- [Tutorial](http://blog.miguelgrinberg.com/post/easy-websockets-with-flask-and-gevent) +- [Documentation](http://flask-socketio.readthedocs.io/en/latest/) +- [PyPI](https://pypi.python.org/pypi/Flask-SocketIO) +- [Change Log](https://github.com/miguelgrinberg/Flask-SocketIO/blob/main/CHANGES.md) +- Questions? See the [questions](https://stackoverflow.com/questions/tagged/flask-socketio) others have asked on Stack Overflow, or [ask](https://stackoverflow.com/questions/ask?tags=python+flask-socketio+python-socketio) your own question. + diff --git a/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/RECORD b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/RECORD new file mode 100644 index 0000000..18cd573 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/RECORD @@ -0,0 +1,13 @@ +flask_socketio-5.6.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +flask_socketio-5.6.1.dist-info/METADATA,sha256=UxUoj5w97Okq7Da_t5eNKjqKPePH8742sKIKz7sApz4,2650 +flask_socketio-5.6.1.dist-info/RECORD,, +flask_socketio-5.6.1.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +flask_socketio-5.6.1.dist-info/WHEEL,sha256=YCfwYGOYMi5Jhw2fU4yNgwErybb2IX5PEwBKV4ZbdBo,91 +flask_socketio-5.6.1.dist-info/licenses/LICENSE,sha256=aNCWbkgKjS_T1cJtACyZbvCM36KxWnfQ0LWTuavuYKQ,1082 +flask_socketio-5.6.1.dist-info/top_level.txt,sha256=C1ugzQBJ3HHUJsWGzyt70XRVOX-y4CUAR8MWKjwJOQ8,15 +flask_socketio/__init__.py,sha256=jM_b0DUuMVqujMJDqknjaUgAOagdgGlbNILdAX4rKuw,56423 +flask_socketio/__pycache__/__init__.cpython-39.pyc,, +flask_socketio/__pycache__/namespace.cpython-39.pyc,, +flask_socketio/__pycache__/test_client.cpython-39.pyc,, +flask_socketio/namespace.py,sha256=UkVryJvFYgnCMKWSF35GVfGdyh2cXRDyRbfmEPPchVA,2329 +flask_socketio/test_client.py,sha256=pyvjNemWok8WuvEMDu8KYxc0U5Hdyvek4_vbxKsLCdU,11348 diff --git a/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/REQUESTED b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/REQUESTED new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/WHEEL b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/WHEEL new file mode 100644 index 0000000..1ef5583 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: setuptools (82.0.0) +Root-Is-Purelib: true +Tag: py3-none-any + diff --git a/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/licenses/LICENSE b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/licenses/LICENSE new file mode 100644 index 0000000..f5c10ab --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/licenses/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2014 Miguel Grinberg + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/top_level.txt new file mode 100755 index 0000000..ba82ec3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask_socketio-5.6.1.dist-info/top_level.txt @@ -0,0 +1 @@ +flask_socketio diff --git a/venv/lib/python3.9/site-packages/flask_socketio/__init__.py b/venv/lib/python3.9/site-packages/flask_socketio/__init__.py new file mode 100644 index 0000000..eeee6e2 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask_socketio/__init__.py @@ -0,0 +1,1148 @@ +from functools import wraps +import os +import sys + +# make sure gevent-socketio is not installed, as it conflicts with +# python-socketio +gevent_socketio_found = True +try: + from socketio import socketio_manage # noqa: F401 +except ImportError: + gevent_socketio_found = False +if gevent_socketio_found: + print('The gevent-socketio package is incompatible with this version of ' + 'the Flask-SocketIO extension. Please uninstall it, and then ' + 'install the latest version of python-socketio in its place.') + sys.exit(1) + +import flask +from flask import has_request_context, json as flask_json +from flask.sessions import SessionMixin +import socketio +from socketio.exceptions import ConnectionRefusedError # noqa: F401 +from werkzeug.debug import DebuggedApplication +from werkzeug._reloader import run_with_reloader + +from .namespace import Namespace +from .test_client import SocketIOTestClient + + +class _SocketIOMiddleware(socketio.WSGIApp): + """This WSGI middleware simply exposes the Flask application in the WSGI + environment before executing the request. + """ + def __init__(self, socketio_app, flask_app, socketio_path='socket.io'): + self.flask_app = flask_app + super().__init__(socketio_app, flask_app.wsgi_app, + socketio_path=socketio_path) + + def __call__(self, environ, start_response): + environ = environ.copy() + environ['flask.app'] = self.flask_app + return super().__call__(environ, start_response) + + +class _ManagedSession(dict, SessionMixin): + """This class is used for user sessions that are managed by + Flask-SocketIO. It is simple dict, expanded with the Flask session + attributes.""" + pass + + +class SocketIO: + """Create a Flask-SocketIO server. + + :param app: The flask application instance. If the application instance + isn't known at the time this class is instantiated, then call + ``socketio.init_app(app)`` once the application instance is + available. + :param manage_session: If set to ``True``, this extension manages the user + session for Socket.IO events. If set to ``False``, + Flask's own session management is used. When using + Flask's cookie based sessions it is recommended that + you leave this set to the default of ``True``. When + using server-side sessions, a ``False`` setting + enables sharing the user session between HTTP routes + and Socket.IO events. + :param message_queue: A connection URL for a message queue service the + server can use for multi-process communication. A + message queue is not required when using a single + server process. + :param channel: The channel name, when using a message queue. If a channel + isn't specified, a default channel will be used. If + multiple clusters of SocketIO processes need to use the + same message queue without interfering with each other, + then each cluster should use a different channel. + :param path: The path where the Socket.IO server is exposed. Defaults to + ``'socket.io'``. Leave this as is unless you know what you are + doing. + :param resource: Alias to ``path``. + :param kwargs: Socket.IO and Engine.IO server options. + + The Socket.IO server options are detailed below: + + :param client_manager: The client manager instance that will manage the + client list. When this is omitted, the client list + is stored in an in-memory structure, so the use of + multiple connected servers is not possible. + :param logger: To enable logging set to ``True`` or pass a logger object to + use. To disable logging set to ``False``. The default is + ``False``. Note that fatal errors are logged even when + ``logger`` is ``False``. + :param serializer: The serialization method to use when transmitting + packets. Valid values are ``'default'``, ``'pickle'``, + ``'msgpack'`` and ``'cbor'``. Alternatively, a subclass + of the :class:`Packet` class with custom implementations + of the ``encode()`` and ``decode()`` methods can be + provided. Client and server must use compatible + serializers. + :param json: An alternative JSON module to use for encoding and decoding + packets. Custom json modules must have ``dumps`` and ``loads`` + functions that are compatible with the standard library + versions. This is a process-wide setting, all instantiated + servers and clients must use the same JSON module. + :param async_handlers: If set to ``True``, event handlers for a client are + executed in separate threads. To run handlers for a + client synchronously, set to ``False``. The default + is ``True``. + :param always_connect: When set to ``False``, new connections are + provisory until the connect handler returns + something other than ``False``, at which point they + are accepted. When set to ``True``, connections are + immediately accepted, and then if the connect + handler returns ``False`` a disconnect is issued. + Set to ``True`` if you need to emit events from the + connect handler and your client is confused when it + receives events before the connection acceptance. + In any other case use the default of ``False``. + :param namespaces: a list of namespaces that are accepted, in addition to + any namespaces for which handlers have been defined. The + default is `['/']`, which always accepts connections to + the default namespace. Set to `'*'` to accept all + namespaces. + + The Engine.IO server configuration supports the following settings: + + :param async_mode: The asynchronous model to use. See the Deployment + section in the documentation for a description of the + available options. Valid async modes are "threading", + "eventlet", "gevent" and "gevent_uwsgi". If this + argument is not given, "eventlet" is tried first, then + "gevent_uwsgi", then "gevent", and finally "threading". + The first async mode that has all its dependencies + installed is the one that is chosen. + :param ping_interval: The interval in seconds at which the server pings + the client. The default is 25 seconds. For advanced + control, a two element tuple can be given, where + the first number is the ping interval and the second + is a grace period added by the server. + :param ping_timeout: The time in seconds that the client waits for the + server to respond before disconnecting. The default + is 20 seconds. + :param max_http_buffer_size: The maximum size that is accepted for incoming + messages. The default is 1,000,000 bytes. In + spite of its name, the value set in this + argument is enforced for HTTP long-polling and + WebSocket connections. + :param allow_upgrades: Whether to allow transport upgrades or not. The + default is ``True``. + :param http_compression: Whether to compress packages when using the + polling transport. The default is ``True``. + :param compression_threshold: Only compress messages when their byte size + is greater than this value. The default is + 1024 bytes. + :param cookie: If set to a string, it is the name of the HTTP cookie the + server sends back tot he client containing the client + session id. If set to a dictionary, the ``'name'`` key + contains the cookie name and other keys define cookie + attributes, where the value of each attribute can be a + string, a callable with no arguments, or a boolean. If set + to ``None`` (the default), a cookie is not sent to the + client. + :param cors_allowed_origins: Origin or list of origins that are allowed to + connect to this server. Only the same origin + is allowed by default. Set this argument to + ``'*'`` or ``['*']`` to allow all origins, or + to ``[]`` to disable CORS handling. + :param cors_credentials: Whether credentials (cookies, authentication) are + allowed in requests to this server. The default + is ``True``. + :param monitor_clients: If set to ``True``, a background task will ensure + inactive clients are closed. Set to ``False`` to + disable the monitoring task (not recommended). The + default is ``True``. + :param transports: The list of allowed transports. Valid transports + are ``'polling'`` and ``'websocket'``. Defaults to + ``['polling', 'websocket']``. + :param engineio_logger: To enable Engine.IO logging set to ``True`` or pass + a logger object to use. To disable logging set to + ``False``. The default is ``False``. Note that + fatal errors are logged even when + ``engineio_logger`` is ``False``. + """ + reason = socketio.Server.reason + + def __init__(self, app=None, **kwargs): + self.server = None + self.server_options = {} + self.wsgi_server = None + self.handlers = [] + self.namespace_handlers = [] + self.exception_handlers = {} + self.default_exception_handler = None + self.manage_session = True + # We can call init_app when: + # - we were given the Flask app instance (standard initialization) + # - we were not given the app, but we were given a message_queue + # (standard initialization for auxiliary process) + # In all other cases we collect the arguments and assume the client + # will call init_app from an app factory function. + if app is not None or 'message_queue' in kwargs: + self.init_app(app, **kwargs) + else: + self.server_options.update(kwargs) + + def init_app(self, app, **kwargs): + if app is not None: + if not hasattr(app, 'extensions'): + app.extensions = {} # pragma: no cover + app.extensions['socketio'] = self + self.server_options.update(kwargs) + self.manage_session = self.server_options.pop('manage_session', + self.manage_session) + + if 'client_manager' not in kwargs: + url = self.server_options.get('message_queue', None) + channel = self.server_options.pop('channel', 'flask-socketio') + write_only = app is None + if url: + if url.startswith(('redis://', "rediss://")): + queue_class = socketio.RedisManager + elif url.startswith('kafka://'): + queue_class = socketio.KafkaManager + elif url.startswith('zmq'): + queue_class = socketio.ZmqManager + else: + queue_class = socketio.KombuManager + queue = queue_class(url, channel=channel, + write_only=write_only) + self.server_options['client_manager'] = queue + + if 'json' in self.server_options and \ + self.server_options['json'] == flask_json: + # flask's json module is tricky to use because its output + # changes when it is invoked inside or outside the app context + # so here to prevent any ambiguities we replace it with wrappers + # that ensure that the app context is always present + class FlaskSafeJSON: + @staticmethod + def dumps(*args, **kwargs): + with app.app_context(): + return flask_json.dumps(*args, **kwargs) + + @staticmethod + def loads(*args, **kwargs): + with app.app_context(): + return flask_json.loads(*args, **kwargs) + + self.server_options['json'] = FlaskSafeJSON + + resource = self.server_options.pop('path', None) or \ + self.server_options.pop('resource', None) or 'socket.io' + if resource.startswith('/'): + resource = resource[1:] + if os.environ.get('FLASK_RUN_FROM_CLI'): + if self.server_options.get('async_mode') is None: + self.server_options['async_mode'] = 'threading' + self.server = socketio.Server(**self.server_options) + self.async_mode = self.server.async_mode + for handler in self.handlers: + self.server.on(handler[0], handler[1], namespace=handler[2]) + for namespace_handler in self.namespace_handlers: + self.server.register_namespace(namespace_handler) + + if app is not None: + # here we attach the SocketIO middleware to the SocketIO object so + # it can be referenced later if debug middleware needs to be + # inserted + self.sockio_mw = _SocketIOMiddleware(self.server, app, + socketio_path=resource) + app.wsgi_app = self.sockio_mw + + def on(self, message, namespace=None): + """Decorator to register a SocketIO event handler. + + This decorator must be applied to SocketIO event handlers. Example:: + + @socketio.on('my event', namespace='/chat') + def handle_my_custom_event(json): + print('received json: ' + str(json)) + + :param message: The name of the event. This is normally a user defined + string, but a few event names are already defined. Use + ``'message'`` to define a handler that takes a string + payload, ``'json'`` to define a handler that takes a + JSON blob payload, ``'connect'`` or ``'disconnect'`` + to create handlers for connection and disconnection + events. + :param namespace: The namespace on which the handler is to be + registered. Defaults to the global namespace. + """ + namespace = namespace or '/' + + def decorator(handler): + @wraps(handler) + def _handler(sid, *args): + real_ns = namespace + if namespace == '*': + real_ns = sid + sid = args[0] + args = args[1:] + real_msg = message + if message == '*': + real_msg = sid + sid = args[0] + args = [real_msg] + list(args[1:]) + return self._handle_event(handler, message, real_ns, sid, + *args) + + if self.server: + self.server.on(message, _handler, namespace=namespace) + else: + self.handlers.append((message, _handler, namespace)) + return handler + return decorator + + def on_error(self, namespace=None): + """Decorator to define a custom error handler for SocketIO events. + + This decorator can be applied to a function that acts as an error + handler for a namespace. This handler will be invoked when a SocketIO + event handler raises an exception. The handler function must accept one + argument, which is the exception raised. Example:: + + @socketio.on_error(namespace='/chat') + def chat_error_handler(e): + print('An error has occurred: ' + str(e)) + + :param namespace: The namespace for which to register the error + handler. Defaults to the global namespace. + """ + namespace = namespace or '/' + + def decorator(exception_handler): + if not callable(exception_handler): + raise ValueError('exception_handler must be callable') + self.exception_handlers[namespace] = exception_handler + return exception_handler + return decorator + + def on_error_default(self, exception_handler): + """Decorator to define a default error handler for SocketIO events. + + This decorator can be applied to a function that acts as a default + error handler for any namespaces that do not have a specific handler. + Example:: + + @socketio.on_error_default + def error_handler(e): + print('An error has occurred: ' + str(e)) + """ + if not callable(exception_handler): + raise ValueError('exception_handler must be callable') + self.default_exception_handler = exception_handler + return exception_handler + + def on_event(self, message, handler, namespace=None): + """Register a SocketIO event handler. + + ``on_event`` is the non-decorator version of ``'on'``. + + Example:: + + def on_foo_event(json): + print('received json: ' + str(json)) + + socketio.on_event('my event', on_foo_event, namespace='/chat') + + :param message: The name of the event. This is normally a user defined + string, but a few event names are already defined. Use + ``'message'`` to define a handler that takes a string + payload, ``'json'`` to define a handler that takes a + JSON blob payload, ``'connect'`` or ``'disconnect'`` + to create handlers for connection and disconnection + events. + :param handler: The function that handles the event. + :param namespace: The namespace on which the handler is to be + registered. Defaults to the global namespace. + """ + self.on(message, namespace=namespace)(handler) + + def event(self, *args, **kwargs): + """Decorator to register an event handler. + + This is a simplified version of the ``on()`` method that takes the + event name from the decorated function. + + Example usage:: + + @socketio.event + def my_event(data): + print('Received data: ', data) + + The above example is equivalent to:: + + @socketio.on('my_event') + def my_event(data): + print('Received data: ', data) + + A custom namespace can be given as an argument to the decorator:: + + @socketio.event(namespace='/test') + def my_event(data): + print('Received data: ', data) + """ + if len(args) == 1 and len(kwargs) == 0 and callable(args[0]): + # the decorator was invoked without arguments + # args[0] is the decorated function + return self.on(args[0].__name__)(args[0]) + else: + # the decorator was invoked with arguments + def set_handler(handler): + return self.on(handler.__name__, *args, **kwargs)(handler) + + return set_handler + + def on_namespace(self, namespace_handler): + if not isinstance(namespace_handler, Namespace): + raise ValueError('Not a namespace instance.') + namespace_handler._set_socketio(self) + if self.server: + self.server.register_namespace(namespace_handler) + else: + self.namespace_handlers.append(namespace_handler) + + def emit(self, event, *args, **kwargs): + """Emit a server generated SocketIO event. + + This function emits a SocketIO event to one or more connected clients. + A JSON blob can be attached to the event as payload. This function can + be used outside of a SocketIO event context, so it is appropriate to + use when the server is the originator of an event, outside of any + client context, such as in a regular HTTP request handler or a + background task. Example:: + + @app.route('/ping') + def ping(): + socketio.emit('ping event', {'data': 42}, namespace='/chat') + + :param event: The name of the user event to emit. + :param args: A dictionary with the JSON data to send as payload. + :param namespace: The namespace under which the message is to be sent. + Defaults to the global namespace. + :param to: Send the message to all the users in the given room, or to + the user with the given session ID. If this parameter is not + included, the event is sent to all connected users. + :param include_self: ``True`` to include the sender when broadcasting + or addressing a room, or ``False`` to send to + everyone but the sender. + :param skip_sid: The session id of a client to ignore when broadcasting + or addressing a room. This is typically set to the + originator of the message, so that everyone except + that client receive the message. To skip multiple sids + pass a list. + :param callback: If given, this function will be called to acknowledge + that the client has received the message. The + arguments that will be passed to the function are + those provided by the client. Callback functions can + only be used when addressing an individual client. + """ + namespace = kwargs.pop('namespace', '/') + to = kwargs.pop('to', None) or kwargs.pop('room', None) + include_self = kwargs.pop('include_self', True) + skip_sid = kwargs.pop('skip_sid', None) + if not include_self and not skip_sid: + skip_sid = flask.request.sid + callback = kwargs.pop('callback', None) + if callback: + # wrap the callback so that it sets app app and request contexts + sid = None + original_callback = callback + original_namespace = namespace + if has_request_context(): + sid = getattr(flask.request, 'sid', None) + original_namespace = getattr(flask.request, 'namespace', None) + + def _callback_wrapper(*args): + return self._handle_event(original_callback, None, + original_namespace, sid, *args) + + if sid: + # the callback wrapper above will install a request context + # before invoking the original callback + # we only use it if the emit was issued from a Socket.IO + # populated request context (i.e. request.sid is defined) + callback = _callback_wrapper + self.server.emit(event, *args, namespace=namespace, to=to, + skip_sid=skip_sid, callback=callback, **kwargs) + + def call(self, event, *args, **kwargs): # pragma: no cover + """Emit a SocketIO event and wait for the response. + + This method issues an emit with a callback and waits for the callback + to be invoked by the client before returning. If the callback isn’t + invoked before the timeout, then a TimeoutError exception is raised. If + the Socket.IO connection drops during the wait, this method still waits + until the specified timeout. Example:: + + def get_status(client, data): + status = call('status', {'data': data}, to=client) + + :param event: The name of the user event to emit. + :param args: A dictionary with the JSON data to send as payload. + :param namespace: The namespace under which the message is to be sent. + Defaults to the global namespace. + :param to: The session ID of the recipient client. + :param timeout: The waiting timeout. If the timeout is reached before + the client acknowledges the event, then a + ``TimeoutError`` exception is raised. The default is 60 + seconds. + :param ignore_queue: Only used when a message queue is configured. If + set to ``True``, the event is emitted to the + client directly, without going through the queue. + This is more efficient, but only works when a + single server process is used, or when there is a + single addressee. It is recommended to always + leave this parameter with its default value of + ``False``. + """ + namespace = kwargs.pop('namespace', '/') + to = kwargs.pop('to', None) or kwargs.pop('room', None) + return self.server.call(event, *args, namespace=namespace, to=to, + **kwargs) + + def send(self, data, json=False, namespace=None, to=None, + callback=None, include_self=True, skip_sid=None, **kwargs): + """Send a server-generated SocketIO message. + + This function sends a simple SocketIO message to one or more connected + clients. The message can be a string or a JSON blob. This is a simpler + version of ``emit()``, which should be preferred. This function can be + used outside of a SocketIO event context, so it is appropriate to use + when the server is the originator of an event. + + :param data: The message to send, either a string or a JSON blob. + :param json: ``True`` if ``message`` is a JSON blob, ``False`` + otherwise. + :param namespace: The namespace under which the message is to be sent. + Defaults to the global namespace. + :param to: Send the message to all the users in the given room, or to + the user with the given session ID. If this parameter is not + included, the event is sent to all connected users. + :param include_self: ``True`` to include the sender when broadcasting + or addressing a room, or ``False`` to send to + everyone but the sender. + :param skip_sid: The session id of a client to ignore when broadcasting + or addressing a room. This is typically set to the + originator of the message, so that everyone except + that client receive the message. To skip multiple sids + pass a list. + :param callback: If given, this function will be called to acknowledge + that the client has received the message. The + arguments that will be passed to the function are + those provided by the client. Callback functions can + only be used when addressing an individual client. + """ + skip_sid = flask.request.sid if not include_self else skip_sid + if json: + self.emit('json', data, namespace=namespace, to=to, + skip_sid=skip_sid, callback=callback, **kwargs) + else: + self.emit('message', data, namespace=namespace, to=to, + skip_sid=skip_sid, callback=callback, **kwargs) + + def close_room(self, room, namespace=None): + """Close a room. + + This function removes any users that are in the given room and then + deletes the room from the server. This function can be used outside + of a SocketIO event context. + + :param room: The name of the room to close. + :param namespace: The namespace under which the room exists. Defaults + to the global namespace. + """ + self.server.close_room(room, namespace) + + def run(self, app, host=None, port=None, **kwargs): # pragma: no cover + """Run the SocketIO web server. + + :param app: The Flask application instance. + :param host: The hostname or IP address for the server to listen on. + Defaults to 127.0.0.1. + :param port: The port number for the server to listen on. Defaults to + 5000. + :param debug: ``True`` to start the server in debug mode, ``False`` to + start in normal mode. + :param use_reloader: ``True`` to enable the Flask reloader, ``False`` + to disable it. + :param reloader_options: A dictionary with options that are passed to + the Flask reloader, such as ``extra_files``, + ``reloader_type``, etc. + :param extra_files: A list of additional files that the Flask + reloader should watch. Defaults to ``None``. + Deprecated, use ``reloader_options`` instead. + :param log_output: If ``True``, the server logs all incoming + connections. If ``False`` logging is disabled. + Defaults to ``True`` in debug mode, ``False`` + in normal mode. Unused when the threading async + mode is used. + :param allow_unsafe_werkzeug: Set to ``True`` to allow the use of the + Werkzeug web server in a production + setting. Default is ``False``. Set to + ``True`` at your own risk. + :param kwargs: Additional web server options. The web server options + are specific to the server used in each of the supported + async modes. Note that options provided here will + not be seen when using an external web server such + as gunicorn, since this method is not called in that + case. + """ + if host is None: + host = '127.0.0.1' + if port is None: + server_name = app.config['SERVER_NAME'] + if server_name and ':' in server_name: + port = int(server_name.rsplit(':', 1)[1]) + else: + port = 5000 + + debug = kwargs.pop('debug', app.debug) + log_output = kwargs.pop('log_output', debug) + use_reloader = kwargs.pop('use_reloader', debug) + extra_files = kwargs.pop('extra_files', None) + reloader_options = kwargs.pop('reloader_options', {}) + if extra_files: + reloader_options['extra_files'] = extra_files + + app.debug = debug + if app.debug and self.server.eio.async_mode != 'threading': + # put the debug middleware between the SocketIO middleware + # and the Flask application instance + # + # mw1 mw2 mw3 Flask app + # o ---- o ---- o ---- o + # / + # o Flask-SocketIO + # \ middleware + # o + # Flask-SocketIO WebSocket handler + # + # BECOMES + # + # dbg-mw mw1 mw2 mw3 Flask app + # o ---- o ---- o ---- o ---- o + # / + # o Flask-SocketIO + # \ middleware + # o + # Flask-SocketIO WebSocket handler + # + self.sockio_mw.wsgi_app = DebuggedApplication( + self.sockio_mw.wsgi_app, evalex=True) + + allow_unsafe_werkzeug = kwargs.pop('allow_unsafe_werkzeug', False) + if self.server.eio.async_mode == 'threading': + try: + import simple_websocket # noqa: F401 + except ImportError: + from werkzeug._internal import _log + _log('warning', 'WebSocket transport not available. Install ' + 'simple-websocket for improved performance.') + if not sys.stdin or not sys.stdin.isatty(): # pragma: no cover + if not allow_unsafe_werkzeug: + raise RuntimeError('The Werkzeug web server is not ' + 'designed to run in production. Pass ' + 'allow_unsafe_werkzeug=True to the ' + 'run() method to disable this error.') + else: + from werkzeug._internal import _log + _log('warning', ('Werkzeug appears to be used in a ' + 'production deployment. Consider ' + 'switching to a production web server ' + 'instead.')) + app.run(host=host, port=port, threaded=True, + use_reloader=use_reloader, **reloader_options, **kwargs) + elif self.server.eio.async_mode == 'eventlet': + def run_server(): + import eventlet + import eventlet.wsgi + import eventlet.green + addresses = eventlet.green.socket.getaddrinfo(host, port) + if not addresses: + raise RuntimeError( + 'Could not resolve host to a valid address') + eventlet_socket = eventlet.listen(addresses[0][4], + addresses[0][0]) + + # If provided an SSL argument, use an SSL socket + ssl_args = ['keyfile', 'certfile', 'server_side', 'cert_reqs', + 'ssl_version', 'ca_certs', + 'do_handshake_on_connect', 'suppress_ragged_eofs', + 'ciphers'] + ssl_params = {k: kwargs[k] for k in kwargs + if k in ssl_args and kwargs[k] is not None} + for k in ssl_args: + kwargs.pop(k, None) + if len(ssl_params) > 0: + ssl_params['server_side'] = True # Listening requires true + eventlet_socket = eventlet.wrap_ssl(eventlet_socket, + **ssl_params) + + eventlet.wsgi.server(eventlet_socket, app, + log_output=log_output, **kwargs) + + if use_reloader: + run_with_reloader(run_server, **reloader_options) + else: + run_server() + elif self.server.eio.async_mode == 'gevent': + from gevent import pywsgi + try: + from geventwebsocket.handler import WebSocketHandler + gevent_websocket = True + except ImportError: + # WebSocket support will come from the simple-websocket package + gevent_websocket = False + + log = 'default' + if not log_output: + log = None + if gevent_websocket: + self.wsgi_server = pywsgi.WSGIServer( + (host, port), app, handler_class=WebSocketHandler, + log=log, **kwargs) + else: + self.wsgi_server = pywsgi.WSGIServer((host, port), app, + log=log, **kwargs) + + if use_reloader: + # monkey patching is required by the reloader + from gevent import monkey + monkey.patch_thread() + monkey.patch_time() + + def run_server(): + self.wsgi_server.serve_forever() + + run_with_reloader(run_server, **reloader_options) + else: + self.wsgi_server.serve_forever() + + def stop(self): + """Stop a running SocketIO web server. + + This method must be called from a HTTP or SocketIO handler function. + """ + if self.server.eio.async_mode == 'threading': + func = flask.request.environ.get('werkzeug.server.shutdown') + if func: + func() + else: + raise RuntimeError('Cannot stop unknown web server') + elif self.server.eio.async_mode == 'eventlet': + raise SystemExit + elif self.server.eio.async_mode == 'gevent': + self.wsgi_server.stop() + + def start_background_task(self, target, *args, **kwargs): + """Start a background task using the appropriate async model. + + This is a utility function that applications can use to start a + background task using the method that is compatible with the + selected async mode. + + :param target: the target function to execute. + :param args: arguments to pass to the function. + :param kwargs: keyword arguments to pass to the function. + + This function returns an object that represents the background task, + on which the ``join()`` method can be invoked to wait for the task to + complete. + """ + return self.server.start_background_task(target, *args, **kwargs) + + def sleep(self, seconds=0): + """Sleep for the requested amount of time using the appropriate async + model. + + This is a utility function that applications can use to put a task to + sleep without having to worry about using the correct call for the + selected async mode. + """ + return self.server.sleep(seconds) + + def test_client(self, app, namespace=None, query_string=None, + headers=None, auth=None, flask_test_client=None): + """The Socket.IO test client is useful for testing a Flask-SocketIO + server. It works in a similar way to the Flask Test Client, but + adapted to the Socket.IO server. + + :param app: The Flask application instance. + :param namespace: The namespace for the client. If not provided, the + client connects to the server on the global + namespace. + :param query_string: A string with custom query string arguments. + :param headers: A dictionary with custom HTTP headers. + :param auth: Optional authentication data, given as a dictionary. + :param flask_test_client: The instance of the Flask test client + currently in use. Passing the Flask test + client is optional, but is necessary if you + want the Flask user session and any other + cookies set in HTTP routes accessible from + Socket.IO events. + """ + return SocketIOTestClient(app, self, namespace=namespace, + query_string=query_string, headers=headers, + auth=auth, + flask_test_client=flask_test_client) + + def _handle_event(self, handler, message, namespace, sid, *args): + environ = self.server.get_environ(sid, namespace=namespace) + if not environ: + # we don't have record of this client, ignore this event + return '', 400 + app = environ['flask.app'] + with app.request_context(environ): + if self.manage_session: + # manage a separate session for this client's Socket.IO events + # created as a copy of the regular user session + if 'saved_session' not in environ: + environ['saved_session'] = _ManagedSession(flask.session) + session_obj = environ['saved_session'] + if hasattr(flask, 'globals') and \ + hasattr(flask.globals, 'app_ctx'): + if hasattr(flask.globals.app_ctx, 'session'): + # get context for flask >= 3.2 + ctx = flask.globals.app_ctx._get_current_object() + else: + # get context for Flask >= 2.2, < 3.2 + ctx = flask.globals.request_ctx._get_current_object() + else: # pragma: no cover + # get context for Flask < 2.2 + ctx = flask._request_ctx_stack.top + if hasattr(ctx, '_session'): + # update session for Flask >= 3.1.3 + ctx._session = session_obj + else: + # update session for Flask < 3.1.3 + ctx.session = session_obj + else: + # let Flask handle the user session + # for cookie based sessions, this effectively freezes the + # session to its state at connection time + # for server-side sessions, this allows HTTP and Socket.IO to + # share the session, with both having read/write access to it + session_obj = flask.session._get_current_object() + flask.request.sid = sid + flask.request.namespace = namespace + flask.request.event = {'message': message, 'args': args} + try: + if message == 'connect': + auth = args[1] if len(args) > 1 else None + try: + ret = handler(auth) + except TypeError: + ret = handler() + else: + ret = handler(*args) + except ConnectionRefusedError: + raise # let this error bubble up to python-socketio + except: + err_handler = self.exception_handlers.get( + namespace, self.default_exception_handler) + if err_handler is None: + raise + type, value, traceback = sys.exc_info() + return err_handler(value) + if not self.manage_session: + # when Flask is managing the user session, it needs to save it + if not hasattr(session_obj, 'modified') or \ + session_obj.modified: + resp = app.response_class() + app.session_interface.save_session(app, session_obj, resp) + return ret + + +def emit(event, *args, **kwargs): + """Emit a SocketIO event. + + This function emits a SocketIO event to one or more connected clients. A + JSON blob can be attached to the event as payload. This is a function that + can only be called from a SocketIO event handler, as in obtains some + information from the current client context. Example:: + + @socketio.on('my event') + def handle_my_custom_event(json): + emit('my response', {'data': 42}) + + :param event: The name of the user event to emit. + :param args: A dictionary with the JSON data to send as payload. + :param namespace: The namespace under which the message is to be sent. + Defaults to the namespace used by the originating event. + A ``'/'`` can be used to explicitly specify the global + namespace. + :param callback: Callback function to invoke with the client's + acknowledgement. + :param broadcast: ``True`` to send the message to all clients, or ``False`` + to only reply to the sender of the originating event. + :param to: Send the message to all the users in the given room, or to the + user with the given session ID. If this argument is not set and + ``broadcast`` is ``False``, then the message is sent only to the + originating user. + :param include_self: ``True`` to include the sender when broadcasting or + addressing a room, or ``False`` to send to everyone + but the sender. + :param skip_sid: The session id of a client to ignore when broadcasting + or addressing a room. This is typically set to the + originator of the message, so that everyone except + that client receive the message. To skip multiple sids + pass a list. + :param ignore_queue: Only used when a message queue is configured. If + set to ``True``, the event is emitted to the + clients directly, without going through the queue. + This is more efficient, but only works when a + single server process is used, or when there is a + single addressee. It is recommended to always leave + this parameter with its default value of ``False``. + """ + if 'namespace' in kwargs: + namespace = kwargs['namespace'] + else: + namespace = flask.request.namespace + callback = kwargs.get('callback') + broadcast = kwargs.get('broadcast') + to = kwargs.pop('to', None) or kwargs.pop('room', None) + if to is None and not broadcast: + to = flask.request.sid + include_self = kwargs.get('include_self', True) + skip_sid = kwargs.get('skip_sid') + ignore_queue = kwargs.get('ignore_queue', False) + + socketio = flask.current_app.extensions['socketio'] + return socketio.emit(event, *args, namespace=namespace, to=to, + include_self=include_self, skip_sid=skip_sid, + callback=callback, ignore_queue=ignore_queue) + + +def call(event, *args, **kwargs): # pragma: no cover + """Emit a SocketIO event and wait for the response. + + This function issues an emit with a callback and waits for the callback to + be invoked by the client before returning. If the callback isn’t invoked + before the timeout, then a TimeoutError exception is raised. If the + Socket.IO connection drops during the wait, this method still waits until + the specified timeout. Example:: + + def get_status(client, data): + status = call('status', {'data': data}, to=client) + + :param event: The name of the user event to emit. + :param args: A dictionary with the JSON data to send as payload. + :param namespace: The namespace under which the message is to be sent. + Defaults to the namespace used by the originating event. + A ``'/'`` can be used to explicitly specify the global + namespace. + :param to: The session ID of the recipient client. If this argument is not + given, the event is sent to the originating client. + :param timeout: The waiting timeout. If the timeout is reached before the + client acknowledges the event, then a ``TimeoutError`` + exception is raised. The default is 60 seconds. + :param ignore_queue: Only used when a message queue is configured. If + set to ``True``, the event is emitted to the + client directly, without going through the queue. + This is more efficient, but only works when a + single server process is used, or when there is a + single addressee. It is recommended to always leave + this parameter with its default value of ``False``. + """ + if 'namespace' in kwargs: + namespace = kwargs['namespace'] + else: + namespace = flask.request.namespace + to = kwargs.pop('to', None) or kwargs.pop('room', None) + if to is None: + to = flask.request.sid + timeout = kwargs.get('timeout', 60) + ignore_queue = kwargs.get('ignore_queue', False) + + socketio = flask.current_app.extensions['socketio'] + return socketio.call(event, *args, namespace=namespace, to=to, + ignore_queue=ignore_queue, timeout=timeout) + + +def send(message, **kwargs): + """Send a SocketIO message. + + This function sends a simple SocketIO message to one or more connected + clients. The message can be a string or a JSON blob. This is a simpler + version of ``emit()``, which should be preferred. This is a function that + can only be called from a SocketIO event handler. + + :param message: The message to send, either a string or a JSON blob. + :param json: ``True`` if ``message`` is a JSON blob, ``False`` + otherwise. + :param namespace: The namespace under which the message is to be sent. + Defaults to the namespace used by the originating event. + An empty string can be used to use the global namespace. + :param callback: Callback function to invoke with the client's + acknowledgement. + :param broadcast: ``True`` to send the message to all connected clients, or + ``False`` to only reply to the sender of the originating + event. + :param to: Send the message to all the users in the given room, or to the + user with the given session ID. If this argument is not set and + ``broadcast`` is ``False``, then the message is sent only to the + originating user. + :param include_self: ``True`` to include the sender when broadcasting or + addressing a room, or ``False`` to send to everyone + but the sender. + :param skip_sid: The session id of a client to ignore when broadcasting + or addressing a room. This is typically set to the + originator of the message, so that everyone except + that client receive the message. To skip multiple sids + pass a list. + :param ignore_queue: Only used when a message queue is configured. If + set to ``True``, the event is emitted to the + clients directly, without going through the queue. + This is more efficient, but only works when a + single server process is used, or when there is a + single addressee. It is recommended to always leave + this parameter with its default value of ``False``. + """ + json = kwargs.get('json', False) + if 'namespace' in kwargs: + namespace = kwargs['namespace'] + else: + namespace = flask.request.namespace + callback = kwargs.get('callback') + broadcast = kwargs.get('broadcast') + to = kwargs.pop('to', None) or kwargs.pop('room', None) + if to is None and not broadcast: + to = flask.request.sid + include_self = kwargs.get('include_self', True) + skip_sid = kwargs.get('skip_sid') + ignore_queue = kwargs.get('ignore_queue', False) + + socketio = flask.current_app.extensions['socketio'] + return socketio.send(message, json=json, namespace=namespace, to=to, + include_self=include_self, skip_sid=skip_sid, + callback=callback, ignore_queue=ignore_queue) + + +def join_room(room, sid=None, namespace=None): + """Join a room. + + This function puts the user in a room, under the current namespace. The + user and the namespace are obtained from the event context. This is a + function that can only be called from a SocketIO event handler. Example:: + + @socketio.on('join') + def on_join(data): + username = session['username'] + room = data['room'] + join_room(room) + send(username + ' has entered the room.', to=room) + + :param room: The name of the room to join. + :param sid: The session id of the client. If not provided, the client is + obtained from the request context. + :param namespace: The namespace for the room. If not provided, the + namespace is obtained from the request context. + """ + socketio = flask.current_app.extensions['socketio'] + sid = sid or flask.request.sid + namespace = namespace or flask.request.namespace + socketio.server.enter_room(sid, room, namespace=namespace) + + +def leave_room(room, sid=None, namespace=None): + """Leave a room. + + This function removes the user from a room, under the current namespace. + The user and the namespace are obtained from the event context. Example:: + + @socketio.on('leave') + def on_leave(data): + username = session['username'] + room = data['room'] + leave_room(room) + send(username + ' has left the room.', to=room) + + :param room: The name of the room to leave. + :param sid: The session id of the client. If not provided, the client is + obtained from the request context. + :param namespace: The namespace for the room. If not provided, the + namespace is obtained from the request context. + """ + socketio = flask.current_app.extensions['socketio'] + sid = sid or flask.request.sid + namespace = namespace or flask.request.namespace + socketio.server.leave_room(sid, room, namespace=namespace) + + +def close_room(room, namespace=None): + """Close a room. + + This function removes any users that are in the given room and then deletes + the room from the server. + + :param room: The name of the room to close. + :param namespace: The namespace for the room. If not provided, the + namespace is obtained from the request context. + """ + socketio = flask.current_app.extensions['socketio'] + namespace = namespace or flask.request.namespace + socketio.server.close_room(room, namespace=namespace) + + +def rooms(sid=None, namespace=None): + """Return a list of the rooms the client is in. + + This function returns all the rooms the client has entered, including its + own room, assigned by the Socket.IO server. + + :param sid: The session id of the client. If not provided, the client is + obtained from the request context. + :param namespace: The namespace for the room. If not provided, the + namespace is obtained from the request context. + """ + socketio = flask.current_app.extensions['socketio'] + sid = sid or flask.request.sid + namespace = namespace or flask.request.namespace + return socketio.server.rooms(sid, namespace=namespace) + + +def disconnect(sid=None, namespace=None, silent=False): + """Disconnect the client. + + This function terminates the connection with the client. As a result of + this call the client will receive a disconnect event. Example:: + + @socketio.on('message') + def receive_message(msg): + if is_banned(session['username']): + disconnect() + else: + # ... + + :param sid: The session id of the client. If not provided, the client is + obtained from the request context. + :param namespace: The namespace for the room. If not provided, the + namespace is obtained from the request context. + :param silent: this option is deprecated. + """ + socketio = flask.current_app.extensions['socketio'] + sid = sid or flask.request.sid + namespace = namespace or flask.request.namespace + return socketio.server.disconnect(sid, namespace=namespace) diff --git a/venv/lib/python3.9/site-packages/flask_socketio/namespace.py b/venv/lib/python3.9/site-packages/flask_socketio/namespace.py new file mode 100644 index 0000000..541fa79 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask_socketio/namespace.py @@ -0,0 +1,54 @@ +from socketio import Namespace as _Namespace + + +class Namespace(_Namespace): + def __init__(self, namespace=None): + super().__init__(namespace) + self.socketio = None + + def _set_socketio(self, socketio): + self.socketio = socketio + + def trigger_event(self, event, *args): + """Dispatch an event to the proper handler method. + + In the most common usage, this method is not overloaded by subclasses, + as it performs the routing of events to methods. However, this + method can be overridden if special dispatching rules are needed, or if + having a single method that catches all events is desired. + """ + handler_name = 'on_' + (event or '') + if not hasattr(self, handler_name): + # there is no handler for this event, so we ignore it + return + handler = getattr(self, handler_name) + try: + return self.socketio._handle_event(handler, event, self.namespace, + *args) + except TypeError: + if event == 'disconnect': + # legacy disconnect events do not have the reason argument + return self.socketio._handle_event( + handler, event, self.namespace, *args[:-1]) + else: + raise + + def emit(self, event, data=None, room=None, include_self=True, + namespace=None, callback=None): + """Emit a custom event to one or more connected clients.""" + return self.socketio.emit(event, data, room=room, + include_self=include_self, + namespace=namespace or self.namespace, + callback=callback) + + def send(self, data, room=None, include_self=True, namespace=None, + callback=None): + """Send a message to one or more connected clients.""" + return self.socketio.send(data, room=room, include_self=include_self, + namespace=namespace or self.namespace, + callback=callback) + + def close_room(self, room, namespace=None): + """Close a room.""" + return self.socketio.close_room(room=room, + namespace=namespace or self.namespace) diff --git a/venv/lib/python3.9/site-packages/flask_socketio/test_client.py b/venv/lib/python3.9/site-packages/flask_socketio/test_client.py new file mode 100644 index 0000000..f1ac441 --- /dev/null +++ b/venv/lib/python3.9/site-packages/flask_socketio/test_client.py @@ -0,0 +1,244 @@ +import uuid + +from socketio import packet +from socketio.pubsub_manager import PubSubManager +from flask.testing import EnvironBuilder + + +class SocketIOTestClient: + """ + This class is useful for testing a Flask-SocketIO server. It works in a + similar way to the Flask Test Client, but adapted to the Socket.IO server. + + :param app: The Flask application instance. + :param socketio: The application's ``SocketIO`` instance. + :param namespace: The namespace for the client. If not provided, the client + connects to the server on the global namespace. + :param query_string: A string with custom query string arguments. + :param headers: A dictionary with custom HTTP headers. + :param auth: Optional authentication data, given as a dictionary. + :param flask_test_client: The instance of the Flask test client + currently in use. Passing the Flask test + client is optional, but is necessary if you + want the Flask user session and any other + cookies set in HTTP routes accessible from + Socket.IO events. + """ + clients = {} + + def __init__(self, app, socketio, namespace=None, query_string=None, + headers=None, auth=None, flask_test_client=None): + def _mock_send_packet(eio_sid, pkt): + # make sure the packet can be encoded and decoded + epkt = pkt.encode() + if not isinstance(epkt, list): + pkt = packet.Packet(encoded_packet=epkt) + else: + pkt = packet.Packet(encoded_packet=epkt[0]) + for att in epkt[1:]: + pkt.add_attachment(att) + client = self.clients.get(eio_sid) + if not client: + return + if pkt.packet_type == packet.EVENT or \ + pkt.packet_type == packet.BINARY_EVENT: + if pkt.data[0] == 'message' or pkt.data[0] == 'json': + client.queue.append({ + 'name': pkt.data[0], + 'args': pkt.data[1], + 'namespace': pkt.namespace or '/'}) + else: + client.queue.append({ + 'name': pkt.data[0], + 'args': pkt.data[1:], + 'namespace': pkt.namespace or '/'}) + elif pkt.packet_type == packet.ACK or \ + pkt.packet_type == packet.BINARY_ACK: + client.acks = {'args': pkt.data, + 'namespace': pkt.namespace or '/'} + elif pkt.packet_type in [packet.DISCONNECT, packet.CONNECT_ERROR]: + client.connected[pkt.namespace or '/'] = False + + _current_packet = None + + def _mock_send_eio_packet(eio_sid, eio_pkt): + nonlocal _current_packet + if _current_packet is not None: + _current_packet.add_attachment(eio_pkt.data) + if _current_packet.attachment_count == \ + len(_current_packet.attachments): + _mock_send_packet(eio_sid, _current_packet) + _current_packet = None + else: + pkt = packet.Packet(encoded_packet=eio_pkt.data) + if pkt.attachment_count == 0: + _mock_send_packet(eio_sid, pkt) + else: + _current_packet = pkt + + self.app = app + self.flask_test_client = flask_test_client + self.eio_sid = uuid.uuid4().hex + self.clients[self.eio_sid] = self + self.callback_counter = 0 + self.socketio = socketio + self.connected = {} + self.queue = [] + self.acks = None + socketio.server._send_packet = _mock_send_packet + socketio.server._send_eio_packet = _mock_send_eio_packet + socketio.server.environ[self.eio_sid] = {} + socketio.server.async_handlers = False # easier to test when + socketio.server.eio.async_handlers = False # events are sync + if isinstance(socketio.server.manager, PubSubManager): + raise RuntimeError('Test client cannot be used with a message ' + 'queue. Disable the queue on your test ' + 'configuration.') + socketio.server.manager.initialize() + self.connect(namespace=namespace, query_string=query_string, + headers=headers, auth=auth) + + def is_connected(self, namespace=None): + """Check if a namespace is connected. + + :param namespace: The namespace to check. The global namespace is + assumed if this argument is not provided. + """ + return self.connected.get(namespace or '/', False) + + def connect(self, namespace=None, query_string=None, headers=None, + auth=None): + """Connect the client. + + :param namespace: The namespace for the client. If not provided, the + client connects to the server on the global + namespace. + :param query_string: A string with custom query string arguments. + :param headers: A dictionary with custom HTTP headers. + :param auth: Optional authentication data, given as a dictionary. + + Note that it is usually not necessary to explicitly call this method, + since a connection is automatically established when an instance of + this class is created. An example where it this method would be useful + is when the application accepts multiple namespace connections. + """ + url = '/socket.io' + namespace = namespace or '/' + if query_string: + if query_string[0] != '?': + query_string = '?' + query_string + url += query_string + if self.flask_test_client: + # let Flask's test client build an environ dictionary + req = self.flask_test_client._request_from_builder_args( + args=(), kwargs={'path': url, 'headers': headers}) + environ = req.environ + else: + environ = EnvironBuilder( + self.app, path=url, headers=headers).get_environ() + environ['flask.app'] = self.app + + if self.flask_test_client: + # inject cookies from Flask + if hasattr(self.flask_test_client, '_add_cookies_to_wsgi'): + # flask >= 2.3 + self.flask_test_client._add_cookies_to_wsgi(environ) + else: # pragma: no cover + # flask < 2.3 + self.flask_test_client.cookie_jar.inject_wsgi(environ) + self.socketio.server._handle_eio_connect(self.eio_sid, environ) + pkt = packet.Packet(packet.CONNECT, auth, namespace=namespace) + self.socketio.server._handle_eio_message(self.eio_sid, pkt.encode()) + sid = self.socketio.server.manager.sid_from_eio_sid(self.eio_sid, + namespace) + if sid: + self.connected[namespace] = True + + def disconnect(self, namespace=None): + """Disconnect the client. + + :param namespace: The namespace to disconnect. The global namespace is + assumed if this argument is not provided. + """ + if not self.is_connected(namespace): + raise RuntimeError('not connected') + pkt = packet.Packet(packet.DISCONNECT, namespace=namespace) + self.socketio.server._handle_eio_message(self.eio_sid, pkt.encode()) + del self.connected[namespace or '/'] + + def emit(self, event, *args, **kwargs): + """Emit an event to the server. + + :param event: The event name. + :param *args: The event arguments. + :param callback: ``True`` if the client requests a callback, ``False`` + if not. Note that client-side callbacks are not + implemented, a callback request will just tell the + server to provide the arguments to invoke the + callback, but no callback is invoked. Instead, the + arguments that the server provided for the callback + are returned by this function. + :param namespace: The namespace of the event. The global namespace is + assumed if this argument is not provided. + """ + namespace = kwargs.pop('namespace', None) + if not self.is_connected(namespace): + raise RuntimeError('not connected') + callback = kwargs.pop('callback', False) + id = None + if callback: + self.callback_counter += 1 + id = self.callback_counter + pkt = packet.Packet(packet.EVENT, data=[event] + list(args), + namespace=namespace, id=id) + encoded_pkt = pkt.encode() + if isinstance(encoded_pkt, list): + for epkt in encoded_pkt: + self.socketio.server._handle_eio_message(self.eio_sid, epkt) + else: + self.socketio.server._handle_eio_message(self.eio_sid, encoded_pkt) + if self.acks is not None: + ack = self.acks + self.acks = None + return ack['args'][0] if len(ack['args']) == 1 \ + else ack['args'] + + def send(self, data, json=False, callback=False, namespace=None): + """Send a text or JSON message to the server. + + :param data: A string, dictionary or list to send to the server. + :param json: ``True`` to send a JSON message, ``False`` to send a text + message. + :param callback: ``True`` if the client requests a callback, ``False`` + if not. Note that client-side callbacks are not + implemented, a callback request will just tell the + server to provide the arguments to invoke the + callback, but no callback is invoked. Instead, the + arguments that the server provided for the callback + are returned by this function. + :param namespace: The namespace of the event. The global namespace is + assumed if this argument is not provided. + """ + if json: + msg = 'json' + else: + msg = 'message' + return self.emit(msg, data, callback=callback, namespace=namespace) + + def get_received(self, namespace=None): + """Return the list of messages received from the server. + + Since this is not a real client, any time the server emits an event, + the event is simply stored. The test code can invoke this method to + obtain the list of events that were received since the last call. + + :param namespace: The namespace to get events from. The global + namespace is assumed if this argument is not + provided. + """ + if not self.is_connected(namespace): + raise RuntimeError('not connected') + namespace = namespace or '/' + r = [pkt for pkt in self.queue if pkt['namespace'] == namespace] + self.queue = [pkt for pkt in self.queue if pkt not in r] + return r diff --git a/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/METADATA b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/METADATA new file mode 100644 index 0000000..30d6653 --- /dev/null +++ b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/METADATA @@ -0,0 +1,672 @@ +Metadata-Version: 2.4 +Name: frozenlist +Version: 1.8.0 +Summary: A list-like structure which implements collections.abc.MutableSequence +Home-page: https://github.com/aio-libs/frozenlist +Maintainer: aiohttp team +Maintainer-email: team@aiohttp.org +License: Apache-2.0 +Project-URL: Chat: Matrix, https://matrix.to/#/#aio-libs:matrix.org +Project-URL: Chat: Matrix Space, https://matrix.to/#/#aio-libs-space:matrix.org +Project-URL: CI: Github Actions, https://github.com/aio-libs/frozenlist/actions +Project-URL: Code of Conduct, https://github.com/aio-libs/.github/blob/master/CODE_OF_CONDUCT.md +Project-URL: Coverage: codecov, https://codecov.io/github/aio-libs/frozenlist +Project-URL: Docs: Changelog, https://github.com/aio-libs/frozenlist/blob/master/CHANGES.rst#changelog +Project-URL: Docs: RTD, https://frozenlist.aio-libs.org +Project-URL: GitHub: issues, https://github.com/aio-libs/frozenlist/issues +Project-URL: GitHub: repo, https://github.com/aio-libs/frozenlist +Classifier: Development Status :: 5 - Production/Stable +Classifier: Intended Audience :: Developers +Classifier: Operating System :: POSIX +Classifier: Operating System :: MacOS :: MacOS X +Classifier: Operating System :: Microsoft :: Windows +Classifier: Programming Language :: Cython +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: Programming Language :: Python :: 3.14 +Classifier: Programming Language :: Python :: Implementation :: CPython +Classifier: Programming Language :: Python :: Implementation :: PyPy +Requires-Python: >=3.9 +Description-Content-Type: text/x-rst +License-File: LICENSE +Dynamic: license-file + +frozenlist +========== + +.. image:: https://github.com/aio-libs/frozenlist/workflows/CI/badge.svg + :target: https://github.com/aio-libs/frozenlist/actions + :alt: GitHub status for master branch + +.. image:: https://codecov.io/gh/aio-libs/frozenlist/branch/master/graph/badge.svg?flag=pytest + :target: https://codecov.io/gh/aio-libs/frozenlist?flags[]=pytest + :alt: codecov.io status for master branch + +.. image:: https://img.shields.io/pypi/v/frozenlist.svg?logo=Python&logoColor=white + :target: https://pypi.org/project/frozenlist + :alt: frozenlist @ PyPI + +.. image:: https://readthedocs.org/projects/frozenlist/badge/?version=latest + :target: https://frozenlist.aio-libs.org + :alt: Read The Docs build status badge + +.. image:: https://img.shields.io/matrix/aio-libs:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat + :target: https://matrix.to/#/%23aio-libs:matrix.org + :alt: Matrix Room — #aio-libs:matrix.org + +.. image:: https://img.shields.io/matrix/aio-libs-space:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs-space%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat + :target: https://matrix.to/#/%23aio-libs-space:matrix.org + :alt: Matrix Space — #aio-libs-space:matrix.org + +Introduction +------------ + +``frozenlist.FrozenList`` is a list-like structure which implements +``collections.abc.MutableSequence``. The list is *mutable* until ``FrozenList.freeze`` +is called, after which list modifications raise ``RuntimeError``: + + +>>> from frozenlist import FrozenList +>>> fl = FrozenList([17, 42]) +>>> fl.append('spam') +>>> fl.append('Vikings') +>>> fl + +>>> fl.freeze() +>>> fl + +>>> fl.frozen +True +>>> fl.append("Monty") +Traceback (most recent call last): + File "", line 1, in + File "frozenlist/_frozenlist.pyx", line 97, in frozenlist._frozenlist.FrozenList.append + self._check_frozen() + File "frozenlist/_frozenlist.pyx", line 19, in frozenlist._frozenlist.FrozenList._check_frozen + raise RuntimeError("Cannot modify frozen list.") +RuntimeError: Cannot modify frozen list. + + +FrozenList is also hashable, but only when frozen. Otherwise it also throws a RuntimeError: + + +>>> fl = FrozenList([17, 42, 'spam']) +>>> hash(fl) +Traceback (most recent call last): + File "", line 1, in + File "frozenlist/_frozenlist.pyx", line 111, in frozenlist._frozenlist.FrozenList.__hash__ + raise RuntimeError("Cannot hash unfrozen list.") +RuntimeError: Cannot hash unfrozen list. +>>> fl.freeze() +>>> hash(fl) +3713081631934410656 +>>> dictionary = {fl: 'Vikings'} # frozen fl can be a dict key +>>> dictionary +{: 'Vikings'} + + +Installation +------------ + +:: + + $ pip install frozenlist + + +Documentation +------------- + +https://frozenlist.aio-libs.org + +Communication channels +---------------------- + +We have a *Matrix Space* `#aio-libs-space:matrix.org +`_ which is +also accessible via Gitter. + +License +------- + +``frozenlist`` is offered under the Apache 2 license. + +Source code +----------- + +The project is hosted on GitHub_ + +Please file an issue in the `bug tracker +`_ if you have found a bug +or have some suggestions to improve the library. + +.. _GitHub: https://github.com/aio-libs/frozenlist + +========= +Changelog +========= + +.. + You should *NOT* be adding new change log entries to this file, this + file is managed by towncrier. You *may* edit previous change logs to + fix problems like typo corrections or such. + To add a new change log entry, please see + https://pip.pypa.io/en/latest/development/contributing/#news-entries + we named the news folder "changes". + + WARNING: Don't drop the next directive! + +.. towncrier release notes start + +v1.8.0 +====== + +*(2025-10-05)* + + +Contributor-facing changes +-------------------------- + +- The ``reusable-cibuildwheel.yml`` workflow has been refactored to + be more generic and ``ci-cd.yml`` now holds all the configuration + toggles -- by `@webknjaz `__. + + *Related issues and pull requests on GitHub:* + `#668 `__. + +- When building wheels, the source distribution is now passed directly + to the ``cibuildwheel`` invocation -- by `@webknjaz `__. + + *Related issues and pull requests on GitHub:* + `#669 `__. + +- Builds and tests have been added to + ``ci-cd.yml`` for arm64 Windows wheels -- by `@finnagin `__. + + *Related issues and pull requests on GitHub:* + `#677 `__. + +- Started building wheels for CPython 3.14 -- by `@kumaraditya303 `__. + + *Related issues and pull requests on GitHub:* + `#681 `__, `#682 `__. + +- Removed ``--config-settings=pure-python=false`` from ``requirements/dev.txt``. + Developers on CPython still get accelerated builds by default. To explicitly build + a pure Python wheel, use ``pip install -e . --config-settings=pure-python=true`` + -- by `@bdraco `__. + + *Related issues and pull requests on GitHub:* + `#687 `__. + + +---- + + +v1.7.0 +====== + +*(2025-06-09)* + + +Features +-------- + +- Added deepcopy support to FrozenList -- by `@bdraco `__. + + *Related issues and pull requests on GitHub:* + `#659 `__. + + +Packaging updates and notes for downstreams +------------------------------------------- + +- Fixed an issue where ``frozenlist`` binary wheels would be built with debugging symbols and line tracing enabled, which significantly impacted performance. Line tracing is now disabled by default and can only be enabled explicitly -- by `@bdraco `__. + + This change ensures that production builds are optimized for performance. Developers who need line tracing for debugging purposes can still enable it by: + + 1. Setting the ``FROZENLIST_CYTHON_TRACING`` environment variable + 2. Using the ``--config-setting=with-cython-tracing=true`` option with pip + + *Related issues and pull requests on GitHub:* + `#660 `__. + +- Enabled ``PIP_CONSTRAINT`` environment variable in the build configuration to ensure the pinned Cython version from ``requirements/cython.txt`` is used during wheel builds. + + *Related issues and pull requests on GitHub:* + `#661 `__. + + +---- + + +v1.6.2 +====== + +*(2025-06-03)* + + +No significant changes. + + +---- + + +v1.6.1 +====== + +*(2025-06-02)* + + +Bug fixes +--------- + +- Correctly use ``cimport`` for including ``PyBool_FromLong`` -- by `@lysnikolaou `__. + + *Related issues and pull requests on GitHub:* + `#653 `__. + + +Packaging updates and notes for downstreams +------------------------------------------- + +- Exclude ``_frozenlist.cpp`` from bdists/wheels -- by `@musicinmybrain `__. + + *Related issues and pull requests on GitHub:* + `#649 `__. + +- Updated to use Cython 3.1 universally across the build path -- by `@lysnikolaou `__. + + *Related issues and pull requests on GitHub:* + `#654 `__. + + +---- + + +v1.6.0 +====== + +*(2025-04-17)* + + +Bug fixes +--------- + +- Stopped implicitly allowing the use of Cython pre-release versions when + building the distribution package -- by `@ajsanchezsanz `__ and + `@markgreene74 `__. + + *Related commits on GitHub:* + `41591f2 `__. + + +Features +-------- + +- Implemented support for the free-threaded build of CPython 3.13 -- by `@lysnikolaou `__. + + *Related issues and pull requests on GitHub:* + `#618 `__. + +- Started building armv7l wheels -- by `@bdraco `__. + + *Related issues and pull requests on GitHub:* + `#642 `__. + + +Packaging updates and notes for downstreams +------------------------------------------- + +- Stopped implicitly allowing the use of Cython pre-release versions when + building the distribution package -- by `@ajsanchezsanz `__ and + `@markgreene74 `__. + + *Related commits on GitHub:* + `41591f2 `__. + +- Started building wheels for the free-threaded build of CPython 3.13 -- by `@lysnikolaou `__. + + *Related issues and pull requests on GitHub:* + `#618 `__. + +- The packaging metadata switched to including an SPDX license identifier introduced in `PEP 639 `__ -- by `@cdce8p `__. + + *Related issues and pull requests on GitHub:* + `#639 `__. + + +Contributor-facing changes +-------------------------- + +- GitHub Actions CI/CD is now configured to manage caching pip-ecosystem + dependencies using `re-actors/cache-python-deps`_ -- an action by + `@webknjaz `__ that takes into account ABI stability and the exact + version of Python runtime. + + .. _`re-actors/cache-python-deps`: + https://github.com/marketplace/actions/cache-python-deps + + *Related issues and pull requests on GitHub:* + `#633 `__. + +- Organized dependencies into test and lint dependencies so that no + unnecessary ones are installed during CI runs -- by `@lysnikolaou `__. + + *Related issues and pull requests on GitHub:* + `#636 `__. + + +---- + + +1.5.0 (2024-10-22) +================== + +Bug fixes +--------- + +- An incorrect signature of the ``__class_getitem__`` class method + has been fixed, adding a missing ``class_item`` argument under + Python 3.8 and older. + + This change also improves the code coverage of this method that + was previously missing -- by `@webknjaz `__. + + + *Related issues and pull requests on GitHub:* + `#567 `__, `#571 `__. + + +Improved documentation +---------------------- + +- Rendered issue, PR, and commit links now lead to + ``frozenlist``'s repo instead of ``yarl``'s repo. + + + *Related issues and pull requests on GitHub:* + `#573 `__. + +- On the ``Contributing docs`` page, + a link to the ``Towncrier philosophy`` has been fixed. + + + *Related issues and pull requests on GitHub:* + `#574 `__. + + +Packaging updates and notes for downstreams +------------------------------------------- + +- A name of a temporary building directory now reflects + that it's related to ``frozenlist``, not ``yarl``. + + + *Related issues and pull requests on GitHub:* + `#573 `__. + +- Declared Python 3.13 supported officially in the distribution package metadata. + + + *Related issues and pull requests on GitHub:* + `#595 `__. + + +---- + + +1.4.1 (2023-12-15) +================== + +Packaging updates and notes for downstreams +------------------------------------------- + +- Declared Python 3.12 and PyPy 3.8-3.10 supported officially + in the distribution package metadata. + + + *Related issues and pull requests on GitHub:* + `#553 `__. + +- Replaced the packaging is replaced from an old-fashioned ``setup.py`` to an + in-tree `PEP 517 `__ build backend -- by `@webknjaz `__. + + Whenever the end-users or downstream packagers need to build ``frozenlist`` + from source (a Git checkout or an sdist), they may pass a ``config_settings`` + flag ``pure-python``. If this flag is not set, a C-extension will be built + and included into the distribution. + + Here is how this can be done with ``pip``: + + .. code-block:: console + + $ python3 -m pip install . --config-settings=pure-python= + + This will also work with ``-e | --editable``. + + The same can be achieved via ``pypa/build``: + + .. code-block:: console + + $ python3 -m build --config-setting=pure-python= + + Adding ``-w | --wheel`` can force ``pypa/build`` produce a wheel from source + directly, as opposed to building an ``sdist`` and then building from it. + + + *Related issues and pull requests on GitHub:* + `#560 `__. + + +Contributor-facing changes +-------------------------- + +- It is now possible to request line tracing in Cython builds using the + ``with-cython-tracing`` `PEP 517 `__ config setting + -- `@webknjaz `__. + + This can be used in CI and development environment to measure coverage + on Cython modules, but is not normally useful to the end-users or + downstream packagers. + + Here's a usage example: + + .. code-block:: console + + $ python3 -Im pip install . --config-settings=with-cython-tracing=true + + For editable installs, this setting is on by default. Otherwise, it's + off unless requested explicitly. + + The following produces C-files required for the Cython coverage + plugin to map the measurements back to the PYX-files: + + .. code-block:: console + + $ python -Im pip install -e . + + Alternatively, the ``FROZENLIST_CYTHON_TRACING=1`` environment variable + can be set to do the same as the `PEP 517 `__ config setting. + + + *Related issues and pull requests on GitHub:* + `#560 `__. + +- Coverage collection has been implemented for the Cython modules + -- by `@webknjaz `__. + + It will also be reported to Codecov from any non-release CI jobs. + + + *Related issues and pull requests on GitHub:* + `#561 `__. + +- A step-by-step ``Release Guide`` guide has + been added, describing how to release *frozenlist* -- by `@webknjaz `__. + + This is primarily targeting the maintainers. + + + *Related issues and pull requests on GitHub:* + `#563 `__. + +- Detailed ``Contributing Guidelines`` on + authoring the changelog fragments have been published in the + documentation -- by `@webknjaz `__. + + + *Related issues and pull requests on GitHub:* + `#564 `__. + + +---- + + +1.4.0 (2023-07-12) +================== + +The published source distribution package became buildable +under Python 3.12. + + +---- + + +Bugfixes +-------- + +- Removed an unused ``typing.Tuple`` import + `#411 `_ + + +Deprecations and Removals +------------------------- + +- Dropped Python 3.7 support. + `#413 `_ + + +Misc +---- + +- `#410 `_, `#433 `_ + + +---- + + +1.3.3 (2022-11-08) +================== + +- Fixed CI runs when creating a new release, where new towncrier versions + fail when the current version section is already present. + + +---- + + +1.3.2 (2022-11-08) +================== + +Misc +---- + +- Updated the CI runs to better check for test results and to avoid deprecated syntax. `#327 `_ + + +---- + + +1.3.1 (2022-08-02) +================== + +The published source distribution package became buildable +under Python 3.11. + + +---- + + +1.3.0 (2022-01-18) +================== + +Bugfixes +-------- + +- Do not install C sources with binary distributions. + `#250 `_ + + +Deprecations and Removals +------------------------- + +- Dropped Python 3.6 support + `#274 `_ + + +---- + + +1.2.0 (2021-10-16) +================== + +Features +-------- + +- ``FrozenList`` now supports being used as a generic type as per PEP 585, e.g. ``frozen_int_list: FrozenList[int]`` (requires Python 3.9 or newer). + `#172 `_ +- Added support for Python 3.10. + `#227 `_ +- Started shipping platform-specific wheels with the ``musl`` tag targeting typical Alpine Linux runtimes. + `#227 `_ +- Started shipping platform-specific arm64 wheels for Apple Silicon. + `#227 `_ + + +---- + + +1.1.1 (2020-11-14) +================== + +Bugfixes +-------- + +- Provide x86 Windows wheels. + `#169 `_ + + +---- + + +1.1.0 (2020-10-13) +================== + +Features +-------- + +- Add support for hashing of a frozen list. + `#136 `_ + +- Support Python 3.8 and 3.9. + +- Provide wheels for ``aarch64``, ``i686``, ``ppc64le``, ``s390x`` architectures on + Linux as well as ``x86_64``. + + +---- + + +1.0.0 (2019-11-09) +================== + +Deprecations and Removals +------------------------- + +- Dropped support for Python 3.5; only 3.6, 3.7 and 3.8 are supported going forward. + `#24 `_ diff --git a/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/RECORD b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/RECORD new file mode 100644 index 0000000..c863789 --- /dev/null +++ b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/RECORD @@ -0,0 +1,12 @@ +frozenlist-1.8.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +frozenlist-1.8.0.dist-info/METADATA,sha256=lGwi3J9-LHby1pjwCkMG2-Sagg4rPxoOIv5ShsvsNfE,20333 +frozenlist-1.8.0.dist-info/RECORD,, +frozenlist-1.8.0.dist-info/WHEEL,sha256=IArzJf9J4Hj3DKjrYC0eEkABNjBPm7UE3dK4SCixVJs,180 +frozenlist-1.8.0.dist-info/licenses/LICENSE,sha256=b9UkPpLdf5jsacesN3co50kFcJ_1J6W_mNbQJjwE9bY,11332 +frozenlist-1.8.0.dist-info/top_level.txt,sha256=jivtxsPXA3nK3WBWW2LW5Mtu_GHt8UZA13NeCs2cKuA,11 +frozenlist/__init__.py,sha256=xAIE2u9ncAbjATGIPfno_OJfe8AQ-1h7z_uc73dYsEA,2108 +frozenlist/__init__.pyi,sha256=vMEoES1xGegPtVXoCi9XydEeHsyuIq-KdeXwP5PdsaA,1470 +frozenlist/__pycache__/__init__.cpython-39.pyc,, +frozenlist/_frozenlist.cpython-39-x86_64-linux-gnu.so,sha256=TJ852d9MC5JHQytsQZbDT_pwLKr-4_wHLsBTpSdIU4A,700952 +frozenlist/_frozenlist.pyx,sha256=t-aGjuEiVt_MZPBJ0RnraavVmPBK6arz3i48ZvXuYsU,3708 +frozenlist/py.typed,sha256=sow9soTwP9T_gEAQSVh7Gb8855h04Nwmhs2We-JRgZM,7 diff --git a/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/WHEEL b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/WHEEL new file mode 100644 index 0000000..fce86d5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/WHEEL @@ -0,0 +1,7 @@ +Wheel-Version: 1.0 +Generator: setuptools (80.9.0) +Root-Is-Purelib: false +Tag: cp39-cp39-manylinux_2_5_x86_64 +Tag: cp39-cp39-manylinux1_x86_64 +Tag: cp39-cp39-manylinux_2_28_x86_64 + diff --git a/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/licenses/LICENSE b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/licenses/LICENSE new file mode 100644 index 0000000..7082a2d --- /dev/null +++ b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/licenses/LICENSE @@ -0,0 +1,201 @@ +Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2013-2019 Nikolay Kim and Andrew Svetlov + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/top_level.txt new file mode 100644 index 0000000..52f13fc --- /dev/null +++ b/venv/lib/python3.9/site-packages/frozenlist-1.8.0.dist-info/top_level.txt @@ -0,0 +1 @@ +frozenlist diff --git a/venv/lib/python3.9/site-packages/frozenlist/__init__.py b/venv/lib/python3.9/site-packages/frozenlist/__init__.py new file mode 100644 index 0000000..41c8595 --- /dev/null +++ b/venv/lib/python3.9/site-packages/frozenlist/__init__.py @@ -0,0 +1,86 @@ +import os +import types +from collections.abc import MutableSequence +from functools import total_ordering + +__version__ = "1.8.0" + +__all__ = ("FrozenList", "PyFrozenList") # type: Tuple[str, ...] + + +NO_EXTENSIONS = bool(os.environ.get("FROZENLIST_NO_EXTENSIONS")) # type: bool + + +@total_ordering +class FrozenList(MutableSequence): + __slots__ = ("_frozen", "_items") + __class_getitem__ = classmethod(types.GenericAlias) + + def __init__(self, items=None): + self._frozen = False + if items is not None: + items = list(items) + else: + items = [] + self._items = items + + @property + def frozen(self): + return self._frozen + + def freeze(self): + self._frozen = True + + def __getitem__(self, index): + return self._items[index] + + def __setitem__(self, index, value): + if self._frozen: + raise RuntimeError("Cannot modify frozen list.") + self._items[index] = value + + def __delitem__(self, index): + if self._frozen: + raise RuntimeError("Cannot modify frozen list.") + del self._items[index] + + def __len__(self): + return self._items.__len__() + + def __iter__(self): + return self._items.__iter__() + + def __reversed__(self): + return self._items.__reversed__() + + def __eq__(self, other): + return list(self) == other + + def __le__(self, other): + return list(self) <= other + + def insert(self, pos, item): + if self._frozen: + raise RuntimeError("Cannot modify frozen list.") + self._items.insert(pos, item) + + def __repr__(self): + return f"" + + def __hash__(self): + if self._frozen: + return hash(tuple(self)) + else: + raise RuntimeError("Cannot hash unfrozen list.") + + +PyFrozenList = FrozenList + + +if not NO_EXTENSIONS: + try: + from ._frozenlist import FrozenList as CFrozenList # type: ignore + except ImportError: # pragma: no cover + pass + else: + FrozenList = CFrozenList # type: ignore diff --git a/venv/lib/python3.9/site-packages/frozenlist/__init__.pyi b/venv/lib/python3.9/site-packages/frozenlist/__init__.pyi new file mode 100644 index 0000000..ae803ef --- /dev/null +++ b/venv/lib/python3.9/site-packages/frozenlist/__init__.pyi @@ -0,0 +1,47 @@ +from typing import ( + Generic, + Iterable, + Iterator, + List, + MutableSequence, + Optional, + TypeVar, + Union, + overload, +) + +_T = TypeVar("_T") +_Arg = Union[List[_T], Iterable[_T]] + +class FrozenList(MutableSequence[_T], Generic[_T]): + def __init__(self, items: Optional[_Arg[_T]] = None) -> None: ... + @property + def frozen(self) -> bool: ... + def freeze(self) -> None: ... + @overload + def __getitem__(self, i: int) -> _T: ... + @overload + def __getitem__(self, s: slice) -> FrozenList[_T]: ... + @overload + def __setitem__(self, i: int, o: _T) -> None: ... + @overload + def __setitem__(self, s: slice, o: Iterable[_T]) -> None: ... + @overload + def __delitem__(self, i: int) -> None: ... + @overload + def __delitem__(self, i: slice) -> None: ... + def __len__(self) -> int: ... + def __iter__(self) -> Iterator[_T]: ... + def __reversed__(self) -> Iterator[_T]: ... + def __eq__(self, other: object) -> bool: ... + def __le__(self, other: FrozenList[_T]) -> bool: ... + def __ne__(self, other: object) -> bool: ... + def __lt__(self, other: FrozenList[_T]) -> bool: ... + def __ge__(self, other: FrozenList[_T]) -> bool: ... + def __gt__(self, other: FrozenList[_T]) -> bool: ... + def insert(self, pos: int, item: _T) -> None: ... + def __repr__(self) -> str: ... + def __hash__(self) -> int: ... + +# types for C accelerators are the same +CFrozenList = PyFrozenList = FrozenList diff --git a/venv/lib/python3.9/site-packages/frozenlist/_frozenlist.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/frozenlist/_frozenlist.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..dc8db8b96b11787db686e2fadffa3c555f6912b0 GIT binary patch literal 700952 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 z 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
          !uMU4UueQBknl5?@H%YXJ?|!Z9YxVsRypQR7 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 z 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 y;!a&D&(EXV59mkjUgIy + return list(self) > other + if op == 5: # => + return list(self) >= other + + def insert(self, pos, item): + self._check_frozen() + self._items.insert(pos, item) + + def __contains__(self, item): + return item in self._items + + def __iadd__(self, items): + self._check_frozen() + self._items += list(items) + return self + + def index(self, item): + return self._items.index(item) + + def remove(self, item): + self._check_frozen() + self._items.remove(item) + + def clear(self): + self._check_frozen() + self._items.clear() + + def extend(self, items): + self._check_frozen() + self._items += list(items) + + def reverse(self): + self._check_frozen() + self._items.reverse() + + def pop(self, index=-1): + self._check_frozen() + return self._items.pop(index) + + def append(self, item): + self._check_frozen() + return self._items.append(item) + + def count(self, item): + return self._items.count(item) + + def __repr__(self): + return ''.format(self._frozen.load(), + self._items) + + def __hash__(self): + if self._frozen.load(): + return hash(tuple(self._items)) + else: + raise RuntimeError("Cannot hash unfrozen list.") + + def __deepcopy__(self, memo): + cdef FrozenList new_list + obj_id = id(self) + + # Return existing copy if already processed (circular reference) + if obj_id in memo: + return memo[obj_id] + + # Create new instance and register immediately + new_list = self.__class__([]) + memo[obj_id] = new_list + + # Deep copy items + new_list._items[:] = [copy.deepcopy(item, memo) for item in self._items] + + # Preserve frozen state + if self._frozen.load(): + new_list.freeze() + + return new_list + + +MutableSequence.register(FrozenList) diff --git a/venv/lib/python3.9/site-packages/frozenlist/py.typed b/venv/lib/python3.9/site-packages/frozenlist/py.typed new file mode 100644 index 0000000..f5642f7 --- /dev/null +++ b/venv/lib/python3.9/site-packages/frozenlist/py.typed @@ -0,0 +1 @@ +Marker diff --git a/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/INSTALLER b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/INSTALLER new file mode 100644 index 0000000..a1b589e --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/METADATA b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/METADATA new file mode 100644 index 0000000..e7ceda5 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/METADATA @@ -0,0 +1,379 @@ +Metadata-Version: 2.4 +Name: gevent +Version: 26.4.0 +Summary: Coroutine-based network library +Home-page: http://www.gevent.org/ +Author: Denis Bilenko +Author-email: denis.bilenko@gmail.com +Maintainer: Jason Madden +Maintainer-email: jason@seecoresoftware.com +License: MIT +Project-URL: Bug Tracker, https://github.com/gevent/gevent/issues +Project-URL: Source Code, https://github.com/gevent/gevent/ +Project-URL: Documentation, http://www.gevent.org +Project-URL: Changes, https://www.gevent.org/changelog.html +Keywords: greenlet coroutine cooperative multitasking light threads monkey +Classifier: Programming Language :: Python :: 3 :: Only +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: Programming Language :: Python :: Implementation :: CPython +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Operating System :: MacOS :: MacOS X +Classifier: Operating System :: POSIX +Classifier: Operating System :: Microsoft :: Windows +Classifier: Topic :: Internet +Classifier: Topic :: Software Development :: Libraries :: Python Modules +Classifier: Intended Audience :: Developers +Classifier: Development Status :: 4 - Beta +Requires-Python: >=3.9 +Description-Content-Type: text/x-rst +License-File: LICENSE +Requires-Dist: greenlet>=3.2.2; platform_python_implementation == "CPython" +Requires-Dist: cffi>=1.17.1; platform_python_implementation == "CPython" and sys_platform == "win32" +Requires-Dist: zope.event +Requires-Dist: zope.interface +Provides-Extra: dnspython +Requires-Dist: dnspython<2.0,>=1.16.0; python_version < "3.10" and extra == "dnspython" +Requires-Dist: idna; python_version < "3.10" and extra == "dnspython" +Provides-Extra: events +Provides-Extra: monitor +Requires-Dist: psutil>=6.0.0; (sys_platform != "win32" or platform_python_implementation == "CPython") and extra == "monitor" +Provides-Extra: recommended +Requires-Dist: cffi>=1.17.1; platform_python_implementation == "CPython" and extra == "recommended" +Requires-Dist: dnspython<2.0,>=1.16.0; python_version < "3.10" and extra == "recommended" +Requires-Dist: idna; python_version < "3.10" and extra == "recommended" +Requires-Dist: psutil>=6.0.0; (sys_platform != "win32" or platform_python_implementation == "CPython") and extra == "recommended" +Provides-Extra: docs +Requires-Dist: sphinx; extra == "docs" +Requires-Dist: furo; extra == "docs" +Requires-Dist: repoze.sphinx.autointerface; extra == "docs" +Requires-Dist: sphinxcontrib-programoutput; extra == "docs" +Requires-Dist: zope.schema; extra == "docs" +Provides-Extra: test +Requires-Dist: cffi>=1.17.1; platform_python_implementation == "CPython" and extra == "test" +Requires-Dist: dnspython<2.0,>=1.16.0; python_version < "3.10" and extra == "test" +Requires-Dist: idna; python_version < "3.10" and extra == "test" +Requires-Dist: psutil>=6.0.0; (sys_platform != "win32" or platform_python_implementation == "CPython") and extra == "test" +Requires-Dist: requests; extra == "test" +Requires-Dist: coverage<7.13,>=5.0; sys_platform != "win32" and extra == "test" +Requires-Dist: objgraph; extra == "test" +Dynamic: author +Dynamic: author-email +Dynamic: classifier +Dynamic: description +Dynamic: home-page +Dynamic: keywords +Dynamic: license +Dynamic: license-file +Dynamic: maintainer +Dynamic: maintainer-email +Dynamic: project-url +Dynamic: provides-extra +Dynamic: requires-dist +Dynamic: requires-python +Dynamic: summary + +======== + gevent +======== + +.. image:: https://github.com/gevent/gevent/workflows/gevent%20testing/badge.svg + :target: https://github.com/gevent/gevent/actions + +.. image:: https://ci.appveyor.com/api/projects/status/bqxl88yhpho223jg?svg=true + :target: https://ci.appveyor.com/project/denik/gevent + +.. image:: https://coveralls.io/repos/gevent/gevent/badge.svg?branch=master&service=github + :target: https://coveralls.io/github/gevent/gevent?branch=master + +.. + This file is included in README.rst from the top-level + so it is limited to pure ReST markup, not Sphinx. + + + +gevent is a coroutine_ -based Python_ networking library that uses +`greenlet `_ to provide a high-level synchronous API on top of the `libev`_ +or `libuv`_ event loop. + +Features include: + + +* Fast event loop based on `libev`_ or `libuv`_. +* Lightweight execution units based on greenlets. +* API that re-uses concepts from the Python standard library (for + examples there are `events`_ and + `queues`_). +* `Cooperative sockets with SSL support `_ +* `Cooperative DNS queries `_ performed through a threadpool, + dnspython, or c-ares. +* `Monkey patching utility `_ to get 3rd party modules to become cooperative +* TCP/UDP/HTTP servers +* Subprocess support (through `gevent.subprocess`_) +* Thread pools + +gevent is `inspired by eventlet`_ but features a more consistent API, +simpler implementation and better performance. Read why others `use +gevent`_ and check out the list of the `open source projects based on +gevent`_. + +gevent was written by `Denis Bilenko `_. + +Since version 1.1, gevent is maintained by Jason Madden for +`NextThought `_ (through gevent 21) and +`Institutional Shareholder Services `_ +with help from the `contributors +`_ and is +licensed under the MIT license. + +See `what's new`_ in the latest major release. + +Check out the detailed changelog_ for this version. + +.. _events: http://www.gevent.org/api/gevent.event.html#gevent.event.Event +.. _queues: http://www.gevent.org/api/gevent.queue.html#gevent.queue.Queue +.. _gevent.subprocess: http://www.gevent.org/api/gevent.subprocess.html#module-gevent.subprocess + +.. _coroutine: https://en.wikipedia.org/wiki/Coroutine +.. _Python: http://python.org +.. _libev: http://software.schmorp.de/pkg/libev.html +.. _libuv: http://libuv.org +.. _inspired by eventlet: http://blog.gevent.org/2010/02/27/why-gevent/ +.. _use gevent: http://groups.google.com/group/gevent/browse_thread/thread/4de9703e5dca8271 +.. _open source projects based on gevent: https://github.com/gevent/gevent/wiki/Projects +.. _what's new: http://www.gevent.org/whatsnew_1_5.html +.. _changelog: http://www.gevent.org/changelog.html + + +Read the documentation online at http://www.gevent.org. + +Post issues on the `bug tracker`_, discuss and ask open ended +questions on the `mailing list`_, and find announcements and +information on the blog_ and `twitter (@gevent)`_. + +=============================== + Installation and Requirements +=============================== + +.. _installation: + +.. + This file is included in README.rst so it is limited to plain + ReST markup, not Sphinx. + +.. note:: + + If you are reading this document on the `Python Package Index`_ + (PyPI, https://pypi.org/), it is specific to the version of gevent that + you are viewing. If you are viewing this document on gevent.org, it + refers to the current state of gevent in source control (git + master). + +Supported Platforms +=================== + +This version of gevent runs on Python 3.9 and up (for exact details +of tested versions, see the classifiers on the PyPI page or in +``setup.py``). gevent requires the `greenlet +`_ library and will install the +`cffi`_ library by default on Windows. The cffi library will become +the default on all platforms in a future release of gevent. + +This version of gevent is also tested on PyPy 3.10 (7.3.12); it +should run on PyPy 3.9 and above. On PyPy, there are no external +dependencies. + +gevent is tested on Windows, macOS, and Linux, and should run on most +other Unix-like operating systems (e.g., FreeBSD, Solaris, etc.) + +.. note:: + + Windows is supported as a tier 2, "best effort," platform. It is + suitable for development, but not recommended for production. In + particular, PyPy3 on Windows may have issues, especially with + subprocesses. + + On Windows, using the deprecated libev backend, gevent is + limited to a maximum of 1024 open sockets due to + `limitations in libev`_. This limitation should not exist + with the default libuv backend. + + +.. admonition:: Free-Threading is not Supported + + Beginning with 3.14 (and experimental in 3.13), CPython may be + built in a free-threaded mode where the GIL is not used by default. + gevent does not support this mode (although it will build with it), + and using gevent in such an interpreter will cause the GIL to be + enabled. + + The underlying greenlet library `also has this limitation + `_. + + In addition, other limitations in greenlet mean that attempting to + use gevent in a free-threaded interpreter is not recommended at + this time. It is likely to work, but may have resource leaks. + +Older Versions of Python +------------------------ + +Users of older versions of Python 2 or Python 3 may install an older +version of gevent. Note that these versions are generally not +supported. + ++-------+-------+ +|Python |Gevent | +|Version|Version| ++=======+=======+ +|2.5 |1.0.x | +| | | ++-------+-------+ +|2.6 |1.1.x | ++-------+-------+ +|<= |1.2.x | +|2.7.8 | | ++-------+-------+ +|3.3 |1.2.x | ++-------+-------+ +|3.4.0 -| 1.3.x | +|3.4.2 | | +| | | ++-------+-------+ +|3.4.3 | 1.4.x | +| | | +| | | ++-------+-------+ +|3.5.x | 20.9.0| +| | | +| | | ++-------+-------+ +|2.7.9 -| | +|2.7.18,| 22.10 | +|3.6, | | +|3.7 | | +| | | ++-------+-------+ +|3.8 | 24.2.1| ++-------+-------+ + +Installation +============ + +.. note:: + + This section is about installing released versions of gevent as + distributed on the `Python Package Index`_. For building gevent + from source, including customizing the build and embedded + libraries, see `Installing From Source`_. + +.. _Python Package Index: http://pypi.org/project/gevent + +gevent and greenlet can both be installed with `pip`_, e.g., ``pip +install gevent``. Installation using `buildout +`_ is also supported. + +On Windows, macOS, and Linux, both gevent and greenlet are +distributed as binary `wheels`_. + +.. tip:: + + You need Pip 8.0 or later, or buildout 2.10.0, to install the binary + wheels on Windows or macOS. On Linux, you'll need `pip 19 + `_ to install the + manylinux2010 wheels. + +.. tip:: + + While the x86-64 binaries are considered production quality, they + are built with relatively low optimization levels and no hardware + specific optimizations. Serious production users are encouraged to + install from source with appropriate compiler flags. + +.. tip:: + + Beginning with gevent 20.12.0, 64-bit ARM binaries are distributed + on PyPI for aarch64 manylinux2014 compatible systems. Installing these + needs a very recent version of ``pip``. These wheels *do not* + contain the c-ares resolver, are not tested, and are built with + very low levels of optimization. Serious production users of + gevent on 64-bit ARM systems are encouraged to build their own + binary wheels. + + Beginning with gevent 22.10.0, ppc64le binaries are distributed on + PyPI. The same caveats apply as for 64-bit ARM binaries. Using them + for anything other than local development is discouraged. + + Beginning with gevent 23, muslinux aarch64 and S390X binaries + are distributed on PyPI. The same caveats apply as for 64-bit ARM + binaries. Using them for anything other than local development is + discouraged. + + +Installing From Source +---------------------- + +If you are unable to use the binary wheels (for platforms where no +pre-built wheels are available or if wheel installation is disabled), +you can build gevent from source. A normal ``pip install`` will +fall back to doing this if no binary wheel is available. See +`Installing From Source`_ for more, including common installation issues. + +Extra Dependencies +================== + +There are a number +of additional libraries that extend gevent's functionality and will be +used if they are available. All of these may be installed using +`setuptools extras +`_, +as named below, e.g., ``pip install gevent[events]``. + +events + In versions of gevent up to and including 20.5.0, this provided configurable + event support using `zope.event + `_ and was highly + recommended. + + In versions after that, this extra is empty and does nothing. It + will be removed in gevent 21.0. + +dnspython + Enables a pure-Python resolver, backed by `dnspython + `_. On Python 2, this also + includes `idna `_. They can be + installed with the ``dnspython`` extra. + + .. note:: This is not compatible with Python 3.10+ or dnspython 2. + +monitor + Enhancements to gevent's self-monitoring capabilities. This + includes the `psutil `_ library, + which is needed to monitor memory usage. (Note that this may not + build on all platforms.) + +recommended + A shortcut for installing suggested extras together. This includes + the non-test extras defined here, plus additions that improve + gevent's operation on certain platforms (for example, in the past, + it has included backports of newer APIs). + +test + Everything needed to run the complete gevent test suite. + + +.. _`pip`: https://pip.pypa.io/en/stable/installing/ +.. _`wheels`: http://pythonwheels.com +.. _`gevent 1.5`: whatsnew_1_5.html +.. _`Installing From Source`: https://www.gevent.org/development/installing_from_source.html + +.. _`cffi`: https://cffi.readthedocs.io +.. _`limitations in libev`: http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#WIN32_PLATFORM_LIMITATIONS_AND_WORKA + + +.. _bug tracker: https://github.com/gevent/gevent/issues +.. _mailing list: http://groups.google.com/group/gevent +.. _blog: https://dev.nextthought.com/blog/categories/gevent.html +.. _twitter (@gevent): http://twitter.com/gevent diff --git a/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/RECORD b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/RECORD new file mode 100644 index 0000000..ee4c930 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/RECORD @@ -0,0 +1,559 @@ +gevent-26.4.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +gevent-26.4.0.dist-info/METADATA,sha256=Hnd4JrwMFUuiDjdWs2zZI0qizU5cCCzJuY1xxqrgALk,14436 +gevent-26.4.0.dist-info/RECORD,, +gevent-26.4.0.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +gevent-26.4.0.dist-info/WHEEL,sha256=qPmJyWyQZZZsTIoPVtZka1PEBRwhSMmilee5MyOokDs,102 +gevent-26.4.0.dist-info/entry_points.txt,sha256=g2MTL3KfdJVJ6CEp0d4f9x6HjLAp-MklXYlxlZQ9_u4,95 +gevent-26.4.0.dist-info/licenses/LICENSE,sha256=TUa8EdGeOFPVQyWXO44sUwkPVjinvyf6H18SMseJAfc,1235 +gevent-26.4.0.dist-info/top_level.txt,sha256=fpElGiTe2fdw27vmNxdV5MQpyndjzWZMk5TB_NMYPSI,7 +gevent/__init__.py,sha256=k443jQ4OP8p_xpvLDmPA_k2AJX8c0drC9PSUzQI3PCY,3406 +gevent/__pycache__/__init__.cpython-39.pyc,, +gevent/__pycache__/_abstract_linkable.cpython-39.pyc,, +gevent/__pycache__/_compat.cpython-39.pyc,, +gevent/__pycache__/_config.cpython-39.pyc,, +gevent/__pycache__/_fileobjectcommon.cpython-39.pyc,, +gevent/__pycache__/_fileobjectposix.cpython-39.pyc,, +gevent/__pycache__/_greenlet_primitives.cpython-39.pyc,, +gevent/__pycache__/_hub_local.cpython-39.pyc,, +gevent/__pycache__/_hub_primitives.cpython-39.pyc,, +gevent/__pycache__/_ident.cpython-39.pyc,, +gevent/__pycache__/_imap.cpython-39.pyc,, +gevent/__pycache__/_interfaces.cpython-39.pyc,, +gevent/__pycache__/_monitor.cpython-39.pyc,, +gevent/__pycache__/_patcher.cpython-39.pyc,, +gevent/__pycache__/_semaphore.cpython-39.pyc,, +gevent/__pycache__/_socket3.cpython-39.pyc,, +gevent/__pycache__/_socketcommon.cpython-39.pyc,, +gevent/__pycache__/_tblib.cpython-39.pyc,, +gevent/__pycache__/_threading.cpython-39.pyc,, +gevent/__pycache__/_tracer.cpython-39.pyc,, +gevent/__pycache__/_util.cpython-39.pyc,, +gevent/__pycache__/_waiter.cpython-39.pyc,, +gevent/__pycache__/ares.cpython-39.pyc,, +gevent/__pycache__/backdoor.cpython-39.pyc,, +gevent/__pycache__/baseserver.cpython-39.pyc,, +gevent/__pycache__/builtins.cpython-39.pyc,, +gevent/__pycache__/contextvars.cpython-39.pyc,, +gevent/__pycache__/core.cpython-39.pyc,, +gevent/__pycache__/event.cpython-39.pyc,, +gevent/__pycache__/events.cpython-39.pyc,, +gevent/__pycache__/exceptions.cpython-39.pyc,, +gevent/__pycache__/fileobject.cpython-39.pyc,, +gevent/__pycache__/greenlet.cpython-39.pyc,, +gevent/__pycache__/hub.cpython-39.pyc,, +gevent/__pycache__/local.cpython-39.pyc,, +gevent/__pycache__/lock.cpython-39.pyc,, +gevent/__pycache__/os.cpython-39.pyc,, +gevent/__pycache__/pool.cpython-39.pyc,, +gevent/__pycache__/pywsgi.cpython-39.pyc,, +gevent/__pycache__/queue.cpython-39.pyc,, +gevent/__pycache__/resolver_ares.cpython-39.pyc,, +gevent/__pycache__/resolver_thread.cpython-39.pyc,, +gevent/__pycache__/select.cpython-39.pyc,, +gevent/__pycache__/selectors.cpython-39.pyc,, +gevent/__pycache__/server.cpython-39.pyc,, +gevent/__pycache__/signal.cpython-39.pyc,, +gevent/__pycache__/socket.cpython-39.pyc,, +gevent/__pycache__/ssl.cpython-39.pyc,, +gevent/__pycache__/subprocess.cpython-39.pyc,, +gevent/__pycache__/thread.cpython-39.pyc,, +gevent/__pycache__/threading.cpython-39.pyc,, +gevent/__pycache__/threadpool.cpython-39.pyc,, +gevent/__pycache__/time.cpython-39.pyc,, +gevent/__pycache__/timeout.cpython-39.pyc,, +gevent/__pycache__/util.cpython-39.pyc,, +gevent/__pycache__/win32util.cpython-39.pyc,, +gevent/_abstract_linkable.py,sha256=oN5vmwA87__1J4uYo_Fha94tRlnOSzDIn5c22JMpgAY,23307 +gevent/_compat.py,sha256=9PIVyfCmm2qbERq4r8vorDXhDI4RqSACYg2-gT5XBsM,4147 +gevent/_config.py,sha256=iqrPFIMuU_FON_EJWW2eADkkSlcoRNq5FSCGkd2lqAY,21843 +gevent/_ffi/__init__.py,sha256=BTBgjjvO4ecQBPbReBhem-0zvy1Mq6jXf5dMrykGIhs,493 +gevent/_ffi/__pycache__/__init__.cpython-39.pyc,, +gevent/_ffi/__pycache__/callback.cpython-39.pyc,, +gevent/_ffi/__pycache__/loop.cpython-39.pyc,, +gevent/_ffi/__pycache__/watcher.cpython-39.pyc,, +gevent/_ffi/callback.py,sha256=JL2mvMVD7vVaatIdUxo9UfvUJvIwiHhZ7qLGgiBc8YA,1564 +gevent/_ffi/loop.py,sha256=bkRKg67wfjHhYM5DPBzeiMZQ5tqdM0ijC-waBGO85CY,32221 +gevent/_ffi/watcher.py,sha256=eaTCOfOPCTn2sGqf7CwbZcRNr0AzG7gfIYOasZ-5S64,20982 +gevent/_fileobjectcommon.py,sha256=S-69DeitiPnvjbGfexTuD2yzPeI0-eDv_1DBIlV0sTg,24359 +gevent/_fileobjectposix.py,sha256=_-olxI6HSHVOBMIy7cuVjzQ310D7TJDN_BcEvS_GfVg,12867 +gevent/_gevent_c_abstract_linkable.cpython-39-x86_64-linux-gnu.so,sha256=O07bl8aNrNceFmkuBS2UCL66lSeqaI7-kwGlgwe7R2k,879184 +gevent/_gevent_c_greenlet_primitives.cpython-39-x86_64-linux-gnu.so,sha256=9cpbgKub87cCu49c8QU8JJAL6TZcBAkQ-r9WC56l6Hk,467856 +gevent/_gevent_c_hub_local.cpython-39-x86_64-linux-gnu.so,sha256=1t3qaQIYxvP483N1KxfewAvUsGEIdPjJEe1EQMtZKL8,384480 +gevent/_gevent_c_hub_primitives.cpython-39-x86_64-linux-gnu.so,sha256=_ek8g-WMo6EIIGyQP7HOyX5P_v_RP0ddIyrs2RTJ96k,1004536 +gevent/_gevent_c_ident.cpython-39-x86_64-linux-gnu.so,sha256=bUG6mv5TI9v7NkMCC9o10b9MkUJQVToJtKoyoO8t1AM,319160 +gevent/_gevent_c_imap.cpython-39-x86_64-linux-gnu.so,sha256=yy6UVK62k_m0zeGhbCEkb5PVMHibFz5sxeMVUydObd0,569744 +gevent/_gevent_c_semaphore.cpython-39-x86_64-linux-gnu.so,sha256=QVBGNjkOOfHh-MuDGJgj3haVQj26D9_qRqNbh-WhVGs,919784 +gevent/_gevent_c_tracer.cpython-39-x86_64-linux-gnu.so,sha256=1B_wnnqcc-Y0CEywfZLCrXA98CGLRMFv5PNa2Brg32w,653632 +gevent/_gevent_c_waiter.cpython-39-x86_64-linux-gnu.so,sha256=l1hE4BZaskv7eUVV5-WkAfkCooMs8otDvFBYWyYrwQ4,520072 +gevent/_gevent_cevent.cpython-39-x86_64-linux-gnu.so,sha256=KZfOdE_NAHyp2z7olnnduswJFez9Mb0PFN_MWr7ud6E,726696 +gevent/_gevent_cgreenlet.cpython-39-x86_64-linux-gnu.so,sha256=U3KDIpM3TfPE46dnClSeb-AZ5w-fLdUbvxZjlFou-W8,1737160 +gevent/_gevent_clocal.cpython-39-x86_64-linux-gnu.so,sha256=SleSWJwy9N4fHnGPwAPxAYntWJ2j5yhCJF_bbyGbayk,892704 +gevent/_gevent_cqueue.cpython-39-x86_64-linux-gnu.so,sha256=oisEYUbjuiNSOr325cLEBJ47Ks1wEVIKOZUgUZDZBoA,1617424 +gevent/_greenlet_primitives.py,sha256=i2b0bj5oYr5qzhRRQPhzbCMEg9zMRAx_zhiSOCHtTeY,4647 +gevent/_hub_local.py,sha256=8GJdnF5I-0FnfHHRadOzHVbkOSQaTpZEXSrVFi3s_ME,4827 +gevent/_hub_primitives.py,sha256=aTCXhH1gJNdb1JONz7X0fBnNCu9Lv1U55sVF2dXpnUk,14026 +gevent/_ident.py,sha256=w7kjbyaNR4MVzRTjB0_3ZUZ-JYS6eukY55l-r_MdjM4,2249 +gevent/_imap.py,sha256=RtrIfyUPPMFxNX4gSVuJQLjn6oxIdI2t9ERVErIgtwg,7672 +gevent/_interfaces.py,sha256=x6C1cCk3taLGZHgZdntaZ1lm1tc8vv4bpMZuJHHKlls,9985 +gevent/_monitor.py,sha256=u4mr6Jm_rifaBz_c_ucspvK2ycTWA8u_6js03cJScls,12079 +gevent/_patcher.py,sha256=e4dfPB9MhmnipVpwwEPcChMbiC2F0Rp_MdkwZ02ZF_c,9020 +gevent/_semaphore.py,sha256=BBjdqHfz8NFVD_XbKbiGxgMUvxYfGeBXA1qh26tgqb8,20887 +gevent/_socket3.py,sha256=un-14nAyir0Qt4t4oan_r4k7B54h20KLJWUpyavm4Go,23663 +gevent/_socketcommon.py,sha256=v2d0FGS_2jlw8bHeX7HC37Xpc7TnpCqojx1sfU6PPNE,25984 +gevent/_tblib.py,sha256=KEUqdUGWtBQiqffg-iFs5DXPFhxs5B-pdfDjjDsf2Cg,12810 +gevent/_threading.py,sha256=mYFPLhSlSWXTGDixNLm0JFfnh3jH1e51fyl5iSXaczM,8342 +gevent/_tracer.py,sha256=FX1B-6s7GWWKLvcdYKRZYCbHABy9i3c5p66cy95ijKM,6455 +gevent/_util.py,sha256=piN-RGPbJ5H2-HLylfwPOfYILdKvkvFWyu4KcWLI9_U,10984 +gevent/_waiter.py,sha256=fCVW5AxbqvIYROgHbC22kljXr6wHIr54fPePtTVMoW4,7387 +gevent/ares.py,sha256=2LLRXoWkyS5YwSpJ0b7R_e3M8ikwpsA53eUWizys8eM,383 +gevent/backdoor.py,sha256=9QhAL6qPSgBgVVSXYyUXC8DbFwRIxKkQ8kzQreZq4LQ,8674 +gevent/baseserver.py,sha256=WANbcgk4Sa0Se-vnF_jM7vPpi4lU224djJ2eiH7Rgao,16716 +gevent/builtins.py,sha256=0K7haEs0DhfIEhArBaxaRRx_i3Dws2ZqFWey6HOYjHo,4108 +gevent/contextvars.py,sha256=a0f8GxwQESkQM-zUNO-gdmDcW-2-kV321auE6KbSHGw,9838 +gevent/core.py,sha256=XgaVreHocvO9JCVby3JCo8ixbllJL08V9OrA7ETDaHs,479 +gevent/event.py,sha256=A3jGW2iaUrZ5NxE2aZeZKoGOVogFwuvy_PEN7-KOLEo,15110 +gevent/events.py,sha256=olRj_SbHNW-I8Ifs6vNYWaRKV0bWtgEFnOYt6Uhihuk,17182 +gevent/exceptions.py,sha256=0YCfR0WyL1VFtQ5oqKtr8sj8ts0U8wh04UDGwH-_8cc,3823 +gevent/fileobject.py,sha256=GNeYmbGSLWq8t311pVbgYsyDpzMmtQ8m2fHI15a0EpI,3020 +gevent/greenlet.py,sha256=_mE6nBep4cyCPXHgJB7FSaZCbOskwezE3vtL_Zwqkys,46347 +gevent/hub.py,sha256=_ZodHnESbnnj2qg8p-4aGhY4HH4u-7T7wJHI00JYJAM,34590 +gevent/libev/__init__.py,sha256=I6hpYFJCnbBBDrousKzZ7Ql--mnfAFwfM2q1BuxcMfI,169 +gevent/libev/__pycache__/__init__.cpython-39.pyc,, +gevent/libev/__pycache__/_corecffi_build.cpython-39.pyc,, +gevent/libev/__pycache__/corecffi.cpython-39.pyc,, +gevent/libev/__pycache__/watcher.cpython-39.pyc,, +gevent/libev/_corecffi.abi3.so,sha256=VoHh59-nVDCO4EtpUzlJ6W0282KYlAW29ILA3A63M8w,383680 +gevent/libev/_corecffi_build.py,sha256=ARUO9jiMqdfk80aSs4_CkBIIwcpUaF9enyj-AJVXVP8,4059 +gevent/libev/corecext.cpython-39-x86_64-linux-gnu.so,sha256=ta1-gwLgDxY7GGbp04Ve1MyFEDlXllQDQBZh3nki3t8,2401256 +gevent/libev/corecffi.py,sha256=yxz0x6YzcQSFPSuba3JJpPJkkdU7KBwFPa299cGOGSw,13720 +gevent/libev/watcher.py,sha256=eaIiXusNuLSN3DtEqB3BpbgS6C91dSfYJT7pX7Kw5Ac,8196 +gevent/libuv/__init__.py,sha256=I6hpYFJCnbBBDrousKzZ7Ql--mnfAFwfM2q1BuxcMfI,169 +gevent/libuv/__pycache__/__init__.cpython-39.pyc,, +gevent/libuv/__pycache__/_corecffi_build.cpython-39.pyc,, +gevent/libuv/__pycache__/loop.cpython-39.pyc,, +gevent/libuv/__pycache__/watcher.cpython-39.pyc,, +gevent/libuv/_corecffi.abi3.so,sha256=4iFT1W6Jq2l5brV5U13hyai98j2_24CI9zHd-z-1yM0,1282272 +gevent/libuv/_corecffi_build.py,sha256=0vp4N0SsIS_ClIba_1_hdwH4A_bWiMQdTOrHT8HJbyo,11676 +gevent/libuv/loop.py,sha256=sAjyJe48RpOrldp0hxXWJ8LpukKZSnvsyZLIEA_jl6Y,30385 +gevent/libuv/watcher.py,sha256=eKYkUdYsPhWYc-eOJh1-LFqVK1FG6o3N3aoMnvg1xJ4,29069 +gevent/local.py,sha256=I12OWg8nWR5q7p3UZhJjSMfbyHuShVqYqQTkmPdF-8k,21457 +gevent/lock.py,sha256=szq7dShyvOHad-nZPXH8p-JA2WKBaeY6PXx4arFqsJM,11587 +gevent/monkey/__init__.py,sha256=3STdzP6RHGLUkRrSkTVPpHGccz3kRSeq4hUswYtdIDw,26713 +gevent/monkey/__main__.py,sha256=JPNIwI-Qb_VQERows-n4R2XzcY8rGCt5FR8kUiKD1J4,31 +gevent/monkey/__pycache__/__init__.cpython-39.pyc,, +gevent/monkey/__pycache__/__main__.cpython-39.pyc,, +gevent/monkey/__pycache__/_errors.cpython-39.pyc,, +gevent/monkey/__pycache__/_main.cpython-39.pyc,, +gevent/monkey/__pycache__/_patch_thread_common.cpython-39.pyc,, +gevent/monkey/__pycache__/_patch_thread_gte313.cpython-39.pyc,, +gevent/monkey/__pycache__/_patch_thread_lt313.cpython-39.pyc,, +gevent/monkey/__pycache__/_state.cpython-39.pyc,, +gevent/monkey/__pycache__/_util.cpython-39.pyc,, +gevent/monkey/__pycache__/api.cpython-39.pyc,, +gevent/monkey/_errors.py,sha256=cBctoXo4sAME97eaCdWGY1q1zEOtG8krDFyv-O5WOiQ,547 +gevent/monkey/_main.py,sha256=8zzhBLrRSBV0D_GbgwcY_iwsIR3ayrG9xX8TvyGAvH8,4411 +gevent/monkey/_patch_thread_common.py,sha256=tC4pYcPNGwGUEmDCeZ0Gqu2uqPTNLBVdoQY4GSh4tA0,13253 +gevent/monkey/_patch_thread_gte313.py,sha256=qJ-zRqorbNu_TheCLQbkRjpnU0qHsys5dgjEF7K4Rx0,4082 +gevent/monkey/_patch_thread_lt313.py,sha256=CTsQFPuHDrXyIphWZAYWqMwHVhYg_ucWsVR-93UFFlk,3182 +gevent/monkey/_state.py,sha256=FGJFTDXFUwio1b-IwtlOmXCysVrqheM9j9JjRxOzrqI,1897 +gevent/monkey/_util.py,sha256=U-KBkLB9v5J7RedNHOfK7qaaonaKo5Z7oQ-5gwrYnAo,3689 +gevent/monkey/api.py,sha256=ZoRUk0e-wVXE6CnTI8BULQaDAIVqyEmTCwXhVzUrh5s,6760 +gevent/os.py,sha256=Qikg66OYH_k8r-Zd9QKMIqWoDCWkZ3-SA53_IL0rfis,26187 +gevent/pool.py,sha256=JSt0I106SQr3wYjc9z919ebcX3MUyM33gaAbohSXNCo,25634 +gevent/pywsgi.py,sha256=45e-9_KKZx23OGfvwEadV2r8xLL6HZnaJZuym2qTbIQ,69235 +gevent/queue.py,sha256=X3liAQ9DM-0a7u6JBxFEQgpd_ilIy0XKB6sydV0EVw0,27832 +gevent/resolver/__init__.py,sha256=lx0L8Up3DXkp61RQxceQbmj5AVFt9WGMhHi12-iy7GI,10760 +gevent/resolver/__pycache__/__init__.cpython-39.pyc,, +gevent/resolver/__pycache__/_addresses.cpython-39.pyc,, +gevent/resolver/__pycache__/_hostsfile.cpython-39.pyc,, +gevent/resolver/__pycache__/ares.cpython-39.pyc,, +gevent/resolver/__pycache__/blocking.cpython-39.pyc,, +gevent/resolver/__pycache__/dnspython.cpython-39.pyc,, +gevent/resolver/__pycache__/thread.cpython-39.pyc,, +gevent/resolver/_addresses.py,sha256=BvLXxwN1QTQ4Pajgk5UwvHRP6J8TDQ8n-_75AfIaOVo,4795 +gevent/resolver/_hostsfile.py,sha256=KY6q-aY5F1f3MV4SZioAcstBRvxm4647-JKlCtY47E0,4629 +gevent/resolver/ares.py,sha256=6Oed67PUah45MwMQz3KFIWNAnm7XkoRJXx9vz7voJEc,12965 +gevent/resolver/blocking.py,sha256=5ubBMewB7X-JouMKIlf_s2JNw4KJ_EqmNVUg4PrrSaA,1216 +gevent/resolver/cares.cpython-39-x86_64-linux-gnu.so,sha256=9M1IetYJVo-WyBPBoIZzAPV8Gt63PQxufe4oQJBHC-E,2807072 +gevent/resolver/dnspython.py,sha256=cZ0mQyWluVz_h2YsyS_sSg0n7NEpuFPsZhp63WMyFeg,20706 +gevent/resolver/thread.py,sha256=DTSwSwBRsSJKjPjyAHS0qT07oDxmFOhR4wYLfSSaJCU,2487 +gevent/resolver_ares.py,sha256=s5Jo9Z0b-zKxSWcIvW5onaFE2OrfqLuNnTPlOoxFxEQ,486 +gevent/resolver_thread.py,sha256=jcKcEVCXwyRqcsDUZmryQ9hc-83yztgaM4kuTKHOvaw,504 +gevent/select.py,sha256=Adagyqf9HURToTcOx18_JbXET3pTf1lV3bi953877VM,13582 +gevent/selectors.py,sha256=DBW8Wv3NipQCIxqO3IiQfvM_vyjGLdJv9q9c9pCClVU,12573 +gevent/server.py,sha256=7rrN3Ieujlo0vKddDyYIqgocslsW-3VNG-faOfOk7vE,10852 +gevent/signal.py,sha256=voK9aRWTaAfbiiRhiCVpwomJe9NI_w937B2HbNAXmVw,6834 +gevent/socket.py,sha256=CUC-jiNIjbXghj_muCXyn9Ij7GUDa44kKxBb3F1-PMM,6503 +gevent/ssl.py,sha256=pF2sqESHcRdaRNMoNpUqrV7NGBUVWo10pHP11N53TKA,34832 +gevent/subprocess.py,sha256=ayCXgBB4I4ySnwSn0Flb0XnCAIMZCYbIl4YlW-WgcYI,85082 +gevent/testing/__init__.py,sha256=WRhMiGHQ0B_35EoZXOTRsguBIu694cyFQVoozWwXMAE,5532 +gevent/testing/__pycache__/__init__.cpython-39.pyc,, +gevent/testing/__pycache__/errorhandler.cpython-39.pyc,, +gevent/testing/__pycache__/exception.cpython-39.pyc,, +gevent/testing/__pycache__/flaky.cpython-39.pyc,, +gevent/testing/__pycache__/hub.cpython-39.pyc,, +gevent/testing/__pycache__/leakcheck.cpython-39.pyc,, +gevent/testing/__pycache__/modules.cpython-39.pyc,, +gevent/testing/__pycache__/monkey_test.cpython-39.pyc,, +gevent/testing/__pycache__/openfiles.cpython-39.pyc,, +gevent/testing/__pycache__/params.cpython-39.pyc,, +gevent/testing/__pycache__/patched_tests_setup.cpython-39.pyc,, +gevent/testing/__pycache__/resources.cpython-39.pyc,, +gevent/testing/__pycache__/six.cpython-39.pyc,, +gevent/testing/__pycache__/skipping.cpython-39.pyc,, +gevent/testing/__pycache__/sockets.cpython-39.pyc,, +gevent/testing/__pycache__/support.cpython-39.pyc,, +gevent/testing/__pycache__/switching.cpython-39.pyc,, +gevent/testing/__pycache__/sysinfo.cpython-39.pyc,, +gevent/testing/__pycache__/testcase.cpython-39.pyc,, +gevent/testing/__pycache__/testrunner.cpython-39.pyc,, +gevent/testing/__pycache__/timing.cpython-39.pyc,, +gevent/testing/__pycache__/travis.cpython-39.pyc,, +gevent/testing/__pycache__/util.cpython-39.pyc,, +gevent/testing/coveragesite/__pycache__/sitecustomize.cpython-39.pyc,, +gevent/testing/coveragesite/sitecustomize.py,sha256=FYxC7JifoSRVmQ4tM6gaiiyW9E9trwlMy1I8eGvHXZc,2503 +gevent/testing/errorhandler.py,sha256=NzoItIrdz8t0YOFEAa6fn9WyFnubs_egnpV8yD7AcDQ,2329 +gevent/testing/exception.py,sha256=yQHF9Ebom2JAKUq70mLsdFk9p4eorpK36O-3iH1LL1Q,1265 +gevent/testing/flaky.py,sha256=x-IujIZGK_m2FYRyi4RxKMZhLfxq25p47En4DAlYhCs,4104 +gevent/testing/hub.py,sha256=Qmo7bcZPLIEOF7mncgV3vR-KrbHLUT_pORNQejrltig,3115 +gevent/testing/leakcheck.py,sha256=GWs8MQFj3Lwh9bCHuyExeu3_RuiEdByHr3YGTP00mxA,8612 +gevent/testing/modules.py,sha256=qGfvohEps4mo6_hqcRZHlEuxBx1wDNqRY_DZmJDM61o,4987 +gevent/testing/monkey_test.py,sha256=tOkTRrC4jyAh5DLhO3tNNePLPKjPpuIWIy8KghU5EMk,6112 +gevent/testing/openfiles.py,sha256=g_CYpyt2ekNVeM5nKTUmghiY6PsNsPY2HXsHwH3qP_s,8743 +gevent/testing/params.py,sha256=B-5PoctZfrtii3rcjA68kmI0wvwg7_sHJ4pWFzRAcbw,2674 +gevent/testing/patched_tests_setup.py,sha256=lQeXiCGKQstTwMum-ndB4iEg4wdAHHz-Q55-yJQ3HHo,68305 +gevent/testing/resources.py,sha256=C3cxaDi56orLzs50vTCnGElxk-ChJBjFV3JX2f610_A,7481 +gevent/testing/six.py,sha256=Q1c2A317t3agHEH1CJBn6y13Q0jJZ2t4BCruyNfujMA,278 +gevent/testing/skipping.py,sha256=UT6GA4z9n2pJJ2WY7dmcPS-U3FdwKoDUWpTWzqRsiUY,6650 +gevent/testing/sockets.py,sha256=CvtRiCVxCXcv_Vv3OFQiEYEH-Mok32sY18JiATEbeI4,2285 +gevent/testing/support.py,sha256=hn2IghJcKYUcS7hcii9RdWBLy0gGOu2nRTlEEvaq06U,4631 +gevent/testing/switching.py,sha256=6idIaCiHKFZF8aibeHjxIdZi38cxXCKuhQRHUT1YWoo,2708 +gevent/testing/sysinfo.py,sha256=GjlaaTxfi0axRZJ4m9awfvlia5C508RsnOI60xr7ccg,7870 +gevent/testing/testcase.py,sha256=3efJN9HcU3KrznyOLaVeQ3KzxaV_2VDLwj4Tlbzuxac,18679 +gevent/testing/testrunner.py,sha256=GmJlQIgCgWk1LmNCXQxfs3-B88nQUSOtRzFFeBevIdA,36552 +gevent/testing/timing.py,sha256=Yy9dQ3KvJ9uEV6BwpgM3ZEnVYP1ic6jgVGqZF1uWLLc,4982 +gevent/testing/travis.py,sha256=yYJlIY2L4vMzSxaODPVhANFaB_svNmwhrw4CRotQXlc,877 +gevent/testing/util.py,sha256=vZrHh7xCJfFukG41yFwyLMx9LFaQrpbFJS4sVRhMsO0,19271 +gevent/tests/2_7_keycert.pem,sha256=PuSO2qCmga4an7pkSs7ep1Fo16yrQKd9i84DnrqSYcI,5081 +gevent/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +gevent/tests/__main__.py,sha256=EMw-OppCjl-heu15mLg-cf400NS1Ikuy96OisvLoKLM,179 +gevent/tests/__pycache__/__init__.cpython-39.pyc,, +gevent/tests/__pycache__/__main__.cpython-39.pyc,, +gevent/tests/__pycache__/_blocks_at_top_level.cpython-39.pyc,, +gevent/tests/__pycache__/_import_import_patch.cpython-39.pyc,, +gevent/tests/__pycache__/_import_patch.cpython-39.pyc,, +gevent/tests/__pycache__/_import_wait.cpython-39.pyc,, +gevent/tests/__pycache__/_imports_at_top_level.cpython-39.pyc,, +gevent/tests/__pycache__/_imports_imports_at_top_level.cpython-39.pyc,, +gevent/tests/__pycache__/getaddrinfo_module.cpython-39.pyc,, +gevent/tests/__pycache__/known_failures.cpython-39.pyc,, +gevent/tests/__pycache__/lock_tests.cpython-39.pyc,, +gevent/tests/__pycache__/test__GreenletExit.cpython-39.pyc,, +gevent/tests/__pycache__/test___config.cpython-39.pyc,, +gevent/tests/__pycache__/test___ident.cpython-39.pyc,, +gevent/tests/__pycache__/test___monitor.cpython-39.pyc,, +gevent/tests/__pycache__/test___monkey_patching.cpython-39.pyc,, +gevent/tests/__pycache__/test__all__.cpython-39.pyc,, +gevent/tests/__pycache__/test__api.cpython-39.pyc,, +gevent/tests/__pycache__/test__api_timeout.cpython-39.pyc,, +gevent/tests/__pycache__/test__ares_host_result.cpython-39.pyc,, +gevent/tests/__pycache__/test__ares_timeout.cpython-39.pyc,, +gevent/tests/__pycache__/test__backdoor.cpython-39.pyc,, +gevent/tests/__pycache__/test__close_backend_fd.cpython-39.pyc,, +gevent/tests/__pycache__/test__compat.cpython-39.pyc,, +gevent/tests/__pycache__/test__contextvars.cpython-39.pyc,, +gevent/tests/__pycache__/test__core.cpython-39.pyc,, +gevent/tests/__pycache__/test__core_async.cpython-39.pyc,, +gevent/tests/__pycache__/test__core_callback.cpython-39.pyc,, +gevent/tests/__pycache__/test__core_fork.cpython-39.pyc,, +gevent/tests/__pycache__/test__core_loop_run.cpython-39.pyc,, +gevent/tests/__pycache__/test__core_stat.cpython-39.pyc,, +gevent/tests/__pycache__/test__core_timer.cpython-39.pyc,, +gevent/tests/__pycache__/test__core_watcher.cpython-39.pyc,, +gevent/tests/__pycache__/test__destroy.cpython-39.pyc,, +gevent/tests/__pycache__/test__destroy_default_loop.cpython-39.pyc,, +gevent/tests/__pycache__/test__doctests.cpython-39.pyc,, +gevent/tests/__pycache__/test__environ.cpython-39.pyc,, +gevent/tests/__pycache__/test__event.cpython-39.pyc,, +gevent/tests/__pycache__/test__events.cpython-39.pyc,, +gevent/tests/__pycache__/test__example_echoserver.cpython-39.pyc,, +gevent/tests/__pycache__/test__example_portforwarder.cpython-39.pyc,, +gevent/tests/__pycache__/test__example_udp_client.cpython-39.pyc,, +gevent/tests/__pycache__/test__example_udp_server.cpython-39.pyc,, +gevent/tests/__pycache__/test__example_webproxy.cpython-39.pyc,, +gevent/tests/__pycache__/test__example_wsgiserver.cpython-39.pyc,, +gevent/tests/__pycache__/test__example_wsgiserver_ssl.cpython-39.pyc,, +gevent/tests/__pycache__/test__examples.cpython-39.pyc,, +gevent/tests/__pycache__/test__exc_info.cpython-39.pyc,, +gevent/tests/__pycache__/test__execmodules.cpython-39.pyc,, +gevent/tests/__pycache__/test__fileobject.cpython-39.pyc,, +gevent/tests/__pycache__/test__getaddrinfo_import.cpython-39.pyc,, +gevent/tests/__pycache__/test__greenio.cpython-39.pyc,, +gevent/tests/__pycache__/test__greenlet.cpython-39.pyc,, +gevent/tests/__pycache__/test__greenletset.cpython-39.pyc,, +gevent/tests/__pycache__/test__greenness.cpython-39.pyc,, +gevent/tests/__pycache__/test__hub.cpython-39.pyc,, +gevent/tests/__pycache__/test__hub_join.cpython-39.pyc,, +gevent/tests/__pycache__/test__hub_join_timeout.cpython-39.pyc,, +gevent/tests/__pycache__/test__import_blocking_in_greenlet.cpython-39.pyc,, +gevent/tests/__pycache__/test__import_wait.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue112.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue1686.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue1864.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue230.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue330.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue467.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue6.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue600.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue607.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue639.cpython-39.pyc,, +gevent/tests/__pycache__/test__issue_728.cpython-39.pyc,, +gevent/tests/__pycache__/test__issues461_471.cpython-39.pyc,, +gevent/tests/__pycache__/test__iwait.cpython-39.pyc,, +gevent/tests/__pycache__/test__joinall.cpython-39.pyc,, +gevent/tests/__pycache__/test__local.cpython-39.pyc,, +gevent/tests/__pycache__/test__lock.cpython-39.pyc,, +gevent/tests/__pycache__/test__loop_callback.cpython-39.pyc,, +gevent/tests/__pycache__/test__makefile_ref.cpython-39.pyc,, +gevent/tests/__pycache__/test__memleak.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_builtins_future.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_hub_in_thread.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_logging.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_module_run.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_multiple_imports.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_queue.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_select.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_selectors.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_sigchld.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_sigchld_2.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_sigchld_3.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_sigchld_wakeup_fd.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_ssl_warning.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_ssl_warning2.cpython-39.pyc,, +gevent/tests/__pycache__/test__monkey_ssl_warning3.cpython-39.pyc,, +gevent/tests/__pycache__/test__nondefaultloop.cpython-39.pyc,, +gevent/tests/__pycache__/test__order.cpython-39.pyc,, +gevent/tests/__pycache__/test__os.cpython-39.pyc,, +gevent/tests/__pycache__/test__pool.cpython-39.pyc,, +gevent/tests/__pycache__/test__pywsgi.cpython-39.pyc,, +gevent/tests/__pycache__/test__queue.cpython-39.pyc,, +gevent/tests/__pycache__/test__real_greenlet.cpython-39.pyc,, +gevent/tests/__pycache__/test__refcount.cpython-39.pyc,, +gevent/tests/__pycache__/test__refcount_core.cpython-39.pyc,, +gevent/tests/__pycache__/test__resolver_dnspython.cpython-39.pyc,, +gevent/tests/__pycache__/test__select.cpython-39.pyc,, +gevent/tests/__pycache__/test__selectors.cpython-39.pyc,, +gevent/tests/__pycache__/test__semaphore.cpython-39.pyc,, +gevent/tests/__pycache__/test__server.cpython-39.pyc,, +gevent/tests/__pycache__/test__server_pywsgi.cpython-39.pyc,, +gevent/tests/__pycache__/test__signal.cpython-39.pyc,, +gevent/tests/__pycache__/test__sleep0.cpython-39.pyc,, +gevent/tests/__pycache__/test__socket.cpython-39.pyc,, +gevent/tests/__pycache__/test__socket_close.cpython-39.pyc,, +gevent/tests/__pycache__/test__socket_dns.cpython-39.pyc,, +gevent/tests/__pycache__/test__socket_dns6.cpython-39.pyc,, +gevent/tests/__pycache__/test__socket_errors.cpython-39.pyc,, +gevent/tests/__pycache__/test__socket_ex.cpython-39.pyc,, +gevent/tests/__pycache__/test__socket_send_memoryview.cpython-39.pyc,, +gevent/tests/__pycache__/test__socket_ssl.cpython-39.pyc,, +gevent/tests/__pycache__/test__socket_timeout.cpython-39.pyc,, +gevent/tests/__pycache__/test__socketpair.cpython-39.pyc,, +gevent/tests/__pycache__/test__ssl.cpython-39.pyc,, +gevent/tests/__pycache__/test__subprocess.cpython-39.pyc,, +gevent/tests/__pycache__/test__subprocess_interrupted.cpython-39.pyc,, +gevent/tests/__pycache__/test__subprocess_poll.cpython-39.pyc,, +gevent/tests/__pycache__/test__systemerror.cpython-39.pyc,, +gevent/tests/__pycache__/test__thread.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading_2.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading_before_monkey.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading_fork_from_dummy.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading_holding_lock_while_monkey.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading_monkey_in_thread.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading_native_before_monkey.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading_no_monkey.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading_patched_local.cpython-39.pyc,, +gevent/tests/__pycache__/test__threading_vs_settrace.cpython-39.pyc,, +gevent/tests/__pycache__/test__threadpool.cpython-39.pyc,, +gevent/tests/__pycache__/test__threadpool_executor_patched.cpython-39.pyc,, +gevent/tests/__pycache__/test__timeout.cpython-39.pyc,, +gevent/tests/__pycache__/test__util.cpython-39.pyc,, +gevent/tests/_blocks_at_top_level.py,sha256=Hp36RFiC0djMSfvUHZsu8pVttpc7Hbmv_7VGq6xW630,48 +gevent/tests/_import_import_patch.py,sha256=IbgraY7KaPggcX1JNVkUQTTBSboegF_VWSDFJp38buI,28 +gevent/tests/_import_patch.py,sha256=_PWRiLjpsFyhT2CxTDIE9ZVS9gcCFqzQGFKel00zc2s,47 +gevent/tests/_import_wait.py,sha256=8353o30STWbRg53op9CWmTXfElU6VV4klLdqiq7Jmjg,570 +gevent/tests/_imports_at_top_level.py,sha256=9SCo81uRMT8xWbDFUBhbc_EwAoii9oygwOBSSNWfWWI,55 +gevent/tests/_imports_imports_at_top_level.py,sha256=VcIaDELcdgeEMqO_Cndy0XMjx05h5eG4_F_12giOSDs,345 +gevent/tests/badcert.pem,sha256=JioQeRZkHH8hGsWJjAF3U1zQvcWqhyzG6IOEJpTY9SE,1928 +gevent/tests/badkey.pem,sha256=gaBK9px_gG7DmrLKxfD6f6i-toAmARBTVfs-YGFRQF0,2162 +gevent/tests/getaddrinfo_module.py,sha256=oFyeNRywc3QO5HlpuV5DVcpUbml8hFn86pbWm_mGQX8,116 +gevent/tests/hosts_file.txt,sha256=07jEX3FicSKuiUJbQ_14H0MP8v7r35h_usGUmScPnSM,290909 +gevent/tests/https_svn_python_org_root.pem,sha256=wOB3Onnc62Iu9kEFd8GcHhd_suucYjpJNA3jyfHeJWA,2569 +gevent/tests/keycert.pem,sha256=r0KE1WH9eV6X4mUykpCY5Dm8_robBSi4zwMcGBPtMi4,1872 +gevent/tests/known_failures.py,sha256=t17aF5WG77u4DIXMuLVoNAzokx2nqi1CVrahQwU-kq0,17729 +gevent/tests/lock_tests.py,sha256=Oxi0uoEPVzA1NKP6t69fuezuHCZE0xQZbHBuMQtTwUs,21858 +gevent/tests/monkey_package/__init__.py,sha256=bvY5MXWih-w0IshrJmEKnPTI25R0eC_ma0Xa2bT3XCI,329 +gevent/tests/monkey_package/__main__.py,sha256=mJx6YRmYplQEY8Lb3hQOPrbIj2Z3mwrZY3wLL7p2zcM,363 +gevent/tests/monkey_package/__pycache__/__init__.cpython-39.pyc,, +gevent/tests/monkey_package/__pycache__/__main__.cpython-39.pyc,, +gevent/tests/monkey_package/__pycache__/issue1526_no_monkey.cpython-39.pyc,, +gevent/tests/monkey_package/__pycache__/issue1526_with_monkey.cpython-39.pyc,, +gevent/tests/monkey_package/__pycache__/issue302monkey.cpython-39.pyc,, +gevent/tests/monkey_package/__pycache__/script.cpython-39.pyc,, +gevent/tests/monkey_package/__pycache__/threadpool_monkey_patches.cpython-39.pyc,, +gevent/tests/monkey_package/__pycache__/threadpool_no_monkey.cpython-39.pyc,, +gevent/tests/monkey_package/issue1526_no_monkey.py,sha256=mDdY5_Y4IDBd8b-gjYNQKh8U4jb8Nn7eSEC_DM7lSxk,573 +gevent/tests/monkey_package/issue1526_with_monkey.py,sha256=5mbVockojXOZQZwQFaPrMVcg50T_vD1WRj07F6pOj_Y,666 +gevent/tests/monkey_package/issue302monkey.py,sha256=aitTDyrxJZI4EE_n6gg0o4AfHEQsFPfzQtVVmWMr6JQ,935 +gevent/tests/monkey_package/script.py,sha256=4q695hn_S3YA2aQh4TRyjVJ7QA9xlfqNTrezlUZkjVQ,427 +gevent/tests/monkey_package/threadpool_monkey_patches.py,sha256=0Glu2IugiK6rT6fYZbgqmGgciUjUX-6eannkqekzTi4,869 +gevent/tests/monkey_package/threadpool_no_monkey.py,sha256=c-bdOwTHjhBzlmcJMFyixL3Wjp-wXO4T1VZIGC3clGE,787 +gevent/tests/nullcert.pem,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +gevent/tests/server.crt,sha256=LOyJ1muRGaDZapZQ9x3BRNGIrC4jKiiIyNZJvMM5eQI,1809 +gevent/tests/server.key,sha256=CXI8bo8kvTo3I_o0kVPabuQ0oHBsoNbgFVT1bWNTwOI,3272 +gevent/tests/sha256.pem,sha256=trYsA7FY0hyVoV1AoGNwZ_s6T89eiiOIFexoNRv029s,2065 +gevent/tests/test__GreenletExit.py,sha256=qHtC7KnjCG039F_VGDXnsrhyWaQXvfcmgnVB2Rfa_Vk,127 +gevent/tests/test___config.py,sha256=mCJfAOG9DEAU5RtUg_UgHwsB6f0x-KWTjHX9aTaS7d8,4889 +gevent/tests/test___ident.py,sha256=15ucVXe5y4hE9F--Y8fhxN9-WcGhXt2ehHMLTzDuDKs,2109 +gevent/tests/test___monitor.py,sha256=-hp7xNRmS3dnqgdfea9228hOUQ_IuG26WXTk2gsVZgE,12624 +gevent/tests/test___monkey_patching.py,sha256=2W6ZF3gTCSh9SgUjJUuX2OP1ZZCq9Vjsv20UPqgrXnY,3502 +gevent/tests/test__all__.py,sha256=DL-gj-gEaObUak2HpJbrkPstRhb3zUdZe-BNwe2h2r8,11386 +gevent/tests/test__api.py,sha256=zJF6cfQKnPscZio9ErpkY2Mn2NNPOzNnzX4J8ujx4ww,4550 +gevent/tests/test__api_timeout.py,sha256=is-HOBSQiMKPc67r41FqamL3KOF5BnfmtV8kW01JId4,6323 +gevent/tests/test__ares_host_result.py,sha256=f-ZJubI1wyzJExMifQnRFNpNcxkZ0Ykyp2W75jLjrqY,908 +gevent/tests/test__ares_timeout.py,sha256=65MC4NdPYJzbLO90FRjwtPuz3E_Y0JJm2Ld5aDcYLcU,1015 +gevent/tests/test__backdoor.py,sha256=4Zc2QxUXaJIiJIDLPgR9Y3H5tfUTba0jwM9VuKvTx1g,6900 +gevent/tests/test__close_backend_fd.py,sha256=6yssqISBW-rhKZx25iCDbE6gaLYAEBCTzPlchwzsB7Y,3865 +gevent/tests/test__compat.py,sha256=YBE4IJwtRozcCRqeZXY9dkxqjZ6m2xS0Pk1ceApjvnE,1439 +gevent/tests/test__contextvars.py,sha256=JUPQ3TzpSLTQkdRNr7g2OgEzmFIK5vd8ml2bF7BNTYc,31717 +gevent/tests/test__core.py,sha256=VDxOazcjEyhp4o094xQcKSupm-Qf0aDNN0o3Ja_UF7s,5618 +gevent/tests/test__core_async.py,sha256=X4CNU4Kroea9fyjlfd_l8HmMLKfvec-eE4qzqTPZNow,761 +gevent/tests/test__core_callback.py,sha256=occ-buOrq8DrbJ0GUzHeMVF-Qcuu5e4qnUPnrmqvq80,618 +gevent/tests/test__core_fork.py,sha256=i4WdiNIL_LWINMg38rnNakfCfVZiMkFgVo9wUsiXxH4,2738 +gevent/tests/test__core_loop_run.py,sha256=N6ZHGuVfrclHoKrL1R8T7BeObT9P28Ey2wfvyo_jGJs,494 +gevent/tests/test__core_stat.py,sha256=YvqLSe-9j5tIFC6MoPQhD5_0MdBtxrbVagp4o0jzpw8,3754 +gevent/tests/test__core_timer.py,sha256=e6VG-IHLiQ3OkrTOYGiLMX4VdU6RLG3UoA69uao2xG8,4330 +gevent/tests/test__core_watcher.py,sha256=ULftUAJqrMLYgzItmSzEosgeagKbI72m0oheKn14vYo,3573 +gevent/tests/test__destroy.py,sha256=fy9Gh1WH6URkLCTjVv2RzxljX6DDRZXmaCuUEHVCYf8,1765 +gevent/tests/test__destroy_default_loop.py,sha256=9KsDb5i7Nn4uFrNrfT_vMYLOG7VV6-hp46HGlFg06nc,2199 +gevent/tests/test__doctests.py,sha256=aZqNLQDOpyvFYkhmqgXyDRhtV3CnN50H4OnZkp0vC0E,3613 +gevent/tests/test__environ.py,sha256=i7sqbSsRVyM5ypN9obyVIMWKyATOs5FC3BrMNf_i5Sk,608 +gevent/tests/test__event.py,sha256=gSG_grgV1x3CfyZW6M5tH3MWTODn5L-9jR_3ekFNjPY,14026 +gevent/tests/test__events.py,sha256=wa8mZSnMCsZ_qX2ak0Lwy3RE0MqXfdaSevLv0PEzXFM,1465 +gevent/tests/test__example_echoserver.py,sha256=-yA1D31oUsERPoJlG_XtMswsjN7RHykVwF67lvKYKjs,1086 +gevent/tests/test__example_portforwarder.py,sha256=hIVFPP8CBapzR918PBlrZM_Zibt8OyzDdKD9V1vfgbw,2025 +gevent/tests/test__example_udp_client.py,sha256=VGDHP_cYMlxnDkqW1E1fs-WteLH_6O7euW3SYvA1Mvk,884 +gevent/tests/test__example_udp_server.py,sha256=ApnWzkhqlHXmELMwgviFr8jf2QU4obHYefWCq1t2zlY,513 +gevent/tests/test__example_webproxy.py,sha256=Tg4dVbS725yOQVoslPz3FpA6SFAoYKIPAhddwUvEvEs,807 +gevent/tests/test__example_wsgiserver.py,sha256=bavlc9OfdFdkyibxxGhBuhEFXOYcfyc_Jqg0P8gfQEo,3202 +gevent/tests/test__example_wsgiserver_ssl.py,sha256=Ztn83XeMTLENcZduhdE2hiGYitSvi0hEQLJaD1tLpdA,649 +gevent/tests/test__examples.py,sha256=F2tAzDtGDYz3mo9Y5u0UfgnXGUTSz6TbtxK_LzEJyFQ,3336 +gevent/tests/test__exc_info.py,sha256=mlK-oeSGfVP1dq6e78LWX50DgaFy_ulOF0NOZPRVhr4,1313 +gevent/tests/test__execmodules.py,sha256=Uf9jV4zIWoX5_aaeYUIcVgicbVxlgkCPywFiqAiidmg,1592 +gevent/tests/test__fileobject.py,sha256=Hm-RnEkGIEL_0J0JCbdexZ4YvWf9kCC9zraL9aW7pMQ,18985 +gevent/tests/test__getaddrinfo_import.py,sha256=eGmX5zaq-x9Or3UGtIZL8yqNN97yVBQx9zlehM3ogE4,463 +gevent/tests/test__greenio.py,sha256=vYzw_tSAAZxD0TjbKt_9wy_2KM3727YjUEdmcJ6GNvc,5523 +gevent/tests/test__greenlet.py,sha256=Ss8XMqjvhw1H4v-t1V1hymaE2ySsVvB9QElNS-6eqoU,33754 +gevent/tests/test__greenletset.py,sha256=NaIikUvwC7FcHjZQ24P3blp3iW4VaLImJfqH_E6mVuo,5032 +gevent/tests/test__greenness.py,sha256=YztEj8cMW3XkbTtoRJPv8K5yKugRwhlWy6szMKRwk2o,2790 +gevent/tests/test__hub.py,sha256=kT1T7tzDAZ1zmU3EsYGhGBqyYRv7acMVgTA3_BE1Ok0,13728 +gevent/tests/test__hub_join.py,sha256=-V1LjhFtZOAvCTWJsqxsLKFGicoDbp3NpojlS1EOZKc,3217 +gevent/tests/test__hub_join_timeout.py,sha256=E6Ul1xhZ1Ro7_IMx9QZBpf1zzWl1yrYWS11K25JyLho,2913 +gevent/tests/test__import_blocking_in_greenlet.py,sha256=BEEB6WrcXqFscxQxEIdMzlLVQ-KFvDlQ52yNlQWxIKs,1134 +gevent/tests/test__import_wait.py,sha256=-m2mg2urO-nNDTj3Ov0QNXuDmgr7rOCa7MKD-LT5cyA,252 +gevent/tests/test__issue112.py,sha256=OxamNgJF1QlKuirw_jJNYzpE84PgjYP2z1x27n61JQc,338 +gevent/tests/test__issue1686.py,sha256=5CIooK1MteQPtSWaWPpvyzMil_OLcvIYeHjIcZHlpxE,2878 +gevent/tests/test__issue1864.py,sha256=Xb3CcArxYDox-lCDpHOpwTkE5XXM3jK5zqUk3zyKGzk,1291 +gevent/tests/test__issue230.py,sha256=3zEzP5fLwLaHUeX0xNntV29AhhtHr_9t0cG1SPSa24c,500 +gevent/tests/test__issue330.py,sha256=qDbqSKfvZ4IdR_r7PwDAuCfTQuZEjLELSK1IvTowoaI,2333 +gevent/tests/test__issue467.py,sha256=PrqSlERQf8XttyiNB5NRZqEo8D0cmNTiO8qIdamRgPg,1205 +gevent/tests/test__issue6.py,sha256=OOBbWEwmA4zKxpF8jZ_5fm4E7uHKbqxP63FiE0ktU9w,1530 +gevent/tests/test__issue600.py,sha256=dKW-RzdzaJhVl8dClpBzLzgRjMn7BlqeTIiIB97R9cw,1386 +gevent/tests/test__issue607.py,sha256=-lQuJxVfIPDhrrf1G-2BpIbQqwDMygDeuRMh7vANGPM,1354 +gevent/tests/test__issue639.py,sha256=ExWDeXqUDqGTXF1rx6t1SQjac4GWKqZ2opusTpxgi1g,214 +gevent/tests/test__issue_728.py,sha256=1u6WSToRxMYe70aLU5vMhrWSZ_OHtwN9oP6L4UXXywg,212 +gevent/tests/test__issues461_471.py,sha256=_Xwj-ImGgYuTcWGxITACba3FGnRHmlXZxTDkkChriVg,3889 +gevent/tests/test__iwait.py,sha256=uzef1gKSo8dDbciyjZobklIXNDdc-B0ehEKb3iIn2Bg,1205 +gevent/tests/test__joinall.py,sha256=UAV56-NMPLhs8TBYJ-qcNAC8gT_ZoUAcOq22_qYEQZM,296 +gevent/tests/test__local.py,sha256=1iThKxhRmbTG5aH91kVNOEdU84CnsT3YMqjX3zY5WXU,11741 +gevent/tests/test__lock.py,sha256=tJOWhpvDE_aW4W777tkFMLrmpSel6Eqk6CCfoeWSe0s,2242 +gevent/tests/test__loop_callback.py,sha256=SUKmuaQh4sSC1fTyGv3zaTG1NkJN7T4EaJt-ezd_wT4,356 +gevent/tests/test__makefile_ref.py,sha256=N7COsXR3aH_9_Y11XtllHSTBuCnFHn7yV_0snuLK5zA,19545 +gevent/tests/test__memleak.py,sha256=Yq3tfWmbpgI5hYopozWEHSbP8Xs4lDqBBQ76in2mFxc,1466 +gevent/tests/test__monkey.py,sha256=uhlAPJ8PbC9jqzYTJE4KL1BeckalesljF9PMIC9gGiQ,6581 +gevent/tests/test__monkey_builtins_future.py,sha256=ZUJj7wWz9jEa9vDPSdEPrjqewiUwBspmtgh7RN8LymA,521 +gevent/tests/test__monkey_hub_in_thread.py,sha256=iMWv4a8Agy_llZypYxXo62kSB7LLTdNG5u9N_eHKIg8,520 +gevent/tests/test__monkey_logging.py,sha256=ZBbUvAqOam0Twekv_Mint1dWiWBt_ce9Y7L3JRCrqGU,1564 +gevent/tests/test__monkey_module_run.py,sha256=G-bHCowrKt4dDUgotEeB5rX8yVlDrfppIRGKYJIOdA8,4368 +gevent/tests/test__monkey_multiple_imports.py,sha256=QwmJJ4r3RXOQhti_5vj3Let0zllXzq4GwDY8NqzJUuQ,296 +gevent/tests/test__monkey_queue.py,sha256=d9m4mfBPMFa5bhuyNOOEMHEoBLc7bvlCz7Q3jbODULk,12337 +gevent/tests/test__monkey_select.py,sha256=U77pqLIX-2wCtdY7CxigfT0wgSTBqHs3e53eajJV45A,741 +gevent/tests/test__monkey_selectors.py,sha256=gootPuj6Hp_ZuT_ChQmjkR75TY9xNmTXNq0nTbRxEMU,2580 +gevent/tests/test__monkey_sigchld.py,sha256=U4L8AciJ-1-ivwMZlfIMkgpmoWFVxxlZri0bsJ_1vvo,2939 +gevent/tests/test__monkey_sigchld_2.py,sha256=zV1WsDX8dTQiW6XBOs0GQejZsq2obE2LA9Dil1eo_9Y,1774 +gevent/tests/test__monkey_sigchld_3.py,sha256=dlaDG9t4kPRfhT6anZRRCkltvQSKWNeKPOBd7doAgGo,1755 +gevent/tests/test__monkey_sigchld_wakeup_fd.py,sha256=MDcl2Rce9X4gqy-Hjjpa0ALmzu6zGaquAInXmbqPxGU,1096 +gevent/tests/test__monkey_ssl_warning.py,sha256=vvfhrq-1zurv3ERAaeiIotk1LARVAGeUy4UDdrde7Zk,1250 +gevent/tests/test__monkey_ssl_warning2.py,sha256=NRlZ8-s-doOC6xNkQbaiVPIaqOtFBfEmQzyrKsUukww,1255 +gevent/tests/test__monkey_ssl_warning3.py,sha256=WZEOHQoewYAuYJu0f8UMjpmRzaR0B-sf0wBhvaRKTEQ,1330 +gevent/tests/test__nondefaultloop.py,sha256=Y3IrgT8SF3SmO3A1IlvC0nF4GCqxzvKES0KqvO72crE,204 +gevent/tests/test__order.py,sha256=LXv2-H9xEL79OFJSXOF50Z3JUd1z-Srv9ouYgE081xU,1086 +gevent/tests/test__os.py,sha256=LwfUQomcRklQUKCLMhEUBksZPbp3T3yeGWXkHO0JnCk,5700 +gevent/tests/test__pool.py,sha256=oOf38RQcEVd8AQQuynwebNWLnQ2CRoXHV9hJWskmhrc,18351 +gevent/tests/test__pywsgi.py,sha256=1zFZ19XkfU1Aw_Al6cE85S_ROvUf-rUmxCE_j6twmxA,73437 +gevent/tests/test__queue.py,sha256=becknF4KwY1d2kc2saWCe83rLQ0jgiUAAxMRKX6eNOs,17294 +gevent/tests/test__real_greenlet.py,sha256=SoZQ8cY1wQFJnVmTFxuYvXo08KVyb99ZUqGDBUbo1C4,693 +gevent/tests/test__refcount.py,sha256=rqdMK4QiCLWTIblXbxvGJ2AWQimV91KDFmawHV-X5ik,5866 +gevent/tests/test__refcount_core.py,sha256=XiTmU2kYH-JkVINch2jpA1vGVKOc6ufdPW28DMNpo9c,600 +gevent/tests/test__resolver_dnspython.py,sha256=aA7rtaB273IaTG9whMwvtGwG8c42xTPtb4iH9gTR4DE,1117 +gevent/tests/test__select.py,sha256=07EgbGro92urXD1g7oPf0jNapuyM85Y1vpCIn7dpgcQ,10658 +gevent/tests/test__selectors.py,sha256=iI9Oi_Edd9FJXOWXXciB9VYDBBVdDrIO9snuq_yEx10,5763 +gevent/tests/test__semaphore.py,sha256=m-CHrKE_S5yyKd6O78b6j8AvmTFpgTVJtGT-b91nDvA,13756 +gevent/tests/test__server.py,sha256=Ma9-PnZ_iQMA583STRjU18vnMIK2KnlfatSE-ERrtZs,20199 +gevent/tests/test__server_pywsgi.py,sha256=0Fquqy69Xylu3UXATvd__Y9wTBXnohP9fdvEoUhGysI,3074 +gevent/tests/test__signal.py,sha256=8tfg7pa2MQmUjzKG93oNzuw630odMgFqPfyYwMFo4Vc,3635 +gevent/tests/test__sleep0.py,sha256=uoruOPjsaPk1m0thN_4UppH4kW4k9fHQXDuLXnc3u5k,139 +gevent/tests/test__socket.py,sha256=m60j5-Bljz24VIbGb6Xpt8jJXyMOlazvajFmB-oo4Uw,23341 +gevent/tests/test__socket_close.py,sha256=_lidh6C8SSup3avpXKUdv0Kkok1GiLbaC_5Dn6hkiRQ,1862 +gevent/tests/test__socket_dns.py,sha256=nbMzlGGtirDXCpnEBFlGfSp5DRVf6fdWezNelTWvkTc,35136 +gevent/tests/test__socket_dns6.py,sha256=ywDARvfurAx0rmfNC3JPt9K-KsnwDjDHe4wRqQ2giiY,3132 +gevent/tests/test__socket_errors.py,sha256=L6ZZymYkkYGq6V_S7lzdC2D1J-0jQkKF9_xytAldQN8,1869 +gevent/tests/test__socket_ex.py,sha256=RYT56ubUxD-e13wL1rG5NS9afx0gaqYfKcqzL0uS0T0,1110 +gevent/tests/test__socket_send_memoryview.py,sha256=xhNyL7y_TriGrMbJvKmbwEReUBMR_M6LKL0l0IarBbE,960 +gevent/tests/test__socket_ssl.py,sha256=X7iDcOwBbtX7e0B_JBXoSFI_dRzpQzVMGYpMQTswtf4,865 +gevent/tests/test__socket_timeout.py,sha256=_TqCsWOPrKNMJ8OFvKGjLIbiToDm7X1Y1wJxR39rJME,1351 +gevent/tests/test__socketpair.py,sha256=VKi94yATBBTzKsN7S7D1rpx-GropJf0qXRpw9GT43c0,951 +gevent/tests/test__ssl.py,sha256=nzZOrRT6JmQXbFWgYEf9PcSi42p_FC4HK39Rote78B8,5686 +gevent/tests/test__subprocess.py,sha256=SnybISDRGA9C0_J_uLjz-ERd7L8MR5TmI7Hb8Tz9M0s,20244 +gevent/tests/test__subprocess_interrupted.py,sha256=qNr4GCwg-xhLrZLGHnprQILnj0g08-GozvYClSR_uE0,1922 +gevent/tests/test__subprocess_poll.py,sha256=AFlQJZcNCfDKP5zwefoGmSFvPe_1cT5HpUu_VDbp4Lk,346 +gevent/tests/test__systemerror.py,sha256=lgUg-grJQ6VTNXjOTkQQGds6m7PmtoPgddG-tYURYsU,3295 +gevent/tests/test__thread.py,sha256=xhyh6Z_HQzh2kqSjdoPoEdUURzj8A2B2l1dbXpuv1yc,780 +gevent/tests/test__threading.py,sha256=R6eAMnNIMQE757HL6JdwKaCFQq21HD4uPCen5iRCghc,2586 +gevent/tests/test__threading_2.py,sha256=siCGN_RcFgNB6_FsItZPx4sQDS8bV7-RxyULssCgEoQ,23757 +gevent/tests/test__threading_before_monkey.py,sha256=DhdEFVUY6LTb-74I3KgiFExW-aFvSn_B8jTvMS_NjWo,714 +gevent/tests/test__threading_fork_from_dummy.py,sha256=Ds0y3KgYqLzQnjUuAeu2WmpBtabpMF9qA4n6weoirwQ,2181 +gevent/tests/test__threading_holding_lock_while_monkey.py,sha256=5IWkIjTs1eRlphtDF0cCINz16M6tUi9hZMB-R_eVMIw,411 +gevent/tests/test__threading_monkey_in_thread.py,sha256=dLCRkphMFk1EGuB2d44kdDq0MI2aE5CWEZR7rFArD1E,2075 +gevent/tests/test__threading_native_before_monkey.py,sha256=KvQaAWQe78cGVYT-T2MAh6T4s7YUZdza8-vqxS4YJp0,2157 +gevent/tests/test__threading_no_monkey.py,sha256=FkY93eRfkpZjsbEzLbJLvtI9-POMbAGYd3IpJE8peHw,806 +gevent/tests/test__threading_patched_local.py,sha256=0EaAtlORHJjfxkUZzGKL1lOh-OY9hZa1R6MoUE0eSHo,675 +gevent/tests/test__threading_vs_settrace.py,sha256=vsRpAqYimfePGGqyTj-8M-SpGmwVN01JQ6yROkKBjl8,5023 +gevent/tests/test__threadpool.py,sha256=FhfeW0JZ5U_e84B8Q3JIb6KBxXKFkGSD6RsYVNHMMoM,24825 +gevent/tests/test__threadpool_executor_patched.py,sha256=KihwMAZ_hQfZBhnxv_CCx8HJnvdQaKxxaMuuJkV9IiM,386 +gevent/tests/test__timeout.py,sha256=OA6toC5Q8aQ99Kewy9Q6FlQc-bfeXXa5d32dGWcvs0I,4628 +gevent/tests/test__util.py,sha256=8T3EPIPWlOQtAylapMTLjz32ZQyCudhRlchXx-EGSGQ,10705 +gevent/tests/test_server.crt,sha256=QIKfCQ-jpwWvzwJLO-eOSqT2TTSEVE-HLcC1wzs-YNw,1809 +gevent/tests/test_server.key,sha256=5yU4QY75gVWwTt4TE5EKkiOhENEwO0eP9oG3WTB0dtk,3268 +gevent/tests/tests_that_dont_do_leakchecks.txt,sha256=dzRXEFB_7uZlFI5ANA1VCfYCd9HTINqDTi1BcIkzxOY,223 +gevent/tests/tests_that_dont_monkeypatch.txt,sha256=PH8kQY8hpSlwzXJkJQpTsczkNZ13uUxkWM-Hl4Cz-wQ,647 +gevent/tests/tests_that_dont_use_resolver.txt,sha256=nhsAcj2CwFEsEtmfROY3NFiIe7Xqpb3AK1I-nQK6f2A,3184 +gevent/tests/wrongcert.pem,sha256=6n4u7wcalNKCtnMsq7J3Y7uOiez901ZLiH38oE0jGUM,1880 +gevent/thread.py,sha256=sx3Mqg315mMN8oEOSh8ohdwvg9Vc-vimFq-22eKHVe8,11784 +gevent/threading.py,sha256=pZLUJglbkRJmNSpZCw-bznxhHHAc8W1O3vo8Q1O3Zsg,19405 +gevent/threadpool.py,sha256=iQ90WLeFsm1XUM_cI_WehtKGLh9BJ-r-fgubPvsyTEo,30975 +gevent/time.py,sha256=C0eRlHq0rBxy9tC_SsIywkYaBNlwO1bc04qFi2OceB4,491 +gevent/timeout.py,sha256=7fYPJJkfZm5yUY54NhGAIzuj5vclm79NRf2Lwvo175E,13682 +gevent/util.py,sha256=lZoYCZDZdkBQYd8wSCbbwdkVW0VTVx_cikkX1lxMDmg,22571 +gevent/win32util.py,sha256=WBk_YNf_kk3QF3PMUdScqgM_PreF4OBhfXq2W5264n0,3637 diff --git a/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/REQUESTED b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/REQUESTED new file mode 100644 index 0000000..e69de29 diff --git a/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/WHEEL b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/WHEEL new file mode 100644 index 0000000..c6f756b --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: setuptools (82.0.1) +Root-Is-Purelib: false +Tag: cp39-cp39-linux_x86_64 + diff --git a/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/entry_points.txt b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/entry_points.txt new file mode 100644 index 0000000..d5fe662 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/entry_points.txt @@ -0,0 +1,2 @@ +[gevent.plugins.monkey.will_patch_all] +signal_os_incompat = gevent.monkey:_subscribe_signal_os diff --git a/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/licenses/LICENSE b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/licenses/LICENSE new file mode 100644 index 0000000..b767c24 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/licenses/LICENSE @@ -0,0 +1,25 @@ +MIT License + +Except when otherwise stated (look at the beginning of each file) the software +and the documentation in this project are copyrighted by: + + Denis Bilenko and the contributors, http://www.gevent.org + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/top_level.txt b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/top_level.txt new file mode 100644 index 0000000..4a63abe --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent-26.4.0.dist-info/top_level.txt @@ -0,0 +1 @@ +gevent diff --git a/venv/lib/python3.9/site-packages/gevent/__init__.py b/venv/lib/python3.9/site-packages/gevent/__init__.py new file mode 100644 index 0000000..637e0b4 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/__init__.py @@ -0,0 +1,114 @@ +# Copyright (c) 2009-2012 Denis Bilenko. See LICENSE for details. +""" +gevent is a coroutine-based Python networking library that uses greenlet +to provide a high-level synchronous API on top of libev event loop. + +See http://www.gevent.org/ for the documentation. + +.. versionchanged:: 1.3a2 + Add the `config` object. +""" + +from __future__ import absolute_import + +from collections import namedtuple + +_version_info = namedtuple('version_info', + ('major', 'minor', 'micro', 'releaselevel', 'serial')) + +#: The programatic version identifier. The fields have (roughly) the +#: same meaning as :data:`sys.version_info` +#: .. deprecated:: 1.2 +#: Use ``pkg_resources.parse_version(__version__)`` (or the equivalent +#: ``packaging.version.Version(__version__)``). +version_info = _version_info(20, 0, 0, 'dev', 0) # XXX: Remove me + +#: The human-readable PEP 440 version identifier. +#: Use ``pkg_resources.parse_version(__version__)`` or +#: ``packaging.version.Version(__version__)`` to get a machine-usable +#: value. +__version__ = '26.4.0' + + +__all__ = [ + 'Greenlet', + 'GreenletExit', + 'Timeout', + 'config', # Added in 1.3a2 + 'fork', + 'get_hub', + 'getcurrent', + 'getswitchinterval', + 'idle', + 'iwait', + 'joinall', + 'kill', + 'killall', + 'reinit', + 'setswitchinterval', + 'signal_handler', + 'sleep', + 'spawn', + 'spawn_later', + 'spawn_raw', + 'wait', + 'with_timeout', +] + + +import sys +if sys.platform == 'win32': + # trigger WSAStartup call + import socket # pylint:disable=unused-import,useless-suppression + del socket + + +# Floating point number, in number of seconds, +# like time.time +getswitchinterval = sys.getswitchinterval +setswitchinterval = sys.setswitchinterval + +from gevent._config import config +from gevent._hub_local import get_hub +from gevent._hub_primitives import iwait_on_objects as iwait +from gevent._hub_primitives import wait_on_objects as wait + +from gevent.greenlet import Greenlet, joinall, killall +spawn = Greenlet.spawn +spawn_later = Greenlet.spawn_later +#: The singleton configuration object for gevent. + +from gevent.timeout import Timeout, with_timeout +from gevent.hub import getcurrent, GreenletExit, spawn_raw, sleep, idle, kill, reinit +try: + from gevent.os import fork +except ImportError: + __all__.remove('fork') + +# This used to be available as gevent.signal; that broke in 1.1b4 but +# a temporary alias was added (See +# https://github.com/gevent/gevent/issues/648). It was ugly and complex and +# caused confusion, so it was removed in 1.5. See https://github.com/gevent/gevent/issues/1529 +from gevent.hub import signal as signal_handler + +# the following makes hidden imports visible to freezing tools like +# py2exe. see https://github.com/gevent/gevent/issues/181 +# This is not well maintained or tested, though, so it likely becomes +# outdated on each major release. + +def __dependencies_for_freezing(): # pragma: no cover + # pylint:disable=unused-import, import-outside-toplevel + from gevent import core + from gevent import resolver_thread + from gevent import resolver_ares + from gevent import socket as _socket + from gevent import threadpool + from gevent import thread + from gevent import threading + from gevent import select + from gevent import subprocess + import pprint + import traceback + import signal as _signal + +del __dependencies_for_freezing diff --git a/venv/lib/python3.9/site-packages/gevent/_abstract_linkable.py b/venv/lib/python3.9/site-packages/gevent/_abstract_linkable.py new file mode 100644 index 0000000..5443f6f --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_abstract_linkable.py @@ -0,0 +1,554 @@ +# -*- coding: utf-8 -*- +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False +""" +Internal use only base class for objects +that can be waited on and then asked to notify (wake up) +waiters. Examples include locks, events, semaphores. + +gevent has the generic concept of "linkable" objects, or the "linkable" +protocol, which is the ``link`` and ``rawlink`` methods. (Actually sending +the notification is up to the implementation of the individual +objects.) `gevent.greenlet.Greenlet` implements this protocol but +does not extend this object (TODO: It probably should.) +""" +import sys +from gc import get_objects + +from greenlet import greenlet +from greenlet import error as greenlet_error + +from gevent._compat import thread_mod_name +from gevent._hub_local import get_hub_noargs as get_hub +from gevent._hub_local import get_hub_if_exists + +from gevent.exceptions import InvalidSwitchError +from gevent.exceptions import InvalidThreadUseError +from gevent.timeout import Timeout + +locals()['getcurrent'] = __import__('greenlet').getcurrent +locals()['greenlet_init'] = lambda: None + +__all__ = [ + 'AbstractLinkable', +] + +# Need the real get_ident. We're imported early enough during monkey-patching +# that we can be sure nothing is monkey patched yet. +_get_thread_ident = __import__(thread_mod_name).get_ident +_allocate_thread_lock = __import__(thread_mod_name).allocate_lock + +class _FakeNotifier(object): + __slots__ = ( + 'pending', + ) + + def __init__(self): + self.pending = False + +def get_roots_and_hubs(): + from gevent.hub import Hub # delay import + return { + x.parent: x + for x in get_objects() + # Make sure to only find hubs that have a loop + # and aren't destroyed. If we don't do that, we can + # get an old hub that no longer works leading to issues in + # combined test cases. + if isinstance(x, Hub) and x.loop is not None + } + + +class AbstractLinkable(object): + # Encapsulates the standard parts of the linking and notifying + # protocol common to both repeatable events (Event, Semaphore) and + # one-time events (AsyncResult). + # + # With a few careful exceptions, instances of this object can only + # be used from a single thread. The exception is that certain methods + # may be used from multiple threads IFF: + # + # 1. They are documented as safe for that purpose; AND + # 2a. This object is compiled with Cython and thus is holding the GIL + # for the entire duration of the method; OR + # 2b. A subclass ensures that a Python-level native thread lock is held + # for the duration of the method; this is necessary in pure-Python mode. + # The only known implementation of such + # a subclass is for Semaphore. AND + # 3. The subclass that calls ``capture_hub`` catches + # and handles ``InvalidThreadUseError`` + # + # TODO: As of gevent 1.5, we use the same datastructures and almost + # the same algorithm as Greenlet. See about unifying them more. + + __slots__ = ( + 'hub', + '_links', + '_notifier', + '_notify_all', + '__weakref__' + ) + + def __init__(self, hub=None): + # Before this implementation, AsyncResult and Semaphore + # maintained the order of notifications, but Event did not. + + # In gevent 1.3, before Semaphore extended this class, that + # was changed to not maintain the order. It was done because + # Event guaranteed to only call callbacks once (a set) but + # AsyncResult had no such guarantees. When Semaphore was + # changed to extend this class, it lost its ordering + # guarantees. Unfortunately, that made it unfair. There are + # rare cases that this can starve a greenlet + # (https://github.com/gevent/gevent/issues/1487) and maybe + # even lead to deadlock (not tested). + + # So in gevent 1.5 we go back to maintaining order. But it's + # still important not to make duplicate calls, and it's also + # important to avoid O(n^2) behaviour that can result from + # naive use of a simple list due to the need to handle removed + # links in the _notify_links loop. Cython has special support for + # built-in sets, lists, and dicts, but not ordereddict. Rather than + # use two data structures, or a dict({link: order}), we simply use a + # list and remove objects as we go, keeping track of them so as not to + # have duplicates called. This makes `unlink` O(n), but we can avoid + # calling it in the common case in _wait_core (even so, the number of + # waiters should usually be pretty small) + self._links = [] + self._notifier = None + # This is conceptually a class attribute, defined here for ease of access in + # cython. If it's true, when notifiers fire, all existing callbacks are called. + # If its false, we only call callbacks as long as ready() returns true. + self._notify_all = True + # we don't want to do get_hub() here to allow defining module-level objects + # without initializing the hub. However, for multiple-thread safety, as soon + # as a waiting method is entered, even if it won't have to wait, we + # need to grab the hub and assign ownership. But we don't want to grab one prematurely. + # The example is three threads, the main thread and two worker threads; if we create + # a Semaphore in the main thread but only use it in the two threads, if we had grabbed + # the main thread's hub, the two worker threads would have a dependency on it, meaning that + # if the main event loop is blocked, the worker threads might get blocked too. + self.hub = hub + + def linkcount(self): + # For testing: how many objects are linked to this one? + return len(self._links) + + def ready(self): + # Instances must define this + raise NotImplementedError + + def rawlink(self, callback): + """ + Register a callback to call when this object is ready. + + *callback* will be called in the :class:`Hub + `, so it must not use blocking gevent API. + *callback* will be passed one argument: this instance. + """ + if not callable(callback): + raise TypeError('Expected callable: %r' % (callback, )) + self._links.append(callback) + self._check_and_notify() + + def unlink(self, callback): + """Remove the callback set by :meth:`rawlink`""" + try: + self._links.remove(callback) + except ValueError: + pass + + if not self._links and self._notifier is not None and self._notifier.pending: + # If we currently have one queued, but not running, de-queue it. + # This will break a reference cycle. + # (self._notifier -> self._notify_links -> self) + # If it's actually running, though, (and we're here as a result of callbacks) + # we don't want to change it; it needs to finish what its doing + # so we don't attempt to start a fresh one or swap it out from underneath the + # _notify_links method. + self._notifier.stop() + + def _allocate_lock(self): + return _allocate_thread_lock() + + def _getcurrent(self): + return getcurrent() # pylint:disable=undefined-variable + + def _get_thread_ident(self): + return _get_thread_ident() + + def _capture_hub(self, create): + # Subclasses should call this as the first action from any + # public method that could, in theory, block and switch + # to the hub. This may release the GIL. It may + # raise InvalidThreadUseError if the result would + + # First, detect a dead hub and drop it. + while 1: + my_hub = self.hub + if my_hub is None: + break + if my_hub.dead: # dead is a property, could release GIL + # back, holding GIL + if self.hub is my_hub: + self.hub = None + my_hub = None + break + else: + break + + if self.hub is None: + # This next line might release the GIL. + current_hub = get_hub() if create else get_hub_if_exists() + + # We have the GIL again. Did anything change? If so, + # we lost the race. + if self.hub is None: + self.hub = current_hub + + if self.hub is not None and self.hub.thread_ident != _get_thread_ident(): + raise InvalidThreadUseError( + self.hub, + get_hub_if_exists(), + getcurrent() # pylint:disable=undefined-variable + ) + return self.hub + + def _check_and_notify(self): + # If this object is ready to be notified, begin the process. + if self.ready() and self._links and not self._notifier: + hub = None + try: + hub = self._capture_hub(False) # Must create, we need it. + except InvalidThreadUseError: + # The current hub doesn't match self.hub. That's OK, + # we still want to start the notifier in the thread running + # self.hub (because the links probably contains greenlet.switch + # calls valid only in that hub) + pass + if hub is not None: + self._notifier = hub.loop.run_callback(self._notify_links, []) + else: + # Hmm, no hub. We must be the only thing running. Then its OK + # to just directly call the callbacks. + self._notifier = 1 + try: + self._notify_links([]) + finally: + self._notifier = None + + def _notify_link_list(self, links): + # The core of the _notify_links method to notify + # links in order. Lets the ``links`` list be mutated, + # and only notifies up to the last item in the list, in case + # objects are added to it. + if not links: + # HMM. How did we get here? Running two threads at once? + # Seen once on Py27/Win/Appveyor + # https://ci.appveyor.com/project/jamadden/gevent/builds/36875645/job/9wahj9ft4h4qa170 + return [] + + only_while_ready = not self._notify_all + final_link = links[-1] + done = set() # of ids + hub = self.hub if self.hub is not None else get_hub_if_exists() + unswitched = [] + while links: # remember this can be mutated + if only_while_ready and not self.ready(): + break + + link = links.pop(0) # Cython optimizes using list internals + id_link = id(link) + if id_link not in done: + # XXX: JAM: What was I thinking? This doesn't make much sense, + # there's a good chance `link` will be deallocated, and its id() will + # be free to be reused. This also makes looping difficult, you have to + # create new functions inside a loop rather than just once outside the loop. + done.add(id_link) + try: + self._drop_lock_for_switch_out() + try: + link(self) + except greenlet_error: + # couldn't switch to a greenlet, we must be + # running in a different thread. back on the list it goes for next time. + unswitched.append(link) + finally: + self._acquire_lock_for_switch_in() + + except: # pylint:disable=bare-except + # We're running in the hub, errors must not escape. + if hub is not None: + hub.handle_error((link, self), *sys.exc_info()) + else: + import traceback + traceback.print_exc() + + if link is final_link: + break + return unswitched + + def _notify_links(self, arrived_while_waiting): + # This method must hold the GIL, or be guarded with the lock that guards + # this object. Thus, while we are notifying objects, an object from another + # thread simply cannot arrive and mutate ``_links`` or ``arrived_while_waiting`` + + # ``arrived_while_waiting`` is a list of greenlet.switch methods + # to call. These were objects that called wait() while we were processing, + # and which would have run *before* those that had actually waited + # and blocked. Instead of returning True immediately, we add them to this + # list so they wait their turn. + + # We release self._notifier here when done invoking links. + # The object itself becomes false in a boolean way as soon + # as this method returns. + notifier = self._notifier + if notifier is None: + # XXX: How did we get here? + self._check_and_notify() + return + # Early links are allowed to remove later links, and links + # are allowed to add more links, thus we must not + # make a copy of our the ``_links`` list, we must traverse it and + # mutate in place. + # + # We were ready() at the time this callback was scheduled; we + # may not be anymore, and that status may change during + # callback processing. Some of our subclasses (Event) will + # want to notify everyone who was registered when the status + # became true that it was once true, even though it may not be + # any more. In that case, we must not keep notifying anyone that's + # newly added after that, even if we go ready again. + try: + unswitched = self._notify_link_list(self._links) + # Now, those that arrived after we had begun the notification + # process. Follow the same rules, stop with those that are + # added so far to prevent starvation. + if arrived_while_waiting: + un2 = self._notify_link_list(arrived_while_waiting) + unswitched.extend(un2) + + # Anything left needs to go back on the main list. + self._links.extend(arrived_while_waiting) + finally: + # We should not have created a new notifier even if callbacks + # released us because we loop through *all* of our links on the + # same callback while self._notifier is still true. + # However, one of our callbacks could have called ``os.fork``, + # which invokes ``_at_fork_reinit`` and destroys the notifier and + # hub *while this method is running*. + assert self._notifier is notifier or ( + self._notifier is None and self.hub is None + ), (self, self._notifier, notifier) + self._notifier = None + # TODO: Maybe we should intelligently reset self.hub to + # free up thread affinity? In case of a pathological situation where + # one object was used from one thread once & first, but usually is + # used by another thread. + # + # BoundedSemaphore does this. + # Now we may be ready or not ready. If we're ready, which + # could have happened during the last link we called, then we + # must have more links than we started with. We need to schedule the + # wakeup. + self._check_and_notify() + if unswitched: + self._handle_unswitched_notifications(unswitched) + + + def _handle_unswitched_notifications(self, unswitched): + # Given a list of callable objects that raised + # ``greenlet.error`` when we called them: If we can determine + # that it is a parked greenlet (the callablle is a + # ``greenlet.switch`` method) and we can determine the hub + # that the greenlet belongs to (either its parent, or, in the + # case of a main greenlet, find a hub with the same parent as + # this greenlet object) then: + + # Move this to be a callback in that thread. + # (This relies on holding the GIL *or* ``Hub.loop.run_callback`` being + # thread-safe! Note that the CFFI implementations are definitely + # NOT thread-safe. TODO: Make them? Or an alternative?) + # + # Otherwise, print some error messages. + + # TODO: Inline this for individual links. That handles the + # "only while ready" case automatically. Be careful about locking in that case. + # + # TODO: Add a 'strict' mode that prevents doing this dance, since it's + # inherently not safe. + root_greenlets = None + printed_tb = False + only_while_ready = not self._notify_all + + while unswitched: + if only_while_ready and not self.ready(): + self.__print_unswitched_warning(unswitched, printed_tb) + break + + link = unswitched.pop(0) + + hub = None # Also serves as a "handled?" flag + # Is it a greenlet.switch method? + if (getattr(link, '__name__', None) == 'switch' + and isinstance(getattr(link, '__self__', None), greenlet)): + glet = link.__self__ + parent = glet.parent + + while parent is not None: + if hasattr(parent, 'loop'): # Assuming the hub. + hub = glet.parent + break + parent = glet.parent + + if hub is None: + if root_greenlets is None: + root_greenlets = get_roots_and_hubs() + hub = root_greenlets.get(glet) + + if hub is not None and hub.loop is not None: + hub.loop.run_callback_threadsafe(link, self) + if hub is None or hub.loop is None: + # We couldn't handle it + self.__print_unswitched_warning(link, printed_tb) + printed_tb = True + + + def __print_unswitched_warning(self, link, printed_tb): + print('gevent: error: Unable to switch to greenlet', link, + 'from', self, '; crossing thread boundaries is not allowed.', + file=sys.stderr) + + if not printed_tb: + printed_tb = True + print( + 'gevent: error: ' + 'This is a result of using gevent objects from multiple threads,', + 'and is a bug in the calling code.', file=sys.stderr) + + import traceback + traceback.print_stack() + + def _quiet_unlink_all(self, obj): + if obj is None: + return + + self.unlink(obj) + if self._notifier is not None and self._notifier.args: + try: + self._notifier.args[0].remove(obj) + except ValueError: + pass + + def __wait_to_be_notified(self, rawlink): # pylint:disable=too-many-branches + resume_this_greenlet = getcurrent().switch # pylint:disable=undefined-variable + if rawlink: + self.rawlink(resume_this_greenlet) + else: + self._notifier.args[0].append(resume_this_greenlet) + + try: + self._switch_to_hub(self.hub) + # If we got here, we were automatically unlinked already. + resume_this_greenlet = None + finally: + self._quiet_unlink_all(resume_this_greenlet) + + def _switch_to_hub(self, the_hub): + self._drop_lock_for_switch_out() + try: + result = the_hub.switch() + finally: + self._acquire_lock_for_switch_in() + if result is not self: # pragma: no cover + raise InvalidSwitchError( + 'Invalid switch into %s.wait(): %r' % ( + self.__class__.__name__, + result, + ) + ) + + def _acquire_lock_for_switch_in(self): + return + + def _drop_lock_for_switch_out(self): + return + + def _wait_core(self, timeout, catch=Timeout): + """ + The core of the wait implementation, handling switching and + linking. + + This method is NOT safe to call from multiple threads. + + ``self.hub`` must be initialized before entering this method. + The hub that is set is considered the owner and cannot be changed + while this method is running. It must only be called from the thread + where ``self.hub`` is the current hub. + + If *catch* is set to ``()``, a timeout that elapses will be + allowed to be raised. + + :return: A true value if the wait succeeded without timing out. + That is, a true return value means we were notified and control + resumed in this greenlet. + """ + with Timeout._start_new_or_dummy(timeout) as timer: # Might release + # We already checked above (_wait()) if we're ready() + try: + self.__wait_to_be_notified( + True,# Use rawlink() + ) + return True + except catch as ex: + if ex is not timer: + raise + # test_set_and_clear and test_timeout in test_threading + # rely on the exact return values, not just truthish-ness + return False + + def _wait_return_value(self, waited, wait_success): + # pylint:disable=unused-argument + # Subclasses should override this to return a value from _wait. + # By default we return None. + return None # pragma: no cover all extent subclasses override + + def _wait(self, timeout=None): + # Watch where we could potentially release the GIL. + self._capture_hub(True) # Must create, we must have an owner. Might release + + if self.ready(): # *might* release, if overridden in Python. + result = self._wait_return_value(False, False) # pylint:disable=assignment-from-none + if self._notifier: + # We're already notifying waiters; one of them must have run + # and switched to this greenlet, which arrived here. Alternately, + # we could be in a separate thread (but we're holding the GIL/object lock) + self.__wait_to_be_notified(False) # Use self._notifier.args[0] instead of self.rawlink + + return result + + gotit = self._wait_core(timeout) + return self._wait_return_value(True, gotit) + + def _at_fork_reinit(self): + """ + This method was added in Python 3.9 and is called by logging.py + ``_after_at_fork_child_reinit_locks`` on Lock objects. + + It is also called from threading.py, ``_after_fork`` in + ``_reset_internal_locks``, and that can hit ``Event`` objects. + + Subclasses should reset themselves to an initial state. This + includes unlocking/releasing, if possible. This method detaches from the + previous hub and drops any existing notifier. + """ + self.hub = None + self._notifier = None + +def _init(): + greenlet_init() # pylint:disable=undefined-variable + +_init() + + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent.__abstract_linkable') diff --git a/venv/lib/python3.9/site-packages/gevent/_compat.py b/venv/lib/python3.9/site-packages/gevent/_compat.py new file mode 100644 index 0000000..b992a38 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_compat.py @@ -0,0 +1,147 @@ +# -*- coding: utf-8 -*- +""" +internal gevent python 2/python 3 bridges. Not for external use. +""" + +from __future__ import print_function, absolute_import, division + +## Important: This module should generally not have any other gevent +## imports (the exception is _util_py2) + +import sys +import os + + +PY311 = sys.version_info[:2] >= (3, 11) +PY312 = sys.version_info[:2] >= (3, 12) +PY313 = sys.version_info[:2] >= (3, 13) +PY314 = sys.version_info[:2] >= (3, 14) +PYPY = hasattr(sys, 'pypy_version_info') +WIN = sys.platform.startswith("win") +LINUX = sys.platform.startswith('linux') +OSX = MAC = sys.platform == 'darwin' + + +GLOBAL_PURE_PYTHON = bool(PYPY or os.environ.get('PURE_PYTHON')) +# .. versionchanged:: 25.9.1 +# +# GEVENT_PURE_PYTHON previously was treated like PURE_PYTHON, +# meaning any value at all would disable extensions. +# Now, we want to treat GEVENT_PURE_PYTHON as a comma-separated list of +# module names for which we disable the acceleration, but we want to be +# compatible with previous values, like so: +# +# - GEVENT_PURE_PYTHON=1 +# GEVENT_PURE_PYTHON=all +# GEVENT_PURE_PYTHON=some_string +# Disable all extensions +# - GEVENT_PURE_PYTHON=gevent.queue +# Disable the extension ONLY for gevent.queue +# - GEVENT_PURE_PYTHON=gevent.queue,gevent.hub +# Disable the extension for those two modules only +# - PURE_PYTHON= +# Disable all extensions. +# +# CAUTION: Not all configurations of mixing python/C modules +# will necessarily work together. None of them are tested. +# Some are certainly safe to disable independently, like gevent.queue. +_GEVENT_PURE_PYTHON = os.environ.get('GEVENT_PURE_PYTHON') +if _GEVENT_PURE_PYTHON and 'gevent.' not in _GEVENT_PURE_PYTHON: + GLOBAL_PURE_PYTHON = True + +#: ..deprecated:: 25.9.1 +PURE_PYTHON = GLOBAL_PURE_PYTHON + +def pure_python_module(mod_name): + if GLOBAL_PURE_PYTHON: + pure = True + elif not _GEVENT_PURE_PYTHON: + pure = False + else: + pure = mod_name in _GEVENT_PURE_PYTHON.split(',') + return pure + + +## Types + + +string_types = (str,) +integer_types = (int,) +text_type = str +native_path_types = (str, bytes) +thread_mod_name = '_thread' + +hostname_types = tuple(set(string_types + (bytearray, bytes))) + +def NativeStrIO(): + import io + return io.BytesIO() if str is bytes else io.StringIO() + + +from abc import ABC # pylint:disable=unused-import + + +## Exceptions + +def reraise(t, value, tb=None): # pylint:disable=unused-argument + if value.__traceback__ is not tb and tb is not None: + raise value.with_traceback(tb) + raise value +def exc_clear(): + pass + + + +## import locks +try: + # In Python 3.4 and newer in CPython and PyPy3, + # imp.acquire_lock and imp.release_lock are delegated to + # '_imp'. (Which is also used by importlib.) 'imp' itself is + # deprecated. Avoid that warning. + import _imp as imp +except ImportError: + import imp # pylint:disable=deprecated-module +imp_acquire_lock = imp.acquire_lock +imp_release_lock = imp.release_lock + +## Functions +iteritems = dict.items +itervalues = dict.values +xrange = range +izip = zip + + +## The __fspath__ protocol +from os import PathLike # pylint:disable=unused-import +from os import fspath +_fspath = fspath +from os import fsencode # pylint:disable=unused-import +from os import fsdecode # pylint:disable=unused-import + +## Clocks +# Python 3.3+ (PEP 418) +from time import perf_counter +from time import get_clock_info +from time import monotonic +perf_counter = perf_counter +monotonic = monotonic +get_clock_info = get_clock_info + + +## Monitoring +def get_this_psutil_process(): + # Depends on psutil. Defer the import until needed, who knows what + # it imports (psutil imports subprocess which on Python 3 imports + # selectors. This can expose issues with monkey-patching.) + # Returns a freshly queried object each time. + try: + from psutil import Process, AccessDenied + # Make sure it works (why would we be denied access to our own process?) + try: + proc = Process() + proc.memory_full_info() + except AccessDenied: # pragma: no cover + proc = None + except ImportError: + proc = None + return proc diff --git a/venv/lib/python3.9/site-packages/gevent/_config.py b/venv/lib/python3.9/site-packages/gevent/_config.py new file mode 100644 index 0000000..70cbc82 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_config.py @@ -0,0 +1,753 @@ +# Copyright (c) 2018 gevent. See LICENSE for details. +""" +gevent tunables. + +This should be used as ``from gevent import config``. That variable +is an object of :class:`Config`. + +.. versionadded:: 1.3a2 + +.. versionchanged:: 22.08.0 + Invoking this module like ``python -m gevent._config`` will + print a help message about available configuration properties. + This is handy to quickly look for environment variables. +""" + +import importlib +import os +import textwrap + +from gevent._compat import string_types +from gevent._compat import WIN + +__all__ = [ + 'config', +] + +ALL_SETTINGS = [] + +class SettingType(type): + # pylint:disable=bad-mcs-classmethod-argument + + def __new__(cls, name, bases, cls_dict): + if name == 'Setting': + return type.__new__(cls, name, bases, cls_dict) + + cls_dict["order"] = len(ALL_SETTINGS) + if 'name' not in cls_dict: + cls_dict['name'] = name.lower() + + if 'environment_key' not in cls_dict: + cls_dict['environment_key'] = 'GEVENT_' + cls_dict['name'].upper() + + + new_class = type.__new__(cls, name, bases, cls_dict) + new_class.fmt_desc(cls_dict.get("desc", "")) + new_class.__doc__ = new_class.desc + ALL_SETTINGS.append(new_class) + + if new_class.document: + setting_name = cls_dict['name'] + + def getter(self): + return self.settings[setting_name].get() + + def setter(self, value): # pragma: no cover + # The setter should never be hit, Config has a + # __setattr__ that would override. But for the sake + # of consistency we provide one. + self.settings[setting_name].set(value) + + prop = property(getter, setter, doc=new_class.__doc__) + + setattr(Config, cls_dict['name'], prop) + return new_class + + def fmt_desc(cls, desc): + desc = textwrap.dedent(desc).strip() + if hasattr(cls, 'shortname_map'): + desc += ( + "\n\nThis is an importable value. It can be " + "given as a string naming an importable object, " + "or a list of strings in preference order and the first " + "successfully importable object will be used. (Separate values " + "in the environment variable with commas.) " + "It can also be given as the callable object itself (in code). " + ) + if cls.shortname_map: + desc += "Shorthand names for default objects are %r" % (list(cls.shortname_map),) + if getattr(cls.validate, '__doc__'): + desc += '\n\n' + textwrap.dedent(cls.validate.__doc__).strip() + if isinstance(cls.default, str) and hasattr(cls, 'shortname_map'): + default = "`%s`" % (cls.default,) + else: + default = "`%r`" % (cls.default,) + desc += "\n\nThe default value is %s" % (default,) + desc += ("\n\nThe environment variable ``%s`` " + "can be used to control this." % (cls.environment_key,)) + setattr(cls, "desc", desc) + return desc + +def validate_invalid(value): + raise ValueError("Not a valid value: %r" % (value,)) + +def validate_bool(value): + """ + This is a boolean value. + + In the environment variable, it may be given as ``1``, ``true``, + ``on`` or ``yes`` for `True`, or ``0``, ``false``, ``off``, or + ``no`` for `False`. + """ + if isinstance(value, string_types): + value = value.lower().strip() + if value in ('1', 'true', 'on', 'yes'): + value = True + elif value in ('0', 'false', 'off', 'no') or not value: + value = False + else: + raise ValueError("Invalid boolean string: %r" % (value,)) + return bool(value) + +def validate_anything(value): + return value + +convert_str_value_as_is = validate_anything + +class Setting(metaclass=SettingType): + name = None + value = None + validate = staticmethod(validate_invalid) + default = None + environment_key = None + document = True + + desc = """\ + + A long ReST description. + + The first line should be a single sentence. + + """ + + def _convert(self, value): + if isinstance(value, string_types): + return value.split(',') + return value + + def _default(self): + result = os.environ.get(self.environment_key, self.default) + result = self._convert(result) + return result + + def get(self): + # If we've been specifically set, return it + if 'value' in self.__dict__: + return self.value + # Otherwise, read from the environment and reify + # so we return consistent results. + self.value = self.validate(self._default()) + return self.value + + def set(self, val): + self.value = self.validate(self._convert(val)) + + + +def make_settings(): + """ + Return fresh instances of all classes defined in `ALL_SETTINGS`. + """ + settings = {} + for setting_kind in ALL_SETTINGS: + setting = setting_kind() + assert setting.name not in settings + settings[setting.name] = setting + return settings + + +class Config(object): + """ + Global configuration for gevent. + + There is one instance of this object at ``gevent.config``. If you + are going to make changes in code, instead of using the documented + environment variables, you need to make the changes before using + any parts of gevent that might need those settings (unless otherwise + documented). For example:: + + >>> from gevent import config + >>> config.fileobject = 'thread' + + >>> from gevent import fileobject + >>> fileobject.FileObject.__name__ + 'FileObjectThread' + + .. versionadded:: 1.3a2 + + """ + + def __init__(self): + self.settings = make_settings() + + def __getattr__(self, name): + if name not in self.settings: + raise AttributeError("No configuration setting for: %r" % name) + return self.settings[name].get() + + def __setattr__(self, name, value): + if name != "settings" and name in self.settings: + self.set(name, value) + else: + super(Config, self).__setattr__(name, value) + + def set(self, name, value): + if name not in self.settings: + raise AttributeError("No configuration setting for: %r" % name) + self.settings[name].set(value) + + def __dir__(self): + return list(self.settings) + + def print_help(self): + for k, v in self.settings.items(): + print(k) + print(textwrap.indent(v.__doc__.lstrip(), ' ' * 4)) + print() + + +class ImportableSetting(object): + + def _import_one_of(self, candidates): + assert isinstance(candidates, list) + if not candidates: + raise ImportError('Cannot import from empty list') + + for item in candidates[:-1]: + try: + return self._import_one(item) + except ImportError: + pass + + return self._import_one(candidates[-1]) + + def _import_one(self, path, _MISSING=object()): + if not isinstance(path, string_types): + return path + + if '.' not in path or '/' in path: + raise ImportError("Cannot import %r. " + "Required format: [package.]module.class. " + "Or choose from %r" + % (path, list(self.shortname_map))) + + + module, item = path.rsplit('.', 1) + module = importlib.import_module(module) + x = getattr(module, item, _MISSING) + if x is _MISSING: + raise ImportError('Cannot import %r from %r' % (item, module)) + return x + + shortname_map = {} + + def validate(self, value): + if isinstance(value, type): + return value + return self._import_one_of([self.shortname_map.get(x, x) for x in value]) + + def get_options(self): + result = {} + for name, val in self.shortname_map.items(): + try: + result[name] = self._import_one(val) + except ImportError as e: + result[name] = e + return result + + +class BoolSettingMixin(object): + validate = staticmethod(validate_bool) + # Don't do string-to-list conversion. + _convert = staticmethod(convert_str_value_as_is) + + +class IntSettingMixin(object): + # Don't do string-to-list conversion. + def _convert(self, value): + if value: + return int(value) + + validate = staticmethod(validate_anything) + + +class _PositiveValueMixin(object): + + def validate(self, value): + if value is not None and value <= 0: + raise ValueError("Must be positive") + return value + + +class FloatSettingMixin(_PositiveValueMixin): + def _convert(self, value): + if value: + return float(value) + + +class ByteCountSettingMixin(_PositiveValueMixin): + + _MULTIPLES = { + # All keys must be the same size. + 'kb': 1024, + 'mb': 1024 * 1024, + 'gb': 1024 * 1024 * 1024, + } + + _SUFFIX_SIZE = 2 + + def _convert(self, value): + if not value or not isinstance(value, str): + return value + value = value.lower() + for s, m in self._MULTIPLES.items(): + if value[-self._SUFFIX_SIZE:] == s: + return int(value[:-self._SUFFIX_SIZE]) * m + return int(value) + + +class Resolver(ImportableSetting, Setting): + + desc = """\ + The callable that will be used to create + :attr:`gevent.hub.Hub.resolver`. + + See :doc:`dns` for more information. + """ + + default = [ + 'thread', + 'dnspython', + 'ares', + 'block', + ] + + shortname_map = { + 'ares': 'gevent.resolver.ares.Resolver', + 'thread': 'gevent.resolver.thread.Resolver', + 'block': 'gevent.resolver.blocking.Resolver', + 'dnspython': 'gevent.resolver.dnspython.Resolver', + } + + + +class Threadpool(ImportableSetting, Setting): + + desc = """\ + The kind of threadpool we use. + """ + + default = 'gevent.threadpool.ThreadPool' + + +class ThreadpoolIdleTaskTimeout(FloatSettingMixin, Setting): + document = True + name = 'threadpool_idle_task_timeout' + environment_key = 'GEVENT_THREADPOOL_IDLE_TASK_TIMEOUT' + + desc = """\ + How long threads in the default threadpool (used for + DNS by default) are allowed to be idle before exiting. + + Use -1 for no timeout. + + .. versionadded:: 22.08.0 + """ + + # This value is picked pretty much arbitrarily. + # We want to balance performance (keeping threads around) + # with memory/cpu usage (letting threads go). + default = 5.0 + +class Loop(ImportableSetting, Setting): + + desc = """\ + The kind of the loop we use. + + On Windows, this defaults to libuv, while on + other platforms it defaults to libev. + + """ + + default = [ + 'libev-cext', + 'libev-cffi', + 'libuv-cffi', + ] if not WIN else [ + 'libuv-cffi', + 'libev-cext', + 'libev-cffi', + ] + + shortname_map = { # pylint:disable=dict-init-mutate + 'libev-cext': 'gevent.libev.corecext.loop', + 'libev-cffi': 'gevent.libev.corecffi.loop', + 'libuv-cffi': 'gevent.libuv.loop.loop', + } + + shortname_map['libuv'] = shortname_map['libuv-cffi'] + + +class FormatContext(ImportableSetting, Setting): + name = 'format_context' + + # using pprint.pformat can override custom __repr__ methods on dict/list + # subclasses, which can be a security concern + default = 'pprint.saferepr' + + +class LibevBackend(Setting): + name = 'libev_backend' + environment_key = 'GEVENT_BACKEND' + + desc = """\ + The backend for libev, such as 'select' + """ + + default = None + + validate = staticmethod(validate_anything) + + +class FileObject(ImportableSetting, Setting): + desc = """\ + The kind of ``FileObject`` we will use. + + See :mod:`gevent.fileobject` for a detailed description. + + """ + environment_key = 'GEVENT_FILE' + + default = [ + 'posix', + 'thread', + ] + + shortname_map = { + 'thread': 'gevent._fileobjectcommon.FileObjectThread', + 'posix': 'gevent._fileobjectposix.FileObjectPosix', + 'block': 'gevent._fileobjectcommon.FileObjectBlock' + } + + +class WatchChildren(BoolSettingMixin, Setting): + desc = """\ + Should we *not* watch children with the event loop watchers? + + This is an advanced setting. + + See :mod:`gevent.os` for a detailed description. + """ + name = 'disable_watch_children' + environment_key = 'GEVENT_NOWAITPID' + default = False + + +class TraceMalloc(IntSettingMixin, Setting): + name = 'trace_malloc' + environment_key = 'PYTHONTRACEMALLOC' + default = False + + desc = """\ + Should FFI objects track their allocation? + + This is only useful for low-level debugging. + + On Python 3, this environment variable is built in to the + interpreter, and it may also be set with the ``-X + tracemalloc`` command line argument. + + On Python 2, gevent interprets this argument and adds extra + tracking information for FFI objects. + """ + + +class TrackGreenletTree(BoolSettingMixin, Setting): + name = 'track_greenlet_tree' + environment_key = 'GEVENT_TRACK_GREENLET_TREE' + default = True + + desc = """\ + Should `Greenlet` objects track their spawning tree? + + Setting this to a false value will make spawning `Greenlet` + objects and using `spawn_raw` faster, but the + ``spawning_greenlet``, ``spawn_tree_locals`` and ``spawning_stack`` + will not be captured. Setting this to a false value can also + reduce memory usage because capturing the stack captures + some information about Python frames. + + .. versionadded:: 1.3b1 + """ + + +## Monitoring settings +# All env keys should begin with GEVENT_MONITOR + +class MonitorThread(BoolSettingMixin, Setting): + name = 'monitor_thread' + environment_key = 'GEVENT_MONITOR_THREAD_ENABLE' + default = False + + desc = """\ + Should each hub start a native OS thread to monitor + for problems? + + Such a thread will periodically check to see if the event loop + is blocked for longer than `max_blocking_time`, producing output on + the hub's exception stream (stderr by default) if it detects this condition. + + If this setting is true, then this thread will be created + the first time the hub is switched to, + or you can call :meth:`gevent.hub.Hub.start_periodic_monitoring_thread` at any + time to create it (from the same thread that will run the hub). That function + will return an instance of :class:`gevent.events.IPeriodicMonitorThread` + to which you can add your own monitoring functions. That function + also emits an event of :class:`gevent.events.PeriodicMonitorThreadStartedEvent`. + + .. seealso:: `max_blocking_time` + + .. versionadded:: 1.3b1 + """ + +class MaxBlockingTime(FloatSettingMixin, Setting): + name = 'max_blocking_time' + # This environment key doesn't follow the convention because it's + # meant to match a key used by existing projects + environment_key = 'GEVENT_MAX_BLOCKING_TIME' + default = 0.1 + + desc = """\ + If the `monitor_thread` is enabled, this is + approximately how long (in seconds) + the event loop will be allowed to block before a warning is issued. + + This function depends on using `greenlet.settrace`, so installing + your own trace function after starting the monitoring thread will + cause this feature to misbehave unless you call the function + returned by `greenlet.settrace`. If you install a tracing function *before* + the monitoring thread is started, it will still be called. + + .. note:: In the unlikely event of creating and using multiple different + gevent hubs in the same native thread in a short period of time, + especially without destroying the hubs, false positives may be reported. + + .. versionadded:: 1.3b1 + """ + + +class PrintBlockingReports(BoolSettingMixin, Setting): + name = 'print_blocking_reports' + default = True + + environment_key = 'GEVENT_MONITOR_PRINT_BLOCKING_REPORTS' + desc = """\ + If `monitor_thread` is enabled, and gevent detects a hub blocked + for more than `max_blocking_time`, should gevent print a detailed + report about the block? + + The report is generated and notifications are broadcast whether + or not the report is printed. + + .. versionadded:: 25.4.1 + """ + + +class MonitorMemoryPeriod(FloatSettingMixin, Setting): + name = 'memory_monitor_period' + + environment_key = 'GEVENT_MONITOR_MEMORY_PERIOD' + default = 5 + + desc = """\ + If `monitor_thread` is enabled, this is approximately how long + (in seconds) we will go between checking the processes memory usage. + + Checking the memory usage is relatively expensive on some operating + systems, so this should not be too low. gevent will place a floor + value on it. + """ + +class MonitorMemoryMaxUsage(ByteCountSettingMixin, Setting): + name = 'max_memory_usage' + + environment_key = 'GEVENT_MONITOR_MEMORY_MAX' + default = None + + desc = """\ + If `monitor_thread` is enabled, + then if memory usage exceeds this amount (in bytes), events will + be emitted. See `gevent.events`. In the environment variable, you can use + a suffix of 'kb', 'mb' or 'gb' to specify the value in kilobytes, megabytes + or gigibytes. + + There is no default value for this setting. If you wish to + cap memory usage, you must choose a value. + """ + +# The ares settings are all interpreted by +# gevent/resolver/ares.pyx, so we don't do +# any validation here. + +class AresSettingMixin(object): + + document = False + + @property + def kwarg_name(self): + return self.name[5:] + + validate = staticmethod(validate_anything) + + _convert = staticmethod(convert_str_value_as_is) + +class AresFlags(AresSettingMixin, Setting): + name = 'ares_flags' + default = None + environment_key = 'GEVENTARES_FLAGS' + +class AresTimeout(AresSettingMixin, Setting): + document = True + name = 'ares_timeout' + default = None + environment_key = 'GEVENTARES_TIMEOUT' + desc = """\ + + .. deprecated:: 1.3a2 + Prefer the :attr:`resolver_timeout` setting. If both are set, + the results are not defined. + """ + +class AresTries(AresSettingMixin, Setting): + name = 'ares_tries' + default = None + environment_key = 'GEVENTARES_TRIES' + +class AresNdots(AresSettingMixin, Setting): + name = 'ares_ndots' + default = None + environment_key = 'GEVENTARES_NDOTS' + +class AresUDPPort(AresSettingMixin, Setting): + name = 'ares_udp_port' + default = None + environment_key = 'GEVENTARES_UDP_PORT' + +class AresTCPPort(AresSettingMixin, Setting): + name = 'ares_tcp_port' + default = None + environment_key = 'GEVENTARES_TCP_PORT' + +class AresServers(AresSettingMixin, Setting): + document = True + name = 'ares_servers' + default = None + environment_key = 'GEVENTARES_SERVERS' + desc = """\ + A list of strings giving the IP addresses of nameservers for the ares resolver. + + In the environment variable, these strings are separated by commas. + + .. deprecated:: 1.3a2 + Prefer the :attr:`resolver_nameservers` setting. If both are set, + the results are not defined. + """ + +# Generic nameservers, works for dnspython and ares. +class ResolverNameservers(AresSettingMixin, Setting): + document = True + name = 'resolver_nameservers' + default = None + environment_key = 'GEVENT_RESOLVER_NAMESERVERS' + desc = """\ + A list of strings giving the IP addresses of nameservers for the (non-system) resolver. + + In the environment variable, these strings are separated by commas. + + .. rubric:: Resolver Behaviour + + * blocking + + Ignored + + * Threaded + + Ignored + + * dnspython + + If this setting is not given, the dnspython resolver will + load nameservers to use from ``/etc/resolv.conf`` + or the Windows registry. This setting replaces any nameservers read + from those means. Note that the file and registry are still read + for other settings. + + .. caution:: dnspython does not validate the members of the list. + An improper address (such as a hostname instead of IP) has + undefined results, including hanging the process. + + * ares + + Similar to dnspython, but with more platform and compile-time + options. ares validates that the members of the list are valid + addresses. + """ + + # Normal string-to-list rules. But still validate_anything. + _convert = Setting._convert + + # TODO: In the future, support reading a resolv.conf file + # *other* than /etc/resolv.conf, and do that both on Windows + # and other platforms. Also offer the option to disable the system + # configuration entirely. + + @property + def kwarg_name(self): + return 'servers' + +# Generic timeout, works for dnspython and ares +class ResolverTimeout(FloatSettingMixin, AresSettingMixin, Setting): + document = True + name = 'resolver_timeout' + environment_key = 'GEVENT_RESOLVER_TIMEOUT' + desc = """\ + The total amount of time that the DNS resolver will spend making queries. + + Only the ares and dnspython resolvers support this. + + .. versionadded:: 1.3a2 + """ + + @property + def kwarg_name(self): + return 'timeout' + +config = Config() + +# Go ahead and attempt to import the loop when this class is +# instantiated. The hub won't work if the loop can't be found. This +# can solve problems with the class being imported from multiple +# threads at once, leading to one of the imports failing. +# factories are themselves handled lazily. See #687. + +# Don't cache it though, in case the user re-configures through the +# API. + +try: + Loop().get() +except ImportError: # pragma: no cover + pass + + +if __name__ == '__main__': + config.print_help() diff --git a/venv/lib/python3.9/site-packages/gevent/_ffi/__init__.py b/venv/lib/python3.9/site-packages/gevent/_ffi/__init__.py new file mode 100644 index 0000000..56f1e96 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_ffi/__init__.py @@ -0,0 +1,27 @@ +""" +Internal helpers for FFI implementations. +""" +from __future__ import print_function, absolute_import + +import os +import sys + +def _dbg(*args, **kwargs): + # pylint:disable=unused-argument + pass + +#_dbg = print + +def _pid_dbg(*args, **kwargs): + kwargs['file'] = sys.stderr + print(os.getpid(), *args, **kwargs) + +CRITICAL = 1 +ERROR = 3 +DEBUG = 5 +TRACE = 9 + +GEVENT_DEBUG_LEVEL = vars()[os.getenv("GEVENT_DEBUG", 'CRITICAL').upper()] + +if GEVENT_DEBUG_LEVEL >= TRACE: + _dbg = _pid_dbg diff --git a/venv/lib/python3.9/site-packages/gevent/_ffi/callback.py b/venv/lib/python3.9/site-packages/gevent/_ffi/callback.py new file mode 100644 index 0000000..38ddda1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_ffi/callback.py @@ -0,0 +1,57 @@ +from __future__ import absolute_import +from __future__ import print_function + +from zope.interface import implementer + +from gevent._interfaces import ICallback + +__all__ = [ + 'callback', +] + + +@implementer(ICallback) +class callback(object): + + __slots__ = ('callback', 'args') + + def __init__(self, cb, args): + self.callback = cb + self.args = args + + def stop(self): + self.callback = None + self.args = None + + close = stop + + # Note that __nonzero__ and pending are different + # bool() is used in contexts where we need to know whether to schedule another callback, + # so it's true if it's pending or currently running + # 'pending' has the same meaning as libev watchers: it is cleared before actually + # running the callback + + def __bool__(self): + # it's nonzero if it's pending or currently executing + # NOTE: This depends on loop._run_callbacks setting the args property + # to None. + return self.args is not None + + @property + def pending(self): + return self.callback is not None + + def _format(self): + return '' + + def __repr__(self): + result = "<%s at 0x%x" % (self.__class__.__name__, id(self)) + if self.pending: + result += " pending" + if self.callback is not None: + result += " callback=%r" % (self.callback, ) + if self.args is not None: + result += " args=%r" % (self.args, ) + if self.callback is None and self.args is None: + result += " stopped" + return result + ">" diff --git a/venv/lib/python3.9/site-packages/gevent/_ffi/loop.py b/venv/lib/python3.9/site-packages/gevent/_ffi/loop.py new file mode 100644 index 0000000..3d84193 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_ffi/loop.py @@ -0,0 +1,798 @@ +""" +Basic loop implementation for ffi-based cores. +""" +# pylint: disable=too-many-lines, protected-access, redefined-outer-name, not-callable +from __future__ import absolute_import, print_function + +from collections import deque +import sys +import os +import traceback + +from gevent._ffi import _dbg +from gevent._ffi import GEVENT_DEBUG_LEVEL +from gevent._ffi import TRACE +from gevent._ffi.callback import callback +from gevent._compat import PYPY +from gevent.exceptions import HubDestroyed + +from gevent import getswitchinterval + +__all__ = [ + 'AbstractLoop', + 'assign_standard_callbacks', +] + + +class _EVENTSType(object): + def __repr__(self): + return 'gevent.core.EVENTS' + +EVENTS = GEVENT_CORE_EVENTS = _EVENTSType() + + +class _DiscardedSet(frozenset): + __slots__ = () + + def discard(self, o): + "Does nothing." + +##### +## Note on CFFI objects, callbacks and the lifecycle of watcher objects +# +# Each subclass of `watcher` allocates a C structure of the +# appropriate type e.g., struct gevent_ev_io and holds this pointer in +# its `_gwatcher` attribute. When that watcher instance is garbage +# collected, then the C structure is also freed. The C structure is +# passed to libev from the watcher's start() method and then to the +# appropriate C callback function, e.g., _gevent_ev_io_callback, which +# passes it back to python's _python_callback where we need the +# watcher instance. Therefore, as long as that callback is active (the +# watcher is started), the watcher instance must not be allowed to get +# GC'd---any access at the C level or even the FFI level to the freed +# memory could crash the process. +# +# However, the typical idiom calls for writing something like this: +# loop.io(fd, python_cb).start() +# thus forgetting the newly created watcher subclass and allowing it to be immediately +# GC'd. To combat this, when the watcher is started, it places itself into the loop's +# `_keepaliveset`, and it only removes itself when the watcher's `stop()` method is called. +# Often, this is the *only* reference keeping the watcher object, and hence its C structure, +# alive. +# +# This is slightly complicated by the fact that the python-level +# callback, called from the C callback, could choose to manually stop +# the watcher. When we return to the C level callback, we now have an +# invalid pointer, and attempting to pass it back to Python (e.g., to +# handle an error) could crash. Hence, _python_callback, +# _gevent_io_callback, and _python_handle_error cooperate to make sure +# that the watcher instance stays in the loops `_keepaliveset` while +# the C code could be running---and if it gets removed, to not call back +# to Python again. +# See also https://github.com/gevent/gevent/issues/676 +#### +class AbstractCallbacks(object): + + + def __init__(self, ffi): + self.ffi = ffi + self.callbacks = [] + if GEVENT_DEBUG_LEVEL < TRACE: + self.from_handle = ffi.from_handle + + def from_handle(self, handle): # pylint:disable=method-hidden + x = self.ffi.from_handle(handle) + return x + + def python_callback(self, handle, revents): + """ + Returns an integer having one of three values: + + - -1 + An exception occurred during the callback and you must call + :func:`_python_handle_error` to deal with it. The Python watcher + object will have the exception tuple saved in ``_exc_info``. + - 1 + Everything went according to plan. You should check to see if the native + watcher is still active, and call :func:`python_stop` if it is not. This will + clean up the memory. Finding the watcher still active at the event loop level, + but not having stopped itself at the gevent level is a buggy scenario and + shouldn't happen. + - 2 + Everything went according to plan, but the watcher has already + been stopped. Its memory may no longer be valid. + + This function should never return 0, as that's the default value that + Python exceptions will produce. + """ + #_dbg("Running callback", handle) + orig_ffi_watcher = None + orig_loop = None + try: + # Even dereferencing the handle needs to be inside the try/except; + # if we don't return normally (e.g., a signal) then we wind up going + # to the 'onerror' handler (unhandled_onerror), which + # is not what we want; that can permanently wedge the loop depending + # on which callback was executing. + # XXX: See comments in that function. We may be able to restart and do better? + if not handle: + # Hmm, a NULL handle. That's not supposed to happen. + # We can easily get into a loop if we deref it and allow that + # to raise. + _dbg("python_callback got null handle") + return 1 + the_watcher = self.from_handle(handle) + orig_ffi_watcher = the_watcher._watcher + orig_loop = the_watcher.loop + args = the_watcher.args + if args is None: + # Legacy behaviour from corecext: convert None into () + # See test__core_watcher.py + args = _NOARGS + if args and args[0] == GEVENT_CORE_EVENTS: + args = (revents, ) + args[1:] + the_watcher.callback(*args) # None here means we weren't started + except: # pylint:disable=bare-except + # It's possible for ``the_watcher`` to be undefined (UnboundLocalError) + # if we threw an exception (signal) on the line that created that variable. + # This is typically the case with a signal under libuv + try: + the_watcher + except UnboundLocalError: + the_watcher = self.from_handle(handle) + + # It may not be safe to do anything with `handle` or `orig_ffi_watcher` + # anymore. If the watcher closed or stopped itself *before* throwing the exception, + # then the `handle` and `orig_ffi_watcher` may no longer be valid. Attempting to + # e.g., dereference the handle is likely to crash the process. + the_watcher._exc_info = sys.exc_info() + + + # If it hasn't been stopped, we need to make sure its + # memory stays valid so we can stop it at the native level if needed. + # If its loop is gone, it has already been stopped, + # see https://github.com/gevent/gevent/issues/1295 for a case where + # that happened, as well as issue #1482 + if ( + # The last thing it does. Full successful close. + the_watcher.loop is None + # Only a partial close. We could leak memory and even crash later. + or the_watcher._handle is None + ): + # Prevent unhandled_onerror from using the invalid handle + handle = None + exc_info = the_watcher._exc_info + del the_watcher._exc_info + try: + if orig_loop is not None: + orig_loop.handle_error(the_watcher, *exc_info) + else: + self.unhandled_onerror(*exc_info) + except: + print("WARNING: gevent: Error when handling error", + file=sys.stderr) + traceback.print_exc() + # Signal that we're closed, no need to do more. + return 2 + + # Keep it around so we can close it later. + the_watcher.loop._keepaliveset.add(the_watcher) + return -1 + + if (the_watcher.loop is not None + and the_watcher in the_watcher.loop._keepaliveset + and the_watcher._watcher is orig_ffi_watcher): + # It didn't stop itself, *and* it didn't stop itself, reset + # its watcher, and start itself again. libuv's io watchers + # multiplex and may do this. + + # The normal, expected scenario when we find the watcher still + # in the keepaliveset is that it is still active at the event loop + # level, so we don't expect that python_stop gets called. + #_dbg("The watcher has not stopped itself, possibly still active", the_watcher) + return 1 + return 2 # it stopped itself + + def python_handle_error(self, handle, _revents): + _dbg("Handling error for handle", handle) + if not handle: + return + # No exceptions should escape this method. + + try: + # Prior to 3.14, you could just ``return`` out of a finally + # block to quash any active exception. This was deemed Bad + # in PEP765, so now we have to add an extra level + # of indentation. Sigh. + try: + watcher = self.from_handle(handle) + exc_info = watcher._exc_info + del watcher._exc_info + # In the past, we passed the ``watcher`` itself as the context, + # which typically meant that the Hub would just print + # the exception. This is a problem because sometimes we can't + # detect signals until late in ``python_callback``; specifically, + # test_selectors.py:DefaultSelectorTest.test_select_interrupt_exc + # installs a SIGALRM handler that raises an exception. That exception can happen + # before we enter ``python_callback`` or at any point within it because of the way + # libuv swallows signals. By passing None, we get the exception prapagated into + # the main greenlet (which is probably *also* not what we always want, but + # I see no way to distinguish the cases). + watcher.loop.handle_error(None, *exc_info) + finally: + # XXX Since we're here on an error condition, and we + # made sure that the watcher object was put in loop._keepaliveset, + # what about not stopping the watcher? Looks like a possible + # memory leak? + # XXX: This used to do "if revents & (libev.EV_READ | libev.EV_WRITE)" + # before stopping. Why? + try: + watcher.stop() + except: # pylint:disable=bare-except + watcher.loop.handle_error(watcher, *sys.exc_info()) + except: # pylint: disable=bare-except + pass + return + + def unhandled_onerror(self, t, v, tb): + # This is supposed to be called for signals, etc. + # This is the onerror= value for CFFI. + # If we return None, C will get a value of 0/NULL; + # if we raise, CFFI will print the exception and then + # return 0/NULL; (unless error= was configured) + # If things go as planned, we return the value that asks + # C to call back and check on if the watcher needs to be closed or + # not. + + # XXX: TODO: Could this cause events to be lost? Maybe we need to return + # a value that causes the C loop to try the callback again? + # at least for signals under libuv, which are delivered at very odd times. + # Hopefully the event still shows up when we poll the next time. + watcher = None + handle = tb.tb_frame.f_locals.get('handle') if tb is not None else None + if handle: # handle could be NULL + watcher = self.from_handle(handle) + if watcher is not None: + watcher.loop.handle_error(None, t, v, tb) + return 1 + + # Raising it causes a lot of noise from CFFI + print("WARNING: gevent: Unhandled error with no watcher", + file=sys.stderr) + traceback.print_exception(t, v, tb) + + def python_stop(self, handle): + if not handle: # pragma: no cover + print( + "WARNING: gevent: Unable to dereference handle; not stopping watcher. " + "Native resources may leak. This is most likely a bug in gevent.", + file=sys.stderr) + # The alternative is to crash with no helpful information + # NOTE: Raising exceptions here does nothing, they're swallowed by CFFI. + # Since the C level passed in a null pointer, even dereferencing the handle + # will just produce some exceptions. + return + watcher = self.from_handle(handle) + watcher.stop() + + if not PYPY: + def python_check_callback(self, watcher_ptr): # pylint:disable=unused-argument + # If we have the onerror callback, this is a no-op; all the real + # work to rethrow the exception is done by the onerror callback + + # NOTE: Unlike the rest of the functions, this is called with a pointer + # to the C level structure, *not* a pointer to the void* that represents a + # for the Python Watcher object. + pass + else: # PyPy + # On PyPy, we need the function to have some sort of body, otherwise + # the signal exceptions don't always get caught, *especially* with + # libuv (however, there's no reason to expect this to only be a libuv + # issue; it's just that we don't depend on the periodic signal timer + # under libev, so the issue is much more pronounced under libuv) + # test_socket's test_sendall_interrupted can hang. + # See https://github.com/gevent/gevent/issues/1112 + + def python_check_callback(self, watcher_ptr): # pylint:disable=unused-argument + # Things we've tried that *don't* work: + # greenlet.getcurrent() + # 1 + 1 + try: + raise MemoryError() + except MemoryError: + pass + + def python_prepare_callback(self, watcher_ptr): + loop = self._find_loop_from_c_watcher(watcher_ptr) + if loop is None: # pragma: no cover + print("WARNING: gevent: running prepare callbacks from a destroyed handle: ", + watcher_ptr) + return + loop._run_callbacks() + + def check_callback_onerror(self, t, v, tb): + loop = None + watcher_ptr = self._find_watcher_ptr_in_traceback(tb) + if watcher_ptr: + loop = self._find_loop_from_c_watcher(watcher_ptr) + if loop is not None: + # None as the context argument causes the exception to be raised + # in the main greenlet. + loop.handle_error(None, t, v, tb) + return None + raise v # Let CFFI print + + def _find_loop_from_c_watcher(self, watcher_ptr): + raise NotImplementedError() + + def _find_watcher_ptr_in_traceback(self, tb): + return tb.tb_frame.f_locals['watcher_ptr'] if tb is not None else None + + +def assign_standard_callbacks(ffi, lib, callbacks_class, extras=()): # pylint:disable=unused-argument + """ + Given the typical *ffi* and *lib* arguments, and a subclass of :class:`AbstractCallbacks` + in *callbacks_class*, set up the ``def_extern`` Python callbacks from C + into an instance of *callbacks_class*. + + :param tuple extras: If given, this is a sequence of ``(name, error_function)`` + additional callbacks to register. Each *name* is an attribute of + the *callbacks_class* instance. (Each element cas also be just a *name*.) + :return: The *callbacks_class* instance. This object must be kept alive, + typically at module scope. + """ + # callbacks keeps these cdata objects alive at the python level + callbacks = callbacks_class(ffi) + extras = [extra if len(extra) == 2 else (extra, None) for extra in extras] + extras = tuple((getattr(callbacks, name), error) for name, error in extras) + for (func, error_func) in ( + (callbacks.python_callback, None), + (callbacks.python_handle_error, None), + (callbacks.python_stop, None), + (callbacks.python_check_callback, callbacks.check_callback_onerror), + (callbacks.python_prepare_callback, callbacks.check_callback_onerror) + ) + extras: + # The name of the callback function matches the 'extern Python' declaration. + error_func = error_func or callbacks.unhandled_onerror + callback = ffi.def_extern(onerror=error_func)(func) + # keep alive the cdata + # (def_extern returns the original function, and it requests that + # the function be "global", so maybe it keeps a hard reference to it somewhere now + # unlike ffi.callback(), and we don't need to do this?) + callbacks.callbacks.append(callback) + + # At this point, the library C variable (static function, actually) + # is filled in. + + return callbacks + + + +basestring = (bytes, str) +integer_types = (int,) + + +_NOARGS = () + + +class AbstractLoop(object): + # pylint:disable=too-many-public-methods,too-many-instance-attributes + + # How many callbacks we should run between checking against the + # switch interval. + CALLBACK_CHECK_COUNT = 50 + + error_handler = None + + _CHECK_POINTER = None + + _TIMER_POINTER = None + _TIMER_CALLBACK_SIG = None + + _PREPARE_POINTER = None + + starting_timer_may_update_loop_time = False + + # Subclasses should set this in __init__ to reflect + # whether they were the default loop. + _default = None + + _keepaliveset = _DiscardedSet() + _threadsafe_async = None + + def __init__(self, ffi, lib, watchers, flags=None, default=None): + self._ffi = ffi + self._lib = lib + self._ptr = None + self._handle_to_self = self._ffi.new_handle(self) # XXX: Reference cycle? + self._watchers = watchers + self._in_callback = False + self._callbacks = deque() + # Stores python watcher objects while they are started + self._keepaliveset = set() + self._init_loop_and_aux_watchers(flags, default) + + def _init_loop_and_aux_watchers(self, flags=None, default=None): + self._ptr = self._init_loop(flags, default) + + # self._check is a watcher that runs in each iteration of the + # mainloop, just after the blocking call. It's point is to handle + # signals. It doesn't run watchers or callbacks, it just exists to give + # CFFI a chance to raise signal exceptions so we can handle them. + self._check = self._ffi.new(self._CHECK_POINTER) + self._check.data = self._handle_to_self + self._init_and_start_check() + + # self._prepare is a watcher that runs in each iteration of the mainloop, + # just before the blocking call. It's where we run deferred callbacks + # from self.run_callback. This cooperates with _setup_for_run_callback() + # to schedule self._timer0 if needed. + self._prepare = self._ffi.new(self._PREPARE_POINTER) + self._prepare.data = self._handle_to_self + self._init_and_start_prepare() + + # A timer we start and stop on demand. If we have callbacks, + # too many to run in one iteration of _run_callbacks, we turn this + # on so as to have the next iteration of the run loop return to us + # as quickly as possible. + # TODO: There may be a more efficient way to do this using ev_timer_again; + # see the "ev_timer" section of the ev manpage (http://linux.die.net/man/3/ev) + # Alternatively, setting the ev maximum block time may also work. + self._timer0 = self._ffi.new(self._TIMER_POINTER) + self._timer0.data = self._handle_to_self + self._init_callback_timer() + + self._threadsafe_async = self.async_(ref=False) + # No need to do anything with this on ``fork()``, both libev and libuv + # take care of creating a new pipe in their respective ``loop_fork()`` methods. + self._threadsafe_async.start(lambda: None) + # TODO: We may be able to do something nicer and use the existing python_callback + # combined with onerror and the class check/timer/prepare to simplify things + # and unify our handling + + def _init_loop(self, flags, default): + """ + Called by __init__ to create or find the loop. The return value + is assigned to self._ptr. + """ + raise NotImplementedError() + + def _init_and_start_check(self): + raise NotImplementedError() + + def _init_and_start_prepare(self): + raise NotImplementedError() + + def _init_callback_timer(self): + raise NotImplementedError() + + def _stop_callback_timer(self): + raise NotImplementedError() + + def _start_callback_timer(self): + raise NotImplementedError() + + def _check_callback_handle_error(self, t, v, tb): + self.handle_error(None, t, v, tb) + + def _run_callbacks(self): # pylint:disable=too-many-branches + # When we're running callbacks, its safe for timers to + # update the notion of the current time (because if we're here, + # we're not running in a timer callback that may let other timers + # run; this is mostly an issue for libuv). + + # That's actually a bit of a lie: on libev, self._timer0 really is + # a timer, and so sometimes this is running in a timer callback, not + # a prepare callback. But that's OK, libev doesn't suffer from cascading + # timer expiration and its safe to update the loop time at any + # moment there. + self.starting_timer_may_update_loop_time = True + try: + count = self.CALLBACK_CHECK_COUNT + now = self.now() + expiration = now + getswitchinterval() + self._stop_callback_timer() + while self._callbacks: + cb = self._callbacks.popleft() # pylint:disable=assignment-from-no-return + count -= 1 + self.unref() # XXX: libuv doesn't have a global ref count! + callback = cb.callback + cb.callback = None + args = cb.args + if callback is None or args is None: + # it's been stopped + continue + + try: + callback(*args) + except: # pylint:disable=bare-except + # If we allow an exception to escape this method (while we are running the ev callback), + # then CFFI will print the error and libev will continue executing. + # There are two problems with this. The first is that the code after + # the loop won't run. The second is that any remaining callbacks scheduled + # for this loop iteration will be silently dropped; they won't run, but they'll + # also not be *stopped* (which is not a huge deal unless you're looking for + # consistency or checking the boolean/pending status; the loop doesn't keep + # a reference to them like it does to watchers...*UNLESS* the callback itself had + # a reference to a watcher; then I don't know what would happen, it depends on + # the state of the watcher---a leak or crash is not totally inconceivable). + # The Cython implementation in core.ppyx uses gevent_call from callbacks.c + # to run the callback, which uses gevent_handle_error to handle any errors the + # Python callback raises...it unconditionally simply prints any error raised + # by loop.handle_error and clears it, so callback handling continues. + # We take a similar approach (but are extra careful about printing) + try: + self.handle_error(cb, *sys.exc_info()) + except: # pylint:disable=bare-except + try: + print("Exception while handling another error", file=sys.stderr) + traceback.print_exc() + except: # pylint:disable=bare-except + pass # Nothing we can do here + finally: + # NOTE: this must be reset here, because cb.args is used as a flag in + # the callback class so that bool(cb) of a callback that has been run + # becomes False + cb.args = None + + # We've finished running one group of callbacks + # but we may have more, so before looping check our + # switch interval. + if count == 0 and self._callbacks: + count = self.CALLBACK_CHECK_COUNT + self.update_now() + if self.now() >= expiration: + now = 0 + break + + # Update the time before we start going again, if we didn't + # just do so. + if now != 0: + self.update_now() + + if self._callbacks: + self._start_callback_timer() + finally: + self.starting_timer_may_update_loop_time = False + + def _stop_aux_watchers(self): + if self._threadsafe_async is not None: + self._threadsafe_async.close() + self._threadsafe_async = None + + def destroy(self): + ptr = self.ptr + if ptr: + try: + if not self._can_destroy_loop(ptr): + return False + self._stop_aux_watchers() + self._destroy_loop(ptr) + finally: + # not ffi.NULL, we don't want something that can be + # passed to C and crash later. This will create nice friendly + # TypeError from CFFI. + self._ptr = None + del self._handle_to_self + del self._callbacks + del self._keepaliveset + + return True + + def _can_destroy_loop(self, ptr): + raise NotImplementedError() + + def _destroy_loop(self, ptr): + raise NotImplementedError() + + @property + def ptr(self): + # Use this when you need to be sure the pointer is valid. + return self._ptr + + @property + def WatcherType(self): + return self._watchers.watcher + + @property + def MAXPRI(self): + return 1 + + @property + def MINPRI(self): + return 1 + + def _handle_syserr(self, message, errno): + try: + errno = os.strerror(errno) + except: # pylint:disable=bare-except + traceback.print_exc() + try: + message = '%s: %s' % (message, errno) + except: # pylint:disable=bare-except + traceback.print_exc() + self.handle_error(None, SystemError, SystemError(message), None) + + def handle_error(self, context, type, value, tb): + if type is HubDestroyed: + self._callbacks.clear() + self.break_() + return + + handle_error = None + error_handler = self.error_handler + if error_handler is not None: + # we do want to do getattr every time so that setting Hub.handle_error property just works + handle_error = getattr(error_handler, 'handle_error', error_handler) + handle_error(context, type, value, tb) + else: + self._default_handle_error(context, type, value, tb) + + def _default_handle_error(self, context, type, value, tb): # pylint:disable=unused-argument + # note: Hub sets its own error handler so this is not used by gevent + # this is here to make core.loop usable without the rest of gevent + # Should cause the loop to stop running. + traceback.print_exception(type, value, tb) + + + def run(self, nowait=False, once=False): + raise NotImplementedError() + + def reinit(self): + raise NotImplementedError() + + def ref(self): + # XXX: libuv doesn't do it this way + raise NotImplementedError() + + def unref(self): + raise NotImplementedError() + + def break_(self, how=None): + raise NotImplementedError() + + def verify(self): + pass + + def now(self): + raise NotImplementedError() + + def update_now(self): + raise NotImplementedError() + + def update(self): + import warnings + warnings.warn("'update' is deprecated; use 'update_now'", + DeprecationWarning, + stacklevel=2) + self.update_now() + + def __repr__(self): + return '<%s.%s at 0x%x %s>' % ( + self.__class__.__module__, + self.__class__.__name__, + id(self), + self._format() + ) + + @property + def default(self): + return self._default if self.ptr else False + + @property + def iteration(self): + return -1 + + @property + def depth(self): + return -1 + + @property + def backend_int(self): + return 0 + + @property + def backend(self): + return "default" + + @property + def pendingcnt(self): + return 0 + + def io(self, fd, events, ref=True, priority=None): + return self._watchers.io(self, fd, events, ref, priority) + + def closing_fd(self, fd): # pylint:disable=unused-argument + return False + + def timer(self, after, repeat=0.0, ref=True, priority=None): + return self._watchers.timer(self, after, repeat, ref, priority) + + def signal(self, signum, ref=True, priority=None): + return self._watchers.signal(self, signum, ref, priority) + + def idle(self, ref=True, priority=None): + return self._watchers.idle(self, ref, priority) + + def prepare(self, ref=True, priority=None): + return self._watchers.prepare(self, ref, priority) + + def check(self, ref=True, priority=None): + return self._watchers.check(self, ref, priority) + + def fork(self, ref=True, priority=None): + return self._watchers.fork(self, ref, priority) + + def async_(self, ref=True, priority=None): + return self._watchers.async_(self, ref, priority) + + # Provide BWC for those that can use 'async' as is + locals()['async'] = async_ + + if sys.platform != "win32": + + def child(self, pid, trace=0, ref=True): + return self._watchers.child(self, pid, trace, ref) + + def install_sigchld(self): + pass + + def stat(self, path, interval=0.0, ref=True, priority=None): + return self._watchers.stat(self, path, interval, ref, priority) + + def callback(self, priority=None): + return callback(self, priority) + + def _setup_for_run_callback(self): + raise NotImplementedError() + + def run_callback(self, func, *args): + # If we happen to already be running callbacks (inside + # _run_callbacks), this could happen almost immediately, + # without the loop cycling. + cb = callback(func, args) + self._callbacks.append(cb) # Relying on the GIL for this to be threadsafe + self._setup_for_run_callback() # XXX: This may not be threadsafe. + return cb + + def run_callback_threadsafe(self, func, *args): + cb = self.run_callback(func, *args) + self._threadsafe_async.send() + return cb + + def _format(self): + ptr = self.ptr + if not ptr: + return 'destroyed' + msg = "backend=" + self.backend + msg += ' ptr=' + str(ptr) + if self.default: + msg += ' default' + msg += ' pending=%s' % self.pendingcnt + msg += self._format_details() + return msg + + def _format_details(self): + msg = '' + fileno = self.fileno() # pylint:disable=assignment-from-none + try: + activecnt = self.activecnt + except AttributeError: + activecnt = None + if activecnt is not None: + msg += ' ref=' + repr(activecnt) + if fileno is not None: + msg += ' fileno=' + repr(fileno) + #if sigfd is not None and sigfd != -1: + # msg += ' sigfd=' + repr(sigfd) + msg += ' callbacks=' + str(len(self._callbacks)) + return msg + + def fileno(self): + return None + + @property + def activecnt(self): + if not self.ptr: + raise ValueError('operation on destroyed loop') + return 0 diff --git a/venv/lib/python3.9/site-packages/gevent/_ffi/watcher.py b/venv/lib/python3.9/site-packages/gevent/_ffi/watcher.py new file mode 100644 index 0000000..4c372f3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_ffi/watcher.py @@ -0,0 +1,649 @@ +""" +Useful base classes for watchers. The available +watchers will depend on the specific event loop. +""" +# pylint:disable=not-callable +from __future__ import absolute_import, print_function + +import signal as signalmodule +import functools +import warnings + +from gevent._config import config +from gevent._util import LazyOnClass + +try: + from tracemalloc import get_object_traceback + + def tracemalloc(init): + # PYTHONTRACEMALLOC env var controls this on Python 3. + return init +except ImportError: # Python < 3.4 + + if config.trace_malloc: + # Use the same env var to turn this on for Python 2 + import traceback + + class _TB(object): + __slots__ = ('lines',) + + def __init__(self, lines): + # These end in newlines, which we don't want for consistency + self.lines = [x.rstrip() for x in lines] + + def format(self): + return self.lines + + def tracemalloc(init): + @functools.wraps(init) + def traces(self, *args, **kwargs): + init(self, *args, **kwargs) + self._captured_malloc = _TB(traceback.format_stack()) + return traces + + def get_object_traceback(obj): + return obj._captured_malloc + + else: + def get_object_traceback(_obj): + return None + + def tracemalloc(init): + return init + +from gevent._compat import fsencode + +from gevent._ffi import _dbg # pylint:disable=unused-import +from gevent._ffi import GEVENT_DEBUG_LEVEL +from gevent._ffi import DEBUG +from gevent._ffi.loop import GEVENT_CORE_EVENTS +from gevent._ffi.loop import _NOARGS + +ALLOW_WATCHER_DEL = GEVENT_DEBUG_LEVEL >= DEBUG + +__all__ = [ + +] + +try: + ResourceWarning # pylint:disable=used-before-assignment +except NameError: + class ResourceWarning(Warning): + "Python 2 fallback" + +class _NoWatcherResult(int): + + def __repr__(self): + return "" + +_NoWatcherResult = _NoWatcherResult(0) + +def events_to_str(event_field, all_events): + result = [] + for (flag, string) in all_events: + c_flag = flag + if event_field & c_flag: + result.append(string) + event_field &= (~c_flag) + if not event_field: + break + if event_field: + result.append(hex(event_field)) + return '|'.join(result) + + +def not_while_active(func): + @functools.wraps(func) + def nw(self, *args, **kwargs): + if self.active: + raise ValueError("not while active") + func(self, *args, **kwargs) + return nw + +def only_if_watcher(func): + @functools.wraps(func) + def if_w(self): + if self._watcher: + return func(self) + return _NoWatcherResult + return if_w + + +class AbstractWatcherType(type): + """ + Base metaclass for watchers. + + To use, you will: + + - subclass the watcher class defined from this type. + - optionally subclass this type + """ + # pylint:disable=bad-mcs-classmethod-argument + + _FFI = None + _LIB = None + + def __new__(cls, name, bases, cls_dict): + if name != 'watcher' and not cls_dict.get('_watcher_skip_ffi'): + cls._fill_watcher(name, bases, cls_dict) + if '__del__' in cls_dict and not ALLOW_WATCHER_DEL: # pragma: no cover + raise TypeError("CFFI watchers are not allowed to have __del__") + return type.__new__(cls, name, bases, cls_dict) + + @classmethod + def _fill_watcher(cls, name, bases, cls_dict): + # TODO: refactor smaller + # pylint:disable=too-many-locals + if name.endswith('_'): + # Strip trailing _ added to avoid keyword duplications + # e.g., async_ + name = name[:-1] + + def _mro_get(attr, bases, error=True): + for b in bases: + try: + return getattr(b, attr) + except AttributeError: + continue + if error: # pragma: no cover + raise AttributeError(attr) + _watcher_prefix = cls_dict.get('_watcher_prefix') or _mro_get('_watcher_prefix', bases) + + if '_watcher_type' not in cls_dict: + watcher_type = _watcher_prefix + '_' + name + cls_dict['_watcher_type'] = watcher_type + elif not cls_dict['_watcher_type'].startswith(_watcher_prefix): + watcher_type = _watcher_prefix + '_' + cls_dict['_watcher_type'] + cls_dict['_watcher_type'] = watcher_type + + active_name = _watcher_prefix + '_is_active' + + def _watcher_is_active(self): + return getattr(self._LIB, active_name) + + LazyOnClass.lazy(cls_dict, _watcher_is_active) + + watcher_struct_name = cls_dict.get('_watcher_struct_name') + if not watcher_struct_name: + watcher_struct_pattern = (cls_dict.get('_watcher_struct_pattern') + or _mro_get('_watcher_struct_pattern', bases, False) + or 'struct %s') + watcher_struct_name = watcher_struct_pattern % (watcher_type,) + + def _watcher_struct_pointer_type(self): + return self._FFI.typeof(watcher_struct_name + ' *') + + LazyOnClass.lazy(cls_dict, _watcher_struct_pointer_type) + + callback_name = (cls_dict.get('_watcher_callback_name') + or _mro_get('_watcher_callback_name', bases, False) + or '_gevent_generic_callback') + + def _watcher_callback(self): + return self._FFI.addressof(self._LIB, callback_name) + + LazyOnClass.lazy(cls_dict, _watcher_callback) + + def _make_meth(name, watcher_name): + def meth(self): + lib_name = self._watcher_type + '_' + name + return getattr(self._LIB, lib_name) + meth.__name__ = watcher_name + return meth + + for meth_name in 'start', 'stop', 'init': + watcher_name = '_watcher' + '_' + meth_name + if watcher_name not in cls_dict: + LazyOnClass.lazy(cls_dict, _make_meth(meth_name, watcher_name)) + + def new_handle(cls, obj): + return cls._FFI.new_handle(obj) + + def new(cls, kind): + return cls._FFI.new(kind) + +class watcher(metaclass=AbstractWatcherType): + + _callback = None + _args = None + _watcher = None + # self._handle has a reference to self, keeping it alive. + # We must keep self._handle alive for ffi.from_handle() to be + # able to work. We only fill this in when we are started, + # and when we are stopped we destroy it. + # NOTE: This is a GC cycle, so we keep it around for as short + # as possible. + _handle = None + + @tracemalloc + def __init__(self, _loop, ref=True, priority=None, args=_NOARGS): + self.loop = _loop + self.__init_priority = priority + self.__init_args = args + self.__init_ref = ref + self._watcher_full_init() + + + def _watcher_full_init(self): + priority = self.__init_priority + ref = self.__init_ref + args = self.__init_args + + self._watcher_create(ref) + + if priority is not None: + self._watcher_ffi_set_priority(priority) + + try: + self._watcher_ffi_init(args) + except: + # Let these be GC'd immediately. + # If we keep them around to when *we* are gc'd, + # they're probably invalid, meaning any native calls + # we do then to close() them are likely to fail + self._watcher = None + raise + self._watcher_ffi_set_init_ref(ref) + + @classmethod + def _watcher_ffi_close(cls, ffi_watcher): + pass + + def _watcher_create(self, ref): # pylint:disable=unused-argument + self._watcher = self._watcher_new() + + def _watcher_new(self): + return type(self).new(self._watcher_struct_pointer_type) # pylint:disable=no-member + + def _watcher_ffi_set_init_ref(self, ref): + pass + + def _watcher_ffi_set_priority(self, priority): + pass + + def _watcher_ffi_init(self, args): + raise NotImplementedError() + + def _watcher_ffi_start(self): + raise NotImplementedError() + + def _watcher_ffi_stop(self): + self._watcher_stop(self.loop.ptr, self._watcher) + + def _watcher_ffi_ref(self): + raise NotImplementedError() + + def _watcher_ffi_unref(self): + raise NotImplementedError() + + def _watcher_ffi_start_unref(self): + # While a watcher is active, we don't keep it + # referenced. This allows a timer, for example, to be started, + # and still allow the loop to end if there is nothing + # else to do. see test__order.TestSleep0 for one example. + self._watcher_ffi_unref() + + def _watcher_ffi_stop_ref(self): + self._watcher_ffi_ref() + + # A string identifying the type of libev object we watch, e.g., 'ev_io' + # This should be a class attribute. + _watcher_type = None + # A class attribute that is the callback on the libev object that init's the C struct, + # e.g., libev.ev_io_init. If None, will be set by _init_subclasses. + _watcher_init = None + # A class attribute that is the callback on the libev object that starts the C watcher, + # e.g., libev.ev_io_start. If None, will be set by _init_subclasses. + _watcher_start = None + # A class attribute that is the callback on the libev object that stops the C watcher, + # e.g., libev.ev_io_stop. If None, will be set by _init_subclasses. + _watcher_stop = None + # A cffi ctype object identifying the struct pointer we create. + # This is a class attribute set based on the _watcher_type + _watcher_struct_pointer_type = None + # The attribute of the libev object identifying the custom + # callback function for this type of watcher. This is a class + # attribute set based on the _watcher_type in _init_subclasses. + _watcher_callback = None + _watcher_is_active = None + + def close(self): + if self._watcher is None: + return + + self.stop() + _watcher = self._watcher + self._watcher = None + self._watcher_set_data(_watcher, self._FFI.NULL) # pylint: disable=no-member + self._watcher_ffi_close(_watcher) + self.loop = None + + def _watcher_set_data(self, the_watcher, data): + # This abstraction exists for the sole benefit of + # libuv.watcher.stat, which "subclasses" uv_handle_t. + # Can we do something to avoid this extra function call? + the_watcher.data = data + return data + + def __enter__(self): + return self + + def __exit__(self, t, v, tb): + self.close() + + if ALLOW_WATCHER_DEL: + def __del__(self): + if self._watcher: + tb = get_object_traceback(self) + tb_msg = '' + if tb is not None: + tb_msg = '\n'.join(tb.format()) + tb_msg = '\nTraceback:\n' + tb_msg + warnings.warn("Failed to close watcher %r%s" % (self, tb_msg), + ResourceWarning) + + # may fail if __init__ did; will be harmlessly printed + self.close() + + __in_repr = False + + def __repr__(self): + basic = "<%s at 0x%x" % (self.__class__.__name__, id(self)) + if self.__in_repr: + return basic + '>' + # Running child watchers have been seen to have a + # recursive repr in ``self.args``, thanks to ``gevent.os.fork_and_watch`` + # passing the watcher as an argument to its callback. + self.__in_repr = True + try: + result = '%s%s' % (basic, self._format()) + if self.pending: + result += " pending" + if self.callback is not None: + fself = getattr(self.callback, '__self__', None) + if fself is self: + result += " callback=" % (self.callback.__name__) + else: + result += " callback=%r" % (self.callback, ) + if self.args is not None: + result += " args=%r" % (self.args, ) + if self.callback is None and self.args is None: + result += " stopped" + result += " watcher=%s" % (self._watcher) + result += " handle=%s" % (self._watcher_handle) + result += " ref=%s" % (self.ref) + return result + ">" + finally: + self.__in_repr = False + + @property + def _watcher_handle(self): + if self._watcher: + return self._watcher.data + + def _format(self): + return '' + + @property + def ref(self): + raise NotImplementedError() + + def _get_callback(self): + return self._callback if '_callback' in self.__dict__ else None + + def _set_callback(self, cb): + if not callable(cb) and cb is not None: + raise TypeError("Expected callable, not %r" % (cb, )) + if cb is None: + if '_callback' in self.__dict__: + del self._callback + else: + self._callback = cb + callback = property(_get_callback, _set_callback) + + def _get_args(self): + return self._args + + def _set_args(self, args): + if not isinstance(args, tuple) and args is not None: + raise TypeError("args must be a tuple or None") + if args is None: + if '_args' in self.__dict__: + del self._args + else: + self._args = args + + args = property(_get_args, _set_args) + + def start(self, callback, *args): + if callback is None: + raise TypeError('callback must be callable, not None') + self.callback = callback + self.args = args or _NOARGS + self.loop._keepaliveset.add(self) + self._handle = self._watcher_set_data(self._watcher, type(self).new_handle(self)) # pylint:disable=no-member + self._watcher_ffi_start() + self._watcher_ffi_start_unref() + + def stop(self): + if self.callback is None: + assert self.loop is None or self not in self.loop._keepaliveset + return + self.callback = None + # Only after setting the signal to make this idempotent do + # we move ahead. + self._watcher_ffi_stop_ref() + self._watcher_ffi_stop() + self.loop._keepaliveset.discard(self) + self._handle = None + self._watcher_set_data(self._watcher, self._FFI.NULL) # pylint:disable=no-member + + self.args = None + + def _get_priority(self): + return None + + @not_while_active + def _set_priority(self, priority): + pass + + priority = property(_get_priority, _set_priority) + + + @property + def active(self): + if self._watcher is not None and self._watcher_is_active(self._watcher): + return True + return False + + @property + def pending(self): + return False + + + +class IoMixin(object): + + EVENT_MASK = 0 + + def __init__(self, loop, fd, events, ref=True, priority=None, _args=None): + # Win32 only works with sockets, and only when we use libuv, because + # we don't use _open_osfhandle. See libuv/watchers.py:io for a description. + self._validate_fd(fd) + + if events & ~self.EVENT_MASK: + raise ValueError('illegal event mask: %r' % events) + self._fd = fd + super(IoMixin, self).__init__(loop, ref=ref, priority=priority, + args=_args or (fd, events)) + + @classmethod + def _validate_fd(cls, fd): + if fd < 0: + raise ValueError('fd must be non-negative: %r' % fd) + + def start(self, callback, *args, **kwargs): + args = args or _NOARGS + if kwargs.get('pass_events'): + args = (GEVENT_CORE_EVENTS, ) + args + super(IoMixin, self).start(callback, *args) + + def _format(self): + return ' fd=%d' % self._fd + +class TimerMixin(object): + _watcher_type = 'timer' + + def __init__(self, loop, after=0.0, repeat=0.0, ref=True, priority=None): + if repeat < 0.0: + raise ValueError("repeat must be positive or zero: %r" % repeat) + self._after = after + self._repeat = repeat + super(TimerMixin, self).__init__(loop, ref=ref, priority=priority, args=(after, repeat)) + + def start(self, callback, *args, **kw): + update = kw.get("update", self.loop.starting_timer_may_update_loop_time) + if update: + # Quoth the libev doc: "This is a costly operation and is + # usually done automatically within ev_run(). This + # function is rarely useful, but when some event callback + # runs for a very long time without entering the event + # loop, updating libev's idea of the current time is a + # good idea." + + # 1.3 changed the default for this to False *unless* the loop is + # running a callback; see libuv for details. Note that + # starting Timeout objects still sets this to true. + + self.loop.update_now() + super(TimerMixin, self).start(callback, *args) + + def again(self, callback, *args, **kw): + raise NotImplementedError() + + +class SignalMixin(object): + _watcher_type = 'signal' + + def __init__(self, loop, signalnum, ref=True, priority=None): + if signalnum < 1 or signalnum >= signalmodule.NSIG: + raise ValueError('illegal signal number: %r' % signalnum) + # still possible to crash on one of libev's asserts: + # 1) "libev: ev_signal_start called with illegal signal number" + # EV_NSIG might be different from signal.NSIG on some platforms + # 2) "libev: a signal must not be attached to two different loops" + # we probably could check that in LIBEV_EMBED mode, but not in general + self._signalnum = signalnum + super(SignalMixin, self).__init__(loop, ref=ref, priority=priority, args=(signalnum, )) + + +class IdleMixin(object): + _watcher_type = 'idle' + + +class PrepareMixin(object): + _watcher_type = 'prepare' + + +class CheckMixin(object): + _watcher_type = 'check' + + +class ForkMixin(object): + _watcher_type = 'fork' + + +class AsyncMixin(object): + _watcher_type = 'async' + + def send(self): + raise NotImplementedError() + + def send_ignoring_arg(self, _ignored): + """ + Calling compatibility with ``greenlet.switch(arg)`` + as used by waiters that have ``rawlink``. + + This is an advanced method, not usually needed. + """ + return self.send() + + @property + def pending(self): + raise NotImplementedError() + + +class ChildMixin(object): + + # hack for libuv which doesn't extend watcher + _CALL_SUPER_INIT = True + + def __init__(self, loop, pid, trace=0, ref=True): + if not loop.default: + raise TypeError('child watchers are only available on the default loop') + loop.install_sigchld() + self._pid = pid + if self._CALL_SUPER_INIT: + super(ChildMixin, self).__init__(loop, ref=ref, args=(pid, trace)) + + def _format(self): + return ' pid=%r rstatus=%r' % (self.pid, self.rstatus) + + @property + def pid(self): + return self._pid + + @property + def rpid(self): + # The received pid, the result of the waitpid() call. + return self._rpid + + _rpid = None + _rstatus = 0 + + @property + def rstatus(self): + return self._rstatus + +class StatMixin(object): + + @staticmethod + def _encode_path(path): + return fsencode(path) + + def __init__(self, _loop, path, interval=0.0, ref=True, priority=None): + # Store the encoded path in the same attribute that corecext does + self._paths = self._encode_path(path) + + # Keep the original path to avoid re-encoding, especially on Python 3 + self._path = path + + # Although CFFI would automatically convert a bytes object into a char* when + # calling ev_stat_init(..., char*, ...), on PyPy the char* pointer is not + # guaranteed to live past the function call. On CPython, only with a constant/interned + # bytes object is the pointer guaranteed to last path the function call. (And since + # Python 3 is pretty much guaranteed to produce a newly-encoded bytes object above, thats + # rarely the case). Therefore, we must keep a reference to the produced cdata object + # so that the struct ev_stat_watcher's `path` pointer doesn't become invalid/deallocated + self._cpath = self._FFI.new('char[]', self._paths) + + self._interval = interval + super(StatMixin, self).__init__(_loop, ref=ref, priority=priority, + args=(self._cpath, + interval)) + + @property + def path(self): + return self._path + + @property + def attr(self): + raise NotImplementedError + + @property + def prev(self): + raise NotImplementedError + + @property + def interval(self): + return self._interval diff --git a/venv/lib/python3.9/site-packages/gevent/_fileobjectcommon.py b/venv/lib/python3.9/site-packages/gevent/_fileobjectcommon.py new file mode 100644 index 0000000..0aa2d65 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_fileobjectcommon.py @@ -0,0 +1,697 @@ +""" +gevent internals. +""" +from __future__ import absolute_import, print_function, division + +try: + from errno import EBADF +except ImportError: + EBADF = 9 + +import io +import functools +import sys +import os + +from gevent.hub import _get_hub_noargs as get_hub +from gevent._compat import integer_types +from gevent._compat import reraise +from gevent._compat import fspath +from gevent.lock import Semaphore, DummySemaphore + +class cancel_wait_ex(IOError): + + def __init__(self): + IOError.__init__( + self, + EBADF, 'File descriptor was closed in another greenlet') + +class FileObjectClosed(IOError): + + def __init__(self): + IOError.__init__( + self, + EBADF, 'Bad file descriptor (FileObject was closed)') + +class UniversalNewlineBytesWrapper(io.TextIOWrapper): + """ + Uses TextWrapper to decode universal newlines, but returns the + results as bytes. + + This is for Python 2 where the 'rU' mode did that. + """ + mode = None + def __init__(self, fobj, line_buffering): + # latin-1 has the ability to round-trip arbitrary bytes. + io.TextIOWrapper.__init__(self, fobj, encoding='latin-1', + newline=None, + line_buffering=line_buffering) + + def read(self, *args, **kwargs): + result = io.TextIOWrapper.read(self, *args, **kwargs) + return result.encode('latin-1') + + def readline(self, limit=-1): + result = io.TextIOWrapper.readline(self, limit) + return result.encode('latin-1') + + def __iter__(self): + # readlines() is implemented in terms of __iter__ + # and TextIOWrapper.__iter__ checks that readline returns + # a unicode object, which we don't, so we override + return self + + def __next__(self): + line = self.readline() + if not line: + raise StopIteration + return line + + next = __next__ + + +class FlushingBufferedWriter(io.BufferedWriter): + + def write(self, b): + ret = io.BufferedWriter.write(self, b) + self.flush() + return ret + + +class WriteallMixin(object): + + def writeall(self, value): + """ + Similar to :meth:`socket.socket.sendall`, ensures that all the contents of + *value* have been written (though not necessarily flushed) before returning. + + Returns the length of *value*. + + .. versionadded:: 20.12.0 + """ + # Do we need to play the same get_memory games we do with sockets? + # And what about chunking for large values? See _socketcommon.py + write = super(WriteallMixin, self).write + + total = len(value) + while value: + l = len(value) + w = write(value) + if w == l: + break + value = value[w:] + return total + + +class FileIO(io.FileIO): + """A subclass that we can dynamically assign __class__ for.""" + __slots__ = () + + +class WriteIsWriteallMixin(WriteallMixin): + + def write(self, value): + return self.writeall(value) + + +class WriteallFileIO(WriteIsWriteallMixin, io.FileIO): + pass + + +class OpenDescriptor(object): # pylint:disable=too-many-instance-attributes + """ + Interprets the arguments to `open`. Internal use only. + + Originally based on code in the stdlib's _pyio.py (Python implementation of + the :mod:`io` module), but modified for gevent: + + - Native strings are returned on Python 2 when neither + 'b' nor 't' are in the mode string and no encoding is specified. + - Universal newlines work in that mode. + - Allows externally unbuffered text IO. + + :keyword bool atomic_write: If true, then if the opened, wrapped, stream + is unbuffered (meaning that ``write`` can produce short writes and the return + value needs to be checked), then the implementation will be adjusted so that + ``write`` behaves like Python 2 on a built-in file object and writes the + entire value. Only set this on Python 2; the only intended user is + :class:`gevent.subprocess.Popen`. + """ + + @staticmethod + def _collapse_arg(pref_name, preferred_val, old_name, old_val, default): + # We could play tricks with the callers ``locals()`` to avoid having to specify + # the name (which we only use for error handling) but ``locals()`` may be slow and + # inhibit JIT (on PyPy), so we just write it out long hand. + if preferred_val is not None and old_val is not None: + raise TypeError("Cannot specify both %s=%s and %s=%s" % ( + pref_name, preferred_val, + old_name, old_val + )) + if preferred_val is None and old_val is None: + return default + return preferred_val if preferred_val is not None else old_val + + def __init__(self, fobj, mode='r', bufsize=None, close=None, + encoding=None, errors=None, newline=None, + buffering=None, closefd=None, + atomic_write=False): + # Based on code in the stdlib's _pyio.py from 3.8. + # pylint:disable=too-many-locals,too-many-branches,too-many-statements + + closefd = self._collapse_arg('closefd', closefd, 'close', close, True) + del close + buffering = self._collapse_arg('buffering', buffering, 'bufsize', bufsize, -1) + del bufsize + + if not hasattr(fobj, 'fileno'): + if not isinstance(fobj, integer_types): + # Not a fd. Support PathLike on Python 2 and Python <= 3.5. + fobj = fspath(fobj) + if not isinstance(fobj, (str, bytes) + integer_types): # pragma: no cover + raise TypeError("invalid file: %r" % fobj) + if isinstance(fobj, (str, bytes)): + closefd = True + + if not isinstance(mode, str): + raise TypeError("invalid mode: %r" % mode) + if not isinstance(buffering, integer_types): + raise TypeError("invalid buffering: %r" % buffering) + if encoding is not None and not isinstance(encoding, str): + raise TypeError("invalid encoding: %r" % encoding) + if errors is not None and not isinstance(errors, str): + raise TypeError("invalid errors: %r" % errors) + + modes = set(mode) + if modes - set("axrwb+tU") or len(mode) > len(modes): + raise ValueError("invalid mode: %r" % mode) + + creating = "x" in modes + reading = "r" in modes + writing = "w" in modes + appending = "a" in modes + updating = "+" in modes + text = "t" in modes + binary = "b" in modes + universal = 'U' in modes + + can_write = creating or writing or appending or updating + + if universal: + if can_write: + raise ValueError("mode U cannot be combined with 'x', 'w', 'a', or '+'") + # Just because the stdlib deprecates this, no need for us to do so as well. + # Especially not while we still support Python 2. + # import warnings + # warnings.warn("'U' mode is deprecated", + # DeprecationWarning, 4) + reading = True + if text and binary: + raise ValueError("can't have text and binary mode at once") + if creating + reading + writing + appending > 1: + raise ValueError("can't have read/write/append mode at once") + if not (creating or reading or writing or appending): + raise ValueError("must have exactly one of read/write/append mode") + if binary and encoding is not None: + raise ValueError("binary mode doesn't take an encoding argument") + if binary and errors is not None: + raise ValueError("binary mode doesn't take an errors argument") + if binary and newline is not None: + raise ValueError("binary mode doesn't take a newline argument") + if binary and buffering == 1: + import warnings + warnings.warn("line buffering (buffering=1) isn't supported in binary " + "mode, the default buffer size will be used", + RuntimeWarning, 4) + + self._fobj = fobj + self.fileio_mode = ( + (creating and "x" or "") + + (reading and "r" or "") + + (writing and "w" or "") + + (appending and "a" or "") + + (updating and "+" or "") + ) + self.mode = self.fileio_mode + ('t' if text else '') + ('b' if binary else '') + + self.creating = creating + self.reading = reading + self.writing = writing + self.appending = appending + self.updating = updating + self.text = text + self.binary = binary + self.can_write = can_write + self.can_read = reading or updating + self.native = ( + not self.text and not self.binary # Neither t nor b given. + and not encoding and not errors # And no encoding or error handling either. + ) + self.universal = universal + + self.buffering = buffering + self.encoding = encoding + self.errors = errors + self.newline = newline + self.closefd = closefd + self.atomic_write = atomic_write + + default_buffer_size = io.DEFAULT_BUFFER_SIZE + + _opened = None + _opened_raw = None + + def is_fd(self): + return isinstance(self._fobj, integer_types) + + def opened(self): + """ + Return the :meth:`wrapped` file object. + """ + if self._opened is None: + raw = self.opened_raw() + try: + self._opened = self.__wrapped(raw) + except: + # XXX: This might be a bug? Could we wind up closing + # something we shouldn't close? + raw.close() + raise + return self._opened + + def _raw_object_is_new(self, raw): + return self._fobj is not raw + + def opened_raw(self): + if self._opened_raw is None: + self._opened_raw = self._do_open_raw() + return self._opened_raw + + def _do_open_raw(self): + if hasattr(self._fobj, 'fileno'): + return self._fobj + # io.FileIO doesn't allow assigning to its __class__, + # and we can't know for sure here whether we need the atomic write() + # method or not (it depends on the layers on top of us), + # so we use a subclass that *does* allow assigning. + return FileIO(self._fobj, self.fileio_mode, self.closefd) + + @staticmethod + def is_buffered(stream): + return ( + # buffering happens internally in the text codecs + isinstance(stream, (io.BufferedIOBase, io.TextIOBase)) + or (hasattr(stream, 'buffer') and stream.buffer is not None) + ) + + @classmethod + def buffer_size_for_stream(cls, stream): + result = cls.default_buffer_size + try: + bs = os.fstat(stream.fileno()).st_blksize + except (OSError, AttributeError): + pass + else: + if bs > 1: + result = bs + return result + + def __buffered(self, stream, buffering): + if self.updating: + Buffer = io.BufferedRandom + elif self.creating or self.writing or self.appending: + Buffer = io.BufferedWriter + elif self.reading: + Buffer = io.BufferedReader + else: # prgama: no cover + raise ValueError("unknown mode: %r" % self.mode) + + try: + result = Buffer(stream, buffering) + except AttributeError: + # Python 2 file() objects don't have the readable/writable + # attributes. But they handle their own buffering. + result = stream + + return result + + def _make_atomic_write(self, result, raw): + # The idea was to swizzle the class with one that defines + # write() to call writeall(). This avoids setting any + # attribute on the return object, avoids an additional layer + # of proxying, and avoids any reference cycles (if setting a + # method on the object). + # + # However, this is not possible with the built-in io classes + # (static types defined in C cannot have __class__ assigned). + # Fortunately, we need this only for the specific case of + # opening a file descriptor (subprocess.py) on Python 2, in + # which we fully control the types involved. + # + # So rather than attempt that, we only implement exactly what we need. + if result is not raw or self._raw_object_is_new(raw): + if result.__class__ is FileIO: + result.__class__ = WriteallFileIO + else: # pragma: no cover + raise NotImplementedError( + "Don't know how to make %s have atomic write. " + "Please open a gevent issue with your use-case." % ( + result + ) + ) + return result + + def __wrapped(self, raw): + """ + Wraps the raw IO object (`RawIOBase` or `io.TextIOBase`) in + buffers, text decoding, and newline handling. + """ + if self.binary and isinstance(raw, io.TextIOBase): + # Can't do it. The TextIO object will have its own buffer, and + # trying to read from the raw stream or the buffer without going through + # the TextIO object is likely to lead to problems with the codec. + raise ValueError("Unable to perform binary IO on top of text IO stream") + + result = raw + buffering = self.buffering + + line_buffering = False + if buffering == 1 or buffering < 0 and raw.isatty(): + buffering = -1 + line_buffering = True + if buffering < 0: + buffering = self.buffer_size_for_stream(result) + + if buffering < 0: # pragma: no cover + raise ValueError("invalid buffering size") + + if buffering != 0 and not self.is_buffered(result): + # Need to wrap our own buffering around it. If it + # is already buffered, don't do so. + result = self.__buffered(result, buffering) + + if not self.binary: + # Either native or text at this point. + # Python 2 and text mode, or Python 3 and either text or native (both are the same) + if not isinstance(raw, io.TextIOBase): + # Avoid double-wrapping a TextIOBase in another TextIOWrapper. + # That tends not to work. See https://github.com/gevent/gevent/issues/1542 + result = io.TextIOWrapper(result, self.encoding, self.errors, self.newline, + line_buffering) + + if result is not raw or self._raw_object_is_new(raw): + # Set the mode, if possible, but only if we created a new + # object. + try: + result.mode = self.mode + except (AttributeError, TypeError): + # AttributeError: No such attribute + # TypeError: Readonly attribute (py2) + pass + + if ( + self.atomic_write + and not self.is_buffered(result) + and not isinstance(result, WriteIsWriteallMixin) + ): + # Let subclasses have a say in how they make this atomic, and + # whether or not they do so even if we're actually returning the raw object. + result = self._make_atomic_write(result, raw) + + return result + + +class _ClosedIO(object): + # Used for FileObjectBase._io when FOB.close() + # is called. Lets us drop references to ``_io`` + # for GC/resource cleanup reasons, but keeps some useful + # information around. + __slots__ = ('name',) + + def __init__(self, io_obj): + try: + self.name = io_obj.name + except AttributeError: + pass + + def __getattr__(self, name): + if name == 'name': + # We didn't set it in __init__ because there wasn't one + raise AttributeError + raise FileObjectClosed + + def __bool__(self): + return False + __nonzero__ = __bool__ + + +class FileObjectBase(object): + """ + Internal base class to ensure a level of consistency + between :class:`~.FileObjectPosix`, :class:`~.FileObjectThread` + and :class:`~.FileObjectBlock`. + """ + + # List of methods we delegate to the wrapping IO object, if they + # implement them and we do not. + _delegate_methods = ( + # General methods + 'flush', + 'fileno', + 'writable', + 'readable', + 'seek', + 'seekable', + 'tell', + + # Read + 'read', + 'readline', + 'readlines', + 'read1', + 'readinto', + + # Write. + # Note that we do not extend WriteallMixin, + # so writeall will be copied, if it exists, and + # wrapped. + 'write', + 'writeall', + 'writelines', + 'truncate', + ) + + + _io = None + + def __init__(self, descriptor): + # type: (OpenDescriptor) -> None + self._io = descriptor.opened() + # We don't actually use this property ourself, but we save it (and + # pass it along) for compatibility. + self._close = descriptor.closefd + self._do_delegate_methods() + + + io = property(lambda s: s._io, + # Historically we either hand-wrote all the delegation methods + # to use self.io, or we simply used __getattr__ to look them up at + # runtime. This meant people could change the io attribute on the fly + # and it would mostly work (subprocess.py used to do that). We don't recommend + # that, but we still support it. + lambda s, nv: setattr(s, '_io', nv) or s._do_delegate_methods()) + + def _do_delegate_methods(self): + for meth_name in self._delegate_methods: + meth = getattr(self._io, meth_name, None) + implemented_by_class = hasattr(type(self), meth_name) + if meth and not implemented_by_class: + setattr(self, meth_name, self._wrap_method(meth)) + elif hasattr(self, meth_name) and not implemented_by_class: + delattr(self, meth_name) + + def _wrap_method(self, method): + """ + Wrap a method we're copying into our dictionary from the underlying + io object to do something special or different, if necessary. + """ + return method + + @property + def closed(self): + """True if the file is closed""" + return isinstance(self._io, _ClosedIO) + + def close(self): + if isinstance(self._io, _ClosedIO): + return + + fobj = self._io + self._io = _ClosedIO(self._io) + try: + self._do_close(fobj, self._close) + finally: + fobj = None + # Remove delegate methods to drop remaining references to + # _io. + d = self.__dict__ + for meth_name in self._delegate_methods: + d.pop(meth_name, None) + + def _do_close(self, fobj, closefd): + raise NotImplementedError() + + def __getattr__(self, name): + return getattr(self._io, name) + + def __repr__(self): + return '<%s at 0x%x %s_fobj=%r%s>' % ( + self.__class__.__name__, + id(self), + 'closed' if self.closed else '', + self.io, + self._extra_repr() + ) + + def _extra_repr(self): + return '' + + def __enter__(self): + return self + + def __exit__(self, *args): + self.close() + + def __iter__(self): + return self + + def __next__(self): + line = self.readline() + if not line: + raise StopIteration + return line + + next = __next__ + + def __bool__(self): + return True + + __nonzero__ = __bool__ + + +class FileObjectBlock(FileObjectBase): + """ + FileObjectBlock() + + A simple synchronous wrapper around a file object. + + Adds no concurrency or gevent compatibility. + """ + + def __init__(self, fobj, *args, **kwargs): + descriptor = OpenDescriptor(fobj, *args, **kwargs) + FileObjectBase.__init__(self, descriptor) + + def _do_close(self, fobj, closefd): + fobj.close() + + +class FileObjectThread(FileObjectBase): + """ + FileObjectThread() + + A file-like object wrapping another file-like object, performing all blocking + operations on that object in a background thread. + + .. caution:: + Attempting to change the threadpool or lock of an existing FileObjectThread + has undefined consequences. + + .. versionchanged:: 1.1b1 + The file object is closed using the threadpool. Note that whether or + not this action is synchronous or asynchronous is not documented. + """ + + def __init__(self, *args, **kwargs): + """ + :keyword bool lock: If True (the default) then all operations will + be performed one-by-one. Note that this does not guarantee that, if using + this file object from multiple threads/greenlets, operations will be performed + in any particular order, only that no two operations will be attempted at the + same time. You can also pass your own :class:`gevent.lock.Semaphore` to synchronize + file operations with an external resource. + :keyword bool closefd: If True (the default) then when this object is closed, + the underlying object is closed as well. If *fobj* is a path, then + *closefd* must be True. + """ + lock = kwargs.pop('lock', True) + threadpool = kwargs.pop('threadpool', None) + descriptor = OpenDescriptor(*args, **kwargs) + + self.threadpool = threadpool or get_hub().threadpool + self.lock = lock + if self.lock is True: + self.lock = Semaphore() + elif not self.lock: + self.lock = DummySemaphore() + if not hasattr(self.lock, '__enter__'): + raise TypeError('Expected a Semaphore or boolean, got %r' % type(self.lock)) + + self.__io_holder = [descriptor.opened()] # signal for _wrap_method + FileObjectBase.__init__(self, descriptor) + + def _do_close(self, fobj, closefd): + self.__io_holder[0] = None # for _wrap_method + try: + with self.lock: + self.threadpool.apply(fobj.flush) + finally: + if closefd: + # Note that we're not taking the lock; older code + # did fobj.close() without going through the threadpool at all, + # so acquiring the lock could potentially introduce deadlocks + # that weren't present before. Avoiding the lock doesn't make + # the existing race condition any worse. + # We wrap the close in an exception handler and re-raise directly + # to avoid the (common, expected) IOError from being logged by the pool + def close(_fobj=fobj): + try: + _fobj.close() + except: # pylint:disable=bare-except + # pylint:disable-next=return-in-finally + return sys.exc_info() + finally: + _fobj = None + del fobj + + exc_info = self.threadpool.apply(close) + del close + + if exc_info: + reraise(*exc_info) + + def _do_delegate_methods(self): + FileObjectBase._do_delegate_methods(self) + self.__io_holder[0] = self._io + + def _extra_repr(self): + return ' threadpool=%r' % (self.threadpool,) + + def _wrap_method(self, method): + # NOTE: We are careful to avoid introducing a refcycle + # within self. Our wrapper cannot refer to self. + io_holder = self.__io_holder + lock = self.lock + threadpool = self.threadpool + + @functools.wraps(method) + def thread_method(*args, **kwargs): + if io_holder[0] is None: + # This is different than FileObjectPosix, etc, + # because we want to save the expensive trip through + # the threadpool. + raise FileObjectClosed + with lock: + return threadpool.apply(method, args, kwargs) + + return thread_method diff --git a/venv/lib/python3.9/site-packages/gevent/_fileobjectposix.py b/venv/lib/python3.9/site-packages/gevent/_fileobjectposix.py new file mode 100644 index 0000000..2087a6f --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_fileobjectposix.py @@ -0,0 +1,344 @@ +from __future__ import absolute_import +from __future__ import print_function +import os +import sys + + +from io import BytesIO +from io import DEFAULT_BUFFER_SIZE +from io import FileIO +from io import RawIOBase +from io import UnsupportedOperation + +from gevent._compat import reraise +from gevent._fileobjectcommon import cancel_wait_ex +from gevent._fileobjectcommon import FileObjectBase +from gevent._fileobjectcommon import OpenDescriptor +from gevent._fileobjectcommon import WriteIsWriteallMixin +from gevent._hub_primitives import wait_on_watcher +from gevent.hub import get_hub +from gevent.os import _read +from gevent.os import _write +from gevent.os import _close +from gevent.os import ignored_errors +from gevent.os import make_nonblocking + + +class GreenFileDescriptorIO(RawIOBase): + # Internal, undocumented, class. All that's documented is that this + # is a IOBase object. Constructor is private. + + # Note that RawIOBase has a __del__ method that calls + # self.close(). (In C implementations like CPython, this is + # the type's tp_dealloc slot; prior to Python 3, the object doesn't + # appear to have a __del__ method, even though it functionally does) + + _read_watcher = None + _write_watcher = None + _closed = False + _seekable = None + _keep_alive = None # An object that needs to live as long as we do. + + def __init__(self, fileno, open_descriptor, closefd=True): + RawIOBase.__init__(self) + + self._closefd = closefd + self._fileno = fileno + self.name = fileno + self.mode = open_descriptor.fileio_mode + make_nonblocking(fileno) + readable = open_descriptor.can_read + writable = open_descriptor.can_write + + self.hub = get_hub() + io_watcher = self.hub.loop.io + try: + if readable: + self._read_watcher = io_watcher(fileno, 1) + + if writable: + self._write_watcher = io_watcher(fileno, 2) + except: + # If anything goes wrong, it's important to go ahead and + # close these watchers *now*, especially under libuv, so + # that they don't get eventually reclaimed by the garbage + # collector at some random time, thanks to the C level + # slot (even though we don't seem to have any actual references + # at the Python level). Previously, if we didn't close now, + # that random close in the future would cause issues if we had duplicated + # the fileno (if a wrapping with statement had closed an open fileobject, + # for example) + + # test__fileobject can show a failure if this doesn't happen + # TRAVIS=true GEVENT_LOOP=libuv python -m gevent.tests.test__fileobject \ + # TestFileObjectPosix.test_seek TestFileObjectThread.test_bufsize_0 + self.close() + raise + + def isatty(self): + # TODO: Couldn't we just subclass FileIO? + f = FileIO(self._fileno, 'r', False) + try: + return f.isatty() + finally: + f.close() + + def readable(self): + return self._read_watcher is not None + + def writable(self): + return self._write_watcher is not None + + def seekable(self): + if self._seekable is None: + try: + os.lseek(self._fileno, 0, os.SEEK_CUR) + except OSError: + self._seekable = False + else: + self._seekable = True + return self._seekable + + def fileno(self): + return self._fileno + + @property + def closed(self): + return self._closed + + def __destroy_events(self): + read_event = self._read_watcher + write_event = self._write_watcher + hub = self.hub + self.hub = self._read_watcher = self._write_watcher = None + + hub.cancel_waits_close_and_then( + (read_event, write_event), + cancel_wait_ex, + self.__finish_close, + self._closefd, + self._fileno, + self._keep_alive + ) + + def close(self): + if self._closed: + return + self.flush() + # TODO: Can we use 'read_event is not None and write_event is + # not None' to mean _closed? + self._closed = True + try: + self.__destroy_events() + finally: + self._fileno = self._keep_alive = None + + @staticmethod + def __finish_close(closefd, fileno, keep_alive): + try: + if closefd: + _close(fileno) + finally: + if hasattr(keep_alive, 'close'): + keep_alive.close() + + # RawIOBase provides a 'read' method that will call readall() if + # the `size` was missing or -1 and otherwise call readinto(). We + # want to take advantage of this to avoid single byte reads when + # possible. This is highlighted by a bug in BufferedIOReader that + # calls read() in a loop when its readall() method is invoked; + # this was fixed in Python 3.3, but we still need our workaround for 2.7. See + # https://github.com/gevent/gevent/issues/675) + def __read(self, n): + if self._read_watcher is None: + raise UnsupportedOperation('read') + while 1: + try: + return _read(self._fileno, n) + except OSError as ex: + if ex.args[0] not in ignored_errors: + raise + wait_on_watcher(self._read_watcher, None, None, self.hub) + + def readall(self): + ret = BytesIO() + while True: + try: + data = self.__read(DEFAULT_BUFFER_SIZE) + except cancel_wait_ex: + # We were closed while reading. A buffered reader + # just returns what it has handy at that point, + # so we do to. + data = None + if not data: + break + ret.write(data) + return ret.getvalue() + + def readinto(self, b): + data = self.__read(len(b)) + n = len(data) + try: + b[:n] = data + except TypeError as err: + import array + if not isinstance(b, array.array): + raise err + b[:n] = array.array(b'b', data) + return n + + def write(self, b): + if self._write_watcher is None: + raise UnsupportedOperation('write') + while True: + try: + return _write(self._fileno, b) + except OSError as ex: + if ex.args[0] not in ignored_errors: + raise + wait_on_watcher(self._write_watcher, None, None, self.hub) + + def seek(self, offset, whence=0): + try: + return os.lseek(self._fileno, offset, whence) + except IOError: # pylint:disable=try-except-raise + raise + except OSError as ex: # pylint:disable=duplicate-except + # Python 2.x + # make sure on Python 2.x we raise an IOError + # as documented for RawIOBase. + # See https://github.com/gevent/gevent/issues/1323 + reraise(IOError, IOError(*ex.args), sys.exc_info()[2]) + + def __repr__(self): + return "<%s at 0x%x fileno=%s mode=%r>" % ( + type(self).__name__, id(self), self._fileno, self.mode + ) + + +class GreenFileDescriptorIOWriteall(WriteIsWriteallMixin, + GreenFileDescriptorIO): + pass + + +class GreenOpenDescriptor(OpenDescriptor): + + def _do_open_raw(self): + if self.is_fd(): + fileio = GreenFileDescriptorIO(self._fobj, self, closefd=self.closefd) + else: + # Either an existing file object or a path string (which + # we open to get a file object). In either case, the other object + # owns the descriptor and we must not close it. + closefd = False + + raw = OpenDescriptor._do_open_raw(self) + + fileno = raw.fileno() + fileio = GreenFileDescriptorIO(fileno, self, closefd=closefd) + fileio._keep_alive = raw + # We can usually do better for a name, though. + try: + fileio.name = raw.name + except AttributeError: + del fileio.name + return fileio + + def _make_atomic_write(self, result, raw): + # Our return value from _do_open_raw is always a new + # object that we own, so we're always free to change + # the class. + assert result is not raw or self._raw_object_is_new(raw) + if result.__class__ is GreenFileDescriptorIO: + result.__class__ = GreenFileDescriptorIOWriteall + else: + result = OpenDescriptor._make_atomic_write(self, result, raw) + return result + + +class FileObjectPosix(FileObjectBase): + """ + FileObjectPosix() + + A file-like object that operates on non-blocking files but + provides a synchronous, cooperative interface. + + .. caution:: + This object is only effective wrapping files that can be used meaningfully + with :func:`select.select` such as sockets and pipes. + + In general, on most platforms, operations on regular files + (e.g., ``open('a_file.txt')``) are considered non-blocking + already, even though they can take some time to complete as + data is copied to the kernel and flushed to disk: this time + is relatively bounded compared to sockets or pipes, though. + A :func:`~os.read` or :func:`~os.write` call on such a file + will still effectively block for some small period of time. + Therefore, wrapping this class around a regular file is + unlikely to make IO gevent-friendly: reading or writing large + amounts of data could still block the event loop. + + If you'll be working with regular files and doing IO in large + chunks, you may consider using + :class:`~gevent.fileobject.FileObjectThread` or + :func:`~gevent.os.tp_read` and :func:`~gevent.os.tp_write` to bypass this + concern. + + .. tip:: + Although this object provides a :meth:`fileno` method and so + can itself be passed to :func:`fcntl.fcntl`, setting the + :data:`os.O_NONBLOCK` flag will have no effect (reads will + still block the greenlet, although other greenlets can run). + However, removing that flag *will cause this object to no + longer be cooperative* (other greenlets will no longer run). + + You can use the internal ``fileio`` attribute of this object + (a :class:`io.RawIOBase`) to perform non-blocking byte reads. + Note, however, that once you begin directly using this + attribute, the results from using methods of *this* object + are undefined, especially in text mode. (See :issue:`222`.) + + .. versionchanged:: 1.1 + Now uses the :mod:`io` package internally. Under Python 2, previously + used the undocumented class :class:`socket._fileobject`. This provides + better file-like semantics (and portability to Python 3). + .. versionchanged:: 1.2a1 + Document the ``fileio`` attribute for non-blocking reads. + .. versionchanged:: 1.2a1 + + A bufsize of 0 in write mode is no longer forced to be 1. + Instead, the underlying buffer is flushed after every write + operation to simulate a bufsize of 0. In gevent 1.0, a + bufsize of 0 was flushed when a newline was written, while + in gevent 1.1 it was flushed when more than one byte was + written. Note that this may have performance impacts. + .. versionchanged:: 1.3a1 + On Python 2, enabling universal newlines no longer forces unicode + IO. + .. versionchanged:: 1.5 + The default value for *mode* was changed from ``rb`` to ``r``. This is consistent + with :func:`open`, :func:`io.open`, and :class:`~.FileObjectThread`, which is the + default ``FileObject`` on some platforms. + .. versionchanged:: 1.5 + Stop forcing buffering. Previously, given a ``buffering=0`` argument, + *buffering* would be set to 1, and ``buffering=1`` would be forced to + the default buffer size. This was a workaround for a long-standing concurrency + issue. Now the *buffering* argument is interpreted as intended. + """ + + default_bufsize = DEFAULT_BUFFER_SIZE + + def __init__(self, *args, **kwargs): + descriptor = GreenOpenDescriptor(*args, **kwargs) + FileObjectBase.__init__(self, descriptor) + # This attribute is documented as available for non-blocking reads. + self.fileio = descriptor.opened_raw() + + def _do_close(self, fobj, closefd): + try: + fobj.close() + # self.fileio already knows whether or not to close the + # file descriptor + self.fileio.close() + finally: + self.fileio = None diff --git a/venv/lib/python3.9/site-packages/gevent/_gevent_c_abstract_linkable.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/gevent/_gevent_c_abstract_linkable.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..4dfb433222494776adfd5d1066e1d8a17a195b77 GIT binary patch literal 879184 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 VxJJsn`5B! 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 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/gevent/_gevent_c_greenlet_primitives.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/gevent/_gevent_c_greenlet_primitives.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..9720d4b16fb17e5d9041d75dc6dc8b2b485098f3 GIT binary patch literal 467856 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%0A}|t1-;{NL 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

          25=rp>&ej9YI%y8bl%}x-$7N{`7-zh>e5KlB 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

          nMZK#)jNR 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

          @GKIrX4dl?W#CV`l;~EA1S|u7PXgBn_O;lX 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 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/gevent/_gevent_c_hub_primitives.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/gevent/_gevent_c_hub_primitives.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..690cea547aebf96eb2359a0cb74f6e91f537914b GIT binary patch literal 1004536 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�#ggv4^4e-1J5`jFinB|(9}0Ju<%Gu`)f~j^g~k{e0KP}m40OE zTOYvZt@Hy^-`Rj?jtb2EzO=PTrYKNDB9DC4n}N{h-NB&2@fz1!}G@#Q8wY-2ibtu!VWYS&JA?`N?>?Q>yQFSD43; zUkJ1?UNG2AB`nN`$i5FW^&Jq~fu>&Xgus*nSD0_Y!c*Y#zE`ITEEIdZc3&=bJBKN`k0r9Iacfhnb5jQNTy)WJ{ zZ-Cbp#K6HBJtC_o(cOU_ku?os3P^~A9+9;a?g^krWbJfWsB24M`jZ1aB5NxWn}HsY z)%c{qGy?XBtcHi#23X>B{^Q$?yNP8Vk##E8x`;*jX*(I|tg>w8C>u$+jww#cZ6Q@V z0-a$%t9BN|oj|MhWrzx3;@3O<`rJA3yB#yBkt7x$;qEwDCXe6i82Jhle)yk_sURJ@ zLNKgIKScK{7B>K0h`iMGdO1d9BZz3fbkoWB2!QrW!<`K8qazdcORo|CGKj5mY5FIy zPJ2wID}6=#oj&ogHt}c|7IVa~tb%?VCN8oOL^Sb!$dmz1{If9eX~=|$&msO!5NqQ) zFQ2%~nke~@4aQuT$F8P>`(XK&BK_jZ78E`N&3e0@^b{2~rt?334*W<_Ohc4>4sxGkA@&#kdOD2qHSdn?U?{5L=klYs>6yxTLAWrlBq-FrM;V zQe=Kns*pU{VG~v!0d@{N(kWFlo(h!~khF}t-$VFaQ81a(?|4xB>mN*y7uDS5%iT*3 zvaOz-;mAdvEJ{5iiOL-KPxOBSTEu5Vxkbo@*Pvxrp86oZvzfJHA51#oec!3@{+O6v zQk42xOv~8!5>)z&+KE}04qt)OkV$JeMa@+FV9dO*02`_l;HDP70HvEq<-4NP707A< z9w3E#ffm5aMNM<$!UB9n{O6LBTik=(Jz2f@|M+CpPxs`9MJ@Z5Ox#wKcV2|;LgA-- z_U%U32K3WC=RounMn2s$7h;w$^68#$Al8F~SkX`SG&+q&2=voEJ{6W@i09Ki?G1_O zr+XwoKi$&@;qw4}v3&fdb$Hn-M5RXTc2xAEH?t6$0raCchlgUG@+~U-s?LYVzORP& z6T?S3jY`UYX^v0#{OuF@3xz*?BAvoSJmn{hVIupU&OQTRjDEW3_%IPqg^9RN_jE$I zBhXTG2@~+tZVB{9_Cig7DTwSLIXl$ZLIp+cD@sh@%IQ5c8M#R!s~&}cVO~5%F7+3A zuqeGuE_ZlF^W$hO5>34iehoD<-;=~MMTtKo3Aqo}BD5OB`()n->T=In_Bf0ODP<`W`p!Dsd`oj}X(Z6y-hXO;12&oHt!N zG`%X@^fKaK0I?2Prlni6zAow24+v8*(jmTD#HyRi{NHH);ZtZFrqCR@F!QZ@Ftq`( z=2cSAo?WYFm5X7mP*PY?lsD9;Fc{5&K&xl9lcSTM8wpc*nE3laeAywp^jnho??aX5 zs6~;aeZRUc*@_-k*|sp{UsTBNIZr5lfX99hn-S2 zQzjkhrlQ0g5tL@S4xzP@)??Y7q+W-oofiH-(fY9{@s}?}%`@?#0xiW0VK-fo-TihW zz6*%gbTcjY{E+LgIyAjSOm8kqbdR|TnuN*(Z~Bwabm@;-m-toUmx<{SyPN(cG~E@I z$WKLy$Gqu(QTf}O{v$M9o^85q&%m?>@v>b_ccu@o;bw@;XvB0-oL3g7ZwSA4GaS9a zK)=zk7-FF?@{Nv75Z?(S-{?5tEao{NAy)Jo9lhbs2KtSTyC7~8M!wPUBgD7D%!6sy zi-|ALFKHa)GQ+Ml%#IpAX{4?NUs&+|H>~V{tFA)CKXTyI9r_-JBR&_EaNxTlo)loQ>vLK<~oS!xTK_ z2mRq)SdQ#iN$mnBYa1EuUM|=tE(<)1$zo(@QC@Whjg=SdK{W3Jdcih8d?}1vu>H>A z?go0nE`=BX5@JO!*h6shfL^d~AU+pHE?Dbx8Gr)4VAnyE1FhCAE;B5&NwppkJ1*B< zuon?|7U%`r7K$0>^p!LALQmgwxDYHZ>PehepI+%_jt=K&tnV+)UpXDZ)Mq* zFCo4^h+n^pWxZfIE{Kt~qmHO@!5%>KUZ58&5vJg&hE6;z$LGj?CaE>rB{e2G|G24u zd}SrKfxA1!!FMLtOdWiy?zA1cE;O##<3eNXD5of2Q9-HlyQJ<5DzdldG~G8$8Veh@+FL>nX20K{&{de+Nhb1cQz zRHiy*27#hnSQJa-(-Nhtw$^7m0Y>%AZP@S=>xh6_?}z0w5FeRk-Oe#8Dl_k>@M&;h zQ7}p@ND{Nqz7trbS3=QB%3h|(Aw|J_ue1z>mqbZNIx9k@4wApaih}Qb{=P@(8xX7I z9%s@ted%?8^=X(*Pleg+SQM|9$R1#omIY>CVDq}oX>xQzm;sm9ql@aEiKZ6t7!*3G zl6+^QML4PSlxu~&;ZT&AzDsfg(CROmy65>Er)f+Dw@9RWQOW0$gzWd8iqK@B8>qb; z3s)lNHc&rF^y6a7M33UiPYI2c$>jU0qUvuJQPPWuik!orFA)70B)h>RL?##pb=3KR zX$K0$7v*i>5^>hTnj6?8Z)lRtiIZV8@}qz{8RkOF0qSIU4dNAGqRXcnb9Y!XrCZ3w zB~4N{rZDjpQNJPd6G*OxNl0}4pP_;s{5hsiVA=z=cfwj?` z=s;|INzfOdzSz?JZQceATWoAf5!rfYobtFUmnv_1j%eA_h zq^C))^je9GUaMyaS^}bDxo{tbHkxn6#)u~SJ|H%x$<>vR;4Y}Yk^ULzV6MPvFoSoL zpVdUln#2w+2z!VTGZ^EB=2waNbDQLCt&YHWq9XEVd_O+;2qM#AHbQ&}5+WPSCgiva zaPfiQVVGeM1AzLmc7(a`R6^>FU-3S9ACd`eVyh5;2WS)f6XJKEO>Ex_nb`qTQ=Gkp z&Rc*x{1+^g7Jfx8)!};_G97_Bh;N6O2Gl|9bplg{j&~4mAo>e0f5=5V$$&bDy?iW8 z&EFMxXqTo*PaMQoBR&SGPt~i$cT)*{s`HS&7ibCJf_MXH34eju0-WQozAGZPNJwdY z8Iq4>T!q!?Pw9Y~>kM%;P;(bUTm(!_@pd;4E385a-zha(EJy*SAu|PN0lXNifK?I= z3$O&)CxE874&qawDFzo43S0r&g%&C)SAb5b*L(pQq0m4SzalSPAx;5mZY0ETV4cFp zhXvRo1?XJ-fn0HM3eQ32PM}WVH4q;PBTnJs0eIhlI)%LfF5<5ka8BVp(&z)G7Qj+>1b+!aZFU4zQ&#W5|Izg?AwFCs3zw>w)a!1J)`0hnw*H4^H9T#Il{j zy|C6(EXprF&W*#I=XRiTM>iv%TpZ)_$yKKuk={*WchE)XCl|+IW(?3zE{2SJ zaxrA&(~GMSc^4$afPQ+h!6iH}fqr`NW{4Ywxd_?cA+`V=B+d@6QaPG@dhxYFQWj@m zr$K=^3g{rwi$zTZV&Smu8sf)*_;I@o+tl)dVWGB&<=U}QDU(=!361Bx^DydaWEy&2>O47R=*mG%| z94$cP+{j@r(Q^RJME1E33+G8?B2=q5=pn{rsQEfl%Ry{nmTy3EcC{$Wfc7e<95vHK zxqfktQ7C8a_`D_*s1Si>#ld@GT`pLBFgt{?u1#TrljG!{KeC#_708SN@t<70or$Q+ zV6qEh>WE6Dd2!IH#F>5)l|?{J-yE7Al5P4Y;(q|Kby=pRaHHfpY6>&M6y{0_EsBFF zK7~d@aHs-JVNRIBs_Yc{5Pu$s@61ZUnf})WX5dhmEbA147f&#Pos1!F+FeC@O=1nr2kdRl`p+%FULUUudH0x9maeb#71USh;O#0Yj-zd(*w8~VAw_F`Zai&2llq%c|rC( zP~HdK!;azHWv&Q|8wchxXOQ7n+%MJH4Iq;)qAX8W*9{%WY;Po=uWnyU8pRuhpkUic z1ioM;bq9xTQhm`%4Y`bG3b310U$Ro)j^=e*U^l5&*uXYd(5V2s*JGItyzxqQ*#mpr z@5?@sX;<5Q9?PriHj!7Z;^_$r+MP^RUhz_F);LB2UbO-Hj^QZ{?7ocGZ2r~}uv7wd z!|UtSbzjD{SL1vKc3;K{D{1O&I~Zdx76uL1*gD;iNf#_NSa(~oRGrmVj)Kh^V#e(A#4xwVb?x|}z~KxX}=yx_JM$03{{ zmb(?~@!C$- z_J6VMu8ekDCa)2>vs8B9!D)11siP}7dvq@*OVtZwOZTRq4i}bwB#rNZE-W>;mNzbd zE-VdzxKJ2bSb7xV5s(loy0G*M+)qFkmV7E4UqL(zOSji15nWi409{x*XdH{>fbpEH z{|s^&=D!Q}n4>M#*cg^9R@rPOuQ7SK{$7bf7T-4bYtY;zz# zeLTM&Cb5bNiX2oJ-z=Gz$Madp^#JkPR@$)fO;@rg;*wxcrgEk_*)opIk&wYcR0|2UXCjhHxXv=VCIn*y@!S)G8pL7B@v31 zAr?Nk783t3h;PWQ8f&@41u^Fl%k5(WyyfrE_}W{p9a^r)w!Gg2&KCx;HCdMB38EX) z^|R0igb8es1l(t#&qnD?pxHh+G+sI|E8DjbKV6K!QpLEAN!&C2dDllV=|wj(sxY?y zzOHKCL-$Re#Ye7UN8bcs15k@8&3m_f>2{E7(jc?(; z0y@zsy^%>j(1}Jbh%Yf^k4M8kyCGQab28hSp z`^>g?Rm(HOs+cR5YsaQ}%ej;A!2q>9C$zjO+w#%G9|>Z=X4RIo5?y)JR`PI|fEiRd z$G8fm(cbu@q4DO3gxP+I_{YWg=T(gRRwBz0UpZZ4%FvC>FO1#3U-r%X69#?+dNY^Y z#0SKI-pr>$oFt5_A5DZ94-#TUZ|3E2F9E%ocS8InjNHtJO=h$R^kyCkF$id7{uvfz z8fLheKPq*XX+9zk0?A(2aB~%zH};Aa`7RDpd*MJ+t)fL!q4u;o`~&qkCaqHO4Bc)e(*MqSYr` zE8g5a5M-*^@>a*xLrGq=;pSzXtQ_T$>qwS!7QG;aqnCWkKXN zt6~pP*~3TWTkh+GA9jLNOWb!Q_Z>(!XS=$2qf#Jts4JCxA#u;&MYJ^(cjc*ON*T#T zKCB+>U*FZxmDJ8`K*xry!#3rqgWLl=OzmD|=Yn{5Cz~}l zj=O8ecu$h4C=8C@-xXvfDz5^2UpP6oZ6Oz$4yFg@Uoky;chh@^rss<3Wre|g-gJA^ z+5$CQ8k$~}ZTd3ehlBWqyPB4pVVqN8ooXniH&&0W71MGvEJkIasJ)%ttXux#=24rG zlZqaNPyak;McQp$W>th|x7*53gjK))P*S1s4|5u=th88(_jiv3`xfYu1Cg9>=WdZJ z5wmZB&abWqw&m+*E*DhSmn`iop$qM##?;x_7tL#&=HgKE8av6e!q-~ieRLLbS9Lt0 zH!?7cjIdf=xtZk0uuOlESz{V-RF%FgFv4aa(!;*zInrjqO%F#|vzw^4??9g9+Z*F; z8;nJ+sGf>UCV2mw8S;aKga&sKauVEepy7isXSyutDAt=ug~t3SHZrAppySHxP`nn% zug>3fNN8L}=e?1)8v42$m$~C3TxR)WnOH@x%jophR>ye9=*)G3V|3PfLq=aQ$k(?L zCT8^2f_!}=;YKI6&&gPu_gUK149NSMWOmU3PEvII5ZfRf6on~X~ z1?gKouy5&}TRmuTF8Q}7|Gb^iz3-;QkTB?DA2d#abYJ`T8Qs@zTHH>M{nYB#jP9M~ zi+duaGsu54y3OCTcs>kjP+d)3-`>ru8)0 zmFWet^)#&~zOGEat_)3B6hBu+Kg_T){g*Jd*563ms?l11D{Zfb*81Cy(OQ2eZL3pj z{oS;^9$M?GoB^%%_gswD`uom+&i_AfjL!W(bUOO7^lHcG_4p{Abv-_|G4?VH&bXJQ zM`Z$6JHMsVvK!Ty!NI8%aEihkR4 zR$32UJmD_Z)IqbSU$M#X(AM9~CY&eF_c7+A_29+Zk+~V@!HeshEU%tBs;$$C+?}=u zFTR89TR@Ly`W0fUFmmu>$jH%5d(C2?3iN2EqafM?J(_6{#6V%>Xr|jBrh{0GS8YOj zKAP#Id$^qZSoGcX;Kf7sc<^Fpmw9}&CsJQGrb~XI(CW?qg2dJVJ*LddRpaA4HuIE!-4!CWHQX7M=ki^PDe zh<*aG2Iz{YxretSVeIjm(^j}vU^<*c(Kv;2O*2f$@tOxA*a&FxLPl~IGE&z5i1ZUN zDeIFEi-eJ~{si%ZFmeiIqkCEM09w}m5dDOa;yna059r52e14*)T=L^T7V;JGpNqn> zYmC|VKAg!wPo5kAaiK5|5;G5Ct}u7Pd=Bx6F!HgGednPA^yJC&AbNqsBGS;~CuhOk z3iS9%b3ZRB39}8wGhw=b%Ht>3qcnv|(&H!JBkEnC$4~wRu}zo;*Rs9t0Xih0D_tvG zH8X>hAqK}!_LpiFFWNX{t^p>u+Ddn0HfAp#(J~~Jg@B|Bx5rOD;7rN!lMhr%#a240 z)}(DUW%HRXI#eD$={pxmD7M%&Yk&Hrd|1SPvrEp2IxU#4pR?8X{P%S5r0pnvU*?-o zS1H@PbWwjgXzhU>qFfIET~G9K)l8Ylx%I@iiGEXxZ;h3>2L*E|5qcn9w9Fg(1*t7S zdmS$qHI>Z#pszy$RCfI`(vNe*YQ={ZV>|q4)@h;xZ15Ktm zmM&?@llGksn0(o$))~p8fxb1hw`)Jflu4?~U8W?G1RE3OIzeVRW5Q)KD{4f^+ME*qSM~JV4*#tBAk-%I4 zBA>(j0`Waah_#?DiWkhMLj}P>FmFN35~eN8Ckq2UwF+}A%-)aT*8;)mFtrh0|fWLY=QVlm`7piE};TI@Eptu zPqDQDv{?bu@IC%icU7k@d0!`W!rF=Y*7H?5SklUMCNE*(1z_D6$GWD8l2^C$Ve3=$%y zJMLD&y#?Z}T^}fWAY2{19a>#4Ruh@vXP=kk(=>e$-!D5aTHRkbEv~Yo!s@P(3F@@Q z7h1U?_Ulk2BlCy7GQnvGXmO9l{Lzv`kKK~k=CmTlQ(+SIGr`rnCh=F8LysC1zV^o7Kwc z8k+S~%%;P*Arothg{;b%5DKr7B)Vl{qkR&;V}1*WwaIFO^mftd>&NDB`KIAcnC{dA z&KE@ev`qCCqJA$?$2`L(J&=%?U?Cw_!(9ntFFUPV+JSVRj54q%9^W@y49#5Z4ao$( z4#S@K=w3zhC7}J5my4N2$c6n@(X))pK<-*+N1E?JSddik&gZVqDoW?d@Yq=Q)E0Rs z>vH5R(K$$thGl|fK1ZjM(g{F)dTX8Ki1AcSSL-*L{~SG8J-E6 zwQ&Xi1(hGeWL&}WjL%rzs>vMn98(++`#Gx;Dyvz#{rgGN~gpM z>1imPm#O|!Te5T_QS->oERc|xpa&t*=L2Iv&cBY^FVXS&Xb55`Fbu5J~SO9mv@cOf(r#2$1qzL`kFZ90fNEJEcW#Dhy=DiD1U z1XsfR46y<5`BSI-Vq@OcMpi17@ni1IF8ocx*SK&D$IKfx>k{r{T~@1yZEd||wRa}g zE_E;FEI=U zy7@BY?!t!dnr)|4y7_Vt5*GvAeE9&xJYY9pc6GH>;&lGwjr`rjvNvD8iM5qtk)PI4 z3ulx~+)|#)o77$;<&kRHg4|C)E39S(!%~o_K&-yhQGKbKSX-xmmv$%J^MZ4n*MJ0K zJzXh7|H6zrBAT?ME}h^Ru0h0%k%8OLOwdjSSkei$C$V-wyBsf<8*1Qf)nC}<^g*@^ z#QIlhx#W_j*J-(x|ClCrI%)VOd9DlphVX$|;g`AaErd_A;rcX?sf-*R#%6ev>jy^S zqF-)>@`9&b8TYuyDt>`$Ka!8!8yq8ve_xq+{1{gRyH`@r@b-?Zz<4Tj5HS>pe{>Y(_HbRFRM>X%%vH#)Fuuw&e$Ul*m1|~p8RPjAX)GtDttsoEIs8b>?m@&`;zX@d_6UVk&W-|g(bj$)uMC0KQ@gXE$|rLEDNy(Nqbry;0qd## zw?LiTomVnz0M=8>F^1yXcb?jat=jL2{tQ@8ZCmfDZH=dPn^u;wp4!9G!G_;lfO={> zR0d=+x8fl`)_ZDG=_;SdDX^Z}QEvq1Qji&Pn=!+W@t)fKtf%&KV%`VMmi}s!xxoHs zI(4+3+WOX0JK#;cI>35roh+VON40TUk^P;g_FiP?0=)rWhj>*OxdB5)ZotiiZjuaL2Ls0i5#Dw z9J5ODgIjXs(d0+mk{7PR@dwl`IR)Y-kPtETO+Ep)7`TE}xW-9)W)djQ$uYiQpCPpd zXu(28@>TminhnrT46Wm?S?)MGRJ1Xma!2A}dqw+k6Ucx+i4gC?s1Hy=-@>_`Y!ib}?)rZt1P)Fr( zh{3{?6SD;3F`z!m=xVwMVZJA(2h6EJeUu9z?gf=T%I4HpOX^B}l%*e$C!jvc;~_c= zBRzxh8`B38Ee~||uEiU>aOr9D{^2AE1*cndB`zZh86FL6IBAwVG*SNitQdQ)O#{c)9$eH5qW(HkSz@l`?KJ-s| z1O7qbwgJ5Xy&Uf}I*qC~V4aWgX#!5`l%3j77_iZTGQ2>51cXPy&}{kU9=Zn zxt4u3QXc@#rk9JFN=mMGrQz*}{;7tw?4N~(%f#@(Y5R$sx@&ma05$4mqNbAC)o5o# zj|TiQ)3CFS%vm?*;aP6Zx?zn}NLuZj!*L*r7Xh8P@9$(HW(zXmIQ4$w?*Z|HUDH&* z6R8cENnd!JcXM{OsjWluQ?V$c<$R}M%v@w6$GB8uYq?2*rkW1#omI$$sUAgqI}mTb zYpPLMO7>6Md{ZiRJEl`-9M2``NYrKMj0BNGVCF!~5~d-{s}ReDsSWcJ#19}L27*%v zY5WPdB?!)j83Qp=nEo*9AwCgiBuuMMInNvf*TPJOm;f41g_-Lz+HeL;HOJ)s?kZJA zQgz9s-1RaX*H7d;?WAOMsUypW!d+gBEQjuKWXa2y@`;=dPL<)cquSVZ!BZn0l#-eb zuh)^gwLqWlC7&@I1Nw9i8F{+5Bebo=$kY9Nh~7Y-?o%Nq3nNeWB@j=5*l3sL|Krm= z_cT{KQUPa?=l^Xb#0R+U(7xfp*waL|r*sfozR}i0`#k%9WY*^1eh|Ao^@5DIf29at zf+8J-ZcnY2k?l|G@Lz)>9ffXBZIQs}dS;Yg(7EU+bbBgKKao@XB^wQhv7gA`JMcdiXQXao5LIqO;>xzh#~e8-gPTLSgN!2j65 z`@iRy5MU1uHFgv{Ya_3>0ef(0#0Jj!k(YgeeW9e94SeILz$^gvg_6JqHr_&jKsS#> z3v^q_BU`ysfIU1kX2;B@{ldYBQyVBL@=XPop z=;wA`{SB`pXf}SUz0`H>f2QzcB=vJU4GQ!)^vpJ<2Ov{=i!sYjV!S+J&=8&r1$rF% zVZ^iov3bspxZ&K>**@Q=x(JS8xtS~0upsdxM)dhU7{x)rA1OM!NpAG>ro42=wh zoo4EH;z4Yqi+9ej==2+|&cU)SG59oMrc4Ucq9F0Mq#@3<6VN?I^aD2&%yy>bZg82? zwG4_NRrEi8Oy^yf6T1KsD(vxNI$!XoYg95d?Cr`IndXTtE)jmV)QWR2jJ!b zN+loDDRP;^-zU1Y3yR(lU0DKo8>y8*mp~GK(3gRPh}m<@_jRhz*)rM6ilXw2<%Db5UYWDJ-t#iRHt9jUxbs)+n$o`_3Zj5?_UFZ zl6kkVNX?}&?0S+pQp15g$sA%KNQj(0$sBGY(38xsaCVxybk~rkJ<0qp7Uh6F$sFQ5 zpeLE%;8bcl6?>97vEzU{$^5x3HnO^t;Ux1o)sc0QIkFFlyq;vfrmFb=;Ux3jWOq5q z9FuQrHb_`kRUUG=%`u(|tGI4K-W_s{WGMa{O23Gro@5^X$>uw1Jmm`#IjkUWy(q~o zvDbEXD1lflC+}|wdF@0`GEZ%_hN>A)725!YSp{|L(QDb0%rSBVuqT;AoDWP?zAe+t zSzx7C?#LqwN=J*9o@9>D^&lZJ_9Sz-3Sdt%{~H$$h}U(kRnGS2#e3<&dWTj$Rm@95l**4-e|m;7&s_+1z|!u;?ZEE9l) z$m@^64tMl$9J4YvQa|&E>WJzaJ$@UDTZ)DmNG9n+npi zMOjMFx?0q<011iF5)6hL2x1>rDS`A|c0FUSO+q4X%ETU@WUSc(d$OMK0-BEjy)V36 zj>$~OYH{ZTQF8{!ZRG4ohPl#y_!PUNN=vLv*=sOV!eZp}g5YwW@_a1b4>V;j$M z3&Wfo{WEgm?KYG6+d%AwJzOn&I@DuMlcp^x++I-qw{yutcskU_sJ{y$-I#YB6XWZ; zAR)4P@=!E~Mgw&FqPK-#%ULB-e-TcJy5kHkoA?RaBi|0FpYQ^RzCc}slOQGnd%}|( z<0wCR#EJanl&BSFVnR-ddIq5U6XC{zmSbIZZbZ>FiTJPX31|DA_*5t2PLKM|RmME~T+v}|)zhOo{Ok+4UNXk% zQ5$x>mL$Cz=(RNYQL`N;A+mZcyAg5%h{`Ea-9uYtH)4xZq}~-gLc|*(5y}>hH6$P=k5yYsgdp zJs7Ga6*Xy~2Sa%sHhZDt4~FVT^m#z#pMY2h^k672A2XivHv%U!tvZYJ z&3zB?EwBeeEeb1ay%fGvYPwjE0;JPXlLA@*FUB6>FnOD3Sb#&2Z3#5Rb0B&FP4QZY za^MQ^Txg+^as}v=`ob6BK@{!>YVKW#w}G1b4dNGI4~AM179evI1?XJ-qg-)07;2wP z)a(WHV5l=8P8UWFhPnk}D$s+Wyn(1G6$9>IsJDq;De}z@Wz1G_h2rW-JqIGz94o3NW$_TGfGSo>Hk$}isC zS#$?O-Rjt^gQ0f1d{#4MltT`Nx|_RR-`6&Uv{p>%``RHR?`wyQysv!(Vr@V|4CwpX zqu_=CeP4SK!~$XDV5lD;z6JWa?tZSn;}M1?2Sa^9@1c+R{fnr0pijC6p;!fC;gjw> z;(LMkKvyVv%)1wXn>!UI#bUX3tb>$E1`spQxYb*39a=7B2pn2|pZIq`Y;=}o>9ci^ zrSEHZ2ovavrau!ZS70bBI z#Lse9%pDYUykq4d5{@b-L^Mm+-{@o-^f^vpbI51pT5I^udYDf|oOXjWuc3^ni zk6vlf6ms%ZLHt4yl!4*>2;CzkSy5#?#k0f?DJl?hLU;AOx_Z*||1iqg-f4@42 z>5h*NQuftBb;W*|%6f5cwT-bmKE6yj5A22%?t+85lFflOo6X;~O>T_q#3Hkn4D`Bh2@o|MM z`?R`Ib1krr>ML#S98nrIO@Vb(Uu7ko&wY$d@;9Qt2X@ED^C|ak-qWdI#e254?2eCT zQ$cSZpgTU6R|aId;x1g--|zUCn5welTU4sJRkknxD@e#f$uokJ%}GH?L_u z-lPD{TCK9_BBa08eeI5qxtz{LFSQ<-&w%du=;34|##3#aR^*C0T@zXd@u@JfCKT+C2#8H~DerkrXj1l$kE27T zXQbsG-_85LHB1(|`p{hONR>>X(7Nc_g2b8uyXflVsu{20T5`CWdj_K20sW-x_}J(a zaGi+ZIjO{=3o$G^KCVIPa-bU{LPmCcY$WtciIKe!Ll20Wi-GQiSPSvCF!G{S-v&{0 zHqgBgA3(e*jO?s9p&_*lbYnzmBd!(D9UneFIcB}&haDdm^&>wrlbeUky+B7`Z$Z2P z5+bI`E@o}*)Se*m8;6Mu&GLo+$g!Y#hDdkp(O~Obi&u$zw zJ%E;S0mM9Eq?83sc=7@*<%JMs!pM$~3W%qHzK-Ve6E$5WKjAKqgQBJm&|MxQATAX~ zc6odbu|^o#<AbgRdMaCZaU>XB+j zy9Bz`<4TCZpmM9nB9!)_l60#_wdPbM(5)VgAsPrHTRkp>CPCpwtD<= z0oO~O=1(H?IKUh7fxQ;8)gw&;GFIS08gJ>s-Bu50O165mu9S*Ra8gyadaN3o!*kD_ zb64^vDB)ld=#PHpz z`bjyGQ;qpJCYMesAz9={F6}7KWv@+`y}4rLfmF#hpS?k(H4x~g5if^>Lgd`0k(-I0 zrdiTWBVC*^_9}_cBdL<3c^YUXK7-T}Z_LZZOot09jr~gW&y~i`aK@^cauHgPDw*ny z9o&*R5YU`?IlLrU#x5edFL0H$&{YEg7h-I&t1LC(<8n*~iL0!j%n!&URA%yn1!U4^G*j$ zzHU=1YK4ab=+2T`!;4jpY-EK?wH@(?iHt0O%ycq*9vYc2)se&x1@RMHO}JE}vQNN2 z(US~(u=`3X_51*?TLVUO3(=VmB74Dn2=Tr!NtnMO{u1V2EbM;>^C^%J13@dI%iwx} zpaaYk5c9zSU0?!U*9m$-)M|~B4+Iy%41~Bqm=Q3qLc9bTUITNc>lqr}2y>GwUdwTg z7*9^6r;+U?oO;e46S2=nCY_dyi**#fCEW1MD7@z$2h-dWvdhGecxc8_9nYkKOBo;P z&XTH@o)WNh*^88!cTI1e*mcaw}wekp;c9uYOi0sFQ4vB}?L zyYW*5JPP_9a*!t5KQeMZ-uZ4HHMM{p3}2np%_LtD@R7-s{Qbj0fd>=u#hY+&b3JQ0E2A~N0vZX@7L3Dhkj*C%z0$dY5C=00Gz zh)hW8)ML!CjG2JlB65Qbe3gJFBv9ui6O%eGnR8s!+yv~%`$jA2wup3RkgaF%oSh2p z{La>NrYj?g1;hPTk=aSNRb)$0O$F>$k=aSNRpd_>oGB}(8d1y9ts-|Pb*o7E@lkUH zXtwx!Ykgn)pXqU_-zu^&sar+fL~13-3>n9sph14C$fBff75RmjpFr$gXUA_9A+L5V zdYOyB;pZqWy#6AOCKL5ZPR9z3Pl%dEz@AU}niH*NJSE+={34Gf?G}<#5$+-iCbNZs zPyfMwrE^Jg*DWM7zg0!?>oazVEKMfflSIW4Fbe%)KzqmdMk|L`7P+u@e2n;oAXehy zy(2&!GP;4pr@)yGlETx;M4a5HpW-7l-v{xAS=uIdy33Pn0yz>{ZcJUe<=vEEx_cvb zT)F#Q?ca!vZFkk;_KsAl>~Z(V%^Q5dGgMII?quV6k}dg)c)^KLlLQHg(FOQca4i7+ zoGd}U=yZ+gAiDP?i*kmbD~k@jkU9hCqQjjK(?CMR?Cz1boa!I8T;jNjw{WG;+B>qw ziSZ1V6z)qV=L{tU**lUxiAw@>@5q%9!-4J{@k;b1PCaZF>>U|N7AxPFTZ_`i!0sLS zD=bijB)7}n5py!bG9-2H$l)-Df`rKF-jPvo!+`D`spqa-Q(L#Dm`v;5kwr)>0J?W% zBgA(=_l`7oDm9&o?j0%U!W95+@5m;1lUH{#>>cTZ<;uMyt&nXY^162<*ENJt{Qt0b zWH;IDy(2v_d4^_#gzX!-F1IS9kBTt2*p7L*ZMP5wi z)ftA8c@TIWJS_$A&H%eIS{+s$!3?)ZXr1(Y>Sz4vN$Jcw~#bNs}ayGB;z2i7Dl#^EQ5Fk zBt%}fknGnLe+yf^QZBo1Lk@+huqO3zk4o}4s$Z8SWo)$H&ffmurMGd3N$|4RYelUowaW(8) zg54vt)mg8a%WJCUQaj|cU72{P^GfpaYchSe} z%phNstEH+RJIZA<(miT+qO95M2y+-nh?r(`DclpFMVhco2%2TTcjwcYy-NO~q-tb_joMSwN zS^Y(7rfRLlkexEC@MtF-HJ*xj;q}Q{IhT21-MDgt6Q-Y%#??5LJ_7;WxN;glrh(3-Ah*!ecP_|6kb0|%NoVJv1qOGJMze~j%Q%3pa7n#*%s-J02 zOpKJe+560>`Il>EmtrO*?8~=3qvm*EmtrO*?8~=jG28-nDP~eamts2g!i@lOwDPCf zS{QRSy*9|vi!j{=9(Yca4`ULj7vp9dxSD|1B~Y))EjI9)a~ZAzyFPPALf2>7pT~?C z*!7tii7IC&&a@S~xi?OAU}uSU+NvK{#)>_#v&6fsq?_>0vPsrIpUeTfKJ#h9tR-Ij+S(^yf{OJO8edepmfQ-4*n0v0}NvLNhK9s0(cH+YcU7wjmGUGsI(Ov8i zyvDE3R3vnLW-Bq@fo6~VVUy`=|1+zvvg|CIpmDeF&6-M94^^Cre3$saL^o`uUcw>NlBNyT*VPt*gVu%YsEXP&Go}DUp zgiA92tFsdia>X!a?kw8sqluEHW9Z++?fL|XEe7g-^>WpWr@~ItzmbdRM}Tfke7S8y z!>h#bn(n$$7$%G?Q+);TnJ}_U)nX9O za-hpp4v61`ky8`<4`yi{R4!A^ zMd_7tw@mdJQJ(-^riu=sUV$!Cb$~b==rUFF9aJzsJnm8~mZ|1oL5DDpqT!O`^59kDS}NyMEhAm#K8QioV2mEFv7c&oybk zOeL=B?*I8pvb?bT--jnocKsQ4@1}?=5=Hk*OVTcg;w=WcsNv-pl!=`0c8LB+YQc6p z4?AOQ1s0(<5=H-bV>^-h8))y~<(Psv4W7&T^M>mUrR4x;_=(W)5Hb8#qUcN>JDSVm zkU9paVK2w5z-fpH`FX>aAUZ$|>!R06Cq@q}hTlopw}+=AF%@Xhy$tWLW)=M@qMuYl zCX<=V_-mXW&U}`rT-V8j_B$XGS(mWuI_pqe3v~2a;$-kOA`?z_YYt=N0pcTFyv&>U zHA}dgpDlp;n;542ZC1(!VHZ*M04aaxQtpPuE6Vr5qKn zy&nzao4Iqb`*k99#1t+?M}}^%qO%M{TEPUv8Djb;4^w0Q-l;oJQAd%LYr>os(>UL!1V*hVAC`26d# zy@vN==00GjIKMj0YQ|HcX0>Gf^=N7j@)injsFHk$IrEoIn=c4D%JNikGMT77K0CQz z(b_7SO+O;ni|*mcM11fmOzo@LqyXG7AT+fep-6GEGMjQmkIvGCugPpLc z6_w*%1M!Dk-TS5{I-|mDm7^0mG8t=pJ=vFuW*2l$5WU;7^_t2AViB^dCz8(y`J9Z* zI1rWZ?N&H@l;}R}HA$wQMNaos=Ujs~7dhQ0JqBhZ(0$d>fBc0Qf|B1?{UyQKfpoQ^*e38K^dzG*-uORy}(A0l~_yK6@h1W4n0Io2HgoUZ3Twyw;I^Ez3a~KM( zftu?LaV}7E*Fjth>>lg(VPRIumF!&HRj$75v0jMG!$9{~e+TikFtW#bzwu1MfbOyO z25{Ml0k_Bcc%nN4-D6!2F%~35Libod2zMXQJ=Q0$7iFH8tSl7Ou zWlLc9SdVf#B~Ir*_E_&Gmc7UND6F*?i}KSK7VZu!!&5eravf7VM=D0zNk4S@0Ik}a zAZ`R&wU0wA0w%u5S*qU(W~F1?_U(t=9VcU;_y>+@*D#=ek{f(Yc!Ou=aYG)T3<_@~ zWx2uEVtX}+z3c`~*9S7pW31Wk@UKv=gCvL4WRVJY zx%l{M##64wvNmx#*On9*0dY=P#&CYTuu$e*1-Xj^Tkh04)JBDH$CB@mY z>owC1I`!e9dggxA&qxNbo1FUXsNO8ox(M}420O%6-nE`_JiT;x+Q;c%{b_HZtGBY6d}<=$#TH9;25bDu8;7wm|$OjChP{OyYqEV#{2u|37++a*uMu zN~wUO$g}nj*>#56oXv=~5n;|68R? zd0>7f%cVRpzmat*A5o0aOY*HtS^dj{9Hai_OC6*Bf$P6Ycr%JVp~ zPa?L@0cS%LLppQtWZiOo!M6>35rEEB(&Y4Bz( zl8M#pzqHjKN{35dsSm6EMvHY>3+Ks!1}#YHZXH@)chlX>h~_Nf!`6h8d$$~+6Jz< zh3yZ(`n`+t)$jfCZEV;E*6&@M@7_z`NN&BXCHCUoaYxjQ2iEUh!(QIOGZ_2<>-Vl{ zC7s{9mQC`cnM@9W^?RS0AMA5oA=PzyeqjCGJ@SJY`L-_WslU5-Wk9Cu5+36-y}!G0 zzIz{`+Fn{VyFw$2|n4$MvSMzZtduN>jWQ)>|mf>+U*dx3L{-w$Viv= zJfY7@jC5&VL97SbrDbMwA%J#ihe8|zVz0TB_uQpDlI;Y~eo0}^$5Q_8nl6hrOR13- z`6aDxbr0iyB-RJ0Z^z43GoF%1u>Aakc_N|{fP2aZE|(m-A%Z`jK* zRB#$q4S#^>dzFSWq2UTK+%~^tgE#yqQonn{UXI!Qe;D3p4y!PLVW7Bmn>aDfjuXQj z@~yA>cqBRib?JtTcySjI`jEuP%LZ-k<{%@WUfg>jZWTtnxZ~$W%^09w+-(q>g%O|d z#rJT>0Cnj$xR+ODfcmO^UIJ70GD`jRS$ybD~ueRS?3|VEkJ$MBOopnMts$8LA(YM<{4_`Q$qH6n05@*S3M5mN@2uT z{WHV{Q0c2~j?xe+Nnfex`v{W=puXx!5EF!Ha4j2}AeI63Rre38xeRUbRi7x;EX(&L z^Xbch$(`$j#8=&iXc_NOKk-Lgxb;=HbDa39Z>W@ty_Sh^QSmmBw$)^$7@hvKd!=HL z{Ex5N-~S>SJKr^F@2l3MuHsjjR{M`J^%$=N({*Ew?6GF6b&?4F9n>gdY7~jvdaSAb z2^owuufBJ={D(`gq^|Xby&N}|(-0H#^M)Tr^g%VOp5|M^9B&cBC*@mD^E*hq z1$4gQWf(9#TWRQ5qPMCc4n8CNa-Kl;Y|5Vbm7eBRVW%`rbkEASPPp0&Xre%;Agjav zr2?673euhUt{^@rWiPOE!evTd;WYg)wZ2)Y^)0ZH#&ks{($A$f1uHlD)cQM_h$%-V zOl<}6uSjaQxp?pLt25o0Zth_aH*=rFZvFh4r`*MLZA(;iA;SvvA_v2q3DX56L@ek; z$cJ$6fc?6{Tdi+` zzLlu2QG69du7_!`IBNC>k;`GaK%6AZB`_l(h6&RfW--J}kPvIZy@afOoE1nAJO-0^ zl3nyqz&sB#p{!&or%*?^bh1lFkrBK7r{4aRx|;SnvxWx57;W!A_X>A>IHw zrnx(`X? z>WFXWn@tUJjUOiQepgcYx4=At%H2TiDE*|ia^B0J<>mdxdGGbYX_KJ5Q3A!puQoHc;lyg;)cWxqBe)0?v-or(R(uY@{|u)c)fN zEXa=1R%G4-YDcN-ORN`w+EJPUaUf7TO0EGOP7(upN9h=%mx;Wb+H(iQZ6GKTYDeiE zxHo~?QTjn=A>@?87)K7&j#9@>Jj({uj?(@RX5g9permA?AK_LErn5f_Q!intO}3v4i#soNT*EdapFd1tCj?zaOW6?u!>{<@&HrhDQ}7 znGr#IFojjg97PgKfNwxaGR`9z?&6Dw`Lw<}gqX8}o#tS{Sum-k(Q8_SCy*W`iRPg7 zf+Qinx(D;O0Oc!p5m#X}Bj@?5^J}ctf&FyJ^^MHCYC}h@-+uE7;ZnLI8Rn1Nw7iDY zq+%yxW2H|Xa3Q~H&&Fy*-KDZB*`DJlSRbt%c`wA`P zjy^Je_%GKN4`-0C1S*u1yhoqX6U7)Oh%0Wx@Ag>PLOaF@4_LQcWU53d^G-G@x9Lig zjmov!6cuN`rtgt?+mWqiI1XUnof^{}d8syO8ZOn@Ep@StReOUj^(snyrj+{h9omgt zh^u|g&FuhN8+ z@o_)}T0bz~@me~cNs^%?V%QIAA+NvqFLt{f{iR{2HH`Nbfc~J3ccT#BbH(k+# z+m9bIo=f0u69`QCRSTK<2_55O0@Yr2+6kQW1utp?=fH@)oWO}+@?f3>s=e*KoxtX8 zJQeUQfdSbT9^?f6{$sgu8E_7a80-Z8@eA8fN_wHH3j37lPF8+D*!q@+IF32f8GHXaBND9deggcG>Dooz%w zdt7LkBmM2fxpH5=g7O>YzK+z2O52zUD!!AzQBHO`RNIUP1d>l4<8lJeA>dRAoYINF zF@DvJDr*P;?X6)1?&sLF*g|OEUINCt0UKAe--DVn$GHJduc&B}fbmYijDybGM&;|WgQ_N^lez}Y>X=;ZCW&bDzbsJMx326K`l zd2%<~SO}ahe}~)UH$n_!0cFk&*u9QVL0lcM8*7~=-Rqki0ha`PmA#yR%I0Ue#JHP{ zWA(w7nSOl=hfz+?;^&;gG1IS4;qdF=$}P_s#)`Y#Q#i7IbqdEJyV%AU(AaTT$9lc8 zVHhvn>Yl>U>{q97)OWXyPN1@xwK_fpoCQ0uvAUP`Nx^VV~}6aOo)XX$u% zt>CP-q>OF~JcuPJ9PJODDk;cHqj$(QLcsR-cXHusGbI}S=XKWPB#j4A5ogJBQXIeW z8M{~8-QM($-9ZukgI7R zC^6~;gX7><0M?Ll_{JYv7YE~CGw-iCQFP_1^ctkD0P3prQ;7FKP{evaLv*yQF4rOy zq)c3>_$F%ylpMZMuf;fPUQ#If+jhN^6y)%YLwnf9LBQ+{^DM+hpl1&jdc(gf}qH$!#Cc7dkv_=H?rD} zd-%qhI~dk}WwlV;1|t95Rt zkz7rFfYN)SsFvQ}Xi?@SO}PazkM{>I5+&&n<-KjA4A_5aDYrw&<&pYu%bmJlWrj<+ zx0TG3{h@cnkhI?c80iO8)7>9p95B>}Ti((ZcyUA1g!8J)v7 zR(YLkHAAwQ@jHiatVZi}pbp>o7-Fk1a`;B?zP8a71VvsQzHuVlN}vwkxW?<~w-E0h zzVQgr_llAPs?zq`m6->q(q0B}A+Uek#VONvrKP}?w>-{@Nv0X~Y}qCL4(`ZmcdBtz zoKfii8nBoxp5Xb5dt58G`a6914cTEKpvLF(wI$AjL(aV2Z+}UOYJC2h%zX~j`0UEj z-JdKOpZoQ*jo!e%M^Bcnv*oJBxs$X`r(mgXUYmFL?f&FOHOCB^(?$E*9kgY9wpVFI z?@p2$WP?>F?szAua?^)~(f3|=x=aPsqk5NO_ySNFW~KZrNjlTzUV(rtBDWFq8Bm4$ zTR+F0wjr`6A}V_a^|y@)z#gVoySi}YYd$+x?qjG~^#HAl1<_3h0zXLcq>EmG?grq@ zst0L7zL%~kZ|K~U1V!O#gr5`zqjJa=!&rKsTWdoC`kOeLoLalPx07KGzCg|#76@EH z@l~yThyIs973?N2rOK@(wKjBsZ43hT6FS~2*e0i7($(BFY-0$z=I}sZi=-jL$g$`y z7yZ7vue-G_v$DFc_n^)oCrpa+h(Mqdg;C0Pqj)>;RhB3l{_C`cH0klkGIJ?EtNHk? z|2ZFT&?V6GF|S%4%VR6_h)p}p$d&79x83e{J(_bps{27l-2xf4kTVNZqhwg_5`IT! zzXr;qu3Wh>!=T?}I$hBKg2j*tDoE5fM(z0}f;B2n))iXI%@XPzDi-i53x!VhSF3sezYIZpdU z&Rc2?+?^Q~*b{mt(c2 z=_vh9<-7&0YZLeG@cbL z)z3%hR>9q3X>+Rr0sA2YWsvv*p>Kgbb9)y%?|+Oq#V`)i%AD3M%I5}rH$KdgYa&sm z{2ADY1A)01W)4J7nAtEdL%bl&beLe6!2|@wigg?zW8g*t>r9vvAyx`=At#LGB!Tn11U5+mgPlhfI!A4z zBT(7C*fVatUXtwti9Z0?_v~O?4O`T4&4q?>mDXi;MAy84&in`k7(vuo=$;1D7doDS zctRNYLWeJglYuE;=okqx6a>Y9`a;J_xTAskLdU%jcM2n4==cHRTcBL`ikIz~X!3=Q z<2P#84UE$^fGXXap4jTr(#;}12YgqRlulR5R;|LWpIGiPAe>~$85b@g50mP35_NhA| zmT?@q=Hh^Fom7gn*VE8F*-c}mH~!sHn#Nh>Yx)w;bmf~R*`Ji;Y5>@$mY7zv`CDq(tClow@v`qyVKvl{-m-x27&pBQ*ts02 zwf{q2dM?#V>v*nv8rdf$?RT`SH{?1Co9Z{XK;G2TnG)EZ(bNz(?V|%z-jcL^G{kSQ z^EEJkL#K|rRULu(EzCX;gM|4P%q)lkFv?{}tJAlL3}eWfl;!e(Z{_2qL)t1NPZw1g z(w>EQTo@VBx~6FJKn-bAASQyKSW!dTxo~F#HKe@&@r*Dsr1{bi0vXbVLJR_`_cZCu za1sG#7}6eoOxNSlh%5!F8Sd?gtw+rB<(D47dq9ch?R(EbUIJk>-61W9(hQ)oeTZj#W~uQ@iN8pUCwDMj z+I!|`U2aC8YpxIY-gXP{Cc3Y>X*7FjY%EQqYA@Sp2Yf?H($Kx<3{Pd7nBEZZC0NfX z-;70N6j0e;?aB4nT;iLPi9cRU@Ap^JH+d=(P%-}z@U3=DKa9%#uIbx7x#LPr|3dta zV!C=e)4nNs;+OCF_`lQ4S{4Y;VqL05f6w?HSy5YSHuB#jYt7Ru4BsBQmx-qDosiS5 z)MtUzrBN?^0mqrRT*;a@`mOd);tE+sME2&6Cva|dCA6Sn^mqcnfBHKdE`oBiYbrvM zLED>Qf)efA*5Bi|t`f_#J~;=gtAKss4i}$t z5u@(JZ1$90iVUltIg=LSmgQNDJPn)`Q6FuM?VP7badyC0_mocYJA}TL6qoIAks!-j zm7;sgxx#R%pqt`tflebZRPtcMo;oF-VUUy_30Rj)N-_nc2XQ$9R7-Q^e8%dhOIljl zVB7c^8Q=aTxzUZ-4dSs3RLn;Mmie?cy&Sb8figY8E9{VGN=&~?{2RcoFEK5(B-i!M zB(qU#vhGFGyfa|s+!O}x!|(u93Sr%<+R_|LQaGFVGk`r)$GaCRt^53L3Khl>G|jsL z*2``RPoen)P}7Pl7cg9^gZ8;M6n=&57n0gbI@fM$YD`gW{kYCf>*pmN>6=^qzF#FZ zY3o%(Y#s}g_A%{sT7?$0jV&VhrN74w&+u5ZFxDL6_e3%dtYt7~L7Xhi$uMn(+QwJH zoCA{|#?4J&T@JHxxNTeu`rQZ<(YL+&-3fEPo7x~9>TTFHw{F;(`_r)l)@U8#zST>H z-&w`mWM0X_Zd6t@8V2UqFrkr5kwD!iepD-&hD&LmayMh~#pNsgt{pN`B)z@A+)2GTNlD_IsN_V+sV0?!Ay!Q4*ZSqimwaqPdU3umzx ziT!W=z8_rso3Z^m@O@UYc60pr?^ZvG*3bT$|30Vv*l`ps1SmhwhsXov$NzeMbg5E5 zW--v}$A6);6*zv}tSg+6Pm*)}*k&|4VnF$EG{i6vT#tzI<0WwC0p-UZwF%D45)=6G zBgwJ&@hfCL0rt^5`cYlm+Fxo_&yUU}uj7e`7Ufz7c`nJho`@pQ0F)=@LmUBuBBDHT6Wp~x zdE!aW#CkD-C%z#;X8+=w6$#n$Kes+c*M{*&3J(Qy%LYa5oiF)BPT-~ z4}v11Jn{tG!$5hY+B4BCCh&+MIhM9jJD!agVE?hBN1V1{YgNx91S^khEAhw$o=0vG z`<(){jW21B6tF!5D33eqaHXOc}eGq4czxjJTer4 zK|p!rc!;AxFpP-u$R@aFf%3@bo=0Yi2|Q9MITnxXa)51g26pB4HM^$85is{^ zrlCc|NMOw-Hsuz=Tr`DUGhnTR`3B-cVa|YAd=TphU|j%nE5r@J-&qfvJ$QD1Bt~S> zpq8I%XO<7K^H!mF&A+$4xRm#>j&cMmR~T!y9lO@_|JkL_nxBuYkoOUT$FznS_6u5R zpz~&cej>N0-0gOYV0u)IZadxgv^SH0s>nac?P`QM#9l}kpb zPP^@&e^w%Lht`v4=(7C71bmlCdy%%-_h8%T3G8Zp!`-_?Rx_Yduk-HSZxQvz zfbTU|J%j3W;4@0^-Yc!1o>nFMF=ja6t9eBydMO$gNTO3qv{dfZAgR>%^3;cjdL-bR zSzFaaWDUVm$h|zPJb>F0EXh)54RE z{;%~KQ&wtIoydT--Q!gWwOsqlAuK7q*cQb#J5?OMbHyI|x=9qD-Kk=H=ZgF2)rlxp zyr#;rT~_TiTWFL!*S%Tmj-nm+aCFt?4VR!griC?F%88K+2Y(Mex=Z*39nNK+|Dcla z!*#d}5oeZ!AE(1vu=~gBJ}9}q*9qS)*Z=GJHUF{_#qa-rQFI&0fM3gu5UX;j?_-Us zk&Mf{3O&*J?@;xh;X6{#5$ZWebxOz}RMaUUZH$q3_eAGcUsp@6C7e&8{^nB;kr~}q z=81dS*K16O;rn5USC6;$_u`dCnH~UVw}gMKJ)1( zBfs)lMz_kTq;ge-^JM0aq|#wI7iWabK88-=Bzbj(O2s*D<)#Xrr+lIpG8Z~pvV|c( z)YQ*hCvTh`rp#PeF;UEzQx2=%RcWY0zRk(bGn5xqls-dwv6IRZ^s&c4K#J_zmJJs4 zFRN&0zD)3!#D5Od<+SxaA(hiurGS24!i?29s+D&$Todg*%DV`^zM_+J0gml%BM&5j zORX+tjNVr8O&qbhUWKHj1bvoC9sh56hTw45_xI{AIoJmgqxkJ>9e zMAT|TD7hee1OZJFV9a`cFkbCk)>e`+yUmykced#yx>ORqGpR!MR*B9jESKnU!gP4N zlZrX?CwUemes>J+OedA|P^>?4HwhS{Qi&hkolWPx&9XA`aI55DK5W+kC>q@k$#CU; zbQy2(6S;}VJ`0*9V0We3?J$DN=9QT$T5j%k_?@Yake;=Yi)=(Oi3FzFOc7>5S&cBp z$XYU1_KjI<^+ih={l?r)86Ej_mZ*=3lF3;`ee6c9BCBPW5+#+TqBfWv9IejWMJ_v+ zD0z!eMV)I7P*G#&&}_?A)moPjgM*$E{qDk^O(LMt7geCrCXY!uQFTsi7TXl(9^d?$YzdeBXWus+glEr1pInd@?! zdB}GoQRbBC&&z+4trvcKDC&-%5Q09$Y zoc~DYCDKt3jr|>|6+qo#+XnF&P_Hx{^f%j>1P(nxYd?Yx!&S)>z()2g9jETI4U!6y zFR#n5qw^nW*>CGv@EokI0@=k{MrJ`{&>1m9V#5%m%p&jIsVnCe4V z83OYTm@^?x0@g;DZ4lppI%%@5Ii5MdH-Wk~k4PTmWy(&6;zbaU#_NjN#(KoOcMkU= zJ`L2HY&nPw2+9++>UFl$;7$SjdP?5+(|K>D+|evh)3(+v#_ed_3RKSDhIm65DO25a zR_dU)6vObX(B|andt=ZbvU#Eo8R$8u`dx~108tas8xPDwVOBw$F3fD07a*Pj)nZ|- zmqnLiuu(r5KsHJq#ah?HxHtjI+Hi=W!icpw5VL{rB5g^XC!%gtUadpQ43{F`j_tLk z^`qF9TVJcuUIh&MOsybCmF&=-j6omJ*~d(9^si?$k)OG)xCJZQh`JXGw*%9UuYxmJ zQ310SW;(>d!0G{WE5r?;?;bGLnp;*{DTqG_`AtMdzzmvc8wp^^=XWoKxJZ~oVcvvz zRhYwJsxsW)2dPCc{f^aM$Z?p-NCi(Q7PBLn3{dw#|dRJm@i-+hImkz_hCMQ z_z+m_(Fta$JTRaO%pN+KuG)AvEL&ZP7>UGi&{M|Ku$LK^Dt9weVZT6eRJ|U7_~F3l zxdENH)@h~Ou`S>aw3h7p@F=D_^$Q$O_qn9FYr!x!lfavjVrQ5?AbuC7JxuQ$#RXOjW;DdU zKsD^Vwrm>KguaI<~H#WnAmU8vdts_(IMb*{H)Y=l@8D%NX;q4tGnpe;r~?& z$yoVcB_xMX8or}T^5;KWGa}TV-Y)r4r{Amf{-q_NL%dkNXj&3JRfpqm-&P&27S4k* z5uPQ`A^+AMGuLh2ipN`s+Jdv*2IdNwfqD7}Fi(e>15ps>e3%Cz?iS`Im<|P|5MbR0 zGXvrfVV;Cp2XQ_a^$Lt(z0cn-U_X)gFJSr?ZKD_H_aB&NCpp#}R+OO%iA#VwG-kAxqUCDJZK7=ta-Ji66w!@<%IdF0OxxHmX4x>2Y{yVPBl$F$5+WS&zplXz*28!X(0kv9ro*YT>k4!S1I`9eD6T3rNl z-E|-0@_UK;oE&`&mh^oB&RVm6rS&qzuCwqBNWBX)Q3NXne9Yg$EU)F) zA`V0NP%!#C7=u#w{T{-ctky{dtz{Z6a6%AH8cJ~N$WdKt3ofZqIU&!vt0Ov9yG zt1fJhkyK>peGH99L`#j=13e{|a+5JTgzXis(ibRvrj(=%5v|lpxnrtX8MZ%i%TqO% zZ5g1-lk^gDDK~dsd6LM+0o|^AiYkgB_xUU;P2J}kv|cwNUk4qn`it$vl0gHObDW@#*zA~Qh1Ba)e6lA|(@Aw2F!zO72XVeIlVHAq_)M6?V1~@I zjXi;N0?b;7Glf|N^9#gx!dwh9Z9YvAq^^dUxP(9E#3T6YSLc^Z)Y&i%mvTMcuCmRZ zpO7P2a<4%D7@&^)a0RWusCdioE0Em))bjf|h-ZLWd4C7-EzpmieC;K_p0IZN+Y2N~ znM8M4z(N-Ie%2z&yZ(`yTgLRZ3R!%ruV&=cDE~1!T2|ios%Y-WE<4AmDW)?uCQeeK zkClji;fk)`iKyJ9UdYh&sjEP}$_T^V>&fzm&DK`6Nh*b@YT}zFYQ~`3PU6yr+v4)m zn*-GLC!bN!$BD{O$OD1-GEA>#oD9tOVKzZ*6y{5qHAgZ&0rO{=$t`U40n0uaorUau zfPU35Th4Y8N_Bv4n423xq`Kh9_ z`hV$EKlAt2-1Dt_Eyw)=^)mbH}l4nJMS@OzMx@O0-t>hQA9DNF@@X$z^n3#=NLZi{)d5A+McOw&r{ zFIbpGXaTep##gJOiVO|@T{Uwp?K+QHXRJ^yjHfSkq+GH2_t%UJMyr*iG;y6_!{;XG zOyU#pba=Is;ZZEfPy^~CF*iAb2cy+z)WAlg(xtOf$6@K8*0Ej4dyk7=Y=^R zX76Q;i@>@9=4yy_!rTHATF#mVq#lIn_auLwU*ja%@Dj{=ACub`c`ib%t0y#RG#G6LHThqs^rPPTb0VwOT<41RG#Fv zsGJ%d6cLrDg>dtL%9DKh@i}26Pl02R1u9QNA@%{jr?=0OYVxkrcsg6h_E0$?7hQI< z@0GffCSOE94^)#s1L8Dbf2CD+*5o-6Y$dx(lhh>Sn|Y37bvGK7F=zuFVg0#I$XVX% z==yI+>~^9a!uBna*hZL{D_F7t^97h|ATAQ-Q`5D$at z?P1E+7*>D&Z#a&VvVoO=Sp#u~FvDOzf_NLG4uI)5l|O6O8tON(D~vHw4jwfcGSHj2 zJY7mYtt?Fbc(Mi>PJo%o#aSm}`kn}*ZXv9Oc!KChK>1V#(xKWa50@Zpw%NVz&aWx* zWkgvgaH|11a}CTam>e)qg1H9b3SpMQY=wAFm?L1ip2*!Rpthl0+m@G#p?~K1-P%qd zoz`ur15ug?4F6J{BN~uu_cP^CnM;Yk1gJx0Tp2cQL`EMf^C;09f&4}< z!0vI9z#@oG3H=zT1Uh*MY!qeR?tN7PZBMd|Hb5od%2>vxk^~||Hv;+jZ_{R^ov)*g z)sk$BH*Bjm?i;B6;#>f%U|lw3ol-Ys(@uWoy7}9v@6|-j#Pnofu7mjw;!9z!gBf!& zJC2}QZa7ZT7EF&ScT5@PZjF_DeTy}jP2WKNHK1nGKOlYwY9j6Pcdn3tvjCsrncGrD zb{ZS)^TdQK!1qUJ98e2ZSB^6vw1#_E##^v1MD|EAY&6_Ot}CmVVuaoI0K z`A((JibeZSKE4QZ4lt`>5~p!h4pbdJqb(SQOL=v;up#iLv&Wdm@w)!G;i-*hKWjL|HvxG6YWts!BfeOjOoj z;wUx&WD$G`@fV1URLQ5F%n)R}DtVpwmw`_{`YAuRO2k)w9cFrzd&AIdZZMV4I-J1- z29(dnL5vnge0Cbd$-wTet$0;3q@+rUBqN^%m0xR>$Qyj-GNN9@z@uXEB$&dPT-g9~ z4b1Nl+kmQ)w6?%UIW^@~$yp77bEJZ$N=`eA8}~p}$*mAK163t&Lc9)~D%n>X;bD34 z=Q$1b{bE9@#9UyRNm3?jR@;*3pEV33mdp{toje#D9f32d3|N?6rU{G9u6SGIfiX z+@+0bDf<&W8mN|XHN<)l6baQ_euVoL$ZztMZl=78Nvr zWG@$ab@G96%?{%K$H@nOku5#>;7LqAuCk$BRezOZxy~JH)R*xoUz|+0IoxFXBx~pj}n} zS66*3)pSy*G(Drdj=2XO3cm=!7SWW#Uj%W1tEmeA5ZnX6lEQxsu~isx!7i6_ss&IkNa_rmhD(*Y;Hh7< z3x**-1Q^kaveF_RJ}c3TiltC3}gIHx|!VO+#GXiTc0te#?L`}@I=(= z>zsP{+O3au`}~)zq={NUHVVKx9OgTStsu1sW}-Yx#nzzwHRUO*n=j*H1gMj3*J+c6 z;Zi0Gy`{uGdy*jJp~}O>O1C-_Vp>pRXXZ z38-72u9#)GluoPl$%CJe{SmaL6k5+YA%HzZnXYd2GTcfzR!H_}NmepE0)=5fOtr%K4QL{{SlI&pPzNIKg^2QlF|r#6DVQ&bz-+dA>8?Ft(`eQRijJKeQzt zW|3kZZhs}&lO^@P$-p;2t>0WRz7>g>x1=8a4=(sXc6^B|$hIp!jr_Ht;fi;hJ?&!* zZi~O61bCo564! z#G=OPj(^}Px#+(Und^btr#xTFS%ynViqy1T8?Oh8;rWg2r%|f5 z1Bf!^kN+y$_yh5vL|X|$jwNI%=r;^z;|PRdo`s7RuSfP zh!=!e2s7v!9>WLfHL-w~t>eV>gvLP6Kk=PhWjun+!@y9FGsir^TSV}X#=v1BDBbQe zggyfHwOYpQb~GvHeagX}@-|VP-q`&`QI_{9`(MkN8K~#LHb7hef+D7#|LSxd$BcmJ z-?WK`QEY9rbZp;`I;P|;%jr6ZmD}#5cUWT}D9uqaTf|rv*!O4|H?vE~tl!juvJKk{ z73tLx!@s)@eu$}Ij0$$PO=Ryx?$hYqXSa^kdEpdYKD_eM^-d$GFeXS=mNfRfTCyUI z^D?rr4yZbI<^0A>k<)ji9wYh@KqHZ%Z@JC~cXUN)VWV>{&}T?|0_?MOyjvz2_xKGu ze+{kiCWpDr`Hy=Jx0aESYl-T5JuU~o7M!Tm^z6*85vRtl# z90lg_Fdsv_Bg|Pa`I~LyZ@{_;<{gO5Kz$$RZf(vqdN3k&+NE-;Sd&(2+`=G-m>NP| zG0SkNayNb5V*4WA8?Y*oY;M$cxiApBWz`R3x2e8dezpNSYGaXaSOn7g-4(_I_MLP1JGr9QLq9abSoIINAvTZ5UMMQl}GH*({x5Au# zD=RBtJ_ytEHar5XXJD>{IA568VOnlyw*pvOVJh$7E+VkLhRHxo6Xq9~Cm29V(pi*3>HF-63296VBa!$v~2)zW< zIUT=2{348;)6w@H`UX(vbQ}ON9vF39XdAv;l|#7&x=qZ@tEu&2PTqr9giMPl9RPC~ z#D&5PhxrEL3t@JL>3=WP2ZEw+9YRPJ?l54@g1H3ZB9K}LW4G0*J?mWRl&(;94aqq> zyJ#tvEK%~bG_b)>p5&OF$FTG;P{-{27vdLT@Pg^1-Y_An`vw7QSb*y36~z_V<`N-TGOfY}=Owrpov9eOm)vm8dn zJzr-k(vyM8?_r+RnWa|GA$}FGx0P6xcFYJUzq(_nv)P{c)#%nO3q0P2jGsr$i>N*g z%+p|Yc@P(Zph#I82$>641YPbZvBJ}x5`Uy^K0@dlL~jD-W|$!l@k|adUw}Cq;xyox z`U>~cU@`h@wliRG|#j8I49=pc-Fj&hI!UJx144WR+!A)vZyKmj3 z9>>7S7OQIg(k`=r$)FHXWkyo6nyRFQf+T8*G`lgM`Gt8Y|u z)lbU}AHi*odz@6(daIE|)nso9QTLG4Dqv<|);!LW+`wD_GxABABItcIjCCr1K7ERZ z>w$G1%+=3u>NO~r1p3^oi(za_Gq-;cu709D35c1!pS6uWfJ)%M5T6PoN&og7N5Fuf z=vb1#1^PpyBr23+ESpSKr&yfBQm|wu`{Q}R{0P{VV z%ONfSLDA`LjbsX}{(3WzloG(^af0cZ`D`BvREQU3%@BKu-FIO3zt8cMZprd+x1+q}ekX$0 z4)#LX7il-#Ri209Y*Fs_z+aX9%XO;1QtLBOk%plj9G9!dvvp*}9+q+Jc9GmLy0OF& z*XT&+hK#ylq@VWVO4=^d342!w{V&jWTO|8qXHXH^mSN14?0*-oEJ_nQgQz>n`W3)j z33J9Kj!OmRLYP@EbL1W{4~IGP6<%fn=Akg`VLm1 z*RJflpCWi8=OBo~i8>5eS(uL?-Uj{V!(4d3p?-DW|J^V~Xols`-jsLOwt*_jJKz)^ zy?>WS?}6D3=5mNjgy{hD0mM7Pl*5GH|RID(1#rkj{ua1^Gu8%m;oJBy=6VB6S)H6lf zoG52aTh8}LdCEvXG|OSCi2J+f{BIiM^cQ>@> z2CpYh?xM5ljcRJ|!0;{BO3sr!L;G^Y^tR(is!09Jbq`4oI*_O-cxNIQH50}dHBbJI zU##U%u2Z+boa^5~eShX=fR2fImhP>=QWH_01R>X z>tGD)I{qHJm5~pOx=Vt3KgQqQoA@*8J>f@vp+bL>(DHtSR`JIe)m{DFUH+C!lDH$BuD16mU7s?w-Hdgu~9l2NYAzfd68TUSH-2eJ_EL;aQ#Ud6(zUnZ%oBmG6B~mxWu!*Ss$R)a8>a z$N6%|c?;Ab#P1F4(YkodIP9i zz^)v9P~`Ltwf_?Ro7gfMPQ>&~qI%Vl&Z#hczF|8BsHc5ebTZsQ7WMBcod>WEBmQq9 zBUdL&z4EO_#&h9?#IFVREjzeS%?nP2pP*HFphZ(&h5ue@A54~1g>S;li@;e>J)uQ8 z5>E1DSJ`VtP^Ocg5c)yVT)&ev8=A$XsO-~~qArGM`j$hFf%-14p9l1uUzj`I<`qk*ySQf%eIiiuUqgHf)O#haJl$Svx&`LL zwCB{5o@}nBzO#)aP@AhIf;*^q@0CnP_7I@<7Egva5vaYz8z8O&Or^5PTIFT8m2%2V z@>?W%*<^hkg;#+x_g{$LfHK$Xd)fwY3e#O%GYyvtY7g>V+!>v9Va6ao3aG-kf-Ez% zva8}1W+h_yha{s6>%Ko=(L6{eNag&E%NpOU;3W-AIG0A()l0}BM8%r!vl z0i5sRroF-#H&T-$YVYfU1^F)S!N?p4)OT^$K%6Da1;jiD@eEMk#dQso8*ySNkK#sl?T+>ts9A??LHIZ)rlJp+kTfch@(;}DMm=exKI zv`$CY^KH7cO_NkxNw4>C{>0?@r@x4mei!$1tbHmL<)_-oxt=pz%88_0BWwNAEyT6$ ze`Hbx%C$*|I8d%V6yk5d@LjGg$)|9AH)%#bk_-DE-H~PD^>xzSul2jQZb+Fi1b3Mo zs;pxqW$EW9VtXa9pOo`B__@QgTy-^EN7rsf#n^>e;U*Y0E8NJPuccle-y|jnR0Tub zF!?o6_har}U~Yxk3h{w3ufqiXL!$xaGcXMhdkFI&%z+RSf!fA6TiZ4bmvXyyz3rS` zu?*2AfN@N28{Y0I82=K6NKPa7M~| zbqc%@BPr}r<$Fj{5D(V;#N(5|Ub2JsO0wslt`%ij{5mSEJGtnzuhGHY$4b^apS|5~ z-cvVH)N6}Fy#l(F>k+eem7Sn=)aX8zY>WX;o;PVF!`LW!j#k-oL{ReFg3x^6TUU~2 z=Q`(otz{Y8L~Af}f@}VIG_Do%4G+*1da&Qt*qwIqpxZ8_Dmv-ug6Cq1H-}gG+9IQ> z;#E{%0;(!pIX+vCoL3d?ekLB+H17)e6IC9$}ca@#%)(wSA=2+MFO&+ms+b-D^eB?s*OO+@@m!62fmSX<1n!c0;c}aMn$KXfZB`B~$NLcHAnN zl1<482<;Ely2+K}Dn{h=x@j@d3&obxgM+%dc?n2_W>i@R$f8|(@Wn`72$b(!Iltjj zeN`SyeD^T24+6XQ4oyf#G-JZ&dZ<)ywj53((z=N9yH1vk+6_*4z#4LqGb+l4vU*~1 zCm)GT>2%~HvG=wbw7=2eVvt0(H|D43?c|HIy4~HQean(wQ|{z$URhbc3ztw%yYtr1fAFxg%w^<;nTa@XCk4tcTh2S7sSt_JO$&;_t%j4O94y12cg& z8RkKVTZNekbKvhB_X4cBFuniFw+Vo?4CZTye}R4{!Tdhe$->0ZFoqfC@9aO=R|R#K zz&xq5$ezM{lY@Y3U+Y5-HxctPBF_NxahS1xk{U4Yfq5L_K4ETz8Dvzj@l(NhJLp^Q z67m4tjllX0X0};j6oB<_m<(Y&PMqxU>*i@Kg8W2C{orELVkq%4)hc&Z+Z@J zsY)k7BV@MiB^JfVK&!&o9VqjYASQs`V$AohHlQxF?Uyt+)7f@#Hl|cUV{}cJhD*8K zB@}7@wVU;0uzQpwB&l8vaV1c>egWbcpo|@+jd7%crb=@CmYZw499^Jty&FV-;N&`| z)tp>U)SR1Z>7E0kzvl7o(yVJ`KSId_fC~t!3nL^gx0C0T5KKoT@T8I+Ik&HTK=Q7l7!!* z!zqg|t@9<}zR@KN%jC~i(=fFjGo>`82_0YQOU2u3h@n`Q0`nKd-i3Gz1Vzf~Ky)X& z!l(v4C%`=8S#hcMx+!&w*;k9j#YpXs_&8w7OQ%a9T7;Pna|^^xz&al0b%8sRiWGtOrRJhs%D;BPGES6hT()^txjNheb>2 z=h^LLl#=m&ItHf!yS~I{Qh%}pP}^Cij^NIRrrZfMG~YhRwR0Xe&J{a>9qdR$^R3ny z`yO%o7tP26WUVbl-HPz;@H-EY8KHx?WhxkcQ+?>Ff?)`Tx2p~i|A%TtE2x={#rx%KT<^=wGBH7nmWd`udQZAS4*Gdwpod1j7&vudWWw ztTPP3o?W{P-m`)KK|{!@3%y#+&3rJXPkm_mA-tsxh7YI;J=@tZ1Z6+fhc09m6f~vl zLwg-TLSR2+o;;8t5$xBuOK1^#g8h2dhK?C&7=p3!+R#HyWE6}|R)_lS$L)TwU$^?u zkwXka&{SU)I)<@XQ2B6u=-GWp7Ywhd4pkv57+zaF_$FK>D6`F~(59id2#gt1A1d>U zbHV3TYt4-b!w`hJk)&YUhxH+=KNpFh?3?P)7UoDn+3!`MF$NYu*>6>$^Xd)0j6`<2 zLgReF@ZG9Irw%X-!SI1qp}GCoum{8YSA{OYo?zJdyM$I`@iQ3Ht3H&Z*n*}#t3tlr zX=z}5y361}*b@v-k^QaHxH1C!cdidL`&dDNF%9*hTMsh~LD{eMA%7d12N?He{ovi> zoaX@=d}j6Fa-1V*c+9K|t?OnOf&=>24_-=f1!Wcy*HJD(xVk=c{a%J4i1n@y{ct!3 z9f9Fh_03cJk_FJ)7@Ual3L_ZTleYB?dV)Rc>O%_$a_SH$`?)Ga?=%Fl?)9OSG)h6k z33Z`v_(U*t-(5lnQ%1qihK`|UyHJ&2&&vAHBeX-op8e}XL#Rf=HNeE-RU!KjE*8MV z5!Ioo%p-zvm(>scAw%K8fPs|q=mUAC8Vqk+J^0-*jI?0f93s{-q6x~rs~@~}GBg-> zLs@<3bn-7qbgLh{Z~%S*1IC%12iNaw7=i(lO>^)Cy$nMzZV|ozA4hO=9gO=C!+%hn zf^g^h!K!PBTVLF4nZhy5561ZCgXhaRiqAt6wd?qt z5)h+y?<`;w#Cp_+P9hn>@D25$r>64iKNudY9(?&2_V+-;l~#S|AjU&M!>T%FRU=YU zR(JQXI`Vq@38qn2zh)S1&Wg8&m+xXmY9^WY46~=yO$|=74-T3&G@{eElByzxW2WMU z)qc<5UUoV-#x>?6+Hj)%uB501{$dQLmFn|ye9)XicG^nT*t%`!7!Qi^6jji^RJx43 zc3`FLC68}KU6QJj@d8)l+tITR&Ybk0;xcwLm~PqnbskgGLs{LWjaOjaS>(nBDTNx0 zeLC;md478(P6DhJwdYi|i068G>1ikET=r_US7p-pr0#hvgS`9QTIB%<)go~BuG?ox zObw~OU|44@3E^Y#K4~X*GNtqM9Zng z#vrZCQ4g1D@>pfi6r)k6c?lVl0=AZo!)0||@kgus5~T&x8A$3dT{BIkZLAv^N=dpE>^Sn8B6UmB!s4XrVQ zL8=Ea$8J)ZddnXOXD2l<7imA2{FDo89HxRXYu6zIts%~(WSoB<(uG$pF6BxN;6Rg1IgQ@ z?S=#VeBgGzp?yyF(lLxFx;LpVz^I3^!+n@;k zO?MHM-9xr-W|F@{y+nnZu0~bza+q!eDt#HNX6TZ70W(X>)0$qUw5GOmbC#4CShX8- zUIMm^0{K!_JF?)W;0&Kd-EMRDd`;7xQxy$ z0ZUcIZ}Upa;dGq&+Mefv1>4Iwr9IynP@1>v9~eARHA%a*;kW4eSLU4V!lS~HnME}e zO}fwGa{9*LpbXT`cqTbtLTwmJcb2roF7xV>251<3hPSkD9o5=+Ww1Ni6OO2%;g~A3 zZ~Gd0T-Wwf>NvZI$?RBZh?1!ltzAmeSt;`e&q0{Flll$gcym{Bc7jPgl@#+tQ)fZ< z#FI?zYSoqv<7Bg=Ar;8kKWJM1Qr%OwlTFdePbF>3FTOd=j2okBWa^gYdAge_ykzeT z)(7r{!qkq$nWj@%<(9KlqP#_okyf#8EX&R|OZtdjF|0OQhXZlj8gmyqwOUx{F&jZ1 z{4g8LeL9!UdfT=Cb0sZrUXs4M)@*Ggcid&J>y=(L}MSDIZNIGsS4uu|G7QAHN{Kcy3`*p{VU5 zUueoC61iwTlF8+>$yhWK%_P%_STT|-#3H$5ES^gj)2U)K8O@~fu~-VBbUK-eCt|6D zWA~uU+}U}W!?4W4!otamo9Ak;#IosPK9@}t5{Y6omQOcjlJRgN91rJW(PAo*%ZHQ6 z6h(;^sikx>o{MFpscbG4ZYm~{;au9WK4DpY%)I6WEsG93JkuggP8^;urlW;;HW_Xz z2NAlNM^F}oMV6A!lK;at+ncyPUZ7OGFJ%aabYB$jwK55e5#51%{LV@v1lQe zD#r4Oa6TQ$WztQNL?)IXCS0VB@|kE#dqs6kY&Vnl?CiO-7cFGiExqPgb9g7gOPE7>|bwnM5HR%f@5H zctls}{)MHw8#z`p@mN!)kVwZ9kyN%RRZK(@g-j}pY9SKKL}TQW6cd?rCef5n=5cu{ zm&~TK(MY0LOt{{bTskeqv08|Q^Wj7?Q;0>=Su&B17Yl`WQ#f6SN0Z4+G})A+AlW>P zKbkH! zE*%eNBjJ29RY(_dg={uc$b~aFDxFP6vT>>}la1tZ1==yaBNnCB zkyKMM#uyS!#3RXYrikv{^?e0Q#M|VH8s(OBk8b=FBy_dBxCt3 zuE^!0#dtKIP9(xf#(Ju~DVC0;l625$u8^k7Cf$BX0;=CnDlA;IphfqaRE!Me=YJZ(N3jnTR@(R4hQj7OqT22Vy0Qc2_(%3};pI3Zey(CM2J3C1tR*=Q=CC`d;w z6!mb({4kk@Q=pFKIMqp~V-RQ5j>b@7e9PvGxH}!;AGTv8L1iapB28e1HbfSpk$f@{ zFD5d@xa$+A2_D2Gx}ZfG;n=0a7SEoWFSIzx6lv3GnSF9unoW$!k{(n{G{s`YF#Rgd z*c7E1g^SS$V`DPGB%V#jLM0k^e}n4MeXw#-N}U(7VoPa-*5c{ZG; zmo?E}^Nc3hXgWd{C7~GoPF4x=B#kCTp^NckBwf%g{=m!-)>&AKD(hM`k_M<@}n$E>z;V=_)fCQ!r+@tGdJZJ!^t-5(_*@*36B(*k7!J+0@BiOa`9-B9=;YX%I6D3(&1VK zI@2=Cq4&;;hQ79c-+zQ`<^-x^22;?|Jn<+9EqmUXVT z=4B3?d@SIaJ4Snck%q3Ov-x6+}yHY(SjMdVm^{AG%0!$J?1IJf^TWALp=CIovME-~vie~ektnd9 zV}TK7rew~E6!R>_ni!k7Fv;Z$sT2!~WD~O|eJWCn#Tn5MrT|<7;SpKkJ7rs%X_0YI zmy~d?c{VT4WttaqE#n9_FQ+X!WXbXe?=&x;JG)rOEzh}<$Sr7D?)e>&?Heiq)b7H? z&8=zW3QICNL$rJHLqc>YUS;Kp5cgwl)&=cM+p4LtdyRU?`Nl({9_*?owm-s8OnRj|!_QNcCrXLQd_TD={j2K6O)&? zQiq7ut`sCiqDEPHdBrsOtMr7hHY;5r$&wOa*QvZ*Wlgcx70Q;PYwT1C^NXEi9o5p3 zIHFR9>#V7EfLgO_CAaM^v+be#VZyAKs{Zb+{x+z;Csdf7Bu#U*{Bhz5vYuf`wn}(uHRn#g6o829j zL9*QJ;RNj=^dj4=rAd@qcA>)h&t)r}c2TJK|JZvEIIF6w@1M)&9PTi^P*oTZutd?s zB*r*I^E@%?plP-NYc!7C6vtF`WWe4AMZq?9u?*O-0b-ZIULw|LqS!lXVl46f{?^{- zwz*S$G6Ku)>e^8zQqPxh*V=#8vib;Iy!=qql%ad zN%&hDZyc3OiB{)vLSt0k9+mK+UcaEGwy1n3N~|A6Zb&1=heoLdEz!8cn+6Svj!!{6 z4Z;SVs-tMiiUx>B#C@W^q?`1K$J|fg(o8r7=}}EQPKo?b_vmk%^;B}dYP90dWQQOQ!G{aPbXeRH~uqX3gA^;%hF!-+F{Kaxp9-c5e>I;dQM1fd$|w@!+^7JC?BQ_a)#! zmV|{DI7YhPdT@*siysa{fxBz}hXLz?OFoLCD#$I2afV!(^zHj|VBk!svuhuV-S;Lh1U#fz0g8>u#{ zR?9W1S;Do0_Ze!brh8FKsR_**_w?p1v|s8j-K;S>IQFac_~x`ZoB}H9=FwRNwWiwF z$UU{WeQ=kB_anpmC&T;8c`tGs72ZD)-d|DhenohHCGX2AKO*%0a9;17d=()=gHI1_ zb7d*bYXuYA6S(fzA+fwCOkprtdo3)?RBI}s^eWFF?cYhvWtcS;#pgujZpknMoS0h_ zPpOU21WMAAqta>^S5s7RXjFYjRB<2uw&g)PCVlEIXaYR zP-NJ2^bPk7RfH}p0`C$Ugdd)!`YFbnxHtQbPuOTXN*A1(0iMCR+ z?smri13ken;~CV0Up6xMH0#9k5CdUbJ=Ex4t?7!QkLpfM`Dmu6N*C2yz!RJ!t?O4#YCWU7g~lKB0=f_Bm0CI^+JrZ!KS zB-(N<&B8LP@<*!73RTh@Se=AbuEs2*kpSldm{c?@Zb>)C?l?GDSv&#>`A0ETcW|Sa zZ9_Cl+;)m!F(TDeuYT5z-JUFw8<~nbS{mZt@@;5TwzY-<()^aTE@(|7>PFVlp!*#( z=StGefNP3=|5kGyg4z>bY^W`+Q`!hiJD?qKpiA@Aut<|xM*|YCEO&K{HYc7lbNU`1 zMau5yG!4V?GGI!OqlenpYGmTxQT61gZ2hR3-nXXL$&naM8i5ZOWTpJWNp0?O`N+-eU3Y_bAysoTG+5SCJv zE7d}tYFu@#c$Q=dUw+-xB)HH@35>1uZ9f0Z)@S%;QRNQNFvw@%qG(VCRftciHaAy)r|=Qg{f9^ zXgmev7D?8o(v9`alc43F)OWUVPQTmGutLS04D_;ay4q?&ZIHjv3z~F*jc91J8F3(C znOjpZcKfb~%7^8^YKiE&Ct$TiC7lDu*Q6&2U>boar#jxn>I-rshDJkC2(UoomN>m1 z7%&{#PB%4E%Kf6jj3(h(y}P^ET!zQ)!(=We%x`VVnahOO-N0M`;~ht|YYeFV?x|F2 zP-WBEU^nPs41?9qWz=N_NWfT7#Md&l3N2AvJhpUAQ65i8gPRe9nvHv zR$@$Iluw2^cK~Wo)T`bwW3aS}zRTR*f0BLyiZ2`letR~p_jmp&LBC&G%@RBThKV4E zR|u!lIG=(7Pe)!3lrVZYv%Xa|p{jO9Yw$Rf;p&ytSD}IvLxpxnvD|A?ssZTroxb(2bj+Pc%tiQWdoF1of`+?6d9Jmen(vH?< z4LRi=WW@IB+H+f*8~iLD)hwcKGQfzjj&lDJ384IlUczLK2iG%`8E&&_Y(c!EpC5tb z3KKdqQ)+T3Jw=34BQbWcmQM_}JZ069e(tR!I`XIYkxlQ|?DWn;NpT+^0jCV}JGCQO z7(To%2yTQq!s?9hi*s^EW^vx)t1Zr6xzk~edkFt*1=h%!l~>R)BQ>2UwU0y|^ZTi- z7qxcJ)WZ7^md%@>%*&Oxz|d|?mMZRQ=@2R1#e7zCJBgkS<@;-y?|g1(p$gWcOJ!jY zx3p9KL~1d+udT|=`klR0}U_+zUTTiDyoU-MQ=Yr8Z^n>)b0UEJKjVHv2m56j%)ppuB~_ zgZYRxnRqbKkFKOlj_-1JHObOQF9jaQZYP@3VBcC#8fl3;Z9C%(jOf@e(Ru`F%w1n< z7Ob)XZGY(b;NL!hYaV4fRhcVqj7B(aM23GFJRZ#Y>w?%=ARn9DbR(sf`%?FJD|Hj4 ztbqsYQvebZOS#Uc2Q;_&xjuVIYqJ@xDJQ$U4IcZe28vWQx70`5#O^*$KD6BorX^~O-EK%7 z;FRAl?|bU^qAUbLzfUnCTF!Bt^w}?K{@fA1V^2QbcW|foLWpTC!urm{xk*>7O8*NkI_lSGGi>s%PRkItR+rVbD%o{b- z>zO5Xf0P5mjqq%-90gW}ae4gXpbMQ>H%vH(mJId5%nq_As`H2?NYy>18mdaR>PVzt z)%v`e=I%b+Q)(@%Ew>?TG<~6U`Ov^rTF%AcU>wbC-Qk--%uAiqpR|0JH(KxARRzsQse$8$!HBKG=>r*>uVMe1vuk{lyP~iXUO((KPoTR&pjC1qJ;}19 zoJWB~K@#rY@D#>r6rXNueuH5j{yg+^XDXn1zM|9=EnB5)hXz2EZwXCWw9sg}p^6Z# zIGU8XlT5Hl1_7s)c$0{02>&booM9y^1&LaE^9tmq)M;77#CLGKn{0COLt`~$ab1PIOnF+qQ z_UugV(5I4NnVGl}G~Wsw1(1K?T>jdxxt#fA&RnKv=kjSXmzmkQe3Czxr~5INcXQ`5 zCvPs#cArbMbL=Mj*_74sqav!DZMOFJ<3%0uG{c33o_T4tmV3Tk<8Hj9wIwi^F0HlT z?J?)1evI)JRY`5oRPS-;-b-5BV(j&R61Sq!^@0(yBT{aqpon)ePS@c4kx8^`?8aqg zvTM`ZPt)+w4S^F?}dI|>UTe@3i~-J^z%Obco%S;JGQW&4?;gL z^t+!A3;Q|V`l)n(ryuW9u5(8f_VbU>&-4B6=cB@YjtTwzGpC=n!hSvu{XE-SKh3%8 z^GRVpGp(O;_bL4(F7MB8ZA}m%EYN46Bb@C$BSKJ5-=zyQ&7gkG*}TKFFL2}4f)5RG zQzy1!;XfeKF0ngvvrcfgj>pPq@S4#sTSoC_AlS1rQWiM1xTv}?hVSmzxQwKwDI4E6 zKF}eo{;{WG?cCRQJ468bZs*><+nL{=c9!?hj)B_GYe9e7>FT?ktNPQ< zvcB87I;WkwXpjvOgwS6%q{Y7=lBM549ejNACKz`SOz_yj5_&KEIp9xUUijf{1h^hv zLo8faSdHE{IWD%+uUTx1QKU?3)kCa7ri3y=B~a$%zp(FsC;2XW#+jG;(bB1*CAqPB zZs~=7v~+rCX+*CrJ=>3#&JHd0P7%-aqos5D)zZ`bXzAR3we(a!TI%RmOHcNrrSoXX zd~$9?WU!JpE9hg)DdjT@-;Ol?M zP_1toR81NSA=KoyUiaX6tuQEafYwgZS9cIrTs)aK_%hUxRdEM}GEHg%8n3WI30&>8V~%*wA`uw(z0y`;T(X>esu|N47_V z1S0C^JJrb<@ILZfr@De^KCEKSbe!zz(YaoBKkLdKhE6{$ca0wcX$b!phOkN_SWCJ$ zag}9{7|5&K%?nzkawEI$eq;c^kkanmGp8C<(xj5aGjU!D`pc*4TRUr&QbmgiDkI2O z*o9>n7M1-lN*x`QtsbQ|CoKI#b-LXOEz~N&&yW2J0}wm<0K_;q25uI+U5VZ1M<{#& zIxS=P(Kl8`8^{YhL!)+YF%Lgz)gg#8Xb5lL2ks=_^OT@J7Rqen3U zTjmxrrIah3lx|ZZ71*$RU}N0oo4K%9mu_k6s-(b0#rmN@TfEA*fcKAli_$FtmL=!e zU(YX1>u@LcHo|7#$l}n;Nw)mPFN(S43`$Ev*%SLJTjp*#oLoVh@_hprq0{ z$xzFp^g@Y1mh1SFR+JW=8U!{a@2m8lg+Pv!LmIecYq4-8vo1D?h0m6tx<~(y26oZe zXm{-4N`sk9YjuuuAfYfHd70#Aa6D@)VMkSx-K;LXE*d0ivfL${!S0qnd5&BzKk|H6 z=dq1wnK0A5r@2VkLd%5P0HJ7Y$7cDSX>&L-GjjXMr{nf()0;`iF84FZQ~w0Q$8MF4 zo3DPkO59xo>#e~hhc`@O7J4y>?BTerjn_z=qYuX^4HSRmu6}L+T}sgWNZz3fB!ua# zqzMlBoGDa=Nsd873Q3L^p(v$^RvZlX8NsM_(b9OS1;0J|A}w}a3(82VX<4Ktj2(@* zxwH^X02#<18Ah+(XvwQ17>lf4cm_7Am_*0Ld3h3JVkh++SNkvvi*DCJe1*`HxZa@( zwdk#-v+!5x0Cnz8AHAVjX1fUQv$cEA#XkBP-m$o&0N(FA;va-{PP_XrZq?vx+`?yo z9L-vDcUW^7G_h81kWX724di29@BPMuM&w#GB`Vq5gL;-wX_AGaPb&9Fa%*m5L8#oE zG*;?rMP}u0;l*RCW;gej@`_2Opukjr=LMDVPXGzVJkFNxJcPmW!`2tv-(6A$#Vb> zO$~$UqU}gjKn5C;Y={4T@JvcrwnxMmOBaPykG3Au9mJ{xRAmqB)~prS1VS`jjtH-C z**My$cqa&r(bu}0nR70?fU_v`BkdkcGC!`&&HP}AJ;SidH|19jTxo%ISmqu`Sk4t$ zmZRJe-ZLnrF0rdah@H(HQI-_%dPo`(TPc}@cw3dL&eE3Yxt1FDZE7pKF4fUAsLshp zR~Jtwy@cqC&kc&oPGfpivHPw(D=BxGrr;S;Szny?@mP3*21g#DFN{Xz>>)DY<*yC)Fsy;AIl5;?ro zbYKiLSfkh8v$~GYKJ=M}66-#L-;49ddk`1RvS9Z5LHIOvdT2Bk znoEID1enKUPHY^zktEka@f#ET9Wh_5a(_|B2v7F5y}~&DN@?rpBStH!T{~6s7qCU8 zPSv};L=wttg{C%TVn+Q43978-tME>lyh!R)G)7LNn9LjfrHvSq4|V{b|6?1hhcr+X z+}VUt(;%gryM+r{(~~Gu;p&vndZ3z~5|oYu+5Eu!hDHV+PhB}V(GUSry}MokwL-oh z@->j=zV-W#NMYn?0DDM(Sp$Pa+45y$qSR#U(Dj?xR#h&m=dV`su_V`s#QiF1 zaTe2RqEVoM4u{BN#xMx77QdZR%Br|8iNFU21~zr_Oso95Di>4QgmU*W^8CbysDuP9 zOwCEmGUfh?P8VX6mkpGrKV02E5%lWUdT2V+Mzb&fTqxhuP#DQ!af5aEWYVF#Y#{m` zlUqt4Y>(EI`94Plx&*{hQaO-J(HJmz)2MDrG%=nYjnSl2 z@y?_U*F~#u#gEAW0+V^Ak3IwHYN1R>x|q6>5n@3-70}~Tk50v*q*aK!d_G&fnvxX2BmXPGjLl{{74m9`mcI)7}(7}Ui193QhHMm-d?+lr+IEWL5BnCI%N{(@l(H+uWh?QqNxM_8(UWn8t9%;i|$f-wmE&eW3rAxxE@Kh!5R|m z8%N+y0B`t0St@~*0CO&!L`jElDyHi7M&atuk zComf9XZ4w8CCq{=NJmEL`PjZ18jNN}26cVtfK!+bv!Qm`+E`hCeedQxAwzeRM#WlR zzK-}>KB{ccGpclf8E%_Yw1#bhlwtOB;l5CpW=hc9uw#X zf=$1qAx|g(qSl?O%wj14lJqZ-tt?ej|6opiM}K0)D;5776uY~&S1i(Y%WtX&w*)6V zaI4a}1r)1upKM=bCB2ivay76xzvdT`k~Z9ZK2Nc`m>#|`f!+So90FT9$rIQeKQ#hV zidCKW$o4^Cizj6XY~}Wzz|Q$vmcXvup$NDjAq6%euyZwX57?(Pt3Y5901#M*eHDQP z{?tip`5LS3LQJ_QC|T}~Y8?og!>In2Mf01JX0wi@xVcFbT<-q7Zt7gEJ&bRM73jA% zq|=KJiBb#Wv^W~*a2I9r@PXIP&9sHDb06Enb|-dq3O0W+{D72~wyuzeOLdohG29Av zBMvfgf}Wd5#k*^xAa2wwdneKM?Qe8~imRpfk9PYZc=kR7SqD~{VpJ2OV9N^Jh$3vS z1BfIh*SjCHinTb$i8a|iDHw2t+n&&=Z9TMS+pJfELjhMgx+H1S8fW6EN#cjN%}8&k7aGx@;nM0_K9$D1syeXQJ~b_ zW&2~|GYmW%x~-WNw7FRm!!>`oDHg-{7wDktMXNW;#b~iZq~UC1fYBtV0yX0sd|yvH zuo}&oRvp}9l}H)Hi!2ZFu`8!%>PPYZW|s`xIU2loR6$4?qd1mBTn6PV*kh@!KOmX$ z7=F-N&+uQrN@>U1$uSfilzZElUyXa4w?cFZ>m577c+DX*R|(9yd}lUaf!|1#{6upc zN#J&r#cE4h&Ns)N^dl(?=r@O`%`$hSc0PhcEGk0_#%~nwVhxqLkJV1vRkk%W$?|A2 zXcEh(1uMU+jfEBP%mS+J!av-^AP5eeiPnoH(gi9vg$;kKHWg8;t=?Y-@;fjYULG7< zs z-xU;Nx1CtO@DNB1Yf9q)q2-i&mVHvRSnlR_unp9mtJbbLpg9*eAxv@eI#HR?>RYL6|_1IeWbj{d|`^e-f9KN?Vc$Wll@S7(a@ zJ)HY95Ts|Ph?KAA)=%KaA}%!^Yc-@Bnxi4^sHxJ{&NG}CBH=Ns`(rX8=MR@r`U__$Yl;BP z{-R>)?@<4$#F}qUTcNwn?DdS973HUH`Y2uh-G!YJBQtS}D<&*V2 ztGs7BNs3x`-FhMi96*5@h656Jq%_Z5C`#5?Z#{1X=%*9{ozcL`uUaqFxC_v#aSv>lyDJ-NelxRf_3nhi0p|BA;(s@% z_%VGK{~#0(aH#dVb?lzm4wnbY1phEXINB^$rQV%Zti^mtzev8BV4fbG#iY>Rlm0-RRZfmp^F z(DL+OS}dZ{RkB^^4AMGex+1pqpU@orxZM3lg1bV3`#0$o65QwMs}9~{!(NW$p2qaQ zEgZAG0d}Ms-VQ^$$@({u;*yn9u|>2^nBz=L9UL5AAR||dc)^|p%v&6anD*+aQ@8Os z2ygF|d%OX9(*xi?ZE{+m>)f+fP9!bsp={|Z`Y!!Qw)ADiN=p+8YeUl7*YhPmBewgmQ)$x7$FNnS6 z(FPgk-;H}^mC@ikxShiCn3I}qWD0gZs_wtV2lRs(@J}vvYISM?Fz@ngO zl(0l&deYYkgP7SUwX{WULBg>*tJXtxQWZ z1>c~t2Oxc*mdfbWwV0=<#HY@^TiDQv;8M1sf9P|5L(|tVDNdf|o`RrrXRpyx*y@XU zt)kqYNvjhw!+X7Zt0z-{G%Z)sLUgLMh0I}Ml&JM3jkcun+sd91liLVY=-c-DJcGru zOlN^Au3rPHSIG@2DNEb?h3wVOal&(i)-HIAc1uM+w`TUSX6`Q-)M!%l85FoN$}PPc zHccv(f;fXvxuv}gmbuL#LM*F#aknml*K1set2NpZPshL1DxyN$XLA$4sC!uAT)4|1 zTIW8svXXq7`Hb-PlO9`G7&pf&eBpZ-X(@J$+Z)k=w=5h208+xeb97$|DM44xUCHS# z{ndTX0lB>Hiwy<#ZzX-n*k)HD+w86kUB}R*oxHISzR(^6wzi?z5__4AS!4s(tHBC;8DOkUj7fQJ8vxmXr1ETNe|c|zIWjE# zE&+8Ut|!DKQM>ci6*@eg07W0-ft%D20dWs(6*PD(dFp`)qs++Gv%9`Ot0n^+i{;eJ zs%3QeUnDv_ykJNwy$Hl-IbYdpMUI}Cb}w=yhddze4p7=?b?=JOw0o5nYu$pgq(6B-G^g*r z#5cSjLGx;3?B|L6(jC#ai13U4z5{eQD$9nmG^d-u1eef_l0gA#X`|db)sd4s3?SUL zC(g_^MiZ3Vqkx_XBg`#8pK>Q?x%8By-P%ucgTry`qe)*|%J1tVZjh}^_7(j{R>vPm zx##S%p%}SSo5F(pYp=$b=#sIL+Zl53n)b{~4vSmNIl{d1nTd``?Z$WxX5%xBcPq?0 z#M9fWvs=JG^6;JvV`XgrWGs=y9AQ1rVraPx8KbZq@0m2JZ*U6Iw@k|>;bzbF##N)> zRZRp8&8doC)?E*LaXO!|v5&uGJXR>x$`WHeFPGC1olmN4zxRn4Lcs8^%+04Wx!~Sk zf#WT`Be@M65wTAEJAVX6TpnGYa?fuit>S`>n_9%a-`KhzFcCX?NK$f?#UN%cDoR< z>>!^tqsK7EgXMD+R=JPlV)Mq*J{U`Jx>IetE35IeM`cT*3KTTD+NLquq%mp)ao{vF z#AzaT&OIaqGtExU^5(40+Gs5ba>~(n8>1ZCf)fZ2d)FN0|% z?yQaRp|aQIn9ExWciiOUn0*Ask~)%d%Mdcm{EG5+xLrfPT%6zgaxTurau(&fVY&{fIokTdxiM% zV1%oj;e+GFnZM|T+GadvCT+dTkjP(-C+g1a3#`uWP`=4SIjcV1+IJnrUs;)Wkx;oBrq`87HJmMZ zLaj{zDG+LQXk(tsX5czCz=UO8i3;nzQTQTHX2#}>v_`Vd$OBu_^)2M_Yz-sLLU*Y9 z;|j?*-(9?;I`u9hlapaw1em@Ocl0-{`7l@C0W+|flC8F*sn~k$-UI;N+e|QAZ>IU5 zX9r7khHt1>2lRo~0Woy@3!m@ifX38F8+vF2IS%Lx`-5OXox3E1V16xL+<{;RIrbpe z=j&u0I~Nrr+DJk)#RIuwh|C4LcW#s^Dv@CqNSJaFe0 z7R|?CD0HlQj?gx4o&8r){<>o2bB2dxTu%FA_qHxX_rv36>RsDMy|Gpg2~!e}OpKE& z3n>MbkH&S{x{06nwH*rlybouHt=`Qm)??PYEbq{tbBbTockw4f@eum?``QGozL+ZD z9gS7nMP(aBxErMkDChsnIvUCUNzUArc~ZmKsIu64bTY1pjs_j>^!Z_w*L5492n2?g z(-W8bXdQE@S~&L>wvOgFBx6J zLCt;0Q~4l#$Z(S{DNmdGmZx|nv+{I5NREX)&F^r^lc$@05qbIplc$>odHREVd0Hq( zyZR|dJ2Zr>9OdAahkj5fN7u;8(X03EzZ{*z&hm^Lttam0w+IQ*4lhQEntOfe-ldSS_VC;G=!V5eRzCF1!_Z8OKH}@*?!Q0Y7 zvSQ?_)C>8N)r2lg=R&iPaoAnrABu_5-FpzDmwo~Kx*&sJ^U6MnPU9zWJSFm! zq@#uH`j%t)2PMhQoMVSkoZgpx7xgO%!u|kGGxC$sY0D`@_K{l86Y?Aq(%=Bv0-w4s!2&nnHg*P>HVi0dp{; z?vUtm`gms>(nDn}W9hN);Lun*F3Q~jGH6Ll!ZKCHuAVawyju^dl&c<(SX4eKI*E~B zrJGz%yFc$Pe-dt$`SmSyYYpO zD0PA94QZ@pvgZvNMe6!{JLAV8<%VWb?rudjwPT``v|l{!au%<{T|7@j+vr$+j=Ubk zNERwMs!zmZ>@ZIrd=BM9PSrCiL;jfqw!D$V zh>k|itxHL3DU(<6b!>cUNR`@M;2i8es`pd4QcWo6W6ld|Ju((fJks3>v_}goxLnKD zLdUy+2`m5!g#xcdJGJk21Tp5aO$BHw+P5j@D5JL!5W2PyPPtKw4%(+^a^k}^y_N0s zWjXV~=6`ikR{33pXUFQy14J{5Z|QowokKb%f3R#2hmP*twHV zCS#MaaSZLQi}ZO>a8Fvg#XR&=h+(kXzYB=Fwt-yT;>qSJEdze8Xg;KR?pT%?YT3xo za=~s8elF(bL(d3{{tY7Y`%(5BD;v25yP05hkAX6Bd6mUKN``Z(4M)VXsKJDT`}0^# z{u+1D5i6tLQ5Hj?vN@V1yhIX2vl*}th}kF><}d-_CC>OenfKa;9ALO|#2vQH;7y}7 zop#zybu-{@=<_xgI&kknPpvllo@Fe6j0xT z-P2TIcmHqkdTognO?`JLCmF(P+NX+}L_=_wkBJu>p~CAFM}$Iofo>sZ7r>i_c5u%USq6O%u-lHeMavdvVzo6tAY} zOn(vD(_u67t7C*|DAu#~&_m{WP>MNyBU5>gNu>GfC{vbRH+p(5o|@*b#7S-CkMS0R z-Z2_q7q3L5c!l6#W_A2*BtAWlPO^l(sXXnG94@UE!qgx5TwmP8*D+`Ngr z_U$XpJi!#n&+%-COTN+@-8Zn8fDaY!{fP~M&shAv&V8PPWl_moZHlze^W`abjIfR9 zguFzNyTWGW+!GUR-0t%5`^oV8vhe$8}btmn(3jDYz`sv|J`1@Q> znQCs)Bs`HHw{DNjC2=(P6f`nKgV`^z8q;7D!KaeM`2BlR>a2v+3hT$(QcUqU;-VAT z@?az~--bPbK*+?lRSfn!?u{K%1pdIx!ZTP3PvTo-v((;bDIBHn1zi42QJHsr{$5{ z7FcbQqAe`takO0KsvF{OvjrgcVcyyzLP_P|?4KtYo8(Q|Htjey-rhE~O;oyVd^n_S zwG5jKTLml-@*lRsb#7)J8uQ_!i4sN_m?`m0HVe?`aAe~$YH>wkcf>80WM%tsJHR{n zSjybR90JnRWmuyl6v3Bc{3vFxD-dqs-rS)@8CBr*=}Z}R5{>Cxg)ra;$jU`pFqq!r zuk{r3{$gdSeu*t6_bD=z8-kJUE-HhjLq_h^#^EHu2{U}Sv7j}cq$1E!aGm}Y&&5A|KA)7QaQ44Wl)SsTrAGK+61 zTuBxYFYo7TCH~^ice49d!orfyyOah)V)0^$xL(kJ(zj(x-`scUJACQD*2KF09j@ZM z?B9&W<~xnuHBDyB8UuY8F%Vq9`VB)n$+P7Kd{=rSR?;n=N~THCcIi;-VoB?0v~8gHy-@Gjh_49B;7wOk{+qsa|VM>%eo)%hSIt`p5Ll zmgxI>Ci%cNPWPhyP9hohk1OOBu9~_cnn#s!o__MZkC%CXx~JC4Ze#e{x&qx7aRld$SoujuncnVVfoXvau|wi^$eNYkbCM zso`4XT&GR*5Ayp(>@M6Y741W1uU~sXH*Y_2-4dIL^k)?8hlkOAayW*ZhlrVnt(&Wr zeil3gr>dfMmy%L`Gx7=)xMnL1KKJ0piuKmGu4`KD9&P~jIxW__`)MQ5uaiXc2Bq>{ z!?@%j3Hi_LcCTdu)#*cEFX>d8I)fyh01j3}%cnCkQesj={33XC7To`wIW>iuo__mmDM{phmUJib( zOb%YL;4=rWShdK_4ZmLlP?lxR#$0*^0dWEbtM9{RJK>|moiI|W6lUKC&Be^V<3|Rw z?;}3<+w41eq(q`O`(A9O>q0d*G5gM?ASiLwcZAT7Y-xvA&i{@dNalF8a|A#C;h5Gui{AP0VvYAA&yI+V5AGm&Ku>9W2AhK4IS)Vd2$MRdTkBTEZ zuNYy9cEa)Y7Os3t%`=R$8j7Q3h&9sPLeqBONpatd>4u0$R*=s_-ySPv3K*r?X_U<4W80^UQ z96R#zk*1FH_zw#i?8vimp?QsgUcA9*Gm*4`qv{X4LG;Hvf9x{kKSRS)O)z^g^LgW-a-kT!J1X={3z>l0GytD@i|6{hl?M zht*m!NqUj$I`*jACyX`A5&RIQ7 znL%VWon7sB6}k4F%d$^IC#5DEf*9YYVSO0XV0S_@H+v$!+)Jid4R&Yy#3!j0qcSST zZ92u%mQTpe7r&eK?!7HZin2>6TgHJCUT^AY=q&*pj?%`>VKS%q$t1=@esoP* zc*@;EcOcPqtpo8;C>jPXKe&l-c?7dcxwhmC4ggyvxtezWNRHvCcklm^+IgqD+Ey@5 zcV&1-MMmT8oF?Kf{~>C(BJ%#+IYuPL$dP+~nlERdB826`84Qap-=d6K^mFZO!r^6{ z=fk~KW~e)1l(5Kio+Ul3n&7c!>`qi`wRWN!_dh5^HQ1|%uc+UE)cyuPyO?|!;+GZO zKV_y5zuIUA74BNv$%M)UwuMKu1%2<+y@I|sbM>I_eX^J52>EXQ8LJ0Gbjk?Z-BW~9g51goZMAbbYb9c9uvI2*B1RA?HfQ%h^9&QTP7xi=ggZ#4dY; zN=DtwbM$*{Z|Od?B*kiiyG_cW$H_OvJujQNdJrPs#x#ho}(KVuHK_UY9E+c&`K}ru9YHHf*-K|S}72^<||nq44I{^iwse|$|bLNA3Qps z4Ls&}XSNdZMD~;N*f1@cISq;3e@(pMQ#j84>dXH>f1LetloIiEd{aH&J5b~}dnNe! zqtb@*7m(luF;*$D4uw3x_A^V1x#)6q6`vNP(2lZS;tFQlIo~*8SOTLNORs3Z3#C1Re@Yx_< zKq+@5!hempK0-(ziu6~8)GJ3w^nJ%2^NV!NS0421*xcJ=%Zf?Ij6HVU>REg2UMrck z$E34#5Bd>G4MD$7lfn7+*t5;RF31R~FDwlDP19M}?wHMeVkd!RLd^g+j7YH2x3!2HfP2n^sstx?O`G-PG z#NOOy?#X3pahLw5T{cF;UNKitqW83fy{1XwGJ?X0an453$7xr>YwniXUfgShGP|SY zyI(FsdE;JvMkwzxP(cZ{)Z?p?+*rr5M@UO zgOU*C>%V{#68_2yQ659Fybz_)lg9ofLX=w=NZiUT`%o}BO*(`qS0hAuXHOx@*&d+o ztx?$!A>I?oi=Ij8SB&llF2yMLcT;zeHv+CwS0nTu?-?eSWY))5lJ+Oj9} zy#Bo}ASB+|92LmT+RO`y2@8c zr`I%=K;bvk^&um?nsDa<1HUf92R3k;IaDf0GC95w&YpuWtV^9t3pMV+132xMsbrFe zJ_PF3+b2ByScQKId3a6*c=-EN2ps?DVx@C(lPIm`t+bCZ*SLERP=Q)^1KIlE?9BZM zvgCFsZO;#m+W+viJu^OEj3}F=60%7=!~5dL1z2?pz7#Z>^V6Rv7(@fgE)cY@?q3R@ z+Hj%@V~@rgnTh|w1UIrLH=Q6Bdjh9MYkC7@)&cy^xNca5H|h{Qtl|0%SE09UF56AE z1Rzsq?tOJ6(BVdPC)3!F9ifi&xM7xBr}S8~U~_aW<+8{;KvD(5`ONO0tZ_3A$Q9g} z+=TB|cL-Pxv*t)m8AnSrw%)d^Fx(RfIZEq4K@1zxe3A_&ZP7FOm9v%PdErHl1F6#e z6->=ePd<6KdXpv=4dE<^>HMB-IfbJ)V9?4G0Kd5hXga_ALFT3L1_D!yKN9G4?ejE9 zX)~K#Im4Sc*&D?dRa|pEc3gN!#KKt_!kot#pq7S5R^Ke&prnfiNfGK&f`$ zbsqyY&J!lFpx)iEiGb&~fU(3=Y~3POME0{?8GLUrj?-i9nDP~Jq~7sEM&aFTUC9`& zLb^s%A#>p>jnkJ{mXrV`!Yr<~S(IkH>es4B;#GI<-k~kbug2Z5e}kwNfZS{6kCzZM zZtx0&IoAN$>vgFFi%v@<$aTa^^B~}n=mcw{#(lVdJ`&xJgE$qfO1Y68cCgP{9?NAmn!L?_da+4RG`Cc{r*!tTa>4SS%;Q`kPjvJLiu1 z0-X1@4CiG)P)yeW2y9cWR-s<$=71V^31x=uI5n!lb2~NN5K_W2M`inS!CsMw5ZU)% z*|MWbbMwLMym2-Je!mZ8E4@M;>C_?j*!R#e`c|Hn%ajB$WfbSw1j#o>1n{F@^R7}Nti)Y*0N%oQW%$2|d<4R5 zip-EAwp>$me*}x+B2Z0JN0U;T-7AMFjVcxW(B1Px=3C_!ZPM1j1xNhkC5htEu5D4} z7189CQDqyqv^0^{lZv))=T6|;H|bm%?doo);A-yHO>9P7P%bon^oPaJIL{00(bvug zJC-YN!J~55-0Zp7qx<5OR5+%8SC#hn>Pr?FM2r_eVFfo}5|;TN-GGVnMs4bz8P-W? zRHXyJHZYJDIbv-Wch-mo@2q%gpUzM>$zRWSD=OSYBRD@S<#1rxwWUv!{-ns;Wzbw^ zpta%N(!~*B)+RBv3ir}*Ht^XsmFMouQfK@smw*X3*SEwZOXTGQ)<)~XS0s=WQXcFk zc5IK8CyVJMd;sFfBnl>S`wq5{5im&6P%cDQ%w=vzI>|8P0 zq_zaqwGnZ2jAy?44kQZrah-{S}%z*FX>6RfT`Ihgv8}pZ{JC+tw2k-Vl29|2zR_+$CGpVR9X|# z_cgjTOv&Byj+iQ0Wx~An$5G{W;DX=7`R*PCcyJ=C5CBGE2wtJyQzH`LDb-OE)AM9RKk-Rr> zuNw-u*9rANLcsfk-Q#({GpM{{)rb@K1W%?(j!Iz0a~QZ+CmNzD1eJe8)A{PeqFi<2 zwV!)+f>Ig;yXmTg9;CnBTJDAa#a02l zer`AR2zc4=udV8U6W)#r@MMJMZWmH!cFC@f{P(+L^OOEf8n8u{o+J0yX`To#nBYmG zZCXMS!Ymg1;|Yj)IvCbq_q@5QT024#%pyDWvc%o9cG&8A^G?NbVD9GDUEAt<3!nR) z1G9W>7$gn>WnEsj6JsjOff3WkqJENcz~uw})VdSt0S3NmZ9k4~DbMU^K7qClfjBZL zFpD=*P!rtU)u%!3mOQeZC5shVtc6@I4OmEe_9i?7{j6^egsJ5<{j5f^STzs6Uv6?9c* zE9hUzUJA^juPW6O^YhQZFsRmW{NK#E!8JS1!;XwA+gx|EsayfTx z`2Aq`ecc2i7RJcH$OS+Sjk8G?!@JplE=0HU!`y~O8FwEgAGJ2?+~pc`#)9C(V-qB4 zfDSJ293aYH!dI{xq@```d3~Y?{uT>u`z^1AaY`M^Y;k>u`%1ONb=FQvxcXg|GK8yP zz-Hut)W1a)-ikU0qjnB%gnmt}*eNzlZIj(8zNWQt={`K`t@KUg0H{wzo7A*f2eF^3nb) zXm_|9(L%fXHnJ}_&2^>;vN$J_-66u1O4tr#X--FSK)R-*uiV ztaE1HbzTT{EFe=SG6X@d|CMNFgu9RP7Y2i&W$umJ(S!RH%f}daA&npoJKnPZg75;wF|(fY}BW2D>ZRKk#)6_co4)&p&>#EH|am+ylI=<$U3Eh0)YX{D3d^z(EWMDkJc+^I~3{h<3`8xf{ z|IRdEl+#D>Ccm)NsEszWx4t>`lM~M83SoW3|2WqE%97P7DgG8=G^%&RIr3aX8^x}j z#mEitvasTH%{wvd2w!lj3 z%J5^DJC`nU-9++0TKv{l;i>}*I0Hxmik(;^VN&BhI4Ivw^gwMlKhb;*xeq_l*<3ga zyo_yvtmM2|?#^qQf>Uk|N6UhPuWXuCHS@QU!2jJDKS-Gf@Rpd@vaS;n2HFvQu?zGr z&?e(Eb8B&ZqdVc(dPPnn9KT9;vQM>>3EBR_PK&Wdgsc8U5v7wc^OFYonZN%hBLM$q z8!Pt8AJmdBHW$ybZC;#0D8x4Fb8kF|mhW%!M>L5U%ilD5mS)}7o6qU!18h|>)I((I z|8*dP$eA=k6_SAWb3Ux!NCr`fTgZ?r?W(Yo_8H2S&M(h}L6&hCI{Y6^0vE1uKXTgp1mx2j`8fV#8%7MwvW^V+q%u@wrVQ)83Huv^Tn5fM5}H_Oq(dW+@2Xnf5^sP>_PZCizWt3WVf}%-L&kUJjZwOfJG^GUk%8FjEqc`)9TH zqlmsUg8yO;2hHQtbi_>03grEA0eL@Di_O$QteB0IJ1Jg;m10hy=MMIJ=QDsa|H55S?&?36pLRy&>2?yUpGvA%8DoxmxR zQku61Rfs{gGWSsx{xyodgGbDJvxtp#7Kx2@1ZP&4bb~X{enez_U0V4>Ptib~B&29y zA4lujo~*ifsS$MiGH+J_P4UD#TH{I$tz|9> z2AMz3(cP=*OcwOA@}Qdr9g#$y?Ll>Thu07r+nPAwa$X8bAY$&{H8ewoTrG{Du6Nf2 zj;gQ-*SdF)`_DA4%_j@{E4kh+`vGM={@j_v@_|h`H%y=o$ z9<-wrU6QS5+p;r`j()0} zw5jlNR-9fL5u%()p>nrl@J~K=0G^8e`zPr%2{5MJ{Rm~+W%RY~CU6?D&J~~h<>LDP z2SSvW4^8}&_mYFuqkr;Rav#i#dGY}(#gSz6GnoqaZXJv^g%2?JFP}Z2m*{22fB703 z^1GEf#!u&#=!&JpM~T5{{{_Q!R`|O(`RhNf-Gd`D=kyW=>2JN94hnEUmdDc>A}9O| zzY(2`ar4VMsXwy%2)-BYPbb?&BOz1S2KclUxf{dpd&BP=!teXS zZ||*e?*8x_cv}4j!f#g9em@9MiN+yu!fl$p!Hlu4l=FI&-?JwvzNQ(H?xxB^T6#o&!MaIRM3; z0gV1C&ZWQbB>SU<6)Ba-q)6uJY*6>Cr(5Q0{JMZMS{Z zMRAW4q6Kup8;N&qIi6uVee~L2Y7sdtsVanIuKA_sPiixJ`sf2yAtZA>pZgt>c?4We zwk4l05(^<2aV>xPs5Z>Q5B^F)g!h}`m9=j6t?V&`T3=6iWw)>lyz;b!S7zce*J`gwE zCCVdg`W$0uyrA3;0q&7{L8L&qXAb<|Mz{dMxkrs5l5Jqr$SYjEcd&G<{Q2KoWx7yj z)RA%@31vC_{X)(S7|d-0HTY=8k%DqF*}KEJMq2lPrlO6p(%Gd&uw-y1WbnCR#8@|- zR)hcG)1hT9ug*V0>8aRgQ zWvl%(B}#KM+JCgh4DD!07c@V^>u<p>}_1>=h@9MBlTzkM|r6^^IC?T`eM@V6jjR6AjaVe5cp6=1wUOL zamqokONy|ZBk)I5?7$53?~hpHdr_I*vg3CoVBo=GxFE-W>Iw<*)^1lwFmKisF#5UZ zIR7`y=1NZUx2a@zE^7%j_GAt|foZY4e7s+5@X9-_zp%%D=k8@h$SM{FhY=Xj&JsdR zkWnEy1*8&P$z3rj!_jgytz|*G`44MPWBaQ;t%4%m;&PqP#jHOcU=oGN-1uwxh6cOk z6|zL&GS~hZG3&PlQ}EsjC2u0S|3cu+nK>0rLL=d2!Z_x(h$5YPjYtA{eJu@~%+p|} z@<86T?a{={J?YUj{9~j%jTRXwt*!;Cd+atY>xD7Qzm?PRklv5pW_Mf!!`~-%F16EQ zJn5(1?I?0MQm{X$lVNNN3ak#AT8`B*Si{%C@p~CvHA|b2l0vAE3D>&rZFlhYcC}0o zzgwAYA?=pl#+|se?v60jTlzIr)wr){a|?ZQ_lM@L>t}Opz$j=A6#z(Hq2}t`iqPEU zw<#c!OtvRLcF4-3ir^?)>dFX{8Nbw*rS*s}jVQF>W4`TQt-B=0s;x-=Q%axvKFigaCP zTN|czE%a3qzhsiDJigeUx>C|67Grk&ZW#5#J@MA%bY`eo!cnQ>lO^#5=1(Z$+8O_Q zn)xTn5B2gjo+Glo0`3@7?FLsyRIsAN_0-j z-H>W;6ZL-p@u6doQNV7D|Dci)l}zrYMEFfRNE=y-L4EmWqIbx!DHIiUjuzz~vhoRk zLW_~maz|%d`A5=e?kuh<$MaQ7g zuIsRlI6diJ(_~&$>WU6tWxzUzx)_~kO$RAMOperjIlts|( zAKMd3sKCzcY@#oh^iCE43zj-O^;?P&OyeM z;&v;a>fm!D^a`!V{>T8ZA~R$J*i(r$XKow}0=<$^pud;^_7mg4{xWp?%O!L6w>DZs ze=!#HCn+8Boouh1pcATC(ai5)Na&lh`{?vURL}~GGZymKui{?1V(ki3p^=Y+J^bLW zV2wRRClwI~t0_wrGUTT7$L=3;59G4w?nAd~pX65a#>f5rsP-w<)(38b3ATER8)XUe zZy)y54R#}8mE!Mhze;s<=yVz8B4IPetUVco@2C&41v8Ej;iO4&APq&)N@ZCG>GpO~ z4)&pm^7Xjv*SC_d){2*olsG3pK)s$l#4@cQ z_EL5=`U4a9X8hjct_PpF&}lAqT3XXRinI!MbUmHZjZ9^n?dQ@>`1(}ASJtz`z8Ves z*uHmD{W+&3%?x%IR|?i?_w28v0I)3q#mc*cIm@lh@5IQwX&O`skKwMk{P>f<;{}^$ zj26W0+UFfG*eA&)Ft2hLIoxHO`^+Hak4wz>B{QkNpH*d3e~R#@@(%w2< zLxX4HlHY=}S*^#;oi??HwX1MF=sW?}+fvwmV9-&D3gHR+`w@nBdd3AJ!-EIbzRsDK zG8}L9Ou4iZ_7MNZg67nF+TPT;3j{KA{m7Hc2a57v_Jk|*0lmkU_s!fDR?Yv7XmYrF z4DV**0rH;G?&8(Z&ki20bDveDB-A9(z=ezvfzU!=eGX*Ih!DM1xLfSj)-SIfa_6jj z7I<+Rqnf=N+ZJikzjl4-FJJA9((Q8EolLVY(<~XrnGnk+W?=PlfrbuOQt(-J6Z=>b ztHv*v@d7OuX_An+E!PXbvgM-Ig@NfCPsl76A1{tX*86LlL`u&nM%bH_Y#uC^pBzL?3}Qm=UK&;l=I5iqr_N2=GoHYbFi5f(?Vu( zctd7gqEQG*kXih0CQy7AC@RFMk#J_%uVGbPuqJ=WU*<5f>>J-}CUM15i=3UEt}%(J zkumN^SME;7Ef0xak;3MYZP#(I%+YYo(mznym4klVFa1f^X6DJtyPhmp!R3ZuE7id_ zs@X!=f3DCaBqgqsPuxVvrWYfnoXqv5=(ZqT`oG{Xwb3^UbJZ0)�MrKxx*QcTI>I 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

          1abP(U{KE#p4N@(vWM) z)Fq3(Y)aQ>lF39%LpqVoO5e0(GRe9`A{$S&#L`;-?%DSAoUN|c zsuP(^t}zqO)@5jCeJmMm%*HZ_CORS0luJb$vgt%FnrW=dB}>Kl`qKVP>YmTXGY*T)kLbxCPTwm#h$XToIS z3?Zs)WT4ZYWL-KPjkUD2WMeXko1%>j)0X=Bn3+eDmyK<09lJE0T`VJVQi}1DHBD)1 ziRGeAP58JzS(nKr8&Zw5C?3tUpg5gw$i*5m$;QUIH~}Nx)Y249)+gc&poVld$&iZs z-OESEp^gj(t#NxSlGJ!R@SiC-&HJ;x$bvVJRE!!S= zUu$oPW*IPcu{LR|C=$`7)xa`u~;UWjMrydqNz--r7_+lbD)9Y5=&?6_>)fM zT5?S-MCJNiT|=Dkm1JNxB-!oQLU{h6I?R!WEN)5*_I+jZ|HO1?r*#=ghY=$_QlnzM8 z8k$UKkpQ6GqP1qDbs2_LDvO#HB2hAy!{nyAWH#0ikEa^qO<331l3|%@NamW-nRq?3 ziuD91rBbo1cFCk{>+I~bsi~Iv{%lOA>sk^-rn)Rk4Y8jkqMj~e8J0CVos8AB)YoO= zIG289pk&i^DWYYvCEmaYNtgwKVWHQcJ?1ZJNzLCYwZP2BmWC*nrkD)rc&xsmfhCLO zfYIBSW&w?|+N7e%hHO1iys5E~1&P7Oh;GbEYS)_jqcW$oFvAOS5)7S2txA<9phzi8p?fJd$HnA4hF zY_zs4T7)CF?x@;j$MDw))H0tzo-eQsPkx3llb^p0|HrmUirNR|mr=W|Z4zjgc7wDK zieihG#DeS&v zVOo}yednZF*#j?bUDUp4W;&Otk7t`&>eHEYnk`Q}))=cx#+X#;rdVT=r8p5K;?%LL zYH3Q=ahA z>sXr@wDq|R^RkKX#(pxL$tDskjPWMcD}q#gE*gs~VH&{Rb^C!pn`o_Uj&%c%NVP5` zikRk-9t_I7bz8Y*{@h$Py(~T7_>u9rsC8Ms=e8Y$s!TeyxQ%_S?|I5-l5TEWvUqD< z3~`JgkGYf19-cDB$-Y6Yhq{#I&gD~T>ZL%;Jm;LS?K+i}u3J^=uo2 zz45N=&2T$-cC%aK)w+E=1iguF5q~>Oa=n2n+x9xS9eTL-+#0vTK-d1CnwnbAxjTHX z>!Ncf)K(T2xK+-r8MJkABc46J(59gCR5#o0CE2d+ReDa%Dk-2uPuX5{3!);lMntsC z>I_Phy6d&NAC1g`qOltmCaBLUC@l15$p5O85YDe@N(x13mCuRX!a`+~Vx5)UsZEiU zZX$uHOLUd0V15gfpxAzmGu@LLr%i?)GTwn(5}%*gM@B(?J5RBq2p#f=lp~9V90vqZqWhF?k*xxs}(k@PO!(j zCEgKk`SETgJ=f72>{ju&#A|YkC%D}qcN*`Ot#gaXs1dH&EnVf7?T^H+uIqFdk9a57 zzOmiyea!U2LiZ$_G2AQz0jk1vC%n?kIA#R7r$|oGbjgCu&tepvM&_1|WV{*mbR?m53c~L~o&sN-5F_E%QZmqY})OXhs zsjt*|5?^#N8gE^aUmtgUDvgso=f24Gw98CR*LDt5%?x7*n z8L~ehPHpHZc5XF$Hf$9&+HR2qDknT$SC!e`=5E{BJXQwBK&Q2a!tL%r6qGW&uv|u3 z*XfWGq$ANe>;I;)h9b^l-OK+Cs+Yh-`hUBMjJ?MG|DqH>!dTKo9(!yF%x|53MQrzCdEgi8=OtGaC{g?MSx6eX# zXEn%dr$dhFHh9w2b46;4-_=htSeb-`)DXJnF1pzDMq$wmHOBlw+DXC)0ci*IS4Fs5 zW=Cf=J6vy~TFw5~wQ3C^3boGR)9>=$n_>vx+OM)qnOE7QbBl`?si<_R(3s4=Ym>J>|Pe;zdxNSzMTuO~q!nixkGUafQTnwedn%=b{xNTZt% z^C=f^JHpD~X7rUQ(pk4+x|pdX{vAjRbHl{7j^hw!6u3^QG!b*wuUO@5IU3bWAelbS z8;&r4KYIMd?d__czISY|sJH5MW%QzeU0gkI}Q@tq#d5~1l7 zc^lg=mbvo}+S1M0UnbBJ@;?sp$!>0^i02&d*jwB0wXZ||6iU&wfnNtLJ|nNipQsj3 zk`@ouEj}%1@#m(+Bmc6+4+SGljYYi>%+pO~+NdVqxZ--1VA?D@AEzm3bN&F;%|0t= z)#4Kl%Oa&dX z$aAhDWVzncgwe|NbTge*O)!C~Adb;N?2oIRw(%4!TP0MDP|Y?`V-AN+Ky!+&8q^RWr zc*p6cxIJaZ)J-<6>%F3j3rjuc`8gN=sReFe;(LFZuPhvBELsB|F*P_id2 z^Da>bYULM0PLM;)dndNL<2~mP#x=8G+geHgt6Cr5zScYcpKB#}y}evlt0$A*ZGVsv zzsquaZZ~}-`Eh2vY~XkDoO8N~H*C(Ih?5`8!c{3}$Y!z1xn9Dk@p_ID%+$4%2u`u! zz-8mxbvGQBT_+vGqTW?%DRz#}j&C*|Ja(Hx^F8O`!Xje7(}7(N+!BuMcW_EpxfL=J zCa}+9Q%b&ULyArmol$~~GikhZY?N3GO{Y3Xs(4(j*YYy&47HUn^Y%93{F189GQK2~ zSIUaLKv5KjtWj~4Ls8v{TZ`_%My-5TI`aVMv14@W>skAY{-&yYzQ8V$ga0m! zF$Tl9i?tdyqwGLRX{(2{%2fx)W3+#Kg07#xz5EmV^Bt0jgl zf;xJZ@zmAZUp8oRoN$kfg+CrA6gkiN#|hWvA14$!&#>qc997}Fw=Jx~pzGbJDlB!L zJxWFoU4CsL3(3|a4bm}6jx=PDat3AVkp>LrZC!S^J;acuy||WT_Ursr7F}xjy;u4# zPU$M?!i%RDhMfl)^i|%m9E=bk)cH!f;!GBva?cqegWYznmL~YNRXWcr+m^`eXM>2s z2Uaw17v1$i3%$h$7;Ja4=Ug2ATAve|%-*K_EH~7~apnZHN7y~L=|FrY=MeleJs-7E zrHY=bP{7Havr2Vjd_+$2{NN#cuhH2#Vj0* z7t2u{cFyc3q2X*YtDM&*R90~g4f;BXP|7W?Jwc*P*!lmcdlLY=iehj4-03+tcgTb+ zlY|gif}nyzNLYg;U=oW-=b0BNYuvYUEi{+IJ=2rh8jME2Q~W?k?mUn7GZ1u?A(cg z12ldb#B&gj8K+)rip_5*WQD+hx!%~y4%`FfaX?!pw1%rx)a(@azAK8FT2A`iB1 zPex<_4{9dch!k86QX_ls26C>T2lrsxNP6)1R1ZE9dhjFd!N)=memJNH&$H%`W(UE- zm8E)cN4f`J%Jd*Ux9H~hKGaUc&EE0YYw6O9bBlNEEUpkOencV!O7|uSiYB-pxAf^e z{!wTtrR(+m(|hLa1ETLu)4az2zGZ8%36ragt@|odg)-XwlNopBl?v|bQ@QL%xH|#K zD*D(}MfdX1gH^db_*Ce@_p}F}2|c)PP!Ha+=N|l@K|Q$p#rNR1l|6u0-qpEVl7!+X z>$|7L#n)jFmUB7`6U;b~lHX?W$-!F03~B#;8J37tfXk4nx6Ju-wB(SfzkIZJ-VZUK zKAaZ8QT)|s*=PHqx~6}cIo03k18{Z;;)y?Hl8tdqY0glo#sex-jXO{P_x4CHf)iIa z5%Ab})WPx6GveaOaCAT2mh0#~#SVx<4C&~Qctr)c%u&2>q3*p?(LKKrQ#=dlU>p_A zLlWW_dF%dBD#VKb6%gHd_1xs|_m3N;__g9s3s(qs#_4Q_c+x>F$GE5RWYQmGvJmOl zXS`e==zu@uQg3hfSy}1zu@+?QgVGh8ZeV)XFgNCYKN|7lnIz=ijB!1c5PW5E8%#pB z4n`GAemS|pdHa|PFNLLvRK^Df5m>peu8~#qzP4=Mp(_&l)sVqR zMM`5ekx^5;Rgw|YFbZ|?R79y0(PCr)8kn&V#sai^q;W-n#@q^Xz^TX#^My5)@{vYn zxe1XWlE1n-y>m*T8b4?5KF6&Y{O~5cyx&z?C^0u9U2HRm?78gZ82C-1ZRpEH_mD%G z#tMU1GZ+Kd*2UfqAN1AoBZNLMfVzLvx<44cE@mzFiAjZNK2!1R8Z5{pw&Y}6a#u)q z_IBS~BTFzu8(;aibP$|3c{V?h>C(dtYVLX?=X>eM?=m%fg&VK$HTppq4B(F z&v>5kc%}@C=Y{k4*so_jp5dd#f9)C1e~kps^LxhgkCEW{=brIAHxfM0?HSKMv60Ko zAU7oz8Nn6EE!+bS8DQGcdvOaaad+$J;d}~1S*eoAdWdQj-CGYtY=uhxbj2>Z7T&o( z?wK<*CH7?G^6>m&&v>pJ37+5Y8PD5Bg6DU8#&cCAo;-_vdI&s{OcJ5Hs}+w11tKSn zb^dX_UqHh7UU8sokky4J2v}ta^Ai7fNA}JGx$+4<2XUU;DD#D%2>RoA+crEsg}J6_ zP4PLB0PWHQ=vCZIW2XBYL`tJ?k%v5*xl$_fD26Xbh`*Q-A z;C{1OcIA8tJpNQn3Y&KpPo?umg_8T@YO*}R?bu%s3Zf^8NRx`pE~E7|*s??V1>g?! z<;G237>uRHEsSg0yl8iDnK50qCLb*k{Y3YR6e^7u-lM2SyE>i}7~>vUEsG@d`zAc{ zBGY+ZaD3NrXy{f`yooFq-G}$r1oNY-vB=qq6II1$xcYh*(8Md^gWR=_Dj#wI-7-`yJlZE;Q=3J-C2O6p@OAjycKi4T0P(KrziDEoQj_UQ}a!?~8c zMl#jhaii>>sX{j-bJ7HK5YO8#LHJxmsuW{~ot@(fIA08LNsPr`B}+uBku5LG?4U$$gtu=GsH32<-++Wx16!P z7QK>1`??hz2xKFr_6|yZJDNb1v86iMQKcr;)lFfj%C>W84oJW`NERmY0>UG&?(Y*O zt`a5?+sfWL*PA}XU5?PUF0Mt|mB%JLt>rq(-Y7M^Rei3I`c5E+Tt^h+YTXgVxI2AM zzYh^Q7}y5t(Y^rApib1q2Z>DjC#lM~+U=&0bEN2%+v9_=?O%Lvd?;#`+9|j(Ztn#^ zhIIdHWCRX`cu$NcE{tDUygWXTBT^`y8&Ad&!Trv}%^VfN92D`P-#q#>6-RS{%by_D zqQh^&iNgNVD^fzHKecWm^FeOIcH~~!nK^<7S80EDXisN@dS6tjeU}e(GC=uF zlG}JY+|b8jI9;T3zmAoB31?9KvB)Rm^HJ#F%4+vzmV&$ZaD0d3To#b{Gqu-T1hF6s zi6-uMF-LQPyY?bE{0A}oCN9+ZHS%*Z&A>8I(_H~yj?3ts@R3+y;-CS%-a+ax{ZjJL zi%?}EY9Husi~)LTSFuz(z$xeeA4Z}2i`MQHx_Et%$+nxHzqIbNiNxj|V9?(=VC=OOI7FRFSC zCNHRh#!TRImirrsVw$Vt*;M)`_Ww&4Q5??gM%1H4U(}*|lAmXNXKfO|&Xa5-< zGYNf$I=v03hzsYo-M4T$=Soa%A91^Z;Y2s_4(`KUS>@I-1@{*<(7Jf0S||q+U7g_m zw$Ud<-j9GeF23Iz(^HJTB}s~{Y1p$j)ccq^rHXQ7KZA@O;w>>$%-Z+Nj>msHuGqdbwHkx0s75w5)-MmMUCZzaI)ma`4j


          h;XOWs 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

          =He|kXnfzR3_`jP~K)le`j1M5T(O< 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 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/gevent/_gevent_c_imap.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/gevent/_gevent_c_imap.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..a16b8e944de5f287816a6826a1f55d5843327601 GIT binary patch literal 569744 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 RFXISnutm#AlXR?ro(6 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

          ;liI9KKP0DA6X%xl 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

          8C+t$$ul~x=N&-z*z;1n+49vJ>UqT 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 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/gevent/_gevent_cevent.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/gevent/_gevent_cevent.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..803c49cd749b987b3d256fb457da57bc4cd51810 GIT binary patch literal 726696 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

          lp?wT{O5GKBO#n>g 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

          XZcj7e4Roln-0WcU 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

          bND_1!{HbT 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

          fNO2syJ$sNhLcM3 znvDV@GM_XDvIs(^IT1uwO#us0>Q8<|$A*@Sg2dy^Af_HgEz{NaEh+Ihyy`x_NQ*2K4NL!;VdifK4vq6(}$j8EHB(ZUKNg=eF;v~uV)`7nOn6Fkm1YZO(SvEScgM5 zYFFnO+>16Rii%{!;b+aaQm#N3KwKNHtssvUb~W`A2XJcTQ{|U)y>HK~QSwiF>d%Vr zo{-6PeHU#M0MmCDx#3v-_9AH>0U6r;_ozqZnTGTv7^;0O{BH72&_X>^Z=N|??o`YwwTXL?$>G`pJzq7C{1Rn6@cT;a&Fo)c zG6c*3_$a8@d=@ynel$GvLt02QJe*;n(eNd{mYg2qZwM?{KB40QD;k-u;b{<$T6+he z8qn@KTxV8=CnJfeTp-0@^=KP%70hb-P3DeLb$HY%l&xv=H3t6HpTIm=-dJGgDwll% zwZe5tQ;J=@Hda5h$7_>Rtqt zp$4=o38gSUn2qeBrh{o2s>PJHX&s7TSFvidrcDO-Z)IpekdmTs^)2Gg0_H2EEJ+}F zvnW-nGbUzk%@A-X;pd|pw6!9_H%H^|6oR!!Cl4!2&a^Dx&I(X}LUhUux-PZ8G{tAZ*mmpii=j)fgTOg{j{OHX! z0#VGh0BegAVu5TM9+M25XY$=H_q&v?EI36nV0ee;XzhOC%x}>Juv4{|gPwk=ubI^^%tm>9KJ|(df=qBy zHVkll;!eGvYR(3{3i>GaZ7_h$stka4kh~GgUU<<;E>K>Ag3}>EumTk$;5C%lQX5-Z=Ik$J=Jc z^BG_H3jR#1teew-lcY+qSoRqb6*g+cU*HT7|C%geb8v@pce5Nq@6A`aFGjwKN!Nw( zpzw{yI9;d0YSG`Z&W++pCqYmFmTf;p%V!W?Y={V3UV`cjYJZM3E55}bS*1Isr4jmm zo45>M!ft5R2bmdIpB`5Y!ux{;_X>Dv$!KIU8u3PD&MD`6-YSKnGgA-~eFqzt4>`oj zmAtP5`F(j;*#)+NdS6E+-=|NAVn;!ct7aC$`@~nVW%C{W@>Z!qgMUBD*o%j^pvy6A zqT+dAJ);7_BTI3ie;@Qo6oMqGo}d=CHEsTdxvFH+<4|s3?ezmOTz>q6OOb$ofOg8n z6OdXxF_B0oxN$Oh|1zW)?unq}pnI;R<9WZ{c#ik^hTQwLR=j^(J;#@#XA?|W6LdhZ zd{&iYsJFX>w*%ax5W5b3mg&P_{W(82^L3Hh=^TUM$NKDN+>r*)vz2OlT-JbZ%OGBR zZIlP_V_C$Hb&`vcW?vb8tY3Lcsn74=&J$CboET6Gx9ZL5{+{Zj$8cnUX!-V5N=)U$ zeKZEG)FidXF&uh?BJNO*tX-(9+l%2}9l^DHb|WmBg}Hj8ygd?hLLI{_0XAg*mh(dE z`8qqn=!xhtx6x2R43xM7Uqzqt0=GfoH~$1)!%JV1enKZPl@SmE0hEDam!YD(m~0XD z$H5p-=Dxo4;Vi;jD!|DNxZ%IMvfh+RXgH;cr1=lQ%t2G?0(>IMm><955k4(F7v*GK zDKDn!)s5BE7fYUirvU{rm{ai}Zvfuq5c#0o{0O{sAtpWe;Py!vFy2^XkY9U} zvYF^GI(!5ZQh#{_-oJ+8d=mk~(O`S&JmVV;sv7a1c<<61M^qbe!YwqdGplD}#tvR} zm_W4$5ZubimQZ89rjad)YKvKz0Mcbu-wPW7hZH5?L%rJ#N&;oTUl#3m3`PQ{!HUO8 z%R%82q~TlON10u2wZv3S#}z0iB4gp>oaS>*_l;S&0U|p!X3ag;lz(rv##DTY+YvRx z5=Ycb%S28}W=zKMlnuwi-t3E3=NxLOB|?@NM`H&{lk!cS5mo9dXa&G7K93%oIVjB< zQ_}?nGONeoYynRsw$MK|nTAM5zM!)W`qC|Aj3aZ<@YtA|6G9E|R%nF{c)tgNdx7|g zN&$35d4{&ajTRXgue|XCVL8yX`u?s}`zvM%)wy+jeR;6>o%J6x0 zwZ>q)G#4UPZ67Elb;UrydL{92Z{s}>2OxLBGgY6#0z_+&VCZ!{^%R6yko*$MC*Xmd zh3Os?JNu;Enjf}Yk6Zc5h4~@OofHo^o;H@r;JIla@GTEuN^%;ll=vWOUVH;H8?Ogc zfjh!h(=qeaxe%yDoZ7*xd_%ifGnVsaDflYGu@wz`PkhTJRi4{6O9R%RqaWERJ$A<$5fP|S#Ekr zd6L!ONvm2y^qELe>EMb4()j%~ zau{xY)t7Dx*lIXZT+aVZ2lemDge9oKSCwJXN2Yna)Ck!Y@N1 z1Tvw35+GxcZ3++{SyTkbDi{wz0^~*9o>hPx`-uW%vrxYZg$eQDn-vyI-nf^-t2+F% z)^rOk?=qXWz*l+9nhfiTl(MVl>~H%9c4sWtxA4YX-|7uNuGjkguy!)G0SI97O}3zy zd^1q;&7hJyCgf-Lpcc<`f@5-v`wJ*1k9hlI0I)Zvq{m@xtQg(1|d@_66U*dFCAH0T|T4My?<&RIcJpploMk+uk zV6A$vg8|)DTeOWptAxv7j%1Kt)q|f>kH|KNuL8Fb9n`zb!IZ?VE&IEve19*P1Rq=Sl}qV# z;@z*svHmBj{)p;nnZ9e~nn0tygT57j(cmYu{a`w*@5PS#2tKR3K69ZS+u_R!@I4vB zib1aaRtEWSf*K^=+p4{Kgv(U^@7a5e&u8(0dZ*CO?e zmGET5<3mX5#(CvQvigtT2DAF&{iq98KZVUdV)bL_+5oHH4o|*sBd}}A7sU_jlgR*y z^fb}5*E4$~Gia_NSeCvJ-vuZ}85k$UzE*V^0~^36{7JM?Db>mD%cun~pqKaSjIk7~ z1{wq^pp=yMO;-wI)IM}wle9j`WV1^Ts3~MxxxE}H<3E}0qWp-31TrT?*O}U zO&72IFiJSv9Eh()GvMf>^aQ$2a)KQ5x!cA8rlHS!|(Z$FnGFu!0BqZ zpyR`Pgn;l6lboLnLm~>`VNCBJ$V{*VA_b;G@DTRU5`5MaTGx|AzDg9!s=|!qs*HSe zgNW)B7^+9&)`KN2+PgmjJS=)H!rMpUHW~7tY6)sXVS+Tosw?(d6hDC2AmyK9aZ^5+ z{@2VZeBT2u*f~e=ozI|8uHw5Mm7g)VFx2NN(M-S2UO`R`qlYdEV8dmN)!N$G%#5jc zhGMRICd~X^k9>_uG~gJ%TOd+?f|VzogT9`~cQneGv#wGH5uD?QBuQ&`gW0@2BwIBf- z0GGg(5e|TrlktVGcqK1o*nlC*C|<{fwhSO(-p&62gN484&rmN~`-MQVzCLM(Zg5%+ zHZT+&lv;JtL>yhwJ+rd(;;dZ^gmBS_ZGUWn>mHfINaB>fd9saAFkE%BOivOUf z=TI4XWBL`r6pzUR`W5jYW?=`m6Ywi`;jP5S!LRr?k)ojn1GOldQ+5{6n+m&zM5r1@ z!&mtg`TFK8Y$Rq?w|V?ax?FH#Y1^m)pT<6;5IN%{C>4NDu99s8aAX7m~{|bqz$JMrYoik>Tqtj@uLr^r%*XH>%3P zt9^7~)U^2`1>}(9y)}cg;N*f#)Q;dhf$w)b*Vi{(pNy6^Dg*#(zUrqnS=B&MpvJ-d)_n2n5)wiQgGWbKh> zFib|^VY0wn7aafOy%fM`AHq4Jw@808hULEj!+KA!H@K{i8de()t22kK_E#Pzyftlh z1{EENqS{ZeH++AH?9|6w9e$HQ*ygHKR!QpD4T;F`PxoOmyapa8|B^@)pW0t{)BMVT zGJF)>VLgHgjyr9Rna^+(bN-NW`FP~pD>w(Tj%gEle>>d8;{RvmVP<8U6iZRtYU^OS z`uc)8f%O3E$Fcs;0F2yy7(_Qh1b3h^wAgMWvd`r02psGf0(8Bm&^0Vkq3effK*K4t z4)~90+rC5-HEo^?D%cJMwGAxw2}%J@tsk%fvE*|K@_>&++9K5RjS~dPxMuVI0(H-I zNIBpjKUMvph3_JiFtavkUu94x?q%eLe4@tJT}FaeJ^V!oJm6DrUr4PoI5gWl^*M-v zjE)eK>fvc@k3qT~%N(#Prt)P$)@(BFh-!RjttNag=`KMy53%!*H3i;3B)if3uz2VS zd9E!Q3aey5*DG+1tSga}-A;TY140S-7*$;s%N+sV0StOn_1)MJrV|AAC0?3=6}%RW zlH?3ZX4wX&Jcc5JNus@r^Vr}H8jpw4(O@zG+8X{c^oPE;`hr<#uIu}3w50v)ZBpOEm6tj`H3tr3 zd@@mXUFQRhS$IuSi00>)6Jd8{65U#tuR%~s@!MKb8vQOd2vEV{CVxd%QG#PyD)N^IU5x-daL=h z!xL;?f{Sn(b5zwvuEQ@H3IyB%QF81ieDXXyi(X5u1+B(8o2?SZOEt}xD8a3WugO*? zwfq-Vrg~WvIt%ZOLv+e*foY)NPmv4yi2;1Fzl|G3c$s3T_YJ@UEn2v@!f*Ht*Am6W zTzt*^S!RGqCT6~giO4?@^txR?smnz2jh%dxuRZVt=LbS}*jkF($h(Xt3b2^Ms;U=J z=Yl`vC#!reZ|O+Cfv_k+=+NJ9+;JfsySIs7rs{b>jFd&rvWt;7&AZli^XhJo- zgDg}%GbO8PDzfpmGnM^|%1%^ULb*CFK3BQrDt9L0K=~rD*Hmtao?EVRAC}y=2#@{% z77vRr#{+$56bCie$3e4bCq4xe3IzrGIs?zA6#>P=G(&et2vteR>!N2f{@DnRm8 ze{Zp*dN5KR46bfT_wUSn7%1CtP)FI(D&C2ReHYjXLM*{aU2jziF{a`VYTZG-rthF% zdNH=Bd$q+S4Ab;h$IC9r8c-Wk`3vC1y8`r&B3F#0S!3W|K5BPD1{B`8m3}Hm%~Ox; zh74{8=_u%_IOU2I9&-Y|iWBN~o4TqQ0@%5r8!HZ_Nz~?X2kqK}#qKU9P zg(8zzCnha|b)?S+dY#1$Sz*E8{pbt#bR(f%sl<6qx_-uaSe=b;a-Qak^V+QY1azw$ zEx9u%1~C_7a1D9|#o3Mm*n|!NBlv(-MK`%Mch&e7XQk|t{%8i^xV#AP)O?xLaL8~Q zHd&%;Uk9qSZs{o`4_T31iTA`@m1nRmNgT=#-pmI>H7;jSi#pj;Ddi4FBZq3K9J^Tut)D^ zW#L*psVXcH;Grtv1hP&bZz}TA@v`%pHhbVl!fIt+H*ycPt#+yq@Iy9M=HiZxWwN6B z%B!Ad`-&5~PK zvSsUNA{FBH@T)-^q>OgcV}ST#6+L<=ni#BU(-mN^f0HPy8T{eZpwJLNtp?z`18~z0 zy9zDJ+j7-9M~mV;zmiQfxBpiyDGCzJUnJ8U!r6Bc#tSD6C6XdowUTKQb(yG7r>QCz z+kpJKn!%KO<2vrLeOtv$JElGU2|9cpZEA~nRgG+IF0TM9&ieq0a^B4oi$#c^&--6- zuieh8OF(NahgS|>jpS7-uTpr`kyqF9su{0(@@g!vI^l{wwM5@c-d@TFD|vMRuc~k* zb~-j+GJT!tZ&Y8De;ZJN5;_~~{TO9CAj?><(LUeCOvDZY)wMvrZze2m{qiwfA}$uQ z8K3!k$2cokT2A6Gc;JcuUrhPP~ya>WYpK# zE~TdqaXu-8BSPGEhFHP}7lCPC0ny!&kN04l3~WV6HTuh{`i^p`=AtoNZO76FewFy# z;eY-Jr8U$;%M@I#v~Q6^(bUTKu4E%R0Eg_7LrqyVDXw3YHejwItl7XrC2 zk`wA7Jm5Mg(KmxcXbsMTIp8}Yu6)s2upBIM@(C7ECBg`G0|>eNn;j4pkQv#`qU4^4 z!YS|L8mq$D4}~ZYDrEEI*H@e|hOkLp533T(a+p3GF?n#Y#DY_h2%%=`#g!(bEKzmf z-sUTDM8b=B7lE#=`H+JHfkcYy@*I-gcN@pLmJG)?wQCDe&bO0!6?% z%7}4bbr<^coxp#xj|TKL+eY+_gkOOgsHRPO5r#?oFm@TDtZvmfkLr>Y;|$eXKy>H& zNa>iYSQlP)(Qnjzpg;hnBu|4{hp%h2mTs}?0=z-3*BYq>dRPUf)b)IYjy@K72iC%^ zyw?Fr5njTc$bPI%0|VnbSAdY1ieHJjnl@{DL)gl@cxndU-VxL1Q=Mh3oL|XYRiuz* z6SaIq{5EW7{_|)@YYScoJcDwSPGl!GUzf6)b}jih{FOQa>6r-j^k+|Oyiz4Uo`h9n zJ={|yYtNvWKrQLVRFw@7=#|14Zxh54z1g7Fkj8827*)nYLlU=Yq?RJq?yRa0a0JGj zsKyzztGUr~BSl5c;FFgMIjUno4(L26?2bfi8e&?M(l>a_S1Ynb9p|Uh1wuG*jz2}a zFNrm<7-BUcUAC;refiiON?qTTWDf;P|3JtR>?<0WM0_lJq0p$DkE@J68@PAbO8eVZ zwGWMjC=8%NJd#MS%3NIGMeDwsk!sPx4Ix9eCB89EeOJpi^g;eFy7J(79Rw?F}Se0R}! z18r2hF_kmWun$3sz#R@-S$u7AslBnK){iw8-p@W~bE{1h2LJo_zZm#m4E%qIfwURk z{Nf^OL6O&0TI6tBy)#N&9;>6&Wi2QyEb}@hyInHwG)GZUu@~h$UPqC)z~OaS8?9;} z$vQp1!0oc;I^6DpqA6B~HCuI5Joye+uGeB2Jw7YTTI%wYxxLou1%RQ-6oHNRL4=2v z^Ay|#u9D$9ds+(}GcY2MncO|OpvZw<3X0f^!&@*JJ$Yv&STjsA+~u_9l@=FT)5w2L zSE)`BBimqN_G+H1JU!qd3s$;-zjB_|`{3|FzxdNwknoMbw zE-M1~oNk3=6p)JKuvpAy$)+A~;xzQ2>HyL_H|D^=z^rnh5o0>4eoXirMb@$+lV_WR z%w`k80t6QqakiMFc6o^%hnjT;msl(|+nr?&cafve)mUMLD{G)Q%Aa3Zn{DcJOmYXX zdOl!S6w`n+LBSb$WktChKtjD%rWd%~G8=QtN=rcxOd>~K9wwPEv`)A(kIX2m(TK=Q zkHRL$dp4-NW#oXM;Wi0ZP%Hl}sO~5(C;|uSk{k0(n3O$;B}9&^{Xm{yb%ql`=pkTLU0Y z7sMH-E@m?MlCv4pr_@zgJWXNP0UV1go#rYP6@ki1EhU^MoED1^O$|C|2BSe?SAe1u z&QN?^$67s5Zf>WVN+ufW4Qwc8TSj@VtAuRSQ+TH9STvm9J6=V)(S ziDNqWDyyJqDyH8Qm)GI-mfCFRtT)_1gw43J*>W94xh}U2CQhkA$0qS-)JiBUC@Ls) zxNQYaK{P=?_ny++-l}fzhPW>&cb-3d9uCmv1-LeMG1$t3VS1zwwsCIwDF4o@Z9YSd=}k4gpQE8pzC@}WOdavoJ3dQ3|oHLWa;qS{ke;aOBAI^<#U%8f`kz1 z{O}gU7o{%hNShLR=fDf(T>+TqJm4}o2;?Ngxtunbqc+E6QOBy6^Jzz~96-t0@ffU7 zP_o--*l{^f{oQmmVp!FXE1ulaf)afRU}$-xlxb*s%1Xr2^uRQ5f!ci%MR%Qh{AEQj z-KN@f3;*2ZO~wovX_NJA!%D&U33)d3;wmZ*sf2MiSua$cfbvS1oM(BcCnbB%vpkI3 ze5r7rb^XLFVn zLXIhQ8_*!l{i;pY8&{Ug zC12>Y5t@h&Zn|EG-Zm>VS$>$Kz>RhAf7}lgnzz(}H9u&QJM}!qFH%X&yz|4ClsAQw zqR#o?nf1=6oMP?s=hGm)l?S6i2dGKBn)AV%Us^oghV(V#(#QDZyK8E13ZymOZ1~mNpDI zHit7eId8JfcC7-;*5|qgW|&Q_n`}0BHhdM(Mjk*1>1mVJYy+m~7NW;Cz$9X+BAU-JKTyxOjv?x4v35AYkr=Sq~9xZt}HXVBTkYx28C39h^{@i3m7o~6)}GtPtV zHrR=}(QsaH*x;@!$eW?lDv01ZE9kx~QHX{&_AK40R6223?6gdYB#@2Ug%EB_N1e&Kh>6s@61IX1}FnP>bhL&W45lWS0!bHrWL) zge!Of*CbsHJn1XeCd*Mh2heH3tfEGa?>^8P(9B$7nd3HHA2QM=+cn1-gkLx!oo*LA zJ`Qhwy|J9T9TEH1z8z z<-G6KKPKsZA}rfX}nlvjIDW#qcS?#`3U=gI9{KP0AS?EUa>yC%3qS^0l;# zyJ-Ip3@!!LS@giU;QF5yOgez)z?XK)dt_uPcymg=x7TzR6HEpWk*n)zF87RHp4@yFH~O4#GP`oiWY(8K2q@N% zwCaDURu8H_ zAsP)>O%P(!fDY{X7RyeqF~h7q3X05T1VT6;dq6H=vqtv2xZCKVN-w}x0=I|@u-zu^ z5ZQk~Z?00afhlET>)2-SCZq-E~p5rN#BFe`gpKqa@+-H=?xn2D68 z%908~ok(nF0XH_-ytHaIVKnZT1_>&&fzSuj;bc5T+Zuhv{c?l(4IeG2&?pC`!#K&s42lbvRE&{rB zq)qG+ga5oUlps|!2jS4Va1aU0-pLBo7e%NT1Ok9EDT!;!SXP`UZH=kSk`xWb>iL#cr4E%*ZCN0$3+%aG!LU$sUurl?E`ajwz0Uq97R9 zVvf%05SU=6ynz7#__R-gbpkfFVRXSi26(Z%C5~Xlb&@}j5`CbZ)*Be=dZt6{AwZ)Y zglf2)jLDDl*;7Avii5x_PJ* zr$H0_qzRczf*4F*00sWw?wmD#GB)qAtwr<#+2-2X$`}wXeDhr)0AYYSAb~wnusBy=;lV8lE96X((C{G6YDI zHMm3vCl+`hQ5CK^K1Q`9SjUjPr(-h@Glg=R6NEg#zb4@kM~h4aS1+~K`yWDdZfLM6 ziajM=sswQ_W)N7%g_&dUu!G?p(?B=z0;gt=kSV}zR%IcFR&Fr;`UDTRY5k`B_Dw%; z=m#V@EvbkP!EzIK4zriOMd%wyKg>~#iDJeinMAgLo}S{eQkr&RhUz21 zo)&kISs(P2l4AN5VxB|kU>iz?B>gw3uN(SD|8K%8P7G7>{RaRy4R63NOF)C%L-9le zjZd*C{!8cvV$TiZ*=$$K^?_&$YuE8ugIl|n46zvN0$IpdWjWq;9QO2SvgSHU3a~1I zn~%Xu+@4Vv$jQT+1NX(H1ykUIM{x|!F@;%5uSph`;@HkDo2*tE*m`x8=H|;*ECsB` z(r{-Dvy2!tUPVJ5~=8B1Z^*sv%E+7yi1 zBBEKK2QUy_UW?&vL0cAh?g~8?3a28cWpY^o; zv5x7(^+l&;94v#}{4r%-BWD6Eg)E4;hV3gyt!0!Re>Oql2y$knfm2f6NI4;%}4pkJ8}ik*^+#K&KN;4Q4*ib~U4SbKiVsUT< z1p+ALk74B*SjJT@@o4Phwq7(^%>r-Z0FPaZ*c58+`eYmtfDnTH)c)W zet6fh1Haz$a^VeOJ!Q*_E@qXzIdOdrzI4dv%9LfBfh-_lY%UMn7iD`Z(p8!hhMnesEz+_vCkG*Q{~B zH9q6HH6OcouY7;}gnzaBc+r!iAKHE6$=8$K$bIwGjTG*Zl>323X zAKLEY{;k}*7W{ty$~!J=yR2Q`J#UXF`)jYk5jTC9xdg{Tw!Jy&s_-TEZGUs@q5Eu|eo4-H zyw~~_YyLi~`;dDE{Jv)Akv$tX#Fc&R?NzyV@AAiw-s*mN#McqyI^40P+3wZ(a|%z~ z?R;+26le8-UsseK|NX}|pI@JP*{M~9uQz)m?)#zxl|L-lGGfRD_uc(br!H@Y-S4Y> zydcT?>adU7zMPc*+y~q4d-m}14^n1dyzsqOEGdb`GyeIQ zqviMCxu(yREiSz&vM|xhdWbUV% zm;H1>(q(_Uqg&F{CG(CHPJ3?efld$gTb8zQ;(^zyvQO@Q;gXk@C4T+V8@ZQ1dH09z zZvA#GSv5ZEf+cMx{Mx?v(ThIp`{I*R25oPZawzIS0?Ow&%VSo1U_1|w9 z_er;xo3|bs`To|^?{50X*E^5KJ&>2s{n_xD&$RxjN8Ft$rz8I29=GC|#M_?lk#zjt z5vNm<-}yFb&BYgK7mjvKy7jukXSFqxuS|Mz^#1V2Z~J7%iMY=F+xK{OYVtoKf4F4X zvbT=Edu?iZ_P7IGU%G2@#?qqF_uTKU8*puW$C&v^srSTn8+7%buS|X8%DBJ3dgaa6 z^!upw(>s&@bn&UD77aWT{>O>?jt%S=w>svt&FMcseD~{-tMC8zy(_*9k4hXnDXMEp zhh5zg`z>?6=k8x{$J}Rb)P8T{t@+}Fb>U;DhW_ibE3eGk*Z#$U z7hkJZpP!ij=}nzerp|pN%bowwKcdgfcRjY_s%Yv4_;T0MffpZLH23+i?9?aX+O|5qdD`~t z`j#!LYSp&?W6umd?EdbiQSr{oYm@docp$Ci%!E&FP58WW%i3@4DYn8PeV*=Ib6u~0 zzTfk?P2KlSPD=fuc)7Rw&ZNu!dE4G*w{HEU^5svbuYKIIEhpZ-Zo-16M<405U}@`k z_uN;C2F7nY*6hrZoa-9zLzPo?QoQmcv4<{ZR`%T8=b>DsX?y2@&F2Abi!ThTaJW{%Cqy3%x z6F2@lece|Jh90~lbHkt~hfhjbU$?uwJgxnMm;e3O2hNQ7uH?>#!xN7*fAN9~TQzHO zZ}I-uc8(vm@1tioUGc}0w{?4|^>25*+VXhw#4RIj>#ocyQ9ZeYY>atMr;xf4|nA)oJ|eH|IW* zer5JMHy_H*EiAaup1LIK$>gKmH~ie}!1S=Jm7o9l-&Yidy+8l;smGq%{K~M|-O6to zouAry*E5$_-_vEt8GAp+)w}Om{dULHSKi+KNYxE1PR2Yt@bg!1+V{nlhiZP>>a6|r z-#@(mr?J1kKKs<~EAAam(MId0+n@zc|yQ^NDXdkGeLh`wurQ z$Sl2k|3f!j_2}t@Ki{-&+4_z}t-7sCal8<_dF$RszPn(}J+bp1oVEMum=99BE{XZj z@%P>j-+#@w#c!WHkvHt|$A1|)=ZJUuS0A>$eEDNBE#L5bllx9`^0>Hz3FU=P|Nf%m zXx6S1MZagf(?5RF$zAu4&2FDJru~4uC+&CTEgAgzZN4=Tt9D$Ob@|&rw_jJf_gKoA zpZ7og>7lo8d!p!gTeSY6L@2-6Phu$sT+qh@ey>$^S_E#UOJ#<5KRK~IUV=jBrR~PxzGhwT` z%(;2@H(?b^v)eAb{O7xU57l-1UOUi!@cK@pMnxU#lju5jpTCoq-mTLEuf*r}A2aQ? z#3Nhn1D~k+WO(eNaeI?qKKSDAzwIBf_OgeMFIqEv@UE9)$vnlKN%lWT8 zI^Z8|Z7s6ej$hbAdw0U#!M!*A?ZfHO2QF_>@WCJ7{IhmU?cUCr9lrbahPvA=%ep47 zU)=Zk9lf`0Y`O7{B@a&P{Mv;3n}4@weetHMMRR*)js51{u&TE^EW2~Ud$)i6r&AMV zwOsz{w|T2~T(j){jCU^FSegIQ^j^n0MNE5k=I*b5iO+j6{I4(1|G0PhJ-^MZ`~I~R zUHh*3;n6cEXa7;E{q)-{{vloZUG>d_uii9pOaAuT6T?$_XIyjfKi=;7aqHiw9JF4Q zv-wEcj?Zo=+im-GW8Dk;_nykgp0IJ^w})nZwc+RN*jHv;-{IGb?@1hR!_EI}v$*9O zAJ$!${c)d&59Yl4TmaN&i)o9LkBJ0D{=J2l~;tK`E!MYL`-&XvmeSnw)fY5b+;^iW$VUC$J5GtEq{O463>|%Q*54Z zizZed%~<*R@1;L}|MR{l>)My>+Ftu~!4ngEe*c2yljrT%t*HEUXk@&0Xvm36+dkQ* zXwRuBsXw;<%Y!TKm~`d^+o35hd|I~3d+hs`y$394@z=sy`_0+hd z52jun-`*9myL-+>e5dCx%<&qiq~H@rtXG~_cr@_@}BHQY-pTXwzS3XQv5E!uM2)%@x%Kn zEdRuhyI6Q70N;#b{&;WX87Z>N=dEzv9KV+M;RQodHWn${zYM=<{4T+d&v?%tVYm=K z*5xyNc*oKjzmE9v`4#x#(=e8+@MAfa;l1&@9M>EJ@7WjoXpbMu@|tZKDa-L1C;p`l z+v0d<;CCl}EE|O%^NleOR^Er}c`R?-6K4L5v9d15YCI<{_>8dOEltuk+aXTb4(l3Y zVjYg1@Uaa(Gg7v}AM@A;+u$|ZA)M@o^;wtw@W;BW!#w`t@MHVLDdAziMt=q@%x675 zW6E|(XQN%F?3d*T1M$tegn_AnBLi0E1=ltDAuI+?*dFsaF6ObWF(!kCO!=Js@fq*g zmx13ldOqtikL|IHfghs}<^|)1ZLnS9fwVX7$tNt!c39qMm+cWBY|j`gQwGNF~YV8;?AHOd<-Iw?idllm>gzc2CIfZvK{mWcdjLnGqCa`6MG z@~1lz<4yl$&%i#_V8dCLfxueq86u`@>fjvgG-96^K1Dc;Bq9Lr`eAUCxv)8meJo=i zPBwhG(b~gox(7G9avf#L*PHJul!JIYfM)Gs`cr$rhmXA>6r;Bn+e71dFq`|y)AJEa zM0n{cHXBW_j*#6l9DU?ACwC(eMu=;5{M2mM)03MivOk? zU70;x5}=osUcG883( zB?Bf_kuHD`KYg&Qem&nM+HXX3U7Euu=`++~% zHcFs0Z3LzyM?YyM6#&$qU_hL(TL{3?svre@6?LOv07hKwAa9pnWi=`P}oj0qR~HnG6w6{VBOhMg@D*3h-0um z6``MsOx4Q$FI}KBw8P{Na5qM%;xC%eSStD}7s5~v4<$wP5#X2y1Vk{y1y8-EXDsCy zHiC+jGAMME7ZjEiT8qjGCnM?s&DER7K@EwNmT9O)YszX&=Aif@HBl)}@(N19$EHvb zUO@CXk%NdPz9mFvkAV@94uU~zydn65j2Y2b(gyZz^y=)zs4ilF=7Ru$xopZTp8uC# z1!5La0XBjHz+jBtgZHQ4poL<4L=K1GMtW`%-Beq4J!~gbb>UqDP)i1oO5%wz#BEVA zaVXs6pfH zI91n0z;L8NJt|_W&pNusR|eSO*AqJO|J`rOYTsA`N3OB8~&nHWJVnXGCPn zJHC74Y&6`^^g31Qkw6H{uoDL61;(l@Ar)^PG!spN7*Uj-NHZq=oMSpCAfG2 zz}gLnjy}4r8!(w+bL2r%2RKF#>&IChL2(IU?7=t$f`S8ac!;oOJdm<`#PGv&W42hQ zi%UTcQA>Tsd72Trsm2le3<=c@!I6m{6Fni11NzGdC(|bYwD2^*qLgM(6|+4v7DgdG zs7T1AS)PWf(RQeFN1g;5t=&m{x;r8x#X4n(nOhKL;zKtyAY^c6Q?J_t97n4Hr>Mq? z!4hdVOrBC4^eDyAM0vGa!Ji^-48@Mo8VK~DWeKR z#t=$fy-d3lBEyX1=DLfk1-P)d`hyiGy;J_$?P81C?YfB{5Vh(R4mk?RSZb+YZ?kXI z^#GqZ$ied^V$}vU%H=HE3^*M)h)De;SYQMJnizgAOd0bC2N#DJuTB_@NTF z1!^u{8r8FDxIK~jz(WXD@5baWu_I{;2APlN?_eA&UP8ibx10Fq0$%}aAWzXCWc_cq zE0onYtHsL@z>?8Iq}XUWev0LFS$u1yB9_6x^aX)TlwEqrtG=9t?QdFpo`k0Ofx~D( zFto>|MS!kksGJa|jKe+MF~eX?a+r$q7g4Cz)j|-;M&ne#2yY~z#CluT{e1r(UTUal zPm5I;LA;6v3iL^Wl?OzusvW7XUmZnBcj*y?>}on) zDh(_ZT?Ol&7$Qg9u*Qms88T%gBwop1lLeIiD3yfh!$1{NO6}lvrFe!y`{v9jgboVW z0M-#ai8Vtin@tgN_+4;zNu8!rqZNeq1O`NvgfuMG`7#Q_Z-h3da#;wgIbSzZ#DhiT zhCq#YbEyoQEy0=!^5o$RPajeOKssoA)5E2^4g*L4?*xrnv=Bv*NEW0fVd*5&DXF^w zJZ_h(BtB6s`mWa|(PKIlK|HW=Aw?_7o$3P3`i?$&zUD_%190Ter(=VkyjHq40t zV*wuES*MF3y*-XRz5*m+N&;Wa$+r=ygJV{Gb!N9ii-8g|c>D}pNZywwg5EnBpuxE| z6|j#%=|DH2!&qrFweqmW*MI88r!UTQybGMbef<@LIPl>+knIcO zji?Y?23`WIOMB45Nm{Gt*HBE-z`dE6(5GKQqEzT1%2Sr-Mey*M>Hy9>-AmMzW6<#0 zLaT>NZ}GJne#}r8Xisy03QjvNM^n(LLzy{ui#mS=M03JRUIL9br*A=8SuryrhNl2C45}lrw9%<=wrZTHp*RREqe3<^CJQftl^}YIW-&V)Ubr|4 zA&;Qm^-Tx^6Uy#VzFe~gP$3BFK?O?LiU9zDFzAeJMB#bhK;MhuI*b_M3%d0MqMX^L z_QbkBC>sJol(pn_m+dpmJJiLTQ+_!GA@!g*V64HbLV_YFY`D0SO$c>1!WWF3vpo%9W*q#wFo?h{WCuF-5pW^$2(KqErYBNnZBtXm z1NV|FKKQa!U3Rh}UiwTSjkl)jdtBTr5RPLP5>0_6k?j7!?~iv)r#ktL3CgudSy>s- z;5ee#?qDSbi*QvbR)WsKv^&*Ag@R`t0L&VZU`5u*rMEaBm>VLq0rv&*pU5e7T1r>B zy3TShI_J=G=LqG^=Tz=+8s_8q340Pb0L8QUeQ2;ZQ z!k90f;21^27`_>q%J{?rB1BRHjY~aK*phCBKqn0Pibd2{eJLi3s$dr3rV~C@0-=Q_ z0??`GksJfQfK@3CNX(2V)IeR*OFY*CG9H?5Z7@{_rla7>d|Qq9&UO1)@CutDkC8^! z9)e*{4;9&D71>wh;yYe(#Fud!7$-i3ftVM!a=gQ;r17h}@x=DfU8~T(CVkZ|lI%5; zGyeOe4cQtBNZk-~SO^iSME@(8Fr5?sbv!gR3rzgfKR&BwK>&X|vaIsdqQPW$J_ruY zgEtC>ka|axyu?WH8Hg+&cai8$Xe`Jc_0FY`Bg2T*xuv*_Qbd1?5yhB#rJBfH#B`|% zh&zR8N?E$)fLDCz0D4!~ICj1T6Q-!XI5%F)gwHj2Wv^NpEAoCpus@mu;;rk_B5Fh}$!M~uV4U;&o%-E2!<8v*&JJgz$Ux>u6xpHMuB zi3&Mj23m3D?ZR3d_JuGUCN<8mW7Az^FK?1l-+4~syd!7oU0 zEK!*7CBZ!`D^8b(yW^@ItF>_^>7!QBMj`Q-8CWwAL5}4l3fg+)6rc;M-aNuLffykS z{;&o2&Gc+w!F(kFvV$>4y&qHxR!#0ytZs!$%8lWjjv!U;(19x?>RaYC^u5|JV*?;v zaGUVza6`?gvt8(R#8)Qkr_;|c%nBy1jpca*_7FPj%L&jUw z$U)GPVBO%R83``_NrsgN>=e{9m${${UToqnz!-v7%@E>td+6pi3Sz9ZTg@ICn*+gq zNu7`l2FSq~GK7XB*uslofEK zI2JWE8_ldhNE4$w)tZ?b-fZ`JUWC34Eu_BMYDP(AcHUC! z?}CFlUZffh4pkuCiGw+bx7PYw;qcK4q$x;i{#5Iqk8}^xRYu0wSG6! zj`mvr3Zx!Kt^Xj>H<6w}dI)J;w8b)ea;-lZ=_#aHNS|`n`j;Sm#D#uvAgDMG_c&Pf z5z-AvugXVzJuQ|eksiSTqTzR-{y4k;WlijkG7y%}7&_?nIh{^c2#3 zqzB(XyGV21M7u~UkbZ=8HPVAfHzPfb^c2!q(98K2;6}O_X$sPvNGFnx>uUXLkuFF2 z5z-cKmW(&b1Gz6&~nZml=h`YVujL3$w$w5>*(f^;*|9Hcvu<|93bbQaQ6NEab(@gCYi zx)|w~e2xzQUys9tE$}Ja`A84qOTjylZpLT8HKdF2`Smk=j?W3V#-XvrNP8kp#}|lG zkhb2A@gO~gbUxDl_|o@Mq+XTyBi)I#1gZBc zw2Sl<(sjK58vMfNNL%ADUjMx)hqU!RJV(0t+gksAq??hRL7M(ut>21+i|OBk4oF*T zz&FwsKi2wpAYFbK?clI##ZTa0q~4>zE7DWP06*`41|6;hK9PEn=9~ijNH-&0jkNzS z7%$T0NKY~UH1L5#eLIo5k#_kF?eYG1&;hCQ4~!FsXIr1a{A5~(`GNGHAM*j};;=gZ zg*e!Es(GD11!+!;I)6UXh&ul&=C`WzpF!%ppw8bG2WHbF>-W!-N?_hdi zo!^QBhFvbI^G`(TMOu!ub#$G79q*CuC@E^Kaw*rRWD~Me90$ z|BfgZSLa`iwEq=#{?kZT>OMu{!@s-Xr}8X~iO^@;WPa$0$=l7@d1KxW1{i~7YjP(2M{V|@~ z{Qi|lcb5A7XOMRB`2B5@&_6zjosYEjOuv6VQ;Yg*cGp--v+~$xS6$e$)uLu7k8H4` z<#;CM7v!fUI(Are+{l=y>8)m4Zn$z#kA7W1byYtdY4TXeS7zvcyq<(#?91Typu7@X zUx+-gg#58w1%C0!gLslZ<}Jamf4#hw$V;i0w*h%s$b;&TKi1ueUncT``_+(_jyz03 z`D3{=_+=xH!{Z;&WQoPt*+XQWul%ls4eDALY}=|UJ3Fh)yu0u-o$!&OOTgSFK;FCg5hN!8<0nMjWIB9C-OM{ z;5-d^96wZ>{IT2_Zk3&g+7_a+C|kT{7}2>h+O@yxH~g?8uviykJ^* z_4deL{3G7y>+OBdjCyzv+hQVqcrfB+{HS;Rs#*0_5yc2m#kSAkEkB+rPx03uL z$X|v0jx31$Nyuj#Et*>_+mIi{eEhMEIOJ`vSC;vS$lrtfDJ+OK!X`(zVtyv_`@d4_ z@2=-N^*-&$&q96*^Cv}HbCJ(^QI32s@}FZq##L!%~mQ*=uQR&D@4Jwm?L2yi8qW#TiAF4wBpz16~khcSQM z>^JsyJE$K8r=_+=kK$)(Sk!#50%y@@K{WOOTg?JkELG*?Kp67#kp7m{8z%`>8{3tFT`$Im6b!X^p5h8omKM^QWK*-`I%z21YYx3Kxp zXlqT2q0#XR!c(IY=SHMQC(mh_8l4ihB{~@mp+OWd+v$S3E6`3Y+8M)k0Q20iwCK1w z%|}FA?-fY|&@Fa6+JSOi#?<;>1g{g$2gA^e-d~2=!Ww%3 znxNVKSO*o}1iK3IBd8DHqNauPfg#L|kUmC7XNS3>Cyt7?kB*+0iW^UKGDci)fM_Ne zzXfPFX>0==XPP)h%{dYEv8?KDL)|-3cdQQ6LXNwJcn;8~`Ss0034}h$`z=~pEc3?I z`iJA1xCMz?k!RZ?e+}}5cZ5%-3eS>ZOo&QFalNsTT~jh@|XX!QJMsnLt@TY}%xW?9kMV;k=<1zm8hH}~dR|8Bj% zg<+Y&{68l=1N>hdotzn+GG0iW9g1qw*Nrw3Av+)D_(z25*05hp89yQlT&Zi3hhRh)zDR&DX2-5J-j@!+6whhnn&q90fjTfSFc+j-UiVC|~$y0NtWr{q-q%w0T zY|7C`Je289$eM2Frd>Mbu?_R8A)gP6YU080C{`HOU}6l7A}=jR-}51l3>i#$uoijS zLI2xut@saWVor0Yg0S%h@`$VbDAxjX8xsn*@JT@a$Xq4QC4%P~!i{zk@#_iWAr^2{ z;@a$UZgb!?>^4vgRDqI8i@Gs7ZkSvWc01}&{u;0|&x<_D*WkSQ$aB`qdjfg(dU>mm zHwk$dmi!T}&B&XGyz_<2jyk7NXEo{!Z$wTCUPOk8T&8l^-zYtykUqkLv<7s`j3VwQ zfp?a^20dcpUSxkg-0OXmgniLyA5hS2YX#c!!Z$z(e(T1(Lf$6W+F0rhV&>qEYe zj}-Y%|Bn^<*P~1#{69^VA$)d}aidHc+kwqRyD9~j<;Y)-eA@X+pAYB!9Uh%H6)<6y z0fjy+%BkSPHCXLd+@#3^(6K+NtwS3Y_?M<5QEeDw4CBCzvVm&|Ov=(zsF#U)ce5Vw z9hL!14_D7(qwzi?Je$I2VrSfghc`u8aoZEmEE@tkU_sbOh`MP&3g$f|wH=SMQDz;= z7FQDT@h6hx^}9QSJUu@-)`yKrsNR@P|uV%Pv0 z;0&iE*XcYA^rFr_Lipi#%V#~47mH1ueqjvYZ{j)o?TP10@w{Qbuuk=UN7U;#9`&54 zr=i~C>{oCK1AY!|{V;G8D}umaDwbV@vXeHQyDZ1E4rOVA-_gBaw59(Dpj`H21S@v1?#w z1lzA8XxF4EIcIO)qnXJ-!4`9-@arD5l?}h>U6k?YeNI^O#V8Nil8OH_qc|7%60w!= znRe$j%FGSp3Qf)Lws^Jy&jR$m3-!{Y?!f=#DbkC++P3hup3?i68`k_j_AxA~c^{_3 zqdd|c@$E+0r^;W?mzGDSY@ zMO=>(+b~1VM-#-)X0*8tZQgCd6KE4F4OvTLqSaeVm(_zWBg&4pV&UUH^EvGH=C~35 zLtDZ82ce{|*M`Bap5LgR&5X)xB46gE7k$LRzwJO57RbtHBlbo)`f$Q`kL9ZTaegd7o*jAQ6U7_gbDcMGOxDPZvKg(RSPFidQLh~J zp4I8Eul-1#jGY!24g*@bMuM0lWrMF$o^iKx~S`!2Jwk78&4GJcR2(}+0A;1GB*f=d~t(6~;q zqt417f^8%)4oZ&{8EF@ur=Mg#${j>GzlpB^?ZY5;b^aL{751We1Dj}qc>@?J3wEHL zC$Pu!v^mbe{0*#kOq&}9Lvlki19lSiXItza9mhVA*uRjB69IF2R9FguCd}94c?$NA zcHx>h4aic^1FKD4;|&#ArljdGVn@%X3K6_kpq($#PAS_7@D-3dQxz8cx(o#&w%=OR z>2jn2FJ{4}pq+?TP-$2c9CNx_!OY7-^T$!|3Di5yz5sJDUmCJ93<4=+)k+r*sJ9vQh7%5qbS!W?GAd8_Aq81W@ca~> z|Ao&(+NFJLv&PC{QeJ;X?4=Yp?8kH~!Q;qqpZihu-eg-Tex-rDA zT7WjQk7HjF_s|QC(q?=pWzt|beGFI6obb6V7BsI33xmj_)&(#?ng|2MV;b7tjJ7-J z^CFm6DH#_A!wZN=+qPH2{yACef1U6E^f~l#>9hOBD9DH#qZ6k{cd%HdmuwDg{M(E4^*!+LPpKr=3 zk<%2rU}Jr5jEHhZC*K&IGDQRcO)iX3=8UBT?ZjcTqyMk9{(DUw2)D+9=EH(?U}D%X zAREpi6WK8OI@Q;B8D##DQlq1qKhaFGOtpwPggzIb&y?Tc7ik1<0of(K8se?_hv+N0 zq4W~}IA!4;ZrIdf3}=;vdV3{dDUD)Vm#guZwEg|H{;>aMTULPNMO&vWb^fPu{eRed z5Adj}t$qCLnM^XNGbeRY2s1!nfCL5tNeBrULV%D^LLea^C7FcYB3(s@f`FAEim0d& z6+uxE5V>AUz=rK!yf!TN8XIEAhNxHgziaJ%h9rcG{=V<;uRPy8&&l5JT5GSpc3Zog z60Mll+|)Gib@oAgs7L-`GyW_Rr~Lk54E)0|8X+6e+Cpf>u}pwM{`7zM#05!=P!h+SeNj!2Oo<(Z0`DNfvvPd$J848;MfX);b& z%aMEvpR|I26OD7^xej^OBhSq^mTf?ubw-{I$n!ni``_~)^W^!g;1A_FA4Z)c&uBb9 z;KuU=Kev(RS?AO!)=a1x*Swr?oo$xW93&u0H9D+$NvUqvA; zvafA~zAy1i#ti{y>pQcq<8i=!@@`Z{0V<;gA>9R_)j}ISq&V~v2(<1W<{Ee$*?=Qq zz;a~ib>e=0^8dd48#W($v?SqPj_ zXU(Jj`6HG_CbqB!C>>ii@eL7izBh%-Pd2W<+%fh2^* zeH-IoXsCIwXeFwV4OtzrY#rFPziQP6JnojGgCzK}a5S9>NOX$qLJUdIUC&#WR6?*2?qjImZT7&&D=$!$#7J z@^$J0e_M6x^n&yDQ|zKz_fwqfQ$L*n9nsU;?x&Q;I`GGWPtUzH>oeH*G(W?lvCw#S z9_T!j$IH;MYgXHN(Awim@Q;JP59b$@hia!*_al`L#{MG7(q^sjxdrLVapQc4o~yLC z&KjyVt2XlqQhH4bK@7yrI-@G&Ht zj|0;zH4w%d1A*$S2{tXi9rM(GtTQz>>xFq!K$~rjks$Y|o^Dw0-H&H{iEyS5wQ6(! zST{dTi-NQ3jQ8q=P*DecN&8Nne!7jh{LDP6^i|3w%h~IKL809Lp{wEX|Iq)zZvy`p zx)0dO_Mt7GjT(xX&)mK3y2v-`BBwk2^-HHtcW7C+ZI34`^KNf@GUU2l4U?{czS_4= zot|Jh+rC!)XDHmJ*&;AEk5m(SzA>SffLIRV6g6?1Mz-0aIIC!)^dwrWM3F7ENpvbg zJdZpl_`G(|Gh}V+N2zH3t%R;QpWvBpI*@D25Azt~_T{zOy;y9Gz`Cr`SeI3u!+Ok% z$1rmo#~g4HGe(_hG%5h|5VCol?Em@H=@HmFw{GV%^~mG8D5BnE&Jq!uk-P!7F}Gto zwhIfydXuRV#4-@85attsR%~Z?y~0rQb_+yiLUe=@HCuxbD+i?*As(_anO`?IlOYOB z^o)@-VDbaoGy#v;a9f1+#QRyjaW1UZZOxxu;I$%JUp?1I zcQ`K>ZS@D(O3xElKvz(o-%e)~|EIc9b4yc*xe~jK5MRXckiv+Qxa#l}6{vgNppFG~ zBtnev5IR9Q7J`jS$Pk3sxP+k7Ns$tR;6-EM)r36WG64KT}>kN~kT%bg7 zj)@p)sa6zp<6|M?RmNlr4(%iX1Cebrkx9)>TLk=HR6%<;&UF| zSBOFI+cgUkR9vHQ7@4h<=7T_%l2Wd+QYGP6dfvj~dEAytFKn%|c?EJ&CP9Minuw5# zG9HoU6?m3T(}ZS8*wDF(KxJbc;}D@{@|V7>nFM9qx>ahyH_FZ$j;RDjpJOWwvshw| zk}x`yc}j3wlROR8%HDXUclnuT{XqJk-~ZIW|J1;rTm!Yw$qYRzq$!Sm^zJeJ!eoE} zDhK zeg>W1MWml$=i$y0)6$oIMt-MGOZ&Y_{O3DxwmaA}@3YVyGjS4rZaGMJEsqi@!zNx~aDmSs>3fHJ`lM1(~aGwgFQ{kH`JgUMIDh%|g{8iXlg&8UwqQY_&PE+9$6|Pa?CKYZ| z;XV~Ur@}W?cvOWaR2W#T@>gMJ6=tY#hziS9I8B91RJcZkn^d?>h5JHo-I!(UBo-!5f(-H1SrHB6Ou(>)OS zHGV6@d>Lp>ugD0t6a3rNNpLt+Vdo1nlCH4#8yWE$c$(B-sBoRa!xU~=_O@+R0($}JXqm6g%vz!VAQYY9PM|`guj!~ zy8h3V>@ro~t@)MfWIZ&_kYQ{7`LL1yh*~Krdn3Lhbn*F8O1_c4wY2?lsmWOH`uTtJ z$NuDq>^FaMrsvGA`4P9_5e!TN|SdW#?+2!YA4uKh7`O zQ1WMxye-Giu0t|YXVagN`Pq3i{Z9XVcFI3SIamACs`hcVQs-6m(u({iK-oSIzhrpu zKbB>knn#ROb@Tt&d~&>F%bGg=C$&$bDsRbo>iv+Ct2>XJQU2c>wk-9TRGU@*s6RvE zSnYSM2jkLOI$g3-h;u$>__F8E`1d9QBS zFP$%)(e-~rtp2(G8?5}}HvZl47yNR=ne@&lTejCfm7FvBTs>Z<{ZPp@x?0H{XsPd0 zC0Co!O74sa92@a7%B_34rQ9orByM`XRYtAgFG}C>^T?f4 za@u+P%4sEMKaZTQ%IiFjoKwkplw7@Pzut=8syP44@PyiTc*A798moYYAUXbvRDRxw zmi#)!|3THalRu`SX@=LRGs#%gE3!Rmd$&yQRQwB+{^LC*->OQ2$6q*hz0zNqCHa>t zzEkD2L-FhTx8!T5Wxmsuemi}r4L`#^?KjE)(6E0>%k9R&wWnb*=l~IplsXx#ZQ~EBRlOJ6G)#J}dph|KIIXl6Ni( zT9r$+&oX7#A8nt8|HsOkL+sw@~%<7R_ia1;x{RN<3X9;&|jkX=UX40Z+&&X_1XE>cjsFler=TR zDp_Af`MqCCd_wVSRsS{0*Z7s>pKpD7zV+?-*2m{tUtg>Gcdcr_%Z>h{*3ai#zxP-D zr*>t_{-b>-%crUROWmoK{X7ix(QWU@b?w0+(PVqekU!8Xu=_>k5CO@Ly)j z$S8%ab7bTJHG4cVPhw+r`367KDnAiS9OJe;fBq8qjtiyyP#I`P6;4w)YJrU0tnf~S z7b)yqC?otz3ZgG6#!1CLxL8KsR`}K>GBQcwlM3_ae?c3n3Vylbzo4+8-*}9GUt599 zj%THy|M6gz&Inw$STyOvte1+n8dtjNS^?Wss90N9-{*kjPC5XRJNh!jyG941y8+aS#2OgG<#xvUMCl zI#Jx8pwiO&IPyv1Q&5sVB8uKNFWZIw(Q}}1kRiyhC-JwTXnh=!)QZph5JL4zpo?eT@w2d1@9Xl{WZn!Mfv(BL`RXTH&K|r ziP3Zz>@K}d(=ukpuR=UM6pinWC<0+YG{uVp0vvf{QowRMI8iAW#`#I~@#XXk{8_T< zQhf49WFD~oh~A{9;-e;+2Q3vAWT(%)9N=l4itW(9aR5AHCzVcp4+c}_Gs&En-Y^*8 zkUc#J6{o+L5AXtuW$Cj#059tFU$4CSxKx0b^veMX^>@Ysyd3i~x>kwav=QKM5q|-v zLSKyTnE8*`e}Ge|hh+i0<~RZ{Lob3y$b3ESUjVhbK-bAU67ek3EYoAI2Y6fG2dnG! zFZTev!`jyAlkWt0H*yKY>h)Ya8lU-I#?f< zKIUTY(yyEga4hnRKz#T}|MfnAFTy`SK8^ZnjH=9U^rO&rNMAy>eaFQ0pK(1CX@#WirPDOTwKD(Is`e>ljk$r(2B4;hxrwQ3eBIn0WfI>tJ1lKKc zQpW?DgpK|=m`CK)MFW~e_z1u(k&~7J7$72IQ68_zd0-l#MQ~XQMa}_A8z|U_5|NX5 z5nzyn6(VQuJ%CmTD@D%t4*>>CI78$t$CGrKArjV#oD4YD%uvDoWtqs?I|ML7M51Q2 zI+3$x8K7Nq*NL1t#MMRgln^wa(1yQ?O0b(|+S?)2mzJY1&*su<`nwo$ra4i>uwo=p z-*z|Ff;QJoJv+T482Jvp$}_}iaafv&Ff2Sn14PH{JVl-qQ7>=wk6ty}SzWvNfHtW4m}>I$iQVh^&^Aw!CK z)EOxy+8v|Ew9WPvi+)d{MEH}V3?cs+Vhw>n3&|6RM~b61M`uXiOlrjFIN_M4w*?2Dn)bO zS^%kiG1SWL06XH3+OFdiH&6pJ>B(w?n6qRtx-4OU|%y%qsk_4!Z$+gHlxW*}4&HeQ@h(0d$z7Mx%dP2s3>W}!7 zG1TSUKf=YCo|1ON-->vnj5{%tnGVE^hu&oC6#V6E$WwHs5p^an&0T=)p6OuBY8Ji9 z5WU?m%AG3TZh9v8AZYr+nT?O{4J8wJ77QM>#n2P_`CUUi02)| z+-&+NfqX)qmwNlh9G~BpiV|Ror9nLZa0)<#1jCQUV`9q8vi|~=lYEP(X_@`lYHbq! zo356bExqxiIaB9pnf;~bVEZz27&!FBG?5NqW1adka%y=DI_VP#ctfc>x%G%JfPp$? zC(bAIp&6itt%sbG=49z0F2fs4*u%)qK&GZkP71H0}--DfUk;Lv;Z z16anuseeEd+(kUKyY*9W)R`CCYM{-d>pp->7-Z>>lj`LRy!yxY0$eJmF8!HwfECOs z(cgd>nJZa!g}!tvKplfheHCY}Z#&v9D&ZORpITa1EDqzdm#< zz_rY2)RRf|bqo&a1Ie8A3=ZonV*u(I9ML;quw-sv(4^0R%go%!;F!Lc79=+?IIe%( z2jE5qCnqi{0ocRPLX_umGvm4QPKP5`)zE77Ujh63Cj zLo<|H|CN?R_b|t!2c!aQv(r?QrC&+fwzF!lK9q*g4%Su(|2z%oKJ!%|<~uTX29F`T z#=>)CKA`MMfJexDP}z0)I)I0wXtKl9KOftt%w6UVNQ18E`UcEAn{15{(a^tl-QoRKe&++7hVA3U!ucMO`87t4FHchaslA|ZXE{nSMwH# zC0i+{WGfAsWGhu=vXu-^wvv+JLs65?td3S%HtJ6!bylZHT9j*g_#A)~{SK_Kta=Ds zVpeCJhPhqef-#WgW-)S!pOc|riveN7@sdN(lnY@-A9yTu##!bTi>(;U( z!Y&4|vz}}li#hZ!?$fkvyX*i^x)yqpt+YQ`b~V~EPrC}PC!9-_@6NFVcd{WL+NR_L zs%=VGM}Qz3O`HyW{Ivkqkcp@Sr{=z?5Xff!9y;CgAIA20TIBcOxTjNmdgP}RpF;5& z`n!ndgNBbTIJC5{m?F z>WMVq!wSc1Q!7!01Kv>Bf!^U6P!?>#+JTEP;0}vig^sC!Sc9tefKq@vRhfQ7$p*X~ zR0(68`a2l01Kx?C^lnttdMZLR`ptlM&17wU;ee*#GE&|Hbu{3EDE>c2`bbj#AuIRj zy-3B!JOgFvheiW@!W^&W{$d``r{*{)xKdaLd~LZ6v8zPYyorn!|rRWLL?6FN0qLPulfW64|Kf4`4hE_&%r# z0E72-`1b)nm>&YV@V+T{RXAW9ga-5zfuXvlmG47CYvr@yK}C5k8pTw8x(?s`(A@V& zQ`;rQL1_5B7owKDW!5|Zu3&Gu>L>9Spx$wz^gn$aTHgC5NE60Q?M@<28h4HKVzAvW zz~g#*=zCGQ9wIEmrOpEKet}H`Bb}64o}1&nI6inWN*O2nj&o3Oa3ciRfI%V304Itx zD8fbzhvuP`+u<{M-JV|H+RR%(%KKm>9z%_my4-_IKh036d$S7v>`TGY7YuIG}!rJ1a--w5y6{{OorN2m+U{24#;^wll*Y5#k{Z{h>wtQ8<<%UvUUqm>se89qcCMF;xTds z{!S6%aWPLrb+YvZ{N;7kr-;ba7q6>mfhX5h?l-1GJ|X6NmjBt1r+)-3<#~DDYBA=f z86&G(5_$dntYLA%wAbg_9Oh89xf$&Dwyr46EPde*=xaqiY$0IS^}8Tj)H8zW#GwzxP%ZL=lc`Sa zYC&PLl@z#1TTw6bLDD=u1PP0B?FFQnb|6J^DX!^{qlt?0c(y^WBe^24ISFFJzejvV zQL+6sO7r0uFos9l5!du5(WQz;*!cKQ-;e_^l7UCRh)f&Bre*0KGOff;RqEAuqOOWY zCy}y3J$x@fshzg9C3YZZEgy?zjl7Nb@I9oA=XX#HD{p zwvL2;?u0%>WT)DVVr%Z02T(1+?dE|zoZ`DiL|PBTDPu-NDP#Ivi^F%hcChQI$bUo( zFBhWq4XB9`YVDwZdIdlnbCUEQMguq)IQ6450pb~S(&?@45eW?3`ZNO4UwHJZX8|N} z(X#ZyGJtjry!wrE0g@RM>a%tLv}aJFe>D!k$)G}Ci@9w?XWmg&>W45Vjp)Lh8Tx~m zcSg7w)auIy0(51tOn(V|XGC}IE_M3J8v#<8vrd1FZ1XUuUe6i~kQ4n6RL*AoMa*d< za`hts4SEq3PIkWS`gLSZUesf#+?_aFqKdO6z5=;r6i>DiBblq%eW<6VjSP$X9Ly!_ z=U{pjqjc-X=;GWHMn$SAB^l0pR8(|Qdm0-@p?*|!R0ja39)%$^Du#`9>x*z`I4YKb zM^CB;h+~kYkG~qg!M@w8XFd#&#Gp|Bd;x&0;u8J7Qh?+TIv20d-`Nh(p22v%U?V^W z)>f(Clnl^`TW^NG*9Fjx!5sZsO4FS|t=?k-Kq@O(q_SYtPY=9m-MdC5& zJV!Z3OgKB#Wb40B7w(?ujH9EYP4W0>pO~^}A&x{#)2)pOsF)R~!_o}BJQ201KUNHo z$-t^FSqP97KM@?eUXR)=?H_#{b?MOG8v&5RW;yj363bN^MwW#G{VuLT$u`43o=rQZzCSX#uutKWq|Us}wyRH*mH%D;3tgA)A} z%4ZaV3jGn%R-!6%#GL@68O+ctya45~MJPh8zNZ(!gg75Sy?zPSAf*#oY_tB!R)EQD zPJ_Pe27pTDY}a+vZ)p`DaqrTnUIS3gV*B-Ks*oBMYt+BSP$<1LjLy#v>35+gm#*MG zepvq-aq2kD5k1ZWa5<-G(qA+KtYUCXPp9%+!Qi<5CY5ImuNh8WD`wVcrB^c0u!B5^ ziEVUj^vkHM>%^3q3pMuu4BgTw+rL0bwtkGi^1u_NlwOINtSfDAMVrpOxJ=xREqnoC0Eog|uq=d=xx8lb0EC{g9od z)(`HFE5Yh#UM~|54*t!bc!)}TcMc?m#uLM>zk-I#F66S(;)ANqeJm5SVdj@1kXHbQ zo;^yg!?t0mn_VK;VXuzVv@s#B^mdrU4kMm5#%^5?z$G4|s}irsgOv1%cD*;o+L#0` zq=T1`W7_i)(y3np7c-`FETwnrbwdHVFd&P%fS6bO2tKA*=%9wpJAeupJ3_{n>_)s) z#`oNY_!t?VfMvqi3K{=*8se2Iz5?+o8E@ACai5G|2&Xc3wv3MqKzy!@zcUE&c{2W* z3-N_AzIig@8)bZS7UG*YUThCoYR4w)U}s~K6*^u7*1~(2fBhiLF5iqs6y-y6X_J)? zd(GPLZQ&?%S*(3Gq`30R;#B3)^0~~x^<`&wR2Hu)@1O8ZWeEu=yyn#0W=xr7iDt@X z%8Y@CXV_jxJlI@$6Fdlh$ySm~Ct`lssL)_LI;H*|X2MZn+l-_MvF)Mbt!elCswq060Y?ZSrgr zIspt9yxI*mS16-`K1RKXks^#dPmfQqI1{5J(1N;O1ymvu7l0MyLmv{OMKrAwJw$oX z$Td()za8-)2ZpF96A8p97N&$Ls8KqU>E|%hSxT8}68H@win>qPE$FObhXe(6n6vF- zx3D^#n&$G6p?gFSpXj@S51F6>LH`a*8K~b&6l~DMR$s)MAQaUr-VxSUNloYo zFy9qXG*&bht;NNAQZ!2|c&ZrHAwESJU0{+!636hVRMds$8UiOIJ`)9lz_Pm*Q!zeQ zdAL4X2lRzRPOYFA?Q0kJo2(@3x^y;}J59Di^mNT-#acr=V6x2xqPv8YQ^9&H>)hgm zuuh`{Y~oKMg1R}Fzrf-wVKQ0o@H5S(QNsX~Q30mOF9Nw;W2rP26E}lLEBH2$%y`UX zC9Z2P3M~F=vfaRDL~R0kTp}`qbQe7T5anbyS<^AzW$|@W^WsOE222Lae$kA@K21cK z#?=5hT=!yJifEH<7LZfcX^gbO?K)WqUaa4y*el7V7fe>ta}k}-i5E?_18h?)Rw&{n ziO43hBAKfMqY`ydFb#d(A$pjsw}K<>>uK0`?FC5ek@?uQf?a44hv;vz(l^;;jpmqg zY5|~UGMu(U3^iHb@G}ej%+1$QTZ}PTlR6rij5RW$<*g_)d0s=$u)An=DauVe1{^M0 z2a9p0EK25t-K4wV8}#pb;WJr(BxT&N)h5}nvP0FF1}4GLxn-?QRrTcBeI1ldlPJqo ze+AHViM+1cskUcGROniO-XUhnY)f1Ps7NtO@+w>r=(u9GM3t`HSh9&Z63uYE?**DG zQLSrf2GBf-mbrcn2AVHXoojf1pjwI6X$9Nw#->6XMg72TS14uisVO+Q3w6hBj{+St z*#-ewT_4;B^qI*&lB{bx`QA{oZ8$8{T@YaV)_Y0#?gbEj#WaXqQo-<5uvi>1 zS-%BKj@Y+Nx#Wr<`Q>IvzH2Hz1zxiCb^PUZw*%d;EB{f-JD}}xCIm8Pp4)=ol_1z( z!HFbWI~hX0mO=!kdp{Dm#Bpd*TxW%3gymAw;VOfl7MGfNA?MV}cB00_3bT0~bms3Wj|tw>70WhnfUxPDvEt%HIHV+TtQX(v^zPcBu}cD=-$4 z=muWZ4Q$_H^(LkVM$s*YU~`s1PR8Mam}!tb2Kk;MkY^iYw?Tf4jK9zzI}P&3OF>>} zkR1kjF!ia$2H9?qUquUwrGep|?qrEok&~^|;cXAh2lJx9xDm|M{7gDVw{_eO<|PL6 zGO^Og=eQ#GC%;z@HPZLlqS7ICS>WV*S@SU^m2ABX*cM9*h1G_NCPVYK zT_CS9$VUwFII8z`MhOlZ_d@^*t9Lqqy{gWO<{AA+A28x8VigM8N@kZ&+7sW-@%JP7iQhV(jv zoLmL+CWBmOkl(%<3CNoba;-rg*Z}g)26=`-j=2})TMTlgL0%mX@~sBB z!XRg$XNWBZxx^rEz6#{q4054CJ^?=``CL3SAAhp|Wy ze=*2*MXnbmVZs>{oR6O1daxrzTtU2R!4i^C2Z^k%RkYyhD3RUOgO)m-Byza!oC}m9 zk<(SU2&l6}ZkG-INpuO)X-s)sp)g&zCCYM*Sq;=xBCl%@_2_OA6}s*p4Afns5?3rO z{!%5XaQ)*NpfrgpT^&t8JtUgp%3TiBQ=(eeOiTyDBhfNfIyF`=X<40XSqM;XiPpI~ zW4R^LC8~G*{d%B25^Z+bXdByCq6XI&H9#2>ZFk*4xo1kW%T)%SDzYTn@2bBXsGmfQ zuE`GoWlLKQxyllO`b%`!{9dnJLUYjS;aaZmvAg@Fx zb3V8LXrM$;*AJaf8NkJP| zk>=2x?bInJ2U*Cs9}mqL+!xRnboI^Po(#=Nqb9AE+^n#iZ?gcW1ts@`4sV#e15YOL z$&f{2vWan5iOHx!n(9J@Bv8gI0K5@#x)=vxf}|zBX9p;B`Kh#;FZ+(R7&C*+**!2F zypRO2EGYgVh{0v6H`ap=(JZkd$aNItWGgY#oAAdLGa2;g;Apzz8f>mxjVi&HA4VY#?O2h6-Y!LewjVwioUK zxm&2RqM^BpuyoZhA6c~YUr7gjs8`ry1aY7Pme6m52%w=A852!M#-J-#%0(G%D6yHe zbT5GIz8Mf6;1I+KHXGmWu@x==InQCVKyyQGfFw6{do6u6sW?yw*()7_7-%i^c^}*1 zJdm$4R8%%saRidw$NR&>2J*sWrNh}=#}r6%QCwR3C{nSId@w#xMGUO<3>812Uc~{I zQlT|hK{vX%D1U(&*OQLUnGo*MQ4j}asIL{-+*3eycT_r>E^pSsjzW^n7^bDaNh${G zko~2jAV#p+X{flE7J9!LDjJ)s=n6-`Dz3qkFo@eyiXnSRCqWEYp}vV^yOEsf@=nT% zhUO~fLXt~Th>}bs9b?cKA|^!;2WH??dpbv$h7z&C-?8%W3gQV1VN z5yU|cJ&mb^bew`S76%O-mCbehXy|Byj*m&lJenO=b{52e4)y&dTSzs?b)A(R-sU>` z!Gm#G9!5WR1K94TVQ=Xoh=Z2>McMHMEp-FCC>_q`I+jC{t27&LLXnDlCqnk9TMz?g z7%KYT2=b?Hr9x}2q7jm8#)%*;{UOrv(0vg0b`!*bj_;HiE3i8k1G_05O_w$690BM~ ztOKt}r+-g6d>H)VNH;+o6h(bb%69Wskl!|RG&a{U6p~z&4O)68;Wz2XH~ApH(o>ny&|Jk;h6;z4ele-I*8$lAk03^{+4yLc?cR$)9_&#n>XZuGE}9@$ zd5nQ&WH{9a@@hl6vU!HT8W~1v>0eNW6XGEIQo0}pdZVFY?$sc_oUStTHdm2{`H!m( zFOa480I=y){nz&u#6k6|FJakUc7nXIuhQW(jD9-+s}-l12UAf);!0D zjU1;^|EC( zvSXGFpr;S7!&`~q};#BHzL3E847K@9j;L&ZH_kc+dF84b-)_Y=fGWqhUzGH4jcUHU02 zDx0ei*{UFWwe)XE#Xpxo_LY8u81QTATN$>Qw}JdOLxs1wiULDL65eA(+?KWmvfKL$ zV&JsMP!Zn=vwAfGm*8Ye+mO6sDe$0BYk zqs_`+^8_)_VbljpY|oO@eLT--?dB?GL6V2cQ*fB$Nr&?u2;VYL5C_ezKAK{S+Y0in z1C@@t<~klUbQHqd-9|dTBai7FEQkX)qdv@H3%CH}frFKfN<#;&_P&KAcU+;_I^7Jh zI|`#e;M7h-jGirUpd^M^C6;L7?!rVXXeg}ux{i%ELQfaQ&`U6I7niCLMwyfwsbS)a zk05o}u;?M2+W3}|jWUno{4X|>9v>K>5RhYzFUe@H8nZ10tW+-JBdzVR7hHsOe2f=RQz-xXq6 z!xIm&3C7ojZM+378Lskbnyd2Sz3BS}**iy(c~d%PgpzKUrO3QH{n;REGZp!z4ahQo zq|q=&9n#a23$VuGI)r5hr$OxHl6W6zsOlLi^)$F)@z0WW^uQv#m?F;#5SLd3>sa*q zGOvZestSHtE5O`N^QEBH#cD+mNt&-B4TLKULZasT{0b1(C_+G-=A-uz#9BoN3DY}rKb1Bqx!JTB^)ST|{8CvYYNN~keCv(>k zcNyUUgfr%1J2*9(Udzr{Fm)l;j#K5Ck+W_PQhiaw=Zwd{g&zDamH`gc4iChC1Y4fU zB6*|;P0zm&bPC*dtcj+hZ!AN!ZMee!;jw7HDJ8-m;{+uBRZVawC=}m9>_ZTmi1;x; z2nt}uWj+N!A3#mRrQ!U+q7{FK7=9*yEJzYCtJGM=4}^vih*coLSW2{j5>={1A%^G= zHR1IT4I@#@48{HFdW&YlE$QWu3hbze0UIsaUWl5+SkcQQMx%#pL-(Yg#jwQ=8SrsB zeXn9^vE%N6CGXcH&{2l@S16#`f4?T1DlO>WeZXw0;WKQ!{`CNyn|w}1+?kI%vkL+H z(mjGWdW)oo7(@diZvCYcA4LisgN7n*;u{f;FYc#!ds6HutfY7<$4xB5t>h5!cs3+$QCJ%HS_v3g(kx+%Lpp zbdtD^LqI6%ORuxVZJvvGaUwmq9`_Q4qHQ=o^%6I7B;q4v{DnD)kCgG9IAgGl;DVq{m-GTY^z1bkua#=Oe_szsH(IS z$E)yOw(0!I1jiMN5uYvN9#T5bM&-j0$so@)uZGXs#Y@m(f3SopJRa>8uo&!7*p_Ja zrKn$kDO4RnA2|T#*TloAYbil*UjVeYCW18J#E2fNeHT$y^1L>CPj9fN*6=MBF)TF< zXk<;G=vP2#IggSWz9kfNJ?)G~*YLMJf;wW@iBbjVofa{shF?3vzc>i!8_^sj3|J!paPi?r}8ZsiX_ zYQmMa2P1lt%3b(l0b~Sz;r+s=4~99WN9wZgA-Egr7 z8H-3MF7_Z7BeDz^vL{`$RQ9;-=8qARvwwuLCx>)55^TlA>Rv{Ko{MF5-y-r2F0DIN z+CqO}DpBI_Y+ZZ8D~`?Hi~0D#40J)Z|;KmTDW|q zGX=vwJedb~KXk(6IO>Ecj-KtI(iO-0k;5;`07GOBR3_3Il4WQO8Fof%C_5I`YV&Kg zu~z7r(jR(E(qFu+^qAa+9#cPxX(K=HfdBI;I5*EPvSx06MLzq9OC@sPtlUkuFYHH|l9G`}L3^DOG{yc+32XSes z<5VgOvc#lo{$7-6fwwB+I^@w#GECSJTkli!BuuoHXBBW8v+n!PqX6=kK(l?F5)fJm z70VvHii$;3{b$JfQ(Ttol!!6qBNNTCOcAMJX&pesj{A|;L60`ZJHiK}Q>8dQqsEZ{ z{LV$-_d{=vPe`Dq?f98LfwLV=94dhX;0IFzR@k*UUjh+G_CVG)nDSFjDDN^@+IN)RIQSiK+_^C`{S-nF+3QTu#`*az@j<~ zSLfqOS)$aXeF0^;Y<)#LT7vF@&_lSCQb|O*T`C>sQ2uqK3^-jCm)abR=E9}YNg@h2 z2y(J^X0d+7mjL`~KYwBK+LHkMRet{R=IJG%?AV4Ynx~ZjRz^0UCPL7@($MwcRKRX9 zvNK&y)pP8sL_bi8xSvQtAA~A#S-UGi>d2a9wyKCe+>_-P&^mTQF4B|@;akqMp#&(# z9Ps<`Fu#$9dA|jC@-u#ujL)ApRg1rqmK>i;Iz9*aJ(u)*4sv@g>Go3Cd{;X*zaJIRl_HBc9z}Gea1rsi z__{kaEvYJ8{DbnKrDsxADlemVVwsy%#regpy%BL=C(4_bs!6_nB;!~;74&L;-OBOO zQp9WIOGS+jAwD&F270+8cNpT+gynfvqOL>=k9jD9rFm`9}WlS?U%k;!0><#s|J$e#h!sT1); z>?p(DPI;_}ZRpB2I%s!k?j;|8$~-^?iIu4;C>2Y_PB>$2>@3#6C641%(pvdCqBinc zD!zQc-~OWP;OJQV6I;H9%IgJ}L*&zAQKHOCPf(fVHY*?mYhLtmFW0S@KshZ3jgHT9 z=~+>;iR)xP@NQh==i;3xvxz@t7aj^WuJKcGf5&WUM`_mruf(Oz?y~}UovxOC>A;m%atgysnVmN3{4oiyTWd>T4-q4AS7yw;Im9E<$Wna6R zDZMGZ{asW%*nmPJJiItR|;M$zDB`F9DlcEC>ONHy>27DD(!T%k><=m}K|rei@-%}W|FwqprogX-bi z#Cz5993y5Dru*JXrSQjS)lNV0PIYkDY>40&NN=pt&kHxa5t?Z3$MVWru96QYXYE|) zM6#W-4qAWhQfvtti-Qr`l|v+rYOMjbZo(DK^}n;4_pyoL*v{YzAqOZPkX5l5gz31V zrd!QGYsG2v5^v~QwafQ&nUhI=iZB7JEOdzsT$Xi8hE`X`2}w95 zzS^JIh(QPc#0%BIKNyOpK*W(l$=eu38`-+Q*Ljj zflR?b(yTocu^cTGn4y3Vz=!l|DQ6v|=<`Tuf&v!L%eVGIo(4e!!^-{u%c+79!&R{J$9W685g*iW0`kG&%GLE`r zT5dNIjU$a|xdZv+h7_jdP9%MCq%SS^VwSmVE5)zlIH^v{y_KCV_4l*^ays1H2k|@^ z-?9&J`2hw;$z6!ccWrs%N}GdIrbM!6B6nrj_XN6TTDaU)J%A}q<{jSsjD6ul&e#`T z#rARD;dS(Usw121kT1|Xe!>);Cf}dORF!6zXGWRxK-Jkv!B%V%cldWVyI^oz-Oe12w zGVA~-(y;Z_{8ba#1J_p2Wf;1O2^V)mt4pMHfdl(RnJWA-_-y`J!!1X~ z!S=q8T7hKCaq+BTo-YLiHpVh$%qpg1B3RI@au;Op#D!i$Uh+XDXY$9;v-oH2U~yI; z6Y{o)kl;C7mVHXx@U}|~JqE+188J*7Qcp+A3`5UX(D4Q7dAgMzaxj5Ss=#-^A6<(i z(v9)y^?S-0X@Nf}q5C0pzY1mZi-HB z`DcH|T40%?lTYl1Zo;P2-3cFrANj=<_*;RDO=7%>GN@4r{*DBNoS+Q8lZ+$oMT*PE z{)&qV47{uveVIR%7I>|qlUenOz8sZjw3**kAM%@2>Ng49eq;$Yhtd_a{zkOe^4SIG zsPrC1q)4MRTWl1@7OwF#wMe;ioB`y+mFwLCDKmSk{lI&P_9WJxkpW>e*nR*$PPCgl zf@a~{ES_j=L2>17AzC2QRs+)~OD-OOCX5W?7pzz2K7)cqT6q*a3FhOJXy|Uxg4rd0 z0{j84g>)MrGFQ+8`t<7@r6TYT{CjEw64KFHWGJseoiT7ExU|SR8_t?gTF1vOpafo+ z<<3Sgj7(&|G!#;Ua7ETb&;!Bov$V)=>`zyLd?_xexO*a16n$vr6 z3So72vN}7bchUmw%Vd$M{U2gJ?(f*|mfcbdbSUaBC8L=Tjk6_C z8Ttah3=B8*?SzX*Ha084A4+R|i!6KYTnSIykW3#uY+C zN4)9dv9l0_*|;L>FiBin1@5nyeZ;#y-sHXo&a1dO(0Pn#^6?mO$HN$0A$>3&L5!!V zejNz(?m~y@)tdM~3LXM}5?AN%=E^$VAOr2&DcJ8U!n7Mw%}WvUhRrJ{EFqXgx@ccD zVG$ZJq*@-ZV0?s=Qwvl+T=-+~68sZk)lrR;Va`s7WhdY?9GAEQU^*gGaV7l)z`SAC zN=s*@CG-Zq#mSy;bf|t=o%*dbiBdGIT+65XvovB@rphcMs&x|z!V}#!$l)qn)?6je z-G_Gr6^f#1M$E54uht6;4G$yrL!`lXmWJtm4MxnbA+lOuV`z92sb41z7dF?x9iHC! zlD}POW)W4bKW?P@6)AqERI8e&3N)%Z4wdu~WU1q$mC*62b- zr*6@)8U4Oy^!|zt=V9I3j2`$*Gf;U(DDXW+?~k09DLU2*mg}0eq~W6%kbj6*zK#6} zT1C9(3waj_MFN;_qcYyYH8=&Jr;>!r;h(uPh^N5)H!jRreF0Y~8B9~;Mc?v8e&9nm z8LaL}IMl@@N&z+^awUNw0AcM=8@NI#jd>O*l|U7^%!>e?N8|}yLskInB9WDd6kxTG zgUfs+0KMveAFggU033(NjmXt}GXQ^Msy!;;DP@^|p|ia~O>)|hZ4h*ZA;rCjjED3X zTtoH%ln`|9;$`8a}=K%;1^gSXNNM)dY5VeK4ytEWuownK0eYF zRC8V6OdEZ}$>pa6u{S;_Jtp>H4~)P(pl-)K1KGIeQi#C++97V-4vG)s-6Ew6GEE_e ziCtlkTxa2aVUU?`TBr2$X+dGULg?r7XhAyr?v7M^2Td$N@ku z9?$Xo6%;Re3jL4IMD2lcb4?%7wg<^=Elq)TE5~_PV;>>3SUYx1V!NFB#OpA_9)lu) z!W(M2o7?UiNSV_%bGvUOZ35+PZo7|-3ZiY3*db><>^blAS)PC*-gDmX^Y1x#`kL=K zAMgd;3L&|A*yqDSJuv$P@hrL z$|?mgid4++((m$F#zPHHE633bzs6;~R!PZKNuEMcJuTXWkfklfhDyykQPGE@KUyzQ zU<`q+3djz5{XNjXR#oQ@P#~*wt&h)7WOc6fdAT|ts1) z{nVp=hIy}r>Pvj#B6Av2(5J|ObkN-i2 zHtdE~Kt9;_mS3??Dz;j?_jtFQt5BKq{ zeS4>k%p63ANgboX47#=tC?kDQ%V>j~5=1*0G1{loKefR4dL6!@QzW|v^ED8UdkYFW zMe$&by9^SYqTD>(W7Z%Z9YbgLe6OifbZ0t_iR;h{^cY^Pr8ww|rJcG&(T9fl7Fs8_ zajzn|A2{lM)!!(eCtO6}=VIczk`7T!Hpi``JWY9=kCW)8G4z@;7Wp<9o+Z7Q*))S% zm#}OU9F=GJ_&hiR3(kJBTWGOYV<#!vtE%!*n&E`g$$QvWT+B=_fi5%gC|P@7DHSz{ z+=p=bq3sN-N$2SzH05PfnnVHvNGPBBaM$1erE2&3!w@UX%-w)_+<)@Oe==8q3 zbrR*}*iDH-Yzt9)_?mV$N~iq!XwpERnC)U>6S*O~mE-T>BvYpEvBU z+xN#YBi)l}AIdr$my+%)YG8T^(yEfo`<%uwIz! z#R=R3Ma^sWEvOlw4DvzvGX0fU2bg5@+zmD#19vmY=GlqP*UePKbPpQ5o2i-#$i{UG z;+Y3WhIDTzGXhRNS)O>9Un4!cF-<0$_~F8=*-N!#vlNeg8!aV1tCHiDp7`xTpA83v z`%xEaTY#Zdz@Tw=LH6@1-g{}Wo&cbCs^m%O7=Oxls``+yO!-dLAWmuS3fXt7IM0j) z=<@F=Et#L8;#1Txz6MINW-bEeAtY-(#mqIG;-Ep4lE||Nt;p@Aa`Ll(N zJ?QLR9sI#ZeBHhnPs2=+mGlTEYIbU=m1mq4(&*HcS15>NmxjI7O5L4wi?YJD7aJ!~Xl@71tEuipS)71Gq3>>e(z|>lfYblbm zLUOLZ8=RGrgHPdi0_r7g?~AEJ+TOdF?Y*1X-n*IY>CJ3UZ)STs+uo1*Mrt3q;Gv36 z?Gr4wynw5D_Hv3>aD2%L^zHj{&rR^z;Hiy#oY)?hw+$(za}n!RLqG?vXga3x2`Z1aEZC}rqVN|H%+6s99|Uxs?)3(v>#C%$d>(wc zIJ>Tjou!?66WBbN1<~{)>Z|x8w_0pJ8~}+mRkBO|K$`heIcub|%HaFfYpdjR7n_LH zs#vNVqzicl(F3?*nRI4Bk39r%QI&;Uj~45Lrx)XtX8JCUJ%fZRs@VD4`O{SuRlNSO z^H;4Zs(9=L(KF;?d=;+{w9L}Q_~4E%?RyVe;;u(?==uomCMV$sbzKgV1g6WUD{i2; z>N17*A|5CAAHO|7@dTI@-7F$BCJW>_1Gel*@kF1gllaWa!$VomaQTY{h3_Mj#3GowK)-1$n`v{yGJ4A0P zPCF-Vs^jwJJwh~Y+bzJ?6YYXgM4LqB(%ncMm)C`f&td9G|KMN?a6PWvPN))xys5Oe z13vVO%h7};cgU~mh%u;Yh;>x{tBxv$v z{uI$Zxd4ejrL3d4VqZkU=SZQCiW1GkD*z5z z!fr%=IDcJZlAOkuAp&KrAGlh@#=-$h62(D0q zb0GMJ6trKeZP>Z;24Ov&&uNei;?r0=hciCI<(BM)*~;q!#D(uyo9wx@<@-ndKfXs(IO~rJ368zauNUg z1bU9f62%@J|2_(X(h}H#80J%c4S_|}*BwhE!3^SWXgQALBQE#u_*X@w+9XrC7a94Q zI9~_rSBt95`rC0N(@u`x6)XwJa#=GG8%rIUm!HmLp8Dga2O&Z780w%r)||DBn|^b)^fBNnVu zB=oQ>F*2cV%N;W^xx}A|5j!grn;Qo!xKt)9RSJ`4#Qd4`w7hF%(gz9XvvORL)&5M3 z*jbre0NL@JNdnyhf7qX*DF;sFf{VYrYQr zt4Q-bXKSA0*W5^&eHIG_J==T;DV{MjU+C9-yt!smcN~zD<{MjR4$M+@xB(8mI~1ZJ zo_HK8>Fl|l?HiOx4ZyW31_Y=?zJc974Cl^-$Wonx&0;yv#iW90|$ zdFL3LCU=gbymOHN+tlU$%$jXeW1DSLW6x|;W7Rg5d|7OyR1~WxqdXm|1bH^G1KRB5 zy+QGi?Lj0fI#o&G3l47uvQ&k8KcNncTOl%l-+yU2)LbMT^>vv5UUe*+VF ztA9TTcl>{peF>b8)%XAN%rl?Qd}hWlhFR>BWr)fk`!=?a!HluYJ|D6rNr@;lmPjaC z>~ zzhBn6A@ehn4k{qJkbf8Mfe<};Y)1{`#SJdoM(y2!H#k(#c2hVS@z0JK82$sQ*?&Q- z85Wt>gY2J>$weZYGG8M@JE2XX%%{j~Kw=%p3EzqLsgQUV6h)7ZMt&=(A#Tdda`v$7 z3a{S-0D9QxH^~12vV4E5Ve4hNWOx}^b*=>T?U zfXeVpdd)qWTLd{8bmq3b<$qF3==RVqF2!>YY5E)lwF|sJCH0gH!p>n(_E%8Pfly8t zKmQ8KRUcgZ{42=U4l!$Ca<)&ZV3SEAcrw_MhC^Klo(%HBrY>$0oD630Xv6i!@8la8 zRvf*eXdem6Sz10-hv1PQpQ6jj)6t-uJoWw-eyCzc*-?`*{^%-B6`R)%JQl0ieCkMJ zv5GC%7ptu!5gx7y5lO`VIPP}WqPmKKt^D32M`BbJ3U)iiu zTQAMk`k4gc3AO{Tz;RkkgRDws0*x^qj(y?Z7zZ>IK#%*UfHn5kEYvnT{U2Zc^t1Yxxu=aRVo43UZg#RLd5(hDn7>1;j_b?@*y?c^oyC8ZF!0IwobNMOVun$QFqfnn>Sw zYnYU&VQNxRF8+>q#$oG5H_PNiYEu-X*OQS{JHWEtAmfGW1RBE zu;xLYSYLyiUIbO-D`?GwH`6oT!KS!M0;;$Hvo65K)dxWRW_T_NRB>-SGw&y(ZwKQh zP(+_NFk6bnRhr`wHc(A^gV=5rmZ-=_Gp0z5X`jijh&f^_nEir$t9~15Z3Tsn!u!;wv7uHP+0r_g@YOW@zZXSk zA@d{13Vm-j_8?NP*w#D}>=cYz4X@Z2QPdE#z|}PUoIz#^68BK%D`Y-E;w?}l)o}uI za7K)%YXk~!u^5MV7qf^k_Z39h8DQUs@@W*EHz4x@5?er#B;o|Y`4zb{Am28v?mqs} zS3?r3m2jtHaeTttgH^T&M&r;gtAtGa>tpq~U(3MvVf9cefPk1p3xP@!5JiV25{Ae> z1jLRRCLk&W`A%GV8$3`0l7Ofb97F-}9T*!hYu8jr0=Ur-+vFrF=BGxSChUkXpeVPK+^X$rSF%5@fe7^*)+kiiek~Q zs=D0s;6Ky zJ;TO}!9LQ>ziJuyrkfYqBUZwI^98(mN%>L~sXp{`n^|ZE5B&25yeYk}qhWuw1K+?|_3V4kF z1jbjy_S1p=9&0U{apVBd{hG@ z{hXm~4Yi^ZAYcchcHEEuG@NrF)Dy)0{0|c6DMS4{7^jHYph&92{roj@pMauhIDe{` zwwuEI%|H7d6&;+6ROuz=6} z6K}*Lyda6c4+{oR{JjOnE5zh^=EH))^#RbY2Ub@giN6mE#?d@O@54U`lKA^r;%{s! zo}L9s{Cy(vSFI;*K!7CvK9%^J2gV#?@-gPH#NWGM>;rN9nI1fh7K>X3p$rhmUnq{^e^G|wkG^>y1VvIEj=%4aI}GCZ z`&}_@%cQP0o<#heAwwws?nuLvj3ADT6-X=xab)a8;x&-3QtAFPM;490L@f`oOe)%F zG6%6AfO87OS}LXE+zrH9+9A;fgkKcJUy*CJNxAWNwjlgfatp=aP*fQN;uu_x#4^fI z48DWJTOf`>`k?90Am0gvb;nSN7`(@g!9HtL5c48E4juO$4n+2Dy{#XIV|FwzQ+5|* z^4g78BD)K2p{w=LysFtVlOC=Q{3eQ!xQO(0^Ua|npaK> z3i#$iT|9aL(QHDI6T^iPaAB-@k;G}Uad_l>NkNr@2)fC-^Etq;Dd4LsVYC^oy;eq1 z7|)nbNe0bXO%9x0AgA=_TsvmVfU3*4HD?#3k#4qQb^+f+6qq?`2futgry!1`a4VrD zAUleNLR^zjVL zCZNXTkd6hziPxteTnnm+ljqce1VW$RAL}fTjKiKX4*L(Vtd5`vK1uB*-Ox4@tpY{x zvsP&`wo|k4BrGUqbQMhQbB)h$FQ`KLB06qG>uxXLTbv6a_86$oYHg-oVbRdtsa)GK zsYvkxp1muG>hmCgD0FuLVF!pq_iH4MQHDY{IvcOVfjD%VBGCkdsRTtYeWMPwHp5JN zQbE){gO>}TY*0Q;#}SU1PoH4ODJZxX6iL+>cP(S66*YgZ=0AO!}cx+!p;sS`rc47|BTR^^9isY&?GYGFugYM|NX{_251bFe~E38=3 zWtrN?^8ceEbn104i{Uz!d-~;1QdOVfd~1=5f_mwmf-Rl`-%3w`=tLk^56q~D*nS)% z#BN!@-?Kh;Kw6Jg9slfQ*Uv+6(#43D1r2F7=z+F&0fjw7)mqDFx$!rxcS6np!=25= z?+T-321n z)oY~cv#7R-s!l3h^?_1V54u&am8u`1+6Pqiq0&{Cm8u$v-Vj$MOVtag_B&NwS-R?$ zQdMtot2UOZ)${TEKB()q(pC4BsyfB3+C-{$LbVQ5_3hGCzbI98r(5-UsY?5q45g~a zN>z2WM4uhs5YNrjms6uk~KqnFD@PE!7BM>Z+1yM!kq&KeCPO+CQdql!DQo{8S zXqpWQCH|W#jgy~-s9(0gHxpcY1OEI0nV&)aLn`w##tUr=gE2|3midne z|LtXTagj#g(fni*Pb!(<@MYjNLi15{= zxFBkS0>7OV9daKuCb~YBq%Pob0ZfBnDu@9`yMQT>wIRZQ51@PoDBx3XDBx%aedz+8 z6u{RZSY!ZayMQYQ5F!lt56b@}z}S+22O*UFm}&B90mLqB*7YE^aIFhyH2@$)81N31 zj{*hilmw(l_NKUiX9VzR2(B}LyIsH_0YZcUzeV}i1lY7BAbtDk0~hco0Zbf(kp^N5 z54(Ux1PBoZ%tm>CP@qdmz_SplwZJs_tN=a=!FdMocNZ}68UR9s0pCUWTLjpzBw!kZ z?sNgq2_U_y6bfPsV>B#mtB?R8!hju7-VPKPQW9`8guVx$TrK-OpHJW?LU23*(#`dH zF5oc&ypSKx_jtFVoNn~7(raCrXdLL>`_gAo{v#+bwuDkEhHhH5UTFOCw=|>vU>qMn zjM&RX91U3;BHWC@C=Y@H_mx15SplIrF5o``xEz8@4B%}p;6Va}2m>BMIlUkgc&sF# zb)97$aRL7oz?dOeWr5hjc`jfwWNnBrU@FSHfdXqv0tO*;9VP=A@Kym2_!$tKY5=#m zfb$3tA`DoB@|^_uLJ7dgA_xhXEnt5@=)3`Y#|1k}U=U%j8bfhI0~9!+(c6EVSWnDT6O6j&cgh3x`z|Z%i@LkS#E@}O5N)I z=Vs*UqSh9-R^9yc;#zg{Z=zb!yyCB$e;1vng)v03Ld5k?0z^fz*Z$r(tzv#_Mrkse zOS^1EtHk11wKy(vJ&MlfaYOBXOVr!v^Eyz)unbxf|DMO^e-)bEhfLXgyG~dlRl1PJ zBQ%WNdm*nL`8w>Q$y~xW$-@4gm&Y ztw?tkVxu3ZA{&1?uQM4>?-b1gMey0%nLKv;`(PXZg%gAU_F0MHfIXL2)@}}V)G!za ziX^Vn37kCS27p58p3pmL4mN3|TBq`Su@K?=KpP;l7Gwp!RUvvu3%|He%0uL9bzM5- zIZ(e=*Rh4)h=o>M>z0uHAWt3zS!`rKkfzEb93SM#?GJA62YLOdy>(;*l_PmPM&ZMn z^MUiG=uG^I%z&rlAAC4znfma}yq4s{?_u{bkofS;yiSBU46&C75+A-L79IuTFescL z3@~mORD!w#@Zm#XN8XGKD3Z9&QgEgtHyOmY$Qr9T*xyQ1>?UZm_vZPAK%D*gKIGp6 zS-xBq`*ekzC(R%32iuDKohJ7k>euzC$9~lt5-pOX0 zbVSEna0mnOQE8K^wXM;RwIRYsrHLpXPcrlj#8y{k1!UZ#(l(TD1qBXhxz2$clS|z? z^bD>2e4cMT>|h_BK^@+_fcG>%=n9%tsPVw2yy!ou5^W(|VI;1Yg7|rj)=0Dj@$(wk zq}3__S$?B49t+N@a2`&U@VUV?A&iH!SG$qr`$g5cw+#bYj=*`Y9q?C3*A-q8o>iaF z?pTr6oWk=F=$r)-&#%bqK%S4j6?T9mJXcCb&j#Z@P&h#tU|fK#40Wp!p4WkW4CSAI zB8ls?0tfp*TNxk@&xhUcG$}Vcm*x3FAqAc3 z0>*k!j8zBsBmg7fIak6nel)K1f;c>Ts#@%r0a+U&9G>YYrxy!2Jo~sZqaovl=WLYE z1O;x@a&LIHcIzCZ@SL6J>jpd6hp(Z|Zjd}qG};w3DK|W)=S451N)(>op~ANy4$tV@ zvAh9scs4`gdXVKeIw?GNpdyFo!II(mh^lkLb477@4jBUc5z-wijsX!r0;Zq6?CX`< z9V7BuPG>AYvxs* zotGl2`7sGo4>vUxA<`h^=lOIq#YAkOg3EiN>6pre8@XjIpVUTXl+=__Lep`rhfBGd zayzKMwyho7)`q-l#qC@Njm`8pKLrYSa%d*wTaNS1WL!tHLz~HX*5iDNInKwuFc>%u zbdq`5;51MiuG&E6OPO)5(-|i&y%j1}RRcm+s{vJ|8^wUCc^!CN%qUg!dXZbzfFxr; z;!|MSF=D{x1JpJ=6(Ii*AFl$KXRa6l9){Kr1j!^7BT@1q7|($uRw{~xe}Hio6iyHZ z7>l(CsEfx;{yx~WWn_O49|pIpaxBeArfi;XGekJ1)sR*s-sqQJvhjeX&N{c0RW;1>i|&_y#1i^7&l8Ygcb9#t=vv zd_K1)IdL`^GeI#cD&r11U}RSQCzn@m`%&^bh-c+)eg5>G9)46S^omKCGk3rJ0XL5NJJ`#-Kpm2gPz&@)GIo=gCDR->gHx~*2T^UV6FPj4dE?7WD869%mZ z`v!g0<@`ou^flu$uD155H1dvkY6*a)ed0EI(7kZ@t!(y(@VG@S5fLt=EK3 zI3(7LuFwq4YB`G970Wd<$4>;m6)uW?hHDGrm z2pydZl6z^Z#Qo2M@eHW(ofB{rT9wfYB01C~!&S$M~qv9-u&zjumKWOe9g`&QY z=>w`l$0H->xT#RK1hQYq;Fti>yFiw8;}Qi;#yldoQTkzxL063t11+wF>e}-3Sr4>= zH&h9&-Hc32poh;w>+rK@39n}%oy4QU>NTY>~gS@Ga3?+ZeEHFJMyW9%5)XpNp)3 z8OuN^qmzj@grJWg{~7V+~+ zAK=%xnr*&CTlOBzB%l;J9);Q?Xol&5d{@woZL~TKX>>@q^QhSt(rVu18B}a68{G83 zIEv5jK#Y#`+#vT&L}R|p6F)zT_#;_{`X-_=-`!4V0`EsO;eJZkxSUiAQd$*cJy z49JKI5<8EOt*oyCZ_dnHA4F7?&EX$j2*KC}bcrW{HrI)W)0v_%*2WP!Q~cz%Hl%fN zYeU$b(%O(A#jOn)%MnVe*a&%XuTH|PX~_8a0uFYO8}&R!!&n)ycCXMz7-~rssnUv@ zC19f6xY_eGdWx<+`IFkvMXCGIOVdGZ=`xVNZh5Np8uGhA{MOi7g|ID?3MiPrUf9z> z<7Z&MgZQ@~UfgYTtC$q#V*a_$^hUwWc)JrnpMh;tJZ9nWcL(AOLidIE5n9+SW$pIt z7JA^iteruwvl7?gubq?2eUm$a)mWH$_-8Mxfgo#4Z`I`FHsJ?Sp)?uP_!eUELh62G zrxFX>J>=x}A`g6y>_;FuLgwajoYbF$tID8=WDE~GPY#=dzz9;oQdNyfhJPPzg5>ff zNDj~C$M$DKY9`44f=YHngZDv7?k(Z$JcQqp4dE?H@!UsXj|$Ra0+XlaXt%?kxmsTq z%NvWxbN}(VvNsQ3?2OOt#g{>y4O}sk zF8j($0F`p(jR1ZlpekonOy`PHo#MCTAx$O1)h#B9q+AZPvz z#*f6zx()4oQB3YK1vh>`vIEvvId-*Qvr&3D$6oWf#lM(?@L3+5Qj_2NdMSsu{(lX1 zc7b9xBZ%f~0V;>}>p46~%i)9}3KULDlvmWnSmaZ{?aisf%aiL--Wb$?mM2CAGaPlY zE=jUbJOG4WWUvD6XFrAItNlh!#rojTONcdZ!aFMV{v6)3b}A$%f?{Y7-WpqtNpI!w z(?17L@-~P~nyzib#Y!^i?VP%7($6SA3u2RujKh2P8k6Fu!9oyzNtudLowJz0T%GUb z)S#i>27;|XzMEB&CLK&Ex?gU1{q3;FHRTvuh_=Mrqrtuz)rNrVn~-@5i6<%3ADNR# zd_$S;$XqoYTPlF;HpmnpF#yD0fHJs_t3j>At^S-cKf~1GFF@@^rB^|?w4~P5=#Kl0 z=yNu9-o5MOj`aDPV{dusZ1^yWqQ+}j`XJ~{zQ_1b2C!Sp`r<>(l}&(Qq&vnMJ7lhg-DD+ z@vR_dE;4(N*a?bShD_>7?MgRQQy7+gUv{-aP;S2nv8V^25oB*brZE!qEUs^)R(79E z+x%n**G5ZtmkR{0G`7AYoXsOurP!mzA@8KPsp@LcH$`0||OZs|dX=T@~%3ST;`!5~}V%gGYZMDr0nkP}69qB*$3B^0n&s}FY-?zL{Y*SaUX)~yt=FuH1M zKbc*wDrPdV@bhf7@Kad$JT!(qMC*p9v*j$dj$~ictQEJYF-jlGmY$)hyzZDr#Ncad zb;mTOG{4~+_T7V!oR`gO{$_l1nxD#z)Hw;#(c{~-o`SQcd#NXCjQABx=F>HwO; zWo3Vl*8vl~4w$44;J%*hZF8ZNNHb?=n;B}VG({$*X~y&2>vn?T+p?o<+I>JyUPcRA z^v&Z@bh}u9Z9g&d*n`DFCw?a!fFA~k0w1Xcqxs;Kc z3q!;;cyV(vifU)ed0#pZ<&tUb?9R04lLzl>XZPikJ-Uu$*U8qsG!Nl4qE-W`xDgfk zI%lm0{6;-rG_BPjk1uZa?LvYhXavO1!?L7S1G!d17gK9p!@W|czBA1~-Z>)!EVFVDU|KHorj-#+QrBXY>18R@}U5kh_>A?R~_>yqLug4T+;J zX7Qy0ena767VkeQkbhA`f=kMX=4y6pGOGoG zxth)IAjH>hM`G!8Zk+JxHAu_OU3)yncdUI{cBs+Eo33fpS+B!FiLH8GwBY{Cni zu1;xeEkIYEsx{$L6*t>j5bNB6qBeRRs`<5#;DxpZd~3ql$ZfpiCNQq1$iQx@^%}G! zllV$^y=&P?R`af_P^X5}`O>XZqrRzAgZG`2I#)@Z-X|VKowzDaoma_uq$95HW6%*l z6f;V_xI1ej^!aP&_2TYhjpM9(@mv>I&Fdv_6k2gN-;MtHE=wL%>jNm+e)+pBdHRX( z8lRHBwBlaw2jLGjA{Iedu6BHw#eph2x_p@Bd0*xusmVLKe4fQIY;`}63vu>4Sy489 z-b;3sIFO}V@@-8-*&fw!+SRZpiwCD@*ptO^%%HC+Xz#qrIJ2u>#i?I}R?{{RvDJ&W ziHWVwyJ7Lx6tUF@)1*LKQ^ZyuM@g&qwq=mVwlA~Y${`(T4+-AaA~uBQ0;wD_m}8YH z>lMlNcc5+z`<3^YiH)gDBE0=XY)lfRt>&+;2UwKM;s=b9_^6(wgg@vUA63A$$lvj0 z<%%rrTo^C+F0hSSQ)F}>-^krab7=@)-{t)(<3myj0eu_q?!_K2d$C(_OX-@y9a(Z1 zu8ZmwhQxxiAj`4hw$jw`Sf-S<-H!+;Y|ETx^bUI1)2Sqw8AaeSxsS|pYRv#fIr@yE zy*RTGeXkxDwU5w1K@IwHy}cwewkNQxTAN+T*$ zcd=yX9;1Dok-Wcz&8o`jAY*ulHVIU(_G0jMl!90UCBR;WVaHM z7cyg4vgEt2^9b(>PnU| zk}XO|MrG;P9Op`wH zO7=98p(P}H8OcSiWFI4Gm5|IZZQtWc4lt5`9S-pvJ2DOCkFI2{k^G~CWS(hJ9O7Ay zM+1%IuO%c0Y1Gvbsi8*dYze7hS+Q@^$gq-U`|xNXl1-Z-7h*M`10yr(Sj9}+YSPCr z>9E91Ts<3Rm^2qK)3KUNG)x-y%nY@f%r{ILjm-2}P1YJF8N$p6tH}dnVttz`8q( zo>{PO5);DcV~F{u`>A|1ys@IE_0 zRzQ8gkrmLh16mY2HX;*Cr3gf+y-Wq~aRrwRXkIM1VSr;Lo~r@D==ADzrZNUAZ2C3p zA^+`VKQy(iiu-Ve2N7O5@4-c*mq8JS%79rRJ&fvIk8_sVpa@=$#iz%T4my!JPR#qB zhGarIFUvl82n&8t#6!faB+PCL@hH;*Fc%ZEa(Y=h2RQTuHsk|EJW0$dB6-6qEJ9a+ zxrvxnMSH7lcxDt7@ggy+rAO3<_4~otNzC2EtS;3+<&ID#SuwFmR6^m243bS>ug7NF}+M1WaSBsH4v9^h2Fu`Ag7`#Kjl!T|iL zRUyXw0nU2B(=TT8^bjli9l(yChmt|*9JueIcj)PkK#O}tY#uKB`ZF{`U*T+lD(>~M zaOdu~WD2r;b5v-VUSH-5XdVG8Y1C4|#G0Ic_5s9N%Lkx+aylOdo%uy$!|4Oo^HkEd zf)9jX!-@3rc2BVVZ(}Ti>=bXN2{PA!Tc1jjkm-X&8f7XWb2k#>LB7Wn^O3o9v6@~4 z#-%;GQQ3JAvXjfM%kol&N7Z}45?-sPp-8;uh;`q@?yx%UZmZvwhD4#e(tGvwZO;I^R>a_?Xy22qCG zI|qpeK)zVT{7?6uh028YjC)s$X61}gKa_>Bq#Pe{o z;oeu(z4f899*EuRX2`v1;P#>ta_=}K?xYO4cR3QvK)%Nm^FQ6229Dkf_r}A|u^>dRijjK< zq1d?hTMxAB-ZRR)P9Ux7?;H0XE#=WN{SSryR#BPHBH!NDof~5=X%v)Gh+y*(0q$Q7|0ECJLVPK)X?}QJKcQwLdgb z5Y?yTA>x2a+E(-&xVLN{IYgX<&J!SZubUzFMj-+tDM-n^O^|3r8H$1&B(gxh4;1si zq97&(Di6anIYd+t(+UAG8I%-QE)Fs7y&IC^-YR|g5b-ReHh}_FRI=E;KIJ%8aZ24= zsZaQ`Kw|fPgxVi~EdK?yncVvZij8|~d7xeQHc+N<@3fDMd#^3!-kvInhegP}*Qt9i zKApZn~ zp%!n4l(yJESNR7!;89iOkAwUw<&%?774rjUlwTFA8Y^jo=8S8We{5XSqm*mjQAuox zK(0wu*X)LEuY%Y$ZiZZQ65JD1LXj7RArMKUgj~}Ui6$W5`-=IWu8E!-V)g&TxF%gp z%LYUyC@KDll9Bf-8X=LFC6PA^QZqq;`YKr*c@>r8Sj8!gya9c}uZB*Jyk}7RX^`a) zXa(wr4k$K}*VqH?MjpMBM?d4~z>r8TtG9;xpA5IWxnv3uPNx%UFN zzf%dhw+4nlH5w)4-mXY=0r>_h=6||(G*rIusd4Y^V%kVRi~uDqRG13V7Apgi;@%13 z-ldRQ3<}WRZS*U4@1x3btm2f&*mv~_zaL2K-Xhd~1!Vc}*9zp`6(~0D-RgmM-TSgK zjeBzs8TZaE<=(?8XryPC!q5i5WCmSkb5IP!ewd@ySEV%4JkwJ%|c=T$oG|E z{-=8nLS@CzjC<#cX_Eml5tJ0aLL5>-{#jem2yyRXaqlKbZ3G4Ct7NfzD=G)k>!t+8 zUf3u6B#_v>AE5R@5TaMb$i4rf*toZ`@(J2?Z!2XQ_wGO&BziZNa&N9m;uP&cxc6yw z@9)t08;ITOX2`wOFhr|>*u9;Q=s+2A?=48&4DtQ(6GE|QF+_-m(m^Kd(4}y{w zDvWV&c}R+Tw~KpUh14!kV1r5)yZ2G$AbQ=D#XtMSKH)b2iQRh~wZ8@-dR2_vn~!4S z-mS_n;og^(*%USDSNRL$-nUD+_wWi9z?n;s-20BYHypD`7|l?$sB$yp-iF{_OC>Zp z^g|+pGUVP#NZbSReWjTH>E3xzxeunvVd;G_Z51F^fMO1!bTCTArJspQ-$%)Npg_Zw zVtBDjD=G&O>!!4EpY{n~3?z2xdDQ+Dgosr!a_JTn8<#fsK%0n-u^tMs1|2qT{GpT^ z2Wl1U8x1-8M|EQrOf!{0>_#_3ZtMVVdnzF}4ntxHWyp;WAu$)kFS(Na>P9-3zrqRj zXy~kb#Q5=?*!Daywt|wDscj}qUqUOyrx(Ph-$3dsP~cfl!{v3c#maH4;*|RI_demL zfy6!yV7&W5mVd5RAfNhRlJV(_9%$p!q*s+`!gMz($Se? z(AfaQ{&h3t-wbfmsf7GH0g1aPL;hWf#1kOjw~A@PlplDy-1UotP&whKac_AsZ66?B z2PIX-Wh?p__r^m~+*>Jw7pK2L>K9O;p-L8qY$fG5R&h$u?D&lER3Nc?D`R#{09pPh ztw8P_jAG;7<{oI*z3r80+)JBrihCQBa_>Nuw6P+Dd#_RVwujEPAa<{tA@>de_a-VK z_s&LQ7G=o2&mpk|f$t=)FO#2)VpMd=H6oy)y3n^)_TyL`c&uA$< z5`8z9>UAi3x5D>|mX??s_bJnOrP(p#l}@F+@|{XzZX~aCRjAm3QU{7+Auh014Pns{QUm^J|rV?q8W6ox!85mF`NW0#haKbCN* zH$Dz%sn;tpiSzM^0rJH4HDL0L41VZ}CSPCXYH|9ULcZYX%->HFa%A}_h5EaJJw-UEsu5SCq{!V`i@rH8>0cgzDZ0 zAbz#r1+@4%5WkFRa9Z)nDCg)xg;VT{2HU4Da@VrJ;=FhpkP@qHaKy*tpmf&#Twl4t0c6c~Q* zant%o`)VJyDA9VbrS-|)*1xGh*kFZP525Y=;?|FXqLCo(Ln9YrnN;c4KLXMDAXxW> zf^zHs)QsDDV-~mG7=u3C3$B)^mXIe-+iO_h2r^LNVr4ie?+#wuT~-#eXErw zBBpXZe4UM~n6uEGdBW&!-mh5qg=dO&cY*{>=zIXa+;H-RJ}c5@ph6*D&{>F6OBcMa z2mF|dQ^QvLC-@JS1CL$;uesod`n#6<*1TM7IjnYlWhQ~b;#nZ+WtBCN*W_Chd0+PD zu%WfsHc;SzN=oDfp?y4LrO!@#wEtdGyWDh%EPpxWWp;?6M)_t}`LCk<2o!%o%4?{k zD34x>YjLh@;s7=@1WPju6ezz_P+2xk>T-EDxZ z;OYXi4u}sSZiWsaJ;CikC3FZGgT(EWp+m@0Bo>2w#}!i#A^&5AyaGCZfo*aO=_$7D z0mdsJf7xAPJ{?1fAVu*jkE>5Y=`~tP$B?63DxXkI=f~#TXsHR!$$*ME2zA@PgDZIU z&l{jKN4*j=2iP)mBzk9#!HS2wzsuk!2u%YJ&m8|8v8=y9JaZU1oFi$C(lbXbtPigO zq0`2x2+tgkX~vy7j9EN$7-P_iA{cP}DHDY^4Jb!9jLFIVFBF0XSQsRV9mY2SBg;=U z0qG6~|F>F)992W>OhPA~@$dx)Q}*0fq(`dCKWii^$gYUf2k_CR8ya>4C}3{Cay;@) z!ME;~N+Fg>$uSpROip)J0*M#Zx1#nfAUV-FrIl>Uq})oK)16ODrH4^r9#slG)d>dN zV>Hd1ioWWb?%eo2xWA*Q2n^>BB(_8P1(4(GjMD%lexghaGS^|fS|8-pK;||ihEe7k zWIjgX04Oj(6|BQ8V8p!r1prsMN=+(Ete}mB!a~PFWW9>uT}iSF>@Gi`)iY7l;u!Ae zgY1>aOhjTlWgbQ5Wh9;lMN%E-8F0#D6%+~TvICh96*JG0U)7ypI`hv?@>iQEoabR= zE$Bff5}#)DziC1O4)AePb{kFXXm7cO*xDIUqkE`n0zy+(ND-U{KHf6O%;!XXw~X(lKn+vod!re z4*7*3rv)-$wA=zYU6ARAL^@^qATu9{*_0_j<`fd&fI=^Jz~WwQ!zT}>!R1Mral_64 zrA$XWb^8sjNrUV-WTqi;FJ)>X^BNMbf+DGoa~(L&aon~7$7zMkU}S$;b@WOv4$-&<7p4ME+T)e?Zb@_B>KsTz%?ZKtm-+}7innMb*+6@ zpGJc#W89wx*eL?MU5zobCeGF@|D#%u_NVBEDu{$|XZ4$+$?`v~#Rp)-FjM@jTl|_9 ze}>}wq}Vfw8=FYs<61fyIz!Zu6R1_>@+o%ZazHZ9xjnWXQjvR6HP*vF>sGb=)ja$F zfyJc87Q)|00O8z@ z%+)wn)dJlx5t$;2FxmzEE^x+xs?rYV`1a~p|6GMT2N!G?yNGZ3_G`gED1aW{WDA?( zcwK|xMGstkq;ePr{G0z1ke8$2Iq2C0>ayM=WzII84Pb_Rhd_pe^CB{BkZA#mqWy{g zQc&AX1r*-yoEd%(RB%My3HdufzEJcg{Y*qrH2CP#jP#3Kz-MgeQ~Ve{R>f`0q#~#c zKf7C|?{fpc7|;s|zQ$$XyU+tEJBr?pup8yEglBI5A;Y}J7w{_2Bz~d zm=_@YJE+Fj$aMMXa$;w}Y;X#zC6K?1g471?Ett*FJvi<36?oXhYDGqc(sTN^X^G#8 zo=(e(^f1~FJ(4nws-ZlTwh}Tz5mp)rO~?xC3?VxSMH8U)E>I+uIE}&CfZS@3(+-)6 zIPR4N`KPL$WEd8T%49_&%fC_C6y%BCe7F-F=8%yPlq(f4tEA~ini;In1ygZ* zR!i`DC0REoD{KW>w+=-GP@M;gq!Q-^a2`hP0g&&cM>8ud9O5dZGj%KQkV?>P%fOr7 zjGyBLV+AEJf*#4sR2J@4k`cqx!)pHwBL<@=4#&P2P$ZQ!x*eRrV3nqIS74Pl^NJ?} z=&K>!pb$#%^I0kP0eVDwSl|~xw?!C}L0iJ}M5zB$xJDsgTA=N05$235*H=EsMmX2V=$Do>G2ru?&( z!BJJmqkyl|4ARo!ZF$~`bYBU1G!$)+vxH1Gs^JXOxkJUfD%dFkTV=r3mj;`sPZM7X zMz5G`SMe4K*6de+y<@<>Dh)R0ieU5>$~hHptzgp#?7RW1iZG|2+syl~2o|~rPxPs{ z0Xs-wi6~&7=>{3aVAHP%b{*;rD+N~VH-Oz}z#i68*RsMZg3;?Pt4e{5Ah0_P7;U*x zqM7C;mrFZfD(W051@+z(0h?SJZ1fdBcW^CR^U`q_xxYA(3D}vE$Kr>2# zeL!HZ8?ara!OY7)m-Z&TDRe-^Go-avjXwZ(#(+iNS1QiT`$3n2{e?P-DsFr>lE4yP z*WT<=8qB;xbSW6UZ3XY@+a0u?XNX8JDxY@`7@Q5r1uieU8C z(r+q$i-Khk*a8EVHlvi!x?K^BUTg}gxCxCF1Xg6g7M2F$krhwfg|EyMj0<7X*?af=Y)ExolrKn4Llir}3q~fNTGYPDn0eikQ zn0asNQZRbS>U9-2arO~`4L4vvl?F4fR$U54?_vF`;>KrJT?E*}2CUcp(t5X<$yf9l zy{eV3;$78eqX=xL0eh@8*fm!Kqqn)%sJLn74g&kufE_FiR_}^n^upJ%Qec6<02aMZ zdoyxYsbontjrtQn+HmRmAN7qz2$a9#Z5D7{R6OO1}reUR5Jrt z1fv(>5>(uPjV7?50qay6EcA+C^sZcnig(rFw2QzVFklaq2D7dRMz7N?DP>v2zW{sQ zfbA^}W?rJZv^VLEyN^}e^yUBpJ8HlZ=9Kc8dC%@rFnTGko{F0(Xf=Ta_G@q6RT|8^ zigzg(y|*`0#h+83og=X83|RfSr7SaV>|FvDD67kM`nHL`qt>JI**Ki*;M9mtJ$%3F z`Ao_4+>z~V%hbTfsOcQ(*7WcvP|u!>qVqrC*(DI~`TVvb<5YA8oiFxE8w)wvzL~fF z?CT1cl(x*WvwF4HeceO1w6iS(6|kab0%}xx*q0$t`5KDq{fJvuphzll4uZ1?xj7)` z2r@~h;UtjrJu<72SVEcKk)cam37|@$FuZ1wsIDJ{Od60D0pBT$%nXPWf}ASIe2m0< zpsMwdp_Q!D6p18Ujj0ZDIwCU{iTgmIi-+LPJb}em*U9eby&`WQyAPu1G-OVJ?7hg; z!6lMfAp0d`QjzFJnT^QIKw>H=k^r0|;Os$eC#cc)$b{0RsA_6Fo_-)L^9T8Uu;FOB zpcya?qi)2Fqe=e4&Y!|`)B5_f}h2gsR;%vVT!1`53qjvS$W39$-+X|L}UITN_{6cly9d1G6U zJr0=(NZdu4n~_<8#4^g{BJ(*CpMW9>zTr@>eQ^~HE71c0e6CY9gA3xds$X4uZ2!R z&=?zVNpcpdj!qA|F97F1grdh$bulQCN}Ofj{Dj;Ikh30{5jb%Rf}Cy0oI&C!WnM$( z8Jz1Z2RR3k8IDDKKB&j{Jn;vwA0-fxuqcWHOit&>%#k1h;% z0`F+K|F9N+(GH)EkzyR97{mzS%3yH~+5$09udENTZMP^}p8nw)?@^7B-f&4+m?}w} zamy!L@BOAC; z9Y!_;wrZw9E;9Qx^HLTv-)V;JZvChYU@cU~qqm0lDqs-9^qdet7X@r>P z?noJ_DE>X3;xtpdVuUF^;wiq(6k9iIvG24No6$dxEDo)JATuRCD}@H!?df6PMp495 z5klw`D3VH?#^9u1#JeRRr#&(=a569&Y zR6aQ~DE#8N$ntm6V(QAZZngj4*{i^#WUo;&-pt?r86G8(WyB4<;cK{KgxHzC{x3K9 zw|G#}{|8FgTN0-{(U$J_zyV__IrFGy$eH65avYrbt%v`htIG2KY%0To0u{}?92}T(+zhSCFBPByaW9x2sZu? z$d+En(!m~h(F?g>GvwKW3W+fF9rW;JG(c}u=hn7mN+7Q?U+H{f-;o|RxB_Oo{tz33 z3F>x`a}zS#k$8eKqmem)6S%z~XA&|^aguQ@$aw&n$B}ppRB0hHZ!Y1sS`AkqV^nPu zp0&Ijs;oi5zYzbM>TgA+HqHic@7}8VDl)t>eg}yj;B*B!pCR)A64OCZ6Z_+$%OZiZ z-BhgN+nH&Rt)Rnx4q_ie{zH(x4w*lZ_=7S_k*VR>RyC0QATphi=m_%BMyvGO4W>Jj z@L5nFUdCpIJKao}SpLJNI}k=$P|0Cr<}S-0R4`hs-Y&(o*7e`&;m=b3z38|Z%BK!B z9oO(AT5bwH7UQh1qT!MsQE)SC9tLtQAoCy+b3j%7ZPbMokaz){EhLhN%&$nC0kI3q zEEYH{*EHq2aAaEKB7>PlYAs5aED|O#h3if|<;ltWy z8i~uGl3i$KEX&_i!N`TrOEJ5!qlf>F^2voc$}i!<>(FvjpygKW7`UVf3OmmOXh+X(D z67NukT=)wT=O{xiqzyacK)#n1_W$O>VJb~7{1PhJh3O_r{qJfqx$t)>W*2_p;g^Fq zDB{S4zbfDB!Y*Uca#OHNqtF=#W?R_X8stnvW)KoVP}OibNsEcb9_w-`r=u z(Mj&Bjwz7cXQp|}KU=}bea)np-M7fY@1=Zl-xlS2-Dic)YK2j#C4Ou4EG%!wq=)6k zQaezz9%iorMN)~g4xEd~odY>9Aaf^H(IY|59%K$9@eyU-L#8vaaM zKN8=A{Vm8>SGAZ?s3`9`bny%ljW=+TM!DV4$Y1DKqD8o9Lq*o$GW;NQS0Hu)@fSLb3@*%&jD9p^B#K9X z@M9&uHAcxXl3JNjE-6lxl+hx~N~HI7jFS1N{g6>&WJ0WDl2IkwQ2e|{$;+;igCzA_ zM!DHW$!=Fk^dlZ6U!eA9Mv0LLu@Xr}l~`E1{Nqt_^;*-CG?LnzQSPi!lB`8|#@VZ+ z4iIXA*j+{jpCt7txe>+PK*n8*TqOrd>eGyJ{o>VKPq<2=AN924Hq^e=C^0f<3CU51As zj1nV*mUxuhf#T7kB#QO`yLO$p3#&>^RThS2*XmooLM2#Ddx9-QmB&E*MuwZAH!|D| zy^-N&=#7kBklz9Fbyj43BZD5~PRCwgrM3j)+ZPSDs&;EMUgWV?^mE#f3G{`{?*a84 z$O^4J71vr-5UnG@4gH)AB-kEB<*>So0@;m`xgLqephyyPQo+eXZUBhC=J}+;(25x_ z^Mdlh!gVNL3&M}JReH{tg?kj1y`!H~yRvFK0I|10tnFtc&VnLIjI~w5Iw_WjK1I|> zVQe?0*Jp|~r$e?k$Y_4Z)tpS4-|puuH=4&m>`oACUW&wGP$Y@5<~_*00%FZixtdMt z63u@?_74zgCSz-Cqa^);q&d02^9E_AuBd?(O*N1>XNn5q@jVi3)!%7aMV-?bLLEVD z;>}1514WV;oA@wtb3oh`_bUvJq6A~Q;t0yW0O7}G&3uuP^gBypgZn%Aq>ao9!P>B1w$R8iU+zAU5kKg~1&vf-z=oMEQCU zer#5~mnccULK3^Xzw?_h>mbD5B~dnOmI~s?LW0x#J2zETZ~X?LUqEbDWh`$JK#?TI zW_3cYEr`vUr!ctB=QZm=l+OX-$J$=sK}q^;#@l0dg#peHqwP6}Z2_^iLr8oAiX<`C z_Ahc5K^#7Z6$Z1QrY;Ge<~Yzd1>wgI`Beo&tYf6P`T*x2XqNknQTgzDkDVk-PkowH z6=7I*!vTR{HCQ$YV!6P~2HB&LnTy0skn;dCN0Imh2ae9KC~ zt5tbD51M*x4k0G3$dafht#A2PJ`;OhOTsOf!KPG?*^6eE@-%Nh88$h zkSgCZz!_*N$KXI+78J<$R2G$n1H-7+!~xE7Q!5QMx`BMgETeK9tn}}>TWqC|p6)^w zzSMJQdx&uTpJ{Oh9R3Lx_rn)l`&s@!wBYZJc& z78d}v2^Z5l4{q@uExrZCH%e`EwZAJaztE2!=O1N27wBya2?zfWmAMNt4_{s;&;TbA z^y7>1W|v3u%8OEgPe9D}gv5W(!#Dft5&vW{KVUYpBfj5kyGEHZiL(C1TGwy(3nPAQ z58rH-Mf^4%zS-r8_$M!vPJP+Qy2B5wuK0ySw?MREhS^q+)~Tm%EKS7d{Vns z`PAq_58s?s5Y8eG|5K0lZ7!d*lWR|Uw7lzO(MPmL~DOB)@$Orvj5 zL2C51BFGniMQwjAC1bm|rItV6!_QMbseQnsc7{=#av8NRc+{?TflX`odf<1urI!DI zhyRgB?VldCe;c)lmr26RA||J2&>I;C5iprzE> ztK3rD-|_HUDxX?A)Pt7JeDT^ikNnLZ`LC5v17M1Wf8Ha%*uyWgzIfDcQG6OmRh3V6 zzNzxWZ>W5loQ?^f?t7;zo4$1O(Tn+@&I40e6sje4{(<9$raxj z;A2yZ2fyk0NgiP9>f)ZC>j6$+zI5I$4{!(JhdV`=0sh(poaF(g4{y_tEWX_XT=N;> zlf_F6@QTX-cT+)f#a0h+rt%5+Ef4Ta5AZJrxX=UKR0qLR9^lCO#jbeK16+&wG6>#M zJ`aM1&x-kERX0!N_R1%#g2k2nqm)n0oh5t>g3DO-pa*!R2Y9&$czZE$V2kqEs<_R? zRvqQ*H;?>Il_!3kEyba9LiiZ2muW>m6(r!lJ-|bh zPwt7mM&b>h5XArmHT-3Ta{1BMlfGow#OqsRpsfx^|SJ+FE$Dv z%LY#?%n(k{Yh(ocng_U^@~IVHcz`pMPcNbVEPPt7Kd5ZdSLIsm`(slsoid*F;5HFK zUUBbLKH1TO`Eum{*du?F%2PLm>NPJ?IL9a~x{Sh>DoDVqJ;2?SPYvAZ0iNIiK4E}Y zTn6}A5Afd};8#7svDdl%@BhgI+)ns7o?ZsH!t=%Bu0IQkD{3j9EFR?n&QLzNVxa*J zUIuuA2l!bJ@GKAT8y?`7JiuoSaLQ$X4|{+E4XMdu@sA$hMCS7|#QrKT6pyj)!p9i9 z3~+lDq|O`Y0q(7Qa>WD>@Vy@3RR-9)4Df0X@XH?H=RLq5cz}<4fG-;0V}+N-cVJs_ z=T%59c142n$>Ijg7gsb@K8>f2!lxDH?aHP;y+znKQeH;iqaNI89^4JeC(kWqzDyV| zd*q)}`EeLer<6|$4;zImE~79?FPReXuO8rP%BKdFX(VA!z^Te7;HJVy*k1;CvY7mGY^9r&XS2 zqISwBJ3$fx65l}~o$F<+;AkNjAbCrAJ6QMlYF zOuUT3gzd#4y3GSzPx;iqcZ-1o9X;~?37Vm1g*M^V;=pnlEsuL@Rb@djf0IYc^#Z^L zfFmB@JOg~}-b+WA{c^GSV?Ds-l~3l+^#G?RpDf;HfQv2zJk$gHt_S!Y5Ae4h;M5(( zvsk(7)fFo|z_=C07k%zfK{`jS%Yx#Hsmdpd+Y11@;u#O{a06U;8Q|j{;6e|uxjaw6 zi#)(>^_n@kVz&VfUIuuP3X;X2d4Sg`pMcL50|z!KztwD9s@|#@+C#(Nd6zheYSe04 zJT3g|;kQ=)M68lRUlDnJlPXCwWJZvM#Bt4(PoU#Hpr0!L^})F8F8pw3tUlX-%W(X} zEuLyW|At(ZE}PdA53(oYOD$TFO}?NRx;}n{QE;W&pjd&0d&NTjfO#_Q=XMc7{8_IM zt5;?g9&hMTo7g=^i(ntVO#ns9zHfn7S?04u2a8?eqO{Wn#mTtsd<`g&r{+$>JQf(LnTL?^J+2vY2;VIDW2N{H?W>%39ek|< z_>f2xRAfYVZjPHDqfjy&$U{NAft?X^+zO%MA@{b*T!_vFValYtDzk5waxgU&&E9&@?M zp&GVa`C`e+gFKZtU#@bzw{oPLAwB2h8}&cvcG3mcD8n-j2U&OgFf9 zgZyXIM2d)4T5>1R4K9QP{-s;~SnXVT;p%HC=kDvv&#TG|l;{bJKUD??;XqU6KLYGP zJI(Y*#%likRWPMGJIU_e3U?UqfF0pA;)~FRaObTLK8kGpXyRH+?4F1!JCM#F zNngKLe2S6FKYJNH19#&K%6fob@Bl}wx37L-~l8My=#EpCR z2}pKQ)3@U}M=`xqn#c4Tyry^cn%>Q8dUvns%hQ}%^aQY&-`i_`hS&VQX)$j?tC-&} zt-`yMVe|W|`L*aNSb@383p30MGdwNkxC?W$7iNTkp(jBF<}NSHJzkiJX)zaEm`Prk z$qJ+WG209AkQZWJT1;8Iq$3TQ?}d2S?T^o^V`~`b;r_tKL&@*e1H?_HKhzQ~@>@+l zLYkRmm+8M#hDn;3iI0u`17_S;x1c+B^_EDacLAk4clB;t9EnA}B@+2#lDjp-VY#Qb zCoEsmv8J89JeqcChBdv?%cJSlULH+F zQX-nR^~M0Gk4ebx*PCY?MC=U@A^WH*UeL}cezcb-Vi$UKE%NGG?A5iztLwR5(Di3k zfUoE!gKf=1WL9hD@7l<$=@qjU8pC`A$gJ&EVIyUZ(B$z{FEiNg!muJC?w2sD37J?u zK-{>63m|!$nx5X?n0}kr^gFz!kMWv*r`PncUeh0RO~1!$`n_J$3wxCx2#sR;lwL7I zDZ{2ubxo(UZxUkDD_Tv+#OeX!#$^RzdS5kt4*1gDeS2|WS@+&M73BwdMp^Gd8b3^V z{Ii#3r{L+a+o*5_9fPV@!7+%aFaoE*0IGTCXv;p_vqCi#u1CRBAbfi&8Cz8<7OvL1 zDMfv+XZHrcwa-E9JybXVvX3M4I}-HNkn;~RRjb-oWe{!+DZq1>y*r~KW^iZzaJ&`1 zL<@>!T4$ye*Q_I2^Fq%UGT2@W`MP&feht}JcOWH;sHpBOl>CB{&CtSaJvrR1dplo^ zYAHRV=%an~D|W`P4&scIp6jSqPZ-w$6tfx5I0ZfIjNammLn!!!tY>HZ;kuwWCFpj? zp50pjmz_Zm2>k_OXCzg_`zauHMh_&qgK*RTJ*h~}NJmB288>P{NoOSAi`LXrXRL)h zIip_BO~x7ZdhR#QsMqrwSui#c6M?cnwK7%t1lbQj{ESi)MYXM90(8BV8dnD*@|YCAOKk*v);tn; zJ5`>6u29{!%7MaZ-PytgIS84Mb9T6$26j)BcLxRfYWeRE!%SL|t*c{Mi7&(fZ@V;Z z^L{G8g<1KB#>IA$#%)i{pvKJv&NNWtaa1R`*N-pQB3nc(1l9J`o9QZSmm0R!9#m)# zvFw*qd7k8^?~tZHhO+sfVY^iymQ#Jrs>;gAZ3&B3q(&wFAZCnrtts1CtXUz}90kU^ zAoA);fu;vo=72Z~H>Q@S9!|Roiyu&om4tUt(ID9^dP6GjvHb)}mV(%YJya!*Sdg_L z!Y-sIJ3a;lZq;&ep}&=8Be4Md6u`11wr(1v{2ztKPeldBDw9If_poLtfVGyDxO63S zE>7h!d+aS~b)?()&#Cc<+r_Dw)T#=2z@i+8{JuDK4D}8@36e@I4C=+H4-#uGva>)m zxR*#QhJT9Vo`H9)Xq+k8OH;!#eg)gMPvP%dsIU*z#U55HX$*1vVESrdNP_zOpk~ql zl%+AP_7PTZ(2z@(wiIeNG) z)7<&^q9jpKU|GMsL?wR|Z+c1o6tkcLE84QtV%)VHLtWlwaqDG=fObczw zR+5yF6r!{tMQ9@}Q>jl{r_jC#mG-ApA#RrEJJ4jzxAt?*umio;L`8Rb<82YlKe?PAtR#uQi06 znz#g{r$adDebnFn^0(7S{w80uz5wdv;2nmC zEQy2X!g29xx;uo!0CH|YogB100jETG%*nw81m6biFJ&kLE4RJQ(qf~wGD}PIbe6X7 zdtPOhw(onT$)2c3B3Ifwb=F!g7nWIob(^m-#_GUrw|sBYx76GRxdx5 zrPfRmWehWUCQENZ$8|tu>G^(^77LHf(j$a_2UM0?9u9^JkIB+@>`}J@_BXP8EP+k? zCS(|u^kM4fu6RFBH#JTB4wUS?2&vIPwJXhZyRs7cJ}{`zNSjK)qaKuk-X#5~j+iQP zim!WHzOKnheTPa-egz#b0IA7IeW!@I7`}WRl!#mm` zXNng!sh+Ofs~}ebRmrX87$+k{eCqd&bET5MO!$jH)%726d;@Z&t{20m>UUdqYg>c7 zKmVhC*MIzcG>$6LgXbSeP-`MFsz_Dm*7OdeiY7{|TT`z`6_rXMbW##qAv3&4wQp%A z&%%DLR21j}JiKVENa{9Wc+m_~fTs@Of{YR3sWNkQM-;`obMY=Fru{)geA5@><9I9i zdli0DLAY0xY{)4W*$2-`a0lSMiSS27R(!ot`1}v*9gsW`qPwxE&OfIc0wcynp;te5 z(^;N6QJl#BZcU(nDZORcaIj8sijk>I@!N$u#e<73s7&$TqUk2Z2eEI3IFl@~9zu$L z#=9#fx`2rIrU!;fifi$A6n?`&cw>}o$SD!oYf16*c;7|%5|I^O?=^g6S9>c+J^;}s zI>o2@DYh;@#kZIg|BT=w0dnPH|$j6u(%cQ(PSVjEnted=5#lLYx>URqjAi zJPz+h?Kub!BI28Vg-Y=p{`SGI7YH|vlI2}hlH#GHxFg;(3BOuo#n(FvpH)!zf#d>+ zhS4dm>!;Yd{1lHhDgFS#_kl@q1*0XmuTHU3EybJr>J;}a8dmv?`xaehp79IVw?gz= zlHz`(_+7mJ!Ngx6BEIRL3#0cVe_OGIoC?CXN6ChqO(NTo6tBel0>aM&5%Kjl;4=^E zdXW4KguDh#eyUW*_$jt7KgB&wil0YtJJ7$BdQv^}b&8L?qCG21_1bjF}ogZCj!d=4Vwn?491zNWz62wTc=Ap93`x3cu@A{!#bwcyDn zJQGC3*K2~$rBLHRa$ATKCYmb6#|^>0q;dHvu4_{KAc7A7lj7B4Hqs;Fo4y+#?w0abHqpNW;mJ|5A?Jw5 ze%3R=or8BQ*@hOJt3zF}F_$oTZhx`;BAE)IDQWI)Chqo(#WJmTfpcHs} z@fpvS=J1?CZOewSQ?-AgJG zuh99xQxLsPQ&a+8hG92Q2?*qHeHEgHB*2x3_r~W;pdvmK$8-=81BH;MED2rrk>uSg4*w;G?b@#z5?$z;2;AH5@@B^W#^$(H%{d{}M< z!NjRL1u|KbIUf5&yeZGfz2;B+nE0w7C)mJ*9nfKVCgsG4xy2^aVx6>aNb3!$-dKsX z*n1gUyT#tsrsP_adZI-h(8I8-2EoKDs}=}(K*4rK zu4;jhAPR&DJE=fO^?1%N5G9y%*QeGl8j3x6rU$Y0F;H33l@V7*pq{Bu$TPhO-|Hkq zp6LM`?|_JCQ_r*w1D90L;ToQtwHEPR561o(w>9Ai3-1!hIa4ZM9Q0(&y z#ZJkcR*Aiaz$b-bH#|FmDioG2;8>U6PnkmTC9H=NB zg*b9SWuce{b-e^j%6H?~0V1NHvQV@%in(Aairdskm+X~7@i)vTL|O_(QGX^$AR=6< zP}~G{9Z-d$mmj^9@6ZwqHWV#VDE7lr4uUEFRw%j}xqmAZsV2-83ijvtsh0muzfg?E zoVzu(_UPf*lR}X=fGhzjOUB|DC4@AbJ|TtTDSRK55XqWY`WFX8M4KuUL!br#RVb{r zh+|zUCj6mL{4NQVLa`e5RX`Pry*OS0x=?&_xjaYt?UdYUl{jb^d{QWWgy(yp3Wa40 zIM#J?OHp?qt9!r{iV{E9OGU3K6g^=$1E?Ih3ddAXSty=_dQ5^PUD1SR%&>6AEx19DPmTR`~=32|0Xh%;2%ChAP zI;HUWmgf+D4G4}r>9MfwXR`Wj-@+!bP^*RarM0jf$)~M_{~10~a3sn?b835I5WMXq z3sZdypZONjkaQDUcm*R(?wyC^5TMfVg>RuW+QRdMKPwido@7B6OgRMflaUNMo5Vt$ z7Ty+X;SVH#2KA(;{>8UoU5zA`{QMltry(a@j(P`QE-ccx#2D&Y!ytULT>9q&o=m&HIeXF0w zw4V@am3T~qq=B9W&s3lqXv-FGtn1_kdO57iM6J_U1~1*O)Vaz_i;Sy{iJ5Jzcfq_J zsNDDq$8VsrvF<_P>?#FRa$y>dDL}Q;9b|}~W3*Pf?2Z;~_B)c}(q=!7%p;;i+U&n^ z{0>xe-JPeG4q}HGMbhN%Ku(H)dc!3L1fAe$6DoyDLZm1LGmU4JmRP;JcY(>xSjW2T z<8b$+Mp~Rt0uQ0dJ;0w5tX~G4c6*ran zp+hx~_aM3is2cT+sWCB5;?bxw{x#u;LGaJ2H7aJ&vN>#L=y`{=!Fyqmb>B-3e;_ub zvua6MI0XdvpVV$iHmIKBJrhCCDG}lSrG^tpgc800!I2=eGfLQreaT43$76Hg)m2Wm z1{bZJ!)1Yg{Q~qSCjKIXK+K|rb9iMHB4r}tcJ{x#-tl3wZ<*mf#bkccXde0o0`4I? zcLB8_TV}YJ_DIxUOAYUks7sB02cEZp)9x9hDhU3bAa5JQ?|A{Jci!aQ^QJUXUbL@V9eFdv`+GVgLcG?6mf4Rc(KVDIkAdY*h_qZ#Ug$rvHCex z2?*V8N}@V{nsQ+g_Ri7^I%Q476yNDnfAL@8UZfXv&MG=r7Ie-dE<=DU=$utF%UGSU3fP>RfOs#Kv!1}a6J?_J>G zXorQ{#HkCyns)Fh3*G(g??oqeTD_ z;ZiMe7pM+E4V>$l=SN);Ey3W$qD9)GQdnkzV7_6A9_j@XjHewqtC#c20eYJ2-%ZSH zbFF7ns)v`;EAnHt-?;qjYnB>(8QXfS8a%`3_v_}(8*JU=6S!G{|E!`;O6o@Rch|MD zq>;9Fg|dqOiuj9lt?XVjTx#VGQn(pNt?XWOxzx%waHN2+drpjF6|hk@4)Gq;$|SrO z6Mid*h;ModK91LczrW*mTx72sR4E(MvNf9~xJ&TvH=bhvK*@S#_&g2u81Obi#7rQ{ zz}p6qf#XaeUV&JE<2E7oL%fb-FG&9k!s+w_f0KXZPnk)vny1*<*L8ME>{~ajHITHb zc}mhm-sJ@%5~AiQ9%QF>rGLVOVA65>;h^Zd7TmE z%%bqwedMEr9|5WgS)PDnT_iyL?4ELiOBhxHe!&AqqhAop9*HUlzqtQh5JvAtgPX1k z!p>84K}glY6oes{>VlB2_f#^mcP5a6kgj)D)RbbXvimK6NW61IOeQ6yM#Q1a?MKJkqDRa%7c?IQ^N^1Oc%tR{QNuf<}uS@oZk#yDI{Y?~3fS|nPMSixy zlL?oq1>H;l>*pf8J-POFglkAGP^I67GdPoQN`DRMKvb!>VZ3(LXo-joew2FM=$Q%h zWD_3aSeMT^KRNh~Sk&`*d2PfUhM6iVCif-R%AlUP?+{ePs3#A&FGI}5aUF;Vn^%F) z^H9%%(7PsMd-?M6o3s-FK3M--)zb9Z6yM)dZ*kwdIR(QsDC^jpq_R6a?=xk+jc5Pf=wo_>&*k zVzID4IoOs+s3&?Sk_$!p+JBJ_T9XmJkRclei!vxWk=oannja%wxk08^HDZj0fMZ=c zKd|_IvUihMlpJ{tYp(()L84|^<9t^GBjtXO?7eNHc?^LcC7O+^Ml)v7R+%-lk1;9y z0s$Gl)60e;#!oIywNEuf9Ic6EXdA^49Bvf*Ri?tPGXFKw{oIJ?k#0&I5}Kx)(v-To zdT^CW{oED#G*5DvH%&LC9T||H2BaxX(@p6l$O#}k>uR2`Q4nxO%ZZmx^r?5?{RrV} zKtz1g@5P6A2g_fkGrx=MpI24NhP3Q~h6!#>cm~2#1eC1T7@ze}Wx#6#(UM_%W8ig# zxF5$-Au=JHX>8UAF#w`B#F-#{l!PQtf=-1bJu%rkE{swg9)W2!P}RZmF?6^fsyfu1PJI>hGbW`vFu`eU z$gXj`{)C4?Ay5Y-gHug_|KJy{_uEP@e&+wtd!_^~CxY$uBX=S?7v}qq{4aVJdF1Vj z&X-}-1w?8XkVoFWXxbC-?S|X|!p&|ZGmQd_7o)ZVk30=;?<%%%;faWEdM{!03i&$` z{|i9){u?S~IVLBvpEpQwH{pGd@DD*me7)`X^t+lfvY`2^5Z?dz^BdIHz&ix7VFs@r z1>R2(&P)mwMEc)CBu6kh!^APUE=0B=)XX)}5{@&F7&L9@T}|@U;~kEk!9e#eT?`|` zA7KnN3_dE1GMrut(_#=h*YK!E*S@u(cEcxCmnJMY*ZBDlEyeU^G6Rnv^M5@wcP?iC zE>uUzN`BT)>rMT{8S)IJc*#TiyRc9m+DAm^HK31G|5K=rRX=qNBU>P6;+@6_w z3$JBYAGEr~Xsl_9!BTq5`1x?ITfyji58pt+f z)Z+9eE9GPeLwu1}hu%fijx*8P4XE1jw6CZHKEJcLlJF7`>iVmWpspS25x(Jzl!@vZ zMJ>9ZI?DE2zU>NONGS5|u(lsX=Xz^fzCI>D645ov_E&@-65Bb|ZU5+tWFX?!Dr)&y zRoh1m15;&TNG$T==?+x7Q|EBm0;qKV>MPm=pP%kggbxRyA=Pcmr_pqDD@1jjq86v2 zIx5{sh9Tgjbb}$O$eU+vFGc5KYg@jvrWF;#=i4qP{57#XuDb0`zDTL4u2(eT;i|UN z4Fe~5grR5eaDsSv1i_wW@RfzP*{O?UTCK8nsCtnF)jMQQN)w%cFlI&DDcuIje$^hHLC>Sjf48q*0zrTcE*c9}3V zFY>0tpln}^&apt{`3hfAd9>{^!dHmxHPvlD?Ta{a-Qbj>#&=h>z16p!Aq=TS-cf7& z19ZM;ZEyD#mB8nxyYBT=IuLrgy6yLTkup(zYEiSKE32gYfN#4(7+My2m%*UY-5;HW zK&AT=Us2+jQMPX;{6?|;Qgz#Z`63yJxUGvCE~skTF*4L|VQ5q2ePeC!M&}M|J81Yg zG81k4Pr^@#?WR?1*E>GWamszw)_bSY0kJIzSdJjtGuwzx0v`2u5UozhlW%4r!utHuYi;}L&6!Pv%FjhO5egknHcZEw8WQ~wvRJW`zXq809z8__dGnn{50t zqWtC_+7@Y>gA*TtSq`43ln6=LVm~n0m;r;y4-Bk<>tIw z$WtJX|55$;^KWI02I>@dWMz(_oW5wZrBGcoYH=H*J)mmtN~7L&O5t^3Q3J2@2p<7L z*wh*_}`bi&EI(b~YhEXiZgxX)tZ~6+WjGj)(C=ppx9m zS2$V}!lD$eBK$s4_;gi;3t_6skW?pmyH@xijQ_I=`}hiXib7bF!g_Zw@&uumswzAJ z(*?f59a`Z47>j_4;V55WN@odj_*_x=ZdHZFFm3V`KCczN0ORvk;Z?rEQc(zt zQur6)zlp-bRTXX$CI;L($vd^eGZt`;6sQ<3_7zqLFDy#o6v8Ki(9cyBCU#*R##gvY zD|`gThpoaVeT5nDy09pPhY9~o6b8*W)6|p_m{$7=cWZ^s7c!*=Du(h!VEHlS7KN}V zg(CLT?0Zi~ATsaf^@u?gJ3Ra0~zuVe_8D=Q*g&z}pLvu$bx!2AyWIfaY4w zq?u&jaa6}oZYEAax#=7)JZ@4lPx~qMSjWWYbrzTIuVfB&HG0*J#d8f&<;LR7T;jj1 zP~GTB*{4m8*Z=5gH!%;B8;i>d2gyCBk;HWv=sZTe)RmWIkavm~_nej$PLlrkUC6h9 zw5#{%b~SMcmui6Ab6T!veqABE05xB_-dLtF4H2Jpg$-pEsK=3N`J>opur3ov$GyL> z!9t%ouajXkIVp2kbv1P${{}iv%6AFqZ>Q5+{)$!-_S5?SbE+)j*sd_@=0m$ed-GxW zcGew@5F>d?gL_(Gyt@JKb4ki@5E0+>XYg^nm-%}ge%FHVMNzULM@o`=M^b`29q(;~ zZxvbb^=`oDGpLV2@8Ih3byWY{;1)oVO#!u?o28DBWypQa=LkX9?c| zBI28VF+ObJ^7jOO$3=EO>9DfgW)j)+k`iisfwwDvx-h!y2$TZv7(OLXlYr--XCsb> zg-C$-6UPZ58bS0}$~h8{-WtM5PUr7+CXva#AW94o^HE_gq*^DKOuF9_ zbS*k&fQW=#=l+J*ob+Hn@+rNx{0*IFWKUJwRKeQ~>93mXtlTjSgr@!Hwt$oJ)G$n^ z>gTc3Jj2Qocq+3JDS@fcB{0=5fm=wD6=Gb&({x+#4EEx^jo5FM6o_y7d-!l=g1?{P z_b~`x7bVL|pU8Hj1TMk5(cKgo5D{Om44*zwy+HCth&?8nssz4h2*ZIgm!Bf2BT=1P zI4}>@+O~Q_K$2nLN~16|qFa-d+WF|a+1hRBE2)UK`!eCX#ctOscAb>R9!68Ztk9VU zm*Zz?e`a5jrGdgC$ zJ{W{rR#6yxz}T1mehi9De?O?9Ve^LuDTf!K?ofg1vKN}}uC1R@tC{0Umwl+9Si0=R zn7RYV13Xl4sXXR4A@_+FUG|}ZdE!-LB@qIWoriUH=0WC&7n%M=fm*Dc1bGRFk@pW+ z%Q4O->9W5ph#QV&bv=0zJPUxjp8O1sr-8bjyc1S+J^463M?v0-YW=mkG^1+kQ+}s^ zL`-~JFmMJYbd6C>(I%h4x=c1W?l%Sbn$f8r(-q;R`TC;s|Ii@q&(eI=-^oSirTG_0 z9!OKPH2)eY;!ettk;p90S9v_z6xGT`dM}Fx(nv4PkGiS9IN#pXFZz%Jf40~=W$1I4 z1*GtFe0jT>y zavz8Z#-hrZiwwcNcjLm6`nmD7^)TT>1P=iHtG{$OrmoQ`cAK!U(faaE;-Rhww!XZx zxW}t}x|~9CP5$Mvh_>u@1?Q;T>+)+$NXu?x9rwok1PS3+Kf(r%dxcS1tW*lEu2{Cd zOq>^rST~-*)O=OKoRmhgWHnJgtkD%pkJD5CV?5fLwGC+nCg!V^pTH`vkC6o32VA0c z^un_zkg|MfelHQZ2y!$~rE03t%IaP+wkGE{dXuO{wZoQy6O+PlS-x(ESE1lOpepy( zzLHXS{PzDt!v6*1aM(M<5nCD{8wYn>wH;EgSuU05H489)ps`oA!JXw1 zqpbV{xlbj(tMxy!dMhgU>m-c#pWov14Fo~2U3d+4%R{FY|O_Y*HKHIS3{?U8?*c+G&E0wjyh)LHZ~p(k80k1{SPTqxw1=`#|0}!%;a2l18LgI?D2KR2&7$a+9@;3_(s^EL&kK(!3s?c}q{W#z!GVr#db>!vwN-A}KsOzmaK{ z3!2{v-I(u+-b#|=)En8F=<=&yN!T<$>Wys8bclW{%p=s1I@%uL>1yPc~Xfj?@)w#Y>AIeRD^mNR^q~Y6|qa$;#Rxvs#E34BJK_UNpoOAzm`XE+Jkv#6BTjF~qw< z>@h@fDa78K_;x(1xRFAr0`(fo{YHU$4duH!L_hO?^1P%i^3-PM#wGo@9LGaACNVv5 zAICB9Q5+j^sB#gT?{b8g{j$fFb&SFCtfYJmSMRO#o)AzOK(o-sN8x}J7LIaF;yf~6kpCw)KQ!# zUW(1jtF72t+~a#C=hc?7@3h$9dv&l}6?oMeRtx>-<%R!&DeN`8nGS$ot#%W%w?u=Z z>Bie>5kQ%a@kM#jF&>|1V%(yhaH!}^%B%NnSFzp3_ga{z6Vjqkyj1qwn-`YsF)7`Y z*FdM#&|l}(z64f|G)PRusa^yaqv@HJ_MDW)-H36fuJ38RQ@iXfjJ412i~G1v*T5D8Kf&kzo%Hl2l1-foTIDFVLT3i(^d5u ztT~-{)zl2pCU1J0k=kR<2 z)G4VIa2{m(9)GE1^30ru654AEN4Y?&H+pN^ll9|ta%4GiqT|lVX`r6aRz|^~-lwGE zXT!_=FyrcOq}W zQRiW~Tfo!Tg# zlvD3lt9U(JYpr6-7jUfWWW{g7`g*0}*1qC2QCyN!ub3rE731S@9kq%rU%;`hlNBd# z;{-A=G4AFo9xaNm%&E7|D((%}SwJ6hHGBcbN}R0tLRiOW#RWXM{zf3iStyFH$%#D2 z!kGI4L3hA454f8le!=mB5bGdjKg+pi;I4r90>=kJEP$B#9MvDV*F*RUra^pz@8=RS z0b=ZSR``KC65`w)4BxXY9}K0c?3X2*wl8! zX;5teIVK4^Ti%(&kAf+Rz8+cQMoE}h9|c!2P^nDbN!14`m6zfeCxoQ(T^w%;A*pP$ zi(^1QrSf4MtAvnL`U)hK|KR(Zgh;|h?B;!VAe^zeGCo{`llc5LGSMx=`&q)D2JRAw z1R9Mv;Ld}%3da;7W;Lf>e3@9bJ!UznNJ-1A4i^X9 z;nI=N{K&yS-R#Wd{eAM|#)%|pc20{Rt#ai-avRS1f5RD3{FF8SAh~M47MoyZ+M?*% zoEH77D6-+6V_nr1sblSr8bvHIiK1D2C{&KM&mwbY0#)-ZPr$LRlWYDeSXavPFzKu? zZ8dKy5Usc8)cc9(Db0Iedl9JD4q86)qb_`=Ne%2_p+RX=Y5mG5^PEy)T9i|-_cEib zH=NypQfB#h;Pon%-A?dLz{IS9>1WxV5T>~~^=`Au-iPZwtIYE85$Gsoe-ZpgrLvB` zvYo9WD#OPH4CwCHq?N#-QDE&=Lk zSiV@tx=wx?i(p+)srV(Mm_0O6e0NTZnJBI-bT&N3v9A9pD<2z0bmF3DSx$>eB{s}+ ztgE^br_N5~PG3$-q{i55a*||xp_b!&`z7Xx=zb_CsFvfml8mQ-TEoaPJmf6n7k?S( zDB(YV&>9nNmVsL3n)tHFrGA^R9Iq@trY*O7mBV&G#o!#n%{|L5#9)(&!63r>3y&Q7 zAMWQsVtP~z<`aH12u(BLCI&Gw*|sCQc&C_HyBl&6c1okXf}s7#>;`T*#D;yGLF3h_2-fA>M?Dna^>8 z{p>LTuQtT&_vj^o*9>CT`y>%~r$Ll{Ko17I?hrS8#99{c_;MIe; z3`emLsSq!H$KEFJIzpWK18l%M3u5h$j68r>0CD&yk_Wt@LL4I-K_@x+l01n&znE4t zc^bsu1-jxU&xSZ=nuO$=AP)C4Aqyd1;zhgi>vRu9@&o+IvVxC5yf@tNJ_V6)LexF@ zJw_!vgT_S*r+)6YIdLu6E>ZX3Ysfu#eWB%`;R`s{C0hMzbKS6`Ci)>(@#3?#IX-gha%{yBF8ZFy9Ec&)b?* zt~C*(Arg`L!BL2~T?yF@(+;4P^4OG z2Ekp{Nb?h%WCY5{X5WZ)RWp(eZzfBM1s{Ne(G#WlT2MGX>E+lW{2A^H=JHZGUdU#zwLS8kUSMQ?PN)5H1W$?MLN4c48Xepw99~4NXSP>dVL`7$9FkUsT<}; zv0QS1N?*dKiVaPyXWUdo)UwyD?SR@;XoyC zsn1sipa1Zd622IO?uvSNlt+2qj~Wps0;2kY+{ibgTJFx2Bl4PvZH&qlCwP;Q&@ZVN zObPH`OQCK*ziGlL3{BB^VQ&2aBuL$Uj{lSE1t20J>h^OsR0atBWu(mQXNg)umMu?d zqUa(P4@HqgZ5|>wirCcXsKwOk5OhxWrAkEV^4x~St0_dM6Xc%4pN)vE0}%=Kdf@XV z)Is27L$v&h76hm*vi`oVGSSs87(Pl2bPJtuHSrkfGgy~jdeeg8bPT%-VY?ZHHv)Gq z#BLlrffKx9fKK4w%#ftCUCUoNHO)^w_6bHi&qmD8%#C|QG|FTD8U=@edhC<^SUAn1 z9(#+w8IOR_5YtHLv5!(c*H@i}hV=|uR&LxFtNJZOUbm_r_EqnURvr0=K`01KtE&3t8LUW}j+$3CiR$&aaiNEJ9`6w3 z%AXwM`T+M=h#PRs5#n2j?Kqwh;!}uUaU25?(c%T@#kx2Frz7xcLQKXnQHVwm593%Z zL@S8TaC{6J$xE8rnaEISo72^u70h2_a+7VDW*wJSzhRv^&LkJ%TLT8zYu6{U5 za}OiJ#RbvaE4a>TUVy}HR&#G(^QLIcdkKFD1lvSumf|IIUFS53dcJR#(!18Ta0!tdW-pGx#80vHcxpE3SI>2Dc|A8q8vW|DFR6pXYPJ_=^J)Q6?Kq#%c>KA;~qeb=d-0&f*dJ`fW ztm-|!>V?s&zajh!QQfMlYN>+1_#!(+^`_jo73-p_;HklYlLAx~9E;<8A*2efz_CmS zserXaR8Cb@aNk<< zaB9V&8>k$t?X!)B&CkIC!gD~VL6u}G&5ex+iwvTo;$pnVN|0KP>g20RX+b&rJEz|3Fsik!l`!20)S{2& zV{J?L%-YtA1n(AIPCMD@98FN}BiQ)^;z#_y1Zo(4wlNc{cx2~O6^sGlfKvoik<0ee zw-7!4qq>FgxghvefzH&bkE)&Qy6!|^hZz0};w6}$2QfXe$+>JTME580u9sVDHGJ++ zg6hNvoSMKbgy@SSAB0{StOY9iGUN~alBFqGcnzf(UFt)PY9!dw_)vdOMbUG)-XEe} z4YyEsJqV@`sv2!}#GH<@&g%#a#xE%2e6vl@kD=gN8>2hEDKRLzywC$BW)5W|7*Z_BW?;OuDo#pCHcB@eVr` zVxeAM?d^|ZVJ$(u(B1_^B*c3fpD&>f0B<+M9W?^ZEa1HfaX~`B=?A=zAllaqIL(0f zHAFd%mxcHRVhDSBIl%Mk@fMZDfRg}{6Cs)n(eX%5hFD}Gr6y07i1WSu3gJY&DI1Bc z^m(h%vO{PEgi!{FZ@~02P^HoG)pnd#QKhj{Z7Ku^wjZjaRi!kl zLUFH&BUJ@SH!0$^k&KfvB6bl-Nb5@fvxJ(6HG36&O%Z8 zMSQRTG2N%fwl@~#>uh6`wt+HoiM`hN%ZHrjYb$&n{sz5mFXQH^7#^eycQg9^GwEqt zbqrP8RcEgzDqm8gB4vw6(Ag=Gs+$-50xK%hD@f%hz-cE(4vr9f`D2vf+aUZYTJ2n| zl``HM@y2;^o#9cBB90xFAPA)x9#w{8V+1CyN?Bs-imAw_siV zthQZVun8OaD%S>LX#jBA$q|giHUVcVL8_t7$kUm{Nh-YM6vp);CEFX*k+>451$E08 zaIDL>WE$;zVZBF;IH7k&Xr(P#JqebatBJ9fNPonZv_0UVihzHtLw806COSdKy8OB~ zCNJSAQLF5Xc4BOY7;GmeLN*coCQtDQ;viI62y%#Ov(d-bFC=-F=heE7gA8siL5C4N z2;4IvBJ99~Wf$gjh%Puffg0@Zb0VKV=Ryqys?XYCbTZp$%LZ~VsPcF@!OH*@>(Y)v z-es>-%>p1yZb@E)wNGNWjG!0b+78@1A?mYRlPEhjH$zOsaiI{iAhzMy3?iby+knq6 zP)9(cXCT7)+5l@Tgx8%@;~vrfJ0Ur2vz!gwA0U?FSS-Zn5CL`#ei!0Bh>IZ9UdO8t zWf03jM3i~4?Dl>O^)>M7KqRt^UK2Fx0AVf1Iptz`N{v6Bz;bUwy28>0L?pl~#Ag)L zaNrGrxCh4)A;v&_jpIwuSazKg{KQz7ee89)N+O%jH5>9gfZBZSh9e!Qedm!lMgV>t zo56W_u+Eq^M#W(ArFnA#8ePVpKTIe*?TGx;COrtQF^3R`-a<>(XK*Gh=Nu`oY7wA) zmWkliaO*~u(i^j=OznNfELzKuEqIRMNj*uNW<#Am4E<@!gnZ+iA%qM;M;jT(chxn~ zcBkY;zL7^NUC8yMuM~tXH~hNYT3{5)Ydu}cJ~88i+M)STOre!ggwsw=MrDxjB~nuw z*_t9Tsa2p8PkAETU7Q!00FSc%FqYSd^<=}Nd;Wl-%aCTTDs1YSq6s5#gYY z7`Qzz{G1q&uJkpOzX~*?UDx-VBf|JsUj2_@)P0g#F&S2L5j ziMH@2;rl>nS(F8%dcLo^LR1Ixy`Qb>Fzd`gpa%-R>csX@k09q5X$%JZZQ_dAvp%9eEHP3kO80nP*)OuuUP1L zl7-4Oyl;F9C1N3*?@hNB4j}oiweX{Fp)A@$5{t66KrsI#3u@h670lm!3*}-VKHq!a zTIh#l0Z?i9+qdAH9+ifh2){ur3^~a{Wx)&=>7vgd5J@+Z@13>PAl>BccIL*TaWP;$MXhRhMmH2IIs5RXR)@6pqEhdEQm;m_Xa*wSPmQm zybmExVcM<250gKx8mWJqskag}BM| zbIF|{UN(_Z<4H@z`Q9q`_~U*N@g{8}w$fhDMAOwk*IX-9(aH35evUXycUviGW8jOD$BQ!#-{;m-SpaJ1do4? zF1#qZ3-4jFfa`%G{%u~|Y4E5A@d=_Ifl!v=(F2I~hLSFP1iV$|95!EG^D4BhQ@}gQp4%K2J7-QyqXt2WHl^DdYNeG6|EsuXiAn^M=mmX zDl5Lts65j2skw`{=zYEBTdvo9_sr%Vnqiih#MU$kyKN{Ns7lhjDvIwln5hj@oSL$s zC&vq7TN?g$7;*@iB?y5UmJeWDVXb}z* z@H{!O9jMN#tKstaYKP|cmn6pJMUs(G#p)3Jp93w_!?3b{fP_9+|_+s@;mUtUexy-(fd+g-1b)+QaONb6pj!rpy zG86xOPbRd+6mj(~;k4#;97pb_m}^8`!Lt;Pg+Slnsbg;N=o@eyxU8dYw{_0(#y8e+R&)I`4Z(Q%Vxr$P$18i$ zj;&PPZEhHNfxMNoX>E|>y$iFdyT>tn6zBnVYhUX^(b_1-`^DF)%oh6$JB8uY9IpZS z7PWFP+GjW-45#OKGhk4SePd>94S*V|T0YikxTEP0RfiBh5CoSQJ$9(7CYiCG@s;J6 zh3J)<--U`4<^8bn?(78T7;k@s`2Hihcu`^hvm`kq&!0lX7iT9_wAcAvLod5iMi#zK z8QI5-hv3=r+S&y~^)?V+R}#A-;F%0Vr4`*XS0CyTN1>IUe&nk$V#d@6`n zH$hiuuFvpzT|Cu|(EGIKKE|=nfcWB4QgDB^x*58JfzNF~m)(_Gr^{&Kn0Tt&XJy&y z*5_J0R{&jhS7}a1m)#TDrtJQm?JYiC=VhIWYq)atifeA~@63*qdv^V4GxCAjaeTdl zW{r1**M&uuo_h(uTX>|keB1Ca$fA|=OV7K6zXgI7#+)rZYNEpnL0AmAi*xhw&8|c9 z+u7=3XRWTZTA+?Y`+hp1`o#k8W~=L)1%%`PW%k^TI%-52UKbWML%Mm=osG-yN#Ds1Ux-yz8=pnXGeDoH8){e?sGcmeAJa0TtAP0v5pe2k;=sVR zy_bjUbJ zj`a;>AxdWHjAxx-ym>Nh?0w17N2R#RPpv%6_EWt{3g&0oakIsi6qL}JoCN@(*P{xG z?x?=@r81~w?!N4}hiwcqkmwEccGpjaF~+ejZ5yFCvm>7&RJq+X4yg-8QZ1p4HAX$B zL`?ja?Pa}2#AMnsAEujusxg)?)+vu}i(V#tHwZSZT4SP)JWe(icsBtJllyzNcfYmZ z^yFBWwQz;uV`Bk6zfPVBPd54lRtNwJT$(UczgdPLNC zZ>=dHQk>+QPyaIB4Si>{=}$)tl{C)HQg4AsWT+>^b+LGs^kOOs;%m^Jx%0C0`yUvO9`22&x=wwQ_MFW0<2<0pfVXJR^gaxG zf$ryT%~D-@&rDV~f$ryT)0~z4{QN96H249IuYm67Z`YnZnarF4;#EI?hZfz1ha6_r zef%c76@7X{0OMQ%U!1Qg&pB_VNnf6=b_AGfvR)q z45{T8?<7v7$p6G05UDApgwF!O5)+#$qX=HEa{=ph9}_qALWS}y^+JU`2y6y*7LMj< z{ad#8KbWOnu;BOpVFtzW_1h0zP-NV?c1S)E^eZFG&{HVP}`0F6FJt}In z?Q$7ce*Vf-x#^*+9Hx-{$yUS6Luji69On@B^)ReOb_1z@k>QM(L91&FCw}U87o2)X z)=CdqbKuGXp;E&sBSPIROf)_*PT6?UcWQRR4oRnUT$dm*0q8f>OgD@SriHO(c7kGB z0K@IV#Axs$ZkN4nGxW6Vsu|jj5u5zj{ejQzkex6BUX`Jnk$(cH4Bh2NXcK&XhW<$S z_aOAK372P08YCqhjOu_>A*xT$PFNtSrHIrY!IK7|PPCQsQ)00Vjf4z-UWS)eG=|fM z43;WCz-d>SOZ~%Q!S%+r88catm__<2x}7SImB}@%Subjv3?`%uy`2?)WIw%Us+XzKwZPKR(KyG;atPI^&O0;Ygpo; zu3_B?^Fm;*VXZL{V^Lm2>IV-ZqAoDK0n@8M-H=-EvssrNg8SF7Vn;II0FI-sVLfUj zxNvM-c6o|xSotJg895Dswm=zq(l=sVwix?His9|AjHqi^TYV$eWp~u-n`>CpV4i9X zZ1)XVSG80uhj*DWU~0vCzD(j+B3+Rc*)NfoTJb!5+l5ybJyZPyPKGdkofV0Hm;X}q zzJlox2yKXN0@Oe$!*4W7MCw>pc#=rTK&jOz=Al5lFFJ&;2IW@>oQ4p+?4EE7a&wQ`mTFE4Fk}U8Gb8hUA|=J?1uMLk?eug86v69+YL05 zjH<^GDY(Co$jOfL`7n(FYRB2~1)LP&Gds>V5PY5J(luh3QRX?t!jzsJY4Se*B_r3v z^$-ZHW)dMk^=wu4FY_b6P^8YtjtsI=hmfccsUNFJJ>c8gDN^0DBR5;AW*5*rg3#V- zQXlxXj)+vx?8qxt>RcoSgW%?IzYPc6Q`zt9l6{3#{tXebtHMqg206_+C-{N_Ew_ zzUmA_+>Go<_6H``abs9H0V>u-zUq=_)qM!>1wsd^s-DESHPLvHlM_&xm|gpe5BYx^ zK{p|C6>w)m^cl-$3Wx}sw+x?EQ1=0E4a5gH-Ul(~=dnHI>ns+XPmB&v5S=p!in}o2 z`~@F}H0jPErh|yEc{kv*59%e*aREe6qo$*J&U}~zCEh{;8ePP619;0JCgKJgk&m*H7 z?UnRMw!94Ai$G=Aw>Z8Akxj5Qmpp1Nc@vyv14o7Lp7NSh&_I(TulDZa8%`KMx&+pe;hGu=_!lPc0qY_=IS3g4+rM>K~l_e_oE3r0-7 zkJigW$`p@OR+=WgpyN#M#C*$Lmz8=Eic~*SdmOV-pquh}hLMdYVSF;H_T$1RO?h{i z(t&EqEnmPXW|Cx^@+%0wOmykX=o^hP*HND@-IZ0l@h31#f4c#$wLpEw^cx(XgNU%H zOX+EFRF0lIPTZjtxg{;~aiKWj8x)(KfgNTHv zOTq6#y#+!?ja1a7VAmhG?G!~XW(AjvB57tDjAs-ALgyPE-TO#excDWTz0M_YU!Cp! zDN@qRW*~7UPz{#l&T~uB5tG?=;qWYR_FQLN3`XxkmS=Dd)s*gmg{)g~CMD-2TRUa@Sj3p+aa#pr? zxmDd`V!-JNRIFu_QGOi5fzQwKsf1q+f}5jMOP0?OW|ie%`4&pW!nN7ntJcCsB-dFB z-}@GJMqBuj@Pi=qb(968`d44IGa1#hv%Qv|nS43rl7Q0`sL226tImMWkNil&hk;Oy zebt_3tf?G)l0j6LW_zVp^<9W8vZ^D7k8@Yis^27hpQvtAUA0}aVQ4R^Z_M^Sx2nUJ zl9fQky0fp^xhyKyS%jZ0eDhB#<%Cr? zW?M(phEJ&xj&UkoqM2tuExUeS6q$2yr)LQz#EP=)jFczd^dr%2- z^JAguk(^MuX@B(!X*}yLZnsReLR#^+j`Qy|O@vnb_`6*p?Ut$DoB1qhdlKjs(r%gR z9pHT@F$e{9)!S~nW!@;uHVZCeath*uw_xFnOtozK*X0bSfL=@Ou08XvVEY&7wbUNk zv-6cq5P@Dx?WsNEr!htrPqm+ZR;F4@-8r2l0if4Xduh(fwbb63YAyAus{+nspx08* z)}FCfb16eS)mmzX7JUNG6+o}0_R*fZXRzlF^jd1B_8fW*=>~c&HOpGIYpL0pYAtow zwcMQtdM!1_a@n=iTPbphuopx09KwP%eR1I`CG;HlP93$$m8 zd7R7vdM&k3dk(*et0N%(zEU1Rkxp~Lt?XL@y};U6dzRr*DxPYAwO^)MU~N2~jt}Ss z*8ZB)EU-?@G7GGmGs8az^jOYhqToG-N!~LhH0F z@6&+xsFTLMi!q1oLhGbVwa|Lg?d+oh7FwU^Irx)8I_ z3a<-`>fn0a!Bh~as^8Ml)>vrW9#!>kBm5>1?C$As+rg=-@6<`-E=0jmyU@BIQ!TW9 zh`=sTrEwo;N{>wnC1BTPCQ2k9z zb%r0-1#1Ib>m@dy7|zOt)>n)V3$4$RzJr+wt+AtqaBm^;CeRD5`wb(_v@jmZ)C;Y@ zz;IlcoH{8S;Xd~(o1x#Fl%Z*H`WZ3&htK^kGhw$FlEF;VMVz(lVw)KWSuyQMlxeH&s;ReV z?SI|M4Tg;EY74FUDW1I0I>|h2$H|~S z`!(^C_g!^e!hJrV)0 zFd5{o%#8Hn$*Ee=3f@zJ9$GXv)gO8b3~MtZQ-x8A-T;`2K|;c@r7WtS%nYY}YgD^;(PdfH zxxVV1(W-mGa|Q^OM5&hXkXm6?7Ucae^5f2#Sa>Qkyx3ZphU65WB0to(kg_!@@{bYz zh*%hXk_A0PmIc+xvDyMxO^|fo&TRODSdaZgV=#<4Dysr+$2&8)Qvp~?l-HAt=YC3F4O&boZb zpE4VMQ$_Msr1prUT2LKkBzgayw3Be3@jd@#7XBkl-vc!Zw|oI7L-@>sYTdi(G=VAk z=NV<3st~4QnUTq&Ofs@3TxWpL#nFwf8j9cVM}Ct?{gN43ZKb9mF-4@Fs3x`6w^boh zzh*`bSgFU5ctoV;SCjh0x0NV8*6*2-hCi4Xev8Cm5S$T_1nG&ZDmQ!l1=SP2(F_s) zBQw(9il4QNH{F2HIZ@)eK?s<#L$-+2pP7*xt<-cRt`Mm+qNUWXMQtPHIM!8HMT^q# zS7zj8(IAb(qeyQM4Jn3S_2WuI7hi*Q`5OMtjD&tP8s0(rEzyu!O~VjhgLU~D{>h9K zS`8(J8BuYv8#Ts8!HL_cEUW5n)rSpcA1k1bP+JsOfC7 zH5nyp6?7{cPXM(F8n*%m(5s-=C+M841R|SYi&_P}#K`~aD(KxNmH)a5I@I%uS#7Hg0CQQj$vZpaMgi6ZIQ+OFhs zHVE}Ml}Qf~WY99n40lNQ4!E0V)qPx~B%#Gf^aU!R3vtW?5n)pajVqH^pOVn)jEV;k zvMnAv$?q-bRUul+B?JF!2M9dT(A6pV7L=Z}oF|Z{Ck0v=E_d z5tsqgd-Jy7cp5mt&rF3e@6C%@#0??Z4JlC+S6L9x4M@r5Y^Ia=Ji0E)@-COeN$2}H zDn0_LrdmFh+~MoB(KDipL#Gl@|XCkkBI6?SzgOuP2@j8P^1tvS`&`5q?Ni&#$g}n-O6JL{wjq<$Y&Wr#{5nyMT)I z^S)|lcT}uL5k4G*LcwZzZI|slCk+vIdX|^>o5_&nh%C0MzwlL;Myvjl@LxoA&+4j= z84(_%sJ<%8TW3`lJj@a%P_aJYtFDMveFNchKya&98EexBQa5FwJJQr%>ZbIf1zFw~ zVnLd#?MOZ&(g{(s09)@=3$w)US{?S;+;g(LTEFvOT9}^^JO;FtmwhW~!Z<3+%MnJg z(qt|7OWYsRNvUDl^OMsy;_<2 zBYWyoSG6+rNA~_<83)0KWTPPQstt;GNr*Ugo;p!4GwOR%bqt}_{F5?!U62BsIvreB zFG=eU1lH4w)^X}zHW4Crl&sy*Cx|*Qu=dg%U#h&9|>=y%f`88iO5}XC*7mI z?6;zi+VHrH=Q9ZC4~5;|M|~*l@pT-s0Qy5=_xDjB3fr`v^HV^7DD3_|>O)~?ZD5iM z^oPP$_ffkb&Z89jjd-d&c~E=K!E+jjS9!BWd;X2baq(1n^pN(v_Az!=fc{X}`abGI zVU0F%T@O$Fp|D5#ob;iv4Sm!uNYN8q{Q!EMe`6oD&i^_dF95yH|ET6PyD^VxlOvzx z_8rh43j3>%`B2zzeY`%+bQbClh5gaTd%ubCP#+45$@D$yl)b~ZGALg9Lt)SMsr*pb zvza`T=lZB`g1v{CH$a_|_xR=kl~;cg?43U9n_#`4;?Or}HLbBWGg8+I^{!_5CfNIZ z)HlIih393Uz6o}h;dPz=N7{RUXHj$yyt~=#n>U0K0*Q2@AS#N0Xewzch=>}HE@%W1 zEFgkXM4BifDuN9Q(nLgTSP&3VY=|g|1r%(E?NdasA@=(_XJ$4p5x(z#?|q-=B**k;2_av$js&?(2)PsNE|A%P z-U;?9$SXp~r>(m{b^_r>YdM-g?e~G}X|I_)Fe~`K+zIxEt*!VGyiX7ELRsb$fAe3) z(G8ht)d%#vILF5sBv!&LP`WX7DXhghIn#BVt&w8y0~EeemMO%XSmU4M3W(>Dg>gKrI7o#^&30%37T$;!dzTBx7Rz zW4PW2G?!(oSzrJ(m*YXk3L&|C4dfLeB$vUn%rS(Jo6m|M@&V0dq(E{xp3t!pBX@#5 z53&l-JHcFfZ~&0>xI4kBui>Z5=^)ntY4fF2~A?cl9)z*?Q zK<@-Q4&+!N#~CGm|59qC3GxNzIX~2$wZ>S!yF$dcUk$eR}1}o0VLA5OMOIjsECv%qYbu zS|2H@5Jg+cnhn@bk&6#Jhy7cT-U+rnQZ!Q(Z7xf==gGwdp2PmF#3bkZMkZg}K_Xhd zD$D$Z07o67ql z#TBA>M_Hy!%`}xoa1{cYO2@}^Mfhx%2M}FRsjRPk3heX>)9$inhx2mRdZ9{Oe9YTp zlqA-LbFDBgG#?|pr>xm9C#+d>@yVXU{{0xWE?gSbg$hyhLt0%ZcUk3~U+>y>Lk$t#|CAY5g6k=RYXO~pd|-Jv5f`3ls`nD{&jaxjY>}I3 zHKUqOeD6-InR~wCC#tnS;QUQA%9241n zh@W8Nt<_}l<8cGCYF@VJ4Nt7`WC{=8XV^X)nOgy0?qS&s@~#j^Li`ExyATZ_n!U`j z9^lK}E}cO-0coNwIFXPmpe_Z1Ga=T4tOXj$)hq#D4h0v29Q_I-DYbOyHt7*uV$OH0Deb_!9xUB(QN~be5aIQ5!id52$v0PXfD|z~oJw zn*0`lIyvlS0@L2b>+&4}^)QX@r8>V^L*OdFIEeKyf&UQjlLYFa8a<8p5AWe+2$+L4 zdYQo8ACM!!IEnQ(froy?@aRJV)k&;RsXBEX^C_-XfN>J*YdD|V&PV_-PGV=5s(acA zU*MSqn8P*tmFnf~-+js8955f<_BZJ){F-e}z<6ezV*(cuFhT;=Gwa+^ow0rQ4MPdQ z%-AXnr}fO5!sJZ7s-~9(!!u12Xgo~3=*!Derev6ajQQ_y!7Z!*=1a@#OKZ!cFaC~g zNFZYqu}z6JPCqx6>RBAKh`Aon4rpbTQN)?=@cOXmipCGb?*hU>hnRTjfMj?hqY1OJ zvCK;H4Tr^|PI-E1N_VX4Xz8e3tc(N3bL1(@N-eA^bOWYkcy$KMT||K7v(S>9PP^3u zFJ_hM9pW;^sUhc5Z>edLR*6NYJls~AmS3F&$Qjim(RCT1XH?$>GFu2aqxuDq=Y^0n zs=osHLI^ply4LqJdO%-cA6h%U=P;L1cW(8Wu$~T3GLo>}R-h8ADW%5Gzr8f=9hb1n zkr)AJ!tMsSQwT}eiy&)-kc52=@}&@xugP^W}F9&AN0=WT56Jb3t`y;4rfF79b|G?A) zqLmz&?JT84SOYClPY%yMPOQq|*)0%h4(Perr-Pg-gq)i_9poAz&V$$n@&TadW~WAZ zaF|u>xpTAsf%PvyCum3f$eRz)xmg#G&H$%@$+6jT2d(_vnQIS_u0W2>9tqE7fF7Ui zxR?e>p^a=b1~z+q_WM?YJ3d9-o)k|%iW8Zf%ot%+lDY}z-X!L&|cHy?GF z6FS(z2s>IXcc^xyQhTU&l4UT5YU_T-sWu3&J`(BAE=@U?5Z&*1fQ;M+X#a7B<>TG5 zE@1%k8Sx(j;gL2&uK%b!khHgzq%tDu-&vY6M=Z#CYQvwXJV3azinQ#<=#uZiNVr0T z?V$hB*j0p=R1uc0EA|8>B|q6--h&9G=5vtLm$o;OU=!qJl(NkAS-R_5Un#96 zUF$3~-vDF`C-zEWP1m}sURHy?X^y_y1ACrVlH#8JG~y(>j0j$B<3v3#I)R)FXkyNe663I{iJ1oLRKRwjqpSc^ z2}#U5rM3IkMX}sT@EBYV0eUCFHy~dMAzf*+U$GBpm)aks50EAbv`f7U>Q+Fz)G1Ml z_7G2(dYb5$F7+!|b^v-OLH0g|*N#HD}cy0KgjBfSjI%tt@br38Afi#KGzV$|^X@K^vuYtTIg!HZTf2ZvN z+P7X8WyWDrtK{eU)?!%O1KPJ<0CGN{ed`S%*8}{ta~)1<zu!{zdjWve&s4<@jH_8^-rpYLsg zFPa^8AifNUuRp{TiJ2X0$M~rgVFtu!FaCR_;g6zPdew=Dj03_YgvifzJY>W4s^3Jy zZA5r;Y1lf`3a>(Nxd^YUA}qaDEW-*)_t_B<+pDgrXAC9wsx#3%78Wya{<<`afui>l zns)rPZTpf^l?Pd{OP z!{POl%W8%2b94;12*WcS&>N=KgS-sHKdNs8%nehYT5-K$>Q77P4O1E32H(3EU8eU> zE7RUT_7~UVp+;x_7tvwLFYXDi4~stE3*Z?5=<~hQ@^EAuJkj%=Py8Gpyt7JK%Y%}> z`*q(tnQ}6Hcbl?I<5OgBSG~w4l)`xf!^f4S)rVJ&Z$s%8XWa3za0_2#yzbv@qXJ=X zvL`=ROLXKP4zSvz?-VBCVY~m4ZR~=`fiQY|YL0!~(i~;e^or72H%Vf4lzHA680ie8 zNsPLrOoO@xh@WqztV@bGUXQauET)K}t4qVDMUlMKHXyPdF#faGS;l0~VVVp6_)|+$ z_aId1Kf4>LT_UMVz8~2!1r8W8rg*M2s89V>6LtULjSmk;F(}C_qy@7mZsdapX516^;1d7f0nH(ECX6BlH69>=tY;%DF{p!A?*wf zi|SW}wC5eA!9T(%oxxI=76ajs13YGRL@tbk9Tw&COQu(}l*(N0K+|?LD+|r%SxMfJ zVs=+)=2WR(+JazaGddL z^QQ-_X99iiU6~0q8ra zJxBqd@1y}B6@ZuA4fm~CQ3=hLr0uS#ad|^jTt?Ikn5F~%`4H6I?@dZK7hzkFMTgos=fz-9Fjfo!&xZ@&VOb0dfuyh|23grT|Svb&Wgu^F^f6 zVaGd_pY=&CL1nNQwiggu1H|PvA^E8v=s%W_dlehPs`o1D3$Hd+NPaEXk_BFiGSBEP zI}UtgZkvAift42jH{p@KBV1{VYiPo8f>wreEWH}?wD&}>Z-;dwN`C&=71=lK_vC*g z(Z2%vRYwx;wj@M;3un({z$0Bud@fb;`Q zYuX#NrV2?_$$-=so7mPg9j2*(*7}!0)&gn5R@s{VCg^uSThm&bb$sM3me`sWI=#6u z&OHZIZ$FT}fVQT|AQOSg*7RPa(qW0M=_XWaYg&TPA|Sri@@u8oZ3(Fq7s6^P1r;vz z8Q;jyRSKP(S7}Y_t@M7asj+<#AEY&D|9@086qqSRdeVT@eUf$Q|96naPb8hE+oq~x z$aoE#9I0yI<+k2MF6C`jxTa)UNIR=P@EjIRIa`&b_L52^Eu=w8;MD_6)g5bv7_`gy zB&RI(Her-RmBCa5gk!3_l(g!KkEvVtWLHpx2b5)8nvJmdn2tkmG~kPm>2i?Afiz)L zAJg4XI|21EZ50o^!vTHo-yfAyx{MO>F|92+CFL{Vxe+ivrcXwU4%0`+AMr6gON3@3 zv>buQ0rfH64YEr#gg4kcxx1OocCU`AG#S-w(`Oq_k};|*xYH%0ZYnP%z<6_JSw`Bv zFy2rW{4R_#dpH%QTtG*c4(BwGP$p~4QAd9(5@dNhRGL;SZue5Q>T3!z--B|m4*qYrj`W-huI8$jO0tsf=fx< zOMg2dL%(o9_%0y+XF`#MBDRs&LGkwqaduf|zMjLv0Sl!87KvD_dx<8Kx@xf<*`37mQ7_eWyqU&DCNR zNp2@U&;hiu!)-RQ*(;>H$(q%uZ3mST)15v zNz04_q{SSqoEq$X)jW20rE6@x)gprH4F}NuRAg3VgrpAJnAWF)2S0 zlskl~3I^29J9zrA^JD}vjvU#MHl*=(*HInkI;;-6p-9T*; zKR25_-4n0oK{YemsQwi#sH^Jh+N`vPtna4R8m`fI%HjX%dVFxR(q$T>hhj7<-6(`{ zZ*6Y23yphg3rna+>k(!v&v>*RX*T0E43c2xutltex8ZxH6^;iy9`$r z`8{RFRQ{X=?bx=}q^>E^4c@D1QzHQ5(fWLedbD;-XMhD5kJjf))T1?{He(|Ryzw?H zJYS+7tt~TnsQ}e9$1j%@NRCVD(7glIH0Q6B=vHw3x`CGhRMQezX99mB;4=vv(i5E< zO4NDv{mj5y4H)Ou*Gp>bJb~9QC&-(v&^JnSb9d+=9Kr~gtgPJTK5i*M z#!-xL3$$4Jp|Lkmt$JSBQLG-}=lVm5`ng`*An*nQ>gT%A z^7@{`B0tw3ON^iEeef;-)SY2H$T}g!ogpH`o#A^zzmphoXQ0 z5y%BV7}|0>uvbF?o&)k@nwJ`MTknY8e!C>UPii3E2KJ{8XWeWzn8Z)yb?{9|=G|mk zUmH(h>9TSr<`{uzhrNjDBe?&_V_U))EFc4ZJ~s&VFtNxd})UHk|@J1@#1AGbT<&^7Fk? zQG|2nSjm`J{}isRfada~?7%AlG?x=W#t9+Lov(wuDum=R?UN*~YR zlvf+dN_{*JJ)ATF>f?DTNCzRr$Maf{iGYr{#VyN}_A)7Ld_1d3Y0JR>U3lIGyqNf9 z$xnPd4+ibY;@tkTY@$u|b$rXk;4#{tSA5U2_;pSrw@6(p#niYKELR+=> zbMcJf-Z|d;pAMcAY~$rHJ;~2!C7IRejc|iXszoIn~G1+{*hS7vmAQH0J{++V*yIdhE7AHG&qt54d_-#9h)SU_as}5 ztiq#-KSFp!Q9aA!d)ZSGvNeeK^MH7V{j;Sj)SpMi<*=w8*D6iRG2eJxUT86qBa6iEeqxstLR- z6+oIO2o5EBA=Dfokjp540of%)Aw=(%f!7TPIzc=PvRH^75V5045m0{sM7b^B`WHjE zQAz9{o7ATngFHwgWvR6-%lDR9#>_fK-@e?vmhqO%KJZAJ^$hWrbfYFZR$IE!FeAA% zc&IHUA(zGVBw^hE9cs(~xlsriYD9z#HJ&2$35k)R#x{@-03B+?j|sdOphJygL5=~! zY1Zcd&!I;0`IuW4)t+){kI&QZLoxaH5>Q2J}#h*Q}amw#`0z94|IGns+lCZv%QLMa?#WR~;~i zQsmh;4Z~ag9pq4of3YPVO3@B&ZABx$SaVym zu}+|5iAa7cZAa$M`J*!vD4p!wSv*oEJJ*oao`5+6@y=rXq;cADJY2w>fp}-}5}EG( zr(NJ}0E{o~oy8ksC~tp4;N=0voAs_@ohywc;0g&;Z`ONE;A;dtE`j>#;~W#XH7D?1 z0E{>5y(aMUTploByjkZK>wIZp9#_T##+!AX34DiuHzZKKS?3q4kLpSJj0=HUdR5#4 zqf?Ghtfkk)Ep!1hCz_)U?{fhhVpu+j!dq0VUa{AsV=PeZYze&IaE&ZrEe@!5fdno# zfnT?0`3x|}9X?EMrOnnEBySleH!%(_a8) ze)v$a&JWvm;AIP#`QgKc)2nmFIVgLpIHmC=v_-#GN!XK>C;2rVO?&bEl9UE4!D&Em z)&u=vCE=+qppi`V2bP4_@)e$PTzMk_7nX$UHroK5EG{ew-g6u}S$w1<=wkyih7a?- zogI1m>76Yrio+od*^}(ZkQ2x#9qxNy<+z>t--_){{rri#i1#sTk@EAsneh346sJ84 zufFnYokHgT=)3XDh;I{o(JTK{;yVEG#x~35l^?!q+5hM1A1&m|O!+m}zn(Wcmy9%- zOo|Fi)SF@o>L&s%Znm6meZLc&#`mGPL~qes1J`Ov%x#uaM+Z909&baEy*;DJX8V%V z%aGP#_6{Vr1Lh>b>6Vd}JO;+15_1DyN+;eH07IwYS8y6!o-5CjO7_12@3Hq>d2WKw z?@*Fj9bPTZW07wOXnAgm5|lkEp*#l@KM06_XX8zI>Q2fNRyA*DMEs5=sV9nR*|eB} z$aE3Ai4P6sr(&^%Rzi*h91AZmXFKBmuUED_XKhC(3F;&Pk@<4?VAX>JyVys~4Es`& zwW>JmU%<9xbYshU()BW+2MNYb4ZI{k4-)JQ(oqPxv1JCxbRbQ%=s|+-K)ng*L4wW- zJ2u2;WgON%A0y_*77@4y71cXa0)Xc=ID$fvJCx+dxg8>s72b}B9wgWirV{}@Nbt&t z&0(&BMQ8j?fcGj@tT(nyv=ST&U@_+@#EmV#J0tfYu)rC)CNknMH%yF-tcQ1<8qtFU zr$t5_=0?Nr#+F?$?{o%kiVQgHU%ALQE%4F-`RS6uEmkJ<(uecp))m)T%#+h4gIxGd z0CdUVT#)`iny~4T!L?9R02Il*>*dI}cNvQI7N@=?iewV|7+jACr&i$<+wCz=7RJwt zQ^P`Ag+GAlJs`f9%>?;r71ln=^`3!OAyR22;b4)HX-P&GHg*ARQ%xi7GvSN+s4m2J z0>XW^OBKyBg=T%6bjj4CrIln{E*7engs(XZQ<1#dS!f+u*pp~sE%DEag?b6CRxHS# zp|Ox3S;!uNg&HN{(d}&>en)bzvrrsaD2Fe~!||uHS^^qE<45N_rIszp zbC_gPe*TBWnQtLn>6O#=491gynQnKrl8lxyF5E{Jkw)3X=?PPJKqs?~4=-vf;hKw^ zA&-M~tmyTU<*=>3mW{4l6n|Wtc~~)uFCl6XTyp{cT!^1R_6X4p;@C6kkbyLj3C0jI z3~C4vTnq6$$O<5Kja7anEBi}GFGZ6Y^qz0Wn%(EyXuYNMO%w0BS>p%K{!)C2<(i6; z_%ZfvDGN8TQ!F84)f7@~2Dwgs*wa4oThwL6`iP2in`u%jtX}34Bgy%v#i_j|=kiu) zR?ZR>5I-TI(io|?BB^qb+FqPG!%6i=qK`-&zMqsdle29~>FPx)y(Iibq@*FvM&edL z8)Aj!<16*Z5*q6`q z<>y`vvTd(#tUC6cL1UMJ?xx^hB4?&XLKPBHXUaS-Y4W!e5z$S)q1!}U|haaD8AM9jU#sk_hKOC_wgDrZPtBGF$ z#M|2*&OA)j{InIJhZD_3VJ^AUD)S2xKRC^+BhBe!6EwH(O(y`vYwf4`Xi4)ck>*lF zvWm?b_Jwc{0yMoFBCW#{wcbbkJkcsQd&$qFR|Z0MkgLvg`|L1nE-&S$NVRQ>v6t*S zM3$CznehFVmdtqI0PYnZSwT6uv=MW8eKnY~MdijO=3Vw&4OvO?V&7SIIl1(B!!Dz> z*on5Uldm04GvRV_>0dTjPA(nlw3}I-xm!JUysd>Yn3`!7CVXtdcq8_XWs%cJpHr6o zFXFz+on1<@ahLhPl%JeMx+PNRg;VX*vS*a4gH*;Q9>Mfe+?;x9N$vekD7`5f6SujN z<}j@!r2<~9C?E5vwz@|uceu)rBO~F9s^B4g*scfSC5ZzXFPvi8|K}QozF04hl+P!z z{*;pNNlApfSkFZH>453`AGeHrSR<*uu_W9hjPkk}1JmU|_@9I}FI7i6V)gf3ZG~CL zu$Y_1`SVM%8h4@>5Q}Ea^oPw)HE)wxy00V{1A~^!N~}BqXjT6ts_N`-OP;jcv!D2)f0-A$5k(v34IoMA8N1{6G-#KV(MerXK)r(7l+nwqLXS3)I zsOrNa)!tPJh0~q*av;9-->E((Qr!j-|ACU=SEqUgBGaAfwvptv2Miyp@g(WQZv2d(UHmM&T`_4jXWMOThh4%2|0ioQoC_gE3SI>-v&Q_8IF|n|; zBzVeM7=`2rK#S+h$U^q`gyLC7{KG(eXMzR#pJA3=`#%(7bpQTOK21BoJwx#&+e}K$ zS%3rU(TXoMi|GEa)9{Zf=&m8NI#R!kyP0xmmh3j!##Z z7~}XfvDi93O<|chYnm+84zMPdL?#CmpQpZ7>R~jnSUrr4{qv1UFRO7^B#W(N!!9nd z#l^Q&CblFov1N&gJuxw{CnYBK{&;&+PF>?yiU5}vLHjO;0TN;XBz^ZB7jH$%Lv zy$g}tXeHN2k{gRO%jtD5(CGP^06i4sO(SV))+S46&3d~?H$zO#dZ$P?1x(F)*Tk5b z^>LA{S)UaJUiPjtFtFCx&pyFab1Iwu{5jcYvLmFmdu@@H$hS1BuYkImu(d^(O2Url z&(0litk%O9inJcuU7r_C3eP9H0!Wp@adu+fq^Ve6S5(6vOz=G7?*aV25Fdej0Hg^^ za5*9M&!Jlfg2@m)LCS@g0dYUb0wL~!_#EU@;P@pFUj60#?P~K?|2c?KOT><~h~)9> zGqg7de&ThT(u3QRW|fDp+U%MY`tC`ydQ+HbwI{p#*Q4v#&5-1M%g%*>QX3W*1yj(f zLz2~)Ujc;m>|=1Ricyqg%n6F0@iIi@9l}MO2lO+J?X_0qL4IqPQ-l2;X6At(X1uAj zZ94x)?;(wYZF{}AtLrcZ7hPA`MGY|}Zkp&tme3}8abgp_B(aGOO>Cm0T@xKwL>D!; zIwt!XlaEIh`xf<-I%2x0zC~AQ51|e4Y|{WuN7K(f{j5#Qx%|#H;X5NWor`X*?4mjs zJz3dBo#rIJuZiRlMb#zBuh-3G`G}%xDzki~tsdEbiEC%NVcyfs)cX}ty|2~X)%*0K z?vmoac)C9T#zi;1=n@H>bzb0I3m9+Q^rEXJ@W=tIn*i0$?0|*ZMUCXM=v4$f4w#-N zW51rKj!9CzfxMCcAu>RD9AzhD~!|0p1+ zMiJZ#at~nqM6x3d4$E~K8WlBvS2T#9$SVlE0H~kH-ynYqA$}qeA$}sw&kwxA0QD2; z4AKcuKanvYql6Hb)cGKDfUt+PeqcY5zL6Jd6_-@LMcmINHFmkxvlSP;??^N4DVS9e z^TN3{;z4HLI%cZW$-WyLUe=RCc_@3^n>x~-r)VSlz4=Ck zm$mN_B(JfOpGT6{w4YUJ@7hFrGsND4Ymgdkr5g8inH}AJP^G;wiT1`id&%vQ>~AH{ ziX{6d=I@+DdxOQ^Z_@pjTdA8Osq)19bxpL_&DndYBa%5*@})>Jr~S0b{N*OvD;0a^ z(h>MaS*gDwsiWHWtIS`^M0-a&dtc5(vX+%>*UObmt@cwZ?WHH$t1tF$ehR51D>XEd zN^0M?(q52gFWK386ITpzkRb~ z7TT8eI*HA`_*_gbH73`-XgcJ|ap-M*+Ii*l;bh6uQG@ts5ioCq zhfLP&IP_tY!V8EV0HjKJI6HWypTjhBSz!%-H^B>tzZXc8(BMx(K7rZ>1gVro!wVRP z0znqUMIaXl(F|e<$RgnQHV|I@BL4nhvr@k!#CA)>-n58h>uf-JS~K(%kHx=iY&7Pq zSdKb=I_CT%IN%(W=JbUJqCm%|e+|bi6fn+PqYAV}t-g#69Kak!INFH5 zH-b-}0do}L7!#O0iv9X42;3|>$C|+AW0<>)Ca`=GfmfQqRaf$DBw!r5#+ks6uVNbn zFpgYTnZT(N0`E$|IC70QfjuTNhycuRdV)#kc~`Tv4VdBd!~$&rPhZ0~1b`V%Pcocd zV|AdqtuT1=IrF^CiH7qEgT_zWfECh=8yBXet}p?0E*VY0wS_5-ci%1fC`_5?WV$75XNkLjQcy(3l4&-kE!sfPRx)h6l zLu`l@l<7_hA|@-+Ru6t3YJ9X65>4SDR;`^d9l(|8Zyw+HD6?yMJpPjfO_xdnYhCVn zZ|S3A z4@Id5eS5J+R?8QQ`5MQ>FxR7yQv=tFd+`O9NeVUgkS(tDWPf#{uJ~&8QvJsW{)a^U2Ke_ubibYz2f&{VF#}{ekS6@WYC_(CS`Qp8_7+6NT|s=9 zmF;gOG&UXgG9XO?gD(l`3{?sQKR~@I?2|F!_RXa zh*zi`Nc|bSVu6g|-F)x4C=)@Ub|7aF(-qJJzH4=HK^(k3EM_x<_)$Q(r%D3VB}wb` zIvayyo5ftI`hH>BPgvD@eJ@(>0Zfmx!Lo8_TveeYOw0Dii!iSh0WYJp9Pd^#XO>9f zh5Pq7#;Z!LV$)SJ;%;tqXZ51-iGTfvAZ>)m74zkMH@o-_aU`s6{cN=v=-)GBz^{r z|La?pky96ivAZqthBNsv1fayzyW{^l(3N=KDkXlyN>}2;;q&_yrd5YmOZ-ISivcb1 z25SsovbPq#sKmz+KNg7R*!YAJpJ7!ed3!{4|H8BrMYWXpLPX|@*bC1jlz42cm5>r2 z3$J!|Zd3K(H)#jfws~35J2;U8`oBJI+b_NOlZ7_>j z1EBt|=YaGTLi}GBg3JZdM2q^reg(AyQ2$qF1^-v##sBquj2Qn{5fJ~^>|0pB0j&S) z$5F?!T}1GIMMV8y`@+-{Q2*B*5u3wYBaK{BZ-IBFDpvp3udD<&tXM2^O~wD!8CikA za%W^`WW-^v7Dq-tf_Ix5QUBLHkr9VQPPX+z&4qs}pJqA(zeENc_OD#DfWJ8)KOF=m zJ>}|Zx-{Y63R0)?@Vq1&PhqJ));RQCiVqr-Y z3$ki#HW=4N7SiRd(XcS3(O{d0RY)#(7G8-gl)@L~;V0sEi-l=bEQrICu~5^F);YLL zEHo`l8SN~zx*d-vK=V+?^6{|GO0Y1P_<=w?v_lEo)rkK{3o8T!@<_+ynKE##smBSu=M`pMwV!0Q**qtJ z#Nlc9gq5UY?Lp$;eoYc5PKd2xY6YkhqT}P0DSXxmu{+V-M3?CZR#|0%S0PLT3sYkk z*#|NXuF*jFb;8TbJrM0h_C|S_FTxiTrnYy&%MpAWh@X;Jy;Lf+Q&hgC7pcL8sUw`! zZX|Y!)WH3u#QCRIB<1x)YDi($$fzgv z15on-^`x$SH%$?U6rOc zi+6PAgGtE6nex*U#irY-VDxF=nE7Vy$33dcqY@~W61b=^^+_oKX*;9I#AQHum7PG? zwqx#Vwq1TCK1swcE==9y#MdMGvWO4bUtGUL&}Vj6B)m+7FDXoIaf!8^bPqiO!togi z!lox&Vx{=#UZjQ=rcM?qd0(_gDi6?}@Da<$-HN>udcsk}j{xEi+m0lmCwwJRU5bc5 ztT6Q>r+OJ84?EQxBGtnaRewwTSE731zg6#uRL>XHmlmex4z;OnK8N*6KvVs7qT`(i3&d~OU$r<;#%xRCk@iOQHH9g=htWku4wQEycN?G%lplb+BZN3m9&vBLZPO6q zKsgFzIFKe<)PeFPsOJH7p!^5qHzCA_HO23Y~5i57iszd-!} z=yPkmfSw!B=XNp3AR)x@^%;<-0WIAHHZgn}i5i~UmP_q(`x%x!fR^s!h;1!wQGSnI z$j2o>yyJeQtD5D~Y56ge5zRQhl1r@-Ly$NhP|eFD&DnhuG%qB6E)ZrVXqNW{D;#{m zFOTo}$Ur%g?vZ_j&<9TW%aQU)iORF?V@&{v|0l7RL2vy2CrzT&|Fz2sL&yU9780)= z`F@M&u>%H-R$g+_5H9Vs8RsJd zS-SeDp!TrKd0fX3)s2$s0{BfK7JQ3*iPu65qweK z5u(ohfma*oa27;=YpszyOnyOk0`rN@1@xNnA(jIddW*TKj(_BU8a>gfM?jtfe?LHv zfSdv{8Svs`t;|Xaf}z_0w3jY7MMei@F*d{W=eHe@-h3nqC&IP_`Ng8}a)`|!?*f@G zB`65~t)S6>>i&1I{0{Fv5#A1Q#9{^#fd3vucaUyCqkRyvFdGiGsra9cxn7N%kQrn< zluE3#OMdGC>3!r`Ero3yHb#rlc@R&6JPrgaAhv;Q0g|OKhFNXABW20%kO8SpMS~PT z-3R!963_zZ0@4{sl>%@=6o3f1Ophe~QW20$KLqli5R&N+K(+vB!{M*Y`R&&D|IWGT zA?8?qUI1dZ-T-sG$6sjv0|=Mec-PnJ1TY+6L$}gIXnwK`WrpKl*tr<9hQ6q~r7-Je z@}A&vJl;MTIxbK~`UI~9okW_c3^9kZ<& zs^;04xuY=XdWALf7$Oe=+Ck2-d~7Jd7peY+_%B8E)cqHcq-R_lT=zN;`8;Z)aH%A6n2#J?A*o|&k+g805b`1$^cx1(2+{BI%~ zYsJRhg~3K=<8fpkaW=k>Z0t$2v6J|(f%x+YHf+i4vm(h}c7IgQDGZKe!&Ga};SVwF z0yO!5MXJl;i%RBP;?D-+_y1e9+sfk*HBmjkFqrOC&qL&Pr~0s`U01g~QFZ3S^uR!P z#cC7p8jP-G$DDR~+pR%wmABo2{FyJZvkc?XHj}+zzopqW_GgT7yZtQ-u9scn^uwoV z^a9ztOP|n5i8VqPub!jLMyT-vXk`iA0Y26ey8GMO?CYlJu5TL~qwWH2%~q&!TRqNf zmKwL!b|%KS3-m6q?gHl&1c#^SeP?9_wdD9j&&%$%h-AH$uRGr|g_YlJ_Qm7RIqO=t z^Zi!7`gWX0X`Ticud}!F^mK~8WDi?M*&ME)dSH<70iFbOc5$e$WcyDh)nnEajSJ%Bj_vR;8b1F~*G@U1Nva|UEq zLC~X@DXGSK24vI9fQ(7c@D`ZJGP)k@_+9=X11Umz{TVO1UHN*j=*oJ z0$T%mu;ZWkda&cK#C$EWGoSOkSFdC{fWsXB$=AaiA9|XT?*Ki_QDzkKqocG~w$c(( zU=DNq9Ny0W^_+{ZV6qOV=iIR%#|R;wbKOC@2_YveT?sMsq z!g|S5OiS&L)dK&={LJiew0v1g`4g_+0sZdV@o_bum57Emc3I`nm2}d8RlGJ*+(s1d z&CeX`6nBK{WIz==K0HzmqWEH1FEonfc*o5VTZJh8D?jZPN?#8?yalcqfF6AKCddXM zpvq+AF&_;4l2Q$onWhmis~_;4SgKTC`puvq*It}TF`g7_iGyMUh6 z;L;QG)=GLf-m%+Nq(_c-%wNsm5YV$4&I36YNE0?at6?hCH2@_h87pVTAwTYz6-6BH z*jF+p)*plGAwYAv7vyIlo+hTzv&@MA&1GkhPD04>j+cQ96+&|PAjktkNG>AVmk@Hi<8>g{3L(ckJ_@o_ z2sz&IE08aQI2WSkb1b9+dc0#E$nk(4?>HP}m=JQj<7|*yg?JU>eUP_+%HtigX=Jr1 zD?Q#Z?|FJHK#zB<0O==$9Pc;>!Ve!u)6J) z+yRd&A_qK9um?QKMi&?8=ndX8!TadkQqLm%$95o|w^nlWcYZT%#jmgqtK%atERwsm)(J#krP@?kg;mDa z*TR%qka@LJc0XJToHEB3dNUK0eMb*YU(WhgHpQ zdsqtqei`0c&pUe(UAf*7UB5ujUc8XVa{+Z5=vdjS!Rt4$ZUbKu|FQ7M{_|;;hb|qS zXpnU3i|pP2@sDk~Wh4{dl|Yb$7Q1W(I1564-$u!4W|H$DD((j~IX_x%9{GzTr@2cG z@t+BgB=qwLu)b z`=G1`ps%S}AU6vk4&Ez3mJ1=TsgFTE6hdB8!OI|kxjnhOk-VV%ZefWn!2>&WSGJdA zaqDw0^0>EbEz;QqHPU!r`@a&^7S*lA#J3Q=L3#@DF~k&*@j#l$1j&s1-h+Ar2x>!g zc!fjbfS?IP?R6jmM?)+FSt>*xMEq6U*oEi-aXZ9KK+p~1ACO;#I2U5*dcN%j+Fk-t z{|f%Nr>wphE(3L=tVEkS#Rb8{t8K5e8V#!eujK?Zw0VKvdJ4DvO@xraiC%^{J*p4G ziT6(~NNoU*UWT|G(N6%q3^Dc^y&#~MAs!2I3{YJzL)1$U&w}a-XcKxMsy_~MO~~EI zI0n{H06m6G2iHA-R!qmohmP}@`n}JZ4MCG^Nh+o&@ zU$PeHMx@%GQV^~Z3$hPTX9HtPAY5BTnr_>Rjkbca1hokfnPcO0y4(i;*U7zf{Pv?A z%bw&_i22hBg1l?2`O`6ds+g~5`+k@B@d)eF-eHB4J%_mi2>hM}S%XlNFsskDT4LTz zvDCL9cvmb*QC^FcDS*!E9bc;FuypLnFDllh@Gg;*wXTvfok)e9Y-r?noBeo_Q6S%X z{dO?F+t_5=R7I`>?M^3P`^o-vVA=T3)?(#}jWW*G6C0Dfb~0_rDlR6|Q_Rf9KYFU0 zoK4AB7hW?to05NT<>YKi{;JB!*)?WPU?yi%EuoXM>nx#@vuXM2bZaJO*V`DKoJ}`V z3^O^q!AwHTdBlCMp z%0K4`Z3N8ZtfiTpefT=3b^~T|*3wMQK6rxz%Kp8+GJ+@TWpO1 zW^&fX1ZHev9s!ui+3{v_wuXRv05dr|q3Yx;$K-ncJArp6U?yj|rd+DMi+>+rCTDs3 zP0sR-$*YJS0hr0zW%+h;HZ(uzj0c1K%;fCS{9rk50~(-{voVzc8QUNCyen>Uld}$0 zCubea;W={Kgp@yH@eAL4>LI%`yLYtAY;#R7JsLi$yskRIcv2U{{%oMXPeG4 z$>7>Gi)CxFc%*&u&E#wlyaNG!>rDrlCWO58mVrDfguL~(fV?M!y!HMB`5n;7S<5Y4 zkpk%CtQ_PFz>dA@+G6m$il?x7T7KplQmbRH32>!GMJ*Ms(2TyJB?zQ!<-PYtrf*R^V3>W`Z{f?`#x*5 zfKFS=LAnSble0M>cM2iXmTe&K2qDv!f)5zW13GPq6v(vYN%euR&P%es? zoc($Oio|+bxLN_4%P}CMgpkSET#z|JNG{(1*&u}E@+XkpLP#!;{*XEcXf7iKlFPFQ z?J6;nvGE{d0iB$=^zikkP1!tGHQnTFIlNDb@U2gK-iIJtg^PIX|0y;Ts19FTI zGC3Opa)A&sIhzSGLkKy0{~3^{0iB%v2(m{AnVi-Cm^1-8IqL(`6{wt?O`^OWrmS>w z_6$)gg?A@{J3u}WLMCTTKH(ZLKqqJ0qtae0rOo7Qs+6`&&MtxHBEXAf+R>;?&gK&B zCTC4;xS5>2W>v}L?Bzgc^^PB9o;R{%Qu+8sX zaLfiYzm6xCz-=nAOW|{{KC4Q-j0*JZBSB_zHX>gqXFG}f4A9xoV*47Q=8Dac`NpSv z@OCC}fDSqzvOIL@@I<4d*NJ}#h!@#(>*Vb81cHRMINg?zo19%Y!zJe`lboYJ<0N=M zlhZAFIN7Wy`r}=4h#x3CGCAvIdHDVto+vpBh`$$zUtr@kIkOT7lB1I|_v&QJ%jT?y zDMB7xe$e7(9-vIlK1A93fWD^c>|jkD(AQKxNUjj_nmQMxzYy}8x)x*#P-Sv9&)PZg zX2}2(LHlm(H_2XjeI*4r`9|&r7u+9Vo>miQ&lCBI0HbYDYnIOath(o?&R09ONAtr;272;2b z-5}opZBrRv*3aONd&)XocNwS~WhI)N&CU-R%_K9@D;0emc!hx1vLPB~lI}ZaF*$1l z5lzm%jb6H&q%7{uPhBD6a#Q^PL@NNDoJ|9nDumorzYOG2pmK7y8R}g?n@~zre;nqz z3^zIZ9oBsSJ%&uq8b<=&DiSd-Kdetebw+XMe*&*DpcT{cC9_hRP%+OYz84U-NoX3< z@#-u>Cuhy91-cQjFh4)+DHddMb~}=@L^`{Q^eB=Sd*7CiOwNWPVkc*rR^R_|a+Yh^ zSx*-8i}Hib&iq@LeqGFusbW5woSkTelRbw;le5S2vy!N~36rx)R!hv=BbJ`b4~9$K zmdRPlH&_95a_0C_J%{~ka&`>7Ek)+$Dk(FQvn4h(nw;%fmM}T{;lL9tO7t_^R7GwF zY17HsezH3cEF14`-;QRJ>^K?A?aDKs;P$-L&BJ!(={(GAg?*ow@O}B7yo9e{f5=Pt z3id}6V`fe@+{`IGpDpSZ$6;l=u`<7*8E)-!o!Oi#?r>A3?Rh#?I-Bx36EI)FZqJ(_ z^QRvP_zEyz!G4x!PGd30h3qgX^ipNk^{6%Ad2I$`_N%-a)sx7WFMqE8mc=0;O`?KY zgf!TR9Uy1~F%0AaA&!FB2J#MYd=7+H|0MpN)ySm1ewPFyxhswNIct>DSH-B8pR(t6 zYz`ypjPK~d0sqQGVrn9BOCm8hkyx5YJe^3qm`J<{F&!II#m)eTbs#SSX_A~^8zJ5< zRTN9JMv-IsyHp;)XIUMz6g@7`XtX` zuBY|W^0OLKJ5ARRyVx>Hqw7VmHoD%CYF1OeIdG#3@34}Q|Ep)Eq!DCQyO%1{$2P)i zXS+t&CvS4)PIaHWyDHZ|`q~z$pD6dUgsy+|w}h^LoMQ>yoIckQ`Z;oiCG-x7^YY9x ziQXMCz_xE)CK;I6*w0UF?1OA$*V`9n=Y@6jl7-bEdY8h}AbQKfGLS);Wbd^+yOi=~ z9!n|u{oL?8y)?n@dQZvIL;Wd_>=9H1zl$l4^lMC$`@%dx=2-VGaNR|hJUwjXb?V3q zKwaIp?vkg6t#sZUc%^{pE>5@Ih56F^43qoUh<*u3mJTS#+6le+HE?F=mRI9u?D)44 z)npI40slIP1t7D5G+_%C5Yp%eHXwoEQHU!*1`DxTVt(Y4U?5lzu?A$h5St-d|HNA! z2zEfE|I7jl5bTC{9OMxp{)E^C@{JIwREk!=Fj5DCEQrTI?gx%<2I19j!{4#j+RiB- z;xI>?2=SXEPJ>u8)v|Smc*ha_A&#r~-(K|x=>w#R7X9{W0o1*KetYGt z@UkbKZ?9I~g%SPsN&@uTs}Es*A7B$$?j9I#6Gr}OA(9o=CSCf~QszE}#ejZ$b#=t% zFxT9p&!SF;_cXxs^xLbcRwBuBST&;L$K3;?oRJX-40lFuh>SSQ4K5=iv*Ep6jp(;m zGb1AoOEoq;clW@vFhAoA+#VTl*uQe|8N8pW0hv=$KyxFRHWZLQDK91I9!f|?xv}4P zx`5a6a-Meu(Tj;{bOnTta%F(IB@$mI;@9S-UM1o(Dr$}BQGgCG9UlowPjDrgMEsRN zINa7V+npzK)M|{ZhHqN^|8+Ph{kslEzp>m&UMW`m>+@1Rm(<9M<1MVbE|!Ma>g`?} zGUn2;^3PV7CnmzT=7k;R*sP@fjv$~}`7O%w{KTxBM0|~IQkDJv_QDBiiHVcp+?KKtY$}&4jUwK{QO0EDPPXT+SzM4h#D>D0sfhZ#7T)n zF2wb)Tn7XfKs*Zaun;34HiNt^!~}?1f3m3!w2~^fGD?BN8hGZHSwH;CW%qd4j{|f} zz9tfJ7_T4wMRV{z@b&`Y8!fNY58Ap|e8&dSH(IQY70+xCUMg9Z`aS{atDMF6Ba05J zX+N<-J%`(S&B-c4>-$vFPR;#MDUGVM%Lf7#p)_+aHLxu)GOR+XW?g4s&JC2Lk6)2>P_ILHcTE@#x5+!~RwN55oHZ5Edj@ zlmW2JMm_VbhmA?{98U{d{O-enH&O70GkQ{F)M1S+dz8(e;Qc|2_N-!5Cz@Wo&~|0| zDZ!1l61~y~?-$E9E~^J zOUQpUFRK@d&B!_Y)}|?%=2krE2IP#IKRxiM8E>4Qt(=*xF6vLu^LwtDtX{p)jgx=R zome?e{ylfLjFXK==kK{sRt}o~$Tibg9W?)C2^}>5Z3!JT|6>UqG<$YvtfOH+aWtHi zI2sP@Xjn(O$GeekL0-^o1gT7EGMRK|=GBt49G-Le(BXKE=jp)}(8lMpah{$t$>29r zR$k|sOnNwc%P&K^Cw~5%CM*w_lS}92b`yQa{KM!IFx!d?a@FUvxtHvv17=%sL9Y6I z9_}Y|FB*Y*8Tf)+_4#}`DcM^Hm~F+yChx_`$=)%5*;ahO1RfG5dm&)96(7pg`FCFlJlvtK8tXvrS1EpU>Tu0U6mZvBUA8+g5xww~Ei_nq2kyyfQV}8wO-- zf0-@4C2m{sja>EltXVDD`%`0I*x74(qK(vFyHG5wVqu;*Gg!lPG=NaC;7}m4I%zrPrYT z0J`CJCCKGM$cEcSke7sz4Yw0(CVTAx-EfN($cEe9gx)4Gvaz=hKnx*gD5{sZ!d5VEaUSUcIv1vHn}flLuXa`_U-8X+W?=^4phbwG0&DUe*2 z6WT>$BxARL+z6z~mEJBrp_ff1j{H17CH_MZkgddqb&|b90NqL)3^Gs%@$M1=l) zfEmXpM6V<2WkB~6zX$nN2-#0;nMF+obWYPLD&}R9E%p<)ph4#}W8fJDc(JQ2lk6vc zPqe&?NAY@@YQxQb;!&28{lvOFE6WxBZNvY^e&U2T>=FeJJ$%?!>;EqsiVxUMglD#% zEWMd)ydUo+EB64}fE`bg=dh~n>_u4DO73k7{~ltDA_w61fY|UAwRBO9QV0 z(eZ7r8C{R8m+V~(=!9>l<)N%LBy5hnPyAaz{92n<8AHZzPar6n7Pr|V?kZ z0=XHevWfVqwG*wqra$V2dVI4}*+`OQ9nZbCQ@v7(+uxI0V+#k7`>zr85~|mTt!E+X zHRRO{_>Vzc1~M2(6PaKOA>To52ZGNbu5Xm=jRb-{5aSzDnn3UuM5`urZ$MCuQCX9w z3`&6D5Qym@6NG3Ek)6#T2?*LkJOi=}Xj=?X{}leXr>xzN%Rr`={yG_`nHTh6WmmhO zHit5}0nBkWzI{04!D3oP_~U2frQD2ApO&azQdBJ!mJQu;cMR;u$Vctf@iS&9aoa{Nw zO=$h&^0Jnq$V{nPmQx$rpnoC_Cg=h20eas9bY^y^El%HanDpK9^Rx28-y}VsPQu0(Zai% z_&b0w?OgLVa@9`q&tyhEv6SCjY)Q4bN@@Y~P3E91{DpC=HJV2De%$pfOe41)Y#JFm z)V_^HE}a<^syPBBQTFu%%f>ToI?V+1k@}S1NILR1zFwoRtw+HI5Ta@j|H^A7A^VC?UiZnA!g78v1k z_L3npH@qOXhos>HO8Py(Y>ZrxJ5&NQnFlr< z&fzisCAl^HB7$!s{(8V~1F->Q9grq0L1#iz4yXSV=ml{yNU;#-L);2-vk;d-ybZDu zIDP_zSN{h79*QTI{OaEZk#33D-!`|B$29;?@ZYyuw6fe$^%%1%p?WMo@FT`l_SP1Z z-(@+vuuzWkxcu%((SMZdA1}Cay(~vp8rrs?2mw>Bm*wb+!^1};ds6{(?C@ndkHo0T zWk)4@ML@NFGqErtr`P$1QMn1YQUWh(PThW^0u z$=)o$96>zJ1b%x0Z&kn?L41`7oSnn;4KPO#k2isv2zXNhwQ5f=ftk6<-d_@^N6}Br z(OLfqd5kRpGwYvZIPL8l-I?Gwq&oX&=LQS$-;rOPPj4sSklY|+?FC8Rx|Pi1&6&SB z_RQakL9$K5vhl)l7-!_zGk=HJ;Eb7^A=VHvd**MBp80!rJ}+3H#YMJS)l(gw_rOzd zHkpj3xjA}d=VG`P0U6~NCV5?mwP*h3=#iZpiFpkOueN&Ry(#^cyh(I?Fv3RoUN#E+ zc{yoUphUaTuz*GYm|dx{mXUoti$#6!{2X%vXG@rm6ag<|{*WYZlLhp|MfriBG%c*|K3jPNV&;i2r4&d*FuTvpQ1Av|`=!AHaS@Ed2*Y!(n@^s>G>eZV`rLE7OpWxaJ_%$F}wNLhr0@8#pXhq0{P=kQh`4Ho+ zo_6x2_^rWaP(Z|eaLfaOlOa9=*#>kt17fBXImAeK!I=d5MakYjaCqK%iy=2$Z=QW^ z%Twcs>fcFjUJ%w5{AmGybHFQ>+`B3MHzLgT0zILs}``%mUHeNKerWa!%w zxE0X)@C?XG(GWYr8j^GVw!ka(7p1X(Y`9d>?`=3uG*)V@$>GK^Itj}k_O8-6q&e$} z%1_&R$|Rb8#lJbnoT&Uc);|XHMCH6<-e-WGs5}B>7?39XdZO~fP)h(kQTeT?-d7Os zPE`Ji=p7;?fqJ5HixTEpfS#y)FUV{l4DG|SCn~E?jTCUkcKVuAdH0#_VQWt1)s9jE z?_6i92rEGsk%^CTQX0dnsi(UXJv_noZOUFq(;l5Mj6_H@TMx#(p`qB zR`7psSl4P5dN0|51%2EA)bGowbW{fzEU z0Nuzdv1M7^b66dl!st}Gl0qcq9cRK_Pi)|%&448%&^+*--c@_z?WDJM$- zN~0ns*hNSgR1pxLVWqw#d-lEkgbm^xGEsDFZrDl`Nx@D*WHR6-OE>enWyDWK7+dGo zo-K@Woaj=R76bk|h%Z3418Kq*Y$v2ihh(n-aLg8~Vj62(|oKX1Ah3TGM~_q zu__R*OwcTeG-WOgbdt5e^4$e!?v)$Nau%LL@+m+qIKC8bCVY{F<4<7=1PGT@v0xhL zN&FjNtDomhqGR*l$*DczIsR7=H4Mp%0KW&sQjkS}zTq#nLcZs)sK&ogk?NtKa>3;n zgnk0N%o?bfZ_Azoo-CGSMg12ms{1WrY0xRzs|WZ^Axc1sfZzm(3qS?{v4^beCY&FK zV9gYov>y7>@M#wbN!G^)Ox7z0NmjcA$wQdb@))WV#la-cwUV-^dy-0W zL&Y=}Y2?S^Olol9YldL?&pv)h-}nPsImk>rR*@jN;{T0g{PpR^x-8R#Us*yD@b4_H zKXBoASsz@$2)T<{1n|eb=oWXn7V|_J6Lm*FN)}^7(#$-^c&`c)Vuz+Iy|F_t|Hk zeOY^*eSQGWxYMJnbCP$4hMum3C5L7PT|kbQHGDohzkjf5TYlc&`lyQ#Ll+xoqk3m-MX4i`ZS=MVxA{03txY> zVe|y7j{$yJV=QN>*&IMqssCD4@-j=6UMYIhh`2>9NOxa(?7y@q3`C46$aOR>VE^_kGnZZcl%tf`8YAzbp zj|B{H=A!pq?r##YNFvo`{DaCSGNCW%&%zQoBhZJA^Hw6JNTfarA62Rm=;{HP!NtHC zfj)MeW&|qkYDS>0T@%MlaW&R_J&ub9zvFE`Usamzr*8w>&sUXZ`x)qMKl7W1!L4t5 z+t2Dswf$Ut3_C(#w<%XS?bvknch~FQ_VY`n+J3%=>s!!#(e`9dsW& z0MVVMCw(Z_x$#U(U=E3ba6@HkBuaD+c?g0B0cZQU$rv*NAF?LGu3)9J{hR~ye?%Z? zKEFj6oco4fE^Vna+t2**I*5OFrMoKrN~V8SrnX3?GKkMYekO?C-m1j1xXb#+1Z8no zjCvWP&GxfEPKZrySM7iGwx6F(NUr^$SSW~Iv>djw{md6dVQKwtjx6~z;u1IG%EHx^ zT^>Y}F7w}`wC{qHr080I1JuvJY(IOOY(~&SWWTFy+>3EYZ9i>~V>Aj9y1`Wr)b=xyz;KWfKDGVKgSsE6 z?PsFt$=8O*_g=|UZ9i+^_zI})C-3;opgnN59}{U{`{_e!FJQKxckFpdv;BN4R}e8CHd|_B_bq#jw=M z;^nzGB`v;vTKq*8FB8LyELY*5ULT+Ak~RuC3)BlXim<|^cMHF+bQY+c2C%p61dc6`dtTBt(V1aYJG?6qybS27#q(ta)h*K;?U$1NKFC^NdL)D9 zXpmdXt%(k>TaccyTQ7MDmdt1jOS>j+@Hy{#GOJ;rrVXzl3Vf)&J@@h2=_GgufoRZH zx#`*|tGAU+ULSi>%f|G3hRs2OtaB_`rYGOJqUR*)rzrn+RO%U)kK5P$W&qQXJ1U)H zZNXwc^}VBVTK&}bPB%$#A7Xu`k|Wc1>W^WxZM}uco z>U7l2q;GKQf0kZYIxF#;rO<|fk;yc;a2L}~UyB=58U4pc=<9LERz`;pF%ErAu5V=& zoM{p2M0{Cg;$R=K6Snv8ips=X)6u+SDW5K*a@=R=+E(gobftrNq=3Go^@dd@#teAF z_Lb44wG0IDJ6dnU_&U&cv@&Hz3iKVVg9-E&LcWhRmB5uCC0g_yty-vefxe^VbHPi3 zbl%ZAaS55|J6aNwDox+_Xpt^WJSxPOB6*HAul{&DlDBlF`^M!R zA$eC;MuXnBu5=o@rU30q4~Y3{;EOx4H%Na4L<_8K`z{l+nB{P|N%B^dt&*A7ehv3t+9QKB%8;F)|l>;5M<#1x0LkW^$x5}u)2X+k?AUP7~HJlpfP?es; zBcwklIc(l42knS6yDSQVKVr!ll0)yx?0Y{Xhe0HLhvaIYZ$iaHuk;jo6ROiN<{}^^ z3KBzzIR$DE(AS}EAuvmbaipvx@D0#!Sah&L;SPu-uR#6kuWj$MsTrWxwrk9`KK<{ zn)S07`^K89Me|P1>9XU0GJ_7lwWnC?{B*4+k$yZ#e%e4QH(Fj`>Tg0A1P}^OsEkhj znBFITX=xUc*8zQL={W)mgpik(HWBzm2zhC#WH=8ANQoAGb7>gV5TI`^-AkZG2zhg9 zBY~fVkT;i#&tV1ywEE79ub|oIbZh%W(>}85I}4UGfL`c1FnAKHV~AV2>K(oskr z0dy8KBhJBx@{~F4I!3{J9*FKVUf%(Xcbt0PvaKY1L5`A!11h74p{)MC-GqW0f!?>5 z2|Oo++_&vUaGQYMw<-cBNQ7w7`!)~iexUd5I|5$`A@{BO$jqP&=zW_=U;@zEZD)nS zJ!84vw?3cPeR~m>XMx_gU1GMru*LW7chWb4Pz5HE5mbxjeWQE5=JNAc1p?Jv z8f%`Pu6a1=XMt$Gr8lTaeXhF28PrJz`?=@pK7{V_%J+$tH~S*3*egl@LX_XJmGZIf zHYK03u~c3ai#AwyC$EaR*Tm#*>IDCMOA3M>=nv1RO!VVc>IA>_`MBBwH^Cokj93bV zacE`YN@0`UmBq%;1x#bYh-mss6W<9BXo|r$_PDs;VUE5koL6^?}$NpwGsNM_iv2oTTRNE za(7N5J>XOg*60pD!aZS(c(mz!mdK< zYpKtrBJvx9z@#;{ho5idnHDlur97pL!7-cH?~3zZ}B^G6Drj7CA6L= z@wAi2?0V9T8A80uFejCWiOB^E0vL!5692m#A@)v^4v+}6DF47$_~$6ASEe@X2eungjo?J z+Cj`2%|0w>+XW&qbN#rs-88UyT-)9ns2<<;XboIBzU|2xm@&TX*&3KVJ~5iWAr~|G z2Z@Ogt1e-V4ieWwY#M`W9!T5{aqXpz(=g;4khr zwC(~i>?b42A^Q51eISJBZ|a^bs9>lfa~eL zj#=kRj@wm4=lL9`z%&sgho|L;i$8^~gLm9oZvI6OOW}DD=t3^}gS$3nIk%v%eMRJJ;zMyJwvhW8=2bp} zL2(8?v`q#%Q?MZb`Ke>bFp~*_5mZo^U(s?tcTOEcO5iI1>KHPDzz~oUHgybH1GNGa zj5if`AZX^OWNM>p5at*nUk`mH&S}2n)UBfB11rc$z8-q`RhhwoK))V(D}h-;$k#&? zSMyjyq(nx)9@>wX!-0N1^bP{IfUIv#xqLme1hqQ$4y>{9bHLx0%zNU;xKy`kpx<|6 zXckY{WR^XX^6}8*N^AYP-T$W%V%WMy(Uq=9NUb z@;xhZ>g390UhyM^{~jd!Sofmy3hfn2W2wAbk=m;wr&XOvb)L!|7D!fZBXy2R(P4?y z(G@xUz0_bNP6p8;E3fZMWZ|nT>q&8z)gs)#BKu(xmi5)62+jjK9lYB3c&i7#c%r$M z^fe&4G`;I^s_%+b*NN%@71=o}O?9VftTTbCo*S!fc3Yb2Q%D~Kl8d)hy(m`Q1Cj8U zitNE&^-YM(@~U5pRgXwl{UPZ~MD;7%sy^3701Q;3dSFHNJ6?6}HIx{*RfmakI+%t0 zos#%=0R8K9g)@bov{SKY`o%YGI5l3S$wMQFviR?)G2N>Brwx?>L>t1A;Cx9}8{| zgU(;`654$b@k?ljn-;!@L3((3Md})KXtO>X(F1|Dy&4;#*)@hQuEsf}&j!(BmTu3D z`#7XM<3110q?J6bs7SpddB`)q4B3xFzILnUPF5&chgjic4>F+W(t*gEMD>2F)&3W6 zXhyTGB!1&kj=w;_y@po5ajE-=LoI`hz=!;(5MEi)^fa=pugzvNu=4>oOPCc)=GAab zS6AfR4!2%YH<-#nv@oqTyS~qaZ#QASbR@!4D{_{5;gJXq7vYDt5~de+y~QIY90b)O zJgp+9+iJUG4K|j(BhpnbCjBi@J-nf6 zF(b9GnxZ2T)pu89U%!SM7n_lyYZ(!Nnj;DbbQVI)5km-^CWM%gY6#2$Dbb?lh~-er zfSMy(UB`SMs5zo9fy0FmGtyNACIM%Kv%)atL=9%7kG`>+^C~QhfYxAn%+~DAv>N=I z^erHHQG?4=&HI`N8|8>#j;Q1+^+D}^J@a&+nh%IIk4V>i9_i8nKf^;;=7bA(!rPP6ei2=eaYHr-Z{z4v$Nx2gRs z)=xlhQy&67g^=4cp1>F(n~HD1rU&#kokidbA>=mQMc{Uz zm3gTZhNGQP!)+S#tySh1uzU)%GB1nSs$q+tp&f3d`vu9BX}zAAVW*l1&Yz-r-)Onl zd^8eA0M$G*)?Ama`D)T9gJ@}*X1Psl1KVx7CC;GP-SxNWHH2RB%4=ffJz$B8{SWDX zi1N3$QtoflfzaGe`>MPq*2bK_v(WLYzq81dtNm#CgO_g}M?% zubH0Me3NSy8@2ZI!4<%MU9Mm}nveXX?-`e-K)iwcD?t4as;sPG;6rg2eMvc`N=rfXvV+0vSn>HN%??uZzt*A&2`_6 z=JV0=#WFr0y?$JfHN|>iv9p|J%&v^ghoe%vweeA?J*)s$`+jMk887nV+W)bl)r06u zd%M7|_F1^zL;Y^4NaU`wNAX4K_gQ}*w!|~k9`MC&`ghVd%6({OZN9;M=pv@65%5PF zXj@N1?0qw)TcG3JhbDt#q~!ffMfPPr@0Z|t9%vg_7C%qHy=i&>LHchX8Kyl?HcGEI z5w<4~37@UV{=%!SyoIv}fU4dYtFB5{eJ<%|gXC{%J*uhB-QeenGeq@s71`Z?uo}A` zk$b%A=ElcXQ@ZM}NM9kUf7n)ar&wgYsD8d8`)04Y-JHyzHPBLbiTU#GORJFMNbe7# zuhLXY`*z!hQ_l{93X@C)eUS_oRU~))k-|Su(sU%Jf$&j?g#?}!;vR^v2&@$1CWzcy z>2Cz0An_(KWl$v`@e#yv1db7+4q_~UON3YlaR-6h0o5qehTE(p%%h|vODeKo{V9Ds zdK1=HfsRKRw`B%@3nAmteh_;B9gjv67zI+IMaQGZpdJP~9{ot*TOni@W8d4cs{kF3 zE+TL~(D7(tT%q$(!+4aUEN*cL%RHd<{zA-F2V49QtR;O7NFLdsA*$v#O@!xbu8v1% zc+H(^SRMe?yg1g}1GZT6DWneq$^9E>*7?HHSn~+cZ1aVi;GX5RE|0a=q-*_<^d%rF zOVjH5LG8$NlXi{CVvR*M{IDYX_@AkhL5pYtcTj4eo3w`z=p#fgQYI6)TnO2ueT~3N zASDVCLx}kY>JOlsw0qvkNCtG1_Iv{805ni?u&26GBUh~d(@me)d&AY^!XQXQ$MEY?cYLcc|>P-i5 zy(xup28$#E+pC?0&`htqELOfgUHKBy-x1}Vwo|G{BpVx-_=q_TZDI{R6l?f`PSR^AK)Q=)*mWBXWw8byiZy&$k=@}JE5p%9 zA0-<0X`tbU7dc|fVwn9|sC(dk;Y$_$#)yXYw3Z8z9tFbY5VsMSBSaR&>jYjEVhh@S zB(M$y$@$iq>j8}yTl9YNHh)=$^l?r2AuDeCBUlHF$}+z;>o{alf#VieT-)AAln=Rh0VX>oh# z3t!xfk0SjrklZ`1GdI;EW7XB7`j?8tvtIQSL?(LG7sjgRr>lO2^cO{SpKVo7j8)f( z>J1f%Rw@rwg#vn_YDW=>-3y-RM~-PW+wJ1?&r_cGkQEKhc&Myznd_eZ=eBEN8s z%mm#_1iP2rDtneMaRI}@_AB;OxhF-g{{y@l02)0i+jgDHbVKv-hgdWLcRIx$WqLZr zSr0S80Pb~zE{^m5`Iv)&^Smo?kBKL8TPrS~_j=*^w?&~tT z^9?2*zH}c2bV_Rc3K}Tw|6HNlqY^#?HY>Puzjg4YFC#< zwkyk`vsSv4cC|E?aCupD#J9%!crSs=%A%qjx8LkvqqwuIg*3fg7vshbnwO9|?>GM%#XV&?l6pQV z=K}3aCVua-VXFb&5Efl7%_IGOkbHKnOLtZ$UEy77A|c=PaEbA9;jXfrRb;0tyw!+* z1>COG1Y_k*r>%wVCQmV(HhPczKtQ>tgu#&C{R)YpylQDOtt?T)o3oCtb|@WW*}5f`JvzazL2B!{L62U$x^LX4pMz>B&} zR(5>Ty54p=q1t}+w$mr<3e0v|FS7L^Ud?MM$V3#o7ivB&%a)c{PKsP>p zE-ZnsWER?dm-bu8L_Js~LN`9A!8`@n#^+!wSQwOuNUP`~M0Dfx4VYd5y775d%;rO) zL4NVZ=RffNrHXaqbGS+HRbdOody+du%Y7!hzK_)bXeQ^ynfTB)nH&P|L4dDVy6%AD+1ve5XTYdFGMeh>j+F2Vo!)A z1l|ED(UurVOwNZqBcN~$XW{zXa^jHQ8UEyT+NtB8WPAf$yXJWd;-?TL~XE>RKtWdzB3tZAwGAY zzr1#NS{t9jycB3{{6pX`&{%3iYoXIeID!DJg~JFO0#daUvV+t@n{oV^VXDzfPn6fW z@d;AZH<5B4%;$*obchEC%oSjj)>&(LKmoJ(_E&GHsU> zUB5?@EcR19L*kf_PeSq2jg(uhaQ zy}I!EvZ(#vT$jxKiV!FOx}}&j&JYW%t8IVEeB3GbhxcfZY+)QW;K(9oH;dvV9SgOw z(uOaTMKgVtqY=N*XPIxDVc&42kBqbQp?FL2#j+^#AG^wz5ntr9 z>>p?8L)&aAu7P*8WO;IfEOq+-q}{DX!3Y^NUM-8x_SrQ4gh>d{%Jh7>fe$sY+K8{L z6y9Qxe8qHHWr{DgkIIfixZ~+BTvC>OBohr?vLB210H90unCOLqn2;s=SXeFri6Ibo z5V&24^B`U)@Tw5wAl4H24(K-r)>xs!z=v7~?#Igglz;+A18TOE?K_~?ye<~;q3um1 zzUE4J%R%zD2G^`P2H(0?$CzWG9es{%qGdkE6ObP0bBv4;Q>2AjY@OqHcrOJ}3*)eP zgnRnb;de(%;W$+b#Tna5|85lA=`(F-Od+2RbS2&<)3@M#Lo&@b4xgz^KIqwHI4H3s zPScQ*$5E z{mlD{a`lyL^l4`BD_ZrLUGcRm7e{r>BKOI7Y$ojbHo&(Q==JSrCCCn{;ft?tz-O63 zKfryHe$H!a9LyJOQ_8bX_1eb6brDc)p08<;cSD-Cm85?GlDns0uTy=BP2-ydRfvRF zm1n==Rk!<`@g1n@@9lzUI_avcX;HSJnrWlHUHA&txksPirPacs;RfwVZ zE+p>&YA9Yz;2j~vQ2ZN#jY5c_c<1H3pa4>$Kn=wQLiGk}C_bCOSwe`Rcm{!Mgb+jV zlLQ_IRHF=ly=@(amFY%GGOIl2Dk+IHiRExD15x=_*C94DwPFr7VJy@ld|P>Thb)A} zirMN5R#ZT{#C`;h6hgYh83d*ZAzk8o1l|TIQIHryO!7;b3($V?00R37A^qZ50;7Ri zF|W3)!=MUD=?f!kOHaY_7|>fZBW9ZcTilk`lfDil$E97GSut-m5l&1J&26GZUUQcf zyp|7C^X;+b_34@ilU@a)tJ5^g&9Ap&J`iV+H@n`7c^g7Ed*zSB%KO3+7ke4$ABpnW zTPc@2!Y^0se{We@MjYzyQkf{0_ZuTOsQn@iX{uw$0BZm1PN1t0S)^1EI9Uj>|6NI7 z5(ttnS({b+Uw12@+W$}~S7`RX+0OoF8*W#Q53+nSk&g3oWtKyR#8qy*b)=Z}lAEl1 z)lJ2ob`eT6N!xC8o%YjaW@;A9znq5Gvn)|S*Q4|Hc@*|RDX`Al-!w)%7KHK0vZg(A zV3c|LCot6lovC(S$+89Ly!{daqlA!o`?~~Q7eeOkd8;^A38X}u&f7188VhvZ?sLlu ze8_5E=Ix(L31!}13;TOO=k1#a{0iK>{R1m*5cIerlzDr35+RwlxBZHS4|Lw{+4u;Q z3CQy-KR<8p3G4oVZFQNqFS7M>7|8bu{ak%041b|34r;k1%aynPnkxq> zQBXfuUu=qlV1y{{+_;NWugukl!+a*tx%x8%o)T%{(z*I3sP#a+ho#^NblaqPAw7__$nY6bp&ClmcrFvZJ`J%p2kX?9mSz?&vCuWr~ zw4s!)p|t~jRE85cO9**X z?k8}M5Yk{)6IcmSqD>!_4&Tyzfv!+TuXNYIccw|FrMF9wnY8rdVL47%Wp?J-GUCwI zEqxrUV}Y$u&$Qt@2z+QalH})G{arBM0rX7s}#v zWUSwZ+B)^p`2Uh?kjB3cGTnhT{!s+Z1KRFyA#fwenqZ2g?S6|~gZ3LuvsAxE)#iSV zMfxVKYj3@GW34u6fO79PmNm_6V)t$-nSBWKa$9_lxe4gKJBq+zLdddkMH zYd3!~JQIQ5e9x8<_|Voj{~=f(5VfwG3+#EKX^CDlNxTok5}-Bk8-b0W{)V?(M|ME3 zycdClNp0OIt2z)56n!m~td&og5;%X-9wOB+Y`%$EdiJ^uzU$Smp5A=QmaTh4T+OMN>cR9$~jQ8 zMbC*gn%kL`axlperU)NDQPiz`yIq>1NRFbcLu5J7HxAnW$jLY$C2ab}!8oW(K*2y$ z(E>rKK_*qnJJ-6N#NIfNUZcCQacGz1)U`Z1OmdPMS%8|SfUA+`<7=yx1yS$vXo4_G zjjVv_bCBF%cR@R8eRX1KEEP;g>eTY>*7^%+{S%9DpcisHfulf5*z`hbq22@q>rBOR zyAYo50hk(H}%_ zrb)R6&TPPbzbGs4q4@E6q`cJ#6s0+FU12$~%8{HFmM6ZKoMaYo2f0iGIt%c8*+H|J zX|sT_zc8BwSp#iGB6a=|8l*&GkNkG4QmQ>t*SJ4h&e=f~8pCJG6NfjqoWDimGN3tM zV|?ttT$`5j%^Ucn7>Mq)bjewAmC?iv`tvP?56vPOo>sQqA={IK4Ek%3{0eBd+3{Bf zL7)T2DFg-yAp^%P1a1^U29Bi!J_ISzrUS=z8*z06I&k>hl7SCNLFC84@rPWR3>=5S zehAQkVW2|&Nl{meY%q%GgZFvd zZ0h9Z4=IZ#Nl~PuXz?2p1rUu$8xMTbQQ>dmmeUN&Pk3fo^okcg0>MK>xN0k5dE~WU z`@w{>0w0Q>zma7-u18VY^XH#}RM10mdbT{#uO-El=WjZ>Tn_Xp_|=r+5(r;B3vam@ zcMuTG*s3(TXx8V<&+~JGYL?sK6Xl5~d=7(Iuxb?cON_lV$m(d({c-cX z*+u&uR5^z#>rhLVH~yYCb^3OSTk7-Dd)5+T5toq9;~b^&(jjGej{xySX|jV}1WTpZ z`}bc?iOT9@_d`Su+E&D@4BNV}WZhLDs@Fy*F*E_uq=r)NYIv z<-=`7@Lj&(zxXa6o+jCtn&IZ9U-y5%hzrvM`}|)7U$7oQ$~x}iq4o*$`?pxW4o$*;GGb3mXx@x%kW~ zRTrNN|G+K*oQuy5rRofHz@M0?fOGMgU8;^d?-KF0MCt(tH@V2@FFdIvQV%+~*+o7| zajv4Bs&oQ@AD$!>Sy=hB9|3on~SIWeBhHk4-1hF5#h^@y(n z+5>q$&ftSD?&G>7*jfZp&5o{QelFo=D>CA|X*nc`sMv`tWuiZa>~02bw)nUSWd_x!QnrUn6T^g2 z%JvFOFM?!cTG`w%^_oeAfe)cif8m1C#O*$-Kal=C&g$(rtND`Ev!#iTeO9|+hU)|Ez|h$6W|mmo44xcAX7HO7n}koNgQ>2^KZ!6>W4J7BsM=%VU#0!u+k z*mP0VGAjzU0|i%_ic$pSa>S|}wGQ=$+3HZ*X z(YKni{b0l(A$~Msh!8&+p{|(gOM35^N2zs0_}NOJr`7yoB~bUs4KAg{)7PM&W2v1) zGodum;*5icIf9tCst6oVn$zM?i5W$b9!WE)G-1cdbSljms;h{+8z;gs(N*;PQP$qY zIgejB=j&2G5Kk;QR;qMo+Sng7MfXYe$tC(p_7{^Jr3Tz5*(aCiC)uaxM8WyMeUg20 zNe>bKs1a5a&`59KRCo2w85ZJ`BEKhMnMCRhy~ahpoEru6f%{JTwIzCP&DM|}F+(0aYAuJfC53MFtu>nvBHsqLcRA0pk*dV}M%sl$yf%XzTe z1>ASqmz3Cd+TSTjbRO+$%YCPPaY^FK3oYUS`oi#&`iSN|HUz=q-5Fhb&nD%rk{uo` zmp9F4jBoVp0YuzgqTgxn(mV?CK=b*(;*Yc&WA)kBllpXtey9CDQf>mfJ$Zr4<`j36 zf~RiPGtZJ|WJ*?wRP&SC}n&GwItHw=6z-p_lcq?3LgcO1N9fqowME&_K5A>V9| z3HdzkTg1L0De`&Tp9uT_^qcMNwvU3HfPS;R4}qQ_%C*Xf-*Rm5soX8`E06th68&Og zU|60J9-osq*^a#83iZ?PC)s7N0lbkKd9XSxh(}1qsJzqxPL-Fu#YxgH$ zeGH&jK4gBrDaN@-6fY=A?Lxilx68kPYbnrgmlwB;f<1tKyZj~s*9jrtE?-Arl@Rjn z@>5$y!62aDE{_$+x62n2`?#dYH_~_5fguR!hs@t6@CMK?wEOa81tps(4_|2iRxVV& z(0;&<94H3#3+=-Q3nJLa(@P{CxBjM`_@s= z2Iy6uK;T#*?uYGO0(S}_SGkJ7av|g@i`zs&KG3U-706YdOYGT_B422Kl)!^PztHZ> zlNr=Vd43<%EUbBo`2gu#L_ogKzSmAs&=u$x+9wgXObGcx`^yBL6GFbw-n1>(4fG4` zM-ezoh<>EZBycrI)o!9z<`Gi|^%>AFw3oJ{+(5t3ekFl%p#BT(!Ee0FLM7=J+W#bJ zi}0>R%dYKtFoAxdy^6pIKxbavt(tL|MOwblK3b|-W+)HC^AHHKh8oi^H$=e zJkR3gZHgePwNdhg_NVH(qQ@-Wf1zDJ8=E<^MqHMU&YU?{{__y|CrUbnXr47||Alsy z$=VPO7#HlKFWBe?dsvbY4wR0PXHJ&k?pd2;4=yc7F6sV~mSg0RkZ0{fF6Vuq&zk4U z2z+SkXKgdAo1_NZS1zuL70(dG^GaH((smtCC=lbj=iyVT#=W)D17Pg|d~u(QwJs8^ zFP5}uPe-eo&xGv^pkHhEe4OVieAXRICHX4Vrv1#jri>}lW|&?oX>pNP_9$GB04=8H zV^R8FiunnwAE{#f!pFz4;u2B(N=XYX;U94P?v;8TtablIXrD~Q*FdzF%>eq5zN%|MUBa`QwjfZo!;E8kHX=h&92FbS? z=9(#H06(ZU3f9ZjEG^0XpoIIonxtcpIU0n^Ag&`YU5Ixe-Y2kFh!-F_?m~|s5Cw@} zh$-zD1sy?$e;^W#J0yZ%q22|F))3cpVnP8DyFq+IpiYQ#i0->ZK^bV<10peV!ML_Z zXkgK}wkK%d&2fn{3CxFQ4oHlGxN-L=mQkg4bW*>^5&NEA+VKK9Ijr+#TGk!9zNL|+Fo#htLl#jc?wgS+q4<3UqSLY8wIsPQvbnmCdK)ZBDG&>&M8Gm4O+x&@5M~%f%*@gLtvN? zy-0b8z+553fAD((-++`TNDLunSLRuHAaNeV$plUiVjRS50@nleAH2u1ruRe=|H0b} z$yrwOAHeb+(1!a!%(fo3xVw|KpA^)kUz5}PL|hel^tkvB269cJ`9L6*rJ5JUn)|{Q zYpy1JEQsDp(=4+Mv6Q)^Y+j8ssFnIRJSi`}kIr|q|RsV?eI?-_aHX6>1 zHTY1h;gHgt30^~sa;!=qIWk>Ca)p0hZ{)O-eXW|s3-Vb6c76&@w&*il6itiVv?MZs1qEMP`sLfCQ__MAtARWIEj4=0QpI4U#;SuK^Tw)w z**4*(u3#Q1VCXV;FK!3E9B!G5k3ld(2wCRFge-Gs6MKWC$TIf@ z0?z?m=B^{~y%2jN)4YQBCO}kWMgIS}%*{H;CS-EypHSwlE+1Rn;QwMbn_@TA+08!V zX$>0B6~7Hlg9%iM;#zBXyvY%6r2-u^83#7tYy;nxpp`pe*`% zzVMi%M~+rfKg<^naG&Hm$k}7eesZwOfyOQy0 zNStwtCf_&_c4sbZ@5-I6=E6K9)Lgi8N$(#zc>CNg>Grvf>Gru@%|53GM3wSQAuGp03#%wc0@o&W`wY1d2@h(tHOXGbR9DrI{1`-$`gjiZ`AaIQk zVrlu4z-A#XgNPM~rDdP}@Kgh8(YcJkXd%Sxvh)5tHbCu3zARb6dMOL`r0!k0NUP!uk;C30n5RB;(72HP1@M zgRH;Uwsa}HV?)Y;W<-tn`Md60=e+x6HVr zgN@6ZmHZ)QOeysBd^IXfGs`R$8?CZt?QKdbAU35-&88%8!uK*yCo_fZW(k24m=aE~7F_hz_-UtIasrnCrVM55HDkfx7buFrW=^}Mu9nc4Uu z2fsqOxh+a^lZ-6k_DmHPQOpvg3!CoLy1aTdKt3lhnA>;(3 z#K8nM5wl)cj)6GzU@8bCPJ_6Uz-^%Qxe&AL7PKA>;af&Qp2gNu-SXI~6*nx^wL$gx zAev|C@pQTB5kFmKzS!sA=Zkb4XINE>+yPvx&NcsEWRv}@)6ltQNeAB4mQlE}D-|3D zUCp8@r}!z(`GsR;0@mgb4D?ik`zrAHh1X=!sl9X< zM~8#$Co$-wZ1uiyUVL~ITmal`W>lfhW>006hic%h4Yr!T_~ zXrvxQ7rDs3{i9$P(CF;55FhO#4?KoVHsCynE_RU*9E-sUG}US07#EqCxon*C9vbT+ zUObMq5^&x_mzwB_>@)y(K+rfZS~t#l4vjBVf1p_>N5Q$kc@9+<>Wr&fRTS(D+(AJT zoalL{GNT6WprFfKkaBHk~`S$dL1e9gcezFw4iZkR>XiC@Cq#nCP&Tg3YliMWY~AugiDKj#v$cX3X; z6E7lgLUB&*X~wEY7TsPPb+YW5*B;1mDZQBT=HZMI-d$*4hF(875y-FUoqaXhz6`zD zqMO$plo7mq0HaCneA4eNZ1E3|)Pp0K|A5^F{>Nq4UUdY)Q$65pFE#x{p?;92?MSR# zp!xhmGJ-**x`S+QDwNe zV^#wB((x1Znv%5^ugxrH5~(*>wX(fMLl5sMbRP-c?tID!!n@!ZLf|wZ1 z!ml3*&KyPQfqo?Tk@z;vC*6M}_yCgk0x5~qj|9(!x((<@f;(Km$PJ=Z)_eGm1Yc-X z-n?&Dwp32w+0w(rS{CVHVv`XW4x0Dqo)L8E?HhIHqK3zAeSM<49k^S<7j`Mi3ECGKUuBJ}H+e4SNU@ zg8_4VD4z*0e+lDRMY+m!H4IaPiDS%qX9P8Ue0`oZc?0zjPCAja@D>S)4{hvrWJC8JRQZ>jr*U z-)S`OyC)ZTpudP~x4MWL8+5{;2EOq6qTH77>P2LZrV@ZQin%dg9ei=4*pKwRKyu)z zt}?7q++gh1D15onJ3(F6QOULYW(2Pv?wjEA;7HK3(m6Z7@xnO6G5#W-rgll*6BgVMim?Eib|^<9m*Hnd{J z*pE`w6s3+o$m(!ka@Z4SDISRVM!*->;YFmM50Y0kD21wi*+hb%MpWNXlzPIeeiV^; zUiBNX>e_VGYe`=ts^@O2`m( zs{YPIn7E7TyNXihd)2ofGRv#}C00EnUG^}x;5zyjq7vK8z>3LjC`UN2QV_F`JTe5dq5sTzWtGcJC@xVi<8QHsh6p=@O z?p=OLV5tyt6iPUjwj_k?UG4#~J4lHF-NQT*>TsZYnCBB1DTM4{&L(h!5VD8)Jb`C{ z*f+Sy1->B$BWSnb{G!|mQWELQR>4&#oVwYWu-PU3l`t+W%6(cGWwSGNDdz)&8yLWcXRsvhx z`1+H66iDu5{h#Z0RPzOKRaA-QHqkd;^E4!;c+Ho@nrEbIeuMN^L~~^W&3e}J6|v?; zqSE!<%ByUik3*b={J0msQ1Rbl z+XfnBleWLbgmI{Q;C|t~MaNf(hW50ARY=zX-K1?a0aYN(BBhK#i4d|$djf%hfY-LI zlh8w6CfNfa+naMx>3anoK*i;ZW1cs=4NhzsS-yeGw&ViX^^B~{nbM6Uzpy%!G|YAT zuqryjkCK_i4c7x#pXSGzYWTve;?x1~YK=^wke32&uAYwv3ck3xK1=%3Ao|;yhcs84 z)nWs^+_Y~q+*}r~82n&4qEAM!?npma?pv&bGjtS$?ek92+>{WdHSyCEl2uC7uIM9Z0A%RgsWRY?kfjL4*LwKFQs~|`&v@6qw zP-b^e8p2(ubhW9?VB6DvdZj%u&pT$<2(nI2YXnP4afhfe-Hygsik!LUZ&ma8y)%My zj`FQ!OmV{r_7>}4IoSuk@Y3R(UhrxwS<4lC2cmz{W^Z0?^s7bw?+rk|aJi?=xOwHc z8~N-|6m>qDRakt`Yx65u^#MKTwJ(9gg^+_@uO~1=2s!9=8G(;LO0?)fuWgxx?+Emu zSDy>7|B%i>ui1UcL=SqE2tDXkocDE4F=!)4rJidAW9rSyfrDPF5YdBPXTUfW=w|Dv zn9YZB0{4p#dVLe#*MWWE@=}w?2zD^@Ez=ygw+y8*q58F25O2#tlRn&<;)RA8QbT>^Z)bgU}lz!Iehagb}v};@$ z7h?o`ao4zz^v6Lo=hUsP09RzHUuVG^O*RqKNFHAlMKAe08ePdUA7~z1;yh~8^XN@_ z4-idnm`B>n(3vN@+_8b}O%7icMVl@!^>bUwjoGlD=4SxU69gnKNhC zU&S+)hIw1^SXC5N`#g4?f`=H;t9a4)Sf{7waWd&AfMj+0JkD-Hta_2CUR@M@?p4o5 z+l2@l+TQN6J!J9B_F(?(Yz0^D5HGiC)ngfT46 zDfEoRFcm7JOj&L=jeIFc7#kJmoGy&go{xp8A4v8y!={_7iqzBb5L_ct-HTIqdZ}xX zm)mf3Us}o^P7+3%kZIiesf}R_Sd3H=2$CHvqB26!uadwSUtMo@i?fG%4f#m#AsU(*SA7{iI>R;7An>7fUc*Z6 zx!2Ga=_7$|+I?X%VcldxB)gZZ8i!qoz5|9^LD&Ie1%XdNsuq?+B{5~wcqtQT$GV%T zU=1SU^_x}EI=M7yh!fzs6eRC69<7ncOVr+|^Ec~e%~1MoTmkhVcQxVQqNe*(8THrl zEV>s0XP1519y{L1jzcCnx;T53RHH2U>Ja!+gfb5t76f0~e4CRW4y5!giaWg~i~~rD zu3=^dq70jg#oM2opSD^HaeaH^UEi9LyV<~`bF18wT)e#b`8_&qo>H)f#YY2e;*Bwj z8JGA9W?Ex^?RYE)BsZC}h+@iXBtce3OOuVklbmQyB5h+Z!YFoqCR6u+ITc|ala*=S zRG+QBoPvFPnVav|x%vLLeAcDw>8|85r+-1&2l#hd=t)hwP8t< z%iX_g^dH7GV-p2gbBvJcoFXzO9U(G7)-#qMb+y1}=>!>`7#9R{=?uw?)Gq&f`uBp zW*&rV3U?fUT|4dV@)0rfhzi;_&a98XpuP0IwCz%$!{u%^BxeV;@Wp-FTcp1PlEW?C z`ZQT^d)3LHStY8UFHW=@WUBM0vl$7r>+BJa_CDlK5s$MO4ex~@>X(*{JTNo~o`6G= zQBY$S!q<-^w=IQj^G-~#^8t|95;ePkBM|wNqRX>L(66#MAmb zHc!G-QQ}iCbvzRNL9{GQN^Ty{oolgv$Caa4?f%9S_W8xFvQBEyVtq?vzw1D9dagJz z6b5av_maz}x=eLls1C)20#PIb0L1;GeJ!l#N8?N7GCKZnQyue!1Eg+Wca>P@8o zBC228R`pJ?>RM6#baCQhueyYOqX1~B^J3M(VQHlvM*0wt{J4SYg2SyjT#GU{M7hBz z+20bxRjnXpxBrE7uKELj{64)j>)#wpgTYCU5dN2uDfzff44i{>1?%asGGF~u!sVxW zf8fgeaq18J$XS|vgRE$qso!j6{v$$UtA|O~eBIQ_*4Nj&8KE8}-HjNwD+=~BLY+nS z&QCjXU>{4-BM0_1LXRBSFJJvYvh~P;{Y^%X9Oz+edgMS)BlO6D1B}ok2YMONx0(|4 zHe!$veT*0)#DS(-j~qD2h_RA#aK1a|K%F@bF&TB_IMfJr;yBERxgvA85$e2ggc0hv zaikIIL41_uqmCMVEgwD2;AofPKJwJR(7dGw5qOP`Iee}lYBBXb0v8qJw0Mv4GMqWMlITj7a8wlb=+LVJCS-s{+0Q9h)vM34R<+PT^t_I-%jpjr>>)h zkKoD4*KhL#LB~SjP@!kN(7O_)d$&L5>)vh0elb&Kftr(oj-z7Dy$W<+)HEMhpv?r$ zlVhR73UpI4=y-D+b&ijEPNFokiwo3H*vXYU}S zv{~16c0Fs~?F0RVbDCY{-L5|Caip`O_ATbCV9pU7w&yPI$B zqVDFelFc)cUGg9bVT&Du{@?J>baUsOZyW`yq@j$)2FC_3EA;io3 zR{}o@Azt3G0`c-b{2pF!1L{rw0D;?t5MTB)?`0tZ)R*0tCoAZ|N0`NzJ@X98Bfjj* z;Q0ioFMDtwZ%sg?giU?fI}y_n*oDm~b9bE&d5a=^*)!$B+&KgOyOq zyHz7M2J%$HW2tp2=QO9d@u@% zL8?w_Mb1XJ3~C%uC-xTzED%DR*jqjXAE{CdZ4AhDJQ3CUX5GVE@ z2&@5Wk608}a}T7&iT!#s==yl?d2Bs`AZxQRi4*%nB+K-GSD2C+9FQVE=fr-WafuWA z2lZT0W9+2z^G@vQA*-hsvh2|l5;z&5|67hp7^50%)ZU9-CH|WiyPT3>UhMi7|G}kk z!;ve>$xrh&_i2g1hvF4ey|1}Gu=nIUEtx@$XxTBpKU` z4Mb7v{EjW@vFa81bPg>x&i|rld%G?w=ob_<$!~cYinMR4;x3&G^b7^h$5FAuXZ_Jc zk}sE==^XNRHf4#RhcGqIcgH+D1jk&j$n&trk*4Syl2@ssp!p)=i_fA%)#D9z&DY}% zc6%8AYM@T}?^|ac1oB1kuv31d^Y=SRzgc)>wfu?kUFci_#fEJ;@RVzh+H!QXyJVW{u!Xrf(Xgn05aoSWlXFiV% zNRGF3Eka~<=T^Y({YF1%@tT}n%~6z2eqmmI;>KazC~?I<0cHJwy5c`i;8`K${l>2d ztQ10A@nb?<@pB%<;Q;9Sje8TQ6ha*GXAzhQqPH#2*e=!J7$5&=sawAH#*h8;#nryh zyXEINxBR@aHat`5C;ViJPq-gSSd;0QH(Vp+!dnPV{Dj#a0iI9 z2vmZU$Rze7=Jh9dLk%PjgBboaJswC5gh)QaD6tUY42YcP*oJ);;yj35p2vCu+Kz`v z%&Z&NcB%%x9hbO?z_1q>6hY!%h=Ge3sX*d!h}&OcGZiEjL0tJdBQZ!UhDg3eH}xjO zXAq~n0~<)Jf%tGSul#_vze32-D~XW#>a-;o4M3s^#P0-t7GfueQ)_tz3AF7DAsgmx zD>YC(zU=`TxN>~rC<4*@+++9>Cqmr!0S_cdoCR^nN0>=K;zEejC%9UD3~@O`=T9*j zE`yi>(PlZ5EztT_h%1ZTW6}Cvh>tz-2t+l88~K$kfN1>^e;z0@-nSvTvTm1O>klC| z`IO}lk)^10>CpJO@u7GsG9o|wng7@*v4HYC1>CatNE3>J8a_N6o>-V@IUGjW3s?=) z=RhC0&#b&*upYj6&3@7sQE&`MPHXUt>8_PmofDL7MDoL97emgDLj0=y z?C~NlHT@oBzPLJ)E0_R)WJ_x-t~ZOC7`yGAOLkj%Tbu8Mn*8@MZU#3g z#5MWRH&O^OAsvA7{XjIrrUjCL)c1JmN(Jwc9EuPuAZyvC55)^^}O7Px9M#8^Kc~gj(iaM|=@bgWwKzyz~#$Ab2@}Q-u&q zU87aF$*qJCi{15KVTS~25X`eGQVZTJ%dMqk?Nd^5Xh&-aVjR@mKlmDZF!-PCg552P z$Orz9c0v7W!97;AAgGp#SeD=PQYu2tf?FuTCg9A1lI+Za!!6%5v*4Sig|B0Yme2AN zkBb($rxmMlDFVqpX|39A{%ne+){E4d{KR@MH3ErYAgW1wsQoSMBCGnm&0%oM6*TTL zh!0_12-G)YyF%B>xuoAwyCFY%^*q{0?3=Oa8eKRW7P&}Z%8KVh|5<+}4o+GdT zq(qDQW(42zJ`FMIo8fcG2SHn>;n-6(Ui`Z@AA$T89#rhH6fhLg=_>h;tH{(<;UNiX+f%knTC&iig zkngGEOg6*2Ni$L3j8o%Ge8_*B)B9$$`;HYU(5o00XW&EIWY8Pl1AzRx?9Xj%wj~Ts zIiFsuH$>cPEsQl)ksf9hl&DNoggg^KhG? zHgLaXvN%Xf9t#ViYkeM{Ap3#Oa6TSvzTqP`9Dko`N$VOgBRBFW*If@qV^ z;cz4m1bP)K;~dtf=WsjeH%Sh?8s?zuU!TWB>x*#>_=`MVD2R@}&}wQuvg>>vR~a80 zVDQB?)#V4?^Z?0+an_Nadp7hY+!?E`7S%5nL=Sn@gAu6$TKxNB)$`L;-$we)qI$u$ zs$Yy%*NJM5>&m{!O1%t`kG$$vW7W<6PAhfuA6YAavP(YZ7KQD3&kOg2*OVb zviFf}%P6TXxq5giV+0z4lcr|G49 zko5aN^erx9^7E6K3x$aKnD(t6qiuR0eT+^sX4dDt^B1lv$Zj*5E0M=&HCe2bY?h=| zhK!W5`>8JG(@i)CdWi6k1=){WjPRgE81;Ul#|G+RK8?UcA$pPW8-bsM5Et{4*0Wdv zDN&FZLd=a&*MY=&5bqOMEW|j7)XywEfjWXe6<6U1BylnSNs2A=%|5X71X_d7#%wjP z#jSHZ>0?0h%f0Jskg-(uk6(*xq*gSyiTcVliROh!JPB0u+p%UQ+Vz?@kp2^h-bmBz zE6ts!^--Kb36kE^yzmzsgMcdkG*(`fuKY~WPY2OQTPfEYPm_~EXsVXr@d0ZK#qL-46{PO*G(l%Qrh!oJ^oj5;c7(nr3I-KUUelRr9f4G zYkXl)o38p?($5yvnGJ4|mO8K-MH5J%dR#$jud#Nm_akzTR~^OozXZOx)L)UlLR9av zt?G8M>MBt^z92Qrt8TZE~#v+SEb#*~%y;nUGk!fD_ zUNPVLbk*;W{)VVNv7u^tL#Vfj@W5oEdO|_tOD?5Cg#YA@c(27-*BS{P>)c8X&Ol0p5Cgo`#!{^`0$fR-BysQ z8jqB8-%F5q2Wa=5+Dyj_wEI4UKp!Eb`@WjMk0WR4WEaEo7SM)qNzB$PN^5i3ThIxT^Bdef)qF)<6+IB4`%cO= ziRPY2>MjYxMxLsd(!P(a6#M5jS#u1&~E>mYf z_xcTQ;Z$RW;g~`B*s^a#lFPBm{_nY%Uml8rGj zz!CKVDX~18OX2wtB=;~Log_zpTBiT%h&m~*fclW?55gV=P2WUy{k1gxn+gCy7x6l1 zmYoqyzKr4jVu*MR{BB$~eMt|GD9CLGk3KNn5iJ8z4=a!ix7r-U^AXoa6P5Rq4@Zaw z_CKA6@QJaDmgIM7L{wz@?L}v|@JoBmxmf%tzOrYhgS*`I?Oz#O}pTVg2jD9wdID^QIByRx8 zjI^p@4>GdFygo^*j1X7bV<@dm1DUB6{B7|gT%0bYf?|y32C={h?6i+*`)Oc;wd|gl>g!> z+uYdPtWO5WzGjAH7v4g#?W99tb}g#(&bRr8SD%2}74TaXcpA!`A5fUcpJ*+<4@~<4 z9U`X1ru(X7+Timb>Gy%;qiF_2Q#~gZnSn@nOkrY@SG@+2m0tB7F<))E>b-)jpesne zwXN#;CPM4aLG{4G#7eJvG$Nybmioz9bqRd&H0?3c9~RXs8>*ICJSN^js1ntjA)PUa zZbY7$po=&)%^>}sX{uQ`EjH&-b$Ch*y)Kdfc! zAyF^wX5AoeazOI)^f8T{rLT{qyep;cMR0t}hVMuDvW>+#x<16(g+#Hac`UqAt4t5n z9|K$mQmKr5&P!dYlw;e?vkpV3s?og&sSzSsAx31CDE^l4ee$&E?0jcQ6tQ>t)+KnV zd196%LPjjNpk@|Gu2OzmjJ9;1jWleKq_1wCcvGaLbXFs=3dBB4D;;fnOl+PCy0%st zq^c`uMExfkP6ksbeztk6=qgqGD@uQqU|!1Cz$H=7y85x^{&t4!eEO0i1!3q@Bv6uWVsBl-~7GH0J?bWz-tfAk6ie*!1 zMx0&jf{OJ*xJz>vI@7y^HF#a5guOKPp^CJRT0QLS^%B+$bg{GOOIS0|B`(C7fv&Dl zGtjja%-gmsA{|G%WR4im&M3c`T3v!Ujc@j*jYn441Fla{XYK&bw6U`@ZLFOcH@}2< z9@hnBot+2-95{Q&KD*gF z_H|MIL-0?)**o4+q4th5E5dgsy3%s?j+B@D^*N&T0fi>8B496lN#9(j#IutIj278eLG1!}i?^Fp9!@wOlJ`zIA66e>YiUDhu z=+hHt>`8hsOPqZj=@GNUz3Ro;@jNr!9X+CdXjrM?Bj?c%o6XG zj7jX%;kpLcT>gyX2O-2PaliT`AJ|-u!!cS2xng$}j%7kfE_3!|L;-9rBL$Mn9{6^b z5XsmLIIafvid~-`c0M&_+$U#$k%{7m@NN`gF;U#B0k0CUCW=FF3=~4H*qw{xb|J(> zaTkv7gb)+OwhiNk(;3c0@lqVafwfM24##RC%`7DI*5milg^Gxdmz$cow%QrwsciD!ZRJ1_^rw$)`>?G zEFA`u)8sws@2nHMDJ9m4BdWM!>($>|C%UgH%e}c+C%QR%R(Qxut}&-zV?(rRd*eha zkZzp#ug^BQD|YP*S24j=A8Lza=*)@+ZKsnVdEr)&ndQK~aGs9~$W)^G3-=+c?@RvO zn|x5Dc#SANx1zx`uQ+HNH~)CWo-f0AS9QfDuonSUJYAb7#_pncR7K%CD6XXhg`$5yzm3TK!#5;(1*u-lF41?9u}=(%#%u`fJ* z=I$llAu6byqG(J-gPTxfv(&Z;uO_gm@qA<{Rh6ZF1fK}B9`sRVGV+9}vZBGqUfFoK zuJFn{A6BDj${r_pxm9K#VM1Rz?n@V@YxEI*565@FK0?ovVZ6&5Lij>&xHoMX;8(9s zPGIh*Yjj`Qy0xO}OIy>U2ip;z;I;~9f_fN&?SY-b%~Bo~o#2V4aF-E&F-T6)%)2dB zKEzxrFnizR4PWnZu`P!4A<-y%S|3I|YbCtFy&CI#guf*`GVuRcc>=Qpo+#G3`!Lr6 z$xC;SHB%0V_`w0Q7twoHMNacsJk#z3bw{Qf2o8l9f#U)pT0z``W0nxjAlBk|5~M^y zcp^THn#N6C5Dtbo7snZ3pAiuDb5~<=tjFg?VYvpPAeTo3!doD&z;P*Pd>=#|eXflk zf_PiA*J7PIc2Q!|I9qdWy&{>fk;KYWDzbTMx70PavW}AdVTL^n`SXj;uj(*lrhHiB zD1CB#JW0yqri$&74z?44|Cbyl!^y6*uoHp&SFhs*&o8%!hephB zAy*}&^5Z|}p!@s?JHOoC*?d4gwG6mBoAb-4I{5PUy_SxakYrV7i&}JfJ9U3V<6-7dp>WF*N~X7dA#`k@LI`kF&({l<9aDm)ozt zw=boh0e5F}iR0W-7B_DI_tp0@=efF^F%oe1HkUikIW6L52ypi{S2)j~_T_~F?yK+3 zo#(Z!~vw`cb5*pFcoaCbMiEVsv(u4qf`1@7+VeVymqcsvJc+v9t!%Iyb5 zWC`A#d}{5u?%SV{CvY=?Hs$u@Q~W@dVGi&!f&Cn(eg?kWPncR)g!L+m1M~81hVu5> z;A6`5+F&yjI~jiN+Tdf#_1fU1de`e%g5@4!?%LoU<@Va(vk&5x1tt66>Z(Pq)nUx` zTj9)|z!MlyZm$hq3fCi`-kQ?D+(xLo1@yFXdu{OhguDx4y;YAiQu4xDlT8_q9jXEB zT%#a3r98D3C3ZYkuN|L$1MV`=9?Hn5K^RXhcQ*zf1j7Ns#66YdLZaKTAn%rUb{py5c!iq?7H1knaNTsn&W*{RF+#tBIGh)mt^f# zR;jv^qIY4Zqoy<-aZ$&M%|(&ha(;k#fD= zZ2I`v{aO;b`y$`)p+2SR`g&OzU1`lF#LWWpzGykAHt+E}O{OqROYk+X=9a2R!QUG`nY< zYs{;tvk%#)#`e@c4JP@FR zNX+*EJ81HJtSrD64VwNS{3j5rr|DA*E&G`iVz*1U7ib)znJaO8Sf03E;*cfWqYsOl zt|0l1J{z|&*jpuZ{ao57`=qA$MPrrYJBc-RX1pOV!i1?b&Nl?mEI3{8pZ| zKfE?~lZmww*xY$OW>fG*xm!*6DiG_TC91h|-wcesuv;p3yBpox{755n#Eq^#WJa#& zsM&4hO(v6|wEIGOM9d@dNpYKs@Nb{u><+9-`xF=H%absb1!*b%6`mhJyj@y~x1&Mc zZVo}jcIn%_TTbk`fKeJVmI`PL7M0iSc^75%$q{T19v(MGfRu#T^8w?bt^lzGD&@}y z*n<|fZGAk_=Uq{@SCuEOK(}UF%4l=MTu0uSx65PqN#wHP@C?yB4P0HCpk2QR>omn6^opPTjpOT6F>~RIVz`;`8zqJ%)gDe&4D15gXTiY@iJ^H# z_`Z)}1Cp=$7(8FnY)y|L`$(!iNIsBWtfoa=tJZHQbA23br@Ih?79_cc2HU-hG9~iv zN#hl+)@fYv^-9Qgcjt(ctr#u5A(0<3>E|CSu^@R#+c=q$-066-!ri7M^=jUmi2Fw^ zk{fH3tow2Br`9OB=YOPjRGQ?P8YTDm z56SImlDqybS;Kx(@^NhnWu6z?s)VGOT2ify>en2rX?W9t3+ z)83e3_ep*#d$4LV=;ty!&r8_NpkK?$?PX_5f;#iEbOd|aRBkUDC!Q1V7z^B2 zE59tWcT(uoafeIc8iH4WESdcJc$kGe%1irgSx#^w-gP_CTY#WD#F;n-iifa-gYkI+ zYB>l;K-B8YiwnZB5Cd?WAjCBg3vtX7;ueVQIJSZP?}IRH9^r4}Rs6X}bDFt-M~teK zz$!+PW6EnELAHag1hwcAH)X)Cgn1!W!h~<|&}=(CyM*wIfE}NCo{Xv}d|~SN>^4|$ z0sP|EYRpp1X96k_3(zOf0`RY|%v;)+b_#`&iog%j^HO{$lcPZO`-k zt+ZC0N4(@0_ne=#sgUP9Vwr!=zm;AiwQwgXd=j|l{9EZg@|^cSib4l&o#MCB$3>7rih)~KNVr$7Q@^-r z3EU22(sAm#!nAoiT<@hcB9inBXGOEn-cYfuoBl%)`P)*g$H4d*l0hifqieul4j0IR*g8hU!6%t$;c?iWtU`i#h{)*u!jG#{9(Kf7|( zj7Ep4f)wscr_`!dD0Q_le>TANDhP5QvQMFf04d=MTjJ9d>PXP4Jw#J2wzf9o#!P;Y zb?bu(sDxt-2s=YOj$;Mr(i5V!iZoJ@@Hjj_BJ@LG%%FLY*;?v#l_#gP)>1UrdWNuI z1%JX*NgpsBBsZni*&8>p*{LPjsU_LSlazN5)&JrxEv`~qhRPCAD?d9H@1>~?jdw+p zh1{~NPV$UodeQ@-V?;1VJ{EPVrY9qEHE=5Vu31^$6cLiuo{JC|0c?G^1;;GW5Pwmh zjjZ$B0k2d=Dt7!%P0EHNs1xch>pzdGzf|4zY5uFy{6ABFUg`J*O`RVxALkP?2o2DB7v zF|cbu!&P5k@(K5AK;IMmr3i_qT?0Dl^tkB(>>AK(IM#vK`yBR@pI-x#MnHac)uEBL zycwqBgCwte&rh}BQg>u(p-9d~kK#KvY;&cS{2_}m*rF!679^_fd#-Rj>>4LJ_t0g9xZ(o9% z5g;WYcE0^E)Ity&r77NRzHMzS?p1xv-$mc3vbu@I=o4Fu&ym~)tgXc!XT(h{kP(Y9RM zRC|W;uBhc&T9&#Cp{kba0i@>HD5PfYrCH~JN)(ULxk?oBKwpRH6%bpeHQ&!)c}rYv zC{$s#=tOu$S*-CA70w!rpx}dQ!cv{=(#XD1%yUKfrLx-Rh_F1WP6!?jQW9bx)mW&@ zMcwooAC>GfjkXM{yNfv8kDgLoD(gOq` z*i{>^frEgm%fE$DlDeG5vK(M;lhU{9ElrU08s+MD(fSPYRh55oU-g$sNc>49?!>yi z&eAA1Eo$lGtx!LAdzf@OFKfs!?0$}Lp-gS!zD~<*<`U|IqhMMCSj$ ziR`U~FCriRTZDb9KG6^$xoq!_2#~Y>HaDvVfGr&eM=k3_p0U4L-rF#qNG)+y~gt@)K3QWdcAJU+mAE9wAXkZ zTx!i)*AlWCWH*_L$RW0lO^Y`7$DjXaJ$hGHYO6EqYCs7{xZwR4_0S#fO%rtf}Z1 zaC{1^sc7NFEJy%rDmom;Fd@WL^dTJg3n8YW#g|}-0j#O$P#lAV5L3~+aLg7$Oj19_ z@qrLxH`@79mf3(Er1`X9&b5KGU=X`#C7F~#+8B6713O5&563+qC2V$(_7c>KfSyz` zl|95g)*x~f$V3m3@^hWkQ|rcC=o(3*$YQc5G&Di-AHTZIzCwebJtnXP1-|QvhCWh)_Buq zylLHnC4BibJ=flSqMbLpR6X>Od1Fs|(jYnBv@K#Str?4HPGfJYv7g(>?Z2Bw3c@b* z-E@X4Cu0Umfp;pcZ)?=0r1fH8Yn127Fy2+YM%@nUt$<&>I`6Wv%WLCqU+h_GP2Qd* z@F`%8(4HFP6X!i#Mt9aFK(cuESTi47ZOqyF zUSd|LR9Geh6MH~;&ch~I>gbrgsH2%2@+Gi|G)0$1m1cw}DXcR{(kIr!529cJ zu=U2Xab`>fv}=m&Q#Zi+n#5^h<1|tkHW8^tXEJ5E*0<3KGhHg_Nu@az&l2GRg8o2y z7YOD+oIZxb0U)>m;#nL|2r&_&%~;wmkP-#qWB4>07dL<46Fv)Z6j?hMAtp_Zn{z019tmK1~$b_TtxfSY05Ke*k0>{T7zD$*mW^B9bDIN0lo9m_srtdl* z_juEgNTnt?D|8v_9&Z;wHYm$fG$ijC>|Sd-4tz?9G6vDdS!s-JMtR+_A2j$z1Zz;N zlhRG9p3&c%5bISft>fhNj@4G}kuitfZCLX?J;lnMVe;Q1E$d6ewUQPolf*SVVGtWpEgmTo zy9&`-g_*sI@O!1e_qJ_fPpRqd!*uKtZA1r;&|??pCBo}mJa(h3lZ zYZfA_s0W;_P1OZ9RrYq$hcr=sw%E`W++7+Qj6VB-vZwLZf!Imz6$59A&1h(8gU)X-Y zTIWCZKh6-wJ8J%9hS%9KXN8rIxK=|3GubcKJW-5qNs}B`qvR|9A?e#hiF0L*lCS=U zl7jkw%cC}2Cq}QuRvBxYS{j}u9hSVL+ju-%(X5{iiis0zdaP)Je zNDR`CK*{028l<0zV~7xP`*TEyLHaa&uaOWjNPiT^5@2tC-iqTRAr3(%emz5Z5PM8x zj~1VHyZzY@W*P8ih5q(uhP`5c&sg{7SG5;%tCQ=ZBALr*FgU(6Tp_8K@;s2Z_LKPf z)=-{yp?iZ0hh~Ea_bv^8^ui+$JWqtrswOODXoV+gon=e?J%kyHwP99mV}1a^c_MtP z@}xh2WIr9xbYl<|-=#^AS~v>%f7hp#HP^!Aomvassz~v4(lD>Yt%`Ji!LN$UD>=!o zir9sac_kNAEriS~nOe0FGQY&xR@l$XJfMVK2wA9vT?lzl3A+%os3dKL;00&gpxjz z^0z49SAbixm{4-AcpiKM&m6ebi3uf@;yE9W+kjh$nCLRmXF7Xpz%4{fa-M(V@wIp! z*M+o9F4;#W+fUD6h60>n$CQ$E!;Yy=?mL1%1#bR-L&=_vkh}awhG8IcA(p4(G(&um zsXwZ3EXi8+BDLiSf|kOw7z8gu{Db2U(DF?twq7WVTz;UEn_Y0f$jkKipqbdH13Uda z9mlD_&U~lfm;_Ah*SfAePjcozj`f5GgM@H>e^#sG`a@{nlCl%=El zRERAB$;=%kIU`?%@lk?4gy~HX+z-*`CbqCZa4Wu#qz2VoP4)wAPfC1_I$ z(YQ5#`qgtKUnG8HpQv2bT$bbx<_ngCH1a|OzEsjY-$l&=q9AAKx$k@Si zpF7AOu!HBNI2MEWMpZ6@=hmpTuXNSm`70myNYlrK+Is@}x^Gh1gP^;V#SWfxG~sse zJW>f69nYv)I`)9_$N-yOH*IjOE!Ur_o;il({;87iE6KgInct9sFF|asRv6!M$?(h$ zp5q!oM%5Knn3qbz{Fk-D6yF&)g}_v_r|_2$&su`^IT#|GvBV9Y4^ag?m;t2YwUXGa zA}&LkV-YUC|sT8gB7QFfDBUbB?e;~`P8*EyBE&MgU-N;4$S>?rckS@N;2T1iD?sbNtOdskDb zHvEFSOTs_BqDqvE6Gh{yDI(h@-c8G66V2+LbWqx~#&1b0rxsQI$%j;lbp6Rkwa{D# zzT*mFuB{#T&&bp%zRLOxw%xStnd@l(YkTH;+U44wxxNy%XWml@yZ6vQ3EML_Oz)W+ zxe(VgpXYn#;U!_==S1(e91ba|XSW>m3uMQZ=(o-C*AFFe&lcP9#`Hs6)5@-r{RMMg z*+ggEWtwHVP}0AYBD@#4&ieUcyT5SR-JH1tZhztVV!OZ4?H&vqfa}4ZFSh#&SKZ6D zKFGFZ@^Y~qt=w`Sr(1yAHF&Mq_RAgaXW|3guEFcY)piXw6x(sixAU0$1Gj7NMzI~Q zTri&jE^xaBZ#quhHF(QK`6IzQfZH|rt5`3^_^mknL(9PJ9{f=pCJ%Fk;&u-*OCpbY zt#2@9$XkB*U`uhe-Gi;gcK2ZT0~8LZSBH_^9Q)km2HI#SP2`UKm-P8wS%kz%I{uz6|4Ce%#?tGEax~ zdeQ4P3KpnhmN!K4*Trt5;Bh#X0=sOUTF6@j?6Uc#IED)$%jWBFtQJC+%@2DpZVm!= z**sDp%jUE2y+J}`qhJ?~FNBaa^oJHvyMWy&@M&QsV+Ltqqu?FMq>PkuAHsSC*pX6K z9GyW**z9m=7}Pm{(vppW$Mp$fOec!i9C+tV6iMti!!;e)&4J%>{49jroN?g83_yX+ zLu(xHLf#WnG${D8P5>(G_Y4@e2L>TA>@Nz#Ybw}93xSCjb#T>OuFM!qur#zZ<;i{3Uj|1e{+g?`JZGK_ac!zkU0dkWSkB=hWHtU=HF(gxV?R{dRUcTPSh za4WET7zanM_D+fOpJKOja^NzmBe0{2!<8p6`7_f-6(a~g4~;-cN*I7BKoMe-OFqJNBwkU1~Y01+lZz zQltGUymtA*H?}PDYqJ|&hx&VQ*!~@=k1Sv8hnm*FE?=C4;{+jO`641@`641@`C=?A zR{*=q;B)ZO^ zKSBQx*IytdA>o<$w0?|>PC$4u#N#+t2vG^~IgV{YTnCX_K?#EJc8Jb6+6gfq;(Z*i z39$^~l9eoPgT~K59ItOkMBz+RZB`Fc>@?x?BNf}kLeKkHyzE8-Fyw#TQzDvTjP z*cIY99LE4_2tf#2c!PY^0eES|;LkOxE z&YvatUW-pS0^(ZYnF3m_L*7ePxwOKX;+&k6DA@*=i>lQaq&H|(3FX^Q)Q%-!BP!np zrlst*9eTKH(1OV2-~Zx0a!wPy(g2$HI#svFtsD-=Ti=9OLgnSH@^8o9FAm4DMFY5n zL|x4_CB?)-;jXjo+A7Z&57|)^Ps-rlB|7NI<eUc2KB*N@B2B(;NpQ*bC4l!B%H8wkTcyN z*_lb5r6G0>a<+!pImkIm*g43#ZnW(#=o{uj+#F zkxSdacJ9Hph$b92e(EP2jf(9e=X8p<61WLRV>jXG`y@j?;3gc6-GrmbQ#=UZCLE33 zgyU;GHUc-{$aOh;b9LOj0NjM5nVWE2^fbo2z)d&`t4}zJTn3k{iJJ$2n{X7nB53jq zgEinL93_rZCmf|N%4-Oo2;79@ct7FjQ5?RaW#A?p#}$Vg+q*(>6OMjW9`($%Sfgz5 z6OOjkCmj2`3CDLt^ChUa0rn}dy9vkPZo<)VEv+pmc|xP9t1rP`AG!(05pKe9Cp>e2 zn{W(PW@84*WUzg4g9~A|6OLzLdIs3hkmuv$6Dkq4=sFtO4(sQl*G)J^MQqbWaYvnS z)P9y81lXbYF*v#jA$B^q;Fu|d48`BUv0exniXZSCBUoUE;*kOwieHNFg%Tn|{wHue zB7}^~`#sO>0@w+MPYWYsNedH>uA9lEOgJ8cXBn^)j*oDB2vWjkCmi7m1Oc6Jd~~pT zf{f4P>KrB<$MP6#>@DCb6K=VX@M0Vn3Lz7Y+i=_>gyix?9M20Ox%?K#4k09$B`-2| z05+GA0?B1he2o7G2 zcJk32N2w4p`5262kPtHYxE9CNLde&Im*aQ@*m=h{IKC1>uIk(KC7O6(=N)}<91E)E z9la>8kg~G#j^zX`6<)cjZ!?ZfLdd+M@yonPz|K4B=+KefSSfAh9h*O*w54x23!b5X z!GL$PeO1b>JL#(*^T2qO%dB=@a^N!eJt=4|p zVFmv8wBurVB-UW-FinLqYa~P6blNeEj9dfki{^PUjCWOk(H?tDgY$ zcGHgc349yaX-9VSg6CgPoPBiKQSk~b1+deO+RDS=3!Z5Cb_n4EL9$rWt<#Q@zm>n4 zq=Da8Q3_6RDYz4<+ku^egi)@&YcD6p=BlPt|ClNybB|`PvJM68+@l+gE<(uMBO+w(5fL)?I3Jc_z|K8p z^02FK$r_L7RSXxG>7;L$1Wk-L5zQ$6CR*(7l?UU zx{Z56_=j#sWxr`IGmLjdqq6&p8;<$J58*0KLUIF1d1%?)Ib zv4kCcWo@7!LGq>D9&d7|#=0Nl&v;)A>j3c$+Igk9%^-fadQ15?rnKz-%2m-Q4O{*D z{p%ciQhB4%+{$#me_sz5-(M3T0+X$BhH+Iw*iTISk73+2ZD`yuZpI*Tdrgts3%+z4 z!#H~b^EE|N?a_K`qkT=$opwxTuRFW8$X<8m?BJ&rrJb|Cz9{XS{S6vo2YAz!uy*h> zirikXwS&J=L+sFRrYf*QznhBEHil=p5I6MuwMd74e;0*?LrJnTZ(m!qn|b>ON}Bv1 zCy~XmE{i)`xo&g38!OZK9lC?jpw08xB5U40fX96}*wf~HY>{1)zWEKz8iCu_9aogT zuRGr5Vd$Ierh-fvUp8*-;$c^hou6P*QO>@^6FfrDoA5jbg8Lw@d@F9w2Pt6-SL3tj zZ5k{Pz5;RaJG|u}ZzDwb8Gn9&dJ}{{K%Dp<11%8#198(v))_%qiz4|D$E!j#hPZtb ztvU!xAO^nAa0Kk%7Q(dY$lu1@`SWZWmtx!Br^8CTv6g(pV%J}{TA3Z!1HCAf$&95 ze3uWY5FmEd?g`A~e1Y_Rv1O`1+CBWArgv{CH}=hvnwN`W2a;mj+T27e(?N1pT1>{C znA{afZ4jyVit5f4DLFCu8WJx9dt$QAW@;cv37b7JIU8ygXc1GTGZ6G+lfTqYPfW^c z!)F>(X!0iz)4N5nmn0@B>@QLC1uzxz+VvuM{&ouc%=E%OOf@o867kJNi6h{#HKX1~ zakB@oh3)y+27oUr>|+T(3dA;~6@jEyo~$#b>7*efa3V2$RFoJeG00ZlR3s;g^ww(9 zBN2`rsGjN(Uohv9?|e`6XQ8!Px`ZllF4*(JQC9A9>4m??<4fRrqQ45$d!oM!ZFf9i zD<8T5nbNo2rtxs!lT^iwqMUn)C+JDgT6k80l!Sx>@M--qcXEO7Y=~cQd0gl(f{u>}no6Y=f z{5gMu{arn`t^J+8WK5;>+-DRuJo4+^I-h%$A=9i8hG9kF5*Ta~Gxl?alfZU9W7;~c zwTySwcV%7G+rfQiB(X_**zgM;4scC$BUM3* zA&iF?)$Q~RjM79O22*=ro9N4MTntjeW}E0opdJD(nyHHY5tO%@1|>OE%f>a)72i=@ za}jLzEiLa(h^U)8MTI$mCGmGDN<1O)OP~A=%D)7*(eZqlruCGxMyGT;RyZK`RJEe0 zYI#r75Nx@S47wI2ew7%c8Q4n2bjF4Aw8Mxe<&XqKOg7VKqu# zShHkoK$_&gC4 zx2qD??4(U$682>5G0J8y8#-1AdvS4(LN`5lXAuePsWQDP zA&ygGfDpZuI8%t@mAFud-b#!SqK^``rSGfp*lEZK8jrmd>_ivhrXkx3!}_!DLU>_e zto|w7d=k8i%3WDGwGECeGg5@Eds83dnL-r1@vN7OIi%00nav z{^L7=a@PqArcQPNZgIN2aF~?!13Oqb1#TU>yl{ee9`qIaP{5h4R=6y!#N%P{v{tIk z3$2xE%dg|69JoHD#cq8_OD8v+;Gw`-sUBEptyDk7<6~f(=^mQ)z|7rDj@lQ7-%~$q zyO{h2i$7p8rBCaxj7-0U@sPrtTrwGKAgC=&%|Y-i#C#k#fRwO>oAG(*TMj&da0kS& z@8YH{2!DZC@O|9e1;Wgon1lWhH+zAwF2qwfrU;P>k@FMH`;QRKA&&VO69f>pgIJ7X zz7Sm?8vVkWJlLlsT^Ayd1}Jcy0mVREWC2ac9=A5Hlfq{Z6L_ z!nqJP{6PZ`!iON<{gX}>gsUJ9{F_1tjbDTqbgp~&Z8ktO-o&5x)Ti+$5bMr&!HvI4 z3$gZxQ?)=DIc%Xo&nOH>?b7z~c9h=?lCxBmT`03Nh}kN|$u5z)q_FNMA|>6^+emBx zwtL$1AD%i$37hSnu7#QeS}ai&Zy_iRAfxK!tn*wl)9ze(GD_bFiD_hE-Ti(frcaJw zof$PdM7f06i#*Cq!W4nnH!9`tToLO#Q}H92p9}BcKX@`fL5zdky!ki9loA3D&jBwJrypIXr1mdk#kCfIDG)U%%KmNuAPQUoCtMZT4 z8(!tFygKstny{B8reH~7qT^4RqHY-pa~QBG@)|J9NKesIgg*{qt*gZ#-Kfj6k0EL5 zd_oM56ejNRG5m$(E+4}@tv`Ik7rtnMbzzt=!$EAdhVRzTWy%+eeGIkC5{co_!eon| z$%A~c_+}(;0``l=YjCUN^nb z0nsX+Fy$a@0x=H9Xdy}<5I`YGN?vM@_>+W8Htz`tSoR-vV17UX0jAz!p8N z7Kwx@1IeS)o|b-D{*9<`=8ERSV)uH@XCiS1u$teEG;c`PJeTk}qPg8}n(e2Fw?>-H zHZ*r|);aIP{jS&gS){c!EKz#*OeRbn5Gza5s!fHh!4+$a*{QNIGZ5L}#lplbzfmRw z2 z{#}dXe58kohPXDaRT}nG9~uyKMH=2LOq}X9+=%pa(U7~F2Ko4PJM{@7SG41@w6O2v zq9K<$u>$Gkz<&IC3y#e~#0g2%qMU&J_;o8BErCgfT4n8rcrR5#zKpvIl~R-!^Vi?N z;O;@>ySOYzwzx)_bLhZanad)}Sac54ry)9%W3}*X1Y4Alk6@o*-$2FVxMO9@9^&q&cFg6!0w%I(9?DPh)Ux)p>3$tzR`bc=I2+uD} zyz7OhBRCBtV`&x1SR$kMD3X~&*@Kj@*`Y`WsDnZBQq8m*cG#Vu6IE-5@h-~4{(`B6iR&c>nY52Wd?av1 zH8K+FC`q}tF!72oN)K}vOtV33U0QDC5lUZdj|Nq$F!Ny%o>o}@#lH}iqd^}a_zti~ zgIey9Fr~mA4H|=EBuI&jJsR{1)bqd|4Qf(5VfF;^yH&Xy4LSz3#GDmY9SvIQ6MnHd z--X&kL49onkq?O`pHL1t85AF?RZ0#6-BC0D{aU0lm5n{8#D5+PdM?WQ63P4Zg^A3+ zwcySo`GY}hW3_^lA)T#buSddLMfiro#1UTjZUpZT;qBFg$0KY{wr+}qy(>D*J-sk- zjaRe@CGUx%uaw^pbmZ~17_FntJ7IUPrHPN$nlF>>H=KV~xIH?PT*KvBEuK-4uOc=2 zcE^v_SnW*|%y)={3%p|Is&^lrgR4s_pe5teKsWjYCDWlW93Yb=sgHbd-TWyTx>_Uk z8KN;U@q8^VIbL$9i_dLP#5-xo0){4YTu4^Bj>Ic5KIyE~@1QPbH zs?N>qTCLkT?c!2y8g4lYNu!c;BT3WjTDz=m&+-JCO%MC#5ep6pB8l)xPvfGS)7Aoun_ejR^nJD zL_WmNIDP>8w}dc_59V(h%}V1=5cx{P_fUsqs~@24(2LKdRXI#UrR5?dD?I9PR~|Ab z$u9V>#Xi1lTu52X&a)4E!}(68gR&I*{G9C!TjX&vp3; za}mgX9#gDfuJfE!#BdC_1+KfD=K*CzREp<;z2LmZdEV4KVTOS0m*t4jz0UKYmI-qi z$R2$&p7%M=%+?9>S}Q#5i*~>BY_ng&zK8PcP3j@% zPTbY%4?B;=o#`V%wrvC#JJD%fn1X_A+ZZl!o@aLDv;fE+P)VL2amg9gEn)hC+GmRA zqj~xXQki-O{BwDF2YlvhXsdv4~ zJ{jhu>`c7_{)Iey2mE6_5@r!7$*y$Tn`i@bQ36ieMZBG7?|?7unJ~qm-jWkCOd~?w z9q{kv**oBS5^^+%6{#MX^hp0N8`E|iDxbm4Db*n0tc;qUc0rh%03+FO5DL#+a_*{Ub99^CEL-_xU8e@*;#Eg_lN zeM4OGSb0+M9qPYr9`%qHE2<+|+-v3%$(TE>PE2#Ke?GrdD^dT(IwOka*;F^E-;bQ$z_rjvC0E7_?{p3;n8 z*qZ2rE@0}7I4Q#%8wJ0X-%w6hcPHp@8{Dg3hIxr#*Uo&HZ-=HY67&qP2Dcwy>=J>& z7rX&1_RVh8H(}}myB_t7Hndr01U%6?-cZ5^f!MEOoDM(NkXe|djd9N3QRF}5+mjb} zATV2mp4Y}&A5!LwHRIx#m2bMt>B`Z}Ur@`ZzFC1y{W^r#0&A>W#a-ocf&uI{C-qMt zCm{B@YWB6l?j4kPUmxE`QG7)%zIMnS2yA?wJ7K)b%LTC8_)dj)fW)_}T6}hOzNFO% zmp{#($;$E1_T&QlY$qdI2~0`l6}uP3QLwrPd2xX)%eAnrk*KayPMHeJ;UWgLgf_;JDXA+NP?5>R1{t4rr`LWwQW33bE%7NQi@b4mDw-&}F1>v8< zD7`^@m|6i_XNE^H*Eu$=&OA)`LJ(W0<>2d#^l>hRF)Ep1Dv=BxDF{#7Lu1&1gxh@# zossMSY#!c@VyH}y;U>bTOAITk<-s;|cE7POYU!3p3}yMXd)J|qWWR9(lCJ{0$d`RG zi(MckY<7{aD^y3&qMfSfgrN2+$@Tg^=zimmJo;mzn087``{&nwpgvvRK9pxrmp`|m zYX%775QzbF2oNdZ4NLKP4xhCkN3K!wy4WsOtx>1_?ZB*WBnNU>=S%p%0QRs>-BTD# z1A9*AARGq(li8b`o}x;)fc7|&_T9joY4uQXAwff7IvoTe_m#f8i@d*IWJb&-1z-fagA7b#2G-5l9JJD7yNemM|xQJke<%j@O0BtmxX( ze~<6#>cg1`<2Ya+&RQHRK}y){!#U{mglPj>e5=XXilC0Nzyx17;qkO3S#j+tIe*v-UB3*>og})t5R?+1uotdN;T{g`f^`SYM_{}wS~LH2 zVC*1~mhq@brc|{pmjWfETuy_hs$34zkpERKv0u~PAAM}ZaDXPoo>6k$hM%0#ZAgCR zxFFh zqev`|yN&P_e5WY7vLNgvilht%BQgkZR1E4kWz1j^2*#@lvMz+NY8-wQoKr2gjEF}l zH}_{d?w(%=cQhh?2+jwA9TC5YV*^MDuN@I*oRKhp;}g4C_57bBV!OoMNSj_`Dkauy znFlu@GqR9-7#iDyWEXv4(mcB&C{roS5Jc+Mg0QPdNfBIz#KpiBK?`NfFk6N3wt}on zV5};F<#0Y?xuu@psiSPxkWYkre16>>d!bfZ$X{Uk4%n7*z+k36z}ENYajXC-k+Jpt zlp##?fo&no4u}%XVRhqtE&>nNRSdX z+fsfH^&O~cDZMVtP(&9kWnjA5?5ZVy6Y}dG+?bR}!#J5# zRf3d+*oJX6)G82btg|+07+vp14Y0ZHt05W2yQJxqUob5{He7Vu{^DF3EHpWx2URFA z-W3(q%lW1Ed7)y23IWX!H$1(lLfm#CDSs!w!S})_mp>f~(@~(gwAh|6!_<)(rk=l^ zO7KL{Wiks!Fan5DFjtti#eQxj2p{-8QXNVcU6N5FT1 zSMB*iQ{}Q+qVk*t>rAUU-b<(JM|0G$KkCFHAh{n$lXSV{GIsx@(l~Q5nKKSniO{T( zWPF~VwMdd7{m_%>TnS>I>6pMz6YK`}+uU?LJQA*RGQwZv=Ul!Iz059xg3tN$GtxhR zlmv%=gcAFH|o#`fr1nVHpCblDo4Gm7L~9Wi*9D+a3f>ddSG zFbC6ND;+^i1;G@EK{!qaCiaMyz~B1XSc8nr85`WRO-f=$l$jBdfbIEN^CbaN63Laj z^~7>r(awl_u5f>wpV%fTkjd~hL^v75eo`JkHy^eznAQW*=5Kpm$T~8Jwb5{WFqt#fRn0;#)i4G)$Oa1v!h3xjha=k_*f>Tj zUtpG`$8kO3*MMaG(Jrla5aNmt>Z>Ew`KP$#+tQ46O;cG_ z8>L`oMw)ve5j+mKoCYx%#~>kkLrlkUy%1d?9>cK= z*za$g5b5rP?iQ)6^F+0z;R9GU0Tb({JYo>wAA+^h^1@lhyCN&A#s!IIMU&KWa|zuD znv$ohBB|vj^Ea$CZ&e?RTqSEw3mQILfK=D>j44N|5Cpv;uE24r5C=o7$MK>N`$9Co zl-&{#G=sPr$0Q*dLVS$l10k{@4jzfcE=Wl{d8gsi^<4f46%NPo2w@L`=F1^`s*=W> zMxmTjFUX+WGA|<=umnHDaw0@85bS_hhT~x&K7yz>irxhTZ$g}lV~7whKs<}%agY+N z`|N?raK`lU`!unRTgThy@v0UG@1jKAH|NiMeI5s1&XN^yH#xnde3_=ot&wQC zKH@epzl9dr`0Vw#tFkUhnVskdVxzp*Tyhqa6f~IKjARZZXfjD02Z9qI-oddR*gcay zR46dsrLT(#o*9_c6a`fimA0cKwcYZhj8r;C>E0@t-M64&<03LEBb86k z`#!J(iJn&^%#py3HyVtgVF4+Tu_Kkcpl$(nq|$M$FTjDPqmz-!jfLoxk;>oj{0VFX zg<~1t0vkbh9Nj=lWU59g-6CDnMVB9`jDYh3U`HyRCj$j8=4gkqOq;mIo7uoJ3 z6&Y+Cqtz4(T1iIxf}9_v^kuLSABVj!u!D|{I1U9VVY7pdF;F9c9dx{o<3(Tx9sN}& zhxZ1elR?MLqEp_o*5lb61jY_NhDMCu<#Of*9~(tT1|KIO&$f#&q4BN)OeOob1x4e^G@oJ58!neL^`?_)Y~b-PY`rEf&)OX1Y$OhTR=+K!WZz_ z1oaMxKdH$)i8}o;!n7-PZ;O`24b74p(lVmY{xPi^?9)iRU*#uSmTLYROl090#JqKb zPqaL;_zGQD+e|Cg1rce*Sj&mOqy8PS(>%rb%XK6B=`>4pT%zpEq~o2`U(`%XQ!^-y z|GqT-E7f1rKT)Or^E5SYDLcuGzpG1 zB9gHTZAk`G>OGvd-Cr(Me~Edh`b&!LSAQvpvFcAPh_}-BqU1tjW;=gpWY9NgOEIOr zHA_`Wx?0~ViMChNpQn(#B8@-3MaPW8N#YNdi3%Z`p7DP)WHfoIRW8M#RVCi^3imdO z;u0G|Ws>oId|wTDsUs`jE=25%_LxDRfwfn%dzxhY3?;@8^~H|aEr_c!ztbquT(?^^ zBej2!?thUD;r@TKNZW|y#I&j$-@5wF3-v{koFsovCtlLUG-tZnf#v;RS*|l;yuP_NMO>C^P1q6{ zM-jX{*O{(v!zMO(ObKgiwnB-^&mv@{66Y2{Jg$Vb!hAvrYYg_J64nsxsa$8vXbr$t zD`72MpU$@AL~^1{M#WZd1$er%rm6s#Jto}TBgNt|~zyz^Z_?OYJpX7w>f&+-fA z9DcAj{+pkBqS#74NK17(aJG^UV9M zgUbk-Je5%~NJ&UI8K0e3vs3`W84#t@ILCG^dnc4I-Seb6gmwkRHAjQ$w&% zeFzyihxs^)W;62vVM~Z%a}wq_u>ZjjrcF2gHtxlr&6>l;{UQGH#2FClA9i`Sn{CA! zvWMx&C91(|xwTJeNkPaG^5Q#~zyQ01{0)xJKuXx`67q3(vZw@F9Hc6GASnF+?OF1U zB`yx#2^I63?kp9$*uFA#MFtPT6gn= zL2w|%Q8+paQ4UdwV;o3{On4kVi=iF_u{EmiYFb-~*3BKHKwj36(2S6nw&sR=w$cLm z63Nd*dQ`On5ox=?@T&?N<6Y69{fFFGcTprm)`EN3nE=L4&1ygBoKsAI$(-zFsOiA&iG`226bGgw;la9rv38PTsWhL$vjxQRA9Xyw z(lCTEu|G6!nb1kGyYaQuCkn99lPo)Ew)jwxx?0#kvQ>~*`xS}hK-l)akNp!6ltXmH z(E;q!2|`}{SZ|e$KGG-O&^K2O#`BtMh#!j^4_Nrv?oqIejv zOHQ5-L#!jyK6bx`@KqqzTC?Z#JVw%POY90w5pyCWgW|mKT!}$SEa!f-gIKZ#>C8BT zoU5Zk$?t@4NnY*kBD@zt-4N^~3S_l^w(?=>CVa;as%7VX;|U)N?6lJJgb{aCLv>nt zAFTHPpY*w^mG?=smgR-T`)Sf&f$c>Q`*rc|4_oFuHs50xxqu9_M1cF(_$n0+%~lcKFE6~y3m=Z)AtGE^O<0P&Vi+xVoz8(-1$#IG;&NCo1#T9% zLLYaA=?GIWB`@5ktv>FjU|J09~@Y|;nyLGn0Y`=FUPt_CS#vwcwZgDggX7IRg_CkXmJXt_Qe?UZE+ZFLmW z28k&vukK$55R=oz7iEBL=jcjvCoI z-H6V&(_LUV0@!wXJdP_ssv|76oqhspIdJW?w!v5}i3-~3t&(D?hRKKE0kMOtwbSwf z#s1K^eLL+wo*^%$R`5-lE$og&b1E-(@PVrNNVIkk%~z#W4gbvS!M{Gy`{!Lvt!5he zdU>%)UeRcjj1ooXD8GMGB#Cx8#=oF+Ws-`?dEsXwEbaD#2;Ko~C0-Oo*z2gYO5F8f zmj6KPf@&|a&8Usx3zamc63O7&ys+az8bc+LV}Om}Yvp5eCOw8#gg*w7pQV+BCjRFr zQCmgzw7l>hulh$sc6!x+M5^m_PfPs1i+MFbY-5^gDdzD~mhoEJYRhDM6?!!!K1}^@ z#{WI_w@)|dXyO-YgDW%ZpIo3@f$kd|U|QU#p?kFRuL+Z2nb?1;0Wvo(v4QqrbUdMz zMCQN8Iw6?^xb<5<3yvSFTp~S0Rr7@7PpH4-V2t|9M81=jha~cLuXU$rmFd54*JQck zEf<;4G(hEKd{Z_-_$TY&EU<#8&(jt#A_A=o%&K z)hwAjRNqWFcN*`l@2;p>Q-d0&7d2;gOq$^DH3){;xi!ZhyDv?WI+b2Tddu~{%a)nP z5EXMX`}|T~^$9w&f11gpy8>`R?v%Xb%;{(kJUw+RoCaXo#I;Pfed>UztA1 zzAAl^J(Ib$ol@VD8=Cxxy=1La-E72 z^virlAefe0yA?SNx)SsUvcCX3jPyeEsKPgRXto_jc6yYK2iRex=gFvw!WCa+>~J=$ zX99ll*&4HyY!5)isXFwSyhlUrdG+l|NR_trYvVGv@Wi_tW`{M`O5(^buER6^xoNF9 zkF(BP_e?LMFyt4^snyLt)1RA;kxF(ONxK%f6OcbQy#+#$kWn%V`RfAIK2 zJZ(+yQv$Eip9hUDszzG1mxUoElvE$UKSC*_9qI&y#9j86XaU7cJ#eV4!6>AO0)dit)+ zpT66P*yl(3(|7f9?diLRpWrqiQ1ZdO?!oNko{QPp!Jod%%eANPYCTB?K)sy@24)ta z?l48OTzmSiEg`KyY?tbh3A^-ccFG`zOrL5%VAh}@$j?o!Mv0wt4@2-A;7;G|P{s`7 zU0PR6P>}0R-%W@4dJ!Ns2L$HH!~N;I(p)`#r{6Tqy2s^;odJooJU7)1UONm~f&5Ys z+gt0kPqB>l<8c*~dFmKMBrAGoZl#;C`Uz{*_juxURY)}56bW(1tj197^qu_zYW351 z&F=Oo?nTamdbt(9N{VY=!twyA{T8Go#2!p*@KnOo2aH?f2-pCX%`lZB+c3A*^dpcB z=Nr=ju67{!8NP)$?g4ff?1eHT@u;|8I3??>j_JeTmTEW#E1UV4r;1~*0!WXv0=YFWWL96ycsGjEJLw<1*9Ue@;7C1ftVP}ZF zo=%vCpi57PB`V^tr3jD1^DsgW0qj1_gKVPph}Xvca!P9*faY4y5EiW9&l&Iz6#fp9 zn}e#eH*R9HQ%kZ_OR|wCDeoYv|HWHcT&4C(R8FzUAX>Zjv_VtL^?d4zX7+pKW<4*@ zNYQ^QoMn{>%i8BpK<&s8ZzZj-*nZ$978Jq zfw}oZL~0X3P1mqW15y%V57`ZX>I3W{yQgtH4q|0mb9Xyr7e7vOA(Ol@sFarjrSWE3 z|2G_A%uVVqz zcO0?)GgNF~k0YLqV~7y9kiL6x+zC>`Z;vB>2(=N|LNY zFT_xY=W#qOL??(w&v6b91nnWt!7&)5L|b?vK2JhD23lUhVv~<88M(CL&=v39u`?0h z3|IE^OnyKx4Wc!UeF3&lP$Q#~?L`FnC3S8UAu(1s5uU!ljx;=5MkG+n*HB%sx&qeA zMXmY&NP81_pQ`Th|D1cAdq3C5o#%;LghbIiJk@PbR5FxkBtM-%#Y0L;spO&1|GoBJ``pjv_WgeUuixkOTKDd?_Zs%zXAf)bv-dtnNHuiT zIzpz%Eh{%Q@E8P-0Hy}MA@C(oM{2;7ym%%39xx@pm_P?0E&}RF$&2scPhS;`FDQZ= z*O?&IJDrr9qND0FmMT)rOr@h0bI3Qf2 zB#HiRc)Lb^p!*{2cV)yC<}w;h`?pQw-J<-=5HSNYwJgKxBn<{ou}_nqd3t5Uo}0kekW=y+$TI_jFTC#)fLf%Zxu^tF#WZBk4x zdA{4Aqq7FTFE&`SZJn7-domo@G5owN;f>)JHpRX%++3#4%=cwHnSGk@qtG;M&m#0EzYGY{-BAUF|Z4}sqWX$jKmJr-YppaaMQ1SSd61>`dVp8&`9 z0r6T4t$klqbQgLz14q-Ki&8grsEqp8-JQ6zF^VpR(fLG9gsjm|kb%6l=! z`R7?@W{0-6X=*X~Glq9?&-A>qo28LGN7kMMtTS_7*(h;l3P0fPDZn~2=i3H!2NAbO zq;Y22*hl*b5sM_!I5QX8$o(H;2LjfaX=@`Ff0W|Q1FSRC&PHDIaf;U-u+B_->&!G> zO)mwkGt)t}6ER34jWctRjr@a%?GkCaz{NK5icfd}1z2aMqwNaM5iuV~v6nboO4}t~ zEK^_R)v{pc9BbTKU*?IjAiEu3<+-|@^JT6rQ(q>tnlE#0nffw?&X@7{!p`Eh&X?&? zW_+2lHMB0E;nI0lO_8>h*Uopo%#CHnm$?&x6!W_+2)NO=SZ*Qp$5 zdYI8ye3=!Rz=kWn_2>^Oi;qT#G2*_2@e9EEG9M~olIKE^aXq-q`Z9k*yiXYTwm8B@ zUf_J0Tg$5ZGM7GKOU0`_QF?n>JO^4cC-Y%c!6leVGAsU5>l*y!;+zP2QFqi!alK++GR9CB@jTcY}=p znBc^hd0cs!W`ws_S)D5`gg1DC?~6nA1YmrbvQIIL0OQLzrdknuRNeS8$FxcGWgdlT zCSZM;w^g0zZ4`CYe3?~Hy$u*&Ch0RaJA=f9&iFE?5pyzNe3|Vk=NN5zYtU(YnITXN z0*o*79D!#6bo>SF9-%kBOrbuci2Q%>We%cE z^kvG|rFeA#^E19ox#ooFO+%3{)2A%;etAaX%d~{)EMYXhOq-}1xKOUvk3Xuc-dbUj zM$rp~o`7i&69|kG3C5S{uM&K3m^A*;W#!H3{>GPC4AJvITvCjMz7y;xz*y*=KgVPQ z!h9X_t6AvD59k9EU#1lzoi8&)ODDceSB=LAN*=56(l3T2#7|C$uhe+)eV)*a3;n#R z_}KXgvyt^@j*Ob%ECxltdztlTo+j^e0prj3Uocn*BL2)NASVEEp*Q}_V6Ynih#&$jqC)!@uNI0?@RBig*o1t@GF%)v0gxr0TCyGLFCTIX3^1 zvW$}UXxcLgdXX3p$HDG4eOVxk0!K zwc--3QDby(iI@in^P;j~jWCPRU2i=OHDHWxN5=>=RyY=-Kk$OO#|Ve1GE_vKRHbc zFNV>L=pb*YL6vb-lhJ*L3bICb?dvg+^3>?|FLFkAUfHO^M$YKYx8{j8x(ltfV2$n~ zO)(Znv8EWKyCl)*E={yBPH;x|DHz@Pr!7Q(O!c1<>5r9NDdx1jCz1ma6F8A$UuV>| zD!uae2g7+^iE$SO)U#{beNyc}<neIkLnoNw?fY!vL(kH_ArN{+8Rp0c-D#DKRVB4Yu&^7qIr;SR47$cPZW!z}kD` zEc>vnY}Es-y*IwZTw^!)#}scWVC}sLs^}*MK)~92l{WI29h}2DMHLV zb}o!90bCY(`F@!UrMYA*9U@LLd302+k9{QCC-HVqon#}aG4Ek4t#GTbpC%! z;yXo=3?P%>p8%Kvq`Bsl?+1~gXaMYFe z((JetHoGeiYCF;PCc#dn=CawFA-@sGt|awdQf&q_y;IV48u zkEDMOgli9|Q)yJX>Z_bM2^xxw(axo*ucFnou=;;-DhaR-!>3A`vvz-;(vKOH;c+Yg$`>_ID?#7Wm zN^&k_&g`#FNwIpbCnYOhRNO=pe!`>WaVl>-;x}Qt)TR~`#i<<`Y zq!Q3Dgy6rW!BZkhhO50u*$S9i4WfqDd}Bfb`g9-fLV++#(_OwzAE~Ax=2gP!?=B7M zT&@}#?dKXBz-V|{bAmtlp9BpvNS_LX#~+}<8hm2Y|6El_IQ=;#88?Xr*@X53oLc~6 zsviC~8-Ia#bI6RTIty$X(A3k}>^c~wz2a2IuGB}7V5-(pvLtVSXnLX~W0hzUQ8J+?+S9X z6rMLgRmx`BzTqxZd_-X)Q-F> z_ygi!gj?PfoKq|2oe9K+%DgKW0d^Z;-W8k>Rq|?)5{8e86nQeAK=M8i&Py0JX*T*~ z!=seby)7_Pr+e(7%iX{AeL-_mN2WC_idsV^!@fVZG|ah5b(V)QuM`N!s&LoSq#qdO z9m<@brR4kXYAh>JASo8AC>6)?T& z1l7ix1L^dp?5-%2-jorGd1-*@O^z(dbD^lH`sVFeNRI}zH??YP=PA!?E^@UuT@FDf zz!cyC0+WEM-n16%V@a0Yl#xoN1w=qqZ|V>Ut`xzI>!eEUNN+kH;+BBvP16WW7H*+3 zz3Ef1j{wt~dZ`o)aFG&*+ojmjo9fq&dG&yBoRTEA?68|gR_jal#7Njy(`x8R-Kw7H z_dL^gN>jQ>u0>xLbX_X?w$#{r&7?I-*<)UFVgI!>cuUx2T6_i8rvNi)&C)p{+1mkK zWX1Q7$Gq!-@b&7`xf=tj>EK+>R&@Mc8Z_#rI#$E`3Se|Jid+}(hXfsO)`12HZ`X9K zwn&FG?Mf{NUsHwGf2Sm8gXoZ^eP|kU17KQ4D+1>TB2Bv=fj)vr)1FLVq9D>jULmjq zh>JASv^Ri#4ICjal_y6{dlu<5ZPTp7^cdgz5)x|9k#HnIGNetp3CWEC`PF)X`_5*l zq!e$XkgYArX>$$vUO`e@=-L3Oa?zxtOZ77Gwvuj3s$;H88$|j*z+9I$gTRA8yaEz) zXWAQJ%K(06!SjQtmRu<6Yu}Zmju6c<25p7qJ7F^m(W{k-gL6@_MIz(jwvx2hV5%Aq z(=t#GSaq#*5Ki)3C{nk-B=uLP?r0dAM@$z-OfF=Vp)M#*t$VE-(M*9H32*Y1Ez;1S zH1+)I#1oao^IRw*u3MTq3}RFIPGqHHl${5o?6^?GbVzCHBFA(a47UiAY4IOLExA%0 z*xyQn`rVN(z3NejW&*||bab^m7s}DXMm=mLv~L69f2y~BJ2E6ct#jeyY+pVF9b(fl zQ6_(@@soEZd6#Ou-CmEQocyNFKk~Ji0X9{3HD9k2h^&`AX`@qvt}of)R(3Uugc?@O zlD||&k+-}`UI%S2lDRK!wC%LXZrF)m#nn(fxKr(BR_y%d>37+GG`hl%Foa^(v;izH`h#Y(BCTdu@X*HqqC2`nG{ z-&ouVkZ1|7Get?%^3NYqe@%5s?i(1!#BSZ?a$by(x7qA_8xsCjj zh@BE?-s8McY~CQ8Ux<4E*be-rrS!_o7qem|!C}QV-*%_SU&Y#^<0V0grZjy-i?*L( zN~iGHT#b`GK22Xyq#h-91aBk~e4$810>Oqvg5MOmI)PwM0zr6+W=5Wsc}|_@{}0c} zEB|RakLCgUXuNmqGhvgO`EeAYUoEfw$rl@vvGQpAj`pEUv(@t`^)(Z)uZ*VK$S;Uk z2iW%}&lU$xE-$pC!QE)JZCrVvwp$`?Hx^G$)HcWp&M3m;1gy5fHu4-I&IYWuF~xzC z>vioQAG$i!YO8qIKE99DVDM)=JlHk6LyOG^?(Rp*t$=+ASKo@a&FwIY*yh&IB9n?^ z-f+M+w?@V0#ah3Tn0FyyCy~ZB^3Bqi_ab21;Nh12nzER8Ibhph6Wa#gC*m!@w!tGT zrDvPm#l`yBx~pB=>rouIVwsoV{k4pqS8)^u>siGauk~jHkd?)w>f+G=W@Yhu0^NbQ zkeQXmIbbt^SUA&GQ^G3ZD3zMz4HKy?i!0~zHs9KhUxJd{9hATG4#4&=;3VqQ8>OWZ&w3&Txh@r{8_H=tB*&OQ#BV*uj{ zUP<6`ATDIa6}$^NC9tW!K&vvrdUETs&+@F1^ z$dZQm0fegn(-7-4h`xH)ArL!CY0Z7mEftabpckUU-UrQGA9m7|Cd;v0%;Gvu(?MSvxLB*+-JdO6toZ_~ zm{FKW5v)C6?#=!{Ww8z?vbZ;U z`;D|e^Q8faG52LpfO-sI42gb`b{C3lgUwyTM}=FOxflCH2~E9xuZYykDrl|ZLsenJn3oI0C8geWV!|a#?S?3PYL+}?NSUN5Nm0nX z>GwMn2fJNH+ad2lAe@tsQOTr8GFJRDO`uarhOQ|NdNAu4dwDR7Hv(n}!O_+7T<8$V z48Le3d=T1cqU@6zlzHK19R;I#e_FIHowJZH{*%8oB%LX8f041wmLD`B|3zl)^uNDI zCuBQ0{#|5jGCMi4mMjLEoq+R;11HDJAAdj6uP?IO-QT&%?Yz0ZDB%O4y^8FuT*j>H zqlnpD+*g&D6O#Qj#oVyfUlDU6a)2V{hOHZl621pJPz4w(@5Z8pE%JkGiuKNZDAFzR zI|!H!BkPL-{o3m%MaC`jy!@Y=P?jsSEdI@|ELRj=R<(=g%A$l_JXhI#dHILY*!*U; zj{VCb&SpjCaH*}(BNHq1C`C*yG}o+}!=7a{*l8Gv$4=NfZK++O50dy8^9HnB>$(d)3t}XtxuZ@6I#Q!iWuK} zOQCIY=3#zUnD8*aw<-2v#$63%P(%4E8lzyX>R%k`Ut5^)&^|3pcxazlm0o_F-B|uK zN4M?7znAwLEF%NAvmJUF3dUId z73p*@ek<)iT&CPRob5WM(Ci}H#^c!p*pnJ#3h$B!-mX#1y8y6{eXK2~ccjVtI4x+Z z)QVG(>{VQX+WQOB{8dCxf_D@Um)PJlVzL^80l_Aa!33@pihh}&Ug5SDWmUTmo# z&m(vtzybg-4DN_BSs|H(I_Fk0DKEo5hv+lFyftuiyv7hZeQU6n-BQRf( z4y5cS@Fx%#9`h0UlaJ)F0Olj~qX^suB)_b}yFKQiCD0)Me9(`%0x_Tz01H3k!o$ zQg*4hb!2}H5EdR#ab^uiX7Qjmea5n&W{0OTsXQ~o(mOfi;uL`X^tZbgwGzJO)AbyZmzLid4}uJ zVV|KF_R#pq=-B$CTWrAS82k@L2lK*gMgqT$j;@m#%wvh#2FDO{MT?l% z83-ys<`I}INE?vRNAqF|2rdIT>zJ5#0uWpWvYx=lz_EisycWaxTQr(Kccmqat`}<# za2_rq2VDv?w%tiv6o2gIV=+SkGrBG!@C*#QrzV$kEbUA#$CRLz+Hgxl%FCn53nQmXw4O`d1WyxrF;6nMTCsppFs36V74(h zy1;WG9<)`fqxddJcZyv5TJFBxfS>V#Ku*kxLE`DI>4R&o>csc}JLg6b83D=J7C&7Uq3QM&vQK?*CC(MHjgAKwgBk?L2-v-P`?C6rch0sM~W70`6Z@(z;wDO$-$(Y>Kteo4AqqNJirPvTo@AO7(Y+^nX=wt&FkuaKzUI2^RV{R;5>-eF~go zEa$LXJKFsnjo}xJa%1?I0%Nkzqf(~nAZZZ3%e6-Jv>gtLx5e_on$HX zZk?3{`Yz$Uf?#)E!mvGCOU1C=g*-o5kWqOL%}R#tjMM15K%JE!d@%yQOpM{CFDuJ% z2xVlU)x?_RTbVjaOP83dYWTn%tp582!EYj2x!25Mb(uIDv~WR_oz%;&qN z4iT9{N!kp}2EgwRQg#MIIS?1J;4Wf1fn5X~H38%#72}-o`UnXsNw^=1aX|1O$a@4< z0p4k%y0bo|JkS2pY8TfLy>&!iJyBsUdO3)!pib49%U_VTT_o~LlR7$1h5Av*U7P98 z?^?V;$|hBmduGhb22AChMBoIVo>WymsiN?F6%$Q6hplqcPI#M^HTp0_tEXI=9UL72 z7vV~szEcqN8mTRz3u>+e%;4zgQau;Sur*ON6yFW)2p}AzN~^WI5$KQ( zzy#FvD~*3tm|F+AY^gNIrc^SP9b+-0(c?s)z*XP;c-i+|Q6fui%y%jNwaD5api*SAO?7Ev- zgzKl$%t@~PioE|cN(U&I#oYl<;98!>yQ}!%@d;&4K^uLtA74#(kdWcITaC<>e|EsD2}ZM#YAdtg3rO8AEKz$d0Db^!>b?Xd006k^0N};+>>vPeLzuH zD2$xZ`IhOhlvgB&GxJk=nx5Hpjf}^+_6b*vu|4VYOxqFs8HYUMX0_Zrv!?efz2ONU zxAqf;?>f=j;4EG?0l8x*o5PPvmV6tTd``^!O(IRB zDX@`Si2NL=-L@q%3-e0jY;0CsvT)#uqd=KYsQJ3W?JN}Yh~T5K&O9|L8579hQCUNC2(t(~%`m=pZYc|nJ< zHX^%S?I`5qCk0cJJmD}6ewvmwAgF)y##IL0;cDIPwb*&Z-Hg`-RI zTnI2IPD-ahl#xQsQ+4J{3et{1<^e zf=D6jx1;`mFmsB{*TfgFZ`d23x$FsAzkOb4Y|QUS-y}4$B=?l| zW8a$vP2_epXwOP75Vq2m8 zC^Vw{^hh~7;;NMYO!_t;c8{iua(=bMt#IQ^=(UpyzBDgw=zJ>p9+H}O-~a~T4*_|d z!1IFi208Phm{$S#SApC};5r~K0)mOeoO&^fAH)PRLDD<13Ja7z4Pw4o@-l%1#PpNc zl_qxg9i?kcVA!3(Mgnavi+Lvj!FG^lm&d%rfZ$J%HwerTB!xNa&?{r!?khlYLHsTZ z>Q{jr0`gVYn70@RjszLp4HFp%P60XW8b)V9T7jJ0T~1_xbOh;h9rX>g=mt{Mn?Gkh zU|V0&AduSH6kFUb$@lVS!E{ZY05VOJi>84z)tWXdt$npKqS z?#Uwp>{`r3WnyP|6q1KV+q^F?WhP8jYcWT`)l4{>$n0O#veBD7-G z-mhP}xNDgHqNAbVi<)I2H>8zv#i)O5)u%8d^F`xq#*(~B$;N|uLC$2&d}p$7F%V8m z$h;jH=|#haayORM2Lx6DaiI-fCMMR4ts_9w zjw)v;+@e6f0oGNV^brMkzTk2+dq^UwQy_pvrHAU;Dpf@ua5YDTqZsgd> zVrAx@Okv)Z7jzb8Y4UAhYy;SJv1Llg(!LOG&kM#oEjK|l5QsgWpvAt&_#_hVLS}H2 zj`H8U;4PM4Zh)&+eo#D>r))N! zn5OIq_~xq+q~r(fATS*uqYn=Nh^;1|<5ai|uPdKry z5!q72t~^L=VI+3BaMjHZR#g}42)J@z2oA{)_B*k6A@WWU``STbTSQ{Z2f}qkeo*g$ zYL(y!_)x779GM?R+`xLDwg?8xc-$NjB#B5h2wYO`nejHw5>5w zW)=$9x%t7<)idJ=ILssj=j8{RoY)q988v}eO2Uwa)q&XAk=V=|;kr0K2&Pplqa#T1 zDukd@esB^5ri{H2d7X&eS1q^FVV6f`93Wg*=Vwe1F6ppy;CK`;9d-kO^*~(6OouJ% z$GQR#dq{@??VPet=r@(h25pggO@77(kt+LyI>OQ(h)asu(l`NZ3=n2dvW?E|7qaWW zW+0s42Ex@M@7nyJbh?&pEu0?<_f5*}%oyRW)jAe>$15{lc2*vdqo7b3iUoZKjIBMr@|0A_A!Jhw+x;6l-Ke`|htG1XzlzRVl(YXLjm-y2oB3mJj@@$bw} z9S>90bblON#|UQ=anid|#`7Oyy3YiOru!$OOe~km7@ME+w44CPDK}08? zi;t%JsiaQ?Vr#X%S(DKWax0YulYB6u$K|IShkDcYSHtpwu>CUG)|X)mXDY{7CgAFm z?yg8yJCQXhKOF94)gFZ12*hsJ`N+s>BC8I=pq)LN($)jH7@7*8)-f!K)UC97S>fe7 z=l-MlDIFiC>MCTtME;yO7=In`uLZe@z(7GdgS?iOi5Em&ye`3zOiT6!F z@ogYZ3#J0;`PqjaI|C)-Nr_8D@DQQfARYp6g>EA%y`^Rh13_5w!*Q_q$C0uaqUV7; zX*=gdWG>{|PSRH2-cRx~v_Bca%|!5p%8?X>Qnlse7lgk#B{?_8yez;dxhPWNLI){1 z5!&McJ~$>yIz>ucC{j`wno?W|@#Rjz6_ElLI!M6?XondEYRn8#9u~lUn|Slj@bPEZjGVN~lZHt|8*AnbT)w#+;o6~={J?)-)M z8GEF?d`p@AfAeQ5awh}UKv@~(vH8v9@rC@ z^skZV9f_jnkp8HMKI&l6e?_9p`5LYNMt(}gOwIKMSk^ny-uv<1u;ore&(35X9vRlR|T3Y~`*E!d~& zI))jeTYg|QA>Mq7`CQe<2QM^qg46tVe#%}~z`5v{4aE8@l}w9P!q`ZH3pI8UR_3Ri zHcPAMeYoEh33CpT@Ma{zg(3;>QyPAMr1u8GeJWjQSo*B2 zhZs#;G$HU@DAII&TKJ#{61#gILgoUN=~rc{ z@mb#|@Qxtjv!>oj0Ei2Z@ma42>kc&Stn!XRimgNXo_W5H5Z>ar-i2d@aE-0TB`dIQ zjg1vp;ku(B*eYByqJ+b_cLpx=_SMm)MjQuiO=%B(TOgdTIZ1S7?CknQl*fgl?dF2u zthuUf1e}8aGrNARbiP+{Yr+(G$OzV^fmq)MZA(xaS_lIMMxJ=>-_k zw<;@UW1{GJq|X)6TN5%*>k`r1qulHe(L)P@Jx=r|u)Oa?{}$0Tzbzrx4eny48ilzmS7Pdh=p%u~%ma71h>tv<#y~;$j+q^5Q0k! z!lZdBHuG-QhJo0!gT!7Qi5(_f*A#^H;Y!G@BS`TU3PF#8@KPuCJVc%&V&^4_ZSp9K zwHu*r^dx@GT#&n=83vfyu($eCf#*WeY&a$_oF}qn0DTSmR{+b@Uzw6T7mAq1=7nE7 zrvJdOL72{Y0kxTTFb=#(Aa)N%0AQZz5EVreC*9{|vZ?tqNk0vUU0cn{^P0#z<^fQ? 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%0AVo#K*+ENT#?kxE!KQv^0e71M; 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 z�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 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/gevent/_gevent_clocal.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/gevent/_gevent_clocal.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..ec54929c060ad506697e789d4ba0b32e98a6ef7f GIT binary patch literal 892704 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

          oPaOTeS}nM?%R=ui=_9>P&ecgz>rS5 zH47FyLJ8~{Ap|k26OpFuX}IoAJiPH;O*q82fppwqO6?oPFD?FqE{)VT36SDaMg7x% z09vH}d~$qgwuJuSWT(xX{mu-DeNxk|8r z)Q(ZH<9~|4u+Q-AF0@o3sgI|xe$qzpX(m+akOuD_I%>Kpl|^(8dwc%%FJV6l`)78u ze)#G~9etiBe_(>z(jB19+ClEmCo<*rMQtnMf4CSIxp@*%X8d1!7F1;MWPa@$@xtZl z^T|ZK2rQ*P5Ip*0c|WxA>w*OW$;D{rSXVOttu+G4(tT){p?s;5KR-$svV+ zoWc}BWVN{?fIm3_z$4ACm+P+L3H}WC8*{&-;!&wv4hV>|;j_hjX&UptOA!u1j@mf? z1G`sbG3)N82jd5fcwCxT+gO<-73Q9m!S^I7B-fT1a!jWVHVtju&~gHTj#ClbEFh2e zj=aRR!SvNuY9E%Ga8dsH;{ss4aE!(g#7((<4ViI(1VjxoCt$OK+g0E;LS%U#T`TJ}e;srhhezb*4H^4%#(=g;*|U;LOH9o>@?oGzDW9MDO?+@!3x{4Ca6D5qv~ z%wz1Q%p@gd?yNGlYN%0NEVuFhB%kSw|ihQ_m$}Z2Dwq zE^%bOcw~*3XSZ%Uz!g^-?Y-3?9ruYX1ZZ~hpus0FyQ(FME%tB*!<4sqg;dQ99jRc2 zO}(AqT?9a|HLlofer(<*QPpOj#h~@AWr_=!t2If=Gyme-E>X? zDh*E5A-Emf;(5DS&y9=WEU&2^tvFOj1WeFZm>H|bx#+(?+oBl{<1yRe@s+pcP}lAg zVldb4JY?0PR<>b*?trG7d>kmq7NF~9a5WK5*^KP=CNwg74*?=|YeSR7U%ppraiWC5 zHALtJ-*5Uip65(Sy9 zzjf^xB?TkBw!Bxw&f@ia{|x^WZFTx_X6C&+FW2bXXt0d~J1;g1dTi8b(2+=;Ph7!J z8kKCS8Tvh2y+_ISmz(2aoFTh(fU$&$>_)x|1ae;EL24+xZ(z{FqFgWUh{rTev0`_c zzpmu}bUj0G*T8PTPuWJavn4-|5qU+C)$J*=>9b^L|d*yLX=9puP&5avfO8yRQtVk1d97q*|gk_{+nTH z{yW3tPc>T27APsVY6xSW&0zdw<4crwdwqG&{n$#s?fg!8SNTf+J4~~)dRde8>ZVO|+v-7N*lcb$9CtBI)r6fGMGdTH!Gv*$8h~2 z-lbJ6{$OBa2@btL?yO!wa$ayxo92>V89@mwkm)UkIQH6q%Sh|+vtex>Ae3%^Q<%>V zVLa;?Pj_Qn;0wAVo3hI(!%0L5NlN14-8L&|!mKh@v!Ntd`yN8${zwwu{v9Q5FZzvc zd`<892hz0DOT*{|SJr7gjZ-uZ3lmJ)p#(J~&)ZPLS?vQ1gOCs=)*?i%p%D<`+5JO8 zbR;|Q8=aKri4IrdYA5s$eDu=&3`SG-%LN*f9Pb>uVkXTWCZC)^p8&w{zBTve2nS*? zSQNFMfE%AoVOi&dqC8`dGTnhYc+K+~{B%NIU z6$IFWqsHEwycJXAYt#$Ya{y*34!N z1K8XTf+aPBe+qet7EVgEu-8`MyT$uEIsPIz-^6Xmhf=iQ&*yL-sjpRdGQ)8$&nOK<$ zEI^J@wj|+Pvb&s1)@~_<%?od_A=pZ*TE42auppzo`_HG>&JUAYD~*)6(ri8iO4gIs z(0;rG0$#WF8l>!d?j@6PA=YpH^!hg8d`9<4PRkg^$Le=c0Ip$w0SxbxEQ}+pqw#sx z=+ej?xl5AIp=)xXi`jVK)CmYtcT1$cUUm6I@;cUXi{c#=5mcjc!FW?dSgoNN z?1~7CN%|643Vv{>%CDvi6KBBkT1z!1E`i&Fq{(f37z?Ve7dD-QtdDXt*4YrwtuA;X zA-)43tp*k`GDpMQWE(d51;y@`ID3fgyNq)R(WclY%EU>#1ls?X-btG%F z(nN>c`<2$%U;{%uen;|Q+1TB5iXAn1>RXPNX>7oVz(yP=Pq5F&5HvXq#$(Bs<g{Hg#`OJM!#Y?vxFTtJn9N3i% zg@!gRiqyL$F0Hi3vu|hRYukF=$k9l{ z?bIyNUF7fCyr*F6yVw=)dqxbv4ikY&)~I)f|8!>Z8xsg|`Eq;GOf}txt>riyaYL=- zbV+iY&rpTr@XpY^0tpV$@`_%Xc9WRE&hzG($n-0U*TCxgaZeIGJr6cH9fBolzDms$ zx8@kNA}*1K=p=IlS%hN_BO_cdutfzM#!!sTG0G_m3YaYUYcNTH{<8CVVbQ-+RKjK@ z?fS-fwhqt&-hO|CcViMBL+CSvaPiAS;Nt!1DAx*Kiw|#9BYLFErb0?0@&(V@2A5>F z-34haiKq{n>Ox*tA~kB7q_W}=E=&$KQOSH}u)S!`otkx5YOG1^t^*l#4#9{aH;U_k_7yLuP3Z zXYJQ}mCXzL7ro2+#!yOXYgl3Kdluizyd8M)p~w%Kp(*=FNH#Qn61Gx16mkM(<6jP* zgPnw#7HQYXyZLWqNwVZLurkrElihZ`O{pn=EVTgbh=`~ljD~t05tIQ4YVRR?y?k&Z z3sO1uX17jualA0}4kbqh$!`lrPS%n_YWg%GXD0EXa3Y9oq=h{(HU-a~rg3r-5G*n> zK^%?*(Cbb{l=#7?ar-F1Dda*`5Ih zZbQ5|cwGh0O4%kx-YkrDyC;>b+eb2d1<#(^qEsJo2Goq&5zK9x`?0N>(@VB6w%?{r z0+7_?qs5SEn|cd^dfQe>w<;^QDSZW{L&9fRBmR0fj#95sl);>6Wla1T(fw@v*twe2 z-LS&3K^ZivaTffrjvnI@CgB{?0?voLP7ti%Sw*(}gRSYX-R~p9Eo}E^0~hL<_v~G$ zjkFw-Z0GqF_2yc=5aw+y-Zk=0<4r%UH+1&wOxGwK*^MQ;#eP1%D!d1(j{W=@jJNeG z#O3%FxZEU|x}ObTz3t6zozSo=SWmE4kk#jobQX$cF;4OH<8Brk=6K%)fRM~~Y$I@X zFTwZzjx+Ym zbQ~XuH#&&5eWd-UB3#B9SlM9ei7}k5^k-4U&Ess-Nw9U4#r6k?*lP`pt)sj90OT75 ztYcHTbDrX@o5 z5$5!h<;_=EqtH!2=OfaJwJ{5D=i-__l2(%Af37?b z7ty>}kI*jFrES_nua{11xtTKTm`qxhn$|B<{TLG=YcoxC$S) zQF-|sAy(cQyGlfqMLx{prZc-H{f9R+pP{v2KC{M1k+>fpYf;Uf=a)2lX_Y#k*{mEL zFhGM0)uka5GK9}^>l4j+t6(E**p!SIU?L?13ac)Cu6-VwAd%FT&M}ru#B}?UbhB$M zy=iuRB|Y&^A>sBbZ1HA)tDd`?ik}oYO5>+(+c zo7kQAAygI!LO7B7NkFm7Gj4@Rf?)kM4*Sz8VB&Q`9nyX;J2pCwEpz9Det@^ z5<5!APX*2l!Lj+={Q|44n9S!)4CWhah4>70_%v2yBbzrF?0h+(_xCfn9f9j*0#Uf? zTsHUL0?^&`?C))0^V6E&qoQ942&W$*{7H{ezkl98uNC7=$ z{@9Y)d&cqWyy80bf^eI?iZs07@)`IHZ%&3SMr7DWGgIi#`PFOGeD)4#B{g&$owp(I zXRCTVl;}u<<`I4mN9SPNhCx(~o6dVFxV*4n{uZ!Gg|91lwDag_^4(_a*%lq;KC={8 z?&KgZb@E)Typ#=v)0AfY7p=)&V}-$VI^xpajNd4FZdW~!m$(P{6A0*r(Y7BQkL~u~ z2T}98u{G5@lkt=(2x&$G=$%2PsUiPiiq3-_T>hX${w3t6#M@SSS&3I?@e0a#M^-tq zXlqTg?ickhLzt{xTcX-I)RV9fhtB z#=+%RCh{k>$Uh~KFMlxL7gwc!;?=plninv=E-|!^0%%V<&d$t#nXygam%3{E1)b7n zNlc#$B1G!nQeW&Ug6vI!CfBj#%Nvb$;S{Q1{*I>H(hEVswVmww`J)x&yO+%?NklXf7YzPEu6fY=k54r%^gojQNl z#(kbsUDQ$9fDJb?+NivLlVkg0n{_PA|B~5IXou7N%iZ`hvg*X8JD_ttm1>VV zNJwD8e7DRWnxkhRFgut`e*H2v7*D^=LHY@H6DR!y5JAiVBBssnrBaB^=nALZe_#sa zT6$QsGv}Q54_?mwAz={($NwH=yx-GMP`X&j`$11P^W^CH1xX{NuaB63N;`*2W*3LT zzgy9id>4NZO(pPtSwJ5UsLfRKZqw5}*c{EIt_ncr_}Q{TAE@%f+6fm=f4a#i_ROIU z_-FywEvNpM?)`P{{Wn45IeKqaY#HypT(vSzFs;txHuqiWbtK!Q#PwqceG8Q1kJf)9 z(OT~p4kr1RKsmV9`&x;_y&0n*i%%NrE6BHvngfM2uHeqTB$JN zW%pyHyuGaD+o7PH^0u<&+d_M*$;c>s!IOU`S{_tgTLTl>ITBJ?gVb-X`=5(&O)?5&w@RUiABt5EtzLSD}3US)>c*8;w?q{B-lZ-_`L%m$c4? zF8HY@x?lsqae5}hqRzGPPM-uEZuYe>=FWWfidl|781C~*KrgZ0R@lgwjqN<W9QUgka>)A;pk6H$54;>;X<^3`n{Jr%}%_Q@5bi6 zKy$=QRK0)RrM!#O-%P@Lfgu+|>*hyxq@ga&Z>jHM4e6VAvYD+cWe0wSv~78E!C@WG zJLXP6L-IoP!t>4sad%z=u)63+XQ~{q4N5f*X|GLW?$l-f?msm$FVXiPuHzxnpg0Q^ zqOOAWpA|Juj=IBjoUURXW95tbXTM>6{{f1wv`_DVTnwue;~5#o9I_k!T|Mh^mb>(7!H>E;9O@3ziz zwvff1uf109N}6;*q)oO~>ZJ(@7ev0JVV0xgKL3inB_o&t-@s$Szb|ZY*7j_xwuJD< zhn%(DCIGZhbhH4_H-FqO1_K)n#A;Z@wED{WyV`CeF@GhqMi9%o8uLF1a zI)_jrhytGETg+s}G2h;gEOQU={{Y+$P$64+Cb3uNdzE5p3RzHU1 zaV^dx-+qaj*nKXJ6#mrD2clwhAbB^^1<%kqaxp0g0tV=`v3mEb^Y=Ly}dQ0{p*wOUr~BB+SHYo z6?jHjit;eum%6-P>A$&`Yo*_ z)#dJhXMTw~@V@-XS-STABUlqR-%$SRhBwe^qbFyQ@Q@f1}In?dmSPZA)?9-V((w3Ps^CtX#@OOn^A@@7@w>Wu9_!Iiz@ig{tF1a0G@$Pre`D1jy zC>LLTiS(9kM`Kg`4_?!cB4T9j0f?SL*Me{^5YY0^v6`2NV^T@~X1kNf?2#KTL!GZ^ zW}(+!WJ-j>&SMf`QLuvpdy^WJzbXQ3bn+kW@0Ryjy#~6u{fG6ft#WocNQ9dmy|!nV zpFcN)cbvzyNmBav1mp{I2Nkj&0I98udT+;_H+c*A;*R>atFq#?`4%eH_jHHle$6gs z_$DBHeNb>9gplca(p89BxkGnNlshvh_YbnH+|C9#%gSv@mg^go+jF-dKE2EePAs(J z%x3wWDPiw_E6T_pa9crAgAE%2s14-{!-a8+3Y4ilpZJ7Hi3?F=7+=W6QWb{770>&E zbs2M!Qu+LkyTVTj(1m8Bm`SF>aE@ba zbjtPwVkj_h_yNjOw8XKKV$rcPh-ijiEi5)4<^bsdi_bLtO^*=ZK|TcUr;`Znqg>f* z$u#1wzb>(lgY^$`*WVtN+v-&-eN&j;>R^FqDNZZyMu|Ov?;T z4DZI%B!bhf^H-vrq+gBik8=Vi-86vDc1z%1g@`6>4}yZG4OXyCQsDLq3T7)Seg<-} zE8E-fN%x|9Lpeijl9CXTL6jTHc|9%bI!RfZDk-}1UfZB}sm-#O0nj%!^pq+#$}I5h zC|JqSGvI0K9PL642V<2|iCr*X{;)p}as?%q z1SRD_v@Ch2N{%za=C|NyjaY+T4z-uFAz_R61@mt`;khE6+VT zy5&G*gvK0EM70*7iH0a_q=feAVob_`^at6OGRikCrCrx3BN>xdVB=5^x!G7BxXVUz zf7DD%U9`}~FUMSo7UMVS{BZmt4SPb5mSnm|9oB*w>s8E1^T8~h*XDYlCucQ{%hYAi zqqm8vo%ChY^h>~L3*C1DPHrs}VX#vnhT`nZ(w>_U%<2}MFLSknkjGVNuTdQuXNs^S z;kgWLbh^9~U~B;B7tRp1mQt7l`jx;MntME-HyFh1jja%ohOU&=nf<1{=nVPH&HJth zzud>vawoVyvE%A0D|3tq50iB6(8_*Lt4t|z?Owoh0>mD|7i|^Nmz`7;)m9DbrEHD4 z2?(*n!#jABMv5oN`&m>soj=alLD+MXBKOX5of@*DQO<&m%z3uzL0cMX0@QeY>^wRy zD4F5?8zwa_um*Tf48Xo9)d6DSrxmh&vEdx44xwT^huLIdw<)A z_B_P6e6V#y+PeGnB%k5O8fWqyNQPeXmXy)oh>RsquDwZ$rtY`+xZRYT;q8dN z4ln5)?cU!mRB{KwjNgzE%+@Pl8tP86y6Yq`8Q#ty5Jn+3xVmN39hy6Yx|g{O4tL{Z zAaT!P){dz*XdR0T$ar=u&(Cb#%EdWD zRun{@8Wnv;AT}?~uRCDQe>yy)lCytq9cw%L=M0MBP`a`lC?DB&mqoZ%IN>uo~HsrI`to^|D0^M$iGZR$*smb%p;gxJWVy&*_)y`knvssq6=k;EaZ6a7eRTg z0^1t@cxuXz*jqd`@Kn9B13pv8Hx^>a_AN2b;Gc|d9R)|R_uAyazsANoV4Q)L&8Yh? zTJ~D68#(?#j=8*pl+X?TrYOFG130SlO8de_6b1Kl=&l}(kH3n_1@o8F>b$^mqRery zWHTFd{MrnFM)Ea3#N!^ay<0;SK-c^gK!GM-O%YA92kj{e<#=&$Xek;Gt9Rq5PT>Wv z@ZLe;v;RL2)Pz7O*7pTS8{=v`^W+2Vrv`V{>7YZI^v z<}VYVP6lX`*ALA6OBq`$0QaoY+nwy~IqEdzLHH@5RBP)5 zR2Cz3GA+fE>HZ~=`Z|*+eeP}UCrA$#()L@5(zcP;rhA&|GooA~iEwDj#D3Ij+qCvB zEpUAU;Ml?T5{cwMZ`!&l80Cd#qh-g2>DmmNF_{L|M)W8?z{A7>48PQAlVaC4YeGjz zLj|*@j%?jT>B2kSv4=yfhR>4*D^lNyM(lhNq66!?P9H=$IWSfb^HbFL1xrWjqDX!& zT+n+>!Th(aDoP>NM~iWU@(ynmI|`?Lt~jeHb2g3~PQ6C!>ya8uW@Za*g+Xx=hB@m? z<_${&KbMhiuk;HPa6$}b}jP)GW z_=R6&hRs6aYrRIw2}i=bd@NV=KawFTY<$c2(L+I-M_JZdr_C<;f*J%rGS=BF=Z#Oe`OEaxwUiOH@z{T1B$G9pkI%jFd63G02|NUPI{QrdlgQmwO zR8>YRDr4m}m8FxSvFX+2wb9a=@@U26$#t>PF_X#-)j_3|l~pmy)y7IIV-=;b^5}M} zhW#2-T3a3+JE^p`Hrl0gk3PM6)pm(i)J6rPG&-TYwAxxqODmriE3d4r00p(2EIXl8 zg`>sAWffy%#l_LuNma3K(J^(gs6qZi;eOHbir9qmnrLZRS+vX8vhs0J)l2~B5{*?w zDG=SJ!K$D}aj{ycrKP;+89jRRI4e;h(VnA2v~!P~TK=d@J={-J$WE=PsvIA!tr%Zf z8mohRS>@BJ%g4sb%P5;o*>2JC^xZuZSr2NKRY7eLh0;|u_TwrIqG+NWS{|was;(*L zZ*=U0(#rAW(J~U&KzBL@Z6{Zi)lGuvrIpdD%1P6sW6GnGs!GeifYGfYk12?lfZK0F1aDccw&FZGXx%UC7M)x=ogOjF;>Ix*m8G;&QK?o+V-;g)DK@=F zbVygR_FVh|~DG$>o(X*n3nLSFfUyausFKDJEi+ zuB!w+>Qqb?BQO*qcM5z)wXQP3Q-2D%xYz_00#sFsn-f@<$0PxzPAbAtOiL>+KDVxP zQf2An^6eFNeT^oIQ~rM|i{O@zD}^T8MIu%wN~M5JbAt-!R7J;5A6Hj7RvqZk0?O2i zNs~-g#@5x;KuuV@blf<&(bz2@dtI&Zdo%=rI82(vU=2p+u~7BGTiO zAEH@ZRa>F9FioKpb?(u-Hk#F$m*Xp@lvkom`8U3t$5@YI_gg%6QWZTTSyNtKIjKAb zH}bc<431Kdi;G>We_GF~BZ`xp{Q-2%bm~@AR$z?&-?f*lqk3p(srzviQU;-2lzKKo zmz7WJE*)noyL^0kOn1=L9suh zm-QPORaH-SJ(tE*oh~O}KTbv^bqT~awC0R!?bw=%>cCY9{DiSpl~c;GXReEqYWMWl z?QUm~uqLIkSWQ;feo_5a-~p6JrGk>0&Gd2DuLMz@K>P`oe?9KSC{-r-$6&W-_HcSB_DsK2dtp!kFho7xF;q|0=<2>0se?-SaAF0 z!uD&+V;WCT`0H{A)L)i!?F!Ep%I#0_4BH3M1V1@C40FzBmzD~+i@C<7lb}JF9MW>E zN#Nh~h>j@lu3@Uc4?@P_v81q8J0A$Y)cK4^Q3WC&7(+CR%@{hD_2^tCs}y*?Fm`V^ zrAxGPZM3G2SqfEJl%-$Clwv+{uBrk=oEEO_QD)vLW|->Ti$(!GKr~Rj)lE7Z*}EIEq^7%y12TgVlw2JQf{tr@mO#W74yvmPr4awX#Bf7wzVp*SAQ*s+t_`pl9ZGbk05JmP1r^^oHjfQslTpm+MLY% zC%_E#A7g?5?Qy^~FDfZ99a&N$&MhfP0xl_O6V#FGS6(_+>?6q$b8I^ffh5|G@D2Nw z1eb;CLxWD7>VB=Hk+NH~qRbTo(}K`ZE3GUYFOBb-bR@IMf}835Rr{fHB^(^!Fei(7 zN;hVL4k+q;8+WYhpY?0of@w*<3!H?kiZTKMQ)`Tv){&{@r4wtI_shW(@0kZZbpkp^ zWDg;>!N(5$j5ckCj%)E!8mKf{5_C4K(&N|w?GhZWvNn>jNfiueNl8uVRJ`YjB_&L8 zHO@96V2&8fLTY1-o`$)!O@LfN&i{m-Q|W+ulvdy-Y6ev^dVmT9j`_H9CO>1#%l=Aq z(gq|aQPIw$5R7Q&>Vcv2=~S@uqB@UcYE(Ua8g6lQ1**K50o3G}NB2O^I8-L-s+tNo zM8zR)>3C&T6EvudSypTUX`Df)D2r>$OKZkXFm8})uT47|N@!%F<0h4kchloR(~k)z zdgd;*bZ4Evh^O1RHqFfm2nTID?M-JfIw~9z)}aHztRQ%s zR$DW+ryHW4PSUEUrzO~-cu;Y{@S%Uky0U2i3_Orz_@RY2lg5ZlDle^#{TY6MCsH}9MeXE=GX}**2Th{ zQ$f3^s;c^r@TZo_l}#HKL}^ZS$!(=D9OAT*bz>D68(CdC6%rL8rz%-a4HlPGjaB`su~f7SaRfOopu&>vpD-(o!%#SUEtnGrD?mp!4lERty{n2|1bD|HUGtCOBEV#9BQJ?qsI&GgZQ*z%N(dp^;@13&n z%oB5_JRQsHdv~|^!6!}bwYXqJpY@krwa0FgUtYcW=gmL9bK9vmtQa%ylg@<$-q?Hc z4H*;PeD3QF>?C?6m5^k9NNDj?V@j zc==a{t?%*J=zRwa-hK9yo8n6sf4AwCj+f_tT|fG?H&00Gv)}WN@4DmQk{d3$;rN5b zEV;RO+Uf7#zR%jyoA=7OdF{BOr@LmoyVu?YWs6IH*to;Nr~mwV-^X(gUDx}fCI9`~ zqH+04->bX!AE$mD%^QBoNu#so_1kIU=S|f=?|#A0HD}i}pY`>pTMxWpb$#BJ*8Ogd zciLsn+AlYr@$s7%Pu+c|8)q-M>8Zun-f;4Hr=4@xu7mgQwr)h}G1b3LpEQ2(J~!9Q zJK@@{pLAc|r{I8x+m1V=(~}JwUa2pd@ZDjTUElhX*{{~OopZ?ik!4q1KcVi(wjKBS zvR#K4u4?Gr{<|ypne%&>rcO&cJly5At1Di8ZNRsOeYv%~=)Kk#T{>z&@4wwOXTmP) zOZpw(CB&=UUmP66=T;8IqRTR{fBIxu;;iHdrsMT@#q)szJI`{RdpBtaM^b| z%-?O~d1t3BzPfCeE5CSP;j4>^zuJG-*N-_Wv;K(PawFGVwf^SsJJg6uqv=3RK# zop-%cdGJ-YmoII**W*>Uk3D$Nez#AXcKv=&JoQqaPGh{e9T#=?_Wq*Nlz#b*JI3dC zJY-}}=HCCgu&~XegW8te^!>i2NB4`IJLK&*`tH)V@59G7%s;EL;hY!FoBsTaUVA?N z;Ct7<++o)%S2w@BXZM?S?Q;I9cjoTC;f97uPaVAXukUtx;nY(i@1@=L=?PCoZtHu* zPggGct?+}b$N#q9FF#d}Yqi^xi;ulz+2L=V^ilU4Um4uE&xK9(M-E#(|E|ZU4P3r| z^CLGsJM)ghnTJii?1V##Hym+6$BRDidhhp_UASex-!6Q4=8P%7?|0bzRSzwGX#cy0 z4PG|rm^E|z9QvP)cfQqXuW#FpnEdjE7nSy%IP{K{`7^v{)?I(z6$`hVH{;{_u6G@n zG2`~{d+qboQBU7;NrxZq=}_qDeVy&~SX`?KS( zUa<4}mG2&P+jq~OanqKg4jeq}w0~{ty3gdY9lzS}=~YL2Cyr{fdeOQWH^;Wj9XoxG zBTm?O)2+GZXROJHyf(h-_7}Xf-`t~T`P~=qaN_Y#&RzFZ`(Jx3?z!_tH!Qhz>DYcB z^c?>5*hfzra`wb&?JD!Vk{S$1&tp)XwU#eiRaTs-aDrQY&$ z?s#r^&vzqR-rGF&0UCF1z*1w%G_kxcPzxkfJGtcVy`mJT+$R5oD zR(BrxeC&hu4Nn&jS$;y(lx6YTKD%&Y=HJ#mc*&0+OnWT*=hnaVJMHgljvdtHmx=5<|32%2D?3IPJ@nO?|K5CY>-&x!^5gwa z{jzr6CvV?>M&1KwZ!8{=_4{e(54v!{QCC*}-e=g|`@a0_Ne|rF^O#retNZZtm9<}- zcfmQgj6G;Z)j?HPMc?}2o8NXl^6ZmtkVf79KQ;oSao!~D0RDf1|CQGNZ2e1PM`aqj z4RwwS?r@Pt^by0%}>p5vJi)Q#yuAgO1y1*m$C4SvVq$@Zjt z&!UPkJ-5?jn?J#vk+u+?p>Tr+G$sDkuMML+aNxi&%IW49L7q`E zm~}Wt4MbBm@E^&&LHLio2(YPThju{tZl-G$HqN2mNASyaIqsS)=u}o$eTG6{4P$GbtVr7>-C*0HOTzf6{#JC zFM0KXxfs#QlT*AGPABOvoZh*R%9lBjQ_(9BMJj?iW)|+^W1D?APLuVpP~ zR^n8#W*J?vr6`w+QxY6q8Rx7^DLbUt$hk|GB%@d53j^E*?Bw`R7VgK8Hq-%~+60Nn zp2y*Eap}rs%Tc3x-GIh1iN`}~mYO!CVZ)m*nNzoNE=?)3yoQNJhR&$rXyMyw;#m#b z!{I@@u<|NFzU4rZ2YGP5%|N1^0aNk$Fth|MM)6KjTYzgiV>)=CV;|+(i95?)t zU|{-A|N$1%m@Y96M)x_SN%+`5tw8Ncx0owycfyo(Fz1q)xY!JW@J`I1T9 z8B^aaPwqIfh(p&}AoHYUD?5rDqB5+lvn@lYBk zH6RXYT`|DG2%VI}e(LBxPTqFVg&mog^rP*I72~BIyhT!jBWGwJWQC}i8bPP}OKRxI zjur&4)R265g!fG#p@a?aAarOR@Yp>uRB zvjGo&cLsi4zWU^qy6(b5&7J5!bO5xYB!y=I!>+W91S!{pm^>tIFTBb-$?V8HtO0PH zEngAgK3IxHE!4D}7F48Ba(G>N8zw`hG#EEQ7@Re5M{sVW4Vt#kHfQ~)2SRMSOj(A; z|4skzOXkL5`j$FQ@%ob6J9RGbG*||NrU@+cXu_5bUb>bJZk@XQEGm#4#9bkE+exo5 zEu1;m@LiH`@lve6@u~vN)?~C^yxY3Ma30{0XS|)l&H#6+%1}b@%l!B~4B0?39%JYj zFG-=}r~}jx;x|*}%dgTWW8R=^Uqi!k-9dX1a@fdRE??&C>eYvby6RuK*N$()8tX1& zMfszVV9e)AcOlo@b!o`Wg*8Z9j-0rZF3o6b(q%}8q%_+1lPxGx_C8+5<;ytYT@&Kg zNj!8I7Bi8Zhf~Mhjd~e|_c!UYXqNF#X5Y&))5@He{qns9_#3|S=&%jJunyh+sm)1- zKg&;i*y+j_{;-l_7~(D>ae+_mkelgwsh$d;v=VM ztUp6~s#$|w0GwL;Caq&LGW?m`47w=i%f!^sWg>aZIk=CaMMS%A#nN)gB60>b*mBLr zIwe{*QDKK+4yd}C z)d&ij#N^wbHOojGH94w72T(1d^NP8C?`UOGp({6P$?}z$=VV)`pX3f7x4iU@2DPAr z#VVa(F^d;I>*0Rrm3~?%;vLY{WLWKclR4bkm?G!k1_zykmwOzeak2f388XsO=B?*7zpvapVHoSa*mo6XYV0CJ|gVs@rP&&>B6U`$Im^BSQ zG1clGKGSv_>ElnFX^X=F)M>utmZhzI=sOj`rudc?aC+gec`@uT>3QWENX5dSa!M#Qe?&a~}B{K)fX+D;+9 z3jcV1HxA5>AwG?Ru~U1`v<=2VVabbtaS(YDaW)P&7vOiiI}zvL_kSsnlYR#nL|lh> z65=Mrb%>86z6Ws*etCHq@lM2XIH)^~xB_t#emK1e@lM3s5br^}6Y+k;t%#2!eiQLw z{G6BmcVGp+Dd9!D4skZ(oro(DA4Xh@xCefY-+-9D>p}llavkCp#9I+Rk9a>~`VTXQ z5nG|p6nyu@hqwZ94&pk*m57@V*CF16xPfAPc;ni1#D@3ULZP{pQ92>pH{%#69pGr4@*q5bq=ypOyWHV8lJ}(V8Ckrf)Xl zt%xTfK8?5@aUH%j+=%!v;ugf~@cYEWh^7-q!};p!2>fP*OfQ2m<_9KfANn5lM0 ziQTFVMzRUPN55Pqe7@bW)l^`2Z#Ea$y&J=3McUoPc1OP5TA}CJ-Fch@8I^kzA^2~U zi$c4rP_72$yVhqa3{_atu|lek{_jrXzfs>hl-q%FH=V7%i$nG0cdU0VQ{664!cHu*MIRgCiz{551L$Z7YTq|%v!c4P!=O`Xgn9tn5#k@s$SkzeHDV+rT z0ni(IB;92Lw;wpR&GB}}M$?=~yR|^CP-Uu+e;WC8zeW%7sRPc6`3S?BABr1*ivuo= zFwAE?XH^NU4e_MbX4BU5w;l6_PZ#Ea(y{4JyDQFx+qEx>CX*nj!b<-3h zjUpt+SKx7?17ETMYZ!b*%bB({NE6>{Ooev$)#gIGcWYRl-M86NU=Nt4*?ky%`F1x5 zPz{ZHo=Z{Au$^nE+%@KWyZ7p_e7kR}CC?t%9A040-WZW*51RJcv%v@qK@j3I34FGo zej9Xu5Pd`SUu#0P;#1gxPqis8(jF-2%%D&=&o})Ds}bKL;Clsp6Mf*d17Ec3>M-UD zaW;qNk$hwAm8Ked)fjvASbJ3-faUgVNZ&{TdB|L}`sx`x_%HR-Hf*XA72S=k^Z+igMFJ0CyOR*W>+DAa8wd)x;+jjs%a-)Mpf zSPS(cSQF(RLw*a&-9q`OlYFVybhX`q@+Cl7vDO%X{}J#&XFYL0w(FnuRBW#{ZxLtf zNbspcm;_!|U_E#W>8?62rM@g7otKc#OQGfs_Noedb%nh)&t9KrUz2BV5c&2kBG2B4 zunnPERM;ygoV`NQ39Xl+vEE!n^%dBwP4i@%XgxX`_@+>s*f!hyzTGy9?Um+>&ef(M z*wWhT5v*n3p*pzFN;-~@jg~@;kE`t2CHCNCHk-=M-ACh!)@g^}?~_CFoXy5r#|0QG z7|&<1zasq{8O1skDEg7X=IcqQ`xxqe1@cc<@^3Z4Z)`N@!3ZWB?ty#*t=Z?oryFxi zHE{G9$ZFt<&oVZ7jPn@cF%H`>9XYGq#ky%fGDiPMz7n16Zwu^d?5_a4?l~*3GM#;;7m9ccdw?TgMGxs{FmMf6 z@9$)c9G4})^}yP{hH&fb4r5-b27U$bR}hz`K`!*^Bnm;C~CFTd6$Pi#7B{T0@)A%Whzx z^b%bo+9)h=w*3TJsy7?7QP@LX5#meytmrYhrlh^)I^@3?$`93hX{gVnVaonPpAp|i zl#9cj^pj9I)6L*pN_k?7<#;07zs%(yCSN zr=CaN0pwkZbsg1pwW-|h-fAwgdpCz+rL>XPZbgxHU#Z;-DL{eBi*$2eR6+|nj3$ZW zwsxW#tDBp!5JABZ5$qh*WMdD17<+p9e@3!S_}Hy9pKPY}BGnl*XHx}0g~}G{ro}%( zX#ud<0)EG__aCMD^=euZZ6!P199E3U@UF-XvSUnTqs$(ZIfe59+UInTfy;2aX;!y( zm7##=n^SZKfir~lp|V_GNBILV=uYY>(O3RR_)1h=fOClhIEVNgX(>lLFB6=0NaF>e zG$uWyOSvb;=y^yNavCEMwt%n=Jn2khh3eCDt%os(6=4mv<*aj9i9YWfc;1JfMjcyl zPBI5;WRm;rb*MF8gD@??s%$D&Wixqo21LbK2iIsF!ww`RY5|vz1>9IH>UezDV*=e2 z+a~8p41+3Ic!6#Tk}=mqj7H?YiTp$7YIpm3y#PE-SD>OP9c7w+jux9vo=qfq9)WY9 zAkKl7|F_rq(mCs-GblQ9+7!`A_g&VeO81SzbQ~+;iBM#oeTOKpw?Ltd!W=LGI|bO8 zyiNw$g=g&%c+Y95<~ZuC_2N88wUgI?>O2J#vS~ZU7=|i55d1@lzNRBsK&wmg9x}H~ zuj!autgi$A3Y?d1I}hh-|5T5>PAq`XreX+-db@0}%5)QWpT%hxQJvZF?_CP;+(15e zKkDC&b2*;tV9%<3SPRiqCw*=?23QGbPk}ZCXLs~1PHFqRM(nb0Rr;?tFNYU7i%11J z*=zyM0}l+uIUo7LNuhe-hc?3h227hes;XSa{O28QD6(9KQ}7l%2Y4^^zMuANSUWzq zcRw~s8^bo6x0+0i3}fXiVYb=bsB>LPTiata33M5|KUy!tFc!ckP&SY%2f?+Yoq^0LFLq(z&_eE1_goRX_QueGCf*1H3AsN8O3^aC<9vqo- z=iIC|xgPDpQ_WkIrdzu>eymMszDdDB%s!m!(pS{F%EM)0%vjZRn(;7I@qAf}veUBL z+BRUWK6ig9dutVDi{-2aR|s}&zq`S&sj#i>2ST77XZPJ|tfBw!J}Wz%SD|$=d3Bb7iq%dJ z(S?-zgg*ztH-%68w_t+vNES+CCBUTd9r%3FMKk>ybYR z`Pcl@erwlt%Gq_z>jdK03Vt_U+}8H?S@?D7JDN7k;_UJlP;v5$4s1x0u8?;x9r~op zyrk@^MVLN2t2*-Z2Jo5&UbQ#l(}O?7M?tok=Cd*@(M=Q4C_jEyUdyYVc!MC@y?Zw>Jp*?5w^Q0fs{bv=SKZ5L z|HFE7Go5wf%&)Pt2bAlYT9o}Q%C716FXbqny13zovXAS(U zfuA+-vj%?Fz|R`^|49Q!E|JnStC)_G=t-t?8ayh(!99cgO#n*OPM4I}`tsv_Rl>&m zhIAA`4_=kz$EWh??1mmAAJ@i939hCyT|9I|MNccvjp@OwCH!nr`M7H4XMz%p&Qs{Y z@dH0}%*@XLDUT|q?NIbMmgI-71L(oA4nOX685{T(uY?UbYjIyf4_*V{$Efd2o0Pxa zEAjZ+4!6h9;|T@F_LlkID)^TY{Q2+yum%Fk?z&bpBq%XODxRX^c`9C|;>{|)S;gB` zyi3JiIn70*-gDiv>5@y#mUuHs!P-mBt+Dn6>> zuT>nLuj*HEe-#f=agmCrsCb@=SE+cjif>l&b`|eZ@m>`lRPj+2f34#1(W-tG_gC={ z6&I;^ii+o{c$JDbtN3OWZ&&dy74KE?K@}fW@z*L2FHrTXxW9^rsJKYQQ&c=p#j8}j zS;aT2c)N;ssd%r7532a6ioaHIc%iCa#r;)0M8!oao}%J;Dqf}H%__cG#oJZ9OT~Lt zd{D(lRs6Mz!;4h?D(wkZ`7vf2T|Y6&$4hNRP)5yFtOFM*g2={tyLgsy+iW;#*cqI&F)@D9FhE zm+?KSyll0659e%!9#(X?ZsjMa;;!{Q-Gwf24!SqG(D}|mr_ld))S&v;V9+4KIN3n| z&AM>5pLBeh zKbCOo+nwc;<`{wYtZ((_ND{V6m@zW6Cr|2a(;Erb}JQhM-)FftMRRTsqn z7Dzw9z~fsgC9ZB@P&;swjQ{1|qvvYrzbwfFC!Xj`SFQX6$#vpVS#dSLr1Y?GBJppib)42i!g7|z`^_rUMzRrx2>`KM9dX!=pLu5DE9J#xK~(>ea)C(?bR=)B5~yxThSF(9Gj`d4(3imq~l zEZK67^-+SNGx(n??(-Ar1}eI0Rqwg@4gHC9qZM8Kzu;H-6X~WYx`uzjZ{AO&TWZj$ z{%<@-zpej?bXO`mui_Ut$Gm)tq6;eft31d2aKFLtp>y@b{~f+~^yuMUUqQ|61+$iT z(*ynte|qYW0V?Iq2xO!O($fR@EQS31uW_Jn45L*a$m&{3WUNllwN?eMQPO0q{qe^N z?pY=i{PSca|6Uz!RN>5L`0NwwO30Z)PtP$fO zU>2o4pL=k*<4YWa^diH&%HhyyB_(49D!G zaHQkY9tOE}?k^&Yv_mTjimi`cs9VS{!es^?Md!JYPXW0|&eFsE$@J z892r{5cmlf=Rl)*!c799!p&6SHIQdecjsqBdm}0zl<3q!3yoJm2l3X&09+@1n5t!eD{=Ixw4E`*82Uld!b%B<15#{+mL<~m5#pvORA{&$(%7X8^=0Pn?)2U(-u0QLC~$8G_z zOpihf0s>H^5o= zzw?X(pA-5gQvrPMxd*_hO8+zfr#%k<&_rb`wfl$YYSd~KmA^k9(3#jUtV|rDvM)w~ zzb%%29_|*oD{)=w*M#gOk()pTg|PQPu21AXI|86dL{9`55V@0amh3l+Za#q7BKMY9 zfMLRZ5-kmi+`+I0zeR9cOGGZ|%pWdTh)R)L9t0R6!77n^D|Mh%g4H7T_Q?Qk608-u z7ghj_lwiHcjT#D27i=$UMDAbU>-=^RE60EC{GI?EGIxu}T}-(#A}$p+)+n^%>tJyX z(*nmSGFB^$$h3%CtLagY-&E(M3@b(w*|sM<4Y=E8Ew_APL!NXJ{p<8Od^fkFcP0g^amQQGr-U(nv;T8(tP zbv^zvE!iZ~$^ssp#^1fJUo+L+1{GOUJC!26rVymtqv;b8@z&Rf^cz(9zCo&a$OoD3 zbN!VGz90e`kZ0NnV*7(&M|>o@G~VjKUlu6|30WDDYn~kF*z|xsz*Iwsis~8HiAsr7 zOPbngzmQ318Kl1mk+y5bGj}OSe-pi#Nw*rL&7DX!&%M#0dN_I~Q$1o((P)zrJ`71T zkEak+Ezz$t)ggn5ELBo5S4ny^#<=NG#}7aDCf@3$Oma=C zZFi1A=Hu~0IWrf3Sy|*cWF#{6!l` zcSn=rJXa1x`gieURGw?8(kJ70GK)u;1*##Rq6+rM6l8iT{#7P;g9u2+`u_7`3mrN)4kbXLzOwRLef24me<#-6fm|A5zKyo}2KN!9s-a4Ed1TiL0 zkw7D=y)Mm@ITEDL#?NHZ8iRCgh?I>g-(h;*_G{quyD%l1Ua+xuTH&T#cW9< z?L{*c&G(vKvVBGLcb*62%j|tMJsfqLUg5%4eFr2m?PnlLFNXIry~5*D3(tqhrK4Ijq$!UDV>E(~iMLNvnqCs4IH{4XEKijbnT{Us` z%6Xc97z?UR#Fuw9|8VJmC)U+0(flK%vtW_@ISjb<7MeFkvV2~BC^@cC3?%7e;70sG zoh-N&RmY@V}BCUE>leaH44?Fs2xV zzib54LsXm^fLgc^xXeS3tRU=0;T8U+wu&fp;AhaXe}!Wa@-+Rc`2bcjVAbEJ`F9lq z4!tfKz-k8E`mm({)-d4JE6^MMwLF{q^s+Pnzla_MZUKER`pbVY1KIlSnE=)?5Y!L$ z2C!bvR{Ea`0bIg4mAZqtUCOMh^szLtHZV}F=fnZnz(B1&n(DcXfqK0U_18uQ*66>( zQ1WkLZVmd?J^+_S%GttYw&|}g2JlM;n)NG5@mDgiL$8|w;3@`M z^qn+OZsnHl)+b|i?Z29HTJV>H4(OYxOd|t_^rf=^T*tr>-9Zd) zVBna3%~Sw4GH^nFkQO92F>tE#ML0qK%?x01aRaSlws9MTD#rLIRX7bEUf+89W=XS>)ojvcQEUq{yderpShK2 zo)59m_CH{zPg~@>{X1=ax(`o1pmQ31%N(y6&LGDl<)wl1wM! z+y7d6x2PPb*gBE^kz%?%ssw<8`J_iPnOomdtZC^EX#ik48GPccv?W=20Bs!ktra`2 zZrrMTU#7+OCDlValgx0nGpT@g&5Vft2GnkSngf6}vIKxv^PC28X0-VkM4m6vkAvsM zzJ?snr<9%_`z)mo4MMs$W*5>U%>$8M%JV^fSk_&ZE$~aTkHBqZJ;?jUFjFsWb|4w> zixM^`YO}wGr_S0hVbNWieHyZ79Z;}Gn>_&5m-Uu{-LQ^8)@0io;LOd)y2BzDp2yJ# zS{SZK3nb!kab@x2{qouIBL6kL2guesS)V{DqZR$9f zvY2{FAI#QM-@%v*!}JH#kjNe%gQ)n20JJo8vb7sp!U`TbMcK*Q=*OW`^&!Y`Ya>1I zRYRh-}P=*B<9;pO45U**&?a`Fs)-q^Kb$dHs&x_zSJlebvsF6=%1{)D4dHHf| zwoeRRIURZBL^&wKt$zz$<#@OcX@Yak=xz83+a(V{hF2=EnA(H0ff!l zLcJ3hX}8UTjj+HYqm@b0$9PA^Dw7jF&~=}w>`UOj6xfZi+%nIt(A z&+$0myyirt^BtqQ+nSJ=i2vBCjY{OTlctl2kLtlD4sZB745Cpz&1;B$->8AMWVkdI zX4D`hOlArwQk5`ikZhEn0k4f;}z&hUgEBxhk)#FIW)fca;Xn`l!Rh~a*g1&qF zGfe-YLH}upo>$~u7GoZoG13P1Ag`aF9Zax|MQ^Y+gKnkG0dN^XPb_6P^c9#igWY4v zZru6?%(THo2E2Lg5r29G4K$#ymWITalQpc;K<8$#KKH@(~&2a;+kHM0(ql& zwt>|VU0%@qDV0e>6KeCy9d}ZhE8yhvD&jsshNgR{%$R7Ja(#L!X7s$V3P!IRdl0h{eNhI02@cxHR_ecnvhybDw9Bv3$wB5#ilW_XHK`P3 zJtRopWOFYR%@5>9+0Kwaq@Mh4s`IvBMCaStULE>!@XL>8z^yybU-=FOyxd>;G2CB1 z&6BPpE7trdxQ#rHYV)OkiMP_HkJ$(VNJt}m7|qr^1!%))ThAPziz(ew5No{_aag9rT;fs)7X0>7frD48YBRSKp8hz{5b2o{NE9 z(47IF{va`s{vx2?1&b}{!A-*oa0-B)3F^wCgm zL4V#+RqKzSQ3c7IQ>)*R3BbodyhECXS=57p68**@0Hlg5^(tb} zE0RyX^+>3=s5b-W>s9c7MSYoDwSEJZMny^7d$qc?2*5xF>h$w5IEn@_P_Lgx_ZOuw zgB5xlJbzKDqXbf~seA&~S>)#_vQ}s#=b-t;-PobVTXzER1Yx-)ad8Kri7Uj+70Yo7 zTAFFS2FJ;I15BrMNK6uzm{_%+2Vf`zR{e2wTxqsvAaWe~P0(iPh`6W0!L84k4j_lc z^6Gzp+bYdvv6A$cFlI|fG0;zcW-fp{CiCeJz|oWzF_5BfC!m;tfS!e8xJ;3}|m@k|P#+(0@gG9K`i%dL8L;PC-`^t7Q5ZMr-*rnWn8&`E;4S27{u!TBi43i1aL(z5|*lpDojG6d=7w zrq^IPC|@ko-w=MeOg|Ef^v#?ua)hleh7!KdhVT_G$Ll?m5-Jju5@CJVoTQa0T_%$-53bdqu|tw>mH=7d#QqnqB~_236lxk>7mVhz-^{I_=Kxqkm63^q|VOEg}FM!qrw`~3wPdb zbcc9MM34}gb2U)naly+ctCklBMR>*Ug_WGRByBZF@4(O%&nQyov{`_jm5@WSc}_xZ zE$^>rO;EfitQ(0<9J*E<7EZE4%}MJm@xCO@*7EMa4C52Wg!N@2rA3YStB{L6XWn!` zpNfKiAj{!=VkDr?R2|OKRR3`ad9}RE8PvwlOje?GPRgN7Q*^(6RO20RUE*_7bQvJJ z{GpoizJeG&@r|&$p-L&@DPbqWL*_|{kuA(7>-bP+m}%ViD5puGET$RjkmYkm%?Iyr z6YDRa#Q4r+rCjF|X~_KE6nznkaqkpBrzJ#U5bwO>SO8>;7?bs5D!|Q;HFa#h z(=^iI1=BhB&#an=Gfi~?ayw6Bq=CY#wxeCE&@ zjEFQx-_9~UN{Z4YL^6>S@vIW8p`nYsr{NrYVv@O?29<>IV{T>#T=70zYmzPS?PJsyzXZ2L8!Z0AQLOqx0R5kNs_Qa3;Wv+YGdCC*o<@#zw(bjHmDlp&!i zr$$^dB~nE2?b=c_ecmn8M7Rk z{i4ZQ8LDuf(NDLK;l3nE9nKvzZeErUntdz{`&sdp$@+e%;6bAxcktV$5#J%p;VdV8 z9Wo8mAcxzTj1va&j%4F?J~I%|yAtv_XJOwX-jh(k`94jdhb5Hl++76deF+7fpI{CU zADCk30Hg%1KtEf>RI`<8bpC;wUu7P$h|C0Gp;k3H*nqOkPtWo2IXL zYdG?ls31hdsc$4FnkwV1gOF$KGXj--VJf9bh)a;?PauzNaGXwLZy;NoG0mY#g2}cK z8UIl{FJnKviHP@7`@5M(JHRE+TLI+>x7qp{vZU>L%(>*XK^cK2;lF*AzlXed>u>Rw zm!bbaB7y%X=1ajT-ufZsQ)9bhXt(Dl5QyxfaO&|^0f31{btWPZ*|eaDxAr%P$YDuN z9hF#aWRnMLuLuPfQVt14-t5N(HyH)Vy>T|m+-;O0FJ~Zk8>6!j}(IV0&|c|(q=xO7KZbD;vZ()J0Nh7uXG4uZ0>ZC(7 z@x7TZcO1@3?0`;7O1JY6EiQgA^Fr0DP59*!fM?9+E#SFo3Z_VTa4tq$!lSUCo0>Wm zTAzCRbWlyb4%sGc!ZxaFwk4hxo%tzZD%NEq9pxtBS zc}a;rYBT_OUQ($)4(B&Uo|jbVm%>EG4CFG^`pszm7`Y{@)i)LckcTJr`q*#)0VZ3+ zxA$Yxxh)NP7N&wR8Jx34za|nuCIgN7_Bj9s$IzP++jROI`PIj5r%aaclO&R?Nn;(bdWBBT{o3gXzsULft^ zE^ISl2K$s5#7;>EdStkh4(V;?Rs%hM0nkAMz1u*ahfy!`4RnivzBUMSiGki>po^VA zml^101MMc>6$W~nfi8h$Vr+P~09>)n+^Ep;Rv7-u&6aSPYD1$ z-9T3x=%-*^Vy4l8Dg!-(=8sthb)|v6axu^~26c&nj+zVfe1ke@p#8MSSYV*D4fJPZ zHj4~&z(6~(juwjzw9i0K9treP1MM}?bBchz$dJTspdY4H&T@m=VW8*Yib$+9&{hMz zs~^y-4YX#UYiZN4)YWV+ z`jCOPl1?@n=mQ3N4@QBw+(7R$(6_-|i7Ubj?n~hTpwRJF^31V?Wyt)ck-6I_bK@wW zuQFJ*80a_}(btCaUfX8gVW1Q9fo=>}JM(4(y}lIa>kRZZ1AUs-CD$A1MgzT(#`_Hh zdW(V1As>9BQDuXHo)88qnuN3Rx+wTgu*v!@Hr?;`K7)@fkQLNtJ z_8u)U?laJ}26_?A20ILNwSg|E0{VUfU1gx3$piWU16`@m8T7`W7XxH9`K1XCEh`#8 z?4Us)-Wl$s9LU!ot>!9mz#{$-ZhH^I&pC&beIT57!J6|Ca!h}ekk$DqrUvo4gdEOQ z(*V68A-D5!V*RFsyw2B?0KFw4pR>6Spo8JOnhQ98P5$F;31vGo7XmsYp`bI3hRiz> zDseu6=|H?Ip-QK33842RROMW{6wqM_RXZ&ifZmr-t+UJo=mQDWJO55Y{7({E;~WQj z6h|b~;A|}i^r3{dIA_fR^k)e*IzJ+h@fQhgbACXJ&W|M2?2Mz4^Ra|>IQNm?Ix3+S zXYGZ6K9OzT?L0Ug&@l2`)ev|jp#KDo~6|y zFVm?YAIX^|{JjCM)F#}u0Q7owjuC|T^DTGsW%;=(bYy&_Ri24-V}g^m37mPEzk$cK_Mi}A6+!h;u0h{Yu|Blvm= z%CMP@-@C;oR0BPrmtxVXSj4h5X7!GzS0d5CBZ@P%cN7K<3kRkTl5^kPJ1z}4cm}1m zShn5+M(KtRREsaA{+sMo)W%P6W7)bFdsSUW4lC-H&;i2SM^SqX-faE8K8iZ{o}#{x zOyxm?S~IA5bUbTNH@~B(X*Dk*`;MYLAWnu2kGqll!Ir+NO5+;{u{@}n`>HCnLyF1R z0#N_epl()7GU$SNPNve4NsE1tOlwv@&qUzR{co$%RegY7)~_es>DtUeg`O8Ce($rH z2IDmOL2^f}K7NHYO!U^Oc97$L#z6Gas@|Ln#IpvXr&hHM-6Nh;2y=I>ieA+c&nrZv zL#xUr!+pU(z`7?4AiuNMXTA>NWl_bh9ub;0wmVxy2Hju;faDGr+N6V6`Gwizyg)&3 z2W49_=!M!T2343gDQYUHV&jUK%J_82q?8h16XU)EF>J*sOEp|?l#Rt&gyx3_196ve z;h-@rUWKLo&L9iZV!x)*zAq4WzpUdeB?%em5ra% za`OlGArmy;t8()Pk0xqs%zR{y9?Y)?3|a%XFqo&zzSimm$S4~eM+K~F`v52(?EaD~ zjJMJ&Snij|Cx;F0{tYTIA0)mgA2xV6^Ua%$Ov_+io@*&(@W@H>@ggN;{;q;*q?5Z*h4^ujj+rZ} zlow*6awz2aT`3S{S<&c(m`!C!mnYI&EHRIx##>(_nFzl#t zoObQ1MOxmHy6lT6&0Xb6sH3!$e+CvMQ4{#hAD0!%jG8FrpOJv{CgB?Zfl?P}QIq4@ zmGpIW#~w0jKL2FOHIf)DlIeI#FNvo1p_A4^+v0{yUUZ7>;NjQQR zs5zFC(cO?a^BVxxCunlMG1HR+ps#fVxQSac?Zg2$Ky=5x3rRND7q$7X*^zx^Chs0a z;Ss7~d1knX!|J}TmFrlU$=i7AWnSd1%H-eeS(|8~vRVQ3f}2>A$?qTzT7X?arqM5} z(C_x3w6l?5>91L~42UA?_ZYfU#sA8rv{p7BhGGwJW2>(wNiq2NFIYFx(dh^#59AU# zh8#a5_M&_2f$@Zc?ld?tZTbSup3a?d0MI_dECI$zx=%w$MTl~A1A2vK&*om91Qh*D zv;T~GllG9RU4&9$;6aalShsxmEKv`twIE-O&~trzo zNIZ{Vz8?Usmp?^7^~CE*RlU|BMVVZEBUMlATyW@d#LK{5iTo`H;%NX6Bk>Rcj{tZJi8l}i4#W5~3WtSK7qB2;l55VT=bx%C=J z48OvUJ+gZ@sDkg=Ou7^kvQ^`vVImMA0UnKZHOR^aljZh z#ylJ?*#}JH^iWP;L}@Lh_d;ZNWGNENKc{Xv5IMAR^v^nAOS4<$kz-|!ww7#G>^uvnc75LBeM;zk)`cib#^SwH9EvK znz@3{A?V6(lK$d8#mD3`_?U)KN-JMd4(~auo5+HDU>E3`l|sjKF~g!MV>pQslM9#W znw`XHa+$8#!-&Q;d;l{Mf?u;ml55Hr_w6E6{WI*c>d3}lX1qe14H@pMY(x_cnf3(q4OEY4}!Uw$Q; zVb1O*Mq?I=;r#5vb{^T2+j(TKBOa;sOP6cr;e5`AZZ{9N6NQV8?93zh#LhPutWsAj zuGh?C`tjjlU)RPYWKS~O<@a#E=Ab7C0=u#B!Z6F`_QPZ(1+P(xg@ z)Kej8T^F=V>srVhxWx%vN=hr=k<-eKPX-71_CVuhkQxs*Q~Zdg@i<%BD!3gYpH3dd z?4$L2AUXQIB=JoO)#O@Bdn z8=*Jf#$T7QfEH&B7%EE;ddG}qW~*RpT3G~MNF(Jc4b_6r4?j zcpf31-i&VI2B7an{@n;-Gk~{{_#;9Tk(ir-iKC?eg5{_x9=6YGy+VZ4*%=^8LEz5bgv2ETP-nk| z#H$EVRE9fyICfZr5xBE`O3OkE5>KPEw;+Er0(bUqBpySEA`PJ^+I3=QmVa z!?ac+yfCBN_l1b5pDzZ{Vg&BzUT#by2;9$`koW~c6qVtAHes^)8W=kb>Z#XB#feag z6hV(j&anN4_|qWYiZWLsaKAr^#BK!c@;@Q*K7wVf;`E~~$3mTIYEb#6Pzr|5Psq9~ zn1gZpBWuY-BApQAMXHdPf`F&zZvcBkVjHP`oQblFGi>4@)d%u*2;wCGyOG#Mz#afc zk@yI~{1*UrtRkZjEQMX=f1{&+`mEhQCEs5IMyblrCAxQg6%~(anTY>lug0#OhX@58M#5>~%(*6R{ z{&F$ZW+F)YOPBW70>n;2vi%K__V+g+jv`1uqncpW9As9340nAoVzR%=-Z)W1koIQ| z*9cZA+QZTjl>=T$Oexi@hJk^VBC2) zl18x9bZtW?8*B~PU`aotF=CPkVBK~pbx2}{T(3?+hd8`29bl?xvEtzMNMgn!S};0z zZIhU>j*M&2GJ2`9X9h2tHTP(g6erT<^6vv;!|SLM>3mq{;Pumq^fD^xU9_4=FQBxQ zb_n8RIxkwST=SRdyi6LjY7VYg(i7Aab=&a4KY$x&qGnNdgp%^7t* z@;*-I?VCBh%#h>bbRJM%Uc`Q!UKx_(9vGghSls8gkJM-5t{BM?!QgOY70S*!~4>C#kUH}me~lAyt3XQUmTf^5m1Z}xfW(E z9+1aNbp!F%2SQwH49+>q4V}M|o=EjYzA+J`ucRjt@C3*nM<}^RHPa*})1<0QcaOpf z%}8O%$B)>P-tBs@X48Ei9Nt4<(=`nO0Ro$D00}<=o9<*JCL(BIG%R-Cs5rr%LH%}m zx9|$ZZykt!fv||&airPsr*|;RJCSh*LKGEazIy>Zk6`(;5;ruh7()Uzu?LwGs?$iN zN+EF5nQmE6^^*tr9LzpL;IW;Ug162Qcx(re7>Qu{rQ#H-s?!Sf-q7fqu~Ny@TtO=q zR<2yQjF*em30n9WMdE-r`aP3j#k;^@5#C=_)dSgwLR?U8e20va9WpF;cF2%*PN0P^ z{Vp+i%Y15Nx}e^#yj->(ixYlC(+XH$AKGl)ke)`~U{MOzy$IG@sMt+%w2Y}y<$UZu zC)><#t1oQICSl|z_ZkQKh3ULUYu+H)e;leNxf0bZCW4Vv%QL9q354FQlekoQGd5fK z=$au2asVw%uX-584+8Nrg74!oFtQrV;OX*+V(2baNjFtV(pZ>IF1)6wPq%ynWVK(@ z=)IV0#8ZmYw2Ib{rgg|1y1z^DnW5q-7Jg#0mWXWqCa#k8hM#4V-$5j;j+C~$f94N*q2l^T2Y4D+M`R+ z@=(z$Wl>KWR>26P`*bau-lgc~P|>Zj=tvaHp`t^&7A@*h^qEl6t7XwSC^n0VmUk_B zVV9z(Lq)HVMYo{XW-40UrDzn*eX(o?*Gf`RIrCygBzF(Ai5L&6$s;a+vDBn@Gybgv z+$uk!>98`_8fmVNqNWEC!U+HE-HJ+UfnAE)bjypticj&!9YEa(;nsU3O%}$>Ey%!_ zgzahJ4u$_3xZk$p$9NPzUyd&bh#_S$Y8orC#6c@ux&)QYNbe?yhZjR?M*1ikQd;t; zbmU~G3$p$CJEZ`>Fv(an?Eyy`f!XN+BCikNjshVrfEi{z)Dg+YJ;T#2L_ejF3m_&KHiPK35W|s@VLb@z5SU?eh~WWZ2oh%a z0P?pZMDSM;!AddI&@a8=&!mKTlHo@nJYq0>D#S1VS^*Mf*ee5X0V6~dc9yUjMD-zt z#gbta2qz)1ga<_mfMsbm-gVGaT_jJiv8tX4_$Fi4o;FOa_qA!21`h7BN^GtppJ zCK)~k!WIN(m>go*LJUE|4F87wPZ1(6@67NBh#s40Ff5l0eS>imiogu>Lkt}>vx0;f z&PM(Wgov9uGYo=g;3VVBY`k2HHGyy&g6#x`+@Vx!1>=`B*+8jlYxcgy&Qbt{AD160X{1JGEm3>A2@#*n92YjIDaY244Q-0 z_*Vg5jcavZFN6>u1bEFv#}njdKM16g2y&nEL4eQt<=*Cqe8F2QyrB-o8Ux(~EqCSa zs4-B?rTFfpTJ6j|>)4|KN#9_X6DGJDPCEpL{m+bT89<~hEv^ZVH+zEdb9AwfdUf#F(6tHB6;^#A{%iMh|dvh#KK@~ z(Hc!)TOP2B)j+3aLjZ&*!kRY%vmVfDgfQzxCaq!;AcSnLYCBRd&c*mekkxi9%L@9w1HcD=9 zN?{JSn3I%}($+Pu6LC6dSu?eniuMA<1j`^8&+2hmpgOfgp8wUSKrw zyaI^z2vUbhQo=JpoJOz_3xlym3p!9;GIaO{pa%^HcZ4Xyn%@KF9zeGv*hz;O*DEnX zDeiV4Mel&+UXZgsPlEmn1kEx{6-byN_es~)Vh?~d)K(lliFl>gzmh!U0OF+skml=B zdQF}_8?d@T}B?{B1--v(jZD8b@M> zS?M71Uq^`ewaS+Z9%++{LS^cSuRUP-E977u+H=th2%4Q<(`XJ68Yv7kendpTk$oX) z0%VyekdDCbXB2L1*Qwt6C6vplD&qrEHV zADb)lVV=X#gW|h1cAE{Vd(Y>>B*e67syn_*8%pN+DC)c)L2CZHv^>&$U?ko?L6GM8 zeHxz{JqQHdv)YJ-!PufTka?a-vx_A_Yol;*4VoyzntuVzT40tVuz6k|GEXBFGS9Em zECnEE)$RrT^9Y({&pFKVMNFOIxNM`?f^ux0$J2OUE6wwBDYce7BnPzbrtz>hzJ-5l zNFQYQY@Y8*ef$IU{uM!*=eubJYEGJ+tL^lsV&QqmuRcnKlyfJf72PB+Z+lQi}d zL-TObi@@gj{x;C#5t@U{2qbKt7a@N!(U5umIYbi#O=!{dAoA}+i1pE zgZMbjvITOm4*!BOA0kNe)Resl+?25-TF5*g-RS5UGGy)E$Sz;hNFRNYv(Q^n9|4=mCXQNw;64-|> z2b<&#eI*&kIAa*6?GKl;K5mIwW|8Dv>_da*>UM~Hm^f+6T$8pd1px`PcK>jQxz$)2|Qh-%ydF>00RcT{MtxA9fLxAL0 zvcacL3gEpQ6nN5PgidM$WAFGbqQ5-Fj(5DQrZ8?i7L zW3gsNbr->t$IQmP9P(Eo@X~C+<+4^R&4{Kp&2j=I*`{6s%?k)xL{Jf3%1bkMVLT|N zEA90HNA88`X}qx1l3Oy6T`6^RM0t6bFF&FwagJ(RWm*OqU_=r85Q6l|m1%s*Py$4d zklYoOX=6x<4+3!?Lfi?A%736*xoD`8N~O=ve1yPW`DAD|3dTSfkg!+oTZ}>o?3KR` z(KLW2a+@PKl-sL699=B0F{~5cFYK8?i7LTeK4(qo6ppG4#W_byk=Z?)U#hE*Tbdmc)ghnbf)<>pw`x=Ghc#qhn2)9Zr z=sp4LGL#i0p?bE0j5J;vYwotu$nKpcFU7_qTkh9-r}3NAj-gmeAiH8Baut z7C|X5#%fw(fxLd&1w;&8gC!R5#g`vfT8Rbxjp-P=5KAoh1zqUI&>dT1!4(6*%#W*} z#DZ-!23_~yq#&_~-vrW9PA>qUUI@Fg#^5X8OlQ8P3+Sdy@-;1O=WALQ;%mB^_@>e% zl_=j`chQYrqD8(0SqiI64CminyYA|VbOfjIl3=2hrQnzG5~E~#p_XXp*Njr>+YX7* zk_RoG6Qko<{w6Qd4*u3w>Jn;~{F?6hlP&;$xX_Y!z<9)IKkw$X%h7r~ZW+PcX3v9Z zk@i56Mhq`QudhRp7i*{e+!t>G@ft#(6>Bjio%W9-%Kl~OP=v6Xmtq=JoP}0Rw$$c# z6oRw34_PZfvkYM%O&bOsF0)mMFhiDiOaiJrL>K*<|IRarr7y7 z5uppkFdJ`7S|P?Bgb}~5BwP)#{sHi}griOfvuz~Ya7^WN=V$4zScaB9S~Y~?r|ix= z&|A10jDMorCsgy+P|X%L;?>}`9AN}maF~TJEgu8iLbyq@2)CJPJ_-191WQ@hntkmx zKRy`r@>d%Tn`D*kv;CK$ng!q2`f-ji5Mc!Q)iAM;+|44u^AW~uRmEw1<3QbJeo9?J zp+AD~)V2&4y;m%@)uKPbbwcD5g8Rmn!Dl`(r;-U@$28P8HhIv2- z?gkn=EddPFD%eeh%PMSP2f zh$FNW7=yJw0sNUm0l`n2O*$Nqk?)^EbDC|Bz zcjN^Ss1l(!pY`1*J=t48`~e}7S?`dn)8I<_Ae>j7iyEHwM-06h&W@gyGScvttrkhg zT;c&g{{ZGCkiUQsNxxST5Bj<9!eN~nLS%FrkUJ%E3J{fq{2~j;ha{5hxEUdgPSrnA zmEm1J8a&VWZ8eJ!)5-dmpgDnHIj(4E^Fdcx>rj)O3V#tQY@{&k_z}CJ??;az$|XogT(8)+pxeW5Rlptq^fM-P z_ZD%V!jt<5e_8?i01Q_|U={wy4*052VfcO1rKtQvmHQS-8F~mGtB_wktZ7$uEfTRn z<$j1FmMsbhy+iPM`!zaMpt)Ueh~h43WoG+gtV-B^?(z>HlXSc`inD_>_d8yez=izY z4!>}Hmwzpj*=w2XivL5|d4N|@bPs|L>A$Bv4M*aa0E7VHfh`2EhA+0BB!{@?FD&q?N-Ic?6Aot>SX-6N5z zd;_egtB(Ed9jMeXrl@PVu%?T~qOLu3G9e0!x{efm>7uWw>pbOI%VnUb>xG&Y)kR&e z5Y75_T~RmfAK9OBuT|9Dq>HGvqFR%_vxKxcP*h)pC_2e4%$5((6^+!UjDOd(0!uaH z;h0l=+o=_G{-yS=^DlL*`X_y@D0PW$ir*yZ2FBhwhmtlk6=pR>X*yzNUv)gxbTdM$ zN9p?dM)nu1xEEz8&+zf7q&vC8*VXX99bW!Gdn?K}Z;W*3eyFI43gK}FmVJuMOA7Al zz+<;sJyy@$o^_s?_Yc{{P8i*bt4%?3rc#4CU|d{nHpa_4fMoZQk+gt^5f@hglanVh7rLaHPYjSId1-aSJEgYGit*~|*t;;9o5MBLX6Yg; zNtoM<(%g5MiMZ!kUnT{cZ3>AO0OzUOIq zemp{q!yy^`+;yX8aB+|V#yr(Ik7&*U^nwxdRP|QyXMr)(;8F_%2Jwg+7$c>Qd1^== zCT|A1TsTCuO;@Lw+{*-i)OaUm=D9P#P69eFErrX>cb^4+1kjcjYvJles1pOQy6E_+ z6hm-gsgXs~@LeuKov_sb(2G!yK*Ue|?IJV^-Vp#-IvE(hvJ!QvB;QD3mFnv$iZqyR_1uV#>qU>--{ksw7K28c`N|oB+9F~`E?qqH zf;~s=Ez@r>4YEvTx6Djb46wP8=M$W%Hg_?Kh9)c|SKi~7Upl$x2DwgjvZc#Nd{toB ziLSDA83wm1on_{lv8L&;j+d|q)x%h*N^pm(forTlQw)3)81T(MU~{F=(HX&jAALMT zZ)WKPB>JMIi(4Hmohw?zud`ruJ}q!*aNrWX|6FDeaohV3B|7PHxK-S(lGztyPTag? zls&fvRL_h*PjELGPfU?Ml$|%0bR<*GtIBR7>8MG+Nt=qt^bBIXYltVA5v|(<=*ilJ zwH?R1x}`tjw!XU;udiRKa!Si^BztZ{So3u@ko_y`_wmL$C=^zm;Ka+#h$k=n#VZ<% zuPpl*iSDW+TfV;+uQmFd+*@SAFs-_Qj4JLqXiw8KyrxxGifqNSSu?SCZfw*xnc3xSw!)0J4;=;adCr+o7vxF^|(Q*$S7oo zMs=f3vvH>{YzweC4{*DJ+)Uy|Abt!;!phpn@m5J0-A6i&bgx16(@$Swe~Wp^#;vha zy6J&MKgC=_f9?_0>GQ;*3|%i{U<(kNZ~3M7nJL|BOK}`O6=)bxo&Jcg;YXz9iFZsk zO3JTJ!}Wm%KNV;gSe?Gl*N}S*Z61i-8P=e)+Is^H8wjsEs5-sf9P4>kB)W*ylVPc- zAL;f4X#~8Cl2S>;ODczedDMv$yT}UlfX&e=I<%j0-*x;HJzIZnNp;qCF)LLx4wGX5 zt)i7AE&zfmnqrmsRkX79zf{q!?Rg6zu;{1S`4%gx^IM;akw;;B5d+Tw-ewSwg#{Og zTw{fg)W&d>PCK<6cL!SiRM6C_s~cS_TBRISD5(%-($tP6F$@UGvF(6z{I{kSE3k|* zm5z0?$g%hoz10G)Z zFNOHU5WLP58Ca_NnvjD~p!qS?=mryXc2(qY^&LoFBLU$~G*?OWz^a3=lXVj;AZ z31a%u6D8e8Zx%!@nxJn1aDk4Ri!!glM?F1@p|EP46HUq$sjZRp0HdD>riCt?v#IEl$gR;}N{tSUK=R;Vj84kZU5> znX9YX3jgKQ%_TsK6NRJ?e!c?TB_u9CS6B6y%TKpayw3ob75!_fbh2?F1o?e^~l@=zf2$TuPTo^~~bn zr3(nI+?J$z9i`~$vV@ZA_0u*pvQ*OJH7(P()I?qWPOqhDrY7deSdjj5zNGu^qJH#k z?9`~4rpW?bYRpXcq^eWRg1S!GQjcUh)KcnynQb1;aW?G&`UDic(KWYR%c^>aak>3l zR@Hw9Rc&s$mQ|@!Npf%Fo@c6pd%@*Z5x#J4?gh`U3ho6js0!Z;URV{|MWM~aY)uu@ zs`?Gka%z>X2pstBcX!>#Xp}kJX~s;#$}#hGPIqRNyJDcJN?rT8#3D2>o2qAW9rvuN z$hBzEi9*ZKTpobfe=L`&-hmeTk~R8=;g$BVa*Pv`Pan%qc3H*Fx5#bOX6zn|n1Q0W zGx{gnXm(@i#zb>+l`d5erUbLL6r^%+s$4Xs(tc z3<@*MaX2xWSz*R8a=bwL{b`b(CF$&E4kF!1+q+Xaq8CWCP%^wL0u52KJpMj0EHn?7 zvd1cPCbRA zjjXf`9nE?K(4{%+O=)f~DdcP5&kLtmrMw309Oy$1dq(0R}} zXl6BG_ZY|d7|1Tg-!yaRZRbg~lFpH;?}zwd0GE@rs8&?x36RsGdO=x6&e=fcRV|>I zd%CB<9|un9H5pn*xAsc-`7Mynm3EMOw8b+w6tIqXI>N2QbR)ehaq(;~!kx2vK+Dv3 ziF|E^wwjSQk=b&T#SrQ3e$m_@ zMb!0|);aPT26XGnK79NWh>W+IVL*Hr1T6lM*rwHYOx z+?Tr{Rbi#hvQiaQ1EfETR7I6O6LNCjq*c0kW+vlp6vnB7w^2q;=*X+mhnp4Lt>*j6 zce=9RuF~fgdX`ANDm_`E;$*fb^KqTqQkk01B%M-~djn~w z<&*&^+*7F|{m%DI%-3Q>e(t(G=Q0aW3wtW{30JG*Aqc3YJ(c<#ayx{VfTRbC5&E@K zS1U3LDA7sCn>QAJuhgctm(3- z7G%Nio<&w3Jt+rpPZd5A2Lma!WXD%Rk=wDzI4gej1^#tjZ`3x*javB5w&AI_pr{60 zx~JjB;SYlXx+gj$)g`O&le6f3M6RP3hgc$hsQI zD**R8kRM2V38V;HNuaoQXoaxJkjwq z*pq6g3&zg?HwqG;M0Elw!q&I|O7~l>8*LDf{xy?} z^RYXnq_|G^B35r>;hwo3?rw4dic8wOm|JwK;XE#*)V`r?J@$v=IgO15ITN&Dg1V z4yQlb6w?Cz1;u#}-tA(vh2`*#GN#Kfw$X;+7b-dOvPJT5PjDLUAh3Gx3tOa(%}IE{ z^etJ39pu)?C8D*csoKe3e)6=;aujxaz34&OZTVcV2BS= zhBr8uF5v_SK&l)h*I3S@W7r?K({RacbyUf_>*pH;S#@$_hnl>*II%Y68=%AP{(!+fnJP;XKU;^&n*+1YY3?;Zg4 zeout>MWtTwKj*onaNa{jxZhUl{oOfJ`N%L3yT@`$unc19F?gT!RDUDpUV(h130?b^w-UXlMQ&{z|3~u+2Vk_0r(h9 zj{uSSwkY8SSG*J-zC+}8*u7;SU%>hy;H?H3KAjyMfD_$m4K$>=Jp->DlA_;PdK2jH zSvp~fEVagjZh3K4YPa)qzNmO!7PqtV5Dp!(ew=^I<;eY4%Ieu*?Hjr&X`R@2Atx07cx@AvU)kit`G7$ zEQKOLL$@3y{gy`KG1}P8Sg=A>%kWMgd+8$T=j=0CZk;c2HhFWo4cGBT{pa zH?;)&BY+c|X8B8rTu)y_LRj}&ba7XVq>ZD!iurCJpCbAp(7nM6M*9?Uj1ccZTADoF zj*YX3jthq;+3JJUyw2LBAKFG(DoaQh$seE6?tI*wNKW%pxjq5zNRVSl90jBZmp2W{ z60mtd6B!JB-`O}SS|X8L(IQRqWmsMSBC~BP2{*~eRBOGRZ8~-3c8Y(ek~g94ZB%)G zfkaQESpiM%-V*1?Y}6pQVnO5k`M}lS6m6TmkE4qLSwHC2p-i)k*ws{4Iafw*o)X&Q3AYv1JZ9 z>f0vd9s^RvH{(-PPyuP4mGq~o zB;8ljmx$vvBP3lawZ=kTemlJ-a!RGc3EtJejhz7!zrvf$;ltoM7-fw`3HaU&0VNF-+Jw~SFcYXL+9e6$$!ZId~agE zz0wr(Is|0ezuio)s<1#U&$p;H9b?QJ|9e_RRd;%|4gNx z!uJV;cL6h5f7Ym$RbE;4&6GE{=k>F>DJcpV2q(#-FY+53T+05?%Gs^uc$O7^$9rQ zFY`wp*nMLe{JR^y(M?!+xZd3OPwkd0uDiL>EA<*H#j$>r(tW8iwH1-jVwN!PECeFC z|4_`BAAX&dTx7LOu>LQQIhW226Q!!kZFYiF+ZyH1RVFXQh)y0-W%A&}+F6e2G6eLq zh+ZJNTjM%gt9-hIs&Gw5c^@6sQ)YqdfKaF_tBpLpspKJb3pg9=syh*@JfxJXgx>xMwuhs z^|zTelv&W0K&*mUKAFtvxAMv4cVT=JaGJ>G%hzoPn3d5yGOHpdz^;2;GL~@72XwE? z`TgC)hj%ex zjeKh**mG!8fss~`c9+^Di(R7`GZSj6UOV2-wz#4V+K@QXsZBWWZ|PVo8o8-!sS@8%d;VYSf=a z;z?igtAS>xeaLm^OztT~bJp$R>wY)!I|9u$h-8k7jP^BmMydm#K7SZ!9uw9)i~MOo zEV7^G=uNg=Eo6W@3xzVn)hz<-6wn1I`nD5$&T=i2VX%qSV4hvd!X!Om?Jl#J#scQvqsd%jryB7!W~#BKQcoz8sm7X0 zT~!z5YbuAx=pl=ZYmGK1H)j;$7g#R_ia3lHRO$j{(l$ma_rl7EjEqjdtqF9g!p7dC zaHY$b*|e}$a&+fY)55``J6(KjS~yP9)r^fz3uj6)TL!tN=G%DLGPpH0Un|d+L9J

          hAR~=7C-=6YV6|q-=EX0=n!Hls_AvF5Ca>kV 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Ð6sre7$mOuITLoS6D+|zDjsD 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 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/gevent/_gevent_cqueue.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/gevent/_gevent_cqueue.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..55c01b5946307c96d541cff64f12523c50f2b1f6 GIT binary patch literal 1617424 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%0A)Rey7_fWD&Gx=?1CLg}EO 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%0DxP^6Ns@6m%@|(gJ3G#@I_{Yct>@g~VhaqK(OE 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
          D4R?#)}bqVIG-i|C& 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 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/gevent/_greenlet_primitives.py b/venv/lib/python3.9/site-packages/gevent/_greenlet_primitives.py new file mode 100644 index 0000000..7637c84 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_greenlet_primitives.py @@ -0,0 +1,132 @@ +# -*- coding: utf-8 -*- +# copyright (c) 2018 gevent. See LICENSE. +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False +""" +A collection of primitives used by the hub, and suitable for +compilation with Cython because of their frequency of use. + +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + +from weakref import ref as wref +from gc import get_objects + +from greenlet import greenlet + +from gevent.exceptions import BlockingSwitchOutError + + +# In Cython, we define these as 'cdef inline' functions. The +# compilation unit cannot have a direct assignment to them (import +# is assignment) without generating a 'lvalue is not valid target' +# error. +locals()['getcurrent'] = __import__('greenlet').getcurrent +locals()['greenlet_init'] = lambda: None +locals()['_greenlet_switch'] = greenlet.switch + + +__all__ = [ + 'TrackedRawGreenlet', + 'SwitchOutGreenletWithLoop', +] + +class TrackedRawGreenlet(greenlet): + + def __init__(self, function, parent): + greenlet.__init__(self, function, parent) + # See greenlet.py's Greenlet class. We capture the cheap + # parts to maintain the tree structure, but we do not capture + # the stack because that's too expensive for 'spawn_raw'. + + current = getcurrent() # pylint:disable=undefined-variable + self.spawning_greenlet = wref(current) + # See Greenlet for how trees are maintained. + try: + self.spawn_tree_locals = current.spawn_tree_locals + except AttributeError: + self.spawn_tree_locals = {} + if current.parent: + current.spawn_tree_locals = self.spawn_tree_locals + + +class SwitchOutGreenletWithLoop(TrackedRawGreenlet): + # Subclasses must define: + # - self.loop + + # This class defines loop in its .pxd for Cython. This lets us avoid + # circular dependencies with the hub. + + def switch(self): + switch_out = getattr(getcurrent(), 'switch_out', None) # pylint:disable=undefined-variable + if switch_out is not None: + switch_out() + return _greenlet_switch(self) # pylint:disable=undefined-variable + + def switch_out(self): + raise BlockingSwitchOutError('Impossible to call blocking function in the event loop callback') + + +def get_reachable_greenlets(): + # We compile this loop with Cython so that it's faster, and so that + # the GIL isn't dropped at unpredictable times during the loop. + # Dropping the GIL could lead to accessing partly constructed objects + # in undefined states (particularly, tuples). This helps close a hole + # where a `SystemError: Objects/tupleobject.c bad argument to internal function` + # could get raised. (Note that this probably doesn't completely close the hole, + # if other threads have dropped the GIL, but hopefully the speed makes that + # more rare.) See https://github.com/gevent/gevent/issues/1302 + return [ + x for x in get_objects() + if isinstance(x, greenlet) and not getattr(x, 'greenlet_tree_is_ignored', False) + ] + +# Cache the global memoryview so cython can optimize. +_memoryview = memoryview +try: + if isinstance(__builtins__, dict): + # Pure-python mode on CPython + _buffer = __builtins__['buffer'] + else: + # Cythonized mode, or PyPy + _buffer = __builtins__.buffer +except (AttributeError, KeyError): + # Python 3. + _buffer = memoryview + +def get_memory(data): + # On Python 2, memoryview(memoryview()) can leak in some cases, + # notably when an io.BufferedWriter object produced the memoryview. + # So we need to check to see if we already have one before we convert. + # We do this in Cython to mitigate the performance cost (which turns out to be a + # net win.) + + # We don't specifically test for this leak. + + # https://github.com/gevent/gevent/issues/1318 + try: + mv = _memoryview(data) if not isinstance(data, _memoryview) else data + if mv.shape: + return mv + # No shape, probably working with a ctypes object, + # or something else exotic that supports the buffer interface + return mv.tobytes() + except TypeError: + # fixes "python2.7 array.array doesn't support memoryview used in + # gevent.socket.send" issue + # (http://code.google.com/p/gevent/issues/detail?id=94) + if _buffer is _memoryview: + # Py3 + raise + return _buffer(data) + + + +def _init(): + greenlet_init() # pylint:disable=undefined-variable + +_init() + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent.__greenlet_primitives') diff --git a/venv/lib/python3.9/site-packages/gevent/_hub_local.py b/venv/lib/python3.9/site-packages/gevent/_hub_local.py new file mode 100644 index 0000000..b2c36c9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_hub_local.py @@ -0,0 +1,154 @@ +# -*- coding: utf-8 -*- +# copyright 2018 gevent. See LICENSE +""" +Maintains the thread local hub. + +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + + +import _thread + +__all__ = [ + 'get_hub', + 'get_hub_noargs', + 'get_hub_if_exists', +] + +# These must be the "real" native thread versions, +# not monkey-patched. +# We are imported early enough (by gevent/__init__) that +# we can rely on not being monkey-patched in any way yet. +assert 'gevent' not in str(_thread._local) +class _Threadlocal(_thread._local): + + def __init__(self): + # Use a class with an initializer so that we can test + # for 'is None' instead of catching AttributeError, making + # the code cleaner and possibly solving some corner cases + # (like #687). + # + # However, under some weird circumstances, it _seems_ like the + # __init__ method doesn't get called properly ("seems" is the + # keyword). We've seen at least one instance + # (https://github.com/gevent/gevent/issues/1961) of + # ``AttributeError: '_Threadlocal' object has no attribute # 'hub'`` + # which should be impossible unless: + # + # - Someone manually deletes the attribute + # - The _threadlocal object itself is in the process of being + # deleted. The C ``tp_clear`` slot for it deletes the ``__dict__`` + # of each instance in each thread (and/or the ``tp_clear`` of ``dict`` itself + # clears the instance). Now, how we could be getting + # cleared while still being used is unclear, but clearing is part of + # circular garbage collection, and in the bug report it looks like we're inside a + # weakref finalizer or ``__del__`` method, which could suggest that + # garbage collection is happening. + # + # See https://github.com/gevent/gevent/issues/1961 + # and ``get_hub_if_exists()`` + super(_Threadlocal, self).__init__() + self.Hub = None + self.loop = None + self.hub = None + +_threadlocal = _Threadlocal() + +Hub = None # Set when gevent.hub is imported + +def get_hub_class(): + """Return the type of hub to use for the current thread. + + If there's no type of hub for the current thread yet, 'gevent.hub.Hub' is used. + """ + try: + hubtype = _threadlocal.Hub + except AttributeError: + hubtype = None + + if hubtype is None: + hubtype = _threadlocal.Hub = Hub + return hubtype + +def set_default_hub_class(hubtype): + global Hub + Hub = hubtype + +def get_hub(): + """ + Return the hub for the current thread. + + If a hub does not exist in the current thread, a new one is + created of the type returned by :func:`get_hub_class`. + + .. deprecated:: 1.3b1 + The ``*args`` and ``**kwargs`` arguments are deprecated. They were + only used when the hub was created, and so were non-deterministic---to be + sure they were used, *all* callers had to pass them, or they were order-dependent. + Use ``set_hub`` instead. + + .. versionchanged:: 1.5a3 + The *args* and *kwargs* arguments are now completely ignored. + + .. versionchanged:: 23.7.0 + The long-deprecated ``args`` and ``kwargs`` parameters are no + longer accepted. + """ + # See get_hub_if_exists + try: + hub = _threadlocal.hub + except AttributeError: + hub = None + if hub is None: + hubtype = get_hub_class() + hub = _threadlocal.hub = hubtype() + return hub + +# For Cython purposes, we need to duplicate get_hub into this function so it +# can be directly called. +def get_hub_noargs(): + # See get_hub_if_exists + try: + hub = _threadlocal.hub + except AttributeError: + hub = None + if hub is None: + hubtype = get_hub_class() + hub = _threadlocal.hub = hubtype() + return hub + +def get_hub_if_exists(): + """ + Return the hub for the current thread. + + Return ``None`` if no hub has been created yet. + """ + # Attempt a band-aid for the poorly-understood behaviour + # seen in https://github.com/gevent/gevent/issues/1961 + # where the ``hub`` attribute has gone missing. + try: + return _threadlocal.hub + except AttributeError: + # XXX: I'd really like to report this, but I'm not sure how + # that can be done safely (because I don't know how we get + # here in the first place). We may be in a place where imports + # are unsafe, or the interpreter is shutting down, or the + # thread is exiting, or... + return None + + + + +def set_hub(hub): + _threadlocal.hub = hub + +def get_loop(): + return _threadlocal.loop + +def set_loop(loop): + _threadlocal.loop = loop + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent.__hub_local') diff --git a/venv/lib/python3.9/site-packages/gevent/_hub_primitives.py b/venv/lib/python3.9/site-packages/gevent/_hub_primitives.py new file mode 100644 index 0000000..5650ad1 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_hub_primitives.py @@ -0,0 +1,427 @@ +# -*- coding: utf-8 -*- +# copyright (c) 2018 gevent. See LICENSE. +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False,binding=True +""" +A collection of primitives used by the hub, and suitable for +compilation with Cython because of their frequency of use. + + +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + +import traceback + +from gevent.exceptions import InvalidSwitchError +from gevent.exceptions import ConcurrentObjectUseError + +from gevent import _greenlet_primitives +from gevent import _waiter +from gevent._util import _NONE +from gevent._hub_local import get_hub_noargs as get_hub +from gevent.timeout import Timeout + +# In Cython, we define these as 'cdef inline' functions. The +# compilation unit cannot have a direct assignment to them (import +# is assignment) without generating a 'lvalue is not valid target' +# error. +locals()['getcurrent'] = __import__('greenlet').getcurrent +locals()['greenlet_init'] = lambda: None +locals()['Waiter'] = _waiter.Waiter +locals()['MultipleWaiter'] = _waiter.MultipleWaiter +locals()['SwitchOutGreenletWithLoop'] = _greenlet_primitives.SwitchOutGreenletWithLoop + +__all__ = [ + 'WaitOperationsGreenlet', + 'iwait_on_objects', + 'wait_on_objects', + 'wait_read', + 'wait_write', + 'wait_readwrite', +] + +class WaitOperationsGreenlet(SwitchOutGreenletWithLoop): # pylint:disable=undefined-variable + + def wait(self, watcher): + """ + Wait until the *watcher* (which must not be started) is ready. + + The current greenlet will be unscheduled during this time. + """ + waiter = Waiter(self) # pylint:disable=undefined-variable + watcher.start(waiter.switch, waiter) + try: + result = waiter.get() + if result is not waiter: + raise InvalidSwitchError( + 'Invalid switch into %s: got %r (expected %r; waiting on %r with %r)' % ( + getcurrent(), # pylint:disable=undefined-variable + result, + waiter, + self, + watcher + ) + ) + finally: + watcher.stop() + + def cancel_waits_close_and_then(self, watchers, exc_kind, then, *then_args): + deferred = [] + for watcher in watchers: + if watcher is None: + continue + if watcher.callback is None: + watcher.close() + else: + deferred.append(watcher) + if deferred: + self.loop.run_callback(self._cancel_waits_then, deferred, exc_kind, then, then_args) + else: + then(*then_args) + + def _cancel_waits_then(self, watchers, exc_kind, then, then_args): + for watcher in watchers: + self._cancel_wait(watcher, exc_kind, True) + then(*then_args) + + def cancel_wait(self, watcher, error, close_watcher=False): + """ + Cancel an in-progress call to :meth:`wait` by throwing the given *error* + in the waiting greenlet. + + .. versionchanged:: 1.3a1 + Added the *close_watcher* parameter. If true, the watcher + will be closed after the exception is thrown. The watcher should then + be discarded. Closing the watcher is important to release native resources. + .. versionchanged:: 1.3a2 + Allow the *watcher* to be ``None``. No action is taken in that case. + + """ + if watcher is None: + # Presumably already closed. + # See https://github.com/gevent/gevent/issues/1089 + return + + if watcher.callback is not None: + self.loop.run_callback(self._cancel_wait, watcher, error, close_watcher) + return + + if close_watcher: + watcher.close() + + def _cancel_wait(self, watcher, error, close_watcher): + # Running in the hub. Switches to the waiting greenlet to raise + # the error; assuming the waiting greenlet dies, switches back + # to this (because the waiting greenlet's parent is the hub.) + + # We have to check again to see if it was still active by the time + # our callback actually runs. + active = watcher.active + cb = watcher.callback + if close_watcher: + watcher.close() + if active: + # The callback should be greenlet.switch(). It may or may not be None. + glet = getattr(cb, '__self__', None) + if glet is not None: + glet.throw(error) + + +class _WaitIterator(object): + + def __init__(self, objects, hub, timeout, count): + self._hub = hub + self._waiter = MultipleWaiter(hub) # pylint:disable=undefined-variable + self._switch = self._waiter.switch + self._timeout = timeout + self._objects = objects + + self._timer = None + self._begun = False + + # Even if we're only going to return 1 object, + # we must still rawlink() *all* of them, so that no + # matter which one finishes first we find it. + self._count = len(objects) if count is None else min(count, len(objects)) + + def _begin(self): + if self._begun: + return + + self._begun = True + + # XXX: If iteration doesn't actually happen, we + # could leave these links around! + for obj in self._objects: + obj.rawlink(self._switch) + + if self._timeout is not None: + self._timer = self._hub.loop.timer(self._timeout, priority=-1) + self._timer.start(self._switch, self) + + def __iter__(self): + return self + + def __next__(self): + self._begin() + + if self._count == 0: + # Exhausted + self._cleanup() + raise StopIteration() + + self._count -= 1 + try: + item = self._waiter.get() + self._waiter.clear() + if item is self: + # Timer expired, no more + self._cleanup() + raise StopIteration() + return item + except: + self._cleanup() + raise + + next = __next__ + + def _cleanup(self): + if self._timer is not None: + self._timer.close() + self._timer = None + + objs = self._objects + self._objects = () + for aobj in objs: + unlink = getattr(aobj, 'unlink', None) + if unlink is not None: + try: + unlink(self._switch) + except: # pylint:disable=bare-except + traceback.print_exc() + + def __enter__(self): + return self + + def __exit__(self, typ, value, tb): + self._cleanup() + + +def iwait_on_objects(objects, timeout=None, count=None): + """ + Iteratively yield *objects* as they are ready, until all (or *count*) are ready + or *timeout* expired. + + If you will only be consuming a portion of the *objects*, you should + do so inside a ``with`` block on this object to avoid leaking resources:: + + with gevent.iwait((a, b, c)) as it: + for i in it: + if i is a: + break + + :param objects: A sequence (supporting :func:`len`) containing objects + implementing the wait protocol (rawlink() and unlink()). + :keyword int count: If not `None`, then a number specifying the maximum number + of objects to wait for. If ``None`` (the default), all objects + are waited for. + :keyword float timeout: If given, specifies a maximum number of seconds + to wait. If the timeout expires before the desired waited-for objects + are available, then this method returns immediately. + + .. seealso:: :func:`wait` + + .. versionchanged:: 1.1a1 + Add the *count* parameter. + .. versionchanged:: 1.1a2 + No longer raise :exc:`LoopExit` if our caller switches greenlets + in between items yielded by this function. + .. versionchanged:: 1.4 + Add support to use the returned object as a context manager. + """ + # QQQ would be nice to support iterable here that can be generated slowly (why?) + hub = get_hub() + if objects is None: + return [hub.join(timeout=timeout)] + return _WaitIterator(objects, hub, timeout, count) + + +def wait_on_objects(objects=None, timeout=None, count=None): + """ + Wait for *objects* to become ready or for event loop to finish. + + If *objects* is provided, it must be a list containing objects + implementing the wait protocol (rawlink() and unlink() methods): + + - :class:`gevent.Greenlet` instance + - :class:`gevent.event.Event` instance + - :class:`gevent.lock.Semaphore` instance + - :class:`gevent.subprocess.Popen` instance + + If *objects* is ``None`` (the default), ``wait()`` blocks until + the current event loop has nothing to do (or until *timeout* passes): + + - all greenlets have finished + - all servers were stopped + - all event loop watchers were stopped. + + If *count* is ``None`` (the default), wait for all *objects* + to become ready. + + If *count* is a number, wait for (up to) *count* objects to become + ready. (For example, if count is ``1`` then the function exits + when any object in the list is ready). + + If *timeout* is provided, it specifies the maximum number of + seconds ``wait()`` will block. + + Returns the list of ready objects, in the order in which they were + ready. + + .. seealso:: :func:`iwait` + """ + if objects is None: + hub = get_hub() + return hub.join(timeout=timeout) # pylint:disable= + return list(iwait_on_objects(objects, timeout, count)) + +_timeout_error = Exception + +def set_default_timeout_error(e): + global _timeout_error + _timeout_error = e + +def _primitive_wait(watcher, timeout, timeout_exc, hub): + if watcher.callback is not None: + raise ConcurrentObjectUseError('This socket is already used by another greenlet: %r' + % (watcher.callback, )) + + if hub is None: + hub = get_hub() + + if timeout is None: + hub.wait(watcher) + return + + timeout = Timeout._start_new_or_dummy( + timeout, + (timeout_exc + if timeout_exc is not _NONE or timeout is None + else _timeout_error('timed out'))) + + with timeout: + hub.wait(watcher) + +# Suitable to be bound as an instance method +def wait_on_socket(socket, watcher, timeout_exc=None): + if socket is None or watcher is None: + # test__hub TestCloseSocketWhilePolling, on Python 2; Python 3 + # catches the EBADF differently. + raise ConcurrentObjectUseError("The socket has already been closed by another greenlet") + _primitive_wait(watcher, socket.timeout, + timeout_exc if timeout_exc is not None else _NONE, + socket.hub) + +def wait_on_watcher(watcher, timeout=None, timeout_exc=_NONE, hub=None): + """ + wait(watcher, timeout=None, [timeout_exc=None]) -> None + + Block the current greenlet until *watcher* is ready. + + If *timeout* is non-negative, then *timeout_exc* is raised after + *timeout* second has passed. + + If :func:`cancel_wait` is called on *watcher* by another greenlet, + raise an exception in this blocking greenlet + (``socket.error(EBADF, 'File descriptor was closed in another + greenlet')`` by default). + + :param watcher: An event loop watcher, most commonly an IO watcher obtained from + :meth:`gevent.core.loop.io` + :keyword timeout_exc: The exception to raise if the timeout expires. + By default, a :class:`socket.timeout` exception is raised. + If you pass a value for this keyword, it is interpreted as for + :class:`gevent.timeout.Timeout`. + + :raises ~gevent.hub.ConcurrentObjectUseError: If the *watcher* is + already started. + """ + _primitive_wait(watcher, timeout, timeout_exc, hub) + + +def wait_read(fileno, timeout=None, timeout_exc=_NONE): + """ + wait_read(fileno, timeout=None, [timeout_exc=None]) -> None + + Block the current greenlet until *fileno* is ready to read. + + For the meaning of the other parameters and possible exceptions, + see :func:`wait`. + + .. seealso:: :func:`cancel_wait` + """ + hub = get_hub() + io = hub.loop.io(fileno, 1) + try: + return wait_on_watcher(io, timeout, timeout_exc, hub) + finally: + io.close() + + +def wait_write(fileno, timeout=None, timeout_exc=_NONE, event=_NONE): + """ + wait_write(fileno, timeout=None, [timeout_exc=None]) -> None + + Block the current greenlet until *fileno* is ready to write. + + For the meaning of the other parameters and possible exceptions, + see :func:`wait`. + + .. deprecated:: 1.1 + The keyword argument *event* is ignored. Applications should not pass this parameter. + In the future, doing so will become an error. + + .. seealso:: :func:`cancel_wait` + """ + # pylint:disable=unused-argument + hub = get_hub() + io = hub.loop.io(fileno, 2) + try: + return wait_on_watcher(io, timeout, timeout_exc, hub) + finally: + io.close() + + +def wait_readwrite(fileno, timeout=None, timeout_exc=_NONE, event=_NONE): + """ + wait_readwrite(fileno, timeout=None, [timeout_exc=None]) -> None + + Block the current greenlet until *fileno* is ready to read or + write. + + For the meaning of the other parameters and possible exceptions, + see :func:`wait`. + + .. deprecated:: 1.1 + The keyword argument *event* is ignored. Applications should not pass this parameter. + In the future, doing so will become an error. + + .. seealso:: :func:`cancel_wait` + """ + # pylint:disable=unused-argument + hub = get_hub() + io = hub.loop.io(fileno, 3) + try: + return wait_on_watcher(io, timeout, timeout_exc, hub) + finally: + io.close() + + +def _init(): + greenlet_init() # pylint:disable=undefined-variable + +_init() + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent.__hub_primitives') diff --git a/venv/lib/python3.9/site-packages/gevent/_ident.py b/venv/lib/python3.9/site-packages/gevent/_ident.py new file mode 100644 index 0000000..5fb763c --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_ident.py @@ -0,0 +1,82 @@ +# -*- coding: utf-8 -*- +# Copyright 2018 gevent contributors. See LICENSE for details. +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False + +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + + +from weakref import WeakKeyDictionary +from weakref import ref + +from heapq import heappop +from heapq import heappush + +__all__ = [ + 'IdentRegistry', +] + +class ValuedWeakRef(ref): + """ + A weak ref with an associated value. + """ + + __slots__ = ('value',) + + +class IdentRegistry(object): + """ + Maintains a unique mapping of (small) non-negative integer identifiers + to objects that can be weakly referenced. + + It is guaranteed that no two objects will have the the same + identifier at the same time, as long as those objects are + also uniquely hashable. + """ + + def __init__(self): + # {obj -> (ident, wref(obj))} + self._registry = WeakKeyDictionary() + + # A heap of numbers that have been used and returned + self._available_idents = [] + + def get_ident(self, obj): + """ + Retrieve the identifier for *obj*, creating one + if necessary. + """ + + try: + return self._registry[obj][0] + except KeyError: + pass + + if self._available_idents: + # Take the smallest free number + ident = heappop(self._available_idents) + else: + # Allocate a bigger one + ident = len(self._registry) + + vref = ValuedWeakRef(obj, self._return_ident) + vref.value = ident # pylint:disable=assigning-non-slot,attribute-defined-outside-init + self._registry[obj] = (ident, vref) + return ident + + def _return_ident(self, vref): + # By the time this is called, self._registry has been + # updated + if heappush is not None: + # Under some circumstances we can get called + # when the interpreter is shutting down, and globals + # aren't available any more. + heappush(self._available_idents, vref.value) + + def __len__(self): + return len(self._registry) + + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent.__ident') diff --git a/venv/lib/python3.9/site-packages/gevent/_imap.py b/venv/lib/python3.9/site-packages/gevent/_imap.py new file mode 100644 index 0000000..dd6cb00 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_imap.py @@ -0,0 +1,226 @@ +# -*- coding: utf-8 -*- +# Copyright (c) 2018 gevent +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False,infer_types=True + +""" +Iterators across greenlets or AsyncResult objects. + +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + + +from gevent import lock +from gevent import queue + + +__all__ = [ + 'IMapUnordered', + 'IMap', +] + +locals()['Greenlet'] = __import__('gevent').Greenlet +locals()['Semaphore'] = lock.Semaphore +locals()['UnboundQueue'] = queue.UnboundQueue + + +class Failure(object): + __slots__ = ('exc', 'raise_exception') + + def __init__(self, exc, raise_exception=None): + self.exc = exc + self.raise_exception = raise_exception + + +def _raise_exc(failure): + # For cython. + if failure.raise_exception: + failure.raise_exception() + else: + raise failure.exc + +class IMapUnordered(Greenlet): # pylint:disable=undefined-variable + """ + At iterator of map results. + """ + + def __init__(self, func, iterable, spawn, maxsize=None, _zipped=False): + """ + An iterator that. + + :param callable spawn: The function we use to create new greenlets. + :keyword int maxsize: If given and not-None, specifies the maximum number of + finished results that will be allowed to accumulated awaiting the reader; + more than that number of results will cause map function greenlets to begin + to block. This is most useful is there is a great disparity in the speed of + the mapping code and the consumer and the results consume a great deal of resources. + Using a bound is more computationally expensive than not using a bound. + + .. versionchanged:: 1.1b3 + Added the *maxsize* parameter. + """ + Greenlet.__init__(self) # pylint:disable=undefined-variable + self.spawn = spawn + self._zipped = _zipped + self.func = func + self.iterable = iterable + self.queue = UnboundQueue() # pylint:disable=undefined-variable + + + if maxsize: + # Bounding the queue is not enough if we want to keep from + # accumulating objects; the result value will be around as + # the greenlet's result, blocked on self.queue.put(), and + # we'll go on to spawn another greenlet, which in turn can + # create the result. So we need a semaphore to prevent a + # greenlet from exiting while the queue is full so that we + # don't spawn the next greenlet (assuming that self.spawn + # is of course bounded). (Alternatively we could have the + # greenlet itself do the insert into the pool, but that + # takes some rework). + # + # Given the use of a semaphore at this level, sizing the queue becomes + # redundant, and that lets us avoid having to use self.link() instead + # of self.rawlink() to avoid having blocking methods called in the + # hub greenlet. + self._result_semaphore = Semaphore(maxsize) # pylint:disable=undefined-variable + else: + self._result_semaphore = None + + self._outstanding_tasks = 0 + # The index (zero based) of the maximum number of + # results we will have. + self._max_index = -1 + self.finished = False + + + # We're iterating in a different greenlet than we're running. + def __iter__(self): + return self + + def __next__(self): + if self._result_semaphore is not None: + self._result_semaphore.release() + value = self._inext() + if isinstance(value, Failure): + _raise_exc(value) + return value + + next = __next__ # Py2 + + def _inext(self): + return self.queue.get() + + def _ispawn(self, func, item, item_index): + if self._result_semaphore is not None: + self._result_semaphore.acquire() + self._outstanding_tasks += 1 + g = self.spawn(func, item) if not self._zipped else self.spawn(func, *item) + g._imap_task_index = item_index + g.rawlink(self._on_result) + return g + + def _run(self): # pylint:disable=method-hidden + try: + func = self.func + for item in self.iterable: + self._max_index += 1 + self._ispawn(func, item, self._max_index) + self._on_finish(None) + except BaseException as e: + self._on_finish(e) + raise + finally: + self.spawn = None + self.func = None + self.iterable = None + self._result_semaphore = None + + def _on_result(self, greenlet): + # This method will be called in the hub greenlet (we rawlink) + self._outstanding_tasks -= 1 + count = self._outstanding_tasks + finished = self.finished + ready = self.ready() + put_finished = False + + if ready and count <= 0 and not finished: + finished = self.finished = True + put_finished = True + + if greenlet.successful(): + self.queue.put(self._iqueue_value_for_success(greenlet)) + else: + self.queue.put(self._iqueue_value_for_failure(greenlet)) + + if put_finished: + self.queue.put(self._iqueue_value_for_self_finished()) + + def _on_finish(self, exception): + # Called in this greenlet. + if self.finished: + return + + if exception is not None: + self.finished = True + self.queue.put(self._iqueue_value_for_self_failure(exception)) + return + + if self._outstanding_tasks <= 0: + self.finished = True + self.queue.put(self._iqueue_value_for_self_finished()) + + def _iqueue_value_for_success(self, greenlet): + return greenlet.value + + def _iqueue_value_for_failure(self, greenlet): + return Failure(greenlet.exception, getattr(greenlet, '_raise_exception')) + + def _iqueue_value_for_self_finished(self): + return Failure(StopIteration()) + + def _iqueue_value_for_self_failure(self, exception): + return Failure(exception, self._raise_exception) + + +class IMap(IMapUnordered): + # A specialization of IMapUnordered that returns items + # in the order in which they were generated, not + # the order in which they finish. + + def __init__(self, *args, **kwargs): + # The result dictionary: {index: value} + self._results = {} + + # The index of the result to return next. + self.index = 0 + IMapUnordered.__init__(self, *args, **kwargs) + + def _inext(self): + try: + value = self._results.pop(self.index) + except KeyError: + # Wait for our index to finish. + while 1: + index, value = self.queue.get() + if index == self.index: + break + self._results[index] = value + self.index += 1 + return value + + def _iqueue_value_for_success(self, greenlet): + return (greenlet._imap_task_index, IMapUnordered._iqueue_value_for_success(self, greenlet)) + + def _iqueue_value_for_failure(self, greenlet): + return (greenlet._imap_task_index, IMapUnordered._iqueue_value_for_failure(self, greenlet)) + + def _iqueue_value_for_self_finished(self): + return (self._max_index + 1, IMapUnordered._iqueue_value_for_self_finished(self)) + + def _iqueue_value_for_self_failure(self, exception): + return (self._max_index + 1, IMapUnordered._iqueue_value_for_self_failure(self, exception)) + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent.__imap') diff --git a/venv/lib/python3.9/site-packages/gevent/_interfaces.py b/venv/lib/python3.9/site-packages/gevent/_interfaces.py new file mode 100644 index 0000000..321e251 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_interfaces.py @@ -0,0 +1,323 @@ +# -*- coding: utf-8 -*- +# Copyright (c) 2018 gevent contributors. See LICENSE for details. +""" +Interfaces gevent uses that don't belong any one place. + +This is not a public module, these interfaces are not +currently exposed to the public, they mostly exist for +documentation and testing purposes. + +.. versionadded:: 1.3b2 + +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + +import sys + +from zope.interface import Interface +from zope.interface import Attribute + +_text_type = type(u'') + +try: + from zope import schema +except ImportError: # pragma: no cover + class _Field(Attribute): + __allowed_kw__ = ('readonly', 'min',) + def __init__(self, description, required=False, **kwargs): + description = u"%s (required? %s)" % (description, required) + assert isinstance(description, _text_type) + for k in self.__allowed_kw__: + kwargs.pop(k, None) + if kwargs: + raise TypeError("Unexpected keyword arguments: %r" % (kwargs,)) + Attribute.__init__(self, description) + + class schema(object): + Bool = _Field + Float = _Field + + +# pylint:disable=no-method-argument, unused-argument, no-self-argument +# pylint:disable=inherit-non-class + +__all__ = [ + 'ILoop', + 'IWatcher', + 'ICallback', +] + +class ILoop(Interface): + """ + The common interface expected for all event loops. + + .. caution:: + This is an internal, low-level interface. It may change + between minor versions of gevent. + + .. rubric:: Watchers + + The methods that create event loop watchers are `io`, `timer`, + `signal`, `idle`, `prepare`, `check`, `fork`, `async_`, `child`, + `stat`. These all return various types of :class:`IWatcher`. + + All of those methods have one or two common arguments. *ref* is a + boolean saying whether the event loop is allowed to exit even if + this watcher is still started. *priority* is event loop specific. + """ + + default = schema.Bool( + description=u"Boolean indicating whether this is the default loop", + required=True, + readonly=True, + ) + + approx_timer_resolution = schema.Float( + description=u"Floating point number of seconds giving (approximately) the minimum " + "resolution of a timer (and hence the minimun value the sleep can sleep for). " + "On libuv, this is fixed by the library, but on libev it is just a guess " + "and the actual value is system dependent.", + required=True, + min=0.0, + readonly=True, + ) + + def run(nowait=False, once=False): + """ + Run the event loop. + + This is usually called automatically by the hub greenlet, but + in special cases (when the hub is *not* running) you can use + this to control how the event loop runs (for example, to integrate + it with another event loop). + """ + + def now(): + """ + now() -> float + + Return the loop's notion of the current time. + + This may not necessarily be related to :func:`time.time` (it + may have a different starting point), but it must be expressed + in fractional seconds (the same *units* used by :func:`time.time`). + """ + + def update_now(): + """ + Update the loop's notion of the current time. + + .. versionadded:: 1.3 + In the past, this available as ``update``. This is still available as + an alias but will be removed in the future. + """ + + def destroy(): + """ + Clean up resources used by this loop. + + If you create loops + (especially loops that are not the default) you *should* call + this method when you are done with the loop. + + .. caution:: + + As an implementation note, the libev C loop implementation has a + finalizer (``__del__``) that destroys the object, but the libuv + and libev CFFI implementations do not. The C implementation may change. + + """ + + def io(fd, events, ref=True, priority=None): + """ + Create and return a new IO watcher for the given *fd*. + + *events* is a bitmask specifying which events to watch + for. 1 means read, and 2 means write. + + *fd* should be valid. If it is not, this method _should_ + throw an OSError EBADF. + """ + + def closing_fd(fd): + """ + Inform the loop that the file descriptor *fd* is about to be closed. + + The loop may choose to schedule events to be delivered to any active + IO watchers for the fd. libev does this so that the active watchers + can be closed. + + :return: A boolean value that's true if active IO watchers were + queued to run. Closing the FD should be deferred until the next + run of the eventloop with a check watcher (callbacks may be + run immediately if we were already running callbacks when this was + added, and it needs to come after the loop). + """ + + def timer(after, repeat=0.0, ref=True, priority=None): + """ + Create and return a timer watcher that will fire after *after* seconds. + + If *repeat* is given, the timer will continue to fire every *repeat* seconds. + """ + + def signal(signum, ref=True, priority=None): + """ + Create and return a signal watcher for the signal *signum*, + one of the constants defined in :mod:`signal`. + + This is platform and event loop specific. + """ + + def idle(ref=True, priority=None): + """ + Create and return a watcher that fires when the event loop is idle. + """ + + def prepare(ref=True, priority=None): + """ + Create and return a watcher that fires before the event loop + polls for IO. + + .. caution:: This method is not supported by libuv. + """ + + def check(ref=True, priority=None): + """ + Create and return a watcher that fires after the event loop + polls for IO. + """ + + def fork(ref=True, priority=None): + """ + Create a watcher that fires when the process forks. + + Availability: Unix. + """ + + def async_(ref=True, priority=None): + """ + Create a watcher that fires when triggered, possibly + from another thread. + + .. versionchanged:: 1.3 + This was previously just named ``async``; for compatibility + with Python 3.7 where ``async`` is a keyword it was renamed. + On older versions of Python the old name is still around, but + it will be removed in the future. + """ + + if sys.platform != "win32": + + def child(pid, trace=0, ref=True): + """ + Create a watcher that fires for events on the child with process ID *pid*. + + This is platform specific and not available on Windows. + + Availability: Unix. + """ + + def stat(path, interval=0.0, ref=True, priority=None): + """ + Create a watcher that monitors the filesystem item at *path*. + + If the operating system doesn't support event notifications + from the filesystem, poll for changes every *interval* seconds. + """ + + def run_callback(func, *args): + """ + Run the *func* passing it *args* at the next opportune moment. + + The next opportune moment may be the next iteration of the event loop, + the current iteration, or some other time in the future. + + Returns a :class:`ICallback` object. See that documentation for + important caveats. + + .. seealso:: :meth:`asyncio.loop.call_soon` + The :mod:`asyncio` equivalent. + """ + + def run_callback_threadsafe(func, *args): + """ + Like :meth:`run_callback`, but for use from *outside* the + thread that is running this loop. + + This not only schedules the *func* to run, it also causes the + loop to notice that the *func* has been scheduled (e.g., it causes + the loop to wake up). + + .. versionadded:: 21.1.0 + + .. seealso:: :meth:`asyncio.loop.call_soon_threadsafe` + The :mod:`asyncio` equivalent. + """ + +class IWatcher(Interface): + """ + An event loop watcher. + + These objects call their *callback* function when the event + loop detects the event has happened. + + .. important:: You *must* call :meth:`close` when you are + done with this object to avoid leaking native resources. + """ + + def start(callback, *args, **kwargs): + """ + Have the event loop begin watching for this event. + + When the event is detected, *callback* will be called with + *args*. + + .. caution:: + + Not all watchers accept ``**kwargs``, + and some watchers define special meanings for certain keyword args. + """ + + def stop(): + """ + Have the event loop stop watching this event. + + In the future you may call :meth:`start` to begin watching + again. + """ + + def close(): + """ + Dispose of any native resources associated with the watcher. + + If we were active, stop. + + Attempting to operate on this object after calling close is + undefined. You should dispose of any references you have to it + after calling this method. + """ + +class ICallback(Interface): + """ + Represents a function that will be run some time in the future. + + Callback functions run in the hub, and as such they cannot use + gevent's blocking API; any exception they raise cannot be caught. + """ + + pending = schema.Bool(description=u"Has this callback run yet?", + readonly=True) + + def stop(): + """ + If this object is still `pending`, cause it to + no longer be `pending`; the function will not be run. + """ + + def close(): + """ + An alias of `stop`. + """ diff --git a/venv/lib/python3.9/site-packages/gevent/_monitor.py b/venv/lib/python3.9/site-packages/gevent/_monitor.py new file mode 100644 index 0000000..8bac288 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_monitor.py @@ -0,0 +1,327 @@ +# Copyright (c) 2018 gevent. See LICENSE for details. +from __future__ import print_function, absolute_import, division + +import os +import sys + +from weakref import ref as wref + +from greenlet import getcurrent + +from gevent import config as GEVENT_CONFIG +from gevent.monkey import get_original +from gevent.events import notify +from gevent.events import EventLoopBlocked +from gevent.events import MemoryUsageThresholdExceeded +from gevent.events import MemoryUsageUnderThreshold +from gevent.events import IPeriodicMonitorThread +from gevent.events import implementer + +from gevent._tracer import GreenletTracer +from gevent._compat import thread_mod_name +from gevent._compat import perf_counter +from gevent._compat import get_this_psutil_process + + + +__all__ = [ + 'PeriodicMonitoringThread', +] + +get_thread_ident = get_original(thread_mod_name, 'get_ident') +start_new_thread = get_original(thread_mod_name, 'start_new_thread') +thread_sleep = get_original('time', 'sleep') + + + +class MonitorWarning(RuntimeWarning): + """The type of warnings we emit.""" + + +class _MonitorEntry(object): + + __slots__ = ('function', 'period', 'last_run_time') + + def __init__(self, function, period): + self.function = function + self.period = period + self.last_run_time = 0 + + def __eq__(self, other): + return self.function == other.function and self.period == other.period + + def __hash__(self): + return hash((self.function, self.period)) + + def __repr__(self): + return repr((self.function, self.period, self.last_run_time)) + + +@implementer(IPeriodicMonitorThread) +class PeriodicMonitoringThread(object): + # This doesn't extend threading.Thread because that gets monkey-patched. + # We use the low-level 'start_new_thread' primitive instead. + + # The amount of seconds we will sleep when we think we have nothing + # to do. + inactive_sleep_time = 2.0 + + # The absolute minimum we will sleep, regardless of + # what particular monitoring functions want to say. + min_sleep_time = 0.005 + + # The minimum period in seconds at which we will check memory usage. + # Getting memory usage is fairly expensive. + min_memory_monitor_period = 2 + + # A list of _MonitorEntry objects: [(function(hub), period, last_run_time))] + # The first entry is always our entry for self.monitor_blocking + _monitoring_functions = None + + # The calculated min sleep time for the monitoring functions list. + _calculated_sleep_time = None + + # A boolean value that also happens to capture the + # memory usage at the time we exceeded the threshold. Reset + # to 0 when we go back below. + _memory_exceeded = 0 + + # The instance of GreenletTracer we're using + _greenlet_tracer = None + + def __init__(self, hub): + self._hub_wref = wref(hub, self._on_hub_gc) + self.should_run = True + + # Must be installed in the thread that the hub is running in; + # the trace function is threadlocal + assert get_thread_ident() == hub.thread_ident + self._greenlet_tracer = GreenletTracer() + + self._monitoring_functions = [_MonitorEntry(self.monitor_blocking, + GEVENT_CONFIG.max_blocking_time)] + self._calculated_sleep_time = GEVENT_CONFIG.max_blocking_time + # Create the actual monitoring thread. This is effectively a "daemon" + # thread. + self.monitor_thread_ident = start_new_thread(self, ()) + + # We must track the PID to know if your thread has died after a fork + self.pid = os.getpid() + + def _on_fork(self): + # Pseudo-standard method that resolver_ares and threadpool + # also have, called by hub.reinit() + pid = os.getpid() + if pid != self.pid: + self.pid = pid + self.monitor_thread_ident = start_new_thread(self, ()) + + @property + def hub(self): + return self._hub_wref() + + + def monitoring_functions(self): + # Return a list of _MonitorEntry objects + + # Update max_blocking_time each time. + mbt = GEVENT_CONFIG.max_blocking_time # XXX: Events so we know when this changes. + if mbt != self._monitoring_functions[0].period: + self._monitoring_functions[0].period = mbt + self._calculated_sleep_time = min(x.period for x in self._monitoring_functions) + return self._monitoring_functions + + def add_monitoring_function(self, function, period): + if not callable(function): + raise ValueError("function must be callable") + + if period is None: + # Remove. + self._monitoring_functions = [ + x for x in self._monitoring_functions + if x.function != function + ] + elif period <= 0: + raise ValueError("Period must be positive.") + else: + # Add or update period + entry = _MonitorEntry(function, period) + self._monitoring_functions = [ + x if x.function != function else entry + for x in self._monitoring_functions + ] + if entry not in self._monitoring_functions: + self._monitoring_functions.append(entry) + self._calculated_sleep_time = min(x.period for x in self._monitoring_functions) + + def calculate_sleep_time(self): + min_sleep = self._calculated_sleep_time + if min_sleep <= 0: + # Everyone wants to be disabled. Sleep for a longer period of + # time than usual so we don't spin unnecessarily. We might be + # enabled again in the future. + return self.inactive_sleep_time + return max((min_sleep, self.min_sleep_time)) + + def kill(self): + if not self.should_run: + # Prevent overwriting trace functions. + return + # Stop this monitoring thread from running. + self.should_run = False + # Uninstall our tracing hook + self._greenlet_tracer.kill() + + def _on_hub_gc(self, _): + self.kill() + + def __call__(self): + # The function that runs in the monitoring thread. + # We cannot use threading.current_thread because it would + # create an immortal DummyThread object. + getcurrent().gevent_monitoring_thread = wref(self) + + try: + while self.should_run: + functions = self.monitoring_functions() + assert functions + sleep_time = self.calculate_sleep_time() + + thread_sleep(sleep_time) + + # Make sure the hub is still around, and still active, + # and keep it around while we are here. + hub = self.hub + if not hub: + self.kill() + + if self.should_run: + this_run = perf_counter() + for entry in functions: + f = entry.function + period = entry.period + last_run = entry.last_run_time + if period and last_run + period <= this_run: + entry.last_run_time = this_run + f(hub) + del hub # break our reference to hub while we sleep + + except SystemExit: + pass + except: # pylint:disable=bare-except + # We're a daemon thread, so swallow any exceptions that get here + # during interpreter shutdown. + if not sys or not sys.stderr: # pragma: no cover + # Interpreter is shutting down + pass + else: + hub = self.hub + if hub is not None: + # XXX: This tends to do bad things like end the process, because we + # try to switch *threads*, which can't happen. Need something better. + hub.handle_error(self, *sys.exc_info()) + + def monitor_blocking(self, hub): + # Called periodically to see if the trace function has + # fired to switch greenlets. If not, we will print + # the greenlet tree. + + # For tests, we return a true value when we think we found something + # blocking + + did_block = self._greenlet_tracer.did_block_hub(hub) + if not did_block: + return + + active_greenlet = did_block[1] # pylint:disable=unsubscriptable-object + report = self._greenlet_tracer.did_block_hub_report( + hub, active_greenlet, + dict(greenlet_stacks=False, current_thread_ident=self.monitor_thread_ident)) + + # Notify the event first. ``report`` is a mutable list, so the event listeners + # may mutate it to add or remove information. + notify(EventLoopBlocked(active_greenlet, + GEVENT_CONFIG.max_blocking_time, report, + hub=hub)) + + # Do the actual reporting in a separate function so that + # it can be overridden at runtime, for example, to use a dedicated + # file. If you find this useful enough that the interface should be formalized, + # please file an issue. + return self._show_blocking_report(hub, report, active_greenlet) + + + def _show_blocking_report(self, hub, report, active_greenlet): + if GEVENT_CONFIG.print_blocking_reports: + stream = hub.exception_stream + for line in report: + # Printing line by line may interleave with other things, + # but it should also prevent a "reentrant call to print" + # when the report is large. + print(line, file=stream) + return (active_greenlet, report) + + def ignore_current_greenlet_blocking(self): + self._greenlet_tracer.ignore_current_greenlet_blocking() + + def monitor_current_greenlet_blocking(self): + self._greenlet_tracer.monitor_current_greenlet_blocking() + + def _get_process(self): # pylint:disable=method-hidden + proc = get_this_psutil_process() + self._get_process = lambda: proc + return proc + + def can_monitor_memory_usage(self): + return self._get_process() is not None + + def install_monitor_memory_usage(self): + # Start monitoring memory usage, if possible. + # If not possible, emit a warning. + if not self.can_monitor_memory_usage(): + import warnings + warnings.warn("Unable to monitor memory usage. Install psutil.", + MonitorWarning) + return + + self.add_monitoring_function(self.monitor_memory_usage, + max(GEVENT_CONFIG.memory_monitor_period, + self.min_memory_monitor_period)) + + def monitor_memory_usage(self, _hub): + max_allowed = GEVENT_CONFIG.max_memory_usage + if not max_allowed: + # They disabled it. + return -1 # value for tests + + rusage = self._get_process().memory_full_info() + # uss only documented available on Windows, Linux, and OS X. + # If not available, fall back to rss as an aproximation. + mem_usage = getattr(rusage, 'uss', 0) or rusage.rss + + event = None # Return value for tests + + if mem_usage > max_allowed: + if mem_usage > self._memory_exceeded: + # We're still growing + event = MemoryUsageThresholdExceeded( + mem_usage, max_allowed, rusage) + notify(event) + self._memory_exceeded = mem_usage + else: + # we're below. Were we above it last time? + if self._memory_exceeded: + event = MemoryUsageUnderThreshold( + mem_usage, max_allowed, rusage, self._memory_exceeded) + notify(event) + self._memory_exceeded = 0 + + return event + + def __repr__(self): + return '<%s at %s in thread %s greenlet %r for %r>' % ( + self.__class__.__name__, + hex(id(self)), + hex(self.monitor_thread_ident), + getcurrent(), + self._hub_wref()) diff --git a/venv/lib/python3.9/site-packages/gevent/_patcher.py b/venv/lib/python3.9/site-packages/gevent/_patcher.py new file mode 100644 index 0000000..d5b69cb --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_patcher.py @@ -0,0 +1,252 @@ +# Copyright 2018 gevent. See LICENSE for details. + +# Portions of the following are inspired by code from eventlet. I +# believe they are distinct enough that no eventlet copyright would +# apply (they are not a copy or substantial portion of the eventlot +# code). + +# Added in gevent 1.3a2. Not public in that release. + +from __future__ import absolute_import, print_function + +import importlib +import sys + + +from gevent._compat import iteritems +from gevent._compat import imp_acquire_lock +from gevent._compat import imp_release_lock + + +from gevent.builtins import __import__ as g_import + + +MAPPING = { + 'gevent.local': '_threading_local', + 'gevent.socket': 'socket', + 'gevent.select': 'select', + 'gevent.selectors': 'selectors', + 'gevent.ssl': 'ssl', + 'gevent.thread': '_thread', + 'gevent.subprocess': 'subprocess', + 'gevent.os': 'os', + 'gevent.threading': 'threading', + 'gevent.builtins': 'builtins', + 'gevent.signal': 'signal', + 'gevent.time': 'time', + 'gevent.queue': 'queue', + 'gevent.contextvars': 'contextvars', +} + +OPTIONAL_STDLIB_MODULES = frozenset() +_PATCH_PREFIX = '__g_patched_module_' + +def _collect_stdlib_gevent_modules(): + """ + Return a map from standard library name to + imported gevent module that provides the same API. + + Optional modules are skipped if they cannot be imported. + """ + result = {} + + for gevent_name, stdlib_name in iteritems(MAPPING): + try: + result[stdlib_name] = importlib.import_module(gevent_name) + except ImportError: + if stdlib_name in OPTIONAL_STDLIB_MODULES: + continue + raise + return result + + +class _SysModulesPatcher(object): + + def __init__(self, importing, extra_all=lambda mod_name: ()): + # Permanent state. + self.extra_all = extra_all + self.importing = importing + # green modules, replacing regularly imported modules. + # This begins as the gevent list of modules, and + # then gets extended with green things from the tree we import. + self._green_modules = _collect_stdlib_gevent_modules() + + ## Transient, reset each time we're called. + # The set of things imported before we began. + self._t_modules_to_restore = {} + + def _save(self): + self._t_modules_to_restore = {} + + # Copy all the things we know we are going to overwrite. + for modname in self._green_modules: + self._t_modules_to_restore[modname] = sys.modules.get(modname, None) + + # Copy anything else in the import tree. + for modname, mod in list(iteritems(sys.modules)): + if modname.startswith(self.importing): + self._t_modules_to_restore[modname] = mod + # And remove it. If it had been imported green, it will + # be put right back. Otherwise, it was imported "manually" + # outside this process and isn't green. + del sys.modules[modname] + + # Cover the target modules so that when you import the module it + # sees only the patched versions + for name, mod in iteritems(self._green_modules): + sys.modules[name] = mod + + def _restore(self): + # Anything from the same package tree we imported this time + # needs to be saved so we can restore it later, and so it doesn't + # leak into the namespace. + + for modname, mod in list(iteritems(sys.modules)): + if modname.startswith(self.importing): + self._green_modules[modname] = mod + del sys.modules[modname] + + # Now, what we saved at the beginning needs to be restored. + for modname, mod in iteritems(self._t_modules_to_restore): + if mod is not None: + sys.modules[modname] = mod + else: + try: + del sys.modules[modname] + except KeyError: + pass + + def __exit__(self, t, v, tb): + try: + self._restore() + finally: + imp_release_lock() + self._t_modules_to_restore = None + + + def __enter__(self): + imp_acquire_lock() + self._save() + return self + + module = None + + def __call__(self, after_import_hook): + if self.module is None: + with self: + self.module = self.import_one(self.importing, after_import_hook) + # Circular reference. Someone must keep a reference to this module alive + # for it to be visible. We record it in sys.modules to be that someone, and + # to aid debugging. In the past, we worked with multiple completely separate + # invocations of `import_patched`, but we no longer do. + self.module.__gevent_patcher__ = self + sys.modules[_PATCH_PREFIX + self.importing] = self.module + return self + + def import_one(self, module_name, after_import_hook): + patched_name = _PATCH_PREFIX + module_name + if patched_name in sys.modules: + return sys.modules[patched_name] + + assert module_name.startswith(self.importing) + sys.modules.pop(module_name, None) + + module = g_import(module_name, {}, {}, module_name.split('.')[:-1]) + self.module = module + # On Python 3, we could probably do something much nicer with the + # import machinery? Set the __loader__ or __finder__ or something like that? + self._import_all([module]) + after_import_hook(module) + return module + + def _import_all(self, queue): + # Called while monitoring for patch changes. + while queue: + module = queue.pop(0) + name = module.__name__ + mod_all = tuple(getattr(module, '__all__', ())) + self.extra_all(name) + for attr_name in mod_all: + try: + getattr(module, attr_name) + except AttributeError: + module_name = module.__name__ + '.' + attr_name + new_module = g_import(module_name, {}, {}, attr_name) + setattr(module, attr_name, new_module) + queue.append(new_module) + + +def import_patched(module_name, + extra_all=lambda mod_name: (), + after_import_hook=lambda module: None): + """ + Import *module_name* with gevent monkey-patches active, + and return an object holding the greened module as *module*. + + Any sub-modules that were imported by the package are also + saved. + + .. versionchanged:: 1.5a4 + If the module defines ``__all__``, then each of those + attributes/modules is also imported as part of the same transaction, + recursively. The order of ``__all__`` is respected. Anything passed in + *extra_all* (which must be in the same namespace tree) is also imported. + + .. versionchanged:: 1.5a4 + You must now do all patching for a given module tree + with one call to this method, or at least by using the returned + object. + """ + + with cached_platform_architecture(): + # Save the current module state, and restore on exit, + # capturing desirable changes in the modules package. + patcher = _SysModulesPatcher(module_name, extra_all) + patcher(after_import_hook) + return patcher + + +class cached_platform_architecture(object): + """ + Context manager that caches ``platform.architecture``. + + Some things that load shared libraries (like Cryptodome, via + dnspython) invoke ``platform.architecture()`` for each one. That + in turn wants to fork and run commands , which in turn wants to + call ``threading._after_fork`` if the GIL has been initialized. + All of that means that certain imports done early may wind up + wanting to have the hub initialized potentially much earlier than + before. + + Part of the fix is to observe when that happens and delay + initializing parts of gevent until as late as possible (e.g., we + delay importing and creating the resolver until the hub needs it, + unless explicitly configured). + + The rest of the fix is to avoid the ``_after_fork`` issues by + first caching the results of platform.architecture before doing + patched imports. + + (See events.py for similar issues with platform, and + test__threading_2.py for notes about threading._after_fork if the + GIL has been initialized) + """ + + _arch_result = None + _orig_arch = None + _platform = None + + def __enter__(self): + import platform + self._platform = platform + self._arch_result = platform.architecture() + self._orig_arch = platform.architecture + def arch(*args, **kwargs): + if not args and not kwargs: + return self._arch_result + return self._orig_arch(*args, **kwargs) + platform.architecture = arch + return self + + def __exit__(self, *_args): + self._platform.architecture = self._orig_arch + self._platform = None diff --git a/venv/lib/python3.9/site-packages/gevent/_semaphore.py b/venv/lib/python3.9/site-packages/gevent/_semaphore.py new file mode 100644 index 0000000..0b262c3 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_semaphore.py @@ -0,0 +1,527 @@ +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False +### +# This file is ``gevent._semaphore`` so that it can be compiled by Cython +# individually. However, this is not the place to import from. Everyone, +# gevent internal code included, must import from ``gevent.lock``. +# The only exception are .pxd files which need access to the +# C code; the PURE_PYTHON things that have to happen and which are +# handled in ``gevent.lock``, do not apply to them. +### +from __future__ import print_function, absolute_import, division + +__all__ = [ + 'Semaphore', + 'BoundedSemaphore', +] + +from time import sleep as _native_sleep + +from gevent._compat import monotonic +from gevent.exceptions import InvalidThreadUseError +from gevent.exceptions import LoopExit +from gevent.timeout import Timeout + +def _get_linkable(): + x = __import__('gevent._abstract_linkable') + return x._abstract_linkable.AbstractLinkable +locals()['AbstractLinkable'] = _get_linkable() +del _get_linkable + +from gevent._hub_local import get_hub_if_exists +from gevent._hub_local import get_hub +from gevent.hub import spawn_raw + +class _LockReleaseLink(object): + __slots__ = ( + 'lock', + ) + + def __init__(self, lock): + self.lock = lock + + def __call__(self, _): + self.lock.release() + +_UNSET = object() +_MULTI = object() + +class Semaphore(AbstractLinkable): # pylint:disable=undefined-variable + """ + Semaphore(value=1) -> Semaphore + + .. seealso:: :class:`BoundedSemaphore` for a safer version that prevents + some classes of bugs. If unsure, most users should opt for `BoundedSemaphore`. + + A semaphore manages a counter representing the number of `release` + calls minus the number of `acquire` calls, plus an initial value. + The `acquire` method blocks if necessary until it can return + without making the counter negative. A semaphore does not track ownership + by greenlets; any greenlet can call `release`, whether or not it has previously + called `acquire`. + + If not given, ``value`` defaults to 1. + + The semaphore is a context manager and can be used in ``with`` statements. + + This Semaphore's ``__exit__`` method does not call the trace function + on CPython, but does under PyPy. + + .. versionchanged:: 1.4.0 + Document that the order in which waiters are awakened is not specified. It was not + specified previously, but due to CPython implementation quirks usually went in FIFO order. + .. versionchanged:: 1.5a3 + Waiting greenlets are now awakened in the order in which they waited. + .. versionchanged:: 1.5a3 + The low-level ``rawlink`` method (most users won't use this) now automatically + unlinks waiters before calling them. + .. versionchanged:: 20.12.0 + Improved support for multi-threaded usage. When multi-threaded usage is detected, + instances will no longer create the thread's hub if it's not present. + + .. versionchanged:: 24.2.1 + Uses Python 3 native lock timeouts for cross-thread operations instead + of spinning. + """ + + __slots__ = ( + 'counter', + # long integer, signed (Py2) or unsigned (Py3); see comments + # in the .pxd file for why we store as Python object. Set to ``_UNSET`` + # initially. Set to the ident of the first thread that + # acquires us. If we later see a different thread ident, set + # to ``_MULTI``. + '_multithreaded', + ) + + def __init__(self, value=1, hub=None): + self.counter = value + if self.counter < 0: # Do the check after Cython native int conversion + raise ValueError("semaphore initial value must be >= 0") + super(Semaphore, self).__init__(hub) + self._notify_all = False + self._multithreaded = _UNSET + + def __str__(self): + return '<%s at 0x%x counter=%s _links[%s]>' % ( + self.__class__.__name__, + id(self), + self.counter, + self.linkcount() + ) + + def locked(self): + """ + Return a boolean indicating whether the semaphore can be + acquired (`False` if the semaphore *can* be acquired). Most + useful with binary semaphores (those with an initial value of 1). + + :rtype: bool + """ + return self.counter <= 0 + + def release(self): + """ + Release the semaphore, notifying any waiters if needed. There + is no return value. + + .. note:: + + This can be used to over-release the semaphore. + (Release more times than it has been acquired or was initially + created with.) + + This is usually a sign of a bug, but under some circumstances it can be + used deliberately, for example, to model the arrival of additional + resources. + + :rtype: None + """ + self.counter += 1 + self._check_and_notify() + return self.counter + + def ready(self): + """ + Return a boolean indicating whether the semaphore can be + acquired (`True` if the semaphore can be acquired). + + :rtype: bool + """ + return self.counter > 0 + + def _start_notify(self): + self._check_and_notify() + + def _wait_return_value(self, waited, wait_success): + if waited: + return wait_success + # We didn't even wait, we must be good to go. + # XXX: This is probably dead code, we're careful not to go into the wait + # state if we don't expect to need to + return True + + def wait(self, timeout=None): + """ + Wait until it is possible to acquire this semaphore, or until the optional + *timeout* elapses. + + .. note:: If this semaphore was initialized with a *value* of 0, + this method will block forever if no timeout is given. + + :keyword float timeout: If given, specifies the maximum amount of seconds + this method will block. + :return: A number indicating how many times the semaphore can be acquired + before blocking. *This could be 0,* if other waiters acquired + the semaphore. + :rtype: int + """ + if self.counter > 0: + return self.counter + + self._wait(timeout) # return value irrelevant, whether we got it or got a timeout + return self.counter + + def acquire(self, blocking=True, timeout=None): + """ + acquire(blocking=True, timeout=None) -> bool + + Acquire the semaphore. + + .. note:: If this semaphore was initialized with a *value* of 0, + this method will block forever (unless a timeout is given or blocking is + set to false). + + :keyword bool blocking: If True (the default), this function will block + until the semaphore is acquired. + :keyword float timeout: If given, and *blocking* is true, + specifies the maximum amount of seconds + this method will block. + :return: A `bool` indicating whether the semaphore was acquired. + If ``blocking`` is True and ``timeout`` is None (the default), then + (so long as this semaphore was initialized with a size greater than 0) + this will always return True. If a timeout was given, and it expired before + the semaphore was acquired, False will be returned. (Note that this can still + raise a ``Timeout`` exception, if some other caller had already started a timer.) + """ + # pylint:disable=too-many-return-statements,too-many-branches + # Sadly, the body of this method is rather complicated. + if self._multithreaded is _UNSET: + self._multithreaded = self._get_thread_ident() + elif self._multithreaded != self._get_thread_ident(): + self._multithreaded = _MULTI + + # We conceptually now belong to the hub of the thread that + # called this, whether or not we have to block. Note that we + # cannot force it to be created yet, because Semaphore is used + # by importlib.ModuleLock which is used when importing the hub + # itself! This also checks for cross-thread issues. + invalid_thread_use = None + try: + self._capture_hub(False) + except InvalidThreadUseError as e: + # My hub belongs to some other thread. We didn't release the GIL/object lock + # by raising the exception, so we know this is still true. + invalid_thread_use = e.args + e = None + if not self.counter and blocking: + # We would need to block. So coordinate with the main hub. + return self.__acquire_from_other_thread(invalid_thread_use, blocking, timeout) + + if self.counter > 0: + self.counter -= 1 + return True + + if not blocking: + return False + + if self._multithreaded is not _MULTI and self.hub is None: # pylint:disable=access-member-before-definition + self.hub = get_hub() # pylint:disable=attribute-defined-outside-init + + if self.hub is None and not invalid_thread_use: + # Someone else is holding us. There's not a hub here, + # nor is there a hub in that thread. We'll need to use regular locks. + # This will be unfair to yet a third thread that tries to use us with greenlets. + return self.__acquire_from_other_thread( + (None, None, self._getcurrent(), "NoHubs"), + blocking, + timeout + ) + + # self._wait may drop both the GIL and the _lock_lock. + # By the time we regain control, both have been reacquired. + try: + success = self._wait(timeout) + except LoopExit as ex: + args = ex.args + ex = None + if self.counter: + success = True + else: + # Avoid using ex.hub property to keep holding the GIL + if len(args) == 3 and args[1].main_hub: + # The main hub, meaning the main thread. We probably can do nothing with this. + raise + return self.__acquire_from_other_thread( + (self.hub, get_hub_if_exists(), self._getcurrent(), "LoopExit"), + blocking, + timeout) + + if not success: + assert timeout is not None + # Our timer expired. + return False + + # Neither our timer or another one expired, so we blocked until + # awoke. Therefore, the counter is ours + assert self.counter > 0, (self.counter, blocking, timeout, success,) + self.counter -= 1 + return True + + _py3k_acquire = acquire # PyPy needs this; it must be static for Cython + + def __enter__(self): + self.acquire() + + def __exit__(self, t, v, tb): + self.release() + + def _handle_unswitched_notifications(self, unswitched): + # If we fail to switch to a greenlet in another thread to send + # a notification, just re-queue it, in the hopes that the + # other thread will eventually run notifications itself. + # + # We CANNOT do what the ``super()`` does and actually allow + # this notification to get run sometime in the future by + # scheduling a callback in the other thread. The algorithm + # that we use to handle cross-thread locking/unlocking was + # designed before the schedule-a-callback mechanism was + # implemented. If we allow this to be run as a callback, we + # can find ourself the victim of ``InvalidSwitchError`` (or + # worse, silent corruption) because the switch can come at an + # unexpected time: *after* the destination thread has already + # acquired the lock. + # + # This manifests in a fairly reliable test failure, + # ``gevent.tests.test__semaphore`` + # ``TestSemaphoreMultiThread.test_dueling_threads_with_hub``, + # but ONLY when running in PURE_PYTHON mode. + # + # TODO: Maybe we can rewrite that part of the algorithm to be friendly to + # running the callbacks? + self._links.extend(unswitched) + + def __add_link(self, link): + if not self._notifier: + self.rawlink(link) + else: + self._notifier.args[0].append(link) + + def __acquire_from_other_thread(self, ex_args, blocking, timeout): + assert blocking + # Some other hub owns this object. We must ask it to wake us + # up. In general, we can't use a Python-level ``Lock`` because + # + # (1) it doesn't support a timeout on all platforms; and + # (2) we don't want to block this hub from running. + # + # So we need to do so in a way that cooperates with *two* + # hubs. That's what an async watcher is built for. + # + # Of course, if we don't actually have two hubs, then we must find some other + # solution. That involves using a lock. + + # We have to take an action that drops the GIL and drops the object lock + # to allow the main thread (the thread for our hub) to advance. + owning_hub = ex_args[0] + hub_for_this_thread = ex_args[1] + current_greenlet = ex_args[2] + + if owning_hub is None and hub_for_this_thread is None: + return self.__acquire_without_hubs(timeout) + + if hub_for_this_thread is None: + # Probably a background worker thread. We don't want to create + # the hub if not needed, and since it didn't exist there are no + # other greenlets that we could yield to anyway, so there's nothing + # to block and no reason to try to avoid blocking, so using a native + # lock is the simplest way to go. + return self.__acquire_using_other_hub(owning_hub, timeout) + + # We have a hub we don't want to block. Use an async watcher + # and ask the next releaser of this object to wake us up. + return self.__acquire_using_two_hubs(hub_for_this_thread, + current_greenlet, + timeout) + + def __acquire_using_two_hubs(self, + hub_for_this_thread, + current_greenlet, + timeout): + # Allocating and starting the watcher *could* release the GIL. + # with the libev corcext, allocating won't, but starting briefly will. + # With other backends, allocating might, and starting might also. + # So... + watcher = hub_for_this_thread.loop.async_() + send = watcher.send_ignoring_arg + watcher.start(current_greenlet.switch, self) + try: + with Timeout._start_new_or_dummy(timeout) as timer: + # ... now that we're back holding the GIL, we need to verify our + # state. + try: + while 1: + if self.counter > 0: + self.counter -= 1 + assert self.counter >= 0, (self,) + return True + + self.__add_link(send) + + # Releases the object lock + self._switch_to_hub(hub_for_this_thread) + # We waited and got notified. We should be ready now, so a non-blocking + # acquire() should succeed. But sometimes we get spurious notifications? + # It's not entirely clear how. So we need to loop until we get it, or until + # the timer expires + result = self.acquire(0) + if result: + return result + except Timeout as tex: + if tex is not timer: + raise + return False + finally: + self._quiet_unlink_all(send) + watcher.stop() + watcher.close() + + def __acquire_from_other_thread_cb(self, results, blocking, timeout, thread_lock): + try: + result = self.acquire(blocking, timeout) + results.append(result) + finally: + thread_lock.release() + return result + + def __acquire_using_other_hub(self, owning_hub, timeout): + assert owning_hub is not get_hub_if_exists() + thread_lock = self._allocate_lock() + thread_lock.acquire() + results = [] + + owning_hub.loop.run_callback_threadsafe( + spawn_raw, + self.__acquire_from_other_thread_cb, + results, + 1, # blocking, + timeout, # timeout, + thread_lock) + + # We MUST use a blocking acquire here, or at least be sure we keep going + # until we acquire it. If we timed out waiting here, + # just before the callback runs, then we would be out of sync. + self.__spin_on_native_lock(thread_lock, None) + return results[0] + + def __acquire_without_hubs(self, timeout): + thread_lock = self._allocate_lock() + thread_lock.acquire() + absolute_expiration = 0 + begin = 0 + if timeout: + absolute_expiration = monotonic() + timeout + + # Cython won't compile a lambda here + link = _LockReleaseLink(thread_lock) + while 1: + self.__add_link(link) + if absolute_expiration: + begin = monotonic() + + got_native = self.__spin_on_native_lock(thread_lock, timeout) + self._quiet_unlink_all(link) + if got_native: + if self.acquire(0): + return True + if absolute_expiration: + now = monotonic() + if now >= absolute_expiration: + return False + duration = now - begin + timeout -= duration + if timeout <= 0: + return False + + def __spin_on_native_lock(self, thread_lock, timeout): + self._drop_lock_for_switch_out() + try: + # Unlike Python 2, Python 3 thread locks + # can be interrupted when blocking, with or + # without a timeout. Python 2 didn't even + # support a timeout for non -blocking. + if timeout: + return thread_lock.acquire(True, timeout) + + return thread_lock.acquire() + finally: + self._acquire_lock_for_switch_in() + + +class BoundedSemaphore(Semaphore): + """ + BoundedSemaphore(value=1) -> BoundedSemaphore + + A bounded semaphore checks to make sure its current value doesn't + exceed its initial value. If it does, :class:`ValueError` is + raised. In most situations semaphores are used to guard resources + with limited capacity. If the semaphore is released too many times + it's a sign of a bug. + + If not given, *value* defaults to 1. + """ + + __slots__ = ( + '_initial_value', + ) + + #: For monkey-patching, allow changing the class of error we raise + _OVER_RELEASE_ERROR = ValueError + + def __init__(self, *args, **kwargs): + Semaphore.__init__(self, *args, **kwargs) + self._initial_value = self.counter + + def release(self): + """ + Like :meth:`Semaphore.release`, but raises :class:`ValueError` + if the semaphore is being over-released. + """ + if self.counter >= self._initial_value: + raise self._OVER_RELEASE_ERROR("Semaphore released too many times") + counter = Semaphore.release(self) + # When we are absolutely certain that no one holds this semaphore, + # release our hub and go back to floating. This assists in cross-thread + # uses. + if counter == self._initial_value: + self.hub = None # pylint:disable=attribute-defined-outside-init + return counter + + def _at_fork_reinit(self): + super(BoundedSemaphore, self)._at_fork_reinit() + self.counter = self._initial_value + + +# By building the semaphore with Cython under PyPy, we get +# atomic operations (specifically, exiting/releasing), at the +# cost of some speed (one trivial semaphore micro-benchmark put the pure-python version +# at around 1s and the compiled version at around 4s). Some clever subclassing +# and having only the bare minimum be in cython might help reduce that penalty. +# NOTE: You must use version 0.23.4 or later to avoid a memory leak. +# https://mail.python.org/pipermail/cython-devel/2015-October/004571.html +# However, that's all for naught on up to and including PyPy 4.0.1 which +# have some serious crashing bugs with GC interacting with cython. +# It hasn't been tested since then, and PURE_PYTHON is assumed to be true +# for PyPy in all cases anyway, so this does nothing. + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent.__semaphore') diff --git a/venv/lib/python3.9/site-packages/gevent/_socket3.py b/venv/lib/python3.9/site-packages/gevent/_socket3.py new file mode 100644 index 0000000..555ec61 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_socket3.py @@ -0,0 +1,663 @@ +# Port of Python 3.3's socket module to gevent +""" +Python 3 socket module. +""" +# Our import magic sadly makes this warning useless +# pylint: disable=undefined-variable +# pylint: disable=too-many-statements,too-many-branches +# pylint: disable=too-many-public-methods,unused-argument +from __future__ import absolute_import +import io +import os + + +from gevent import _socketcommon +from gevent._util import copy_globals +from gevent._compat import PYPY +import _socket +from os import dup + + +copy_globals(_socketcommon, globals(), + names_to_ignore=_socketcommon.__extensions__, + dunder_names_to_keep=()) + + +__socket__ = _socketcommon.__socket__ +__implements__ = _socketcommon._implements +__extensions__ = _socketcommon.__extensions__ +__imports__ = _socketcommon.__imports__ +__dns__ = _socketcommon.__dns__ + + +SocketIO = __socket__.SocketIO # pylint:disable=no-member + + +class _closedsocket(object): + __slots__ = ('family', 'type', 'proto', 'orig_fileno', 'description') + + def __init__(self, family, type, proto, orig_fileno, description): + self.family = family + self.type = type + self.proto = proto + self.orig_fileno = orig_fileno + self.description = description + + def fileno(self): + return -1 + + def close(self): + "No-op" + + detach = fileno + + def _dummy(*args, **kwargs): # pylint:disable=no-method-argument,unused-argument,no-self-argument + raise OSError(EBADF, 'Bad file descriptor') + # All _delegate_methods must also be initialized here. + send = recv = recv_into = sendto = recvfrom = recvfrom_into = _dummy + getsockname = _dummy + + def __bool__(self): + return False + + __getattr__ = _dummy + + def __repr__(self): + return "" % ( + id(self), + self.orig_fileno, + self.description, + ) + +class _wrefsocket(_socket.socket): + # Plain stdlib socket.socket objects subclass _socket.socket + # and add weakref ability. The ssl module, for one, counts on this. + # We don't create socket.socket objects (because they may have been + # monkey patched to be the object from this module), but we still + # need to make sure what we do create can be weakrefd. + + __slots__ = ("__weakref__", ) + + if PYPY: + # server.py unwraps the socket object to get the raw _sock; + # it depends on having a timeout property alias, which PyPy does not + # provide. + timeout = property(lambda s: s.gettimeout(), + lambda s, nv: s.settimeout(nv)) + + +class socket(_socketcommon.SocketMixin): + """ + gevent `socket.socket `_ + for Python 3. + + This object should have the same API as the standard library socket linked to above. Not all + methods are specifically documented here; when they are they may point out a difference + to be aware of or may document a method the standard library does not. + """ + + # Subclasses can set this to customize the type of the + # native _socket.socket we create. It MUST be a subclass + # of _wrefsocket. (gevent internal usage only) + _gevent_sock_class = _wrefsocket + + __slots__ = ( + '_io_refs', + '_closed', + ) + + # Take the same approach as socket2: wrap a real socket object, + # don't subclass it. This lets code that needs the raw _sock (not tied to the hub) + # get it. This shows up in tests like test__example_udp_server. + + # In 3.7, socket changed to auto-detecting family, type, and proto + # when given a fileno. + def __init__(self, family=-1, type=-1, proto=-1, fileno=None): + super().__init__() + self._closed = False + if fileno is None: + if family == -1: + family = AddressFamily.AF_INET + if type == -1: + type = SOCK_STREAM + if proto == -1: + proto = 0 + self._sock = self._gevent_sock_class(family, type, proto, fileno) + self.timeout = None + + self._io_refs = 0 + _socket.socket.setblocking(self._sock, False) + fileno = _socket.socket.fileno(self._sock) + self.hub = get_hub() + io_class = self.hub.loop.io + self._read_event = io_class(fileno, 1) + self._write_event = io_class(fileno, 2) + self.timeout = _socket.getdefaulttimeout() + + def __getattr__(self, name): + return getattr(self._sock, name) + + def _accept(self): + # Python 3.11 started checking for this method on the class object, + # so we need to explicitly delegate. + return self._sock._accept() + + if hasattr(_socket, 'SOCK_NONBLOCK'): + # Only defined under Linux + @property + def type(self): + # See https://github.com/gevent/gevent/pull/399 + if self.timeout != 0.0: + return self._sock.type & ~_socket.SOCK_NONBLOCK # pylint:disable=no-member + return self._sock.type + + def __enter__(self): + return self + + def __exit__(self, *args): + if not self._closed: + self.close() + + def __repr__(self): + """Wrap __repr__() to reveal the real class name.""" + try: + s = repr(self._sock) + except Exception as ex: # pylint:disable=broad-except + # Observed on Windows Py3.3, printing the repr of a socket + # that just suffered a ConnectionResetError [WinError 10054]: + # "OverflowError: no printf formatter to display the socket descriptor in decimal" + # Not sure what the actual cause is or if there's a better way to handle this + s = '' % ex + + if s.startswith(" socket object + + Return a new socket object connected to the same system resource. + """ + fd = dup(self.fileno()) + sock = self.__class__(self.family, self.type, self.proto, fileno=fd) + sock.settimeout(self.gettimeout()) + return sock + + def accept(self): + """accept() -> (socket object, address info) + + Wait for an incoming connection. Return a new socket + representing the connection, and the address of the client. + For IP sockets, the address info is a pair (hostaddr, port). + """ + while True: + try: + fd, addr = self._accept() + break + except BlockingIOError: + if self.timeout == 0.0: + raise + self._wait(self._read_event) + sock = socket(self.family, self.type, self.proto, fileno=fd) + # Python Issue #7995: if no default timeout is set and the listening + # socket had a (non-zero) timeout, force the new socket in blocking + # mode to override platform-specific socket flags inheritance. + # XXX do we need to do this? + if getdefaulttimeout() is None and self.gettimeout(): + sock.setblocking(True) + return sock, addr + + def makefile(self, mode="r", buffering=None, *, + encoding=None, errors=None, newline=None): + """Return an I/O stream connected to the socket + + The arguments are as for io.open() after the filename, + except the only mode characters supported are 'r', 'w' and 'b'. + The semantics are similar too. + """ + # XXX refactor to share code? We ought to be able to use our FileObject, + # adding the appropriate amount of refcounting. At the very least we can use our + # OpenDescriptor to handle the parsing. + for c in mode: + if c not in {"r", "w", "b"}: + raise ValueError("invalid mode %r (only r, w, b allowed)") + writing = "w" in mode + reading = "r" in mode or not writing + assert reading or writing + binary = "b" in mode + rawmode = "" + if reading: + rawmode += "r" + if writing: + rawmode += "w" + raw = SocketIO(self, rawmode) + self._io_refs += 1 + if buffering is None: + buffering = -1 + if buffering < 0: + buffering = io.DEFAULT_BUFFER_SIZE + if buffering == 0: + if not binary: + raise ValueError("unbuffered streams must be binary") + return raw + if reading and writing: + buffer = io.BufferedRWPair(raw, raw, buffering) + elif reading: + buffer = io.BufferedReader(raw, buffering) + else: + assert writing + buffer = io.BufferedWriter(raw, buffering) + if binary: + return buffer + text = io.TextIOWrapper(buffer, encoding, errors, newline) + text.mode = mode + return text + + def _decref_socketios(self): + # Called by SocketIO when it is closed. + if self._io_refs > 0: + self._io_refs -= 1 + if self._closed: + self.close() + + def _drop_ref_on_close(self, sock): + # Send the close event to wake up any watchers we don't know about + # so that (hopefully) they can be closed before we destroy + # the FD and invalidate them. We may be in the hub running pending + # callbacks now, or this may take until the next iteration. + should_defer = self.hub.loop.closing_fd(sock.fileno()) + # Schedule the actual close to happen after that, but only if needed. + # (If we always defer, we wind up closing things much later than expected.) + # Note that if we're in the middle of running callbacks, simply scheduling + # a callback with ``run_callback`` could result in the callback being + # called IMMEDIATELY, which completely defeats the point. + if should_defer: + check = self.hub.loop.check() + def cb(s): + try: + s.close() + except OSError: + pass + finally: + check.stop() + check.close() + check.start(cb, sock) + else: + # Note that if the file descriptor got closed (``os.close``) + # closing the socket will now raise OSError: EBADF. The + # stdlib does the same. + sock.close() + + + def _detach_socket(self, reason): + if not self._sock: + return + + # Break any references to the underlying socket object. Tested + # by test__refcount. (Why does this matter?). Be sure to + # preserve our same family/type/proto if possible (if we + # don't, we can get TypeError instead of OSError; see + # test_socket.SendmsgUDP6Test.testSendmsgAfterClose)... but + # this isn't always possible (see test_socket.test_unknown_socket_family_repr) + sock = self._sock + family = -1 + type = -1 + proto = -1 + fileno = None + try: + family = sock.family + type = sock.type + proto = sock.proto + fileno = sock.fileno() + except OSError: + pass + # Break any reference to the loop.io objects. Our fileno, + # which they were tied to, is about to be free to be reused, so these + # objects are no longer functional. + # pylint:disable-next=superfluous-parens + self._drop_events_and_close(closefd=(reason == 'closed')) + + self._sock = _closedsocket(family, type, proto, fileno, reason) + + def _real_close(self, _ss=_socket.socket): + # This function should not reference any globals. See Python issue #808164. + if not self._sock: + return + + self._detach_socket('closed') + + + def close(self): + # This function should not reference any globals. See Python issue #808164. + self._closed = True + if self._io_refs <= 0: + self._real_close() + + @property + def closed(self): + return self._closed + + def detach(self): + """ + detach() -> file descriptor + + Close the socket object without closing the underlying file + descriptor. The object cannot be used after this call; when the + real file descriptor is closed, the number that was previously + used here may be reused. The fileno() method, after this call, + will return an invalid socket id. + + The previous descriptor is returned. + + .. versionchanged:: 1.5 + + Also immediately drop any native event loop resources. + """ + self._closed = True + sock = self._sock + self._detach_socket('detached') + return sock.detach() + + if hasattr(_socket.socket, 'recvmsg'): + # Only on Unix; PyPy 3.5 5.10.0 provides sendmsg and recvmsg, but not + # recvmsg_into (at least on os x) + + def recvmsg(self, *args): + while True: + try: + return self._sock.recvmsg(*args) + except error as ex: + if ex.args[0] != EWOULDBLOCK or self.timeout == 0.0: + raise + self._wait(self._read_event) + + if hasattr(_socket.socket, 'recvmsg_into'): + + def recvmsg_into(self, buffers, *args): + while True: + try: + if args: + # The C code is sensitive about whether extra arguments are + # passed or not. + return self._sock.recvmsg_into(buffers, *args) + return self._sock.recvmsg_into(buffers) + except error as ex: + if ex.args[0] != EWOULDBLOCK or self.timeout == 0.0: + raise + self._wait(self._read_event) + + if hasattr(_socket.socket, 'sendmsg'): + # Only on Unix + def sendmsg(self, buffers, ancdata=(), flags=0, address=None): + try: + return self._sock.sendmsg(buffers, ancdata, flags, address) + except error as ex: + if flags & getattr(_socket, 'MSG_DONTWAIT', 0): + # Enable non-blocking behaviour + # XXX: Do all platforms that have sendmsg have MSG_DONTWAIT? + raise + + if ex.args[0] != EWOULDBLOCK or self.timeout == 0.0: + raise + self._wait(self._write_event) + try: + return self._sock.sendmsg(buffers, ancdata, flags, address) + except error as ex2: + if ex2.args[0] == EWOULDBLOCK: + return 0 + raise + + + # sendfile: new in 3.5. But there's no real reason to not + # support it everywhere. Note that we can't use os.sendfile() + # because it's not cooperative. + def _sendfile_use_sendfile(self, file, offset=0, count=None): + # This is called directly by tests + raise __socket__._GiveupOnSendfile() # pylint:disable=no-member + + def _sendfile_use_send(self, file, offset=0, count=None): + self._check_sendfile_params(file, offset, count) + if self.gettimeout() == 0: + raise ValueError("non-blocking sockets are not supported") + if offset: + file.seek(offset) + blocksize = min(count, 8192) if count else 8192 + total_sent = 0 + # localize variable access to minimize overhead + file_read = file.read + sock_send = self.send + try: + while True: + if count: + blocksize = min(count - total_sent, blocksize) + if blocksize <= 0: + break + data = memoryview(file_read(blocksize)) + if not data: + break # EOF + while True: + try: + sent = sock_send(data) + except BlockingIOError: + continue + else: + total_sent += sent + if sent < len(data): + data = data[sent:] + else: + break + return total_sent + finally: + if total_sent > 0 and hasattr(file, 'seek'): + file.seek(offset + total_sent) + + def _check_sendfile_params(self, file, offset, count): + if 'b' not in getattr(file, 'mode', 'b'): + raise ValueError("file should be opened in binary mode") + if not self.type & SOCK_STREAM: + raise ValueError("only SOCK_STREAM type sockets are supported") + if count is not None: + if not isinstance(count, int): + raise TypeError( + "count must be a positive integer (got {!r})".format(count)) + if count <= 0: + raise ValueError( + "count must be a positive integer (got {!r})".format(count)) + + def sendfile(self, file, offset=0, count=None): + """sendfile(file[, offset[, count]]) -> sent + + Send a file until EOF is reached by using high-performance + os.sendfile() and return the total number of bytes which + were sent. + *file* must be a regular file object opened in binary mode. + If os.sendfile() is not available (e.g. Windows) or file is + not a regular file socket.send() will be used instead. + *offset* tells from where to start reading the file. + If specified, *count* is the total number of bytes to transmit + as opposed to sending the file until EOF is reached. + File position is updated on return or also in case of error in + which case file.tell() can be used to figure out the number of + bytes which were sent. + The socket must be of SOCK_STREAM type. + Non-blocking sockets are not supported. + + .. versionadded:: 1.1rc4 + Added in Python 3.5, but available under all Python 3 versions in + gevent. + """ + return self._sendfile_use_send(file, offset, count) + + + if os.name == 'nt': + def get_inheritable(self): + return os.get_handle_inheritable(self.fileno()) + + def set_inheritable(self, inheritable): + os.set_handle_inheritable(self.fileno(), inheritable) + else: + def get_inheritable(self): + return os.get_inheritable(self.fileno()) + + def set_inheritable(self, inheritable): + os.set_inheritable(self.fileno(), inheritable) + + get_inheritable.__doc__ = "Get the inheritable flag of the socket" + set_inheritable.__doc__ = "Set the inheritable flag of the socket" + + + +SocketType = socket + + +def fromfd(fd, family, type, proto=0): + """ fromfd(fd, family, type[, proto]) -> socket object + + Create a socket object from a duplicate of the given file + descriptor. The remaining arguments are the same as for socket(). + """ + nfd = dup(fd) + return socket(family, type, proto, nfd) + + +if hasattr(_socket.socket, "share"): + def fromshare(info): + """ fromshare(info) -> socket object + + Create a socket object from a the bytes object returned by + socket.share(pid). + """ + return socket(0, 0, 0, info) + + __implements__.append('fromshare') + + +def _fallback_socketpair(family=AF_INET, type=SOCK_STREAM, proto=0): + # We originally used https://gist.github.com/4325783, by Geert Jansen. (Public domain.) + # We took it from 3.6 release, confirmed unchanged in 3.7 and + # 3.8a1. Expected to be used only on Win. Added to Win/3.5. + # It is always available as `socket._fallback_socketpair` from at least 3.9, + # We would like to stop carrying around our own implementation, but + # using _fallback_socketpair directly would only work if we are monkey patched. + + # Current version taken from 3.13rc2 + + # PyPy doesn't name its fallback `_fallback_socketpair`, it uses + # an older copy of socket.py. + _LOCALHOST = '127.0.0.1' + _LOCALHOST_V6 = '::1' + + if family == AF_INET: + host = _LOCALHOST + elif family == AF_INET6: + host = _LOCALHOST_V6 + else: + raise ValueError("Only AF_INET and AF_INET6 socket address families " + "are supported") + if type != SOCK_STREAM: + raise ValueError("Only SOCK_STREAM socket type is supported") + if proto != 0: + raise ValueError("Only protocol zero is supported") + + # We create a connected TCP socket. Note the trick with + # setblocking(False) that prevents us from having to create a thread. + lsock = socket(family, type, proto) + try: + lsock.bind((host, 0)) + lsock.listen() + # On IPv6, ignore flow_info and scope_id + addr, port = lsock.getsockname()[:2] + csock = socket(family, type, proto) + try: + csock.setblocking(False) + try: + csock.connect((addr, port)) + except (BlockingIOError, InterruptedError): + pass + csock.setblocking(True) + ssock, _ = lsock.accept() + except: + csock.close() + raise + finally: + lsock.close() + + # Authenticating avoids using a connection from something else + # able to connect to {host}:{port} instead of us. + # We expect only AF_INET and AF_INET6 families. + try: + if ( + ssock.getsockname() != csock.getpeername() + or csock.getsockname() != ssock.getpeername() + ): + raise ConnectionError("Unexpected peer connection") + except: + # getsockname() and getpeername() can fail + # if either socket isn't connected. + ssock.close() + csock.close() + raise + + return (ssock, csock) + +if hasattr(__socket__, _fallback_socketpair.__name__): + __implements__.append(_fallback_socketpair.__name__) + +if hasattr(_socket, "socketpair"): + + def socketpair(family=None, type=SOCK_STREAM, proto=0): + """socketpair([family[, type[, proto]]]) -> (socket object, socket object) + + Create a pair of socket objects from the sockets returned by the platform + socketpair() function. + The arguments are the same as for socket() except the default family is + AF_UNIX if defined on the platform; otherwise, the default is AF_INET. + + .. versionchanged:: 1.2 + All Python 3 versions on Windows supply this function (natively + supplied by Python 3.5 and above). + """ + if family is None: + try: + family = AF_UNIX + except NameError: + family = AF_INET + a, b = _socket.socketpair(family, type, proto) + a = socket(family, type, proto, a.detach()) + b = socket(family, type, proto, b.detach()) + return a, b + +else: # pragma: no cover + socketpair = _fallback_socketpair + + + +__all__ = __implements__ + __extensions__ + __imports__ +if _fallback_socketpair.__name__ in __all__: + __all__.remove(_fallback_socketpair.__name__) + +__version_specific__ = ( + # Python 3.7b1+ + 'close', + # Python 3.10rc1+ + 'TCP_KEEPALIVE', + 'TCP_KEEPCNT', +) +for _x in __version_specific__: + if hasattr(__socket__, _x): + vars()[_x] = getattr(__socket__, _x) + if _x not in __all__: + __all__.append(_x) +del _x diff --git a/venv/lib/python3.9/site-packages/gevent/_socketcommon.py b/venv/lib/python3.9/site-packages/gevent/_socketcommon.py new file mode 100644 index 0000000..5ba0b35 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_socketcommon.py @@ -0,0 +1,749 @@ +# Copyright (c) 2009-2014 Denis Bilenko and gevent contributors. See LICENSE for details. +from __future__ import absolute_import + +# standard functions and classes that this module re-implements in a gevent-aware way: +_implements = [ + 'create_connection', + 'socket', + 'SocketType', + 'fromfd', + 'socketpair', +] + +__dns__ = [ + 'getaddrinfo', + 'gethostbyname', + 'gethostbyname_ex', + 'gethostbyaddr', + 'getnameinfo', + 'getfqdn', +] + +_implements += __dns__ + +# non-standard functions that this module provides: +__extensions__ = [ + 'cancel_wait', + 'wait_read', + 'wait_write', + 'wait_readwrite', +] + +# standard functions and classes that this module re-imports +__imports__ = [ + 'error', + 'gaierror', + 'herror', + 'htonl', + 'htons', + 'ntohl', + 'ntohs', + 'inet_aton', + 'inet_ntoa', + 'inet_pton', + 'inet_ntop', + 'timeout', + 'gethostname', + 'getprotobyname', + 'getservbyname', + 'getservbyport', + 'getdefaulttimeout', + 'setdefaulttimeout', + # Windows: + 'errorTab', + # Python 3 + 'AddressFamily', + 'SocketKind', + 'CMSG_LEN', + 'CMSG_SPACE', + 'dup', + 'if_indextoname', + 'if_nameindex', + 'if_nametoindex', + 'sethostname', + 'create_server', + 'has_dualstack_ipv6', + 'recv_fds', + 'send_fds', +] + + +import time + +from gevent._hub_local import get_hub_noargs as get_hub +from gevent._compat import string_types, integer_types +from gevent._compat import WIN as is_windows +from gevent._compat import OSX as is_macos +from gevent._compat import exc_clear +from gevent._util import copy_globals +from gevent._greenlet_primitives import get_memory as _get_memory +from gevent._hub_primitives import wait_on_socket as _wait_on_socket + +from gevent.timeout import Timeout + + +# pylint:disable=no-name-in-module,unused-import +if is_windows: + # no such thing as WSAEPERM or error code 10001 according to winsock.h or MSDN + from errno import WSAEINVAL as EINVAL + from errno import WSAEWOULDBLOCK as EWOULDBLOCK + from errno import WSAEINPROGRESS as EINPROGRESS + from errno import WSAEALREADY as EALREADY + from errno import WSAEISCONN as EISCONN + from gevent.win32util import formatError as strerror + EAGAIN = EWOULDBLOCK +else: + from errno import EINVAL + from errno import EWOULDBLOCK + from errno import EINPROGRESS + from errno import EALREADY + from errno import EAGAIN + from errno import EISCONN + from os import strerror + +try: + from errno import EBADF +except ImportError: + EBADF = 9 + +try: + from errno import EHOSTUNREACH +except ImportError: + EHOSTUNREACH = -1 + +try: + from errno import ECONNREFUSED +except ImportError: + ECONNREFUSED = -1 + +# macOS can return EPROTOTYPE when writing to a socket that is shutting +# Down. Retrying the write should return the expected EPIPE error. +# Downstream classes (like pywsgi) know how to handle/ignore EPIPE. +# This set is used by socket.send() to decide whether the write should +# be retried. The default is to retry only on EWOULDBLOCK. Here we add +# EPROTOTYPE on macOS to handle this platform-specific race condition. +GSENDAGAIN = (EWOULDBLOCK,) +if is_macos: + from errno import EPROTOTYPE + GSENDAGAIN += (EPROTOTYPE,) + +import _socket +_realsocket = _socket.socket +import socket as __socket__ + + +_SocketError = __socket__.error + +_name = _value = None +__imports__ = copy_globals(__socket__, globals(), + only_names=__imports__, + ignore_missing_names=True) + +for _name in __socket__.__all__: + _value = getattr(__socket__, _name) + if isinstance(_value, (integer_types, string_types)): + globals()[_name] = _value + __imports__.append(_name) + +del _name, _value + +_timeout_error = timeout # pylint: disable=undefined-variable + +from gevent import _hub_primitives +_hub_primitives.set_default_timeout_error(_timeout_error) + +wait = _hub_primitives.wait_on_watcher +wait_read = _hub_primitives.wait_read +wait_write = _hub_primitives.wait_write +wait_readwrite = _hub_primitives.wait_readwrite + +#: The exception raised by default on a call to :func:`cancel_wait` +class cancel_wait_ex(error): # pylint: disable=undefined-variable + def __init__(self): + super(cancel_wait_ex, self).__init__( + EBADF, + 'File descriptor was closed in another greenlet') + + +def cancel_wait(watcher, error=cancel_wait_ex): + """See :meth:`gevent.hub.Hub.cancel_wait`""" + get_hub().cancel_wait(watcher, error) + + +def gethostbyname(hostname): + """ + gethostbyname(host) -> address + + Return the IP address (a string of the form '255.255.255.255') for a host. + + .. seealso:: :doc:`/dns` + """ + return get_hub().resolver.gethostbyname(hostname) + + +def gethostbyname_ex(hostname): + """ + gethostbyname_ex(host) -> (name, aliaslist, addresslist) + + Return the true host name, a list of aliases, and a list of IP addresses, + for a host. The host argument is a string giving a host name or IP number. + Resolve host and port into list of address info entries. + + .. seealso:: :doc:`/dns` + """ + return get_hub().resolver.gethostbyname_ex(hostname) + +def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): + """ + Resolve host and port into list of address info entries. + + Translate the host/port argument into a sequence of 5-tuples that contain + all the necessary arguments for creating a socket connected to that service. + host is a domain name, a string representation of an IPv4/v6 address or + None. port is a string service name such as 'http', a numeric port number or + None. By passing None as the value of host and port, you can pass NULL to + the underlying C API. + + The family, type and proto arguments can be optionally specified in order to + narrow the list of addresses returned. Passing zero as a value for each of + these arguments selects the full range of results. + + .. seealso:: :doc:`/dns` + """ + # Also, on Python 3, we need to translate into the special enums. + # Our lower-level resolvers, including the thread and blocking, which use _socket, + # function simply with integers. + addrlist = get_hub().resolver.getaddrinfo(host, port, family, type, proto, flags) + result = [ + # pylint:disable=undefined-variable + (_intenum_converter(af, AddressFamily), + _intenum_converter(socktype, SocketKind), + proto, canonname, sa) + for af, socktype, proto, canonname, sa + in addrlist + ] + return result + +def _intenum_converter(value, enum_klass): + try: + return enum_klass(value) + except ValueError: # pragma: no cover + return value + + +def gethostbyaddr(ip_address): + """ + gethostbyaddr(ip_address) -> (name, aliaslist, addresslist) + + Return the true host name, a list of aliases, and a list of IP addresses, + for a host. The host argument is a string giving a host name or IP number. + + .. seealso:: :doc:`/dns` + """ + return get_hub().resolver.gethostbyaddr(ip_address) + + +def getnameinfo(sockaddr, flags): + """ + getnameinfo(sockaddr, flags) -> (host, port) + + Get host and port for a sockaddr. + + .. seealso:: :doc:`/dns` + """ + return get_hub().resolver.getnameinfo(sockaddr, flags) + + +def getfqdn(name=''): + """Get fully qualified domain name from name. + + An empty argument is interpreted as meaning the local host. + + First the hostname returned by gethostbyaddr() is checked, then + possibly existing aliases. In case no FQDN is available, hostname + from gethostname() is returned. + + .. versionchanged:: 23.7.0 + The IPv6 generic address '::' now returns the result of + ``gethostname``, like the IPv4 address '0.0.0.0'. + """ + # pylint: disable=undefined-variable + name = name.strip() + # IPv6 added in a late Python 3.10/3.11 patch release. + # https://github.com/python/cpython/issues/100374 + if not name or name in ('0.0.0.0', '::'): + name = gethostname() + try: + hostname, aliases, _ = gethostbyaddr(name) + except error: + pass + else: + aliases.insert(0, hostname) + for name in aliases: # EWW! pylint:disable=redefined-argument-from-local + if isinstance(name, bytes): + if b'.' in name: + break + elif '.' in name: + break + else: + name = hostname + return name + +def __send_chunk(socket, data_memory, flags, timeleft, end, timeout=_timeout_error): + """ + Send the complete contents of ``data_memory`` before returning. + This is the core loop around :meth:`send`. + + :param timeleft: Either ``None`` if there is no timeout involved, + or a float indicating the timeout to use. + :param end: Either ``None`` if there is no timeout involved, or + a float giving the absolute end time. + :return: An updated value for ``timeleft`` (or None) + :raises timeout: If ``timeleft`` was given and elapsed while + sending this chunk. + """ + data_sent = 0 + len_data_memory = len(data_memory) + started_timer = 0 + while data_sent < len_data_memory: + chunk = data_memory[data_sent:] + if timeleft is None: + data_sent += socket.send(chunk, flags) + elif started_timer and timeleft <= 0: + # Check before sending to guarantee a check + # happens even if each chunk successfully sends its data + # (especially important for SSL sockets since they have large + # buffers). But only do this if we've actually tried to + # send something once to avoid spurious timeouts on non-blocking + # sockets. + raise timeout('timed out') + else: + started_timer = 1 + data_sent += socket.send(chunk, flags, timeout=timeleft) + timeleft = end - time.time() + + return timeleft + +def _sendall(socket, data_memory, flags, + SOL_SOCKET=__socket__.SOL_SOCKET, # pylint:disable=no-member + SO_SNDBUF=__socket__.SO_SNDBUF): # pylint:disable=no-member + """ + Send the *data_memory* (which should be a memoryview) + using the gevent *socket*, performing well on PyPy. + """ + + # On PyPy up through 5.10.0, both PyPy2 and PyPy3, subviews + # (slices) of a memoryview() object copy the underlying bytes the + # first time the builtin socket.send() method is called. On a + # non-blocking socket (that thus calls socket.send() many times) + # with a large input, this results in many repeated copies of an + # ever smaller string, depending on the networking buffering. For + # example, if each send() can process 1MB of a 50MB input, and we + # naively pass the entire remaining subview each time, we'd copy + # 49MB, 48MB, 47MB, etc, thus completely killing performance. To + # workaround this problem, we work in reasonable, fixed-size + # chunks. This results in a 10x improvement to bench_sendall.py, + # while having no measurable impact on CPython (since it doesn't + # copy at all the only extra overhead is a few python function + # calls, which is negligible for large inputs). + + # On one macOS machine, PyPy3 5.10.1 produced ~ 67.53 MB/s before this change, + # and ~ 616.01 MB/s after. + + # See https://bitbucket.org/pypy/pypy/issues/2091/non-blocking-socketsend-slow-gevent + + # Too small of a chunk (the socket's buf size is usually too + # small) results in reduced perf due to *too many* calls to send and too many + # small copies. With a buffer of 143K (the default on my system), for + # example, bench_sendall.py yields ~264MB/s, while using 1MB yields + # ~653MB/s (matching CPython). 1MB is arbitrary and might be better + # chosen, say, to match a page size? + + len_data_memory = len(data_memory) + if not len_data_memory: + # Don't try to send empty data at all, no point, and breaks ssl + # See issue 719 + return 0 + + + chunk_size = max(socket.getsockopt(SOL_SOCKET, SO_SNDBUF), 1024 * 1024) + + data_sent = 0 + end = None + timeleft = None + if socket.timeout is not None: + timeleft = socket.timeout + end = time.time() + timeleft + + while data_sent < len_data_memory: + chunk_end = min(data_sent + chunk_size, len_data_memory) + chunk = data_memory[data_sent:chunk_end] + + timeleft = __send_chunk(socket, chunk, flags, timeleft, end) + data_sent += len(chunk) # Guaranteed it sent the whole thing + +# pylint:disable=no-member +_RESOLVABLE_FAMILIES = (__socket__.AF_INET,) +if __socket__.has_ipv6: + _RESOLVABLE_FAMILIES += (__socket__.AF_INET6,) + +def _resolve_addr(sock, address): + # Internal method: resolve the AF_INET[6] address using + # getaddrinfo. + if sock.family not in _RESOLVABLE_FAMILIES or not isinstance(address, tuple): + return address + # address is (host, port) (ipv4) or (host, port, flowinfo, scopeid) (ipv6). + # If it's already resolved, no need to go through getaddrinfo() again. + # That can lose precision (e.g., on IPv6, it can lose scopeid). The standard library + # does this in socketmodule.c:setipaddr. (This is only part of the logic, the real + # thing is much more complex.) + try: + if __socket__.inet_pton(sock.family, address[0]): + return address + except AttributeError: # pragma: no cover + # inet_pton might not be available. + pass + except _SocketError: + # Not parseable, needs resolved. + pass + + + # We don't pass the port to getaddrinfo because the C + # socket module doesn't either (on some systems its + # illegal to do that without also passing socket type and + # protocol). Instead we join the port back at the end. + # See https://github.com/gevent/gevent/issues/1252 + host, port = address[:2] + r = getaddrinfo(host, None, sock.family) + address = r[0][-1] + if len(address) == 2: + address = (address[0], port) + else: + address = (address[0], port, address[2], address[3]) + return address + + +timeout_default = object() + +class SocketMixin(object): + # pylint:disable=too-many-public-methods + __slots__ = ( + 'hub', + 'timeout', + '_read_event', + '_write_event', + '_sock', + '__weakref__', + ) + + def __init__(self): + # Writing: + # (self.a, self.b) = (None,) * 2 + # generates the fastest bytecode. But At least on PyPy, + # where the SSLSocket subclass has a timeout property, + # it results in the settimeout() method getting the tuple + # as the value, not the unpacked None. + self._read_event = None + self._write_event = None + self._sock = None + self.hub = None + self.timeout = None + + def _drop_events_and_close(self, closefd=True, _cancel_wait_ex=cancel_wait_ex): + hub = self.hub + read_event = self._read_event + write_event = self._write_event + self._read_event = self._write_event = None + hub.cancel_waits_close_and_then( + (read_event, write_event), + _cancel_wait_ex, + # Pass the socket to keep it alive until such time as + # the waiters are guaranteed to be closed. + self._drop_ref_on_close if closefd else id, + self._sock + ) + + def _drop_ref_on_close(self, sock): + raise NotImplementedError + + def _get_ref(self): + return self._read_event.ref or self._write_event.ref + + def _set_ref(self, value): + self._read_event.ref = value + self._write_event.ref = value + + ref = property(_get_ref, _set_ref) + + _wait = _wait_on_socket + + ### + # Common methods defined here need to be added to the + # API documentation specifically. + ### + + def settimeout(self, howlong): + if howlong is not None: + try: + f = howlong.__float__ + except AttributeError: + raise TypeError('a float is required', howlong, type(howlong)) + howlong = f() + if howlong < 0.0: + raise ValueError('Timeout value out of range') + # avoid recursion with any property on self.timeout + SocketMixin.timeout.__set__(self, howlong) + + def gettimeout(self): + # avoid recursion with any property on self.timeout + return SocketMixin.timeout.__get__(self, type(self)) + + def setblocking(self, flag): + # Beginning in 3.6.0b3 this is supposed to raise + # if the file descriptor is closed, but the test for it + # involves closing the fileno directly. Since we + # don't touch the fileno here, it doesn't make sense for + # us. + if flag: + self.timeout = None + else: + self.timeout = 0.0 + + def shutdown(self, how): + if how == 0: # SHUT_RD + self.hub.cancel_wait(self._read_event, cancel_wait_ex) + elif how == 1: # SHUT_WR + self.hub.cancel_wait(self._write_event, cancel_wait_ex) + else: + self.hub.cancel_wait(self._read_event, cancel_wait_ex) + self.hub.cancel_wait(self._write_event, cancel_wait_ex) + self._sock.shutdown(how) + + # pylint:disable-next=undefined-variable + family = property(lambda self: _intenum_converter(self._sock.family, AddressFamily)) + # pylint:disable-next=undefined-variable + type = property(lambda self: _intenum_converter(self._sock.type, SocketKind)) + proto = property(lambda self: self._sock.proto) + + def fileno(self): + return self._sock.fileno() + + def getsockname(self): + return self._sock.getsockname() + + def getpeername(self): + return self._sock.getpeername() + + def bind(self, address): + return self._sock.bind(address) + + def listen(self, *args): + return self._sock.listen(*args) + + def getsockopt(self, *args): + return self._sock.getsockopt(*args) + + def setsockopt(self, *args): + return self._sock.setsockopt(*args) + + if hasattr(__socket__.socket, 'ioctl'): # os.name == 'nt' + def ioctl(self, *args): + return self._sock.ioctl(*args) + if hasattr(__socket__.socket, 'sleeptaskw'): # os.name == 'riscos + def sleeptaskw(self, *args): + return self._sock.sleeptaskw(*args) + + def getblocking(self): + """ + Returns whether the socket will approximate blocking + behaviour. + + .. versionadded:: 1.3a2 + Added in Python 3.7. + """ + return self.timeout != 0.0 + + def connect(self, address): + """ + Connect to *address*. + + .. versionchanged:: 20.6.0 + If the host part of the address includes an IPv6 scope ID, + it will be used instead of ignored, if the platform supplies + :func:`socket.inet_pton`. + """ + # In the standard library, ``connect`` and ``connect_ex`` are implemented + # in C, and they both call a C function ``internal_connect`` to do the real + # work. This means that it is a visible behaviour difference to have our + # Python implementation of ``connect_ex`` simply call ``connect``: + # it could be overridden in a subclass or at runtime! Because of our exception handling, + # this can make a difference for known subclasses like SSLSocket. + self._internal_connect(address) + + def connect_ex(self, address): + """ + Connect to *address*, returning a result code. + + .. versionchanged:: 23.7.0 + No longer uses an overridden ``connect`` method on + this object. Instead, like the standard library, this method always + uses a non-replacable internal connection function. + """ + try: + return self._internal_connect(address) or 0 + except __socket__.timeout: + return EAGAIN + except __socket__.gaierror: # pylint:disable=try-except-raise + # gaierror/overflowerror/typerror is not silenced by connect_ex; + # gaierror extends error so catch it first + raise + except _SocketError as ex: + # Python 3: error is now OSError and it has various subclasses. + # Only those that apply to actually connecting are silenced by + # connect_ex. + # On Python 3, we want to check ex.errno; on Python 2 + # there is no such attribute, we need to look at the first + # argument. + try: + err = ex.errno + except AttributeError: + err = ex.args[0] + if err: + return err + raise + + def _internal_connect(self, address): + # Like the C function ``internal_connect``, not meant to be overridden, + # but exposed for testing. + if self.timeout == 0.0: + return self._sock.connect(address) + address = _resolve_addr(self._sock, address) + with Timeout._start_new_or_dummy(self.timeout, __socket__.timeout("timed out")): + while 1: + err = self.getsockopt(__socket__.SOL_SOCKET, __socket__.SO_ERROR) + if err: + raise _SocketError(err, strerror(err)) + result = self._sock.connect_ex(address) + + if not result or result == EISCONN: + break + if (result in (EWOULDBLOCK, EINPROGRESS, EALREADY)) or (result == EINVAL and is_windows): + self._wait(self._write_event) + else: + if (isinstance(address, tuple) + and address[0] == 'fe80::1' + and result == EHOSTUNREACH): + # On Python 3.7 on mac, we see EHOSTUNREACH + # returned for this link-local address, but it really is + # supposed to be ECONNREFUSED according to the standard library + # tests (test_socket.NetworkConnectionNoServer.test_create_connection) + # (On previous versions, that code passed the '127.0.0.1' IPv4 address, so + # ipv6 link locals were never a factor; 3.7 passes 'localhost'.) + # It is something of a mystery how the stdlib socket code doesn't + # produce EHOSTUNREACH---I (JAM) can't see how socketmodule.c would avoid + # that. The normal connect just calls connect_ex much like we do. + result = ECONNREFUSED + raise _SocketError(result, strerror(result)) + + def recv(self, *args): + while 1: + try: + return self._sock.recv(*args) + except _SocketError as ex: + if ex.args[0] != EWOULDBLOCK or self.timeout == 0.0: + raise + # QQQ without clearing exc_info test__refcount.test_clean_exit fails + exc_clear() # Python 2 + self._wait(self._read_event) + + def recvfrom(self, *args): + while 1: + try: + return self._sock.recvfrom(*args) + except _SocketError as ex: + if ex.args[0] != EWOULDBLOCK or self.timeout == 0.0: + raise + exc_clear() # Python 2 + self._wait(self._read_event) + + def recvfrom_into(self, *args): + while 1: + try: + return self._sock.recvfrom_into(*args) + except _SocketError as ex: + if ex.args[0] != EWOULDBLOCK or self.timeout == 0.0: + raise + exc_clear() # Python 2 + self._wait(self._read_event) + + def recv_into(self, *args): + while 1: + try: + return self._sock.recv_into(*args) + except _SocketError as ex: + if ex.args[0] != EWOULDBLOCK or self.timeout == 0.0: + raise + exc_clear() # Python 2 + self._wait(self._read_event) + + def sendall(self, data, flags=0): + # this sendall is also reused by gevent.ssl.SSLSocket subclass, + # so it should not call self._sock methods directly + data_memory = _get_memory(data) + return _sendall(self, data_memory, flags) + + def sendto(self, *args): + try: + return self._sock.sendto(*args) + except _SocketError as ex: + if ex.args[0] != EWOULDBLOCK or self.timeout == 0.0: + raise + exc_clear() + self._wait(self._write_event) + + try: + return self._sock.sendto(*args) + except _SocketError as ex2: + if ex2.args[0] == EWOULDBLOCK: + exc_clear() + return 0 + raise + + def send(self, data, flags=0, timeout=timeout_default): + if timeout is timeout_default: + timeout = self.timeout + try: + return self._sock.send(data, flags) + except _SocketError as ex: + if ex.args[0] not in GSENDAGAIN or timeout == 0.0: + raise + exc_clear() + self._wait(self._write_event) + try: + return self._sock.send(data, flags) + except _SocketError as ex2: + if ex2.args[0] == EWOULDBLOCK: + exc_clear() + return 0 + raise + + @classmethod + def _fixup_docstrings(cls): + for k, v in vars(cls).items(): + if k.startswith('_'): + continue + if not hasattr(v, '__doc__') or v.__doc__: + continue + smeth = getattr(__socket__.socket, k, None) + if not smeth or not smeth.__doc__: + continue + + try: + v.__doc__ = smeth.__doc__ + except (AttributeError, TypeError): + # slots can't have docs. Py2 raises TypeError, + # Py3 raises AttributeError + continue + +SocketMixin._fixup_docstrings() +del SocketMixin._fixup_docstrings diff --git a/venv/lib/python3.9/site-packages/gevent/_tblib.py b/venv/lib/python3.9/site-packages/gevent/_tblib.py new file mode 100644 index 0000000..47fe7fc --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_tblib.py @@ -0,0 +1,383 @@ +# -*- coding: utf-8 -*- +# A vendored version of part of https://github.com/ionelmc/python-tblib +# pylint:disable=redefined-outer-name,reimported,function-redefined,bare-except,no-else-return,broad-except +#### +# Copyright (c) 2013-2016, Ionel Cristian Mărieș +# All rights reserved. + +# Redistribution and use in source and binary forms, with or without modification, are permitted provided that the +# following conditions are met: + +# 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following +# disclaimer. + +# 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided with the distribution. + +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, +# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#### + + +# __init__.py +import re +import sys +from types import CodeType + +__version__ = '2.0.0' +__all__ = 'Traceback', 'TracebackParseError', 'Frame', 'Code' + +FRAME_RE = re.compile(r'^\s*File "(?P.+)", line (?P\d+)(, in (?P.+))?$') + + +class _AttrDict(dict): + __slots__ = () + + def __getattr__(self, name): + try: + return self[name] + except KeyError: + raise AttributeError(name) from None + + +# noinspection PyPep8Naming +class __traceback_maker(Exception): + pass + + +class TracebackParseError(Exception): + pass + + +class Code: + """ + Class that replicates just enough of the builtin Code object to enable serialization and traceback rendering. + """ + + co_code = None + + def __init__(self, code): + self.co_filename = code.co_filename + self.co_name = code.co_name + self.co_argcount = 0 + self.co_kwonlyargcount = 0 + self.co_varnames = () + self.co_nlocals = 0 + self.co_stacksize = 0 + self.co_flags = 64 + self.co_firstlineno = 0 + + +class Frame: + """ + Class that replicates just enough of the builtin Frame object to enable serialization and traceback rendering. + """ + + def __init__(self, frame): + self.f_locals = {} + self.f_globals = {k: v for k, v in frame.f_globals.items() if k in ('__file__', '__name__')} + self.f_code = Code(frame.f_code) + self.f_lineno = frame.f_lineno + + def clear(self): + """ + For compatibility with PyPy 3.5; + clear() was added to frame in Python 3.4 + and is called by traceback.clear_frames(), which + in turn is called by unittest.TestCase.assertRaises + """ + + +class Traceback: + """ + Class that wraps builtin Traceback objects. + """ + + tb_next = None + + def __init__(self, tb): + self.tb_frame = Frame(tb.tb_frame) + # noinspection SpellCheckingInspection + self.tb_lineno = int(tb.tb_lineno) + + # Build in place to avoid exceeding the recursion limit + tb = tb.tb_next + prev_traceback = self + cls = type(self) + while tb is not None: + traceback = object.__new__(cls) + traceback.tb_frame = Frame(tb.tb_frame) + traceback.tb_lineno = int(tb.tb_lineno) + prev_traceback.tb_next = traceback + prev_traceback = traceback + tb = tb.tb_next + + def as_traceback(self): + """ + Convert to a builtin Traceback object that is usable for raising or rendering a stacktrace. + """ + current = self + top_tb = None + tb = None + while current: + f_code = current.tb_frame.f_code + code = compile('\n' * (current.tb_lineno - 1) + 'raise __traceback_maker', current.tb_frame.f_code.co_filename, 'exec') + if hasattr(code, 'replace'): + # Python 3.8 and newer + code = code.replace(co_argcount=0, co_filename=f_code.co_filename, co_name=f_code.co_name, co_freevars=(), co_cellvars=()) + else: + code = CodeType( + 0, + code.co_kwonlyargcount, + code.co_nlocals, + code.co_stacksize, + code.co_flags, + code.co_code, + code.co_consts, + code.co_names, + code.co_varnames, + f_code.co_filename, + f_code.co_name, + code.co_firstlineno, + code.co_lnotab, + (), + (), + ) + + # noinspection PyBroadException + try: + exec(code, dict(current.tb_frame.f_globals), {}) # noqa: S102 + except Exception: + next_tb = sys.exc_info()[2].tb_next + if top_tb is None: + top_tb = next_tb + if tb is not None: + tb.tb_next = next_tb + tb = next_tb + del next_tb + + current = current.tb_next + try: + return top_tb + finally: + del top_tb + del tb + + to_traceback = as_traceback + + def as_dict(self): + """ + Converts to a dictionary representation. You can serialize the result to JSON as it only has + builtin objects like dicts, lists, ints or strings. + """ + if self.tb_next is None: + tb_next = None + else: + tb_next = self.tb_next.to_dict() + + code = { + 'co_filename': self.tb_frame.f_code.co_filename, + 'co_name': self.tb_frame.f_code.co_name, + } + frame = { + 'f_globals': self.tb_frame.f_globals, + 'f_code': code, + 'f_lineno': self.tb_frame.f_lineno, + } + return { + 'tb_frame': frame, + 'tb_lineno': self.tb_lineno, + 'tb_next': tb_next, + } + + to_dict = as_dict + + @classmethod + def from_dict(cls, dct): + """ + Creates an instance from a dictionary with the same structure as ``.as_dict()`` returns. + """ + if dct['tb_next']: + tb_next = cls.from_dict(dct['tb_next']) + else: + tb_next = None + + code = _AttrDict( + co_filename=dct['tb_frame']['f_code']['co_filename'], + co_name=dct['tb_frame']['f_code']['co_name'], + ) + frame = _AttrDict( + f_globals=dct['tb_frame']['f_globals'], + f_code=code, + f_lineno=dct['tb_frame']['f_lineno'], + ) + tb = _AttrDict( + tb_frame=frame, + tb_lineno=dct['tb_lineno'], + tb_next=tb_next, + ) + return cls(tb) + + @classmethod + def from_string(cls, string, strict=True): + """ + Creates an instance by parsing a stacktrace. Strict means that parsing stops when lines are not indented by at least two spaces + anymore. + """ + frames = [] + header = strict + + for line in string.splitlines(): + line = line.rstrip() + if header: + if line == 'Traceback (most recent call last):': + header = False + continue + frame_match = FRAME_RE.match(line) + if frame_match: + frames.append(frame_match.groupdict()) + elif line.startswith(' '): + pass + elif strict: + break # traceback ended + + if frames: + previous = None + for frame in reversed(frames): + previous = _AttrDict( + frame, + tb_frame=_AttrDict( + frame, + f_globals=_AttrDict( + __file__=frame['co_filename'], + __name__='?', + ), + f_code=_AttrDict(frame), + f_lineno=int(frame['tb_lineno']), + ), + tb_next=previous, + ) + return cls(previous) + else: + raise TracebackParseError('Could not find any frames in %r.' % string) + +# pickling_support.py +# gevent: Trying the dict support, so maybe we don't even need this +# at all. + +import sys +from types import TracebackType +#from . import Frame # gevent +#from . import Traceback # gevent + +# gevent: defer +# if sys.version_info.major >= 3: +# import copyreg +# else: +# import copy_reg as copyreg + + +def unpickle_traceback(tb_frame, tb_lineno, tb_next): + ret = object.__new__(Traceback) + ret.tb_frame = tb_frame + ret.tb_lineno = tb_lineno + ret.tb_next = tb_next + return ret.as_traceback() + + +def pickle_traceback(tb): + return unpickle_traceback, (Frame(tb.tb_frame), tb.tb_lineno, tb.tb_next and Traceback(tb.tb_next)) + + +def unpickle_exception(func, args, cause, tb): + inst = func(*args) + inst.__cause__ = cause + inst.__traceback__ = tb + return inst + + +def pickle_exception(obj): + # All exceptions, unlike generic Python objects, define __reduce_ex__ + # __reduce_ex__(4) should be no different from __reduce_ex__(3). + # __reduce_ex__(5) could bring benefits in the unlikely case the exception + # directly contains buffers, but PickleBuffer objects will cause a crash when + # running on protocol=4, and there's no clean way to figure out the current + # protocol from here. Note that any object returned by __reduce_ex__(3) will + # still be pickled with protocol 5 if pickle.dump() is running with it. + rv = obj.__reduce_ex__(3) + if isinstance(rv, str): + raise TypeError('str __reduce__ output is not supported') + assert isinstance(rv, tuple) + assert len(rv) >= 2 + + return (unpickle_exception, rv[:2] + (obj.__cause__, obj.__traceback__)) + rv[2:] + + +def _get_subclasses(cls): + # Depth-first traversal of all direct and indirect subclasses of cls + to_visit = [cls] + while to_visit: + this = to_visit.pop() + yield this + to_visit += list(this.__subclasses__()) + + +def install(*exc_classes_or_instances): + import copyreg + copyreg.pickle(TracebackType, pickle_traceback) + + if sys.version_info.major < 3: + # Dummy decorator? + if len(exc_classes_or_instances) == 1: + exc = exc_classes_or_instances[0] + if isinstance(exc, type) and issubclass(exc, BaseException): + return exc + return + + if not exc_classes_or_instances: + for exception_cls in _get_subclasses(BaseException): + copyreg.pickle(exception_cls, pickle_exception) + return + + for exc in exc_classes_or_instances: + if isinstance(exc, BaseException): + while exc is not None: + copyreg.pickle(type(exc), pickle_exception) + exc = exc.__cause__ + elif isinstance(exc, type) and issubclass(exc, BaseException): + copyreg.pickle(exc, pickle_exception) + # Allow using @install as a decorator for Exception classes + if len(exc_classes_or_instances) == 1: + return exc + else: + raise TypeError('Expected subclasses or instances of BaseException, got %s' % (type(exc))) + +# gevent API +_installed = False +# 2025-04-14 On Python 3.14a7, attempting to do *anything* (get its type, print it,...) +# with a traceback object that has been reconstituted from one that tblib pickled will +# crash the interpreter. The current HEAD of upstream _tblib can't pass its tests on 3.14 +# and also crashes the interpreter. Our temporary fix is to disable this functionality on +# 3.14. While we're in early testing, limit it to exact versions known to be broken, just +# in case we find that it gets fixed in CPython itself. +_broken_tblib_pickle = sys.version_info == (3, 14, 0, 'alpha', 7) +def dump_traceback(tb): + from pickle import dumps + if tb is None or _broken_tblib_pickle: + return dumps(None) + tb = Traceback(tb) + return dumps(tb.to_dict()) + + +def load_traceback(s): + from pickle import loads + as_dict = loads(s) + if as_dict is None: + return None + tb = Traceback.from_dict(as_dict) + return tb.as_traceback() diff --git a/venv/lib/python3.9/site-packages/gevent/_threading.py b/venv/lib/python3.9/site-packages/gevent/_threading.py new file mode 100644 index 0000000..86cf734 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_threading.py @@ -0,0 +1,234 @@ +""" +A small selection of primitives that always work with +native threads. This has very limited utility and is +targeted only for the use of gevent's threadpool. +""" +from __future__ import absolute_import + +from collections import deque + +from gevent import monkey +from gevent._compat import thread_mod_name + +__all__ = [ + 'Lock', + 'Queue', + 'EmptyTimeout', +] + + +start_new_thread, Lock, get_thread_ident, = monkey.get_original(thread_mod_name, [ + 'start_new_thread', 'allocate_lock', 'get_ident', +]) + + +# We want to support timeouts on locks. In this way, we can allow idle threads to +# expire from a thread pool. On Python 3, this is native behaviour; on Python 2, +# we have to emulate it. For Python 3, we want this to have the lowest possible overhead, +# so we'd prefer to use a direct call, rather than go through a wrapper. But we also +# don't want to allocate locks at import time because..., so we swizzle out the method +# at runtime. +# +# +# In all cases, a timeout value of -1 means "infinite". Sigh. +def acquire_with_timeout(lock, timeout=-1): + globals()['acquire_with_timeout'] = type(lock).acquire + return lock.acquire(timeout=timeout) + + +class _Condition(object): + # We could use libuv's ``uv_cond_wait`` to implement this whole + # class and get native timeouts and native performance everywhere. + + # pylint:disable=method-hidden + + __slots__ = ( + '_lock', + '_waiters', + ) + + def __init__(self, lock): + # This lock is used to protect our own data structures; + # calls to ``wait`` and ``notify_one`` *must* be holding this + # lock. + self._lock = lock + self._waiters = [] + + # No need to special case for _release_save and + # _acquire_restore; those are only used for RLock, and + # we don't use those. + + def __enter__(self): + return self._lock.__enter__() + + def __exit__(self, t, v, tb): + return self._lock.__exit__(t, v, tb) + + def __repr__(self): + return "" % (self._lock, len(self._waiters)) + + def wait(self, wait_lock, timeout=-1, _wait_for_notify=acquire_with_timeout): + # This variable is for the monitoring utils to know that + # this is an idle frame and shouldn't be counted. + gevent_threadpool_worker_idle = True # pylint:disable=unused-variable + + # The _lock must be held. + # The ``wait_lock`` must be *un*owned, so the timeout doesn't apply there. + # Take that lock now. + wait_lock.acquire() + self._waiters.append(wait_lock) + + self._lock.release() + try: + # We're already holding this native lock, so when we try to acquire it again, + # that won't work and we'll block until someone calls notify_one() (which might + # have already happened). + notified = _wait_for_notify(wait_lock, timeout) + finally: + self._lock.acquire() + + # Now that we've acquired _lock again, no one can call notify_one(), or this + # method. + if not notified: + # We need to come out of the waiters list. IF we're still there; it's + # possible that between the call to _acquire() returning False, + # and the time that we acquired _lock, someone did a ``notify_one`` + # and released the lock. For that reason, do a non-blocking acquire() + notified = wait_lock.acquire(False) + if not notified: + # Well narf. No go. We must stil be in the waiters list, so take us out + self._waiters.remove(wait_lock) + # We didn't get notified, but we're still holding a lock that we + # need to release. + wait_lock.release() + else: + # We got notified, so we need to reset. + wait_lock.release() + return notified + + def notify_one(self): + # The lock SHOULD be owned, but we don't check that. + try: + waiter = self._waiters.pop() + except IndexError: + # Nobody around + pass + else: + # The owner of the ``waiter`` is blocked on + # acquiring it again, so when we ``release`` it, it + # is free to be scheduled and resume. + waiter.release() + +class EmptyTimeout(Exception): + """Raised from :meth:`Queue.get` if no item is available in the timeout.""" + + +class Queue(object): + """ + Create a queue object. + + The queue is always infinite size. + """ + + __slots__ = ('_queue', '_mutex', '_not_empty', 'unfinished_tasks') + + def __init__(self): + self._queue = deque() + # mutex must be held whenever the queue is mutating. All methods + # that acquire mutex must release it before returning. mutex + # is shared between the three conditions, so acquiring and + # releasing the conditions also acquires and releases mutex. + self._mutex = Lock() + # Notify not_empty whenever an item is added to the queue; a + # thread waiting to get is notified then. + self._not_empty = _Condition(self._mutex) + + self.unfinished_tasks = 0 + + def task_done(self): + """Indicate that a formerly enqueued task is complete. + + Used by Queue consumer threads. For each get() used to fetch a task, + a subsequent call to task_done() tells the queue that the processing + on the task is complete. + + If a join() is currently blocking, it will resume when all items + have been processed (meaning that a task_done() call was received + for every item that had been put() into the queue). + + Raises a ValueError if called more times than there were items + placed in the queue. + """ + with self._mutex: + unfinished = self.unfinished_tasks - 1 + if unfinished <= 0: + if unfinished < 0: + raise ValueError( + 'task_done() called too many times; %s remaining tasks' % ( + self.unfinished_tasks + ) + ) + self.unfinished_tasks = unfinished + + def qsize(self, len=len): + """Return the approximate size of the queue (not reliable!).""" + return len(self._queue) + + def empty(self): + """Return True if the queue is empty, False otherwise (not reliable!).""" + return not self.qsize() + + def full(self): + """Return True if the queue is full, False otherwise (not reliable!).""" + return False + + def put(self, item): + """Put an item into the queue. + """ + with self._mutex: + self._queue.append(item) + self.unfinished_tasks += 1 + self._not_empty.notify_one() + + def get(self, cookie, timeout=-1): + """ + Remove and return an item from the queue. + + If *timeout* is given, and is not -1, then we will + attempt to wait for only that many seconds to get an item. + If those seconds elapse and no item has become available, + raises :class:`EmptyTimeout`. + """ + with self._mutex: + while not self._queue: + # Temporarily release our mutex and wait for someone + # to wake us up. There *should* be an item in the queue + # after that. + notified = self._not_empty.wait(cookie, timeout) + # Ok, we're holding the mutex again, so our state is guaranteed stable. + # It's possible that in the brief window where we didn't hold the lock, + # someone put something in the queue, and if so, we can take it. + if not notified and not self._queue: + raise EmptyTimeout + item = self._queue.popleft() + return item + + def allocate_cookie(self): + """ + Create and return the *cookie* to pass to `get()`. + + Each thread that will use `get` needs a distinct cookie. + """ + return Lock() + + def kill(self): + """ + Call to destroy this object. + + Use this when it's not possible to safely drain the queue, e.g., + after a fork when the locks are in an uncertain state. + """ + self._queue = None + self._mutex = None + self._not_empty = None + self.unfinished_tasks = None diff --git a/venv/lib/python3.9/site-packages/gevent/_tracer.py b/venv/lib/python3.9/site-packages/gevent/_tracer.py new file mode 100644 index 0000000..b271017 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_tracer.py @@ -0,0 +1,182 @@ +# Copyright (c) 2018 gevent. See LICENSE for details. +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False +from __future__ import print_function, absolute_import, division + +import sys +import traceback + +from greenlet import settrace +from greenlet import getcurrent + +from gevent.util import format_run_info + +from gevent._compat import perf_counter +from gevent._util import gmctime + + +__all__ = [ + 'GreenletTracer', + 'HubSwitchTracer', + 'MaxSwitchTracer', +] + +# Recall these classes are cython compiled, so +# class variable declarations are bad. + + +class GreenletTracer(object): + def __init__(self): + # A counter, incremented by the greenlet trace function + # we install on every greenlet switch. This is reset when the + # periodic monitoring thread runs. + + self.greenlet_switch_counter = 0 + + # The greenlet last switched to. + self.active_greenlet = None + + # The trace function that was previously installed, + # if any. + # NOTE: Calling a class instance is cheaper than + # calling a bound method (at least when compiled with cython) + # even when it redirects to another function. + prev_trace = settrace(self) + + self.previous_trace_function = prev_trace + + self._killed = False + + def kill(self): + # Must be called in the monitored thread. + if not self._killed: + self._killed = True + settrace(self.previous_trace_function) + self.previous_trace_function = None + + def _trace(self, event, args): + # This function runs in the thread we are monitoring. + self.greenlet_switch_counter += 1 + if event in ('switch', 'throw'): + # args is (origin, target). This is the only defined + # case + self.active_greenlet = args[1] + else: + self.active_greenlet = None + if self.previous_trace_function is not None: + self.previous_trace_function(event, args) + + def __call__(self, event, args): + return self._trace(event, args) + + def did_block_hub(self, hub): + # Check to see if we have blocked since the last call to this + # method. Returns a true value if we blocked (not in the hub), + # a false value if everything is fine. + + # This may be called in the same thread being traced or a + # different thread; if a different thread, there is a race + # condition with this being incremented in the thread we're + # monitoring, but probably not often enough to lead to + # annoying false positives. + + active_greenlet = self.active_greenlet + did_switch = self.greenlet_switch_counter != 0 + self.greenlet_switch_counter = 0 + + if did_switch or active_greenlet is None or active_greenlet is hub: + # Either we switched, or nothing is running (we got a + # trace event we don't know about or were requested to + # ignore), or we spent the whole time in the hub, blocked + # for IO. Nothing to report. + return False + return True, active_greenlet + + def ignore_current_greenlet_blocking(self): + # Don't pay attention to the current greenlet. + self.active_greenlet = None + + def monitor_current_greenlet_blocking(self): + self.active_greenlet = getcurrent() + + def did_block_hub_report(self, hub, active_greenlet, format_kwargs): + # XXX: On Python 2 with greenlet 1.0a1, '%s' formatting a greenlet + # results in a unicode object. This is a bug in greenlet, I think. + # https://github.com/python-greenlet/greenlet/issues/218 + report = ['=' * 80, + '\n%s : Greenlet %s appears to be blocked' % + (gmctime(), str(active_greenlet))] + report.append(" Reported by %s" % (self,)) + try: + frame = sys._current_frames()[hub.thread_ident] + except KeyError: + # The thread holding the hub has died. Perhaps we shouldn't + # even report this? + stack = ["Unknown: No thread found for hub %r\n" % (hub,)] + else: + stack = traceback.format_stack(frame) + report.append('Blocked Stack (for thread id %s):' % (hex(hub.thread_ident),)) + report.append(''.join(stack)) + report.append("Info:") + report.extend(format_run_info(**format_kwargs)) + + return report + + +class _HubTracer(GreenletTracer): + def __init__(self, hub, max_blocking_time): + GreenletTracer.__init__(self) + self.max_blocking_time = max_blocking_time + self.hub = hub + + def kill(self): + self.hub = None + GreenletTracer.kill(self) + + +class HubSwitchTracer(_HubTracer): + # A greenlet tracer that records the last time we switched *into* the hub. + + def __init__(self, hub, max_blocking_time): + _HubTracer.__init__(self, hub, max_blocking_time) + self.last_entered_hub = 0 + + def _trace(self, event, args): + GreenletTracer._trace(self, event, args) + if self.active_greenlet is self.hub: + self.last_entered_hub = perf_counter() + + def did_block_hub(self, hub): + if perf_counter() - self.last_entered_hub > self.max_blocking_time: + return True, self.active_greenlet + + +class MaxSwitchTracer(_HubTracer): + # A greenlet tracer that records the maximum time between switches, + # not including time spent in the hub. + + def __init__(self, hub, max_blocking_time): + _HubTracer.__init__(self, hub, max_blocking_time) + self.last_switch = perf_counter() + self.max_blocking = 0 + + def _trace(self, event, args): + old_active = self.active_greenlet + GreenletTracer._trace(self, event, args) + if old_active is not self.hub and old_active is not None: + # If we're switching out of the hub, the blocking + # time doesn't count. + switched_at = perf_counter() + self.max_blocking = max(self.max_blocking, + switched_at - self.last_switch) + + def did_block_hub(self, hub): + if self.max_blocking == 0: + # We never switched. Check the time now + self.max_blocking = perf_counter() - self.last_switch + + if self.max_blocking > self.max_blocking_time: + return True, self.active_greenlet + + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent.__tracer') diff --git a/venv/lib/python3.9/site-packages/gevent/_util.py b/venv/lib/python3.9/site-packages/gevent/_util.py new file mode 100644 index 0000000..5da3612 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_util.py @@ -0,0 +1,351 @@ +# -*- coding: utf-8 -*- +""" +internal gevent utilities, not for external use. +""" + +# Be very careful not to import anything that would cause issues with +# monkey-patching. + +from __future__ import print_function, absolute_import, division + +from gevent._compat import iteritems + + +class _NONE(object): + """ + A special object you must never pass to any gevent API. + Used as a marker object for keyword arguments that cannot have the + builtin None (because that might be a valid value). + """ + __slots__ = () + + def __repr__(self): + return '' + +_NONE = _NONE() + +WRAPPER_ASSIGNMENTS = ('__module__', '__name__', '__qualname__', '__doc__', + '__annotations__') +WRAPPER_UPDATES = ('__dict__',) +def update_wrapper(wrapper, + wrapped, + assigned=WRAPPER_ASSIGNMENTS, + updated=WRAPPER_UPDATES): + """ + Based on code from the standard library ``functools``, but + doesn't perform any of the troublesome imports. + + functools imports RLock from _thread for purposes of the + ``lru_cache``, making it problematic to use from gevent. + + The other imports are somewhat heavy: abc, collections, types. + """ + for attr in assigned: + try: + value = getattr(wrapped, attr) + except AttributeError: + pass + else: + setattr(wrapper, attr, value) + for attr in updated: + getattr(wrapper, attr).update(getattr(wrapped, attr, {})) + # Issue #17482: set __wrapped__ last so we don't inadvertently copy it + # from the wrapped function when updating __dict__ + wrapper.__wrapped__ = wrapped + # Return the wrapper so this can be used as a decorator via partial() + return wrapper + + +def copy_globals(source, + globs, + only_names=None, + ignore_missing_names=False, + names_to_ignore=(), + dunder_names_to_keep=('__implements__', '__all__', '__imports__'), + cleanup_globs=True): + """ + Copy attributes defined in ``source.__dict__`` to the dictionary + in globs (which should be the caller's :func:`globals`). + + Names that start with ``__`` are ignored (unless they are in + *dunder_names_to_keep*). Anything found in *names_to_ignore* is + also ignored. + + If *only_names* is given, only those attributes will be + considered. In this case, *ignore_missing_names* says whether or + not to raise an :exc:`AttributeError` if one of those names can't + be found. + + If *cleanup_globs* has a true value, then common things imported but + not used at runtime are removed, including this function. + + Returns a list of the names copied; this should be assigned to ``__imports__``. + """ + if only_names: + if ignore_missing_names: + items = ((k, getattr(source, k, _NONE)) for k in only_names) + else: + items = ((k, getattr(source, k)) for k in only_names) + else: + items = iteritems(source.__dict__) + + copied = [] + for key, value in items: + if value is _NONE: + continue + if key in names_to_ignore: + continue + if key.startswith("__") and key not in dunder_names_to_keep: + continue + globs[key] = value + copied.append(key) + + if cleanup_globs: + if 'copy_globals' in globs: + del globs['copy_globals'] + + return copied + +def import_c_accel(globs, cname): + """ + Import the C-accelerator for the *cname* + and copy its globals. + + The *cname* should be hardcoded to match the expected + C accelerator module. + + Unless PURE_PYTHON is set (in the environment or automatically + on PyPy), then the C-accelerator is required. + """ + if not cname.startswith('gevent._gevent_c'): + # Old module code that hasn't been updated yet. + cname = cname.replace('gevent._', + 'gevent._gevent_c') + + name = globs.get('__name__') + + if not name or name == cname: + # Do nothing if we're being exec'd as a file (no name) + # or we're running from the C extension + return + + + from gevent._compat import pure_python_module + if pure_python_module(name): + return + + import importlib + import warnings + with warnings.catch_warnings(): + # Python 3.7 likes to produce + # "ImportWarning: can't resolve + # package from __spec__ or __package__, falling back on + # __name__ and __path__" + # when we load cython compiled files. This is probably a bug in + # Cython, but it doesn't seem to have any consequences, it's + # just annoying to see and can mess up our unittests. + warnings.simplefilter('ignore', ImportWarning) + mod = importlib.import_module(cname) + + # By adopting the entire __dict__, we get a more accurate + # __file__ and module repr, plus we don't leak any imported + # things we no longer need. + globs.clear() + globs.update(mod.__dict__) + + if 'import_c_accel' in globs: + del globs['import_c_accel'] + + +class Lazy(object): + """ + A non-data descriptor used just like @property. The + difference is the function value is assigned to the instance + dict the first time it is accessed and then the function is never + called again. + + Contrast with `readproperty`. + """ + def __init__(self, func): + self.data = (func, func.__name__) + update_wrapper(self, func) + + def __get__(self, inst, class_): + if inst is None: + return self + + func, name = self.data + value = func(inst) + inst.__dict__[name] = value + return value + +class readproperty(object): + """ + A non-data descriptor similar to :class:`property`. + + The difference is that the property can be assigned to directly, + without invoking a setter function. When the property is assigned + to, it is cached in the instance and the function is not called on + that instance again. + + Contrast with `Lazy`, which caches the result of the function in the + instance the first time it is called and never calls the function on that + instance again. + """ + + def __init__(self, func): + self.func = func + update_wrapper(self, func) + + def __get__(self, inst, class_): + if inst is None: + return self + + return self.func(inst) + +class LazyOnClass(object): + """ + Similar to `Lazy`, but stores the value in the class. + + This is useful when the getter is expensive and conceptually + a shared class value, but we don't want import-time side-effects + such as expensive imports because it may not always be used. + + Probably doesn't mix well with inheritance? + """ + + @classmethod + def lazy(cls, cls_dict, func): + "Put a LazyOnClass object in *cls_dict* with the same name as *func*" + cls_dict[func.__name__] = cls(func) + + def __init__(self, func, name=None): + self.name = name or func.__name__ + self.func = func + + def __get__(self, inst, klass): + if inst is None: # pragma: no cover + return self + + val = self.func(inst) + setattr(klass, self.name, val) + return val + + +def gmctime(): + """ + Returns the current time as a string in RFC3339 format. + """ + import time + return time.strftime("%Y-%m-%dT%H:%M:%SZ", time.gmtime()) + + +### +# Release automation. +# +# Most of this is to integrate zest.releaser with towncrier. There is +# a plugin package that can do the same: +# https://github.com/collective/zestreleaser.towncrier +### + +def prereleaser_middle(data): # pragma: no cover + """ + zest.releaser prerelease middle hook for gevent. + + The prerelease step: + + asks you for a version number + updates the setup.py or version.txt and the + CHANGES/HISTORY/CHANGELOG file (with either + this new version + number and offers to commit those changes to git + + The middle hook: + + All data dictionary items are available and some questions + (like new version number) have been asked. + No filesystem changes have been made yet. + + It is our job to finish up the filesystem changes needed, including: + + - Calling towncrier to handle CHANGES.rst + - Add the version number to ``versionadded``, ``versionchanged`` and + ``deprecated`` directives in Python source. + """ + if data['name'] != 'gevent': + # We are specified in ``setup.cfg``, not ``setup.py``, so we do not + # come into play for other projects, only this one. We shouldn't + # need this check, but there it is. + return + + import re + import os + import subprocess + from gevent.testing import modules + + new_version = data['new_version'] + + # Generate CHANGES.rst, remove old news entries. + subprocess.check_call([ + 'towncrier', + 'build', + '--version', data['new_version'], + '--yes' + ]) + + data['update_history'] = False # Because towncrier already did. + + # But unstage it; we want it to show in the diff zest.releaser will do + subprocess.check_call([ + 'git', + 'restore', + '--staged', + 'CHANGES.rst', + ]) + + # Put the version number in source files. + regex = re.compile(b'.. (versionchanged|versionadded|deprecated):: NEXT') + if not isinstance(new_version, bytes): + new_version_bytes = new_version.encode('ascii') + else: + new_version_bytes = new_version + new_version_bytes = new_version.encode('ascii') + replacement = br'.. \1:: %s' % (new_version_bytes,) + # TODO: This should also look in the docs/ directory at + # *.rst + for path, _ in modules.walk_modules( + # Start here + basedir=os.path.join(data['reporoot'], 'src', 'gevent'), + # Include sub-dirs + recursive=True, + # Include tests + include_tests=True, + # and other things usually excluded + excluded_modules=(), + # Don't return build binaries + include_so=False, + # Don't try to import things; we want all files. + check_optional=False, + ): + with open(path, 'rb') as f: + contents = f.read() + new_contents, count = regex.subn(replacement, contents) + if count: + print("Replaced version NEXT in", path) + with open(path, 'wb') as f: + f.write(new_contents) + +def postreleaser_before(data): # pragma: no cover + """ + Prevents zest.releaser from modifying the CHANGES.rst to add the + 'no changes yet' section; towncrier is in charge of CHANGES.rst. + + Needs zest.releaser 6.15.0. + """ + if data['name'] != 'gevent': + # We are specified in ``setup.cfg``, not ``setup.py``, so we do not + # come into play for other projects, only this one. We shouldn't + # need this check, but there it is. + return + + data['update_history'] = False diff --git a/venv/lib/python3.9/site-packages/gevent/_waiter.py b/venv/lib/python3.9/site-packages/gevent/_waiter.py new file mode 100644 index 0000000..f081d04 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/_waiter.py @@ -0,0 +1,207 @@ +# -*- coding: utf-8 -*- +# copyright 2018 gevent +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False +""" +Low-level waiting primitives. + +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + +import sys + +from gevent._hub_local import get_hub_noargs as get_hub +from gevent.exceptions import ConcurrentObjectUseError + +__all__ = [ + 'Waiter', +] + +_NONE = object() + +locals()['getcurrent'] = __import__('greenlet').getcurrent +locals()['greenlet_init'] = lambda: None + + +class Waiter(object): + """ + A low level communication utility for greenlets. + + Waiter is a wrapper around greenlet's ``switch()`` and ``throw()`` calls that makes them somewhat safer: + + * switching will occur only if the waiting greenlet is executing :meth:`get` method currently; + * any error raised in the greenlet is handled inside :meth:`switch` and :meth:`throw` + * if :meth:`switch`/:meth:`throw` is called before the receiver calls :meth:`get`, then :class:`Waiter` + will store the value/exception. The following :meth:`get` will return the value/raise the exception. + + The :meth:`switch` and :meth:`throw` methods must only be called from the :class:`Hub` greenlet. + The :meth:`get` method must be called from a greenlet other than :class:`Hub`. + + >>> from gevent.hub import Waiter + >>> from gevent import get_hub + >>> result = Waiter() + >>> timer = get_hub().loop.timer(0.1) + >>> timer.start(result.switch, 'hello from Waiter') + >>> result.get() # blocks for 0.1 seconds + 'hello from Waiter' + >>> timer.close() + + If switch is called before the greenlet gets a chance to call :meth:`get` then + :class:`Waiter` stores the value. + + >>> from gevent.time import sleep + >>> result = Waiter() + >>> timer = get_hub().loop.timer(0.1) + >>> timer.start(result.switch, 'hi from Waiter') + >>> sleep(0.2) + >>> result.get() # returns immediately without blocking + 'hi from Waiter' + >>> timer.close() + + .. warning:: + + This is a limited and dangerous way to communicate between + greenlets. It can easily leave a greenlet unscheduled forever + if used incorrectly. Consider using safer classes such as + :class:`gevent.event.Event`, :class:`gevent.event.AsyncResult`, + or :class:`gevent.queue.Queue`. + """ + + __slots__ = ['hub', 'greenlet', 'value', '_exception'] + + def __init__(self, hub=None): + self.hub = get_hub() if hub is None else hub + self.greenlet = None + self.value = None + self._exception = _NONE + + def clear(self): + self.greenlet = None + self.value = None + self._exception = _NONE + + def __str__(self): + if self._exception is _NONE: + return '<%s greenlet=%s>' % (type(self).__name__, self.greenlet) + if self._exception is None: + return '<%s greenlet=%s value=%r>' % (type(self).__name__, self.greenlet, self.value) + return '<%s greenlet=%s exc_info=%r>' % (type(self).__name__, self.greenlet, self.exc_info) + + def ready(self): + """Return true if and only if it holds a value or an exception""" + return self._exception is not _NONE + + def successful(self): + """Return true if and only if it is ready and holds a value""" + return self._exception is None + + @property + def exc_info(self): + "Holds the exception info passed to :meth:`throw` if :meth:`throw` was called. Otherwise ``None``." + if self._exception is not _NONE: + return self._exception + + def switch(self, value): + """ + Switch to the greenlet if one's available. Otherwise store the + *value*. + + .. versionchanged:: 1.3b1 + The *value* is no longer optional. + """ + greenlet = self.greenlet + if greenlet is None: + self.value = value + self._exception = None + else: + if getcurrent() is not self.hub: # pylint:disable=undefined-variable + raise AssertionError("Can only use Waiter.switch method from the Hub greenlet") + switch = greenlet.switch + try: + switch(value) + except: # pylint:disable=bare-except + self.hub.handle_error(switch, *sys.exc_info()) + + def switch_args(self, *args): + return self.switch(args) + + def throw(self, *throw_args): + """Switch to the greenlet with the exception. If there's no greenlet, store the exception.""" + greenlet = self.greenlet + if greenlet is None: + self._exception = throw_args + else: + if getcurrent() is not self.hub: # pylint:disable=undefined-variable + raise AssertionError("Can only use Waiter.switch method from the Hub greenlet") + throw = greenlet.throw + try: + throw(*throw_args) + except: # pylint:disable=bare-except + self.hub.handle_error(throw, *sys.exc_info()) + + def get(self): + """If a value/an exception is stored, return/raise it. Otherwise until switch() or throw() is called.""" + if self._exception is not _NONE: + if self._exception is None: + return self.value + getcurrent().throw(*self._exception) # pylint:disable=undefined-variable + else: + if self.greenlet is not None: + raise ConcurrentObjectUseError('This Waiter is already used by %r' % (self.greenlet, )) + self.greenlet = getcurrent() # pylint:disable=undefined-variable + try: + return self.hub.switch() + finally: + self.greenlet = None + + def __call__(self, source): + if source.exception is None: + self.switch(source.value) + else: + self.throw(source.exception) + + # can also have a debugging version, that wraps the value in a tuple (self, value) in switch() + # and unwraps it in wait() thus checking that switch() was indeed called + + + +class MultipleWaiter(Waiter): + """ + An internal extension of Waiter that can be used if multiple objects + must be waited on, and there is a chance that in between waits greenlets + might be switched out. All greenlets that switch to this waiter + will have their value returned. + + This does not handle exceptions or throw methods. + """ + __slots__ = ['_values'] + + def __init__(self, hub=None): + Waiter.__init__(self, hub) + # we typically expect a relatively small number of these to be outstanding. + # since we pop from the left, a deque might be slightly + # more efficient, but since we're in the hub we avoid imports if + # we can help it to better support monkey-patching, and delaying the import + # here can be impractical (see https://github.com/gevent/gevent/issues/652) + self._values = [] + + def switch(self, value): + self._values.append(value) + Waiter.switch(self, True) + + def get(self): + if not self._values: + Waiter.get(self) + Waiter.clear(self) + + return self._values.pop(0) + +def _init(): + greenlet_init() # pylint:disable=undefined-variable + +_init() + + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent.__waiter') diff --git a/venv/lib/python3.9/site-packages/gevent/ares.py b/venv/lib/python3.9/site-packages/gevent/ares.py new file mode 100644 index 0000000..2236b2a --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/ares.py @@ -0,0 +1,10 @@ +"""Backwards compatibility alias for :mod:`gevent.resolver.cares`. + +.. deprecated:: 1.3 + Use :mod:`gevent.resolver.cares` +""" +# pylint:disable=no-name-in-module,import-error +from gevent.resolver.cares import * # pylint:disable=wildcard-import,unused-wildcard-import, +import gevent.resolver.cares as _cares +__all__ = _cares.__all__ # pylint:disable=c-extension-no-member +del _cares diff --git a/venv/lib/python3.9/site-packages/gevent/backdoor.py b/venv/lib/python3.9/site-packages/gevent/backdoor.py new file mode 100644 index 0000000..61a82ca --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/backdoor.py @@ -0,0 +1,264 @@ +# Copyright (c) 2009-2014, gevent contributors +# Based on eventlet.backdoor Copyright (c) 2005-2006, Bob Ippolito +""" +Interactive greenlet-based network console that can be used in any process. + +The :class:`BackdoorServer` provides a REPL inside a running process. As +long as the process is monkey-patched, the ``BackdoorServer`` can coexist +with other elements of the process. + +.. seealso:: :class:`code.InteractiveConsole` +""" +from __future__ import print_function, absolute_import +import sys +import socket +from code import InteractiveConsole + +from gevent.greenlet import Greenlet +from gevent.hub import getcurrent +from gevent.server import StreamServer +from gevent.pool import Pool + + +__all__ = [ + 'BackdoorServer', +] + +try: + sys.ps1 +except AttributeError: + sys.ps1 = '>>> ' +try: + sys.ps2 +except AttributeError: + sys.ps2 = '... ' + +class _Greenlet_stdreplace(Greenlet): + # A greenlet that replaces sys.std[in/out/err] while running. + + __slots__ = ( + 'stdin', + 'stdout', + 'prev_stdin', + 'prev_stdout', + 'prev_stderr', + ) + + def __init__(self, *args, **kwargs): + Greenlet.__init__(self, *args, **kwargs) + self.stdin = None + self.stdout = None + self.prev_stdin = None + self.prev_stdout = None + self.prev_stderr = None + + def switch(self, *args, **kw): + if self.stdin is not None: + self.switch_in() + Greenlet.switch(self, *args, **kw) + + def switch_in(self): + self.prev_stdin = sys.stdin + self.prev_stdout = sys.stdout + self.prev_stderr = sys.stderr + + sys.stdin = self.stdin + sys.stdout = self.stdout + sys.stderr = self.stdout + + def switch_out(self): + sys.stdin = self.prev_stdin + sys.stdout = self.prev_stdout + sys.stderr = self.prev_stderr + + self.prev_stdin = self.prev_stdout = self.prev_stderr = None + + def throw(self, *args, **kwargs): + # pylint:disable=arguments-differ + if self.prev_stdin is None and self.stdin is not None: + self.switch_in() + Greenlet.throw(self, *args, **kwargs) + + def run(self): + try: + return Greenlet.run(self) + finally: + # Make sure to restore the originals. + self.switch_out() + + +class BackdoorServer(StreamServer): + """ + Provide a backdoor to a program for debugging purposes. + + .. warning:: This backdoor provides no authentication and makes no + attempt to limit what remote users can do. Anyone that + can access the server can take any action that the running + python process can. Thus, while you may bind to any interface, for + security purposes it is recommended that you bind to one + only accessible to the local machine, e.g., + 127.0.0.1/localhost. + + Basic usage:: + + from gevent.backdoor import BackdoorServer + server = BackdoorServer(('127.0.0.1', 5001), + banner="Hello from gevent backdoor!", + locals={'foo': "From defined scope!"}) + server.serve_forever() + + In a another terminal, connect with...:: + + $ telnet 127.0.0.1 5001 + Trying 127.0.0.1... + Connected to 127.0.0.1. + Escape character is '^]'. + Hello from gevent backdoor! + >> print(foo) + From defined scope! + + .. versionchanged:: 1.2a1 + Spawned greenlets are now tracked in a pool and killed when the server + is stopped. + """ + + def __init__(self, listener, locals=None, banner=None, **server_args): + """ + :keyword locals: If given, a dictionary of "builtin" values that will be available + at the top-level. + :keyword banner: If geven, a string that will be printed to each connecting user. + """ + group = Pool(greenlet_class=_Greenlet_stdreplace) # no limit on number + StreamServer.__init__(self, listener, spawn=group, **server_args) + _locals = {'__doc__': None, '__name__': '__console__'} + if locals: + _locals.update(locals) + self.locals = _locals + + self.banner = banner + self.stderr = sys.stderr + + def _create_interactive_locals(self): + # Create and return a *new* locals dictionary based on self.locals, + # and set any new entries in it. (InteractiveConsole does not + # copy its locals value) + _locals = self.locals.copy() + # __builtins__ may either be the __builtin__ module or + # __builtin__.__dict__; in the latter case typing + # locals() at the backdoor prompt spews out lots of + # useless stuff + try: + import __builtin__ + _locals["__builtins__"] = __builtin__ + except ImportError: + import builtins # pylint:disable=import-error + _locals["builtins"] = builtins + _locals['__builtins__'] = builtins + return _locals + + def handle(self, conn, _address): # pylint: disable=method-hidden + """ + Interact with one remote user. + + .. versionchanged:: 1.1b2 Each connection gets its own + ``locals`` dictionary. Previously they were shared in a + potentially unsafe manner. + """ + try: + conn.setsockopt(socket.SOL_TCP, socket.TCP_NODELAY, True) + except OSError: + pass + + raw_file = conn.makefile(mode="r") + getcurrent().stdin = _StdIn(conn, raw_file) + getcurrent().stdout = _StdErr(conn, raw_file) + + # Swizzle the inputs + getcurrent().switch_in() + try: + console = InteractiveConsole(self._create_interactive_locals()) + # Beginning in 3.6, the console likes to print "now exiting " + # but probably our socket is already closed, so this just causes problems. + console.interact(banner=self.banner, exitmsg='') # pylint:disable=unexpected-keyword-arg + + except SystemExit: + # raised by quit(); obviously this cannot propagate. + pass + finally: + raw_file.close() + conn.close() + +class _BaseFileLike(object): + + # Python 2 likes to test for this before writing to stderr. + softspace = None + encoding = 'utf-8' + + __slots__ = ( + 'sock', + 'fobj', + 'fileno', + ) + + def __init__(self, sock, stdin): + self.sock = sock + self.fobj = stdin + # On Python 3, The builtin input() function (used by the + # default InteractiveConsole) calls fileno() on + # sys.stdin. If it's the same as the C stdin's fileno, + # and isatty(fd) (C function call) returns true, + # and all of that is also true for stdout, then input() will use + # PyOS_Readline to get the input. + # + # On Python 2, the sys.stdin object has to extend the file() + # class, and return true from isatty(fileno(sys.stdin.f_fp)) + # (where f_fp is a C-level FILE* member) to use PyOS_Readline. + # + # If that doesn't hold, both versions fall back to reading and writing + # using sys.stdout.write() and sys.stdin.readline(). + self.fileno = sock.fileno + + def __getattr__(self, name): + return getattr(self.fobj, name) + + def close(self): + pass + + +class _StdErr(_BaseFileLike): + """ + A file-like object that wraps the result of socket.makefile (composition + instead of inheritance lets us work identically under CPython and PyPy). + + We write directly to the socket, avoiding the buffering that the text-oriented + makefile would want to do (otherwise we'd be at the mercy of waiting on a + flush() to get called for the remote user to see data); this beats putting + the file in binary mode and translating everywhere with a non-default + encoding. + """ + + def flush(self): + "Does nothing. raw_input() calls this, only on Python 3." + + def write(self, data): + if not isinstance(data, bytes): + data = data.encode(self.encoding) + self.sock.sendall(data) + +class _StdIn(_BaseFileLike): + # Like _StdErr, but for stdin. + + def readline(self, *a): + try: + return self.fobj.readline(*a).replace("\r\n", "\n") + except UnicodeError: + # Typically, under python 3, a ^C on the other end + return '' + +if __name__ == '__main__': + if not sys.argv[1:]: + print('USAGE: %s PORT [banner]' % sys.argv[0]) + else: + BackdoorServer(('127.0.0.1', int(sys.argv[1])), + banner=(sys.argv[2] if len(sys.argv) > 2 else None), + locals={'hello': 'world'}).serve_forever() diff --git a/venv/lib/python3.9/site-packages/gevent/baseserver.py b/venv/lib/python3.9/site-packages/gevent/baseserver.py new file mode 100644 index 0000000..e52a4e2 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/baseserver.py @@ -0,0 +1,443 @@ +"""Base class for implementing servers""" +# Copyright (c) 2009-2012 Denis Bilenko. See LICENSE for details. +from __future__ import print_function +from __future__ import absolute_import +from __future__ import division + +import sys +import _socket +import errno + +from gevent.greenlet import Greenlet +from gevent.event import Event +from gevent.hub import get_hub +from gevent._compat import string_types +from gevent._compat import integer_types +from gevent._compat import xrange + + + +__all__ = ['BaseServer'] + + +# We define a helper function to handle closing the socket in +# do_handle; We'd like to bind it to a kwarg to avoid *any* lookups at +# all, but that's incompatible with the calling convention of +# do_handle. On CPython, this is ~20% faster than creating and calling +# a closure and ~10% faster than using a @staticmethod. (In theory, we +# could create a closure only once in set_handle, to wrap self._handle, +# but this is safer from a backwards compat standpoint.) +# we also avoid unpacking the *args tuple when calling/spawning this object +# for a tiny improvement (benchmark shows a wash) +def _handle_and_close_when_done(handle, close, args_tuple): + try: + return handle(*args_tuple) + finally: + close(*args_tuple) + + +class BaseServer(object): + """ + An abstract base class that implements some common functionality for the servers in gevent. + + :param listener: Either be an address that the server should bind + on or a :class:`gevent.socket.socket` instance that is already + bound (and put into listening mode in case of TCP socket). + + :keyword handle: If given, the request handler. The request + handler can be defined in a few ways. Most commonly, + subclasses will implement a ``handle`` method as an + instance method. Alternatively, a function can be passed + as the ``handle`` argument to the constructor. In either + case, the handler can later be changed by calling + :meth:`set_handle`. + + When the request handler returns, the socket used for the + request will be closed. Therefore, the handler must not return if + the socket is still in use (for example, by manually spawned greenlets). + + :keyword spawn: If provided, is called to create a new + greenlet to run the handler. By default, + :func:`gevent.spawn` is used (meaning there is no + artificial limit on the number of concurrent requests). Possible values for *spawn*: + + - a :class:`gevent.pool.Pool` instance -- ``handle`` will be executed + using :meth:`gevent.pool.Pool.spawn` only if the pool is not full. + While it is full, no new connections are accepted; + - :func:`gevent.spawn_raw` -- ``handle`` will be executed in a raw + greenlet which has a little less overhead then :class:`gevent.Greenlet` instances spawned by default; + - ``None`` -- ``handle`` will be executed right away, in the :class:`Hub` greenlet. + ``handle`` cannot use any blocking functions as it would mean switching to the :class:`Hub`. + - an integer -- a shortcut for ``gevent.pool.Pool(integer)`` + + .. versionchanged:: 1.1a1 + When the *handle* function returns from processing a connection, + the client socket will be closed. This resolves the non-deterministic + closing of the socket, fixing ResourceWarnings under Python 3 and PyPy. + .. versionchanged:: 1.5 + Now a context manager that returns itself and calls :meth:`stop` on exit. + + """ + # pylint: disable=too-many-instance-attributes,bare-except,broad-except + + #: The number of seconds to sleep in case there was an error in accept() call. + #: For consecutive errors the delay will double until it reaches max_delay. + #: When accept() finally succeeds the delay will be reset to min_delay again. + min_delay = 0.01 + + #: The maximum number of seconds to sleep in case there was an error in + #: accept() call. + max_delay = 1 + + #: Sets the maximum number of consecutive accepts that a process may perform on + #: a single wake up. High values give higher priority to high connection rates, + #: while lower values give higher priority to already established connections. + #: Default is 100. + #: + #: Note that, in case of multiple working processes on the same + #: listening socket, it should be set to a lower value. (pywsgi.WSGIServer sets it + #: to 1 when ``environ["wsgi.multiprocess"]`` is true) + #: + #: This is equivalent to libuv's `uv_tcp_simultaneous_accepts + #: `_ + #: value. Setting the environment variable UV_TCP_SINGLE_ACCEPT to a true value + #: (usually 1) changes the default to 1 (in libuv only; this does not affect gevent). + max_accept = 100 + + _spawn = Greenlet.spawn + + #: the default timeout that we wait for the client connections to close in stop() + stop_timeout = 1 + + fatal_errors = (errno.EBADF, errno.EINVAL, errno.ENOTSOCK) + + def __init__(self, listener, handle=None, spawn='default'): + self._stop_event = Event() + self._stop_event.set() + self._watcher = None + self._timer = None + self._handle = None + # XXX: FIXME: Subclasses rely on the presence or absence of the + # `socket` attribute to determine whether we are open/should be opened. + # Instead, have it be None. + # XXX: In general, the state management here is confusing. Lots of stuff is + # deferred until the various ``set_`` methods are called, and it's not documented + # when it's safe to call those + self.pool = None # can be set from ``spawn``; overrides self.full() + try: + self.set_listener(listener) + self.set_spawn(spawn) + self.set_handle(handle) + self.delay = self.min_delay + self.loop = get_hub().loop + if self.max_accept < 1: + raise ValueError('max_accept must be positive int: %r' % (self.max_accept, )) + except: + self.close() + raise + + def __enter__(self): + return self + + def __exit__(self, *args): + self.stop() + + def set_listener(self, listener): + if hasattr(listener, 'accept'): + if hasattr(listener, 'do_handshake'): + raise TypeError('Expected a regular socket, not SSLSocket: %r' % (listener, )) + self.family = listener.family + self.address = listener.getsockname() + self.socket = listener + else: + self.family, self.address = parse_address(listener) + + def set_spawn(self, spawn): + if spawn == 'default': + self.pool = None + self._spawn = self._spawn + elif hasattr(spawn, 'spawn'): + self.pool = spawn + self._spawn = spawn.spawn + elif isinstance(spawn, integer_types): + from gevent.pool import Pool + self.pool = Pool(spawn) + self._spawn = self.pool.spawn + else: + self.pool = None + self._spawn = spawn + if hasattr(self.pool, 'full'): + self.full = self.pool.full + if self.pool is not None: + self.pool._semaphore.rawlink(self._start_accepting_if_started) + + def set_handle(self, handle): + if handle is not None: + self.handle = handle + if hasattr(self, 'handle'): + self._handle = self.handle + else: + raise TypeError("'handle' must be provided") + + def _start_accepting_if_started(self, _event=None): + if self.started: + self.start_accepting() + + def start_accepting(self): + if self._watcher is None: + # just stop watcher without creating a new one? + self._watcher = self.loop.io(self.socket.fileno(), 1) + self._watcher.start(self._do_read) + + def stop_accepting(self): + if self._watcher is not None: + self._watcher.stop() + self._watcher.close() + self._watcher = None + if self._timer is not None: + self._timer.stop() + self._timer.close() + self._timer = None + + def do_handle(self, *args): + spawn = self._spawn + handle = self._handle + close = self.do_close + + try: + if spawn is None: + _handle_and_close_when_done(handle, close, args) + else: + spawn(_handle_and_close_when_done, handle, close, args) + except: + close(*args) + raise + + def do_close(self, *args): + pass + + def do_read(self): + raise NotImplementedError() + + def _do_read(self): + for _ in xrange(self.max_accept): + if self.full(): + self.stop_accepting() + if self.pool is not None: + self.pool._semaphore.rawlink(self._start_accepting_if_started) + return + try: + args = self.do_read() + self.delay = self.min_delay + if not args: + return + except: + self.loop.handle_error(self, *sys.exc_info()) + ex = sys.exc_info()[1] + if self.is_fatal_error(ex): + self.close() + sys.stderr.write('ERROR: %s failed with %s\n' % (self, str(ex) or repr(ex))) + return + if self.delay >= 0: + self.stop_accepting() + self._timer = self.loop.timer(self.delay) + self._timer.start(self._start_accepting_if_started) + self.delay = min(self.max_delay, self.delay * 2) + break + else: + try: + self.do_handle(*args) + except: + self.loop.handle_error((args[1:], self), *sys.exc_info()) + if self.delay >= 0: + self.stop_accepting() + self._timer = self.loop.timer(self.delay) + self._timer.start(self._start_accepting_if_started) + self.delay = min(self.max_delay, self.delay * 2) + break + + def full(self): # pylint: disable=method-hidden + # If a Pool is given for to ``set_spawn`` (the *spawn* argument + # of the constructor) it will replace this method. + return False + + def __repr__(self): + return '<%s at %s %s>' % (type(self).__name__, hex(id(self)), self._formatinfo()) + + def __str__(self): + return '<%s %s>' % (type(self).__name__, self._formatinfo()) + + def _formatinfo(self): + if hasattr(self, 'socket'): + try: + fileno = self.socket.fileno() + except Exception as ex: + fileno = str(ex) + result = 'fileno=%s ' % fileno + else: + result = '' + try: + if isinstance(self.address, tuple) and len(self.address) == 2: + result += 'address=%s:%s' % self.address + else: + result += 'address=%s' % (self.address, ) + except Exception as ex: + result += str(ex) or '' + + handle = self.__dict__.get('handle') + if handle is not None: + fself = getattr(handle, '__self__', None) + try: + if fself is self: + # Checks the __self__ of the handle in case it is a bound + # method of self to prevent recursively defined reprs. + handle_repr = '' % ( + self.__class__.__name__, + handle.__name__, + ) + else: + handle_repr = repr(handle) + + result += ' handle=' + handle_repr + except Exception as ex: + result += str(ex) or '' + + return result + + @property + def server_host(self): + """IP address that the server is bound to (string).""" + if isinstance(self.address, tuple): + return self.address[0] + + @property + def server_port(self): + """Port that the server is bound to (an integer).""" + if isinstance(self.address, tuple): + return self.address[1] + + def init_socket(self): + """ + If the user initialized the server with an address rather than + socket, then this function must create a socket, bind it, and + put it into listening mode. + + It is not supposed to be called by the user, it is called by :meth:`start` before starting + the accept loop. + """ + + @property + def started(self): + return not self._stop_event.is_set() + + def start(self): + """Start accepting the connections. + + If an address was provided in the constructor, then also create a socket, + bind it and put it into the listening mode. + """ + self.init_socket() + self._stop_event.clear() + try: + self.start_accepting() + except: + self.close() + raise + + def close(self): + """Close the listener socket and stop accepting.""" + self._stop_event.set() + try: + self.stop_accepting() + finally: + try: + self.socket.close() + except Exception: + pass + finally: + self.__dict__.pop('socket', None) + self.__dict__.pop('handle', None) + self.__dict__.pop('_handle', None) + self.__dict__.pop('_spawn', None) + self.__dict__.pop('full', None) + if self.pool is not None: + self.pool._semaphore.unlink(self._start_accepting_if_started) + # If the pool's semaphore had a notifier already started, + # there's a reference cycle we're a part of + # (self->pool->semaphere-hub callback->semaphore) + # But we can't destroy self.pool, because self.stop() + # calls this method, and then wants to join self.pool() + + @property + def closed(self): + return not hasattr(self, 'socket') + + def stop(self, timeout=None): + """ + Stop accepting the connections and close the listening socket. + + If the server uses a pool to spawn the requests, then + :meth:`stop` also waits for all the handlers to exit. If there + are still handlers executing after *timeout* has expired + (default 1 second, :attr:`stop_timeout`), then the currently + running handlers in the pool are killed. + + If the server does not use a pool, then this merely stops accepting connections; + any spawned greenlets that are handling requests continue running until + they naturally complete. + """ + self.close() + if timeout is None: + timeout = self.stop_timeout + if self.pool: + self.pool.join(timeout=timeout) + self.pool.kill(block=True, timeout=1) + + + def serve_forever(self, stop_timeout=None): + """Start the server if it hasn't been already started and wait until it's stopped.""" + # add test that serve_forever exists on stop() + if not self.started: + self.start() + try: + self._stop_event.wait() + finally: + Greenlet.spawn(self.stop, timeout=stop_timeout).join() + + def is_fatal_error(self, ex): + return isinstance(ex, _socket.error) and ex.args[0] in self.fatal_errors + + +def _extract_family(host): + if host.startswith('[') and host.endswith(']'): + host = host[1:-1] + return _socket.AF_INET6, host + return _socket.AF_INET, host + + +def _parse_address(address): + if isinstance(address, tuple): + if not address[0] or ':' in address[0]: + return _socket.AF_INET6, address + return _socket.AF_INET, address + + if ((isinstance(address, string_types) and ':' not in address) + or isinstance(address, integer_types)): # noqa (pep8 E129) + # Just a port + return _socket.AF_INET6, ('', int(address)) + + if not isinstance(address, string_types): + raise TypeError('Expected tuple or string, got %s' % type(address)) + + host, port = address.rsplit(':', 1) + family, host = _extract_family(host) + if host == '*': + host = '' + return family, (host, int(port)) + + +def parse_address(address): + try: + return _parse_address(address) + except ValueError as ex: # pylint:disable=try-except-raise + raise ValueError('Failed to parse address %r: %s' % (address, ex)) diff --git a/venv/lib/python3.9/site-packages/gevent/builtins.py b/venv/lib/python3.9/site-packages/gevent/builtins.py new file mode 100644 index 0000000..6223f4a --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/builtins.py @@ -0,0 +1,122 @@ +# Copyright (c) 2015 gevent contributors. See LICENSE for details. +"""gevent friendly implementations of builtin functions.""" +from __future__ import absolute_import + +import weakref + +from gevent.lock import RLock +from gevent._compat import imp_acquire_lock +from gevent._compat import imp_release_lock + + + +import builtins as __gbuiltins__ +_allowed_module_name_types = (str,) +__target__ = 'builtins' + +_import = __gbuiltins__.__import__ + +# We need to protect imports both across threads and across greenlets. +# And the order matters. Note that under 3.4, the global import lock +# and imp module are deprecated. It seems that in all Py3 versions, a +# module lock is used such that this fix is not necessary. + +# We emulate the per-module locking system under Python 2 in order to +# avoid issues acquiring locks in multiple-level-deep imports +# that attempt to use the gevent blocking API at runtime; using one lock +# could lead to a LoopExit error as a greenlet attempts to block on it while +# it's already held by the main greenlet (issue #798). + +# We base this approach on a simplification of what `importlib._bootstrap` +# does; notably, we don't check for deadlocks + +_g_import_locks = {} # name -> wref of RLock + +__lock_imports = True + + +def __module_lock(name): + # Return the lock for the given module, creating it if necessary. + # It will be removed when no longer needed. + # Nothing in this function yields, so we're multi-greenlet safe + # (But not multi-threading safe.) + # XXX: What about on PyPy, where the GC is asynchronous (not ref-counting)? + # (Does it stop-the-world first?) + lock = None + try: + lock = _g_import_locks[name]() + except KeyError: + pass + + if lock is None: + lock = RLock() + + def cb(_): + # We've seen a KeyError on PyPy on RPi2 + _g_import_locks.pop(name, None) + _g_import_locks[name] = weakref.ref(lock, cb) + return lock + + +def __import__(*args, **kwargs): + """ + __import__(name, globals=None, locals=None, fromlist=(), level=0) -> object + + Normally python protects imports against concurrency by doing some locking + at the C level (at least, it does that in CPython). This function just + wraps the normal __import__ functionality in a recursive lock, ensuring that + we're protected against greenlet import concurrency as well. + """ + if args and not issubclass(type(args[0]), _allowed_module_name_types): + # if a builtin has been acquired as a bound instance method, + # python knows not to pass 'self' when the method is called. + # No such protection exists for monkey-patched builtins, + # however, so this is necessary. + args = args[1:] + + if not __lock_imports: + return _import(*args, **kwargs) + + module_lock = __module_lock(args[0]) # Get a lock for the module name + imp_acquire_lock() + try: + module_lock.acquire() + try: + result = _import(*args, **kwargs) + finally: + module_lock.release() + finally: + imp_release_lock() + return result + + +def _unlock_imports(): + """ + Internal function, called when gevent needs to perform imports + lazily, but does not know the state of the system. It may be impossible + to take the import lock because there are no other running greenlets, for + example. This causes a monkey-patched __import__ to avoid taking any locks. + until the corresponding call to lock_imports. This should only be done for limited + amounts of time and when the set of imports is statically known to be "safe". + """ + global __lock_imports + # This could easily become a list that we push/pop from or an integer + # we increment if we need to do this recursively, but we shouldn't get + # that complex. + __lock_imports = False + + +def _lock_imports(): + global __lock_imports + __lock_imports = True + + +__implements__ = [] +__import__ = _import +__all__ = __implements__ + + +from gevent._util import copy_globals + +__imports__ = copy_globals(__gbuiltins__, globals(), + names_to_ignore=__implements__) diff --git a/venv/lib/python3.9/site-packages/gevent/contextvars.py b/venv/lib/python3.9/site-packages/gevent/contextvars.py new file mode 100644 index 0000000..31dcbdd --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/contextvars.py @@ -0,0 +1,348 @@ +# -*- coding: utf-8 -*- +""" +Cooperative ``contextvars`` module. + +This module was added to Python 3.7. The gevent version is available +on all supported versions of Python. However, see an important note +about gevent 20.9. + +Context variables are like greenlet-local variables, just more +inconvenient to use. They were designed to work around limitations in +:mod:`asyncio` and are rarely needed by greenlet-based code. + +The primary difference is that snapshots of the state of all context +variables in a given greenlet can be taken, and later restored for +execution; modifications to context variables are "scoped" to the +duration that a particular context is active. (This state-restoration +support is rarely useful for greenlets because instead of always +running "tasks" sequentially within a single thread like `asyncio` +does, greenlet-based code usually spawns new greenlets to handle each +task.) + +The gevent implementation is based on the Python reference implementation +from :pep:`567` and doesn't have much optimization. In particular, setting +context values isn't constant time. + +.. versionadded:: 1.5a3 +.. versionchanged:: 20.9.0 + On Python 3.7 and above, this module is no longer monkey-patched + in place of the standard library version. + gevent depends on greenlet 0.4.17 which includes support for context variables. + This means that any number of greenlets can be running any number of asyncio tasks + each with their own context variables. This module is only greenlet aware, not + asyncio task aware, so its use is not recommended on Python 3.7 and above. + + On previous versions of Python, this module continues to be a solution for + backporting code. It is also available if you wish to use the contextvar API + in a strictly greenlet-local manner. +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + + +__all__ = [ + 'ContextVar', + 'Context', + 'copy_context', + 'Token', +] + +try: + from collections.abc import Mapping +except ImportError: + from collections import Mapping # pylint:disable=deprecated-class + + +from gevent._util import _NONE +from gevent.local import local + +__stdlib_expected__ = __all__ +__implements__ = __stdlib_expected__ + +# In the reference implementation, the interpreter level OS thread state +# is modified to contain a pointer to the current context. Obviously we can't +# touch that here because we're not tied to CPython's internals; plus, of course, +# we want to operate with greenlets, not OS threads. So we use a greenlet-local object +# to store the active context. +class _ContextState(local): + + def __init__(self): + self.context = Context() + + +def _not_base_type(cls): + # This is not given in the PEP but is tested in test_context. + # Assign this method to __init_subclass__ in each type that can't + # be subclassed. (This only works in 3.6+, but context vars are only in + # 3.7+) + raise TypeError("not an acceptable base type") + +class _ContextData(object): + """ + A copy-on-write immutable mapping from ContextVar + keys to arbitrary values. Setting values requires a + copy, making it O(n), not O(1). + """ + + # In theory, the HAMT used by the stdlib contextvars module could + # be used: It's often available at _testcapi.hamt() (see + # test_context). We'd need to be sure to add a correct __hash__ + # method to ContextVar to make that work well. (See + # Python/context.c:contextvar_generate_hash.) + + __slots__ = ( + '_mapping', + ) + + def __init__(self): + self._mapping = {} + + def __getitem__(self, key): + return self._mapping[key] + + def __contains__(self, key): + return key in self._mapping + + def __len__(self): + return len(self._mapping) + + def __iter__(self): + return iter(self._mapping) + + def set(self, key, value): + copy = _ContextData() + copy._mapping = self._mapping.copy() + copy._mapping[key] = value + return copy + + def delete(self, key): + copy = _ContextData() + copy._mapping = self._mapping.copy() + del copy._mapping[key] + return copy + + +class ContextVar(object): + """ + Implementation of :class:`contextvars.ContextVar`. + """ + + __slots__ = ( + '_name', + '_default', + ) + + def __init__(self, name, default=_NONE): + self._name = name + self._default = default + + __init_subclass__ = classmethod(_not_base_type) + + @classmethod + def __class_getitem__(cls, _): + # For typing support: ContextVar[str]. + # Not in the PEP. + # sigh. + return cls + + @property + def name(self): + return self._name + + def get(self, default=_NONE): + context = _context_state.context + try: + return context[self] + except KeyError: + pass + + if default is not _NONE: + return default + + if self._default is not _NONE: + return self._default + + raise LookupError + + def set(self, value): + context = _context_state.context + return context._set_value(self, value) + + def reset(self, token): + token._reset(self) + + def __repr__(self): + # This is not captured in the PEP but is tested by test_context + return '<%s.%s name=%r default=%r at 0x%x>' % ( + type(self).__module__, + type(self).__name__, + self._name, + self._default, + id(self) + ) + + +class Token(object): + """ + Opaque implementation of :class:`contextvars.Token`. + """ + + MISSING = _NONE + + __slots__ = ( + '_context', + '_var', + '_old_value', + '_used', + ) + + def __init__(self, context, var, old_value): + self._context = context + self._var = var + self._old_value = old_value + self._used = False + + __init_subclass__ = classmethod(_not_base_type) + + @property + def var(self): + """ + A read-only attribute pointing to the variable that created the token + """ + return self._var + + @property + def old_value(self): + """ + A read-only attribute set to the value the variable had before + the ``set()`` call, or to :attr:`MISSING` if the variable wasn't set + before. + """ + return self._old_value + + def _reset(self, var): + if self._used: + raise RuntimeError("Taken has already been used once") + + if self._var is not var: + raise ValueError("Token was created by a different ContextVar") + + if self._context is not _context_state.context: + raise ValueError("Token was created in a different Context") + + self._used = True + if self._old_value is self.MISSING: + self._context._delete(var) + else: + self._context._reset_value(var, self._old_value) + + def __repr__(self): + # This is not captured in the PEP but is tested by test_context + return '<%s.%s%s var=%r at 0x%x>' % ( + type(self).__module__, + type(self).__name__, + ' used' if self._used else '', + self._var, + id(self), + ) + +class Context(Mapping): + """ + Implementation of :class:`contextvars.Context` + """ + + __slots__ = ( + '_data', + '_prev_context', + ) + + def __init__(self): + """ + Creates an empty context. + """ + self._data = _ContextData() + self._prev_context = None + + __init_subclass__ = classmethod(_not_base_type) + + def run(self, function, *args, **kwargs): + if self._prev_context is not None: + raise RuntimeError( + "Cannot enter context; %s is already entered" % (self,) + ) + + self._prev_context = _context_state.context + try: + _context_state.context = self + return function(*args, **kwargs) + finally: + _context_state.context = self._prev_context + self._prev_context = None + + def copy(self): + """ + Return a shallow copy. + """ + result = Context() + result._data = self._data + return result + + ### + # Operations used by ContextVar and Token + ### + + def _set_value(self, var, value): + try: + old_value = self._data[var] + except KeyError: + old_value = Token.MISSING + + self._data = self._data.set(var, value) + return Token(self, var, old_value) + + def _delete(self, var): + self._data = self._data.delete(var) + + def _reset_value(self, var, old_value): + self._data = self._data.set(var, old_value) + + # Note that all Mapping methods, including Context.__getitem__ and + # Context.get, ignore default values for context variables (i.e. + # ContextVar.default). This means that for a variable var that was + # created with a default value and was not set in the context: + # + # - context[var] raises a KeyError, + # - var in context returns False, + # - the variable isn't included in context.items(), etc. + + # Checking the type of key isn't part of the PEP but is tested by + # test_context.py. + @staticmethod + def __check_key(key): + if type(key) is not ContextVar: # pylint:disable=unidiomatic-typecheck + raise TypeError("ContextVar key was expected") + + def __getitem__(self, key): + self.__check_key(key) + return self._data[key] + + def __contains__(self, key): + self.__check_key(key) + return key in self._data + + def __len__(self): + return len(self._data) + + def __iter__(self): + return iter(self._data) + + +def copy_context(): + """ + Return a shallow copy of the current context. + """ + return _context_state.context.copy() + + +_context_state = _ContextState() diff --git a/venv/lib/python3.9/site-packages/gevent/core.py b/venv/lib/python3.9/site-packages/gevent/core.py new file mode 100644 index 0000000..906e739 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/core.py @@ -0,0 +1,20 @@ +# Copyright (c) 2009-2015 Denis Bilenko and gevent contributors. See LICENSE for details. +""" +Deprecated; this does not reflect all the possible options +and its interface varies. + +.. versionchanged:: 1.3a2 + Deprecated. +""" +from __future__ import absolute_import + +import sys + +from gevent._config import config +from gevent._util import copy_globals + +_core = sys.modules[config.loop.__module__] + +copy_globals(_core, globals()) + +__all__ = _core.__all__ # pylint:disable=no-member diff --git a/venv/lib/python3.9/site-packages/gevent/event.py b/venv/lib/python3.9/site-packages/gevent/event.py new file mode 100644 index 0000000..12d72f8 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/event.py @@ -0,0 +1,429 @@ +# Copyright (c) 2009-2016 Denis Bilenko, gevent contributors. See LICENSE for details. +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False,infer_types=True + +"""Basic synchronization primitives: Event and AsyncResult""" +from __future__ import print_function + +from gevent._util import _NONE +from gevent._compat import reraise +from gevent._tblib import dump_traceback, load_traceback + +from gevent.timeout import Timeout + + +__all__ = [ + 'Event', + 'AsyncResult', +] + +def _get_linkable(): + x = __import__('gevent._abstract_linkable') + return x._abstract_linkable.AbstractLinkable +locals()['AbstractLinkable'] = _get_linkable() +del _get_linkable + + +class Event(AbstractLinkable): # pylint:disable=undefined-variable + """ + A synchronization primitive that allows one greenlet to wake up + one or more others. It has the same interface as + :class:`threading.Event` but works across greenlets. + + .. important:: + This object is for communicating among greenlets within the + same thread *only*! Do not try to use it to communicate across threads. + + An event object manages an internal flag that can be set to true + with the :meth:`set` method and reset to false with the + :meth:`clear` method. The :meth:`wait` method blocks until the + flag is true; as soon as the flag is set to true, all greenlets + that are currently blocked in a call to :meth:`wait` will be scheduled + to awaken. + + Note that the flag may be cleared and set many times before + any individual greenlet runs; all the greenlet can know for sure is that the + flag was set *at least once* while it was waiting. + If the greenlet cares whether the flag is still + set, it must check with :meth:`ready` and possibly call back into + :meth:`wait` again. + + .. note:: + + The exact order and timing in which waiting greenlets are awakened is not determined. + + Once the event is set, other greenlets may run before any waiting greenlets + are awakened. + + While the code here will awaken greenlets in the order in which they + waited, each such greenlet that runs may in turn cause other greenlets + to run. + + These details may change in the future. + + .. versionchanged:: 1.5a3 + + Waiting greenlets are now awakened in + the order in which they waited. + + .. versionchanged:: 1.5a3 + + The low-level ``rawlink`` method (most users won't use this) now + automatically unlinks waiters before calling them. + + .. versionchanged:: 20.5.1 + + Callers to ``wait`` that find the event already set will now run + after any other waiters that had to block. See :issue:`1520`. + """ + + __slots__ = ('_flag',) + + def __init__(self): + super(Event, self).__init__() + self._flag = False + + def __str__(self): + return '<%s.%s at 0x%x %s _links[%s]>' % ( + self.__class__.__module__, + self.__class__.__name__, + id(self), + 'set' if self._flag else 'clear', + self.linkcount() + ) + + def is_set(self): + """Return true if and only if the internal flag is true.""" + return self._flag + + def isSet(self): + # makes it a better drop-in replacement for threading.Event + return self._flag + + def ready(self): + # makes it compatible with AsyncResult and Greenlet (for + # example in wait()) + return self._flag + + def set(self): + """ + Set the internal flag to true. + + All greenlets waiting for it to become true are awakened in + some order at some time in the future. Greenlets that call + :meth:`wait` once the flag is true will not block at all + (until :meth:`clear` is called). + """ + self._flag = True + self._check_and_notify() + + def clear(self): + """ + Reset the internal flag to false. + + Subsequently, threads calling :meth:`wait` will block until + :meth:`set` is called to set the internal flag to true again. + """ + self._flag = False + + def _wait_return_value(self, waited, wait_success): + # To avoid the race condition outlined in http://bugs.python.org/issue13502, + # if we had to wait, then we need to return whether or not + # the condition got changed. Otherwise we simply echo + # the current state of the flag (which should be true) + if not waited: + flag = self._flag + assert flag, "if we didn't wait we should already be set" + return flag + + return wait_success + + def wait(self, timeout=None): + """ + Block until this object is :meth:`ready`. + + If the internal flag is true on entry, return immediately. Otherwise, + block until another thread (greenlet) calls :meth:`set` to set the flag to true, + or until the optional *timeout* expires. + + When the *timeout* argument is present and not ``None``, it should be a + floating point number specifying a timeout for the operation in seconds + (or fractions thereof). + + :return: This method returns true if and only if the internal flag has been set to + true, either before the wait call or after the wait starts, so it will + always return ``True`` except if a timeout is given and the operation + times out. + + .. versionchanged:: 1.1 + The return value represents the flag during the elapsed wait, not + just after it elapses. This solves a race condition if one greenlet + sets and then clears the flag without switching, while other greenlets + are waiting. When the waiters wake up, this will return True; previously, + they would still wake up, but the return value would be False. This is most + noticeable when the *timeout* is present. + """ + return self._wait(timeout) + + def _reset_internal_locks(self): # pragma: no cover + # for compatibility with threading.Event + # Exception AttributeError: AttributeError("'Event' object has no attribute '_reset_internal_locks'",) + # in ignored + pass + + + +class AsyncResult(AbstractLinkable): # pylint:disable=undefined-variable + """ + A one-time event that stores a value or an exception. + + Like :class:`Event` it wakes up all the waiters when :meth:`set` + or :meth:`set_exception` is called. Waiters may receive the passed + value or exception by calling :meth:`get` instead of :meth:`wait`. + An :class:`AsyncResult` instance cannot be reset. + + .. important:: + This object is for communicating among greenlets within the + same thread *only*! Do not try to use it to communicate across threads. + + To pass a value call :meth:`set`. Calls to :meth:`get` (those that + are currently blocking as well as those made in the future) will + return the value:: + + >>> from gevent.event import AsyncResult + >>> result = AsyncResult() + >>> result.set(100) + >>> result.get() + 100 + + To pass an exception call :meth:`set_exception`. This will cause + :meth:`get` to raise that exception:: + + >>> result = AsyncResult() + >>> result.set_exception(RuntimeError('failure')) + >>> result.get() + Traceback (most recent call last): + ... + RuntimeError: failure + + :class:`AsyncResult` implements :meth:`__call__` and thus can be + used as :meth:`link` target:: + + >>> import gevent + >>> result = AsyncResult() + >>> gevent.spawn(lambda : 1/0).link(result) + >>> try: + ... result.get() + ... except ZeroDivisionError: + ... print('ZeroDivisionError') + ZeroDivisionError + + .. note:: + + The order and timing in which waiting greenlets are awakened is not determined. + As an implementation note, in gevent 1.1 and 1.0, waiting greenlets are awakened in a + undetermined order sometime *after* the current greenlet yields to the event loop. Other greenlets + (those not waiting to be awakened) may run between the current greenlet yielding and + the waiting greenlets being awakened. These details may change in the future. + + .. versionchanged:: 1.1 + + The exact order in which waiting greenlets + are awakened is not the same as in 1.0. + + .. versionchanged:: 1.1 + + Callbacks :meth:`linked ` to this object are required to + be hashable, and duplicates are merged. + + .. versionchanged:: 1.5a3 + + Waiting greenlets are now awakened in the order in which they + waited. + + .. versionchanged:: 1.5a3 + + The low-level ``rawlink`` method + (most users won't use this) now automatically unlinks waiters + before calling them. + """ + + __slots__ = ('_value', '_exc_info', '_imap_task_index') + + def __init__(self): + super(AsyncResult, self).__init__() + self._value = _NONE + self._exc_info = () + + @property + def _exception(self): + return self._exc_info[1] if self._exc_info else _NONE + + @property + def value(self): + """ + Holds the value passed to :meth:`set` if :meth:`set` was called. Otherwise, + ``None`` + """ + return self._value if self._value is not _NONE else None + + @property + def exc_info(self): + """ + The three-tuple of exception information if :meth:`set_exception` was called. + """ + if self._exc_info: + return (self._exc_info[0], self._exc_info[1], load_traceback(self._exc_info[2])) + return () + + def __str__(self): + result = '<%s ' % (self.__class__.__name__, ) + if self.value is not None or self._exception is not _NONE: + result += 'value=%r ' % self.value + if self._exception is not None and self._exception is not _NONE: + result += 'exception=%r ' % self._exception + if self._exception is _NONE: + result += 'unset ' + return result + ' _links[%s]>' % self.linkcount() + + def ready(self): + """Return true if and only if it holds a value or an exception""" + return self._exc_info or self._value is not _NONE + + def successful(self): + """Return true if and only if it is ready and holds a value""" + return self._value is not _NONE + + @property + def exception(self): + """Holds the exception instance passed to :meth:`set_exception` if :meth:`set_exception` was called. + Otherwise ``None``.""" + if self._exc_info: + return self._exc_info[1] + + def set(self, value=None): + """Store the value and wake up any waiters. + + All greenlets blocking on :meth:`get` or :meth:`wait` are awakened. + Subsequent calls to :meth:`wait` and :meth:`get` will not block at all. + """ + self._value = value + self._check_and_notify() + + def set_exception(self, exception, exc_info=None): + """Store the exception and wake up any waiters. + + All greenlets blocking on :meth:`get` or :meth:`wait` are awakened. + Subsequent calls to :meth:`wait` and :meth:`get` will not block at all. + + :keyword tuple exc_info: If given, a standard three-tuple of type, value, :class:`traceback` + as returned by :func:`sys.exc_info`. This will be used when the exception + is re-raised to propagate the correct traceback. + """ + if exc_info: + self._exc_info = (exc_info[0], exc_info[1], dump_traceback(exc_info[2])) + else: + self._exc_info = (type(exception), exception, dump_traceback(None)) + + self._check_and_notify() + + def _raise_exception(self): + reraise(*self.exc_info) + + def get(self, block=True, timeout=None): + """Return the stored value or raise the exception. + + If this instance already holds a value or an exception, return or raise it immediately. + Otherwise, block until another greenlet calls :meth:`set` or :meth:`set_exception` or + until the optional timeout occurs. + + When the *timeout* argument is present and not ``None``, it should be a + floating point number specifying a timeout for the operation in seconds + (or fractions thereof). If the *timeout* elapses, the *Timeout* exception will + be raised. + + :keyword bool block: If set to ``False`` and this instance is not ready, + immediately raise a :class:`Timeout` exception. + """ + if self._value is not _NONE: + return self._value + if self._exc_info: + return self._raise_exception() + + if not block: + # Not ready and not blocking, so immediately timeout + raise Timeout() + + self._capture_hub(True) + + # Wait, raising a timeout that elapses + self._wait_core(timeout, ()) + + # by definition we are now ready + return self.get(block=False) + + def get_nowait(self): + """ + Return the value or raise the exception without blocking. + + If this object is not yet :meth:`ready `, raise + :class:`gevent.Timeout` immediately. + """ + return self.get(block=False) + + def _wait_return_value(self, waited, wait_success): + # pylint:disable=unused-argument + # Always return the value. Since this is a one-shot event, + # no race condition should reset it. + return self.value + + def wait(self, timeout=None): + """Block until the instance is ready. + + If this instance already holds a value, it is returned immediately. If this + instance already holds an exception, ``None`` is returned immediately. + + Otherwise, block until another greenlet calls :meth:`set` or :meth:`set_exception` + (at which point either the value or ``None`` will be returned, respectively), + or until the optional timeout expires (at which point ``None`` will also be + returned). + + When the *timeout* argument is present and not ``None``, it should be a + floating point number specifying a timeout for the operation in seconds + (or fractions thereof). + + .. note:: If a timeout is given and expires, ``None`` will be returned + (no timeout exception will be raised). + + """ + return self._wait(timeout) + + # link protocol + def __call__(self, source): + if source.successful(): + self.set(source.value) + else: + self.set_exception(source.exception, getattr(source, 'exc_info', None)) + + # Methods to make us more like concurrent.futures.Future + + def result(self, timeout=None): + return self.get(timeout=timeout) + + set_result = set + + def done(self): + return self.ready() + + # we don't support cancelling + + def cancel(self): + return False + + def cancelled(self): + return False + + # exception is a method, we use it as a property + + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent._event') diff --git a/venv/lib/python3.9/site-packages/gevent/events.py b/venv/lib/python3.9/site-packages/gevent/events.py new file mode 100644 index 0000000..c14c9fd --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/events.py @@ -0,0 +1,516 @@ +# -*- coding: utf-8 -*- +# Copyright 2018 gevent. See LICENSE for details. +""" +Publish/subscribe event infrastructure. + +When certain "interesting" things happen during the lifetime of the +process, gevent will "publish" an event (an object). That event is +delivered to interested "subscribers" (functions that take one +parameter, the event object). + +Higher level frameworks may take this foundation and build richer +models on it. + +:mod:`zope.event` will be used to provide the functionality of +`notify` and `subscribers`. See :mod:`zope.event.classhandler` for a +simple class-based approach to subscribing to a filtered list of +events, and see `zope.component +`_ for a +much higher-level, flexible system. If you are using one of these +systems, you generally will not want to directly modify `subscribers`. + +.. versionadded:: 1.3b1 + +.. versionchanged:: 23.7.0 + Now uses :mod:`importlib.metadata` instead of :mod:`pkg_resources` + to locate entry points. +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + + +__all__ = [ + 'subscribers', + + # monitor thread + 'IEventLoopBlocked', + 'EventLoopBlocked', + 'IMemoryUsageThresholdExceeded', + 'MemoryUsageThresholdExceeded', + 'IMemoryUsageUnderThreshold', + 'MemoryUsageUnderThreshold', + + # Hub + 'IPeriodicMonitorThread', + 'IPeriodicMonitorThreadStartedEvent', + 'PeriodicMonitorThreadStartedEvent', + + # monkey + 'IGeventPatchEvent', + 'GeventPatchEvent', + 'IGeventWillPatchEvent', + 'DoNotPatch', + 'GeventWillPatchEvent', + 'IGeventDidPatchEvent', + 'IGeventWillPatchModuleEvent', + 'GeventWillPatchModuleEvent', + 'IGeventDidPatchModuleEvent', + 'GeventDidPatchModuleEvent', + 'IGeventWillPatchAllEvent', + 'GeventWillPatchAllEvent', + 'IGeventDidPatchBuiltinModulesEvent', + 'GeventDidPatchBuiltinModulesEvent', + 'IGeventDidPatchAllEvent', + 'GeventDidPatchAllEvent', +] + +# pylint:disable=no-self-argument,inherit-non-class +import platform + +from zope.interface import Interface +from zope.interface import Attribute +from zope.interface import implementer + +from zope.event import subscribers +from zope.event import notify + + + +#: Applications may register for notification of events by appending a +#: callable to the ``subscribers`` list. +#: +#: Each subscriber takes a single argument, which is the event object +#: being published. +#: +#: Exceptions raised by subscribers will be propagated *without* running +#: any remaining subscribers. +#: +#: This is an alias for `zope.event.subscribers`; prefer to use +#: that attribute directly. +subscribers = subscribers + +try: + # Cache the platform info. pkg_resources uses + # platform.machine() for environment markers, and + # platform.machine() wants to call os.popen('uname'), which is + # broken on Py2 when the gevent child signal handler is + # installed. (see test__monkey_sigchild_2.py) + platform.uname() +except: # pylint:disable=bare-except + pass +finally: + del platform + +def notify_and_call_entry_points(event): + notify(event) + from importlib import metadata + import sys + # This used to use the old ``pkg_resources.iter_entry_points(group,name=None)`` + # API, passing it just the first argument, ``group=event.ENTRY_POINT_NAME``. + # In other words, we don't care about the ``name``. + if sys.version_info[:2] >= (3, 10): + # pylint:disable-next=unexpected-keyword-arg + # The only thing you can do with this is iterate it to get + # EntryPoint objects. (e.g., accessing by index raises a warning) + entry_points = metadata.entry_points(group=event.ENTRY_POINT_NAME) + else: + # Prior to 3.10, we have to do this all manually (keyword selection + # was introduced in 3.10; in 3.9 and before, entry_points returns a plain + # ``dict``). Using it like this is deprecated in 3.10, so to avoid warnings + # we have to write it twice. + # + # Prior to 3.9, there is no ``.module`` attribute, so if we + # needed that we'd have to look at the complete ``.value`` + # attribute. + ep_dict = metadata.entry_points() + __traceback_info__ = ep_dict + # On Python 3.8, we can get duplicate EntryPoint objects; it is unclear + # why. Drop them into a set to make sure we only get one. + # + # Running a more recent pylint flags the non-existence of ``get`` + # pylint:disable=no-member + entry_points = set( + ep + for ep + in ep_dict.get(event.ENTRY_POINT_NAME, ()) + ) + + for plugin in entry_points: + subscriber = plugin.load() + subscriber(event) + + +class IPeriodicMonitorThread(Interface): + """ + The contract for the periodic monitoring thread that is started + by the hub. + """ + + def add_monitoring_function(function, period): + """ + Schedule the *function* to be called approximately every *period* fractional seconds. + + The *function* receives one argument, the hub being monitored. It is called + in the monitoring thread, *not* the hub thread. It **must not** attempt to + use the gevent asynchronous API. + + If the *function* is already a monitoring function, then its *period* + will be updated for future runs. + + If the *period* is ``None``, then the function will be removed. + + A *period* less than or equal to zero is not allowed. + """ + +class IPeriodicMonitorThreadStartedEvent(Interface): + """ + The event emitted when a hub starts a periodic monitoring thread. + + You can use this event to add additional monitoring functions. + """ + + monitor = Attribute("The instance of `IPeriodicMonitorThread` that was started.") + +@implementer(IPeriodicMonitorThreadStartedEvent) +class PeriodicMonitorThreadStartedEvent(object): + """ + The implementation of :class:`IPeriodicMonitorThreadStartedEvent`. + + .. versionchanged:: 24.11.1 + Now actually implements the promised interface. + """ + + #: The name of the setuptools entry point that is called when this + #: event is emitted. + ENTRY_POINT_NAME = 'gevent.plugins.hub.periodic_monitor_thread_started' + + def __init__(self, monitor): + self.monitor = monitor + +class IEventLoopBlocked(Interface): + """ + The event emitted when the event loop is blocked. + + This event is emitted in the monitor thread. + + .. versionchanged:: 24.11.1 + Add the *hub* attribute. + """ + + greenlet = Attribute("The greenlet that appeared to be blocking the loop.") + blocking_time = Attribute("The approximate time in seconds the loop has been blocked.") + info = Attribute("A list of string lines providing extra info. You may modify this list.") + hub = Attribute("""If not None, the hub being blocked.""") + +@implementer(IEventLoopBlocked) +class EventLoopBlocked(object): + """ + The event emitted when the event loop is blocked. + + Implements `IEventLoopBlocked`. + """ + + def __init__(self, greenlet, blocking_time, info, *, hub=None): + self.greenlet = greenlet + self.blocking_time = blocking_time + self.info = info + self.hub = hub + +class IMemoryUsageThresholdExceeded(Interface): + """ + The event emitted when the memory usage threshold is exceeded. + + This event is emitted only while memory continues to grow + above the threshold. Only if the condition or stabilized is corrected (memory + usage drops) will the event be emitted in the future. + + This event is emitted in the monitor thread. + """ + + mem_usage = Attribute("The current process memory usage, in bytes.") + max_allowed = Attribute("The maximum allowed memory usage, in bytes.") + memory_info = Attribute("The tuple of memory usage stats return by psutil.") + +class _AbstractMemoryEvent(object): + + def __init__(self, mem_usage, max_allowed, memory_info): + self.mem_usage = mem_usage + self.max_allowed = max_allowed + self.memory_info = memory_info + + def __repr__(self): + return "<%s used=%d max=%d details=%r>" % ( + self.__class__.__name__, + self.mem_usage, + self.max_allowed, + self.memory_info, + ) + +@implementer(IMemoryUsageThresholdExceeded) +class MemoryUsageThresholdExceeded(_AbstractMemoryEvent): + """ + Implementation of `IMemoryUsageThresholdExceeded`. + """ + + +class IMemoryUsageUnderThreshold(Interface): + """ + The event emitted when the memory usage drops below the + threshold after having previously been above it. + + This event is emitted only the first time memory usage is detected + to be below the threshold after having previously been above it. + If memory usage climbs again, a `IMemoryUsageThresholdExceeded` + event will be broadcast, and then this event could be broadcast again. + + This event is emitted in the monitor thread. + """ + + mem_usage = Attribute("The current process memory usage, in bytes.") + max_allowed = Attribute("The maximum allowed memory usage, in bytes.") + max_memory_usage = Attribute("The memory usage that caused the previous " + "IMemoryUsageThresholdExceeded event.") + memory_info = Attribute("The tuple of memory usage stats return by psutil.") + + +@implementer(IMemoryUsageUnderThreshold) +class MemoryUsageUnderThreshold(_AbstractMemoryEvent): + """ + Implementation of `IMemoryUsageUnderThreshold`. + """ + + def __init__(self, mem_usage, max_allowed, memory_info, max_usage): + super(MemoryUsageUnderThreshold, self).__init__(mem_usage, max_allowed, memory_info) + self.max_memory_usage = max_usage + + +class IGeventPatchEvent(Interface): + """ + The root for all monkey-patch events gevent emits. + """ + + source = Attribute("The source object containing the patches.") + target = Attribute("The destination object to be patched.") + +@implementer(IGeventPatchEvent) +class GeventPatchEvent(object): + """ + Implementation of `IGeventPatchEvent`. + """ + + def __init__(self, source, target): + self.source = source + self.target = target + + def __repr__(self): + return '<%s source=%r target=%r at %x>' % (self.__class__.__name__, + self.source, + self.target, + id(self)) + +class IGeventWillPatchEvent(IGeventPatchEvent): + """ + An event emitted *before* gevent monkey-patches something. + + If a subscriber raises `DoNotPatch`, then patching this particular + item will not take place. + """ + + +class DoNotPatch(BaseException): + """ + Subscribers to will-patch events can raise instances + of this class to tell gevent not to patch that particular item. + """ + + +@implementer(IGeventWillPatchEvent) +class GeventWillPatchEvent(GeventPatchEvent): + """ + Implementation of `IGeventWillPatchEvent`. + """ + +class IGeventDidPatchEvent(IGeventPatchEvent): + """ + An event emitted *after* gevent has patched something. + """ + +@implementer(IGeventDidPatchEvent) +class GeventDidPatchEvent(GeventPatchEvent): + """ + Implementation of `IGeventDidPatchEvent`. + """ + +class IGeventWillPatchModuleEvent(IGeventWillPatchEvent): + """ + An event emitted *before* gevent begins patching a specific module. + + Both *source* and *target* attributes are module objects. + """ + + module_name = Attribute("The name of the module being patched. " + "This is the same as ``target.__name__``.") + + target_item_names = Attribute("The list of item names to patch. " + "This can be modified in place with caution.") + +@implementer(IGeventWillPatchModuleEvent) +class GeventWillPatchModuleEvent(GeventWillPatchEvent): + """ + Implementation of `IGeventWillPatchModuleEvent`. + """ + + #: The name of the setuptools entry point that is called when this + #: event is emitted. + ENTRY_POINT_NAME = 'gevent.plugins.monkey.will_patch_module' + + def __init__(self, module_name, source, target, items): + super(GeventWillPatchModuleEvent, self).__init__(source, target) + self.module_name = module_name + self.target_item_names = items + + +class IGeventDidPatchModuleEvent(IGeventDidPatchEvent): + """ + An event emitted *after* gevent has completed patching a specific + module. + """ + + module_name = Attribute("The name of the module being patched. " + "This is the same as ``target.__name__``.") + + +@implementer(IGeventDidPatchModuleEvent) +class GeventDidPatchModuleEvent(GeventDidPatchEvent): + """ + Implementation of `IGeventDidPatchModuleEvent`. + """ + + #: The name of the setuptools entry point that is called when this + #: event is emitted. + ENTRY_POINT_NAME = 'gevent.plugins.monkey.did_patch_module' + + def __init__(self, module_name, source, target): + super(GeventDidPatchModuleEvent, self).__init__(source, target) + self.module_name = module_name + +# TODO: Maybe it would be useful for the the module patch events +# to have an attribute telling if they're being done during patch_all? + +class IGeventWillPatchAllEvent(IGeventWillPatchEvent): + """ + An event emitted *before* gevent begins patching the system. + + Following this event will be a series of + `IGeventWillPatchModuleEvent` and `IGeventDidPatchModuleEvent` for + each patched module. + + Once the gevent builtin modules have been processed, + `IGeventDidPatchBuiltinModulesEvent` will be emitted. Processing + this event is an ideal time for third-party modules to be imported + and patched (which may trigger its own will/did patch module + events). + + Finally, a `IGeventDidPatchAllEvent` will be sent. + + If a subscriber to this event raises `DoNotPatch`, no patching + will be done. + + The *source* and *target* attributes have undefined values. + """ + + patch_all_arguments = Attribute( + "A dictionary of all the arguments to `gevent.monkey.patch_all`. " + "This dictionary should not be modified. " + ) + + patch_all_kwargs = Attribute( + "A dictionary of the extra arguments to `gevent.monkey.patch_all`. " + "This dictionary should not be modified. " + ) + + def will_patch_module(module_name): + """ + Return whether the module named *module_name* will be patched. + """ + +class _PatchAllMixin(object): + def __init__(self, patch_all_arguments, patch_all_kwargs): + super(_PatchAllMixin, self).__init__(None, None) + self._patch_all_arguments = patch_all_arguments + self._patch_all_kwargs = patch_all_kwargs + + @property + def patch_all_arguments(self): + return self._patch_all_arguments.copy() + + @property + def patch_all_kwargs(self): + return self._patch_all_kwargs.copy() + + def __repr__(self): + return '<%s %r at %x>' % (self.__class__.__name__, + self._patch_all_arguments, + id(self)) + +@implementer(IGeventWillPatchAllEvent) +class GeventWillPatchAllEvent(_PatchAllMixin, GeventWillPatchEvent): + """ + Implementation of `IGeventWillPatchAllEvent`. + """ + + #: The name of the setuptools entry point that is called when this + #: event is emitted. + ENTRY_POINT_NAME = 'gevent.plugins.monkey.will_patch_all' + + def will_patch_module(self, module_name): + return self.patch_all_arguments.get(module_name) + +class IGeventDidPatchBuiltinModulesEvent(IGeventDidPatchEvent): + """ + Event emitted *after* the builtin modules have been patched. + + If you're going to monkey-patch a third-party library, this is + usually the event to listen for. + + The values of the *source* and *target* attributes are undefined. + """ + + patch_all_arguments = Attribute( + "A dictionary of all the arguments to `gevent.monkey.patch_all`. " + "This dictionary should not be modified. " + ) + + patch_all_kwargs = Attribute( + "A dictionary of the extra arguments to `gevent.monkey.patch_all`. " + "This dictionary should not be modified. " + ) + +@implementer(IGeventDidPatchBuiltinModulesEvent) +class GeventDidPatchBuiltinModulesEvent(_PatchAllMixin, GeventDidPatchEvent): + """ + Implementation of `IGeventDidPatchBuiltinModulesEvent`. + """ + + #: The name of the setuptools entry point that is called when this + #: event is emitted. + ENTRY_POINT_NAME = 'gevent.plugins.monkey.did_patch_builtins' + +class IGeventDidPatchAllEvent(IGeventDidPatchEvent): + """ + Event emitted after gevent has patched all modules, both builtin + and those provided by plugins/subscribers. + + The values of the *source* and *target* attributes are undefined. + """ + +@implementer(IGeventDidPatchAllEvent) +class GeventDidPatchAllEvent(_PatchAllMixin, GeventDidPatchEvent): + """ + Implementation of `IGeventDidPatchAllEvent`. + """ + + #: The name of the setuptools entry point that is called when this + #: event is emitted. + ENTRY_POINT_NAME = 'gevent.plugins.monkey.did_patch_all' diff --git a/venv/lib/python3.9/site-packages/gevent/exceptions.py b/venv/lib/python3.9/site-packages/gevent/exceptions.py new file mode 100644 index 0000000..6fcb766 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/exceptions.py @@ -0,0 +1,133 @@ +# -*- coding: utf-8 -*- +# copyright 2018 gevent +""" +Exceptions. + +.. versionadded:: 1.3b1 + +""" + +from greenlet import GreenletExit + +__all__ = [ + 'LoopExit', +] + + +class LoopExit(Exception): + """ + Exception thrown when the hub finishes running (`gevent.hub.Hub.run` + would return). + + In a normal application, this is never thrown or caught + explicitly. The internal implementation of functions like + :meth:`gevent.hub.Hub.join` and :func:`gevent.joinall` may catch it, but user code + generally should not. + + .. caution:: + Errors in application programming can also lead to this exception being + raised. Some examples include (but are not limited too): + + - greenlets deadlocking on a lock; + - using a socket or other gevent object with native thread + affinity from a different thread + + """ + + @property + def hub(self): + """ + The (optional) hub that raised the error. + + .. versionadded:: 20.12.0 + """ + # XXX: Note that semaphore.py does this manually. + if len(self.args) == 3: # From the hub + return self.args[1] + + def __repr__(self): + # pylint:disable=unsubscriptable-object + if len(self.args) == 3: # From the hub + import pprint + return ( + "%s\n" + "\tHub: %s\n" + "\tHandles:\n%s" + ) % ( + self.args[0], + self.args[1], + pprint.pformat(self.args[2]) + ) + return Exception.__repr__(self) + + def __str__(self): + return repr(self) + +class BlockingSwitchOutError(AssertionError): + """ + Raised when a gevent synchronous function is called from a + low-level event loop callback. + + This is usually a programming error. + """ + + +class InvalidSwitchError(AssertionError): + """ + Raised when the event loop returns control to a greenlet in an + unexpected way. + + This is usually a bug in gevent, greenlet, or the event loop. + """ + +class ConcurrentObjectUseError(AssertionError): + """ + Raised when an object is used (waited on) by two greenlets + independently, meaning the object was entered into a blocking + state by one greenlet and then another while still blocking in the + first one. + + This is usually a programming error. + + .. seealso:: `gevent.socket.wait` + """ + +class InvalidThreadUseError(RuntimeError): + """ + Raised when an object is used from a different thread than + the one it is bound to. + + Some objects, such as gevent sockets, semaphores, and threadpools, + are tightly bound to their hub and its loop. The hub and loop + are not thread safe, with a few exceptions. Attempting to use + such objects from a different thread is an error, and may cause + problems ranging from incorrect results to memory corruption + and a crashed process. + + In some cases, gevent catches this "accidentally", and the result is + a `LoopExit`. In some cases, gevent doesn't catch this at all. + + In other cases (typically when the consequences are suspected to + be more on the more severe end of the scale, and when the operation in + question is already relatively heavyweight), gevent explicitly checks + for this usage and will raise this exception when it is detected. + + .. versionadded:: 1.5a3 + """ + + +class HubDestroyed(GreenletExit): + """ + Internal exception, raised when we're trying to destroy the + hub and we want the loop to stop running callbacks now. + + This must not be subclassed; the type is tested by identity. + + Clients outside of gevent must not raise this exception. + + .. versionadded:: 20.12.0 + """ + + def __init__(self, destroy_loop): + GreenletExit.__init__(self, destroy_loop) + self.destroy_loop = destroy_loop diff --git a/venv/lib/python3.9/site-packages/gevent/fileobject.py b/venv/lib/python3.9/site-packages/gevent/fileobject.py new file mode 100644 index 0000000..68e438d --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/fileobject.py @@ -0,0 +1,85 @@ +""" +Wrappers to make file-like objects cooperative. + +.. class:: FileObject(fobj, mode='r', buffering=-1, closefd=True, encoding=None, errors=None, newline=None) + + The main entry point to the file-like gevent-compatible behaviour. It + will be defined to be the best available implementation. + + All the parameters are as for :func:`io.open`. + + :param fobj: Usually a file descriptor of a socket. Can also be + another object with a ``fileno()`` method, or an object that can + be passed to ``io.open()`` (e.g., a file system path). If the object + is not a socket, the results will vary based on the platform and the + type of object being opened. + + All supported versions of Python allow :class:`os.PathLike` objects. + + .. versionchanged:: 1.5 + Accept str and ``PathLike`` objects for *fobj* on all versions of Python. + .. versionchanged:: 1.5 + Add *encoding*, *errors* and *newline* arguments. + .. versionchanged:: 1.5 + Accept *closefd* and *buffering* instead of *close* and *bufsize* arguments. + The latter remain for backwards compatibility. + +There are two main implementations of ``FileObject``. On all systems, +there is :class:`FileObjectThread` which uses the built-in native +threadpool to avoid blocking the entire interpreter. On UNIX systems +(those that support the :mod:`fcntl` module), there is also +:class:`FileObjectPosix` which uses native non-blocking semantics. + +A third class, :class:`FileObjectBlock`, is simply a wrapper that +executes everything synchronously (and so is not gevent-compatible). +It is provided for testing and debugging purposes. + +All classes have the same signature; some may accept extra keyword arguments. + +Configuration +============= + +You may change the default value for ``FileObject`` using the +``GEVENT_FILE`` environment variable. Set it to ``posix``, ``thread``, +or ``block`` to choose from :class:`FileObjectPosix`, +:class:`FileObjectThread` and :class:`FileObjectBlock`, respectively. +You may also set it to the fully qualified class name of another +object that implements the file interface to use one of your own +objects. + +.. note:: + + The environment variable must be set at the time this module + is first imported. + +Classes +======= +""" +from __future__ import absolute_import + +from gevent._config import config + +__all__ = [ + 'FileObjectPosix', + 'FileObjectThread', + 'FileObjectBlock', + 'FileObject', +] + +try: + from fcntl import fcntl +except ImportError: + __all__.remove("FileObjectPosix") +else: + del fcntl + from gevent._fileobjectposix import FileObjectPosix + +from gevent._fileobjectcommon import FileObjectThread +from gevent._fileobjectcommon import FileObjectBlock + + +# None of the possible objects can live in this module because +# we would get an import cycle and the config couldn't be set from code. +# TODO: zope.hookable would be great for allowing this to be imported +# without requiring configuration but still being very fast. +FileObject = config.fileobject diff --git a/venv/lib/python3.9/site-packages/gevent/greenlet.py b/venv/lib/python3.9/site-packages/gevent/greenlet.py new file mode 100644 index 0000000..262c7f9 --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/greenlet.py @@ -0,0 +1,1204 @@ +# Copyright (c) 2009-2012 Denis Bilenko. See LICENSE for details. +# cython: auto_pickle=False,embedsignature=True,always_allow_keywords=False +# pylint:disable=too-many-lines +from __future__ import absolute_import, print_function, division + +from sys import _getframe as sys_getframe +from sys import exc_info as sys_exc_info +from weakref import ref as wref + +# XXX: How to get cython to let us rename this as RawGreenlet +# like we prefer? +from greenlet import greenlet +from greenlet import GreenletExit + +from gevent._compat import reraise +from gevent._compat import PYPY as _PYPY +from gevent._tblib import dump_traceback +from gevent._tblib import load_traceback + +from gevent.exceptions import InvalidSwitchError + +from gevent._hub_primitives import iwait_on_objects as iwait +from gevent._hub_primitives import wait_on_objects as wait + +from gevent.timeout import Timeout + +from gevent._config import config as GEVENT_CONFIG +from gevent._util import readproperty +from gevent._hub_local import get_hub_noargs as get_hub +from gevent import _waiter + + +__all__ = [ + 'Greenlet', + 'joinall', + 'killall', +] + + +# In Cython, we define these as 'cdef inline' functions. The +# compilation unit cannot have a direct assignment to them (import +# is assignment) without generating a 'lvalue is not valid target' +# error. +locals()['getcurrent'] = __import__('greenlet').getcurrent +locals()['greenlet_init'] = lambda: None +locals()['Waiter'] = _waiter.Waiter +# With Cython, this raises a TypeError if the parent is *not* +# the hub (SwitchOutGreenletWithLoop); in pure-Python, we will +# very likely get an AttributeError immediately after when we access `loop`; +# The TypeError message is more informative on Python 2. +# This must ONLY be called when we know that `s` is not None and is in fact a greenlet +# object (e.g., when called on `self`) +locals()['get_my_hub'] = lambda s: s.parent +# This must also ONLY be called when we know that S is not None and is in fact a greenlet +# object (including the result of getcurrent()) +locals()['get_generic_parent'] = lambda s: s.parent + +# Frame access +locals()['Gevent_PyFrame_GetCode'] = lambda frame: frame.f_code +locals()['Gevent_PyFrame_GetLineNumber'] = lambda frame: frame.f_lineno +locals()['Gevent_PyFrame_GetBack'] = lambda frame: frame.f_back + + +if _PYPY: + import _continuation # pylint:disable=import-error + _continulet = _continuation.continulet + + +class SpawnedLink(object): + """ + A wrapper around link that calls it in another greenlet. + + Can be called only from main loop. + """ + __slots__ = ['callback'] + + def __init__(self, callback): + if not callable(callback): + raise TypeError("Expected callable: %r" % (callback, )) + self.callback = callback + + def __call__(self, source): + g = greenlet(self.callback, get_hub()) + g.switch(source) + + def __hash__(self): + return hash(self.callback) + + def __eq__(self, other): + return self.callback == getattr(other, 'callback', other) + + def __str__(self): + return str(self.callback) + + def __repr__(self): + return repr(self.callback) + + def __getattr__(self, item): + assert item != 'callback' + return getattr(self.callback, item) + + +class SuccessSpawnedLink(SpawnedLink): + """A wrapper around link that calls it in another greenlet only if source succeed. + + Can be called only from main loop. + """ + __slots__ = [] + + def __call__(self, source): + if source.successful(): + return SpawnedLink.__call__(self, source) + + +class FailureSpawnedLink(SpawnedLink): + """A wrapper around link that calls it in another greenlet only if source failed. + + Can be called only from main loop. + """ + __slots__ = [] + + def __call__(self, source): + if not source.successful(): + return SpawnedLink.__call__(self, source) + +class _Frame(object): + + __slots__ = ('f_code', 'f_lineno', 'f_back') + + def __init__(self): + self.f_code = None + self.f_back = None + self.f_lineno = 0 + + @property + def f_globals(self): + return None + + +def _extract_stack(limit): + try: + frame = sys_getframe() + except ValueError: + # In certain embedded cases that directly use the Python C api + # to call Greenlet.spawn (e.g., uwsgi) this can raise + # `ValueError: call stack is not deep enough`. This is because + # the Cython stack frames for Greenlet.spawn -> + # Greenlet.__init__ -> _extract_stack are all on the C level, + # not the Python level. + # See https://github.com/gevent/gevent/issues/1212 + frame = None + + newest_Frame = None + newer_Frame = None + + while limit and frame is not None: + limit -= 1 + older_Frame = _Frame() + # Arguments are always passed to the constructor as Python objects, + # meaning we wind up boxing the f_lineno just to unbox it if we pass it. + # It's faster to simply assign once the object is created. + older_Frame.f_code = Gevent_PyFrame_GetCode(frame) # pylint:disable=undefined-variable + older_Frame.f_lineno = Gevent_PyFrame_GetLineNumber(frame) # pylint:disable=undefined-variable + if newer_Frame is not None: + newer_Frame.f_back = older_Frame + newer_Frame = older_Frame + if newest_Frame is None: + newest_Frame = newer_Frame + + frame = Gevent_PyFrame_GetBack(frame) # pylint:disable=undefined-variable + + return newest_Frame + + +_greenlet__init__ = greenlet.__init__ + +class Greenlet(greenlet): + """ + A light-weight cooperatively-scheduled execution unit. + """ + # pylint:disable=too-many-public-methods,too-many-instance-attributes + + spawning_stack_limit = 10 + + # pylint:disable=keyword-arg-before-vararg,super-init-not-called + def __init__(self, run=None, *args, **kwargs): + """ + :param args: The arguments passed to the ``run`` function. + :param kwargs: The keyword arguments passed to the ``run`` function. + :keyword callable run: The callable object to run. If not given, this object's + `_run` method will be invoked (typically defined by subclasses). + + .. versionchanged:: 1.1b1 + The ``run`` argument to the constructor is now verified to be a callable + object. Previously, passing a non-callable object would fail after the greenlet + was spawned. + + .. versionchanged:: 1.3b1 + The ``GEVENT_TRACK_GREENLET_TREE`` configuration value may be set to + a false value to disable ``spawn_tree_locals``, ``spawning_greenlet``, + and ``spawning_stack``. The first two will be None in that case, and the + latter will be empty. + + .. versionchanged:: 1.5 + Greenlet objects are now more careful to verify that their ``parent`` is really + a gevent hub, raising a ``TypeError`` earlier instead of an ``AttributeError`` later. + + .. versionchanged:: 20.12.1 + Greenlet objects now function as context managers. Exiting the ``with`` suite + ensures that the greenlet has completed by :meth:`joining ` + the greenlet (blocking, with + no timeout). If the body of the suite raises an exception, the greenlet is + :meth:`killed ` with the default arguments and not joined in that case. + """ + # The attributes are documented in the .rst file + + # greenlet.greenlet(run=None, parent=None) + # Calling it with both positional arguments instead of a keyword + # argument (parent=get_hub()) speeds up creation of this object ~30%: + # python -m timeit -s 'import gevent' 'gevent.Greenlet()' + # Python 3.5: 2.70usec with keywords vs 1.94usec with positional + # Python 3.4: 2.32usec with keywords vs 1.74usec with positional + # Python 3.3: 2.55usec with keywords vs 1.92usec with positional + # Python 2.7: 1.73usec with keywords vs 1.40usec with positional + + # Timings taken Feb 21 2018 prior to integration of #755 + # python -m perf timeit -s 'import gevent' 'gevent.Greenlet()' + # 3.6.4 : Mean +- std dev: 1.08 us +- 0.05 us + # 2.7.14 : Mean +- std dev: 1.44 us +- 0.06 us + # PyPy2 5.10.0: Mean +- std dev: 2.14 ns +- 0.08 ns + + # After the integration of spawning_stack, spawning_greenlet, + # and spawn_tree_locals on that same date: + # 3.6.4 : Mean +- std dev: 8.92 us +- 0.36 us -> 8.2x + # 2.7.14 : Mean +- std dev: 14.8 us +- 0.5 us -> 10.2x + # PyPy2 5.10.0: Mean +- std dev: 3.24 us +- 0.17 us -> 1.5x + + # Compiling with Cython gets us to these numbers: + # 3.6.4 : Mean +- std dev: 3.63 us +- 0.14 us + # 2.7.14 : Mean +- std dev: 3.37 us +- 0.20 us + # PyPy2 5.10.0 : Mean +- std dev: 4.44 us +- 0.28 us + + # Switching to reified frames and some more tuning gets us here: + # 3.7.2 : Mean +- std dev: 2.53 us +- 0.15 us + # 2.7.16 : Mean +- std dev: 2.35 us +- 0.12 us + # PyPy2 7.1 : Mean +- std dev: 11.6 us +- 0.4 us + + # Compared to the released 1.4 (tested at the same time): + # 3.7.2 : Mean +- std dev: 3.21 us +- 0.32 us + # 2.7.16 : Mean +- std dev: 3.11 us +- 0.19 us + # PyPy2 7.1 : Mean +- std dev: 12.3 us +- 0.8 us + + _greenlet__init__(self, None, get_hub()) + + if run is not None: + self._run = run + + # If they didn't pass a callable at all, then they must + # already have one. Note that subclassing to override the run() method + # itself has never been documented or supported. + if not callable(self._run): + raise TypeError("The run argument or self._run must be callable") + + self.args = args + self.kwargs = kwargs + self.value = None + + #: An event, such as a timer or a callback that fires. It is established in + #: start() and start_later() as those two objects, respectively. + #: Once this becomes non-None, the Greenlet cannot be started again. Conversely, + #: kill() and throw() check for non-None to determine if this object has ever been + #: scheduled for starting. A placeholder _cancelled_start_event is assigned by them to prevent + #: the greenlet from being started in the future, if necessary. + #: In the usual case, this transitions as follows: None -> event -> _start_completed_event. + #: A value of None means we've never been started. + self._start_event = None + + self._notifier = None + self._formatted_info = None + self._links = [] + self._ident = None + + # Initial state: None. + # Completed successfully: (None, None, None) + # Failed with exception: (t, v, dump_traceback(tb))) + self._exc_info = None + + if GEVENT_CONFIG.track_greenlet_tree: + spawner = getcurrent() # pylint:disable=undefined-variable + self.spawning_greenlet = wref(spawner) + try: + self.spawn_tree_locals = spawner.spawn_tree_locals + except AttributeError: + self.spawn_tree_locals = {} + if get_generic_parent(spawner) is not None: # pylint:disable=undefined-variable + # The main greenlet has no parent. + # Its children get separate locals. + spawner.spawn_tree_locals = self.spawn_tree_locals + + self.spawning_stack = _extract_stack(self.spawning_stack_limit) + # Don't copy the spawning greenlet's + # '_spawning_stack_frames' into ours. That's somewhat + # confusing, and, if we're not careful, a deep spawn tree + # can lead to excessive memory usage (an infinite spawning + # tree could lead to unbounded memory usage without care + # --- see https://github.com/gevent/gevent/issues/1371) + # The _spawning_stack_frames may be cleared out later if we access spawning_stack + else: + # None is the default for all of these in Cython, but we + # need to declare them for pure-Python mode. + self.spawning_greenlet = None + self.spawn_tree_locals = None + self.spawning_stack = None + + def _get_minimal_ident(self): + # Helper function for cython, to allow typing `reg` and making a + # C call to get_ident. + + # If we're being accessed from a hub different than the one running + # us, aka get_hub() is not self.parent, then calling hub.ident_registry.get_ident() + # may be quietly broken: it's not thread safe. + # If our parent is no longer the hub for whatever reason, this will raise a + # AttributeError or TypeError. + hub = get_my_hub(self) # pylint:disable=undefined-variable + + reg = hub.ident_registry + return reg.get_ident(self) + + @property + def minimal_ident(self): + """ + A small, unique non-negative integer that identifies this object. + + This is similar to :attr:`threading.Thread.ident` (and `id`) + in that as long as this object is alive, no other greenlet *in + this hub* will have the same id, but it makes a stronger + guarantee that the assigned values will be small and + sequential. Sometime after this object has died, the value + will be available for reuse. + + To get ids that are unique across all hubs, combine this with + the hub's (``self.parent``) ``minimal_ident``. + + Accessing this property from threads other than the thread running + this greenlet is not defined. + + .. versionadded:: 1.3a2 + + """ + # Not @Lazy, implemented manually because _ident is in the structure + # of the greenlet for fast access + if self._ident is None: + self._ident = self._get_minimal_ident() + return self._ident + + @readproperty + def name(self): + """ + The greenlet name. By default, a unique name is constructed using + the :attr:`minimal_ident`. You can assign a string to this + value to change it. It is shown in the `repr` of this object if it + has been assigned to or if the `minimal_ident` has already been generated. + + .. versionadded:: 1.3a2 + .. versionchanged:: 1.4 + Stop showing generated names in the `repr` when the ``minimal_ident`` + hasn't been requested. This reduces overhead and may be less confusing, + since ``minimal_ident`` can get reused. + """ + return 'Greenlet-%d' % (self.minimal_ident,) + + def _raise_exception(self): + reraise(*self.exc_info) + + @property + def loop(self): + # needed by killall + hub = get_my_hub(self) # pylint:disable=undefined-variable + return hub.loop + + def __bool__(self): + return self._start_event is not None and self._exc_info is None + + ### Lifecycle + + if _PYPY: + # oops - pypy's .dead relies on __nonzero__ which we overriden above + @property + def dead(self): + "Boolean indicating that the greenlet is dead and will not run again." + # pylint:disable=no-member + if self._greenlet__main: + return False + if getcurrent() is self: # pylint:disable=undefined-variable + return False + if self.__start_cancelled_by_kill() or self.__started_but_aborted(): + return True + + return self._greenlet__started and not _continulet.is_pending(self) + else: + @property + def dead(self): + """ + Boolean indicating that the greenlet is dead and will not run again. + + This is true if: + + 1. We were never started, but were :meth:`killed ` + immediately after creation (not possible with :meth:`spawn`); OR + 2. We were started, but were killed before running; OR + 3. We have run and terminated (by raising an exception out of the + started function or by reaching the end of the started function). + """ + # The currently running greenlet cannot be dead. This guard is + # needed because __started_but_aborted() can return a false True + # during the bootstrap phase: the event loop sets the start + # callback's pending to False before invoking the callback (which + # does the C-level switch), but run() only sets _start_event = + # _start_completed_event after the switch completes. During that + # window __started_but_aborted() incorrectly concludes the + # greenlet was aborted. + if getcurrent() is self: # pylint:disable=undefined-variable + return False + return ( + self.__start_cancelled_by_kill() + or self.__started_but_aborted() + or greenlet.dead.__get__(self) + ) + + def __never_started_or_killed(self): + return self._start_event is None + + def __start_pending(self): + return ( + self._start_event is not None + and (self._start_event.pending or getattr(self._start_event, 'active', False)) + ) + + def __start_cancelled_by_kill(self): + return self._start_event is _cancelled_start_event + + def __start_completed(self): + return self._start_event is _start_completed_event + + def __started_but_aborted(self): + return ( + not self.__never_started_or_killed() # we have been started or killed + and not self.__start_cancelled_by_kill() # we weren't killed, so we must have been started + and not self.__start_completed() # the start never completed + and not self.__start_pending() # and we're not pending, so we must have been aborted + ) + + def __cancel_start(self): + if self._start_event is None: + # prevent self from ever being started in the future + self._start_event = _cancelled_start_event + # cancel any pending start event + # NOTE: If this was a real pending start event, this will leave a + # "dangling" callback/timer object in the hub.loop.callbacks list; + # depending on where we are in the event loop, it may even be in a local + # variable copy of that list (in _run_callbacks). This isn't a problem, + # except for the leak-tests. + self._start_event.stop() + self._start_event.close() + + def __handle_death_before_start(self, args): + # args is (t, v, tb) or simply t or v. + # The last two cases are transformed into (t, v, None); + # if the single argument is an exception type, a new instance + # is created; if the single argument is not an exception type and also + # not an exception, it is wrapped in a BaseException (this is not + # documented, but should result in better behaviour in the event of a + # user error---instead of silently printing something to stderr, we still + # kill the greenlet). + if self._exc_info is None and self.dead: + # the greenlet was never switched to before and it will + # never be; _report_error was not called, the result was + # not set, and the links weren't notified. Let's do it + # here. + # + # checking that self.dead is true is essential, because + # throw() does not necessarily kill the greenlet (if the + # exception raised by throw() is caught somewhere inside + # the greenlet). + if len(args) == 1: + arg = args[0] + if isinstance(arg, type) and issubclass(arg, BaseException): + args = (arg, arg(), None) + else: + args = (type(arg), arg, None) + elif not args: + args = (GreenletExit, GreenletExit(), None) + if not issubclass(args[0], BaseException): + # Random non-type, non-exception arguments. + args = (BaseException, BaseException(args), None) + assert issubclass(args[0], BaseException) + self.__report_error(args) + + @property + def started(self): + # DEPRECATED + return bool(self) + + def ready(self): + """ + Return a true value if and only if the greenlet has finished + execution. + + .. versionchanged:: 1.1 + This function is only guaranteed to return true or false *values*, not + necessarily the literal constants ``True`` or ``False``. + """ + return self.dead or self._exc_info is not None + + def successful(self): + """ + Return a true value if and only if the greenlet has finished execution + successfully, that is, without raising an error. + + .. tip:: A greenlet that has been killed with the default + :class:`GreenletExit` exception is considered successful. + That is, ``GreenletExit`` is not considered an error. + + .. note:: This function is only guaranteed to return true or false *values*, + not necessarily the literal constants ``True`` or ``False``. + """ + return self._exc_info is not None and self._exc_info[1] is None + + def __repr__(self): + classname = self.__class__.__name__ + # If no name has been assigned, don't generate one, including a minimal_ident, + # if not necessary. This reduces the use of weak references and associated + # overhead. + if 'name' not in self.__dict__ and self._ident is None: + name = ' ' + else: + name = ' "%s" ' % (self.name,) + result = '<%s%sat %s' % (classname, name, hex(id(self))) + formatted = self._formatinfo() + if formatted: + result += ': ' + formatted + return result + '>' + + + def _formatinfo(self): + info = self._formatted_info + if info is not None: + return info + + # Are we running an arbitrary function provided to the constructor, + # or did a subclass override _run? + func = self._run + im_self = getattr(func, '__self__', None) + if im_self is self: + funcname = '_run' + elif im_self is not None: + funcname = repr(func) + else: + funcname = getattr(func, '__name__', '') or repr(func) + + result = funcname + args = [] + if self.args: + args = [repr(x)[:50] for x in self.args] + if self.kwargs: + args.extend(['%s=%s' % (key, repr(value)[:50]) for (key, value) in self.kwargs.items()]) + if args: + result += '(' + ', '.join(args) + ')' + # it is important to save the result here, because once the greenlet exits '_run' attribute will be removed + self._formatted_info = result + return result + + @property + def exception(self): + """ + Holds the exception instance raised by the function if the + greenlet has finished with an error. Otherwise ``None``. + """ + return self._exc_info[1] if self._exc_info is not None else None + + @property + def exc_info(self): + """ + Holds the exc_info three-tuple raised by the function if the + greenlet finished with an error. Otherwise a false value. + + .. note:: This is a provisional API and may change. + + .. versionadded:: 1.1 + """ + ei = self._exc_info + if ei is not None and ei[0] is not None: + return ( + ei[0], + ei[1], + # The pickled traceback may be None if we couldn't pickle it. + load_traceback(ei[2]) if ei[2] else None + ) + + def throw(self, *args): + """Immediately switch into the greenlet and raise an exception in it. + + Should only be called from the HUB, otherwise the current greenlet is left unscheduled forever. + To raise an exception in a safe manner from any greenlet, use :meth:`kill`. + + If a greenlet was started but never switched to yet, then also + a) cancel the event that will start it + b) fire the notifications as if an exception was raised in a greenlet + """ + self.__cancel_start() + + try: + if not self.dead: + # Prevent switching into a greenlet *at all* if we had never + # started it. Usually this is the same thing that happens by throwing, + # but if this is done from the hub with nothing else running, prevents a + # LoopExit. + greenlet.throw(self, *args) + finally: + self.__handle_death_before_start(args) + + def start(self): + """Schedule the greenlet to run in this loop iteration""" + if self._start_event is None: + _call_spawn_callbacks(self) + hub = get_my_hub(self) # pylint:disable=undefined-variable + self._start_event = hub.loop.run_callback(self.switch) + + def start_later(self, seconds): + """ + start_later(seconds) -> None + + Schedule the greenlet to run in the future loop iteration + *seconds* later + """ + if self._start_event is None: + _call_spawn_callbacks(self) + hub = get_my_hub(self) # pylint:disable=undefined-variable + self._start_event = hub.loop.timer(seconds) + self._start_event.start(self.switch) + + @staticmethod + def add_spawn_callback(callback): + """ + add_spawn_callback(callback) -> None + + Set up a *callback* to be invoked when :class:`Greenlet` objects + are started. + + The invocation order of spawn callbacks is unspecified. Adding the + same callback more than one time will not cause it to be called more + than once. + + .. versionadded:: 1.4.0 + """ + global _spawn_callbacks + if _spawn_callbacks is None: # pylint:disable=used-before-assignment + _spawn_callbacks = set() + _spawn_callbacks.add(callback) + + @staticmethod + def remove_spawn_callback(callback): + """ + remove_spawn_callback(callback) -> None + + Remove *callback* function added with :meth:`Greenlet.add_spawn_callback`. + This function will not fail if *callback* has been already removed or + if *callback* was never added. + + .. versionadded:: 1.4.0 + """ + global _spawn_callbacks + if _spawn_callbacks is not None: + _spawn_callbacks.discard(callback) + if not _spawn_callbacks: + _spawn_callbacks = None + + @classmethod + def spawn(cls, *args, **kwargs): + """ + spawn(function, *args, **kwargs) -> Greenlet + + Create a new :class:`Greenlet` object and schedule it to run ``function(*args, **kwargs)``. + This can be used as ``gevent.spawn`` or ``Greenlet.spawn``. + + The arguments are passed to :meth:`Greenlet.__init__`. + + .. versionchanged:: 1.1b1 + If a *function* is given that is not callable, immediately raise a :exc:`TypeError` + instead of spawning a greenlet that will raise an uncaught TypeError. + """ + g = cls(*args, **kwargs) + g.start() + return g + + @classmethod + def spawn_later(cls, seconds, *args, **kwargs): + """ + spawn_later(seconds, function, *args, **kwargs) -> Greenlet + + Create and return a new `Greenlet` object scheduled to run ``function(*args, **kwargs)`` + in a future loop iteration *seconds* later. This can be used as ``Greenlet.spawn_later`` + or ``gevent.spawn_later``. + + The arguments are passed to :meth:`Greenlet.__init__`. + + .. versionchanged:: 1.1b1 + If an argument that's meant to be a function (the first argument in *args*, or the ``run`` keyword ) + is given to this classmethod (and not a classmethod of a subclass), + it is verified to be callable. Previously, the spawned greenlet would have failed + when it started running. + """ + if cls is Greenlet and not args and 'run' not in kwargs: + raise TypeError("") + g = cls(*args, **kwargs) + g.start_later(seconds) + return g + + def _maybe_kill_before_start(self, exception): + # Helper for Greenlet.kill(), and also for killall() + self.__cancel_start() + self.__free() + dead = self.dead + if dead: + if isinstance(exception, tuple) and len(exception) == 3: + args = exception + else: + args = (exception,) + self.__handle_death_before_start(args) + return dead + + def kill(self, exception=GreenletExit, block=True, timeout=None): + """ + Raise the ``exception`` in the greenlet. + + If ``block`` is ``True`` (the default), wait until the greenlet + dies or the optional timeout expires; this may require switching + greenlets. + If block is ``False``, the current greenlet is not unscheduled. + + This function always returns ``None`` and never raises an error. It + may be called multpile times on the same greenlet object, and may be + called on an unstarted or dead greenlet. + + .. note:: + + Depending on what this greenlet is executing and the state + of the event loop, the exception may or may not be raised + immediately when this greenlet resumes execution. It may + be raised on a subsequent green call, or, if this greenlet + exits before making such a call, it may not be raised at + all. As of 1.1, an example where the exception is raised + later is if this greenlet had called :func:`sleep(0) + `; an example where the exception is raised + immediately is if this greenlet had called + :func:`sleep(0.1) `. + + .. caution:: + + Use care when killing greenlets. If the code executing is not + exception safe (e.g., makes proper use of ``finally``) then an + unexpected exception could result in corrupted state. Using + a :meth:`link` or :meth:`rawlink` (cheaper) may be a safer way to + clean up resources. + + See also :func:`gevent.kill` and :func:`gevent.killall`. + + :keyword type exception: The type of exception to raise in the greenlet. The default + is :class:`GreenletExit`, which indicates a :meth:`successful` completion + of the greenlet. + + .. versionchanged:: 0.13.0 + *block* is now ``True`` by default. + .. versionchanged:: 1.1a2 + If this greenlet had never been switched to, killing it will + prevent it from *ever* being switched to. Links (:meth:`rawlink`) + will still be executed, though. + .. versionchanged:: 20.12.1 + If this greenlet is :meth:`ready`, immediately return instead of + requiring a trip around the event loop. + """ + if not self._maybe_kill_before_start(exception): + if self.ready(): + return + + waiter = Waiter() if block else None # pylint:disable=undefined-variable + hub = get_my_hub(self) # pylint:disable=undefined-variable + hub.loop.run_callback(_kill, self, exception, waiter) + if waiter is not None: + waiter.get() + self.join(timeout) + + def get(self, block=True, timeout=None): + """ + get(block=True, timeout=None) -> object + + Return the result the greenlet has returned or re-raise the + exception it has raised. + + If block is ``False``, raise :class:`gevent.Timeout` if the + greenlet is still alive. If block is ``True``, unschedule the + current greenlet until the result is available or the timeout + expires. In the latter case, :class:`gevent.Timeout` is + raised. + """ + if self.ready(): + if self.successful(): + return self.value + self._raise_exception() + if not block: + raise Timeout() + + switch = getcurrent().switch # pylint:disable=undefined-variable + self.rawlink(switch) + try: + t = Timeout._start_new_or_dummy(timeout) + try: + result = get_my_hub(self).switch() # pylint:disable=undefined-variable + if result is not self: + raise InvalidSwitchError('Invalid switch into Greenlet.get(): %r' % (result, )) + finally: + t.cancel() + except: + # unlinking in 'except' instead of finally is an optimization: + # if switch occurred normally then link was already removed in _notify_links + # and there's no need to touch the links set. + # Note, however, that if "Invalid switch" assert was removed and invalid switch + # did happen, the link would remain, causing another invalid switch later in this greenlet. + self.unlink(switch) + raise + + if self.ready(): + if self.successful(): + return self.value + self._raise_exception() + + def join(self, timeout=None): + """ + join(timeout=None) -> None + + Wait until the greenlet finishes or *timeout* expires. Return + ``None`` regardless. + """ + if self.ready(): + return + + switch = getcurrent().switch # pylint:disable=undefined-variable + self.rawlink(switch) + try: + t = Timeout._start_new_or_dummy(timeout) + try: + result = get_my_hub(self).switch() # pylint:disable=undefined-variable + if result is not self: + raise InvalidSwitchError('Invalid switch into Greenlet.join(): %r' % (result, )) + finally: + t.cancel() + except Timeout as ex: + self.unlink(switch) + if ex is not t: + raise + except: + self.unlink(switch) + raise + + def __enter__(self): + return self + + def __exit__(self, t, v, tb): + if t is None: + try: + self.join() + finally: + self.kill() + else: + self.kill((t, v, tb)) + + def __report_result(self, result): + self._exc_info = (None, None, None) + self.value = result + if self._links and not self._notifier: + hub = get_my_hub(self) # pylint:disable=undefined-variable + self._notifier = hub.loop.run_callback(self._notify_links) + + def __report_error(self, exc_info): + if isinstance(exc_info[1], GreenletExit): + self.__report_result(exc_info[1]) + return + + # Depending on the error, we may not be able to pickle it. + # In particular, RecursionError can be a problem. + try: + tb = dump_traceback(exc_info[2]) + except: # pylint:disable=bare-except + tb = None + self._exc_info = exc_info[0], exc_info[1], tb + + hub = get_my_hub(self) # pylint:disable=undefined-variable + if self._links and not self._notifier: + self._notifier = hub.loop.run_callback(self._notify_links) + + try: + hub.handle_error(self, *exc_info) + finally: + del exc_info + + def run(self): + try: + self.__cancel_start() + self._start_event = _start_completed_event + + try: + result = self._run(*self.args, **self.kwargs) + except: # pylint:disable=bare-except + self.__report_error(sys_exc_info()) + else: + self.__report_result(result) + finally: + self.__free() + + def __free(self): + try: + # It seems that Cython 0.29.13 sometimes miscompiles + # self.__dict__.pop('_run', None) ? When we moved this out of the + # inline finally: block in run(), we started getting strange + # exceptions from places that subclassed Greenlet. + del self._run + except AttributeError: + pass + self.args = () + self.kwargs.clear() + + def _run(self): + """ + Subclasses may override this method to take any number of + arguments and keyword arguments. + + .. versionadded:: 1.1a3 + Previously, if no callable object was + passed to the constructor, the spawned greenlet would later + fail with an AttributeError. + """ + # We usually override this in __init__ + # pylint: disable=method-hidden + return + + def has_links(self): + return len(self._links) + + def rawlink(self, callback): + """ + Register a callable to be executed when the greenlet finishes + execution. + + The *callback* will be called with this instance as an + argument. + + The *callback* will be called even if linked after the greenlet + is already ready(). + + .. caution:: + The *callback* will be called in the hub and + **MUST NOT** raise an exception. + """ + if not callable(callback): + raise TypeError('Expected callable: %r' % (callback, )) + self._links.append(callback) # pylint:disable=no-member + if self.ready() and self._links and not self._notifier: + hub = get_my_hub(self) # pylint:disable=undefined-variable + self._notifier = hub.loop.run_callback(self._notify_links) + + def link(self, callback, SpawnedLink=SpawnedLink): + """ + Link greenlet's completion to a callable. + + The *callback* will be called with this instance as an + argument once this greenlet is dead. A callable is called in + its own :class:`greenlet.greenlet` (*not* a + :class:`Greenlet`). + + The *callback* will be called even if linked after the greenlet + is already ready(). + """ + # XXX: Is the redefinition of SpawnedLink supposed to just be an + # optimization, or do people use it? It's not documented + # pylint:disable=redefined-outer-name + self.rawlink(SpawnedLink(callback)) + + def unlink(self, callback): + """Remove the callback set by :meth:`link` or :meth:`rawlink`""" + try: + self._links.remove(callback) # pylint:disable=no-member + except ValueError: + pass + + def unlink_all(self): + """ + Remove all the callbacks. + + .. versionadded:: 1.3a2 + """ + del self._links[:] + + def link_value(self, callback, SpawnedLink=SuccessSpawnedLink): + """ + Like :meth:`link` but *callback* is only notified when the greenlet + has completed successfully. + """ + # pylint:disable=redefined-outer-name + self.link(callback, SpawnedLink=SpawnedLink) + + def link_exception(self, callback, SpawnedLink=FailureSpawnedLink): + """ + Like :meth:`link` but *callback* is only notified when the + greenlet dies because of an unhandled exception. + """ + # pylint:disable=redefined-outer-name + self.link(callback, SpawnedLink=SpawnedLink) + + def _notify_links(self): + while self._links: + # Early links are allowed to remove later links + # before we get to them, and they're also allowed to + # add new links, so we have to be careful about iterating. + + # We don't expect this list to be very large, so the time spent + # manipulating it should be small. a deque is probably not justified. + # Cython has optimizations to transform this into a memmove anyway. + link = self._links.pop(0) + try: + link(self) + except: # pylint:disable=bare-except, undefined-variable + get_my_hub(self).handle_error((link, self), *sys_exc_info()) + + +class _dummy_event(object): + __slots__ = ('pending', 'active') + + def __init__(self): + self.pending = self.active = False + + def stop(self): + pass + + def start(self, cb): # pylint:disable=unused-argument + raise AssertionError("Cannot start the dummy event") + + def close(self): + pass + +_cancelled_start_event = _dummy_event() +_start_completed_event = _dummy_event() + + +# This is *only* called as a callback from the hub via Greenlet.kill(), +# and its first argument is the Greenlet. So we can be sure about the types. +def _kill(glet, exception, waiter): + try: + if isinstance(exception, tuple) and len(exception) == 3: + glet.throw(*exception) + else: + glet.throw(exception) + except: # pylint:disable=bare-except, undefined-variable + # XXX do we need this here? + get_my_hub(glet).handle_error(glet, *sys_exc_info()) + if waiter is not None: + waiter.switch(None) + + +def joinall(greenlets, timeout=None, raise_error=False, count=None): + """ + Wait for the ``greenlets`` to finish. + + :param greenlets: A sequence (supporting :func:`len`) of greenlets to wait for. + :keyword float timeout: If given, the maximum number of seconds to wait. + :keyword bool raise_error: If True, immediately raise the first exception + encountered in any greenlet. If False (default), exceptions are + stored in the greenlet and not raised. + :keyword int count: If not `None`, then a number specifying the maximum number + of greenlets to wait for. If ``None`` (the default), all greenlets + are waited for. + :return: A sequence of the greenlets that finished before the timeout (if any) + expired. + """ + if not raise_error: + return wait(greenlets, timeout=timeout, count=count) + + done = [] + for obj in iwait(greenlets, timeout=timeout, count=count): + if getattr(obj, 'exception', None) is not None: + if hasattr(obj, '_raise_exception'): + obj._raise_exception() + else: + raise obj.exception + done.append(obj) + return done + + +def _killall3(greenlets, exception, waiter): + diehards = [] + for g in greenlets: + if not g.dead: + try: + g.throw(exception) + except: # pylint:disable=bare-except, undefined-variable + get_my_hub(g).handle_error(g, *sys_exc_info()) + if not g.dead: + diehards.append(g) + waiter.switch(diehards) + + +def _killall(greenlets, exception): + for g in greenlets: + if not g.dead: + try: + g.throw(exception) + except: # pylint:disable=bare-except, undefined-variable + get_my_hub(g).handle_error(g, *sys_exc_info()) + + +def _call_spawn_callbacks(gr): + if _spawn_callbacks is not None: + for cb in _spawn_callbacks: + cb(gr) + + +_spawn_callbacks = None + + +def killall(greenlets, exception=GreenletExit, block=True, timeout=None): + """ + Forceably terminate all the *greenlets* by causing them to raise *exception*. + + .. caution:: Use care when killing greenlets. If they are not prepared for exceptions, + this could result in corrupted state. + + :param greenlets: A **bounded** iterable of the non-None greenlets to terminate. + *All* the items in this iterable must be greenlets that belong to the same hub, + which should be the hub for this current thread. If this is a generator or iterator + that switches greenlets, the results are undefined. + :keyword exception: The type of exception to raise in the greenlets. By default this is + :class:`GreenletExit`. + :keyword bool block: If True (the default) then this function only returns when all the + greenlets are dead; the current greenlet is unscheduled during that process. + If greenlets ignore the initial exception raised in them, + then they will be joined (with :func:`gevent.joinall`) and allowed to die naturally. + If False, this function returns immediately and greenlets will raise + the exception asynchronously. + :keyword float timeout: A time in seconds to wait for greenlets to die. If given, it is + only honored when ``block`` is True. + :raise Timeout: If blocking and a timeout is given that elapses before + all the greenlets are dead. + + .. versionchanged:: 1.1a2 + *greenlets* can be any iterable of greenlets, like an iterator or a set. + Previously it had to be a list or tuple. + .. versionchanged:: 1.5a3 + Any :class:`Greenlet` in the *greenlets* list that hadn't been switched to before + calling this method will never be switched to. This makes this function + behave like :meth:`Greenlet.kill`. This does not apply to raw greenlets. + .. versionchanged:: 1.5a3 + Now accepts raw greenlets created by :func:`gevent.spawn_raw`. + """ + + need_killed = [] + for glet in greenlets: + # Quick pass through to prevent any greenlet from + # actually being switched to if it hasn't already. + # (Previously we called ``list(greenlets)`` so we're still + # linear.) + # + # We don't use glet.kill() here because we don't want to schedule + # any callbacks in the loop; we're about to handle that more directly. + try: + cancel = glet._maybe_kill_before_start + except AttributeError: + need_killed.append(glet) + else: + if not cancel(exception): + need_killed.append(glet) + + if not need_killed: + return + + loop = glet.loop # pylint:disable=undefined-loop-variable + if block: + waiter = Waiter() # pylint:disable=undefined-variable + loop.run_callback(_killall3, need_killed, exception, waiter) + t = Timeout._start_new_or_dummy(timeout) + try: + alive = waiter.get() + if alive: + joinall(alive, raise_error=False) + finally: + t.cancel() + else: + loop.run_callback(_killall, need_killed, exception) + +def _init(): + greenlet_init() # pylint:disable=undefined-variable + +_init() + +from gevent._util import import_c_accel +import_c_accel(globals(), 'gevent._greenlet') diff --git a/venv/lib/python3.9/site-packages/gevent/hub.py b/venv/lib/python3.9/site-packages/gevent/hub.py new file mode 100644 index 0000000..6a6726b --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/hub.py @@ -0,0 +1,909 @@ +# Copyright (c) 2009-2015 Denis Bilenko. See LICENSE for details. +""" +Event-loop hub. +""" +from __future__ import absolute_import, print_function +# XXX: FIXME: Refactor to make this smaller +# pylint:disable=too-many-lines +from functools import partial as _functools_partial + +import sys +import traceback + + +from greenlet import greenlet as RawGreenlet +from greenlet import getcurrent +from greenlet import GreenletExit +from greenlet import error as GreenletError + +__all__ = [ + 'getcurrent', + 'GreenletExit', + 'spawn_raw', + 'sleep', + 'kill', + 'signal', + 'reinit', + 'get_hub', + 'Hub', + 'Waiter', +] + +from gevent._config import config as GEVENT_CONFIG +from gevent._compat import thread_mod_name +from gevent._compat import reraise +from gevent._util import readproperty +from gevent._util import Lazy +from gevent._util import gmctime +from gevent._ident import IdentRegistry + +from gevent._hub_local import get_hub +from gevent._hub_local import get_loop +from gevent._hub_local import set_hub +from gevent._hub_local import set_loop +from gevent._hub_local import get_hub_if_exists as _get_hub +from gevent._hub_local import get_hub_noargs as _get_hub_noargs +from gevent._hub_local import set_default_hub_class + +from gevent._greenlet_primitives import TrackedRawGreenlet +from gevent._hub_primitives import WaitOperationsGreenlet + +# Export +from gevent import _hub_primitives +wait = _hub_primitives.wait_on_objects +iwait = _hub_primitives.iwait_on_objects + + +from gevent.exceptions import LoopExit +from gevent.exceptions import HubDestroyed + +from gevent._waiter import Waiter + + +# Need the real get_ident. We're imported early enough (by gevent/__init__.py) +# that we can be sure nothing is monkey patched yet. +get_thread_ident = __import__(thread_mod_name).get_ident +MAIN_THREAD_IDENT = get_thread_ident() # XXX: Assuming import is done on the main thread. + + + +def spawn_raw(function, *args, **kwargs): + """ + Create a new :class:`greenlet.greenlet` object and schedule it to + run ``function(*args, **kwargs)``. + + This returns a raw :class:`~greenlet.greenlet` which does not have all the useful + methods that :class:`gevent.Greenlet` has. Typically, applications + should prefer :func:`~gevent.spawn`, but this method may + occasionally be useful as an optimization if there are many + greenlets involved. + + .. versionchanged:: 1.1a3 + Verify that ``function`` is callable, raising a TypeError if not. Previously, + the spawned greenlet would have failed the first time it was switched to. + + .. versionchanged:: 1.1b1 + If *function* is not callable, immediately raise a :exc:`TypeError` + instead of spawning a greenlet that will raise an uncaught TypeError. + + .. versionchanged:: 1.1rc2 + Accept keyword arguments for ``function`` as previously (incorrectly) + documented. Note that this may incur an additional expense. + + .. versionchanged:: 1.3a2 + Populate the ``spawning_greenlet`` and ``spawn_tree_locals`` + attributes of the returned greenlet. + + .. versionchanged:: 1.3b1 + *Only* populate ``spawning_greenlet`` and ``spawn_tree_locals`` + if ``GEVENT_TRACK_GREENLET_TREE`` is enabled (the default). If not enabled, + those attributes will not be set. + + .. versionchanged:: 1.5a3 + The returned greenlet always has a *loop* attribute matching the + current hub's loop. This helps it work better with more gevent APIs. + """ + if not callable(function): + raise TypeError("function must be callable") + + # The hub is always the parent. + hub = _get_hub_noargs() + loop = hub.loop + + factory = TrackedRawGreenlet if GEVENT_CONFIG.track_greenlet_tree else RawGreenlet + + # The callback class object that we use to run this doesn't + # accept kwargs (and those objects are heavily used, as well as being + # implemented twice in core.ppyx and corecffi.py) so do it with a partial + if kwargs: + function = _functools_partial(function, *args, **kwargs) + g = factory(function, hub) + loop.run_callback(g.switch) + else: + g = factory(function, hub) + loop.run_callback(g.switch, *args) + g.loop = hub.loop + return g + + +def sleep(seconds=0, ref=True): + """ + Put the current greenlet to sleep for at least *seconds*. + + *seconds* may be specified as an integer, or a float if fractional + seconds are desired. + + .. tip:: In the current implementation, a value of 0 (the default) + means to yield execution to any other runnable greenlets, but + this greenlet may be scheduled again before the event loop + cycles (in an extreme case, a greenlet that repeatedly sleeps + with 0 can prevent greenlets that are ready to do I/O from + being scheduled for some (small) period of time); a value greater than + 0, on the other hand, will delay running this greenlet until + the next iteration of the loop. + + If *ref* is False, the greenlet running ``sleep()`` will not prevent :func:`gevent.wait` + from exiting. + + .. versionchanged:: 1.3a1 + Sleeping with a value of 0 will now be bounded to approximately block the + loop for no longer than :func:`gevent.getswitchinterval`. + + .. seealso:: :func:`idle` + """ + hub = _get_hub_noargs() + loop = hub.loop + if seconds <= 0: + waiter = Waiter(hub) + loop.run_callback(waiter.switch, None) + waiter.get() + else: + with loop.timer(seconds, ref=ref) as t: + # Sleeping is expected to be an "absolute" measure with + # respect to time.time(), not a relative measure, so it's + # important to update the loop's notion of now before we start + loop.update_now() + hub.wait(t) + + +def idle(priority=0): + """ + Cause the calling greenlet to wait until the event loop is idle. + + Idle is defined as having no other events of the same or higher + *priority* pending. That is, as long as sockets, timeouts or even + signals of the same or higher priority are being processed, the loop + is not idle. + + .. seealso:: :func:`sleep` + """ + hub = _get_hub_noargs() + with hub.loop.idle() as watcher: + if priority: + watcher.priority = priority + hub.wait(watcher) + + +def kill(greenlet, exception=GreenletExit): + """ + Kill greenlet asynchronously. The current greenlet is not unscheduled. + + .. note:: + + The method :meth:`Greenlet.kill` method does the same and + more (and the same caveats listed there apply here). However, the MAIN + greenlet - the one that exists initially - does not have a + ``kill()`` method, and neither do any created with :func:`spawn_raw`, + so you have to use this function. + + .. caution:: Use care when killing greenlets. If they are not prepared for + exceptions, this could result in corrupted state. + + .. versionchanged:: 1.1a2 + If the ``greenlet`` has a :meth:`kill ` method, calls it. This prevents a + greenlet from being switched to for the first time after it's been + killed but not yet executed. + """ + if not greenlet.dead: + if hasattr(greenlet, 'kill'): + # dealing with gevent.greenlet.Greenlet. Use it, especially + # to avoid allowing one to be switched to for the first time + # after it's been killed + greenlet.kill(exception=exception, block=False) + else: + _get_hub_noargs().loop.run_callback(greenlet.throw, exception) + + +class signal(object): + """ + signal_handler(signalnum, handler, *args, **kwargs) -> object + + Call the *handler* with the *args* and *kwargs* when the process + receives the signal *signalnum*. + + The *handler* will be run in a new greenlet when the signal is + delivered. + + This returns an object with the useful method ``cancel``, which, + when called, will prevent future deliveries of *signalnum* from + calling *handler*. It's best to keep the returned object alive + until you call ``cancel``. + + .. note:: + + This may not operate correctly with ``SIGCHLD`` if libev child + watchers are used (as they are by default with + `gevent.os.fork`). See :mod:`gevent.signal` for a more + general purpose solution. + + .. versionchanged:: 1.2a1 + + The ``handler`` argument is required to + be callable at construction time. + + .. versionchanged:: 20.5.1 + The ``cancel`` method now properly cleans up all native resources, + and drops references to all the arguments of this function. + """ + # This is documented as a function, not a class, + # so we're free to change implementation details. + + greenlet_class = None + + def __init__(self, signalnum, handler, *args, **kwargs): + if not callable(handler): + raise TypeError("signal handler must be callable.") + + self.hub = _get_hub_noargs() + self.watcher = self.hub.loop.signal(signalnum, ref=False) + self.handler = handler + self.args = args + self.kwargs = kwargs + if self.greenlet_class is None: + from gevent import Greenlet + type(self).greenlet_class = Greenlet + self.greenlet_class = Greenlet + + self.watcher.start(self._start) + + ref = property( + lambda self: self.watcher.ref, + lambda self, nv: setattr(self.watcher, 'ref', nv) + ) + + def cancel(self): + if self.watcher is not None: + self.watcher.stop() + # Must close the watcher at a deterministic time, otherwise + # when CFFI reclaims the memory, the native loop might still + # have some reference to it; if anything tries to touch it + # we can wind up writing to memory that is no longer valid, + # leading to a wide variety of crashes. + self.watcher.close() + self.watcher = None + self.handler = None + self.args = None + self.kwargs = None + self.hub = None + self.greenlet_class = None + + def _start(self): + # TODO: Maybe this should just be Greenlet.spawn()? + try: + greenlet = self.greenlet_class(self.handle) + greenlet.switch() + except: # pylint:disable=bare-except + self.hub.handle_error(None, *sys._exc_info()) # pylint:disable=no-member + + def handle(self): + try: + self.handler(*self.args, **self.kwargs) + except: # pylint:disable=bare-except + self.hub.handle_error(None, *sys.exc_info()) + + +def reinit(hub=None): + """ + reinit() -> None + + Prepare the gevent hub to run in a new (forked) process. + + This should be called *immediately* after :func:`os.fork` in the + child process. This is done automatically by + :func:`gevent.os.fork` or if the :mod:`os` module has been + monkey-patched. If this function is not called in a forked + process, symptoms may include hanging of functions like + :func:`socket.getaddrinfo`, and the hub's threadpool is unlikely + to work. + + .. note:: Registered fork watchers may or may not run before + this function (and thus ``gevent.os.fork``) return. If they have + not run, they will run "soon", after an iteration of the event loop. + You can force this by inserting a few small (but non-zero) calls to :func:`sleep` + after fork returns. (As of gevent 1.1 and before, fork watchers will + not have run, but this may change in the future.) + + .. note:: This function may be removed in a future major release + if the fork process can be more smoothly managed. + + .. warning:: See remarks in :func:`gevent.os.fork` about greenlets + and event loop watchers in the child process. + """ + # Note the signature line in the docstring: hub is not a public param. + + # The loop reinit function in turn calls libev's ev_loop_fork + # function. + hub = _get_hub() if hub is None else hub + if hub is None: + return + + # Note that we reinit the existing loop, not destroy it. + # See https://github.com/gevent/gevent/issues/200. + hub.loop.reinit() + # libev's fork watchers are slow to fire because the only fire + # at the beginning of a loop; due to our use of callbacks that + # run at the end of the loop, that may be too late. The + # threadpool and resolvers depend on the fork handlers being + # run (specifically, the threadpool will fail in the forked + # child if there were any threads in it, which there will be + # if the resolver_thread was in use (the default) before the + # fork.) + # + # If the forked process wants to use the threadpool or + # resolver immediately (in a queued callback), it would hang. + # + # The below is a workaround. Fortunately, all of these + # methods are idempotent and can be called multiple times + # following a fork if the suddenly started working, or were + # already working on some platforms. Other threadpools and fork handlers + # will be called at an arbitrary time later ('soon') + for obj in (hub._threadpool, hub._resolver, hub.periodic_monitoring_thread): + getattr(obj, '_on_fork', lambda: None)() + + # TODO: We'd like to sleep for a non-zero amount of time to force the loop to make a + # pass around before returning to this greenlet. That will allow any + # user-provided fork watchers to run. (Two calls are necessary.) HOWEVER, if + # we do this, certain tests that heavily mix threads and forking, + # like 2.7/test_threading:test_reinit_tls_after_fork, fail. It's not immediately clear + # why. + #sleep(0.00001) + #sleep(0.00001) + + +class Hub(WaitOperationsGreenlet): + """ + A greenlet that runs the event loop. + + It is created automatically by :func:`get_hub`. + + .. rubric:: Switching + + Every time this greenlet (i.e., the event loop) is switched *to*, + if the current greenlet has a ``switch_out`` method, it will be + called. This allows a greenlet to take some cleanup actions before + yielding control. This method should not call any gevent blocking + functions. + """ + + #: If instances of these classes are raised into the event loop, + #: they will be propagated out to the main greenlet (where they will + #: usually be caught by Python itself) + SYSTEM_ERROR = (KeyboardInterrupt, SystemExit, SystemError) + + #: Instances of these classes are not considered to be errors and + #: do not get logged/printed when raised by the event loop. + NOT_ERROR = (GreenletExit, SystemExit) + + #: The size we use for our threadpool. Either use a subclass + #: for this, or change it immediately after creating the hub. + threadpool_size = 10 + + # An instance of PeriodicMonitoringThread, if started. + periodic_monitoring_thread = None + + # The ident of the thread we were created in, which should be the + # thread that we run in. + thread_ident = None + + #: A string giving the name of this hub. Useful for associating hubs + #: with particular threads. Printed as part of the default repr. + #: + #: .. versionadded:: 1.3b1 + name = '' + + # NOTE: We cannot define a class-level 'loop' attribute + # because that conflicts with the slot we inherit from the + # Cythonized-bases. + + # This is the source for our 'minimal_ident' property. We don't use a + # IdentRegistry because we've seen some crashes having to do with + # clearing weak references on shutdown in Windows (see known_failures.py). + # This gives us slightly different semantics than a greenlet's minimal_ident + # (notably, there can be holes) but we never documented this object's minimal_ident, + # and there should be few enough hub's over the lifetime of a process so as not + # to matter much. + _hub_counter = 0 + + def __init__(self, loop=None, default=None): + WaitOperationsGreenlet.__init__(self, None, None) + self.thread_ident = get_thread_ident() + if hasattr(loop, 'run'): + if default is not None: + raise TypeError("Unexpected argument: default") + self.loop = loop + elif get_loop() is not None: + # Reuse a loop instance previously set by + # destroying a hub without destroying the associated + # loop. See #237 and #238. + self.loop = get_loop() + else: + if default is None and self.thread_ident != MAIN_THREAD_IDENT: + default = False + + if loop is None: + loop = self.backend + self.loop = self.loop_class(flags=loop, default=default) # pylint:disable=not-callable + self._resolver = None + self._threadpool = None + self.format_context = GEVENT_CONFIG.format_context + + Hub._hub_counter += 1 + self.minimal_ident = Hub._hub_counter + + @Lazy + def ident_registry(self): + return IdentRegistry() + + @property + def loop_class(self): + return GEVENT_CONFIG.loop + + @property + def backend(self): + return GEVENT_CONFIG.libev_backend + + @property + def main_hub(self): + """ + Is this the hub for the main thread? + + .. versionadded:: 1.3b1 + """ + return self.thread_ident == MAIN_THREAD_IDENT + + def __repr__(self): + if self.loop is None: + info = 'destroyed' + else: + try: + info = self.loop._format() + except Exception as ex: # pylint:disable=broad-except + info = str(ex) or repr(ex) or 'error' + result = '<%s %r at 0x%x %s' % ( + self.__class__.__name__, + self.name, + id(self), + info) + if self._resolver is not None: + result += ' resolver=%r' % self._resolver + if self._threadpool is not None: + result += ' threadpool=%r' % self._threadpool + result += ' thread_ident=%s' % (hex(self.thread_ident), ) + return result + '>' + + def _normalize_exception(self, t, v, tb): + # Allow passing in all None if the caller doesn't have + # easy access to sys.exc_info() + if (t, v, tb) == (None, None, None): + t, v, tb = sys.exc_info() + + if isinstance(v, str): + # Cython can raise errors where the value is a plain string + # e.g., AttributeError, "_semaphore.Semaphore has no attr", + v = t(v) + + return t, v, tb + + def handle_error(self, context, type, value, tb): + """ + Called by the event loop when an error occurs. The default + action is to print the exception to the :attr:`exception + stream `. + + The arguments ``type``, ``value``, and ``tb`` are the standard + tuple as returned by :func:`sys.exc_info`. (Note that when + this is called, it may not be safe to call + :func:`sys.exc_info`.) + + Errors that are :attr:`not errors ` are not + printed. + + Errors that are :attr:`system errors ` are + passed to :meth:`handle_system_error` after being printed. + + Applications can set a property on the hub instance with this + same signature to override the error handling provided by this + class. This is an advanced usage and requires great care. This + function *must not* raise any exceptions. + + :param context: If this is ``None``, indicates a system error + that should generally result in exiting the loop and being + thrown to the parent greenlet. + """ + type, value, tb = self._normalize_exception(type, value, tb) + + if type is HubDestroyed: + # We must continue propagating this for it to properly + # exit. + reraise(type, value, tb) + + if not issubclass(type, self.NOT_ERROR): + self.print_exception(context, type, value, tb) + if context is None or issubclass(type, self.SYSTEM_ERROR): + self.handle_system_error(type, value, tb) + + def handle_system_error(self, type, value, tb=None): + """ + Called from `handle_error` when the exception type is determined + to be a :attr:`system error `. + + System errors cause the exception to be raised in the main + greenlet (the parent of this hub). + + .. versionchanged:: 20.5.1 + Allow passing the traceback to associate with the + exception if it is rethrown into the main greenlet. + """ + current = getcurrent() + if current is self or current is self.parent or self.loop is None: + self.parent.throw(type, value, tb) + else: + # in case system error was handled and life goes on + # switch back to this greenlet as well + cb = None + try: + cb = self.loop.run_callback(current.switch) + except: # pylint:disable=bare-except + traceback.print_exc(file=self.exception_stream) + try: + self.parent.throw(type, value, tb) + finally: + if cb is not None: + cb.stop() + + @readproperty + def exception_stream(self): + """ + The stream to which exceptions will be written. + Defaults to ``sys.stderr`` unless assigned. Assigning a + false (None) value disables printing exceptions. + + .. versionadded:: 1.2a1 + """ + # Unwrap any FileObjectThread we have thrown around sys.stderr + # (because it can't be used in the hub). Tricky because we are + # called in error situations when it's not safe to import. + # Be careful not to access sys if we're in the process of interpreter + # shutdown. + stderr = sys.stderr if sys else None # pylint:disable=using-constant-test + if type(stderr).__name__ == 'FileObjectThread': + stderr = stderr.io # pylint:disable=no-member + return stderr + + def print_exception(self, context, t, v, tb): + # Python 3 does not gracefully handle None value or tb in + # traceback.print_exception() as previous versions did. + # pylint:disable=no-member + errstream = self.exception_stream + if not errstream: # pragma: no cover + # If the error stream is gone, such as when the sys dict + # gets cleared during interpreter shutdown, + # don't cause follow-on errors. + # See https://github.com/gevent/gevent/issues/1295 + return + + t, v, tb = self._normalize_exception(t, v, tb) + + if v is None: + errstream.write('%s\n' % t.__name__) + else: + traceback.print_exception(t, v, tb, file=errstream) + del tb + + try: + errstream.write(gmctime()) + errstream.write(' ' if context is not None else '\n') + except: # pylint:disable=bare-except + # Possible not safe to import under certain + # error conditions in Python 2 + pass + + if context is not None: + if not isinstance(context, str): + try: + context = self.format_context(context) + except: # pylint:disable=bare-except + traceback.print_exc(file=self.exception_stream) + context = repr(context) + errstream.write('%s failed with %s\n\n' % (context, getattr(t, '__name__', 'exception'), )) + + + def run(self): + """ + Entry-point to running the loop. This method is called automatically + when the hub greenlet is scheduled; do not call it directly. + + :raises gevent.exceptions.LoopExit: If the loop finishes running. This means + that there are no other scheduled greenlets, and no active + watchers or servers. In some situations, this indicates a + programming error. + """ + assert self is getcurrent(), 'Do not call Hub.run() directly' + self.start_periodic_monitoring_thread() + while 1: + loop = self.loop + loop.error_handler = self + try: + loop.run() + finally: + loop.error_handler = None # break the refcount cycle + + # This function must never return, as it will cause + # switch() in the parent greenlet to return an unexpected + # value. This can show up as unexpected failures e.g., + # from Waiters raising AssertionError or MulitpleWaiter + # raising invalid IndexError. + # + # It is still possible to kill this greenlet with throw. + # However, in that case switching to it is no longer safe, + # as switch will return immediately. + # + # Note that there's a problem with simply doing + # ``self.parent.throw()`` and never actually exiting this + # greenlet: The greenlet tends to stay alive. This is + # because throwing the exception captures stack frames + # (regardless of what we do with the argument) and those + # get saved. In addition to this object having + # ``gr_frame`` pointing to this method, which contains + # ``self``, which points to the parent, and both of which point to + # an internal thread state dict that points back to the current greenlet for the thread, + # which is likely to be the parent: a cycle. + # + # We can't have ``join()`` tell us to finish, because we + # need to be able to resume after this throw. The only way + # to dispose of the greenlet is to use ``self.destroy()``. + + debug = [] + if hasattr(loop, 'debug'): + debug = loop.debug() + loop = None + + self.parent.throw(LoopExit('This operation would block forever', + self, + debug)) + # Execution could resume here if another blocking API call is made + # in the same thread and the hub hasn't been destroyed, so clean + # up anything left. + debug = None + + def start_periodic_monitoring_thread(self): + if self.periodic_monitoring_thread is None and GEVENT_CONFIG.monitor_thread: + # Note that it is possible for one real thread to + # (temporarily) wind up with multiple monitoring threads, + # if hubs are started and stopped within the thread. This shows up + # in the threadpool tests. The monitoring threads will eventually notice their + # hub object is gone. + from gevent._monitor import PeriodicMonitoringThread + from gevent.events import PeriodicMonitorThreadStartedEvent + from gevent.events import notify_and_call_entry_points + self.periodic_monitoring_thread = PeriodicMonitoringThread(self) + + if self.main_hub: + self.periodic_monitoring_thread.install_monitor_memory_usage() + + notify_and_call_entry_points(PeriodicMonitorThreadStartedEvent( + self.periodic_monitoring_thread)) + + return self.periodic_monitoring_thread + + def join(self, timeout=None): + """ + Wait for the event loop to finish. Exits only when there + are no more spawned greenlets, started servers, active + timeouts or watchers. + + .. caution:: This doesn't clean up all resources associated + with the hub. For that, see :meth:`destroy`. + + :param float timeout: If *timeout* is provided, wait no longer + than the specified number of seconds. + + :return: `True` if this method returns because the loop + finished execution. Or `False` if the timeout + expired. + """ + assert getcurrent() is self.parent, "only possible from the MAIN greenlet" + if self.dead: + return True + + waiter = Waiter(self) + + if timeout is not None: + timeout = self.loop.timer(timeout, ref=False) + timeout.start(waiter.switch, None) + + try: + try: + # Switch to the hub greenlet and let it continue. + # Since we're the parent greenlet of the hub, when it exits + # by `parent.throw(LoopExit)`, control will resume here. + # If the timer elapses, however, ``waiter.switch()`` is called and + # again control resumes here, but without an exception. + waiter.get() + except LoopExit: + # Control will immediately be returned to this greenlet. + return True + finally: + # Clean up as much junk as we can. There is a small cycle in the frames, + # and it won't be GC'd. + # this greenlet -> this frame + # this greenlet -> the exception that was thrown + # the exception that was thrown -> a bunch of other frames, including this frame. + # some frame calling self.run() -> self + del waiter # this frame -> waiter -> self + del self # this frame -> self + if timeout is not None: + timeout.stop() + timeout.close() + del timeout + return False + + def destroy(self, destroy_loop=None): + """ + Destroy this hub and clean up its resources. + + If you manually create hubs, or you use a hub or the gevent + blocking API from multiple native threads, you *should* call this + method before disposing of the hub object reference. Ideally, + this should be called from the same thread running the hub, but + it can be called from other threads after that thread has exited. + + Once this is done, it is impossible to continue running the + hub. Attempts to use the blocking gevent API with pre-existing + objects from this native thread and bound to this hub will fail. + + .. versionchanged:: 20.5.1 + Attempt to ensure that Python stack frames and greenlets referenced by this + hub are cleaned up. This guarantees that switching to the hub again + is not safe after this. (It was never safe, but it's even less safe.) + + Note that this only works if the hub is destroyed in the same thread it + is running in. If the hub is destroyed by a different thread + after a ``fork()``, for example, expect some garbage to leak. + """ + if destroy_loop is None: + destroy_loop = not self.loop.default + + if self.periodic_monitoring_thread is not None: + self.periodic_monitoring_thread.kill() + self.periodic_monitoring_thread = None + if self._resolver is not None: + self._resolver.close() + del self._resolver + if self._threadpool is not None: + self._threadpool.kill() + del self._threadpool + + # Let the frame be cleaned up by causing the run() function to + # exit. This is the only way to guarantee that the hub itself + # and the main greenlet, if this was a secondary thread, get + # cleaned up. Otherwise there are likely to be reference + # cycles still around. We MUST do this before we destroy the + # loop; if we destroy the loop and then switch into the hub, + # things will go VERY, VERY wrong (because we will have destroyed + # the C datastructures in the middle of the C function that's + # using them; the best we can hope for is a segfault). + try: + self.throw(HubDestroyed(destroy_loop)) + except LoopExit: + # Expected. + pass + except GreenletError: + # Must be coming from a different thread. + # Note that python stack frames are likely to leak + # in this case. + pass + + if destroy_loop: + if get_loop() is self.loop: + # Don't let anyone try to reuse this + set_loop(None) + self.loop.destroy() + else: + # Store in case another hub is created for this + # thread. + set_loop(self.loop) + + self.loop = None + if _get_hub() is self: + set_hub(None) + + + + # XXX: We can probably simplify the resolver and threadpool properties. + + @property + def resolver_class(self): + return GEVENT_CONFIG.resolver + + def _get_resolver(self): + if self._resolver is None: + self._resolver = self.resolver_class(hub=self) # pylint:disable=not-callable + return self._resolver + + def _set_resolver(self, value): + self._resolver = value + + def _del_resolver(self): + self._resolver = None + + resolver = property(_get_resolver, _set_resolver, _del_resolver, + """ + The DNS resolver that the socket functions will use. + + .. seealso:: :doc:`/dns` + """) + + + @property + def threadpool_class(self): + return GEVENT_CONFIG.threadpool + + def _get_threadpool(self): + if self._threadpool is None: + # pylint:disable=not-callable + self._threadpool = self.threadpool_class( + self.threadpool_size, + hub=self, + idle_task_timeout=GEVENT_CONFIG.threadpool_idle_task_timeout + ) + return self._threadpool + + def _set_threadpool(self, value): + self._threadpool = value + + def _del_threadpool(self): + self._threadpool = None + + threadpool = property(_get_threadpool, _set_threadpool, _del_threadpool, + """ + The threadpool associated with this hub. + + Usually this is a + :class:`gevent.threadpool.ThreadPool`, but + you :attr:`can customize that + `. + + Use this object to schedule blocking + (non-cooperative) operations in a different + thread to prevent them from halting the event loop. + """) + + +set_default_hub_class(Hub) + + + +class linkproxy(object): + __slots__ = ['callback', 'obj'] + + def __init__(self, callback, obj): + self.callback = callback + self.obj = obj + + def __call__(self, *args): + callback = self.callback + obj = self.obj + self.callback = None + self.obj = None + callback(obj) diff --git a/venv/lib/python3.9/site-packages/gevent/libev/__init__.py b/venv/lib/python3.9/site-packages/gevent/libev/__init__.py new file mode 100644 index 0000000..412d64c --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/libev/__init__.py @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + +# Nothing public here +__all__ = [] diff --git a/venv/lib/python3.9/site-packages/gevent/libev/_corecffi.abi3.so b/venv/lib/python3.9/site-packages/gevent/libev/_corecffi.abi3.so new file mode 100755 index 0000000000000000000000000000000000000000..c932a9bdec4a0fe79e939234184d9fb8f620a2b6 GIT binary patch literal 383680 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

          jaqxJPqx|cYHVxHaw+9{gT2J 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

        2. +7eB* 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 SuR$6)r5&<`H+_ zH)W{gukOpf=A5*E%ory{&2eh3<7)m1jjMgl>O3kxfzN=Z!Tziu? z;G@8HB|q6V!vuep2ODXN`pUg1e=bmy@i~Yo!pNT0B8Y{;h{?DOVv8_hGM3einG&ET zV;6{%gb|Z*8pIS3z01}4|1=qk!efTv_nHTqR^jKG>%ugT{hMsLXOoOt=47V0o8C_6 zRz3Guox&0tnQEElF2CMTDUfVgVwPD)p} z(+|Rb!4#MQ5ElwF17<12 zLSf#6Ikf=~ZIJ&tOdU7Z^S^=dmrs8tr-{4L8OBrL{ZLVnclN9FU5+)3Mbl$Ie(uUiq9M78CM;lV8!@g$Kfr{+uA5vTf?YCmn^t5^ zmii^wWg5lIU!u6m^~66lBt)dau3@e);TtL3tRm}2U-&Qzw*k=>wF+ynYmh7WKMi&n zr-WdaRMe&-xLRh21iP-Hl4_uLx0fT>m41&sPyS?S%=fh#qrtB1JzQ(@c&I#pULH2F zoBVGKMN3_oFv4|M=qsHO)Ollfp&$&apWRv`C3A4&HITGJ>DPBxI(CVB(AhxJo^yD> z4zeMF$S73VpL!lt-cN!dSsGKh&N{|6LUe=mnQesVMwg=zn!zqdBSb^2zilH#H`yE; zA-cERMTkb06CpbPTI%ob>R%Yv-@p7^4XkJ!=u+$U+r|uVUV6b)`TpVSWg6UwJoAQc z`RipDY0K9%Ci{&t`Od1zy604wnPnPh$Xfal%q+)f2WLA*kB-bKOACR`bvYWjdCM^x zxp}*+-r>yTEREc}QV{@^EFf)8979lLq1QXRVw z%QRMD$L=GWW5=#5V|Q#53iE?*4W?pa1qVYE^nmD99+VU^3icMQFV9jfrItO^v8Lc2VjaO$cU4y+Z|CFGGX3%J zES(R}m1!8r&WGpin3{qE52fT?u4M0-zT{nH{ZljfZg&CnLf@Nyq3?4!dNqcpUyTvz zS7T)Q)p(-J&EyGX%;c5wmiu5=|6^hOgUh<<;AqQ-q__Mg-}2uEP_mmVSv1SHyj$4? zsg|FY-tr#lE$^A$@?PmJ@15TAKItv5_AS3kT7Kun)ZfX~e`Z*Jr!xIDdpqW*rnkJa zZ+YQDO77=Mei@eBuk4ak%lA)j`GM&zZ;{^emgy~TmEQ7$(p!GCZ+Qo4`E3)Zzs%L2 zH`|X~Sy|WAn3t!wyu!Eqjv7jCDz&S}n6TugQoDNSvaq?-E*LsnwmL=wy4yy7qcLk-V-|;vSyP%e>DQK~P5Pf~m8M|x zWt4o+}5$2&)g(XWtjSpQPaz%!QE1m7}qA#MU1!noKKiWpC!PXB_w=j3ds z_SBJsA1L%az^R_eTS2ZJoGOv(`kfPxdy$E;Y$uJcQzrAbQ9ynygcFoh!^2 z*ro97(!7mQSZ;>TDEKkZDVnz@odR&LYG_U77)cOHpKceynQ1k_ijz=q3(2j?^_aoQrCjRYGw}Bs%np%T$R9M>r z>DODO!5FDQ2BqF!F;fRbt9Lahazk`;g=yVb3cp>NH|bpp%MH4SQ(~Ds`EEQ`Q9vKKyQfiAkG5uY7vneVhY?u zpmX4Kry^p;Nj^8k-O^&|?p9>}0MSQk-4HTuqbIpUe?$1emA0$q%UrhtvqCh#TN?b} zHMiP_#{!7f)EdaazHoQ9?y@XBPT|i=gUa_@vo59JB~o}?t-?3@!k4(hfvJ+h3rd5Y zzVOo&d{PRJs8v|*R1TFBt&35+{JMb*-Z zrKQ1P@6!cwN^_cWaez9dUXI||6BOMT$mdwdsJElaWuHaJiB{Z5B5x@N1v>9 zwPaXqi@YX|icwSWHB;NSXdyLy=v(CFaQerkwdkN`F>@e@u1>32S|eSyH9YCs%7mn3 z@J(s(kFVhhO7;cX=VzQ8pQ%W%;dAomOAW83^;v3=t7GcRxfY+35mE`s<1biN8Vvft zjc}djJQF~kT+&%#ZJx@vMN*@EAhP>|=*P8c*1lzTbBo;@gaAfRhwF9rhc5m6={%j% z(!093FY9SI>EJfOys5dskP{Ij^So2C>?09f@!2llY&$?@F z!vU`or3-f*a(>n8ZikHtbibhepm~s80ipFB+xg^oyQ7=15R{9SmRf;NSWm+OFgehuP}-RbRHQJrfD3Fi3ZEY2Hg8vS`aTn#umf zm69=7NHSB0-+w$)E_q86``zVAAUj&&Y74J_`EhC2|K8nSf72=ZRmL%|G`Hqm+u$Cy zAaAJbx5$ruUa6jqd5A9F3>vS0M$23($6~JCKV~im^>jWou%o?^gr$Tfi%iP09s0?DYSen-Adyqm=9Kt1(83QF}{Oy`y{(-G9uC`)5IqsEaiMiO-b z?qL&Gkg!-1)e9@M6R}ULnCS}a(T{|cbid%%y)vkO#j8P^EO*tC zZict}1j(kdrnV_95Z|ZmK{0bMNc3W6uKJh*9~v+@w6w0|_8{k65G`|hWRa33MW0|Y zyYgHHyM;2f+m_bNr3&4ceVBp|0(VB%335i(QSQR?>+hvRbeV!P5q@0?@Tr)K19Rr5 z48|7Ti42Y^EwDe7JpCqpV4dj33{wEPpsKX)OsP~JSl>~8Inc%X*s!Jz$b}EAqSo{m zM7y|r|3uWqTTKFALzXGOgc^=6t-Dof5M$#QN**Ppd(^o7`~aK*D| zvHS%uchBiFKi#Y>YQwbyCa0>GF)xN4sxK4aweIn{7n2<6&OgT>brgtnfw>W45QwYX z6{O67dl~FK80H(N=U`+1A~ZS}LdI`M`~reIVD@dx<_V~}A7+CqvWG3fcaKTzOl~K@ zSKxkvJ?sN}tr|F)J@$#WKy%%!-n8*g1g=JQpvZTW-ke=qJdxDy)Rpekm2MPD%R7qd zon-gfE2Z{PR6e53Fc>3po7R8dwuEo0Iw~CE150z}$~BTZa1MoLOF_K}x;s(c$G(Ko z?NFNYw+PBjuo|K7Kytgoc4Wd% zb3?#s2q|?^Y552#)s3vnDbXLqHRobdo`ahRf`Kp%4kZQvqR%>|hfTBouk6#9`f}^s z>y&4Nl((*ej-_RvOGR=U^+roi5Xc>L8^lmx?X&-c&GS^DXy-5JT$-&TGX>#iLG(8# z>qkbd+ng9Wqv5QrzK~8fEzOCvB>4+U%?FXaV458kGkbwZ0_J>(o*=IBN0KrYZZtSd z2CdBL!$w74i^k&ELoh&w=Zp1V*xj2Au1Y`K(|gWXe_ zm6pd-a8_yF^`A3L$CC9eg_nZ3=5!{d;E0%M1cL4`M?f4ROh1_0AZmoU7UnC6&q3i( zm|!ITG(R$C_5{J>FgHS6Bg_<-`4IC!*$kNcxAv&rSCMY6dh?b!5|lC*g6R-0qv!GSl4v&AGHS4sV=Z2je@ z*oC6A&T1MzCh?^=%T|?i6r?XP2yE0)spxb2_FM%68}(QO=A11?P}XXlOqF?cjL9F(zg=BV@}Gq1i^vNU+mvKfB2A|-CEL6E?|oj>|p=u=0#*o$N%`jzO|&QT>VB>IM%@0 zz_*t46B~E}36BB$bGJk7Y{)yB@D;Fz@ojd@N0V@;BBee`9s@~5q z4av3E^0X4Qma|S^y#~=Tr)Ott*=0m{3^VzkE2(=pO7zitBn1x#&RTYYSj&!bQ^W+% zmso4L55m2q0Ihj9!`%9nx0YWn+0k0wexmIaM^upuUM;D+Rw|Xn@J`AP1G*Rl_J&5>vQad7Q{vzGUEjl-&yvg1n{ zRV<~fSjz*D>I>9begMuDmRq}`4Jjaf5^MPx*X%TFxyp%QElUj(O5(47O$}l# ze~-d%r3SHw=l767%D$GIXqSj$_;-2}X~ z?C$L}YqDO)9q zSCV~~R3y$wAGGumO}{yLzd}hrv-fcWB=5vNNfEgp8NJvt zm#(M6)h>V4Ef(DHJSKw2ORQafH>!sLwaZsPEE7iT^5m&Jm_c0S#V$Vst}{@({IhWJ znT|ehm)}SBT~bIA)h?e8_b$+3>ClI;3`ab*Os9TWFbIlGkuKqakMS zgA^VC;+i9N`6qB60kzA2hxk<(vCEI_5;JXq+U3I`?gS~jd?nmBk}Y=mL8lRT25OfN zgSZK#?DD~`xlvE-$}V5$gaT77&%ebb!9CJ!c@!-{+d`m^A}<#;E07EA^1V;zh$+b4 znl_=YL4#aVE_SrOv&+&afQ|QWb~SSy#Oz#B5^VQ14@BeTKqK&8F3Whz-w|OerXo8T zM6+s5H@PQGpNa0$%)KsZvKu=QF%*x$wxgjrfj1U+=N*)}Ubq-J8?3>_&O4Zm4(lCU zT%zBSwK4Kbthr{7%=NR@lRZDt-!U4Ryfob*7+`a(Lolesou9a&Brr9Rt&OSkTw7=L z>I}Sqmsfhj^xTqD#Nhvi5%>&PFW}sgfs%OX88LGauwFnn=LJ|Z^*r0gcgUUza>Uf_ zjB6@?Q8SKOf?hZS=aIbMnXES;uBm-Vc@}Ow2(E#tcNV?^2yTVx330YCBVay+cncJd zg)#Y)`FDt`BL5|rvG-s-^QZTaue_dFA(dB`KJAW9pLWNjPrFn6wCl{Y+w-3jsbF2PeSh>4J2UFo z|CoVu*7+H@u2^T_-&}!Bz`j4azF6NMy|io0oCoatqw9Bc!7Nz|i2n~T+rokZdYU|#^;Qk>g>$51fxk(;bvv(*-jcBklh z-mlqKtiE?OiI)KD*KD_v&Tsp(SY7%RWPb(hJH*X#c9zT0!o5p^``j4V_duJL1TXZp zqha4NZkb9*jQc6WO#2ZJprf4i%r4pExDSbYj2w4Uy^Fh&5G&F5Ks)r{*#Z*P>oUw? zh}V1bC2|{;=zE|KlXD-?PhTACs$%N>%*~NoQqXu6H;258vK^VNKwpXQav8=`p`+qo z{wV9oHW$DOl~)0~I?a4STr}t7&d7I&jzi)Ypl{2CjJyVT3#mgSM_!Pd5Al&O@`7Bv z7p(>Qg4~r5mkA@U0lofa|1}@*3bK zWPS(w8emBud{z)wF?kK}7`Q6HS|XjgtDl>vX09mWHNcIyoZ7LzNL>uHV<98$8cFKC zk|Vub3b8~O>1Fo$`0_w|c>qLnVdOQyz7Q7+BfT66FjUcHd@~u6AGc6ONO&0q3Tq zqUHVV1@&(O+Cw8l(9$Jy zf;Ic9U3h_n6Fzkg;ml2lm z4GLeq+JfvR84$h!^1CJjm-hQtV}*=r38!k{KB2>X`kyGZ31<8J}|>gca-G2-B! zG-EV4&~*e_1jwM^ex^2={v zJaw)sAM8^SOy)qTzO!^0uL^C(_!WWj9Q7xJ`jhM!bm|rotSi8NOM3`j7f&Wl?u&vxq zkCZI)O)NYAVBuuXFI?PKCAnAgw2dqx>r|R~B8a>X^Ekw#Ag*F7NckG>3lOY_*{2_y z79iLT(;1?pFxglVPeD8`Og_wC5L-ch15t?vz??ElN_uN#zGZh-9ZOzASGAOU!D`G2b|`)G?n=j+y9LiW9jA)Z@qsnPBCUS*rr-y~ z`qflx{mrxXi*-6avZjr7IzD!cIvt-_OUS-n@~O?SPRCcp&guB380&A3OR4e=TjhpF z?dsd#-EfgHt$*>>-y6mH`O zN9;*oPt>$%g1t1iI5)D8x*n(LQbV z4%yxO<3bnw(2yB0#!b3sxZu{)9aEgP4>mS^(mjzr>Bgl`y7B3g?#c8?_ne<}(`C}N zmaVVhw#up@wI|)P8~mgjUaVVRGZ^&gz)rg1#k%!Xeg*3Zu#;}Y4wG)AZSGxU-vV-E z8vAE45w4gOb? z?s`{u)Dyd$bmuy$4CASA(oHFDd=?FKlg?*f!lb*5WIyS~I|bpS+nT;)UjN@FU6-lM zfNR{O`yQQk(p^)W7GAkFebQZLXOr1;&j%>k*Or{_yz$oIg7v{hKX>|CclGG2IJ5`s z-054a0h1aMt_ODR^xI+X^tZJxAo~-LBeT)h!-w&TWx?=bp!%+p`C1 z&nV8ZFCq3U<|91g3 z8J3m61`!q%X%OMOYq%4D4I(Tk(jY>YYgy=l4I(Tk(jY?hAetm)BsHc&IuZuLYu$_eEz(y9nDRRH*Il@I2mKAAGV)%^&pn=^n{kBLW z3weWa5rK^?EVq*GQTHEP+WZAw*?CqNXM=w`}#1g+GflvT!vy{ek*6SGlT;skxaI zXk$@9^&hN25?S~ane{+@8!wk(Jmsz;+Yk}HZG*Fye^bmf1kP)!2{lg_&6|n}KJuCm zMXD`O&0a3UcxorjJ&--mY8LnYA*Y$6yrTK9qPiQm&}NBS3`6Q>pzeLhh)4exsk0?V zJo?-k?qHxE{YenV3L_r<3lPrihC?O4c2 zyB3i8iR4Hx3vcC?0NTsrAleHf(U}1deT9);PJ(z^80qB#i21@u++sV#W}tBk-<~Yv zsj+fb^B2Y~S`Eec0UEdH3UQV&@-5}tAchJfaf|05o)t#o7Hc3@3nOuh`op-DfW|Ej zgJ=UZZgC|pp;Z} zg-iEw3yD~qp(jw&;ufzq@e|%e-*;2n$1Svg#4T>zF>W#9zsD`~)?TpM&n9y#{rkJ9 z$>A&oY2Pw(`FzXBQQ>o*TiQN?jDE{#L#U~RX!@rp?OR4ZFW{GkY<;`XV%M41!oOm)rYXBtlt{MSEOtz6es(}S+j z1X4s(MsdLfXwvns!R_1zKtIgmNgLw;*OG*u!+;j>I`$ zlb6XdokhlL8b$sCs)=Qrj8@xy{HL&3<3CHt{8W@k^rh7*JCw#u7bS^e8~-`|4nDX7 zH2%}p$q@fRCXD~QM*cJqJJU5*qAals(-?Y_sDE2vUJ08}X`4`VCl5!UO}N2b17oU? z4Vt(n+)DlpA|oNF8YdGmHOPcb_>uhofY{Y(wZ?{}F*HG=KK{`d7*BQ4%g73pUmQI8 zCznco5$B}4Si*rueV&JyDvU&ZzJT~#7>W9Xj6{95le!h?mue2Uo6{6Pzf|)W#3&Hm z*Nxz=BS8MX)d-OPLA>xwH4@bcKUI@sBS7V?lC?inBZjGe+~=4U!x+i3;@s{SMv>pi z+DJ3jgUD)_1Mi8MeL-X?%;gY$L0roijKR0zW`H0U=7@Wlm>@{POn`Vyn0;Wf@8jJS zVOqmn26GVzj)qwdu^8lcg4y3KUHNCjT-gFp04-v))I&wQcI5>Lf*SCV|s?uQ|e~--)IT? zk?|VkUIMXmoW$`Qq|WZ=m@o0X)*vcR6&e-w*XeY3+FFm6$cb~Gk-C)rnG>8_+_*W@ z%`S@3Bi!hPzT2SVtmJOC$9Y8dbz><-Mx%*GWKQ6VX_T!0?p(guPp&!}=c+4j7EQL^ zLZs8b-oKe#G(Zkt=C&QG*~7%8$-VYKWyUF^Uv-&WG((wjV>D->dOqsxOtBWYjg39$ z7(E5~ytUNrFa1ojw!DpvO}9BVHugr5i;cZmM3`bo1r;1;n>qIiyAXfs*5k;SAM0ds z4CPW4IZxUUd4PMEOK6>%6RcD79f_X<>(rcJotmi+#>~UOIyEO)r)JtixQn2kcK;OH z`llb}%_mS#hoO^A+-npuY*0^!<5ZjY6bX+?q7F-Eo7m(LoC9FppEIoc^D+sK0PFso zS>(Q~yJ3jkSUt-QNQXx`840ZWbG99_4@j5|toze-2lwY3TjiOL@n{0p{duIwxjzpU z1--7aV`tr;hl_$O16_iCVE2hsLZZdy46`gd%WbS)SmZvii-)Egs~1`KXFk=;1BnG& zIEfj}avQ6It@~3kh8)o5mn&^GecU~lnUQ6h_2mR}k$zzJc4Te^`hnd7*QAK?6t1}b z1vN!`=`&~!va^9cgH}O&CyYFULPnlJb;fct1N~ZB3y1@NK7)EdoF|OzKimd!3y7ZL zYTorTC~&r;Zh+-g+FMnAl(luO2aWUgT$eE$wi0dVUsTY8POFWwfXe0r>+Lx?ygf&S z%Z0aBHX-{vaNgd{q2?8$`SPNI8D4Ypah7tRn!Q|x@zhS5+aY@-aGLK6HP_#U=7B{8 z4FlKa3y|vLHG8=X_XM7 zyXw=!QL7fsLyGLK`d>(F2I|CxjQDMxo*>2n)Nh*s@uD!|x8;muMgaBOxrw(z>Ev<2_<=uE~>ywl<**-`}RowkQK2EuBpdAYt^-f9sNOGi?tta3t0`27xh#Q5GUOodc zK^XB)S3-O%jP$bNDb6bZ?b!Jc-GP2w*SCjr&e9(Laoy?UPn80)lm0Wr8ezmEZ8H&@ z2&hNe6QY|i;*pMqct{xWNS8ub+kZBKe!8kx}`HAUJ*vz(#Fql zYlDK;6>V)pl9p45w6yTe=Vp>X!CK zrYA7jhdUv0OV^U^La(t?T)K5j*SRYuZfPFZ$_Hp~bW+|ewI3ys_Z)Fc*9@`S>3(UE zRWACYo6z1b)e_>D-sJpJaY)%u-!O#52UBF%8|ky%TE_c&(zRhljTXubl3>$qbZaP3 zXUofFaFPKzzvN6I|5@q2UCfp_Z5$#LsoRSh?aQOVE@nv02fE~VxlEIyq*FYhz2;5G z{+`nOL#VlzXuh+k(J-$$`7DbWP|aR0)1;_cn%g0JBybMmFQMiUqWSKkM%vyBkm%#J zdYMdFKHAmdYM2vQFZ33Qh&;p>=gK5mWwG z+983T$X^X&&$)cJ6`vS~)Ld$_M-wL4+A1e=q6?^BxQCl`1eTBuo^rKzB>y;(5x=lF zwUqpwR_jpmYe4K^m+xxLlt8h!3hJ89qIXZw{KrNF?A^Hg;mPyEnWpY2MBP2(>;~5aI0<}z5L#z@;ER*>2e9Z<# zA8~E}KUyZ)H@GP#W3ZGqtN-vn8;97vZY5LyVb4x-CUQjW!&%&bCh zn9oV-2QE*e7l(kxYFW=oju318=4nL7L1VS7=Om{{;_cJb^wVmxw0=`-a%tHgORNQzTK} z5PQca4ts^?FtBfky=xO!y&5xb0{e#8dp7am8JzzC_6@Q3llq2Omp2HG0Q-j62T9$< z*hs>9NmMszo=rS@CZ8Vw*0%pJsaqRMNcb37+x{af>0SnFff=u#PH0;ce0!;VZY63q zW|*}NG1B$Z3121M%V2VzOaAPq6TV8GXg{4W&m||Sf8)0qDP}*N@O4sO1{*kwu7fs< zs;%~7yAqn)a*@h$=R!EQpI z9u)b`Wn>vog+|`mWZg4RsE^-z8H2Z!Z%9+li2V(=ZNbu zF!~vV4atJN<(&ih4PXiBU2&Oz?pOao@^8ty^^n!m_>(FBG|+=orOxBbG@fea#w3id zeUI!)5Ixk%$~r3R&OnjWw_L7vwebR;)b@L_ZhNUsUf`(nCM7}a^t93@+qX|%^tu6A z^kvG|!^Feab98)7VQ7u}3qOt(^^J7zhoy>$#n2^k@Q&Y8=rh0%LVX4+_&V8qr8G-k zdpU+CRe`wX$Qxo8!(9mIl6+6$Ay<}wq?BEjY;bLEaEc%)xO6`i9srh`~VLMDm4rKDgrH z9N`VI7pXDzhS>KMS_w=}RWDB0h8>zK)$QV0(xv5LdY?NU4Fl5$GFY zTb!Pj#{PAo(fWqi8%Vqg^bN7!AvOYiLoDW|#}03Z6~4u~2HYEBb=>4ndqb=S&8auU zjzsowk?$zI*{8Pne|bY}C)xBj#QLDJmo|fz=)K$2wKi%z6%O&rWKR7CTqD`lxt&78 zq@cdebiXTB=D=GUy&I0-nmZKY)F0>n5imVphn__)oHYtCZ?Ssgk!@(m-5u0oKnzKwMV zrCI@f8|z+(JB5+Au|9x!2gFrg-o^^vWrZe1-^Oa|^hHb+`uy8iXCTrU#3fPR#(EI$ zE}*@w`yRXOAUfl6yG-oRTLwK*!`Z|O^I2jWmr-GzBKINWJ4)^TPosIa*kpNB=L9t_ zIdkrN#w>By7rRvsI8yd(6h+pO)s;HW0+DZFZi5&q%tDx#AzlP=EwhP~Z{U`ICbAzi z%^4xQVf<@`XK50}5g-tEO!Cj}L)<{{VGiVi(xR+4rBZp5?pMmM z1KP!#T%DXRLoR$?H=V~y4Wc7!b&;KB_q_Hs@ChW$tDvkX>kp|xR;W`cc@l_ib*+#A zGTE&hClB6cwA^0H^r!W$J3pU7 zPY{i{CB@GV89cSDrn||@?=DK=)!UL7x&W9p}0oyFvTAr-t;>j|J& zN1yS(g}1GzJ(pU#0v!b} z$5&X83+L!fQa#H8z9H0uR|~M4F5KJt!tt9cF$`vdqdv0+s&3z>_zu1 zvztPBA2W($ty32{Kf&Q!-CP-))DNWFO`);L8)dPvn?hrgqm)r!ZESLyGU}s^P0ka> z9+-aIx=eOcXq;oz8yatY9J?v>r1gUArqBeNV>gAKOS(;=7m{oWE%}OO9%`F8?g;yM z`qci1@A=oB-uFB-dAhXWRfh6OU^j&hPwGjxQ6Cf50d`a9@T8t}>-`D0H?W&RhbQ%< z+XbKUX)9nig{o}pyUl0c6xdCnqiy2XBrK3b9gbsc;yIu3lPAD#3LR?`zanA2BJ|J|n08Lk_~biR#+p+~Y{Ae~k#Wf+y+3e-yRav8=`;RDlKDU*?% z1X$d}{OKKPt`W_Bk_Df7&7UFlsn_h~GQtu&Y5oJ*-%^?{3pGy{%@-vL_9<~~PAul- zIiPL!av8=`J83=&*&~2!^Yx+T6{5LcvfyT~`Fx~$d(B=h!+2^Z&37Psn`+igp%G3q zp9j4i%~ud0kRyvPATb5#-bu*Fc1f@VgIRLq$l?H)i-B&Jya_Qw7}+k#{fg6`K(|XS zgy<=ZY`(k&@tQDlvai=tj98$XLcT40_et8qrqEf~!n!H65Sh<_ZVGLK*aG4zCYwT~ zUvuajFkEsLbC$bLv3x`kn?h%CZ)wMlN9tIh9Sa$0*Dz9Vk{s#fT8JNnkzOA34K@ML zUY-ZhRT$~z!w~liBb!2tAwCyII##%hbEiNzg?xLm%mQhT-xRu#{N6w}g~mgS6-G9N z)^x+%0K9Ohn9C7VL4`4Ja2 zQX8)z{0vMs=LPiPFPlRDkS(?XCqQERyL7uL^s!SVn?ifi3?~&m&q@8)O(DOuNIlUH z+=TwWZ3>NbYZ>49kgg3%Hd-w+NSvg@>DHk@H-)@hh8ZVve#z-Yeh=xsU2*2bW3thsUh`*2ed;xPxlEIy z^s=Pd{0FkXsb)PjI6u_fLNpIa+D)OvN)|Gp?e#MJUd8U(dla%q0R9raP}H;1ZwlR$ zOl=As+;pn5a;Nw4D%(m*-fE` zZEZ`C{8BVZaC1voYc;aLC|B#hZFI>@#C|7e+HcXI1$I+tSmHrRY_g8~6WC3mVTq}dIGuz^lBf>Hu*7?k*z#xYVqiCgh9$m~ zO`)mlIl=|%-S9CDye*-dLbv@wY!lR*dp3!;+r;)8WJZ#xhuQA1i8a4rSpvI#beB!+ z|2rqZfZaa2+a|uVnHNuh-9EaA$+QeJ7a|8s~?W6k=x_z|w-#in6 z-98$g(Cwqbe|Y8syL~jmCXOcI21(R6O-Ckl`{>VqIm`j97jVCoblXQ282q|@)HE5? zJJi|tr}UubMakfZgKR>AGX-YDe%SZApENGv_LHXXu%9$8;r5ee`28ePlVLhg%oT%Tin4VDFC^+dg+hILcS6a@z^?KwTp=Q&jtZYjFDC4M(m;f-kOBld zZ_Y5An);a3jKq%nNr$(wJ>>W|a={ykx;>CpfB#X+KMXWJJTR=uQ~S9w376nS$SwrY z5l+^JSnNSq>3fx{jg~WB!OTS62cMurPwMT84yAxB?Tk}wp6h+ue$tgrEW^~7OZ0Ri zzVE)&Ap1$BnK`Bq=zh{&5Vru0HTgmu<#olwIl_KYM)UMo(;5n`26jK`fv`iJrMeyV zlk&21*twy;F1?I75uyW#tK1c&41>EF=zh{Hr>C`>C*!G8_mk!zF%#&1(pHGgK=+dt zxFX@!gM6R6B${K2fZIXLb033jmB{OU(iOGE|I2>TPO|CyNf)E? zLTv^u(YV?M*V?G@R5--XCUSboHIne~Jruf23hLMUCc5^p$LpwkH$K68iLxi9kW9N5 zC@>A^Hqc^-FGPcWZuj`!*W%-Z-3Iy<4eLcqPTGws(^o@$x(&3vwY^3>=x(Bk;}dop zs4&KI2y`2007PG5WE*G-!~_smdD#Za&B-y@K(~RmIDMR-N1xvY>O=OqATEiz4Kxq# zO`yGPS0~3D3ZkdAwXNBqw+wos#Z?(*=KidVx(&2A;kJPW?XV3*vOJvmCWGGwl9)(W)!IdaSwIg1=Jw-av5O>XH%ri{1=d&25`;3c8i_t-8_dr7CFwyyL#CN zPc_2Cie0blu1X7@e!UOyi~OoY1N++x?$AJ=aQteJ3sxtx+ajxr{8!Zc1yI}C%gM{= zX|{F4x;dsEhz@gg?y#^&eW{c5y$6=%5wd4rw?XQM!8r6MzlD&fCI)xZf&LMik<{M= z?S$qNKw=!ZOK6vUgk~kPW!%S-Ga6|71|4EYJ9Fq&|#kqviH-S@@E6R0cVHJ^VH#PeF&ek&msFPh<)#5t*fI4Hp*Nz zY!pZ}xykHJQjI)d*HYvMDR!@$Wm+uTH%y+C&1t@U5dA+MufA>JmnMQ)A}Fozh){bF{nqu+U1L2d zLh(sc`RG`9Q<|$OzA4dQMH`AQAZsE;9|Dp0V9u5((QIW=~);U-^WOorFWtOPcs$ zx7@C+QSk*?XCTxGL_UC-0x=fEMXYcoDZwxNb3%QdZ9sLEJ6o7JExIo2T7HPvH5Hjj zKz02B@g0b(nCQB)L5`^gg`!if7_TcZ(?!?yUF-F3MZ3g`8I9mWK&_ai5TAj#ipd^b zr-t0VpydIsIj2$3Jq}_|?O@I1{7H3(g{@v8HQm@XC$2;ey2hdBQIL5r%sHW8{c8~H z-!-R!bni{F)+4hPL|#m1o=#^Tg=y9($Ls~-s^CLX&WGy>f-hm7fEX>zN|+50KY=C^ zhZr1IT}9Q2L{`s(s9EmScKJExaG=Z4EumO7V&VOH9r;&-SbMj@WA9JZe2*(acuF)U zvtIX_U!ue`uX$vsc|p47_2jP=%>#DOe3-QPu~4(Q7R~NF?LGx`321xAg<4x661KND z`Q1UR+YVYWM%%dpqo%Usf2LzP%;E6YzYLk~FtRvB-*A)q3Vx5wUU@mQ)k0Q%IZUMY z=3Mvaz-poH;H_@u3;n%0mbym)y*JlDtQJP@O`j9jGIDR`HO2r1nLomO;dC-_MCZb8 zr87n6HnL7arUQs;PUdsQjDdSlO3K{Y61HZAl$_NqYk-uLx%Ce+TY=84kde6+GBUS1 z?~!9Vg19P>xiuDUG|;)V6k?GuGPjx+vIGE~0Yz@n<|y?bom(>xc5~}GM6L#Ut;$2O z&WMHA>Lv20f!N+VTr1Vw+!bN>TQn!L3ZzdmYu8g^t=D{DsCjz2=6w=05X46ApjqeE zp`qp#qS?)@-bi-`+TNo=t@U{hhV6Zf{86IyrX930DdfS>In-N4pK-GD%|Wbl`$mFqhKmDdBk678KF$Hb5euf*V@ z9CICr&UVJ2dw|-zSoi)<4I5tnMrvrD40;^mYM4pMmw?vrSSVM6Tv$UX1jACwwoXpW)eQ6M&BhoL!la+dkcm132aQp*wzo;j3Kmy&fOB?f`G z=3Gb0t8gy@9aLYE@0Jdx|RQ!`C35y)s1>?NwDLBFBo7ZB^<=9Vtw zsx}eY(<7u*R-@oJN~Njw0vIwP5Nj0N=+*95l4F{J*um*))mhljsm(B+3a4CdqsCUf zn`2%eZZ=2-%M)44qy^IMXmy%mxfkSD8`KDH6?WEB9HP>{U}Yk!!C`b7^oTk}>#iPuf#Sc3n`-m|1kWXD3*tUm!avh`Z zR@8Hh{v2hV4NGTfFucBvduQp-Pd0F3`m>V_9izXh)5tO1umgg8$NcdcOo3zcFi~T# z`b={6urYCan5fX^*uzAZCfs47YZ5`p_ec8BMX?WE9KwFC{Mi$%B-_wM3zuw4Hd7`` zUo1Gl#t2MF4x_cd{(xlbgdVpvB}bBEgCa+I%}saEOtRHn9%}AMnJj(P;`oG~=`6KM zJ36JNf$X(Ujwu0lyW_n= z-R>Ap!tKCrcf4;U-OkMiw#uxgIc5tY_R!PTLU-utkHX;O5<4*V(9`C^U~s8R&_hrE zrVqB5)6zZX;NmMlsBzm2cVTus9hn~JK)I(1VoAEFOZBBC4 zG}S4FGg@U2J^fIqhn}8CW-2gxsOM+bNMp)RW=&sOSnwp`8X#MQ&_bZkJTI4FJQe!a ze(!!OvYSP*)x0&-+*ve#TUhXy*Id#ZI}E61FPC9FwUg#!kgWoQ_vDmHuIpf?sS(Yq z3hmLG{zzO1^n^;t$f1m6h*iQ!FIykTehAQB zRzvg?MtV6L;&ox9mw!WS6Gl4Lt_6`;phs_fd$LR~X^%g8a}W7<06ls$58_>65(-d4p8R(VN~f%wkXN z)f&$VnCz8KNRHlIN46L#vgxzVrQ4%7cREgv-aL_#iq7BLUP*uSM!#0>-jquFP}s%p z`wnuKMvrz=+8@3Nzi_^*FNIkHXty6YA5doN=a%k77uOXw>dRW8w{%CkcLLBOI9`rO zy~z37_;T_G$S@c^&T_remch>eA+^5H9%p$FiTi=x!d@oRq$ueY4+*dJb!1;tttK%7 zMaOnv`5M#&iEV{?oMknc%YYs*xjS4t=1Qg83+=I%J_oat0MyDH;be$bo|?eix)I#<=?*_XvAc7E z^pBCW!urk$zjw~^C8sX@vn^(-xEg^;GDh4~a_+M(=2 zg1DCXgOsNZXIg+WEBO$H897WoMZL_!L2ZZPRTJn zKrjO4sZKd&3@955Q}#6f=!)WdUTA8%(DP&>c)Up z#4yvOrt(BERcaFNdN^wC2GPQ_8{DZfnbCKMhPc99@zW_>k;uFBWD4&~)@Kxa4@8cI zIpwq*b1aCQn$EO^`IywVB&Q;s*#qXp({oHa(Bu}LV7{WLnNCFq9+ZDfM{d8z$%#C` zKeLdV0Zj4+O0GcUYx08|VK$Te8whTPX>kU(0NDF}n0?&J>5taDOOc{cWJJyj#`E80 z2=)Wn2ROkzqRY=A#1P=4pWMME+h-{IRl5It@_4s2hRL$=*kl$8e+wsD{WIvq1@S>A zF<48;nM5^Dfyk#YDLGJ4@@dT1!b3N`)j#X^&75 z6{S>^wn^3!6)Fi?%M!^_5@pvSSt5I7NrXrUU;gjUIiK^)Q~3So_4?d7pL0Ij+4u7R z{8c~8L^I3lO=27zDyM4?x%o?iU!H*-9c7Y^h86$a=)W!5c9Uc`LS@X z{ugfZ zj!Et*f&OGK^fxV!4G}g;Zj;O|yqedKa7kvn7`a9B-c<&38!kFtr3FU@3Ec4VNs zELbc+;#+7d`vb&io2C3V%xB@kXp5hxwaku%s>{;GMwl<{Oz$XlX`Av=o3ON2z!1qAA8=!r-RMTDh-}8}Yj%~OF6LV}MSSE=V=peqTv-v5o zsf*ZjTzTQgVv}sW*6dB+2AIyKFOIH2o*|RY<{hwgK(km~TiD((%I%!u_kVUa#Y)C| zxT2|DxnJHz3-pnFIL81)ll$eDDMQi+)K+F5lu(xxZ~602D35hRP*sO83`rLQUUgX& zT8**+XHcNd2MG$)nJR_vLG{6yGs?5y5M!i3&4G0$V6wWuCK!`)=z{vYo$$|r=;a!& z1aQ!nGZ~^g(P=vi$ceP3mHnfD+w%_J7#G?I+sJrDF z?V%Z>XLH*V=+o1-XDYd04Cy&jv94lDB>>@{yY$y z9;)rHs;M+y(Z-<&iTPCx+I1Q^Uh_br-<$mJs>zW$i-Rvfw9CJ6o3xy*%)YlpnERCb zJstBYFrFmL!}nvB!c$$A{gP*K^dIsXBV7@YHf@uN69Q zrZe3T%BBB1Z)`b8xj_M+1Vquma=)mXMtl`Yo)tx1LQRJxo9Sr8%9=q(vs#!hDEB)% z=DjfP5$3l0F-w}8miGW<<~vJ)i!lEDA>}3G5fs`7X%d*ZOEg_x?tdzpq+~Sjo8uh@ zn3Cb>Xp{PeO2$ya2LsVRLnT9^V%l8OiZ50TR602QVYGkURl`C!?*+^$q$dJPoGag2 zT~z_MK>I16-LWf;S>AAwJiOeW=OpKx&G-p0w!6|v!yLA~7vbH2=%RhAb7*(cY2fOL zOq?$*_v1a(_M70G4j9{K2ldOj>g{hkCt$s$qV2K$Qc5!2t1ipmP0{fQ^8NN8pFsOQ zV6wEfS{U)1E9gu+mS^`8n`G7J;B(mL11wWLWyp#B9*qV%O;HZSPy{D!$#InQcSt2F*QXx=k0{(Eh0Gr7BzYcIneAY;5nav3;Deo9DvWUO9&aobAiTR;BFmme_s+=5*1w zX$f2{lxtDI)uQaIs>C@mtnVnNZ}bsxmMCY9KF-pTvH?~4N;N%9PL?ZTaCfx{|Sa zvKngc8eOTjnJ8Qpj>6U9C|sjtX8ZKoaD1){$LIQRe5Quuv#M0%vx4|kM!Z9@bELI% zS9PCjT6gwy8-ycEPm_#^pUe6bjiUX2)5ucu(W5K+u{Q%WG0`5S(Qaa*GTNHuot9 zQ;;)3emtMeN5H=j$4SRk(iOgu^kV-H{^ z9zAiK3gj6wnRvVb_6pGK8Wqt2M(H!?72>z5B3RHb=+c0J>nTUrG3QAo_JE4x&y@w%8O{s)n%3MTg-pEY1E|G)M}pfb(hLUi2^A zX0EEL+y&&B5SgntxhTgw7>Ev1ar?~G&6{D{RbH0oToqy{ zfBu7|+0#X~7&Zzi!$i{WO7G^#G72$6jhL$NJ?Ekfm_L7cX~_x%g+`B;Dsi?~DX~~t z>K}NHCh{t@JO`NZk)z{cpmO}<6RTf9yG<;ctQ29(tZ7R$ge5_BQQfR*x0P1!fo5x3 za@)OGUaQ&cWbhXWTy+dif;>`M{P?+;8M!aZ%ek0o4UqdYJbnQ_hk-Q){2Cy=aC8&o zK#-X@ZW5#g$TK*e5~MxIZX7=f(ix>W@I&NtJnp zO-JVw3p8rVQ2mcDxg!u7bsBFUXGT!6tZC}L6Hx3WSq}CeEscF8Oj5w2qtr^5eNtay zO|`VOIyvh71*udd<}1xQsDBxasIAK~nj<83freZRM+*%#qd++;^?(M-xU#DW)K3>h z4)Yu0|^|l87GDRNw8yWe0h;45W>_ykAe}`;l6_E#84WaDW0Spr(kp+F`C~6}$v&vWB>Tz3Io<#i%wg8)4=$;f+m=Tv z@K_|CF&S46DX|A*E~P;N3O-2Vc~MFJjSV>}J(Btd6m)(L&x@_+L8I8s2MR8|7tf(3 zW+e109-oM(>9>bj&%(>t5(I2k4!52U;xR=$&8TXG^=v(c%`m`TcfQnm))<@P{Vkqm zh%&Oo+-yGKiX87)z+QJAWleerkNd>aocJ1TV-y)j&o7?lrRj>tUXP~QviX2eDNG-J+H)Lym!cAy-s5CpV-WDcX z!AjF60mx1&y zJ6>VzRLPhIFnfyaakLdgwh@Qp7zX4So;~=?0lOJ6+n={;sps|~GTHvTSVYS9=bMnc z0hl#oN9KFZWz8kF?y$no(EbGI_Gj4!n*uyeqpmWkRs6C2xkZ%7_GkHIx-h^*;v^g= z3LmhS~mXsK`FspSv}2_TBzGRejBhba~|n-`h&s+gFosE-^>>=A&dT zP`-rFD+sk$^k$cs^MdaY@-|?GaBWpFORmuRkeIPf@=B5yi2kkN;V#Mcge^6M=NZ)% zERoz&lKmK3&ALiQq;vpmq93cIJkPj4)2*nMg_xlbUnC5?F3AIYzg|eeGN%x4FEOVO zgB9rygM97>oqtD3_Sw*yQR*%5&j3smFAX#;fi4)OzCrjpAX=&6E{bLW#`M)rL$l;Qn0uE^rqJ{N=FH0bYi&Wz^@P@k#H7j~!p|2P8P0sH zG!ai8NDNZt9>VVgq80na%PvcmZ-My7K>15n`4$*9i(r{N{GozLG*J$TQQr0{nq|N! z_tsehxn0S-gMsoZ2)_)7Cihb=10l+Tyd`?_U>EbZt@0HxEOCOHsbB`x(E5;=+-iJv zj&~3c_4X5NVpXdzGP9R5jQ8WEvAq?jGFM9GX)f}SW_5`b^5@SeiOq(oY71o`($51d z=XXk<Lv$n%-L~EqC|3(jlE{^%B^r>$J2x=5 zD9&yNvrfZ=U|Cg~2|?>(e?S$1RFvlf^)rN^ZLvSssUL;v;XwTUkb1jo)C5OY;3dP=@N2@q0HSk4l69=9Y3Vqt1$hyau@j2@!zAM+11hHG zc(nnm?g;@sHSpZ8@iz7dXMn8 zMZ=N%<(Fx>jD|%UY|=8<6b(&E{jy;ihvW@ZOu)?d9bLBPToszJfwq&OJqd_Dt1`pI z-iu$TtISsJ~o`D$tYy;GZiuM z8LU|-Q`Cc*%@Cg)zhehmy8dH|8oy1`N$iZj5kg{LDssezsCNp;Zh5wKNgtWX=9}-bw=S6^=24+;?Wmi)~6X0g)Uua9r=4w2f&f}o5s6o;-{I8V)=MV+r@yr zx$$YHpLm`$J;yr$u$MGG&0Hp)>u=d;j>H)@!T>a$9oYdFsZS{dbXLxbO$If zsj@XwT~cM@&CHg7g1W5T`P(uzk74fmI39Ncb_MwJj9vJ)_c*@DXh_ri`{f9$M^tykK>RMy~lAtiQl}tO(uJf zev0f0lZ_wa2x+uUr;Na|u1(pRd;8I1!NNkf! z6_-Fi6fl=6=HR#$Fb_C9hvQkmMo&(v$sZ%l-9(S;6pdW;c0lwcV4@cwVqJhpTpP~g zo(N##Is(T~K_spZ;#eq%#C0Q%^@7NCisbDy=zxh{7aXSo=Hu(m9?npxW%nEVu+3eq zmg1qWP3(z+A29grlP%aF^+|R z83@YJKAYN=lG@y=ScU{M4*3I`y?_^cT#4jX#hV0cj}(7a{q3!a3lx)E6?>|vqF<^1 zKDR13v&qhQ)mQFHtL{`pPtXFs&y@;!?cfai@=fr4JL%T?Fzed?D|e;>4&%75{aYe2 z`z@1sQOc22z>2#lzJRHKj*h2^l_My=t^%G2?ePF5RL;1K3nXt5$$w@tHE9Zr1KO$u~he-AFc9Hsab~QTBgEa=aw;fp-_?d(K5OZT@8S!;Z}`uuUJ9TQmVV zLMvkGmSldv90R)$v;t*Ifjkp(7C!YBkQjhJ2&6BL-hi1+IWgIRKvl@qj{&hSh;!9! z>K2%00d@kgK8Q!97;wOOeqAv@rs2;*^b8RFP-)yqh;?wU(MW9Aq54y{+S=c8n%xz~dUQhMHHV0V}Wk zjj!rm!NP*M-E?S4)nmPbf;cUK#&68Rm&^-iV%v1U%rk}t)@^|%82PUw{52r{l!i-r z=dXPAue_&(HhY)qNUP1imrejM>oRqMJlX}Vf0SxHgzy7|M&`N=l!k5Du-1Wu_Xpy) zYPf2xCff;a6vQcONvGx|`CpDB9p@61d%yfF>I#e4|3{# ztPlbI2Oxjp_(hPfKrXnSiU#<*K{nucRS=JXcgqL3YXbQBAd7G;0MgY#uG7p&*9R$8 zyQ?1x(uL@c#>5(pL8K3eZqpXduDn$}RO!~}DuYEj+aT>xdR|+Wr0iDWKa4!nAmuG2 znFQ_+XHfJmwI(=EwdiPDK4ncX@mb_QCNAW>To0>IS!{SqfjO|mpT+>)TnX!duJ(Yr z5>|<0ydZKVY$cB6g2%8qpJS>E|}|A_q+M! z#cozMiQjA3MwQ6%_le`D{}sph@7mhhxmDIh#IV#(Od^9Oy17+pCN#Gy&5V#)g`HcK zW~Lg%%pyuN_nEoX>=ThvmPtNI-LMm_ayz`Y=XPo+VkTNOmCQ`EYGv%X9kZiUTM_eS zKpjQQ4pN1kb!3~Jqq-Vmc8uy}%r2DOF{-b6%r;E}Ma;CVp`DP}Xexot?#tjU$(Q3VP;Yn3|8^C@$(?!QuxokROcuQp<>XGk*=~ZkJbkk8cUr^- z4WL*1)BVMBCmt)svp)HNfXl_R^kIhG4>6E66U1lICcQf?=9&>;Cx|Po=eLj2*a3Ee z_-r~)vUb=KT5-Tm5Lc$n1aTc6%K$q;d@dcHAU>aV6T}I2g19PeCWs3k=Qc86Cy1-l zW`fvlDf=~mogltoDRqMQqQ(9o_*cMA5VJEnL5yVl51+P+1a^YxXZ#BvR}XX1Kd;K8 zyeX-;@LD%PT%UFm#EEu-_(s}H5RZF;Gdn=}f|Go2;#F>fxFu~Sh?@y{7cf2W!X;J} z6U2_JE`6BJ45-w8GWjHt1WZ5a=(0TL`bR(60@~&PjgL$am#AbWh$4AwI(NzxB+CS` zA5^^oGlL2cnKZqQ?`jE=JLp}WVx|I^Nz)P>j|d`@rtfilC5TL#&Ure=>j{_%;szYA z3L+E4BbSjQfSDjVdt!lQK@8+8=##NcCWyB{KMODu#FaQ!0A_-?4aXM1Mz84#n{ae_ zClfvS{<(`@a(RxI08I1(L?(y>ZE+keh{Sa+ zj#+|8^mgI+1~B*Sojn{E7JJ;J@VFJ+$p_4&a3+pvg2<%s4;*_0kxyN8c$Q}u0W&GQ z1jk@OWK#GVju!+m_w83wsDQi~qC@W64+k3rn3>^wI5r3(Gs6>}W1j%1ni;N!>DMcD zX1I=^HGr8J?#A(hATl#N?0FUm05dZj6eP3P36=8wb0nCV;RI;L0bcBGB{JVXCs+nn zvV!=q`rDad2gPJ&SV&$eRrIcBZBDwGq09;OY)iG78zw zhJ5o}riK&bT=f4rHGFTWt9nf(YHz1ApGXOkq4PaNYXM-Yo}9*Ai1ANelMLliblXl-U-z=PO_uR@|^1*l2fa&0-&XrNoPN8s<>JtlDDNpQ$rV4 zEuhMSP5wfIU^_LetqmNXln^n0q%*%>je#;XY=g2RfIJf-Go)w1mH}pJxCh6NfSDRP zG1;DTS$$|^YWO#Cu9_M)Ud=%ez>dT=E(>b!DHy=i@K`ZGriR@i>Iy_ZRT?)nlpWgY zGEwUS%lVL->EHxNF9*zYa2t-zfSnGmSniZKSE<@3)4`WqjC;Jmf*r8mbZ~#3@N_W# zl-efK!Ppu_WDfW>Ql(&HY`nGV7k@1o4WDpju2SOtLppQDHCi&pW5N}HDRYi4%X6-O zOt|ib_AWprw^hmP3yb7m()Djba@DlRh5KIeRKlyKMRu7au&axNZck@+IJ;g&$IH&H zVM@m`iMsw#V!wrUN0nXU0?Cyk`P+2nc=}IM7m_d1!2u@5j*exL|B~DS+U9`9IIhXg zH7k+4CtZIslB;6u!m;qQePSFNqwR-G1aE`KwO3bb?XnZWirySZzs^krqnWCS;Ezwa zTy?Iz4Nai6=}Vmc1>*nHa5oW@4FfmYVF^LfDL<1x z{8nAFyou(Pr)(cErun4 zKLcd&yX@Zs{v9CC;CM=qhd?r$=+gvQ2J+^6yyXn|FN4h4OveSJ-vVi(DN^S{ko4#L z)YF_x?*wV@kUbzHl-Bf&F4;=GEvJ)g2WI@wuc!FQ-mO>dn(UnwVO^Q z;pP(b!Urtk067nY=$Iu!*SuX;QJy$%h%6^i3cF-}pxUbxVee)9St3lA2UUBuXy}m1eqA(3liU~1-avd)h}$z~y59@9 zb_rMaOe#5zRFE^>dB#W1a?gWzmS}IQ{O&BbImS_~!QTw1pLA_?moCWZlc~88Igu6w zWq(8g1oBKsJA94_@uDCn zf*kP)2ZsRv43P3qsZT)J*&t^jy_te(Ig!dtImN{q7~2X7t5)`^-hl2r`ZOS)XAsU>bEt zM-#0a|L86%p`8d|(&0J~T>T28SLBg@EJoC^iEr+A2Xozcccrbm-@PiZsZwkjn<;)? zY?5mh3z2^>V6ItwiQ^L>&ydMAi&M5Rc?6nmQW1|C<$M5z(We(bM^%NM6Zt_2c}_%h zjmyM-7F|+T<{@Y{5I<47C)3oLIy_HHKWW<)t~WD&=NsXYI=mTt^}|2&;Yuare7IKMHEXP7j>;JXJo-f-8bLUKKE6ld_ul^T(MY6l^ z)tTga)4OFCk zlov2mt6af|yP=bzn)`(90Sh|Eyq64>C``=WL85RQ=MfFwF)ik8)8O%5;;1ieaO^3| zz4H~GZo0)bVFcG&$67ttbuQE3r>}~66;;7}myo!eHq%r4d2ZIv;Km~EA@ikNMcE7ApWkjp;BJWfN*w#s-#%(lve zbiU}Z+bR<^#B82SvWxHbK7XZMthbvdlWmAS^R_UpXWkx5`+N(I?S^K^JEECXaj(G_ zmk^;rHbM(Z?Z&bW3)#~cyuj^g3`+MB*7wPn=K#B_Fj#jL?8W0D);O=4?1a3fvS{>X zp> zr-0vdDL;Fv+o)Gt|DqSzUg9me8QZQ-7d}20+rK5K&u$*L1tOn<%*1gMkSAm{e#1vB zi0;y;2mSEtGy?zL4|~-PTtAbrRX~v(l=4PI4tu$BX2CHEaZ&KK>QY1g4H!GtnDfWc5EL1bBl3H_AkQQA;@=fW&J@Yj!?nCOGfJuu# zaO?(5t!W#ig>xB!{79|oiGZrK=<^4IV8EtDZ#9zb0a54Dq7s7ffJuwhI9338tA#|; zqVP`!cYsNYi&X?4D%G@jPb`+S=nGA6Ai8|Nw2%l#2dbw_3;BRDN7I+fdYDc`It5wP zbPl@jNc)H1p|WQqcb3S0eZP8hnPcvu%)Zx8nD0#cmpJB)Fs?U-?Z+(ZOD0z52Fx>r z`L4A8h+|It53K@=_G6YDHt!4!37DO$HbL^|FG%})oS^myX)A)pE4{1wl00Ss;E6!c zYO!JwQMi-%%N*q*7zYAoknQMLk(~=GkNlbRUqSejKYQiS~vE89GdPg;rL(wk#X_j2Gn%`Did8PU` zG(VK~Pq|CuyaS0_o#ywIj@BBwAkL@!%>h;*Iya=bYG@}*quT-vOGLxNY5y6g;c7T1 z1LlIp_CSMkrNm190&UMjyHd2dt~Q*7UMyEz!bh1@J zhCTlg`2schoi8>%S5^%KyXpYVTx95`h#9(d4-egXgokcD!$Y@o()!ux{%QZFY;F28 zJ#Ru$nT|o{-R)GD=@@kUI|P^OK(TlzNcD8R+_r9XT0=vOQMD8?qtn`Ilo_4YQN);A zp@=!AQ#WjGJsV<2nkTrCX2-OzpUyZcZNJCiH8|sVEXmb@W|oc1b#`LRK=Zr%-9R(f z4m7`|sB8u7Kr>GVn)arAzO{Ogm+<-lIgxb9punx!aEr7qT`f%CKcCK zW*O<3#>=Eftw6eS*~Mt2ADPbn$eDBo!a9qms9!-0{1lmV|Xfu`QTBEAgwUdVU-bP8Mlhgi#Xfr*^M{vFan0DRK@oDfYLhW6f zSi)-wL|5;pp{nP&Q$w=6N;v&aX+M{0U^LtW=e2;*&^@5r7}l_h@SUPz^L`pk9AZyu z*?FDigL=p%6J!OXjS}C>2N939-exht6;^2&FSGtRe!NAfah&>Jjbp4@HCxbycj>?K zUi)9X(fT1?Ox#cB4gbYQ0mv+UgjCyFY&MT07d+q^!mY)2G9F{q+uv4fXW6D9{Jc2S z5PqQ{rXl>Q*q(7T4dM1;a~e)xAPd^Ey~VCA+uaDs?^?xeU$%|dAT5%S`8^i7w(Q+v zGig3Jp70t0wk_LKY>(pEw(LD?#f1c)2joaY*i}U`A8d%C4~z42|HeBaKX*fP2asoi z@`&`OU>^d0IY^zHgqH#QMj&%=+$2bIki9r|17&SN(x>rrm8vn-(dkSC+Jo(+?~45) z3sEmE#EFT7cRXNkv<_DZ41LrUF#T4XeV1bz0>dC-YSa_8qm-1@1oKyoYwyJ`C#hs8faew;*(UO)L};JW*3bPt}s4ps7wS-Z8HWVKP9mPYo>y ziIEn|R3ijtE?7kyp{7oazaeXqe;S0dtRD`Mk= zw!{?K_|y9x_+Ylz&Ws7|GnL-bZMGluA+A!ZD5W^w4jzq4$}!RDR6MaBN%f7|r2uc|!4 zHSzyh4=>Y-liz;2xP{o|%Xby6+3Di@O-`6fo(Wr8qKL7yEL_RU!vKCt%#SIcR0jbi)@K`G9cbsG_i_!TajsH zyau~jlkwMD;w>55lCD&>k@-hH=30}rMW$@j%}sbIz#c1JTQpem@KZeA7Eg1mcx{on zXgfA9;SC1tx!`q0=3MaM`Sj3$Enw@5!i~`z)}&bk&j9Sf+xLsoCq+GPIUY{~)gCk*!a_Ka7plC`EU zgM_J^MI1gTYLuivMQ$YM1C+fFL~aL(B@BJ%{3q>A@Rm;oW_|N zS3-zj>^;pgIgWQA8LzVA^HqYK%r+fBPAt>r>O9D7v%0M4f~tAra&4|M-Cu$DAtk;e zAb!ZUPWB}K{xs#RwZy5JX4T|>u+{`ml=jSW-e5Uxr+TApT57qCNqjcy~#`)VrQgx73to`y+s^2oFqemiK_qnK>tK*xz#_>wx>24lfu!cbkR8H zRm5CeWcPsP1!68Px~M9(hFW9o5b`onK3tae&sDB>1Fmz6%n;G)>lfD7-*qOhN&kDQ znjLxECEKY*L#p(h=8PNlCd9`n@i77MaYdo`n%joev~!%jdcxUQIY$SajjbA+I*p62 ztje7xj&nmjI4hKMWx!csbz07fqM?S#Ju&FN!bc$-uNp~0p@MLQbo+0er1Z7xBSW# zF>m-)SLA;()2^Y288+5bJ*J}9Qa$G3zS=g#X3aY(Kecu-%y*@-Q>l}2+<@b>4meih zFhk4rDZf^8QrcbzYnDpc>tG%5vX{orP3fhvK7rRI&g4uiEy-th-b8 z#VoJEH?=TeZ_*U8%A@R!@GbyqYyy$DLHunvMwBGH z{(%1jNaNCkR}1j}1ZiHzs78>SC$ha^HR#I#zXasDIxLg{etnQy6)cp2)MyG~w$)nW zs97)JJy{o$P9U`#CA{i@-wWhS96bd&ALJGsGXxm{vJuC6pvFWHf97u!YfLka%1Jfm z8pm~${QGend;qgpz+VdTKOEl*vI=DLfeG(A6^NJK z&F|%HY<|@F6QoWynVBx&=YnIcce)hhQl&9n|0YdsUWN$L-DaiVFqJ+1Y3=$?ZJh8r z0d|f4!+>;wbZ_sb{GWwTCZl5^x&*NET~!w%F!&3l<7(GBEOgr+rxM-~h~K)8XcO(SmNr4MJm(?>&7a>S zm3@_{krB^TuwMyy)hkH2E=X^*oH1HM5GfVL%5Ex(ixhIos|#6x)3l{Iywe5 zOuYjuza)Gsz^A0FNs<6EqA^Qq(Nk1<@I|H>`+x36M_cCU@L@{L-mFaTk4~j#V6Qnz zS?4ecAz)5Yo{OUgkY~u`B;|Wx8-Qk0RK#Q$)r@$LcGfgK(JE&)=LMQ7MbojV)bCDH ztELIB1zN2-CgP*_)g(u^o>el=&WffssqCYkAx<*3 zE^bCa1EPzxNV~L?RSvVCx;Zd&moOifN*%ufW;um$8jL3cWmYfsT`@q#PglGhlYEgN$SZwNIsf5kYd4q-k>+dcYhd>4Bpgpr=THIKt+?q8zp*d^>IrBWxZ z)ZE_$>sx@y{mc;wFBdSmKSr4%o^xqLP43@^{;J%c3e$Cf&Hbci3)3}G=XTQ{gJ3aW za(^?9w}HF`LL#|;NDJm@fXSl+0}&e~TykG5mfXJrno&UXseN-_BOI+zZ_R&wBuBpc zB7a8ufTL~lXL(5(QJ;~@zS2owgXC94`sRI;(<~So=Ap{$du@feYbtw{WA=|^$4Qu< z+mAWePrp219xlw?QrUYPb8DDe0r6cSX3sQdwacsGnKtlUbG*x=&mlq=NYi9g4{m^q&4KN0MnDt36grXh-El!VtP5@BZ2s>A(7e=y%6Nd zE@8PmRlIJsX6X~KECx)LRy!u){Rv{SbZwx=xlFq7BU#!60aaN#0LFfR&C*wb{Al_% z)GkY}hu~_!Wa&#dRsnhaghaCRZ?L_9$cX!?;qITWU|} zN}9=1nf^3|WftWAIUv77`U_yPw3&)!?N`Jy9WpUJqIJS+3d9?RL{dIvmNWyxZ(c)K zCCHT!4FSxEu!)Z3czpF;gx!~l6}(6UWq4fKCgEKM7^RLb=52v47!m$T_>Vwz_`f8A z)zC^c_+HaZXm}tM8{{-}IF83t0W$z^uXGX5xsqCh0&TOPodICLZLAA+4I~d2$%|6) zpG5Lnf|fz`6cBkHWGjx(1X&7_+m;vskq1Cp;Ajry83CK{ITNfm;BN()gkypr-+|nR z;~qiwf~>*u8h|C=tmZ0_T0(m(mMlxfX1z>_|COMK{Op2sClIOeg6AFFj@?KgQV4PZ zjsb%BAPaEJ2l9-RM)-UP_8#CL4pP#d$_DstKnCLIFGwelyKvkN)R(QdH9Zd_4I9#D^SL)duqUW0AaBS!m#3Y1}%yIk7Zl z28`rS0?GZtlCLFvib(FgkL068^7cUT43XT%UjKao>gSx)oq^QVVX1!*{wolz3`y1A zlkD-TO{a_fRe5>c310u%RP2CPvHW?0TAV=73q+QJjKDEekOx2>!||{n^FY4Cu>;66 z0@mPjz=@0RIFGGlr6g|BFuZGz-2z@%CIfUFB- zL5VNyz-SMMPY=aTbEC1caC$)`SI>UkNj@2l69FUn@IdmCu;eL(PXeL~LXv}YGnvvl zP_RW5)UcWI98AwR;q3$AN!G{$vwtOgw+LUdpYY2hOCXdy-=Vy5udS@F-JgohlT4AO zr};?NZEMlJlOuLj7OmdvdosbNoy9L@$foLYw^t!IVOLn15RB8yBrLMLnC5ZTgsUE{c z^JK`fJ5q*#$Y_wpI1UkHFh~y^-2^!sWCD(HfEQ0{$)3aRMr@8EXV5`Dgh(+#KA*_d zqu=BRyg##&ISem|T*prj1w)n#H>=ly%JiftX-U9N z7`|~zwgpO@%Vm?#vZ7IvIvIn2_>cQ2iLKQ&nPO66J;JpX#5UqB+CpNK*HAFZ{)>uhg<%*r5Lu@$`*Ft3^_>|>!Qdn>=*Sm zl;+G<>~i&Qe+zg1tOQv?l&!2uUgG=5=xCaG@#n*$z6puCHzX>h;|CG7=D$S6&QvNf zWUHl;kxguv`b)9dtNs+5m|M-0BS=TE2udPy!MT;&7V9pLnBFr4Gn*z>@Gr-|t*&m| z#p-Exh(X;fE2>2Fp6t+9oN~7w1H1hp*Gv~-pJp`vKwielf!b`x=pPQ z>_V>H)cPnHTD$*PL(IbWCmLcFzCTTdcDO#XA$C!FXHs{#b|u-IXm}F(*Qx$i>zw{| z$up}qU)I}YWxF5ohE?fhPQL-p6-j$yVSK>3BH6#n@@Lf~v+J-@tuT+Ty^Qh(v89Mu zY(*^i#~GKr_3n(zVqQsMvD=+-c~qCVtwE1ju{mPA6A~qV5&c9mKXMA*M^cB50P@7Q ztT#So1Nli`8e*ZYW|9xWG}9#p>TPDsOrBR2rCA#P2IHQC_$o`hL=OU8s5L$^fAJe` zrT(hq>0*3;^!EYmR~fHLjuOw;@mLMm<@>AmS-!uruKT)oT*H*aZC;eXgigg4rZ@3WLmGq}Ov4@>PPXWX;VX@|s)E`uAmbXB- z?n{mfoR6cOYO-;iQu1 zi(#MQv0gmQDV$XD3h`WaYQno8C@}FUvWCt$E#XZB3QW9;t>@s=S!xFCd7X69oYy(I zbHZy4*g}=jLS-L%FG=Rh9+s@H+jsm*ZTvPt{{~>+@hh__a9kITp8)n9zj8~d@Ay@> z*kXbg0`?uhlau<6--${8DNPakj^9a1f7}Uncy1qh?^5MazM4_e)OX!GehreP2Q=hX zDBtX{$B7yy%{zWsXC%DeP*uL`13t$2j(f-Nh@^SPZ!DoBfFsX7(W-Hs@7_20)XiXy z2q#PB^5h55ybpNhrKM~o<_*#hNtJ_>nQj{?`10!5Ul9EXn5Q!w9b2BtpH;dcIFP(rBsWQB7CXruq3Qq_$&N0|bFP0#9t!P6MskikC0J7>Gc^#&Et0wB z8Nu05%mBwS&yHVKiZ^}2TBoC;u`*1H?W?SjZNg1c~hBZxe$*RgxTYY&)b z1Q+0#Cy2bW_Y;ntfH~>oY>5R{1=jP7;B{}2mU7akbq|hV0p_I7Kpf`*=A_Rw9M=P$ zc_nd|MvWHbBcjGLf>X(76TM{+Jpq{L1&BN&7$6eY-H`ksWD?iodZHFEaUF|ev>+1K zCvZF_h{Sa_jvoY(=r!+^@D2maGlI?@K7=IpxMu{15z<<9KVZ;Fts6(%mecWpPBFu1k5vnU2&W)h&&^BBaZ6;(;pnz!B!D&*nNyjo)IjQ zWR^X-kD>Vx@M3+HNS+aFO0bME8BWD7P=EW3U_voDh19c(D*C?qyJrN=en~Y(^E@EP z6Z6-}e@>%?4jy^YZkqeLbmT17C5fHsXB-`8^@Ps79@q$)27uP%5h{&okWjTr7LRt)PJ!xVz|><$ zSB)vTP2FJ6(@7oz;(mJe85P52D9 z4@A67NM8w3cNesN4>h6L*_3s_n6Or9SS|l7WI`q3R{-&!HQbo6d0!Kfa*WdT9e&_y ziFNYlcS!nYzDIV-k;-)lTLYLQmAi0!FNhqe3=la|S#nOoO9SRe<*_)927Eb9IRwWb zLCyr3f#XIX`kkg=a8_>fQMOg1=vEb3Q+^BUxscwG!}mK)Sxtt3uG7o$`jH#{8Oi+Z zo3Z`_f?h_~N+7Zxq|vzvuL6jy5+)oYfjqzmk?`c0kxq2ro|N zEQPRY4gM7mSAAQoMBl0B zlQX%WLl%*r2InQbdO+kokdtwo1o*o^#^M+aL|vi=1?4%NA)11+%uN^VN{%DW4e}!H zbdO2;i=|Y^Lef$MFA?FltA!F<*F;1gQP1Em;>N1^s-I}^-&bE^2Wo-|XMKjIh~z|C~*8<6KD-Pf6R7ur)=UM62As4o}V z(|V_Uh@rR2{O;w#ZdFr)SJVPy=xd4?3tkUfuqJH5+OP%h73ysI!$PJ6d#^{qGOKb6 z&rQo;Tk}h)nt#(rObLt)%L-2v8$KYTHvx7|xUA3|%r7}V;S~XP_`bX_e5C6cYhgEn zI|DhA{7w&Z!WZ~H(sPCRk)3$oNcdDB&-m`eXC2sUfFC6-;se=p1pH!7<`(BX=3(};un%>fd4v3PaItZ*#vS6ju}ABZ6IFy2Y%1c zsHA@b8K6kKy*gHPk|&xJdA)wj%Mi~*-uE;^92a-wK?ZVT)uf0l%_frnR|ak#Noo$! z415Wpw$=?PJg+JPFA8Vi&~OG03uoXZ;S3xe&cN|511lv1kC9UaXIquOPTM~NQ=hpE zJiE{wY2Hjay$je3JiBnL7?v5t7z(f%c+Nf*gl+r$A>epv&+D4l7V%rqq3=0SyQigSJl9`x3~;!YMbu&NvC%Jn}JOW&C%)f z5ay(S&A?{+WZ>b}!ZQdy4akuq;q-7FZY>#jBpFyA?;8le4#+dUP4QU+_6p#)28mw8 za0u`_fpo{wMUY+~vvAx9)I1-=OON39aE(g(3XtO!iPu-hDUyK)DNiEfZw0pB-5%)wt)R2fzq+;w9%z~aW6a(HJ6bR&{eLg8hu=*n{D+2^ zVZfgSp<%%PG{hWk|Es{Bxj$4If@q;{mzWZT{&~OKxfuP*tppvaM)_YzqDVR%TF^n# zA^*FD1{q`$#hjjRY-MJ@P)tY@)%N~Mki#^jtQSaAMT{NI6fvWT=8BkM&k>54VNZ*K z&^um778HI@naVbY?2l41bI87>BIb~ND@Dv9`=gb|9I`(~Z8L}Lk5$ARvTv=3Ny;{g zn4~-|oRn>Ch#gUVQQ)VJXH@JjEQqBZnSkRF96S2rSVPbWt#Pc!VHWXs7WlPBeeS-E z(y>6lSzlI%8o;0ZHVWR7)j57ry}er3!ehVa)VrWWR^_}}^8&8{&TFxF{jdmyBMXW} zgjeeg@oJKf*Mx$UDL|i*cK*bIA}eK!gkO<|*F5L78!vlU|Iq?_8(SZmSfZ$xiCqOl zQp?5^Q#NFvm@F`RAofe7$%2ur)o6uDX=a#wE>^^(ayp#KnQ$tXgj2b~rC@^sD$F}~ zq3xG^TVcw+bQSiOe6#D3zv?;@YzIK*doRD{+i&ui3iDfjsKV^cw^hmH^6&Yf3iF4C zn1cFeeyGA!E6@rPFYtHwwj(_+(}uyk-${*{{uM?U)t&NBlXS2Zrc?efQ(+FO1MMkR zW_GpXKu%S}Xgf_2lU$wE4pS|s{)uNjsrdo8*xAO#3EqdhJs${A~ z&wN{zOiuI)r$p~?O7yWIwg`WluOABf0>^r}O!88GEcI9?9IxibYBeL`_V&l6`Fi`~ z1o0XpRpi$E>bBVR3cT)eUPHvo6y7EIrMB=+z{{4zXYzB5mwr(89Tn|mp6A$tUq=%? ze>;h8TAVuh9ZX?2sac_kVN$bRI5q2Qh>3rLaQqvF4I0~+9t`| zb6c%s=APRNikN$DFDhd0xxJ)@ntN_9Ylyk$_KG5{?j+i;DpGs}$ZNUz%}%9z8Yf-J z>nh+HLDuBjPGF`WYn5ldAnO!aD9Cz6mJ0HQBF_o3L6O%5c~cS7#B5YOrn7lV^_ZJ> zZ`%+%r1&gPYxOrco}7=Ap?TS<4_4!NA4fMi)ch8XBW1nj;k=w$4}9wy-5+zc(R~Il z+jjn%tG&3rIrqQZ?7bC?3_cVd(<&F`X{-EQ;8oLkc@#9;DmTv4R=F52EBVMg+bY*; zBvj^8->viX3vjIhualhDsR85Zj3*jwIRgOO+7z;fa@Jz|e zu{_u9!-KcwsSJ2t3#_?Qt zaIMY*iOyAnngyH@H|4)9O5$2o3xn zON0jgOO(vCI*%)2MmS3qF|E!M%41rcClj`HGp){3ikMdC>4a@7O)XufA*PltPlSeq z&)5)KO9zsBX5e3us{{XrILyGmGeKtH-__;t&|JUPP?FCU_7@U5@E@~J!NuDa+~GmN zt%S$c(zg;i@V`0m`p9`bAYNwdv@@Xt|5wG!4E%pdga-b;qhrVbOyW^)eMB$kj1g9A@uwb!1GUpBQc@$7419P1cT6#ANMwMNHOCNZ1D0bSM)w z#H9bEaQat<(|>X}{pTjM_S~6Z>~rYdSay-MY{{;OsnV0|Kh`8C?{QJSR=@IkUcnd3vwMujZvIC z0sLD)+Tl1(kOd%vaSRmX5s>?F+zp(&9Ar|>m-+Q-Zj|5XI~pB%npd`S;z!_{l!$(& zAz6XzAd}sgdu^id$=w?1&yf2GU?LqI%~n2OBHb9rA%aMxyWuzks3Gyqn%T)jc|0Ct z02AevIGz?nqMUyj$F%_y<)d)45JaMUHjc9dktk2WFm?V-7Rh~WR$!3~3 z-3M`4Tr!8TS1UCaE~R|jmhhYWOj5}n+Tn;h7%-dBj*gXf+VEgMd^X`X0k_#KLODtA*qhrFkcjyy+xR3 zCj3Q?`S7s`?@%DRU_WL#gKpyNY~>y9b6}pA@JpnkN}MObI1Vu9mlJ9`>xt?r(IOSZ ze>t>Ii?Z_l;wj2F|Eng*`QM|_K^&xFlOvHM$P4*2LG%ly2?qZ&nuP}cGyZe%A3sc0 z+Wo}OjwdR|Xd_(X7uN_MljvR52p_8rs%eDVC}JAn;}kKCaNBSr+)hJGBiugR2p=DA zgii=J!e_ZgxW6>QP3K`*6Kk1&tt}3JYeGimKmMC*gqtKz5mP@SIX?nyBitl$iFnq$ zf~N-n+Xx@FPb1vaTIf}i_PnMl$o48^J^F}5{=F!O+)Pj(_v@j%T#K)gC}(m$Qz zXT6$ZZXqmFB+GNIVDGwb!XNyrmcbX1vl@u5QhK*{J)T4}f?PnB=UlAinLq#Rgum1Y z+K!MfMUb%O{^3H_qp|6!$n4>scT_4{q7_*I>9H4_4_-&`(!{-l)yWaJ*S~y#=T)2? z5e>VxiI3;qsuP{a{E2^Md*_cF1wlh`zD=sF1&(=%!?P9V7PH6a9W{}QWWX`=>WN=< z@w*PZQv9~g7r(mVw-fvepyy>?MZZE(*L4ziRDolDqbyboD88L6c?tXlp#EmmIeV({ z6-%LLzWtAE`7k9B-9hk9=)M9@*bQQQf5vf4CC80{`dNQhN#Jv7BB6cJ8YD#fere;m z)vjCR_}2!9Y@)S3w_$zEgJ^uLZh8>Lk;s2BE}4&0o5zq4rplI8)%rtfg<5JYS` z;3~2XFgBfs<6Iz5_>E1sgWU!gn_k87JPgc(^f}^gHn;n!a~%|0mu)lr!-zVdQK@9u%^R!XabA$kk!w<}h+= zC@S#>!pO2P^0Ff4{A@-1YFdCZPi#VjPKiXM>KscgJ0&Bvtf9K z@JF9`seq?TB$YfmI^CPXkV6u|kwroKonxr$4)zD)%HM{Mx zsPIZ}ZG*dgMgm)m8amv|KEC9Hh6Hq+a}(r4Gm)l$*tPquc*`pv_C-I^9G1tn;}@# z5&T&3>woEm;@N*Snm@*4BTz78Fx;19ip7wNujB9{P^~}bn4GP=Pkg5@B!`ZIBvMJx z258m-k&z$;*K@!SXm+kft~X>eWn&x-f+qNzV^tnZv`&+ow zH_I||+e|n)JkuqnobvH78F%lF^dNuYCB$lKq%S)}k%5`W>Nl-;(#HHn<~PoAi8?To zFNt~%_VotpUM?K9Bz!68LqN%#F-A-SN$B#aG;x4Ul?!dET!hC!fbS$mdA7qU!;DKw zmBAUm2w{;e1g(ZiC#38R8caISDBoGr?v9()V^4!~qW z>L#X~z^Ri$nV<*v$%Mh`E15730ackG17fFU-%OB%<}!eC{#zzAClgwBV(1p>l8HoO z)uLX$X-v9gOkHr^#pYV<-BFakJN|cbBMPJcL_-1W`-65EtFh7 z-WW8@-sH%WGcd4(qBxeg+M-yJNl8&TlsJ}T>Piu*oqgAG$m(T$DTyT6kBrtL@1-OC z{*h#(V=l?wOBafmlhA%VAW8OKy0(O016m0jd7HAkB>NT{Y?6JJHc9p_RBr<|$(%Oc zVya7$ZBF}jk!F%?FGRlrCdq2w!kPeJlWesriFnQxB-xi~n`FmB+zv2FHU!57K=c)5 z+&9T+M-S&M>(iHz0CM6t|jDkAo}%mlf>RdV@yUxT2grZksGtwc{_{@eQ>NTWvoPs<_*N42i`xz z`U4Q@1X4DeIVuoo{r?y{5Adpr=Kt^JB)8<=BsYZ?TIir4O%S971t}s1r1zpC2m;as zq$o-UK}7|F6hQ?=z={n~u^<+(BA{YH8qqz+Gt%_q(z_Thv#nVjpHh!&zVUm}f%*$S}*#6`_pK*#~Ow*bT2ZkL5CtSia9 zk4wzv{uA9YPoKE$@4aY#)UTYDwsHpDp04@3!O{!L%EN{mR@un z#0(JX`9EButGL9^uTcZ_aETOgi8bkdsq5vL{`3+Co&-|rdU;i()V)`xs|!K722^tj z5v)rzu`clml8-@X=fAqdF5e~Ul(>YXe719m$SR@&;}Z2D&J;#mVkE?6z_^4T8<&vS zxWoc7Vq9V!I%_17xWr2kyFpykj7xk6cO2jn?f%sz`j(?YO6Td>|8R*rV}9k7&dZTe zViMc%@jxo4bY69lKLYz8X!?YU?vE1L2(3$0wl0xUOeO?oVD(dD87wYQHqYxo1mhC5 zP^tlpOLT$gEV0bMdc-B7l}`mOQNy{!c$CLVY;lP@AZ`Vrqb}m#M~Q<>I3vEBM-7B= z2`w)1P~0zdI4@U9{UHYS11WVluZEQRs@1%r2$X9;HJ2iSb%`wN5AWD=?{dw=u@pP=fmF_S zxs@`T^W-4xLD00StMpDT`Y0k>m-so?OdMye<$45&%B0yRXxqXnl;;n=s3H^PCCIx0 z)1K2HCWFwx)7#UIZc&-B{XD0rgqZnnu4kO;A!2P4GcsGh5AiOb?awYlQ4i$mwLI*m ziyLM6#XFE|W{A)_R!3+`@ebrxmg21>Xb~uvpgzCO^o#VVEmEuX95I1%g-Bb8)XX2p za?Nqud?a&0=*oZbjM%l0&1zJAf~s2W=Tx}@BFoe)nN1qIM$!Qlc>PgoNoJOv7=0QT zpE(Ngi7?_bmG9=L9wcOD@hy2tlx-aGpZCbF@t@x4_XNg&u7#KejO(m}SOZk3^}l&e zR1*1RiuD@4;VzZ>AuS+N*Goj(4UEyRAdZ8$s2IzM4NL@pU&k&oB<;-AMb7``+C0)g zy%K%{?X>>af+&rFG|e$??&>o0!Zzw z$*nB4Gw2>3DFCUh^Fr$6w|-M?69Zdvy(QU{tqY>x(fLXArov3V%Px2LN~q}7&h>tj zI+%y3)4d$PgUEEJvuApUF}@$7>s<&J6PFX~jNDiktjC4%MkAj?v{@j$*eO2GwxJa& zR8Cr4MYseM39YdyzkvvLwbLANHP=~=Iz|pTuCdWN4+WyONH`8ag00>;f( zK->c2qGsHDC)^IeDNI|J4LA1MQ<(4~*CcP{@}@?Np6)1q!uOU5sZsxs-ry`Ys1j21 zPnQ;`&|)V|u8*$up2LBrF#b8=_rdwTWWa8#rdVg{x`|g4f+|x6OOygR?)eS=IIt%T zQ*vv|*5jqk>FRk<2d|r&8yByO-OqFJ1Z7s^3W}bdn^g|)eS*N1ApGhH+aQu;A&@f9 z;;+0RNrkWcua!#I8T1e7WG9sxx%MB@>zq_9ull=m;1f=I<&==xZKcu*Bpl*~)CeD? zW>wG7sUkOjZ}VVwq}S=#E0khPuGYU2%kIa<*zrjAV`J<%q?)b25w&x2wI_Yes-2S? zmo-J&)psIlZa?upB+js^XB{6=w_^wiZyZ@SF zPCFtG;;ujjkzaGl$N|%pup@wN_Fr=73m;D#xf)3Wp8U|n6|8}RivAXYTB~VNE}`)&yb^sO1#q`QlkkU+o^Ma zx;T`h*SdzUKmp~ai^UCXzc^&;XA$|C4oaIgJ(Oe4mfLURjkBQ26k6nvt)LI#Uzac` z(4m}WlI)$^Sxta)yOw+EHB8qLU-&G?_`<~x@%{%8R~*GiZ#tG^{9*%PcYxIH%v{Y} zak*-Nmi{&;cR6PC7({g+=J9%tetfg0Av#W*H&OV^KNB{(xjC*HO_VvhYso@bZy^E}h$x#nZsasedIGi{z< zhkXu|QxiQ^sccB~oghv>FQ-%&E^TIGz$VVuwp<&+wZ@7_ni1`uBTjy3-m=5NGc$sii3 zuR6N4nUmqQn^|J2#C3SbO|H~Bpi0>$h|1@cLON+mhrK+m%Q%)pvQU!`8*$S31kuok@ax55b?wB%IY3o#Rr-22o;$-6L zXT!~88LsUFGJ{?n*jABS-m_Iv(!-Y{H9h>VEY)%UN~*6PW8bY-?FPT3#dqZUE!{82 ztpD3mycR%Ox?fI#$XCEF0cLsWn_wF&%gX^dUM4DLdHEAMKLE45EdK>h%!UNG!AYt?XiX%BO;Dz;HetC!3{HDE}z2WkFi$N$!RN zq3SN8oA~WQgMlv29Ncj)x3K6=IeNBRwRa0D;6|LR<-`rlKuWQ$da%ca!y*Wx;%KV@1E33T!ofLX5Y8R8v7tRguqshK)ODI*jGB z{5qJwe8I4Sj1&wMjdSwO=UhO(3Lc*5l&aGYI-@|Bk#H5B)Ce(oYd_xfy?zLdki*R%E7sw7u@ zqQGyt*R##}))LZ~4y5H?&#opdH((bBv!I-+=Be40q_u|fCa#=(xdP2FJu|%VHtPy! zkE8#Y?U;})PxFn8Gz;sjJ z8h6G@Mbb^nhz04UBheWlk))e0g;)&YqGr13<8a#n-E_FilIx~S3T(cmmyUD-ZhdxC z&`bZw_O6nYq^Guco>2sto;nO-5a6Y8SBKOYtNhaXRBgYs$FgHb#lj@iULwM75N_@C zr&6`Mk;)t;-NfFu$3>}7_au!HDL1Oh{(yaI_<5IAX`Md;6Ds_M3zx>JjK4`oGgt8a zZW#W^X-FS!X*5duXtc-B0|!bkcpc6~_fzQaJ{(i$}ijA&bY~ zXuab=I&9zUDq>;Z3v51tnV#=)CY0KBHI6zk+uK6&W_ljCn|(Sk)AQ{Rw*ZwoXFO*? z`+fIO6Nq(LcI@@4#M*>tKT5Alth->cU&MESUJkPo;uetlBg{pCg+j5gFg258p`X11ubhB!#bYoc-? z%#2q!`vzVgm`Z!Nw+ryQUO!5v*1lznb*bML^V8GxJ_P&FdIiK@fGK;3Kkbf5u%z)N zMAKI}rUm>4PIpG6DZZghGOF1vGyi(1qLogbbZd!BDTUj1&h$t zU9zL5^$sI{517_#_!^fPfN8yFAf5oJQc)+C`mvWuY^o`P)J#?VfzC;ZBvm!;^>j5F z#6``MdV3J=9$@P4h=fZ0wSR*}B;Xen@3=k4T|qhP9mX?uqVfnZp3&q@UiS`+XRL;} z9mGZ7c*d7-UjXA7)%S7D9~jRVA}Zn;(+L>^jAvBc&m;_tXB>z45SX9oC&yfaFnyOH zM=i6xccsKK$**_|zXqnCJPok}*c1E5f_mB}<>;R6nW_5+6uy@jvIs5zcDgD9LQgs6 z(-)y59@>XXRLR!M{!C$5m%BKu8&t6!d>B!C0C9sVwu49BVWme#L$*-i+$ITVm$$lH}l9cOZdksn3tX20A{Y79V!L)ZF1hQ6b z1JMGQNpO?1fE_X-lVAn0Ad}z}bS6n8nFNa=R)M&vnMv?PxMu;A;H%C^@+24)9}K&t zs#debdPC|~y6PqG@tQbb{O>Tt0T34z<9}t}r_TfHe-bMGH()R}e5h))eAw5USuJBrgx6H79YX5~ROOEag+17ZE&|NPWdhTbPF-?ic24m{NzZ z58|Tl^&{j`xIv)Z2$)?GdIiK*Lbia=JvZ4^pnpSvSsF~U*hg4+2S}xVohUCSZ2b;%WC7~PiQc#NRmg9_zXqB<=3dI=Us!vPR(IYvQTE{t@J4G?RA=^Va=h*~BV=p4<(f^?3<=p2+t(mC`;oD0LmMa^`M zGYF{;=p08~Hj+C>s;m%WuGerYlUV!Z68<|=r(BkbUTEY@}VA_0_ z!kIP!Rc9Qx+$3@uac|gb$X@}JJyY`Z80ChFeIXu4ywdtZZ zV5;E~hUqOm?VdzAIZEesQB333Gs7?h~p5WERK;jpd09S?yj*z%UTL!WkG(v>1>r1N)mIzn)LFuwj#s4E27@ zK7+;4YfocnK|&Y0xSR&K#Knqjiv_k(7n8<(P}Dvt9k&u=wAp$YmgXe%wqcBQ#WEP$ z*mG=EzDdj%!Ps@=;)v+nnDEX-EA})2v90{c-@~5_ny7u5cmTDoYxg=lQi%UKcWT0nk#3k3nn$kugcp zL-(w<6UD!{fQrm^$(oH+$9Fc+jx!Q^wwrU=XPTcbmJ!izqGs5kfg89xZkNkFQxbZa z8#YVSZx7U`B%(6mhEd?-_3^&-HdlfoB7c-hu8}UoDRy(CYwzgGjZL&4(WGU zxzdBWA7%6hnVUI>)F*7<)?-{J2AR#)5O~rCX8(tyisMX%&mFM&FK4r_7Sw0HpE#Cp zi6zR5$p&AsdjUM)N(R4p-}jaVOb7a>tZ0*lOdZmAvrrljOydpxnu!3Ip0EqmgAH6y zNd1QS0*UDf_rk0O#uI-IY!|S4lb&!PkxWleE|YSRNq(&mxSp_fRw&C!lf6@zl1{(!9YbC#Pwy2Smz! zmXu`VQm1G8MX6-Y^n~+1vf4@&l19)IdXT9iU@CJhL@|hTaLQsV)YDy`|F@oC+G^Mb zetE`;>CTDh2aQ}?9mLvuzWGMq;WWUsRbr~A=Avdst#=818JM=Z<^(%_VCrgGiEScC zTb;rWOj}*=M1ETxM^MsM%bhg2-dtPN`A1uA!}c|j8ELDpNc)(d{=H6@H{?&VZ8Zu# z(^f+W7ywg}=F?6&IZfMES*NvCadHMC7bSD1t=fF(x79L9lu^qJ`KFC({Fn77h_rJ` zrj7FcA8pjIovVsdWY*4b%w{1z{P9!d3>B{7?8wFSiu7||qlY*7gxu@x6}GFcLQ_Ar zSz5tNVq)K6Vyo0CEUfAT9ZE4+=&!QEzhX$=h-fHT?GNH2@opyM5xC93TMg6td!9-F z`I}*iP&rIQ?|zsigw6xr<1hyy-VY$d~e&;HQxm4=BYa)C{6Us1JM3{UVdC2bu%h1u^XJ+j?8w+xnv>%-pfjKhh_al2{V2%v7LTmzYiDQlo zQh!QUe-dJj3@(Ei49t zlBb_DV@;)0MTidk%w`7Y^I>v+Vb})k`oj!C)f)iOnUIbkbiz%B{;o-GqfVJDhqa;K z4%-w?zxC-_MAz#$HVU1*uH=cI{yj4stA!wz&!5n6Cl>DuJkQ)EASbpm1*guVqW^TQ z!>54AobH(j_i0KwRv?;42CtH=uZKB;)VmwvWkQ|-Svx0FROh@Zpty!>e)_G$|0wxc~AU+dDYNE>T9CHGbhYKLu0h5O-Ax47Gi%Elt z-<(ntg)R??U>5Qz>45Un?`CCu?&o1Swr&C@4^KfnE{x>iM~IWcNIm5L!S#J$^3VpN z6$sULX`EgUg{?>__1Qvh`gd~fJe`3reVG-l!>F%cM>K)>!$GRtFZ6=b(`v2gZO!m% zoQqzBn{=xE$-W)LMdFnrWFFisU~Z`UDTsMQVz$kVt!~B*b;6h%>dO7arUZo5$F}px z4RuRVq00Ol>UKDvvNzP3%O%-PJ4N}F^g#LP_POD_=44JTmt2bFVPd_8)0fL7C#`k+ z;G22Nfm|+Wo}?koWgd%@_j*X1u`bQ8O3?~tdg?)pd(~hTVR#;BS0APbiPr$)WkQ~l zB!6`V58fEUKYlPMUm3rBV+J z!caZ8Zje$w5M)t>o4If)<*PxstFg$1PHIZ|xEs6o3=FC70#$D2bK!D5G)xC@X@(B^ zV?85WNsWkS*rkAKcjjIByyHLT_)nr=y9Z+~d@E-ML(eCWb9OTB!X#58Q>8t#@P z?Q~ZVv(IYwMH@Vw#gHc}QG4nzF3TLuWxOdnmvLE@WFt|j9>*t>vSP9YN;~x&g2`Fg zMv&IKEZj|5rG(?xwVv#)hGyxa)rMCs?LRh2vLvuOx1m{ib}QEQK}lq2R&|N3ht?sL z;r89v-D&a8AikC%yv`MuDLo=9<9kN^?^*Ca4*c@{g39SixaKCPE zCi{oU#e0%PTH74zJf2xv4t37ZF;yFM8SZRIlbdId27N8JQmo0;kBH67ZBr&}0#wi# zQm_@YCes`|>7I4W!PPqZdgJ~Wy$ED>d=E40GtGPGLMbuzGl8mO2RRH{nW;})W)0iF zgcTnTvc59Y9O1k~r00R0x~|MDyNfKy>*W3-$llkuGSj>hqmaOsVAM%xlcFSD^Ai6( zsoAb}>?1Y2JX5cAdLEw^pM27J(0oVMwSsMl0#1LX%sZ%q|&ddMHNHptstBMAnMI-lx9;5m2*m`4PhN$kp?N3sjqOS%KoX3F21UbU;J{m z>SH5IyDq6XKBzaPk%UDhY}!O;w}LBool#2Hwmv%^-LXKa zB|5KwY-D8WyGhjchYVZib*FHjO-5$f3b<$8;a5!*ra(F~k#4<6aHUAAR=!)Cf!=Qo;b8k(%w3uoNq~YB=rN4sx7^Kdlv?Df zN+^*OY=czdwr(L+--YXd@||0c%&0k8%-@Y#N*LD$;Z{j@hLxDVFe%tK|M7(()gv(P zQ#i5B{pgIE-uamS2DMt4t|8`!CE0l{FdrV56nvm0cxF=YcR_GyaZ<3$jA`Ipcbk${ zyQG0{$_V$83`hfaA@R;2OB&eM^8(7{*)+D_&f&4HWn=|&6^88irouB_xZJ&XOAt;* zk_NEIZBEIoqBbToPb4$1Bs1?PG2snKh5X8-BJCW0GbuQQ9$?EK)+YefO*D~Rx@N$68PRBq0GB;2y@2I$+(n%`1*sJ{5uav|d|F_t3odK&170Yq{ z+niJdRIqb=FP`-i_9AyWmB(dmdADPB3$w*B`-OSbF(1LG)Z;Tl>Jt~jivU=Fm71#*$!0>!YQjafvGAq%ZdHPge($M6T?Gl zvlH-^3&~h4qs_CDvHFN!CLb?I#;U^TXiWV9V(@~mgy8`|KL;}h;yR!b zzu{&JU2;00hWHk;GupJkLM*=vW-|D5AF=L{n3099k!4pCe#tSXU`7yu`sFp>)m+C5 zzn>(Y`wwyC8z+{Aj~sDckVeiT7rR;CUUXVhiH?1LTo<}UY?hzR;@>c8SLXM}%gI_q z_iX!VuFPBif;0G=pDq>;$~4#au8NzN zg};g8?gf!EoUVBubWrQ|Sm|P|eB(YaW{#7wql@KBRn|(^xY^KUr8Cfg$VsOw8fwrq zF7oLX)=G-|u$4b?=wcbpt(8{R$~-Jg7b_8`Yw|L4_i(J#kK4!QR_Zl3!Pd6yA9L;S zVV066Yb*8Josd_x@>BniH+y)bQnedt?MXK`>ti^x_*bQBZ$Or(ZA!K2+E$*Y?cPG_ z4RKks30bATWl*WTSP#izv@1@#n5!7Fv#Y(>C|8cfR4!;O?6Jn(>8(?-p>;#2dVV-koFjAVIw~fH#NIwIicbwEeRJM=3 zPH?&^ylswcp(fm-)sxm?bs&eA;g^!a$0UXS$AzbE535Bc+`iV@T%wHp;ZlzB zZdfZPrYeI=uQFk0O4u#%3qX9=BIW#ebcP6Gxwsx^A&=A59+M$XHwpeq5HDDa^7(xb zj5o?&9)~~(s>#wIKg(rQ6`@vpLQd%-W@&j#Su5090P~iz%OQqJHHbG@R$+zMYiNs{fVHy+J}g6(lq{ryDJ8s%{N-SNjRQ0`a^g z^tg-L5;ec-Uj3JZ!dEA3o5*d8foKfk62%OA{owilGwfA!CbjaZ;8epO z_GY0w1DIiN1H^h^WY~KZ;uTAH_`FN;~NZHM%Si+Pp%dhMexl>z-};S+gsa za}MxOiuPo`YL-xNW)ZJSeX$YQsubH@7X|WFDW*4P$Px>2Ib&#n?$-x)T8bW0O4eA% zd%L3wf{gm7B##Ny?L2B+WE@>{X zeU<%sY2FpKFeUqNFPftPqMyY9jdY@194IFS`xAdZU(5<38q0{rbx_u6Mamq ztUyw=T1*uHy&##H0n?Gt3q&#=W){Q@VJ?HY7vgSV`oVk#@i7Pub!k+fkI}8X^v&Fq z(_L=D>?;R64I3=9MR}E^rQ2~9+@-w>b3Bg&-Q%oCP5x*#O@E0z>IBk5BTu+^vTPXG z#+{={cRh<}7>jxn{q7p^kCM%9G&MAUGlrlx)=F*Mn3DDa(R39=RjS8Sd7$%P#zBk* zaZ&TmBIE(Mdq80em?D>nOKpcy|z~(pA!pT&sp`Nx3bP$zwJ_hqY_1bicYuVe}+>1d%x93y?p^sBypzv3AP z@x|}l+{T+2$wbP?l(4>=;6gHSE-*)E)0`1r;3+y6r<6Je6?5*k1f2!I9Hs4nc+rov z%SGaTTSiGacdJ9Bl5;m*pG7swA?>>Vznr_xayHDlTlkdAs@%75F}7^6RXE|a>{JtqFQvSGg3GnMAc3yXQY_x&8pc}Hoz(0v7=Xv5LWh` zE-mLab%&3?OhgSuA}`xX`LB-4)KYH*Z?j4HUdO9(a!}9A4=1gJhY-5A%Lc=Wq2$(smP(|S6SH@Xbi#9y_E|4NLXfk}L0koY!9{4E{c z;wN6YQA||?Ch>L<=YhDWnZ&Pz8v$7I40J{$aq&2_6EBFo%fQt2OHOlA)@wb_dFB-^ zOS)K&!foxZ*JdHH1#25Yc$L!?uPlX@*ktAiuXo`RvtCm8gDzaWwY>|M{rh)ixZJQaJqWk!G*#qxcR6||Wto~0@p7x4)i`=r)lbQC=wf?5)#NT)oLsxP!l(W- z*e}(^+Ps=Sr!ln#a_?$Pyly&wPAfTZIx;i$K9&}*IRldJ2 z6EO23=7P{CE<&&b*(CP`n~SfJ%}yr6TDa~So3$oP(4(+PQOt%z8K4cMV z_BAPgnf3Lfw9^(~S0>upD0_BH<$?G<7Fu>OoT<%XxQNiMz%GVeKV~?Q{+Ow=za5G{ z$YOX3Iun3d48H*JEQpJmSq%RM_X{wK;ktpD24d!$=qqAH7Q+QiVyY4_i{XHg#c;sL zV)z17+KHMhhDSq;5=Iuow?Hfhp`I>{z!QVTa366ryCPoUln#@=8ydQ7bYYHX0J*`1 z$X3LLa$9@shchCsj^$tT-E`@cV|LFX3x0C|k#fwOf7LM4!Lb6F4VsvlespbnF zC)Qgw)_P*ecY9LaG9!D9Q_qU5wyY6rjJrc<^X&|CUXk+FB@*6p!pISXkCLc0hE)}v z$!#P%1(A!>$keB|5VY5te@k>Cnw-v5MAOZj>7ZTM#cg`<{3}sdMl6ExMs(OxQvKZ^Np2JK52AyKXjW= z=8PY0g)G(mb|77*3tr)Q&f?W0obP5VGr4$$mfZo&`Af#Kic+E1HjSytpw~#1akH`V zG2F|b#Rc5umT`*-JF6LUCn#5h;qYagEi*M{+*khVW_-_)@YSG~WMs4P`a`hqgBG=_ zVB&rgR;GDOWrJQL#!gfj516n^;fDZotTWguA z74&m(&w{w9nq~ACaGwLSj2;u1@+r<*%`aF+=bX!G9>nAn+bo~YfolTH@_7J6KVf9~ zJRf2%Fw5r!&h}}`=j}-E2cbKi)L%ZE`+S3AoUKK+h!-(*@`5|^e&*%WrBvKeQz2iU}ATH{r zqK?BI1E!*yICEP0RPDc4RAx(J1GC>~4AD>+*>CiP=nYJT&4jpC7^$$kA=Uv?VVztW zdCs!gZ@h~1B@pWGq^DOH3j*^qhr+qte8=#qgcE0c7@kfAnj_R`D;5{PoYmHcs0X@K zb8(rUWanDHEB6qb<-$}z;l<{c@lo0L#NITt`VhT`*c$`05@LlgLtx&9*blsUFyYp0 zUt#Rw__V-u!5*6D>Y#n1T>uE^sAxf=5TY9S!jh5_$TC(Rq!dB z$o{UjKKkNCkzua>WLePgPsfb0=H$9a!%S!Cx{|OW|Ds*6D>`14#gF+d)vY+z%jlq$ zIl@gF=?@_t%rdTR8*&ZgSTCc4IYjyc_B#oZHFQRYDl$y1FJ!+A%&}fZ2lFM6+HGSh zAKa-$uT$yW)VjC)fmto?evbq@XN#}zMg9V~=E|1|Tc~$kZ;M*40lB&I3U}<6G0Sw8 zI_GgZ4??Bgx#ek_#hJ2h4VQNYq{l5JzAUHYXtleftRj~=u~}5jNz#4N=-QJH8$qtx zgtsTDeCSkIaygr#5~=R4H^~Ahbav8-s?2@%i$m;Ed4*OFmNC!7^fuQ%OJ#KDr;D3h z=~kJD&C~F`C}dYqWdb*ZJ`*c1ui<(D{!w6W%zY+ib}pBlA5%j?opB?1Ny4-COWpSn za2Lq!G6L(*#?1CCWqG@Vq;pPpTfuyq&QVv{Y;a%_^D2$Pdq<&`+AgM2fF1}_2cniR zMaj(hFkK1l0=y|O6ClP5b3M!*5VwI)u}jA9@BTTroG_UuAyOq<&pItn7159M8?m&l zepa5x$}V8C@+HI&{(GbMNfXPoExL&~IX9mP{5K6toR>1$vj|v}m zEp!<^^cLBWhP1DoTHcOq>lP~Vy;CuM)F`Qlsbod;Z84?!rI_50dWK6^jMj2W)~Gp7 z){R+8I~B8(Znkh8t+z3zy=78VbBFWBn3>iyzJJw-%mSgVY5I*Zb4f76H2KEZnbIfa zHM;l4GUO$NY3H+W()U^aP+ecJ1IuR^sXLOcc{yWF3ug}SHh@R89DSANIrUk(jQ}i zIA+Luo`9!;+_XJ9W^UTf?#MI?LW!QIJDGdkXW$Kt27|FQn9;zc&hpdzbn!q*-6S+P zW?rP*42x%jqDP&sXy9Y^vP?&{7fTmo$$8KBfu${1`Iat@na9?rU}Ze8_fzwwc`4i; z0$v2>yGma>BfREZ`eFZ=w+18TGf8QkIKM*Ad{=28OmC1S-&Jbs@}&Z5fS(8d8%vwf zy$6`c|AF`d6v{W2{K$S3^S!0&ojK$O=6g%Co%!<4=p=F!d~fMaC;aF4mWrH2x@c(1 z>1tfOk&U+d*wT6@G~Uwn?XuKoJf<7CHtZUV(^6J@M|V7C9`7GU7W)C)IpVR>^4^*~ z1Uv_9=ZMG56BP9?jHxq$-20tryWvdOD?rnM&V$Ri@(m=J+~ViRMX6X`eRdmiKjXxt zULZYSc}K}VGiuX8E}xt@m|w9(-*y|(%f}K+ILb&_-Xk=|DM=?X(R)brvzg&ubrR`6 zPZCuIFSm%*DqQH2mC^EpBxyIh`Jd^;cEmbVnnY=F?=0HYj#vlN?M0})Tm(f_RV0oaNZZJ(wKB{j9XF=u z`j2$nm|jt4jJj8fj(NI6H7njjjIqS{F^DlXJF+qd!?(UM@6|(+SfZVR5RT? zXqNWXE|^;B<{7Yh+S#P*4{u|Ae^fVj((Zxv zkz9PS*7rxv4Vd3!05h08gGk+p3a}?=uZWqE1kYP zRV%}gyi}bPIles6Nz7P2$1!p>NYwnvmFxd^b9F$!7_|p0A~#;}V$|HWr@EFp5Alwu z-g%Q9ObY$%6w8G!TeuxjvjpEjhVBC9YpFY;W+MIp{sfR2|H){&4E7C+*mr{PF=tXv zp*6-zGRA@=bjnHnMW@ZOS@?yr=ggix`x@N0hYX*aa9?@xgB?CM*>*Ig*c3JQ+?dlL z)XWD5(w6Ne&izrdmvUdf+iqI|gG)r%7lU5~2K(BklV`X3TfMY7LELmPj4QsoauiBXzJjHIX_*&GN-Y>R>ITncQ`XMkRNu z*+JS;H^qXy6Tn(%nv`tQd znRckiFrUpmGin~F%aG$U^vv*?u>esuj zbM`nJU!4f#iO*=X!Y-;Vs~dL)0=r&`M$N`@5dqf$^Ln#b)V$s-+@1SICCogG8n*?S zL*P^pKS6@_4Scy)@++Y~fzYdSZEy2OvqF|0(HYYkRiDhw9DT?^*8$g%X)mfz+-EiI zU&4wdj=dk-vt7ZyE7yxwl8=zNs{%wde#BLQ>ZKkb+J_M>CF|;j(KgWX)5UTcRNA~C z?Zb%a(ycGyoDGzgyKsnCunWBz1WW-{hEKX$0?*uui@iy}9up|fO@0_LH|A9C!QB@i zRSf&dVM*qNk0a^L2sLL*{m|(H%-Pa)5Hp04v!$mXo&a%)V-A?Ufcpq2RpifB?n*I3 zbPoo(*Y{!l<%k{RdE6r4@Any<3~yjnk_wGZN$9KxS*rm+LUZqf{@dtFD=>4~y0c5H%PSLX#D`>+>0jl1R?_JB*At}iT3Bb(Z{$}} z8S=O z;0|%8_!=d;1|_Lgl2MU7S8lTeE+rp@Z`{V+CnwKYnn9Hia}RX0Bv|mME8Ej?;9h8TduwCT;G{_A+N+E%!weA`i;5lD=%Jh`R`r zA)jxD88E6WcAD#6aEl8>;?*T$jn6wsKqm=M&2R6fRN0ogMF?p}q%E(4EpLXfQn@pE zFl>5?c{soufw1n_aT0K*iCXH)@rcK`0l;Pd0rzVEyoUnK1;|N(qU4U%9}4_5BMHjzX~`^>ViCPps%{Xl(dE^ z)`C`2D%J1S_fWba&%54Nx}lyVRAT~vQg3K!>^1+Ku`YF%t+@Mr#aZ=*wAN;I*bYs? zTQFJ>d6xV?p)VWF{`xho-=vmgBKPEx#*FIqY^e0RjQ1b3%*;RWo??CI45iK<>8|Xh z&q90IUK=9Xs`0Rg($p?@?K@6@{B-d%C|)@ck?wirb@H!Ag{Ayc-ktot4cRFdD?Xwq&dh=`BBCv$919$fdUSSm* z=KWG&32rWFSf{pDr8)FyT;_G9);cp4gJNBA9ZA(eG?rvW0NoVk1Bm^=J0GS^KQ0S` zF%P-e{fJXi95Z1Id&bE=;!7H;v2@XbZMImYg0$q4l0J%PI@YFuVNIOQ*PA4k%)QGV zwy~-QvBK9AOP=z0k{FKwb0I6zp9LKVZ*>t4Fy{VZGDhtbo^e|3sK_Hu%gi+o_Kko9yi?dYdWhd}=u;w7m z_e_e1g)D*HfG<`Z8nO>ILh_1cuUo=fm4 z}#25oi&ToUbSr{qP z+YoPpvQi8c$=YP=KsupnJnI0XlDZa{k9;TLKYQ74y)aBS; zOdh?F4zU-(EyTSEc<;k}3~>mAHaPV^a9P|n>iKmhhmYxnF&PNO^;I=la6A%J$2h7Z zt3_Isxzxs1@tWae8-&hwnUS#ygXVfoxVMY9fhH~_ib?4nS3DIS>%^b%xYJ-??3Z4J z=Q^(VN!fHnlPO;3b#qt5D@II#^QTI6&PT#@@ zlES|XqN?zbq;Q2FxblU+ObRdS!X;~d!-!{hGT{uOM@k0KXwbxRBR+4HYx%dz!w9dE zE00&MrM}#jn*Eg7VE_yyXWbgo~WHQdGfqn=c9H0Wv43 zihx3-%~bB881vCQxv@gk?1+`+POq8dgWrPrnP}nC)tFBd2US9&wzLe1( zc$dRm1u+UF#EBkuMs+|%{D_NtMJJGi@u+*y-vB~SIep)wCZiqNQjZZ(HvwA$|%*F zVaS^gbLM62dO+C~Fzwbmv3EB_e}a31&`-|B3{!}|-$R$b4c#Hw+#xo%!>l0EEn;&g zOuM~K?7ar@GQrP*aMt}cyWh~4?j|D5OM8ZDBn3-QW3(bgF3{|s8ZWtxFGjkMv39w@ z$lH1;?Qs{PDwlK10nm@Z?1gwynCD^2kBF%qU%BZ_mOOJ zdFSR+M`c-6mDxOJ_d=eVeAI;>MVm^9dgc8gNL71>4dJ_ig=J-!MO&4>d=Z6L`0O?k zc>w5>sQmzOLYOaL8eGY1PC!Cd#HRuSK4lL$aLrq_cdoI<`g=P1Q-KN}aSlcQNL@JqUh6;|EYpidoHX1Gci{B9xXVxsaVj z#WCDd2voIZaA!Ha6xBfVBGIpxFaV_oW6kGscE=pa# zgS`~%kj-}}b)M7Xn;nj-;y3ukWoj%Tm3PpZNea_|ei>#5#ACud4f7$yA>e%ilX4Xq z0j3>?ID1<8l;4itRRhyf#I%&Q7Wy?LUZ{tQ(9vbtKD}Zt0Jty9KB;Bw8&{TkxHPSs zSdeM6E3rF+$a-hM)Ifbv^+QquiiFHBb8y_X9skxC*278h z8U#`m*^v~k8XsjnvfqXL;EJe=x8Fn+{e);YrP~Q~3bznskL4L)pfh1EhUg?rKFm6Z zJB4Wka}wek;I)Q1e;m7A;B|(X4KWQ==mn#^Vf=jq_EnKz1rs07xD4{9!Q8jSW=GeA z=}l-)Q1g12@=ii?nqPZz>&-)O9U8O1CDKo7IxS{XNBM4)(<^E`=pIxz04h1;RI(Wg z24jw@bd}uJNyNG4Scz*)<6yGH3a@iIJ)@+HPoQDbZB0_qQzL~q4O*-#~yV8J)cUo5moA!+BWMK=zb0u_r(v|1u=Ze_XBV3 z;IwX%iVP>Q$!t)7jWj%nerEx7xxsVeE*}Xy(}DF@GM7w0C0TXT03THS`eNGIX(% zEilU+yESMm$JIlf;DD<~U3}iH)X4>iHj?T(pa;Qx4)KvNqhOj&q2Rz<3bPR6dSO<< zdE1go>uc)EK6-}B36s8~{7TPFq_@9? zOv#>lBKEEZS+b}06}^D+qXhfwmFV6M%>Md0h-ZP>S|5Wr3f%sx24|=8}%r(!BNJl^H9FIBn{T?P$%Ze?ED9DcxwWdpL;h}nS5KGSAUF4G0Y zX9L2(t-`00Vt6!yY2N$(cMOIXxhW=8*=6e&j-1GZx#Pw>!4&mMVs}qYuaB81`kH&` z8^1`hCmykj&MSho=k>Qy`u7m^rR1G}{uHLtw3tc<-mfr!LVPbwhzu;89#gY{mjjb> zZA|?tOeL5RFoQwQZ;7MpHz%m$qc)wCfGRL`&pNYiwAKnz?uFK2A{_*}vzVMgOMy$| zEc#*>Uk8+nuJU5(vAfXFx5yd+{TdQa)t6XT1hIT7h*d8!gj7pnb|F@0iJ5-}X&2%U zKO*Iq41 z;B`*tCw#CeVl0}o&2Zu|+W>7zrmGQ{AtBr#Dg1I5&MG9-%Z1CxW8AW!uHVxdhj*}5 za`IY%|6FhfxhaR}TXOOd&^2MU%w#?Sx-m@uSv=ecbRkTI*-Q>VUj*|p#OuK8CvmRh zxl)if0;cG3n?mJrFnLq?6Lle}G9dW*@YGr=#XGlO^pe}jha9w3x}KE>FayB_5bZ$R zsL4UwXt+^;Cchr5`-nb|sNOu7RfOLPLeIEjUPJRq>)0)OBjT(;tsq~irzFm8FvrmU zOycl0BjaZOh?A)FWJ&H*f^t-HPU#i(ORFxG*c`RWb2u0Tx-LvRi1R?GmNP9wjA@lC zT&sxBi05>dyXd+3=kI!jr|EI>7u%!MGG8lb!|p3dz5=32q&7m5uMJb>1~#KWpAGW@ z#IvA$7nqdg{k%T>kKY(mzZ2+P3iC9~lc4-Kn9%pN53!%}u7&=Nz)yfTALfp^JQf7J zTVaOIW3&L?T2X^ICd>mc*UslTUodzF%&ZE#`Kv1IlfOL+`Fm;pVg44;4rh>c??af> z1u^v}G5FZg4qLFV2#w5g%rBe@M^-q-?!|vt%cVj(y8H&(e=N|_S79)Bol@N}coFal zV3t7419^2}mbyqf1apAU_draTNGB&6%$^|J-!V7fMf=F73SsVt+4`Q@L3@CfNWDS2uJa~Q36fXUMbPMiDJ>3v@Le%U5Z zh0Ay~J1}{g2{9SOjf&*ybGVOy$y4ESbb-m!G>FNo*ajlaTm`v2neOjbT1rrT z1*ZMTMZJD$HKgsN`@c{8cY*2tzeD^ALIa$^f9w8cvn~Sw8x$4U=QPcMS>vA`!W*8k z&EW0;#=*<3A+gBA%#}BDdk)a0VD>}2E=*OJvbQk%1KkqlNr=aU=>&5M;-oOWV4B^^ z>JVHx942MC@@DXV4FR_UZ=nRPV1N+jc9@AM^f;0JT*jg{1nzBUkl_HuIh3so}P}M zn#nFw&tFR$FORHtN_G^V!O*?yS#9FG0}hM2L~}sLlNHQ< zmuIpVP^J)yS_$a#Fhe2wf^*j= z8K6O{VxV3^KSSuth+h!>hhfrIb0a29Tr|9w3AvJx5g`9ZSjp(#AyLcbzTNB9GL1{1hD|9VFO+KMXdjajdskvbOqITPpcF) z&V}@G_I2^WyRm)<(PPAaPz?SKlfQ-wBESo`PElToW) z__kBk5UJt{9m6+??b(Q)MCUPyGzsQci0?toB``BwhWrzi%0%&QMlfhCT^Dq@(P=Oy zx?MO&Z#_;iPj=(N2{XI3grpYf= zMznQK$S1g@gjG6L+eUU{vNf}(J}UzSpK|$8UgeHWtfFm*eNMBaA%<^s4e>2G`~sL7 z?z4_d3&7O<^AJx0(?m7b(>;M{q6;B90n-q^?NqhTHAGplEe&xsI#&Tx9S=cl2BslC zbQ$s+;=T>8AxhuPLd3}PrS4e|FVwjpXd zLqTfE4WXToBb{otA(~Udq=xtrjLTBQG1j`u{6eyS|m&vjN)RiZWuDY@Qv(gbotQG1NE1(8Wk$J|h4 z%wFU|v?`QXX}Mm4yx3wHv%Uf^FcpPJu6KcCR?N=AfF2IB8R9OGkeTgMXF&%PV1}<7A?5&kWc*!VuBaZ_-7_fd;(IY6N5)%G+5*fG ztFM=;d@Aaa4USmfLH8{&tn$Z^>)F_Q4qM)MnBNFL1)_3YDDtYU1g*A7ntQp^P7Vm0 z+{lTlL0|0w?Pocrz*NUdbiQw{_`QDB?K_LA z`=o!yL`hpF#hGYM17-q#65)k|*PhSi4&+@(YKYL0OKjB?I>CC0LI3jRyBEs?g<5H)xar z?v_T{WXbF7*qwZu%bYH5cR%&A3ei5&dj;rwV9wpbRtD&YU^YM$3$qg@^Fi7Kcza+b zLW~pUU6^eUn}zuVMsMY{M=<7QqGw&Iv`KxMt6bXR%_J(mJQTHo!1(g+K&=64fiK^Q z{B{tDyk;BK`m(Y7s*94MhKS|-v~PUN?-FCbZ~4u@^0H*hS=%@<0im)G;1awdXovS7ph_Ac z`i?lC0o@vA?sl9N=nG*gKE!)?fEnNFI15VoR4~5P8Weq3T2;ok&FJ3;%=q>e#6Dog zx1S+?0(SD?=4g`@7JC%Jt2-#|Pcb1wa@B`pssO0`K4fAU;&J5F>kHF~;P$`_SLX#L z_KAtJ+;BAq`7F_q;i^NRqZ%gF)icPS0Ffb1?hjW|S62jad@8t4r#i!x)Y&QGo&=`O z&VGag0buHEJj56fn(3?rJ!4zaaJ5bf<`hbrWYmMyz{7|h!@y>-_$-28xUYOAP~0$(RfzH0!iuNruf# zQM2E)PT4K!CF$F!fr*G_U|>AZvtTlwU>OATLYS)|MuUlywx_AZ&O*=-gWJa=TUox` ziZC{hKV{d+p9lGKy>7wZf5fPnlM(BOAa;=`j^GdH=#slvoNcbyoI~XfY#;9_nX$Rp zMGkgKmL#)BAwC09O>93J#gk~m+Q)S+!Rb#@*C4)&&|38~a z?!C#~8v+S%4JDxk5RfLQs1PaAF*F5{BB%%|MUWz0Q9&$V!3F|0P!tgCf}*G>MM0%l z5KuviKopT8;{SDKXEzs=@8|dY^E~g(dC#14rtHk@?Ck7bgeQf(0tqii0K)~!$ zN;RmZ+f_2-<)SM&=qx#r%-)VL3Z(Acs{^wnm3t9p!&@?C zKOyWxv0a{E8&Pw`_NQ}W&gTTH6+9IX+Z_`69U)Z-sRYdV@iXeG+(yJ7JXhaJH71;& zlfn5Z5QX2)_0CT}9P|c}a<-(2=V$wiDXPyVuLiyd&d(pqI6uD;^&)n&fj$Mf^gU*j zKu5W!_#9!SkT_)c`%!fRh*yE=dK`+cWL+MZoDa1LaLdz}jFr#S=P$KG)Ya&81Kt*g zF;+1}6-i#Ebfru^z&DzJ!8kE8Hx?7EQL@Sx?|GT}1yPjw?F%S9143J^juhR$a+|Ep z4YD>wj4#d9t11MgU?G_^sj+GgtB zQl&DNDf$29eG%Flh;98k*SAKHy9mA$RJt5;z4gHKFCPz=lxn|e- zl#QUk6%BLYo&XySYFpv&&f8$ ziAr&zQjECd+$=`^OSfv3BDV#&>|nBCt17<5^USDD`ODOf&3QAisz#za44A4~g|Gs+ zqH3xtb1ir0z*N;`)|FpXrSN2`sy!O5fvKvy5hepuRRz}Mw5nQ2?2EuwRs7#o)k5+Z zRMiG_KNo#dRrzPC{~uNLFWtndI)cl?CL2`MceLgQY-X7kN>w$_c=Rp$MEGN_TI*;- zz&U~1)d*dL9DpoCSO{D((enChsrCH+3DCKaE(q;F_*v^apXb=+am$FCs{7PVrV{w; z^16*?lS#f8Yj^aT-HWvQ$O@~`P9B6Wwsl}0K5w){CWE7mv20-ST^B62O{*J*XRN+e zx`z@Bw&pxtl2X^ny6kOA{Q@z|$@n|Kc>?ky!VchymR?3k_;cotpv+2$bB$ilznbuK zL592yJS_0+OLETTPoM1OR+eOPQ0s{P6+ngVwFXj2r&kbXNCwk-wk)`4N?vQ^_Gc`O z%J69pX6zh=tKqf}2P51hM56;zcgfmFdd^w$7Y_X%4C7ZYW# z%8_|COiq2Mz4iECb;Op6qqdpMGCN=VC3bHZHREUf60a~ieeam_(7^l0MXAO6k`goeH}4 zkf5$taCB~J#xYGlVOLq^bgdzAl?v7qx6R9zqjt2U?`5Qnc$dsgBIb3RECbGMknITD zgbaYBenlq(PESaEgt|c0mi?Y7)?Jb0FD#ZVk@}sumbJ)k=wAuUT4Y*~17Auu^~HR| z-@ZBy-7%7emq@y`-~%95O0yPaGgI@I+eDthU@kC;WCn@&l0WkZ5?PJz$G|2M4-)aE zAd#%p=lw)}#bBSGNVy;pU;0-f#lI#)fZCUZu8Kh-8Lg=OlBpF|kb7CcYKYSLz$|U` zKlOB%j9%FD!%|TIqey!Z9pwpv8u9#@c~5k*?8}M!g%gygBV^~n}xP3q)g(u zHx@mB@qA<8xejW9=O>7NR6MI6yiVbHHY;qm2A=zfXS>4o7203;UPlIArzd)iZ6#F@ z%1H1k!_5S*(N>b>jRykTmDrXopZb$zT<#%SW7-V#eb1_xOhx{*qsn7EtPD4>Q41J| z!VE5W=Q0+))CS9I6**ooS2`8;6C1_Gs|$+4`+jTnC0x}%$Z5;9S?(N+UDH;PujuDY z*~rsFAYK}xD{*-88$y8d50=Le{sd7Wm1N3#q4mXGSQ}Oe%cXuJ!=SAGRs5EvJ7A`* zZ4g=kSG3HubqH(_z>jQT=p6XT7eBcre)$kTvSncoN)H3GnW5TuJmUk65^eb0D>kL` zvyJ{hqI&_Oe;DBqF#8?+G*W`p{4t3Q2g_HIo@^1Q@jcT@V73VOCgFdX1X~0O(Cq+B zIY%Lk0H%mfBg_JfJyKQI*&?zFBapntLh@-J*lPO}gHM2QSBP*B7^C z6}CYN-z;{Uc#r~If=(k~3gD}0}%2O4Wja1wn=F!>>gkg)-cCY`*&IF#T$P9zv zMs?_P`8J9d!YM$x@+F-1gl@<58{k|9sktMnssUFtbaz4q!ukT;53&|vHRvoIq-PKqzdpAsglxee{fO@{p8KWYo1>v20{sFpB*8F(+~= zQ3Ei(7W94?GNJ4oj;icJIhu|z*;;bT9!TPrJI!cn=0~<8tjEDxVA|6Wgu}qJr|cgY zpn%H$r7sTzDE}yo^skT>1UCVB@qVln``P!Lt1hBdj)*7FcuXARAH$~b3^n~Xft!f_ zN>o(d>sZXUI;qyx6Syk#4iQd)%3F>8604AF72ZN2zK#ghd^H81OD6R?gj4uD2J}`) zho2Y~L8Y19*}AyHF}7M2qFg?9&Qht)1;orjZ+w*E# zFOKphn<1&6Xb)T#ZT+8)(E~u$t!%A^5HBZMzI_qyX#>}h#uP6?E;Ny;He7CXIa{2+ph_ zpHd^?wLB=@#hZ7SJ0&1PcQcOyx;kXoFWg7~-2k#5;U|!D86>AQhpy!~Bvq1)jPC^* zn@GlTQcI5dB(ZXO?qO;Hyca4qS>+_2GtQR}z@}D>p4buY>eJxC&It;`PcD>j&5Esq7{t!g4C}h@#v}!j{|qQ6KlKW6Et9Og156e`=t8TW*vLZ1Z3+Ig?};UR zP1C7IsUCFNU&oWVU0!WG>HXtAugzNA_adr0u3LlNH$ok9Qbm$i zSrwwG$0d(4ODcAdC2e3vxeE{)05i&6gK#xa*&kicXxo8H;%A(>&mi{`JPG6-fn@CV zvKIH8t45-Af{46B6d$PkO|Sy1=2w*dmcaHzw-yzZ{m>2Unjn!`V*VIp4&hIM{AVE( zt#yV?L@yw43$dGwb>4G0+hYrSj@5Y=Pw^LtP_?Bdt63LLAXT%96`brEYiysa6RhtFu)=YLM=TM^~_&JRCg-@6lJLfKx@$;%Fu2-C7JwwC;6Z6J9?t{6@I zN~%y=_M13)9hjEA9bp?VEj#%zKMMg=-X47RwmvG@S}V7X26%vox~NnK`NtvGTdkn^ zo+5BIu}_I3m3QTh^i`{qYd!TBPd$kE5S^9csXt_n)$-Ss_00tSLhLT%DSIZ4=Tezd z*JJ$@q}U(Kje(vIX^qeVnD$d=k9V%vGLAvT*f|B*nD%oIDieS!5vKhV!hQv&{nR_c zA|EjA=L+kESNyDG^KaTuIxdUa&kT$n1S&ku>Pq{`L&tAFvu(I(Kg%sSYx@~u6?o2H zKnZO7d4m*Q1EKLY`n2|w_bK(T($=DD^SXd6#Mcv{YD?paSi>TznpLdmREqoU>^su< z2E?VE#ig0WrIqE3;E;7U2j5Mo@|gwM8g%y1Nt>0RkPCvi`k{BZ1n=|C(gB+ThVYG? zrc9!uf6_jIZVI^{VI0Wm0O{J0gX&sCj!q88wnzENZD4x9a_f>6UMq#I^U7}OdMTdt zfC|TO28wR1TEkib?-p*2wIzFfM~V7hEAgc?9)UrAlmA-l6TNauod zA-EH0KHA3U+Yu%bG76Y=kW)cH`$$1+$9|U-u!BS@+ z*__uekxwQ}&f_O|{s~OZ^AQ>Ylk@8l`T-T*X>%c;KDY`)dW@{6{Aq(_b^mrR*giQh zZ=|9Uddj98ynYm^>s@NRH&)4xS*I#*)!0@l#k?`)sANypsiu>Gdx2S}^40h}8fw8h z)pp{)0ex?=Zlo&6wy*vg%RnV*xL!x+hEXPCJukJ&5__JBl^e;fs-TCB2zo_<%`>y> z$M0f@v+?7+dT01A{F>apMAZ3zacc>jHz1!PEC=ybkW{h!%36{+Zdf%xP-zr(Fpw;7%e-M-I7)ucNT>HMQQ=Dxmv?enp>sJf3%tIb4lGi>TA4vD{{Us_a3V73_haooXQNgVI`cn`t3A56KM z?jeC8gfXN%66j3G2MDhU$%PF4hmAEr*MfY5upXH01=WLmtrR!=dZnKC6}2Z%=6h1( zJ%G1~p>v>ED2hjVrQRfp((xvvG!cY8wK{&slNo-pd~UK=U|i=ajF0vz|D71i7bZW# z@Eu^jJ$b3)s`|h+YVys=rLdPl-P^5;br=>kTe^0ndq%@-%V%#O3lJWrSOj`d27 zOM{fmCMCJ*6b?gM&&ccuG8?X713%?{v^FNvuj{ICTN}KRo^hoK=C|DFuyT;ssO%?8 z{FD3x)>3q7o`>v-rQ=FgGJ02dO|l{#^lV^!yjPdK1qtlH<+v_a|&d zcswXtvEJS-@MJXZ0HMWa6iS9Z{_0O1$Q_lfr^(t2bY>0PMowlD^(waWfwKrwPrE7) z=uaT)5Z)2;C1hr@tEK?`1LXV^SDgp+KF9=waYFutEI@chNYYK*86x}!a?&9;y+d@u zVq(piz$mM<}2ls(Y?;Goh=A{unr;AV&}m1LILoCL}xTsyNWoAx#i21-0evl-q5- zoIvtY#&w01YbB4;Wv)ZLFHoUttp02qNpro8W0$1S96Rz<+5DMt{)NDA9VzeRl%wKH z#`*j4a}O}*-B(Lib5RS%`R|F}48mKj8|is_@Zj|j)i>o}(WTH{S$tJSHA(TVl;&G( ziZvoGKQL-je8qa?eugnBNbz>!hXb6+!@-F4pQH-Vs&aGc!{SUH4t|W%DqtQC9zr-E zL>>;Flgh8k0`qXN8Ny{iRVq#UXdJkkF79s0JZ~%R&L`$ZbZ!u%c8~`U?h}#^c@NtZ5O;-D zrsql4My9^@4Ox>1aSL%cADD+>yAXB?k%wV9QCF1#=3!WOgs#99d-E{tVc3JfJPi8+ z;WHufFf7+~RW>k9Yx^!uosDc9z;$Z`d3pJ zYfTs?#dCJbHNNMcu-NW zO|a`hqgNBWq$r6G4NY<0BXkqdUjSz_q)9PXT?CvpkOvT^0MFfzglvax0s0`MMTV;` z2KpG}BZN1A88vF!I%fsdN?BgtSD}6>k9|wlWz^_b+*Q{Cm0gO_VhCCKoG4uyGL_(a zKxnbG-)h=wm$dOJl3O{Fn|FR?X5}(K4Y1Ya1X3|Ssg|)MsU=Bj5x!oQr1FySewVe$ zv6@e!rc;Ud8kH}B@jNZ?>`TGWcSY(ozUSkp9~IA?Wl?RqwMh!3py2!xi(H3uO1P>V zh|IC7c8dD0J;O3^zK8Sw7(7Ewtw|YgG0*&*p%lSm;;c+pWdH{G z3+=VQJW77plAmdby>Kok$b5&x44Ja4CFEbN3cZ2Vtn}8uWE`71|L{hNXKiB6EWMNL zbs(w}Nwon^cgPBaSA|>$>6qoJ79hDC8^UW^54KLp>1N$h(nq~zR;N3K0^k|9H-53?E>&(UKX=C}(s|+VWh51q?TlrYF>r3TDe?rZX z!)mNn0cSJhAB4YwE`-#MQ=K5>mm#=)U16WmaJ5X;Zw3!+%!h4#WgfcQTtxh|=a$e5 z<;2Nl>_!~lAkLq%TGA)&3`T`swt;d>X|B?v>iIX!eD68ONs~FGQzuQPmPMCvlTNC% zxjsP!Wblkl59B=sX=3-2;51;G*fNAyg-A=>im(}^_TvQl);u5<>%myxM)2Rn{{>tV zdIupD&v8{Q&<{ddAzThp8z#6&Qw8E;3C*k(!Gnmu8Mr32DyGxt<&@Z&ET}awtz-p2qqi;F=hDN>Dr3Rn>u( zrv;M{#tV_B2AdH!fTE`db!?Jm70*v4BS_D-bj1^zr+y?sSrn^WfiENgv$WI>p$#xg zOG6O`1MdmVTym;@;$kdMXr3l`CNNKE-nT{bhwJZgZJyACE4nHLcu#1C*u3T1T$m>` zHHkh~R8;nJ_}u_9NyK}uk|z&sBG$}bV7*iF@E8#tF}nif$pf5ht5wQ6zeTj#&G+(ObffzT1F;?Hbk^(M5#21-woAz1>s zCS@n|G9C0cZ6c|hkDA0D6#o~Y_7J|O1E(hBO@!Bhz8vyB!nZ(0+S*i1S#Gc-81RoJ z4)`Tf&N|>13thkz!`1|w$gGs>=W2K>HyTGJT1gJ)aR}v|S#O(yE10Uk=@H%{wF*Te zWXt^&>=&Z4s*rWy{0=#Wut&(>khk)fWrO4$o08P)m6=a z^E*UUbJgz<*QmLhlhhN0JPPzVkSz!sh2%kMRj0KAT_5ra!m~p1A+^tC00X)`WE{d6 zkaabr!7)2R_Jh1@Gi63dKZjhv`jf+q{E~eohcZIGg7rM$niv@&8`ogb3YZb{VTAjI z$OyR$VLK=qAv0`}W`y)p$p~u1o);M*SNuYPGD6m`$yy&UBV-SR?!b(Y6A{J(Z-ksq zPAl%QBjhUtKM%|ZImZ^wA0bcS+KiB;YEcuwKEt+o3tERf!@ij4i$uj6Ay<+}0}@FX zA@^AC{s{TJThdsJEgS0c;^`37t$FeBtKghF6O$QP^^NBNT99AtCRTa>J5guJRYOD90p zecD>BCq5VF zn6g}MNiafItDkKAvT&u-vj4{jS!k{KMRhCX+N#(8F+zsUthdAwvKlX4PXF7hW&bIy zGi&f63f73IGIhAY22M-J0))9hcYzeE%c3RF*FtVX7%XHEWHrJELdHO{>d{(&o&vcU zp_h-1L$WUA0R9PWfw!dJF7J|S4nEa5ZdA+nL6||VWHsC3KWfiHw zp(s9{scZX+vr&4=D9R1Vw}E0EQG6;>UoVQ%Kt4igC5Ysn^6J7&$ju$z&(@0X&5G62 znfd|W{V6O?1n&0)?&pf)yiEO(@BX3&u4(`x7yQfp32Q|$#p;F3QoFG7=K1D5PhTOT z)U7DIlBt^hm6C;8B_t`=e|buxl4ToK7aPL^DDm7U zv-lM8Ec>vY!s}zeH8HXeYZGiEh*bHC6+P;x>YtRxuitneE^2g%4PN zvMZ+)y)#XAA#l$uTN3yu`xE5x^<~zBj4N$X=KPFz+`S0op`}vn@ z|IAZP)$#KahV=N^RyiU$Hg)gwjZ^Bd;F|2^=UJ003Nx$!ALRK-qJAg8`+)O2r00dM z>Ij@Aklzq?f#e%TYxT1Az#7{aN2vJ+t&$m$HqOz}#ea}C6dzOL&3-ycvnFm=#n& z&{NmcOKpQu(TpS?tH#Ds*4PSz3iG8(w(|9wdhI?D%V3SIKUV#KS!0`nFdLXPwl5IY zf{uw&)D?=1*^`r;Evnlfgc6DUJnYtk!93Y&C6QFrnzvAfff$ug}u= zC7D!db31|x$lwN1Ki|qVO{^9P)&Qo7bw=nYL|Wn~gb^V1WzN5E%^I6nzl8OB1kWb^ zDd3vWwS;^KTM6`5$R32l##UJG^fk5tb5m5lty^v{%%3xB)e#aI zL)4=rFawmG0%2am@k{9E67-A&m0fI(%jIY;x|dsLtlmhDyJZ#oTXHNHUAGCj1+Iya zi|*yHrV={NTG@-Pke$t3wF1N&Ky*_Mceda@6X+`-O?o_|bZ2 zCNADz>QmyxpLl0JO;VAEtf{%icNe4A!XKZaC#PG7WZmnE7ZF= z>dMtkmfP5+!oQBRzvexNtaCr9$xqym!q0G^2SDCMSS(}&q;)$UTmaKg`dP;;7>nhC zKB@hWl27R;U!b!Vgtl58|1v0#r;PFROfOeSYNZ&@>l1s?&@l9JeTVrq863vebwK16s; z$SBCL&aUbWoLe9Ry6}_>IM+g!Av_CQai*UlWN=rmK0wchBwfj72_efw7cvj%_aRfR z;*J;SwU7?oT-6+u*#yxu=1$N%5mpiMzJ%^Kp$jIIIcfyHA+8^x?z(exL$odinFtvH zvdTbO*($Hp@*SoA2+F%b%A4nII6-;G6Z04PM}adGa`Dx)dEi_J8G|rVNO#D)2yX&c z?DaH4j=+8cX7>HD^{UCOTnS08I8qBHSiKGCl`kHi%2k%+e9lxF`sLH(~C0Ck-H?%m?$4`?`VEEtdp11@EWULm2@`xj?hz){Wd0x@gS_S zyj~<~#}d^-Wo%5a3bd_gy?5Xm+tq`y(|n?Vdsb^?=h*95L9`)_y_;F)*vI~%uAe08 zR%)j&(DNacda}s@B)<;nYK<6wIX`-GxA=o%^fghpqcaFNt076fxQ;?xQH$>+L?7hP zk>Iw#_l`p;qb;}*>`I5qQaq($3XZpVQfVKF#y<7UN zf0HlSoH+r-+kn}e`8&cv;2JgAoLRGvtEz#zFWBt#!_XUMRpk1T-bwJbWv2c`a*M1Q zHx`o8*lww=5mNCr5I@&}WcljB`ap4mDBjd9wUrc4c3ZuP&N5(jTLnaRTLnZuJ#ZM6 zL%=l-S&O(nr?Pm4LL>1GKKyQl`X)mmz)gL z>Yx^E6Dir(RmDN%R$F>AZS*`R*&rTCi|6c=jlSnAuxJa6=de}dYf_1xrxJe`2#rnf zEEhJj52Ukv(<>Gv;7et^9vp1I`Tz&-1GDR;M39g#`Af?|adxBovm{#Kj6}_-!{ut3 ztp?c{68g*%`Fcs3ywz`?7O^AW#tda&d~g{yn`gO}GwM#Eapc=1ilkhddwplO68q%* zOaF@YqnE(W3EOvM5aUX=gcbWg!xSuqAtPl zdBE8Q*@>`4$X-aF>s)mu&_^I!5H^8IvcdOF>yG{BoUe1sWz1y&GW&Z^qH+S5ao<xxSoe6fN?|exzajj<{^%gN`%Q~RB~o=)C$e!z-0U$gh{{^)wtv_^076S z&Bz5CEs=`0!yCzj=Gx#d&3lWo>5+{A^>1Mrox583yTkiO9W6?tR4s`5j%2=)bUQ&> z-oW($=-!YO2yY9y8FB>SFfcz<7+LE1Nl|rX(4XgAoAR+#xqRuRY=6!rFqKr@>Ln>( z@+&F$2ul}qI{{jaWHe?ioIomTv#g)Ew!{!W)1$E%2~4KvAklQOpxku;-KnS0Ftf>33vBqvIGp_!PXAnk5OflTDAg4qimZeW@GlF=0W zi3yb*&bQ%m1)f_J9=Y0vdzYNvO?a-^z#C5M1(%$HFjY8|sNcx`Uf_&{TyrDiJ8_ylKl2iCrV@>OUyA3j}$F+3N58 z+Ee5!?D?u#Bj!9uaB~zJ0p~Hun+VH*=jT;I4#5rp{T?LuCMJYHuZ6sV@T`!nklHu1 z4;koPkT(&Qfvn#l8*CAB{(^WrsBB1v%KwBy)vKWoY6>Njy5F!m1XS|wg-VUIitLCI z#ric;XQrT-@-ol*Zoxfpj-fXU;U?f3wGu>s1^WW%97y^gSEYgEXZmoH7WkYiK4aIU zmJpvSh-!^a3t&DWaVNqA;2O2nM6ZCo4f4K%JZjzeqxFj9u=fdxqi7rk<`WWi1~WDR z?-LTotc~AD&+-Y0f2k#YLZU0)I*UjCGNg`j8+vW5NQ#?C$`-mNd$g2Is%R`WqkyTr z*ASM1xKveKswmXZx(Oy(MIY}D`DZW~u&Z6|^bD z9J`v_jp3uJ(&;*oVmn|u-Ef3kg-G9g0^u=`+LjjUTeHw5))TSrN$`8bF9)s(9Z1Me zu$@4Ugrp8-@dBilPjJCPm$>La$E!ndZQ^SI*Mwe5NEcWqVD7;i*lctEDOT6i&=q9x zkb8r%=!^o9u2#p)Sj=ebXP3=nHZH?&4&7^WF=AWkib&l ztc6s$l~q^ZY=$gFcnKsYkJ0L8>w(Q=lFcVuxtr7QP>HDW!|0>HDFvB1$Kp&yu_E{^!Li}gDsW~(CL)Xlo}VRzyajs$=oOH?2-}3LfsD9~ z-DW^(sPdy(2?g?JMyLYolsd9f;s{kn>Ptqb7T8<{Oy!M37y}YUs2i;D ze~nQ789eI<Oq+gY9hrqf-DaIp~Sn|%@bfYdg$Sl>EX z8SB|tUqkRc#NP#66FPv9mtijfJp%G2!Um99F2O~bs`D8cxSftyo8V)_{|Q_ZdI=%r z#;|$>%m{UBQ9~80DfRR!89Zc!YJtvWAacLeDH@^t?4}194@RiF&RB}iX9z32+;+}j zgu1jCiF6`rDhZ4MPESbfv978LoEsreAj|;CwbyD@(*8sw>vP-5=HyoHwsbsnAj%oX zmS8cu400u;0Jui22O%%Po&owsNZNSLKhU>9+8{I)atGu!gqMXp2+5s5^9S)+kgOLu zTy4|OS_-LPNpkNsT2=9Xyi%={oV7nMHjbP{hZ5z;p%;F-0cSj95yDHrHM-LX*$4X> z=*J-!PGp1u`gzDmgrP!~LOw(IK*;-$D<^T)19}}~Ey8Lc-#}9CKoIPP)JCW-3`SR{b$HF$bHt@38Y*G75S4*KDBA~XKsa5t-Q_=jEO}X zeImtdoOe4?xfHh}Hspe!D-9??9XBNE3hK8Ra4v&vN7y2y9i;VSdNN4 z2f4bswVNs)4iNP!Itzib1Co3f<3DhX+6h9M!Wsb`?x@u>2u};ig8Yc^t&j?kc6W1w z4D@-Bw-8{nC!`l7K833-&^JNuN0=&P6l68R$3pIc{D!b!$U~53Q@ObY zdJg1aga<*+%aEMcIb^@bA!8>WL?U-(-iJtE`O%i-|FN(99-M`IJn4!JQ<_RyrLTNJ zYHL9#x3$+YPU|baq4br(nEao8CCz#W`bxD%-mKqDyRS(;>+|JsBbz_zD<68vczxx5 z8)5p&vzGj~|EtgL-}IG=Hg}HlrCj=n{7GNwL90BouUu#?{;RLFv~gZvk-j*wgI9ka z27Tp~($ukB=}X_s6ENV&mgL_Neh?yClfRk9`=B8Cn)Qs=)&u*Ie?e1$zX#7*c9FcU(X(huny8osiEUpCY^=WHV&?3?6&|{SzelA-a)} zLdYJ-R-pfeJn=Alo`FsyzuzHj6jB<};}P}`09_ff4Pgt&stZ|SYbU1>B&Qh%Gx2^e zs5EteN;^_Zr)E)UGV!kQD3>JQ%{^9I#bi}S6pz)?O+-=pKqr(sfXET6W9A;o)s{1V zzQQ}JtPP6Q&RWIWmc*(BQ4e4-1vrf$+Yz<^v+K2tHFA_Mc?}H*1G=X!BH5xnCYR1+ zmInAfz`HDT6?n<}z1=Sh>~(&F~=c zL%OG&CpngKR(*`sOc1)*>Lm8{P}~L{<#~$N&t(yJtjW5$X@A=mE28qnbJBVG74a-n z;@)`e3Cxt(*Ndu&=mk^a$;96wsjszu5>xl`-qOY-sU?!au39Pk{Jby3a=uva`48*t zb~J|_nDj5jAlV+mAZco2iq+;N;6r%aUn_hGDyBAe;ccgQ+3uO+XkYM8>uG z2+x9$wvFn)#?YoV&KpDbm1cYEZC>+#z;-%k*2Hq0t&>C*;%$ex566?#>rZge1x^Xb zOHcBC7f9aPN$%M_Q3>4M^Fi83=*C5b`v_;~?GwlGTaBq>*0wSv?@LM|dPzzJBWGj9qY& zv#||IG%Q2Trb-kp_5s(#JWR-}IlK)9SVULqH-!B{7DAfMWx4=z-h|}5&!M(_^2zs} z5lHrg$rn-^oI^tL-o*?I9|Y#Ti?W&ymnzN{DC`m&N=)$&fmeYh+d-N$1z7Vy@W)tyH? zeceoN!g`d~K;)fLC|tevPQm$>zGA+K9!Sl>%ao(BjG2s@nmyPp= z^z(QEmAl<*;$J$RTW8j%m8ipfqDD}E13}mJ@^~$|2gmAGn<+3~RMOkKx!GvDhTKAY z=>;@Apl^qyyvSM%Bw4;#-N{-q%!uWNZn0h!NJqX0KOVi|zj4=@g{}23H<@U6vkK7|1t>*GacOrfJyx=gg1b9i9z@t*uqo| ziclok!ZeHh;ul80f-8Z1YQ6?Sbzs~TAanrUH{#C^3Num8Wb>>)aw$OlK1z*7=QiL} zg)Bo@ETjzN5W;@Y=oyIbAX!Zp2lgBB)fe%Q5}4)leh9sRD;nk-@v~u10JD7F+-4zH zd4Ern1G9X-1&yzOSw7EL%n||cmd`)6HveP!{9kH`%jXU7R$n~IpP39Sv0j-*Tgi*0 znYPGkD&0cb$<^3&1Ey;4K$r+j)htbX@l4nA$9U) zx74WgZrQ@K5eI95*}@YL*}@YL*}_w42@Mpu#(`|%83DT)m@PcNBJ36-TX-&hmFo;J zTX@CWTwcu`EW(&_l zK|;P%%AU`lI1A8yK@y#JMxy3{C@1nf8!lUTxYv}Cc|qWI2l?0EbaNdUh`+$iT409g zV#|0c3C!itH%R9G4}!52^AtBmY~Fe8_-z`RpOk?IE`=r-VRX4f%Z~8zX@34>|ZDpB)2w zIHbzQ46GkPCPCV+Mi4vz8MuaN5YSIS)~x3l0MH8{qrYG}1oZ2Wb{lw~1n3VTY9rHB zAzwfSLV5xHy~KR!s$Yfdh3tcD24(-0m>hkGUH2}B&-Z!tkyR4%kFA`n@{l$AZA?|j z2R~U-2a>kSBaVx&ufO8!PayjuV&-ycR#yot^D)Er)*Fwf|Xm%TJ^ra!Qdt_GEMz< zYvizOKozV@)5Anjn))LsO$VU`wl)*z)F!Vp17lzEYK8TOFVdo~oR-&hcv>ULX5YeT zC?K&(p)tz@aH_N3I@#3UJ*_XB-Bo)L#@N>^!#djmiT$V zo`l`j8}B)aRybO6zVGc*v_1i*XZU(yt4Xbc@vqM#?GG{HAP1+Bvr4GnM}xAIH;5o00YcY#WIEb2dJ(KXatb{)AJS zkL}@_ob0ub+py~aOs9C}7q15=sU70KR5Uz^Mq$ptv~T!=9f-VX^Jp%oW@YSxJ-(GM z$!1Xb)8(V#RlbK+SbrcMI$M3?!KCXCbv%zcOu7}K;p4v5J}h>N)rMcaR6HxWmH5%- zgsYWURf33+$|<)JThRFmm|KJ5 z-!U5ik;4bP#N}6Sym^tfA-oPFE|?cpB5^Y>YL7)rVCF>uk$F)-WL`7}l_!8}9LT)r zAZ!mX^P)??=UoY4=0*1*+zrgUsFF>Z`>j9Byr^vrQkHqqcc^RvW?tm0Q9Y;y6Nzfu zTvZuFwp%x*LOsv5f$huOc9hKJeq|m zF>e}8x!X4{*v%K-K?d(7 z7n^U;*#ykRCi53YJrJ22DSvj|TCGZ!sxn>Q~ZiO&f-HCKGfTr{$eJOPyvgOv{yeaT!HIOw}{YF{y`f?911 zY5*r2G612!cnHm~Q-v9e?KuCqyv`F0tkFzuQGf$XVCo$Exsc3vZNk;ld^~2&*s&6PR`U6vaD}#ItK`*Gj zpNZcALdDOhKCem06=bcoWO+_fxG|~^`YBXA$PGC#DQpN*P<#L=NMSPZ6G5b$oi%t< zG?V#n1J`vh(F3BobpxCE4>5VicfCDuJu%UB^? zOs)nd*9QaF`~pK!u0JAvB?v_laxIPBO#e*gYX%Ln4wiawRL2_H%&S6Pvhq`?YxUSu zmY6~ZblQN>o`lRx3g)?%N#T+pg}IW#kf$`|Jf!#5n%-wurt47o1<1_llw30tdM&$P*a({DGd0=i! zeLZe{M9;r@Y(ac8K$nm)#$WMC4x~!9Pw0ZEu5|&PWxN@P#f>0z;6FzEaA|vgEkBCU z9208Jk*@{W>t-&m++ODeo4JDB8xme&<7*K=){B=45C34p8xj8W>2}F8d*5-qGA*Yu%Z3ZzJk_AW<`@@B4u>67o618lWdb zV!t!}1Z8JH*j8YU3(fH@IqHu&_CVn(ki7NR6m_RfMyq^j4EIH2FI_}3`-plBori&Q z6tW57E8rTnWZayD9Rs>J6{Lb z@D$7BN#0PhkS6PiyyF?#Y$Jk4k%=cL^5I!3mR2ma_>whNf#ff9>(S8?{rnoei#**4 zOpU&Run@$hM&nYGS}JlAL0?!y&%h~b7~>ER9dD_V1B^gX=I+X1*J_!Q7#JQts+-R zQS6+qYhQ|@TnJ8~bOJ=;wg$}%!es2?z{;2Gn8xqXrbh?hp(tYwOT^UqKxGf7&gYWK zWa9N`NKb;hOO(0VU1y#0JtN6Vuk?~%N>=1*Hxs2tfVtZFdMq%Co`1D_m-x5EnYVU* zv-QTO_ma>Wo1Uf`CuZwMRDTfl>{rN1K01FiAzMo!6*FTh4)ptwrx0cUQ>_mM<<8YO zy(c}j0H>x}-K>~O1KyPUajU46F9m0AYI^EjzENEaYKxJ%378ca6^Qr8)59N%qMVCv zD0Km$*}r=Y%D)Yhd6B8T*by&+m47jwmR>T0@|fD2j^P8q)Sj=$%D?FOwf8#l%YgM( z%6g-dh}Hw?B?tQ6zC~**FulRo3oBm=%ISOl2i?Ct&(F~d>RQk2)f3MX(@QTC&+@RZ za>Poun{m#+gxrJ4Ex??JL5ID%O89f}f9gqddT35w@qQE?CLlP2y%HyEhiyfmz88h^%A>L{_q2MP(si;)w%U$yVnu z{t#kTvO7Xr1GAF-I>KULR zh#atP%xUmEw+;%mL_BAw4E8-w!{Q!bJa-5(up`m)$Hadip1(fLvsuFK5_tBdb8Q>( zAMO8*Of!?ll^%CzkngdT9ocBUoRm3Inj~J-ojuY zpN>vYi$4~In9tJ8HSa$&AVZ{lnj2$i?( z!yg9aE;_jaKff|EFkT|Y8`F!wF2?nUI)vc?;F_4mgk+bGsS-f9f!vKSUdWY@g9y7p zWUTck%Y*iMxiCngP?Fe`p7Oh&zfL(Z)d7Uwu~&i9@+ZrQZ&+hidQ&mpoL=IK%gLXt zPThy$6kt}TK0){pxJFG@r;>9SRtPbxQ{5pQftenBXMOTeM0~P3HCTMgtm{2=mIH5f zYEPi(OSV6o<-}LTNLHtIVXzaJ)v25cF;xz*Ti#A8gViZ+l!N6&a}6rA{&{uRO1U-x zy(K**-V*;ZtGFC@%|R&njK(LcP~K9Ajo@p4Qlekd_3dJ8mbow-08Hy1;7_vE2K0jd z^cC@6NCJIrmi^OEw9IvhO(8|8G*Z};uD|zFC|(io0_i`agA@wT3sM+H{9q7z#?Bf1 z6wIfPPAfyInkXskP1hH+vSoM`%NP9=rUWT$NK7HK5~DDPe4LO1)gz6lmCZbty(q5V zPS46}jcaK{?J;Q$Oe30#a3|o)`KU=F`X06!m_}5$a!geR-V$d}<#j}vM)aCwR~pew zbRGd-BN`nj`ch&e`csUg5v{=BZD1PFQG_GnA#~SS8j-2Dyn7gFGVB=WFH&7h(e!;p zl&`{_8So~a<*gd;K1qHDq?ep3bs*FB<|s7ZFsx?sVP0jZI-P zmg9j*p}Wlq`9&{ia2ttVFDd+(&>ZB-SG0b(pr{Oz!hv-Cs-Hr!sxcJ?CWYY6R23$s zFoO6YAavX5DR>KFww_i8xyvm^8VA$0+t!xiGi+D+X{@t)Jdr{#C`IXNF_j4-Qxej! zt~Up+r;F=D>3Wdwx+5m-fyw@Nf$NotuBQ=y4+!;1a4i*Nu4ra>@^99YgWLA<{_wOW zUB4-*$?&uaFCU1f-TyI&hu=QrO+sZQ@^ef`LRKQz+v}{nB)Z!RmM0}$iu*&NJY@gJ zM#vK6lQyCyOORz*YVpn`7Ro}m+3K<@koKW%{Z1?)71){kEw;X$ zS?O0$+t(4bkDA^MoS~4a)tOxbJsxrcLLX3e8bpQ%N;Dh z*kstcB~2(=EOuT8lKGjaLUeuw&To+O&W)*>z%^>82pjSXfHi)T9fnEdo@Pe3n59lorbzw}M6!J5q z6{I21zd^3Lh$|*2a|)toY#6Vj``Gi^D5m}(RL3FJn#9zfjUiPaS6)Wd0bLJreluo} zKsSLbYaUY%0^JTWmO$SRsoy51 zY5@HtnUQcL^c}rkkPZ)|Y7?{@+9z%E(s0?wp*t$y! zBvTO_^uB1ZI-RV$m1 zMmSJuF2qlThr^^&t3<`0C_!{7F|GvY_mMiG+yU_R#ByptpY-b3Q9Hz>RLUitDYSfc z@d1>k0JEYO3DkVapZ^7)UHlH+Z;a#G;<&iAND3t1qE_jYd43{E{m2RMmJNeMN?FNY zHVhJ}if$FLQJp1`>>v?eO1CGlRy@U&q8-X@`~)fo3HZ{#5*UW=P?G>nM0Pt@vo;Jf zXJksJxY5RP7N17Vd6>hK7(On>rgyXqQp+ew<%itL{n0kP<9(D?h+=jo&)o8fj&$W! z!#G673Uh;UG%%NMaOx&*bi0_#oOchVKLa!2^7Z(g8}x#?T*d2Rsyqm7_{TfL{wd%;C$?Oq{$rm=I*emuxNbQ*dsvrewXS4z4E6Za`(PrV|vB zrJls=b&yE}Pmn0HH2u7Fs#I<%$`^OfS%{*!Ls*E?i@@9=_N$_$cu+KxnHS z2mLxUvwCk$|2=EU=Jr7HYDYJ6Q@fKTbH>->W-aiVMy4Ivc=buj)Z9(I!&m$rr9x56 z&Z8uSM0dK1rcooYX>l7Zr~yWOtCr#dK1wLiq)0)jv%rtp;+Wh z?x1e6CcFwMuG_fL>LhO_-Vb6j&6p*$C>6TgTKun;lzkCJ*n!g*aHtzYw&Cn!VDfs8 zb>r#i4xA>L?QiNIQyW3(SVE$~eS_J<_>i^an~8C<+|e!hr({_!F2!z)sVHzwj9gq= z!&-pQDr;r;FnTv?W-sEq_S)zuUy{ud@~6AFr3ZJzw`>)ihL@?p>`7dMutdm3#H0-5 zLFWL7>}0Ed6IWso`pCMqJK3T$9v}ZmvcH)vyB+nBPxdpq+b565th!QjrBqkC(an;w z+(5U!nX4NxgQl-1zaHgvbbm|>y2>DQZw6di$EJE0bb0caL{jEC%HxSo9;XLS9wSjt z*F1SlUeC3|vFCvOXp*OHZoK_<F+B*WK8ouL&^JQ* zA@m03I^erW4IG*#A+6$g-|*#ECys%$F?tGkT}o$o^~mcPl7XuI^jNe_>;4d>l^{~u z>c{}2vWJoQ4s@SGPY;LeMQ0b#lOVN5bGZj9Ly9-DxaYk{Dr+;Q|Lj{q`$e6L!P6iv zrHo7I@+B4D+P8^IYH>-0#`0}3&vlta3_v*Y?txYKPa9s1@CIIZGOd~4f*WWvBQaK+ zN(imuXN1!{Uwn_MER|5Ld&b6IR6-4+z9CzyfYS`}-R+DCz_}ukTmacNCZ<*crvhZ> z*qHhZIHe)G$8kpmD#`WQPbj1c%JH4P`dK^4VbSHO`}mmZ3RLzOEa#$f@)|06EaWkQ z9|Zay$Ug{2K;A=;%WUTTmrv%3$zw!}nh;YXfSw1LgYXonE#v5|*2D=UdsbBKcCo?O zoAbW~^-Vy9J6ru?)Z9Hp+aa!2Sz=c8+vUW(D47Qs-#u_wr#zoL?8#R$`amjO&#;qWPdm?u ziK~4<)%rw7?;s{Rl7ng_-#Ra6mDrLjN*89C5v$=up7sMXV)-gbf%3mbtRCog2mIAu zPWlCbS6`}R3PbdDZjLmhEoj|=#dr{1579e0yaRg+m{T&qI&qXQrTI=$Qj)}pTyVCd zz7435uO(mPHq}oP531-Uycbf!<=E*VkmN}*l>|&xy%SVbpB!qTan22>nW}Q6s;Z+` z6?j$lQBb(KqTIx*vJS+z1E$J+l_cd$|EjWK=nfU1TBB$cw`A$ zP9W9y9X0Bn>+DD61spsFoF5=-5k3QDjzMG^A6j8Oc%KZBwNBcPp7HpEvwfV>`{|DB ztQlKgD5Y-LJ$n{)V15SV5BwjL1Xr^isO@ByQ-CXKMLz>_kf7bb{0zuEI~b7j3i#q@ zKyLSab-If?L1276gfIoL#TvDpcn{yrqB$t~84%wWGjUPkXF$eWOTHSeSL!?z&jn6( z$RLF4fNRv65%LRcC#d_H&Cbmj`hAMmS^P%#iZmSaLm*#RMP6r-wB(0CjF5`Ai|&c3 z`oMfe;J8(E)Lc>Ihd???0pCOKUUcpTW{*KYUPz3267mTu9|G4n_>7RGDLl&~#OyJ+ z1acuTdkjV(+zQMdgNioWe2ki;*<&!eFDc6`dfCd%ut`LPJk^tfY72q@fGS2(`zyI@m(F)zCtE#K3tE;P*bK(R_IEx=p#~tdb!MI`tUTWjF zS z&Ju0@?wk_7W=T zW;v`=#K#n?Y#IUaVg9PGJ>oAQ{HIj;U}2% ze%E8Y0g}%=*54FaH*HvXS%f!VnAXY<+sNcwA2MiGJul0LE~}a zUCMej<(CQTv755qwn%cTu%7R?ukcvE1m7@D>q}WToW*AI9nDH}3ru>=)`6R%sdY-qBNjwMm1-Ee^PplFAnzEcD6F`0Y<&dH% zUdr2D9Xhmf=h-MmHdmhj{c%7Ikk3eb0;mDfa5mfRfH6Y8s&rJ5+iI#D+Eh0c>C`Qh zvEU>CbqnRUBu)X;N0mGpKG_M)z;S~W{(6ev^6*Emzy<;JQ6&%GF4pD^L%wP>d=B-A z3s?&J@qlsx9tqdawSXQ;(FI%$?p1(l;j<*30aOb&koX+XAIs@3_CQZc4So5hQ@d0z z3fp2OK?|VR?M`AhK(T8jF&i*Oh!Z=zsIZ!CX#DuMFO`<2K{km zepTaL;NAhK8vjb-&w#4YI)|r#ZonnQ2K1zK1IAYeTXh4rgJ2sWln*IQA+ax@*exK@ z3Ai6px~|xOangX@8^%hH%ZHR!fpZC9ZcFA(60b@|KBUxeE_M#=bQKwo0Uz8E2Kqxv zQz_mLP#;n{i^S=GUog~%l%6H`6tK-JaJW~C&}6tjAJPW(AtmQL;&VWKNNE=mV*&R= zO3U;%*spv@X%n>44=Lr~mJyEf<9w?*N+c|^fSLn$3Nqf#)6pjP2V_ueS!eFU(=(ww z6)<-t^9K@-0)D};X7I#1pKE_Sv9e@xWDWlSf$qUG28_PulQEZ-cAdd zDS+9J%sLYHOU5Eodm-)<@UIgt+wf!&xlX_elevS$O_JG}OxZ=807_;Onf=J@4X7|{ zY*Cn+Z8@SCW3N9FtCET3bWlzPl#AZ2h&B$i;>7Y8<&OZq<4gP~_9}DMWKBY62)s>1x>+wX=KwupI{T02OBC ziWPY&Z(pX^ob$jvM=D*UaW@LH27k&%`-_MfoQL6WAoCE|_Wj%oTRV2Y*9##71yX{iP5q>+;rt8Q+dl;bVIH_32=cRRAM)^fj2N!D;AFmO-_0M*k zv|@R&1~0{z71WP)q~E^9tL;^|ybP#rzpPlBm)cs>6kGQLxZg?5_i5Z>>uy!8+vY7f zY|&-jLEG!pX1z_pR+q7801S2T@{>m6;AMN1Fv34*>vohNJIj+nngpnW7Y`3x5Ttn2)?cxYa8no4z&cMb)z`2m7ZFzo;tBo%Gde(&uVFs~(tUvX z8ukw)z5vv&>vT}yC|3GfLdP~>aa?~wa5pu*=qx|cC$Dd%h0V?<&x=jK(ccL8To$;PcW_8m(TdSAnq zzs4#@Z1OXB89V(Q@cSNKsy~(&6|+vNIniIaPO6dqC{RTXP@6y=UYX&gyuhW{H)n!- zI>74va@~H}>Hh?NNKk2=R=U%_thm!ZO3Ul+^bdT_FfK33^ts4%vVTDCC}fILbUXZS z2Gml21Bs6Sze1Cxe(M$0Mj8m+u31cnP&7mHeLLxj+`ss#l>D$p!^#5GbgIAdN~uYd z{48vq0-W_5IatwT`CWAKQ<~T^4j1Cn`~&>+A%2n~XEpOZ;Fppiuku7~$^5J-^p=cX zT=s0rEc1Sr_8I;-vmHmEt})cuuAQ^{DOH`}uiRUz5;=FLnw|UCxYNf{K zWrk5ywZ>ohvscx7RP(k}wc{_$NQ0k5;3<%dIR+p46q&$PoZ|s%9(h8u^%AEPFOB#-#3Cx|36`e%YQ18|=2J^EG9ucGPE zn%FSL3Gw6pst*^HM$;EVeJ-G)>3@)TUosL+r>-T$1XMJA3W;vOueeAw{d;l`11g&S ziNv>(k!X6q>$o)ssA&2!5*Gm~=AER4A+$#rqUmO2QI`8UC@%xba`!8u-3nTHPdWI$`Gu8{|vG!>m=SfiP2`J8o6*5N9*4B5tMHMrL(JxXf=@%oyFI3i4pMetqwJY#V_dIxLK2w8RH;f3wfxt zNjy{s6mtQ^`Hmvzj#ADyP`(Cm7M5`K;u}MC%0tBpR!ap#-1W@+5Uux^|Gvol#Zu;5 z-o&H>IJ<7dTz5*%6x6hLF@Ez>N!3K=@w@#q-jv3i0NR1@nFg2($SfgooMc+btRZo= zWM-0ip2V|&;k!<|ZrO&esL=xMPw3Zxr>BMGE7z%GK8wG6&oPa)@^k(X1(xFIiB1S*DV z{on8eUu$-0Brv0mX4I(g=4<(m{qJ;5e4Jw#;hP!k6L9~DtA7Y_b$7^(_6IaFr+2;& zv{|XE%WA%|e{wqn3yLzr*ZZxlkJF>!8?54AfEo>bG@faU1Fz`y_Pm)rJHYn`tvPp` zDb|CEtUHADyMAk_$9fqg#{r7u`~^5i60p`4-kFfbWA|tkp8ryZ>8Oya~L8H@ZIdThor$$|*pe1JqijekrnsD-eyq=`?2n~3S)FcuD-i_1N7h&(cTmY$ONdl2B2&DB zxu<5u37-i2MO8%>9OXs#hI9g;g!S-fRJ=sklPNy|a2hvSz$jszF`B!+Ip+=oE@5^T z*C6^5=HN95wG7VhP`h;_nMdLJfLD8q=Hud6-|(G82~28lt2U|uXT>koUNKpBgt(kx zT;#|1{V!b3GF_*5uY^l2cSn5Z=;vyO$U880|DwZ9m+?22^j|H%!E}4XyzK6iQ0T)H z?SrTj0P`6#SCF_^GOv^QH;IoW^BI|EZs+s?u$;@;r@W)u7ywvxWbP%gMlxHHIqgoO zK)~98%mH_Cp&Dq2leyy#x9aKN!_6??<@fWHJpqi^hw|gKh@8HkQD%hpX!xNU3A-tY z-%T(8m-V~ ziUP21CDTk|2gy80rj0~FGEb3tfy8q_!>eTerW?@k7cyVz%!r@Kc%n0A&P4S3hFK>d z`WCDBW+KEJ0JDZn)BU^{0Qd#V+Kwj&lRFR?EnJot72u_6T#Xqa(?3x-3X^j{UjZog z_mH>?XcT6?b2S6yf1Oiw&Qdpxb>yWgGPLa2f=+q6qoGjW2GP2R{tkTKmWrg-ss|Wx zfRZ{)q8U)k`fC=3;iXEX{@IiI2+-#Miu2hd&H`Mi2Wtkd)IOc_q+Wswws{}zyrB!c zkLewXoYn^v+y|$70PA05-X`%^z{nUB5hkTR*2QzRydZ`+hFT z5I(;3M>h5KBfbD5rZlDhcPG*x-%#Q_$i@m_eoSUp5@P|sU|A;DMvf)72pGK^nPo*T zUaGG)rEtW4PB_j6>kiOw1I$Cn{F%fXlG%?;|A%-X5wJSR>_j3dnd8Z%Nz4Rx+CamW z7pqx~7~vt6%E4bs@x=gI$Y}(5EAV})Md2vTIlAPrJd*o;DlGSW1b$yyKhKVdmy+Q5 z_b_}Ia9+@~qFCv_qF_WM0O4p@hhX?To%TEJ>0 zb0CSyl37URbrR14TbxM7XjsATv3JrmeuiC4rr|1n?X{~rKbt0*10Sz84gl0<@x9~R z67C_=80*OKwWpjyb7Zsl5^yd6)MoLUBwhs6X7Qt%$TYl^TOpwUo5g=WxpcEQ{s-3g zfV)|Is}_WVAgRvVEItH;8Gza>?k2GW@UIpW*(`pT+`WL>X?o0Si}9kAvsv6K63awf z^#ofzfb)^YDUDg22lPX4vshgcbMK9~5!2Bc!QnmtoKG2VeI%U48pp$RS3m_J9$uv} z1-xR!G>7tn)PBY<)b7guFReH>g`|e|@%G45wd`j@d8SZb_Y2g6U!vb`h2$#GhrCS2 z`_qYGjm@Eia9l9HVv)!3X}JACI9{|7M;SrR4*KD*|CKFu*>6{kZW>-n7Qpgj9W&m3 z!>iMLvfB8WI^6(qq&7s;@KVJ9F+JY)pGMOqK->nRtpQ`3hiTaknyB7oZ;S)YdW?d- zL752nJo^@p;8x^4sVLgMcb~#KVf=u3aHx`s+=G;9MX7?zQQ5Td_VOaa;2Wvva30?+ zwcbjmgBshU*7=%D)mm|v?n(K}kk5lFo=K*Gcl2}l%aDIl&)vTa>1j>YTlF{$7k@MB ztr=R`5;5-QB3D|CWm6wn{6pNR2Kzw(X((JvLgj$E2kJWLcCgIaCKCtMtN+G z^O*q{jXR(O%_|%-)n&q87)^i(jJvIb#={(PI}Z`ZS*Ka7-BiN2 zbdf9J#|zLUe_~R8@?L$H{ryZN{GOsAPZ6yGX2n9sIG@B>lBp;2Gl_42O5re3b6}Q# zn)zl*rKxZVPjik6DC*}({6R9pH}wor0Z^HR)jUnjH87!`T4|eS@c1^$Zv?8AkTH+q z*H7fW2mFH9cp*=$tN9iGBmNs0cMF-7npuNxjCCsyXHq%?aDJytk6h%<)DmfRYTOlO z;|I2J>oYQCzI-t%*n#W~&|LypyOX){S#Amg*8XGy&(j*fI*iQwFYw+lU>!-O`$e|Z z0PAQnJHE{H{t}s!$;^1Q+K2(xIb=S6jqo3^t|0U58>~_QYb}}W{>+vkVBJUN5)!9L z<_R)|zf>EC0@f>J%KysS4w6|<=9T|JU%(chk}(>-=l8XzyKAdq*57Pnn4ez_{rPpQ zerzVdxn(_MfO_9)`a!NKFwyIj7qD1IR@WYS7CMplo&E*>KLPc=)8Kbli~#C=r*;yp zl9BhF9wqSr;2f%%d0*~cSp0Ig+6UOK#jVve)}wpt!)ohcsYzzFf$y?#1=OtO;guVQ z|FL9NJB#wu0q0)Lr*uwrXSGv{?OF|`)n0A?AT`L0{3Mi*3H7pHpdP#>>Ut59W0vDY zMv$@iI)s|!pVln-`qHy9tyNd-3yxxGzQ;L+u$;3IOEs-MstJqdR@eRKbF1|l-!u-F zijJwa@9`@74HYE-=emt5lBI=G?T?z6kNOMoC)L)-v$bkZhVUprZRmKG;uLMho7{@Q z!(s1Zd4O}jHXl#T$II|hwS~19e3$MyYWt|#y27jNY$#6vR7XC1nroND)Zi6s81(_y z`GAU-bh*@UIvn)WNDY|BEi|JHxdd*ZfJ_`>$y-HYqnnvMr#Pf*x zw`!|-g;q){)n@@E<}F1r$AMQA^B&6Y0G!{P*;^cm*Ih+;{b3m$Qo{$;)(WqNub}+Y ztKm{z14dR_!$E)JP8ZO2mr2ArBLgcPf#Rk7yJ>Vf~a~rIp;SY<*UaELq z;MD4>Zv?sc;_}(ldlulv(R+EW!thekM)|SMt?n0ESxR{)RJRM|;1C1Fc%jUgOt}>& z^H(0fp_q#P+ceX%VhSSlV?A13aXv(9>~H@euf_n5=dZl=m2|sO!lOk-UaAQa7TuIfAOT&`-R!-Yhb-Q!wTu<}aY1=*Gj^6yLh9 z+I?O55^yg9ob5HoQoZmd1T4K0{tBhEu*(Bj>&g5~;v30)N@m{2TwMi*eNSeX^&#(v$p!mSMRoS1 zbT@Bb-LLyx1d=PU4?uYzpl+1DN8%ko-6-{aLL&h~-Hn;0mCZWvMcNdv?)Rdwkh?LX zK^g_9yGkA&r(J^Q-Bp@K`2oVrsFTLrBPUE-MXtg zU^WxdI+ttN?b_MiFAXr3^3H6`#8Rc=%o-#{a9aGmHP{k zd|K^#2(AItr`6sg@s4nCUe(n4`+T@{2}7lGjEY5i#xBE@PKJ+^$g<4~17vx2yLv9m zxy>xkylG#I_)`~|8(-Rpg`;o7W=y$ayq+9|bh`_+{r`8Q7nhJ`|97NMmyoXdUy=G= z)1l)%74!9DXeyN3DZcaHXJdPtOjO|@g=>+xN zdN{vZ!a4W9<6NyL4>`a*uE^Q&jnU7=$5(h0r(~|wNCX`fXJ{ljV!cm2SNF^-yr@oE z`sFXm^VMcrI_*8plB3$CPBn`macff7DcYroeU4PmUHiPb#MO+|_+qzT>*r#(M--oL z#%_NqVbWbhHY)bl14bJ1ko$Zid){1^IV&`&H%ZDUi=6nrZLHUJGf##cKjvlMUdpgN zpQ1kh#47{lRb(cR7!O#tkU53KGGL1b$rxKat$x3*e!nNbtEYk-5I?RN#Tj;H8f zV1Ekm_dO_?!jtX4XGH~AGszr4VzOk8Aagf~TP3rIjPD1I^?=5c$XF}+buhVUfVGOu zS`up{b0e9bNPG(nyO&JEqx{Ni#X4T1{h!RUB9Q*mUrm_spS9TBk`UoKhxdD4#12!m z?~lBA09491BtF!5hS4E-W3qizz<(9xs{wTx-oq&?Vi#9|Ug-EFxPJinskl$GtQqSV zf1^@5Uksw+1^rw$G;R9Z4ZP&uSD&AMHhiAMLguX0Z7jOXy~eu>1cK0)Ar0Ls7A{+reUjpAP##jjZ6R#H4l0G4={G>KV)BTlAK zd`!bX`Q=qN>{~L~cl96~9C1A1Rsv(|rJ6t;V_hR^r_)N;6TNxtB1|H@P&E zE6G$W&>3mehsZ4hfQC&uSwCOCjS`C)aXRMg@Xv_TuNq zXNrDCx_1C`BAMOF`Wj)toJQtb5}yO*k34S~Cuk0Q18D>rpR<>Lym0s*igH$8{;m*2 zFOm6}#4CVbp?%Dg_saVkZv&0rlBulcm&dEZv0nCwP){;06aQW=Q zldGJ*#%jQtOy&a;PfBJ6nQ^|p#$doIkom5%ukjUNb&}byPhVp^U@ar_4v9A;a~7F& zRbOK!FzgaC!+s~f*2=HD_@x$=o{)811*XA!jIwf9(_mRtUJBjCfa}Z8*P7w|7eU-} zRKFqDfGDo>_aHqC_*IGc^6$xg3n*Vc+~3z23MgMbk3_3v#Ft-B;u@gGmw!O+9Vr%H zKD-)2K>6~SBxV3TzWfiDyS?pri5_1rL%|IlE-i}PA!1J$WwnUd5;|NAxAOs~Q8V&F z2ccG9Y`abq6CMlk#8LgO6Jq&d+ba;h0Qgmje6g*%Z(pMla6Y=smCO5Lo4W-)@HxZy zqG(;~h2P{+wRLOY7pG`{DE9%>+e&AXI2G_KwDA=GlibHZ=qFDk2xV-r9pf9h%B@hp zt<-=peY6bp)<|mFcT{agY7)r<{rVc)0)AB@lIO{#0cS6*2v71JHI6FsJ6!nfH_E<3 z_=y^?hw>VszW0~ZD9t`x6Pv~gA5u)?!A0GiS3+ys*gcbKy68l-(`-q=|E&%n9{% zztlw88C|3c*cI9a;xk5Bp9`_Er{n&cjuiFw(99G95yQ1l6H`v@>UBQv_L zuQ3uRzXylo5phDZf?2V>zG9#d{h6X0z_}VQpC|JJiSGa>rE7VdIfbU1A(_THKVmxX zCqj(X#YQpZy*Y2rt2dP}Th;e9ngAutBocc8v|$C|UDJuvgT=@j1 z4;d1O-pU1YptZU#u>3Mk^?{j9jfs;67>2;qGP5yp*rA3YQ0}9)e@!zCfhBj>1)e&9 zHyVK@ch&{A=WeyY%>Ipm?%x}R!0}bJi6<`LwJ2a}rP&zR_8`L$n0oraK*PP9{{rd8 z#=tAr;7Ea`fyTgB0WOIGhiuXKfZ6`CVF(0%Ay1Kxf%MC-|@F9Z}Ydd(e1(-U_ z8W{Kj-3Tn*x-oFkBt8-bv~FJ;_$_h?EQ>Y-PRtvIz_K`6xeu)XCv4FecpUF6Ftf2X zaK-an=mi=dX$+jP8{cIDTI=fqr$1#F0<8^oiRT_O41sdntPRWHZUy91v+5P1w#|ji?KGK zy9-%Q>)_HeaAIn3V&P-?-pL% z0S?)|G0=ZFEdyrnIW(|+E7lCmZtfqLh#wFr|E4i;^h(1JIJ~AYuyzcl2OPd#V_^3k z3`3x0RAXTHDTX1iTjXe1(9fPs7Xl}bt__s) zOrRyy5ZJJbVF(HQlMqxUcjf$p!+`+YZY^%s~vs4;L{hCk#9OmAom96+-KP8nYtNYE^SQ+BTl z_``gS8|Yrum}r|vtw8s+WsQkLry7R9KGRGyu=A;gA#l<*je!w#vB0S#s{`{K!w{H# z^p>dK{h8fe7YP4}ch!LMf6-}qIt?h_(3p7Ob;A(oKHF@3&>XR9crX->L}T$pGL_C` zbNNC~e%IZ`@4m;LM&jbSoD?87=}Q19kM6p z&_JO37W~_L&l`roK9kKsfeYe>A#lo)p@Acp8-~CsOY0K<7{%TN&^;U-4zHq%fz!5h z0$#>Be=3`1Z-n^_b1 z^mW4!=xp%^;`eZUALyL!PaKN~0u$zd^x`et^9MQ)_Xj?0!*%S4e;VNrJi=fVIP>3q z12-@N1Ue7(C(b*8Z@2(wo?!M1Ox}qp0cd;NALu^?a|ha<@drk{Mvnn)&-oMgOfw7t zbL+Cf0eNRZpzQ;H;GPpH0NPpx2KrwBG0^s;KXA6j zD*_YNmemBFjWb|?=&iMhqfR#rf#@-1eFOOgj0RxOyg#tz#fBlUDDF?}emBDtn9x*S z8+e=XF0i24ANckR!}x|iT0XX4U>~FqSg^f6u)|h{A#n6Of8bBs@yS=<=wtnXtL|X# z1kTRYBtmFjz-%ZRl-U1GLU&-ol{B#FK6V6v2?NUfiBBqdZ5N1cQ`R@J|1qEe(O6k^ z;$$ii*tx>0PTX(-eFjALE2|D%O+sMd{`5X76xexB(;v8Tm|+MUP4CZ{jaLPZ&iMn! zqbGqC4C*+Ht5;D2aKi8g zmgyMU*C{n=d@>Uq0FBGxc@aE;mFLw3uIn@mfmVNA;1K2lfu&=J2k>G7*={p%0^y9n zvRFgl(bu@I1>}=M1IIm%?*a;ywSfsIqikRXo^s?^!w{IkP}^@PZx#csS2iZz8N#a> zK=->0`M)5%K=(^z&bW#p1a$9@XBdpD6X?#8xg~=xfT^cg0~42{Q-SW8l>Efl6zIOO zj2PiK7yyTCTbnp0$*coRy&5Nc?r#i3VCwRLfeBG$1kTybAJ`>k7y@TK=MVgoK`XF) zvOlqIykU$-#`tCQ^}|#w(0Wy)Vb+=>`_@-keTVd|HR~#B2J-!(t&OUxoq0rLKESa0 z?o{=gs#Mj)dU`^a`1rDSKad#0@{bf%Y-7kjzIxN@TUF(fm^`RtbFRoC2}K{%oLDa< zRl}he%@e<(v3qE$d(qg2(N{mPMT{g5`qi7ImDKb%w;kkit>vTOFt3v*QcHc*tzVJu zGHA>oVnew3yhe#g{oz(p{eXH%1aV-wxpS2?uSc}T?I_yP0|hBXsLj|G2H&y4l=ikWx8B z+YXXW9oKl_Zb}&=+0T~FQ2fgV-m@FMy-lft^s{Y;nxXmw%zJmMnm(|lYKDD~l7Bm! z7pXMH_PsHxT#OxxPo-Lyk`Oxzo#=DNVzFWi5uflrz1uWusg9SvNMeqX9DN2)%Nke8 zAJ_@H80YUcNJ>J*=F#Sjnitm1Q`*piMoKlLpGAvuXfc%}F|T^*t9b8f>}ov@~7$Z+@Y2VLwK+%e>@Dp~|}bz6`aF?=A4e`d;L_YsSikCf2)E@1c1p^IO;ELBu=g}r(=nerHq+U9&--TY=}X(_4O2h!|nBmItY%;5~D0Du^OwSqH<5= zcBwhrrG}3u^SU2j<|RdOJ~G-sD>vbTJCiy?^~zGK+%ELH&8hCKt-htzX$|x%GSr61 zNaL*V7oLhFwe-9my*N1SOq8vQ6YJ&Zq=Oqg_4Y6AC$BFDluD-G@6Bh4r*<7{AdiQWa?};hlOs8D7ep26xtGREoPxslLP#$9X+t z7`tkGw+ATO&5awz_c8~Rv%70-hOtNQseaGiQ{;r6nIC7f*@=(XK!+t%EDE0_?e6Ix zd{Akl-I;W<+dp`u(w-B~RAQ6Dqd33r2V&8_#HgpZEVMV@zbFOj5-ASwqLit{ZYY&$ znoE7|ZjFLGUA&7J*ny>np!??_ExyvLD}IX?h|JLVMV%j9Y6-3#9O8v9henMF^)f)D z<7SqKFCrY)Tg4lV$63l35DOjN6F{a*tJ(-Z19v>DR!&yyPFa%ZE>~)Dx|w-BSV1B_ z*E1o)%E+DFTe#^1i`_Cun-GZ7iq_JumS!GNY$mI6HJ|WsZVz`h8j2XgpiLJkDcYs$ zO6Qf1fxTkWqe|Ol81uC)sm`dXs;=@^Nn<-V4K=$;OjJi;3rZeoud>h!Ru^f;N`F0! zkM7Z!C~0xAAy^gb3D=3R4)myruMy|C5^=QFj#qw&k-4O~=($}#A{%EVBf^ctmzlkv zm2}4m6qSxt*8;oElE$fd@I2jHCSIaA5ZNy>c`;En z>@>5d??fM`_Y$*2$TNBsxT9P|IFo=w&q%gRDZe$v>Lt28s~3gfF87`w{}^iCm9OsnOC(a7g2N1OwmNm7b{tQaU$j|WRF*|m733`sHSJqkb!m?sHHvc%|e%# ztU{*`tTkm7x=Q-6uc-J6w|~{5Qq;QIbl09&nmx>>aE&{?iWT`57{XmW zs#g8tsrv3-ohwh-d+Wi~m6h1xy`CJ3O|R+hzFu@~eS5-+`+Mw7`>6*?%-Jv=G~+Dq z5IoU`O$Ot3AVsNaVxuWNvgW-_fb-*tpWs&CR1{6$-6x<;XF5b~Zcu=wy6WJUVJ_YukdO zN6l_qFgg_U1nVv3CWx8VuFhU4y)v6J7W~m&i#zhYsd}0}I_qkJEiKxfNoSAjY|e`Q z+A~Mwvt7+|40M}c$iEgRVsq!VXDKdc!s*Jf=gnhGUGXQ$rUj2%+eubPa{hvB*Q~DA zdHK$ce3pl7`*bYsXrHgSqHRe*RjjL$sWMN;W<& z4>Qm^TW8NoceT%J&CU|`RGMv{pU>uxmK+W1Se&0fzkPnEi`}t!ZfhZ*U7VdO${pxT*HUS>B~e=LK}sx$?wP%enpEytUx z=&6z-N=)mnKWKR$GY-(vrEyx&4)RJfn&X*(XLZyqO(bE z!K=F9+TQe6?Ps{N*7)Ll|4y-Af{>qehYQY2PF(KotiSxJ$m`c@bHZ1zZ|i@u{e)2X-ZiMBbm znIGF8Mdb)`c3F$FfzB?1blO{3(@ol5eUop(Br+{p39EZ)tkO9LMB5rJ>R-Kdm2Ef9 zfUAl1ck=H_$JZiu_|Gz|X{~VnBZBl-1LJAMztTChybL>fy_}%-$VU^vQ3t;MEY z5#!n7F?NmBr&;=Pj9qc8=%8|~qwTH1u29Toip5~2&dzpiH)g0BOY4sI)t#t1e|N{) zvfJK6hSOgSDru-!J!GC``)+~k9NntD?LNv5_HJ-HaK1gDVAmIHU(g;}P&W6m>8o>l z;=(0j#0}Q_qHb;N7cFte@O$c+2&E15VqNg=#s!z^g7w7$ZTOezg1<|Fwlh>H?LT{o zDXd8zAj-CVE&OxXiMD-k{YIwh+TW`sEVQZKpt(P$s+FF(Pd%x#o-`+E3EU?Q*0YXlFSyDs`SYU`Bx?Yu5T5p(5@_;;k$#qO`n9c9& zXA~;?eZzd;8G{FNtW`_QdS|V&w|C6$qCvN;)vipn(bsI6&MNU_-z<4w%%C23=&I1P zPBbSqQB`x{^+_$w%`Nu64z7OPwXUo0ul@YKPTxs(Qg>om~DrY7UxhoNMm_5X?u317^FChf=Wtm*9 zo0m)~zl4#JU->V*FMb z-S)=aB#7)>tfRsI3-RcGAA+Vk=Z#XWY|ZwTSB1qY=v0Ade&MXv_674>+h)6gX)&71 zO0-vuw+K&FnD54B!o z9?xe&=~y8iPbAWXY$lzF@RJUPQ+Z1B(O8!29k3?y9p650UVGa#iK+L=ccrs))193z z{}}f{g5gLZpGjmhkytjFPVtk-XEaPUa$!BuJ@L zJQj; z6=FGbpF_k@G!=>Eqq$^)p3l)Yk#IhnEJSj#U@jHPrc;SfEFFna5-gyDTsoX|Yu!Dc zZJ*aMKi}CowM%T<Lh)=qj`iiT$y6$r2_?h9OezviWuv)tERtghT1X`l@lYfm z#%%IA>PkhEv0yeDPUsd*QEOY|?x3SHt#ezu7Q5_Ig}C%*C>G7fbD=^sN1ujc!2*3B zOZEcq9~x1f!8qke*JZ3-Ls%kPK#mnM5v_Psj4XNG2L7L_=Emee;X- z;B~pCqme{9A4^4Jp=2hJEW|>wd^#C~G#`qj!x7}9##lO)jwN#O9QK*a#xto*I20=s zVxDP=loRL4+SBElj|6kUSUjCavl)a)MGN_SG!abYqv3cw9gZimG$fP5aKouWBAbhc zV2FhkGOYchvR1_4^%x!B-j+>wO>CPoH=WhGh{a_9MQJsLm(In*;ZO)8$Yax~U?Leu z)>trvu|`6PSSFtcXR{(i5)FmI(Sqk{Cbo4=Yv0Hhh~=h&xp*prN>d^FEELb-xKf#5 z6oW`dvhidjU%>8?F>yxeY&;u@GAQy%>JMuB+b2JNcK*O=>CD``_Fma+Fq1@|!93%J z;f)svr879DthmZ-DjLj$s8(D}HlN9)^VwjUK2Bxg;b=6U)IMO(bZ3_+d;FX{TM4eR z3#nWvnTm#zcvQ5Q$rd8vL_8mcIeJKjFoAF;myG4H$xJXD$|NHgdlYvg|9RuIWF^j? z!<5B)%%88u=K=Z7E*AK1Rmn&YT{0*$p;$7KX0N6YNvCsITrQhP=kk$^Y}q7fSvZ|Z zrl}SyHB?At60*~S!7Hs7Iq#Fk zJ$mMo$V3Z~L;{-(VV#9kI31&}3=2Ljg zxLd(^EPl`V?enH+kCjPlU^n?}M(uo|57~B_lb_p>pU?C`G_tYy3>4-xOe~d%=OW2OI>gMK zNF)kjx-y0-rPGYB5S^ZhF}KDd89Y!noMCD&Fu`iAZ^E?@4&za?(P%E0NDu?Wh&JHB zERh$5_$G3@dkuEseC+zaxkWF!d3Nzd{?n2T^osD0=Z~38j_hZl*eS! zAv7Ba2lM%GRt7BojhQsU?41balHph`SjZ7HB=bZ!-t=$)2Dq{HVG7X<5lJwe31zc+ zCK{$jd{HQr#n3VdafOjY2p^tI#3M}5;aD^j52g#a7$z+}H4tA+V=pc*yOgfPIQ~e6 znVlIc98MCDWO4;Krb7IOMMSdEB<+dIE^Uk(x(usuDjE(kXrqN#x)AL#I&rfu&mcyS zh~TVq$sFU7Ss_cf!cc@gK^@9Qsi|->pGl>WHkt}C6zOCpx=aBd{!2WWx})h>is&jB z4<_O`8>X{#5cij7zR%F`P$V0PBv5D~#)K1!5>=(*sYoK1&NHrDo&+bI`MI(ys{-RG ziw`8-K3_I&J%_S;D_gEA*p0+xT1Y2wpdnbtu`Jwg0!N->hRlQ+ScqO=cBVmWX-DJe zIf)Vr(Rc_`DH@3z(oLA#o=MN$H$6`~+DtgYoS8@K^Yg zTqMhYVHV|)jIKmFtXWT8lqN{&p>E+Q`grFB) z;6Ad^7{-;&hT@roOhw_eEA!O!!aQ@%CZi`qY)(9u%48!+Twp4ak1>#mhZxTpCIezL zCgB{R3aUtiFwA@`C`*DcF%5Idf6xfF5{og*CUV()I2ei2fk^@@77(!lAx4-$v=GeY z2v>5jC2%Kt$;6O4oe#4b(I&}&pV*b3hlkaME&&tnAehG)XOeM7I5T@b&k`VqB}Q;g z85SLB6wFY~NNaGkG=~TzoAUzMDT~GC4$RM&V6Yg-7D9)%rEGlJ!ZR5Q|VE!GI&=6xZk~!;RSZttUzbQ4R-{i=^VXr${s-X3sFEH+mSU6~wM>xyh}aYOdLJ{`|Ba`$ScF zh6OGsi6=yNX`;dm!6%bI5@(mp7i1NbVm-#1Fjh#?GzJ*HJ5^xyqQeJuT*6KehaoIU zX$nUi;=?xy<)R2o6oS%sWCB^3{9I0zw~o|&g|mQYiBu}=#u3u1ss6r zbDKRUPTqqDoUiqypjW3mw8tZ$RypBOM=jtAMw@W$lJgU|&6>q|41=YJ&^y<2MugOE zb(@|W318Rmse`2jZFHQdTAw#j--4bBiziHM2xwNVBH?^}2&IHn2Tw>Rvd*0wmjS{# zW^pfp_;RCTs3Nm@`FR;;dvzSv`(O%`j>WlrW`QV}OlEOczO$4ia?6Uo_z0YhA5n3y zLnKfnkC^lG9lF*`dpo}P2={Ofgu>i*j=M@8^gfpYqxS=;0|k~+^vYA7V?>vh_sVao z9C@O)7D{Qo{SzH^OY>nD??NnN)~i=wz-Wbqc$CsdAs`$y^>I>iv0KywYJ}LL7S3l z>YVg^wg@}sw|BMA$`*3OjR_*G95EJwJP{^tgzW+G90c*qclhog4we~>D4*b-hy>S3 zC>)9vW91IQtLbf-_62RZ@$7JM8tcv%iAW*CGLV%?jLA7oY!oDvXNC_IaxAA4_;F?= z!s%p^wF)mr#lp!I zJ6CSDWF4sRO3!b3(0kbN0MqPT(9y#=n|ECeMOaOnoL1A(J*VHU(J05%nLo;{Q(Ua- z0eT9jB72dFs*r8#65+)m;$z&@ym@Ic7f=_aTf5v8jcK31xMzJ?iAi>qbCMkM?BYTa}Zjhl63OYZ9j!)$ccPdYW^rXBT!MN4*_yQ2*2o5~+41BPXflvhDs#y9ugg z-CQFN8mzC{*yJB5O_?Om9qZIu4y649?7{VRQ$6I=(&Sk4IF5A>=MHwP3#(fcdtHlP zYN_W$M#wyZqZGjiXAt5YHy3Iy(LQP996234^}UARdU(ehFiy}Jn7wI zUr}TWySXrTto~#EQ}<=LudwY3RjZt(a@Nk1#pWv8H{Nz8VIec*Bz25Ej3cnE=zGhV ztd6dF$~e+#v9~NK>a&mS1Qey|^tbyAwawNhyHCJ2ujEk9Zg;HO`>Bs3wy!QgbZKv? z1zh6X>yC+iA2z))QNr zV!YIYK@Q%?j?=;kKBm?EceK{W`rtR+nklCC{|V0y=U|bx&bs#EUudo^29E^pX#5{- z@W0arzibv=P&yiaR0iLFqgJ#RTk+!GXvJLaI&`~re*5cnF4J|MFx)k$s}9?!&bNlk zAlrPMKYu`-vmNUpQ!3?df@?=S`2{=L9y{9czcH4F#8?==Z<}H*MXo&YxY9wMb#4vU zZA-Z>+KdUdY7?x}CfI$|=K7>)eb-NQt?$hpUH$y=fQ_8cZKF2pgp_4{^;h(Bq+|6F zM}!?*f6Fh_smy*OyZ?L-x8{{QQGo+58%HzTy7#oA{c}$P5BCjc#p1iqDs*Xd^7`-X1j z$JZ|1XoRnPQz`csCwXPUuW-={3*Jh5mGh=mS$aTHjo?ajjRs^DABY z-j1qP&zEiZ)ms0!O4oWftW}qOdiln+p8f8x)Os?t&U38w6}qw49=>T~@o>FnsN2ra z6~FiuW2r{<?VP8K8=>&YkNhKrhaC2oV|T^`mU!gUC$Pg1E-R$lJRkl%_< z64oP%R+7*w1YUM6FIRo8verY2mrB>$$t3I-xYfF(#p#}ET~ukq^@OpNn4R4q(pKa6 zcbxLZ$WY- zi>VbXrbaUjk|S*HwyO^UV-)xH`b+}7zir;!Wp8!7+y%rI-|9EUwg&5AK0~e4Eazq^ zS->E)swNShU|CquZ+Uk1k4BgHY6$@@$H!nta*tPv{)%U-v3|GXq~?M|?C+43>E3c? z)Z4WxaT8+5V6C&x{D$j_mR)6ibs8;7Ig`{NIE5Ghi}e;EUrUGpMX~(k-sRs&xrj#P zpPjmt^_Vq~e6?+jw9Tou6>%OQ`=)JeNoUCAxzBIbE8Zt+UH>B2H7#eMmh%vG_s$|b zk!!P-GuvtD9s{NI%CQnM*hC){2djX+3a5dXcCGZrScPm|j~E5eXE(8&vi@{zm%dSI z9X-h-^B*PyXtHCSyTUAp>Lxok+V)uA+AjMrk#F@aT0V()#SYY6z_t7{L%CzQ8O*iq zmhuYw4Ar1@9>H}li010$ajk9d{rVWU(^S7K=58QGbWv#$W8S*NlA-~sxu(^pKt-2v z&zdXCBF(s4wKU($jXyYyRL)55jhho}|1K-^mBhn6yyq4&6VQ=;t<#=a@;+>Q)(>}? zz9!hNyvgnd9nPTI$9+Za{`!7H?og#8bB1qHGbwBSDyVJi=cko#@8?)2+)d3MwIV#u z)kLLpozjT;9VWMUg>B9%_sO-tFP>V0Q$cfb@2@6kAGnk4|JFXxI;O?mYAd@&u3PV{ zN@eH5uWkg6Rn3&S< z8~B(d|H#!t`S)O#Y__D!wyi@G_+OZ*Lg#6D+{3I}W$i8GpIUpU`~zw~^{?x!C2v~W zwRAT%qc)MqwDu|3RlbF&e2Qb8b-FBJ+`Gs`XO?qygI%sV#`Q?nGe3xugswq;4J@YA zz?-5N{_Z3+zq=$SBkM{%BA!#6sJ%~@U2ZL$WEa3FvyL8PXC$%8ZPEfaH&GrnGZ@ZM zgSgKsyLMkl{cADbPRDxnYneNhTD!#N_7I!9^>%G@e|kXKoM&{VH5=>Emt#?bWA$rM zF5|%`i<6uVNY>rUomys2XRvU`J=lB5t?hs{UktI!4p8XFNz%RIF9)}f+*=Q?!~a{J zO>$?q!}VH^_J|pK>IVw3LpF)enHkjxzq3$*pkbZh>@Cat-D znU6LBJ3b)TCewj4%7H8#H#>yNu7noMn zs-~vya=+N*`a85uu2K734KBt~kk<+4W0*d-vG>8)Er+*JEJ-w|xmxxz`Fvry#f+(n zceeR%FK9Bk%yRiuI8%570g>1~m8q`J3jVoSZK^hP*|p8~K=xB{`)V@hwS#>K7UX>i z$LcKDBZ)2=_p*mCut$!yE17%PF=-k@F%!^{UG`9^e}TPqr`>-okH$*fc;o5vua=Cr zXtYEFz8Wsg;sjLqVPOMp=`Pf~g*}BIP9qcD)bkvVCf3*KQDh#Fn^qREvI8y#d$a zx6ZuN^zov=APKci>y8&?h&BwAWwMk$c#B#KRaw7(aS1o#WdeTU7UC=aGuY7kcIC%3 zMVeN* z8Y6>~K-JF+LNf}qY+<3izgX3ie_XNwP4}}JR^g)Nu9B(X3!>5b`hf%L2jItKJ5|CY z2}-MF?8_jin_~~%%O2?KqO*zaByy`3GmVKT)y>X{^qzXridk7^`fVMnOSVx7oiS(C zN-=A(4C3;gd1zI(EYgPCD&>Un@}`k>l<$5!3VSA);i9z}y0X3bm*~scpHi7F;ZQ|y zgIVd!R-N5q4;GhR>CEAwX;n7Uee49?wZe2yWvpu^V?xN#dz-oU3VzKRy@LPqpJaca zhB{?M;w(@G`NTCcXi67^cfX|;@2geuW1AG;NAa(&-CvHVod)_>?F;^U?_U@5Wlzjo zdW$(*$+2M*InHp!yjd0hv!~eGgE;HIk@I`xJi@W2X*n;S`0H~1<$A5oYhD+1x|^4- zkUz2^)mxX#*qOq77AhgX+obqJihos?Z^cdfBuw$W2bPwNa^)Kf%)*yq04 zwo0DU51&P}XggQe+g0K}SOrcZGB}dC(dyqKsWJDrLBAq@APW zsm2=&wlK~A6M+%)4H1_Yl<;;v;?`KBS+a^luvq_ATNjE64RCz#bE1cF`em=;K->Hf ze|rp(Qj}0b)PDccRsY%`o>1vv1wp<>0EO1+M{q}s0qiT#5b0x7cR zsL6g?))AO2B}cWih+g1Q=?t)|KBM>m)jtDwvHMN8B^D{W-`+vO4Q3TtQ%TSy8$;G4 zwHC5i*f4ih*Q@Q1Y8Vf;X40BLm}JN9z^lsEl%}=aL|Rr*S=XnAOgICr>ibbkC!H>?djk`W-N&@I zR4DVQ%<9`>_a~U-E8t6-*K!<5oi$8+9FfZ$I+J+cbh?@4x>P$+Y(JVXfYwReK|9<@ zX>Vq=pOy3_fj6yaWQ@`b8Hm*Ib`xs~5)hhp1W~tCJMtKy-x?wM zwdTBTR}U!B(}SX%%_*wOu3THTb)AoerJRL%+B#Ixi`E+Z+x^)Gu&PX_%kjzN$DYd! zUrPbYvT|e8uAv-$p7kT#5!swvCbK-MCNt`b*@y7aYX?S-_NcbX!*rONcdA@`MbKB zSD=N#678>hL`VClt94<6QrmsMtTvzZyr;Gs%ZcbcwfU@PQ5$tC;(L1&tH#>S&5T-6 z@N>tCwIlcq<%ESE2lZSlKL3BF_!YmT_%6GV7+0M4E+VLP-%?qANz&_t1L*{L{q=nm zRLw>UNCXzFd1acaagGu3(8m)$QY8Hjyln2$2zUgSI%aX=^fQGw$nXh zZ8*rZmTxCU;dT%^I*#=vi=yI|Dq>Mro%P)Yy_I_ES@?mN-b(#)gN*XxR_bYI>7hJC zmD|?0lp~5|oh~KP#1WcuLvPA6q+E7UhyYI94#QL?f{n6ucq-lV?m??Il3t!7KBAR2 zz}*!7|5XcKN2b#d_O<U(!PTD9-nV*4mK3Bm0MTZr^dquV)O_H@pv z(k$tmY-w}ow!>v|Q9UrUq*d+?zU|CZPRN`saV+iIU-cJMvx-!lySchx^(z~Yw9BgQ zB1*Z(>ni7|u2nKmK2CdvSO>{uxq$M&7t1Lg(*+6fzh(C5!0B26{%@h8bpgI5r(ztq#}8@yJJ+ia`X741%0raRLf={6e=t(txF(zWV=Znvzdtwgci zrRM53{k&q+p3;{2p=$e`@cCaiKF_Jj-ZJhp{_Xu4HS=1@%*oEZSrXdSrkZN^%ZR)&-8Xnu4=SBX6N$h*c#YaW-u@JFiMYwIP6@Q@_ zsBwAU)?JfiV+%FEa7cl#H(0V$gT((2d2a$IRdwa@Q+;_wwKM|V4Jay$yNP1PY%ZL~KY#q#RrTIo&pr2?bI*3EO&@$WFCEdZVbSSiPQYFx@a&O1+3sv7TMcl- zuV}vyjZk#eHlDmr`gH>joEz0|n33C!zcMn$p=u-hU?=&-**MSqb#81!RRapRO)A~T zDt+=RJDIvV%z-!nT7{3SGdn2I*jfExgW1Nu(7Q0v(AcMbJZbmwuSB?0?xSsLqu#D3 zl2!V!`1JjLu1yY~7t&_JRdT4HB2Y+W3B;!Tx`|vg5KPgy%h);(Z`-I6yJX=pN#`2D zLvLT*)&r#BXb+Hgw)Fs+a&!!kx3*11yJzQcsVe8s;l*uZfYcu?fb@3nZkq$hSnDkY z$m+btCKopLnja5#;iEl3KB2AN(r_gJa(1pw0P-Pi8bA_Ixcuk@6rirx&q*~JHrAkU z>opzB{;lC_ls?PO+7%9u<1M5Dk9AwO<(wV-nZh;8K|wwaTS`gjHDI?ClzNg+ro3!ZYVZ%it3jBcRSVhOi!!sEu52`sY?9w&-RV#e8rwaRVb8S&|K9m z5ukePMk`0S#b@~aDvt?S>*2(inbzfFWvPrDG5UaUG;?r+Z-!%_j{5q@$WceyDsK|* zT^BzVAp7aLlDZi=h?|d6W!v_Km#dm1;6DJS9a;|J*jPO& z>T(i0UYm?#LJJlER-xLBy#Pq`Piw`h-Fs#iFs3FJ0g{ZnAnd&d)|=SY7Ajz`J27_T z=dy52SHL{m+xxz^o^HH)s|~%qlj}|BM{g72-WIjrn=gHq`Vq(S*jBfG_^_B$ZjeNo z_X^@gt;4YAoCn=9up9lb36^aK7eH=MiYbBZRYM0 za(_u-mA^xhV7Wqu77v!t+Y51TS0;N~p6e}u<*K;1+3ok{!E%xM$<6)!4~LWd%)hEH zcs1Bw9Rui_0y#fMUKz6IKEnjbrDX(zb210e9<N*eH=R#jojZWht*-4N}PbNe|&AUkHLbVBYrqu*H;P@=kPXi=>T(BIQN zhC=~JfdD}#M>J{?yt7Zr?J%g0K6yN<8BJiJLdN8k3im86blx&LHSK0J50^o~^?=&* z6CK^=t|xjVsSY6?`V`eQeLu%m>F@Q-J5YFE*QYrIAoI3`Nn29EtvlWC)Ti1jJB%Sw zc6}(jw4<^}m8Yj_2YLJ)&k_=C1pZj{ayQ-$)&qXm3{Vjs3>u332o4(*sC^eEL-FR6 ztd){;4HsdV&18XV?e`OP1y3l+5*XsTTklM4!8g6QAOxP`C8bLD4&JAMrBCKrf~DW> z_j8*t)9yQ8RpQ;Z;r`+Ex!w1ncy@X3c=urhMfZCI`okh~dAX#yT%4TCsGNB6xfdBK z-I+P@S_C7uh8DT%qfP&k+9$h2GD$xo-EnqQko-6xru>40=oL;47j z6L(1t;IG91zx@8;X6a-*z8VAEle-T}Aa~0>z-tX#@UgyscwHJ(RltdbnzS$=;R=>O z3HhC++!q2PS}@Y=aoUs}?P#19vNJil=uFmn30J5y2C~ZRD&4xp*_m7*QY&!#nLJp+ zOh$Ub9na*PFENvA#9#7ef~jJ1$p*u;yXQ0QM^VJFHM+Z7&XLNyF2 z!4`V!Ie}?kVLHDy>4q_FDX##_ZPdwU+7J2Oy1LuXVVto>_WoRNq2?WNZ_`Wf?aqSU zn&aN?Qg5+9a$iAjbK>4EZ@)J`t48&Mh!BoW&wo6exDfy9%7RxlIj(dtnt=;r@#)|~ z@#!9~vF_>?UdT$sdhU5%Tb)>myHQx%R+{ob$5Lg0=RHz#=ZQ}Xd~ZG6z0#_Ct$DSZ zlj|+iyf5x;V(GmtD(G!)Jh#Q_EnfFK3VORg?ybK4-aNSHsGrlDJqjW0|zJcFApBWp3YY{+&B;)OOw|R zP3l45$fgHzm(pfHl?Q1xMwP2esfHlwPKB$>Ui4zC7(t8Q^)Vxc4fkniCO>M&{v8F? z1)P{Ph`-w$S02*5(Mf3nlyXxFSprBQxmt>*YJ0al!IbSOEc=p@JP z70+?by4*oxQ7P4Ij>yEC<2wflYFWi%>nUDkL(9(b(6k$Q4o(0L&EcW!r!Lz?hyExc zfZL^CAh)b2dn@VlGu!$`^4pYSWvZY=2XgGECA1`?M#n9EQbJ2#BwH#?B0lF6X>@9& zcr)#rJa>O=Gk;IE7V~_TtshS^))m+DF6oRn;BF>wf$BQb`>cz^IjT|g7juG{%XG3vL76l{mRj)VOm|= zRgI!Lw$`7%DL!Oh+uT(frnX+JVl91ALQ7vHTVkR@0i1NqueU#A;t+N2TP6Y;?q|_{ zHT8-DAc^+nbpty0MN)9juN;mxEQI^=8&}e*Uq*Y$gS+Y;ebz=*=dpd3+gTtY5Jyom z)$?kjeMj>62sD@tf(ULMd}Pv@-SvTW!+vpEd$1KYUX;_>4Es5>pEa0RgkraB-9#cSod;tI2iUN`H{GS=%>PJ^HCAU8%! zPhlaP_V5&j=E|W+X@7!Ue-wj|rK^Qw{J4{O6Y_i4*3YL0Da_ceM zC5;Fl>2=`hLEIfhfjw~0wVWNj9ri#vMTr^=&kigO|kvV!K`&2K0;{ z5TeA@d7ZwP=rmYgF10G$*zo#MlF56!OShBZLJ*JKEHgkj_mo*As@-GOmmP`eZ5ESF z*t4!Uni;ia&$@2AL3P2Nwc@CH%iLZ^cRP~Poe^eD7r8Rc@DK_B3}9*#eaSjc08};q zMS2u_&G@qb4T|oG6xc$<3T$!fkD|%WTgh~`;dFSES-q52QZoQL-{gK`f|!Wa8< zD8u4zrGXHsFaYAzZ4yq#2M5&-rPF_my7h^6a7XaH3L}DO6cU_`B`^wW9ak)P%Hfq{_sy3 zLW@SQldu-&s+qGnp=^Z>>7_@_YlLN*XeKhiH8T%CXw^Y~*0~2y>q98w!CZmicg32UDW_H5oM4b$>!Qu8 zDLmRwC+a7k-K|8t?%Jx19*X8k4$eqXcwT}K09Trl6J50mS;WO<+HI@XrXvgr|{nJkXsxq zwDRU>gY(zx>>QLJJVn0@k1QsYKW0}mi2551HdZ0Fo{|YzoI})<5KVovC?5M(tfhxa zXsI!@BxlOD_0-KJv~*KwX^VDSy0?UuZVxTBuRFh|gqH3osinJ1Xz9+9T3T2_OLvvj z(t;9NnnOz_t+*{BgB5#D!VA3FV#wu0?SGFJAJQ9l&Y~cl60|1i%gUr%TTTqs(rz&w z6qRvrDPeS~tPXOkSWL#9T|!Ium(9TuE~8(CqrtZ0=mUDc_(cF!P7!nQbUblWLp>t{z&}wF8aj8ZAo|l7N+V$C>gn<2O~;tiE(~&wOy5h|H{h(R)z&E)p_f*!||!y z3vC5fLOC6BKSxY&7eHp zlec|$*N9`|m6z(4JLW{(gvrJ2poh`M7I!#sO%)b}U6 z@2b!-51-%Xx@Q3YBWAJ&h5%NVWF~81bd<&X7NC5j5j3|kaqOZ<%6)$NFohQeW7-&u zX*`YXcICJ$YUxrmRAX_q62Eykh+?>S(t0ZW53A4PQwMRRCv}5EM@g7Vx=!}CZ4hc# zoGwAOs%pzvc=OTnecj25guzEBDVC}RqV_+yFsd`rOmB9Ux%)6=Vc9stBK zOyUGmP01?vC0*^8Smjo(_LBTt`Pk!b75l5lKK4tPTY-;JcDH74FB1KRTH39gh4y-lc(d z`{54YPSi1EbC%qC*p{WKrV5MBp;43G9%n^<^HW9mJ*e3_b3aE3;C>^p=f#;QQv><9 zs?)=g-7z|gyI&a%R4~;J5JWod+z%Pf9l4BSH%DMZUM)RVJFT(@Z$HT1WIIh=1WwgR znLxJ+P5M3Emb<;12nI^mr`-W2;`zil8BOk5h+Qv^YZ$=6v~94QrNKL%5N2f$S`=Ue zP;VPSI#0>xk1VDN_YI1aaYV+08~WR)ns?5vg7o^)PHQruHFB>k#*;{*f)4RrY9l7x zg-J3%(txH(q^QRsUS{H4QDZgih?8Bl2&tf%=IH$jnzIuNmrc@ZwYyL>E=#w`gX5mG z4vGI-e;;X3&^k2wsxwqoI+?!a9O70SxdN>?cn|Y06jrX52#D5Q zYz#)>Zu9M|i^hl(7B9P{XM3HJ6hYE0#c{s74Aa@5JpHzn??qVoaZ#_`qaOQ2z4p~# zVYE=TLSANv1~t@j``kQp4bT47Ciq=AA4Phgj`FR~i1yD0O%EZ|i*@>54P^+}V=G79 zhXLjuBtiKWE?=DehX(jhtddcprq-PLeHb%0Bm&L8?h{rl>g=QEI^$cYQFS3*=C~T* zz$%`@`r7Kfn4qXp`RQrApk(~VuT{&z$+E7F8a>@w)(&(`DZs9pQ|M8I+IMq5#uJ;Z zGdkKcvs?6CobB8;EiDYT50v#N-jgo}1zNXe{&q%ZkapiPqcZ6e#CR2zpg8VIW8c+! zPkcD$dWuv^(wl;yQ%9&( zJHkfkp?r;`myZ-@zmZzy={2QMNq{56-j^kd4S+5|7J*mBO?7oV?M_gIe4X~SrAv}Y z9-=XpE*2uWP#evNq%{;1Nlz4CU5wr+K@_)*4i!S8({Vux%%UH2z7z?vmG`z(EeOO4rSgQO2Ko14b2jYpu0&nJdS-ie4qdMnl zgJrxWHL8gIGg0&#obHUiZU=!@BDCB})8)n7r^%c<=4xMgy|yj7UfXW^dRapS>m?8F zz{JLP-VT^fhKYRxIX&u;IX2odvz-Ked6@rMk<*75cjybV7{RY0l8vH%hf-v7^l0uc zB78%jRGX)c2!v)fqi0v4T|1m_#=b>^qx9K^W_OW+4}k~}H`^H`h7l6SOypa~@}!UVDvfze&vX%G|UCyuI5hMhi4v%m##p_R0?PWp4;&FYl;qg}cqH zI$Z~4*s`X-Us5(0gO7o5X0a~af)Ooofh&sjLjkUg^)2ADjiIIMkC^M|04#5m=C{pe zYw!+On1B;PO`JpnLpmXN*L5w}+?xdydwbd^h z;iCmAs-a6FHVCa?oji=;3H(bWl| zXON%4`K+-V->9lkSk-0RO`WxyEdP#ro&OK7mG36+|5>iuV;f;|+C2rqQ^RPPI6FWn zH2%dZh`)_-`OQ=58A|Z~bzWyG3OKtigF_)Yx&C z2X=2d0^0Tv5qI_(gc3kO4|5OBSC`Txn3wtt8Di+HycX(ufqCsEk`HLI;zUYAPH!LL zgO|Z)?szDVqD_y|vUuqmGsdlp6&8}LEvKr=VNJdP_pUtnb^r+w?0VDNdBu98EC=@{ z3lqUZb8#-)0m+tHXaO;^w`i98Sp&?fDyk8s^U>9Oi3ME+_E)>>VlPCMe~QXHB`RgH zkAn@*m}6f+{P%|R55wAK+%1cTYt)tQ(I%m4z>I6HxgcRltxpS&Yf_?O(qs*AZ%Ee! zNJNHvK-P});2kgY86?5qUDVAZ##PD2f-zxf+*nsIT1c5!3$^nBT4Ex~Pr zm_^FH%+3uG^0j4|K@jvE)c^88KHqMm?QA1MefgI{`L@QwP)<(^tVmyRkM7zswl%X` zKxL^1ZxIkhKy+Y~oFE~NPpXkd6T{<{oV|vK(1b@j>d}_&2rUFzEUff+LB5_UOrC(* z-Z~&ikGh4tqO^IkTeG(9+;SpE6^YC?t`)!=YdgCe^pMUxg3Ra`_@0^$G!p8_vMjZ z`XI%dg*YM7WyngkN;=tqB%gbv3cJ4mJvlZs`w9e-8HRsWYK8klg-??e#uxP9Hvp5h zy*3N3=x5KIO^wgzA<=d$_qXGmEGpAyg6A<{)*eA>poaWNGd&H z6ZhKhl?gJ%6J_=3+RT77I)^3z2gauf(V4@KqdFRR8DCE}m507W+X7M; zdbGX&G-y1W1Z{(#0}NPQGa7tSD@Y{8;M||<34Zb7rrL?g|DtSt5gW?g6`=NrUIezl z^Q+B`bvPMxdO~$mUeF|_K>Gc_5=P|CkUp-^B61eLIE6K%>hGnzl7-QAyb8md*O zbkmF74I*Uo2?yfYj1KpMe8K%7JAxS#{~b7(5}Qm?154Ur7!}k^*Q2|THyOrs` zwZhika@{$SP0-(5+Dw**_OIW~&*aU+ip}JTcqT706U#r$Oh*4pJd>GzCU4Co2Sl4Q zc_j37TgNlGNi!ME{#pE|S_$L*^vnI4l*q2%Ap1H<8GfJ%`xnrJ=(|ahu>9PRlkobF z$Vq5O^zk`jyv8vUmj%+C`7zyr#yug#-S<&uyY44JW5-K!qDsb{b1tG7&PeW)k65x; zmU@)7i(Qmcpn!IA4ha^=vzSNW z7&8{d59jkR0}3b$+cBx=jI_Jsw=DwOHvDk^EvRiXNZ(?heY+57L@jd5i^1ovg3F~A z>2j&|;Pb%r0G~N467U&2qkZ@^S+ibV-5S&;SEDxh9Iv+o0D)3LkQS(@>mBEexFI)0 zN!Kjl6Dm-#MXS9rL_p*mR+W+F73%rQbTkDbH30sWME7k0{w$`T4&3K24XvUpXxSw0kGklR2ch{WI5JBe*fxCBtOj#bE# zop3|N#-mwui81J!Spdq=8&QVQW=%SZ>g$=leXnGS)0aCFB zAa?P#$gIX%ibR_9Mp0z=bPM-91^HtB$L0r3ZB8=th)tq$L^`_)H@Dd66Tu|U*uZsG z6klLlKTT3Q5UMKOh%4+a>FG>>#zygGCa&l47C^fmhW{vNZEPlH6E_b8@FrmX4(rQ@ zoh-Z_@;&o+d0@0Ope8DK@*O87ovt@!lU>pt4ZYHcBCa(@m>4KR>-6xqow`W@K{hvCvuON5;5`~|A&9{ycp^sBbW{HOG* zb#dp=U2#Hh$PAb^b5GIU?~sg*V?DJ=Q+~?&akDh3Fy#*|3zX5rFy*sH`6-Y0Q~n?~ z7_nDbJ+66Af?|ccmUA&XN&n*HzgRX0qF!IjdKs5yrBhg$g;S=C8VHH^R_0}ky)7;x&Nbk?q2Q<7o3k#W#pY}f|Ytt~jpC6I6Erb34n z9B`AwtM#BAG*H3r>7H0%Nv!`JK**5I&OJUl$zAz#8M%RpkzJ1^>tBztWXvUoC9989 zkz!b~7PS1Du;eDug`!xZQ&JmPGAhQBTQ?O;E*Dakh9!58{QozWobJ}1KLRvKrxgEz z9GOfLt~e3>OY)3z_v(sH%TS?TGo2*Q)FF(;dqdrDEt8!^GESOEGa3VHRgo z#K)9K47`U?>bbj{;TW)9^T0sO%za%~!d9Pliay`;3(#^>te(M`N1dsm}i&J5n>l}5IgCZ0bs z%yWa&L+$+A-Mys&G5>9anbq!&qQeJ^X!RGuGnp$h4%Dj^Qc-atAb{s_4ldG9v()v{ zQJm{n!1}neSRWMoM_PNq#M_K^h^!6AGEm>o`LvKfL^CsLAz0z}Y#Lec<)Jps+?H-e z#~`0alUQ-a7^eXxGTTW}9{9HH(0gx@4U_Vk0PwtZ7MxBd0x~4A%h~?P!DxtX31esz z5-W=|bV179N<${ky9u|9XcSTdton|CrDFp{ec(zQZpJ-nF`KILJ!{mq0>d3gixm?6ZDZb}F%@Am zUe$WR_Nlsh%E5{^gruL&eXw0Bec+cJHBB9#mSc6G7qEQK+$eLP zyY>}agS4Tw2<3J0k(hg0zR5GWmgpS?H?Q?Go2;1ylcB?%#Jx#Z|B{W)yezR8nk+S6 zpa4#y));pTO77{#1ulO6mmbv;kNJ5P+H1XF#8zAgbiKNKZ!B^6a1NZ=g!qD-}+Y;hm(7<42EKnZ1s{koE&$!q{5!SBR_B6AN+yhqKxhAT2#mXYB zcY?shNCRhCshWSNlXSpH9s)InrAK?1RJaX)Ux|i92FnWkoTPzt-CF>IRF)VqPmX#X zPOT-TMd^}$J)ZMt|E)O>bZ2c1DEwtVx}zzo_MR|T{5MM!Hi1?Se0X_lfhKbASWV}q zZXGyGHjdXX;>`cfv;irPUv8m!i+;yB9^kXE34JS`qj|1 ze(r+th{WV86y88@ppoA(DMYirk!!RyQnwWOw)0M)%L4C)CI4}(=jNg->4l6-cRWRN zrvRU0rG1^TcWv}n_rih3PP^64)hgsG(vQ`kSS7cWi0G8P2Q^F4b=7!IN-^I?w|zUu z&BJJP(2-5L)_y9@8vS1V!;WS>>L-P>riJ(XtS7df^}26oXFc}jFzXK?;3{w4fedcU# zNsS4sQ6SV5cHg->U$>phVsuUpZ}S(A8?Rmy=6+vIrrc@?)MUv%sEnM}@v*1p$x-*$ z*bn9m-w^dD5d#-3#102<`>WOayQy?0$wma-E7<+UA5Veo&bRIK<`bPH%w^ogH;y2e zp3#E$s2x+17vtO7ujFA7^!ahTcL3C8?#aCdEz{na*$RwrhP~6{h^FYUV?;^ZZ8zfE z$IU2}^!Zn}h}Pv5{~?n;4jt0Pc1ta^4oDwBE9Q-B;_o82`=LH;K1RS~ zvvET2Vcr>7!8uhAHHT1UQ|%_5u11*(eEwbBJ|y2vKHW|}{)rb(&SMhjB(2zoQEIR( zq0!GUIS=G{e6aONDPGJQCKPbm4q^({+Z%cp=r=u{9xKO3?V#r4d5}#aUd7u@vOyD# z1+_@?07YXde_X>%>wJWAl08&ul*f8s@!Yt**&E zA$yL%MU+{_IQ42wo~O}}@c2YLo={W66i>{Vy;{~Q)aI*KUY&( zQNgRwW6fKzdOc`2Ze-0~G@z+ex!W(*R1$`-2Um6~V)?rMaz%{fi~5h!MhUjByS^El zzUo>Mrmv64@5DU4>Ff3)Ge}szuJD70WOZ!%S`Ll%0$-&9OTxM0;s#Aqn=wZ7*SSq3 z7{BU4!B79yPQOxER!4epDmv%yir&3^S@Cng0}A=OUa=r-k7q7J1u8+dMour6>#4k6 zenN}_7<7pLfR>Y@s4lf-7~d8`fR*u1rg#NQ&5G+f$v+`}w~)8fq@uHbpSQqmoX2Oz zmY@}~D$&5Jy+y^I2&Dzb$_;aM33 zyh7oMzM9UP$1Q7Ho$%4<(AW9&Rs4{io6gOBQ_=6)rnD+`!l;sF^K?9$#?QiRUN15m znq3voW>P$xe?!Zu*&JlReA{L-gV`W>7k6ZNDDLYH`s!#lA2J)Pi>HOzJo}qc&}h_I z@!G_*89%CUZD{tbcs3Wsv-wxnM%I%9Z8qb#(%O82mg}gtX7f=zoAXPUO#>$iv`a6r zhiq{k#U7p@du^cFjT6FjmcGZxsDBA&t?up(O!@oaYj%JQ^)jOKom+i$vo3xs4)`nM zc3z~NjsSlheE^~L@vc~HmyvX|E2dr)hWd`uBT2lyW>Qhe&z}%>#eMIEU2!0mbzPwJ zW1G(BFdLLxLzYFqY->6f#(k}$ua2g3-cBhg!Qx%<#o?s@eln?@jN`A;J&#m>hgQ0~ zDTH#yR(RS; z_@WNPt1K~)PXA$Jc>X(@(@lpoXzvu?8u!LME~LlebIMWJw>Z6=&WZoeI{b0OXyJMu zoi+;Whp}SAQq9G3(%ms}y600yIKVaTA?Zb@362m_DaEEk{05&mRHz^omidNCR7YIB z?K@a*!fDRC6IChslbWFuB?x(&oK3`n!ulUFfZHkIEhtr10Fuy$^9GT*Vm>$z+Zj?ID>(KRfYZ+XmFBgzKJRo2}{!-;T*(42ZNJRtG(^mLH7r>m>j z0k%*H1%z1_Zc>Nn-H=lnMtMG{K8>nd$&L%9?ac!Hm1}ak9NQVj!2? zgjg4QFwU|Y(G$Y)sd$WQfTsgxj@gwfW58Vj`W8JC4r_DDx5WbMG+MOL&hU*e4oo$l zn!eDUx7j#tzZAF95VtZj429*<^0CTm8<{a@PHbgzUWvcC^UA&yAf*2Q5ElkOWWq`F zvoqy8XeK>>3SE~(i`sacMP_@d`{=DsLm8Q;8mE>{HP%cCByqfgzX!M%gmy*A2142l ze0&gTThon|i~V&=L9g#`6K#udT&no}uvspm^VXDOg~s72$Fmv>RCu2EU|4=%`yLEe zYjpV@3?exzN*kS#kLiiQO)N6Fm0@sSm3~a2ZBIYmQHu%saY44%Jo>T9cWlUfezr)K zemu-;-a#AYP5G+yV~x5hnSRWlQb<1nlnMv?HP8SW|>Xal;D_k2HPT_GpQftp^hu21`Or$q+);o~S>;?Bhh~%_Wg5xGK*j zV~0hN`=lH_T`y(VH~}BRbWhSv8gOxMG{Z7etq$&6bDJR^7?sx$0 zjF<6hQl?hcb!IrY4|GSd%F@b%#-;tu>}VEIJZ(lGOp5Y7+^du)ib)mRI3f&vdCIJ_ zNm*G)tCf8%QFd$xWmhK3Uf4m|cTPzCg+ZJe^-$W5>XV}KlbYB{WqWdeV7h7)aag1D zN;`X(b(xLPc9}V#8rp{Q?nbQQ=~kIPM8_Nils;f7#9)o2R;J0LBc<54DZ+K`01apl za0&^jB77UqY(x~@Zx8$ZISF3vs(brx3e`%2k*fR1hQW1g7CS2rMl%znmr;>8Mt7?8 zNbK8;+jtN0skRSBEkF>81FqKJBXKbBbFs0MJ7)pBks%!;2O!#u_8#1M7ZKh$3x}f^ z(_K{5HtthiVGu>XchU?F3nkmrL zUB6JnNKY~Fe9Ilotl-l7gMvOj)CA<-`~^DSVn|yLR#2>EIK`kj$)+C-LVM4>>U;2h zSGi>kwoC>+efp}X`w(h0m=>FR-nx&<){oME5X7V2M@C(ai#8|mEhcTHekzysdpr_% zSL4)xWXi1=8>+l$vivd5U1krkOV)XNmC~?QY##OU@!88PPpcUW#2T2-H5345y9l~( z>GJk1Nh#a+ApI;KHr;XrNvfAl45Q*ns#W18n&&%bBAyZ(=`o0WwAK&_&eTrEb+40#lwoq2 zsl1uGVaQ|cti^|uu4cUNCGMY!SHc<%JP@V zo$6@NimR@qQy1<5n%=b;lK;>$R-U`*br-1B7YhJ>uV3=;`y765R&qo3*7wmVZn0db z`Ujm#wrG7;T50YK>^lf~l$zY6lD~nXDb>mVC)+lQEqBU{Qc1v=W-?Jf=^D>GmBTRgBdy`tpI;lCOwVbCgLY zH8h)LR?^;5a4acAcPOKvY)N_k81(7sm4LCo)V6N9T*$W4SJC;iZCfGKpT^{R$^D#W zG4x1U4mXNCLaMQJEi2ji8!XQ=rxQjBnW`37`ICTsh&&J=_mWAK)t_ zQ^FaGxlQIY0M-4D*+R_{ZFNS9?14I79IMm~+mMSzhK7p%+%G`Jr`?1c7g*lkmwT0U z(m!|I4m$RAKTl`8?L8ZG>DSSm!bk{k_cwd&iq*xt50TtF7&*+2l)d)#x^V65lhU*W@1kq010$G3+B}`t*o}paJxBo`YI9i9{`6au zq(vW63eIP9Ja)7KF+*Yyz_2~;I@ImvJ~zMjEkUw!6wTf?$Bt}_e(%<<9?sghapSpu zHKY4C|K1$c*!r&~mL}R&U-$J-j#R2zdbl6HVA4>sL96yer&P*;BK`QaNte%|202j&8?mEhM91quXjuXggiO6vx5A z9rjIJLUifkaqhtnhd0P*!aWLE({fh7CPNBvHk-1|pKY@02(M(Dyn{%~RJD=?ljSu; z1#x&(F}_w>*f(`)h<0-oEBQK190Y>KWEAln?MA1Szl(PJanvU>I@)cYs81u% z7Dto~xLa*{G`$c7C->8hHl-2TW5bCGxrG6^I zBT^E2!asau;lh1n3upUd;}GB&wnxxJeVlvyMdEE(^iOhcHzeMI_E(et7l4DS^S*-m zN9Myf>0_cM-OoLLUJ51)pR9B9 z1>%uZtMMq5Ju8&Guf4L2;rLk5_Jw!`UD3DVFU#>eJ^o2bw0ml1GuI0h1l6=(|(ZFor(pK~!VX10VAP*^svjS+&&Kr;2}$v3mg2MIrM33@Ju(`Nd77s1e@~PHL#}L-0;+| zje5iWc_T#fOK2g3^6eFdiW1V#^_nBd7ZbD-ZK1cOXxdG=7x-K^dD>02EA)Olpm&_D zaoQ2&7Bi)u{qcvU#T3GjIkVa;?Y2UxezZGI&dnbbXBheH;+}&%zTLf-*u|_5P>2-O z*s zcSp!-YXe=&2o+KR10zX;Yu03O#7lzng~HKXng`CSN&}}csOJ*Ue73OR2H&u;uQ{n> zq8>lb*+UY{E1zS{74e>fiDWJuYYrUiO)<=gWwMdH&ZCJ5junLIgog9c!ckmjqX5UM z-6M&&fn!~td;4(WEtu@jA`s0)k;w6+i&baWyF1mVtcAhzhH!zL+CGXimxmJptu~zXr;gf0z0g)7{SOb=71@cLunu}Ra&7nO$S^t^)D&sh{7|;%WRT%7lK=PU`vb8 z#B%_#T*@%}j@QAni<_bI6koO(2j)x-Jc2VCd4bU-c5^2Ti~1Da{f%dr$%WeLZE27F zJKb!PO83#iwg?gwFTVGhJsx1cLtBSle{28Vy|Pl)r1FL;ZaZYze@H)ZirHxs^3M4+?vQjGZ2SYjuTN_UTZsC&4D zt2@<@KAYSRKpc#i#va1eTDjfFhp#dAkYHa>)jcTU1cof=c> zi0|G=QT$gLb)k)2xS>B1!#@;&0t&BhYK8Q4OvVUx3MN*%HBBQd-cEyI51g&R_&qRy zg!M&69@Kg&e12RwM)Pua%CPL_p?15Qr=WHpcLMrc_i3?S6Yv^EuXvie2N@}`+{1D{ z$`&9Upa0GaIO#qH8u7z(V0^8JyH1|88;@{(g~*)@ITq-=9>zEFQWEI%^pvlk0C z+ALlQ8Sk1tOA=$$y=>VPn4vBs63owR7ng<*$}=q26fH*td8x`|4jz<15YjPuitbAwP4;RFsSpi z!Ey}B*X@9+#C6(XP~+uQ(V9{u_S-vhzQ|)x7tU*ckF5?hKtizU&G~^rjk&jwLET_0 zRw9GCquvsH;3{HtuEqG`_GQXyB4xjX_QG9e4)yiaG4~ zE`qS5AEhv;+YAjmK&6TK=+|+bl)H#3Z84}1A&LcPmms)jskHG{CEU^bZ%k2ToPQ}KOD7-N)T$DjkyIlrVP&+WFvzS(U z@cNKmOJGow0#3U3C?7MZiSa}2+ysMKf%y1;i$QIaObdg$52HY73~Gqh6)TZJJv_k})NStt2DJi+|C1Ti&YmF@KS7N{=!Nik z2GxRu>kEH<4C*}JfoD)3NpQEeH~9qBU})F@DqWY4ejV3Ixf`j{7K3_uPWuG+QgxSQ zP%AnpeHo<#gIY(?q6})3S_};8oz_V28I(FT2K729p5Qs-RW&|Ay-{o|iNcfP!bKSr zwcBM-1+@c%dcRn&35Gs~UQ1w5U(k$j(v7Bk%%C>J54Cd>3~I@$|7#3tvZ9$_P{AqvBpWfu~xT*Z<@;RHppRRv^+2#0?uiF7piR-k(pVrt-ac%Rb z3)F2Me_C}{`&(>WsNwn3{ho+cyIG41`P2EfVkPpYzR@0k zIx}p0m2n%``o8ej$Dh8q%ZQEVPj!O&m*YoGJ|UO z0Clt1ZTbV$69DDwW>DAr4m^WeCa8Zo2DQ-8ume;&SBk3~`gL3<9qs~HH~JBLA^@(m_aqf54Cd>4C)>9@Bgo&7My6AeZux&vzw(mvH(*?~XPgD7aouq4 z*3#NzCVb?AL>8dtB4bTt0c!HYl$~B)jOCiCe9GL?SG;du?94m~WKVS_853zjACSvE z^OrqOZgUDtYm z=?uX-5arF(^xh`fFJ`qs^W5&s0(RCw+hGCs- z*2%7EVq=cB<;l3S?n>FDPXzp>F)c}4XbJRwkIf_(Q zuXya3yQ{F{M$1suK6c!0sgttUK?8Z%k&FMB+#pt*j~%b6v=7>7?|zgiyT;ftu4Onz zcR68$9n3^K*yo5^USzBZ>=^5ZnZphnC@65v(tkd7j0ZcGfWC#;app8JlD4s9aW+j= zz>bS9{VLdTtb3?mW*F81dD?%F?}dvi6u`#0DrDa95gg%J{4W0VFMY~DZ5Dz7%xgdL zxnfD3`76kYyS<+{Qng!sEWrlZJb`SZvHdYERyd^`2*l-*V+Dwq2)*9lSG<_CqkyNl zTcSLbh^p)-6mh$7pS34budAhGXH)ybjH}tFT*{ld9KO6FtsqFy%vtb=AjmTnQg(~yh2kCTTmpnA6MNmT;e>G;+96Q ztxuJb|AeR)NcZyh<$B?P`a+^*!JU>b^(_x@&y8c?^bvb0%NbAp$q|m#SFWKAh*vyM zjiZ*ZA+DqQFPxN>1!n8?Z{uE;7xpqeZ~W6YW&A7r_(c;=j_yny6;=M?zd#kJK2QFp zT%QU!oFf`@r+N7f=CcO(Ug+m|^Ynd{c` zNj5_vpKT_fSzoteCM_1`wdVRzyY;-Th6rre@FLZ|M|<&o-}fa3876p}AEf831TTfi zO&@^Vg^+ain1z#$tS=>A3zP$=HfqV(UE-;~)+Gza@ueT$c_CT#Ev?4E{1-EhP~&fk zbv`w}#!ZPD0zNgGtwxHBqM}VVwkiNEd6WV^4mF<51RD``*NiK512LO%LjEwe?3EFT z+00CIEvVA|)9ue@TB1gn%`*HBw~@@N5D zp`ad7*cV;gjz~JA`Bve&wIb7u72mw2Mx?>g8;>0dAWc3C#0M%<=0Yd9Q@XB2f6S5CVyoRN{S@2igh*YuCbtr9vu%CU zWgI&ZCqHt2?Lo8OPuE9?kcSK8wz9Ufittu}8bZF&0B0qe1+|#Xw7!5=(k8`6F$3-o z-IZ|W=SUO*(?DkQzQ-q10(qsLT<2q=4DvO+^b_t)AOJOZ)~Z7KnGXmHnuHUA!&*W)oo`jGZQOlvXmB>sxQM zc2Y_dX{wmBr^l^prBRV zZ`&g31&r2erk3+M!g_p6Q6E0Wxdf9(ktjx zzvZD(*AW!9Sh=Y0p;3kZB{8Yrp;5X0f*z&P)y={Zn!QD?#9t!ZQYVAcNF4$Q&Y*Q# zdZ1HgDDf-(r5-Te%d;29G3fl(%au}2op+Q{ZUpB6TCW3fIlEn%as%ocqv$A_f{@!q@^z(~{c8*0Q#=IebsBhuVw?n7?)hIcwnSZ>%7ne4`sBJ6K--+env_oXgi>kR;i`>Cd-AI$U#m%cxgycS+uH|kI(hzN(wIaOVYUu?2 zgdt!I?dKWJ-fh2peJCH>4JzDuwk--fx4Zkry)W*|#60OB7pRk#er2tB~ zOWtKk|3-$~HC!*9CY~C-W6%`7&L+O&5VddrVjBeva|_iyAU(+L;&NQ^5H1J)PnC_; zli^}fsYJAWcehqS@t%Y2-r$rQOE!uF-P}WTk?jwac)zVXe>MDVnmL(3VrWY@LA?g5 z*-cO@`Lb^;pO5yLjt9C8WIEOnO=*Yvu>w)J4C;ofN8~6>Q1CzdY|d7-miMANuAYZp z>(9!=S!Z26Vwqh91(m%YwKr5OT+a&(xuTbR&5x$YqtF_DlSyDw2tP3qjRuOfY`O~~(TXo+L-uZ3(7wI&;d=l8R2C#4oanqC7y+(!Z|tw9t}+qs`p8;J zMg_#wr0;@o*ZQ&MYp`Z*rfdkJB?kdP<-B+DDAg+x|&M-nO1k?ULb zh3EDO%?-cHq06GjJEVspSG{QCA(z&cz0wkC4oCe#C-x7-lfVP42bhXY-`%s^U+N#j z*zB#%yw&MI{PGy2O2Gy0=Ag3^8SK2s?Tv0k8K{*>3)bJo%^yLg0Knvv1fo;A(|Twn zP$W3oq5$k%IP$F>)MySh(oKMfh~PA0kfnl4JJe2jGT^-i59XDW0ewt(+QNH%06FO+ z{Dyym9EF~RY{iv%>W8UybG{kCin!2+(B3}{%M2JshPeGnVUhrEZ+DtbM_jGQf_#q! z*^5u*!s4zBZvFLM|2^HhMV&C$12!WFtwpGCK}t*zbQ7iQFP7|QAxBFiRQEEpD!Yu} zQG7KaOUN&Yi_&!DLl#^yce^v2rv?sCPS3}Gb>C9%PeQ3A>d;r zA)t(1{^zxC( z6M%7^0IbdILzv%I_gVju@vRF=RP#qx3wWk!Wg9g{a<$h9&?RRf!+5TdC{{m=k`f{!Y8RUu$FtOiP#)XwJfE#e2M|aaC4Eb0~jJGWf%Y9-x>zC7%szqwTpb%N>YmM@e3+{>1%*3I}X=Sp|a zU=w0u0Wj;N;^o4;8|0DmdPhnW0)^aKCoT@8n@3zO%i{KFur+8vNP|u>8J@k2pk|Yq zevQA{i!0f7uwLK#eT+v~e7u{lQRvFSKn(B7j?@kk zcJBi8P}gp#nXHLBdyOd#X59R1MuGPAnIPTxXhZk%=kpb_v42Xc*rEG-74!! zr;nt-;K9I>9G|->T*q~ zWQ1IYQB7@*mbotFPRy#Nit45~3z9z51kIAPQ$h7pL_3uybzXcpY_)AU=v5>>QQh20 z{m%25K%sD1{G?6-tj*l~^&IOIUJ(nD`t0udD7nh-Yln&w^^&nilt_GRpnIC@qO@&w zn5-go4E2K&g#+gz^`FiJ605|e({wb!n!OjE6>m_Mvmjg6dedkQeKNxL80!i)DU2(WD-utw^2%N1@PLH@V z>hPVaqnu0KgTL_RJOL``if-J6%;}iKw*D)~ak5g2_l|bilka~=>$OErY4p=JJE95jXNBq+?c>sO0hh8&JV?IcBqk3zpO4kL~aa2v=@(;Dv+0?QZF;l4<)lK%dvW38<%`TFscXxh4H?-v6L2!K6T$ViHxnmIBK5G3YK5DV4Jx|*3i)Q$plwPm|(mygkOT=W` zzw)A;(gtg z&D05*qMRJjB|XKO8q0`J zw;4Bb{&2DP&D_ZQkN_#c(`xtOJki&jmGt;@owhuP|Mtf8DZ+F&$NK>Wwy67UNWOXic799J%Y?dN`9 z_f}X+y0#QX11Oi{^@MCtEtL{ZOH6188&V zp~pI?(HLr=9s&U|Jhn29%`dW;4KbU*7Pdh3%@`&7c^Bp@Nq~ zTFF85=>@7F?0hY0?Ft2|u)-;Kp7}bn!YM3t`tbQ0r3>=oa35&6CNi}pe{om4uSu(B zoOKsX^V%dmc5l7RKClKn9kholvi(Ac^n^2ny)cJ0`&N!Dr7wO&qLh&Cw{0|DhLu-b zxEJAkYc7yhi5GavzNex&?b-7b(X8CndLC|#-q2v@QfV|W#fh+N)Y}TRl+<5wV`avW z+ctyUHP6tT`_QmSUrP||o>0?%gT$JlI~i19;u>|(V>a2yHTT$>?dgV|lwi%y3{b($ zVErAYKR(B0Y~el=Dx#-t{z->x;TBIrDQ_Ns(rW?yR~eW6gEpBBDrS>U#ju@4iTELV z+XMVY9%k50vj2baI4~$bvSzS$XG8l&I&`OPaVh1JbLC26{5NPD{G~|u zX$?7DkGZViy?|ar2B{v%G90Kl(`LXuPH?}VSQ2XU?Ze9L?1K=KQpLuWdidK*s8%JMTb(pCS z+iA>2R|{3l3mBtu}k&pg-S= zK0v{R?H8Q4AIC-T1!H{TY&I_}%wkYo^MLfu4UZUvCg$!^yD*GAZDdY`Gk*VU%{ifF zGh@nG9{lvy|DYjcIR}tkw6&NtIR!$P@2#y!Ace4|JY_@R4!8r7%6T=PXGyuKRb`1C zvFM3La(-6YCW*_X4Szc!;%Bc zoSE&Z{Y29fR<>(fO;6_^Z)97_(6TnRYg!c(yb>q{)OAh;C&7+%M)2w5-nS&vUz31g zV%k@gFo@QRMGKkgD{%wrIaQ->SGtg-fhWE+tb4oL$H2q(vV-r7d3X1vOsmphiPMjb|6OuXmUkYOwGKP`4UUgACec z%M+kJYGL>#YaL$Ig(E#&!v{ft+92fnIt8e6KG1M-0@N?K*PK3D2~eiN^J<7s4RlBs zrASbZ2r2`GL~XdKWJRdPg(Gq@)N})8W>uCZ-qXQ)HF@Zd&Z#Em7hA7l^l;JLmbWB9 z5bs(DjFa3mM-lH+KUtD^XX}EZiAMTlzh`&RHZ7%(04b{6r6#FJ!3mpkD-lfqVi^ts zd-BBaiaPb?u}4=WvI2xu1ZjCyLjPwpX1)`Th^YB+5jU)WzK;cD$CuGD(!b`HPx z&@TkQ@7ib9lLkmFBOve2Z^H16EcapJ{mA6|AnSeP--`%0`-4WFu(zh9-4m2}%hi_OJsI509F98)b={H< z_QWl!oku4Zx2_>f^jPZMPv$KgkyXDT1Km;3LW%oO7g`K(Y{C3})Jnu!5I1iZR>(dY zr6;tpRZMkaxT~vT;MWh*xc4yF!m#8nHP&klhfeGPe9c)Bnkgwm_C z|IGRgih7AyB16zn-K{~`R*FxVuNjXKTnbN_rrCq)L}lCc%?zlk;gS^&N*4x_&*jsX z13Q$|zKw)g4T-jkdmG*`NIr`U=4B1W?uRzY<>eM5Y-Y(+a8Y_0ROKWS%gj`%08Jbi({b3gf63z zbrf;|C#yV#}Nhv9IPP*tfMs@-cF zRa3557%wgxnewn&xp8=Am;iw6eK8Mpk`_P10c3QRk+p2Jd`3Op*pUeKFfwa!j={1B z6$>i+an@Xc%AOu+K5#lZ?&_w}DlKN*+Z%@uRb{D&RXN0{r`=(kBjhiiRL19=NuLis2_{gFdKeFQDtsT^84mI47P4Ovxc?VUlEa+ru2Q{uO zsPR|_H5v?E47$F0~BnswiR3ir~MgZPaZ zIihS(()?5D9-t-~!lUFTp{-$T@zF5U*!{fho91jX?I+psR=N|HMSYL@!om)U&ZB6M6P{8}G8EB~A^QM#MF+J- zsY6Fsc2IOVMa=~V7S$Rk)dC2rI#2}JAeMmrRYkzWxn(6SUXXy-YEXXhqORkHiU?i% zZL!S`y^)Iqli`hwPen=AsxKK&#c{8AA z*_?ZVna2;|#{Qvk!i4LKXJbyuZFLb*G}InMrU_cGN1>auN5l8IFe*)M7ex%O6M%n@ zr&$j(j``>*nbhKZRo&bRLlhzGuG$eJzFV3Lr-Jo%Pxp=b{D-1lPAtPICo7$Nzj!3E z#x*O;u#rLPOa>`;zs{_T>F`sN+m}49d4~b#Ngj`PP~(Pz8V`3+oP}q$w&3s9SQAE+U;Rv z*S#=V?7Xdr+dyjH)ts`V)?bPUD*a5f5Z{a)zz}`y1sd8Z#4WP?Q+j5ihn2I_z6juE z?zVbj>^#ms_5SdocHAQjM!f{x`fVLR`GFY9S<&F;4r)A9P@}Pf8jls!xVD2DOABgT zS*%7v1YRE3P;5+V5jaS|-j#l&(z*vZwU66KhImYUdlMN<5E0w&ITIv#gbWR2tK4V0 zrX-Z#!kwubPxeW(9ryFa<#*HCXqT0V-<&WaAroJux`k4&PAj{~tmkj7hm!PJ2I)h* zcnLE1_nK(i%-9+Xtx}T?qrK+omqpIke6E}tGdGe;onr=zEh#A<(7XqJ0 z%zC8vTfoHB6_DQPN0fa#wRXr2{1j4| zM|5<0H$;QfM&CtiwzWKZtmH*` zT&7~Jqdann3}2oUqCBR*n;+$I9fPBvfzCEri1K(k+Xu%>kvE*rW~zfCQ67&c%W4_H z@g~Z~?7QA~;M`ilG{?TpMf3&BB>$D=nU0KO{}Teue$K8T*uOE_Pn`X^O-2+HA7Bb< z()6*mu#c9qmp>5@{a(g5dS7>JD%!6x+P8KYhB)~(WAkE@p#@yTGKa|g@rLZ#+?lIs zB3_&c@#4JCLmS07U$~X+IvYuIwO!i{B440fI63u>4 zkNC&e9(`qU}xFr@OPl6 zlzX)^DDN-z?Z;Vt@;|g^AE(6{oPF6@6}X$Ge@`RjZtoT@08Q7_rfW2JbB}nBh;eg| z*n6lqXikXp2EKi0`^62&YTl?39`ddK0G6PxjI&j5OVh zeH0ZluH9RbkF5$HGld`FnsKR?5ff5KT+n8R^wkpqlez2w3EkP)(U53I37F8;OcQbV zNYXxMh+@zhc1qDbU7opmIN|u#YYPjZ5&c~*Zod1*4!h5b{8v;&>+A>i~J z`xjN3*G%rBY2gie+sPxARZ(<+dt@=#<*Jnm#;;5L!r`et)x2|V)!n?)W$BKLacMrg zzy*g%X(qtRcKvVuaWFMaOvD~-=2k6ArG_>7{;p_3PlPIpE;4SatK(^R_x9=14|x64 zh01al^hi9!t6s>DMRXxv^`6byz-Oo-OwurDwA$JkFtKGdIP{atffQmNk(xq_-qj?P zG+2~!uW+XPW!gP|C>aoa1_E*`OA!iwR~iCYm9Hy7??qP#vEAD*1iH{PQ_@Z{ZSK7< zij`G3WtIp3dtE(t|a~8{`?0r_P9G#o1&daqh z9SBvCl)W>H^z*dur!#>BBnO>l6tt&%^5sr-JObMIY@?j^3;ay|eA@!dpv;rb+uC4zw`Z+bkjO)xI`KH$+?iT7iRynj3K{=y>f-|_E7h94EC zlR8wGjw!*C5I^j(|F)YsI0M5aG4`7vF^pQ{#bE~3D02;kQjq)X=IQHZuB63~gt*tq zQT0htXRf?F5z1qq)fW4)`1E)x9n6G)C~ z-2g=CGc~|e7x-!28#eX4cv?N!C#|!1lV15A&Fmz42xOtJo1BQb{6e+Li>O)z#m!D`M*e_RKDs$T5mXwFSdD=JnR2q_GJa zCFdC7K(Q3kuNJ8@IZ@|t>6X?xq*oNFa*?kRXC-|pSp>)&pY|tSH$~-qiqk`EUw27c zGHFYVJw1=~w397>d9U#Ews{pxCjDe`1R?^!LJT^FMUim@DF1EQ|C`gd2{As8`73n=eN&NZbImU~CGo>HQg8Zcvae^y+jinXlqR z(r;;eiA>TBNLpy=y;CA>d^B@}rIMB@f?Bc?WZVUaXW_7(%Yw^WiVQ=KuWv1#2a%Tg z415qdzSQ~gEGx4H$T%tSPA@Dw`dcwc`e|LXv-|Tf1S0pyre#zeV>C$e>p<5c=mmtn zAn|-%;`w?0xgikh;Z{J>Y9s3`^h;+1=G;;$+^q^Br}d>4o>Z9B`mtA7on1*#I=f+n zB$3wHrp2(b*``NlvrX6K(pxX21##tQGu?~;D)3K8Ij~rM>&6C&p%6wCYMWE1puhju zX19I0mvK1pzEu6)i|i@euTSa> z5odJ1pAyunbaNF)TS89fuzd?p9m*a<5|>y$kBU9oANHayV@HdSq+x^^R!B|m$xgc^S`F6jMiY$94D%kJyR>6GO9pPRLpllki#slpMzl+f|96zp;`-Lahz`(#JbtiPhK} zIiI+5W`j%Gfp_>Fh=x8PW7-kk3LYpHf#7q#AyxSh4w5rQ4unE4_IbFo>%B#{w21YQZ=1{mO(2!GP~jF zD`f1Zhl{hbVIwjGRY|$?)&FQYd{7B#WsMVSO)A3 ztcVJVh;2|r5CMAy6}#9G?XOtf4C1_~qxSM;KRvApjO_?|% z_8EOcl{@G&I(9?O$6Ph+&&NdOe^`S|_)+B(Loz!I$tckweC7uXF&QLqq3W19zw&UB zE3w_FWA!IUzVE2GQ6?PzrmC!Yw~dO=d7g29U-EY5PP^~##fcEX;C8oKXR+3OZmU#) zqP^zBLWG*sjkoo$DN}SLMRT_P=gO3xl56<+GDTag;V$wa$ocFoVoE;Z>#PoKi}-QS z)@*g_x5Yg6fS+1(?U109=jsM3@G{NCREedZmGQ$%)K1P;Zh35Pc}NBS1#IQGA^L1e z`FSdYP1|$;Z1pI@U7#$%7BbKnA_hF($sFK+Hrh|`!}r;PK3AzI*_1e0sRy;B6W<)I z6+Df5{6FQz7g&^2|JPZR$`-LGmIIo6@!|B`yO6=jx!0eb%s4zl{sz_9Kcs295pg6Y znH<^uvmV*=E^eQ=+$BYF9s!$Erp7%*HD;BmabHo5nPqA`SXATIGBxJMHFC_&B3rW! zaml`tRYXI?%;BGE2v#3wUi<))(YbmS&zQRpl6$J+~he~%o1rogT^F=LORM>*-*@+r2$2CCv z+(HY~7ohz_*;f-~CzUFj;BZ!E%lZrhqTCbE4mz_yVf~gtqQe`x>}4S(I_FaM zqn5nf9p%}VmoH4RFD-I*=n(s|^dhZHU|+6Z8Q7O)B!-RImuq-fl6_fmQD9##S(#v8 zZm{KRn|-;|nk!;o=#gHM?8{ZO%1UP3vlnIAmuafpLH6bT4LJa#)o{$d)VQBc6M0l9 z|9>?Mjw%lk_cDxltXc=uwF^oA8&D_X0Za-i3^%^ia1#8?n*!F#%z(gBT}5%vfmON} zcy)L~xVq{Jy@+EW=BW~aU}f5VLd86__FF0jk-vT6 zMy+21!%-$RR(apNlKh4)uxTgYfb{3?`CEYY%u-$! zKYU5;Bw0#KYtvEg$n=&?uYR@7 z17VL}(Cr}Y@dG4^5Kg>t#I#t!vGAPs`NQdIGLJueq)d%lifTMmrpE0>HRhG6K`68z zRgT-Udjr~6W#!^Na4YZX&STLz%hL@nw|863tPZNO-jDZL%-#DDq6o*z#*%Zc4sSi^H-%PHtNF)rgta$YPu{4*bv=s}uat9Gi99{LnaSu81F^N5+xlhbGXf z@k8&PJ)%(=IRnqXnq|wL@?{-5HyRpS8gW9_ETt zaFO6)p3*QYR|Xd54odqRYn!+Q_9n~3+^$zK6LYKH)w;XNG(JzoJQFjkOws!&8km^J ztta*XR$#m~unnFRM`!57Q5wkQWmnhCm{((J*T|K0|7aM73z;0~s*$u57X81Cv+;0~tcxPy^n+UE||d`^>j+`+oj z+OP3tQH{^b)M(PM^ZNL>OpP&djU0C{QA^yeDyV=tc=_M+d4uj)aP=g`C&7;htWXv)G=9(;4}?9=w@CkGs*MgNoF~MSIX3wTvX$Q!Wy23xQc>?Yo0xA z#Il6C<ct zEn^w7nZ=f&cquMAEyqf{s=1Z444oERhSnrliTA9*wpod%t+^srf*u94X!~PlqnBxw zeZewx+K5J@w1$n{eSVPM&M>w^C?T*CbJcasN>sWb&6$uG>TNoQTub1uau=u+ww|DL zcvJ6UdTr;q*1cncEdYlEGjI+~1R~rdc$bF=RP!aZ+%6I3s`Xm8yiDs?su`MFyIY48 z4gcCS`1=z3-IyPROT%*{xJFulViJ7ThHUt3tyD)yFz6@Pm8cPu;Fa;iOVmt`1UCo9 zK}H$RH;5*${(hW0;TTVn1HwzvVQmR|$3B+2l;fpIEJrUlbyY}@Y4_rG#0=8W{NlP)H|gVn|J(}h-t~fU_7>Mf zdd#)9c*1TSxP;(Qt&4~0n6KF#58xqEzQFAnU*k#bmA5C-W473GCemZxU$|o|7PgIf zlrw5Lhy96B8o8|Q4BKH@`tH5G1UU?Qr^?y;IccpRbMUOfs@f%=`SLz>VTm${AaZvV z7L?^AnJ7~u<=_!y3B`!|9f{_!QTom7-6W3|&alAta&vAuddQ{e`WtAK`+K(s!1qbCq&qZ21=01$llr+TCTuYNOMTk#}`^$A9It00td}odg>f@D$%)RYDd0F$Ggkli|ZU1~0%k}vQEPX{mVVemo^|I4; z$~E;K2$}2}Zt?4QOZ>}cncSdk<6Yccgp+6N*(p=QGyEl2N-7)M`7sz#|%)&OB-pUIM%teQRDM&1DkqA`|QxOpD;$TLpgbR z4yh43DolFWy~ zJ#vQdNP8jTxL2*ygt8n%HpSA?U>7X@9uCF<|cQc2Qc;cVf4#1vAW3DdMYyu50)d-4d%w?sjC1}hus+LbW0dax_L;7--B3YA#7*uF@r4{|9Nz(jR&n^Gv%aEzp>E zv??B@c^Y%^nK>Hsq3{!l*-j_C()d3pwnkM8o1kGnwj`_KlV=gYHG4H@qdxh8mv6JkCuTF^zdrZ_3h`x6eq@ zn2BO0zY>jEsJo=f(U{M381(|4kb69M`x>;$PA(N((gRBdto3 z#+-Lnj>e1mvoO#sOPh)OAyL}q-sNBl(Y0Sd8JlY^Z=4v@$eI;$# z3)W{InK_q6?VqBmv-+}U&h7x6c}J5frZYeFbmq!pI`hIi?b4ZxCa{mOzHDX@ow57j zfX4faCP)KR+EVD89#~YKSG&9Q7csSJXl%^HW&Y03Xt2bpS&B}2}N^{Z2 z)cH!3=3(6b;b8VTTODLL0X_C8} zBQ=)@mnl@T<0q+x&d(n64uYlX2mB`T=ZDOD`Z>zZ^t+@dF@PAUEd37I8Y!W zfA|$i&4=nSkJ7Bk>6~(e=Dl$pAT&>DLTwV7Gl~h#IqfUW-aIcsXciX{ny13h3k90< zf0(6|g=FTjGFx(Eyd_yOGrvrYTSE;`W}Y9HBQp=_O<6LtW^9tooc0-Yz7m;vjuDg< zXx_?gRF2HFUo%N&Zc_DHcei!bHkr9s#XOn0r%cf~6wM!n25<~K@`%hWg*7~pQPW0brtv;8xkuv3 zNub%FmBpl<}LJ~H{kbhdr{W%x12>cgEEat5J?L;g#i#<1YOz-!QN-H%F-bESX+XbNcegHGB zZ=c*eyfi)xm1NeeQLfb|l-8?#*`^?YlqK>mBik^(P5@HJ5=gybL&y;zQYK@a_Aq!jUV}VJwr|>9om&Yo06gp!*OOdFhJQkq)MoJWyRuCG%Zo-l zwXlZAH7hA-xaMNsC*lE~%{5T#F1cPLrU36J3cnZ^4z7NfL)orWdV>C%%boq<#B{(* zFY01-H7Z}rt-3}OGuxK@ErYY(q^DStJnHGqpz^EvPV)Mt>3uBOa(oqpOHbkQjLj&K zy`QPKB9N-xtm`yYMH8^%4=f9dbN6+AalVCnDbFIVUE?PeGAbuxAD6w6u=?zvy2 za-Q3nR;p}*zj&OYmc)w8xwURmnbJCwtzaqQUP`4AShOMg^r;5v_le9@QX~yr(a}p? zE@PY=gaOXZcZoZo<|l!ll99Vk^@%fy0t`qZix11FsH)DpJkpor^4KQNzQUvHKvJx zi4!8M(O!W+-aCnGqdvF-ECoc8aG{4gaTwm7y_8+`L_)AYdgeX2%Ld0*x^5%Wf|143w3c~ zd-c2#EyOTf`qoBuEga~sZjG>BlFulN;Ol5q|Cz$E2?6&P+=ffr1^mU<=6(oGac=aT zVx#o61N_DPT9ADHA{o4ZZ%`LEdjxmcFxRYi;EFriXVfkTt4wG@pzkl0sc~_r;rWYR zp1&}<>6FF7Xl2wxAMPF77JY5st9biLj|&$s&_$_2UbxK>tU_~giuBFEw!yL(rX7~4 z9acY#D-+$R=jWCem^f}(b{g}`OygERjZwLYKUfMN71jpQWqi57jJtgp4Nk7O;K5hb zy17KyPNKF2Q&`L3uvr4GRpkGq`&^|S@}t33G{SNpj+5WEsDy5d{_i8tKE3pslYVp4!F&@4lDG@Do4MC?DbxB*@S??l zaLo|W7~R0H3S+hFDB-})BqYT^B!qGd@FA6)1EqxG0*&YI9?s>MZJ^EXxiRyp-`}`P zEX@jmr<9o;Vn8x(-OLaJGHSk$KGkT`?jb+cE!`~5CV1bj=6+gms}C*}UELz> zPE#-8{RheSAx6YT5yyx?UZEn4Da#FN{u#q%hWm1S;2Jx$fKgFkwI*4z*nF3VHs0)@p(Y)dQpiASL6&v_c>f~~v|HOU75LSzK zy96r3T9xJ9X0u9^vwRw-QPJnq*f*-wC0?$=Vth&@)S&lDM=Fi-S;M$LuU@jd+^q--Jlx2wvxQNP#xl{x!Er0PQP=++RMjGR^%koFp-JyeDce!o&Os z^(fe7UtfQez2WBbLnr|PA~U0wNtY2gcMV7~6B1%wtp(+W3n95TX;1TVc~E;-lt5g6 zr<6QZCr7AV(3O$^n2Q@>n83zr6bbD(`4$lPlcu#Rjz{T5=(vKfGu zk#^Iz`1)HsgtLN=hiBXaMFvhr)YC0p2p#D?WEfxnOBntLe%0RI!sI@&SA+xl zd#boX$9j9*sd{$NtKAJYVf9{5cRYG*mlVVU-Hy{_>zycT~at;^R!#Zj9~X* zuR!L{b4x%&)N2soo0ngP%m5L5_JzO;R8;AP=wVT>@dJl(W0(qXy#aF!7p$dxkCSc9 z5~>n3V=t(WC^D~V_gdJE7`XDUd=gb-OJ4C?V(YT9-3mI1RCqN}VMV(Y)I%S#5~zYh zT`D$$G#Ga7c1ce&jv(CV#!*C(_?!6J=C!)#!9~Awqjh0Q;@0L5bd^L*w-x0A-5#Us zJ)p}v&L?rJSniHBo7B6>DuI-r;j6^AioH`Kd6GPsGKJteAyLiZN`yn6g z&MO%5%gM&WkSDc2P`D(>mk zaHX^JpXW2Alw0KQHx{1_cc})^^X?=* zxfz+Ny(pM*3;(-bO>!e&XKtMKcP8uk0&8r(Rlc*JGX3>sp&$EiEf7_&?>sG6)t*DD zS2BvDty4mH`nzB0E675$JwmJFcVWC?JRS~;NQR+z=r1+{EH~$C4Pk?N)Pvc>^os<7 z5Keu9ebGHV?@zaF=p_{7Q~D1wf(}l!Ty@<0$Wp4eQKs6B?}1$E@mdj3w9qPu@}qz# zpDaXw$z2a+KMrM=v{zOT!nohj9@h#ew$M7jmWvFG^km@wrEAOBlT*^%k!7c3tQ|TN zr%*km4;Nr-6~E5Y+DeZl?#ANjjC4kHnEr0&zAO6fAdxhMx;xNkt$_mE=TD^p<(6rm zmmkOh3;3&Vs@+tN1T<+ULXI|`fbSfh!JuK}*UcOu{L#%_|M*5N;T|!NANL@k#gnW{ zZ_oJNSg2~3PoTI;iHoj6v1b#-^2t)J7{ur!6$`|OCRwV};hcOcV3KQuWrIj3n*13o zgcnnN;TLWh(G;%LLaAf(yO1h@n}6fx5sgIBO9MGg6HtNfb{SH`Fq9aME1psf?!=~s zsNQX?%iCSwCK580Tbaf>uHfq7#*7$PXPD%p8^u_r|Ext64@@uY>BEZ|I(UL}xv^`y zafGz|9HjM&H>&?S5CARfDy5&eJGFwRxJq(Oqpxg?clEM>_lpn(BVA;h#B`^!R<@Bj z0QoO&9uo`6?M_v;B)yepDGNdcGN8wUS6hH9HP$nhCf0;)Ts|ExN*KNZbjhml{hUbm zD@!Uo11uOw!h&ei>O7n>_Fn_1O!MsIg@K*Cxjh^?OnLse6`lQH4_XAX;cSInAazwE zAOhs4kgOV-(_BZljBm@*7KwwuQpQ6~kI9B@pq$rV3_biJ04f!Nxb==u7mBS<)BNlAV zob)vp3VHdecHM`UO+x%haff%>E&DATl&ves>Y=gitHp2EIP&xx^UBn?tEk4DGBxfg zsxhlfjr-ynIm^dW+J_ECzFI2dOAe5&W45Ui^_j4Bq*p{c0lT@R3db0B*fuScx+-jV z$WC}f+Kmo73{)F+cyKI7D401HYot{}fTY7so@_uIsLNA*XLI?@ls+x1_nu-qL_WXx z&h3VJ>AfG8lF{b}UceCBOg-@CXbHcl+Bq}moWG#yQa1W%2M9?u0GiG$^Xlo>M;Uo7 zt)7lGQ~lj!OJ*Qu(_OQxw9`)yGUfDDySA&Ferk|#IhEd({@!#hzjYHn=a%<`YWh{Z ziv>2(dQ{Wrh5q1DBUID1(I0H~UKRavvVyP#6()rWu^w6~C^z1Q`ko)^x$O+~PmFMo zL__qo@Wzny{?0VpZSM~k5bw-NOSiLYVr&aajO_+LHZLkdYI--r(e-fekJ7vi;V=iD zk6*h{D|?ffMUIH3S%qmLEF=L9vXQ<8?IIPia99Su5HNbA(hO8A-#l!_%vHlPTze=s z+F!_A*SZ>if=2~wsEL2S8m{_QfVxOisT#o&KcBW+MOw}P(FDq}&gNc1wG&lbXpB(W zJ*cIKZO~$Cvbu3y!kX}ufN~k&oUOxUtRAEcM*&SK=x%Q)gEbbZY#uJVrc8||i)vg^ zSc4TnKl~B}CFNDRsbfd9#K(jTTu;R_2a0zXR>9p87-8a;*wI;5-b0r zs#UheX((@r7f4nnw8G7|iEl5j75-ny@W^OT3HNZ-$=j>gkq%{AUJ-rY-S_Y4ha0d} zcX5{4u@dMTXYjwcUHBJH0RBJGN_qIt)MKRen&kzS^K^qW%jYXGs@E**dcN(mPDzkA(iq{e@i)|OkQv5+|ofPpRq^u)hYkJnZe!KwhznI(g%x^rk(K|n2u_q zrvVDo8sH3$OK75>Od=<>@2>njXriARgY!sK(Lbk(p69WaEq6HCR3W3*gwJ%%ZynAS zT>mSx9mAZstMZKK(&9thdtlNieMLt{Jt-dbo7%1tqn=YV>RIuqA7a%0Xt;?|_`>_Q zk>6V9F6AB*Vow3?oy%-Vz9pg-ybhz43oPtENt{+JjLQm&m~aw`sF~XD|<@X zorpt-lqbf=zQ1rd+?^ruW@IRq;xKW;T7j>oJZbc;bx3(K%$Mzu@`M?jl3u}Tunafc zXt<&x?KSN47K^7$SUj2ROp2gY`K=ZwotdTiZwbWXA{V(|*Rm#C1;KXV;^Bx9uqs}< zZSl)9;U84&xWWvhPNBkV3IJH;3KV80#YO2GO`0gDH=DoVdNZ*d6$9DkW27g8zqlc( zKNBofySaGRc)9Y^g~Q2G6ARjIjCZ>k%%*JWZeD0>icT%S6IST}9h;<4d5jdGz;4*H zl4>=;j|`T58HihI+Od?o)@v)38nG{n^EjHt9*DI3*3i1Uag3nZk8OtFv$V`h!B)*d z%7FV94wp8tySwL>R9&O!`m$GtgLqAnst)2*5URc_9#TbyiV^HH3o1BtpuW|k6>NzH zFcr^4RT-x_OiGfcPC$2GX!wk2p>tPMrlNy`{oeNbZaa-yGD&5^YTrq_`>Rt*(KbKY z%rilcp8#<6l~n2}u$x}VGPAr#gJ<{ibV5Y}L`$*W(_KziE`5ABvs4~$9o}pmT2Fo4 z;%W%!k65-$bsvpE%%nNk7|%QJg#3sjn&ni?t<<0@-P{wh@dFiZ7M*RzZ8!90y^PCF zOC!#>kLjpOdOlg>ShOx+3^_Ygq^}Yu&!;y{&3bZGqg4jk@p%{)UJlKH>qo`2b`5W*w zOOK;@bNs-s$=p7gr0(1Yg9PrG`!U&^#U$Eeb<|tlwL#hU*&odvWe;~cw&2Y;k-`7s z9e4}dS~G6fOK`x_Gmb)_M{GvJxe_9xR?+FZTq`-(7y9V8Xn;qY9kLWB?u%ZO0;H#4Th7*n*vhrpqka9ICgRKg{Q!5+5_347Ort z{9TRFHN`%OQuXOUw1eJfiIiggB;H>zJ!XDql^TrPgcF3zoO{pCakZPFqK3jmk}25A znE?%V&k9wi+Ck%G7xy5ppZ(oK|Mc1XDD7@yHWhBnO?U}I09)lF{|QING#Ni_ZDhOu zGaS$PC$zF%NtKp%l$p%4DObBOp!3(h^m*#u!|q=HxbLRd;dk(*72Zp)UTgj};h-!^n}L z-bQ-27!Tufssx%XVDx$)PU9y>RyP%We_*r)O08WX1m6dJ_~x=NTS~ozhii(uw$MuE z7~ivjWZ-S03Je}>B}fx!rWb@UIF~7+IyU@iCp4oKa!V_@FTJz7;RHfDm`%|!rL;Z$ zJm4pPAmgWN!c%|r;-^3;`!>7uAyaeWH5f#-^M?or>Ixk^k&T}kRp$hLKWimA-Jk0s zBaz^V@!l5>nXS7W$Q5<)XJ*IH5wZ>^R-#2?1>h-v%0~}(Y;$y+>jyu(8bQ3LdmRnr z5w16!E^zSpiP#NT-G&InHyy+$jQ$_ZjnOxMK+(U}EyEO7RVR~Eg?sCd!|DVEzi=0X z6TIq=jlqnzNZe;WBj>ue#1MS`31~|5As9uHrvsI4yyxenT&r-ev!DaewW1vp!N{wo z4r0E!!o69E=2>&t2dx;D82Db;`uF8CFjP?K`sh#TVH!PhuaTdV+?7z0p4h(J+Kcfe z#5OZ?#qdtMNYI;qF>DhYfaPI!uOJaJ+myTPM#=USZpMn?O#y)7=SBzIi;IU#>u4qG zO&#K1r!uNrpi(Q=LxW|6`^N`ot*~SO-xlE&!~}s-7btaq9QJG+e9z!RzVW3dl6x_m zS|_KXZE)^n(A#OyQ+;91hI?s+$y+>WjK1ZbUojj<3U|fDsk$h285i9}Bix!5!`b(5 z?k-^ZrUqZ_JS?SQA>G31snjfKL1(WRo@t@&2f~7INuB`UeN9T3lL6D6*s#h?Vg=}9 zi765D(O*ZBaceb4eH^}tn|zL z@d*V&MA# zz~i_~Q=_lE^pDdtPVpZ{xa+DohiIt1fz^}l_?&kLCuqI^+Dj~BTUrt;Fy2d^Ndfs^ z%jsl%5yhOrGOcK6YOw1PHbp@rqtLUebROMOz2e(LMf z1(12(aGhXKo8HBJ!lC)r@9UzI5wkaH@gh6trj9TrK9D?kaWV&>#&xT2i1tTLI1m89 zl{4A~g(N6T@GBWVl4LI%l99)yfAp-XICH5iehL)*Tu_vvwQ13hWRG-zsgDjc2VUs| zPHvWoz8fMU|DsB6gaCu#*Fl@T8k7$Dk7@Uxnac25y~cel2z}jN1wJzm@Dt#fKgH&+ z@wv&^?lhP0`6*=wTorv=x`?=ymv0IVZBrM)&(Xp{Y+1!k+Rfd2Kt285x4YSjMsC$)$37^hAA7=Zd8PZZAJg_G^0qWP$HDjabbae#Q`*w# zEN(2J(eW}{KS=)do8X9@)acx9J_ORHn5O{qLZkD@ruiD3)<%|Ak-$Ci&D}(R*u_2C z*esj}k(;rJSMTh>l6=qB?Gcp^G(=Rmr@M}R9r|3rUQ#ZWUJ6#Z>#TRfWPRLIo1)(N z1w2b;t1PE!>Kzh_gZLXusdpZ>(Qv~?V?w=iADt!DJEL-QWH2z|bW~Qob5=ZO)I0Bo zUYZ+YxsxXzM8;V$k$){R>YdN%Jg9e0ODuyZDe9du{aKl;dS|W*v?aZ$2CI8||AcyH zPJ0!^V^Luo6}*T1t{f5Zv3OMm?Lw5EVH@DiA2CbL8GD2cX%x{!%^;xdIwh(a$?vvQ z3{!%N0U_ei-=kpl)Stc)5^mqD0l?&B;2mO+uuPtj0TMJmXztZ4L99~Pj)U9!yIDb| znuR4)0ZBLij!FgbNW$BDIA5aLJ@h+MRPBZb68KAKz-yqqny0l`&0~XUEf@?+rJJ-L zVr;IG9s^uvD&~KdGGY-bkf4lsC^43(;uIt;6K#9C8?`*?^$a+2=Qny>|28lsoc9ZY z-E6u0z{%+n^nZH0E z?xKBV%#X3YF@K^rzRlqK)Oil;!=v%wGhsI?S~nE|@NTWq_ZwzKf8sXwp1bdE{1KYc zqnG)+Z-6^cP!?rmh0~jHq$*(T8RXJ%mTyR6jK>XQNJ^%{8nx+jvtp?ZU`{Npi?(QOODb(F z@eZN1G3v?6LJ)!KpP}T!;8)bzpISu!RvL3|SE9)NU zpCVIBHT$8lk2 zJ0j~jjip4^PXb(z^EAqftnae1vB(NM<{gKaX8DpIP!jmQ>AY0qtOf~M^OT=#Q+LmK zCh&QXeq-@)!%``C(Tx^}SK(e;JY1;Rp45k1g5H%d7W7PPUcR2m-FCpiH-BWut{)4P+w?!7V!4u5~@m-Q3@cNsErQIKYm9X;ksH`to~tXV{n1 z{dU8aU|7pC@qzkkES!v1EYI#1#xWQt%IHMlAw;>|m4?LaCV#X45dsd#dJRioLQ&(v zP-Asp2E^^b%@DV9PxbT46xg}L(m|OrG^y0#35}- zCC0~zrjY+ki2+#&N{p#~A)xlA#5lZ^663YEhI5sfo9v5fu&-OfK0QI!%Df&$KR|bZ zGUMg9hD-RGa$X9s=;5BBn61d!jRxleq@TJg`V+Af)gSAL-jbtDY1zY#+a#$kSPs^t zbjM)Xraf+xS?CiWHkX~xsM>IU_}3BagY!g5hlpaqUR0{3LFVC&9ejTDOB6*Y1KmI$ z{FQN|47^aU2*tL~r*6?ku++gA zpOf-=At}F)N%?ys4%`TNFF{ys@5|CIKGeB|!Z zLjGf+s~ONkFXW>S;8L3)R&A6=gat0F98limqx5+PhO6B!oO6D_Oyo^ z`vhJZx$^R~CmM?iJzVn>!%2VxxWvMA=rem-#n`RjN4xRiT{^3BSjM-=BuxXN2FM)ucXT55**pisv^< ztK8Q7Sgcb_Mp@q$oNn6>UuzuQcE9 zOlG@5I>Ih}$pj$Rl|7B01UQ-_@;Ow{1MtuU;Xmg!#y5xt4x+TqPB#w+_ZNfj48T_h zcBhdn>iGD$?nm8!&#yZ-0m%Xx%x-t+j0K`o+%i+h9t@qneUW|l=aX*iXxvj=Wmc|= zQD>I=v7x5U#o4%~Dco=P?oifd8p50$-Jv)4f<<#DI*X8avm6|k$lb9%su~sbz7z~Q zO6y3SjGJ-1aB*+9pjs|Z9<_W?8cCs+T~Hm@!VGN6*T>X_&rKwaOHR{zwHisBe1?NJ zp;;1UY1BiTr8<;&Q*YwU51XTX8={e@!F#xaL(Idv<6BLt1+&iu2C*y1E$|5U%J3$f zvwk6}vV~l%Z1$%fU*?e0N-GQeZJIzoYjxI_JFwK5pR1!aBTU>_oLYA(FGAnz%C&gUQ1E^O z3g=--=VR!;8LT7)!zHfh7x3bbxw;um90}x}AsKk=~^&SGhv?{XidSgbxY5U1Xl?LifRF za6{+(+a)b8O$gAvoIN z-cf*Ob@n+0-?BMPv?8Y^ITx|3S*JVG8P1YO&*8a0cRoiaYvgGeS*vi?9>^6Rl`Ouz zxC7Sc!t@F-u%Y4bhfbN!yVdB$Jy$w0=1M;ib|~UX&o$ax={`turDs6*Qqgv9ljdn@ zg5N|h>smFL-K5k*e(|{OLbWLKAW{0OLOT}>9VS$+qrglmYN~l@Oz~@zu~Kv1JXi?v zRk=y#jV~e~^V}+Y5QfQN-AxwdG>#bNc+${L-vp8pBiGDg(`JQRNk6|1>P}AE1yJZd z?&>#&n{)V67o^&bi2NPl!Eex$gwz3$jS4@lNdkYW!jn}BVyZ0ui2u7?!6xMG!77xHZEwnwcxNTb}<&?xx8N=Pbya8VuOn?Qoz*o|T57+P#oiE%D*s;B>M&+v2LArB{lV7aFBt zFhbUkK%|XDweo3MckIpoKNGS-bgQ`lBlzn2iAX&-ODl_}L=-p7BNrYdK|@41CdNKQ zXgn4^J@<@U$h;#IS8Ub#XQtm_Gp}G*ghMt3I=AEV+k6U_B%w8IE#TF}p;`xe+IH`# z?+6y+NW=0#R8Jn&1$)k`27I*rP<71p&pJLyZdS*{C;LSSRN!!6$5CKv7~3@A-qc`U zQ3=)>mNjAfFXa9DD+Q{}KH#oA9`gYH&LSS1Ktw{FK%GlmD~{9CKJE-u7+>)?3g;v! zwe6H#uhjvXhEY2Bo(i;gP@{@GdT*^{zG>s9oo-Stq&sa@DarBoO!3!BY6U~HWGKGf z4X7;XkY&^tb6)G`E>d(%ls?F)V@{B)bid#+2a_PuMRHl>D@|3oF|*k_lb)1c;PVHp zc4jL&0cD#MIz=bjY&kdJ1qt=p5$ZM8=xw!5c9jnm6)xBj!OK#?!dfyg2^SCG#<8Q8 z{%)MB7u zPxejoKFB@K5IH!tO)g9KZ&}HU?!G9C+h!`sJs6q?tY7(L>2anW06W%3wueTPWWMvGL5ayIWYNw%TJD_5ujYxH}dN7j4|w z&A-Wv4_-|>J$Y=!B`KTlvw++vowJHeHJO0e^cTc^vo$!U^XpxHREA_lv|Z&Ml7bW& zAe*Jn&_l-ED=jLFEJ79qU^M%?x$x}>U3X%eiK_Z}v7rJ!8mu<375`}pz`Rf%UYp(2 zFM&jl^l{)h`H=}<#s9$iE5Pg}%+lZ8AjIdf>elW_gjVSXynTl0yxb|@GLV#H5Tc}c zlfrOY_sB*;?rNo%Z@BZ1Ni`0n*Bxj)eQLnPV7E(&8I<>$4w`Z(3O1wkhb(rryHGN} zP_T#2kvEAnFji96YRQhF;gS@gW2bUI)^tz7QFnKBC#>4GK+mFX&>~!!TZGLV5Azq{ znNInFXkrm)25fuTKP;xAi(C01+v;FeWH4hLyNu-5o-%>S1~)`{IB!@#^&V{T=AqTq zoq9hLrI;u0!+8&7Umm0UlnbixzRum5OU`uds6bdFi*!cL^~=SvErXd!;XzZ z2AmowHT>cx@PYqT4+!r^PJ#MnHCgGtps%CQZT8)m-Tibr>d}Zj@W&e3`7<5A-iQrV zoCXqcG(@{ML?rd8k;}cH^`=?FQ)c5LB{CugaR22bjZtBgwKC&+hfAF1GJ61trZ699 z7y}{8K-vAN*@z9OxJSqYF+{*k@@VvGV2aK{*B3l)o0|*fAD`8rbv&4#)(T~VuZvSJ zR-TF7S)q+{Yl%bvwQ<;WW^GcVOz+QnknF5Qn|OoYL^Q7Jj!`x;qMLBmg9Kko{j8YNMaK z?sXB6gLKffp_K1DV1Z^GVFRWo<&GN|4Mp+1W+O6KluR;r&95!V+%p4|WNyl@RoVYz zl({5x%jhpNMGSODlgu^a4^5bqUChV?7*Y>+-u?JCl+H5OnpvhWo~PlH?OzmSer1T~ zhUN~WnY-kD8XlmvOmS6PHqG46! z_%w63|GLw5I^}l!nw#5CGxyeejDvHKyM*MdGBw^Ss&RUm8Xp$b7+t2ur*Vy3nz_qu zCvbORjft-E;!Izk>{lwprMJMdge!JBS)REkB*An^PdA%QTM6g5SciowopA2fc=MHU zZnw(l2tpF#-Hzk<&S}o2oI68%x=Bbmhq3@F!HEHkMWA5}*lfJ?Ef{ATyTS|F#%wTa z%{)7qG;Y3b`Yn|-4q&#ladG~#QGLvL{@k+^2UFlZFJGk}z^LhpZ4JRE0+DbO^37d$ z)`*N0)#Vb-E!V6#3}BX3bueC|uz^q7&yt|OUMCh!M%P3RbXIB7ekmpM41L<6xa!#80!ay-Ee)OZcXum~WpO$=<)Z*aJ#b@4>^8MTBTt7$U_(^4Z$0aYv7ys8eIj>a zNUmF5E%O7ff2l18j}l;Oqq?voc;P1X;PHYo#jUAToP)dhH{^LjmL+&1?Ji)uLmbXq z?5>{Hx-ZWx0Rz&Y;>7T_U_ed`n?dj3jwP<6kBE8?i;iKvhuRzYcG@r}70#QOiI+7h zYGTW+f_3VRb4j>`fhrky@wxC#WJPf+-^YiHIFguzte`Dk3~+|-g6*I=*?|NKxP;f$ zLDr1RD6753_RM5i?IiT-3%?0A*ah}p{I_#6cy13L@ec(<5_xLVb?F9ECZlQ)VySgs zScw9=f)HuQsduWn@VDEoEmL$oEw;k_^+Mn|G^#l)sysv;|Fxl-e%>xsIksPL?$1>} z!oHM!vrO6X*|OOrbwo+Im8GgBrZP#@{O!IiOi6j|v@1ncl|+>bd{11pRvD9#kIrqM zjEs#3m%aV!{lXfoE^c<`Q&8zUD%~myB$ndLTnqoib*oGdGA9Q2Ict!fh0;b!%d_F| zC0;fSR1SjszyQi5$tc;#kAZElPS(N)MiFW~%q`G>sk{r~B1Ji@kJ6?=;!Ix6mL@^> zebB~ObtXkAITkFZL}S{VT)Y2EB?-i;ly`ZIM8ysz2waUY{P{gB8p6c?fYNn=F~zV< zRi9Dt(vINC>$UnGPcC!Yq;^VeJ=WQp!orZn=)fp2z@TPzz{?Ep-sh4RuU_#w7M%#+^(XO~1>DWkL&*Q6O&*zY6=Wr_ zgLIt^l1aZQcQqWZfBMY3#Po)S3Kw6^y9GOtU&UW4S^7>%E+#S;VGGsn&z=PX+w$nh zv@zMJ(~aXEq`xR#>_;7Vb-YsXZE8OiSM4vb3zrW*KN_@R^%9p4s^}(Bg>T1R+NE{I zU|Ik-IN^)ox$El+zeNL7^}D`Z+hF~6A05is(>J{E^a1pil5Q;<=aPYTbOOD%nr->+ ziRAto^M$YBYJ#LbU>2mlt4}O#%Y3;0`m375?u*CQL->4q7j2^t_-?aNn04*`Ds+k=%L!Uw7}9A;!NKY-7b9Qt-xFA4LhcIU|iZ zrlZpj)$ShcK0_UpNJ+g;lR=d!<&gCFFvDxCGt^DB?wo^!V3S6zj;S!|udC#IZ8u(4 zQXga9>Otz90XPcr#d{6~+m^!iGw#_=rVDm2oFb=luVaiAt){xNEdSzXA?vdkqr{pn z>C2=N)>7P90O}OvL@XU>8{=*`G|LQeeb{4Ehi4O8IPFlT*v1K=5?%8-v^&~DV ziT)B$a?_y(Uw?I9sz9)je-_vGv?mB=0e0}Kp9s1vmdjv5P_e_DS(@*+-sY^roYAP4 z5I%_;1wg`}M%s`qT!L#)JrR6E#mqI;qZfA`g|gzzUs!FsRL*w#(?c}ukmx{5|VUEI5*SBbBC00PL8+4 zxhZrum|BWB(HWiU&)iEReO`^0_Rbv0{6)@O^xJH=Ou5=Uml$SP#fxnf{n?s*5VQB7 zgoL~^KZrtyW$SHrmM!_Y+@wmbZLsDpwbf#}Te_D4fIw*;O?0BoN3fhmC&-oT9neI& zcYk-?E^$KtMTZy|{hPa)atW;PVBAt3B;9HwwgEg47sx@yZT421=toTqpdYpE`TRqq z3+e6dV9z<-V(D>tHk`Djdp9?SIf;g~_srq0qB#Jq(eGAAz3QVU;rpZIqQ;5Q-w`4P4)+DpdktweYBwpP)`QS17PoR*F0J+@J^?dhp8P=WSd8pth$hVd@rX})+Cj@e^7QlBz_Dnx{Kx$Jt!)JlnE zVDkqikZ#b6g74ge&4Tx^`VZx{VWjm|%<795KPu)n*_g!8V*4R&ff`q{KI}zD$P{Wz z(olFof#FUwRJ}DiEwi5`Q1#25kZ%fzL5vsrYkKkSCs8#6CSj5-z_~m60AjGm!G3YS z>(_RD8_+^s5>=>f+RY1-{nE->dtlmljcLIiHHA`ZeTzETqWJk+G>vC}g2zArkXXE0 zH{Gm|Afj}OCMe4WTe9Ec9hs(Zoc^(VO??{&XVwdaul*z^6B5a-!(HzF(l3C%pV;-K zL4codXtVMr>?mNG@ei{GGA{t;QZ8~Yu)-qj2-YtAZfcgr89XTLEDKs9`%iALb`!@2 z=mAPxA$venxv#8&6$0n~)$3!Kd)nRl-?81_x#u7)<_^%`SOW9>6K}v58=FypEb5~2 zEdg2{5ws*0#?4K~ir2&a4b_i(wm%HX)@ItMcBAAUEjidP%;)m&kmK>T z;eC^T&s%)-Z&=6G)(o%GEo~an>04&RXN}gFQ;55mE@C5{B3}8mVYaz?Y;(1?G&P;J zNy#4U{)~b(*to83YF|0IguziIVdJ{8um-b0Ir$<5Z4#I9J|TuKj~jp=zr0CGodO)3 zDEoA_Y*5ppBS2i1W^4kc65+!*)A_pfT4B#t^>NgCVO`~~`N9myw zAlft?ty*t>GPX^~$ZEu;S2Bw#_l9rZi$wAkyuiQB48U;eeF~Fl$GmOHU~HLKM1QF; z@sc1gTa~9qj%dKB=u<+()T6#K%?{{L30%k14I!I;_;CqhRMuK;hTA8v9n03?#VBQbAee~qH4TB zo2dsaxw$VMlMvDkZ3%fHNUT=tL&tlX==AEh?Ne>vD~6-E+-1CH6Pt z7HRRBtN3PbMENm4*$Zti5pmY$c!Mt4GX}VK1WCbWf;`Qr6AO&ocBlHv6FTw*8l{}= z%@tTQoN@Odkke|FB=Tmu^HR;}zPn=N6~vmkz6%@L%o0N|X+LiW;fm<1ay$1lZO}la zyC#4Scx$=Z{f6BXDv~v=uxU1Tfr@xf>(PK~PvD3^c>|~OqP_T~orjsr><_X1TV1+Y z(Y!s78PQi0u7lEX+Ex6P^QLBMKxN>)VQsv#sg() z+)-3xZkZah;~F_7-3#9n2zShYPq0Z>H>utZM!WWVrG`%0@27~>f<`F}`(1U&4S_lH z{rVq^t58gn@W*%L>_wbIySuBC@M}!pnvdVzq`$^by?TvoJzkfV^Vc}t$fI7{skL&Z zV3Wkx)x8g8M1SlSAFZreQ)5zgbD3p*G+x#$@tanr#^a#|DTI({*)|kJD8r>8lE2=Q zdR_S*H%SiRR_3((6qG7Hiuec)CEiM}a1O(vo|HS(Z^VcCLJqaiF(>A={6l?di9`Kt zIMl2=2V?rk5gBha>FLhr4JK(=i78;ZT6ae&G8>CJboPM8-Iv>7YTccsifVSjn0r4( zEkoh$fuV$s0T?BYK7;ZXbwa*YF(6|oS(K-3DZn!#h4DkRLMP5$$3p|8rR}yWUv1ib zJJE#5tTk~155Z+*?mij@EqBLkKvI&{*W;^tDaQnO7gjCdFpCbI)&FD+Fzu`(~H zY`;awAmW>^r!-D#+^_3pFo}%Bsy?SeD4Ke>hr@Y-s#ix*r>*;U`gWyUpsto1gih5! z%F}US;l6*tBIPcvhjHuq%c$~+5JrBB^#_NVZj#7nQH<&{GStX`gi zWyCkO>)Mf!f`fg+aaKImAGEjaxUp*^zRI?Pa)4=F;%Y~$i+e*0=M9^#g3FwRYaVYG z*GRen*L%26^{+K>>U(8UvDbPIea!gMB=^T zhZ}Zcsb!mgeWHcDvzd1#cJ@%Z52hi-Nwfzp9UA6Ya#!webLR>nFLCk37T$AkSrHdT z@E&@zS2BXICow0$t2w;lpS^w9-X>T--rvr9&qV5G7~FaNYE-yKVm5E)m);Y{nh0EF zF`E}z{Dy_Vu-vhbI*eVNA}Mt~Q=@?j_nsMU^B<>j z_D;|s7R0D%OH|7zPwzjNa1(tsX-r?-Uui{OxX8uIK-=_Lr#~h&*wcPStev}aCrtf% z0;efi#!DR!XeeR5mHPr+-fa{Fs|B~Oe$D=Cl>W%}8eV+CC<`|3$GB7ODm!BcIsk7k z8pyaOZw=0gweG6_qIHEe*in^|V7{yyD=d~_38w&fl1{FRTllEgOP-Q;&(r^AIwf)H zp9^id1Tjr?z}~IU3Q?`for>nl;6WX)hw}_FhrGVH54ZP7`>P}z#4qdE#aTCAQJWGy zFiTxbhXb&J#V%WkB@vQh#;;Q%kMpNuro4 z6%tLzZ=*XnR#}BB>jXV*43}+i*W#0>0X)sY%pa>%+9{^loS9~M6LF6|xH;Xb=>u6e zXmw(6nh=9i%b%4OJlY;tZEb3`JMUNVvS}FZ&83Zl#4MNbu5M33c{y zuUcCN#U_d|x#qAnd_r@<)*zej0?@Ysv-Ny$Vi$rzMaL3?VXtr1>nyymt&i}s*lw2v z;?oaN-C|59h=FaKtJ+CBopo|sVhjRr1o;PS44pf>(b8+Xbvwc+d0@M`a74=}+THE0 zeYDm*49C#;Z^l{lck6b-Ag&FPI72yt&kvpkyCt)T!RuKHgS~RX>}1W+CfdLXclIs~yk<>4=Ji(YL}o63cdv4vU>g1?eZGYj)YL@>G^S4%?2`KmR_baM+)Wn3(H=4z?4~j z4x5lwiD{!g6ROnUf-ym{0vg&NUP|^c9j@0iDl)%qmdxPOZ95z?<1^wZ+BwCyZ)a#R@O^iQpV;HXVctZXzsI%131`$Q;ds%xvpD&ayV+ z5C$w%N;ub!uw%XpL$HZcxea_4uw!poXhu*+1TVEVc9V9hi?)R_rP9s%oAAuY|H&B4 zse@<@5Kn<4$O27CdLE*gz} za)|$FhiB2jMnBxCJ7Yy!$D<7zZ&Jqc$CYb#eD9szYdfm<&Z{{qgHl0OIUDu5PqU&U zcc^>*6s3NR()%h+adYraYatfdF3_5$IjKFPej7TtJZ3YD&Q`vS#T2_{tEn!b%oAtm zTuEcb*)WNT(*T^LT_bL6a@U8Mw|jMYKTH8g5gJ-WRXx;daz!qxDwhM{Um~iiFj^~9 z%Zxdl7cgTx#LHlr0=eJ~@rg4mXLY4}=F#Cs!70o$W3r}!1>L;0R1jxW#IHB!;RA}k z9RT^5l(O=jCxo(?^(vrR!fcA#e4As!K@noG z1MWVf$pL^U%=fVwJO1tAhv4I7!Ow;b;)AUg;=^sAbmj3 z>_dxhuMJ%F&3@wF!k_`kFQuF<3Ia^V0GdKB!~n`(9LN3@11osnfVC(D@LwEQWt`aD zT`B16PpW)y!_xrY*MJ;o7m9QTK;hPZO{j3EXg9|#oMuV4eZ73wEXeKKVUVk{*;)NS zOYD1~C-(j82RZyRObKHbX`xPBc1q!`%fE;s1t)E#>$Aa}znT@;3CrfhcmJMM9q4YF z&2H_yEE-skxXNKZ=QDOpjMF`(7^mi_S0CHtdv+N{>65MGTq_CIJ%EVYjQcN12}k7d zW(Saq7xv6lFI%{o#-5!Vl-}nVT6;n$C!iIoo6|Sk%$*F5*!`&cV7L+Y>8Ha}gQIRg zX-cECNiZB)<{2QlDB!S{^Kck1koWipo{{!9-3Mld%uI)e%uM2PMvBSVvjme< zh}WogufVs8uSj@VKQ@xBEVkenroq3xOmCa zJ97Fv$^CIB`@#$R#NRUfmIex_k+%V~;6>|MrW}DAo?;5e{1xYsHtnAbI@DyN{S^=T z?q1fk_09XlW0=!2GPk5EA=r0bV+{rfQWTEcm92EUL%8hfG01G!RHv;gSsxZ;;z59$ zWO{@Fd8rk6`CeAA)D&dLU)ecTKh=jlU35^^vj9J~XJ{cf`c9E%qz%6UNd1?D4 zU&xibxc!nZ`I13MV5Ph#yScM}%|7k6(OG^$U3t;UzPU#aG6q*a+)M`5(-+WR5bwFh zaw#W=KDEBvK#4_nT zzi95>or`XyODhkGd32^%U_BWt*Mo{9>*@ux7{fUTZ5k7z^b~2*vStJw!d{0(-FHC; zhLr6p^t(xKgby9UNB9x z+e@Q|uKc|vr~`&rh*47uO19_aaDkk2^ddGRZ%wc5hfOg?c%^0_^*r(#v8sfOt-}w`_tUN#EXyB`-mdX4}M> zdXS!@(>#&^uI^vU9kS^ry-m57c-KG%x{WG2y}z&9NdI*GW;Qj(UzHl8UbD=m#>mf% z(HhV1F7+Y`@H0G44%gzilToU=>J{9G)5hf+_r{gyQ5lZQbP@TNNt(MH*`=zue8`O^ zxJ_6v05fMmWNLiuN0;~lZ^I-=RND{@L^&4KRMGsNmZ)+58Y$LFT?H`5=d6OmL=~Cml+a>GFHq4enVXx;M&{*k~ts8DA2yXp4o(19FG60jBq{;G<1pVap zOq1AoEOBedAyk+^LFcWvn|>N??9A@&${P84GV7=>dcETdRn#GsPe*a|;4%_F>jXq|dY zC=q#oi{5{S@gX={;}4c7bZerJ!BBSvXpINqSe5&d{fZ}IS!SvV-~>cWv_j|lK__-I z$w^7!L89QhR4YUUh(F8U{t^{tB`TaqX(57rJRQLu%v^7_VhhHb`6 z(965z;ORJ!+YM-BURY~H-$UQHFSQX#$WBg8JGZ@?V>6q;svuJuD#ysm47E`1<3wYp zw>xb$#=_23Yrrhq;kS8gM{3=dSluyY$4oc#RG|x5P`AH>kBLJJ>379`w*5cg#P7xg zfK$ji+%$8U%{O&les1`s&6MW8$Av^_o^o7%RqwQ7#t@hwzNY&};z%cQ{bg{Ax99&9+Asq`GiT)>9EB{$K zPt+PK{11C#DhDf&_lFgzaaY^i4i{JY=0*%LC2nJ%13kCl=8nTs)+Id{>z9Ja2cs62 zA_rH&%<43GH{?&!J;hUT-^iXaC7pz^cw;1KF)H6hL%~P(`t9hOXkxR*sw@8BxBUh5 zsnj}73~%3hF$E2FnNG@)QOvnMtB)%}6TwydX@QVmuk6WED^5c^~md}sg6FsU%TRZzl|4Zz(1EJ);!X4!+N zLEl$Mz_2`XHnaim8y2_ER6>ijl4oB68qrHL(NLKX;_RGl9|p5CKUdK^X8+eETo9Ee457 zq(G?)Y+1=%bf8HXJOOyD)JpY|rA)pklnKz8x);eomtwOO|5=J-0Mtj4{`fKqyOU~;UV!;C$&3kSFb z`wvsB7){*Hs(Gz?M*i?TS;h4$a>U(MeG%KfTS>)~UfK&*EBGL64x-j$Bjq+wgKB;2 zfD3|ckN5|O!F6F_V{kXeT5)VC$4Q9(mOkDH;LZhf(32RiG=U_1a-fIzGp$ON5H=uI zHZ=_bMFh~r<39QA35^&MoS)H2-lb9PhFB_A3EOQkP~y7a9^205IiuSfHP zv@M!M(FGf2AbkLCD%~sUlG$mm-Kj?Q*mTvvC_NJTaS%96SyQ7bk^f^@AlDq(2h>Hs zs-ms*!4S3Kt}Ys=4~~XC-P8Z%txNyJa}HA)Y6o&N6ZE`Eq977W4|<2^IPsvsb2R;j zNGo|BQ|XQ2JIGja)0 zp6ta0^ad9k>Gt-B22VLT+Uz^g;30%~|Ctwi0@EtsDhArOt~%Bi_^(o6xlNloi-f=5 zi&2p>Pinb{)GH}BR1X*?Zc@&l*>7!t+C9PwNS@x2n^U&I*E#XNfyr;q zN_8S`>rY;r+=*80iIIruCYYW6j%`lADLK8u=?|n$R`eyNszvWAFyv<1rbd3cgNA9?`qrZ!B?kA__1rhw z^=DDfeWE_QMLoY8_4#*R?qg?Qynj-<(U!&3+Je+n`bHdB@7t)w_W0_JX~Qd(UHT)8DPTYw@na|9RmTroid8+y z!c@&f)FEzdo}XlY)qk2C>}lMifQK&W(VVQEl<%N1syc?>mg2in>fYn5m zsh>qvWB98B^I?tn4_#iaD?*fboaBfp*S$H@su6Af5kH22QBXa1C2V4w??hd>t-*nS z1mHgecs)ShZ9Hv%boAW@MSbPMe=L4^s9g8DE`73RGP}{i0q$=NT&tm){wPFln}%o` zcSJ*zRN8J^@k4ZZxRyMeq93B^_MJ@qpLMdD+fm_nDiBsk`qY|sP5(`cUU8oKar$tE z*^@-mscNne@8kYJrWO#XMs(g1iw7-Oz7MuuSh<3Z`y=aAPAgx=<;T?|%#cG^3Vi|`|1u<&)Sk$R;L4m=a zIk_lBxeb&;T~tVW*;@!|Z@%`7y6&x$)3XJZoYN#6cDa_&ki>s9Fz@Q66d1(hE&Eay`1-8@Y2WBYfA zZ@*-7;;F1TG4TEAL&=xA2%aih@bbj4^LOsb<5>?udw=zj`A2?VLIudUQD69R;bV7L zBVi50Be1^OLCNK>FPq$7CA~o}zMvlsNfs_IbGfJt+IL zj~-Ll-loz=+A&Q{%(M=a(HEBe4%f^e(ym59O~(%uv+!Xe>_NCmVrwupx%9l)z%-$% zv$AGSLc5=zHG5zaE$;&{KpNPOw!M$KG}kgC*sUb6AIF+O=_L0sDcTcW>^B}ua}t#V z=b5ZIi9&_eq+Eid+m2O_7?Z#=Nn6sfVwW%_Q8~6G#jT^j4_e{J?X4|~#r7|%v;^BBqk69fWo0Cv{C{Szp5G+V*W;nDTl<-s%eVy)@>8d9s)Ii37?$aH zF5mfhBj^uUNBh96K>!Zvc?a@v9ke9^ZYth~|2Ji={Mj5=T+*BKuji--$nc;N(5hy{osWVcA zLmT$CtPHpAm+whMn+T|jY?zhq=KZq1G=#n}@6B|ddeE1x*~dE8TID6 zWsqU8iu6@R>Eu)@v)rh7F);3Z9(ozOp9R^_FHbxs8)?PVl4i-dAGs%u_qQh2{xG*b z!E$phZ*vzD-=WIwY5ZCC@&6xr?*V63b?*IhX0i92ff-;LgV<&yHlm}^YZM*O#Kh=; ziHU7MV{#K6)OceXM7>HGK(PvB3Oe3u>{-u{XJ{%)21+* z-249D&mTX|IcM+H*R!7W^k*^g`D%!94MkUCO zOS18vn27x|@de~UaVpUfCVOANazj2*|lTAj2I{hEC} z8hRZl(6xPQn`IR}u&;aI-fnf)($agzHtG=$R@$PXtlH9xe-h>?SGL zXdn0GL?w&a6%tjyf6P>VQ_m4PU9NxBxNF~LpfOXU7~QG25BBRxoZrrY2-JQ@RCa0? z%KkMfJEaR{?_}e&@NO@!8Hn!6i#n?s4Sz}0&4n8)OSqT|4Ezh+tLw)k&9oC=kt~l9 zsM{!z7RwIATsGL-djNMWwtM+*rJZ5;Ic>b%^g6JVUBG!Uz+9CH5?cDl*t_hd=jjID z5p~fgum>rBHs}H6$I|tM1;CY07@!rn*Vd0|L@z1EntK2DwW)$#PbTfqa0p_u%RZ{ zon_e~gh>bOM(^s|d572neprl0vdVAEhjFL6IJ}p#wD5#4WpFzAy#PQcWE~ebb6?J| zTT|17lf9dy4b#if{P<&w`A24=1DdQo%H55B9X-qIsF&7_kJoj;xoajwe_nQynF0-S-OP# zxAeM%a)NRtxAK7xZrul+RUG$#eOyC~vM7AHNFI6eK-pO6@)o1y+%0=2$Uqoi+5HU8Hf8Nkc>H!sl=?sK-g3YR5?!UaIHs>S!OFS&t|!25L{ zcdKiyL(1+RyO@h`Q@7}24m4K@;G@lWha_-}G2yOR0Bu^}9=v!gxql68;>SoaXlRP6 z<6v0DY7Rk6^AkQJ&Wsz!TzTE&`%1~v+bv?Z{|r#j0n%T?Jty<9Ht2mZGj;!9Ofae> zgM8SJ>8^N8Ehek zpqUFe75R{;{oUn$6nvM1elG%|9w0+6-JcA4R027T`|#qi#5Z?M@qlaUlPv56Ti zb+~jmpT*eU0!^?C?r}?9Z0k94BFgKmHw^S92&* zH3-tl3Ad%rWRexH*BPMGo3QJVG$Km&{?XsY#CDuImK2ymrt$9bb-Tqf2qFAo`eHM@ z^v-|!M86YEDik0_lw5*O+oCAZZyQYVKbJX7DK_isgpp1cSQ7HG zCENv1`XyO+bC;K7+>`N=Je0E}^R~!dk|#!FFUfIc1raUDxf_R)uiAkU+IS&alIwGq zrk>X1ts_8EXj*GOLCoG5-E%l z6T))@F=G1T?;>v!qr&MaNQ%Cj(M$AQVpN?CeI}F#{=YE~s`A!B|B)e>5O@UxBWc9P zN4JG8>a9iYxP_Z`Oue-ztr#@QrkEOK0Qwrr{E{~(hpQqni(+;pMfN60(}bce^5_GsKujOxhcnu!DNjt8k#gz(MboM$i9iN44D{+E^0-`;1&*zpN^C{<-Vv(78*w-&5!R zE992#;KV}-G9@1ML0t)z~RFys%+F$m=PxY-jDjjNQTk4g9>eS_I z!EPr+yQov7%(CRSd|K{XhLm)qz7^TCk-WDAAd&c-BmEL0mH4=DcfH1xb)+{N(ZI3( zdvvT_u@)cd#E4xQ383M=2|) zcYjDoI?G}Ix?eM_7w(d#3iJIR-g05DBI9h&5M9zkop!(4{rS0Jqs z*}(PJyGIkU%zntPF@B`4k>}Um`i??_khuER?w<}a{oH>5Ct8&dAzCXU>~g&tC1PV; zChv|^qKz}7NO(x$gUMyX_5-~a9sre`1H2jjsvrK?x&Y=Nh~BCdnt@f>&9d;ow5PK0 z++<7BCc>xji`o96Aj8EI2%X-?J@i$#8d#$q?opP);)(Y(^rgrLikz$w?uL353nk8j z&9~xT&94&-R68ICzls*gz|BN0=QrA(T8R$-nEz_Jg)LN2$iqI7=KJ6JYlQ0y{S)WJ zx6!iw<4a6J0rqGSdsNsrgZ@lA?{T59=wgk^FOibQ*NQ zk^B0`2^d(8?w{Dmx8hwN-}$a@@Vid5z99cGiDK(57UA0jEX_b7tr1<|42fKvLmQ9* zRg2)r3MG@wgbW{%f`W^hzv_lL6~MWXn1&O)kwz5LP?S-hRJ?ml^k4NvWGE-VF}ku^ z)9LeFLVb?Ml(ZvaZd5}9(;i$yjK*SB^i4uH>KgrWA~*ba%#J4gcZ*~}>~Dq#;vl<^ z%o-w2z0zk|tqf7y&%YEO(f)2NQHel_9O`E_fS!8e zw&ZicJhh>lw|#Ceto1Rl0h3JfK*g&F8)wM~j&*PCQUmKtHWm+kmnfiIr0@}+hphY^ z>rb9TrS1b!Wx6mFzk3Q486Tci7AfhjjZfYh)k$f4IeC{8PXHub zm`JvmY!7qFVMtVbbDy?tPRF~uJK7L@_tpFm0358(C`1uI$0EZE-S*i$C3v$}&|?>t zi-lf43}Lnc9z~vxH|>HX+Twn-)<$u^9^Oqxnh>~m)%x92MNB4m{%WF+`!)W{2$&FlL~*|wWb4oSgq$uV z;KiX#qNSB`n~Q|g9R~jTk;n(Hy7^ZEe@!rh@=guc?@<6%mR}HRUeg5*|8Ec83k8WO z+g&F9C>xUUrI;~PfDM*dLj)AAzn;tJt(2SdYJTNJ{rW0~>8)MkE}#?N{!JOjM=*_0 zZ3VCuNBvUwcJ6w)zj5xoZF^*oer-n8px_Ebz;T+2iA2Yc`_bJNm&~~bcJaTLM!z4l z-({}VhLmGd;qlfL*v>E<0d<~xneqe8j2Gnf#Q{K_9#`1AQfM`OVSnvuxW<0TkzFAi z^Z`6XCEAlsv+DQ8S?XJ~2e*QCVv$oy`o?_9oFRbJW>EB-Xd+*y4zI_0ifqY0t8`Ar zGHHdW_8BW2CkO!n$*FZsq%KIh^A6O#SnNLEMaKHx^4jC0_7>{TT6T%GlWrb^k)8j- z+I87x{#!G9Fv;rO+9l-l(qr|Mr8Kf?Pi$xcdhgh|n5^4qur`ioDh1JZg9N6rH7>=w z__$^Q56!NXS?xij921-VTdn>d-hi}SR{xXQ!#F9c|4(<5X`K(4GucYQV06*yUqS%s zo@7p$ANqhfy3FExgvDw@yU)8xf+zoaG!%12gLc%E`^`FDYXqI1qV}o#MB{-6%YsF z15qefPq8BEbv4q>zTbm0%8GQeU|6<&hN!2QEWw0g1vf0r3D%Dhr*Tu~<)6wee_iM0 zSLT+VGptii<^^A#L&x5-DIA9~_u-F3?`1{0x%XQ!d0pXT6zS&5aS&U5+}q#6$|%y! zB3xa*Z={>2t>>IbH}x1x(5C%EG$ky|PG>~Ac~;ZbQ_mC1B(yD0C~SWeG!AP}B~aN| zq?>bwr6b)uOC^L#9I$K5Dg&l*dd^bQIy?U1uBk{j7Y$2U=M)n!m=>Z)H&cbnJ76~{ z`EI&oQ|Be$PnW#7^O9?Q$q2&=;iiM!{JSIF7|RoJmr>gQoVJH6;_hJrI>Y_$0S1*F z>E;T5P1FQ4qWeOXP{wI%vm)I*`W-g>Yr63p&M*M<3x=g4-Mr4LjYYayY7nV`WC%R$ zXB<`3re?R8CkNVzbn{D9Ad&%4tZ(i92^Mw~>E?F7XzuY{BYkvQS(9d#Ez->fh0g!~ zL8P1a2nw$SeeyU&gOYiV;$V{>!oC*=oYMRqIN~@M>(IJCHX=a_-Igt-*r(zFnT&>vuK|aE&yfwqHQ~tC;Bdan zh$RsWs74U*6a#P|St(mwcr0uT3WdfRX*W(fEz)jm#;eHtfjH`J;aJ)3|4oV9@$8a& zRp5G%b-|sH;%22ci~At ze+)(s(Uhp956EYmpnLcfRBHO_T8kuRaf9{eaQ~XO4clj zFg=gbk?&N#n{;;lVAk}rJW1Ss?V5YN;XS63U;8;C&7CQ#`B1{Vm9)=2L z1Q>3S^8+fa7&%L zj|=Yoo-eg`zJNcjc5*DCg8h+yo0AKdYt$dV;-|NT`(v2R<2D<2XGp9Ao8*~vGnp3; zodG6ti%pA0DKuWk~Y9Zg+wfZ#P>0}2S-n)VD*C!ti{Mj|5P3htySjOW;63Ch~xlY zfCR9H-vyKIvn5?9ao^@a#_l5HEuI8a#FAd}0~Yt8zj1?Y-dD1D#WYZ;`U*h#h{Y^M zM7AZu;rihPB$|$t8U>e{(!^36z=%x1ZjJ`~xv!U7(w5~Y$R5X=tZN(yL!5fW*rb#x zAH3bIR=SiMt}q5gst}1qXd*z?Wt2l4hUl~aP#ek6^ee_L;Vrp z=2Fo{?)pDj0UyhJxM;WZpv-1A*1}GH05%T7fan(sXg^7nm7!!Y>A52LYbVm#y;CCR z2@?LXU5jj;w{(kTIMaPQjqZFSVHzPMKxNz<>do#_Ql;)fAvJfaJ%w`gwaA>lscT~cn7?l5SLh;Lu8 z2oZ2cJewGOjR;8dS?2Di)mZoR25+=$p{2%iSsha2EDOBPB5IL>O=VQV?eMfge>!#F z&tZUpY5UiKTJ+uTGJg%qcI2|m`8P6uVi)P9hLNo}g>az;t8(q4u_W5nWJ_YFp5WLbs5TH5jA6-36_k zsFrqOi0&Sg{KOayi;>xh-p+E&!jWX=Ad@HbfCH#*;X}Wl(vDg$zK69)hW7HxoxBMI z3$%GtmzT$OA3#~cqS!x!Zzu0?79LtGYk|3kh`g2UDiN)-8Upe$Nwq5~(j|heq)S|N zC5Yg3JSC5lTPt^6Zm^3eoKm4%QZIPTwxgutoK0lb^(rnXnMRa%ZIaeSzjFYn#-y5& zE_ymT-z;6UU{#87GplN<6l8u_PXaE)8>swb0eKa@$cn^`XvK=;Fn>h3YBG$&nq<#) z-`0$SS>%SUD)q6eROC1jh805Q-WhB5wL*o4E&*3g+h(%5E^#;gkzDKs)i1vU#231? z`?OgAW6v~mckbT)sNZ0%MW{}v0yO@F>O-6sxy7gZCd4o|WAE+m%a@ORBKV1D`Kk0< z=B|pygN)OT&+3=DHQ0b=UOP610jVZuwA17(Y7+ajacTp#UW4LT{055kFlKP5&44*x<>zP|Mr2P^ zE5ES6Gu8bl_;VGU9;-_yr)L|HJL@$Nkl6_MLASLW?T@Ib6ujSOZcAnEGYjq+EwQc| z-c5LxO1o%L`O!PEUf(0X+4U69i8QBu-QIoqOgGGmfVJ26PaoHjNCt<jlruCR7iO|=AJNwriLU6t?BdOHTf zB4oU+VNW+uOL16rWpI=$t`AOe#FqHOdK=O8*W!ZTAk$#?0d^Bj5u_c5R(jtH}@fhxY%S{m_NewC_NF9h@vH%GNFmA zzI&fi35RmVl}#Xgiq7g#s7*TId%|6Eva!rticKz7-$Nr+{6sH z%4`lcTM_i!omW^#*&Oy}NC-^!3W{rjJ$4H6e;M>XB-mka(3_m46xtyy-HRU@&#??b zj7}(i*a&8pTofmf3leTeh9pYM9h|ql);2j>#RHCAes~1=Ir*-DnaS`mF(EuWGSW_2 zsw;cPls8#zZ((Igq;|aGP^sv23%`;dE{!%~Djhi*i@16d#1Q64PwDT6`c#m?qNcj; z+X;qtp5Pb8h^{1wV3#MtE8OX;!scXMMLG7uy#x1lIN$X`QlJfSVcs@n=%0KL6wc`K zZjD|i+n@F&4+$FJkXGp{1g4C>rV>dI*iilX27?9Rtv2bc7DKYUg$|n&KPlMiP<{uAb*L@)u8IS?uFWmlO{z#s)UeSeiD-OB2#Gi31b1c8-pzy^cM)) zDRT>YG}&^NvjH%htbRjK&cY+>66;HRkRpaxjPX#>&pB2yBkvtfCYWRSsJ(V#Is3Y0 z;Gu%r?uBwq`m^C5%o+gtSX|cGvNnIWWi7N|9as%4A|{Z6Rpmkd>4Q-vT;IC-+G>!5 zU#}x2(M?3Fw_e{z#B3bfkleZBUFcuej5)e$xT7m=saa?6dVw1$jY@SSZk;Sp@8X(f@9pu*U7$wm#HSg=RIpx z8gXDX!H+bS28+W5G;Ob6e%?G3;$V2+j)^Aj`P`@~!?D++^tU`UeHUIM9^3l2m;g&7 zROU(>F@P+uZp1d&?We;+T+?1iM1Te>EpmGTYjC_y5Hr=x(s8q}mEFc3XsT*IJJL>@ zz*%{$<2$5O;ApzZy&LLTP*BwuCrMsH2YB#nTPO9l&LRvyI~&7~IyIcNEG<@73+_G( zyfnbw)2pGD2i!LINPdsta{;)SRgMGQB!;(2D2VHG3q3)io!2`-1=8D`B)mMdo$iNl zedoD{Xs;kt%mfx_;n>v#CQT1iEf59dB+ZM)FX&CgJf7K2^5o?Bke&?A6!n=r$geE4 zhu>FI(k1`G)8}cE+;3X_^?Vg+ECWS>Vh=Zx!|XNzuky9Fh3#^cEE@rz+#j0llG`jn zHQNPu8E~ncDhPkWFp@)pg8hTU5I`Hp_%l}9IqwAy#AFU=NNj>BA*lJpdis1uxWr=u zTq95}2!9-;EwIb@2Ch-QClO4$H_xiaya1Ezf^`H?I`b4NKT%dEbawCg(Mr8{mfbGl6hN@dTu^#G8uU7vSXDvc zo~%-IkS!b!k!KA|`r|f;aD2Y#6L(@06B%yH2*!+-k>$wSzNGzC!wO&Z`Xk)Xs^xP& zojWqw;6|@wnC$rSgnS42R!m$sQ+Acs8dxe6S7oK4`J-iCrOLyDy%C@Hs{vCYuvct> zeQ`G3yMfWCaDRU7jXcVBrO9p+ca=o6?yWHmq7&?wsni7;2S!I|YBa(LxSN&-Tknlf&_*;E zYnZZNV2d7A?HKgi!$!R|nVPEh3i|IE^xKgK6X3^yr~`v-e;5?(&6!z+<^8tqdWObm z%NZ>$nSz~+(bfm;jg|{1;ciSMDr8aJE`+AI&T^RG@TFzq78YScmfdwYN zyGE8GlcpqfH1}!z2+AXL2C-2vBp_1%X~3tBhYvm2ryypn43q~^FTxnZuCdEliZDe0EI~;RE%O5%2@W{D zhRVyr$tHjYGt+c(813njxU`(T|$++)YPGTjc&h7zV zonZ3!aDi^0L~Bsx_F&JXBTTqCy^~tHq`UlV%x$6w+D3W(agi=}czmE7Sx4py?OU#SMqyau4&Y$hDqr z%1ryE7-w6;H;6#5Xh^Oy*5-s(1CIP~lA*Gm;q0<-$SL83`3pWF!rqarIYHzKP6`sc zRB|2cXZUj6S)L+fU}A@+T20s?$%&>qaj%F^ZYA)eBrI8RiDIdc4@g9*dJPi76`7DB z0=_JWBa|%>pM;#3`RMQk1OPpn&yw0;3R;6;y0Csm=&`R4rcA``N7mXKe#oOTd1<-D z;{l*z_mI+nAw{}tJZMPSN87VRC*#V4N@j3Issr2439LnZfGM$*HoT+F2B?l3h7) zb3QHg^&+H~RL10GkwoMg-huvpE`i9NB1HGY=O0k05qr;|%iL|s4g`si6?h^&(pi2k zbW@RSGR`1bv{s!;VP4`ux_i5+hkdFo^Z>RrhhVu$SQX;@-Om)^0vf9oP-ZPNvVby- zqXgO@a~ztHd;EufHVfMunx8$Pq$&CvXWMCerx@4?y0eY29DXui2mQVGL!g4ktmX5E z2om$%jR1i+PIDVlD+b+XJi5;cM-NKte2ZG2U!hqfdLT= zZPkOjnO8RaNuRJy8b0^vg$CiJj%Svnn{s*tg6@v+?OTIN(lkf+seMw`RDGm$dTfPPsdnL zYSch2OkZ#sMQ(eD=7OKuSZu}pSpbqansxz7z_Mv0wnp<qt^U$@_^gzysyzwX9h4$msSPE4({kakBD!hqdU%vJbaO|j-d{nWdf}N% z5W@%^xX;dD1V(wCOVOnJ=NYYCmkFLjmDFs?!9T<()3gragAv4Y zE`w4WRIAH$kD6dhXe!0J9!l&Y9jcuf(Ha|wt*V43?n>T3Y}mrqfk}zRYy)mi4fr)1 z@HJR{B;0F~?zwB|s%rr8YCLlBs`1FT<>BV_!L|*-rZvH~^}#mP0n{h-nntRZj_|7( z`lm-~4BP!?_@n)2l+0NB`-LR+w!f2*%_rTL7<0gNW3vHfIK8W*oJd_;-^@`CU?7{; z2LmuUsR;(u2U}H3AiRkmrARhE%FA;``A)_t&qLHKDL#%K+57BUC4 zsH3|&%x3Dg8D5so~gV?mH`T!0NhOVCBH2Rj1LpewcM9B%nMS( zTxY|)*oL{zhIw(9hxu`P!|dW}-jp-Um8oHZ#4hG!kMFLrA}dAB!#$$ocyWTm#xz~; z+EOcX5>Zjee<(ilEMFw!i$i!BQ7Q9uuS2lXGn(lP@RJ2j1X9)n@ViWpo_7!bEk=eXk*0?E7%S z)+Vc#hyX@7Bf0_X_S=?Q9kS5N(_{n!WfW!4LDao+fC<8`{c$r>c#x4~Fg%5d z>>5#c#_o8^_ir~q1hlV3Hva@p*n;Oouelk}@o@`L@*z7625>Lz>FKsr)?CE(L~3M) zNll`NyAMhB6muKpqk^(igYF0ejO9Qdl;q~3yD1VxaKB%=io(Ti?TzL>GJRDyWFLER zWZu6K#hj?pN;gGC#5H-ke2U2Y>YCsLOn7djkrRQnC?;8d_g+TdxxLcrW%O#4r(ck0 z20EpP9Bx8pB+H3fJ*nzl^u;^;!U~ZcsgqwBU7{g))=k@@i6Yl zT*zn`_xWMOHhjOfba%K?2I18B*-#7sx3KWSC8)9p@Xb+JZ`m1H(IxM7TdgH(L1gYO z)-uaI%Hs5M9Vn>&sK6bAXj3ae`8hX?t&jb1Z3(27(RJ7Rw#+vT zk2OtA|CqABv2e<3qj#PGo0sttbUQ#?xh?!^n{h5PXgj+I^-rC|8m12yYX$1gjMp&| zhI-Gm_WSi4#@5xE8yHw;5vxXg`0el3hD})2ZJh|nx|ZM^ zT*om2{I%5;;i@JrOfVBfxOTs0z7@GX2v}xW;MfS^km2+xLCEB zRyH3K4Wgsh#^>t|*#H!}chIwSc)l*&!$arXOdEped_AlB@x4g+`@TMLZ)vcZZZ%LW z2~B>flU2c;1k?SQ%~~;yc{Ul)w+&-uuj04Xf_I>{!A%Mq z`*(`|jCCgtC?+QqS_7X)AyXD+8f;t+UArFz&0u3Hmn6h(EkUxYEeGvk!1+{8aBno1 z+WY6nNMcatzD{k_F33`to~_Eb7H>yEK|K@16BE-;$7RHyjoslN&)fpa_FU#u9z(Rg z`XaU#G4k+HgFDWae9d13kiPDpVCsEOf+5KV{_NJMpUn_JMG*m-Qs9slny~V3s~F9o zevpW?n4BB=To9f;Ou9?wjgGWvhW@EWHop1rS{D*#!%Sm>#6hjT zp;ze1GtO;M!3VpiQNjFqu_4Sebf>zGN7aTLKtC4?03!r+mkmA_0WlGV3p${_AO#bX zd1LD$>DN@M^DJ<8QdhHb%jspYSamh+f*3q_jYDt)0YYJWcs40n=UxjeH#r8 zN|&wi@eg#k*^+-X)AO5JMq`gu9$~K9JI3sX$8S`~@4TT)SSO2!*J{O#0Io8Cc3p`YLdtp^7Th+_c6# zV>9Wj{-}{Mlm1vO#Aebr+0LfTq=$s=0rt!ObzmlapH15@ZX`LhZOsmg98F(?vc>u! zbNa%pn9}H_Zr={fq`$g0Z6^Hx6zv(5Ca)X?`#jzCmVAyxXM8ph4QQzbQJts?& z$Wh%=`Som0iK{?N*uw!zhAlW-e zcg53YT62UR*S?WLk1rFmz02sa@fMFBzj?x=$14=SG%~nU;x&2q6oN4IP$!*VeC|YS zNQo-9gG%?$N9uX2#2qNEA$AO{9j?EI1}W>UguaJ!PA*1GHCpP;lp@?}SWxfWw==Y# z`U+RC53_vqK2G-2ee)(uWI37K9H};>1Hf&?dSa;dlPkhoZE?P~!$RJ&M zmTWZt{>;wMywo>Gp)66?>8s&8)p6dhEBrm@U!beSrRs}U7IdUXEDGt#d{!vSWwc8ABk~OI*LBLPcBEoKn2RVU595FC^ zz#SRUKbfh?qiZksg(i`yBexyV96bM`0BZ0r8*Hwr3@=}$N_jNRPKa)Xw{KO!O=a24 z8Wg$L3|VE}_!onMI=k^dvlE~byD`TwPQp{_E`1Vw-Oh-lj5^Utn45bNpcMopnm}7x zVHcCTUO9Gk*WIK1lJ~(0D{P6>i0Nq0>CX28%)&?nI zfGf!}CI$vQ|5LEY@hMkO1rN#h*-oq)!JGM=? znYz65po)^Fb>^NWmzIBtj=_W|j-{x}uLNTVNZ!uEDc+HApX0r2E+W(9Q=3by^mRAe z`-COT#u>1H?DF4%WLcwZ1^>Gw%N&xw{X0mO>!wE}%Zu-)NR|&DqV2A7bRXX3NtP)O zdy-|6j7t7RlBMkbGRZP^s`gVjEk&|$0?Z@W{bQ|3F}&OI^r>Ub?m>7wGD3fUtp(D6 zezEd)%%_MNL99!&sIxwxgzkacywD=))-D|*aR{kY?w8Dmly>-(Uv0PXvxr6bXJ@9# zMitQjLiF6$Z_^eMy#DS6i7C26NkagdTJJdtW4P2gj>AlDhuz}g)xmKXFxCcFCeTP< zt=oMj^pm*V4)6Rgrf4lvw-tR(BwBdJmH(IxD;KY%38-&0-4p?ZP9=*^{$^?y2&m<1 zB7JRqr#jKKF)wrRL=`056Kd56D0GMs0rk|>&IzcSd>s)`+@2uy^xe76PEFR``Q=@m z-<{`8>xxr#L`B}6y$HT;M|WpVooEs6$Xx{P&imAC$9L!LmwcDIQ{w(R*0$xD@6TOU zHh|kneM8*c0}NykcXw$-ImF$)Hu4POPU5AoALoK?I1|&q5{a9t)S@n+??~kN^X_%p z0Jx4YDjhF7Z3j*H#h-32FD3Rmxz158+Z-OJ$5K7T`-JbAo%%rpS%s znl%N21?u3s*Vf_&m33|l7K@o_M(yKP>gW#Qa2`tZYa$qPLcQb}(&1@Zu@-Ko;h4z* zYW>4ov~=w-IUSx+1_Ut(gPuw4L}X6}wKGTUR=VZ6yC7_1>wf226Hu49W$dMpnP#8w zZd1J+(uX}`QcL}i`??4Gj(s;uDB3VBbrk8q_Kcm;VymvwKr~8ZakZZ zBxd}>{{~6Szf8e!NKTOY>pKO7*0Q;G@$}NnplH6;(%zN0%BY&_9^^+`s%GZmu?fq+ z&_5Ai?CKu4b8Hh})f?};CLSn1wM-+Vaw`>4EAwqfD5nb7t4ZJRHQ~JpXm&?@O$JRE zW!WlATRwtMB{@zs>5m1TM;xT@p<+XEf?@%n#Ux3-nu^kR&v4FY&WVZ7KTPV9ZFEkC z!;^8Fl`DM3E3#H>OOOEReOQd7TX`$@W&wGtIYILA=;1Dx`C|?h0$*!h3^CjHgu{CYB=^C0p*B)pg| zTd35Zj%6#UB3_K0^E24d9z@MCcx%YLU&pHHjj1a21vUM)A|^cb@?Kpo@iKK=nOpkU zE1@MF7^mM$g5C7t&cry#nz==Pt!Vm>Pfzfyy|;GLuhNa?JhSk=?KhM+z$TF#Xbmb_ zRKosr*j7%{?ftYC+k27o%*tgFa8tYQ3UlciM+n>XbKh(&1B%mlm~azuSI0IZ;ZD=1 zS9@$qi3D$ZyU8PjpEh$Fwidh{D@-I1D+6?0A;K5eP!o>8+G0$Do1Ul*M=ZgKitkhP z{cb>Cfey5v?h5T?J4BW)dTyax5ee#&2;H3kVnkuFX3mV*^~JrSQ>Sm9Pj^7E6fSKg z^YGm7aRi~aD1#?eMc!7VWp|4$+5PO8QhKEGL%fI9hFOnNl?cCH(JJQQUDv+n5eq-d(1G2XQYOT`E9nK2oV4V!{(DPKxcPGLx7lf%v zE^Mc>3{15=>MS+51)Y~);mb1|ZgNo;3R!;fgTwjE5c52z-H#}L z?KmQy+1m;re9ypQjK&^gj<5r(Rs%M0~I1~!N z-8xVfnr>4WShM_d>hgfm+zp5qGvB?ye145_7&zZD4ZNig@1^dl4c@JgIcowlmt*>Crw%6OtW5v9v{B z6k|fKZe!QEn=`y6qPpFS+lZ*)%%%MCerKPqILf;UiZ32IkvkE0(EG9(S>oss43CrWhaahW$8oTf3}3V#()X<|2b?F z3S)rR*s7Mf2es}MIvEh4B_cqRt`{SOt8=GV6c!5KxvgN(AbmxAGK~^z)KR9uP0TG5 z_enAjnw{YfqhUliHVVS0vq0pR@`h|=#Ny!tBH-Xlit`3QARj44cJfS;jmEjA2oyf3 zCa48{vMgUv7|pr?;cYB#BkCsdrTS=C?8-8EOl4-FIV~aDrXzl)~LN#K3sl&^3S!d&oBw<1Xk` zng|;k@bUC$`x>eL8tn!>jASvGPm8^(1bv|8D#x3&?;E2IXT71ZC5J9RpDXzX8a0Rw zFhZSKOBK3%SW+F(0#Ae7k+tr%+C_}r?xPUR_7rD8>zGRQggX#3EnA<(b>del+(X;S zJThe{HF3Buj;-BS+i;3}>$k+MGY1(6{2+9X&~(pIyMcV-3XhrRWt5~~fm^YyHY4e7 ztE*#8`vc1|{sCU+Zs#H9YSk#yFf+&N-k#!qrw-br1-vPk@MF`FgMphR~z2RfTeRPsRC~|uHcEuPJ z7wxSC&kjc$v(35yYre~9?$5~qZ@{ndYV~q`ClArJt`7-~u)Sfc-Ulf?YdLGeZUX%xqn;c8p37ITwJiJzX73!4Z*#2EH| zo`0`J5xvAxKcym4^+VkzepOpt9sGtnI1yg&`7_fQ>w&wqBM&^?7Cqb}Y9}$c5=;w* z9Y~au3JEot!78Sp(XmFKKWZtho%`oY-PX}(+LWUq`~UFO{S8vpoL&2$YB@{Qutj&tKSj=}ssUo0Q@G@OwF*nQSb}lwv z7}v-O%-W2B7TeIz{ryFxmNGCcbZ?tQeiyCjKDl8mbZ{Sc(Q{t+a*+(L)7Erm1=6u~ zNQKnCf*?tBb|>=Go_vDSgu1roith_`uZzAj^`wuk=MngMbG6-_#nbyl%TVZ6-9y0+ zEw!7;9BN=c#oCJ~+Q?M$H6L@%6~iWvB6cw+sg1m`o}fgz%B<3|%>W|Www8+yEH)-xzqut=G{;6IDq-+4r&m4$uJx<^UDuU{M;b<9N|IH+2Be=`w z^E=n@`U&{)wBdDfBE>$Fv;a0s4go?3V2MW2+UIb~@5i(3Sb3kC!KmqAV!MlTWzbnz zk@CF~>rc=)da7a*{DyqSjCAeAxHjYNydEJsa43T-{tKn z9Z65kmTA9d(4E$i48~k8Wn5OJGr5bGSlI*&gN-Lvo`2@$7E)U2;%Ij=4`)xt*WJhh z#C4*{EXbV4`%5Ec?-vy8qC zKJNr8#q2UBF!%Zu=3=RIciEV8WE&Y}?~lrI);SBekM`%QV}t$ZqK*yrW50Ye*w3(v z$kY=6f7}h88yo9hw*?DbS>zLg$ralMUYR`_*+)NwsJrkxaROl{+(-FXAyv4SSE7F| zIKtvGHg{@gAfmT33j?$I?}Y5ycmUXTObm)I7tT4eC2ePbO^4*YMMU4zW!>??O_S9E%hhIfGcilc&ktW9}JM!_K=XEpKcx~44ZjImT0zHaDP4X<|qHa!ihQhd_ zIOgqBw3ymc$G*+(`JI zZcPz!qk3J)V;`}wCjqajC{`{o8OoQ0J2x+pY=p!-n}ni@{3tH2C(-B*qtY;OnnBNI zBCVNdsetSW%!FDb4Hr_r^dv==l5Y~I=WT-aXk)}d53oF-`R*KsTI$vo)j;;6Rx5U= z8uN#bXDJP1k+0G8Axh3e(H<&P&=-m} z7EgIt>2jNIxf|b$`SzrLxGOpq+s1GN?#BhaZqbO(J!PFn+(H}g_coiz@fI~~+=CIx zdETZVJp6CM^{{#NFUmWuwPTb&p>FmPH7+aDB!_pWKTQvD+d^Y96})h(4V` zrcyZhl&t<%&i-fypP)o8An=8h4?H|)fjZn>x0a4!TmX$qd z75n>Z_vXIsr!rhvlcRFU`N{OWt*}!X4MBIBB52Zl^$7H5Zz6RU?qvSC&024~rLjQx z=Z>IqT4;{Q6E(X30ypIsT4U!vGS|Ss(XRdeIQo4_^m`qPN~EB@1NVy{fp5P%IXKxh zME+RM@7IXD@_#D7;k5B!U!9XX+dC(z{D$|}$Y616 z&|D;O3b^V{4hsl3C>)_^vhHi;p_AMQ3@5RYeKC+S*pt$cQr8Uf({1Qr2(}=I;|F_9IPicm@c#G}r@XSki*nb=+__lcP&|`FKAMa7`SyvBc;F(g`S6 z7yJS`O}8Om;SFq#Q&Vdt`g(huE~rD?1u3foJk#S44AcTe9xe3Gd`p9oa-}rkz4CLU z%}Cyky1r_VBJ}s98WBFLafElDoVd(_LMr01{$;r3+Hd~&FcM`Zo^&Y7xMfic9}yHk z!+4LC)v+DEW}jku%E2<3Z9m1dHdCT`JlnUoD~rjNx(^irNvou&>`gmp>C-8nlS;Ol ztg@?}kV>{XPaQ@XVZbfjeAYW?5&YG(ym#CjZ*hYy1(9T&JG%V z9+IwI_*6h<>At(OLN0vHdfSlEu6AQHj)IMzGl*#Q2z@s)I^G=d>eFdQ1ogol3Q#M%fg(+s8IRln|0+D|fWWDfbi}y}P*=PuJpTD}s#3 z1D_sAlR9P4)#nfJr|h#MEmFKr>j173e-(UW1!M6Mx`_)1;53qAZ$H=TjGKbW<9&00 z=#komUEEXzl6`-{oQ7JPNQ>6m8;lwUNYpfoF(GAfUpFgrz zV%ANdinGS?O2#-ME_;Sm!FXzo_14$Tkh^<0EIvW=f9p@svs-EUW$p><&LD>l=d%Rz z(~HzQbAQV`b4h0KgoMp-@)}H>c%T85Jo7MRWUO^qXh7BpGtG8gHjqX44ghSbhfP6C z3d>Pu-aws4dpEDMCIwm)zgkTyimj()MFAItBPIsQD>7sW~k^)UVlL>gTQ*pgv06YeyuWm2g*j)*py3628Gd@C}iQuT{=O|+?=0ayb`t{@HI}k@Pq>t+}2d_0We| z#^r@FkLq%6^N+Xy#eotx#0Spj3ll7JcE6=C3v0nGWG}wa!ezerX8RP%Iaeqr1KCsU zQ!cM4nYrxxxXo!L>CQh)w{x-kY)H;{x%q z9y)=8c2R*5n-=tdac!Uxp*^f9qOF~R9D`WE`~zwgqe?}3^Qz*rR4Rm66J218-Xd_l5v0-HS(~D4OUCi&=mcAE|SK&^CJ>7$klXY(?PWLBUo>a7Ir+cJfC)38+n{ zBT-G1iCz9kMvu15<{9)Kj=GE7VPDCU_vQK7Pm6%HGP6hHZE6W#gA^h7)8 z98IEiju3#>PW*127pU{m>bxM;`RKUw*-__iyb)1~%?my85(GV=eq|H@YhIUpUJSws0WgCq<6_ zl*fwb6Ge`0NJWlr`rnBhy|eb1W%vU_U^=2P1zFV%-y?GLA@$64sLAX|Yr0JxN@Mv+ z#F3*F6Hn&t*w{FwI;ymTFb(I zSh?9`6Y$jZe9{rpR$_h>S?W~Vh z#=4}G^e=fos^II4pm!NRAls(~{ljf? zyakPx3OS(+HVKTNtMm!o&oJ#-#YM?A1>Wt z!H)B3Fj=MPfa`mb9V&0T5~`IFUcaaNue!V+maqZ+8T7|zC^iw+STwCcGPCknEJ3i{Ls{S-cSlFkfImKeHXg^R(k@YJ;~`JD)xP_5^oH!d+}}CUr;Yyq98|(xAN7?o*;eCfrA78Lr^f zDm|PAzSe0pP&_9n@L}7@S**j4LxhPb^3M!0_Iu?zGw@U6A{>lK6 z9mAThcevgVOUbBUlLPoQN~{apu#>HL?{I;_#k*Ti1617;1r4Hr+UMK~2d=o5k`3sr0(UW&%~nv`x{(lb zm0I9X%Zc@gp&y7;Ra(GJnGFrSj$%11fdZeC3}3V4{ll}hH?_>-k~FLo5QjVpNc!Z- z^n?w$M-K8(SVPZu1;J3ljFQ`3u!3$1`O?EZVF)=bUjnB5T-hy&ot9cDV$`Oho1sB`y;$uuL&IK zu%1L7s~~m>cjtfcBMJ=*2;Eq;krcWa1^x36}B4^L<$Gzvsz5A=Lji_`d-L_ z`ec9*5O$(_6FpX&zZZ66$@#&SfJ$_pdxsO2+ri!u9=%cP#3hjrm>||CMokfZnv5w? zyN)~OcmsVAh4uxFGy`j2Yg-TKt(C%7SFG!SE;WHpx150;o~5%rI$LK8S<;gWuC2~i z$R$f>J269ND|FpfXV(-4cqB&Y zjwhgevXa$de;#CacKnQJCD@cac}BuQoo?E~uZh7xHY(VBXizpR*!*ao9Bb@&dAMY_ zw8;uDG?d0dx6LxPybQ@4-Fz1K%>?{@z&CfKw}jlrMzmU`FTp~pS|bVF3k^8AXW^fA zPMZue?*Ze{_or48N9&yH#vb`VlW~4};xEcH^p#(pX!6GL3 zeE>>#l6)OW_`^5R-j?(IM`ai=N;)C1kwD~#h#2w8#W2fsP<9AY!enc(sgbjqv)5Jz zMS9@w{sywfl$D$4cNB!qJnKTy?xf$+U+{oFeiGQ5pZj0G(jy{;=;Oqw^C9}-10ji_ zNSNED{Yn392v-;mvmu6{q%wgSJaWS!=y^GOp|7ENH)gN=uelM&4OAQoFtIgf8+J~j+=VmG_ zMLzsRp_{MZ3T>kgn4G^&fZJOadz1Vp9`q*pj}U@^c4kHNHL1Qc!Z(@;X~zco7QXR+ zBNkFts-6h@tMNixl%Hn4?8AkrT3~0gb2qLq~;M9m2qO*HgZnE5Hp?4TqZVg8P-*2ZyLxPVrr5pxsQ!mvii;5>R2NIbw+@KuzMx;yTd+ ztj}Bk88P77FhR|7on;f`kW2*h-h~VMqOp0%5x$dm!xtZCUy-W*xV=o?=l`GbtK-H(X^)MrZ@w;V}`wINZrf?R_NS5>5BKk`YH#7QJ%6U#b{w zIo=No`kVJd^8=*+_92)iL|`;GqMbtXM(4B zzF6Yj9quL&Gr6KmgCBw9dQ=BLs`Ez1DE@}y5$Q;OUE2M}P&+bO!;H|x8M6mKYE}h_ zQ+dT+16)=*I}ZL6q&NhG7m>O^hABI0xpKLLYum+wjUP#!1U#bkEZ?b>~BQ@(X~ za;(*z+a112A8JgW_4;ELJ7UTtGg5XMw}^?&Ia3qk%P9MlII=4#uO!w%VZycG=AKz; zflihq5;8BsQ}`H>NVM9>xruw~xVTZsP+ZSi;Z)MQ$uMH}hmp)?Ur`~2qk;qq1N7t{ zQd}w;lo)x3mLx0dh^9~r36QrJoT7AD!+oYfIIup;R4ORU+oL?_eKHt3Z$B>{EeeMr zFwMV(o|1@0PYDtWyuCvH4$ycbTbD0SRwYaMugd?&0?<>kSvC#T?9jbqq$WfsqP!|e zCDNMgz4&^QH;Md9girn%qE0OrUisux-Xkd8$Nv5@*!1-}pPCXmXhc5&4<=+)zOG@B zCS;=SPlo>&(lP$b3s609mXOpG?I&!M89UtRRmc2%7$}3lY5i|Hj*|+TSuU;Oa<3Zq zQ$&L2QbM=1VngRn1jDlXA{J!m>fST}C-0;PJc(ozMA5Ee+9sC0>%YyPTD>Ska8}yL z$GVGFDI)pcp+OPbgb|4a6$9mI;}--n4&iH|^h3v*;5dJ9u(=FV23w{N>Fxk?^?6is zSsfnL-4WEura1h>4vhR(67I@B(N5VATidW+<{qod)UuoPr@XDT0Q!Mrm_iz$zKshC zA_;VskHinz1@H31HA?HkxyEGqP=4;suiilqWyqHPS@CdC&gO@oX$I3zM{;`+lWuHHJ1x4Qk?%oEKDi+f-}3Cy z5(WEDdn_A6)GAYTKOze)$I5y(0!L&Gm$=>fC=Gs~50U%PZ_j=7jDK4p{ppy;@E&{6 z?N-dYlOTM2of&y6)8}V#ub9~a2Ewn4VMw)#qrbib5$1(L+#dau>OA&GIu*gA5;L8~ z4EoF5+zYg}MA$CviGO6*-17?s5-AxLD*J0!Fb1oD<<~L6A5rc5>UBta6oe$J{wr2L z;(Ww#V3U4T)Iz13`-XN1!yf4^f^fcFCgeP`BZKTZK-TXq440dwoiZu7mE#c znazvlqWP0qEi2*S(fZOo8+YE@Dd+G6raa-o6A6w2XqAG^l zl1fAaxQr^|5VFYt?nHIQU~f}rsTi~S=kOPg-qsm^A?sL>$T*s?$$XwUnMPic=8Shq zWO|`H45}bv6|TCib5`LEW=9pSHSSxtfEmQeSU%+qI}s;i$?A|Asbnm#sD(Hg%iVU& z((J`S$oDxsov{}yZQdTV<5-Lg2u|5tr6O>N=C487{2OhpqnDaLOoCnt{<4__6u8u2 zRhn)~Cu4apdvaN=+2p==GM0Zl-j=Pnu(M5ollV{rhm#1E-kOol);1U;fK*r_f-T%V z3m|`*wP5i@KQnbpXnlZtmyZjHbk|3L*hCopKi|_2D(hy($x~BAMo5AZVxb zrpW>-iKKXW*XMS2^W7tp$I2UE3%AmXCt&G@q230S9&fU8$hLs?_gqwbhO&mh1D0!?gQv|%|Z`{@FV;ZD|dc8mQnx~3~B@(N!W+(TuxGv0LNU_O(rN@LdAb=y7 zObBJ+R)UhEGKpR5YGhcQA8yWQ!m&aAFZT-TXfP3$=}nNoLtS(C-T4U%RryuKLQRvU zy(>y=A~N^{Ocz{PwQhVO%-h5Z>MS7Se?qs&6cUAefXyv?B#l!&tnQQqmaphHMT?7m zfXj;JcGqDxw`JSQj_elv3gnDv|DY!N2Nef30J5hj>Z1$uexMgY2T_D&$umEWUc)Bc)3lD85^nbdYc-TZ=}ZRHZ`Vgq{cgOjaa!>=x((&YopKR zw&^Hv@&lrNWRWWCEcr~upJ~0tPVl8W^ERDsYL@A-wuUDva`(mCv`KlGw?_$KqFqbI z&VbLik*7tO`|DMrpE?p?>WCf%Wg)7kN)VL5kf#z~Rr#<62N~tb z=$)lI8ADPOu{SF+hsg6t%EPl|(eEi5dPY1Yl>Fw_p+4ZyFIQS-iZD<_$L}z4@zIX{f{G%`jNV}pb{Z$q=O0tUAs=b^Vz!`(?IT(mR5t%Ukt-?8hJBdJ* zxB?m@g3JUsJk~T0w0S#@#8T>nUtOxn~ARl zs>orFUWXL+eBH3QGWQJ0?#I6HBNV-0BSk-==rT;FG4A0mAl#xmqi$GGa*%er0Y!7A z`_i(@<%oP^(KEX+PQw>6pzJ?4QnoRp?C0&3jkWf)J26$3=yp0&6-bFH-MaRwWz79N zRg+JTk7KMzcpq=1%K5%0_vdvnI-9T&#PNj|I12%Odu0yFWYY(`xg;E^VEt_VIRK7NdIhP`r94KQ-{nvb>{O}_K5drGWd=w=ez&=zR*iZKmZAc_4I@35dED6*@oG#H@po)+6NS66STj5>+yxGLDw zeI;&UkWp)dDZ_>jQKNpv;aCMK8bWqBRx4q{Z6_S7z;sXdjrMR*9i(W!+__jSmf%UN zb7Q9mUpzRdx><1NQ8jcEN52xIT8c11g4TbO))K@47Nd&HTt)#FIk8Xp6yU8i4>>sPglSq9QLy^#L`c zD+eldxjKlPp)*r6-SP@+5lA{gXSVwEH$7 zhl!U7msTKqEKtz3A`5LTe6mOA-g=kO?v=9m+Jwww*jC3#LY{bme#IrWyrOr3v zns_5#%h`zc{1R2U%ltyy!d#Z>BfSxC`1gh_GdE&NX4#0l`I@qsE6ha3U}~xs;N7aQ z7}dpUTl9qQ-?@cx9c@}$>5`wUb_EHJBRcAvlsDbc4RTiZoT3FVUCarz7jJU!h*M>Y zEEpo}*2@HNsKTNsFW6nQg)QaXR0Edi&x9OzPsA_9UM$Xjai3nG#qi|Fz0U^&tVz!%kc%hS zx0#S8#5EKWnjUrNDT=@NmW0E^w{n!8qp_GrnrgkxvoaAYs-2+J-zb%1#V|DzVfuz= zL=D4}`b*foK^6X4lhG2W zD>9pmI)1H9$CtKK>TQ*p)qO{TDSq-fk)s1>9EOx|59)T2HUZ6I9g<BNUsFnHlEWc`h>$qec1Eb`)vwg`G z9hcOi)Vr^l4P&gs&E$IU8zhk&y&uCGIw)QiEQ2PG9w>f4-Wr~zKPPuxz}6qrk_^@9 zewyvAfIWLcnZi!3Ir7Z)sufw1Jkx0f?Yjh^85N%Hw1P!4ZX3-)9Rokh37u@i{8sLC z?MbvFKzlSU_)SLz)ndXuu2{?i@ElSW*kVUGXL=ck3_+){+|?--0@!8cmt$7P0;8K>UMlgRn4e z3*r1z>?j4dbT?~h^2>+oFyXz^$TBIaF~kOSjF$wzN*%-^f4l*oC2^Y0xCwnx4j6la zCdUe?jx#)9Kl^!=t2x{0HB^`HR&2Z+!D4pMaJD0v5t6_fc?? z6^A#9%(-PdahvAhFK0XW*MQLNeWp}1YYexPV4EF`CH3kVGs)9$i|KOciMlBZl?a$1&P(%->D%{jerFCG#1 zM5YTeP1)Q&VeM_$3v=(8?77;Vba`|q-P(n+S43rR$t>GpK%d}`Zm|Hi$Q@m`=U)2& z>qKcR9>nkCYD9Hji)B|Nj6Q#(D+NNihn2Evo!6Dp_r|3scct`wap`kAzq|k_Mv_A2 z{>JS{Mi*UGLgtJ+aB5o(xDEc6D036L(%VDv*d}C^o&{W{_R|hTtIh+%dzcDA;o^94 z$EB+&R8f(8l^8LX3<`eXUV!*Ug1l2*7R){V|02v?2S2Vm4G~(C|3j*oWObPNmz343 z!q$+dWOS?}j4n|PNNEv$*wV~qXD-<@80}u^W(>GvhnrzLC`Ih2)&37X(R5ST%m<8a zTI+~=#QyFz5LzF1&GyO48e&Y^&;2=-JGf)(gWoB3oy>~z+%5=}$S~c_J>z0?Sw!boN%d?bmYETy(4IZiweipg8 zW1B7t{>#1IttN`i88xkWtcJ0wQ)DaYe0@ivL8d1zAb-cYzXLgiZqatl zbtoYi<M2C+xXa8|Bs(?#At#y{bI9IQSh3=)>}S zTrT%Emo0!6Hw;_ir(NI{F+}lpza+-NB=pu^_ZYy17@HZmbWUE?}ZH^MY=2^42!~FaAWHIF5=OHUgriCy9Wio3W~Sq+29}_GdT2;L|NP7>ImVz&meS=z3L>1}cvg{>Letkf47RL2kqke1c^S6x^{v>Fin9O!jwY=;_W1 z2qihC5tNSQ)oA06v_XU{KwNU1i9SkoS77y8?1)0OsXMuOn7ZohZ%Kh4cod%TmZ8D)7yOcYZxjs8W@TNKei`l%lng!ms4GI^?T zlo95-ITB6XdwQ26f(kq=iHRP1pCdb{T623wm=beM;&(9}l4OfcM^r>;{f4b1scx~SmLLKKU`u#h-D;1WZu(p2bXfIdh0p9knW zBd}NOR8&N_MTt|w6?UMIkO{q$GngU{ff^{vfBG71QcJ!a$ss?N4NiF)MTsNvt5_*t z>76wt3)lJisfh{EObI*3j-=cFYr6T>rYLy`X{q+F7{t>LASyn+=U^r|j563F z14PWj{(d`_^yI+fU|jiV77G-YSVIYWe?|N6--_Q~?%%U}X#3vrPm_*XTDakAj;sbe zW)}Md1$!{!Bf$-2>xhuHJC3!=OD$P`-uCQ_mV-S?&N65&Ix;9F8Nnm8<5voTz{fpa zx=gb&lEOpHJ%8l@N}{_Zw?luOML;5fCSX-V@axd6JDV7zrKJ^R`Z1cL-pduNCiGrx z4gy+HXeGwDnvbC-sxAt->$Q~Vtk|vXcI50;)DcGw+V8;x{tJpUUK~^;OVjP>mh@?% z2|}aq!dPz0TK9+KYGKpi(Ty3-J|Y_0{F8dW^bSXV>>1zcU?Vhh6m zL*1LeM_FBe<1@KDLy(;W5VS2WwYHT=*io#F5H##1po#sp(~wLclFWpeNdk2%pyCd= z)(sSQ1-GJB+*+-OJ9Pnt5&gU>(cl8J@?*co|()%Gs*A$fBv7B+RV)JoO|xQ z=bn4Ed+xn$_}d3VO36hQNrwIgLL&CO6(59aX#NNeVCXr%$QLms~`XC&B2ANwa`4&8w4tGe2@qiOJ-+^_y zemyKI_y*9t+%~XZqx0P)j`f-Dd>6G8VP%jm2JPtJIBYZN(Z^^W^;EMYmGdpvrTGCP zO@686@>IV{@)4#qKU5p6XZg~bo)D6?^wD}Mie~YF94G=CLtf%IQGvy&a;9|ZtdO-m z`hrI4kC<~b47tgucr?29xO7cgGu_#j#cP~?`UBvwH+nKBo5Rr)uzCPzgm%&vB9@XK z{hY&LQJf@F1`JZ7-bN-JjUcrYpQS_LLJ>x7IG%H@w|c$D2>dQqS06teXwSwfd1!JH z76?+%1|T|IED@YONZjD;!_2|k^|0P3j)I3{Ucer?brTq8Y^dDnb2li+gc&Hhu>`=j zc7`~6^oO=M|2axZh#sskbDrqKf{`P_-SO*bzon!X83PY^m9Nf{gFe9#QoYdkQWmF* z;r?3PrrK3-KKg0V@jICgp|T!0=H@{h!h`N&T@YrMo_niStwR5y2kzbE3Y2wXBqI#o zYdRVS>JFB~7;L&KRV6rta{%NtdH{g?o;#_gX#b%y?{r1B1(_uw{faAO zN8>4iz?}fuF`fCgcj#zR!(w2TMcNCca3};P!2Ya_RIC2_>`8Er zHO~!!Jo;WS?glv7`Q9vN$Ry``KS%ww*!j7K8LFyh_TRc3J4aOYPyuaI6DmoM*%0S0Apo>2}5i5Ly6htyx z5A~1J3x#)AfK)7}pW=)OJcaPZ$vb?aR-QbaQxW__>8UEP-pwzj-?cpk;*td9L?D0# zc-2CmAE%CJVv#9nz7#|K^-XxFbFkEWZOU9?L;@6j@ow-Q@E|qU(iW!wD!l*=BM6KC zpgk-Ueg;2WjjdUk>@kQjHNxb zg$x4>MvsSM7HQ|j_@Kp4CH9^gBVhh=Z9eKAJNqSIBgclH0piJO243whi6GR zTL362!d*l?)ZdGOJqD>ufT9l|kw=0v)IudIN6-jC<5oOG3ChDu2jJ|R`<+49bop~h z*#G=^pc$;ir4zac^uuAlyZ$86n*Qp>d&OmJ(~o!R#|NmJ?iGQ2idhtxAtE1c9tMl+ zbpobtyBDm)84i0%2KY%lXCpLs9-QXxYGX;QybopQu1hdLKF>2;td~M|KTI5kY{DdG zun0peoJqRq1tN23-RbHz!9Pe9HMO0GqSCT^(^{74h)Xr+vzp;ZoGy{HX16Y$@wz9N z@7J6b_nMWE)F)#!e9jn)6S@!5z86mE;{j{D*4YXD7@x1%-#@Zn#@H{T%$Ieeu$grL zMz)u}s}BSJq{3D^a;YF;B;!;JcUc*{L&&!e@1ylQ7~TYbwZp{kr}ltFmf|C3QIx2^ zXIKCb+ykZqMX|aZ`#RvB7VSIOamq2!*d2Eair3;I0yBcOc=H5V(E%%J6S??F#~J19 zFegxAaz-N-3QTjccdi1my1WSmdh1vw6dWR-CFm*TuhV&TXjKT4>kKjHE8W{Y?2T*3c z<~d{3GDPd10h%_amp)PshCff%Wy9lvoE9qpb&@V(De=R0ayqceD&^Boam zL#b={9_KL99>YFfesFB~N#blM87}y_LJkj;5})y`R+-A;6A#1zCFGL6;(5qwNzTJgJ4IgXEyob)MMYNZ!~JL?Xh$JaYK~@d*V)nrJ4&CB1-_E4-IuFQM@}8nUbnf6rEy75!209=qeuYHw8bImv1PW0JD zoX0?vfv==?F*V@oJYG)MbWb!Uh~1-X44h*Ogx;3({2j2Jd4s?RbuIJ=03}by(Z{46 zMlORw?4zCo-3O@6%U5!i$S+K|MyC!ZrOx(t7d=RI7ofNn541uvo{&CMc8W8DIjuA8 z&XWS#mIow|e*j36=JOv}s-y)E2V9-XRXZGx&>K2KF6{fn8HxqUDm>G^t-Yr5FM_ia zg}$#gvR-ph<(b~baV)+M<3hiOR_1mU1gCW3>1mmu@IyZXsEq0J-=qa_F-hF)0W-+^ zXy~*Ymgfp7^)EK($7qYqmwC33QlEQDVI;w9-prRT|1DXZ|Bq$9T!##S)FOJ3dK7)6 zrY`24P$07~J67e7H9uvkeJ6hO0DFMpo-8LLLf%nw?){k4YXv0FVPfJzEjCKv2uovJ z5kelC6MDQ@yKXz5AP2h)32Akmy~vpCeot<8$8FHU>f3pxqeIt*OjZ1t(@$5;Ml&Yc zS1rMNNGY-Ls?aF3BFR?3Mnz5qa#hvqfE~`$zc*k!pOz+N-$?|xzUtJKP%ol2&ieKw zu+-;qmTz6b~Fnc#L3u%7}}UY(IXA@OQAUg4j-)zj68Gj3zRdrnwA zAs@w0xa?G&XpOoMybF+_>hEYDUTN)WW+(M<`owW?do&X%`G+Z$ZYG6EPX{|Nu|jst z?&!n&g-AG@GtB_c`)h-|Os1#W7sDS^ztqX;L&P4+`bXa{K}U<@0wacLFWT%v>|7+Kt*-?S4sY3`{x` z@fAH-vmdgRVRcr*F2sF)z36yW{#HH_fh!s(YiQUIglHDZ^C&{Wu@mY1Ne6bcP(~bu zov_K1a!M+16cJ)EDvU@gLikIT(f4)8kV`MKW=DO58_~YOS65UXC18Rf(6+L^};VrBe;5_Htj>l z1CJlTk@}{mXxYW^bjbL{U=k;Es`%++un%)Q8w;L-1LrUigO~KEXA$V-PJc!ZO1C;k zfp!>rIXn0Ugnr4&dlX|&32J!-pu}-loAX13WtGEt>g}QJ&iJKx+g5^L4#nwMwUoyv zw_z<2tM>%$v(q_L#gWMZATdC%1>!#HP1anh({Chz`-2(`8&?N;^!qwz9BnlH0PQS?R>_h6`AkWon!V-YgE`P$4vajnsJogf3Z5oMfSE{D#PW zSw$5t7$B0)s=Q$TAvT~iLza$hw2SQnf_<1Btk$-yAfSQ>27)G?e`K#NMX40srRp%jm?hekWaRzgpw+KNaGnii!Cm22tPCt4SrAEmYEX6^7z4b8K z|1V&EQ^nKM42hM-w(igu1mwrGo>BEBZE6GxoKBdRNe9w0+pwqjyFg?shzxSoA6bUH zOQTqUgYFXcb8_v!b8u~n7+(+!oygWO7nk3FyFhOf6Zp{=lOK?Wb>1Q_Oww$)JYX4G zGmTzuyL_ieiV(iEPk}+bCLN4swwAe7`n4;?IvM&ed+VW*lC%zd>-&;GP))Qmj>S?q zwlN{^ppSYVQCV0uM~H1ho9hU5;7*v#H9HX+WyG;mJ^QXW6*h=;(Y#Vh=71vj+=Zl4{fRC4 z@_VX$zQPmC@Oya{jI>@?>E}Euc9krcAIh5(4_0j&xkY9_4^2b9OLP}2*N)&Tvj4rn z%7kjttJS9Mxq8h-T2@fi;Y^}g-r-b9Gdi;LN$g_4lPWVioXHw~W?p!9a8`$Nn1-K~ z7oLQe(cv7b;pteiUB+L@7&W$^qcgk1`H6;~ofp2V?eA)Py4v6W&)OsY^J*+U^ieAz zBh1XwvIHw6PDSW#OkOVCuA`ST24Bk&o&9m>1aVXuPuN=`2LD@Na@d5d%X?4OQ0f)n*qn^0*dbYYz}F0pgW9<4#iRsz%hMpQF6 z(*1)l1HWI$Ka==pBL5u5KMXx+>}my;6J_O9&4hH7mxx60b4}_GNQ2wWcXBM8QsFHw zA0rnDYG4yQb$$QkcQINv4~q99Lp+XHF9aIQF>?v9UI_5l6ag;x5+D&$Z-D^qD0ohx z1o-?Uf$SOqGo zD(}83mO%OuD%=n}3a2=2#0=sL_r>sLHVlkV9gGD;VxU9ii{UTXFmT5fFq~TuhF!TZ zpcm&C)Qe|*F#NV43{U04fb@tfh=Fk}Upj2hg#lsMjl?iEABKl>VE`SjFQ^v}4WiAZkv35obw3&P{ z?9PP&n{vJ&2Igb=V)!T*2K3_Vf_m|OE)0{fwsSSwK-<>04R7bd06LsT40-ABdM*ry z;66NJpgr!}hL>|;Krhx7)QcB#VE`pBB!;~Fu)_z#r3GPlA{Pem!vYf!LtJGo0>a(ig2)h89BV<~Jm;@ICdy2DAs3JeNwpNAppxf5~y( ztIqRNcc0h|+f9(GKNnfk?dubLOt%A(pIfxk*`Fbb;QGmu9P|Tv6=u^g3~_Fvp=ow$ zQK)F-Am<9#CbOXgujfI)8#Lg}et=@UU6qUYm#|(9Fp$q=45Yy|4;JQvY`8AWg$tA81>*8daf7QCxc&#Y6fS@Zt)N%7H^`!!wk8`o z2+qUQE4WV`tuIyA{^g{VTpq{##WOp97ZHzC;2<>)JBb&d_e|d!j+JOu;r9NF990~m z-n3P0FjZh`;F+Boo+@za9jdSnOQ$MU<)~tk`kSrd5>o|+56|rINfk_j8swmg0jVnX z%Iw8AuVhg%pvs}@LtDl9rV5NIo>?K|sRCzep^9n{ivDM(D!#~3#RRq6R&kE00w)3B znGOaTYUo}pkSZ+qsKuxyW5hqnQOlt?{Lzf~>c5<{og@L>!<>)wh?9FzINL*LnSpxch?uG6ER~ z`{DCD0Cjk1Sx9yeZnvk3z4RK-TY|3W!l7k^RvWJZeSXHTP&xSM5z=R}aI;`4`-=d` z{+iDZv|?|zf-&?Gb-&DYIpm4S6^x8y8^}ZCpfc=0=9aVXF>qe0cDyE2mKnQD#zuh8f~Am|$^x0uc+CL;R%YfMt~B#miAPgz92OGEUiM$`*Od~j8S8KH>U zIU~3M0jEcE$2ju0B%!S@2mmV~*#nm@AQki#oX)2$17^}7;J+FC9a@hWGmsZt?Fm{4 z4bJL3EO5?011*?1{g}==;x1U$+iwx7+a%Qu!_I-d)FVjjKu{|Awi9eezqcl^&sA;f zQ?qs_D5&m9FyqOZCi*HTB%Faaf`@5)g_*HP6zLUu*)Ez;C7{7WkdiIqQH56aRF}PW z5|YZ9ZTb!K#uY2ogpg`M4Bw& zkA0xAkaM>$$gPRJk8Bs^CJ|gZwh!PZC!Kw`yf9g81Osp1;Vg(w@312V8UD;$TvdWn z`+-$}d!Id>Dx3l1CWs?!jQM~J#EeJGLT2_+()k_pu?At^(FMpkYudT8rfgIVrOPjg zZa?710@HAHgYW>p_CuZ?);(~r52rrQoj^kjKmPOSG=4-D)jC{F(_RHrW10Dsy5{)C|UKV(u7A^Y`ANn|Ve6Ht0df z!~v%dq$E>t9y+0`L}>L<+j+rHnc9)yA&ZBjb(nS=Upa~UI)my4_QE!=L_LEJ@(7_) ziVdFSf!H#zt%Pttje{YXs#iUG(ppR`Z{{>$e}&^KhM`*Z53^6=d6)8d%iV093ar!x zJ~RcM%TqvSq#rb?L1%%oQ`JU*yZo7=Q0QP zKj1_((C8@rL-r$yo38w#ECd3@>oK55g2DtzF|Ba1Pd6FT!S*1Jpl?YSx^C;ulB;-Tyey?Z)W8 z|K%*UEW;%T8*RQ8jKILOu@S&U^lj#0?$aMJPgA(=&V>uXo8J)^gIK0icHbt2>-Jo@ zVD8>STwD@PZ&%7_lQpvxuA6;uJ(wL=%9zc-b!{$O2o^pW{H^3l}Ppek{nfxQGd2o+-j=8nB$opb59l4 zm9PUZuToWei*II44IHSJ5WI#UbA9nbWjm|DakBE>i^ z+cVwm6vh6Pqn7dNU$&OBOf47}Jk#T194nD13>t{fHCciN=2fbSk8@NpR()lwI5kBs zJWCrCT?O6k?Qpjzd)@6+74PS$Vw_rWotcLJeMyf9<~g3(dG47bU@cT(Cwr$}yp^Mh zv1;{o!L1Tq`M0S8gN|o;dy(?!g|$SI--Yj+o&w zm+r`9`1&wqIDGeOTz~MzMZh~X;P3MSKCA(^;~ZTu*0(&@P)j991~#ljtTtB zy|_z~JgK%eU^kQ6wil)g%xD;^rRqZ2>Fu7>fTW2H4B`l}bO1TUmRmG>kUvj@v$P{S z_3zLaLEGFIDJo!VyeK~H{_5WAWk1OVi7wxQr`XY!o@M}J9F~{5?|Sqj-D-mCJ`z%5 zl&#IqW{&UgbW`r~G-WTfelMU0?S=v%gJP%z#M%a8fsTXJRs;(eX)(`4`{j}Y|M%&5 zpKknvp2l}3_+^|C>+{YC&Q~yzcfRhWz8LN@(dlr^hN>@z`!dmoIhm-SrgA{C@Wx*1 z-Bdd+k#_veza8J^Y)6(s*h{^dLcdYazvhpAHI;AHxpJGPBDl)s?7h_UDfBlB`WO7s zug!@bY|25pCk_1*DfC+e{geLaFUg5MEA1ajp}$|yKkScwV@~v0iE~d1{Wd|r)gS%M zInigG%D1J^KO^XG_eZ}aEBcE#hc3xGhqBUdW2yzON(-*`Z^1)ZTfnIS-NMm-%rp9( zr#k^3(twZT1R4}0Yyhpq@mj#zT6 z%S(<^)&DJWyd~tgB1MijGsv;NtK@h)FFDS0$?@?CImvOUOOD^JTr7jp%D0Fniw1+BD1fiHI9B+As*mSjoQIRrop3 z8H5el&auv*LnukOoD)(PA$S72a)kPT(iL;*dk{1D%OjB_5H4q+h9r(FQzi3{o*c;B zKwMv7)!i8VAE7xW@!HIur%%wr1*dubm@m~03b9=IwnM)<#FW3&<(_vsd}Rxc7`hGI z16NC&h%D5>{5vYcy<_Hfye%LkSX zKEasdL=7%LlLd}Wu>hhyngt}*lVSk~-mbC0?_CzyjvC?!%H?Jx3fCl_yUciE?K3v_n znMWmKy$jpVu-w^a2!4PRi$ZGqvp5Wj+boWwYrakn%))8Cw+Kx~B5Pq3-WdVowOvR_ zM0D647V2>o#5rMTjBA|WQ4RE5xzkTyX*T3a6U;h^I2UZ1x%B{-V8XZtL zT&>IA&la2`%6=|I=~ms(k@)K0PXy(#uE~C8HU96&*U!6cKOaLssc~Qy@tJQwvr;@y zORmk=l0Vs&+?S#_pXF@H;p#Ik9Cl`y7>@EFA!&NXH6eNEhY<2`^-18e#Ft{7cKj&bi6^J&YVjwdrGtT4qq16MY&h;6dc#RBWL5TDztGB zn=A8#Jr7rpWUmL5+mwxR%Vc_=^5RLn_Uj<^<@MNG1Qy{9<)vzcj<3l=Ic`V!ihL;Q zQ|H&qZN28?GGlQ)dV-{9s196#BgXc_Fs!uM4U4OjKdb9h zn;q-Ve%R(~fZySS60Z5ax88)8?Ktg=Dp69JZ?lmaUoK{Er&T?{j(5)T`+yQ5~oLCVT7~ zxyN3gMb!!71A(YdL7c66?@UM2q&^g&U!{OD&@`!k3dAo`5S`Jqs@(!~Yzim?O{@A` zAh2?3+uIpUi~6?!VIA56WuQr@uLa^~DTvN!hN-6lD_sods$LnLPJf?KL;A}u7CuF( ztGGWE=}f5xW>j#Tx>`VP@_;x$QkMmh^w^j8nx&7>bakD8U+)3Wz}T#A5Rhv z0rADSRlv{pfOo=ppMb3MfcRjXr5+UUb3Nc07-Q;>0&=zo#0TRHT!_Rjo#6q`z}TX; z3CL;>h!4i;>M;R7#RHy!u~|JKAS*o}J{YUi(*piqO}$nmj^rpV^qB?AiF&vJ{YH~R|Wi^9`Fo|&FXal`N#v} zi}9}l{&x>}CyZ|k$on1;ABL%`qkfM;Ngs*eQZ zbq|OS#_8%40so5!JOg91+ASb2dq8|J&QPBV_%0842F4ckrGUKP0r9~&U413s&w9W! zFgB}i1Z0N?#0TTi>Nni_rk?VEXJBkqD+S~U4~P%O8R}F4-|hj=z}TWz3&=JPh%d%7 z1^i(Tcqfc!3&=lA4iAVA#(8SJfZyr?&%oHGt`v~X9uOal)#_>izsUohfw5g( zDZ5Hq=J>VG_JJhWLvfcyYgRxrOA>fyJ zz%wwmt1SX@i3h|7<2-e@fM4VR&%oHK?h%j+JRrUp?-THK9`H^W9}ti=9uOalKU04c z@UuPO85m>gVF5YQ1LA{m9&Y}l>{;yr&%oHKwhPFq9uOal?dl}~|Lnw^`g%)|dPQJ9 z%?%S*ZwSbT9uOQm`%ID8!M{H-!w!C^NWCTSA9&z1I5KzvZn#hpYX&0js> z85oaK9}37D9+1vH!94YeK>Z~v)Oiyp9N{zr5!_bwvInHNQT3}CIda0fi4&$==v155 z>=cN5POjmpX*(^%lnG8keJUuP&jm1FeJ%hyaskBj(ztrs1F%!|)onlxKT}@|g2!{b zUxIrz*op0__d9X3opb@k=c<)l7*T)9{<>M6BCj8EU++}C-NN(K>GJl0jJFdfPI02@ zR4m2xRbQM?1N4ss*5W(QmD{O$p*$gGW0ji_yR$ChJm!QYdL8PseKHPz# zl6QBc-mR^%FPExy^71zK<=UEGp;8vRP~L3n^k%8LSl--Z-|P%aiJz&<Uw#6DIQ}R%BQ&drmxy@!rGA| z@#}WH>Z_hU0nrt#N+Pl{!8z~zOr3w?TC?%yTxrD1Z0(^xPb;xhZGy>oprW0cUIN{F`GlPSKGjp;Y$v9) z$NaXpK^&jIpuqFq8g5~m&cQ7Cy%?php@7~7MCexl{Xz=*0JT|7J{R#;2WRIt`;J4YsR+rr!r{9=*mrBmH|8bmV0n4p@$SSq6pdaj54UdWvgN8(&IU0k-UWG>u|4t zS_X}vAyxmiDvp8Y4m9LGMb$t~h%-Q?!V275q)J)hw1P{tsbMUzqTmAe6sf&g;#*uj zS6HKxY9AK(cfkejE>iom#ODQE{wyUPE4ak7Me2DevaR4Emj%^JQsj>X7ugcTNxAI(0|ghkJg8oiBKH+s zyf{VOTgoOwexvJnI8-loimPIZvxX6b^YK52_mlRy&`XJ0E)^b6?MKJHrkRs~} zE^<*&t&t*U6L8qPKFls8b<~`&KFRMi&ZUxY3aV$N(Dp7A0`;DkLfg7f2%3496neM|g)R(Y)q{k%zYB#x zy*H%L)-DtR_1=*}cXpu==IMJ<=#DNF0+)Xzg*J7e5V-skDRg5O3SpeSkV02?q0kdW z>OWHG$}SYT7^nD4T;|d)6#8?KS|x=p?m{7G>@%d$x-JyLIGrtp&h0`WjMI5i==3fW z0`)GGLZ^125U6*V6#DP7+!`WNSVGROmqK56p%D6XjTHL43x#fnYLP;_yHE(@bfXmd zqzi>GPMf6AM_nj{KHVXO-s?i4H;dGrQs|v76xtY6Tcyw&T`2Twk-A?Bz1oFBuoxeb zLN9iq5P0tqDfB`Y3W4{YkV4ONp%ARor=`%7T_^_Q<(qt~R+eO)L73Hz25y1NU7zOvv( zX}1)*K6fFp^bqt}i3a5}2>%}iyHTwzQ*WP8rrIYfY|81UHXz7&AOeb$4{;8-7*S;% z1OF$tUu1;GZd5zV5FX50Zi%`Uco53TQf?~(fBmo*L_K-}g8xWX)SG}12)A`^k+QGn zFRPX{N;6~XE-CVA=ORG=2rB#$D|`fvWeTK{^hYJBkH#oR9O4OC7I~)IC=i#}At)a2 zHVXLm&k2f0yNv=G=|w^DP`6Q_6|V@22fK{|t$0IFZ0$A**tc&9io3gw0x_KT1jQZQ zM)6#c`n#aGwc9Ab7ylF#H+37uOGRq8pt!!eBFH%wdzVi z@t@8p3}a;kGnyLJEaNlbZ&z3;@Ay>K9QZP)&$k1c8{?dIMm?1c%5;T3O`#8{-`vu3&?&Cl^{vbG>%Y(y5a)C=8 zm$BW^eH`GAX9UL+-N*4>k$P5eZ0|mf>w;>R;CMI>jthfj>c;GR`a3v`LeoEV9|y+e z1;Oz^9vnX70t@(c>C3&{#{u>Jw&1uc4~~tX$K~1S0X}_0`trLxIDGnomE@159XEF$ zN1OUgP+Zr26bWQotaSz)jfs0zJJo)Aet}nz`E+Kk`c@ipdG{NVRKMX~E_G@5QPika zg5u)tqc{OMBy7cn-A7TaP8SsCbst5CI#W=r?LLb6xZ#x@Ij8$5mZ>#@;;inYn2)n> z*^1Ms|H2S41jV>5TvwB#N>`F&62scY$hpW<86nwpl8^cTW5%IO5 z;_0E9;t_hw>Po$3wN!oOg;^CUZp42Yg!|5Auj_wuf}CPO{_O>+4SgD_;ofg-jXl*u zeCdTiJtOd+206`we327mwFUV+C&=j*L!oNEC-&H=E-0(_JMV66rCFbBXo3-FH|0OtX~ z31L^a6WV~APE{w2mKOBG)9CgD{QX2j-8s3|2J(LG;fljqS-lDLoN726A(~eF%hwuw2 zrIrVsVLxz!zi@uK7n=Bvej|TNacsl@CwMq;o{SqDoe@&xry1mP#(QaZQ$#mm*YF?< zHGzU^Xju*JEnDw|(U$g54GydVcMcj3Y_{Q7no@5L4}wO0a6JRg)c{%^6@)u->e*P1 zDjKN%bV8$CXao`qHG76;@lu(jvoB7={l3r{xo$NYk0I&G#Uv^E(L1F6gNuTIW?9l1 zqRDzYZaa45(BPyw^!5pyYtx7AlkxBt{uG6AH~@EA<5)qd_GnZ~D);3D&X_9aBVEUo zJVUDG3r7F*rHkEzCC&1 zQ8_1*TD6#rJY0Q?N`w{3JHI9^)OwI?gdVlC*f8N8iaoshWGF8208tJ-nDG1Wl+%`b z*N%{;K_OQmop^dOIN@9(Mq?H_q3jl*yR0$A*xi$(nnqyA}sSp8|gGkopTq3H}29 zx19)P&0@g_qFueXCWGOHiK$Rg>?%2BN^b4K2|A@97;qc|9;qemoPqy!N^sTJDNe~D zc!oK)A_BZLci*%xm~cS><@5Ko-*$ReSxp0U!sFNP9Rsah=rmq%Zk zM|%F@3LF`wTZaaPZ856nhq`TJ) z@U|hYW_i4kV-A+Q3t|8g`K`rk)B4A0Yr8Z~{Z{A%zWM9oAdgeQku*197(7B%{O~&M-4N}c#(AesllW~L3IB+5l)R|MW9`YND~U+%|?| zZ$&JYs+-&yM}`Dzt%k7yVYW$aD`9ict}P%(x`@~I$n}Fi#l*q<8|du04@Ao^RNvr` z!J^4}?d=3d1K$d?@?S=^9+9b9<WT*0ydl#qKSnttX-b@~uwhQ;xN?Oqg)Tm+2K za``1G#IUSOJl-i?4Jq*vFr@8}+Z%RFl@96VAd{+vV0ds+A z0ZxOl7vVa}KnmQE*AqfQZJrz&R)X{B)SrrjJAv5aq&&VmFSW1)5FrG9u6HI~s z!HOOR107YL+f;*lJ#mlY22}Pcz)@AGzw_M=5G)Crz--wBxMMftaq+%oWpJou>_X~+ z7CA;&Q=(Yd33vQCAzqJ08Kxc|L=mR(_5QgN{IN3tln93QGaLe5$H`apZ%QUR#jIr! zO5u=jHIy{RZe*PH$P&}_Q0g)KE}j%!#y_~|E;zbuMCbt40xUxW`$}g|`2-q%vPHF0 z3CLMe#(H{TOoO4H_c)O9_wOwuw)NOM3ns4CDd)ekoWg??`8xl*i5PM&@tb4#H4x$t~6dO*h*Wq51BEU1X9{CJwvxRy-UF-L3PiGLI~bBT2h1l zPY1dZF?Y`%yJI3QGh(4qOk^pF6#$ zIl*NkoZfraXwAE3FiqAWLZIMTJ;peDs7sG46OMj&aFWd`nU1GHb=Glum{mJJ83Q1V z-=%r1N=7*Qko_7#j`QHNzh~%up-7uO8bvDvL(`p}I9U&k_dHSmBd`vPO{HY=0U<7j z|=Hvr(DztcO=#L*K+74PGVONtTM;{J@oZS zN!pcD!DDzP{(-)*QQs)gN9_-sL#(1dPon_Kh?@U^MG!Xdn7MOs1JMmQ&-S|z?>d<9 zF^o?~Va~(EO`;sQ?CgWYid0`$)4uGfwjH$o6h1%WwZM7|6vW$^7oEJlG<5jMkQThW zr&pUZ^iVvXQ46g(cm=*~K9&Y41pVWyHaj>HieF{QUD*a*OQ%-r+TKq&1M4xcn+A)_ z=}iL(erTD~Z@p;Fy?~@==xP}tFtdH{^m|)g?=7#dF}f706~6~iGBwE~Fwx5=K{Sfs zcZR}yuXXmQkuNpK_}mEn-FquqTgzVb7>kL0e$!U;aH#rlND{wMeq9rkrnHIkxIbR7 zL8IUX;uBi52F}8x#hi~bz|nVhU^oT~lVi|J-VrAoVYb_(Im4kuv2i|*BE6GQ zgu~V|w3(%GqULb!-0q2BD}F-Z4Oa=4-azB@5a`n3+|Z5RL^cp#ZpADTS~eS6YWV?K z3}HZR&|f9D>xrrQlr=l!Fe8f)exM}h#KpFVCFnZ8iT#R8odg0FgnZsAmM+ip4e>Wd zA~bWAh_=JjTevB>XXqMWQtHwrWw0WGq4q;U#mQi>xDl5lZ>T+m0}JvWrd}yc0&bAH zb_p&Zhot6!Lqf}2H1;*1lBS7(XHDuG3K@PYbp}gQpb+>88OIMASVhwX_X^0ao}sJ6 zAk+O@PZ>r4^;M&bMM|SuTChdSwH>}m8b zJQTzj6|wN4XQb#=@>ht!Z|ZA!)H0#|v*_&%9d@ZuM(eH&9Yzwu@fIDndND~z9mZ}m z3R%vsPd8&*217>o9f2oHLE8;+S5#kGXGI%y=TzJ_HDB*>L@3J%E?hFKJ7&7MInVDq zG&IMH-_+Ys7Z@|LO!28pL+kNnF#ew`2@Txr1h2vsV!>j$j*vFa-nC9J;p`0?;MiJc z?@8$WPjKfoxJ$Gjh0-kWI@Ib&{DJzwjVfmZT??t_VKlWc<9deHVgl|v0beSP)sl&q zoX8MM*nol{2)e46+aQIqrtVnJZ4 zs#faFA5bxrsw?axMjG%8x?$sj^~C#Wk8#u#n1&Gl+b7c-g`Igfupz867$g|-CRQLI zarH&xy|5-gGY;`w9ganaW+Lq*sm4?D8>Z&0%G3iV^HOOx?R|uGfo)&j6%P9nL`FN0!ElOBa0dU^8M@BteTp;m5Il2Z zdC%2Q#eQFHMrmBKzCZMcz8idBm{+|@SAjo!tJRR0144g*Eu=ojAsanIr(@jI0h><2 zx+&N}J>E{P9pv=Jgqe=3oI~m?Na_KhFW0lk*SNwP6I}hP5hDRJ11e1|)z~J`sP>T8lg2B1VkF1(movcen!t)}{k-9`AkZcXt<6E3x z7S|;f2NpI(>*C8B+oJUW5BSVEQ)X074J4BBriMrYZ{{pKE>fQi9~ntjB$M%KJdZBI zW5E$l1{OuyBhh5IzOK1>VO{-_aBDo$S{IKHWh7Z0NluM41`-jpBpHuMU8uex0_a$M zAi6Nz6m4y;tB-`2#o~c@q^=c%*@-qjfD2^e?=y zc}b$_*O9=&#&BHIXklApVbo~&C4Dz$+&;|&qUH8(Ac zw1+3w$KsLt$g*U(ITmYW*`{byl8v4=XWk6{PR8rnBXJB$I2>(miY@^inKYo@ zu6j@|DUhj=2*ehK7n03U4@kKPJwQ#UF-`>NgooGSk(RoqXaimudd1tKE(0g*Lzkly zO^c#+&4K1vbkPX;(-!5UNW+LGG*1{QR=*@6d}z4XQfMF zlFc+Z3f|%HYS6lta9u|o7zl6myg9P+=*rpi!&BzWs|?H6YH#-%!FBO)LsL5@FtK#h zB|%J~Kx-_~lx%8`V5*5w&EBe+8*4Vi7; zygBnalN9{sK3p7u*w92y1j3LkRf%a3P0dZe=Il2^w74$X&>RUz;&F^+vOOG4MCwf| zedZtLN<0}xQOp|5#KhvdR?a#0O_&7~jW^XVu8*~d%nFBFVhs_nEvK0t^)^>VVxSi_ zHFyafPb_X~Oa=~4wzMAH+SEF-DT?}q z6U|NaBHTo*2sNh~VGF=S+rs+hxT#+aGN zsEj7sApDa}Es;bkMu<~=d?6!&x+k;%PFkO#YTlNMN}b}&B%0$C!>n$W6^rBCj>?`vZzj` z3%<9;I?!0q!zwu8)Y((!RZa_plb~fx^dyTxFT|SLl92#su81I4i_SBH0lLhdGrQ8Z z-jy{?U~;$BqTNiZ!F`aZly0VZbC=K3`q8StaB?vfXrit$VgyGx98N&bh!BR{_DC=a zu1r2_O}g^XZBAn>zC<%orF0a{u9`ZtGSJ=xIU-^s3}$WDGo~rVnvR)Q1r0&2jI=C- zjw3-*0@o6PwUbFiDw%nN)-F%5YH%@REs&CBjp?A}J~W3FnlgVy9Lf{aV#f~x0@UJ6 zmZr~+MI*3Upr=`>a9yCK)hY=HgSv)Mtf@gOGAch>6XEb8X!ClsJrRkw!*ZCre9AP~ zO39{JR0cWPKzuS_C{5ia)`afXDCnc(@SoL?=mu4hnWdP5W~QRqXj;TdYal|un(74; zNd$q?A{GSA1=Ji))-7VSGBAeqG3wTuN)!E!@km5yBTB0w)<$#4LnqDA=x0*{XgzoN z(RFrmks4I9)YO4Qyxs`1gT=f#*m6grte%8~PyuLDYcfDqr|ObQ$@`+mOe;kI&s{!~ zBRee~YvC7{(~r?A%J4d>Z)~nx)L9d2eF#l2^wAU+F06M&NbB;jD53;}eJq}|D!K*C zra94!rfC)X!oinM3agow6|)!2B_q$RoL4nxYSokgEFv)(*({J0oB`bsu1m&RAj}{q z8h{#YibopjF|Dkynue)k`lDIOeKUndS*ojK%GOICW(H=Y}e~}?I!_x#rn@Kag4u{)hyfH-}+gebOt^p)s;iDHZHq+f zBUWx{1AQ*siWKpx=6E_zF~W||T|T>w-%|yTl%cK`O>GLewpsmRxH=wgZ`R5h)PvEy z2)089NJ3&#ahfIttX(clg~BkRAV)+xG{HpGwk^s)jinkp6FoPzd+LMH5fBw+T&%DN z1`Gg-!?Gq3^BiS#hedfr)xh7Qb61bF<@F+WzqYFxjilfrg#IYTX z3IV|bz(`hs-$ovQ2L#ks6DBFr+01C9gA_EB)APxtFNe#cG{HC#@WkBZM~DwK7j8j< zvx1t@vWOKNM)Hes1`|*Jgpap8+|~-uCL;Zkr|hwAmK_ng0G_!kE+-TZ$0Q;%Ic3DM zlQd5}gW{F7V9Euvr$T#s-n$Ma@HJ{16e2UyA;k5-VNAd(-~k|+JFjwX#k@*A2O$AK zS3HG(I&Ero<$QjhS6MNYwJeOqnn5AWwN=pchHEekaYJ&W?nqff(ag?j1$N}@1tX@E zPZ&`?s%&&w`H0b@MwgE&FCR5xWJ|Iw8aZrHBnoS*9zW~i^@|T%HgWvO@nc7fTx9>7 zGkU~G{=X4pP`_j(h?^7_Y$Q07ZqCTYj(A;bJ3i-DO~GFgyo>QF)|MFA7VUudG!pJ_ zGXxj< zinnv|HYK5Aaag~gpr%{+sJaA05&&x(KNg}ZK|h!br{%RSJ!SbcqqWK7`VHpCvifi} zT!Jbz2x1T_UAM#oEk1iE9Ec&b!NS(iEilw`J4ofM&*<$yQ>=}FlW;u-mTpZU2*!#* zK4x5fGu$?mZKND0MUK?5m@$xw^!?4#DfF2eQbtOmiS81NMwehmPD%MzuxJ)hZ6?Bz zC`XdGVG51bAL9(pD)_D%?-6ZH2);nq#5;`OVh}>W(IPD^a??T^k}}wOtP{Cm#iXh{ z`iKeyqGnGG&#aogpr!)h9!)YD;7u_Ed6t_8tv*AbDOf%cx;Y@q8%#or-#Z-8pv{G& z8kGtZz`W)Nhi&1G++7+cwr+Twh`a!N#Yng#ATyaJgWEA`Tw}f1XZ1pC7X&f~?mG(^ z58k{<@hvA$K;|o27j>l=X9=fTtIUs_0V`e5z@m4MM?NDZy#g?K@@P2h6y8(e$u_}% zip-5AD&jEW814wi>!OPyhHv!jV>_XxU>z)mj{<2|2lhf>E@PrVEhLr%S`y%XF$pbQ zqOlHCyihYGeU187%Mf%&G}z3sB6Gutbi%VmY|&0!^b9huHTQsxrE~(4y5!6o=*!SK|=0jJ32x5E*NL8v^G% zDt-{z22rFyBN~b@%p$}WnxLI&W*9*{4>6P}CWaz1OGrI;`GRPZbdB~t>|qM;g|RkZ z)k=)^ax)}%Ckh_z#skCCDyrvCshBx4JfpJqm^t&NR>P*%^M`R>L&bL6T=TotXDVuu zFnSyWb5rAT^g&e4Y?wOGNfbR)Oo+Z(Mr#i=wY0*M08PXTFy!~CVRTb0T&|I{$0a;6 zE7B64rJXe0R~eT2Sh&3|-lWy2txmLKBiMqvRcI-C2yN3MMBFIEUzQ8+!I~D&*4orz z_JaNLbtUVj>(us z^@#OHppXI67y(0>c`EHR4Fu(&lC_;4rX(Q>6Jm7>V{TkCKkttj z1A{p~UzCr@(ho*Tp+ggt5X+O`FGNMOq|*av@cK&{%W>c^y>^in+|A#z2_~YAg%(4g z@EAC_9$nm?Te7>OmvB`LRvF?=(wB@+h1JB^zcxsrdVDC%AxF#*l8X|mQ7jFw znUGh_yPTx$Dnm$2acH+h9gGr)+c>nop5?P+5acn)rjDittS{xKx{JOX;uKsKiM!UK zPp`D46Hdl-$UO`#A>SnSmog8kD`!?tnO{IFQnO@2SVBi`Bl4T#u>eF7e6a-AWy5go zs8ML{i3X=(g(YMU8}k)(&^*}NAby0w2-ryR(Sb;741rx)RE#Ybk&3Ys{bmeVj^IM8 zeoU`WpB3W94aSIY%r*CBK+l|*!`g$ig*t`Y)g#tGAJh6}`Vp7fEVbE%42=YXr@gKj zyh-P?O3Z<<{s=&c3v#Y0b4thBl4+JI%%YZty+bZUeeuXrd`o4+Ge>XHwR@ z8$~zF=EFAQWU)6qHV)>c>1X62MI>#7c%UvGM~KDPJ$e*%Cuoy~r|4)AVuWIqL!yoj z(=?+<$h*Qut0XL@OGboOqP)gnu-4*{ZYF_Vg`p4Mv=Hkh+8qFgBVaNk%;gaqERn`Z zT)?(SqEor0i&++B&$KhtQnw7)=F1XEHKclkPBh~27*fbUuoYquz%8t;jqU6*I-g}D z&Z`+L9~&{B3KS+xk6hG6qcJobu?ny%7Mw*uHYO1Gg&945tn2jn835z8e-|!KDH6ke zN!JI?-|9(pr!fZ;zXnO&c!M4ukMSA6njHN*gu=p*m{{as)vO#myKrh6islvP%^H*Geylyw4lS%2oZa9gw$Hkbrp5GnxK+hAWa{Kq(s zo=)!agPAW8EZR`DM%!ac5XyohMcDjoL8}!)+T_PTPB%dG29UY}(*tUtxy|yZtNvwz zVM#E_bQ3hjR8oim=K4UCVF><%ObINriAiQ?Wt;3Hc3d4d23+BWL@4OVBJde0>GJp7 zMKj6OQHZ?5{ui$cwzln=PgCqDq2^sBUUO-T+L%sSzlUM$xMbTv!W^Mdl$B zDuPIiFn?7PTm+@uqSqMoxD>)HW5-xC7L3NwH|7EOW=RJP1L)~``1MJkWnRs)0>(Sl z=drXZG7b2AVpazbw6byS^?X92e6-hCrHc!z0F$hxPR}jaHrmjGf~a4@cnw^Hu#MZ= zV8hIE;{iYj!zf5n#puDo!je$e5Fw&XQ9G6~%uXzvA#4Rksi`uV13D;|SLTkJ_0@;Ak=p$<9SB7U)&7K;l*BOeCrV<|1>Ppg~T3V3Mh>&Rj zf0AJY_qgC=8|)({tP&iJ^s)x5POzV@x8bK`j6*kpu9&SS@5oKCPA(_}yASN9b+AZuNQuC1pBZCeY zj%i%ymDT#GI(s18x+JnZKs{b=5Emjl#+6$cD>GC$A!h_yL}{b2tnSKDSdP~$MLVrA zfQ9#_00G)1aE}FlgffG`J9+cvn!XsqY*Jrw#B32$WjlZ&5Oud>yi#J z5DXS*F(ON`BjcBx5T+dvPF6$b>;@#TtcEg3A{0cR4mJQpbv2W`ObwnG8dCtK&8#>w zT(Mw2*E)0yypd3weB$bU2y^C%!a#vVf|VPHLk6W81I({*O++B&k-HB&XD6ywB}|&n%c=V>u~nmSk^aR7x+hR!B%dIAQ*@sd_y!TyaD-7bZy~ zg!fGwW-$ZBgfr32a5R=OIsCM^Yqw}MHr9qs^#EYP`%gQwFyuy={HK$Fo=~?4Ssyuw zN9z>XpER{&%?*rMVN4SyC0m=jbbZVqawVcJDhrF8n~R#7NkPQGnKuT<7W$2gGKQUe z#=@BEquQdJqnMFt=Bh`(&@ElkVa-gg+O}i3=Es*GL8qqhn#O|n8Nk;plrek;4FWl^ z8?~O+*0W^{xFo_AOcRHR8Ceu|)idHg-WZafLNMb2N5e$rG@YQTv{4`=&Bp?oa%?C= zBux#=s2DY(7Cjh?nqv!LY4AsrO?vfb6szLKh>FuB@{Bq}z zy6W8spHJ20qq79b^EYDjC{BY^=(5uY(NaJfn054JR?12lSxP4-x3#3WoN~;KOu4fg z@3j{32yuYvEUNJQn22wBmSorRfc-YwEr);%WySnhYYW6-rG&pzxe{n2df~G?OooN< zX_TzF#xTvaCd+odG)*(pGq?w--!U=&tl@;|!q}=r@DoX7^}|!NQ7Bo(sc2}g!y;CL z>X3d+y^qD3`^o>C}Zajuy83bmW5hdmTQ~$Y!pX*FO8rQX0eQDcD1!=RZ z#MsdJyok>SrdAzUHNQH1RAr4B8feKla^#z^i-%zb{PHHT(1N2=WoYfQ7^0)NFri() zvf2&KF=BxsmY`;1L!I@9vj#Mgu$#2i`Dsf{sxe$pu+}h^=97@)v|qLV4kv}1XzU7w z=HakMdfDAWCL|14YhoMQ(JQ{&!_O(Ogmxuo zoL`?@F*nhTTWXAc`0{XiA|qFM>UsOfato??H5h=X6Bjd}GSH zZ!AaB?#XRd>Yzmod*B4l)62Y;k0e;IF<2ilQ`Iwhs*zML(SR;+!6dWTX^ckGSC3Xi zn<%=l^%P5x2=f_;tP31WS1}8G7}VKV8$ld|iKNgBGb51B^CF-p7Cj?68W>(ECR}#< z1{$$)$xUB{PV@1zDr)A=t8%B0H=^M6Ongj4Gc&v^CA#*4qV?9av)k^V_$An@`-fjN z1IC#C%$&qzAXu1%r&%B^#|F_n(?~ZkuiYs&jE2R!wI}D%PpoNrjKvg2%6|aKKuG+Q zqSi<@88-DxWj%jMhnR<0HbS`Q*AZ+V)L~V6v5e}Q^?m^9uzpjE>=lM*FPi|Hn_9$w zY?}y%(SepJ+|#06YMoK1Z7Ld&vWtO{J6UCwY-I|_dL0)wtE`6DaM<-)S-7r|c7~<{ zkQAaQQ$)u)M2lU|oM^-{goc*O%L1*{kZ_vg=hIP7lzWxF=7Nlwm5NwcmrM_&M=1D< zKEtu&OlBEOR@$W26!6nL)|VekUp|bzE=YccRKws%!hyR!WHK2IGlyqD>PL|wZ;h9% zcDoF?CQN?zvSD0igy?l2Z$gOIjnSb}E&r^omFC)*Dt%_S1Oi;e&Pf5$#w8}`KnY4f zt7&d84A*!Q$w--kchkbaG{}%^#WKnuEll?eB z^U%bsnt*8Ry4hv+APQNeFi$p)1uZYSSVJuVOkAk}`e@MGulM>;&LiIVL>312gCS zM#eSb%ExeP1UJl1gF|h%)8ro>7l97iy7mO!P716Tc&%C7f-bZwV|5YB`1H#q*GhUV zX+xAZZfXr5XUG}$N9$6Ze2AEjUM|wP{IJc4)Y8ajgeZ8)T-sS;P1u@+{YR<2mkj$R z0<9pqC#%2&h$|WzbbuHplc~(dpoM{mo!Hz?hf0ixV1g}XO@rrN=-q?)2S;;xnhtf7 zk-1*mGk5`R^jSF{8n-vS5RA9T0bt6_$Fl zoxrk5-q_V7sFX!AnNvbeXR3Mh8#YsD>mSsbQyor3u@47JMy9210BIVce6$+H;WxuS zdkzi(ft=BUj~4r@b9Z{eXfS0!2>&vgYs@}k(dt|s=5aSE6a1K_=z*gpT19Y5Z9 zzMuzpZrbX6#GY-dJ6!4dekMFn?!xT6BM7rs*d@0+=rPO-G4-r5Zk#5rGwDTicb@Cy zI8lklcB_`-l4MICB#XALsFNfTi7!T=gE@|4ULCx(s%mc-Z%(xhzX^f!&im1079#C* zNf=vPAV-=Do@^N`1mhTfxMn|C@Umx$QF(2!G5rs)}a> zd5#Vjd$k@kGA%F7N9SDZNS|+cb{lfzw#k`Z$kku|u#?<}c@6tPpxE6I`Pc~H(;)HKq}1fI6L?236uRtH46>&Zu_q>Y(v@JKWXe4H-uCmb$u4ikuX z@yr-qCa>}`;*)!vY%NHRPhib45NBAzG8oJ?1O(FLj49x2x=A`{rfAOFC_UvHu)mIB z0xtcPj|Y>vZUv4mSP-3$#ABuik-flB>0$n9CO;0QJ@#_A$$C16#x~qXtGLWQUVCRL z9m&y&!_~5TbW)Ad$7~#_BgS+ugt=ODjS+!O|gjq^h&hK*)p=2biebPMFQEB~GZ1~AH0oCKq#4{Ys(i9~mz z3X7*HC?U3Z93Y740D$~OWQr25tZ-xE5J_ym4U0=KE|x@yr8zHpEjC}2=DwbHgY*&%V~kDjS+NRA5#$LQr-u2G5|Y$Y*@mND-Q!oVdl?E-xG4b} zlIM~z04Fn193$BsDnXJ$hs>Qs9-FxpWcOn~Gb^mJOA*6{PM966r$to)*#kyPXdacE z|G6}b()d+-ZBTyT+61#Ou@<0DmxUGN+23Twz?g79Q4CT7M8Z`u~9sy z$Gr99CU>|@N6j7`!^e3EQ(g|$?Jind4;9fgoe(KfWpn_WM-ix(!-Df8rrvT7AkpA3 z3h90}@O&O*;PLnkno2x|*J~rE>^zfgr}ytvB<$`TQ7SV>8CD9rVK}UX!zpwZR&=bx zl6H*!GS+^vhUv@+=`3e0aLaV*9w5zQJCg2d%UmA*KF3|q@-fd5xz$HqQ()0H=TVgi zCNt_`nX7OOr-Qj}AVJSBPSZk8bx)J6dW7<^wP<2c>j>@#O0!5S=(obQs1#_V*|!iOd^$~1I7Kq0RuZMN#T z8XC*tqH1jBwyuDE_qY!}(=Vm4(a``Sz|B}JX-0TcXU}>Tt~jJvRLL1i(7YgXBR`49 zO`s)=)2!=oyl1S?BcZf#v58M9`R=jJxo*ZOVwVTZ5Ovi=;JE9P<+Sal({rkLu9Ywr zx+#GQ?#F@=j8luuoRpSVq0eQ6`_KLVU1`BYYkIgT zc3MbfO#y<;tkZ{Rf^(Q|tw+QY1J-+_k`%iUvu4HNOxv7<#8Al?#K`Ix4o@s@L68P! zFd|b}T9YdojIboCoYOHwx{^J_WStGSZx&WSkM5jYq7UoBnZw9nv0*TOt2NW$cP*M~ z_n-kkS>O(Kiq!6;ZZzxSngY}GsmgLRX`4O(BZ3oQu)EIqRaV@?e{oZ}3Y10Tv5At2 zly22t>u274?yZBv6ox@7#BYz(i$jMQXEyfc-X7!Ec|FlGH@)RAF@B6aR!y(7R6`O) zIK8o!33XsKfzeg6y6usVMrk%SVc{A9Gq}rK^57|IHY2QnDPlsOZjQ4x*kE#{7NC&z z-^gf8Te5K?L;nlPy}0pBZ>nKt=P2qUu*C6U3=eiPThOS zv!Cz(>hnp?@2tDl-fOSD_BCXmj6qh*nO`>Bh5ou4P;&xpYc&@u7O$BUmewPc$vQ4>i zyhxXi*V|Ro-WlvWK3{J0199-F4TK#;;Xrl_s&DhJqlIW+aZLKreWjwIEo)Qj)Za}P z93aI&Kf4jt>nRZW84GngKyqu@vY>aQgiYo$f|I+l^gdACb1dBQ5uJE8UYnNFTB(SASnJZ+T8!>lNW(5k^{H#a?fC;FU%Qo4;i#LJGMV4iZg{A^ zs2T>$D>1uFlb)3?4h=5J0CkXD3u@1|=^VKkMXwexIo%y8n?$5aloJLrMIKJ2+HVbO zMK;GN=lqYMh=x9)X0r4%!lA~ga?#?k@u_(_Ce>W;24AY^5s=3myS})Xc&!dIbmGG=V2zWcF);(52$GVUb{h0DLD#CZZ>-4{ z4EuMGt)U?evB?U1N%Xvo+#eqHJ1{tmL?4 z|8b>Pf0pe%j34Il^OGK_uNK$c4P7S?r(zyd;9c3Or8gMgr5OD_Uza*;RJA+v`J&ChaY83tM`=2AVjuJX7i?@Rt|G{@yjG} zR?a5pqMID8gKz7iiKOf=IWt@*CiT6Tv~3%aZ9ijNT9R&?Buv&v)3l-N3fC_$g{ZO( z7rm0`HcsPHuWq#iN7HR?x}VJx4&Zj`=UP|D9`5dq)M?&q{9Kt)wp^2qWrueigc_vJ zmb%1pgZYM)dZ06OE@WSmuDjbF`6({jX&S%{*z3_!q!%kt?w6(U~FJhB4#dF3h!X#^+r9kf6?Ub$z423U$n(RPThM5w!177xA~ zF43k5=~0*Hg~?qvTIkZIPNNnwJu8=d>!$(wyGHDA>@&Z5nQppbCT@z7D=cNTwI%(W zQ)DbJ4JIqY+RyY=VYy>LW;%RMP+P&Ke2$mr^jB`)!p5!Zr^;N04AJFeVEBGiJXDZv z7L%nD-Tx{VVaX_T02`=3$s7k8@IsMoIDVM&Pq#5-yHo}$(^8Uc%dmK^%x@+?*6@V;NN!VIRwy6K{KDAooDE79W0sSue~+YC(zRVJiEw zfSz8_d4lYcw;u7@C~v+LG`F10z3JX+`TSG-8e6PLtR2&KDz;@dsJBM(u=d!*u~L!` zIZRYss}oFT%Lfd?JXyaEE4i4)SxFbk5;i+&FdJk#jm2fX*1f(-z0`U^%D}o6he&l2 z&2#wKYeJtw7Y?-@3fG&4r9kbi$YpqOqUBH-ajlSsRpwp0H?{W2@k-Yr9;J{k0?0ie zBuDQQP_05?)Pb}1L&Y+xg~S{eAoEeVZqp03Z!r}zv+MgEQfdq7GDx$er~Fc%;3!!; zGw0~-^X_T+@IZ1}0`74~O=yr}IFOhTronD#3OICJ zL@@Sptcne}*L|O_d!tTngx;RCgtp=%?j@C5SFNVA=V7YMig0N6WwRik<%!jTcsuKL z0{4sGg2)|Bs0T=5l+q!F@d=Hj#3`Mn6DvYFvSpOlP4YoO3#R z_4#_kg={Dgt7%M4mu_m?7}h+pzEZE|&udB=S6v{Ki`b;RrRZg5-LI(a8CaNwNt3m7 z`NfZy%L$3l%4rVE(Jm>+mcw$=M28%@Tf)-acUCQRzbl*GZJK*rdRO-0qp)>bM~msM zOSykNocBgMJ-p#XPPfX*%$BD;9xaqzezvxtH?Yg3uy1#7C~JD{N^bog6<_q6g;Hb6 zi7VR;AZ7@+-WGCKj9*OBBMh&KVpjV8H?2;>OqbX~7vN+f$hS($2s&LfZQswy+iJ_2 z9l^5zR>ZC$C_}KtV>Yj>jgLgvaA7CH#)A`^i zCUqli2Nmc#9r&i|(@S~p$~&&A6KI^7l+)=&SfQ2*bZs1@ShRinh1#c;Nw(yKRQ0Q+ zm6Oqp?ueUlWK&tTQV~gQ=Dmt9pK_A=kJ><&J64@7X%$43k^(L%dqES1)C6^*6SrIQ@mZ~7!SrI3SWxS}fFma_L zo?RJa0xuToWJ7IA%g44n){AyPNOmw%nYr2*%!>07F}lf(k98i zkwv@2t5T#pR9&SQAX8!p3-{K6jD%p{=`q0`^++W%NA8vIgvTXZ!fG$wQscvW$=dpwo-GIePioXP>chkWCFXR*zpb zNd{HJgk1p^wDi2VG_}V7JPhgenu1{1m8;|7713@pk9iPxSEzrB z60(KUzprTfgM<`LxsaG_@M4p2vGXQjv(hBX<cW&HeFc{rt|hSiCBmfLNEowjOj6X~h(hF{+?oO<^eYN3zvu5+P)NhJ|trS#SQ)OJ9yHbuUNGq+kbq_qVc1$ z*Tu(8j4eL)h%nyD3S`{5Bt=h$X@0a*KJ+FlqRV4_8J9!ylS;98h0R1Vq6ke#bv>;| zM|Iu-VewWZLxGb*uXjzP^+%!WI+c2K901B%&V0!Vn-I_OzOAvlpxbx!TDsbzRda`a{h5^{3A)` zIemM7L}PPpc>F!G~+*rNfD9;+?5?9T|-7HHSh)ZRz>09_ww)J(8JuWme$2}wWK6@RixW*xf4 z*~-0RVXI6R^hm*3%jEk`p-0ir#GERXO~c~BI=#16++V*otA&GRTxa!;4aX0)duPK} zE#xa#t(TcrTSwI)P?-FXR-w8Yk{==L)ry+!yGQ40maHcsZt5!^dZmBpj%Xg}RFQN; zWhi>CG?w8~UpYgd-%9j*eS7*IA|XB2HMSO%U7?L%vL3}hc6Y5 ztW}*K`oXrd##}+Fqxwhpw2By3T&5@={H=;}Pw)~7ZBOWIB{SGskT9U8*hMOG3C@f2+E=(_Dr%Ffc%yAIu7wHP2 zSY4Oqt%Q$B+|cz6r}NBb zv>~v{UMo=vRkNAHt8oqkv^MOj#gn_w2N3P+=4tIe4*kdxcKb?S&u?P!Twu|bw}bvoJnMeZ6{U1;}bV3%1K za)?fX^)xhSsrFCvdkfN)tS7IK;i{ZMlZqjoNA$dvQl!`Bj)(oYviD!UliSt}EwSYd zpUsUK-K$aZY>qan+|S*&*W}_|!-gKscV#!ogYrZzx{lIM)w?bSDm7NT8O>;Da{s4P_dM`e6Rn_VXGI%h{VrOlXL}TBtFz}FuOIYUu|~_7H;K&B z*xd!P2(U`7YtZADdQGZVWk-Y=p*6amn~qdu!(!1w)tgv#vTk0td39Nj4A-~#CAzCu zO3d+|D*eo`_pN&9E{O{tOO$=ddKpZtUgE|t(IrlehYba%N>P-uDIEqGOoR_^22~hE zNCFOy`vT%vBB-17>(fDD`HDxlg{XhkJWn!_PU`^K;2tU66aTb)uc|-hTlQThZy@8W zREMe)muATNofxtF!kFQ^PS^N>0xwHKa!*2ybZ#75yiM3!gY%;@VQ?zdhgM@z-2RO_|+Z((@jpW@5BQVUDAfZogT)yw39W0rUOmqb_5 zFFEz1V!EdD6tdli&BFrcn~eo7OpxRJLftn}_b;TAXY+tY?Ujn?w)=?1rEgu)M|K}- z9U!?RlS#U!t_9?fWvk_MVmNJ8%9&rO`h`dzcwzefYfMsa$Fn-0e!3o|6n_ve51TpV zL-OO#JFX>(kZ8h6tlqL_^=2p){u!MjZ2LHCRrbl0e(U}=Q>+K*LVMyCoX?q-byM?G z9?Va9Fn>YfP1)hseu-Ghj`{lykO$qzhs}|CG&fe&?9XI(uto10A-jV?_C$p)X&Bmz zcCp2lGT6MBW*qVC0Ey|LT=l4?_hXfux1_=})T*=OOPjJxcgOhyTd?+yt;H6mP*W{b!$_&l}N9gz{`6m9E;!q-t(I)UEwC6H|kv8D;a=>^6dc0(6@v&2f9DUqjOAb54M~tDlmp*bh5FW}`N_)?3Ti%qT z;OR1@N=HNX9_bE13#x~DF&D(Q!Ul8O{A2wXHK=%>xZr84vU@3e)i>HD;Id+$1MynS zKhEHKhU|-z2%&Y2m2uk99{Z?aEFd@3y?I34KH}UYaYb5om!dNc<)a3GTTO<3o;+71lFw_UNW)ZXdN@cHF zGUlF4yENusbc}&IAoIF5Uxv=d@nhlqYYe295=>X5x|$|cw+hP9l=I}1MW<@H(Qi3x zyQQO8`CM>FsT4QeQ7g0d(g4Lzt%Pd2N7duyI40k}u@R#cujPnW*Gj;tacgjF^uwrM z_k>BoKUq)J#s;ZJq%kh$g9b6}esL~OujZ5PTXxULa;aBVO7Si9dK8(l(vFLl2-)5o z)|_PlCwv&Tzx}hBlh9iYwbwGeYHMoUxw`cy2GO^AjMMR3Su*tYMwK?rb^dR&?zJStToNVYyxsE`y9S*Pq3;4>C}U zOQ30*PB-r9K`C0=RGPwyiL7_ZH@>qWEvI3QmJM119R#y}TJE;}ItW(YDpvr?a+?fX z{qqn#YFqKLFio;@RhTC6jFF11$4QS=)5}Cpyb(}mc)}QWDqaR5uVFWZv>4L6RjcT% zyZ7;q)*W}!cM;dHPa9;NUYRtF-2&S@7MGIr3!>@)uFg_f@GH>!7a+^keQmKMtQX7T&RRXo ze5PC~9jZfbxMO&7ONh+I+ShsexlLtlRs2PANBkw(P8$e$^$OEUT%Vcwt~My@b+%kR z-c{{svl(Vo;!u_jf-WS5z3lyTw^EX}I{5jw!;Wo>ni9A+%i3L5FO!ecj_b^cH(&Ct z&p0bW%-S_syZ&VT5TEE~i#Jjm=;5j8Y>Q=b>JYh!T8{K{kQjUPsGzm$q348s2(PV- zE(#GbHEWpI>F*WZ%IvGF2U4lgk&dGMtJ6>*tzlL}$v&ysD@8I)UqsJGYc$iE<>!vKTpr*(AhZ0)ou8r%osO<;UVK0hnYdv$CHJ9Dvf^4X)5q^e#zfZZFndPqe(FI-@~ zQQf2`yXC!|vsL%diiMohtH~qBFp=0<-=66Ut2EJPO~0yJSF|Q_}MSn@-;|Ddq2w>t;m^L4y8!CePQrt zeyVqOYgR~G62AB*Wc94jQ?XjCtMK(mth;FVwzkjLNrOQzoLm@>O=)PZby0S{E^F(C zWK*iwI7w!9vU^~C-%lL;O^r+0lAUPW6CS@L5$dqe&(q>B9k_Gls$iMD$WGt&&3jK= zsE!#ZO4m*fqmZnl^~R@=sAxo~Wp!k(+lIph71B9hEsNc8VZa;u2|LgcdY9=)G!2pT zAi2?Bt5=!Jk->m&9_vwkrmk)nkoCy3SeUY+B&#vub3aljWUWgBk_8&|2Fn^TRPSy! zYvf#=si(qME)TthWhbw+UTGWlDE0ZYl*a~3*VuH0DOMr9o9=o0 zHJ$sRl@0SLVfDj{+WFGy*H%sn%PLvK@J?UjRzqzJtb1SCrXwZ6x1f2gb%b>8<0@|7 z30-U8@()Z`#!c&{4iJa*`>2kNCro2&p=;=8pAxRQ=wHur@`hb5VZK-v#kE5ywNu(m z*`uA9KTmtL@$Lz=ne3F1JBHR2XY0^a`VQyHC)j*qyx&So?10B{#PMSXFFN*6Nhm8u z^U{iuwlC+d49(2BXA27}O}bL7-59L|WDZytV$>{@Qa`4hm(pma)K^HQBV<+I$*`~p zI#WbeXN7e_7P)n>sCV0&ky9h%qct6_bQwN|(xX#in+s?QRRJ9YrTuxU z&lf}S37oj@8k|=8j53Sp8DX6%$!KldVzhlL*XY&p0>7|0kTy8=8M}pf-%c2?bN5<_MV4n|8fC?lUYRYsSG2gx4ujKV5+Z(sNNd|(4Uv=& zIk6(+8Jbt$DpN>^r_*ri^qFC%`} zEj?todZleq!nwjspY%AzZ`Q6`b2jZ{uY5=aR(7*WXI`p7nPub{pk<`a7=Ura?-N-h}688ghC!(A4cc?(^|PnloFR zzMFlB7C3Ft=4-}>L$ zET*U{tA)LsB*wk(eqo72_uptGkTpcvdd+b@l$2>jn-q$P>s|a}6#FcwoL#rLWSOZ| z(N`v#bQ_^gGE>s@j3;x;GUN|85T$XSnYc&ekJJ6}x)7gfpvKloAUm(Swvext=*VA= z`RXK{AAsoP18y89&nhvV-Z)tLQ&Z2AK8wt2 zn63L;flrbNneE-| zQJJNNJ)U3iHPx`$th;#i&^`s@dW62_+9LD?;tK4*R;Yez%d0;#W9ZlG<&aX!WMNsa zeUKs*#@yIX?SHuRng`E-l!RyrX1(Y&>B7l6c9ly1!t3uI*0mOK#+$`-9yZ(A-@6!C z+vh3lJMvb)n74P_x+N9P8t)0nX6>mJI=#ka2`H(E3C$0-YvRE7T zvFL4iGS5@U2NI{&>LqcyKooOrki;$AFN}^t{irj}TG5}n@;vEkE?*`at9<`nIFp`w z%Y8>{Rz}11nX->Eo=Z7dEH768tLs?*DpcNL4jB%};3W*qMEOb$sg;eNw&i+s`Cgk0 zKXHky&m*dd06+BV*2nCfKi|G@KZw!nTzvn^#arch^JT_g44L0#zCTTuef7~-=1!J_ zC#T8R0_0->tFuiy-Km?BnbQ*V97>~5S=P_Sgk=dZm&K*~27-?68oH*em6xLfwfbMhivA`rrLCH9E|^y}Nes5Sh04 zY5S%cRji^jYb+gU`=Y*(KGd_JdlT5y)GFx~S&sE`+~iz)Gx5gh+_0fe_WmrBO)#g$ z)9>MJ(8TStZ>Rzyd*6OxHnY<8)#`k6m>l&C8)7VVbN(B;gwf1kah9Z(wmZP?naj#){Yi9TIeWkj87Y}*@wMuYJcPF zU8tya4Dcxff zKO87MsB8mCFJp(QW1qc4)nh5`)orrbu&fU&M?Q6OP1*&&A3;9Qv|5gl>556zZz_#q zj|p?r@(X>;#X3k@Wz~axj3*wv2~%samG?ko{`^p>i%KnEE^oI)F4lv)(F)-s2Wh@O zEF7eM-O&qdzQu}DkB*33;G_nX&788Cm^mnKm3j!K8a5&CBU1Z?S=DR4Ub2H&m z85x_tSNS7tl1DPvKzN0F&iZE_Qqf1g%Yjp7E5xHnmUi}P&a zK$<;a;ovv6s2t&l&Zv@eW8|v`iVH4lIR! zv0dAxO_EH3>0Wd3uc?Vc#^>2nNAUVio!%=xPb4?Br1%D_oEI)+wMY5o%TQqx5cPuO zR9Jk=u5S)|-}$|lYOw(AXS3Zt@;J>ep%hP$t83&0lI+6O5A;aSaVqsU`u6B!J)wSR zuBOd}>~oMoQ8?CO6a2Cnc8#8tmHwG5`7Am%eS@S&sffDU!LSEw(ykluD+AXigN7cn zUfmHtdwIBST59R0z|cS*H_=k9#|tsnay=m_`%Sg?+P}uHY(kbTT(WW$zDlXCm=#P} zMT%p#vwWG}f@cPQkQwUW$A{}Ne_N|v@AG+@L!!B6u#5#{7rz`u*Fi;0gWj;dT6VR> zZN0jrl^;&&Rm5X9Es$11LXg3&+{G?i8{%B0PcO?tT0EH^%sF;wSc5%P=YrDpWN9Z! znx+cuTDygPV`GOMe#o({LQc$u1v%!L^rJ#L8|w##WCB`Sg?Mbx6F4Q^J?UATA~{(e zcI=_yPBp7rwf)k*T_sOaA7kq9MdPhQUP+;H11|N_Y|qH*RBg)e#(w*p^L?5#Rfgiu1S+wkZiWKmq+zjFbpn}?HN>y z>7E_Qd+o2KiKv*DQq|iucmI+a{divYNenG9wqqgqhV6=_mmF#c?@f-0|Lbdqj;-5hl&Z{pNurC_}$RNbYyG(zaB`7K;G@)jsxGDh1;6u?W>6qcxx9U zZ>Tj?j5ldh*JTu4kkkZ?&X}N&TdbdPg-YPpoYV$>(@7I`1>02xhlN1+|8A1AinW(+ znyv~*YE^#L)=2XlF4pc{*Cd&eOas$h2!s^R_5S0}s!oc{!>}nm1BBgKO23H%ju5Y<4Zp z_V{<7rI}O=6_Y@cFh|YtyvKQxP+3@k=nE_FXd$db*!|qelD)f|sYJGwNEaG>X(Dw8 z)BQ%8{^D6&0-xp~w1M-TG(n0Fby6F6q?0C4FeR>5tVU*|1J4EvsCNAPP!E1`(jbX$ zklcD(wt~J55SB_k)}qXEf!KSPT%8Dsy^{VI@t{OfReJp$G!lRPkUgc$ z10Opp{xnpyflqYO1n>YO#g>7$LlPsfC05E*$xWvLE;s614(fJytt_NXYnYi7R3&0QX2DxB!5l&>-PmPD#1KE5xr zV0LlF$-2Umb?s)T5>{AnkN4m@_24@7;5t?9hDP3KLGcv7sxr+k`0=f7jhbS^1wX#s znQGB#ad?;gj0;HFMRzRRP@J_0-erDD-h?B}`8 zHo3+iAv9>KaU!vuOL~S7!cfs@p`t*B;@rDrQ$}LRmZ%@p-%iFY84o-87F}+cTx*@X_qW-S2*J&@U2~pyuCXy8XEYqjf=K`$2h42 z#1gR*;_c+b2*em-W+0Y`vbNwx7%t{bgHda^*n1j`eUuL!&$CdJhLWhEvS3tFK9AVIkUS4GO#DMdiD(al4;Lz{ zf5;7HS+tf42&FNnkbs$GVcZrg=+RcWU7ap&rE&qCj$_xcr(; zgUO!IAbVY-tcJJQ0{y8yrG5Z@!jrcY_*o}S)YDdX%@F3O$(-V{<$oD`h&xUBN`tRU zB-6+r_Df;HLdS56jHFHueziw8PIP;F*yF&XjHHrn!>FP(@SBq;@B^7B_*2eS0?EM{ z<{Ne~H5aNrl5NT} zAvEN;C|g`(9i6Y(Q`!n(FEujv{0Q!r+NErVg#bdP;mk<*Qq{5Z3QnVRn=*vSa;AgT45fU zr#fhw7c|*QCm81*^f*@y8wGA&&}gJM@1SX3P|t(tWwkF@icxB)_}f@5*RihC-`=~b zI{n|2ljwGbd+$=*=>9|k;wF;QxzQ6QxZ7Q}LvVjeBwz}zm4e6-!F|hRCkgJ4i3Ci+ z)uw0iK#Ss}@5ZX{RrZv64EPo&O#j0 z%uV`4G^ZBY9O0U?N8Ou>S^s4z;3@GQS&z5Q*OZ7_U?asj^*D!yM$GOVw}0JgH73p8 zYC@ZWs`=!sT2KwTH!;;hDu%YJX+BodNeDX|+wS&M-NDcDMAya`NiZ?h>*%59)s$!m z3AOJ1KrAo!*;AHSfZJakf09B1Jkm(9oSIVgxBODsc+XS&_{cqC2%hzX`tW~clluACT8p|Hrq7K%l;m93z$U% zB#DxHWNhQ}hM1%C?I~3|aG{Z6v&dUJF#?x#G4i%4F#`Xwi?LCiZldw;#B3hlTt-=1%jz(OFx-mpSPKV4kiS1~4Y{P!}Er=EC)nMz=i* z6Mv)!GX}&8Qbd55Kn*fB%^OJ;Mj)w;jJ%OLVFc#7j@1frDmkLHX^1oZ4gJa{S)(N@ zY7H0b_eVv{He1X!vB&<{3olnzForW$EQX&eD;U!mYb8JZm2BMEb9NMnUPHwgIuXB+ zh=MoNJ-bXQ!#08r_fCaPTta0$jh?$6Q`f zVs0?L{zAf5Wr2V(t_8v?woZX`tFJTt!wsewJGy3yni0b=#@Hyj(klRxe_Djy0&nwwJ;ns(t)U@lxQhXWfNGEXe6j*H>9_yH@!o$URbI}-KrJ>3%O%+F}>Qz8St!AQ|kynQG!0)NrP$lJqj zj3G;iz{eUXhREA<65|X?3K=~w_vl+_bY~(F_jVp+3rK7lcWaur6nEn|lUUb!6r(^S zHN4(6bxagNUEx8E0ZE7kH8#!Lt%(sx@**Q|4TbEK#;iR<#CKZlE|%Do!jI(I|FvuZ&$MXZ(1=ge|c6;f(| z6iXTZxvmC=T<*svFDftE-MUl#xwRlP4PDWOsGGFz4*fD4nts%tVhrF-Mv9T~c3WZu zZewYPjJ(Y^s)PtUu#1tmPGaoVP2PqIuiERHw(2^y(CJQ7Q>LZoPNUK@J*E~AB~GiTP&ax|V?a`;L5)rG_WQ&LBzcjMw_QE4V?dG@8F@P* zF#;DGDKhd#+WPhwNEDv*f0yn0We6(3xl5=T+gW0|NMVuDzx60_PdH^f9k zRaEneycbZ7U0ZFU|BB^<(!eBKTXJ-IlzYqG9z8}^Suif%+zTKS^0#*{pvo=ws5@nq zNnE$eB$MX24r=!91ys2kBA!(XvMFNi1<=}1RY<7;QY;&L0m#iZ%Zti8&D;y9a%(|o z>IJ|@)JYNW`>+bK*H|nmH;!DBUBrIO5N zS#pPq)!T!gJ!^KN0K@At{cCJP`RJ`A~KAuAF&(ymQ zQ4g|q6TwI=UfJwlUlblHaHt+BZDMMOuo}_~5ssT_&$nmqu4R?Gp%XDuz;vDk*%)&) z`a##kQc~JeYA#^QNu$6CBWd+n@1$kfXj=()@GXTCz+0R&4!qMyF;w2}N{qlCcQIzs z)uC}d+5>3;zwM+p@D3-HK(tVuTGPD!z!}@XT&Lzmb63uUALD_H0>9&=Ng#?yCkKcY zs*{|nF_|AFSzxYH(|pZiO=J%jt<{}HG0%QHpcm5-_TzEAm^$|3vR+JQ+mCB|F}=io zd|5B1E9}QN_hNdV{rJINOrNtKZ|ubsvv+UX=)b?8L6`uxoYV#`anc0v1S2&UtyoA8 zFdl-DV`xBvk@5@d9in@sfNQ=J!@t&^5(x0HJL6AM&j1fMQq+{UC5aJuLKh=%PxZ9d z>P*#%h`*L}LGl!jqBfjXC2ul`2Pdgp5lCg#kH zT3j#f9q0X9B&l(3ZE@|E;(VpW^}611?zBac8t0xSd0>k3%@)@?d&fC%izGG9zc>cN6TO_G*t~be7r8vK6aoyTG&WpB4QscbL zB;TFlyu;%9QSUh4xW$rh-6BcV_G**7IcfWI)AIMdwf)Q%Not&5Gs&N&IRDGyn&ow0 zV-5EGEt1qY?={JXq(nW$;(BE7I17__aFQD54kr0`DbB}OTzmG8bN4NhEQ)8ETr0(> zisXOV5Ioy{J~*+_O7)Noq1ZhhPqe30%D{t+Bm>RU^9UW+L|awS*q3wx1F|)G_Vy;c zgU4GQXpm>aImFqzrDeD3Za?YUDBR>(SSi zVuxox*>vOCa7}?+CSco{>N>iCkpHV2C`7$WT}#Yxnj3c#h`nWp_GK|gGh+`Gm=%>9 zlAQ4uSAHdi@hy9bR{)Ez#-H?t2B1Bo9fs^}JAN(Nz-KsV0{AQ^%`kzDDxY&zTEM?J zX`Dz?aE*OmO(Ow**`-H;=&1=Ao#t)6t2hcIn#h=2PO+};{lr4Q&tsWD$89{k#y0Ag zTP*q8EtI^|gtZw4wrkA+dQ}HBgVd)f9Pax*mC}8o6rOnyyD*uc(HHr5YmYm%HwJ zPlI_%X(nQlqbsk~WTZ-sKuLs@Zy;g*)r}b{wF@j2#FAOPC03uNKM~Xr*?z2`zEq33NO&k*boKbH{A4hl)?wkDu? z?~nHVl|7}O|3`!Wok&$lJx__`FB2P*_a{F{TzX>gW3rKPyJc!j+nE2}d%*K~CDjgn2uDmoP?#jMP6~1y{YbpDkU&&!_I@pRpD-1P zRSMqi#rG?EOToLnZooh}$jazqdy0y{BaIXz=WR)1Y!0#>Vyh{{)^t6@#)4NA^$#amC{2dn_ z1?Ix_>PUs}HKEzQ@I3+Cq3^;s!ox1y0_MWaY9qY03y%VG;byh3G`D`YJ;mC<_Zw+u zYa{$V7j6M_;byfzccq$5R^G1E|Mg(Q#7$Q!kf!I#@R;$w%g@{I@HNySLj_DijQstovpDLh~bua>k~!S;mrkxW1EXH$5<6khE*aVeU{ z-;=2*`1w{3z74$HNws;#;o>{?BiSZ5z$f=H6b?~caZP-?)}B&6fOmc<{v;g-;E#>e zT&RbKG#?4^w-%yWeP@$?wV@ri<(l`ChVBH3|Cu2vdM8mFyq`pX9ogRY|QI zhKfCn0Y=phe2fc^-eBHuHtqzT|ABSjPOc12pkP(g*_S zy!0^d(34E;U>7fe*E(tH27_Noq^@LUFPE5VUw0M9zHRX5i3HsG?NL-J$6JQCvzN!) zv*CE9a$jXX-{EYN_ZYm{^{X{MsCZjVxu)N&hbRrRE{yftHxg-S! z#MTYB&&S4A!Wnv`$?aiJEt25_u<=z=H z3}*bkLF=M8$Vz70OK3xD2Ggi9$pzN847+Po0M*j}Mm0c5n4ubo5faarT=NMaQA^!& z_N_q+L@6DEoX?yCq zQt-cd0!N9a@U)CpV`(_8oFXNf8$HMtFr{YA_C#}EVgr)EIa+PYQI>l2wfUzZi~qeA z+NV9#l8AnjNI;VKP`SBp!JZn~6ZWW?R7zM%TsQhZ6Pu>(!y$B+1pG`7x`;BqGr6`7-o5B|L?OSO7Raa^fh`t(KYnnGymURdq zD$8IIh|0nRMBf-3Z%O-F=Bn2JYHIzPt5*(Ldbja(&zNiXekz*vpzAR21n>t=Y6I^v zQZz4bvplZ-g~%uCaLP(X@!> z_a03LNWig(@s^^gPXJmpvLI4R&nOYS-6NU=KGigjg^ag%dwM2;#2pzuwi>8MKSuQL z^61+@BGgdjJiSFroYI&8^XTixM)y zj3n8vOV(;#^|ODjX**p6IkPiaqp zkGz#8W(xQnBWVRVG0oe)w>cy5BqK$}6kQb&{hK`c7LYilG6NE!hT3X~ezGb0nMPEq z3ejKf(T@VR_0)HOdGwx@xgX7;8A`QI!MOgBT$9%RGRl|EdZ06zZ1v7YK(DG|Vl9zYBDTPL-F z_ZulzNxTtL<4m;LhDcCNrpAdYEH`d7p>56o{%C=GZiE#5AyR zmkXKfCYDjl4 z_}?WazVefiq=^OJ`N+tr3j*K+c7(R~H2CQkLz_1ZKFVlfPvBA`iAk=!U@z10a(gyi zW;raHqTh9Y4_Pd|C*PNbfwml{Z|L*Nw%n-VDd%s68P&|qXscAd3)Gx zkt#+5?(d`yuHuHlq!RcCCv`qM5*_Zp>?!sF?lCL=B-K1{p_5AB>z&jF-r}SZ_$Mc| zfe)EY@FnmJC$)j^a#9KWnv>eV%}y$TM{Gs#?Kd0z%3LSywsnL{>?vuy{SlG$a4V`} z3E+WFS_(YcNhR>zPFh+m;?XxLl5i7gMUb*PrM`wo^uglEv?p1(HPO2 z)Bm%yc99CT=l{wcYoY%){tw5pyHZ5@{->TpalKOFjK`}|2AFLt%U#jV-CX~Vz0uy> zXAOzAH(=V1tQpzW>-i3Fk&#pqOnV}dz|)c>@RgY)m^MZvf!8ES;5Rc#Fzt>=0v||{ zKpGj<7ECLnaa!ARhqpl;AWe!&f@xDk68LYac>&Vms3iE2w?{`3N#GNm)B(;jl1hS) zbG8zAl9M{X7i5y)OP#F*zR5`);JY$O@Quz^0&jCt2l#_b5?p-8(+S+cNgd#>M$&YG zpY3cV@E9j`fG1{>;PafV1ir#a9pDw2B>1DwRswHwQU~~rOcH#rvy~3-AnBbUgWK9u z(+Pf>vz5T-IH?0XGLrOQcRE`M{FswEz#B42@MdQ#fxmH52lzlH z34Yw2n4<(f-ANtbvy7w`0xxm461dVy9pHvc68t)6D}h%zsRR6QCJDa9*-GGDPU--E zl}UoP`L3rExQmlIz^55W(+NJ(*-GH^ozwxIo=Ji)akdip1}AlZ@5&^>H#%Dhyv<1+ z;14oMaPc3WPT&qs>Hv2&QYhJmpY3cV@E9j`fG1{>;PafV1ir#a9pDw2B>1DwRswHw zQU~~rOcH#rvy~3NN76e(2Di0mDA|Ue=4>VKIZo;TkIW>&r#o8-Jl{zj;3b(P_?^yH z0zc-Y4)BId61>^jO5kst)B!$_NrE5ueauk;pYEg%@L5I*CEM^4XDfj#ozwwt$Rxq9 zbG8zAm6JNa4`-6#Tb!)~-sPkY@DZD1np9hGX*6lG&o}tWMEVDV-?FDlf`6abfV1x^ z!k^401Lqq_CBdb$mB3|A>Ht?|lHg07tpvWxNiE3%Jfn9pEdnz`$2JTM2xplUl&f zIjIA@Eej0%3uh~V_d2Ns+~$WEqXXRCNSaLW{?1kcpY5a;aEX&Tz_YTzz%O;S5_qYT zTEKTZsRO(|3k-a_vz5TRoYVpi|HzXGe4LRqncxM^Rst6}sRcaQNgd$EEHLnEovj4E z%}Fib4NmF+zncXH{++Xxz&|>v1>EV!o=o5-BWW_h|Kw~X@UcH}N#F(}sU-Nk#0Gp< z#s+@aPdzl?^NggSfsb^y3EHxpzqzT~SyIou0#ZH<4 zzS&4J@4I;;FTXaTrt0^GUwBUpPHEt88%?TP;Gc{X!n@yIcKk(>ooD!s_7qv*4!=xn z;N6WT%>!`H-+ID;Z_XyZ!OVI|1i%$G+ofp$Gwmg8z`Y+e6k<>|F!Nr*2E0FG17~w! zzy*(qp-BpWpLbFR_<)m2;N_1+umk*plS<&^OW;SH z)B*m&NhNU89td`TA9qp-JaSLx0$${#61d|NoeOx3lS<%bCv|{3KMBDS_&z6ffIoCn z3Ec2x1Uta1om2uB?d4p+^PN-zw|R7CoieL$RyOTP=JDgMk&-yzA zJHV@)R08*ZnsWhHJE;VYJl(l~2Rf+)e$`1G;GAb5SOVYVqz>@wPAY+?JQKkV@GVX% zfzRCAxqzoRsRaI)lRCip^AIe7H#w;T{Iiov;AQg>>;P|eQVD$i0_Ot0)=4GsNei6| zxYS7{@HbBC0LS);f?BhJUuiU{AA!5<>)`_@oKynuc2Wnp+kOa^z>heo1H8vcCGe&D zBiI36>!cER%mK~?e6f>C;6t9}T)+dJR02Qdqz>>WPAY-N9_V2KH#w;U-sYqZ@Xt;v zf#tJ3EZ~_=DuJJMQU`dalS<&@p5tKw_jghWJk3cR;KfcVf$wrs2l!bhmB5A1^%#No z{e2{bfGmWoB>0OLJ6m;qN!enbBmM6y^}5r+cRT3sF_^@;CFu1w zRsQX)8w#FneZ7%l>%UC%@_6q6jsp*KQX5DYb)?v^$@{C%Pkg|o9)E55mUyt)XVH-GYBsJrwDqTVejPBps-+1^>ofVD9s;5e>*g4W(V~(IS@LSzE z+V>i~Kaq|#KRLmk66ZS%UY$sI(1?3b`xt{u66p+s8xrXY25(KI?-|^jNDCH4_4l!- zC~>gCLlfzB2B#D0y$0WxNWV4s=S14-;28YY_LSg{FgTV-lLnV2(rXR=OCr6;;J+r) zw+!BuNV5)!F>Ys1iSd~RpOr`_8eEY`8x6iVkzQ}`4T*HM!D|xfMuVSEq&p0LH<5m6 z@Yjh{SPd}jH9>m^gO5lg7Okleno9i~bf!{Ea zjG!*NfR~rp0+`Bz|JfJCO5oK-3bMSs=B}txC@_ZKZck}+fv>jVbCBg__j{8p_!&kM zS>Qj}kSxgZLV?wI!Ed!fEV978ZQDSQ<>hqWOHcwCPX#_+7F$!Uae!Zvns?xh)}91e zUhqSe1z+Y)Qvzu-f-En&kAOdNaqx>GFb>j$NW)PuHJWO=dDHZk2)Jqc)m+V&+y!Gk z{SW<*3x6YXCGZcDD*@l&Gci-Z>wg_pQ)7d_YBX^M;7gMuz3~EGcCntA%7VvI?+kdg zlcs<_Hem-i(;Aid5I9xp#ne85Lq zPcrcF@+9wGP66qk20mU+PJF;u<>B%2FNqIGPd0?d%hwYh@V9w*yv*{>=oFAXZwQZ< zXCyx0;i=wv;|07dNqj(h$00mk&QE;6OY`t}c|+m@(vJ?|@$#|62c#+te7w+#YjLCb zrrryTyrlXm^`f(Vq;G84M_TVkZyoA|SaZhzA50xa#q{uOsQ~ph-ZK|4pG=Cy{*#$4OdWt$lZ3TX;*9Rq#DrKm6K5$*CN^ajsRr2keNWC#H zRT8&vq>}iDoJfuE-JD4Ae|jpzw{N7Zug{4T?0?URl;Sz5NZh`WB71O7q4U zane&WCk3xfP71s_b;R!7$jiesCj~z~IVte0)PCN(kr%v6EepOYIVq5g5HsGpkr&1S zDhvLw4+2WY1sFKU^3tb%xOd|qour2jWZDmBrUidCnHG3$GVOgEdAa^qvBuFPg1>4s z?V1=|o=kh+MqVh6DhqzSx636EYl?a9bJH>yQ(5q-$+Qg2ux60urH^Uv8_2ZV3}o5| zGSh+|>T8iD@P=gC3oqbheP&wlMai_l6Ow5!ynq+#FEtN%KkrhMz|6E4Ucd{ZVU-2% zkW90O0S9B#GI)@jI3qug(@p!EZ8}R2x9nQsn>^OR39j)=W(ZUga}s zlRzffhKdt`n-UlBADndJs|>OhtKoxLiWSX(bA1JN639ZWM9Dhs-#gcdKqlE%@hY@fJwiC9?N!Jj|SvZiOlg-rM>JqA-w-hG++TdFn}Q_KKBxH4P4YbaGMV z*zPn^PzAr;+iHnGq@LKA6RDTqk`sG*IK2u{8<=%4t{KSbw~O^jzQaD;&WroYGj=~R zLgDAL@Lx3uc*yrzl)xXRdS>%RUY2KW4nD)(djtg_%2`^<64{4zckbmpZ`mAZMLj==WOyVQe*hkY$$xawh%tINamh02t{l_mqc zEO{C5m&wa+-^j}enO}f$ExC3FxF%x*<85-Y+Rk%$!QVs{_^C`5d{c5gV5+ajsjs(k zZyX0wZEIS=c%{@>z&9pIAnPQOi??s&1y9xBz{zXJ8@%>*_uAKIUJJe|c`b1N#FJ}&vf-5YsfdP-%%CnsM3X1;K@`vNO$Dhs~Ym)1%k z*&h&s?`|9B%t;YQ4MM_pkUuNtkOcu9*hj(P-kP zz`r4=82GV9lR6Xl zMJG)HxBai!;;1BeSEGp}@C+wS0{5R4XI@kiJZ3bJ1TJ^dByii=NfNx5(L@q>fRiSH zKguM*4>(&1+-^>cK-vc2ljo*5!A~)o#0h+U#sAiXHj z1o)@K1!Q}ZZ~^bJZB3!sVz1K^Q&$Vf1}6~(-k!LCY;Y1TAOlcIJdgpXZ~^J?3m1?M zziu6Q@F&1YYW-68JE`O=J>y zkdsQ_O-`Bwa;u1H0X}+Vj53s7UV4p1#I}R1SB(tVQ~$E{dKomTZuc3DKCf)418!?G z6{7C#8y{yc2j)Z$`Hb6~L*Qg?Vr5QbcH-Qe$W#Pf>mW`K`bO(X2O?9-_vS=qEw;B# zZ{Vb_&9p=yQj@(e)nqaeVlP`;9ThkkNgkgQsm

          6WO~tWb+R}oEoj26RFeISXq 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%0DKY|6P4#o#G#-eT+yWvy?B1x|;+h7)R8#qs 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%0AwL>e0GtMl0`s-Er_$H? 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 3: + basestring = (bytes, str) + integer_types = (int,) +else: + import __builtin__ # pylint:disable=import-error + basestring = (__builtin__.basestring,) + integer_types = (int, __builtin__.long) + + +def _flags_to_int(flags): + # Note, that order does not matter, libev has its own predefined order + if not flags: + return 0 + if isinstance(flags, integer_types): + return flags + result = 0 + try: + if isinstance(flags, basestring): + flags = flags.split(',') + for value in flags: + value = value.strip().lower() + if value: + result |= _flags_str2int[value] + except KeyError as ex: + raise ValueError('Invalid backend or flag: %s\nPossible values: %s' % (ex, ', '.join(sorted(_flags_str2int.keys())))) + return result + + +def _str_hex(flag): + if isinstance(flag, integer_types): + return hex(flag) + return str(flag) + + +def _check_flags(flags): + as_list = [] + flags &= libev.EVBACKEND_MASK + if not flags: + return + if not flags & libev.EVBACKEND_ALL: + raise ValueError('Invalid value for backend: 0x%x' % flags) + if not flags & libev.ev_supported_backends(): + as_list = [_str_hex(x) for x in _flags_to_list(flags)] + raise ValueError('Unsupported backend: %s' % '|'.join(as_list)) + + +def supported_backends(): + return _flags_to_list(libev.ev_supported_backends()) + + +def recommended_backends(): + return _flags_to_list(libev.ev_recommended_backends()) + + +def embeddable_backends(): + return _flags_to_list(libev.ev_embeddable_backends()) + + +def time(): + return libev.ev_time() + +from gevent._ffi.loop import AbstractLoop + + +from gevent.libev import watcher as _watchers +_events_to_str = _watchers._events_to_str # exported + + +@implementer(ILoop) +class loop(AbstractLoop): + # pylint:disable=too-many-public-methods + + # libuv parameters simply won't accept anything lower than 1ms + # (0.001s), but libev takes fractional seconds. In practice, on + # one machine, libev can sleep for very small periods of time: + # + # sleep(0.00001) -> 0.000024 + # sleep(0.0001) -> 0.000156 + # sleep(0.001) -> 0.00136 (which is comparable to libuv) + + approx_timer_resolution = 0.00001 + + error_handler = None + + _CHECK_POINTER = 'struct ev_check *' + + _PREPARE_POINTER = 'struct ev_prepare *' + + _TIMER_POINTER = 'struct ev_timer *' + + def __init__(self, flags=None, default=None): + AbstractLoop.__init__(self, ffi, libev, _watchers, flags, default) + self._default = bool(libev.ev_is_default_loop(self._ptr)) + + def _init_loop(self, flags, default): + c_flags = _flags_to_int(flags) + _check_flags(c_flags) + c_flags |= libev.EVFLAG_NOENV + c_flags |= libev.EVFLAG_FORKCHECK + if default is None: + default = True + if default: + ptr = libev.gevent_ev_default_loop(c_flags) + if not ptr: + raise SystemError("ev_default_loop(%s) failed" % (c_flags, )) + else: + ptr = libev.ev_loop_new(c_flags) + if not ptr: + raise SystemError("ev_loop_new(%s) failed" % (c_flags, )) + if default or SYSERR_CALLBACK is None: + set_syserr_cb(self._handle_syserr) + + # Mark this loop as being used. + libev.ev_set_userdata(ptr, ptr) + return ptr + + def _init_and_start_check(self): + libev.ev_check_init(self._check, libev.python_check_callback) + self._check.data = self._handle_to_self + libev.ev_check_start(self._ptr, self._check) + self.unref() + + def _init_and_start_prepare(self): + libev.ev_prepare_init(self._prepare, libev.python_prepare_callback) + libev.ev_prepare_start(self._ptr, self._prepare) + self.unref() + + def _init_callback_timer(self): + libev.ev_timer_init(self._timer0, libev.gevent_noop, 0.0, 0.0) + + def _stop_callback_timer(self): + libev.ev_timer_stop(self._ptr, self._timer0) + + def _start_callback_timer(self): + libev.ev_timer_start(self._ptr, self._timer0) + + def _stop_aux_watchers(self): + super(loop, self)._stop_aux_watchers() + if libev.ev_is_active(self._prepare): + self.ref() + libev.ev_prepare_stop(self._ptr, self._prepare) + if libev.ev_is_active(self._check): + self.ref() + libev.ev_check_stop(self._ptr, self._check) + if libev.ev_is_active(self._timer0): + libev.ev_timer_stop(self._timer0) + + def _setup_for_run_callback(self): + # XXX: libuv needs to start the callback timer to be sure + # that the loop wakes up and calls this. Our C version doesn't + # do this. + # self._start_callback_timer() + self.ref() # we should go through the loop now + + def destroy(self): + if self._ptr: + super(loop, self).destroy() + # pylint:disable=comparison-with-callable + if globals()["SYSERR_CALLBACK"] == self._handle_syserr: + set_syserr_cb(None) + + + def _can_destroy_loop(self, ptr): + # Is it marked as destroyed? + return libev.ev_userdata(ptr) + + def _destroy_loop(self, ptr): + # Mark as destroyed. + libev.ev_set_userdata(ptr, ffi.NULL) + libev.ev_loop_destroy(ptr) + + libev.gevent_zero_prepare(self._prepare) + libev.gevent_zero_check(self._check) + libev.gevent_zero_timer(self._timer0) + + del self._prepare + del self._check + del self._timer0 + + + @property + def MAXPRI(self): + return libev.EV_MAXPRI + + @property + def MINPRI(self): + return libev.EV_MINPRI + + def _default_handle_error(self, context, type, value, tb): # pylint:disable=unused-argument + super(loop, self)._default_handle_error(context, type, value, tb) + libev.ev_break(self._ptr, libev.EVBREAK_ONE) + + def run(self, nowait=False, once=False): + flags = 0 + if nowait: + flags |= libev.EVRUN_NOWAIT + if once: + flags |= libev.EVRUN_ONCE + + libev.ev_run(self._ptr, flags) + + def reinit(self): + libev.ev_loop_fork(self._ptr) + + def ref(self): + libev.ev_ref(self._ptr) + + def unref(self): + libev.ev_unref(self._ptr) + + def break_(self, how=libev.EVBREAK_ONE): + libev.ev_break(self._ptr, how) + + def verify(self): + libev.ev_verify(self._ptr) + + def now(self): + return libev.ev_now(self._ptr) + + def update_now(self): + libev.ev_now_update(self._ptr) + + def __repr__(self): + return '<%s at 0x%x %s>' % (self.__class__.__name__, id(self), self._format()) + + @property + def iteration(self): + return libev.ev_iteration(self._ptr) + + @property + def depth(self): + return libev.ev_depth(self._ptr) + + @property + def backend_int(self): + return libev.ev_backend(self._ptr) + + @property + def backend(self): + backend = libev.ev_backend(self._ptr) + for key, value in _flags: + if key == backend: + return value + return backend + + @property + def pendingcnt(self): + return libev.ev_pending_count(self._ptr) + + def closing_fd(self, fd): + pending_before = libev.ev_pending_count(self._ptr) + libev.ev_feed_fd_event(self._ptr, fd, 0xFFFF) + pending_after = libev.ev_pending_count(self._ptr) + return pending_after > pending_before + + if sys.platform != "win32": + + def install_sigchld(self): + libev.gevent_install_sigchld_handler() + + def reset_sigchld(self): + libev.gevent_reset_sigchld_handler() + + def fileno(self): + if self._ptr and LIBEV_EMBED: + # If we don't embed, we can't access these fields, + # the type is opaque + fd = self._ptr.backend_fd + if fd >= 0: + return fd + + @property + def activecnt(self): + if not self._ptr: + raise ValueError('operation on destroyed loop') + if LIBEV_EMBED: + return self._ptr.activecnt + return -1 + + +@ffi.def_extern() +def _syserr_cb(msg): + try: + msg = ffi.string(msg) + SYSERR_CALLBACK(msg, ffi.errno) + except: + set_syserr_cb(None) + raise # let cffi print the traceback + + +def set_syserr_cb(callback): + global SYSERR_CALLBACK + if callback is None: + libev.ev_set_syserr_cb(ffi.NULL) + SYSERR_CALLBACK = None + elif callable(callback): + libev.ev_set_syserr_cb(libev._syserr_cb) + SYSERR_CALLBACK = callback + else: + raise TypeError('Expected callable or None, got %r' % (callback, )) + +SYSERR_CALLBACK = None + +LIBEV_EMBED = libev.LIBEV_EMBED diff --git a/venv/lib/python3.9/site-packages/gevent/libev/watcher.py b/venv/lib/python3.9/site-packages/gevent/libev/watcher.py new file mode 100644 index 0000000..5a44cef --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/libev/watcher.py @@ -0,0 +1,294 @@ +# pylint: disable=too-many-lines, protected-access, redefined-outer-name, not-callable +# pylint: disable=no-member +import sys +import errno + +from gevent.libev import _corecffi # pylint:disable=no-name-in-module,import-error + +# Nothing public here +__all__ = [] + + +ffi = _corecffi.ffi # pylint:disable=no-member +libev = _corecffi.lib # pylint:disable=no-member + +if hasattr(libev, 'vfd_open'): + # Must be on windows + # pylint:disable=c-extension-no-member + assert sys.platform.startswith("win"), "vfd functions only needed on windows" + vfd_open = libev.vfd_open + vfd_free = libev.vfd_free + vfd_get = libev.vfd_get +else: + vfd_open = vfd_free = vfd_get = lambda fd: fd + +##### +## NOTE on Windows: +# The C implementation does several things specially for Windows; +# a possibly incomplete list is: +# +# - the loop runs a periodic signal checker; +# - the io watcher constructor is different and it has a destructor; +# - the child watcher is not defined +# +# The CFFI implementation does none of these things, and so +# is possibly NOT FUNCTIONALLY CORRECT on Win32 +##### +_NOARGS = () +_events = [(libev.EV_READ, 'READ'), + (libev.EV_WRITE, 'WRITE'), + (libev.EV__IOFDSET, '_IOFDSET'), + (libev.EV_PERIODIC, 'PERIODIC'), + (libev.EV_SIGNAL, 'SIGNAL'), + (libev.EV_CHILD, 'CHILD'), + (libev.EV_STAT, 'STAT'), + (libev.EV_IDLE, 'IDLE'), + (libev.EV_PREPARE, 'PREPARE'), + (libev.EV_CHECK, 'CHECK'), + (libev.EV_EMBED, 'EMBED'), + (libev.EV_FORK, 'FORK'), + (libev.EV_CLEANUP, 'CLEANUP'), + (libev.EV_ASYNC, 'ASYNC'), + (libev.EV_CUSTOM, 'CUSTOM'), + (libev.EV_ERROR, 'ERROR')] + +from gevent._ffi import watcher as _base + +def _events_to_str(events): + return _base.events_to_str(events, _events) + + + +class watcher(_base.watcher): + _FFI = ffi + _LIB = libev + _watcher_prefix = 'ev' + + # Flags is a bitfield with the following meaning: + # 0000 -> default, referenced (when active) + # 0010 -> ev_unref has been called + # 0100 -> not referenced; independent of 0010 + _flags = 0 + + def __init__(self, _loop, ref=True, priority=None, args=_base._NOARGS): + if ref: + self._flags = 0 + else: + self._flags = 4 + + super(watcher, self).__init__(_loop, ref=ref, priority=priority, args=args) + + def _watcher_ffi_set_priority(self, priority): + libev.ev_set_priority(self._watcher, priority) + + def _watcher_ffi_init(self, args): + self._watcher_init(self._watcher, + self._watcher_callback, + *args) + + def _watcher_ffi_start(self): + self._watcher_start(self.loop._ptr, self._watcher) + + def _watcher_ffi_ref(self): + if self._flags & 2: # we've told libev we're not referenced + self.loop.ref() + self._flags &= ~2 + + def _watcher_ffi_unref(self): + if self._flags & 6 == 4: + # We're not referenced, but we haven't told libev that + self.loop.unref() + self._flags |= 2 # now we've told libev + + def _get_ref(self): + return not self._flags & 4 + + def _set_ref(self, value): + if value: + if not self._flags & 4: + return # ref is already True + if self._flags & 2: # ev_unref was called, undo + self.loop.ref() + self._flags &= ~6 # do not want unref, no outstanding unref + else: + if self._flags & 4: + return # ref is already False + self._flags |= 4 # we're not referenced + if not self._flags & 2 and libev.ev_is_active(self._watcher): + # we haven't told libev we're not referenced, but it thinks we're + # active so we need to undo that + self.loop.unref() + self._flags |= 2 # libev knows we're not referenced + + ref = property(_get_ref, _set_ref) + + + def _get_priority(self): + return libev.ev_priority(self._watcher) + + @_base.not_while_active + def _set_priority(self, priority): + libev.ev_set_priority(self._watcher, priority) + + priority = property(_get_priority, _set_priority) + + def feed(self, revents, callback, *args): + self.callback = callback + self.args = args or _NOARGS + if self._flags & 6 == 4: + self.loop.unref() + self._flags |= 2 + libev.ev_feed_event(self.loop._ptr, self._watcher, revents) + if not self._flags & 1: + # Py_INCREF(self) + self._flags |= 1 + + @property + def pending(self): + return bool(self._watcher and libev.ev_is_pending(self._watcher)) + + +class io(_base.IoMixin, watcher): + + EVENT_MASK = libev.EV__IOFDSET | libev.EV_READ | libev.EV_WRITE + + @classmethod + def _validate_fd(cls, fd): + super()._validate_fd(fd) + if libev.gevent_check_fd_valid(fd) == -1: + raise OSError(errno.EBADF, "Invalid file descriptor %r" % (fd,)) + + def _get_fd(self): + return vfd_get(self._watcher.fd) + + @_base.not_while_active + def _set_fd(self, fd): + self._validate_fd(fd) + vfd = vfd_open(fd) + vfd_free(self._watcher.fd) + self._watcher_init(self._watcher, self._watcher_callback, vfd, self._watcher.events) + + fd = property(_get_fd, _set_fd) + + def _get_events(self): + return self._watcher.events + + @_base.not_while_active + def _set_events(self, events): + self._watcher_init(self._watcher, self._watcher_callback, self._watcher.fd, events) + + events = property(_get_events, _set_events) + + @property + def events_str(self): + return _events_to_str(self._watcher.events) + + def _format(self): + return ' fd=%s events=%s' % (self.fd, self.events_str) + + +class timer(_base.TimerMixin, watcher): + + @property + def at(self): + return self._watcher.at + + def again(self, callback, *args, **kw): + # Exactly the same as start(), just with a different initializer + # function + self._watcher_start = libev.ev_timer_again + try: + self.start(callback, *args, **kw) + finally: + del self._watcher_start + + +class signal(_base.SignalMixin, watcher): + pass + +class idle(_base.IdleMixin, watcher): + pass + +class prepare(_base.PrepareMixin, watcher): + pass + +class check(_base.CheckMixin, watcher): + pass + +class fork(_base.ForkMixin, watcher): + pass + + +class async_(_base.AsyncMixin, watcher): + + def send(self): + libev.ev_async_send(self.loop._ptr, self._watcher) + + @property + def pending(self): + return self._watcher is not None and bool(libev.ev_async_pending(self._watcher)) + +# Provide BWC for those that have async +locals()['async'] = async_ + +class _ClosedWatcher(object): + __slots__ = ('pid', 'rpid', 'rstatus') + + def __init__(self, other): + self.pid = other.pid + self.rpid = other.rpid + self.rstatus = other.rstatus + + def __bool__(self): + return False + __nonzero__ = __bool__ + +class child(_base.ChildMixin, watcher): + _watcher_type = 'child' + + def close(self): + # Capture the properties we defer to our _watcher, because + # we're about to discard it. + closed_watcher = _ClosedWatcher(self._watcher) + super(child, self).close() + self._watcher = closed_watcher + + @property + def pid(self): + return self._watcher.pid + + @property + def rpid(self): + return self._watcher.rpid + + @rpid.setter + def rpid(self, value): + self._watcher.rpid = value + + @property + def rstatus(self): + return self._watcher.rstatus + + @rstatus.setter + def rstatus(self, value): + self._watcher.rstatus = value + + +class stat(_base.StatMixin, watcher): + _watcher_type = 'stat' + + @property + def attr(self): + if not self._watcher.attr.st_nlink: + return + return self._watcher.attr + + @property + def prev(self): + if not self._watcher.prev.st_nlink: + return + return self._watcher.prev + + @property + def interval(self): + return self._watcher.interval diff --git a/venv/lib/python3.9/site-packages/gevent/libuv/__init__.py b/venv/lib/python3.9/site-packages/gevent/libuv/__init__.py new file mode 100644 index 0000000..412d64c --- /dev/null +++ b/venv/lib/python3.9/site-packages/gevent/libuv/__init__.py @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + +# Nothing public here +__all__ = [] diff --git a/venv/lib/python3.9/site-packages/gevent/libuv/_corecffi.abi3.so b/venv/lib/python3.9/site-packages/gevent/libuv/_corecffi.abi3.so new file mode 100755 index 0000000000000000000000000000000000000000..b60e77f3325c2437a87dc1236afd4fdc8cd93abb GIT binary patch literal 1282272 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

        3. };|2tGwC3Ee+`l|X`IfZd_G2i3ZV>ZbKhA~U-k`Yk)BTZ%+x-+LzD+#e+o_y5 zOksKKbidgf^22Qe`O`3ir=QHRc2)E{ntw$c?xr}m)3_w!d@YTWB{WWo`PA8h=W9B~ z%ioG;qh(Ni{Z!wcly5SvTZ~4Y-a)*vSa;F-T;zKrR1oVGP}ZfjX*|?u-A>ijuC?Up z&6NHDvR}6~=T>F@T1tK>y2=YK;%6D9FH+KSLw0o+k*Jxf}JEeb@ z;?w*j=N}Wteu?!hqVe`S;txYItHD~)^o zh+h!(`kiOko?oW5fsC;HraTUACBB912WdPM>&9-BKJY2GBko_EB5vuvdkp3K9^JnL z9^~o8edROcAC3OFkZzl`6yoNuc|o?5oyIMAIsNZ)J7WFQ4JH)UUNqkgr1Y1`4~8|| zP7UJ4v_3K8AJD)ymbj0`?a)!4KArEh(G)*rJ$d>}N{@eshxrDnAB`k_BlSB|bDkc; zo^4AgJ`L3FBZ&8G!R-XXJbf1NI$}Jh`x-G`-3iH9ybb2*FH`#NRDL7<@uY*w-;MJ1 z(fwd|O24cnx8vW#?bIaRp8Bbs{z&s};&@wu`4-W7M)Zq&$j>I4*TncdiN;UY%e)}s zzUe%T!$m83zM>!1HEeWZP6KkG7u|M8xwJF<;E# z9GaVLAzIIv@sD(26YH6Fv>q;^^{`k^o~3v;&E|fi%e3Xhiyr5EEVHI*zkyk7N27^z z(XR(my-XD6?^61|>3-ZueNlu`KyQF@OU51;1g{~(@8 z{;@vA`BvgDQaM9oIT!J~RE&GAIj6@N?C-YOxIy#y4KT0Z_A|{dcH(e3+kT;bZKU-^ z1MWU;nefjTZePq7?P)#WQq}`os2zRuN9&>=jVJ&3=y}B>l`cJV<}QKA8Ma zkK$j$2^}^OZ%@*AYhBM1wkJFDsU3~;d3rP7Y5gdDSql#OP`lKjxH3J>?IcmYU0{!X z2+)K1WyCKT$vM)rNw@0JlSrS=NaJO$0lwo9}=@h##7oJM@@t=zty#`6xu>(FyW(=uM3##FC= z(RgK|=lSC)eSd1NG8*@?h#w^$pmv0?WE(DTuwG^K+@pl}HHur;_dG)}{^ZkqQT90J zZ%}zQQhkl9csaqnY+E7xN&U-2`~w;ftu+3>OMEKTw}{poBCa}9JQP*q_WhLpLmD@N z?{i*G{1D|E?83QOq^I%Oj|GEGl(QAZa}mY!U6g+Q?c6^uTA#x-#I~=gpOz{8{c|d( zZwYryM@k=0?e3y=*L328Xr1GyfIUqd|85%F#Y*K7^K2IR-$(a%Vtu%a=Ic;xUa!Ms zCrIO%b|2@se!}e(t(P=qU7APj=u-Ui3)NRE=XS)nG)weTx?dLU^*r_K5Zz}9zxk;= z0a`CLqVoJr{$W4x0_D4dl@fk;i29w0*7;(6*pTeI0^Gp8G;Vw(+Dn-SXOKSwck%KU zko~dLFYIxgk0#y(%(DLO=Jx61XYDykZ#>31xQlIlsQgyC?|^EuZJcO#;)99*3463( zlF#iV5_f|Gkq4gRT&y#fQNIXLznDwuU!ryiDsfn!;=xb;7xUUA@`Himst?)ui~2=~ z`tK{mf1+`q41ZJwwvEKQi#Vju?~;l4r1*F{ z7j{}_4kg~ACHId@dG2&8jRR#)-j3jQw(S-5QsVg~iYvo-UM~lw|D4LB(Q}xQ#J{9^ z8C*R5EWXpi&=Ih`is<>wNlIUr>}wRa5SDD)MfEZ-_&FWT#7$O!YbQ#^}tra#RW zAq!7$B|8U+2k1F%8u0*e6U{pi25dVD13ua}(*4LY#5cF(JaB;9A4moInZ_9-J+Gcj z>A#|WVWNKV4)I&bKV_%6KWp-xwx7nOBC@lX(jO3h*unD^>xb6Vj=l%D0jh@9gSeTv zne5aN^WYS2NA&AeMqaNFt=okkj!}6^e&gxiBs;O>w<4N1A&l9!n(7;*aq>p0R}7WE z>>X}rC8gg@em2eH{3`M6CcHeRCY+1;?lKHe*e=>i&S98k+gsG{0@*x6k*}i_Pw%3M z4vN7xTqmNP0Ij>ITWHx-o+2D@VC%=;VLYSs8qF6X{SoqKfS%7hMd?dha{E5Ie-Y#S zqf|~mjc;PSy_@=}k>)#I3-~=0iYwoGPMl=lP4Q#A#yJcZYh-zkr)#CF_M2D(2I^{PkyF;M>!@!6H)p^WCWv1I2b zdTwl8%I*J1ybjs-pWqytk8Ou(J!Ymjgs@>-Jo(K;>!snu?;!tZ)V?Ba&rm#+Q5@b& z=@UepJj?U_o_H+zt?UWT2NB;Z+Bb`Hs6N|Hih1N2&c_k|i|m{53*@kUN!Zznrp z;ytKe8*6eqUgDj}KgKZU(}-Un|A%P&FCm^p{Qu-5c z9{Y=5nePsYapn)6zB;9Up(RgWw1@K#se_%U$$80Y&PDtLseQ$d8Fr-dcp+dgU*8c9 z?8JLh+`1NXJ9(7vw+5cxzLzKbhWPVTuiyZlUVIPmF>ox}w~yoLhmid*sXQjS4;9Y| zzY*m*&J#AO#xs~l z$r&E6!##Rf|4e7LV|4PQOb0(#^%+}AZn7;cBRe@W<1t8x=2E8EQqrf`(vmYWwVY|T z>B*T>G;7|#X~~(kQOVOBqto4vt2ilf4d`HzUizWVYLph6f1TPz$FE%nWsAPqqzmJG1aWJ_|0Bq{C}-J6w)r ziDhJGNNRF4g=BP0wkKn9wj;H&@#M+L8QEyu<8?dSZl{|cLwS(F1>iQW zj_9#C&rYN{-BTi|QZk($))ed%gwr&pGCVdsL#+lXImIhZrDjHJlfea*k13H?da?)F zhqZ2cayF*(=D8fU>}1~b#5@?kP~Dd`UAULq%t(C9+RMVII>e&L_2d>6A6^Y zIz{p{=%LuZZ4ejGvmBWjo-E8Q*^`%@V)MYoQ6;QG5M?H(IBcvZCPUZNCiAL6r>4$1 zc*xLEUhG^0vpqR(sdJ9JKFLT&rXv~J-I_N9qsf*6V?jz>QVtJPGV#&7kFAxMGL4 zG#og9*|L(SIJm!UF7N;b9`wXa2kT0<6kbUfm{MGMWP=61)R2)7inN+7$D7s@2G?aqK0f?UJab!W?^solY%JDjKp?{>X0&_k>g-VQKck9B33m% zhvB4?3g>y2Fbd~-<*~p9vjd;)Ja{!td^}`rI2dI+(Y?uDm^U@n#rddV%W%@jj|&HO zX*ACH$icM-hNDzlUWOx+4I^Syp+OSOh+&LQvFQN&(e#{*R2vIfumr;$FfmW3yTy@B zI^>fOn~R(-FN{cDBzOqXBMz~WG(koS%!kaVjtu5e#O9KybY;NYAxWGGB}tR4Oq?kW z51++&8+ub*(iL8Bo}_Y8<#SMx4Cl10WEOR-!LTsQ=h%8QVKWWx#BqonXF0s?j1(9} z_!@^*AmTQ>kky(ch5q13t{lNw1X$2zc+#bEC8wk~z@2>8ja|yBXv>BWVR7fl^WflE z`4rAp9&c)fli_S<_9WJz8O{_hPZ>dJDcOM7dyj~HN3J7<7c;WTfSEjHT9${c#!{xI zVq4=5<3Bw$g9S}$hKJ2+EMth(bcZ{`i-p8gX&Ere^5Re+vkX`?ig>1}j1P}+MrzE= zWG{p%4iB)L&0tH&Xtzjn@YN>9c66CyOG|}u0~Xb+pFw%uIiBRntS}Kl!v-sg6Q&)^ zl2slB`GavRzLu7X$1JfYGsn#q9njTXT_Tr(=!)l^9-BAIMScMR8QLbhoiGW)(PZ~z z*3Ud%7mfdv!jvSGEZZvUDb|nc#Nr!1bObb{trzefC_;5*;6`9^Vj!b@c!KY5y93LjJ z4#Ji#3x@2fFpL8t8?Yc{!&^E>I0Ty+M?IIr;T8-K4gt=z)MQpEPo~4+(z27Yo%{$) zKrNGDtpM!+3(`pb$*>xOrCA={+p!TH9G2qD$>u{pmK!E77)Ic(1%`V#so_ZA%%;T! zj^A!aj>mzEIc%KNOcA`PnURi_n(4`7OHUZyL@2Sf86Wv@m6i+3CB9sP%u=#k8jOC) zsn9oE)1jdp)JfRloUahr@(ukOgXeQg|_CPS-~jYlf&q zV^X0(W{P`HcBvRDg!dsv=@uDJXGIM`Uln#l+A0ur3LY-9Q{~EFtg}wVlkpBjRl}YF zV+lAfI=|r127MRqUecV>926Neq|?j_%qt=}>Wnm)xl>^!>||AgktCb$?4oBf_$&dI zFb!secMT~X7Yxd9s|2^45T7u-_UdKxU|XaiX7^Yb*-mdpS|0ccZV$XE?5-XQ4Ba@@ z$%Z#@mn{b$LE(%76Ju6ZGWJLq9B~y13!to=Y(QAlXi^v|9B$1OsblnvcqGTt!+kkl zo3IBc?EZ!9LQ8w;zO!M3QY24#!e1rkVXX8|WEsIV{V^1a^JYdX%qQj*bY1sT84Hp>V7*ezK zMpc)f1R;IxS+XyV3Za;9?mR(oVDn_9Gm(W-CCcV~438YVF^sNTS)#~viAuvaR#5(2iZQ&K;Hxj}l+bN6 zG9lu#HB_{y^|+Gx?2PrmKE|gfYWeAIwjzMmgrPT+Ix36>cobP+W=zIqG5REO6)hGZ z8T4cgZ#b}rV|cNoc*8Oc9xlPi2B%>Mw-;=OHyq42Qy@F$Wr|3l;Yu+R;ngl%vU@VS z08}J=c~_)fC1N@PD<`Y8;N!zDP9@ljp~QG^1~(`WnpsZ%lv(s2DcC92p=IGABs_5O zq&u0@C*|NA0u2DSmoOx2X|QY;kJ4~T1=m8Qvs39F6;{WvR<^-atU@-t`JVzy@5lpg zMzZ0-U?yLfi;zvr%z-;_HdpcoJ?J>P4TmGVOBYcs^$j#1m7eq*Zz?Ugm?aiUk@*+L z>?n>X%!sW-aJkJF?NG5)Q2hBeJcLKhJ{f|fAkm1B)UmPU*v&pYxyOQ`+vpLRkSs40 z*!Lqs>X3L&)Dw@DzDY>#nuyqFfHMxCdJsu2Mp>y15O^}O;E8*3w!@jjm%T2ScP3}& zuz@`@V^WH|GLAf)WS@4i=?e{Hp%A1kP*^s&UVnjbRi!hL zC%2U;8y%r4ye!Z!7^s}4YDy!dNGi{?3RBBNN$F+{GA97}5K|23o~XJEH0D<_Oze8Y z$_erG8J~4SwrnXVE`qKK_hxF`Mkq80TTMoq5YO=O^EwNvOIXq>As?GD%2}F8Zdf&? zB*SgLY}2NL#Y&c4itEkP>ng-nvK&JmQylPw7DhZ+DGU1&q6D;*mJ>u**O(l7NaS)j z_P87=8EF~p@g|-IM@3G2DGSZa}q^mTn$ta4x;0z=r8 zZ1jMq(jaYc!|%|%DR416lahuXkGYfC2fFy=8cx`z!} zcpR)EG!{7z5ekOFr=_v-z@?x2RHB;J|1uVHq zB*ROj;K8dT$*RfknkPBneh8k0Qyg(u^O(Y8;S1qsp_y+mL1m9hggca-hBagwem8|4 zRAXMau9O)(sG-M0?DIa%j^Ca|?#F!U$YG2XuRN61<(0bZOg+jinxFVT-uX3{gRsSq@UQghN2n-wEab^c6D8tW zK^nkS4dKN#{Lklb1$-fs$_xK5J(Nk*zBWsX-{-`uuztK0_&b;Qf7lD#a@mlf&1hZt z*~UOHPhlI&Dm=lDMVW-P8{j;8uCn*w|Es5bF%K+Ttk#4v19+5M$274Tf9Gw9^}>HK z|NZx05B%2y|3C2nbY9r7Pu|&v|3K8(0g;p2##6rM`ltZ)x;tHNgyw=4V^;x2_hN8G3IuGM&b{0iSd=>rPiLcB=f z+ldDizK3{;!uJyoDf~y`WePt8Mg5-(M_h3tnE zK8wlsR)Nc~&z)x@m|f0cNy!apD$Q23|BixvJg@iK)UCZ2Gxa=$)9 z+^q0&;^_*Htxo+&;q{1bRrrm>Lkhp0cpQz3!atpei}6zM-o))n`Xu5$g%2SfQ20pV zL4`j=Jfv_taqauceoH5ARJfD4S>e-(+Z8^WxKH5=i3b$EoOn>-&k+wP{AJ?Wp~~fd zow!lqZxc5wJV@NG@IAzR3jd0DK;hpJ4=Vfz;vt1Eti{W%{ZP65eJDPS3J;MTv%-ZP zyTXMXpTdQmfWn2Hpu&Znkivx>?Z?XH7j}#a7k11F7k2Cl7j}FK7j^;)7j}XQ7j{Al z7k0FtDwki_G3s!$!i9ai!i9aG!iD{S!iAln!iAlX!i63714*zh6XS`nW2E((;KGhs z;lhqx;lhqj;lfTp;lfT(;m0U$ixplpfdBnsNa5!xeOTeH5UxI9J6yTF9MoUp6mBB> zMulG``-uwog_w2Ctng~|L&g?``^mmt;f*MLy29AvZ&vs;N^enk zfXZ)I_$*4FuJ9sC?^AdorO#KmkNg=>`16#0gTjMkKdA6mD1EWQON9Rw{x+o#D?CK$ zwIh}N{~@K1Q+OGrH!6G&rB76NK=@zb-%)yt!Zq@bUExP4eY(P3WZ$Rovy?tx;YLay zQ21p^zd_+;{rPwjRCrDN4-jB0R=9!ehZNp~(uWnUQF`rYW&ax~eVoGWfF%y+z?h;eUnSP3hAWZld%)g%6E3ELqSzexUg&V{VN&H&5-CIz-;uKy&KUkBXa81O6!cS3o z5)~de#mm!E;YRYaS>bV19*e@QC%K(*3il7<{;?~(I^7qfE8H07c5)T&qVo6@ehb;j zS2%tqgxe~G`;Tz@0fl!WI~x>k?aRx*RpBMnFM6dt1XGAcZq%9E&Y^A+yTo(eY*H!Ivnb}R}nxy^e%1#j0!cJdW& zBs;4V9wa*fh4&{r8x*dQovjKti1|z5tHu1KaAO}nj+H9hKs==I@l>9$!nJ$2opObj z-Oagng13*jA5SMcaSAV@^a%3O5n=Dg5&|?yr1>8}H*-JfQFnRGtkA_qF48wkq63JgD$n$WF1sU5VUIslx5VLkj;Xj@K)!aO)l1PPxL( z#I=)^5jQK`P@9*}qVTd-ygcI+9wKg6 zcta6C3b)?Q?c^%lOx&mN7_yVE@K6hGXO+TBhzAsYb8TL)4GIq$xt*;FFCrdPcp}*; zR(PN}w^OQcKk<;lyOW);!hN@KJLL*@5!X&tj-UQyCr;sZ`j24}6mBJMRQL$8lc;br z{Xkw%g`0?*6>cLt7KIyc=Jgt!ZXQEy27<)+)l2-%WmS_r|>+oldtdqrC+6R zKkQQ-^8KZy!A(hu?XRJeh-S>ZdWJQjuf47@z!6z(E!SNNM` zCtcx&hTKlB!ZqSPg+D9eN8x4lxt&!C4-pS2{8bS@3NNY0?QB(eka$qx8>wE!3U}cT zQNvcMa69pk!qxcJdYOqx7p3?jjygxJG{7pm6JPUY@NA_lxJWmn*lIk+it)7x&S@ zx;&kDt{`|BaWg$95ImtCPj6Sag}6`Qxx@ns-#|R5@KWL-g~!$B`HJVSqC6(zfph$P zO>hhR#C2rbAaVGK-^f-Z@wO4FXFx9!8hh=0iKk0^jl^9NPm_4A#D$0PbV3r%Sw}#9b2aB=KB{n{OT3H3{Sxmg@l_HRzr~KH0}}5prQaZN{F^ng6-oRq0b##Y;yooElz1M`O$jc<&7XfYM5;qHo`wP+dPm*|?#QRCyAo2bZ zPmuTki5n$8P~wRaA0%;;#0N{fr^GE1H%oko#4QrPPvTaI-!JiT5+5pYyTpe{JYC|$ zCGL{=0}{`bxK-jliI0$YzQjjL+%NG_5?>|p(Gm|xe2m05NPMisizNP_#J5UZ{NEaQ zIw(;(kM2Qzl+$8Zu67MPTrzLKd_%jl>NZc=RtHc*ee4NCWNZc;*r4mn< z_%eyRB)(kYxe{L?ai7FjN<3fUt0eB1__GpUCGph~4@mquiEohjT8S4){CSCQmH0Y| z2PGbmc(KG^ka&s2UzB*M#9xwlNa8O`JS_3`5-*eZD-ti4_`f8s{T_|~4HA!&_^T2( zNPMHj6D0nc#ElYvUE+xn-z0I9#NUv3Pl<1qxLM*w61PbFO^I72{+7hYNqmdM?Gk@m z;^`89N8&Dtzbo-viN7atpTxIHJYVAPOWZH(koboZ-yrer5-*bYM-tyE z@sA}Qlz33$#S-5k@e+yelz6GccS$@X@!b*+OZ*dwmr49niI+=!kHobWp zCUJwr_enfK;-5?0DDf{Oo+$AzC2o@VR}$|j@e+xfCH}RgeSAC~wAiH9U!B=I8> z-zxE=5)VrJ7l{{3{8x#WNc_0OOC^3n;vtELB_5XeNr{(9{FKDYC4O4s8a?N(1?-H( z<0O7o;s%NTCh-J`mr4A;hyV4!e?9PD5B%2y|MkFsJ@Eg%2P|{W#90b!Y-(Ojv&;*6 zV=GE5b9To?SKJldkHV>n*1y7g!{%lw6Fue_R4b*<7-$GpzwU6nIsBt-R(#7$Hfk%=OHkKAZDx7_ z>bj^+OwUGL54Dl$$57WtZD87sx&dm9=|@pFL|yhbfYy^x8&HRs9*?>a>Jp|$qHc^j z$n<@vZ$MqdbU)NhPzRXqjXEB+pXn~BZ$#~5x*h7Ks9j9AM4f=z&U7=>H=(vN-57N< z)MlpZpuQQkiRoC>x1csMef2ibx1u&MeF61ts5Pcfp>B@4>@TeUQPf7%A*K(ZZh^Xl z>HVl%q7E{>7xnF^iLAniq3(*hi0OW)yP*y+-5Ygx)PAPBpzeX%$8HVntp$;;=7j=KsMNIERJpgrp>20V7qV_ZW7V1H$eN1meJs7o%=@(I3 zP}`Yajd}=bE7MC*--p`F^a9lPqc$-;8}(4sMy4M_Jq)#hX*cTOs5Pb^Mg0Kkva789 zQCm@mm>!RM1nLr|N1`5yI>_{Ws7IkLV!9vd(WnDV_eMPiwV&xOsK=uAG2IUJgQ#6h zw?sV-wVml^s2@UYWx6ry@uBa zmtA4)kJ^qp#PlK5$*4=1-j8|`>LAm5QKz6TVtOa)RMY{cx1n~R_A~t!>NM0orZ=LV zjM~NYi>Pq|I%#KmHR=r1R;HJreiXHt=>@2#pf)i*8+9gXBh!ze&O&Wq+KoCJwZ`KxR5rn{h?hT6w; zJJi!ryO?f?Iv2H_>1L?&P+OU9jQTOuW~S?)o`KrLbS&z}Q5%`QdNb&ms0~bCK>Y-2 zjp7Wc)bmjLnSKlP zQ>cARZ$v#GwTtN&QRkz!Grbyh0ctDLOHeOBZDx7_>O#~ere~vGh}y{XW2hIQHZbi* z{WNNg=|@pNgSzYw*8Zsds6$MTN4*$z3DYA{FF_q-`aaZ4Q5P}Y5A`zC0j7JSUXI$& zbQjbsQ2Ur}hk7My7t<|KuR?8Sx*6(cQCpdAjCwU{Gt+fYuR(2MIu`YFsEtftZ3cQR zY6H_3P(P1aWBL^8b*RgJXYG$VfI7tVA=EFRE@65<>K9Q5ncj=~CDcVs??nAF>HyQ* zP_IYrXZkJFub}oZy%F`lP`j9Z5%mVtcBWUOeigNq=_RN)qBb+V0QGCAO-#>5{W@wR z(~qIvgxbKg8}%EgHKrd$y%}}cCD#6^i%^G{9*_D>)Fn)hMEw@(Ak+7u-h#S_>3*o+ zMjc?fH|lp#`7`d!pMrrV)@54DTwmZ-O)wlm!f_4}x;OgBco4Yir+I;cNDZDKkW z^@pg9OkceT^mfz+rZ1rW2(`xaDbydMF1yIuA9WCQi0MP9cc3m|dOzx&sDn)JMZF7k z5z{+S??xS9dK>CbQ2UvF3-za{eN1mey$7|6=@(HKqqZ}>8ue$WtxPXLy%)8a=>@3w zp*Ar+8};X?jZ8m=`U}(srroH&M6EIXDC)0JmtA1(kGcePi0SdDzeZic^hnhEQ3sj6 z5A`>wihvXM%A=5e?{vh zY#+WKE(#CAw82 z67#9$>%YBCz`##rAg&^m#_|!@`}$=*NOef8E`UM2ft-cEvyTxHl)!&qX#+%ckz5d$0{1~taQG*qH8F+ zrlK)J*?yd&Yb&~rqU$QUo}%k3x`Cn_D%zmvMv87+NzXZxkZLKc-Z~MerC>m-xXwXK z!EsB$J*}W=hr_*FMSKz5!CMO9RH~&tPnc5!p4uer3O@~jmKOCs`g_iq#7g!O&>k~( z1a1ThyshHEd`0{tV6(7#D@)<%R*--DCMT{0%lBK^|Dt>` za``@lnq!@@a8jM2aI4W~q|^NS@;wb}-->t_*}C3;!~ZwsYXQb0{<}rDd{@sY<b?r*7fzBh_<56|A=bfeDLAz1I=}lHl#`E#RmAhW&sank9B(*eFLaUuFj_FQRa`~bBZf)e245VzmFsMHhi-z z>b~ZtSSatYq%ldOhb|gcJao~(;3(*%R%uWgSPEm(qJbrrJp*xFt64h-!(Q;x_=n~N z8_sQE8C8XCt^umcO%53Zke#Rn6~^d^=?Nlh(tLS>e= zyDf_bv}(wX;Zn$WD_mzO7zmd7%mXXo5}3>&hkX3gOiN+++AzUc3TGBq#2>%+~7jB5vc(y;{Sq0BDPF7XrV~sG<*tg>&O#OH*!W>Y>NT#tQFhh zWpu^~Sp0$iE8^48Od+^z5w!iHKAWM1_6)?eKh%3*up<5yIA0NOf%l;WC&IpP)HzMX zdWidH%$cZvzOGr7f4WrmPgP-bG6`HocEL{{hnvGfR_d$R9xVQGMY9dxApT#vk;nh& zQ6l`oe`eWnVQ>&RE<6+35u@%JTns@EQNV&8*Ly7J*EfZ-|0h9@Q5OI!;UD0kCOR6Q z81QJ{0bVWGHK)A7`&c*&77)zyXIN)oo-ZkwPzuiP5|3FAEP?SK3Q-ZiA5x&#>zs&s zy^){d@fdhU#A9-eh`+7egxagmygY2_^mxV85mQ zIih;RA5#DPPvUPKxW20RlgHnCn#kjC5%j(dIR4t@2;}4MR*1p?LPdPsiU4ka2*IzhJ4)Ca@C5=e6i_?9dR3MHTTqz`-mO8_vZi z767+a#J2#LRInQYwBg)&K*Pl_C$X_|Fr1n912oX8q=rL$wOil-Wboe40K&w~^d z@pr&Gj-Iw(Spx-d^t_SgIX*sg$DxDT=gruv+9$K}_z$>q1$AR!Kti^*l zzwt^u0wX?lv8LfVqVxrTuV zc}J-alsXFjFbt2eaznJE-~*oUI+({51jWaG-ZBLLyO!~9)UT5^^}Jp3C!DI z0((mLBdjS`VNa3Q8TBD9MLQN$fM?ZqY&Z`e6<6vjJ^*k-{y(kIuxZFS;DkPfu!;$H zgtad?r=S-0F*Z*??|6pwuQ@EDpnrwmho1NWB;Zx;3N^rbo@|QO_`?tLbPea0!g8x~ z@Z@m7;k2W|o__zD4a)>INFx2~R?Oue_OD)GD4Yt*0vM4#Mcn{52NMMCapm^%Q@tfb$jcJ>ebw<@#CIUjrckguizD`G4iFhN0{H zb+UbBAF}nKJU@R~kB?7q%O)0xNuzOu>Zv+YxkDNWP0j}={HY{qu~-{=4jY_uA)NmC z;1q=ZM|ViLSloqC`vxoru@&&+3K(NxLR|(f7nAV@PGLp30w@eL7M$T`h7)1f98&OU zMf|@2<9Ico;5ghjgpJ@H){HBG4=uPH{_4ky3TP;}_ZkDaRm9s^`UzVh5e_^z;PVJR zKQD(%sl5i`qKO^>^@4#WG_)YZ?rV}JPT1uSPhl+!^KuS!^nsm!J^ck=Uyc&|KH#U1 zhf^Rp&^~`YX(_m3S@a}6YuhtFAIB@$EOSnjTiRZkwF4)G9Ve?@w7j-UUXK<>?}rk> zVUr+i)h63B5I-n@nw^E81F>8`Uf{<(;Pw*m4!<8N217To_=hE^@O=0njJiDj(M;jM zVz?8Jv*2eUP|7_%KRXZwE?<<71@0W=MXrc%3m0K`NdAF!hZ1ycf_TVG{_T!Ki&+0$ z`A_>pXK<~2e^deOt3Q4y{@V%5E?xg^!p9uf`wu^+yUu@kU?_YER$1sj{Gczq64nXK ze>b8T#edk!d(1BMp`~s4B1>-6bLZg4b0Hw%)jr#szvqh z9-pOBfgwJzz)>$3u%*t4@Q%``m(}=O4v{3{v(e@M)X!>s+Mr#P_`H5R7@RISd(Mtr z@-(%Nw0=Qh`tgiE-&}>itBmI>FrSB8!R>J*p7+3*EM#Be9XX3(_#N6P)d1nPAV$VFY zKw%GD{~eaN`!u$+*$p3AoP+0%6|FnM=}HZ#oxFyhp+%o(>9@~pu%$cR^Z~?JNUY7l1A6}7^nKL-Z7=<&{(ndr zPo_hA3;*vsSIPhS{@MBO;`dgp*!AOamHx>CL*Z1oy^Z*%7R)v*exJfeA?Tm(P^yaf zCqbfr-uqV1KZ|gTp!lqP@&C#{4?=Va|IC1|V*R7|al^7vH-7%A_Rsy(77T?4z!Ep& zpA#^vF#n{X8T8LFuLk#f74Z`Qpof-!1Aa)k7CuWo8B&8=ypiW`4&>ZV@_MNU-k6E? z5_=A8sp4_@NhyAC1@%F=2Lvp?|2jEkn(Cj+@5}ewHDaMv;FF>%bqvkvwvLC zT4Z+>!&+<6Kz#BUfG)%Cxwqmy_Y7!ZzN}5+%Ubc^DfU_{R2?4tzkttY{_#Dx^5E&i ztKjT|a8HQN#&0#is8R%$ahX~Xe;gi7FjvC*@hCfq51_U(%2u}x=i)bcAaM}N!SJWJ z=xsRnalqkDFiQ<7*i#Yz20r2_oC&wHu<$*PYu|1VR@i{g!I_~272$8c<_&l!8`vfU zr~%>g74|%TJ&q96e#O!CZZfoAsc65XiAlD|=kH+;YjG&|H0b=%@sG71KJOnT&i94$ zr^90X7rt9?1M-sa{SaAF{GXgrMSIK7w_Cw~fR63WKi|R6If|>id)YHE2rkmXYoNm5 z`?+U9z)j0mc;11F-d3>aWUadkRu})gb&DatAb+9)miqh*OR(@2SnXl!;&=X_5#aXZ zGCZk32jlHYcDMj$efCrY|IZXi05?6y!^@z3D&X4f==*@>G7YD*;q1h$xruk2zXlmlKK;V2toIc@R6pY zjQ1z{90L2x58*-3{xseddert2&p(v)-hB{zaMm5+zoD5(amf< zaS-|_i`cPf2Iqs{-5N%8Mf^}87_oD|V7JoY*ZFuNydcJtF*w}(-^~YYzKZzg+SGsO zpMJ2M)b-C7_zdPB`sWI)i^5G{2^{gydr)cSjUH%*t+$|5INWvsfI;H;oCnEv-m!&y zBJ*W;vW@Qs* zaZwae6tz^8Vy%_JF5nA;n-!+xDpgT`wN?ADrTS~NRRKjI;T6DY1HMqIAS&EtRVXTn zAmsl&_s%{Nz+ddYd^9t2=gxhc_c{06yDX4vlb3Z%^p3Mqgi=s_0psc^OqIeN>JmQF z7Vr&P?QK)Pe}xgcgQB~bVLWF6pT=t)51pzpTo-*_-j>&49<#7k=}R56wN?Lzw)dvc z@*(jvkZ#(Gp8+(aqMP#Yb7W?652AfFei9#xy>~By0_`1_h~f=@S@SUc(WD1px5 z$e$*m7frv6O6d1Strqcr)&K|Wy?wB`K#JOcC1>x&r2M}}zts?%N56}I+!j8q^E;}W zjeh#p@yq)_?Lp(0U+omCz|dPH0hM+ut2$IkUi|V|T2Y^2kO`Dc{BqFje;e?!&Vi!Q zFhp1WHftv=q%>$aa=N+(m7$}UA5aQXp218AVaYu?(V%8M#S+9kY_&nnH6mh2&G1mu znvUNT?mZAc2Z>)kr7_8{Zp9wUi(lTKDZfbUw5{s*Py}{e>eTBF#81BcuweJMu^;v^ z2>{mCez+7 zA09`jYqmO0+SGO?_QReD27f)ZO|(soSY`0{J5LB56n}l>rH8+E*bkkc36FoyXDd!? z`O@@4K7LO6^4s9&D(Fb?<5|yQeTjXy;1dse35nVKC-@QTYcj2<#Y7+kKgN0PF5G7;-LR~X3JBD``!D}O!lWnrH7 z!}YJ=Di4@K|F68?mi`YRzjrZ6vgFlqbj`-n0PjRg{t5cxfb zQML4WnnwY|w&ex@%(PA3!OIQV`4?7f;p6{`ew)2Ar{9L0&`$WAm;MI$43vqrQ@?$+ z9r#2sS+npt64|BU^B}5E!{>?P4HG6Q5D2YY1{~0D{RAF4Qpwt9^Mpwcl%M};JYyo1 znbB{hZQ;|JKkxpx;m`K^w~Lv9aH#x#K%Rg55yp#_pdX43YBz_r@oyic6?K&Hpy%j? zc6ZP%fE$?N=Juy)ExqcZGqk;^eTEZ^($ik7!pkqQUGpPckI@g$Yjm;wN|Wb~J62DzDdL+WsbkjKIY_`3slej9l>lHLT` zZT#IoZu6iW!wP6WwA<*b@wB3z!s8c0ZlkYyE3b!MxgNf~zIsi12yZmyI;OrW$A-AbtEj2jX*QtosJaO$uXV;}TBpPq!R_-y&K6Z&ZgBiQ<)Sx^ zSZr|oGm%9(9QT}<&HoktJdpnmqAwO}N&vqzv-)B+6qMB$=`+3=pJ#0UkMP->ZV!sj z8$R&x`2&H$e~QnOXhluNEIbH4|CZ@tg9J3%-9sCE$~aYbuZJ8yzd$c#@%b1cMdR~W z>B-IE^TE>%KD%qHWQVGL!Qk`Jmk)u@KJubn_)Kfex58)hi+T8bdZwZo_eK`Vwr$TCZ1X- zLhe9#{HOZmE#U9z-&;4df=_0B{0+vT2RK?xhD)iWqk|*$aJQ+%LP6Z1zrN3W@}h&? zd7UQ=MLym@zGz<2q2qzq(AFXSrG7NrUicqHL+V=NxElC(&P?VmRKJG*oBaHsD3RMK z5dHrA0_KB1&`ku*LG*h9lKL;g|5C8+!QbTv9@_<<^WOUg`0NuM+D`lDtA7EX5CH~} z722QNhFCTBk5R?M`}w&@fzMSGX#3}R1D{WYaSsBY>!kd@N1tawULJgod8?i9Ie}>% zl78O%sQvJHXCv?lU>j%Q(}0Z8@Trz&gntun8u$#QK;RR5&cNqY5PLBAR7v@N4?agg zt{!|&C0(dp^fTg{;PW!ty1n${7y2o{WX{6pPe^MGpYKRB0-t$5Hldk*+LqX+#yo4_ z^A{~Q4vZ(CB<24-`0NH99(-Pz*iQJI_f7Emjl@dY%U?o29~no{lmAF>4WCZZjKF6Q zqZ0nwr*-o-HR$gKK1q>72jQvrbRUiiH8F7R1_ z>6fLSA0u@&e70`(;PWO_E%14d0^zSde>3p8QRL7;;PbKY-+vE23qXelpQrc%)pqgM zPu~6p_*^9uYbX62PebYtM2xcV8IJbR@L7dvq3Nd&qZ0VMOo71X%cl)|MhYAb0-u$_ zfB!xBJP0~6@~1~z__U5^b={P2FaO{98fj+0#M{QRy1pe7Ws#1hX z`&+`k-xSZPk_rdH{~-R!F`AMAKrWuu|Cu~{_EvsCw>3SshWC^28F;rZf8%!OLZICy zp7qun9<-mp=x9H*+r+cx(u&%M?IqA|6VEz3)5EY_58pnXwfl8?xLNl=JgXEXqS@pz zM0qxzHKM!0*?klWtE~NBgR>Jvq~utobv$bxAkW~d9qTW5K?fc`9Ny3tKZo!)gzgS0 zPY22j+9@v_A?hgprGQ!6b4Q{rG$0;CW@~v7TV;Tdq(FeM@+kv^elpJ-5OVQvktYYz z>woHRO#Dj@KL2b5AIVSHCHV;@xD)5DYXy>!K8z%JTcDt&&nGC2pi@^~SH*hJU^NIm zplA3TR9-(!u39A6}Vd}V4LT&%~}J2Sq~w5wgH!@TjGC*wng{6s|ap~f|kapiG4 z`CG3HXs5oO0&g6WzFvK&{q!|Jn5;J@aF)InGGslwv!oeq&oC+xi~}hU;9vJ=CWSxs zGKfDIeGQWG{~mpHf}B16JLcrJ@M)bd`jB>IKb9jaNO03ZOOq{H*%nx4|I;&su5`BO zYRMKI38R}ZPTYj$9!JiIW+_-N6GuNy-5~VV-fhZ@2%53bFZzj=hAx3v)t|8z1=K8A z0o*}{(K0Y50dx_D0boZiShe!AJ+d0-(_QVCA4YM6ui9Cg@{fanmtQ;bI0)Q?T_npg_L^aBtr=&@=C(9wd{MRiDonj%K|! za3DS8uZKU3f7$+g$C30Roww1Koe&Hf`!URv_JhBTzO4Hv;C~8RPq5!cU;cr2x`$r5 z9=^T4yjpq)>mFqN2O+Q7_$F-v2_ccM@T(II0e)*7{QOyNADa z=*vqX3Xfl3X=#g}L+Hz2z48t6Y#-)Cd-df-G^9cVECkFZ{sC8OKunZov^--}BG0bU zW(w;+e=tD!6spPtLRMd1C*=py?|-T<&-!B)K979W7Cx=znIe)X^!uO5v)e)HLFL(L zYdw1VJ<`AZ6x~LiZCwMX-@z;sPlp_XTXZ`FMpdA3lxzryQ2 zC(ms9Z6(jP!PQ!xP1Lfsl{`D9*-*l0UWq(&e`hG+Lr`>Rc{WDg9!L)dk!PoB$~jP; z^~#ic^6W$?P~_S9O$X9LzC7E$?%T+-+hN3m$g{Urd)R+MTTkuPW^LrzTv|~ZvD6MC z&;HTi^)M{g!?%}bchQQvS@$6JKT1TivDj%@`~PT`w}h4N(=r$?u(mr@B)>jcwV7n@)!O#J?0Ac@8aDm4 zF*{_ft`Uu$SmlB7Yb1O7*;KpX#_XV_q36=SL1wnv z^dRQZzLoUQXq?SC8<>{2Szt5oQoPfuZE&uKc9MeELmjRBUV8YM?qS9)stDtCVNeI`spB|<`V;()+`kPkt zke`pe=+#_4_O-CP9`J`!xI=~bOuGvkc@{O?OUCIA`e+67$y;&xHLuP2FEV~S#sl)P zUux68P6k(B!1%hqsWhN=L$tcL8@=A1_>J!EwKlz-&g(pPM9ZU5-z<;rc-7E*d-Ivn zKw2cymxf4$48_3xLxv1{F@*LLx+sLY92s6MgdWCv6^V2|Jpj>LP!dpv#DD&g(MQqA z>UAWziT_Z_d!5g8^@Xx)$EHN0KQ+G=Aemh|ZRll;2pK~!h3j4vl(o$xZ@X{jL``9J z(Yy4%ok3vR_@nOEZQ*+e`{=x7-(VlTht1Po`{=8BfD|AwAVAXgQ3K*f6HB!;Blgjk z92h1-btnZwov}xlFaF-Ek7V9+2Nv^vbuR zzZ<}u&|lkpx;jrt-7n@#yZyU1^!F&Os5Mxd0$MNr_#|b9{x(2~TKq`-aWwi~)8BeS zpPK%T-DAMMiZY?V{r_XYeyJ7?-;htYQuz5m_#Y(x_=v_70LaB3=Y!mAe#E$g*rWOO z$Dh_1c(*V9xQ~GgwA=Vomu8@Sl1#qc&~9UY6brP+5or);xACWXFZJ-b93#c+p`A*n z(Z~~#O0O-Uhp)6xi2d<6EUek&IB7GJ|9y&QK=#x&75U!}8=U>lNRJGwwDza^$jkQY zn@+#V@B_v~k!m_0$tFtT;pK;3Z{Nk(+lD-{`^Wx*VbxxF@n-?T7ua3`W-Tus`mG0u zBcvIT7uPW&kr&;x*|$wqJ!F7zqsYme5tfw~eMFudNU#5?yx0oNGydj?w({Z-^7LpZ z>o2WO+LJ%{2PR@XhHH#HPmE6I5AMYp(bo3b z<$}ESx^{WlowPLcd0J6EY*vA>FXxkpQ2Z_XO>_^FvOQP{lQA~v39*H=v6aSLG0M)W zm6L_kHK-`9@IK%TgVo7^w4=WIfx*=}%0=mQx!>UGMa?_}I&=aiNV9wiQWzr-QOX-Yw*oyt4nkT*bC`SyvrMMS%>lGs^x zvfGHm5!T5*Q}ty~L|=xE;i4wbmQ5Y+N;Rh4^FEnwVf+~$u_nF!!-tmdJwd}E<=3my z=z;w7pf+X5c3|>A8FPdX7Id_TrN=@Z)(Yymk36 zHJeNC=b@+7s<$ajkcY=YFWs~ zUZQCCaeALBe`=Ttkln=b)OQWzu0h;%-?;n}wI|B?Tdm`5AJ*mBH;W{Gj({AW4`}1R zuf~6$FAd7+j&-tj&;yz@EQt~n2Y9Zb@}ZRoEX^?A7gMm^EUC}B;5&l%v@~>&u;h(c zje@4@=mErVn8aw*m_9M$Jk#mJo*dYikps)9(Ed(E4scGibV^G@=Sio{xSrA}J1JyZ zkJE$5ftxcujQ>_W2)}tf(9+QFNe>TtJ={YNsshobsc#XA)pkcx3jib~9x~=(4i5h6 zr4GK&t(&@7J?u$bFDkZrjGDpC<)v1Shv$G1?tfHf^>|#4E#v_VOb$uRh@?9D}6E%9muf>kHwZJu^BC|_`Lz}?9US@{0IeFieDS(FnF?4iqvw7@ECq+z|idWF{ zVJ`jCQI>7u5i9=Y_3*u158pl>F_Tu*^|}Y* z5yhB8T2bB$7_pS=MErNf;!z8RXxhA@rO$1=5)JX(Y^@=*k(PH3Y7)R^^h1|F(u#>= zihl5ZvS&bR{eV8$Byy~r-!$2zPRDfj=sbPD8t=5U1TVFn=HQsB@=v{;26mU7(E(xS zYuou!o%;(aIIHZ$r_q!7r4Sj{uR#c2L5P*Nb$2lqyv&HBGCu+`ajw)+e3pLC(0lpr z6y|{te=YJ08OsFnZ9?1GU*3|MW~v~kZR_d%5|iK05XxKBRlEp00IDupjFls^Xiys% zH-!dhu$21@+evO(DOn?p+GVB z=g%?sCF(~A66qLgbsG+X@-uYfAw?^M=8}DmCzdX%UU>*Ik~j1Wp*$Qu`ESnb-q6fcEaHu^p|%$K2WO)Uo!2xGnV(yRF0}2yy0C zHiKUSi;HTpE8>-CcB^)Zhm!ew>+hd2*Qe^ZT0P>@3a_7SG{uWI>tc7cDURq~sFzPL6QNIa7K{UnB|-WV^BJ5*oXdFI(kAQ3&9pS;-yuHL3O zNH%rc_i4}bJKV)%`ObYRB46)*6vVE#PmPb_seFyy^kvvle0Vh<(nNRwF~?47Gzq03Z=t~Vl+Z{I6(V$C>pr+9aZd~*|SSXYEByQO+ zO~i}nkg`#_Y@#U>NKvNeow(SPZ8l{ZB#CoOnLv_y0vIcCiYXH_gfj6Ati%zzY}gD6 zaH1$EG?nI8xwJd^J^tHZLr;Yck*4>9W~yr*dG19?cT}H#4!1l(VoJG&NADr@k(O< zww+(-d(IV2rKVv8X814c*yHWQn%Kv|-IY+#`w`^N>N9=5^c#jB?c`-hjp|a{naQc7 zmzLV@WhD*O#RUwdp?Yi)7fSovP6yi=E@opx^(Yx8*YR>)9=t5Gov)*jPDvrK2gedsv|4e^6PJia}o4-KEwvDLS8NN zs|Jzu$yk5Mw@4o^qna_@P1Mlf{30viaE-4nc65QAe7=rnaC8m!HzHfUSx6LuZ-znm z0JARI*>(~FZur1T%l6(;*q~ z7pW}>heTbhyQsMGx^Z57M^7O+35@Pgb*9E?Ok;jQ^lj;SuO5E%6{;0UM|mH6@;o`{ za$y2K|Lu1nqqh1>gmdjYhAsyx%3xlXc(0vUA7!2R2fpZq{G1o(j;oOFJ32n%-Z(xy zYo(x2VsS%fN!u&!ijLC;LE;9NsxxZIc1|s?3$7|S4V11ZGSswu;#~b(oas-p^lryj z`WF$%lltj5#eSz{{Kf4QrB~`p{*WaevrjdM+=$;k-WM&({tlUN(qrYsQnRMG=I@Bx zIcO~?tE}B^X~(9rW`DhP*Q0b1PLA?dS_@X$&XLp@<#*P_Kd7tus>afERlm7Ye9O6A zmQjDxv}?l2N*GF7s_fv@n|iS;>$h}@Z$7t6BXxF6tERnNt`$iJ z{Sl|LwZQKztF4<+sNWB5VhYx5{R3A6I1_Zg->Q9_BJMiyi<^SgU+_3ow6ZmOf!uE5 z&$K(@TP!;n>`=3|h6z~XeTd{p<4^W9hUl#A?52s&Z_cN<*&`!TE|DT_Sf(? zHne_APv#P=-`us!+Tg6szMUO?OfS@B*-3Sl&)21~qIt?uW^z4~bAA0=T4wE$Ia#ws z>zE169lDgJrtOMvIWD+JTGgEc+atTy(7k`Dl$Ebf-NqM2Pcc?I`SXJK7MQp*BkvfJ zL7TDj-S=q^mwQ3DV@hm|xpEF{*x9YA*>>KPP`Pb8w_%F$XRyuh^cC9`O;&sbWQI{h z*w#*785o>KMoZVeV0?u?QV|Udo*IZa+J+U)r~_z!^CNef@0j+lAT+D%O!-&Hxi-+X z3VXFDK`7+emD2nM>rPJk; zE`e&Y$q+FDqqiVN|KZPA*VSs;De^drri~* ztvgwE_gPQBMs9vrHyS7nzWipe-y3=W5%=0anZHSoBk2DpcnMG=aB4Kr6?eOop-ny6 zmSNe>`y#i#`nsj1f*{DW^MmmQ$o%KDYy+RcQ{E5JR0)G9l{bPq(a%Rf2e=`J>3L`g zf&{YL=(E_%O9H?r?4BKnF#cja_}#(9M+@j)lvn99MekKPjRRJfuMZAb9c{=^ykk|rRl`aU1JASIW6&eNOaFg>*;+FTq@^nyIz$B2Q<)tRIlGrIBU;k#2}`>F)Ufo z!W7~S-x1mRld_B&@#Vd*%YbRH|;#n ziT(Z_EkdHV4DC<`SIk=$Z$90cSAYE4q1{{LxxRL7^ueJ&;y!wB1jHBf@pPjfA{Adw z$KmpNB7an1ta~#3M+PX7Iwd%EeNDhN2(|am!;)t=Hq>dAx;|sqc=OUDY*H&3VWRHl z2j|)kr=L~}Z_e32SOZmfBn0wsOVcNWlNb5J@%j!!TNthF76c;J1u%q+s&}AfurGS7 za+-BpZ`uuYf+kV_IsY=^tkwk?dsnQDu!B8p+8>1C@L?dG)Y6e&3hMV9HgTXYFfr%^ z_fMR)-PfPHi@ug_^SeAo9YL3RM0YHuh8|%09V5qd?>T%{VcjNnM~7wlw-$C5U4`9% zvg$Y;uXw*ddWyAhI9lhj4igLMd}vF@X?8eXhl+fAE+5Z)#g2dGkF6vguw0&RF2Kax zWyc#jpdIe$PECJ$L#F+qq5gR_)ic zfgxlw{`lIOIin;P6OOOw5IOZ!I+ ziu84(%rNok%|)oMT3g1)c;a8(VcmNRZ|2|vG^c+fayRI#4%Rn!4aQe*4$VQ_GZc~g zGPV!SjjyShWBcu--NCMS&8i)n9b-o`#?)mrX6Sxa%14;H{)5BLOFrP2Sv%|Mzv>xZ zv(uZO=t?Q-dSJ7X0Vc1qJpw$tqwaAlU=pY#?E>9nM}bA(u=A>b1JD4W0^3=gdLN8nyMkjnxr@lP#wD}5ue*yhz+wf~@H0pJR*;xnGwE9@MxihFc_f?u%D#1F(n zFbE;D2q)D#?KD;R(0}4@6;B1EhwC>DON}7euwl8`&a5$Bc0PzR|*c`k56wt45H+x zy`5F*m%N$O!mKUn7vKkV1D{DJwWmCmg zmGP@Wf!=tb*h`Cbj23(o0W zWi2^99AD)Z({6akgd#s6%p%@o1UKNw$bikxTgl${B@0HeeD;EFX8Oe#hI|~~S8&Jh zObcYz!h7)J3-Ns&XO5llF4@Z`LO!f&q9$Wniyi=i~vZHXtZ3uZy>I zuxeor-=fFpD&BIKmH2?CiPnxfF^!5aL3Ud`#K>BNm~D~UvUCqmk2pKmHQNunm(-R5 z6->Z-rwOpdKPXy9V6q;YOclMp*`CnSrO^q!R2tu39DB9Aj^OW7S|ZZ*qFlrRFHIk( z@xeFoJuR^!XPLI5<|23ylg&lZv)nV|(C{YSMz>d_tb2dL7=uJ3tlIJ1Nj=jTm1D2N zbhS(lF5N?g>Bz^5SFO7*%zjeEUC7xJ-`63yScVX?M!swPrXWxy5xr<&6n;Ti?BSj1 ziw*y-^8LV0j)fjtVqM~UI$5>7q*G_ZFgNmqZ^`NOB*DM|gpc|>`oD10fK{ycw@hJj z58M6?@I6ZDYvK&I>5jKlRcyPXR}JhG?G{XSJtI`{fpzbnc{MWeQS1RM_4FSydK%?k zB-ZdK?UyI}+%K&=JC+pFrL|yKM{B|1qi~6a`OE9LoZmtHf=+)J9BX`$hwX~x)?L4l zv0_(10`H>mRa1fB-FAPiDIjY)Scw~?;;a=yH+i&Wy1z|@O55IEzEz8 z@9PvTjqmGh)$S7L?<=$tZ}EQCZGkhzVz3gcc>=CL*M=i2^{fUEJrmC<+2{GE{60Ok zNOJt?%*tX)U1fgfch~b9)=e92>In?fD=r7NSl!`@71mvUqBotEfSJa5VN6i2k4~mD zKM}l9{9IrJ1Hw!tOO|)@Y0GIAt$R~kS;j^+_wHb+7iL!m5%^< zj%-pF?ZF=x(k-(e)_Y7p6Gpb;UoqnHHAJwwxQ992^^dvC?-1>3Ej;_MiO$)?zv?^8 z_eY6M^ge7(@9wKY1!YX|Q^d;{Et5tjV}5G@;;3fN50KY1h8EZZV_LPFn6vx{dujQn zNckWPRld=7#8^aR=|vbSz&!}l^r@a+9)u~e0nvSq5&pFK2n8WA z{kKNHg33N&M@DPrMg2_}|WL$N?OLAsVmq#sy`bGbw0A8kVpMZVYwu~rME99)Ms$CQ7l^&?!Vl6liJ+{nWTNmv+ zxIVU%h$4%2Sn$o#VqW{!0vlCP=jYoO!jdQ^1lvqkM&8=)4`lo;v3oqb5C6&8MG9L- z(KYcEMNJ!8#Y;uLs-{>=3vw^M$8XJkleJF?XFX6SwXFqp`PH%4r2dgp4P5_9U8$AF z{|$xJkLW>3h70sZ5M;jX4&TW-MayP^uRB~xS$tBdpZjLu7(HCSH2jv|o92VdBFUjA z|B4Nn{Cv}(?sCJv{DCLQ%_T7LC;!tye&c>0%=QGiH6|N*INJpzGV~Z{Z}P&XvijcX zl6gZw=eS74UaR(Rz%5eoxmByz*&&+R`yh7P9Zk5SBa5K|`cW|3F}5=f{W`Qj+Blas z?BuPgWi(Fpux2~CNGv3^0dIz-A%3=Tn9}%24xeGqYIsJYrX#a#WSNMzP_I91R6pq< z{ZM;WgZ_HEe4QNndnTgp;a-f=OCcXd8Xq`=QeugFt;B^wYRN&jQ9$kIxx@>vmba>c zS;hxmEcdB?)Y5PdyPYBx%_fc!b}yxOJt4R7MC!SHj_2=4=Pc-Gq%*B(ovK(iH5PXJ z1|k(7nqMXs{&qXQECRsk^ZCPcDxhfvm5~(z#Li~nEw}J)s*H5bv7N#x+(n!+x3FH{ z43cMYLd6VVEkTZvMp{zw7w>%xmD;nT2F%~}sj&Vwo`NR8&L&`WaY8u{Wmz7SI5 z`DUK;)X0;ku{@Ry>br&K@tS!tr@|rJT5-|HVYj--?Q<&65od7N8D7NXW#%ba*U8hc zbAw~bcb7BHKHn1=BP$-Qew| zDzm;42)=k2rLf@U8)QvMzPns#Em?RIUo;dZ`73Y+b~Cx9y|=lj^+F5Oy~Okpm$FAs zF=dsytkBZce;O#3JcL5OJhArg6t+Al%@j7u#VK54E^AHUE9Pm1xvb=(N+4_LX*(jq zE$l!u4Fv%i5q^gAv8NYnVC9p3hBF4kUX_El?e>xOoej2=Vs*z(o{cfIMOA&rH2IKj z@@Z;F%zF8hM!r6-d}H4C&JNzFd1v^2L;B689%3HOO$eu*6tO_t z$;iLapmQ}P>e&G@qdwQlcge!*^rhPca&fv{rZ0WQ>PrW=&uo2DIG772TtdVI&CKFa zy+ku^;nnh{E_yQNi`ys61Mmm(>Vp0T>?dLV3c&jf;@xyA4GnNZzxy8GQqd4CRQJo2 zlS5CVTs83-_v7V04Lgmq8wz(&Q~os+e(K#Zp-QP%A=Ls3~-aaOW+_&EaX5lBd#1s$`}3OCggA8xy$qA|9!SXd~kvB@5TwFO3Yt0xDc(ZcAx| z*6Z}sz`x1G9r$;-uo^!n{fv=27tx|R8*ro_%h9V@8s8_`JS^%nryU50(mbyjLk$73 z@?_3$<%dwi$uX<#ie)BV6Lv?U2|g4*n`vNq*<1<&VMmI4*v?oUcc^#yRGVTI8=_ZM zmG6e_&L{BqGEPZLx?^O*F54}ZPnQUG2#={q#dyW{RtWoXL{ZDAo$_@sc`0_whS)z* z>NER<-NXz&cjwmeO~gOBnDyI}gun8F24}%rr5U*ju4|=zsa(RkYgWGM@%JUxi`$tR zNt^1)3Hc_JtPBqkBcY+Xh=?H!yJ~DCSy)J9AU+(G?_9bQ`_8!l<=JgB<{5bkN;M#B zv0B8E@K$uQ{bgf0MegvTxauU#Hv4?BsFQu(kd%xG1$Wy1MzJkwWW2U}Q>C5!p$(;# z<6l4+FWv_l1s~j>!+j(`IQ;j7 zJgG5V05!;ej}Hta3?^8TyR|rDDb(rKhTbfFJty}7Y|&0|;MLXqY34sRwHJY;?X8=D z#bcuo=P5;z2cJo)jpn_&!896>Mt^vaMsuh)^429pctKIbtu7{cs)N;|lQs%Qpt{c^ zI(sS0o6DjjY-b8N0(DV>oTDJtPTu`w?yEB|2&Y z1WF|cZs_q4`7PZ5V#5LXEhNHBvK{^ZWT4v6I@iT+xJzI!|F{*T%D>hIsBg6U!?9s! zPbB%nNxPR9#7b@VvdLIQmb|uba*?DP z1@UY-HlBizvxcBqo#4xP&0n`Jg|!vm>hH3X8Zq?WS1{4ho_=%7=M%}kpvbmDudP$@ z?f%#&!FbAF<>)>lZWp_O7V)7f-mz-Ynuwi?CxzYfCWqY-Gr~@fuoGkfB@Cd~M++j( z2n}&=>|&{a;{X{ReCI&k}=~w4M5dFgy!TwYG(WrV&w;Fy7mQ4A0+B-q_im|}os&zHl0=EtE z&3oe?76qO2##*&8N}01xaY;?$0pJ;W8R^Us*r$ko!VZ=2-B+oXbQ|9LiihQW?CEer zjoiq;^zU*+A91=ci_{?fIr!Z@TrwDI0hC#E`9fQW&@{2(A5$vnV$PfBJ++LvL@=7e zW|=FJJbzNS3lrTwNrxHtce`5x;5i#y2^bC@>5+@#3GHtDGT*PQa zmcKlY8AI-24Z3`{S=}U1xV}V$B2lo zOIcX*$e;K#BK4BLmy1^avo!8Znk?>*tft!z$dPaWu|h|`i8v=nY}s}u71hV!$R0K5*AY7e%8gWi0-IBt=EXvr!N=8qXPo0F+YZx}R zE2Y7BRgr(3VHrscg-Lu%d__e*66bqkC6c;N*5%M}^7++#6qGN0PQ92)$v(Xy6?I1+ zik%g5f@iQH;e(hV`j*sL{K?33b``qC(0CSh@ zelPYHBrlucS(V8jmhFsp^y`7l?m)dBJL9LaP?EKR;dk_TP=`T+B-9I`ob)E%zB^w= z=gw`WEWWQL7I5ASzFZ_QSR#MLX1^cDq1#-wkx-|QT|o>M+zxGG<(+&P)H$IMx{PiL zSG*N$v(M+ol|NeH_ClP0 zZo5^JNEj2$h&AO_Ngk+(UGhN3kj5H?yQ{K!prnvaoU0CpjM9J2@^fBx%mH4FM_pEJ zGgCxx8OC{9E(|bSv63`dxpyCuK_hoG?`TfR@Q!{HaZZUi;~5LtAr+gW*BHnedG9$l ztfdh`C#r#4G=iF%93yybIw;5NG~LafTx>u=u-Vi11|BzO;GuhnJ?XwI=!&zfbL5bh z1!p+G7h^N#h>Sd8Axa(b7BB4DUZ7W3RReTI`AVpRQVUPss+IG& zY}XT4TRm~b%0UL?-W!&%CTozh*dDFU!Yc#s44}Q*gR_9v0<5937?k@ODp$+Jc&9sK z%iYBpu=WmCGy~K9Y)fy5XBZcung`QOBA2`M1gwi?nrc0DJ?YR8&p=mway0>*l}La~ zsh$xLES(}E{!LI_T}kxRh=}WQ9Rb1&JlmirEa*WZ2}f&xLY;qcMt-DUM?RS;w84^< z7zhGWXY&VA7{EZ&e^SdX(fo+`utnYWZ;K}+g)Pp{HMV=~)sCO6Q{=)rPR$xWr)*xcB1!^}sIlAE#IjFp@5+>DnSt#jmNG9{Dc zW(GGiZ1;gcjf~2TZ>11aqrf%KtpylX%EMuAs?p#TlBN>12t}x$ls<7Y(w^q z=Jvuef^$7k(KseO?WEvrxE(zT1)=4yJG>M<@bAov7~6AZKQ0_rp)awwcMl)jA+`>y zauTJ!SVQUuy8(K(KQF(+`4Y2b^x{TBAkYf)W1SDYO6~w57q>tU*mgpJu>^|-hvdh8 zOuV=Ut!h7o1+7x(bELCVXBX~aT|NXcetnVX(G_CBd?b;|mjocJB9;)MD3Woqj9;o& zQA_SB?c^lCTI4+u2pH>EPs&sBwtgt7N&bj`hk9Wcp#-|eGGmN`Sv<08-7smgHgpo z-nnLZyu}~u$1(xzGlYd1VvrDhj&(HWko24*%~Q3SkbHe-tKJ@?I_mGDtJRA{(KLbn zW6>@d-byu=;br6*n-SMQ?KyePPMlW5V=sut*i(WrXC3~wRr?tC?(pJxbJyr)@#fCa zi{s6fmH4HU`rW0^a3w9aK!gh;4@X%2E^u~f^G4l`c*OZY0Au|_5IJ~Xh2z02N<2QH zp+&74iY^Q;k|r}P?P6ZKrJEP1x7fuNa(zMA@XrQ6W}Q0yNN^EnLA9{?a{};y-o@Us z-MPYCwsRRWW0BnE)<4DDiC;L@AHSox*mkCuOh1N+q8vVQz;!Mb=u=bE(gK@4o}~R8 zy{V^QSM6NZGFH^kkiR0`-^#*QrJv+^RrZe#-qP&zN?Z=VJ~hkd9!=Jnw}FQp0l3@Pi@%kFk9%R!A^f@h^4Bey#!iEudu_oV!xLoAlND--`vt)nA zzLD-7qukh7x2o9L6<3|(Ydc_^$D6xMKQ=s}pf=*)+_E`0Ua>_tu$RXjGj{i~qG+kp z7~kCFRPo@C^@?vPh<4AI^akHNA&bW_2hRb;sRQCx9 zV|p=1d0Qa)9POnGHTAlq%Vcft`?`%*6r9IR6Xyy~m{vQqZ8fh=*)D42kvn{Bz3LF( z?DzP0w6j+-(|qdw;i4wQkL)W6moJE44cyKi0VKqalqNzx44qa76zO~owzStR#bflT z(~-%@@VtC`%oM^$Y7nhEJMgQ?EmW(4l(c!cwwgUT(#vUV+7RDU5bYLkPDY8Mov7b( z1*l(ScMMcKX8`SeAHC)T2W%7^STw<;I(sNww(dxb3QS8cp{6vv8J+~M z%vMbGWtGfEp3MNW_RW~`PYnc$61yv{c`MUB4LsFy{e|H3WZK^@d37@VEA!fy=@-fL zA8ONjZu%1cao!@F;e0vkH6aNPpC3c*=4Ur!z13JgH>kzRIwIN|GpTjd1bl=fBk40h z^;GuD=n!oZu)+BIFp{%e;v*qv8(YPc?9@I^C_l&W6fUDx?T`d#QX|Fk%WH<5LB0>wX%R0%+RmD4R^oTk&a4$O z1kY_0dhNwHVGd!z6QW%(WXwJ|q8v;7)Rg?cQm3|EPxFNot?Edwfi9>t8(mWb3_Sb5?bx&-1+%uO@6rMGB=A+8xn;s# z)Xy*+#Fo?m*6oef2r6$W->80$sG3VwfWhh}^&_6+d##zD@To#-==x$dqLZ47rVqlZ z+EdfYssaw~Y_a;p#)yT456*SOkjN2a+x1(bMAT2emX&X_#q&%r$viJYi?WY3%P&Z0 zoRIIEaH&{!!*M6{|E11l&*vCCneWB^Amcz%4YbQ8vc|10JN(lA?uC=t>CV1G zwt(Cv7BSoSCuvi8H4m&{xu?C&W~GQ5csn_^gR^0s>ayI~fbcb!0&^)cm*OtVlT-bn zTp-&_B8F&Y`Xi}9klkdlz7VS$?BuiygCDF6O6ULO0wlv937Bt#%c20$$ z*4DNX{6*-4ooz$1^bt;8%6jFP5^}!Ab1l_D+UoJ?zj^)*F|=U3I_gjVUGJet|0PeB z3O{r7inB7io5*(F0#F2Kxnvo?Gqej$E7(J^Rggk~7xl_wLLyGCfwA?}-YyTV(##}kibkCH0`;aB) zB6~=6QPj)-(RQ;#{+%n%49nwUmkl398?|~s<#i`c?=Ob5hoADgis_T5^<)N<>UPJ^>jJ%zCGPMPT?%|tTGXJ-6pj4onP=icN&m+@%E zEZ>b-_jX$ssmtlbgzzG=9ZC!W^!BsoFxJ5Zh}hWqm;>aJiB?G>&?u56oG6>Ax2Xv7 zLVrvW9Zn?+S~JcLt_t-7hYTSb4#>h+zA51wNcC8Bl2k&dH__H+*&elA4WVCpNN-7X zp*<~6S*R<5UjdYK+fBa7wx_?r&1>C3DpJ(iAc8Dz34y~p~E$>se@={j=e#^~y4Kgn6=NgTWq4&J~NAXXH1fCtp zQ}dyK?df>gORuA67&ba+Cc3=1JR26Ot)PPD!$ZW$0!Z8ZIN3)UtR_x2nQu*;>`_5J z8+->#ER6FoS%(GMhw%xh#a+Np~@ft;M%R!Ys-mh+Rh4MKPz>($gU zRDx`W01{ICXGLSylMaR<^L>HZ(Y3mSW^msifXGSr*Q;Sf@%`&Id zRZxJpO8%!@Xzg?v6lP#0_EC!}6%cvxxZCtF_|u|S>eRJNSL#W8M?EAkXJ_5vaEG(% zs??vhdn^9XH!--v)PtFVb^Ks=31DZYi#n2bbrVUAqfrvY3(&c3KWzPL0j7e^E zLnn<1)T&i`Jm@ap=*eHu9GURpi1^u?eX-BYP9r49gBpP3A&SD6{jfL>_w45yuK%cG z`Nr~3)2Dgg+Y{bg1&ZTr)R3J6^;-(U9mn`UYQ$j$=DebC#lNCwGXNHPam-tyW$Fr& zb_{Z&=PemZo4{Gk6ShQVJpf-gA|3lA456$0dC+Zz8>-|(pHYy~uC@%s^!383f)@=6 z)^YFFqt%dzzK-Q_BN)t+_-4HxUHZBx6fw&mV6*W?b`umWi?KJkC3=Bm)kSU0HB~v7 zNg6qLu}r!cGe%Sm88C8S%$c6Fdk1PDNkLmbBD_V+W$iyLUD6+CpIN=o7Ik|4A|bBy zD|v&Hc?2(G?}fL>nbG<>VRe)oQ564Va4T_yYpPBW%9e=x{wPcSq5Lz_CIKy$^!4hJ z2dl8NRn7qzv`>Eo2LB-&_E~^$QRP37>8;F654&~;rv|7!P(F#T^3^7iYSWJ}1s;Mg zJw(UqA5t_&Rq?IS|A3I4)w`qL5diDuO0^m|YV-f5?~88o%ztCgx3$Lw1;=P*f8TlD zR~7kRwXN^1lq0KK0VX4-3*jA(|Iz-}R}hiWcRS=xuYfHH>f0Ua0ea)?5LvPy;Kth> zY{5nC_pJ~bXfV2Osk~w13+~61iTdP|V~W-=w7jG%4cD;i(o8I$W1juPG!hw?)-w-X~6Cc**!L=7yHcC zI(622~Z$5cC@VYym=p#USO=HlI`T#)CVkBs6Rr^A{J_8JDnV%f!)W_HA_k>)fGqq zZQ;dkKzo9l(?DT?!#xm$T1Y(H#{kwpRV#4N3S^*ho`H?$4r1i$jqVl?AH77ifo?Hx5 z$hkQMcoZ@%&R^NC;!N30>$VUZ)+7|(UA+(QGgzzkdEg+aD+8H4DL`b(sP*Ua0d7Y$ zBFG!=EDH_TMSfrO#`xY2(WByfTcQ(zU_#t$r?Flg=Wkrs9P;mEr(i)eKo8nZki*Fe z)O6+sAiK*v&u1;c%(D$ZuLGbQbCVTjfHdUuC3|0-Sf4zvqZM9O-`pY7{)+UY9{x3+ z%j=pps`Zdbc}uc4JEm5tCjb{c{yKechCfUOovUtzh(gZJ)Fp5Rh(Ac>58 z8cm<2dAJDa!=+IgK?2zl*Vv~1tf?u+{()~=@hqXk(s9ex#xifdo6LMSsGI37JKux$ zCmSR`w6CvwedIO8oLcl9XW8|23IN+q@4$eD>l-T1v$#hbqz_ZK(msA;3=5jmpf;&j zXk8d)tB^O6CvzqO33hrsd%xRCp62-@vp%s)r4KB`JOI=N22(1;NVst@$PPPi>P6Pm zxR)dFtlAT}TXKfrAKP^!?Q1hpf}WC>Sf=&-R<#Sl$90m7ryr=5X9yR{f~X|=Ne|hP zT8ZCE%d=LAdp|s4lhVvsq7@2#DtULc8#a$ET5&17x_wUz8k`KXr85cpFPWGOIj?dJKMzTRh(_5mH-JRAo14w zp-K)jh%M3KO`(Jym=>_ZU$|#{ebwKfln_MG7xzq0RD!`3jew8ymdKH>Vz1yM^diSU ze#{m5)zex4BjMD|=`p{9mDojT7DORwRN!1JkW#~dgKj+~N1JBpTUSuu;ib1TyDM+O z{ihz4mKlOmw(Qji=Oh8IH#6k=h=@6mlX* z@@G#DvwQsH8^2z!IF9IjryiuH!XQydf*zdpj^7RS`q~Ng_&U{{7NtQcuXB31*fY*0 z{;yL8{)3SRdYm3zH<()eu^QHI!UDZ7Z%j`MxT0e>Y`NG8NoV{wM^yv;kxnK>c$2Ihf z?`LI3>gjhq&U0m)BmVDk{`fd=oG%jpAl{$svxTK{CdVchvg5Oh0V3~Q$)}!VJDprv z1t7R8`5sPnu{#_-t}Y?NKu3Dr;r+Q1JEl3Ox{NDwx0(x|=QB5J}E{hKuZKkMEBY zDQ=iu1V-ZgPYp>NHGAB>e0CPNprt%Is|^%U;1&+LQg$?236c{KbSp{fy?W`d`PxCk ze_Znqe`3u@N4+3o(5h-wPmd;0C9Wy!;V%N!<79}7qFJAwm z5B^O*o~0Lc>Hwi?S<;_ZA8-C42Y1!3i*|{tBjTHP#Qr?Dq41t@X1j9mrFR*aPJKZ? zcu#ZGBd4~~ud+Djp35%4UU){mQa8dCdEU&#xixq6I-MAKuUL0E0f9+)adT_I@Lq9s zdej0M`SEY5MR`ndL&mmwm)?>czxXXEkVhtJ1@f6F1*dS^6$F6dD~eKoMF;0~4}F>S zBTi65tsB}myD10~2|>mNM4aX1vP93N(aTMv|3jl*z~*{&B`tEiV#Hz7qXftQ%?b(Z zGLFonO#H;0dypJdY(Bpt`+2NhcA5`5oN^U1rK&6Kk){#jB)>wqNg_j%n}#-|X6ia> z9_`iK!c}T=Tx($`Q&TS^G8z+=G5nl6@5wvwkgyYKXCVX@l%so_ursTiRXLf9pc9cU zDQDnyql`vzEO1!YxcgMeEe8tdPOM0EYl@XGr zHP@c79$Q5prK88ob5JXVR0k@vzLA^%tWPGD!ea~NNH>_WOfKYQ4i340D&Zb(?CPau z-W?cAO-}5tp&WYvM_Q~%WIL3E+jToWY5|w_t+sD(kDlp4@j^iE+pRIW2jgS>;CG2lMGv8 zoBW-AI6UUfT)iI?qtejcVB-XcBAF&9pPm_%fQoOXt>x%x0S)uWfPEv9eFvw#-;-2B zq~T%`JK!`bgGcNJSv9%yJ6@yz3i}%(L(UG|wipNnY(J;E$RAKBe>ksk2;i{p>;t?t zwp#c(0x*i~m72~R0d)EdgUHx>C`-;UwQ8THvv_l%Rl8i@^s{OuVvt3%$S*-cR(_dz z8&a9ILNIA!I66?BQyH8i6W?=qY@tA28jBRrYTC-mhhY4ig4ii93MFYnQI=C4hFC?0 zemJoy6u4k7-eotT9m78jon$FQuVk1hShbgBXKE#Sa-U-PT@D)UOGPnugjD4=)j{l} zUjWD4_$J!c%w;TM_QbCl#6nPK_99H(Wm~7M<~+4E_KW{)8vWrDkE|%A=#(|PtSjqx zS;gHR;y3zsS(n#Ky`450!S(ykwVSrv^?N$o19sWhuh-5|V*Lyb_giiJb~&BRW}m3E zvy9SR)>!>{qv!t-neMuXVV`TWLEMfvA|{tfTu5)yp0#QeIAh!Pv0t^cm@N^>Zd-su zs$X3z0qU)PZDO*Xp&={mQJDGGQ8-4kDOab!T<)++439|y6uTiVT1fuIn@g?QxV||e zT5Y?F`}2Zyz8P}ShZKBvBxXTFT*~EN{MO3j1jGR@$;^IqosQ&0SXz%%rKMJ&@*-$lCW9aC0fIt6ar$gTSYdNdS*K~__bR56tGQESRc zwp|ndpk`Kmy?h-t-4JqBm(!0NbvS1{e&uf64EvB>nqdcbZJ?Rz5>&vh+(E(J+H8^xky6#V)Q+wG8B32izw2yKg@R4$x2iMhKT!8 zU^BGJb2fU3WqFKByBJoVcLbPqNX9NzwIo5_ z!|Y|a`!=*Lzl(A-SoGW~LR2^NppGH2&>=Ifzgj1Co8HSb14Nx$boEacF)fZWyy@6!SCza|M;2Au}dgQMd(^y)I2lg8BzUXyHT5=t*$0~JU>n^%(u zYV@l)drhyp@K)NFAu#9=J7vsfYkhj2hAYU_*a=w|?o1t~2UWvtILEr76{RqaD(ixs zDLMC4kNZU0b&H+GQ1X@*BIH6$9H2;zzfvP7&(+?3`B3x6{wTaumYK~}z*I)3SzUaiEK}`**3Oy|3kj@qC@<2hQ zfdAg(4f=e1U>LiAlREiOUFVHzRVX>5#gHeEXA;0egF+74Ry!D7D|5IK`4(nl#HAx8 zrAi;Lb;mfr3DOERw32PY^5Pt8&qs%V+}S%BNnCY+YYWr|eVMMaGMp6G3=Y-!XfTV7 z!T1uX8n9;n27wWD?~_tw<wLdV{Fi6hj*FX4vSQeD3>E~wn5LPZ&SKI}d!6;O9YKCAX~ zmciM%jE2I>EeT5`O-}evm!K4DmOF{tptl`?*`B-uWSS43? zlUYXu!|QMg$DK2<)M#ojBMN}?A#^50;uB53pi4HfSAaK zrGurrnRF*hx`Ns$J$j>4ogh8}ir|YE<9IRB$)Hg(@t8-@ow-^)eIhfNupxDs=I$El zAm~nO)bCzD!Mq!y-|6y9>&@P)QeIL2ADQw}5F*VL=}!#)3?He)mj_{?$rMUo8koXb z00y9_IbJ&=g7W#W@?edeN}$K&asHP6`zS+@h-nY3??QZ0m~qrZSLp|~&6;d-5r%+J+9 z_v$xBxDfkB8$+e2mN&<+zra8{{VME>WEh5<$Y^Z)i zuBjfV#km@`og0l2mbidnvQQx2-2-*;JyXfX=+elqZIMq%8gUtKg?@tWrHzEt4QG)? zF4=D@M8<%gm-b}jP&IhF`X5!$%SaMzg;Tcw zc&Czgf(CI>t;AgX2rY|yTD23nx9+t8jRc%(ufQ9^@`#-p3gZjfun-U zeAg~Vdab9rZs|K#Z7D60^SW8|YkxU$>+bSQKZVu<_3`Gh%)Mw`th?R~AK%l{N_>WM zZRh+L?0 ze)dL{qr&b5n#@Cl=@V;aOwGzuaks46KLYvb0r(}ck&x#*GHB!wF$0^QMyWjkaYj%# zC5MmzPl#gwaERg}s96Mxb2DF~FYwqq(QB1k{f2ZGcBgF+?3*rce$e#v59&^PkTUh% zBM6=>_2?fgt=A;)F#^mc#D8_#<1+b?F0)9JNBpHn8scvjYMW>HmR>WIqjq{UGp9KR zKaZ+3ZE)n*r*t6xaetv$;=cQMmX7E3MHG324B1I)z>6|VamI(yoJOlBj#K?xwV&(% z@#Cl{@~_oLWyK8}-;8)t8e~|aR zy>IWhtOtdTjxYoE}k((ms;Y)ONc9r!-eZ(jf-RnGL<^~&{j6m?-A zUOLMq7^w}+S%B>S(e^IzQB_y}_XGn3MJFg)RBU4#+o)K{?0v9bb@k;H;5^nrv&9JX##4~eE`iD4r@*?hr{G*4yon0V-n zrQ%b0J09UNpKgr0K_6?k@v8$hbJrHzvGfl}@%eTZZ&|!F9p#tlPY%C6+eM;m-qcSJ z`D=2KYINI?0nAo(qzGN0%a}f-io_H~BkEd#DB3Q7`Cgc`hLB$Mry-YP7kJ@VqBH@1S@}e`r56YGeQ_{eQeV z$1ipYdSGc@l(|>x`{s?%Ib80W7!k+db4k}3l{ftz#6q^$#Cs94FR^m=lOi}2wL!E*I!Ul<5*^{hc4K2R)Vhf?lqPE z!9i|GJ1pwW)Zqz1_y)pnOa*q*61-cX2iUDx-5XSz%@2v-m@cTg7CVn(>E)!04w5^* z8E!s+0c`L7S8lY|>dq38UL&}xseNk|3$0{Ibo+-z$G?$Yi|kIaP2-!ix~oZ&e+VW( zA6N@c_thN##*nhioQv5TpU-G7w0ta@Tvl8|(4M!`_fQh0E84&L`jftrj*IB<9Wggh zD4@&c+euGfM&=gZ8K>R+ZH3QU+w(dc9ls9Bjqi!3pJEadb$=sr6%{u(sj~m#k3SF2 z<>=yjh!YwnbK#Nx82ttI5o}BWh}Fg{VQ8|eD)vXPOcBArJ-4NckR^j{>22gm|B3e~ z(GzIHHn8b1zkx9{KsfSKz%wx0%RNM9A7DHqdFjvnMNEMxvuB6yc{xitbsq^|0P!OI45kE|4RL^cO8EyH<5xhA&v&fZ$J5l~Uxvv+uH(Lnu5)Yqh$6%mf(}-w70w0g z_|fk;`|D0}c%JB|&6Fl1c+BcDabl^hLHRMloYxI%atXY|+XYqb1Jd*PN>@?NW3{{{ zt4p|`r2DOJYZMQzgFBkr|EQ^D4}dl9%=n2;YJoDlx2Ohl3b_cpW^?#fdcMccb9p;{ z>2EP>`TYK|cm9w1cMTWi_GU*E^b zUjGG@OZ3)S_b#;hs5Dl@e_)P39qcMAKl;|XZi zH1V;@8xOhi)yC>+0yt?W-pM8fwwR0dre9f+YEC*S?&+kPGh10z?Ci99r9=2kgwO2y z&Lh*?$}^6;z%D@TGg;pKl=cyAWEWZ_wXkB$4Drc5=Nb1*{O8-^-_!{SojQO{`CUyN z+`fsPb)#oY$lSPXH;(MWgZ`zom4gZo>a*NF5~;T{DMvXf8M`9y<g->P zub;y?e_*_^a69>E{0OY$x|Kes8^QJNd_rbn@Nbc6QR| zgF!!U=4*aG_wHZU@%u9T6MZY){P*~$<7WBiN8vsrw(y5g<*?9i1uV2ToyxNPRqxTW zgXo#qe%1~S{@F_U=km`q0Ctr^xT8HQPL}R-kiJNq)S@gne*(nlk@(AjS;zJeb_2zQ zrTmd{NuG(76R|f4_eoYTkb5lEBzrnkWOY04H9K}6z8i4U<7NlkRN*-GkT)qdQ?>DX zi;A08O8KIRa_5UB3ly&wH!$Q8->(0&oJg`2xf+oKrP@A7^vm}CJky&lXV;ADt!7o> z=CKUtJZDIjVD}@Z==>D%bLTq@>#4uVC)f(=%*oeg4H@!jR`}SPZWsApmYKO-`A?@k zk}TDPiEo3m92$^Jw_=J0CcXkDqV9A5IzI|_7U8Bj!lnDFX=Ojmv3U${QuDB$35qZ( zHS~LC;Xeap1*Y4QqhbYU0;Rqs>~yh4^G7|wiZ@@+_CWq4<0!?)=@sA2;`E|@bGpC3 zVsZL=b}nZ9fAfrh8_0iw$J_*;A9UiEDQFwMiZViT=2@K&;El5+!07xy5|lqyj-KAL zo!yI`2;+%xx(_UV5lLnDXBU~dALmHQH)%nL*A65=!TTu7eDU}EeWT#Dmn{nJXLDoT zxG$fqw2pQ5+r34#nxB&|pSpbf>`h;-0X81(LSL4m{-91{$opI#lj&qIeTAvLR=F?2 zhZv0czpXh`#76~tQ?4Y8AFrOnHa`4YmOE%`e^gRF zcfbdiEd?{;^Wp!-zYqV1Sny}L!@l7Ec31c}BjcMB_JUvgnf<|^^OyAJHs^yhxEEED z3eEhL&FH^A5HSWqLj4t{q_a2SriZDr3t_SWwR(Vg-^tSF#JR!!eO57Dea zWza3V3zQ+c=-t8yHU(3!wv6$8b8@#F`P&s|a}M=`_l^1mFIv>kV((%W-?KOBE3m)W z1Al>>A(d5Vi-^lw$D!mFoXwNjs|J{bJLbvBr8KdRVQLA6V`f&qv?fzUw!uEP5ug)iDp;oySJNOFrMUbUvJ1`o|$^S`*M`N<#WnaEDBA)NlW6F z5Ax7eCt0FTd-3=$o*NP(SI2+oB!50I1c%4HjeD5fbH)Xl6-k)K1(I+#I+2xxwVyEs zwkJUxI`R2ON!5sm?_21znvlFXZ{h#dUhp6LAHhFz50G>EkLNona`m#W*4y@feksPEnXTh&J`T>Wf^CR?U8w=#pgo) zzMA_hNX+LydF=8F_s`OL|NFD`JoDVf&e6DDRw4l*R^n8_q+J>;JInXaRj1RZXEsn^DBsl{b-f>EphE% zUI+sjJCOU>LMJ}%oZ>&_S;2jxsi6dOtinTeDw|JB!ofV3ES}v*<1+8>qYs5M1oK=5 zhWLuTXLfT_aUiD$c;3W`vcH?Wbl-UP+AW^Puv0O&-eMCADDNv1tm;XaY^MRI1$o#OAoq_nYn zus2jsc7N6GZ^LTbzXn^d=%S6pxUhRJyWjem)lj`>7TQ_)kgt>87N3^mR#U#2oki34 zJ&UTBTKpZt{tH_@JB#*EOXc=i9p)a+yY|>;P3zoeEe-Zr^J_tod5SHIon8N%)7x18 z&0uQX-9w=17KuOiV%e*24dBFCEDx&Ty+(w7OAl&q*kPI`M zvsugx1r2ewFxV|Jcavawl8srG8cK*tw8y`FOWE0{1zhd7D(-WxZCtsT~Ntn&KS;Yxe0^#}S{-8xJ^&$d?TXK8ChKTo$->F0^o3jI9NIzm5l zT1V>Vx2=wT?#;r({mW-LIObunOdN!%6(DG^d2$={*=}kjrd8H<37DQYKWA)`y@liU z%@0x8R4UC6h8o&;w_`vd2UzBpyDZjAdLmN%8C>H&Z`Di>**ad3V{nQ2_9kKEW+sAE zPFQ0y3FFsOy_>6ybdo`YO zIIa=uwS8b@;Xp>%tcR;+qpo~Ypn8R+?Ue)xhdKJQ(H&pG46nzF^FCQBw-|IKc9kGg5`+L~|pYO_CmjxaA<+Tt(mEVa?X#+P@x? z;JBqM8r;WlHLB;WpV~R5@G3S8!p3>@IAktww$lv{MU5M#siy|ccwgfc(^L&{9@lA+ zak3D^A?F9U397cNJFi7~`VNw$r}lI|(PI|ylqc-L0~`4lC2e*s&dg}u zJ^PrR1l?un(~ol3P^2(c3e4jc$HZc*+|}5F+i-WqBoeA;r*r)CRRu3DN*_Q-7f`0Q z(mMghUuSImy5en%2p{u?AbfJn!3tqlv^)L0^5pD06u++68*?y`UWz_V|2bFQsyfnt zNL3J7e0(jn53&2%A0PQ5>nq0t% zJd=*=fn7WCxQW=cQ%@UfCp8&&uF>^~2Rq0PpR?8u?zD>bq?|+aPrA)-!z-Qyr|6rC z!M4vOM$8bGU?FIsnO>avH)J02$5Z-1|K4mI$XQrDTNzmXrtlT>D(htpv5Wv3?z%|F zD*v-J0`u_;l0H?-Dep7Tka<2(Ddzfb-}Cg3cK*0q7hpjWGPmMI8w5xl$(=R>IgXes z=HxTDtq+FpZtEXvYKs$DcJl)5OU#9xB@VZBAiNnTmzZdCTpRl`H~vm?SufnILWEY< z8Tkhr88{+GWixReVhpFovnI8$B$Gm402d!YQCRejF4AkhcrEeME5 z?(^>@ri2d{qfXAxG5WzF!CVAOLV*4PJ=7+g%*sYYb#9SU2{PoYb&uH3HmNue-68bD@m)e0hZ!b>Vqi zPA4QUmshl7KR^yxaf0B_)zWk!i|jc#_O4n6Cp$7T-_EWVx~+lxN(leUu-}B~gC+RX z#q96afuH@|`{BN8e#q!X-8B{qT2>d)*9kxkg6Qevv>>Yb^fL_2-8EJ2TQ+0V?LoGS zZRdozRFLgun+=2jdT{+mp%n~>BiMQMhb$D9m=zoH#xp7bc2n70CNq8IjN^gU$V)keTXz= z`dHzXD}HRHFdn~N&9ER~A1;on`5EON@7ElkB*303{RI`-pngG~hm_~^AkPWpA+)Bt zkwZ?n`9ZZkW2t)UA1w{WT#E$Xf{N#i8-rtwgwttGkhTT|wxB5RaO z2hz&LZxj@s5`c z+BVNJ_t_9H;qUrJo?;Y3t@@Mc9qf}^H4)wJ-KjZSStH*ea4rZNfiVKBtHNh6_kH_{ z-2Qrz<43ysrwv2zMT)At2(IAVB-qA%!NjePc~KE*xM{u04>^$XdLWoNi)D{k`SZ9i zzNlS5b`ucu&MdYHhlS*e4jF{8mmb_Gf)~(CA=aX5+!lxE&b0LZ18y!1)?3@yip2KJ z36}2hpDM2MxY9%0EMn*jj+;cpLrw`dogTn}3MqbuKTnd^^pk(3?K!*Pw)jC_eLwbU z%}pxgT_v-OI2Y4hgcB#eGj*i4NBRksj&}xv#VQBSABvHsmMq-xb%Gl4!qzkMPFu-= z4wsGG<#@x3k`4Wc)?XBEYE}gt-%%_|F*Yif*$f+8RLe0s!EK?s``P69NyFB%C2f1Obz|P}AOt;tJwL=|dU%oIGds-ko)Ec`{&8 z8CMM0%IZ~FxCxska7cwGs!KMm-qln}rb8H6s@;+vK(#H78_wKr_dCHjs25k;g$mp# zQl;beOi$xCD=#s^-RyM$^ulka%B!%wZ<0Q$${UWW>nT-kq#qr&{q{k&WZI?g0%HW= zQq7?j@pN}cAEG2!kae4Jn1f!R21#_XcYsGbkNDH5%DHbPJr<^$#ShRr?(+f4;H&!n zbl30cfxT5MU%zDtF-IiYv+D1^OC(N=^tqh5m;1wQoE>% z+jA7KZYEqOtJ23qrzcIHbj*ICjWQn<&iRsID6kR?DvNFHTJFI|CyXbEmL=eaAa>WS2 zc1c7Ms9YlkTZQ_8Rd1l4?EP`lk!T}WY{g!$)q$ByRxA`hw*Hb2i24fFM3Gm-<++?= z%F535CE|@Nw0F4?MkA7Zw?|dD`a|yXDAmPD-v7yFDY>#BxqfHF>&d70ThMwC`vqhV zsjdj$yp4zOt?T(qJ-usEQ;QMR`p3M)U>jdpcLeNu9YCbHZElN&t3R^$J*F-!Ash&B z`L4Wedf z2d~+A>Rk~^vqQ+eGb*|Iz%yXuHEu6KK~s{NFHD-RvA^`@Ylyr=h3ON>c5_h?WEv%9 z^&>EJxaoLmm7J%6@7zBeis&Hv$W#89bN9AxivN_*SrLf&|fK{i3* z89BSgT@-bnVck^N{DnG{Gz-`6?)cGpin*QBzeL86Z%|vLGiOXW?P`R!5+{!Mj7`rlE?s28 zRuZ`9mz7FW-SlNn4eRLM0}abFTDjPeRLqq>#Gp2R%cSkWc7pfv=7bPA6_n#j3gM_L zX|M!zkCF4J6aX_m(cf^BxQV<#H*!X&5m1}C5ePTmsD@@N6=->*;P=BM8MR?^59}VA zvdpxDbB5q4Gf9a)l(ktX2er-BUL_yOhuk$dEfPouSV^yy^pqY2uoGGcRYU61fiPpmtst(lA3VkOA2(+ z5nc3NkC^+45{peAjp1Cf6;t7$4qK%y#zeyL*ZhN-8-+-cpApm`%GimYNZSXyP4L>h zHYN>JxLF7RfQhjJqpcW^m-~-JJl03Ns_r4Tx|rt%Ke-?MXrYY%R>IpIxwkUj?%~ar zin&(|j=42dI*?@bHRfJeOR<e={;*Xi9&D-ccJ9B5LKFAHcPWsQ3!2Ti| zAK8Wo-o>>rzEQYc8}3r|#N=lYt1R+H6?-8#^`MWMSH`Cws{oH|b?%&~kzcgFhjT!s z6Yf)ivK)ve@>78Zy<%X@{rx!QXm8eeqWE%aDB#>T37%iVe%A)PPn3Dx%6r781nW@BDR2*re4~1xCVupQ z>I%;(LYg|8O%efMTrL9UcHWH#L>HM7g6JeWy2Zbn?BLeocaaa0J2!`$|1LoxRajx8 zvwk>NY$KM6HAC4O%~`yt?Wm_#hxAC?Ca$QS=D1?wThc#}lI4h5e^T~^2*KuNm`J*e zZkkh&LGc%3b0?k3YEjo{_BF*d{Cgt$C(j8B>s1Kox~L`W9?5*y0GtwYM|;f21_ zt*UuVyw~|CNGu=V&ePSAi_*tv?sty1;5)a->jrN?vL}MK7n)O$I4EyD6sdUA>+O}s zA~y37vkYGUEptBy7c&OmKwA7LcEyh=U|5nE&NsbAzjN!Uzx3t5vlbJDqm3P>ZpjHwORp?zZywB7klE4R{3uTV&vDNzYgtaa?Xx6W=<`Aw6KM;$cNIsp zBVNXtc{xeRAXr~q=H0ILiQ77aqa>YA zafW0oo5{=}Ng^Fd#j1ZYN#1q7@O=a#!c{5iMway&8 z##S}VP@e2L#my_OC#k-Oh_p_schpIZC?sz3EyXS6#fcv676eX0db7z+eBe#5P)z0C zR*csA&1|qML|^@y6J8WyWj+aT|$*zLG;zsy{X(* z>IhZ~1?n#?Oufw#_zb`oo1>o7048_zi5G5PlQ`O&RzaRBcY_7b+-I}Fji5@Y^8{62 zUwfxpH%rdr0;`z1@V)A(tQ1*h^_6E`3unyb|rydwI zW%u>_Xy+?IJ8S%Q{6+}KInXxxJ%Z+$(ylG$=A&@`Hw0AXnW#WFAnkTibJPQ=XP;)4 z5CB%4_^Mxdl{=0={+pMF4p2w_$`TW?9l>M7u2^}UvHH%={`{Cjt6?37bpPW1jMUtu z$u*qXPHe9zybp?}Q@)19h8aaCqeSg*mWRG&MgYba;`1$5$}iV``}X~|@7-Qvk$Rkv z`obsq&02b4^ge=$EgCJ?0I8kmoJ7R|ItS>1H~IYbb|Z)f?a5Xoi_4(BAY^M7Tz{{<#c}iY4K6J^)1q8CP>~CzmG|(uAK`q?TV0`uUSVfji+Wk)5N=7bt`sdJH}KL z2uJPQRF^I1z7dVhM$-t{cXrq{M%SRFsNzp?RalA56^w=qgsE-kIes-mDu*_HMnIzfo-lL!m94 zNU`(f2Y?8(jvQ7(SgE4evCqud5F*j(wJQ9?i_W6Adh--Jc9C~?BgLFvi#UsiH=+>a zCBqd<;g>1p9Xu{APnrXAeS-bs2qxsrQ<_E>ATBV%H6g>ZD`FC zhd4h)I~Q7c?-1tzD_)?{>Re{)VPFI0l-@|iOt0>*ZIz^mkaiG}Z1IA#=?i=4BT;UP z%#keUx=9x~vCS?uYU8Vf`XaJqKV2;r{&ibL_}9yj?^BomFY-!NBNW~J2C7Z}7-BZ9 z%e9#M^pMpzV)Vt5#}yO9SgO70WwcZqO+6wBF|VWCX~1{-ir_JrPoZri2eWxt2XIk# z0wqYmY`bbPEJ!_W_vaCI!3;@NX&nkfcc;_tZ`)Or$A|UHzvTLYaP>-Zm4&NcjY5fa zQOwQi*d+INQa6{@f^u%eb^RNXbbCcHvGWt(PCrW79Ny4Fxc{he|AENCDfjPK+-yxT zT~9cRj1IR%H1y@T!zns)n^gMA_jWsOpXBlbBFTk=X@b@Bj3N((GFn=;6K-u^TKpX) zt6YvC`Ax9t;C__F?mEq8_V4Xh#JWdwhhx%zEYN029~YZy`zhRf58_o0jOJ^^>rzdn zwP<%7_wv$l(&8{ftOD0pFWJukqeN)bkC(1Q^;L-tQC!IP?s&4MsPRq`-euskOn>CUV(&3RO&Y)8H;~iJ+B3Cb&(T&x``AlSC(7;LGx9jK1i&L+K3N&L1~=Bu0(OQclYCb z)u~p~N*=P~7H&EMBt*Sg>UPw-dlf%ks2ok%ZgxbvAA4MkKNBT?!Hs6>>18-3n74#U)O z0C&zT?;R^=(#J0)lw@J@laBbNNcr8`|Ad=}IZY>G5X|_+sF=B@j^L0V0ggAi%w3gy zreEY6JyOn&Lr@JRT!BR;q0BFW`6Qw(qn~BY_%Wpe zG+J?|fF&F-v7qbCbH6H#62&F?HbzvYYySu}ZCR3%?L{fv<`^p-pwru3&=DM}STaN6 zkmSRbWMLjFDQ3qgJDj>-de5Ph8RjLW6NR4*{`gJ)aNpx6jf9v~Zg)k*UbVoTE2L(% z5?na#&kvd!N5?&mb!JV}gOslQqyE)75pQ8VY2r8~iZNP2MKSmB(nh*B=!1y+W{vx< zyDM`XavA0;g#V5tmlv2{zGZhik&ZE?wN(sRfB!reqmE;_`DA^e7J-tOSK^GXD2gPn zD52CNqU(a>j^D;F#?Y>`A_@?7sjEIo?(Q~~OAW6r9T#PU#?h>Q0RAQq=C;QeuUXmg z%0oOOr!&W!*y6Ng2Pu6mZx&AOq}XiXeDPk?$QHilam*hdA29~Ck=kqAP0siave>zx zw7)A1)maR2%kXz}##E6xuq8PJRn}KX23I0Rs|evYWbWU@wwzV$4QaCeNs1*Y(YroZ zd5vxSI0X}n?ZI+?sDqb&>BD#c&S(l%vEx2fdZTj5Jk8e;oAb37VT@ap&XpYcE_97c zV^!SI0t3^x{pl9_^drIWg@U_ps8eYPN*De|YfP>*?OzDjPkmK=k&Ni(T&Sz?|A$9}U7|5xRmNNDNAgJuf7b?$M(k1UJ2+^+E} zQ%$>p{$O4sCFvt-tkke)F)pOHvq|dGTk#c%RG8wazf-QY=05%LEJLXvG+=ms+DMRP z)-o6@J=|^XzPGR^#mrB!0rOqZPLWbkHwY<$P#^)pg>Z#J%Vm0voiUksnx^!s{`2;x^ zY;g=_Gm~X*1%H${ki>6pg)B0|VLBZUwckyBO z&zTG?)JpGW)9)*tjWC9kzQEs`tutqcE|j6qGdwV@8i;2h6Q^-nfb8*cz3w|j+R)mT z;`UdaVciEw+g2U+oFU$twrH-Y0T~VRyH$vp4v?-*Yl9-wgA}^Pg z<%a85keuz~YysVR#g&&_dU?sDAIo}i&5UV9S6tfb`-vACr}ZvLtk9CkEwm4p{x3tG zIncIKQ~q)MrxGHPz-GgGY>r|H3PG43w@O@1yb)={?;t)w_~ZV%qAA}8C(CFIp8r`~>$Rt@Ajjhue05gMm8jHpfkANhc9VA=tA;*E4MU$Xp9W}T_i zeoX9Ob2b^c{c%ABO^FR#3&{T$CtMQpGR zVe!+DP{sh}}%gy493l|}G38RB0 z_qsds@wCIoQ#jc~gYN6eCF~MAd#|gRQ>Q`$eUR}nre5W2e^+*1vDDB;Yx%S2{lc08 z!UUYE*M2nx+hVEydMv3aSQ|_A)?-;s0i#sd=tTx%;#5-r`Crf0e?7;|Q~JdUR>j>w;)@1H%0CS^pAAMed&W54&{FfzA1&Kt%8G%)x_#TyaPu#Ps~Jnh ze)FU{TV^U{%-8=Sy*G{wOBUL3`NjYExZitR;^#OVom4Qnnzt1tb2~ZG-?XI4s!ta=bO^j9AnPjxut`&{Zkn>dm z^9Rn`A3|zQh#nZ*5^H~Rt=`-WE>taEWpQ$SB)KD^`^_tH(8PLmLUM4Q_z^h16`3oZ zU=F6P?FnTv^|=Gy@s4JmFh^d$@h61bG zg5qXp=q!4-&?$HW2dhMNTE3x{FTsZq07sMn%YorOmE2^fvu08`y&E-AOeyKpI@_n$YP<<-yf>P=7;Cty_#Hvw;I!rv z*oV#Ro)|0m%(mLxzyQ!9$JC?yI(DN!x)eQtTR9*HS+jT$dHRL>oR5}C%7D=oHjk4& zSK}w%y#`T8a;zO1@F8VRp*=IVVei*}FU;!>65GD1{!WRB20x9Jf(otClt z7<~O)4r_}r8F1WFOUen0V~fbnX3 zb1!@N$%^6$ZgpYi0m*^S{z>vt85hY_p~2{%-i0tr>*@It;E}#d%v`vw(1V7vBmH;D zx+7^e*r%k|K8R|fb3H+EJE(0Tip5a+Ev5|mXBN~g3JjK9+L$LlA-2Ggzx}+p_fk>7 zSJl&o9OgN9PHt+%nZg$S7_$LstpSH`{DE zW|-&&BUDWnE-`Bv%sl)?#$+3O>>t6_qJ$&EJj^zg_9G!r*zQH6Aow_vXhV)=RWxn7E_m2>aA#HrY2~knXKBfhKzjVD zw8Nw5^fBl$J%pEFUz@t5v@eVOtB9i#K7uCAQ;ZJYC)pN#p`?TQp|+Bs^@)BK1i%t-5PSm&1lyQWIW#@HS;e=T>tL)_OpS=urw%`jdTiZT%cTAK&CW-= z*0=&I7WL^xK%hofE)&y&`cBH$CpDjy$E6y2$G)&2>B5R%I@@<@*BI<85PpQV+(ZvI zFH&wiUrEhvQ3IFz3X6qO3+ri{kPxYmZfNr^6q)DgyagX=5LGc#i#|PU1D=5!PFJpD zl9)0&rI`~YoQx%omKqUcUoTpEoe9h#OCrm!sy!i<9 zV%I;X{KRnc$&e#5{P>?-ePy`$>!QsW(|RZB!_CrPS`X`N6SW3IWPT~{e$1I084+B7(FY+|XjgIuCe6;UDcM`ArT}iBNoOVbk z+*Hl?%yP|-#_PK^gqz1xDDx{{;_Cbzx8l=(cN@ zOC|K7nRvN|B5|yGI|`|^l2!V3i0ot)XR!dBcyi(^VC1lv+$O5J0B_ zGe@V1$itFrN(hkg%c_Qq$7)> zZv#pef8kr_@kW1e08*Elzr!%OuO?q8Ol~N0udCy>G!n3OFG>zCD#*JB-a9(|8uMgf zhiL?{WTXxgo0w+<3qm$^!Es=SU5ipc*c+~knWDIXlR{xuwY zt1w<2MS(+6%!B6*Cxir&X_OOkd@+i#_rpaCtg{B0@5EXgPZ*oyN(pBOjEfRUNBBc>_KzS~3D~qFzN79L*JhqQiQi?DRd+ zUdQ^LT)=}hNW_f5dY-VvBA)b1>o_WqgJa%Ez6lL}JMv(OdHnB=^gD*qI20`pWxqC{ z3E06LrGE`{kh{&=(l1gScbAD0)7@!8c#UN7M>KLDlK~dfxFe&#in<|7S6TWDC^=W^ znRH_peK|9kJ!g@5=OWph^OU~3%lDXvcT0tE7;bvfB5#j=h?Pc%(2v>ntNO9i!6n9n z;{-igwnJ5jacV%3>~=hYp~sEK!I8! zA+mu$|guHXbnG!{V+F+4YR?zc} zA&b0OjcVC@NR`qVe|{+{NKbrYuAMM_42qQYk>kjOWo9FPX{aN)ewP@*$hvr8^0Fef z<0I=~(eO9WQ(NR!4`iV`&`DL7;Idp2XOpv(rtOjv)bCxvO=)@S2b;#sO@V`n7R&j> z8te2i`Co}PERkc;o@D-Ptl>=@W}cNT80fhj>geOVOMMAxk`c+_(6tW?dl!4UZxXR52!Q(X?9C|`Y* z1^%AZh^iMz2Lkb}p;r1M-5%zuU`^jkVyR2Bu0_%ErQs$d1iB{&B5W}5A`*L3{U!1$ z!pq24WWcDRR(;;}Tg+4ppt$g_D4M#S34~P-K6Lzt#~N0SHSRaLa*oM75XXZu zv)1l|nJ7`R(Brz?$9QR7jXP=*&Pu@Z98Aq1T5{!Tdl`>o|ffcg- zCj8RGn0G^?SbFLv`{SNf50{=8bsb2@Cb^4}D_9Svj&skdn^VM0W+{h31hFwXCnxx@ z^~b+K)e{}>ta=PkWOZUMb#>2GVem7uC^^wqKz>PDsYleVtgcJ)#9{n%lnM*a?6TlKh@#)u7CKkl# zL{Up9#rn(Hg1){m&w{xZjH$#b1k8`_XIygU1?hvJpFAGAA9)n+@E?s&3*a$6_NVLk zDCz(C_^6TnjgP)%$LAhB?{9qkk6&th{H*!oqm(ZQ|K;(KHu^uAKeGXk@v%Q$ z$45#3&&NlN>~DPZEjvDQ^t`|E@jrg4@$s|fkB?Hm-1r>zo4v;;H=Q^?SkOjQ!TIx` z5A4o4+0HaIM2*rZEUaZmo)d^Y&NzPOj77C@cpH7|A;&$;iu7jsZFE;F$5Lrb+)6xd zAH9c>M&+sP(w1>FBrAhBvClS|W0kwTvWyI{^=T7LF$s8T*>~iUJ(V$y`XEETVvg6N zXoT(NAd0b?{lZ7VcKnXijaKMzO#of0vccbRv?q(i7nIShL?lW!>M@nHBj#p*EUr`5 ziG(bV+7V2)>L-=7bI;BG*jbZGHu_nDpBrsXsSxb{oQGFBJnR2jp6l9^gruZ2d^EEqs6~)ecdj)GYcgP@%y&^04f%eO<3-puNQDgKb!X zxTD+6%8S`93}6NI^$DqDy~TiyLJ9)yo9yqC4Wyd^d~uiSJ2R z_!gPe)LGv{s`PBV=CL2<`mR>TsMRM}zk~e`o7Sto2U=2(JxZM_{1I+^epjlzWD#w% z7#^#IaXT(oKS-`GbXO_jOtO{yS|8n2+V3QvDRyn{^fgo-dD^U`QXf5 zm3hVAUueFVp8wQNIeq}~k<{|wYO7Dea&(=!?=%_nCEoQ$)uSkTQ%3Zut5Cs>s&i7r zqDY9jYKWo4lWwVH@|Zllpl-XUNa{CGdx>9M?YF+W*B| z!Wp>3OW0vJ?zC~4g#jLXLl~y5IW!o)dskX&F{e~YaMz$Sbn&qHFO=M!MBtBTytf&p zkRp0cL+<{G7G{??}Sa9LTFl(Ta=^|Y9P`K`)O$MMRR zo%hUhb|0PVM{;*Td=Z+sc5^>qf3;uVsIWFFN5fO)czZ?l3pB-2p4 z&v*ZdqBGot-2q%i+i2-+qqz2<;ASJaWA4Gc6HFGi)O!+-Sl>__!Q`8H)R?=?yBxAcWtA?3UD1D_HsXK@9Jm zs@sh~&r!;n%x@IKO8+v8{O_$-@G@VZS@_bJJ22%c{QE01_d)N~q1L-e%(R$C@7djf zx5qr4F*7f=YV|NfDp-#n+CdWd=!~2R0W^>XA#iA{2Oa}j=p+WotDW(e{mo?FDA_Z- z?bwR}Qu7d4n4)Oul=ozw@$z!qmo$$~Z2SSs&U5j@2H^|6*?j+AAHB`JlqV{h0j{Y+JAd^dIwgH~H3 zA%7LT<}5Lu<&5Bsk5E49uD8T7s0}lAx82%m#Y($n$>Q9?( zObRLI> zo6D&p*lbt1TlU&-Z(D*cvYmEyj(-tVa`;;vy0Ku}63nL0hz?nG7a0@uxL$Odg>%^r;o}2g;94*&mH(XXSf)+kvc+=1@8k=x6TgOFGP*cjoLB z?Ph8_epmmr^W#Lmi1OJ&BNSbTUVqSv$OY*_yR-%T$=&5G)R>BKPw;F!N7j@J2%~4N zg_^A zPIL#>JxQTX`40do9|9qm>A>xJ18vO1X!TEMAp9R?8IW)E;++4s)LemA22V}C>kkF}HWukjBD~&;0M;jCe)( zj<%x37zn{Hs@>(0?b0Q}aa`UThd{V6ntyV$Li`BDw_T}K{}l}?)ZBb2d7{ZrEsuE* z9y6BrD$h<(B}Xj3sYzW|TN57fT(!GJ&J5wEbD3)jR#QwY53MU=92+g;s46|QlW{}{ z;~Kt!6I6!xFfopPnD}d>erOe7csB5BjBvTusH>_#mTlIgE0SE)%`y<6pRXCjoGitP zvg)U_8QhT&uihQJ(ucwlGz!Uqe}HG%m0DkRB(l;9bWO{1;19h2%92a1!a8 zI7w+}Z#E?9U!=X-ir>i!f|H^zz)8)iap^gy7ExktfN;zMR7;+DK&8)hG)j3aN9)42 zMKGLVKFc%2Dzd^)9Cl+d=`bAGR)Pb<(H^F7w8gvAMRsCWfXYrz?MKa685Q4a;~4H5 z*Y?$h&`4ivnF?Mglfz9iK(xKY0&e>nb<4Hg%5`aENrAc(b!#fJU1EaPrB9$>u+G{s zpC>Yv3{?Gn5TZu8Y@UYv$_t5#Wb0K6d)Hl^t2@B9`3;P9P+J;n!VW9fq_LFg@D6j? zAgyHhiLYDyY5EY-%;C&3e_j)9f@|NAT?ng0L=uOtR3IbN@_%q8o~lT{3yJvr-v$VB zywl!(76szdxYwXYTbq-?>|Gd9!u^6Fla`L2b!}n|LM`4_d7)f|TU2 zS5cU3E6ANk+If&Cf9A>`yJ18eeK+}4b1djBH%UN=2`Xx@O40ClvE- zGJ=rGn8r4n4UajU^;v*ej+Z?b5*zWYFxW9_(_BCfCbQ9bJOkV6B#}5s*@$1EA8rAt zqv5JgY5v!K^LLozZ1WgDxaSDexu1F(AxwCLi7WK)V&aNk-K;HP- zdO{p=j;0>Ecd@F+jI1zmDK)v%3Nco956HU@LG3F4H~jo3V7Y3INl|QN=M2&dG@ zs&}z@L2qC2xztrmpjkK z_#_aFampx&R6%GiL`t;fy|b62AT=)W_oiv5AzuUbboRx*P ze~FTqJARxWR>=kjX8%2{2)ojpf)NXhqGUx;K~`Vl3t}(i#$#{%e!>{;h2Qhj56shw z5!$0~dH6j)-AEQZ=M~PT9~6%r;N|$BhwVCJ#?L}pP4d}-Ob*>?Qfd@?n)gKT7dsaxuZfNrs6oQJc+*E?QNuNTU?ar zlU!Ns+BX{ly$UjY5wFQ@iwhD*xUaY?lkXMA|L%BRJ^7PA1xqiGmMvoMd5)YDOFbza zTJ9p)fidq7O6bB&@fWv2vSXZUaejAsX}_BC_k05gi-jD%WA58EUTJCOD*+!jqh{vh zz4hS0o3p-x0m$-G7Uyudb`_@xaQ z87t4knLBHo)HLYgX#Z>!n~%{&UabkdqB;DIA1C?MaI1KK>_@m&SMnQ z=ia`%!+h3t#HBx)UX&&gT5D7Tft8YunSv3pamyviI_@5kGnJP> z_i@@mhI*Y9!)*01q5;G70a=5o_L;VM3X-FrB!yd6K)4#rfn4_xzI7LG{?V&RorB(U z%*z~)R)lh~gNoWKklbL0<%<*VN4zr!=rEim>;pAf)VyN)SJExO+q^n4GJ+#Zb@`+L z;ajdJB|3f?VnV6n1!6+DEF>4x=m8@JdPUIYhMvh!f_TE)7WIfPO1|GMx#6>L(`Tp^ z{Vija2k{N!>gpz7C$apZ0XS+v1VJ_1LOl}wy=&jFo7wK>W;6l36>4kS-CWNbcKZd< z@;4I81n@weq(EAm&DI8b?_m^YNk3;F|BjG?VI1QTY+!>36~Xv97}_KoigEtB5M&_V z;_TyoGH9Exs#!1`2(`v@p$eaEc>RcXdZd+FL-Vxe*!4mPin(u@lbeuDywiEKIxat( z&0+f5PtyziH08*ZHapnVMZElP(vbP({?0dx`&+3%=j&c!>AXICX6dU(2jHYy#a_(c zj#U!=)9f)Bo-z%sS;zuyM-%vM7*+~v-&pT-9|)Q->rtG=pGNIsH~9iE*IUqw zCP**?kV6)r;I}Vd(@Xc@Vn`eQDmFuNH=tYX7>9EHeSW)}fT!9!tx zb_saJ?$@h=@8;uj40^E3z_Fpqoi!ElNN# zII?qzj31m`0{#7$cg_Hm%C{U##z8CQhbpLRJb_Y|a;rmO%>fezMz$4}GQ&O=5>uBi zlS2oKO8CaNNg%vmA-W3l2Y>@nLg8ItkF8>%=z-4xRo$fw5QAL3iy~ekG^d2wTKTl&7g(Uc^%qLe-GB-%R|oiC7m<3Al}RI8n_?rRF6;L&#|Rm3*sP{AkTJnPq;oOYn^>OyAE#P!Hb-fkqRVzgs>9S7VfYhL-+LE?;s{ zL8Sc50byPB0rA5Dtot5pAl&>jC%z^Gn2FdXi%OE7KQR&R<3Mc9fv=gz9b3;7p$^ zKa-7lvb->Hgy<8E2(-n3oP%=E$`O&L)-w>9|AC~Sww-ncTvA$+IW$||tVLTXIpol6 z1?I@0@H^^hsRd}t_W}@g2;~P^84VrJhiGuahCwEGmBhcE+|?_-HM#4s_=l{I>&zfH zh_25`tfP+pW;o0tvTa0JQR3u5YsF&A*G)bW6C12N7W82DngaNMTLtTFD~KN^u3OIP zJ^kg(dFBu74KpikEuXUEt}5RcZn~7VBgwylr}xbEMu;vj!If{SmZw|C+YH2VZ9b2u zK}0CpXeQB*NOEaG)sRa{`&}1}j$i6syR5LeATAFDISBvrY;VJ zj@&k=ZTl;1fX&$wyF}zSmZ)lX8J@H8Kc%OEV63Q0q>en;^am8p1IfdzpJj8<(a+#{ zPPfF*IOnU)I(QxEc!$^DM<5&o7aSb?IlS2ngZ=83#1DN=^E_G~)mFi#jy8%g(keD{ z!IQwfA`GYEJQ|4Ic$CTTvRu0h)db$DeCZtbUvhn=WT zb~tUx*_5;ocV{1N;lan;-@uB_5E280sqifiLzrnSpBW6+*YK_K`B%u{`%WYMm%P}D z&dgTyPiBFyU(p%NM#d9(dzp)XNj{7SM@7E9p*MYEdJP!O(x){Rv~iBCfQNaa?1vQztvM@=K05d;v1=9(f>n}bV-HG`zrF!m++s&LXl%I+#}H2+@kZH7-%hydc??Y zm)z9PTzj1wttu^XQgsEaTD|4X()3NTCQY}R)K9SKyS$wP!F2&XqU`^1m@YDv6ttd_ z(eh1+v`XUj>x{>#_0+$rW1~_-zh{1MW#>T%b0HKhAW+3JWwr}YQqf>=?)@L`D(A$0R?>IeW9)ag`^z?)(BO7|QO~$1#`bkzrA1(- zQy&3lf-vX7cqWH6P(BoH`X3szA~rNI+8&J*Tli0lLfs78&(#bw>A(m;rG_PWHIq)) z5FK|e&(ZR~Pd#eT+8Uyp9T81kP|8X`wV_NefBlIb|M!@8(pPOAHi{(pX<>c9p5z$B zhz*0bnPV9t&_*Xa9-{6)+lz&V9j$iGp&gM{cBi|<9(h7!qUUhauLb%TX+=hhqOWq2 z!ycfDP<#?n+)a|=*p#M*wW``t6&C!ZdVb^w7W@{Tp^C{P0Y357;mZrZp$^`!9B+`r zZ!~+J?VWa>vUBXrWLamPV>!t@=TrF_{~-273SX+ivnlK+E$F0wYtb{TyZz4DuG8NA zpMMmh{0=V3p0~zQrQfqBZHJXjzXV%?FWXV|o)}h*s5(eV5 zOa4$`=b7jy2ocwnN*J4YZFPC}~$}P6|{K6uNSt zxkgja${E;{GAx{X6o;FCr7TZWm0mCH_3`iDSXDYjuhV&GaFU-KGW9fjs=C?SOYwc2 zH6$)!8==l-H;sh!VSEXvM;EIPv0xmc_V8eh;9lX5E#ky)Z0`x~SOO`npZqWrHGKq} z)TcMIb&AhwGk01(+=@Wbk#Wt<*W_Dcq5l~(SJF3XhS7FoIh&U*=oU!2F6bSEZF>ZS zL}!*WGqg_qH%mSTVI1;VdC`4O%S?ZG zvmsi0gM-=RwJJNaz5ztf*ffWPy+Crj?#B~vUn=!ebrr&U0l)KVCzii@?RnEr-&S#c zx5U{_vY{xHIKwI5GPU~Z6U$$f^Ge7GSED8KgFT_sJ@vRU5)J?G$5=JnO<5?s3(EgJ+jF9)*)DUtpnIom@05C32|K{Ijedp|A}YR|N6`3d z1a1Yi{JU6rLw%xOroZ5Jyp~45vYlHUcX7<&YeU?SU@wO;FVO+!gMXeYlbP9M&%<() zB_$>n6Q7;ZX7hE6ym0ewBp+=QS3~*sWGRrf?#Gu%H2kJEXcWQ`_m~mvVl^NY_}lVX za`N}QAvuNAtqi%wLwbOKa0`9n=}NfY0#@^1R4}1Mr(7b4z0MxQrFw$ho+o4ureCHq zXm6A^Z0Y?0aybGsUfj01E>B7{S1U>WkMOikWcLKw{SZ~m9L6Kvn{Jsm$=OAr=-V5y z8qC-vp|%VD`jH@!hlos@4OSW`>qkKlY{#C28?uWOy%4Dmym#(zB>-jV#=)+fk6hf; z;Qd)sUQ!Fwhk%(g{15Z&k80^%$mb!o_2H&_Rk`al5T$@UZTT)ITt&?D;q| zlV5ngUzqi7or(;(n8L@X8W;Z(Z(2Pj;eN(x0NN2pX7b-5wJN~$>Dlpq;a9Ud@p0xP z={u5o4{nYP;1q!GF>9P5b+mDI0HEUydjhgYha(%G*C@rs;<)Nq;9U()w&}xN{s%6La{17HgDp;8%h>E3 zWbOr(xPD&lBv~eGl<&kJUJqU^1GO@d??J!H zcjC>}O>G*ZVgJRP^IDaR#?Y8UaU|r_E-0^T-^s~TwUt+>Qz5lpEK!3 z(8fn;)Gx5b3bMTFyHHvSxxD%5jiP8ijWeN}6_ic{+kBK24iA3ww`@rivaW@uXu_$t zr-YI(!9)7TR?DJ}Ba1vNoui;KQ?2K~)aPbrzK3|vpfb{p(h)dwJ}+`0AX zH*KYj`j9QRX|^chh0Jr=gta7O$*{hDFEX6bNroC{CcwVP@GiAs$?y$5c$V6nArWZg zT04$RLvL8UZF>aOSemlNXjw4E=$nQ}HRTiknf3W|6{_|L$R~WyXOZqLDy1)V&XBWd zRDle+0F0J|J)d;F`g*U$pKfQ?yOtevPB%5(bR@%+K9E1&T;oVk&<>oYf)QIonXss4V2V+|Q%3|h;&S|$#O zK*l}8%QI5(lR~lM-}hQo$PBFaWwdF|_%*SDOw@gY8_O_!d3#H^ z>34JuLr;m3{WL$$^y0(V2TYk*S$^u!1U{?VBOT|AizH{>LB;~~ZY)B@sCy=|`f-PwS>rE@Z=~Yd*S@bsuM80;bDQY{KMc;B?appCkaj_jzts>E zAH-^BV_NTGPs@RS`KoZ!4`JsK_jz%x?W`%mapPw5J~}5cpw$?X+C}(($Y`V9K0^ce zzE7Mns*a~_jOsRN;6%@kT^n}b{5^4>{_UgcyxKZKdQ%JwKmL}#7`|EJdHB|Q`3r~S zqB(AAx#15=n>ABuL{z;&U6?ve%8vt3Tw0y{W#drD7k4V;38D=6B7>*0LgY{@L~;fs zs5*B*_C!12msYC4N?Sd3KGK1FxOo!wsDEj>+-LbJOR~LzNBrq%-@kogICUI3v~17i z7c8w#AmrIaq0@}{6SJb#+QdYFb*64`62TUJP|oQ|q8raSkQ=}D2!#c#7KzQ1HjM0-?F zTFC*+#s_!_HWBb28lQ*Yt>QY{3#p%mQ%F)|Z3=Q2Dyg&I|c>knsSa|JaYq0XDtW}Z9G+sHFi3OO3 z2LZaDcgKCjas5S6O*OwusyKIgJr7o%sjpAh z*=L~@v`rm{3FDPk%&6i$uop?6Z&TQiX6wg9S?W3TMZL{8nSpTe-f10F<$D###;vl! zRvdVrbWSJ~dsFUVRVfmnS^2$6S1D{Xi4UzY+;23UE$=#u9;Pe#lf|=JSD&6@VG7{( zJE`u{yFXK>)v=|2PZ{&zPjd1X`ZjOaq&o@%ubWNBunc$q5$|-T!y8tY`?A`8sS3VG z+bI2$_OAJh7)uxS(GOCVgW%M#!^v)1U-S9V9Cn*_M{D=C!9M!3OZ}IO&i2s*4I1AXdB$%%Sfc5PP znB8x`G~S0R<_#N@57*KAhO5Mft3@X&_z=2!{jCMsBviiiz9&a}=D&^&GR6NA0N8SL4!~v}^8iyA_9o4WK!4+; zt}Nz4qKk_iOlSILzMsEeIhwS1S#lcif8<} z-obvTgpdpU2+dJUhuSLxqd-OP;mnGVhwYWM>T0mb2MsNH`ph*z0L~G5u z#dJp2HNLaC@j1l;kx`SmAK1NW>=v^+kFh~`fa*Z!QLURpkX1JzGdk_d3$|eV8M&Z~ z`Daews>2TSYWPpESS7xzSe-(Sd2^zrWA!7u8Y)!{qa;Nx7z z!TG-Q`^S!Hs)BZ=9l- zGhx`)i!8Y#JmnOO0eY&t6P*Lb5S=@@o-@B?(Ns0Fe(}|P{e0vgT{oqcFP?m_HH)}j zy`orAbo|F4v}0_&<_o(I4Q+1s5pMqU|6}jnAg1m_Qv0f;+sE965^njzEHPN`B@f`KiyS?AG)w1KY7b`>G4kX2@A}mg zzTTYf_!m_bzU~7e+q=5LEzI(1b8Av&Jhwb*&K$%CaFjzf(waA^z-FRA9{?`YC4tFD zcdC-vB`xR4p^*oMTO~HOH*`zP&nZk4F4lE1O#@us{V1Q#L^=QW%1)}EDP%K2Lz&dx zCV`H2pWi$_2qIB(kLusyin?+sLY=cS%szv9(I%ANoibW9(WY#%9E%6_Ti9OOgSt@+ z+;x6RTQ3t`8PWaf0vnxfkvGw4W4e%Ljuh(3EE5%nEmGelF4Lg!lv`ytjhfQCmh`LS zxT!5)92~o{`R#M8Csuglrb^c~TDgm^2glmAkzv0O@9;Anl(BQOJ#fUS67OlTUop0D z>xKA|rs$UmF*ojY$E}k{+SE;r#KHO=1$eUHZTNz=(@XWuZ|BC3Hfihlmb!Z?4B9CY zZ8kAv4meR|A@A1y2<%(Db#!sP*=5etd}7}@)6TwFMkk&a1;OZ?5l*MkW18SGn8U3n zfh;hGCkpJ*(pQKYZLi#x-MzxCR;?x+Zao2Sk5O%WJ))bOh)btAO5H2Zys5$VUI~0O zUk?EF=j(w!5^l=LBQmag$GZ_GVNz;lM4nlBxj2SdhdKkULH%(W&em5J+FD8wr5(L^ zzu<(6?Ka4L<(Azw;a172pKUW8zBNyk z5O9z9HE<5qQ}C>q`@XHm&ED~Daq-8Od-q)A_Cw-#+8pqnTKumZ=7c|?oac4mwd18= z{wzp7cps^zUNJ+1^@Kfam)eB8U^R1iI#th)mowd-zmO`5d;e7Pt`4n`U8sjRO=2N~IDA=ws7w5*$lP=RVqw`qY{?HQeOzhg- zNIlz6qmXq*$za}L`y!_xF*%*l~BdM6)xZ%}D)&TEb=XnCKzCgpEj@(=3>uY9%5 zp(1_G&jP0zJo%iQJC3WKd9gvfBvd?j%nTlD%PHyhL`PrEBi&ApCa&aq#58XR58fGD z%!docBf9|z%g;x{WBwT({29BTapWqzwLFpAK?j;lhy2hhB|DjtT;hu2O0ogQZoL0C zYjwr_jT z10RV}yXbS$hGb`&PR1;iV;UD2`25x_#msRLW~z{P0{QA#63}fQeoW)i3(>Wu;}tv9 zd-6hhIZUtPr>-8gXGWGf5?Q6O>*HvF(;Y`XVJ}3FCVynQUE*zX?AYAp zI@s)1+zf;WSG0#^THBEGs<;zH(m?jQ9v?74$<(_WX3Mpr9Q+K`#% zdQa)MU%w8}@_2}qmXLA*HVd?0Z|ZB)m{MGf>M;!t&T-HdVbhoe)_r}mAb-(K*Kao# zW8LXn6E?oY_1lb}F*8JneaG~fc5~m!8f9%7%eLWkf=g0I9qRT)zBU4VjEnTVv5ZRA zMF%I^l;w^m7&nGkb2G%_E%Emqe^+~%qt%v!B^RsY;>tNAcgE`uo;0=Ps@z^Mq}ZW} zdqlD#1HF~_K6?U0xA-u-yBho3no+n-w`8DgLIIs_`LuUZnV2uf{+{ytx9??^@q)ZG zX==wK#J3u0A>DBY^XuYu#8lGmz>ieDT#p$$lOX{Ah`Rg166T(=X!2IoQ=%cSBtf4u zw}V9!i%s3Rh(@l9Ka+KSqhNAL`yUpNmIQaJMaWAp)jPB1TchtGRjSIw%e$WVR=lL; zDqe;;mNQMcvBQ$1w+;*;kDL`^sOlVGTe3<4Mf8^1qy17{A+7@ zH@i=YGrqE8OLEK%CQ#irE-mfW-UMO#?6t`@e9P|k*l!sg%}f`ji?q~7y5Voh&y`#| zcfXDt%{`?*!lj{>FaB~6D-<;G-c4^+8cxt8N`fUWrr_kjuqclsy>fUd1g%s)6!ixo zR(x&=TOkCAv>k(wt|c^|P$?myEF({CVOgYj+$pKQd6)Ge_Hx3y_S5Cjc-Lwnmuxc* z7|XJFm;cjNOStuZa+bQApX#N_YlfLyP_#tJHIZ80cghrc7Nz=Zo2o1I5}v&VdfQ~w zP1!(23v?aZ=UkX)*>Pf%*l@ZupVNH{OtOA0B(*@J&~K4(;3cV^STgHztFI!>yyOpt zp)a@gpme&uv_DeRyip9XerQe?&5E`^sxFnDJhkQOS)BK^yvVfoG&Wsmj7!X-lbZ#m zBQ2?n2;mjU~ zi6=O5{t}(R?kP=+CLd8}bk~EJ?=dhIK5y+nZz<8Dl#oi=OVf!dIee;^?#(aKLTx)c zDW(%cH#MYsP}TPzNzS!h6}vn6h(db@ka?F1(Z^S8GLfo^Gudm!qXxnJUaSxHi*o0f zcP$fQ#zV8AbDl8!#tJf-iOf5M{YLYpv|z1S+L=A*Oy$FunD+ONpO>7#b{7@)`GK+1 z%rKxkB<{stqr|KNqBy)%IGzNY??=h{VJziXD6)7`G zB*#omtmi}3b=2qQA+j8w8*O>aWIbNFV*hw~Npeh&<{j5=8mosG(4g1t2Z<@sX!|Ye zaI^iLpBOV0&YUoTq9YADroCSiiBy-Oi=JA7Up`l8ta!gY1bGJwtf~Ko)i+bA+59nc zUk)KrH(5PjtRopD`>8>#sHHTYoHjXcg6EAZ!jxH?zLCZBdBsCX&^7`F`5jQKx zRlxB(Bas}5L!E74fsP$nam4IHkd4AFs=xUJYrfCMvgBZ;rRyNtubQeWYm)I9>~=Oo z?l`E!k#f`NZfMB?-9PqjK>XH`;Rbf)F?OP!7E-Gf};` z5taGWP%w6$O1z?-q#oWq1_yG7+|*onunA{GoeirM*#;wII{AwI#)rWL>(NQ<6EZTSreRoI^A2>y z=g)D=*yb&{{`TRW3~5%(d`s2Aad-Y#qXd;H&iA6EY{m)EA+KldGe&0D5n1(Ll5vrl zl)OG%nGqg*If4z4ISKqtx7Y>p!yzcZc1ikv@Iud;^%6><{jr0Fv_NiulH+7bFM|-o5kBjB?hynZJ4py z@gBg*D^Z0JwK%!b9C(w2ac;6GhoSYo;jd-*MPeHVZITPydU$W{&u+jaIrDiG(*>au z_ReP|Ky-WYStIc3SZrz{sbu2wenvFrj%hnTx9zf51?7itdMZEs(5_Sxdd55RNn!Y* zH_g&%*ArjIxccg=o}3~h_pAhoIo$R`>}z`QqpixT>ElR%yp@~zU}5?fAI;oVDqccW zAojoD=;1FS$uZ?s!;Q^FkDKvVka*wwbU#f9Y|$r2N300sBn;JackeHdH<_FGREL=< z06wx-t@Z`6H9!|Kfvfti;V8 zmc$dy&qZu-wz9&l4}$9~HHF*ssh>GuQ0MEo+`M6nL}{dLp*I4Ik^=iV)5uq0vPV(k zxdOz^do+zp zg179h2)EvVMO!{krN*h5mi7)s@rOw6)pLDywHy>p_S+>3mUz6vEp~CQDTpGDcwAE zA8s$Cw#%L`r*`TwQOQf!Xr4Hj)=yelQkOk_JWk8GSd4{zk4;5A)HOIFP-<4UE!=xk zlDIlwci-?aimfE>z2RD%sDGE@2i`>#s4#htnwi&4-NSRVLo`eDSZmvs`O>osbN3(( zk7u31-96~xBzCiff>MQHOX1d22%tTKb?Vo6@x`PD-1vd99=>e=@-M6uakvvRJAfyf@AJz80l8zSx{+C>=@^DKM zaqQ3h7)^Y{WlFbH@~wM4I}1zqO}|j|Uy3gIVqeSk%95~$YgeA(f7v0 z-wRgv0KKL+KUSbStjLt(RPT$?R7GwWaxx4ao zCELrIUFNc2yzqRrt|XLidl!?xX_o}|e^5^=KJx*Fr+nQv3IWe)HWx5Z5Si$M_h)xE5jce zI`d^jX?gFHQR3v=uB~tHnF5z{9snOiFBxET@!}&W2^%jPlxCib?|@G6TE zl<_C!7oUFq|84wVXGdn^-!B{G$B#&}ulV)hKT{gsCpe0wRThTvkoc!=CFDC4YoG#F zy##nVWUF-6>3gBIaGZ)4oOg(OzD8WdB;StXcq6x)E zQB_k5xTp$NofE$%nUhzLxSB5oMP@~kHL@2{H@chKpRuSUyqJ5lxZp3;!3E2_uYC^f z-T$-K3KFmDJQv4fE&q6HH=E%bsNtJILG+#gp%lG`vFNp`W}3z^n}?j|_)GGUs-Ydd zlj#ZCk4HaZ6Rdgoi_IfWW}V;f#zsDp(`e*|d9Zmwx0B-UxmU-d?F;tvE{1Vw3D!6K zizhm^PI}x(r2E=h=eyJ~R1KfAm~$h{-Rt5*&6ak{m+9C*??qMp@9W0(bG)0*))%&oJvhpo)!J77 zqL{UtZEh>%w7k#KA?s!}Gy!%UVD4)80aEL0@e@4r4c6R}5YIO+YQLwuaNqR~A(h02 zj+#sl^A4sMd`4=o-9H`uY+Lj@Pp%H-lleto8xTI16JhV_j@a*;0ne(i1pk_;(%uZ) zaYhrfO@vSQ-aSmS5IMM8!9p^zjW`+UBQhghGhfv2G90?}YVzTL@4&H*9NqH%AaoF! z;5rqN)jVeoxlqJ?>GXCmd~`-ywcE?GknTi0XoGho(Phf#zPFjdVmFY#@$zSH`GMlo z5^QEgE4`AD{|GPE@|M@|`1+cw&e&|6ukgvWIC-`=49-KRm^J)qsT-VV`WyLN^m&>- zHJ=Ud&C&H9SBm6pjK1U{iY&=FnCrf~MMpjx--di;R4j;)66Dwt4CW*0QZSvzloB;- z?2R2;oOra+JB4AT`YM=G%yAFbP#u^WP&26bhI1G}vEwXLZdb6_(B@GGhhqP;KfFsa3Cqt|>uc%Kbc5;@0tF^Yc$c32XJF- z_#t~gIsWndAj`qMJ(C~1KHMj-*7=1TEsJ(Dgd||T0$Vf8Qpk_t8A3h*k^#pM^h%Wo zQ}YJza2Mikh<3=afknUSYx~tfWW`>~=Y2J*Q}HbSoZ^CCMsVdiYk$$y-xLy3+NIw> zA8Y9G?D}olof|vI9B7CT$bK!_?zhJgt}H$G9Ut{Knbz57{h9onZrU^4_Pnd*uK9h1 zZlL@=@D21$#LmFocYa$5)Fr>)bNQ|NhWN(1^d@}+{RmUP-;myMd#ASw7N-37{)YHw zpJC}Axh|Pi{$%$X`HW>hmVL?WdS)~^RNaS9Eq2()FJ#jJ!W1r-Q0GCRW)3trwl;Vt zjL^7f+0C(L?d)j1#h{d+xPwsJyn_urkVi}t*OL#sBj2%#IIY#|L$n>g$r?+BU!nTo zR2KJAbJh_PF3tbYd)JgdcAVn}h1udnx%x7>H3GnfrDl96%$+bq!`I@6x`Y20&?*KK z1M{J70-8X(>nc#z1qzan(|Y)ss^|q;x#MN;)sda%52unTT--hS55OSQy! zKi8A4f3o`koYYO><1=7V-lZq7rDty_Y85j_SIT>bk1=$(^NQQA9^`#aARLzzC92r# zo+}=dYfHoU(1{Z%WP1CXJ{Nn_yZtoBsN{(n(ONWL`A5#~oP1o_mto4WYitBGHnb0)qI`yZsYr2IdQ#{^-9~xEupJw%?9In^rMty;c z61TrT_AWCEbZ){Xu1hvp{&IvFZ{fBJ_Z9!&Q0olhC)ytpEnSpbis+jyySv2(m_#;! zrhdF<9Ipzy_?084W_C&H7kKK_;Vl0@kSf%8+RhrLOZf~x`OMLu+?#H8809J1{Zull zf#XKhn|yaPLkW$c_Dc|OnrUoWTRPj`-PDmCXCDOPOev!a^hKxdmEI$#unohxcT~AP z^y(Pc8fq!}hmMy^^6(P)2*z8m?KwQn7p|AcStM(gXA6cY{x&q8h%Nfqq>F#HeCX;z z1i4;B|EK8s_YTrw`dp~rj8?VCCBz_q zfqa!bCzYZSg7TWGKgYY*t*Y*+TPUOb5@;6U=B@|JV?QQccDc{#+6X3T?sFz0%VNF@ z1M0k^8$X_su$$}TCo8WMw@D!);GPXSJqujnGWjo6e^+DG~7Dt}w4h zvpghT^~y{Kh_5l58@w{UMq(J72LzO=wfT7JrA@2HZx(~&&av1;*g5O@@2^IWC6qc>evI2jrVhkIK}5iI{&5h^ z2DSG*9j6mJVZCicZgY3%Q$NKwbtrVMl8*0Bld-duS+i0{%!%PkKwlSuu*OWe2hzM-WmR5zk0R>5 z3lg7lT%hfKq9SjrRCx57R2L))=5giL>~bd;n^N~VB~Koed7E2ltoMoKMa*SyY6rgI zs!J{nFK&hB5RJ|w6oQGGyGDm8iGvFBa#n|IDvR>+o@HWKG%K&yC)d(BiT3bRU;O*? zip>wH-l6Q7hR5+6SC98*>e1zJfUCz@%2_Q}5?*imJI^<7qnO?&bQ9%M^IPVzk>fgb zkJ1WtkCA7sxTIT%$1Z5kv%#3zxb02lO#HFEUol8n{+p~cHg#WsUvi!9*lNd@_$9qv z?+>`nj>Mj|cfmd!tWtfqm14n??m5vPPbGGQ#M=*iSoB+M_Q> zm_vB{?AJf-D^Czr56m*ozHnE8BPe7x+JxlhVb*V`Vcae zrSI8wf6jhS;!O~waPvhn@v<1N`c76kTRFdCr0;gBre${@t7@U`ulO;kGDyLE=iM{J zl|O70h`GGcaz^i5n4y@;|Fvx2pWWn^FAs@bxkkBTGS|R(;xB0{En>g^ZS76*WJkBy z_~z&GIpG)|W4OVB8O2evq%kKB$$7ZFK_&;yW%dqc{ z>Ei`f)#7NIu~PAimtLCcV(&?vsC@wO)L9@~nF< zwnsS+p{JLFrKj&k-){Jei~9}3$z9kiU(8(Btje^KV@D8w_HLfW+v;DEg{<{;L0L)r zZ#2Q0h329OQ?Yi_Iw|>cVM|876>e?D5_NjI$wzL(mAqfmxBH|nT^s4_dfWNR7quRu zgQXYKa-V#)%$>uYlN8zS__jQ>XsSoIOA+Z$-{1HScmHzP+poHhqf-k;4BwUBn#n`F z86}(5qK`BnHi*To*-f9uB3%=kKVH&XQ_`{t$}c7PlJ>is32VM2&{@46DYvhoEy*u& zw5=n$_`T?9+>_DMh}~gcwMPY_bbvve#jaJOiDh{!pbUSl zc+u{3x-VA-{EUVzUhm}=C7$Ho9A-wd7*i)6#(ie(%kq{p&UD*~x#luCg8f{zmu?R; zds~S!I9`<>?vu|3A0M&A2TQj~0iDy>_;_kSbkn)J4SrMpPD)D+=WkPI+LXT;{Zl!& z0|Y(6P5JmHOCvYW|5?Ykg8K6A85E3v_5I|dYD066H7W#B(fAW1q@;55xWpFT14_r9 zqxm`5{p2`q61njM{AxuN(XblElVDoV=XTU)>MuE(FSYYI^#`{sPM*`UJ;K_e=v)8b z&{Q{FSHZoo`Q8!q6V@ktl1;n0lWHB;VWZT*7aa)|C`k<};;~S^e&(hpFEEeiC=268 zJ{NAeQRy>oxDTEcB@K|pQ+_AfqK#^>V9o2kax;$o4EbD6EFiD)Go#2*%y1Hs0u} zlWkWeeI3SgoglSD6XZ*SIbM9s_tY3JvSxyYCaXi(HwX6Ggy%&`zJK@758_rY_D@*$ zs^ZLd@j<#LCK6uNjqmj=SnnsY`4?3)_7-ZrTZhx+m&uS93_{+W-*x>U9@8m8Jzp?` z+-L@Piyi6<45QMdHzG6X>4OYg>kLMt6c9gDF{|@+tnkOD{c5%;=x_efp^odl;U+~_ z@2d0TIMfq6hMDuWO#e}gszaw35VA*XV$`GeOL{Kv%bNY@0(;11a!KMzBZu&5kjm(5 z){{qPKih+|D+R6oDQPnC*EyzB)`8g zt-bB@Z1sfAG;%cYC|!jSX$~-CG3`q>bE8lD9cH3Q+?^{wiJwOVxa+0$4T6@mKiG`B zr2Y3SH~@D?NYb`TDJ^@mh{>f(se;7K^1%%yx2YNvH_Ic35zMgZ7?J7!?dNfOZ?C74 zKUAQCL`fS>@k0|Pc_@U9^elQ8UklCsAE=0oyjeMlKUI=6r5KmsjFz6zDo8$lA5nN; zunvw^ZsQ~Rjc?#CZeP6Flq5qo2xrt=xv&UN@EDNDGk2 z?`tN6H||X~M3T0ulSP}edf(NMqwQ7Ocy7tQuweHcA2SSEOMI%3ejEEy%a@;~sQu9qwI1JghzD@JtkE}+wz_g0#X=P!*q zP08Qs$x=(*w-Rack^AtB8c6&Ar^kKSt9wua5|;SWsFY@Shx!dFqox<4MQU=6Jicg? z$tQB+IecICi{j3&{Ex}`rsm}~89FE{1$U06#n9{v!`y%xM>*vU@2FjLhc0)Nn8#sS ziGili)<@e*H2Q4)?PNOK_Ktieo-=2i8nnSnrrBj?ZaSZ`7@|c_S zZTYKP&gOxZ5tP#QCp$kq7K~4&JC)Tui;CY$xM({EuPL2GwEn}ZinL#3@@*&9_b352 zR6V~|pU*1mx1jiC^(HYcv^Fr(@M+%`fBbBlN@o&yLW9Q2x0$+P(P+Y}j{G#egIzp7 zC4~3EF*Y8a0>GJSGqE(|J> z=Y*I14!=4yqJ~ZlFwxrj)9I2RhZJtj!3sH#@~CiM!n{+*keru8lNvrLb)e4Q)=>ds zlO=wt(RtPKCd?*Gb)s*cyVCX@Zwk?9sWB+C)EGs3jzE8=WlzuesjH=$qmXMf9Z@y? z0Zg`vCMS=J3!X!FmE8)KMl3r!R(kWOw3MdDrP?3RUA_{V?H%zghK;7ePXzinHbocibBy;lgk!oat(+Dt&;{v-}_O7R=YUcebArC9i!57^})*?Yo z>}-QV%V}Q=1rhYOf-;rE2xI%&QC69_o7wA5W{?&;4wOD@PQ2Jx^;P?rYLlE3a=CbI zQI*uezP6hb402y%A?qNdKVP!idexgk^SO1Hzn(Imp|;q3nR@EaDUNXKsr1E`$CPS% zoCKS%u}MY0B-w;c|J5_l^Vw9?gB1k31Rv?QeyiMzMs zt9bp}e1dMqhJZLnSDj}R zrh_vHtNk+x9e+SyCcJ8x*2`}cBH{G%ded_Y>AC2&v1bx)-OkYI_=AzJ$52W0=5S6& zwWF#TzK%z`XQbZ1OJd}sFTX(J7f-pThylS{9zIPbQ5PJU(J0t3CF(nhyF3^YGL#I-d%y6JS?AHzS zO;IuzFVTIafO?k)%eIjJ?X0tCzTSPdc9vU1E@{k)gDt7 zGB}@p-v4HJY-d&Ka2uycHEw;SOZrdN>~H4p%qKLvl&hr~Xw^Z9do)RiJDqWoz8|3z zipn#yV#m*{{5E_?$B(t|aKhns2@`u3(a!CB6w>k5?o?ao>QdvsU@bi}otnmvw}Q&? z+sEwp58q{X{1eY=&mV@vAi9mjIt`#DAnY!3u6Mxk_M4X0vn^%`j~=&98utK!UK($F znC)g}RjX2FN2zQaV;7h$}IE?8Ml{ppKYtG2BTKQnxOnbCY>DB7(-_i|eH+Yj0= z2^K&4Ryl)uQeU3&a1O~=Gl*uGN!=UI@hEEZciCABx9Ol+s?pSpIk#VymoFw;G1wML z-)UW;EdSI9qin-eHYF2L0l%%490{qze$R!JJWUA~P{Ls>pZK(;1yn?Z-AGtd#x)Yi z%!fj4Zd-1zP7$$tX=Y*XRrfR9tn~wWu~*#Jwy?RPam{fAx1sD(vWM05_rC9fJVKC; zXM*t;EcN!TC$sp|hpQQ^_+CG`n-+o#h+Qi`wpqBB$~(kNSmCy6B29hD&(byh@Q^AZ z>y{s{$&*{%%)5Y|$bOQP8+Xy8SSWJwPElebQ<4^o^sCS4S4(K@PW@^D2)+LRr{m>6 z@1F0OR%ks=Xc)s6Qf++7Aa(!8vOM|E>K)}Qz2OXsHp3P&^M`GvVQSw+CX)Cgu5HZ= zDB;$72>9@KCJ(GZosl;C|+&r(ySoZs<1tx>@eFS zzEDfti7&T4$SU9E-?jZ07M1D0Mj@7l)xb~#>oYu?tpA7|sou-P?_PT-yUWDib~}N| zqXuaX@DyM#o6$E3Xfi5EbOdQ~l|Uryi!MfK>9Hz&R`-V$4qwMp<7e$5;QUM3bImDC{>ZTY zjF`AqCIKlaLza6Zp51JK(@L2EtxXKUmAAB@0>d=fBVD3n+XwGb0|MS z{^|(Y0m;wblipY4`2Uss9ZNbke+T*b+j+=;kiWyS^YYTsnUGitNB|jCrgV%`* zWHq+0({1iL)EGuGW&G+x>YLvEWRR(g-6VK+v;WCtNLQ~2kNq#0wG!|7xT z@!6hYmDIY|9ID-MxTG>9E}6|A?S+zFrAa^5Y&*tUe|_L9l5(u&MA9SK$vlrbze?~tZmR0qzX6i*d=FgBhP8XOPCLhPn^UciwHCW|4f+#>GkcsDi05n9CC4gq>jTfQtd9X3mInOK zJj!H7r&+w%trzd-9b$a3+gQtW+^>4dlAG@gQSUK2@|?UM`V1d-)nuCIj@_bR8$ZyLB>rt*vZLDk-Ov{E;oS0Z^2IHF z=0<>*O}@Cnk7dVF%Nr&3c26yT+t8Sa-r+^Q^0ke7cz>kN zl(f%aKLULyI*Gn}_oqVb6{u1Qq$j5?V*sjOfVaw9S=<7Apns`Cdp}T=Be$1?$80ZV z!O_i|>*9^@s$0ZFVuphsx%j0m?>EP9ByR66W)y0XV~cDvrTbmNE^cAsI6KxdrLSI^ z9(V?%42C|b`ZyY-?f=T=Z^#w(PLVcb$@Bfa=S^;3i*;93=$8fc?@gh7CwwA^ZuZ z-=GB=R@`>$j84&?j-w5Lh@k&|dUk92=^tmqUz_Va$2?1jT!nBEY1^Ol{Q02e!*0<{ z>qsZvk`B*5INIL*iy8P$=IplqvgrpI`jwsNt4sGMvaI?|>`r`?#$`M(P-6u57 zwxnAY9@Ref>hN{HQl8rTJ#!(TGUvKzx2?KAZc(}z86w=?3UyKX4D1UBv@d>&UE7x3 zhs?j605?v}3V{DymKfZdk0i7x-3R-^qZg$Mf$>6=(npkvZM^Fh{X$xC+u_8E(z?hu z-1_l>3b3C%9)-u(CRmRH@YwNkraXzyNpg^hMY1>A!c{WoOs zj$73Z7Jt6OKLtLukV;-^@n<>wAA~mwnVsW1-O+CpU0QK;y6p7w9KBBTyuInY9eup$ zIeXK0m)QKCB>Il*^`6b&TaJE+=o|N@Kj-KlEQ8KUwrl<#cJ${&Z{3@IzoY*_^jUk; z?{M@RMK9c&-qX?RM9x*|o9kMkPYuvl zxVYyCeN2GvaOew!J}^LUbm%jL-pTH#E&L}AeVovL4bZb4x|h&T1n310{V8%w>Yf07 zi_75OguW?2zv0lEguXgJZ+GbXgsu+IXFBvxg`N zrv~UI=Q}BML4ZETp<_ZHAE19a#wK}*(1!)++0OSEp}*Sg7ycPOZ)jE=D)id{da;Y7 zztGPG=-sY3-Gp8hpoci$@7)4=d4Rt7G#mFzLMH-rg-dd+(2W7QkBj?mp{E7tv93;T z6uK}#&v3ry3w>gMUgFR*gg!h#|D?#~q*&-Q-<-_)sQpyGJi~>5H-kUV73f>SKkx9m z4P-CDMvEEk%4jijj9JXQjEjZBNh}nC#f({J`Rf@eE4lSdUa+1CFaEg=_ud6v!?6%s zL;mgZCU%5d+6)F=MQPm%XJ+S*&b+{sLp+E;x+kK0uJNeVPV5!8(isl=pA<85e<_Gx z7lJ@%xtY9Bi0+H!zT0;v-Zo31fkcL`bwpkeUaIyp%Wv;deL86G_id=Gk@Zxj)jbH# zmk{4CiO-xcvGw15ncUiGa&D!cIyvM1mE6Z>+(*mJ-7LQU8oBq&xQ~!qUuRr=xpKdm zaUU%Aiy8L;azBxA-!~ff|7P54}gKNYh7$=WxojE`CS?@jrw{Z-k2ZSAkfe!I1wF8htvUL^Z< z*8Y_2^Q^sA_Dik(ec69t?H4HBiPk<{c5@4Td-t8^Vn4&;=I-PB2)wZAAoGp)Uc>=#=5Q3cq~v-Vy2*w421Ph~&Z z+E0`J?^=6U@gHgJRl*-)?W1Jh&)Tn-U2jy9=TF(pPQ7RCYZa%SnFK#V@x18p!?5cO zLh#SY{~BvgC~sQQfd7;H|H|4w5dIcxKUHz+^eKLZ%6<)Y@0qW^&fYLI@;{GWiAAmp zWy^d2iwjn9CQICaMP}r^o1pH4KVEGEeK9^OkmIXX?t9=Mg)?&BcO6$OiMIECvdkp5 zVuYCjklG#~o1F!~i%m!)0J1mV+pw_qe)ED5*Ab#)i^pKKiYf$n7XGx zg+Yi?5pQ?<1MR)zgo2(I(1$@c&!O7zjh3Dh&~rtfVi=p^pJnMgP#dv{@B9k-=>fgo z(l-Y5t)d?h&}UfsT>RPGO1Ns#DCiIN~eXHn4 z1oS^!`dtD2KG8oj45ar}415AF4v7CF;;WXp)VA!U0dby)k6NNw4s@U#bag;Xh-mK$@BN{Tc1A#~74d!> zGT*l6=zusuM9VFEKWba$y8-cJ5wEZzziXpCC?NI|ak?co*$ln^eZLZR?}m7eC7xoV zeLf(*CgQP{*v%6EHy}PHVs}e)?B?cx_)8Hz1SM*y)uy>1AhwG5j3xfm5~l^k*&_bI z5De^IlmJSPZTj`i90MYCm`mEIK>iQ*EG@I@7xc1 zd)hSr6cGO+;?b6PxF!BRAU-T&$Py>nqAU%F%S3z&fr(0}8)edL3W(Q=_>?8yZ9`rd z5NC?`TT5JimI*mBAQp*ugC!1T&xE232#AA3lmJMY=h)n)hx_F`Sj35z_{o_jA-0^q2#CKE@t@MVZ|}Xr5*G!;b`k$%KG{mt1agvC)Lk!kGui41+0x!elWjmi6o!Q!%${Jjwm`&eK8-iG@VGI8f{tZ{pizkSHxmr^ZmrPlv;exBSncag_$X4RA>kH5@oaFWYU z+@W^u_amsjJU*2LVWvLGz+Z_kTmGIYcb5D;NbW58`*^vts z`TJ$ro&0@}>`wlkq_mv;eYxUv^7m`PJNdh>;&k%&*9z<8@27-k@j``n->rN)`MXef zCx5re|6i=1V;JDR{H^U2U;g$?`K_N5SR4BC_uu8`c8jl9oKF5u$-k4o$12bBtec?#3hU(WZi?T@-=+^b`FoM@PX0b${+;~&tn5zy zzL^1>a`N{ErR(JH29?Xn-xZ3-$=}-**2&*h^6%vDwD3;;o~p1;{=Pzf9J{W46kb8{kXLaJ-uTs0N_P?WZUc-fOU$$S`*M_FiS`7Eu zk2Bi2a70u(8~1x`AeK$%_P6f+ykp6LzJp&BO+4}N_rRh}6CL~>3di4zhR43p@5NlSMoJH)_ZqxBGzknOS(tn5iRfT9{zOVxt8^uCn!8MG%k^I%E-?fKj5y>ZcpX( zWv+YMdu8X>>BMNX;q}ng2j<>+@B0*?Gkc9s6l=Ag_=EjLy;E`=U)t{rKQt~>u%uVs zt|#`3-I;hHyeigvPjvyg*rS7~ysO9ov0izJ7s%XKLVuOI62|ED;xk~@bhFgnt;s7a zIi@!GSddCBFqPS=ilETw<-7pBhsmbsPiND^s}8hYq*D~*#4LA@AGi7rlCs~^6*GZM z$E;)VDK^KQ$@;Z+Bic)z81bDdw_&!a3!{m3EpVK2uPQPPwI&`z<{$`T2hk#PY zfasLZr98XRi#N{WL&K}~GetezL=bs+0D)3J;C2Y>-)P{c#s_X+e?sZU&yxbiseTp) zm>5noS=cpp+J5mfQ@{R`ACIZ84ll^RJj9Mq^?OD+Ee!NBg8Ey1i<&YspLTt31}(G| zbP*NUk2J2n)s%eQQ z(dz4E9t*x>UB?=4(tCymRZ?Glu^$WP|;9Kijw*SW059!)}3Z`(`zb;wMzH*liRg!oLtrIlso-v9) zRn!uv@Q;zBF!4`L9q{zRq;Uz3l$&!KMKr+07uo*gAD|`4eBEcB_={1JkCFt+Bj!w( ziBtO9#5qu*IO1b2>ql|uLoOgTr`CAB@j05!_78b-*lZPXd&L~-Jp{=3GG$c^`mwtN^tfwv(2XA^eh8}UujS<+Fv9NPy6QDG5Zp*yR8 zn_TcrA@8hn#d(j84c@Eo!ZCyKK+jvzBi>7Db3GDMrt&akchim>K>m!U%gkFi*$rU) z$K?Ob&-Upby|ym?*L(YC&L3?WtJAd_DwZE}JUOyomYaqe(taUJva!64zD_SGF`|y> zAB^vk{aK)|qo%jUKPgG9+khv5fQ~ZcV?9V9bw6KyG#+suDEFPtEuF?T5Ki&Y=-SgU z#+D?H*PGPmz^HR#7nLOE&p_)*s*M-Fqow(V;*n3z<4uPrj1uF!ULM1jbA|AQf~Rr@ z1gi8KOh4?{naK|qIIO;vo-fZG+m=Q*QCi2AI-YjDHq#tVpN~`9dcF198BEv<3X(VH zQD+SNmKW2!YCW7A7ZWcG-WqKm@O-q}X5Na}#F8SY&ojB=q=&bI1uU2A#P!1P4DTA92rr;c~tK&y*jTILsM{R5`?Uwi-gKr;uSd{y#yk!(UQG}|Yo%ffLkUV;Y zfRXg$-L^$JboRP`#KEIyMblNP>~ z;cr2I&FIC`Z^%4-e)PSa@(r-i+|zvb=`y;AMHu zcn=T0%N%(K4_=wK+_)bwN1wxk*XFImoi+V1${7dkt$EwQqg~8#U@h^C@}jw{Lx&aE zkT95B?}lQ^!GX}MQ@A~to|MN8-WzXqS}YlUT~?ADcrVw;sZo2{FD#~9?PvWFthW;F zHCp(clJq&rxb-zGCCPe@PL}7E zw4Zea=LbsKPmKf2Tfo02VYcga#mz*+Tf94Y zYw%mFwWF1NZ;f{QBK>Abd++0pU~&xl59)kp9ZBr#-^*$Fs2k@OIn{a7dU%ksRuq0L z=ZKb_-7XA2#GOc|zIr0VYJ0bW@MFCWDGWb0;6Sr+Q^@s=FTeeDdg{gFl5_3Lz(3Fc zHjAgM$*!5)QI_7biKPRDV&8o=?vxaYRW9f?a?i@RC(B)yao>J8ZmQY$KV0-vGVUYg z&dazD7=pWR#yv*ib29GjqJLsOqnPyTPr$t+<94tlAlchFHaPNjjC{|?_}Bxst5`BnUwrVOPvSb9O( z9(SO_opN{OGmm~`ZZDGtE%|uETh6g8#@3lf-`j_a0KMp@?!UsKziAtc zPxN`M)TLgXJbDRKFG)r7=r0HM=nt%3xbb!nneqFd?Il_B5%bMW>!m$^)4Cq(;}Pix zAEimOTfDCxmK(ZjV}9(&RMC$W1@+T)z1DSox?1Y$S@q$VUfZr~zRR%~l^({%Vb%k4 z{qk!*$n{!ZG}(@SIE@;V9(WT7>LGO*FpH;}^PS1^LA&H_a{nIj<*LX{aE{A4s?@QNk%D&8~gNxKc&#lyV^ zI=yU@e&S1S$Bhynrwt;3OlsbEC6%~miA}>qmsE7w@lE060tcARy13VO zarf+!-rZg3$=;pQpWB7*9nzUTxeNV`?{=mS>q4IgzX|4B%6mAQ6&pDBVCsWmo;?L? z{oKVpmg~K<`a|OMZ0AzFk+=9>HC=nZT)tuMqrQL3SH0}?r*&~(*TsEK7x#Hx++(`9 z`*m?2(#3sXS2vZ}0MVDKFz|Ms@}4!#yXPo*diB$@`S~*<{iiJ2e~e@8V-2 z&oIhrkFM>d{07np_cMgP&yk7@hW6JN&rEwHd;gXBCe`=sn z2L4+E|E+=l*1&&j;Qzlh5T92*zoPcCQ2Fetc~y0>@}`>EbrrScl@+zMGb<`D8y*lE z>T5ITlLK^hQ@IW3hxmSIZq?kTs#u7aV>NTD8q1qv6^+@>s#tkrRYO%p7OtkQ#<*PS zK?vve$&K+kMcY8|ipHu;#6H6JXYv|EVq7AXH`P~OW^)$c6kpA(+N{Wo%a4iTb&kwO zWO;BE=a(|5k-faku8K8O#MmXDS6*3L-&AERbE+yY%ao+jIQ@_nO;^-amK&GfK7RU{ z>UIrBq-w~ZoW`S{MnE%FZb)+~>eM*KZW_k= zF;;`Dt*>veWE04eGvWQ7;qb2Gn2>%?H>Gh7L$JNphOl;nwzWGmlt=Ve z)jR=Ha$sF;P2FWe#A{{=%(kG>d8?_b7q+S9$|}K`wU=eA49q4WZJj7=Rh`@wq$W7m z!Ab{b)-=ZE$R3+l-c(g7P$y{17pjamHijs{ywI$QSVgF$_*|NxXxzC)g=&?8Nf(VD zEz9U=(dhGKDJ-5edcyeeMWf5)Dmu5IaE!G~o^+8cV~R_P44hP6bYanW<71i%JV7TGYhi2@{LUiZ8Z>ES)%EbkU?qieh3>L1DqUHU--w4R-SQ z^1`Aq1(QomJ}2TFKVeEiap0OTezb{rQt{aF1tz1D%7|*50+(@po*W(qaA z(4Z%eKcA?^XBF(iB5G*DcnWpi1QQ@Y6p!zWC{;Bn$|)4aZpu|&S24E}^JPZ0p8dJScl!)bOo*_~ z8H14ram=Y`Vu4aEvSpDjs+y+q3i!`F6A*_wK~3Fk`7;c(qSn!jE12PptGd4NvcRK1 zy&Fnh)qD}^>J6~`*Cpt;k)L;$DW4fTUp}=d)@WOp*lbU(m|an07EIR3@?)=smmfG@ z=OT|cz%iL{seEN?UR7gL4IPchRn$<(tVZnWVR-ql@~Q=~szxmsnFHdrRlHYlVR`4# zugT9aTssTGaAonCr?ZQl$!htZY+`$Y8MY^v@6WM4gR*>1R?D7bgFP7__GBz&7YV?g z1S~_7O?+LjE8jKc5Jz+jQhwwVOZ4rIS-PdYBJ(GNEKY9{@$s4xIw3MMhw9B|)AHgo zKiM;rlU$`)Y@W3Dy}mo?8^+|n^KZI?Dbc@@ikX%0tJ!mEF1@UFZe4xD<&90T_`LZGuDEj8@RPrP z%BiQFK4N5O-~#KJ-wd|k+|l&DfZ!|{x{cYVXYdv?Fn*H%KV%mFC(efjRW+K)I;yT# zI$=TyL*e40P)X&U^eCB`)=bB4zq^G(C(hfG&c~EuW?&jH!Zl--VwPj>!>q#yzZJ6` zvlA2IY}z2;O4RRGbum6p@bxS9q#wZay>?H!40B4B5l(KwLd?+E+=fuuxYEMni2|Xr zBKIRibi%lz5DSQCXkgROflZ;h`iNzTb1$oJid7M^VSZyxtZLqAr)YIpG0Rvi${|#H z*F67qdiwA7q=#UZ{dP}!;XQlOt=LOeVsP(Ru_wI+vk)^1GXRr=d7n!{|BQLy_k_bN z#7xJG!VJKyCHykXpZ~BY-3#+RxGk8xd$Hrr0p3LTl3(vhe|0y0u-5`V;bZSq^Jm+( z>e*)thW=$w`iAz)Z!IW2!N8G1p;Yn5!^@FlVs)QQwG) z_|S&N`pTiWYU--%Lj!B$k;~2%2+gfn&@(jbj5CHhFToV6otId=u_`oqX1p#Ij|@D% zDH4p~!m61y6?Ku2g8`lyVe+J+^5O~QlP4CBA8W_@8IhX$^0;Q~a`tqp8VAj%ZqA_+X3~joiX=t?{x$2wRci^O^`f8SmHFMeesi`ZUc?BzR8!8m~m*Msi zWZ(Wxxon!>kl4Quw~xfgWS4N+38|L;6@5<4>^a}i4_E@4eTJsNemzjf1LeT@-_4X+2N*YGMRzqx4N_}r7O-Nre+>S54cJIsecg$ZMvp6>SUfgbHYrk3S6NeAThVw$ zL^~Obzgay)MJJzIJT_ERFd6|LP*}*whY48g_z7jGQWlrs8Z&;vq{*eF6DF477+X+0 z9#C8^|6>Zq6_;FOodH3+9wh~16=iWbj%e}tGV2&!z`D1DeFag**vMrGA{kdSZUWmH zB9EU?$YZn4s@1!(PC(utQ!-(Saj-Q}HevJxWwE$?QqjZV@$P0Crm1v zOqc?;8Hy<4MEzdK21k+I1QOI@qNrrTgwjyaIJ5UtG;Y#ZvsN-2dSxt~Cctcq#ut?p zve98IL7d}li18E7ojiv6qe6-<6wtmAfVvVOsDP=938lt9sdThZlP)r$%2YJD%S>*7 zEOpps5oQt8WXLSVQwv{~5Y)KYPoSgtWYT3E$h80a!ah!}t+GEJa)Zz(LR7vr8GNtOZbuy7oQC1`pIabEU z*kp@KCaF?&~Qc+{KG9&XUYU5R*nmS<3 zEbEG}84#IMQx|Ir!6M`A4n-;%=2f-CrkqyPsRVv(ifLczvNaN^uZ~y-sgREVH*Rt(EMby{MtC|&Io{!a6*4IXAnj$Wiko{y5 z(FRGEf~%O-HMLb#X;WomO+$>$B}El)tgMR6j5l4O#MuVBjAGSOF1B*1|DdFPl}xUy zsZ>rY=ddYM$zmnM0-=sC5c18Y1kEz5Gm5RW$jmDu4ORFh?N|-VCVBQ7PnBBJNGOv# zzlEz7&?TBI&U6g=N>ykMa)B)_{eUd6J4IuWi$)ejREg_#lK+B6^gCIoW~eV;xLTs# z{N!9A$b}N4O{tECsyb6+O?)D2($tsfp_(wVTvahiYs%Ox`hKV`BN8Y0t+p)|!S=g?fHJNQl$2`x2?DyyUoub?l*B2{(u@!50y-ZhsLYwD_$ z9}%hR*c`fp%@u-^>o%Q7jS?_fsI96tVO+x1@jBbM@?JByp|(mRmWs+$q9~aPG|^_| zFUYCM48t#WMOFusZ!_LwigRXTJzuyY4K;kI3G!)W!oaBznej{)W^>WDh3O(<5GU5x zG4M@Q*&Y#ehNh~j%cwD1wM40fa&~vs%6e8r`-#S)^2oWzDUiTbM26QI0vB9WoodA-BgG(rzgqYp5{3%TzXmVl+&A zRzt{cScawztkl0tA_Gqxfn?LrGgN$HsNlrVMD(e@@$bod(&??7i1W>jf5_N)&nu0^SxU*@#y?+-!-MYAae}eD1e9Qh)mOb0gH`&+z2mVi`tjAyu#3-JfD=qx1 zgHHhO!Q6zo8dHs#fEj`L4yGsOW7_3)%&nL@>TL=pA2S$pC`R#qd0#rc1M@8AA&hW$ z0GD7c$6SmVjTwUJhxr3>-A(>)z+Wxqb?%Wa0S>|R!o0sC&Av-Iy%KW+rWR9z8G`AH z`3nClNP9VP`DR%cw~rSbaDO_Ti^;+4{$Jw92)`ZpXUt~ITFiZzyD*~N2D||idLW(t zgm4~4_}773F&i$85KIKq7t;gt74^OovjejYvjx)(K8BftSw{UW#k67;V3faF z-~*T$m@^{ziuR(hZ^Gi%CW;RB&^MEH}axou22%o_`j1g@a@LJ5t zq|>&Ra=5hSU{}95A9xa`59X6c(&<+)YcPJAfp$@S_G-os<{pgVxzWMP9V`Q$jyV$ZHTAL`vjOvKOafDjnSgn5O*;J`<~Gb# zm>*yYFnJiodm!+=hv6@n`!K@&4{#plBFrevw=w%+KE&@#+Mx)e{@fR{kiK&h<`ep( z#`^=9n=mm<8RisBU(6@?`7=g+ZN_7abLzl1WnJ7pUN8!66lNG^)}!h4RE+Q?z7P#D{l_Nj6n;$2Cm^ql~nC0Maa$)_nmvnLa_-weai=T!r z?rgtzk&f@aEz9oX{uR98Kk&bsa=nk)j!|5B)R$m?2YUfSm`})~hk0Fj#caf^#tb2i z2&ONl2j(mM?!@fCY{P89D86;Twa^~`u5h?zz@?b`z_$VyU}`a?xC=2OFbnBBwV2oG zM+1P5g^G0QMRFeR8#m>V!_@wWxD5;L8H*$q#VpUuRHJs&d+6T#$SLYSS592C>uYN&*#bd8 zK#;4f=W9ZhLN%5Vv%G%-;0UI>}zDCBvVs-=tN4KWu*)47~nGy zE#^0}6Jz%gwEy8p#(sd2za;%sRFlt0tg)i5Nt-L=eO5y~(s-n4PCRBL9O}QZzNzU% zCl{%Rro}P>ADaOUq}k9|gBk;$K`LXlE^kKaMQ+QcTM1fw8)V7KINFm5nNNbDAX$VM z6nM~Lsg|NoOtP5yFoIozyRnn&S@m=M{t?>Fxb_&k+c0ymFTgCp+=f|!S&i9@*@hW} z8G(snreb6POTY7-j~h0n?0Gipj^6Vj`H~C!IR{q+yKvqxL`3>mLdY zVBnYB^>sSuTcJ?x|9+hw0$d23%B69OfOi3}2foj_t0b^L=iQb9=Kya3>ZZ}30jC0& z1DA{lg?Eux8S>TY1LZKId4Ht(( zuK*WZ5(>QzT=IiZ=-t?gpL- z%)2ra$_JJLi-66*^MEUX6M)-*Wx)Pdg+dnrw*Y?t9KiYLN?;T?2iOXn3%n252z(tl zAGq*p+5xx@xCj`!hIRnfUQ0UwTd$)XfIHekp=H3b8$+QR9-w}|g&Q~(xDr?kTnlUl zZUNo|d>yy~_&#tg@GIa}V6O*>4>$n08#n~m>&Q@O6fgoT0iFV!4vYe8fzyEtfepYL zfUUq~z}tW;fh&P)f$M<19-@4}>A>Bh1N$CD`oLkpl2zP)09*!~1AHIY3LLeXb_d=7 zTnl_1xD7buVfqztAux9UbYLEE8E^z}C9njz7B~aA1sDT<1zZYTxaRA$2P|1jK90uC zZL|5nEsv2t@GBl5xk>Kz!dlZ{Q7^C_iu+uoXDuY1&hC;6~y9 z^mTeCaLY5a|F?+;I1D)IS?Uj13v2)`<2&^-;7Z_qz^{PYfW6Q)cpo@mE9pjvA2IK>vSOTmCPJfYl2i5{t3jb&7TX^73;L4Xt|2xzNa2T-U6~Y6j18ae`+XxR_2wVxg z;jg3*Tn2m}*y~mL!Lj56cnWaHYt$=n6fg!Xd7X9wP6s{!e4q1v+ksyJKLOtG2I(J1 ze86GA_qUTi@GD>~uoo9d+y)!~TnQY))d$;vqk!)Nm+heZd6WY<1UTv)`aQ4&I0rbL zTT*TU)&f@mzw+PFfM>Y zfIEPrKBS*<5Vi!E2b|6oTBX2R;4I+6f6}jjHvsPfF8he^z?Hxqz_lL}o`bPlfO){z zKOsEuec&wMSDz9d*lQQzfwi9z9=H&=L-@}bkAuh;FajL%1^pX13OEC}1$YDSb>MPf zEw>qO0WJh?2j0M4&%OAny9^i++(UTaO5hCODDI+K0xSV815WR@C%qY13w&L0|2^p* z#}glL0I*kg^lgCu4}0$eUu9YU|DQi&oN?yaVGMSZskewUb>>u}sVfgK*np{15vMMl zia2%ZOv0rzrqCoCIEx5t<*LPpYSk)K%2_K3sn4pFL{!UGA(73RMMiz*_Itjs>wTYd z@30em`#gS+-=9bK;3O~U;qEy*L|M?uv&03XMVsUa5LBr?g6{N0dNG&;KK&l zq0zAzSd)c5SPxc%O;b2S1Ga)&!6AP2X%{#G?iczAoEPF_2JK)B?24cd_JGx3A3qVe z9vlF-f(88GUN2Y#?gdNvr8D0-qz}vki}=aQIM@W%fbIMU?FMiF>;ki6=z#^`A+QJ> z0ZYLspR1?@XM;6h30MzSf=ys8*b1%&+rbTB7uXK=fZbppxCI4hH){{st*aKFB*)y>(d~hq+4(;gA~J>Yh51l$DN%X1-rl@u=EVhe(|N<9&iI#KZi3*U^_Sj z*1U!E@Ir8FA?Xn;;@lHBa1QkYEPX5a3wD7%UZk!$7df#0e9n4-tru{H46NikB~OzR2AN`k0>#fkog57zeXUu?LodO<>nMi60z_Q+~`}hUSw_ zux|n7FX4rpQ3FfM$Uo*aeTyhRuyQfw2ljxwgkHgUHn4sv_2ELoU=26`Hh@Fmdaz&_ z9Ij@4a6dM+cM!P3j||6=?EtHFXRh#%~`l6na?T}3)e$)DxK z3l4!LVAl%D0W7_Sc)&`q7c8o#9ZDD+25YV*pWlJsU?JE9mV&Kd71#x?1P8!IaHIx( zu;^W*V@JSJF#Db8fkj|DSOyM(P2dRF2G-m_K1monBH_! z905DQu2q!t0@4c>g4uP{2e9Z4`~oY%0k8&?AJV7?GZqr>oumV7t;Y^nc^7;MgP}6& z2`E2gl6?>L0xSRA5; z=&Q+}#iR=?1qV1=xk18>^b6n!xEE}CFXdK_9#{w#JV1X1mV&Fn0Z@M5C;LI_8#n^? zg9S~TYXs{-`9Ys{Fj|4Vhe#J#^FI0yupaCYIw(IJmHja3UqXD~TyOxa0Q(*xe}(=i z{RJq$Q&hbayB{T9uxTspL-0w`vkdzmBfmiTeYEXhAJ`|@PC6>F^9k}5Z2ctl0jz(D zdT=TE+Ch9^_NRzX@YCe8;AhA;u%?s#;WFeuOS-|LZP*2e!06?Kw__LV;#_Ax*!p?O zqYAw*(4T+>UDS8559|cnzeqlT^*AJ_%11pA)H4mbqv0ZYF{JpwDi zysMD|3&Db3Aw~~zxmDn21|cQ{{(h{JHdhh z>KoV!#%j<5<6!p7l&^%rJrW+I9{>kH-@EYh5PpG`e}E5Wze>JHc$j*81Nc|QH?RgA z0qeo&jp&1O!OFw<1NMMTV8I*I6R_qV*sq2DPs#xt0pnn{kNp8~0Ne|<2U*+SL^{B^ z;1E~=R`P+V8n6j$081zFj7sR>POug11BbvtuppEDQ*Zz*ycs%J3KmUf{{U?O;3D1NMRa;82X`cB{}kiG2~U04xK0 zz&f4)nm;VD?+t#|OK>0kHC1_Itpd zV*I+3_|9W585{u*ft44M-}TtJ2zhYm671ZCzj4YD>;c=r`uXHP*a{ASO$&G)b~pL6 zkUb`F2&@CM%Sf-#!8Wi6>;x;p9I0QM~*UH4#b8UBLVmF#(g^_Q|I)j++w47*^_ z<>Wh9Sw;SV1K=*saIenxEXAH7x98aH&UNhL$4)1 zupVp#TftVa^d{O9SadUfy$3#6EO-m;59|Zm!J?JqH&_Y|gOy;$8vMAGX9Hk6SO*rY z!Y)_}c7jE>5&!-8308nLb?_y8JLv+uz$0J}nB7Ra!P(#tSOR9>LHh;U!JS|acmNy# zqwj@(C+!a`0_(v_a6MQLc7v_p0N4X&KY$)s0*-(y!J>Nd3#5hYeMlG_1V_N)CenKk`2;qBTfug47uW+1gOv@`i-$-L*al|bOM3^4z`bB8cnGWk z^WKLZSOWHem0;z&*;fVY!FHkFNBsx0S5ptx65kri9UKAMC44{m3J!oH5`HiF-V7gH z4Q4-pJ+J_52P+?>y@P!Z@$Bbe{Cpqs;7Bv+0ZZ2rAJ`5a0t?nt?vIeKEtCsb@F;R% z7kB_H-9SBB2mLYf7wiFh!S)Z5uV5GGTTeV2sV{8n6&6NN9$q%p;909Ar z_K)B{Sh|IL1e-oey%9Q?-9kK|1NLntUa<5@upX=h zTfs)K59|c9KaL()3GM}(z+tc*%-BG@U<~X7i@*Ue4z_no%{rA zzyVO6r$s+NzJRmAKClEVcn-h7daxGk0b7L+c7WMDOWXlgf_sDx4uGZ4lP_QwnEe=X zJnO3k>%lIt9qa{rz`fuAcu2zE!v7Ca9$*|S=%qgfi@-Xt6l?-3!8WiJ>;&7vonRN( zC;V?yk6W<^#=!w_IoR|a^uQ6YU-&Oj4iW~lHxl1&$_*?68^Kbr6>I{xg9Bh6SnwkC zXA^WV59|TsU>{fymhQnXuodhF2fzbD{~q=Gaq{8&v|F$VECXA?YOo!w2fM&#u>Qa4 z7r-WPJJ<^LfbC#E*aaQ{d%z=LADG=ne4qmkfpftTuma5Pqn`i^zy`1gTo0ClTfs`O z3#G?(X7=Pzo8RY~4Y`27_y^e!i*OT(E{?>O=7jGLHTy0( z>Eg34m_180MZb){k|)`}6M|lHU&CMg<8O|g;Gs2eUkYuCheosXm88(NLYtdH>w;FC zLhFTAltSAJtuTdl2-@rv+6Xi!g%&041t~Q7s&6cXCeKUrQfQUXqA9dmXxS;W)zCsI zv<=WQQfTead?~bUXd@pRpMSfc9r4g&sO^V#7}^5vePt1+aY`gKKTJ9Z%C~GKf0kHY z@mdcr8lc?ZO{7-@uMOT})ob$TRlwVoMsFp&BWd)S;T5${Y_lC+ExZLbzHw=g-<#N+ zhPM~q9(YUD&p_NdDrp~vHv(^&%bTC%We2HWpE#N)b-57UN_b?Qxr9~cI=U z`+o34(j>Mrh!?xxlZ2T#uQ?&}ijBe6jCGTO5BjIj9h6aRjBF9I#ZSFCc3MJq;R%^# zB76C|Nr7J_WM?B^jqF^0gz)l&EOsw%4X(=whK<$5VPmryxtdQM+ot&1g>3Do-yHjI zuT9t2i^u!AAK46^-5$$Vv7135gg#5YQ#X#vgWHVV3O5gmk$Cj14 zv;ooS8E7|#}jeWJey+0~zabL?F1BW zOXz#c>$OCAiEJp-=j;5!n`38ADEmr6R^pnA?DnqlaaBOu1?^aIiT-M2_kWSNxR*=f z-vI5f(2gVi9mpQ}QZlb*qrXS=p)C-DRP)xr{79@NNY8gqBvxjsy~(Fxw5q~$bJzq)c7vcXdXgi_( zG@(yhyZZ6qri_h~S~J&84qlb4!;=4pk(cM|R1b5R@(TAxqqO1`a!wgKAlPx=K0NDubSov0u+#u&Aym2=}8-R8^zIP$p%Q*|LelN5hXvb6L zL&!S2#_O|T>MMY@bE350H$Lq}$aZtS!yA7bS{JnA(XU4~&N&dTelxUEXvdX)WSu=p zeaZV?Xa&%Y)$boduFRt=^=<@O9NO{3UC1PF_VZ`18wj)^$#Jt>%YgxKLV{6+VR9+$QrP-Z@hjfv<_&;qhE*Y`X7wfZ-Ukg z?RfOJBfIj4)j~U-c6$if%|A-&OWhfP)&}h{Z{43@%$l9U_}-t?m9j5^b{N|6 z_`VX^{XZVB-w16lv=3ry+?Z1wV5t^kCN2|oJ7#twTf(^|Z@bwEZ7#HRN9#AF>K{OM zYl{96Xq%xOkN@%mEsZaYkG}-kYG`kI^Da3z{fy~3bZ)v5*$U28x&BMuH$p3ecC5Vb zK(1?FQdjbR2ej?bj>q>wWLtkWUjHz(4bYCqcV{Z=lbWq_qo-&9|pT~~)e;C>xXvgX^ z3vyX6dvqo5i=hocTjurO9V_ifZ`O-sv9AW%=*!78h<*dKY-q<*cI^^>ihj4m5AAr` z`~b2J=jXijZWvktw0~80vZocBMt}7i-P24#PW z?RfOtk&Sb{&()W*>xL$0{^oIS*Q%^@*2y~OHZwn+kDrqF`;lAj(UrJ|pjAOTp15OV z!d%W0x^ats5wv1xsA7czy&oXH+ZV*PI0)b9dfP21EE za>cKX->>maCtWGDJZOc`m@1k}^0N?{{6?CWRtn8Yp;bXENTIES7E7TuLd#2`wL*)g z&^n-Hr_gpl3#HKZK+8y>4M6jy(1xLn{9$}LGG;KorO;x~4nsT9W`U_wMbO0FX-boF zjzg35zEjGQJ*ePZzu8bT?H^wJkI8ku$TvW%fwov|An)!WIs{wcwZThQ)}r5yOcyds zxfgx!-d-QP!8E)>@bZQx*2~Cee42nKb<2U*1g|4eR}=eKiFIuWauvuOe(lY%>%=eC zkedRF68m%Wb${;NQzC^l)WkmALgwR=PwUZ*{prmymgVLW+E!?J(A@SXv@U2-Xl@;p z{OE<24edP9q*T;;_<%!(3x2 z&TvUu@-Tb|z5kZ|FtZ*udnxF#dv`YF8(U^nD#HPGPj#+BuP@IF%NgW2_j1+pC+~Ocg!XD9c6RU^Y230cSy2%A$@q4*ccKv3t4q^xNeT=TfqejRiXH#o_xB z_e*d%j%WvZMStbYv*?lS8)e^D%McgVO)94iTtUU6bSNcTmJ7poM?$j6OJ1WU?=5V_ zhH1B^FRmg>%EM*kvgAp|NzA9_KnLSRnaCwzOoHNj{ZDn*G5^feAB&tddTmWbsj%$b7c~)0>GW^bej-B+A3YW6C2L zk13C`NNwOB6UI_*>*FA{vj53^0lV}U(ZB+dzBF7e6^!A)=bOoX0Q_5Ber+UV(ht28 z`Zl3+mGV~vE&e~$HyLM0zqWDw^6tS0r;uzZjzryH_%Z3KM?X6H=Ge){m#z`gMa@g8 zXylR1|8`>Q0JgrWzC14VLhEcw9+gM>{lOpjBm4c=LmYIQ}?}fe}`spGM{d%QKFtsm{vPRtZp{8U%BKBe@Gq1n~!-lbO zg|-!`pLcp>MZXN$oygiA)V7~$Xgi>>#5R}6)kEuscAAIQ49&qF+tQ|AF!f*U$#XN? z&gi!{1(!%WTO#eOLfY9f+s@*_0clK-QYy;j;S$sbu{AJxbnKmKYa{cgas5YGq#?Ko z3*$PF^04HITq*h0ux?UIMr&|mK++?9`5g}?^G$TBPGOwlorTxA_gx`T0o{iCU2fjDOWRtgX($PwJhfZbu#)g@fEQv(dP~J7r9q2{bqhk-N?W6i%nS=Z} zCHv-wYoYMSEzu*>tQbkW6l|x-IX`^;5zf#61j%{p|xlF5+Ym1E0>oTviX-JGv3&Re&a;2mJ*_KJI85@I} zs6%cV9=|`C21!%dEZR@r=-6#yz|1e`uhs==tAQmHJ`^T5Om^e28<4F;woda{)0^TS zv(w<2R6gm`yp46CnM=w0bB)tS$G)UCS_9^J4T7e;gV&-d6I)y0i%hpHeh#5GJY#h1 zQ`}oWndiycIUaaC;U|^UfgNM;Se?&VWQhYq>jFz@hwnB2 zZQ09vh4F$>J6541amS&_yHxI)L}>EfVF|Ph?&T7iyn{Fwnk-4>5?T{9u~%#;b}rrq ztp?h(AVk`-=3mMj)18a6qMBe1Gd~=BHZTzblae=wi6eF@=lmsJQ?{$A{&tg@3w2&m2EPKn$xr4RvM(XBHPEY|my2GqUs@>jwAxlUI;8UO z^2GgoQ?KMb%R2NXi5{2akGyla657>5z~>fuzP&EU9GaPyHnI8PW$seK=nSCKhR&9R z&O)o>1nx)4E;>9)5|6yYIfBmeqjW@th-u0m6|-I}L#NOg9s7jnkWQT!FH7_}3#HFV z?XMP_IYu+Ot>~IMK;B(V&X$u7DG#A_z;B2DR&7r@#+bHV9_e-h>%5)2ok#9PXX|OB zV@#2y?nhT(P0D=;dI$8ggl@{+p09}#484VM72X=*aS5#enlo#33@}#(|BDHfLYqIn zeVh83(!OPh{qlqrl(n+Vdz!En=RLuj#5(!5QP!QUvX|GAae1VeLDWf1AQp$O_k^r} zJ?J-}zgqOUB){aH*a2vZg<$H5>5ExsG9}USTg1vwhG%!LFoTA01RcO!lJ*#ZyxF5; zJSI-iil9ZIv7}1S;?N49x$Q-CmqUv|bLYO&hU(PbTSZgK#I&GfId6bJ8=WhKZ`umu zmN~z{oJHpnOQe3IOQSJ;Z4WwC=zLjqHU`QQb6YcBOIKNAhsi`nE(u>{2R|t6BH9^& z&CfOxyR#uVwu#^7U0~vH{YE(?euUt~-piphjf81 zW5#-HY(0bba{>fNyLZe;S<970+Wf&M7~j&38RGL^?A5)6_j$OtbwIpc6kd$iQa*>3 zFZXf@%Dc-e(Q(VM7Mi@rTnkOkE2jE2L0$hPUeVGSvKh@2Q;UjlpbW;*i~U7reIoBf zHx-VKJwX%_$5HcZ+22T(7!s5idsP*P_n)$-lWo=NSX)c1^kIez0r<4`zQrU}&2d+&?GV7~2;&te* zKAW|@=2yCTUp(*<(>_|SciP7W3QgVDg^lJS<~d@+^lfGgWEcoaN2|SCdAJz%eq>jk zqiZC5)%4RY*JVhRs`L&U>=ilaWS>L+qH`PfVt*a;%3_(q+Ck6A6eBZ&%zMVkFdtAE zsh7)2DRT*}6 zO;kT*fAcAf9lha9yOKQX#a0)#Y$@BmWG}Ss&>~`=tCGJ%&^n>D9D9r@k95oreqY9z zqhnnr@kqQS6vTnI>zq$%mCzbWbl(k{!(T15R%n0V-nZ232eFn7EeHpy83CCiLtc+e z^@XEjKh7Xv@|Ip{;=N2(;FE)8>}5_~5*eJl3S@_Ja^Tqsouyfuv>(9!{&z68<+%3E z{(f>zVfNFsJ+=jc7f+ecoLNY+bTC)SI=L;dZgNXz>!ghtn}Ux^7DxG`3-aAnm)yIF z6K*(ymBF4Htpp58foV6!KU zJhzZeXOT>)m?Y@E>9HK_v}30qJ73^l>&~Opo$_#{3|F>(^&(Sq`RLf!k}@AeW|=D^ zX+40<5oG@FNNb#jmF-n&()wf~trg*9TIZ*xRq|{DcIIA@#?HqRb`~GYPCs_~(%IRP zu(Qx(=cv3Fe`0j*E3f?D`Qu=x7CR%@@stn4U8uq>pHgJjBeV6YQC_^_qK{~idAy8q z#evURk6EcK3Uk1L$|CE}7j{dX3rb%mzV1T5dim(sUqwH)zI7$iyeQ1#QtKE?pv1kY zZ_+Pkzm0Z#b#jjKFX!R$z#H@u^!h3DT{<1{sTx~(E12WSTqV_~uO)n9S(osG2Xcvf z<5L{f4(tqI=Xvgr>MvOPN_xyhjxBQ?Uytf94q&7Dnt$Jh^wEV(2KQpaobM++6U=vu z1J9?-{VKvtHMPT7q%(KYC_9;n=gy>5>~FySj%wy>nqL#zKayhKl;SvR6=4n(jEhnC z9S@2B*J^$KH~L+vr$uk4|GsW?>_zU!)l;(zp_OxC_?mI`)Uow+HY)P{9N+b$V^6C- z&qg-T78Zw@j4~Bxc{cwAk=u;iR^&dPlzY(jY5bpW<;0&JB zTEhJAUH|*`BEHDC5zB7)_tGMHwg>&a=TgWbS7>iT zd#X5AUr}-)^U2!Lv0Jsi{>#3iDmZ!KCHvyA^cC{`ql%kG$Nnh3r}h<}^|bMS(SJ!E z_F-ojJO55UYWly6s1G;uy_@4nQ#|n6g#90HN{Ov%Z0))wxzB%${5fIb{HX{_x;n9S zXyw0GH}cRwfPUkx$^CIiW*spCy#e~8LZI_(37Gv+=3;@%$aQ)w2Ad_}8n->iMDJqq z8J!KH!@8QMTV{zR^Sza)_5E8lQ+SO!<%|M>%`$e z@OKl>$vI_f=bL@li{6esiHnPAuWt}q0krZ7#vys|@uGJf%nVoZE00Vsxg)vnAhyhW z7J4!CS|M;ryNg3>f|gt}uZqNOh&Wf-Oe1&f`m67B^7>uLypg$a6T02#W{PiDnY96% z**qx$PleW7ge62ec+P#ni=p90@TlI9G z(CpDIvvb{kC-6wh;4(k#An&|``DJ~wj;!MhRaIc2UGJ0gbSJ(tWcDCqo}HwOjqY

          %Obr_pylZ2VRn7K3mdV!`Oc2m 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≦ADgTMwN2Y{UU1?mb=^Cpl-wC*WVW4H!e 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

        4. +lv=*-|<{dU% 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 z zZZif`=vU>-)SHj7Q%YW*lRD;7mA#p;=9U~#(1F^;t5=)xJc*MmmcUB(4mG>L%B5%3b6QE+ zG&`EJ#iFG$>#S+GK+lysvCFv(9nT47Y1W*nJIO=BN^$C#G!6Hp2-QfBdyg+KR`a8E zco|E2*i}nhTj9NyiZt5kwl;0E%PzSn&1cN_iFN4(WmnueE%UBc=IT;5%^5a5{Ekl(l}7)dJ^c76roXm_f4eeMx5=j<`K`pW%HQd& z@|`v&-)&2U@h$VKnZNEQY#qf%MJn!|{808CGj$q1zy5iD1JEWaE$J=`t{@+l*o zI>3Z70dtoz-RzS_ANo^!Ab(S2$^Apk5?smhg1CSMQcA@M3Y)f}B>y+QaO9+>L5%bu zotru7s|b7@Cw)zv&&IPt(kj$mJ9wtGMeQ?Oytu7t^Yx+9xEaY=lhSH?uc)3-`M?}g zcbh}~J1LyoC?BsZaQ{?k91pW+sx)3jU@J{&Y)P^osWf)t*w0rQ`}b^8Dvgb@)$WxR zd-U3#$=PFU-v2MPuAF|{<^Ao9(EP7xW$q}()~uobZ7uvid0cj;Fv)~E%JWuJH=t?q z_hMxBV2_ShL4*WkFREhdHM^s1dg8Si*{Z@evnN>Dy=vuXUTtZA&%$YWg+^awAx@qf zjbh)`MBv!%L*IM1O zVq+P7$~eeQ;>D$=jNSc96n)^sjWp4mdf8CDG}4`a`P60)hdGnjCqdFd9PPosv56 zKQ2xtyA7Y8dWB_K-5$|WFEj=|Cn_ry_CSww15(-T<5Q!Tx~_^Pzh?hsd(0=TF2rrEzXne_)OXOnHEB&Req+0pJX9aHhx!uP-#6oNg-6) z2aHCjG=4FGP-*=B3Zc^YtrbG0@#_U^y?Ty&g?62S zP-#~gjZkU)ItXE#pS?NBuY@R#Uk4#nS{QNh-%c~#Jg#iCN^N7BfY!<#r8V+Cv;G_Z zr_Y2cSJA`&G{*nvWNZAr$~pQNudJzv^d~-{rZoCfx=yC^untx}dP=(frKhmwRX%zO zXIx67r=)9Qddkh#n`924qp)1oq+qU8%H9c(o0XE1?i3f!`z_O*2sJnQ6N_b~(Vx4lhv&KH5m*Wfp2P{O^JG&iN7k?s=b$Szg3nL94%!r9^vqa_Gb5>U}7_ zMaqY2gBUIY4)^+GYN@I_QP-#qy;x3A&2Por7lBaCCeAAP#vOA%PjyKWxVxAZaKHcy@zph*?=_roWTPznT1Q;{i zM239jPWBJ;kDJuC6emu$TnQ^x=rm+LLR#%8u&qvpP*1XsX?w{3de>18i2t~P*)200 zM;Q}SdiP4glP#S{ZSZ6y6k@_y0VG!coP?}=xDY2w);@x%r- zXe2+wl53|1pXFKhfMi+g`*OS_Ig%kYNGe0Vp)z@v^(wBNno2Syhg3>v(%14VYf?&` zCBx&aYA=gb1jhU}k>97Bt9T7SKIkYfg;QzLt{@+eM`>|`9Ji9)yR2Nz4oq4(UEV|9 zKh6GjkmI~@Qm3!{WLY#FF|{XI$w<6TzOc3S-g~dT_x+Yp3IZjM@|>FP=~+G%gV1fp zU?S%)ek%->oo@)C^e*6nlQsdLZ=}$*h;3ZCHCHZXmSV_7^PF8Kw&aD+0x2dik~85% z(`nxE?NEsiTPXA1=M8?*!deg3>-Xi~&8C@yO%hFsbhjroa4d8l_@_ys2=L2<2EOZe zQ2zXb3?5{mmJ0q+WCQ*@VFR!C=9s^$!NVdcujqspJu#7=TCWMGo}-j-bW#&Ap>#_i zjUtl)aP@i_pqIZ+Dh&Rd>!k-oKT;?V^{7U{gu(_yd&-9T9%1TJ8aS%7a1ACq;#ehm zUab;q>Y@3tBk6|-bqgY)BJM( z3iw;bCc_dqZdKoyR26)lS9Kov4JXY3S6h4e3W@wbuSNSYNz45GF3bMQV02y6XR6=R zO$BGVDtbVShG+-7aC_te?p4;14lW7H&RIDAGTb|u-us#vTi={0ABxw^Uh-y4yKqq-Z}sIoDu>%39qledN$ zGht?D)G*LBHJDBkIL8_Gb#GwwKJ!_GA7~|9>>3oxdvT#F_9cX_(XmIx0iq#{E{ zrc4w-sGSK7L?Md&^}-lQFo9A6DX>|!LYu!b-O~n@^|v%1!&Q_qRO6L;}ffx;b%$7j#ds{NCuY6e8Oj zv(}OyvQTanoP6JKs{qnpcw^6f(^`XxrqbaW(KMbnIY>7lagNn*b!7$}Y1@&W+Ul4F$2@0{=EtT1Wdq;pTIm5}b&HWGH;_f{ zyjXd=l~M`iuFd&f%8gnmGMs4EOFi=GPeu_#lX*@^^gTSm%2=CjcHExX>B$yTa&%(` z$ix((`qbt~|E6jQQwH!KU#~r(X+CM8%niUDz8)Ucw?#A&iT}(K&jQoLEA9M{{O>He zRs?*VXW0XiWv#wp=Z6fbK~fp=4VB5WtXDDY{E#U*q*6i?6P0IKlTuVBJ3p6L)h>@! z1jhU}k>3Vug^C3YJ3nK}N7kdXs5?Jo_YX;AS%mn0*M+AqwNQEWqEh)BiqXE3-53P$%_)A9vCKc<-;JW0%;0MiuFRhdOBheDzRTVt4o6IsiV}NTC|U z9`B5O;8UG603I`xme`q*5%|6##=7>Krqur|`bWJgf&SN}!i(* zdc773-py;*1EL=(6o`6KRY4Or;E|S@vY|dkfzrTHrNyQ|zLBh>q2zY1O{eIb0aILGN2gGQ|q6WKgxYw`;Jkd#BLpr!5EIVhh z6(Q2dh-VIbog3gD5Thz%0+DDXA*Gd3ybjxG`>mt83E8NUFo#FDGUaEu4b#_ygF|m; zfNE+mjT<<}8LoAw$+z)r18jTNB6YOJsY}W~PK{Fjymg2_$hzCxyxYw&soWSl6deie zN{7k?sI9mgvS1KYm~^?yApK`Au@8(Xi+zHQXa6HlS8Pyq8y-?fMF!mf!xRx}XJQ(O zLKOMy1{g^&T~Y!mur;+po4c6KX@kljYMR{(rec+>ZTUE3!{?Np4H^wEulB74P1^pE z9yeBG0mdxdqs6lkuCkPxTS+m5-R5``7<*b-u1`+$kg&p}Rt7_f7a?Myc*LvdcCvvV zYgWl#_sH*1ax_RXa`)8lA{FrhoB8UAm zyk?dvvVV50?VmZxnn0GW`&zclFO}7-P7Zmd(xpgwkSnL$KeMG-nc5dp>s*up86M~v z))qr_BtrGn%ltQzS(L8aX*215U=tqNkwqAAo283;a(O9gX3An_ko(c51Z4w1$raNB z#%3#wL)eqcilS$^g||xBfVeG)1PrFE4?-B$!)jnbWaX1 z;Y3%|0GXJzRG)Mm!l_z99uiLP@V37Rm{9r&57Y3py@UVrMhk@vc!iPbyIL}%OpHkU zmm?E*CU{Ob(X6|@s49ZK)iQgB3)us{*GY50^PJQJUf`s{om?;eGWCF6)eeqYSie)b zS+zk%(Xujs z>SgzU)9#uN));(nB+<5nx`U1^jj^@e-!NHJw%;~*LYQjfW{0u3Oq`LsbjtIbuY?9W z-$GFv@De8tfZsM!XhULqel_GFX@Ms=X#hOYNqyk;P8tCB`n!-*|1E1}UJWq3e!br*nrUhkU1kzl}27Z$_(md^UbtL5#ZM}_n--*X| z18$TO==54Pm{9BkkVcW-4_v)o2Iz&pt%ZUQ_1g7-=tl|#qMlS$(1Z>6Cd*9OP#=9= zY2c{RVlzX$sG%Eht5sr6J#-Nj0bSfF5fwb+x>x|#YJ~Kf9ZgOsm-i|+;6_#A_mbfN zrun6_0>AGDa}GFeRW~G61@GZiod+&BX%4vB+J}w1ycW7~N4a~uEc-8m(REFq=#}td zGb|r>6W0S`Ys7H*vcyUxu*^LXIj9(6HfAmU(AJqd8 zN$ZcLdqZNvz;t8TKkIb7BQy3iHJEk_oa2ndz=@U#`CUTk(=BOx)*|&M8I;Iht4qp1 zPK{E2>XU~Xt)F}%4ld@4U1D?7@<=CLCl^3SdEQM!7WD55lTILvzrDP~J}{=N?8%Y+ zuAZ*gGwU`yq>zdXx+jN~A=Cz7hKNEG`K$L$60DMxKnl!AtWK@H!=4;&FN+fWQjYD(LE7J%KsMkOEL$do753!vOr=Ya@&&G(75C)I z)V^ejq72CJXwR^=nkhPz^n)`0jbs+3TX9eBPNogClPu`AS-Q9Y%=+F3zmGK+) z}$ru72VWhB>CU(HX zoRMtPkRqPtMa%+885X^1BE{0%+H+7cc#4&-m8R_1?-$Be8u*PylU4#!P)%QLvC_Q` zTUiy9EUL&07E)eF#pra+?dpVX+!jfB&$Dt>Ht?~os~#}QFoz6Bctz(4Lbl{ldyqz zdN7(F0Pk%i)e`tXXX^n^a?;?h4Bq7-p4qMjf8RpQ4E!g~)&t(=qydn2)RZ*fOWaZn zUS;s&r0Kz5jcmZZ_YI)bpHb~AWnBmrM#B+U%`MrT_Dz9(S=U*c>7 z;ExkFa5PiBU)tkopOSjOU5uo1+~07tX2msHtbm#o{{Drr<-?-aF}RnL7N248XeagV zX+3{$9|1ie<7r)U%FfgK?W=FuF`VAw+>4L3{@L?>+5;{aDaqhZjdVlg-eAqQTWm&Z zMJP)^wTD|}8Ofszv6&O5J5@gznDI54TuE<5;83`Nsz0TGHV#lNaAbQsV zuwR#(qLl{5Ldj4EVxS~9AdR3Yk1}n)Dry~wHIkITJrW}U#(+qfKHLb;G4{vh-|=pta~XN_@LP3fEXA_d6GTF z&S*;TH$3Gc@V2A?aI`}Uz}?((ECLTtEC={VXX^p6M=A&SJ(2Ar2C+xV2L6__Ednu7 z(xSjR8917z#e7i7Hc$IM=r6IMMX1@_WP^cFX**iSBvjgqtuqlS?TOYU z=t3g=p{DlOaJ@&H@aR&wK5ryyFC=8V{Llg^O#7+r{7)!(kMxFca%;Y_|_dOe8Ndy!OHXds1QILo|8Ps5lEwO+a3HC0Q zM6h6q4UL5m|B40uuQg|V*WUN+HS^|ONIw71=YP?+e`lZ7_uBQGnK2)jrG*Me|Bz)r z8Tv!d&>oOX6&qkG z_DB`EQPN+N{-`e}*!uigzI5-i#`=X1p7mi-!O7xZHimGrI*ay-;{c-d$*#2r#E`Ch zVib8;qIF~b;vZeXoM~d%bV&L$hq1_(s)EVkdyVtcZb+X#^b7A^q5E*MsS#h{WbrxC zeRwZ)tvw)ysH@1slE{7a0Szt9q$>i3aEu;#W zl%2UNOe$qCYIf5M*6I=;GN#7aY-nsD5Sh1!{pa}*)&nxS1>Yp9N7=QoS%RUNN<`WB zN?I}kuqO&KRh_?$&4a8Z#d$aw_JRh`kL{aEM1#x*cuEdSoPu#e>1>krqC6j=7)|G7rm{LwmcZ^VTZy(aCxm(T#P4ISC zPz@Q{_>XAWAqqO9wk1KD%U3EGC#D6*OmftdxSb<6tRq*MHV%{gbDAl6k9*N))qJk6 zt^1778}cA`h7A>e>qAB~?loI&*TN}`40UL^t;cv7Ev#6Cin;ef*RsssmBnE&Y&Ool z&s@q%d%K(cd%GV!;7z@%iq+f(qC`2L?)88JstLcQ>!y>d8ECPRwkTAK`@c!EWzAnx zamGw7G(&SBAA!WDXpG-@lP@FiH97M8+DdIoPYP*)wn=Lx;_bAn=BHp7BPiM1MhkH0tBrSuVMKfrG%Re1J;Y8=IL|48X zz#RIJJJti{unp_xuiV!Z`=klE%!SRusSd&UL+9+H^On9z2u7Lxs=Ta*Yt74A{Gb+J zy^Gyh_>!4JDV_g*b?2|?qRu~GNt@jHziWDnaA=guKlun#MO1l^85raC_pz=A%wz75 zG54>%=MTxgJPZ#Rh6!P?CKwMm^3QEe-A7%m>v&qNx+oh{2Pu@{ zLPTQR*<7{ZjPcFc*PtdTYH>41sV#7PCVkD>H%Z*O?OWI#XDMav*mhz=MI`O|zEySrswKv5m9#~nik28@{t?!&l%n_OT5nAkI5AfVn@gtz%bE=*noi1K@}8@R;(*k2 zQKBza(t<=!^G`LqC?~~&`;?LWm9V*Vau5sYTF9qwCTS+Z9wn(I)&}%Z~A3OWTrQ=j(k7BG2$ugK;Ngr!uzrDQC3@?sEpI`7|7134ZBD&D+YIJS8|jS4T53Jf zQ>;3AMiSiT`f%0*W`RQl@(zb|+xDv!!C2mz`+Jj08Kxq_r&z1G4%x2R(D;ey%wXj)&q2uPKEgZa5ATi^?B?lTo7@dM(^xBAWmop1XGTONYotdJK11}{FNz4uAoYC zZLN8`jq>pj$pu=&yo56oRbiS>+{{6$tmvlam<^m$2Tj#UypHx&_oo_H)t{f)ZJvBf z!ra8VIWtR;Lz;aD+R+KGmk1fN9{~?IHHYBfMFFv&M?gIG4_t~lS8C2GteSo3q=QJR z!I@t%s5pgDR?hM?#C&~}mD0dKoY3q8Q;xF_HJ|p;GswPy3Et)ks&?1bdU(r@arU(> z39}DQObfc&eBx#fQe}mlx9Hq`)#?cOLZ`%)-jxL za3smZ%Ll*pMhH9$_{8QJ|88-RHjpHmm9jtqe#om3fDY?`4%-1$o$ZK<&UW4gQ{ngprzWI9(l%9ul@UR;fq(C*+XLRuBfSc| zph#0N(U+Nm;O|=`Aova*{Z-%}7i2Wjvx_?L*_jnM@~R$?fl7uRVAQ-cj5-g_jkG#j zi>%fyQtia9)oKT#PrTFs0!Bo%4or0B(#HSt(G1U&5R8{&Lb4c_ln|e$^--m389e@i z^|Efg9+WS^(asnjIa1PJlm1*!oWY0fp6`8Be8Y39dafCB4rJwFbzt_hilr_yYGJcPNFQI(Zmb7n{yoX^jNwhH8k5)l z`*w>iOFB8lXF6iF6&&nm8St}8lyMQ5Mf!q~wTV#GT6}p&V+vJP)S#vjQ$p?e-obi6 z)OXXJ!~`kqKtz3c{yHVC`X4$QW}NFayp-Iqq5?r~1FarbkwFqM)As z!p2VN*2c@~uUJDI=J~pfJY^^k-g2a2YJolGyW6_J9x&^umUKawI&%k^xs*ZQ*N%h6 zEPfUjnw34gm?$cMS==nvHW4}0oX)&GqIpJ+2QUY?`XLy#t`;_nAvz$?zAUMvD=`q9 z?GsSgyFOweXW1)bG90XDgJD|x0vs$oq($MNPXvuDOLVcfo7i+Lxp_l+5VM%h;;cB1 z@?Z|xI-HWLnzqRQ>XWQMK_D#iG^jh@O_)TfcA%f-b}&{gq#20X`l9PS|D;LPTUjal zbl^dEZ*GZt;K5!s03PpEtH8J2qhW0J%Ur$7YDFCI;Cq&YTpee%LI^x}4Ix(-Ws713cdy}Xhkt{d2K0O#0MOIAM&n3&s5P>JI=ia3HvPMLLqd--5B1RhqTF8HaL40ujK z2F|HFqy_HlEieQ=#H)HhvRd*8cwEs=;B%dG2%O$dL)wXk&}f4hx(A1OB5o$SUwO>m|wwrn?9yke(wWI*{2% zIl;LpS7}OGLCL@;c#HIabShB*9AzpX?I%>gX-%m*qqd~s=s`*c&Mi`{z4UkH%0GGy z-bay;vzVXxRD{h+2*&;~VSCINS4JMRvvEv_TezTVN_!PwyHzoZ59Kio&5HSvDXx<58f{~>IZiY?nYm;N zU_!mE+dE;m7;*RD-p{#vK&G2uP6@V*YQyyL~$XYbu>~v=!noBbf=|epfv8s@; zG2q}u5J`>1zGgN1DLD~ixL{{7^^gpHwrJ88z%0^tYpigDs@CFL8FDdbSGF3cy|o9u z2SmLdl7TTrN0PSUXmshOdzj$kT|t$IYRidso0Wn@`8Z3PQ+yh(I5qGoy~uc3&&h*v zx*Dq?scNr+f_E_*ago3t0-ut*H8ATK);cPaJ995Hb1B0SEhRK&@w2$lv@5)rC@O$i z+$`2M5qXw5oq2nBI?C|?zRs(vC8Z8?wXj(X(E*3{W$7qsO>R8fbEF!B!{{JTkWP;n}8GqYS2$u@m@4cWjlAT$ZbVzb%CAZ4rBdm8t-|!=u>)KHIBSfv+n#+wHn( zZrt(4)x-{4OIHpnWPp(`(;)Edf((p$Ap_EuQA)~>Q|F(Eu%Bqevbz>>0b{KUUBK6Q zM7IHnyK1ZhzpWj35k}na?Ezf@;;jraK%7-8i~(nZp-9d}^faqD(Za*~7aoFN#Nu&-SJn@4WLm3rbsCbto*6+?=m&n#e3V;r@Cb|vk?QEf zLgo1dF`L%5D!1LZa?tRfBbv7~08Bi_gj^5>mDu>2|1D1>)@xOHN-&FYCH*Wm-oVF3 zdQLFeYb$a)521bRIlx*l*oHLiU-SADK{m_Ck2n$|m<)70M_A_cPMJBYGljVYa*#6c zQ@_NY6s6RLWnd)}f))OJnt@2oM=pI~x$N%2F?Nf!^`A?RC)nd-GVC!MD%f`2|E?H@)Q1 z1dURE!4Gk_EMfpA1~Ptsy&9|a2mEGXF2`3C@1*>rCL!);rNkEaXs=oZ{-aej;pXZ? znGm??){WSPkgEf%R>n@?1J@98b=rXqyAT3LR@F%4>bstb%fQR5DozQHhS`j>GCKe< zLIw0kTy1mP`@m9Do%FJ2u(i^@rt8O6Y8DZaZRVENfuHE!_kcuUF1_SUJGj7O<#oRd zH1S(oiyb(seBWu=CS3uKzhxdP85q?v;?M-2DLerG+&x$U{;D7YzuQ}H1^A(&r-AV^ zm<7f&_;`0CA5R$n;bau-dlxo*i z{`+XV>P}?)Lkc^=7$t{Ez-cDQtdqAm;|*4HqJoX{7s8a$1p`Ijo4ab;U^$u+^fXsMq$3BZ zbDWDG05fN`j*_Xu=vSOCIDX|ON&*{nMNem-)C^!S$wpN2^>h;!I*(|8gB}nmO|P>+ z6YyXwlhWHNqUzg3wAnsyWM8*Zf`jh!Jv!Ah-;$H5MXZ4HL(W+pr7xsEm?pYzFe}V2 za+5M5N{si#q^5?Ie>#nlgxASdeZwFfFN~nd=^A0??ZNv^7uN$KZc)AtaB=_VRdaYJ z9b!z3QGs90uVb-BdA>zU9$!AdejSUdS9+7JyxqDSLr*9+rM6IMY&g&JP8&8hoLT2G zoLOhp*!ny4aAI{QZH6=JtiFgw4{ZO+{M$91&6$9<9sFq4o(aw}m$2po76By#f7GMW z17>%t{v`9h*xgnuzhs40O8KDhIbHPTC{zM93P;-lkAA(50Ktk>pI{G4b`;dLUcS@!DEVDgPFn6SBaHZsH~_5%q@D{eUU|*K9k2?xL{y=nz`^UaNhhL@|`TCKPX?0MAyc$`B!q)RCwW@1P*7V1_f z`a9W-A*(i~lhUCFoSgO>QA2WVOsCo%YUokBX}T>oT-1?$yW2fE1>A2$CEo6)DS7At z<9pQ6`?4X_(7v0-CXSh?qD4!A)X}tAAT`9Tc%q3SlvK>3YAi5iirUvik z&ARatZ-1Isn-B-4H7lR{nMF}~pg^>DRiCV`$F89-%HgXDXTj)^DFZmottOslSZ==E z2ZQa{P2Z5mbhH@qf+u%uN1kVvkv1|^0TH;cXjiZV90-qK;!b zjXG-Ls7E%=r}K@I z0;wT1CD#N4gQoCV6Xi0YwRINL9?F7^-QsSf9Ho5OaqzYFHC@m}HdVr8pI3j`akqo5 z7#4L0$$F@&U8klFdWkeuWn8g@LQkCdnKjdC+PB+3qze)`HpUk{D2ZC% zoq#B6iG_-4TKsD2AbvVdk_0sF%<-!=!~;Y~7sM|%W|sJ+&dBx)#4mX9UYqAEBYUfF zFIItY%JTop)7mL8-cZRC@HW3T69PWqGM9lLv8uWB#2q6pI=(%tP8&PvtH$wNE4%5$ zwk_gDN+@-qsrNl&`Kgt`z#xlg`Q|%#&vP9Ijljs$r%>2(WkJ_Arc+4^)!y4g+;6gN z-82JH>i)S&ICh$(8HgH3SVrEgSR=5+x|M0rHU_h*jNY+RiPteX$dh*&5O;tZTz!g6 zv+Mfn;*+v6!wBCV|%;CapP&G?Y?s&R){P$+5E^z0%X@C-~J6`KeJ}Pz0txD zkJxhw70^YFMO5|aa!oaDG~Jk3aiZ6t}IGvpd=BpaKh3 z1@b7%It0qYNLmGcVKfFb9uyByi({F}UAt+?uGc zZ?R_8I`HGYsaJtSG|F)q;m5ByO^Pq--&CjvQ_4sJ#7bGEVdSC(T($3S_%LsTRp7-1 z85jp-5PFWe^~=I#@SG=J4@f?X9YB&-?EpW(Iaf9tJkd%e1CzL72XJ4@P9*~q=U~j7 z=VK*v@<*&U@Lri#ObawoRb|t{dUz2WFr_pSa7#`RAdyxLg!+SpG%&%G7np&>Qdz;2 z5`G||Rx)DE$RW~zzb?WLzRFvv2c#K90g&jc0wPQ)8<6}N8s31j!^nn)@ISc7b1=y* z?FxK{_vImQ)AsZX)I9+oZcWq8swuzgMjCJ zwB81s7X8KMgunT>33qKQsppqE1 z$0;SN8*4~o{jM0hz%-h)Dey>dmmx4}(tjwL6#Q0a9RO)Ax232mW{OP%A)s zkw^nhYtmvElktp5(>rwS-j0LTVdq!e!-Gd)(o#d+9v_q!+rQ@i96SP(gvv`kQI6kH zwBvcwE6NC3UuDqzQR^_CDIJ)&kJq*sKP`OYPXNp?!Cw6Az&e$|t60L+}#W~7r4{{`o(J`vMR+(b!WgT63{ zx0Kq*xSNfr{)RGM4@FFdp43w53WZ z<3IS>Nr)}LEYdd>tkQ(4*5WIB7Ds_!3+Y#8FoQ+3a$4jjWki&=*pNb(4Ty9rLJmLA zlVy0gO=k4hz|baIPc@#*+k^KApAdUM#4V0ruX)WO+u6_wh^wmeMg#286uFaWW1{^f-;8s zW@asaGs3cU^_!Vy-3b;AqEqabueNo*dQWXFI#{4Ft69SC+gVhV4E)C)=^ijQTh+z& zd0eX0%2^y*DaY?{qBqB@5}3MwWXmNMSwZr5(+ot~a38iV$V@J>m~U822I4iI^(xi3 zW0|uW`ejk?oU9@w*=wB@XUA>*xUZ|KLA{%}iFtwbI%%-#q0|OuYno$G$)8U%5UG#I zWuqZxus~r=8dxTb>CV==ERLl^*9*!i^8x&YGFsg$`PWqu;SWzZ<4Mak7=+_Q#%6TdLOxbPVK zFCPCM5P6e6@r$^BD#U>apzKKgy>di9@jDB1xpQboQm)JWyxqR=yG=H2_+C>=HUU?> zY8m)+t7;OAtEYV*-eut1tg0d8>SLJ@_^maBTpjxZmk4~ORW%a1I>j4d8Tb^dY6ycU zO!T~u=TCCahd_K)sr?aGFLuH{5cR=eq>736e_7mREdYd5RRrhK^7VbqaQh#|x@5{V zqcP}37EY}Lzs{rH1JWSl7v;GifXdqrTaY;kJ4lYwj_VY5fYBpcP9RyJtnIefx_09W zD=mMf<%5!e@8{XD3S2I_8W=}|z3-fcczoW=N$)f-|FZBBOetf^i|qESUf!ax6?}lZ z)C1nhs>Y3npZKKVXgA)xe94+FOZ0D7-HB}fVG(*TM#;f2aGFUA@;5j`J$;R3nqw6&RWS-NJnEudGf|0!U;<8gQCNk~H$awsm?AhK}F4UO8(sOst}2 zOX+4twZC)Ljk{4Z)(*y}#W0El-K*?s4>eumdFZirL8lv6axpC$o7Ae-comHkyJ}TA z!L^Mm@6BSPc88RHY@_HPClABPf139}1_TSZl%S_k10vl!kzl`d@dIGytWM=RF8&JV zt9B^e#7&e0Hs}tBE<>pqz>t%TsO0Oh87y=$(EtbiBvP8bWPv8&!4uS!F0F{_EwI?| zdn4Q38?BG-qkX^(w@Gj^DTx(uGCc%_Eu=e{COUX9cg!zxlQJSoFEUAQbK9%7*3Lr` zzR6pA`SIo&9WO9c80GKP#*=w_@Sf=5=>ZWp`E$mfF?oz+fnUwJ7mJ|xS^LPj*ZKB2 zW2!!7w?xLBO)SGuC^n_GP}w`cd4CU1*w}Dpoy%}$ozC9(T@S|CKCOFGn!kPzK1e6Ti_o(!M+1;u?HD^?9wX!ZnE9Ll%3cWcBl|Vi6 zlHX{vIIv2U^)MOFpf6P{`k3jWRdcfy2m}rgc%FBq0RsO!R{*{yzXtzU3yIK0|n|oKAsO#b(4)Qq@p-@K2ElYU>D5dI5uwIip={h?%Sw9fW;K0&P z#^LtbDj1se1HtR#R0n(SZ@TrWmC_Etms{234Lr!B5%?`6ylyyhyxP?S?hnP+Dhs{ z)GW;9T3nku_|q{l{M+-q=FS!?CCb1RuNnfsWK~Vzxw`K8jSS%hKHRH@z(;u10Qe@a z8Uk z_z%VSrQ9zu#eZw1a`EGN1xaHBKc1 zlK?^nytTEml7R_RFg(kA!l7OB>QC|RB5|S*sYo!vk(mofoRo|}5egv#ex`^Dm{Ot+ zq}3&!Kw4cDfGLFxNQjk;7|#_^0dMdw(gPAikp?7oDy^MPvL^NuGlCUG0iRR`II{9H zMH7Sfa4WX~rnx(H39~lw<*Z#e3cm7@7Zx!hG=8bG`$KtmFi6nn&7? zn^UvDvR)U3nC#LJw>{C*HSGDe+j#H@OkATTmh)YIopf3xNj{YUUNBwbDUwX2hbtkN zEe(-8Xt|TCY{*+&hbLCH*WmHl5|(mO7-8^ehH1`eD%7q^jN5Qo6{(Npl5@ zW?dbVX5aG68vrwBb(Yd`@n3Pi>RhXvxQUX$20b^!TS{$g+|5Q*^7Y&d7CM?}fP>x= zDNVPvKojtQD5b+HqIz2{HVlo7)s7scpqurDRMjm+4g4&i#1>!{>1!#bMxm;;_=1MH zEbwa~J=YAT=LZwr{316gBcjxvYXTx2kjUXPJz0kLwt<>{8yMQe=UK*+d3*5Q#|Qf! z5OI@VH+zT4V~7h(ZjRkpp0U)G4dvl>>_*isEs%0%cxMyKAQc@W%2KW^RFB<^^Zr&w zxnj%un%fuR*_0sySwY8(X|j(}59n(7n-P|+s}JbRx2gS;KRK&hqU>2t5PyBO(jZ!H?#Io zGVrQ5TXh^io}$W+*Ns~Y-%l{-R2W{pzVHf6DLoxXTgbQz#CMg3^Ej$?c>43gQ}BO# zKzcwDS~LJjN|grA&Q}|Pa&Mm!PSdz5gx19?tpm^M&UuA9;9t8t+kn`qD(E(pYj*s$ zTb*X^Ba1cyW47c9@a>+AE5KQudRO5T_!I8b5JGp%ASFXQnJpO$q}|00gK@V_{&U19^S`0VGsCdud24f_Q^Lh zdsgYPRHdeU8t!TuS{^*iVsS}7i|Hjj zsZf?TvG$_h*w>K49rc3Q8nPv5Iwsr8|7ad&mHoIjga`7@r0X2A`c%)TmAhJkGf)NIG$DMP@nqf}ym#|X(gPxHF+FXYd%b~`BcBnzsuk(tG@nGOCR*}&6Qrbc#d*J+2=d2IFY@1PY`=%h9 z;-e~ybXnK~vvt*op@$l^{LQs>6Av{mwrCI?(F?rV*5yNuwiX>xYBfvPeP4^Jl7S!W zk?sL=V5)JTIn-#Yl|v1*QjQNb(3@Mc5-4%8NF9^&r%CqwukO_9HA1xT&pZtpKh{X~ zq&%!A;9+~R4LXCqxV?DIiPImDW(7d3v~8H~^TbyzoEOpzMD1ua*O#Bx?0nz3qba2c zfQOw<)hh4^t7^8eT>Y&R4uB7ThVuen=2ZjW1zxoZ{Ek-*fOmMN%K{$mRRiFaUR8xB z^1SxDkKee}?0~u2;ZF8}c-9bdg>y210dcM&VN@N;X#arNJs5Lh-t{lTEwn&5@r1e<|GSl!ti#CtRG{<_C| z2qeM{FIPlVzh~D%PdH^{0}@W50uswc99M)>c!7jdc!7jdsDQ+>5yutb6hdGb+2EV* zyUj{OBYb^}-}NmPI%X0;f}(ZcD~(QGCOmTo@xfgsyut#6&05#CRO{N!E02f$3Gvl1 z>J`_hQMzB)+25Tlf{Xz9i;JmYAlR6mXkXAz4UsOt8k#!B$t;f=^0)YgYN{AFHjP!u z8RUK=s%WfI7j=vxg)VDG@;%#54QXG>qmG2g@~EK?lw8!&84Ba6qElpn)R1Qd6IG;L zsf#*#O2I}Iou_1LCqYLJcl3|OzsQn6GaLLxtCN$4&w8Jtdnh4(qd4pqoo4!;MNxS! zKo;$)KKV@DqGmn%qH$q=%MG;`OeV>G3pmZKaq!0fELoJEVx@e8G`2J5NL4%Oq>AX# z+EUeST&c>68k86O&Gm6Mp3#A1Y6H@7WC8?Ykq*F1qqb2^Eq0N*GtZy3_0<`TuEF17 z7JtRcV8)lKw%?u9wst0>ZaSnIscTVsrnz&4QF_<1B#D3gy5=E9C3B&2BGOz_iOee} z$xPk*SRfzZ0j)j^&`mQCrEbq8^ruOhfoS}p)()xpN|UDXBdJJwts`%KW-F{H&idFo zRT9fsw zZRJg`9h=|&CvYd)@3kccnJZI-3!{x@%_12pD&DdU+v>}EZI2>Zv$bzCz}~?ot*hO> zks-U%z7zOoZr@4nth0SJ-Igpiw6CnK+f6g+@kZx9#=G50Ap{~$w(wV;))qLfY&UW< z?C8I3v6^zoJ;7CN1Do{lxMxL%Uu>~KZwU(s6NkKv|S)}gGjcEVLwsq4CM5+5U+mAiV z%0OK=%|Iky64QO2$@m+Wwe%5#pYW{j!O@c(V9znt@0f(td1@jraG9 zO*#12UU%>aocFkg`0-WO6XD?*%8m~P;)+b z=bXBq=jed*Hd!M8IcN(O1ar;@QMB2OsOrsbL{%Sg)>PAG)=i1ihAV9YI6iYFWRx2t zvRCZjHs!|gQ6>^;VSS&?VoXX(6@we2bMT0Mw{CZhz#EwqO%;Sw%GA?VqGW9?QLh^R zicF`|90!Oi*#Em?OANlAnINMd5Ua!jAV#S+toljj1m$Squm8d+0xlQjV? zCu3yYI@N%voc`Bo2FJ@E(qzlydQB;kfM4xXwF>MGs2TuoJfvzBcr&Zg1HQqCt0x@e zguoYi)d2VguUZA3?^OffsoPzaJG6@c$4_v_`@o-h)iUsH77KN$KjP|8563cayHz!W zT)iL@0&iUesXyZCaURWO;L+xOBatg2AtN>L;A5MhG=y9|!fJ&O_}n#wT%C~#fqSl$ z61h6eYDFUOQ`<^Hu6}K`LI`}kHC$sOSGhT>bETcMs%3FaRX6Vv&AV}l=8A485`lC>@efEhY4XqS#x;aoZS}Mo0!gHXkgJz^S`C4x7HPFK;_9D0 zt%g7{u93*qmop)djB5zF%K29vd39v2$d7;9d3F;UDQ<2lrQxqWxW*j_nnY_B}+|EJi_>8IN5scSp3dOc%wPv0>ubC-OO+YThg zlFX;?;Nt&>WG>!)XjWF^s4v+7!8$^g)&z9XgSXO-lTgv;Sp`THUHLh_9$Eo1R?9E3 z?^%z~EA0+1!sy$F`l!1?H~zd2n=9>JER5}B5@-Dj6!7-SVw7X~_ZXY!bRYoZoUGJe zJ!;Q>O2|aF&6W*X_Xxub+TqAjj4SIks$A7yleU!se4?ett9`}U1OCRVwvjOx_=3C# zWL+YMgS04Q*edWEj-tt~se|fJRxk+|RZ$!Km zsRe7)NWvofMP+P%l9W94p+E^KSclG;D?90{fBeC3dr>P9^LE~P{ zp*)aSHha4@%X_<$F8bs+w=t={?sQr3UNa?KVx3n%T_(!C`a^0MqjipI;~pyl?`Y%8 zkygr{;*!(2$StwbZfcq5+ASO`T+wn%lYT2J82ToQui#|AivT#%E7*51|ki~Gi}@Y50t@adPpi50ch~eOxBeH%x%{+KtY5M>mH|ExefephwTOJjW4UtbmS(T_bSs5* z-kNfgH|fd~ZA4{+4Q7xgZf)cB8k4hit8MG#DKW=l*|yd8L4#0n2EysCRB^z|iI7xr zzROXMRB^n^(XLdrAM8jKqi*(dl|3{ELPEvSE(b9x-p*k-Ba*6iD6SV!co-)`-!b+kRD*8Rjf(B6OEB!Sj}Z)9p5uwVH0e+zG2cr>Dqarb!(ejuR05K@4A7v(O{Hw zY11D@KeU#k1;>@`$c`)9p&eJYT^d)`b~QDN<8SV0@KY@rpJk;iJpQoUgm#1HWDj_P zS8c=4PR^HW8@!>Fo6^(vTs-JD8~?D+h>W|h-MWF?`sK#k{^GX2O&^od^{?`gYTGAm zef3jckZq%VXjCLqvUi_l*p#dwZ5i%V0hm&p z0{)lftCE3#WpzRZWLT611h5<-nTy|2jGEwg`{3FGzTd01lZND+ct9Wdre&s@2L4{o zR^V>FOdJCD^{VZ_yI7S91Lyg7dwZBxGA7_td{EvFe41DFfO(qU-X6_W*w2k)!FzcR z$T{4&yD^_LDkv}b;>-)Y)T@TTA9_^}n1_}j@G-@-0^VVD((XWJA!&DDIU#|Wn1mBp z&POaiu8Fzlx=BW$WFh{;L=P9I`rp>+)K4=*|ln017>52Tk!J_G3_ zD(wf>1Lkr*1M?zwx!pOGldR17c1^4vSU#$TXr(~Qv0@OnfV;YQ*h}7?mOp(lqbcQ$ z$8Nf=V)=DquOHu(E9jc*;NSQ`dDQ&hWzz5|V0*`4*Q*A={k&>B@cU3pl)xPy+qdpz z@SeE}IIya5ALrr@#T)=;;Fsk%kU2oxW?BZ9YiBZ;VP1K`q-c??4D-^gz-V}9+*WDe zkL9tP%)NCnaD&-(%RtiJ5verBe9E$pfnGuaWT00vFeCjq#9Z9oXM(LjM*lG#7fb~z z@KWPpP7srUtm2gne0`q_2Ecv2YCGMPnL|0j)4MQx0j3A#oHjc!vP+nN*DVJ50}UVR zgZwc-#{Y3dxL^k8q+@{00Ao5X%5lEE^Hh@=`>$(z4Uq?Apb>eOoyG+tjq;(0 zmDQ;YFx8MjZ)PQ^hnVzY)_PiZfOXHZ|D9l?KV!ODNzRgpT1T_f#99|E3uxpITgIqf zaM|!I0ccs3N9!Kqt$gqZOzS9J-74~75Zg`=b=6DciMsN(gLi$2>-e3z@j!jOe0$O` zJ@Fl;Xn?-J2I$-}2aUiVF2-K)xAPDU{Ek-*9Qts)on|hZbXSMebBhH4_&s^W4E&x~ zZFR_`uluTwT}0z7W2&|QgDL~4)=e8h8TphB%qS-#8L%Ai+J{fd+D_ncpC^Og>e+hG z2>b&d^Nt0w<{k5L!K$~Dj%74^kF8i$FPMZElYwRKgMZ4}O~xOXWG(s?79wdokhRHNdioa<4Z=($L10R`orQT!m%Cp^ z_q4n^D$mOubCqKS5tr#3bR(;f?@CHHY~Qr&u?v0-SQ62f7mGd$X0+|3t%us}hk75~ z3Z$2hL;obZp9f?4DFy4qSEuJjU5#aoHZPd&CnmFe`4eBKZw1mJ$0kqfk-OT})D(Ie z^Mlr%Z%xmMRPW5g8t3zNHu z12V~sBgMrv(XaMShY3HbroCO}37_BI2LpV*m61Vk4Dy{=d>z`=lEOtI3CjN4+-AePCB-`J1Mj_>;o}Y=)O1?{a@= z`T!eR#+B`GHxJPsWPBWI%N`xbvA*old0NJ?zEriv>2;fPF`bz7Sq1DbH+!gW%g_xJ zS~*e|Rqa!$3EJOfbJB&r;p_o9HVhUbYQw9I;~z68FmqNOcM=+>5am4~=am2LO11-8 zC&||c?8$U>d*8lpKiJ@%a}_WTn@`KnNeFBATh_R&^#b?hXQg*eqym3tWL;lN_3HzP z`YW)p#rZh^6I*~;q@RVcm=mg6OLXkvdJGVE%)Zjhm;82Uo^;cWjcrrpr_DFE6>D9j z=7uIGFFd!iiet$Z1b%)IdP-USwZ-c*&-Qa99le6RO`CN-%|N74VkOKXSZrk_fg6GO zs_uE__*tG31BTVd`0}-S*Cll?F!~QWU$s4ux2|?hq&9rc$b9de`t??AN?O9tc3xZs zW|6+L_cPeEz19+K2-U>$kF-SX#U6ql5cQgtU`){zY%89WmRBM=pGE}R^U^rQ-FZF7 zV*N>3&Z3|9SBkbX`mjw^vbMna#PnM*Rz!;&lz16;hLqaROI7ErJBv!KRIHa*TarB@ z=j(FR$eG-Y{2ch0wpP79-Wug3Z=3-KCHHa8y6Xt%i;ROuz48J4`oU+#sRI{Jg5Q>P zzRLFO|KNM~ic@~@HhsuAK9f10ZyYb3%qfiNtH$wLE1CIuG=&)Im8bmEDD$L(4V9cX z^XQSjAXO!oVqM)LOuXq`r){OhD=n6g4?Nuao!HY9Gd2A9{_uqnTOR(-f{L0;rrA7@wM z(cb;aIxjkwXq&qbF}8_1_KME0Z1m#I8VwRpS}C=TH(_`UM(Y^n%5{2MkNoI@d`P*i zMZQHJ;gnK^j@$UjU^P+AEn+C;g1!QD{0kK)iyh9 zmtU8;tl$39a=81+l$=6 z=o4GDIGvw`NDbvdU4Hp)m1hggU=wDp`t_q(I5n*6$H{y( zOz;AH#Mw=U`j?Kts&%!ewN@RY+iIh6JJMTzzOOB#yw|pa>xbUBnS`EXrL4n&f3{C^ zOBR2?C9Bf!kr|A*`c)=GY+0h>ELYJ7!m0A=-?!a(o$GYF^Yi+Mym(Ch91}ySkpjQf zRjdFvnQ=-6-Y**rJg6YUuZKF>3h>l|4EzEo8v@@_kb(cj$yP2lctx%%1EzTV8I4z0+Ic*oxlDE!2(n|P9-5%x3^j$1maaZ2d#Cmc5111YKT)< zr;?XOTwU(A4uM$L5OVcNw{-|CZLNO`O&qov;{g`oJ6iyCRBH!S>xk<6jZQX|XYRnz zz3$jVPzl>MY2Dh;=y?m@ymd9yzhd3$^EXlbg?Udq$j%$*AMY8pjGO=F?Xe8}fmO{V z`S^L;^=Kb&pWH$5&&>dh68OKYPUel{ye6T{YVIHX-#@^g=L}mlvfmS8CRDVF0oOwyrL_ON$ky#56vt=Vyw??q9RV`03F|?^P z8*o>fSALq-guxl)KYijor%aPH1Cf3K32}J0$L zCQ3EgSXI2`hN3N_yobA#k*uOEF(cR~$DGS;NOAxWKk*oc$6eD%aj zI$-BuBU|z%&?*p4nO>f^gU(8+3zkl5b8FmTf2c_u&rW|~7jG>qkww`_&$8PuvU1Y5 z#-IbSGAX{;SYB?WR3X>P@lT7ud%Wv7Xaq){e%Jt8URTh$Bm?s0#C8`6p<32LPt9wh zwxn*Fg{XVFNqDwPst#S}(+ouUV{5FI7EGcxA^65#ckl?D7rKXxSS@sY{VG4sVVHGG z)D?05m$o)RpKO(OGnJ^5DzyC0=jZ`SuH}oOYFEpbK>W7Wah+>Q$KrUA*j}`$$A_7% zEVVSDhzQHJ$&vXZ<3@@E;Rvhh=O7@D<)BazSjr{{x2we+xh`>YiG@CE?O-`j6UD#d z(H5m4!fwi1*0eEuLuFp1c~eCtG7sbHInhkHDFr*X`sX}CvNNkubJKX4k3ei z=60!KC(14*IIPfppnQFewI$*-ufUWtEM3n=DpZ8uPcc4LlVP&ik7^Jw_9H$P95e!d z%IZWq@H<|$4fyMVGqM%m@8X@g2fVviZ37-{Rq7>pHIvb9lzZq-z1dv3D=#Sw0%N}% zR{)8fYQjdW5HcX~RI+xPX&shO>fvBYZ#5h80Fn2lyDCw>)MET0Hkv9j{Ch>%z`wUT z*(g7HCe!!4nu?^O`TOs)glhbeYj3t|B2=A3gVO-glC%t^CV!pct3eLHL8&K}>*Lg{ zxY%-njw9azIYWl4&L11+FRYZQfb_hN_l;_HP^{2V`6~?{6C=zKUn_^W9D|U6$ zNqd7c>*hAATzCH3v>~Ffcfk*6E2S~#08cY#)E=FeRysG=oRzhjv9C4GH+hT>8iBJ1 z^`h7rGg0+cQR-Z74VBHWBy~G9@HdS(8vcSnYt_4&8RtMNB@KbU^r}_hf$wgp^%Qq7 z;%ei2np)}6!1q~IL&((~-|K|HEmqYKa&=ZF1b%f5Ay?ncguuD;N*gD59eUo!^S8U_ zD?ofzJNxeWeJvicL;#lR>*u|lIsLh?157?))#mD&C`w(MSk>>%$*5JOlQsvY<9`vn zY6_GCe6c&V9a!o|*`e4Wtl&$$fwu$qEo=f~XRu+P8-J6Bd;!!>&HSO8IRwsX=9O;d z5Qu3S2yiwt*uu$Mf$~QjA6CTCvA6j)Vs@7zX5g%)`euGPH>1^dZywyDk8D$O!5{R1 z^njoAsudvVr<~x2xTQVdR-N`CYkmq#ZBW)X+KNj+xj?Cjjr-o-oB{-=c0ThnyMO1G-a7L z@X(TlN(d%b#)M^H74Ie!Vl$$xSAV(s!zNTmW|Z`8Yvg*|LvC*&Khztw2h1bbG7a)V z5ASk4a#sg;>Mhw%rpVkvvXB+Q0#cV`>*G|NI6%V69vcVH9c;UWvEp1zSDf})ZT#9mwcUkTI@r%g|$sW2{Bb%`Mw@BRFf552JL@jszitlQQ5` zos6xIb)DN8M|0%2*VaDD=nK9!Q8#h(WEWnI`<--x-JC+yP29{0QjP7M^kkDXg=jHx zlaVXPWgXZ)XtEgPWl=x}W?T+VCv^1<2UESw$#5`*2h+6ng3p=GUE|aj_uydOmg8}B zF&_sf=Bo1>rnBJuflWbEI8`ScjLEWfgM%SXszk+_Kh^mY(^+sX+Ay^fPD$8wyvU5rLq5Nw?n(lSK1FAJfO(*@a`jn^a9b3`@x3u+B=M2<&3(go_o%?FqK`=KR!Liw4_7YkU;lVb znm@-Hl~VK`UF)ss0w?AwVe&b!T4!g&+e{~=d|s$((~2k#$XrDiCHZ1S6(o6@Ki}-4 zoD>W0Q%3ez!sgP+K`f+OeXQ+?&oN<d85~y zSK*4R!`dfP!O~1QuVwl&=gJ|bjTnSWv(R1@SpLn&Zj~g8yXj75#gSG9#&*&l@0_Tc zkWl#3R@X@nsGY8fwiyvC)u267s)?#aT0~T>+#{lDqma_W%%*2q84Ly~9akA%J)w{< zVW^0zx6tR@yR5G2NS$=@&TW$2#LkJj>939G6;_5>@cf+?5|>+FosKkeDgGYF&Qn1T|V0r|xyJ@|_+?kI+wZ zl@PA^Q=M)+@b8hkUiyHG^Xk|1{E>={*aJ6v{L{Ubf z=Hz>`&oNbREL4KuWOadp#f3IwK%^V6HksNngZw?5@gF7|F}LADyZM>I`X+?=-^Ge5 zGPOI4sBU`n7aPHku`*g)r$^dNh(n^3F8^{P>!$zKlwuZeU#n^!d}UuiziF{f`rZxb zZ(;Hd%c_76T%(GsEtwGb#5IISrqmA8{Izvyi=*sMvsg53wJIe8Z*#KVaRwiqt5CGI zyqysoo(X}d+N2LA_m|D#IbEu7ZbB2Oii7^WQS_%)N;3iPZBJniM`2~Ic!mNwOGQQB79 zw1iEMak(o%43XU^5G&NCr4d&rXI@}wQ~e1lwP~|4J<6GT$b)%GZ%OGv#)kuvBS2bJ z7X3g(H)+GwNv?Yti0*0mH8eH?C3`F&ftnbzvN8choLMSgm0pV<-+4fAYVW#D!PXJ*KUfWVm8sPrkHUr>aSk>eVteN`}^Q082 z*_U8{oSU-@EX|2hrDrS;pK7)YbOBv$VNDmDYjhLJj&pl^8r4aE3nw*qR;`p=06yHR znrL%%LM8;ByoQjgQ!^p($!iEJlRBI1{+~H(ZF}dY6;Zz}NwfD>Ms{l}b?pZ}+~wD2 zkj|KiwzTD^&fO{_0!b+ijEs;@jBZ*tGWF-x|mDoU8}@xmQ)EJZy4aZX|DU(jM?*UbPDR ztXK7b7kO26Hluc4WY&E*`vuH?RcCL?d3_Un8&}Y~i^03*Dy3}yeZX{mH0uQ3!m}Va zhNWF-!^QNQ^h`PGY0K}Vdzt~X`ZxtDvMywQ<@PSmLR2+#Cy*3Id$TDz$rbj1*bthU z(nBlGs?&Cy=#ehIvO+!o-2w2uUbXxigL|CZa0Ror z-ay!&J7*twBjc0|Ie$kZr2TKry#)8QUGETxz{$(EY|jyH&t~9WE^!rDO59xa%f{N; z#x2{ZIMKyHN-(2NnZd7fYkENBPIweRWbmhx zHUsfP8tR#w_HQ~B?ycJrxD zRCV-*9DR4o#sS}XN<$){1HQ|urmYx|cpsP82mZ55+zu=y#w&(e-V*X)p3=W+?#*z& z#jP0v5vcx6>J7ETEl7O3OI!t(66@Zuwha&?Uu+0`vrAkCmJ+wt{Y%!6FE=Ji?IN$V zy4SkEYKhS4JiwZ)WGu64j4P^WTnvb+i7f?0@qq1w7np(L2Iu01?$Qzv2jawVagYV? zGe*W$BT^F^qV_RQ_#W^qH*E#@GOrr6L(2+s-2!K60z`uD?qkGyA2Kxt`y$^h$ zvCE(cEG5Q6SY*%=20h;;t^!Mm^_Hix9~%)PGZ*mLE^!%HN~{Mq5)YYQFu!%+0AK2{ z=mDSVdRBltylT*xS^vAIksR!#J>bz+C0|&5iw7BgY$gLf-pO8aueSV7LjJ9svHD)r z&W5j=H>!pj8GJoKwtp!YWH};7%fZ;l)ivK53;K zTmXM+Rg*KnX6{GKagx`}OA&LO&z*(On`M`|(bYa7rBB&S+z6VioeY;7%O00BcO)3V z6TE5}_zbIR;=|Q9Ga>LtYY4geMJ5E!f3?xuNaSjZ)dmAx+X20smw z?&nEFYaog?rR=)WN1O8KD?@6k;K-pf_Yf0784#s8^iT#L8%gOrlk_<&!=VJgjZ!Rjkx+#H)06HzJ`#iW1MgaNO&7UuJ9pD&TPD*+JVhD@Ne$G3J{Z3-DY>- zNVjVRh{+8hSC4hV%|J|U2)W7*RDEKt`LPRIaN#TN!YZ(IVT-$PU$<-(h|y}VZ~@ zMBqcbY5+Xmt9CjR)YkX0{(5fIG7x*!sJ>f&_e|)}ENBR^{+4dnG7v8sLawp{6WTpD zLG8d24&2!78UjlPmfV3WGoi!6fu#`+V4qA9Kw>Uq4lr9k%yzCtwbh%k8o_dM^UfVy zAX-iofM^-ht(BgyYCT&5J?95{wgh_W2PUjzQ$p;C-VKJp4IbX@#Q#@bwM=Zu2w6V? z@qX&A>~5y;<}Pv@T7I9a(6a0)xDEJluj&Db?Sv;3@-n_D{j_`A1AfV>=F^Gi?-=c6 z!f|QBIQ#-*`jyLD!Q#xhlH0XJ@M3_d0Itgxd6C|%_?eZ9^0-8QPnhc~y#AzdecM#% zODn-IHr`)aDT{(OyHr74mN=6+2XGQ)8GB2P2LG_qcx+A7)GS-V{Jkem4|twc$%oI< zB5iU|P8}dQJEm*v(eAR<1fB0XRuBhou#2Lj!Hrqc*uZPV!p7nqX4^Zgq(QlUm)AE5 z&~^a&w*Pv)YP^^$t=(pykN{^_oP)!y0dnMm1b9=$S0z9<{fiNO!^)ryYNGITeXY}H zezUp$l9iI8z#LwcuT8lW__;SmLiJ2Jhr02_UYiSxY0X@JVCAaH{ub_m0 z20frrg18^KCqv*S_oRo0!*kWzfY_HKj4QDkIkLb4{-hd_+qP2#oX&;ul? z_6wp`t;fb+-X#{GpC;9)fpgTB@rmS=g$ast)WRj}Q_SQSy6HVQKb@=E0isb4Hj+m< z=~f_uWhi>Zj&IogKV&-K-rsJ7kLe;k=s=)+z4|+MjF1R>Q#%X4G+~=LI9pK<+nS|Q z*PN@f>0GHfSK6F&3uvSaQavTw1&P7Zt<#0*%O3G+w>;;PrVz-YH$%CukWkTRpYY4g8{kx51kqEq&RW%YzGfIp} zh?f`MfyhK>Vdc$u% z;XY;H#9SpT{^pa;Q%vWxy?Og(n<$>Eh~j|MbkR4TqzW0Q%WvW z_E*9tee+2=+q8ZzN8|Gb|2tQ;73gr*=G3{Q&8l?~uhzj&CoK9S#x%VLq4dkOy);`{ zEs6D;pwNOyi5BuQXBEKlcSsf7|8q8KBwlNQ&RUjg8|zV0INxHN@3K6;;%I3L`JSthqS!M@=af0*|n& zCWW{0WqW@(I$^xnWt4tnzp zL>kyznhc^S8}vGK)uD|Jh6k>j^A79c?8>{$G#05Sc@BJ(32pMc%o)WcGg&9&BCuqx z6R>0^Hze_ZC3Br7SaPD-_bMyJbl^p6Oy}y$nGpEnHH1iRm$jyTq^Unb)5Wf-4=gp+ z0YPJ}X(`gQ6lhwCH0?_CHb}sj9N$DR=+&^0>d*9g_rjS&@%T3t6KW=Wx@Blo( zs+y6FtJ`Hl;2~=WxjHHn0=KLotZXSNYP0&0S^W`a-O07}ff%Cp_eWgaFB1YwvnCHZ zYF%yCQe@UrVAfJ(){>j`AUA6XSeg}#Q1idGrlXW)K=8^ys_3F+z+6Q&c^R;1re51k z4weBaahm|ipjJ0lHK=K-?`48_o%2TP;?#MT^dMEG9{?Y0LMPAgFq2R+!vjm^I=4#A zG`r03z>+!0fTF)V)NFi_m0~{drEARR>eZPL__{TOT)i(70zbKiu&|qvQdRl^@B$M$xf{bw zLP<9Umdtf-m6~aG>Bhj4ImiIZ%rBUIS6V6Bfp_}PhNkHPT;0WLg%Ei38p1N=OI&MO ziZm^aYE4U#rd{!AbEIi=plNfYDPBH*t%}^1+VUzzn}~eVcyHvvT-n>;ZF3dki0_o; z^Y=~Q4V-(3zyos?@Qz+JsC87!XMKCUZan8aGz%-6TXDzva6w*1`>ziKFQe%M{L^&> zR5`C$7pL@}L|)9h6Dvm;#N;6As`Dz-xoe!NGbMO-xwXdJ#Xo9DN}J5$J>7{J8^4fL z!83o-RGnj`jA_6Rc-0X2FILqIb6kBf69T`qhLEf8WWvf2tH7R*I%yw>lxCpf>RV2@ z49se(NvF|LD_M$^ER9f-B?ia0GZ3Xz6IC6sI}4Hi?8LjwW#X@=#h6@V#C&0G_vom#arz?n;1<_o@N#1gmQF z#^H-<3F!^pyFQSh$*0JHM6Bt2Ts_=f*$Tw*hL9^96^TH+YzVnJ>gV{p75Fl%Y6!Wy zmPcYM@W3Jx@-umMMVv%6unbwf;EICP)Dg11JY-8i;v_3rAVE^QmquI>Cm{q9q=t|y z;v|GXg47UlMVy2XNRS#ru85Nm0tr$>$Q5xCLSPxP$xAW~Q`dq+801HtYTu8ky*#G& z=a|~^V`>|ZX*XCWUCH2+8>%L{Pi1JYP1J2>-o#h~i=2*KXxt1EQgx8^hP!*O7~<2X za#dT0{+dHmhn72y9j{KCTGLS^RosXBrv$CZep z44=R24(*W^NVw$(aNjx9`7kAt_=`4<6}Q^vjn|DXiz!Lp&Hy7{o3kxAYGTpQd0xx5 zPCB;DDphS;G%3$E&evF}s|qld1j&#YGg0uG*}0Wn^>gaZITp2l@`<79rKxkF-6X_; zP1;EGRa&!X2|DO?XKf^8u_Dk$0wZ4=q%C+-BVB31fLB_i%{rlx7Hn*}mX+E_;4H0< zT7oeX1&wqAlbVTwM!Lj^eq?13e;MQ~w1hYy(wuv+$#{;H>dqFM%bA6u)oqi%aG&ay ztib$e6Cyi3AhVk!!j=a%y|vv9xJEE$$#{=o7H3igM6j$=f!MB7?Vx&~u4=IPX>NND zn6=ig2bzVofy)?poO`|u#Lz`a(Z&5w?{JN^&AVQw+ss4|bgH_OHDlk(s4Z$LiA@#) zx<^Y?um_i)m8^)WEbTZE5(9PW$`vMyo%pbG5hR-)tu zQuI(pL_q*MW^`6prH4vfF}ELTrSv@DW4$Wi{H5K@;)Bpbge`%~c-53AUe%Nzv{L#A z@Jm+J^bxMUkqLqSv4)VVUuHt!wSV6z>!z3Vzz?yy$vqK+Yg7A?sr^xHYCkfyKf+XO zku?giG^^f~G(W?8hI#k__q0Dn^`%9WW|ugqB@S?=lvod9%?OH(L`vFsibMi3r7@)E zzT7-H&;9NJ3586+dx9zF(uq5Qw&~Hnl%4cO6Z{TWP^}$x0C`u-4pGnmV|3hO&Bay2cTdhO{c=I)cvF-nC^55rrdg%FG zt^%S=lJL>7Jgq&~82>2?0AAo#L)0KsCLRpm*L~>$@gXS3TX}^KupN)m9ZxCpk8a z!B}t)%eaZ=bLnZ^h)vE??GkBg?^?;XpRkaxFH1j`k9+y~u zUt?1nz=5eJyYwOOX6oGe&u3A^I#yhx?S#th-@1 z6G9pE{<(@sGzPyHyjal%8q@rBO(W$5^DDZ@vWjRfJt_F%+b+F@Qd?s70?_nUGRd7B$=wGcao+Gp$TvkE88AMAJ1{L!X~a#Gy5Pbpt9(KchQ5;m8f zP{*wq3>a354ukV_UfGrci+9~@M zy}VL>t9Bo|c#4&pB;cQvguk?l-;|ZtTWI7TY^8F8kF>h+58XblQ1ecrb|n7tBYsH6od=VY65i22JM$hAk%(7jt~P5hnaRR-+yMKS7A#OL;KS{n zJP|s^;PJU?&Z3EZ!E+W+ggWUc6F!BgwCQvU)61-s z9W?OGR@Lm|xcZk&2>gLpEdzhDhL@|W7S(+XLiH42Tra=&tbesl{m7>N2%9c)1NuNz zs`331SIG_N1F@+g9P2Os>6l6HG7X5A2?zL{!quyxsZoj^LMzPyM2`dycd&gzJWn=n zU+rG6e#hYDxvKDX3_D$d{c7{9IZ>+D5p!vFO8uy*{!MX^fEEtofmGoH9!M2VObLT@ zaZ%h>D&HY}dgrC{hwn2Yxai)Po@jT7F?o{jG>)wOch%yV4PJeVRlR?5sMpGn2bD&8 zn6vbNTfAxr-0D>WU{*gQUT<`&9x#V+NCwv3%aR_HgbV@IJ5$)%E&CjBCZy5-rDgohj6;P})lM)fPObIrX)ewsTsC;gmYSVAdnO zk%mM)cf%^37rS)-uUVo6uMuoaGZ1yslT9<3C+&xUMY*_`FE%udzmJtN;sYP$-8x6GGEPBk4LD zd``B57+jL8(D-mSq6ehOWRV9v#9OZi{G?Y6fnW8i9uS9u1>+h&QZmz?Y^8bvex94% z1HQ_uR&egaxeEAEuNnZqWK}AkhQLUzYsb8~zLjy^!v*$$7%3gMEidTHh`+goeSZ)C z79hB;NmS@g7$qnX;46fqTKveA&`Scp(0Q8?+7GkMd^S2E-g0GJwy@ zRM?jlZ^J6ePL~EJv{CT8^V}t=gHG9<=O$&4Y>VBtq}|fo`Sy}))#wWqb)YwO>E2WH z%FlvZ$~-uy4nd%lG0|>Lk)&f~H$C47&va=+^8fr?)lT*xAUcvPTyx^ai`|4(MeoF_ z54&|MK&+G`A`+Bcu}!{2)OfDGxCOc$0Fxa7>%uE3eC ztrqXfeT4a!bq?UnI;#$*oH905yjyGDt%&*FwCP60u>#CatRgNuQDuX=zg!tIixbMZ zWnG*)?-8(*OoDvI3J-tobJc4d;d_-R%h zYd0TiWn@)1ad(O+9V>8+J)=y1z(dXZ34526Ze;{8%*xwMh<>0+2=+alba%Tsg-AW% zHX9#VG5{Hyg5|4D5?f6HpL z%kK9Q5ZNkVX~fm-T+?tgz(8qA?{3P&<$-W-v6A7h5tX%H$QWU76HGPV&#A}M8TOO$z| zl(FrY;)rmNOdCap!#>8$&stsY&sy7Ot;@Ps_?_SLyq^9z@B4e*pYL#euj{__=e!?jX*It`d~EjI>a9y1Y3UCzqqwV$ll}>n@0-HEUQn7eN0I4T zm=618qU5UMj9iJj9G)Gj&}C^QuF#;s%%#@450zz}23-%y6|PGiZs{N3=-E<3(?hz{ z1Tw*Nt&XN;x>V&!pUO!F8DyF2acoyypE z;BjBpvqF~&TA=ETrz)A8^VDU|GcRY;<|*`Ifx;SP%lef_jZ?a*DW?DaMw`6XO753< zlF!W++)I~gR{D4BEp@#hC)4HE3}s}xUOxN5wZLvxtp8+VGGlMP=zj4V}Yk2-PgvyGCQR% z+?w=ZlXaFdvv|4|(`Tucp&_d`3`;T@rk6yQH!)N=Zzf0$iu-cTx_oaboVyirjxWgr zq?nb>UZKm!vqQaf`D}KmLYJyBvLwGUJEbn%n#_{OS<1|k=vpkWB#lxpQs+CcaEijZ z{9ZL&>R-Pu+b(Q`Nie+;ba^8~p%htn<%GKYDm&Cemuq$mVS}%%{TNLr(dB{Jp&q(C zBsPVGmtin;q(|%lo$vrKDdJx?E$2FqHn;+=QVr_GU1x)8*j}buy02 z>2!HoL!FFqIh`(R8tP+QIPoL|$)PiT~ z>NZia9yHc<`0gKD#*GblEjK)LWNY^Yq^-=|54%@#sQ8S%Y%ky3|Gp zLRrnTd!V;2wM;=M>zr)cd+YN22J6#pqO6fQp)R##A!2M@er;T9Ha6SQF1pmJr2j^x zF0~|?d|k2&bbHQMmwG7E2c9mqB*9l!r))pF=(0<8sFyDF_yu2CYIQn^E+=PwyXf-! z>_YU?rJlbKPL>|QbU0n=0SrP}dW_OSUFsPMLRng#w9wZe^Z7g3pTp>`*5Lmim;dXJ z%iJgUR4RY@dg>{fnSE}0>T%HFlm5+2{+8~kE&VmSJpD3RbdJsu9TQ6ii*2obq}H>Z zK7@6d+h@P&vDZVYQ!@Pw6nN0|Na?j!;7KVw6-_`dnDmcMb*UFj`lo5S%+2X{dDrMj z%RKGfCTga7MTAjVx%v0@`3Ir5AdD8CwMI4j+`N9%M<~r8S8ETiHT}$aq3I#j^Gklg z=2Dx|pFWl0*zEaSp-VNYzz;veN2Zg1!(RPmVd1|E%8V(d_RMeGK84aKMbR~K=gbdv zbVN*J?&)6{x72m+*vR{vnGHidgzIxKy$ZU_EleLROl}qW=rXq(D)M(jpZwjB_e=DK z)#zi|$GK{BsqK>90Lrsr_M=XPF7--ItCaefoJyCub0qJ-p~!3|rTX;-G^{&woq1R1 zS5|5VLR5VU)rXz*!K+Js*h!y(y431q&V()#^WO-`Kjf%=>RpJacIjhGI(352E@37O z|5vl>o_)Og=u&UA^bQ`P3EZ0fNY+P}>Tmk(HDah2yJS$c>V3ClP{z3IR_LQk&1s1) ze^$S`TMNxi6Gb9Zr|} zBA4>`2GAz;g8bsf>nPyzXlc)WbKJ9hcpv=YR z_!diNT6~VmY>CE|M zsj)WxzkY~hx}aq${i}`lP?7ZD{%?PV8-7_-?elm+W`35dYwgzb2Oxil(?fcMb-1L5 zbg8F06U-m#%$T0#!qkE^%D%HJbg7EcC&Qvb2g{=D!J<-@DD@(`Ec?!`(4|UUqVrmp z3>Gf3;pnYA@Y7-XB-G`6hSHI$hRRr!)g7eE1{13)bg)+yI@qg*YL;i@CZ@{<6RR3p zU}9B68%`nrdM&!&A-f7)b-9qC^rY&~k)au^koh>(?62#m=i6-EiN0@sdDpklFYk_H zQVnKOU+5iCe~wq5dqDq2sr$jq?$h;6*_rkJl*^wR$aJlVrC)~L#`Ko=)EWC;*7tFk zNvdn@f%G16*W3^2yz2D7Gn4+mK2_b*vUPXWrJmSyLEg3WP=48Y|G8%Fzo^lHpm+KI z&}%)_xKSfb@JJ@OOzQHQp%aH;UHywuZ(hWIYC-?>XhQ$$g8u2zB>w5|HeP(;pEhM@ z-aWgt72|B$1vX47C4HZqpBL67rJHJN`U{|o!ULmSq^DuY@uz3BGJC`vq)VMXkz;a2 zJX&WxBY%M@R8zHQsA3{azeROf%~0kmWcP`(YH~tdKJ^QstbgT%x;$j>kSs*>b~Lo} z%j#CBtZoI$>Q<<%ZWHs%>Q<<%{9kxx-rHVI=3g>ULnblLLjSr!Zc0+Cxb#;>UEbfI zeZN}g{JnDR>o)OitcFd^um0C6=w7IT?gcv4U7c!JLHB|cLj@Y56Y54YlXN-5VD8FRAHXfq>l<@V#unZVI?r zHek0c^KumUXE!%TByoZBIsDDIRDnXe=NHmFzmV>Vottdl3EHU9GR$RVSoj~M%h#oU zJeK!wprjfpidbM;VY${IU2eGwbvJ(od993vE7YU>aCr?`^5v${?^azb+)`H8ba_=K zreAaZxHr!erPs8;zXzSKD|GTNmlrMkKkG~lM|i{J%WTS`is`(C{^jdDU4cn7$rGjj zt@!+$jhc5Pr8rF65hDPj@Y_#Od=bFKc@C`JQ?87WPb%Grb!c9h}#r zF8MhNe#Y&G=igzbAG*#RWO?7rQYks+L1X3N2J2 z-}LLxT?@Pso2LJ{q0I02l=)h+E%~QgZ^yW&;h=)1n9>quYm7A;4rZQD|1+9Unqm4o z=$8y>f|0MzWAi+FEY9=H`z3JZkS;ilL=|UV(@XE2`D~`vJwmDJ$+e|NzcSy<`8xxT z(mWfdq|bFYuPKdEPvti=owDGcvaaE6Z~#m{?YcZKJJds$BN+O( zbW@shvuV2OQh~##XIZ&4c^@PTPA!$6w2P9So=w_Ymr9dK+GV1w+jBx));DNEmx;2@ z?WQL5*5#!Pg^046WV_W{mn|6zLRnpNLS3o_L0EX!sRHvpNb??%olYNJYNnZ(2W982 zOa=at6@4kmPp^inrJ2J_;ol~6W=z)$v(;4SQteEC?b797+L-awwOX8hf$LKJO?&F{ zwFaKLek;396}r?iWD@9lxoq<*bg6YoC(xz3l=1X-EcpQGgIW96T6J}UR_S_bu2s5J zf6{+JUYDr`6V`Rp+=N%;QZ37rtzO;Tz*W~T=UjEEo~4uOQY~xPJ~b#U)8(#oG$YgX zfw?a0QY|g;*Z$Mzb;E!EFuTtSZMVl7^ibE@W9d^`4J*`%U!PBJ%}38LCY}YKh!ggYX#LejjLB$S&ge*YL&)) z7i(P0tUhYIz;ga#Nb|@wtI;!p<=5RczwWO2b$89LJMUGW+p=L2zp_blb@#}xyGMTAJ@V`BkzaR@ z{JMMO*PZvNtYOPDZ_vZo@29}@n@pFvx_jlW*M>GFwf*yGlo<8FKnK^QO&uiQhg@1WLQE~@f_8Wu(r@t6@%*c0z z16l2yXN5e+#wXJ#ujGQ^6-f_3Y+j90$J@i%I5o&8kA13b&-7#LYn~p`=KKbAddTBt z&V+o=LQlJUW=_OjG)K>4`ZKDwPwt`1d$cn-<)NoS?>X%>JsBGJ?1f@9_|zx&=<_{* z%9TIe8l`TPdl+?@3s+z=^2>=1_i9rq7scn*IHj8ORHi4P*g6#o%&T!qE!QW>^lIc4 z(yUQRAOH0EH1ja)09i~+*Z`3>L`%2QM2jjB`S3C zq<3Ogr=aP7%&d*BbG~P{@rLAQDDd;FR11X=3p`0pn>Ni>Az9{aplh+<44UY!SRg^8 zCI9AU{+HO^{v9)uReM1Du0V4$KZhz1ErDm_l)lsGgekBenCgVU zoSPl$t;?4f%KQwW`$Sm_azb4$%no(aWxD|(Q@Sy_Tt7S1O_%p&ha#V3A0+bQ*$fr$ zo)jW4hMDE~k!z)je@qA+(WDhVU1e$0QxU&$da7eac6!}ahZ>n)BF#!&OAq%AG3X_&}DADda3x_Q<>MjC68XCraW$= zVfsxd->tI^=yd^?lXF9K-ccZ6HwD}(>)lNOFUk#Fl9wazms6?K#fT&>aQJ6hoc>dw zknZ_~bk8rOyJF`ioA-=1YSfy3tqaq?gDmiWIG3+0^lQ&lBSjGlOe-wc=6TCisJrR$VOIQdZY=c~vGBICq=pi3 z=LL)YZvUwK$0~o*7kY*oxo76%in|v22$O#P@_f_l>8=HqIDNhq@a&fFnOARN&m=iB z=jrizJ?fI5v*7Rc2jf`|9=8!HpjYJh^UeinOo%sZ&);&k{>B$Yrt2*zm zc4l6DkK<9AXXBLgxen(wrBUjo{AQ+8+8_Uxll~}b3Nve&+3PTUFzE8_>`*sd{+J!= zq07|3C9nKc_y#CzIY!ezj?-n!>`-@IuJTJ?D=lZL$l2NS-E{eLcBq#wRYRtt^na90 zjuo=$d+D-a`d|C6mzDls*<4+8`9pT7t1gu=lRo_qG?TVjHhouJHcX%YFFB`Db;MpK z>za1}HER3~qVKbX;Oh?_A%N=t=r*gUK zsaaKPF4xKp>2jUyP~Hd5^j}KJ?z>7--vTqoxUSpha__`tXPA-c`Zw2;DP}nNuZ8K) zB+9u*wv4>Da>jF5o@e)b&-@+~$eH;p>aK-8pQc?K-9gqbv-Nh@`i#rgo0m1?S)1p1 zP`+p0yE?OCbMTxGGmD_>TpfAOM$R!O%I{>OD$354pBJfdN)a0D)O2CL_|rJ0jiG53 z{C&ksr29VGt-N%Zus?GvDBL&wA_><}? zAH#pc&)^qug_lE|6=6%bDr^ncg6l%B|32dVZ>c9moxj)o6wld&Jl-$wPhWH=!N0>R z-~@OhbpPWRm;Yth@^^hL_nnVN;?HILP52J{F`|FX^xqcI?{!?L@L+fdJRN%dqmB@n?sL(^MEiS-i`e=bp3Jz!-#Vw#$Dgzl`wKR>9$H7YI z{)>q#evAEMB%gHR@2&52N~rMf#_^|m<-zWPt{XfI_Jyazq0pn8dRiD60?&k1(DfCs zh7qwF_R+8!&V=rN7UNZLtkLy#++P3}8C`$tyf7l(h5aUUeLdsim)PG%^nG6o5yZb^ zp9(#GHRIxB?5Xe$_!KOgA0q4sJzgEU1@PZ+*@*t2!6Cv4uoAuuR~i!TuK_)ubk6zs zFNB{!_phZc@p0^zVT;#;M?2{LpP;LUDd|LW=*9REupg|1r@$fbT)5gBAyA7q1KUFj zpDGsrV&Z)Ri^bcDynDdT@FA!=_KVab|8n$)z?ljCuO{wf_#mu>|APC!6*_SOtb*R3 zV)0%j-W%|{-#LC0>RK;hz0=W&4`4TYJIqX65nEgXyFDBRpM=jCU&0pK)OqKEJ%{}B z;2#}-E9yD}z5!$PC7s`^#PL~rU)+8kKlRD|8*^XlB5Ga4RU-MNk8xT26vy-TuL~pR z8|$&d-Q54WPWGD-ed-;2;WBV7jpsryx%w01tD7#SFGDA8gWVZg_|%?^?_;`{zArkl zANJYM86Y6??ks)@!ky)w}&2o9OKS8jL(IOBmOrtJ{#5-(YJgrR3NT_y*Bjv zr2Dh!Ho`809bhNp{@4Sc$FE{sybyaNyc~{&F@O0@KvxZC!iQmYpZU?u3mGEKc`F~)%@%!`x z{t3FioN;k4?1N!{colU2YR1Kzv1h>9@LTBqO+N@D;*@kh~ufh0VVL7ab=-Zd5 z-@HWqW$3Slb739y`p1^2SKON|?njaM6B$pcm+l_?YK@O$KLwwGny1h2Htzpk@tS=U zGKkAzuLM1ROt%*L_ON5be^thl>RXqnKMlQj2KG77=M&S7LO%gcjrgC(cvAiF67~N^ zzZjN%9A;1seLkO;s8`%&EbhLM_&*Xqsb0F4#A|0(I_lh@?c;XoB zE1~C)>87He32P(%*D;<{KdD6hrk{k0#jUZog+8B{t`qv6uy4eFXU3E2cPmkU6Z(5$ zEqofzgYQ6}-~aay9l0f8zofehz54w`q`#jt{uNwo{1LnHzkOwby#eFS&Wv|~hrmN& zZ+Il^4{PB(SoUeiQx0q4T{$_N)&X#a`I`;PG%E^!m0WUN_hdU0Fmgo$C19{5<|J;tYo);h0E# zjbF$8mj4M6+d+>%9$iwsbk+DxhEw6~@Gj{2H2whhRaaT0zG>)^>ZN-azenK{@M-ug z^!haZD)&{_c9HsCK$lc6-F*Dsg73oj;fK)c)A*OVPhCwT^?iyiss3c*oCeQ;=SAXc zd=&TR!n%llIO9q6(p`?N~UNPY9sCDlv!9)2IdkKt$VbLjPH z{73G$q^>_j>iY&=QvE5!83NBTdOf;79NlO*4!Zta#*^whei-Z^dMI`>q=#uKC`y4;T?Hh^z3A&_u>6Rs4JE%T+f0}SV zss0i4uffW1Lc}WQ@t-eIuekO2^(C(Ic>IshCDpG_JjGSr6Bxe=RzuIX;^Hu}KCFf{ z(DiLg)GO|e7PmGMzXRh*_0k=LpW@Dq#NVIsqPY-E z7*DF-;oGo+U0{D$34ML{D^XvKUYv|Q3s!s|GW3O>Z+eM(#hs6z;#NlD&qbG1FWp!8 zDQ;CH{>SK&>ZNP>UFd}3j*i4{hAydIx=ry@-0DdDb)`j${pEK&_ggOcH{(*N_R#ejcP`W5FCsVeah>dL#2*Z=faBpCunsPSAHi6@$=qLB z|6ceX0sBGK*>G-|>&eVpyaoH7NIzyX{ycmg{wJc>_z&Fg*tpS>63U_1^EJApdg)qN z+@6v6jTo1{0z0Ocu9fL3Bk@;cT>8G)G5san9}j24xzPJ_d5QXK(NBSO@B`@aZzxfJ zJNg+=bt{j@zq>^Ja!ta1iP7V)fxauOfp0?BZ_D_Oa2Hq(T#Xy->UaM%2q#% z^~=}gXY2ck^m$;U-&;!$`@%}N9)4O!pKmdL*LNiD9+pSz?)sfe)L%)x&TAOI7d~Ws z9y`XDxc>^AZ+r*49=??R$9pq>#J91^SJ~?86D8*N`6{0C_l{pIp8DeT#rmyz7wg}$^haC~dsXQ9Hf6jF{uOqBTJIWc z_uqx_-mqAG()B~HxV4e^>Z3FEJb8VU#61O`4lj%3TeEq1?$(7Hz$2l@zld??XvS;c zOgKBj7a6aEi(o8YvG_^jDbCg8^Ey3$sd~-hbK-vke}F&3wOfR~d%mQ8>*K!}+%gic z1LNnymzNEBTP#;Ne^+!zntl;}UT@D5^@{s<{1kU_B>u7JlIo??d=)n~-_wYnR4?7X zR6lG-{gu%Bd`hI>L(yLYZ-TeO8aM-b|Eq{A4#U0?*1#`dQvXZM|M`gjI?IQBv=1y_ zA=rCD&o>g?WVi_3;)wnZbmHCE_d$;z)7_807QPIXx5bKupNF^5Ek}LgM%WYJ>`48M z8E+2d?`+BanXuG&N&Tf;lRQ%`ulG~Bb&*UXCq3fISz!4(nl`mBN0ige_MN_EvC5=>0ef|4|n2OKjJx z9_J0{tH?hJy1(Lnk6!i4&-E$d>}ql6W7k2=*Zpte{;lv1SPNZWPM`LL`@;j^3Gh^S z1{`a=274}i6MDW&7{45P9NAZLU-9OZ7%!>6<|q0*y?)JelIm$0_T6&O^_w!j1snpW z81KZM3l~9;SIzij=y7Dvky=u^p zHBP`5Z@?CB!WLIqEySsZE4B)@xGuK11GcyewpfAP{!bx}b2G-pJ+Q@2*kTuKu{*YS z3br^DTbzMCH^P(t9O^t7o&|k>&HjV>--5n-pJb~~VtHg9nxE$5_4_`Nt$pHp?H8x^ zjq7h^UoC*D#~G{7b+Tjn6zjAaYz^0h8^cb}>y^LQ1YPrpelhd<8ESo;S|`sJ^N;EE z{5f0ke6@voE z&?0)Bi%0T&iq~N4oO_UU5a(fwKVbVg{)3CO6c&|PIz24;+Umx~w6ZAu%>o-Ry zZiT%qjOkssJ^FIk9V+jLNd7+PE;dfVZi8Q^i2r%$hMT{~8_oTWOBpYzzjW7-uRZyc z*ZV2mB=nlE{9Jzmn<`S2~H>vew-y3xc}9@k6vZ}eJE(e=_bC9ZVsutlwZ72~SI zs zlm8Ox5GP^#dU$=?5NCTB)4OhO^zFz~7Rh%cI?Y>*&3_-8hvqXP5?}Ge6VMHe#3>dp z=3gxTwaioNIWN*r=_YYsI<3F=U*k@#yXu+{>5tY$eU&b@KXxNdQvIXopM`Hk*n6$8 zKgBb!s}u58bm9?hLp*T=_UMGX5}i07+xzeHd5`&h0AqUBeI-44T1N7%Z+-H9&EMi{ zTl^ARY~C*Ti_2oSgzG}jzYTH3{js~inBH|>?-2Y)!|F)9evBUnJ&x=F++W&wN&Qu) z`YhH(>R-h8zv1Ul>r$-$yRt4_)(z_?o`gLb{s>#H7j)Yi_rb1!rx~YW`+Dw9{(a%$ z@ECYJJPDo*FN1y83H2NeJ-*_J9@q8LiCYUb-*%DuKSTE&l&&nIUyVA~g4Oi326{cx zZG~RC+K7H5bV>Cc(05gQcrWyNu3&r;oD6GVZ|V~JVrxIuV{1Qo{A-KEFE!q4#9IK> zx4Du2t;Tp;C|zAdza8U$gVJf9K0oR7oQ=kBLL~lvj3?Dgr~ZrTo7dydv1~ohuGhHe z&$;Z;k^Nu8_yh1E_y~LjHd{YD*J3;Da@e^D&)~k-Uo8LpNd6Tg`91zm_%}hX`kgH- zUZ+UCv3N=SRd*}mSHf6-s<sytme;K{ABk{!pu=U)$i5=qt?u%Miuh;XwMLqAqnBH}&Q;gN?@tRVn*cN+J==w6o zJ3!@g?!x`KP<=`oFR8zDdy+@%qr9F^bvU(7%kW&p)~lBLj~k!Ho&#Tnb?{?Y4;yV7 z&fOSWao_9ryt4nN@^_-H17S~i6g&~mfPFU$^BiD26I-mp7B9dSFUIb>d5G7~*dJT` zJGOW#wzwF(-IgJqb2j7N|Eqm|#QClDyuXz7cwX7+gV(QqIMo-|pFv&Ima;zYtL#{R zd(!txcs`sISr6&OqtG22(fdAhd$8?G?}zrMQ~T8Q|6#wZPF(G~HMa=+&h=lTZ;F07 znAHD!^Iy3{e?4c9;U})c`j=7n0%J=3hQ7|N%L>o;a`K2%uy2RnpO{W{im&3YddnmI zeh^(Pl)v-o-xx2czv_O6d==E)H&VZJ;`{i01igP6|C0Oai}JX>CF{NhR2`L(dImGD z{h{YPw*JG=KMvnx|1^#47sYjE_n%Eb`&RD_J$Kp{CQoh1JUhT0G;dhUe^c|{y+r>l znfDHG-w0pZisxzTz%t`**y4%ULtw4(dF**`hrfonVkPzvI0lY~6QTE0^&iDN6n_zU zTz?L_32-sG6^XC>BO>|!Xnhm%wt&mSr1fcDH!{B=%x^@bAJR=heT*E zOX%}a{qHdk#UDa^*Z+jB%{C$52z1v$M~5tg(IW^PPh3LFuXY z3H6z}wSV2e<`33CNc>v(Sc&;GuP2$G_Dy@@_niFTc}@AWZ$t~|@$&plue_r2WcR7*`;qrzcqtqUuZLg3z8%9kR0Z4Z!1)OehsQxn zmpYj^#qv!>=l&Z1z3TadJoWGk=ksC{-?WWIA57Z+fE3tR3O z>TLtPz6!=~Gv0wM-is|hfISy}YHYMq$lDAq2R;8}{H8*$L$>NrzWL~r#!Koiom2Bx z-UX5T(mB;H`FX$GR{wl{id!sR%zqu$VKcZ>gpGF&>nAqH7Vq69+!r6g7MI^O-0ujd z8Xv?KYq7CU`bplcJ+SE9QZO1ByMzOXXl|3~ZBBkx9V6PUC< z&1)R<>q#H`L+{^0boH z6VOeK=%u?Bz2eHx`=#^7sdGnpoUwDp&zo}kqkR&~@A*8w&aGnc6vsK6ekiV}xO3>| zBB*oD>s4IEE7f0q^CIOoLA!_h z;yKvjKd~3X{(A(ycqX=3g)I)p7N=s11NSWaKGS@fQtxd1=0WdAJ9Ilh={`ZLs@qbW{_LJ)J z_|iRzehyp+Te6N?SNCtXTi92dLiMR*q+dIutAN@kdy=Oo>>t@bf3$u_@|MHhVbc0E zufv$1`p_xTkKK9RJHwvn`bYFx9eTx;pRbS38>h}4<#EQ&89#4Q^hf(7mf!Pve4Sgx z;wg@E1pQE4QE^An>Bq`!)*c%}NwZ$hLVufzK_3P1T5(@R%l`Ls?Rznb+DZ^gbJ z&V_626`pIcBeqz9EgrIW;rEO3h{`w3^3`E`y&6{?qUsP;hZw8p>!qCECCvA2xB#|i z-g`&puX>%TTU6a*EZ>$z@+n@7-e2W&Du1zj(y1?>(3g6n`sDd=>+1EC8o!S9`T~9f zzlY1RZtWxMCx7uh{62tQpYJo-+GnoUesgNyxqcJ+ybJ6^9opxv-!h`_9I1bs67_n{ zob8CO=fP}4kO`M_#7O)ALoN{JhoVkJr&M^|A7C275j&HM;ed876)UCXJU&N zU{8v0=gyJy;SZi)sr6hzU!3Zzuh+Hci}m|8bfwl4i?4O{dPJr2vR*I2SK;gML)ap+e)1O| zL;n=?`VL~;seR^p?Kh|Po$J@2&s)GU@@b#De(i|9L!|!oOVsN*bFN5yJvUCRqu1My zbvOZ@0`G*CUBYuV$T%2Vtim1vC&Eea1z2`ah_{<@FKqE(Z1FH`@o4PxB3!F$;q&2| zKX`tn*5iGZt-kttokbsu_4|HwrPdRRuXXi$N{wH`dOZf8g8ziC!Nt(?$zQw|-HeES zH^!aXXC7bs&8dCo`sL_zTiA|#+UKrcIilYnQh%!w^?J^nKN3gJjZ^FB_3p)UB<_oS zIvfedzKKc$QHYa;V~43-nOE9?dPMe;p_U#-PaJfF|2=-z;DN4Svj z*O<5H`ygq2#Vh77om2bP^IbzX z;+5Fq)!5<#*y5Ae;#=6_d)VS9*y4Y%#nho;9{qa-4m6&EEmmQRBeBH^*ll`;c+T}0 z7q`R~x5XAKu+M}uVMU)1-#L%*35SRK&%^iOPsU~Y2A$Xj`$Tve^!@b1e`&u|vVOn! zdU+pZ$NK60(DUNdbL0BAkl4!Qng<-^CWY_YC*N6z7q+0k)|3q~0^d zxE${zu|0On!$RKa#^he}>BE zT-)-mMgDc*hLL(=@s~E9{5GbZSRJwcsE<40zlgdQN9x}l-660KJO+9{2QoeuwqxIF z|GWO;67`CEJ$@~TuRI?AUUWJ)#P1l_ycOpo&L=%bVtM3!r+DIu=vKAoQE|jryqJGX zue_f`=HvZXfphcEIzQ>3&Lh{aiB8-Ky912rU8i$eJPCiDhux{e<8?-N5R||3@ZT6O zslVzTOg^38QzP|DHxYd`&)L+-^Y#onu?~A7^!`M3_C9Qdt@lS?_PNJfOr9T=&*JF) z+Uz&ROX{z>v+r@9E4|;m{;ZDr^xhWro)-0974;qzJ-&Z#(EHk{_qN`*PQ7WuliN&^TsFW*XMJ~&U`NE z9{GHtc$;!xl%LnHebb50f0eKbx_%qRcTK3@zC^w9-jCmhtd~Bgdp&c|ErNOv>)dty zTy$?I)W2M!elmT(4Nilz;B2_U5#e)o4V-42i7nP*i;rWAbFg2ApTN)HW=E0_&N0rz z7T?4c7h#Kwu{#|V;_h$kiY@lU7JFffgRsTH*y0Fm@d|9Q8hdVpC-n<;`hNKAzq}rr zk5ls!mv(->uViaqc|WwjoZ4ruf13SOZ2vW5zm&Q@vH05OUQemA(4&Y`s;_4Y$I2o5RH|2XqMyF`DTyUsp54|=ZerhZZT*!v~F3-Q;yJ4NPy6uOh) zV3^duzxkh4qW@%`i`(EdI1A2(D;&-H2~IQ4#1?C@#mBM5IoL15PvB>8vt!5y=NRW< zi*I6!i?GGT*qx5$eQ4~8E%w9~dtr-%u*JdH;s|W<3T&|&dv1g$^^d#{|I6#4`8YK% zacSr0`%1R$!Bjo=>NqQ`hg$^AY2L-0uqAU(c^I_8bo)j-KOKJok_34`;s( zhdPJWiqzW=-5@xmME~Q=|LhX|b?!QQ^E~LezMJ|*?PKqk{4T&>^X?Rx|B>ka4o`zg z{f{;OGfVWJ%yV%YoCasX*>Hv9ct62u#+le+Ew=bLwm1j-W%vpF3~qKj`QRMmJZ$kz zY;h5`xEQ;0Qr9OIU;EtaDK&nIebE|j3_C^ki}Yd>bj>4r zUsu^$SFhinOWArZU9acUspr)7`}2Incp&$?LigA6>x@0egNUQ&I2OrvcTJxy(% zN#{FSe$>4+yZ}y)%t!H^>Z_=}im`l`6v?M}G5Y!_pHumZ<&#ePVO#3k(WpLo{^|5} z7VL}P5Liqgl{>z^pMmB|; z!(*ZATbHOGfW8V&fL}t7zx^3uWRGGG_+G&d~MK(anJE(RGOE zzeXo6#{L=ZhTnvUe@x#O{Za53I1t9-eb4<^zkI&U=%3gEJE_0-U-lH@%z*RY`|xw< z^~nEN?hk_3Mf9=w%H#1{o*hQEf(OEZ(DgChRp@VmAH&b#x6tDy^*dsydj?zMRU?Dl z`I5j2co;kydKCFxg}+#hEl$A}@5C0TV~Y=Ad%od}kA%{RuGhHcrFqO_KC3?&Jl27m z!ENEv#%mk#SN>|tAJdOPH!h)Gabok)yhNX$`f|>waAz;(aR5979u=8i%zwX#z72Wy zw|p`EPUv<`s8^g={hEj9{ZJpi8XNAs{#f9@;bQnBbpM4V>XqmH@gdR)69R|Ai{V)4 z`39A!_dJUG?lmFu->wbp412;Oq34gq`zTVc=TY1jh(CyZa~eDsj*RT5V)4A*b;+|4 z+yU+iRnJA(|1f&IV)d$S(f!xCE{tpkcY=FB*B`?87a;C=9Z_#}K9z5-u^9{<#dVPu?f0`}E# zHgtdYlP!POmsN+63S(F7?(lq=vOn%8TmB|by-%EvVLja723H2#_1~ah5&f!gjfnr2 zjQ5AjJ`v)!f}V9Sx>0Zpyc)XxF2?KO>cm|iZV0!Eel2;PfU}|d4`f_*if2Uhs#`2pzvp}4$uRO1 zdeu9r?MreBY~4T7h`bK!;XIyf0lg`R&q#*4+fDB`a?VzGRx;~wHY1G`KOl^qOw z!6V>UIOd6<8wY(pvG|+g@A@5Y2_r`tkHOZy{4uhA?k8LRp6>$U-ejDLeJh*?-QWFW z%is0y5U0_t;f~l8yE*It-CugA{9XSy;v8W-8v9r{4!Xbl$(FzCpCHacNE!_{wd z&tSWsZ27y_+r;_V*!cFKTn26p-QWFW%is0q5@$q&V;H|Ok}u|`@nZh>5%)vmm)JiU zz5aFX2qWzy+?w%iq5H@DG+xaA65?JF;dPAP5Xm3&(|9rees_i$4Kt3wz8KDgK7aR< zEq~V^b5|G<2V5h*I##U7!mKpo(Wxl;mx_-y$VMN>? zy9acA^O<2pY=gZnbp2q)#Sz$JBKl454-v$ju=j!<|6#_(=dkBR^ea9XB8Y9V+e43k z)8_ zO%?p}Ecai4(tn5TPUDF)!}uWf!|-G1{_ZDR{;vO$IGg+<+!1%c-orTV>7bhcJziJz z$H4*cH0b(~jQpUrS6uyGKz^d?x|lk>zIOZ`bQ8E4+yd?l_ki8tP~(-@;!W7%J=k^dKYwquq!e+5 zlY`v`wu9|qx$!t`u?}1O5L^5KyTzc8$GHaM?ckxX7d!@*+CTN{5a!(ndjBp}f2=Q_ zZ!o&EB5@S=0*kkZxJlzB_1FAFpQq>3esF4kXdj5aAGF@iD%LlaPw`{%V*c8%3+d;l z@SV!Ak9>dDQpcP~J^#Uf6a2S;+d{9uALFrnuKyDK%B*)8`*zQS`}vR7??@fxaQ71H zJDqu*1@*i;_1yb&E?dw0LFCu-?){AA^Y}^QT|nJq;Ar+qb!5LtcOCjFbn^3hZ$oz% zEJyD=fN`CRqRv0Ut8^P)9BFeA3mSuSO?7*Xw;EYMnGct&^yA7d_r^ z_D3}=KP5c(70~r}p!*UIK{qaQKNQN(;~#u#$lnJZ3(tm^!Fk3vu*LVWKZPrw z7UHf7C&Lzl!}y<#Yha7(VT&7Ki#@Ox!Ea#SAtC-z#sS#kVC)#r;=XtZwpfiV-i9qc zge^XWExv&*eu6Fj2V49KTl@}N{0UoZd3xxBI2!v7_!fK*eqj6*Tl@lB{03WWbVkVM z`|Cd2H`+(qH{$>F{^`hm(fT>Hj-u94)H;gu=)d~yjP>99rT#e8C)dA2e~a~R1D-#x zOLo%wV)^vkdwq)UOqx%Af0Vux`?xPW2`Zn@M|$x<^j)Fr{hX7nbI$cT@0>dKT<`l< zw)U;-wSS%3$FBEt)a~Qh_c~W~9yxU`>HKi&94VGRme1oCi|27pW*)KkfyQI?C5`9) zXOY*b_l)b`Kp*2G?(03`{(7G{^zsz3Zwk8m z66$X+QLoP#UdOyhJ^CEt+>CY6x#HA&+2^+ne!Id7*cZBf`x5or@!sAA?hSjxfpDhr zA#CwU?C0QT@N+oq%<%bO5&YWt9k$ryte_X0V~g8j&xWtU^0R~A?#2VK#e=b9?8SZY zL~OANTO5fkUW+YG!4@CF7N5lyU%(b$#un#ei*I3z_1I$NIiWA3;3M!c_>}QEZ1E** z@l|Z`9cACm%Jdf<8`Tl5qd-iQP>%4R7+;hF} zTiM#TuGju`Y9G7a&r!GcW#8*u)p_L9xuo;MsdJ=Q{#ZVbUo4)-If!}0-Uk|w)t5A$ z`}ZQRQ|}qqKZHKU+1%HA#QpU?aq7L|?*X@;VV~>05Q`s+SIl3Z6DD$ARqC9Eo^Lq1 zD--H3DN(P_8D7WCNIm)-;#`4s(YfN(d)epL3cs~s87zmcU%fzzP^uSYae-kw4a>XSFS&V zc@^7lSE18-Ig_qmET8td*XMa;C(ZXq>-(}#hro-W>ht+XFCL5j1nBy^=zDDcx!#{U z*?R6=@8^cwL)qs#N8DfMi8FSt`1ulx=l(i}T(9%UsdLHoFK~W*3m4mS?D|*GErcJH z=>NL;e^#nL>%Sg#>YP>G+GkFkqduQyiL+WHp6lDAD~Ef+{?PTCoBn_z`u69C_r;d5 zBRn0J5957m?1U}eh+RKC=$nry%#|2l)%X|edm_A#aq%f^@t@e@%h(IxH*n@fp)Ti+ z7l-k(k%8Tz_xG6J*q@~HtNoqo-NV*Rw${z(*BSjV=zWr%v|rLYOZESw^!4nA=B)o; zpz?Wtq!+)y{~PG~V(abt*mI+Ce}3Fw&x2FXh3j8tKYs|TE(rVoV(9w$5&Z=b{o5t# zb&mX*cw#xWcnG%YbZ&5An1{FtwsnDehZ&oP#BU(~*d zontGr-<)k2zsacQPy705_POZi-ayVj@$|@fsP(Gjyzq69{cqOG=TlD|D@5WyOkBlx zf8U>z$)kM5;@^S34laZrz^|z9Tj=>>exBds#OAAcYTt`%Q;*ie8C#!?@Y@V-1@#;? zv3=z8`w_jKBT>(h_FD(y><+s@k0*bp;<;YqTkt$~fSsZ891+PUU3c_H!V};Kp1TRq z^ULoL^!{AS-q@aBJ;(lh`nn~}r}(Zvo4Rz4iL)5jyrxp$IrJ%ZK6re^6R*dAQY4Pz z>b&uIG5?redGCwN$KyYSZVuGEb)LFjx__ac2lXBh^&Zgq*^~2N5F8dcALQ>;Jg-ON zjd|ZJ3)g|iSYG#+Ze#S@!d>CP?1O%h{Vu=F(HDDPdH$Hco(I?OOCG&f#Zip!OP#8F z67$!4OME}lf5j93f$qsj9L0Mh5-;W-(<|?=$b7sXm!rD|YMll|)@ug3N8u23I@dh@ z6X?XJv0sL+*ZAAqR~^dZdY!{MXY@Vl$jJMB5a&ozy`D4e1I5+3>h+9g9h2(6q|WbQ z<4eNl$n{|b>O=amhpFp@BEVS1K7V6uzQ6489#+}6+5wi z#k;V@dD!CT*v=O0^RJ9Pf6de9S8P72UwM_!8;pPoDILu*IsG;~!^@1ePzTdtSx67*BpS2N(7oL6r{_rDH5=OpDP zPHluwGd>5#;>Y3@^Ov8fJkELKuVG)*M)t=Y%`8yTQ=cDmT@`=}B>l~<#^!sphCz-$Eh^KLX z2yse{m(*XnD)Lp3PkDX*(p`+c488nZFWp%5>W}Ky-MuSP@f}O^0{RV_$c&xJ^wRB@+*({Tl1;Dt*P&UBK4}iMbzo}eST&1 z@kFS)#nZ?)Dbk`Sl)sADurpu3vUs z_}sKSTn`SrDvXPpT^(%ka_m~z|JrcB68`P_V2gWUi}SF>pRvUz6NA6_eRZ(K{cZ}j z&u3HWFN2T5XU7Nqi?9w(V4l~&8dxhbzdD$@Cd6qE%V0C+J>t4>U-K3CF);f zeK*2S`!Ty-R-p9X;U~Rl@>Db8wt~<4elQ31=^FIa%(Esk-_huj>ZO~A-_7tAcn^FE zu5&|J&n=*poB9S_Bc6wr)Y&Fd?{er`K|K%h^Z09_`zzcTo&nXDTJovReIoVtz)w5` zyT8So9;v@iiF(yJO!0LtK%eg@bhpE~)G;qo&-fDciu)jbin}-x|88{B*Q1N+rAvBV zYTYzX#npM}{dt^vV(~qm`|I2hM{(X>3lHWz>;>I_Oo{sb^h>-6|EchJ@|+jR_Yt~J z;bPd5_uU6KhUfE3==H9SPVW&>?~yw>-(QB!CWm-OB6! zXQ3Mo-{ZMnhI(B;0iE89;-`#1N}u(f6Lro#OMK<=_=+cfNW8_7xE|l*#r#!|>tAOc z3t_Q(^?AUl&jn&LJ}-GbjjzW2&h%ZM4|d^mRP6JC{7%LHa`x#|I33P}=dthZhCjpQ z$+HSnUawbqhLUeQ^=hBHUb>6WUyNRUu9t2sdVM~UpX;weHx=$qeD%@w*O#cj5B(Ex zd*UmP$A7Ry{Y&WIgk{>f ztNK)r@_0QP5_d$KmT7&POd&ADq*J}iRqu?0hIPA$#@t2RpyShZZ>i!pg zs(Y(Q{8{Ld>ZMzNpZFR9^K>??t^AynlbfZ*|z#xDIw1RQ&BD^V_gQz3Sc{ zKmR#^*ZV5E_o4QMIFQey`niSszhVBx^dF=D4$flUb&>hkm#F_4{Yrcfzl^xb888zZ$xvdg=6Yw3ftI9*@5+@ssMM+Y!Hd`lCD^e=BrJ_0sK&pVn1* zJbpR4r23=K4}$u6qSo2t_b*Yexcd2JU;3k;UwZtrh@Vtn$LHJ2ZVuFh!o`aAR0bJmvFvTccCmVyu3}5lgLK`6|d;MSa7e z*C*Y<==;EdaA*3oZ=_#0q4W8C$hhVqs{g9%3+hrHuWt@<#FeRIRoEJC7^zQws!zID zKJ{rLbsbII*nW8zowyMDL+JBy-KXf(2iL1^?Q`|f8QUjG<0bWPc}sY1W*Jw!HH@zg z%VA$Q5{`z|a4NjsK7H)cTdLio7+{Hv@Wo z(hWy{DVzvTp-<;V`t=GrUyrud7tKfgS6v$tS9!d?#>5f#Lcb3@0QQD4f7K^lET8)H zJbAArZfw7_;=b4#`!A7tT(=H7^}*{`-P-5sqcgTolEzEwUqihyPUHS#a4vku_&K)M zH~RMQT<&_uFF6YPDp(8a;PQ6{eM{I5wukH8Rrq;VzVYO}9@fAa@HJR(`Mmyj(Iu^4 zb&I9euY4)$Dr3IeL9b7`=IB>~Yr`+`YZU2M4|KjB*E6npi0Z%Ux|#UOStd`&@l=#`a0lcuD=s z=tqp(aDR7L0go`AjP3QctO?KMEaQrIhw;^6IqVBZ!qKoAPK7t#Q}}sTzSiVx3(Mek z@DNx@JmvHHk3^TWe#H?>tzY@7$Xi2wGoaTe-Ej1m!in${`gCrjU$3C^^=NB-(R|c@ z)wLmUmB;IAOdN49^!vaAU~d@nSAEjO@~KbHllNNU#`a4q?u)Il{}QRkb?cy0AH06m zt$nUOI%E4JX}qNVHPjp9H10nJ=fZc4pJRJ{>)#um%R7xauABW^6d>JZ1{cP;ezF`f7OVf>X> z{q}e_qq_}y9NE(>UPYu|v3N=SRrhT2)lLuVIv0BV(!Gjax_J@(9CS(b(tUuR;x3NF ze*>NL_2^=H>GXU^w^n5TenNcdTcV5Uk7b?o9Ep04L_J61GSscO>yoD@tb}^r-oy6w zQ9h^gipnb{&F}dXFGklZpHumLzV0vG!SriG`ml*naom4>{I-Pq;uq5o6}%#qz07qsg-yabx@Ad3557*srKg zn~>{XN2flRJf*sQU#p*@_IY38sn1E{CH1eMA2D|0{!y?Jo@*R~?e(qsV0aGKffcYX zbiKw`ekk~fJ+b@2(Xa--4(nh&Tns;XxbS(Pe8*DH09XZw!&_i2@s!W&zXzS_7Gw1* zj#z5_$~Tw1DdyQcGGFOlMgJE33_gtCGZFs{n7_~GIO~h%qyDR|LBv%a?_X!)h?k)s z1INRgVa#9kNf*nfKCMl>g)p{Xj^w_0H1=`O>v7!xbn1iaRk!xJ`sj@9lce#I`llY@ zxruNY##e*w;8w=nu)V%jW`+39jTm3_Y`E|Ip7EbxlR1T-?+(P-6}Edk=-NZC=WujG zVcBCr-x0cgIJ)cL&G2Jb{Y>z$ft{$+xgXc$-KtEMey6md_Asg#r63q&)wu3@?@xY1k^gz(x36~Oz5{p$p4t-o6L{hkZ@8{wUB4qW;9aKA0w6z&6iz~OU)?l$Q2eVzGk z$$Wi&G5t^YNiVv-6>-;s$5{Vd-x1x}Q2pvipVXfn>4W?46Y(#@-}T3#7f-_eJ9Pbp zj8B4E|LY?A=`nP3ps%;buOZGXc#Ez7_t;HYU-zGG{>Aij(7yo{SNqH3zgVLFBlO?G z`P9E4vVNbHsNap}>`-`=J$HKkE@NEJkLvLGos4d9B#z=${l<7n{Z;o>z{$H zIpVco9q6OZZ|z$> zSAPC_zV7(JCjV;-*%|7}>W&(;47pEFcvMWjBD=l(t)<#nd44%H)m&iz+cy$^X*r~9j3 zr|NdS`X;ugU+SCYIgGrQK%e)cjQyOv3I=o*g@+jVN z*xqlC_t!{$+An9a-si%k`{z{pp#4ybt#$MIujjdX-nbs0b94@z9{GIcezIR9-jVnX zjQGEWZV^;I`FXuxqf1er;>POJJT^yv2Ir=}=XiX5E`E&9$>OR{hv!K=m-obQSPida zp8C0vzNh==a(z!6$j=ELg-^pRsB#O||tHa}ePMu%DX2e(Bu2)=9 z^K68l>lg7kw*4#N^HBx72-d(MuZH{MU@eTr`;53>!xk?G|CQlZurKk?gdT4PbgECf zrL9l#dJ@_0wyKZfC>Z8}Aec>ESed@DwBymOG z=W`a+7O>K1*UUl-}G@_2m35tGJK9H;iF;)y>08tRPk zZtlNmd-nFuxXPor9?$)ycgo-O1F7RQSPg3;^=Z8RP0qWwIEUa4 z@PM}q&rkj{i2n$j3txrbLdEMzT(7?|b*LWcV)>~C;I&RQfG`uaQ{5xh1kx~j8_{U!1nxu8IQ&Hc<%3hvQ?MsmtPRhqb{&!VX$jq z9c=r47TXY+hrto>)DH^RulU2sb1AHb zQ{dCE+~Rw^FQQYOVys@(DHf|&@$1PW{b=g)dZhaX{ZDXZ`nDH+=^E+Jp6I;(QH-l@ z@dxTqT(9RO{KPioT@$v0TSn@UpX!k=mQQ_|N?ikp8`}>bqZ2>H{v7&zT=xw+^}+S3 zTl-dhbM_@pCDb}6jhEEFihjg6jQdx>YIwKtAJ|^sc8kJuw=*0KtD)C)~a4vimehb?XPx*Yljjirt^(&58 zYW>RBj=cS;Zy@ygq}vGn7I0U%0e#v!(yvp|`FcFexaJ|M|ElYC>QWxB?>gd$-=O~v z{tQ=&)F(gHCtWO``ZS!lorxRUFVCP8=U~48eLk*x1)cifdeyCcu0A?r`y^?+r2c*B zM~wZrKL}RA%Z-z;y}q9q7n^<(p3~)^>sv9tyRj#B6&wvypN4oF7|XFezQ=8gZe8ZoLXBjDdZD|}um-+1b~9@fAa@HJRL zJjJ*2Q}3cv-D1-Ei`A?6DdszYdL}}zN4nPyJH|WIguz!m5+jUKduReJFs@wOq z`YHaO?%o7Es_K3NzK9B1mZ%80po1df2AL#4P^)1NvW@ImWoAeQ5=k<{B!NU+V%3VR z*0i-1_q5u-xK!g#wQ963sHkzN;!506s>Y>?Tm8hxc2XQ#h8CS;pCP#e}>S4okar}3{7T|3HA4Xf| z^DX!uomh8)!-2)X^9BA2ZQ>Iq)i7UVp8_*`6gEsLJw26O4n|LGI#9PrO z-ibDG1KPxmXm50Oa;JdAKo7(B>}jwF80u}>YMHSd|7`xGpF7YG+x3FHEkCdRq&=@c5_uhx`b$tp z8@Av$uPf4?*B6Pr&dBS4Y%dqr1)G1Hzijs0N5rr`m*Bb|0Lplapj+-ye@c#e?n7iA z7g+M)KILN^CtmfX*+&rnh&FK)<{xn!+Qj*2Hv_p3;y$Gq<4)vyz zHu0YCO`G__zfIeQi?Giio{Tn8uG=fIJ`&|VWM|AP;s~^l0*(P51LVF%&WBdi{T@+& zjsx)<91n@SnBN(e^?aubx(49cz!!nME-~-?oy`7C zViEXaU@1_>YlUCp9cVu+;?1|zV?&Pm-7xR>0tPT2LqM6|Am|PN9tw;A*CVe7fnoIX zW?)M%Q=jXB(!by0uhr7u6QL*0M|&|)`p-3=T=i9mdm8W@AlDfp*O@ldv$vT`4?ce^?fzg_hmntIJLm@fY$;(4O)f`^|JQe35&&zwz=DJVZ(e-}<>UjlF z)=$=-`cs9Tc2eI2-37o^s6WR?>aT(BaUjowt6(Sf??cxKl;b7!M`4~E3%pE>r_>kZ zs6PSv#lVZ+v4)`4Y(U^JAQ!QvXqo`kk;(+yh9zJpZNtUODOm&=cpPy$C4% zSAky*JO<;r5GeK3oee$LE80o@bLJc-)Pad=cuRO4`D~Yzp(h< z0-aYqb?h(w+WPwm{Cm}p!gYt&AC42R7qXrwK))DB{W8n=&dyO!zZI~f-&%|RCD3`* zQ^)?&udTn;@b6WBEw0DJ|3mvmpseTL!M_1~2=nGmAn&KR?n(Rqwf==1^En9X+PT2t zVt*m?p9ft6pPTpUHh1 z@h0^D4xr5Uarh-ZiS{cZ-Wpu@rTw!x>e-Kf!L9@M1BrdR2(TOOtBI5FoMQp7C-NE$ zYy)lv^1ddD`A@91oG;RU-~Y0I_G1t9YXER4ko`Ceae3ds=PB)|*9$=QhbYSDWQ#Wh zalFQp{+TzQTXkYw^03dK-x9=Op2S@J6~GVuNqgoYk8M6feV250(oC1@kaQ&8OV7r{a*k-#0$~B5-9b52mccAHDCwu zJ>Vf2=Z#obxbNhBpG4jV%6L1&&tAgc)0XvWw;c7%pD6nw^I^Y6A%;#~^Kd}pnnR;e0Q<V5$`t_!lRTyNy~EP~x~AoF^~(*IL()YI=O*wL>opDO6Q>Z!B!U-owm{Cm~k4E^7L z@;c6a>U+43b3aeyb%e|^Ezj5A$WfmUKm1&i$j>#2Vd(f=`oqkHdWp6j>lZm<>D4(#_6!^?Ob7W?(ElX?en zh&!Xb8+lA(Om1grp-_eoz5#$S#6&IC3C zF9rS;m=Ax9C%W%E3?2JH^x7Z#CFa^6#_vEL4aoN_pv;%L51{`9_#<#M>NderztI>6 z*}pTuvmZo`2lLv7yckF3cMALvdm)eAf&GC8Sn{JC^P|odk9E2fd7T2kw)yiabi_B% zehVo3BX#dX$2v$o^X7TLI!d(76R-Zf+Q(228`k0YIlyM%9|hiyw#@IOzUDkF2lnn~ z+Jk{oUjf~Pzz*PhK&k%|`1L^g^;!JqgWn?1-{0hQ3@`+20^S5{1-1b<0-woCzaBB( zSj0OH7yvE=HUgXBkMU%Ge-543{OO07YyOPag1DQJUk6a;N8R<%-vWFPcn#`wv!z~N zLMO+gMAU`-Vf~rcbogZ)ncr~uA+ChJ4%i4>3$)oYKk97pSf}lX`#AjC=F8DIPW&m_ z<1P6}-4y6p2bn+f<~(N|CEDhRSASmZ-$uUg0Y3!(6Zi@6GvMxfnDgu*f&1-gc;fwN z6MOAtjuVHXoeyjTwg8_N*fGG^Zw2<=+q8*W&?XKUXpVcuq0kebNBd>qZw48EEx_r6 zO*;Vm5-7)q_3Dp$T>!iWc&(@->-r*i*5fwRgV=_)jCU{W9pSqj5%Xy?Q0iZS&a3_d=!rj|-2>-?^l#Jg zJR%+rdmr)~XUTT}bc2DkmpD}T%g@oDSNmfSXE`v2I8DHIao##Pp0_-|dEOFZ@Z-bz zdIC_^|3u_9AGlbc)SrUmw*E-{-pFGgkNwKkUg}v7iL8s%=OeG<1+sop&w7qUJ&CsZ zvQEUkG2R?^#<>;o>8Bk2b6s!!@P7=D{?CJd*`EubyBkOy^I4BP_Qm>Mm1VuZQuxc& z{&vK>4|o&ewOXz()XDs4cYl_AUqhU?fb8FSuzUYMw3qc}oKD1J9Of(a??dNRKNI?e zKwh8OFX^B2ay8EDJgiGxXQjRhIq2yo`A35od!X-fPftpGh2u{R6K%zkxlGer5g+>~;py zpTxex|5{6aHh*62*$?iYS%;05c*h{G3Bbv~X+YUu@{4hNEBtP^_@4!xS3Px=u%ln@ z<7GZep!2Gyj`tIrk#~nB{~GxBs^|WjDDP9aFDpendERlp5x>Uug8Lp`cXmctx zWPM~jX&=QpXtS63GcJ+$KX2gr*&F`251?P7%rBe0)H9zBjEjt$P5-{gQ|fttD3Rm9 z`#Peu-@K2x?|U8i4)8l*=YHn6vp-Nc2<&V49|cyxt`*n@d>ptHmN15Nv7ft_f}e5BuY=w1}| zUj5nZv&Fx|(jS>G`@Io*_B$W_m-;uLdk08eiA5g*-yi)aE<`&FYzDGl`}r^qzc9jYyLkb3H3&=YIXmUB&A?BA$DmFnz}J8s zK<5xM9=(Awp3VOj_$M-+wBHWh^#_|c#Lv+F4(LNZ9EbbR9*n#`w&X|uKO)Yq@HZHE zAaFde1%ByY=6eEk%#&!#mwt%Z@}>U@#G&42=^u4b=vM*H2R;D1r!4k=gHGnZv#0~} zUkg9(<{1N{M{dK_Wfwuu|_RNPmTRhgK82;V|+UCP5949uSeI`)mBX#FM$2v$o z^X9x|-6Xc5zC6#iqV3h6SNjt9<+{rAnDa`;J26N73B%2K`!j*9XcO;4oA@Bw#JAAS zJJk4-cmR0fL1+^LXv_YT!*4TiBarc=o;v1T0KYc>)JbGNiR>qldC2(GOQfCD%Q~^m zIuThX;s{H}~NDBHj{U47eJ2 z8L$=p7*G296Lid*Xv?2|h`Hv^cx{N=iTu6>%KWH%9QtQ~TYz_>P7hh?H4uJff0l^4 zus^In^I8VKj3e`#06)ZEKz{-7*TAcQHhbnroh=^g)F1v{2ioS#JRB!3MEhi*%tz|N z(6J6u&%8O$Sx1SsdE(WdSNl%nYr`*byyxLqXMsZn7NFfNKk&1GbAkCs8GpoM(I!qs zI|K}jGS4BZvL5vWr!Q0i}j?pEO4z-NG+jD!A2`wyY(d4%at2Xxzk zt>|wXP}={m_1logr@+s1%#Z!*hyHQ?v~V0mhYo|T5J+9CMNeH7^u^FkwCLwUM?4Ab zAW)>^(C=y-Z^1lhwakYzp?es(Zj>3xV|>m9UJPsl z?uGN_P|NvqG4lSa$lpPJ^mirv4awq<{l5WqkoL0Pw?oHx+5B&Wek(AWz90JGbvy>3 zuK%s^VBO?+FmG9pT=SLohwotikBIqnI>wv%-zMghEq_@zwzIAOUgOLDO24u#^}OCl zWPI6QY0vZgUpQZQeJ#gz*6Tdux+VSp0KdB&Y1R?qzGyQ}72**a(U$&>gxw4vuWLWG ztY<5sTLa`elen&l05?K+C$Js!gx4t{cc}Xq`g~mHj7RbL7%Nn8w``z-G7r9F9K8|;W7)S3Gb z?%RpdUpeMy1@Ih!QvWL)|GmH`(at~Gtdqq+Y5yg3`;Rud-p62n29$d0hC_euu|~fR zDD@+ulQb3yV<}H`gOXce~X|C1M}c_Ka2lUq5G4-o6wg1yB$2S4edv= z=%wyW=!tKm-SAUW-`@Z?mYDW-pv;H%66sIs$saPt_$5w8o8!vy89d(Ti2I?P50w7* zgCC#p&p5W94`FX{L6f8_RL4>8GkwYlPzENdkyrz1FmB|L;#!a7U+r3pv^jQ zo;6G~^_Tc7@FJW;e-aUjh zcsQ{O>97$$aRzWG}Zy49JdQ6nf?;9)rbAG z^-tRWfV%#q*u+_jeAijVkGg@-Q@7rtr|vN5-^ch7C!_AfHE5p+Jja49;M;KCOMDJ| z3&y7n_$SnpDC;5fwdEt@+u}+8tV5}#9`w_R{Il7=3Y|^QI3W@5GmOJ#)Ug97<8hq4 z>KP}3csBtb0zL}dBJdNm12~_#uao&~hVFG?Fa5puANuoZUx_%E0)5Dz`)-*(>p_%t zk@_#-_dtvnu@r62!;Kg}+d9VUy!20h68-Ss3cnjH^MktMMLyDw`N{a~#~j#G$9XCB z7emMOzi6^qx0V8>{sHKTbD*0KT$IJW8RPksz!%Y$@m>f27Vv!_uTN4>o_HYY%nXk<6Okpqe`Pg4B5_k&Q+?TA!{^V}p zX20^0e<_gp-hlYG0Po0>Kl7CN+4A{M zld(Qt2nD>1! z@Ad@Be6EMx%|QB-_=v^7SASmZ*^ieIkNx2JEaSZf9q~=H-v&zkSLCr@=lamw^1Q@> zZg(JcTu-F`L!fH}@;u`DAoVk#`x&qT=bcS|Vvc(HJyqnh2ytXSA?Up7sbhcXm;I3b zqww!lUyOMi5*R_7`?9mJ9$f^y7AWIOKWx*V)K?=;1CaX$uJcmgjCr&{;QeTCMP9pL z|1%hPm}NgC{jg1cGX4jML;MWwZ-G+(BluppKI{%03S?dWiQwdbK|e zcBR1SK(F?-$ooFvJ6QMjvCM~Sp(E}L-EP1>K%4zD@K1aW?SBAY0lo>8^^$hfF>k52 z`K6uIAB_Bo!_ht*Xwy?S3Oe2gN&TxBpKSt^nOjR9MMx%&Gx>{_ze|Iv~U^I*MxgdbafWq+joB2gcy z_c|V|i?o;H$Tr7O>RDHgE0N<95b?GNKOBah9xhoye+Lnr%JfOzZ|k>kU>X2Gu-jx8SR_BG;m z!oO`k9gE|{AH0W3tsb}6iPgqxpwt3{$pI3Wlx>>(%xHFFL1@r;^0w8^XbRmnr4!U)~4&Zx0>Hl`{e*-qdZ;QqMcId93 zY4RrKLEi+VpX<@y2^lD&YCR`_S)=mj3?@x-WrW1HT74h|Bz!!q06Me;>k*cn);G0R9Sic@}%- zL!B)ib+)`^y;#Toi2n}IHa||papF9*7XhVzsXGNa)=lbJSBd$S@!l_B=J7$mBY?*P zPXt~g@LIHq2cBsBw9Yg5fWU{*CO(BW@maKqyUsU$hcISxdbX8k*{8#V_U@fW?S!U{8C{UqLkwpZK) zJ@GBH+ZLESB|Zb5_}N0EBc8O#w26|6HmandA%<4`b_*3 z*K49&mn%;(`4jUne~I(aCfcs+yl$U>>osu++GRjq*KPA}80H(tzZBym^)sPc3FQ1( zXVFu)2Kok3f9d}m=GA=0i-{vXCC(=p9g?E zPl-HFIbYtu{PAHPa9=0=(_SL|Nj>=wkjE#$U2*>BAs*vOd+Pc^KM;5jFdyT?^F`Vh zLdSK8crN%n*wfF$;yjS&gY-{-#1CNqPm7;y{%rOQZ?Bw-CUKeEhQE{DkPOSS}4~g00=jvbj+f!V3dHpQ|pT~6pSb%Zlb%4lq zPWq=m;>oaIX7Q8FpUvJDe>(ax-_jqM?{er?0yz(OeUe%U=kceYYleTuk$UQ$hyEqtkH99_(~q?8g?-#lfcpc7 z0gnsiJLI`f=Kht~ zfbrot?TqUmuYn>5o`x@(SKkU!P z2;_cN;!Mym)KKCJft|aq03%bjJyf5ND zU+RAj-ETbV&(Bf+0@ll~fxiix=LqY8?LcR#;iJGd;KgNze-ii^aAvvTWqjqJ;zo1UCKE9Bt+p_|PU>ptuE)wH%1pMa%OMr`j%)>Tr|ICulp~z<>umm_2 zSP9HSJmw?&7l+Pk|LBMK-|iptX+~ZZqFyq8>Mn);YT&KFGf+pK7t;QH=;U}7U_9AR zBFB$;je>v1k^c9DAL4B2=KvQ1mjP||%#S)-JkF=hsM~w+Ynx9)aGdBv`w&Y$Qg=9X ztb@#-dGkDB9VK!e1&}xE?A4!Fd!DBfxeoF?Wgaqq0PBkl=izu6Fa|tZ;BV2E{{Ibr zc*Lwb#3Rt|0R8}MUT$>jfzluCCDNbNlOF~DV}P@OjI+TKkGciWmjSDQ#mh{-r9c^< zb|*m}LmY|hcWDLu0loU8z0{wHxa$SpiS`KO&3?Ru{Js*HXURwU{SAj(RfBGSEetFHG@irhX`x`@^GC%4bg#Iz$%fLL;X^5p>{ZN0|pGDx=52EbPtH_IS zWPZi)L;M2zuYlhGds_0N9rL5k7LRpW3%|wiYnv}mKu6q!b~{k^N9z6o9qS2Y`F5HvBx`xo4R6uYuBEKlqXUis4V{ zM?z05Kzj^O>T}H}SN$}^B`!q!XO?_yx_an|r=i`7I=&2C)nMv*2~hTz_7dq&>dD`M zc*GacUQ}n|H2@ixcq#Juqa~jk;O7?MpK*xy<9LOLC-b%W^J-7sM$tdUmGM}IEzmb1 zzl(rU{|w!{l)BOs1;(D}s9*1!LowCOC zLt+%Xj7NVGud(=-_RQlB=$S{%vL4(69r0eY9{@`K&x3y**aW}L7XQ?J06p`do%H`X zbi|1@rhdd%&?a6RGslSqD@~g?8ttC}8?deur_~xgu>$RC;JX5kz`P{}&?f#FZQ`qF z6AN+OBDSGT+=ljNz^{P4QQy}Deup;kddz#`E?8HH>(4a(C2mBU_#WECUCuIk;z4K= z<@g;Z>Yc4W(w^hqtJ=inxCb!q9OqVyJI6JIxE#lT7`INeId1u4+_+A2+*-xBeTp{6 ztrX)D0EU1Z$Bkm#w$@!boU59E1GK>Jg^D<;{I3qe;K;II6sI3(cTaCL}`BjbR&RV$Jbfv zR}I~2U>o|~Zt4FT=>7!cc}qK)&m+)11B@Ym)?yr zUqsxOE%Sr*Bg#6;{8&dH{b4=I14{kg(0SDlgMN;{FxqW6Z+RYbT!=FMblA-n{-pm! z7XM!Td9`Ohst}LsP^V=*qK@la4Chrp=!smXd7X7Q9%B9RVO_}w?u+Z%QXu!mk79q! z`(EO2a36d%@GjuXmiuFw|ASfb|9?9_)}sLRXwT9=_UCokEBt8m0gz@4yavl)5k0Ty`nyD|b8tV&Dq~kEI zEuPfhfOTtAj>vot#Q8iW3v%AP1>G)~FDC)zJjzEuR|EN6mDi1)xIeOCUmTbHmHixs zd`5`;r=$Hk;=c!Eyxt!D(+~SkyKMQrfbn<@*sIaZgFe7LfU~aJdpE8`u~i6gnk>wQ|iCUQSZQSf8cib z<$RX@cgaytzw9sbW*q5%0Q`H^2ca(mE*B{MM{)cD;2_NVBY-H(3tz&H*S>yqrxN6-@|K|c*RGmCv+94F?XJpecuxIa+Fx9MzpuA_^vei2VW z`=_Ya3}6t*ah36DFOmMFzUf)R@Of27g=u#Ryt2~p!~v(8Hu1qK(U||2>@^PO-Uiq}cRyc5?8|HNp3ETGHxwcAEA|k-CkZ&MwZYzI6PqPU%7E z_+HN1w0v*JSDH@0o8yGi@w+>|wERz;c1*2gtDa6Dhf^<=@9T_6^C-2a)6a35x)-9S z)8FZQJ{_OutbZjPzlY-t>6skT{k^BNr_(zvzn7DjmLK4>ACS(^-j3r-#}9OxhNa^N zIc<~D@q@eNsEMA=J{Epo3%{R*-`~OyvG502_yfD~JruLE^VyH`fSNgKmiKYE1oeTS z5PUP1rd`476+`P=!1o4!1Nc_(^z)kHdpLuflIfwFLRX7HRz&w+0R{~q$+2EOHaLqx&vva`uE?*&7! zZX>{#fFBBdDfk%pao`&jugBe4qyniQ&Xb#hfE_k)1 zy7g=V|0nQ!fzSVkA$aB-1)l3$9`w_|2cTy?qu@i}Cqus$d@Fda2v>k_2R{n>yTCgy z8DeknPl4wp{$}uRfcFXgR`9&^<4WlCP$#CISKI>Jq~@Rg833MJf!T(3hJojnz^Bd= z{c{|6ZVl*v5qNG9=0Lwf@jaY@&RVRW9N(Y2{2*tr824YoPYL=p+JtrP1J5nTRPfJ( z=hlPs;Un?oH^Fy6{|5N)=?D4<_`_8J^*C}X^a}Wy;G0mlC%~TrKJc<3D!|{RczxdG ziTZDaz72ZTbAVd7w7$2{k5|0Tr<49shbZ_E5=qe;Ix2md(RLn!9NJT+&oa}_34@Py8sX#6{|0=?XNKsHIy?eC@VVi8 zf!_{3^o8Na!O!siCTQU0={V%L!1HrJMaz$qz>b|?;fTOO}iT*>oZaD`h3j8 z`KY!r?$2uQKC#}O4?oUNjGqIrE7Z`Awzz6m) z#F1)0p?~fJ-!#zhjQbV%mcfR<*T|ibdzrYQeGGr80jC%oR+e`~=v4Kw^?BX|A+z8(DC;J*joe2CGb49-^Y zE#M2GAFDQOdY*THr=PRIw+v79Qw_cqJpJ4Qz7zaZ`2Pxg$)Uzi9Q_?W(8O&!-0<_D zF9Yv8!tmc?VqHl--|$?2UIO1zX!wiafA>MC^H{@Q0)7Pe_M;6CaK?epJJ#^mA#R=G z^*rCWz&POb`aI~{N{s$a=iVjG_Swh8Z3-FwbJQn5zC4vbn|wtoe-HU8!;eAS zP2k&V41b~t>wEy7kGM`>U=H-!*VK8lxV{f_`GJmagh|i`Ka;?h3{T~kz)!mvuhlN! z&&j{bB*^vZEbvDP{(SHw1b;F3VS>LDyif4gfZt#6*MlD{_*=mb5d1yh^927O_&$Pv z9DHxVw}anV@UMV(1phYp@9#{l+cxmq1^*@ZF9rVt_)fv^svZ^fP|w-^Dfs^2w+enR z_;&?A6nux^4+sCc;0wWT7W}c`Uljag@a=-11%8v@7lPj?_z?I<1YZfhP4IE>e-r!~ z@EZhwF8DhIe-Zdr!T$mL&4RxM{CdH!2Y;R5Zv)>V_RK>dY_Pojb{w}9PrL?vp#GEe?It-eo(1?c-{XS`25YO{Ab|Xw;2BC@N-DYUNu$5VF+Zb*n(^{syw-vLnc{VS+dnXV zE$8)~?1ehK0Y7c|sebw$Y~r?*ruvznc>&^M9qZTJt3nRA=# zM}3}hRBGHU&^J#p`YQO@;}GLN@MqJnq3|eUe%zrZ?gqi10lr1> zw}EdG{3qaJf*(A>_+Kmd67UUzUk$!O@P7p#68yixFB1G{b%U?RDjb~s5hiZ4;Ew}ef%)0nOgCpf_>kaN zf?p)~wcrDSzYct<;O_%pBKViV7YqIq@cDw@{YcZV5rQ8I-Y58V%>2fkhK$AaG|__^TQ1Rr(z zflkYKlfMu1;R^6gf`1);HV8jofNvFi|B*U>b=?tuO2L;1{^#I*g1;BMBlyq3ca)^& zUo^_ZZ4-PA_!hxm557t8?|=^pen`IYUn2O0;C+H`2JZ-dBlwQvQ}gfTNB)989(;@7 z&jjBj_3sz zO9a2l(>y-z@kWz^@g28~7%{zpi+_5A;RNK59DlZ~cmOp8cE>JP&yS>)sH> zYkjQN=yChxOm+1G9S8e2&hrrT`SnKs9Q^+QeBNoP{3h_7XBxgY^gYL!xXw9-KNA;{ zV#VwEQ!4s33w(*-E5R2F{w(nMg1;R6V8OS7&lCJpEq9|3-y;HM~F`^m??oqo=N-Zwlo|Es`{5c~%CX}vu)pHArWMcmzvHF*{b z{$R!Hd;+*%Wp}zwBM#0|&zFp+`EcnfW|48vVZUE0!nEyc&O#Yq1|1sdV3w}QM65+oF ze5v5qDqhF!JZvXN|1fSF_>#j7|M_n2Vdq=L>v7*OId%Qan`rn}!5;yBtKi3j?-2aS z;5Q0B4!%wB7lGd__-nzp3;qF@AL!%_@9B1k*RRds2MhiS#q0X;pM+(74xMDirB&3w z1pEfUpQL!V&a+KD*Y-E{yu{V3=iy@h-w56j{G;Hvi+;TZzEkjDxxBhwi+<%zHu?7! z{1J+G=OLa0v%gDRy*l58|2ps?!Cwsj&7uzL!LJki!|=0K_}L7;N$_95PmA!=XNu|9 zdchBOdA0u+evSp-BKU>i8w6hsJ|_6J;MWQMYVgg1|EtTZ=d0MqR+#DFJOMt0acKen zE_mlqGjB`4{{X%O{6_Et)xf#e5!|P5H`C4;1-=9iG6T>Dz_$oK?(+Sdrl*aA@?DI< zo1O7YkA@E0nKWdhV+a%`sQt&O{_lEut;M>6O z2mVR$9pFcR-*vX}pSQu}&wP#tpAVk%ya9X&JoEf3_!jW$cHaHz1m6Mv2AtQ2r~%dI zZwuxR>pUNP2kLnT{9Ho)LnhAw2Aoac+x~8dd!gU`MAYpO!|x9Lcy@%lP0|CH_5;5(mz1Hd1_=Rcdu-=lcF-{apgVR)Ut zyL|V*tNI9jV#3c?u6~bhf1hQ`fA4uZZl1GlS94w`XO*tM2P^$fPWQhrJIwW?)*tK# z=x2<}cmMmZ;}!3u`Ma|@@Uvl3YCcO`UY(u3R6gcD@7m3ALX2pzPU-VfDYtcjg}>aw z|JlOdZQ(as_%|&4hZg=@3%}R=^!+-@!XKk}Uz$2BwCKw%{7MUdwuQgg!e4FS@3QdE zS@^dt{B{e!^Mdqs>u=$QTKLfxeu9NxY~hdWpFW>Di~d{-f2oDP&B8x#;XkzSKUnzP z7pBjDpoKro!WUckfQ1iP_?U&iz{3B*!rx`#pH%#wY0jfJEc!1k{H}}A`x&bEbn8`- zg`Z&Imst2;tNV#`{%b7yvn+hGg>SL&w<$hd-5#~*-&Fh_>N@DdeOxhWK6G*V{QVaG z1PgzX;?w0*ZPBl>@E2J477Krig@4e(zh&XSvG9FPN?)H|yQb%dSoB9JK3#oEEcz2I z{HYdxjfFqo!e3_Lueb1jweXuP{6`l4Tg9ilZtnK8^!41^!XIVfkGJr16`!vD5sQAM zg+JTE|JK6)(Zb(q;UBf|TP*y)EPP+}U|*l_9oX;jd@ogey7g+Ygv+%cB z_{S{#^E;={^B+pTr@AlTt1kLr9ouH{(?{L-r0eg#7XEMxKhDBWx9|%re2s-a&BFh} z!mqRNtrq@C3;&XZ-)7;zw(xzHq_6W33tw#EPq6TdE&Qn#evO51w(!?k_&Y896Bhnu z3*Tws|83#>2GiGbKMQ}Pg&$|(XIc0q7XCB~|0~6(ThIS&(cfy}AGPo=S@>-h{#y(G zlTiA49%SJQ6|dLNMc6N?<;eXBDn8wM61VWbwD4D0_**ReeHMO`;tz7V|9oK4|I5Pf z6i(l-z83ya3qRVzPqy%jE&NIge}RR+%EI4Z;hmNBk^0EUGA9^}H8uoetAk^fM^;5@ z>Vp2FAbu-zHNk?aaP`vium`2zKew_vRuwr>`wkY24F;D+qgBCR&Zb4mw6ZP|_hdSD zVnw*7CQ=m~x3aeKv1@K8-yf-t)iuIfT`X7^53h>E zYa{kTC3PNV%OiEMcr<1=Nv&8#{n8yXbO&n3Oe<@HwH5Vs<*tBX`G47($w z{#U(2hRHd5DldlFYp}#fszFdwsWxZ3SpAOKnNbX=vua}Fl=_;oy2@ycI;HA@E9=8m zHQ{PKL(?2JGgYUV=3rS>w6;EOu`G+0r#Zs;iheJxtc{e_1+_L9U3#keofVlFt*(yN z%xjEAYG+33!ev$AS~VxsZ*_HX7^jt#g{!J?T#a8%B*PNYHD6$`sxG`VRu{LQ7%3KM z3Zl;Vs6MBoHLO^makks7;I!I#@p=|S*WGkCSYE06uTNoRq|(q%=SHfQRYhuRCz`Hk zD&b~oq;9;bz+ATo=E$__STtT29A92OGg@9>6`2!RmZ?BGcC{-+I58i}qk2U$u2tnL zqUFI^k=5z7>E}&664OIuT+FDftqTUiWh)#-1Sd_NIA`({98?{x(-ocV4)Y{ch=i3M z_u!mJxLhxF+L4kjP@_}D3Ytz&iASpg4dubYU_r15%CcyzF<2Xmlm+XeT^)@nAF)Q& z?_gOxqLyH%I$T*3tgKPzU@RWdi+W}G$Rh1SE4g-fS^?ba3W6_)#4DFIP7Ie-M9Os^ zKnEIi?}BRZbbrkN>0XVGRZebjM^BGytTL$vDE&k|@6GS

          ?fv*8B?MOZ1wh#}xp3OO&Y5xJOtU;Fq}DPq65bH*5o8wmUV5 zaW(isF4gCl?lcLMh?96W!lwK&cx>2-B%d(xv_@0U?7zBab^{za*lo31JCyY)x3|RL z`s`8RT#l#7MLXc1$VEtIHCr!X6Y;_&vTO_|ArA8DL&Okr$xv&pLWZd#cTS)T2iLJr z)b+cZn~B}fn&=mm(XSZ|-;tKcZLq6n4&u_rLp4NX8hS+>nV;eGjPF(WP|dMRrnTma&F=7>@<2qog`}6G@f3Sy<6;F z0nikn<@esn4^qkON`h2G2^XBj&}U{5mdnrDgW2WsvmQ?7eaAz2`C0Qjnz!T$^S;y1 z+bHZ_8*-44vOyTxT>&pc>7T5HA)wptY{$4LVcem08dp%J>&JQ&n^V6z%OQe>>9T@8l62WS8hSAa9A$nfjYo6q0g3PDRHdPd-6j=fufzIdP)%OqdX@#L4#gW)>s5 zKPOIZHd4$NCy&r$o;aDa)OeK9AWqgj;Kj)mIdM|{?}(FUeXjszHF61)UoNtQ$>ZN^ zn=pBmMpf$OyvHBpQ!sGy7?QT_Gi1wz$v2vUAZmOtk0Gz|lWa@%A~jawBJ~~;CZDsh z2Zj{G!jKpHa*NoA8%dbV392WX@&uI{K(Cq(^vveVBY+bScl(2^inK$1u4Gsq$lOS& z{k3U3Y|u)wByC{Udkk~AFu~a^nAKgq6xGCaqYB<~skJ|R&baPSvmD2s0){jO_ZcK$ z96PTgoCTw3IRFy&JSl1Y1+5{ZwmcKajKjZyKLh72`M011%}Dh1-xvao(YQCFx|3-2 za?#cYyqz1*$qgx7IIeCCnwHMH*jx> z0%fPtEc#1)ph<;%;h-@`8ZoAr;BqJ;0sOXx^_Sd5Pc=kK4`4oADaLeNra3wmRJ5P} zu^<7m79g9tV~c5>G=qo`iB9W@%J=7^f3j5%O+3U%2kW^3*jOk zK>m0S+m!!p*XPu=I?1?CUPSuAX?*3Q z82_=ak~G&Dg2)Jh9#SFlk=!AWcK^DC*@YclOuzM4&2Az#aN6@-$`|vU>K?BCYIvkO z$7~dz?!i$+zeL1B!+iZt3I?Kn_YJOBw6%T>N`Bc#?(GT&y|zJxIxiL+0)PVqnA@D<`Y2E!M5@~V$?|F{x|53s)y1WMye zSPi>I8GC6~Tgu3!;d8daiG$YmwnRMJpwa)qfD}zKOX(bjniRaEg2mua$s7f5C#(EY zCsz65u*ztDt!7m4oAAIsHKzPqJDG2V}XpYv*W~@;KQd&|O`MyA^R| zqkTJ^XNXXi9&x6AX3iJH*IU0u@m}`3w{4PyV2>(BMg7wIs}Z*5HJ}UGRR0G%EZ&iD z`tSdZaMEtBr#mm4Zd5W{YvH5{1Cv06mmWrsT_+SrCi+nBICgs1?mry}qw_JLJ1vZE zT+zNTs<2&qSJ{-1Y2%%n7Dg{O=L@4IZ~0{0-7>{m38QNaA)ORP%NB6McyIT>2VKfn zmp3Df9#LN8b_gR5*8z6`p7N-c!Yd|TPh2%#HTR;b+z zp{MT338BkXpc_MVN2{!u?(roSP{GP=*whkZ8NH`*;{V6kNn9eVzbuFD+_5S}xZvD{Y*6RO{$*qa*OsrI$b+0mX{G$sIrw%QvAO9zX z*BsFKt%TPvj0@bm3%|YaT6^cW5MD2d7~8R=OxjfDSyJn6-?Z>LNjE-ZEveIez#-$_ zQ9!Ge@cP=k)J_Voe=IcNbV@cJCIY(#i1PDF_P{Z9(7iGmo6DtR9r2``+50uEIU za!nZdFtTaXa8XXZT#3i<0!SW5I_d7EJuR^;iZL?TmSAU4pP|OeQ51rE*PPoT8=ks` z+aFrWy{B~gC>*G)s)HCsfdZ+*{Kw zb;z7!uCkwydv-;N0)0{jHqUR^Zkb@^%d?vdffi+hFuwvds5ZP=b|b{jW1( zMK^52z)pjP3gSo2TS<&V`*1g(C+ZEA`o&#wKOv@Yi$lD4M=qU zC-x;5BX;)@U?zSJ-!&jL6M6?mse46}WY+o~Vy_iZ;ryuA&J@n)Maq~(SIjUS8e`^O zzpSp&NaJ|h&@?;Nm*~nDWia>yD35Qoh9UHFg=Lv(08y#eFMq~*%~%Q5&paO7nLeR?p^5D_f1=pqJ5mv>bVO_LrbDlzGYbR z=X`rJnrz|S+I=P5JkD*qe1 zZQ$h>*bYV>x; zk$K_2k5NtW$#(!&ptBHrlXGGfxRjAhU_v1QF#@8>a-(F+P_F1-x zj9pR4YxaY3-1D%C-{1LdQ@_2a*P#V(BQeb8X9)N*9lW0tCtH61CFrPJFglYBvdt#}`2wzNfVv;AKxla6Dg!kv$s zwyRO1!6wu#a8w_@aa|rw@h{mo(!mQcuNEY#M+4{yo&&)6#;TCffBRQO2 zs9abr&fU_zNp4MYvSJ30L2QfnxxMZNP>LRq4Y!^8$=Kx)#=JMFcK&YUqpGW{0<0(Q zJ_(0BYy|g)5iIv3u=XdA{oj$)K?D6Y*K^*1j+^s_7&Oa6RLsAT^MdTSbiN8{^%@m& zITs(QxE*09XhRL9?i6)xYodYb!7Xc#3^x`!p0hbJ(lY;Zif82}=nX-B3-s1f@jPS9 z){){#yJK&)@Tu22+e_(U%I(B z@L73qn7c;%({P&cR85e!2(3@TtJ5~m9+b2d_NYdep$@Y9_+h90v0U?S4^iaI5Z@Y< zKg4ab(HE2a?d_(oRWJ%O+e$OoRUZPF@<9t-Zr$YQ?gK|t4iS?8+a#jH{ti& zHG;NI$+1^JOC35T$G#Mt5}SETr=$sh%E4*lm7FLnweU(lrD`j$) z2f-`(XrE1ZCC^e*->+~V@=alVTRdFV?UQT>ap}Kk6t*dGy%G|ZmUipM)r7a(<^R34 zL@C!`F*m;4$ia(Rww>goZ(k8*o{M%->`iAt`tjj##UoXO`RY@W$-XiLt1qr+c}_z8 zI=IraZUwzTa(wX8YChg^%}QVM*yO{29oJOG#un_RZ_RN|?u24m2K%l(iIr}fh47ykij`^5Z7kmYb}4**QT<+;9@YDD zDtDMZ$HAQlzR#QXq$tQUMZn0!r)wpc$^Y~R9z5!8i0f265l-!CKLqS*+6Q0YkuP21w&zn-1Kh3#r-URM7Dn!h?l?kMfC2xz#P!qpQ^z%9bj9L@ zTN*D!IfHejx%ZeFl^n}Y^N>`xeou{WsQcH}CTkR3{w^1j8W?pI6#WM_>F-D;q4_n-%bX;Z)RS-s%GACFVZVW~MCZZrc)- zy3fN?d>VMe+&zG!WzM^ZzI)Gj50lsPg74!~COc!n|W86CXM;?F>oj+q+EpQl>R6hAk!79@MIdEgf z!du*l6$}IKi-n)0gd}n9DBjaLv9EWUimsq}W?y(rqyM%eZU(WXVvlAT8S;+cK9z*9W5WIQv*Nve(fk z0X;1WCyzkLkCZqp_2_66kkgZg=%!;!f%uyN$S0$Y%=fc|%!ucQuNMeJ{v(h%_~llBznW z>iU(l9~{CVT+=2DcK8oFXz&haZ3NtX!Iw`Y=e?AP+~?u<$=l{^u{_5+Fpea4fjUFJM#Bl40S);SY64mlzYXh!VA|< z>AIt52Xx@$TZ6731M+ns0T11>K}#yF%2jHiD1D`bski0g7Leqx!_FSixNeFvzQYG4 z^j8af3jn3DxN;{sq2Zc1{Z z!H{iQCOOe(D9PVMSzgdR>L@4rHece72+sHah=VJmADbw2uQbh0ukMhiI|!rvv!S!; zJY1&os6L*F_Z3*fx80bbl-I`fjY?TWV%jpeQm#jtPhhM-70Cx6z3tR9bWWqyK5$}* zgmmh)A29^E%bBFryfZePI=MjVK1~5Y2$nw4Yf(a ze!R(2hi-W=NgaA!XH%4ftx4)HNfB6Yd0CKb6E3lvQ?}ze6#ssI+4f{dD*Jw5*p-O) z&`Jj7`v2BOcbWC!p~JWKOMIgT_thElx%7yD(I20iEeYZG-QBUms?`WdP}(C)y#;i^F3ovdMa}yH_x7o??Xoy83{RH^ z4KnXL(t970n4tsV{(J{=^laT>ootiLgTMvPeX*8wCtY?S%XyVP<%((7M%zeIBHK5J z(gT@)ZHNexRN9CglrMd``6PK885>$xWsm${s+zx*vBoOd41#VuM~GxIBR|LLN3Ft8 z9~+}~#BAV@-Ep~Ou$+D4HpiwdTeh>k@k(5|hL%_fH)yN{pCqic;q=xFNi}@dhp7e{ zxxKbwc6rO=4)wa8&hzL0!`+*}NmZSB|6Lq!Q7xd--7J!*ATerGjM-dhGn2$6qM3QK z+9Z>_nMv%7(P$=Ow%5?oEQ$&=h=3vu?x>9@xUjkljVz+FxW%XmI z-KwtcF4UPx{{8ttRo#2`^K9qYPG9$qlG$~D(4*oCa+^OuZZqB7wT6RaNZGqb8kZtC z*J|)8i}5sD5O%?^`ooapVcphHXQy<4Ban@}Ud$)|t&YalkHA63##MeMYcB<266xd9 zglcK`dKoCY8?|s=a)y-oXXlR-H0!&OG<|XNV1BJ}%9hYqvSy7sHCHw*!_xE3S}W`5zb# zCRzS=LYA{EpJt1){B7~DE`r(S4=b-1WBJQE8XGKs4r7a1{tO_dZI-`U3s=DMpB(ea zSpL=Yo?!X6+5kMuzsX=qRtDqOlX+z<|24k?Rc>Ni@SSA&vuGu5;hpt0c6ReFtutedfd-kgSa@U4`VS2B$Lvorz{ncU3*ByY z>L01tCmT#=T5DHqxZP_9yn|0RX{V;nE+{A&RFIb@@XP>Gf1)N=B zMwuj1z0c0KZDaJTU0rgTe@G+Gp<{l{c3Jy%s+nW$^{o((4q)x~QH(XIaQ9qVM;2h) zs~~#67cdHKTVMB~-Ja97dQKos?l9EPsIk?mqWti-_vd;g@|$H?7c+UkM~$S-_3G~% z8Aq1k(^*l5za$>)f=iPOU*m71Z)5%M6&<^vI_L;s{q@`h6tn)-Kn|`A`G@=&TF(NG zKYGF^-xVc|l)8OlvvZ4X=d$vHiqT!f*x%25-?mPs5hdfu*|#@-ps1(3urQ$tbALDjADz zn73SE7!0U(CvK@m#X=HY(3<%_xq@Dd-Y5e{l~9Ir z|9mJfqv-9HE@NXlbG=GeH%qzcbQ={#I!v>2%OnW(Uhc7tWrNmbst4iVvvd;6co3H3 zgi?P2AXv?6xl_>iK{qsS_%=yaDx=Tg9HY+)U2lS4V%Co;DoiqXj8BSwC?0u-(?kdX z=<6P8(SWrfibjc(8%OCPX?-_@Jh-HtnoG2%wqD$B!(45B;yep0o1g__JUsP<9xdG&_UXcL#>uxs~E1*#TT+pjuV=a0ROz6#57a89THa#1?nE4Amw8 z*{bNFyY!Ay#b*}nu6T6!TF+t8xi5_&kvTAadr$H$qas3Dn9eXS)d)UAN*>VL%{5^4 zEVC0H)5md@H2`RTZJ6|?mo!>!2;;dq9?y#8c*Gd7g6L(uj?0tpC7Qr7oBaEH!(P{L z)7Q$|>pFcQ8#DOho%G$=)R|kaEX_6hFHolPZJY6B1NQGZd^&d?(QVT z-eb-aMgAD%0FSg@@tw@EGxI_P{a=D&1acq}2r<~849E3kFtOZ#(P!ZTzBDAMyjG;p zB<;#`qwX&;p7k~nImg9lwT6w=y8GS4`BtV&CHss*Hng3E$O+g8&*BCy@(nn*UHg%Z z7*Du^1RTVr1nkSkjA+N3^^e|Z@;#+@2>Q2olE9|j^c%AC;W7g*H-dx!b`EgsblEfU zM^JtuT_iF+m!Ny2t(_t|Kk@UAJq@c=PVvxphtECqgIl z+FC18v;bxGuQKo5&Aeif@0lj0YH^QG4p`1^Fe~D@0znIN(gfT#!xXw?v-7qAsV)}= z6O%y31v^}T+nMm2M(;Ed>#2W9&7QjJdmeCl79+JkLk340hN4Xs8+UNj*ev+a?ZP*F zW{5)8{9p8CJe=gQYp>1#f?SVGMNN9TIVHDTCg~h*zmSHBr4q1VFi4K?@)!T)9@`*v`O-_23c0~ilJ7xTc>#42!6q< zRJ?ySs_Tv^nnd8MfsH+&BJfU}k9u+|uv+3KAs+!UQOW!Ef=2G?ev4x$Y+${7eM!#KMrvV)zevCR`_PdJSgk{SNLD>q97N92@@Jwf$QSoty~xHMrCE-YQBpM^;2?P zZ1g^eZPZsCXu5OPV|~N3$zLJ080kAC5@UnQ-2$*)&0w2-xh!OS9)3A#s~Zss>TA-2(lrhK z+Yo(g@UGIr!7-roj{D0LoFZ>;4#Jg@GOJc`9`?7BU1}iolwE@?x^gU43|O`eoG%ZFd_H#aU1IqdRoWE zaeKwd8W+hKzKo>$0pS#1quTfC5kcKoYIQ0`791S)Ylu3J0~<*v^LZ{mqR7{{b?Ssv zgr9zh7P!aeP(*NI{9gV>P9LUR!lA<5z5-+wQ4;x3^9`>S`&WA5?$h&3g9`kcXf03^c| z(nNVrv5cFuBxU*=HyPBlHM~AqTyw*)@u>QVy8SoK=L1H@cn~&uX^jLT&Vp#kIDSXwzqLno=q>-W<96%JA|>K z)3$Qcij;%jJg;(xCCXh{yxa?kauLQYE>eq0oM}B{Y8FVGhP{F+wb2iB6Dzd#GwyXy z{3}Jza5?`@)TIuDu#_TEpYKFn{V$>NzTb(;?H8OQm97$2BH4|V$-;IxdVnk{Y({N# z>31}UANS6Dc3n}*`o+{2&kN9>u&*Im6YJC($67r z?yZlk$Z5jLA)Ig_4qhEIllFs~yA~Z$bqx_)rmPRg+VMSm?$(!M*EFN)RaKQ3ON1yp zK``!0B#Rd)v){^uQNhJ#wyU!Fj!n61H63^x=TTw!W)oiUIS}LIg=?B0?Jr?^IH{d5oziS ztB>2kpu}1<{ZeL64+)nsdRV2Y=k>7R6Za5MCd}cPxCe>x*NrG9#*=VvoUA zw_UIeati3m*{*}GXxyJgP=mdus)-ws<^VHtkVgmh_M^OF99MlgPF=_8=m{1#J{@&) zSJl-VEgA84lxCsV7uuSjHh{6dN{6-*&$m@j)PaH<^^CPNAG0N^2h0?6d8b z4ug1|(n39fi<(!D?&`RSXWDHdDnBb-i_ZWw1UU;ciAlrtI5ZgKSa9PToz<O_Wc1JuUznWR<7m6dV$s$kNTxn|?cv94Z>+y6=CO47LW#vE~FsX9)*kVMu z5CnV6{pP^r9Uj64w-ysjSgLQ?g;;tI%4IZE|=2! zSaML)G|E4Jx0fjZ50cq|Lsz-Rk#X?sMoW*>&CL;N@n%!m0NoDo;cCO6a@VqHXiczv zZuo1N()49OiNnpWCvg>19Ds~S$!)%NsZbaLQD>Wx|n4!!Q3=ye^^*$ zeE}1CS%MRNchj!c?DZ8xn7y@$799LUjq$#`Nf-N|Lv#SmrTLByyAQx9_w7!HtM-i8 zRq2))9eX#g3`?7fVZNz^T91ZW=ztK9uq%1bgsY5d!osJt+Eivhx}6)D!Jr?rHCz{Z zRo$S3JW7o1OKKD^1tpA_G(%!$-uWP3LZ1imsQDhcP-H82vwwHZE`4dAA-bP9VBl2 zIXvZ_ZR?iRa$({%fIt{$x3Dafi;_qt59OP3<#k-4{A#UgLU<1aZ}bKIwy&p*Z8}fQ z$sA?YwS4L+Jj(UHaaSu1mn&?_BH9_*bXi)U^vXonZ>Z^4*}mQ)Un1+)NGZr>x1>h zU0M=COEv|eZ_gog$fC1`+quwB$>OBL3$o^mD&v)|jnO5t@r;vXB&V353b@#A^a_HV zNCgPENwvzQZ4IUd*bQzc9dA0$@=d8m(0M&ZW1X==fsGtLj;Nvj|;5iDvy;~a}- zT{gr*oYI@jApJi?|Al+=zM=1UM?)3$tPhvj!1llTD@Y3}_l)xqkoL^ggpv?mpXea1a(p51durpeAiQH<4Fl2|x|yy9QYC zxfYGOo)K#w><^!7fIW;Pm{i=5gGZCC}^RzmiH zr=lNHSK_?&-OSd}et$PltG&CoMLkIqU=+5fO5W{}cH?Pjw}aiA)5I$Ztvu)OC~LVM zp0!-p%Uz4=V9qcNL{@L|!uJEQI7{u%Ke$wXE@lC~t8{He)O(PQOU+)s+aK`i;z`7- zc|bywpTjLftGIs^ju6(){+W~Qiz)OTwBh6A@Q-KBVX-dP%q08wX4`bP-2SH)-NCSS z+Dbv8*6Bh4@3_{R!g`+n5*%gXUi2H$cyIpfKmBN2w>GPm#=X~reV>YpJD>fN0{w86vM9v(iPg7+pcZ^sKU=Jl4M zdw<~8pe^HbaNK~x1bNH!1M<8R!uCh@7Dh>hjR%q~-}S}ItuHKhUGZ{HB+7y9%A^7Y zX?*|5H`m*4WS$7-!Zseez0N!W@CPWKz^92)mcZu|h4$@3XCk68fxh%A=%LZz5(u=! z(-6k@)U&&u^7x}OS#)*oZ1Z)18_pY7oh3qA_G)$+grwZKvevh2r$%CgfovCQZ7FlzYu!hA9Pc^qn5! zMtkU~yZG0}tR>s|fI0uNcX%nU@c6mR3F8su*<94~WIc5e08E`fg z3(hXve_a3`OaPF0xKgV`nwc{RE@2V9DS%_h2z*AuspTE5Zu^IpQNA=(%IN3vGo=tx zXqQAjWxioqHr_5gHiJyGd(WtARTTAxowsn(bUiyAO!`_W$XUXEh(Lm&fLWW9D|N0B zLa^`RytTGJ5%e$oQnJ#7Vi%`c~7NAd~!(1GJl40{(US4 zcVtxIQ?h*WFfG>XOle*|;gzq7c0y?|?Rl0IDt_Ow7NA`#udd=`94GHs4YKQmJWmU< zv8iJ%$b`q?Xjv`D$XiWxta7hCV!FXREy&vv`AP~ak``p+m8J!m{8Cx<5NScq7spme zF?5mJoB0Z!7k-U{rMOne=t=fJ3Vxa=>AVo(Y=Tcu#L#(R%M^hz`t*Q|E51m$*6PRp zcITJ!?t1<~7~k-aFex7I;OrDa>M);Vth(q0(D{^$8#n^ZqK(99aQQ8}px)W3;ln3U z?=(bYJ?ZQg*O3R3E&tD0qqDiGV~x&50ZeiX?~M{_jSaPki}+01A>2TQySa@9M<}%r zg?n+*I5X3CNJBNZpF{Ql68p>QwXT7r>G0>=+FhCUmfW<_Y870K;8WMRpOVTxp)-8E z34m=yXhqTkS%zNEjF%zS4O;B&3d@Pw4vB`O&Q?uD%UF%&MQaR^jv;hLm0PWfJ4^Y& zvg)^|TP-_vh;e?E2~RX$GLdykFcU^SBObMaoYxoaI={lT$qK9sqiSb%Mb@P<9b99s z29?Bz^dAG|Ec>u_rmuUhXse0UW&y6$FnXnzQvCT6ichuT!Z)h)w@-SqPxnHT%x(H^ z6VaDlN>z3RZL3matjQ=8lRZ$YNJ30b=DBRtJ3Pxc-+Xu_E9$RN2O5;18s*AL8)0&p zEsNRtDcsK=i_a=~H>Tef$dp^nlIq5E%V#zd>=Ie+D4*GM)Ebma-k9!BhlA{NxK4QY z-*ss^?yaR=nm$;UiOqt8uG6|rY)mA~0gel#bdLy|Sd2FC;8Or=vGUKPqM@Wf`V7WB z%t2z-s7k(q#R7_E8R=V5IKXLOMUQp*cA%-U71jq86awd7IGsG<+v=VQ|CN0Rh~-bUP_j`t0!3e zZ4dYC8)lL5cFK*`YN1LFJ%V(UoY0@MHgV;kO@Eny4Q8TM3+hZ!88Gf871i!oiKj!u zG-ZRy_mWfV1OmNbRlEx8sdg)<4=VgEQQ^sUE2sw|hb|*W17dT|qjiNPcF5X%5g~6? zk=FWSO-UY6@Yob8CiuwXkCt^hP^YF6ucF8X0@X7X)^dGfE&Hb%yaZpR^e);m`9nRy zlr&K{)6dgCT^~Qa(VlA61sHa@o0d0DWd7_}aTZhR`S_WffA&98BJ=H5wlwk!LA1?v&$Jd)sa=G)or zn8a>+M?x@AkF7nI{T@GhwiCravMf>iX*BzXq&7*E5u z6&)+q5xINn>MM7PP#w70==^wH?jC);YzU9=|GH(O;E8g=pwBi$dy9ycyVb9k)lh&1 zoudN#yWi5WwDF#fO^E*0Fz+%{&&Y|@(eVwcmvL)er&~GfM%0-m6(i<0DJ^u%`cW{p z5Uc-^%85YZZqS#jKVl;h-hI!kLo*S zGuXR9VL%GGkQ5T9d_b*gSL*Qaqsp7$MC5D)&1+y<)Z4>2Yx~HyLT$R{P0tFpG`giuelquj*v z7DB}Jjz-m7|bw6ED^gY8K;O>*L?TD6WfRdym5!^F}`3NFO z0%h>jlZN(`>&&?VN;I84ske_iU(pzy)8|^*4}4kH`uOzTOzTg|f$`%!z(1ZFnt*+8 zCU)<6*gqE`SvW8;>WeK~(7TzImI?3#8E)HT6MlNRi(W0$`g-9f zfT94(EFw5FZzD#r*0%9lOM#cZz>n#D=E&pY-6+Tc@deQVqId`-JlD6P|EX(VOehpr za!;k3{-SRuTS9jd9~;4Vzl-beVs9^~KCG7>$FV z_TR)5h#+(q%QS;5B^W`ndi&0yTqBn}p2a&#!}5JT!tD?-@qXpVpUGtBYTy^vnk2K` z-Q~}gHExOigg-E*S}#^vgl3jN#RGkdf%^PaaFEjn^tI5?k7jdz(7?MA4KwC{>o(;J zrh>Y5qD~xmwev-9Q_fw5`Etvy+l98)mS`6Oe%9};!*Aw`k^3dfJ~-Y&i2ZMT_My({ z(~Y6AC$Ijp;0UQbm8mc6DT??@IqgYpV>9($2yCS0sr*O!BqmrNa0Go2XzPD<)rZ{D z{cruU>K!=XSY_XWg+~Fu))1n^(fX2XFV-mT<;^D&ZQP;$;Qrug;(*MAM+^Fhrc}5k zrgA`GjkUY(o-~{DpW!l}dN_JtiHQ2$6C3-J41cX_V~u2A6!QtWHP2Lca3t zZ$Hgss9(F$?1B%8=0%m;6z`LyqKqYU+!sp>g=iwa7miD`Lk=A3WZdS{>X}xh8`sBf zsEi5Bf?84cer^fK5*&VBj$3EoGJr9a@ia{^qA1|LLV=Jj=Y>Q`9diMaySb6sJGE; z!OKRy!iEL38B@!oyjaKzY!QGkCg65#Sb?p3>p_*f*a{Z#F~5gEsgIGgIKXf+DwZ!# z?LGl9>08BSBk3Td*#16u-%xGA9`35UInKlp3v2HaT!rI@1o?V+-39C>JWuryb%xbq zhYG3po@T3#M0GMr5_=_IyGOm(3jlsCdA+xfp|Q(sEbU5*9ERkdDG*Oxwm>C+i2y03 zMPKnbol=yn#jb|*nOdw0h^#77^>lN}WJ5Xqh)%-)hy@uEaSIBPzj=7fAvYjxhHK8~ zad0@E47OX&`izgdj@47zC^=}mmX;ZMNohht*^+{`8T5H+*;)OyaEmNulc=@C>QNrP z((cbp&aV4l2tP5XCb(HLY47!<5={5>Kw2g%O!ug^L3@S(A$An+w@sVXK)=3;r03y3DHjL zT&1I(KPZgHDg+XCbEj9UUAOO$B8PN~uDOq!EPVFcK@suR>!Mj2Qj?wFIWZ~?4vR`c zoHO`VF-UOU6pf}#O?08iF~>1M9w!XDSTb@?ctdAr!Z#(fc|?7GwhkSpYEyzVO4sAc zj>pv`v0cwB7h4$x!e}*l-Kl?t`rbCQo+I(xZIo{(Z-vn8;nDP>L!vI{3#01hvll&? z8^93l1S7acBfxAgWEPzNhKc=_PtO4x)Zy(#RME@;G>6Gc~^lVySvBhui^xO`F4fw0d+VLLe;ml!xuSG`DcE;VpT^dUAxNL2EFa7OfiXtE0_i);hAd37T_an zjcv!3U!R6e%Z1_{RN>PjK%V*t~=;XK$=i>wP=vQz;cz7s_Sg2x_-wOznn&`c9#`)xWO>v zZzR(!mCD^q%*-#>JqEs6Jv}UTF{CA2pnQWZwopLiLi?+zqVeCAiB`%M2=!Rb@lWBi+47 zAG%vHGl2j25E21^A#f;iAFm7N?x%l)-9-lcqS7q$UH)mgyI{7|t}tq8z5aS$iW`_? zt(W}bgN9^1U;sHQt|8G20K;Dw=X43UKi;WVy|bZ*!(!~f?q8Sz+lqk7;YwHi6j5OA zqdZD|thob+ch}XMLirP~B16KivjI@iH@j}JlfH^kiOO^4`(gNr5V0l~uBSZ{%@t%U zjQ2s1(I!p*#Ir8cjsnKd#;Y*GuO~-@cnAvLW03@Pe#t)xxW!AZAOdr5AUKklvNF55 z8<@SmWCSI>g>*EQvlul-GtUOOh<>l?hR3}eFj3z z&V{X@2N@jgdyf5*0Mh<;b=A@#^6Vl1 ztjgW#OB!VgWf3fLN=<1?dtuXEDx!95Reg}gWOowa6}RjAFo(s z%162Jv+A}C5Sd81IXI5nvsE_}_Y+9ROg$`NaVY~OdYAka1_bWHN6TuFOLM72!-BV# zLIAF8)M+7bF)rsG->X>(+x{mU`~Id=LEEA}Ow5hp#GsRbIU8T}ThV8-WaB9dV@ifL zzIU~b4Xt!3wypWMfy$|`42QJ*&_*Qx(qbDgzD7M4#5Vqrm>Al$ zKMV^(D9A)2wsFH*;VG&nduh{TZbn}d65-Ei2}^Z9VV)uz3w*#3kgF`w6I5XVi;{J) z+ID6UonV1R%CBwC7j8?(bw>L-ZN)Y|U$~>}7rXdE_tXT#z-ea{I0#Rrz2G4HEGmrl zpaCuBv|Q0uu_Z;p3`=s@^qx^BF_* zR_p6s!2L__8ov1qA!+=)B-ily=2q`qGh1)2;e%?Ue+Q6$$+(e>I`9n_K;@$D9xDaZ z#J&Nwce0>%DRTqI8qQh}{N5y8hVZwwl=AXIh}HDirxhqciQZQ9TL`##8@y3VZT^Ra zqnG>hI`VQ1UZ=&FYzSDINBHAHbi>ATnV%#Y=hhcppV&kEy6lQXUB*TKFYWp_8CF9@ zh_}fZWoCvQd$N1Zhiy7Ui4E(}hpot+oZtW7jd0>@fR;|elGGhIuPLfYLGgFVrG5%j zXV`vF$ZRsss2VlAsFq&+Mn;{UO?-ER3w+j9)x1qCxl4Ym66{1`o|m|2n9E#Kwx>BP10N;7HEE!Kg%fa?IO4kr2&65^7(j5rKz5C3Ki(7C?u|T24fXX~&zNq}{VyXv3^` z*8j?Q#ONg%Fp0XBpsLE$Mm;pXa`({up+f8)ZlOIN7#*k_X_@%>f%ZIpV#ZqLe3PGZ zA2-%-1G*9^z*wox@k%X^`}Huy5gHmuP%oJkvwQPq*c(->@Y#ef{#PwPQK^OO9ZJ!- zMgJHv5IRNrN#=&^Zc<$N-?X-Qaw`3#3;fHJY) z(%K$tYD|tewK#n+` zd;UI3A7eP-lL0ON79;!EDZpAKK!dn!J0?K7Y<#wgkDVYs*2mp)w4l*rVDkxD5gk^U z9dA>v`RG6n?meN?Az5g8@u*mpQ-7RLrQCfuF!(GDJI>Q4!E(-J>4Sm6V`(I>OV;8H zBgt*7#Cc0glBdIo-IW?BB^A!OQsMlOFF}RV$Ibo#y7~9xt+ah$&>QX0GG{SE1perR zt5SKpHW(g*+)IG}t@jE4GEj;`9Gl3D+gc?RTF8b&*1r9(Q(tve45`={ap zwIv!*<6WRO)uT+)DSxF0@-{r6W)UzGJ3y_rlI%>0{!iB%Dz$chy5xhb`%|Mh?;3_u zTurdmfR;t4)J3*n6>i%J7Iwmu(P0UF0%Xl_v%GxU7-iO)taZ=kAeDY76wjAR-#gM) zE-RHDl*WAM(i>#$>y7`eh|slTv6IJg@*)~D*Wdp$NF=f+BD<$G^S|95{b2JE-Yztf zSLNneS=P{=E0njL9_JS;tOKBR8K|9SeGQ9vQRdTaH&<^1mGu zSo5soi?QZMj|r^#HeR>Sn&nbCAh=X!+*(A6m^)v2JTs5Ev-xdWqB1NjEtC>>{;jz4 zIef`-=chmXpX1Kc%?#bHFY)qY0(ZVaJCo$jYgtn9SU44je1mql^IIS#^sPPayg9eW z2cVwQ9#-N{e5|s5e@@{+r8^TZP~Z0oL%a|_GUe6@2Qu!YEk+-&KR!7068Lcr2aMwp z^5HH=xgnpv%kI6y0>66iINSC%_|>q1IexX%N|w&A-Z$VX;8$3WSphlixDh}S4l%LU z?o38hoNZ0F-2@TXt7i?XD%{oIHeW8D{MDXRxyJ0C2ew7gj@Z^a-}Y?l;v;ix%kOw# zTdC+Ga)W;@`08GByiP~KRd>fRo`H=#-WV7Y+R21H%V^W9_DiBuCe*Y=Xrv2p%K?&n z-DuK#w!!ER#ojs*xr%jZMU!}Te#)&m(zB>9w_;Hw4agDyNr6DU4sa`OF~_2Q2#b;v z7>>5yyLQyLU1d?{vnD06sEOmmqRvIj|5i~Jbx9cIJ4fcTs9)k?l@f>A(;W!1{L&4U z#&K(9q-2ButIudHMS>e6H;-;^>u7W^%DIyBg^3Og`kcP*?RSi%1)k|I{l zrnA7aXjJ8E==>7Bg6C~{C&BYb%b2I!`7w@vl=BpSoe}q+x|@!{2L=640F33L!-2iY zK7<0IiA7{CdPtA2XoP#Z%P;b(qz&zL2%nvzf#vbp`%gBMuh5A%B1Yp2Iy?W0L|k9V zLg(VdAcE#+fej*Peuk3-0k@H$34*Sb2iLx<#Gta2mlsbTL+(kC+-{1~H<|ERry0Xj za1$7gPMPg`ToQxw+)mgvo%MCYwTIN|iZOgojNuVS4S$a3uDc!b(c!MUczfuoncEsd z2F~Hfo5K1C_kmzCx8Uy{7Z%(*_sK7XHUG#@x38NyLOKTBzN6^8Og{!O${a%rEjc13 zOjus!Uv>{8tmo8H@5Eg&+0cGHvKuo(AUQXhm-@G8uOI$MNCw2}(W&-5TA*{+Jm6~q z>|h=;&C8tfqRTpUI;bLQA-Vl!od!gEcKV#6Sv!5+YvmFX+mz@vY~sb%s}Z2rTfe=; zkLh&NhE}-W3rz-V&lr;YvYM21E?zqWM@d|Y7TPDB5_=miF~M+BHZ9XlRAe4J(T`-8ia{u7?F_rxRg8>1*1ynyCWD5~W4CY#0GaT$S; z53mz*JfxYVPmMYLhjt!!Za9wxe?O5VgYfP9|M0km0%}W&fnr3Mr?z6~>7qg8p(qie-Q|=O$q+6#$dPm532k0c?ZcNpnZqFI4{U8}2@0fsJxz~@YEdWF% z9v~fh4Hq~V;8A*A7{+Th44WiRFAGoox)f-XbNEBa=UJ}gEu3MwTKVran~RvglT##^ zZA|2`zseJ292ES}KR6y2jV6sUjC6>*nnhs$=Rl|0*?(<@(9LIMY&Ac<&faSwt?#Im zyX_cK;ki?5ea{O|7*Mciw3ZBm6_`Sov+DEe2u^;X5K)|*9`8zt5Ea4{1mDdWDyxrM zm8xc=3pX!b`YXcHd*G7(fK8eW)9_+G7mjDYxt*x(KZY~7)VvbS-eXCJ6UNZc1kD+^ zWr5G>yyCbTIllhRA(GZ=$zQ-fvx6n4{620pDqUgS_Ty?Z5}L0`fh}P}Hy;NU^Q_g5 z@N5)AdGqL016hns9P!ubHL)pM#DPbr+#`g)?c*LQYaXypyX2lS0=yrT1FaVGQ7%>Yb{*`rZ$6EtU3NuQi%qm z{DJXbbOdr)Y_=G|OU!X^984G=dsr>TkL0YVzww7PA?Exr^ z)YswGhR?S-VT|%}N|FSQREWH>8YIHGIvQ_VwMR|lW3p|Z$67~;Dg?l7RFy-iV!LX^ z)^<3ae#C34UhqL*({2U94;9`{RCv7I3YrYWV1_EhXth93mZRhdKHI}CvAq#W3F>*d zV=KkGq`5uqSb^*0;E0$aye!cemI8NH>bNt|4nVQh9~@wMMnuA$;4kP^ec0 zE9$|)>A&c9I&fr1C&sj=dqhZ|L%JCZA5NmPN8lt++AJh;vBL{C<1%b&*-Zg2pSUD1 z^=bi24$HKedE2(F_l<>-779^8*4q-7URO%nTjSDe^V*)C9Ek}+3xe$Tc3fdiUWLNJ zgrUFVOGi%4YZqNpT>r6B>TjnsTkda_Nyrkb+O4dW;A#fn6IguFC3T&??1ikHw1vba zMFF_GT2LTI^d3Kck>8vqZM8u^_TEnAK{xgq1?|=NR04xKb#eRC}q1czx=Ia{O&09zpXO#5&$thu%Y(9A zS}hO5S;Y(Vb*3s&p(oxw-G0C@aj)<_JZe4ovVw;%rrph-BreHpId0?$@%P#TpODyQ^JPR=uw@UENavh^Oym-hJndAv#zgl$ z-3uamY|yrg>e%^wZ%q04&=llZ8l9uvNXpU#tmiJelRpcf@UUMu8{&fGD1?wb+}(P; ze>!uLHbPAG>xf*<(Lj_TU*}if^snMQQJYx~shGt6*a{Mj-M~Q_#;gTn&l0sDTsz{CUG&kHKH}D(}W07rL&j5 z`lWxQ2DvZQQ{zM2>@B!0V0PJ&mAjp9$FXa}FHXj;Wz#h6csq_=yFdlnGOgZLn5O9?glWx+`UlQC`u^wY*uIKz7Uc)9J4p84JYj#T#wS_7(UV-CK*?xs)I(I)3;Rp_S&JPqk~)u0MN&Vf zj2xBG0G$fPn+ea$?f#k;OQM7lPji7Cya^Nr2{MQ}7INLwJ+EQ*IE6OW#C*ilahr=) zhygBQ8;!W$W0WO3O`+!@ zBMAQRw*#`nSt{c_nutckHkx&3tCpVbVlJB9R@P!Lx9t)xeG5>+MQWJ^fC^)l-&eZ&8Kd^}lJTe%7m>_B0B)>~e&{Yt)z+JI-RXyR8Fwda z8a)w^J2hL*nNA29x@f195m;QGFR81w>>~rbVDXCy(SRReM3?dhMrSwGa8ok*=Ig7g zxh#2I^b6PW&FV%(;d!K3KFM`$QPj7?Wx>eWBgM&DUw5mh+CB;&FCNbJ>!@#|Y>u{1 za$_b_jr(C6k!^2#^2UOJ@}t2lmaD>TACt}4b)kP&<+kPsVL0TdI479`3h@#xt(SCZ zJM{3_5DR|iX3N->NBBgupJai=KAE`6T$Ly(ZeHM@Fjk#c_%T zVD!~a(pKJ1(~QPWHx8m(Bbe^y#xSH~+&R^{bM^rD#Rdf=yw8LLFE3OBP6ODYm%f={ zIeD@QDHYa2PA}WiRTmL@M>Cl1-1XaGwK9eeOxVO_{We{pG(hGTBk7GA&aD;}sv_zG zLK_CvkYlSR`Z@>-uA`Fc6fVfNfWq4|+;SkYbwTPz)wIIqH6z&IQ-LkMDZkv4DDe;|5PX z1H{{R3~dzo@TUa##7MPg`4m_eN>sVK%v#50yQRbRlAXHbP?-!r_60~*34I@i$A&NSTk?rxN7H6Vp%Po!`7;WDYc#n z)Bc)?olIv^tLd=zyAKM=;9K8STFYX};6V^hoz)H|cxHWc%1Mm+rvP_}+Brrb-o|}N zS&fS&aQ)~!KipN07s(S)u4Kp!dwxjuy0Yz(B5=Lja!qjW!A&~Ioh_|!7iliM?$*<> zxgO#vT>!M13PCL-b(z}eRwa4}W=*FYpQ@a37w;UZLcQGE!|^`A@y?cebPUgGk~f-F z#$B>gK^{e|p$C#5Qk@)OJs41;{^d$B38qyJ3}Qh7Ad1+cx_Ch4r5e_T`B0P{RxG)0 zO^E|@IBKp`y>Og;zugLguKv)>M1}YADin$v426gsAg_OJ#FtOo9ipB=+jF-)Sz)v) z_~Gns-IKE`RJU+nRGGF+mo3ySFsV z1JHufdT+Wtq$cVuJ!rKle0{eDd^-#RltvK(H^PHdh1>c5P_u=B_QQClR^$pKy=a%9 z$K0N+$W4nE#ueYCVvs0D@+{~vpL?S>?ZZGY1s=oK*I})3| z+1T#$REA0@DHdr)2ccBz=FjqPTK|bjLpwDL-kS^70WsOEbSo3x_jYsCJqvu@dqa!q zF@x$xddzCKZj|9DlKjhbr&p}VRKFrN#Er>O$g!Ze8>iO?q)B$`m;M_qQEzD9*ID~- zu!f1XSDSg{`~VUXCK}&R_`bKh)Hl91Zv0;wqu$M&Z>yt!$#46`Y+W>zL!wNB1U=fn zEYbc8*)otdu?5~wO1yu*$ot8O_qXooh&+-@{w{%$R^BBlg3uGd# z_7U!kb%6Bv=yOt3a&M>UsGRN|_y6fkN?GTY(>%Lg z?(TqhAYh4Cg=bX`US&*;rEE}~F-aFVz*@Z(alPAf^}@3%2iJ=00VR3$R>t+_=IVuK z9N~)A3!_@)YgV~DzQvGGIHH{iz8;UnrSkX{rBFzsvk@LM!_{%Am`~Xl(UZITIVtJ1 zzfP+eNNW&`tK3LAS6ERzRPj6*C`A) ztIqS}EUV6AB4gsQdj6hO=kaPRulUOy)&mXgL;68c((xjsQ7>q#nfy1KzOi-?&s;yz=I#kLRpYk0#-?z9upTXYH0zdLrl$66-&4w@3|0ECDPc z>|J)3c2nv%Fv-J>6MPn0jL$8?zJjJx>x{y?>+WL#U!+BJMDD2*1P#|8UE5TR4et-p z0m|~1P90AY3D@vD+!4dA%4nXrZm>aj4*LI?qr{C)#yTTeb~_OsZjZobuTrY^&rPH# z7rxh4w+KW|anFuGu~Y7DKDuehf?D=$kEpz-jpqf%Q|_i8U8{U-M7*%)YwzaNAn`4i zh5pJ&`MhZ<<8ER$nFe`WtvfMQ(-1w!q#A}~YL%`BB+i^H4Tgwd@PR7)^ly28ux@Fv z+kDas&91YozAZe3E6wOQSYHE*xh}{Oxpu=l`zMcYet&dr+LCe&wLvWe@97uYtsv<^7o#L9 zywGk1^?;V3c?Uf>0bJG%UKE9up2S5zl&N%Y?qH?&%$yCn`=xHs6+nKe({7U*=5IQ?#kJ668=6dUTj-4=+FWQf1TU)9;2L2zF-7r(Y@6e)y~I+(SKe3o zz%{lGx8X4d%PGLy(K~r7u90%xtECp6Jhancsh*-RWJ|5LOsR~$GU_L5DlntQcXxj< z$SWs@soVHf?Sl>qm?=+=%1_G=m8o<3RG= zIlQ$6Kloe0izWH8QXgqb|4fs}Mp%3Lx<-P`H3n}tpXDK^&~BdDKbY>8ncW;KoqO`6 zRCGez4x_4acaJRaa06K9=YZ9_!7VOQXhC72Mae>}jx3yPG_%;bOQ%!2d+kJT5Z%+Q zqMOEOUw0uh{){xpgVVTwR=Ou_CJm@hb3XZ?8eTcTCY;d4JA2LOa# zTn@kiXjSgzL3SFQ{MD>iP7?I$qyGfyfxR=bwQYyrD#Q_R>H+~2t>Z_8-l~~1e%zr| zdC6lnyT@3sq%2R##x}zH#gK*M@=#xM7z!)z91fz-Wh;_QX+~V}`B0I@rtvHsM3*Yu zUwB71ySsVHm(f!P(Q;18y0pIXCBA0*$)892zRX5;qbFokfncrC%6^VxXi%N4FPv$A zKM3KBY|{O-q~5H2N22p8_pmw#8OIbsM%-x<$IzqP-#}c3!dzC-on8S?bNzbQ5FbsB zLdQ_n`}(k6TJK|Vvce8=4ClmSZP|at@>xwa2v-0Q!Wod7HzrzMS>*jqiIz`HZ;1w3 zlL8%U^5G&?W+j?jR^%z_cW6*qt!M- z4zX@DLy4X>N>oEudBwgyQ^xjIoA@!I!7_WCptI{}#$K(n<;@-^cqK^5J5CrX zoEr5U991fX?s(xtR5^?X8n}CLMC={V(>3lOeuCV()^xxW!G0_60CRWIws_HBv(mRV z|D(rX8QdEQK}Bt5`hqfFK&!9j_GsvAMev>r)3kCP60KaWXVDQoTBpP9XZ@N0k{v6W z&-YkZOJXrIa4-OGi#^Gc)HFglW46OQ}DS`rJiFkWOrC zgfr|B?f#|cME3>>oJE7)Ro3}V;Ky9Yv+N5!~X95yb7gRi3CWLJ6WSxj{pR9 zwBhbU%0o#cv3Nj=_ppe)BXgX;h5nbW5e8AK({8sK8A;t6U-c0`^+KKCyI^XM|8Upr zz>MAlSnR~@evOt+vQvHZ&w7BoWG}#iZ|OJXlqHkf@sIpMI@V!dYS zS=mtYFgbG!2UwW%w6E$GloWU12tPR-6GW}tMR;4-gZk(wn`E_r3jS(p&y1+6HQfn! zUICy&&x&RR^puouR)PC{WL1)NPLa;UHq!|QY_In}SwGMp=mRz=qMW=M`)|WKzDRzI zGI;m{A1B3&5DS<-DQDl89;_hetbA%pPC0v`PG?sh6%x*pvL!#??7C9Z&60+vFx%{p zILw?V>W;R9y1L5B@2=x;!+PY>%?>NP##m<~9kKzH zaM~CdmNt=awuD-vL#;Mb&bHcAI#teD<`I(44zDZBI;%G0w6jXHk!QFs7`gJ!Cdxlk zLiy>Te1d=Fv|oU(=VR?(yydgZGE4#U5Rk`OAjie|($#oCH*1tf0WEb%F{{j)4$D!6 zu3PabI;HZ-d89nViIL*YEz(|N^l2s^LN%5jb5JDvOUy9<0XLY3a%YLJ$r5zgp<7?v zV%)~##xjzS5mwHOsFublIDQAkHtVa$X#W6U++LH0Mu{U-s*&kBR=oHpLNp zL5hzG(#y(iGEOinlr!C$oriaq&azT>fx1`yb)n(V-ma=rCa+%=Q&k4-_!KT0t*lJ9 zUAR#y+Bs-1pS9NCye^P!=VmKQvWCj@-nnSo%X?wb zQ)C9#w3DL#L^I<#!3__%%bqFbQ$-$Ds4?HAa1nXl<(t<{y2h6e4fX~pZRmQ#QnG;S zq?yyUaut);wsv(_upy{-$;t|?UdjrN`XyXSj#>TLoTVxEQ+Z}>^*0DHSA>s^TH(G2cN3mB7T>6SElS3?G* zXQm1|CeB5=hAKL`9_yO)F1|$%a^DipZXQ_0(wJ0`v>$jMs z>1oi98Zdk~O|!GJn~INP)PNTV+=6Q5%_8qF^zV(N z_*;d%y~0-Kw#N2^dIoitd8nd08K-6rw*B?m##=kCYL}m3RVl1GyW^@uSO9t*pQwu7 zNrDs_I=^|hToL1~c8J3YC zyW0NcYG2u``{1Vo`u9!Yr$abD|R%+Gk9zkPfo5`@LLZ2l+>UZOVQH3OC92 zISbSv_sd!++Eu}Sr<&YxY3-maQM|kmG@v-osglCzLmnR8(RK!k&9nIQiGC~#5AYjt zx*`z|ELDYl0v?2-p2mW43ApPe1p3xqqM4qp`%)r@UU6FpkT@mECHy zu2kkmJA=u;QW}h9-S>j1DJyk%w`GoO4{pp#B5Fi7*F55#X5b&wg>!w~#s1!LZ|)4< zsd%-L@r$}C%laF9S}}c8!Wz4;WwB1yrbgYTMYwIsnDp9}=C57pCcRWv&wH<=xy{xN z23@G6ktEg+qM@H}45Op30x9^ExnYUVh zg@~NvQV|Y}fxNtuU50)!*U{mO z?1JJRR7C`PiK-@$Kn?dxFN9ZxxL9H-qOU{jBtDUC+Xf$KskZfC0{%3zev03~FxHn) z4t=q^VOwmRSPkeG7PW^mlbvjgR-dvg=~Eu)`joqmVpaF`pVr^nLXkD!3B2@cVw?Px zvL#&;t9h{`?`d8l(LLGnD%S28#lrM;yAR+5+h8sXNni*I)miL|vl6C~fK-dJ0OH(( zv}qGt;2*|F^^kuaxrIEZd*_z$Brkzjo5W5m54@b{(F+HA-*oVbDAeQFti;D*| zR&iO73mGbnk4w4nFO}&6i;R2o%DURn;W*zy;h2-D#@ZY+9g$cM^$W-=Cq;Szai@Xo z>2(RGxeYne)ZQxYhOGI_^XwM$+Sp0dy^P#qYOmUo~ z=+AZf_3*%fSdOCEWNss4uo56klif-}6SrcLW8;D)%`z`v*2kG5o#t_=#f>sS_@RvY zJ;$Nf{IE;kvkFS7XbN!Y$x!8u81jkuYc<7U>X z8FMo00jHU3hc2VwiUCNH@4X=vU5Dur7C3u1Jdp0;HimXdw~b?+r^%Z_pwyc7XuVZv z_7&a;6&^34f>H9Dn5m6vp+BXGUNmd=o!y_v_wX&=Rk(T6>KcPS;y&KV))3hEWWP3@ z-A2|17FQM961kcgfu|nu(W$EjPb0TPVE-+ae&uG0t}TR& z1TyI5Au!{T7#w3lo`*u-Nf|li86j)uDhX~he3d^Yb$8E0sdqtaX^o%EsSmkU(Zj*o z6Lii1xYf-fg#bKJq*x0wSpXclUpM%c9-WGDFeaJS6hDy^;5w|65zK5;Cwp8FUEC;K z5M5-J8F$yTy5`z|v~6&oBBW5ub9Y^hmfO4bGNP{T{qwM@eKKU#0N;!Us5vdd(9kaV zWVUp^FPGXjD#($6-R!daUPwAAYm~B3W@v-43l{J9nLxG(hb4z_hkKl(!Jp*4x+;4J zU;vlIxZyQb$yZ}M8Zgi*_imxGf~q5gLZ&ub8uj4jaFX7zlc*;(HMe6LM`$}s^>8C! z1Sn$%3$J!9N}R5@O=8-Zp6_H5O@5J3ugY1O=PdGYL03nsY!_OOOu3DIb_{kp=q*Dq zNgZeh{8W3*Ypq_D1~Z; zSyQ4tYdLbGER$_xGN%2+DSL{Y>l2zGPSMW^yx4&9)E}aQ+z=Ekay&L17@4n+_;K28 zSK-65TBAz}+oSF#711TXoG6Gz-e3y;mdR}?`0M|{6#U2$7eE35DrKm|!BJY59`2Rf zy+({ghu-H>7sBKx$LIX|^6fxxzQ?bf3d_@1+ctL<(U>TT5>?ia>%gas7^oC$@($Ju z4rJKhmqT8HTdy|kTu&n9*Q+~Y&4!mthqchWdK>6}uKNE0&6<0#?QzQ$1&TlP`Im~u zA4)SQF|E)`MG8$+A)T;$xT>1yPeJeSyqG0vtDFK-sOnVUC>Z_Qu(%(i#?VKJ)*o;X->e`$DS(d z#ASE+Vf&@3eXzYQrJYQO*6QgFVj_MFlXB}I2GkE3PCX_U__ACP_PlVIJUYuV1yR*@ zG+A|G$5nM+qH2?t8a{?4f>ecsUg0^2>um!;j1=VdKK2xqZNooN}x<& z%!Ii+Z{R@V~Z2^~%sXw`{RUw(0?)g$`y;@l7xl(GGtP7Xu zQ6C-V&XE0ae3Z;kC)k!V!>>mEzZ1+Y8?L;=hzr*iAN6hrO- z7QfI3SK$%z+cUw*9QYFd(bB$doeWfQ$b-oI98cyO(B4Qe-40;LW01nw$ySQ;BvREp z`4>r-ikI=DS#P5W{>)UlEak4!_F~yyUPelDTpb`4oT+VZMohM2jwKNM-`|_Ck0tL7 z`i5~q9!&pO;YTH?zi&4*YY&YeUK7=7lJ22b=)iTAT9*~pno~-xNrkm;D`kX}ZQiD7 z5$MyCPG9}pD($s&x2)DX1 zL2(K-O%mF@5lxKBanigZu2ZCU?Otp~RVpknKR- zR?r1tS><+?Qd)%0O7AG8^eRfnKu`06OXo%=9@2_`I4be*{rKSpJoK4bJQcn3asuql zP{;X}P*ss=RAx<3=XtRZekv!z0q}=eVACxrx1V`oKd`*4Ntl3^eTdt12d|LT&aZ0< zqMEt3!!z)h3TNm%fAUt(;2O*XNn}<_neiY83#t~gXH;YFVN^Im;&0K-U3s05+O<4| zd;0|`x9s}5b^N^RNofATxCNVBf0DcAdiJTC`)Fvb`$Lkai8~dHB>PBT^sn9*Q0L5P znFxx6oi4)7@WuAa%T!runX)fY)?Q69(w2PH!YlslEh3<%;LjA2fT${|4@r(5mhuw= z6H=YF$XyFCYzj}Ew6tMLkAe_ zkJdRH^z$q;ql?(99AaFO6Bt{D_P?%iCOHP;T(NSS3d=PVFZV{GTtp1p;<}{Ckb*RQ~Ge&d1QH*g|gWWYUGfl)Fi1g;l9^S$U^hx2MYV=dSusFv}v^w|eJF z)w3%JW|V1; zdYl|(rbWBKX%58CxO1a*H&&7AxO<9$nkpsb-jOFv9K4QB4?h|f5BS`{3&x&tBUk85 zpI+v@T)s+#@lnPV|=#P)n=lS&4$l980&h3JT$bsaU);z$;E)+a74vnP|3Rc_ARIVp9 zwW-*tfCdJ-g-h%XgN%D<{!p1!yScS1%4+?*=FY{hN1D~|yL$~KATZ_y6uHUFhZoMh z#tTYEZc_Z@brpq3f|djGY^)7_4RElzennYhNHV<>;Gv;%H)3_1WO~PJ31eWkVD+=v zB-6uJ$4RC?Qh~OTOkaky21}@pj<Lt5{!j4Q|`e)rIshrlG zb2E-0c5u$#;CrJ)OYx(wyYU!Dv6?xbA%J9%V>NT7fUPW<_Co#tG4T=mdGe6C*q%b4l)55{VbgykP& z6X3{Q54WrIA3UPJ>ktcqMk>4W0L+^nV6rHY4jGdm|BN3RaG@YNIBez7048TS+jZg7 z3;`Jg;bMc{QsA+bCquh~(pu8|MnBk6+D9m83*L*(nhx@=Kf~&BrC3GA-BGuNtJL9O zomfN5k*)6*Jf~QnPAvMt_L=#;1;2FiPtD3RaU4yAMHh+|btPaO&$Gp5f;YtkO6W^z z+xJgz;)?ZSo=>hs96eIsYofCjME}7YTgblqT{mWSU1K!@O8Oges%#MdJ=Qfm3Q1AA z<(6COwhRHE%F*t7M8Qi2;Odh8kp*Nx1NJkJ|LKCF?`ds-yKg>lc*K@yz#t4KBCp6P zmY8{IYf>OpWnVW>gkYb66fT~a`Abn>Y)?Y9Q5zBZgcMy*QOJnStZhi6Z+JANeTp@B zsH$*p;SDTEWdV#VagDvv>Io z_zZIT6xqm~Hwvd2J^AS+9PHN=Cu}~aSzFX*928|kShk_I${G#Q7h?z^t}P^A4ENHQ z>zNgiM6EAcJAMA#|8##u=Rbw1dT{hnxBorhs6bS}@xc{r+cElHqyOv%r>k?+>SG~J zF#a?j7~^c?|cxML*@QZ2r2x)Dpr0BnII z!iaC1eo@kpSH4Lief!R#q}EEN9F`GJu!PViSK1@owSsU95?~~R@#O;h)W9#SHKm>2 z-M#g08P`ourT;4tdHivtqEBL=uf_wtoPlzypYSy0P9M-$=0o?umumREr`x|l4!l1b z(8MNZaFdkVV@OBkh4}bK-cw2UmLOq|(dd5P?QC>RhD{NRn=9ahzzx^u%EH#}qD}#eh61Id-PseL~ z-G_zgtS7NFz+GWF>##hnkw(HfkkUYlQVe9=TOSTZ0?p;KzJ@s&oy?mG>y^!Cy|&eS zSo~~0Yw{f;ilH8(Bl@{t!^0u~*nY}6%|gUi2|3MnEuVD{HwrL}di@(Ityzc)2QVt_ z%iaRd8hBj4M3!qWBfkBCA%*dF_{oK;Up$xf3Xp`hdbzp7K({!T^}{hR3ki6m4am5a zAGVjv`a|u)5g?~h5^}mCS|gjwnh~?=0Sd+QF?ZE#Py;BZ&GL=|i+s1iai`EgsCxZ5 zu&G{%8e7lXsUIN)6nm*Y~o?X7zfrI2FFgn zt-&3tqB>1re$gO_N$TU?^ZCDgM%?m~qrH@%{bV~(lBQ6pjtq@9{*kSay_0&AI%{Vu z+-rXvq~`sTQ>@stzo%HGe|S|nxN5qJh z_jcfuaX%cF{;-tN%YEs{sclW%)yMUBmQsHurSqJA-_6ycxh`(Ra62%uwIA#pT6iHe z-gUOtkH&p&&($un9$t~MmcpG5s0g7zb9WA{B|-|hhv5gRjnI8R5N-RB2gqVT!0^sO z7&af!QPt!g{WMaHW3$9C>W`P4%(Wrjav57I-R*ESIfU0_7LXv94@;F>lQF-?7CG1D zp6m4xwN}sI|Lit1b|%Jpj{9IJ^=iF#ns?pZc1U2HJ#;jbCY$QX>UMJ%4NEQHl+)LQ zfNt_^Js0)M_edS%4y#TxO#Z;e;W=;qfKs%MF8-q%Vyt&ZlBH(>=(u;6^gTQk{Dv<{s|35wuuJhV**RyVxv%dWRN1 zksXZ_eX9)BWk2HcVhSoY9e?+*awWHVT@ck}UXUv4W&NAFE!WKst133v^uz0pr%hz1D=Rde-zJ)z-OSPv}ec!BJ#sW$_EL!jo+N z?FlSk&>S^!2z^WMYnp66osS2+FF9awK?Z!MA8;-Od6OSfe0XQVt5u|{jDbPK3fx`7 zAZKm*Vt=`10=dkx(n>}g7 zp&m3TcSl=7^Dpd?O=vD1<#bveV!6aQBX>>6ld^>OKN;}DB#?j1f zRqWpen^q57^@v?akqHWo44bF7Xo{4Q3c@9d!+DPdO1W#aI90u*+=pnnHUCeqmb1wu zvuB`b*G~(ohZ9YI*L8i=Wf;GXHGUx+VInhFL8E@_EthS3)URLKZB~lg;0rv`Dg^SZ zLj%-tOXB^ABJa2Q_X4s8X0VM#?B*8#rPIMFrB`wXC4fsNJ04vI7DIs4l zH7>IRegR4)6+s1VNxW|^@_x2|pU>Va-Sr+~%s|YbLZ%$2 z1A;oi)oH-sR}I_9xyld|vdx}uo_clZZ!mJ}S+;HYVO)^_)Sm7Yb+`MsS*i?*ZiFCt zuh^{w1UizE{38Kaz9v@?wT{LO8U8=!-UCj`>g@Yx_IMAobhfaFjUp%(Y|$85tZ6Q$ zJc-f8@}xX(FeaMj5;alEf?~y`saO`VU;}%j3o5RPVg(EK#eyB|jraSz&bepqnVntM znCJig`Fz-!x$o1@b*_G0=Q@%w2COQhL8+Uf2Dc<_F8!tgE_l^O*A^~dR%k|YO~(-LKd}U!qVU-#@T~)%DB%LazMzxE$8OHsjuEaDXyoPVImvN3KDVCx*5OI z5d9Xl-2Mzr{w@A^pO#!S3zKIv*K66bOD1m~VGe|+^Ot!S9vjfDcNY$5`4YqE4>O=? ze`$3<%(I!~1wx~x>8UhT;htTrrVuHn7*N>%_o%c!uUW6*n$SQDAma zi@R5zE(y*o+?0k|QFTClR&_))$Ua#BeQr{}NTjUcFEoy==oi5?Fg6?w8 z*fDl7v2#yq9k$eK)`*vp`+^mtqO<+8HM}%zpYl|d)d>60){9icpr+Le9QvzPtip#p zFUH$)Jte!kSt4)rd0WZ)xa2xt(t4RrJJ!pa{$WdT$aJVIHT?HWp|F0rH>`rbn!|wM z9;M8r+y%*U9t4V(yO45vfibU(KH&rHLj%$m=jWuai9Rq8#)Ez(I};XqhMrd7O$Kk< zgym~5f>>OQlHTs6SdDSufP(=rcoUszZe8GfH`&cXBof3YP+{KdH^asLJ|YYX%c5MV zp+>UN>P%UkneoZ%a<@pe>#mj&Uqpw*#a8Hfs4VzYrMPiJc2#lTBKy}J`c`s=j6JRjn3eD4RncFi9&q*j1zOvDKpsPr0-I;X^XpkV`jv^KS zEhz=9*V(^u5lQ?L*+2@x zCQM~KaG6ZxLltt52h{UyYikLdu-ct<5X0RASB>Qk81Gi@PnW^>X&sH6&JotVQCJs; zoak6{qTN>hfE59^RHTEIpm3W>_GyB`1;TBDH?qmO=ozdde zhrHsSy+!U5_{)LBX94YLlAgr4j$Gg2`Rsg3>xBgYMj%zk}``L^@zMw~1pEBg>A-+~_9>x*R6_+rH#HXbVrv`_+Z{q|}_?p5HFZ{k%9 zw8)q_pbbPsVx@Hx%Z+RKWg5o4Yong^NRQR>$!ZwVBr@EP($ zvU@eS+*{ZphGVvYcK+t(f8C)z>VB9O_9_b`@T523>w*Ifo@rLF@Z0HzA=+C&^68ks z#DK#wH(DLE=%=OpDIb?|+s}bjS>7S!;b?@W#Av!jBjMDxK&Ixa)Xhy3z#KJaB-(Pf z=6)hTYb_D!vUv*jWESZSsBwC6i>{?k>+1emhx0}cG@kCS8Cc77W~Ov`d*W>N%`Qm5 z8=cvI7^8{vO&yU$6D(uWr;Lo`YsUeuu-~~n{!`jf>&+ImCbgs1J1uIRC2y2GMAmYI zAB0*QUJ&AJ4;U5hzONCfKpws7qcYsWD#gK1=fa(KUE%}Pf8Jf~lgIYS{Z`?3DZbzmW(KC~*wHIBrp?RCH?K^W z>|I8x0QbP~l>Gy1NDc!?2N`D4clVxYWAqjI+}_&u6fhB@Z~qN&gVm#cg7f0nJJ{8M ztkJBEqf3TB)dH=*LDfn#Z~NO0Ap=;wTB;RDnDRIU<p4QavPg;N=uMgDhj&Dkp_K5H?8mVjW+MtPu$OH$EsKf<_cE{_Lp+3CSOVc_P7 z<(uiNnX^4@5B%HB)cf~%fqM!YnzWVZCxGJ7Y1=nQm=CYqnXItcTO`L7wuS}3o+gTk z><57#Z0H?SRK{H^Ft9rq&@kDZ=ttNcHmQrkh{pS$*%6NLOkYVgLJK zxd3ntG^F_CO}W5aoV-D%;^q3fH(G#&m_83ep$Sj{m-njh>n#ckc1vfurOBGf6 zy4Q-9&$;@twEf)ldI)A!X4j~41TKSOkRcYo1;6)oV@*9=2($T^T>z`4)NnUo_vMKlkyYT_Zkv_EQgeW?$F4MQJrcOEH)&*qeuLIc_;4<6< zV$}pFiJL&8UIsY^+!=%Vk|BfuxF?6F*2}1K?spJ>z|u0PmR5rF?+f}mky9QW8C89c z-5!qs%TKua&S`Q(@l_XE91xZ1J_=Xr`P79gOkV&HkhlGQF0U}Sn73kdyDqdaqY)&D zn=I6R86gn@qL8avDcbe8Yx*b?b$SrhOV2$x@CfcF;gb0iPX_XD@pvelPZ_#q$uicITaEh1E|p>ND%>YQFT|Si zjte>M>BshzXDrv(d+HgdczjLq+{vqGu+%ku)}dsuywG3f#vhG)?_L1&rMe8IsK@o6 z5clLf`Df%)y#oyNa0{lS>Z);l^}oMEBQEWOc0ba>B-E~0 z{U-qKSu?A2(o*Zl4kr=hyTtP;zADlMvHk_uY&DANq3ecEv1e{Cv3uu$f$R?X#)GS+ zLt}*?$3<`X2(pTZSVPLqsbz7gQZn+2~7%W-xX5Ak%#efNc86(d=cP*T=&KbG*NYM^6ohj1;Z-A+7*yX$T@c zI|bBj18XJm2w7=PjbN#>dved3=>J%Nscq+Mjm!JXkke&VuKw?Q5GokS%27SL?Sdav zwkjM$f?!>#F5NV))3Lj2JbBE!0|P)liIA3%Iaq@l!5(BGFysw(m%H_w^>r_tVkSrH z{6bmi6EN2RGJBQYr-C|7v-K8v35tcPdfX%Mk*~B#d2k6@Ea3kIjX(6xmY3F}OBLTh z*0PN5%(RP8_?*jB;FrjmXiGT2&7mS2CtNO7YuK^@7zYZ&d=Ey%&0_3|O1`e2E=?0qGD(^It7eu4rno6+1nnhGje z2~G8mF4HwLk7&BMb$ihiBLvfUGh&e}WS_){W}ql@>?eCw0dXQG<8gb7^vSU$``%QL z&m|tz5mk90r`>7`9qOAtCPrA(^F}%V1Dhc;ImU2fbWPNc)8d1_M)E6Qxdy9b$npT$}Uds#UK5>3B7pNU*(A8~(J z?wIWZqmpZUOm1-N^Txo8&dL^}=Tdj}a8jh2p~~`InMRZ?W^Lolcx5tWwF@}WSM5Pb zj6m>7MbfXg#S~e(y#M2x47&p&^A4#iAa$GwveI9+mrp|e(!sUz0i?4>I8?267N~Ba zA%&Wq-OA9^%?FPhDMD+l3-amyjf1mVujPA%J7>fB%%N9ny(r@y255l=Y0 zTCS#?wbk~d!d;mIVxCfte>sm>!626hR*s{}WD_td59fhF&`ra|lU2D#ahHj6$oNxQ zYz}0QAqb(28X)Uz#@jg&3dk45w@ymATT9kk!>bPFN)WHDfod*eoAVa5W$QHhb2sig zjc}B|4Ot*&A5v|monmWN>efe^uf%ZhEd~$&~wHC?7VWE8tz<37;ytsw}84vT@ca7TS^9)Nb26(vsIRNEPK(>J4V_9##}`)-sjejWOo>-#h9d2KYT(ze!3s_}OKqw}+z zMC}HV{oJbWcpP%w@c3Q}k3$wH3BuYIi(+Q5$t0Erxd}C-8uLy%v9Eb>Y0Fzcxy2;T z6>pbh1Lf5b3nJ~mK0;VeS;!kX56Y6>;Fn{a5LUXjj<+d8iR}AH+V<8aCB};~`J$;! zm8TO7r?$)r;i1H4`2J%Z8pL4&)~)F9by4|bY4DZoIibPF4{DQl9H%q$0di9>PoGnE_;R>|aUq8;gQ18VqeO8xx?WyA` z;knR~xqV;}MgWiUXzXO*T2r!{=ON%fpS^z5HyY1+l3_@Jlhr1!x?Wc;7plT?iaJoJ zyDHS;oI^g=-(Y5|3ODXCZ=L9tuui;e`^Q0`Y|4FRx~G`A%($;_K~*6SI+$1p)!4={ z^{6GrzS5z3NHs9g$xUS+Ah-*}R_Pu$`B3?u0~QS~=m%ZyTsT<D=lI3E$8)a+fik#< zaThmDVSKEXwC7lzA;OhAiurX4c}bv^h-NwRFrOE6h)XleyfMxz#+S(2+v5BvHU$<) zimZO9MRb0$s`SO}sIiC|q$gBXE92?#DaF5rM$6p?PjKqGXJ+s=IQyIDjS1Aq6q+33 zyLUVR8H)qzXfZ+zK!n;gTX|7vj`j?{dl~oo99{p|LW3pr#SEI&tU`ujr$(ipLXK5? z=OsOVR31gd8!9iE269uz_1tcW(gn3tQf4-q(Rk^(2@m=2)JOf@q5}moiu;I$0MrPr zG2lIXtk%J~+j_~Yj!d~1d78dQSLn@2%05V`RjJAYay|}AML$E0Yzak}oqPK^hSA+k zyV7T~U-w){kr&j2x!e{vF%H!ZqSw9rVTz8*%r)E6Af~s zlqPSoc@~4|szu7HqYHJO68Zh^DALeUH57r|xhzxJU(dTn(E!DALe$Zs827<7QAMU- zbckZ;k7kW}5$e7Ou+uxTrC0t~aN@Jp$4>igTpNrcsh7a69l0Uex;I#-$Yz(t2592e zFgLc-@)Za?D^Ese-}4?F3|rVK`87Ci>$Dmuusj#P!RAzopdwY4*G#@)b=sn%15lZ( znVsoT+nZBy$F6gQ0S)LEHe{yh$Bf?GYt^8e!~Bf_xc}O8ud&(^-AG-r`YC_T-L=<^$(Rc=6`tf_ zE*l1Cd2`0l6(iZ(md7Dd456dDkrCMDet1nGEj(kjXkn>a z`d)|mT6K9;xy9f;%X9@gbM+vs=6}@^H-D&GN1iNXo?BgGOgJy{gs=^c(YYJx114Wc zdB&!Tb0MnAhdHQy=HT4x%prcLR_x&$@x;!*HZN;ya>rQ~Z5|l^R@%+;o()vLmBCY~ zv%76I7i+onem45R4YX2T%6fXai(agB;1NRUJoxbZ^=)!CmcnC>c{X~j1N(LwEdEN0J!bGu)9-$;{RxQx5&T7M?Z z-Kw*Dfaeg_!}Ex$aYR*gmz)k6CPT93nQ~kG#~))KK!3 z3a#9vD@)m*gQieC@JnKKL_-iP9%vz0FgHABKBo*bE_0{P^}eC3Pw+pv#n7P18GYS- zhNKHcjD)QZKID$LLhR^N>Q1c93MsTuL`d003svr~bCAp*DcXBJgEp7miSk8<|F!}D zHzK0)aqR3i_>G3gc=8%@la34uSK=5oOy{mkGJ5|kB%qOD8Chonc>uJBY`;h6GU%~w^ zYI;bMtvME)<{b-0B^(P*Gm_ck2T|D`vhA13b+E$yXT1uDx_~yf?p3hLFWi%elm75J zm$zo%=Uu{@Jz#5QUSRC!SMZ@&zcMF9-BAgIv<9zd8I4Te07KJRpb1a3|wtp&lGnw4LzY`oK zwGSmw6j%VQm3vssNMIyxx^7dnNNcMNl;jfc{*9Zg1*)B)T7wg{ZfH-fi(+7*t{cVt z=+lp%PBs2*++!NQSl|(`Q{<^4w5QWZyAncTOGh@^Z`*u>LSvr=qCns>HJ)e9HHH|V z%D4xh%9N^fcdmk4iJ9Yuz&Eu}`$|a+V|SOe7|it}jrr~9MY;vndjjfM$b~AsjRq(~ z88>KTbbBZMQPY$%Uowin6uQrdsN12;d^mC-H&y$u;=1)n9IQV3gin7pw2vij^M27r ze^cm(?YUYsl>H`GLmN4kP*Mf3b_8Se`#mYF8=~ELgvjeb6R;&1V2kvZ@pYj}Bu$77 z>k=XE)avf+sbd;_;VoE@XrScR&gGezcJ%Mhhao$CgCKosK>T=|c4c|-a(5P%yRUe; zyAtK1EdYL6F4x$O5uMt+zBW2L<<=u2c6AqzuCJElutX+3?nyw*AzqS%vAQDNS5=b6 zp{xWJq$Aak&1AiYEWl`xJ4fAx=O5&csF3wgc`xha&G-FH)*6VJL*49>Sf%&cQ|p<+ zTJMH4;TgkX!Uuglt6E*k?P~UMSBnuVxSG8OLiW=zKZA)Fyx?kG&fa^!sN3HFZ42$x zy^Y;-_cm@7-`kkH6bAY38JaKwtQ#hASBkUY(X4KnJ3}&{Kca6vMLKf*(-saQ?v!1# z8)7TmM4O5CqX21sq%n7|uoKo@Bx(!Rs=J6t#=Xc=(cb3nvZp`~-Gl7-e0CE##JmwN zmvJv$*Q)FY2r-^iw1--TRh43P5T9K=(qPy+2su*4UcaaEow@j6R}@wQ?Oq!uG7tws zfs8JNX`XGhggpo#j5a^A@K$+UOWcPX9wb&))K)&`@Og^s=I~s_!@g887wV+%(Z$X-)M`~XTxkhvHL5Z7| zO4aiomhwE%kGGV8r0&4UGb;>r?Uf;5S+*j#VisC9Yj4eUagqsqLTCA{FB6!UPbftN z4#xf~SXl|HAONJ4CL}O~se5W#?iMcrkrBo@a!&i$>eAdVNCqm)&I)rJ;q05o9@h;-P}p_(U61q?(sc& zv4k7@8*22+JV!Xk&So$7l+IH7ab-)>FS|J-<)%LsE?$4@I*cKufA*P*$oNN&K}L}G zrz!CF@#98G5xGBD2vtcuf4OUB2Tk5^mvAm+J+ybVzHW19NiCYX2@En-d#;u4s&f{; z7`UwTs741qB;1L3sp@7wSi7;u1r{|IWR*^aJNx|EvbaKjz1o+g$9e&5a`m&`E<9_+y@C z+#T1B8L6vz;k%ZKg9j+1o`*yoe-iclE)T(9R@pQ2(ie~+ z^o6X@5x;8W75{3j?OwQ0Ktl&U^EJ2NyEz7;Q)Y9N~bF&tk zWyY&PpR$b4%BU6YAW^8rge` zL~YH7SNLnm4iYpe@^-{{5ZY>Aw^_#i3hkgNt77GY;LV4WV02?F`-eN`uM^-Fp8Q0!vN` z);x@b(4j$gC6B(lrcb{?Ov}cJ>|Q@XP1~VcpMNsCWRD=(b7r1WwK#O^rz~uln@G2S zb*1}gBI^n|3*55qr+zwGyI$$u z3Ee;5cK6rDtr^(&yN$VdZCDd$$HVxKt%5n%fNZ3;lh?TVEO#f{ZM393 zGk5+@kZm8@^#|FG3k=+#kAE|?tDvD`Kh3Ks@uG!w+#VH3^HB)_yss*O} z!uLg{nixpiZ}Z~Qgq8g;gT;MoRmOVP&pu<5VAd~p+DFDw3FWiyMp(Jl>8-QanJA4` zeOpgYuKq;DvI+wB@ToJD>z|gflsr6yxE?0}PKNaL;dfdj`mbH#)d>p1> zJrYjyu#ZFDj-@U}|uG@F1WZj(#PmRYyP%kTqRc^3q; z^1rYiUX1d1GHbG>%pHag=#0(uF5NeLXwYe()5Se@HXGeJTnklsNOKQ<#JtgB!@Akl zAdZV^%?7)u#j7Q}vX^walDB|ZX9p6mhEvh>{Lpli%;Hxg^*t@x_++K1dLXJ)S}LCd zva{KUV?%4hCYNR)x-iW&sa|0C9KVD#i^6Q43Jsw#nm#l#{4hZ> zCG#@C_7pdIQ4xM7&Vy3n z$9S#8F}CK~)Hs%En9X$StQ}M1{ z=XcFZc2DH(8o9ceQ%85biu5DDQ0$V`7ZCxJu){dpI7R40#{%MGHKnZs9uvYUKN;6C z9A|?H@J+u_3At;kFnZ3uJv<3lOXCqPPL6O%-Uvrz;fg|8tYFg0ajsW`e8c{PYcy$K zJIeV+*7M`I?4c$)GsQ=Jbh27MWKF0xH+bhzzWX|Vb=N+GVvvc6s1%M^(!{vLH9S%3vB z$y#%1P>5ybnsQ`c3o{x@OVV-d%VGXQ^!HKV?@OfGR07qhA6T18p!#=Q&nAI2lt6Xb z2f{322YdomJ*R{jH_F^JS5w0iU^t}hg(XOjx1oWC-lQE8RnuoxolkChHnV1rE9r;$ z`SpyQ=Ucf+>!DzAvQs6d`4-7eGskjrF<7HYY?{TgS#;DlLL+^#CP#F6hP<5_gCE1&q` zXd|0d?z6K^;-2AA(CIl8q^14X7!|KXfX^Lfd)C>b%NH1-md?%6pyD8xHP%2p?f}*> z3KYsR3d{f=fH2IdjBl)s59=F;+z~=3FFw>JH;xeS}wpsFThPQzgRG6 z{zsC*VYv*;RJt2PYpX_}?=&6rWAG|IRHW8PT&^e6v%7~d)o_)4x=t>OY4_=RrL+V` za>#q9E4@B{m|<<1{$f+0G{b^Pbb@>i4{4*p?*=xv$ef*Bec&kH$<&+_FEE`}g}b>O zWiJe6Z)&@&DF>fn{bTjuyS86N=)xQeb7Hri^Sf2y-eI%a8nf-~nz;1a?J50yT>7o{ zlzxHId2Uy)hrwg)0y;Xo>F2~(?9hAR6+2RQGM!iAE?>)41~v*UWx)sQ)wuN9HcJP; zu;#dQbDO0@+iT;}ujZ95^fHVx=Kq&FHx=%cyb6Uw4}*CmWIf`LFt&vbFsj` zuy&-(i5wx`nR!=V+~RMd9y=3BH>k(_3ETL|XkBwK2PC_m|33H2%V@*0+E3&lXh)L1 zv1{VhQaw}!39b+?mC0j!O z^)lMlwke?*5R|ZCAFwEFT|al8W-hlAW5rC8@Z8mSWD12ccY)9D2k1y!L8(5v zO^V6?@5!J)g#bzh4e{5jHYpVX#Ln1FwUnj(+-j`qna{&-A+? z0n)%Sj|68w#NqdrPV7`!pT^ks8EdSwNnz1hEEK%_lBGMbp?Xf>RzN^9qB4n&W>8q= zTfhEOdyEOJk)(KHb%I$`_*P$I+p4}%nV^ydx0%&&lTMQlB%CJmvN7p;X9VnT>p3}I z3?@giMu_A%4GnIkdJ~?LwQzRdbuS+ZD>`N8y>}hTt!{(NQ_`*cWVBMfHtWBcnHy!> z1^AYUELDOWX#a-2US-Ozt8REMrzVa!bx4*r%&| z?bPa>qwjKV+$AMSFZAlEUMum!CqAPUtx{4=Fo4ydR!xwZb$7RmhR;g5*J4G+%0Eew z!IPUSK){$oQDk`W;YQ;Lf(GMZ)#KL8JPpP~ufdolK@9F_);HE*oNpS8#%QWE80Qz$ zV4O`ZInJK@xZE$u+&{5DSq;X@iUJMB$9i3aQw{vi6BWLdD^*OWoP7}ahPipNLfDH_ zu3dF+N`rAF@V`k7MrJ`$J#dY3rZ~Uw7csg zI}4$W*NQ51)J9i#&8f9JR}1`3bT ztN1=?uOW@P_=%X*$(*=$S9cj1=li*rN`|az!~^ZqQ|^kdiCQ0-7%)nWsSu^?3e@ z*R;VFmvM>skYwTkuT`Tx=dLKCL6hrzQ4N}3YPPAndj^Fh`m~1VejPQ3ngp9()fozT z%^yJA5{&97vS63SOMbtd=*@Eb9+b(P84YV%G3+;D`1GxErMD z2wd38JT1;zKNA=)E0bir9%-fEjcP1e@ZrLOI8#=+t54Bfy1BE@1K00-Nz`o$kGs21 z-p3`p+rjd(+#DswAB*S+dWiJ`*cO zg0f0i%E8&(YmyL_O_Q{_n{f^_mLqpUGYnmS8jwzB+f=kaGIVgh^un>n#Zcq(MIo~H zRtE>Qu3o*g*rUbG-O{s3kk>V!#f3SvC>9d^l4#U+xEpDqv^Q~dUgxR!YA@IAD`>?A z=z4la(?4Szd3oj-;#12nftM66QUm@jo!t)0+uJaDDjw>7TW=0kU)Uo3TMkw7;QE*g zFzOjGIPX08g`GJdrEWbWxK$k5m^j7VmAdQ}G)PSNxJ`zzu%x`w6P@dj95n#P6<)*k=!Pp<+nD}S3Zt#F3GY0_9Lu| z;l8;BugO;{c@?|*$pIEZ<3^>T&za--hm`CBvX)PocPPW^1EdIh6XcWoroGNS&VG#_ zweq}=FN%cDfhU7(s_N?DJ8q6kR@ku%?d5FBlw*|-qc#```t@vH81$R zNu%eIF2$zeLbZH#8^P~)Dypz$@cT^fhUvLSp=vCiPixx8e#7ARDMcDutA;H2Jv|@u zh~nShx}rVt@2lGx{w{=E;o5Nd_z#7@OGTOQ^MR&(>@$Vo??a-VUjVOuRPUM}eD;80 zy`Dq`iG1S9E76c$4@M$eHNQ${CS&05wWVxbS8gbCf*K3-*Ca=u=22RmZxsXow0Gan z0R;XFGi~6UPK_Lr+j8;4r^Hz##tu5wCb+ZK*p(;jBw>1mIch_mz6)qFiQ2+i6jd&XZ(tM+zDne7 z0UPqDk6Wpsn;>c?-p=l%ptbqv3Ja_7a;Ex6Z~PgKL+!aZx+dw;9cJt zmj;sigGVs_?_4P)1H6iUaCzJ2B7UWA@^c+(DM0lPRG`26t2QqblOOZXC?2J!!+dc- ztD_$@s9wfR*DUa#pl*M+#>VKcVUNg`y|;Iv=XhVKVmcu`o4FXC%oH z7SZ&0+r*oM{R7<^2p1s2LBIxq67c~L2kl*-SdjkEehnXG*@x{Xe)y?lohWLr%+Fd< zh_1xm^gPI z+r*kgPW4sDE%#3<++9~%=s*DVVn>)3C&$owXM0Ldp)?L-x$D;g2hqxLVmzJQ)HNOE zgy3h+2?;-W+S^?Sx>^r3zBoFSkyOc&oyo2y%__1p#Rirr`Y-qVDO}h| z=vJro5t|2hyos1#aRB!%#SzH41rkdaXcB{R$$0WZgxRCOpES_$T{)l$yF}ke7Gk&L zD&byS-Jw}j3oS`kcQa70NaE8Ot)JK}S4$42PEYr`P20IfvYK{v_x`I^Ve(V5C9krQ zQg=29c1)fSKZu(WCr96k{t3>(ZUtf}Xn7qfiNU~o98!FaMZmU2ffYZia~A@Ub*4!e z3r1(q+qexPEp|Y8N@M=%hyJM@$TK(D1H)RP9sqjq`e1jW zoJX@C77HNdI09VOeR6<>Fu1jb1XRfg^Li0xx_}lKf-86Zn0AFNIde*y^G(5s!1k89 zNIE-CE?(~K!g38o$}!}3R1OeV%9@?sf-y}Z9kRFbduve};388ar1tE;QtqGi3f_G% zRb4NR$yO0H&k?q|j{+l1rRX8g4NM*R0fB!T1TemM*nx%nTrj$e)$%^X4{s7si3$~`mlpxNBCoGvn3TT0RILzb{7_znJTAjF z)?5Op^HrkGgPR;06~3l|G*M8p%Ym=nCo#_+?yToo(OrHFR82Mw)AM>KKO|J}qJ)KJ zz0L6`#rIB@Jt!?V6seJoYv3maqvrVJazR#bdFkRh33K&uU$5y<&+Dz+r~WlYK)ZXJ zSmUomLk4r+#$Pd}TBT`J&l17I*c!bWtC__lovt#YU0#_ zZD$A)TZtfE;9+ZXckeSDJ7z)R!*mUVe4%7V6;W*We?V@NCYus&p*<@ z%2bv25yUS7aZ~(6k`csr+h$n)0qq5`*WG?)%NrY7|9>7qe5q#GS_JVAnNg7wnhPkF z;a>4CL9BqLB(PTA!4P+A*$gcJPzSiHTPePF3RC(#e zfCo@4etT?)DLxg>d8`ZrA*OiSf|%lqjqCEfZ#UO0JP)Y1Bc}K(58FoYkQT>j@ZUbB zm;+MkZfB3Oc4m?Qi3mYc7c#gwD@b+J8INAY-;C$R3pvZizST^K%`jnrl zwP`j>yiC*BDCQ}A!5x*Ox?kLh_xad9{81!_he=*@LB3%%*)R?R}*FC=bVxcn;Tvob#G zxXH<5!R6R&ja=*->EhPTBCtLC_#*$f)V(%qj9IxrB6{X&SrY^c%SHjYineQr2Fmim z;UB1bBl&{u+2hRlA?w0?l%akx@^NNE;A+SKVARi&FbwwF@xtiVcf&igSQZx*P6Yo& zowE-z8^kN=r@O*1uf8G(=!4OiVTa{_jy)@gl)5R-@^X0|rp5r|%RN_EZdUPfYZB!O zsE1z(B?pJz9)p#ItS_mEX!^rz&GZ9zMvy)VGny5mMa3a@}j9+N*1+f)O1<`6U;Pk=?v`Z3pfW2oFpK z1Mn}^#6~@6nj9u_Ny6pT_rzw&JJkdhK)BNr%y;OgLe><-1;X`sU@D_jHEDU z(LUJVtfh32OeJ8)Q5vLN;s9ftYbA1>jx=oeQ(+iQ4tFdPVT5e`t6b{`#$eu1zbu;W zkyBFAc17FFF$|BgWW6bM111!;Q;k;tP&HgMuwLo`l{H2~U!;tI&CypWeSIjenUjw3^?G&60;{Y=_Of*3W+m=<;sCe=&&pT0jbsJNh7?5Z>uMRl&Kgra)ByUkgW|hE zzoIERcN52?_CJ?*Y|<0oZzvG#L=@@vY~)WH;G+F$yfxKE@YFshF1#>VxTT6ZcGNyM zF25jIzEJE7jZcaT&u^=6(BGXG7oL|aTsV^YkeD{*&ZoSl`}QeVEVUq)Y~Vq6*L;q* zkzKSQ*vN{-;~vMAUFU#G{{pD`yv`QBC$R(8_SSK@Fhu3OS;dswxJ)hyB*F&`^k9WE z?(>D18I=mZuWQx~Oy#|?#ZZ$p_#r`lvmK*pq#Q$;(SUsJ?$s@qmdiQ^5)6K;IX=cv z(1AZgPg)s*-yXzp6?jqR)*moLx@4L? zZC}eHujy<}G-5wK6SI`QR~aJGQ{zBKgHYazqZ!A8bB%Qg;zw%F0(KxH+mUHDj?E)3E_vb2%a3Ig{AQm~`QQf=y zt@p?Qa`w9^{JzV6_i+#GmoRGh_BJdTbCg%k^PpPWA1D$h zj`$XU{51+_H(Yv@-^|E88~VO_zaWi$u|!LeH2RG5<1TlvC02>;x`<^`S4{Kl(8|aA z;b=LO_NCL|`B{nQ0NFLCGzMeJBlZGUj{Slu5~&mOMtolpIJu_fkr*IEoM`ZX6Y?wqiiJ>igQCQnzMkSfk~JdnM9{PBPCsK#)@Y zmAe~sIK0$Il>5HMB6y(@GG8B6k$e48j&i1-2?d0sWrNMXPepI=ABeGOC^fO0NGP>4 zkqsEPUM{g-q(KrO@8w>lBLc=lx^{Ccug_Xm5^2H~>m+2o3YHqYRXC5SO?qKlmxZSu zCC5+i2~R!Zji0iHjEDP=^4h&GJoTtFE!H68o*If(0T`GMM**U#6Q+A(?6<{q5=~te z(^a_lI|>QU{DhnjCn4bbOF;X$7v!0oMJL0It?MWUM;~Kfk6uZYAJC>}4<_|*W!Jkgw4Ux{f8j~z z3QNNw52Q+)BWqm0Ke*NcP<-%-8fX;Muont8DRp0Q5GrwSDgCbW$MO<`XSN=vXg1=L zO5NMc0|*A<38t;)?qZQD0^+^oU&>JXx(#DlWiB7IrHjadBVBrw{%KXzse@s#j+ z1*0qnQ}2Wq_`yxp(Sd2VL1gL&Mtw@%vI827|6mSFm}u}PyigJRva zd;9gcJ<+*PDtj=S&hfAtK$o4l%UIzU-D(9{i4B0^Om2X0ed)exv&=0yzy^`r4X(j% zxeHqAd=op#3EbaF9Azgcwd$NhMNYtkd31Y30%&$%JDa9P&9{BJ%b8^+CoI)W9i5SKg zjyxtbu9p+(*~(o8r$)3d^-j>PRk)ihE1Mnl5GS|7tleVe9xcMkQL~i2G9+;zbku4F z-?CeWi5WwZ`Y(jDC1c2%9NTFnw=ku9l=QL9DVZe|HIknaX*=7T(yC3&DBvE=NC=`{ zr)bXDF_}3{>aTxYb}ydcf? z+~mKK*e^<-M)Os4=6O1$+Xaj5Bw_4s3rsF^cbDLNW=|Hu-73<@mt9bz`HD#iua}<6 zlr{GXn>y*T8IrWLNo2DkfAUO}a>6Y!O?a?K0SFO|KpYwcP%}1m0LVNm*Jid)%Dy(1 zl>oCz&vGD$3*_IDu3Y=A=*mGjb8u}u5lLcxjb!x~b7Tyd4&`L@9Z}U`qsFl|a8SBP znP)Y8fyd`_vVBS|;2NSO`q8DCKV9{w`}|0k#P!CrL?7vr{t!g_mYs+1Y=Cvy$9?fb zcEzv;pZ`f3^##|fV9@y=khj|k2VYoGmKtHwz1^#N_Rcg&1-esLY(~%cyh&UK4Ut$H(9fxQ!s8EH_-u zt^<>c$EC9PiqjbsJx0V!lbu(y`RH7UU1nMg`cJMdy zeFJ%Vbyl99zCSTr5_k7@pAM74!`*L5g8RC4i#g-@kkFAEv?%H!0f=#vm!^C+R2&lT zW*KP6-Mb{k%?2_hP2u({HO=i``!x*1sChri6W05^al|NY8t4MU574n0ogM7Ue4<3_ zMh%T`^JcK0jRi$!>Q{|4YX91DhRimvce6RXJKZlzIAOH3p8eg0IvaU%tMqGq-RppF z+xl^o0;d1@N+Fd+*TqOe;krbn6C2heXt<49nI<1r($PJ%Z>q6L#FWwBEcYxV7*9E% zw_DSJX-Z)d50GfHgIlq$i6TZwZ%$wU0#!sbK@lr*DB`A;1;|+VuoZ~53&C zE{bru(Y5o2lK1{d_ZSyrl)GEUG_Hq(Ds^{>BxULwnzSx&e?7V>tq9XsPOalzV@Y+q zU5S^t?(-xc()7gO(tzcTas=@fq0FikR!sb-0hZ; zT;DXi?U5HF9MqQ`c1?K%23G#EAR z?SMj54;1&OSBHAKl1gZnnsDc^efU>`059aBm=cQTn3r&&*qJh zZKz~d{aJ-d9IzB`)BG>d&QWf9s=BeE+7ee!fYi`!@jZG5m_N+BnbB~h;< zwp%DPi0Jp?aj6mtw-yt1Jj~!-A1$450}w! zc;-k4&|^5_-n#jU6LHh;BOpLx=aVZ(+f8Z!*#(+TUpH0WncAFKc1Djfq*`!A-IS@F z1OFMP`OC=MJ=0Xk@`+nN%}l}NZqi#!G>(m*=T}EkOhS7@A7aD%VY*iDfe(M(#vW8= zLg_$fgMV+q5?celTUA8l6bznVFHe)lZlXe%j;4r_f#$R;ZvI=4+O6E5q#YOzbikD7 zZ*CSp7v0&GV`pt|GbRE1&yBWxwo@|v10N^LZ>PeYpM?wO-V|7%OW#Eov?qhd1MnD| zOV!sXN9D*}L}kX#RfYaZg}b1&h15b(^%llav|p0k}Z6Lk=WQV=^e`HWd2<$r%`+f zy5>Ia<`ulMtuJ@;?jNo1v0)+OmXolki4C4AV&LBO$!}YxGh3SzP$l+2%76*TUBrxHEc+aHfv^vyZnmwd z_Ww)Uuq@)>IF4m6%VpCr2GSa_{^1ncU0y z`+!g^(gR9v<@mny1ZpO>No(DvhJ_%@DVG1v>PE+C^Z!VtE!lx^+V8go4X0h&MiOn_ zq=QBKS)8OhDpzN5(u(P0>M2<6Zd(Tm04K$ZKi%(FKlheaGT@)3$qs~{n7|$CfY1S* zZQ-A&!f(jJWLXUcgmZ&XL0Iq^_Fhzh1c?3&w{fbi*c-msH^m&lVx=e=>EkDHwjgRvGy+?qxP1j^LTe&ZL{9 z1y-<*lm^oZZ(an7fW>N$U(Izo0xD~?T3?*s8GS``uvfvm&A`u!$P}$FY3oKk zw}oKaMC`I~!OMELPFlIfqv?Me7K-j?z4mj}jm$Nxia}Fmx)>SWi609Ns1#&D-QuMb zZBrlLvD12UlU8uDg#o)9!liDw z`_Q)WRxO0n5A8_GvPQ8p{b4I}pG?nsZ=Vq#zzx1+te^|UIVeR$R3j7ubNAr+!58k1 zHxs^a0dor}%NG=kD~#hs8r@oB5Sn%;dCTcHVH%jo829ly-6;%>(`_|;{&_T zBhL#tcaCt>n5-xPo7@;3$Li%I3E3HnixO|gjZCMJO$igIAKeuT(3MJN=|;-pGgI#G z$~v&YL<&f&P8GQl%A>s)dPOgg7>}e4mVvo!3V~ZsF#~Oaw0k~t_EyBABJztiiHW)UkuAY%--s8c2Z8XCB_t$XswC&zkK8#^~3}L|2430DwD= z5Pk3M9vmp%_5p%SuTui$cHMPTGPtY;6#J0!FLye;UMkBfiRtcKQeWgN0-0>Eqsijk z5BCZNBMCK?KEh)pkIt|IY^&c&!0YjwDf3gZ_xazp2>N5LyJ^=OTB@J_2=evF>@_0U zl6cPPyEeu?C+FU@<6E?o74mhV()NqR^RB~FYQsEWi1fyzR&#E$pKjfDuv`93=pJQp z_-)TeMu*u?d?mu;5&EnS9$OV`i#RLp=J@niXx0S!$ewQE4s`6pAtZ?PB)871JOGbM zNsfDj+_uH9J*yFlU~l8DWGsQ{I0MJfq=W&_@g8rt_W)=WC$=o|ey#|h1T|sMfT5G; zO@$k;o)UZvyw8VJ7(_uRgi;BBaiKxw?(_>Vz`|3#q5DaArVA2IyFhTqu`ym1Hum>? z^A=r5>8Ec1H{D%XJ+&vC!FAbc@=H04^mXIqTav7qvjt0o#1%zkDhDwC!a%$moH6LT zV*m)O!E*xG{E=S*fclXWi6~i>{swvD@U!sLKNfg{47Go$V;qMLkl#`k$#DW24)+&qGdz$t%j`s$%hN(db?M*x0MNP zo@Z?u#1M1%4h?RbZSee-4Zf0SaDp{h<=)S0us*NB&uP%mu}$^NmJPm_Xz-K6G{UXj zS9uM7L;@?JJzg=wiGu;b>Mjxb842e z&!j-V0HAdS7JCng$Z_P{QY^h)-4ZTBR@yq9v3~wcZed>RVSisfEMHOwBrX`twsiH| z@`#PGx4X*5I6P1X&VsGjioCJj#87hk{Y1;LUZsY^elNAv?Cow1lb8CV!Y#>ba8cfB zE^pc3EfnxqG;HBctg}PvuV?`JUOwGC!~Ai?H6T8VI#HK!Rho>pqF?xOrlRXpICj=X z(^4bj1IDE)mvAbxdZD?oUMTaF?bd`>%`{ly<|T$D5&_a!%&@}I%W8=l;Hs`7%iXuk zt%D23Z6r-GuQV_!R7UrUyT22(APmK7DBHeQDPL%d88b_~Z?@$ECgbc3V-MwrN5~ns zQF?U{a-$*Oph1c{j?ldkai*A8)MVDNfeka>JOSeU(3Q~3jzC+imu^4pikO8t4}(s07#k3yEGwwM4BVPHY3ko*!1!*P$&>R z!)~Np!!jXPJm%qohoGaAdJmYZXeDtEHVL0RCRW_Fk+SE1@s_5ub}+vRxYtgcne)lr zTod&m;KaT88F>I$!f6Tcu0#IKaKlWG$wQhUFBC~d;{@Fk#4~s&JC0YmTggR!2<5@) za}RgZPC_1;e$ieW6OZrL{VE?HK=CF)sRz@LR58+E*izeZy|EqOFoW7bj=!ND#V^Vg zpS!8zAlxq~ZnqsU&Kak%)1+be9HPt$U2s}J0LA?0ySvvuXO*%coI!;On}>n1KH8Jd z_!zx+Xg>TxBG2Hc1Wp5B1qanfzh=3A$5%D9Re3Zt3%lzM&0kPpcM{e6TMxsbAglUs!u!|-s8%qx8r`>NoaIa5nDg(HU zX3$D+49U62jTkAXUIWm6T&M^b*G7MJdl+a`giOFRO==wcA+rdA4U!6-Cn#~k$@W-) zX8_gJ+u;Ml7zjA(p04;YUx$aAjL*<;f}0`VOz1NBm{|DYqwUc3cm&gsn1gTx)!t^p zu_$>z4>DYK<)PC}wQ%3=?j3F`$d@aN;?&tbaGExY+-cJWhd}a7pB+jlfF)J>cJ4Ln z$}u!sVkXWIf2R`7lV2X)YomF}Naso&{695`!|nELBEo8gPX*axsu<2Kr{n!2U1B{D zb?XU8O>%g2$wtyA+~v!L zA~J4ft%4+q;Su0tj$|mHynug;_3_IOXT=jI7wUO4HMXY)V_`d4As}X!Tx;En%!F_- z$WP?fcNoHj;U2fFI@~YMV0Zcsa`0DpbEF zSv@l>TU$kv4ENQA7MKA2EiZ7bz2EGXC9N;zYD zxv4{$mHsHaFd3lqH+5*)xDExCJ2}oK9A{?$81okb#{0kUSnYp*cLgmt*FP2g3Ff2> zr%r+XDxzn+KunB9(3?ly?O&aN$7{o6)K zD%^R6FWwo4QZHSC2;JQ^y@gy@ z>h7Et?sRLu+dGmVU#taW`?%ZHj+Bfh4k6>7+ zP8YPXos8g|lsk8a#*tCy5wZ+#i_f+8<*sQUX0W3n)&+`1$=^a>arF*0+K-I8_E)A| zKg7-30VW~kCY+ioi8>HMmW~eWP+D@?u^sH6cZI|cr)Sisp8(kwW06Ql3@aj1x%9Wy zGyq&rCaS@u6_fQ{qA>194Pf@mlEJKo1X?(P%uF+dcRea9|FK*gOSzC$ufU1kt~_r6 zlkjjsJM7Cn_sZd#BHN^Y6!nqx#y+HA^H$XC z92|y^_o%j+kKtq^msbOsMYJurH^6gkzjIBLs;aFSLQI2O+^sL|@vUc6l_}4)vlV=P zszHD1qCWZn3es+y8uz;lDdfw!+iDA&##{p{QE`-&VmtlCvwF}=J^{%GV0-Dy;u4Nz zKrtgVXW?j_yq@mKdzgM{dOzEO*$cHel1~E{!&@!V{`U5&+}n}Hl03s(dvj&(jaucf zJ*SEpMjWLV$@gtlv@dzM#@O8VW$qRIqJ4LcDn{AgetsFC3TUG+hcr~euCBqFMoY)fvq^xCOv38T#UF^X1| zbFX4LCD-|VtyypOsm)$0KS0AD<$oTm?~K4^1VGuRnwkv3o6WfdYP!IkcF$bQ6roIN z(b!G53NhC&`cWulsWU$6Bg4orzmakQDszpAChp9&(5$2BUZ4eSQBR8Y2Aq2yY+rP~ zj$lc9gfreXeav`cgi6!i92uo=r5~{FgsAko^sZGl4DLiICjm6q+$FkHvbQkk45Oyc z&$E5{sL_`Q2}qzPe?G|Xf>tu4+=*m(S%mg8hrr?zvnXNj*A#z$dHnu4|DFwkWxvut z%{Xcq)2`--G37C{*gq=Wn-L$y$*Ndi+q79GIuU*CJoPVo?}@OlrI{n66aR)Y)sdQ- z9mOt~cHttlF?{iN13#Tax=QtyM7kM@xlc|>^)|NBbnnB-GQe$nQFKUnW=(~Ye#Cg6 zPlj55p=StXI`a{Hb$7o2D|}x@K&|OpPVp}uN)AHN0U6Hmt>k`54XYnAWHaEEV0n;c zD&4cGCaM~y8F`nd-h#ss0W2FM`za9966K$pW#&OHXn#-Dz_halU&KdOH#a{wW z%Olct>DTGX^`WUWP{>;=uKZSg-2^tXg?U;U5Ef7oOQou6*O9Y>l8BLo`-Qb0VLlnr z_}KqG``DM88-9Clyi7)Rh2g&cR=>}Y``&H_tLG-Rs+6T!e+uGyC-b27PK%T(canOv zEp|a2iAg}%l+n$WyzcB?+^jFZGwzCi)vzY#M5R^fYEW)O0D^dz47V|X@oQs}e++LM z(N-pb?P5oTKJt&L6fh$fH1XI>zdZwKuco@=6i6IO zjnKWed*B|pETt=I{}Ao*Bt36H;NdM&C=R?jBKAvqr(avEK;1tH515QAqv~AnLk>qE@6sZ%z2XXoK#OC7g*mh zc>!#4E|Xe}%CzW|aTB&UTc%GCv{f7RI-$7R5dCH<#J-=%WiEgpebE&0E1l9+3^|fN z8f8FqO5_!6YI40iQsuPQz0z=OeNPA+TNlx@Z8G~sy~ae_92xcco>tIe-I4yw;hhAW zBP@-pR1=&uerJJ@^)GV^?Z!(Z4D+k$KtL`hQ@;lCH8F0^vsG$D43BzI0r59ppe;+U z)LGEtA4{wA7(OuA+sfkq>kFILG$lNnZO|MZ*c@S5Kf)24b#u4lds*(DXYD#UyRoXT`}9t0M0?8sr5cN8;Mv-{AIvhGAp~vF z?KnEo0#*;r-{4Ll=IJ4ynksIpm)bL%wO;=jUO!6jWdL^;H^1b;n=L1i%wq5;HQAl) zQR{h$gKTBqJ0&&V^Bk$8GxO^<>nCgW zmAl5`308uO`T&}qqX|5G36*W7t7(}9T>_ES3DGDXUOLeq3Kc3aW zfl;8mggh%H?kz%py1N-P(S?#EDI6hIvc7N4W<7u~$2E+g0C;o#V5Hr|;Pzsq`qq>i zCv_mBn{F+g?*yq=jB zMY~3w`q=aWc!Jxx5{d~Z!xqH!vUv6B1@88RQ+&Fx%ejY#Cn@w~DZ~PXMM9#hmV=!l zqQJYQyG9j1qm|bJ;2j}e)nC4@(Vzn$1&n%(xT(2wnxnX%txT`Y%7o^=AdF1N#s295 z`7TO-5$)klBBXUC?T%7txIDb%OGxafE)ng1F!PX07LR+MpgHu4_ThV%@8j5i(#WV1 zYnXC24kLqy=N}G^ zv^zZkq}V%2Y@W{FcDkvAMkG=VY>Wnvhz4HDlM&>11fV3#OhFTdNGb;R2y3ts6pP^juQm?e;jH^pb@bI~Ni_T~^teH4GTZ&nOw=^0Akl>5v{AB2g!*U%dKgl2 zn;vEeg*hqjsdSS63XH(h_fiLK0z1Rv!Ye0u=hUw=^J_NSSxw(_*Jy!{{`u1GpPK(N zy*o(<$o(7;viBT+_h(+(2?xdXb3Y*DDL#x{IH{%NAn^ zqd};~c!~HBUmo7glr1#}uV5oq&HdbZ)P9LDbV>K&+?}L5hYPyn)~a-!MVoUGpWwYq z`oS3C@1|9t{`k<7XT+e$n{Cf&I+9mtD8q>r9jmKmaadc_Za^W0IGVqy%Rf#cTU&$- z9*_cCYl$h9I;&;w>yldPRU$12v^~@ODYAk23T+P^cH_WLJ%!M%tGy+vxRZtmFS@cJ zvKeSV-5q3wkqicx+7vQ>G#D9|WqoU@PnE9&X&M`&j&!4cvF?;qXw1XQnIyT@t4bx) z(plDVI)>;S`*O3U&kn)bSkegL&z(8o+DOoEmkORAFVV?WfN|Y%L&7`I0q-cZJn2*X} zoc?N9)MJd_>B)U3J8Ow4+BLnaJ*y;bB1^5cM>h2yx6%rAcmIG}b6slGvpG0@NYlMs z!yty!OTbwNsuD*i+?Hu%v|BQH9wB*m|j{ zvAGZ77(9owyT(V*9Oa|*+HlNddjOzyQACUe&{Wb9u_L2^ zv7>OSK|FDe*i?shpIo!ZGuR4~t((_4IT*uMWqp8-@uu&M~s_N!P z!`!j>D*Pkb>uHJJ)}iiCh|Ux;l)sezySV!_z={aR zI5Xi1{IH|{ir%mY;ny)a+B5lzY?n7fi=*3w3|qdfCA_W9LfcxrYmN@$)ennSQ=kGb zEpJMTib&&!@e=ZHw<~_eW)KK~h8Dae8I!QxKy0QUAn{pyOD}Jt zrRP+LlEsFd?e0HU=y`Sb(k8llLxtYTE3~^7+%LiIjCI%A=oJ-OyNNgDZ}-MMUc>|E&YO_id(woARPQtMhNwIFWm1C{!)c&QO_p?6h?lEpgA7WzbmxVW@f zAq-S;TWu{?38yd2@gueNY4O%_D{)2%rOqzCUWq>29NGcdKIyJ5`eIXkwpA*-7)5|9 zyOD{3y`~=7&SGnpnPE8Ah4gU^;~>u_W{+@Mi?yopg2!ED(T%}o&eSSJinY_YQawYgT=p|=I| z37`Q&>!PoV_gHdj7MgR#V1Z%m(Cwjs=;B_7LxKh#2%)QxDEz{d~+|n8N zXYZHxK@9U>Gnqw9A%w>*n*lpQ4ZXK|@CS=2VjRsqdbtZP_sP9n6u-Q;NX>=u%lq_l zA8P&}S93x9a=Bhg9{PUnrG{mF-e08IdGX68z1)+U`{!!j6~BByFL&bQcXKcAj9)&e zmtt@Z$i2KHe)&+5m$%0+R}^XXw)o}4dbu;r?wxD)*7)TkdRef1x5O`3>Se)HZjN6* zs+arH>>0pCye&7yZyzi6_Qv?_<9fR{b$=dq{94|4$zJT4dqVHM6EZ#{0M9sdDo$x+ z%A+45C{;=Y!m#TNZ3ox$o(OU~{v|5I_R95;&!@co zqO-W}3&<=-V|@{ge2=e0>hY>}^jH>pJUR1DqAxf{iA9_?>OMCPR3)6KU2ec*dw#Jl;c#F51u@?JZKRmq zYyOFkqZ^Nxpm=a(T>ACy88V@HwptluOWoSVIPbwpyNj2ajsFiYfNJ66!zJqDWi=ET zS~7p%5z*$l5`?_C{MuR))o`)O7&a*0Pb;<&KS}x{+?5`aS}5xht@4t^qkUBTQs3Ex z(Ah`dpfk_`ii9692A6)0t|g=Jb)x@@ut0&*dU*TF=n(Ph&+t`cPt27)qu0M%c%qW} z(paM7yvD}c={?YGRfo;;f23^~1BkUe*$vddOR2WqYU!S=C_6AW&uq^**$kFHvY z5(lL*Yhgk5GTfVN*)ObxbJrYGC!u)lk{} zDXZNMWq-uiAB3_J>D6$tXQ%S+F@oVG*7;Jt``jRM*ogq(a&UPn`e_b3S;Ol8r}Y0{ ze1`r7ptS}4|CVRJE_j9noQh_aFo4U&Xy@kN>Hsv!1Hu3fDqMwvH9ml{`xW%~H=Zrg zjF-hTKA0yzDkwEhFOhQRN6*H^vI~>l?K@FabN2uW>K0V%K$b)JD;qFnRIB`-QQ6@| zXqM3t*`d5I85B!6xQn}UkdUn~E!ve%t_h8!ypY?6vmpn&da4(3_C-p6&Y*r-bWlU{ zXq(Z|ByGzqGWwDo*A@BWTJtT(^+U#`O$dv%BVWr-mM4DM(8m%aH<0(9E!XM1{PDd1 zEyr^ZqZ-osP_3rY|63iS3(k#J{(FIi_V52$k!>L9#6Xu3!zzJ=0S0&!`;r zr+a;%aw5(+f(VGS6Dt~+7}v}|d%BBxodrQDBn5&m*c^HV4l6S`Pzx@=_I658aastb z6Rm4{$9P*q$Dz>{a1pKX6FJz7C&v@Fkm*SegidPPI*dZAjwJDbv_WO=nr-8yM8W<0 zv|Eie>JJnhgY^*Ito|0wsS|nYr#pJ2ikN1Sr67Z#Oj+ny!P>%G)uFy*+#gup^gX$iuW^9U{Bhq@abF#ViWeZKubT5vuqw8=jL%n!8|_shVxi7 zCO47$$Q;wInY_sj<5|Cf6y(lLz3iLLWF2ObN_YNI*&TUfKw?LZB{JYBWnV}|<82?> zu_c!#rougP?VHL2`BT}SyE(qWR78HexCd=2cO2CmV5=!PlRpw6#7vH-+YAbr+l@^FmqIVIDX*%yg1YJL68c^dy~`FiAS3lgtDa6jX41 zzeSKBqM|z}xV`{E1W`l~MHF2XaRq$*78hMy<>B)Go~rY$s=oK8`(|8M|MP*|bE~WB zoH}*t)TvXa>MnwRwkhYBrrhP5a(391N$jklDGf02pYt;C>p@dKmA5Gm+}+rE2W>Bs5Y5p$BODd(n|a>t^Z@_y5l zpZKPn6E>xRD<{yDS#;H#@^;lXf~I^jZ&M!nVbh4&jF`;}7CT~o|JO2N&N#u1m*6pK!;gL9lCJV`>;uB3< zt#=tp&+(N0B%~DT>ReE|D0TJTfYM)((iR3d!h2w;fm0?35~2O(%n!_LnTbx9KSH>9 zVp=qb_BfC+xb$~(il%tIG)7X2pEC_IKVnH?lD;er69|iJ^Mhf%Sxy|?xyz&!FGFK@ z+aEhm&)YQ*zT6L(GY`-Kv%g(q!U@F5a(-b+$1@MXClmmyqs4m9WMOlL@f;!W#l#p% zcDXDLM;ANcDU;z3cn%)I^bHqAB32#qBDPRYWU5(rNw{!5J**ZJ-a5OTISlMIKjaxLDTi-tE`s5JcM`w1GZ zYfpm&oPI|*IAUZJrqW0M?No$qA*pDZD}enjpg@S>mWR1TuxKJt&8zuNpon#`c#Gid z6VM9!0ZYsk{s&39j)N}8U+FZ-a8RLhKwniRgdf}GoM}uhSYBbnqIhF2Uc8^Y_(_r% zx3%Ym>5unybo@Q~%sTeID7|<94%k@ zd+@}9`4ojjCfSde+MP3TJe^@aM+FUoe;8rd?>Jf>_@XKv7~&uKo*a=7cyU8qN)&Gu z%0=B`fJ+_O16(p-fd7*`&x%$ev z5r|CjOStV2({z$uoI1Y+HQ94W=XbzarzSJ<${8ZLQH;gD*wL{J{bIW0=*};;=ogl_ z(Uv%_^Q+R6H|8kub@u(&q{P>Al=y;e%r$KqW2E>Rwg82W?vx@_&>77)B|wj~`MA#9 z^gP5C+%GsDvN*8M&+TbHwy=r+QIVK^R$@#nfRh-J6}94;W#zNqQ(5_{=o2R^i;2guC~<39qqD_${2oF68mxp4EB;uKpT7|D3k3Ox{vhN(Wy|jr(QeRY8PDaD^iP(S3} z9y6FRh|jpjEVV6;cM$PCx1DOfQ4PG3CeC%BT!`10DMVIfu5cRdDaBj<5-kEYtT!$` zNxqQwt-r*X8!VMWyt2`y4ZKhg85DkyQk9`qq6m)cbggp6-BXI!ctlqkMAx=P^r;qz zt|y}Fgnics>|3buUuIulDAja|2uO6`|(_En@88g^Fks zj_l0S1k-yz`A#6N=X_Mf^)94pXP%8TBdss<(z+MYDz3_4*`)n?obOjo2~R103%5nJ zl-3Ut?+?G@q*c<|Nb8q4LNJFO-T9>)9ftW+*e^3^EA|`Cd?Mt`&7|;B&zYOZnX2c^ zY2eK1R^ync4;jchdmrg%??B||+wtZ$V*aS-jifEi8$9r5=N@jE>6lD07M##*?ABk^Xzc}svZOYm)4XfS_;f&rO0x)Z~v zt$l*gE~XshqorUN>b`1gKTcG{(WVGRJ*4h&xZ@mOgDc|D@>3-U4;sMumy99%6Jy72 zgbuYIKXN&JsWOT+zx>&Ec`;@Z*`%NgNRp?h==!s zi2s=OM7(PuA`BlF_B@4r41HDSTHlCqQytxTZqTn!DL!zBo1|VlE|b)QhqRoe9+D5R z7(`8zlo>p~xz%~CWjZaM^)Gts+3#+(dT|4;;X8jCKFc{ zVqGb^5b+b8kCUqg%;#c_@O}h0H;4uC6Ckk`1SZ^bfd;9E6z{zC)bCIw3u+0HItHc9 zYz{l(1>(6znhE%HE=@TIBav`DvMiTFk#;Bg$A^kbeSRm-n%XdtA029>O=44y?u1MI zeB6t8GRoz4slSum4nyOY=ytQwvEP2%!{lS`x*(N@^Bg>I%l>%|jL*AReD%fPoca#L zU6{*vptIZ|#q$p%lNR*3VAS6zz4O=_oXDo%K6PutDSC#`U>&nqrN{&UPr>uDma}j8 zwkm_)h^)FLigj3sVi2zeRvt1$4l_0VJ*J=M;fDpB6;JH^EDjvJ{}esi|NVbEb!3TL zmb1I~E=1^Ah{x*z$TwJ-d_wWpnnP&8Jr(8xLiGO| z`TMWj@8*OjetNV03D>XUCo{I*BJ8rBrg^=u<${9Ta8NKV^?gPPu`0x^Dzu z3HUBzX-+Es#gU!6iihq4PY&7FIV^v6$)8F2GcA8kanRpfjE}oM@yO0s6d!HwBlyu% z4K^I&mHocifMK6ON@I;{Br&I31bwZa|vM6{N=R4&Jcq?!Az%mU;le0jo3&19&5pmnV@8k?(}&@_djd$5Q^wYVk=U&Vgx>8E%8#QgFR6g(X(KKTJe9C~`^1p>?K zc=4#yJ12?$sEe)=7*llo*w@qOmy?o*HtZ~Ho>zFXyOruY@} za+$nL6>l{!`%q|C@jpzNcghc|i@!5JoMm5LvqZ{2G>2b4gKuP*w|n7Ky9(dogH!D= zoOi-c*AFVg5P7-mU^#w`P1fSc`eam^ z+p^=N8d6?dZLFD|o{Glm6FZlhKcf@V(etLqC!aStI(fwCL}R)-Hg?47qgMA!?b$v4 zyq&e#+Qf9cYPhSby1Hj%b=UCF@|8Q5uO3-FQmw8WsgA6wb+24K98JdcsnMPBSZ!kG z^sZ>C)|eTaj;96vM0LCdbVJp#czQ<^gS5Tz+PMug6GPLZ^@(_AZQ5oj&8^=%6!%Zp zCpS*lrmFH|G_fNdYwQ{wnNF9RstwN!)sQaD9v`la#4DB7u2rbiP(8GBs#cpA1BTVd z66#tJkJP8eQUAn9U5n4QEIYcVIw}MRB2e4Fe=YO(PgeI#)P^^WPV82)kF8A$(|gv{ zMylY8rmn3H?Wzs0B_}+F$*KBeOANj>!?o&gv~wulQ*FexiRzBA+OXEXabk4ZVmM}I zbPTO+D1u4TD~?$!9kWo$C^#RJY0+?Xy4q#_cC+lBoOG?+y{9_0vk`a2rh{WG-;6q= zpDdTro5H6?)R@^(9~lvjN01v8;R@uqJ_UIiD??bPYY=WD=iu^&vFgqR+PT8Fb97il zda5=emByRv6Se;7shOea2vydHMj)B_n%i?yeRKk4*tp3U-62)9WKy$uh*0^_Ank~% zjk$>-P&*NiNcE$q)TR_e9_gc?qlk>O3MxQ9*4E8Tj*SihDAgNl&@=jTX|5lmW8G+D zs5&(~FtMxJ*d;;)mdaoha@J2x)ro(y^&so&3fdO0mLA$s9oii)kHMI+m_pE|7BAf0 zMs=u2wBf2RwR|O75szW?Q4+wmMGPsCTjlqr63_%fD11D=SgbiwH z+=$Gcc%rrkodj)Fo#6QMof@wNBi1yIH=0@b9)s;te#?aLSah|bls+Ghhw8(%xNbCd zR!3>x(ecUp)O0*FGc_dw-5A|DQJtQdqEeiVcWTCAFt4l2NH$sly$vdSpl3QgkgvaXeP40^`_dV>*s&(?hI}ilY%9RogpMn>6};&s0^WpGtMg4&Mm8 ziieEqGxLLzI2%t#JD{kB!ACdJ`$mU$t*wtw0-I*rbW}V&H3wBEY?iSzJ6+w;Fr(K| z-hGrG>Le+ioEjY;ogSU7HRAp~qtipXw#-a(sJwJ^de^2pW=YErbgh{pOLGGgqoyY| zOx4FXm`NkrQJy4m+0=*4VhBnF$`Z0#kMnE*Rrwd_>SS~@@RZAh8}GUO^r@YgSW;o*j(G=$fvZ= z#Ok2yCth>UTvx&7I))hq)(1j z!K10#WUY!078|Lyr>{0rgVJ{bZ&RNqV)?41P0*Tra?;=g8({>&PCULgUdIryYJYJ?g;C&Whc~X# zkJU-6l4|kBhB4Am?`#!z3nta+>dt5u;*XV6Bc2v}BNEGeqPBNBuuk((url5-g<9f~ zSS+z=oMXJjiM^ybwaB`xa=^G?IRkh!vw@K zT2{@r#EW&wZt=n%8m}9xQ7p=;QDm~l!Xhcc|5dCrRYnBc`n_TzQiUwCvl>=skIZm| z6WFxlwecNL8P<<5T%VCeL#VaHtc}--nbeO3Ol(#Ws=;hKa*y4vRo42M#tJ?*euPH6 z!mlW#mCj&P(+$hH*vzY9$BpionbuXz2=tk^k2m$C1i+G(-!ki3ZRA&5u2yYQrCRl| z0fzD}^!7_(4^P&nnncXDp}%(Wj3`)$$i#FNQ&o9`RvhphJ&i@iL>(Osb&YjSeP}n< z{4nwAGgBx#+K5G1fyg-)LP5@>GrZuAiBaqo6}Y=u#4<2eB0)9@e-gY%7^YQ`6lskW z=7bQ~32X+Y#`IKm2%06r(gjur^d5{HEm@k|JR_nNZ-R#kqXG5qHDeFIPom~FW8M?L z+Ri-mC8!>i0wz)VRSCyb7c#LtlMUm~^BQp&qnjx&3 zz#1sv;o4r1AbqP=iS1RRP19Cb*RoZXJR{8Uik^|4p4I>RYt)tM`RX!@)$ytoNZ5yV z==MX+?l!A^OYEkuxMmE@#yD2?FioKQu=c0jwAc7cWE5a98Xjr8Re)O?L94h15+fIu z04k?fHCOpAGmmnx7~x(uG&u*a@I<`ayviT+L3x)95VXyB&}f2oAG58zK7Pr@&Fi9} zxnLskI<^D{t?9<`aW$ju*f*X>8KKZIn21{YNUd3-R6=whG%~%mUPIXSb3kk1)}u(& zB|K@hsnMZW+z60DU^B*qllWuT#_MWheqdns(7LglsD(b1Rtp@jc$Rl#28d+M0N0=3;Vs9kG!fTMj&|=cHXmp?W^Nj`pEw>s4pb$EqD-V( zUAPczM8{ftxin{OJ*eqp#MtA&4t){ob(bM1hNg7`2!W0p;;hOxs^ZG%(b%v{Rgucux@i8;V;kd)X=6?2DR44!Dd44sciY`sp=kM zL++Rv!7@y#lYTRcIH+1I7e+-_G$Ppwz$&f*cdzR*Gwvz9?fhe9C~(*mebqfd!vq(M zIAg_ZoUmF$$760kR@d@y>%~c&mrrG2YXS2EEm%wpRbe=d+0_JU3Fqg@xd`LX*%%@M ztr3XMz#??ljODr+#iwF!jv(A-b){?8#M~6$W zs_BEU3u0`e$@T=c3aqo2{AxYJb*M$!lVBW%^>i)XIac3+jYD}E zm0cO3D6ocQlS`4-%t|M8g2QjIb=~^4ee1=HmVTVIE__>yXyLM0bHk%MN3p-;)?rYe zR`0Pjt)<0_W7174v^pUdwF(?++m`ErLTwm-G%P1L(m_<0gQ$*jFO^oT5+&h8-4Y;O zg*KJzljG2WVPDDb#-tmVFmCNlvPp~VkV2Sp@pyHwvLKJtCG`FzT=Zh$kHBl)m>yj$ zFS~liq1hl_vE8im(}yEktF(e5jMIeKxIVoLE`n)e-=I9wr4S6bsST*Ku`8N z3z0k6sB{O`cbw!snWPBpFmHKxI2{O%r$)j-c_MV zXb)vx_ZYS4pRz{w+Pb3OFhDZy52i2BlM zsFC4>vAb5{hLNVZ5ds;N<+``N7QxNsE5wl*RmZV5#tKBMrb|WqSk;|1s5p9%+swQR zZDck}p;%C|I~A|NiqdUJ!B_%T4e`!M*SCJ zx5`iwzFD7L17i#e1Y?0u!j3e%XR2g2PL#xtyJmP;YwEMUUOU2-`-vR|?XA`#gC^>p zqtcR?TFkl^4Y9_GR@p|0EyVI5fM5o#T#ao)%8e`{<24OweAMWc#nz17uaof&2RH^g zvvPH_{^XhJ7zY&`8?wy`8`$hkncYfE#AcsNT;Wzbv}T3Z{=w+MY=v!EYCv6Y*sTp) zCk+ef7?SqVwJ%=NXBS?at?IHH+O$&2O^n?U3ar>g45pP`u$QN?Txr@w=RhW3xJGJc z$|vT9Zo2`Y+mKjGY9AR7s|*8Z8~A$?-YmFkzgTT#Zr}b_Y&h*}+qb5k{rB z4*N`87&<22RKtS5uLeER!1B;oN7YhWd|QT(12UCUD5@7W+ID+n>b zI>EZ7mG9CPX;(#M9t<4SJNz27S?PJWa%-da~E!J9KjFSv@Urz*0A=_S| zL)gc0{dw?XQ`aix3`QSDQXAJ=u!pL}MAw;(#XpbsvIf2 zJB?u#zq?kRH2M;g7k-5@l{r9EuWa7ShKcMQvFBSF?w&z`^@44Gi7K-pyfRaQc-d71 zqIKBp(dpF80|;P4z7giNyc)8;X59sY(|?@HoZS7sd>Nd6dl8)wM~$w~u(KF2^T19p zS_;h+WtNzrytjq>W5^}MbJHV!$wYn61U6R1L==^mxdJn$g>0GIeT;C&+-_kQ|BSIe zEg6cWY5z`YuTNsrPQqbZSr@)Df|cQ>t}Yk6VsS_l{35>E7#bZ#&&WbSCRl6Rizk@I zfe{Rq;?_EGArrj2S$-wr4oi+!O-U>Wg#~R!P&00f7+I9NA(LBhRxZmjU0XY3>Ev7w zfm3lZPLXoGetdNTfs0svHPkDDb;ZmMv%#fu(|!`R+d18l%&)NU6oZ%~5EHBvCa}nt zz|kFz`WWOIeQCV-I?VR$LIe($Gg6vGy{TorahXG4Xsq6lt?n?GcnXdfj2!IMo;)+^ z0$JMhj2FvpyAdxc0i)lj1d9DJ5+y6EeY0tsPufczCZJ3-g$a(Ux z^0l5k*w{@wLYlB&10)X7=`mK~G_HX7_g z1%W{QkS^(IyT&nl8}u7n5ty7aYgO4LGJ#np!h+!)YF*n-Y1-G|9+*mP?k-=kVg_Np za4CxS((u~)^W)ht&5+OEihJCZnK#!>G3~BJR5*#SK zOsie+iw!?fH%>qsP-7WvriT0t?(VJ*BbL#`>Iy9;(RR#Bqy*cCE1b!{BmCpIPpTd-4g32w4_P^Ja6D$kh- zb%GfF*x6L*p51b@5u4b) z9)?o{`vx#WCE!C52O}_J_cTx#%dqD#x1(kjXYr02oLI69g)Hyc9K0HY#H zkSNuquVohIXtUTnl&eu2gF4f#QK>#-aplN%j_pxwIUsNqGZUy;XJRGc zf?6vf)i!=ov+Y2%5NvMhW5Apn+nY_a%HnkBuKLU^DW-B0cn74?|G`pVEyURoB)^f9 zRoQ5TGJ*O)Q_=+`Ul3%c&B?2)nsu-xGw%>sZ~)k9X1&e81T0(|wXqS|Xp`-`#^l&c zBido2NAxhJ&6#Wd2zF$%xuWx;9cbZ-N=z(^sLibH<*Ye)(nkRtV~+vFFyAmoLBy<( zW8q`sc#hTMIjQcJiCpM&Yd+Hvxj8Szn>HOIjTJP}LKfS`3E8(r#Leb`rE9xZE$v!% zWcQI>OS_kKcP;DcTDJ6v@#&d~+CON-5niiPL%aTA@9LFDtX#hIh@JdzOZU9#n$bY6lnNCR;*XE6twJB*u5!f?oK#SHMMIM_^LIT(kWQ zX|{(Q=&q-U4S~cFYfNqMFC&l?jkgNMDK_*d7IDx-nL;b(my8;1XvX2SocpVRmJ9mH ztOh`$P$NTBd znCl&~$UEKJ*`i*E?G`fv5~1T^C}Ig6SdLTnu#vT{upnu;IaF8{Fjf>odKPfO`6f^Y z{x~spp(^}wO_9Vl#uhh#j~dYkm*Avy!vv({9SUBeu?3!ejB9SoR2U6@EVh^X*KgV& zG$#yS@ix_LWb4TcI+aDL3bpCyHrgdKxW_Hcte7oAR95uZ1!!dbI-~GjsHnEKW}5AL z9CU@I+7EXUBFV(F5l7=ZY9T}0*(PgB8zsznOv3SZM9^|Dz#0uG!09~_d?&6$>`6k8 zns8|BHH+yYHj}s_=_Opepo?JE&Ea6Goi^g;g`{VdoLM)45s$8iw6-p@h{E#xyPRWS0-)hUakVVXi3tRtA3Y}vd)}ZaW0AA$Y3s8N!O$}QD^5s zqj6n?mpH;+YWH{LDhyGy?C6$DhzuoW4e@l0mSsV^wM=6FeK}RHu-vZAjkAfvsw%3TOKh`7Y%6qs@-` zyFcsLy0Cs$292nCc;}euo&wk9d9dhvkY~a z;dx*bJTPJVrK$Q*BT{V`D8n`#iwiY0e_{ol%aa=SzrR$L^+E8RZCJ zPan|NPK9lQ6MlYVr($9^%6&S0wVjBE#I6!X9#2AHGaCIYDLhMVOvu2$jN6zPwW^W6 zqL45ri-`ouKxBqkT<$F61_Tp}#BpFr8uh0dE|@I|ERFl;8kmH`2{@2U6F{QVjFH_ylernuGJK+jWuvTQ-i&iPmi+VY2njMKWFx4jKgmbjV_F!6paG7v#)BEDJu+j2L zZ!4p74+505nQd&FguJZM0B&dFAg(~-ifx#Ezxeq~IMF(-eSiB4{f-+75C8)68iuR1 zmcAD;B+T}Tn5hsuJLuqTz&ScxLnUh$qkDJ=Ql^-kZEe1)js6k1Ipp@pz<6voS0~o_^J+Zwp0|2^Lq@;G8?|VqiEiVgO_t zDNyn5=1pO28;YA9130u_JK4M2S{rB0Mg6UT?v4*T$(TKme8TM;zZ{DM7eSG+-=JDW zRtEhth+r>cOo{l*=>c~khuu=QcE&_)XN>u23V!81!mUv8fl?ea-(`FV{>r+Qabx#r za0P3>ZeSs|*nen~=vuergVD3bo`c$459gId^#GV>?Ee_ekn_AXIT3DyM9nrK1Inap zabON{X}WKYfT_`uQ6m+WDxOc#r}n_^J;wLnkk~XR*rB|e{mq@d(#eV7GX5jEjZ=<2 zfH9)tLk3vo)H;YVBl2)D>$!BeQyZ>(QER?eHt;HG6qj71p?8poDPT6otTM=Bb#mQ3 zVz$dfNG1FNhrUHlWg5Z-1LpoN)i13lqvl?~^_(gzhA`PtH^u>HAzP*Ol3)sg3U@;5 zT`B#0%r%cPKg%7%8=7v~X&x6X4Z$V{LT!9jPC?t_(zq~2HVZXoGUg?LSq8VU5&}&& zUWJbq+k-YB1n0qFwi?rUa!wuTcFJ>O&_v>yNHA&~bIcNbD7$+un+{dY#QRT4jR8Wczkz(s~0k&iVK@nqUe{+hkB{CGY9Y+NLr*$ax7!C?KQu3YvJg zy%JGLX*=Lus8gWg-EPbdY{}K8n~pB#8KBKWDzUEyd28nz4V&exr6IWs5OYxjr&r16 z>CkJOxm#?EVz-T|-aC-K zY78b^S8Dbn5TJ+)cCc)MFAy%h=1?-|!9{q}jLQWkm%9lLy4VI_gqNH(p976z({V6V zf)!?4mUxBLwaSJ7VzR~b6NEM99X-kOw0<2f-e|DeFx1}{0?7)jgEj*#pflKx6EVx9 zwR~xMmdys3-9w2@6q(W|Q{EpU30F~Sv$OLl!^iVj*652jls{U%I- zBcc6%kZzy(b?L^<8_QrToY!&LO!N-VB8xL28C2$PCe+s-j^s zo_S}!B5!X9rG+B*XbihmRF6H?PPTeoZ91PeL4@Um(TV77x7M(nYNL7Vyhf|hbyD8( zx^OV#B(w;2ggK$NX+N#DAS{iW>vopnEMR!==KvqBV;3Ld--S)yfL{TDJm@}pQmp!J z$N~(Di=9|JVD-ALX&(b9Y;3v42@o<2W&UW)ykM?vM{TY1Y1_P|6H^t2rxCtK7i51;& z)F}Z;CYYHroMTdGR;kh>fk%MxP2!yrKMm_$%v9WEdZTH>J*N%e+KSHz@Pa*SBgVMl zQ&uOtMM2xmJnh5$9jCVmJNZ*5uANmSro)CWXuWL)MYFR2-zN}bU3Q3#&s?|)D^`~4 z8{zWOV-G4L%^KKVr4`uWxZ)0`Km-DS9A66EVEII(F?!J2`Td$e~gH*>Aqws)i6D(%3biTi1k zZSADQZn6e}eqfaFtR};i_xNjFHsq2kt3@fQth*)PyWOu(E7?10F&r@5rg30sW@5M8 zh@eF7j^i#~J}7Wckj`j0Nnc_8gkg}pjD2{fyAiX2*^8S8@UBT9ke$oJc++;Q_0vai zCj@3i8>Ok$yOp4@6C-I64u$3eKeW|Mz=_@M?~aVUis)py!9h-%(mRJ`7j6JI-f+7m zELRO8dcnA?Z3km6-RXSg8?jV7)?8;vy%-F~?l$La<)(3bdqV0Kqd>nL0WDE-{&;Ep zrfvrCvnjY8j(m4_3Aqqz(KNd6BX$a`Gy6RObd>!`^`{RdU1odSndoYryn1bNdnxK!X(Bo-+09!TjYv#Z^s>472tC)3FDGfthb_?B2({6pg zD_7)-Rj=${#FX6=s9_s>$vf-Zo-^dsHr^UN$$-LiNY+cumk5<&vz?0N-^}EkFpu#A z{FsTomIWv6c4Mg7JzBRvOTf96z;a{wx+zWk3uC4#x$YE<8rp4w&#bG@3|=#^5Vh6( z-7#}Hp8f0r@30G43-e%|`nBxlu?`foaI*0K{W%NzO6{nI9*Nh>f+Kkgo3z(XQ@U@( zZyMm!afVYi_yhqRaz0yU4k$>YHH{TxB!UB4wgVZJVk5}HG^8&pi@_VT8CH^ttm;{-{oSRiL2+8)@{wHin*HxNxXDN#n&bFDO3CD=TP z>8+Yr-N}s@yw((}1854&_j1SwfJM-D6eY&#eubz7@n81qIAQ`$?`l3j508X=mH_SZ zxBiQfsf4!HCSH98xDbyi*F<5JjC$EE%1dt?YyFF|hkXc0;^wUU#zN{gJ=e_}8yn3I zGLC0y@W+~lM3&)Aj`nH;LK*DlPV=Vj?r73D11LUN$E#8>$6V_>PQn;aIh9eg2!fXf z7p*|mTkDypiRd=5co$(dnBX@UEY%TAYB0E=2fa~-#RUv&6Z;Y#VX|hn83#7{0@pBL z1KnIcA)*aS$c*oq2@^epYo75HOkBJxcD_t$FnY|b;J9&TtcEZ5+6XY%Ns)Mi%Qcg~JjeAluQ*~r!;Z_sHf){x}-mqenCM-OC|FKW3S^T+8-h~1t zv0G4^wswlLCE@>B&@8jJZFNU-h%1sCh9(d(60ReR3s=5aBB3UnQw3Y_O$vNl7s}H3 zpI}4C;T2hvn{Vtw0i04F-!WRVT5yr=4Zj$Yt7yU-)7|WiX+H|h@*nX;kujhlA!6HC z$9CqtrLrsQA~ftP$!>u22RWT)_LlIAY>2SiTCcw7)L)GoLdwI;qi_kQlj{BOmTy7^_VvbjSVnOE$t6A%M$$ zUbllAck#F+GVs78z||2>l_4_KgpA}Gs9u`#0Ab#c$W!goS6xKiXvidZ)YjZitwEFv2AgMD|(C@*aIJL!`wvi%LhJV6HJO&!5H4iz_+jSH&Ii2ynu!y3XYRvd&wLuOPJhC;FE^3^u#U1J$d5KS|MGO@vgR;jGvV5;Nr}o3brkAxEOg}T z?wG}xORogFDeD$ZG*t|b&4>qq&kBcvMZPA{F85`j)<%%8UUyN%*rZkC4I+0#r7;y? zlvpii=0A9goVP>zw5=vjOwbyViM@i^QQYGdMk9{eeLQc_49D6&36R)gEK1qL^edP) zGZ!Zxgx?yMRP)S*fDl-a`!nxmZ9&0a7E1!>lVslzOE6puX1<|fjYUg6V5?xn=@i(m z5XP1syYwBwQCywH=flh$)JDf+2XPGJ*xbrxMGc#vqcwOtd~gOl&Ttms18W{xT9c~= zcX|<4t|~=aEyO`S*NrV8v-6|2afXp>2d1>tmbV7BStsjQ$Sth!fXTty)FshidU z@aAs8up5VIy}?H<__esWw39ydCx$Kfw%k3!~ z_Q8cbz-kV8ic8A)oAOO8~bn=#qQXO$Pp)}s);jCeWBBJy!zRit7l zLmaVqYu+LlvENg(wgY5f2lm%hAm9)30+n&9*=wEUJ@y=$Xl&mnu{gAX)7=<0_{<&d z^v4oM0&->MRa~tt1)*K;FbiR@2xmN^LM4QhM>7;f!>@`lwB40ay@ zFo8=pphlHItmo4nCq$;orkZj%Xt)S9wi2w;%+F|2qRVM;NmTS#cK)$HZT@-Zm{NNF4JX%uXl!>$wvyThqZtf;b=Sw{j6UfPp7>e`J&z2nB|_R!|tB-f|d_G>3&l$+p2u>wqlE_+fzSnYr|#)H>d zjM}9RmrtT%C#mV~Z96NnBXha9Jp!{CZ&zY4?=+aoVq2|u62R;iYim{%$zthWE+UqQ z@JVpne<~!xIqRuWunwBSe1orlHf^a zZsy_;w6BEREtd3l6CS3U*`0Fv%{H(oymyK3fqHagu*nzk!*t73oGs_F5TmVi0R0Gh0F z^!BT<{OEN>kQ2s?Ur*W(j9}`A87>P`8vrfHV+COi8JxwOLbM_FW!-s9>1Q(stMaRwj?2ZA#Cj|^x?!Yn5nbCNj0x6(c-eKt zfk?;k?l$fO53xc7^jB@%&&)8%Gnz&cqrSK9v9vBbRQO$-o;1Bnv_XOUmF`h`=1jk3;}ce8K$C%9?-~D>C|D_ z7!YYUm$T>UP(Rj|AI0zf`H&3Gm9XFJjk>|u!!9Ux0c^yG_y`g2suG4zX28P3AXw9w zn;2@|cyGhLfE;7(qm5WhU`d5z-TI+=+bnH-VEHzgot(Nsg!Oqy$RC4Hy!9aaYi1t> z)793Eo9%b50TVProp}P>ObKYUupCtzqgBo;QA*}8ZQ5m^rB@uGp<^sl5jRJMi-ct2 z77NFk46x{ep>6CG#>(1z65uPv1z{>d^h*XlkQ7i;1w-5&z!FP7h{+P8F)Lcsv~KC5zD1*HxrUPE?2z>g+CXJlW~-lg&@={wvmJz z%ECPkW@k2qgW0wwx1iuoF1^b>J)}i*Ifd2AQHx35NR`{|5i0F+!7NhE$sCzZ;*B;s zm|rLqfowgQB$Qp#{S`Svdl!t@YNH1dX!ZU&`d{6?795Fl(ahVBX}QqyhVS- z-a*+FwmpR^+OFD-ps2M?mrDL!IJ4kU ze^-RoeozC#ss^PRH+pHPZGBq`yh83-VTZjC(pM9Qyq;IY-N~b47}Yp^W_-3TI)8C} z?5@BU1hB9xnCGy-4{V1jT#VL8)r%H$wjm)*JtiR28dh@a$@;y51ZxjtH(|AnPe0n4 zbzJL|I0?E8ztVRW9))N~A=`eA`;X+7iTCTO!qhY;>rrb~m`m}-C&ebAn#tIa%h*71 za}%6@=8`fUUK<;0Cg$+{A@L8%!2zz0tZ8K!d$j??VW=p)3vMI?}o+CFE1Mg70F81I-e<30_m{ zc{G8?O{1#yv|!_nCNV(9OdPka*`XoCS77;!7Hz@Kw4JHz*ZaG9-B))KS6 zm?IosZ-q_>8N!=zu-7&k$8jNekW*^|`2_&vD3^_UxwY?#wA6ki0#BY>t-c%Bp$T~+joGK*j-Vw)W|0x z_S;)VizkL`16~4W4f4KN914J)!f7#>e<2JgfJ;{7YEI*OOH_vpvTg4d71lT9PacCl zD*{HK>?tK#{fO%bG4uA~2ONAbizKXF#B&a#jI>BVg?tZF8`e(A1R}HA`>lj#+k03Q z*xflj_RmF;?S@&|I8za5{>X1_FBaqYoCVd72;m}Vv3I2g6TLP^Oy^ccVbh(Pkm!JA zq!=G-l?ZWhx2s&*U-DDeW3RC_`i9@Orb}A1v3$!!>9wIVQ*xPNOS*kGxEM|6rj~tB zrIcp~h3)vi#tY5cC}8SLXkN3I7{lL%tKzXM*HlT{9gYmc)_>?k#h~e9ePL7xeDKPY zHal3Gw`^XoITJgZsd&H4uMk*+Olv@JuY-J?aF0t{?jRo|>|=y|h%m1wpN`#aT6qI! zdV2KMV_DiXi5zr6+x4xN3^R$D^_UE%1Zy%37VZS1g)*Kcbi#g;M)x*xh`R<05L&Sz z%EOL%OP?rhdqBcTpgiVY_m@W=qF-9!@ z4K-{Mcwen?Fv}!vN2rTGL_nWANTfe;dgCZ>sU*l5HymuKHlxV*gk2TDEJM&2S?8QG z{7mDz8us^K7>o&@PKKd|8B_Mzlwbt#g|U>5fra?@^YjZ}l)<5n41 zq6?N_4I#QklySUs2ElMzH44Exvs0Y&4C`;XJHy?X6Zo8(cdD>oZx00P{=&c{&irMV zAQ{`~a#_U8)D*Vk?Z6mlsB28jO1n~mNh51<<2D2BGK>Oyz#amJy0)i_?03ejB_Epr>X+W>F17;0mPKaP48Agg4|`xx zp}A(G-FWtl|4R1))rE;qZcRy`3~Wzx8d#KN7J0_*B7InNqz7KtGB~PCe{PVa#UJ_L zjR~{OC;W-Ez56;uFao62ZT%dpY$#Hfd{Pnz*3EDQ=SAO2v+X75_!!9Xm?nR-0;HqFtv}^?7ZT)B0QoTOdZxgzIG0+nOJko#^b}2 zT)7pBjnr|xlu!a3Gq%ROur>bxYq~VIt##!V)kZSaim^g1$HAQ?9*rO-BlsGuQ@s8{ zV1zr^{ZzX-qKD*+D0^RopV8wDYx>J;*KFDpzhwQkmu~4>*B>9hzWm}X>$G3;thO?u zquo4jHuc;L*J^6^8fHb8=ocj*>-b9>W6&W-top_V<5`9+^GtYxl^ZdNWZ#e%dI)cW zd23eu;JB+@1ss-)y6AKo$5s2(<{}$yoEOfeqk5%^__$$j7K+;BP{?at@=9P!Pkz~K zx_zdtrttlu@yfOV))b6`{TAhuU0=cBgxg|ewm0g;_)iDy?M~`Ojhg@6`z!nY)L+|Y zAsQg~_bzEW!6RH!iQqbyG(d2`C2c48PnvW<^k0R6dA^EiA^p<+jF*4YCHJ*w$2yn z6a7GNgG<^S)Jag@_Iwk2yPOP-)){H;DaqGj`hi41&B zBPkKdJ+2`GNhDFk>V0cpmd-S&HTar(lbH$!G83PLD3z(0$^=PzNm`Q9`8uML4@#n3 zlB#V9axFPLEltq@Cus}#1m5G)c+>f^8j-537@eHPStv9V=S`0PDTbsoN%tljn$A^- zQZji!9(-AuQZ+?|(^8c8rD#IJS(@!_`V`s;f6O&Hr2>3GpQ)UzKPr4KMMOqT&Bc~I zVBb&DC&oO%*J_g0mwdb4XC!!cQ%1f$@j+WNY9#mqO|muet>QBhyrC&$GsX7pRhr{X zu5gLqJ6zKCtde8;v(HvJPm@06N~ZWG+ExCwAet51*0FllZBvP%eFN7iEhSGAL2{`x zn!(sTQOFAab?OUAeVNuEvPO8s*GiD&7otj%b|i%e1TGX~t%A>tnX3@7n^OqaVh3kW)7E_gFS}C5=gKx0#q53RDWrE9GQiQI*n251PfiReAwwIOuLsC~OjpO_8^ZaK;RREYWs zZr3EMEyH>U->vlwxWc81f-IaNol$g{W?JLQrA!N=h@x9H)6ZSz0fLX%O`4^jcvi_qqo8TmTj4QgpoXo--g2IHi`N9M}btib%Sg2?o ztdE^0#1J0y^%3;-rJ8m?Q+<;GeS}}(>m%svOIa_4h+J=(DT?^>+g$Y(g70!ksg+Gf z^ltr;-ByTFJhGhn^n`u>NS_$g1ixOlKVj)f@Y|ZS@SsMKLLp+Ux42r%1V>%1{RCed z)LNeB+sA!If+6|^$4G#lEx|&D;Ip*WV)VApoyM1K0Rg@9d?Qwql`kO)y$cLeww^c( zQ6Ir?xJC^U3~TJmUE@~Pc#Es?1cG6WTT?aK>54Sop*xfWb$&&0k^OTLE$14>ta%87fHTsj;*oQ*MbG7L6 z^oeCimX*pPFVbw87EKh*=+Ep@WMc=OwQxxhwLce8hUnv1ak$_}n_Wd%Q*{=1|AHgMKHVdp! zf(L0*_Rwms@j6#yncxjBX@Fo@Q1_+f{MO9ba!QvVqW zzS$==x6{8hl(efHiG5#E@HU@B@V_+)%JCZ=59!OJl_t#0zTOZT(+ra?V~OB-E@}HG z6nwoSI;B2X>DijqmoBmNzq$%b&(VsGb`_TT6|DLs))_nt+q4oK1v3AjKnQx4re-T^ z*P=k7pydwMr;Jm=&-8T?e6~xf5FBtxC4wGvN{9>55^d14^!bRWc*&c*F%dKlI*ysi zpiJ*mkJhxh6|1)DkDi|?^ErxkYNkn7Q%0s){qgjLGZmsP5nhcCmcoJSU_(_5%tI)Fm5TO z3yxcn8shn!qkMoMQ9~J=-$A8uug^y?P#WhurQwlh2t$aNSURFt9!eyvQPQY|SfQka z;w~_Ez|K_S-l)%xsB50^2OZ(PM01Z%N@B^_&GATy=2BO_OwhMx>R_U|%V#6V1}+gj zyX5eL)96!fCARV1THD85ttBG5-6s)b6CV|w9Q8a?kUit@6iXK{v!ucQH`t_Y^NDtK zM3aZIjpS-ZuM|3D2z^xx^C=3MFj;}&c76w6$d|{4d|7h%`Kj?JqhdC;P1iF6Q5vTj(9dU9v(l>Y?mp$Pm5+-WoI_F<*(3| zz82Lp->hN?0|OFlMl(~TeLO%TrZReUZ|A7Uq<3?a7iVCBwzur8ri_guv*%8 zTBJhDvNkbE8r~_7uX1=(T@UAOM#1QIZBKyrlGBo61H6}HuIh>R$qsL6K*158l!cci zpY5`3KT1L0h)m1)K+X1eSF(J9g0J*RSvaHU?=-^-m$8>^{d=b~dI<(>|6Hp1h3MT{ z30b#5&k7~q(9OD44_UgP)Cm5kOX?^18%?shif{XV&$9g%NdHZvDHF|o4$UAzR&13Q z-#nU3d9g^-hm~J0a(&+n${=*J^g&+}1t$p)+ zBTg8y1Vi-MUe)uo_AfdtTgkVFeG6h-GK zE>CTVB|Wt%3q6X4wcM1WHNy;>XrC#HW;N4kuBMd#s1UupeWs3xHJqiHp^~!3{rQ-s3Rh->mAPRkq&}G{a|3f^C>vlgF(py+m{ra zED=Z#ae2ARl%AWE%3B?^m8UDtHYGP{wwJm_4ZK>xH~J*Dk56f5?|zk(8n$c6ogTq^ z6ui(U5f`6=v$|g;rG_yrxyK`Ti-Pa;NyNpc;5>Q1O0tF*-DRN{>l3pH!7sU_?F6sW zBvF3@^L#t(Zd=C!N+*eGudBCA@D!IcK=9@ORe7Fo|L!uD2|huwcSLV{F=0|9bf!(@ zLh+|s&0}5Jv}Zq^3wk2Got2sG#MC}PI-Af-*0^W!_X)}}7Lpy&qm*otpRrOZbdG9G zd?F%eLptg*oi7990jbIsjL5l2v3^{ikSB`CjXue>HvzopcQ&D_Pn0J3_WSKmu#5=4 zOOvcL^6eQKiL`(TMHEvGMVTN=qMtvXve5*4x@>Po*=+MRyL=zZztJ_XLXZuzwg%rw zWTw;1vM5dFR-$=>L(@-?6$_fJ^L+DY7PJu4Xtoi}I~|&sAS)I$+cMC^mUjPFblc0d zo-ldcb#c17I9*+;VGB{$ zpRTSyU0u367ND+@uC9`S)L zacpnm0bb}zqbRassBD74NZCIeh3EpMe4lGUN=ORPNAhI4R5M-fYD!6OA^J?7OyAT@ z-_~cQm=vO4>CeA$*aH>GI(R&GUVq%UUM*X_vH(VA!s-#V5^TOJ3j#_Yw>XXSg(*n8Iq- zxoY|dk_%Y>5hM$QA$^V^Y%($uWNU3kzOi-4NHC-|?O33O2pddc`V-1kxUEVClB|ws zW;J25trP4TID9p^M=6)AgvmI~N{&&^B`aaFPO~<3XYj&qe6j1??cOq$c^wUKS9P36i8(i^}0F!oKDb$vh*-Mwl$bsgHw~9DWdANyI^h z`SJ@Jc3w~kVKP@M;VXIVD@nFOJPB!5^t~d*iWCziT7c5Sp^N=1g6uyTLg`U#jT&;V z`Y(b00|`Dk&7T{7CsE57NT}2 zCXt90ox~z(M8i6>tnEUS%=O5qc+6Lo1UL^4>PEo`VhzPSvgu@-YgfA3I zdn)JPCCQ!)->?3Gefz#XK^wszX_93u-+tyZ61=Y|Bj28+vVOUp^y262cjl?@w@ql?jG~WlyK%)6EV~FTt>IdLXuLRbN)C`Z8M8mu!_Z zzi*yxdW>sRAHk5U)-xyD#*Y6}%YcdLC3ndn2`X3K|A+4bg7<0?j>i_}`9hYVDEYL+ z@hRm^myRL_JkkLQxvwm>18;RqlHiVL??I%Pg(Z!oJWWZFv`|O{E=KGV)|wHxV57;H z;Wp)fs4SwrD@Y^SzjA2PKEUi61J1L;d>m!CTarY`SCT>`kw7YoKyQ%dY`tOiTN241 z!iPdcVu-n&if8^s6JKLbX8NL79FeEXEoNRZ958Tod*&q$EXvl;nz;2o9}7*zxxp-DC)-`F-} zv?cuCaFyiwLy`G2lpZqy2>t9havgeytbUi{U@yV5HOWi@e7V@?Blsnkw3YqwGndp$ z&U=PtP8DRICvAXZ>nc}SYH)C6m~2=_GX}T@QNA%PaQXgT8xRgx_M|e}*Coa6qN#@RIW-(PIL^p{S%jG1=ttQ`e?hM2Sq^it9EK9ZXm2*@TP&foREa99= z(p+%muG8`$`NIqIiddLiM$AB}2a2v%qRyhanU=}h?fX0R31$%dkS1AVeEYP|NbojZWhIgY_gHs9p9*GuqDm$a2UKFG1I zm)!JB%CrK=5|46#B73{5e?coCNwCc1q?qJM8tFS!>65f1fs*Dpp#Z`bln7!1OOl!V z#3#Qn<69l|eWd7+(Jo0() zSPT2NwH1)e4Spo$tr#UUL3ERuU%JKtv{cwtjU zzIFb@BEvyof(L4nt&wln`;19~v)eQ_%!jO%2o7>`6ydFF`g87YYz$s|0<(t z?6#zY+-wJv+vF!^D1sqt`!ZPDm&Mw?`7~?$vRK9H95&nO-`~;lauVy z;jqY<_&cI^CaUU)rVk|=J`2(3HP=^s?fj9?bf(reM7qjU$XPLk7uS8HH-&MFRQr}@ zWy(O9tZ4y+LyGYA`fP1lCUe8uAlLXTM$B}UR+)*}X20Vm`@C15&|C!Xb4k4ff1^pF zKGQ}T35cSlU$t!z?mC1JW)xWaO>-7nVCwQkzsu28{OBx{fb4|*YZ9A2HRr9bK90wrC zYJitu>l#D(YS4qKnvzENu<9xp2TGtxq5B961 z;QR$~c_BScag|%+{Ox{~6r7!k>!}{+%M{meYn+GdS4qLSR76J=`ji+;Xj!OZq%P|@!2>_wJ0gIT>Uj$ z*IoL=Y)UY?(f)*m<}M30|4kPyCyQEJvbmU?@9F6LhT{9C!&`b#K|V81Xm)m>t_~t* z9iW-jkbs~WtS++|roOKzVqae=U0><$_T*ukGrBQd*>BsI^ekHXV+(id6D=XQMw6@= z!nc3&83|5kk~Ep{oX_TwC80F(au)LPd>VNdDpvSLSGt!V>6C`_ z&hzcpJ|jV*u^B_o2`syNAJ#&jbA<;;6c3zXs@Jfx9 zvJn{H1X<_*Ix~$@dy}?;SOUs#a~-jrAR7avc2*(TnnIK$xs6hbeqpOvsZTVT;E67& zLa?eymJfWZ`-}wN?2-luzRx8spwvjpQkStzFm_4(MCz+sP^q!Pzjvj336f4}Nbfw~ z-tIFJBpRDB$!<|<8??|?S9pLlj`^fyN$I)c_q$}@ewKWJmLtuXN{!s$Gy67=sFT0* znXT0LE1&I^ny~8pJLGQ^ec}%DfK4|*@E0zrpWr>3WW|zizxNplMmn5qM!x-p8)W?i zAJ?4G5|Q|OiPrylho?mFK9@8=B#&`ON{M>VxUXvdn_Rh!OyAWXf3R?-j)*^o6h!HN zkNB!h`wM--&VQ1EPxVR3a&n%MB_HFnvE);HQnF+e-FdxD` z1aEgq{RDrcN!p`nybMJ!AR2f+RUx`eop4R1%351Mj<0JwZ1H-gi^{vk7n2tY_;JBocg|CRyZsyU1tEt}Aet*y;(K(X4Kf5q_NOJv==VikYbc0lhpjG8*KgW(kHk_@Ip<>?z*t> z+g;%@!LV?8mIw=;L)12Fxf2p0#~?9Ff5!+_W7g2wkZ0LKGDwv`Q5&SFn?H!Fkgla zDMZZlaaVtaG4?O|V~b3dN`BvO`Xu`fY6*VRB@Gh1Rg)HKfYiYn_qyU`g5PpUClCy4 z%;slSjlHb#CRbyHU|3_eY`j7Xo#_gf2wv}!wp)JqzX!OMouHXyiQC~bc<6JQ;ft=e z(w7wU2vWV~%P;$$gpPj@2h7NrJy}N!tnjPLu51$G7!AwRM0M z1UG4t&B(VYpE0DN8BSAFCPn|@DC#Fj8U#^!o^J;_MEwMb+h%M=8NQ{__Y(bY9r~Cc z5lXGS8R+9I^x5+%iAWRBM*{9~1XKuy1oSxq*1Gmr2(k}^(!P1Vkt-R(F7%{n*-Bbi zQtC_JVx3)hTe2|5_vf+=1i0mfw6!O@Ru2-q%q5*b@G4CzMyKwb=gXIUKC(CcJVG=5 zm&-gzkldAdXsgUaB65mQmiCU$*8CsV zCypGXTZj~L?ybK5k0^MhPf8XoMEmqdaujw}GLyWM)*i={{&d4reoR{v+jp2N8$Uxq zUtP@VCVZ|eLZT>LUFo^0>PoDx-&L2gX9^KBwZNIqw6IKr-h!CvM zQJN%UY+#;m&+-|wIgo{>Of-*lrDKAuSkRO+&}8YL81;ir@ zO&`%5X*9eQ`Cwjkt}KLoMhpJt)FChn7+xv8P;$XW~hU7$&|c=C9ly|W0+iY8p}RS z+iMb&{Zs5Dy?kb7W3k357P?ZO7-9r(&?Gya`1W0&k>E$Kvvt^vteMY3r(J09{XDIp zeyUB8y(7XeyozaE^T#WELXh^L!r%C!&-Y!0?{aC&<_Vv2jn8+Q!ZoE<&X?B}J|#%A zCH&tGT>nIxZ&libX2PdwSsWL-`t^2IH}6YZsOYYcO8)Za_|Dd{%cZr1+2@cGg7>|} zHo|uQ0dKW$?>#3><=aJ?irJaq#V%=(;1w>ZMDWmaZFMjR2tL~-l?Wc;k_HLBz$KLk zzSkuU61>PIl?Yz!k_HK0;gU)OANPJo7s0=FNhN}R(jdX#xug=of%9C02-aLuiQq{tX^`MvmsBEnt4kUrc&AG$ z5xn0e4H7(1M-aq>;IK;?BslGoN(ARz(jdVzT~dkQoi1sR;C(KsMDTu>G)VBk^U0hN z!C{v)NO0OEl?cwcq(Opbx}*}pJ6+Ns!TVfNiQxS%X^`N7ABfC9;g^D=E@_b9oJ%SZ zJk=!)5`3deDiQp-OBy72ze_3+{2!MzNbu1YIJyXqx}-sZb1tbw@Kl#HNboH#sYLKz zmo!K)`k=!|u+t?C5`4T%DiPf4k_HK$<&sJS-{g`837+SYN(AqBNrT5;Wa+8t6Fo%m zZ7yl>Vg+yTNk9F(E%;k~q9DPCTvCPLW3F_~CK$V<%F7jeuTSFa+J6-b4svom{|hdu z^J)toqEBewrzv=fKCRaO!WV7EujmsiQ*4>E_2lf}HN8Bw@~XC`oYQTuTW$k{~BHgHwOz>?Sxh>6gAFK~7~-lJIliPXwjE zQ;-vvWFyR(3kV4Qiz_)ukkgcuB+PjVB?dyzB@Aysd`7UXY;G8BI zoC=@mvbp)^a+fqn@cy7AVNNm9&JRT9-#_XT93sg1L~s)3go2U;zu-#}PCQ6+-Uc1eQ-|4EaiB;nmITZ!PLOBy72s!J*ne1}UKBzTb~N&SSc_SpzN z`9qdi$ws(a)6gpfKN@5se3{EuBKV&!X^`O34|@cJ*J~PhOYj7jG)VAGK}o`IcG*e< zZ*ob41RoAc5{^FNdWGN%UD6=INlg-V5Pp}-RwDRumo!N5--D8b4|KLbiQrO~G)Sc08vk|=ZO5an2@76Sk0ztpPU*;D0+pZ#W z2MG?kqybtbv^!84!BejGI0>JnX=pn^?<`n0Pou;;2A0j!G4RjVkd6|;x45K1f}hYN z;RoT%UA7XzAGxGKg1>M{C4&Fyk_HJr;F3xNX)~ee1ZgV?6@;Je?I(iX*8v~Pb+&ol z*O5N?ae&Pd(e{|reh@Utj*v8Rootmf`d;W4kubq>CP_)cgPI2IKybt*RS13|C`tH-E?bG<-7cv@@D*yq3QofB zb9QZs;0Ik&h2TR$Ny1N7Qxwz^JlrK!2);s-3{HjL=(3dvUf_}{1Zmz%Ny4;cv4A7^ zC>_3%jqr0c4Wtq5c1ab2ZwN{f{;11VBKS#{R3Z4N^L^(LevYOIP6fMNQib3fG)br> z{85*!MDUX?sY38kYKfY5Dtx4~PD=z=xugogw+1B%f81p&5&W!6st`Q*g2?<6oP>|m zG_;f8Dwk9t_>Q0?;fr0i62YrnQib4?)Djh(gjYE0v_x=&OR5mOASg-r^DbM7;7u;6 zLh$qpeLD%iUDMD`g4esG3c-hhl7#=-S&Ais&v!``f+uK_w3G0OJ{!R|2iXW;?z0iR zImkx%r#>6O7Y5cN;fgadD+DhNvJt+{XCwGmfn7*=r86HZ1m7HFBm7~XjbId5e1s2m zrd);KT|qX&zj4`01fTj*+ojMH1iLj!I8M0avXux{T~dYM?w};$*Sl;bg70%l6@nKA zB?({SvXuya%OzC^9`rFUlY|e~G|1#L6+9)#M)ze%2*b2tFK?BwYN2;}F3|xTMNq3jU){B6zYU3DXEq zxojnZ=eeW`!MlT!gn!|(l?dMJk}A<9mdL-+C&oX)K}`}e2#>pLC4y5fsY38fmsBG7 zUYArM_;F2=`Uzj|vXuzl?2;-3-*Bn#VZ!HV8hV)EH7=<_@cy7A;U|64^%KEoyQB)i ziY5uQgx}<{l?Z;qB~=LS{fwuU@H;dO)DpbhB~=LiGAK#-(VunH5`3CVsu0|wNkT2* zlFL>i_$rrFA$WdJlJIw3wi3YyT~dYMt3K!3N%$O1lU`Bq8kbZdcz;lm@RKfc?IieY zmsBBmswPQ037_k-l?Yz!k}3r62uc$EvCCE>__)hSMup(9nj|<0*Ic#|!I!(F3c(Kr zB?*7pWh-5-;Eg`%CIx@1Pr*s}z$-{v>Cp=Ql}~!Qg8llGl7vt8*$AHQk}3p06_h0W zC6}#4@IIGRA$ZK^y(AFcs%ek}f)}}@3c-hhl7zVhhLQx=UCE|b2>w`;q@9HCa@k4* zA9hLG2_ATrr|wYY!+?t&XiHO|P0EBi8t7Ah*@sIB72s9>Xrt%#ye<{|39hzqU*hz_VD-#MA* zcOq^?+{>+^d2jqm>HO!(v&D%MCnF=5t8CzhJ6i{Mf{~OB%$l1tfVH99u51h_+n)?i zemT&<#~4il2|PYx1D_DsHW)lLVgsKa*nppO(io8SGW8AoxUV$6i66i{oiqk~s*^gv z{hc%hJj_WQ;Neah15O!9y#OEUY@Jsa+z_#WPj$92;Q3DK0B4*u2E4>c9pEROGzR>< zlRCg}J82Afqmw$oo18QT{H2pR!2fj881Roy>HzO?(im{@Ro+Lyt(-IloH3Hd6?}=a zb%0-T(ird?PU--^?W8f_O-54v;9ojh2l$^(8Ux-FNrD%DHMGg#PEHyFKF&!U;GRwz z13uMB9pL^>8Ur5Yqz>?KCyfEuIjIAja?%(uUU6>PQU3Q-TaG%*wld0qEJevfmB8Nw zF5usOh%l|D_jaRCVjWXl6<-=%tAKCv3zH7;S56uSa`~d#xPG}Jx|jfe%dZ?dz~4J*0{FP-k^uZv zzjEjR_jl3+aKuR+;89MR0KU;k>Mi)K&ej25;G_xQnb9Q&_!EA8(E(oXqzT}H&osTR zHo*&xCSw!$EGJC>rz1)5250L4zvQF|;GK~q_(7Li%2yrWqn$JXTxTTp7W{f=>j2;8 zqzT~VktFyB&ej3`+DQ|@M|?I!2)vWgBtpQ$oiqV_OC$+C+1Wb4OPw?U{6!=QUf@@K z9pLs(ngH$_T?m3->1-X~Sx%Y&{(E#e2foR#-8#TW`bF6U@WAMz4EzRX>i{os(gg5< z(NrA#c%OH7fKPMMByeAwV{0aWsp4|Kl*indP%9fV>PJNrQt&QDlMY>O@X&}2yfUx> zkBQj8$2;2ukO$?|5%AZXZ4$`*S=l(*aH3HfILv}4IOS~>%_+cp`qX0r_*5r#fcraX z0(h8{I>5u7Gyz=aqz-U{lO}*~cTxv|w@Y_bxSb%SIwhr(nCrtpu zDS5D4;)`|Ehf`|z3A(NboB+3vR%pS0>u0tOaKuUDz-yzmK=56@WY_@?hZ7r+w`x}g9&`BkDM_e4}+>G__u)#$e>a-a2Q~negmwO#3Zb$BV*$(X=-fvcgc{<)9%mz zf+<0C<$K@Lkkv~t&qTDVC;79P55FMrfqD9}T|L>K#C&hW2M*6&?mGj1$a{l6Fi%#t ztEc%>mg^!u@Uc$Y&mXhA(P_(Pz&uFVuJ-qbD%aWkTH6Z_k5C>k1O9%*2WF1mt`79O z$j8itc7S=-v0WYH&prMk;sb}L91ocRA9G=(&+r?ZcIXWF7fzEq+J^6T+B0XsFMoek z|7m-{JfqmIp5@Og{x;$R^F(61dbU5E`0@`#`V5C>5uY;y{(Zy;=4r!r^<01Q@Wc-W zePEs~Y*&Bh&lx`NqQD2{Nxz|L;s2UpC!S7&nN|;1i;ryiBs;DsU@D7n{(al)OgyOu zGr1Pdv)ew^z9d?U1haH0oI4E9u=nSP6U^5>tH>Ivok{I7|P{X0lilegFYz;A<6=^lPT z2r+mMqs9Et-W&0QKVIO6MupQ(08{N^{m`g%$`7XM#r)8yc*+l^`o;XvsC>14t8`Sp zm>(JyQ2D`B!(JyQ~AME&zK)tzbYE@4^mBIekv@LRQ&-{Rbzf=R8-{$Q&3}mXcSiE2UBEY zerS|e*>)aASUGlv?EnQ)pv;XcS!K2UBiierUh`Vv|S85B{^!Vt#0| zEyS^o`@14*Oa5j<)1Fnfm5V^&txg(ic*4J}>NJ}z@{+5@BOGr~iEG6GT=H7_rq}f0 zJIid#`?#seA%BdQ_lA~KLmN+P);-T$n6g*ZcTE=$RTgz_Hl}Oba3|H&s1#5 zazt{jQbba&UJ-$BTeDg8eh)jy`%n^*<$WTu%Gf9R>HJ$e_-tn?MC3F(c%E&`5y`nq z5lOjvMFhUH+_6%Q*g@X&l8C(ij6OMH>_6(KbF&@1#+eEcS!CBHyf$5qNX}J?NXpeK zBJeFU+l3ryRnN79yp~;dEaxgYmU8uS48E1U9UH2c*YL)ibk)Ll_wK4wP1pJTbe?Pn zPjRL~S6yoddAYnCk({d(k(8@fMBw|5J61?uW^TL*C=ofWPx5YMle!&jTj>6wYMvcj z=uCx(Jl78LihMaDIaetnDOazEz_-#JD@263DQ`GRM5Tu2MTv zu3qhc@4DXY7_RQNgS<#7?bx|bp?-v&B6qiKv1hlngWEY%p=ZbKARiehM_04sPd6g@}yX!6R*3j!4c`ib%@UD(!@B(KlMC3p0AfFH^MW&p6!urEf zTb-4NZ0Zw{M;jY2=M;0~p~mzu+sd_MmHf4;=i9+!Y+H^<&Q*#?%GE0(@EzrjWf7@b zRduo*=B1&bYW&QFJW_b_mzt*3#H3Xse5=XwO_p-Aa;{RdQm$Ujg74S8nr#7 zHotWAc|9i;t?HG=&i7!-?Z~-G?MS(LwFAE6&2}NVw0q97!@OTr_r%%OE$`{qJym<% zhngtxPLw>Onf7738i1*4pJQ(Y@%p&jaL+Xjz*JS++fzZ|{hK^1+g~>(o-Qhy8-S^* zuC&_>;koJDT(!*?n#P1jq%)@BYTg$crmbyT=&x3FlO6oIZOe(2bCnV)S$phpPh)c}zig zBo!X22`%^fXme3*gHLp~JO5ztZGm*U!S~pxGX{JMbzwMn(*UUf*UQXnCC(y@M1J zhv`PV@Lkv;2^l>@+~Nr19RZAw;S<}EF1hzTZ^=xmrJ*9nwj{5QC8yG*N0o**le#TP1AphFDd2xQsRIl) zrc7tNX)UxKU+PKF0S3wOSVZx>nm`&v1N4($?>#{MSYd$rvDA|6ODCOc?fO_~A24`1 zk$1>Ms;;RlRdtOiLL|;o236FoEnat;DCK@go>wg|GRyx7${V|M>@2G5ADj<8HTR5O zIrg;t*uyt9w8z=DU$mAeYpc~|?|++zI@rLs7)@FW#4TA+0J2rd)I(uQ9V;wFG~-U4 zqV>PF*2g-@MWrzgAGJxP(0Aub>3xJU2oJqG*dU0s~gMJ6$)6l!g<#J&5{j!!RyJ~%w%q6(tFl` zl)gF)_>E!-12EW_!p2cH++^;M+n7pi=(DOw?w3oFv4!8eX}R1om&?}C%IZDFL46kE zvZRmCAUTmXN%o~t4=|^8bLToh+9|)Eap7x-5ejQ!s&c5}Fa@hn7Zwbw7(Mc-LPew! zUSmGRRgZdb(5A+Ce5|2_e-|mViio{OMl}e$!e~+vfw(2VvI1nQ)h6{&*iy%Y6g+8A z{VI(S@h7f{Xf4%5;vd(u10PvOk5C89Ljh&07y!g7LMmtsQq zkd{KqJH1CuJu*`_ma7}f)n(&d=2!LjLE#0axT&e^1+T|*Gvk=q&vK@)4n<8(%}ASb z8&lZ0+Kb2(HW;Uc%Gj3jgXH^iNwT{n>2k-pTvk)d>OICmeIDbYV?M%zWH!QOAc<^M zz0TZvm%G;ihL%ncqrJT!MuEXbR=0;L4u;rfjx3OAI7vW>iAyCp{F}4X-AYys!sSpy z3I8r?pj^YDag!yT79Q{qj3z}Ch+&yTr}l(|X|}2?7;R9fn3zVVa-;O#>gATGjp|Q7 zA4<=5^FodK%G@@t&|VC#x;Xf9@&&1OLf&x-s`+oCui}$k&QoFUDBZg z-s$W{leh=`8z+qe4>OWVf?wur9pKV)P&N*Hfss@ae6q83fIoB6IPmw8BzRkkl6VW; z?4)rZu~eIB3=5~_x)k>e+G$bK!Ji3D2X5;P7y~{!Y5@2kXX^m}-AQA>CtI7e0pNAs z&JK`vO5F#tEjN9v>7MZK;s6Dai*qTvFWA(my1&Y9Jf;4h?I{y&qIv(7(gAY2T~R#f zpu*zY{9)4OQ|C9m7+0Z&68`O3X`d8|UZ)zc?P+Yy1s!{zbm7%$_ce2mR9vo_ zkbRTOPEH&Ac_5|gTGf;7;By9HdbTrVvyYOdtm!4DtoBzG5kAKUMIq8Rm@g+dQ)W&h z4coA>HIZiTEiT+6(y6#a8rhXDJGt86djlzt^in(c$U&HPcBVq4b4^*(TUE|fh%^yC z$m>cW(&w8mJ2+EjP9qH)L1-e)-ostEN2F76i8Qjm^k7W>+Tf_G%dUo7)rXAf^Fc1} z4w(McnF^7HDQL=?UNV-Q1SCIWk z29x*Oh%`(=Q`YoWl{00L)&*xG@bdRG&cw3@&S$UOlpjl7 zw+VQpag#Mc&#d6FJEe%E}d{T{bs%J!w17(deOOko;3GX7I5h3X_1qOE17WbdHti3ZsYEIEk;+rmAR zvdu9h*cL7w%90aEuq}){iDYY6Yt(XYX9o$k(qG!?@!wFDhcPQ+Rr~yl8XYry%c_YxpdVRxDGaM zS;^dNuYJWi+~7Sw-E5y}+g6o5rQfbDu!EO4Q=u~EOxds*u5H1{S6gL#0r^6!q&J^Z zpa12?!9vEjst?|~V{%LSGmVCQY+D%5C8lgVYw<@HAA}XJaPWcs99=Pp52qT_CH)-D znTn3W#`kB%Q5<|&KSw_@hz~pcOB2!EZCgy5H`~EeovGkx&eS7mVB|MKq!WSs9*B%9 zK3cl=N|I)*0pZ_Pb;`XvR#k8PTqAP2ZHrC3)eio_nKE!hXL<)17mzX_D%gd?6iA# ztg84Cj+?&FG_^R&bEZOv1zr4Nhh)}8=HNf~bM%L1yN?g@b;U0>4)WU{Ql2;UxY48) zr^*DRWyrqBbcusF_PO2;Hs!akLf+(y6!OxXkkXIg3#n;K{O`-mr)l>sy9TV<7hm3p ze8skf)NWS;FzLgD^W=ZrFL>@1jb73B3WHov$)uB;uY90YxcHhOFDjKzsk#!!#}wBF z1HkAq zBsPFEMjEbu*BZ^1j+H&vH-f%ccq9{UvNl%nUUNyE|B&IEA{zJ>cfA9Ao4Y>w4ufX~ zQq!#NfA2IUJ33nj7$mdGraHc9k~ai5fG92GsXiIfp0b22iaDV2zZc@nj~Ux zWncuptBaAne+rDie>PIPI{j!f@0(V2k{x}gbG@d%Ip{13hVg@~z6*6g-US(7;n9ns zj7i=PzPJf@m(j4Z(R}-|Z6#d5JB-wXi@nyj8)0Dt?q{Tik-cXHM&P)S%HdjWN1x_g zrEuW~+g{<~INM^lILNkVxOTp|Y4zc@mDU5-8>wl1!xsPhcsst@wuM*R^&CED3;Mv% z-lqHM!N!3G`@<0At~NlBBWEg$HzdekM9py=G&Yj8*#q)dNnl`f!HViP19+elU=l@P&WpEm=}k z@?R>gvkx?(Mpt_hjmn1hi`+^l=x@-%CDoGDf^=P~O-QNa;(1c`<-b&V%lfyZEniU4 z|N7b?9ufy2ZI9ysP1t~hM%mI9Zlk@~PTRMnddt2Q3gUQyoG|B}K5Bqokx}$85g9Gi3CI29FD*)F!E!N^20&gc@-f zh(=`tAMaMOmT79H79UFfV4f112ka+5*lSod!R|p)UKr1 z_MV!==@k~?C^aErsY@<3rKve-I%t7-nd%TyDygYCH%ZlWfZ2SOXUHh(rffowA^Zmy9s$O}<#QIon3HoBFc!|wS@KB%^K7YY3xThy zKbuo1D=-av3t;Z`xtH8o4-=y0FfDKsG_HJ(T)f;mbl=d|P58sV^A;?qQZ^kKh&;tb zvpih5AQddt4EaVz$~K_>s@f;>KXanJcxPkU%{|S|soKbtO`SkwcNfj{FIs@gX5KXanJxH6`N z?rE`+DVsWh$RZcb^e zs`^Rhf96E}D|*tE2fU(Lg*(Hx;tFuttD8ej6=&~3MioZj2ab;!Lvc2wzt<;!xuubk zrI8sdJ;W`I0Aow}DYT`Q7MRuQnBFaW)+=L&UtxRabWzW~Vg_ zNbW5T57!>!Ev{)_r;aHNC)vtEG@jysvZdygMqt=3)NpZk^RFUY%@1M|s+U^_Yumst zvR;$*exgSY2#J=nm5WuWRWcu~qk!InOo!?Pvy~YWke-qrz|@J656Pu`;Lv5O`*m5Ve@apQQPe?T!Yv*H`-N1! zBc=={rKMroS_^1fzW5xn-6kg~C;Jr6TcWH7Z{q`R97x2~_#SqcP)DZ@NXphP`XSQe z{UUu$G+@AN#VU|eAVCE(mZUTTOWpR%XsChz zh&JGFoT~#QJ){M|Es-e?BtwR5g4C5KWW{XzQTuzg9a-v+3!?r2U*`R>7D!jgD-q{y zV293XRcnECR?WvwspqytWFJIibviR7r?+8=a94C0d%B%%q^VIFX>b@tQ~iSf#%L6Q z89MUP#?5xP)E}36?5BYAf!tIF(gPCa(+b_OrqCUyZRpn>j1+BbIz*I~kC7?H$P=UU z7?_inG#1#e!-b8S%ehO9f~mv87I&!PZAgK-8vD`aOAht!Y`dK!+7D!vedP` zG_ELUTv5=tB1;xMrOGGQwxEw?jS`-;(LzewTnOU)E$(2|{>P-bQfbpc)UF0%s;abA z+HGmGN?obV%4G-ZG<7zY9n5Y?cCemM$*S7HQg(Nr#B_jUb79FuNR4>+zbFfmgQP^G zV=r?c$aaYPR$hZUKt@%et96|xSC*~%6q+DEc~dd0S@{wJT%(;BuK2o}T~$q1Uu=2E z3Yq2!m6Sy-rBT)5Wu!qht|(|+QP7x|hI#eK+mb$(HA?oSjTTbc=0a&$xWyf;+Mi3h zq|oc_Y9OYnN?SE(S8B6z*}*zZ(;}B0EQLz4gY|?;N@=jE@$NoF?f}VV86A1YX2myF z79j@W z01^UOILwn|suA!07iB?mko0PFoRtJ#?w4S7&rmFYjLchkOm#+#=q$_(e`(u%bxuTF*M`C5JFh|rkAH1=3|DGWyzq)1RkOH2*)6;B2XiD+mRgk+KD&zHR#o9Xi(H*c++kq3Uu{yy zxb>j4(#mOSwwJ~g1&u2T8uM9*EPxh$+^e8*uY$&W7E;zIC#SU0LQ30Qn1#qxZVNlO zXbD}ywloVVapjGz+Hbc!pnD6aiFP#zle998(4c9dKQ5BX4we8K-CTCCt}e+A)~k}( zV)q$#h93!MdLSc1!kH&Y{xof*EJzNLUh2qtGd~sF00w2*O}zOF>2kJ(5+I*Z5ewYm zW2^nj-DvJQ_j(>6EdlyG#9U?dEQJr;Yn1?h)#hM7^2uO!O{k9$Bf*_`xwZaTllYQL zu1WpX{R{1+b(x=3{iZxC%=N9jRJP@k8(ng3%A~I4cl}4Pg@Honv@6siUw8$dXCp3r znD%5qq8NQAb#wA_g$h? zuybF0mz)0e*(~)v*7+lAm(p%EJlhz}lP7zckd-Xa+iax*&>7oVr>b%A!;B_ugY=L5 zHcS09QOPo9P^o6X=$2dc2e${xgat#*FSg9pQheJQ>twTf7A0K`oBObrCV3b46CqRD zebKnWdp>AfQP7xA=X&|LcR}Oc1&w=Wt=8w>rNCybp1Y5tQ2vj`D^0Vc7m&o1*Aj27 z7y}OuX_$6Qa~BMSNbBP?2+uZ*3l^b`ZM%9?wyIs?%DY59UYi6@nwmC2K3;q8OnUOj zTQpdzm1PG@Ds?uuJE$y@eLAp-#(!G`mU>Tjfb^eCF4J*UxMZj*RNbph7=nQg2A&z* z08$+a9jNiml?~=?)BIQN&`b_4w5^(-rx`M^H&* zqV7QBee4c-`$;TqLD$u7-2IRzN9S^bHw2P$#(zueZ+Q&p3eE2q#bq)FK;4yQSECI^ zR?hZ+Xl3V|2gswSgGk3`@VGgOx2*|iAuQ61Bmwy)Bp{LMF+Z<0zTH}bM%Hyxwa`=D zi}ll$$5p%Q8gZ>K`lp?B-;(CbCCi^sVz1gCHD~A&$?-^C4cpZKObBgyWK)BFY+H#9 zaQ&m2LsD;nlSXR7#omt}?To06x4DTCOdzTH@|rSl;f|)6tz0u+wjtJC<9V$L2DUZh z8k3%~ZE5h!#96PA>(QV;Lt0h8vq=2jBhmpLXw6qeH2%dNr4I0DC#?n!M=pSOFq(8B zu*>}e?D#VxS(@^rh?d5K-_vrsG>}I9(Hf;6A$e_+l91+`*Ndv-I0R|2H>d-AjFVOa zcXLt)_#`K-PU97MK-^9+?#Kg31V$IXt?7h7NZwKd`nFN?^B(jVTkW|Ynwi_(xlSq6 zZ#6p?*jBm;_%S0D(^21dYK(8p42@%R7t^5rl#IXFj^l*#fw5kglSm%VQ`;Xg%YX7F zjsuD0y;<&KMXwJ&YntPR;54FYBJG-`RoYxRA$&MLA>@4hO22&nYB4F!R{9H5Y)cNQ zgSXhIh(u}E{-O8NrVLduJ;U>1;bXHFw=yM>IIB|`Ef$f5~@}8+hnXPo4XzTjZw-PwaDMQ$R z4DDiBQbjv&+nlH$Yg;+l1K(hz-V>o*c%&qppT?!9#qnI+Z9lim_G;Vf@6o*ay4#IAKNRn6ty34k2O3Sf5_pJ{MuE?9 zQYSTDYL9#sO)W=l+BY%{KG>Cx1F%;DI^iq~Y@J<7JSte|;ek8*I12&oDRs6a zul&u~L@izVXNlDd+v;dA_$()_1|DXlW+<@t&cIl*P}yPh%FAXzBvoIbs^~dT|1$;K zx}DJnXFA>OL!4{%01nExN)}i8UuH!+0gG&ZKod%eoJ5jlB}ignJ<$fA~SR?0>m;A}#eD5+lg`-XCkZAA-koBwJK z$;t$9TO&2ahrL|_Bk-|ZjO=|QFar0z3nQbz{hgFOV3&H|d;bI0o-c)VU2X8@K>9iG z5AMZ6gO3WN-3=ZbNQW6bGLT+k@Z>;xr@;>g(#H*cEs(xt@YX=O!{Ea_V57uvpFn!5 z!9xP+FoPq3w9ep>fpo0F;{)jggKr6>w;Mbwkj^)FQ6ODn@X|o~yuqsiDeWk`jq2pT zwlqA=5{I!O1=ibQKqrP9jV;Q;LO-UGIvx1zoFvuecT6%$^QT%z9MZc()aJj+ScKvBP-#8~pwRx^dM#b`cYu`ov+j+s9 zB-Q3+CK*-ZLOtthr0i%rFQ1d7+WfvrM&j0wRn$zHrfy8+-O^ABJf|XYh+{{5O}4Ln#mJ;Uk{AHYr7cPd&YNM zV-I(noclF`UzfYNG2kXAb$~e6TokhR4QCt!;#|YX-ru;ZBf#MOn7i2npBqT)4Ne8p%M89MkTw|nhd?^r;Msxn zL4zL&Btl8tbhxGAiKl=BihlloH;}$(@eZDJQpdHoX&?zAU$h6(=E5pfEXlx-yafiy zY>c$rVqnT{$Tf-hJ?n;_hVB5~ZltDm+Rif19_>Nm6b8#Uvjb z#@qR3>!SWPmzc!tB-Q3aO>%j#d5PJ&w7<>A&Ph^j?qibA4mLk;wyx@L^T0Vts?Ebq z@*ge>HcvLm3xdsGnyowg+dN}Vl4|pV zCV6?V`A4%g>?OQdhdwhWNws;EN!}Q29%?p6`nU6YbCRrv|HI_i%HnnL7fds#Kru?`%J7 zwA_E*XcYKXBlT)sNqD3roZr`zdk&WvJI$TrpB57nG@Q;jy>|e#vgqj1)gi9 z-o1?QxC@T}W8u7)Wy~%_7;_Q;;2C`_&zm>Th2hk&fY}zhRi2ETH)p$xTP+vH#(;L0 zXsBCQp0MVrF!-Gw!VWOlIQ?jqkN=j+{Y2EgIZ_8E{PHf|YqDXoOdfq0L|7_i&&SlZ z5pU2zx5<-Q+k?r2d3x#d=G(?7G-il=-9@w1Ubr9?>@mJl zwgL6asWtOIb0Ti^b+{_dKV*m&kT&Q4*_HP zp5V;_li9~*M^Sf3AO#f-idRbhr!-L~1b14)q6QAo8a<8PJts-Exs8SC5g}akTolwM zZsA|Gx&53ZgN|2PF230Z#3=ARPFfB8u#uYNV((Ld5%}3I#$YZ-IPf-CG6MX7lg5A_ za#9C~7wXf<411q;#xY>*Q+{5FJ;SHByONc_i<~qL#1UEZ0^)`Gw98PVOBuG=t2SAD&+%6w@Uc{#-5M5=X9$u0%Onf7p+1xud@WbA*42N ztDiP(G9LzR=cG~K_C{)Qj=d*4W45XoY=7_ny6qd;??Qe1x{UOiSSXCF;L6jBdm&4wCn0x({ zYwoOv3DI(x7Ptu-*W;&LpJ#RDXs<6>cIgBwWz*7x$T2ROg=67@RItYcD`gu{e^nis z`JXwV>GQmsna*DT37j7P&)gDR7yHPLhPbW49fT^xKc4z-c2jeaPO~ff0CK7bBX}EtaNS!3YrD zYH4JKy>|yjU~H+^7?o>(6Qm(B_<-nEODo;dX>MsHFt$`WD<5kjZ*bAV8Q>^8h}FVb zS?e(V!mg(wMDRmtX+(#OfIN+q+ySEUKK7w}7So!7;^K+DRpItI#$Iw;y@rnz5|@F9 zHZG@a?zg{uzoxKkczUxHrNEEu-;f%m>}@z8Fd97n*)bz~+djt`fiL>In328r8&ymL zzuv{j-aUa4_<_S?jqGhSs%Ql6--#L7JItuU2t09J%-An<=`lk2A`j&Vkl<-3M`qXy zp&S7cyoQlI;wKlgK!VpWviDw(&LKhX#zcnu?a#7`K31g~LaZ@q_d1Q>_1 zcjZaL81EC(KU$VbRRX@>qr4hOT-C9ag($BqMS0~+9_5v#D6gC$%IA2LR|1KvT#EyV ztN08gsEvc{5m#XZ64Zu~y%RmetAXD!lDr{$$}~GaSQ%1y1}qPTWO#$&S0C zKc=Hz;=Qs8xWdYa%yfWpN3AM!)T&ZPttxcXDmv;pUTnsICm2a%xN3&IF9k**-P$m+ z_d4(7RX}>SVPx;dzzC#g8%Fl%T)967q-PsO_833H2)xC+ehj!V>g824?9s6jZD8ET ztFjYfOFn0(Q=;&<-Ui#ttmE{2^iPKA7^Q)~V5b2|tlOp;O!R^>rmnswLzm}bex;p9$H{C6Lkb<&3aDZM2h9M<13jsEUK zvrhRR(=7chtik@iXk(7E+rsKq)!vUezIxOQ6s8gjbOuR%-%kwSp5IG^o)}T?dy96Op$Ya4Yy;?esY%Gyf zdqjmC%&AzO=Q(EBPr(=4xlAi6n4mYD>|MCFnPVvDhYaIixgHC@RpdeZieG3YWAUiu zUCcjMA43(w!_q16P`lbuFTk%enq2b%XB(jIb8uB%XBFXSpFT}+68@53f=w_iIo*l_ z>Dg9D3`0hVkkUaRBr={;t&q|)t&q}$3;RDZk4Y{0Tr;&HxHpx%H@l!w1!?5OvvPP6F z=Uk%mEt`AjtlA4KFiUJ(SY2vY129$X?M%at{WJ~0RJC_C4Ug}qX#l3G{Up=y)P9-< zV5+BLQji!>XPZ7Pd5j10Txn$a*X@!-X=#otElt#3cH+E9?ZwAZyYaEqetc|DKcs@C z=7p466;f(UNJSe;EW}lYCw8bULITdB%+LX|C^NnKU|6r_vfgf}X#^T-8ia;gj6)#? z!hPC?l0Bgo>*yV(enAKdofQc|qW`+)bPyRv@tiJg zZhS0lbeB?^$+qrW-HF=GvWzS)0BNwS8Key@FF~XZieT!Oknn=-{KeE0w!_r{hdw6j zv7E0^r59z&dOl2E+m{HWZTlt2e#agi!9K~_a#Hi8skjcQW;vdH0KP} zTa)q^h2#HvhL&4&-!rtQ-usxLb;zQC-5(j+^ol(CW6S7o3Aas7nr4SnveXi4+|4$j z71Dnh{Bt0owQDOaIl{Cb<%{;?Kn90g@triC=5S5KbaZWa(sY*v*%2f1kN%4-8lj^O ze5Tu<1isH3KD}XvozU>f)OztJeLrVPuC#4izCE4&iF5dY9XXAE*+j0fZQ;x=t3>hx zLCBu!HkQwT(We)L_(B^>ml>^0ThZ(%?AFky{T5O7ctX1xfT@~a&A-`JZP<#zLu}QC zZNZ23aC;aDwu4CywdKx0`&P618(%XTe~wvQ>uW~iAGF1)fA&SI>`N2+`a&T zZ)fJ&78}n&wgskY{+_0ZZGovh%t5vVrs4L#TKg~eIAr}jzZ!r^Q~&7}@n?DDM_H}A zD3H=Yq67HgIY}<4SbFT3_oc*Fd#mmEq_=YPr3Q}=q>^WA<|MhqFFMf4Z3R5mi__5= z)=62xY^W?0vKH4+OLuBVXIRZ-DYM~C*Yq1Ib(fOcP^q!3)i%_0IlH0K8n%lo+7;dZ zJY@ri*%sMO8jS6(tnL@J-IlS*Z-I#Y`XqrLVOx{&eY1@w%^vWzMw3AUJnpb&MNQU! zziRNtKuWt(xYB+UQrd|^dZ<08^8|lhXX3>M-yKL-8T@r1Rd!b3sz`Lv!^6=U6qsHY zHoE-9qu!#wH+X3vU2l-Y5WzGngcM@hpk=z5XH&qcl?{Y0e(44}p?zTEi*^Edq0w5^ zI^h0Jngsrxk!0quY5MAe8#TW~K3do%?@hi{nDH8o{UU?>gp*~IJV_+(;PgDKs6JtRxJAv`A z0EaR*#YoxFN6HkC5hG*$v}ty(^?@-3{DqNfK6Vy+&QAduH8meQBY_Wiw2^8)b{JpM zGGIK^z#j|hfQ-Ug9XtOg@Bx=usjm6hdA67GDIf*E=F7+P6yy0=AJ0?3Q`a;@p%!K5 zV@8yg0XbXLe4H;nZ8yh-5BOyx)qL!1W6zxmAMlYzs`=RACcE%;7lx|Z%I>cZP+z(x z0ms-0LyI5y)qWD`02%S}wJ{*0Qzi4^Ii3zrWlP7W(iotOMy2J$ah&1E*i*K2@F^`F zeM)2aF@}`JAbPqDBBg=D$z>eKNk-YgoMj{?Kyq5yz~ry60Xe%U8<-pwwmd_}$xzZv zxJa^)6xpTR*3De-UMC}(Oq@t|eMXb;>Km9Ymt;J}i+{iVuNk*w2Gk1guNg5LkZp`rJ|^uC-Y zf&Kbk*tTTPi@N)(-x+!uXfS6HF$-j5DqFvPJHXB!$_M6*A?ko%wv&glf$3ghqjNv* z=Z;Arr;A!LdG1Oi(+qgfy`2(zTXvJt4GBGs4qssV`kA1Al9iam_S3_nUUtcqpqZDK1%C%!so=Ve9Vvus?vxmr&Xn;vD#LD6RA}{ z(%3wa-Td1;ORre}Yxa`o>r+kjewoKcXFN#ho-ai!H(*w9WP}25iP%_MSnhMXao`K1 zDIl1splAbrKVk#_*tKq;#4rq;!@n zBnAUBVj(dh{=Sc+@pL{cT#ODDX(Sjxu0VwgI2o`MF(8w3l>{?67Xv_MZ^{OKtY1uafLyjJ8~7Aw8wWB6l&Arj z^-1ypnNElsz(J=GpE)8-!N6A6S8z$|H!AV4E=~+Z+6g*}b zVgtyTMH&X|R~Bo(<6`Exe9F1i>eKHEb?S+}P_-J!!l(RHkvuGB$A9S+$Y&ut`s#Ex z8TFqcu z?2A3C8B3c2iR}Nb50cen`chBf)nxjffkdLSKqE~8lHIjud0wwxWYb+PQA9L7yXB8* z#~l5-|8`rHtj{7;&8Jw$*2J`K*2J`PYa-oCx7Eb7<7#5sbv1D>D|Sz|ZB0yjv?jjJ zIOs+hNkDqE=A*YLP&F~_iJC}XP<%vV96`mcs@0a?8x_>NaTE=;`CGv(^O0Q+YL2|v zwt55o<2HD%@N51RGvH@Ev*Fhg0iJT&ikX)izQeY1L*N&7+N8f!^wV}iWaU@QrVFr2 z`<*2-3;ZgZUW+RqSxG`FUp^yW;TO(ah^Z|2xadOd6sw#^L|0|`lzfF>sZmwcE|v2a zR%w;SQr$Cc{Z8$I`_)eEsReXb_tu8OcD_#E0kU2%>w!$>j<7CWRGql>{N?q})E{T0 zuY0NN{MqJ45An|H9Bm!-dY{2erK3sAFl?rMhT+T6l%>crr}*c4rRtFL^sQtxW$Ev% zEJX_Fv1j?hY$5--=~h*{TZo9ul4?V>aOcM~VJJuF2@CJpAzPR1l1rQ1b&&Gh-S}E* zxmoq0?*5fAJS0!O$lnXif3})XZ+UJr4%sU0)fW9Q_3NB#wTD7es1#~JQ|tkzaSz)H zYg&AS#K5>M%rh>YW`6N+VO9L%><+a4eks!NutGQsP53b%%A?GFxVnSN#48!z!oQ^QH$0Y|Yp& zw0DLvao+S?gS)spxDSxq$j#b^s!)7V zOH(F3#&Qo?5+6&GB|cV48CHPEkC=auG>Q4sWQmWFGNeO%3>s-sN|BhKM4?8+$2j4! z`Vk*XS3%-qY5&K^(kzINrMXZ)57ter(}3bZUuzrh%d~^pDN{k!m*$1i(tJ=FdBB`e zX-sGbU9Dp9sO%uKhwhN1d(XF3ouhsArvqe8Uzb9zFuAI%i9AU};jM{jY-?gVr>luP z?6#vlDO3}w)X~~OxD7$fYtCi%SmJ|hTN59dJgZm})1g)q)3RF=(}7eIDYlH3nwSPs zbB)M-#e!Kga(TzYSw(5pmP*S@BsWaYq~Z-VwcbPix}v;L2bAAjlox6$FSll@GpyDB z6jBN2-|CmR+12E*h|+R2$i)znYztRcvJO*SY_>k-HdmfwwurZU=qva3}vNbMQuweYZ%b#~IJpY$HO{Gf;C>!dlENz(%yt}PEvz2_9S=!kx zX7}{l!>r@6E!_BTu9cr@T3GOt?;Nri_XQsSqrj_-B=z9d?22Badw8a95_MGJf-4%1 zBjzMIRMCKEdpNS;+O9Z=d(z5Mmz-`oE_7X^WW-sX8AZu+<|L^;e8MCz3pS|&{~S6X z^;SFY+a~enAjuhzWx7H;Rnzwq$@%hnmacH6;?Ps;t!i1e+?a<&di4p(Qk6Us&s2of zslrq8dM(>Wk`rn{vUXJLKFRD(*;Z;7Fsz!LxHXuqydb_|1_xi|7g||DX}+#cOo(i2 zCN)y5nMh)_M>~!-1F!Qoj4~q`@tT=OU0i$FoFp}NC!6G1!R9)%b!2~=Z=aK-+Wde? zek#~J)@&W$-{wc=EV-54BkGz27H3@QVfu%3xQt(!UrT2vaMhAauF55|6ShjuGmo(; z6?pS>E}NZ0Rd%~XR;ofSnPrkna+8!e$=$m&N`)JGD!EebYZ@dRJKA~*UKb*yHlJ=1vy)VtNQ7ST*kZfKN%pyBb9Rz4 z-K`E!ZZJsE;$noG3WYk>+-yXa%Oqt?E_ot#TxS;4N!#mnk|WHSlfu0TV7LKt;?`ic zb$Q3@b9~jSm`iU;Ow{E)HBv0^NMf}|JKkmn&hs{mKGA~m6x$Zg-kLb?o|B}8?!zYe z*Ha|8eNwxVEll*S5$@T6o{cUcZlcWxiKbU0KMSAhlTRlwwQfavuL-rx= zak0GTlB;sbVtLOcM{>zxalboht0YY>SuE~V_1~H7np}1bji%drE(Q$Snn)PulZSQaAp2b=etD`#^+aBSf8~9WswW~L6or+fN6?POZxzm_3 z$-@r!&cq!qp5XeKJ5qRwu<*v-)t$R!7{sY75Fv&rKUl14n-z~dZ+ z%xczOkl`VewmgKwf-*{!mOdJxv?hGv-&U1BWSj*_ZkOu+xufM1QcS0~eot^6 z7+jysUH4aM@Kf&=;OOJSvpv8kIcX9|AE;#79;KxXTDGLQu^Z@Q2#ruFFs+b~0(neb zY6K19kxC)a2k~u^``#dKT9q19KM9~cRJV)9yd&xzFpZMN0O=i7Ol!z2rO}*6SUxF@ z=FkI51JfH~A_TZWTh&=KEMDT{T#VxgTlwwd1KlI6t4FDMt0V2Ubw5tTZ?q5r`cw6A z&yo77G@jhX38jJA%D8{f*R^g+ogrf6r}ERKv%OFDz^Gwcq79`)ovlv`7LiYE3;q9q zYN&o74;IFguu`qqYJ7+pLtof{BwOJu-9)EgVs7fR|8&ZLuVkzgN^*tKA|%|Wmn7;~>of})#$@Y}z+rs-YQC2mueSkdzdWb&?nrUiR z12D~7z*E9(3y!y2|6*pYx2@(t>Qv4pw;33lu;lfHGM*LoW}K>S!#4Ry|F zW-*BZnKfTwa#siWl&RV0Vdy_O;~F6E7D=yPJWXYx?$*RXRjw?kys)J5!YsRbdAY8j za$`y5#-d7^O&euI(87iOHHK`?(Ky2gMwa!!GucBOvR&c6$EVwC zfG8~XK%=s%P- z+#al_xax_2JX}M*+n&+Y9+LFhY;_wii6JvjPOt6seJFQ+uV6vo#Yq-C43qNuSwaUctg zKi&Vn(?GAD5_h}JDQrF0ZBCWi`JW~+J4v;P z#3FyXVH{iQ+-7ls@GoX_c9M0atdQBwtjgdxWg2_Wce^7%?#S1Cr2tgbHl}Kes8lae z^kk2WfBtK!dpKEgW)G8?out}Cf|pI?#v!)&_Cb$(iBB_|vy*IByrS}Nwn$oD)4kS? z!c{nXwyOb{7BovovJy98uX_E!wsL*E^;eox%?$7MeKf4Y`7tW&$E@PUa+KO17mnRw zG%oyNxwH>uU;Wf?@adXi`(@_i3E}lLAnr>*Qm=)Cvu`!yLYgs%|3XUL782g_?yQi2 zYzyb_MPYGH{gywXe6@M5S5e^WLTiAbHLLU1tfn=%uF6v1m4@?w@m6<$!TId9;L-)& zVixCo4l>IIy*a$+OoMnlzx;#3_sh(>JL2FYU6&`^_A-Z#9St(L&_k#sVUzEL*X z!T?bkjS0Edp$+7`vNd@T{$1L5BQFLM+SwXXtytQ@7G#wM#(KRp7YsM3e*9h17UT3z zsYQbtikI3_d-}P}eztH{ZKbjc7SR`M3uBOFEm#;@!phKR8@Go6B5c5DtfZba%UT5! z^aDBuQ>SMhohjoh86Z_B%`_q5K4m~iX%!Gs>T-LSu(K^r^;=c`X^-r(p;d8Xh_^(f z%MW06HMJb?^R>oz_>F@Oa8G}Ka*9`nSf78}M%osqm3DX~sJ$|$7RdV^nY zwlQ2-{;H~rjOlakXch(OFFSZkZ>IJGct4cw{OXQpU*PpLxL4$S`oNqk2IDL=c7En! zA$=BPOp-q5W!F;+Gd6j#Fto8j^9oE^Keej-n<`lsELp}o$ZUHgb(&GKPFZ{%p}<#o z?V(i__~fOFw4pg)VL7a-erlP2mydv~p>pHTvV8|100pKe*ukguW@=YYv@aeU>K`-B zfU(@FO}l3QwjG)x^GDmt$Ok@T z$L5fP6L`Ln%HPp%*Y7r?am0A_{0Uy~Dmy?_mQLmM0=~|cC&yX4p@263oR-ekI7f0_kf4vu^QV@*yfK#Zv2)Jmz@%@;5*f~zIBWff6=@;BAl zP@Db@|LW8sgt4Di$r}GcL#jJI7IcGlvVc6=!(aa%g( zwrO_oJ8r`dgDj9lt7X|?$g6DH)*<}_*N}9H|K0;FrHfPwe0wwkz(hgrejIASp)*tz zyw05+2huhfv%pd_X@;-?`?jb)kycgepY}A)Jl~vA8WNJjy-+#E8B=7ox&VGuh#SL>7LX*LB|8R?l;6{|@QryG*QSoOD-L3$;JthZOysBrY&De! zt#zqct-^Dao#&oVlnO4l=W&MP%v&1ht&B_7D_(K6wl?`Ia;_VUvoHs24dE8s0#mz^ z>Md{nA8g4=sn(X9ZZw8~(ilM07p0M=Y)et-Wk;3`@yZlu74x)5dm+s~_bQ@=Xs@w%F0G zeqsE#yIiJzcs>W&7JL|zMPp8|%p)Zd#3`Iivw8UZYSA1eH4ZPc#=R*tl2hT+ysl>L z))MmSIZ0})&oD`5=ThKk-*UH^on+MJxpR`7SCJu{S4ug??J+Tv{&B ze6=a3@>(MBg;qD4=D75l^p`u zu(J163un#B4k2t<+4~z0=m_v(-)w?XOS5x?5gTdt2yM;E4#Aa`bKubyzM7An)1pX^ z%&i&L~+4P0Ze!!P|){g_PaMCDnpQ}ip zao{tZGzMghNCn)(hRL{Xg+%wh#z|wqcR6Vsc$Sk!feaW`Z=J~?&=!G@^Nt>Wr@>`D zAjWqvNFRzaAbqIHz(iiy(#UGDv%mVU>>o-la zbCR`7WoaWBq_i||l!mWthgz*Lo^63wkI{^mS{A4*n4~F}$h2irHE}p}-9*2xqg^5i zqIB7lbCMQh+ zZ*|go;O$PD0?zvurF}i{#ZH<6p6R6Zzz-X#u1xG4=+lQO;HZ<<17Gf>Dd1^Fs!wt3 zd?oM!!>C@*sQ!N70*11^K25aYC9g2!Mdz`qA_|m09SWc(?OQFeum45jU5$w{XuE$tPhrEQH96x`KQsetdVv6{&wTeXA33~h?D&$FW- zfk%xd*WADpoU{h`J|jt|-aLJ=?ObMCwFTa91%+0Fp_w8*EBnS3B;SH$qq)V+AR%J zGUgjriGgMcD%Woprsm zWYaV|gXY1Hd!v9)adLn;YuAR!j)Oxg0LhYCAv^SbEzC}w3Sd&AW@LwI zqMZyTPijVXW}>74lRPyeJ8{>8sYNv-JF_iJb|0%ggWh{V8Y~~yk`Isb>b!ggOkI#M z@p3zSM#KiDVhG!R+u_+K&DuiJY$_%VmE^ZpQN%28C{%@8r}I2oTganL)8x^WCajqN z{-Nh!2S^2yuDs355h;}&`d?1;DPMipF`7bjAEz;#GSw0|oIcl)vCJ!! z4a^x$E=GY*wv?3i-8{|CNR-ClBaEh(4hCQ7q_v+n_&wXIRq%f}TL(z>l(XytD~z)r z6YC0NVsmj!P)I-EV`43k6L6ic`IuN&7!#X)OuW(ae-udG$b$?(vZf9(J0XSE0!gKs zkDYkvfd7{botlyHL?PD5Q-D8fj1p!bC-=I&jJus}E~v8L-TmUF17t`_+kmqz()0E8 z3C-&)%}MXDhEYoIN#^FHi##N-et0IIZB24QJv^FOfmzKE;Wfj)P(|-ID%qp{$s!1l zvuMLeuh0<dipCHhNV=wUl|efp5c+&oEJT2-&H zmb}SZ)B$qcD~0BUX;u1Sp=>QBQkA(C` zvMosJl055hpKzN~`I6gIYO_^cV*HU@%G9nnc$q8DRtn`sA3NBGsarO zC7&@TNi9d%VmVoE%utfCU3iQ^ZH}1D*+~vn@V~+2i`{ax9qhxTaX7}7ZCDAE8{qlU zRQ5KR_S9J>$=abznJK?*uRVn?PF-Pg->_}re(X^7Ej!3{Sm7ixJfDMX3ry|d1MFIg ztz3<1ySx6{D~*Xuw*phU8h}ajA-~pJ&)JwusG|C+I?uca>mO_KwTUdEY7>cn_6x_g zT&8UfS8!czmYrsHccaO0g(*XG({z44w5o7Dlz-brok0<6H_}>`E>82r$T~qKk>Cnf zQi_YT*ScgD0BzP%yC&Yz7Y#>$Y%8X}v~3|fbPzspPLgVKcaz*V*krZ#>i#yLFegd1 zd8kQ_2AkKJtsDB=eD<6q)n@&tp_0F?&B$SHtOIl)F^6&fG{B|z+ z(tDTGVT`R?-R9KkCV7?HEL>_<)xVoWBsp{Ml4=u)|8kpauyw23%;s?#+uxW(B>7#F z=p(5%k(lqxPHTT-l1q9|fz{@p&1NK7nM5B+{e%z_4|bdDwl>LK-DcrxxT=hS=l+Di2iW;&7b|-YxBjbH+1b~KjaK%Kidos&(8bE$XJS@% zuIgfC@0&3zJ7iVkz-)3VPob5C6uPdMLMuJ1$r_2ub<^ySH0spK8TQDUnw1@rreS68 zmXJc%O|wJNG_35c4pF&onjNCsu(J21n3Wx(+pw}nSZiO?sOlq|&Fd%4;7gA;iPlZs z#s=#Cw$*6~c(o7W4)7nHGzDZRi%T25Q&!qwmsP@>4E`>V3gdj^^yN0_f9Hj3s?b9l zr|F?5*&r7az^6KClpZ@d)Q64J?0mq8+F0->UA6}n53dLjN^o;GiDU^wg(-ed+$HafL9nz}SS;(gR z1MBVNjhRwT#Ti8=krx_V@FzTN#(|%7(kO5jnQQ2uTwMV7bp7!q)t z1l-LNYn%k!&q-sz6P+{;e2bGtfgwr9Nm7zaya$ps8Vc~~3*CL-*-jb-l4qifEF-0a zlqQsr(sWXj`EST~D&yRBd32qAd6T z50BWuA@3&A=F3cs)`#?&AbkjeaM5_uNJv1cm3RRpvD8`c(O!`zfFFt?3BJ_XIs}>^ zt2QuoOZ*_sLP|{l&$gN*t^vumy6CVIQg4FPqesO++Mz<~?l`&FOI|{Ho^=DoMqLN9 z)d$q)SuNSoYsw^$a#O#A#0~{V9=4$?_w!0HdAP+cjMPbj!?;sNQsetQ8D4tf;!wNlqx^ex=wsPkVxVt$fX}Ed% zK-+nqZMBnLV!l!EMfP1rI?uMXECX{SOe!`{v-6s0Qo(R#JgO1!?_=RXQl{6tID^Gw zrT5Ahuz%CXXgXzEdMa(WkZAT%QM17`U)X@OK8^(EKVf^HodOwELds8aW2I;@*eF9H znOB;zywZ&2l_tx+dHS;B9REr=dbZ^z9UybQS7fO-mB)XI_!CVL1ojW?R36x=Jg`&! z0{h)CK?O1=l@m2Egnx?gf5J})Q$Q}7MG$y>-~w{JEL^}l0vC`=W#IxIYm;3G50FW* zZ~?;!Xo|Gh)vmxq5Xd#N2m+4?T)+)ZS`GZ1lcs>-{I;5`yFPFM!vrk*@Pj@kCx6Xz zs`79B5O+h9e}9yum5#AAiIkRRQ9KrJn%|UvrGfWe0Byw#dGuKusLBWacc-nG0W*-5 z?@T*YQty?mJIydtTTMpDpwO54`rNvM@ZtO=~rJZJ{O2{0UimQD`? z2j~fQBH|iYEr7#Ja1GN3Dyp(E6}-_3fZUJ=GCP!W&Zg;feyFl^`x$5X44B#?qwjb-d|t!`rs@b= z+v>?q(IqeViQ$qLNJ>elZymVSP-8yjv!f1>)0pVHd72$ku3VGW7BX(5XWW5N#+8z* zlt*(-nfmLgbt;56*Q$!N;GCwd=$8YW!Rpr91p*5kO5+4Z-zp9KHJ?o^p8<1Pkmuci zbZFgc?9ipcN3YIy%ydnynpL9u-)2%Eqes8SnY}QS45L|$rFH${$N-WHQXrv~c3;+a zEHR7I*n&A<%Y8!NexVHCJk8F!Xn=tyj3&4AfX6s#?G*-Zh$O*3bG8ofE+?&7YW>Y@ zK>Y=O-)9D+K>A;v#|P5;^?+k1q{3PtDN*yW!^uOi{)g4uu*Q=;yQOcF$)Aj=^nBG6BZ^O0%PUQ?Cz(()KxEmDYviv*YZPFvo8=9+ z=M2xVD8rJ3P!Au@W*`lfEFm!(Di<=$F|_gEW!8laCwoje#Ze%A*)YwGMam&%&kyWQm+BA3dlOg+W3ezvh{d2y)7SneTr4~*EpOL} zJzfQ55V6%XWx;!Ivm$qZI4SMtSEt!cq2^UU^st?~K3(IOn%@NV{17XfJsuDoGKtwqYK_mQb$%|7qE&j$FrNh!UNc1f z_k8w{y%N!`IEcm`uNkISA)4R$6eH6=Tn)ga6_!~qGcR$2bl5FSE}HHN|7ypP$gKX= zJnR8*_$O=rOr1=mW^elmMPdJUSzYUj@#8$CU>1}i_eyP z&kk~tS~%Sd&*vc90#keVP`j#RTX+?sY9C=tT-O$u+SLF|+Kc&x@CfH^t_O?itLlB` zMOe04lP@V{5mlQ=eA+Le*K*DIj^1Ys?L~R+++?`?mO;F^aG|-XaG|+5`*B2d21P8n zNo!fHTIJWRSxTuS5?uaEN^uqRB$vzrATJeKzU}0Bm(2j=tZD}j?8h`}2VdBaNjz0= z?ZRj)TjD>=m-;)v)0{L4Jl9Bdl(~s`NVxn49&4nUZ-edpec%Ifr6IYWPVWk5Dc;V* zXS|Uyh%Xox5@v&q@!Ups4WMD+8N_#4YxV6s@Hrlo>J1m(gHh1PejkNFJvw;hQ$>WsU}QD|2-#b9Gtlnrz%Z z35iZk^O$r}eacoxHTeg1!MjzdXz}g5JiyshtKH&$d6aR9`6_2Bd8$p%A72~gDv2l0 z3a1B^yu>cQ!h>&vNVY4U?&BK0@Kl=2o!YNUo=cK(wVlnWcJ{edHj&U*Z007ZO?sc% zYgKoc1|HMvVd$kcK|9H|5`LBy&-PPI zsYIAH8VM@AT}`ET{ei~xy6qmjK`yd5JzV$m?NcWGb*#tj}R zUW!I-EkK%onPrlE`UkkdBQo~?(e^HYy4F+T|MR~4a`rh#Iiw~fjAG=HZfL^rYutr* z-(IKAzPQxL{Zh!#J|QGZD01C3jF3y1T!zvhg(#OUhM~b!E<*^J(0{GxS)cX&?(g^e zzUSGy^WSlv^{i*zzw5icx95Fdz&Ik49+CHYL?!`=jBND+5*Bqycr7^p+Z5nS4Al^FM|;Wc2_WU5A>@t@B7}f6tQZJLt2Vsc(Xc`Y7`O3M*2c01 zu+KyuX#J>b;njKXy$z-(C=U29_Dm++H!KlytW(0&rqV=O20R<{ZiV`r)~sHJV|$11 zR;WLI>sq~+iJJYW_pMNW;+oYD{t-m_b#p!5GK2CuQN5r#V6S7UyDfuZ+?kLcK5L$U zq5iI~pU7x*w`EY2fel(#57?`I299bRRDmJ=f+{ey!U}oTjj7N<9vEsskOzih9m@kp znTXs1MfDDpvUWSe7Rsq(OO6vy8P}N8VA7mr7;(%!+sqBEmLP6ua)A}x9mn9JSO~ML_p@%FH zRH~$~c52pVjiw1}YC5;fMgUQ*Bh}*^m+#0nTTm>vq*?_< zgt*Gf9L7hgwj%0Q2j+unCaUyv?76~HPUlpThmZSevslP9kG0aAQ;EzIE*T)R>RxI| zbh%xNtHc&WRrh-);lGASYC%+WuQdrjA10{tA$~^Eb1iF%Dg&mss|(WAzi@NaG& zi#1tt0AiPnH>o|*!URJKqmrP4$_5(WK=0r>T0QKMdu8#<=?dTLyFL>(QoY~qI?tLcRU_*?h3 zm0r_D)|{j|Z6jR>VcVuG@y5-ynx-ttYS)xy&NfY1;#^Hr4&ZOylubb<`nS3%o8IwR zTU&hHuCifq$r3lTuzbHm+Bkx01g!X1vg2G66zuB(BCghv3apVUgvm`^uxtwk!5F7$ z2mF0gDjyR9{E0gxznRVr76={s5Alt^g)IiMbP%fCpc_r@U+vnho}Uucc4Hc`Yh|Xq}M?-m6^4zRSSK(@8V7;8v-C%Bj9dK|*1ID&H5?Wnb}yVF&Si1OFqS zQeV6BJsWG|91)%JI*^HenX8!nih*AXD2^bW;2V$G3yov-w=!)vaaH%Nrv4pnM%G&0 zss&NiWq0N?E-8Ckty{Gq(%65;X3jsftDMiU4|$-A&w``<=;}3bPE_d{yOd;V*$&n= zyM{Kphk*wMlv2ijYT51A#3>)h8)J8ieF9xC&n~l2$MOanYgKqd1$VSro4;^hBs+d< zD`_`n?*kX5-H?&pMoLI0^G+k5`ldMiit6<)xdHz95T@V-06 zyxcv`urf&i{Luf4hQ^yZ;M>fL+^^Di`=t zYLPWh^Awo@Bq>zb%rbZ6g}k5&NCq^7+&$Qvc?OUSXb8C@2}B|wE;fYR;iV7)#tv`$ zwE&!btUEgihL9J|5R8p#dT%JKyeQ)@bIXc?gceE!Z&`qp&+YByKJ$RFFyjWP03 z)`d4(7pvLtX*Umyk#x~7TB6sK7uyXPP$Ns3Ek6imfgz!#s^xCa=Gm3a78~&d_ZW}& zd|s*Mb8*>s(dxQYLRX(9*9$t4FV~Io5z#U3Ri(i4t$iK+@m%}sm}=Trhhj4K3TtM? z0sqAFw+Fb3C*U05?v7dnq=Kukr`h9Y*;R4C?{wBVK+;3WfQge##7?xLPDNKT;73`W z2pP$BZa`gPAXz0;53pQ%hg}85m_T}|e6ov#QXDW9UswUD_(}#$y%(~cRdVXRk^vv% zRep}be|11jSnlrNm3wY?15XVo1_IJvRFd?U1*-2FNWKXbAYDTZBXhXc6=a>HlxLr1 zoMc~}aVs(qF3Uvu5pOVh9hQyz->xYRY6I{y4JRWT;1_P+kjb+^Ysf&sufw?Mh)CQ44?vSbtJZV0x*v zB_Jb*lC|k%(r#%VQ&yIDlz+w1$=)56Z{Uyk@UQ?ltgomzItf?B(OKvY;uv5l=RX|H zfPm=-vLH>T_kv1i_o|d(=6OD|nFeHrqh!GJ8i^cW+YZDAkBS5SjxPgxfMI2@0LWE2 z>2h2ZN8e+)pg6h}T}W|hA5t8hXxQ>#qs(k{i1cBSUSe+^uk1qgU7@!qo*wgBn<=OT z!1N+%_U8`iME8gW#~&G7%6m30R0S{tj;I)xCD=TWx1J z!4hA2fj{q^;V?ilzcz&%uF6X{;HtP`-Qg@BD-Hu>T~O=bW_xrS{T5R1GFcx<(_ZJf z*IC|&9N%yGAS?aMz|_MupOu$NI%;{ObYvxERB`FdLUF7X$wie1O!6olNkaxG9rJ^C zdW-J23>>!<@Gl}dT8$P{9TYBFLUp9UtIz3lxuqkxz4%}|7J-x^6)*~o)UTIEgLrsM zaXK$5PQX_hPG%y2PqW67Jr=;ypii5sZ@|Cv5q=SHmuTh=d^exD_W{SkR2Xo*qh>c4 z7}rB!<^y6bAmva^OXuG*O=oKG5tFK9z?4ss2FT`$k^wV=5NS*xD6WFaC(%8!n5&c< zl9HzRTUdeiZjQ_%!_99V9hoZCz6%&GQ23de%p1sHvfyuQn0uGxs z)TOUpbB8Xb9gwL3rExdQa#CEK1U}Mxz%(GM-;wI*t;^hy+ zo44^aZA>fHbllL6B5y?_X*;Ee2CHNKLVC-R}&&*%Mgp2&xY z&J)r5cn6#(qR$Q}BD#yG{`^A?d|p5SvXmXKwoZ)ic}<7=*9B6*HyR33LjAviG>K%r zclLQ3=DBJwc)cZE2tl^}rmttzf1{(N@lG3YOh&wDg= zpm!-H?MYu!957eme#B_DYoe4?dagqGuu-46;JQ*$^(pI$1E$0`R;ES1!IC~qX_X(C zJZdPpYrC|gimOCmu8lvW8&{r`IO?<4CtJQKB`^iPkx9>|perT4o${?XGH_V2 zzP+W9%%}$EQMbDt@+f}Uh)Kt4vniHA*=8qBJtmj9#`I}jQTjHS70XETD}L4{%VPTN znQO6JvWlzv3CuO7XFMU-lpdJ8i|My#_BF|Ou9drJam+M~rKzm60qME*vW@KJ%HYL% z`}aP4_o*10e5~%L%_);56r)8@$mXht1juKx)Q+=L;p)G+UD^2Ct$2u%!uN_-9abaP zM~fCL^lL^XFXW$@f95EcCewQt0+0!l7RcZ96ly2@Nmx7qV($8C z_oKkSl0=pK+8+MJuBG*2PBkb1skCAMa-!^Qj$EUxM^fWE)s1HKO@lqu;NTlaOJWrV zA*{X%hL$<|IcJvIjiF<T&x2B#RR;pDrEDI&woe-XAYar&Qf?_CV^;i_APUPZzZ{u6Ov?}a9EDG<6KOH;S6=Acm zxNDJdb}AfrgKNybqpn-=5G4hdx}68vHr#Y{q_DzFxyh-@Lq|?0M?~8eR>(8SP`B&} zzEL;{h_ORQ&VMw%M+N@WmXQvUp5gB2JFPiY+5McZ;C_iH8!RNx+_EEr`G6QJ?qBmp z&B^>vezMQ_76X4yR#h*y$Gl@9CbJ@;hZVd~Njc|y&RKG;!v3IhI_JzLgX(C`xtMci z{iX5yRp#kyJs>^6U`QWvZ}lDJY-XTE5MhC{P1wquZNgUOY!kLJXPdAoXYiC*$v_1d zoNpJlcUj~=9a^APvErXE*~5zm6RqnIek4lWTp^^n>0sy?K^7pKUD?e_S)1v@X~qPH zP9K2bmS6yK9jmv;3eyJ&xE4nI&KMSR9W;I5IoE=)(M(uz`Y=+x&QhKJzGHRV(CI^G z1P-o+@5Iy?k{=vV%i@ha%8PyFnGIZ;c2`*JSI4Op0*;?~lP|F4{Sn_-%?2gqgoD#4 z$tgJ4nk}T6THCW7`gz}}?*XzoFKH&9Ph0udt=RWqPrO8>JU_CH(LdT%TAK~6@B5Z& zwzN{tUuB##IcM?P({s)?I{7X%{QjJWWPx4qo4vC7hnHv}8EM$L{=O$j)>ztKkQ*g?n&vp(qACMpx{DP(ZPeLtPYK=Lm$`C>S2%0zpf^y zlOMmy2Iuii+PF}S@0l-*wT<7D2M)J}L@DOP!6+cN^Ho=teA?Snow`GjE6u`GRXI_i z{U91*gyszO^Lo#P9^eg*%1Wzp^7xNV)&mSW3!G$7l#nWJzd^Db6f^e~Go#DLopFCM+0FO45 ztlu`jxx9W;J@O}sh&En%l{`cn9~}@BCoYfoM(bk$9~clSHaB?BSWu0g^xwOhYkRwk zJ-}ecEJ_b`rP)X{vJU&X4(j_n=UVRjJmos9@Bg7yJEg8`--nYhL^1F9JMmfQwC}@7 zZfM`9xk7Rj`hHGS==%^2F+zTs$8zv$&&7hes^T?+>jIgB?qjxm*XXP<6Dl%?xA_X$ zr>lmSTF&vZpY%kAG z--?}lvXIkoLA}K)8CO+M`t)A?3jVh9E!8nT(UtGR)Bd3?&>0z@&^#gBT-7>Wq2a1Hn&5B``{JJs+}R6fAMmb@ zTBK2UFGgw>4Zv09vpC|aIHJu}aYT{b7sauH|BLV8WW{+*r-1TTaD$iJv0a8Xz{rgj zIwalYQ=Qb*XIW~ifqc^TOb=e4%E;E0lGPSQ|8%O8jUi%;o;P6kqn6K~4tbptb*mOc zDbuXF%H?ml8zAq0HXf5n8{y~40U2>6^I#)RA*Ygi!! zJmN<&VQO=IZ*TD{j1O;eA7%itT78&tAFgm8W&p9eA>?k!eV75n>V}ZJSGx~0fUyrl zzEmdiBlhJi_hl0BJV*5bWA`TAy?=N2CIN9%@*WT$)se|%?w;x%PXeCis6HTWH@w{8 zxqN*M;2o?XMK53+mw{hYlSC!7@vA)uQ-Blh?i^qomnn}6p3B#?0^+thGUY*diF-T+ zi02I4rp2xxu5bv#rY@L!Ei zUckCx={{!r!FE+b!hti21K!h8yk^EPELTF{y{*k_!u#3HVvMXiaP*J3d`Mg;SQFcOCT_ zLb_@1rc9g|l?&jL4A*eu^1ZEKDEDIwrVJ=9wN^fwrzop&ZLE!7FD4IGYjZ4Pt(MD_ zJL=_FUaHC)qv!!+u?z%&1Un8qi78}&tBo)b-^=VPc0OH}#$Q#q9+=)r@3dL=clqD#ri)77n75Xla(O!7&Qe=%vA@ig+7%^4K8!C*44R6xoSM=w}5)d~Ey&x#==Zdq;E&CyF?8%Rupah8xHWk`n8~ek* z1LexM@)zU^wjfuqL1F`0pjL#6DMc7P!4Sm4B!gf^11okB)F2NGk%*X5v!h1?Y>yh5 z1&l5VEd8-dihOEMv~<7_p-K%9RH}G<1D%Yk94i%n0fpyW3tfACCan0Pl#Jx!XzIfD z4r#1|n6xbxCEmEpr-6;1r4cU4YS;5cQXx*!sD@k8>r;ygBT+02&einW0sO7|=OA}{ z(Th>-GFQJvk{p7wZTpsZ<2FpA89z(gw%v*qF@Jlq;g+wEZ=jL*^#HL zwd89U;XT`R?7Iw%JpGUyw)`}r%cGS_D~uskcga>6uk_VMW?Q#vK~!~LZxY@(Oi~M? zs>^Qn1uiLjL8Du>A?kj~BwXy0vY)9Rty&OuyO)}T%Ux3T6DOlp3nFc%O(x?mE^C(M z=7GM#%UssP-+4`(Rke>L$^$(EGx6&yR>7O1m2sL?dcTuBzjLsaRr13FD&mHd{R!2sG9u4qXVYk*UaXF%+S{G=FeLrZu|)qej-dArK9uZo;~gH|a6E0teP?z-`{Y zNnMd}T>rY2!NZ~GQR-IoD7A3Bm?WA`1Z=fwrz`2tTDb6CnhKj9AKE&#rOY{#a~58n ztU4EFIuFY^i=RjOhH-w^uIfE-@E~hkd8Ip3d3fqm)j7x<4vrTjWo$zbH(aKZgsM8| z^5!b9Apkz+TcD-^uQgONP;>XO?>Zsi|6b9c8ba<4zS0Q+A7dz+5ZK-2fe`RTSH%*! z+iF-@J^X?wbCm2=;0k^CmAViAy5SKDWnxjX#ZH0>hb&4y|S zx%<2CI3XZy)DUvFm&bPzaPO!gW|q0TUmyfLa0MZE|1S^%(&~+B?w%D00ps`%d7q^i z_&mOo#P>_qp=7MMdWjoiszyzEgx6cD*QDIg4;oVLJ{6O4LtGnD?nvEQDmRag@_2HY zyQ>UalXA0Xly{TM+&$2+H7Pfwd1C-~?~O^hiKAV9OD2!$6fupNi|>(CceJejoJC)2 zG(pFN(j-X6l;j?v5?0j`(y!YybvcM@uDa*fN@*aaU>tE3JP#tlm);c3+C`T zxHFf#GnczFm%Ec4oybeHR>J?rt`qVTB?r{MPZC^gAbo|pQ@z>T{E%I5SAW9&1D$a> zaoKI(ee{P-aP^Ot2RrH))kM$Rt5n4|nG_6^xgnK};h`|I*Pr$Euk4fs^OrH#q-no7 z#^AU{>}+kpz@>CY+2rRFcGbN?+K0wbIvR-9QQR{uFHiIQ+;16}3a@nPY5XU3sQL41 ziZ z+(9{knN!vgU>dPx(+DL@XN`)Z3m)JT#KQp@b4A|OOV6<9FSe`lzRO_7Va4rfL+OL; zDmDW$+Sc;8VLB;|3-~N&odsluS-X~|RlR!jEKHv^_rr4T?opBeKh_7dMZi+y)3|aJ z1=zNoX-Q!Pq#-qqz_g=~0me-VOw$S(Aj4?f%Cwk}0bUq2C@_s9WPr4QN&^m~@?siw z8-H_1=xA0e7%=R8C-evv2~=cymt!vgT7x;9q!O?*Y>6 zvR(pQeFjXE0d!$i3QV($20&U}$$)8gApzFe5RAf58X_qb9T;ux$|H!!1)?0f*?d0p~8Z<+nQs8j*} zAY?rt*)LzK^>>!p4~#kjFqKUje!(7>irgDL>t_LpwP4k4Gpv6w_=#tL(KvX`5;uo=r`ZC?5LtUhx1r2xYg1k?b>1EzLuehn zd<@-E7(=gFqR+j_229lf{0<*Pdw`)EZi#bM;qWEVE0+)CG0Oziz*MatP1S&(=~J~u z=AFzrmGv=}NpY5?DIfL-I3lN=gPq!DmpSU8Re z-{ld{Y}XnRId1SnsMW@X`C=@C`66M7pMh%|D&i8$NCOlFW=q!Qh~M&c}ey++~@janly8&hi}oo9dR05y_UrVG@_)N0)m{4cZk*KYaYEV%CE zxt;BaE9d{LiBspU`FQ3<^*ZY?V(;}!sl6jrUXHWl{ZSWxl9%!9Xr^275Q$R$Qg!mH z)>S(B(mt5i`b_?4)q+Sn8G|0m-^|8)zqe?b!#n_c}(xyP&D zKKnp1C=~!cjm-cVPZ}Vj#Mk5HdKq z7C1F8*iPE&I_KFZBKC!?yH54bMj!E|hRK)A8PSO@Jlpi@R3~hks9Pa{Bq_YTARh)c zNkfRn*7J~S`F-A;uJrwl6PdK;he!%v5jDat5m(9RQ@5re)BAO{b#yzs%FOaQ+d%uh zT?LhLYB}1?IM^wchGV>9FSFQ|Rdts&ajH&qu^TI2qQV|2d&h-uIMT9vKhwE7PSptq za~nwp{6lv!KdR~Zn~onGhJL|dX*AY-AN;wb;B~EZqp^FCtIbkt${ z^HI?(l<8&PMmnWSZBvQJdvCBVWi5CWbH2(rrTd+@72eq}Sf5zzlU0Srvt4r!5a&d5 z>RZ7W+&a<(VUWDC0f<1c@rI>TWQ|M>FTC%edOmGB{=jOf&1l3ufIqN-XpqK^)f^u9Jk z^5vU$w6kKdTU^3Q5VJqH*$b2T3N6Trw=jiKF*)Z#&Y4ZK%bfE$XLd@joTnweN?YP7 z+gpX^RnDq9BjY_R=RFKDI4`4IzHDv;E@uKa=K?nu1QuV@_IT2cvQEmyWs5Eyug=a4 zX%iLY{P3DMwE|$}MJ7SMwd*G9g**DbVe!qv&l$(+I8`ScAy+q(H`jXw$aW6Y&##%z z)pMR~6ZK`gN_w#!`45BVAFA{8wQ-JcV$W4F@ak;iM#J%OQ^3)_5T3Y|GyChTc+^NC zUh%i#HhRmpDc73xdlsp1U_8s#C!5)Y9;W{O&^WKRtB|$e+)iuJiCq&7G?UPj)nzcQcOF zajH%@9^^U~+3`eoVQ5yJ`x(dTI8`Sck9D2XH<*9KxG<=z&W9Pt>Nxd;0gl65=a!$C z&Yyd1v&oC!JDquDS;}V%N1u6 z^KP}HF>G?iJb~4em)P@{+f_;;;JY1_Piwmb4?V>pmWRWP(9CV=IHBX(aYjN?>ZT>C z{PTu6m6X)O2YrXpcq`58)~|OuTokDyPVILuJSdchU+HiJ0K z-!zYv8Tij0g&rXC1`Xnf`%NScm>9?)e)C8+Q0O4uhI?CsxaGaRaJG%Vb3f70JouB% zRe}!q=JOhqENL!T;->$p2HCU(chC7;M9R%S8?qtg?mWYaBEZL&w&|ofL2otGt1o3aGh!fkhW+DxuZFR z5ReErgxnEiAp|7E4Iy{$@_^3(;%`HkIxG?P?@Mf=ol=zUue5IQ57sTTA^^YEyGkGM zr~lT7mOV(o-#Mxecwg&KLIp^-lIhzX*0b(wSD~VNZTWW>5BM=h^#N%eVFY~t=Nm>f zAD9j%WNEJwRN8XNNz?tn``KLDd4!XuoU|5FPGDM3$NOc4W&APj|*gg^cy96ru7|qjYtC|p_D95j;_1}VriuB&gv^6@<+PR_{vGE)2@mG z4sAS78&frv447t=w-5kNiCPqxmK8FGQN(GOQbdNiZ>~2XXx?^@;U-!m z%?IGq&<(!7-g+CoL9He(Cww}jFz}lUCj&a*j~z7+`16Ppc>FVsG~ooipQGjhUvDV2 z1Namt>j8e>QS*Q|M4Z55pLLypZ+Fx@AiY?10^jVNd>-&%8$Oi`_>n%O_5jJCD07|@ zWe)IeHu9=8;QJd+LIfB}#(Z8f=G&Ew`MhMz4=Wk3@j^cjNSRP;fj{YFJwQfR@g4A~ zUPWdBU+AcLKnje?2foH<-Ig^zC?_{IV{&v;R&3(iMn)TjK_FF#K@|P4>y8Bz=kTi;;&V0|4YQJS* zvPHeT$~^wPd%oW?FzzZ{S{vBXY48uX5%);D>UTRfpKk>7Y8tC2By?8X^vJO5=!~X_rEDjQ@&?T zo$C{j1;ER^_4i%A*+QcB5yiH#_ru7&Efz_><2 zDJL+AB%FEKSr}G!Ug9&A1wa-7Qq};&d}fj2w6m9!1we|FFak1qsNxpWQ`yS0I6GY1Omu}NaRzSzTvfL0q{Q^)dRevbvsK&qD73VcxD1bnEY zdVmx+u@&$Lr&<7H3MMK6hnKm(MR$zzqmkYhW^Z|$Wm;Q6I{?Z@T zUqVOlDSPM${dOIppLc}*u#ON?yibag#Ioc7B!|oS+#i;1vo8*7_Dg~SKnj&801U~oNX@#!3)CVYg-RF!|JDo0A|RlZ~{`5gcI=SKm|w+3KihDjY{P+kr|$%3vE(VPlHx72_Pv;tE2z$x!bvQ>HE zD&@#7(V7(a0lswY0Uqn9Er6^7#N6wbSi6!v8mUs!^lddt(kR`qoVnVT5b|0l;C;e| z@C{3((Q~6M4NBj+KF{0oO#?$U+(HV`@M_6ER(~Ghb!ZD9sUY57v&0R#puD%WdQfWF zVT-YeDtz>t&P-@kF7Ow9F}3e9Fd>l_*8o|l*R8@0OLd`R+C0o8IrpfSAuB%m9g?c` zhrn^Cly|Hp)kR=3OZL?P&#=6!!_Lj8qMQZ(tS9I^;8z^A`Lc;0yqr}M;fLrU$-eDvP}NWrZQVdgNr;~ie;c$XAA9@Bz9 zTc_0+1CRSq-UFncN<0Bq+hsRMU(mO?Tm9MBCD0c*Cr~Sov%LcPhn#P)-Ll0JOHKmE zM}17DYBtzmiA2*kl(aqLYlG#E*`t~SOd2$l+=YrdlPARtNx?YW@NyTY3NWeAP;$p= zSnUBOSsKc`PR|t5<#JCKrkV{mRhvP(!E#p`!kP0ml-wO)n{#R>FsUSza)O&4BQ*SN zhW3qedN5?=YR`rx6{iXDX>gid@iXciITk+~mT6>BOb?E1iZhFRi0Q$R7fKIIR>bt+ z$c{KuXzQ3hZSnY7n|6=s+q8a6pXNaPtW72~MdlYaZ({dL-jl%)Qch5*yu#ZwRrMpQ zi8qGYm=-cEZokOLX5nCOw(we6$Hiag;tOA9$3v9Jz?0h08R=APDs$C#zKiv`U_?Q_ ze4Bu&e}`RV=(%L+v&PHhr$(lVoBNX!ez6el&-tc&4-kPHRLl6D6XScHm`%w$)ih*@{05Z_7 zISY(jdB+cn&WskTz#sG(R1XlRg)_}pd68V4PSpw_TDgu_FOtMOvy18wj7;WA9q9>+ z$WD(|x^hU8o~evfFX$|%rzzulnzCnSnUe+1O++RjM<^qzZ#iN_iAK1YS&1Tmq}cWWDfUWo3__T7S=C`k*~3v zQ)A@2?S|pLW>3fY8p(u?5urw=qjHT*TSH6uS8N;qzx_OG7Vy`G65cbmro1E7H|;T# zE;++Zi8|GHwoNqRHhj%($f{Sj;vs5f5uK~6s-EpmFZzMTEE#i*i!XA{u8C7^c#d(t zBsCBOqAVQqz;>$i zRS>QF`Pw{_KU%dQ(nMq*h)obNgI;}M*oDX~lh4>$8Tpf4>s+UH&=AEApwd!q`R<>y z4;O<{0pL>$2FQ5x02wvDrHtbS$f)tD41F2vN{hgHPsCp8Mq#owDy&2S2|@-Z*8->N z#2FXjuJ5D|MhRmiRVvC&6-DN(oL;SDZ4n+0~NU)aMTMBR#qB#9g$rRqA>?@iKB zqOJvZM-OsV_qwAy*+Z^{;#eoWk)7eP4&Tix#@~76$UZNxqw`tD!P^ZI{a#tHF0XSLKi2*GUY(mN4&Nc8mOwyGo7pBRGn}zF_3mkkC}^2DW60(ovY*2q}b8U zmG-c!6mK>=V{o8F5sZ(c~f={_qGt5SK zD@^w1lrsL)B>jeQ@M@vFg_X{t1Ql~B+^v3Rd^fqqyrWbd+r-{rSMmFjY`7b(csY@+ z^ul;LI?h9`1)}cgS*D0%4BwoZ~jN zU$L6!mE;wxWVJB=gP(mAnG3*;?Sf)uO$ZA!hDLNQuAhtR=i;(S&meINxwwT~TsB=+ zaqE*%NzNhcWrLfiF=U5~cXQ6W88Jjodh6xcSlkG_g9!|A_ZP|GmVTIfRxG|mog|Q| zms^)@31|nqQ|4Ejm?-Dpu8C8pLs)sRNszG>Ki}rt+lfY|_{A@37Jl5BF&>=^VMZV&^z3 zGo+3CnyBwz6Q_0#to(vWkQ2I_ZFI%z!l9k&JkK~*$EiBu2#vLw#=6c&_F{+pvguqM zryShL-{Wns;H7r0r@ppkf2Lg(M}K59t2FghFM>oqm?4K$z0;e?DLddC9Yl|i&j~{G zsFoW2qlZU94TejdMm%;43bB}7m{rxkArO6@gNSf;vW;UDj#KJm6mB?95ne#Tp~oc{ z%2CSNPgOdd`9cFm!D_(HQ3+LHBS*fO(1`G&aEenR$_B$u^)SnvLPMvv1>&gLQlgR7 zNGuZX`{uAdilqnQA?lUkNE?_=^YO9=7?P_nj{7 z4MS*QFzYy9Aj%BWkgZMpNX91}dT<+{WQZ+Y4^fCm7Vf43$!i6cf4s6K!_tXczhh}{*JDccT@$rkM5>hty2&H6<)dcV1#V%sTvua$WgM&H)WHmnb-tN> z_}fj_`&?&nH~ufCb9J0rCB~{z`Hz>`?(3T8cu(y`zF#+YmL219u&q;x$61=NPoua) zZPvriNNLKUk-D2{8?IFdTl_tFwn>D$_M5BpSiogR%>lmOQ2MPEv&-Dw;)Jt+2X98) z9N=>uH4Au(qvilV?x~o7Vt(#WrId347uMk_>Ei5S95UpD|d1R5YHMy z?r=_aIXDc5^XuKGNkD=ivwc7!pt>f#(KkMc zR+$9+dq+(JKF&}h)zMp*xgk=GK<)^ZOu_((R71!e!4g8i-&)o*gxu}mahnDtqzxf= zL{%gL{yOji#xc*o&#z6qZ??`Rua^PF!JYEp{@EL53UJng+Xp0a>de$KcLYzA01`Pl z_yZ(zLIp_J8gbkaIpGB)Yz-lIL{20E5;@@ojDuMCYMk2Q$Es;xQLE@*!}6A>U&zaAZtmJtz_=W&=kz2+F{aZjnGxbdXr! ziguNoj(vE8CVpttMS%aG;pE-^-;H?V(FZio@ea+!+_&!7MpOI-ISI5{eKMUJZ&DkL zrSAW~*45Qw;4z;#^Z+*)O6I@Ed*>VGZHV)KSm*h9<0qHI)23gE(M!M9}2Adl@jj?2Ec}NU_Y9O8Y?`4gG zHDX|@wYY`2CZcY&e^#eug>Mahie2?fUs6*`RC&$MsU*9%- z-G8$r_>5f(FLHIO7DQF|LX+_2VUk)9=_}o&=53-rNYeb=GQCtuO1yDQQyKBIG~Ojy zQAfj!LPrx${c|tqRZ$1SF-cZzDs+aRBRftgSvRWRuXJ1P1>LLpE`U#;7zNK^_spvxsScdENv}aAn>Ih-#TPrYfV^CAx$v)iJ(- zH04_U1;CuH(8<<fn97>yR&AG#Gh01HqQB zMs%q$olIJx5LMkFchJcu*`mpOFPtAG2 z%N*4M3?Z7w_&vOM&ja3X$k1?`opy@6!56M-5ikx&>;Z=vuB=!d%=DJTHYEeb&O+-p z@jl$b8M=H37&=rSu^?R(M{{xAQGxEtocZUd34u=vO$hi+NA&?qk-#FEN47EOww6=G zdzi@BNupPZq-@XqDgQ}@P5(b=lDhGSiyOIFsBc%t9KW_lET48-qBFg4>o$73}=NwO@0#Q}vRb;Nvqudb#bb-D$P93@E+9b9( znU|z&MXU{fl{rIIlLANDlcI$;CB`cr4(a{t+Yp)i$>qXcGebFkvboCW4|t2C<^ad1 z8YO7B%>jPXQL})*a?~8)?Pg${1^k$!<^VtAs9C@n-z#o)0-gIk zgWtHNPR_WKPjDw^0P(CLOkS8ba>yPY40=uOZ~_68Cln5N{j8q)oSZi}TO$ z7M=to2r~TwjN>us@pzWUV-oP~j+zEM$58d=I5$K}jh|fRj$p}L5RgbUgxnDH`uv zb!Ms%$Eh@qQmpbIPL+ZY|I{kePb_FUeiJPspg7D9Mvz#14A8%wzEM|52BrEP*eqZ#0fMgS}`^Q9Jw9L07Ht$T;Rxuzy*eUkGa5+ zF_HD4NT8Sv9Ni!&14Ft+0zpw_Vu5K!aso{gFGpPj_$qoY@I98cW^(@iuQzi-C{yxkL}}nTD!QpvjwI-iA2;twry#c9kt> zT%z6xD$O`S5mfR+P^1Hz1r-!EPNnjC84`0|!cs zB~!~oVrsw6Z%;6ru|^C`wHEet>wOQ=-aieoiIXeaWEH z;<3z$(q>yuB{GMcK;OXvx~p9ad(z#i1yR+#t4Y{vn4}g&dNxXGKHFqzA0%lWYm=r@ zB`NX7F->K}&(d@&$%;A}W)wP_aO$6XL9dEB7>-G@VpE|r1RYtnmaJ>el#mB=`J`z8 zznnD{_zNdc=40d~19TXOz~Fyj$R-Za7=?b~5#)ivvxupQc=$JM0w%a}whV}BnXjfQ zg(}rm*k>5uK$>zLbOOzDu7ysvJ`*oGZXp>t@*Ks7;* z>Oa;Ls(9dosGQnGxri`x%hJMigbnGl`Ux# zysGmpTO$#?0VmL3HnJc33VQ(%&Y>sJDZjQ60)Fi>=K*gtRDA-?&HlbZ&pt@jsW#Zd zJNSrHK7mFlLZ$ofY%F(n`Pt^9tOw-;8s1-+b?O8#@^l`6Eql8yrTIoGtx$-n?xLxB zn#U-!ty{GqlGod8w)MHevo3kPZQDe80)3&8ec5I8erMoc11gLF4WuW~YvUa4j+p=J zJPz3?JYKaR(vzxYQ=aA0dC^h|_^XcFZy7i&OZNATg+t65ZFFGP1EnfNMBZ=m(I@+; z|86MM35uoEgWcy@lpGpR$mGfi^f|eXFKjOzdIHTdj5U|~3(V51G$~d)rz}ZWw~4ba zGSsP_KZVaNcB&`koJ-s0)YTRXJN80koC9PNq%h8nI3Gl%g-D4iUx<{b^1_f)4I8N@ zs`G4G9_@yePM`~9gHE6!rG@1ri9HiiQc$dS83GIEO`Jd@@DOV$O%;T5mFkx&QL_5n+gz#>^ev@wViXp9*qGIo;al_DwIbH5pU0=+#oN!{4S2{hWa zN8{bWD-kJC$eF4`gKdhsCPSBBGb))M7f+y5X@!+xuCg%E>Qw8@o{gSJ*+fgvDf22a zSLjjhhyl6+UK^*5Ty$*`Tb#^GQt<@(f#wWVO$r=oPl^^#pm{i?_sb94T2CHA6vyGr z-J5gXAJ|pKe879%sd=P(l(Wm+9cox11Uz;HA$M;Ign(zPAdJmOVa)oTn>7Q7A!^o) zoAnsiHUo$u4Iy`@1VX^rteNcCsR@F7)Ls5Qx*ekRtQA4PEJ7q<1&qy_&CHUo!x57( zXw-yiY1_qM6e$ih$W&Y!^Lq1JK2wLx=}0Cpa->}TY{aF$HKGJYQ$v~RsyCnHOrwpi zxL~3mE$Rm_8e{rYua1rvSR>wI*EnYQS&C1YcR!DJ;LRtQnndXRi|6zlxeRNeHmg?1 z9^`R;{;t4NhLeeN>a5;hoH#3mWf$WJO0$J~BMCzZlvHSV|IW4c05P)QLnH2|X3CB3 ze-AKd=%XQs%W9}5&vz2P;zoqE)QH-R*UGC+k;kNs#Z3V8-%Tep_2gi?N`D8u(ou7O zPkeP;g1I}=uo7v&8($L>26ZWvtDiyrS53Wa7@e_|8&ozmlsmN6q};?NuLeHLz)J&9ufwaFsxN$ z17??TmN-VO8mrGofORA4Ki=Q%)`xV07cA<%7zDr6+Dsb(c*HYs5ir(|OVg1}z{gsf z%GNF5`B5_i<9cC-cYQ~HIb6OXVVh>|4qCFWzOq$zt*P2r-+4-08EFLmnc<|C1K#MUIY8`ES22wIR2=a0 zJitA`mpW<=a7)y_z|Zmc&H>`3DoDH9Z4}Y%s+-d4q~?1f2Z6ug-fRZE#!z(?;HIsM z&o_T+W^RU=s-whtrjgjiF{4hF+*B{$UXj>7OCVgDtRwkG%pe$au^E88sfh_*#(h z-~lpfe9Wt`?rgu#>6c!O$-58&kbVvik!DOP?=2i74i^=LZN931; z;a~DDQ(w3O8U`L#v!MQ+2`-O4I@z6yw5)uRlPxW;niWkBTWNKWSi(v9*vao$520_{@qKFgVy$*nHSAvnl&5iByA3T{bD|RJ&wEnN6K)_iYn(t9uyH!FDaAey6(k zwu$5m@r@{iAoEVX5P#c5d2nmY;msg$p@R5en1@7!Jcgs#V3;5$X z=LOt-9@H%0;~g~z_)B-0ul&0Ne3hfs&CR8 z{v40VB;fZPH4XR+L)Gs&b3?Qmf!q-=*_{L=S`8t01WX74-(i{45OQ~(=hHMGVQmPx zBeEh9@KlfcG~j<3s^R5s#B*;NFm9mLed@@X&zj|(-aJ!)aa&AzTfEByKLvP$qxygZ zTJ4`&=8jm)Tbh9X;Bo5%68naiJHju#fW*Eb<5t8H-y{~evt@B_=Ojc*f+e~ z5q=>Aj9a4k(WQD{D0G^=EaH1w^mJ-N$o~}KfdAe~oynKBb8yjC2(;*H{f z&$b+^1*VQEA)alpw5th&0}UiIXItU(Z&BE1$k1Gk#rSVgq>yb|yY2D!m?AqAHzSrwU6wB$p-qVChozv#PTGG?qD0dL=cd z5}89jr!`{%-E7ywzM*`X*S3kO?vst^h+&di5Y@Y99rE?VCQaiqwY(DB=2#fT~`Z=v%XOFqxob9 zN@#@!n?|YpDUgA3<&z)aoEqrRk0~Lje8A%vx&rU5QwuDnCyu~}{VmU!bfOx4HFYB!>PO0wFuZ~YdG`*5q-HVw&KlcS(``Q+&}m=UhfkZPyfrVpdl~Qlv#SsSB2IP-PW06`J*P%S?OTKOhHAZ* zNyTbOLGF`W)jZ&wq3RF*af5!@3CEpl18c7P1@`b|b{+I>wAg_jDbX)CmRGy{Y_Grh zEFiqou0wwM-C*SDToYUHp)}X(RH?MWU{Q6?w)yxuzQLB+)~#9)Roy?^N^R67WdmKe zYC)u*1zc}3c5qqK(*`aCRN6@TS-`b%j&`4JVxQ;YGwa8z7DVB*fGpmBA1&;G*ZX98 zzh&UCNZx;$CHF~YjW#+kE4xyo6On68C;H?V<^K$YIzgf31owFsC8q@xGP&|uz+dD# zZrNTs^s|6$3a|s9{sOb_R9bkcoo}~XWEVl4J>O7Q+f`6_#8o|ePtN(3ZFA}}pG^if z^kj|z$WC5iMLgns5S13YC8~U}TcXOhgL0~2BkTG)IP5q?o6BcxrTRo0#Aj?}3oP0U z&i70Q3O%(X^wg5j{BwrueJ2)c$sjo~WV?Z_M?tZ-!~9fGc*KApDEwi|Nl>H<*Nyg_ zxO$K3*ICYJ(qaZzsl%x`N|xHAxYQuUr4}g;Q@F|tha)3=C>f+1_mIdqV6I{u;F6Ka z2nmP_sx$RL$Z+8zFI)2Mv<8PT&*RnCqG1mBsxU?ZhSr#GFxl7RR-?KAC4o9o8v(EAeUCDNr$vOoPxqGV z0g{k1i3g0`$JHym?)L#p-k)jS%RKFjt=t6n7jpNr*Ty&v!Z{j6OFBWOvM3H1E!r5V zn$mE<*YIjDAh@yTX&T23PY4tT{Bw(t?8*PkoO!)@N}<9L-)WwqLO_EsV@>LhcU3>Y2fG1nqlM}9D#%;KsRQ*N-X&_743 z7DT$vlK@{ zVd1Z>aE29u5W_b8zTMl%{1)rHlb42xsA(XJN>YILr* z%Nm;;L>un75Xaivz`a*B+4F9@N@4*Xa6{Cj>m` z#5gIr`-ovhBH;Ne2)Vm95CZ;X1tE7YdY!8VJl#-@jof`a5CUGjf{?qfcn_Nf{JNnU ziQN4n5Do~morMp0TIHdiA@t)O`aa$iHTr@wc zlOY9=Hfsn=4MU^6%KO74V9cDq*CsoL_1jd{q1O<2(Yb}*_u)&Xxa8EXvHdi{}7uhor2S`II*|pXIX&1#c5fA^$XaBqM zQ9panjriX?iZ$_nXcR@@5bQa?Kfb2vhN=vB)H~7~U~K2tTi98@yHPJwI?X2&L+u!= zERTX$2Gun9RLZG;jr;^Aw`2qZ+!VPEyo=$4jA(FG*GZ~-Md1K`xZ#8q@D@kS1IFn{ zo%(i^j=)!YaC?Act>gtDSGA3@RZ7}pJZXD?TMboD=SW-1m&yaCc!^rTU876}CgWue z{7`#L!V49h>*}fMg8}MB{ixvS(S#)ibMZjDoiva0wvM&Z$%A&Tp5DM5L1&lV-paF9g zt$;MKlBI2|I2!qVQ5yh%z?-TE_)$mA0n$<`&7*HXeeR}BHBv)b-Ds?obm)lliKxMV zL$_Z5Y};U^rZ^?)(7^8r9U731Eg=SM+lcgDS+fDst{OWUwrz{i6-68%{Z5Pne53cu z9^mPYnge`p)cU}*uj~N;4r^*z2yLtfuVy$%8@j>DUY-sg!}?~a4bO`@9q}{>ZvSH0G}DPBJgqEVdnu~ z;i%p#4Wxl3mjH*gb$4T3cj>}XgMVxtG;Tdwikhg~ka=+TTTW+bac5wVQ(QW@sk|3i zWC)((a2@9q2aI_HO~eM zfQ$ivdpW8P$ZT$X_54jHfJxnRjXHV+>STMgLv{2u)%c!po?_^?x}F|$y4zaeN{nUl z!m=t62zsH+&17Z4W+91i!pK!lS_~W{0!Au*vn~ z!6w&_F_o)k0PW0GGi8$nglZy<3=7vzHPj8rxXMXXGkG49IgC!4>r;-^S4J#SD{0-h zZ~=3b-J6R>iqlS}pj?IWD=LCDjs|$RfjH8i=wQ(A2vFjPP8$N)xg(>WiQ~%-#6eyx|zW;%8~dsjP}e z9}8HC4&dX>1PMJLR>??DN??qju;D4*9P@yfB~+<3qi(|kU11g+Vd~5zp^;aEG2$kl zluo7MOPt+mX(DA+T#5IXOzTX_D!YIwr@mJA3gbM{u9{K6A&>=EVGKmsw|Z37>6u;m zm;H6VW^wtx$EQGaojnXe%xoI3u!U(^p+9yja$!GDfWo`F_q2zBC{x#bYtW~xW3k`6 zz8X2|NG%st1?o4x?4D0|DhdY524$5Bl_Y|b4O&6fN|Jxz3_7Rbq&^qAzU<2tboSs3 zI;-x7F9Ar*n&4guwk^$e&Q>O8ap{y!SKgwk~15D$7RZ%uHJa6+CR9 zGUqIutRD(*1L}rbuConitywJox>;A+bXgbe2;~N^=e8#I!<~Mk^_H@}JD_qyP4`B~CnjW!gIBm9Xt`3H#FoMLRvm zB_zD!h8>qM$yGWIJ(z?lu5{>et=0cwrx~}Y3Vx+osP{)$NLb`bEU}%=S_rRl=6zk( zjk2Ch*~fJ~DR||H|2h?0iC^~>bk?nPrp4ncoNR`<__MvXW)p~*lTBtBUf`to6-FH0 z;7)aRrP{)ZQpLp%0q<>@bbx2n?DzUl=mf6aHKJK7o9C@Zf`@~TsJblv*S2uDd= zH6u9SX>oHT)1k> z6f7xdg@fy8HL+m_`Bui!aZWOcf=r8Xl&h-7E3S&8prcP%@qlZ|YCYU2Xe~&?+UVNh z*qjYd8EZL`W=F9w{MHhj_l4HVQWF7#xPC4!ueu}8G7(%0<+a<%C1nfK5>cj3tncs! z#d+RQdw{|3Y>ulL@)k3dElWwlSDTR2U09}5ClLQ*oFsy9rhAu#A$eqMVuS7k!Nqk@ z8Zn2XN62)U!c7_#X3)~TtF>_oWA*&ktAADX&vuo{40x%b^nHc=O($i7`NhsW0~j;s z?^uo0Ux5qzTa8`g0(^#x>;WRO)RpS93bzLjB4?1>IFpJjyErj6CR=*LtVF6LeJZkK zrG!ib9%rt-BDe?`*>rR#B^agpMT82U+fH#gJII$0KSQIzPo+aWwXkt|yFubzs z_lf+CvD?UwUK{Rs2TZdl{_99TeQn~9ev(;sk0o|?q`OTZ4bcX zU)RV`17?=Fdz)c}5D=RhLig5y5qWpNQ+>eXqfbVbT};xRE^+R;1|DtKQXkMlY_G)N zY@^BV?qa$gZda88e2n|qC%~8{1sHJu6C2l+6ZlZWNfrR!*)8t_;*4?v&jvCaBbuTU z@SMnJ;Lilke>d=whz$58CpG4ZG{Bb|O6>r?ERX^Ir=xm+hj@l%BU!x%F*4$TwicEP zAt$`5miYcG3MMdD2__)vAR`nYfm3Njj*uvhm|PS&3;fmK86ZxJ2Eac?oWL7A0P}!% zHQ6IfWL9n0$^LWUKhCq{BCc|KHyo7>ivs>cr3GLz+ukIwuSr;CrCp*8b&RG6$gyu zQaB0knDx;ez5Dh6sR`0RB+}lVZ#}@rJ1U#zqT?x6$mnq*kPa8sSbEKpTQUbo-RV{@ z-h@!D@+!G*>NJ0L4mm6<9v&4X;6n{3WBn&bmboJf#9VBn*l9$8>E%L3C#QQV88H2` znNM(cK-61-NrdvuLnhhu0XtP(t+)6U&rRAm7}K}$G^TIkZ%j{v`qi6wH|wr+0tq`~ z3zbDsr2ZA&_2w8fXb_>oD$-j}uF!!unTV(t`!fU7xV*E^!htb`WmBg@{M&=2srYWi zLzEPzclx0yV!~DPk3l9Fk@+aE?pja@ZgI-CLq?SCUe*(y>On?$u3e>JnJX{TR(qJc z@iPX0YFhj(k4eCwkGW1X?U^+bB=mq-C8aktMo`#ryf;T55VM3T=x(4<_xYi&Fbj^5 zcIJ}M$XO3Y{K@NH>G&t()bqlWb~H0NGl!s_vN)Wj3jlhZ@;p zkd;@VOgyCy?w)aL?186UqECi@9FYNsT9<{RIVnqZNY_CHS5C^X{J(?hv>P-d(*-u% zvpAEZgw1wt3hGZ`X>*FT9K&g$QS?YJ6)GJEPS$n<&Q0MAI;Y_bIZ0Jvutg$0kcsh=ca&M$p%!1 zKx8sI6)V{%h2~CEMx*sCdmQG6r3G)wsnHs#^2u5sH^aoNpH8g`NhZ5$)%f-kr(Xkr z0Zf*(d6?Wi*{99fl5DJML6k;=`!kQwh|14B*;O`f01r5_c_gzOzylpM3;1qF%>jPE zP|fxZcRN4b#Q{FUPz@n>&vC+8z_&YU4)7Bzc)7dnQLY5=j)rQK;5S#9f!MUzuN5)* zjm1RU0r*gNcLDI(hEg(|{bYm#z9_I>Y2au633C?!|6(YW2K;Due}Nz!9Z*CBM+@@} z+1Fq(jJHF*oO4tAfUEbikC#`wmwiAyD|^|`z3k^+W_vh#k{JGI#otG*2#hnbT|$d} zI%+ZC&|>rW5}IN@H*!8VGV864fxk0t`*>)2gk+t!Z0~mlR-V<_=uv+NC@g5D!pSGv z&11Zb6BCydhfiE%+}UQBEGpkKvdkSemYS`hBtA#E7c*&`l=;o}n1BiMzlu16>2AEH9Og7W#q{9lnz5gF6w{}Et-Qa`8u4Pg%47nNc9nNz$X=RN zP_*V#Jhc|_WJhn5#nf0~{FXhXa0+UrNwOXh1XkSMYedP4lvD3hPWf55%fBH7ICTPi zOBtUVAfv{&l=1!nGHQG(Lq9kCD{Gd&@hJ3CH>AZ<&QW0{3P=z#IJp)$RVUT!ubvVM zd8NwMn)1f4(MNo#Vcm*{6Yfw}Upv)^Jsd*Rt#}v`BrAfQY6p`vgh*|?vyt83uG**4 z)Ky&SPt40qMV73vGOsACVuK`fGx-@l55hvB%C-1JhT2frIcoMog3I?Zmn9hhv7}qQ zd;%EnOYz(O}FbM|x2Y@8``F65lqSf`wQbLv4Bd2XuwQGv3WP?`Fi{{J^e2Ttna%b0@M%mQLXbd2pha8jq8W*(wU+vK=6qOXcFSLo4l7#60-bgERP5>{WZLDI(gd?zSdQ?NwO$ zKyQV`4;UCSBnzAB+|S5X$EiBuD1;l`g{iCRe6Z>KN4M4+Y6xdl9c?q0m)lkLkVV>x zKi${i@hhEdmNoCC0kwjy)lKi0YJ63lYggI-1U&A4n@2J&1zd8}Ea2~d8}5)Fl6io5)ezzi`5}aWBu7KY9r+=IfaHg` z0Z4ub6(Gsch~sW8sgfqeI^V*p3c*%t0)D7N$p0w?1uQM=$bOer?mccEkZ>v)Fu@dQfZva#0n_V*4DgHAEma!u ziQXya0f!~~gpP;$C$T5azl!2aEemn(5odxH2k=f_+^l_zKUb z1;DpQ836n>&!+`Il0&5dhfcWwcxIF+z#li91O)I}M=byj%N=Q;5qonkI(b-a!<1q< z7ugH^HaBiFAg2^s~KT-2K zX2GedVKLb$N>*SpRQft#-;;F_@C^|sFo`U!3iu)CoCkbgl;*&syXXY`j91MbAU!~+ z080%>W|y;kku0Z>DH-rl-p=!YG@0y!0aEV7Pe2+mZctjUaE3w3rZLwyVX@_C&%^ze zfw7>ZMtRd5X}+KD6;=s0dsknibD~Uaq}M&p^Dvv&Pt+%UsW>$zm8Uoa_DrDSQUli) zCB`RIspR-ssv&-sYLZRpQJus!)tUEEhjorpZavRJslEW;=!JHU2xGL8-OJiBgnAAT z`{QUm!oxoY7zYrTgp-vJAo*5|vwA-^Mwzhd_V6B;WrPBZy$8l+C9{AG_kN+B_X};j zm-mlHo1X%<8He@1?cx8i-ug3uml&!p+ohm9+#>K8yEcR^!cr5q2~17cCNvx6K#ggb zcNsAC7($S)j%H>|!=4$fgMg3qmFI?2N0yJYGJbMY^?|AWa>Oo_l=OINH*9{xvO-E1 zU|jhr^Gt}fSL|++nEj#&4lpy~#u)CH6pIq3IHa$jsQzSfR7L5hBJQmt%iPf-Lg>LZ z;5Kr)YPBgmGR#_=Ag+gP8X~4&Yjeahwnw|r0y! zdVus<871hld%A)-T%pGa6&>z{zLuJ!5r5~ihdGw-^etheYteB8Ma#X=mkx8RCTKvR zqC3%Uf}-gd&;*r-x~gz;(fxKOXRHPlI8{>0DL;&P;#S|tfw{q^ng{S7U*s2TOa7ad zO8Nzx^6N_&`o^91syv^^X`)U9|JlA_?v7LzoDNNs$kk+IDxZ)%YF>{bnZc>{iS zZe>dgFo^U`+^z2WuXp#&Fyv_yA0N&OF){`2x(Ee<7tVW{eN3JLPa+pTX7fd=LWjdM) z6cplu*~KF&DZOUdn7iBq3>tjb50eW+M`PVLGwT*}>wEzltji`7D(;SE)1GeI?7>#m zAMVw?G{{u@8OMVHC*#6_gE^b@d#>>u>%2V%kS}=S^Z=Q#Nz9uFto-*iCggM%Hv4UB z_A7lD%UsYw^7U)tRPFCI&QAoLmzb_ghwJ>nnmASGg~oYV(8=`ci^FwZv?fl~`8+G$ zOxI-#p83Fg2J7rrEr_b>H75LYAB_sF^!jZRRnN7# zhg=Ip`k}?DVrz`6E-%{d0&4irbM|nhyzu01IRFG1Ga0n>NdIaa)fzc>vd$f?1Jsc853+}NEtq5; z|6(^RTimFWoO3GY%%*qxQKlVD7dmBVziBDwEe`FwC%jV5a?UJa)ZV)o=ab#jc{tzb zo))JqgpjqHtTy0ep;K6ZXvfH7)Pplbw=i*)mjc)1r&g>3*2Jj=fcAKNh|tR|GOrsP zA=P<^ajcG0b;1$F7F|PPt2(Dl=e%1x*NXG0HnoYCz9KFAgX|4H6Po;i?c7~s*TOnT z#pIk*IcL@}lykG`LTBAEa^7OccxJ*Y9V6!~c8up5=Q-}_G>i1G;gx*|RqZ8&fpaeB z%+~bUG4dGoa%+nnaX<*Uhd1^%)tD)xpa zTZlOfleta4W0Wn4Iu(3JcsI>n2klloYn9Bjzmcqq(lbg~8~M|wh*Tb~U# z8p-^1h)RzB0TP1`SDcW!fV|_X&*XnDQJ3sbJ?*VeaA(_s$-k-ezrvWPu zdJmADKVhVv5Q##s(Mj@mGAm|t`B^Q~2wc4;PWAi-X3o1CC+~{Ll%D29cVU*VvAx%tI5&=?iE~u>$lX1^-;@ju zg8vmMcW+I(V>`-1%2ne}G}kb(P+6<-Eg4Z>AIFivwX|_K{-8`!aj1KbkzHq3F+D$I zE)L9at~jCOH1hG@MT-*&c!So3Tx;&RG-J*=mvd&*0d4>Hn}^sdlb77utn)RQ^P!CQ zu$=cWoTeDn+lh^UmH+Z?V{pHpJCW_l>R5sM!HHgONU@gNwk=ju3h9EM{L+m)>6)H|7n zf8(BJ?J|J(_^m0g2t0o43WMcl0QZR{?h}V{Kg4%ar^n4&^08FPME4CAD?FCYl-ew) z)MCBo4VR#EF4tM?z&DxBz}e3^i!HmO`L{Z2H79mj6Q|}Oy6)?-bw7zzVFXZ}cQcOF zajH%@q6qDgwP!Ix`GHSsaC$gIFAoHA7;89K3wOE z*TkthUu~SH1)YyIUH>0r6(1c_!)qY|SLZ^Q$lB&>=@6mL;fhz2AfUJ#AuSM_v#s{8Hk zd3k17WB&g^_xW}`Rn^_q)z#`Y_zok54;PU7Qe*_)=!3^9^=X=DVx!AaA=PYlVD`lrYUT=zpaB5+S51>2C?H!=dBKg3At zML%+lzrJH$xpuGhIn;De16G?F?t zG6LT;#7OGR&NvPHw3B9mYweCu$b{4ezd1Auyx$NbsfR^I;G>2Ziw?<^a=l)@tKK$| zzj5krX>QRrWsjVqM{f5nGy^=>NP1XCPy1P9qfgO4WX?yYIPw}wFa!LykyP1#7~b8z zb>=XGc)TbBzTUZ}fPdqpnU5Hx2Z$i>)6O*o{F#$xb~oR?kGuWMV+~G4(sK=7={`RL zyxvG!Bk)_@<7Yl$@Gzkfdzj zcSbfKK}FfX(J6|>dp~swZS`TtP)hqZ>>ANIuK8Yc4)C=`lL;E|S|6zAfY&)`8i*^& z9w)HoRd|qAv6~Ccl`b?_y3pKj%Y|?oEim|*9vtR?Cpu{whexe5HbfO zgeco6Py25VHFH3`OGUxBmlOnucPSeo%F+%Ezx-Bww2;e=Rkn1Gazlo&2qqAE0jZ z*M`bJ`H`5)-S3PKn=rg;*}&^82us8PekX~`;O{xx1dxy|lE71vP78juciPRLH26g8 zp;`{`tGw542A*dm*$ug2;hmNkOWF{;ug?P}fDbWJD@)>Wi7fc&D0{NO+Ejy?ycQY! zuTd0;hsh)pSPL`{wRyT~10U{l_pQL`gbjR*v&{mZ<)jJV$xfOD)*SuXBm>4po?15I z7PB8|YG67VGRL{jCNwGvW`q<`=Js)tvz1x=r)*}Uk_0lQ^GXAsVUetD*0)*W{T|*X zfFDo!NPNzSs*vtXS5_K$Zwq>DCM5RtNH|Tvd}T5+gU?N6zix@EQzCJ6mB+`;z(b7G zW=!Jn$Va%n#7J6b@K>B|0?497Ob=ulpd+XW5S&#Rco!f3Hv@^+%9bxzl=f^BVGgM@ z=8gn$rRA#-rDfqt!?{F68UI7P9GXc;EDVvbm&_da(9w`0qTZD@-PD}Gzvtm>4oFy2 zHgGKxT$%(CFx_7UF<`CRALzYu4oL6UT)}j8(FUZeD;t=OEo{JB(#LBZn$D})mc4h5 z-aD0a1n`{Eq;&bLRkg9$uFWQ1khnMa{qEjdfOx+2mYWtx;QPI13lQIL`AFdXQas=- z@o=UtS~c)R-ifvV=?HBH@6r?0q4gXn{@q~S{8Qh@ngG7RoqGPRHd-EH&t3FaRrlHN zz`N^Dt1=zJMdh9XvmqQwNN1U|vThO*F7Q@glFkzgX=C9kO*|iqACP>Tb6YFv-`aIU z2T!|sHsP_UQL3ix{<6HRc70|1uo>tKvx+ti_)Tu9&HrHVtC0k}&PZ)*{oE2vXH*@S zd5u&ac&Hg(*}%+agbjE=5=_9%RwPCPpYAh_Szs+R(V&_sEm{i+G^z4|nF`3v1(?nR zo?%1#^X%E$WYk<>ROrxri5)L>U)l`(ppn`Yml`JK$%!hEh}T+)1Tjze zfON-}j|2m~mKe-PFGT?|s4E+o0ba}rWSmzvFi}vn0f~ZAIA9VGZ(1PHvrR@-*Cj~m zETN4M8WY-h&`urFXd&B?ZL*v?q+AtD6d_`?RkTn*e2^*v-(f2pWdmPsH0jU4e{s?r z@Y{(bn0*hC1fHA36)?d>GqBhHk+6Z|N@pI}HHa`QXtltn_+(}RNUV`TH6J}xl2G$A zmz)Qtp@u~VAxA~QL>w_WaJlmqRY&kS--3$Lzyuu00!VOCHZUs@VFR)rQ8q9UN7#S_ z9AyI&U4#vo1{#9Ok9<-!0VKGz-J3*hRz=sBEP%{>v?O^HP#R(2c0QAt0I~#7HZb8p zasblxl@09OyqR}6qQ{H2ykCwr{bce_*JRSJUuJTw`9J+Z^CwzkB&D5f@%7anb2lu4 zv6Av(DXdhhPwh)o+F4Hf&rhv?ueXw|ZBE!@{J?wbd<+tkw)M>^S2g2z<~3xV(#=^S zKheglOk&o^?Ei^GZo+91IsJY%X zRlRCmX5(m8TCP)RxyH3sjp--(bIs|yJcsmMkyHFenD!Mz#lgwp68PChlR*>XQH)w; zg^hYsB4xvtbQ`6C88k%{IBF|$UHn29tJkRFQ)cOlz|qB@uN9xFPz})rq!#rW&3CEM zF1i&uv{)Kdqx*YsN4sL>irgbvK$oQ}F+p2B&ud?$;o6hyKxDLA8H$ek3c zP32_T%$O&f+Xf!k3Eav_@Mc&GoQ!BSho&Jz?)d?@6!4ye-|G}`EyT5-?<|g*eyKS;4~`z zy6aq>Nw|6^{hB_kv|0;yX+@Q#_0qX1(<=I(^3e+P3Z>i~Po zL{l`n=Y)fFE@(xcFoN%k5laGF&_Hc|6}^&4K2iPSP@(yJd$lOG*wgO~dh z^=;Z*quwJ~sjO}dur^?wE>n-nk}}U#eGv)v|D?J&*Ksz&RV*-Q9%plK+^y#BY9;)6 zo4a_ic3#5aa!I)yd(JlR@+`IkHLsbbEAnSn<%QZ&UM|xTa+3V3S8V&u6W$oo7v(~J% zS7nn#enq_lQ|~m}0vpxJ{R&svo=t_TQuczYVrVf-?@TM$8-3${0!UfqU^_Qpl#5Ko zCm>WkXISru>VZ*mK36}!28;8obSN3VZ4Gv7dsaRh(`(k;JX6!`Z%p?crRknG&(t)J zH>SB!nl{}$)4GOrT5=?l+i86lrqvB6Irp@|vKC@WuIhMrnYH6Dyge(QO!=(6B)^&i zHD4>33ODFAKfL+udd-h-o~hs5XiT>;8&t~FYsT#52&R6+%UHWg!S86AMlxx0<{Oss zDf>P0oyu|BsbrGFekAnVEp)a;bPB$O(Y@B*h+!>|Dqnq37l{N z*-{fOAbS?Vm2XZ6>CU#(&eg@rJZaUqeA)H*s`2kyMR{uH+}ooZ@SRvBvkbT~~@I z%~&$+Q!o`_tQkiG&)P6N{wwp~$W%I#fnO+l4q_+QhOV|@J`bpm3oPJ!kO+7h1+YM zizcx=NzD_9Xxka`itSl=u;%$5%X4{>{U#q;>R)(V<*RHbRQY5xLkc+bSMpWD%pSL9 z%amv33p2unksWqNjLYyErP&MR0<+R;yTn5Ulf+UQH&irksAwz~R7+_*sG{+pipFyB z)oX`?veqjvW6&sH{g7EwOpYP>xSNoG*jBo2ZrVyumc_pO6l0A#dY@RRlweBsEjncI5ikn)C z(lnnlBYfL8SSNtkMb?0MLsyrDQCXDi;&Y)O*JQ0Bvt@FMkyP+amhLgJNK^56Dyz8#$O3Pf6l~|ltw-TOpS9GPhHvQ+@juSSn zxLCjGz|`yIMXj|=jjL>frjxFct705+iXO*{+v8pU5HG4YV3dnY#S~7}zueURWmFGD zvb}5){WBnKH>}Q0cC{J1FkDft*|9FWp(0yaw=R27MYiXm-d zE~O-Avi+V{cmhcF{pQp)V2Ywf&NHqVzTfO-A6dFh{OA%@<{8RzurcsiCow(c=My|a z0&>^BI-;q<8B@nc9HhZ3ckw9#Pn|p>!6&T57s(9`757w0B=`Wi%waxf$1Gp-Q=Q^? zK_!vc?pB)NV*+TXgh}0>AIM~PFxLJjdIrturr}ktY3qL)XHpl!a`$erE1-(QOQ=+Wq+$> zbRS=%|Ec?6K5ouR7s7lzwL+MWZ;B8$Y{gUAuoX|GVJn_W!!CRrMAUJ0j%#z(zAOiW zwG#iv8aF9jC5OxojjjNwHXm%(!f{^3CwrCFO?E>?wwyoI^F62{Th0gNOEfBF?v`&& zRytc=-Aez{nPh3HZn>^mha}J1e6Yq2M?l%C&I3O8w!#6;Opoh6|z(_eL;taRcb z7@5KeiL&w3^5**VqHi~Cxg_cBdub!exsyF*ng!hRw&9f=uK@qRNa4!_N&VsPJ0ogu z{z=9k_l&22KXB3v@TW%VHzyqkCVMT+)FP?Ft%%AA-h1y*z`#lB9!3?%1|H(1Dc~cV zGy{CBku(eNbBq?UAaz>83C3E1GdGkJG#vSek4fN@|G&qo{wp`ZfnM38y|UuphM!_j z*{23lV+kn0X)l?4u+}goR8Iqc!rqDKO$Prb5e47QU7$GC?8{}{_IDtpGSr18)SPIz zUnF$_ulL+1fK)&x|L1HYfxXj`Q>0qI88o=YCd+l`%Q5ms(ReL??c>MR3{)Zc3@0_Y zx9Ln?K_c7r%}MFUJ0bIwwtIwC9S6%K9%rwQj}{7rjQ{qRS4j=S_DveSp8s%1P)EDf zeDJ8G-N5*w)C2g*gblpIXu<}h{dn z<;H1lU}_|vAv|&5{t*hk! zH5E|xJ{MnVZ(csKWO<(Ic~@?iG!3u++}Wn6`YNBGRX6aFBuLAgA4z&_<(8E;Ig;cl zlj1dqlBv>ahPlehd99asni&2rZ|%aQy6DLRql{FPlL)xP;I%SID}9eJRI5$XT=1Om z{_Q7+r}zW#G0%lG2RzY8x)7LNB=sF* zlC&7D^G0u-DImsIMN^fgn4&4LR$wGGQ+n;z!)uHUg=tEQ^8EQ!BG^k<0HIqPWq_v)Oiyi6a znFPMnNP&^mE1hu`h~)w!DU2ss12LYg*nwCs$dbZ%!U#<5I9b?H`k(Dh;DX<@fJaEv z0Tvr!3Z;SfvS`$v+~rYA83|BVri>U9mr_P7^+vOl(l83uR$5+JrBQmGvMZN;gXAr! z*G&r@>vhw@Z@XSHpOmjBO8;&_y|!=bSg-Bde%tkGcPc`)s(pGl>&ry2GVrc6NQw@Lu90R1jldDJfnMG`?Hq+NtQW1TILu)da}%IfD}>3#*M|W5~!4leo>#blm#u;$Xdb=7Pgte z5DaG3qqeV@9PZzVsoxx240pXIS5^CXM9C$-_{$x7f>rrR?y-u_GUu_?tDTQBh}P55 z3XLktyGh=)`KJH$=gc5avZw4Kr|%W_LC;A#5f%~$B$sX-BW7H5jJn0- z17$ZX6s-`bxs?L7n|*{=K7dByY284r=&gKM%?%~P6`sT7B95a_Fk)r8fiaV@l5%0x zs1FJyPK5GeC$FkDQKFZe6_2bUfRsxX2YGqwYmK}BBA919z7A9IT-7}M(fbwMr{t@2 z?X`unL36_Sp|d9$w}f6^g`I6uH70q`I9-E9O*ZZFxna|HNkxH0IlA@yR@`NAw9y0I zi2huw)N=am67td$b901VOYMiAmFm=1$+^ag=Sp{XWy@{fnrzyJdG_hMq3TGYrmI`~ zwgJoQaEsfwR*>bi?-KHz+jptztgwAsJNNEnL;6AXlwFGR7f8_TvaOuASY@XO#ekKMbk(F{$tN-6Y#NKos+gLk|2NC)hG9}qG*}-oV`5G zo^r;PGf5w58p=UF61ksZBF}dH#XL>+m3jl0eWd4c;361(I#s1C)S)&7>lNB6V@T6~ znXN|7@Ks4swtmxrsp-GgG@Lz3QwOG||3TAmnQJOW(tgv0seid?_@Zmtm^a$0rUO&I z{}t2l4c9bZYU;qGLbo*?`@61bR-7O3MQCyAqmF-v6-lmc@-=SFVYFmtS@!3}Vz36@ z5lPCK{%Oh1U6G`I@d%qi$=2xhZLGGFZP4x8(mWL}A$`+AMf#?Nj?y>Oq;IH6w;?#! zN^P*XoK*vP>XLfe_Y>If5=QnnSPct_1u@4@LIPgy`!}kN6vt1(2xMLs@+D>v^n{VU zDUP3n1mx@~$dY0YL>Tk>@2cn6{)aVQYTluKhZ%TESfahKg|g+wP#V^tMoP=;qckc+ zIhE#RGSGg{uXe(yJb7U08U9O1AzG?6~k#rk7!<@0F+7bLzKk}Raj%pTZWm@H< zaTvtS?r7(jngMu&A9ofbQnYm^!8FD|oqw^j%)+^c^|yv|pK)^8gLU@~0;Q=23JtEg>G*wXYqT zv_1IM-uAOU%Njwm7}X_daam(f;}?2E&jLr8v>)ONKX;^E__tI|>L&dKh_BsTHK~Y* z0!P(p5b89LKW#ew_qSfB`IXmczDu2wVLN zzZmFd^FXI;M7pjmH>#QZ+$|o^?1W}|w*_2@Nlzbmc?ri_2QYOA(Q8yUBXTSm{hm4~ zVwGQvv{8}fx+T$rx}}ke7NJ(P8m9cC>Pc&*{K41azuC>JozP+oq&wTcd>G3u z5qx6x0vfLg=1e-|Jj3eG>_qferVP2Hh9xADen}rhLuKbk^SsvbWLhJg94AO7AbFnh z@oDQBbbFD@nL_&K#`xcH?gFIG$Ywo5ElyK8Kw2|k&cj$IUm&^t?!)J6ZJt%mlR9($ zS&g$9{JssRcEVxvX`B;>kElXSMq3AsEZ7V9RO1^VNlIl(P!liCoujl98 zBZ`Hk=J^qmSe~Tji9}){@}hMrT}|`+wB@-x$$o>I#F1D$zZi3?e3x|OyRZvi)lKhj zQ|^cR)Vt!5N7~EHqnM7fmnSUEq`{Nb#sfV-`;|%Vqf`nya5QcAI6p*?F zMp9HyGy{9CBrvVVq}SsMUXMxOe>-UgNM*FdlZ&LN zkK82yQklR=iuwp65D%1y2~2A{>fZ8SS>2v&<<$5<Gbk{cu% zEma7O){6?EV47448ci9cpwN=3)R5gIVHZRjOn6Arn&A5xO?Chd8+aSjgxXBhU{urD zZ;E%yDP4nO?&anuGxv6Hg__m;^ls*pS_d%s$RrLps#?LIA2Sd9mUsAh%8mca-2$2n zeU)2dEDz5&o8vbUj({k<*|6s%AQV^|{%EmVN;6BR5S8|QAU&&pupM2QXv!+XQ zwqKb;JwR0XD)y@vri=ZW-WP1x#D4X?q~0fu?c4SgHXxER87!|;wCf`|bIj$nnNV<@ z>)ZtVsgVYa+|44f!B<9i7H^yx(`%5pa^OF8@Pc}dVviAPQUM9b>AZlj`X{iXv`um!WfBa)GwiP3aYDKK-v z+6N(2oC}#Xu?j6bb>PmG=`})n1s52n_0XOv0Icw!oS}rT; zb$Xpn{(8Oav%rBo`rqwabeCOv`xC=c;sfvmC(QugXr$mPr0%~J*%{zVj1(A2{i8EZ z1D`YRvcN?n1zA!*jf}u29vx%@BdHUODsvIw%bYX~e5aFUfZrTaN9syvoCfauXI^ID z5k?9{A@zq(aYo?0kpd&B4?NWwfggKXS~*gC9q)|5%|;3uNzFz^;Jb$yNqsdk0{47I znl-8C7**^FJa>qZ)IUT<;QNOdNqsglR-H8Yh;-?uQ@AP4rS+d$B!z#;<|+_x2#lm~ z2w?=$^nsDo_uLVtfK(tb*6KjH_xHZE5ts^B_c^Uw*VM|l=9|LZUGdi28ltr+Nf?@wDxQ*1rgDofuGUD)AHPjX%NGWf_yI>z7$k@RMR?~0^{{b|r~ggr(5 z3#?;o_dc`r6;BUb-?67~;of+!kREDYbhvxd)=7h>L{e_W{<`*_T~6i>UO|t9cUZ*4 z%o>%k^P1UEVx@uC8BH7vcwdi$vqu?xN+bb~chWSCMle+U;ETN>XMvwFlCpuXjBG&S zsIq}?ifj)vADD5+pDknTZ0&S8tNLwo#IJWy7?M};zB#?$xNid;8*nqUVvW;qZf`y0zUzqp@m;fSdKw^pJKrs2w zCli?F*4S`-M<1!@jxzY{9*!hr);H*6$72J5#s*D{b_6I zPsMnsk~M$o>M41!8PgLS?vU~_nS{~m&palMa^M#mO_prHFB(Z2{mcat*h|X}#&9ho z3Fgqs2&NCWj3nr)$_S>oN~0H@nGFA6W(zVv0U5JYG>;HUqkudmEClBW z{}L`V#r=0!i>Drh1gD8lAr15!5#=vB8CnBf|CMjvxWJ}d-%5-EW|}1x1MZg0!oYX( zS=a=Sr^Hs^)rlndr%@8f*ea61J(8#gzN68kPXO=cq%A;Vq&Uol3nW+zYde5>iaH>z zE0qT_2UJNgb3kDOe$D536F{bgQY#?QRh5C63$*1WLC94`@Zb8paRSK1K(YWnBpL9* zObn&GKw`CK0A_w51_2Vjl?}{XK{EZ4W%ddSP09xTE2D|Fzct9rLfOC!0>Z`^@I+t5 zYytj@k;F)sEc{zGR;W5+->-erG65t4itGgoB=)xHOKWweHN-_#NI1N;O=gq^eo;bW zMEYey1OLV+LKDC}d?K_7$Y7;8fZu9tZGAs)i6d<^Q%3MpeT3Tre2bCVs*(7+$Oj~5 zw|s1qyw$cZG!O7Qd`n{j$gE#H3YgBLz>o6<<0ht7>~&}cV4k84I4Z*TpIC1JUY2?&iBBe82L2!SvKb(5q*;Kki7s{K0txoAlo3pWN|Aw|OuPd8FGg$K zhtYb2HMr^nGkuaC4rF*#HZUzNY)SjIP=02GxpcF8zaMZI*^=??!#1$6XR68{U`-vH ze?t*?m5=EzQB-NQP)S@&ed0p%1=>hu!9)x_+F+%`{7Lz4v_@f~sxKRUllGLR z2D1Aj-$KFk>;RuAY+~TO)<@Y*Key3vtqnmU$oAQvL=r>W$&vJK8;l-kqlny`J9A}j-& zH0SHAIaMQ=c4-+&5d4%8%r-*HNP^C!j9?nGWh9aIA~3zEWh6m&QjK7`R?A3&KBkOd z))Fma-r-szj=@tl9C|%Eb)W*2Qy#4Zr#G z#Bad3im(Ckl$zHFTNj@Zwk{qcY+d|C*t&R&u;soYq`djZlE|FDtEWeK%CnN-1Ac)A zp9vtIBEEah0)gheNuUAaA2K!oZzj;3(>2hX(>2hXvw*`e-m52o@shSGBu2SR%h<(f zTE;GJ(=v8(oR+bR>$Hry^R&d=C06U+L!+OuVdC=zTXPBfg$t~Q*aU8g`81~`KG61x z*qKusgCB46oR%>!LC9UHayzD3W#jq2_7umVU`)bQb6zf`QO3Xa8T3S6Qf12vDpL*0 zna;=ZVur80h-RWR>D7h2RO!3CDCxUA|MXp1j=Tb+xaA;^KOITzJA_+OJJ*)Ux6ip- zPcRPs(U$NhRHOZ7#H59Qpav!$q#Yd`x2rcX$zblFq6`3kkVJMc^TA|l$R37@g4xfI zYbuk2VqZczS@qF^tyi*~WAi{6^Xm(eGy4d~Co4BFD+0-RW>9!&o68oPh;oo3tn-6K zQam+pFjH9J+&owu6`xpWv>B0LS3p&Q*&Gm+TLz1y@WG@zKx#FTppS$Cks=T7II1){6;E3Pkkr1GE(kQe)J)F!y7sPoYdh`zqk10QE#-%nc0n**G3AFw zmsCrD>7FS+H2S9UgV`}m`Jtujae6BqH06huc3Ln!HRXp!kJa*k>2N7OG@i;2rYolW z&}!2MdSuEEjh?Cc!E~aOA6nY6z)Un!erR+a)eolkr2Nq6MamDRN2UDG=u65ErYEKR z(3ab~=vGbh6I-<`#;t?gC=$S^H!C_JF}-?Zj31Q#v`C5>fsVEab+SDx`&onL_=2f& zXBbUSaZSayW%nCiqOp=)Z_sPl0OP5KXMZ3#!??-ejWe1hUWahMfSSZoGN! zn(;fo+;^Nqf#u&eO26I=z}-0c8M~W~4HF_r|6(k%$xT#b4@*d{4j}PAS1NliNOEIN zNC^1ThK*9%FNwyY%%G6Fm~vkg7)w{QxcriDrF0W0i=`{vpl79fPi8R5w=~oWOUFc1 zeq}hzMZLbvW+Uak#`YAI4gBx%)D0L7Q~45Az44Z3D;MR-mFIYKvbfWEeX@=wD|C9p z7T_RTXFnjWw}EVe%k=8}1!5ly>Xyh*&Q429tZdJnzmRW)x15#L@c9c2V|34!GaqkS zA~A<3+YNPkF-Qno;pvTYc0wls<>WF^54v;98wEg2g#<{WZU)} z$5jII>gMQzsZs_s!Q5-Mf~Kd2lH%I-+8v3{JwYukE0yr zyX{4RRr355Nrp1K$ad{NU{9$oPWKnKR1y;K4Mr08*in4Fkrw5ljIy-oEh7^!|Pei^Rg97e$ym5t{2;W*z)?6 z=UKJwcUL4C!aliiC@W2W<^m_^-}HPZft-Z4e8I=!zv?0~g|y=A6qTxQSM#0QyVp%q zjO)FG)z-Mx3MCIQxl`;}|MX?Asqj^P^Q6l6^77NLC0}Ja*EILf3MV(a)k?#E4=R|- znNM>>!BmW9XuNTs~d-foc zIyp*j-?rWchuhh+Qoto-Z(7J@CFk-Zs!K@UP?Ijd@p}pBGYjczV>iv=S)C;o<)y9+ z$-x^QTgYxHWw&6syPE;4eLE<8LZNVTsc>^eVfkfy8Z7>-P}ikyD*5ykNva3pJExll ziL+Gv5ci;JoPD85EKgGNMB=rc=jMl6UWa*}n}u=cPwV*?Cb2xprun{|7F=h~s*C)R z>!-dfETX7PgzV+*mu8aXzrAE8D*M$u-|EsuX0`=4w-M7i%%GZ^a%}zKVUTe3kZ+ zZ(z;xt&TPSUNBY0n*S=8im_(*qMDUZ-fMD$i7l#wX@##kI9K>8UsX}&TWP3X!(B$M zmQ|UWhIQxbY}F(ocZqdpaHZjYb7}dm*=rsm^SONC3Vm2Qq$)bTxP*?D-ciR#m(bDD za~-{=-)uDtJUK4Psm42e=d0KkStX*>01e_SNb;=uPp{$N{Z!9$vOG^Od{}k`jUPE_ zweyO3O26Ut%UpeNsi4=q*j|ock{{49ro>IoDKhLeXLe(Izp-)iuVS6BU-vLuadI78 zhDf$Qj`RJUEx=?)8~GdK{b;Rc`WKq- z!zRn;qNJtIT;M32tDCZ04&>mi{-=xg-wdD z^XYWOF|NFMrl#3yhI+CatQcyvh70zZ`{!bY3m5jZ(~mpZvn7_cfr5@##jJp+l@>(l zUHoWe3y=%qZ9Z)CzGYPAy}_SbW;`qYrmjS;LscO`{*}337%q^GjJKf7!Cd=WwWza{ zn;O5}Ei(b+xU<><>hQU`ArqoStWR6{vwyi6kY~jo#~MCbaG3{<@(8G5U!RK_a&CLs z<-vf(!e-UDu05J&Y_)v7oZbHBsTZNd588YE4d}%&U2d&7 z-@|SA9+AhIb^T^-wYD72Oj@nwbGMYAiJsQO%Ic3^^KcVL1pTc686f3i3U}x~lzhSu z%u`&DldRvf=wHhc%`x zX-uoQjG{DZ$1|mI31!f%*?*B+CkzV8$d)`C07}E-xhIG}mJLzI>e~^nDuSyCTz#%bW`_i!r)I0C%jKKTdFJ&Zk#RHuY_&p;9bCJ3( zG6H`-#7OGm2f0Sz4~!Hvl6w7voe}ssBLzlMw|$5+0`Fj?z)0%A$T;MtX(I7+y!TV? zy;DG(Q}s`|t1h^!P66@6z(@*bl;Hq~Hw8vgIFv8~Y5u@S>h10fQ$T7P7}GiyxKioY zd!;u5Kj@?<06%RciNj|ukVuWQ(T%g{#@PtO99qJSi=?oK-1h=vj=)F?iwGkSa|A|G zSVS0ssd1{`bBB!*(*zP;@oKlmBrvV`q*r{qS9}uqUMI~0slAqbvSN$Lnk^<5OIu9V zY%#f5+F}x0?CMct7I^)kp-Y9*kh;|a=xDRR)Q**33h57B$8Xk|&4~CqZNg|f%qB_$ zueJEC?zIgIU2a5WBv?Ptg0<2x$yN)bN~8AFPic9rlt!!bl=06$r=zr6P=RxPCl&C8 z4>d~sd4shE{X2dYJruh6n&t(~!TUX@*>@2NfpDF6eEG!`eFu#=5I(+bzor6_=1#x= z9~wb376b|rBl#HuNVr9+5E^|ZDujZQq*Bo6Kv4<`Zj?$vqc=q&mrzpiB1Ti7uKZGP9;Wk7hA>{!{ zNHL>;!of|ze`W!bjv%8OkgUTnnCE`8gCk`MjCrvFH7{Ayf0UKya39=?U8{c6fvM?F zn1-oQnmRDGn{GYqbe?Hbm&vWKH0rsljdHbaQr9TmVbiBW|0y)5@A4edcey?5IgNH4 zN?viCu>UBTxH<5Z#BH$93LS*(>kd+{klfOc+ZTCr1Zr-sK<#EI;guh}sOS}HMXyk+ zdIQmI#&8s4JQS>18KAIg8vZF5Lqt>vg+7={KZy~vS|Rw zO`E>U8@Hw_89?ZWl{nC9@;cDM$-;^ahB7{OUQR_<)tdM!d6zNdynm!(8{uroi|Wr zZ#%f#TTJ$1-+7q>qE42r=Pl$4TVkss`KLW#X_scXT6H}1e%7hzps{gT)VUK*sDFiV10N@vT+1vp{TBxFA$fu%qG)> z7BRwcMq03^kkGfv9i%v~3r5&nsykst>R2AK8f70x#&;kaIK5`{CN5hJ^$~y2kOh4G z=AdGVSK})8*h;Q+z{FjKpZ{PU@-cgkHP3Gjy4@m4Hk*3QW+3Hk=gey!w*NlDKCCmO z&NYq5$vhZ{iaR!g(|3gB-ry7ivVncz0e9;)d)=ncy0&3Co@{5Hvn|iO%64YSw)^gJ zha}grM4J5R2y&za~3mf(IvK$sw70eXEfj501fv5y%->&`647 zFku8(Iy=fy_jN~|1wJToR4`5~nF8@)%@iE{*$)nJVvz)HPaGADcM2O2=hO_q z(NX=t5$_a9AkL|hV7ybgZ1LB;@29Az8TRLj-tuyO)=g@EoN6il9Mn%v+ zxOa3-@Li22E6J-CMmgszJvz?eoH1a|)tqybC%)KY;atrVYi?KbF&ql#Q9F-v6^3G2 zh`-&gsJz#nD*7SA-?68#;Zav5p${BAYVPmsdJ1kNl0dvjGpM;wK1_>f&3*C+wp+hX z4C{qv4IDKGAWrd=P)fL(vS!uNfpG&_-veoCWuvV>mkf?yHyr11n`nNTT19E=w7nR; zu%_}clF(O_mUkAVi z6BzF)-gPzs3Hh?uko&q=9k(Vn3JI@f5El}I_t8F{PcSF_Lkp9_g#!}?g_N5{cNXGb zSoetu`C5OzUNqd_YkqE)IWn1#z0n3eYOHO;d!FX$LNzYM5Z4vfvLn--bmnw2Or8iH@En8Zn2814|Kg7969{UjU03C z*bNfI?ir+hpFwxr4aV<01s=5e_wN3{&Wnj5+DHVEi;|86W`QG-8hCxe25zk1>6WEI zo-zvoek7Taf_FqoAhT7G1YVO!f`1YvfxmXr79jHrnO9u6K!Vw<)}B#>c9)t0nawI2 zqX;91(!h&8iI@N~g_Sx0(^vy0=7`;Z#9GY&Oh{@g!8k=6QbzEjVh9Ejrlcf5qLoU5 zKkt$=z{e+ZT=0`Tpw9z|X>Eb+HB(~A6!mpFnK^GN%$-Ub65gi@gj=st)`un`yO1XR7r>UyM!wiQDo~Ev5@GL`(0o zaDADDYRv-7)J#NygcI4)05Y#vNdox~Eubq6+_PXSAMOJlYNWOfBpw#|fW-Tjj|4$p z^8o*y%gzAbYb5z%%ky6!25m?T1rh*(%N+?;g*nuyut+!@dX5Tok4~Zq_+=hCCV`)h zOOo>!NHAeiqYygMnFVp;c#8?j2VU?vF-hnkI4D~_0aIE&QIQ5Ze}U*Rovd=f#~7_; zBtaZejo>7voWDR!VV=`UlOVXLG?-A*GLoo80;YW}BMG{gY6R1bT1Gk&y`m+ONc#hr zA-82DfzN3+VEnIT%%}1#ambA%F{V3-!T*wbra4!hUatRr-JDIj3UKGR+NPDdnv?`b zJ3MhTFuo;hKwPWlX2O;`nUK1;n6PzmFk$QBUc#0;myo)+mauhkEMd#tN=UhTjQrA{%!Jg9z_?h;NMe+~wT!vP zwZtwy*D`kTx|Xqv-?fan=e5KxzSlB#@xGQZ_rI2yd*EtL+*Y+ek2oGb7u#;|jkC09 zno*&wHj}PRn;C7iO=*?iOJ;;%rhzj30Wz&qQRa0_;*U9dgnv>T_&eeZ$Sy=uS`K9mjeA9P%{^`5CzCHSlywDFg)V9M{+tyTVm3>Qk z40TugfRnbpWP!x1Y+a*_;M3!J=8}bvTY?UvjPwvJr8IEj7ndxMz--D0KGhZ`;wzUd zyx9_epAzvVmKiDyCd9SUByfIZ?Bf0Xq=oup!<&k<=I^M5c64o_9k--~c64o_9o|B3 zk1e!gp<@f}SXgNbwYy)|6ayV;;yx7()clTG=!+v;=xpm(a)Aa&PZF2?;w@>kFOF<9 znxxHz1ifa79`wZ(w~sBlX^YT0?Jsu?+G#<%%GdAhv0wAb+Rvz?S}>h&g5$~FmQgEf zrkh&pQS;5(l;h{VKQG6nh8x?nlFy&rbFfH?-Fq2vfwko=yIUfB;9!x|88)+#*1B+k z?JJ(b`q07RUN$7}A9tvLMD|vi1d&~&?>8v6ywnySGEK~fT5-H{Xs{>2Q>DQy$0eV; z4}5XXd`daN3>|Ggj2-*i#6}sx%#=jsAp@T`-8bO`Gui}Bh8ZTvZAK)1o``djk@g2d z6HhG=n9VH7=8*&6+FI@~Bl`mRpY9K^Q^hmiGcfvcI|m1!>C~iaFQLb90-EZm^&mE- z*pN#3p>^$Dbe>cPv|5M4&r|+FGFnXv^&(aS5p%1&@!nljG4-ZBo20 z*=pEoxaM`Vkk*2hS#C+2=7?;{F2_K5@78aq3kwbA^*lA}@-oW&*X;=L`+k%-Pgmr6 zo@4_|ZtCSZ_w4I~zG=sl1Ot)YX?d*OMOQM^h^N+!+-~$k(phT6QeVz_$};zxADhJT zB-iiWua*NXIE!3RDKl-%)}xpPTpi#kBg>B}U+3F2d)ry(J?tqL;0a!P`bk*j0({f# zvm!}#uLqmtqwOh$yJ~?guV=;W{qmcI)f!JQDbCBs^_*Oe$hi@5oHYsb+=4Q-lVNe2 zX*tWD>IPt*a?Hl{jzi5B%9bk(AJRqPUnUB{6@~YA;})O1X+JTQX2KlQY2-zfwNzb) z%Gz+q84PWp`q+A`1tc~Yl`lUpQ5sg`nbIC_6>q4Cz+!ED89rc$Rd*0+Tf6I5Kcuut4zKHx67EEacI%<>Xj^@Yxdc_}LO! zH{dTVF%OI_k@+Bzu_Y1)new*8JPx+Re7CVB<_6Mf6ZUwfnW$x~+9Q|NbS^EwWpU!u zWgyNKK<}vI$xG;H=^b@!UP4Dp&voc;Ts+V$@QCOvRO2|m{!k3+`WqKm0S)4|Nb(d? znP;!zuyeELIa!`fR(|8+NaIINTJ8K|8rW}m{Uldk9OueZ)LxEY>NmVh+@$Y$Ar6`h5K)V|b}OB?|)3ZDX!AgS==(l3LfZP4dn5lsa7H7i#vj zO~#g(=Nm3dz0>5lVbprzw3T+&OFao>8rt&ZD#K~i2X>}PEhS~+YKq)w;2sDitz2@@ z!hGI}vOLLP8DzMmAT>U3fg1sT6fFa!NG)I8GT*b}>=c!n#Y=5yf1MBU)9hQm+os-2 zbip%LB&m76#U$Sw^L)SM_2JQZzGFp_n&-tP`T3aV$1Sga9G&N-E0P>*xDs$XzY$t| z$WtAxyh}Qh@7+~C9;&O-l}T!sKgNp04OO|nS-H|FjMcwaoAlN3lpvnDeIq@HBXOk> z< zsLwySOH7mnFQy18`6iQylGCMRF;c4J+q2e^w&wf|%Lqw1^FKa?O*@MlmXcMU{?Lj_ ztG(f)E0R>7#xhr!hNPaCyZaUO)I2|963dg+JdsE&L|(K`rSEE<->^KFC)u>S7GKE@ z%481n1PfvDip~V^EPGY$Xj+t?*qQJuzZ$-U%Mj0S!xcZbqLRN{kz~`%SOw<&?6Bgw z&$O4%8^!c8d->|6ne_KrI8x-POW?|_CaKcU-|D6VlS=%+vj0ge28*M}C_t8!l5ne%JiI4eJsDg_xo-YR#3J!QZHQtozO%nPlu zr<%-ZQ5KlUR)*zqUh|Y(iwws9#MDNnVo2L%Jy+{^N@2?-k;d4)EG+F4uYX;&Kv4Ue z7~IO^1f3&2#-x(VV=v#vwXXNL{}jJ(x`gcZLRQMXeOqpWC8Tfi>q_J-(l-@z5|!3J z%KnyE^RF+QYGtMlqT%a>TJafjV8m|ug5KeOkIF10vwd`it_2fcbm%6Fs3s)qm{)(r))-=d%S=#I`+~4ZIA8iuLlhizs zz*8hfzRvRcYtOS9BhRrsmnYe8^5c2=&cVtL`&Rk3mtX5z<*WP{a>-YXj(gj6=s)yp z(M13fqsiZ)#=t#l=_D5}aF6->>1WTbwZx4nF(|43i|WH;8Gz&_o^e>o8-GH3}%N5)%F=8(lIs}^;Z za#Q2G`7ee{0Qolex)DTUscv(ruIQCb|7B)Ao|RD88>j*Km?Te~Vs`z&VyJQY?{)NA zcY?x$dksuC!Cd|*Vt*Acc~;tgb>lBRyJE81GT0)QFgOuOXLWIXG?ss6@zo$n$g8tXg}L>6E@C=F7U1Tq9WQ@yES}8(BGS^z+3QQ~DfPc$fz$bG;{5A|Vjk0Lo@%?td`P>p7+y8bOP&>`UUPwI`iMQ3aEVXZ zYd!)lx;Q$c$QAW!|L>dRk7EX0J@^l+WF^mj^LF!9&fhA%V&F{g_Wo6L=YGRWK73r! zqy=62?}TmYhD|fKJv^nnz|T5q7I??g0$2EwI#Mq*s>lLA;iOsMjv-l6PkXWF3w)uG zLMEiX;*7JvU0>p|zypjFWJw(w8G+w+(k$>dPMQV|PEYH*v=xWnVAB~l;1m#(Y5ArW zNj=l8H3h^zfsqs@l0g-SF#;ng>>-Rmj1d?~J=!Zh1;ieKkrXBojlk48Q`PGM!*mX(RA?PI>}xyOAX5T(Cd_3kHRx_I9V*2)w70o&bEPlQsge zzI^#A5YvYoNMU{1#Rg*fz(@+~3nLKI2S!p@Ul@UDLyY_lth@z0O;a4m2D#F$u)ZT7$_&Qa_1|KujGNNgd&ap9G#^q`*iDYs>yE@VikK`0F8AQmefO zOaf_>kO?W8MfNX%w29;k{9#lFOq-|n(^@)W>fhNGi!rlK2f>$FE3_ji_J5jHNEwNf zc$v~DIewzFkX8J*?;k_znEg!)J2U%%-(>8V{q}7;GyCF3Uo=dDzF-YQ6pz100fo4g z{Avg!iktq%2Q;EsR0xG}ApT$%6vEuv_NTmL7}<9b62VS>uj>N+EwA<^M0#IZ4rm0w zSPm$3#aIp~gu*BT1-FbcQ0Sa#8KB{~Q6CiCIF*7%PmEGf=#Z%tG&)3-fT@pPs6ryq2{2bNok zRo-(c#TAJaz*t5u-(eV>L8}HPb72FHvH&e|Z5A=*vjOCCm=7}Z*c49_F5Cx)5E43h z#?AW!tX}kJ8F_((XB{avdgGB%ppqAkx#S2>&i?H0Z8_h;o|T1ozv;jvyTjtN)ZmBePMwVbY=Rw3tPEXoaF@SCFCXa=0*u^UzlTwO0BS!gVP*oz4=M@l!fMw1rjvA zT=~w6SouI=Q20k#5R#xqJVITYN3O6X=2ezPluGNrsHJG?kKmImOW6elzR0U{(zZns z?~QzU?v)MHUh_)hKii&5{j3({ARnpnIVSRE&$8IXl~0k$&uSt2EYIV>MKJpG+lnd6 zyArLL`&79oTfgbR)b#If8Xh!CQwOG|f0=D*d^T?1lNUX%Mx|8az6ZZZK2+%-g8Apwe%~xK7e6d6kN$)$a&enWTKI-PE!|uUzTrcVW_|J=1(<(S2u{CE)2^q3Vg;Su2uU-LN+O z#`ZR>h#kspF)i7*?frH3l=BVNtIru-vhS@(a$Uo6GTH4bFA7!J${Rsdw(`JjoqqP& zGv=U2*5N>`rSqWaMOyp-^MF8AYo&j3oSP^`gW4I)Q!>g`)|z9zX~#emPIgA!6oCg#ERv+O=M4lEKsLeppR!tLt)s{$#w40?$xYRr%a0cd){)*w`vJ!{#oM7 zI4RwzR$8Uy8rks}G;E%*8z~beAbX8+@&ROrQAX}~;KG(ym_D;3!lt_@EOU?fBHV8d zUd%<6)=gHvpTfE++16`a=9^ANa~ zZ0n|M*D2bSHqwGjEs~;{a3OBHOaRB|JgOmiwvEqle$%sG}9T|#I1)+>&EEseg3?5VhL-N|Z+#|a4o ztUKEUk1}{_B%N#U^O1DDL0m?3m3~ruR94JLbvzVYVAZ+UO*r@YqK0$S@DdLRbJXyB z?{srz!_QG^I-ji5s5D(gNM)tx${Nm5!%uooD87USNBMYBtF6@P1h2wYYDHCKJ0kar z%7)si@$j8{+GI3az$qnn6OH-g_fJ*?rGaA^+_LXA%PQNa4dYKr17l+`Bxc6PlnspC zlO}k%xumk4XZV7Iw!<(@rF`J%vvd2JH`0uf!}E=V8>=MvEAGd0KQc&bizE=&R>{2O zm3EbR0sU7*X?>n!<9szr+A_;)t8XN21-{x{XaX3UZyvb(=9}-6d@G4L#}+NsG{<_OXeCYQg?bNxBc1$%9P0fd`lis^~)u z*L)8@s}*#$I+`9thFc76k-1J0e+!jrWltNlsUG8s=0o)e5=sN}6u$?4F|iC7pOvi_ zAj6bu13%M;t_k2PoU{q}c_XPL_zGv6__4wDNo#;kW%>&b} zl@B^vHX`GVF1iVLD+_5-4q%L*o61<}V>I(U)eoiv$}aF*vhXRSJW{G89`;y|ffGQY zr>tLowD3xM|GLPRPXpRUu-7r9PS64G~+&h$pd;Gh5zX?>2Zz zBmtRUwz-nPvs4|f_0q(Tz<=rPHUVUbBQ^ozZK|z{yRB7s8~$Cj;BxMIqa3TN$I$Lt zDjJ@kpfno3Ym3rSDm$vFYPLNzu`PI`+jcV$v$t(U0>jJaZh#oRCn z3?@EE@B_{pn{0XjYwp1aqXi*Gtg(*VmUy{7bE65j3JufqWs?gy%C%%BKoF>T77<@_ z06)$>YaWP`hyj4h^%q?r`SeHKLV7DLoi7CNV85~3n)E&G zxl40O{OwJM_wg(yfJ~CbvzbKxopa3tnK(*uS@^QcBZ4%=-+Gsrpaoc{2p0wBxjS17 zeld?X`WzJ)QrBRBk8UtJG&AUG6M+fWVM{z8f&-O7nEur^u?>y%HR0TI(Al|gGzQur zO{&&0m)pJez{0*X`dwQ%Js`;KoWAQ~?UcW3ht6%D>e!i<4|e{RO+*O%W zo=RtzFC4aLLxib(!b@k?#AZf+*`xC=Ve1d<>35v_96yxt-i15YJ4 zo+e-88P2@hART&%(l^boEW$+D31r{n>L!4w8*iSwX8g`C9~xQJ8exZF!EC~wy!;v)M?wPfVtP;1?N9MrmL)OmToI zyHH}9JX<;GBv+o}&B@|U=k>`tnyk>-^w-+Nn`xX*NwdFx(}78QPScdTPMeuTvneBi z1jwXA=GEo>0;%rKRj5tJ+Jj|>)RqbVk9{&!7(nY*?uyOjgIHywS}Uo4r#jt!=I+e0q!?_cG0{^t4jNboD~;J6Poircm{%H`%ZK`Y zL-lN++)18ega4-<5sMA})pDLS-c)K<$+d$zZNPH2JXcPQi-L$?^J1G{pKnjT=06vQ zt}^LguVM4+KYXTM4%Z@an)O9?W##aX)h2yeNU3VY{e}hec_v?RL>*hcZ?DMuhQ4oCIWp>QO+m9XI8hhsWiTFrQB*>Zh)U#O$DOtd|pwH#Q7NJB8uO*Zs0!KU4SS&^h_ z+Wwmmq0g|V42r;S8%a;pr;DoAg{Nx5<%hHfyX=zW{dUVpEeby0%QFF_JT=413Q07U zmGSbRH{37CRn~7EETz;flq#KGtSK$+wq|TBDJdG#sza0EKUZ0+x)@RvzS8XVSJ7_3 zsBaVczU5p+*jU%^%UvQYiR=>P@(&-9N zT{HdbNt8R=a;C&7>aXo7eHHkGo5CwubON_HX&Siue>oTMnMMkooYc!BBk&_bjHGV!OV(lqe?PMQTi-bvHIlbkdQ{FISG zrlh_U8G&DM(lqcrzxJX5uQyUqM{0NPnzO)@j1(9vo|F0vub0@cFMVhVANsaC%nT5J z(440hN#PQ*+y&wffsxcT?nX1fYmL-zw(SkZb3`8yw+Z@4;W@$x#BBm2DLhARq5<(7 zkp<#5L6#IgA&fwLLev3i{UA#U2M}4{H{2JdfIo0wm;uuIK^-X^K-2+KUns{_ZG2kz z2OcFh0#o72)i)0}!Bur#sVJtdFqOxdr)U@lKg!#B4nLuNW!?$=r8ob9i(r~k*dA(~ zpLP@y@M7!nnkSeh6E@&A3EQs>H`W9ydV9mPqtd`H_NJP9lR;WhasXbRXaoN;N&NRcwK+Z!}W0 z_E!8owOMW-wb}d3ZSiusk~qqf8R=A%TD~RmQJn9v5zeRk5i&^{493QAzjRE|u>?B) zs?TJM!7+DBLIe0tKCnyxwFAR?{KymAl*XQz{EVM0?u$i z;s9VqGszT4IiOHsFmeIRT`n z3K!l?NEK4*nTq|&b9hm|!_aaU`?SNp{~4afvwSz?D1 zh~JhWrW1DoZ*@nT1HRHpTY+88_4i3s0AK8mHV6EalO`@Th$Us51TNR8GT6!gs2Cki zucuHHGE*9u+-l9#j;DFsHRsx}_f{VfxBj!iE9|*Oenj@*yX()$KHnnG_85U)YmmWB zqC@V!LVB~c!aKb+CV&J9u@yc1T|Rf605UTYF1qAnZ1y1PfzNbO@f{>%GAW{tAGM0z zsy)p-zc>EyNAGvL1MjUhT)OUs<%ICD%u-Sm3d-DENV%kZCX_$zF*dFFZS|9yx3hhq zZUQFM%BI&h`W|cvkID(gmBaQJ&9Nz&%z+sS>l4us9)BT0_tvvdNW;3MrS=Er~ms z^I(T;(-|-a50(?cF{Vrn}n9XvCsSgNCv&38?hPeuFQZ z=-CzhrD>jOFC$ZtU6{DdSbMWYDK~fyw;Mc={>nY3*ng@NP)6M*S1Q+a7#-Pv9C3rE zl=fZtSd>{5vbik>5kQuQl^~%vcuM^fD2t^l%*73!XJrPHd`m;EuypYTPo9gqb(zgZ z%6(Thos= zNe+%A0I*2p6r~aqq9)`yixO`DMwNan#RiaYmAUw_%>i!HqR$cU$#%kuFBJxoeZM(n z4Va?z_+ZH$M>Pd!7 z$JqUvDI>e ztG&ZT)(`Pz-W1>vc*eD7G)b=f-BU2wT; zVPxP2sOdH1%XQg4Wiz`q${9JXIARoZk4n?As8 zx(RrEVydY{Qm-?r+?E7loN(|?3i}8nkU9rOQdCaD>x6t zO|&>0D^4?CbDE8drPIvUoMz)+n3`;|VzRlK$tK-oYrR*@0Wp$RaMDfo+QE3r5d1%V^jHV;XT|AjVL(J6ONLdxQ=6xAscez?enYfcTEG zfiZ)y0WpKJfpHRH%RNEn{aQhR zRg7gX)-1N(EXuw)DLeR7A4evDFY@Zl&|=?;B;Zetq-CNJ35GJ%1F4nFn}M<9#XQE3 z;PU3M^d>7UT`_(QI25Avnr2&b@O~#X`z}Huysd5Dv_B*QiE5@_x(Ys=~Vtj~2ghISbgdpJxXXMVpgZ)b>@#W>_rwg~HA-6wD>Xmzv zmKN=!YM}bAHHUw!k2w>x-(5U%7n@pImQ^Nkic8KTNju9hsd?1?e$S+0zMFw4Trd4- z!?xzYd)=+q>~$L-tYfh@1IaIwDD!=S<@&T(=7OpJD>KRec;u?=P<3F^Str%pXc_7e zY;Gl`<)x^}iW7Z*N7ybZbfoV_>B7bmEhz>@6jDu6Y1AT0dt*_t%=D%5aalg;FJvE-zgas%27EZ!T9* zS?vy1BgeD8D_8PWzJYeUP&R0uUGB)q&(&Hm+25W^*Q_acYaOKI8r20N_XuxS6I0B{ z=6*}bGf&SOCh9<-?w=)J#T82?QC4xelCRS6O`mDNIX+RWOiMd3wRP?@jP6K=B8HvA zl6fbXXT3R_=HsRZeX{d_x<`3|i+vF7t)ENpgPh6dSFWWJ_lSzSUmIXOdsOjRb3pL9=a}&v%$XS9*G$&ud-jNoy8K zyu*jgNnp%JGG|^zKC+3orih=~E`MQ)&?18q5QUXparK2)nrKhw6ELjC&TFy>iy?J~X4-c$Sl9_8ko8<( zr1or`1}Z6bPemNa;20RG1q-)8B^BGKI2K$h_t@4op=+p13))rwKh|5_bKkhy=gS8! zf~lsI2s_`!wyV^;A8we+Dh)jC+ge+JPfkR^*hg}}IF}}D-!;6(<}jKAR^Tb3kF?jA zLP)@)63OQoJ|&^O&M?-i^;-Fms~Al`gRFnJ#lgw&1-_rrqyWHZ!#Qkta#BNZG{hW+ zpz+g6k1FQxHG9bqT2MUJbhm02n!yEUgbk$e_Npl5c&CMz3Jb3;HI}u_DSM2EYnZ_b z@!#>L&fI1d*#g>4AN_v&!4df-i{U@Ld^y&vrUvZ9YW>0In3u}v1jJco{srWzlHfbU zrUBAK%7#tYtW_HL_pQAoQ{Y{kG}po7rD!-j?XCK0XgpqPkU6}N@N=FjnR~ae;pjY- z4M*o$S#XA*6A{CUkMA+u9GY6ade^i`zL5k8Fa{Q%2kw=04KPNRG5`3kWCMU)Ry5OS1;bKzJ@19PsR`tYO}hsvFlTQ#?i1=U}x3H^H2 zD(~4{Tbahv($HETPg({{2a@f@&-T3yX(W{f(_n#sgV@ly17kC>i2`)`u*R!-O|lcdH@!ySuf?sPCRQiO!@IDtfu^6o+&>z z<5{z3%AcB0vD$RcmdLom=B;XCp~$jVX$%Ev|G@i}J0{a-UuXT5K}%u?kT{w|B>Y-P zGzURQNNr`3e?lJQ5Y_o)JF1&4)fJQNyvUX5FL?~lYRP8FS#4701fu^7acBpUkHl{p zfJ}sx=tv+3KvC9@qND75X@~hlM+h>21Qste-~G zPFb1aKhFl?G%|FV&Z`v|fs(>i3L=a{fBj;rD;GqISyR9Hkd4HjvuEwsz)G&l;yN*s$tytkSi}@ zM#)s$w5)NJmMFPonDgVPym)Jh;?;64xkTsb9C773)uL<-f6*&Fdzg9IlszjJ)d+wD zw+qC*kziA@;_-uqK=3B_ui{Pt1>Iv0b?2sem_22a5O|W4=7G;KQW&2|z3NwYu{Yc^Ahq+&M3fJ<${v&?KGnLXAsn*pL;Gu!ByEk;J*^|uPu42-14 zyz(!IVzefRs+z!0-0L z7bay66N^t#F2bD7sKErFOF7@`~hhb zF4*f=+f#zoahHd-UCa%czRPu~>*u;8_T(yR;b=8-JeNAUhZMScY18e|*txb7=lF|=@guV%|W7{@u*?lQ`M{W7T}PkJ-+Y zc~sZ9pEAAVlZ^J!@P(vq)Q~;lT-&FJvPJvI2Put-P$oH2S)MvcDo2FcbO;HaI%`~+ zq&DiKt!RuhQY8W@L9OC)Xny1!* zC_Op@BzVf@4G99c50P0aOIYGr3pZ7pRJ9Sb2-8bQQue2tU1ecHAfi1gYn6Tj|ANaE z>k2B&^UMc@ru&sWWq$|wst1Qxx=k^?Nb1Y~kG(g6v#coc{m;F%baexQIINCO9B>&I zrWwb-7ivpZ|NG&%cyDzY{kiGBPqEGEbg!?lr0~0$;j!%*fdV zMioZj$NCsKyEZTa_kBXF5nC5K=6#qd^1QJ}l+6!>Y>rvzGom$1U#y8JK1_iL>uH<62yS6KJ=k!Pa^jWWS<)-*PlmCh6hpkB zHeCDhl>p(eIjoR%R{ce_!3qLVZKkECS|TY8OzV=#z@@r?A^A>{Fmiu|mI+lM5lF;_ zkkU{n+?WaXKi_RbNn%K42ZmOwn&Gw)U;6+pWR7?I`mGJ@#Y!jrQT2ohf_K zt6dGjRByAk=;N)XO$Uq~;WwpW|G81nx=jYk8YK|l%}u~mbNpG_Lj2iqEe#%WEH4as zZMe4K?qHmwA;&{9D0E}EArB2_qgnP?^M(E@zCmWeBg+yXc1ev&?I|x_QUgRV zZFqbYNyf2!n$Ht$fPATb% ziv791x-M_FWPTc4!h^ajpG$@;C2tpzA38s4#}v9#T6U)nE<~cWx z__Mkj(LW_!!;PBEO0{m@_rVr zZ}2jZy`R;pcCrt5wPRbp`#k#-6S0GKq(tv#B9C(YS=E*s46PBD{jK#u`vpdyK3Ih< z^g;PjTUwd6!emjk&#

          mbHlx{#1BS=Vk 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�o4%dnd>H0g1st=W9<;oi2MWL{xLg7z}qBAQC zud%}T`Yjc4mOn3wu9qx|<@?FrSS^b@JLj%g#4D9P;jg0L?DhPYEB_iobAZmr+!f6A z997R64_iU}d%7kN`Rpwd<*t`hxoKyf?O~$c6iMxmqF~l~o7!P$HU-+woLtPCgu8;ghsn+0SD< zL(4ysgTKp6da~$hYl7oJ_QFfQX}OO_Mt`RU!vHpOPWV)i!nH!B+R?9>5vb)>K5 zY+7XZHkz@JsrO2f1Quj;b-0~@O@1fX=HpN5@RM5|F39Ky|3+{T27;n{TcNiolaWo2 zbARCZ6Hs(C&6mJNKk)y6AKCQ>MSq^7f%*pM)>}9~2XeKLOEbD;EGCf*$koEWX#(FR zV37psLViU?cUSJ*$|wNR`tJU>GlgcT7&FW)?N(-V5%|wGUL*(1((WBTJ4JSeY-gt# zn5EsjM$#@_-!nlV5ePb%-s27-I_`5T~oJ}@hSP=nL zioyW1eN^byibX|%42|-uwe&PZ_bUoAW%skU&h3@nb0#65X7;;~at6F}Keu@s0zS)B z|BVbUBscRwX3PVgH4UhhBeV$UgSbvEC)5Z#6nhY8Gos&!U1PXeXt+!a zf0LfJKgj$I^vgyE|3)JR2@%uJ8=V2y9$-icbt6|(eylK&kWZmp zOo$e&KT>5t3l=hxuL*>XlNc%G28geOky0jqr=tK`%9apE3NwwEt0ArwMoKvj;sIf# zV2dGM1GVShT9KbPZiqiXa4^x2NgWZNN9I}J#Wz`@ zAq)$7&~~m8+h)V18|VCy|eQ?LzOCcXNJh@LOA$4h24hE!PqhU>!xp3IiELiqz<};tT#*b)qkX@w{=(B z#c)}rggY`tG6B-t`a?>$2I!eSC�SB4=;qKZyQaD#08M>}`!v-tl52Q>2FK{lzs0 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 PKi~_af22?lUFZJ*tRD{2 literal 0 HcmV?d00001 diff --git a/venv/lib/python3.9/site-packages/gevent/_gevent_c_waiter.cpython-39-x86_64-linux-gnu.so b/venv/lib/python3.9/site-packages/gevent/_gevent_c_waiter.cpython-39-x86_64-linux-gnu.so new file mode 100755 index 0000000000000000000000000000000000000000..c5fb2f3294f09b3d90759832e3b3cea412b7288f GIT binary patch literal 520072 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ℑEm_rINO0Y{%Mj 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≶$Ec}#UC==HAzejqkX$>>KG$-9k12PR-X-i$T z)9GAV$y-(0vM`!@;-0e&V%qQ^;-wp{M`k@AP0cU-3{exnY1Xo9rS=jW{Fo21Hw;YK zue_>OZbUX=Tgyn2loBk3@3-fCrT84qq!r>**CO`yoCe4$&&?0};KIV+yzlsXTMoDn zP@l0sWOuBz^rpHLLG^nmRVuOPejbrEF_l>pEs~Ss1ls|e>^p%D5X+^D2z3FhcDdlM=DrVY9H`VbbA<7K{iI_Q$iBPSHx-E>?z%)XgNE3GG3_e9*D7t$ zK4o3yF08mg8;Gf@@|%#-c~RM>kRI*>DIU>u8M1y_&Z>a#r-*8-n>+Yn-7^VFVgR8azaXAdK_e+-Pk>w6ff zeJ3yi8CUh{SYedcmPUEZNBLtu%4>lPVIz?mqbQvLZj1(WY@QlpD2%{(IE%mAN`~{n zHgF7$F0Kp@(XBM_+iXN6F1O63-d9E(jnkBdt9T_*lDOXGGxxzBA^d^3lKtWII#qE$m{hn@h*je}Y$Ds;kjt z1qr`#VAT?mm}8Eb<^bOdcs*b2n0pb;xQ>L9YN#0}FSw*LgMk}YpB zsMp(6)o2E9GMfAV?@_+wF!7X;8OMsOG-elGP#P=9UbaRm4NSjlB~%DrWlUpNX=%Tr zY-M?CkbcEay9mZVR`+6EOYP;brDXb6%B5#US&5vsSa0Ip8*Rc92Xd!RI%UL#!~|l% zg_Nhc8Dvt{FZoib_O(bOUC2fmi1KEmoa%3=n837@=0L3KNx#gerZqJtQqAh7EeP&o zcAsgbJT(Ji|84bW$MXO8J+xKreS1%cS6hoc^hV(b{hu*#;j_lDN*SJCa~TI$@JuEm zbyCKFzaHxQ-PJ(+mY5A0ckbCFygKWdSqwVv%(QX=KNn<_oQ)&tt_*J4K_R6rjgQxfRM1*0RjJlIEOCWcrUe(=J!-U)hBHjg`d{>j9Xm z_K-Pmxs^pp129$XRVLvM3rQM?N%||^WXe6>NAH7AY0@;H|D#G{$& zi?5}6<7=t@_*y!eb>I~GyKu&(x5AYw6H-w}LyR<$!J=e_vy-fVA4ne30!YG0T0mx` z3OOKk;I7Cc{hTR3g4r^cg-=6G?P#c}R~u^4v5`yhpKxzjU(zSkf`Z>LJzyl2!TSpu&L$GmZpY~^9m4opI+pRZbWqEhqCM#1 zGNOr(yh}p+i_L9i5A1vn>nnFBb5&XHl4rG?T12BolGvFU*8CFnPZ7LjO-l~m<_&<@ z9e?q`TlT=t2X9}wI~lxXxl0aSOE=YD*^Sr}!ZW3-=BN_Cq!@0VMX_gPt3@tdEa()L-dL%uq07})z0-J@oa0;t_ERh&zgk4cS+gnSi{u-Ox4I6Oaf)W@b)klDGN**FPrU7 z?t6ZRIKe60)BO=&{ps=RKTs;?WT z1~m02oBWrC^9EqhGMNf2gh8u%rilpcvQF2@#TlRLeOtHBJQcLdZ~_rHR6Tc};(ZgE z@lQWz_2oUvF<0`ykS+yT+lkQZXzS&Qt+SLF|>d37&b$Bi( zPnbB<;F*h% zIC*D&Y`V>jUga_nC7rB5+xV(P-(+=bCY{B3gsv27iU zZA*bImEY7EOk|Z_xx8Pd#~dgrN%gL z5n2Bgc@2Dz-SO}=aIKTp0?%~P1n^oXtpyUS^0FE*jDWv|^djG5tOb&oq#=WHYv2Oj z)(2$AzS|BM-7Iq-BL^S4OKFyf(K7w!oKjPvifJ`pAD*=XJ$zBB1$XF;^ z4)yzrY2Xn~S_?ehNi#rltQbp}kyM2QB&n(yU~;Ok0m-S#1`a_xod@l72)72^u6cue zncXD&WrFeZ_BN|(NTWq*>4a4p!NHIz4IHNI48zB0C>uD8%uG6sl`Tz!N=xUl((o`o zQCjL0rFpjv?4dud*BR#tF6G#99S^=En$BR7q3rp9pN-g<^;>-Mjsy3w@sKD6UK$M% znAJ%Xq@yPHi0PmSi7^}Yi8Bsl%Bo7cx_{sThN-%if#szk^)M5Y0Tz`E?9C=j*}zqF z!)cI{CozMeKFFunIFQLGT)?9O7w`lptp#3aB((w@=IRWQ#BwU~Sxoo#w~RW#1H#)# z8|PSGk29ib0G|}vb`6pOlnqP@kl_T90+bC*n2T{~lnW^h+4{(w*AFS9wdwN~kzXoA z<^dj=lR(xbxuaM=PvyqIm&c*Mns$k=B9p+k8L5^=B`iSxw%YGPQ-X6J56;Ov>L!Ug z!m0ke1Oat7kBdp7=deIZN26|v?@7NkF?Ds5WK(KfU&z_F*Z|0P1%W4e8koubI+M@u z8Rqvb?ynjAb$j>MOzy9l-LmP|!CUun*UT`BCIcy-F*Aht<2~wUQuj%O#Ow*|5v z*w0`H@R>ZoXJUUU-mCdAhWu++nrz;i(|c>F2*2|npmn-|kM!VP3w*qhlns2Ivvq)1 zM{I1%z7WyCKMYNm*@!Hy~61MtGDKYZf1kd}^G zl8#pTKJe07wuaa%QWhT$R@H56kFjsqYXI5kw5xMhrIuCg{j338l5JC_b~ON#{=fnm z4|5|5dy4GvLcg;^OLkzgsUQ^+9zseD(-FD1=~`S%m2|4Lu{((JO&HsNe_ zWnCC_|C!pYd2!anvGj-&SiV_-3UOC%=|{<-Wp;?Gi&U=DTZYvxYgt<_7QfsqzAAVb zNGJ5WRbWbaPj0>MOnwqJ&6!iGc@wxSK2P z`^~6a?Jn(H-L*e{KXMIA9FO)2L{Z8^=4hyDIGi!bE2hP7Mj?cR;`q zg;MkuzZu1K%0efGhPg=D=bKSCn9grnSy&2&S}9Z6Avs^^n>3C>r8${Kj7)=8+ERCK>2y|F-ZpJn7)||VRL(YtX~R|CE{k}v zsrB=$=cB3lh4&dW0o-CO|6rx|5*+-P-EW14fvND#sN9Im{MIruBBcaN@taXxr!2+i za3-w~pSnrmjEgf2S=oPNXBFJ478ZL>_h`k*hpw{Rg>dAdH12je>rh&H$f2|}uGGSZ z+LDG2nHy=-!gOH+mbacj5CsBa*qp=J5ujz3G}2&3e# zWmTbJk6WaoL%zIXY{FycX~u>_0`Uc76Tc>s%F}@F+ORGxEp0hc(HS0)7JRmH5T+*c zk>hx3sV*YN@tjd<=UG(0Gg?(r+nP+3N|d*^Qh|jRzl4;EYw9ny9R6}YGw%SgS>`C_ zt@p{7Or}~B4qnxSqJJu3c zzMaXr7W(1Oip;!{=A27p_WuQ~xP8ODG~lc1HCD=!1pJ(l^k?G}*=|f5<&C?g#@(#( zki3^d<9{(V8p>c)7xoj9LzmGMWwJB_k)THBddrQy$8qDl$17Sb*9>QDG_-=zE7e;q z%zkauWAG>3{~aLm+SP?;Y5VwZH#yHh+=n7@U>qn%-1pDCzq=fx4AMA0_KlS%SPx~I zzwB)zE(}(#vwQg;`aS&w@Q!zAl*pU}zQRaNcv9OM7=g2QY}z)A)IMfZ33%Xcd%F_g z?oOHje%VP=z~MW^8mR4WRIwR&Xb&T`PGAIf_l+e|dx}xTX5hJZcAJ4W?H9MD_A{f3 zHNb67ngAYnHx~!oVx-1>)b4+GX9T|IfLJfJYm6#-fzt=ajMUD)hf4&WXQW0owKoJt z;QM+QseL*y0&nPHq_*ast{V7mBQ>h2?RAJV0#83Q?hLhYqsmADf8nGl;GJ#eHcF@+ z=BZ!`INHNV?dgFLcuo)FVAF1~T=_KZGEJv__DuqrnA*qgJhk5iM&KW!`7Gamx7uxe znoa`ui{^88p4uY+@|A_!cA8YN*_G{}7Jdd1}WSwPvMqO%E%zU&pLezT}g5 z68Mb+V@1@M%(Wsa5A|6y3H-8=YCbBr^%*h=WIi>{pvJV2!2vQSYJpUk6~YIMCrG|O z(5XOpf5BIwQDEFS|1@R&enkC_gm`9obKvcpcDnNb z-_vNa^8h~7C)hZU87Vttrs0mmU@-=b%KwI@F#f-l)5|dC!Ko&+72HxazbR5XElz2IRj@ih+}9p3`B`<924>lnv_T@E6cP!6HCIUa?4Ma^_OraIPVkF-M?AxnEQq$6LN)k3CMCU z;d{Z{WwyGLK7FfmDP)oh2FxTggJqJL!7|BAA(LD%muHfh zrDu|v!7|BAA(LD%H%KNKYTo{=Hx$^ zX-X0b8E2AAL#ZuEIUJ!X4NNJ~4rH;Cc>*NmXv;L`h#jPyUq@*OOi~dxU@4hwuw9~R z0KYu!9D%Pe(#mS+;(eR3gB0x`x6V@GZd1jA*-FahYwIi(?l+YYOfst(pKUj%WHn_3 zlhtZQDwN_zV0@dJrahIH=Dk`TiEqNQ+$501r)}5UWip`Bz-%XLc~sa>DkGS*Su;{0 zSt=u#%vdx2tEESBqcVcYjWuJM6>DOe7PWPn7i-2eF)Cx48EZyTBj?M?2!4v+BzJ(M zO&KU4S+f>Lg}kZaz-L&#tQo0X?n!htko+oqn`WtyVdeXOKr(F2M}-tyE1?qd?G%vP zZ#581-mTkGA@eFDn0<52Nac7x^De*PNs2wIHzCXwVa&unmEoI44 zLOh_5`^b4bT2s9|P@A=byV_YiJp0F(NSeDfI^qM9*`)R6St|QRhkRfXnY+bRBfVG3cye*;gH4!cb}8Lw%K<2Hw|6o%+FTf#=4_|OyCtbubHxBx7N}`qLO-f7e z7?j2>14k38;}3TGzyX8OI7MbbQyPa2ENDt&&(8W&^V!-$E>~K*(^VP=1ZPI40brtB zZBF;J+BV(NDlOf;DlOfpDvjB~d{7-=614KM*?g8yj>G4{1hDcEx!iv%jbu*JR$98{ zQyLLY1gk9`g9h|1?T}tmLqf6Wz^1L$9 zmp+0>F0;AeVMB5mGE*heo6eZ%5_f~#!X-k}c@VWsr$cm!rGOa_U4ld=PxL`%PDCx! zX%JmXXG3%;ofL__bS~JP%W~PeBuDT)*_~$b&Iejg$rP-!Oo=ai|%o@GhQ81asd| zGg4umDI=I=r)H$WtW!oX)2(Kt!X#5hFcYq3q{6L(GJ@Z1w-GfX6_zHsX8QzWbUbb zV5VN(5h^R}L|z%eOud?s%0ernd}Uex3LDj)J0FY{oS%D zV6+@=@OQ*Zvu)6ok6SQt_y&I+jALmTRUr3dY9E+|vTjR-eWo&kxnmP~Ky4`WH`=!e;T$JqZR4+FR`P7xg9hla{8%Awb4g z*}x31umSgqQZ$&s6*eG8S1JumeiJqzn+9bAa}p(Nz=Z~Dx$p3K^MH&Yfw#pMS&n6D zBGZpszM9Bs;J=%{YGQh{Ruh}>2>*s({bNFWlF2fU1=`ot0HvXy8L6~Xz0!i-2GzfN ztYNA>{%v7uMSLx_Ccc(h6<dKgQs%FH`93?0tw>b1vY2YXbHqDZRNtMb7{(K0GO|w++fii+Qhpo+_a!#~>r_O0t z%X$-x)dq2nyeTz^YlLm7j*+H=xJB3oaf+}F;*ue~d+&V)Vzq^wvdtn#zV-~nIWicV z2MwalvrF|=tz{5z)r^Dqt7aU;V}43MJS^{A)NjRA!z9OEPwJ-;oq|70r;R*0(&z?r z0x3UxK61gwNSxSfV=$#OeuO_;iq9p%l*0HRKdg)&8i7e1;-@V>zR{p>nI##=nS=4= zKtyc>lQ?RLWDbrPl@ZJeT>k((eXpw~a(2&K584{c#!wg^n(Y#mkuYKxSTj-~DJf%` zqlNJizOmy@Lm9!W$ijHEFVAEzWdsvQgEHBMt0gM@3$pGIwb zZIIxN`3YziR`o?1!!iFLp&awGF(QgpKA4D(`JoZa$`2-%V}580#kakj65Sds6uG2I z)jVi)mLiZSBWhG0(LxeZS~{9aV-y$aRk|Oks{gjf{lvWdRFABOKq0Z)=YgM)xLf0) zgOJik4MO5BjNuRx-sg#(kkY3DLQ3xlR95!4pB;nV*Gf5(OnLM@i~J3h30iRSDw~zG zWvfE`!7hGn%G9p7h?0U0t)W)MD-@JEV!W~%jL75o<@+BDtd))5E3*UVU>S)jRLc|te5b2)|*~8zY zn##5Khay6hW&LWN+3sUvF0fJ(1)p>AA9P%8_rmeDH2&jjp-T-4PlwU=KsSCGhygNk zOgHoj33Z$OOmi9-W?(kH!xake8Wg71NxgM+;sx1PW5jE%^FkV=WxJYNkv3IYsqLCf zYd39L2pIiE&r_`BGpy9<1P+eOvO#DVm{#YOJtwm(kN4J@=9hEaKLw^)yBM69*)&pN z3$I%hlF@L*FEygyi=~FQD+1;VZc`TZRrSwyF)(F@tBY?mw(UVyo~JYMyw^tS|FYIP zK;WOcM1LOqsp$1nFwcbx8C7m;#KcsGFrtETqczH7p_j^xKGD~6j%4(aoj3uP>Mi;cH}3d5_tNrg(})AE=8ZK3>&%eJ%5Tl<%o zf+-7qtSDHQjcL1R-B@m2mLOVY-FwX&cqjT!)J|JR#8p+QMPm+)LCq+3Z;yW72yXdn z@*QAsOg2rLFih3T_iE8fDW4U;yp7&4nwdbIcli%&C;4Ra6VblOU+H?DFZ^Rb9);9=wNcSO zjg_yqG2A60hei&z?{nm<1EY{W*FuZ}(Npu)Vv~PTE#h-@(6%%Th2GVJ znzpTpiORYwEO&2te~Yu`AFXB3IhE_ob_v??k7g|=^Oo7H(UJYilC0I1-&|5ljYB;13#_iD zUSpAfr~1VHkF3SwTB=TO;p6EZLU*6o{}om)s-%yevFA^H zyWY0Yi)-0@{E9aGOhhKgjkE05UhaCwfS6SC^;jYmHKwZGYUb<`kwX3TP9kk7DmKlgZEIpy;*6fJ|r#hmzn%<+?X%Pc4Ayrr+f+72y)wb_cLgZ+>t^;26uY)LIOvti|= z`*!L83yu4Gh-4m8ou^of#kEwOv3`YZ2e z7DK9Y-I80r%359$bUw;-owTsd3zppSN^AMapp)mpdoHZ=!%J$ptm0!`_wmm|WJ9L| zaHL&6!P&Yzfq#(SM`lOv8ZIBS7JTPWav(q44sKsy7!GC;;jTepN zT>LTSq^G*GW^f4Mq&-fR=s>pzRB=YGA{95ZY`5F!E5bY^pj6eoPeQ3QUi09+5?Ll0 zAHJ+zSUL3-ucfsdam#pHrm#I-IS5nL<^yt+a;}=XL$;2?)iN0PN|SaROeu|d;&*KH zNuE@oJ;81v@-?=5R*~R>$cOm@`wkE-vborn?GnRV-e!Qmzo~VUmtJxFncZ=yK|HjI ze+0v>li^c7-tpmVS!ob$X;nU^6s2Us(L?`Yy`hwr8IurxW(J^L-fD0dcX^?< zJr)mSULy^k4x1t|5g3WwJX;W1x_eilh@`zd2cY#?zLgyVF6cttsSyf%2~a9$r40aI50r7*G)vy!)7)MYNvuB#;j}4RcN(GkZz@>ahFF#pAtCf9VSNMg zF}qqhKG+b#DOcVa`n~mrvJg(XUqWk7SE!)B@XnaF4Xp!X2e^2fYl+qWTK8!$cGKg( z^ML38BPaBWuw397xxh0D0&}l67T(W(L(6w0WK_1y@_XoyhmhFfKWY9__`1NB1>z(X zEL}$|KkF0{KiB-IzeL*s@-+joX!9(td2@)9f{TWZu-;G>;zSp~e>82Vl8^u{*t@vx z;>~Lu&UY9;A9@UoL~bheI3L4iHAf`vCGFs^S9_F=0T*;(W8)LejeNU6hG3h2Na7HC zhovU+EeL*#UK1N3`M;@H86Cb(G3+nKbbyhbO|u0(1#b*J)eNWXGyYDiJI;QaZwPWUa;fD_vDBtn}n#>ip=)z|-o^L20H<7p4NuScrvBb&Jp|r+v zJ^wZz{ICDT`d3>o#cXL+w6UZrgA@-M0?+U z9=5f{zQ2AE;-cXNT3|h;=mfshI<^Cyu+e|fxovhqojrc>3SL=lUb(04_(u*}HS)q$ zBL~WotMEYC3^e7Yrab6q_u6f&&x5w3o6ogwmfLO5^tr)(0R12~<$2haxhy&xDlgx0 zpwUp%2yLi@0x@d5Nt8C!G)@~TJ!YgDYM*ZOke_5@^7mFslmO|b%y*7wn1Mn{J1C^I zcS1VEI`IfAMLdw+YQvCC@}`@U_nX?JSQv_lOs zF}5aRE@x0Rk>3iEwQC};_Hsg06APvrDgCsJ9P?uT>-=^y`_F<27q;PecNX-fqX1o-9B6J)b`ner?&fB)sd&R_qh$gOZ)iE zYUgnVv0b8tF+SK`vS0uq^j>X=OE6z+JbkH!>`ulKa8b5^07d?3p-p4j5Ukv&V) zfw= zMpHGv!D~b!itmbv$W61yny5zykwCQ7e6>;0KPnPIeD6r2fOppsTi9L>kHAkU3btkr zY*k+~AK|mYbCaQwpM;5%oyMRd|VD#cdHqSrXN*wwt0~TUpH8zqE@m7nvHv z*S)GK|K3V54frA>>3>;xVxHQo10(P?J&cXK{NG$tx1_0C(9|ty%KzKMy8TVHw5#W= zNKIE-ZeLZM`Rayxo|WPY;B$=B_@dPKVW&6L=UFL@fiE^v|He&IM08z57dYvpQQ$M2 z)CJBuX%rai&OJs)(0p1D07RV{KRQqCDS;6fYbyMwpXI|bjW&#xQP>~-ltU}Agt9PI zmSs%C)p4gBoZU_2e5HY3kx3ho@EAF0V{@y6Wm2}PldTJQp zcSvJKUXD0`G!}Wz9svg6RX#Qoz^jbZKLYc{-BROzA(S^CrTGWloN-`mPAOC_vL^3Y z(Ck)K;>#_}`3m11XjdqEpWEAKLvxbRpJAm$0dTDijI0&Fn~l`p^;Lz$C%eQh@V{K* zI53u&_qGWLB)-xmjslN0iL&f%Tu&vISsD?QI%~47u~HW(@aJ4l2Y7>9p1lpD(!OXd zeh^v$KkY5oDrfx13CG_U%ilR`2lz%OO#?4=QU^Hir0G~bc;2k~aIg*-`c>Rv{?JmYQyN0%=e3elz3N3-#yk+4ggK=RDN2=fa?g{d+xL3O7uRTl*qh5zV#@2@I z(XKW7Oh>E0lnrxBF=Zn; zQjMCL$GJKK!P6scmC%Cw5QdQN7cJUNvGN1Q46>Zy`Z36f@ORW7j2X`}$S6C^x za<4Q<VO<{S6KhKj9L)zdl{`H%wxy02-yr)Z?2F4Qenc753E^!SK4{(X&z*yp% zeD2H9$R5^+Qm5~pM%&i~X4{um>pB~7L zHgMQ_yHEZf_Hqh1icIAD}+5!HHk=oS@_y4Tn?*}&EkDTqo z<5Kx8mw%Zz%)Z*vT0UwQDGQ6}P{vd~XUh57)w=9}aU_#AB3$KjCV9is%)_m6djK53 z!}w&|Ya4W**EOYV!GUKxX)W++MrtMowQmJR;7vV@)PCuV6Tm$#X!JG`solw_rKF4H zb(x#r#r(&*vT@+2BCERd)HVl3AO@>d-Fa%iaKBL=(WP7S!5hxRm( zel%^VgmBJb7#W(i%8jW3X(msN;f5b?5X0{_*!GLtK|1>Ut)L(6d=rR2L4^KMeHh8fVJ( zg(ara7`Ezxs}r;!>)YL5$yz_m`A06x!2 zJ4^++^n)UmwV>SUF|0;#ebPe((Q+aLL`%(w z+_cQ~tS;!ec73jAbwN*lY#5&XA$EgLgGu0>d>q!||K;xSaePZe$ZiLSRfQXz(9u&& z;R9UD3|emIT4vDl#6SW*+esZDzU^~PS5+68(wn@u9pLwkG+eE_cK!T;CY&zy$-|de zqvhU-DJ%{x`%GrqVt}XsF3A?TPd97+VC6`4UbW)ZJI_;Zo0TKgIW;{s75*?t0lf{G z-qY1-^TLNAwLP5~@s<;`#LI=}%<^hbrtxvXoL=-q6Mdzt=m0-wq#^l_c#kk9$A!=V z60i4ab5Cz`*qUMrhJmBF*(q(62p4v5m5%`TBMrwz?(Io=!XQW1Ak7-uPE$m`p+_>L? z4I* zy(g2veZ40gG@KYngbHQzzN6N#8acAT0{+&ubb$ZnA}4_uznl1L^$`clrtQFj*RuVX zeppWb(9e*n*TBJRw9<}SOdhqny;h>9SD@S`L9|(k3^a`)Ir+I5T=a_XDb>}sb-nfdCTn9 zvD|VhZ<%eIhL)j`vJmQ3#ke4`uyt#-VfulOOeb~DkV{&CsjBui2?w~O(Nt2a4by)8 znTA}_0!*>w<1TG#FSb%vDBvrN)GQv<-Vhjpm-H}F`%qv6ezJ!#HX~pRI@_Cfk$7bw z0b_{^uTjXQcXG=Hq-)J8L+#D3Z4`(h4I{Oy10ygtD_@RU%f_q;r5quhlpi7GeC_JI z?8tmLlO`LmK1b$jP4AQ4(%o!R&^E5&@^FMG_V_S?V+ zY+u$$Z2C!UU!#gd;GsQ?u^B1O&FYrS>ds@&es0z%FgB|&h{K<^E>o6|i>r*UG}nhRuKsiV8>aWW!R4`!6zgwi zxQv5j8s~#moW|cb!HaMC<0ZA!$wYV%s!`P5ZNaFG8xv46je&9FJhtM-47*HYVBEM6 z0g=}aGaIKpj3$6j>M@_%(*h&#**%QZUJ)397xyqmR%9?Yt6MUwJC9koe6Whsc+3PZzU5<=)KVuC<3Om&GzPxbg!W&JX-q)LGzP|v z^Vo_tGwd>rfpOzP1jLb<;ltk5ke+O%bO`u1Crtw1>7)tZyNuLyo7%O35xCd88%=UM z1w7PA6TmM!X%hG~BQ+YR{X8%Nf90eJ;4M9EslDgDZVK>9Crto9Xr%IhW}b8cE}e8A zbb&anRjmQyG1bzYr}hr-${HXYZy2f3QIQCwmklGeSGXOSw z=W~~>F1c*9;Ih>vmn}Sb|Js~`8{`MSc!CZKDevVOd4JBxEk7e4*6hc_t?DSV0b3*s zrGwe3UXmG_oi4QP;E!BG6FqCO&?iX>6cXQ3%RI>_8eb8>bz*He#R@0+WuBydV%FY-?4IOPdNQwM9e!>(=uB zSg9wsU@R#FLueS73J16Unb|d#8d0^j*v$Eb&!B9U%Fjj2wYa!olMWJdmC=kwf(bfm zYNAW2P0b)7iyeUu5*Yb9AgSPfgLIUIA8lns(x!a|=~345R4a9mz(HE>wTgy;sW3(D+ zZZg`}?$ylJve?`#$@d6mb0#Dpf@Ply#CF{dOcbrh=1;io9U#sqoTc-ehn@%4aSVL7 z_k0|Pp(7HaBL{70QODZmHMtG8{spJBs%P0SUSwryEOIVgF|)t9L{y=7RdsI0ltpRF znUGjer(JoVIfCtv?ACy5>{7E^OHFNgQ}{~V4hrBZ*wM~J$s?ImUx}&Uz~jy6pl&La zr1eY9g_m0?GY@!$lL{>#oQW^E9wuxlbXiPjH^1q-;C+pKms%!i&8{1=X!jyL~e{eMQ*gA1nK!KF_E@9Ly35Z^Wqq(;{k-_0{jg|-AQ(9fzx2)xsJ zC1*b;=Z|Zu7S}0DE6DOIObBHm9)~g}(OCF)$4JIk&{z$B$TU*+F+bxgS(Y&kRnIMa z1f zeMV}gE45DqM&OT}G!Fb}Pg`og|A$6(zgIz*H66`u>XvNk&STS;-GD9-m1=x6fI5g@YJrEL|pa(*t6AQRuSa$@O(iPQn zHnc7pKI+c%I2YY3s&nlMJ|<4WmDFKcpEiF6gQu@B(#QL|I+b*Uu^#D7I>6OVngp(K z(gZN5pTuA9b*>IDxNs5|{?fT7fWfPU4Pj&Xu(i6ax9$MfIcW+@z8XlV4LY)2N$i{7 zSs>DL$?`yYE)x>SSO^!Y84Dqynr=!%;C45#u>7pFi+e4^R8{#9djEqFS!cuT&%;eT z{TsNeOYIka&J`~dXu-!z458+3GF7UF7WACq)B}&SbEThP>6(jKPx3*U#Oq-iX5l>2 zX8PY`fmXOdTu}|c)T;j0G!uC;et5WFdEJ%Gm9JPSIUl&u!PPhbS@ z>!dF5$xfOEKHW)O;Ip07$Mo%H=~1|xmo zcZp|E8RQS*gsR%l;vg82<-c(Aj1oGtaK8|}gp1V-RyCrtqVy{GMtjXd8)bb+6C(i9LInw>Yb z8v-LRR=?0=)D713A{Q|V{DhOnfhbhGn=D%T32gMfa+;6;-6Tp+NsyXCzZW{P+ zMrtCG+TkB^M&QUlHl&7;+T)BW5`jGB2gr~~qyZ1~(dz&|>ZD2F=bh96(xK9!R!{fn$>YsL?Fo3Do81Av$VpRl z?utMHzTZg`z>gbAr8(&y#o_TAn6tAPwd{X;hf zfH_kW@%LxV-!&1*l&uOKbg%GDldzJ*{3$nR2HlfBtTRB&k<0@;Cvah3P@H|7s?}z| zac#-@?P0DG)P+ge9_AutA=pORsU-PNS9a`Ce0D^-EaNWdt=dfQ1@y{)70N>9!69@Q zBFa`ZfFxZ?VumKtD@P7RadxmQ$VbgAi@)r zZLzJ|h2oYmH3{>P>VF4} z#DSFMHAN&ABKtiEts4^Xb}z~;*XAwPdJ_Y2OH#NzNTwwVqL3D98LXY6Ww1885mQMATK|I130el7*#v8B zI3#PkCU3h2F<)C~xlw`a07ECH5f?g|ff|W>a{RD;@>@$VfxgIjwmr!NAdX z+f)e#uE9V|kVzc+SVHSeN7(234)%pU>nAp3nmUBr?*o@ZbA`Mww%WFoZ6jfyEM>qG z-Emn~ZdJcC^O&mg=53)D?6rd<@(p%%ufzoT@MA#~*32wq)hTwdV`a&zcE!~NL}>z{ zYurf6iU>T&eB0-SrmF5}3^W+DZM#DBF+O~S75sj7aRDan0hcFTR_Vqlb+)cnCs~Wd zwM-@TuW!4yx%PyQHKptffloA&ZUZOgsXZ$&0`4aaRJ|!%36CeVsG` zyt9!SQ>Y!~jFZ4ACrtqV_McEX3B1Wj5;YgEr?UJL&Ii1^k!n6F_X>Q#2giI=CITOD zUCc-2IYw;yM(rh`bz|0I|7BoL_QB}_&v4Q-kTI7ZH~<-NwX5sHf1bDP0$=Z>X&?jM zw57Jy8N0yS`*=+Q8FP6>{;YW__l^RfJ5TM1&>Bb}G@7Y>E-(TariPK)!`3drQT$dya3~{zo)1FC6mXtYAm}pEXmbJo6iOmj}4zR$;(|8~Y zjNAtRL!WlZT0=_H+1{O}rz{Z-m0IZkblU%hF?B&h4LvO(dLR0=Q(Gu{5Nw@HZIwBf z8Y-lcZSroM1s86T`wBE1;`zA)#8EO_sW{z@$`2EEB38>1gG^#(C&Q_XY>Na6*u z*^wLwWOOtqjLzpP!r+@6+=uTPiMWexjHn)9@6z-n{+C|e(WmzekQGfL`1y3;Y#-hk zApVur>-_bpu{9A}S?_8hl?e}p86bVC`SM;Z7_Ftg(Gf`%K!!)(X6_!ePho(%EZN)x z3{|uH%u}J$v`_mDJ?%Plde41BEu0Gb0hpGmCdLE+p7~?%U(k(S z?(Ov{lf@wS_OeU?gLQpw^9fLHtvcf*>oxHv*&Y~~xqU7TG10Vr4l^V5+vigCH79HMO4`|6flc>IH^r@wYaq50S*g{Y#(2@y#N(Uu+AcJ~svvt+D}1 zC$W&2!Xy_V0h!e*ES=P)2h+^$rer|=*_ZYX5Q`);Y%L|0t)5sgrRHQII^Eao4iHmo zzSP#5*lS#=cD5P%oM15U5+jME4eP0FbiOfQ)Ugev#J-`F*f*@Fmk$jc14bR&u)ff- z4eLu?3AFE+k^k$)jsxFqu_B$?Hb;dX+(x%kBS#!8{T(@QK8>5+t7!=JUY)Q`MLpS8 zS|hg21*;nrCTPn{-8~9#@RN-ufqSLFPe*KEIwp%@>PBgqs@D3s=CYSqsUZ(024uBN zn}!3r)N1*yr~F5Ku=_l>dmPA&6@yZ*2`M*wJk@<0Cy)?W%l|~ndev^V=-`3Y!R8Ck zkF?quJyf?BP;S3*{d}RlP-*66x&7tE_Cob`fI@q@w@H_ic>p-z9y(Zf8&i~-3$ebVH=nNi<#`fpX8 zXQiy3z~>lAZyk%TZC4wN<7J^S@WV@J+$}ZE-_~cQzS2~@&b4=d7ddGPc&U>*Kx{08 zh3IH6&^uI@T_XoN-WX2JLSV{5P_?Ren4KT8vaF)am;0(2-15Jh|IpA6zqKi4=z)97 zdlC94=?i$Qks5obJt;5(-_XNI?dre?yxvI@z@PTCrFN)&+f1wh9^s@3;Cq}j4g8dm z8k?zIHRPQGUTvhZv)l4c(9g|T7_Z}reMs5y=BjaYRV_D{7a$=u1!m?=t2+P2zthO<5-7kjD)n6LJ4zE~sw z&Hz7bBsCZOF=y)lzw4waAQN6&g750??f@U;q-h2vjKECp?it*@yZd$qc$dhx#~41* z**ZW*N4g2z;9OI{mpiEgBp*nk2Yw)M0m%z3d9Y*f&oZ0ylQP$j5yg_)#ON zW#G>`TL(z*BpLnGuKsV}0@8Q+?a1-w26BN+DpetgfJCLTm1b@_cBP-v3=cQs)t0|z?0Uve$Bx;` zP^mibC*1ktz%$L`$_8HN8Mp)dS0}9nlAN_A__pR&IoQ9hqC$F>$q!@zwJrEWAChrk zY2+9tZOTL;3n+~Vg4^ZSTtE`7vVlMB12qLCS14OLC^aoiks9gSy5a9-=Hu^KsVyF5 z-Ydm0QL21tbSfH->?kV2M4v^&DuI5&ymR0SutpQwxT-2@x zVA9_cAcMZjVvwiYY_qCgTc#!HYp|9&BF{7X7uRxG1wWIx*l+nyvYGg3eM_fqVgDW6 z{A+8!%(H3-xTljQ$URT;?a9O&48ARp-e>RwffN))sGeObOnT7L&9!vd1ii#Xc5}tu zTygfjXw>IwcWLLE#9_t;Z|(AaWEz$@9_>y#z?GhxNgp-V8gjyA0e$1;wgEVb0#LOPw5MjOgjmFvtya>=F* z4*y{xr&V$5 z%e_Kr&_w)Z>+wzA^9gQm-s-n9S!@nf+@alU?dm%;>#!H->SG( zVXq$noBZjz%z_gess}K zVi$=WmpBfLCGPNvl6>4Yw|5ljSJ`(3B#4367)k9Nou~GhzzFq2dn7YVU_oXU{ifyEEavhZ${k)W3q%Sknt&5ue5xGrgqOpXljriHUH@WIpbRP zW1IXx^(4^wJG1uXR?2zvC)QJWMHq*pP4~mCR1ZtDi94Dgex6 z*r}wX-IPvVZ}RD@eE;U}4v-+F&vY0%9;AcN=_s9p-t?yD-$Zlhji)S(k?~LM5K?M_ zkW%eJ>QUKL`YQHJ92Ae|ipO)s9=-%N&D zLkeZL51|X}I>{5;y)Bw$`T`&1q)FgWPMW~VM>uH`_-H3(n>QJ))={SYM7N>?BqU24 z#&+r|?PMVoTIBt|4f27=ujh8w*2aPBKq0bp29H&RL2S=@${cCb$@gj>4&?2s8d?db{kDyvmsRTf4u_1g2EGI#<1( z{N2a6!t5&D0gk-gY+}WgOqj21rv5G#+d zGUeanl?{b*mDTsQa$hU=w=!*i*sB`KaaN96`7|q2{)Z*}f3pMr%kBCHto)FbU$yc^ zD}P{Rs_%V9r~Q|$PWzOMg7_5HMuef{MBst^C2 z``AN2zkW)i`9>?hV`Xa3XN*p{$?9L}!~ft@8wp2Sd4iRvSeeTI$!QIR@_()V(8r{l zP5m)OPs_1B{0}?5X-9di)sMF_)dC;ouI7KZZOc!#@>DCIZe?oEbw>ZMq}-#lS(V10 zH@+LJ{Hm2VTKNkrZ?Q7f_cN2b&B~jt+}=muhF3QdC|_drH(I&b%B@zW`rdE!tE}9V zlqrArwGCyXmG86iDl1d|ZAPbTy{_R{W@XBMn9(U8Wc8!0Jl4v`T6vw7U$ionx6bJ2 zSvhOvTl(;S!M3kIuyU)Fr`eYGWmdl4%2XeGX*p*6(^fvIPy44|&`3PT%JZz;VC74! zJm1O-tvu+$rrkcTZ_1;rOzqo|{7X#U@&V-?Z+u-Vr>(rfO6+)CAA4xuG5)7oxoN=m zSD4(7SouXOH(U8bE2rMjc;W?CUSMVFpB>5jvB~?XmAjdoT_ykaChrI&;Hl{Y2j53Ejk=o?edHTCb9{;gL2vE?6ccD>TdpIX_^ zzCru^kE@$+%D+&__S~{mOl<9dc6r&$n@VLsC|6N;#W) z%18ZYea3&4$)UWn)$iU%K74y8e1};5Fe{I=^2DS()#}f*GVR3%qf@@j>aVi$LMtz_ zvR`}JU2J@pTY0UOpR{sIQvT5DBX3S6H}zFUr@Wih59-5z2czFP;XBOgCt5jXvOxz%s(!~a90|0LzRxRJcSmG`%Dot2-oGSz>b(SKm&)};KY)qiJYzxK%a zobi2e2mC4DjmFJ|55KkX$OZ)xT?H+TVVBKQsRAR<5`#ZQ0bnZ`TLq|M4REPcXfdCtLk7 zeeCJSH*Nf9S^4}v?Z=EhDF0&@$^UKRr~JOve`ICq<$iqIjeo`4nii|9Oxyp=_y*XR<;XImekkK_q6Mq zt=!Uwf4R{I<%jPM)@~mw?`q}#Rvu(!I{wffXxFi8TOa;IjXo$pd`DWlqpdvF%Hyqk zq?M_C(8uk%+jV)$+0;)mzCrono3wUkSUF?m6Rdo)m8n+f=W*TaT4iO*f41=r$`9Z3 ztlbN&_;nvSJR&Jx;Z%-|0>ZjZFLHXf3FOj>dkNmTZZ%}^tUT5u)yMG_~FEzeF z`QdwywL|VUeHJWU5#&0e)x{JcF4WFkNk%i-=O^P zO<6nSUe!nbnDGtD58v~w9dfVhBmXSp8#e-P+M)Mi(@S}&)!$|16;^)G%GAndnY@dvJk$8r_2GvPJ056!v`ghb za$`fGJjv=~R;K)C8U0ySzQD>0`|v}*)UMxX<(5ADZ!-Fz{P1l|ZyX_iZb`Yvq=t{h58*|H1gu za+&cTmz2j_{gGClXeD;0_Pxojr{!CX{$VRWk(6JydcX3kcKsVx-jtO8VfAfRe)S(3 z%P7BRb;{pceX;hZ{5$Fo_B_?}U2f$KR$^aTVkhNR-y+B@%@d2xupDz)wfu=>I12!rhZz|4mpFi zhd(W^Ho4n(p#Py}*AtR*gViZ7vO47^tFOAU>Bk+d++gJgtW0~I>YgQN_o|VtD5?b` z75^&O07K(t${#nM@|?hUwoW^KwtCIu74rWbz60Nfoo=)vc{^@g7veXEJp%c9 ze()wg&X>?uVgGKs^e+YU_OG>P(%Zk$uDq)Q`R!k3&!o41k6n2~^R<74J(FI2>_)va zpysV{^p~@3f9Ik9Jv;|4hnK=XLmOXyv-gNq*yq4n_%@6if2@hWClG(YEk2|80d|L5 zz5iyzTe0h*t><#$Uo})-tKXbFm4?S-H^3%n1qSxX?*1|!zDuTA^n@w{Vx0{ zz;E%-Sm{R;8?ax3ww_Ra<;xV`<944h2i^`>!4nv_7TyW#1NGSW8WV5p-h`jp3V zHu`#~bz=LaKUS*0wK?$)uh1WyJpx;QlriV8{&*g2ywls=?()>1Fx20|@ZOgH>kn^c z8n2jfTO$2;^8ZxzT+29h(Ebrh%{Q0%+Ilp9{Uyvy^Vi?R>p;Hs;6|_q)VOi`tiSwY z|A39HcOv=qw`)YrBXl0)=I_RO&|grof7Qj-qd&_c_99+?iN)&eA70Tq(;rx|`Wso7 zE8)HHMfd?6c(;!fhhmF+V~>MJzyf#!?DseF7!Ji2_r?}SVT<|LFTt-3*Sp7$BW{8n zVh+c}?Xh=+V+{|)77xW1lh|SrwpffUF2Y_G;N|$mI&ASyY;hH~_$;>gI(FxJ-=|F6 z23?4`9M2E%Tm0e%_a@R`;>OtGX4qnHY#-I~|8A@+txHksQvCmFeg3b{XQ=;Q*0=Pm z^>^x*rTW%d8-2e!{m#_SqtRtsPbk0k6) zu?$UDlCb)K!higj=!)ch^u_QS@>&Nlw%(y!utzXluOJMas*NoYND zTzQ_wei7RK+I_~_UDyY-@7Q?lKbG2utX}((rS>JO*ZyRweah;!Z=Fot;-mL_rT8+o zxC!g4mVGAA>@)Xai^cR)JQiE)q7UaM7ao{_cAr}KsGXU&$1<;csC`g%*{G?e59-I6 z_^tkI{1?M@ANGo^q18)Qi~b6D6}%qSL-ivsuzsIF_afA|xqiv&{|a44 z&VL>{#o75uw*mT1;TF*9<ee_`e+s%kNY6Uc`m=iJ?nAHjdO7RX>b2f2weGcU zET5+it#3=Mce}1buA~FNDfx`=jSB z}OUWq;Y37>Bq ztc8~wUXLyQ6+6UxI4<6gy$Zf$_%^oq8MgQXwz&C|zHV`QY;i|yaaU|{AhtLZTg<~2 zS7JX8*L%v3zX9xOxHY!8EwkFs?hMV&`c z=TYot`mMf;q5ijY%73T+SgKD}-=F?w>R$yq)nggAzR-BO?rnW`9NBTl`?>YyoVQcp zc~JG)`A9ETqF)HD-tKdT=^;*A{TE|v@Ir~s`evG z?MvD}EVYkh8b36i&7Ucs^4v)Mx5CikpDar4>udl=X9e*9Li`$dR3tV7*LY`pF# zmb$Ol`+&83n)^a1e<)w3cs(a<%>LX6o1h)<3--13W9q-nQm^L>TSvdZ`O$NTWfgku zE0(%1+xaaa?i9ET>N&^ikIzy+mGgNhEP{*Rsqk6D7qP`Ru|I$tH2BIkg6F~}_`Tse zPkX(%A-1?Nwm2MH9FHwdz!nd{77xT055X3b*wdf!b(I?)jV+#zEnbE#UV$yHz!tB= z7H`BB>#@bWXMJ5Mcs}&rmjB;q&YRAo&YSqZK7Tp%*Y;Jm`YJ9p^H(3lxc$)lE!BsX z&iU_NqkozDlf!yeJ(h9n3yr7i%GPJcksWuupIiSW=dBy-vo}zBu)gg+ zB3t{2&9D8$Qu~V4Ydu2=?_f$MuE=Wi9X`7c0sWla6WS?YCP zvOJx7bX^_9^&;v%Ve3_#<~5qWPKQ>1F5_GdGwCnPQm?*tXZ(Ip<6OkNt_$o3iRXO9 zoeVd^u72JhuYq=cJEMEsa5(y6X!F$KUkRJw4{)6q{76^AzrgF^&4ztn^7`Z9s+Ya} z4BYY+Z|@5CHk^j-RW1J?$-I_AJD(P%|4#Z@Mz1)lpNDP%EMxxam(@Rv?rEs=qJCO^ z6FQv_+i$C1pYglHMyT^+^&4iXSKdCvHJEX1{$3o9tC!BsSL4|HyOKYy{w~(tWAHZC zm)6^O){$t(yEj9;)%SnVdxpaz#;brD)cWrlSl`E>tA;1R-@`NDg)l*$P`*<0nu3kDjUyWn)Z%zKV`s>lJgj1;haIFh7fOJoyZ-fKT+kJjN)>UY~ zUza$s6Lzn__`BmD300@AQ&Vn2`^?_#JKDFe#qQ7kFdk+bZ}qyLio4LC0;oO|2ClbG z)UgGuBu@8PJ6@M8^;@Ce392rQWAo=^sXr0@8BqJQ_C=e&nm&jpV4oW3&o5u~8T!EK za0ayb<*$Ct9}!Q&7Vp9qAHr^ciPwF64x9!LfyJ;KE`P)8#om9nm3dqB&8GfRSPf5s zSHoQLYkZsaCdE_t+Rj(wh-*7v)z_dpna@&a=Of+U(Z2`3g3r?DccG16$Miwtyv}%| zi8~+=zg-~yjzGODXcmX^Tstfeu6E2gDw7mE%tshk^U0N>gt!yyK-Z0p*Y#tm z>&WVLJz46yvU=?cmo@q$OQ~m>t~(QO3cB-QCjIGI>UG^)&Qv`*kA_-T3G<~mTW78E z8U2y?=R@@&q%X@-pZ~TWa4I|$R>J)E{qY&ll$Th7?i4uV9j_>cR$qheT(}Hg1pfrD zhS$Tp;0o$k8K_73M4QLf^B{RUQm^ZL@ya9qg5!-pGGE+y={7g@ zYg}8u=D92S1byum=f-XYJEu;s`miun+}uk7^w3)mii{Z8G(B5AnsoHC{!P9zf`C8 zg>I}vQRl@{*M;tzI&YcsD^J{b)nVD4I(tFwV|M(f>C^M@HTW6K|HwzofHwX+bRGWT zk93APP;upf_#M$rg{xr`wBsF)zs9f@JBM*{1LG}4cZP|#`OaUysJe#?INX9PGKe^2@-j>i_4Vq0E-zstXUMdEO5F;uUuPxWXV z<+t&Qvs9myXCCuY9x;?J6mRw8$U6}p0H+xqjC~l?c{qUcZr4F|U_EFa$B;+5rRa6u zbY1AYiMIX<@`UnP{SD|pg?XIcvkmL8#Z}ni%qE|?94?0+eeC_;z)7EY`!F~Qo(j)` zcSBomJ$3#AYP_=on*swdOBBwUB`X09@_Yw z(dC+Wn{UKg=8GGzx^v=bH>VwAFi1W1&o(%2y2L$3j2-JHUdi7Pb{q4m1QD4O?%sL9K zC(YZ|tMSCA$oE_zug!1sh2piotzP45zIu)d)w?Zq^@F>?Nl@qYmz>`n;NZadK8rZ< zZ0z&la(EfE_1ieTWrJ@-^E_~ zA76JZtPe2txji%99?AUwul28v`DHsFI}h1f2eu1ynSZABQHL(udP4cN4sAWz=5OMB zcjo+dhl2y>TYB*e;=h5m9(x_g)^%X@x*jZbU0A)Yj}RYa9q78T@w$F2bsbr~t|v=f zS606@;}3)V=+p2(zkZ3Xe@y-MS?YD&TdqSrwE=2f+4(8X&MPl4zYXwrhw4K}zj2oO z3s|?8!mHpz@J+bO7k(yUF19!VTig>{9E&af23wqrEgpz1Cb4J3Ghhwe=u2N;H9W)c zGHmf`Z1H+*@n&rCc5Lwx>=0k#_>6CST}xq8fX9F9bzj5b-+9~qzccgIc@T9TM4bmw z=RwqY5Op3zod;3pL5zDo)^@&{pQYw$`=j|R-eoDFb*CLHJ+W1^x`1&!=TmMeZtzyxsJ7O*m&(9mfA^ItnvW>TT?W5Z>UOCjhYW3YXzEw!4N zeuXW5hb{i?YacH@ge|^`Exv^@UD|#8W%hG%&+q;C;&SZEU;|vE-^`;s z>Y&w+MHg4U0DU#AA+N@<`7cBF5?t5xG24FDljq3{ z`HC550Xz-reBFxu01TbKP`y7@e$C%9l;8GOeSMpL+{(WBcwqn3^<}B+%;uN>V9v9i zbN1!>H~>zChrpTe5_m1V3F^AC<7u2q#(SH2==!vJ>5fIOc`MH9r8^n@Qg{ZmdhItM z-bbAFAses#$Wr@KzS)m#{5Ryc`yQ=QGF8CCsBP8)hAJX64fVBeG=6t@&9VSM$o6d;P1>j(fl98pT~LC zJZ=APKzDN>kMiAR@{K2N+EcNcrcs^?RZ)bA(j%SbzKCGm ztJisGAWqkx#eLreMEd5e+hXmFnP5P+WZTN6Hmil2Ce=o{B=;{Ti(I( zYEw_#d~xHYyPxqie~oL$Ye4r3RG+R4^#2WX;z!t@LYqIN(>^cu;kwqiS_d{?S9F^} z#anJ|^4%PmPbgp9c-bQ)Lv{U!6zIuZ*4^HY9Nddp1ls?XMA`*8sCo(_}nIH++-sJ9#* z8>nCB?Ux+SbiMRM7gw)&+3QyQ7GI`*JKs=zNMA>NA>P9A`(Xoo)9@2)Th9TV{XSC* z^EUAIIK%z1#p&2K-#O$FFTlPCTD=`dw#Kn~)%iL3#ILc%j=%8p5IbRu-LS>YvBfFa z)8P}cnfH-~mDu7j*y8cn;yKtMF5~!$jr=?sV9v(gw!8)Z%Z4kudHs9P_VZ2C$NzOd z?L1^_KAGxQy_Q-BcD`BTfO$B z)vTvt_K8K%>KoAgJ*NKoEcL46Q{uF5H3sU@K6eBC5_@mx_bssxws>(De_R|ue$n>f ze2$BkVvE{mRp*XfeSUE_Y;gwm1u@x(ZZ*_(bO-CyQu}y6_HDZlzQ2jDPt4!c+tXkn zwCDdx`ur;V0Dc62ps(tqxCi~xx>|~@`o;$CFFT>@50%eyP$0jpKa?+S{1?pg8`y<) z)g9XLwEjZe)~rh#uk|_v-E`)u^=b7xp^K{@iGB>+9~Qtm)>}Qa;~j~v3N~{7KY><% z47yvTXFmUgR(}~f@e1q}(CVMXzaHb?X4ZMO>-`IjlOf-xTra)hKsXYPg_*9eP`y7@ ze$C%9l;8GOechOT=(+II!1db~-Og|~I28UGj)zk@U$dYcU-6>NWAz7+SNptp4}R6X zZD2gB zpLF65#O(}2daLV?ehB;x%w_yMX!A`$cfR2b*tMJc`s<;MKNH8>>OYg}8u=6MJD8tT)$t^N&k-O-8Lt3Ta+zq-L3Lz{0S;x;w;lvms;kUws|xbd3D zZj4t>{ngNp_iJ>Pd*aW7`S8O46XYKr;6(gCY~lMW=CH2Cy|?toEvMt3@JoMOT!bx# z=9g(cwtm&CIyAn`uf7~kU+lV39-RlxQ_MEsLGKs%nzuRL+%Rj1`s^w*B3bzQ@J#PhJlr?5p^r`Ds+b2)wau(w}towxDSe8jqK zy}uqFzP-0|`glGLUxwXx@cx4h=VB-N`QsbGN$@au8+-{Ku%p+{g`xhO!g@Iq*21gc zBhb#*=6eR6`Yfu?qWUa``mH{S|JVDe`8UxATd(bxbYGzV9&XHfwCC5x_cZHT>+4q5 znO$EtencStOyaHnQgfYz&fiDqbl${W&AQe)53O%IzQz+LlkdPl-Zk=@grWH6dW>G< zYQ5U)(Z~~z(#NOaOYlpm>-BG3uMe8**XHZZJjERB?O{kST|aa>4_2Sg{dVzMa!60V z?})m8l(Szp!oKXA(|#nU6ZZ$hM(h{353QTy>j`mVj$4k$Uk@AD$6xqW`}?r%r|qMi z=d0A$n4wP9Rcq?8u`D4Q>8i$urPgKN?5eJuqI}d~xG7uStxj zdFi~_@eV}yXIN*hcdK83?qt}IL4S0XdgVQjxO(zy99z$+=;G?7v-8zBHve++$JI;M zf#*%Fd-c`ke}?>T!dm7V(!ZFcUU@$zu7>;?$JX;6y107j?0hwj&Hp+13&he zb*g>U=0DEdS2F39w~jdNgNn2HFG3er--CT)7VN?E!tT)KABJwM(Qg~j?~$cmc@HE` zdHVBk^bI>0Jm3K^_{_-sKr=edCl~>R8_I%Z3slOim-B7O! zwJvP_o3qp}WZyYj`;Vc`Uu}-dJ|Dkc_YUCouDB<*&36NFx5K;Ovrx}@Tk!m(*TI#6 z^C$g>Tz6vJ_)m!Y7It9Vxbdp{b=A-Qsn^wZ{-2@i)XP6_>V1MA=$GbM9hmRWt^X%= zG{OJCxb@{QuYPb>xF`HGuUB4$n&$<9`AUBidNFSN?Zn*+AA)h?52WrRU?Hr8pOUX{ zUw=M7W*(gb@6Sk|KrhCPUyrzr;ifQd{OQzvF1!F<1)n0{zoF*QD=?p*TmKq$yazwX zvc54}`}0!Hb$KDz_v0{!=LJ3I*Xwl-uM0at`@WA}H@?dL`w#db`~v=#^`Uia_XE{8 zi8{sqtMxWf=hpOdN2q!;_0!H@uQL_5U^{=lZZ~`!yEE^z&2kc)g+4sU6>r z^GD+TV&dcG3&m#||8C~j)6CD-E8YF3ABwYjy|0mJo%SG~jhBC0j(=&!wR-7xN0-lh z^ggE5OE(RD9(u)Dy>v6sYaJ-g>YqdRGJF$i9#(JHQ7-$Q-gme9NvsobGWLPc>JPzR z1~cWaX8aIO;`lkR7T#!hAGWP$*PZ%gL*8tbP@`XJ9w_))QKN*PVU6 zJ>fQRXZRHyzN^>O!Bub!^{B2dck?=p+mCVWc|3i9*NGLJ*WYm-?|^?E>~+Tu@w^-E zGt}F~um zKb-Sm`+pt%e=KnR|3aQRcq@DW+I+U2zhkH)e2cTycO^|PsWE?f+?PHg^=ehG2MXNYg$ z_}}3zT+jDHJKpnI>Q|!|pCj+4>=QQs$LJI6KiXeZm(_osrG5%|%VCw-=d|BljbHoS zpV;rTzdaeKU-6c;fqZs88uw=O8dv+R)vrYNFjQZ+4b*pcmip(>zXQw2tNq^A^GcTb zPtbSZ{&Fb!HIB{yMV9(4$gBI8`l4}c{$0@T4)>v+kbXdxdgc8MajHk-*n0BN#nrz; zy`lTB&EJIn8>svBV(!;g|DP=N%DX=KlvmFKHh%(LT>Su^e}=%Za4NL<55pf~isL1L z_)`4GLOo}_#Qtu_tISe=Ci-Wf@@~fSLp|J-=QuGJTO5xqHe!FqKDH(M@HtTXtgdVA zb9No+xvf0#{B{|2KVs_tg8ta?Y`-+$4`S-O(vP33KWp0$Tip8}( zr!K4`)pH{IM5gtk^=qkhENUH#amTmoOZh^ydW~lp8sElCr|a)D`f`?G=z6pHE}`#N z!5he9;|~bz-!@*?cSx^sZeu*@bf2*GU5hTR{zdkQ_o1%ity!1bLcI>L~mKJ_PevlcZu?vJj%N@@qOVQQ29^8UJgU!h3fsO@~d9UP=0$p zF6VrOcn!y|hc;f%X-jzSSz_)}RxjQ0=*5$;tzO5)Q_!6OKY;&%`*FWK4BC8|;;mle zTuA-~Gp^O2&GEQ;>8>D7^Y{+i=D!qwT)ll?ZzSiZ7~1^Z>01sgfky@U*(*zZAN08< zuU@y=dUncEKa_b{?qTMwb!x|Zh3okZ_zC<9Zamz--_;w|?d|PHq0Of}Z<%=Iv3ia3 zT}=JX)G-w1@8Rp20d4*gbmed{TyA&;cDKEJzH<1|KHhGEHowgyTlspJeA&iZz4F#k zZw>itVUPWNz1u+>e;;w9MtEKQo}LX*dFseFew05hPQac4ZT|JhyLlkL)o+lc{#WRC zfwo?oU-O)ZUh}GFepWBtWb`xPpWsWxy$02XBk4yuTomX}b%uPlp1+{K0p0_@g5Sdq zzxLZjEgpqm42zpcIs-AOQqb))lP^^3FAEAKhPCCIOFZ2sS) zi>sGT>rLxPg#b<%B&U)RdJ zF6;d)7+U{!e#+BJ`ONiX_0nyRUf18Z#995W=!)S2xCpL8+wQvU?{*P!yA9LWDnmimv;YroaHQlB)A z)|u^BC-&zpU?zQ+EcMFUhd5iGt!FEAarM1fPYYqD`^7MHd%!$63XX%*q4GV?eaO~3 zF-yJj&L&QIKM&+T99>+!bn1ulhVGwp$sbpLDf)lGkD#t=U6;C!Y`<=o4b`&>U0l6%q50eSzDEAIdfgYV zUFo^X)~CE*kUx|+hy2RBjQlpA@~p$_^Cs$5-B!O5x_)p8uS=K08lF?HfDci}BQTV2 zbMlFy{1;}KUwKB8Uv-{Cy|$hK=;G>UqZdoDE1=E41poDh_hRdHek1iI*h>jtfUT9*1E^kuO5 zb*9EM1C(T`SKgzDYf|1o{Z$-~t5+X}lTX|OTO5h4=hlUsuScPtv(0o9%4ey(gNUzy z*~VMF>KsG8`@l8b^7KrT!}nwGTW>pPvi#TlqzsN4E0W^Sv!~?F|3S zyi}jnk3cud%tvunKO5a|q57u#y49~hcQ@2?hu&wi`aP*v=TUv?#BqQhyac zx3~^Az*ho4&zLpA-><}TCVKl)_!3+VPs#VkEtlh88Q}f+kDub>PlBhw)1mEG+! z3T;15#;-cW2l02C?E91hQ-&R>t8<{f>&bI-U>uEiS71C_Zzx~fc+Kl6#?!oZWnOl? z7tnR#{H)}>t1njnG5W7zQwF_s9m(H-UU4?RbhaMFS-o@<&HBJzy>Mg!Iyl zL0^qtaW=nnwjRY<{ant=EpQ_1tRk@9PC<9R(N7QPPtQ`XyniN6c~gP>7om%*mrnCl z-q3unA%9%`9q3m<`ohRUmTVb{-RS?V94&d1<$ z@Ke}zs^1T%8cxR+3$Vo$wpfZSR$z-qVT;FNi%YR<;8pM%m_NiLXbU&V0jeQAxP{+*$FogB+|CjZe!+h0OQGFHF zS5bWx)mKq{71dw$(=u*4$L&{WJndt)KIONJJD%cxE`2W7-8eWEmIkgz>BT|lh6VIm|CYKAY`=6pSn9g4 zdR-rux=yU#-bbwczPYbxzqi!BpDBMRUnpMpFH7CWbbqnbea7Bbto>K+1G>-H`ZcZ{ zFO)x1KHYCEb>Fq)>;4f7rLLyzqa{oyzbAIx=&lZ?$?&OZ(Dsn z>vcA)gL-bV`Y9YgBBp+NmU=zsSe`)twU1dY3+x|?({qz_dTy}uJDG86U@cU<)t{QB zUiaNv?(;X==NvP@fd~8N9`VFOynQBI1z&;-5A(+@PsP6?z?<>^HtFN5;6k_rn(`8H z>#^hi*zwc{QGKXm{u)PA-J-4kFZ5S@0{a;l(p%j}=*91_bza`3z8d;0+WhYk_fL~g zdBx8H`Qzq`8$Xh|D-4gpR^RKf^A7jxCm-5+jzm{x^4a`Vf&6jv#f{fIw2n0oT~~HI zoyWwXex46=J~i*}j`056!1eMx`pxN&^xXq`jWd|>#4EAIBgm`1E3fL98_2&sd3HAW zHO?^nM?l+;`S?|bc&qgEqZ^!N_$l_6(B{9CJeLQ?(RkMe#*3RTZoKAo594WGy#w_> zgzj6oLf1t=|0cSBz{U)E={`kYkG?t1G(b9AkK&9xA>CePeKpU+1Z;8imyOG1hzO6TRak5EX5WVVOPTo;BuH(;Onb{&l$doEjD6{ z?_i7HV~gv|^!ddNvBey0u@APmBevKdTO5cj=3&>u%MGu`7H`K6@qUhr4`YkZVvBEL zi#-bc{Kc)X#oe&QLD*s*wzwa*I32qYHW`)|`SH(yw?e!A`>-CgPDQO#QR`IHIu*4} zMXgg&>r~V_72~egZp>4C71dW!eHGPLQGFHFS5f`7eU%-zzv`!@`fAUI`fI5^TfO>i zslHpi`fsW8VD*)(k4)$1ujtet%eegtji-Ig)@R3&9e2E+Tc5*qHw=!3M+B}%>Ba5P z^$qB?{w;MK*na7Hu+(*7^}0SRb)8tfy^mP?MRQ-#es8ILKU4ltzEHgGUzWO$>HcD= z`;5J>So<381G>-H`ZcZ{FO)x1KHYCEb>Fq)>;4-8X53-#P&^`kgGF{XZemU=zsSXR(~?R%C>1N(>K^xPz! zo*V4^<}*$;tbvNR`lGVc>%LpVeg2QI5!(D?Q~o(eteoZTW8q4;3eGO}$1RV-zbwGZ z@fXbT@kMYpoC|GzaqF?;|Jd==2T^^fW&RpRRNbPj|04P;-i>`94C$@z4fNuN*g7xI zQ(rZG7H$3)hoP-;>Hi4?wN-3u+{fE?A#K+e)6EL=MZ#Blh5Wa3gnNQ zFK)c%p>?cz=(@7w={z=3-|d`F&HKY6{rqzR*UN+G*QGzwuNTm3ob6}(yyE%T;zaVQ z@5-w>4h!VpoIG2Z{2He({)y1`BZXgeh=0c4q;)`F#u&bhy&Bs5XOicfz&IN3;=p)u z^TmzVyl!B;1a)r|sQ)%}|ANctM{{3Hfls4*1vX^ROZPVVI`oP&=@Zh~dK72%()Bm% zOY^Y$&CqQPtEnfXm#z=`8R!*f^Gj#zQJmH9&v`i)_UAg79Jn54qg!C~!vp%cS?ZPd zWa5-}Od$W!=;G?7(|naTG~ZLnA6I`N`V~-lL;K66S?X^?e=pSj)i=7z^QRHj`wrxt2u8M zz&}IPXXhimcp~~!pw-)bPPX35c8qem>l+Wh5iFt(X2l9vNi<{5J>;7V?`;67=ei33n)}ihrHeUA= zOWjxOeZbn=n)^a1e<)w3cs(a}%`C)PI|$Ue6hgrjCBB7h8{>LoBP% zYhSU{ec9$)Lfk2E8LWj?e|(nuBF^U=SOxz8uZ5o(eu*u1_^p4Q5ZA*NyJCx*VvD`7 z#ci;~e%QHi9Q+OJT;azrhvypp30u4hTl@>Q_z<@ED7N@4wzwKw{199G7+d@tTl^YZ z>|E*RQw>ivJQG`7jveBa92c*_7H_~7Z^phG-Ul0Cli@emV$UjHe-7+xxHGmm99tZP zE#_l4z$U{*^Zj^37I;=cdwo1>*0I*L*0HE{ENUH#TF0W+v8Z({Y8{Jl*R$=jZ1q|E z1^xJ``)&Iy+xB}#px^4RrTT2okNRz?zFWQeZ>jTO^*SGxIxkkg9s5hB^K~RT^~W-9 zze3|_-?R1Eab(9G@8{O%a9s|A6X0xU=Oewi9lE{&{l#YgPjDURda(I*{aETcvU2!BuRdzQI@ z`=R3WTqm8LTkQCUGR`cx2rAy{XJo0*XZ}m!g|GqI{JO7v#D1*jtop!wk4JY4JPX}* z0lo5Wz;We$G@$>4yd7fdzsOR*)k6O~Im&Q6cJ9&scr|Y#!OlH_YVAHs0zF zrp{9hmt)r*;QuRZfJab=WeNV?^tlhT^{TE+^<)}9?s&F8ns*KJvGx6n zzBj=y;Kqx5Ulmsyh~E~SqW6 zF#kp9j)PyqL_jay@6a{E)h14Tv-K+O4D=1~C6lMQ4wFD}=b*0-WgGuKec22BXgJ;E(Y~mCyu%W|9y`I!q0Rpp`FAn-F2T0?8m?RIyUM#wApak; z)E_{e>97FKho`^>!{@NYH?ZG>osRMS*Z`gjo8b3`>m2L#;)dAb#@OO;Y;iocI00Kc z09!l|TRa3?Ok$5e&et`=a1OS(1Y0}{TRazAT!t-Pf-U|LTdczt`&Ik8Cc)#NT|d{G z^QQBt^CteU&tDGxwSASXzKV;?{M83BZa*}COZCC_?`8UzsXx70&#K2VZhfKgbY0o{ z>^QRHj`wrx8#!-Z!1Y+Cs?W|xdhu=I-iKCi_Yv9JN334^iKX@xtJiw8)Vj2K?MESw z*1iI5y!I?e`=<6cOYL*E9_6v|A^l0rPjza)wA8+7 z#|y=W^tx}|pzE9SRv$Qj7ofW`rvBnA^|~)vo^TDN1xLbBa6GjA z&^V$U&+7lkxOMP$_#(9Wr|~~$bRqq>=sHkuH>i2q{JS3FJrm$0_pTTeQYaFW|#JJPp z0(gF)o{;Ve^mXt)_!xX2egK=Gt>?$)DM{K)-j;uG%G>3$Jr_Y6CEYmm;zVq58n$>C zwpfTA%0GhR(ur0t|6=q@se4|rSDto~=Q;2~cq#m``Dz03>oD%_X8e$TS9G~C^~w`> zKI%*DEI-pZC7vfA>G>e@csMYh{m|vZgA9+rRzBNLjjMGf-L7-IQscfJ7+>d6b+15I z2XBLSW*L87K))XS838q3NWUYxU1I8$CvN>S=J`JLF7;eM-HW06)`MBU3)B zKa26tg)887@GkfcwDAW~_dHkukAhZz7XDT6juX7%9%%J1qWchj0>6eGA*csaVz40Fb|3u!Ef&BB(od}o08ff$X8UGvbPVzn! z$p0R?Eh~H`aeM6khIYIII6ghVnfPZx8y||3KU4f&XlikAlYr@=GUX(qB!UM+_gweiD8TZGARQw&JaR)1$p-py5#L;cynT@itDj;;sH+ z@;nKjhR+A`ODAU1CzkjTa}2k`?gJ-4Tc3@St$3?1A}@y-dkn0EHr~d`R=m}}O`d93aGY0mgae?Bw{fx+ zZ}q<>&mo3KV9$VOLK|=6WGmk4zbDUn)&59l*adoT%m1YlGwIJE&&`InW8VSahY9m# z<76w|$P-QE+2MG9L>!DggV&`q1FugOJ~-P5n4;HyDl|@BQMg`+8gKxWBi>$=G7W z1b!^j)@M5;p?m^>6ln2F{537$HdZh{p%(gyS0~Ry+qHg+w-rV z$nV{rzf+>7U4Q39L;v>lzeptV+VgLa$Z6NVVWN)Z);g+VqDw-{v8{ij#IkmNyx1|( zHIb<4&{~@QzGGtJ#MTeC=kJzSwW>Y;CW-Oiwddb7k>9R=v&8gv{hKFx{?J~Y?yjyi zPguvq7Kz4=?fH8o>bte)@43cYBS*)?mH~gSfPbriznw*r&fm^rNc*=5t!k>r#U7s#-IR4yIy`v0&^r_e=e=Yv)@h`{UfPY*3f5o3T%{z9$ z-@z?|4v8L#+D-j>s9)b7*cyMgUf!?%6ge{*H?8m{toWCUd?r_^YUrh z-y_k}oUd=lquZdi#ZA}sebeo5S6@zIC;YlCUWk7Te%&6gp`J4Qx=ntD{&f7hU9P}? z4SwA=FDB1p_`6-;g-@XW2!HkY-f;&0?bh@4H==(X|497Z(5LX1;n(f?W&CI3uVy_I z<8N^O=(^}^`nj>YKBD#Cg#LK+)A3hRU^V_L@F${;#eKcwk@&ar;O|QxdUW#n_1JJY z`u_O!_%I3mNc=f9Ua0-&VEnoG$FV+-!(V;2*LNq+a{RUDc>fvr?@^xfyuZ;S@gDyA zW!^Co|E_L9Mtxhfr5{l1bGG{?y&tlmc-KGiJNz~H4<^r*_?wLX0sQ&Py>Jxz*YVfl zUq=03;m^C+3y(qH%QY&hryhSX{=xWjFYylfC*!Zh&oGH{{CSspz5F%!8}a{|dK&QO z)O!6?{F`pz>#6>u_aDXi+7W-^3h&?1Be4(uT>Qtm>pc285`W!Q-hPez$KtQK+WSBB zNSu$q`Wo*z2K`F>iEF)o8~m@}&$-U~FT>w?L;88W_uu4^=#9Vn2JhghIx!r7BmR@9 z{~-M3H+#MI!_%BUT35xaE4MAAzaGJ#W3JPe$-+;adf9_M>e+>TH@Yg-- z{VUym5q)**>hqMp;%&E0rN6#ae*A;*ABesl|4i~PcmC);lDlr(>-1*)!;Sw5^5p*A zCtgk;Hrv?O)9{w}*HLGo^GErc%zbJJ{x6OHeDYL(;PdQB-`+>x&D4`{4-!%Sp2pwH z`P0|+CqB=r!TF*B$kS zz3q&@v+<9`pJV)o;qPhu3!OhY@45T?dam*1ByPgri2p{`=fCjRPVxGkxR7>q4~kKq zhUwlfeG-37vaNm@{(63WxAafoujbb!u4G-U=T2dIpW)YzoJBqR;BVlctxlnyCC(r9 zEn((+HvTVp9mjG`T!+8O`0vNR+W6ma{&e5?XAiTevzHq(^6TvhJ?{<1ueT|>^!JTE z!uiv6ntk}_wBKDX>-+Pb!+E&~e;(^r{#(g2!>pet)BdiBTdwo{r_96)`0I@S4gA*{ z|9kjX82?B3uQ2}4@z)yv_xLY1{`GrCedwB4X8c|8pKJVE;IA?MZSbFN{C)8+HU3=u zCmH_;{ME+45B?>_zaRcZ#y=H*mGK{*_V-BCnDbSGf2r{|r2ShYYJcI^gPzm6Z|T=h z9-(>uMz~5l}kK%vH_&d3` zJfijAX#D%(UuFEq;jc6PyYSZ<|9kjX8h=;!20}FM3gaJ>_PaiB)b_etg1_4MAHhGv z_;>9c<=-NaXZ%a?=NSKM_!GuIz`d0duu}ntT+0t@UJxfq4?{Je}DWdjDI%%TH`+k|1#rWhQG%6 zugAaC_#a98-TK+E?fO~wSAJgAM&AqnBI6%|zufru!(VLtv+&O_{w4UQ8~+9P^Ns&H z{Ns&(Rod_NH#4tJ+xc}~Yy5kr{XG(SCeIZ7!;QZbf3ESLgukEhUzYZ}^}~K!obX>a z;Ge<$x)%SV(yzBp+LMR>ZTxxoSK)d;hNFnTo$0zuU&s zUl-%A#lJ89Cj5zeeIEU|V$_a4eq+@)>D?YL8vXU(7cgzEoQTHh^E{nx7NRN&DT48#j9EuO4n4u9NshB9YhH zn@Ak*^zJ408eiuJ{C^DiZwmMy2>4$P_}>lqzYqAk?3_sCtWkX;(a-tYo7a$le@wtX zCE!0Y;Qw8~e?h>1UBG`w!2dwN|3bk3VZh&cm-hR!Rlq+a;6E_npBL~S74ZKq;J+~7 zUlH)v2mB2Ie`CP^RlvW#+eq76SA7EhUpv2hOJ|L*2?2dkz`r1n=MMq>6#;*J!0&#D z-0r*@0{S-t{!aq_b=><9?e%Rl=Wnk+eFOSo0e^nLKO^8T4fvM?{O1Jxe+>9<3izK3 z`2Q8~{}Avm3Y@QQyS3lv9OrMZ&w~Q`(Eijut zTy=@WKLYyC1OBeLfqn-3gPp&$@GlAYPYd`j3iz)H_#X@SUk>nw&n*M~odW*71O6!i ze__DCDB%BHz<*i5e_gv|F3}m+kn64;P(5xqw}}7-;N6Crw06m0e@A% ze{#ToNx)wh@ZTNqKk59xYUe)kf%9+bUeD^|pIy-WVo3Y_=@Ia6AMo!L@b4e+9~SVJ z2mDI|{)+?t6#;)DSv-Gcvb>^XUP)ESf>dSy!bCDzzIaixd|`6v?9_r(X;pII;3VG_ z8g+8O@VN!^W)>A>7c?k&P(ex6zE!D;f~vBL?I zWG+R%tA5ntvGYp{t4hjBUFlWH-_9?XTUszL)&9}hbIWEH%&lzyVBy@d%J~(6$ilLs zc8;icrZcmoGF4cWjI_zJnMbs4tg)~SkGKB+uvx$8>hxQbM&bZ)AOH1jImpsA$qL^3i;v=A0l70fKJ zs)%zYfOAE!u=A?oLtu;^gQtqb83T zOK5URDq7a_CZ$j6=#s*yztJ$h{;?Hh^P0zvPJ424s-S2wE*E>C>-Ai%sFs-gMMdr+ z8JHZ5vaqatak8>JRhXf7+n|89WBIV9zVqQT>X|kl$U0UT8sptYLDe6C9 zn9C6znr;4JIn(K?Ik4{B2AK&h1A|uO7#w<#oi|8zsm$aJW*i=sl^M+DvCx{%ube;RaRA)lMw0L68BeR|B}jzg68ErAyqLuQnH(mYB#O^i11ISZ*Ga6Ei8J%i>gzSXFs-1_nRJ?(9EEDBolrep-|-wdMA z@FPa6ezr4{=xCdnMrSIU3ovj2XK}6A4CYj&w}LhM#Q<8Tx_OT+sH}?G9Nie&S*p=B z)x1WDom}9aklN9<>V32xN-EtmRE1lOC8fH&{K9X}XV!c)k9Hm^lB1%%EqcNznK{2I z3$=)gkvhGPR5?P!_jRp}Dwq}LS}j@V9u1T3QMv8YX-n*Y5p7=p zxIMUFZu-GGdht+NR!}iJTG_D&Tywmr`K?ZOw17rN&&2M@jKuMJIcUw)S)2&-x@3TR zT@r0mdR-E)gaLte#)}>}u>FVV8Yk18*jOf72FbGH)~MGvCUt3h{H>pyTPlXq*?9MO|)yhhvN zN0@sm? z6{kwG>6bn4$(gCyC2N-<>E0x1`}RfKB^$kLi*}(km+X+Nx@=1y=9X-mk=L@bgIcW^ zcdvDCe5BkHQBl?{4z7k)dzZZ&21c(9+i%hUj>Nh%?pwN`U~Wm#l!Ybk5ns3V__u&y z=>uBT9_zZaCoBDms&syNHj{C$o&2)}L9qsIc{8u|y&_igruwISMr*T(2Wdk{dkfQV z7bIP)=coD)(k{|AKx@0509_EV<`XqOdN^4ay=Y76MM(Tm_g+ZR!V32WBh!j^kqj7; z9@hrPANEHK=^tKN2gV;RDm1$ZrdM<_>$nkXdp_K$tSl>>)BM(B+f}2By`5E~9imOZ zK;10Y3>c_8Y`il*OcQIaF5m6hymMz>ouoIE^jmGIMebd=wok_`Z>GBw66N4(shD3H zy`0vg3}>t54YSto0lQ~19dCXoJNO zU)B27xgdU?=yiJASCLr+FRW;OS3irW#+3X&tqD?pb8k#G)btr#Wf!BJB z@GF?LPTkJC1Z$nMz1MJYliH`?HD0p(*hKc_dh9%bcW2_p2i{e0)M9*$*1N0Wpnh$$J^t2JTzyWJK z|F#_}{PJapUcR&q2zT3k#>;Q4Z3DvH9-?ly2^bu1*I>0P_UzYutnqY2O%STF@UoN=Eo9OLx-PBuRqUWBO?(Nhyl11<6yB|k2A87Z}DXqt9 zPvCQqdroqs`pq29 zl&Ww)n5c|i09MV5-i$9zMH_QbnLeafr`1LuJaOcNeMdR(xQWw}W5yFOe)MGLnmS>WLdWetX`hk%Cnt>^J7vt& z^~-%$X`6Iv?Tr6$mj!OW6LV$6;wHA`ZHkZ&*ZfTCZ|6v=YHnDs4zKYv1`pd z|1L%T;?dEM2&eeZs=1F1x;HXh3hyjAD&@X!{)j-NYW|VEJ21ij*fYA1CX)M3o!~zC zqQ1MzqpnX)e@$;;K}o8^e8&FWuCUrA1SsezyKpMXCGzU?IaCR8mzOb=`$Bkn47v@uNN+ zR8ZkQrsO|7=|9lr^nU))M*@AMb4A*TWp0-4O`4XB<5C)tks_HJra6p}$BjykPDL&A zY231!>q>842Q3NR)SMB04D7(@Cr9pslP#YNn?KK8E>UwxI=LkM3CHpRcbeTtx#p%y z^TzGJ?>?iF1N#r`Kg8*1qU#4Iv`sf$P0`w$<1P#L5!=E!$-?3}$yo&@bDOgab~&Qu zJ=wok>}q$PP4RPR_v2k0bMt4}w>mYW(w}KfY2Xt(p}jjD8BXPt>mQ?%IqF`;Q4nm&DkT()4+)h!*MS=25hzq>C)ww={pQOW`8- zFDsqx*K?&?49RGr>eBINuC*o-C)~4g;kAIsWxgX=O{ zjp@%HMI%L@a~)Y;o+>SBT}Wkm9XgL)OwlEynWaBwHs<^Cy!^lPnSn4&3$q@+Gzcm@tcRPlIE)^x=bTYt1Ze^?L5(mpX5G%F>7wwLVxn3 zo|G?c?umQr-^E4mxU)H?zjre)nN{MR@SD#UdqI@aHDOX=`c2K~IP>)I9gC)#-oIH# z$^D{_MvgD2EOz?j{wepb1MJqwj9NbQ%l^>39;eJLNiTxd%ZGm?;9Ts2tq0X5+&w1xXs45>J#Cl6sN}wtx~8I2 zla_E=kuQou_bI4MF&am)*q)N8 z*K#v*&Xypzvqh^{Du3O#(MHSIuQ0!e^?cC0E0WALk4s@n>bLV#?lV`(^a^s>qZHAx zRv#Pm&M8%8asuhrvC{6r~om%)ymHYezNz>l`NH@A3z_AH}4%XK%VlWp-<_DB9|r%N=tc;BIw0 ziCW5oSTb3-s33YoP2UuncPQ@7>Cf^7{v}hZv3xWAwh{d+1b0aPTp@bE$uFy%R5~|$ zV2B$`U!E-t|di@v{fAKp8bm!m%2z#ca^1&@Zq{P zM$#RtNX;#X0{E`n?Hc{lZw&Nz-}awf=FBShQNl!j*YOf3DsxXy1&RKtVqQ@c7r7*| ze5ijF;v@9E8=+vH`}ams#wfEZE}ds)Wo5$s;C){75axWTne%76kb=_L?v)T`N$IRI zeP1whW<_d&thv#rgi*Q1=-cQi1TUG|`Nx4j!sUK_T%wcvPrtQAe-A=*zwW5bm;T+f zobJ~IBtHM)hcd;_;2Y8X8lUtRzkVpu8Cw|czS+?Ir+EE+32}N?uZ+fxeglr;-LDHw zf91LVN4XW>*e&gD{(BVB?-OqQ73FCCHQpINw5nf!uR{n|P(hxAQM0ejhJu{yQ1^dl`AmKZ@_}{v;Wr4pH?gg={hUHBGJK z_4fqC7lubiTfQ{DJZHFXTE{P|_IlC%=At%VcK+uOuk+XZcR~33AX~eCzuNjMr?ug} zzsUU;ji`A2{Sfh5op|Ex_*a{F{hblqrXQo{zKmftCua_ z<6<{%6|cWrk{>hvF&7)HJ&muwZ!(?udS6ER8ga7b^{exEg7ZZZ#p~~&^!&FETpb0q z`cmEEbM9E{_~tXweBH$B@2WI@O1%DoHt{)7c-wsw<RXyI(6#Qsk--eUzg|1kBy137@r=N3oXRb#!5<#DmeOPoVv1Dax9sauu|!@{sc)k>cs+Oy%JTgMAb83yE2^t6I6BT$iGYqI0j6SWQzgG%TM8_?s8rq zSVQdB(5d7Z(5N>J^{D4>{iyC*rmOa%*=3z-&w#4CqHhDxSP%S7nmWt!S@uuEPTaC; zi|ePUa}JGvruZnx(|#*+O_yAw%?g*kRzQgOd)7l<~Shihou@|6|G77lpqjihbNs?DK3C`gKv{KNW@k=P3Oe z0{&y^Umm61XQPbQq$uO{Mil#B9mPM-jpkQTg-5!i0KM+OFpQG5*8b$w!QT(lM6g?M3k-s^L zoHL?~`}ipIu~GWOQJ2yws z=jSN>YL8;irYQCq8b!_*QS=!WC7#De>DRqcb`iatA{jN_Cj z{GllNw?@(P<0$?5M-;o|L-Erhl?Q%Y6#mPi=rcTuK3k&bb7Pe8{U(Z?ua083Z==}l zedyoc(${ht0}(!bC9n(v{dmh@%l`Kz0cyxkaq+wbwKc^J?$Ua9aj~V?F|(k!+*R+I zSJmKl)z2)LSY2D=nprxx+9k`5T~b`uSXx|BRa07BwFHcXi;JhC+6;HSr_60BT%6Zf zRy=cYohz@tzP6rteSPr^mmB3(HS>VyR+YJnr@9v5(y^ef7Mj@0%L{7DJ!rLX@vNGv zvf6T2aejU6f^d}rm%FmITvakS95v9nrW>D8L}Gqz{en`rP%qb2T3uaRX0#1u9B$VF zpj5LMO;=S^xypfGJohRWl+#KZ>~1%8SA>bEFLeOHUO%s)t7wwTt$5jQURKTZxVv>8 z1+F@GRc%c{sk^Mw#meNBoi|%asVq%4vD#Hi6{KZ~(azM;1!fCPtgR_S2g6nbN7#y@ zW7A!w<%_$@WqZI?r)Hz8we@A;t_f4ktoIlr$$`x;t!^;za79N0xgdxmo9{xO)b(^% z10=#F=wW5^i_0qK7gv;4Rd=LQ^cg@Yj40Ln4Hq{>}sw)n+mWuE$ajD3TT(-pUqx4S<%lvcNdK4wu{Fn-0YGF;Hfh~+gxVplCkL%xbYrin`(401ik(3tr!z1gc~)nFc$&3Bbc z_cElqYFzbIWuS=}Z5pm_1sq}3bt=qR88LWb>R#e1oj=`GVGb1&i*sGHuL^q-NH=r3 z7P_jX9$?6?hfw7rG>&Tmr;~#8qy)RepE7ow`Y zVMbUM>tDRkRbNqEyT}kiny6q9j9$tC562%)tl2J1h}s&6zIaA)LroplE_Vg635(sX z2Gioi@F0z3UVEgduCikcIAlp9&8~7S5(2|EQ)&rkR`V4k6-|t0@hG?4BnD}xm3K?OFi|ZCQ7B3JBaB)>b@q*H-n&Nrz#~S1a#zk3i zRXGSjG2tMiwPbrL*nEqYM zxmj@Wl$zQ_HCV6NKSxa!G*+5-DXg?|RbcR|Og)$sp4CcYWi3TV2L-*lYHr!+hT73% zEt8y%2@{LQj6N@XHD+{%ky`!lAQC}*kZyMSNNP9I{|k^`YZb$d6FxCGY0fb1^#)W` z^<%FtQZ&y=Rk(_^IPjkz9n-#6%M6y5f^5He1ryM$l~wBz=7Z-SUQ{Z;znoDEi(Adiy@f zuSd{Jl%9q>!#-Q@k^Bitoj+6YWBj`U(ko3I~^yIrFy)%MtnIi!0rILS51btnVq$ls|F27Cb-xNVVp!|PD1U+rBtiL*f zp0h^M*F@02R&v%x(D$#D{Ocp=O-hatCk#8BpyX_i;7?Nh?TDn8N%?vNeW;St89_JX z9F3$aIZ5wId4@hIN=|YFy-Dd~i=ekDKhKPyk5+PWBIt%3ErM>yDT$z;ujEul&~s)> zz3U?AmP$!q5kb#Ya@IxArz-m12>K<8zCVIqsM@u>*WGUAia#NOZt$l@(CZX`S_HjB z$uEqcU!(YoBIpKxV+7r&_?sf=bxQu42>NY`e{BTa;NKoWzen+RM9|mGm3G-1L9bKe z(iuU2RLMCSK{w=B-tTT_Lr!u8{aGc)7C|pm`lLqClT_TuiJ)&)akrPnwBt%vBaKZ6LoS-^wYvp zEEdf~Pc_jCP4p2adXb5qX`+{y=ogsil_vT)6TQwv&o!Z+Do9Jq( z5VhK)(33l)Q2Mysp-9|jqQ^>-_@8Q`oA+XACOVGz!=FqOopa3iAQOG9i9XmwUuU8xo9OFJ^b<|=b`$+16MeghKGa0-FwuvZ=zC4{ zlTGyfCi*ERx^AM|O!Q6@{ZteEsEK~MiEh~~5&CV4iJoAh4>!@1O!PBM^kftLOcUK^ zqMv1=r<&+zo9JmK`bZN!(?lO-qUV_C>d`|{s+s8LnD`4#^fVK_$V5*!(MwG9F(!JY ziGHq$UT318XQDTn=ouz@lZigoL|yotWXM8D8PUu&Yx0~o!o9Nq3^m-G$ z!$fZ|(f69@9us}PiN4T8*G=?ACVHod-e{s9HPIKF=$6+dLjPZ4q9>T>%S`m&FaN)7 z0nK|TLG#C7@h7B+E$!~uP>1H-lCU}4sZhqpC<+ZffdAH0a&Sdl%(TG%5I)2A5od}U z=n(iG;!JG=?E>FPoGEQ!oxnE{=i?xOH3EO0I8)m|o524;oGERfN#KtXr#lAf1b#p9 z1mYzEzneI>hJiwX-%6aRZy-nDHxg&c8%PuQ4aAx125bUfLYygXAW7i$#F^R#ECRoZ zI8)j{=Pw`(pG!Q6_>5;QNR(wG4C!d=K%{h_?%TCvm2j zfpr4kM4YK*V2!|^C(e{I&?fMI5N9eGXcG9N#LpyNC-D1;rxGs__}#>rN(KrAek<`2 z#B&6GBXOpbfi!{NK%A*$z$Wk|#F;_{k_28)oT+2LBJit-Gi3~P{v^hqI8(*Iet};` zJe_!lz^4-*L%dz!lZl^8e4W525N9eFSR?QYh%*HYv`UMIF-kx-$R_KVxV2%JBc$z46GCQCgMyD18W5SJaMLkfi{8v zgE&*cK$E~9B|eFGoxtxWt`RR0_}#>r@&yV7ek<|G#B&6GBXOp9fi!{NK%A*vz$Wk| z#0!Wg3A~;-Q@nsh;8zi6Y8UAIL5x3frgVY*0>6y-G~yispH6%_@pgevCO(7sI)P6h zK9l$wfnPwJsa>E=;A4o-Cf+3Q5yY9|1?mKT8u23HB?3Q*_@%@P1>T=HQ@=otz-*$a2|c`)r5r zh<%pB_p^QGEY0`kG|m6d1gr*n8G?u1x22`sqd9$t^#kxF&7bkbBUopE&O#|IJAGd{eV?bd>+{%zZyQ_brH?@D2*%mHyF!=c`u1O8zubO>{mRYuOH|9E*`H^i z-AP!;ny9F#7wT~MwgeM&KU%_7LCXPa%Tp}$$9JqI$kdxKzR=GG(%(RG`o7j$Gj^4U zLTK?7rhnjiRM9^JBei}_K%v(w`dkz{q>>xZjZYp%J>NF{N02q&%hcgKr|$?!y5JO~ zLB!WW3~ZwLHtPilln&qf5bpGSpo`@V-T8dbtOXim>i&~5~cP3iWq<*m&=R`O?Gi!x`cJH?j1LlcUl*(Nb6)hRYH z{%QoPv~ls*Lk+w2_AR)~$EEf5_S}U1p5vV3vWtOwdgfW5IS}l_@p&5>z_)q1(q^&b zwH&xM2d#BJXtAX4FvNE?s1FYNjpuj_wa|73Dh57=KDq-}!4vG>pF*B~^s+3LY)6UX z`qs4oe20!xDE)g3%=HhF6hc?+zHMmO+I$;ut#xKfvWAW(X|2mr67*-Fph**d_7zag zq|kC)C%syfn%xfN^S;9zf!}q_XL>av$*XkhZ#CarnAJ0KIX}=iRXYcR z^3Ls)`m!e>Fa1E%CoyiA@^cuQrdjo^7!X?T$CF{rQ{YvfgI&3xz6uRON`gM@Xefm0 zbGlkayY^W!h)mN*qgeAdCg~YM!=oWLIzG_Cc;WpaTsWoMm*H1 zHRB-SHzUg5p)SM+zQmX~{lotRt0VBZk8_0LQUdRYfy#KYl-)S2*F$HA3>3Q<6+Q-z zzBqha_4Cn(f|euhr<}g;^t(Cig3sD~6GYh8bMk1d{W6OwXe(rCtpmpb(Vr7hwQ+u! z10_YS+p?A05i)8WNDBr!x53uN-uMH50=l6;IJAV7;T=`b_(GdxHsBf`m2Zbc>0o_;2iMQl0*>8<@yxzL_ah zv|F4^hA!K3Q<6|_(Z|B}bh9{TYh4Vx)PnKHssWm{Ifb#LHT!z3k^0Yc5H%PfA$pts zz2N0!vNnH08YW|s(|3@Anu!4JJsRUVSu2}?culcM2t)rN4#!05y`+$LXt1Nz(I$Qj1f9y*ZUd6$>G%n)4b{5=z(`j>M>R?-!GVS8^4Tm`2J;|ndke??mgIp>4V+-S&tdM zA29?Nz+}zm=D@|J=q=xLjmMv0FsDB*g)u52z1@+u_1fb#|A4JpDAwVdxg}W(wFeOx zJ{G3fre7xJ*;d-|3d~q9s@r|<*nRt8X8*utKz$!>3?|vF&%EaS|yZ7UmjbFyj@E(k@U;h!`60y&kRaj`BU066h*SAMsMwj$%Da5peF)$_cCD?m` zlH9%5=uXi;#l%IQum+n}Y7!=VIHWv1!VP`mfo9&pG*{`gD8=nDQ!@Z|Mt8Gn9 zXpft6ZCg$%07kYh$pI%z2BD4wmFBF4=puhkJ_mXq;!7)*8PNj>#^h1uL>|0H6Ex>>JRGCj(^z!)23!&BHvBoa2G{ zFn|&pO$F1~1R}mazOxl(Xw5hg$u)!hMvNK89PwUXo(vXv>Sy{g5F^vInaoZzcHRfW zzl36Gcz1TXNDlwVN#ffK_w?BG5559|t3hb(e%acbLfP63*_y-mo}P@>;9Zx^v0uJf z<$)a8yO6k>v*2;@H$#Ny#OLUC>3gsa=ocO~n)eh2Pvy#hS<%Z#l}n(COqD%j^s=*{ z?o{X_)%6U6N)JOGGIZGBAJ}ln9PJgjQV{dy05xKAE*4Y=rt(aO@26Re#rm_*o!#oI z|E#X6gC}YJa}gmCOmz(+P+HEYGJY_ceO5FprtCy9Y4iubpp`@louT=AXiO1(0kLQJ z5@u(J^Ti^8*PXPW%&or~1RZ_v2jkMekn7Zb5awt;-B_o%hY)N34DI?uM`0zzgF}eP zrrFt?!WVbtvUR4G^@Fu}Gmd&-inx^ktr=fnqeowO`b)8B1s-H+sF&u;egJ~xc>3bM zyBkz44`+#DRLuUk2*r8^yg@+?xFw%WjipyNt3gli1S0r-=Kr^B^6~KSj>P zunmN-*d;iIaX*Ne<|))WVT*rqQm60Pfd4TLUpsnIw$pCi&^IBs)zM*Z`u?~@edf3K z4sB}9P3Q=IqFEo`s>N(>`hK*hx3=-igwUqYYo1p$->{d3Z^dsQz?yXZ*PXG)_4sZR zR<4jIIX$F*ivFV~XGm>5R|PJjGT_{(BQJd{g$e&9+Q!e5Hf)C`7$E!l<8WbpW{*cWgeAnQK`NWS%e@qjM^CIYqtvb`;eP79N7 z7hrF|4u!t~*aP@pK+1g&koET~`~V=!bwJ8H1Q-X{smi|rq`aem)bl4mw!^(8^@#)Q z3CQg~>-7bs-bsMx01f~w0ZaxQrk@UvG1A)piDE4Jah!q}MPq5AB}MwWP2VEeMM&^G z&lWe>5X&)u<2dxsh*GhiLH6>UexyI*@xt^yNRNTSi#~-^Zd!gze_(5ti+sO0ewU;g`1W#ZEelC<6;1@SKSOhWv(w) zfrUzD4Pf9r$n*Yq+_k;Awrl$2ARG~?lE&DJRXX>5M2yV^F+XYEAJg2YYh|0Kw2nU` zeNV3SnPts|PTwzjk#KBT!}D}-lVS-opsqeMK(kR6BB|I$evM!fSl<`=g*HRp>>0SWxVP$YM$OMLb_ihOLC5&CX1s7Cm@gD{!yVW?DS`gJbkrSfJ>Y0%V`h25$uu!yvc*`lmXT;d)_h zZe)wC85?m1$CUhYDa<_^joi1KMg2mnRDU6IK1KTa{pAjV_&X$chM@KOCiDfwb--Ym ztHrRyZ(bvjeNvWJ$|4`cu%>_DbwW}GB(W;R z+z}SDK#J)r#klh^g!;3LjsEz`765E!G?*n$h|L~_Af|aOJs4+&i17ZZRKP3@TmL+OjzDStNQ>kaS-EE>zXrNPt- zSzG2n*#Q4BH~K~YngTeElc6WJK$OFs7&lsDKSlV!oK0wHclx$jSDXeG{T4jP^HScGK|3b9sxr1A)OJ%f6!9u71{8?8N?7#*L zZj%H${d79oH2ma10y~nEU~H<-#^~JY1+BH;M}-6f-x46>K^%0;cyunh6Sx!goc@AT z&7X%o~XvVDK{ z2)L-;qUPMS?K!XI!3tal3$%n!coAhGAahM(G?1>u1jI;h>nWzmX=P+P& zo)jmo{=afjql>jR#&ECI51Xk3&Hp!&gP&<-A#LMlJ@oe>5mmXAVyh-@P~rsBfejTM zHCZcjrwq`t+$qV{oA!al;m>#KbNHVVJ;FXTlZPm2n$MY%>cl^reufZ48l+`%H;VHX6gYfwZ?{f} z(N;UQ#cjjn!dY_M+gjE}_bMFXqESzlRH`*2;Gi{l0_HztLCSLON_iBtG&oZ(; zhRZx1kKo|Pci=$L(r7;?l#eS+8kiIe3d`-@;#k?WE;A-s|`F*BPm2-xq7U@?eAJYdPbQHY86 z(lr*ME^~|;0T1gHvgx;_b~doc!2H2Yl*p#HiF99NFlf3@xas$h7wc!r>S zevVLx)mNap%%(i3j)X&LelM!SEJtV^XucIDH8lU3MMCraLQMQS0Q!p}_O36=4$%#txDkYiU#zx8fb`6Zm`Q*Z>5mxkp zw^6)5JB}pbQ66k~x?EyfcwBD86mt4AeiWj&@i=lFq#G&sX=njr@+i%>iKTaAg3(R` zMcbe0cO%qMhg)S-93t9{|BD|LvL+>ahT+`%W+2FgJ$aCH8+$lgo;w65JN=_>0D-r7 zcpj1Xk!;x?{|2f!eZyx_j6Vl4D}K5Z;_k`A^Wcg4-2I&JhxOi47UWx-&!A5Jj5}Ei zb|~UefIq&8Dm{-PewrMio=hnUi8v9-ifEn^eMTRm-@!uqcEo0$-LwNDC$ToaMiZf_ z#~HLo2py%*jpCWCKjR|W&Yx{#v+%h_aL_{h8ckMfM77}T^eE=fy)q2 zi6jy!0AhbJiI)?^BzbLTd1sA&&=!r|cRz_Z#1nQ;0 zM4tn_P)IBA%Yo3r0qizD!PkNGGLWsZT6%k6FA^iElB~X6;3uMn#McX)dP;n)z^San zR||Z47+(Qg^RE;~J2Y$-UqNHWFCoY} z>K+LD9$buT48w7u{nk^!Y_V)s5d6~wf5v2jvwqQhoj6&!NZWX{hZeI{+x?4s00hih zA_XLb_E%U>f$B#6rtA|@&*C{}7RLQTaKU{(b@zpf%)JIk@w6-C9yEt* zj5sWVPGJEw%;t(N90!ht8rE;4J>VtX@%U3|9LbUc_nTBnOZ5^I*wY^$V=j->ua3H4 zKP&XJw!B0GKu1A^g4EjD^01`lbf;pKC2tX_$0=UVb)b}VqbvX=vm0fO=6``k??%iA z5vx>pA~NR})Q+jEmG~)4QBZ_g2w4blj?(6V=8Pj;BR`!;*@#DDMtlYr~%e0mw z*E-X81dqGs{8lX{>#J*q`@TMFr>|q9eo9Qo?xQi=wXzO!`)3YL$j#bx?Oxy3tgn{6 zYtQPi{%I3V)nYm}clRUQJ4kO2e%Pj-_nWl{J!#GO<$RhbQ$O-fD6}4q!jrZH^Y9w{ z!zKR_#lIE&j6~g;`FtSdrymL3nTAQkamG#3fo=4BUttn12U3nV7B?{Pw1BVB7AeAL zFMc_W7TYqF5G!iFyHM1OL9I+#OW0HM|6z?7fObp@vmc7vN4$T173M89LG#S0eUcxn zkdnL^^K-2ov-@^%3H|+(;4oeOIRg%h+!|A*QB0M=Ql4+3;EH3DbKv{1Vtkg+khpn% z;5Kfbz(ad638lW?Ug*M6RFM-B;>AIbF(10x%hZ#oxo@Hva^hYtZtNrYd>GmtsAv2#^)DjcIQ_G6FX^bm_f$PIsmupIXSC#r9E_*WDO zZ`|P?$;V(gL1&<)BqPqF9W86C`yy@JOtuqTCHv|0wJSeWHrRv%DP^pnHf~^w8!LHp z1v{zyV;l7S!P+t(r1bX9{y#K93n!h>`ux`ydH2WT_7(y*BDXzMlF-JRz9(onUGRPm zhu)e%qA?HQlM5P{Y~iVpe%D`w`O})Ql0a;)`X6%+%l1TD4&Qc|RrBq}jmIR_aI({X z3Cy$z8@>rR>D=k`z0D;r2XlRg`*f#&ki)wXyH=EY12Nrsl)ua8jo+-N8vUVH;6kC- zHv~ejC73HJw$Q)8Z`k1CZZ;T(COsu`3ESg2)8V%x@Gvq^A?UNm-9V0Om2raasBwtD z6m2_v9S;BTX#N4&{Nv%~f5dzVH;;aK7bjWVcY*Ut!4f}&wOKX89qLLNKg4*(vO}7Gtn5*jKcinu!D(%|0e)c`_}~ts ze~Yg+_3z7UVcypWgn5S?tA9T9?^?kUKaRCU|4PGkK0}P@>fiaGNA|D5=pXM#?t$CD zz=$z)SwxwiXUJt|;8Z9L??~WWZGH|NaG z@mxo&&HUm<+5&kapKRKMmGxC|BTxAsMZ6u$TG>hHf|m7*wRszGr~f`q+=7;Ot zPltaFChxn~o{^4;nFG|hIT?}3+RX1D*RsCHO*&qP>Acyq-_WR~20aYC0`1g1WqTKs z)1SSjPPKOtaC3XFv4_#xi)Dw{-uK}8b$h=cNfq(+z9y7oQ?>J2u(200Y_&D}sxip_ ze(n%kkCvw)jK`P=nukNLV>733eqG#;ur?nM;A<(1)}D^l#h3W{y$hNj9Wh76`T*4-GxPGF3;cMfF|rHoY3Ra?*EmuhE4ICXaZp#akIn|J6y`PTW!R&IiUvNy zBakA#Dmx{3?g{)0G!C5{?({u!vl2KJ3Vg$V+ zxn&0ApJW3n(pr%aA$LfmWIP_nhYR3;`Z(xqBH3Sr?q-5%ZKj^~nV9NHPXEIc%KKqh z5#myqYvIYK{X%Aw(8Bvqs%PP2V9e5TA+@Ew@okZ$sp`Qk6>V_*kE#)Go>TS;%V!_{ z2l5ZVm}dE`uH;{DmXCGaJp{{bk>>4*L~T(~0SwsF;Z2Qk55RJa{3~M``QJ1A2bRVy z0e!%$;bp^Qk%~5MwXl0pgMy`V5{#oI_;awLTDg?ZzAgn1h*_JTghF_HMa6ZbrkKf^ zZzsk!^by7Z54d>di@5(h7@d5AhSgfc!)gA7$uKZ$DE1tTJC=wK6>Itt_ToLwKarWh zI+4UDVR~FVAMSvMIb>FkBiCOr&w?jOe~XWir6W|%zvo|K+>_JW=Uma1U!oniSM$B* z^z}^<&)MlG?ZT0O9~d9cg8NyUOE9*rzrrSHN8xYLsioc@$jfh3#+?&w8*w4!;lMX|R z>B6{J4#PRTTVkA9pITe40)lgsSpaM?&i$&a@fz>-aTgTC6Q@VRp>32q&6|8cHXvWbB5M}NEnvM~#;I$OAx{y9p;UO2cNa+$s8+c3E` z|21L*n5b>bOGX1&veDrjkZtTg$+j^0MA(6u3LZFY%E8ji97V==J-7pn^N>g3?-GA5 zjEh7G-Mpx)n@R352uPX=NVsci1f)KuJeB=wqo`oGUsul){n|7__N%|qFIu~6|H*v( zSnc6dM+Csa=66lfvauCJkJ7IKI_w( z(W-L5~H@}?E$a5S6ssI(z7^o&@DtJ6_<59LX1I1yf(Zg&hr3-UtS@M60hX` z3@$m??b2>${VK`(YyIv5+0gGAB`03$Cs$ITpSb)F`h9|%W8L(#3H@Gl3H`o33ji6* z6_NU(3ju5y#jJ!Q!2g=sX%t-Z-A#Y|lN7)cEiUN3iJ5dxX`?vIyv_Q2w95-){o-pg z=KcGN%6}m632e-Ta3cpg_Wu1wgH7$?1Mx zS_j^uV%qTm9~)Bn9{P0+?mDK0qu*{%FlYxfs17 z&5xF_gV{$L;9-SkVWsX1Nu0IiWbPqwv?tFhnyk(Df?q8>@`>_CKmfgkbhYX%>socJ z&4<_kRvxT7*IxRo^Nfw|JhkpP{bePZe}1L5ZDJ9s;Mjg*iGm29z!?qaG9l~b@QzH0 zaaZsrHcqt`SYq5)iN#XdYbp8)V}1c2E&8uQ@yNtOkm-3W_=GX9|GGuw{GPjl_i=s3 zUO-uX!rdK7C#$DNiBZ2&*gbcA}E1L_}3;T zn*X{wPNV+lbe+*zYx6C_`0^~8MYgV@<+3QpsFl-IB<=wDm*P-Q3e>ua>SV1#qo}Z} z$R&$#=qPK+F@Vjj&6mld5~HZ3tJcM`sM073kCe4JR~BVLZ#mH*SghgJ<}6VZJ^>%7 zZ4(=YF0rYS!H95V;B^)}6Da3E-!p9N6rwc!u z_`_ZJ5aR#n!ut?^sSE#cBk)(d@F4LIyYP33bE~KHd4+fkTu|IgtYkfM1v;eD9>yma~=5aT75S@EDZ=a;xMkGr~0)gl&#{%P#M-M4bX>G0-R zV(^eQpPF&{K63g}aauBloDXhhx{5e~2WZ^b*Wjk>4N!*xR6OvB_-?$)X>DGO57 zSq;*~%R-@XDo&sT}lnkSLBbbAA& z1j-9aB`@>^7XCZ*J2o#SR za%YbB;zT^j4lRJ~xLOj2c|QX#&3nfIjB1&lmld$yw1e%IeXDIe2owJ@?n)fp{1yEE z_!q&>F=&1U9QIa6DA%`BE8C%M{0NNSOaJ({wKhg8+aylg14$ev>+x~D>{)Lv`_%5; z7~{JVGjw#WuU|D);fMtsoZI31rv>QJ2@V87Pd`4}^!`iAFZsG3=%WSwJN@M@I;O^j z5aHmE!mX_>X}|&%!l84Zbx);r%RA6Ix3w>?D|y>Ka4!BC`x7S~mcW$ko1%|_O5zzvZtg`ymFq9I{&+!a zfGEXVj#4pr=r-K~nh3@4mw#H~F#IQDa$%*lHlGK5H1RBT4zz|oxk9ae834W_*igEA zpfC8uymf5+G;VV1dFKT90wa&TeWT@s;Cj;XDNe-nTW~ZLco$dQ@+;#Fk6*th&4=co z%gra!d2koZ_a<%{SX-tGUmEoSPe1(eahCyznU|FZM|qirc+!MtEe_uo8q+d6q)f$5Um0JZ*z!CFi%*%jt5IkZh10Ri zw&8?uy#j~YE?gpavoAZf39L6_b*NYxyuRIwV zU-Tm%w7}?xf-8-Dnft@mfk%h)G5B^_SO~iexD-*SwcjMraip|cfQ+|?0TU-QPs8_$ zE(=VAD5;0$ds|l4e|S#%z=|{IX3bn`Mc#~;-e@-Yh%1hRw@@*EP9<*Y;7pshi?J;E zHu7Mr`4Uux5;qsI^?`F_>vx4)KcAlOACJ|G&M^Yax*PTtU-+W><@9@SFKYo#(R#*+ zWlDxjje{%Safc=OxDcMeF$UE38K>cBEHhiIEyJNVAMqOk!D5K5EhmDc&dT9Xhjj~z zf`4cI1on)iQ6SO(M}UW8EBOxv=V2)(wT8%fuAP%EGcil zNLSCr^PZ<4G7$W z741EL63cij+YUc1N^id`&;w$Od=%db!Vu!Gg(xO481F_#0Pj(8vj*pd?sGM-jsjdA z50f!RMW&*jUm^ecXUHEekoz~I%E=q1O3U!QTm70N-B@`(jP_7JxL5W|=4bel0pmd< zac{B`2W;KHMg#r8!I!m#w@l>yXLSdBENxyCe$5%-1C?N~hUdX&oc@J4^T+)GjPsPpdbQztXa=`cyDHm_=R7!3GM|S1RKA>tmnoZs zzfBNx3xeC-4^uE6=!Bn5ZXKT{o>V`VgUrbX25a*x=r=8jhv)H(xJV=1gE*h?+{McX z?E^OQ#2Bw~d%olWwUCvh-wcb8m+Q1}dTaB|T!2Bc*_lEo<>3{iRwrKQz^hd`4A-fX zTZeXPt$5y3Lk5|Nm!LJgX$)0gcKU(^ICnza%Rx;AO&XmcYEgqxk&d8N3lGw>Xjt+3dD(a^$zyfj|8VzC4qR z5iL(izAh;^OU;9qVYWl=Nm%cKT<<(z=qsMYcpa4f&Zy_k!rU#J#wKSKB0@9`<|Sur zB9spN9XS@5n`sr$@&38K^&gN`N`LZy@xc@`?$F&RQt0h=vyzV zJz}sY{n6K<`H?u{74v@DxM6=o^VXJUg|i@afb)Og^rt!T)gDZ=MZum=SfQRDt5$4VrgJ0yM=d7VdfJuq}pIp8|UrK5lL1&$^3mbU;IN0Zfgp zq3PJm<2zXdm&1p5c1FZ_X5q;jG2w)x=y$*(EC;7EB`J8mX*_eVje@3=M3};p)kH1; zB5I=iIxH?5T1_xh+Kk+*2HsKHG z7<^D{hFdrZoxaxui|&71c|u?g$Z{OLYyt1{K?R(!hYy$Ur*Cq*{H;*A+g(Z=F7qdf zyB#iA;AZETV9ERl>&;iz8@MAQ;6>)CFr;PUG^Kd*E#5i!Km^& zS>7PZS+o##3Ht-`QCU7CT%O;(oWjS33r|F$oVp2mn_+4(r?`<3vv#YTl6yoQeiaPo zrJA?amb<0{}H=Y~sb$knaQ|KNbjS;-$K$LknvmxJQ(w_`F` zxxLDonqX~yhtmMtiBv2p?0jkgph%c8QeyjTek4UV|vt{cz??G)gi_n~L z*BlN!Ui9cXA-oX9Tt2rUmRp<85iXa#16x$lV%NJMT>V8e{K^|>vMeP{pNt0C8WJ*V z^RuG&N36|3(a&o$yABze*OKI`$^0i`heiK4hE9HYn6-H$8)SCN<19>7yf=gIT&hHL z>4_toI-CC1qa0I*zgJ@p*K~)km$kW!ee+&JnF06ZM*QJ=ZEbn|2Rg}j(lej?t8|it zz>6Ro^;?{1lt)N+qj-ZIDq+_&ItiLB4w4I}MfT@FwRj#wav>$v8j^ym9mqwxGV+6> zGh49_$B6v`6aFB2B(rjBGXn)Pfj>Pa#)j_RQUj0MkS&|#`@(uGnhhKePDfc@vTxIO z`!q<>%J$&t7tNa2NeoZ%3A1vA?YG1Ml^G!Caitg+|ENZ9x*7t+^6O_D-oxdCL9*pt zcAar~DY(ONxrS8{bXUA0jIqrwR^~wIQR;crxObO@f#rAZL2vPZ!#dH@DpLGilj4|* z8=6N-6|ZMt0J*wZ#p>q4{P|2j6*Nu_t1z}l?Be@@w&6T!l|LuKDu)70ly(GSzUPQ; z(+@oYEAfjQiF`<;Oaugxj3(&+0!7AxY>+W<`U~W_QSfZj|4w9qKrk2dKZUs`EACb@ zOvBJ%aZJMd_1NYuXLy!tWn6~?$!%adc8>I%5;EV5nq;OKeG6#M)&Xfat--4;*5!$) zima#uo{V}Yp`LmJ+1mUlS=AIA7e9Owv5YHm%wTPCaEOpt>=6fijL`}DmbI#57z7+j z;s{4Hg?JzyO*uv+5K~lt>`jgm9$CR^Cy#TQxy2JQ*BCMbb)d0FH-Qouj~?mGyqYR3 z719?GX)`*CY@2=E4=b^+fw$?&cr2O|=nG^ddZvyNP9STGolF>o3`#gpAefcR+irvL zI1!p3fV0VUn%~8SzH(&WB>!xdaPH9n{}yu(SJD9PTp>nwWFBR)lVLexh1((2XBE-n z6AzOMCsNWu{%Vx!Yf)X$lxe zXac)5!RLKof(&do84cjN#^&7GQi2&1cpU$jZ+m~i?deSv>is3w+HxPR?EYCp?f!yf zyqI#bb{vix`mJJXnEzCOcZ#6E=3KhSiQ&P(V(@j~W~{3E)%zem7V|{2}H7W1s@<}V8l^=;41_eF{$N92L=cuDNpbI} zXa`y67{Lev3_q6XuQ2@WoFJ8`1CGuKpo;E_^HzVR9Kes1Gy*+4HS zst*RIe!nr^@QlDm=&;%!A4-B!;XW;a?P+8zD8yg{$b*O!(>-X)C+K{ zh#S-d!6y!{yykC27uA0M_qzrDe_?@%i}CZ^H8$}R?lq;=HaC8txxrRi@3K`bSm1G& z&aHNdeoic{si}2?ufbi4UwFsQciWCx)iBCj{P4T2th%(J!FJ~G(PPrm8qTy;HP|Sl z)K=*#trIO-EcmT&R}FvWTHsy0m8E316&IIRmEjkaZ4K46?vb{+9=A?cdi3Zk!WF{piLQy? zysoQv;V0{DWtF8h^IW!aAZ2b>xos30Kp*ALSlh}gsFDTn!DQ@nByiY+r8JR&-OEugiLZSSx;3`#0}jlW7h z(&nyTY^%qwb1$f?s^(AITP#&I3;A>GwuNG-Z56einsWTF$MDzH*0Wb^&SJ4Gs;sKU zh~j76Q4wQUC>_VpW9lrY6QUbD)o$A&j6^L)%2i)aK{eo2ziT}a)uo3N7Ym0fbz|sh z^#z^=46V!7;Bs@MO6BMo(k=Lf@EZOe{V^EvyWP}Cu@)C!?J2GPZM@V34(6&Th1SPZ z!tJR;r@OSUSmc<)vbDCd#TDwO(MNZavZ$)MS~z-{r@kIPSPmB`t*C&Dh~a>_J(yvh z2H_7jLxiv_9$+jkp14d3g+1#b`q5kmEnfSM)+*ViH zP{lDs=qRn9=UIUM4j-M~U`u7;yej;H`&mN3@CMYK$Jt+F^VGN+>*SP~?^?X5w!S=E z7jt^nnXDjxLVa|^PpOY~@E72xyXIA4)EC3-RpR&7e=|Skt*5?5{f@lQ3qNTulWg2PFUBKQ*p=7J6;o}23v;C$_C$!B z0Tb1@T;+(rHDQYgE#Y@E{#I1EyEGNy1gupx<*vq2oZ%wGxaPU)E#aUmeZ`0#4W79T zW%X5c;lTcz^q%K(8#a@_WN$k&Vqng+G2E0^*Sku~8Sz}uN(GS7w&|`>9H%M-ng%i9 zyR@m3L1wf?#w3@`UA4ev#FmAwda*JLFCRU;+*Vs*L{{`IT`VZW8*KF+tVXEPjTbh{ zFGaXQ@TygMNUJrBE*H@cfeP!o>*kkN(eu@V=mMd)c+ZB0eh zJP$)Pqn()96KxAh%j#=wXHL9yrgrhv;)xd*6i&~ZF{60K%;}D)lV)TOFFz9zUVfzW zjF!N#N2zo-)AY7<=i?ZwWv6^3np@1VuPWneJh!T*6w#fYyPytMo{I?YUOd{CXG}Ft z$cp;f1-6M?f6HC<%8L!M5u~MlRW(>ltFYFWxn!-v#j{K6FBYqg(6Yf+T{Yjd2GfpR z0k6TMM%L)>0)*Hq22(Dl4e*wQ7&E!%(3aI$t1syC>{2X3h6hUt#bsi>DL%J&O!0Z8 z3mRNC<#S8R=F@#ft0E(m7T4An%V~wG|EXRvOtql4rkHcQfmKT7TE`ZD%e)|8w}6y- zR`1>grI?oZ!)!pHtGe0)pDL}Z6H8QuEwy0*mOxDN+L}={u6YX$jlHvWCbKo z?nPZf#1bH^&YXaM4OmZmcQt84BL-Q_!jU%kc{Otfkx0}cpEEQ#{V>&mhoK+ zvTgV*_GftAg+}0%(a6Tcz&3mamRXUK)gu_o3s5Q$F@V?BSIw)c0bU3HDxF7C9Xed& z79@8ia70m=AVJ!Nljdwukr-TucN!1-w6D} z8!U2Z#lS_bil!oCk!?_sLDcNF+Da*|#?mro9?Uk4Iu_A;uCPYHL8ehv<0`i_)R&zj zN9-IK=ttKrMrtlZpxbJdEvP~Ogg=NiQ3a`m7&MF07pbq2#fhldV43Tw!nB83)D%_G z8X}DnShKtq0fFITL8-f}($W>7ElaAa=340TY=lbKj_p>Ehe+%x<5(3JtD)f~v!&XK z3M7@HWFc1c+IkL;i72KN@`*5saiqAswv6>_%TQ4eXgg43W{HcgG*gzdDb=D;WnOjd zTuc*C)s<0DR$beGwF3p}DqK)oE~o$o$w&q%JDjNkF(-IHyJgds;;IG&w|XSu7+wpE zV@i8Wi#g_B<388)*XEyKA8@5T?yC1mj#%)7?JoCWCodwT~>N$AfhVMREdiY;IE-e1jzNV4R z#*%HbRu^r)eO~{kcXoW$^!(flGl$1MuZ^kxroz4Vx_9QirycAZn%BAO&bvC^Tl&qe zgCozrBXQ@t!h!mXvAZsHO{qv4-e=XoEk8bMb9SWNeCkPunue71u|zIaur;Nxg*&B)AJ7uK9GB~>D}?8 zHeV6n{`5neFUe2+WA9+KW5l0(?VTL+#+>+j^6%WVMvK`NUvc^6mIL^f?`J=$9kk&1 zEj73Q@cD6H-@oqVL6a}?WzKkg)AQR8PFU0P(~ph}x_Zp}ZIOp!$-W+ygcH{I@-hT36&AID8|7O)iciaCx zeAQ#)-v4ynF9SZh=3l|Qh7-$P`gG+FwL@OIF?;O2MHj7o?U(V{KY5NU4W0ANpYo0} zMt^L{#UBsKe*NjT{*CVDX{ima>WY!JZXw^scp-NLQdal+Vc%4B5oEBWPIn=kxUf)i zeKM_B+@_8I%ZQP-G9;exb!-D`u&7lajplwD2@w~hm?1sJX*fB?Z6C|{n?s>;T#vsa z6j}-B1nlf#v0M&#J8mMq0k{jWV^t_LAl_nm=&n$x8t~-1L!q^Rb$<+n4gfw2_!Hm( zz+~Kgyy;%Z1#G@A6nX>jFyJA;>(+!qb$EK13V9K=r-67a3!D{aOCz-Xbs>lz+I&8fF6MN>_k1- zc|2Z@UIzH$tKb7X1jw(|tj4S33AoAg)9dIj;I6ko2XyWYg)IG`*E^w5Dq!DzCgvJ_EzXYg8J~DA#R&nO7IL-9%&O2lUBy&CMGZMk(+4q#+CL? zOrDgOG$Ap;*~gxkY!{bc!wp}4ovo!2^%d<%Xw;n_ z>Tv*nl=mqK5qiXK4J$IqtO#Wdg&orHI8!a_;lsZ2d%#wLM*CQD6O)P)69ioY{V$-O zs_2(1dI{(+f=)fiU#sYipdSEzgrd6?owol8^c>PJPqdXO`dZLu-U6Q^9oCu(IM|QgP$+~b2AsTb8u}Db*=!n z91ngudJ)P7vJ4-#n+aOEiN^l%VXyW!%wICW&Ns#8B__A_$V;@XjI$@EE|1SmOpCod zF%=FlAu$;Y7=8LqGwNB;x1UtKn`2RY6YI6cO-M{#8E;QaTi!D_G1J@2o|qH+eqtsB zLEr?FoSCS*3v!-r^me5Ur{ZY5S4;>Gv@YR z^-Bx)3;KC`M)nLgLR~)fQiHmD3q#rjeQWIjow{t&V|+|^qkxsZb`R<{-w_H;!ZpVn z=1kyNJq7xcppQ~?Z|rzU zvz;z`ig9t!o*KtRqbx^aVeGYuMFoi^&csT4Vx2v)(Vo~8Ga+$Bj6Japf2;AgCdQdq zIQ`fSvcG(qYAxEE&-QW?OJXY$6WFJ}fc_)soEuUP_?7Yx^SDBfyu_Ry^P=^MKH3Rc zyPgPzp2oGs(LE+rghPSW2Ogq=Qf{9Vu%=>d>~$C3c4j@;Vr49%mbZsJ(H1+);N-k0 z1mDPrI8_c>Droyz7a#Vu5wveWbCIwtF{u(GNO~LSPR##S(qqd-fen{jtG9suFVY!D zFr)MO#7-0dBpd#Afu|00@_k&B=V}yA=@UD};Hd+-6Feia=3WOsVLw`9rz9q??2(^n zTONlQ;T3ZF<4|=Yg82TANAIw-ZiWT^Tp<2geS?e4wMZ=?lLbd^I8;6>%(>75ZgmprK%@= zh%1s@H~QkDJxX~hct)Z;3Hi|7tS{^Y5Akw6kHu)Pb1)7DguF%IZT=0sHt;rs_b7OI z$KRrHy;=mF?R_--=lF8|tp(5R8<0DO$0*i`;)#7?7XwV{(|}$u-gba***`;}KOJKn zVn2~u3XhIu1|ogWq1xz+grf>k5-idaWbDb1(5C-iw-LyU)P~cAC zxs}(a1oGM;>vH6r&1ycI<9)>1nU5H~qIY5@R;!4`b4nkCzGKi~d?(sSK_0pSc`CmL zoOZd1`kL1;vHme&@0RN-)C7l&6I!3xnTeIt66@x1VJOLg25gAjpj!(2{{K3(+vBvv?fC16o016X?p~l4f?5P4|} zcMJS(f!{6gy9Iu?!0#6L-2%T`;CBoBZh`-$1@_}vKz`OJ$n7>i88~;~C%ot4As9Zm zwIn_^ae!&DoT%_Zad2s|;OjobhkH$a@Ff@GQ>4ndKjp_L|MnMo`=x|u5BT8tQhe&T z7sdxidg8M}m1DavKC_g5+(YxjGZ}ukg%_U=2~;(Ut{UVyAwM`O6CZrFfcO**m(ZXe zRRRq?OOzp0v*GrBQMZq_D}KDEByJ}ecI;I6R@Kn=3NKgf{to_U7AR4E6j^Jm^3Qw) zXDe8t;6eqLE4WI*hZKB9!L16urQksYk0{tPUA8<(!7~&bt6;u@vlXmRaG`?B66D)XDe8t;6eqLE4WI*hZKB9!L16urQksYk0{ua2kZC@Qt%7~ z$10ew;A{me6kMp_as^i@_>h9nD7aO@w-h|6;1LCTW~lZRJVU{;3g#;~Tfqti7b>`1 z!Bq-Aq~J3OZdLFt1rI8CM8Tf;LU?`#DJZe7|F+lVHD8$Ir>jI>tz9kQI#tkAAR}yv zs;9bXS)*=>Pf&d8#LXGpCslao5_vI6;cfVWDSp&2S!@d=o+ANnTFVPf;W-L-D7<~2 zyfC^|qS{l%VX*ZcdAaT~35_@#X811`yH$N-U9m;se^2q9pvrR;jBGC$!KcE6C6do_ zuM}X&ON}B=k^k3VzZzddKvPVdxXgJ|QVe^qQMfUlwjx<>R}~FBPvM<-Q~I}j4EtK5 zjNfmO@t=5pW!EUo&!}mFjeO@T zz8tllTPhLV@9Ws8he(yvW-a_lb)8Io@U{ z;p-&J__$tU*cvO>CyXJ(_?UzbtpKsTQfAGO zh0muSkK&r05UOAJVt6ugCOS(|%feSPW+P{s)1e)Z*RmD@nddx%El=U=nI{5S>ioS6 zkhj8fAhXIj8D3oYc5H$duVp#E5qU?no#jk!59Hl=CfK$(@4&i+|A>zSvdtMu)gPpt z3~f7{a*XD}f2FdccRJ^G1oDwId$02^<{XZnhbG+bRF(nxcj$DKv(Gt*z*6{iY%{by z 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

        sI&Vry7sNl*B_^cw)zP@tV1DDoDQSB$1=?D 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 Z0WK>fTw(n=NVMkA2tp%8ghS^e;o#67B&84R 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Ò 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∈5O(A%o*{4 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 z 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 sbV$c&yXyoZnU zvUaVY?~&<$`J(rc#-<@^%|-*)M;!$zbpue_Ty%VL$r_QWgYj?Ebm6=DZYSWrBn(%S z7OTaHVe65;^4qQ+%mH+lG{5nK;`OKJZyub6me7&huu*mFl-=SN6I8?T(SD*MW&QB@ z*WHk2Pw>qxGJ`KNJ;GPzORj<56JQxnuTtUj!iP}a{=IYVV91~vP<6LMVI~Dnc*ink zq-E&LpQICV5$_7BpL94da?;?5BN5!V2cMb996+>OVvC?;H(E<2=dVx`L-+CeEtfmw z_*^(W#GE0u)dx?dv^MRb@s7Mu|BX)w6N;pMp3aPkfY9|{)tjIzYd%px*q@7Kd0yC^yNb1u zNjK)7Uyy#H_)XE>B9IPJj3jof;>(DUb@=!MIw^1Vt`ZK8XrvDomRcNy--}DHb#5h~ z+NR@hO`trQHQv!jL=yDMP@FR3<{xxW&W^XTu3%*LUZVB4?{G9+`a?cVha0td53L*m z5Ni5RPU}t>-t-^KjIb@n;IBXh=ZYg}{GC;pa_fx-SJP*QI`9uZ#QN0)gB1u&gHY zFBpO95l#E4l4SzNz9L;Kb{4*uUABdME1{D+a&_$VN3hv__vE4F#ibbWK6Uc9&{a>Y zr4CU?{dJd@kEza}RF9w8e2_4=F{O>3`S1oh;}T}Qw@BcZX0SX?SYLwsIX-EKynssa z@&$?4C1~T_{jj`s3stuscV>L>z@e*L!ZSqy*cklPPTs$Y`wqojJ~RFZ`;#u8m>+_D zY`+)6sdA7(R{o2+hXq4Axiz~y0SM$6nciQ%hL2pSOeaodAmQTA@83y3<5&Rk)B_g6 z^M}lg_2R|>EUTR8Xg!yKta{Zr`Au>JDc#F&GqOWhfbvn{#x&#=8MU9kaS6A^kA}Kl zp~AOwB1G|u1>hFx$SSMXfL+h};{u{_OA!;eID&&zzXUF<*s8J!`3`VqM$Y zQp*KxVc{dj(pD%?@P0bf)Qh(p2JdZY5@76ju+8qQGT2GeOLyYg@Me?&_X?_x zD_fl=^oc8-C4-(owLx&T!-5NyH-3-ta|*zt!|Vcg+bwt}$UbGWIE;T*9Sg7B#-MS3 zrDmG^1VsP+{i8QmgWtS-63veeBhY5SMl5g%u1ije7=_< zK-BtsuE_)h&L>L{3kE_*Y-m|Hs{_M&pUK(?_k}Qxo|ia#1e$f)1X+i2VYAS%&bH?Z z5y5}7KW!BtV6yFTo$&JRhtF7FEw-s++u|{6#ldnIW>p8i+~7pQpRR4@yIbJ2?bc0x z{tRwD1?$x`CYU_Ku5npC42SAM=iQ9=LAcJxcKTN~X0?f~?pO(fclp@gFlAdf=aR(d zwCf|k_3z-@wKK51)k>68)Ct9U+A;PBdX%nhyDpu7im3Se6nAG|!|_z&hr69aFdn@% zUYj@xe&+oZS|S7>Ws5>pJW%$BNyi zZ~xA%#=_F=@=kEe|HQpnT#nx#^}jYs2~lW3AyN^gNrRyhA(2G&t(1(RLJ}fHlVl1Z z5`~B|q|iW8W{Cz3qIr-sXq5eVu7m&o>^Xg2zoYx?KDh6FU3>5KS?j$Dp;p%FRr)6d z{e|UEd)f}cu>r3>+O^gDYhnXVnwt<6>y^ua_gIB2&S7p`MUGzHH)n z`0|R^LXK!FeT=S0ZU1qFFT#2oF`(+|?PvS3w=yCtG_x9kg_;(UCgYIUnK?Rk)F1Q= zyD-^J)fXW)H>d3WREYZ2Gjm5C|AyB?Gr4X0etdcRtXIBM6&)%2nny+)gsJPM%4H!J z(YUmsyuEM*hL~M@KOtrf$3N;}qvv{!mGkEyH1l7pPQzk2_{U@& zP34#zSw3s&@c`S2PnJlV(U#p;2ZA!c3tOw_|CSJF;LtF z{YJhhd2%b}jbdxN_Z`ILuPw=*Wd^udEI(j@P7S(7P8ihPeG28n3|g*cMd0(!pIOIK zVi03C%t2}3bmTP5n>AI}24|9FmNo_nInFCp=Uh(Sg4UkZb%_tBKt@Dt{?}m#5%DyR z+5VKpe79#Zp1c?)Lo+9f&U1%ZfR4zuG!nQBay`@gdtv!s+x~|U;W&FdbM}ny+tHi1 z_Ss(dX{e~066dIsfL)CeRgotmAlh+TSANt5Ts5mzeJl7}q|>h`t|<#d#KNUEMp|Kb zXI$0co?r@32Zh@c{;tCJA>J!{Br{R8BQ)acE`4-n9qLnls|M*uH~QL+jzHbyy^d28 zOCct`^OuFIHB1ZAeyr8`jI$FyKald)LB}@fg3D>WxIWM+Pl~3Y=hD@9#j>%`U)B?` zY1|tm-TL{UZA%ZfDrFy7m2QX7pf5!u$CO~yfa$kO*Zn|1`U~Gd!u(JE;jE#>D}aZ3 z1>S}FLZ0r*v-7p$#fWbCy!2sUJXXjjh&e3%2L08KR%B$JLT=fe^|Ut+x~>72V>da& zt9tB1$#3g0wf^;yt#A5K?dGJ{wtgN4waR}>DOrR4MkDTTx>^LiN0PD~D&L^8V@&bB z_T{+K?xLNo9ST#NOx>Bh0ZT>OX8t?)6p{n7UlwhW!1kIyTaJ8|!mGKS`l{KQ*r*}> zQQ}H67LAu3GpMo~?^`y>cAj(qJ0+8`Z-Ny{b4n&SsP*G}3Y)t2@?Sg-X!W?kc32ini`5!MHjRjmED(;2C)S;e7k=D6i{xJaI}Cf7cl89rvsN>#a=}cg1dj z`-gkAD=s!5X;-7(wXP=^Uo+_bSAoCr+2VBU!qCO&E_h?#teXX0>pLf3+!_h34Q@-+ zFHVDAiP_7|M=!#`>EOMoV|C&6#74$Yn47lPjLh5kGZpRBB5s$o2coZigT=ef<4@04 z(`WHY861W-C0G2MsNR$?KovU53BJZHJ7|K`am+1DfxwSmBHO8{tN04s;>c z>(JDg@fBEW7P(>Yu7~J+ZqO+|uL1KnmouX-V=VO;8g;cI64TdYCA(hsLu==!(*>vN za5wqz4E=ZS5P!cUy5sp4ycs-|X^aTM-`fR#&28N|$U!8|Y>qO7!*OTzFx^mvd&kNAL(qaDx^Lk`o>N(tVxe2dQR<{j{l*OWW zEwycNIS{`+%SpfD9p-DAq**T7i8aNPV!TXn3@cJMLD=U_OmgH61gT89q+!1q&bp%tNk17L`t{LOt97yJtNpJh zZ(gB&|HGX6?)i8+R@T3~W<63i##Zg~jz{}Kk>2EUqhLHJXx?HKHGwZQNcwE&L{uLP zyQr%kh+7&5!Vb*%hV(0rvD)s!^_|TOtEp+hS_7Ca(%y>dn}e2Hjb8;Dul4oOiVg5T zVY=Rs+&-WEyqA+Zv_8;ZXA}E~r`*BD>5{`|N{k?ME5>$vT9qS{J ziORvh4y>!LL)f&bCb0%JIC5akUnlDvKJ5c!0@2zE?9>hX&OkPO5hU;rF^<&R=Or;gCPsFpCxT~M(C>xuJL+~80clZMeSleHim@Nb!&4B zZ&Uwe{%0g!_Gk4U>}RKWDYmo1M{|Wl+CB@Z2>#v}DsLVYtfs1jjYe|yG zfRpI3_DTJg=Z4KAI!;>1e#fc7v$D?#?~lW49Aq}_@5k)-bBm{M&qmIPSrYGm9)jZ+ zooNrQo1*lMw9J)l3sD;XcDuHatGjV{q^IR(Ur5Vr`Fmx}Kd2jz>-pm*tP{zR=PLBu zAv(~{^zVj7!RLKa_sqe!SaNOcthV499CBS$F<9RfF~|SAvu@l@^d`?(Wm)(fdEw(^ z))ZMHD)vQpoM|dHO|XRmc?F(>YAtBAF&qq z9-iCTHYXU;t6a_hUVVuxg$5?8zCA+7lF#!BJFnoTX#b|q=Z#>j%O<=_RY&`&$}yV+ zUESD3Ts2I{?N9G3)oM>$fI7`iI76wIOPqZW|3_BieEdHc zdA)qPF+|{*sJ%X-D9q35AAj+-Yf8ZAPuoHR%y%HCbeV0Uu#fs*N{P9ubsWvN8s1b1 zxxPt7p&4a1lQH|=ZOgoq>)|q5EW2xpFi+f7u}H&kG(3KmhbfvE!l!iciY4;i(3(6U z$9&**|UnQ+!H znvp)x8)arX3CA6;YhEd`_IPs<4SSpw6o$)@%}(_t~wEOf^pPZaumtdzPd@XnUJ zRJcAi2}Qme=XU9@g_DW-!aK)BU>K8WlJKt>qbovIyRA{d2;X|~S&>O-L zIzDUJJlAD4W0uXXhe_xrPkoamcv@hlSiN(>qPxico#)Cb2 zcQ3y{*8z`(`>n>o>rwZi?2WFNJ&42=h5YiQ{}eTDPMC`>mF=hQ|Ner*ADu_^{8^0r zkETthF6ZLcmd_4zJ*HtpbK~>}lK){|i24ARNw;xl#GzGj?|(usPGyFb$`k}Rr+9n6 z^~9IlZqKV3N09dT&7wtPZBg~gWkk$52kcroO?Qd!Ukp&U`Z)pFP+n%B64LGr=c*5x z(!WyC*fqf<_2+IV9_9UeM|fg(Xy^BSm2uem{m#9LQc`; z+oX0oTMUzEUbsztBGgloOcwGO3=AEz8m6>wFe)Zx>jlLJ= ziK`97qFbmRvvSh5MsJ*2TQkPg;07LiF@lq}JY|yKV2w43g&99i@SK^Qs z#inCer+q!3Y1$vW>3@4JVc`ty(+jkHpJ#=)17+WBtSv{ut9DcGp{96VzF+HVWjR!` z4)4q;909&C%5T+JLnL_C>p4x9gx<6PidH-KW1G**|NP6Gq5bk#=9B~v`0hR8{Aolk zo@eR>wwez`X~ciyt|thbtPbYhC-}T`=c`;FHdq6GhvTNaFnx}Qmc^o<^2VZ2Qte>! z$L;uZA}=Q6V>_}d{^plFNx?|b#dYge`onpXOtpibz^N=e|K`)B8u(t1QhuMi7FtCy z@)PHWV*DCi|Ekiv!uw{z)3Osqkgs|ZC6#N4iCy?4=2(0)>)D+DjkSGQUUyd#Cp7oNQtKLFL1_5U_L zJBYZ(Akz&MOEA?UbK?r(-1x)rysOmO1#okU`?jOQLhxV57KSeIf|mKoi_Ly-v7@J{eS%#Xn2fev`wa-DcQ`qTo0)hb1BePJlHXe>^yNXEk=nVMQ{h=X8Pe5D#1s?yg5YCUPEc1^v?Z3T`*7+~M-ogm1 z-k?BNH$~x?ohkjU&19w$kC59M%3I9R$uzPB(rVkN)@BErwIG;Ax`|`fCPph*JX1Qa zKqKOxu-SGEwBd63Kv=YvWNdn@KC}ItGkPg2}2F)@`5wC1V|K*8B|W zL7gmi|2IrnDuZt?!!0xX5!KPxzwj>gYyAu z%(=e{k&*NG@4&g3F#8hJZ)VW(z=!Pc>Muxpc#iko9!{TQEipwq60XbS(Q>Jf3ZLh* z#WPl6l(8z){kR-&4xi??J!I+r#92H+`5jqydm;bZ1q2>?zzn9#;muS-mLc5_&Dzgw zciL_|dia=OXBjk{BG9Qi8wZBH=YQ_*!Srtv_^PH+=#9x`%?F!krfWREU3GyrKKzQR z@O`w;=gBDSfp6i?ct& z@#wYzy#D-#!{q_kcvtYbg*r1o&36!qIs=(A;`C+TP)rJvr?U4U2oh7JAJ)^jja)aj z`+?sI(Ll?dGOE8@h>ud7i#;7o2gL_74>famXg71`dEtn7=Epx+KBwVszgSwC1(G__ z_!hgnu#vN4*E-H%fOkHh7%h&l*cs%wPzBr6j&qOx;}rG%q>x#-NsIfV$jNIcosTJ{ zOD$9AVN)LE;2~X%3rFS4%^0F2$MXx?$>m=Kf4rd<6;ggIE+m)~@{aM-E*ocgBpN;uI>p0D_0cD)54((q@4gW|5%Q8%cW8%65xt$OP8;Wo zk!9it9=Lk}{jZ+irX5B!h4jhnK?*PhZGO~G>LtldXNKRutr4=Ug zk-|LPIzO6;>{^FGiAFp@&z(vhjigcOw{iN?M!u#fk#_EjVvW;p!%yrtD{5{+l1Lde z-R6*}$tN1%=1x{k(p0?l`Ty*_@j$$vuXiuNaFLs6{2fc4@dUI+6*Um&45ef2$HRlhh|9?b}Vh; zSr>*%MeGVSn&gHMks2%#p0?>@V|Obo|yX${&q#A7be0NjCw}H z-#=hV*(I2%^^qxeUB}0L5{3;%X{RmkS2BWLQ49rcn2jG3 zq=kHaNYc-0&){rIv!=q2he|ozIlh{DQR^Uxdb`nRLNak4mpk z;!Bbr3Ukv%%yyqE3Lce_gIYZaNoRB}OC=|(+f1tPD-s+RLEEVZQju4APQD2x{*mO@ zG*Y2CrZ0?C{)gS)LZuXE%IbAVFzQ&%wV`zo6fgbLt9Mnd`@koSCfvSV!>Vf zr{B)YKl{=1!CgF3DGk}p*Wuy#5e40W>|$U(Mb!_%d`o5Q>s`+jq+Mw4f4!_Ha2ayu z#dEJAEAhB_2QPT{g66F6=aWU=(w_e=kpJ@W*t98u|0?#NuR3P<-713@XTOnhWd#~2 znR~AcB>nvREUY0A(f4NX7s8sh?XG3xHa)|)iX?va=X6BY$nnxGn{eDl(7ydMsnFPo z?+*GwD|2__^0#utZkUXmol~&+&J8Y+B4pvr)5#@$1eu8r!K;W$TS-E-hiy~QqLcTt`MJJ>IQpM4^D(NR&aB@UUz9#A5<8gK`Plt*H1=y@vky~36| z3jH4|FZ1kxzohckg8m--fy=IQdEVeka$b;)V^1&BVd;7jwsL5f&EXs03BLWo67)1q zn0xNqgTVGv_|)G({}rati9vn5SMUj6SMXp7;@?rbe-d*Dkf&u)>MT2K92x$wM99c) zY}-2l%lk6Oxw@Y#x6Q@e!~+!N;YdU3J~Eda6@sQdH|`Vs*niJa`S#Bwl6Zqp_s_sj zr3jkR9Zu%qgJ{!MLbv@O=uB6`0EJczGMoon%gNYrGZ~qSvglQG92tn+!Lo@%VLWdj zE-af!clbtD^KB5VQQ+*f>S{Xr{x{ziK9bVf1+U2`KP*rm&KEn+g_V&k-4>lp1AB$+ zLE&~GN25!ll`5%e&TKL$5yc5#TQnauLB4V-O==OP#8VrwcFY&Nl)S)atZJa$lTNex zz9lp^XgzaC%ck48p70r`hWv%57;mMB@$u`~t-CS8++#Q9IvbMJP%{?%JCn-$r4Uz?)BofLXK8iOq0(Yev+p=aVET^2hn3UaZ2^K z#^if-Y|5Jun0|N^O&=yhzbJ}b*}k4U zAIZ|@@@>%jau}{d3+a61DQXe90+%Q;Ox$J#HgFT>Zl6SbLI!BUqHI!Lc#2(F+X=JU z4J>3_E0+I|gQfdk>WTM7+M#X?i1^8uOB}&MgQ4t^SS&3M4WuczB`CbZhVIoD)BAIA z^t)I%XRo=$#bRygj?fWdGJPYB)m7!qu4_nj|1GAya~gIBsURvy9`$+uait^5!tZ;4 zPp%Fm?}0mL{4igfcV5D5Pk*GF&&v5VDO*ZeF9XHh+OV48#)b|UEX;A7t&7^)G@ zetfZoSJf54s~Z60<|bBIB~E!&`y;tYU z=^JS+mLfm34b(RJEn=z#fB39sEZ5GV&2K-kWXTcOkYh>fmc4`OlQyQ5H^^M>7LVGyoW@1j@xcd2BEongo7waa@>){Z zV*QF@U)EtqPaLXvDKhfkQCxQgC#CBcl-|Mo9xlR^U!2xIZH0*bBEHFdG5wLU;X0XNz^7%^|$A2q~Zzqe^dZgd?!+}N9nS4?QoNmeSv327i z8McST-+oGWaxAESX*xoEU&4HhGpR@Rvhq{wG5`4$^7&l_{|Bdm=Yno^v`AAzbkm!J`o; zs9aeRGV>$&V)_CAF_ zj5a2#%LDPE^a^f&2YyIQAmyBOh>sKI=eC1c+*5ZrPZl}`+H29bR~qfylLpRoV&cC= z$tvgqFZvfxroKPWxpoQ0DNN^VdpSL@vqS%63&`fqAd6)l2xLl5hWiM_zmHeY*?u!?YuCNt=s$_NjrD5n;)0r z?MrKBFy9nMXL_)g-G?aj#}6LunTLz(i3LsBirhoX$uB>OV)+wpG`s_fWuAO|i7{Re z^WyuBUeXW4$GqL{rI24)%FmAY2s5t1>b<^GevC1Dy<#1vym-vd%$tO;R%0qTd4y&w ztMgYrpRw)!4T`B4gz|%X`1P$Zw6eU1wIzk%WVj67I=Tump_WwTy@IsI9-(>8VRXK4 zD$=7Q(V%sXt4KCbYppniCXJ<~i(Oc0fdqm@uCc983NfH}E2*?EMA>UO$Xy-=)0Hde zWv>jK8g&-4%umC~;tZ4hYYfHbGI(6@hW0mJW8HVnacxZ*KNw_(D-uKbjVD#8uNA9lVVD!5v!1aiNiCAh+y%?vJn9`XmOVPqh_!cy@!N%0 zX=?LPTI;xmG7qiA0m+ZJaqbGLC8GsTj1Q@WAHs$QKJ3!=!zdj-op;B7qyo=z@Eln~ z_9LdS9DxJM^Q=kSzJogc+=0C9F8biL56|kdki1@kl}vG_icEZrJ;8*p}~-Qr?w)_xVr%5cS`>KJIOSjfLj?cLw8w<{o};?tEIQHImv!bx^=CF@C6|gRYHb+}^tlUAbMP zH^Q4#BbbSOV>T3Sxe+#A~_Rbl~-Uf@Hh=`c?^j> z9ZG%vlqF0^q-Pf2SoiHR$laO6OT-)T?%)DSbr5vjo2krLlVij@KgLJj7S45ke2m6C z8fzKARk8(M>=93{^zI}!--<`xKLy&XqRgFYZ1Hi#Au7<@N8iUZ;d_ps;2(X&PHpr? z^M%P&P-0G_lx6u*fm?9?*dWxEyAm5+Kxf|6vs;Z}Mk!93%W*4t?u%e0;UHtZbJ6iH89OFlc(b15F=;g4mr`+yIos!_gAA|hv`Wl`iUxk7Lc!OY9Y38#*PG$m z{MYY@aLdH$AdEuB#h%|KM>f^@J(}Qs|LG(BLcDk}M?E&QKe1p%;JV@Ir;@Q%wMATKi zg3<0$>hBrFiqhXh@kJ2dZ}yyS-JQ(!*8PX?Y8!bd+lb5da`?S(KJ|+>VzBNgTIrQ2 zu*G#r^63FodnVEPQgW6OrJ0j+XqKMY~r{;BN5(Pj&kzRwMot!A7_E zLx&Uib9*!WRQIKYu1~Q$G!;J-i=iUE9`YmBvIT;_M=Wv_$*(t{d)MDFZSRE`Jc08+ zypwL8d_f0x$k4sL!c28lK8}hike$XjOpF>%a;+B;{$V>?xN9zrQrXInUVKGP->c|y zf-++7%W-w@fi%2AhUI5kk@x-vHmq<1?bqAS#|k>ZELRIURy2WJj7>>)sNkbpZOP_$ zJ0m986efBd6!G4f1MSQ``A$0TN5q@4d7bXwv==F>Q8s=(EpVR)) zZFMzvRG2Fl32Sp`-6d?C?8yg4m_oaFKQ$)k(z?*O=q{Z~^`*_|e&&bl)2nd(o&!l2 zIMK)@)v#5$z;YuPeKhUltpiJGPIw`?q`D!y;U{0a`Xcf*K5*~+Hfr_x&I-q0L9AZ{ z4J&nojqC!xaMTLQ5IM$Hx^QxJeMU!C1=7}1FY??s16xK;z>Ao9w4h=t`})rT_qTkY zvv0DYRw+R$*LFdCuobSCmLYiz`1sTPbULq+B?mi0G1e3JCCVspXcnJlDR4G->}7@} zqU7!*%RGf1fWeZ^m~68ji_VRvPm9y>T;e7x6nvuMbq=_8d@2>&kHtC{J2)->0{hFY zSX+LOZM;{7$qGNXlA<5#8+I`p>i~RS+(|P}?4$+8IWRPzOR0f(x#M1MGQ4j^O=frL z!=d{q|Dy%@KZ1T=v5aEHocX!4Ul7gTF=w+0w;JQN;mw&1^pC0;hY-ea!<2gZL@J~fe8MKyF-?z zo^n&|4=Bs?XWMs;gzgCgHoC`$9+CpGnoWdv;$ZssT!W;|O4vXFQ!;4wU_g4pnL)NoNuiOx+_=n&5v4)2KlA(V#^5i$wi|%Y*kH5nOEcd6Q^zTa_ z?rC0!q{V)kQW`@J!6Vp^gF9)V$Peo74ab5}My%~~24$C|vB-ft5b2PJ`neCNEVU9c zG85^;qZQD9+(V|xjO_P2(o|d{=N@fZWpWIY{A%dM(ZTG7dpbssjA9ovbE#;BAxRBB z0rT-y>{UrG8m=y4XEWcRBxx<*5n)P4PrMTDC=BCMtl7u9D0=$d2ty9oP=m7^kzF?x z@+8)fWrcCmF7cseVu+9xG__n!1Q{v8yGx2RZ8@(Q{ghISJz3cpMq>_YQ-+QvdCHxD zvY#GRZHVQc0_RYuSt85yK1D|B%BW;mC-sF4!75&bH;M;XtJYsqJRCp+j?SXu;`{9T z&=%@HJDYs}TR`RqZ}UC09s$7(G<^93^c~K@(cDkMo)*UUNKK~kS^F?TSVM)aKUrPo zEy`7@;qJmYs_0uA%{~*1=esR=xMLojFg}aXQtN2#^gqn)*)nh&F<#_;j~3sR<}oi{ z(J%Xx$hxzGUPp!S8vAbu)m*~jz7@PD%a6GPdWta<2GQ$r)6{`?-xl9 zl%$C_+;M5G4NZCC!OpoU(Tzw8>|7H}S6P8So{R#v9H}PVIwuOe`<@(9FO%)be!g*{J+8P6#G}$E zYTda9ZbdqDJ#!a3|6e89x=p7~bA;zX+ZWHqULtqhW;R^m22J(LW3{iwA-yJ@ufO~g zU8SjP>zFM1D0rzYen$xTz1`5dF@Usp58;bvSJU~dN*r+tp$*USF=1;hpu%V zMbir;V=GT~7adr+&oMf=GmrXr_0gn{<~SPYM`90r*_x#;kgRp!t)_>C{j8dw_SsCQ z3W@orEu=Cb^TDL=LjBws)?;msca68$@vXDb-K)&h+gFf6<0gSExezjMJYY3dnD?ey z(u<~vw4nMJ|N7Aj3&;MX%_o;5uFjDc1z*C&w0538>M%{-o`@@+Z4hxk%O+nh#f|aO z?7@u1aGW-Q_hkIS#;9<-am=Q+uzw`!v5vMG$MUG~`fB=r{Xbn$}*mmc<<{!G&4$3{e<^^pjV$}+-@LxX7Yso8X{wG2L5r?B#Z z8avi}8e1KDSjG^+e-YA-FH>b9{q`!mJN7Ak7IatD{A-lLuh1PYZDen%;2+Ek1^rKz zm1?}eiqGx%oSuiYt5^9~;rNgn=$33a(>wPNVMZ&cbgGM>(`_ZA9&_BSo5@72Q)tANYdo~Tijp4(v8fet z^li&u_S^FS<_&hiyv@~g#$YJyjegLof_^M7jz`b8S8Uf_hRJt)FhMZv>u=Sh2({60 z%bmvbm#o3TcUI&dENJYC_wg<41qN0W!<+?<|U1Bwz*qunb3SL9xZ7P1n4dG9I&qcG36koUBmEzyL;4_+v z@GMZ1TyO0`W||V)HCml|51YeNbUzhoKH@hTC&3|SBmY9kI%3#=QrI?TTXn&0M>Ui6RZ5C@ovWr>Q&6(=9k~nr$vh?Pu3hm zMo6*GRu*LY={X(j*h($oKJ;pD6NL^nq{-#`>C8hT-a2$VOyI&MD=5=0=19()>M1AM zkUfuU#oM>~B%7!KyJb;K&7v58A{!y2VTIp*+Ppeo3iWt7GT$QtSDHU(qCc(4J*l4k z9hUQ`pY?SK~U`z~xhK+`}wjPbNJBFl5hFEod z5B;cWqQT}jX#Xw})>Rk!1}|bIU1|jKJ&gIgps8fLO_L7GFQRW_i}~g)j-=SE$b<2PPWZXA zg2lCHG`-2Q*(W+OQkXH6*b7{_S@iw$2|UyZV2y6MD7jlsp0%=+bkUJ7de=o7CV@0C zq>g01?chH>3I#6TTK-qyQK<(+^DRy#)UKV(3m2%hnD++!}_d$`UXieGcXUX85oyiXRUgjYS@Jc$J!=K;AB96A!ha zsec%IyjIQmVaAa}Q+Eh1Kb7u}^`( zAME16`N|Y&Fr7J=718jaw$y*&2K~$PBqK{}s`hn9vU5M_?4HQu%2$#q8%xS@Hz>~a z7N2u+Aw9n#g{^%i$T6M;_E3swGoxu2lxT%VJlvDwp}Iw#%7%ZSxW;3A8uJ$Zhip7p zd4-Oy*+&H}_HyxP{=;P_LS5pivf>V|57T6yf4-;wLF4$sm`F5aYIExzN19u_j3p&K zq?lPI*sJjg^KRu6J_~&JwCQZ|wUrRRcY>rXvS_^FO(r|-BF1HAB0Sw64L{#e6SkAC z@f8@^HqhRG=XihPVajz^W!B3U(d#jW-0fdGjUJjuzf3Yw6MUYDYu9`x2IN!i~H(2(zcYZ*=#)D2&dCwaeJ^ss|fxz1Ni(&9oSm^hZ5ah)2a&#*({|I=v(rYH)oj8h2CMPdoYN;3G5#4 z>b>N&<{0OD9I*Iz7vH_+5Tw7HqWd%YQTtyPGdt8xZ*#DW_{mxVE#3B~_El2pj z2Vm%l_hhA-j$O+G$Z6maoKH$4-|!)H@cBcM*p!R2qUtEKNn>?V56C>_JO<`IrbC`T zn9J2Va93qAxRN9EzLdex>;ygW>=ju0GiiUo5yUTAOFQnVu!bi>KEZJ}TX1=yl zcnrmgEo@oq2o$!x|ri1i}B5qxgzyt(2Ln;VAsuT!-_H!>OzNG%vc@x) zMi)O!ba~y=TAG^j5@-Gfkn!Pd{1A)5EzO(!6+c6NMGqs5`;*Pexp*LBK>UaZ;tHn< zy!F$3ijEaU1+Bz~n=Ry|o=itnu7Z1bGTo&mcv$z1{d9UpG94Q1?WuP()mx2rhyMdd z1*ZL-1>IXsY{deBGxM&4pBfx2aF&Gbl_!2!C+1JeO6K%saye6xw?q8=96qq(Hw~~Z z=E+yKz+l%4JoR#;+U_#)_s+uG#8h_UsyW_ljo`mRmY}iDjcpO$?el*qFjhMd8zYnG zMN19wz5=BE+6&Xa&MZek0;y}?YEs5)^m`jHM}K@>8_j#f1agCEu&9ULYCk+YtrF|3p`=> zd@B?CG!~CaB&q&v1CBKx#7Xg2G<5kR9+C2vq_?M#W*z zU|EQ^mElfpAaxbZLcK&DJv(U4l4EaE=WJQ_Anpqd9PyT|)Ay$E!*+b4mMl8X{zw0` zhePR>Dc4l6rH5lD)AeJiFvy66ts=1WmI+KYydv4Juh`y~@`85vj<;4>k<+*#WS!MY z@3Rh*ljLfYs$3SbjQK$OeQbQvjp*%OP!1O6AW3IYZo+7_Q3K?hr%>g-Ypggeo}w?$ z!0d!;XlUKQ_KgvTmiTDWk!zt6g$91$))@>Fy2j6lPr-GUa8`3z6%~>l#HB_;)aVy; z6ZBNWBN=e;6!a${qpz{*A*JoD=VQNar)%G~^2NWisZUX#&Ia4j6PaCXVC-d*^6Z10 zei~hMj>F6m9T*z^mzy>{CRHhcnJ4N@F?Y1N?7dXV&9Y&>dqXL5)=nxH?jL!-MHrN~ zl3t4wUnun97M3q#J|oS@CN7iSHCaJfbBb`z@I|PlCXesdz}h&Wv;I~v{?!Cw{*9%u zT0DyKJ_|e+w{zq)$)5NXeO?~uim-@eE-Ui{s`?6);bI~5Xnm(2cc##!xocVd$yO|L zJILps{}1EWMWO1i4mEudp_A__DDK`jE>bUxhx7Y};Wv5u1QncVCfh#c_JQHX6sD$I{^4 z!SL`E`k;my^99PrRGrB2r&H*Ine~aT&g+9w{%`D4lE(0fb$q~;9dH}vM>QXWJmlv@ zo?LK}?ABdmlWfCq^O`3!cF#eZzz{T3@ zwR&Tbg*9t-{SRt=hncgKkh!Q(!j7VMv~SO2GLfE)_w##k+Aa)1bA#FD#tlecCHQN5 z{qaf2MC1i5qg_cqkuV^Xl1@EkdY!>^arGm%-k^)NzcQkg?}MmVvyL6BeNGiwf5|FD zk{+JDMlw^!)8MsB`7^5u2pL=2s`-Zge7TH@V`s^@Y&Os6vZn`zmzhSHHr7oNy1PfF zQPM40I4r+P&97guh!ahytsKm9;)mm>mJa*plZYJAczU}#0kNY$VyBHgNvaN^7t*dU z*89q@o%X`4j|DXU^mvMnKFro%51>0T{&YY`c;2(5n7pP0JxYATg5M0M_0nfiwr)Ap zTu*RkXi!eCHQ#)8IsJ4G;VTbKCu7yg-1f^5r0q?^x}aA`NPoybOSF*5{s6AsGzS_x zWVq;RAKLSv6Knk6pglYvZv{@@nK4(fDO<>GY9`Q8(*UF_-p9|#3Y?AFiC=dGaur`*MWTaDuJ7Ie;Ao}Jf+7)}26Kdrqt&M%At$(t zzU*nHE1f+wASi_D!VH+OB@4e@IBDKUp_2<&F`JaZn4#k+%#s2zwDxr`8!x- zgFgNbMduxt^ZQ2e>y}kSiAuK0N>YkwSY>3CL}(8QsiYwZ86}E_h9rtgBqJgt<4cmH zQpj$XkcLp)=Xd}9@1LI6^L#$nb)9qG=f~S^!aF<+bAlGLzZt_YVZRhx_w)h&`u||J zL~plRz5_)%-=Ly5W;`=?F8!%{#9adxW0|Wx-+QeuxdzOn_l0$E`SX%i4`@Wr@=|K4 zI!l|RM`Qb9Sp?5-qLutQ-T3Osrq0=i);H~#`=FYNTb;Rca2mc9KBgJcD`@mi7fh(V zLcZ5Wv4+#Z@Vi||VtEv`r+1O|G?rd$S7Os|3cp%g5kD}mp2m(F#cq0<(dcQZ{9gME znzcBJpGbcWXV-W<<}Ywj?iYQRDx{XUHnPN`T7zMXzT=Sxpg=t2!Tx_UI_xAma%sRx<0=%uWW z+sN$i)zKldd;G_ny>L|P&Cfm3q<@2~Sj1v~GKd<_X1gllW~wLO)$B-S6^;ndw}g4v zPxfj1MGVXjX2tp<|N6xmW4_BFb?Xs!*>4=3R!ie8RvT%v!9zB*r;+ew34r4MO&IGv zg`cw%b8)!>ElQk4p`OM(c4Gp*K0Qea*)PlZx-9t6V^xGW9+YaD5}claVz3z;e@X^ zG~1ARoBqI!-0S44HH>E0+@}DiSxoEm3CLD`;_p8%!+^;FEPT%;`YrBAv3fTU?J$C3 zi>}i@)rAzf%8wEXZc&dtf3Q+a%ek zhH~&{a};3u(GBDOETPt&TGSGMfIhTtr06(Dsz~dkS zEsz$!1^1Qdbn;y&dQ0quR{BWjpVC0ko|D{G;x0*~8PUp5uPJujLpJc-T&h_)4bLyk z!}QzwEZ#*OehF3dJxz$K=P{BG$)=k1Up=x-Y#*XJi>2>ieEAoRLn8 zs#Y`KygS4ntY;VgWWqM-2Dj4Ab0@!^SLtJ08SNc2g(ps!Na<0Y zO!JHf{4Y1t(ia0DF*Kh|Y_6bHDzBKP^%fK;j^yXQ{zsAHce1bl#n3vHo0z}qyqL+A z_`aP+XgQ&b>7pn8k-QHy2Rux*Sn8sQ~vYpQB7Bot*aDF}3=c z#QQyi)1BGyd(h3zHcqF;>v!1=V^5S^NQK6hYY14GN>M4=Na)uSaW(4@73#nZnkK?_ z(hRtr{YvphoTS3U{IbcEwS26%-hcI50!-0hv%eOzCiR;ofUZ#N%|miM46vEV5?iq+Om6Kl+{^QKjjea*1xBj z8V2y_capAH#S0#eBRN>^qWrayNH^U~f0mtQBbw?FJ7hK2?%sc^bq@W z78Pear4s*YnvgjFu?Du#otcPm{Ya?0#o&A736!oH#qako6TROyJYFV_s&d~`c=Kd2 zClBEZl}15&jtw8Kn@?8^f3uvvt(3O@7?!U%fS`}B*`16ap(8txrl&qC>$=I$?GTNZ z3*h@Sn`ysAB<-y~hM^|6sn^fx$bHw!20g4rYoQBm+*(K{noVhlJgeM@}LdWCi3QT$|InbY)X1DoveG_WhxjW0WZ|enc`h1vfN`mz{ zTSCwGquYsjzKSXL(v-~X0EOB z6ghY$f0*2Web@D=vh)h-j+JwXeK*PH%564$z$jdHF(WODI0TLod6JU{AeViZeQs2u zu|DUK{`UeFhZpmpE@fI|`jx$}8;psC7vZ$@JM!f}!!7?msD#_IuSt5?vr>aCs%>{`w94OlKO|{PO1MpNHdpkC_4$Z$SaIvKY4AkNo;Y zvuheva4pE?sXe@CndqWWPq+fbNB-RWWDc#9$z%PaACp~6Jo+^+q}5S=$P9i(`uiSH za#fJv9d74#1=DC_Lm6gC9)sGs57_zb2<5-j;!}QZptHXPYj8mcuK8S{1*W;wZZeu; z5?|2cN6GA`P74jR>EwrhXyVZt6{L&{pgjdAS=Q1GxR^1PzhM{PHBFWd);=WnSY5uU z^AyS5G)3&PA2?x_LZp*{5pk=@$X14|`?zyQpBVgER*!#DVSlqLwzzQG#(}FxuYh@G0+C(bkw>aLC?(yxqd%T$)36 z+Cl7mL@{<06ycn66zNCA@CEu4XovO{biQ1VEWwiPGi^J`jk-v?S`u;e?lXF{XAPPT zRAXe|MLc!Wq5x+-@G}zZ!?Ejlb#NyCcr6q!)=bCnG2NK|N}H9HIMa&rwiG!*hdz5W zaOL40sDAPv|1Mikm6d0C#>o%#c1j9+^5P8KwxzHE_P61yzm#sCil@?sg?!T4Tex+6 z8vk%12PsD`QnSVb>T_6z*`1vOnGb37?y(H*A2Auu#y-$*Uc)D>xJV203~+nRNpS;F zpl?2Bsp{M(BzSq_One(t9DSYw9k=pxa!X0}TXyBEoMBxB*azqsiBgQW8P@ee=5 zPE|%99=_)OXJk>;$BFVZb7-670oJH=2o*;AX|mrAWIIlyn01?Ip;kSlj{D+@VC$z^ zKBpNXFYsOPxVN5oL5|0F)7Z`LxQ|yRmR7vKiY8V{09!xY#hszGTxQK$ zEF7NCo1K4|wj&oY549H% zVA#NFzGP$U-E!U`ICOc^W^C_TMxPE`B*~BYn77-6(%;zN#JPMnFOtZ}WeUq&mq2g! zEWzms(Q(822EL>~aj~Otio@q)x-|39|gP{c>6z`Ie7TDa2~Y zUgR;c0N>mkXr|$0^0_&XskeGlJbRCmsduPr;6A25IS_N-cVmgxP10Gn2MuNqaWH5% z8#3rN)Mts$J9;c-{prV*!$(ky(G_fSpGDvEt}x4=X~@(3g{YM`adE(SM7p zrr-q1UqmvQ>w?ET+7eK{PJW+~S-~e;Ea-g;_vf#IRz^HUCbJ(~|UI!NQg?(lyl zy-=_%gsElLA<1^i5l6v9$(PG+lJQQog#YJT#H@=gPG-;p^w-GFR81mHmrhX zixW=_c}*Tj=i?u}qKI*(?9aJCI^mEA1?_i;m5-pwF{zla`vyH))&$?6GMo>o$1A^l zYWkr}|FrwS$7L#p6eS@0;1wwJkYF);*W$12DYiggi6S=3(zQH&=;r9bec^QE4+=tz z@Hu`O5|2ajIp|7!PG8kaV0x^LtzS?|8NT%>r3`&u}^stAj`0 zKdHrQF_$x!#m>Mln4o=+CY2@O#Qs#e+G`SUJHF^}^w zqx7t=sBznjJ8g4uV};;57GHv7^KZif}1gK^LCXB0=!nYc4IJAua#W zp*lOZ^u8wf1X!|~s=X9wI2%3kFA!Ie=8?CG=@>eoOldSS_8qgXEhp=IeQtQ508c0C zQQ-G2xOV0{3)>;|G5Ixkd{ShQZD)!sdk$G73uaW*PD)GbgCQlKC^4svPWb22%ET<5 zAo2ybRyMLvv-~kaVGStWIvFkPEa&xAW*v1!C^a<{=SJ5w5Ds;`D28=xXx6Z2*b1RzClHCPuuu3WcYC>7RQ$6$H+tE%)uAz3n@V^KZvf-7)k~XiZCm z7xw(fdOm*kKT=Wef^am^>2hnPUiyvN$5`@j7Ee(==p-+9+Koy_LHfvSp>t37;^>16 ze2;s;Ub{}D7K2pYL!yo3pIzZsisVHGx`L1DHxYEopPwG;g%rV@JsH=J5`verH`D*p z)C~t{1i^4o`a5cYBX5oGVSpGK-1F4vj#RB(vO2lqI4`m^a?56c{yo(T1vV4LZe9w zVEg+g!yrqI{xgoC-5U4U*vZRj<`->Y>Yad2TajU_-9!4zKZEScaQxC&IyGc5UEB7E z@2lEGNDrn{eLb<==pimY%7^dNbFj%^_a z7mr#(_-dVJ6yu=5-zdvsfy4r~L1i5#C|#tRQ>E$5yGpF+&G6y88*eHReP~br@YO2H zC`}m2YMyqZ$K7=9JX3@_3PwKL#Te-cCOk5WZsFEVc3&SKi_;5BJ5?OW7?5_AS*vEdea&qSqkU#datf z<;6xk5_@oKI=9(!gj^%ksk#4kXnUTerMwVX15(JKIT~tna(Po=CAF_f=O&tcDY0lC z?R*tL<39MZD9^9t<#>hS);=N2$DWiMlT4HCQ|Wj1VBC54hEFh*ruHM@R991s%tB@O zT&{w-`#3h~=Ku^|DfX}nQq<lS$t(LjoT!V7$N0{d02JUl$rdSPxrN~NK))di7 zrIqZ|(i%E7tb!@VxsgvqHV-W|r*WsGXxo9Of&-h#+#lIsrhXIkO5cct$7jiY>@7qe zP-X9(@`$BdU~uFGdic1T+busJay9L!ve}2*!H@9f_<0)ao5aI}KVx;0m@{5ZL^N~e zTfLX!9wkKy}nC6Y&pA$HoH#;8nAo>{uM<1`HO4|P-EtUW9-J_}d-|H5C3 zBr<TwO+srfr0S`fV(~`3aXtbd%}n)$mrm zO6JQdn7Ku`@X?pEOKYCsr|mD6>AMAKxp}nj`gXG9HVFQ)7^8n4#o?3yJqE3Aalsy`U;Gng%1n}Ig< zdeU>ugxBKzeEA7YB#F*b%}Z*K$+5u64a(#y@_F+=B+%1L#`~tMp;R^kfhX!PGT}Yj z&|*#R*%lP$GqUY*gsDuQOwH9vIN$vWxyvNU!K97eor%E@WnX;qTEp)@k)Tbgig=pr z3x~B%?DMP*SpOuNf7ExPFGKa1cE~Vtk+9|E1dD0|4m+Cq(#3M`q`zj!LtT|h_rE+aFkOYHBHr6liejv)4s`t31bmIEU3 z?_(YtxG0NOomtIiIZcMT;vKH^d?3lymGR%g%i|<6{|Qf25!ddIanqLI>8iba^4u<( z8QspK)by}+xDJi6P(=2$LHzE5mDDdWn>hyiQIhCD_Dfidg4tnQU0NCm_j~Xaizd;O z)46=Ir|4;T9mA9^yOPmxOZHXkII{P2@!|*fkY*jqbtbe>87t!FE-F)ayE;?R+Jb>? z4^eY!2QFVK^<7b@BG4w%iw%b63{>>lB=YBnpWZBnz_N6eIvAZXk zdN$FP(-Y|E%08H@BsAHKFf6yd3yRJ|^uk+w)3V)YI@!cREWe>d`YSuJMFrQK-_o@+ zgDB5klF7~v5VPksqy_{a;?4@b@P`|QdiF!j+i6JG`T{RgH;j_oh8sVeM9MaopNO^Lbm{UZ7sj$OpJ z{Wm*|{Zt<*OHH~8 zE=Nm|o&O7VXN@A|+H$^a##2(%T0q-%def14QB+&~2d?)&vWrIVDCMRKj=F^6q}W3P z)g7tXri$x&p2h<2c6R*F3d0-w%e~;0vhTa)$<2jpqN!WKj)2$U??%q}XM}DEnSb zGs^e#mYF;0{6ic3k@*G1I73LqNs;N{tJvOFNJ{T2$WY|2BE+q_e#}a&P=CWd8_LqF z%0RL2ir>TKO?;otA#5>J!Bu~ujs0Cf?|-XO(V7ixkJt&n*7RYUH1naayP2H4zSH|6 zTekQ%qqPZRX?bO;@H_v3Wc@!p5BW(-fBV4V`7jpT!;@5#MpJ{;H{3g4g!n!m#hj-} z57MI0D0dwjk7#3q%rN$^AeH{B>wD@(pR|M zHj%wl@I^;jEBf6Ep{tvo!9ipJ)&8l|+4!Dx*tdo3nIdmK{u1W|Ur(#$GI>pGqz7F( z;>+m45AK)<2e2ywsP26`do0nDRJTv(JrjeW zVsL?{9&|=|;{aNhB_(>E=c2#F9P-|}4Zk<^rG~&kI6eF^jl8MMJ}v%(fWcFEh^{Iw zO4l*Jq>>j7#S!*;ImPFz}r(l$33?S)WH|aM+&$ZcMQ#F#kT**hb&!;wzCYr1)i5jmJtmnf17`O2r z_3_cd3R4-HZ8R4rRot1%7*jr=(T4TtUkU*%D{WH`p04l$z8!G zw+im_yE1sDoS+x$ed*jHT|DZgO^Y(yuuJ|Vq6Dud#Xnx;KkVo~Uck*`Q^-#(k{4wz zN80C8>Comi!~n%I>sBKtg=Ey=l0 zeyyJ=_uDYsTyM^rRhQvkupBjZ?jZe5+4Nt({dX5cZAu9W*SWAx$ zbhtqm-h^O%yc%M=t!P}N9gQs-$FGL1#L%F2ER9g5O)5&88D_T8$22Ix5=-C`NZ?w`VEUV4mN!<)2p&I`)CRKhQrsM4WfFZr>+ha|Oj1)Y1g z9%>b(toi438mU|j$z2PmI?$FU`V7X*-=3^~>KvT4PGg^6)k9_bQJT?LP3(+6*(S$S zGTFR|>-3zCbys7V#P$Gm^jgcjx(vXNo3mvDWohR3bI;2Vyeh5ri`Hb^EH zO9q?J?SAWN%G4mpx0GSo*C2Q-D}uoy2Ry0l#-!IpbRhC6X4XfsX6Jm-v!=}5@&_Zw zv<&7O4pOJvWg0814>=Prk+)xtlP!Z0Gw~eF@*hs7*}-V=4?$L`BieW5(S@|i?hP*cD^S%|alp?hi4_z10`+eTHYHCf-x+=KMgS*&^vAq0F zoM2xK#^Ckh`&OJrb>9~w&O`#|M34B1I|q;!w3vRF9>CR?EAVX58UEm0Dh)XMgpWiK z&0S>0(o9@XFiB)pw$@;tLJ8HqafV`x5=k`~B0%aYQ&P!--@7MF{Y)OooSQ^xGxITA zNr`r)Hi$lVXBgD^W0vnBp>N8P^jJ^6R^}Y3mTZLb)7O}=X+7`V;zbiSRP)Z=?wFlE zi}wFGLcNmKAZT$CY}ZCn{q!j6tA3G8#ooJ3bXHl+*+=s~|HF&BqGx9K3Z^bH?3U&K z-=7yFXiPKHo@a*ctP|*&tx8|c+Hjjo|0v(s5}!9sA*T^#WO&C5lfU$(j7z_uuq70A zIpgVmsxAMyzLM^(v8PA2PT2IlAJ^F>_%v)irbPFkr#p8dy#HI0P7^+)Zb4`2+KEla zqL3q9C_2g0sWQGVf4^591@&Mv=32t$o&)#l9zdfvS~H~=;iULNnh(*Mid)CL@lvgd zRL7?9vt^TDq+pMnSAFr*ClvGk)1oE)S8_AqZjcL<_p#u!%R1WArmmiV{7=mg~2$$$~f6A?}E_@r}^45gCc-_d-LI zW}`L!;Y&MUFugpu9>sN}Jcf0wTjbD-Ct^k!ZcUXP>fO%iM$wRJ#OEoFc=o`Ix zk9%$OHc^L9)L(#eUp>e_cNe}Nd4U=eqy9>|KGoj)2NFq|T zzk~alCbXp|kw>}|w|X0bXY(#1_Myl%{}aqJ7k_$w&z*E0_M{aP)VZ?DQS^7q7fhT+ z{9Sm9U3T}PBN9Gr>#`#xm-v`jYy2ghMtL@UP%}+YzKgHrLDa*(gcp2&0zIMIN2xW4 zzA|k{eCkh!reEc&nqN@ki?O7st%bC$Yayln28I`hlSgVN`EIkq9t(X+k9bCw((NQa zvX))h8ik{nFYswd6Um*L^-fN!qNWU6P)jsNt6a;6EB z^EIN6J5zCOo-$Tvb&{Hi2X;lQM(r0XYO7G>#*>@z{+crN{oMyH8rJyn+yz_fFR)R$ zPw}vG0d~mVrr-rn5F-%_pV=E|u4@3wr^~V4;cIARa61m_Y@m!`*XW9-B6&luB5t4(4Is?~|nD1Ci9KrV-<$hz`z1-J&u+F4!8&-Bvj=~<~3ciX$1YOk%M ztUg^dDodXxUKmNO?V>??GwJIb|&@oAU0H0tC_UNLDTde;8pe=kc5-oq%~ z+5y2Wk>dY8{-KXv`w1Gog+7tZENtVjw$z;0X=k9~E3sF)wFvQxgXhx+wDPnL?;SUf z2BnC-)xnDP^;*uZZ`Xm3-E4gG$)$U{4kE&@iEhkvU>Z+vBR$oRsXOnYA&$LyWUL*w zPZyf1qbnWt7|CxQ`$NrdrqJ)gW0+|tPi<9asOeWD7G99Uh7L_wY_Nfme+M)FEKL(l z)$pe{9j~>A@cX01Jn5lN>rKW%-pYcH7%q+chS$6!p+I=OzR}D51ITVpF=P#Yp=qB# zvr$+^&x^GAin|Bt+Pg#S=pb7vQVZjEF1;fU$D@dwor0HI3%OjB4n?W2iFm2hpS;FzLveX9J+3?r?;uUPr4%KKAZ-iSWM1 zk@tVE#M-L_nW=n-{YLmqZ^YPL8&NbrjT*HN;bnAx8allXO&<7~Py4D)c}78OQ*;## zw^8R`!v{jvAer88yH8&u6}iW`4Ej84Hg=!AL*`$Wu+K@sRBGhTD$^=yK~);N{op8M z`mBM}^Dy$cpU7l&$I-BzZtTMA8L<0TPA5Xnq4Vl-o?v7`jRy97<9rlQV-vv#~lib8U?^VBm!X65KYtmUB)!Pgij~v*l8+&O%(nqHE?F;OODxvX`1N!;@ z=4+H6(z|PaxryLo{#Ub@-E>ceX46@=M@NIq2l(Sb-YlA$<%9hSqiKRvFq5A)6hHc1 zhWpGY@;TbVPOkUGbc?0*{N^BN^jw7Ho~!UcYaX+a(MI2m!PI}tBFqxZ&Isiqnta-a zYi)i=%qSHe?kSYCaspra>I=hb=k(km9!_ignDm~g2|z|a4>VmtE@553O0dz++OZs zkx3R$mhj(tp6L7LDwDinN8g9_<>#Njr~m3g$Z_d6R9h)A^LOJ>mG^{I7WiXDc3*_e zEvBn4EP2=8DR5ou&i>s^Ld2^ioEAPMog3C{NWnuyjoHdd8K`-a8q&2J>13VIWJV69 zt`Ec5T#?f@4R}OzAAQ2o$+B!!s}U96_=CCS<&Yecz!vJ6(WQra2p7Cs=hGcjU!qHT zLzi%~hYx9xL;*j2Y8&l8`iptk%*3p3{aEnF5bQYP#sbvx1jnG5o8>G*N#|!Kt1n5( zFUC>$7Atx)@Ffl|cPGa)t{7tGkBe7tu-!*{iW{pre2enL%?C5Z>l^Sx@(ZzmvpCR1C~RvZ{aZgp_u&(K_DZ9t8r@aP?H zfq!EqU*c&_cKv7aX|Fco*n0=|#8HJ3OZ#)Fa&4*o4d+Honq?QBJ3)EyMqf2N{Q6RD&?nub)_<5J=y`c<-v3~zSu9v4>7s%=R$ zeU3Wh4tY_?!sk?@5zXE<%%gv$BJVr!B6<(>$WeTil5dbeW02&uJ>ZrXEvhu$OF9b zssZX_6fsCMiE5n|uBHJ&?6cBZGQTCBWdCS_f?fj=gm zl$JP>K7MdOyUk+Wz1|sbDs8|I-4@&(ZRkC_f&yD@+UAvn)Oc66%c&Z^Cp*~Y0vUR+ zu8#bBuc5@zHaxKPrQk80L~6ni-25z$F2#6kT{en-T@d`*D@D)_jl{zoFZ%o?hNL_; zu%|&i>HCr8q}_W0+$&PK{)>NP_}ZB49SEB0g|yvY9?gfRvV8Ti$k7_c_LW&-%Je;S zDPW`EmoMk@J6iB_`UbvyTpM~=i(FrpB@WMyAVs%f80#{Kjg^n5d3C;A>!=e&WW+Gv zk@0l3uRrU1Y7nhkUyq;>eq^N5k2T(yK?<-(^27(2efT2{%x)(*4}`f+2!+m!VNO5J zL%zP2YhE*lfw>yF|E#1Zfd({1^sI$Hen&4)J)jx>8~KgFL6qTl9?z~GM#zL5WJ(ue z?$u+0`J+ZVbape7>xz!7xx8!s0D#k*D9qTYMXZKTDNuUAh@I zuFfo?SOM;_39NQQF1^*%;vvfpBbO~FN{&Jl9&QTE>i!bZ z>ne|)Uk!!6dYsi<*2la6hFIJ^zyvz!QKSsBdl-_?`LO(8Im?U>v(SzW!jVRX?Lm^r^$zzRgiC> z7cE#Y9|Mmp#=af7XdkS__kNo|Wv9Z}q+;q zHLEbTh1sDxR@|qaK6=zMt0q54uIp5UCi=ckSS7LP z8!w^9@<{F?`o{OX*v++fe#Kskh4i8QCB>hAK_53gp&J&q+`2#)hjO;DBlb~r;9xB| z42q>0-Sa5Sr6(1N?(dOuzcEc{JcapdX~yF!o?-U~^X3}i&KJRj_~gtyTRJF0;UUc$ zpF!d36 z^VAf&RUW>yXE6O$3S=_=E_rLV(8Y=}nv(2>Q?aV_XnQWkI`+o#{|wvrMSj-@M-sM^ zak^5uND`Ehc0nGHAdWNf@$&dd&t zCw$kVPI(ELJF|(GXwoW+d(?Wr4aavyvM(tqsCRh7=7j8`ykno3HmPCw z_`7V*!S8hGQ7$=FS77(44px0hpH4R&Vb_Fj-8gt@ z-wMF&ZS}B8&&Sb<_sC9^!_av<=+)^;^iVg%CetWBEz}8?&J7|9D0-A`GGs{x3O`;l zQ}GJNRFQT3DR?BkvOe(HUMCPT<1{lH6+*kZvf0NI$`@D)ZcrayQ0GugZM@##oD z77ZSVE}d_DV81~$?B!Nou~`>c(NVD9HI)<|Y+K|2lJ;fc=9T)v@a z05v()vv*d1@#LdCvVS(=W$PF6=(>+pB73)fmKOG1Oyqv*)8N}A!`s%qBHL5%n1sX^ zI4-s3X4C7bS8W5=QT&9hy1s1ieufKWUrDz$3AeV%p>JIlO`S~4%PS4N7gyu?+71e> zS;Br_)FqSco!n2NA69J7$H5(rh-&@7wme*pPpu2stAY$T)G(b)^)x4ntbt&TM|TFLhB9h2w;bd z-_z*0-fUmGJiZx;-2dHJI&Bb}CoW$JCt5 zY^uUNJQI4Jx=Dq2PY&Wg&(tG#lQ&i>pQ8Rk-!~g;NHUgLxVU~56{@V@r;Up+r|LG% zDz>H75gJst`X|kf%wwv(#?zK=B?^uHLMi@{i104P$Gw$KjOT7JIm8MPIKpm2B- z=JwuAry>@TbC?}1kCmqG&Au#WRv_3oH-z6UMc)&FZ0i{-_zOm0aElw3YW$`%wJjv; zAw_Fqmf&@B3#Fe@ghrejHkaO^rUoZIT-tBx9c5hk5flwUHF~`*5 z{iwq$oRwZ$ij&u4ajQ-OXHR;thP#K!uP_g9H_d@j^K5Rfl!@CK{n+b4BExO5R`gEo zA=|BDF9|Av!@!kXa`+u;kvvQK&&A#Oj3aIi5}A~o!?ZA%KpD`_h)rFlb-;X}_ph->viUTGsaYCWO2*a{3X zQDHh0`jA}6TqtE4Q`Wat1>G&p(X(-ZeI zcpx~9J6k%LyOBKgXr98#^*7VTNgLUK`grQoYafNXCZIy1H|?uULALX7))24?#RERE zfA;k>Ea*EtWrAM+BPf!Lz&qPIwquwl-QBnab4mo)arX??qdK1^FD<3G_+=C_zOMzcqH#x_4nnt{lh9qi18D#WD6mf>C|&TDE)n z4tzerU@kZ#R})KcYp5nZN|dp>*gUKfS;C1H;aD7C!EIz?$xm)L8!i7D!xf5fq*WWW z+JQ7;=?i+D-o-DSt*03;HnJ_Zed)iPMyg}VqaEyzP6`el-N0X$c~L{3(>x=75Bzni>|0m_mFj*(!`o1Gr~<#Hyx~73Zjjqw6IQG=70;)4;$^-H{FSvx`%NLn9S-7c zi^X%KAsmx5ifFm_P}Z~R9(qUD(yTRCXh&)t{;qtA&*}E;%FQISZOmrB^MBBRdCwSE z(I9ojZSXVX^r-3<4+s|>1*;~a+T#XQG{lLXq(1n5=orn59)nSx;V2FFhO6f&T9cef zD__@h4UafdAE(Xss~6FsJzIE_PcYi^F7no|KgfLdS3coWGTd{j5RlbEA#IUtT4@5s zN^IkmXa8bGqOrKs1C5K-*+>^y@PUbK8cPC-|NHKOl(!eitumP3-b=pGh`4UXn^ zjf-hZjW)j*D*PNpBl%Ko2b^u*MSSNSGRYaj{6{FGbz~pD>g_A^v54g>hWX(1sdzq5 z@dIk4^jUa_3zgiBWj@)~v|s)pwhKP*kRVf@BRQAep2?uj=zMG*7r~ZadX87Uy12%g z5jd++1hpBxu`l=q_jZ0o_F+rdruPx_-{|2ib44#a$<~Id#WOnZnMM72T9I+bFy^z* zn#ROmLfG-m=nhfimWO&G|4TIYkGBvWq7&?-39EzmF`FLr5o0}b2NhgEqS^I%tOgJb*%Qlr1!at+qL`QETV||WBV4CVE8Y^_kK97Cr_??#&H`ts1oU4s%|J<3zl~PJ}k`)Y(NwpuM=fV#dnApmXCFY{$f85;%bQD$p@bQ`5O(j4ebO?mrAql-F zKXQYcnHKon8Hh8-&iiiiyhh^T;qh`phrqGHF6E&G0dGjnG*OZ0i3 zbN=T&N1~s(cW#?IWoPcp?y?C_1up2A6ll@vNM)UVQ?$bk+6Fq!&DIv>?b4llnrX$8 z-whl*yf^T|`h{A>;SJh~q-=ffz9rhc+fVD?OuvACgQ1D`(zcm_)5&k^YukPnxPZ@D z-nylE;LX$ZHUE=Qfw3#U3yk^X$H4DbkI>#+e22C<=Al4?TkC4?j(^#ezm0q)aOJ(xq=Dnn^^>g?99=P}MQa$4L z{(-T+Ed8wyS7{4!?$nnK_G>xwuGa2+Hdbr-(xcj&wYCSAwfj8K>(LLj>`u1@ey!O- zd+OB(^~m~KATa2f%FDVg3(ROzUU^ZwQtgk_A1aruS{gX~+vduHgdK>h%uPzBhwO_7X`TNws+Ji4^F`j}zji0t_t4>~|ZPw4PjDP0Zz{xMZ z)88235Byoasq%*pjs;$Ff1*V_-d|hz>kz$sJpcCL&j%}q)NLD>-|J*$>ie(pIjg8j z$GM%gM+ZMzxoN_|z@=Ag)xO$wLVKXs<&~NJ#|JjP;LwLW*Gh|MzDwJ-<3?@CfFoKv zKBskG=J-l&)%DsFEx)fk_pc8FT}uDd3NPvxc%cLDJ$~9W(EhuI`t?hC1a7$Qv=;m2 z_Q1klT$KlZZl`73{(~OB^Ez!o-{so27CwISr7)1vX`c26{|;2foNKju{VKJ)8kcA@ zpPCss?0R17@CMI$=dK7$zx?6K6B{lF?E2+bExlq|;IF(_D=U|@(Jm`<1_m~ITU%8( zQ5*1ambT-{ky_L%w`;qn_Nct+_fgs#Q@;vy{ouIv?KM{gwsz_jn80tyKcRI9T=-yq zAmgK<{8rj@ee8Xa+Pz&r(c{~U2&6h<0&AXWpk4LY=auhfq-tOHy$_C0 z{fGmaKWLauMH;OW*xY<&zKH5!m$PXWHP? zwfHwAc^Lfboq>-A%nHmO*+1}o_m+BU#n;+<4-TpPY34&(>wRwpb`MJpG`w_~R&i7r-L%6`wX6KOtY_fq z1*0pUF3bot$oN@rcxb1#HD{}qe!4_!TX;htjrWJO>4Ph0T(d6l^zh^Q_w9RW9S?mI zSbx#J!26y43N+5Sp5LwiP#;s45{P_YRA9i4L)rz8{idHdk)th(d%1GU-e&`ccf?n2 z{BoN%zAgV2<>E^NSMK{nZ}Db-?Tsfd44mvXFtDe*Q|0wL69PR3e^Ysw-{#tPa-eo! zt6KuQ<9Ai&J3WE5U$m+0*tkZZ{S_DtU#wruzhly^=kxlj+u8)CJ7)&^UcXl3tG$6v6AtqG>m&4^F5IFW9)7ug!CND= zyrBmx>-0RKRUEsj^3dt?wZ3(?2cEe8u0W5INA*o7c<(u}u|9my5N*cyJ1b*9<=>xu zzf)!NdarAfmpZlNSANtMElCTcesXhwhmv}J({+FQGvYfo)vA2$g;jxD8(pPc?CYh? zjoYnle(Mi@?{8`4Jnu(==6|}h4RPE5w*I4wX9QN3zNYOit{U2+Tg}=&tv3HTSY3nR)9klydzx!rso8U(p;&FT%+XqXLi6oqo^46cx zzudfP`zA%!?W8V}9--dDv$VZfhq>sBXuSQB18TnadWxo7k zk6(^M{?5oRFJ0pC75Pg_&2A*U#P)uLZ3I6?Aqg6eA7%SN%4{KAjRK592Snre%annX z5u1oF#ayI?q^tb@HEcv1Cy%fU#7p~xexxCM{qnuV8mnz=%j%9@DbGg$wP?i4Ovs;3 zJS}AY-x{r;`>+2S z%ldhcX03_57UfU&-zX#Y@1Bfd-Ofd_wHl%8SMcv%HKX^VS+_Yzs%HIGp9SkTiglZf zX4S0U-;X-~Ju7~PL(^_WS~csp^xv}@f7{dBS+`qI-RtjcSig}Ro9F$_>+ft>zY(n4 zlD~QVoek@^iDUC-Bx&Yf==CAZO8Yklcd~A`p}Owo+Hll#@-zI<<4 z`7|Cd@I|PwzwrDKzT&Jx$^_G=aJw0-R5e|dt}fqPp4*>W3pFp#FZ|zdZ;PYf zaW4u#(h!g1-*PXFrN~4QPEmF*)SunIYM!k~nar`nru6b;4$Y9KFusM{(uO{rQThIC zuScHjSPykn<92;3KiPbG6I#q{e_<+%;4w|=8A}PtueJ-)e|fgx;o(-YCu5jLo=y3R z?PnTQ^CwS956z^1vfYj6S=9IVvr4my_(#@4{_K3?!PS}hcKh<2#FJaHs5rkgE7zN= zny~9j`(?iK)WaD&T^>q>{MqTUyz(V}uP1wnY!rEjAjRx_+4=n0%Qx14_^7be3(Li^^RNoEE71zBaG_YHP`jOF`F3YVnxNbaRt59zOwUl4p@SVdS3Pma7m zWFLm?H`PLD`<~LQMIL`ecA?KGZWK8)pU0BCf~7qvU>qB2TQV=plV;T7?E1$3GY$ZG zN@^bjcD}Lyyg3y-dtBnl_LW;Ds^kZgjlRib?&R6p4)jIll-b%Q47K7(#3euOoY~s9 z(`IWgLgEh)UTMYW5mru`t$jUpwl>vm#(NTWk$ikj{1|n1<3>pQd`!3E{Rl(8aaNH!C@C14@2|Qkjb^IkSKSr=kk1oos}oW`x4@HImSuON%JFX% zvjZvb&EfHGP6@9n^D(G*v7bYL=fu^#Uaj(ZK5tYUwH`iC3?%6Z0LURvlWFEM*#=F9OYS3u)R7kZ+# zmLd7(m9F{{#_`PAzAUG7iNBf?x_!L+vwWqCd}ZFSH3;Tg2T#}v+Wj}Tpph%@Rb=~$ zjgzK44)&LpEcD6V4y!Ax5Ug(=eBlk)%jY1GXUg`xJb>lWo@H$ZHOo1t$^&q_JSPZw zerwOGBgU$)0z03=-qPUEL5{7krj06gdAXn$=4hkP0ns=fIY--tb?_q-9iZWO#2jreHo}igbO2u(*WPx`(RN@p=Atj+ zamqPIJBl4xhfE~HkI+AR`!UpIIPNLsL`>8!5|$r)y;$Xoyk%us`Q9qyUt_!#mS16w zyY2Sm^&!Wjy+6%G+WC@BQk8j6_|pC^Uo9=<__LQ&^<``9H~WyP=3SgtbF?j3jpNu0 zKc?eU%Q>1H3;*;6P`;dGLjLmday$#O3Vm`H;u$wVGv3dYMDw`ydTn7AE#bv${mNaq7lyRO>>;V}tb4BuIaSCUF71m`km~Wi`L;5DsV7_(0 zTKUFuvb>BcxKvjuSK^m74Cb2`&0sraUb%rY@~N5?JoOkY2g{k6X1NkikuNv5kUksp z#(SG)M}pMfTyA|} z?kmnK@q~=+Y1HG(HB;npF?(+vZ^lOF44zt6;j8*~vw1wqCBV2|ad=giZ`3c$%Jvp= zoiYwi`=o9h&tduHrCB-ZdMHhsA3ZR8WRy3K=k$#9;hxbGMog4*O)i}`3Iy}zQvhdV zoBcKFkIfkWKjd>GuuwLgRPDMjMceW`=i2>qw1e1%E!c?F*hHSPnE3)sx6(%u_C*IY zLNrcO{-m^rgV=?QhiKzP>Js+FF5;pQ@l%9HQQe=h{zcyMf)a*PCB^KtiX4t#IgJ8ZxoTVcJ2s7pG9&pL`6+SLiM6pOl}IlhidYbM&yJuKw}@UYWT` zU5k46OzL`0R+p|_i%YzVy*Xv&Svm71rLZum>%<;OU5AhJWK0-7I(-7siJ2J_QQ#%gTD792$XkOint$ynQCE+-_H_i=Siy8`i5QqA{w)56mJjk7Wm z6K%pe&nolE`S<^MScSQ$ZvUxg-T&sbY~wV0pBAvlG--=k;w{(JZ=-+vpsUp{pG@IDJ({$uYWcfa?@7vb}>_D$>eeVy-T z+_ikjhBwY_wk>>qK&9fKAxx?qn=j%4uIyFoC;z5- z@!|6gp1G@WbYY+7;}(r-|HxB2dWO$G6xXcZn5}P5nE2w&vwke;RuDe_?eeS2OLFdB zTyOEg7153ZSA@_19@w+)tHR8?e!cUzJwGg7us?j>>Cm;P$Ou=B*qG?rwQ9zN&;O?r za3JjOKb23*I`44b)GURJ+)Wwq_T1!kD!zCN=lO!_wDWJ-Lp%QdCxX7ef*T9 z>?KJ93(Cv=W&OK%&*xhe71`amW9*(=Qrl1Q(%4;wJ@^`k}U!;Z{ zpJ(IxbqzT_&&Kr|6n1Xmg93^*ztL`t>1vK?Wy8FGBeaeB5rzwc(PpWMI8pE@p8 zXr}&qrzzI)DeEWuk6GjIY+1kLu=P9JUVq&~j?c64_1Do_KUp{VQ^%zW&D4MIw2O6o z%KDv+ufNV=>vy)j{yK#mpJ(Ii??1h=PS51CW3%||7}Ai5x$t8t%+F^P@mamH;;Ns$ zm(O&i@a?m5Z^*~@&RE=ks2^;9davYuo+(o&PR@{z1*Uj%yrsr>sC0+Z6%iQ~9b>)G z5nCg!X06&`?|OvHn)!A=l2cN9^z7BUPv3s&Lx&B|7-45v5u<+kc` zHzbV3*puqYSCr@V^_b1si0-BSFyVMknC#LucEL-zRF_! zRaZYGyZZVpz^bm9UyCxfdT|B+##wdkg%memUuLE33LoEjlkZGq^Y3k0J20fa}TCzhHYI$DSlsThUsPEJ=*sf{hx(!GV=O_I zZywrb_FW28xBSpoTFCmJvF>5@rKr*W(E4HRhaUPy|3dPm{y*i*s)W9@s;mD``BFdh zrBPk|f6ABoY=e+5d(lEz|If%bzXn%m9EQ@kvCxo7NPX2m_0ls+srtso{pb3sNR|2( ze9tAHuM(Qy6gA@^i|6yk@-;oPf6{zde@HT$GrkVYoHsw@%T6?;>dV5z>RU-wx)a)d zk+(G8Ity0Wj#a(^-sNXL&;1jhdB!NjhvAd^yxRFbm3&{n+`Bk@1M}|^RQP!HmzDVo zO8JgQ=(Dky)#ynM~t&N3oZ^Q-%Y zXw~w`Ej(H#PB!;wNrdr;#%bnvA&vMy{h9m7`XVC-3}0U23t4Qt$pg4m=*%0zr(Bx0 zle9<4KcDa}()pL{wMz-VC+`B%HW13^HqIkHiBKNk-GhgiFDLIJJVx?`%*PV1fgwo4 z-ITkW^qS=7!iQR@4Y?P(hWt8&bs=jZU%;5f4d86d!L{U{OX$H|WFZ?l$b}bq$VUNu zn1}f&L=lQn0zVdjpH9%qP>%aqUJm3W^%wp872Andkhc(vuoz2l9?r)FsHEIFq_d7g zF$}|@lQ)_AQ!o{7Ov5>tj)Tu{U9}UnDUsG=bb*@Gu=J}_LwI*naW=KSHv_KMCq7_=B4cej|+C!%;2b^#r z0+HB^F695fx?aR`F2+(U!*X1L6?np)oQqcoF z(F?uN2Yt~G{V@OoF$jY(1ZhaePz=LxWMBkFViZPW48~#{#$y5|A`_D^8B;J7ZcM{D zn2s5kiCLJ9IXD-EC_*tx;K5vEAsac!g%^3qM*)18hxxbwOR)?W;v!s(uI&46=#FHh zAQe5(6TQ$IeefH{$dA~D3bbY4x5E*9gKzO7>E98a!Xe_jI8LtRxLJwQkbmbT5iQUa z&9Q{^VT41`2}$UPG|0`jJS&iY^EHF^t|Gje@D=+0D&EFRID)-+2G8R;yolHE4&KGf zIEvTt2HwP5*oSAa9|v#{FW?Xk<2@Y1`}hEUEI=vBP>u>L#BzLyB9*5{}?y9K|c(u+Sby6!D7*eTSg~+=uOW06Xv?7O`y?V+qc~`RKe&l%O0HScpYfj3qb^=i>rgh>LJBmSP!};}WdEO02@ASdGhY zIo99`ti_eM3hS^Q8*nwQ!L_&!*JC4Yz>T;GH{%xEircUWx8n}niMwz&?!jhk!M)gu zZMYBj;}5nm|7^VW7b+3J!))uGY|9=Pj|rHFO!Pu;^g&=nl&N!Tg`-N8G`7 zoPw!vV;X*-TqSp2c(ck+cAQ!Sl@T#{nF~Po!ytzY@Mc_#zJBFdkufMf9N< zC0GDIN>PU6_z1Bq{~E$Yco>TjP5l_uKrE)hjmemTNtlMO@fu#on|KTF;9VTU`?!|& zHsUz(k8m^bTX8;4F#jcXw=u?fDu|j47B3H>TknOvenHKvOGgf>$64+ZcoMrX zo4h&jU@o$djU42{i#%L~d=$Wkd3cBV?_#4IOSlO;*~|}NKKX^H!*buF%rU%=IOc0& zJvKnTgFXO{QuZ59wUp_M{pBw54`TU7|#zsCT zoP%6=F&FaPglt@g>v02a#4WfD7hn@^#~t{Tetm||aUt_x5f;)%dB>v`@!E(a9)&CD zt9-9B9V=M>>&d$co3RczlXeSk#cfzZd*?y^9n~1fzXQJo_hKuCBLlbN4%9~jG(;mb zMiV3>1@gGP2YR9xdZQ2e;y!G~Q@9zo;5(LmFa6kxZMdEOPp6+XIW}q`4xO-ybotjU zUm|Y+@qrkG!5D%xd`Vkh;cKKbKNLkMMhW~_fKrs992HoIMYw^sZ^TWw8Mok8+=flK z9e3bP+=aVw54PZb+(8?6;x62cdZb;9rC5f0NZX7pxEJ+FTaHVx0$WMjhWl_o8j!XU zt8ghc$@ak=xDz8-&ykRSOMEoOU@XRAJSJcwGBFAF;eNEDt=5=Kd^m=T>4Y(0Ep%tE_-KVe{N%W;9oYc9La5XN&_IBX_(smtiSUso_j@wli6(rAe7R=JIA}f!A;*y%Q*vy{ zaV7VL`$<29SMV~9;xJyq5nMt$a{nmzWpWQG_jz(ZC-;(apCb_6z_0+weMqL@J z$-SOz2RSz7^(4ot9J6w~%IoUC-9EEvNA45nK(5;tvCeXjTLgJMub`hpXfF+NuQ?qn zNzW%-N+{PXxsJ;HuiRU9r46}X=nfed$o+%dM|4IC!p9P!;|Lj7sQZg|h`)<2NQJuJ z=tw*n?IHIl9U%8Ba(}XkCi z>~hkFlYTj21Zk0Q!HHvt!71v02f07FifUI9E``l1I? z&>g+e2TrWS3S`5J0(3$w>steHw7-G&8a`-Q zgL8=IV>;Ht$vVy;tV`Y%gco53Y0a5$iN^Svwwn=7BhNwJ6v7)xYeL%9EMq;sVty*= ztx1bVA{xL=S{p*0dXtGK5U-Do%x6GX?hEcG?+WT(h0B?jdkDE_*bBLj*g<`{ zuU$;M6Y;s|jJ_Cvu8@1%9CSfaiokxWGs0DWo|@u_h%7ok4@x- z-lIj5rtZ_Ch~GoLjJszOs^?Scc~tnbEO~CFo>9s3snBOzq0h7A`IS7oT0om}5AYlP z{2emR-A9@{b3Bbd@Er5cLY_xHLs&^DW8wY8<@w`p_!9@2KLB|)`8=UKpOo?Pi^Szw zbAN8ULSq9!IVKM|RjghbNrq>bi;Es%tkxR<=G(0Ltw z#sWP1A{OSgV7UxFbbnF24gV}Baw!548<@EM+Qb<2*zUq zCL$BP(F>>P*I%f_clZSw{rr_s-CO-k{3ra0KM+fQbC8W(Tm>)ku!HLLXm=UvV+9)E zQbdw}A>lB>5y-&%ENeL78q%-8TEsE$!#osV5^c&e^C;pIFcV{tiHVqk$ry#vn1tz& zXQt<1JlvRusThZm7>hSqpO2Bia^;>@?rmSi>v#giUia{6Er|WG)6RLAqI1ih1u|64j!QWDB6i2?m$h{MlHnSI<|QY!hAT<4_{IK zOAI7F1cNaMX&8X7$?H!z6zO=HWxR!V@jm39{T+OOV^H__-xB`@a-QJIANUiM*p27#JYK{h9E3c7Ie`6mk7MZ=_7VRbzu^eW z`4GqP5njOu_yQYQ{6>vEuEX`X6SrUs z?#4Hidkrj3i-J!43Xo;|yRZd>(ePj{=2LJc>*hcY=C5M@cgp{UlX!}XyRipPV=tb; zN95g4d3gqZKJj$Y>M;Km@w$W+%)dvxkoGp?3*xm17ZMgxCx$Xx;72U(#Wh%mtFZys zVm-EEIDVw==Qs)vZ9PKx7#_ukIEcsb6n5bNcH;@^HpP>uhx%xYCTNI8Xn^a{9c}6R zxwJnA*V0#cf1!Z557*J&4Y(0E;bz=|TX7o}Ql^sdAvDJe*oSP|y+_(cd$dCb@KVsS za5eQ76P|}9I3IbW9j0yt@kLliyoj{DgfAn3v`EPNHA|Skp1gJVnD|Ykwb!kQT z7GWF0m&m`3yjju?^`5~#Jd5Y>Joe)N4&nvKXK@bUFm9yoyV4GE`P|OSIEq*BDqh3u zcmr?ZExe6)@Gjm%=;v|HXTF%e#GnSE5epy7SwNl>k+=vK;sRWZWmt}-aKQsV3Q>-Q zs6ZJ?QH=S>M*-%+ha6;KF0$c89&*tPY3PpzsEq*_h=yo{c%&l{bnCUy9IY(1oKNU66fJo(mK(`IO5|GKu_lPb9|mcJLVVS8Z5$M z6yqZ-fFGqOLlKUn1hKp*A0m7N@w9gh%lU!!zQ=hSoAZ!MdRNNLC7z8e93sCh=8^Xo z^INHRF>O3dn*8NqG3k8>Q{X553VAQ0gm?wvJ=EEZ5Aiup;tL$dNB9_@-~>L!XJ|v+ zT>MJ?TWNO_9%H$W;zHt~e}$B}6W35a{Mp3aq+d>ZYq6UAJDA@?co*Sz+FDP1Gx2K) z!=FjqOZpn>U5U%czlZs!3AYeFK;3PG*D)XdEaHCBub|FVxSag0%?j zBAPYEL^2kVanB0+aT%^bXI|U=NG~QXj#7~fFtMJmdeN5(nd(4TLi#xrUxqsA~Y zcDV*JmKhEi-^iHec4XiVTnrf_$+#n%_&sQg|8|@p;{zEB$aqi2dNRJ7ivq~FLC%rs zkaMn_YvnvE=Ttd=%K22zrE+dmU=Ec-G?FP-v9Qz z`xJfLj9h%nHVHisUqzan)8*VM=S=yFWxj?WejaIYgu9^5e~%NFbD%tD{($_JXo0mz zf_gUXC%y;su^6Gxs;_1KN|yO0>t0Iy1mxNEr-bU+_0PoR+4X}gYbHu5ANmZti2Ov{ zK>Cfi2{+>w+=|=q-#&|sW;x%|)@AYMk;oA7$_4pHV6yo{qb zjF)f(Ysgl?a&raU>6?4 zd})X9A?!pm=IU1YU(_PR@7;YrL5a> zER%J_N?eLnXh{Ah$~Go!f~IJOM)-mJWR|%C70j=s+>fMvkEO)#BfT#!LOJs}lsQ6} zM}9sE;KMx3An$qdzQoOx|BJ9YX-Cl+Q}7yIM^}80Zg?3#;s`=!gCofF2lxff$UQ=z~cZ zh0z#;u^5MG7>N|5Ass_848xIu5g3B;n1G4ML@Iit7uv&(4w#BgsD;z4)Bp9e!lkr( zG3sF%F2Qot#|o^%N;JTwh-6z`NH~me1Tye8+w>j03wfTn1KaTchLgXB@>gIj;+Xeg z9ttpt{kMhJa1`+gn29mS#6(QNWQ@XSOu}@`z&RKXH>P1K#$hDJ;(vX%IF;?|#x$IR z$(VwTv^AY@24-Rw_OfozU>}~tv)GU4aS#XaBIJEud5>4#-<9`v<$c{hY3~nApq+`x z#3Z;#J3!ctuoFHf{sQ_CKS}rnx)bk$-sp)Q=!>rCh0iE+5S@vqAQka!_hiDQZ0qOA zdk*p*>4VsbhtP=px~Pw4_=GZ_;sok2-xLX`hbCx%hG>jvJW07-cmf@1Zzju}Mf&5+ z#}Lj%7G}ePIe38nM3Ems+<}^?jarDubsQHPaT9Jp4bt-A#9h?A8~uoXMH^pYAn_p> zj6q1l0DMhef5M?i$86^3;9Pj{5`EQZU*6Au7>_~T!FaUA zkFXa%;urjipYc6@z)yGvr?CgG;x!z_%XkT`X{#>l-HPxP=8xboo<#r}+vzWYKkz3i zu^Z3fdAx{2IEWW;0Q>QO^=$Pk`gT5jy8xSTJMO><(m%uJxRCiz36J4@yoXou3Esv# zco#QO?pDb2*t^)z8wjt4yiflU>-jZlUiyBigp|LM_&emki+1E!lGdKE1Jrx^r$}?) z6lK09eK+wZ@f5D3{uKO5{4{>X4V1ePKM}u;@HfI=@IG~q;TFmtC%lKe&A1EK;dFytHV$LZ9}_VW6EFZ{F&b+y9`{n;Nqq;>Y4Phl4hU^k*^HwG-~e|`?Tp88)=@m!WS z2iFqch63U~B;z{D+<+T#6K=*WxD~fy8K$!A)~w?~%3n|YO41%ebG(3k$RlqZVG*Hx z9%L`^m+>Bbe;<*wv4XlwNaKIwvmzf8xk=h4e48?@2;U-XLwFnMvuJBCb)LaKJd5Y> zJoe)N4&nv8h(kDx|LbS0I(>3rIsGc8PnQ!$FdqpQobb`#Whf(W0ex^H5*Oh@T!4$Q z49l?;5zyg)3m*7Uh(#ztIToS|L#45cW>eB`45^WZ}cvM?9f@FEYnXofWO zM+4Nx01QM!G(tSmk%&5Ij-eQa78r!an2v79M0ZTWIhcmw$UqWWq7_D9Bu1e%+Mq2) zqY3I_FovKhlF=JIFa=Z56TRTZ7>q?bv_}Vw!+1LCs_(HH%Yfclt>RGf<$n2Fh#g*gatTpUABj*I;q7pEYflUhjHCB(0xjGH|5d8sQ& zo6P)o9AiHa{~qTNpN9>^)o09nw2=?_yjU{M!DI};G{|S*reG@ENJD@0!$5?77H&B6 zBO#xun}kuAfQcB3(MZQoWMCXdU<`(#8+yWzROBERbCHE?c%eQAH9R%1CZ442?` z+=yFoJ?_Lt+iTk8*aiqxC+^UlD?H=YZ2)ebF8h#Ww;z`a0S-lN?e6? zSdWJ(pGW=0)bB%>0zdIrNUu-(CB!R;-$UD*@gY9PNqm9h_y`~46P&=O_zZ2Rn~Ptm ze=F^7LI%r>q218GPOC<(`n9Gx)y=@+u)+v4bh@l;-728#Rta5KSrIBL!s&Lq+%Biv z73p?Gxn0q2SFGDr!yRo`jrJ9Yhx}ZlzT3M=yQ}0~M>4=m`j7*|r zQm1pI?$VbHjIw*^bVzz#nbbC0a2h3}t>$7>s5%p)IuoOo6r(y5qdF6#IuoPTCB|+q zX6~v{`l{1Itw6UzqZ>`Eh3OH}pPDj>vyvies7Rb7H&xYDecho_oGRi{kth|3R*^Ur zscA(V5$;5HVl8)KZFge4JF$*Cv93EY!JSyootWfKY;A0|>)pD;9qsfY*X`=$cCi~f z$82bK+0{RE$<@2K6I)2n*s&3ASDf2r95cUM7&SCjdM*)Jmm_^$PAQgX#`Vr^_`xV9 zPIbsQ?JX7WjCLosWzi84QRdWX1-cbFtWc%9todj{m%hA@L$7bg8d$Md4h%Cl)+zO* zT&z=VE0^w0Z0b&|?@nyg*-M_a(c|ocGfwqWkJHrw5N99dak@GL;&gQk#Ki_H#|CT1 z2CK&g>&FHgh_zdYsb_T~roM_aP(6!jU>}bSRa%64xkl77%X9D>TahhohISq6nAaoJ zF&v?~9T9779EWbTqQ}&7yE?jE-ONU;wvw$mHLF6kZ(=&p2mU|O*O;i~*nKs7sK>SIs zc!%*y{I#aEt4=3G)hULkI&g^EJ3U^V7^PZpFFESiyU9^E7)=O9?V~o{VIQ~gjt0R3 z4TI4}!D!=PRGkl5aMNIFvtU%tB3zy5nKQWgoWb4g3~oOAB1PHY=5q!&pEJ1m?AJYq zReg}{>MU-RcUtAS9vk(YR=-@*=!A(`Buv%UaI}Yq=5DawBw=pw>J>t$Ku7_XxG} z5o+xt)Hyi9VYL%!H4~}kt@Vkt)+fr!kFxTkto$gIZ>?{XwZ2i-`bJsns}7ndYkk#W z6J@Pel(qk&WN^e$6;;;?6Rc3Kp^`3FPzf7aVIwn)w)z*NLaU!KRzG8`e#Th+jJ3+e zTIFJ`a8NLKqJS?!NxwLg;8{zz8)BUv4e$?AAa zRtIFVZf&t-y@m`~1mo1son=GwzmPsjKa4&QN|tPY;~;hEYx*yrZjX=}tC*{%TaV!X zKGxYwbyF>m#Ti>VmJ#wOcVZiNVjp*+arqoXjU$7MOAvvad5#P+E*wV&IjvN4ASLs1 zHj+?IMH0$+NJ2RYNhs&LBZI7-F7H#v7)pAbF5Qk8V@gRe#*`8<#z_*XF9S!3G*FR- zD$+oyE*E9Tq!-4p)>X@n)wW}G>{wkpmSD%~*|GX|tbvN@_DbjuJI(H&Zud{O z`={Ie)9wE0(RN+Cr@Flj^cr?tx4*HymB>EXoyB=j3#J`W=KSHv_KMC zq7_=B4cej|+M@$HLVDgAUChK0K`MHnCwieb`k*iRp+5#-AO>MDh9C`W7i}np zVK_1{0wXaBqcH|!F%IJ~0TYplNtn!LWgF^jKb`HTv;B0oozAw4VEaZ1@}ttbWvQAxUWvC+(njnlZ1l61K%kx;gX zgt7_}8qWv_Wd&qjZbKxL8&wJA21G)+`;bs>JtUO-4hieADvWTMM9HL?OcG@hBa>*E zG?z&WnIy@irA%UF(n=<+W#W=agiIR9q@hf7nK)!pTPBTU(pV-fD5 z$fT`I+R3Cn8`!1G#3>WDxbBLO2?vAjijqmROk!jbE0Y>BiQ^HB=1y$sPVC+3lISaL z9Lx2eOTQg;2BR+L9Vrn`Jw~^}`c~M{3RQk1YrcyWI<2sw6?S$f#<&xkxf2sRUDD)= z8;6@y1{B5|0}3;Yv_f;h#sfU#xQsS$i{*ijaTH3#I$~YcP%}ArOQZ*HPj%y=mW(MP z)G(p3igY!0ugg3PUFN~&vJOv|al^+*#yU7%>Q+zP8>_ovhqWwqAMB`MHSbg}4yU8T z%aKm4Pp6emMkGvPjF{7yx{Rrr5^Ka0jA=b%THly9Fs2QSX|^%VF{ZV2Gti8nxfPg+ zEzG$V)||0iM+Ffm~H0}@N1Xsu5 zPPCpKMRTg-VNz|kE8gv@>vko$UG?0q`fgVPx2vJs)yVB?>~=MAyPCRP&D^d;x2w6^ z)xzyca=Ti(U9H@%)^1lDx2vt&)z0l|?{;-?ySlqw$!=GQ+m-5e^>Dj-x?R28uHGCq z*5d)=v8xQR>c zoQENPiQ|eX8m|>Iw9nzj339OcEY!hk$#^I#5r;e-m55VCTq+WwB9ST*r6SQP5~Cuq zDpEs5;#8!jil~P^+yX6&h+j2oh;hQxYiOLmbZ*FGDyKlb2B$i+fSmL6T1J6dMuA#J zfm+60k^bfqhjE|oGGf6rxnDBVS0oT98S#tLJtu!$8m zwZcRzY;J|!tgyQkrdVOBv8Z=Px@vH|@}7fCtf>lAD6a$KtphVqvvR8T&N2>lmT{=Fj6?u=I(rLBszQ<3&6 z(n>{It4JF;7$TyaO|7t5r)AAvcIySY6*{cYX@wD1=(55{D~uvEqUO9gy`+v6F1F70 zy4qoSJcqfwT&$Oa97xvdhY>^@{wIqet`Ss;aaLA|Qc{ZX$Ed}M+WGSM!b~%szu3`W zv!wH~4Hl|WLmqqBb!6BboM9jxoUxZItudqy=5W~v&hXSfI1|&k#JI+oTW5J!W7T!* z)Iex%3nJ#ZgO{#V!aBK-V5P`#gL9NRHxjiHRK9&Wvd>i3$&d{vHw0XR)w>LinjH>j z*oUkmK^@lh?DK+*BCRuowPP#H!zS8#a2stsAdI#ibVgebI-QBu;bo0Boh_{SBr{ZZ zRxaxV=aS)DuADM+7Z?*+t=t8&Qn?F^)8qmFy469hkjCr5xJL52NLJ4ot>=Ep>h6t2bq_Y0Y;KN%Xe$gEIj5KnYH}^3 zK`qA$bIs5tTbFc~bt-pRr*fBdDvwYPK_k?o#|ZmYlCxeHyAKW-hZ`fRo_x;ArLE-? z18Xz*C>9gln3{1ufF;Ssln-VtyEfIBP=qMQgb`3k<|rkBSuEsjGKaOkm(($b=c|6p zlY@oe{uj@e*OxW4(^IYOAzM+#42_LP>}JeLs&77%UEZgDtUIxtJF&exv7YCk}Hb4tFPJxD!XX6Gyrec_KU7 zojAswI5yaY9_IFqma85MKG9asUlzgt5;)+53z8OzXw*O*)I|b}!n`bvs8r(Z1Y>Gc z2Q2H1xU5u0>ky0d5ibNXQ zK#D|45uT^88H|aPt0U#=niEN^%flI&nkiDhF3(}ucoI#J5(!cuLGlxfZI_@M3C6Zd z;4zV;ON|6$+a(y=E`dizk`iM~Wt%1Fve6QB*=h;8Y_*(Wv2=&AbYqVt7`rUN*k=jG zPD?QMT7t3L5{&(pVC=XAW6vcRyDq_DEZt!)y@AoP?9Bv6BV#H%HNn`c3C38)MqmI!C+IU9w9(LUO5rkF$;%mDE)cb!KR!yL?!}yms=?+e(n3X&RHUVfv{I4QD$+(p)OtDF zsg(9A(m_SkTNqCD7KT&3h2iX?%5+tcZuSYm8GMi08S)-=bGtzB3}2J0zPd@R!w0YA zca}nbFiqy=H=g*VH(#!mpU3Y&nF;)SsVA#2zbyEPE&KPMLJCza5iBdQDDdRd_&jhl zAs+!V;yki8zS}OJ6HZ4OBt8@!QH~Kv!!XQ+2U4a0(oO;vAPrJpx+!r)9 zB`$4Bycuz6Q{t_x^3vzlR(Xlbcd6vF@tq;xr;@mQk4(N-C2{#anS9qu;_@A|b&x*^ zw;+x9PQrU3{gL=qNPi^04bmTp-v{ZB#P5gHeTZ;7q^`stfYg=v4oF>z%Xa{!uEgbg z3-Y=C*C5|tkk9wOjv=yx_>(Zric2WpO&SH+4)PtP(NgxY{eyf#EMJ!s1=v+F)J?N zE-NnK<5pb4C#<-HPg-#apR(c-?zZ9*?y=$$K5fM%oH%SsrYEPsn={|DFssm)>nmTv zS_S`%{8De3zoeL7(&N|P_=(}HGGC4=VdXEVkYB2kpKnwdR%o`*ZwGsPx$>KDVcF*L zjTVjCo}BWkwKd zH`V9K96M}E-^^0umnFw~mw58{f(?E3&+qG>Z_V0Osw*$82Fu$;?d6->FJu91XZ5GH zx2O8-;P#g7A6lrqG>aE6zY>{MsM?Y+*q(dn*o+ynORN0JZ+@yx;gPkI*FaA2HFQRP zt~aNIqe(U5OU?CU@^jI?9JUmR#(Z$o`HK8zcO>2V-ALp0CG*tCG=AVyHAX1gJ|)$Y zIW$9h<6Fq@w^r%1m0wZpXXkpdD#{DWvhqTH@w{rjzmK;#$3Es|F;>1&+s+MHLU{cu zmCvXjo@=+y3q*cPl`cy6va|AK+45(#Z{*81pns)H{N;8JLi5?wMxGpFYQL%eXM6ei z%aDqyUa>FOR><;X&&sAWe*ajtRZV_YS&q3VwH)~YRVkcvco;i;M5<>LGv<=4<;Xf! zsbrNmE>vdE%pZ|e{gZz5mF^|eaj(5uRkpEz`kt{@>}<9FrlgO^7@9uP`Uz6nVzv89 zDQi8?$nVQfss3#~{o%JvWk{waC(h;fW9Mq?5T7(xTaEHwbG5@5*c(0OYR7ucm7>O< zEU%AorQy0*>YWyT1vK;JI6WgPr2drABPUpA=CF&nS>G6Z=lb%w$Xm-*fpMP8DKopk z&p2n5^JC=MD%ac|eT>V_2%nsqg8dn8oJfKt&6sS+KE}CC?h=BF4AvXXAs(z{rc*ZA zTC~xBe(2XDKSryTUnb`vucxetw45yYzNGrI>)X|bsVH7hQDTf}&H3VrqHOb+ zH0Mjy&n#Qz3+%p|`5fQYZ)RKd&loX=^iTD`>X{js`KoWUS0z`iUr2t~Z*&{=OJ(S4 zj95#Gb3zU#+Nzq*@kCRh8|mo7bG5zj@0zQnAs)vcxLchoAp8QZfTp;K&F7#$qd;hWg`X9wdb+7nUmj=3 z`UJZ#Ys8TBjI|CX$m=;%Zp7q#Ag^0#z^rAwVnS|Zf|WvI|5QKQS6=0{5mL>LR$E^V zAgd2$S%u|=|F8yC>Km6?S%H!)uisOcmF+FG7xXugD)m|aWMc#TeSIItzMT1u?aULT z@C%UStIb#xk}u`ubVa_mG-QVuy)7#%^!SaNRyESMdmEk~9C?^Ug8Al6Zg>OS8v7P< zWarNRoATie+DkSga{T)lzH#7NkL6@!k>Z({o{{M(%FmPUO#joL{d!c5$WSn>iO>$=TO@|PO-MXII$qP{9>grWUA zb5T`_8Z&3KAKX4x@9ZJae{P?h5xV@ari@)>yftD!KGH9Gt7cC>tzVn?ocOJXjaW(BmOM>(tBmSF}u3O zmRPX2dD7-F13L^4z4N8!d*iJ+9G@nlcO;_E;0uX5-Tjiyp?#LQp|=*(J&})de!FG0 z&ptWE7{G0VbHr!O`!CPG_H}A%EK*H9=ZB&#`YK4|gP20TzYG#@A&((9A?F~!+j<-0 z`x784oeFroAzXFJ{%_3UF^{z6Qm6UVsgh)>x4Rc#rru6D-mO>6&XkO{cE|2cYny!E z*M9!$r@h-Yd)R(@vlzqg%dLtYuj2CRa&<9#^wlU^&vEYNu2U9_dj6s5BfY}3(x_%c-;7adiwC!u_x1LOVKqh`JK3VA{j;dh?+H#v-;^n~ zvfcCirUQ(Y8don}`uf=6-}mnL@t|7Ryay)>O)S&r_}eOpTgo^^e0T>Z_s2HJWA%19>`XX!Xz#W0cO6%48_?V3;iI4VVy7%g?2vbF zbjdH%9$!gJwCq%EU%pq}JR5~iY-k)|TtDV&#$Xr68SkpUINtU~=gaw*Y&=!;`I~)q zV;ijY{g`~?@b+<+7nxLiFz4N?f-_g7*G|cEq3fvv*Y0`l8x%e9)an4YDw|9%wK&|d zedczL5_$HHK2>W_zg1=4XB^!-`1q3!^KC6BIk>LeIy84`(;9JIFaP~BG3LzGp&yJ& z#Gfzt%<;{ODJ_l|oEX+&--YqD4LI1&tGdYE%WnVwRbg0E}3-v zPSf(;Hr=|kzkJ+)3tPS(tTko0q0@2a4=pFAEuVC2d*;afw{rew!6sd4rzd3&0$2CVE-djE* z&&i`O^X8;|(*B6OGS-8H4!tgPA3*Vw9X&9&7ItsdKPLVQ7+Twha* zl)q5$QIF}*26#=cQ>1YF>3^TBa_6|8ckG)khqq2#Z2DsHunKdGMp_rC+I#+kdS_}? zZ`yT|n-1FX_$Db`&hG9hLz6S-bxu4eB_YRfrwIzZ{#_yta~Lb>w4;c=l}oC z|Nm#_|11ZS|HZ%mhw<;kg}VQ1fBpyTPeNw%`F43%FH8 zHrM!g^IKJ;uP-hnRp_^(>%hw!%5E*=5#ZVT^XSKp^Ewr4T6mP{&I@mcghsjdQ~i}( zDCJw3x?5(RsMotd&n6`+mRQm7;AOXS9TE~VKisrPv|9PB>&zEZ`+jM&W2$A18LNs^ z%2@sN^0!>Y!Z+6~G`sNhZf7@i-~KYPj#-B9591rFJO`h)axiMKCSRG$4Hk9pos>Rx z$jey^x16k$u*A39)&|q2ID9vKHL7UXw)pim+Krs8kp-RHlZX9uY5imN>X?}yPF|{!78ReX{+^c+FWOm$hkvYectnx2{VUCBGt{fg z#>llFCY;%JB_L?a)uUa`-x$-aL}#xF56A8Fy?^a;dis$mSMqz-bGbO=*^I=yiC2=t z%FXq5SUlgderD3Bp!jYXhbMlu_*`@Dl|MGG-D$D@mA{{FVB5xS{vL=-@j0fCuSY9? zfA7EqyeYs3aT@tZym1w;>+ovm@m5w?e6l)LgZ5f^#b44*zZ4D@8z8?#Wj&5jzOPqpt2@@$m4o9@$A#mm)>=eYUJ3zubZD+OMhhuT4|2;Te-FLK#U_HBt9~Zuh?j`_-%c4 z9bG+Rk{Xvs^Lk6yk9v*Ele0ei^5m%3xI8)QvoBB1`rlukU+POC+<)Wx@cdX^xr7?m zhwtC%hTAod$CnT^^I?7B!m^%U=FlIWhw40xMWu7j!J=F3VBrc;K?EedR+@yF=LSk$@AH7Mh(MiuCv!0_$l{EfnoR7DUTNAugAqC0R&qgEvDZH-E44&=^u;d|&D183#wXka@xlf_6!`aygz} zC`&l$HaJ08HFdg97Zr6TZRQ?LCPldh$r`jY zx$yui0j)K<7pxQ-87~-X4B^u+X0Rbq9x-ZG$9V9j3hM#p6Ow{^U`1(Nwf4^Tb)@Mb z*TTyoumrg3N|anfuU2VwFEsQ#idI|J#9^f}UVL`S_Z6i!5*lj0X)5=ttiip|pCR0udEmu3H*d*i@h&;Yvop(tMLH%2y0r=L z^zriw=pet*<>v10;jgfZWSoaSz54!PxjIM}U&2$oMFfKr8rX-6Px~^f>+||@iQ|?1 zAnBTFmrFyJ{z%8?`_zrS0>JD1@Z3CGiM<4lk9sdR=N#06?Lk+)+ymWxTA_lQSE~T! z+}M%!`Gc2vHPPx{`}}j(2L(ljD(~d6es&Ic$tS)E@|y{q9J&vH`Rq3oMl3Kcmg_f5 z&3*t@S@^CDisiU?9<7>qGzr9T0^9hzHOpcn_)UR;5aH4$L`oghDa$C|)v1!#O+WsF zUbnt({xaI*rp9N#AQ2aoh|euZkFeG6nb|uy)^u{NRokUb^}0d9A$Zl@t+9I(kEY7` zY3QXQp0Ag$8+vWbSBJ9JpHiRm25VY6Y)BBE?nd_0vL{MCC1rn@4xxC{3NHg@yf~4bNeyS&Dq+@&_K11f=9uU~XtC@#? zfc$X+k-9rX9D`hgWI%R6Rzf&lHE>EV@g>6CW(^iQ>`$Lwvo819pTue8Md20@;HR}R z-eiP`g-=67k>?@e3-(8=({o6RpgbldFe#ot=Aho#pG2Q?US2XE^b82_@{^YsN>Xs&jAkAK5Z z(Ew5nQUda$L8wU6keBLxCDqjZpSEv>@dH0V*RtS8=DWmQEQ*jIJkia@Uuo?SJ$Xgi zK-xj*hw>GrL6FjT2+Q9Z;qSfhw^3%|VdiYebI1z_H?Frp-!^`}J_rF|)ybvVf3@@& zT((Bu+t55zylD|CRNfGzzK~Q%8pH;=ILH8>P_YN{5b^<%+c#9yhXg=!Bi|X4?iVWh zw3a0m`^T`)lw~TW5N@0gS~gJ4kiZW>DYM{K9vuF1y=vCaQmA)y`%`9@{044xP^8xC zl#j3QQoNcZqh()?_Wk1vK6E5>_*9m?^KlRG(6ERsPhfqW&xiT9Z-r{4 zPx$;=QdF$&`)FEve0oCnd}TduG~2^=dNlL!)2ySV|84*3_UisqVbTeaR2=LZD%L~hKt@3lAi1a6+X-fB)hcq_cUr`&Bq+(2CHRV&wtW;v})55Of|rxiAL{u zS0u~6! z)vLSCQ7;v0{E_&6ADx3}=+(!UV`I_?G?ds?>p8#p(Hjl?lix;y>zS;6)mCcA`sz2r zv{X_#VTMi@ES*+fKyRk6Z4a`l#60o=NmAG}`?-UWtI=wMV>hte5=~n;jK9@q�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

  • {html_escape(file_name)}
  • #9nk6haXGxfaMiUO=5m93})E9-(AjLM2^I|~` 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%0DB`rdTt&j<^wP z5W}lT=>`F;aU`w=C@LxH4^x>URyF*{Qf9Ca%)z?+?A?~c#Hc6P-T&h5O(_$nQIy^h z%BM;NGTZGp=D-#Fu}}r-v5@%U$(RqtZr6??qH8ag&yVolQrd$bc(@nUfZq^N{!xV5 ziAn^Xv<#6NKhsUzI}2hG)s4N?X5gk?)B?nG{?UZmxt`bz#JBxvQ({4JgDCvcE5`G< zXMbs=ObmP_BH2B`$+wSVgtEi;MIIzxNBhuP==kGQ6!hP+a6mr3`%7uZ7x)J+ssVQz zn6vZorFMr%i-t{XZQ^Y<1ABYz(ZD`|o8~rZ>Lxnx`;^4|VDF|8*weci1;nt+rZM3r z@i|i*iTP&lrV03@7qtTECg-N9jhbeYyeK{@b{2ViEri?8XOg^X;Pz9m*@`BRUKR>aJGsZGyHQtzuzs*(2Bz+$j^6gl+s=yfX{nT4fwW*@+$(HDj`hSwAl;i2sgXnS6Ya7| z#0fOT35-r9(Bu&wTRHs!u9O6Ah7f)x7*p{fVRYha{jx`&4Gdz^3&#*DeF0uEC9{|xSvewbh z?lLn_g4)3c7Y$E})XAyIK4W#~{Jc0>N_%bvesvd4nPY)p6Oo&4Ep5~W4fjOg`Xb7S z)V`@i;PGD60zBP|qD_@L19KEd-%Rv-_~>gu;&nka`{)l*B9M4y)ces+o{%}Aogu>B%t&goPzZGVafq>tKp^}XU2 zKK4#c`yYlc^oQ3N;4t4qt@MoXeNpQza5WXtExUP9E09nNKL37OBG|{f9gW*{yus1< zI7vl7a!%Y+$a9@79zOKBR)I#G_An>RIlXO|7$^D;E#CQGY!Q1K`92s+!Wv8Rr1O$Q zvc72cvhP`UTe#}gk>@?K?7#PjjSao`gX`53UuCr05DnFAL6g3;=j~;^x!S-;FZytc z(n&(S+Xq(#z9=I5I0(~=eyaKjQUx*z+j-cfY(FS$W&D4GAAG#za~Vt6#AsJ1L>87; ziN>>1GMx45$U|MllSTV^@4p#HU-oi+X}2NO8%}IPa&~VMOQ_q?9w`H$86_sb6OmrD z7|P5-A#wIep44Jm2VJP$uyD_OS+L?>EDu_MyL(Y9u+fW}flVTE*MXKcYR7nDEAUh= zY6gy9MpuJU6o=PLc%gE7i%_iGm{Lyf1|o*oNE1f(_Zf`_l7D_xq;{ebfpmerUID{| z;uo$EPhKu3774}9H6UYU@7@6!D?4$4g!b9pKF2EXYhE-4NT=DU zOmHVF3&^M^E~Q+(jQJmPtgboq{-=(@xHCBP?D7*xKPL|z8aec=9#99Ndq<%Lrya(j zXKx+>In)vd0!>Vs|IwpR(_!Lql>Ijya2v~UvZFsb*9oH_+3`%?8*j=$A@Q za-mE(k4fpBNqJ+gkiG1cz zd$MDHm#a^g(w2Q*^B)#Po6UMG6DS!wD_~N#-2}vN zI{TiISbHw+aiQ*kq5r%7%_IDm|E2R&<9q6o+`Q{b@WmpthaB)mFRB6W4m80pdRi6u zz8BSi4Iija@cJUNK7reNQ4M%Xpb0+T)2hIQUQ`2q7-)i5{xFZj`UGz3MK$2gB62+h zKG@T$z~jBB2K;rP34YAes=y=vK^QgQZ6b0$!B2Tw75JtX)qo!dn&1ITaZm+r=|wf* zZX$9%!DBtG3jD4Y)qrOQn&4|atqQ!$i)z3p0!{GSo>uknBNC`p1gAfIkZ~!FPCC6}bGzgi!--DI(_+yuYVafk%2#4R}hR3BJtJs=yn)s0O?{&;-Be zX;t9+UQ`1%e3B>Nq6M!nGIur+xV;zEfM*1n;2(Kf6*%-$-$TH?MC5#e5BIbxaFQ3* zfENau;F~=zRe^_}ji?5^;+$OMq5waC9<(ZOe|Zaz9TMQzyr>EsdIgF# z;J1H_s0zI1DnvEl3vIc`MFD$ujnJfWx+xpe1l)rSAiq^qI(SRkYLdbKFQOn zzze)+46rTG1mEpxRp2vTGzPeOu;>PFqKj_eBrh5Ryduy9|H{*!`w2KY>%30~}JRp4=c#Wx1{{a|4TzS`5Oz&Tzt2KZ>8 z30~}JRp4h{GzNHJu)G5w;n#9i;0V9^8Us8mSfqg`ds-EExfhKAULRG~i1C4ZK>$LTn6hTM@Z_18=W1;E@3h{9~m7?+Iw&xk>~6HK2iqH2Bzn zdyB}$2Hsa`z*7Pm_-3U6=La3|0AyB7?_&cVAR-qVxT-YZX#ov9 zTWP@O0~+{`N(1&@K_@wQxXA370>2*6z=tahI4z)oA66Rh&431eTWP=nD{5@u14U+I z1D+Vrz$YsW__KfpUZ6DK#{muesnUR(ucWbo4-=V<4R~fi1OHHIz}W!}{Fc&yE3T|g z!7Gc*It307XyB8S2K-S#15Z~P@Zo?4{zPfO^;Xf?!0U_5#s)kvpn=a)8gOPn1K*%D z;DUe#UTM`l5bG2;OhoR;0&lG};9&s`e7VwqcLp@@Z$9`?ja%<8+cEp z0Z$5O;OmtJd_16mpHv#~lYj=^YIPqQuth{JHt<181D+Moz;`JP_)0(nFH{sAR-qV zcqgR+#|1R-)k*{27tp{DC=K|2Km%_)(8mVcPed*@@K==voDk5!vy=vWCZK`;pfq5^ z+B%WIJBrMXDR5Lk1CLP}@ce)VzF%p;*8>{(4W$9sSVv<6?=LbN8}Qo!4Sa&qfL8}J z@Uuz-{v)7)KT;ZS<8?JQ@JNx_*nkrQ8hEnOfHwv-@GDC5@C)j+BDg_HcK`|;7SO;) zC=GaaKm(tnG~gWp4g8kUfGe)2v4K|>nT-uNJfMM3P#W-(fCj!yX}|{p8u&w{0S64y z*uZOx%*F=XH=uzhDGk^b(7-=c8t|!r=JEP@Al7Lna6>8GQ4ii&X~33%2A--k;Ee$d ze6!MkF9tO53LE&?fLn^l#ReXxG~n2P2L2DF0dEgz;5(ECd_ACn`w#Z90e2RWiw!(n zX~1s=H1O3*1Kt z9=f5A4OkPAiw)eOG~f>c8u-^r1O73ffnQV_aJh~0IGj`PP9n3%0&sLd1CLc2@PdE_ zzDH@mhc;2C;1@(@zk3GWvyJZ~;5-qzaKW#7S{1n5wq6r>>kjG@{IJNZPvEOwGzOUM zsG8s&BC}tp1Gfrj;BiU=p1iYK1D_)@8wc?CU3~^XHj%j8!LRNGtqNqzh#ftk-!WpU z9yXykhRq|pH6yA5*+gP(0og?2q5$7A(rW_QGGaA>>=?0G0@*QQS->@q^0t6q8;58N z@VsLYRe@|Zv9^H!_;${6v4TGmnT-O-#uBRuWM7G80ohk#S-=<1^HBiVYGPTyGyX%P z0N;11*95Y$#A*V6ag}EQ`~M8l7~nzIAgTf{`URpfz^7&+ssh=NVm$)ckm7m_Jp5*_ z34H%HL}S=>($8-(83UZ|MOENdhp`c54Dg2{axTYyBX3^qySh0AyoSi^knD3x-aKa_ z)@r~bzOS0#qeW&le{yEte9e_;jsddc#l-<;FSG5T`b_}xuDX1;Kzn1+xA_kT-{pZ{ z^k4Z^fxR}(`_=xSalvFN*W8&4U0~oBf6D+=fo$w)*QG)tVNz`AX(!gFB|lRrnbv{9 zw}s#%{I`Ww;4n>V{$whv-m7VW*ASTWgH7iPM#V)1wNstzJ z)y(%eu+L_>$Q~avCsWz|SxpPP-*a9U7^F3`Y+5s;v{vd;T4zZL?nDc|Qqux%t!d4e zOr>dorUh<%!KVcb(z3d8ZSCYtI3r4HnP zx1Y=V)5fCR5pYp{4~ME;5@IFi2}!*|erbX|39& zvt!Yi2Ol80#)dg4noXe~(Fi2}^*|ercX|2|!w5|`*0^g%)0bkX$ zrc9=?_zg`9{P3GTEntw=l(K0}iPBoVOKEM@Q$qvqEi&8Vz`mR3G<$q3okZoDw^bMX z3z1n}V35|*NmM#HWh|YPXQBW0>rz^G1!;ljYg)iL0SvSrnMkStACf$dNoK3yhPIi{z=oCKZ(lGpK4m*wLbTg5E!I2 zzie9bqqGKeDXnpRG&JyJk=Y&xuCPT;vxoh>NmL$|2bZ~p7x*~&vk!v^Mka&Kh?B=b2P1)lc@Z7MNJFbCNkS4z#y%eWz(7& zrS*j_rM1TLI$Ge(L}o(+zNTr-m_+5eRWvQ|^&+#nz#y#|Wz(7wrL|s{(z-fG3w)cV z1zhQi{!BQ15|wLL*R;UvuHh#kFi2~9*|erdX$|U9S{tvRqXphYWVXkFJ8D|fCQ-R` zO-;+={ywctV35|dvT03=(ptYuY0V1K0zaf_0guqMrcR=A!T?PRe4@x~mjHvbrj|`> zYLwOnT}o@m6?L@02Z+pu2E0hqnlg#XF6(Go;GeAPM++FFHKlA?Q=+s6cPXv=gS5cU zYg)iNHLax+seJMUO$%HbdrL)gl6Z0(e-yvN}Yk%1l>n_LOuZzr%7VvdV z>%ECou3ul%0^ck$s|zF(_j#*qTJJ?^ZP=x>o(<9hzo}^fSNW1Z6E2=eWzQj+7I<%w z*|dN`T8qo3wKz&^qb{X2I@mi5KGE+Tt^#+~v=&aJ^2|n>7I^hd{3HYhX)P?9*1{;Q zjk}cApM$i(A8T5`qcp7r6R9+9s%e3zZsyYh25BuQo7RFTtxdX=*73n^YVesNvl9t; zv8FYDB9(hK*R;TMMP_w@L0a?6rZqoGYtt^JwKPZzyrSQ)T?PJD)0#Jt%D^vaTHxKc z^rHm~(wbK`t$9&en{_FzGlKo);2&vPz&A9lxf7`zJ5|nXIO(*k}))0#4o%4NH1THq^0W+x#qNNY;jw5CL9 zZQZ4`n&ihZ?t=;VXpz~_fX8ZDOD9li++EWG*F_;U^)GOx)+KvT3~+rL}FB(mEpe2@!a_|D{nCI9JnJ zJb}v9dum$XBlhxX0fV#_mrZMNl-71#O6#2=Lb8HGJ$VvS_>yo*=%o33%rHM ztS&G}Yhl^67Dj1p-=(y^Cvm%D3w)lY1zdBOKNBvPK;;+vXj+nbidbX-zMi*7PW?uXHJ`dxEsU&uCh}Z);l9CQzw0X4(me~W%_uzT>kRq#RncdJ$4MCoYzta#vVHSK2b9U`;c41C>-#sa_C zoNL-;>&yvM4i%yG0K7WnQF&Z>z?EA9dsKE4p|uB`9P+5#qCDW+A&*Mm*4&A;2W%2i zdmdCKDi8RZkVoYWm&$R<16~~RsNAbO;L9P8%JPSJzramJ)b5u`Re8XZ zLLQYLDGzv0$fNQn1q{E$cGCglNd4S7_aR37k|kVoY`xX{4Ii_C@w?6tN3 zjPTxgDqPo{F8D5gjjsa9#2$n1l}+otD6Kual-9x^E$|1L7H|_yYw>t0EH7MI;4}PE zqY4btT3j}*#Zg*&bt$c*2Ia%xLIY0}nH??Qewx<8@l;slI9)I+8mkKo(pp$Ht%Xrq zdv__VzXWN4EAq4t8yfI9O>5qGDlE2KT3{AdRu>qgHLq-1^P;r&=~7xJN(wGC@Y$Lc z@Ip;%)_5wc`J68J62Jbd0)w<>l}&3_l-9oaWAyb=`Yz3Uqxiq$-@Fr-^^iYk9vO^I z%cAS+58ueuT^E9H7MXot9q{>p2L428z|RBPj*D~42T5t?8SvX))C#;>L@o~SZ#}IF ze8!7ffemkJ2H^EYW_<#8@S;}WxIh#9Lr<#$ukxZ+;1hu+_-#+C0<*XB&}>Hnw-S-d z6I}JQD)4A8Y6V^%Xo7F|v?}m%FKPvT5@>=4zD;OV;4m+01s*0M7cKa7PpbldRp3Ql)C&Azi&}w)2AbgU zo>m3k>_x4w3v7N@eV+M#jz0`e-QeXn$S=M&4&YDZ)NPLf;6}UZB^tc5$gC!CtKBiy z3LGvX*Wcipr`a!dbB*J?s0KVK&;(!NY1Ll~d|E}o#a`43Y}-Q<0N*Auo9BxH7Y8)( zxg$ub3gl@#RujnW2bU*!bARig3gpseHGvO&KmXwCGn-g=aj);#dupP|@#-!(a0_gXLd@E19(UGGJsZWPw9 zylA7@Ic$>BhC1rkxv1zvfTiVgR{z~kCUm=Ueg)UYc2soToV0;X0Pw{kvnd1b(Phhm z@l<~H71agbAu_8ATveu>{YbE2JQZ#uxzPo4%gE{inGEf^R8liz*rj>rIeXx3L}u;n zEtBNBD|1@Az2~L!9hn>LLMlb0&`zxDWV8RjG!EHd?Mv`lBD3)W7wS07A5UeSU>v~1 zbR2*$?3TN*(a#@Gh1+kg-@x2zvwneeeY-A|)Hw9{4;=^a@*=bLHk2U=#$o<=#$jI_ zhxy~FbTSU}qxJ1q|D|!58jJ(@Djf%4wvF%0x#Ow)=*v2W;2T9|a|ixh$6@YxD%`eo z;{fIsrPT$}^>!TQ`i}sqad_b(9S88sBD3~Bxj1hQ#$m1>hmCX`=8mV*$vDi7#^G!K z(m1R%MEepvSY$SS;1C^$Ipe9U5{v_QLmda;aXJoj##7;TuNwz2w|1>xU@#7I3di9W z7w9;EuNRrM_oNI-Fb;G4I4rN@FlRiKPR3zQG!6&+OXF~9Fb?4BbsT_u={U?BPvzX< zI)>mjk=fjV+v+&X98ZPY zUNmNor_#wd%#6n2z<+5R25zW*3EomC-cR5}@l8PPaYI~j+f z)zXY$6u`IZC;-pZQJ6lS%4xgk2!byWnav#dh>pVa@l^Oy#*G4)FJP=LFc^jDg`@EH z4|Np4e-)Xvx4sNWFbdQCD0I@{)1wY=?4-kue?NQb72!iR(ryFqC^8!=aJqDP#f%0n z-B~rkD{6-Wr}@uoqk(*9<+>Zp_fyswewEo!ii4IzdH8?#y5s zf$!F71pI}cMx%g#7m*tTaG!1Ssbz-`xUCnB0!|Q-(*#fQv>Nb+fChd{X~0(k8u&9$ zt9~wUgY9(IgNKOBKBX7f6wtsYDGm6efCiqfG~mMl4g7}EfPJ^u*uX1@%*F=XDWHK5 zRT}WLfCiqTG~h1-8u%%t0sj`zz)O?{++YVy0lbIEYzn}m0vdRn(ttk-Xy8Yb25j0< zoq~@RnVo{bsUor$@CB2p+!*MBZ}z%1;EMqb{E5+PhGfY%q9O&@q*Km(tkG~gux z4Sbo>fDZ&T@FJxFHx17B;LSy5V*?%>(7@*^4R~`v1K*-F;L8CGypq4j)PTc+i$8d4 zr2!8MXy8kg2D~Gnfq$bk;2QxAJkYQEYQW*a@(}zLr2)Sc(7-d427Dl(fge&D@b3W) zypjKmRs-%Ee3S$4uQcHJfCj!vX~3rf8u)3Y0Y49D;H~`qlp3%lxa|TyNNK>c0vdRZ z(ts}pH1Nwx11>MC6?aVm@8VZ5HQ-(W4ScYtRe{a^j_@cT`)iy7Fnek2xdzCBr(#9{ z|1LXi+AoxX8^`8rAFEmaoNKGeW3DeaQddae2aZOw27Jhis{cGDZ~a_KdwdT&E*J4o zY%2nuHeT(6r-;l(2ISerR|2@v%|E^u~vpj!p zR9jZZo>MIsOEj1HZ(OUuvweW0_|oB{J@RXf?T3v<cX3Ic!`vjHTRZW^pKQR^tW4c z(LbcLB5wb0;cx$UFo<_aSKX^!27JbgqVH)EUlUY%81sN=@XfcKbaeJ2-`Vo{I2^w} zi{4`IF(QpLrlG;>6s^Puizhelz~e>MVEP=>MuqQG9FY-99SF1MFdogo;L+|2qozhF#EYYd^L|}hzPj92N;`T$zSXoxBwuPC^Y>gU zb&zK7ewsJ(s_(>e{WDX7WU`aw;r+bkJ87u|$z-31CI5==_+0~;DM2#XS@MW_UhkcZ zsRYSnE17(v@M`a*r4l5QT`rcclrm|l1j%HBWb*P#@1&&?B$Hh)mUx|a(ozYM$+pV! ze&SW$NlPV2Cc8^4@fz=>r4l5QjcCYY;uYRWOC?AqdqOPn`tGEq5+swg_Q+%6)!j); zB}gWFRV?w^?xdv>B$JKnna9K{yOWkmkWBWzSXv@w(ozYM$tLv5W8ziaNlPV2CTozV z!t$E#q@@xhlbtV?ctv;8QVEjD){y6+@_O#1r4l5QT`iV)HFwfd36jY+mIs&eTJEH! z5+sw&5=*?2J87u|$z(gq<2iX9chXV`lF9BDOT3CZX{iLsWc$lQD0vNc(ozYM$(|KU zyn;JvsRYSnqvcVHynZ`rsRYSne-=x;dOK;U1j%H_%L4^@?RL^q36jZ{iX~pTowQVf zWU@0>%FimiZaZnI1j%H5SI#Z*s_mqu5+svdB9?f~cG6M_lF8OtC69?$Y$q+1Aero1 zvBc}Ola@-5O!lQ!^O$(GcG6M_lF9B6OT1P)X{iLsWV^1G$HXhOla@-5O!hmm#Ot(^ zmP(LJ*0g#a6R*-vS}H*@*^6R{*Jvj#l^~hyh<eZ$(ZNF(w~cBdbx9w$$HCH8@2@{V=6&1WZwQHvPRW=`kc@d! zEWJ_`(;qq~+0S=E;zjkzm`ae0IbL=_o$Yr+CHm=%&PjG%ASAY7C1WZboYEc{!J;9=YqpKCmHhtA?Yui6UW`Tos&%Vec8Oi z(;*UjWHM8NWXyM7&lkDpNSVy;2c45LbM5bPOEaZRT6$0#AMvDU_f3}3_@a>P_LObd zo}x=~LD@6Hf^D~w)RQWv6lp;TOWE5(`dous^p5PEsrPHLf7G#)!IdI?(zzvLc7HSv z;e08R?v!?*(A=&hu&PEI;@s9GJV5VZb{#P!p&ZTZd_z^m8)yuCgOBuKH-1y#cT_Y% z;8{|-sOx*&ZVYSxs}D2G@Mv$c3HU7$HJB4mZ=<3;AwN7(XU+}HKM~ztW`+0GTCSmO zw$xXBEaxLv?Hr|SxG?MWQ)#-9sQ15|X;|=3uXfv*_*6m(n(Cu)GZ#yTKAyMQh>iLD z^R~O>uy6TIz9|iPy$#!1Ia#vBhCOC?eKL>6+u7#Nxn|fF*|IzD?iE{5W~~|{R_jxt{=B5~M=9+=xkTWH zD*9O9rz%=r!du&inK-lYJF}Oc%>CI7zw@I_cNKG~G#An`L-VkwytR1=Ym3ENAuTgB zpQYC3Camou&4skg(ELZWHYZ_inlu;EGDGth=le`&C9EwHYlXDT(0qnko0+h-gESY? zGDGtp)Y^=MwezL9kd_&mH+|Y?Iz3@+p;#-VWrpU-YHeD=+BVW$NXrb(Pph@532RfO zxsa9_nm7Et&vZ({+Dl@skd_&m$E&ra(d#NJW~ek5(lSHy6KXAfeSO88Db0nn%+S34 zGd|PBiP#p1wL)5EX#TERi(l4WF%M8uyKI=1$Urk;y z&x*A|T4reej#`_S=(kOzxsa9_njcbY@r$@CW|A})(lSHyfIs+5f6t0+)rMZxn8Jbsp-e)>B(Qos_S|KenG#{zf;uq*v%sSFsNXrb( zzfo&Tqt`=K%n8z5NXrb(D=zSv#;=R5m= z)QUMynhR-}p?SGK`b^_@l2*)Iu~taS49%m}TKp=|is>iKg|y7je5+cE-@sWhONOK`AGc@0<*5cPZR?HF7Tu93d&6O8@ zrt#YqD`t*ZE2L$H<`%UUztpf|R*>dGT4rdzUaiIN60Df7OLHMDGc3a!lJ*2simKmCVs@4`Ktc{fBLRw~M{y?oQOjx@~nhR-}p?Tj|e5Ua` z!0bIyX)dH?hUTl(+WbUp&C*;*%M8u$tF?IvYcr*}kd_&m_k7i7IyYhM6R}oE%M8s| zsI~b0PWHpUG#An`L-RXoZB`<-Yoxi5mKmCNTj(>Lk+8N@tQFESL-S>7Eq;km#e7wo z3u&35`AxMpEfL!cX)dH?hUVdaGVOo%e#p#(wIyP$kd_&mr>eE732S>wb0IA=G(W1= zrX;LQljcHNW@zs9pFY#2<8!G0R?P3kS|KenH1Dp~;%C`c%u3Q+NXrb(r>V905%LwY zpEMWJGDGv7YAt?pd&T@vnhR-}q4`6#7C$h(V(ypbLRw~M-s&|!3h{HwE9Nt?R!GYX z%?F9K#1}giv%NGHkTOH#B^uX)#OxR=&4skg(EOBIi=S3mF+Y~(LRw~MUVf49v-p{d z74y7UE2L$H=DpS0oJ6LpOLHMDGc^A|t;Ns3tC$0&xsa9_n(tL>@l)I?<~(UGq}jXA zLi<>)O;2R{NEupYurf$)^CzCTRWU{y3rLxvaZhh)l%9cdR52S$V*$zD`TTQEzeGy= z&4qcZSG}?JdPDoaDDZgf@Vf<`lYQg6xq+~apO*98M%b2ecew;~la%&44xHyjwR%mv zj+VyzibzjL;|o%Dnl%dl&a4~E+Y-*_orl$@vrn~m6j~)rH zHaMIXJnN%kN{~!OIQk%wR(hQ>GbKnB^H&)n-n^0MX!|i;-j=~jHj<==gv9$alBCVv z%;V$L8A;MbLgFnMNzxJ_@j{Fw>EO3=cf9)|NxDZ!yyhZF8vJ%{i8op#NmGTy%PW$k zcZ9@yDw3q8zvS+CB}I~Shmd&tM3S_Qy!U|@O(aQY2#I$}BuTFciPuLYNqhb^51cne zBuMt)sC-2(Z#+09yp;X?{oKT3Qig4Li~gHco)y+_{+3G%*}a|;)_#94!8Qj8>(C{g zv)ivGJan_2jy6w%apxHDSz_6q6@WK;Q4KgpL{1a@tfy6hOTDNDY> zOYBJK>9gN6u$A|N{@be*%b4DVD<9Wc7a2Xog2u_zc8)6MDoKxCNd#Lli-kl7BuQIK zCS;T#H5eKT`leSIQf96ecQ^Wuuf^FdlE(LoNSl3-D{e1kGH@D4c+!}9cbSro)l%5nRPzQL)cWxMBo*3xHKN$F{#1OILVU|+1)FRk9SO}n4bU0 zV_Hqh#E)<)W`AiM*)gfX(0HULCA#1xX?(L|QpIerG>>UZDUkMEa#P-c>|e zLgPod+oZdlq;c;e(iCaDposLaG(J;ATH&90ECZxW#?&N@V>>1_7#ffBq{LLYQ5xrT zOsbgorSY?lNeza^sT)GSQh0hQ<+| zl<22(rSbBPN%s4FX?(eewC1OIOoOFN9Cr+NbEjSr1C%(?z7O$%C^Fkun+6bJF-)5oxSE?&>%xla>}s;|E2g@5n={PLnce z>7UZrTb>@3B>g}drxlS_kY_y&kTPlMGHLu-5$Ox^gr?1xQMj7JPqkUDU+5Slg0%_q-J><(qU32Exjy_ZxxY_l4ls5BxTalyVCec5$RNU z^3YjQCM{LuQ9vt6nIxSnjh7dZR+k6(43aWw=_k^7eGzFxdF;+sQYJ0^QX20nB5f}Z z%NZeM($ZXMe4>c7?;80zvsKEZrQb{At3{+k*UT-AlQL;(ku<(vMEcfRxupqGCM|s^ zjSc;Ca*}kqG@f5X>N6m>u!fXLOBYMy)kUO%19M9oOPRFvb7`DaMA|~0rLv=xNlUj& zy)2Dy6_LIn zPa8Qw%A}Pa8D$+B7G(Kjl4N4(q=ShUQ^Pn?G3zIchL8k5bya1dZmil@|Y+ zqruSpE2YIh(`Ya>zpS)b38yso+017;GeM(yYo*1%m}oFGk5O9uQ-}sb^EpbJmT*e* zY^6<2&}e>DY4NWT8Vt>SH}{#wKR0MFG;gc4_;&;ihUTv;E&hQ(gQ596r7fHk&k&k_ zt+aSce}kdNgmgSJ=X58gIgHFf?zkw7H4cXg*wN@wWK}L-Peni}%Af7@FrO zE#BzfU}%0#X)_YB(Y(?ZeWvl&^aexoj!KL7oHrPnk5F2?nY_W!e38XF4ZAqj|W}W+iAek5gK_@wmaze2LO#B&^YVkJ6?mXf(g6w0IA2gQ2>`cgEVC4${2l zFrR6><+Z`kyqnVEy{rv}=Hrw$FA*Efmn$vaecE7XzF%qawo-fdO`6|PTD)Jh!O+}) zE1zk+5wyY3yob`_9i9z_=5H%4-n!XfXr3sviWwUZ6^%30*3?9=(R{zs;yskMJEVD$ z(&EjL4Tk1kTl?;acRkvLlr(Rmw0JvXgQ0mprN#Rc8w}0IDJ|ZB*kEYBP-*eb!UjY0 zPlT5Embk&t$m`DCf^mF21~l_FZuev21dV217Hw(q{=Ei6Gw(9Cw0L7)gQ1yM?OIyA zE#69J&y?HbBgv~uEiK+7*I;Po1)GV@Zw-bJh#NF+LEM8gv1-zlB5A&&Mom`wIr!cNW3pCN!su$ zxg}nMmL%OMB;Ib8ByG8CZi$zcB}n$mSs@)SWpb)~UmAIVYhq?r%(X(|rMk&kUNJ8T zjW-}CkC}>DeYZS#URZ5u@eycuYYUC{i(6WJJXg#aLgRJtmKL8K>~E=r_JWj_7N2V> z=3QxCb@x0*ON-B3_IIq(yp@!RvtVZSl1APSmpBS5<^>@w?$}br#INUSjn53c;E6Xl zCFjHy^2VnEQf6pe;$IInrruq}{7xDRNSUFLZ6dBaqtC1r)9@R+v&jAx(((`n-JX}5 zOKG3`13doMd6OLs;E5vYVg6oeY0I0J{WrGPjJ;5~Ia1CeHUZQ#pZGz$2!7gd4kBf6;MKBkBcdDxTq3=v(Y=77YLnA65= zEBw)_M;?@wY`Qf5*ps5KcK_IiC z;|ZtgzwzqLz_m36U}!O(h3Rk_Q{gm5Q#j8e&ZY_Vb$vLafnhjJ9au~UH4>}O`@F{h zmx{=B+sHO*Yk2o#fT8=59k`z>#{TU6RDoEw=SJY?%F6pg|IIG}n0r%*?f?g4#GZ11 zM4H|a7b`~7Q2h&9G2a@#rj&NJ0WbHW8gROZ`r6&$TMzk;*1)B?O& zMEMk^w)#qW6t?Gp{X~?W>zp5bI%1aC|Bs~M!rwqb-%&g35rNOD$R{em&7Lj0rRfX| z7tN|VxI^HBDiT+|a6b3zmZme&ESg8F1BQRLio7!c&gWs>(yX^MNG8;Fey+6u@9?4; zaE^#{rZ3$F*<(rvKJG;=z$ZkMPhe_Wuk2?!a2pYoo9X{Y({Q7)yY$Gx+F5T1T%w}- zadR`^z;08;n$FV6qItGDVECU^QOf5T-O|L;*T?5`>q05* zNf3D8guE%AW7LimsU-qGS%!$^`Vvp)cu&nhY&%cQZPdniPtCy4Q+ny)yyA&ODy9*L zZRe@cd-}Tf)Cdec#p{%Y%1)xPr&obZhbxr^u_M(>h>=U1gbEo`!dB@I4-`e=LcsRv-sshJ*QSHAh#N~{! zH^=OcF~l~JxY>-8+ojFP$oic?_O4)NV(Lif(}5qGalIQWs`p|=^-ipaj-|9dd>(5^ zO!g_?aCyVS#d`c0iwC%YJah#w@X6ML^7E=HgwkL%DL$!%VcWhl_g7p1iI0 z3gVFQ>2@booHhHOF$2Zq7E;<@ZJME*_W68Z+c1&r7PTNDiRH{mgL>skjM=l15<|Bn zYN3B9d-KL}`{>j9jKkUY2eIU2;1@*J!}M*ev{CzuNbT8Gws=U-yAX}kDgv$k)Tr!dM~$}=aHmMZYU46MurXBc6LXJy9Lu7(m|a1 z?GXnIt^#yyR8GtnU0;&YF0+8|iYUK~Q|mb?SFl9jPehaxBM%6~+@{`BGZ5R(Kyw?l z&y)xZJ;hgW92rq05qtdxV%vFY^q!2*sSy}@im%iSl^4Xv>psZnH1Ez{3EI)(>^Lb? zb41r7>qfcw@xgYdr79Jern=C)J>@n{zHfgjH>g2M3( zBWO%U5RbAumF9D5R~d!9{b*N#!30=aM)Yt$ooc|Nyr`u<`@{mlPvmy6eaFs8-`ZG7 zJgntCRe=M%sPPTQcR`17VT<^w;>b+P| zy%Q^1wtJ0n>oM%#F8KuOG5j=3xIt6BrF=bBZ_8djuu&BoRs_UsN9!@HG10;vF6y~_ zJ$6&w_;kCIbUk*bn0#DHU5`C2l0QW)NJt`Bk1=K^OV_A5hVIg+rM}<8^;mtz;q3da zSaLG(1d-+IF>2?F)Sm4KMhU+V2_;xnH#1ZoAJISrbisHbA zvs_YlU_DmPPOryeR?4&SzByz{9zDIhB0;B8bL%kzp|r{Q^%yd2*tWv; z*g?`kociq%2Mn$P^&K46-y4)Kv3jiUms-F-Zh)v2_=1S?t2?!KlnDImGDK=O4E7eo z7`lTAa(#_^6M?&{XkUTfP|>jh&s5Qc0&i5&?E-(VqL&1Iq@o7Na**$Umdyn2t)fPO z-&WD70xwq4j|I+F5#6>#MgI`k!}nxMZ-M<(G*I9W6>TPP8x`#&aD)C(QT^EG6C{`Z@0pu-Nw+W3k*E*ct==A!=BJg$F;bxE z7N4uhqza~UiOzC9*Xow0^SQNX2FFWc%q(%4Kj(9YZfQE7&7v6`kcp|Yj6+*-J`e7e zrt|q-(F~6G#0*aPoX{;z=kq6`8JtoMkx3sMNGYE`?UttV`G9B!=dAt2XK*~He9r5Z zrt|rhXa*<6oy6yejt_D-p6_-`)A?Lgj;`>mE55cV_PJ)aG@Z{KL^C+84-{WRihU06 zmZtMLRy2d_M&ev=iOc-CzCEH_n$G7BMKicCB`!J3IJ6b#^So|pI-l2zX7QCT<@1-_ z(hM!_D&I99;=hJ&0se7S7ArO23trR$d{IRCiiq0wt9xDG4kF5lVGItte&FwaOH38> zJ?WJRzIUR}voWccImz@I9N#dmWSBX>V{<(Xq<^lKcVTK7-OIBIO!Y7{PV3lTOll8* zSp1YmH##%L(7oPZ%UcrW5-IJiO2(1W9UZrKOVe3+Kr~-apD&27Ma4encT3axd_^=r zP@j*AuV;&WzTGWN=kp`cTxAswot8Vr*Mr4Adx=KZG@Z|WqPe;Hyg_`;F7~;8w=|v4 zEk$!L^?9ZEx~ACYF5S{}KEEcKN2||s#n+|9K1X*;)A{_iXiin16U5h<#Xe8#mZtN0 zk!W78K93b&Cl~u{>z1bTIZHGjRiB55uOo_m&h3__^ZB%BzO6p@6JO26KL6A$P3QA( zqPc=z19uW%BZ_@yqR}-?=W}(@{G$5YOnhxq>~nCpG@Z|FMDqakIZ%8JDfT&{Tbj;i zi)bFNK6{I=e#JhI?3SkU`90A*Uw!^VV2@&-KkSyK^LdGAUavmi5V%A|jv4;B>*vqA zrRl8963vIz0jsn{DhmBM?0nAcmS)y>P>=iywuzL9B|*>Ly-hvMEp$-X)T>tOBkR+< zUNK?6uYJI3J*}jDV}?ZWM?qwLR}oTwA8EAiaY@$GTo9-X@T!shKE3M|J4mvgR?@z` z^hfbWL1cZ6kox#YlS$UoTo9-%=T#&7eR|g`c93K}t)zWpdPMO@L1ca3YsjbTQYjNb zxRI=hldPw?AW-?ESB>oV>0PhbL6Y^flJ<>xHi|zA zBI`R>Nb`K8$t3G(E(lb9=T#&7eR|g`c93K}t)zWp9*p9Tf^et&Rb*pif4?iU1$dB% z(svR<<#oJrGcZ(6?t|!4;JK;LbI+bVy)sPKEnrIfjavOh&3?n*v)g|ARw`Z@A0_=R z?*ggdd0k1*DTBZ2yRZsW9~Y0SPhMS4x~h!` z8%!Ac+TQ+P=0Q)pDXC>}|N8i|zO!V0&hZCH^7yK!xjsYXH(oUw=svyc6+1Y->S-nI z8#6nKKMEpDdhWpd>i4XaHXPt>YjY=}6*yZ&`JqScAteGIUWQ0*vvs`1Fot4GIPYtO zO9igx9k&b+xV4IQ648WT zS71LC4HP&;MfIJM_gpUh-!f?KuI+!ySOmjUA{+Pl;*D-;I-d>FsloUsIyLVr{nz>I z(=AQsbBJgL6D%>d>Mcjk=ce7#bUybK&0q#6rdZ17e%;b^K93U3;1Eg7^pwwUc1zRw z{DEi&$6(@sOZlAIEluZhhG^a>r9JV@78o4&DWBJNOS9h6uJV0ItN*H`1$a_FPLnm@ z$s*F9AI{hi*$fM8il$KqR|>pFMUEN%xjFP<3jK9cDLJ-Yg3APGXa{`(e~D zq1DuW!dM=Q{+reu6>CP_-oty`Rz0fW9HmH+rHaAb1>RCb%KFZb4_Y(*r@iC{#d@0i zAcxBJUN!oR)~9#9Vh0}->uDwJ8*@z*e-uR4cbbr<`$&^X*3(=Ns9fPyBl~@N*DH3A zWIe5F?c zbgGXunPff91%b+VuNv9!)4N`=gCy%|CGFdXC`9o`L1cZuE~Ifj(qxkLG#3Oa$9UDq zexKg;iX9|bPb+EPZd{AvkAlehR)sXuN19Bsp5}r;uDwJ+dZ&R z{812D-(7{YkB>B&WIfFVfy%yKHL~BQcfDcQy8A_Uquz?YDm& zTt_Qu-`@DCQ%u~xw_gVfslSwoo^Jm-xQ^z6KxKeeO(a>uzDu&6R?@!xI=C*dM3UiJ zYN*_&9HI9sfg{#sh29F>Q$+c4oLY+#fvw9BsXeO1Fow=CAswbsjuZHO6`dpS=PJ5E z;Dai9OyKJ(`isEK$Jer)!1YwLk-)F2h{TRi(a{1=R?#T}&s5R50xwn3l>)C((G3D; ztLRRF52~oX`|?rCrT<%o*WGMtl3or5u|ziRljlL*(sVvg63t+iBsw+kEB)8`JhfYz z&gZ3~8BD{(*s8Z2IiFW_OVjzhT{MGvo|s}OpLcdk)A@W(G=l>vG1F5%U+k8q^Z5_a z435;q0hjXmNw+ke&wg^K1*d|G=P=RSMGte%w!!Hq<#W4kY1UiXRc;-( z`n$?4z?;|PvQPv5Qbc-Bd)^wz?ovANw_el&yjw*1g@xKBYk60|OGT6u>%(?k7ykVp zO~a*dxb*yZ9fAEM_h#QM(fZ4sMUL;5rt>*jG%r=3JBhCm#XisNmZtMLT{Le|pPPxV zZHj$f+bvD!^ET0ZRDBK{>gz> z?DNBJX*!=h#KGF?^DTi(ROFc9pPRR#QwJ{yT%@AVpTo}Q7TwZx+B=D6 zqdIs*;Ik@n%<#|o+`C(v&Pt1Dj#CGmDj!r)=+9y2^YCtI)?1pkeSSXvTuS@d2zc@i zoT^6wzbm5rR88%4B?2$-q88vaUNj1Lmlw4FAM>KQGb;v&^sO6yI)^ud#L?{vHEd# z_wHlOQL$#!?LEBShU&52e2NrVsu?8|MQo5lYJmJ z@HH=L0lwiyt-#5*eg-)ULhVn*-i1qMS%=%{x31IM9n)fNywF z^a_j4CP6&x%?x`F89jUS02#vk%s}lAen4wLhA<~m+shA1Gms(7iPRV}>l(;-(vboZ#}FjSqa{*Y|Q zvPvau|8r&fe^u(Muq0YB(2zEfKQ6Z(ZE~X%oH63+)qS~20lz_z!L%* z_-v&Ce-zNbH!BVJ+kggsOKHH50vdP~f9e_qTu($U1@LxC1MV5nz=tXgxP34Qz{CCF zRRuCv>EySsL)PfCfHaX}~7~8u%rp0audqwQ~wy$DhMT0S^dh;898gUKr58 zKT#U+$$$oaNohdNKQ1=#IDal01>~IMXq<_*l`Ddife-Z;j!`EGJS(7qIdj=A2XfkS z*1%j+{vUH^0_Ry#9RB|OezSAzvbcC zgKpQWS5;kCSNH38{DchfP@77W4485yWO?mqVO>CnaD^rFKgXnAxT~e<;nohq)Xhr^ zW;(5QbAWY;3JqZ^JpJ1bue89wIwr+*T|6TLBkxb+U>pKo6vynzn+Oy0d_SDL={2U~ zyRB6mx-sJ_F7{j^zj=nt$Hdev{xJ@D@OiD5A4As?>WG~S-_Y%EpG$V*MLQx}`^ ztX3MQmR4l+WUg606d zF~WGz9vBd0yyAe#ccBbPFgAU<4q1= z8B?-a%fw1=iYu3=inAn&&3^i6ZyiVD z7Bm5Y^BU368eCrYyaxx>(;%QnH2$c2_m7h5aaRb0Kj zFwTqB&8R_>)#Zh?#IU^L5)`Vhi>v=?Ap7F<8@Z)C#gziRZ|RPbxW$nuzv5sHM@6qR ztaDAiB|1(_;Xqo?5|650zK8zDEr9H7IM+M!6Rll{La4po%||+q)x6yzrlX?d?Up?r zXV*MY-cQ@$VP~LwuZj0-sVD#@aSLUBjVub^s#F=mdvhuZfTXJ%>JVyST@-0nkm+hL zkWYuF-KcY{FkBG}#Qe7n20S^Uc0JrS$&SnR z=aOSlxG!HA9fVTtUf5M@y$h{V+1OQTEsSL!?Tu_o&X1y}=kW*TWF-gP1yzdE<4aA* zr=qYS;8zT_E}T9&e(3Khb^h00s>=g@Ms}^W8YkdyC#ir*>s__hmBqbqy@`O|$;f`7 zzOG`8HDM~cfs+`{WzoAz}-*TbVk4cD z7=*>mOXnJr3}}!zY{3dagRDKaWV|V%s#+*NC1phaX|0pkD*3*48s&rxE#^!MhqD(T zLRCMu@|2qid2)HcdjVC?k!BiZoZ4P=aXowh{`wO$;VchMbkWq=_Xx$cvawpP*SbB$2715SDj(PPhOdA-4zc9PbOK?n794N!+*whX}_oOi)u83Zk9 z%;wzvl`_xb;K6YYuPT4L!~7sy5pb7SE*#2RiGo^Z1^5oJmRHxmzPNt4&r&H*aiu`T zRi-uNx>QgDR!dCFOH}mIZj_GGj>Kt4$9ijQY=n+$w|aaMi)lUIcvRjM^~0+0R(a41 z9f;J-HGAFV?dD(2iL&2r`RH+W%{=A3lilUyCVKZ?6YrLIt9%HU#4VI#VB{6`11eR9 z@ZKg4$RQvDz*+2Rp{a#+RphajOFOKUZ8plwLt~j4vCURKaU$L+x%5BFUv;qw>nkA6ZK95RsdEorpqMtJgKTYu;}D)qE&EC#Et3 zNXkl0DKmCtnK`XeWeD%D#sN75Ok>oUQRD@+N?2D#PO)6toyyFkth{XBTbVh_cz8-p zyvfrlJia6-RKI_;YDAeS#r4DemP&bwD+MY}gPZ@gMWL3s#gVwhkvOW%)Dov1iPMh6 zQDvrC3 z+FO|^pLmrRmXAUTil-)C6s;OjW=e7WaQ~%Jp5jV@ifcoZ{%y-lEpdw@F+H(`irz)j zD2daK#A!#zQDvsqaqU)5Od*Zd^NmO4m6`WgO7IY~yPD}l6ha-xZeG_iQ}cH7uVzEZ z+bthG&aRoKyx+00y?=ZTx63F{&cquc?+`GFTPVlC$TBl&ViNBV-o-c|hky(KH`MYu z*GgCyMaBae^ubtUsw$?Yf7wodJ(A5n&1%pod#gp|WAzf~gG}4UMo-T0nDZI&4(y0p zREq0|BbQ2fiYo;wPEE=G+R9N&+~P=-4Ufr=wJXh%uh;z*QNz)Uq%99?E= z9j6_M(~iVZWu}(6cB?0*kVfnI#-sAe%z>5?ylLg;UMHdu>Ns}ux|W%mx0`=87fN19 z(K6U0%1p`GHS@IBXRK)yC}-k5GmfAkU>Z~lwGkuA%-NMHLwL`M19Aw+0B}PcLM^PT zB8OTo-7}S$bF93)VsB-pe63Fc_P1u$RnbW^sQ#L0)rc}vitC35ES2&UR|-^I8=~}Y zTV`sBTO5g79EqbgaB7Luj>Kt4;;1rHOI*9v6H`c|^?c(|d1dApO9|f8baSs0k^J;` zkr!IX>p0e4*D_P{cJr@hL&+;CT6R04%#@s6Gf#WHsIazsuZj2aID&?NX;3ZHMvN#k zS5~SF;r;74Acufyj8>OE8i`t1S4AFaxipi?%&V=uylHfqQD54hb{|eP?vF$%bAN6Z zvAhc?FM(WRCi8&;K>>azIyHW);OOXuIjrYxKw;!DAKqk?+h~A1!sNVmg3?K2-d>b% zexqK}Wjh`Jebi+;;JXbq6$Tf4v3)9{)@gg{FhTD$C%rd1Yk0T`qji^46L^`nA5N(r z>lsv3@>tI!>IW;wE4p!!Hh$>nXDii!vrJ`7Sanb_aLo~H(k<$-a`ZaHqkZx#8HT`q zICYYIAV(DkOpeHpRZW)NC@w|2gi5L6iBhQKGV*V+zqEV0M5yF?sk5L;MML<$4a%RT z!C4YD4{kI_I>DHg?LzdL^FTYM%hlP{h8$khy`{nBvmH~hQVao846F5(W;10V)y`RJ z=PTm9g6e^QevjIe6-6&PkWsfJ(tu70D<$N|pRvKu$8#ihfP6ehG8d3HiiL`oxB0$| zPyt>U-4#DI^JzorXG&(P^`k0;B6KAt)m>Ei+@>nLXs&SwMxGAfQlK}e2jP3>k{`xW zUcHwo59!$;frzir$l?Q#*L2%Yv+$NRU!f5~Kwd#^3IEQvVBc+Ri_K%EaJ%HDce?6_ z2gcXAk*c^-rsBFvOfQHhiS^6t?&Q|^sMc}X(Q(?*anvHdmbiASC#H}_>-ol`@)q%B z=$+MWFLWSM$B{6r^}5g7&A)9<&@=gY3sY5vA~G4%Eh$@tF0)1JK2#_KgnlZnh=+h^ zDc4}-$Z;;qS{>0X@ebjAN4lv3$l!JpB!pU67ezGkkGEG(_%?v(%Ns{LEa;ff3;XS_ zCG9%%#gC#-=6J=QRtGxO{OVNb|JZEgMv_+#bdq*@aHO>^P5<@-UGdtM%s}aM3-tqP zPsZ2vDx%5t8#ZDJt?J6x2xuKA?H@Rau?|t_b6Xx_`C7n*H?%JaR5iDzc0}qE;Rt<* zxw#)s+zfm|Os{RFOUmOrU)C;^zGWp?SRn*_%!hMAj{d~3LI`-> zM{+`rzG+zP+Q7jla>7#Q=2$;$82@T3wtH4=U&4x)M=Q1iqIWyHa)j!#_y9!jmXM?G zMJu)gj(@bZLLvy58|HtkQa)*+pS4iaCP!UgVD1NF(6$0%U@z8U@QR*8YVH7GrVyLEVb0RwDMReOz9nm>2c-xi;-X$@3bAUvq?V2NkBRT>SnU;_v zf+O|;5}B5eBZieo1SDR<3rMh9UXBjFf}uDEc-t#ejJGXubT`9_M8G`8+o~8hA0NtV zk%m+Lh$sQlDFyf{t3L9Q%9)EqjsPhkVZp_U1O9FtE5clQTM6G{h4)fxn_fz9D zb&4w;rnqTy-ki0Kz|vt#*jk?cZC3ko_&Kxpnpkyb{?n|$8d>&iGS?&d_Tl8P-_7!O z;A0Ov-JrWH?fQ5dwkKKZzU$YJ(0kG+g9y)crc&b%gRlAk$+DB+++?Lu$q3GVA8N@I z2Yj62q(pe3d9j7$<#BG@Sw>5x5xLJNGQf>i)fz<%o=%m{3p1nY6N$`={0FTJ-Yr$R zm6Cx`p^9XFZ9sd|mCComOs3>duvv^LY%-h_?t9oN;gBUTl)}kyhMfUJMVxBR$OoVg zsiycOj^Rg8*XzV`-@_U%aE!uCASmLVvw@>%W^ABnr(|Zd&Oi-q5abfUF*RlqK`}wf zsof?K6iJs$1V(oq!9!W%06o_)J74ujS9 zo_~96ty+lvO|`@WR6y03k>Qm<>X_0|$X2pee7|g}e31=(hOs=LNO!nFP*`<}#XwMH zP7A6`SV57DWRajq8dd>1o~SL^YQSNg{pBk8}hEE1!Z&DhB}7dk-3 z_p${tD*|2Wxa;29{+-y*2+7v6xTF1CJ zK6;azOa!f@{P15!TtL^<-ba=^s`_oWn#xgcU8SD)a+v(kTtz2l9L|>qF^yKvoi%!o z;9Zt?mssn(Ox+J1h{T84cr3FyAN{1W;)WIuBCNP_^eL`PKgE%MB%9*OR8w4;1Wkp` zbPWM*Sqk`5ysLQLG9fbr6>(bQzs@;CbOBYv@bhV z+L@gy?afY=b|)?H1k-h=2^s!GgFnYK{%;?az<9pjaR=>ECzKN zEB&ar(tnC8{pL-9O()BGqIB)!sju|c=#JCmfGUjDtj?D{$WE26$WE0W$xe0G?^Z1D zjuOjagCp9)TKZu1<+f{oQpL*71XVg(P^E(f)xD3k7qhN?cjku# zv`xzm%?{Xk;gHGSJ7@{ygX4zlaEF29_E?H3dz$A8K6Wwq!ma zf^Ts~(+2|ErETfW7ONKJf2wE6zbvOpG0RTok`x|o^|sP#QRk-Jaq?#L%5)4!hPQ-X zPo>^@jVjg7&y}(U>ySh%Q7VZ-AlfNo>!|l3dcx?`7(_`c5Vdz;Zm{~sg@V@7a=oXx za-HX`f%1Dg$mOakEk?lnqFt#Hj#6`p6e{B+*)=GA)NOBpK0>H_`FUM{wmQ&1CdnAM zg%^m}R!Wwo3(n#SPEdecQ>1btpY|%aaz{O3C{^X?+W1PoYdML6tcrC{l>l7ndhrDK|e? zc95T=hqC>#%@k~jEt{r6{!V;cXMU@JR2X^C3Y8ul?_yVPQZ)-o>ADQavfhwG5m|N; zB!hLo_C~TTzDvuOpDk@}?kVZ=Hq!`Gb=U$Q8qJ;oynEb6l!Yw^$vrc*duA{zxyN}~ z0lwMTW%ZQ3E|SoUp5-RQoN@eNsqCXnu6f38fRZFb1~tLCPH!LU(QSK%cF(@ zEw&5)a?{ZQIm^#_@>(1gU1}Cd|8fn%5q8Qo1YoAV5YjEi3n3tyv=TiH=o^uF@DYrZ z{9Gw(Y#d3nUJOG2@%8}IuJ|C66XXs=q5p>_;TbDQ>Od6we{7f2r^n0cYUb;QE<}@m zW)f(f3$C$oPSQF={mH*DNwiJ@8yn{&twUs+Sb-;2(hyhOopli{FEdY@J}LYjz^haYc|We6!SlyP^1=ZFFesiAkxVI zy{=fB__mv;TK{K7J+=a#8&TWP_R|sN>{K6TCs9YN#1z`zI{KsaOsa_dQZQE0xurmU z=0Fp>c>t1_kmI5vX-IQQ=2`wn+BA84^g2HlIHVe?iozCc`na=2k z7&OSTCwJl-)t4r2X^`T|o)lMhq&RG$Wr8hj+SmPzucrrEed`-7Xlp7zeWogDZu+!8 zAp0^)2@+=zPTjopIYa);+6GC|q`(R#y2Z9ny3zW@GSWxjCqCd~(^@;D<_wSni80Kla2JQ^Px%jrDhEU8y*YxTkolZr?uu3GBWCcaIvfvNOs zQMIjr_l~G-X#4Gms^){v0v!Hw!69KUkPv>r+S>JR1+ zMbce%B*}Q(?!3=C7Wp6=QLqsYnKu;HRl+=~@%6}}?aQy$C1YBsrt$+YRY@Cfegm(5 zSW4^V^DIwsQuF(ZA2;L=taX2saV$V~jgf5*r)SIR(^p(pf3N7mtwAV7>!f7}A2CU2 z<478FN?tW)$AT8FF=tUdN9AWxEd`0WgB7%(sFTe8PTA_o8;bhZMwEv&F1B0xnj65M zh`8w`;IBs9eU^Z4in#kOafx)3U1+Gh2*(%X?z7Z4n5$;*q5M4i-eP^An{1oB&rql) zsLvP*%>;!)KZy6PXVK>;357c2@qNAOUU^UUxOo)d!djclYi+)8D{3R#<}rx8o%8SZ zo}&63_(u^py##za(@THR37B0PeOH0EcwS={RVojdE8dmk^?Bi-ON zThm8Sbp6+HTW^-0U!PEUVkn$Kb9LSE4Ryz3*5NJgIL+>@O1wQvMD!N(Y_&7gV%ZzQ zG&?<^0MCr5+0sKzmv)*|RNUbfS%R&&#~E(BwTe5r$N5f8*g$ekWD&sYvRjQmF?fBvtF&e5*9~S{Syd|| zJ=IL3DXLb8EY5;&Vl3aZv7N=|*+^1Zz(hV9T|`vL2q~N6iX)~(O>w}K6A?#_f7}A8 zWWWSf$ZoBe5*h85qC{vKjf>bQ?oz`MB*g&}Fj2XTm!Jq&8kez}tQ5iZEQDfciPZ

    + + CI Status + + + Documentation Status + + + Test coverage percentage + +