From 0571ed829233ad438442e500266e58dd06928886 Mon Sep 17 00:00:00 2001 From: Dan Waxman Date: Sun, 1 Mar 2026 22:38:18 -0500 Subject: [PATCH 1/5] Add PFJax; restrict Python version Needs to be this way until cd-dynamax allows for higher jax versions --- pyproject.toml | 5 +- uv.lock | 559 +++++-------------------------------------------- 2 files changed, 52 insertions(+), 512 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 486fb73e..2327778e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ name = "dynestyx" version = "0.1.0" description = "Add your description here" readme = "README.md" -requires-python = ">=3.12" +requires-python = ">=3.12,<3.14" dependencies = [ "cd-dynamax", "effectful", @@ -24,6 +24,7 @@ dependencies = [ "cuthbert>=0.0.2", "jax>=0.6.2", "jaxlib>=0.6.2", + "pfjax", ] [tool.hatch.build.targets.wheel] @@ -33,6 +34,7 @@ packages = ["dynestyx"] effectful = { git = "https://github.com/BasisResearch/effectful.git" } cuthbert = { git = "https://github.com/DanWaxman/cuthbert.git", rev = "dw-fix-install" } cd-dynamax = { git = "https://github.com/DanWaxman/cd_dynamax.git", rev = "dw-dpf" } +pfjax = { git = "https://github.com/DanWaxman/pfjax.git", rev = "dw-sg-dpf" } [dependency-groups] dev = [ @@ -45,6 +47,7 @@ dev = [ "mkdocs-jupyter>=0.25.1", "seaborn>=0.13.2", "imageio>=2.37.2", + "jax-tqdm>=0.4.0", ] [tool.ruff.lint] diff --git a/uv.lock b/uv.lock index a2d47e3d..43708394 100644 --- a/uv.lock +++ b/uv.lock @@ -1,13 +1,10 @@ version = 1 revision = 2 -requires-python = ">=3.12" +requires-python = ">=3.12, <3.14" resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'win32'", - "python_full_version >= '3.14' and sys_platform == 'emscripten'", - "python_full_version >= '3.14' and sys_platform != 'emscripten' and sys_platform != 'win32'", - "python_full_version == '3.13.*' and sys_platform == 'win32'", - "python_full_version == '3.13.*' and sys_platform == 'emscripten'", - "python_full_version == '3.13.*' and sys_platform != 'emscripten' and sys_platform != 'win32'", + "python_full_version >= '3.13' and sys_platform == 'win32'", + "python_full_version >= '3.13' and sys_platform == 'emscripten'", + "python_full_version >= '3.13' and sys_platform != 'emscripten' and sys_platform != 'win32'", "python_full_version < '3.13' and sys_platform == 'win32'", "python_full_version < '3.13' and sys_platform == 'emscripten'", "python_full_version < '3.13' and sys_platform != 'emscripten' and sys_platform != 'win32'", @@ -85,32 +82,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/07/7b/254cbfff260007bf107625568bd36ead430d19c688429c3565c885f37f3b/apsw-3.51.2.0-cp313-cp313-win32.whl", hash = "sha256:8fabd40376dcf6333007e0f9aef3fc2eddc802e68b2b90b47baf54ab503e52e4", size = 1620612, upload-time = "2026-01-10T16:46:38.839Z" }, { url = "https://files.pythonhosted.org/packages/dc/de/f6c33da2c11cf0a43e8349f34486ec9ba2b4921cfd33e5f04738dd49fb3a/apsw-3.51.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:088e45c3a2396518904c7eed3a7bb38a3737d1122760787dad0e4f3e6418cea5", size = 1812291, upload-time = "2026-01-10T16:46:40.846Z" }, { url = "https://files.pythonhosted.org/packages/a9/71/89cfdfa3a7bfae1108bc42f066321d6742fe0fc859af3a7002697d183489/apsw-3.51.2.0-cp313-cp313-win_arm64.whl", hash = "sha256:8b31574d7e3f6e0080fb4277c242d284557cf6f101520890b329ab8ea63926db", size = 1636589, upload-time = "2026-01-10T16:46:42.449Z" }, - { url = "https://files.pythonhosted.org/packages/0d/9d/ef858f35f3e170e1128fe5780610985c5381c7b265303a6c8fcd013ff46b/apsw-3.51.2.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:a060c36d3065585b311c4fa12cb0703ded076099f8dade198b6f2f489852900c", size = 1994321, upload-time = "2026-01-10T16:46:44.063Z" }, - { url = "https://files.pythonhosted.org/packages/53/fe/80396ae220cd11573ab5fafd0f5f73029aceb1e6d1cef89a83c63c69af76/apsw-3.51.2.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:398fef5fe75de0b7e02f05bae9e60936cf56ca52c0ca4d4b5cd5a3878033bf15", size = 1924150, upload-time = "2026-01-10T16:46:45.626Z" }, - { url = "https://files.pythonhosted.org/packages/70/6b/3e68eb59d13e787bdfce866e7831a96af443382468ea409d57a7f0940e7c/apsw-3.51.2.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:cf06e92c758e3cec44b33b6d36679fe77c821e0a5c1102532f7a67e3b8350fbf", size = 7307263, upload-time = "2026-01-10T16:46:47.787Z" }, - { url = "https://files.pythonhosted.org/packages/6c/ee/bab98974629f5ba59e38d34a3c083ccabede296d8c2f62e91210ad18f461/apsw-3.51.2.0-cp314-cp314-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:d083e41e20f16b8cb9dd786e1e2da28a9d88d3e26bf83c4d94820fb4ea9e9424", size = 6978380, upload-time = "2026-01-10T16:46:49.594Z" }, - { url = "https://files.pythonhosted.org/packages/57/6f/813cacd12eacd6b2f1e8c357cc44b1592538255476de8637e65474749742/apsw-3.51.2.0-cp314-cp314-manylinux_2_28_i686.whl", hash = "sha256:9caa13b10ffb1c0cbf6143472fe2b3d3f942f09b48a495f48f5002490c33448c", size = 7137598, upload-time = "2026-01-10T16:46:51.428Z" }, - { url = "https://files.pythonhosted.org/packages/db/35/023d9f5335e4c1ee1490dcf2435875bb1f9f10fb54c07495ce7ceda6e5cc/apsw-3.51.2.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:4f9a038fd671611afc7fdea5ef4a25fd527e9b06e46c3697db4a143ce7eea520", size = 7301998, upload-time = "2026-01-10T16:46:53.522Z" }, - { url = "https://files.pythonhosted.org/packages/fb/41/7f7a2f72f8ef03629d907139f2fc4b6bd538879cfaf6f56db138a88a1ffb/apsw-3.51.2.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:25bee4c57798427b7ea2658d937d47223e782f8be1c4d3e7ea56a855b8f53034", size = 7243518, upload-time = "2026-01-10T16:46:55.375Z" }, - { url = "https://files.pythonhosted.org/packages/7b/f9/b1379f6968e9ff2e51814fa10207ceb97da66ead56f00961ccb44905bdba/apsw-3.51.2.0-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:68a13947cf921bd299d2db7f67e6d6a9a7c649fe818f2ae0483a359ebe0f2f0b", size = 7121227, upload-time = "2026-01-10T16:46:57.183Z" }, - { url = "https://files.pythonhosted.org/packages/15/be/2b1d21bbcc800cfce22433a2936ff1fed232b802de32090596a63e136c46/apsw-3.51.2.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:f9ac6eaa6a1732e2ec7febd91d8265640af5957e9a521b07b9fa5c422df00850", size = 7198826, upload-time = "2026-01-10T16:46:58.983Z" }, - { url = "https://files.pythonhosted.org/packages/b1/d4/4a9a1ea671e588686e5cc357b94b1bd110a49938ef777f32f94cba8226d5/apsw-3.51.2.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b162b5cbb12c7c5bdb52702b97b9e6b689f3be4578ebaba55bbeac7b8f4d513f", size = 7284509, upload-time = "2026-01-10T16:47:00.937Z" }, - { url = "https://files.pythonhosted.org/packages/40/a1/9963fc7913d1d96d87f3f69b0a69d131aeaedddfa33c491bdbb473dfefb2/apsw-3.51.2.0-cp314-cp314-win32.whl", hash = "sha256:42263d3439348a6c6180ed4a08d186a8d43575f3c59f7c1707f61e3776cebe42", size = 1653873, upload-time = "2026-01-10T16:47:02.608Z" }, - { url = "https://files.pythonhosted.org/packages/61/ff/c85e5c000822cd333ed304adbb60947be7b7bf309f7aecb5d8b0dcbd3548/apsw-3.51.2.0-cp314-cp314-win_amd64.whl", hash = "sha256:65e67226c6165a569174e7355e00c2b7a79144a4ed72be26c8c4608a0a4f7668", size = 1856255, upload-time = "2026-01-10T16:47:04.154Z" }, - { url = "https://files.pythonhosted.org/packages/42/15/4d7b97063552e1a79a47c15c8956b594169053828269b675f457531a59d3/apsw-3.51.2.0-cp314-cp314-win_arm64.whl", hash = "sha256:e195c5799bf5730199507b3b8129575380c1a2c5965471edacd8aabba4cc0e98", size = 1676597, upload-time = "2026-01-10T16:47:05.918Z" }, - { url = "https://files.pythonhosted.org/packages/af/6b/ad76dd6085590004d23249ae2592fcd19c5d40c477e41df89a476a2a91fd/apsw-3.51.2.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:b6073d49be9216ac1704c5bb497db00ad6e7f11fd70303be180d242698511590", size = 2000215, upload-time = "2026-01-10T16:47:07.431Z" }, - { url = "https://files.pythonhosted.org/packages/46/27/2d00af9548d2ab87e38cf5cd48c3143260b94e6a487c452634eb72ce442d/apsw-3.51.2.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:918eff3b9152753f761b55b8adbecf07280c2a2f9f9a7c6245ccead16bda1d9e", size = 1931099, upload-time = "2026-01-10T16:47:08.937Z" }, - { url = "https://files.pythonhosted.org/packages/c8/34/c59a09d1442bc0caf1259b6cc9304cbf0f5a993d6f7b63197313c468a9fc/apsw-3.51.2.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:604282a709e60ed94bc421ae3bed823f0b727d70c7f0d6b41f293177da149312", size = 7304460, upload-time = "2026-01-10T16:47:10.586Z" }, - { url = "https://files.pythonhosted.org/packages/43/76/f9f4ee81828c3de952a7718cdab40f360dc24f285491785fc50563c8b47b/apsw-3.51.2.0-cp314-cp314t-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:0e8fa99233987c0d46ff155e505414a7e25ca7bd53a91db0b2db0043b75689cc", size = 6960346, upload-time = "2026-01-10T16:47:12.407Z" }, - { url = "https://files.pythonhosted.org/packages/6f/d2/8051f361cc5c7e83e67d21d07632804a65c2e12c47f16c2645c80a61e681/apsw-3.51.2.0-cp314-cp314t-manylinux_2_28_i686.whl", hash = "sha256:8a39dd4accf0522044c553ebef91347067f08f99a72a1c83017818c735035a08", size = 7113213, upload-time = "2026-01-10T16:47:14.23Z" }, - { url = "https://files.pythonhosted.org/packages/db/87/2cf7248307777d623dfe6b7ecf8240ef741673f023d4703f505f1c46f10c/apsw-3.51.2.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:9fdf89423fc9039cbe800765fec0e2598dd098e6ca0b7faa4b2314d50f158a4d", size = 7282208, upload-time = "2026-01-10T16:47:16.651Z" }, - { url = "https://files.pythonhosted.org/packages/62/08/4588e6f08456d9d7ca9fee712e8e6d42db4e37c367830cef6f7a8b586c11/apsw-3.51.2.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:f8b559e8981bdb44289ba90abb4c3dcf274930a1321c5d51aa1d53e307b30403", size = 7245681, upload-time = "2026-01-10T16:47:19.284Z" }, - { url = "https://files.pythonhosted.org/packages/4a/79/72f380919d4dd8b3be1005c6f371c2d135ab592d68fe0055cb7bdfa8f266/apsw-3.51.2.0-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:2a418cd6753be67ef34136be174be1d610b9f1e85676d5cfa2187715de0f65e5", size = 7087011, upload-time = "2026-01-10T16:47:21.55Z" }, - { url = "https://files.pythonhosted.org/packages/5f/76/29e3f2821a041493cfc8bde0e676ecf9ab6a6d0cf971d2686d4146087380/apsw-3.51.2.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:67075fa47e722e6d02edd9010fc1b94548eaefe65798498c062eb8f800152223", size = 7156649, upload-time = "2026-01-10T16:47:23.672Z" }, - { url = "https://files.pythonhosted.org/packages/e7/25/e32a7bb3218f6a9c95c2444b3b41be0a8490a7b6aaec0a2220ae4448b1a4/apsw-3.51.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:2b0618f1b06771331027ce0bf6be143f0d07690621e1a912a36884a1ea6bdea6", size = 7249634, upload-time = "2026-01-10T16:47:25.504Z" }, - { url = "https://files.pythonhosted.org/packages/60/af/4fd8ecb0403539331e80441fe013f0cf11d98114726799b2f97d405586ee/apsw-3.51.2.0-cp314-cp314t-win32.whl", hash = "sha256:bb5def09c9e8dc72f9d13fc370e3794fff76aca42309d63596437041ac88f679", size = 1666851, upload-time = "2026-01-10T16:47:27.133Z" }, - { url = "https://files.pythonhosted.org/packages/3a/40/fd019f0a57b402c8662bb6a3232c70cbe840ca6e53f441ded0b9b4b27040/apsw-3.51.2.0-cp314-cp314t-win_amd64.whl", hash = "sha256:50b4bff55f328ee905a6574ecb99d84817867d6865918cfdada5167001ff6432", size = 1872102, upload-time = "2026-01-10T16:47:28.714Z" }, - { url = "https://files.pythonhosted.org/packages/6c/29/dfb235254ae6c3d2fe14644d39567c6f33d5e9161f5db928e5fe081312f9/apsw-3.51.2.0-cp314-cp314t-win_arm64.whl", hash = "sha256:7009791d5103c028ba72c72751ec1894d8d2c1845ab433d4be61d75fa08c0279", size = 1681212, upload-time = "2026-01-10T16:47:30.64Z" }, ] [[package]] @@ -147,16 +118,6 @@ dependencies = [ ] sdist = { url = "https://files.pythonhosted.org/packages/5c/2d/db8af0df73c1cf454f71b2bbe5e356b8c1f8041c979f505b3d3186e520a9/argon2_cffi_bindings-25.1.0.tar.gz", hash = "sha256:b957f3e6ea4d55d820e40ff76f450952807013d361a65d7f28acc0acbf29229d", size = 1783441, upload-time = "2025-07-30T10:02:05.147Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/60/97/3c0a35f46e52108d4707c44b95cfe2afcafc50800b5450c197454569b776/argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:3d3f05610594151994ca9ccb3c771115bdb4daef161976a266f0dd8aa9996b8f", size = 54393, upload-time = "2025-07-30T10:01:40.97Z" }, - { url = "https://files.pythonhosted.org/packages/9d/f4/98bbd6ee89febd4f212696f13c03ca302b8552e7dbf9c8efa11ea4a388c3/argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:8b8efee945193e667a396cbc7b4fb7d357297d6234d30a489905d96caabde56b", size = 29328, upload-time = "2025-07-30T10:01:41.916Z" }, - { url = "https://files.pythonhosted.org/packages/43/24/90a01c0ef12ac91a6be05969f29944643bc1e5e461155ae6559befa8f00b/argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:3c6702abc36bf3ccba3f802b799505def420a1b7039862014a65db3205967f5a", size = 31269, upload-time = "2025-07-30T10:01:42.716Z" }, - { url = "https://files.pythonhosted.org/packages/d4/d3/942aa10782b2697eee7af5e12eeff5ebb325ccfb86dd8abda54174e377e4/argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a1c70058c6ab1e352304ac7e3b52554daadacd8d453c1752e547c76e9c99ac44", size = 86558, upload-time = "2025-07-30T10:01:43.943Z" }, - { url = "https://files.pythonhosted.org/packages/0d/82/b484f702fec5536e71836fc2dbc8c5267b3f6e78d2d539b4eaa6f0db8bf8/argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e2fd3bfbff3c5d74fef31a722f729bf93500910db650c925c2d6ef879a7e51cb", size = 92364, upload-time = "2025-07-30T10:01:44.887Z" }, - { url = "https://files.pythonhosted.org/packages/c9/c1/a606ff83b3f1735f3759ad0f2cd9e038a0ad11a3de3b6c673aa41c24bb7b/argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c4f9665de60b1b0e99bcd6be4f17d90339698ce954cfd8d9cf4f91c995165a92", size = 85637, upload-time = "2025-07-30T10:01:46.225Z" }, - { url = "https://files.pythonhosted.org/packages/44/b4/678503f12aceb0262f84fa201f6027ed77d71c5019ae03b399b97caa2f19/argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:ba92837e4a9aa6a508c8d2d7883ed5a8f6c308c89a4790e1e447a220deb79a85", size = 91934, upload-time = "2025-07-30T10:01:47.203Z" }, - { url = "https://files.pythonhosted.org/packages/f0/c7/f36bd08ef9bd9f0a9cff9428406651f5937ce27b6c5b07b92d41f91ae541/argon2_cffi_bindings-25.1.0-cp314-cp314t-win32.whl", hash = "sha256:84a461d4d84ae1295871329b346a97f68eade8c53b6ed9a7ca2d7467f3c8ff6f", size = 28158, upload-time = "2025-07-30T10:01:48.341Z" }, - { url = "https://files.pythonhosted.org/packages/b3/80/0106a7448abb24a2c467bf7d527fe5413b7fdfa4ad6d6a96a43a62ef3988/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6", size = 32597, upload-time = "2025-07-30T10:01:49.112Z" }, - { url = "https://files.pythonhosted.org/packages/05/b8/d663c9caea07e9180b2cb662772865230715cbd573ba3b5e81793d580316/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_arm64.whl", hash = "sha256:87c33a52407e4c41f3b70a9c2d3f6056d88b10dad7695be708c5021673f55623", size = 28231, upload-time = "2025-07-30T10:01:49.92Z" }, { url = "https://files.pythonhosted.org/packages/1d/57/96b8b9f93166147826da5f90376e784a10582dd39a393c99bb62cfcf52f0/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:aecba1723ae35330a008418a91ea6cfcedf6d31e5fbaa056a166462ff066d500", size = 54121, upload-time = "2025-07-30T10:01:50.815Z" }, { url = "https://files.pythonhosted.org/packages/0a/08/a9bebdb2e0e602dde230bdde8021b29f71f7841bd54801bcfd514acb5dcf/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:2630b6240b495dfab90aebe159ff784d08ea999aa4b0d17efa734055a07d2f44", size = 29177, upload-time = "2025-07-30T10:01:51.681Z" }, { url = "https://files.pythonhosted.org/packages/b6/02/d297943bcacf05e4f2a94ab6f462831dc20158614e5d067c35d4e63b9acb/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:7aef0c91e2c0fbca6fc68e7555aa60ef7008a739cbe045541e438373bc54d2b0", size = 31090, upload-time = "2025-07-30T10:01:53.184Z" }, @@ -251,7 +212,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/0f/f0/35240571e1b67ffb19dafb29ab34150b6f59f93f717b041082cdb1bfceb1/backrefs-6.2-py311-none-any.whl", hash = "sha256:08aa7fae530c6b2361d7bdcbda1a7c454e330cc9dbcd03f5c23205e430e5c3be", size = 392874, upload-time = "2026-02-16T19:10:06.314Z" }, { url = "https://files.pythonhosted.org/packages/e3/63/77e8c9745b4d227cce9f5e0a6f68041278c5f9b18588b35905f5f19c1beb/backrefs-6.2-py312-none-any.whl", hash = "sha256:c3f4b9cb2af8cda0d87ab4f57800b57b95428488477be164dd2b47be54db0c90", size = 398787, upload-time = "2026-02-16T19:10:08.274Z" }, { url = "https://files.pythonhosted.org/packages/c5/71/c754b1737ad99102e03fa3235acb6cb6d3ac9d6f596cbc3e5f236705abd8/backrefs-6.2-py313-none-any.whl", hash = "sha256:12df81596ab511f783b7d87c043ce26bc5b0288cf3bb03610fe76b8189282b2b", size = 400747, upload-time = "2026-02-16T19:10:09.791Z" }, - { url = "https://files.pythonhosted.org/packages/af/75/be12ba31a6eb20dccef2320cd8ccb3f7d9013b68ba4c70156259fee9e409/backrefs-6.2-py314-none-any.whl", hash = "sha256:e5f805ae09819caa1aa0623b4a83790e7028604aa2b8c73ba602c4454e665de7", size = 412602, upload-time = "2026-02-16T19:10:12.317Z" }, { url = "https://files.pythonhosted.org/packages/21/f8/d02f650c47d05034dcd6f9c8cf94f39598b7a89c00ecda0ecb2911bc27e9/backrefs-6.2-py39-none-any.whl", hash = "sha256:664e33cd88c6840b7625b826ecf2555f32d491800900f5a541f772c485f7cda7", size = 381077, upload-time = "2026-02-16T19:10:13.74Z" }, ] @@ -376,28 +336,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/eb/6d/bf9bda840d5f1dfdbf0feca87fbdb64a918a69bca42cfa0ba7b137c48cb8/cffi-2.0.0-cp313-cp313-win32.whl", hash = "sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27", size = 172909, upload-time = "2025-09-08T23:23:14.32Z" }, { url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75", size = 183402, upload-time = "2025-09-08T23:23:15.535Z" }, { url = "https://files.pythonhosted.org/packages/cb/0e/02ceeec9a7d6ee63bb596121c2c8e9b3a9e150936f4fbef6ca1943e6137c/cffi-2.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91", size = 177780, upload-time = "2025-09-08T23:23:16.761Z" }, - { url = "https://files.pythonhosted.org/packages/92/c4/3ce07396253a83250ee98564f8d7e9789fab8e58858f35d07a9a2c78de9f/cffi-2.0.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fc33c5141b55ed366cfaad382df24fe7dcbc686de5be719b207bb248e3053dc5", size = 185320, upload-time = "2025-09-08T23:23:18.087Z" }, - { url = "https://files.pythonhosted.org/packages/59/dd/27e9fa567a23931c838c6b02d0764611c62290062a6d4e8ff7863daf9730/cffi-2.0.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c654de545946e0db659b3400168c9ad31b5d29593291482c43e3564effbcee13", size = 181487, upload-time = "2025-09-08T23:23:19.622Z" }, - { url = "https://files.pythonhosted.org/packages/d6/43/0e822876f87ea8a4ef95442c3d766a06a51fc5298823f884ef87aaad168c/cffi-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b", size = 220049, upload-time = "2025-09-08T23:23:20.853Z" }, - { url = "https://files.pythonhosted.org/packages/b4/89/76799151d9c2d2d1ead63c2429da9ea9d7aac304603de0c6e8764e6e8e70/cffi-2.0.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c", size = 207793, upload-time = "2025-09-08T23:23:22.08Z" }, - { url = "https://files.pythonhosted.org/packages/bb/dd/3465b14bb9e24ee24cb88c9e3730f6de63111fffe513492bf8c808a3547e/cffi-2.0.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef", size = 206300, upload-time = "2025-09-08T23:23:23.314Z" }, - { url = "https://files.pythonhosted.org/packages/47/d9/d83e293854571c877a92da46fdec39158f8d7e68da75bf73581225d28e90/cffi-2.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775", size = 219244, upload-time = "2025-09-08T23:23:24.541Z" }, - { url = "https://files.pythonhosted.org/packages/2b/0f/1f177e3683aead2bb00f7679a16451d302c436b5cbf2505f0ea8146ef59e/cffi-2.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205", size = 222828, upload-time = "2025-09-08T23:23:26.143Z" }, - { url = "https://files.pythonhosted.org/packages/c6/0f/cafacebd4b040e3119dcb32fed8bdef8dfe94da653155f9d0b9dc660166e/cffi-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1", size = 220926, upload-time = "2025-09-08T23:23:27.873Z" }, - { url = "https://files.pythonhosted.org/packages/3e/aa/df335faa45b395396fcbc03de2dfcab242cd61a9900e914fe682a59170b1/cffi-2.0.0-cp314-cp314-win32.whl", hash = "sha256:087067fa8953339c723661eda6b54bc98c5625757ea62e95eb4898ad5e776e9f", size = 175328, upload-time = "2025-09-08T23:23:44.61Z" }, - { url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25", size = 185650, upload-time = "2025-09-08T23:23:45.848Z" }, - { url = "https://files.pythonhosted.org/packages/9f/2c/98ece204b9d35a7366b5b2c6539c350313ca13932143e79dc133ba757104/cffi-2.0.0-cp314-cp314-win_arm64.whl", hash = "sha256:dbd5c7a25a7cb98f5ca55d258b103a2054f859a46ae11aaf23134f9cc0d356ad", size = 180687, upload-time = "2025-09-08T23:23:47.105Z" }, - { url = "https://files.pythonhosted.org/packages/3e/61/c768e4d548bfa607abcda77423448df8c471f25dbe64fb2ef6d555eae006/cffi-2.0.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:9a67fc9e8eb39039280526379fb3a70023d77caec1852002b4da7e8b270c4dd9", size = 188773, upload-time = "2025-09-08T23:23:29.347Z" }, - { url = "https://files.pythonhosted.org/packages/2c/ea/5f76bce7cf6fcd0ab1a1058b5af899bfbef198bea4d5686da88471ea0336/cffi-2.0.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7a66c7204d8869299919db4d5069a82f1561581af12b11b3c9f48c584eb8743d", size = 185013, upload-time = "2025-09-08T23:23:30.63Z" }, - { url = "https://files.pythonhosted.org/packages/be/b4/c56878d0d1755cf9caa54ba71e5d049479c52f9e4afc230f06822162ab2f/cffi-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c", size = 221593, upload-time = "2025-09-08T23:23:31.91Z" }, - { url = "https://files.pythonhosted.org/packages/e0/0d/eb704606dfe8033e7128df5e90fee946bbcb64a04fcdaa97321309004000/cffi-2.0.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8", size = 209354, upload-time = "2025-09-08T23:23:33.214Z" }, - { url = "https://files.pythonhosted.org/packages/d8/19/3c435d727b368ca475fb8742ab97c9cb13a0de600ce86f62eab7fa3eea60/cffi-2.0.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc", size = 208480, upload-time = "2025-09-08T23:23:34.495Z" }, - { url = "https://files.pythonhosted.org/packages/d0/44/681604464ed9541673e486521497406fadcc15b5217c3e326b061696899a/cffi-2.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592", size = 221584, upload-time = "2025-09-08T23:23:36.096Z" }, - { url = "https://files.pythonhosted.org/packages/25/8e/342a504ff018a2825d395d44d63a767dd8ebc927ebda557fecdaca3ac33a/cffi-2.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512", size = 224443, upload-time = "2025-09-08T23:23:37.328Z" }, - { url = "https://files.pythonhosted.org/packages/e1/5e/b666bacbbc60fbf415ba9988324a132c9a7a0448a9a8f125074671c0f2c3/cffi-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4", size = 223437, upload-time = "2025-09-08T23:23:38.945Z" }, - { url = "https://files.pythonhosted.org/packages/a0/1d/ec1a60bd1a10daa292d3cd6bb0b359a81607154fb8165f3ec95fe003b85c/cffi-2.0.0-cp314-cp314t-win32.whl", hash = "sha256:1fc9ea04857caf665289b7a75923f2c6ed559b8298a1b8c49e59f7dd95c8481e", size = 180487, upload-time = "2025-09-08T23:23:40.423Z" }, - { url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6", size = 191726, upload-time = "2025-09-08T23:23:41.742Z" }, - { url = "https://files.pythonhosted.org/packages/ae/3a/dbeec9d1ee0844c679f6bb5d6ad4e9f198b1224f4e7a32825f47f6192b0c/cffi-2.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:0a1527a803f0a659de1af2e1fd700213caba79377e27e4693648c2923da066f9", size = 184195, upload-time = "2025-09-08T23:23:43.004Z" }, ] [[package]] @@ -438,22 +376,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/89/66/c7a9e1b7429be72123441bfdbaf2bc13faab3f90b933f664db506dea5915/charset_normalizer-3.4.4-cp313-cp313-win32.whl", hash = "sha256:9b35f4c90079ff2e2edc5b26c0c77925e5d2d255c42c74fdb70fb49b172726ac", size = 99404, upload-time = "2025-10-14T04:41:29.95Z" }, { url = "https://files.pythonhosted.org/packages/c4/26/b9924fa27db384bdcd97ab83b4f0a8058d96ad9626ead570674d5e737d90/charset_normalizer-3.4.4-cp313-cp313-win_amd64.whl", hash = "sha256:b435cba5f4f750aa6c0a0d92c541fb79f69a387c91e61f1795227e4ed9cece14", size = 107092, upload-time = "2025-10-14T04:41:31.188Z" }, { url = "https://files.pythonhosted.org/packages/af/8f/3ed4bfa0c0c72a7ca17f0380cd9e4dd842b09f664e780c13cff1dcf2ef1b/charset_normalizer-3.4.4-cp313-cp313-win_arm64.whl", hash = "sha256:542d2cee80be6f80247095cc36c418f7bddd14f4a6de45af91dfad36d817bba2", size = 100408, upload-time = "2025-10-14T04:41:32.624Z" }, - { url = "https://files.pythonhosted.org/packages/2a/35/7051599bd493e62411d6ede36fd5af83a38f37c4767b92884df7301db25d/charset_normalizer-3.4.4-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:da3326d9e65ef63a817ecbcc0df6e94463713b754fe293eaa03da99befb9a5bd", size = 207746, upload-time = "2025-10-14T04:41:33.773Z" }, - { url = "https://files.pythonhosted.org/packages/10/9a/97c8d48ef10d6cd4fcead2415523221624bf58bcf68a802721a6bc807c8f/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8af65f14dc14a79b924524b1e7fffe304517b2bff5a58bf64f30b98bbc5079eb", size = 147889, upload-time = "2025-10-14T04:41:34.897Z" }, - { url = "https://files.pythonhosted.org/packages/10/bf/979224a919a1b606c82bd2c5fa49b5c6d5727aa47b4312bb27b1734f53cd/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:74664978bb272435107de04e36db5a9735e78232b85b77d45cfb38f758efd33e", size = 143641, upload-time = "2025-10-14T04:41:36.116Z" }, - { url = "https://files.pythonhosted.org/packages/ba/33/0ad65587441fc730dc7bd90e9716b30b4702dc7b617e6ba4997dc8651495/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:752944c7ffbfdd10c074dc58ec2d5a8a4cd9493b314d367c14d24c17684ddd14", size = 160779, upload-time = "2025-10-14T04:41:37.229Z" }, - { url = "https://files.pythonhosted.org/packages/67/ed/331d6b249259ee71ddea93f6f2f0a56cfebd46938bde6fcc6f7b9a3d0e09/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d1f13550535ad8cff21b8d757a3257963e951d96e20ec82ab44bc64aeb62a191", size = 159035, upload-time = "2025-10-14T04:41:38.368Z" }, - { url = "https://files.pythonhosted.org/packages/67/ff/f6b948ca32e4f2a4576aa129d8bed61f2e0543bf9f5f2b7fc3758ed005c9/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ecaae4149d99b1c9e7b88bb03e3221956f68fd6d50be2ef061b2381b61d20838", size = 152542, upload-time = "2025-10-14T04:41:39.862Z" }, - { url = "https://files.pythonhosted.org/packages/16/85/276033dcbcc369eb176594de22728541a925b2632f9716428c851b149e83/charset_normalizer-3.4.4-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:cb6254dc36b47a990e59e1068afacdcd02958bdcce30bb50cc1700a8b9d624a6", size = 149524, upload-time = "2025-10-14T04:41:41.319Z" }, - { url = "https://files.pythonhosted.org/packages/9e/f2/6a2a1f722b6aba37050e626530a46a68f74e63683947a8acff92569f979a/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c8ae8a0f02f57a6e61203a31428fa1d677cbe50c93622b4149d5c0f319c1d19e", size = 150395, upload-time = "2025-10-14T04:41:42.539Z" }, - { url = "https://files.pythonhosted.org/packages/60/bb/2186cb2f2bbaea6338cad15ce23a67f9b0672929744381e28b0592676824/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:47cc91b2f4dd2833fddaedd2893006b0106129d4b94fdb6af1f4ce5a9965577c", size = 143680, upload-time = "2025-10-14T04:41:43.661Z" }, - { url = "https://files.pythonhosted.org/packages/7d/a5/bf6f13b772fbb2a90360eb620d52ed8f796f3c5caee8398c3b2eb7b1c60d/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:82004af6c302b5d3ab2cfc4cc5f29db16123b1a8417f2e25f9066f91d4411090", size = 162045, upload-time = "2025-10-14T04:41:44.821Z" }, - { url = "https://files.pythonhosted.org/packages/df/c5/d1be898bf0dc3ef9030c3825e5d3b83f2c528d207d246cbabe245966808d/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:2b7d8f6c26245217bd2ad053761201e9f9680f8ce52f0fcd8d0755aeae5b2152", size = 149687, upload-time = "2025-10-14T04:41:46.442Z" }, - { url = "https://files.pythonhosted.org/packages/a5/42/90c1f7b9341eef50c8a1cb3f098ac43b0508413f33affd762855f67a410e/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:799a7a5e4fb2d5898c60b640fd4981d6a25f1c11790935a44ce38c54e985f828", size = 160014, upload-time = "2025-10-14T04:41:47.631Z" }, - { url = "https://files.pythonhosted.org/packages/76/be/4d3ee471e8145d12795ab655ece37baed0929462a86e72372fd25859047c/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:99ae2cffebb06e6c22bdc25801d7b30f503cc87dbd283479e7b606f70aff57ec", size = 154044, upload-time = "2025-10-14T04:41:48.81Z" }, - { url = "https://files.pythonhosted.org/packages/b0/6f/8f7af07237c34a1defe7defc565a9bc1807762f672c0fde711a4b22bf9c0/charset_normalizer-3.4.4-cp314-cp314-win32.whl", hash = "sha256:f9d332f8c2a2fcbffe1378594431458ddbef721c1769d78e2cbc06280d8155f9", size = 99940, upload-time = "2025-10-14T04:41:49.946Z" }, - { url = "https://files.pythonhosted.org/packages/4b/51/8ade005e5ca5b0d80fb4aff72a3775b325bdc3d27408c8113811a7cbe640/charset_normalizer-3.4.4-cp314-cp314-win_amd64.whl", hash = "sha256:8a6562c3700cce886c5be75ade4a5db4214fda19fede41d9792d100288d8f94c", size = 107104, upload-time = "2025-10-14T04:41:51.051Z" }, - { url = "https://files.pythonhosted.org/packages/da/5f/6b8f83a55bb8278772c5ae54a577f3099025f9ade59d0136ac24a0df4bde/charset_normalizer-3.4.4-cp314-cp314-win_arm64.whl", hash = "sha256:de00632ca48df9daf77a2c65a484531649261ec9f25489917f09e455cb09ddb2", size = 100743, upload-time = "2025-10-14T04:41:52.122Z" }, { url = "https://files.pythonhosted.org/packages/0a/4c/925909008ed5a988ccbb72dcc897407e5d6d3bd72410d69e051fc0c14647/charset_normalizer-3.4.4-py3-none-any.whl", hash = "sha256:7a32c560861a02ff789ad905a2fe94e3f840803362c84fecf1851cb4cf3dc37f", size = 53402, upload-time = "2025-10-14T04:42:31.76Z" }, ] @@ -556,28 +478,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b9/70/f308384a3ae9cd2209e0849f33c913f658d3326900d0ff5d378d6a1422d2/contourpy-1.3.3-cp313-cp313t-win32.whl", hash = "sha256:283edd842a01e3dcd435b1c5116798d661378d83d36d337b8dde1d16a5fc9ba3", size = 196157, upload-time = "2025-07-26T12:02:11.488Z" }, { url = "https://files.pythonhosted.org/packages/b2/dd/880f890a6663b84d9e34a6f88cded89d78f0091e0045a284427cb6b18521/contourpy-1.3.3-cp313-cp313t-win_amd64.whl", hash = "sha256:87acf5963fc2b34825e5b6b048f40e3635dd547f590b04d2ab317c2619ef7ae8", size = 240570, upload-time = "2025-07-26T12:02:12.754Z" }, { url = "https://files.pythonhosted.org/packages/80/99/2adc7d8ffead633234817ef8e9a87115c8a11927a94478f6bb3d3f4d4f7d/contourpy-1.3.3-cp313-cp313t-win_arm64.whl", hash = "sha256:3c30273eb2a55024ff31ba7d052dde990d7d8e5450f4bbb6e913558b3d6c2301", size = 199713, upload-time = "2025-07-26T12:02:14.4Z" }, - { url = "https://files.pythonhosted.org/packages/72/8b/4546f3ab60f78c514ffb7d01a0bd743f90de36f0019d1be84d0a708a580a/contourpy-1.3.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fde6c716d51c04b1c25d0b90364d0be954624a0ee9d60e23e850e8d48353d07a", size = 292189, upload-time = "2025-07-26T12:02:16.095Z" }, - { url = "https://files.pythonhosted.org/packages/fd/e1/3542a9cb596cadd76fcef413f19c79216e002623158befe6daa03dbfa88c/contourpy-1.3.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:cbedb772ed74ff5be440fa8eee9bd49f64f6e3fc09436d9c7d8f1c287b121d77", size = 273251, upload-time = "2025-07-26T12:02:17.524Z" }, - { url = "https://files.pythonhosted.org/packages/b1/71/f93e1e9471d189f79d0ce2497007731c1e6bf9ef6d1d61b911430c3db4e5/contourpy-1.3.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:22e9b1bd7a9b1d652cd77388465dc358dafcd2e217d35552424aa4f996f524f5", size = 335810, upload-time = "2025-07-26T12:02:18.9Z" }, - { url = "https://files.pythonhosted.org/packages/91/f9/e35f4c1c93f9275d4e38681a80506b5510e9327350c51f8d4a5a724d178c/contourpy-1.3.3-cp314-cp314-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a22738912262aa3e254e4f3cb079a95a67132fc5a063890e224393596902f5a4", size = 382871, upload-time = "2025-07-26T12:02:20.418Z" }, - { url = "https://files.pythonhosted.org/packages/b5/71/47b512f936f66a0a900d81c396a7e60d73419868fba959c61efed7a8ab46/contourpy-1.3.3-cp314-cp314-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:afe5a512f31ee6bd7d0dda52ec9864c984ca3d66664444f2d72e0dc4eb832e36", size = 386264, upload-time = "2025-07-26T12:02:21.916Z" }, - { url = "https://files.pythonhosted.org/packages/04/5f/9ff93450ba96b09c7c2b3f81c94de31c89f92292f1380261bd7195bea4ea/contourpy-1.3.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f64836de09927cba6f79dcd00fdd7d5329f3fccc633468507079c829ca4db4e3", size = 363819, upload-time = "2025-07-26T12:02:23.759Z" }, - { url = "https://files.pythonhosted.org/packages/3e/a6/0b185d4cc480ee494945cde102cb0149ae830b5fa17bf855b95f2e70ad13/contourpy-1.3.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1fd43c3be4c8e5fd6e4f2baeae35ae18176cf2e5cced681cca908addf1cdd53b", size = 1333650, upload-time = "2025-07-26T12:02:26.181Z" }, - { url = "https://files.pythonhosted.org/packages/43/d7/afdc95580ca56f30fbcd3060250f66cedbde69b4547028863abd8aa3b47e/contourpy-1.3.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6afc576f7b33cf00996e5c1102dc2a8f7cc89e39c0b55df93a0b78c1bd992b36", size = 1404833, upload-time = "2025-07-26T12:02:28.782Z" }, - { url = "https://files.pythonhosted.org/packages/e2/e2/366af18a6d386f41132a48f033cbd2102e9b0cf6345d35ff0826cd984566/contourpy-1.3.3-cp314-cp314-win32.whl", hash = "sha256:66c8a43a4f7b8df8b71ee1840e4211a3c8d93b214b213f590e18a1beca458f7d", size = 189692, upload-time = "2025-07-26T12:02:30.128Z" }, - { url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl", hash = "sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd", size = 232424, upload-time = "2025-07-26T12:02:31.395Z" }, - { url = "https://files.pythonhosted.org/packages/18/79/a9416650df9b525737ab521aa181ccc42d56016d2123ddcb7b58e926a42c/contourpy-1.3.3-cp314-cp314-win_arm64.whl", hash = "sha256:95b181891b4c71de4bb404c6621e7e2390745f887f2a026b2d99e92c17892339", size = 198300, upload-time = "2025-07-26T12:02:32.956Z" }, - { url = "https://files.pythonhosted.org/packages/1f/42/38c159a7d0f2b7b9c04c64ab317042bb6952b713ba875c1681529a2932fe/contourpy-1.3.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:33c82d0138c0a062380332c861387650c82e4cf1747aaa6938b9b6516762e772", size = 306769, upload-time = "2025-07-26T12:02:34.2Z" }, - { url = "https://files.pythonhosted.org/packages/c3/6c/26a8205f24bca10974e77460de68d3d7c63e282e23782f1239f226fcae6f/contourpy-1.3.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:ea37e7b45949df430fe649e5de8351c423430046a2af20b1c1961cae3afcda77", size = 287892, upload-time = "2025-07-26T12:02:35.807Z" }, - { url = "https://files.pythonhosted.org/packages/66/06/8a475c8ab718ebfd7925661747dbb3c3ee9c82ac834ccb3570be49d129f4/contourpy-1.3.3-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d304906ecc71672e9c89e87c4675dc5c2645e1f4269a5063b99b0bb29f232d13", size = 326748, upload-time = "2025-07-26T12:02:37.193Z" }, - { url = "https://files.pythonhosted.org/packages/b4/a3/c5ca9f010a44c223f098fccd8b158bb1cb287378a31ac141f04730dc49be/contourpy-1.3.3-cp314-cp314t-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ca658cd1a680a5c9ea96dc61cdbae1e85c8f25849843aa799dfd3cb370ad4fbe", size = 375554, upload-time = "2025-07-26T12:02:38.894Z" }, - { url = "https://files.pythonhosted.org/packages/80/5b/68bd33ae63fac658a4145088c1e894405e07584a316738710b636c6d0333/contourpy-1.3.3-cp314-cp314t-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:ab2fd90904c503739a75b7c8c5c01160130ba67944a7b77bbf36ef8054576e7f", size = 388118, upload-time = "2025-07-26T12:02:40.642Z" }, - { url = "https://files.pythonhosted.org/packages/40/52/4c285a6435940ae25d7410a6c36bda5145839bc3f0beb20c707cda18b9d2/contourpy-1.3.3-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7301b89040075c30e5768810bc96a8e8d78085b47d8be6e4c3f5a0b4ed478a0", size = 352555, upload-time = "2025-07-26T12:02:42.25Z" }, - { url = "https://files.pythonhosted.org/packages/24/ee/3e81e1dd174f5c7fefe50e85d0892de05ca4e26ef1c9a59c2a57e43b865a/contourpy-1.3.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:2a2a8b627d5cc6b7c41a4beff6c5ad5eb848c88255fda4a8745f7e901b32d8e4", size = 1322295, upload-time = "2025-07-26T12:02:44.668Z" }, - { url = "https://files.pythonhosted.org/packages/3c/b2/6d913d4d04e14379de429057cd169e5e00f6c2af3bb13e1710bcbdb5da12/contourpy-1.3.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:fd6ec6be509c787f1caf6b247f0b1ca598bef13f4ddeaa126b7658215529ba0f", size = 1391027, upload-time = "2025-07-26T12:02:47.09Z" }, - { url = "https://files.pythonhosted.org/packages/93/8a/68a4ec5c55a2971213d29a9374913f7e9f18581945a7a31d1a39b5d2dfe5/contourpy-1.3.3-cp314-cp314t-win32.whl", hash = "sha256:e74a9a0f5e3fff48fb5a7f2fd2b9b70a3fe014a67522f79b7cca4c0c7e43c9ae", size = 202428, upload-time = "2025-07-26T12:02:48.691Z" }, - { url = "https://files.pythonhosted.org/packages/fa/96/fd9f641ffedc4fa3ace923af73b9d07e869496c9cc7a459103e6e978992f/contourpy-1.3.3-cp314-cp314t-win_amd64.whl", hash = "sha256:13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc", size = 250331, upload-time = "2025-07-26T12:02:50.137Z" }, - { url = "https://files.pythonhosted.org/packages/ae/8c/469afb6465b853afff216f9528ffda78a915ff880ed58813ba4faf4ba0b6/contourpy-1.3.3-cp314-cp314t-win_arm64.whl", hash = "sha256:b7448cb5a725bb1e35ce88771b86fba35ef418952474492cf7c764059933ff8b", size = 203831, upload-time = "2025-07-26T12:02:51.449Z" }, ] [[package]] @@ -612,10 +512,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/90/83/fb33dcea789ed6018f8da20c5a9bc9d82adc65c0c990faed43f7c955da46/debugpy-1.8.20-cp313-cp313-manylinux_2_34_x86_64.whl", hash = "sha256:84562982dd7cf5ebebfdea667ca20a064e096099997b175fe204e86817f64eaf", size = 4293272, upload-time = "2026-01-29T23:03:50.169Z" }, { url = "https://files.pythonhosted.org/packages/a6/25/b1e4a01bfb824d79a6af24b99ef291e24189080c93576dfd9b1a2815cd0f/debugpy-1.8.20-cp313-cp313-win32.whl", hash = "sha256:da11dea6447b2cadbf8ce2bec59ecea87cc18d2c574980f643f2d2dfe4862393", size = 5331208, upload-time = "2026-01-29T23:03:51.547Z" }, { url = "https://files.pythonhosted.org/packages/13/f7/a0b368ce54ffff9e9028c098bd2d28cfc5b54f9f6c186929083d4c60ba58/debugpy-1.8.20-cp313-cp313-win_amd64.whl", hash = "sha256:eb506e45943cab2efb7c6eafdd65b842f3ae779f020c82221f55aca9de135ed7", size = 5372930, upload-time = "2026-01-29T23:03:53.585Z" }, - { url = "https://files.pythonhosted.org/packages/33/2e/f6cb9a8a13f5058f0a20fe09711a7b726232cd5a78c6a7c05b2ec726cff9/debugpy-1.8.20-cp314-cp314-macosx_15_0_universal2.whl", hash = "sha256:9c74df62fc064cd5e5eaca1353a3ef5a5d50da5eb8058fcef63106f7bebe6173", size = 2538066, upload-time = "2026-01-29T23:03:54.999Z" }, - { url = "https://files.pythonhosted.org/packages/c5/56/6ddca50b53624e1ca3ce1d1e49ff22db46c47ea5fb4c0cc5c9b90a616364/debugpy-1.8.20-cp314-cp314-manylinux_2_34_x86_64.whl", hash = "sha256:077a7447589ee9bc1ff0cdf443566d0ecf540ac8aa7333b775ebcb8ce9f4ecad", size = 4269425, upload-time = "2026-01-29T23:03:56.518Z" }, - { url = "https://files.pythonhosted.org/packages/c5/d9/d64199c14a0d4c476df46c82470a3ce45c8d183a6796cfb5e66533b3663c/debugpy-1.8.20-cp314-cp314-win32.whl", hash = "sha256:352036a99dd35053b37b7803f748efc456076f929c6a895556932eaf2d23b07f", size = 5331407, upload-time = "2026-01-29T23:03:58.481Z" }, - { url = "https://files.pythonhosted.org/packages/e0/d9/1f07395b54413432624d61524dfd98c1a7c7827d2abfdb8829ac92638205/debugpy-1.8.20-cp314-cp314-win_amd64.whl", hash = "sha256:a98eec61135465b062846112e5ecf2eebb855305acc1dfbae43b72903b8ab5be", size = 5372521, upload-time = "2026-01-29T23:03:59.864Z" }, { url = "https://files.pythonhosted.org/packages/e0/c3/7f67dea8ccf8fdcb9c99033bbe3e90b9e7395415843accb81428c441be2d/debugpy-1.8.20-py2.py3-none-any.whl", hash = "sha256:5be9bed9ae3be00665a06acaa48f8329d2b9632f15fd09f6a9a8c8d9907e54d7", size = 5337658, upload-time = "2026-01-29T23:04:17.404Z" }, ] @@ -716,6 +612,7 @@ dependencies = [ { name = "matplotlib" }, { name = "mkdocstrings", extra = ["python"] }, { name = "numpyro" }, + { name = "pfjax" }, { name = "pytest" }, { name = "pytkdocs-tweaks" }, ] @@ -723,6 +620,7 @@ dependencies = [ [package.dev-dependencies] dev = [ { name = "imageio" }, + { name = "jax-tqdm" }, { name = "mkdocs" }, { name = "mkdocs-jupyter" }, { name = "mkdocs-material" }, @@ -748,6 +646,7 @@ requires-dist = [ { name = "matplotlib", specifier = ">=3.10.7" }, { name = "mkdocstrings", extras = ["python"], specifier = ">=1.0.1" }, { name = "numpyro", specifier = ">=0.19.0" }, + { name = "pfjax", git = "https://github.com/DanWaxman/pfjax.git?rev=dw-sg-dpf" }, { name = "pytest", specifier = ">=9.0.1" }, { name = "pytkdocs-tweaks", specifier = ">=0.0.8" }, ] @@ -755,6 +654,7 @@ requires-dist = [ [package.metadata.requires-dev] dev = [ { name = "imageio", specifier = ">=2.37.2" }, + { name = "jax-tqdm", specifier = ">=0.4.0" }, { name = "mkdocs", specifier = ">=1.6.1" }, { name = "mkdocs-jupyter", specifier = ">=0.25.1" }, { name = "mkdocs-material", specifier = ">=9.7.1" }, @@ -910,22 +810,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a7/01/e6ae64a0981076e8a66906fab01539799546181e32a37a0257b77e4aa88b/fonttools-4.61.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:b501c862d4901792adaec7c25b1ecc749e2662543f68bb194c42ba18d6eec98d", size = 5067859, upload-time = "2025-12-12T17:30:36.593Z" }, { url = "https://files.pythonhosted.org/packages/73/aa/28e40b8d6809a9b5075350a86779163f074d2b617c15d22343fce81918db/fonttools-4.61.1-cp313-cp313-win32.whl", hash = "sha256:4d7092bb38c53bbc78e9255a59158b150bcdc115a1e3b3ce0b5f267dc35dd63c", size = 2267821, upload-time = "2025-12-12T17:30:38.478Z" }, { url = "https://files.pythonhosted.org/packages/1a/59/453c06d1d83dc0951b69ef692d6b9f1846680342927df54e9a1ca91c6f90/fonttools-4.61.1-cp313-cp313-win_amd64.whl", hash = "sha256:21e7c8d76f62ab13c9472ccf74515ca5b9a761d1bde3265152a6dc58700d895b", size = 2318169, upload-time = "2025-12-12T17:30:40.951Z" }, - { url = "https://files.pythonhosted.org/packages/32/8f/4e7bf82c0cbb738d3c2206c920ca34ca74ef9dabde779030145d28665104/fonttools-4.61.1-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:fff4f534200a04b4a36e7ae3cb74493afe807b517a09e99cb4faa89a34ed6ecd", size = 2846094, upload-time = "2025-12-12T17:30:43.511Z" }, - { url = "https://files.pythonhosted.org/packages/71/09/d44e45d0a4f3a651f23a1e9d42de43bc643cce2971b19e784cc67d823676/fonttools-4.61.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:d9203500f7c63545b4ce3799319fe4d9feb1a1b89b28d3cb5abd11b9dd64147e", size = 2396589, upload-time = "2025-12-12T17:30:45.681Z" }, - { url = "https://files.pythonhosted.org/packages/89/18/58c64cafcf8eb677a99ef593121f719e6dcbdb7d1c594ae5a10d4997ca8a/fonttools-4.61.1-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:fa646ecec9528bef693415c79a86e733c70a4965dd938e9a226b0fc64c9d2e6c", size = 4877892, upload-time = "2025-12-12T17:30:47.709Z" }, - { url = "https://files.pythonhosted.org/packages/8a/ec/9e6b38c7ba1e09eb51db849d5450f4c05b7e78481f662c3b79dbde6f3d04/fonttools-4.61.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:11f35ad7805edba3aac1a3710d104592df59f4b957e30108ae0ba6c10b11dd75", size = 4972884, upload-time = "2025-12-12T17:30:49.656Z" }, - { url = "https://files.pythonhosted.org/packages/5e/87/b5339da8e0256734ba0dbbf5b6cdebb1dd79b01dc8c270989b7bcd465541/fonttools-4.61.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:b931ae8f62db78861b0ff1ac017851764602288575d65b8e8ff1963fed419063", size = 4924405, upload-time = "2025-12-12T17:30:51.735Z" }, - { url = "https://files.pythonhosted.org/packages/0b/47/e3409f1e1e69c073a3a6fd8cb886eb18c0bae0ee13db2c8d5e7f8495e8b7/fonttools-4.61.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b148b56f5de675ee16d45e769e69f87623a4944f7443850bf9a9376e628a89d2", size = 5035553, upload-time = "2025-12-12T17:30:54.823Z" }, - { url = "https://files.pythonhosted.org/packages/bf/b6/1f6600161b1073a984294c6c031e1a56ebf95b6164249eecf30012bb2e38/fonttools-4.61.1-cp314-cp314-win32.whl", hash = "sha256:9b666a475a65f4e839d3d10473fad6d47e0a9db14a2f4a224029c5bfde58ad2c", size = 2271915, upload-time = "2025-12-12T17:30:57.913Z" }, - { url = "https://files.pythonhosted.org/packages/52/7b/91e7b01e37cc8eb0e1f770d08305b3655e4f002fc160fb82b3390eabacf5/fonttools-4.61.1-cp314-cp314-win_amd64.whl", hash = "sha256:4f5686e1fe5fce75d82d93c47a438a25bf0d1319d2843a926f741140b2b16e0c", size = 2323487, upload-time = "2025-12-12T17:30:59.804Z" }, - { url = "https://files.pythonhosted.org/packages/39/5c/908ad78e46c61c3e3ed70c3b58ff82ab48437faf84ec84f109592cabbd9f/fonttools-4.61.1-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:e76ce097e3c57c4bcb67c5aa24a0ecdbd9f74ea9219997a707a4061fbe2707aa", size = 2929571, upload-time = "2025-12-12T17:31:02.574Z" }, - { url = "https://files.pythonhosted.org/packages/bd/41/975804132c6dea64cdbfbaa59f3518a21c137a10cccf962805b301ac6ab2/fonttools-4.61.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:9cfef3ab326780c04d6646f68d4b4742aae222e8b8ea1d627c74e38afcbc9d91", size = 2435317, upload-time = "2025-12-12T17:31:04.974Z" }, - { url = "https://files.pythonhosted.org/packages/b0/5a/aef2a0a8daf1ebaae4cfd83f84186d4a72ee08fd6a8451289fcd03ffa8a4/fonttools-4.61.1-cp314-cp314t-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:a75c301f96db737e1c5ed5fd7d77d9c34466de16095a266509e13da09751bd19", size = 4882124, upload-time = "2025-12-12T17:31:07.456Z" }, - { url = "https://files.pythonhosted.org/packages/80/33/d6db3485b645b81cea538c9d1c9219d5805f0877fda18777add4671c5240/fonttools-4.61.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:91669ccac46bbc1d09e9273546181919064e8df73488ea087dcac3e2968df9ba", size = 5100391, upload-time = "2025-12-12T17:31:09.732Z" }, - { url = "https://files.pythonhosted.org/packages/6c/d6/675ba631454043c75fcf76f0ca5463eac8eb0666ea1d7badae5fea001155/fonttools-4.61.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c33ab3ca9d3ccd581d58e989d67554e42d8d4ded94ab3ade3508455fe70e65f7", size = 4978800, upload-time = "2025-12-12T17:31:11.681Z" }, - { url = "https://files.pythonhosted.org/packages/7f/33/d3ec753d547a8d2bdaedd390d4a814e8d5b45a093d558f025c6b990b554c/fonttools-4.61.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:664c5a68ec406f6b1547946683008576ef8b38275608e1cee6c061828171c118", size = 5006426, upload-time = "2025-12-12T17:31:13.764Z" }, - { url = "https://files.pythonhosted.org/packages/b4/40/cc11f378b561a67bea850ab50063366a0d1dd3f6d0a30ce0f874b0ad5664/fonttools-4.61.1-cp314-cp314t-win32.whl", hash = "sha256:aed04cabe26f30c1647ef0e8fbb207516fd40fe9472e9439695f5c6998e60ac5", size = 2335377, upload-time = "2025-12-12T17:31:16.49Z" }, - { url = "https://files.pythonhosted.org/packages/e4/ff/c9a2b66b39f8628531ea58b320d66d951267c98c6a38684daa8f50fb02f8/fonttools-4.61.1-cp314-cp314t-win_amd64.whl", hash = "sha256:2180f14c141d2f0f3da43f3a81bc8aa4684860f6b0e6f9e165a4831f24e6a23b", size = 2400613, upload-time = "2025-12-12T17:31:18.769Z" }, { url = "https://files.pythonhosted.org/packages/c7/4e/ce75a57ff3aebf6fc1f4e9d508b8e5810618a33d900ad6c19eb30b290b97/fonttools-4.61.1-py3-none-any.whl", hash = "sha256:17d2bf5d541add43822bcf0c43d7d847b160c9bb01d15d5007d84e2217aaa371", size = 1148996, upload-time = "2025-12-12T17:31:21.03Z" }, ] @@ -1056,14 +940,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/18/88/3eda3ef16bfe7a7dbc3d8d6836bbaa7986feb5ff091395e140dc13927bcc/h5py-3.15.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e02fe77a03f652500d8bff288cbf3675f742fc0411f5a628fa37116507dc7cc0", size = 5030639, upload-time = "2025-10-16T10:34:55.257Z" }, { url = "https://files.pythonhosted.org/packages/e5/ea/fbb258a98863f99befb10ed727152b4ae659f322e1d9c0576f8a62754e81/h5py-3.15.1-cp313-cp313-win_amd64.whl", hash = "sha256:dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52", size = 2864363, upload-time = "2025-10-16T10:34:58.099Z" }, { url = "https://files.pythonhosted.org/packages/5d/c9/35021cc9cd2b2915a7da3026e3d77a05bed1144a414ff840953b33937fb9/h5py-3.15.1-cp313-cp313-win_arm64.whl", hash = "sha256:c256254a8a81e2bddc0d376e23e2a6d2dc8a1e8a2261835ed8c1281a0744cd97", size = 2449570, upload-time = "2025-10-16T10:35:00.473Z" }, - { url = "https://files.pythonhosted.org/packages/a0/2c/926eba1514e4d2e47d0e9eb16c784e717d8b066398ccfca9b283917b1bfb/h5py-3.15.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:5f4fb0567eb8517c3ecd6b3c02c4f4e9da220c8932604960fd04e24ee1254763", size = 3380368, upload-time = "2025-10-16T10:35:03.117Z" }, - { url = "https://files.pythonhosted.org/packages/65/4b/d715ed454d3baa5f6ae1d30b7eca4c7a1c1084f6a2edead9e801a1541d62/h5py-3.15.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:954e480433e82d3872503104f9b285d369048c3a788b2b1a00e53d1c47c98dd2", size = 2833793, upload-time = "2025-10-16T10:35:05.623Z" }, - { url = "https://files.pythonhosted.org/packages/ef/d4/ef386c28e4579314610a8bffebbee3b69295b0237bc967340b7c653c6c10/h5py-3.15.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fd125c131889ebbef0849f4a0e29cf363b48aba42f228d08b4079913b576bb3a", size = 4903199, upload-time = "2025-10-16T10:35:08.972Z" }, - { url = "https://files.pythonhosted.org/packages/33/5d/65c619e195e0b5e54ea5a95c1bb600c8ff8715e0d09676e4cce56d89f492/h5py-3.15.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:28a20e1a4082a479b3d7db2169f3a5034af010b90842e75ebbf2e9e49eb4183e", size = 5097224, upload-time = "2025-10-16T10:35:12.808Z" }, - { url = "https://files.pythonhosted.org/packages/30/30/5273218400bf2da01609e1292f562c94b461fcb73c7a9e27fdadd43abc0a/h5py-3.15.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:fa8df5267f545b4946df8ca0d93d23382191018e4cda2deda4c2cedf9a010e13", size = 4551207, upload-time = "2025-10-16T10:35:16.24Z" }, - { url = "https://files.pythonhosted.org/packages/d3/39/a7ef948ddf4d1c556b0b2b9559534777bccc318543b3f5a1efdf6b556c9c/h5py-3.15.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:99d374a21f7321a4c6ab327c4ab23bd925ad69821aeb53a1e75dd809d19f67fa", size = 5025426, upload-time = "2025-10-16T10:35:19.831Z" }, - { url = "https://files.pythonhosted.org/packages/b6/d8/7368679b8df6925b8415f9dcc9ab1dab01ddc384d2b2c24aac9191bd9ceb/h5py-3.15.1-cp314-cp314-win_amd64.whl", hash = "sha256:9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734", size = 2865704, upload-time = "2025-10-16T10:35:22.658Z" }, - { url = "https://files.pythonhosted.org/packages/d3/b7/4a806f85d62c20157e62e58e03b27513dc9c55499768530acc4f4c5ce4be/h5py-3.15.1-cp314-cp314-win_arm64.whl", hash = "sha256:a6d8c5a05a76aca9a494b4c53ce8a9c29023b7f64f625c6ce1841e92a362ccdf", size = 2465544, upload-time = "2025-10-16T10:35:25.695Z" }, ] [[package]] @@ -1099,13 +975,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/32/4d/9dd616c38da088e3f436e9a616e1d0cc66544b8cdac405cc4e81c8679fc7/httptools-0.7.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:44c8f4347d4b31269c8a9205d8a5ee2df5322b09bbbd30f8f862185bb6b05346", size = 455517, upload-time = "2025-10-10T03:54:51.066Z" }, { url = "https://files.pythonhosted.org/packages/1d/3a/a6c595c310b7df958e739aae88724e24f9246a514d909547778d776799be/httptools-0.7.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:465275d76db4d554918aba40bf1cbebe324670f3dfc979eaffaa5d108e2ed650", size = 458337, upload-time = "2025-10-10T03:54:52.196Z" }, { url = "https://files.pythonhosted.org/packages/fd/82/88e8d6d2c51edc1cc391b6e044c6c435b6aebe97b1abc33db1b0b24cd582/httptools-0.7.1-cp313-cp313-win_amd64.whl", hash = "sha256:322d00c2068d125bd570f7bf78b2d367dad02b919d8581d7476d8b75b294e3e6", size = 85743, upload-time = "2025-10-10T03:54:53.448Z" }, - { url = "https://files.pythonhosted.org/packages/34/50/9d095fcbb6de2d523e027a2f304d4551855c2f46e0b82befd718b8b20056/httptools-0.7.1-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:c08fe65728b8d70b6923ce31e3956f859d5e1e8548e6f22ec520a962c6757270", size = 203619, upload-time = "2025-10-10T03:54:54.321Z" }, - { url = "https://files.pythonhosted.org/packages/07/f0/89720dc5139ae54b03f861b5e2c55a37dba9a5da7d51e1e824a1f343627f/httptools-0.7.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:7aea2e3c3953521c3c51106ee11487a910d45586e351202474d45472db7d72d3", size = 108714, upload-time = "2025-10-10T03:54:55.163Z" }, - { url = "https://files.pythonhosted.org/packages/b3/cb/eea88506f191fb552c11787c23f9a405f4c7b0c5799bf73f2249cd4f5228/httptools-0.7.1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:0e68b8582f4ea9166be62926077a3334064d422cf08ab87d8b74664f8e9058e1", size = 472909, upload-time = "2025-10-10T03:54:56.056Z" }, - { url = "https://files.pythonhosted.org/packages/e0/4a/a548bdfae6369c0d078bab5769f7b66f17f1bfaa6fa28f81d6be6959066b/httptools-0.7.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:df091cf961a3be783d6aebae963cc9b71e00d57fa6f149025075217bc6a55a7b", size = 470831, upload-time = "2025-10-10T03:54:57.219Z" }, - { url = "https://files.pythonhosted.org/packages/4d/31/14df99e1c43bd132eec921c2e7e11cda7852f65619bc0fc5bdc2d0cb126c/httptools-0.7.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:f084813239e1eb403ddacd06a30de3d3e09a9b76e7894dcda2b22f8a726e9c60", size = 452631, upload-time = "2025-10-10T03:54:58.219Z" }, - { url = "https://files.pythonhosted.org/packages/22/d2/b7e131f7be8d854d48cb6d048113c30f9a46dca0c9a8b08fcb3fcd588cdc/httptools-0.7.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:7347714368fb2b335e9063bc2b96f2f87a9ceffcd9758ac295f8bbcd3ffbc0ca", size = 452910, upload-time = "2025-10-10T03:54:59.366Z" }, - { url = "https://files.pythonhosted.org/packages/53/cf/878f3b91e4e6e011eff6d1fa9ca39f7eb17d19c9d7971b04873734112f30/httptools-0.7.1-cp314-cp314-win_amd64.whl", hash = "sha256:cfabda2a5bb85aa2a904ce06d974a3f30fb36cc63d7feaddec05d2050acede96", size = 88205, upload-time = "2025-10-10T03:55:00.389Z" }, ] [[package]] @@ -1282,6 +1151,20 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/31/a8/97ef0cbb7a17143ace2643d600a7b80d6705b2266fc31078229e406bdef2/jax-0.6.2-py3-none-any.whl", hash = "sha256:bb24a82dc60ccf704dcaf6dbd07d04957f68a6c686db19630dd75260d1fb788c", size = 2722396, upload-time = "2025-06-17T23:10:25.293Z" }, ] +[[package]] +name = "jax-tqdm" +version = "0.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "chex" }, + { name = "jax" }, + { name = "tqdm" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/d9/dd/b132ae4a7e22604c2738dff805d151fd81f6a3e77fab36c8dcbd43003f9e/jax_tqdm-0.4.0.tar.gz", hash = "sha256:d76a7ab07286ed8024fa019add2668b4d1d6ddf3bcaa166f2e1466d9e51b99a0", size = 5589, upload-time = "2025-05-09T22:28:38.994Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1d/2d/a94edc83d0012a5968abe1a16a6dc402100a76323fb30e229afe0f75bfe3/jax_tqdm-0.4.0-py3-none-any.whl", hash = "sha256:973d81946ea22d2cad30f2a0434c072b7471ecc23baea2c42ec65e0b2bc2f41f", size = 7175, upload-time = "2025-05-09T22:28:37.957Z" }, +] + [[package]] name = "jaxlib" version = "0.6.2" @@ -1680,32 +1563,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/99/43/7320c50e4133575c66e9f7dadead35ab22d7c012a3b09bb35647792b2a6d/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:0ab74e19f6a2b027ea4f845a78827969af45ce790e6cb3e1ebab71bdf9f215ff", size = 2594639, upload-time = "2025-08-10T21:26:57.882Z" }, { url = "https://files.pythonhosted.org/packages/65/d6/17ae4a270d4a987ef8a385b906d2bdfc9fce502d6dc0d3aea865b47f548c/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dba5ee5d3981160c28d5490f0d1b7ed730c22470ff7f6cc26cfcfaacb9896a07", size = 2391741, upload-time = "2025-08-10T21:26:59.237Z" }, { url = "https://files.pythonhosted.org/packages/2a/8f/8f6f491d595a9e5912971f3f863d81baddccc8a4d0c3749d6a0dd9ffc9df/kiwisolver-1.4.9-cp313-cp313t-win_arm64.whl", hash = "sha256:0749fd8f4218ad2e851e11cc4dc05c7cbc0cbc4267bdfdb31782e65aace4ee9c", size = 68646, upload-time = "2025-08-10T21:27:00.52Z" }, - { url = "https://files.pythonhosted.org/packages/6b/32/6cc0fbc9c54d06c2969faa9c1d29f5751a2e51809dd55c69055e62d9b426/kiwisolver-1.4.9-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:9928fe1eb816d11ae170885a74d074f57af3a0d65777ca47e9aeb854a1fba386", size = 123806, upload-time = "2025-08-10T21:27:01.537Z" }, - { url = "https://files.pythonhosted.org/packages/b2/dd/2bfb1d4a4823d92e8cbb420fe024b8d2167f72079b3bb941207c42570bdf/kiwisolver-1.4.9-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:d0005b053977e7b43388ddec89fa567f43d4f6d5c2c0affe57de5ebf290dc552", size = 66605, upload-time = "2025-08-10T21:27:03.335Z" }, - { url = "https://files.pythonhosted.org/packages/f7/69/00aafdb4e4509c2ca6064646cba9cd4b37933898f426756adb2cb92ebbed/kiwisolver-1.4.9-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:2635d352d67458b66fd0667c14cb1d4145e9560d503219034a18a87e971ce4f3", size = 64925, upload-time = "2025-08-10T21:27:04.339Z" }, - { url = "https://files.pythonhosted.org/packages/43/dc/51acc6791aa14e5cb6d8a2e28cefb0dc2886d8862795449d021334c0df20/kiwisolver-1.4.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:767c23ad1c58c9e827b649a9ab7809fd5fd9db266a9cf02b0e926ddc2c680d58", size = 1472414, upload-time = "2025-08-10T21:27:05.437Z" }, - { url = "https://files.pythonhosted.org/packages/3d/bb/93fa64a81db304ac8a246f834d5094fae4b13baf53c839d6bb6e81177129/kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:72d0eb9fba308b8311685c2268cf7d0a0639a6cd027d8128659f72bdd8a024b4", size = 1281272, upload-time = "2025-08-10T21:27:07.063Z" }, - { url = "https://files.pythonhosted.org/packages/70/e6/6df102916960fb8d05069d4bd92d6d9a8202d5a3e2444494e7cd50f65b7a/kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f68e4f3eeca8fb22cc3d731f9715a13b652795ef657a13df1ad0c7dc0e9731df", size = 1298578, upload-time = "2025-08-10T21:27:08.452Z" }, - { url = "https://files.pythonhosted.org/packages/7c/47/e142aaa612f5343736b087864dbaebc53ea8831453fb47e7521fa8658f30/kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d84cd4061ae292d8ac367b2c3fa3aad11cb8625a95d135fe93f286f914f3f5a6", size = 1345607, upload-time = "2025-08-10T21:27:10.125Z" }, - { url = "https://files.pythonhosted.org/packages/54/89/d641a746194a0f4d1a3670fb900d0dbaa786fb98341056814bc3f058fa52/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:a60ea74330b91bd22a29638940d115df9dc00af5035a9a2a6ad9399ffb4ceca5", size = 2230150, upload-time = "2025-08-10T21:27:11.484Z" }, - { url = "https://files.pythonhosted.org/packages/aa/6b/5ee1207198febdf16ac11f78c5ae40861b809cbe0e6d2a8d5b0b3044b199/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:ce6a3a4e106cf35c2d9c4fa17c05ce0b180db622736845d4315519397a77beaf", size = 2325979, upload-time = "2025-08-10T21:27:12.917Z" }, - { url = "https://files.pythonhosted.org/packages/fc/ff/b269eefd90f4ae14dcc74973d5a0f6d28d3b9bb1afd8c0340513afe6b39a/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:77937e5e2a38a7b48eef0585114fe7930346993a88060d0bf886086d2aa49ef5", size = 2491456, upload-time = "2025-08-10T21:27:14.353Z" }, - { url = "https://files.pythonhosted.org/packages/fc/d4/10303190bd4d30de547534601e259a4fbf014eed94aae3e5521129215086/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:24c175051354f4a28c5d6a31c93906dc653e2bf234e8a4bbfb964892078898ce", size = 2294621, upload-time = "2025-08-10T21:27:15.808Z" }, - { url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl", hash = "sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7", size = 75417, upload-time = "2025-08-10T21:27:17.436Z" }, - { url = "https://files.pythonhosted.org/packages/1f/10/6949958215b7a9a264299a7db195564e87900f709db9245e4ebdd3c70779/kiwisolver-1.4.9-cp314-cp314-win_arm64.whl", hash = "sha256:0e4e2bf29574a6a7b7f6cb5fa69293b9f96c928949ac4a53ba3f525dffb87f9c", size = 66582, upload-time = "2025-08-10T21:27:18.436Z" }, - { url = "https://files.pythonhosted.org/packages/ec/79/60e53067903d3bc5469b369fe0dfc6b3482e2133e85dae9daa9527535991/kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:d976bbb382b202f71c67f77b0ac11244021cfa3f7dfd9e562eefcea2df711548", size = 126514, upload-time = "2025-08-10T21:27:19.465Z" }, - { url = "https://files.pythonhosted.org/packages/25/d1/4843d3e8d46b072c12a38c97c57fab4608d36e13fe47d47ee96b4d61ba6f/kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2489e4e5d7ef9a1c300a5e0196e43d9c739f066ef23270607d45aba368b91f2d", size = 67905, upload-time = "2025-08-10T21:27:20.51Z" }, - { url = "https://files.pythonhosted.org/packages/8c/ae/29ffcbd239aea8b93108de1278271ae764dfc0d803a5693914975f200596/kiwisolver-1.4.9-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:e2ea9f7ab7fbf18fffb1b5434ce7c69a07582f7acc7717720f1d69f3e806f90c", size = 66399, upload-time = "2025-08-10T21:27:21.496Z" }, - { url = "https://files.pythonhosted.org/packages/a1/ae/d7ba902aa604152c2ceba5d352d7b62106bedbccc8e95c3934d94472bfa3/kiwisolver-1.4.9-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b34e51affded8faee0dfdb705416153819d8ea9250bbbf7ea1b249bdeb5f1122", size = 1582197, upload-time = "2025-08-10T21:27:22.604Z" }, - { url = "https://files.pythonhosted.org/packages/f2/41/27c70d427eddb8bc7e4f16420a20fefc6f480312122a59a959fdfe0445ad/kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d8aacd3d4b33b772542b2e01beb50187536967b514b00003bdda7589722d2a64", size = 1390125, upload-time = "2025-08-10T21:27:24.036Z" }, - { url = "https://files.pythonhosted.org/packages/41/42/b3799a12bafc76d962ad69083f8b43b12bf4fe78b097b12e105d75c9b8f1/kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:7cf974dd4e35fa315563ac99d6287a1024e4dc2077b8a7d7cd3d2fb65d283134", size = 1402612, upload-time = "2025-08-10T21:27:25.773Z" }, - { url = "https://files.pythonhosted.org/packages/d2/b5/a210ea073ea1cfaca1bb5c55a62307d8252f531beb364e18aa1e0888b5a0/kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:85bd218b5ecfbee8c8a82e121802dcb519a86044c9c3b2e4aef02fa05c6da370", size = 1453990, upload-time = "2025-08-10T21:27:27.089Z" }, - { url = "https://files.pythonhosted.org/packages/5f/ce/a829eb8c033e977d7ea03ed32fb3c1781b4fa0433fbadfff29e39c676f32/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:0856e241c2d3df4efef7c04a1e46b1936b6120c9bcf36dd216e3acd84bc4fb21", size = 2331601, upload-time = "2025-08-10T21:27:29.343Z" }, - { url = "https://files.pythonhosted.org/packages/e0/4b/b5e97eb142eb9cd0072dacfcdcd31b1c66dc7352b0f7c7255d339c0edf00/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:9af39d6551f97d31a4deebeac6f45b156f9755ddc59c07b402c148f5dbb6482a", size = 2422041, upload-time = "2025-08-10T21:27:30.754Z" }, - { url = "https://files.pythonhosted.org/packages/40/be/8eb4cd53e1b85ba4edc3a9321666f12b83113a178845593307a3e7891f44/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:bb4ae2b57fc1d8cbd1cf7b1d9913803681ffa903e7488012be5b76dedf49297f", size = 2594897, upload-time = "2025-08-10T21:27:32.803Z" }, - { url = "https://files.pythonhosted.org/packages/99/dd/841e9a66c4715477ea0abc78da039832fbb09dac5c35c58dc4c41a407b8a/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:aedff62918805fb62d43a4aa2ecd4482c380dc76cd31bd7c8878588a61bd0369", size = 2391835, upload-time = "2025-08-10T21:27:34.23Z" }, - { url = "https://files.pythonhosted.org/packages/0c/28/4b2e5c47a0da96896fdfdb006340ade064afa1e63675d01ea5ac222b6d52/kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl", hash = "sha256:1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891", size = 79988, upload-time = "2025-08-10T21:27:35.587Z" }, - { url = "https://files.pythonhosted.org/packages/80/be/3578e8afd18c88cdf9cb4cffde75a96d2be38c5a903f1ed0ceec061bd09e/kiwisolver-1.4.9-cp314-cp314t-win_arm64.whl", hash = "sha256:4a48a2ce79d65d363597ef7b567ce3d14d68783d2b2263d98db3d9477805ba32", size = 70260, upload-time = "2025-08-10T21:27:36.606Z" }, ] [[package]] @@ -1749,32 +1606,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/d4/be/24f8502db11d405232ac1162eb98069ca49c3306c1d75c6ccc61d9af8789/librt-0.8.1-cp313-cp313-win32.whl", hash = "sha256:086a32dbb71336627e78cc1d6ee305a68d038ef7d4c39aaff41ae8c9aa46e91a", size = 54969, upload-time = "2026-02-17T16:12:09.633Z" }, { url = "https://files.pythonhosted.org/packages/5c/73/c9fdf6cb2a529c1a092ce769a12d88c8cca991194dfe641b6af12fa964d2/librt-0.8.1-cp313-cp313-win_amd64.whl", hash = "sha256:e11769a1dbda4da7b00a76cfffa67aa47cfa66921d2724539eee4b9ede780b79", size = 62000, upload-time = "2026-02-17T16:12:10.632Z" }, { url = "https://files.pythonhosted.org/packages/d3/97/68f80ca3ac4924f250cdfa6e20142a803e5e50fca96ef5148c52ee8c10ea/librt-0.8.1-cp313-cp313-win_arm64.whl", hash = "sha256:924817ab3141aca17893386ee13261f1d100d1ef410d70afe4389f2359fea4f0", size = 52495, upload-time = "2026-02-17T16:12:11.633Z" }, - { url = "https://files.pythonhosted.org/packages/c9/6a/907ef6800f7bca71b525a05f1839b21f708c09043b1c6aa77b6b827b3996/librt-0.8.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:6cfa7fe54fd4d1f47130017351a959fe5804bda7a0bc7e07a2cdbc3fdd28d34f", size = 66081, upload-time = "2026-02-17T16:12:12.766Z" }, - { url = "https://files.pythonhosted.org/packages/1b/18/25e991cd5640c9fb0f8d91b18797b29066b792f17bf8493da183bf5caabe/librt-0.8.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:228c2409c079f8c11fb2e5d7b277077f694cb93443eb760e00b3b83cb8b3176c", size = 68309, upload-time = "2026-02-17T16:12:13.756Z" }, - { url = "https://files.pythonhosted.org/packages/a4/36/46820d03f058cfb5a9de5940640ba03165ed8aded69e0733c417bb04df34/librt-0.8.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:7aae78ab5e3206181780e56912d1b9bb9f90a7249ce12f0e8bf531d0462dd0fc", size = 196804, upload-time = "2026-02-17T16:12:14.818Z" }, - { url = "https://files.pythonhosted.org/packages/59/18/5dd0d3b87b8ff9c061849fbdb347758d1f724b9a82241aa908e0ec54ccd0/librt-0.8.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:172d57ec04346b047ca6af181e1ea4858086c80bdf455f61994c4aa6fc3f866c", size = 206907, upload-time = "2026-02-17T16:12:16.513Z" }, - { url = "https://files.pythonhosted.org/packages/d1/96/ef04902aad1424fd7299b62d1890e803e6ab4018c3044dca5922319c4b97/librt-0.8.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6b1977c4ea97ce5eb7755a78fae68d87e4102e4aaf54985e8b56806849cc06a3", size = 221217, upload-time = "2026-02-17T16:12:17.906Z" }, - { url = "https://files.pythonhosted.org/packages/6d/ff/7e01f2dda84a8f5d280637a2e5827210a8acca9a567a54507ef1c75b342d/librt-0.8.1-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:10c42e1f6fd06733ef65ae7bebce2872bcafd8d6e6b0a08fe0a05a23b044fb14", size = 214622, upload-time = "2026-02-17T16:12:19.108Z" }, - { url = "https://files.pythonhosted.org/packages/1e/8c/5b093d08a13946034fed57619742f790faf77058558b14ca36a6e331161e/librt-0.8.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:4c8dfa264b9193c4ee19113c985c95f876fae5e51f731494fc4e0cf594990ba7", size = 221987, upload-time = "2026-02-17T16:12:20.331Z" }, - { url = "https://files.pythonhosted.org/packages/d3/cc/86b0b3b151d40920ad45a94ce0171dec1aebba8a9d72bb3fa00c73ab25dd/librt-0.8.1-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:01170b6729a438f0dedc4a26ed342e3dc4f02d1000b4b19f980e1877f0c297e6", size = 215132, upload-time = "2026-02-17T16:12:21.54Z" }, - { url = "https://files.pythonhosted.org/packages/fc/be/8588164a46edf1e69858d952654e216a9a91174688eeefb9efbb38a9c799/librt-0.8.1-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:7b02679a0d783bdae30d443025b94465d8c3dc512f32f5b5031f93f57ac32071", size = 215195, upload-time = "2026-02-17T16:12:23.073Z" }, - { url = "https://files.pythonhosted.org/packages/f5/f2/0b9279bea735c734d69344ecfe056c1ba211694a72df10f568745c899c76/librt-0.8.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:190b109bb69592a3401fe1ffdea41a2e73370ace2ffdc4a0e8e2b39cdea81b78", size = 237946, upload-time = "2026-02-17T16:12:24.275Z" }, - { url = "https://files.pythonhosted.org/packages/e9/cc/5f2a34fbc8aeb35314a3641f9956fa9051a947424652fad9882be7a97949/librt-0.8.1-cp314-cp314-win32.whl", hash = "sha256:e70a57ecf89a0f64c24e37f38d3fe217a58169d2fe6ed6d70554964042474023", size = 50689, upload-time = "2026-02-17T16:12:25.766Z" }, - { url = "https://files.pythonhosted.org/packages/a0/76/cd4d010ab2147339ca2b93e959c3686e964edc6de66ddacc935c325883d7/librt-0.8.1-cp314-cp314-win_amd64.whl", hash = "sha256:7e2f3edca35664499fbb36e4770650c4bd4a08abc1f4458eab9df4ec56389730", size = 57875, upload-time = "2026-02-17T16:12:27.465Z" }, - { url = "https://files.pythonhosted.org/packages/84/0f/2143cb3c3ca48bd3379dcd11817163ca50781927c4537345d608b5045998/librt-0.8.1-cp314-cp314-win_arm64.whl", hash = "sha256:0d2f82168e55ddefd27c01c654ce52379c0750ddc31ee86b4b266bcf4d65f2a3", size = 48058, upload-time = "2026-02-17T16:12:28.556Z" }, - { url = "https://files.pythonhosted.org/packages/d2/0e/9b23a87e37baf00311c3efe6b48d6b6c168c29902dfc3f04c338372fd7db/librt-0.8.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2c74a2da57a094bd48d03fa5d196da83d2815678385d2978657499063709abe1", size = 68313, upload-time = "2026-02-17T16:12:29.659Z" }, - { url = "https://files.pythonhosted.org/packages/db/9a/859c41e5a4f1c84200a7d2b92f586aa27133c8243b6cac9926f6e54d01b9/librt-0.8.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a355d99c4c0d8e5b770313b8b247411ed40949ca44e33e46a4789b9293a907ee", size = 70994, upload-time = "2026-02-17T16:12:31.516Z" }, - { url = "https://files.pythonhosted.org/packages/4c/28/10605366ee599ed34223ac2bf66404c6fb59399f47108215d16d5ad751a8/librt-0.8.1-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:2eb345e8b33fb748227409c9f1233d4df354d6e54091f0e8fc53acdb2ffedeb7", size = 220770, upload-time = "2026-02-17T16:12:33.294Z" }, - { url = "https://files.pythonhosted.org/packages/af/8d/16ed8fd452dafae9c48d17a6bc1ee3e818fd40ef718d149a8eff2c9f4ea2/librt-0.8.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9be2f15e53ce4e83cc08adc29b26fb5978db62ef2a366fbdf716c8a6c8901040", size = 235409, upload-time = "2026-02-17T16:12:35.443Z" }, - { url = "https://files.pythonhosted.org/packages/89/1b/7bdf3e49349c134b25db816e4a3db6b94a47ac69d7d46b1e682c2c4949be/librt-0.8.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:785ae29c1f5c6e7c2cde2c7c0e148147f4503da3abc5d44d482068da5322fd9e", size = 246473, upload-time = "2026-02-17T16:12:36.656Z" }, - { url = "https://files.pythonhosted.org/packages/4e/8a/91fab8e4fd2a24930a17188c7af5380eb27b203d72101c9cc000dbdfd95a/librt-0.8.1-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:1d3a7da44baf692f0c6aeb5b2a09c5e6fc7a703bca9ffa337ddd2e2da53f7732", size = 238866, upload-time = "2026-02-17T16:12:37.849Z" }, - { url = "https://files.pythonhosted.org/packages/b9/e0/c45a098843fc7c07e18a7f8a24ca8496aecbf7bdcd54980c6ca1aaa79a8e/librt-0.8.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5fc48998000cbc39ec0d5311312dda93ecf92b39aaf184c5e817d5d440b29624", size = 250248, upload-time = "2026-02-17T16:12:39.445Z" }, - { url = "https://files.pythonhosted.org/packages/82/30/07627de23036640c952cce0c1fe78972e77d7d2f8fd54fa5ef4554ff4a56/librt-0.8.1-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:e96baa6820280077a78244b2e06e416480ed859bbd8e5d641cf5742919d8beb4", size = 240629, upload-time = "2026-02-17T16:12:40.889Z" }, - { url = "https://files.pythonhosted.org/packages/fb/c1/55bfe1ee3542eba055616f9098eaf6eddb966efb0ca0f44eaa4aba327307/librt-0.8.1-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:31362dbfe297b23590530007062c32c6f6176f6099646bb2c95ab1b00a57c382", size = 239615, upload-time = "2026-02-17T16:12:42.446Z" }, - { url = "https://files.pythonhosted.org/packages/2b/39/191d3d28abc26c9099b19852e6c99f7f6d400b82fa5a4e80291bd3803e19/librt-0.8.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:cc3656283d11540ab0ea01978378e73e10002145117055e03722417aeab30994", size = 263001, upload-time = "2026-02-17T16:12:43.627Z" }, - { url = "https://files.pythonhosted.org/packages/b9/eb/7697f60fbe7042ab4e88f4ee6af496b7f222fffb0a4e3593ef1f29f81652/librt-0.8.1-cp314-cp314t-win32.whl", hash = "sha256:738f08021b3142c2918c03692608baed43bc51144c29e35807682f8070ee2a3a", size = 51328, upload-time = "2026-02-17T16:12:45.148Z" }, - { url = "https://files.pythonhosted.org/packages/7c/72/34bf2eb7a15414a23e5e70ecb9440c1d3179f393d9349338a91e2781c0fb/librt-0.8.1-cp314-cp314t-win_amd64.whl", hash = "sha256:89815a22daf9c51884fb5dbe4f1ef65ee6a146e0b6a8df05f753e2e4a9359bf4", size = 58722, upload-time = "2026-02-17T16:12:46.85Z" }, - { url = "https://files.pythonhosted.org/packages/b2/c8/d148e041732d631fc76036f8b30fae4e77b027a1e95b7a84bb522481a940/librt-0.8.1-cp314-cp314t-win_arm64.whl", hash = "sha256:bf512a71a23504ed08103a13c941f763db13fb11177beb3d9244c98c29fb4a61", size = 48755, upload-time = "2026-02-17T16:12:47.943Z" }, ] [[package]] @@ -1806,10 +1637,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/0e/54/737755c0a91558364b9200702c3c9c15d70ed63f9b98a2c32f1c2aa1f3ba/llvmlite-0.46.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6cc19b051753368a9c9f31dc041299059ee91aceec81bd57b0e385e5d5bf1a54", size = 56275176, upload-time = "2025-12-08T18:15:16.339Z" }, { url = "https://files.pythonhosted.org/packages/e6/91/14f32e1d70905c1c0aa4e6609ab5d705c3183116ca02ac6df2091868413a/llvmlite-0.46.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bca185892908f9ede48c0acd547fe4dc1bafefb8a4967d47db6cf664f9332d12", size = 55128629, upload-time = "2025-12-08T18:15:19.493Z" }, { url = "https://files.pythonhosted.org/packages/4a/a7/d526ae86708cea531935ae777b6dbcabe7db52718e6401e0fb9c5edea80e/llvmlite-0.46.0-cp313-cp313-win_amd64.whl", hash = "sha256:67438fd30e12349ebb054d86a5a1a57fd5e87d264d2451bcfafbbbaa25b82a35", size = 38138941, upload-time = "2025-12-08T18:15:22.536Z" }, - { url = "https://files.pythonhosted.org/packages/95/ae/af0ffb724814cc2ea64445acad05f71cff5f799bb7efb22e47ee99340dbc/llvmlite-0.46.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:d252edfb9f4ac1fcf20652258e3f102b26b03eef738dc8a6ffdab7d7d341d547", size = 37232768, upload-time = "2025-12-08T18:15:25.055Z" }, - { url = "https://files.pythonhosted.org/packages/c9/19/5018e5352019be753b7b07f7759cdabb69ca5779fea2494be8839270df4c/llvmlite-0.46.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:379fdd1c59badeff8982cb47e4694a6143bec3bb49aa10a466e095410522064d", size = 56275173, upload-time = "2025-12-08T18:15:28.109Z" }, - { url = "https://files.pythonhosted.org/packages/9f/c9/d57877759d707e84c082163c543853245f91b70c804115a5010532890f18/llvmlite-0.46.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2e8cbfff7f6db0fa2c771ad24154e2a7e457c2444d7673e6de06b8b698c3b269", size = 55128628, upload-time = "2025-12-08T18:15:31.098Z" }, - { url = "https://files.pythonhosted.org/packages/30/a8/e61a8c2b3cc7a597073d9cde1fcbb567e9d827f1db30c93cf80422eac70d/llvmlite-0.46.0-cp314-cp314-win_amd64.whl", hash = "sha256:7821eda3ec1f18050f981819756631d60b6d7ab1a6cf806d9efefbe3f4082d61", size = 39153056, upload-time = "2025-12-08T18:15:33.938Z" }, ] [[package]] @@ -1872,28 +1699,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/80/d6/2d1b89f6ca4bff1036499b1e29a1d02d282259f3681540e16563f27ebc23/markupsafe-3.0.3-cp313-cp313t-win32.whl", hash = "sha256:69c0b73548bc525c8cb9a251cddf1931d1db4d2258e9599c28c07ef3580ef354", size = 14612, upload-time = "2025-09-27T18:37:02.639Z" }, { url = "https://files.pythonhosted.org/packages/2b/98/e48a4bfba0a0ffcf9925fe2d69240bfaa19c6f7507b8cd09c70684a53c1e/markupsafe-3.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:1b4b79e8ebf6b55351f0d91fe80f893b4743f104bff22e90697db1590e47a218", size = 15200, upload-time = "2025-09-27T18:37:03.582Z" }, { url = "https://files.pythonhosted.org/packages/0e/72/e3cc540f351f316e9ed0f092757459afbc595824ca724cbc5a5d4263713f/markupsafe-3.0.3-cp313-cp313t-win_arm64.whl", hash = "sha256:ad2cf8aa28b8c020ab2fc8287b0f823d0a7d8630784c31e9ee5edea20f406287", size = 13973, upload-time = "2025-09-27T18:37:04.929Z" }, - { url = "https://files.pythonhosted.org/packages/33/8a/8e42d4838cd89b7dde187011e97fe6c3af66d8c044997d2183fbd6d31352/markupsafe-3.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:eaa9599de571d72e2daf60164784109f19978b327a3910d3e9de8c97b5b70cfe", size = 11619, upload-time = "2025-09-27T18:37:06.342Z" }, - { url = "https://files.pythonhosted.org/packages/b5/64/7660f8a4a8e53c924d0fa05dc3a55c9cee10bbd82b11c5afb27d44b096ce/markupsafe-3.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c47a551199eb8eb2121d4f0f15ae0f923d31350ab9280078d1e5f12b249e0026", size = 12029, upload-time = "2025-09-27T18:37:07.213Z" }, - { url = "https://files.pythonhosted.org/packages/da/ef/e648bfd021127bef5fa12e1720ffed0c6cbb8310c8d9bea7266337ff06de/markupsafe-3.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f34c41761022dd093b4b6896d4810782ffbabe30f2d443ff5f083e0cbbb8c737", size = 24408, upload-time = "2025-09-27T18:37:09.572Z" }, - { url = "https://files.pythonhosted.org/packages/41/3c/a36c2450754618e62008bf7435ccb0f88053e07592e6028a34776213d877/markupsafe-3.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:457a69a9577064c05a97c41f4e65148652db078a3a509039e64d3467b9e7ef97", size = 23005, upload-time = "2025-09-27T18:37:10.58Z" }, - { url = "https://files.pythonhosted.org/packages/bc/20/b7fdf89a8456b099837cd1dc21974632a02a999ec9bf7ca3e490aacd98e7/markupsafe-3.0.3-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e8afc3f2ccfa24215f8cb28dcf43f0113ac3c37c2f0f0806d8c70e4228c5cf4d", size = 22048, upload-time = "2025-09-27T18:37:11.547Z" }, - { url = "https://files.pythonhosted.org/packages/9a/a7/591f592afdc734f47db08a75793a55d7fbcc6902a723ae4cfbab61010cc5/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ec15a59cf5af7be74194f7ab02d0f59a62bdcf1a537677ce67a2537c9b87fcda", size = 23821, upload-time = "2025-09-27T18:37:12.48Z" }, - { url = "https://files.pythonhosted.org/packages/7d/33/45b24e4f44195b26521bc6f1a82197118f74df348556594bd2262bda1038/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:0eb9ff8191e8498cca014656ae6b8d61f39da5f95b488805da4bb029cccbfbaf", size = 21606, upload-time = "2025-09-27T18:37:13.485Z" }, - { url = "https://files.pythonhosted.org/packages/ff/0e/53dfaca23a69fbfbbf17a4b64072090e70717344c52eaaaa9c5ddff1e5f0/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:2713baf880df847f2bece4230d4d094280f4e67b1e813eec43b4c0e144a34ffe", size = 23043, upload-time = "2025-09-27T18:37:14.408Z" }, - { url = "https://files.pythonhosted.org/packages/46/11/f333a06fc16236d5238bfe74daccbca41459dcd8d1fa952e8fbd5dccfb70/markupsafe-3.0.3-cp314-cp314-win32.whl", hash = "sha256:729586769a26dbceff69f7a7dbbf59ab6572b99d94576a5592625d5b411576b9", size = 14747, upload-time = "2025-09-27T18:37:15.36Z" }, - { url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581", size = 15341, upload-time = "2025-09-27T18:37:16.496Z" }, - { url = "https://files.pythonhosted.org/packages/6f/18/acf23e91bd94fd7b3031558b1f013adfa21a8e407a3fdb32745538730382/markupsafe-3.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:5a7d5dc5140555cf21a6fefbdbf8723f06fcd2f63ef108f2854de715e4422cb4", size = 14073, upload-time = "2025-09-27T18:37:17.476Z" }, - { url = "https://files.pythonhosted.org/packages/3c/f0/57689aa4076e1b43b15fdfa646b04653969d50cf30c32a102762be2485da/markupsafe-3.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:1353ef0c1b138e1907ae78e2f6c63ff67501122006b0f9abad68fda5f4ffc6ab", size = 11661, upload-time = "2025-09-27T18:37:18.453Z" }, - { url = "https://files.pythonhosted.org/packages/89/c3/2e67a7ca217c6912985ec766c6393b636fb0c2344443ff9d91404dc4c79f/markupsafe-3.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1085e7fbddd3be5f89cc898938f42c0b3c711fdcb37d75221de2666af647c175", size = 12069, upload-time = "2025-09-27T18:37:19.332Z" }, - { url = "https://files.pythonhosted.org/packages/f0/00/be561dce4e6ca66b15276e184ce4b8aec61fe83662cce2f7d72bd3249d28/markupsafe-3.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1b52b4fb9df4eb9ae465f8d0c228a00624de2334f216f178a995ccdcf82c4634", size = 25670, upload-time = "2025-09-27T18:37:20.245Z" }, - { url = "https://files.pythonhosted.org/packages/50/09/c419f6f5a92e5fadde27efd190eca90f05e1261b10dbd8cbcb39cd8ea1dc/markupsafe-3.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fed51ac40f757d41b7c48425901843666a6677e3e8eb0abcff09e4ba6e664f50", size = 23598, upload-time = "2025-09-27T18:37:21.177Z" }, - { url = "https://files.pythonhosted.org/packages/22/44/a0681611106e0b2921b3033fc19bc53323e0b50bc70cffdd19f7d679bb66/markupsafe-3.0.3-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:f190daf01f13c72eac4efd5c430a8de82489d9cff23c364c3ea822545032993e", size = 23261, upload-time = "2025-09-27T18:37:22.167Z" }, - { url = "https://files.pythonhosted.org/packages/5f/57/1b0b3f100259dc9fffe780cfb60d4be71375510e435efec3d116b6436d43/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e56b7d45a839a697b5eb268c82a71bd8c7f6c94d6fd50c3d577fa39a9f1409f5", size = 24835, upload-time = "2025-09-27T18:37:23.296Z" }, - { url = "https://files.pythonhosted.org/packages/26/6a/4bf6d0c97c4920f1597cc14dd720705eca0bf7c787aebc6bb4d1bead5388/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:f3e98bb3798ead92273dc0e5fd0f31ade220f59a266ffd8a4f6065e0a3ce0523", size = 22733, upload-time = "2025-09-27T18:37:24.237Z" }, - { url = "https://files.pythonhosted.org/packages/14/c7/ca723101509b518797fedc2fdf79ba57f886b4aca8a7d31857ba3ee8281f/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:5678211cb9333a6468fb8d8be0305520aa073f50d17f089b5b4b477ea6e67fdc", size = 23672, upload-time = "2025-09-27T18:37:25.271Z" }, - { url = "https://files.pythonhosted.org/packages/fb/df/5bd7a48c256faecd1d36edc13133e51397e41b73bb77e1a69deab746ebac/markupsafe-3.0.3-cp314-cp314t-win32.whl", hash = "sha256:915c04ba3851909ce68ccc2b8e2cd691618c4dc4c4232fb7982bca3f41fd8c3d", size = 14819, upload-time = "2025-09-27T18:37:26.285Z" }, - { url = "https://files.pythonhosted.org/packages/1a/8a/0402ba61a2f16038b48b39bccca271134be00c5c9f0f623208399333c448/markupsafe-3.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9", size = 15426, upload-time = "2025-09-27T18:37:27.316Z" }, - { url = "https://files.pythonhosted.org/packages/70/bc/6f1c2f612465f5fa89b95bead1f44dcb607670fd42891d8fdcd5d039f4f4/markupsafe-3.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:32001d6a8fc98c8cb5c947787c5d08b0a50663d139f1305bac5885d98d9b40fa", size = 14146, upload-time = "2025-09-27T18:37:28.327Z" }, ] [[package]] @@ -1934,20 +1739,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/c0/3d/8b94a481456dfc9dfe6e39e93b5ab376e50998cddfd23f4ae3b431708f16/matplotlib-3.10.8-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:0a33deb84c15ede243aead39f77e990469fff93ad1521163305095b77b72ce4a", size = 9614000, upload-time = "2025-12-10T22:56:05.411Z" }, { url = "https://files.pythonhosted.org/packages/bd/cd/bc06149fe5585ba800b189a6a654a75f1f127e8aab02fd2be10df7fa500c/matplotlib-3.10.8-cp313-cp313t-win_amd64.whl", hash = "sha256:3a48a78d2786784cc2413e57397981fb45c79e968d99656706018d6e62e57958", size = 8220043, upload-time = "2025-12-10T22:56:07.551Z" }, { url = "https://files.pythonhosted.org/packages/e3/de/b22cf255abec916562cc04eef457c13e58a1990048de0c0c3604d082355e/matplotlib-3.10.8-cp313-cp313t-win_arm64.whl", hash = "sha256:15d30132718972c2c074cd14638c7f4592bd98719e2308bccea40e0538bc0cb5", size = 8062075, upload-time = "2025-12-10T22:56:09.178Z" }, - { url = "https://files.pythonhosted.org/packages/3c/43/9c0ff7a2f11615e516c3b058e1e6e8f9614ddeca53faca06da267c48345d/matplotlib-3.10.8-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:b53285e65d4fa4c86399979e956235deb900be5baa7fc1218ea67fbfaeaadd6f", size = 8262481, upload-time = "2025-12-10T22:56:10.885Z" }, - { url = "https://files.pythonhosted.org/packages/6f/ca/e8ae28649fcdf039fda5ef554b40a95f50592a3c47e6f7270c9561c12b07/matplotlib-3.10.8-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:32f8dce744be5569bebe789e46727946041199030db8aeb2954d26013a0eb26b", size = 8151473, upload-time = "2025-12-10T22:56:12.377Z" }, - { url = "https://files.pythonhosted.org/packages/f1/6f/009d129ae70b75e88cbe7e503a12a4c0670e08ed748a902c2568909e9eb5/matplotlib-3.10.8-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4cf267add95b1c88300d96ca837833d4112756045364f5c734a2276038dae27d", size = 9553896, upload-time = "2025-12-10T22:56:14.432Z" }, - { url = "https://files.pythonhosted.org/packages/f5/26/4221a741eb97967bc1fd5e4c52b9aa5a91b2f4ec05b59f6def4d820f9df9/matplotlib-3.10.8-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2cf5bd12cecf46908f286d7838b2abc6c91cda506c0445b8223a7c19a00df008", size = 9824193, upload-time = "2025-12-10T22:56:16.29Z" }, - { url = "https://files.pythonhosted.org/packages/1f/f3/3abf75f38605772cf48a9daf5821cd4f563472f38b4b828c6fba6fa6d06e/matplotlib-3.10.8-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:41703cc95688f2516b480f7f339d8851a6035f18e100ee6a32bc0b8536a12a9c", size = 9615444, upload-time = "2025-12-10T22:56:18.155Z" }, - { url = "https://files.pythonhosted.org/packages/93/a5/de89ac80f10b8dc615807ee1133cd99ac74082581196d4d9590bea10690d/matplotlib-3.10.8-cp314-cp314-win_amd64.whl", hash = "sha256:83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11", size = 8272719, upload-time = "2025-12-10T22:56:20.366Z" }, - { url = "https://files.pythonhosted.org/packages/69/ce/b006495c19ccc0a137b48083168a37bd056392dee02f87dba0472f2797fe/matplotlib-3.10.8-cp314-cp314-win_arm64.whl", hash = "sha256:2c1998e92cd5999e295a731bcb2911c75f597d937341f3030cc24ef2733d78a8", size = 8144205, upload-time = "2025-12-10T22:56:22.239Z" }, - { url = "https://files.pythonhosted.org/packages/68/d9/b31116a3a855bd313c6fcdb7226926d59b041f26061c6c5b1be66a08c826/matplotlib-3.10.8-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:b5a2b97dbdc7d4f353ebf343744f1d1f1cca8aa8bfddb4262fcf4306c3761d50", size = 8305785, upload-time = "2025-12-10T22:56:24.218Z" }, - { url = "https://files.pythonhosted.org/packages/1e/90/6effe8103f0272685767ba5f094f453784057072f49b393e3ea178fe70a5/matplotlib-3.10.8-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:3f5c3e4da343bba819f0234186b9004faba952cc420fbc522dc4e103c1985908", size = 8198361, upload-time = "2025-12-10T22:56:26.787Z" }, - { url = "https://files.pythonhosted.org/packages/d7/65/a73188711bea603615fc0baecca1061429ac16940e2385433cc778a9d8e7/matplotlib-3.10.8-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5f62550b9a30afde8c1c3ae450e5eb547d579dd69b25c2fc7a1c67f934c1717a", size = 9561357, upload-time = "2025-12-10T22:56:28.953Z" }, - { url = "https://files.pythonhosted.org/packages/f4/3d/b5c5d5d5be8ce63292567f0e2c43dde9953d3ed86ac2de0a72e93c8f07a1/matplotlib-3.10.8-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:495672de149445ec1b772ff2c9ede9b769e3cb4f0d0aa7fa730d7f59e2d4e1c1", size = 9823610, upload-time = "2025-12-10T22:56:31.455Z" }, - { url = "https://files.pythonhosted.org/packages/4d/4b/e7beb6bbd49f6bae727a12b270a2654d13c397576d25bd6786e47033300f/matplotlib-3.10.8-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:595ba4d8fe983b88f0eec8c26a241e16d6376fe1979086232f481f8f3f67494c", size = 9614011, upload-time = "2025-12-10T22:56:33.85Z" }, - { url = "https://files.pythonhosted.org/packages/7c/e6/76f2813d31f032e65f6f797e3f2f6e4aab95b65015924b1c51370395c28a/matplotlib-3.10.8-cp314-cp314t-win_amd64.whl", hash = "sha256:25d380fe8b1dc32cf8f0b1b448470a77afb195438bafdf1d858bfb876f3edf7b", size = 8362801, upload-time = "2025-12-10T22:56:36.107Z" }, - { url = "https://files.pythonhosted.org/packages/5d/49/d651878698a0b67f23aa28e17f45a6d6dd3d3f933fa29087fa4ce5947b5a/matplotlib-3.10.8-cp314-cp314t-win_arm64.whl", hash = "sha256:113bb52413ea508ce954a02c10ffd0d565f9c3bc7f2eddc27dfe1731e71c7b5f", size = 8192560, upload-time = "2025-12-10T22:56:38.008Z" }, ] [[package]] @@ -2161,16 +1952,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/40/49/0f8c498a28c0efa5f5c95a9e374c83ec1385ca41d0e85e7cf40e5d519a21/ml_dtypes-0.5.4-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:531eff30e4d368cb6255bc2328d070e35836aa4f282a0fb5f3a0cd7260257298", size = 5366453, upload-time = "2025-11-17T22:32:07.115Z" }, { url = "https://files.pythonhosted.org/packages/8c/27/12607423d0a9c6bbbcc780ad19f1f6baa2b68b18ce4bddcdc122c4c68dc9/ml_dtypes-0.5.4-cp313-cp313t-win_amd64.whl", hash = "sha256:cb73dccfc991691c444acc8c0012bee8f2470da826a92e3a20bb333b1a7894e6", size = 225612, upload-time = "2025-11-17T22:32:08.615Z" }, { url = "https://files.pythonhosted.org/packages/e5/80/5a5929e92c72936d5b19872c5fb8fc09327c1da67b3b68c6a13139e77e20/ml_dtypes-0.5.4-cp313-cp313t-win_arm64.whl", hash = "sha256:3bbbe120b915090d9dd1375e4684dd17a20a2491ef25d640a908281da85e73f1", size = 164145, upload-time = "2025-11-17T22:32:09.782Z" }, - { url = "https://files.pythonhosted.org/packages/72/4e/1339dc6e2557a344f5ba5590872e80346f76f6cb2ac3dd16e4666e88818c/ml_dtypes-0.5.4-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:2b857d3af6ac0d39db1de7c706e69c7f9791627209c3d6dedbfca8c7e5faec22", size = 673781, upload-time = "2025-11-17T22:32:11.364Z" }, - { url = "https://files.pythonhosted.org/packages/04/f9/067b84365c7e83bda15bba2b06c6ca250ce27b20630b1128c435fb7a09aa/ml_dtypes-0.5.4-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:805cef3a38f4eafae3a5bf9ebdcdb741d0bcfd9e1bd90eb54abd24f928cd2465", size = 5036145, upload-time = "2025-11-17T22:32:12.783Z" }, - { url = "https://files.pythonhosted.org/packages/c6/bb/82c7dcf38070b46172a517e2334e665c5bf374a262f99a283ea454bece7c/ml_dtypes-0.5.4-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:14a4fd3228af936461db66faccef6e4f41c1d82fcc30e9f8d58a08916b1d811f", size = 5010230, upload-time = "2025-11-17T22:32:14.38Z" }, - { url = "https://files.pythonhosted.org/packages/e9/93/2bfed22d2498c468f6bcd0d9f56b033eaa19f33320389314c19ef6766413/ml_dtypes-0.5.4-cp314-cp314-win_amd64.whl", hash = "sha256:8c6a2dcebd6f3903e05d51960a8058d6e131fe69f952a5397e5dbabc841b6d56", size = 221032, upload-time = "2025-11-17T22:32:15.763Z" }, - { url = "https://files.pythonhosted.org/packages/76/a3/9c912fe6ea747bb10fe2f8f54d027eb265db05dfb0c6335e3e063e74e6e8/ml_dtypes-0.5.4-cp314-cp314-win_arm64.whl", hash = "sha256:5a0f68ca8fd8d16583dfa7793973feb86f2fbb56ce3966daf9c9f748f52a2049", size = 163353, upload-time = "2025-11-17T22:32:16.932Z" }, - { url = "https://files.pythonhosted.org/packages/cd/02/48aa7d84cc30ab4ee37624a2fd98c56c02326785750cd212bc0826c2f15b/ml_dtypes-0.5.4-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:bfc534409c5d4b0bf945af29e5d0ab075eae9eecbb549ff8a29280db822f34f9", size = 702085, upload-time = "2025-11-17T22:32:18.175Z" }, - { url = "https://files.pythonhosted.org/packages/5a/e7/85cb99fe80a7a5513253ec7faa88a65306be071163485e9a626fce1b6e84/ml_dtypes-0.5.4-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2314892cdc3fcf05e373d76d72aaa15fda9fb98625effa73c1d646f331fcecb7", size = 5355358, upload-time = "2025-11-17T22:32:19.7Z" }, - { url = "https://files.pythonhosted.org/packages/79/2b/a826ba18d2179a56e144aef69e57fb2ab7c464ef0b2111940ee8a3a223a2/ml_dtypes-0.5.4-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0d2ffd05a2575b1519dc928c0b93c06339eb67173ff53acb00724502cda231cf", size = 5366332, upload-time = "2025-11-17T22:32:21.193Z" }, - { url = "https://files.pythonhosted.org/packages/84/44/f4d18446eacb20ea11e82f133ea8f86e2bf2891785b67d9da8d0ab0ef525/ml_dtypes-0.5.4-cp314-cp314t-win_amd64.whl", hash = "sha256:4381fe2f2452a2d7589689693d3162e876b3ddb0a832cde7a414f8e1adf7eab1", size = 236612, upload-time = "2025-11-17T22:32:22.579Z" }, - { url = "https://files.pythonhosted.org/packages/ad/3f/3d42e9a78fe5edf792a83c074b13b9b770092a4fbf3462872f4303135f09/ml_dtypes-0.5.4-cp314-cp314t-win_arm64.whl", hash = "sha256:11942cbf2cf92157db91e5022633c0d9474d4dfd813a909383bd23ce828a4b7d", size = 168825, upload-time = "2025-11-17T22:32:23.766Z" }, ] [[package]] @@ -2197,24 +1978,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/67/32/f3cd1667028424fa7001d82e10ee35386eea1408b93d399b09fb0aa7875f/msgpack-1.1.2-cp313-cp313-win32.whl", hash = "sha256:a7787d353595c7c7e145e2331abf8b7ff1e6673a6b974ded96e6d4ec09f00c8c", size = 65037, upload-time = "2025-10-08T09:15:21.416Z" }, { url = "https://files.pythonhosted.org/packages/74/07/1ed8277f8653c40ebc65985180b007879f6a836c525b3885dcc6448ae6cb/msgpack-1.1.2-cp313-cp313-win_amd64.whl", hash = "sha256:a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9", size = 72631, upload-time = "2025-10-08T09:15:22.431Z" }, { url = "https://files.pythonhosted.org/packages/e5/db/0314e4e2db56ebcf450f277904ffd84a7988b9e5da8d0d61ab2d057df2b6/msgpack-1.1.2-cp313-cp313-win_arm64.whl", hash = "sha256:e69b39f8c0aa5ec24b57737ebee40be647035158f14ed4b40e6f150077e21a84", size = 64118, upload-time = "2025-10-08T09:15:23.402Z" }, - { url = "https://files.pythonhosted.org/packages/22/71/201105712d0a2ff07b7873ed3c220292fb2ea5120603c00c4b634bcdafb3/msgpack-1.1.2-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:e23ce8d5f7aa6ea6d2a2b326b4ba46c985dbb204523759984430db7114f8aa00", size = 81127, upload-time = "2025-10-08T09:15:24.408Z" }, - { url = "https://files.pythonhosted.org/packages/1b/9f/38ff9e57a2eade7bf9dfee5eae17f39fc0e998658050279cbb14d97d36d9/msgpack-1.1.2-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:6c15b7d74c939ebe620dd8e559384be806204d73b4f9356320632d783d1f7939", size = 84981, upload-time = "2025-10-08T09:15:25.812Z" }, - { url = "https://files.pythonhosted.org/packages/8e/a9/3536e385167b88c2cc8f4424c49e28d49a6fc35206d4a8060f136e71f94c/msgpack-1.1.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:99e2cb7b9031568a2a5c73aa077180f93dd2e95b4f8d3b8e14a73ae94a9e667e", size = 411885, upload-time = "2025-10-08T09:15:27.22Z" }, - { url = "https://files.pythonhosted.org/packages/2f/40/dc34d1a8d5f1e51fc64640b62b191684da52ca469da9cd74e84936ffa4a6/msgpack-1.1.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:180759d89a057eab503cf62eeec0aa61c4ea1200dee709f3a8e9397dbb3b6931", size = 419658, upload-time = "2025-10-08T09:15:28.4Z" }, - { url = "https://files.pythonhosted.org/packages/3b/ef/2b92e286366500a09a67e03496ee8b8ba00562797a52f3c117aa2b29514b/msgpack-1.1.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:04fb995247a6e83830b62f0b07bf36540c213f6eac8e851166d8d86d83cbd014", size = 403290, upload-time = "2025-10-08T09:15:29.764Z" }, - { url = "https://files.pythonhosted.org/packages/78/90/e0ea7990abea5764e4655b8177aa7c63cdfa89945b6e7641055800f6c16b/msgpack-1.1.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:8e22ab046fa7ede9e36eeb4cfad44d46450f37bb05d5ec482b02868f451c95e2", size = 415234, upload-time = "2025-10-08T09:15:31.022Z" }, - { url = "https://files.pythonhosted.org/packages/72/4e/9390aed5db983a2310818cd7d3ec0aecad45e1f7007e0cda79c79507bb0d/msgpack-1.1.2-cp314-cp314-win32.whl", hash = "sha256:80a0ff7d4abf5fecb995fcf235d4064b9a9a8a40a3ab80999e6ac1e30b702717", size = 66391, upload-time = "2025-10-08T09:15:32.265Z" }, - { url = "https://files.pythonhosted.org/packages/6e/f1/abd09c2ae91228c5f3998dbd7f41353def9eac64253de3c8105efa2082f7/msgpack-1.1.2-cp314-cp314-win_amd64.whl", hash = "sha256:9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b", size = 73787, upload-time = "2025-10-08T09:15:33.219Z" }, - { url = "https://files.pythonhosted.org/packages/6a/b0/9d9f667ab48b16ad4115c1935d94023b82b3198064cb84a123e97f7466c1/msgpack-1.1.2-cp314-cp314-win_arm64.whl", hash = "sha256:59415c6076b1e30e563eb732e23b994a61c159cec44deaf584e5cc1dd662f2af", size = 66453, upload-time = "2025-10-08T09:15:34.225Z" }, - { url = "https://files.pythonhosted.org/packages/16/67/93f80545eb1792b61a217fa7f06d5e5cb9e0055bed867f43e2b8e012e137/msgpack-1.1.2-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:897c478140877e5307760b0ea66e0932738879e7aa68144d9b78ea4c8302a84a", size = 85264, upload-time = "2025-10-08T09:15:35.61Z" }, - { url = "https://files.pythonhosted.org/packages/87/1c/33c8a24959cf193966ef11a6f6a2995a65eb066bd681fd085afd519a57ce/msgpack-1.1.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a668204fa43e6d02f89dbe79a30b0d67238d9ec4c5bd8a940fc3a004a47b721b", size = 89076, upload-time = "2025-10-08T09:15:36.619Z" }, - { url = "https://files.pythonhosted.org/packages/fc/6b/62e85ff7193663fbea5c0254ef32f0c77134b4059f8da89b958beb7696f3/msgpack-1.1.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5559d03930d3aa0f3aacb4c42c776af1a2ace2611871c84a75afe436695e6245", size = 435242, upload-time = "2025-10-08T09:15:37.647Z" }, - { url = "https://files.pythonhosted.org/packages/c1/47/5c74ecb4cc277cf09f64e913947871682ffa82b3b93c8dad68083112f412/msgpack-1.1.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:70c5a7a9fea7f036b716191c29047374c10721c389c21e9ffafad04df8c52c90", size = 432509, upload-time = "2025-10-08T09:15:38.794Z" }, - { url = "https://files.pythonhosted.org/packages/24/a4/e98ccdb56dc4e98c929a3f150de1799831c0a800583cde9fa022fa90602d/msgpack-1.1.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:f2cb069d8b981abc72b41aea1c580ce92d57c673ec61af4c500153a626cb9e20", size = 415957, upload-time = "2025-10-08T09:15:40.238Z" }, - { url = "https://files.pythonhosted.org/packages/da/28/6951f7fb67bc0a4e184a6b38ab71a92d9ba58080b27a77d3e2fb0be5998f/msgpack-1.1.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d62ce1f483f355f61adb5433ebfd8868c5f078d1a52d042b0a998682b4fa8c27", size = 422910, upload-time = "2025-10-08T09:15:41.505Z" }, - { url = "https://files.pythonhosted.org/packages/f0/03/42106dcded51f0a0b5284d3ce30a671e7bd3f7318d122b2ead66ad289fed/msgpack-1.1.2-cp314-cp314t-win32.whl", hash = "sha256:1d1418482b1ee984625d88aa9585db570180c286d942da463533b238b98b812b", size = 75197, upload-time = "2025-10-08T09:15:42.954Z" }, - { url = "https://files.pythonhosted.org/packages/15/86/d0071e94987f8db59d4eeb386ddc64d0bb9b10820a8d82bcd3e53eeb2da6/msgpack-1.1.2-cp314-cp314t-win_amd64.whl", hash = "sha256:5a46bf7e831d09470ad92dff02b8b1ac92175ca36b087f904a0519857c6be3ff", size = 85772, upload-time = "2025-10-08T09:15:43.954Z" }, - { url = "https://files.pythonhosted.org/packages/81/f2/08ace4142eb281c12701fc3b93a10795e4d4dc7f753911d836675050f886/msgpack-1.1.2-cp314-cp314t-win_arm64.whl", hash = "sha256:d99ef64f349d5ec3293688e91486c5fdb925ed03807f64d98d205d2713c60b46", size = 70868, upload-time = "2025-10-08T09:15:44.959Z" }, ] [[package]] @@ -2250,12 +2013,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/d1/32/dd260d52babf67bad8e6770f8e1102021877ce0edea106e72df5626bb0ec/mypy-1.19.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c9a6538e0415310aad77cb94004ca6482330fece18036b5f360b62c45814c4ef", size = 13616252, upload-time = "2025-12-15T05:02:49.036Z" }, { url = "https://files.pythonhosted.org/packages/71/d0/5e60a9d2e3bd48432ae2b454b7ef2b62a960ab51292b1eda2a95edd78198/mypy-1.19.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:da4869fc5e7f62a88f3fe0b5c919d1d9f7ea3cef92d3689de2823fd27e40aa75", size = 13840848, upload-time = "2025-12-15T05:02:55.95Z" }, { url = "https://files.pythonhosted.org/packages/98/76/d32051fa65ecf6cc8c6610956473abdc9b4c43301107476ac03559507843/mypy-1.19.1-cp313-cp313-win_amd64.whl", hash = "sha256:016f2246209095e8eda7538944daa1d60e1e8134d98983b9fc1e92c1fc0cb8dd", size = 10135510, upload-time = "2025-12-15T05:02:58.438Z" }, - { url = "https://files.pythonhosted.org/packages/de/eb/b83e75f4c820c4247a58580ef86fcd35165028f191e7e1ba57128c52782d/mypy-1.19.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:06e6170bd5836770e8104c8fdd58e5e725cfeb309f0a6c681a811f557e97eac1", size = 13199744, upload-time = "2025-12-15T05:03:30.823Z" }, - { url = "https://files.pythonhosted.org/packages/94/28/52785ab7bfa165f87fcbb61547a93f98bb20e7f82f90f165a1f69bce7b3d/mypy-1.19.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:804bd67b8054a85447c8954215a906d6eff9cabeabe493fb6334b24f4bfff718", size = 12215815, upload-time = "2025-12-15T05:02:42.323Z" }, - { url = "https://files.pythonhosted.org/packages/0a/c6/bdd60774a0dbfb05122e3e925f2e9e846c009e479dcec4821dad881f5b52/mypy-1.19.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:21761006a7f497cb0d4de3d8ef4ca70532256688b0523eee02baf9eec895e27b", size = 12740047, upload-time = "2025-12-15T05:03:33.168Z" }, - { url = "https://files.pythonhosted.org/packages/32/2a/66ba933fe6c76bd40d1fe916a83f04fed253152f451a877520b3c4a5e41e/mypy-1.19.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:28902ee51f12e0f19e1e16fbe2f8f06b6637f482c459dd393efddd0ec7f82045", size = 13601998, upload-time = "2025-12-15T05:03:13.056Z" }, - { url = "https://files.pythonhosted.org/packages/e3/da/5055c63e377c5c2418760411fd6a63ee2b96cf95397259038756c042574f/mypy-1.19.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:481daf36a4c443332e2ae9c137dfee878fcea781a2e3f895d54bd3002a900957", size = 13807476, upload-time = "2025-12-15T05:03:17.977Z" }, - { url = "https://files.pythonhosted.org/packages/cd/09/4ebd873390a063176f06b0dbf1f7783dd87bd120eae7727fa4ae4179b685/mypy-1.19.1-cp314-cp314-win_amd64.whl", hash = "sha256:8bb5c6f6d043655e055be9b542aa5f3bdd30e4f3589163e85f93f3640060509f", size = 10281872, upload-time = "2025-12-15T05:03:05.549Z" }, { url = "https://files.pythonhosted.org/packages/8d/f4/4ce9a05ce5ded1de3ec1c1d96cf9f9504a04e54ce0ed55cfa38619a32b8d/mypy-1.19.1-py3-none-any.whl", hash = "sha256:f1235f5ea01b7db5468d53ece6aaddf1ad0b88d9e7462b86ef96fe04995d7247", size = 2471239, upload-time = "2025-12-15T05:03:07.248Z" }, ] @@ -2378,10 +2135,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e9/6c/1e222edba1e20e6b113912caa9b1665b5809433cbcb042dfd133c6f1fd38/numba-0.63.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:53de693abe4be3bd4dee38e1c55f01c55ff644a6a3696a3670589e6e4c39cde2", size = 3809736, upload-time = "2025-12-10T02:57:25.836Z" }, { url = "https://files.pythonhosted.org/packages/76/0a/590bad11a8b3feeac30a24d01198d46bdb76ad15c70d3a530691ce3cae58/numba-0.63.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:81227821a72a763c3d4ac290abbb4371d855b59fdf85d5af22a47c0e86bf8c7e", size = 3508854, upload-time = "2025-12-10T02:57:27.438Z" }, { url = "https://files.pythonhosted.org/packages/4e/f5/3800384a24eed1e4d524669cdbc0b9b8a628800bb1e90d7bd676e5f22581/numba-0.63.1-cp313-cp313-win_amd64.whl", hash = "sha256:eb227b07c2ac37b09432a9bda5142047a2d1055646e089d4a240a2643e508102", size = 2750228, upload-time = "2025-12-10T02:57:30.36Z" }, - { url = "https://files.pythonhosted.org/packages/36/2f/53be2aa8a55ee2608ebe1231789cbb217f6ece7f5e1c685d2f0752e95a5b/numba-0.63.1-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:f180883e5508940cc83de8a8bea37fc6dd20fbe4e5558d4659b8b9bef5ff4731", size = 2681153, upload-time = "2025-12-10T02:57:32.016Z" }, - { url = "https://files.pythonhosted.org/packages/13/91/53e59c86759a0648282368d42ba732c29524a745fd555ed1fb1df83febbe/numba-0.63.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f0938764afa82a47c0e895637a6c55547a42c9e1d35cac42285b1fa60a8b02bb", size = 3778718, upload-time = "2025-12-10T02:57:33.764Z" }, - { url = "https://files.pythonhosted.org/packages/6c/0c/2be19eba50b0b7636f6d1f69dfb2825530537708a234ba1ff34afc640138/numba-0.63.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f90a929fa5094e062d4e0368ede1f4497d5e40f800e80aa5222c4734236a2894", size = 3478712, upload-time = "2025-12-10T02:57:35.518Z" }, - { url = "https://files.pythonhosted.org/packages/0d/5f/4d0c9e756732577a52211f31da13a3d943d185f7fb90723f56d79c696caa/numba-0.63.1-cp314-cp314-win_amd64.whl", hash = "sha256:8d6d5ce85f572ed4e1a135dbb8c0114538f9dd0e3657eeb0bb64ab204cbe2a8f", size = 2752161, upload-time = "2025-12-10T02:57:37.12Z" }, ] [[package]] @@ -2423,28 +2176,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/80/e9/aff53abbdd41b0ecca94285f325aff42357c6b5abc482a3fcb4994290b18/numpy-2.3.5-cp313-cp313t-win32.whl", hash = "sha256:70b37199913c1bd300ff6e2693316c6f869c7ee16378faf10e4f5e3275b299c3", size = 6405940, upload-time = "2025-11-16T22:51:11.541Z" }, { url = "https://files.pythonhosted.org/packages/d5/81/50613fec9d4de5480de18d4f8ef59ad7e344d497edbef3cfd80f24f98461/numpy-2.3.5-cp313-cp313t-win_amd64.whl", hash = "sha256:b501b5fa195cc9e24fe102f21ec0a44dffc231d2af79950b451e0d99cea02234", size = 12920341, upload-time = "2025-11-16T22:51:14.312Z" }, { url = "https://files.pythonhosted.org/packages/bb/ab/08fd63b9a74303947f34f0bd7c5903b9c5532c2d287bead5bdf4c556c486/numpy-2.3.5-cp313-cp313t-win_arm64.whl", hash = "sha256:a80afd79f45f3c4a7d341f13acbe058d1ca8ac017c165d3fa0d3de6bc1a079d7", size = 10262507, upload-time = "2025-11-16T22:51:16.846Z" }, - { url = "https://files.pythonhosted.org/packages/ba/97/1a914559c19e32d6b2e233cf9a6a114e67c856d35b1d6babca571a3e880f/numpy-2.3.5-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:bf06bc2af43fa8d32d30fae16ad965663e966b1a3202ed407b84c989c3221e82", size = 16735706, upload-time = "2025-11-16T22:51:19.558Z" }, - { url = "https://files.pythonhosted.org/packages/57/d4/51233b1c1b13ecd796311216ae417796b88b0616cfd8a33ae4536330748a/numpy-2.3.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:052e8c42e0c49d2575621c158934920524f6c5da05a1d3b9bab5d8e259e045f0", size = 12264507, upload-time = "2025-11-16T22:51:22.492Z" }, - { url = "https://files.pythonhosted.org/packages/45/98/2fe46c5c2675b8306d0b4a3ec3494273e93e1226a490f766e84298576956/numpy-2.3.5-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:1ed1ec893cff7040a02c8aa1c8611b94d395590d553f6b53629a4461dc7f7b63", size = 5093049, upload-time = "2025-11-16T22:51:25.171Z" }, - { url = "https://files.pythonhosted.org/packages/ce/0e/0698378989bb0ac5f1660c81c78ab1fe5476c1a521ca9ee9d0710ce54099/numpy-2.3.5-cp314-cp314-macosx_14_0_x86_64.whl", hash = "sha256:2dcd0808a421a482a080f89859a18beb0b3d1e905b81e617a188bd80422d62e9", size = 6626603, upload-time = "2025-11-16T22:51:27Z" }, - { url = "https://files.pythonhosted.org/packages/5e/a6/9ca0eecc489640615642a6cbc0ca9e10df70df38c4d43f5a928ff18d8827/numpy-2.3.5-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:727fd05b57df37dc0bcf1a27767a3d9a78cbbc92822445f32cc3436ba797337b", size = 14262696, upload-time = "2025-11-16T22:51:29.402Z" }, - { url = "https://files.pythonhosted.org/packages/c8/f6/07ec185b90ec9d7217a00eeeed7383b73d7e709dae2a9a021b051542a708/numpy-2.3.5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fffe29a1ef00883599d1dc2c51aa2e5d80afe49523c261a74933df395c15c520", size = 16597350, upload-time = "2025-11-16T22:51:32.167Z" }, - { url = "https://files.pythonhosted.org/packages/75/37/164071d1dde6a1a84c9b8e5b414fa127981bad47adf3a6b7e23917e52190/numpy-2.3.5-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:8f7f0e05112916223d3f438f293abf0727e1181b5983f413dfa2fefc4098245c", size = 16040190, upload-time = "2025-11-16T22:51:35.403Z" }, - { url = "https://files.pythonhosted.org/packages/08/3c/f18b82a406b04859eb026d204e4e1773eb41c5be58410f41ffa511d114ae/numpy-2.3.5-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:2e2eb32ddb9ccb817d620ac1d8dae7c3f641c1e5f55f531a33e8ab97960a75b8", size = 18536749, upload-time = "2025-11-16T22:51:39.698Z" }, - { url = "https://files.pythonhosted.org/packages/40/79/f82f572bf44cf0023a2fe8588768e23e1592585020d638999f15158609e1/numpy-2.3.5-cp314-cp314-win32.whl", hash = "sha256:66f85ce62c70b843bab1fb14a05d5737741e74e28c7b8b5a064de10142fad248", size = 6335432, upload-time = "2025-11-16T22:51:42.476Z" }, - { url = "https://files.pythonhosted.org/packages/a3/2e/235b4d96619931192c91660805e5e49242389742a7a82c27665021db690c/numpy-2.3.5-cp314-cp314-win_amd64.whl", hash = "sha256:e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e", size = 12919388, upload-time = "2025-11-16T22:51:45.275Z" }, - { url = "https://files.pythonhosted.org/packages/07/2b/29fd75ce45d22a39c61aad74f3d718e7ab67ccf839ca8b60866054eb15f8/numpy-2.3.5-cp314-cp314-win_arm64.whl", hash = "sha256:aeffcab3d4b43712bb7a60b65f6044d444e75e563ff6180af8f98dd4b905dfd2", size = 10476651, upload-time = "2025-11-16T22:51:47.749Z" }, - { url = "https://files.pythonhosted.org/packages/17/e1/f6a721234ebd4d87084cfa68d081bcba2f5cfe1974f7de4e0e8b9b2a2ba1/numpy-2.3.5-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:17531366a2e3a9e30762c000f2c43a9aaa05728712e25c11ce1dbe700c53ad41", size = 16834503, upload-time = "2025-11-16T22:51:50.443Z" }, - { url = "https://files.pythonhosted.org/packages/5c/1c/baf7ffdc3af9c356e1c135e57ab7cf8d247931b9554f55c467efe2c69eff/numpy-2.3.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:d21644de1b609825ede2f48be98dfde4656aefc713654eeee280e37cadc4e0ad", size = 12381612, upload-time = "2025-11-16T22:51:53.609Z" }, - { url = "https://files.pythonhosted.org/packages/74/91/f7f0295151407ddc9ba34e699013c32c3c91944f9b35fcf9281163dc1468/numpy-2.3.5-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:c804e3a5aba5460c73955c955bdbd5c08c354954e9270a2c1565f62e866bdc39", size = 5210042, upload-time = "2025-11-16T22:51:56.213Z" }, - { url = "https://files.pythonhosted.org/packages/2e/3b/78aebf345104ec50dd50a4d06ddeb46a9ff5261c33bcc58b1c4f12f85ec2/numpy-2.3.5-cp314-cp314t-macosx_14_0_x86_64.whl", hash = "sha256:cc0a57f895b96ec78969c34f682c602bf8da1a0270b09bc65673df2e7638ec20", size = 6724502, upload-time = "2025-11-16T22:51:58.584Z" }, - { url = "https://files.pythonhosted.org/packages/02/c6/7c34b528740512e57ef1b7c8337ab0b4f0bddf34c723b8996c675bc2bc91/numpy-2.3.5-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:900218e456384ea676e24ea6a0417f030a3b07306d29d7ad843957b40a9d8d52", size = 14308962, upload-time = "2025-11-16T22:52:01.698Z" }, - { url = "https://files.pythonhosted.org/packages/80/35/09d433c5262bc32d725bafc619e095b6a6651caf94027a03da624146f655/numpy-2.3.5-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:09a1bea522b25109bf8e6f3027bd810f7c1085c64a0c7ce050c1676ad0ba010b", size = 16655054, upload-time = "2025-11-16T22:52:04.267Z" }, - { url = "https://files.pythonhosted.org/packages/7a/ab/6a7b259703c09a88804fa2430b43d6457b692378f6b74b356155283566ac/numpy-2.3.5-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:04822c00b5fd0323c8166d66c701dc31b7fbd252c100acd708c48f763968d6a3", size = 16091613, upload-time = "2025-11-16T22:52:08.651Z" }, - { url = "https://files.pythonhosted.org/packages/c2/88/330da2071e8771e60d1038166ff9d73f29da37b01ec3eb43cb1427464e10/numpy-2.3.5-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d6889ec4ec662a1a37eb4b4fb26b6100841804dac55bd9df579e326cdc146227", size = 18591147, upload-time = "2025-11-16T22:52:11.453Z" }, - { url = "https://files.pythonhosted.org/packages/51/41/851c4b4082402d9ea860c3626db5d5df47164a712cb23b54be028b184c1c/numpy-2.3.5-cp314-cp314t-win32.whl", hash = "sha256:93eebbcf1aafdf7e2ddd44c2923e2672e1010bddc014138b229e49725b4d6be5", size = 6479806, upload-time = "2025-11-16T22:52:14.641Z" }, - { url = "https://files.pythonhosted.org/packages/90/30/d48bde1dfd93332fa557cff1972fbc039e055a52021fbef4c2c4b1eefd17/numpy-2.3.5-cp314-cp314t-win_amd64.whl", hash = "sha256:c8a9958e88b65c3b27e22ca2a076311636850b612d6bbfb76e8d156aacde2aaf", size = 13105760, upload-time = "2025-11-16T22:52:17.975Z" }, - { url = "https://files.pythonhosted.org/packages/2d/fd/4b5eb0b3e888d86aee4d198c23acec7d214baaf17ea93c1adec94c9518b9/numpy-2.3.5-cp314-cp314t-win_arm64.whl", hash = "sha256:6203fdf9f3dc5bdaed7319ad8698e685c7a3be10819f41d32a0723e611733b42", size = 10545459, upload-time = "2025-11-16T22:52:20.55Z" }, ] [[package]] @@ -2537,6 +2268,22 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/3a/85/41280ea5d6aa58d8033b2ac6ef70849dcbe37910b34b52c6195efb06ef9e/orbax_checkpoint-0.11.33-py3-none-any.whl", hash = "sha256:b8b6c40fe307d55c490c37852fcdc7ed86435613f40ff3887298454f667b58f1", size = 696815, upload-time = "2026-02-18T04:22:28.935Z" }, ] +[[package]] +name = "ott-jax" +version = "0.6.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jax" }, + { name = "jaxopt" }, + { name = "lineax" }, + { name = "numpy" }, + { name = "optax" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/8a/46/a45f351fcfaa456a42bc318d7ee8641ff4cef758aace295ae4a27459ac3a/ott_jax-0.6.0.tar.gz", hash = "sha256:86fda8aea68a6c29c989b1be2fc8bc7e5344e6353d3e486a3edbc36364b07483", size = 233876, upload-time = "2025-11-04T18:09:27.942Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/46/78/0f66915250058498915b3944ac7eccb0da5ce1f5984664fbb6a448cf73db/ott_jax-0.6.0-py3-none-any.whl", hash = "sha256:89d7ee73ae105a56385b66a43e9acd5ae070e66d991efc56047ab47cc756f3e6", size = 309666, upload-time = "2025-11-04T18:09:26.097Z" }, +] + [[package]] name = "packaging" version = "26.0" @@ -2589,22 +2336,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a2/61/772b2e2757855e232b7ccf7cb8079a5711becb3a97f291c953def15a833f/pandas-3.0.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6bf0603c2e30e2cafac32807b06435f28741135cb8697eae8b28c7d492fc7d76", size = 11334191, upload-time = "2026-02-17T22:19:29.411Z" }, { url = "https://files.pythonhosted.org/packages/1b/08/b16c6df3ef555d8495d1d265a7963b65be166785d28f06a350913a4fac78/pandas-3.0.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6c426422973973cae1f4a23e51d4ae85974f44871b24844e4f7de752dd877098", size = 11782256, upload-time = "2026-02-17T22:19:32.34Z" }, { url = "https://files.pythonhosted.org/packages/55/80/178af0594890dee17e239fca96d3d8670ba0f5ff59b7d0439850924a9c09/pandas-3.0.1-cp313-cp313t-win_amd64.whl", hash = "sha256:b03f91ae8c10a85c1613102c7bef5229b5379f343030a3ccefeca8a33414cf35", size = 10485047, upload-time = "2026-02-17T22:19:34.605Z" }, - { url = "https://files.pythonhosted.org/packages/bb/8b/4bb774a998b97e6c2fd62a9e6cfdaae133b636fd1c468f92afb4ae9a447a/pandas-3.0.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:99d0f92ed92d3083d140bf6b97774f9f13863924cf3f52a70711f4e7588f9d0a", size = 10322465, upload-time = "2026-02-17T22:19:36.803Z" }, - { url = "https://files.pythonhosted.org/packages/72/3a/5b39b51c64159f470f1ca3b1c2a87da290657ca022f7cd11442606f607d1/pandas-3.0.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:3b66857e983208654294bb6477b8a63dee26b37bdd0eb34d010556e91261784f", size = 9910632, upload-time = "2026-02-17T22:19:39.001Z" }, - { url = "https://files.pythonhosted.org/packages/4e/f7/b449ffb3f68c11da12fc06fbf6d2fa3a41c41e17d0284d23a79e1c13a7e4/pandas-3.0.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:56cf59638bf24dc9bdf2154c81e248b3289f9a09a6d04e63608c159022352749", size = 10440535, upload-time = "2026-02-17T22:19:41.157Z" }, - { url = "https://files.pythonhosted.org/packages/55/77/6ea82043db22cb0f2bbfe7198da3544000ddaadb12d26be36e19b03a2dc5/pandas-3.0.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c1a9f55e0f46951874b863d1f3906dcb57df2d9be5c5847ba4dfb55b2c815249", size = 10893940, upload-time = "2026-02-17T22:19:43.493Z" }, - { url = "https://files.pythonhosted.org/packages/03/30/f1b502a72468c89412c1b882a08f6eed8a4ee9dc033f35f65d0663df6081/pandas-3.0.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1849f0bba9c8a2fb0f691d492b834cc8dadf617e29015c66e989448d58d011ee", size = 11442711, upload-time = "2026-02-17T22:19:46.074Z" }, - { url = "https://files.pythonhosted.org/packages/0d/f0/ebb6ddd8fc049e98cabac5c2924d14d1dda26a20adb70d41ea2e428d3ec4/pandas-3.0.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:c3d288439e11b5325b02ae6e9cc83e6805a62c40c5a6220bea9beb899c073b1c", size = 11963918, upload-time = "2026-02-17T22:19:48.838Z" }, - { url = "https://files.pythonhosted.org/packages/09/f8/8ce132104074f977f907442790eaae24e27bce3b3b454e82faa3237ff098/pandas-3.0.1-cp314-cp314-win_amd64.whl", hash = "sha256:93325b0fe372d192965f4cca88d97667f49557398bbf94abdda3bf1b591dbe66", size = 9862099, upload-time = "2026-02-17T22:19:51.081Z" }, - { url = "https://files.pythonhosted.org/packages/e6/b7/6af9aac41ef2456b768ef0ae60acf8abcebb450a52043d030a65b4b7c9bd/pandas-3.0.1-cp314-cp314-win_arm64.whl", hash = "sha256:97ca08674e3287c7148f4858b01136f8bdfe7202ad25ad04fec602dd1d29d132", size = 9185333, upload-time = "2026-02-17T22:19:53.266Z" }, - { url = "https://files.pythonhosted.org/packages/66/fc/848bb6710bc6061cb0c5badd65b92ff75c81302e0e31e496d00029fe4953/pandas-3.0.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:58eeb1b2e0fb322befcf2bbc9ba0af41e616abadb3d3414a6bc7167f6cbfce32", size = 10772664, upload-time = "2026-02-17T22:19:55.806Z" }, - { url = "https://files.pythonhosted.org/packages/69/5c/866a9bbd0f79263b4b0db6ec1a341be13a1473323f05c122388e0f15b21d/pandas-3.0.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:cd9af1276b5ca9e298bd79a26bda32fa9cc87ed095b2a9a60978d2ca058eaf87", size = 10421286, upload-time = "2026-02-17T22:19:58.091Z" }, - { url = "https://files.pythonhosted.org/packages/51/a4/2058fb84fb1cfbfb2d4a6d485e1940bb4ad5716e539d779852494479c580/pandas-3.0.1-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:94f87a04984d6b63788327cd9f79dda62b7f9043909d2440ceccf709249ca988", size = 10342050, upload-time = "2026-02-17T22:20:01.376Z" }, - { url = "https://files.pythonhosted.org/packages/22/1b/674e89996cc4be74db3c4eb09240c4bb549865c9c3f5d9b086ff8fcfbf00/pandas-3.0.1-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:85fe4c4df62e1e20f9db6ebfb88c844b092c22cd5324bdcf94bfa2fc1b391221", size = 10740055, upload-time = "2026-02-17T22:20:04.328Z" }, - { url = "https://files.pythonhosted.org/packages/d0/f8/e954b750764298c22fa4614376531fe63c521ef517e7059a51f062b87dca/pandas-3.0.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:331ca75a2f8672c365ae25c0b29e46f5ac0c6551fdace8eec4cd65e4fac271ff", size = 11357632, upload-time = "2026-02-17T22:20:06.647Z" }, - { url = "https://files.pythonhosted.org/packages/6d/02/c6e04b694ffd68568297abd03588b6d30295265176a5c01b7459d3bc35a3/pandas-3.0.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:15860b1fdb1973fffade772fdb931ccf9b2f400a3f5665aef94a00445d7d8dd5", size = 11810974, upload-time = "2026-02-17T22:20:08.946Z" }, - { url = "https://files.pythonhosted.org/packages/89/41/d7dfb63d2407f12055215070c42fc6ac41b66e90a2946cdc5e759058398b/pandas-3.0.1-cp314-cp314t-win_amd64.whl", hash = "sha256:44f1364411d5670efa692b146c748f4ed013df91ee91e9bec5677fb1fd58b937", size = 10884622, upload-time = "2026-02-17T22:20:11.711Z" }, - { url = "https://files.pythonhosted.org/packages/68/b0/34937815889fa982613775e4b97fddd13250f11012d769949c5465af2150/pandas-3.0.1-cp314-cp314t-win_arm64.whl", hash = "sha256:108dd1790337a494aa80e38def654ca3f0968cf4f362c85f44c15e471667102d", size = 9452085, upload-time = "2026-02-17T22:20:14.331Z" }, ] [[package]] @@ -2646,6 +2377,16 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523", size = 63772, upload-time = "2023-11-25T06:56:14.81Z" }, ] +[[package]] +name = "pfjax" +version = "0.0.3rc1" +source = { git = "https://github.com/DanWaxman/pfjax.git?rev=dw-sg-dpf#99ceb4ac7d4035bc3a97710e33f7ca883377d094" } +dependencies = [ + { name = "jax" }, + { name = "jaxlib" }, + { name = "ott-jax" }, +] + [[package]] name = "pillow" version = "12.1.1" @@ -2688,31 +2429,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/83/43/6f732ff85743cf746b1361b91665d9f5155e1483817f693f8d57ea93147f/pillow-12.1.1-cp313-cp313t-win32.whl", hash = "sha256:44ce27545b6efcf0fdbdceb31c9a5bdea9333e664cda58a7e674bb74608b3986", size = 6336441, upload-time = "2026-02-11T04:21:48.22Z" }, { url = "https://files.pythonhosted.org/packages/3b/44/e865ef3986611bb75bfabdf94a590016ea327833f434558801122979cd0e/pillow-12.1.1-cp313-cp313t-win_amd64.whl", hash = "sha256:a285e3eb7a5a45a2ff504e31f4a8d1b12ef62e84e5411c6804a42197c1cf586c", size = 7045383, upload-time = "2026-02-11T04:21:50.015Z" }, { url = "https://files.pythonhosted.org/packages/a8/c6/f4fb24268d0c6908b9f04143697ea18b0379490cb74ba9e8d41b898bd005/pillow-12.1.1-cp313-cp313t-win_arm64.whl", hash = "sha256:cc7d296b5ea4d29e6570dabeaed58d31c3fea35a633a69679fb03d7664f43fb3", size = 2456104, upload-time = "2026-02-11T04:21:51.633Z" }, - { url = "https://files.pythonhosted.org/packages/03/d0/bebb3ffbf31c5a8e97241476c4cf8b9828954693ce6744b4a2326af3e16b/pillow-12.1.1-cp314-cp314-ios_13_0_arm64_iphoneos.whl", hash = "sha256:417423db963cb4be8bac3fc1204fe61610f6abeed1580a7a2cbb2fbda20f12af", size = 4062652, upload-time = "2026-02-11T04:21:53.19Z" }, - { url = "https://files.pythonhosted.org/packages/2d/c0/0e16fb0addda4851445c28f8350d8c512f09de27bbb0d6d0bbf8b6709605/pillow-12.1.1-cp314-cp314-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:b957b71c6b2387610f556a7eb0828afbe40b4a98036fc0d2acfa5a44a0c2036f", size = 4138823, upload-time = "2026-02-11T04:22:03.088Z" }, - { url = "https://files.pythonhosted.org/packages/6b/fb/6170ec655d6f6bb6630a013dd7cf7bc218423d7b5fa9071bf63dc32175ae/pillow-12.1.1-cp314-cp314-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:097690ba1f2efdeb165a20469d59d8bb03c55fb6621eb2041a060ae8ea3e9642", size = 3601143, upload-time = "2026-02-11T04:22:04.909Z" }, - { url = "https://files.pythonhosted.org/packages/59/04/dc5c3f297510ba9a6837cbb318b87dd2b8f73eb41a43cc63767f65cb599c/pillow-12.1.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:2815a87ab27848db0321fb78c7f0b2c8649dee134b7f2b80c6a45c6831d75ccd", size = 5266254, upload-time = "2026-02-11T04:22:07.656Z" }, - { url = "https://files.pythonhosted.org/packages/05/30/5db1236b0d6313f03ebf97f5e17cda9ca060f524b2fcc875149a8360b21c/pillow-12.1.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:f7ed2c6543bad5a7d5530eb9e78c53132f93dfa44a28492db88b41cdab885202", size = 4657499, upload-time = "2026-02-11T04:22:09.613Z" }, - { url = "https://files.pythonhosted.org/packages/6f/18/008d2ca0eb612e81968e8be0bbae5051efba24d52debf930126d7eaacbba/pillow-12.1.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:652a2c9ccfb556235b2b501a3a7cf3742148cd22e04b5625c5fe057ea3e3191f", size = 6232137, upload-time = "2026-02-11T04:22:11.434Z" }, - { url = "https://files.pythonhosted.org/packages/70/f1/f14d5b8eeb4b2cd62b9f9f847eb6605f103df89ef619ac68f92f748614ea/pillow-12.1.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d6e4571eedf43af33d0fc233a382a76e849badbccdf1ac438841308652a08e1f", size = 8042721, upload-time = "2026-02-11T04:22:13.321Z" }, - { url = "https://files.pythonhosted.org/packages/5a/d6/17824509146e4babbdabf04d8171491fa9d776f7061ff6e727522df9bd03/pillow-12.1.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b574c51cf7d5d62e9be37ba446224b59a2da26dc4c1bb2ecbe936a4fb1a7cb7f", size = 6347798, upload-time = "2026-02-11T04:22:15.449Z" }, - { url = "https://files.pythonhosted.org/packages/d1/ee/c85a38a9ab92037a75615aba572c85ea51e605265036e00c5b67dfafbfe2/pillow-12.1.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a37691702ed687799de29a518d63d4682d9016932db66d4e90c345831b02fb4e", size = 7039315, upload-time = "2026-02-11T04:22:17.24Z" }, - { url = "https://files.pythonhosted.org/packages/ec/f3/bc8ccc6e08a148290d7523bde4d9a0d6c981db34631390dc6e6ec34cacf6/pillow-12.1.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:f95c00d5d6700b2b890479664a06e754974848afaae5e21beb4d83c106923fd0", size = 6462360, upload-time = "2026-02-11T04:22:19.111Z" }, - { url = "https://files.pythonhosted.org/packages/f6/ab/69a42656adb1d0665ab051eec58a41f169ad295cf81ad45406963105408f/pillow-12.1.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:559b38da23606e68681337ad74622c4dbba02254fc9cb4488a305dd5975c7eeb", size = 7165438, upload-time = "2026-02-11T04:22:21.041Z" }, - { url = "https://files.pythonhosted.org/packages/02/46/81f7aa8941873f0f01d4b55cc543b0a3d03ec2ee30d617a0448bf6bd6dec/pillow-12.1.1-cp314-cp314-win32.whl", hash = "sha256:03edcc34d688572014ff223c125a3f77fb08091e4607e7745002fc214070b35f", size = 6431503, upload-time = "2026-02-11T04:22:22.833Z" }, - { url = "https://files.pythonhosted.org/packages/40/72/4c245f7d1044b67affc7f134a09ea619d4895333d35322b775b928180044/pillow-12.1.1-cp314-cp314-win_amd64.whl", hash = "sha256:50480dcd74fa63b8e78235957d302d98d98d82ccbfac4c7e12108ba9ecbdba15", size = 7176748, upload-time = "2026-02-11T04:22:24.64Z" }, - { url = "https://files.pythonhosted.org/packages/e4/ad/8a87bdbe038c5c698736e3348af5c2194ffb872ea52f11894c95f9305435/pillow-12.1.1-cp314-cp314-win_arm64.whl", hash = "sha256:5cb1785d97b0c3d1d1a16bc1d710c4a0049daefc4935f3a8f31f827f4d3d2e7f", size = 2544314, upload-time = "2026-02-11T04:22:26.685Z" }, - { url = "https://files.pythonhosted.org/packages/6c/9d/efd18493f9de13b87ede7c47e69184b9e859e4427225ea962e32e56a49bc/pillow-12.1.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:1f90cff8aa76835cba5769f0b3121a22bd4eb9e6884cfe338216e557a9a548b8", size = 5268612, upload-time = "2026-02-11T04:22:29.884Z" }, - { url = "https://files.pythonhosted.org/packages/f8/f1/4f42eb2b388eb2ffc660dcb7f7b556c1015c53ebd5f7f754965ef997585b/pillow-12.1.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1f1be78ce9466a7ee64bfda57bdba0f7cc499d9794d518b854816c41bf0aa4e9", size = 4660567, upload-time = "2026-02-11T04:22:31.799Z" }, - { url = "https://files.pythonhosted.org/packages/01/54/df6ef130fa43e4b82e32624a7b821a2be1c5653a5fdad8469687a7db4e00/pillow-12.1.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:42fc1f4677106188ad9a55562bbade416f8b55456f522430fadab3cef7cd4e60", size = 6269951, upload-time = "2026-02-11T04:22:33.921Z" }, - { url = "https://files.pythonhosted.org/packages/a9/48/618752d06cc44bb4aae8ce0cd4e6426871929ed7b46215638088270d9b34/pillow-12.1.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:98edb152429ab62a1818039744d8fbb3ccab98a7c29fc3d5fcef158f3f1f68b7", size = 8074769, upload-time = "2026-02-11T04:22:35.877Z" }, - { url = "https://files.pythonhosted.org/packages/c3/bd/f1d71eb39a72fa088d938655afba3e00b38018d052752f435838961127d8/pillow-12.1.1-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d470ab1178551dd17fdba0fef463359c41aaa613cdcd7ff8373f54be629f9f8f", size = 6381358, upload-time = "2026-02-11T04:22:37.698Z" }, - { url = "https://files.pythonhosted.org/packages/64/ef/c784e20b96674ed36a5af839305f55616f8b4f8aa8eeccf8531a6e312243/pillow-12.1.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6408a7b064595afcab0a49393a413732a35788f2a5092fdc6266952ed67de586", size = 7068558, upload-time = "2026-02-11T04:22:39.597Z" }, - { url = "https://files.pythonhosted.org/packages/73/cb/8059688b74422ae61278202c4e1ad992e8a2e7375227be0a21c6b87ca8d5/pillow-12.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5d8c41325b382c07799a3682c1c258469ea2ff97103c53717b7893862d0c98ce", size = 6493028, upload-time = "2026-02-11T04:22:42.73Z" }, - { url = "https://files.pythonhosted.org/packages/c6/da/e3c008ed7d2dd1f905b15949325934510b9d1931e5df999bb15972756818/pillow-12.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:c7697918b5be27424e9ce568193efd13d925c4481dd364e43f5dff72d33e10f8", size = 7191940, upload-time = "2026-02-11T04:22:44.543Z" }, - { url = "https://files.pythonhosted.org/packages/01/4a/9202e8d11714c1fc5951f2e1ef362f2d7fbc595e1f6717971d5dd750e969/pillow-12.1.1-cp314-cp314t-win32.whl", hash = "sha256:d2912fd8114fc5545aa3a4b5576512f64c55a03f3ebcca4c10194d593d43ea36", size = 6438736, upload-time = "2026-02-11T04:22:46.347Z" }, - { url = "https://files.pythonhosted.org/packages/f3/ca/cbce2327eb9885476b3957b2e82eb12c866a8b16ad77392864ad601022ce/pillow-12.1.1-cp314-cp314t-win_amd64.whl", hash = "sha256:4ceb838d4bd9dab43e06c363cab2eebf63846d6a4aeaea283bbdfd8f1a8ed58b", size = 7182894, upload-time = "2026-02-11T04:22:48.114Z" }, - { url = "https://files.pythonhosted.org/packages/ec/d2/de599c95ba0a973b94410477f8bf0b6f0b5e67360eb89bcb1ad365258beb/pillow-12.1.1-cp314-cp314t-win_arm64.whl", hash = "sha256:7b03048319bfc6170e93bd60728a1af51d3dd7704935feb228c4d4faab35d334", size = 2546446, upload-time = "2026-02-11T04:22:50.342Z" }, ] [[package]] @@ -2781,12 +2497,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b8/b5/9182c9af3836cca61696dabe4fd1304e17bc56cb62f17439e1154f225dd3/psutil-7.2.2-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:917e891983ca3c1887b4ef36447b1e0873e70c933afc831c6b6da078ba474312", size = 184062, upload-time = "2026-01-28T18:15:04.436Z" }, { url = "https://files.pythonhosted.org/packages/16/ba/0756dca669f5a9300d0cbcbfae9a4c30e446dfc7440ffe43ded5724bfd93/psutil-7.2.2-cp313-cp313t-win_amd64.whl", hash = "sha256:ab486563df44c17f5173621c7b198955bd6b613fb87c71c161f827d3fb149a9b", size = 139893, upload-time = "2026-01-28T18:15:06.378Z" }, { url = "https://files.pythonhosted.org/packages/1c/61/8fa0e26f33623b49949346de05ec1ddaad02ed8ba64af45f40a147dbfa97/psutil-7.2.2-cp313-cp313t-win_arm64.whl", hash = "sha256:ae0aefdd8796a7737eccea863f80f81e468a1e4cf14d926bd9b6f5f2d5f90ca9", size = 135589, upload-time = "2026-01-28T18:15:08.03Z" }, - { url = "https://files.pythonhosted.org/packages/81/69/ef179ab5ca24f32acc1dac0c247fd6a13b501fd5534dbae0e05a1c48b66d/psutil-7.2.2-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:eed63d3b4d62449571547b60578c5b2c4bcccc5387148db46e0c2313dad0ee00", size = 130664, upload-time = "2026-01-28T18:15:09.469Z" }, - { url = "https://files.pythonhosted.org/packages/7b/64/665248b557a236d3fa9efc378d60d95ef56dd0a490c2cd37dafc7660d4a9/psutil-7.2.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7b6d09433a10592ce39b13d7be5a54fbac1d1228ed29abc880fb23df7cb694c9", size = 131087, upload-time = "2026-01-28T18:15:11.724Z" }, - { url = "https://files.pythonhosted.org/packages/d5/2e/e6782744700d6759ebce3043dcfa661fb61e2fb752b91cdeae9af12c2178/psutil-7.2.2-cp314-cp314t-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1fa4ecf83bcdf6e6c8f4449aff98eefb5d0604bf88cb883d7da3d8d2d909546a", size = 182383, upload-time = "2026-01-28T18:15:13.445Z" }, - { url = "https://files.pythonhosted.org/packages/57/49/0a41cefd10cb7505cdc04dab3eacf24c0c2cb158a998b8c7b1d27ee2c1f5/psutil-7.2.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e452c464a02e7dc7822a05d25db4cde564444a67e58539a00f929c51eddda0cf", size = 185210, upload-time = "2026-01-28T18:15:16.002Z" }, - { url = "https://files.pythonhosted.org/packages/dd/2c/ff9bfb544f283ba5f83ba725a3c5fec6d6b10b8f27ac1dc641c473dc390d/psutil-7.2.2-cp314-cp314t-win_amd64.whl", hash = "sha256:c7663d4e37f13e884d13994247449e9f8f574bc4655d509c3b95e9ec9e2b9dc1", size = 141228, upload-time = "2026-01-28T18:15:18.385Z" }, - { url = "https://files.pythonhosted.org/packages/f2/fc/f8d9c31db14fcec13748d373e668bc3bed94d9077dbc17fb0eebc073233c/psutil-7.2.2-cp314-cp314t-win_arm64.whl", hash = "sha256:11fe5a4f613759764e79c65cf11ebdf26e33d6dd34336f8a337aa2996d71c841", size = 136284, upload-time = "2026-01-28T18:15:19.912Z" }, { url = "https://files.pythonhosted.org/packages/e7/36/5ee6e05c9bd427237b11b3937ad82bb8ad2752d72c6969314590dd0c2f6e/psutil-7.2.2-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ed0cace939114f62738d808fdcecd4c869222507e266e574799e9c0faa17d486", size = 129090, upload-time = "2026-01-28T18:15:22.168Z" }, { url = "https://files.pythonhosted.org/packages/80/c4/f5af4c1ca8c1eeb2e92ccca14ce8effdeec651d5ab6053c589b074eda6e1/psutil-7.2.2-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:1a7b04c10f32cc88ab39cbf606e117fd74721c831c98a27dc04578deb0c16979", size = 129859, upload-time = "2026-01-28T18:15:23.795Z" }, { url = "https://files.pythonhosted.org/packages/b5/70/5d8df3b09e25bce090399cf48e452d25c935ab72dad19406c77f4e828045/psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:076a2d2f923fd4821644f5ba89f059523da90dc9014e85f8e45a5774ca5bc6f9", size = 155560, upload-time = "2026-01-28T18:15:25.976Z" }, @@ -2977,10 +2687,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/fd/50/724ed5c38c504d4e58a88a072776a1e880d970789deaeb2b9f7bd9a5141a/pywinpty-3.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:fe1f7911805127c94cf51f89ab14096c6f91ffdcacf993d2da6082b2142a2523", size = 234591, upload-time = "2026-02-04T21:52:29.821Z" }, { url = "https://files.pythonhosted.org/packages/f7/ad/90a110538696b12b39fd8758a06d70ded899308198ad2305ac68e361126e/pywinpty-3.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:3f07a6cf1c1d470d284e614733c3d0f726d2c85e78508ea10a403140c3c0c18a", size = 2112360, upload-time = "2026-02-04T21:55:33.397Z" }, { url = "https://files.pythonhosted.org/packages/44/0f/7ffa221757a220402bc79fda44044c3f2cc57338d878ab7d622add6f4581/pywinpty-3.0.3-cp313-cp313t-win_arm64.whl", hash = "sha256:15c7c0b6f8e9d87aabbaff76468dabf6e6121332c40fc1d83548d02a9d6a3759", size = 233107, upload-time = "2026-02-04T21:51:45.455Z" }, - { url = "https://files.pythonhosted.org/packages/28/88/2ff917caff61e55f38bcdb27de06ee30597881b2cae44fbba7627be015c4/pywinpty-3.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:d4b6b7b0fe0cdcd02e956bd57cfe9f4e5a06514eecf3b5ae174da4f951b58be9", size = 2113282, upload-time = "2026-02-04T21:52:08.188Z" }, - { url = "https://files.pythonhosted.org/packages/63/32/40a775343ace542cc43ece3f1d1fce454021521ecac41c4c4573081c2336/pywinpty-3.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:34789d685fc0d547ce0c8a65e5a70e56f77d732fa6e03c8f74fefb8cbb252019", size = 234207, upload-time = "2026-02-04T21:51:58.687Z" }, - { url = "https://files.pythonhosted.org/packages/8d/54/5d5e52f4cb75028104ca6faf36c10f9692389b1986d34471663b4ebebd6d/pywinpty-3.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:0c37e224a47a971d1a6e08649a1714dac4f63c11920780977829ed5c8cadead1", size = 2112910, upload-time = "2026-02-04T21:52:30.976Z" }, - { url = "https://files.pythonhosted.org/packages/0a/44/dcd184824e21d4620b06c7db9fbb15c3ad0a0f1fa2e6de79969fb82647ec/pywinpty-3.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:c4e9c3dff7d86ba81937438d5819f19f385a39d8f592d4e8af67148ceb4f6ab5", size = 233425, upload-time = "2026-02-04T21:51:56.754Z" }, ] [[package]] @@ -3009,24 +2715,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/de/94/980b50a6531b3019e45ddeada0626d45fa85cbe22300844a7983285bed3b/pyyaml-6.0.3-cp313-cp313-win32.whl", hash = "sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26", size = 137427, upload-time = "2025-09-25T21:32:32.58Z" }, { url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c", size = 154090, upload-time = "2025-09-25T21:32:33.659Z" }, { url = "https://files.pythonhosted.org/packages/73/e8/2bdf3ca2090f68bb3d75b44da7bbc71843b19c9f2b9cb9b0f4ab7a5a4329/pyyaml-6.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb", size = 140246, upload-time = "2025-09-25T21:32:34.663Z" }, - { url = "https://files.pythonhosted.org/packages/9d/8c/f4bd7f6465179953d3ac9bc44ac1a8a3e6122cf8ada906b4f96c60172d43/pyyaml-6.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac", size = 181814, upload-time = "2025-09-25T21:32:35.712Z" }, - { url = "https://files.pythonhosted.org/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310", size = 173809, upload-time = "2025-09-25T21:32:36.789Z" }, - { url = "https://files.pythonhosted.org/packages/92/b5/47e807c2623074914e29dabd16cbbdd4bf5e9b2db9f8090fa64411fc5382/pyyaml-6.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7", size = 766454, upload-time = "2025-09-25T21:32:37.966Z" }, - { url = "https://files.pythonhosted.org/packages/02/9e/e5e9b168be58564121efb3de6859c452fccde0ab093d8438905899a3a483/pyyaml-6.0.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788", size = 836355, upload-time = "2025-09-25T21:32:39.178Z" }, - { url = "https://files.pythonhosted.org/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5", size = 794175, upload-time = "2025-09-25T21:32:40.865Z" }, - { url = "https://files.pythonhosted.org/packages/dd/3f/5989debef34dc6397317802b527dbbafb2b4760878a53d4166579111411e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764", size = 755228, upload-time = "2025-09-25T21:32:42.084Z" }, - { url = "https://files.pythonhosted.org/packages/d7/ce/af88a49043cd2e265be63d083fc75b27b6ed062f5f9fd6cdc223ad62f03e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35", size = 789194, upload-time = "2025-09-25T21:32:43.362Z" }, - { url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac", size = 156429, upload-time = "2025-09-25T21:32:57.844Z" }, - { url = "https://files.pythonhosted.org/packages/f4/f4/a4541072bb9422c8a883ab55255f918fa378ecf083f5b85e87fc2b4eda1b/pyyaml-6.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3", size = 143912, upload-time = "2025-09-25T21:32:59.247Z" }, - { url = "https://files.pythonhosted.org/packages/7c/f9/07dd09ae774e4616edf6cda684ee78f97777bdd15847253637a6f052a62f/pyyaml-6.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3", size = 189108, upload-time = "2025-09-25T21:32:44.377Z" }, - { url = "https://files.pythonhosted.org/packages/4e/78/8d08c9fb7ce09ad8c38ad533c1191cf27f7ae1effe5bb9400a46d9437fcf/pyyaml-6.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba", size = 183641, upload-time = "2025-09-25T21:32:45.407Z" }, - { url = "https://files.pythonhosted.org/packages/7b/5b/3babb19104a46945cf816d047db2788bcaf8c94527a805610b0289a01c6b/pyyaml-6.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c", size = 831901, upload-time = "2025-09-25T21:32:48.83Z" }, - { url = "https://files.pythonhosted.org/packages/8b/cc/dff0684d8dc44da4d22a13f35f073d558c268780ce3c6ba1b87055bb0b87/pyyaml-6.0.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702", size = 861132, upload-time = "2025-09-25T21:32:50.149Z" }, - { url = "https://files.pythonhosted.org/packages/b1/5e/f77dc6b9036943e285ba76b49e118d9ea929885becb0a29ba8a7c75e29fe/pyyaml-6.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c", size = 839261, upload-time = "2025-09-25T21:32:51.808Z" }, - { url = "https://files.pythonhosted.org/packages/ce/88/a9db1376aa2a228197c58b37302f284b5617f56a5d959fd1763fb1675ce6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065", size = 805272, upload-time = "2025-09-25T21:32:52.941Z" }, - { url = "https://files.pythonhosted.org/packages/da/92/1446574745d74df0c92e6aa4a7b0b3130706a4142b2d1a5869f2eaa423c6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65", size = 829923, upload-time = "2025-09-25T21:32:54.537Z" }, - { url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9", size = 174062, upload-time = "2025-09-25T21:32:55.767Z" }, - { url = "https://files.pythonhosted.org/packages/f1/12/de94a39c2ef588c7e6455cfbe7343d3b2dc9d6b6b2f40c4c6565744c873d/pyyaml-6.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b", size = 149341, upload-time = "2025-09-25T21:32:56.828Z" }, ] [[package]] @@ -3072,16 +2760,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/4f/6f/55c10e2e49ad52d080dc24e37adb215e5b0d64990b57598abc2e3f01725b/pyzmq-27.1.0-cp313-cp313t-win32.whl", hash = "sha256:7ccc0700cfdf7bd487bea8d850ec38f204478681ea02a582a8da8171b7f90a1c", size = 574964, upload-time = "2025-09-08T23:08:37.178Z" }, { url = "https://files.pythonhosted.org/packages/87/4d/2534970ba63dd7c522d8ca80fb92777f362c0f321900667c615e2067cb29/pyzmq-27.1.0-cp313-cp313t-win_amd64.whl", hash = "sha256:8085a9fba668216b9b4323be338ee5437a235fe275b9d1610e422ccc279733e2", size = 641029, upload-time = "2025-09-08T23:08:40.595Z" }, { url = "https://files.pythonhosted.org/packages/f6/fa/f8aea7a28b0641f31d40dea42d7ef003fded31e184ef47db696bc74cd610/pyzmq-27.1.0-cp313-cp313t-win_arm64.whl", hash = "sha256:6bb54ca21bcfe361e445256c15eedf083f153811c37be87e0514934d6913061e", size = 561541, upload-time = "2025-09-08T23:08:42.668Z" }, - { url = "https://files.pythonhosted.org/packages/87/45/19efbb3000956e82d0331bafca5d9ac19ea2857722fa2caacefb6042f39d/pyzmq-27.1.0-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:ce980af330231615756acd5154f29813d553ea555485ae712c491cd483df6b7a", size = 1341197, upload-time = "2025-09-08T23:08:44.973Z" }, - { url = "https://files.pythonhosted.org/packages/48/43/d72ccdbf0d73d1343936296665826350cb1e825f92f2db9db3e61c2162a2/pyzmq-27.1.0-cp314-cp314t-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:1779be8c549e54a1c38f805e56d2a2e5c009d26de10921d7d51cfd1c8d4632ea", size = 897175, upload-time = "2025-09-08T23:08:46.601Z" }, - { url = "https://files.pythonhosted.org/packages/2f/2e/a483f73a10b65a9ef0161e817321d39a770b2acf8bcf3004a28d90d14a94/pyzmq-27.1.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7200bb0f03345515df50d99d3db206a0a6bee1955fbb8c453c76f5bf0e08fb96", size = 660427, upload-time = "2025-09-08T23:08:48.187Z" }, - { url = "https://files.pythonhosted.org/packages/f5/d2/5f36552c2d3e5685abe60dfa56f91169f7a2d99bbaf67c5271022ab40863/pyzmq-27.1.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:01c0e07d558b06a60773744ea6251f769cd79a41a97d11b8bf4ab8f034b0424d", size = 847929, upload-time = "2025-09-08T23:08:49.76Z" }, - { url = "https://files.pythonhosted.org/packages/c4/2a/404b331f2b7bf3198e9945f75c4c521f0c6a3a23b51f7a4a401b94a13833/pyzmq-27.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:80d834abee71f65253c91540445d37c4c561e293ba6e741b992f20a105d69146", size = 1650193, upload-time = "2025-09-08T23:08:51.7Z" }, - { url = "https://files.pythonhosted.org/packages/1c/0b/f4107e33f62a5acf60e3ded67ed33d79b4ce18de432625ce2fc5093d6388/pyzmq-27.1.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:544b4e3b7198dde4a62b8ff6685e9802a9a1ebf47e77478a5eb88eca2a82f2fd", size = 2024388, upload-time = "2025-09-08T23:08:53.393Z" }, - { url = "https://files.pythonhosted.org/packages/0d/01/add31fe76512642fd6e40e3a3bd21f4b47e242c8ba33efb6809e37076d9b/pyzmq-27.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:cedc4c68178e59a4046f97eca31b148ddcf51e88677de1ef4e78cf06c5376c9a", size = 1885316, upload-time = "2025-09-08T23:08:55.702Z" }, - { url = "https://files.pythonhosted.org/packages/c4/59/a5f38970f9bf07cee96128de79590bb354917914a9be11272cfc7ff26af0/pyzmq-27.1.0-cp314-cp314t-win32.whl", hash = "sha256:1f0b2a577fd770aa6f053211a55d1c47901f4d537389a034c690291485e5fe92", size = 587472, upload-time = "2025-09-08T23:08:58.18Z" }, - { url = "https://files.pythonhosted.org/packages/70/d8/78b1bad170f93fcf5e3536e70e8fadac55030002275c9a29e8f5719185de/pyzmq-27.1.0-cp314-cp314t-win_amd64.whl", hash = "sha256:19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0", size = 661401, upload-time = "2025-09-08T23:08:59.802Z" }, - { url = "https://files.pythonhosted.org/packages/81/d6/4bfbb40c9a0b42fc53c7cf442f6385db70b40f74a783130c5d0a5aa62228/pyzmq-27.1.0-cp314-cp314t-win_arm64.whl", hash = "sha256:dc5dbf68a7857b59473f7df42650c621d7e8923fb03fa74a526890f4d33cc4d7", size = 575170, upload-time = "2025-09-08T23:09:01.418Z" }, ] [[package]] @@ -3209,35 +2887,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/6d/61/21b8c41f68e60c8cc3b2e25644f0e3681926020f11d06ab0b78e3c6bbff1/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c5f36a861bc4b7da6516dbdf302c55313afa09b81931e8280361a4f6c9a2d27", size = 555806, upload-time = "2025-11-30T20:23:22.488Z" }, { url = "https://files.pythonhosted.org/packages/f9/39/7e067bb06c31de48de3eb200f9fc7c58982a4d3db44b07e73963e10d3be9/rpds_py-0.30.0-cp313-cp313t-win32.whl", hash = "sha256:3d4a69de7a3e50ffc214ae16d79d8fbb0922972da0356dcf4d0fdca2878559c6", size = 211341, upload-time = "2025-11-30T20:23:24.449Z" }, { url = "https://files.pythonhosted.org/packages/0a/4d/222ef0b46443cf4cf46764d9c630f3fe4abaa7245be9417e56e9f52b8f65/rpds_py-0.30.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f14fc5df50a716f7ece6a80b6c78bb35ea2ca47c499e422aa4463455dd96d56d", size = 225768, upload-time = "2025-11-30T20:23:25.908Z" }, - { url = "https://files.pythonhosted.org/packages/86/81/dad16382ebbd3d0e0328776d8fd7ca94220e4fa0798d1dc5e7da48cb3201/rpds_py-0.30.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:68f19c879420aa08f61203801423f6cd5ac5f0ac4ac82a2368a9fcd6a9a075e0", size = 362099, upload-time = "2025-11-30T20:23:27.316Z" }, - { url = "https://files.pythonhosted.org/packages/2b/60/19f7884db5d5603edf3c6bce35408f45ad3e97e10007df0e17dd57af18f8/rpds_py-0.30.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ec7c4490c672c1a0389d319b3a9cfcd098dcdc4783991553c332a15acf7249be", size = 353192, upload-time = "2025-11-30T20:23:29.151Z" }, - { url = "https://files.pythonhosted.org/packages/bf/c4/76eb0e1e72d1a9c4703c69607cec123c29028bff28ce41588792417098ac/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f251c812357a3fed308d684a5079ddfb9d933860fc6de89f2b7ab00da481e65f", size = 384080, upload-time = "2025-11-30T20:23:30.785Z" }, - { url = "https://files.pythonhosted.org/packages/72/87/87ea665e92f3298d1b26d78814721dc39ed8d2c74b86e83348d6b48a6f31/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ac98b175585ecf4c0348fd7b29c3864bda53b805c773cbf7bfdaffc8070c976f", size = 394841, upload-time = "2025-11-30T20:23:32.209Z" }, - { url = "https://files.pythonhosted.org/packages/77/ad/7783a89ca0587c15dcbf139b4a8364a872a25f861bdb88ed99f9b0dec985/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3e62880792319dbeb7eb866547f2e35973289e7d5696c6e295476448f5b63c87", size = 516670, upload-time = "2025-11-30T20:23:33.742Z" }, - { url = "https://files.pythonhosted.org/packages/5b/3c/2882bdac942bd2172f3da574eab16f309ae10a3925644e969536553cb4ee/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4e7fc54e0900ab35d041b0601431b0a0eb495f0851a0639b6ef90f7741b39a18", size = 408005, upload-time = "2025-11-30T20:23:35.253Z" }, - { url = "https://files.pythonhosted.org/packages/ce/81/9a91c0111ce1758c92516a3e44776920b579d9a7c09b2b06b642d4de3f0f/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47e77dc9822d3ad616c3d5759ea5631a75e5809d5a28707744ef79d7a1bcfcad", size = 382112, upload-time = "2025-11-30T20:23:36.842Z" }, - { url = "https://files.pythonhosted.org/packages/cf/8e/1da49d4a107027e5fbc64daeab96a0706361a2918da10cb41769244b805d/rpds_py-0.30.0-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:b4dc1a6ff022ff85ecafef7979a2c6eb423430e05f1165d6688234e62ba99a07", size = 399049, upload-time = "2025-11-30T20:23:38.343Z" }, - { url = "https://files.pythonhosted.org/packages/df/5a/7ee239b1aa48a127570ec03becbb29c9d5a9eb092febbd1699d567cae859/rpds_py-0.30.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4559c972db3a360808309e06a74628b95eaccbf961c335c8fe0d590cf587456f", size = 415661, upload-time = "2025-11-30T20:23:40.263Z" }, - { url = "https://files.pythonhosted.org/packages/70/ea/caa143cf6b772f823bc7929a45da1fa83569ee49b11d18d0ada7f5ee6fd6/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:0ed177ed9bded28f8deb6ab40c183cd1192aa0de40c12f38be4d59cd33cb5c65", size = 565606, upload-time = "2025-11-30T20:23:42.186Z" }, - { url = "https://files.pythonhosted.org/packages/64/91/ac20ba2d69303f961ad8cf55bf7dbdb4763f627291ba3d0d7d67333cced9/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:ad1fa8db769b76ea911cb4e10f049d80bf518c104f15b3edb2371cc65375c46f", size = 591126, upload-time = "2025-11-30T20:23:44.086Z" }, - { url = "https://files.pythonhosted.org/packages/21/20/7ff5f3c8b00c8a95f75985128c26ba44503fb35b8e0259d812766ea966c7/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:46e83c697b1f1c72b50e5ee5adb4353eef7406fb3f2043d64c33f20ad1c2fc53", size = 553371, upload-time = "2025-11-30T20:23:46.004Z" }, - { url = "https://files.pythonhosted.org/packages/72/c7/81dadd7b27c8ee391c132a6b192111ca58d866577ce2d9b0ca157552cce0/rpds_py-0.30.0-cp314-cp314-win32.whl", hash = "sha256:ee454b2a007d57363c2dfd5b6ca4a5d7e2c518938f8ed3b706e37e5d470801ed", size = 215298, upload-time = "2025-11-30T20:23:47.696Z" }, - { url = "https://files.pythonhosted.org/packages/3e/d2/1aaac33287e8cfb07aab2e6b8ac1deca62f6f65411344f1433c55e6f3eb8/rpds_py-0.30.0-cp314-cp314-win_amd64.whl", hash = "sha256:95f0802447ac2d10bcc69f6dc28fe95fdf17940367b21d34e34c737870758950", size = 228604, upload-time = "2025-11-30T20:23:49.501Z" }, - { url = "https://files.pythonhosted.org/packages/e8/95/ab005315818cc519ad074cb7784dae60d939163108bd2b394e60dc7b5461/rpds_py-0.30.0-cp314-cp314-win_arm64.whl", hash = "sha256:613aa4771c99f03346e54c3f038e4cc574ac09a3ddfb0e8878487335e96dead6", size = 222391, upload-time = "2025-11-30T20:23:50.96Z" }, - { url = "https://files.pythonhosted.org/packages/9e/68/154fe0194d83b973cdedcdcc88947a2752411165930182ae41d983dcefa6/rpds_py-0.30.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:7e6ecfcb62edfd632e56983964e6884851786443739dbfe3582947e87274f7cb", size = 364868, upload-time = "2025-11-30T20:23:52.494Z" }, - { url = "https://files.pythonhosted.org/packages/83/69/8bbc8b07ec854d92a8b75668c24d2abcb1719ebf890f5604c61c9369a16f/rpds_py-0.30.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a1d0bc22a7cdc173fedebb73ef81e07faef93692b8c1ad3733b67e31e1b6e1b8", size = 353747, upload-time = "2025-11-30T20:23:54.036Z" }, - { url = "https://files.pythonhosted.org/packages/ab/00/ba2e50183dbd9abcce9497fa5149c62b4ff3e22d338a30d690f9af970561/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d08f00679177226c4cb8c5265012eea897c8ca3b93f429e546600c971bcbae7", size = 383795, upload-time = "2025-11-30T20:23:55.556Z" }, - { url = "https://files.pythonhosted.org/packages/05/6f/86f0272b84926bcb0e4c972262f54223e8ecc556b3224d281e6598fc9268/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5965af57d5848192c13534f90f9dd16464f3c37aaf166cc1da1cae1fd5a34898", size = 393330, upload-time = "2025-11-30T20:23:57.033Z" }, - { url = "https://files.pythonhosted.org/packages/cb/e9/0e02bb2e6dc63d212641da45df2b0bf29699d01715913e0d0f017ee29438/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a4e86e34e9ab6b667c27f3211ca48f73dba7cd3d90f8d5b11be56e5dbc3fb4e", size = 518194, upload-time = "2025-11-30T20:23:58.637Z" }, - { url = "https://files.pythonhosted.org/packages/ee/ca/be7bca14cf21513bdf9c0606aba17d1f389ea2b6987035eb4f62bd923f25/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5d3e6b26f2c785d65cc25ef1e5267ccbe1b069c5c21b8cc724efee290554419", size = 408340, upload-time = "2025-11-30T20:24:00.2Z" }, - { url = "https://files.pythonhosted.org/packages/c2/c7/736e00ebf39ed81d75544c0da6ef7b0998f8201b369acf842f9a90dc8fce/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:626a7433c34566535b6e56a1b39a7b17ba961e97ce3b80ec62e6f1312c025551", size = 383765, upload-time = "2025-11-30T20:24:01.759Z" }, - { url = "https://files.pythonhosted.org/packages/4a/3f/da50dfde9956aaf365c4adc9533b100008ed31aea635f2b8d7b627e25b49/rpds_py-0.30.0-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:acd7eb3f4471577b9b5a41baf02a978e8bdeb08b4b355273994f8b87032000a8", size = 396834, upload-time = "2025-11-30T20:24:03.687Z" }, - { url = "https://files.pythonhosted.org/packages/4e/00/34bcc2565b6020eab2623349efbdec810676ad571995911f1abdae62a3a0/rpds_py-0.30.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fe5fa731a1fa8a0a56b0977413f8cacac1768dad38d16b3a296712709476fbd5", size = 415470, upload-time = "2025-11-30T20:24:05.232Z" }, - { url = "https://files.pythonhosted.org/packages/8c/28/882e72b5b3e6f718d5453bd4d0d9cf8df36fddeb4ddbbab17869d5868616/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:74a3243a411126362712ee1524dfc90c650a503502f135d54d1b352bd01f2404", size = 565630, upload-time = "2025-11-30T20:24:06.878Z" }, - { url = "https://files.pythonhosted.org/packages/3b/97/04a65539c17692de5b85c6e293520fd01317fd878ea1995f0367d4532fb1/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:3e8eeb0544f2eb0d2581774be4c3410356eba189529a6b3e36bbbf9696175856", size = 591148, upload-time = "2025-11-30T20:24:08.445Z" }, - { url = "https://files.pythonhosted.org/packages/85/70/92482ccffb96f5441aab93e26c4d66489eb599efdcf96fad90c14bbfb976/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:dbd936cde57abfee19ab3213cf9c26be06d60750e60a8e4dd85d1ab12c8b1f40", size = 556030, upload-time = "2025-11-30T20:24:10.956Z" }, - { url = "https://files.pythonhosted.org/packages/20/53/7c7e784abfa500a2b6b583b147ee4bb5a2b3747a9166bab52fec4b5b5e7d/rpds_py-0.30.0-cp314-cp314t-win32.whl", hash = "sha256:dc824125c72246d924f7f796b4f63c1e9dc810c7d9e2355864b3c3a73d59ade0", size = 211570, upload-time = "2025-11-30T20:24:12.735Z" }, - { url = "https://files.pythonhosted.org/packages/d0/02/fa464cdfbe6b26e0600b62c528b72d8608f5cc49f96b8d6e38c95d60c676/rpds_py-0.30.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27f4b0e92de5bfbc6f86e43959e6edd1425c33b5e69aab0984a72047f2bcf1e3", size = 226532, upload-time = "2025-11-30T20:24:14.634Z" }, ] [[package]] @@ -3295,18 +2944,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/fe/56/a85473cd75f200c9759e3a5f0bcab2d116c92a8a02ee08ccd73b870f8bb4/scikit_learn-1.8.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:80832434a6cc114f5219211eec13dcbc16c2bac0e31ef64c6d346cde3cf054cb", size = 8925045, upload-time = "2025-12-10T07:08:22.11Z" }, { url = "https://files.pythonhosted.org/packages/cc/b7/64d8cfa896c64435ae57f4917a548d7ac7a44762ff9802f75a79b77cb633/scikit_learn-1.8.0-cp313-cp313t-win_amd64.whl", hash = "sha256:ee787491dbfe082d9c3013f01f5991658b0f38aa8177e4cd4bf434c58f551702", size = 8507994, upload-time = "2025-12-10T07:08:23.943Z" }, { url = "https://files.pythonhosted.org/packages/5e/37/e192ea709551799379958b4c4771ec507347027bb7c942662c7fbeba31cb/scikit_learn-1.8.0-cp313-cp313t-win_arm64.whl", hash = "sha256:bf97c10a3f5a7543f9b88cbf488d33d175e9146115a451ae34568597ba33dcde", size = 7869518, upload-time = "2025-12-10T07:08:25.71Z" }, - { url = "https://files.pythonhosted.org/packages/24/05/1af2c186174cc92dcab2233f327336058c077d38f6fe2aceb08e6ab4d509/scikit_learn-1.8.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:c22a2da7a198c28dd1a6e1136f19c830beab7fdca5b3e5c8bba8394f8a5c45b3", size = 8528667, upload-time = "2025-12-10T07:08:27.541Z" }, - { url = "https://files.pythonhosted.org/packages/a8/25/01c0af38fe969473fb292bba9dc2b8f9b451f3112ff242c647fee3d0dfe7/scikit_learn-1.8.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:6b595b07a03069a2b1740dc08c2299993850ea81cce4fe19b2421e0c970de6b7", size = 8066524, upload-time = "2025-12-10T07:08:29.822Z" }, - { url = "https://files.pythonhosted.org/packages/be/ce/a0623350aa0b68647333940ee46fe45086c6060ec604874e38e9ab7d8e6c/scikit_learn-1.8.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:29ffc74089f3d5e87dfca4c2c8450f88bdc61b0fc6ed5d267f3988f19a1309f6", size = 8657133, upload-time = "2025-12-10T07:08:31.865Z" }, - { url = "https://files.pythonhosted.org/packages/b8/cb/861b41341d6f1245e6ca80b1c1a8c4dfce43255b03df034429089ca2a2c5/scikit_learn-1.8.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fb65db5d7531bccf3a4f6bec3462223bea71384e2cda41da0f10b7c292b9e7c4", size = 8923223, upload-time = "2025-12-10T07:08:34.166Z" }, - { url = "https://files.pythonhosted.org/packages/76/18/a8def8f91b18cd1ba6e05dbe02540168cb24d47e8dcf69e8d00b7da42a08/scikit_learn-1.8.0-cp314-cp314-win_amd64.whl", hash = "sha256:56079a99c20d230e873ea40753102102734c5953366972a71d5cb39a32bc40c6", size = 8096518, upload-time = "2025-12-10T07:08:36.339Z" }, - { url = "https://files.pythonhosted.org/packages/d1/77/482076a678458307f0deb44e29891d6022617b2a64c840c725495bee343f/scikit_learn-1.8.0-cp314-cp314-win_arm64.whl", hash = "sha256:3bad7565bc9cf37ce19a7c0d107742b320c1285df7aab1a6e2d28780df167242", size = 7754546, upload-time = "2025-12-10T07:08:38.128Z" }, - { url = "https://files.pythonhosted.org/packages/2d/d1/ef294ca754826daa043b2a104e59960abfab4cf653891037d19dd5b6f3cf/scikit_learn-1.8.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:4511be56637e46c25721e83d1a9cea9614e7badc7040c4d573d75fbe257d6fd7", size = 8848305, upload-time = "2025-12-10T07:08:41.013Z" }, - { url = "https://files.pythonhosted.org/packages/5b/e2/b1f8b05138ee813b8e1a4149f2f0d289547e60851fd1bb268886915adbda/scikit_learn-1.8.0-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:a69525355a641bf8ef136a7fa447672fb54fe8d60cab5538d9eb7c6438543fb9", size = 8432257, upload-time = "2025-12-10T07:08:42.873Z" }, - { url = "https://files.pythonhosted.org/packages/26/11/c32b2138a85dcb0c99f6afd13a70a951bfdff8a6ab42d8160522542fb647/scikit_learn-1.8.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c2656924ec73e5939c76ac4c8b026fc203b83d8900362eb2599d8aee80e4880f", size = 8678673, upload-time = "2025-12-10T07:08:45.362Z" }, - { url = "https://files.pythonhosted.org/packages/c7/57/51f2384575bdec454f4fe4e7a919d696c9ebce914590abf3e52d47607ab8/scikit_learn-1.8.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:15fc3b5d19cc2be65404786857f2e13c70c83dd4782676dd6814e3b89dc8f5b9", size = 8922467, upload-time = "2025-12-10T07:08:47.408Z" }, - { url = "https://files.pythonhosted.org/packages/35/4d/748c9e2872637a57981a04adc038dacaa16ba8ca887b23e34953f0b3f742/scikit_learn-1.8.0-cp314-cp314t-win_amd64.whl", hash = "sha256:00d6f1d66fbcf4eba6e356e1420d33cc06c70a45bb1363cd6f6a8e4ebbbdece2", size = 8774395, upload-time = "2025-12-10T07:08:49.337Z" }, - { url = "https://files.pythonhosted.org/packages/60/22/d7b2ebe4704a5e50790ba089d5c2ae308ab6bb852719e6c3bd4f04c3a363/scikit_learn-1.8.0-cp314-cp314t-win_arm64.whl", hash = "sha256:f28dd15c6bb0b66ba09728cf09fd8736c304be29409bd8445a080c1280619e8c", size = 8002647, upload-time = "2025-12-10T07:08:51.601Z" }, ] [[package]] @@ -3348,26 +2985,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/90/b8/4f0f5cf0c5ea4d7548424e6533e6b17d164f34a6e2fb2e43ffebb6697b06/scipy-1.17.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:cacbaddd91fcffde703934897c5cd2c7cb0371fac195d383f4e1f1c5d3f3bd04", size = 37438061, upload-time = "2026-01-10T21:28:19.684Z" }, { url = "https://files.pythonhosted.org/packages/f9/cc/2bd59140ed3b2fa2882fb15da0a9cb1b5a6443d67cfd0d98d4cec83a57ec/scipy-1.17.0-cp313-cp313t-win_amd64.whl", hash = "sha256:edce1a1cf66298cccdc48a1bdf8fb10a3bf58e8b58d6c3883dd1530e103f87c0", size = 36328593, upload-time = "2026-01-10T21:28:28.007Z" }, { url = "https://files.pythonhosted.org/packages/13/1b/c87cc44a0d2c7aaf0f003aef2904c3d097b422a96c7e7c07f5efd9073c1b/scipy-1.17.0-cp313-cp313t-win_arm64.whl", hash = "sha256:30509da9dbec1c2ed8f168b8d8aa853bc6723fede1dbc23c7d43a56f5ab72a67", size = 24625083, upload-time = "2026-01-10T21:28:35.188Z" }, - { url = "https://files.pythonhosted.org/packages/1a/2d/51006cd369b8e7879e1c630999a19d1fbf6f8b5ed3e33374f29dc87e53b3/scipy-1.17.0-cp314-cp314-macosx_10_14_x86_64.whl", hash = "sha256:c17514d11b78be8f7e6331b983a65a7f5ca1fd037b95e27b280921fe5606286a", size = 31346803, upload-time = "2026-01-10T21:28:57.24Z" }, - { url = "https://files.pythonhosted.org/packages/d6/2e/2349458c3ce445f53a6c93d4386b1c4c5c0c540917304c01222ff95ff317/scipy-1.17.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:4e00562e519c09da34c31685f6acc3aa384d4d50604db0f245c14e1b4488bfa2", size = 27967182, upload-time = "2026-01-10T21:29:04.107Z" }, - { url = "https://files.pythonhosted.org/packages/5e/7c/df525fbfa77b878d1cfe625249529514dc02f4fd5f45f0f6295676a76528/scipy-1.17.0-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:f7df7941d71314e60a481e02d5ebcb3f0185b8d799c70d03d8258f6c80f3d467", size = 20139125, upload-time = "2026-01-10T21:29:10.179Z" }, - { url = "https://files.pythonhosted.org/packages/33/11/fcf9d43a7ed1234d31765ec643b0515a85a30b58eddccc5d5a4d12b5f194/scipy-1.17.0-cp314-cp314-macosx_14_0_x86_64.whl", hash = "sha256:aabf057c632798832f071a8dde013c2e26284043934f53b00489f1773b33527e", size = 22443554, upload-time = "2026-01-10T21:29:15.888Z" }, - { url = "https://files.pythonhosted.org/packages/80/5c/ea5d239cda2dd3d31399424967a24d556cf409fbea7b5b21412b0fd0a44f/scipy-1.17.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a38c3337e00be6fd8a95b4ed66b5d988bac4ec888fd922c2ea9fe5fb1603dd67", size = 32757834, upload-time = "2026-01-10T21:29:23.406Z" }, - { url = "https://files.pythonhosted.org/packages/b8/7e/8c917cc573310e5dc91cbeead76f1b600d3fb17cf0969db02c9cf92e3cfa/scipy-1.17.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:00fb5f8ec8398ad90215008d8b6009c9db9fa924fd4c7d6be307c6f945f9cd73", size = 34995775, upload-time = "2026-01-10T21:29:31.915Z" }, - { url = "https://files.pythonhosted.org/packages/c5/43/176c0c3c07b3f7df324e7cdd933d3e2c4898ca202b090bd5ba122f9fe270/scipy-1.17.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:f2a4942b0f5f7c23c7cd641a0ca1955e2ae83dedcff537e3a0259096635e186b", size = 34841240, upload-time = "2026-01-10T21:29:39.995Z" }, - { url = "https://files.pythonhosted.org/packages/44/8c/d1f5f4b491160592e7f084d997de53a8e896a3ac01cd07e59f43ca222744/scipy-1.17.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:dbf133ced83889583156566d2bdf7a07ff89228fe0c0cb727f777de92092ec6b", size = 37394463, upload-time = "2026-01-10T21:29:48.723Z" }, - { url = "https://files.pythonhosted.org/packages/9f/ec/42a6657f8d2d087e750e9a5dde0b481fd135657f09eaf1cf5688bb23c338/scipy-1.17.0-cp314-cp314-win_amd64.whl", hash = "sha256:3625c631a7acd7cfd929e4e31d2582cf00f42fcf06011f59281271746d77e061", size = 37053015, upload-time = "2026-01-10T21:30:51.418Z" }, - { url = "https://files.pythonhosted.org/packages/27/58/6b89a6afd132787d89a362d443a7bddd511b8f41336a1ae47f9e4f000dc4/scipy-1.17.0-cp314-cp314-win_arm64.whl", hash = "sha256:9244608d27eafe02b20558523ba57f15c689357c85bdcfe920b1828750aa26eb", size = 24951312, upload-time = "2026-01-10T21:30:56.771Z" }, - { url = "https://files.pythonhosted.org/packages/e9/01/f58916b9d9ae0112b86d7c3b10b9e685625ce6e8248df139d0fcb17f7397/scipy-1.17.0-cp314-cp314t-macosx_10_14_x86_64.whl", hash = "sha256:2b531f57e09c946f56ad0b4a3b2abee778789097871fc541e267d2eca081cff1", size = 31706502, upload-time = "2026-01-10T21:29:56.326Z" }, - { url = "https://files.pythonhosted.org/packages/59/8e/2912a87f94a7d1f8b38aabc0faf74b82d3b6c9e22be991c49979f0eceed8/scipy-1.17.0-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:13e861634a2c480bd237deb69333ac79ea1941b94568d4b0efa5db5e263d4fd1", size = 28380854, upload-time = "2026-01-10T21:30:01.554Z" }, - { url = "https://files.pythonhosted.org/packages/bd/1c/874137a52dddab7d5d595c1887089a2125d27d0601fce8c0026a24a92a0b/scipy-1.17.0-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:eb2651271135154aa24f6481cbae5cc8af1f0dd46e6533fb7b56aa9727b6a232", size = 20552752, upload-time = "2026-01-10T21:30:05.93Z" }, - { url = "https://files.pythonhosted.org/packages/3f/f0/7518d171cb735f6400f4576cf70f756d5b419a07fe1867da34e2c2c9c11b/scipy-1.17.0-cp314-cp314t-macosx_14_0_x86_64.whl", hash = "sha256:c5e8647f60679790c2f5c76be17e2e9247dc6b98ad0d3b065861e082c56e078d", size = 22803972, upload-time = "2026-01-10T21:30:10.651Z" }, - { url = "https://files.pythonhosted.org/packages/7c/74/3498563a2c619e8a3ebb4d75457486c249b19b5b04a30600dfd9af06bea5/scipy-1.17.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5fb10d17e649e1446410895639f3385fd2bf4c3c7dfc9bea937bddcbc3d7b9ba", size = 32829770, upload-time = "2026-01-10T21:30:16.359Z" }, - { url = "https://files.pythonhosted.org/packages/48/d1/7b50cedd8c6c9d6f706b4b36fa8544d829c712a75e370f763b318e9638c1/scipy-1.17.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8547e7c57f932e7354a2319fab613981cde910631979f74c9b542bb167a8b9db", size = 35051093, upload-time = "2026-01-10T21:30:22.987Z" }, - { url = "https://files.pythonhosted.org/packages/e2/82/a2d684dfddb87ba1b3ea325df7c3293496ee9accb3a19abe9429bce94755/scipy-1.17.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:33af70d040e8af9d5e7a38b5ed3b772adddd281e3062ff23fec49e49681c38cf", size = 34909905, upload-time = "2026-01-10T21:30:28.704Z" }, - { url = "https://files.pythonhosted.org/packages/ef/5e/e565bd73991d42023eb82bb99e51c5b3d9e2c588ca9d4b3e2cc1d3ca62a6/scipy-1.17.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:f9eb55bb97d00f8b7ab95cb64f873eb0bf54d9446264d9f3609130381233483f", size = 37457743, upload-time = "2026-01-10T21:30:34.819Z" }, - { url = "https://files.pythonhosted.org/packages/58/a8/a66a75c3d8f1fb2b83f66007d6455a06a6f6cf5618c3dc35bc9b69dd096e/scipy-1.17.0-cp314-cp314t-win_amd64.whl", hash = "sha256:1ff269abf702f6c7e67a4b7aad981d42871a11b9dd83c58d2d2ea624efbd1088", size = 37098574, upload-time = "2026-01-10T21:30:40.782Z" }, - { url = "https://files.pythonhosted.org/packages/56/a5/df8f46ef7da168f1bc52cd86e09a9de5c6f19cc1da04454d51b7d4f43408/scipy-1.17.0-cp314-cp314t-win_arm64.whl", hash = "sha256:031121914e295d9791319a1875444d55079885bbae5bdc9c5e0f2ee5f09d34ff", size = 25246266, upload-time = "2026-01-10T21:30:45.923Z" }, ] [[package]] @@ -3519,15 +3136,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/00/01/3c27962f7258ad0bb552c3cd324fa2e01f746c8b6e81bd25d468f72204e8/tensorstore-0.1.81-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b218a6fe09c72c002f2c6480fc58b78cdbba8bb9c6f3a0d7dd1f70625cb37995", size = 19044489, upload-time = "2026-02-06T18:55:44.957Z" }, { url = "https://files.pythonhosted.org/packages/2c/ea/fe0f14a1da96d6e0aa6c24d6c31f3ce4b203f8e8a1a2e359489e52b33400/tensorstore-0.1.81-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f33e7c11035c14dad01aeba012051643110cbb95c239e512106fe1be692c98b6", size = 21052658, upload-time = "2026-02-06T18:55:47.138Z" }, { url = "https://files.pythonhosted.org/packages/e3/e2/cc189d799982f02c200b22405c4d3f28845df6321de2ac3a35ae087758ed/tensorstore-0.1.81-cp313-cp313-win_amd64.whl", hash = "sha256:b55126bcf084cc5fe0151bf465f3a5dedb5b5da0133d01227f75d0e71f9cfae5", size = 13226848, upload-time = "2026-02-06T18:55:49.631Z" }, - { url = "https://files.pythonhosted.org/packages/89/b0/0ca436391f832fad365977623f3c08c4fbbf553fd9a112604aa106646654/tensorstore-0.1.81-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:a48c23e4df50681d8f4f365b08a0beb114ab210accbde9f34d37fd7b45c31005", size = 16525537, upload-time = "2026-02-06T18:55:51.708Z" }, - { url = "https://files.pythonhosted.org/packages/8a/02/c10052b86cf8d47b4cf41e5f139b4003c69bb69e506759b0eb87b873d213/tensorstore-0.1.81-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0be0ce646263820f3d4c9ba738d8e9be7da241cbe093ca2fd02e25023344347c", size = 14547490, upload-time = "2026-02-06T18:55:53.899Z" }, - { url = "https://files.pythonhosted.org/packages/01/d1/bd86c46367624522967e896ca45d77ba9085de3f15081fdad6576ba70aa9/tensorstore-0.1.81-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:93996e756dce82589f5a19e27b4e7c0b5b40221a7e41ddce46dc13d378dbd157", size = 19050938, upload-time = "2026-02-06T18:55:56.123Z" }, - { url = "https://files.pythonhosted.org/packages/11/a2/59a8e9a33cd9e17461f918bda4a20712ed3c51c52e0e42b2f673441bc90d/tensorstore-0.1.81-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:444c088919a739c20ca1f87935d72de4fd87605eb2c0f093b8d49251b7884aef", size = 21055275, upload-time = "2026-02-06T18:55:58.259Z" }, - { url = "https://files.pythonhosted.org/packages/c5/ec/2988f210729b523975b1bee030cabd64b256943c08463331598f1e03bd4f/tensorstore-0.1.81-cp314-cp314-win_amd64.whl", hash = "sha256:f7aa0a3a470c4d832faff7d77dd688b1d352b718d110c95ceba54ec637ca3ffa", size = 13614713, upload-time = "2026-02-06T18:56:00.291Z" }, - { url = "https://files.pythonhosted.org/packages/ae/5d/60e990df3f1dc57c33644375a0eccb906a79fd8a5e2d81238f856c65ad7f/tensorstore-0.1.81-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:6c36d8a827120aa15e50ec5c36dd7e73978d86ba4f46d073fb648d8dda3948e9", size = 16605091, upload-time = "2026-02-06T18:56:02.807Z" }, - { url = "https://files.pythonhosted.org/packages/85/22/f599576815227735d3e34f86f05a8b39d8b15fd979d0029383ebae23978d/tensorstore-0.1.81-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:3c31d831707c4ff3c6ecdcba129f7c39e982572837b2f93e02ccb83fc8581bca", size = 14631573, upload-time = "2026-02-06T18:56:04.892Z" }, - { url = "https://files.pythonhosted.org/packages/cb/76/b5d0b424b7af057a3d4de3f312eba9ddf8a3c750a766b42e0b7f6c2ebef0/tensorstore-0.1.81-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9fba383f108d7450bf9a03487ac7fa3bb2c3080c91cee9d2da3bb217b560846b", size = 19065251, upload-time = "2026-02-06T18:56:06.972Z" }, - { url = "https://files.pythonhosted.org/packages/54/6c/0f113eae73b1e8eb2f712cf5f1efd269452f0f0045158fae43ce7b4701b4/tensorstore-0.1.81-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f88c52f592e2982682045199cabf360462146749d48b7be2969cd640e877c6c3", size = 21066488, upload-time = "2026-02-06T18:56:10.236Z" }, ] [[package]] @@ -3713,18 +3321,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/15/c0/0be24758891ef825f2065cd5db8741aaddabe3e248ee6acc5e8a80f04005/uvloop-0.22.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0530a5fbad9c9e4ee3f2b33b148c6a64d47bbad8000ea63704fa8260f4cf728e", size = 4366890, upload-time = "2025-10-16T22:16:40.547Z" }, { url = "https://files.pythonhosted.org/packages/d2/53/8369e5219a5855869bcee5f4d317f6da0e2c669aecf0ef7d371e3d084449/uvloop-0.22.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bc5ef13bbc10b5335792360623cc378d52d7e62c2de64660616478c32cd0598e", size = 4119472, upload-time = "2025-10-16T22:16:41.694Z" }, { url = "https://files.pythonhosted.org/packages/f8/ba/d69adbe699b768f6b29a5eec7b47dd610bd17a69de51b251126a801369ea/uvloop-0.22.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:1f38ec5e3f18c8a10ded09742f7fb8de0108796eb673f30ce7762ce1b8550cad", size = 4239051, upload-time = "2025-10-16T22:16:43.224Z" }, - { url = "https://files.pythonhosted.org/packages/90/cd/b62bdeaa429758aee8de8b00ac0dd26593a9de93d302bff3d21439e9791d/uvloop-0.22.1-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:3879b88423ec7e97cd4eba2a443aa26ed4e59b45e6b76aabf13fe2f27023a142", size = 1362067, upload-time = "2025-10-16T22:16:44.503Z" }, - { url = "https://files.pythonhosted.org/packages/0d/f8/a132124dfda0777e489ca86732e85e69afcd1ff7686647000050ba670689/uvloop-0.22.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:4baa86acedf1d62115c1dc6ad1e17134476688f08c6efd8a2ab076e815665c74", size = 752423, upload-time = "2025-10-16T22:16:45.968Z" }, - { url = "https://files.pythonhosted.org/packages/a3/94/94af78c156f88da4b3a733773ad5ba0b164393e357cc4bd0ab2e2677a7d6/uvloop-0.22.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:297c27d8003520596236bdb2335e6b3f649480bd09e00d1e3a99144b691d2a35", size = 4272437, upload-time = "2025-10-16T22:16:47.451Z" }, - { url = "https://files.pythonhosted.org/packages/b5/35/60249e9fd07b32c665192cec7af29e06c7cd96fa1d08b84f012a56a0b38e/uvloop-0.22.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c1955d5a1dd43198244d47664a5858082a3239766a839b2102a269aaff7a4e25", size = 4292101, upload-time = "2025-10-16T22:16:49.318Z" }, - { url = "https://files.pythonhosted.org/packages/02/62/67d382dfcb25d0a98ce73c11ed1a6fba5037a1a1d533dcbb7cab033a2636/uvloop-0.22.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:b31dc2fccbd42adc73bc4e7cdbae4fc5086cf378979e53ca5d0301838c5682c6", size = 4114158, upload-time = "2025-10-16T22:16:50.517Z" }, - { url = "https://files.pythonhosted.org/packages/f0/7a/f1171b4a882a5d13c8b7576f348acfe6074d72eaf52cccef752f748d4a9f/uvloop-0.22.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:93f617675b2d03af4e72a5333ef89450dfaa5321303ede6e67ba9c9d26878079", size = 4177360, upload-time = "2025-10-16T22:16:52.646Z" }, - { url = "https://files.pythonhosted.org/packages/79/7b/b01414f31546caf0919da80ad57cbfe24c56b151d12af68cee1b04922ca8/uvloop-0.22.1-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:37554f70528f60cad66945b885eb01f1bb514f132d92b6eeed1c90fd54ed6289", size = 1454790, upload-time = "2025-10-16T22:16:54.355Z" }, - { url = "https://files.pythonhosted.org/packages/d4/31/0bb232318dd838cad3fa8fb0c68c8b40e1145b32025581975e18b11fab40/uvloop-0.22.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:b76324e2dc033a0b2f435f33eb88ff9913c156ef78e153fb210e03c13da746b3", size = 796783, upload-time = "2025-10-16T22:16:55.906Z" }, - { url = "https://files.pythonhosted.org/packages/42/38/c9b09f3271a7a723a5de69f8e237ab8e7803183131bc57c890db0b6bb872/uvloop-0.22.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:badb4d8e58ee08dad957002027830d5c3b06aea446a6a3744483c2b3b745345c", size = 4647548, upload-time = "2025-10-16T22:16:57.008Z" }, - { url = "https://files.pythonhosted.org/packages/c1/37/945b4ca0ac27e3dc4952642d4c900edd030b3da6c9634875af6e13ae80e5/uvloop-0.22.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b91328c72635f6f9e0282e4a57da7470c7350ab1c9f48546c0f2866205349d21", size = 4467065, upload-time = "2025-10-16T22:16:58.206Z" }, - { url = "https://files.pythonhosted.org/packages/97/cc/48d232f33d60e2e2e0b42f4e73455b146b76ebe216487e862700457fbf3c/uvloop-0.22.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:daf620c2995d193449393d6c62131b3fbd40a63bf7b307a1527856ace637fe88", size = 4328384, upload-time = "2025-10-16T22:16:59.36Z" }, - { url = "https://files.pythonhosted.org/packages/e4/16/c1fd27e9549f3c4baf1dc9c20c456cd2f822dbf8de9f463824b0c0357e06/uvloop-0.22.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6cde23eeda1a25c75b2e07d39970f3374105d5eafbaab2a4482be82f272d5a5e", size = 4296730, upload-time = "2025-10-16T22:17:00.744Z" }, ] [[package]] @@ -3805,29 +3401,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e1/f7/0a4467be0a56e80447c8529c9fce5b38eab4f513cb3d9bf82e7392a5696b/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f7eb7da0eb23aa2ba036d4f616d46906013a68caf61b7fdbe42fc8b25132e77", size = 455425, upload-time = "2025-10-14T15:05:23.348Z" }, { url = "https://files.pythonhosted.org/packages/8e/e0/82583485ea00137ddf69bc84a2db88bd92ab4a6e3c405e5fb878ead8d0e7/watchfiles-1.1.1-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:831a62658609f0e5c64178211c942ace999517f5770fe9436be4c2faeba0c0ef", size = 628826, upload-time = "2025-10-14T15:05:24.398Z" }, { url = "https://files.pythonhosted.org/packages/28/9a/a785356fccf9fae84c0cc90570f11702ae9571036fb25932f1242c82191c/watchfiles-1.1.1-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:f9a2ae5c91cecc9edd47e041a930490c31c3afb1f5e6d71de3dc671bfaca02bf", size = 622208, upload-time = "2025-10-14T15:05:25.45Z" }, - { url = "https://files.pythonhosted.org/packages/c3/f4/0872229324ef69b2c3edec35e84bd57a1289e7d3fe74588048ed8947a323/watchfiles-1.1.1-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:d1715143123baeeaeadec0528bb7441103979a1d5f6fd0e1f915383fea7ea6d5", size = 404315, upload-time = "2025-10-14T15:05:26.501Z" }, - { url = "https://files.pythonhosted.org/packages/7b/22/16d5331eaed1cb107b873f6ae1b69e9ced582fcf0c59a50cd84f403b1c32/watchfiles-1.1.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:39574d6370c4579d7f5d0ad940ce5b20db0e4117444e39b6d8f99db5676c52fd", size = 390869, upload-time = "2025-10-14T15:05:27.649Z" }, - { url = "https://files.pythonhosted.org/packages/b2/7e/5643bfff5acb6539b18483128fdc0ef2cccc94a5b8fbda130c823e8ed636/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7365b92c2e69ee952902e8f70f3ba6360d0d596d9299d55d7d386df84b6941fb", size = 449919, upload-time = "2025-10-14T15:05:28.701Z" }, - { url = "https://files.pythonhosted.org/packages/51/2e/c410993ba5025a9f9357c376f48976ef0e1b1aefb73b97a5ae01a5972755/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bfff9740c69c0e4ed32416f013f3c45e2ae42ccedd1167ef2d805c000b6c71a5", size = 460845, upload-time = "2025-10-14T15:05:30.064Z" }, - { url = "https://files.pythonhosted.org/packages/8e/a4/2df3b404469122e8680f0fcd06079317e48db58a2da2950fb45020947734/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b27cf2eb1dda37b2089e3907d8ea92922b673c0c427886d4edc6b94d8dfe5db3", size = 489027, upload-time = "2025-10-14T15:05:31.064Z" }, - { url = "https://files.pythonhosted.org/packages/ea/84/4587ba5b1f267167ee715b7f66e6382cca6938e0a4b870adad93e44747e6/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:526e86aced14a65a5b0ec50827c745597c782ff46b571dbfe46192ab9e0b3c33", size = 595615, upload-time = "2025-10-14T15:05:32.074Z" }, - { url = "https://files.pythonhosted.org/packages/6a/0f/c6988c91d06e93cd0bb3d4a808bcf32375ca1904609835c3031799e3ecae/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04e78dd0b6352db95507fd8cb46f39d185cf8c74e4cf1e4fbad1d3df96faf510", size = 474836, upload-time = "2025-10-14T15:05:33.209Z" }, - { url = "https://files.pythonhosted.org/packages/b4/36/ded8aebea91919485b7bbabbd14f5f359326cb5ec218cd67074d1e426d74/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c85794a4cfa094714fb9c08d4a218375b2b95b8ed1666e8677c349906246c05", size = 455099, upload-time = "2025-10-14T15:05:34.189Z" }, - { url = "https://files.pythonhosted.org/packages/98/e0/8c9bdba88af756a2fce230dd365fab2baf927ba42cd47521ee7498fd5211/watchfiles-1.1.1-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:74d5012b7630714b66be7b7b7a78855ef7ad58e8650c73afc4c076a1f480a8d6", size = 630626, upload-time = "2025-10-14T15:05:35.216Z" }, - { url = "https://files.pythonhosted.org/packages/2a/84/a95db05354bf2d19e438520d92a8ca475e578c647f78f53197f5a2f17aaf/watchfiles-1.1.1-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:8fbe85cb3201c7d380d3d0b90e63d520f15d6afe217165d7f98c9c649654db81", size = 622519, upload-time = "2025-10-14T15:05:36.259Z" }, - { url = "https://files.pythonhosted.org/packages/1d/ce/d8acdc8de545de995c339be67711e474c77d643555a9bb74a9334252bd55/watchfiles-1.1.1-cp314-cp314-win32.whl", hash = "sha256:3fa0b59c92278b5a7800d3ee7733da9d096d4aabcfabb9a928918bd276ef9b9b", size = 272078, upload-time = "2025-10-14T15:05:37.63Z" }, - { url = "https://files.pythonhosted.org/packages/c4/c9/a74487f72d0451524be827e8edec251da0cc1fcf111646a511ae752e1a3d/watchfiles-1.1.1-cp314-cp314-win_amd64.whl", hash = "sha256:c2047d0b6cea13b3316bdbafbfa0c4228ae593d995030fda39089d36e64fc03a", size = 287664, upload-time = "2025-10-14T15:05:38.95Z" }, - { url = "https://files.pythonhosted.org/packages/df/b8/8ac000702cdd496cdce998c6f4ee0ca1f15977bba51bdf07d872ebdfc34c/watchfiles-1.1.1-cp314-cp314-win_arm64.whl", hash = "sha256:842178b126593addc05acf6fce960d28bc5fae7afbaa2c6c1b3a7b9460e5be02", size = 277154, upload-time = "2025-10-14T15:05:39.954Z" }, - { url = "https://files.pythonhosted.org/packages/47/a8/e3af2184707c29f0f14b1963c0aace6529f9d1b8582d5b99f31bbf42f59e/watchfiles-1.1.1-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:88863fbbc1a7312972f1c511f202eb30866370ebb8493aef2812b9ff28156a21", size = 403820, upload-time = "2025-10-14T15:05:40.932Z" }, - { url = "https://files.pythonhosted.org/packages/c0/ec/e47e307c2f4bd75f9f9e8afbe3876679b18e1bcec449beca132a1c5ffb2d/watchfiles-1.1.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:55c7475190662e202c08c6c0f4d9e345a29367438cf8e8037f3155e10a88d5a5", size = 390510, upload-time = "2025-10-14T15:05:41.945Z" }, - { url = "https://files.pythonhosted.org/packages/d5/a0/ad235642118090f66e7b2f18fd5c42082418404a79205cdfca50b6309c13/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f53fa183d53a1d7a8852277c92b967ae99c2d4dcee2bfacff8868e6e30b15f7", size = 448408, upload-time = "2025-10-14T15:05:43.385Z" }, - { url = "https://files.pythonhosted.org/packages/df/85/97fa10fd5ff3332ae17e7e40e20784e419e28521549780869f1413742e9d/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6aae418a8b323732fa89721d86f39ec8f092fc2af67f4217a2b07fd3e93c6101", size = 458968, upload-time = "2025-10-14T15:05:44.404Z" }, - { url = "https://files.pythonhosted.org/packages/47/c2/9059c2e8966ea5ce678166617a7f75ecba6164375f3b288e50a40dc6d489/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f096076119da54a6080e8920cbdaac3dbee667eb91dcc5e5b78840b87415bd44", size = 488096, upload-time = "2025-10-14T15:05:45.398Z" }, - { url = "https://files.pythonhosted.org/packages/94/44/d90a9ec8ac309bc26db808a13e7bfc0e4e78b6fc051078a554e132e80160/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:00485f441d183717038ed2e887a7c868154f216877653121068107b227a2f64c", size = 596040, upload-time = "2025-10-14T15:05:46.502Z" }, - { url = "https://files.pythonhosted.org/packages/95/68/4e3479b20ca305cfc561db3ed207a8a1c745ee32bf24f2026a129d0ddb6e/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a55f3e9e493158d7bfdb60a1165035f1cf7d320914e7b7ea83fe22c6023b58fc", size = 473847, upload-time = "2025-10-14T15:05:47.484Z" }, - { url = "https://files.pythonhosted.org/packages/4f/55/2af26693fd15165c4ff7857e38330e1b61ab8c37d15dc79118cdba115b7a/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c91ed27800188c2ae96d16e3149f199d62f86c7af5f5f4d2c61a3ed8cd3666c", size = 455072, upload-time = "2025-10-14T15:05:48.928Z" }, - { url = "https://files.pythonhosted.org/packages/66/1d/d0d200b10c9311ec25d2273f8aad8c3ef7cc7ea11808022501811208a750/watchfiles-1.1.1-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:311ff15a0bae3714ffb603e6ba6dbfba4065ab60865d15a6ec544133bdb21099", size = 629104, upload-time = "2025-10-14T15:05:49.908Z" }, - { url = "https://files.pythonhosted.org/packages/e3/bd/fa9bb053192491b3867ba07d2343d9f2252e00811567d30ae8d0f78136fe/watchfiles-1.1.1-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:a916a2932da8f8ab582f242c065f5c81bed3462849ca79ee357dd9551b0e9b01", size = 622112, upload-time = "2025-10-14T15:05:50.941Z" }, ] [[package]] @@ -3890,24 +3463,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/9b/67/f926bac29882894669368dc73f4da900fcdf47955d0a0185d60103df5737/websockets-16.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6e5a82b677f8f6f59e8dfc34ec06ca6b5b48bc4fcda346acd093694cc2c24d8f", size = 184920, upload-time = "2026-01-10T09:23:07.492Z" }, { url = "https://files.pythonhosted.org/packages/3c/a1/3d6ccdcd125b0a42a311bcd15a7f705d688f73b2a22d8cf1c0875d35d34a/websockets-16.0-cp313-cp313-win32.whl", hash = "sha256:abf050a199613f64c886ea10f38b47770a65154dc37181bfaff70c160f45315a", size = 178255, upload-time = "2026-01-10T09:23:09.245Z" }, { url = "https://files.pythonhosted.org/packages/6b/ae/90366304d7c2ce80f9b826096a9e9048b4bb760e44d3b873bb272cba696b/websockets-16.0-cp313-cp313-win_amd64.whl", hash = "sha256:3425ac5cf448801335d6fdc7ae1eb22072055417a96cc6b31b3861f455fbc156", size = 178689, upload-time = "2026-01-10T09:23:10.483Z" }, - { url = "https://files.pythonhosted.org/packages/f3/1d/e88022630271f5bd349ed82417136281931e558d628dd52c4d8621b4a0b2/websockets-16.0-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:8cc451a50f2aee53042ac52d2d053d08bf89bcb31ae799cb4487587661c038a0", size = 177406, upload-time = "2026-01-10T09:23:12.178Z" }, - { url = "https://files.pythonhosted.org/packages/f2/78/e63be1bf0724eeb4616efb1ae1c9044f7c3953b7957799abb5915bffd38e/websockets-16.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:daa3b6ff70a9241cf6c7fc9e949d41232d9d7d26fd3522b1ad2b4d62487e9904", size = 175085, upload-time = "2026-01-10T09:23:13.511Z" }, - { url = "https://files.pythonhosted.org/packages/bb/f4/d3c9220d818ee955ae390cf319a7c7a467beceb24f05ee7aaaa2414345ba/websockets-16.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:fd3cb4adb94a2a6e2b7c0d8d05cb94e6f1c81a0cf9dc2694fb65c7e8d94c42e4", size = 175328, upload-time = "2026-01-10T09:23:14.727Z" }, - { url = "https://files.pythonhosted.org/packages/63/bc/d3e208028de777087e6fb2b122051a6ff7bbcca0d6df9d9c2bf1dd869ae9/websockets-16.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:781caf5e8eee67f663126490c2f96f40906594cb86b408a703630f95550a8c3e", size = 185044, upload-time = "2026-01-10T09:23:15.939Z" }, - { url = "https://files.pythonhosted.org/packages/ad/6e/9a0927ac24bd33a0a9af834d89e0abc7cfd8e13bed17a86407a66773cc0e/websockets-16.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:caab51a72c51973ca21fa8a18bd8165e1a0183f1ac7066a182ff27107b71e1a4", size = 186279, upload-time = "2026-01-10T09:23:17.148Z" }, - { url = "https://files.pythonhosted.org/packages/b9/ca/bf1c68440d7a868180e11be653c85959502efd3a709323230314fda6e0b3/websockets-16.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:19c4dc84098e523fd63711e563077d39e90ec6702aff4b5d9e344a60cb3c0cb1", size = 185711, upload-time = "2026-01-10T09:23:18.372Z" }, - { url = "https://files.pythonhosted.org/packages/c4/f8/fdc34643a989561f217bb477cbc47a3a07212cbda91c0e4389c43c296ebf/websockets-16.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:a5e18a238a2b2249c9a9235466b90e96ae4795672598a58772dd806edc7ac6d3", size = 184982, upload-time = "2026-01-10T09:23:19.652Z" }, - { url = "https://files.pythonhosted.org/packages/dd/d1/574fa27e233764dbac9c52730d63fcf2823b16f0856b3329fc6268d6ae4f/websockets-16.0-cp314-cp314-win32.whl", hash = "sha256:a069d734c4a043182729edd3e9f247c3b2a4035415a9172fd0f1b71658a320a8", size = 177915, upload-time = "2026-01-10T09:23:21.458Z" }, - { url = "https://files.pythonhosted.org/packages/8a/f1/ae6b937bf3126b5134ce1f482365fde31a357c784ac51852978768b5eff4/websockets-16.0-cp314-cp314-win_amd64.whl", hash = "sha256:c0ee0e63f23914732c6d7e0cce24915c48f3f1512ec1d079ed01fc629dab269d", size = 178381, upload-time = "2026-01-10T09:23:22.715Z" }, - { url = "https://files.pythonhosted.org/packages/06/9b/f791d1db48403e1f0a27577a6beb37afae94254a8c6f08be4a23e4930bc0/websockets-16.0-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:a35539cacc3febb22b8f4d4a99cc79b104226a756aa7400adc722e83b0d03244", size = 177737, upload-time = "2026-01-10T09:23:24.523Z" }, - { url = "https://files.pythonhosted.org/packages/bd/40/53ad02341fa33b3ce489023f635367a4ac98b73570102ad2cdd770dacc9a/websockets-16.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:b784ca5de850f4ce93ec85d3269d24d4c82f22b7212023c974c401d4980ebc5e", size = 175268, upload-time = "2026-01-10T09:23:25.781Z" }, - { url = "https://files.pythonhosted.org/packages/74/9b/6158d4e459b984f949dcbbb0c5d270154c7618e11c01029b9bbd1bb4c4f9/websockets-16.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:569d01a4e7fba956c5ae4fc988f0d4e187900f5497ce46339c996dbf24f17641", size = 175486, upload-time = "2026-01-10T09:23:27.033Z" }, - { url = "https://files.pythonhosted.org/packages/e5/2d/7583b30208b639c8090206f95073646c2c9ffd66f44df967981a64f849ad/websockets-16.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:50f23cdd8343b984957e4077839841146f67a3d31ab0d00e6b824e74c5b2f6e8", size = 185331, upload-time = "2026-01-10T09:23:28.259Z" }, - { url = "https://files.pythonhosted.org/packages/45/b0/cce3784eb519b7b5ad680d14b9673a31ab8dcb7aad8b64d81709d2430aa8/websockets-16.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:152284a83a00c59b759697b7f9e9cddf4e3c7861dd0d964b472b70f78f89e80e", size = 186501, upload-time = "2026-01-10T09:23:29.449Z" }, - { url = "https://files.pythonhosted.org/packages/19/60/b8ebe4c7e89fb5f6cdf080623c9d92789a53636950f7abacfc33fe2b3135/websockets-16.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:bc59589ab64b0022385f429b94697348a6a234e8ce22544e3681b2e9331b5944", size = 186062, upload-time = "2026-01-10T09:23:31.368Z" }, - { url = "https://files.pythonhosted.org/packages/88/a8/a080593f89b0138b6cba1b28f8df5673b5506f72879322288b031337c0b8/websockets-16.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:32da954ffa2814258030e5a57bc73a3635463238e797c7375dc8091327434206", size = 185356, upload-time = "2026-01-10T09:23:32.627Z" }, - { url = "https://files.pythonhosted.org/packages/c2/b6/b9afed2afadddaf5ebb2afa801abf4b0868f42f8539bfe4b071b5266c9fe/websockets-16.0-cp314-cp314t-win32.whl", hash = "sha256:5a4b4cc550cb665dd8a47f868c8d04c8230f857363ad3c9caf7a0c3bf8c61ca6", size = 178085, upload-time = "2026-01-10T09:23:33.816Z" }, - { url = "https://files.pythonhosted.org/packages/9f/3e/28135a24e384493fa804216b79a6a6759a38cc4ff59118787b9fb693df93/websockets-16.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b14dc141ed6d2dde437cddb216004bcac6a1df0935d79656387bd41632ba0bbd", size = 178531, upload-time = "2026-01-10T09:23:35.016Z" }, { url = "https://files.pythonhosted.org/packages/6f/28/258ebab549c2bf3e64d2b0217b973467394a9cea8c42f70418ca2c5d0d2e/websockets-16.0-py3-none-any.whl", hash = "sha256:1637db62fad1dc833276dded54215f2c7fa46912301a24bd94d45d46a011ceec", size = 171598, upload-time = "2026-01-10T09:23:45.395Z" }, ] @@ -3953,24 +3508,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/38/ec/67c90a7082f452964b4621e4890e9a490f1add23cdeb7483cc1706743291/wrapt-2.1.1-cp313-cp313t-win32.whl", hash = "sha256:b8af75fe20d381dd5bcc9db2e86a86d7fcfbf615383a7147b85da97c1182225b", size = 59783, upload-time = "2026-02-03T02:11:39.863Z" }, { url = "https://files.pythonhosted.org/packages/ec/08/466afe4855847d8febdfa2c57c87e991fc5820afbdef01a273683dfd15a0/wrapt-2.1.1-cp313-cp313t-win_amd64.whl", hash = "sha256:45c5631c9b6c792b78be2d7352129f776dd72c605be2c3a4e9be346be8376d83", size = 63082, upload-time = "2026-02-03T02:12:09.075Z" }, { url = "https://files.pythonhosted.org/packages/9a/62/60b629463c28b15b1eeadb3a0691e17568622b12aa5bfa7ebe9b514bfbeb/wrapt-2.1.1-cp313-cp313t-win_arm64.whl", hash = "sha256:da815b9263947ac98d088b6414ac83507809a1d385e4632d9489867228d6d81c", size = 60251, upload-time = "2026-02-03T02:11:21.794Z" }, - { url = "https://files.pythonhosted.org/packages/95/a0/1c2396e272f91efe6b16a6a8bce7ad53856c8f9ae4f34ceaa711d63ec9e1/wrapt-2.1.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:9aa1765054245bb01a37f615503290d4e207e3fd59226e78341afb587e9c1236", size = 61311, upload-time = "2026-02-03T02:12:44.41Z" }, - { url = "https://files.pythonhosted.org/packages/b0/9a/d2faba7e61072a7507b5722db63562fdb22f5a24e237d460d18755627f15/wrapt-2.1.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:feff14b63a6d86c1eee33a57f77573649f2550935981625be7ff3cb7342efe05", size = 61805, upload-time = "2026-02-03T02:11:59.905Z" }, - { url = "https://files.pythonhosted.org/packages/db/56/073989deb4b5d7d6e7ea424476a4ae4bda02140f2dbeaafb14ba4864dd60/wrapt-2.1.1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:81fc5f22d5fcfdbabde96bb3f5379b9f4476d05c6d524d7259dc5dfb501d3281", size = 120308, upload-time = "2026-02-03T02:12:04.46Z" }, - { url = "https://files.pythonhosted.org/packages/d1/b6/84f37261295e38167a29eb82affaf1dc15948dc416925fe2091beee8e4ac/wrapt-2.1.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:951b228ecf66def855d22e006ab9a1fc12535111ae7db2ec576c728f8ddb39e8", size = 122688, upload-time = "2026-02-03T02:11:23.148Z" }, - { url = "https://files.pythonhosted.org/packages/ea/80/32db2eec6671f80c65b7ff175be61bc73d7f5223f6910b0c921bbc4bd11c/wrapt-2.1.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:0ddf582a95641b9a8c8bd643e83f34ecbbfe1b68bc3850093605e469ab680ae3", size = 121115, upload-time = "2026-02-03T02:12:39.068Z" }, - { url = "https://files.pythonhosted.org/packages/49/ef/dcd00383df0cd696614127902153bf067971a5aabcd3c9dcb2d8ef354b2a/wrapt-2.1.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:fc5c500966bf48913f795f1984704e6d452ba2414207b15e1f8c339a059d5b16", size = 119484, upload-time = "2026-02-03T02:11:48.419Z" }, - { url = "https://files.pythonhosted.org/packages/76/29/0630280cdd2bd8f86f35cb6854abee1c9d6d1a28a0c6b6417cd15d378325/wrapt-2.1.1-cp314-cp314-win32.whl", hash = "sha256:4aa4baadb1f94b71151b8e44a0c044f6af37396c3b8bcd474b78b49e2130a23b", size = 58514, upload-time = "2026-02-03T02:11:58.616Z" }, - { url = "https://files.pythonhosted.org/packages/db/19/5bed84f9089ed2065f6aeda5dfc4f043743f642bc871454b261c3d7d322b/wrapt-2.1.1-cp314-cp314-win_amd64.whl", hash = "sha256:860e9d3fd81816a9f4e40812f28be4439ab01f260603c749d14be3c0a1170d19", size = 60763, upload-time = "2026-02-03T02:12:24.553Z" }, - { url = "https://files.pythonhosted.org/packages/e4/cb/b967f2f9669e4249b4fe82e630d2a01bc6b9e362b9b12ed91bbe23ae8df4/wrapt-2.1.1-cp314-cp314-win_arm64.whl", hash = "sha256:3c59e103017a2c1ea0ddf589cbefd63f91081d7ce9d491d69ff2512bb1157e23", size = 59051, upload-time = "2026-02-03T02:11:29.602Z" }, - { url = "https://files.pythonhosted.org/packages/eb/19/6fed62be29f97eb8a56aff236c3f960a4b4a86e8379dc7046a8005901a97/wrapt-2.1.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:9fa7c7e1bee9278fc4f5dd8275bc8d25493281a8ec6c61959e37cc46acf02007", size = 63059, upload-time = "2026-02-03T02:12:06.368Z" }, - { url = "https://files.pythonhosted.org/packages/0a/1c/b757fd0adb53d91547ed8fad76ba14a5932d83dde4c994846a2804596378/wrapt-2.1.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:39c35e12e8215628984248bd9c8897ce0a474be2a773db207eb93414219d8469", size = 63618, upload-time = "2026-02-03T02:12:23.197Z" }, - { url = "https://files.pythonhosted.org/packages/10/fe/e5ae17b1480957c7988d991b93df9f2425fc51f128cf88144d6a18d0eb12/wrapt-2.1.1-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:94ded4540cac9125eaa8ddf5f651a7ec0da6f5b9f248fe0347b597098f8ec14c", size = 152544, upload-time = "2026-02-03T02:11:43.915Z" }, - { url = "https://files.pythonhosted.org/packages/3e/cc/99aed210c6b547b8a6e4cb9d1425e4466727158a6aeb833aa7997e9e08dd/wrapt-2.1.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:da0af328373f97ed9bdfea24549ac1b944096a5a71b30e41c9b8b53ab3eec04a", size = 158700, upload-time = "2026-02-03T02:12:30.684Z" }, - { url = "https://files.pythonhosted.org/packages/81/0e/d442f745f4957944d5f8ad38bc3a96620bfff3562533b87e486e979f3d99/wrapt-2.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:4ad839b55f0bf235f8e337ce060572d7a06592592f600f3a3029168e838469d3", size = 155561, upload-time = "2026-02-03T02:11:28.164Z" }, - { url = "https://files.pythonhosted.org/packages/51/ac/9891816280e0018c48f8dfd61b136af7b0dcb4a088895db2531acde5631b/wrapt-2.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:0d89c49356e5e2a50fa86b40e0510082abcd0530f926cbd71cf25bee6b9d82d7", size = 150188, upload-time = "2026-02-03T02:11:57.053Z" }, - { url = "https://files.pythonhosted.org/packages/24/98/e2f273b6d70d41f98d0739aa9a269d0b633684a5fb17b9229709375748d4/wrapt-2.1.1-cp314-cp314t-win32.whl", hash = "sha256:f4c7dd22cf7f36aafe772f3d88656559205c3af1b7900adfccb70edeb0d2abc4", size = 60425, upload-time = "2026-02-03T02:11:35.007Z" }, - { url = "https://files.pythonhosted.org/packages/1e/06/b500bfc38a4f82d89f34a13069e748c82c5430d365d9e6b75afb3ab74457/wrapt-2.1.1-cp314-cp314t-win_amd64.whl", hash = "sha256:f76bc12c583ab01e73ba0ea585465a41e48d968f6d1311b4daec4f8654e356e3", size = 63855, upload-time = "2026-02-03T02:12:15.47Z" }, - { url = "https://files.pythonhosted.org/packages/d9/cc/5f6193c32166faee1d2a613f278608e6f3b95b96589d020f0088459c46c9/wrapt-2.1.1-cp314-cp314t-win_arm64.whl", hash = "sha256:7ea74fc0bec172f1ae5f3505b6655c541786a5cabe4bbc0d9723a56ac32eb9b9", size = 60443, upload-time = "2026-02-03T02:11:30.869Z" }, { url = "https://files.pythonhosted.org/packages/c4/da/5a086bf4c22a41995312db104ec2ffeee2cf6accca9faaee5315c790377d/wrapt-2.1.1-py3-none-any.whl", hash = "sha256:3b0f4629eb954394a3d7c7a1c8cca25f0b07cefe6aa8545e862e9778152de5b7", size = 43886, upload-time = "2026-02-03T02:11:45.048Z" }, ] From c2006a1e9a27357fae16876898e00153062efd7a Mon Sep 17 00:00:00 2001 From: Dan Waxman Date: Sun, 1 Mar 2026 22:50:16 -0500 Subject: [PATCH 2/5] Add PFJax Particle Filter Support This adds a particle filter and marginal particle filter backend for PFJax. It includes the filter configs, glue code, and unittesting. Lots of this code is AI-generated; I've looked over & used to first approximation, but it requires a closer inspection (and likely some pairing down) before seriously merging. --- dynestyx/inference/filter_configs.py | 24 +- dynestyx/inference/filters.py | 21 +- .../inference/integrations/pfjax/__init__.py | 3 + .../inference/integrations/pfjax/discrete.py | 397 ++++++++++++++++++ tests/test_pfjax_integration.py | 118 ++++++ 5 files changed, 559 insertions(+), 4 deletions(-) create mode 100644 dynestyx/inference/integrations/pfjax/__init__.py create mode 100644 dynestyx/inference/integrations/pfjax/discrete.py create mode 100644 tests/test_pfjax_integration.py diff --git a/dynestyx/inference/filter_configs.py b/dynestyx/inference/filter_configs.py index 6d793efb..d963db0e 100644 --- a/dynestyx/inference/filter_configs.py +++ b/dynestyx/inference/filter_configs.py @@ -9,7 +9,7 @@ ResamplingBaseMethod = Literal["systematic", "multinomial", "stratified"] ResamplingDifferentiableMethod = Literal["stop_gradient", "straight_through", "soft"] -FilterSource = Literal["cuthbert", "cd_dynamax", "dynestyx"] +FilterSource = Literal["cuthbert", "cd_dynamax", "dynestyx", "pfjax"] FilterEmissionOrder = Literal["zeroth", "first", "second"] FilterStateOrder = Literal["zeroth", "first", "second"] @@ -226,7 +226,7 @@ class PFConfig(BaseFilterConfig): ess_threshold_ratio (float): Resampling fires when the effective sample size drops below `ess_threshold_ratio * n_particles`. `1.0` → always resample; `0.0` → never. Defaults to `0.7`. - filter_source (FilterSource): Backend. Defaults to `"cuthbert"`, which is currently the only available implementation. + filter_source (FilterSource): Backend. Defaults to `"cuthbert"`. ??? note "Algorithm Reference" At each step, particles are propagated through the transition and @@ -264,6 +264,25 @@ class PFConfig(BaseFilterConfig): filter_source: FilterSource = "cuthbert" +@dataclasses.dataclass +class MarginalPFConfig(PFConfig): + r"""Marginal Particle Filter (MPF / Rao-Blackwellized PF) for discrete-time models. + + This configuration targets the PFJax marginal particle filter (`particle_filter_rb`), + which computes particle weights via mixture-based corrections and can reduce variance + relative to standard bootstrap PF in some settings. + + Attributes: + stop_proposal_gradient (bool): Whether to stop gradients through proposal + sampling and proposal log-density terms (PFJax `stop_proposal_gradient`). + Defaults to `True`. + filter_source (FilterSource): Backend. Defaults to `"pfjax"`. + """ + + stop_proposal_gradient: bool = True + filter_source: FilterSource = "pfjax" + + @dataclasses.dataclass class EKFConfig(BaseFilterConfig): """Extended Kalman Filter (EKF) for discrete-time models. @@ -602,6 +621,7 @@ class ContinuousTimeUKFConfig(UKFConfig, ContinuousTimeConfig): DiscreteTimeConfigs: tuple[type, ...] = ( EnKFConfig, PFConfig, + MarginalPFConfig, EKFConfig, KFConfig, UKFConfig, diff --git a/dynestyx/inference/filters.py b/dynestyx/inference/filters.py index 3ad58172..e4f52ad8 100644 --- a/dynestyx/inference/filters.py +++ b/dynestyx/inference/filters.py @@ -21,6 +21,7 @@ HMMConfig, HMMConfigs, KFConfig, + MarginalPFConfig, PFConfig, PFResamplingConfig, UKFConfig, @@ -33,6 +34,9 @@ from dynestyx.inference.integrations.cuthbert.discrete import ( run_discrete_filter as run_cuthbert_discrete, ) +from dynestyx.inference.integrations.pfjax.discrete import ( + run_discrete_filter as run_pfjax_discrete, +) from dynestyx.models import DynamicalModel from dynestyx.types import FunctionOfTime @@ -250,10 +254,10 @@ def _filter_discrete_time( ctrl_values=None, **kwargs, ) -> None: - """Discrete-time marginal likelihood via cuthbert or cd-dynamax. + """Discrete-time marginal likelihood via cuthbert, pfjax, or cd-dynamax. Filter type inferred from config class: KFConfig, EKFConfig, UKFConfig (cd-dynamax) - or EKFConfig (cuthbert), PFConfig (cuthbert). + or EKFConfig (cuthbert), PFConfig (cuthbert or pfjax). Args: name: Name of the factor. @@ -288,6 +292,18 @@ def _filter_discrete_time( ctrl_values=ctrl_values, **kwargs, ) + elif filter_config.filter_source == "pfjax": + run_pfjax_discrete( + name, + dynamics, + filter_config, + key=key, + obs_times=obs_times, + obs_values=obs_values, + ctrl_times=ctrl_times, + ctrl_values=ctrl_values, + **kwargs, + ) else: raise ValueError(f"Unknown filter source: {filter_config.filter_source}") @@ -342,6 +358,7 @@ def _filter_continuous_time( "HMMConfig", "HMMConfigs", "KFConfig", + "MarginalPFConfig", "PFConfig", "PFResamplingConfig", "UKFConfig", diff --git a/dynestyx/inference/integrations/pfjax/__init__.py b/dynestyx/inference/integrations/pfjax/__init__.py new file mode 100644 index 00000000..08f0f343 --- /dev/null +++ b/dynestyx/inference/integrations/pfjax/__init__.py @@ -0,0 +1,3 @@ +from dynestyx.inference.integrations.pfjax.discrete import run_discrete_filter + +__all__ = ["run_discrete_filter"] diff --git a/dynestyx/inference/integrations/pfjax/discrete.py b/dynestyx/inference/integrations/pfjax/discrete.py new file mode 100644 index 00000000..800b8907 --- /dev/null +++ b/dynestyx/inference/integrations/pfjax/discrete.py @@ -0,0 +1,397 @@ +import warnings +from typing import Any + +import jax +import jax.numpy as jnp +import numpyro +from jax import lax, random +from jax.scipy.special import logsumexp + +from dynestyx.inference.filter_configs import ( + BaseFilterConfig, + MarginalPFConfig, + PFConfig, + PFResamplingConfig, + _config_to_record_kwargs, +) +from dynestyx.models import DynamicalModel +from dynestyx.utils import ( + _should_record_field, + _validate_control_dim, + _validate_controls, +) +from pfjax.particle_filter import particle_filter as pfjax_particle_filter +from pfjax.particle_filter import particle_filter_rb as pfjax_particle_filter_rb + + +def _config_to_filter_kwargs(config: BaseFilterConfig) -> dict: + """Build filter kwargs dict from config dataclass.""" + kwargs = dict(config.extra_filter_kwargs) + if isinstance(config, PFConfig): + kwargs["n_filter_particles"] = config.n_particles + kwargs["ess_threshold"] = config.ess_threshold_ratio + if isinstance(config, MarginalPFConfig): + kwargs["stop_proposal_gradient"] = config.stop_proposal_gradient + return kwargs + + +def _tree_take(tree: Any, idx: jax.Array) -> Any: + """Index a pytree along axis 0.""" + return jax.tree.map(lambda x: x[idx], tree) + + +# TODO: Move these to a separate file, and reuse the multinomial resampling from PFJax. +def _resample_multinomial( + key: jax.Array, x_particles_prev: Any, logw: jax.Array +) -> dict[str, Any]: + n_particles = int(logw.shape[0]) + logw_norm = logw - logsumexp(logw) + prob = jnp.exp(logw_norm) + ancestors = random.choice( + key, a=jnp.arange(n_particles), shape=(n_particles,), p=prob + ) + return { + "x_particles": _tree_take(x_particles_prev, ancestors), + "ancestors": ancestors, + } + + +def _resample_systematic( + key: jax.Array, x_particles_prev: Any, logw: jax.Array +) -> dict[str, Any]: + n_particles = int(logw.shape[0]) + logw_norm = logw - logsumexp(logw) + prob = jnp.exp(logw_norm) + cdf = jnp.cumsum(prob) + u = (random.uniform(key, ()) + jnp.arange(n_particles)) / n_particles + ancestors = jnp.searchsorted(cdf, u, side="right") + ancestors = jnp.minimum(ancestors, n_particles - 1) + return { + "x_particles": _tree_take(x_particles_prev, ancestors), + "ancestors": ancestors, + } + + +def _resample_stratified( + key: jax.Array, x_particles_prev: Any, logw: jax.Array +) -> dict[str, Any]: + n_particles = int(logw.shape[0]) + logw_norm = logw - logsumexp(logw) + prob = jnp.exp(logw_norm) + cdf = jnp.cumsum(prob) + u = (jnp.arange(n_particles) + random.uniform(key, (n_particles,))) / n_particles + ancestors = jnp.searchsorted(cdf, u, side="right") + ancestors = jnp.minimum(ancestors, n_particles - 1) + return { + "x_particles": _tree_take(x_particles_prev, ancestors), + "ancestors": ancestors, + } + + +def _make_resampler( + resampling_config: PFResamplingConfig, + ess_threshold: float, +): + base_method = resampling_config.base_method + if base_method == "multinomial": + base_resampler = _resample_multinomial + elif base_method == "systematic": + base_resampler = _resample_systematic + elif base_method == "stratified": + base_resampler = _resample_stratified + else: + raise ValueError(f"Unsupported PF resampling base method: {base_method}") + + def resampler( + key: jax.Array, x_particles_prev: Any, logw: jax.Array + ) -> dict[str, Any]: + n_particles = int(logw.shape[0]) + logw_norm = logw - logsumexp(logw) + prob = jnp.exp(logw_norm) + ess = 1.0 / jnp.sum(jnp.square(prob)) + threshold = ess_threshold * n_particles + + def _do_resample(_: None) -> jax.Array: + return base_resampler( + key=key, x_particles_prev=x_particles_prev, logw=logw + )["ancestors"] + + def _skip_resample(_: None) -> jax.Array: + return jnp.arange(n_particles, dtype=jnp.int32) + + ancestors = lax.cond( + ess < threshold, _do_resample, _skip_resample, operand=None + ) + return { + "x_particles": _tree_take(x_particles_prev, ancestors), + "ancestors": ancestors, + } + + return resampler + + +def _resolve_stop_gradient(filter_config: PFConfig) -> bool: + method = filter_config.resampling_method.differential_method + if method == "stop_gradient": + return True + if method == "straight_through": + return False + raise ValueError( + "PFJax integration does not support " + "resampling_method.differential_method='soft'." + ) + + +class _PFJaxDynestyxModel: + """PFJax model adapter for dynestyx discrete-time dynamical models.""" + + def __init__(self, dynamics: DynamicalModel): + self.dynamics = dynamics + + def pf_init(self, key, y_init, theta): + del theta + x_init = self.dynamics.initial_condition.sample(key) + edist = self.dynamics.observation_model(x_init, y_init["u"], y_init["time"]) + logw = jnp.asarray(edist.log_prob(y_init["y"])).sum() + return x_init, logw + + def pf_step(self, key, x_prev, y_curr, theta): + del theta + pdist = self.dynamics.state_evolution( + x_prev, y_curr["u_prev"], y_curr["time_prev"], y_curr["time"] + ) + x_curr = pdist.sample(key) + edist = self.dynamics.observation_model(x_curr, y_curr["u"], y_curr["time"]) + logw = jnp.asarray(edist.log_prob(y_curr["y"])).sum() + return x_curr, logw + + +class _PFJaxMarginalDynestyxModel: + """PFJax marginal PF model adapter for dynestyx discrete-time models.""" + + def __init__(self, dynamics: DynamicalModel): + self.dynamics = dynamics + + def _pack_state( + self, x: jax.Array, y_step: dict[str, jax.Array] + ) -> dict[str, jax.Array]: + return { + "x": x, + "u": y_step["u"], + "u_prev": y_step["u_prev"], + "time": y_step["time"], + "time_prev": y_step["time_prev"], + } + + def pf_init(self, key, y_init, theta): + del theta + x_raw = self.dynamics.initial_condition.sample(key) + x_init = self._pack_state(x_raw, y_init) + logw = self.meas_lpdf(y_curr=y_init, x_curr=x_init, theta=jnp.zeros((0,))) + return x_init, logw + + def step_sample(self, key, x_prev, y_curr, theta): + del theta + pdist = self.dynamics.state_evolution( + x_prev["x"], y_curr["u_prev"], y_curr["time_prev"], y_curr["time"] + ) + x_raw = pdist.sample(key) + return self._pack_state(x_raw, y_curr) + + def step_lpdf(self, x_curr, x_prev, y_curr, theta): + del theta, y_curr + return self.state_lpdf(x_curr=x_curr, x_prev=x_prev, theta=jnp.zeros((0,))) + + def state_lpdf(self, x_curr, x_prev, theta): + del theta + pdist = self.dynamics.state_evolution( + x_prev["x"], x_curr["u_prev"], x_curr["time_prev"], x_curr["time"] + ) + return jnp.asarray(pdist.log_prob(x_curr["x"])).sum() + + def meas_lpdf(self, y_curr, x_curr, theta): + del theta + edist = self.dynamics.observation_model( + x_curr["x"], y_curr["u"], y_curr["time"] + ) + return jnp.asarray(edist.log_prob(y_curr["y"])).sum() + + +def _normalize_marginal_pf_out(pf_out: dict[str, Any]) -> dict[str, Any]: + out = dict(pf_out) + out["x_particles"] = pf_out["x_particles"]["x"] + out["logw"] = pf_out["logw_bar"] + return out + + +def run_discrete_filter( + name: str, + dynamics: DynamicalModel, + filter_config: BaseFilterConfig, + key: jax.Array | None = None, + *, + obs_times: jax.Array, + obs_values: jax.Array, + ctrl_times=None, + ctrl_values=None, + **kwargs, +) -> None: + """Run discrete-time particle filter via PFJax.""" + del kwargs + + if not isinstance(filter_config, (PFConfig, MarginalPFConfig)): + raise ValueError( + f"Unsupported pfjax config: {type(filter_config).__name__}. " + "Expected PFConfig or MarginalPFConfig." + ) + if key is None: + raise ValueError( + "Particle filter requires a PRNG key: set 'crn_seed' in the filter config, " + "or run inside a NumPyro seeded context (e.g., with numpyro.handlers.seed)." + ) + + filter_kwargs = _config_to_filter_kwargs(filter_config) + record_kwargs = _config_to_record_kwargs(filter_config) + + ys = obs_values + t1 = int(ys.shape[0]) + if t1 == 0: + return + + times = obs_times + _validate_controls(times, ctrl_times, ctrl_values) + _validate_control_dim(dynamics, ctrl_values) + + if ctrl_values is None: + control_dim = dynamics.control_dim + ctrl_values = jnp.zeros((t1, control_dim), dtype=ys.dtype) + + dt0 = times[1] - times[0] if t1 > 1 else jnp.asarray(1.0, dtype=times.dtype) + time_prev = jnp.concatenate([times[:1] - dt0, times[:-1]], axis=0) + u_prev = jnp.concatenate([ctrl_values[:1], ctrl_values[:-1]], axis=0) + + y_meas = { + "y": ys, + "u": ctrl_values, + "u_prev": u_prev, + "time": times, + "time_prev": time_prev, + } + + n_particles = int(filter_kwargs.pop("n_filter_particles", 1_000)) + ess_threshold = float(filter_kwargs.pop("ess_threshold", 0.7)) + + stop_gradient = _resolve_stop_gradient(filter_config) + if stop_gradient and ess_threshold < 1.0: + if filter_config.warn: + warnings.warn( + "PFJax stop-gradient mode requires resampling at every step for " + "its correction term to be valid. Overriding ess_threshold_ratio " + f"from {ess_threshold} to 1.0.", + stacklevel=2, + ) + ess_threshold = 1.0 + resampler = _make_resampler(filter_config.resampling_method, ess_threshold) + + theta = filter_kwargs.pop("theta", jnp.zeros((0,), dtype=ys.dtype)) + for reserved in ( + "model", + "key", + "y_meas", + "n_particles", + "resampler", + "history", + "stop_gradient", + ): + filter_kwargs.pop(reserved, None) + + if isinstance(filter_config, MarginalPFConfig): + stop_proposal_gradient = bool(filter_kwargs.pop("stop_proposal_gradient", True)) + model = _PFJaxMarginalDynestyxModel(dynamics) + pf_out = pfjax_particle_filter_rb( + model=model, + key=key, + y_meas=y_meas, + theta=theta, + n_particles=n_particles, + resampler=resampler, # type: ignore[arg-type] + history=True, + stop_gradient=stop_gradient, + stop_proposal_gradient=stop_proposal_gradient, + **filter_kwargs, + ) + pf_out = _normalize_marginal_pf_out(pf_out) + else: + model = _PFJaxDynestyxModel(dynamics) # type: ignore + pf_out = pfjax_particle_filter( + model=model, + key=key, + y_meas=y_meas, + theta=theta, + n_particles=n_particles, + resampler=resampler, # type: ignore[arg-type] + history=True, + stop_gradient=stop_gradient, + **filter_kwargs, + ) + + marginal_loglik = pf_out["loglik"] + numpyro.factor(f"{name}_marginal_log_likelihood", marginal_loglik) + numpyro.deterministic(f"{name}_marginal_loglik", marginal_loglik) + _add_sites_pf(name, pf_out, record_kwargs) + + +def _add_sites_pf(name: str, pf_out: dict[str, Any], record_kwargs: dict): + particles = pf_out["x_particles"] + log_weights = pf_out["logw"] + if particles.ndim == 2: + particles = particles[..., None] + + max_elems = record_kwargs["record_max_elems"] + t1, n_particles, state_dim = particles.shape + + add_particles = _should_record_field( + record_kwargs["record_filtered_particles"], particles.shape, max_elems + ) + add_log_weights = _should_record_field( + record_kwargs["record_filtered_log_weights"], log_weights.shape, max_elems + ) + add_mean = _should_record_field( + record_kwargs["record_filtered_states_mean"], (t1, state_dim), max_elems + ) + add_filtered_states_cov = _should_record_field( + record_kwargs["record_filtered_states_cov"], + (t1, state_dim, state_dim), + max_elems, + ) + add_filtered_states_cov_diag = _should_record_field( + record_kwargs["record_filtered_states_cov_diag"], (t1, state_dim), max_elems + ) + + need_filtered_moments = ( + add_mean or add_filtered_states_cov or add_filtered_states_cov_diag + ) + if need_filtered_moments: + log_weights_norm = log_weights - logsumexp(log_weights, axis=1, keepdims=True) + w = jnp.exp(log_weights_norm)[..., None] + filtered_means = jnp.sum(particles * w, axis=1) + + if add_filtered_states_cov or add_filtered_states_cov_diag: + second_mom = jnp.einsum( + "...tnj,...tnk,...tn->...tjk", particles, particles, w.squeeze(-1) + ) + filtered_covariances = second_mom - jnp.einsum( + "...tj,...tk->...tjk", filtered_means, filtered_means + ) + + if add_particles: + numpyro.deterministic(f"{name}_filtered_particles", particles) + if add_log_weights: + numpyro.deterministic(f"{name}_filtered_log_weights", log_weights) + if add_mean: + numpyro.deterministic(f"{name}_filtered_states_mean", filtered_means) + if add_filtered_states_cov: + numpyro.deterministic(f"{name}_filtered_states_cov", filtered_covariances) + if add_filtered_states_cov_diag: + diag_cov = jnp.diagonal(filtered_covariances, axis1=1, axis2=2) + numpyro.deterministic(f"{name}_filtered_states_cov_diag", diag_cov) diff --git a/tests/test_pfjax_integration.py b/tests/test_pfjax_integration.py new file mode 100644 index 00000000..68dd6c41 --- /dev/null +++ b/tests/test_pfjax_integration.py @@ -0,0 +1,118 @@ +import jax.numpy as jnp +import jax.random as jr +import pytest +from numpyro.handlers import seed, trace +from numpyro.infer import Predictive + +from dynestyx.inference.filter_configs import ( + MarginalPFConfig, + PFConfig, + PFResamplingConfig, +) +from dynestyx.inference.filters import Filter +from dynestyx.simulators import DiscreteTimeSimulator +from tests.models import discrete_time_l63_model + + +def test_discrete_pfjax_particle_filter_records_outputs() -> None: + obs_times = jnp.arange(start=0.0, stop=1.0, step=0.1) + true_params = {"rho": jnp.array(28.0)} + + predictive = Predictive( + discrete_time_l63_model, + params=true_params, + num_samples=1, + exclude_deterministic=False, + ) + with DiscreteTimeSimulator(): + synthetic = predictive(jr.PRNGKey(0), obs_times=obs_times) + + obs_values = synthetic["observations"].squeeze(0) + + def data_conditioned_model(): + with Filter(filter_config=PFConfig(n_particles=64, filter_source="pfjax")): + return discrete_time_l63_model( + obs_times=obs_times, + obs_values=obs_values, + ) + + with trace() as tr, seed(rng_seed=jr.PRNGKey(1)): + data_conditioned_model() + + assert "f_marginal_loglik" in tr + assert jnp.isfinite(tr["f_marginal_loglik"]["value"]) + + particles = tr["f_filtered_particles"]["value"] + log_weights = tr["f_filtered_log_weights"]["value"] + assert particles.shape == (obs_times.shape[0], 64, 3) + assert log_weights.shape == (obs_times.shape[0], 64) + + +def test_discrete_pfjax_marginal_particle_filter_records_outputs() -> None: + obs_times = jnp.arange(start=0.0, stop=1.0, step=0.1) + true_params = {"rho": jnp.array(28.0)} + + predictive = Predictive( + discrete_time_l63_model, + params=true_params, + num_samples=1, + exclude_deterministic=False, + ) + with DiscreteTimeSimulator(): + synthetic = predictive(jr.PRNGKey(2), obs_times=obs_times) + + obs_values = synthetic["observations"].squeeze(0) + + def data_conditioned_model(): + with Filter(filter_config=MarginalPFConfig(n_particles=64)): + return discrete_time_l63_model( + obs_times=obs_times, + obs_values=obs_values, + ) + + with trace() as tr, seed(rng_seed=jr.PRNGKey(3)): + data_conditioned_model() + + assert "f_marginal_loglik" in tr + assert jnp.isfinite(tr["f_marginal_loglik"]["value"]) + + particles = tr["f_filtered_particles"]["value"] + log_weights = tr["f_filtered_log_weights"]["value"] + assert particles.shape == (obs_times.shape[0], 64, 3) + assert log_weights.shape == (obs_times.shape[0], 64) + + +def test_discrete_pfjax_stop_gradient_forces_always_resample() -> None: + obs_times = jnp.arange(start=0.0, stop=1.0, step=0.1) + true_params = {"rho": jnp.array(28.0)} + + predictive = Predictive( + discrete_time_l63_model, + params=true_params, + num_samples=1, + exclude_deterministic=False, + ) + with DiscreteTimeSimulator(): + synthetic = predictive(jr.PRNGKey(4), obs_times=obs_times) + + obs_values = synthetic["observations"].squeeze(0) + + def data_conditioned_model(): + with Filter( + filter_config=PFConfig( + n_particles=32, + filter_source="pfjax", + ess_threshold_ratio=0.0, + resampling_method=PFResamplingConfig( + differential_method="stop_gradient" + ), + ) + ): + return discrete_time_l63_model( + obs_times=obs_times, + obs_values=obs_values, + ) + + with pytest.warns(UserWarning, match="requires resampling at every step"): + with trace(), seed(rng_seed=jr.PRNGKey(5)): + data_conditioned_model() From ded0565f601267c05f0c09547cd1507c75f09ec6 Mon Sep 17 00:00:00 2001 From: Dan Waxman Date: Sun, 1 Mar 2026 23:12:01 -0500 Subject: [PATCH 3/5] Preliminary pHMC notebook --- docs/deep_dives/particle_hmc.ipynb | 588 +++++++++++++++++++++++++++++ 1 file changed, 588 insertions(+) create mode 100644 docs/deep_dives/particle_hmc.ipynb diff --git a/docs/deep_dives/particle_hmc.ipynb b/docs/deep_dives/particle_hmc.ipynb new file mode 100644 index 00000000..57d6a975 --- /dev/null +++ b/docs/deep_dives/particle_hmc.ipynb @@ -0,0 +1,588 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "71dacd15", + "metadata": {}, + "source": [ + "# pHMC" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "14ba6172", + "metadata": {}, + "outputs": [], + "source": [ + "import time\n", + "from dataclasses import dataclass\n", + "\n", + "import jax\n", + "import jax.numpy as jnp\n", + "import jax.random as jr\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "import numpyro\n", + "import numpyro.distributions as dist\n", + "from numpyro.diagnostics import effective_sample_size\n", + "from numpyro.infer import HMC, MCMC, Predictive\n", + "\n", + "import dynestyx as dsx\n", + "from dynestyx import (\n", + " DiscreteTimeSimulator,\n", + " DynamicalModel,\n", + " Filter,\n", + " LinearGaussianObservation,\n", + " LinearGaussianStateEvolution,\n", + ")\n", + "from dynestyx.inference.filters import (\n", + " KFConfig,\n", + " MarginalPFConfig,\n", + " PFConfig,\n", + " PFResamplingConfig,\n", + ")\n", + "\n", + "import jax.numpy as jnp\n", + "\n", + "import jax.numpy as jnp\n", + "import jax.random as jr\n", + "import numpyro\n", + "import numpyro.distributions as dist\n", + "from numpyro.infer import Predictive\n", + "\n", + "import dynestyx as dsx\n", + "from dynestyx import DiscreteTimeSimulator, DynamicalModel, LinearGaussianStateEvolution\n", + "\n", + "\n", + "jax.config.update(\"jax_enable_x64\", True)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "9621fa06", + "metadata": {}, + "outputs": [], + "source": [ + "def model(sigma_h=None, alpha=None, rho=None, obs_times=None, obs_values=None):\n", + " inv_sigma_h_obs = None if sigma_h is None else 1 / sigma_h**2\n", + " inv_sigma_h = numpyro.sample(\n", + " \"inv_sigma_h\", dist.Gamma(1e-1, 1e-1), obs=inv_sigma_h_obs\n", + " )\n", + " sigma_h = jnp.sqrt(1.0 / inv_sigma_h)\n", + "\n", + " rho = numpyro.sample(\"rho\", dist.Uniform(-0.999, 0.999), obs=rho)\n", + " alpha = numpyro.sample(\"alpha\", dist.Normal(0.0, 10.0), obs=alpha)\n", + "\n", + " dynamics_model = DynamicalModel(\n", + " initial_condition=dist.MultivariateNormal(\n", + " jnp.zeros(1),\n", + " jnp.array([[sigma_h**2 / (1.0 - rho**2)]]), # variance, not sd\n", + " ),\n", + " state_evolution=LinearGaussianStateEvolution(\n", + " A=jnp.array([[rho]]), cov=jnp.array([[sigma_h**2]])\n", + " ),\n", + " observation_model=lambda x, u, t: dist.Poisson(\n", + " jnp.exp(x[0] + alpha)\n", + " ), # exp(h + alpha)\n", + " state_dim=1,\n", + " control_dim=0,\n", + " observation_dim=1,\n", + " )\n", + "\n", + " dsx.sample(\n", + " \"f\",\n", + " dynamics_model,\n", + " obs_times=obs_times,\n", + " obs_values=obs_values,\n", + " )\n" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "97f16cdb", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(Array(-0.16292269, dtype=float64), Array(1.31830802, dtype=float64), 2)" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "true_rho = dist.Uniform(-0.999, 0.999).sample(jr.PRNGKey(0))\n", + "true_inv_sigma_h = dist.Gamma(1, 1).sample(jr.PRNGKey(1))\n", + "true_alpha = 2\n", + "\n", + "true_rho, true_inv_sigma_h, true_alpha\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "df2a7e9d", + "metadata": {}, + "outputs": [], + "source": [ + "obs_times = jnp.arange(0.0, 100.0, 1.0) \n", + "\n", + "def make_data():\n", + " predictive = Predictive(\n", + " model,\n", + " params={\n", + " \"rho\": jnp.array(true_rho),\n", + " \"inv_sigma_h\": jnp.array(true_inv_sigma_h),\n", + " \"alpha\": jnp.array(true_alpha),\n", + " },\n", + " num_samples=1,\n", + " exclude_deterministic=False,\n", + " )\n", + " with DiscreteTimeSimulator():\n", + " pred = predictive(rng_key=jr.PRNGKey(0), obs_times=obs_times)\n", + "\n", + " obs_values = pred[\"observations\"][0]\n", + " return obs_times, obs_values, pred\n", + "\n", + "\n", + "obs_times, obs_values, pred = make_data()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "056b0f00", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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D8axVKc/PONNnz7dk52d7fn73//u+fbbbz2/+tWvPPXq1fOUlJQke9HS2pAhQzzTpk3zrFmzxrNq1SrPT3/6U0+rVq08Bw8e9L/mjjvu8BQUFHjmzp3rWb58uadfv36e8847L6nLne6WLl3qadOmjadbt26eu+++2/8417U99u/f72ndurXnlltu8SxZssSzdetWzyeffOLZvHmz/zWTJk3y5OXled577z3P119/7bniiis8bdu29Rw5csSmpXCHJ554wtOwYUPPhx9+6Nm2bZtnxowZnjp16nieeeYZ/2u4rmP30UcfeX7/+9973n33XURznpkzZwY8b2XdXnrppZ7u3bt7Fi9e7Pn888897du391x33XWeeLki+Dj33HM9Y8aM8f998uRJT/PmzT0TJ05M6nJlmj179qgdfP78+erv0tJST/Xq1dUJRVu3bp16zaJFi5K4pOnrwIEDng4dOnjmzJnjueCCC/zBB9e1fe6//37PgAEDTJ8/deqUJz8/3/PUU0/5H8P6z8nJ8bz11ls2Lknmu+yyyzy33XZbwGMjRozwXH/99er/ua7tExx8WFm3a9euVf9u2bJl/td8/PHHnqysLM+uXbviWp6M73Y5duyYrFixQjUnGeePwd+LFi1K6rJlmrKyMvW7QYMG6jfW+/HjxwPWfceOHaVVq1Zc9zFCF9Zll10WsE65ru31wQcfSO/eveXqq69W3Yk9evSQl156yf/8tm3bpLi4OGAbYD4LdOfynBKd8847T+bOnSsbN25Uf3/99deycOFCGTp0KNd1glnZj/EbXS04HjS8HtfQJUuWxPX5KTexnN1++OEH1a/YtGnTgMfx9/r165O2XJkGsxEj/6B///7StWtX9Rh27OzsbLXzBq97PEfRmT59uqxcuVKWLVtW6Tmua/ts3bpVpk6dKuPHj5ff/e53an3/+te/VvvyzTff7N93Q51TuF9H54EHHlAzquKmpGrVqupc/cQTT6gcA+C6Thwr6xa/EYAbVatWTd1gxruvZ3zwQc7dka9Zs0bdtZD9MNX13XffLXPmzFFJ05TYQBp3en/84x/V32j5wL794osvquCD7PPOO+/IG2+8IW+++aZ06dJFVq1apW5ikCDJdZ3ZMr7bpVGjRiqiDq6wwN/5+flJW65Mctddd8mHH34on376qbRs2dL/ONYvur1KS0sDXs91Hz10Ye3Zs0d69uyp7jzwM3/+fHn22WfV/+NuhevaHsj879y5c8BjnTp1kh07dqj/1+cNnlPi99vf/la1flx77bWqoujGG2+UcePGqUo6ruvEsrIf4zfOO0YnTpxQFTDxXj8zPvhAU2mvXr1Uv6LxzgZ/FxYWJnXZ0h1ymBB4zJw5U+bNm6fK5Yyw3qtXrx6w7lGKi5M41310Bg0aJKtXr1Z3hvoHd+dontb/z3VtD3QdBpeMIyehdevW6v+xn+PEa9yv0XWAPnDu19E5fPiwyh8wws0iztFc14llZT/Gb9w84uZHw7ke2we5IXHxuKTUFhm8r7zyisrevf3221WpbXFxcbIXLa2NHj1alWl99tlnnt27d/t/Dh8+HFD+ifLbefPmqVLbwsJC9UPxM1a7cF3bW8pcrVo1VQa6adMmzxtvvOGpVauW5/XXXw8oUcQ55P333/d88803nmHDhrHUNgY333yzp0WLFv5SW5SENmrUyHPfffdxXdtUHffVV1+pH1zun376afX/27dvt7wfo9S2R48equx84cKFqtqOpbZReO6559RFEON9oPQWNcsUH+zMoX4w9oeGnfjOO+/01K9fX53Ar7zyShWgkP3BB9e1fWbNmuXp2rWrumnp2LGj569//WvA8yhTfOihhzxNmzZVrxk0aJBnw4YNNi6BO5SXl6t9GOfmGjVqeM444ww1LsXRo0f9r+G6jt2nn34a8hyNoM/qut23b58KNjD+Sm5urufWW29VQU28svCf+NpOiIiIiKzL+JwPIiIiSi0MPoiIiMhRDD6IiIjIUQw+iIiIyFEMPoiIiMhRDD6IiIjIUQw+iIiIyFEMPoiIiMhRDD6IiIjIUQw+iIiIyFEMPoiIiMhRDD6IiIhInPT/AeEJwlHPnZioAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "plt.plot(jnp.exp(pred[\"states\"][0] + 0.5))\n", + "plt.scatter(obs_times, obs_values)\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "614d4378", + "metadata": {}, + "outputs": [], + "source": [ + "from dynestyx.inference.filter_configs import (\n", + " MarginalPFConfig,\n", + " PFResamplingConfig,\n", + " EKFConfig,\n", + ")\n", + "\n", + "\n", + "def data_conditioned_model(obs_times, obs_values):\n", + " filter_config = MarginalPFConfig(n_particles=100, resampling_method=PFResamplingConfig(base_method=\"systematic\", differential_method=\"stop_gradient\"))\n", + " # filter_config = EKFConfig()\n", + " # filter_config = PFConfig(n_particles=1_000, resampling_method=PFResamplingConfig(base_method=\"systematic\", differential_method=\"stop_gradient\"))\n", + " with Filter(filter_config=filter_config):\n", + " model(obs_times=obs_times, obs_values=obs_values)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "e7c8bc03", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Users/danwaxman/Documents/dynestyx/dynestyx/inference/filters.py:296: UserWarning: PFJax stop-gradient mode requires resampling at every step for its correction term to be valid. Overriding ess_threshold_ratio from 0.7 to 1.0.\n", + " run_pfjax_discrete(\n" + ] + } + ], + "source": [ + "predictive = Predictive(\n", + " data_conditioned_model,\n", + " params={\n", + " \"rho\": jnp.array(true_rho),\n", + " \"inv_sigma_h\": jnp.array(true_inv_sigma_h),\n", + " \"alpha\": jnp.array(true_alpha),\n", + " },\n", + " num_samples=1,\n", + " exclude_deterministic=False,\n", + ")\n", + "\n", + "filter_outputs = predictive(\n", + " rng_key=jr.PRNGKey(0), obs_times=obs_times, obs_values=obs_values\n", + ")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "c6b65f37", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(filter_outputs[\"f_filtered_states_mean\"].squeeze(), label=\"filtered\")\n", + "plt.plot(pred[\"states\"][0], label=\"truth\")\n", + "plt.legend()\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "91376d21", + "metadata": {}, + "outputs": [], + "source": [ + "from numpyro.infer.util import initialize_model\n", + "from numpyro.infer.initialization import init_to_sample\n", + "\n", + "rng_key = jr.PRNGKey(0)\n", + "rng_key, init_key = jax.random.split(rng_key)\n", + "init_params, potential_fn_gen, postprocess_fn, *_ = initialize_model(\n", + " init_key,\n", + " data_conditioned_model,\n", + " model_args=(obs_times, obs_values),\n", + " dynamic_args=True,\n", + " init_strategy=init_to_sample,\n", + ")\n", + "\n", + "logdensity_fn = lambda position: -potential_fn_gen(obs_times, obs_values)(position)\n", + "initial_position = init_params.z\n" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "7c0dc875", + "metadata": {}, + "outputs": [], + "source": [ + "import blackjax\n", + "from tqdm import tqdm\n", + "from jax import tree_util\n", + "\n", + "hmc = blackjax.hmc(logdensity_fn, 1e-2, jnp.eye(len(initial_position)), 10)\n", + "state = hmc.init(initial_position)\n", + "\n", + "\n", + "def inference_loop(rng_key, kernel, initial_state, num_samples):\n", + "\n", + " @jax.jit\n", + " def one_step(state, rng_key):\n", + " state, info = kernel(rng_key, state)\n", + " return state, info\n", + "\n", + " keys = jax.random.split(rng_key, num_samples)\n", + "\n", + " state = initial_state\n", + "\n", + " states = []\n", + " acceptance_rate = []\n", + " is_divergent = []\n", + " num_integration_steps = []\n", + "\n", + " for key in tqdm(keys):\n", + " state, info = one_step(state, key)\n", + "\n", + " states.append(state)\n", + " acceptance_rate.append(info.acceptance_rate)\n", + " is_divergent.append(info.is_divergent)\n", + " num_integration_steps.append(info.num_integration_steps)\n", + "\n", + " # stack to match scan outputs\n", + " states = tree_util.tree_map(lambda *xs: jnp.stack(xs), *states)\n", + "\n", + " acceptance_rate = jnp.stack(acceptance_rate)\n", + " is_divergent = jnp.stack(is_divergent)\n", + " num_integration_steps = jnp.stack(num_integration_steps)\n", + "\n", + " return states, (\n", + " acceptance_rate,\n", + " is_divergent,\n", + " num_integration_steps,\n", + " )\n" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "23aff572", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 1000/1000 [02:55<00:00, 5.69it/s]\n" + ] + } + ], + "source": [ + "num_sample = 1_000\n", + "rng_key, sample_key = jax.random.split(rng_key)\n", + "states, infos = inference_loop(sample_key, hmc.step, state, num_sample)\n", + "_ = states.position[\"rho\"].block_until_ready()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "0de0cd94", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 1000/1000 [02:55<00:00, 5.70it/s]\n" + ] + } + ], + "source": [ + "rng_key, sample_key = jax.random.split(rng_key)\n", + "states2, infos2 = inference_loop(sample_key, hmc.step, state, num_sample)\n", + "_ = states2.position[\"rho\"].block_until_ready()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "f680d58c", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Users/danwaxman/Documents/dynestyx/dynestyx/inference/filters.py:296: UserWarning: PFJax stop-gradient mode requires resampling at every step for its correction term to be valid. Overriding ess_threshold_ratio from 0.7 to 1.0.\n", + " run_pfjax_discrete(\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
meansdhdi_3%hdi_97%mcse_meanmcse_sdess_bulkess_tailr_hat
alpha1.5760.654-0.2322.0220.2630.33712.011.01.11
inv_sigma_h1.1130.5200.0201.7290.2300.1156.015.01.26
rho-0.1550.228-0.4420.4450.0630.06918.011.01.06
\n", + "
" + ], + "text/plain": [ + " mean sd hdi_3% hdi_97% mcse_mean mcse_sd ess_bulk \\\n", + "alpha 1.576 0.654 -0.232 2.022 0.263 0.337 12.0 \n", + "inv_sigma_h 1.113 0.520 0.020 1.729 0.230 0.115 6.0 \n", + "rho -0.155 0.228 -0.442 0.445 0.063 0.069 18.0 \n", + "\n", + " ess_tail r_hat \n", + "alpha 11.0 1.11 \n", + "inv_sigma_h 15.0 1.26 \n", + "rho 11.0 1.06 " + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import arviz as az\n", + "\n", + "# positions_stacked = {\n", + "# k: jnp.stack([states.position[k][100:], states2.position[k][100:]])\n", + "# for k in [\"alpha\", \"inv_sigma_h\", \"rho\"]\n", + "# }\n", + "\n", + "def _postprocess_single(i):\n", + " full = postprocess_fn(obs_times, obs_values)(\n", + " {\n", + " \"alpha\": states.position[\"alpha\"][i],\n", + " \"inv_sigma_h\": states.position[\"inv_sigma_h\"][i],\n", + " \"rho\": states.position[\"rho\"][i],\n", + " }\n", + " )\n", + " return {k: full[k] for k in [\"alpha\", \"inv_sigma_h\", \"rho\"]}\n", + "\n", + "\n", + "postprocessed = jax.jit(jax.vmap(_postprocess_single))(jnp.arange(num_sample))\n", + "posterior_samples_1 = {k: v[None, ...] for k, v in postprocessed.items()}\n", + "\n", + "def _postprocess_single(i):\n", + " full = postprocess_fn(obs_times, obs_values)(\n", + " {\n", + " \"alpha\": states2.position[\"alpha\"][i],\n", + " \"inv_sigma_h\": states2.position[\"inv_sigma_h\"][i],\n", + " \"rho\": states2.position[\"rho\"][i],\n", + " }\n", + " )\n", + " return {k: full[k] for k in [\"alpha\", \"inv_sigma_h\", \"rho\"]}\n", + "\n", + "postprocessed_2 = jax.jit(jax.vmap(_postprocess_single))(jnp.arange(num_sample))\n", + "posterior_samples_2 = {k: v[None, ...] for k, v in postprocessed_2.items()}\n", + "\n", + "num_warmup = 250\n", + "posterior_samples_stacked = {k: jnp.stack([posterior_samples_1[k][..., num_warmup:], posterior_samples_2[k][..., num_warmup:]], axis=0).squeeze(1) for k in [\"alpha\", \"inv_sigma_h\", \"rho\"]}\n", + "\n", + "az.summary(posterior_samples_stacked, var_names=[\"alpha\", \"inv_sigma_h\", \"rho\"])\n" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "323b4be3", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 3, figsize=(12, 4))\n", + "for i, v in enumerate([\"alpha\", \"inv_sigma_h\", \"rho\"]):\n", + " ax[i].hist(posterior_samples_stacked[v].ravel(), label=v)\n", + " ax[i].set_title(v)\n", + " ax[i].axvline(\n", + " true_rho\n", + " if v == \"rho\"\n", + " else true_inv_sigma_h\n", + " if v == \"inv_sigma_h\"\n", + " else true_alpha,\n", + " color=\"k\",\n", + " ls=\"--\",\n", + " )\n", + "plt.legend()\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "107f5ddd", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From eb8e4f90c8fdd8c5d2da4df02e4ae4fc52215763 Mon Sep 17 00:00:00 2001 From: Dan Waxman Date: Mon, 2 Mar 2026 10:04:35 -0500 Subject: [PATCH 4/5] Slightly longer run --- docs/deep_dives/particle_hmc.ipynb | 94 ++++++++++++++++-------------- 1 file changed, 51 insertions(+), 43 deletions(-) diff --git a/docs/deep_dives/particle_hmc.ipynb b/docs/deep_dives/particle_hmc.ipynb index 57d6a975..af225131 100644 --- a/docs/deep_dives/particle_hmc.ipynb +++ b/docs/deep_dives/particle_hmc.ipynb @@ -194,7 +194,7 @@ "\n", "\n", "def data_conditioned_model(obs_times, obs_values):\n", - " filter_config = MarginalPFConfig(n_particles=100, resampling_method=PFResamplingConfig(base_method=\"systematic\", differential_method=\"stop_gradient\"))\n", + " filter_config = MarginalPFConfig(n_particles=200, resampling_method=PFResamplingConfig(base_method=\"systematic\", differential_method=\"stop_gradient\"))\n", " # filter_config = EKFConfig()\n", " # filter_config = PFConfig(n_particles=1_000, resampling_method=PFResamplingConfig(base_method=\"systematic\", differential_method=\"stop_gradient\"))\n", " with Filter(filter_config=filter_config):\n", @@ -241,7 +241,7 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiIAAAGdCAYAAAAvwBgXAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAA7pdJREFUeJzs/Qe4bVlVJY7PffLN4eX8KgcKiqqiCAVIkUFREaVtkVYw/NQ2tIrSoN1gpgO2AQWltcH4NxIUAwKSQ1FAFUXl+F69HG++J5/9/+Zac6699t5rp3POPefcd9f4vvfd++6778R91hprzDHHdFzXdcHCwsLCwsLCYgjIDeNOLSwsLCwsLCwQlohYWFhYWFhYDA2WiFhYWFhYWFgMDZaIWFhYWFhYWAwNlohYWFhYWFhYDA2WiFhYWFhYWFgMDZaIWFhYWFhYWAwNlohYWFhYWFhYDA0FGGF0Oh04efIkTE1NgeM4w344FhYWFhYWFimAWakrKyuwd+9eyOVym5eIIAk5cODAsB+GhYWFhYWFRRc4duwY7N+/f/MSEVRC+IlMT08P++FYWFhYWFhYpMDy8rIQEngf37REhMsxSEIsEbGwsLCwsNhcSGOrsGZVCwsLCwsLi6HBEhELCwsLCwuLS5OIvOMd74Bbb71V1Ih27twJr371q+Ghhx7ayLu0sLCwsLCw2ETYUI/Ipz/9afjxH/9xQUZarRb8wi/8ArzsZS+D+++/HyYmJvrWIoS33W63+3J7FtmRz+ehUCjYFmsLCwsLi8xwXNzJB4Rz584JZQQJyjd90zelct3OzMzA0tKS0azaaDTg1KlTsL6+vkGP2CItxsfHYc+ePVAqleyLZmFhYbHFsZywfw+tawYfEGJ+ft747/V6XfzRn0hc2NkTTzwhTuMYmIIboA09GzyQxyIhRJKJ78dVV12VGF5jYWFhYWExcCKCxOGnf/qn4bnPfS7ccMMNkZ6SX/7lX051e7j54W1inzKexi2Gh7GxMSgWi3D06FHxvlQqFft2WFhYWFikwsCOrugVuffee+Gv/uqvIn/nrW99q1BN+A8GmSXBnr5HA/Z9sLCwsLAYWUXkJ37iJ+AjH/kIfOYzn4mNei2Xy+KPhYWFhYWFxdZAYaP9Az/5kz8JH/zgB+FTn/oUXHbZZRt5dxYWFhYWFhabDLmNLsf8+Z//OfzlX/6lyBI5ffq0+FOtVmErAwna//f//X/CtIsG29nZWeGfYRw+fBh++7d/G0YJ+Dg/9KEPDfthWFhYWFhcYthQReQ973mP+Hr77bf7fv6+970P3vCGN8BWxb/+67/C+9//fqESXX755cJfgYbPOBKAqhIGwllYWFhYWFxK2PDSjEUYjz32mMjcuO222wb68jSbTdHdYmFhYXGpA/efP/3iUXja/hm46eDcsB+ORQxyl9qFt95oDeVPWtKFShD6Zp588kmhdGAZBhUjvTSjA/8d8R3f8R3q9xkf/vCH4eabbxbtsqisYOszpswy8PdRlfq2b/s2kWT767/+66n+3yOPPCIC5/Dfr7/+evjYxz7W9XtiYWFhMQzce2IZ3v4P98EvfvBe+waMOAYaaLbRqDbbcP3bPjqU+77/V14O46Xkl/N3fud34IorroD3vve9cOedd4pAtte+9rWRv4+/g2m0WM56xSteIX4f8dnPfha+7/u+D373d38Xnv/85wuVBX0niLe//e3q///SL/0S/I//8T+E5wRj2JP+H2azvOY1r4Fdu3bBHXfcIdqoo0iShYWFxahipdYUXy+uNYb9UCy2EhHZDMDIWzTuIqHYvXt34u/v2LFDfEVDq/77qGK85S1vge///u8Xf0dl41d/9VfhzW9+s4+IvO51r4M3vvGN6u8/8AM/EPv/Pv7xj8ODDz4IH/3oR0ViLeI3fuM34JWvfGUfXwULCwuLjUWzI1VqVKwtRhuXFBEZK+aFMjGs+x4kvv71r8PnP/95VW5B4OC/Wq0mZu9w2uwznvGMTP/vgQceEGm1TEIQz3nOcwbynCwsLCz6hXano5Ryi9HGJUVE0BORpjxyKWB1dVWoIlhGCUKPWA9OOU77/ywsLCw2M5ptV31ttjtQzF9SlshLCltj197kwE4XVC10oNn0oYcegiuvvDLTbSX9v+uuu05E6+NUY+zsQXzpS1/q4dFbWFhYDB5tKs2wKmKJyOjCEpFNAOyU+cQnPiEGBmIE/tzcHLztbW+DV73qVXDw4EH4ru/6LpFFgmUXnOfza7/2a5G3lfT/XvKSl8DVV18tPCT/+3//bzEB+Rd/8RcH+nwtLCwsekVLJyKNNkxXbHTBqMJqVZsAv/mbvylaaNG7cdNNN4mfvfzlLxfze/7t3/4Nbr31Vnj2s58Nv/VbvwWHDh2Kva2k/4fEBMPTMP32mc98JvzQD/2Qz09iYWFhsRnQakuPCGK9YX0iowzHHeHUMTyNY5cJtpBOT0/7/g3NlU888YSYX2O9DcOHfT8sLCxGCX/zlWPw5r+7R3z/Tz/1PHjK3plhP6QtheWY/TsIq4hYWFhYWFxyaJFZlUszFqMLS0QsLCwsLC7Z9l2ELc2MNiwRsbCwsLC4ZNt3EZaIjDYsEbGwsLCwuMTbd2266ijDEhELCwsLi0u6fdcqIqMNS0QsLCwsLC7p9l1rVh1tWCJiYWFhYXHJwSoimweWiFhYWFhYXHJo2a6ZTQNLRC5BfOpTnxIDABcXF4f9UCwsLCxGIOLdmlVHGZaIDAG33347/PRP//TI3ZaFhYXFpRhoZs2qow1LREYQmLrfalkGb2FhYdGP9t31pk1WHWVYIjJgvOENb4BPf/rT8Du/8zuifIJ/3v/+94uv//Iv/wK33HKLmLD7uc99Tvzuq1/9at//R/UDVZCo2zpy5Ij63a9+9avwjGc8A8bHx+G2226Dhx56aNBP18LCwmLoHhHbNTPaKMClBJzf11wfzn0XxwEcJ/HXkDQ8/PDDcMMNN8Cv/MqviJ/dd9994utb3vIWeOc73wmXX345zM3NdXVbO3bsUGTkF3/xF8XkXvzZj/7oj8IP/MAPwOc///ken6iFhYXFZivNWIV5lHFpEREkIb+xdzj3/QsnAUoTib+G0whLpZJQKXbv3i1+9uCDD4qvSCZe+tKXpr5L023p+PVf/3V4wQteoEjOt3zLt4gpuXZasYWFxdYyq9rSzCjDlmZGCFhG6See9rSnqe/37Nkjvp49e7av92FhYWEx6oFm1qw62ri0FBEsj6AyMaz77hETE35FJZfLCeOqjmazmf4hFYvqe/SPIDpa3dTCwsJiSygi1qw60ri0iAhutinKI8MGllPa7WSpEL0d9957r+9nd999t49gpL0tCwsLi63qEbGlmdGGLc0MAYcPH4Y77rhDmErPnz8fqVK86EUvgq985Svwp3/6p/DII4/A29/+9hAxSXtbFhYWFlsJfY14Xz0HsHyq9wdlYYQlIkPAz/3cz0E+n4frr79eqB5PPvmk8fde/vKXw3//7/8d3vzmN8Ott94KKysr8H3f931d3ZaFhYXFVkJbb99ttqGjEZNMwNv5vy8C+IPnAVRtWvVGwHGDJoQRwvLysugMWVpagunpad+/YffHE088AZdddpntAhkB2PfDwsJilPCf/vgO+Owj59Xf7/+Vl8N4qQs3Qn0V4B375Pff/m6Am763j4/y0kXc/h2EVUQsLCwsLC5pj0hP5Zl2w/v+vg/0+KgsTLBExMLCwsLikk5W7cmw2qp73z/2SYC1Cz0+MosgLBGxsLCwsLikzao9KSKtmve92wZ44B96fGQWQVgiYmFhYdENvvB7AP/+a/a12wRD73qKeddLMwhbnuk7LBGxsLCwyAqU/T/2NoDP/G8r1Y8omgGPSLelGbdZFV8bQPlNRz4HsHKm9wdocekQkRFu+tlSsO+DxZZCuy5lekRLblQWo9u+20tpptGQpZnTnVlYmHsagNsBuP/DfXmMFpuciHC66Pr6kKbtWvjA74Oe+mphcclCNzC2049dsBh810w+J8dbrHcZ894mIlKHEvxj+1nyh7Y801ds2oh3DPGanZ1VQ9xwAi3PU7EYrBKCJATfB3w/8H2xsLjkofsGLBEZWbNqDjowXSnDwnoTql16RJiINKAA7z77NPi+CgA8+UWApRMAM5QvYrE1iQhi9+7d4qudKDt8IAnh98PCYmspIgEzo8VIYKK1CHeUfwq+mHs2/BS8oevSTLvJikgRTsM2ODpxIxxa+zrA/R8CeM6P9/lRb01saiKCCgiOt9+5c2emqbQW/QWWY6wSYrGloJOPjl17RhGH2kdhh7MMz+7cBdADEWnVWRGRZec/X70FftH5OsC9f2+JSJ+wqYkIAzfBzb4RfvLBs3DHExfh519+jappWlhYjChsaWa4WDsP8MEfBbj5PwFc/+3GX3HITDzjLvfWNUPqV9spweFt4/DBC7fCWyvvh9yJrwIsHAGYO9z107DY5GbVSw2/9k/3wx98+jG4+9jCsB+KhYVFEqxZdbh4/FMAj34M4M4/jvwVtyM9IWW3DmVodK2IdKh9t+kU4fXPPgTnYQbuKdwg//G+D3Z1mxZ+WCIyIji9VOvPuGoLC4sBKyLWIzJwcNopkQ0TnI63ls7BClSbXZpVm1IRaeVK8F237IdyIQf/Vr1W/uO5h7u6TQs/LBHJikBvej+wVm/BGhGQZrv/t29hYdFnWEVkuOBOpRgionJekIg4q10f8lwmIk4JZsdL8G037hWtvIn3b5Ealohkwdf/CuB/HgZ44rPQT5xfrUemAVpYWIxooBnDmlUHDyYAsYqI92+zPRCRDqkvbUeaVbE80wLpSaw3tOvAomtYIpIFj/07QH0J4MkvQT9xbkUnIlYRsbAYebRsaWao4HKYVn4J5hvldEUEVqDWZaAZq1/tnFRBbjwwC7tmJ8X3Jy+udHebFj5YIpIFjbUNqQnrRITTAC0sLDaJImIDzYZYmmlHhpnloV+lmZryiDCu3Tcnvq5Vtcm8Fl3DEpEsaK5vDBHRSjMNq4hYWIw8uKUTUaOcCYvR8Yjg5N0CdHyKSNeNALTedzQiki+UfC3CFr3BEpEsaDAR6W+AkVVELCw2F1oU+42o1ywRGTg68UQES9x5x6+IdBvxzh06XJpB5PLSL5KzZtW+wBKRLGhuTGnm7LL1iFhYbCa0NJNiu9nYFN15W1kRmXV6UETID9TJe0TEycss0Jxru2b6AUtEulJE6htWmrFmVQuL0UerIUOuEO1+54isXwT4P9cCfNjOMenWrIrdhz6PCKAi0m1phs2qZfUjhxQRxxKRvsASka48IhtXmrHtuxYWo4+2poi4egdNP3D2AYDVMwAP/Ut/b3cLte9KRSRgVm22RTdNVjhERFxNEckXbGmmn7BEpCtFZCO7Zqwka2Ex6mhRJwWio4eb9QOsuK5f8AenWWivUbJHJKeXZmBFkJNumgEcXu/zYUVEbxG26B6WiAzZI9LpuIFAM0tELCxGHR1K2xTft/o8fVdXWFZO9/e2L7nSTDqPyLwj8z66Kc/kiBjqHpEcKyK2NNMXWCKSZXHgi76PpZnFalP0vDOa2vcWFhajibamiPS9NKMfdFZO9fe2L7nSTLockRlnXfy9G8MqKyKupoio0ox2HxbdwxKRrGpInxURvSwj7qZlFRELi82UI2KJyOiVZlqdjk8RQczAWldEJN+ph4gIt+/mrSLSF1giktUf0mdFJEhEdHUkiFNLVfiHr5+0PhKL0cAX3gXwuzcBLJ2ArVyacfudrKr7QpatItJNaQYTqvUcEcScs9JlaUbel1PQFRFZpslbj0hfYIlI1o4ZRB8NZOdW/WFIcWaqX/vIA/BT/7+74DOPnOvb/VtYdI37Pwxw8XGAY3dsbUWk3+27ejyALc101TXTCnTNIGYBY96z537kOvT+akSEPSJ6+ceie1giknXOzAaXZuK6ZtjUqgegWVgMDfw56PdGvBmgPef+KyLWI5L8+tNrjoqEoSW33elAPlCa4RberMgbiAh7RGxppj+wRKQbRWQDSjP5nCPvJmbo3WTjHHxz7ktQa2zBhd9i9MCfg63YYqo/534TEZ8iYrtmzK+RtgYaDKu4jgYVkW5LM3mXSjO6WbVoFZF+whKRrjwi/VdEdk9XEtt337DyXnh36Xdh+5nP9e3+LSx63oy3IhHxTd9tbJwisnyyv7d9iaClx+obfBrYvhtSRLocfFcgRcQpVryf2dJMX2GJyLC7Zqjcsnc2mYjMtBfE1+K69YhYjABYCejzyIPNABVyhd/zALaNUkS6SAO91LG87kXsm3wiJo9It4PvCq58f52ipohQpoj1iPQHloiMSNfMnpkx5faOQp4+EH1PcrSw6GXDbG1tItL30oz+euIBqL7c39u/BOBrmTYREZy+y0SESirSrJpREXFdRURyuiJCpZmC7ZrpCywR6UoR6d/Ce5aIyN7ZscSuGQ7P0VsHLSyGBt6MtyAR4ZbOjVFEAoqr9YmE4Ojkw+ARkYFmdKib3OmZVbMSEe3azmuKSKEoFZEitghbxapnWCIyREWk3mrD4nrTV5qJU0SYmUPL3/JrYTEUbOHSjGrpFOpI+vWgdfFJWPxfT4ezH//dyN9ZWdMOPQjrEwlDJ39GRcSFAueITOzwzKpZu2a0a9spysMiIk9EBOFGtBBbpIclIl11zfTHI3JhVd5OMe/A9slyokekwCl+/Y6UtrDoBlvYrOojIhkUkYc/+7cwu/4ELN75V5G/U13X1hqEVUQMr38CERHtu22fIoKlmWovigiFmOlmVUTTdjH2DEtEhpgjwv4QJCGlfC5x1kweeNbN1lv4LUYMKEfzZrAFiUhe2wh9m2IC3LMPhD0mAYQ8YCu2cya+NBOhiHDXDCkiOPiu29JM3S1CseBtl8WSR0pa9mDYMywR6UYRcTuRw5a6ISI7psrqIo+bNcOKiLMFF36LEYO+kW7B65GzJRBOhnkj40uPyf+vKSpRRswld1z+wCoiIfim3hqIiGzf9ZdmpCLS7I6IQFEdFhEFTR1pNfvsEdqCsESkG49In1QRbt3dMVmGIgWaoaQYhSIpIg4NYbKwGBp8XSNb73osdKmIbKs+Lr4W2e9lgEuv5zFXlhSsRySpNGM2qypFhEozaCzt1FcgE+i9qEMBihoRKRYK6vumnmli0RUsEemma6ZfRMSkiESYVdtaX7zu2LewGAp0g+YWVEQK0DSWaWKxdgGm24vy/2uKSgikiBxz5UneKiLZFRGfR6Q8Be28bAbI1+Trn10RKUEhLw+LCCeXg6abF9+3W1YR6RWWiHSriLT6S0QKKuLdrIjgz1kRsUTEYujQycdWJCKaouHbFONw7kH1bSlGEXHoFP4kKyJ28F1kplK8R4SISK4AzdKsfN0b3RGRhlvwlWbEP0E+nPJqMXpE5DOf+Qx867d+K+zduxccx4EPfehDcEl4RDZCEWGzahoiElNftrAYCLZyaaaNW1DHvCnGoHlaGlURRU1RCYKNrKo0gx6RmJLtVkQ+lSJCr1muAO3KnPi21JDp1KlB13YD/GZVcR+OJSKbgoisra3BjTfeCL//+78Pl1TXTL89IhMl2H3X78D7iv8T8hEZIa0WEhHJ8AvuCC38Nsxna2Irl2YCxCvtBNb1E/eq78vQjDx0MBE56W6DDi7RmN65Zsc6KAQn60Z5RDhHJJeHDhGRsWa3pZmizyOCaJMi0ul3su4WhOe42QC88pWvFH8uCYQUkWbfFJGnP/ou2H7Pu+GFeYBrOg+b777VhJzjZqtJbzQwaOkPXwBw0+sBXvL2YT+arYfjXwG44w8BXvrLANN7h7cZbzUiEni+aUszrlaaKTtNWGm0oDjmdV+o2yPFswplWC/Ow2TzvCzPTO3q+aFfEgisfx1cGw2lGV0RgfF58e1Ye7m70gwUYIzK54w2bZ8t6xG5tDwi9XodlpeXfX8u1a4Z13UFEfmx/D/AnnverX6ej7jdZqPmk3VxlsLQcerrAGtnAR792LAfydbEl98L8I2/Abj/w4O/763cvhv4jKqgwQRUFvyHjGpNG9xmICKYXbFY2CZ/aH0i2uvvJyItw6FQRrx7RMQhIjLRJRHB96JUMCsibesRubSIyDve8Q6YmZlRfw4cOACXatfMWqMN39n5V/ivRZmw6NI0x6hWwKbWq46ybi0mb2Rg4NrsVtuIRq1cGCwbDgKtLewRCVzvImgwqUS5fhEq9Qu+H9WrZiLCiieewi84loiEEFgj2y1TjojWNZMrQH5Cvo5TnWXRgdiVRyRYmiGPCCoyFpcQEXnrW98KS0tL6s+xY8dgVOCSItKglq1eSzPVO/8Cfq34PvmX5/8ctHbfpGReVEuCaGuD7krQyh5VvBHg18ASkSG9/kQGhtHOvYUVETdYmsHhakkBh+ceEl+Ou9vVjxr1KCLSUJvfGZDeBlg+1eOjvoQVEUOgmC9ZNZeHwuQ2bfBdq0uPiGMkIrZ99xIjIuVyGaanp31/RgKdtmqpW4KJ3k+Bx74M2z/xM+LbDxS/BeBF/w0cSupDkmHKEmk2dCLShFrW4U0bAV58t9hGNHIb4jCGIG5hItJqytd7zfWmsSaSwXOyY+aRzj4h8yPqtUC5N9AajIrIyTYREVua0V7roCISVZqh9clBIrK9u3kzyiPiT1ZFdMgjYonIJUZERhaa9L3sTvR+Cv3Cu8Bx2/DP7WfCX8//OIDjgEOlGWzRNaWr6ooIlmYyT5HcCKhZI3Ya8DBw8sKS+HrsXMaWxL63726tdnJWMtZgLLJcEKWIPOzuFymd+u1EEhG3CMdadBizRCTytW63TTkiSBO80owzvq2reTMdLUekECQiXJrZYtf/puuaWV1dhUcffVT9/YknnoC7774b5ufn4eDBg7DZOmY6rgMrvPh0W5rBTIAH/0l8+zut18CV0/L2WBEpOi1otlyUPXzQDVElpwkXR6E0Yz0iQ0WzLgng8urakBWRrUVEG7Wa0EWFIsJqfcJ6gMPu8FcfdfdBQ3y4q2Yi4roqYwRP4Y/Xp+UqbefNdKGIhLtmZp1VWM6wdrYbVXFaN5dm5PbZMRAhixFSRL7yla/ATTfdJP4gfvZnf1Z8/7a3vQ02oyKyDmWxOAh0y4Lv+jORC3B88mnwkHtQhJn5iAiWZkyKSCvgEWmOkkekZvNEhoAcnZyHMgTRZ1ZtbKn3nzvYMPabY76T1gNu3X2ksx86pH42TURE22RlaUYmgtp5M9rrr6nDUUSk7csRKQCMyRLXHKxAtdnKXP40mVU7RERsaWbEFZHbb7/daLzcdCBFBPv6m26he0UEPRVf/RPx7edmXgVwXqaqIrg0Iz0iYSKixwiLrplRICLKoOfK10ObSGmx8SiQqTFupPyGIXifuGAX5TyPSx0tIiJIFDBjVQQNxq0H1QXIrZ4R356rHIZ2roQGA3HaDkHznuEp/LQrT/JQvShf44LmS9miaNTxlfHQNrz26LPzFJG8UkQmnDpUq7ie0+uagI4inSYiIkmoa7tmeob1iKQBdcysu6iIMBHpYvF/9BMAS8cAKrPwidxtavKugO4RMZhVO3ppZmSISGvLyvOjAI4Wzw1jGnPw+t9CLbxcEsNTclOtB81Ef8gJdxvMzM5LIqLdTpTShLeN5vhOntYI6xORr7tm3Ed0Itp3dY8IlGegTdtda9XfRp3GI9J0ipAPBJqxImKTVXuHJSIZMkSwNNPshYh85f/Jr0//XjhJZX1WRCBfVESkYVBE2toCVXA6UKvXR8s0tsU6J0YBbGrMjYoiskXQpq4ZPJSkOphQWebRzj7YOzumiAjfjv/G5evYcnM0at6B+pg2c8YiRESMiojeNYNEJJeDtdyU+Gtn7WLm0kwzaNrDf0OlxSoifYElIhkUESzNqIUn6/TdpeMAj3xUfn/LG3wD73yKiBOhiAQW+nptBBQIq4iMCBEZAUVkKxERkus7OSyk5pO7ZrSOmb2zFejkyr7b8UHzJOyZkaWu9fIOb6SCBbQCHhFToFjblyMi1+y1/HR2ItL03usglCJiGLpnkQ2WiGTwiGBppmtF5Gt/CuB2AA4/H9rbroILaw0jESlB2+gRCX7YGqZFbNDQ3eK2hW14RGQY05iDxGMLvf9tbXNiz5gbdzA5Sxki7j7YMzOmNrWOQRHR/SeoniCWCxSCZhURgWbd/1qbulYwAiGne0Rw/S7MiK9O9UJmRaSdK4b/jYiIa4fe9QxLRDJ0zVShoplVMyy8+EFBIoK45Q2wsN4Qrm7HAZifKIU8ImYi4l/4WxEZBAOFVUSGCm7z5CTOgSK4+G4hjxBn+uBYBlZIg6d0kyKCHTOoiLhkODURET5gSEVEEpGLeSYiVhERr3VgLTQTEVREtNIMqsgF2YGUQ+NvWtB13TIoIi7drmvbd3uGJSJZFBHNI+JmISIP/6s0mo1vB7juW1VZZn685DmxfUQkXJoJnrh6IiK4iRz5XO9yus8jsnU2opGA64oOq+ERka1bmukw6ciXVWlG72rzobqoCARmiKDKwXOl1O1oqNMgPCQ4u6YlYTnPMe9WERFoNvyvtUmRaAdzRPC1LUlFJF9fTP1e87rbiSEiW0kN3ChYItJl10ymiYtsUr3p9aL9LuQPCZhVTZN1gy1i+jTezPjq+wHe/y0AX/hd6J8i0ueNCNu+z9zvL/9YeNAW34JricggodTJAvavJSgi5+XEXWzDXYFx6fsoSO+HayDvnC3ShKJSS09xC6+dN2N8rU2KSLPVhqLKEZFksVmSikihnj6J2GnL96jNnUsarCLSP1gikqFrRjer6gFjiXjyS/Lr0/6D+PLE+TUDESGPiGPumgnGCBsd92mxcMQz0PYCfQHotyLy1fcBvOc5AF98V39v91KBZlAdCSKyhdp3XU0RYSKij2Awdcw83NkH2P25a7qiPusmwzu39LacIsyNy9870ZInedu+K9EODLkzlUZcfQghKRftilSWSo30igi/R25cacaaVXuGJSJZFBGtNGOSVSNP9kRkYGIH1FtteO9nHhd/fd6V3iTOpByR4MJvdNynRWNVfu25NLOBish5Gg3w+Kf7e7uXCrRNrDiE0kzInLmFSjNsYMQSi5rAGqWQnqVEVXc/7JyqiFKsQ4qI04r2iAgiMiFV0iNNbd7MpRAQ2SOCZTBT10q7rRORvI+IlJtyRlMacFigSRFhgpM4Z8giEZaIZMkRwa4ZN+EEFIS+2BTH4C++9CScWKyK+u/3PeewsTRjMqsG66A9KSL1jSAifVZEmCydutsuvkmKCJlWB4mgeXorEhEssyJhCOb8+MDR7sIfQgSEE2gNKhKXZtAcOUuKyGPVac+rVl/u87MBeMe/PACveffnRyMkMQWCarRx1ou+NrFyMSZLXOOtxcylGZMiAtxJY8vHPcMSkYw5IsqsmjZHpOmZSlc7Rfi9T8qT/n958dUwVqIMgqBZtWNSRPybjclxn3macF/NqvUNMQhjPLZIo7UIvPTe612kNt5BIkTEtxARYXXSKZS9UfBRisgF+Xl/tLMX9lA7rlOksQ4GkyO/rm2tNHOm6gBUZjbMJ/L3Xz0OX3tyER45Q+R/xBGa7WJQRHxpp0REHIp5H2+lJ3PqPbKKyIbCEpFMXTMV5RHppCYitKHmS/B/P/ckXFxrwGXbJ+C1z9jv/z191kwrrIgE68mpS0NxakOvdX29Dtt3RUSbKHvy7v7e9iUA3ayM5BUMgxI3EqHrbwt5RBx+rgUszSSsB/RZW4JJ2EsBZXlSRExBdC1KDcUuDeyqQ6w12tCZ3L1hMe/1prx2sGy8GRB8rY3ts/rPFBHZJr5OdNITEX6POqY5Wqo0szlet1GGJSIp4HKOiFuGDst8qYkIhR8VxuCPPiu9IT/3smtCA5S4NINmVQzjCSFYh+zlBNovRUQ/dWRNmk1LlhCnvt7f274EEOqaGjAR2MqlGUdTRDjoKrI0Q68LDk3jgDJFRAzeHj0sbapSEAZXRHNiA4kIHXz466YxC8coIo5ODhy51hYmpSdv0l1NTR7Ue2RSRGjN7moAqoUPloikQKfuzZoplKj1rp1NEcGyDJ5snrpvBr75qbSo6NBKMw2DWdUJBUj1QRHpcfNo6hJpnxWRpSWtjos+kZ5u7MQlt1iEzMoDJgIhBSDL/eP/3cSnSCYiOSzNJCki9LlouAUVUJanNSRvGFbIpZlOvgS5nKN8IjWOee8zEel0XNWlt2kUkcBn2aSIdOjgJtJPMTkS19ZJWZrJ4bTwWjrDao5vJx+eLO2w0mK7ZnqGJSIZFJEalKHIRCSjR2ShIf0g//UV14JDHwwffF0z4ZOJE1RE2v1QRHojDwsraxu2ETaqK/7STLfdAmfuA/it6wE++KNwSSsig1Yk6PpHA3em6xH/3+89A+D/vQI2K3jaca5YFl6OyPUAyRZtUlIRqQSISPj/sPeLQ89mx+Xtr5R2bohHRI8K4BLNqCN0CDQRASK6PJgOMTY2BiuuJIOwfjFTacYpliIVEcftb9bRnUcuwpv/7uuwQGNAtgIsEUkBlw2npXFwOAMgoyKy7pZEu+7zrtJadnUkdM0ESzNOPxSRHhMBfW71PisixRZ5axDr57sf+HXia/Lr2fvhklZEBlya4c1gFWhhT3s94ol+8SjA8S9v2m4oVidzBRxgV4xWRLTXpA4lVZopluXXgqHtU3lvqEuDfSJLhW0boojo5ZhNU5oJmVXDSg5ne6j0UzSplvKw6E7Kv6ynmDfTbnnzaqjl2qSIGIlQD3jPpx6Dv/nKcfjY/Wdgq8ASkQxdM05pUqsLZlNEUE35Ly+5Kvr3dLOqqTQTJCLdkghc/FX7bm/kwd1IItLh163Um09k+YT8Wut/2+MwEQrUG7giIu9PnTDT3r9+nWzSchkrGflS2Qu1MkyA1Z8rzpfZRkmpxRIREVfOnDK3BrMiIr+ez20UEfE28c1SmnEDa6ExUIzJCeW8ILBLcQEkEXHTEBH9WjV4RBxWRPpMRC6symtgrbF1UqUtEUnzItHpPFee8FIRUxIBlxSRqluCQ/Pj0b+YMPQu6BFRzv2swIXObffFYKpnm6gFtE8oERG5B67uzSfCRGQD8heGCe6u6Es7dzfoVhHhLjJxG5vT4JqnJNtc0VNEjJ4xek1abg52zkyokiwrImWnGcru0DNKEHNUmjnrzm1IaQbLMT+e/xC8v/g/oRG4pkYWtO5wB6OJCChyopVmxksFpYg0V9MoIt57mjOUZpy8vP9cn0szF9cbQonZLApVP2CJSBJcF3ItuSnmyuPg0EklZB6NQIuMrphBUi5quSFRpRmnbUxWzQWyInDyqrGEk6Utto+KSLvRx2nA7abKxvhc69oeFREq6dRXBt7iupEIBtpxENYAH4D4ssqKSFpSoeXq9L3TakDI04kcjetuLBGpef4QMqr6iAg0oRoMEePXhIkIqSgn23JOCqye6avRFze7NxQ+Crfnvw4Ti3IuzsiDrr06kEpheD0UOdFKM2PFPCzBhPi+uZZi3gy9f003D4VCMXwf9DNfh04f8O1rfw9fL/8wTC1cWuXkOFgikoRmFRx0WYsy4ZTyiDgpY7V5Sm4VSlAp5rpXRAJyZMm0iGVti+11aqT2mFr9JCIaWfpy59reskSwY0bABWhoBthNDjcQoNXTEMQuwG2N2RUR7TrZpFNLebZPAdtwVbpmM7Z1dw8ZVdnkymXYaiPwGSZChx05CA41O9aclG2oqGaunevbc8FyDBIiRKefn+GNBL3WzRwTkZjSjEZE8jkH1hypiLTWU3TN0PuHyksobkGILaTI9DFQsNHqwG2dr8GUU4XtS9+ArQJLRDJIyeXKhDqphLpYItCueR03JcPFnNYjwqewVn5c/V4tuIhlJSK9+jq0BaCn2TcRRKTh5uHrncvBxQV49XR3Y9B1k+tm8omc+CrAJ39D5dAkKSJMeAcFVgRXoZKJiFSrOhHeJKWAAAq08RTKZXDzyYpII6CIsPERR2gGfRl6a7BemrlYdQEmdvbdJ4KKCB5qjNkwIwpee5sOrcWm0givzxoRQVRzUhHpVFPEvNN7gUTSRETYI5LjUncfsFhtwDZn2ZyXcgnDEpEkqDCzEkxUSpCj0gz3lyehVV9XHxpj227Krhn+sLXRMEuLWHeKyJqfSPQgKzobTEQwybYKFVibury78gyWY+rayWcz+UQ+/ksAn/6fAI/9u/Gfg5tGT7OHelFEMpZm1lY8Vao1YBWn30SkVBrzZpCYFBHeyFwvzCw4abva6Bi9XxwDz2bVhfUGwPSevvtE6o22ONT0nNY8QPC60yJFJFgawWyUnNsJeUQQjYJcPzvVNIqIRySL+fDanaP3MZfFrIqf69+5EWDVrGotrDVhnonIJiXq3cASkdTx7mWYxKRDMi3lUsrKHdpU+UMTCT1HxOBlYEWkU5jwZN1eSzPigfVwsWsfwL6aJekxrtFp+9xklz6RYMvvZlJEWP2JCF4KmoMHvakzEc9ammlRBxpi05gjA2D/kvB68InbWJqpGUszniISLq9yyZfTV1kRWVxvAkzt6bsigtN+c467yYgIrYUUMhZURFodFwoQLs0g6kREUh1KyK+DYXRxpZnUZtW18wBfeBfAwhGAo583/srCahXmYaX3iAae0/Wp/wmwcBRGHZaIZBh4N1kuQI7auILm0Shw3bVlSOYzEZGC04FmM3xh5+li7xSJiDjNcH05qyKC6IF16x9At7UBiogrX7Njlau784lwx8xmVEQ4cCnidQ0GaPVVkUoBvv7XMrbvtsm8jWjUNoknIQBWEIrlimqzNbbTax6RHZPaQYTKLiafV44IDbYGI+YnNEVkA4iI7i3qd+fbRl97bc72CJRGsCU673T8WR+EFhERJxURYSJZMhORQsbSzD1/7R3eInw+a4vnIE/EsOfS5R3vBfjUb0jyM+KwRCQJTd4Uy2L2Q76UTY7j9t1WXpNmTeB8koh6M2/6HVWa6dKsyhkijB4WH58kuhFEhFzxD+e6LM0oo+omU0Qw6wVPMzHvT3DTGGj7ruuq8sRKRkWko3lZGoPu9OkDcJPDjjVEueyZVY2eMW0j803aJiKCn+Fg+y4rTayIcGlmqdrckMF3bV2V2iSlALX2EhEJlmaanU6kItIsTskfY9k2CW3drOrEEJFWus/01/7M+/vqWeOv1Ra9EDOn164yDA1EpMlMGTIsEUmpiIjSTLkAeVpE8ikVEZf+f6IiQrcrfzl827zwu0REhFl1yKUZnyTaz9MUPUZWRO5pH5I/Xz4u5c1uSzO6X2SUgeUYlfWSThEZKBHRyhDsEUlbz25rpZnmJizN1JstKDvyui+VK/GhVqyIuEWo6K37pKri7dQCoVUclsYzrTjiHfex9Ur/Y943pyLCRGTMqEi02y7kKRGVsz7Uv5Wmxdd8MwUR0RStUiFGEWHSE4eTXwM494D669L5wCGJ0FzWiEjKzkwj8IJBw3swu2dEYYlISkWk6laERyRPHhFBDNJEVFO7YidJEeE2QNF51ogszUCJPSJYmukxRwTRw+KjnwS6DliLke/XSBE5tpYH2HZl9mCz5U2qiOgnmKj3pz1Es6p2fSqPSMr7Z4VQ/JdNaFat1bzHXK6MeaUZY1x7VW1kFX0j0w4d9UB5isPSeKYVlgSmynIzXS7SeIhuusci4Mv/2QS5Lq7ramuhvPacABFBj0g+QhFxy1IRKTTTlGZYESlCIRfeKvNEQgtpSjOkhqA6hli/aB5Z0dZMrGl9iEagD4VV1eCaP4KwRCSjIlIoaoQiRXnGoTC0jmFWgf+dyKlJnqbNJ091aShPR6YydqWI9OQRaYeGQ/UDrRopImRWPbtcB9jz9Ow+ESIi7WIGg9oogBcQBF0/IYQUkfpQiUja07SrbXyt+uYjIjpxwPJJXK4QPz9BRHRFRFsLmtRVp/6JjbBERPRQs4U8x7x3OXfJAN1b5BimAY8acEhfgdbCXHHcqIig2b/Aikiga4YVkVIzsA6aoHU9mUoz+bSKCO4h9/69+PZvOy+U/xfnZxngaD83TWdODVRgGFYRuQTAEe3g94gIpFh8HToVuTqBiYAXF20qzTARmewx0Kx/ikheWwDyfQynalYlYVij0sy51Tq4e27M7hOh0szX67uHp4iganb63mynTX0yaMT7E1Sg+moWTgK9123XgSpN3zXmaCQEmrU2SZdGsMtEIV9W6ZomzxiH/OGJuqwrIpofLFieMhIRFfM+7xFVPRiuB7S196BnT8IAUGt6/o88JdSGiEg7WhHplKa80nqSiqe175pKM3lSw5RCE4UH/lEcgjozB+GDzWeLH5XqZiJSqF4Itcj3NOwToZVDRxVWEUndwVGGCaGIaF6OFIuv06766plx4Lho0+1iW694w0haNBnd0sDto1lVfdjFh7GPpRlSRGpORaUNrs0/pevSzEOdA8NTRB76Z4A/eK7MD0iLqk5EzItlsEtjoOFHdM00oSBO+/Iv6YgQK4TiZjZhaYYNti3ICxWTFRFTrhA/PyHt610XjgNNpxSK5seyA7cGlyoeEWHD6rkWloIqfS3P6CW9rgdpDhD1ZttbC0ukiLBa7GvfNeeIOLR+ploPiJjVI5JVmYgoY2wU7pJlmaVr/gOcAxnVP964aCztl+oXQn6hnomIVUQusRyRcgFKxSJ0XJLpUsybyfNGkkERCRIR0Y5GF7tTmYqOh85Q9tB+AN1ClYsiRpp3iw6RpXZhHKYr8kRzdvIa+Y+LT/pLF1HA26AMjkfc/fSzIUS8n7lPfj3/cF8VEb721kiR6Pf043RDx4pq8FjauHadiAw6hK0faJBHBJ87ggMOTeme7L9oGzKE2hSEppdGRMopGWHLdNr3ZYlU+58lopucezqBD1ARKfJaWIwwq3Y6kYoIrt/L3HKepJBqOTBGIlIsKmUYSaQRF58AOPJZfLRw9MC3w3l3Rj4OPLgFy+QAMN5cCGVHZQbOANMPbJaIbH60aFMUpZlyEUrFvDgJpl1886SIOFTPTKWIBC5ATFrl7IJ8hdp3MUekC0WkRWUPhR5OQXppRtRt+zT8qUNm1UZ+HHZOyxPg6XoFoDIb2/pmKsvUchNwiiXtYZRmOC8gCwlKoYjwprECdF0N8jRL94UkhM13TjutIuL9XnsTlAKCYINtK0BETJsGb/JMOnTwz/QZTXiw4Lj1Ehphgx6RDQg105W0zUBEMBK/kEBEcERGwTETESyRqc9MRFhgqH3XRUUr2iOC92UayyFw91/Kr5ffDidhh/C9qcODYR2bbC+EjMuZcf4hP/mwpZnNj1ZVL83kxbyYLKfAPC3QLCPGgedWBP0ESESUHEmKSLc5Ilz2UOjyJI2PScmf6rb6VB4g8tcqjKsgqLMrdYAxIiJp5kRgqy8u3oXt3sJTHyYRWe6rIsKO+hV3PLTBbzi0fIW6S4O/8PGk6CJjYr6Zkjx1MHFoOgEiYlBEPCISVkQ6rIhoigR+ntWBg3JE9MF3ixsQ866PCuipS2OQigipRjnqmgmaRaWC3DETkWJefWYS2/n19l2DIlLgDkpoG9OwxcGMichNr4fzq/L2WBUJhpq12h2Y6XjrBJfpui7LbKcgSCQlaTo8hwjrEUlAmzbFZn5M1HnxQvaISPKFUuzIhcbRpNZIRNSbkW0zEclXyPXdrUckIAd2uxnU6g0VDa3Qr82QWqax5XnntFzEzyERqcykO8loisgZ2A4rnHWR5v/1G5x7kkUR0dt3I0yJoem3A1VEaOiY63lEHJztkaKLTJUqB5190ic06/Lz0iIiwvK8KdSK23c79Ln2/RtliXS00gx+nlkR4bXAN/hubQPSVbX3I2020jBRa6FHpO0jInmeK2OMeM8bFJG0pRmvfdfsESFFBCIUEYxxxwMRrlvXvkquYUhEQK5j7RUvM4RLb9udJd+U58iST5qOmcPPpx+4fTM3bxQsEUmZadEp0NTbfC59aQbNZ9SClaNo9thfVymNJkWEnOI9ekTYfLtEp4Ju0y2rtCBvhCLikKzYLk5oikjNK83UFlMTkROdOaWIuMMozbD8muW+qykUES7NEMnqZ45LFrMqKwP6z+OgtyQGQ9k2A1jBaNNnlafkmjZxl36XSYfv34ho6N1O1YYXlqZnjXiD7zZg3oz2HvRkjhwQkKxx+65DKrNummdlIUoRqfgUkeUM03fDpZkiKSJ4/6ZBpbB4TH7d9wyAYiWkiFQDWSKLK6sw43glFVzjkVRlBgeZHX7upvGJWCKSAJdnY5DHo1zMiZNgKiKinzbKyUSET0E8Yp3RFKcADvHRIt4DqYxpkKP++QV3KuTaz4J6zXvu2MbZT0XEIbKEc3V8igiXZtIoG0uyNHOkOeeVLxorg5co9dKMSb41YX0hhUfEP3TOGYpHpAgVXelL8RgK7c2X5GkqzbSp6yVPXXSqvV6DIlp6ajL/GyUt66pQXf8saooIz5sRpZmp3X3tmnG196NrT8KQzKp5VkSCRCRm6B0qIsvKI5LOrBo19I5TdfHxYMtwCPx5oE4npYgwEVnwv4crF/wKCapjaGDOBLye2CCPBIi7rEY81MwSkbRJkMS+M3lENDmsqJnPIqHCkYJEpOWVQShHBP/eaGaXUgst+XwWoDciUtUkZZ6S2wiEM3WLPD1GtzgOO6co1EwvzaTyiMjTxtHWrFp4RPnA4FTfMKB7XakbKI+u9U0R4U1j3aEWxgEqIh2eSgp5mBwvQ9PNpyaiXKrcrESEczdYEeGkZb2DTIFeD9ekiBA50c2i3JETVkSKniIyvdc8vqBL6AS26LaEv2LUFRFVptaIiP64kRTkUnlE0rXvRpVm+LYjFRE+UJKP6Nxqw1ea0ePcEdVFPzHBDqrM5fcz98oS6fh2gNmD6gBtFZFNDj6dOxStjow6dWmGSAwa+sp6EFoUiGEH3eu+4CcK5OkqmRJLRWQWvEiKSLdZDvWa95iwowixvt4vIuK95jumNLNqF6WZ0+68kFbVZjnI8kxw2FTa+/aZVc3vD3dpNPJETAeoiHDnCH4OZsa0Ft4UxKKo582k8FiNGthTxWbTQiFaEVHvnSFV2WEior1mdf3zrJEXNqsurDXAVYPvTvdF3dNHzeMJHDN7Rr80w4qI3GTRNK8TAT1ZNegRqWTpmvG17zqRYzlK2DXTMhAGPhzQAfM8KSIr+Tnx1Q10zTSWznoZNaR6Z1ZEuCyz72aRV8MjQUa9c8YqIgxM7PzEr4ZMPZx7kKPSSrmA7bv5dAsp3VYNSlApJr/UXjiSf1HzpS/yhaWZ4VKjWVUnBVZEuiUitQala0IO6kREatRh1CuYLDnlSdg5ZTKrpu+aOeliLLbjGdQG2TkTHPWd5r5xwdBj3SM2d07gbBQmeo+Dzgi+HrGtcbpS9ELNkoiI68r8hE027dWkiLABVc2eMioi9cjSDP9M9/Y0iIhwWFqQiGDJYbVE82bwGknzOcigiKAnAdtjRxm1ZgsKjlzD8mXPI6ITET13CZx8tCKSdDBoJyki3m23UP2M+P94wETTKSZEIypzkkzm1wNdMyuSiCwXd3ilmayKCHfM7L1ZvCbLbQ4ctKWZzYFPvgPgs+8EuO+DxjIBezxKXSgiqBhUCv4PhBEk4QUVEd+o7kJFzaTJHJGt1QkX3YmeOhca9JjakFcpkdVqH5zZQrUh9i6ISEWNQW+WUpZmtDAzVEQQqRefDSUiK9nKMjGzZtBRz4beQWdAMHltOQUYE11kHMSXcD226pDDEtUmSvIMgs2lrIh4pRnsGvJvGqpcFqOI6K8Zl0m5I4cxVsqrg8xis+Apg33wifiIiNPFCXzA0A9lBWVWRUXEzZAjkvJQok1PNkW861H9rabhWmaPUL4MK/WWUptmd8iAxbKWoqqvF2tlOWW5LCasd7rrmNl3C/zuJx6BJ/gpWkVkk4BPF2e9Uc2IAp3OCxQkhhckL7yJgUykWFTdkjC5JiEqLrrVair1AU9K7LjXW/9SgfwRGKiDKk0vRKTekI+p4+RVOFO91gf5r1kFhzYrfM2nxwpqEVhOK6lSWaZRmIRV+j9DyRLh1l1GGhKkl2ViPSLyBNYq0jTRzuBLM22nKK5rXKjlg0kiIgG1cRMSES7NsO/DP/LB/7lltcPRMkEYOfqZroiosDQi9jpUeUZkifTPJ6ITWHkC7zMRwamzD3+0bzfX0oiIat8NlGbickSwa2bZTbeOMOnE0mOcR0Q8LpNfTykiJWVUxXTuqW3y/Rtv+IlIrirXi+r4HhVaWW9maEjA50MJzu09N8HffOWYKptbRWSzgOu55x8JnM7lz0tj1K2CRIS6ZnxKRWxpJp0iwuFIKPPq5iuWg1mJUUa3rF0qPDcHKuASechc3uGb4tKMU/CISLUPRERTbQrlCXAcR7XwLnR4AVlMNWOGJU6/IjLALJG1QHJiUoCSroiwFyjiPeawI1cf4jUgtPi9z8mgJ6WIJBGRYNmzj2MBBgXl6aDDQEn3fgWIFQ+CZNKhg3+me3tYaWIjrA5u4fVnifSuiOS0kl7fSzM4juEffgLg734gfcdYAnxlajJiFp02NLQShvSIpOiaSTiU8HuNpcdCjEcE0abDorlrpqT8Ieh5G58nouHWVHgjolSTxKQ1sdfsG0oCTyafOQifOenCmeW6COIUsIrI5kCLOj7cCxoRaTdUal9p3FNEmBAk+itYEQFURJKJiENEBF3hPvMVEREl2dJpLHPXASkiq24FyhXK1ugy0IxLM2KqAz2ebjNJTI8RP0CVkny+bFg91xzLpIhczFM9XSgio+ARWUmviHCCJi5mhkW8yMFX5cErIpylgbk3UiHkUmU2ItLPic0DA6mgniKikYyAt4vVBm7x1ZGn6bqY3dGhQwef9juB0oxv3owvS6R3RUTPDumqXTQOPF8JP9NBUt4lmnoJRPPetNrtwPTdCLNqBo8Ir69i+m6SR8RUmtEUkfPUMbN9sgRzs/NCJRfQXpdKg9r2Z/Z5z1cbAZC+LHMz/N1XjqsZafKGrFl1U2BhWW4S7sUjnsSqnc4rY7Tg5xyPiCSeAOWbX3NTmlUVEcHIYF0RYWNo3l9fbtUyJe81qytKERkbH++phbJJp+JOrqAW5W5bgU2v2RqURW0cwYbVs01a9KtLqRSR04BGVYDxUl5zyg+RiKS5b1ZEeLMxbfDaic8Zk0m7xQFmQHgtrCVh3q53q4hsgiTPELjcwp/VUtHL0QkqIirMMNy6X6Cygt4Z0eIANMNsmr2z8vf/7f7TfY1512fkYLtoXxURHPimqyN9VERQifWVRrQyeZIikr5rxlNEjKUZx1EdLrGKSL4M5zCQkQ5VO6YrXsz7qrdGTLQkESnM7jcrQCk7ZtZ33Agfu/+MUuMFbI7I5kCeFhgR1cwfIK39dmKcarqOIz8EGUozwqyaQhHhlEZcEJrayYRzG7AmL0C/h8pJw9S/HoH1lSWPiIzRh7FbIkLkyHXyioi0+qKI8GyfijBCIjjU7FStlC4cjIjI8bZskzu0bcKrCw/BI1JjD0Wa++Yws2nvVBQqz2jEJEedRNxFMwjw9YjlPd0zlZWIbIYkzxACIWXY1tnikmng+bNKVSD1QwfPkilpM6N4Eq8pEv4Hn3cZ5ByAf/7GaXiiPtW30kxhIz0iC0e074/25SZZeRCqkUYyGuRZE7+jd82YiAitBS5+HmMOclz6bkIR8vjiG4DNxOLxtOPMqkVNESkLVYSzRFpazPt0R5acK3N7FMHJdLg7cZf48pnV/WJfwO5dVZqxisjmgC/fgMszVFdDIjFZ9uTSTi6jWVW076YnIqI0o220bJBjAqQIC86baWQgImtyI6znxr3FscsWSvaIiNeCugL0SaI9l2aQLNFrtmNS3v6xKi/Qbrzfgkozjzdkd8HhbePp50sQ0KPz+LnV7mY9BBSRo+4u8bWTRRGZ3Ang0CksaCjWQ6hYEcFSTQ91+CxBVqo0k5elmbRmVTfQQljYhB4Rh1QOViX1gMPgqZg7m/KGOVPsEUFFhEOrOjGKyHV7puE/PvOg+P7P7mv2pTSD1zY/RvlYUBHpbJAi0ici0vKU2ChFBK/lQlzEO6cRYyktziOn7is6A6pNn9F4RcQzqyIRQeMxE5G1C1LVwsc858r1YWJ+j+pETB2vgM+DIgve95gkqi+6ZqdWmrGzZjYFSrq0zYZVWjglEfEuaI53ThoY1yEiI82qKSJbVGQwekS00gyVipiIsAs/6wTe2uqSmmprcu1ngfrgO3lwqAbe7gsRWVNprZWSXxE5veYCFFL4RJakIvJoTX7YL9s+kT5NkfBbH3sYXvSbn4Z/ufd0z0TkiCtzA5pri+lD0MbnvecaVES0Rbc0LomIQJeei689uQBP+6WPwp98QTvBplBEcIEV5u2U7bvNWkAR2YSlGe70ydE1Lz1j+VBHB2ibfJHKMD5QaUdXRLyOHPPG96aXXg1TlQLceaHcF0UElQM1OkJ5RPpYmlnof2mGy4JugIi0W97zwLUzHzP0DtcWVU6LWQ94bWQPnPHxqDK9iYhw+zZ6RDyzai7nwGpBxgrUFiURWV5ahHFH/s709j1K/U69pmpE487TLUGQX/uMA1BVZlWbIzL6cF0og1ZjPPuQ/IaIBMpbuAAw2vQBUAtywsA8NCalUUTYiY+LAw5uCo7qVqUZ+mCIwXcZiEijKj907cK4koa7TeRsshSaKyhS05dpqqo0U9YUES1dlefNxGWJUGnmRGdeyJOHhCKSzSNy/yn5e4+dXe25NPMEEZFWkrdFN6uOIRFhL1DduMCJxF7q5pK/193r/7WjC7DWaMOnHw54WlJ0jghFJGVpplkLKCKbkIiwAVWpl/mcKs34jJTtpspMKZgmb5OKiC2aPLySP+dRRGTbZBn+y4uvgtMuJ3OekWMEugSqH2raL607fVNEUEnUSzN9IiKqNIMqRQ7jGSWhaGvts+1O9NA7nKCey+W9qdVx6wG/H4YuJgbGF4jfMRIRb5IyExFURMTdlqR/rUUx78sXTyv1vFiZghapMInlfwaVXrChoQM5eMn1O2HPTMWaVTcVAgto/cxDoUAyXRHhCzNJEeFSRVqPiGoJDHTNuOrDVwyfpjJM4GWzKqazsmu/WyLCJwA8mbAZL/L1+PL/BXj809myTrTSjG/wnUpXXYomMtTee8qdh/nxkoghz6qIXMA2SXwc3Uw4Fvezqq4fVkQ6RARTlWaEIlIxEgwmAmianhjPNnTOhFq9Ds/P3QO1FW3YXgx4mBt6g/DkVU8Z8d4iYs4Tg1XnzyZCLqCIoHmdSzO+gEHtPStSAmjUZ51LM/y+KjO6Ad/3nMMws20PtNycnJ0UNERnAKZ2IhFSDwnnV9X75NtBkqT7EvpERDq84RPBYAN/UzsUCkXEMRORUMx7rCJC626cIsJ+QRMRUYQdzapMRKjkgrNgtJj39QWpjCw5M8IEqxSRtF2NdAisUpkU1RDcc1SOiFVENgECQUvFi4+Krx1aOLHONqkpIlwz5BNMkiLScMqRZqc0pZkOMWvV1qefpjIoIu0adQaVpqBIpzQ9R6Cr0kyuAPmS18UTApa5/vnnAD74oxmzTvSuGfl88VThJs2bIX9IqzAhwsxE336pkNkjcoFOMOtdTDgWoA0C1bAzdIJNZ1ZNVkRUxDoUYGqspHk0ulNEDp7+GPxZ6X/Ady29L9Xvu7RA4/RRbEvHqHfT44xqkV+CCZWXoyt/mwEcNsiKIprXWRHxbRp6Ymk5bFZVn2FoeOmZMdN61W0VcvAL33oDnAP5OTh1/PG+KSLyIVT76w9hMr10rC9ZIkzWVKgjEZGOVpqRHhFzaSYc8x6xjnQ6Sv0yDS0MKiKKIOmgddvVzKocReCO7/TFvNcWJSFZyc/6ykHsx0oEkb51twS7psvwTVftEJ2a1qy6icALZIfqhqXmErqIoE4KAtbZTIqIGvOd4BFp5QwLUVxpBrtmfKUZzaCl/Z4wq2YgIi6F5+Qrk1CgxbHbzgU+AeBmxK2Ixo2IT2xorEsTqmPomtk2WRIlFqxpNylJNLI0Q2WZ9cpu9cGfKBc0RSRdoJkIjsKDXT2aiBy7uA6/+MFvwBPn1yLLMhdgWikATr0/iggb2NCbgc/NUyS6ey/HqvI0tqN5KtOgNGxhLQtFJJ1HpE2fs1UiIuL6HfFI8SD488KKiH4q92VJ8MA0LJ8Vw6dyJht6eVURPFI8o/BCNCGWZVjfhz5DQ866JCJoUNWReWxEkj9k3y1y3gs+t9Xeu3zaQUWEiICuSCC5jeqaYUXES2mO+Ezq6mIMMeRxG3xYNN3Gejuvuhu5NJOfphj3ulwnuESzXpzzH3ZTKyIUnumW4DU37xcHX1RE0PQvYAPNRh9ViibH+txxl0KwLjwCDSYiTkWYnBjIcMXXBCncZSISw6jTKCJ8QXulGW0Ry1I6oE0eo9PZQKe75rOAs03wg841cKPxVUsOZJIQB1c3qxIRwTo8llgQ1fxUfGmGjKqLlKqKRARJZOLCowFVkHV6Xdfr0a/vX995DP7ijifhT794JJKAnXenlQycbyb4TbDez89rfBtAMYGIuAXx3DyPRneKiEP/b8xdSzd9lRZd3IyztO+yQriemwyVJTYL8vR5UeSbZu6EFBEtg8KYIUSfYZ+qmaI0I/4d04b3HBbfnzmhGUIzomFURPrg89IVkW1XegFdfSjPdLQDEMKlua26WRQPLFHTd1kRSWzn1z5LcV0z8UREvp9LDXnARZ8hr2nlGZkFM96QB48O5YnUS/O++3RTKiJNIvlYivnOm2mWTSGnSjO8ro4q7PRdfPPX5ZuE81ce71BY0PmHobEuN45mriI+/N6rRhdJwgnUJbmsnc+miJQC0yRdLs0EiEjWrpkcdQEVx6agROShW8OgUkQKRShRDVwN+dLR0NJEUyxE7Ronq1ZUaUaXNFediVSlmQs5SShlaUaTYjHdNKEl9wLJqIi1mNLMYrXhmWgjiMgFdwZW2RORRET054QlqARFBD0i+BqlHjqXcJqagnVYxFkmaTtHUBHJYFZlhXA9v3mJCLccF7gcqfsETIqIICL5+NIMkV5HGWGT14vyvNzct7kXuy5vYYeM7hERz6FfRISMqvesz8NCaU/fiIjL1zitlUoR0Uy7vum7BkXEH2qWrIjwDLBuSzOLdFNsukdMbJOvScWtCrXCoW65ZoW8I3SfaQMnq+srag+7fLtcI4UiQl0zlohsAjRoRgouGo+78gJpnX0YWrQptvJ+17tytZtYsP+G5a9xG2amrhk3bA5UpRkOPstGRPItSUTKE9NQroyF25YzgE8AuVwBSpUYv4muiGCdOCUREcmqxTARWaKpwZGKCPXSn6JUVfzwo2qgPCJuO9G4xWUZ8ThiSjNrpJawn8RMRDxFRKhPcQsLt+6iITdfiPSIKCLiyOhp9oikPT0F4dA8pSlnXZl0Y0EbJraRl7TZS0lEiOcaVZUikq20OGyI3A1SEPSQspZpCKYiIhEdc5pZlT/DTitc9olCbkbOI9kNF7sub0mPiP/6Tm2OTFmaec89HfjUmbG+ZYm45AVhRcREBMT03YiuGc8jkjDygT5zGEZYjGk0YEWED4um21ioOb6yDGJ2dpvn7Vo7CwUaeCeU0C6ISL3q+RGxPVg8z0JOdc3woXhUYRURMVhIvklNpwynigfE9+unHlRScohIcA03oTTjkAnWTa2IFNUCrSsifD9uSBHJdqIs0SThysQMlGjWjJ4j0I0ikkPDIt9Wp+F/3FoXjMBiMhHpEHFp5MZ8Bl82rF7kwXfVeEXkWGvW5xFBiRI7DQQSvBoX1rwPP5doTFir1eEG53FYXFmP9YioVsGkeTO6URURoYi0uWsGiYhWGvHlWDDOPQTwt28MTZXWkaPbm4Z1WEhBRHK06OYLsjSTOuKdiHmtQIP6HBdq9c3TOaObO4uaAdXYzq+NkDeXZsKBZnGzaUL/nYjILmehazKHKarB0kxqT0ICXCrNPOnugida2/tXmtGM0uJ+jIpIvEckVcy7b85MdKOBS6UfIxGhn12su77DlPh+ugLnwIt5L1OJBiZ3+AyyWYlIK+fdh0gBp0O0Yz0iow/ON0Ai0pq9QnzvnH9EERG3EGi/ow9B0gnQoRNgJ/j/M5pV+SJXSowiIo1MHpFSRz6eickZqIxpRKQLN3uHPvhYmmEigjLvai1AbHT1IYUi4hJxaeb9rxl/iM+3KgmKiCQij1GqKhIY3CzRZ5I2SyRtaea2ix+Cj5T/G7xy9QPhf6RhVjhTQuQWuAmPO2hURUQoIpwtgCdxvTRi7Hi4+y8A7vuA/BqBPCkik04NLq4ld01wCSFflLNm0ke8S8LWICIivu/HWIABATduNndyadPnE9A2cVYW8LUxTt7mFnxN1VRExBAJH4RD82Z6IiKtdkgR6XTpM/Lf8Ao465KIH3V3er67HokIKlIOK7H0+rEiontEmkkeES3mPbo0wx6fgnnODD8m6mTk9dB0G+fpEufWXV7PeN5MY+k0jDflZ784vcv32Wf/Vto9rBU49GJmlLwdq4iMPNjo08yVobT7WvH9+PoxtWm4NG46WDPkD0WS5A2GoVdJpRndrKruJ1iaEYpIOhKBEz5FPRI3nOkZb9aMNlMhC7hclMsXfAO8Ql0mugKQQhFh4sIfIAYPvjujJvDGKyKPVqd8BEZ2zqSbwIvliefmvgF/Wfw12FaTpR4T9tVkAu8NrfvCdXrNrHpgXgtUi7vvtIoIlWBaTskXMW40GjLx0UtkARQ63v9bXVpI3cKK5YlMs2boeehEpF7rkydhAKiJjZvbd3WPSLg00yQDfLJHRBIRPHgUya9VSKGIwBSVZpyLqdcAc9eMfMyN/ETfFJGFEzKH6YI7BfX8BBx3d/Rl3gw+3oJDpK3gL824uiIickRiumZEzHs6syqW1jAELUkRMZbpSb25UA0rItOVAlygFuy1iydgqi3Xs/LMTt9ekDYbiIlI0I/YKWhx9l121Q0CtjSjDWvDaaK79l0Ga24Z8m4bppZojHWJfAkE1V6XMCsjx/kkqYkIl2Zw+q63uDh8P+zeNjnuE7Bca8IE0Ml3ag4qY95jqgeit9OQGrcj7zePr4U2+2YlpIjoHpHoTd37/TWjiqQG3/G8GZOygBshqQqP1wJERGSJpFNE0CPyH/OfhNvy98Ptzc9G/t5MS576rnaOwwKOZzeWZmZksqsiQSspFJFtfiIS8H6o2UMYJicCtTiF0fA+siIVQzYLmrdnfZkeQwzy2oape1SSFULqIitMqkTMZr/MkQMAKg+sIDiaoZRN5Hq6Jg8rQyKid9wZA80abfE5ZpJjGpIXAqlmM8461LSBb1nQaNRFeUw83sJET9O4dfzzp78ovp4r7oUXXbvTIyL4+ad1o1tFCieT64qIy2qUTxGJnr6LwPdDdc1ErQW0aaP/Kb40Q4QIN/ogiJycU4qIv2yyRq26tYVTMKPNmRH/zopISiLCe5gbMDr7DtGBWU+jBEtEtAUc62tX756GJ8iwOrsm65xOkIiQIsFSapLk3Y0i4muj1IJxBPShdymJyMXVGoyDXGRK41MwXq6o3JQamXWznAwxjEo8ZDyZaF08YUUk0L6bEEnNnT3tov81Z8f58Vo52iOCaY40FXYRJsVpHU8eiIlyilMQAYPTZkA+jh3uhciuhPmO3LQP5M7BxcWLkWbVw9swXC1FoNp6sDRjVkSYiKAiIr/GpDDy6x9jVtOJSH0lAxEplaFc9BSZJEUkR58HtzimDJ6NfgVoDcojwl0mWieFKs1oz79Jzwsnt7J5MC7QDMkITt0WN51GESl50f4cM5AVzbp3XbWKk30hIg+cWoZjj90nvt9x4BrYNzsOp2FedrfggaqH+Ti47rCnzSMi5q4ZDH+nX0xQRKI8Il7XU2xphm8/xqx6BmdkBYiIeD5lMqZeeFQ9r6n53V0RkQ4dONyAnxE/o02XVJsR9olYIiIOcuTlyFfgyl2T8JgrZc8csep8xayIJJVmmIg4gdJOqq4ZbRoq1+TZoOVz3Kf0iCwtr0COTj+o8BREbV9+iGokI6cF3ifXYCUR8WTm1aD5UFdEsGNlJT40K0cbZrActnNa3seRtUK0IkIjtRvjeAJzRDmH2679oWbJisiMIz/Yu5yLsB5B9rZ3qMsFH86J+71/wFMfdcBgaeYglmb09uEkRUSVZsqxZtU2ncZ4UmfbNGGTX/+YjpqiTkRSDObjFtYilmb0QLMkIkLPw0EiQpt3s7Y5FRE95EopItp6wH4dnhkSAh8mnLZQNJCMsCKSlCMiUByDNmdoUOtmVuitum0KCuyFiKCH49f+6X44CPJzuO3ANbB3tiJmn1ws7OrZJ4KvPx+AIBfomtFf+1QekYSDARGARgIRAUNpSP7AVYr52fV2qDQjHie16pYvPCi+LrtjMDs96RtsytOek8Ct8UE/oy/mfYQ7ZywREdccJavmy+LkfbIgA2EY+bKfiHB7HdfKjeh0oEi191xpPFugWcCsKup74t9LodNU2tLM6rKs/QtJnDb5Bm1gWUszeJ8sfTpamymWikKlmeDGm2BYzbOpKqBC8Yf4dKPilQGCGy+RnPXSztAHX4aajaU2q7IisgeJiCHUDMPqZh2PZHXOyFOgQHUBAOeAYFkcpuDwds8j0lxfTKGIzMFStQmned0Ibg70dw49Yo9Cx9Q1o4hI9CJUcjWTZYrBfF4La9k3fVdlPCQoIk4JiYh87M1+tYsOADpZ8CsibFhshA43/DxD0MgGlqeqESQnEo4DVUdezy0a3ZAV7DVCosBegl58BB9/4Cx8/tELcDgnjdowdxnsnZW3ewp29IGIeKUZ1TBAioROBHzJqkQUdKDBejll10yiIqIaFwLrnnYtnGJFJEBEYFKuUzNrMnNlAWbEY9P3mHxKRcQlUpkLTHpGo/T6Jpg3Y4mIlr+AbbZ4gq5NX+Z7kTCJ1PeikSKSiwsD006xOdPQq8Shd7oiwiclv0cky/Td1VX5gavj4kUqAcrG4mcZFRF5MtFqsBoxCpVmdEUkybDabkGeTwABIoJEYqpcEImrrpMzLyIk+y4XvQwRxkSpoILFsigiaAY0xbzXF6QpllG8QIMSETTICkkIziHZPzcOa0SC6qsLqcyqv/CBb8Cf3nnaXJpR05ipNKPioKvRpZkIjwieYvUsGTcNEXG9zhFcOJUikkAqCtQ+7pTGlZrTtwCtISoiSp7XNnF+Xno7pQ9aLR+VLN0jwmb0JIjPsjZDKivY3CxKeyqSoHti+KG7ZKrx9RVSCucvExNgEUfbvXfO4Ouv4gYC7bs+s6pPETGVZnLJAYfcvuti10zMnDC+/eChVCMQGPGO2DbhJ6WFKakSFeg5LdGcGfH06PpIKv97j3fdeOjF0inOuxIwrQ8jAktEBBEhow/JYfmdsnOGUQoQEWxbFF/jFBHtTTeOAU/smgmbVUOlGSe9R6S6KjffhhbOxpJ+XasVp7qthudeFxKp5hEJKyK0Ec4eSlZENDOVo9XAGZfvnBSRzpHzZmiWxcXcfEgRGdc9IjGKCG7MF1arME2KyDZnBaqUsKujdtEfVz+xJDtofB0znWnxdXa8CPWCfD6NtXTtu984sSQc+3GKCJ/G0GQd2fGgFBHzIoQzMMqOttilmIfDC2epRDkiHKiWIOuzFyVXHFcqQuqhXiOAerMFRb7uNbLgjXzQRtHT8+L3JoRcAVwy7HYaNUlyyCOiSEHS48kREUkz1dkAz/RcUr63tJ6EKEM8rl0zjTMhReSRBg1+XDSMQ8hyANLXHY0E6u2zYvpurFlVU0SiAg6JkCWWZqKIiN5BBQXhVQt2T5XmKHGWsK4TEUru5ZECiaDrLR/Ya/C5VnnejDWrjjjotMiO47kDASIy7rUbcpBTsiJCrnkXJ5SWMs+a0Q2SXAJSUcN6619Kj0iVFJGWls/BRIRbDdMCZ7GYFJEK5ohUIzwiO69PJiK0IKC5Cv0HQVy5Y9KXzBlq4SVF5IzrZYgwJlN6RDDArNhaV90E4vEshn0tzQXZAcT5IPNrj4WNqkBEZKwELSJPrTjFgRSRdmUOTi5WNe9F1dg6zaUZVkSMbdi8yEaUZmqNDlSohRORb6wIMhaHEl335TK377IiEE8quFSJpc4OXcutxui2FAbhyzzRyAKaowW0TbzDZY8odcNx1L8hafGVZlIqIg36LLNRMSt8ZCmjOdIEXIv2OefAQTUCSz1Tu4VBs5Bz4FinD6UZPQlWlWZIEdGIgH/6rlkRQd8EDys0rgcpzaoeETGXZlCxwdJXqCyDh5cAEanSnBm9xBJ72NUfBqmNuYCSLCbwqtKM9YiMNugDyS15l+3ZCSfcbd6bGSQiGRQRHKRnzBFI6prRSjP5UGkmHA+dhMa6/LC1qE3PZ3bMqog08SNMREmPIhcDBKtmRWTndcmlGZ68i/Hu2rRjxlW7JuNj3omInGzNhBQRYVZNoYgIfwiVZRguDdLT0VqSpZkvda7zWnm5tEKtu2hUnSjlxWbdoa6ESA8Gbv6kiJxtTQjDXaQJNEBE3KjZR3ibCWZVfC/HNCIy7q7BWgy5bbexc4QUkYpMv1Wn/oRNjE2x+fK4puJsHkWEW3JDZMHgU3CTiIgWUIiEQHTNcGkmpSLCRCTWAB0Dfu2FIkKeBOPgypTAa+mQw/6Qw4Js4fWxa7ritfD2bFZN9oigmpx34s2qaGav5ngdMRERzaxaiCvNFGOJCK+xepmYMTe/XUxnZjQqHhHhLBmcBYZxCUnI0/vGidkMfd6MNauOOBzNRIe4GjtnOrJzBlGZ8BORApVwuFZuBJ1AcQiRMeI5wUnfanmbgUP3wyE+XqBZ+hwRNrS5GmNuU/3amMiZtlarKSKhVmB9I0yliPCcmYpvzgzjqp1yM7/QHjOXZoiIHG1Mh4mIGHyX7BE5v+a17qqnYZoazAmu7l4vOfLcg6HW3VmaGuyW5WOCqHo+bia0mD1ZIz8J13aDSgMtOmojYx9CcFPHa5BMsw2a4RNEtdGCMa00gzHvF7Vk2SBqGmmtkAzMcdSxikgbVTT5/ArlcZW/0O5HkueA4IvQ543QN3tK89qwyhozME29bs06haVlU0RaFELmBH1YKcGlNOz6ybHKm/IEbgKuRQcdKsvMez477JzpR5aI35vGHhEqzWhEIEkRwVkz4vEyETGtB5ys6sp5TlEQZn29oSBIRKgEaVJEtk9V4DzHvANAZ2x7qJyPqjeWT5PA/qtioMOT1R8Ba1YdbTj0gcxR3gduYMfz+7xNLEBEVP0uMKfBqIi4JXXhJ0Jb3PSURs5tUG19WpcKT+5UOH0vwD/8FMCyv5zAA/x0Eyi3HWYd/e1TRPA2tMXWZ3wVZIzYPPtuUBGJkv7pg1J1y0YV6aqdU/7OmZAiIp/zY9XJBEUkujyCm/B0QBHJr4WzD3L0s7MwBw93qMuK57lok3dnxuRrnBuTRCTXWI4feFcYgyeX5WsbqYjwhseDsfhr8DSrLTxRUdHBDBkcfHcxZgJvTVO8ypWK79QfK+tr5aVCZUJTAzZPaUZlg+Dmok/jps+tCh7UNvnYOVPaPBH0XXmKSEoiwvHdXW4w7BHB948N+Pm05siI0swhJiJzOhEZgzMwJ6cU44ad0MKfakhfoDQDNAxPfCum78abVRFrTsx6oGbNFKCQizlI8uOIICLcpm5SRPSYd4GJHSFFBK8JDHJLAvuvgooIekRUaca27442OO8jT4oIds6sT8kPUtt1YGLCzzI5cCidImLeVM0PRKs760SEFjheLPRAs5Ai8qV3A3ztTwDu+jPfj10qkeTLnglU1agzKiLCrKorIjhciaR2Xx2dyzLY5bLtKm9D4k03CKphCkWkFH7N9s2NiUVkkQff6R4RLVX1ofUJXyw8ExGVphijiFwwKCLF1fDCWViTC269sgsedg8EiIg38G5uQi5U+bEZ5cFIMqoeW/BSOeVz85MI3vB5M1fyf5CwaJJ9EU1vhplCwY6ppMF3dU0V4FO0ytXB6zRqbpFmli2hIpJxuugogGf8cLeSgmrh1A4mShGJIRX0+qF6UtXNqjEqig4OIXO6NSHyY8yVtEiCRn9KM5oismdmTPgklkq9ZYnUDaUZh4mGtha3EpNV5dqyFncwUe27pdjSDDcQhBQRbWieKUOE16QFxzOoFqY0IkIeObwmUC1LApc9y+OTYUWESzPWIzLa4PH1TEQEtl8tvqxDBSYrnlKBKJIiIi72hIVXeERMEc8m6NkEGhHJobObw8PEN9703RAR4U2epl8qkHybp5M5gjeDVsYsB5kjonlEtM3QV0dnyRg7YLCcNbkrvjxDv4+v+biBiGC9+fLtk7AEBo8Ip6rmS3CuLf99mzZkaiJlxDvOmQl6RCrVsCJSXj+txrE/RIpI+8z9oYF3aFRFFMclESm0IjaNdWrrHZuH4xe9sp5AYLNWygNvZGr2UVARCUj2BlWEZ1QwppyqeA2i0CBFROTRsFFQj5WO8hhoCmEF31u+1jcREVHtruwLCM6e0hQRVllj1Q1OUG1humo7syLSoTygXLPb0gwT2jLkVbk5nSchShE5aFRE5G2fye3qaeYM5ogUmKzl4nJEdEUkyiMCsOLElGY0RSS2NEP3nwspIk3V/hsceKdjrUDdRPrAu0BDQhpFpExZQGNBIuJTRLZ4jsjv//7vw+HDh6FSqcCznvUs+PKXvwyjBJa1sHbNqBy8Bc650/CVztViE9NR1COYo+RotfBmUERy0mEdVERwcRD/zPertcvih9PX5cC+iQWvTQ7/PUfybXHMu1DVqOmMhkF/Gx0tBCYiwidyLgfNHIg3rNJjXHMrka8ZGlaVsqF7RChVtTWOIUGOaJnlk4+KeNc9IhHlITSrcutuPSfvZ6xGpzyG60KlLssv+Zm98ETuoPz52fvl7WoD72bGqRNqQp58yu3VBEVkDo4t0MA0nuESaL3lpF1VmqFFS21+jKBkb2jhbYQUkbV4RYSSUMVJj8oTqpsrjlhoxBz9P1xmDBlsRxic38Im4fCpWFdE6r6ETBNy9L6VoCEC7LyyQzpFxCVFpNDlBsPE1S14RKSU0pMQBPoycJrvwQhFBHGs01uWiC/HRUUZcNdMO0NpRv6f2Am8Kdt3VaRCUB2n/19TRMRMLmtlzxcyPifj3UOziBIUEXztyxBBRNCsartmAP76r/8afvZnfxbe/va3w9e+9jW48cYb4eUvfzmcPRtY3EeAiBTL3qJxaP9eeG79XfBTubeGZkVgomRqIpKla8YXF62VZtRcl7BHBD0YWDtVqIWJCLakll25gZTHPUWEbydrloOMeA9In7SoRioiiNkDCYqI1jUTRUR2TsKyUkR0IiLLJ9XyDmNNVrTvsiKCp5eIXA09zOzCxBXy/zYC12p1AQpEBloTu2Bp4jJRwsvXFiQJ0UszRETGpuTJp9xZN6toWpjZsYvB0ox/c88pRYQ9IlQiCcrqwYm7gTZgedNhRSTOI8I+CbSeMtR1aXisZvN23iMvPbSLDhocUhYkIrxp6EQkRxuRPhwvCCYpeKDA686U2hoHNp4X2l22ZTIJzJeU7w03vjQncBNJ2AGLwvgsAgf50CGIiHyejzXneyMirZjSjEZEcGOOzxHJqUj1xPZdN4mIRCki8rWtdfKRpRlxN2NyvcK5XxNzXmnGO2w2Et+PtUZLteCPTZhKM5wjsoXbd//P//k/8MM//MPwxje+Ea6//nr4gz/4AxgfH4f/9//+H4wKirSAo4mOcdPBOdg5Nw3Pv5rGMmso6RkXUfNmaKOTHpFcb0Qk2DWjLfzBeTMquXPlpOqiWFhvwCSQq1orzTB5yKqIILEJftD5hNvR/Sa8EbIvJVERoa4Z19w1g7hy55S5fZc6ZlaK233TevV6LHpPeD5HlE9EH3i3NHWl+DrVvOCPcKaOGRxzPjY2DlNTU3DUJVn1xFfV87iglWbGp+QinEPzrqnLgRSR9tg8nFnxMgxMJRWu43MIFV8PvPkpBO/HQL6adRpvQOFaUwldM03ySfCgPUSpmIda0gReeg5SIcx513AP7aKDhsoGCSoi9LnUO0643BuviHib/+JaHcoq0Cxdacahz1WxSyLC3YKgKyJOUygb3flDqCwzs9/XgsyhZg/VmIj0UJoJdM14RMTfvuv9Xngd4YOhIiIx7bt1NKvGJKvmmBCFFBF5LVTbuVhFxJ2U5GMBJmF+SjOaqs7IVuL7sVb1rp1yoGvGZ1bdql0zjUYDvvrVr8JLXvIS7w5zOfH3L35RjorWUa/XYXl52fdnEChSfa2kvYl4gv7Mz78Qfv91N4d+v1QqQsvNJSgi/hNgWnDipJ7Mx6ZYdlLr7X0hw6quEtDJY3G9CeMOtShrZlXVhZNRHsf7KwaJCC+47boXxhZURGbSKiJms6oqzZAi4urPlVJVF/KUqhr44E+I8prjxbxH+ER0RWR96goRriYmeZIHRVdfzrjz4nYxulkZVp/4rPiCGZMrMKZKM9OTE9DgKZgmEkSKyLIzrapGUcmqKuBOmUUjulZSEJE2EZFVSnXEE+3SWvSC1awzEfFOmjLULGHwnfZ5wMWRN+FIIj/KpZmAYpGjv/uICL0X6nmawD4AnNG0rpGJlIqIU5ZdZKV2t6UZIrT4GLVSgE9hzdQxI5VDR/OHIFAVRBVCtbn3sTSjSiMaEem0214gYYwistAZizarcvsulBLad4s+H59pVk3Qr+bD7GHx5YS7Heao1d8f5SDL73FYW/M+58EBqxjxvuW7Zs6fPw/tdht27dJMODjRdNcuOH06bAB8xzveATMzM+rPgQOevLdRQP8Eyl/s5teBJRme3qpDH/SV7BFBs2r20ozqQ++4KrNDjQfXFio91Ayjotm0hFg5/YhSRCaohqi37yrykDHLoeYLNKMPYsmTmdd4SBx7RGjBTFuaQeUiirwdmh+HNUpWba8thBSRc+6cUQpFj4j4NR58F6GI6APv0K9xFsjVrrcckiJy2p0Tt7ttsgwPu9Tu/cRn5FPMoTnVUYvLzHgp3ixLJuOLHe/9qek5IpqnRXVRcQgVLVpqTk9UacZERMhJv6qZ5hox83BwQJv4f5oigp+HpAm8OCRQJ+Y5CgUM+VpGGKolN6SIMBHxNkN+L/hzYYQKJmzC2ppGRFIrIkxEupshokp5SIi0TrxuFZGDuXCGiLgfxxGqyDF3p5clEhwSl1UR4XIYeUR8RETPKTGaVeXPFjiPKMGsGleaYZU6nCMiP6N4kMEWft2vpqOz5yb4mcaPwX9z/7N/zdPUsqT3Y31N68QLlALF9F3bNZMNb33rW2FpaUn9OXYsflJrPyBmbRARKY+lG06HC2+T44EjTnQunQCrGUszHPTEcyukzMiKCDvFc+qDqMe8Hz3pD9667957xNcFTRHRiYiq7Wes0+P9+QLNxBcvgGel3vRLgUFFJMGsih+cqNJMIZ+D6VmZeusaSjOn2uFUVS7N+A1qS0ZSqisizvgcnHZJTtZDzei+JBEpiNPOwx16bme+4Y93J0Vkdqyo7rtjIiJUmjnTGlenSLW5YzlHe4+4NMPt3OxDCIVRhcyqYQm/QwFlzfw4tCl1N24eDpdmIolIRKmFvUNIzFHt6ke76KDhcuZJgCiYhmByHkc+loh45H19XXuvUgaa5WgGVrnTHRHhNE6h2milgKQTeHTHjDd1NwjsnEFS30ElDdUDLB1nBG7IQZO8wyUaXZHQ1+SYHJGLbc4jiiEiwiPiJBIR9vGZzK5RHTOIHdMV+GDn+XBhQpaBFbT1Pen9qNK1IxTUQOaJz6y6Vbtmtm/fDvl8Hs6c0WRtXGzPnIHduzWHMKFcLsP09LTvz0YDP0D4ZiMqY/76WhT0+RpRqaQdOgGiWTV1oJk2QIsd7UhEeNCWUkTEX3TpTv77g0fk/BPGqSMy1wK7ICaBiYhXmuFFksezdxdoxmZV70SlptVyaYDLQayI4KZrqlfSByUqR4SxY4e8dopNTCNt+1NVm2Yigpsltv+qYVeGU9BKHaP1O6prpjgxD6cUEdEWTlpEMcwMicj2iTI8xKUZwtnOjCIgiOmxIqySGlMzKQ5Umjlel79z1a4pjYj4VatgFxXHc7PpmuEGor95uKMOntiL7dcdSn9tBxNrNXCrN0dXI/TBd1GKCAfqCWKO7wWpcb5OEx2r5+TJeYQQlZaqwsA0n0DBFAkQhCqHNNVoBLFRxwVo6f+9IhWRMbc7j4gq8eH1Q88By0TdlGbQN7YN6DPFbfoasHMGB1YuV/Z0XZ7BDTlYmskZkk1dnZTE5IjE5gpppZViIYVZNeQRaaiBd1H+EMTT9s8IG8CzLvPi3QUyKFQ1GsrZcML3g581L1l1i5pVS6US3HLLLfCJT3xC/azT6Yi/P+c5z4FRAH6A2HFcDJRmooAXMl5g+gkxqvZeY3NeRkVEXchtV334lEckYt7MkWP+U8bE+nG4/+SyKM2MxxCRrIOuRI5I4GSid/Ks8gRe1b5L91mZASjPRKsiKbpmEHt1EsvKBpVOOMxsx2QlJA/7Yt4NpyA2ac6SIlKYmBM+kBARodRaVEsmRWmmBEfc3b5OkjNtuUlwxDueTDjJcX3FQESq8mdH18tqzIAaJhfY4Hkip1IVeGp0YFMPjodvBjpkdHLSKVTAwfcHb6++7Bu66LtNg2ETa+je4LsIIkKfhzqUharlzWsyXHtYhvrjlwK8+7ZQQnBWPHp2Ff7yjidFiTMSeH8YRnf0CwAPfxTgG38H8NU/AeBcGIbuqTAqIq0QWYydvK15RFj1DHXkxICN52Nud4oIq1HigJPBHGkCHoYmnaq/FKthL3XOnM93H2omFJFAi7NTCHfN+Mo+xoj3XIb23QIUY4hhnv1BIY+IR0SmKuHHwMA5PF/5by+B3/wPNwZumA4XTgcazXgfVb1Kw0J51IOG8iaZNRP9CvUJ2Lr7/d///fCMZzwDnvnMZ8Jv//Zvw9ramuiiGQWsV2vizc5Sm8UTYBP7wx1JRMZiFJGaE292CsILp/JKM8ojog/DUrJuQ5VmTp72L9oHnLPwN189JtbZCVNphk5rWeVx/8yHABERpZmgIqItTOioP7skfSIc+07o1FcFM47rmkFcsWdOfLjGnbokIvicqLRx90JFSKk37AuraaKFdz36FISpqlgG4Yj38mS8IiJKMyUZAY0LzvHcXjjceVJliIinS4qIeN1wtoWL1o3FSEXk0TX5Ol6zC18zR3Sj4FRjsyJCihZdC4XAyPB2bdX3AW9U19n+GiIiGEWer8jHPAnrsFhtGk9yHSpPKC8TEfMksyoTEV4sOTkSjdhIepCceA+8CbBAgXxf+1OA2/8rdIv//qF74YuPXxCpvC+4WmuP1PHvvwrw2d8M/3x8O8DPP+rlpQTaphlMqvh9kd9TJ16cIqJ9ZviwETebJogiteKP4SEDP+QGP1scBAnM03Wk+VUWuzGrNtuwnzrzgK4jHXuoc+YE7ABRhDj3UOb7MK07OVWa0cgHkhJePpyYQDNeuZOSVWNKMxwymQ8SkbbXdTMWyKEKomJa67S9yJdWbQCHErZy4TKgnL5r23fhu7/7u+Gd73wnvO1tb4OnP/3pcPfdd8O//uu/hgysw0Jdn7VBs2aSgBJ/k7oGolJJuY0VLw6T4TVJEWHJutFCIhKYOCm+9ysia/UWrCzK/Ir2pBzYhzXbD991As6t1DVFxCMiRd4MgibHLDki/Jg0YrSiFJHwfJs4wyrH0OMHp1KKJm9XiiwRSShcLCNQRwu2lC7CJLz42l1KidAxjkQk5hSERtUJqKnU2PLUvOYR0YnIaa9rhjwiCNU5QwPvePIuo1mQylBjbTG86FFZ6sHFoirNIEwmUO6i4lIdGyLDRGQ5NkVV3i6VG4pjShGZdqJj3rmF1Q2WZhI8Iu0IIlIUEdaBjU8/uX31/V0ZGxmPnZPX1KnF6MV89b6Piq+tqX0Ae24EOPQ8+Q/r2kRljYgEO2FMpZkSvRfFcjoiwuXhLESkNDbltYRnPO1iemqRiJNQRnVFpAuPCCrLOKdIgAc8auAskTtoWjU8+JHomVOpSjMlf2lGIwIurZ0iz8SgZuB6jNfsMscA4KEkmO2jPCKF2NIMe0RQEfEFS7Ki7RZgPENpXkG7xnzDFg1o0Oe6bfAWYaPEli/NMH7iJ34Cjh49Ktpz77jjDpGuOiqo64tzTPhQECzDR10kbFZtxQ29MiEQjoQpgcbERX3wXbMN9xxfginyNuT3Pg1ccGDCqYOzfh7+/cFT4vugOsGLZFDSTxfxHujT1xZVVZoJtu8mGFZdNqtCJVZFumz7hMoSWVw4p1JVz7rY4eLAa272BhbqkIPvop3yIt6dO2byJTHsEFUP8djYXIeSKyWnnnHnhMrCysG9TW9isz55l9Esyte+tR44gdFm5zp5OLour6uriYh4Me9hRYSnQHMYldhYtMWQiR23mptKMw6HnKHZmIjIFFSFadeENhFvfcMUnikeZx6hiLBCyJ8HfaiXnoMjH6hGGvB1f/hfoBuglH92RT6eyJC2dgvKC/J0/u6DvwXwI58BeOM/eQPINJMy+7aCpRkmhIqIdDwVs5SmNKMpImmNquL/jU+JICz5ZLPFvKMXCv1l8vH3p2sGM2iiFBHOEvnA+o3yeV94FODU17tXRNgjQqWZHJVmkGDlaeK0qSyjeyeUX8yU7aPad+On77IigodFLKN7/19eb6gUxvndIpHD45CTajo6q43tfPhaq+ilGfysR40k2QoR76MMJiLCcZxBueBAp8g5LbTwxk7fNEGZVdkjog2YMxERWsjvOrbgbaITO8CZ3qdUkZy+sOuKCC2SOBAttoYeAN6fb/puoN69yl0zwUCzpBZeIiI4VTRORRKlgAJN4kUjNPlDTnVmRbfJ7deEQ+gQ6OeIV0Tq3pyZyiyMl4twGrZ5ighu8pRXUncLcBGmBLnhFl2eOSNuC2ZUxwyjU5oyKhXcutsuSyKF5Zz5CSkJezHvHhEp0ulZDV/U5X99FD0trhepg6cZiHNH5IjgOKgG0gaCpakoItIJTP71umbiZ8dwCahN8jFv5jgvic3WCsHT/Z1/BN3g1KL3mmGWjhEXHxMEbs0tw98+lvdOtdN7Q0qY6lYKhJSFhmBqqlAsEWFV02lpc2bSKyKVogzpQzSr2TKXUPXg+xTqlPZYujGr1mt17bCjTZQNKCKna0VoXfky+cN7/z57smrAm6YHiuF7J+LdnWQigt4JJBlK2QseTLShdXHtu6o047TFsD2TWdU0NysRjqM60zjRNwpt2sN8M5/0ZFW9IDuiPpEtT0SaVJppBidqpiQiUWZVjtPuUFtraijzE5VmGk0vnMdXmtEn8HbgricXvU10bBZg7rDyiXBZRkiV2sXKiyQuPuuNVsZAM3/7rlkRkWbJ3//Cafi1j9wvT1oxighPEe0Uk7uXOnR6v3D+rFYqmYNvu3GvrxyiY0IffBeliGivId7Oxdy8RwyRMJB58qxQShyhiODvIXl4yPWICHpEgkTEZTUqWJMmf0u9KJ/TgXn5vqBPxtvgaTFqtxQJVD4LfWPUlBNHJbxSN0wjgYiQpC4UkQgFwWXiHVRElFm1Fpsj0ubrj65fvI5CJ3BeLPF38Zp9/FMA52UmThac0MoxUcQKTst2a+x6OrZYhwdOkcF3mt7L5eMGIuJXLQpEHgpMJrTXIDiW3f8fvXImT94Nqi1xwPIlE5H6ekYi0vLCwcKKSHYi0tKJkEERmaoUYYpa6M8depX84b0fyHRCN5Vm8rQm4mcCD1NIBrzU52gCIH0iDrTocBA6mGg5IrHJqvTehxQRMqs2uiUigKSd0qoThpK22edlsBbgoU2pqghLREYTjXp3RKRNHpFOxMLr8AkwIxFxAmZVn+KiExEt8KbaaAkigiPcBSoeEXnW3DJMklHVxQ1eUxp4to5ueE0Cnjp87bshj4hmViVF5FNP1OCPPvcEfPcffgkuFDjUKEBEcDCfIiLJ3UuFcRk0hr6Y+iK107qz8JqbPTJgLM3E5Ij4wszwNSQfzTl3xpPpSX05DXOAI4i4Iwp9Ik+6u6BZwqyEPJx0t4VKMzlaoHOBtlomNysUKrZ/lobtleSpzac0aKdtfv+YkMjf0/JGSGHix89kQEe+I6+NHKoq9PhQYo/yiKjRAwEi4nlEoggMtwmP+a6bkikngRU8bAO96uXy+69kHwlxYsEjIotRpZkz94kvD3bk4MKP3X/GqIiIwZH03Hxt9OL1ZyLS9r1XOH+oos+lCkLrfGN1IgsRwZLButulItLC/CRt2q+erBpUqFLApY1ceID0dcpQnnls5jYAJABI8o7d0ZfSDColSARQEVG/YzCqBg2ibSqXRikiScmqBZUjgvcfVkQaKcyqUeAW+aRZYC6VXB3DXoOEC9umVXlmRGPerSJCjuSWofUpDko245Cj4Aur196zQBnfmIhotx9Rmnn03KqYkTKX4010RhGRZ8+uGFt39SAsXHzQbJZ2AUP12pNI4zwiXi4I4u5ji/C6v6XOHtzQ9eChVh0cqu06urk1ApUpWTKpLl+Ek8dkh0VrfJfoy48CpqAux3hE8NTMHTPsl0DFg30igjAE4t25hIRZIjg5+YvP/SP4wPXvggWYVhkiQSKSD45tPyfzXo4XDvoUkfFSITxvRp9BxPNBUDlRHg1v0cq3aHgflWbYp2EKtRIdVJpZFdUhE3haLqeJqlJZQo4Ie1E6XKpUEdYxpRm8Dm79Ifn93X+ROQfheApFxD19r/h6v3tIfP3YA6eNRAQ3OS/hOFiaYSJCnS88MA0zhOJOwwaPiP66JgGvvXVHXiut9QC5TaGIyKGZtK70qIg4dUns63n/GqNjz6x8vifWXIDrXpW5PIOPK9g1kyezKhIB9L202vGTd4OdM2wg9x1McIFjjwiaVVNEvKMigvetwDlQbveKSIdauZMUEb7eHEOHFqaD40Fh1GPetzwR6ZAikpWIcPsim/dCLyyFhJnksjgER4r7bl/rVNADzb74mPQY7CnTJjQ2p4jIodxZ2D/eDs2ZCZKHtESEN43g8CleVPHxcKAZexQwyOudr70Rrt09BQ+vVaSx0e2Aq6eVakw9OC/BhKlZObeitb4AS+ekunLZZZfHekv8ishy7MA7Ud4SZCAPp132iZxQGxOWgTitFcGdM08Ur4JvlGQmQLA0U5yQt1nAIDYdZx8UXx4hj8mBeVJExDC5QGmGiACaFDGnB4EntpAi4bpQaK37SjOm4YYFUkTymKFDtf04RcSUpeEvzUQQkaB8rJVmQooIEw783SteJK9l3Cgyegr8iojZI9I5I4nIg50DQiy898QynEQCQx4rNqvKUobWZaKhSMREdLe5LjQprRbfk9jxDlqgGd927GwaA6pMRAKZMZnKHPjZpfcDh6d1pYgQsVcbuwEYaoY4id6dG75T/vD+D6XqikITKnYQRnXNIPlARQJLM7w2qYF4MUSkwYqIvh5gOBodikSgWUxphslOIaSINHsuzXToOXKnWiTos5WLOMCJULMRj3nf8kSEHcmm1qc0w+k6EQPjVO29lC4kjeHNDfGXZsTUWL0VTSMRGOGO2F6ohUozhaUn4Z2vvtKsNGiDlarNdB4RDk8LDr3TI4kFEel0lEehNDYN33HTPvjAf74Nvvlp++AEbexf/bqszwvQ72IEOG+wcZjdJrsayq0VKFdltPSN11NrYAQmfB6R8MKtx7tzaQZbfn1ZIlyaoTkzQSKChlfM4ED4hliJA/6seUgZKSJ312Xq5IG55NIMmuBKtMn5h84xYamrgC2cAoxwDKehAk+eLmulGWcdLkaZO9sGRUQQoVJs+y4rIm7BVJqJUESQkOI1/4wfkH+/8/9mavk8seg9X6PnZf0i5Kkb6mT5crjl4JxXngkoImLjdgzBgqJ8p/293VQTjfG94/AsIzSDN6sTWUoz4j5y8vVsV7MqIp5ZVaiw2vvZyjiNG5Gjz2+rGE1EONTs1FIV4PLbAcbmZQfakc+kerzioYaG3nlEBBUJ9ImkUUS4NKMUHFJ05JPwrmFhVo1p3+XHEVWawc9plqGnOnimEc84igJ/tvIRxujNEPO+5YlImxY9JRmnRJtlMxMRQVZOJ800p3vjAC0qzXDpp6XHfSM0KZXhO80TEcET3VR72Zx4mM+uiLCXJJys6snMy1ia0S74Z117SGSvYKnh977nJqhPytPm6WOaAVEr46RpdytNzKnnvMuRqaTbd0t5PQqoYKjpu4HSDM+ZmQ4oIthpo0ozSEK0DBEs2zC2TcjX8vxaQ52+9TAzcZNT8nbGOtpigCeUBTkW/Usrklztn+PSjE5EqqHx5GzK9Xk0eNHSFKbzVJoxGUl58nS+PKGZVdfhogh3C8PL0tCISDFZEclx6ysrIrrHKURE6Lny7z799fJaxXbPE1+DbsyqS9VmuDOM/CHHOjsESXzZU3aZiYjr0uRXJgv+taJApRlEu1WHBsW1CyISt4kZAs3Shioy6rlxY4puqtIMrx342moHsXZCboUJ+cay33NhAIeaCUUEN/Drv13+wzeSlS58/XEKtjdVt2hUJJCMhKIFDOD3RRERXRHRyp+CiMRF7tP9i9KMfn1pXTfdKiIuXQtJRCRPn+sifoYNwM/nqGeJbHkighNruyEi3PZlrN9pC37s9E3TG8KKCLWjtWnjaQeNV5q5jFFp02KEtf6J7VgLkD3ydOL2BYsFNoPURESVZtisGiQiDVitNdWcEzTsvegGL+gLSyftGUmSxhcfCse7xwy884EUi+3OEsw75LmYCs8vCrXvsiKCi4128luutsRCElJESgX/4Dvf5F2PiGyn2TZCEaHTd9CsykRk3NWIyHl8DVzojG2Do3X5/uxnRYRaDAVoMeLTKi5wbKIrm3I8qGMJFSY2NCrfEgGvrxIREdHd4Qs0MysiXDLkNNdQaShi0czThFhVx/YNWYtRRBAT2wBueI3nFUkBJB16+y4KKUhGfKCyzAPuQZibKMFLr5fXz5cevwBLxR3eY6kt0sbNZKEUqYg0Gw014K8JxfgwQ+0woQ4UGQLNdCISnCuUTRHxzKppzJEmcLmR5xXFKSInURFBPPW75NcH/jHyutFbd1WnHoINsewVgY70iAhFJHBIMoBVilpeCzULrN84ORd9X2lKM9i+2+/SjMvkMOa1ESZqOvQWIjq0sDw46jHvW56IuFSaYfaZdTid6iLQoeV25DOWZrx2MLkxMtHhdmGTrIvYPp6HHG0+YhPFBXDukO/kF0VEsnTNhD0ihlkz9RY8/KRUDtZgDJ57lT9au7r7GeLrwZW7vR+StCsUkVRERG6alzunvIAt9MbEAEnFKlRUUJC++JwnBWBbrupTRDAd9ZSeJcJmVRp4x9g+waWZhlaa8b9nk9PzHnnkxYX8IdXZq+TtTJaVIiRKMwGPSJOIc0NXRPL5cGmEiB0+X04zDQ43xM2oQptRCU9TlWRFxOscCQaaJRGRgELIpRkM5ItKVtXUxIWdt4qvS6cfgzQ4u1KTHRQ5OWNI3EawPKMRkfnxkgjKw9Re/H+fenxFlg4QyyfJU6EpCBqK2muBRLHVSNmJZwo0y7gONfJERIKBXEn/r+WVmsR95nKqE7AbIlIkAzZn5cQpIkgQRV7LwecATO2RZZFHPx57+/j6qzXHQETw31ANEeMC0uSI0GenimMXxB0sG1t3cRlFNTeNIuIPNPOSWceKXU5SyVMHZQwREd1P6jAxkVyasV0zowl2HGdJVdUVEaNsRgsphlGVU/gdTEQEFyZR82xRiYYWCQVtNgTitn3apkebqCrPRBIRNpi2YZ1DyBLAyol36gi372LXzJ0Py3JDuzgRqpE6h58rvh5uPOKFnqmBdxjvnoKIsJmUQpScyd2JgXRYSsFWNjb46YsPd1XM59dDHhE0pspfekK9t3LgnW5WJUVkraGMnkGz6vT0rHaJUMw7qVXnxy73dcyI+zZ4RFg2Rze+XpoJlUbodV1zx6BMU6WZDDCQfFZA/n4RT1N0msXrAQ1yJnLKiohu2MSumaSI9wLdd44HS2pqXD2pNAMAf3WvvD4WzlFXS0qj6u6ZinpvQgZc6ph5oHNIKCKIl14vyzP/huWZGTKsLp3w5W4EFRH06jRcec22hCJSS0dEtBAxddrPqIi0iIiwH6ur9l0iVmm7NEwotTi8MFoR4VAzVFWFOoWlk6eQ0oWDBhMOQD5FJFCaYY9GWkWEJ/Cu5wxdM/rk3XwuXtXSPCK+QZE8K6wHRQSYlMYMJcXRHmM0tDWaiGilGauIjCiYiARa8pKgIq6JKJgWUky0izWrGcBmNfzQodTY4Q0oSEQ0aRvxjN10P1iO4dMCExE6xYvefd9teIte3ZC6aYLcnPQ6bDjQbA2TXh897htVrmN275Vw3N0ub+P4l/0ekYSBdwpEFBQSyjIIVjBWlWHVW3ywpILwhcKp9l06GdMmXCtMCwXCZFY9u1yTHhlDaWZ6oqKm/64sXfQpIse4dZfKMuIhFAuhiPcmKXhYmsHTftAjok6zpI4JYjcuF9tCgCTghlBxSOHAkklpUobe4WNFVcRg8OTR8bph0+hRCaBI84yUQqjaHuPad+XvPnR6BT52RP5OpWUYUBbjD9k3O6aUKTZ1C2Cnxjn52j/oHhBJtoiXERH59EPnoD3FPpETZFY1KyLYIqlP426RatVKrYhgoJlWJsmAVrFLIqJ5XphY9UJEym15/85YdPs8Hki20essfCKIp1L3zEP/4iuVmokIXyeO5/+gr2JKrfKIsCISlyMir/M1U8ChmrwbH+8e9qho4xXoc9ALEXHo+uDRAiag+szT43MR6ruMeaf9zSoiowl2HJvCYGKRiyvNyIUUWWhs+54BLHnLvvSON+00qjRDF+GN211fycJHRBgRigiiQae4JPjCzMQDDptVEUuL0kA6PjVrHH19R0dO3m089jn5QzK34muWpTSThYjwgmBq4eXcjGlYDXhEUNasQFXLR1guytbhCS2oCHNEEEjCGEGzKkq8a46877XlBZ8iwvHwbFRFjJXCGzxvck3H8x/opREVB62VZsaJiBSpluwjInT9CPUhlwOHDM2Yp2Jq4VVTZQNEJNasKrwotQAR8fwR0e278nd/998fEcMMEVPtBCJCSZ3HSRHBqbusdviez8XHBLmrOxU46u5SHU437p+FnVNlscCfUW3bJ33tuyaywEQEu9zaauBlEhHRA826U0Ta1KVi6ohK9oho7btau2iSOdKESmfVl5WTlCUiOmcQe2+WJVVch4VfKkVpBkksqxS6ItKS7btoatX/LSriHbFKn0d/aYYM4W4xNlU1XJrphPJ2up41A96hVE19NgAHjPJhImpoK5ahbI7IiIPrb7mMeR9KnjVdJHR6RaNg1tYtTlbFqaTIsPmC5pS94P1j3z9+Jq+a6fjLMmmISL4ohuOJh5wwatqYbmhQRMTIetykaSR4waCIoMpwT+4p8nk98bmuumZEBxCd3tMSES6lLHPnjCbHorcDlZ5xWlA9j4j8P4t5ST7k93KD0j0i02MFpVDwfZmCkKq08FWRiGD5ZPFJ8fe7art9GSIq0EzNmqFAMLoe0AhpMouq91GVZiowOTmlZgqFSzNNPylVWSLVUKgZLrQ82K2gGTTFrBl+nKbTmx6yxvKxah1vQy04XkArzTxyZgX++Run4KIrn8MEpgdHtMzDhccA/tdhgI+9XWaBiJRaVESIiOgKD/lDjhcPi3Idn9RR3XjxdVIVuW91IuARiSYLrFhKIlLzRXRHQiPvvpTTDHAL4+aQvAQ0mk0ocucbkcK07aImjHUkEcpT4nFilsgSXRO4eO2UawGcJVO9AUgEcU0U0NdCpUjIsgyalLN0zazyocRgVk2aMxMqzWhx9TyTSZpVu/OIOET2HWqxT1JEIolIUZvAq88dGyFsebMqG/hExHUW8GIUo4jUUBHJWJrRu2Fw4W/T7XciSjMzRRdeecNuGFcdMxmIiOMo+biRkojg5mUmImyelYuFadqvjicmny7/+cxd8sOhdc2kIm+4gOmqSIbSzInOXChmHj0iY9gUy4PLlEdEPpYLec9weyG3PUREUJ3g8ozJH8Jgl359bcE7AU7shAeXS6HSDL4OYUUkbF5GV38jVJrxzL/TU+T9IFVCPZaGYRHTskSCiohsYWUionXN+HJMTJ4p79oqskdEiwFvBId6KbPqBPzuvz8qOl6uOLBXdGAhXJrNE8KTX5Lk8u6/gBML60oR4ffCV2oif8ijucvEV1ZNENzG+7kzZa00k1IRaTWgowb8JXlEqAzrYEcOR+dnTHimtOR8xnwI30RXOtRwuZkPP90QkeJ4vCKCpTLE0fPa4915nd/LZgASQc9HEyYinKyKh7csOSLLpoDDlJN39ftAQo2KTHAmE5K7WLNrmg7KdkxppoYekXosEfF1zdjSzGjCi7iudElEoj0iNUxWzBpmo9XOkYjwotAJfqjoIn3xVdPw7u+9BaBK5kd9c56VvgMFAylo0/NgyT8JOGDPT0TYrMqBZg2fIhKMlWe0Zi4Ts2HEILETX83eNRMkXWhWTamIoBSvzKemVFV8rYm08f8552zzfteZV+3AOjhLJI6INKjE01hbVP4Qd+e1cJw2zmizKrWZ82nb8ZMgLNWIn/MGw6+nOwYz00REcCGncemIWr0KOc5lUESEWnhF50yQiHiqgN6ymti+S58HNHRWyuXQhsvkyvt9+VqcqTnwkXtku/R//7anwRLI92R1QQbYhbB+Xn7FkCxUR2i+CXbEIBb1lmTa9O5vy9by+Qnv/brtim2ig+aROkXjL7FHJFoRaRER6TSQiHAkQFJpxnsNph0eCZGtNOPS56tIKbpp4XvNWRHhxxMxPysKuE5N0pyrYoIicsM+eX3ddYzWK8Su61MpIsE5Mz6PCCartuTgu5B/LUYRWWKPCF4zrJBqXTOxrbuB+2jqCbGGvJ2syJMiwuM+EhWRCHuBNatuAuTZRMcntYz1O57IaTSrut0rIty+yxd0J2h8C9YPa4vh0gxuLtgexzBEALNBLT0RCSoiPGuG59bID83l07TBBWPlCbtnxpRPBI58XlNEsDST8jXLqIjge4GHE0VEFp7wD7zTM0SoBs2y6hkgwyp1zAQVEYRPERkzL0CcPNlcXwI4e79q3cWNDu+SpWt539rkTDYtszISuB7a9Hc1EoBLM1CB2ZlpozrRoMnTvkWsrKWrGhQRlsf1BFAZaMZdZLUYYq59HrRNuhUkL/T7//LQklBD0ED69AOzgGMdxXO6SIPpgsDNhLCfWsPxBD5LasdFQ2nmrsb+UAoudlT88fc/A9bKckBj/eJxMZ06ThFRpZlWzSMiiaUZ798nmbhnVESY6Bfa2YgId1+J0ixv7GrgZjZFBK8LvF70MQZRuOWQVCO/cXzJm7q8k4nI/SrO/ZMPnfVNBPd1zRhKM7I04kIz7fRdOuycdHYD7LhWqiB3vDcURpZYmtGISKepm6HNk5qzIE8qfcFt+jNKAkRkLMEj4m/ftTkiI62IFLJGscd9aJVZtZTZrKrPn8Bef5dYthtk96prhxZxZvPBbhK9PGMgIhyaw3JyEnBB8EmfbBojIoIkBReC6+adWEVk1wwaVkmSPeoRkUyKiE66dMIVAVQOJkoFeLITVkREvHsgVRXBGRQnuZyDRjt31khEdlCbaJwi0qbOpU51SXVtnKvI1t090xXVkqtKMyqfgzY32uRaAc8QGyPVPBlNYdo2G0FEKIoc7X1qM9KzRAJdMz7DpkYkynn9cZo8U0xENM9ULqfKjazyeI9RPq7PH5Vff+rFMmNlNS8f2/qyRzh8WJMzlxA3ufeHFRF+PusX1QyZu+qyM4a7ZhiX75iEt7/upeL7MXcd/vzT93qBZgay4GVwNNVnMjGbKFdQXUq8kWdVRHJE9EtZiQhdB4LQ8meYn1dGIoLlWrxexONIICKHt42L1xrLKPedpHIIEgEEvifVRfiLO47CG993J/zqR+R76JVmTIqIP1m17euaSZEj0nIBvunn5Q+/+HtyHeX2XWFWTecRQbS0DkonYlJzFuSLyYMI03hEkPx7gWY24n3kgMybI65FjkIXUeycqxB9AuyyNONIhs+lGc4tUWBzIRMRLs3om3OIiIRLM1wXTq2INPSTifZB1xbdb79hG1y3LRdPRKbKHhE59mWAquwiwQ6V1GOzMyoiTB6Oujs9jwgRvQtr9VCqKv8+4kTbIyInWl5rr440HhEuj7kYyU2lmc8uSc/JVbv8748szfgJJ5tVWQFhsJlZtXvXPLPq9qkxYZwWP9dORK2afL4NfTMqx3lE9Dp9INCMShOuqZ6tFEIkIrnkwZH0+2tuGV5y3S4l51cL8mtjKYqIeD+/1XlQhMPh54/bd5XCQ2WZ9vQBkbSLKtl0Jfx+3XzVfmgU5X0W106F2l3NRKTh+QOS1A18zelz7CkiGYkImcHL6NHIMIeHHyO/B+LhKJXV7EmIOpVXG02YpAnfTrCbzXAYuPmg/Px87eiCt2ZNS2UKybnIcAGAj9xzSqkmPpO80SPSEQc3NIxiyqn+b7ER77jBP+U7ALZfI1VlVEV87btJpRnvsXAKtk5EdFN3VuR4urZpHpPmEUk0qxY0s6pVREYPGBvMb2IxYmBQUpst5yoYFRE3e45I0KyqSjP6h88XdsOKiMEjkkkRqaUONMur5MLwNGDE/3nNdVDmE1pkaaYCj7p7YdmZlifmJ+9Qm09mj0iKVFUGmk8xFVWUpHDK5tIxQUh9A+90RYR8IE8S+UAcbcrXeCJAmDg4K640wwv1WO00wLLMWnnP/fJ1fP2z/bNyTLNmTBuI3qHBikiHZo/g5OPtkyVV4qmte90VLVJEOHk1ySOCZTlT54jPrGq6jrR2dg6SEo+RbiNIRFxSx3Dy8E++SA5sRNSL8j1uriYTkYO5c/DU6TWfEVVN4CUisj5/rSrLYLeMCaU5uUHudS5oz92kiGhEMENIIiurShHJWJphIiJaVjN0RCjCqhlq49pFf/kf74ObfuVjcOxiWHmpry15XqOYQDPGzVSe+dqTREQ0w2rz5L1w55GLqjX1C49e8EiwqWuGRl/g7Cs0qoo03SxD75CIYAnnBW/2VBG6jjjQLBZa+aej+QX5gFrImE+lg8s6mFYdpYis12pe91PE9WY9IiMO3FQ5Il3M2uhmOJ2RiFD7bleKSMlvVuWLO6SIlPtSmuHb4Q0uCf5abd6fJ8IffFyIOWApQhHZOV0RbZN3Odf5wsVS54jopCtFqmooXXWS5t8sPCEi2dGOo0oz2mvIHpFHGvMy12J8Gxxr+I2sDG4BjVNEchT4dHBNboZrpe1wolaBK3ZMwIuv3el/eoauGVYcwkTE33rJQ9Aazph4nIqIVD1p1su70IlIvEfERESwK0B5Voylypoyb+ut2dwuGiTBHTq11ZwyPGWvt7G1KnIDc7G0YsL6Bd/zeX7pEZ//Q7zP+EafkVOfF6eukf8eKMv4QMPvXntFx9tsYxQR3IyUopCmFTeoiGQszRR0op+hI4JDyzoa8eF2UZPv7XOPnBdlgHuOh3Nc6mi8JnNnmmDIm2nK8VePLsiod82wev6Ju325Mv/0jVParJlosyoSMVRD5PTd9O27SmkQqsjV8kD35T+Sz0uYVROICM7OAnk/HS7NYJYJdd/5JjNnRYHbuw3pw4TauvaeF+MCzWzXzMhC5ijEp9Il1e94Sm7/PCJ614yrmHWoNBMciJSqNDMZebEbTYZJgWahTh4uF9W86PYoRWRa/u5nm3IzYMgckZQqEj/XlGUZxAQRi5VxIiIXn1CpqjuK/jkz+u8vtivQfMNHofOGf4W1hutr7WVgKYARTFVllKi9cXtbys/3NeVG9yPfdEXoVI4kCFUBAXp/lCISkPBVGBVt6jx7BJM3UQ6vO+WQItImRcSXd0En2mmohmaz+E6lgQ3T5b/HjDwIliq5LMinc+/35ftQrEz6avSdijQJ50ztu7ih0Un20alnia83du73kULcpPCUzYrI2XGptrCHJI6IvOpAuMvEd/f0WcANnolIcEqvEfS6cWkjqyJSLhWEiijAs6ZSwOVcGk0RUe2iHSJsGpiULtfC6117TZKTdcccMR4EhsYheT2zXPfyRMiw2jp5r/KSIP7tvtOi5CJLM9Htu6iC4O/hmpmma8aniIjfRVXkv8rvV+UYAQwJLMZNTyZ0SJVRpRmNjBfL3SsioPkFQ6F/hCaVYIXpOIL44h5kI95HGDJZsrsgobz60AbCmKK6BLrpmtFKM74Pn3i8gROoKs0EiYjMSRDhXwZSwHJs2hAj6RFpRzwmjRzxohgxBGvHVFmIGF9skVGNgF0zqVUkritvuyLd72ullqUK/d+LjyvT3P5KI6yIaGRjbe5aWJum1zPJIxJIVWUEuwq+0dwnkjy//SaKE48ozaj3h70igYwK/rvyaBAR7BTk5tAgItIgX4j4N1JE2vrkaVKZhEdk3b8h+bI0gl4G2kDFJhzwKrDCITwi+sLObaO6wRWniVIZaoKC2Bg5nMKLl1nNQERQDSCy9sXyc8TXy9e/Lp9SMa9SdRdW11Wb6LGSvG7mtNbdEKb3hTqszF0zRU0R4QF/aYgITUaOUVvigOohDpYUYPKfApwIrUZVaKUAYZTX/CB4DTApXTEQkRYdgjisL/Exl/Jw/Z5pv0+EiMjM6qNiW/3Pt18piD2OS/ji4xcEYVDrTkTXDJKQtuiaSW9W9XkvWBUhiNJMigwQpYa1WmEi0pMiUvbmMXGHUQBNPkzgZzhCFUZ7gO2aGfXSTEIPdpJHJB9Iq/QRkS6SVfVBWFiaUWbY0KavqQ8IU44IYmoXwIvfDvDSXzUuoKq9LC0REYpIxIlDN9CyTByhiKDkibkbOPm0XfLk90xdM095NcB3/CHAS34p3e9r5tMLJd5gjsBXjsqN7dB4I6SI4OPkThaMb1dD/3KOWsxMHpGoza0y6bUBIx5298MPPO8yn3fCXJohpYNKdSEiwkSA3keePdKhclyTiEhTJyJNExFhRWRdKAj6Cdg37yNIRNhfANhy7t+sOO01VKosGLJH2g1wXHkfk5N+v0F+Upp6S82laH9IYQw+3nyq+HYONzUq43B5pnriXvlaFsfhGJmWgx0zJkUELh6RX/H0a5D8uVSGpCqXpXUzqIBkVETw9fQUkQwdEXw9affnEREsBXhEBK8B5qPL1fDBq12VRL5KYX1pwG28WJ4R2H616CCadldgByzCN129A15xg+xu++d7TvlLwhFdM60MgWb8efN5L/B9/SbyiqRt39UUEVWa0YhIuQ+KSDlGEWGfVydGfcPnqmbNYNdMBlPzoLClk1WxT50jybMOveNkSY681tHRSzM9BZq54LSjTqAshTfkhcUekWBpBvH8nwW47SdindloUFP12hj43OtxLcX1eI8IYvdMWbSOLmy/Wf1Mds2kfM1w87vxP2YrzRAROVugdt+LT8BXjsjFcFepZlSVuIUXJ11inZx/FpzKqXtEZiLMquPaBF7E8cIheN2zDpp/Vzerso+CFA83QEzVhkLqQq4lNyWXFKlWrhIiIkqe14kIRbxPk3lS94lEeUTEbekkN9B10aqT+TTweXBM7aLazJRpCmJTD21aEpHxlhaGxVijMLOJHXD/Uhke69D7e+wOHzGcvUfW/+GyF8CF9XYoQySSiLAiEqGccmkGiQhHAvBnKxbB2yt0QURYEcky+K5lUERU7H7TdwLXo/5NikiHUknrPMk2BW6izpm72LBarMDapDRrv2j+vDCzf/MN8j386P2nxWcvLtAMyYdo39U9IvoIiABYqQ55L254DcC2q5SnKV1pxvMH6ddzEwP8SjFqWxIK5vfDd9/02XL1z3CcWdXtpD50DhJbmojoHpFuFREMmwlCSdE9lmZ0RYTd9cauGVyA6BQZKs0k3h23iDUiWXdkoFmcR4QXxQhFBLFrSv7+sWmPiODpLrOvJgO4nHI6LzcYd+EIPHRGLqSzuXUjmWPDKi6G+Ee/neCmcOP+Gdg1XfYNr/Pd/7RfEbnllmcbW0cReBpTygedYFVHQ+DkzESEywIc+Z0ry1Nqi/5dnynERMQtGBQRSvo8xTV8EQnvmbuDRCSn30bLTEQaUPbFXXtlQZ2IVNUiPjflP2GPzUgFY7KtxXEHUlXb49tESenLHJZ39AuKbBxyTsOuIx+WP/+mn1flhlhFZIZKeHw9R7TXeqWxpjJ75tPMrwoSj4ztu7i+oIooUE/vETEZah1fKcBbC/Q2bp4s7bstMprXqQyYRRHBsiiXR47kiIjMyffymZfNC3KP3U5feOxCwqwZjHh3xZqZKkeECHEt2I2CxObbfw+Ozz0T/rF9W3KyqkZEVGOBNnk3dRSBCVpIZFTXjGrHjzCqhgLNEBkHJA4CW5uINPXSTLaTSIF+X80m0eDW9Zp4t4oISo2uGj0fWZrBjYkyOMQilnF4X77oObP1JMM48qbad6M8Inihq1HuZo8Ih5ohHixJKV08ncJ4ZCtlP8BegROwQ5yYnOYabHeX4NC2cSg1lo3lLSYdWJZRioiBiCD+/sdug0///AsjlbCxKT0YbR5e9wLvuRtB76coV7RbagPRT7Li3xURaYjSSJ47Hyi3hMsvbSIF4ndNbab03GVktwsPnPI2/UZDIwwBL0OxUBDkwURE2BTbDJAn7jzzJUcqEl8SPiIdk/O7vMcWHK1ApZkatfh+o0BpnU9+URGRn8h/CHL4Ol71MoD9tyi1J5Uiop53lCLC07ibUKDXPlcajCKy6nahiCgioj13RUT8G9/FBEUEqEOrWYj+rAeBibfojcJ2W+7EubMqFZAbijJsDo3KL3uKVDvRZBwXaOZTRDLkiIjQyKASfPDZ8OGnvQcecfcnz5rB9zykiDS1gXc9HKryXpRDVI4I8EiHGPUNrxEsqKsJ2SM4b2ZLE5H1elMNacu6gReo9qec3Br4pIlyeOZNVTuVoGEsF6WI6H/nXAXcRFK2sTJYPsaTLhKzJFSj2nfFY6/42ijlE5lIVETudQ/D+t7nwMfaN6eTs3uAmsDbxBQredo96JyRJ7QIwy8bVqUi0o4lIrh4xpXjHC1nYXnqSiFBpyGKAkgcVKkuoIjwyAFWyPjxVKQi1SHFTw80c8gU6rv26fFhO+QE1OB+Tr/EjUbPqQhcj+ijUWWkQGmGTbFcHjKZI9VCq3XY6F1IiJm57WrwXWuVSjGB0sxyXr53J6bkUEU4eZcgN1fmz8J35GnS8wveIr6kUkSQyOnZGBEeDpV83GpAgXxjhTSDNIO1/YyKCPqpPCNi+g2GfSy+zp68TkS8tUDvnjIpIjki8E0aX5AGWNbUfSI4a+lLq5Jo7q49rn7vm5/qlV3jAs1EAGRLhkBm6ZpBmNQGJCjiPtMoIrmI0kyvRKQQn6yKpIuV0riuT1blq6ycWUVktNCo6bM2MnpEaBEtcBeBBpfe6FbG2wx1zbTakKOuHD49eg9AWxBXz3RVlpH3513sqHakUkSU9BmhiHC9Hj+gMSc89IggTi634NFv/iv44ebP9SZlpgATCEEo5mVr8yHnDNx6eD6yBXqCSzON+NJMKhSxT0u+bruuoM0yBr7NrFVXG0iou4KuNTEynPw5dbcA5cqYr/zialNXlSKiExH8nhZWjO2+X1NEmr5BaWEiok5cAUXEJfLTypuJCG4iqixIZAdzD4KKyOxExRt8F5w3Q9fcRZpHU9x2GGBqrwytO34nvPj8n0LB6cCDU88RaghigYbgxeaIBFWRqK4WbQimIiJpQhKjSq4pgR0RrIi4mUozTES0++PBlY6/NKN7RJar4fUuTx1yPL4gLThPBIPNPv/oeXjYlS31eZxK3ZH3/+zLt6lkXPOsGW+jb7aliuytT8k5IgjdmOvdlvxZGrOqS2ZVUGZVb3pvauN9nFkVPSKGQyKuRxWavBtHRNiYi7PPBKwicukQEW7LKhpKM7yYdvLZVBad7WM7X6vVUjklISLiU0TORBtVk0ALETqzuSMkCvjhxBOHMeLdp4ic94yqMQoNhpohTi/XFQnq6YObAnxCQULRmZWtuIdyZ+HWfRXvJB80qypFRC/NdP84C+Oy/DF76GmJv1suFQWhEGjVJNEwKGR8feRxg9Hm9rDR1iVFhNU6RI78JDmdiOD7pWLeq/Do2VV1OmYiIjILAu89LuzBOPpQd05AEeHnYFJEsDQTVERQbVrCJF685BfPGkszZ9tyM9w3Nw5wSLbxwt1/Cded+xfx7YemXx8qOcTmiASJSKQiQptjpwHFnhSRbsyqVHajEkkacOmOQ8z0+xYn8KbZIyJyWAIoNOX9drTutzRQCatHF+Czj5wXwyhFGB0qdWQORiLwsuulKmLs2NKuw3arKdp30ygieLvsVzIZQcXAUZosnQRlVG7T7ZAygqVK9pf15hFpGRURXMO42SIXc62xIrLGylmGBN5BYUuXZlpEREQyHiaDZgAH1eBF4hJ7D0rebjdlBu1D1mnXVWkmF/Rj4IbBi9bq2e4VkQxEhEs30YFmrIhc8PkTosChZmeXa+q2M3cZZQQrGXiaOJ2XNemrCmfh8klaYPF0E3jcE7SYrGuKCP+sGzizFKa2T57M4+CPea95qZfBkzNda+LfeeCdO6YWQofJhibLqu6O4CJGPpF9lbpYkB85I2+vTfOIxFybAMFEItJQhCkYULYeNsVGlALYw4KlmaAigljN0dyZ4LwZIr8nKPV2H5qFDxIRueevhDfk39tPh7s6MjsEiS9fc7E5ImkVESYi7QaUiIiU0rRuhpStjGbVgk5E0ntE+DrymYzpvoO5FRdJOYoKNCs2KVQroyJyw75psdGj4vKx+8+IDrr6rOxY4awXxCupPOMFmmmfPW0NQn9OU3TNJJtV/Vki0aWZYhYiwp9Nzay6kaWZ1VoLxkgRceLMqqSIrHM4oi3NjBZaLBknjes2oERGNFQumhxkQ3CYcXaliHgLEU7y5PbgnGmB4s1IlWbiB04lXezVZrxZFbsmEGq2QZC8BT0iMa27OhHBhWiJJN/Urbs9l2ZacH9NdrBcUzoPOXL+m3w27BFZrbc9ItJtaQbxXe8D+E8fUrHWWYiIOskGiIiXiomt0yueIkKPnRcqVY4RRCSivkydM9dTgw+XZ3CgmynDJMkjohTCYGeaUkS80szqKmVSQMloIlWD74ITeEkROVKTz2XfLCoit/l+5Xdar1F+B/6KXRGJZTYONYtTRPig0EFTpbyWi1QW20hFBB9/ldp3eb5QEtCcydeRz5OVjzKreu8nKoLB1NVSmzvkshERLBkgGUHg/eG1Xtl3g/zHs97k3edeuV34eDBbKV4RaQnfRBpFxD/4rt1baUYpIq2AWdU/0qD7HJGW0ay6UkciEj/wTj/cYTSCfGDWrDpS4FbGYO06DUplb8Goay2RiFybFZFssfEhho+egCiPiImIdFOaocUH65BpFZHxvBuviDARiWnd5ehtDgvjYVo9nSBSYEK14rbhjiW5qe11T0dH5OuKCJpV6TXqiYjMXwZwxQtT/aoMNfNaeJVCFgjL4hRPjOfWSzNKESHirAyq+HYhaRGXQOA6pdLMldNyMWbDKg+nC865Ef+lgK58Q0CZRn5CRKQQLs2srsjNtJUf87X6Muol+f60VjVDtHiy8u+PrI55isiO65RKuHLgRfB190rR2ovQO2aCeTDdKCIOERH0XpSonFoMvq4mxJnQU0DE9+fGM3lEMJ+Iy6u+MfUR7bsXeVggJemvBrrrSpRZ43Sx/rBPBPGsy+Yhv/spISKCZODPfvCZ8K037Ihs30W0URFpY7JqOiISink3EJE0ZlWgrhnhRxIPpL+KSDnCIyIm7zrJRIQJl/KIWEVktMBuftMJL60igmjWtYUXI4Z51kSa9r0gHBwgxpM8G5CnRY1zS3xQpZkezKra4pOWiIwV3Hizqu4RSVhEMXMD8cT59YGUZjy/Rwv+7aRcwMeai2IKr3wABiKiyjmeIjLZg0ckC4Qi4nobPF8PQUWEu2uEUVKVZjxFJE/dS6KrJkBEQqZKUtYOT7Z9ikiH0zgNRAQl9iizKke2R53+MbCJFZH1NXlfbsG8iavBd1z+C86ZWSur9lDI5QCe/jpBrKrP/wXld0BFIFXHTHCUgPaYg2C/C6pMaIpFlNMM0tRfE9w48TFnRDPPRCRdaQYVAI4t8BERlers3/h0j4jJJ1LpyPvNjWXziCC4c4aVD45610sziKfsnYHDc2VDaSYnPUuilM2KSLJZNTLmXSNr2T0i/q6ZfrXvIppUFtWB6hSbVeM8jti5ic+jm+6qQWFre0SYiHTR3aKXShr6RaJJ33F1uzjw3AqcB5Hnk4vJTd/H0gwuTEldM8pQGqmIVAIekeR2Pm7hPXphbSBmVZbhUdY8upaHCy4tnifvll8NpzpeTNAjkpQj0m/I0oyniLCk7ttANCIijJJaaYYVkTyRjTypdSivs5chdHKn62j/mPz3B04ui82bSzPBDBNVmuEadDuCiAQ/D1pmDpNcHsqnPC0BuGM0+K6mERFMFSal6Lw7LR6LSrl9xTsA/usRmDosQ/PQ84LvYaoMEaMiElE64UwUUgcQ3LEUC/32MpZlGE0mbSk3GFQAOCE3r/uDohSRABEJds6MdeT95mmydDeGVcTzr9rhlSvPPxL2Gqkwv5KxawVLI/j+qpyjxNJMsiKSJtBMtRN3AqUZt9Dbwarg7UttvWNNV0RUaWY8sbtqlAffbWkiYoy4TgvHUeY8X1uj5kjuloh09LhoN01p5mwPXTOVzIpIhYlIyCMSmAKawrzGoWZHBkREggTifHGvlzeRpIhoyaqDIiL+eTN1leTLnhBGTh+uRQF3GP09QUSkWJGKSIF8IThWnY1uRUpfDZZmthVq4iSFpO34QlWNjjeVD4RZNUoR4SFwQVOs5k/iU2m96k+EDYIH3xVrFOKnlQLbhQlB2lAN8eX35PKiVs/dA9i2y6f8dIqI3jUTX5opakSkMpZGEQm3z2ZFixJNeb5QKiLiGJQ1rYuJN2dUT5h8M7nzKSKuC+Ou3NiK49nXn13TFfjZl14NP/qCK+DqXZMAU3skEcbgOSQjOlhxCChyTESwa6blK83EryUq5j3OI5Ii4l0RHp4DReMYsFTZU9dMXvcLmhURzyMSv4eJdFXVvmuJyGiB39yMvfvqv1NtsKUrIhzI5BbFiO5u0GFFRIQjyQ99wVia8cd/d5cj4vWqVxOSVXmzGMtHdc0EPgwxYWZBReT8amMgZtUg0WnOyFhpOPX1REUEfSUcaNZ1jkhG+OfNVD0iEpjq6YsTp4151a0ooy2rHlyOEeMNqL4cLs1Mq3yIq3BzoChu08RWo1k1QETYFOsETbGaOZKvLR5rXojwVxQmd4QH31FZplqSp+uoeH1WP7Asw76HxI4ZBG6MxYnYtYIPCuW2JCLYco1ps4kwBIplRZseW466V5KAHSHYJSfvP8ojIt8PjFcXDy3nSN9NUBFprKkulUIXRATxUy++Ct7yymulVwf/RJRnvDC/grE00ulIRSRNxLuuiJi6Zrg0k8asqu6HFBFWyHv2iORyarIv+7NCpRnlERlPJF2qNEPjH0YJW1sRUbXrLrpbcL2lE6DPI8KTd6FknKiaBmwGbOMJmBaMoBRv3Ph7UkSSzar875VcglmVkaI0w6FmjI32iOBJmbM1EGO7rvR/OA1kzot4H0ZppmD0iOQD731BJyZERNAlP6EUEflelFwiIk2csxSRQcAlvtqSGteOUe88EyaU8qsCzcxEpNDh7pxg14z8/RIGmtEJvE1D+Upj5munPL0jPPiOwsyWcvK9O7xtIpaIXFxvaIpIis0fN0dWRSIUkRwT+g7F2fNrkQT99rpURDqKiKxn8IgYOlA04zrniFygAwKGis2Myee0UteISF16elpuDsoR71lmKCJyn//natxFVGmGA83SKSJYrkjumklTmiFDOBGRZp2JSD40oTsrOuRfZJUlWhGJ38OwhRdb4gWsIjJiUMmS3cWKs6m0pflCvECmLgbeBYlIA8+YlN1hUkSCC1dXHhFv1PR6M51HpKIUkYj5N4wEsypLszo2ujQTJBE7D9FwNPUATIqIZlZtDNasisQMSa1AqwZFIiI+4oEvdREJSyGsiBDpKo1N+IhITZ+zFDxNcaR5fRmu3zvtGVbZhG0szWjKTcAjorpzgvej5yTQtccDI6OIyNisJCJTneWQIsJ+H5wbZAKrH4tCEeEws5SEgYlIhCKSo89nxZUHkQatDYNQRFwiIsKfkmKCNpIMfM1D9+/LEZGfcd3UO1Wh8QhVTTmlyburMAbj/SLn2+hwsHA0VWkGNLNou0+KSJYcEfV4mIhQqR5JRGJHVgI69Flz9T2GgCUyb1baWCLpUqUZ6xEZLXBbYbfzTVgRaenDwEgREQPvutxUuSuh1cSlnUozptNScOGq9KaIJJlVWT4v5yJc6SFFZCo7ESnlBkZELt8xAVN7rvb/o9Ejos+ake9HT7XfDAjmiPAG4ptBo7pWqKRHRER4ROi5VoiIlN26MJ5WGx1P1g0SSCrN4CbDigi28CpFxKDOSbOqwSMiIs9bZt+HaagXLZJjE+ZrZ2rOMPiOFJFTrcl0ishaEy7yST+NR0TPEolSROjzOc5EhMljEgxD57LCJcKfw9c5xYh33azqu39DwJxu6uUp0frgOxeNwvgzd7x/ZdVx6QOC6sUIs2qwNJNXXTNZ2neVItKMTlZNQ0ScnF8R4VJ9N92YQfBUbTeiNDPm1FMrIrZrZkTh0IfWF3GdAS32iOgXiTa0q3tFpKTqgsZ+/6iFa6xXj0g6s2qZSzNRE4EzKCIcajZYRUTexzPQsT8nY95TKSLa0LuBekS4NKO1ZxYCreG6R8OljRkXHlZEyhPyvcATFA5TlKWZCFlXU0SuJSJyYrEqBrplLs1o5u1Qd442V4mvLc45GY8gIrNzO9Tgu/rKOV+7+JM1+TwOb48nIqiIZGrfFTf6PPl1z42xRGTSIVneKXWhiHS5cemfsxSGVVGaYRKqH2bSKiKaWbVZJSIC4/0rq45Tkt56gIhwV0rwdVLJpqyIpMwRSdE1k6Z9l43K/Ph4PzB5qbLCVYqIqWummb40U8zbrplRBWcq5NIEDxnQpsXGZyQilQWTIflCzwpOaWxhacaJK81oi4iTS9WlEts1k1iaoQ9nrt03j0hQEdloj4i+IYlBd5M7PSNigkcETyC8YQ6la4bTX7Xpz6ahcw4t4FUYVzXqMeqawYVrvd72E5GQIuJ5RNAXwObPIiVbchkiPGvGU24UOMzMdaBYjuuakWPci+QnmZqKUETGy2rw3QoPvqPSzOnWlLBzHJiPMKsS6cBTfqb2XcRN3wvwlmMAT/sPxn/OBzadVtrTsI8IdKeIlEslocCmJiJNXRGJSFYNeEQkEQkrIq01JiI4TqDPRIS6vxJLMxwohh6RLBHvdFDstTTDREQoUvp+EDyo9aKItMJEBA9FkYcJk1nVds2MHpA5F6le7uulz3IbdKG3KF+h36UZ7FIwTpw0LWJ4iu0iDEmfNZPUNRNSRIIf9GCpKIUignLuNJ20+O8bjTe//Fr4Ly++Cr796fukERGTTuMUEVJQ9GTrXobedZ0jQvV4ffqzjwiQcsKqQqs4rmrUBSIiSGzXqlWoijCkiEVMERF5f1ye4WsxmOrK968UEZbQA0PsKsH3VgVoydIMbnoc0DQ+MR1pNl6mwXdrC9S2TgoQZojsnRmLNInzFNeFbhQRvWRlelylABFJrYiE22ezAjeZVY7vThFqJkszzcjSEAayNWhN01+naYNHpLkuTcOrMJ7OT5EGlBWjEppDpZmgR4TMqp0mtHDoHY+gSBloFmdWTZWsyqUiUkQ6fVREgG7DCY5NoCwkr7ya5BHRSjO2a2Z0gB0QvBCnmpIZEzzmczT3wazKF59emjEuUvoi1k1ZRruNNF0zXMfHLod0ikg6hUZXRQZRmnnq/hn4mZdereLlYe5wrCIyHnhM6KTvtiMqK/D1qClFhKLWXUdM5dVRymsR6wETY3ChqlXXoFGvQd5xzYoIl2YwD6bTVoZV3ryCGSby/j0iZCrNoLslRMx9HpEOnF+tK6k5bqz5aj4w+I6IyEWYhsPbo/8fk45jF6uqPTO1IpKAYOBgakXEZxbtThERE3jdMbMisnIGYOmE70e48SpFRD886AM3aTPVlSNWRPTBd611qYisO8mt+pkVEVxL9bVVlWaKRiIgAs3a6RWR+Ij39B6RXMGviGAitnxcfbi2CpUwuSes1pupFREkXVWXZ83YHJGRAfohuJe+W0WEu1s6BkUET7HIQnspzaA50Bt9bVBE9IWrG6OquA15cZbxVKq35RnAHpISm1X74BFB7KZQs0ERkRASFBEcP6+TykGVZcTDER4RvyKCVwUSj8gcD0KnqL3+hTJ0KAob00sbNOXWrIhoJ//6ilJEcDgdwjF0d6DMbQw0Y4XQRMz1WTOtNpxbqcM4R1bH5CKEBt9pXTNRRlXELJGOx8+tqmutXwpcPmAmb6cmIqW+KCLeQDONiOAQtve+AODdz/F5dXDjRU9Y6P619QSjA3Qism2yBNPUvqt7RDrkEanm+0hEhLpbCBtWE7tmZGkm69A7U8Q7BqOl9ojQ/SgiQiTOOKg0Ixx6T0yKiD59N1WgmU1WHT3g6Z/ZZFScdGoi4lt413suzfCC5CvNmIiIvnB1q4j45hnUU5VmitC/QLOgIhKS7wcBNqzG+GwmtC4Z/fuB5IgEFBHc8JWaYzKLMvQuFUwCphIPppc2a/I6FeQkuAHi4sfvJWaJBBQR07WIxEiVkNoGRcT0eVCehJboXDi3WocKdwHEKCINCi5r4yiBTkdJ+ElEZJ6ICA8uzFSWSUAhUJrpDFIRKeTNpZmLjwGsnJLeouWTPv+DsX03V/DmtlDnh18RKUR2zdTzfcoQQWA50VSeiSjNqK4VVwaa5fqgiDRYESkkl2aYcHDXjFJEunw/zUTEr4hg55tfERlP3zVj23dHB8KsF9W+mNHLoS48BH0wcc5HpdswG/qgYbx7fGmm0luGSOA22tqpyQQu3RT72L6L4MF3g5i+G6uI4GsY4bNhn8ggO2b41K66YWiGDBKOYNCSbJ8txipSdaesiEirTsFbuYpc+IPg8kxtSUSmoz+Azaqma1E3y2YtzRSpNIOKSJouAN/gu9qijAOn0kxUhghPe9aRKlW1S0WkkzYTxBco1h0xQlUHBxyGFJHT3/C+p/JVuDSj3afjaLkVdYNHpBjyiLis0vVTEYnqnIkozTARcTFZtd3xckTwYNH10Lv0ZtUclYZydB263ATRDyJSlLeBU7dxPhQDyZPTbnrl1RRmVTV915ZmRge4qaqY4y5zRPjUw/kKAuceFl+ecPf0oIjICwbZrrrQjESk1HtpRvtQm+YZ6OAPrCoX9SHQLNjCO5TSzL5nAMweArjmmyN/ZUJXRAZkVFWlGSYiRHKNiog+/ZaQYzJBaObkddWsrUGbFqMW/SyESZnXgSdpNLxet2faI8UGyVmYVY0eEc2sGvTVcGkGW8ebbTi/UtOk5pgTHp2W87WLaoNdhnERqR3VumtSQPrlDzEFzHG3wyDad7EEjJkxIUXkzL3e9zwROxRoFnjc2pqGp26liEyYFRGHVLqmXgbcqCyRqNIMEQEkILhGpc4RSTP0LkUDQE51zbTFa8Zt7v0gInkiItx2z1jTJ++mMKv6SjNIlDrxfsBBY8tGvItZGylT6RK7W3xERM5HeNjd3zUR4bkVql4e9aHSF7FuSzOOAy7dTr7dUB/A2NJMGrMqLqopa6Q7h01E0BPxX74O8Op3R/6K7gsZpEfElyPCp0/XXJpRpRGK3C4Fpr8K9QP/PxKRejWeiGy73JP3sXNm77T5FO27fwMR4XZ21+AR0UozuIEsrqymOuE5E9vF10J9UflDznemhbBzcH489rXUa/79Lc2Uu1NEDLNesgKVV7Micq9ZEWm2hCdMIPA4vdyKmmhXZ9MmlrXYI4IbN3eaODTgslnoIjogDmNzmUszSEBQWUudI6Ii3mOISIbSTAHo9aLHaYxcyIgcHZJl+bLjnzPDZBIj7hNahYVZlYlIhknNg8LW7ppRA4O6LM1oXg4lQ198Qnz7SGd/z10z4xSOpP/M/3vl3kszgTbKuM4ZNqsq6TPOrJpSDQkqIkPxiCASopj1ktHEAD0iKA03qaSSo7Y7UZoJnNR802+pNBgkTC0iIliW6ajJ0xGb3/wV8usFIiJ7dCJiTlZV9982Bfwldc20YXlFi22PUUSKU/K0XG4seEZVmIY905VY8o/Kjl6O6asiEmhpdtOSir6076IiYiAiEYpIS1c+g4oIv7ctnMfT9Jl69ZIkT+DFwYiIdnFqg0ozC8mlGU0RwXU9nzni3b/moaqRrWvGu39sH2Y/R/Ca6AY5PWtHazPG19+XqpqwfnEeUYe3/BHziWxZIoKney+nvzsioiRCJiLnsSzjwgJMwXmY7l4RoQVpAnQiUtyY0ozeOQNNFWEeBH5YRbqmTxGJ8YikCDNj7KGuGfwsdRsCt9GY8JVmBkdEEG5gQWs6Rf+Y+2D7LM/+CBCmdl6+zm0kIo2q72chbLvCp4h881P3wJXbSpHXogw045k4HhHh2TFIREJql9410+zA2uqKZwKPOeGVp3eKrxPtJbXBXnTRH5LsU9DJRz8VkWJw04l6XTcg0AzXmZBZFf0zaFQ1KCK+AMbgfTIZajfgwlrd9zrhBN4puvaZiBRo4m8npR9sI0ozTERQEcF13csRSdc1E1REON49vUeEFBGnLQiMQ8P58oH0465Q4EGEJkUkXesuQh6KHag7TFitIjJ6HpFuiYj2oRU4+6D48qi7X7zp3W6qLPUx4xUs1hTO04/SjObMxg3hn+7RFi8NH7zrBCxVm8K4OFN2Ijwi2qKWIeUVSzP/+fYr4E16tseIwW9WHSxZcgLXp2myKxITJCiMdRcVEf/j7DARQXJAiogbtWEqReRxRb6edXAylVlVT4FkU6wszUQrIlguWF+VioibUCqdoMF3kzj4jjZY0TET4w8xEZHUc2ZSoBgozaRWWXETpemx3Q69Q4KH77dvgzmjGVUDRIQ7YuR9GjqmEO26P/Tt0/8b4HduhMvK0qe0XJVrZ7FF5LEUHfbW3ZPK0DVDrx8qIUhoPUUkn65rJqCI6OXpNO27eVJE0EOF/zfXaZiviW6QNysisnU3vbWAn+t6jpRG8puNCkZz1R+0R6TL9l0+0anSDPlDHuzIAVndlmbYIzJBHhGeaRNCvl+KiJeu+kefezyUNIhS5R9/Tpac3vjcw5BjiTSUrFrqShFBvPkV18JPvOgqGFXosvSgFZHgqbUdcT3oIVoo1QcVEfYCuRoR6RQSFJGlY57Cwde54eRexvZdVmRWTwOcf0Q+ptqaMquGRqLT9ZJzXFivN4RSg3BiWncRkzT4bgrWwV0+pUozh2M6Zhh6aYbbefuBPIVaMTIZFfk9KPSSrMqBZit+fwh3jmilGTali+slKOlruRU4HFARtnv/HmDhCLw0/zVPEXFdKLVWE1Nne1JEUnTN8DrESkjqHJEIj0iz5SkiaZJVOeIdCRAGqmGHi/i//VREwIvdV4qIk37/4jLUkjNjTq0dMrZ4+67ZOZ4adAFiG5WuiDzc2a/c7N1ATfKk0gxP+d2QQDONde+ecODMch0++DV/EuOnHz4Hj55dFZvxf7j1gLcgBD/ouKjxoprBI7IZoG/qgyYiwaGMrYgR8zz7CLFqUERcuh3hD+F5MFFEZGIHqVqu2IDkHUdEbNOi/oB7EE668+DgaesPXwBwz9+o7hzs2AmWk/TrF1UU7gJIIiKz897gu865h5QikrU008/2XVYV1d+z+M6YgOR7SVYNlGbYH7LvFvmVvDR64JYp64QPQbk2zuOh0gy2PdP/fwo86qWrtmoiYkD8v148arEekQupA81YCclnHXoXUET07pRC8Jo1ge4HuwmlItLsnyJSCE9EVvHuqsMsBREh0rUIRBgtERkNoKnJ84iM9bb4BBSRR0RppntFRBERLs1EKSL9iHjXbudVT5Ef/j/8zONiFg+D1ZDvvvWAzBJQJ5NC9GPKqIiMOiZKw8kRQTiB5N+oOSa6IrJuUETUgoX+EJpHE2kKRVLJnTNkWPWkcXPEexUq8Or6r0LzwHPlPIsP/DCM3/dX9NgMG7OmoKGsPUYnPCchnGm8UoJloOvrvEdE4uLdN9ojEtwcTfN4NlIRCZlVWRG5/HbPM8JoxRERr5Pp1JIkq9vGC2rjuqr1qNfCS11cONAwX5ncmNKMzyMSP2uGlZBC1qF3IY+Il6rKs5rSvPd5IiIFl4hIcMhjN8j7xyAw0MuXdvKuTrouwlSoVDcK2OLJqr3liKjTAzJgPPktHFWKCF6/aeqLJrCsy2ZVnmkT3zXTOxF5weXTYtrqE+fX4F/vPS1+9uDpZfjsI+cBDwZvuI1mskQpIuK2Lk1FZFjtu4h84PqMuh70jQWlep086QnCOBQvR4pI7Ml93m9YjdwIyKOCp8ezMAfnX/M3AC94i/BJ5bHFFhd3kxdFS/IsQ0spgEkLK24OSzT4Lk8bFZZmDs2nUEQ08tHP0gwG4bW05TSoYsUi35sigrK7R0TWpHJ17kE/EcHSDGZcaB4e01C2nJrG3YTTRET2lJC0yv+7r3kUxqAmQ80oQwSNsmOB2Uf9K81Q14zIvYjIVIpURFIOvQt6RKg0EwwNjASXhoCm/xIRKZf7qIg4fkUEPSLZzapo6iYiYhWR0YBv+miXZlWeuSHatcTJzIX22DaR8IgMNBWbNoDHrPPC3DZN3hWPu0/tu3Q7FacF309k492felR6Qz4r1ZBX3rAHDnBGgyIiMfNvLjkiorfvDtasGpyFFDXHpK1tZCjVjwcIE2+OTqsGuTYTkZhFjH0iIUWkFLuwNzoOwAvfCvB9H4bmmDSWLhZk9ke4lOdJz2njqsXzo8F36qbGd6SaG8MTePXZM/2CXkLNNL9KKSLlHpJVx7z0Xezew8MRBtrtvdl774g4YEZIVOu2U/Ra+VkR2V1Y0U6uHXiKc8SniKzAeP8Tkbk0g/H0WJLhsox4EIVIIoDodegdl2aKaY3zqn3Yr4iUupxh5gN91tAjoisi2DjACmIWsyoqh0HP0ChgyyoijUZNmOR6ISJMGIQiQv6Q+tzV4mvXGSLaJE8uzUSZE32bvqlMkvoOOTugDm+87bBw4d93chk+8LUT8OG75YyKH3r+ZYZabYwicomVZobpEQma3njGURCciqlyRAKbQ45mz+TaVchxDHWcH2PeH2oWZ1ZFcMeTWtgvfwF87Vv+GX6g8XPwxfI3xbaqY3y8WlhTEJFa0W+OnJinJNiUigi2ofa7QwuTXRmZWjeVR6TUe/sulmbO3Ce/3/UUObOHpzCzHE9eH5MiwocrJIanlmT5bmdOy3cBgBtzj8vBd0gSkIi4492nSEc+KSSadJCrLvinz0aYVVkJSds1w8QZVQwecqd3zRRSpKrK+yn62ncL5JspV/phVq14nWWaIvKNE0sZFRH5WpxrT4RNwCOALUtEWpSj0EvXDHs5csiAyR+yPis7P3r5YOYDikikRwSHtY1vBzh0G/QE3lhaNbFQf88zD4q//te/v0ecDm45NAc3HaSkQ/GA2skekUtZERk4EQkqIhGlGW1jEYpIwCNSoJp1vl2DQqeWfHIPtPDGmVURvLHjUDXGan4G/r1zMxQDQ+FMNXAv3j3581inwXeMbTv2QBpw8urBFB02WdHuVhGZ3E1f05EpU7Kqr32XW3d33SC/TnCZ44K/vdo4NsLziODsH8QceIoI4qmCiDTFZGbECoz1bYqxApIIla560VNhTY9beUTwunOjk58D0NdoXRVhIlLqpjTT9uLzK30hImXNrNpRHTOSiKSbvKuTrrPtyZH0iAy4D3F0wBHXWKPmU1m3g650RWR1qnciojwibFaNKs1gy9zP3Nf1SUohYLpF9ePPvnREpQv+0PM0NUQ8oDSKSJ8DjoaMCW1TH7RZtRCIao+a7KrPN8HZI8GumTwpIgUkIrhWYzJ0eTy5NLN8XLb7JpRmQoqICMLrxH8etIVWjTRI6JpBtCvzOGBGYMGdhIM70pUmr9gxCX/+g8+CA/N9kM0DEG32LLJm6Zj41t8GOHk3wMFnd3W/hXwOajkqu+F7dOIu+Q+7mYjsAFh8Um0+aqS8yZOiiGET2K8+01n0VIraEjzNeRw+gh4RLs24G1Ca4fIMeoCQQCkzvhNWOjRFJMdvgPbzKOgePrxmJ3g4rZq8m7Y0Q4oItOFi3RtUWgl8bntNva6Rl+WrRxdEM8HOSZxrk05B9BSRKbnrW4/IaIDbCkWdtEsvBw8kymuKyNKUXLxDmQnZbtj310giwmw4rYSYQhFB7J0dg1c/XWah4IL9sqfQiU09oK1uVh2sR2SsXIamm89IRMKKSJGISL6NGah1o9oSMgyWaYPH0QUxXTP+IWLt0HyiSCJC1zqewCsqsno8vYeAO2YyKBzPu2p7qlbfrNBNxMU4ghfEzH6A617V9Tok7lsfOnfiq/LrrqfKr6iaIqgFV42UN5WktSRPxmSLDKNXvEh8uTx3GtpoIq17HpG+l2aCnTNcDjaRYJUjos2ZET+Pf0xosGYyose8Z5m8q98Ptu8uV+vicfSNiBS0HBEi+Hc8LpWtw9NOamsBWwUucNfMiHlEtq4iQumCmDaZ73Eg0WRnRZ44cL0ex7r64719MAMfNjeB2fcMbb4E4+defg2sN9vwPbceFNHOPkT18yOe/r2S0FzxQriUoJ/4Bq2IjNGcCJ56rJdgdLiB0kyQMJXG5OZYcjGzQy5MhUrMhsktvCfvkj6RmK4Zcbv5cGmGF/hIzxR7EtAjkqHmnedyA3fMbACxyIo2J6T2q3UzA4rFEtSaRZmNhK3ZGGS28zr5jzQkkDcfJiLc9eeD5hFRYxeaRES2XwPViQMwtnYMdq89CFCTrcIr7hgc3AgiooeasQpruvY0RUR1zGg/T2rhxfKzqTSTnoh47btra94Ml34HmtXos3THE9LfsX/KwX7cdIoIHRIWuGumugjQbvXmLewjtqxHREVcdxvvLoYayQ/yFe6TSgLFmnivZtUwEemvuz8Efg045AoPU9MV+P3X3SxOjyGwR8R04nj69wD80McBpgIqyibHMJNVx0oFb7ItIqoUp5lI15xKaLZLibIeMJGRW9cLSSd3ffhdSrOqmYhElWZK4dJMioW1MCW7cbwws/57PnpRREoDJiK+LBF+37jExUSEskRUx5TpfVTvh1REsJ0/x6fnie1Q2/k08e2h2oM+RSSUWdPvULM4g7zmEVEZIlG/m2LwnUdEsntEVte1YXK9lswDxBDJEiaC33Nclsp2jyVPqg6qP4swSS3zrjQBjwi2LBFxKeY49ZTMmNKMMtntuDZ54U13w+lLM/0An4z08e1xiIpavoSxY6oM3/K0PfC6Zx1Mf1LqoxqjExFTt4OARqo7hYlQ+3iJ1A+8XtlxnxQe5ht+10rXvqufLvn7yLlL3DWTsTRTmfGIyHpxbvCx+wbo3W38Wg8KvnRV3R9iKM1wzoUxQyagiIjQNzY2TmyH9m7ZDnxl62HNIzIWHmjYD7BZNWVppitFxHDNNlSOSHaPyHpVIyL9WLcLnnkYI96/9uSC8LDsnanARC7biBJ8rvgKdbjcOkI+keF/eocFPP07eCro/uQSGvO88zqV0tfTFNmQK3yjiUglPL49DnFm1UsUuKmjQjQMiNIMznFxwl4QHzRS3eaWTQ0cnY4lkAaf3pMUQb1zJqk0E6OIRHZVqI2vBRMZZmeMz8gJvAh3zKDaDQEdTREpD5yIoCKivW7cMRMozaDJMY9D2fIR6a8BRUSEvnE8/MQOyB+YAfgiwPXuY+DWdolLUnhEShtAzvVQsxSlGSQCPkWE5+zEgJVrPdSMk1UzKyJOG9bXa6qVu9ird89nVpVD775E/pBnXb5N5AFlIiLFvIiGb1W2yaDBEfKJbElFBIO6VBmiy1RVkzP+oc4+OLlY7X9pZqOVh3yXishGEyQLtYnXQLsmIq4HXWp3TdOPiXTL0kwj3fWvKyKJZlUiIlomA0rJ4t+iPg9aaWam0EqtiExpuSF6mWaY0NuqM7Xv9gF48PGVZnaTUdWniJwXJJFJRjCxV/7QS/JUuStKEdkBYwdvFpHue50L0D7/qNY1M8zSjJes6pszk8L8q0ozPXlEmAh1oEaKSOR8sB4VkTsel/6QZ102D9Ak9SXlYZr3pGaZ26KtIjJU4EKJhj1ErocFY2zM/0H+b59vw53uY30vzWx4CUR5RFISETQ5pXClW2xMaSaKCLB5GuGUDOZNOjkhCVG3l7SIcajZyqnE61F1zWinSx5dnlSaQbPqFErNnXTtuzNz28Xgu7zjwtj8aPiRfKbyHkq+3aerVhIUkQuio6lMJMOsiPhLMzvHHIAate+Ob4fy+Aw8BnvhSjgBhfMPqBwRzDIZXtdMXhGRtJN34xSRZtelmRbU6jSoNGosRw9m1aVqE+4+tqgUEbgnmyLCe1KjPD9yWSJbUhGpNTrqRJhpJkQAwQjf9vZr1LTGp+3vffaLwsA8Ip5ZNRZb0CMyTMiuGW8BNpoMQ0TEoIjQv+O1z5tRoiKCp1Ku1TOSzKrtDDkiWqCZV/NO4REpe4PvZralCzMbZGmm27kx3QJJoEpXxfdreq/3j8qsek5suEwy9OvF9H4g9pbXvTLH2JwoUT6Yu9L3X6q5SZFlMryuGSYibchR62xaIuK1nGsekR7MqrVaNX4+WFbkPWJ455GL4rHtmi7LdnVquEir6jPpqpVmRy5ddesU+TWsN1vaqaAHCVVn55O74ANvepWQPjF1cPtkDwtRkPX3w32dyiOixSjHYQt6RIYJPO1eQI8Iwdh2iSfy8rRQCbCMkzd5FIqeWTW1IsI+kRNf8f4eFWhmaN/lUuVUJeJa0QK0xjN4RBBfrDwXnlL9Guy+9lkwCmBTeQccyA2YpAuPCM2bEWqIXpbg0ky7AY31ZUUyjGRJO4EjdudXvdsgz8NjxasAGp9W/6VZ2KDMoIylGZkjQtee1kqdagJvTzkiXmmmUU+YD5YVhbJ6bitVVKxz8KzLtkkjetIE7QjSVS0wERkdRaSwdSfvpqyRx0FfkHdcq06FPZEQcbv+i7jb5Nde2ncjgUYuN9upw6I/OSJJiohbnoGfbP6kmLw7VTYshLTBYzljyl1Pf/1vCxCRiPedF3U+XS6sNVTmwfOujDCU0nMpZlREEDf+2Pvh5MI63LrPyxQZhdJMAzDPo/twsm6AitMCKUSw50b/P4p5M3iCXof2yllFMozKllYqQ+zMr3jprITjY9fhk1RoFTcoRZkVESwNxcXSm7pmUpaNKwZFpEXJqqXMRKTVfyKS954vkvUalOFZlxNBY0WkkE0RWVdEZHQ8IluyNIMGOs5R6HbgXYgwcHhQPxBSRDY60IxLMykUEX3mgyUiAwEaAX1ExFTbJxL8z51nw2c6N5ojtzX1o8TzONJs+tw5g4hJIg4qIh974Izo0rh+zzQc3j4Re+39+PMPaF0z6YjIvtkxuPWy0SAhelt109ngg0PEJvNn7ZfBV/a+HuDZ/zn8C1Seaa+e88pysbNm5O9sgyX/vBqMCZ+8ypf02zKVAfsBLgniwYc7d9J2zaQtzRgUEa80k9Uj4ikibt8UkYr6lt8TVEQE2Kya8vPCpGuNichW8Ij8+q//Otx2220wPj4Os7M9+CU2SBEpqxHK/VVE+oLAAhElxQ9HEbFEZBilGZ9HJGHWC8KYq5HHbNYAQUlz/XPnjLiN6GsxOGvmX74hDa6vvCHGTEq3N1NywVE178F2nPQLvPkMg4iganbc3QEf2/8TADNyPIMPVJ5x186pDc343mvt1IgZdymkiIyNTcLD7n71d1ePl+8ncIMv05Tl1bOJgWahrpkUMOWIqOm7GT0iOM29SE0QUWMYMiNfAJfakFHJQrX9ih1E6pvdmVVXc6OXI7JhRKTRaMBrX/ta+LEf+zEYNeD8C6WI9Msj0ldFpDhgIlJK7xHxTcG0ZtWB5ogQjN0OASJiVEQcB1rBBTLN9c+dMwnvuW78Q4f/5x6VJ65XPnVPijlH9cwnvJEDbUitoSgi4YRQH7R0VeURMa0rWjs1YrK1GCIi6Pf5ekdeE2tuGcrlDXy+7BNZPZ08a0YoIlm7ZsKlmW49IuLhUrhlZOhgF+jQZxbn/2BZRvhDRARFNuLO6s/SViIiv/zLvww/8zM/A099qtbPPiLAUeDPOjDeuyIiLgBkzQ7Ajmv69viCH7bcSHlErCIyaCDBaGibmzH/IVDTjkoabeW8/yuintNcWzoRiWlL1QPNPvHAGZEAefWuSbhyZ8yJme9fjJSnyOoU7bujCN58QmRvoEREC/TSQUTCqSIR4dJMOVERGeeBd2x4BYDpShHucaVKhmFmG5KqGmzhXTmTYtYMKiJcmslnU0R8ZlXyiGScviseLqcD93PNznvk8NmYHxJcqzMqIkvOtEdEkNCMAEbKbViv18UfxvIyzfnuMy7DevWeMsCpHolIeRLgFe+QF0qwxbEX5AasiHTlETGM47bYMOiD7ni0QGZFBEWvfEWODscFN1eGUhpTJY5gR+MgLlwxiojevvvP35An2FfekNBay89Ln3vRQ9rxUEGvTXsIRIQ3VJ52HGX8zK+fjzersiLiNAWxLVS9eHfGVKUIH+08BRpuHh7oHIxOze2rInImuWumT4oIe5yytu+Kh8vjPvqoFrsaORT5IQguY2b4vPA1sshEBMlMY03uY0PGSBGRd7zjHUJJGQjYhd1L1wzi2RtQesrJmQBc7xwpj0hcG53FhqGdK8uwrxgiwgsNYiIi6bKNi1Zdu820QMOqICLR/4fv/+JaHe48IonFK5+aEDbG13ZtySMmIzIRNCtmJ6WSUxxwqmqW0kweFRHqiDF3zXib3txEERyW77XSzPRYAY65u+C59XfBEkzAKzZSEeHOGSYiSV0zmXNE2CPSVqnbXFLcNzveAxHp35qdwz2qCnBg2oGrWF1kIoKH1pSfF+URaZfkmo/rPb6/I0BEMpVm3vKWt4j6VNyfBx98sOsH89a3vhWWlpbUn2PHjsGGIWPr06ChJ/PlCxsdaFbO7hGxRGSgcFHJIOQjxov7FJGyeXPQ59QIdSQt2LCawqyKMdR4qrx8+wRcsyuho4IfD6d3blKjKuLgDmnK37WNavADBJdH9KhyH6i0UqhfjC/NaF0z8xNl35wZXRFBnINZ0ao8kNKMIiLRgWYyRySrWdVf0sJ280fPrgpF8VtvTBmU5ziiKCQerhMz2bhL5Ojg8T++7VpvkGUXxm7umqmhB4auh87qeUXCholMR483velN8IY3vCH2dy6/XKsnZ0S5jManASUS8ul/RIlIByd5Uvlu4xWRcnaPiDWqDhQuXqfNJI+ItyFMRCgirrZwdbIQEW7hjTWrSiLS6rhKDQlOAI4uzTARiWjz3QygkqozhDUlWRGRRKJUu6CVZkqR70cZWnBofhzgWLg0Mx0IpxtIaYYPSaa22F5yRFT2jfx/f/alo+Lrq2/apwhXGnRyBch12koRyfVzzc7L9XlbRfNzKGN3BiKityrj67p8HJ449iR82/89JyaL/6/vCuTPjCoR2bFjh/hzSSDj5MJBQwTisBS/0XMr+GSEH3Y0L8VtHkoRsf6QQcLVFrbgsMUsHhG9ntzJsmGyGbtC9eWE0lAqf4ivNLP5FRFF0oZCRMKmS8TDZ1bg4w+cgdXHz8Ob8d+Xz0IJYh4nJ6s6TfiVb74c4F2rRo/IwIkIIzZHRDerZldEzi7X4KP3Sm/T6591KNPD7FCSqyIivZb8k7oau9i/lB8G1R96Px96/AlYa1wDa/XhqiIbVox98skn4eLFi+Jru92Gu+++W/z8yiuvhMnJ4dekVA/2iCoi+qyCfHFAigh7Z+I+RHby7lDgaASikKI0E9U1oy9cQmVJi2teCfDCXwS48sWRv6Lf/4H5MXjK3mjSEi7NLG3u1l1d3dnoLreYTUY3q+Ip/zvf8wVYqbVgv9OAN5cxoGwFFrh90/Q4tZ/thIvezzjPgzwiOgZSmlGPL14R8QLNskW842v113ceE2reLYfm4Po0164GFxVsrWumr4pIwTCUNOPkXf2gIBSRKem9OX78OH644SXX74RLkoi87W1vgz/5kz9Rf7/pppvE109+8pNw++23w9DBPdgjSkR4bsVAFBH99tsJRMSaVYcCPU21WEpu341SRHJ6a2yW7hTcAF6AZ+po6KWhb75hT3JZhm8XwWMDNmnrrsDlLwCYPQRw7beMRPvuN44vCRKCpZTvf/4zAD4rlY7dhTXZOWXsmtF+tnxCfkU/gfZeYvuujkj1bSMUkVyMR6SrQDNKG6234S+//KT4/vXPPpj5YWJpRldEogzlvXU11r2fZQwzC3UIkUektXoO8jkHXnjNJUpE3v/+94s/Iwv1Rm4CIrLRioh+MtIvdhM69EHfpJ0NmxXsO8Bo7VKx0LUiktc7Ovp87fPpMjHETEdwM9zMpRmc8fLT9wzlrn31f8KXj0hF47YrtsMPv/gGgC/JeTOxhzDdwLp8MlSWMRGRyMnK/eyaSaGI5KDTtSJyz/FFQGvT/EQpXUkxShHZCCJS4NJ5vY8eEfm6zsEK3Hp4DmbHB6/iwVafNePbcEc0s0AfKZ7faLMqnnZ4UcK+8tgHZtt3h4EcEYgGFCKHcekejUhFpDyxYZv+7ukK5ByZ03Pj/pSdI8HOjc1cmhkiTGbVO2ng4K0cgqWFkkW3wuY8NWHpeKhjBjFZGbHSDPkzsGMmqyLCnSTkr4bXPmN/d8Qq5y/NRPm4+qaItLIrImXVWdVWs4O2Ocvwkut2wbCxdY+1Kh53RBUR7QPXV3Ydhe1XA5y+B+DIZwHmL0thVrXx7oMEKxnYLhmV+MinO+SVOCjPhELZ2+hzfSYiB+bH4W9/9DbYPVNJV5YxbSyWiPRGRKh9t9Nx4StHZZbLMw/TZo6bz5IsPwhElXyRHOLnnEszASKCUv5kuQCr9daIlGY0jwgPc8w49A6Bl+z3PjObSTU4eXmCFJGo8mnf4hWa7BGpZG/fbXZgLT8LeCSZc1bgmuuHT0S2riIy4mZVd5ClGcR13ya/PvCP8b9nPSJDAbfsoiISNQNjx2QZXvesg/Djt18pNgsTipoiwipLP4FGP5yKmxqXUmlmiKho8fo48fihMyvCHzJRysN1e6aMhCLSVMsKbERphufNqPveSCKC14NOTvveNeN9ll5w9Q44uG28JyIyBrUNKM1UDB4RPkinf7z6pOG7Lsj3DP1Ch7YNv2V+6xKREc8R8Y2RHoQL/3oiIo990utgiPOI2PbdgWJ95ko47m6HT7dvjFREUIX4je94Kvzcy6PnHuXL3kZfqoxA95otzfQFegstdoDcSf6Qmw/NQYGJa7A0E7X28XuydCKSiOg+kQ0tzYg70FSRmECzvKNHvKfNEfF+7z89uzs1RN4fmVWpNNPPQDOINatmV0TQrPqpY/J12p7DGU/Dx9YkIriZstdhRE9grj6vYhBlEMyJwPIMvi4P/1v079lAs6GgMD4Dz6//Nry59SOhvI5M0E5Q5bER8GOESjOj+XkcdfAmw9I7R+zfymUZBPkC0isiZo9IUBHZ0NKMuIP5VKWZbhSRvTNjsH2yDE/dNwO399A54ikiGzD0rhBnVh3PbFZdq7fg345IIjLWWgZoa4NMh4StSUR8A4MGlOSaEa6+QA8qxVSVZz4c/TvWrDoU4KnTpY9r6vHkJuin4FEwagc/f6Xhy8SbEbmco0zMKL2zUfUZh7VhnDqhwA0djalxiggPIgwqKSJLZICKiE5EEnNEsnlEUEn6/FteCH/7o8+JLGemAhGkjZg1A30yq7L6s95ow/F6BTpicnxg4OSQsDWJiP6GjsJiHDNSfKABSdd9q/z6yMcBGsS4g7Bm1aGAT524WPa0YOonqFEwaltFpG9gD8AjZ1fh9HJNTI+96YBGRHRCEXcAC/5bgiKyoe27qUozha67ZjhLpNfn4FCcAc67kY9zAwLN2ppZ9ewDkSQxCvpz7EAOqnkKbVunGP8hYosSkap3sUSdCoYNHxEpDi4HYfagfH0e/bj5d1jGsx6RoXgAolp3U0MnH6NAwkMekRF4TJsUvNF89mE5qO6GfTP++PWJlEQkuIkmeEQ2vjSzLaHlmEi6KM3wgK4Bj6AIloz6SkRKfhVk9RzAE5/2Eo9TIlTSZaWJJywPESO6Cw+qY2aEF71hlGawfy2pe8Z6RIYClr/xlNsT9I1+FBSRUNeMLc30eo189pHzYX9I8PRsmrwb9Z4kdM1s6KyZkEekkFIRGTQRCdzfBgy9g1bDK51jEvGep3tTsTMqIugXqcxQ2+6aVUSGA5UsOJr+EIFhlGYQTEQe/ldzyqr1iAwFfOosaabEnkszo0DEbWmmb2AzIrbuGomITxGJWVP09QavF4NvR/eI6EbZYZZmUBHJmiPSLzjBx7WRZtV7PyC/3vCdmW4GS7p8kHn+VTsgP0nXg1VEhgTeYEfhRBiBkh6IM8jwsP23AkzuxjGdAE98JsYjsnWz8IYBDAvDheRQlzkHRrPqKFz/tn23bwj6HJ5xSPOHhIhIzHuvH9AMaoiuiCD5QaPscEsz8rEUfe27A16fgiMvNsSs2pDZLke/IP/+lO/IfFNMGl+Kaar8uloiMuSumVE4EUZgx+zk4EszCPTMXPcq+f39H47xiFgiMkjsmq7AJ990O7z/jbf2dkM+s+oIXP/BBXsUHtMmha5MXLVzEuYmAq8tKhu85sVtlPq/GYyqiCnyiGx4xwxifC7V0DtEUUzzu9QUkYqniNz3IWxlADjwLIDZA5lv6qZDc7B9sgQvvV4jIiNQmils7TCz0S3NOMMqzXB55s4/AnjonyXx0Nm+VUSGhm5TH0farMqzTfi62szTd4cMPa5czZcJAhWOpWPpu2YiujJwou/AiIivNBPtEUGUoTkUj0iIiPRzbylo7bv3/n1XZRnG+95wq0jeFaGIrHaNgCKyNYnIrhsAvvOPAUojkCw5Sl0zjEPPlR9+vECf/ALAZd/k/Zs1q25ujFr7rj7bBGFnzXQNnRSo+TJRRCTOrKr/W4QicsWOSTngcMcAzMUpSzN+IjJoRSRYmunjmp2n9+PCYwArJwGcHMD1r+7upvT2fyaZI9C+uzWJyPQegKd+F4w0+AOHF92gHeD4obr2mwHu+nOABz4SICLDOXFY9AmjFmjGJ74mTX22pZm+eEQiFRHefGIVEb00sz3Ss/Tvb7oddkwNQFVOmayKKDnDISK5IEHaCLPqyknvoDjVh0F11iNikQhm1IMuyzAOPkd+vfhYxKwZO313U2LU2ndDXRq2fbfXrpm9M5XowYNMLAq9KSKIw9snYKI8gA0flWteb1KXZgZNRIKKyAbMmmF0WZYJgSP/14ZfmtmaOSKbAXzxDWvDr8zIr7Vl/8/t9N3NT3DH5mTgE34dBeiLtlVEei7NRKohOhGJO+CkUEQGCsw3mr8s2rOihVKOjEekn6WZgnZgwM8tRyz0UxFxKQhuSNiapZlNpYgMiYiUaXQ4tvHqsGbVzY/v+StJMEeFiOgbnyUiXeOl1++Gzz16Hr7nmQejf2l6n/xaoXjvREVkBIgI4rv/Qg7hi+oUIcPzyCgiG2FWRVzxwvDwwm7BpA67cRqr3po/BFgiMqrgE8uwSjPlabMiwh4Rk0RqsTlw8Nkwmtd62XqPesDzrtoOn3jT7fG/dON/BFi/KL+myhGJLs0MFDuuln+iwETEGZYisoEekXy5/2UZ7lBDnxgGfKIqMkQiYkszowq1OA+5NFOXKY1hj4glIhZ9vtZt6+7GA1WwF/1ifDS4volmGKo2VNB6NCxFJER8+rluV2Y8QnLtt0BfwYrXkH0idjcZVQy9NEOKSGNFkg/+oNnpuxb9Bp/AbevuaCBFsurIgdanoRGRkEekj6WZmX0A3/Z7AFO7PVLSz44kbOcecpaIJSKjiqGXZjSZDlWRsVn5vTWrWvQbfI1bf8hovR/lmZEOffSBiEdpSGbV8PTdPh8gb/5PsCEYkSwRW5oZVQy7awZbO/kx6IZVFWhmOaxFv4mITVUdCTD52CxqiEZEKkPKEdHvz8XrGTt9NgPGR2PejCUio4q9TweY2Alw5YuH9xi4PKP7RGzXjEW/YUszowVuFx0Vo2oGIrBnwhn60LuQcXWUMcEekeEqIvZYO6rAeuDPPTxcZo0tfijZ6Z0z1iNi0W+wjG1LM6OBy18IcOVLAW76Xtg0oFJMDltRh6yIDK2c3ktqrfWIWERi2PKeUkQ0ImI9Ihb9Bhv7bGlmNIA5Fa//O9hUYCLAA02H6RHZVERku/xqSzMWIws2rBoVETtrxqJPsO27Fv0iIu2G/++Dgr4ebrbSTGXWn946BNjSjEWKLJEl72d2+q5F31ch2zVj0SOCxGOY7bt6Euqo47pvlX+GDGtWtYiGNataDAK2NGPRK4IK7cAVkU1amhkRWCJiEQ2eR2HNqhYbid030Nen2tfZojsEiQcOhxskNqtZdURgSzMWGc2q1iNi0Wfc9HqAq1+xuXIrLEa8NDNgIqLnKlkikhlWEbHozqw6rOh5i0sTloRYbGaPiH5/myWNdoRgiYhFcmnGl6w6pORCCwsLiyg4o+QRsYe0rLBExCIa1qxqYWGxGTB0s6otzfQCS0QssplVlUfEKiIWFhYjAusR2dSwRMQihSJiyBGxRMTCwmJUMHSPiG3f7QWWiFgkExFrVrWwsBhlDJ2IWLNqL7BExCKFWXUFwHXl99asamFhMWoYtkdEN6has2pmWCJikayIuG2A5rr8vtOmK8d6RCwsLEYEw/aI+GbN2PbdrLBExCIapQkAJ+cvz9jpuxYWFqOGoZdmrCLSCywRsYiG43ihZpwlYgPNLCwsRg1DV0Rs+24vsETEIh7lGb8iYrtmLCwsRg2j5BGxyaqZYYmIRbZ0VUVEBnzisLCwsBjZ0ozuEbHJqllhiYhFtsF3yiNiP2wWFhYjgqGXZnSPiDWrZoUlIhbZBt/Z0oyFhcWoYdiKiK99tzTY+74EYImIRfrSTKeDvbzy71Z+tLCwGBUM2yPiCzSzRCQrLBGxSD/4jsPMxJVjPSIWFhYjgmErIrZrpidYImKRfvAdl2XElWM9IhYWFiOC4MHIse27mwmWiFikN6uyUVVcOTZZ1cLCYkSgr0cYwpgb8NZmPSI9wRIRi5Rm1SUv3l1cOZaIWFhYjAj09WgYa5MtzfQES0Qs4lGZ0cyqzeGdOCwsLCzSlGaGQUQwhZrLQdasmhl2N7HIYFblMDOrhlhYWIxqaWZIRnouz9j23cywRMQiu1nVGlUtLCxGtjSTH+5jsEQkMywRschgVrWKiIWFxQhi2B4R/X4tEckMS0Qs0ierqsm7tjRjYWExQhi2RwQxNuf/apEadkexSFeaadcBmmvye+sRsbCwGCWMgiLynX8MsHgEYO7QcO5/E8MSEYt0pRnE+oL8aomIhYXFKGEUPCL7b5F/LDLDlmYsEq6QPEBpUn5fvUg/s/zVwsJihDAKiohF17BExCK9T2T9Al019oNuYWExQrBEZFPDEhGL9OWZdVJE7ORdCwuLUcIomFUtuoYlIhbpDau2NGNhYTGKGAWPiEXXsETEIrsiYk8cFhYWowRbmtnUsETEIhlWEbGwsBhlWEVkU8MSEYvsZlXrEbGwsBgl4CBOhlVsNx0sEbHIUJqxOSIWFhYjCFua2dSwRMQiGZWZgFnVmsEsLCxGCLY0s6lhiYhFekWkuU5XDY27trCwsBgFWEVkU8MSEYv0ZlV11dg+fQsLixGCJSKbGpaIWKQ3qzLs9F0LC4tRgg0029SwRMQi2+A7cdVYRcTCwmKEYD0imxobRkSOHDkCP/iDPwiXXXYZjI2NwRVXXAFvf/vbodFobNRdWgysNGM9IhYWFiMEW5rZ1Niwo+2DDz4InU4H/vAP/xCuvPJKuPfee+GHf/iHYW1tDd75zndu1N1abASsImJhYTHKsERkU2PDiMgrXvEK8Ydx+eWXw0MPPQTvec97LBHZ9ETEtu9aWFiMEKxHZFNjoMX+paUlmJ+fj/z3er0u/jCWl5cH9MgsMpVmbLKqhYXFqCoiesqqxabAwN6xRx99FN71rnfBj/zIj0T+zjve8Q6YmZlRfw4cODCoh2cRh0IZIF/2/m7NqhYWFqMEW5rZWkTkLW95CziOE/sH/SE6Tpw4Ico0r33ta4VPJApvfetbhWrCf44dO9bds7LYWFXEmlUtLCxGCZaIbK3SzJve9CZ4wxveEPs76AdhnDx5El74whfCbbfdBu9973tj/1+5XBZ/LEbUJ7J2Tn5vPSIWFhajBOsR2VpEZMeOHeJPGqASgiTklltugfe9732Qy9na3SURamY9IhYWFqMEmyOyqbFhZlUkIbfffjscOnRIdMmcO0enaQDYvXv3Rt2txUBKMzbQzMLCYoRgSzObGhu2o3zsYx8TBlX8s///396dx8b09XEcP0M3QlsqWtXVkhTFr/aWxB+VWBp7JKSklhBbFIklpPwhpYlEggghwR+KkGjREGlaiqRaRWvf0gYp2iBtNXbOk3MeM2Y8nueZtlN37sz7lYxZ7qU33x53Pveec+6NiHBYJqVsrR+LvzGFlzEiANwJXTOm1mp9JWociQocf3rAhAKCfr1mjAgAd8IZEVNj0AaaPkaErhkA7sT+2iHsn0yHIIKmd80wWBWAO7FYfgUQztiaDkEEzmGwKgB3RhAxLYIImjFYlVkzANw1iLB/MhuCCJzDGREA7szaJUMQMR2CCJzDBc0AuDO6ZkyLIALn+NtP3+XUJwA3Q9eMaRFE0IyumZ+nQAHAXRBETIsgAudwZVUA7owxIqZFEIFzGKwKwJ1xRsS0CCJwjm97ISw/u2TaMkYEgJthsKppEUTg/JULrTNnGKwKwN1wRsS0CCJoevcMd98F4G4YI2JaBBE4b8h8IaIShQj/h6oBcC8BwT+f7S41AFOwSCmlcFMNDQ0iKChI1NfXi8BAu+mjAADYq30gxItSIRLmCNGGY2wzfX8z6hAAYH5d+/z7AdMhNgIAAMMQRAAAgGEIIgAAwDAEEQAAYBiCCAAAMAxBBAAAGIYgAgAADEMQAQAAhiGIAAAAwxBEAACAYQgiAADAMAQRAABgGIIIAAAwjFvffVdKabudMAAAMAfr97b1e9y0QeT9+/f6OTIy0uhNAQAAzfgeDwoK+p/rWKQzccUgP378EC9fvhQdO3YUFovF5WlNBZwXL16IwMBAl/7boNZGoV1Ta09EuzZfrVW0UCEkPDxctGnTxrxnRNTGR0REtOrPUIUmiPwd1PrvodbU2hPRrs1V6/93JsSKwaoAAMAwBBEAAGAYrw0i/v7+YvPmzfoZ1NpT0K6ptSeiXXt2rd16sCoAAPBsXntGBAAAGI8gAgAADEMQAQAAhiGIAAAAw3hlENmzZ4+IiYkRAQEBYvjw4aK0tNToTTK9bdu2iaFDh+qr4Hbt2lVMmTJFPHr0yGGdT58+iWXLlomQkBDRoUMHMX36dFFTU2PYNnuKrKwsfeXhlStX2j6j1q5TXV0tZs+erdttu3btRP/+/UVZWZltuRrvv2nTJtGtWze9fMyYMeLJkycu3ALv8P37d5GRkSFiY2N1HXv27Cm2bNnicK8Sat18ly9fFhMnTtRXOlX7i9zcXIflztT23bt3IjU1VV/oLDg4WCxYsEA0Nja2YKt+/XCvcvz4cenn5ycPHjwo7927JxcuXCiDg4NlTU2N0ZtmamPHjpWHDh2Sd+/eleXl5XLChAkyKipKNjY22tZZvHixjIyMlAUFBbKsrEyOGDFCJiUlGbrdZldaWipjYmLkgAEDZHp6uu1zau0a7969k9HR0XLu3LmypKREVlZWygsXLsinT5/a1snKypJBQUEyNzdXVlRUyEmTJsnY2Fj58eNHF22Fd8jMzJQhISEyLy9PVlVVyZMnT8oOHTrInTt32tah1s137tw5uXHjRnnq1CmV7GROTo7DcmdqO27cODlw4EB57do1eeXKFdmrVy85a9Ys2VJeF0SGDRsmly1bZnv//ft3GR4eLrdt22bodnma2tpa3diLior0+7q6Ounr66t3LlYPHjzQ6xQXFxu4peb1/v172bt3b5mfny9Hjx5tCyLU2nXWrVsnR40a9V+X//jxQ4aFhcnt27fbPlP19/f3l8eOHXPhlni+lJQUOX/+fIfPpk2bJlNTU/Vrau06vwcRZ2p7//59/feuX79uW+f8+fPSYrHI6urqFm2PV3XNfPnyRdy4cUOfcrK/n416X1xcbOi2eZr6+nr93LlzZ/2s6v7161eH2sfFxYmoqChq30yqmyslJcWhptTatc6cOSOGDBkiZsyYobscExISxIEDB2zLq6qqxOvXrx1+B+r+GqrLl31K0yQlJYmCggLx+PFj/b6iokJcvXpVjB8/nlq3MmfasXpW3THq/4OVWl99h5aUlLTo57v1Te9c7c2bN7ofMjQ01OFz9f7hw4eGbZenUXdNVuMVRo4cKeLj4/VnqpH7+fnphvx77dUyNM3x48fFzZs3xfXr1/9jGbV2ncrKSrF3716xevVqsWHDBl3vFStW6LaclpZma7t/2qfQrptm/fr1+s6v6gClbdu2el+dmZmpxyQo1Lr1OFNb9azCuD0fHx99sNnStu5VQQR/70j97t27+mgGrqduz52eni7y8/P1gGu0bqhWR4Bbt27V79UZEdW29+3bp4MIXOfEiRMiOztbHD16VPTr10+Ul5frAxo1uJJaezav6prp0qWLTtq/z9RQ78PCwgzbLk+yfPlykZeXJy5evCgiIiJsn6v6qq6xuro6h/WpfdOpbq7a2loxaNAgfUSiHkVFRWLXrl36tTqKodauoWYQ9O3b1+GzPn36iOfPn+vX1v0G+5SWW7NmjT4rMnPmTD0zac6cOWLVqlV6Rh61bl3OtGP1rPY79r59+6Zn0rT0+9Orgog6nTp48GDdD2l/xKPeJyYmGrptZqfGP6kQkpOTIwoLC/UUPHuq7r6+vg61V9N71Q6d2jdNcnKyuHPnjj5itD7UUbs6hW19Ta1dQ3Uv/j4NXY1hiI6O1q9VO1c7Yft2rboXVJ857bppPnz4oMcb2FMHjmofTa1blzPtWD2rA0l1IGSl9vXq96PGkrSI9MLpu2ok8OHDh/Uo4EWLFunpu69fvzZ600xtyZIleurXpUuX5KtXr2yPDx8+OEwpVVN6CwsL9fTdxMRE/UDL2c+aodaunR7t4+Ojp5Y+efJEZmdny/bt28sjR444THtU+5DTp0/L27dvy8mTJzN9txnS0tJk9+7dbdN31TTTLl26yLVr11JrF82yu3Xrln6or/4dO3bo18+ePXO6HavpuwkJCXoq+9WrV/WsPabvNtPu3bv1F6K6noiazqvmRKNlVMP+00NdW8RKNeilS5fKTp066Z351KlTdViB64MItXads2fPyvj4eH0AExcXJ/fv3++wXE19zMjIkKGhoXqd5ORk+ejRIxdugXdoaGjQbVjtmwMCAmSPHj30dS8+f/5sW4daN9/Fixf/uI9WAdDZ2r59+1YHD3V9l8DAQDlv3jwdcFrKov5o2TkVAACA5vGqMSIAAMC9EEQAAIBhCCIAAMAwBBEAAGAYgggAADAMQQQAABiGIAIAAAxDEAEAAIYhiAAAAMMQRAAAgGEIIgAAwDAEEQAAIIzyL2aB2FDqng6hAAAAAElFTkSuQmCC", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiIAAAGdCAYAAAAvwBgXAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAA7edJREFUeJzsvQm4JFtVJbwjI3K68615fPXmiTfwBpBRngICDSiitKItAs6/w2+rnw3t39AOiLbYijaitgrYrTa2Cs4IIvPweDNvnqpeVb2aq+485Bjxf/ucvU+ciIwxM+/NzLpnfV9999YdMuNmRpxYZ+2117Y8z/PAwMDAwMDAwGAAKAziSQ0MDAwMDAwMEIaIGBgYGBgYGAwMhogYGBgYGBgYDAyGiBgYGBgYGBgMDIaIGBgYGBgYGAwMhogYGBgYGBgYDAyGiBgYGBgYGBgMDIaIGBgYGBgYGAwMDgwxXNeFkydPwuTkJFiWNejDMTAwMDAwMMgAzEpdXl6Gffv2QaFQGF0igiTk4MGDgz4MAwMDAwMDgy5w/PhxOHDgwOgSEVRC+A+Zmpoa9OEYGBgYGBgYZMDS0pIQEvg+PrJEhMsxSEIMETEwMDAwMBgtZLFVGLOqgYGBgYGBwcCwoUTkve99Lzzvec8T0syuXbvgDW94Azz++OMb+ZQGBgYGBgYGI4QNJSKf+9zn4Md//Mfhq1/9KnzqU5+CZrMJ3/It3wKrq6sb+bQGBgYGBgYGIwLLwx6bTcK5c+eEMoIE5Ru/8RszmV2mp6dhcXEx1iOCh99qtaDdbm/AERtkgW3b4DiOabE2MDAwMMh8/x6IWRUPCLFt27a+PF6j0YBTp07B2tpaXx7PoHuMjY3B3r17oVQqmZfRwMDAwCAznM0MJ/vpn/5pePGLXww33HBD5M/U63XxT2dUSY935MgRsRvHwBS8AZrQs80HKlJICFHtwvfjqquuSg2vMTAwMDAw2HQigl6Rhx56CL74xS8mmlt/8Rd/MdPj4c0PyQj2KeNu3GBwqFarUCwW4ejRo+J9qVQq5u0wMDAwMMiETdm6/sRP/AT8wz/8A3zmM59JTFh75zvfKco3/A+DzNJgdt/DAfM+GBgYGBgMnSKCsv1P/uRPwsc+9jH47Gc/C5dddlniz5fLZfHPwMDAwMDAYGvA2ehyzJ//+Z/D3/7t34oskdOnT4uvo5MW5XwDAwMDAwODrY0NLc188IMfFCWWO+64Q3RU8L+PfvSjsJWBStEP//APi+4hNNjOzMwIIy/j0ksvhd/+7d+GYQIe58c//vFBH4aBgYGBwUWGDS/NGHTiE5/4BHz4wx8W5arLL79c+CuSFCIkAVjewmRaAwMDAwODiwlDPfTuYsXTTz8tlKEXvehFm/q8mGyL3S0GBgYGFztwI/ynXzkKNx2YhlsumR304RgkoHCxnXhrjdZA/mVVf9761rcKA++xY8eE0oFlGCxd6aUZHfh9xLd/+7ern2eg9+bWW28V7bKorGDrM6bMMvDnsTz2rd/6rTA+Pg7vec97Mv3ek08+KZJv8fvXX3+9iOc3MDAwGCU8dGIJ3v13D8MvfOyhQR+KwVZSRNabbbj+Xf8ykOd+5JdeBWOl9Jfz/e9/P1xxxRXwh3/4h3DXXXeJQLY3velNsT+PP4Ox+B/60Ifg1a9+tfh5xBe+8AV4y1veAr/zO78DL33pS4XKgr4TxLvf/W71+//1v/5X+LVf+zXhOcEY9rTfw2yWN77xjbB792648847hccnjiQZGBgYDCuWak3xcW61MehDMdhKRGQUgB1D2EGEhGLPnj2pP79z507xEQ2t+s+jivGOd7wDvv/7v1/8H5WNX/7lX4af//mfDxCR7/me74G3ve1t6v9vf/vbE3/vX//1X+Gxxx6Df/mXfxGJtYhf/dVfhde85jV9fBUMDAwMNhYtV6rUqFgbDDcuKiJSLdpCmRjUc28mHnjgAfjSl76kyi0IHPxXq9XE7B1Om7399ttz/d6jjz4q0mqZhCBe+MIXbsrfZGBgYNAvtNqu+Fhryo8Gw4uLioigJyJLeeRiwMrKilBFsIwShh6xjt6Qbn7PwMDA4GJQRBptV5ASx76oLJEXFbbGXXvEgZ0uqFroQLPp448/DldeeWWux0r7veuuu05E6+NUY+zsQXz1q1/t4egNDAwMNh+ttt9AsNZsw5QhIkMLQ0RGANgp8+lPf1pMLsYI/NnZWXjXu94Fr3vd6+CSSy6B7/zO7xRZJFh2wcGCv/IrvxL7WGm/94pXvAKuvvpq4SH5jd/4DTEB+Rd+4Rc29e81MDAw6BUt1y/JrDfaMFUx0QXDCqNVjQB+8zd/U7TQonfjlltuEV971ateJQYJfvKTn4TnPe958IIXvAB+67d+Cw4dOpT4WGm/h8QEw9PW19fh+c9/PvzgD/5gwE9iYGBgMHKKSCOoKBsMFyxviONPcTeOXSbYQjo1NRX4Hporjxw5IgbpGW/D4GHeDwMDg2HCX951HH7+r78uPv/Hn3oJPGff9KAPaUthKeH+HYZRRAwMDAwMLjo0Q6UZg+GFISIGBgYGBhcdTGlmdGCIiIGBgYHBRdu+izAekeGGISIGBgYGBhdtoBlivWnSVYcZhogYGBgYGFx0MIrI6MAQEQMDAwODi9ojYsyqww1DRAwMDAwMLjq0ta4Z4xEZbhgiYmBgYGBw0aFpzKojA0NELkJ89rOfFQMAFxYWBn0oBgYGBgNBWyMitabJERlmGCIyANxxxx3w0z/900P3WAYGBgYXC5pa18xaw3TNDDMMERlCYOp+q2UuHAMDA4NuYQLNRgeGiGwy3vrWt8LnPvc5eP/73y/KJ/jvwx/+sPj4z//8z3DbbbeJCbtf/OIXxc++4Q1vCPw+qh+ogsQ91jPPPKN+9p577oHbb78dxsbG4EUvehE8/vjjm/3nGhgYGAy8fdd0zQw3HLiYgPP7mmuDee7iGIBlpf4YkoYnnngCbrjhBvilX/ol8bWHH35YfHzHO94B73vf++Dyyy+H2dnZrh5r586dioz8wi/8gpjci1/70R/9UXj7298OX/rSl3r8Qw0MDAxGK9DMdM0MNy4uIoIk5Ff3Dea5//NJgNJ46o/hNMJSqSRUij179oivPfbYY+IjkolXvvKVmZ8y6rF0vOc974GXvexliuS89rWvFVNyzbRiAwODrWRWXTNm1aGGKc0MEbCM0k/cdNNN6vO9e/eKj2fPnu3rcxgYGBgMe/vuujGrDjUuLkUEyyOoTAzquXvE+HhQUSkUCsK4qqPZbGY/pGJRfY7+EYSrhfwYGBgYXKwwgWajg4uLiODNNkN5ZNDAckq7nd7Xjt6Ohx56KPC1+++/P0Awsj6WgYGBwVZC00S8jwxMaWYAuPTSS+HOO+8UptLz58/HqhTf/M3fDHfffTf86Z/+KTz55JPw7ne/u4OYZH0sAwMDgy3rEWn0uFl7+GMAD3y094MyiIQhIgPAz/3cz4Ft23D99dcL1ePYsWORP/eqV70K/st/+S/w8z//8/C85z0PlpeX4S1veUtXj2VgYGCwVQPN1pttcDVikgvtJsDf/AjAx34Y4PyT/TtAAwXLC5sQhghLS0uiM2RxcRGmpqYC38PujyNHjsBll11mukCGAOb9MDAwGCa8+Q+/Cl85fEH9/5FfehWMlbpwI9SWAH7toPz8jv8McMd/6uNRXrxIun+HYRQRAwMDA4OLujTTU3mm3VCfeg//Ta+HZRABQ0QMDAwMDC46NEN+uW7TVeu1VfW5de4xgDOP9HxsBkEYImJgYGDQDfBG55qOtVFRRNAn0g1ajXrwC0YV6TsMETEwMDDoBh9+LcDvvRCgbQZUDnv7bi+lmVZ9Pfj/B/9ajhMx6BsMETEwMDDICyQfx74McP5xgLXz5vUb8kAzxFqX6artVk18nPcmoOYVwZk/DHDqgb4co8FFQkSGuOlnS8G8DwZbCu16sL3TYOjQCiki3XpE2g1JRBa8cfg39xbxufeQMa32EyNLRDhddG1tQNN2DQLg90FPfTUwuGjRqkd2VRgMD1rkESk5hZ5KM0xEmlYR/rXwEvF5/QFTnuknRjbiHUO8ZmZm1BA3nEDL81QMNlcJQRKC7wO+H/i+GBhc7PBadeDVpl6vQXnAx2PQiVbbhRcWHoal8iXwcGuya0XEbUoi0rJKMHvza2H1/g/A+OqzACfuATjQ30GlWxUjS0QQe/bsER/NRNnBA0kIvx8GBhc7mo06lOjzlXVDRIYR+9vH4S9K74GHvGvhdfCu7j0imiLynS+4Gv713tvg2+wvw9p9fwljhoj0BSNNRFABwfH2u3btyjWV1qC/wHKMUUIMthIa9TVFRDraOw02B7VFgPKUHHYagVl3Xnw84J0WH9e6bN91qQzXsopw894p+Pi2l8O3LX4Z3Ac/BvDaX8Mx6V3/CQYXARFh4E3Q3AgNDAw2C03aJSNaTUNENh2nvg7wP78J4Pk/AvDqX43+GVcqIBPeMhbTui7NeFSaaVqSel71om+HpX/6TZhqnAX36FegcNmLu/0rDAiGyhkYGBjkRLPuE5F205hVNx1nH5FE4/TXY3/EIiLiQBsmYb17syoRTfSIIF57y6XwGet54vOTd/5VV49pEIQhIgYGBgY9EBG3ZYjIpoM7lZKSbbXvzVjL3c+aaQWJSLVkQ3nfDeLzc2dOdveYBgEYIpIHjVWApz9jcgMMDLY4WlpphnfMBpsIzm4h1SMKlud/bxZWYL1Ls6pHgWbtgh9NMD1elU9vMmT6AkNE8uDz7wP4X28AeOAvoN/4g889DW/6/S/Dat3ERRsYDDta5BtAuC1jlN90MAGJISKu64Hl+cmqs9ZK14oItmoj2oWSZkx0AuUfg95giEgeLByVH5dOQb/xp185Cnc9Mw9ff3ax749tYGDQX3BLp95VYTCI0kwrdvIuekMYs7Dc9dA7iCAiBVJHdNXFoHsYIpIHjbUNSVLEULCzy+TMbgfnIxgYGAwf2lrLbtt4RAZYmmnHTt61QVdElrvummEi4mpExHKIiJjpy32BISJ50FzdECIyv9ZUkyINETEwGH7wIDSEMasOX2kG11PH0s2q3ZdmfEXEz8+1CrI0UzCKSF9giEgeNGkcdJ8NSqyGiKcIDWoyMDAYPriaQdUzHpGhK810KCJoVu2yNGPRgEPX1kozjvzceET6A0NEhqA0c3bJX9SMImJgMGJEZCOG3h27E2DxRP8f92IBbwa9duycmYBHRLTvdufnsOj9dTVFpEBmVdsoIn2BISJdlWb6a047u2yIiIHBKIE7KeTnfSYiF54G+JNvAfjL7+vv416UpZkYIiIUEa00A92XZlgR8exOj0ghhggZ5IMhIl0pIhtXmmmZ0oyBwdCDY7/F5/3OkliikKyzj6GTvb+PvUVKM7iOOgGzKuaItHtURLTSjG26ZvoJQ0TyoLnxpZmG6ZoxMBh66CpI30szrLiiAlvHOSkGeQPNWq4bVESsFaGSNFr5uxILrIg4fmnGJkXENopIX2CISFbgzgSTVRF93gGd00ozWNs0MDAYbnh6ebbfiohe6lnuf2bRRQE3jYgEFZFtIAldN6pIwZXvh6UREVZEChrZMegehohkhWjXI5m0zzugM0uma8bAYKSgrwEbpYggDBHpKkcETf+6IjJm1aEMDVhrtromIq6tKSJFVkRMoFk/YIhIXn/IRpRmdLOqm6yIdCMtGhhs2DVx9tGt+eLqqsWGKiKn+/vYW6Q0E27f7cWwahMx1BURm4yrpjTTHxgikrdjps8Lj56qKp6mFW9O+++fegJu/sVPwuOnTd3YYAjwdz8J8HsvADhxD2w1sIFxQ4iI/thsXDXIVZrBPCZbCzTrxbBa8Oi5Ajki1L4LRhHpBwwR6UYR6eNsieV6C2pNN2CyisNdR+ZEKM/Xn13o2/MbGHSN+SPy4xx93ELglk7xOUn3G1OaMYpIFJoUse8lKCK6R8TPEslPRByX3g+nor5mF0kRMR6RvsAQka4UkcaGdMykdc1w2Fmt2+FNBgb9BF8HGxHoNeQIkI9+T2ANlGaMIhKFuWW5MRQTdiM2b2j6D5OEmS7TVW1SX6yiX5pxKFnVlGb6A0NEuvKI9E+K1csyaTki16/fA/+9+HvQXpvv2/MbGHQNvg624PTZgka+Cn0vzRhFJP010l7ziBbacNeMX5rJTxqdiK4Zbt/V01sNuochInkzRPq8A9Rbd8XTJCgi37r2N/BG+4uw5+wX+/b8BgZdgwnIFiQitqaI9L00oysiS6Z9NxLtZEUqnCOCmIUuSzOefK5CsdKZI2KISF9giEhWcIYIoo87IL11N23oXcmTP+vppMjAYFDg66DPIw9GAQU2S27E4DP99Vw5HVl62PLQXv9IIiKSVcNm1e6IiE1mVUvziDjkESlCW/hRDHqDISIDVkTYI2JZ6YoI1yP1gVsGBgNDewsrIrRLDnRV9Av664k32bXz/X38iwHtVooiorXvlqe675px24rQFHSPCOeIQNsMKu0DDBEZcI4IZ4jsnqykJqsyM5fhagYGAwZfB1uRiPSiiOBQu6RBeeH1xYSaJSpSUYoRbuiUIjK+s/scEe3ctkudZlXHck0adh9giMigu2bIrLpvppJamnEoxc8ziojBUJlVtx4xZt9AmJSk4vjXAH73VoC//39jf6RD8TQ+kQ5YKaUZEWhmEUGZ2OWXZvImq2rndsGpqs+LJT9TpNnYel1j/YYhIl0oIt4GKCL7Z8fk0yQpIhyeswVr8gZDCN4tbsH2XUcrx+QqzRz9kvw493Tsj8wvhQILjSLSAUuPVo/xiKjSjKaI5C7N0Lnd9ixVjkHYpIggmltQEew3DBHpwiMiUhX7NJ77HHlE9s9UU0szrIhY5sQ3GDRwxge3TW7B87EYICLZd9nu2cfEx9p6vOG8HVZEDBHpQECFivWItEOKSPelmTqUoGhrt8uCo71fffYIbUEYItJN1wyiD055ZOeYrIrYP1tNLc0UlSKy9XagBkMGvXNsKxIR8P/+PIPPlo8/KD6eX4wf0+DR63nam6VfMi28YQTIX0z7rsoRGZdEZBpWoVbPuXbSe9EAJ0REfHWk1TTrca8wRCQrwi2zfSAD7A+pFm2YHSsmds3gTBqHiAhPgzQwGBj08mB7aysiepkmEa4LY4tPBwapRYFLv8c8eQM1HpE0ItKOKc2wWXWH/B3LA6uWczwGvU8NKELRptZG8WAFcEH+v9UyikivMESkW0WkD0TkDJVldk2VFduOIyJovmJFpLAFF36DIcMWVkRwU1DShp1lLs0sHoeiW0snL/R6Hvekt8HMm+mEnUkRISLiVKDpTMjfq893V5rxiuDoigh+C2zxsW2IyHATkc9//vPw+te/Hvbt2weWZcHHP/5xuHgUkWbfFJFdk0hEiF3HhONgyQbDcxBGETEYOHTyscWICPq4ypauiGQkIuekPwRR1Lpu4ib7PsuKiJk3k0hE2hFrcSBHpOBAqzwjPi01FrouzZRCRKRNRMSUZoaciKyursLNN98MH/jAB+CiyhHp0+LLYWa7JitQLACMQQ0arWhFBLtpuDSjx0sbGAwEuiK4xYhInSa/9kREIJ2IKEVk7cKWe43ToEertyLMooFk1YIN7Yr025Qai12176JZ1dFLM0YR6St86+8G4DWveY34d9HliPTNIyIXlwNjTXjuJ78L7i4/Am9r/X7007faMG21A0OYhgIn7gXYdjlAVe44DDYZ2L3FsbybCX0XusVKhfXaOkihP9RWnwLv3GPkKsBxDc1UInLWm4G2VZRBhsunAWYP9XTcFw1c1CL8DRt6NPyoMW36LueIFBxwq9vEp9VmTiJC7wUqIhMhRQSn2YgfMaWZi8sjUq/XYWlpKfBvWOA1NqY0U4E6fP8zPw+T5++DMasOe1vHI3+2qbX0qYTVQePU1wH+5zcBfPzHBn0kWxP3/i+A/3YZwPG7Nv+5dfKxxXbrzfp6dDdbCtqnH/V/BzcVMTNkuPRa90qwUpJGS+MT0V/I4PoXVRqR03dZEXEAmIi0F7ts3y12lGZaltzHGyJykRGR9773vTA9Pa3+HTx4EIYF3gaYVTG46A+KvwX7Fu9PHSneajQDrYNJM2k2DYvPyo8LxwZ9JFsTT38aYH0e4NiXN/+5t3BpplEPJslyyTQRngfW+ccDX2o2goQmTERwF77gMBE52fXxXnQIJdm2Wyk5IgUHrDFJRMa7JSLCrBpUHtuKiAyRQj2iGCoi8s53vhMWFxfVv+PHo9WBi8Ks2m7B20//KrzM/jq07Sq0qjs7o4v1p2/4i18ZmlBr5p8i2Xe4WzfieyjAC+AgFsItXJoJEwhhIk8LOFx8FuzWGrQ8f8ldr0WHmrEHDFtGL1jyBmoUkQRFpBXnEfFLM4Xx7eLTSXcJ3BzTcj1a2zpyRLTSjGtKMxcXESmXyzA1NRX4NyywiIiseeXeFRGUZP/+p+ClrS9D3XPg5Kv/GBozlyd2xLS1XWcJmrA+FESktSV3xMM3/XYARHALd800SRHB2O/MGxMyqh729oJLv9eorSemhtbBgdMeExETapaLiLhIE5iI2FCc2O5P4M2xdrpNNquGckTwe5YhIhclERlatBpqwuYijPdORL7+UYD7/0zsjn6q+ZMwcf0rwaLZBXGTPHVnOCoi9aY7PKO4jSIy4FkvAyACWzhHpEVdM6tWNfv8KSIiT3gHxE0NUV+PISKer4icbJMJ3Ay+8xFSjd12O7U040zs6Crm3VXtu8VORYSISFT7sMEQEZGVlRW4//77xT/EkSNHxOfHjh0b2Y6ZRa8PROSu/yk+/E7rjfAZ6xtgBlNV7VJia25LM6uWrJZRRAz8c3AQRGALm1VbVJpBq3nmmG8iIk+6B4TMj6iHTK8MDjtreA4cbU7LLxpFRHv9g+dblFlUdM1oikhhfFtXg+947g96RMJEhD0ininNDDcRufvuu+GWW24R/xA/8zM/Iz5/17veBSMF6phpejascaNYt0Tk1AMAJ+4Bt1CEP2u/HHZOlkXYW4GISCHGI6IPwkJFJPcUyY2AKc0MFHNLK+Lj+YX4uSUbBv3832IeEb4R1gvVSA9XJGjY3ZPefpFJgWhEeUS0RFDchR+uT8qvGyKiUA8NBYwMNGtHd83MWsuw1swxpJBIZ0fEOxIQIiKuUUSGO0fkjjvuEHHIIw/yh6wLCuD0RkTu/pD4cGbfK+HCU9Pw3ElJbLg0gw58jHO3CyGHtrbjGjqzKt6IBpVnsYWxTtL+3OISUG/F5kFffJGQ4ryPgpSqL3a0iXS0CyVotG0oWe3IUC0FvDbOyY6ZJ7XSTDPKI6KtK6icnMDSDC45mCNiIF+3UNdS1PRbUZpROSI2wJiviJygQaNZwAMIW1ZRbBgjPSKGiPQM4xHJAmrdRTUE5VKBbk6++jLAg/9XfPrg3jeqeHediGAmQVRrLtcqh8us2t6y8vwwgL0EHIC1qQi/31vo/W83fSLCG5MWfS0SSycBGstCUX3G2wNuoRTfvqupS7gLP8MTeBsrALXhyVUaJJqN4PnuslctbtYMKiJj0qxatlpQX1vObVZtWsXO7+HjmtJMX2CISBZoHTM9KSJIQnBB2X4VPOjcqAbe6USkFENEdEUEf6Y2DKWZgGHRtPBuNri7whqIWTV0/m+h8gyXSTH11CciCX//ORlkhiSkUq6AZ8trvh1FRLRW7CbYsA4VaJeoe9CoIgKNkEckSpEITN9FwlAcE8ROfG/lfOb32qP3o0XkMfC87BGJaTAwyA5DRHJ4RHoqzaA8e/efyM9vfxucXZa/v3tSGt4KTlkpIngRheFqz4fjrOtpNenNgH4BbqEd8bCATY3WICL/w+f/Fnr/eZfs2rgloFArLXCwA6ossx/2z1aFkhLrK+Gx854NRVs+dq3CU3hNqJl83TJ4RNxgjgiWjVcKktC1Vy/kLs20rU4iojwixqzaMwwRydE1I0oz0GVpBmeynH4QAHdDN78ZzvDkXVJEClyasWJKMyFXfjjdcSDQjbVGERkYEbGHQRHZQkSEb05YYuGY72RFhI2qB2D/jE9E2GsSgNYuundGblJWS0xEjE8E0QythV6GZFXxOtqkLK3OZX+vtTJcx/e4NGM8Ij3DEJE8iojnExGuE2cGqyHP+XZhnNIn7wrYRd8jEpH854bSM8PzLgYC4xEZCiISF4K3odjCRMTViYhaD+rpHTOuVETcBCLCJAfXmX3TsitHxbyj18Sgo1U60iMippVrZlVcvx1qhV7PTkRYoUoiIgFl2KArGCKSSxGpQNPLsPCEsb4A8NBfy89vf1tg8i627wrYmkekFWVWbQ4hEdFLM0Og0GwxoEMBUXAHQAJaW9cjwmTBs0vp80YCHTP7hSLikkeESzw6uFyjKyJzBRPzriO89kZ6RIQiopVmsMRVlESkUJvP/ma34okIP67pmukdhojkUETWNI9IuFSSmqTaWgfYdT3AwW8QbP3Caj1QmmEiIjwiEVM5vdBC3+rFI4IS76d/qfdhdYF5I2bw06ZC6wpg0+pgFZEt9P7TtY9ERCkicX8/Xmv1RWhDAY54e4Uigr8X7oQLl1yxOw9JC+IsMBExikikIhKhSMhAs2BpplGUKbV2F0SEVaxIRSRCkTHIB0NE8uSIaF0z+uyXTOPaEbe9TZimLqw2xEYJo0K2j5dDpZk2NFperHubkUuR6TiePwX4wm8C3PkHMLSKyNocwJf/B8DK2f4+7sUCjQg4AyjNhEuFW0oR402BXVaKSMfrEeqYOQ57hcqB5MIjYzr7D3Q0SOlsWEXV2q9i3o1HRKDVyuARwdIM54hQ3kejLF9Hp76Q+a3mjjRWsQLPS+99OHLeID8MEcmbI6JqwjkW//NPyI9Xf4v4wP6QHRNlP7iMFRErThEJDXrqpTSDN3lEfWl4icjdfwzwyV+QhMmgE5pC5lCeyGaiwyO1hUoz6m91tNJM3MaAyjKPtfeJj6iIgFMJTHaNCutqQRG20SblWNPMmwm8/KHXOqp9NjB/hjwi7bLMZCk3+1uaMe27vcMQkTw5InppJqsUjYZOXrhKMq75bKhjpsMjEtE106mI9HDjbyz3x2C4ke27q9Tr/+zd/X3ciwWtwSoiHUR8C5lVlRolFJFiiiLCw+72Q8kpwI7xMli8u454zTjkDJM8Z8flYx9pUMz7ymk5uXuLI+yX8yJKI56uUrCXo8JEZDHzc7ERnMtpAZCK3VW4pUEAhojk7ZrxchKRpqZcFGXN94tPyZvsXnLFd3TNROSIhE92t5fSDCk8Pd88NjLQDIPfEGceMjXYNEWETKubCTf8fm8hIsJJtpZTVumasVkS1DHzlHsADsxUoYAKaDGBiLAiYpVg27i8+R1ew0GbliT+a9nDuC5WhEmwp3fvqa+1OpULinmv5iAiFhuTC52lGVZarIjnN8gHQ0QywNNKMzisTnwt68KrL9hOBR46sQgf+fIz4r/f+w2X+N/TzKqRikh49LVOcAZFRDawfXd5adF//c5Ledsg2iNSGkhpZusqIgWNiKQqImQIf8bbLcsyWnhhVCIuD9RrF4qwbUyuCefWXfDGOUvkVN//nj/6wmH4f/7sHuGrGAWE1eHI0ki7k4hYRETG2jmICCsi9J5FKiLGI9IzDBHJgLaWrFoqcX23nqusA04V2mDBf/7Yg4AxIa+7aS/ccc0u/+f0rpkoRaTDoNXonYj0WNd3N1AROXdB6/U/eX9fH/tiq5OLNsVNdu53nH9byCPCNyer6CsisesBdsthpREqqgumUKzEExFObS2UYIaICK4X7fHd8geW+k9E/uDzh+GfHjwNj50ewBTnLtChPkWVRvRNkiIict7MhJvdG6fCAilwMgB+XJMj0jMMEckAty5v3Dj3wSmR4z1ruyorF8UK/O+vHoWvP7sIk2UH3vW664M/xx4RqwWNiJ2JFWLdmYlQ3PC9PuxiLywRoenDY4VRaGkj0k890NfHvhgnkG42Eeg4/7aQImLTtY9pyB4PQ4sjgvS64MTdTiLSeQNtK0WkJDwluFaI3x/bvWEtvDy3qt4ajRJDOLcjShFhc7+HJa2CvM05E5KIjHnrmdvNC7TuRpVmLFLHTaBZ7zBEJAcR8Ypj4LEcl3W+ACkibbsKv/EvssTw86+5FnZNUaJqxtJMmPVHtf5tdmmmpb8Gfb4ROe0+ERHsk77/LwDOPwUXEzpyZDaZCLAi4npW/ufH93OE348ClcIKQhGh0kzUxgTPPVIK615RlWZsUlXtiCA6NqHzOjNLPpG1DYx5r1OAYr05KqWZ0OsW5dHgr3HWB27yxmf983U9W+eMSi0m8qjDollARhHpHYaI5EhWxQmOvlM6nyJyvl6AlXoLnntwBr73+Zo3JGNpJqyI9DT6vU9EJCCR9vlGWNSJyOmvRy82WXDkcwAf/1GAf/wZuJjQMUJ+s4kInX8rUMmnyKAa98ffAvDh18KoggPk7GJFEZHIHTbu1D15c+cMEf69uGh+NqF71C7KRGSpuDEeEdf1lALLhGTY0dElE9W+S1/zyFCKqFZKsAjj2WPePQ8cN6E0Q/cCyzOBZr3CEJEcqoZVGleEITsRkb97vm6LzJD3vvFG6ZwPQw80i1RE+liT75NHJCCJ9tkjUmqvB1/DC13uoM8/uWEmv0GCTY0D82jQjXcFqvmIELZl47kywq2oNhEIJBSJg8+010SUZkgRccr0MYqIqPh4WQrYTkRExbz32SOirzWjUprpKItHeTT4axw6hiWZkgPz3oT8z1qGCbzae6parjUUjCLSNxgikuVFYiJSRiJSztc7TooIGl1/8CWXwXV7aQJkTkWkELrYooxumYByMbfG9koetNcgam5GLyi5pCR5U70ZVnlQWK3H8LYhQ0eOzGZ7NOhmsOrlJCJ6t9eIjgVQU4+LZaVcRP4t2muCno89VI4tcmkmottJlR1oPZglw+pZa/uGlGZqTQyfd6EKtZFRRDrW3oylmbGSDQsgiYiXhYho6yMak8Ow6D0y7bu9wxCRDLDJ+W6Xx7WTL6siIk/mda8E3/fCQwlPkhxoFi7NcAthbghS5fVlPogukfZ1CJ/nQQUNZQDwNffa3nwiTER6TZEd9sFffSaCaeDzP7ciQtfSKHfa2EREnHIFPNoVRxMRnhtjw66pMXBsudwWSREpRqwhHr+v1C66jULNTrszG2JWRfLxR8X3wVfLPwHuWo7E0UGC1sI6UBt0kiKil2ZKNsx7MhyutZJFEWkkKiLsESnQ+dA31FcAjt8lN41bBIaIpMFtK1OZU5kAi2qFWT0aLrX+1qAspMFYcGnGiiYi7N72/18Hr5sTlcsy/VBEtGNqhT0LvaBVV5MzfSLSrSJywidgF1ECYniEfIdnZIPB5/8yKyIZScXKstYiOqLvR5GJCHo9kjon2KgKJeUPQZTKY/IjNDuv9VC7KHtEjjZphD3u5PuofqFB9abCYZi21qC0dBRGAnTeNFiNCnk00PdS8NqdRKRowxLI1761liFLRBmNHSgWO9fuAq3ZhT57RI7+xX8E+ONXwLl7/x62CgwRyZoDIozTGhHJGGLTrMkySA2K4kKIRaBrJqo0I5/PpbcMlZOupFRu3e2HNK4tvn0lItprfpciImhYdbsnIuG//SJTRDraeTcYfD76iki2c2l1dXlg5Klf4CRbUWJJ8ozprbvkDxG/V64oIoKlkajfwbA0BIeanahV/efqY3kGfSE4uKLntOZNBK+9TYvaoEOlmZbrdUzeRRTtAqyQWTUbEakro3HR7vT1FRw2q/bXW1M7+bD4eORpOTBxK8AQkTSQooFtX+XKmMgOEC9cRiLSqvvx8GUn4eXWIt6jEg4t2oW1i/JCKkctYpuuiPjP74bbSXsBeVhqXhEe8w5CC3v4cT7O/JF8j4OKEZdmxANmT1QcOO77M4A/eTXAyrnIb4dHyPeVCGYAd3ysKI9ILdf1gKjXRo+I4LVZomtRlFhIEbESFRG/Y0b9Hl3D6+FrWGWUlAOKyNx6E2ByT9+JSK3pCkIknnqTy3vdgl/rNpVLwl0rbdcDhxRVnYggarZcP9vrGSbw0nuB759DWSSB42BFJE+gGZZd5pLXsfHWwkgRw37AEJGMrbsY7z5ZLSpFJCsRadONv1EoR3fLMGi3U47xiNh88WlEpGMRy0tEvN4SOXVVqK8eBTpGTKNsgw3nx6+SXz95X/4pw/oNcpR8Inf/CcCxr8j24wiEFykOwtos8PmP75E8gGzP36JMHkRzk4+5H0AVEkMHEY6miESWaulrOJ9KV0RY7cDHCWd38ONw6BnPm5lfbQBM7uu7T6TebEGZ/p5RufExEXEpZCysiDRdN1IRQdRtMquuZy/N4MR1DJeLU0RUGSgL/vL7AH73VjWVOQpT7kLvoZUjBkNE0qDFu4+XHRFilIeIuLQDbBY6A3HyBJqxIcp1JtQitk6JiF0TkR5VEV2SDO/QewLP9vHka/Zs5eruDKt6WWbUOmfY1R/zuoYXKV1p2EzD5nJOs2pbO85GPw3Om0lEuDSDJRaW56PWgxiPCM6cQpSh0bGZ4MfBjhy9a2ZOEJH+KyINTcns6zW8CWpc26lGlkbabV8RYUMpo0HrZ6a1gMqNDQ8VkYjSDJtVIeNmDsnH0/8mN4BYao65rqeAAjR7bCYQAxc//DqAZ74Iww5DRDL6Fda8MkyUHbBpN5PVKd3msd6pRITYteUFE0v52yQ/uphlourLXXgmsMQRPEDoFtZG5YhQaYZ320/aV3RnWNXLMqOmiHDgUszrGr5ptDf5JsKhXn5pJiMRIWKPaGyyr6Vfngr0ZzFZYHk+ujTje0R2TGhdF6Sq4uOENxPcDccbHlZElmotaE/ujT6ve4De7aY6doYcyhxKhC6sSAhFxJJfs0KKSJOJSCMLEfFLa+gvCcOm99HOqojc97/Vp7WF6DyY5QtnOp6/a9zzYYBnvgBw/5/DsMMQkTRok3cnK47aqTAxSINHC2/bzqaIyB9OICLFif6VZno82XW3OI/L7gdaZPBFFQrxkHuZr4jk6RRaenY0FREsl7GfJVYRCRLIvnp00qBJ3yvUhZBVRvY0L8tmG2z7ASylsCIiMoVUO3+SIlKESrEQoYh0XsO82+cY+GksB3Mqebn/Me/6e+CNSDu18oRw7HqICGAOk6NKM8EGgVZJtu8WshjXubQGDhQjSjM2kdBMRATX9Af+j/rvyRNyKnMYSxdO9p4VpZ7kXvmRc6OGGIaIZFRERGmm5BORqFTEpN/PQ0SidrcshUOJSjPQhHpfiEi9T0SkfzeVxrokDKuefK0fqO+Rrw/enOef6UERGZGumZpmpIt7XcOKyGYaDTUVjRWR7ERkrWPS7CgBPRUl2m1j1gd7xlghilREPCQi2g2RTJZFqw3r9UZkamuRhmtiGvNMVd7wljcg5r2lB8yNiCLCfjkxciNCEUGzKoa0yW8GFZF2SbZB280Ma4FStEpQjCrNsEckS2nmyU8BrJ5V/3VX/M91rM5rJLOX0gwSHy7/aNfcsMIQkTQ0tNKMUERo4UHGnaGd1KML3aVdUCx4ho0wjTViFRGvzESk1aUistJHIuI/f+aAtxyKyBqVZk6vegC7rs/vE1kMeUTqI9I1gyZbRlZFZFBEhN6jzEREu/G16qNx49MR8LXYJb80E1GqdelvlYqIRkSovBsVBMgbDlZE9M6ZeXt7/4mIrkqNQNItZifZdOMvlGiacUidRo9dXNeMSxu5YjN7aQbNxlGlGYfvBVkUESrLnPFkMJ29Ft0NV1vQSjO9KCJnH/XDA3WyOaQwRCRj1wwqIugRcfSo3wyGVUsRkWrKD1rQ5rkIEQuCw6ybLqSy1WVpBtvHdLT7Q0TsPsq67fWgR2RutQ7u3pvz+0TIrHqWLv6RKc3o8dN6EqmGsGy7qR0PWukwb/uuvii2+jyfaDPQ1EtgTlm180eValtEMhodpRl/DWmETMYOxb6X6CarZ4mcA23eTJ9SNwPBeCNQmkGzMM7jQtiKiLgdiojqmrGCpRm3JEdGFFur6a+hKs0UwUnIEcEyEIaoxWL5DMATnxCf/lHr34mPpdr5yB9tLftKSdRQxNxlGX1o6xDDEJEcXTOCiJBkmnUHYdGNxHOkjJgENVI8QpJzaKGzypM9mlX7V5pRF7smKfcDbVJEWrZ8zfAaX9t+Q35FhEozT7j7B2dWxfPnq78PMJ8jtVKfDBr3/oTOPW9TFRF5TE3PhhqUcikifD2IhxnB9t2Ar8UuQYFKqlFddDyYEBWRsqPdEAu4X5dLb6NWj5xjI1qDQ4rIKSbUeGPpU5kxUB4bAUUEPTrYWcgjN6JKIxgIGa+ITPqbqPBamODxKUWaVX0iggbZWHz9o8LHsrbrVviqK5XdsUZ0xLyn5QYVeiGGJzQiYkozow9XtZLK9t0gEUlXRAq88LKxKum5OC46QREpVHotzfSRiGiKSDFigFe3cEm1adpjMDMmX5MLk9flM6yKMDOpiDzpHRicIvLQXwF84j8BfPa9XZZmYggGnSMYtLfpmQP03E1wxCKdx6wcJCKjq4jg344qZqGYoIiQMbdplYTXQ8GyxNfk461HxseXKH1VV0TO1x2A8nRfyzN6Qq/Va7voJqDWaisjKisi4dJIQBEJmVUL5QloeYVsG5OWZlaNLM1oRCQiDVutQ1SWOX7pG+G8J9+/yfZCZGm/oKmhhV5GIAQUEeMRGXlwRPs6dc2UnKJ/ImfYQRT4RkLGqmxEpNlRF2UiwooIZhDUGoPziOjHpEvK/SUiVdX2eLJ8uZRZ8ULN0jWwPq9u4kxE3EEkqy4clx9XtNpvHxQRDr7yI9Y38aZOC3QTbCFb59lNq+tBmLKH/8YXRouJCBGJpNIMt+636WcD36NrXU/ERXm/SB05JUpfDaSrrurpqv0hIrqShvOrRkkRUR4RVj8IqE74XTNBRaRctP1rJm1jouXARJVmuH3XsdqRadgCz94NcP5xAKcKj29/JVwAWRoSx6eb0gnFukZEul1TUQE584j2f1OaGXm0yK+wblVERDsm7IndUMbF127Lk9nKQES8GEUE2ba6+CpUmrFaXUa898cjgsfEg+kQ4vMeUloDoAun5YzBdlqEz+J6XZ3tvFHHgdSQOZiCC568+F3qxtlUsFM+jxqTQRHhvAk/UGwTb+pa7Rw7QvK0Ghba2o13RLo0oohIy6LWTUVEosyq9LOUAKqjTV/TzaI1LaOkVNEUEZrAO7/WAJjiLJENUET6WF7dyBwXn4j4XTP6AFChiFjRpRkskS15Y9kUES0ZN7I0Q4FmiYrIff9LfnzOG+B0vSiumUV6fi9ic1JtzPVe7j79oGxp5r/dKCKjjxbtztt2FSzLEieyIiKt7ETE1nY4cfB4mmQHEdEMWkxEuswRYbVBocud9HqjJdoP+/FYcUQEDb47JuWCfWGlAVClGnmWORHUMXPS3aYmbnqDUERWyZSWp6afQRHpmPVC59mmQMtXYEVE1LMzlMx0U7M7gmbVdoiIJCoiRERcPSOIv0ebDr08pc99KdOE3s501b0bpojYIzANGV8jVCB0IoJEAAfdBbtmYhQRpwDLtB6kKyK+x8eJICIWva9YBopKwxbr2EN/Iz9/7vfCeVzDsMRG5ZnVuc73cKI1rz6PbAnPU5bZdyv9HbXAXLBhhDGrZoxod8lsiooILsBZFZGiS4oIXTRZFBErtCBIIkIGrcpUT4FmbARtk7eg2510rRE/bbRXWOTybjvjsJNKM+dX6gAV7n5ZzKyInPK2+6PqB2FWXT2X/7l1RSSm9Y4DtNSiOghFBNsaNS9DFs+UoxGmKFP2sIMVhDZtGmzyjOllSoZHJMOl3BAdPCelrb2/eD2r61zrzlPzZtY2gIho12xPXRqbqoiEPCKWGyACLV2tDXlEsI3aJyILOZJVrYRBpViaiSDhT39GJlnPHAI49GK5huFaBpKIrFzofA+nvKXefXdsVL30Jf7XhlwVMUQkBS4N6fKotFLOU5px28o7UaBo9iR4nCUSetxGgIiwR6TVVdeMR4rIAlDUcZe70lrI7S8eO6bVNC8KdNG4xXFVmhGKSGU62wKidcyc8raphSdTmuJGEZGuSzPZFJGeHPZd3ozxOijrSl+Gc8khYi5/fvRKM6xytEkRcRIUEY7h9yIUEVZJ9NLIer0ZCEvr9Ij0n4jo74HdR5/XRgHXvHBpRpRGWsHSTLxHpADLeUszMWZVJjlIeiK7Znid2nkNQKGgFJFz1P0Ujnlv1zCnuNbRQZUbJ+6RHw+9CLcsI9E5Y4hIxjKBV5QLrvCIeHa2HaC223E0qTUOHo+1DisiYuInXVhlP0ek1mh17RGZ9yZ76raoaWFU/HrU1vtzstst+ThecVyVZsRuotqtIiJfexuzAzZbouTSTDPHcwdKM9E3d64fs0ckcvrrBoFnxCARqVY1IpLhGBzdEDmCigj7WlxWRDhpOSpdk947vq518Nf0gLd6LRiWFu6aERN4++wR0a//rksBm6yIdHTNQFts1hiojviKSGdpZimvWdUrxRCRYuKgUkXy6L28QIrIOSrNNBeDHpGlkELCHVS5gGXruaf90gx7E4c8S8QQkTTQ7tziIDFRmsnYKRAgIukeEZb6wqaxpl4GoeOQX8+vZhTohJwnRUR37XdbmuHgsbX1/pzsgjDgIlnyzarnVzVFJItHRBERXxHZ9PIM7p7158v63BkUEb5p1O3xTe944PMOr4OJagnqHnum0s/HkjtauRXpRMSfmt0NEdENu4HUVk0R2TYhn2O10YZ6dVd/581o70E/O982I9DMokgEzAxpaYpEsH3X6SzNZFVEAu27EaUZemwnrjTDG0oiIlyaaVV3iI9eKOZ9OUxEeKZRHpy8T36cvRRgfDsAWwKMIjLaKNDu3CJFI1fXDJUq1r0SVEt+hHssYgZotfTuAmrflV/PSUSwrY26FlgR4S6AvNAnp9aIiKyv9UcR4WNE8qcUkWXdI5K9NHMaton3q0bdHZuaJbIWSk/M8txo+MyiiNBNo2FPbHp9v0FqWMtyhHlbEfMM6lrJq490aYYNtlxa4ZhvJyrmm/++qPEOTDS01yAwjVhTRCYxv4hySBYdmjezcjrTiIk06N1OuAPHm/gwAzsFFemj3b4dKs00RWkm2iMiFZGMZlV6beKm7/LG0UGPSivi/ef7g1MWXT2ivIxkaEa2YNtrZyPnzKxTSCASkdzvR8io2uSp78YjMiJAd/OH/l3HToMDyTjFD9u42KyaarYjRQRPrMCsiVRFJExEdEXE95q0804v1U7GOSIi4VkXWVGnY2phlgTtDvtVmim2mfxNwI5x6ppZrYOnPCKL6Tdz7prx5HwOpYpspiLC/hBGFo8K/ow+Uj5OESFPQssZ73vEftZBaeiTCJi304iF64r8G8ZmlpP6BZ7xw4qIQ7tycXMMdQ1ZCUTE4q9pr1ldK3mpkbsi/8xSPhFpdLTkORImuj0SEYwEaLR6JzcbiUazCQWLXmd6DbEMo5dm2tp06E4ikkcRka8NEu0kj4j40VaEesGvrV2ExfWm6uyZ2rFPfCzVgumq9UVJTC4UdqqGhNwRDWxU3X8r/NU9z8LhRW8kskRMaYZx70cAjn4J4JG/DbxADikiDkera4pIqppAN36MwQ7MmohDTFy0bmjDn/Gj4Otd+UOwY2YJxntURGhBxkueApvq/SAiblvJ92jw3TFJJKfpQr04la00I8LM5M3yjCezR1R2wGYqIlpcc2YSFM5IiVFE2MjGY803s77forKcICJ2QaWrpmbShP+WEfAkdKAZNKByuibeHN1Qjo66yevzqfh7rIhorxlvCrg1WIfyidQ8gIld0dOlu4BOBsVE76id/RCB1TgB8u2h+qF7NETEe1yOCJpVlSKymMk/I4feRZVm/Pep3WwmlmbYqDpVcWB8myQiY83gtd6mOTPL5d3a++F2R0T23QofveuYCOIchcF3hogQlGns/JORLv9iVd64RY4I1cQDJZMkRcQri0S/NFgxRISfh3dK3A7o5iURxIrR08E3j27Hx9fVzciGFisiXaorcaqNU52AsZIDVXrt1E4mTRGhBXrRmhKpiHunK37w1yAVkSwkSPeHJBARbu3jaaKb2fHA5yMSYqGIcNkro0IYDmUbJXhql0tERBv50AytB9zJVKAbpg6LyImuSLD3JoqIzFKomeyc2dM3n4j+HmCYWu4bXxKwdPTxHwf47K/37SEDrzG9ruEcD9m+G5cjoikiKdcjZ6zIZNUoRcR/7FbUuazMqmXlD8Gk6LHt0nA81Z4PqGgerRfrFSIiVhtqjRxkHQ3MyycBrAKcm7wW7j46L0aTCJjSzGjg9AW5y1468aj/Rc9TOSClKo2Pti0RbZ2NiPiKCN9Mk2A5cUSEbvr0vMrolrf1lhSRNSQidPPodt5Hg4iIazkqE6HRD0WETFU4Q6VI5TBWRebVArKQyah6GmRZ5tLt45kXn4GXZlgRGdueSREBpYhs3k2dzxnM0kAiohSRtPMx1N5d6LY9cZBg4kCKRkkbThcwlWu+nYJmPFXfYyKiqZqsTnJrsI5dk/J57jk6DzApd9TiptMjdG+R2IF3M0gzDuceA7j/fwN87tczZczkUeMEaKJ52KOBpZm4oXcy0CzbpoRJJ5Yeo5JVuZQujytJESkqfwgSkent+/xynraW2euyVNMY3xvdSZXVH7LzWvjEkyuC46yxImJKM6MBngthXdAUkeY6FEAy1tLYpKrX8o6lrXs3Ej0i5UweEaWIhBZonsmB5kAB+rncrbeUIbLqVXyfS5eKCC+6rmUrhabbDpwosoSqTaUkX7Pt7BNpVTMqIpKIPNuWZZnLdo4PiUdkMbsiwjcb9AJEROezYc+igLt+Dh1MA5/3GMCXK+DvIlBE1GA4ugaLmiISVhdt6mQqaGSFwSqJ3u3UIkWRw9J0vOl2OS/pL752DNYrO/umiDhuWBHpY2lm/oj8iEZeuiZ7RZPPPfTJ0MYN0Wi2QuMnoj0iga6ZtE1JU09WjSrNoDtFft2NOpc10sqKyPaJEuycnYYlyv/hcgyiVJPXvjd1INrAnKMs8y8PsfHVKCIjhSItCJP1Mz571OSsypjfNstEJLVrhb6PXTNZPCKsiITr/TwuvcU7T6WI1LsuzRSpC6jbHBFeEFARYYWmW+Nr1DGuaeSNB9+dbVazeUSoNHPC3S48f4e2jWUv62xEhkgeRYSJCOdFRHkvXNTG5I6vQESk6/AjQuzQrgiwEieIiPCIlDIpIl5oVzYKAVphqNZ6Ujls21ZDMPmaYLBKZUeUZjiRVZ+w2qLrPIqIvOTKHXDboVlROvnq+XLfPCK6klayuvAkJGGOiAhi4VhfHpJVaKEaaWpHW3sdEwPN9K6ZekaPCBIRfXqyBvTIieeMNKs2NEXEL81gUu55CjVbvuC/h1XyjNgzOhFZy62IrO64Cb5yWKorax6RYKOIjAYCPfQXngq8edj6OVHxdz7KLJqqiHBppgwVJ3tpxoaWmMSpnq/l+zEElKybT81o1ZZVaWZinIhIt4qI2hU74Dn9VESILHkVVc7aQTkKZxrM7leTpV7qmDntbRM5JNPVoibHZktXfeLMMvzS3z+iFpBeFJFcRlkuzXCCJiJMFvUQKgp560URQbn/xv/6SfjQl7QbRwLYPI0trCJXR+WIJL9W4UXV1ruDRkwRUWZT9m5pRCKsNtgRiohDYVy47jAJVK9rBBFBJfY/vuJq8fmnjlt9U0T0YX0bpoj0lYhw15ITJCLaWowpp7GBZsWCuh49XAuS5iPRBgAHFOLrH/kjVhIR8c2q56g0g4oI+k0WCvK6XdGIyGRbbrAqM7uVyphZEcG/gzJEvlw7JMgYcidVmjEekdGAnm/gsWGV3jx8MyfK2klPikiqIpGzfZcHaGF8ux4ZzKUZfl5eBFE5ybOTXVtZVCx5fJzagLuUxxURsRwVLNSt3yRaEal0KCIna1rtPEnZ0MLMsLY+Vnayt+wRPvjZp+FPvnQE/vb+kz0TkWe83dmfmxWR8Z3+IhomnHr2w7g2VrzL1Nh7j86LOSdfeDJbO6jHi64tPSJZc0SaIQ/RKCsiOhHBFnbxMbQxcWhNYdKhw6ZrRrRokgqhE7wovPjK7XD7oVk4QSXHXmPecbOjK2l994hsgCKiXiMsU2sko6mVZtrYNZMUaEaKiOW5ndPIddD5zBvPyOOh996NIiIxZlXEanGb+Fij7BDwPJjxJBGZ3L5Xqd+Zuxpx3cRuQQD4m2Py73vxlTv80owJNBsN6PkGKyceCbx5eFMc14iIYOMZxpi3laKSzazKpjas/+tJfZxd4E/8JKOctojlISJNZ0zlH3Q7a0YtugVbZSJ06zeJ84hU2SNCisi5VVeZM5OJCM2Zge2wawpJpD7oKhsRObMk/xbs/++1NHPE29uFWXWbMuN1tN5p3SnlsSnt692pNzw8UQxVywCPzhn0NOVp3+VJ1j1FWA8Y7Olgs6nu3Qq02aPRnf4+Rx8MSGBygqMa1hvtUMkrmogIVeSVV6uWdLfHmHfM3tDXPdwA9bU0sxGKiMpxKeIJqL6uKxIYaFZICDTD5gE1piNhHeGOpiiFiiEIUag0lFyaoQ7DsjSjtxYlEWmuLajE2Okde6FJkQjNrIqIto7/29NynXnDc/drXTMmR2T44eL4bZ9Rr596PPDmYfvtZEUnIqyIJC/crRr9PpSEJJgGmxSR8OwCfh4+6VmBEBN4aRHLgvrqkppqW6CFsNtQqRb1zWNphudt9IeI+K+5X5qRj39OnzcT5xNBiTKgiJRFC3De9l12ua91M8+Hj0MpIrLd0sviT2FFpLotMn1TgN4z7HwaG9Pi67sMNePQpIW1bMSAiTGaBYOBZsnnUrO2Fpj8jCXIUQP7t3Qi0uTdq05EtOuK/Vg6WFHRQ6vUxkYzYYbxoiu2w96Dl8ljwC6LHtJp8Xn1dQ9JUV1TFnoCGqx18tEnIuJq6w4OknMpgYIJiuqaickRQeKMhE6tBwkbE+5oipqerI6HyFBkmV5LVuUcEV7LWhWKeV+VZtWl85JU4qTwmclJaNE9JnN6Nqn3WEaqtwEu3zkONx6YNorIKKEVkq3sOekRadPkXSzN6IoI71jSiEi77ntEkIln9YhIItLpEWElhhcxXETyJO811mlHXhqHItWtu53a2uQdSKGoSA27zAPAcsFf/xDAV34vp6EWzaqFgCIidhVpE3jx63RRokdk91QFxpGI5GzfZSl1LQfR6zgOumk948rSTHttMV/7rkrfDC5GvPOugwMT1THR6ix/rrv30q0twk87fwVTq9k8Ih4tsEIRcbKbVVt0PbE6VfKa0cPChhiqJZcVRU2eD/gEtNciqjSj2n81IsLmyKjZNAy8if7QK29T7ffnTh7t+m9B9QMNqjoaaZEEWbH0bDAhuF9EhM9xulFHvfaBHBFNNRH/tSzZwpuhVMubtKjpyYw2bQ7DYXbym36HFSsi24mIcCidvUY+Mpozs2BNQ6GAnZk0nTlrA4DWoYl4zQ17hC/ReERGCOuhYW2Tq88IlaRON+71kEcEuwXExxQi4hLBaSaYnaKICEYtRykiKl+AFipcRPIQkSb9PRidzga6bmeUqJpowQaHzXjtiBvRmYcAHvxLgM++N+NBEvnzfI/ITrp4xa4ibd4MlWWWC9PiBomKyLgozWRXRNDoNUdliq6JCJVlcLD3BZDlk3amQLN5rTQTrYhwd5IcOlfMHrEeg6vPfQp+2vkbeGvrr7LNttB2ejLQLFv7LhPzFYvGJVj5iPQwwO+E0UszbF6PnqNTLkcQC0dTNRUR8QleEl545Q5YcKS0/7dfuLvrvwX9ILoiIg+73l9/SJX8LKhS9iFLhNcdtQZbrIgE23fjPCIcapY6b8Ztg0VjFJIUEY8VkcjSDA2m9BwxsFAvzdhTkoiU67K7pbYgSzTLtlzf2ky0Misick1Yacu/9zU37BUbOS7NhDvWhg0mWRVPgjX5JmEbHtYORcT48kmor/lERFc0uGbIO8M4uNRF0rIzTN7VswnCHpG2JkciNFmXF7EscKlrxq5MQommAdvdlmZoQbDsotrx6eFMCnyhIwHIMDXXq2seESIivItAv4ZbJk9EXJmDOmbOFeRCvQsVEc2s6mUgA+iVYDN916UZKsuc96ZghTIDsiWrXvAX8BhFhBM4sVsDS4Z+oFh3N5FSQ76W22ERlrJ4YuicQXN1wCOSoohwVs9aYVKd5xjdP0pgcyebTfXOiUBphl4L7LirlDpvhlx+QSKgyqv0/vGGJA64qals2y8+f+SJJ7r+W7BDBtcQHX3pfNP9Iftvl+cxGkMXn+35YZUKTWFi7QgiIGfNRHtEEJkUEe1aijMPi++xIpJgVl1qyk0oknbe0FZm9gZi3uuLZ8TH1SL5f1gRyapQERFZ80pwYLYKz9k3JdK8WSExRGQEsE5EBN+0Yx7NcTj/JDTX5U2xWagGFA3PzqeItO2I6ZtRoMfFBVof4uQP2ipGyLo5FnJixRidXmQi0mXnAi8Ilu2ox9Ljqv3n1AyKGRaids1Pf2VFZKZaBJv6+GtOyrwZ8oeccKUrXXpENLNqhlAx9of0poj4RIR3X4VGilkVFy42lSUoIuykRyVivOT4XStdltm4DXzSWldKUOLPMxEpSkUkKxFyuSOqQIpIN0O9hoSIKBUw0EWnl2b8MKzIsiwrIlbD30zQ+6d35MShsk1mTcy0zgda/fMA1w58D3SEW5C7xvwz8uO2ywFmLulbeUYREVZEIkozcvpuvCKid87Ebmi0a8lK8ojQ4/NmMfgY8lgX6ZBR2eX7yPg2SUSmKea9vSwV1EZZrlttNcYj4/tBqcWoAr/6OXskWUVFhCaje6ZrZvhRJxNdA0pw2NunDKuKiIQVDU42TU2SpLjyzEREU0S09l1+HkVEbG03lWMht+hGUK5OQYkMdHqyYh60NUWkVKEbbdSNUO+UWDye+rjcWYE5IkxEsGaKeSD6TSx2ASEicqwpJU70iAizqtoBraSOT9ezQ5KIyMMnF+E//NGd8MDxhVgicsGbUs9tN1eScwvYqIpyc3lazdIIR6Or2UOWvMmpuUFdtk9bVFKbglVYyEREyLDpSKUwa2nIo912zZ7cmC6NDQa2yhcjiUjENG4id/W41n270+fFBI/n0CShMCXXqV3WPNS6zP5ARQTLYzq6nT0VV5r50KMWPF6f7RsRUTd82rQps2hbi3gXHpFos6of855CROhcRmM1brbSFJFkIhL0uiGmdkhFSxDB+hIAeUXale0B1d0NXftxaBPRwMaI19wozfF62KAhIiOAJnW3NAslOFM8KD5fPvGIMqu2O4gI5XlkHPKVXRHxCUazpd2wVGmmGNpN5dtR2i3591QmpqBUrfSUyMm7P7xIS5XOcCYFXQVYSCciLiki9UJFqSB6eWaZ/AVpHhFWRNCljo/TLMpkXAsj+1OUifM4WIywWo8vzfzdAyfhi0+dh/97z/FYjwgSkRXypxSw5pw0BZONqliWKRRiFRFO2sVuDaFIkHGx20nKBU0RmV9NPx94FpJdJLOqV8qkyPBgyXVbK810W/oaAKS5s9VBRHx5vtMjgu9NJBEJdM24AUVRN8LGwZ6WRGSPNdd1eQv/Hr19t29ZQHipn5Qloy9cmIC7Fib6TkRwA6QTES4VIzCDKdEjghN4uVyaUppBtbGYEEaJOUryuOLNqvP0knLHjPh8dkYdQ2PxNDjrcr3wMD9IM8imRUSE7QUYFXHTAbkJQ1Wk7VBmigk0G340yPzXtMqwNn25+Nw994QqE7ic58DgmmGamkALb8fvp5Zm2oFAM1ZEfCLChCUfESm2JWsem5iGSoXl8S5LM7wrtotQJkUEF9VV7B3ToZukFtMXIo9KOWFfDZu8Ft1sisgpb7uIUsYbJQLLR2gay+LV0BWRJMWpvTIHb7H/BWqLoZkyemlG6AwV1bKamCWit+4iYjwi3NKHJkk9UKwZFQd9+LMAv3UjwFOfjn1amwY7TsJapiyRgmbYLNl25vZdvh4ajiQiBcuDer+6NDaLiED+0kzkeAetvMrnGCtNdobSTIGIyG5Y6Lq8JT0iYUWkt/cDj+Udf/UA2AuymwdL3c+6O/vXOaM6ttis2unRQMN13PRdRCWLWZVb5JGIRA28I7BvL1IRoethriGvfVZ1EZj2fAFkB+DS+ZNQqlO8+2SQiGQdwVFbk+tmo1AJHC8TEZOsOgLgvA8cZ2/vlDHK1aUjyuPhFoM5AGwm44UjDhbLapmJCJVmsGtGk6xVG5kqzfiybp4ckZIrj2dicgYqpGIICTOKzaeA29WQiOjhTMv1ZnxpJoMi4pEK1bKDrznvJubclHkzpIicBpkhwhCG1YyD77h1F1MKOoiVhtvO/CX8UvEj8I1n/3eCRwQXG0upIonPrYeZIWIVEZ+I4AwMJgKRisgT/yIJ4JOfjH1am3biVasBSyvpsy14KCPejHNN36VdWaNIoXT4ea1PpYBNgChl0I1b75rhDge9NMMlDiSJkeMdWBHRAs0KCZHwHZiU8vtuay5XeTbOIyKGyHUzv0rDiYV1eMMHvgSfvPsRoa6Jx5u+BJ71dvZfEaE12CUzqt4+i0Z/P0ckwqyqxbzHKyL++4cT12OPh8MtExSRC2tS3d6hrUdYbl7UYt7Hm7JbrjS1O0REsm0U69T5iTkigeOje0+htZZcFh4wTNeMKM1Qd0uhDJP7rxWfTzdOg1OjDoYi7cIJqr0uxSNSICLiRQy9SvOI6DkiLPupfnbV+tfIvBvCduCKJ49nanoGKtXug7A8z1MLQsEpBmTmlXApI6dZ1SKzpmLyIUXkfNoEXpq/gemT2DHDkD6RbN0raFb9HvvT8GD5B+D6xtdjf26mJv+eAzVtYjNjhT0icteTKdl1TcsQSVBE+GaBRATl1wY57COJCCswCSWhIiki4hCW6RgyhHo5ZFb1zbKNTKbYRnGqu+miA4Zsd2WPQjlCntfmnZA6JRWRJI+Ir4j4rcFZiIg0O+5Gj0i3ikizpYhVwx7PVQqIwvv/9Ql47PQy3DTuT5DeOTujEZHuM0943QF93Qm0z2pExMWYsySPSIakZSIASPITFRHOKQkNKg0QkZrXoYjoMe/1hVMwQXNmxrZJgglczs9IDNleELYBeEUtzr4HkrnRMERESN08frsMBw4chHlP1jRnlihhtRRWRGhyZtTJp7+4nKsR+v1YkNwoPCK6oZJLQKp9l2bSWGhWzVYfRsl9HGjC8OQ0VDUikncCL5KkAo72FjJyiIjUQkREL0VkMKta3GnkBMkfe0TONCrxHhFUX2iHg0Rkt66IBDpn0hSRBry08HUYt+pwu/t1uQBGYLIp67qXtI/Gm1VhSqgWqTXpgEckRRHhCaScvsjToKOICJfGEtQKRxtFX19ZyDwoTSgitj70rpaJmLvFcWjT0pM5wnoIgJ1sytyptdgqE7nuU6DNTXzXTDBZFTcKDpEChybzJoLydPAcrXWZ/dFsNER5TPxtzkQgvr8bnF6Sx/FjN9Lfu+0y2DdT9YkIqpUZd/hRaIluGFZiSTFQgWLBQLPkHJEs7btkNvZQdUy4TXL3ToIicpZExp3aeiQeW4t5n/bkcUzO7gmcH5GdiAlExA1tevFa838oxyTfTYYhIlrQEna3XLlrAp6mzpnpmvQbFMrj0aWZFCJiExGxQqWdTIpIoDTTDCoiEbupNMwtr8OYRSWHyhSMVctqfDl3DWUFPidf6Fia4Z07Hs9ykiKycgavmMTHtshQ2w69ZmrwXb0cr4jg4wujaxVWoSrmzDD0LJFURWS1DtMgj2MPxJsBsXVSHBssQnNJRjVHte8e3DaWrTSjFJFZuOuZObjz+FqkmsFR+m1WQuhjZMQ+v/4Ji1BRG/jYWM1ORDCdN5is2sh4PVQVeeJMlFFRRMoRiggTkYAiQh1C2ImHMnwaEcFritWWYsRsmg6UyQAqTo+EwW0ZvHGIFpm5s5YColCjEtNsQ66bMHsZ7J2uCJ9Uw8K/F8cvPNuTR0etO8VSoPSiEwFs303KEcnTvotqX8lJL80kKSLn1uWxbB8PEpFWVRK00twTYBMhnNmxN5glk5GIqHTwkA2gVCr63rghDjUzREScQ2wqrYhe7+OFfcEXKYaIpCkiDi28KgI9DbS4yfZdfxfOhIcNWvoiVs9IRBYWtBtMaRzGimgylI9XX88XYoQLp1oQdEXEilJEViLNpHGw+YYZKodx69uz6yXfIxJWKqgss2BTmNmkv6DLdNVsWSJYmpm2iIhYc7Aa09mxrX3B50DHH/S/gYs5KTbYNXPp9rFsJEgzq/7aPz8G955cj1RE3JAiwgOyIjseePFJIIAlzXTdWksnItzCWiyVQu27KYoIE5GST0QCIWAj4RGha14zlKqUT31XzmGGcZNbibyjl6HeqAfmvmQqzTh49ZM3iEc35IR+vrACmVcd1cGbosk1IhvbLoW9M7j2WXDe2d2zTySw7rBZNcKjIWbNKEUkLtAspUyrmY2TSjNKcQkrIqhoU8T9mVX2iISC0SYkEZlaliNF5rwJmBqvBFT3rLPAXNpMh20A6E9SE3iNIjLc4ARUnPEgBiKNy6FSjKK2+9Bd7Ynx6G5btLOKn4sYepXYNROKeFem2BARyZMjsrgkb75CEnfK4GiJmOsk63WzIFh4IWqelY521/CY7ZTyDLcYe6UgEeGY92Nr9BpgaSjM8Gks+jmQuQW7NUUkn0ekHiAikYbgGvrufQJXO/lwRzoqVqoXYAIu3TGukaDlTGbVw+dWYk2gfLPgnXibMwea+T0i2GEQ6JzKMJjPoehrTOcNmFVTdm9MzC0szSSVk4a6a4bOby1tU+2KdbOqMhTHlFk0ItOs16HW8P0nWQLNxPFY8rprrWebnxQGk0Cc16I6+3ogIpxCPL5KZGP2Mtg3LY/xBPRuWNVff+XTi0hWbebJEUlp38VzO7E0w2tyeFOqEYg4RcSZlORsZ0sa7BetGRV4xkMVC1mJCF3fhTAREaFm9LxGERlueLyA007E3XZl4PtOJUhEWBZMVES0hd8O3VTzmlW5S0FdfHrEe8aumdWlBVW2ADrZeVdaz9m5IEozllaD1eZmdJhV+UbIC0JS50yrATbd5HAeTpQicmLV8ruHwj4RKs2cakuD6E5dEcnoEcHXE+dCYNNtoiJC6ovC2Uc7yjJLhWnAgeSX7RhXMe/t9cVURWTVnob5taafzxG6OfhJu6SE8MiBKEWCiWBMMBKSyopORFL8M+iX4Tp9qUweESIiabK+Q6ZYu1T1/S0XgyLCN6N2Z9cMvzcd0Eo7SMb00oz+vSTUCvJ8btPohrzgm5c4Rv57uhz5II6HSpjVVbrGt2FpRp73R1o7+qqIMAHw22d1RSQ9WXXJG/fXp6iAQ23CdVJpRj2+PuBP/L7mu/LQVA4iTkBHmfwgBSxZ4fLl0BwtKl+K72UNnKTSjB3a9OLfipPMBYwiMuTgBZx2BdW9snOGURwLEREqzfBNM42IRE7fTAs00xURJjxhjwgGmmVMplwlE2KT3PEI7rbI7RFpiD0UHUvQrLocLs0wC99+VboioqknVqgcxrsJ/HM9nsAbbuElReR4c7pDEQm27y4n+kPQcT9F7Yf4sbbaSR48ahNmFC881kFE5ikn4JJtY+q5G6s01C5BETnTlD8bq4jQIqfSF5UiUk8ozSQQEctf7OzGcqw5VzxMGxUUeT6W2SNCgWppRkc2xaJCyLM0RkkRadQbqpYfVESICGo3I1ZZ44mIo8K4cAaPKM1EGGGTUCci4obLnxnBce6CFNLfk9UcGQUkUxU8a9fO+orIjNwMPN3Y1rsi0nTB4deIyV8EEcFQxaQcEamI8JocE3Co2nedFLNqHBHRFBqwYdtYKRDQiJjYLtNVGes0Z0ZvDy9oRvJEtHySHyYiviJizKpDDW4r5ETDHQevUUZORLkaKs3QScKmvUgQ+1z3StFDr1ICzfSE0gKd5NyyFghDyqiI1FaXOtpiWR5vkMM/z4KDx0gHpSW9tmCl1owmF7uuTVdE6DVDc1Up1DmANzw2rDa5/TNcRlgmRcRlRSRIRJYylGawYwaDvXS054OkQxzDAg3X8+SxTC495XtWKFWVv4ckirsSGmvpisixmjzu2HwOUh7YvMzZAZH1fb5JxeyG5M3DJyJj7mpirD3GiaNihyhWKsH23RRZv0SLql0eV2WlXtpFNxtNfe6HXj6JUET470qa3KoUrWY9pIhkIyI8esJLKvclQDc9W31QRLA0c4lFJAQ3C2PbRHAXDq9UnTPzR3tUpHjdCRERjQjI7pqE0kzRFgZrVoQj1wM9WTXBI8Lx71bYI8JjOSxHqKJ6qipjmmLew100gXtMig8xnFkVVu/1eTNqjtUQwphVtYUeTXSIK/Zug6Pebv/NHPNzD/RUxUQiQo+J2f/VUnxEcFxpptGOMqt2lmayZgjUV5c72rkwwC3sns8CfM7AjkNbOGvra9E3wl3XZ1BEaCiaNnlXx9W7JwJj5DtKM6SIYOvu7Bi2TfqPERx8t5TJH8LwIgy2rUVJTr7qXi9Ia7m15JdrVuVifKYtg7tmxorgluSxt+OICMrD9PccXi2ruOZoIhJURPzwo1rnYzaTzarh0syUtQZzWsR9x883mlCisly5XJGBatRCmUpEPHkMRVREmESNEhHRVSWdYNBNUS/Vcpx94uRWHmzWXBdERKWcZiUi3OLepSKiTM/ojWPfW5dEBAfvYWnmkHVGqSEI9DzsnanAs14/SjN+i7OviHCORzDQzLaSzaqIdZ5bFbUe6GbVxNIMe9ZCRCTk49LnzDB2bJuFVS6bAEC7Sq+RZljmbJk0cEcaz/1i4BqoSjNGERluFELdLdhu+Qz4nTPVcT8JUjersmkvURGBcnSyYmKyahtaLf+xxYwSvaUrYmBWGprsrNe8F9z+2cxJRNYboVkOHLwlyjzr0TfCnddmLs2sxhIR+T4suDGtd0QEzsFMoGOGFZGVDIqI6JghfwjDIoKjo71wUkVYP+NR7//ZRwKlmbPulCIiXll+7sbV85GEYOgQhqEukncnTmngmwXPo+CbYvjn9B1QXGmm0YKK5d9AUQ1aWIsn2PWaNpXUkeZul9Mck2T9NgrU8u9zKuN+OWOIQ5biShloQsbSSpJhkX1nXsKcKaVoNeqi+y3Kf5J4PFRmtcKG8Ixg4orvBQ/ay+xJCIGHF17CRGSbb/jfN61lieC11OV7jopI2CNiRbTvYqBZmiISICJRBm1u3/WKUCxkUERiSjOsukQpIrgmXQDNFzLuKyKOmo7ezElEgiVt3ASr0ozxiAw3OOLaYRZasGC+eom/mx4PKyJZiAhNGvVKIlI424H4rX5tzfjH8hy3rKlZMxgPHSYiGOn9+y8BOBVMBG3TzbegERHerXHmQdemMbuoIqIb+rwTfYFUisiJ+Om3rIh45cj5HNfskUTkHKerrkebVWWqavDCH8eumQyKyPnVTkXEWekkIrBMUfLeNnjCkyPZ4dxjHQPvUDGYKDtgVeQ5ZMU9N7fulibh8HwzuTTDkf90HvANzQov8PpOOcasGvYHTVrJ82bqegBZSKHreH4d2iJYrIwpg+colWba9LcrSZ+h/BUaEeEdcZK6oQgkm1V5t5+NiHDWDqcR54VfPiqJScq9KCLcMXOISzOkiCAwSwSD/ZqCsHqZEpbjI+lbMaWZdqA0k+YRQawqZTVKEck2a4YjFTqJiJ9+HKeIIJZsn4g4U7vU57a6xzQSPVvhdORKNUhETPvuCBIRrF0z6tNXiI8Nz4aJ8aABCKOtxUfewSQsvLW4MeCRB6KlNTY1IkKsmFu69C6VDkXk638JcPpBgIc/FviyRzf5olZD5J0sT3PtJtBMSJ+4K6bFM1DmYSKCprzZS+VHJFUroY6TiNJMJUEROUkeisBOBn9XS1UNKyJjmCOSIcsjShEprXUSkYJWBlJEJKSIYJATqiGoGjhERApxk39V6+4sHJ1bTSQiKluAXnNsO49UJHQiiL+jLdbqR0Kt22mD7+r6+xsyT1vYUh3xHAJcqvAsKJer6ph7CdDabPidMGEiwjejzqF3nqYWhuHRzR+VCXGTZWUqo1m1TWXWQre1fyaOSER6VER4Q3RZ4WyHIsJZInPFvT2VZyIVEVamwqWZBEWE15aVpI2JblZNmDWjjiO8KaVrlLNeohQRPeYdUZre09HggGs8JvqmgY3glbGgeo8bOvQpCpjSzHDDpjcRJ7Sqr+2+RpVWMAxLR5HYqjjZUxZe/P2oMkP0gfgLnD5Ai0sz3K2jd9d0pH6yb0Kb64DGV4uJiOZ34YWw3YVHJNwex0Skpe+weUeOKgwuGFP7kw2rdIyrXiXSV3MVeURON5iILHSUZRoRqaoIVCWUUz4h0CzKI1JeJ7lZg7Pmqy+PuweDLbwc7+5NCbOe+PlxufNxmiuJiki7MgtnKCo7rn2XiUg44K5DkQhL9hHlmUbI04MekaTSTIPixEUeDdff9V1/nCqirgck5r6viDuARgEqWp9KmolJy/x3JZRm2JeB6gmazvMqIi6lodpdEhF+7ZEUslE/qzkyDN4QHSoEPSIIzhI5XdjVIxHBrpkgEYk2q2LXTMLQO1JEVqyEdFW6xkSyaoIiUkgpzdQ9OzArq+NvKvu+kLFZ35eIrfGxa3wEypSOXB0Pm1WxNGPMqgIf+MAH4NJLL4VKpQLf8A3fAF/72tdgmMAR145m9Bm//Pnw+faN8FH3FQHTo/h5vaMjTsrkhRe7ZrISkQJePlTz1HbB3CYc2TUTVkT4opp/Rn1pbq0BExbVEHUiQjeDvFkOuGj6OSLBYwq0Y/Luv0QsffpAsk+EbpxrMb6aqUpRLGqLnAGgLyBEROYpVVWfM8NmVX/i5nLsJMoLq74isuLIdrqxWoiIuG0orkuy0Rjboykij8mykyrNTMPMGM0FIiJSaq8kKiLrDrUmCzUtWhFRu1a+kbEiEd7N1tOJiIqGzqiI8JC6Jh+bdhxRxxp+buGZwrIbk+oR8oj4M35CRISuI+5uE1+jv0ttHiJgkVqCxFJ2ouVr3/XIAO3gZNUuoIirU1bmSCwFoPE0L9A3huWQfSCvC6GABhQRgKPt3gyr0kcTLM2IQMUIRURtlHgoXQQRSZw3o82aSZq+y5sB3iz6v8+biXiPSNigOr2NFCPNJoBrPCpBSWi0cPSAvGbHQ1ETQhEx7bsAH/3oR+FnfuZn4N3vfjfce++9cPPNN8OrXvUqOHs2NJtjgCjSAl7WwmCu3bcd3tJ8J3xo7K2dP1/OTkRqvPBmRJsZvjZAy6HSjBo9rrXL1puhHQz7JnQistqAMSBDrh4UxjeyhMms6aUZHsRX6byxcYYFP+fMwRQionXNxHQaXb1nEjDTNPC3Iqjcc57MX/rkXcS47hFBU2iMwe/csq+IzI3L8txEo3OODA79a3sWTGzfJzqsxDwH3JkuHguUZrB7B1GdlKSm7K53xkGLP1oSkWXLJ4r+DJeQIsJdVEwAVH0/rIiEdsoRPpFWh0dkHeYTumbYT6T7JHDwIb4W2a4HScytESzNcLurGnIXvhlpagK/F1ZCXLsyiLYbwmORN9AMRzUgipRGnBua6Zl9b5hlkqUUEAYe/17rglwXkJhN7etQRJ5UWSJHe541w4qIr0hk94jwxjCxnV9N3y2KFOpUj0hHaUa+lzW3EBja2YEJqRJh593MDt8jwucNEi/MT0nCcq0JVSIiYxPh0owtPHew1c2q//2//3f4oR/6IXjb294G119/Pfz+7/8+jI2NwZ/8yZ/AMADZJEdcFzWjz1W7J+HX3ngjvO9NN3f8TlFfXDSDWrwUnVEREX3nZOLTbiq2mnRb7pDCUc3QzUwelyswZpwusLmVBoyTIsKLl34jc3NO3EQi4gea0UJARASjrdXx8I6cdm4wfTClNCMvFGxpiytnXbN7MlERebYlFYU9tPjpDnW8CTZJKo3ziaAiMgXyuBcmZAjbRGshSAYozAy7c3ZOj4ld72EalAjP3q12U7I0I9+rsSnflBYZoESKyAX62zCMTXlEQq233NKn5lHQ+dhhNMxQmmnztGNS4oQikkhE5Pfa3LKLb682tyhOEfHYM0UKoV/OGB0iEo7WZ7DqwQnIWYkIl0NwN7uwWldt0Vm7Zjh9uNjuUhHhNaZYUYqI2IFnnOgdXhNUhsjMoUBJhBWRXkPNZEk42L4bRQSwFJ3YNUOKiFJIo0ozrIiklmaYhIZUC3pt19rsEYlWuZwpWY6ZgykYL2vnle3P70rrjFxeXRedllGBZqjmb/mI90ajAffccw+84hWv8N+4QkH8/ytf+UrHC1qv12FpaSnwb6OBTJ5zFCrVYA/2dz//Enjxlb50xiiXHGFiTd4B+gtvZo+IboTTFRHaKdk8cVJbqEpeS7XOYbnBXdOSO2nncV5TRIJEpNJVCyXWLAOBZtrurigMtG7wRphZEeHSTCW20wgNq0sQkSOiUlWnxEJz/d5gp5P0+ViaT6Tz3EJJGtUjVkRqk5coaZUfXyc96A8ZLzmwY7zkl2eOfE7+KYUqrENFKSLTExNQ48eKIkGkiJxuyr/t2j1T/nPHlGYUEbFjUhjDQVdRpRnyBy072/xQutX4dlD+eQ7DQ+BC7RtrG4ljyiUxLyhzZNahXsMAV3XClFOTlvm9YLIRBe5UQRViaUUjExlzRKyy3P2W3G6JiH8esdoqduAppYAo4M1SZYhoRlX2Z01WHL+FtwePSHjWT5RZte22ocAJuJFExA7GAESVZtT03WSzasFxokszymPCHpFocmnvlt2EzxQuUXNmBOicEoNNU9KzVygjSiA0tTxQmtmqisj58+eh3W7D7t2+CQeB/z99urNz4r3vfS9MT0+rfwcP0o1rA4EpkpyjkDWKHRdedkPH3cR5B4gLb+b2XX2kuLagc5uwHTKr+hN46URtrgcWw/WzT4uPcyt1GFdExJfu1M0gNxHRA82Kod1dE5brzeCNUCkiB7KZVWNyRLiFlxURL6CI+ObRWy+Z7VCh8PHwOk/qnFlcb4o5FewR8SozcMqjXZwe6U6tu4KIlB0huz7uMhH5vPwRasvDrhkEEpLE9mFSRE7U5Tl43d6p4DA5TfVS7dxETJkEdhgNw6WZCCLCUeSrxVnVgt1MmMDLfiJ9qmwwXbWWSES4NMM34VEiIqoTJkQUlCKi3QyZLCYREVZLxIymNe29yqiI2JVJv9zXBVhZE+uA5jtLu/HFraNRrbv9zBIJlGaIYESVZgINBBFmVS6Vz7uVntt3lSJCqnXH73tFQcTiVPGrb7gV/r39W/CvN/y34DdUVlS6IrK2Ks8dF6/f0LkTKM2YrplseOc73wmLi4vq3/HjyZNa+wG8gNjow7Nm0oALLxORQOxzhOQtzXnZFRE10I0WCX2Ak/KI4B3V7jSstnU1BAC+du+94iPu8qNKM2pSY6sLs2pYEdEH3/G8GVZEFBG5xFdEosyiKkck3iNyxc4J/4a+rv29WjvtN1zut8QxcLcxnpIlgnNmENts+d4VxmbhNEQQkaVTKkMElRYcZvWEdzDgzVksSCIyTWbVmWopaJaNUUSOUKrqdXsnfSISeo9smurMr7mfwpjSNRPhEWHC3LYr0Kb3qZUQQ89EhEuIiJJj++pNDLHg0Dz0TOHC7reLdtelMQjwpoPD2BgWmcj18CmHrt+wVB6Adg2vreVXRJiIVLpURLiUV8DzSDuWbhQRXIMOKCLiG1UZmK46B5PQolj6brJERGkm1DXDRERM46ahjIG5LwmBZvPtakazagIRUe99fPtuXIYIKyX/5xfeBv/5O14Y/AZnRWXomllfk+tJAz1luqoSnjWzVSPed+zYAbZtw5kzwa4D/P+ePX7PNKNcLsPU1FTg30YDb6oVNokl7F50lANEJHoH2KZgL7EDzJqsGqGI4PC7Ig16ckraCa1kXZ+IPHsyOBPlxJFH4exyTfgeokozHJqTd9BVR46IdjyBCbx6+66uiOANMhzPzl8nRSTuNUOCMjUry2UW3kTJo+NRmBn6Nl5wuZ9QqEPEvCfUhXHODGKGBt4JIuLNRigiUs3D742V5ELzOJdmCFjzRXBpZma8CCtUFmqsLsQSkcOrJaWI4LmjoHdR0c1bDcaKa73MUJrxSBFx7Qp4Zemv8RJyVrhzRPdJyAm8yTHvLVJEGhapN2m5FcfvAjgsy1xDA1YpQ7tOVipzExHtmlklIiK8N6GbSeyvVyURqXq9KiIVLSQxW7to1Dqq8nfGO8vZcgqvBYulPV0bVlH57SzN+F0rWFqVc2Z0RSTeIzLXTlBEtPbdpK4ZpYhAO9htpBGRuLKMeoxCxOPTJiMLMVxfk+umDIyDiByRytZWREqlEtx2223w6U9/Wn3NdV3x/xe+MMQAB4TVetOftZEQPqRDX3jjFBFXERHcAWZbWHRFhE18SET44uMgtbh5M8+cCBKRfe4ZeP+/PilCuvzSjN81w6WovPK4ICLhfn7VyZOgiJTGAMa4ha9T7eLQNZQSk+bz7NutkVgiFC6pFHOF7fDcg5oxVIOcwBu/C8LXCcFm1eL4NjjtbY8tzZyFWSG74kKDsnOj4J8/5zjencyqkxgxT2rM2vJ8bGlmzpsQhAkn9rawAMbdKNoNPtxFZdPsoyIpJXlKMx6pJCJLgqYaF5tLwsSdTES08mCG0kybjoUXS1ZxkIh0JEfi///8TQB/+m2yJXqjgd1X9/8FwFd+D+Bz/w3gk/8F4B9+BuCRvwv9EX4AmA5Wd1S5ktpgxcfQ8MYAtM1EbZ3fh2xqCKLIRATyExG8afIxivMooIh0R0QwlVeAvCs6uHPmrL27a58IDlz0N0BBRQTN803XDYaZpXTNZGrfTSnNsG8Pjwufv5PIOCpLKBdsIreWB/V68vpcU0Sk8/6FG7pRiHjPOBa2e2Dr7vd///fD7bffDs9//vPht3/7t2F1dVV00QwDarWab2zKSESQwbbopYvL4HC5G6FQCZqQUqBmcNBOH8eu88UXICLavBlWRE6GfDcHrbPwf+46DnumKn5pRmvf5eF9mUdNJwSa+cSoActKEemcbyNUkbXzsjyz96bg315fES4FkayaoCJdtXcGlg9XRaupICLFqhhfj9h34FBsKQzLKKo0E7ELOr9SBwtcGPPkTbM0Met7RIh8hEsz31CyYft4SUzYPF06BJfUHu8YeIfAc4DHtq8vz2sTJujGS4rIAkwKEoI39wL+DpRgDOqBskoHEVEZEDGTjxlRbdo8E8WpQoHSX+W8mUZHC7SeLsoR7eJ1cjSzagypxVH3+mLJ53LRa4lzvKQPFkPSxWW3u/8E4N+F6uf9xqf+C8C9f9r59fv/HODa1yrVTxH2DkWE3gft9WdS6GiRAB3QNhO88dAJXhpKY5I4ivMDb4JJ4+pDwBZdbhcWRFaZI1sw32VpZpIJEc1V0sGdM8dhN1yHn2D6cxeKiN++SwSESiP4dSQhrhcmIgk5IrwpieyaaWQyq9qBiekelJ1ORSTz0FMd2jkWGJsRgcb6qiqvhhEozYQ3Jlupffe7vuu74H3vex+8613vguc+97lw//33wyc+8YkOA+ugEJi1wZ6JDOBAJx6EFQZnc7QSkhUjf4+lPkVEsEMlFGgWqCE2oUZj28+fl+WJ5XFZo72kcF7MYDixsK4pIn5phpNks054DJpVuT0upIigzFwPKyLaDok7ZyIVkTU/0KwUf2rKzhktS4RKJdj2e/MV8QZnLKP4Po0oRaQuFtMCzsMQh70tpjTDc2akIsIZAc8UDqkfOdGcCBAR8XI4E9GlGVFikufRvDcBl24fF8QFjzdq8F2RbnhqCnSMItIxYC+CiPD4cIwit0gREVkiMemqPHpAxcp3dM3UEhXCFhERLguiGtAhPes7twf+ouvpsoinz63AR+86JrxWsThOAYuXfxPArd8P8MKfkEFY+NqsnI3sMtFhF+lmqPkE+L3Q05o7wC2a0FSkQH9d01DU4ry9uNEBCdcwK619UUSabZHKK0CENkoR+UybNh+oNsWlUscdc0sLfeMQOV0RabMiQn4RfA8jNoE4/wmrIUscA4DrVEz7LXpESlk8IqiI6PkryqzqwFgOj6CCdh7E3WMYTbqHYXk1DDTp8/Rd9oNtSSKC+Imf+Ak4evSoaM+98847RbrqsKC+rjmOc8iiLStZEeGbqpvRAKt+j2/sLO21fCISOD6tFIIXKC60y/MX5PewJazgiFbavda8uEjUhFWtNFOiRRLr2VkGKzFkCmQGj0g40CxsWA3/7URcsO016eLHzhleRDA3xSMictabgRdc0VmfZoyjR0TtgiIUEcwQ4Xh3pwpj1XGheojnYSKC7yvtoM5422BMEBH5vqgW3oAiomW+ECHrMINyvLvlCH/Moe1jajcTdYPnLAWlhFCJTXxdk4dduoGzkZQN1DpUxxSScCYiCemqqpsrrIioVuNGskJICyyTKDy3OzwJOmFCwvjg/4Vu8f997CH4T3/9IHzxKZl224FmDbzzT4pPV17zOwDf+jsAr3oPwOSeDgLKXio1BZvg8DRuviZcXzEsJXpEfB8AXjd5SzM44AyDsBB1MizmaoWlNUH4WFTXTHqAVmxpBtZSFZF/Wr0WvOoswOpZgGe+kO+YRWxAMFm1QIosvt6o8kiPSHy8OwJJPrbwKnVUPHhoPaDropFWmiEigjkeqOwpaIoIllpzw8a/qJBpKGmrvhp7r8GOTVZEBJGOClPcKkRkmMFthS2cH5GjhMLJkrED42gxjZLLEsEmLDIeNsUugOVIbZFS82aaIl75yPlVqLblYjQ+s0uFh33ftZ6Ubhm6IlKpKnk8zy6I45zlcQQVEVzcltkjEg40S8sSIeLScsYSy1moGPAiMn/hLJw5KTtVzlnbYv0hyiOSoogow111RgzKYyIiVBfcNVF3DnZDIamZKNuwY1xe6A81/TTJ8zAtdl5IfhgeEZH2+mKkP2SpgAu4BYe2y/cIFzD/Bk/voecJghmYAh1I+vXfa5dKY5jwqp/rOgo0PtxCIkI3ECRjWJqJgpoNo52Lsn3XyRTx3qauCY5Fl10BCYoI4u4/jo3kT8NT5+Q5eGI+ZjE/95gY1ofenP9xl/b6cDLo0gn1Je7wEV0mGrhEpkpjunqljY3oAJN3qylMovLBsisi1ZKj5og0V5dy39SZ/Ij3kt+PKIUqAxqNmr/ZiVBEcAIvYrFhQfOq18kvPvTX+Y65pXvT6HwjIiIVCTSrumDTz6j49wigiRNJgsqEqcUTkaTSDJtl8fnxuRXoOhFERNVr8qFNM40CYzMi0OTSTUSzBZah1skgLn94OFWRLU9EeFpslOM4Ce0URURJ3jnKPcFJnsSoW63ocJ7QBN6HTiyqIK5CdUa10H33VS7srtBuC3cRmqxc5gmPVkPsaHryiNBCFlREojwi8aUZniLqOsFR1mHgja9Vkrv3c+fOwoljR8TnzbFdia3S44H23eXoybusiFRmhKSKXTi46xSTZVGmJyJyVrT1yvIJKyL3rPsmWkxVRTUkQKh4pxhe9EgRmfckUbmUFBEkIqpzhm/wbkuVjhwajOXo55h2E/Rop4THIr+1FktECnguKI9IfGnGV0RKuTwiavou38Q1BS22NIOvF+7y0E/w7F2QF3ieYmQ/k8xInHlYfHjMvQQ+dv8Jv4SjiMjJiGyQ4FrB3Wxqt66RsVIlYSOiXoOW+t2w2pIE3Kmjgoaor+UjIqiiqg4UPA5dEemiNBM4pyMUEbwusc0dceqS1/nlmRwR/zJIMaQOk+phgwfNlizNdKxNEeBQs3ZpKlERSUtW5edgj4gCldaRyHRVmgE/qydtOjqrjeEwMwSuP1hKVKZ3Q0SGE9xm28pNROgkSSMiOUszvCMqkIQWIDqB0oxvLsNSyYMnFv0arUZEZmon4S++/0Z5TJoaIh+uqhaf1UY2yQ5LOEmzZgI5IlGKSNzgO9eV7bjaePMkFMak8jE/dw7mz8jHqs7SdN8YoMKxkjBfQh94h68hzphwHAfOsrUUb0pa6y5ivOSoBfZ4exbaM5dBqzghumh0fwiCPRgdEe/UQXCyJRfFS4iIoMmtwyOiEY0SlTd4Umf4+xaVupKIiK2iyHVFZE1kzyQREVY0/C6yTi9LAPTeupwjQb+PC3hsaWZsO8AN3yE/v+uPIC/QG6W/t5E485D48Jh3iZh6/OWnqYTDk6I1RSQQABbRvquuCXoNcJxAJUPXjO4RyRpmxlijUmNrfbmLVlhtto2msHZDRCy6kTftsdiSCKsiT4/dBDCxR7bwP/1v2Y9ZV4e5hM2lGVEakaWZpMm7DA6ZbNME4471gJNVPSexNMPHgYpIYEZPr2ZV8IcrtlNmgXELflx4Hk67Xh9yw+qWV0R4cXZzEhE3hYgUuMshtyISnMERS0TYXEazCJCIqJtoxSciGLC1s9TpDwnHCGOwWxag/ClC1qy4rhldEZE3wrtPNeGPvnAYPvCZp+CD99MNYfUcLC1rF39rHSza6XsRzD6M8oQsmawuXoDmgty1bt/rm0WjgMZSXxGJyhHxB96J15BUCfSCKJMq7ZBPukREyrbY7eFjo0Jy/Dv+Hj7/yn+EVajCTKhtr0iTj50wETknW1QxnRVv6jJzgUozat7MeofiUGQi6dh+fLxWmik0iYjAdKxHxHHl7t3G7g7NIxJXmuHn13fuojQTE0fPsOjrHi+WWikgtjSDxPl5PyA/f/hjaqpxVjw7n52IPOpJ79Jf3/NsrCLCRIS9OQzd7yIUFfpbsVyVGGaoGURZnQgbYdNQs4iIJGS/xN3UVTkorIikJHlGoUDXurqxJxCRk0tNgOd8u/ziQ3+V+TlqEV0zemlGeETEnJl0RYS78prFyU5FBMuAqn23lFia4ePgrp3O6bvoEemuNOMSEXHTpqPT2mCXx2P/1mGPeTdEhOpvbKLLOxPGjZEWWfKOkssSQeYnrke3qUshbBDUb/xIIh45ueQbLfGGohERxYJDiohulstKRFDSFb8ap4hEeER++uNPwa/846PwG//yOPz658+K7hbEJ78sk1/DTF2UCVIwObNDeUSmWtKku/dAZ6KjDlwQlmMUEVyY8bh1RQQxXnKCMe9agqv4PtV/uTxzru0bXHWjKqI4Lh+z2Ap1gZx9VJldD2yrgk0BR9Wi0+kRISKAUivm9PDurkORwDZGWnTOkyLCnSuBY6LWbVsrzaAiElea4efXVYFyhtIMK4TgjAXOX7x5d+zAldRcBdh/K8C+W+Xj3ve/IA+Oz/l/b2RpxvPAO01ExJVE5BMPn5ZEOkRExA2ORy3ElGYcyxWl1BbtUPE1SZy8rXtESJ0Iqy1pWC90qYhoo+PFcdD6h6bLejO/odFpyudv6x1yITDBPrW47itdj/1T5qAtPObO0gwTAVmWCZpVE0oz9L40ncnOFl5tkCmSySylGXzOQNcMdz2CQ3OueiEitcSf42vLxpymCOA5OOwx71ueiLhKMs5nKuVkSR6EFYajTID5iAhL3jzJkxUXDLcKmGm12RCPnV4Si+cMExGtNCOJSCjhlMG+DqsJa6xipIBbhdXFrsyqWkokPhaWlugCWfUqcPXuCXjTbQfgP7zgEFxwZOt27bw0mQbmzHjYupseADS7Xc6tqLRXYLclMydKM75ZNAq4IKi231BNmMPMZgtBRQRlVWVYRZmebkxIRJAwcCYBZonIx6nDwjoltIZKM2UiIqX2aqQi8qS7XxhxGVIRCXpEeFHSEx+D7bN0PjZRYXIDpRkOL4siIiLvopyuiPix4OVcZlVbEXMuzRQTzKohNZFVkbs/lKvlM6CI0PsbwPJpsNbnBKl72joIl+8YF7vuf3rwVEdpRuRuqC6T4FpR1MhDo1FXvjN87xIVEe0aZnUiLxHhbJp2uFU7BfiaY1lXrQOawoUTtLslIi57LiKAMe+IUws1gAO3A8xcImPHn/hED6UZ9oi0O9p3kz0i1G1ELfWBjYmmKuJ1hSXaWNBxYMdakIj4ZtU8Q091uHa6IoKlciYiccboUYh53/JExOOLLqckGjWczv9m25dxMw7SY7A0y4qIGjIWzp7TAs3uekbeiLfb652lGWyT4yyEPigiHJ4W7xFpyB2lFqaFZYp3v/458Btvuhl+5Q03gjUjfSLWkuYT4VRVDDPLcOHObt8lPk7BKuyyKJcD684JGBeKiBZopnVi8I1qV7EWUkRsLUvklOYR2SaIAptROUsEY+IXSU3geHfG2KR8nKqrLQYiB0WqLE96B1Trrvi5iPZdHimACxwSgLAi4TER0F7/OSIiENEGWPSYiOhm1XhFhEuG+g0zy/TdQHdOx1CvsEckZL57zhvlOY2x4E/5Kc1peHZ+Lbk0Q2WZw94+mByfgO+4TZ6Xf3Pvsz4RwffGdQOeirAiUuSp2OJ6bfhExCuqG14kNPLOHSw6wcsCnPLMYYD5J9myL8WfNSP/hvxEpMQqX0THjD74DnESFRG8blgVydg902xqxn3eAGmKhGzf1Usz8esIrzF1e6KzVKttLpFgJyZjs1nVwq6ZGLNql6UZjxWRhFlg4n2ka7hYiS7N4Gwd3yNiFJGhBC/cGOiU6/eSSjOauaiQlKwYgfAALS7NcJdO1CLGnQGTyiMyLW+ktKuHs4+kekSymlUVEUnziBCxaHg27JyZghdq818aM1eKjzuWH4tQRLIREdEZBAB7rDnfpMvZDzEIJKtiF4xWLz1PA+92KDI3rSkiWsy7NnlX+kIkdlBpBgkNZ3CESzNj01JZEcmtTIJIDZmzd4pjO7RNIyKBrhkyz9W5dq0TEb/Nl5NPmYiseBV/NxRSRHAHx/J8EevL9DfL0kxMiaXdeTPO4hFRCiET88BskzhFhF4LlJyf+z3y73vob6AbRWRutR6cBRLyhyCRfMMt+8X98auH5+B4U7ZSi5LQ2vnACPqwR0QnDxg+1azJ521YxeRU5UCgWf72XWUOFUQkb2km1DWjlX3TujSiUGqz6jqV6hE5tUjnyA3fKT8++anodFMN+N55etkvRET89l3drJquiNTs8U5FhK81D3txCslm1VCgWqdZ1e7arOrxuZBARJZqOKKkmUhEKo5WmjEekeEEJ6DmNZWqKPaok0QjInkVEV7UeKQ4ExEOUIuaUyH+Cy1/HDgGBiFYFaEWxXhFpJVdEWkkKyJ4YxEeETXArip2mvpgp9aBF4iPV9W0mGf6eVREMkmZRLIus6RC4WGnTcSMCx24M8GbMgcF6YuPKs3YwdLMeMAj8qxSRJCI6EFF2ylLBG94C6QmhGdMTBERwd2bSjkkf8hhS7Y1H9oRKs2EbvDsacKdFteu9dIIT7llfw6+nkxmlE8jIM/Lv7uEsi7dRCawfTem3ZWVOkdTAeTzJ3tEmIgU+BzUc0Q62nfpPdDKml+rSYXi2NHD0I0ighxkYT2k8pA/BFt3kUjun6kqwvzxr58FmKD056UT4satcjfCqkXBBpfaI3H2FL8HTcqBiIWmSPodLNnbd8VzcKt7OM4/S46IpT2nZcksJZ3M5kCFFBGrmqCIUKgZEhERoLj7OQA7rpFljEf/Ibs/JKprBokIte/aVhYiIq/d9cJ4Z6lWM6oikrtm+PnlqAL/Mfxk1q4CzRBcLksgIrjWVi35/UKsRwQVER58Z0ozw4lWSDLOCDVroxUhYdNNZt0rQSWnLMfdCByOxIoLtwsraAs5YopTDRHcJspEhOc6hBURzaC2njJYKbY00+ERwdJME85ekB0OmHOA3hAdpSteIj5e7h4FWL0QVEQw3j3J4Bf6G/HYEdbk7tRAOmkstWA1wifCZsZpfh1JcRGKCBCxmz+qbrQ88I7BLbyYzspEZDakiMxMz6p+fjX4jhSRBxt7xUddEQl0zTARoVIdjhjg3bae46HioOn1REWEiUghpFZgSYQHPordFMnqwnRZW+lQEPDmwd4lXRWI9KiE4CgvSpbSTHBzgM/7D09SmzGFv2UhzDxNmQlbh2GVCPojqIjQ+/cdt1J55r4T4GmGVZlEGpFwLA4Kb+K2en+yExHdrMrqRE4iwjv6nDcYGfEeJFaZuzRCwE6hqievG5uumyjsnsK5WzItWpTKcpRnpD+kFaGI2MGIdww047WJ3pMks+qaFaGIaAPrcP/E5vFkj4js2Ik0q3ZbmrEr8ZtdwtJ6+tBWYVY1XTPDDV6c43qw43+Rh9NF3MDpMdehlNuoVFAjxVtiAVZEJOwR0TwZiB2OFgLFtVEmItivH6mI+Du7Ok3/TIOMf46QPwPTgF34/IMyZMwtTsBB7eYqjnXXPnjClTvc+uEvyS+qybsZFZHwgjcpb+RJYPd61OA79hBMeCsdishZ9ohQe3G9vJ2im/33hLtmksyqlZKtJvAuLcwFFJFH2vvFondgVi/N6LNmgoqI7hnChVLNPmJFRClSFbWzU4ZR7WbEaZiCiBfH5HwO/Lu9NSH76sAaPN8M9KmyWcyqRY+uM24xpPNcds3ElGZoh/fAs4vw9Tn5+GOt0JyeGJxYWFNTjw/MVjt9Iri4n39CKSLs8Xn1DXsEAcSk4gVnp09E9NyNCB8Hng+sYHLuQ8fmIQytZZaVzbylGZcyd7h9Niv0UhMfh98JmH8I5gQReCdBEcHzBCdVK8Mq4kYqzxz+bGS2j368avNjFfw1TssRyRrxrisiqwU2q3Z6RFKNqtpzCEVGU0SYPOB10W1pxqJrJGk6OioiiogUE8yqpmtmuMHzI7K0jEYqIlEnCSsiYnefl4j4bY14USkiEpYZ1dA7uZjcvN0LqiE6EWF0eEQ0IpIy4ZERCDMLzJrxA80QX3n0qPg4PqkdDwGVhHvkDE6oP/35jhsn3rBTof+d4kHThyiOE3FY4hZezaCGGSKIqrvSoYjgjXzVYTICsFreFWjdRfACiyWeuNIMKhhrlPuwthRURJ50D8D+2aryfXQqIvVAR0MzdJNrhmV18gwI8+/YRDwRUYtYVexQOXQtqoW3pt2M9UnQqcmqLhrq2LxNi2Ug4j3cvhsszfzFncdgDmTZbcJN8UKgatWswXHyh+Br6pNE7djwdffasGZPwmnYpn4G31MkI4hH1yYDpZkkHwcTQ+xyc5kspmUTBQLNulNEOPzPbq12b1alv4fn3Hg5FRE58I5aSKud13vU8DthWEVsv0JuItCzRddCFPBc7eiYEZ/7Hg3Rvpuza2bViuiiUx6RlFRV8cT+9F/dI+L1OmsGtEwZrYsnkohYfA1Hb6bF4DvTNTPc4MU5rgc7FuokiTer1ryScCznOh6qvRct2Q4WX5oJekSuJxuDMqgiZkMBX2FFpIB7B+qn5510Bsk7OGY7WJrhHTZPfp2Z8W/g+g35iYqcwmkf/0rg5iPIG+1WEoE3KX1ByqCI8IKwyJ0z2LFCkDK+B+XWclARIRVlqegP01uhz/V8AL6RIaFRpRmS+3Ws0w5sbXlORruvyInJT3r74do9wd2kiHj3gu27bCTkWUeds4/WQ6WZKoxPTAbKI+pYmm2o8hwilnUDnTONiJtBZ5aG6NpJMqtqX1MthnpuRaMZW5pZrjXh7x44CQuefN3GcIp0XNLkiXsA3n8TwN/+ODxLGSKoxrF/5wIZkvWyzFHnclGu43lBennmq+fLwdKMUkRKsUQESzP8HnAyZiy08pSfj9GdIsKZMVnRaNZFCS5QmmEiEjcvKMPAu0IKEVFZIlrqLey6Pmiqj/OIqNJYJxFhIpA50IzW5UAXXThVNa1jRjyHT0T0WTNc3uqlfdeia6yQSESa/jWcpIgoIpJtnd9sbOn2XSx9cMQ1pyNmhlJE4j0iWJtHx3Kuh9Uka5T6mFl7HWbVoAJxzXS7s2QRVkTCOSKWpRbLzEREuxnFBZohxi0ieJVoA+mJqVvEx7ELj0hZlF4z7JrJJGVifVlXRdAjkgJWME5wFwy2gxKwpIImzQLuzLTXkcsv8yzTI5FRREQrzdCNDFUEjnoOJ6si6lTTr68sqh3gGWunMPW+hnbi0e27pIi04ogIKyL1DoVpckKSixKlqOqZMGpQGXuktJj3cJaIPjpeTwAt2fpxJneRie6c0M28Y6iX1r77t/efFOfcxNQ2NWm2tnQOIkHmU3jyk3BiTv79WJbZFqWI0M8+aR0KEEkEGlav3DUBzzT8aP9URYSuT7fVVO9BO6MigoTAJ4T5iAhf005ORaRV70xs9uh4IyMJEoDvzyR3riV0zSC4TIalL4VdUh2FM5KIYNfdb37y8UAgXWC+VYCIhHJEcnbNqGncEYpIttKM376LZlmGKtnb5YBRPw8KtKayQTwKWD6tpnhExAReVZoxZtWhg9zlNPxApy6CxzhXIWrh7aU0g2FDAUVE3/2HZs0gLh3nyZfTwQFzWE+NK81oBjXOp0gDLggBRSQi0AyBN3X5nNFExJ7ZD8+4u2Xo1rE7AzkimXcQOunKoIjg4oN+imMukZY56WNRA++4/RlvNHRjZhXlQsFXROZtIiIaYcLMEN0rizupKEkW59AgGqvzvj+ktU+UN155fZBMcVkooIjwTS5khGzxXAp+H6lrBond9JS8OQjJWiPO9Zq2i1aKiB9qNrcaUZqJMGwGumaidtNELFA1qZSLHb+vDLYR7bt/8TU5h+ftL70c5qk8szIfQ0TWKAK+vgTeaal4oOdmB4fNBRQRSUQeasluJfaIIPDG8ZPffKUKsnMXT0iPiBWviKjZU606uDzgL60DRiMd6kaes2sGSBEphkPyUhDojKH3XpVmEnbg8YoIt70nE5EbD8jz677jmtcHu2c0ReR/fv4w/O6/PQW/9onHQl0zUaUZW8sR8TLniLBZdZ4mU4uspcUTHZN300szPtlp6Y0LRERY4e4GhUyKiF6aiVFETMT7cGNN2xEmjuvOayRiIuLlN6vy4wqPCCoiREQ4QC1yToVdgF1FLcxM/UzRHzInfrizz5wXSyXpZ1h01IIgDrjQ0YqIJY59Y260CkPYNVmGO13aCR39or+D9zJ2zYRJVwaPCJaEkBwc9Xb7qbOkjOFNSs2Z0QgOk4lzFte+AM5b2zsUEdw56V0yHZN3CW2abdFa9xURjHZ/2dU7YbISCkALzJoJJquGPUPtcBy0pojMTE9FqhNNms4bUEQ0j0iUItIRsR02qyaYt2si8tzuJCLhdlEiLseWPXj45JI4v7FcsmTJ1251XpazOqDNotkxd4/agTPJUIoIto4SEbmnJjtjuGuG8bqb9kFx2wGNiCQrIm0y+aJZ1cuqiGiPo27kORURixTHYjtfaYYJqyjN8s2UnzunWRXX0ayKyK2XyFItjqRQ+TGsiCAR8Tz42hFp5L6HghoRSAT9c6+zNFPgrpl2NkWEy7+oRsKhF0uPypd+O9i+66Eiklaa8Z8D1TAFWrdzN0Fo4N+1ExSRoFm1klCa4fZdE2g2dMAocn4TCznbd31FJKk0k18R8aeSSkXEox2s12FWlYvG7jGAH73jCnAaS9HdJHp5JoKIcGhOQKpNAGY++Gawot8yS8eDiwDuSG7eZceqMIidk2X4mnut/M/RL+dOVu0gXRkUETbKHvN2BRSRpZosg4UH3umlmTPgE5Fzlj95V4d+M4sqyyA8yjpx15fB4xkz7kF43U2dxx+cNcNEJFoRYSISTlZFIrJ9alLlXOiKRZMUEZGrwot7OdkjEpV3Icyq4Zk4MeZtRcyxLEgqQmCwo/bznzks/4bX3LhH+G1WbUmSaouUFJxARC5bfUB8PDg7plqrVdcM+nLWLoBnFeCh1v6O0oz48woW/Ptver7y1qwunEvsmlEenRYSEQ5JTCMijupSmiSzZ15FpEBEv8QZQhnB5xErovpzWzlLM3hesEckTRFBYojXPpZQvv4smcUxSwTD49YuQHPpDNx3XBKQ00s1OZemgwTHeEQwRyRqIGeCIiIG/N3xDvnFez4sQwtV+y6OUUgrzWhBcBoRYaVcz9vJC4fsAo7XkMMUYwPNNMN5BHBjt64CzUxpZuiAtU0/pKjSnWwWSUT89t3Mu3sGXWRsVmVmzUmuCrTIXbuzDD/zyqv9Fl395txBRCZjiYgbMYckCusNNI1FXOja7u5HX3wAnrOjkKKIVOBOj3ZCJ+9TMfR448ysIgU8IsmpqoyAIoJzRFp11TGzOxTvzj8vDtH1icgpNXk3uNDxDS8qQ4Rh8UJdX4T2GUlEjhQOwsuv61R0orpmuC0wbIRURIRvMGQWxtLM7umqn9CqmRqZiDQs7dxns2pE14z0B9F7r0/ftf3STFLAn8jV0a4HNa+pg4jIn/8sEZE3P18OpFsvyvelvhwzhXfVL9nc7OFr64W6ZuoBf0hr5nJR+sLXOSqG+7W3XApzNLn401+7LzibJQSXPCIeKiJM9rIYT2ndUTfynIpIgd4vEWaojSxIg6+s+esK+34iy80JqNXrME6hWjyvKA6oEt56iXwf7z1Gigc2CmxD0zDA0cfuDnRR3Xt0obN9N6ZrJp9HhCLe0ddx6UulKoIE5Iu/FfCIpBMRJ5qIEJnJ7T3UwIZwJMAdLe6E5fVsZlW8FwkYRWRISzMpbDIt7yOaiHCgWfeKSEmZVZuJpRm1A+UOkHBba4oiohzzGWOd8WYU2R6nLaA/982XgsPMO8YjgruiZ70dcBalUUyRPfZVlSOS+TVjwoAXYEqqKgPJwwWYgpZIpPREu+dTZ+UN79BYI1YROdGejSAiwePkFl7EdChDhMFdBdPrz4KzLm+o+6+6ORCO5j+37xFRowhaETvZQNIv3WBqfrItlsHUQqSVQVrUst3USwhKEVmPKM248YqIat+NJyJIhvgGII5VDfWKLs3MN4tiEN03XCZJYKMk3xd35XyyRwTPL2sRbqycEy3UqrWaFREqyyxPXxOphujlNmvaH36nkkgjyAKrO267ARZfk1lIBa0jE0oRyUdEnKok+gU8l3MYETkrxNWeTxGRiPcQfRuv/u3PK9Kuo7mmGT0zXIdcnrn3qF964fLMuafuC/zsfURWhCIS2TVDHhE0i7rYvouBZuk5IkyIRXkIVd2X/Sf5jXs+okq22bpm7MjSDCvlvRARh8L/0Jcl85s6sbq+DjbP3zGBZqOJtYZm9OmrIrLeWRPPq4jwNEd+/BhFRBERDuTJWZrhxcfN2LIXdK87wQuSjxEfiwOWosgPERGUY++mPBG+gWGbWeYAICZdqIakpKoyxgWxsGB1XJoUYf4IPEgS8dURnUesiBxubgcY3yV2bqebY9pj+dBvaHGlmeKYPObLatKYd8zdCa987hWRPyvNqsFhdnGeIXVDYXMz5YjUC1URrBaliLAvKJB3oTwiqzAfMquKzpEIs2o5xazqxZQq/aFeoR047dqQPH338w8qr027IgmJh23PCaWZJvlwXj52OFAyw7ZqkX5JrbsXJq6m78ff/Kd3y66aSyytHJSgiGBpRpGxDBO9rQ5FJJ+UXyxP+GW3PB0RfD5pf4sauBnh8/nre5+Fx04vK/9G4KHQ7ySUteAU3zjceoiIyLEFGfWutfC2yWR87Z7JgGoSMKvaMYpIyxUljGw5IpoigrjsGwEueZF87+76I/n3ZFFEsMSIk9EFCaXrxW2r7ruSFvzXbddMCUMiYxSR5rru80owq5qumeHFWl1TRPISEfZEUOR1fKBZoSePCNcrVYAaIxx2k6k0E0FEiukxwmGzamyfPr+GuMjxNNC40syUPP4vNOTNgJGvNDOTaequDpULUiET79xheOBZ+dpdEqGI8M8vtGyAn7wb4Ee/qObyjIUUEf2GFpUhgiiNycee8eTijePnX34teVZCEO275L1QvgMu0YRuhv6ALPo5ev0x8ApVHc4jcTVptk2fB4mIr4gk5YgEFBFb94h03sSatdXI0oyviNQj5z/h9fOtN+/3v16VRKRQiyAieEMjInJs58vEx+fbj2nGYfljc/g3kSJyonxFYGBhFAqkiByyNINshNLh0rWARFEpClmMivRYqrSR0yNSKTvimhHIka7qn0eaIpKwuZojNQkjxTsei4hIjVNKU3Dj/mlwCpZQV9Rgwt2SiEwvPyU+/tBLZanmoZNLggDjv6TSDOeIoIqcqWuG2ncVEcET5I7/FHgdhVk1Q+utIqFMRDQip0YadAPH74zsCP0jNIl8ot8pQNDizKpm6N3wYU33iOR0N3NbVtRFywupyBHpyazq+UQkHI7EC1ZaaQZrr2iIQ5IQIZuqce6tur87SQAycz9COUGlUYpI9OKEN228xr/KnTME7HfPTN52EInZc0O2n9dzQcryBuPNHYYHT8iFdF+53qGIYMy6OK56W762pXFhckaEyym6IhJOVWVUJoMBb41tV3d4TfTSgOq84PJFO6Y0wzcUXgSJiHjFCUGmWBFpaAm6HhERXZ5XpZmICbyyNNNJRLDdlb0G4iYcOo+4BBS+HhSZ0nfg+Lu0WDYLFVFWYtjjslupVNckfXVwi0o9vHdMzjK6tvGwMp5uI8/O3OKyinY/Yl+aqogAzZu5pqSVgyLKJ0qhajdVu6W6tpIQfqy8RMSxfSKSYwIvK2s6EVHjJdxGYM4Qrgt8LixGERHK4OCMnNRjLtrwnH1TQZ8IKSKXe8cAL4fX3rRXeK5wLo3ssEnumkEVRLTvBkoz6TkiwqzKuOxlAJe8UP0X1Ug96TgO3MGm8le087mU5RxInc7ciPWItMjn5TkyGTk2R4QDzYxHZPiwHijNVLsyEvFwOh3tei8eETartqWMTFN449WHlNIMTuL99x8BeNNHIhkzt4jh36F2B6mKSCuDIrKcWDPGmwO2VR7x9kCz6oeFiYj3rK/ZNa8B+JHPA7zyl7P9vGYwPV+SN5jamaeFZI+7+pnCWqciQqUZDCnjCOdVVkRCpRl9Zx2eM8MYmwq+P7uvkMFucWDFSikd3EUVVkRUOzkNcSQi6JXGAzkC9bWVDsLc1ksIgWTVZoCcBsLswhK8rhKEpH1eLOtWOSh1qyRPTRFp1cGimT7VsclAGFRxUp4nleZCfMdMaRK+7D5HDBfcVj8BsHQqQBKbx+6W11RlGo42ZxM9IgJTkrDePDHv734LnTcnlzwieDNiIsJll0SE1ZWcZlUk7WhIFsgzb0aVj0qd5kjLD+XjgDGeoxKeP6SnkjacbIoI4pawT2TbFYLMojL0ij0NsQbcclBeK/cdW6Chd/GlGUczq+ZJVg2sebpXJKtZVagRVJpptTpUwXKle48I8BgPK1oRwWuTVc0kRV+YVVXXzFouU/NmYUsnq6LEzkPj8i4AtjacLgxXxZXnT1bVzaq4GFgs93Us/NpuEqOFmYiESzOI614PcM2ro5+ObnT4OiDJyBVopntEcioiiJ3CRGjB3M7nqa9lHnrHC8fem3OpWUwsTjuSiLQvSB/BdXsnwebZM5qqpPtV8HzBiz9eESmnds1MTFGqK+Gam/y/PQoFMrux3O8bIcMKGRsNqR2dkjYLZXkz51k0DSqT6ETEDRARP0cEd6M8bTmpNCMeS9/Zh8p8LcoraVjlmFkaGnHRpOPJyeC5U56WRGSsvRRvVB3fAU8tFuBRj8YbHPtyoKNp5wO/J79+7evEpOSwyThOERlfPREoyYbBXW2YqMkeC37vEhF+vJxmVTw//dJMdo9IlKGWNyW49ujmSC7LxCkiBVJE2JuTBbpPRMB24HRJvmffvP186GfmxY3Y3wAlJatmM6uq9t2w0nD5HQAHX6DGI+QpzSiPCLf/ejaMxaidmeBoHhFdudHWoxKPbUgYUYLrqVJEkOQPYcy7ISKqNJNPEeHpo1GKiEsmwKZVTo8ITijNYDiPaqXr8Ijo6gMuBBFD7zJAX3xWG52kKoxAC2eSIsKLYoxHRPeJnJi8pTtFpAvwwnDSkr6SyuqzIgzppgMzfnlLU5VQKeHFCIkaT/iUj2XHtu/Gm1X9nAUXLKjuCZamwhBTcbWShzofwqW6UMeDTV1LFr3+WOYQH/U0VZV3od0wqf1yisyTegsvRsKXI8yq4nn0/4eICJti+Rj8Yw6VF8UPUUuxZ8PsZFDqH5+WXppJdym+dXd8Bzw7vwZ3ubIjBo5+RZHEm62nYM+Zz8tS5Ut/VgWcZVFElIIQY8bk0gwqVjbdHDKFWYV3sk4XpRk1xDF7aYYJqx7VzyQr3C6qE5Gl9c41otCQz9vKQ0SohffRU0tqA/RIU77Wt5ROyo9hRcTqnyLCZtUOpQE3N9/+QXjk4Jvh/7ZfBsUMG0kev8FqJZ8r4QnduWHz+4ETqt3IMLMqKfq8TsS372oEdwh9IluciLS6Nqs6XNLQ566EdpotuwujUqhrxqLSjBXXvovfX5/z/4a8SX5aNDubMFPbd+MCg3hRwxOduycSFBGu/z9WudF//G5C4HJggsjDKZw3UygKIrkH5mT0dIThFzs2WBVBoraKXhHCWOg49cFpce27es7COnbupAxb5PY/y5NlOpXk2yHp01wK/H6rrpQ6p0pJrkQCWJ2Q/4kgIlSawVlBGL+vsjeEMa5zPgmjKMLXOF01SERces7wNFr2JOAOUpWANKNqWKmY2L5LDb7jayxcmmlVtwvypMLyjkkigjHvP+V8TH7tpu8SU1858j1REQkH5cUpFtrsKYfIop1lonfYE5JTEcFrZaULs6pS2LT3nklJ+Mane4WiFBG7KYmIS+MLsmD/jGwrl8FmC3B2uQb31ORrfaAl22dvOjgjfGQnFtbF3Jk0jwiWj0SyaoZAM/ahRXovtl0OX77650WIYTGLIsIeES6jEyHBrptuB94FJ6xHKyI48I7vX8lEBLdaBaixodwQkeHCer0BJT5p8xKRUgIRUSbALuqDPJUUiYjr+WbYuNIMYuVcfFkm4/NhXTgTEWkkTLfkm6OWcJlYmiEi8nj7AKzc/Db4YOv14jHQP7JR4B3KStMDb0YGZR0qnIGbYxQRxDj9Du7cuCyDF3dY7ZqqOqJcg5sqDGyLhOaZGdtPMzYS4OhEpVXzWytD50Oh6BsNdYm+SDkT7ANh4yjCYrKoL2JkVsVcigmoiYh19fR63kfoBhqcNxMiItwmHLoe+CZY9HwPgj6Fmc8PxuzsDjX4bn0xNG+GzrkVW753j5fJwIytuuvzcJ37FLzcvk+2Wn7jz4lvZVJE8PVHn1WKYqGSj9sNsL0cYVY9KiJSdq8EsmOyoEBkiTtl9OfuVER88hHlEXGa8nndjFk+frCZX57BOPfHPdlSX7rwuPiI19LVu+Vj3nlkLrlrxsL23bZo3/XN9OmKCJ53Uaml7JHJ5xEJlmZQEQlnDXVnVm1GEpFAqmqCx5Hj7IfZsLqlFZHAxNmcSkKRSjO4iHY+MEVn5yQ3+gKPEniz2VZEJCB9I/THplHyHUbVvIoI3WSTgC7zVCLC9Xo85oSFlW/WZ1cacPrFvwK/3npzfk9NTvDCgMrG2oRc+K50zsGVO8djW6A5SwRJCJO18QjJFRfXD3zvrfDb3/XcjpuoAr4e9N5ZPGMjAYGbGRo5Vaku7Leo+jcYkuhxBzRGZjk+F12diLCxVV/E8Dqgx56C1UDoVGAwYkiRkemqTiQR8Si1tx1SCLmrBIOqVE6ClsIaViqwg2mBBt8tXTgTWZqZpyTUsW17hQFSlCyP3QkvOfnH4ut3TrxcqCF48xGtvGldM+KFOJCqWKiuNlREFBHJoIjEeH2yoqyZVVvrESWrCGBHDKs2gc4etSkJmiPnUzwixRa36ifHu4dx6yE/YfWuZ+bhCZdeZ+xqIlWBfSJYhohWRPwbfbstVWQ7R/suAr1QYaCyIv62LKUZJkZu0KyK1wN33fVqVq1HHCOOpsgSyMkKs9/CO3wx71ubiASmj+YroxTLvnIRhsVx6TkfM3yRtTGlkYhIwQlJ/YIEWEEi0o0i0kVpJnIct3gsOtFXL6SqIQi+WZ9brivGnznMrEuM08KAZZbTBSkF3zq5AHZrzV9IQoSOvSDY7o0dBOJxYkxoOLzu257rZ19EghfsDEQEFzKV0dFcV8RUlTUIfEMR/gSS6Fegqo7TIzVCueyFoZWISPiGqWLe1wNTUlsNClPDZSO0yOPCXo8LNaPn5GNQzx8lPasMnkpHvgcSvaWCPLbVhRARIfJ7zp1QM2bgELVi3vlBOHDu80JN+bPyd6lyA1aDUL3CycmJIMNqoqmdrgW8XotMRLJkSHQoIjmJiFMQ6bmIFsX6Z5s63uo03wY8IppZdS3ZI1Jqyef1UuLdw2BFBNNT73pmDk7ADmhi4jGe4xeeCvwMIrJrhtQI7lrJroj4t74otYE75LKUZlgN8zrMqk5H+bZbs2o9sjSDHpHkeHf9b/VDzYwiMlTgRVlkIES05CWBE/Mw9rkVqjPyAu8lnByx0JQPnORZYMUlrIjgCsqLCM1pyWtU1U92JCJpZtVUM1hYEUkwquoekbM6EdlAfwiCb8yYC/Jkc6efEcFqCJ4LofeNyzn4O+grkl/r4Th3XStfu4NyqFoSwvNmlKQeumFZ+qROKm/gTpk7ezzaMeneCjZVdtSXtcF3GH+/SIZVTt/tmHvEpRkmTOFkTu7OCd10A54E3oErj0iJuqqC4MF360vnIxWRk81JNVxNJGUiDn9WfPi4+xJ4uLY9UJbB7qZUQ7lOROJyPpiItBtQIgN7qdyNRyRfaQbJWa1A7y2HCKZAJOSSSd/WFTdWY4VHpB2piGCgWThvqNKmDq1qPkXkhv3TIkL9/EqDsnws8HZqk3hFm6+/KUgqzSBaQhHxhPk8/L0wHM2EHqU25CnNqOdRHhHdrNpLaaakro+o9l3dI5Kk6GPXHF6fqjRjPCLDBTUKO21cdwSK2gXcaAYX3sjae1ZoCxFGX/MI6Mi2QUVEeijN8Mlu+WWHOHArZ+yOQykifqZDElRpZrmmHnsjjaoIXhhQ2bh3Rb5e+9zTQX9IKBiIfwdJSFzrbi68+f8A/NR9wdTbGKBCpOLZWzXpAQnX9vVcG600g1KsOk6nk4g47fVoUyUpIldOyfeEp6G2eaBexM0yMG8mVJrh68ENK4TaQqtufGpOUymyvFWjwXetpbBHRKpwz9TkcxzQFRFKnvwfrW9TBIRNuPrE5NTOmSTFgkszLpYQWBEZ23BFBNG0xwKDDjMpIjQ3h2PEExURjYjgDTp84666kojYNEcpK/Bav37fdMDAWtrH3h5JRHDWEIcDRs+a8a9D9Ghg+64iLJpakpyu2o4tzWTpeuxURNis6vTYvltOHHonFJGMs9Kw5K06Z/KMAtgkbOnSDLcVhndqWaDPEKjXglK0TQt8V0SkgF3wlhpMxYpIR2lGPFFYEemmNOPniKQREWzfDCwIPSoifKNBts/DtDaaiPCNGXd2X7ogidLU+vH4iHytnIOvD3fN9LTAYNQ+GWUzKSIqPr3uE9MOIiLPNeFPoIUGuylYAVJtwDoRIUXEDu/cSVm7gSJPsH1Sj2KPVEQSPCKqVBm+HhQJxtKMvLm1OA4+omtGH3zXXolWRJ5elc9xcFsVYPYyFf/fvP5N8Iy3F5brkvRwhkiiUbUbRcRtQlkpIt3kiJS6JiKZFZGmq00dL0UTQ90jEkrYDftEqh4REZqjlAfcxou4/dJZlbAKZx9Vig+rIn5pphRNRNpIRLLNmtHXmii1gUszpbShd/rzMBFp9UsRKSu/YC1CrcY1rMKlmRQbgIh510PNhgxbmoh4MbXrLNBNhE19VobbVrvWpLpd4hAlnuTZRAd+tCcgUhHpqjTjLz5pZlVWLap8bcUpIjyULMUjgrv9SbpRHr2wtimlGSYQeEN6qrXTz0GYOxyrKrFvRRARWhC4DXijITwimveCzwcOomPYyjyNpRmavOtVYaJCRIRUD6XW4c8yEQm3EFNp5sppNxDDjaXCyHEDShFhw2aQiBSIiIgYah1aaYZLc6urZLSFcmRMvkuD71TLuviiC7AmFZFHl8q+IoLK1kt+GmDfLVB8xS8oKR53+EoRSWrdzeERseg6QpWpQNNQy5UsiohuFi1lHt6oo0nR6pymmwY0BvtR/REeESs+RyRq3sw4EREe6JgHugfk9ku3+b4pKs3oPxOZ6FzA/i56zdoyjdpXbLtXRLiLq7vSTKNP7bvlaKO4pohUMuZgySwRuj6NR2S4wIPEupFD8eTjqZeBfAW9Bp9Fmo1Am5P6sDSjFJGk0szZHrpmdI9IiiJCO4eqQzXiuEF8dFNIU0R0VeTYnCQiuYcE5gQnqyLwxjlXoG3/yfsSFBG9NBMd775RCHpEaipAj5N9GdyhUcSFiUozq1BWClCByIYiBZ6nmSrHIkszl47Lv/X+4wui04JHx3OcvI6SYwtznjzOIBGxuTsnXALSMnP43FojIoKeFj3eneGNSSJi17R5M6hm0bTTo1SaQZlf4AU/BvDDnwVr9pAKnMPyDJdoMF8kV2kmRrGw+G8hv0TXRKQLtJyxXJI7qh3sEQk+f3RpRg+1i1JExj15ThVpoGMecFcM4nm6IjL/jPp7fEUkojSjlUbablNO382QI4IoR8W8hxQRpwsiwtOkhVm1F0XE8d8bLouGPSJVqGckIliaMV0zQwkerd5VCcXC2Gx5AjbrGlvVpe+84WKhuRW48DMRsRNLMz10zSg5tilm72RTRGJ2HHZI+kvxiOhEBAOLNqNrJkwgVjFUTCcikYqIXprpg0ekH0QkdG4FWkVJkRKKCB0nqx4FIgW44ysTESlWQsPKqPthZ7EmdnS483r63Io/QyPKIyJKM9EeEduVz1kIK4TajY8VkfqaJCJWjJrIg++K+uA7Ksu0S9NCDkfCEdXVxOrHBVREVvMoInszKCLyby9RtD6iXMliVu2diOCEZUSB8jwymVW5vBromtE9O/Iaxxs7l2b2TFU6skRarRZMgFzzyuP515990xV4+4svgzc//xK4etekSMaFcQyu8wDOyenJzz04I4SiyNKM5gVBj4acvptuVtUVkcSumSylGSZGREQapF40ek5WLalPW7GKSEaPiF6aMYrIcMEiRSQplS4JuOghGnrQk2a2K5dS2gJjwJNMZSYB33iiFBE2yDV7V0SsdEWEo5jLBS9m+m6l0wuRgl20uPmKyMYSESwh4E2TYW27zA++yqKI9KNrJgeQCNQ836zKGRVcimE4uh+BFCmMy2ciwqqHQ0QE5Xke+FgM79ypxFdoLMFNmDhL5RmcoxKZaUN5FoowhUoz/JysyiTd+OrrPCMn+twpTu6Qh9iiuUDiD5V+kVpp1u+YiQAbU7Esg50amT0iGNTFrakxOR8Wk6o2DfjzimrHnYgIs2hecKIpx/qnAV9rNWMrQIT8SAJuF0X1g5tkDm0f61BE1leXVCkqPFk6C9AD8q7XXw/vfeONvgKmyjPSJzJZKcKrrt8Dk/xWhQiGbxaVgWZZPSJKEWkm5IjkUEQ4BZs3pnh/6EnhtfwyfZQigoSQI95TPSKONm/GeESGByg1q0CnLpWLFhGRdr2zNCMG3nV5EuqKiMOlGUrOTLzxd+UR8Xel3Joah1qHIhJjVmVkKc3QjvTM0uaYVcMzYqb2XR1sOU3ziKTkiPQb+Nx6NwqfD2FFpKR5lly6MQeICKke3LKLxmPeTQXSW7XSDE5VVYPHji6oKbnsh8hqVmVTbCFcAtI6tvjcapJZ1YkhIhWaNzMeICJSEVmmVNVD26N/l0mHLM1w10zGmz/7RGIC+tjDVXWJiEBR3GRTEWEWzQucsCx+HbNwMgBfa+URiVJEtAAt9odMVRz1+ulZIvWVeTUbKFMpKgt2PyfQOYP4/e+7DV77nB3RJWFFRGSgWX6PSG/tu1ZIEWEigqbuTOdAAlzyY3WMNCBFpJxVESlpE3hN18zwAMsMqAJkngkRgRaVZlo6W6UaPLr+uzUqqQFa6BEhdh/2BMgvhr62wYFmXJpRikjH9N2wIpJORHjwHWOjzaqIcZJLMTBrcu9VwW9GKSJ0M0d/CKtGutdk40szviIiPCDinhFKNi363TUutbJiaYaPvUQ3iSKVScT5HzenggPX6ktaDPe86gqIIiIy0CxiiB16Ueg5OwK+9NIMGQbbNJemWI0mE+Oz0mA85WkpotSldcGTpcDLdsQQkXG9NMOTd0v5iEiMIsJdbVWPhvbRZmIzFBG+zhwsC2UY8S4VkXiPCH6Pb85clsFyF5uHdUWkuSoJ4QqMgZUziykW3Na+JCceM9S4i/C6R4QDu2baXXXNRLXv5ijN0HpdYCJCnsF2hKk7L9r0nkR7RLB9Nz3QjNt3jSIyhFjTdoSFLkszOIe2g4gQc0U5PZM0mzBECU8+Nmg5kaWZ0Ne6yhHxOxcwsCtLaaaSWRHJ4BGZGAARIUXkxv3TYG2/PFVV4jLMerO1+YoIDpNjRaSJiSIxioggAk6AiNQLFfF1RLEib1YljxSRpqtKMx1hSJoiwkbBJ8+uqOcOh6nx80eaVXEaLe1QO8otWmmGzaoe7dbKNCMnjKnZPWrwHc+w4dLMqdaEyp5IVkTq2pyZjDf/6f2JigiTs3HySzT5PUuDflPNGe/O8IiIiCCvDCPeAx4R/fkjcitYEZkdL8FUpdjRNdNYlYrIqpVehs2Mse2dnVF6e2x43dGGzjUzTt9NU0TydM1YvCEjIsIzmaLa3PPCo/eHjeIds2ZoM502oiQwgdeUZoYHeFP1JxdWelNEAl0zaz1PkWU5LkBEQjtg+cVy30ozqA6tNVNKM7Q4lQspgWY9KCIb3TWDYAPZTTjoDrMmUsgc/7yYT0NkbbOISCBHRBvzHs6owCFeTFisdUlEWo7/+lfGxgNEBBURFYYUri/zeVRbFFkel2yTuy0/BCu6NBPpEeEMkahyCy2ysmsmOGumOh5NYqe1wXfL82cDRORYTT7+pbGKiHy+k4vrKqo/k0cEce3r5STey78p8tsF+lu4Zt+0Sl0oIt3toG39dc0guwdzRMqJOSKcqrptrARTEYpIa00qImtWn8oyCB4yyDEAYSISKs1YtA4VvLaYG8PENzsRafelNGNR2ZTVC69LYhlFRDoGSbqeOIfzdM0Ys+oQAm+6/sXYHRFh6Y3btQKKSA8eEWbSqLQ41IoWqYjoJzo6xzPc+BM9IhkVEZ+IxLTvMnK07zI2wyNy1S55XN949U6cjhYkcBGlGaWINNJnzWxo10zdL0cUQ0REn35r007SpW4KXWEQ5RjPEzf+2HhorTQT1T4Z1Uoem6xK10Pbs6AcJtN6uygREQ4/G48hIliCWqTBd8tzpwMekWN1eTO8LNYjIp/viTMrijxxjk0qrv4WgJ99DODKl0d+2w55uFqZiUhnaSQv0BS/qur/yxk9IhFEJCJZlefMCEUkgoi0KZF4vdBPRWRbNBGJK82QIoHeEPzbfCJidx1oxqUZJ0NppkDPz6UZ3pgq70gP8Oic8EKlmZVGS1ThskzfVV0zqn3XBJoNDXB360vTXZZmSBEJ1O+06aE8fjkvPDqBMUBKSfFR7bv6IhIRTZ7XI5I2a4Z3rSUr5kLvRhGhmHfGRrfvIn71jTfCF37+m+A2zjDQVZFIRYSm7zYwBp+IyGZ1zegR77XFyBEDSpEg5YTn0bCJUTwOKSLCyNeWrdqxjnutNINgn4if4xAdaBZpVtUUwo5JpJo5skY3Po6dn5iMn1vCg+/WFs4FFJEL3pT0MsQMsWP1A4cs8v97NRMywl1traz+gAizaF5gOZMH30GGdFV96F1U+7BteSqkUSkimkdEb9911ymAjkLV+lqawe4v3fOSUppBbwhen7x560egmd5hl1UR4ZlM3b6fAShFpNbhD0GoazhToJkxqw51aaZ7RaQYoYisqWTIbm+qrIhgXbCYUJcPLGLdGFVDu9KsZtUSKyIdgWal3B6RmWoxYAjrlrzlAcqtB6ncIMAtvOIA4ksz+PqsbHppxveIuEQMsDRRKhY72mdVjkcEEdRLHY3aKjTrmpegwyNCrwG2g7Zbioj4N6+YZFVuM9ZLM1Qvl11k4dwZvRQgZfUSddhMJhCRVUcqWDWeN8NmVZiKNapGzZXJXJbJgPBGoZV1fpW+9nSpiKDyuuLR44TTVU89AHDszggiEq+I6JurudWmGg6InTOIRa1rxqtLcly3u1Bj41Dd5p9H+u49pTSDJBvX9eylmfRAszweER7Hoe4HfSjNAJ0fOEwxHGaGGMtKRNCsaiLehw/InHslItxm2w7kiPTevusblHCPGTH6mqGf6N34Q/RR01Yb1hudkzV1rDfckCKS5hFJ3yVhdoA+U2QzFJEOZFRE1gKKyGaZVX2PSGtNyuBIONiEGunRIFhaaWysUhHlEcT62rIgIwphx71OIOtLcO3eSXEu+y2fOdp36XqoR10PoemiGDLGY80nJuKJSJ2ISJMn8FJpBhWRRCISMqZmbt3tQhHJ3DERMIt2R4wCsrvuEcH34cOvA/jI6wP+IlQAuGMwzizrUnnB75op+oqInqxK5Lih+ZF6Bq4bfFx6eSamNGOR8lGwXLFZymxWLaYHmmUrzZAS6bXF+slllMixHDlh8WOEsnlYEcnavouNE6prxgSaDQ9k+2I2x3Fam22URwR7trve3fPjaqWZDj9GVGmmG2gXCw5Ui9odhBWRopXRI5LRs7JL84lshlm1A6yIxPhsmIjgzZJVI+682Wjg68GtoO46LfrgdBARlJkVESDYVZ9QFB1fml1fX4MWKSJtHDcVJrn4fyYntUWxK7xp/0xqaSbaI8IBfxHmbc2TgEbo88sNv5MtnG2ioVGWCk0bpXu3rW5WcylEBMtpLMf3XRHpICKbqYhgaYYeRyMccO5x6fPBm9gy+WnoPPYVEf35HfBo/FibSgHc5oyKSBQRschH1OwnEcFymV6e6SjNhHNE5HmFBARLKpnbdxMVkexdM9y6zc/P94PwhOxuYNE1ElZE5Hvg+WbVDB4Rv2vGTN8dTo9IypuYVkLBvA8FunBWoNp1+y4v9JhkmbT496U0oy1EyK7ZkBoFNhSiepLJI5LBrBo2rG6GWTVWEYnx2USVYTarNIMeBpduah4t+kIRCS2Q+HNN9pIQnEqwNNYgA2VjbRmaNUkQmlbMYsmGVfKloGGVu2aizkVJhCKICN3QIhXCUNcMTmAey9AF4JJ0b+G1JkiIvGnMwWQiEcHXSC/PRE337RbhnB83azhZHwLN8JpZ8aqdpZkzD/mfk2qk2ndj1C0+bi/CI8JmVRwYiXkdamAkvs3F9DJsV+UZvYVXlWbiPSLiT8oaaEbnY3SyavYcEVZEJBFxVQKx3W0ujAaeso1ERFerZZiZpkyZrplRLs1E1El7JSK4C8Fx5N6+rjMx2KxaaNVUfHJ0aabUe2lGXMTyYitDS+2AsikiaaWZbIvTTs2wuhk5Ih04+HzZlvn8H478Nt5kdX5iF6zAznqj4dH5WaDdLkZHR5ksW6EQLacaLG/UaUdUW1+FNsmzsV4Gnq+yeFx8eOEV2+NnfYRzRNrRZlWuyUcnq7pwbrkGYzzWPKmspwbfzSl/yAJMALoDLo3pmIkqz2QOM8uAcFeb140i0nVpRgur0kszp3Uicj66fTekwqgkT1rTAkSEckR0j4LdlOek203HXt7OmdhAM98jIr6dM0eEYwl0NHIpIjR5GXD6LyZ2cz5VHxSRIpXOQc7R0V9/ZS0QB5oj4h1fRyZ1Q4IB6ODDAdz5Z62vxYF3D64um9Ggpifc/V2XGXiWRxU070kUEdEXsW5LM3hD0+bNfP4Jf+cUR0RifSsB41ulc+eSqTQzACKCx/2WjwPc8Y7Ib+NNf1zzhGCppl/dFlng0ftjN5cSw7L07AqM3K5Wg+d1k26O6A9pU2kmlohsu0J+vPC0+PCyq3fCq66dTRh6pyfA+kTEI8KDPpcO/09IEZlb1NJSE65JGwejicF3C2qnf96licE7kvMs9HJMPz0i4ZwfN+vmpg+BZlVdEdG7Zs486H9OhA3RaLagyKpm6DjZn4YDQdE8jOoHExEkm7xR4Jj3Ig3ac0vxnp6+EZHY0kxQEclqVuW1JkoRyWNW5fZdfP6mi11ppIhEjeXICVsjIjphWtIH3uHfmdIqjH8rNlAoDFnM+5YlImtaxHu3ZlU/bIZOCNyx0g7yCe9A9zdVelxMjwx/re+lGfE4/gTef32UJvlGgMs2ahFLUkRy7JD00sxAFJEM0G+imzV5V4FKhzw8rhkTH64bJLGdM3yczYJ8f5rrq+DSQtS2Y8797URE5iQRQeJ1aNrJ3b7bqicE/IVyK5aWNSKSUC4tTsmY92rLJyLYMbN3upI67RRvqOpP7KMiUiyFsy02UxHRPCKcI4IyfkARuRA9yTWGiOCatkBGVZxFx2pIOOa92FoOlvIGWJphRSR/smpvEe/cvouKIRKYAhGRcIt9Nyioa8QPmfMH3mWLd1deM/HKFIYyS2TrEpF6710zwAs/KyJUljnjzcASTHRNRNigpOrl4rlSSjPdKiIIVkSgCXcemYPFtWjZjt3lTmxpppzbHxJWRAbSNZMBem7IZk3eZYRbt8MlGPX1ABHxB97535eP06yvgUudXjzLIl4ROdx5I3BSzKpaaaZFs2OERyRczqLzF0uCeG6tEBERE0cT1LQqEZGJ9qK6wWLHTFpZJuwL6adHpCNwMKsi0odAM0lEqsGdLppT9Zu45hEJxIWHn5P/3677YWZjJUFG0Ig/VXUCWSIlnG+DBIazZwZSmrGDikhczlFc+26kIpJ/+i7ml4ipvXScdh+IiMVExGoGunvQ2O0nI6c/j9zgWVBThNUQkaEAdj/02jUDnB3AigiNrX7CPdDb7p4W+jGLbhbIF6MGSuknYLceEW3xuWJbUZjQPvsERWeHwAPfHC+LIpLdvBYwq25Cjkg30MO4NsuoyiiEzs84IsK5NohVrwITlPugfo/UDxwsx9M83YyKiHyAekJpJtqsiqQH0YAyOOFFXSvNoBF6lYlIinl8fFZO4J30loOtuzvTicj2DVJEOolIxjUFb5Z8HXXpVcPdrkpW5dKMblQNlWZcfR5NSNL3mGS26oE5M/CPPwPw65fCdcUzAUWk0pZExOo7EcnTNcOKSN7STLQigqZQUWLJ2L4LIbOqTYGCxaixHF0HTrYCx/nY6SUtGTndWsCNE0s8E6gmowCGBVtXEdEjrrvsmlGKCJ147A950pNEpFtDI8+tGKfSTCtugJa+M+2pNCNP9hcdkirGpx7pLM8cPrcCT51dEZaSqhNjoNWMr1kyRBi7prTOnUG07+ZURMY3KUOEEZ6FxIm+Yegto6iIhAkTkw7RustEJO7c30bDAJdP+btsVv5iSjM46FFg8QTAkS/IXyEvCvtTos5fNGQ3mw1YW5M3US9Fap7atkddHy4+l+iYmYoddhf4szQion/eK8Jx3pEBhHFg0tJD14yviBAROf1g8DE1s6pLHTFCDQt5nSzalKDhcp7CzHDODDzzRdEB9YL2vX77qOdBxZXP54z1sBHqV9eMFSrNYDt+F4FmuBnjBpUsyarh9mGeElzqgyICiog0VBQ9kp0nz6zkSgZn0rUAU50EbwgwnKv+ZiWrxk0fzRk2o3q8WRHxDoiFGcO6enlc7hHn4Xod0GXVnkoz8nGed1Au5J97/Jwwqun4yJefER+/+ZpdUI2bvqsZX/OUZvZOVeAV1+2Cb3vuvsGYVTNALxltVoYIwy5VM80x8fTSDCoiYSJC742Lsiy11bIRNlIa5+Fjc0dSiQiS7oe8S+ER71KZU/Cn3wrw2V8Hr7Yc8KcE/zAtQKtZE0FrCCtlYZ2a2a4G37XPSvJ/PmdpZrLidHbx9ILwa5JnTeHfdXoxq4ZyRFgRueQFHUSEO2L086Ujt8JtaHNmikp5urr9pK+INNf8ycrV6SHommFFJF+gWZiI6N0p2UozrIi4UhHxiIiE5kF1BVvziJAi8vS5FTGUb7bYzkFE5Ll+wZvsOB+GAVuWiKz2wSOiZgzwBaI6Zg501sNzgNvBxrk0E0dEAmbVHhYCepwrZhyxUKNT/s4jPmPGevBf3fOs+PxtL75MhkiJA7XjjymHWRUJ2x99//Pg/d99CwwrxgdYmgkTkbjUzqAi0mlW9Uj9QGneUvMwEs79baHyTIoi0gIH/n3z3QA3fw/OZAf47K/CzCP/S/5qVAlIe5xmowEu+UkK4Sm94V+zC7BoyQW1cOFJP8wsQ2nmcvqZK3b2ud00pIiEy2kbrYhwsqrH6hUbVS+/o6M0gx0x4qMdT0TQcDm3It/vHWMFgPV58fml9cd9jwilqmJibymUWdO/0gwREZQo+PyLCTRjUuTniGQLNAsnq3JZJn9ppgUt1wOHFZFyP0ozJb9rhhSRR07K1/3K2UJmRV8REZfOe6OIDGGyardEhG+6KBli8NOSlImf8rB11+7ZKc1m1WxEZKZn1o3D0lCZQPyrVp75y7uOC3/I1bsn4MVXbo+v1Ypjyq+IjAJ0g2paZ0a/4ZSrkYm+Yeg3liizqlqwGms+EUnaTW0PtvAmmlVp57jilqH9bb8H8IYPCjc/D+CLJiIOeBYtpu26Mt/ZGcp6yzT4zm4sqdLMwdn07oFD28fh737ixfCHb7kN+grLghbYXRKR3hQRMWuGSjMeKiJYdiOC5hMRbYBcK35MPaeB4g789JI8R/YVfU/J9vpxmIJVqYhQwB4+91i590mzAbAax6UZ3vzEloSjFBG7O0VE+38xypsXhmofdkW3jU1hceXQdduTImL5iggTkcum7eyKCG2Mz7mTHcR0GLClu2ayTi5MK6GImiB1zDTG9sASjPfU/VGggWbcviu6CKLQj1kz+gLYqsMrrtutfCJo2sJ66Ue+Issyb33RZTI/g8ZdR+44lCLS5x3SgDGmlWMmNrk0k52IlBNLMxYrKxiUR63AYf9JpE+EFZEks6qmAIqy3nO/B+CHPgMr01eJr50r7ot+DjrmsoUKJY1PDylAUVizg+d7cXp3R+x9HG46MNMx9bkfwKC5OBUrmyLSJRFxbPF+Izw0q2KJGBUpVBV23yB/CK9ZNihyV1ME8VHtolYTTi1KArLX0WLjAeCGwhGZI0KKyDKMQbVU2JjSDHpe8Lxj1TmBiHQmq2Zs3w0pIqhqiMcrWNnK6/Q82L6LJZMil2Yq1Y1RRE7J1/0S9gfnKM3McWnGKCLDgXZCL31W+PXUpvKHrE5f2XP3h1JEqE/cTVNEytOp7D8RStmpw4uv3CF2WCcXa+KE//SjZ+D43DrMjBXh22/ZL3+OiYi9lRQRZ2CKSCl0U+P0yzBUx0OMWZUXLKu5rhGRhEUs3MKrSjPldCKC2HUtfOmb/xpeUf9vcN/YS6KfQ2UwtPxU1Qy5CLViUAGc3i4NrIOErojkat1UHpHuSjN4s2za8jWzsDTD/hAkIXhtc8YH+QKshOmwAUVkUZ4jOwrBib43WYcDisiyN9Z/bxeuaWw2xfKMHhoZ2zWTL1mVj7kWUkT4/M2SIRJ4flQtmq4ay1HtCxGpiA+o3mMJCTeHTET2jXVBRNisquXKDAO2rCLSamgtbF12zXBynmjXIkVkeZKISA/dH/y43DWjt2UGsONqgN03AtzwRugJmiKCSs5Lr9qpVJEPfUmqId/9vEt8lUcpIv3xiIxaaWazA82KlbFsRES7saxbYx0KgU2D5Kx2DRzaFScNl4PtIUUkZgw7wilYqgGj3vZ3mGuuDU9huF8cedNCzVQuQgYi0qTBd+KwPAt27BwCIqIpl04eRWT2Uvlx5lD3z+3IcpaFSafsD2E1hP0WTET4ph5BfLhrBt+PU0REtlty3hDjpsJh6REhIrIEY/0n51gS0cszbVpzIhURPUfEi885ilFEUPXlALO8qar68SARwteFiUi50k+zalOUkPA9WVhriuttZ9XNTERQ3UFiNW8UkeEC99KLGnVKPG6aciFc0uekIjI/LhfvrgfeaY/LpaNYRQRl9R/7IsDrfxt6At/ASHp/JZVn/vzOY/CVwxfESfyWF2qLpCIiW9QjssmlmbDEGzdQzdK8Tm2n82bORMRurYPj1tJLCKyIrJyR3Rgs6UeZHC1L+UT0jiuWk+OIuX/j80szWRZWl29SeM3hsLtdfc6x6AI4gJ7h5FFE0E/zo18E2Pfc7p+byJuF1+aJe+QX9xARoUh89AW4LraXUgksSglWpYCWygqZcYmIjO9SRER8j0szXnVjEpH1zhkuzeB6Hd4AkXKCHg2VIZIj0CzsE+HSTGYiohQZ+ZrxZOP+tO+WtHlMbd+oumtCJS1n3UijSq+6ZoxHZPBABszStLhxdjk3pKB7RKiN8MKYXLx7uTDDMwrcFGbfM5QiIl+Tb7p2l3hJzi7LBevVz9kD+2a0k12ZVSOOi3fYKK1eRNB3fJutiFTLJTE7hhHVdimg3VjaxU7Dp03KiqMpIk5Shwq2hPNueu6wL4/HlDJZgQkSEamOxEr3WmnG92ylKyIWH1eOVNWNhm4qD/t6EoGkfc+NPT23p7/fpx4IKiLjO5UigjdcDMeKNdQqc6TvyZhsy44ZuPLl4IEFB6zzYK+dh/b6ou8R2RAiooWaxXXMBEojrp8hon09DnrOk94503VpBlxYXquBTYNKc2XJZFBEkNRzWeb6vVMAlI6c1eOIm2Mk7QLGIzIck3d77ZgRv0r11BlvEWD5pPj8XOXSPpRmoidibhiUR6Shkk5vvcTfcb7txSQdqwNKMKu+8CcAbvhOgKteARcTBtk1Uy06/kC5mLbL8MLXLnYqUkUiHbZbh6IniYiddsPUh98pb0ExcWFHw16nImInBzZZTX+kQRapeYJ2+dy6myHMbKOh5/2EfT0bjXKpBOscKIcbI7w2d17TUZrBzgsmGewHiUvyZIiZPohtl0NrVpaeL60/Ac21Bd8j0m+zajjUTJUFI859zaxaCCgiTqq3hlW8KEXEydIxoz0PkqCVVS06vUulPQDa7OL9Ct87VkSu34dEZC0XEcF7EpJ2AezyHKIJvIWtGu+eJx43DjZF+F7uHZNfmNovdgeIfrTvMrw4j0i/wGSMWzoB4Fuul+WZG/dPw22HfFISNKtGXOhXvRLgO//Yr+9eJNDJx2YHmiEJUnNcEHFERNvhWhEtsMWqr4jw5GmnnKI+6FHvCTkiiOjSDCsiMUsNLdZYCuAAvyypvOVJn4jMW1NBxW5A0Lvbiv0wKuYA7nZXeI4IYsc1/gZDK83gDRdfa0QhahNG760qL9gFcNbP+4Rmn8z6ud57ChqrkoisWtVsCaR5MTarlWYS1hyVbIqKSPbSTHDwXadHJGsXFp/DSITW1vX4/H7kiFTksYh5TC48elpTRLK04GvAe9IijPst83pY3ICx5YmIXlfvVhHhC7u5/Rq47/hC7zNTwvMf4jwi/UJ4ijAAfP+LLoWf+5ar4XfefEvnyPskReQiha6IjG+yItJBRGIk3wCBjTALl0kRQTWEiXgxjYioULMjybvSuNIMZR/EXg+0WGNpJldk9Yz0KyCa5W3CxzRo6F6uUshgvNGoinkz2uvG/hDE2A5fEWliaSaBUGrmYU5VtTiFc3wnOAdvFZ/eWDgM9RW51tUKE51rRL9DzTKUZpAIqI4Z7etJYC+fXppp5i7N+NN319b6rIjYvmJ4YaUORy/Ix79OlGbWcnlEsHzmQQGapZmh84lsnTtJqDRT4RpoD0SEFRHGnx2uwj/WT4nPL9new0IUWiC8fpzQORURZM8/8c0yA6IDSWbVixS6CrLZyarYrVT3imqMTxwRKGjmuEKlk4iUqvJrqDw06KaZrohc7pdmEsyqsUSEBiWmlWZk10z20szEzG7tP+SBGCKPSF8yJLpMVw34Q3SPyNp5QQx54wSJikhLTd5VN6zxnWBNyu6kmwuHobUmSyc1e4PKYjlLM1gaCSgivPPPq4jkLs2QWdZqw1qNZiuBA8V+kDPHfz/up03uvumKHESY0yPCqmSjNAul+txQ+UScrTpnRu0Kup28iy9eaGf6cGs/XLN7En7wpZfBG2+Vg+/6QkQ23CNCj6/36iehvfUUEfRpDK4040BN84hwkF6SImJHRG5XxsbV7qriZSTiesx7RrNqPdIjkl6a8T0i6Te2ye2+IlKe1kjJAKEHzZXSCF6fgYpToDSjKyLjmkekiaWZ+IRcRQxpoyYGA55nIrIDYPoAtKAAO61FWFiQ6a1NZ4M65AJdM0mlGT/ZNJAhkoEIqHTVKEUkZ2kGFZFajQaVWsW4UaVdm1WfPLvi+0PEgeb1iJD6U5qFiSGbN7N17iQaMK68oi7G7ncuY9Xg7373v3sl/LcXvbR3mTJcmtnwrplORSQRSYvCRYpBKiJYmlnUlrU4N35BM0g61U4iUqrIGzwqD6rUk7aIcboqDT0TiFHoojwiOOU6uWuGSjNWvqTjialtYvAddkpMzA4+QyRMRPrSMZFTNeN0VQHMF4oqzQizKl+/5VRFZCe+FZQXIohIsQrH7ENwefsIzKxLb1zT2aAU5bxdM0IRyRZmFm7h1UPNWjRrppi13Kc9f4OmTcemYeeFw+Zh31gq/CEIiqDI3DVDf+u6w6WZ4VFEtqRHZMdECV5yKe26elgwiqHSzG23vaA/tdKw/LjRpRnlEaEdaRq4p38LKSKTFfke4No0tskTgvEmrntE4m5yjqbuFauduRoWtVajP0T5MdIUkcqUL+0zcpRmHidz3cFtY6ldAZN2M3v7bsGGJRp8t31XTHz8JiOQ99NDybcboOKEaboCE7uD5SrdrBqYsRXfNcOqyYHSmn+t0zyro5VrA7/S3KhxDplLM1qOSMYwM0YlQhFptLvLEbE1RSQ2hDIvnOD7EVBEcptV5d+zOoREZOvcSTQ8Z980POfWXQAne+uaCVwUUwfkot0PdBCR0iYpIlmJyNbziKBE/VMvvwomyw44G9EhkGZWRY9IChHxqrNQ9xxxQ6pUI8obpP5hgilqIgJZzn8szwQUkbjSjB0gIhjuxHKy3g4etwMfR3LkZb8mz1z7fbD47Jfh6ttosNuAwd1t2ERqbzJJx92uMqvq/hBdEXFb0Fqb10ozUYpI0IC/r7jiPwZtsk6OXwew+s/qV9zi5FCUZhxLV0SybRYiPSJ5SzParJkWjg4pISnt09poU3q35Qmig3bc6/dSRlNOsyqrkqs8p8kQkSEAG3162bnoF/Ku4C6hJ4QVkA03qwYDzRKBsiUO1NpiigjiZ1559UCeF3dmDcsno4Wo/Ac8TaqT8ObG/yf8JG8hBSf4QHLBKlgeTHo5ZF1s4T3+VfqPFbvIq9IMeUTQXIcDXw9tHxPZNGldM2rWTFLsvIbrvvs9MEzg0kwDilDdiC6SlNLMOaAbzH7Z2aKAShmqFo1lUZ5RRCSKULJCRR6RXTYNvNNUsbmp6wHO+r/ilTe4NIPD+rgMkdo143ZXmtEUkdylGa191/FaienHvdxjSmiBLZfhwCxds12aVZeYiBiPyBCgtd47EdEJws5+EpHgSWzZmxtolgjemSB6GbRnkAstzbAcDrzTd3f3epIsTVQiFmJtwSpa7ey7KfaJiCcvxZoAVaAZ7SjvOTqfrIaI5/dzK/yI9801evZbEWlaJdjsVBM0q/5x6zVwyaHL4Vtf+OOdP4CGVSQia+cVyYg0q4YUke2W5g8hrM1eKxQ6fhyvtEHx+lQKEmBFLrFrRktWzVua0RSRbkszJcsPi+tb9pOtE5EWXLN3yp8InNesSqRr2ZoaOkVkwzTm97znPfCiF70IxsbGYGYmOClzKMBliB66ZgIXxa7rej+mqMeN+n+/YedRRBKGTxlsGNoFLawspWsl1lBro+4QIo9Zzn8ONUvxVIU9IvcdIyISDsSLOLfRrFqmtNeeyqWDhEZENhvVUgHmYQo+O/WG6DBBUjQKaxf81NSoTZhGDBGzmBodIiITY1V4xPNnT1kRreJ9AZZhKtP+vCP+Whja0Lusk3fDikggWbXdXWkGwfk8cenHuWE74NEsHfT2KH+IOND8gWaIha1ERBqNBrzpTW+CH/uxH4OhRLMfioh2su3sJxEJ3uCtTSvNZFFEtFjgLVaaGSTaAUWkkjrEC70sUWhaISKRSRHRiEjCuaiXZnCe033HZO7BbUmKCF1D33L1DBRpEF+W9t1hBOf9DIKI+CPttUCvCJ+Iva6XZtIVETVnRivNTFeL8HX3MjXwrlLawL+XyzPLpzN0zWhD73J6RAKBZu3uSjPicEnV6xsRAb/Mg2qL6pjB8hETkcweEfm3ImEdNiKyYXeSX/zFXxQfP/zhD8NQIiebjARKyOIisAB2Xr1xpZmY3IjBeET05EKjiGwWXLxBsF8v1K0VNcQrrsW4WShDtS0lXRcKUMhCcgOlmXRFBHeXT5xZhpV6C8ZLNlyzZzL13Lt2RguiGlFFhG8+fWvdzAGW3Tm3pQOUJTJ37hRMKEUkvWtmjOfMaIrIVLUIn3ORnH4KlqEq/CkbBtE5cxhg5Wxq10xBJyKkImQlcMGI9+5KM+JwyefU13K6XRJWAlRERKJqeK3OqYjMMRFBjwiauDbZzxSFodrS1ut18Y+xtET1yQ1VRHro90dT3Xf8kTxR+mnYGmaPiBqUhKbFLdn9PRB4GgHg0QJJpZm4CcGtQhnbOhQpKWdZhHA67MQegJXTyYqIVpq5l8oyz71kJjl+nc9tHMI14kSEb0i6erVZqBAZwLDGJEXk7OkTsN1KUkT8sfOIMiZwRigiX3BvhEVvDO50r+tprlbmzhk899K6ZrrKEWHy3KmIODkj3sXhss+pj2u2R9d+pdCGq3ZPBO9fOafvIi64E766XV/uX7dnDxiqO8l73/temJ6eVv8OHjy48R6RHgLNBJ7z7QDXvhb6CsuClsYRLac4fB4R4w/ZVHh6aqoW5R6niMQSEbsaJCVZwT6RhAVWJyJsVE0sy+iPt77gn4sjaoIukHLZ7sews5yocIkhrjRDRGKbtQQ72Qsc6RHxFRFsG7c53n1MU0QqDpyFWbi9/vvwH5v/T2AO08aVZs5k65rJmSPiJ6t2Dr3LrojYHUSknyq2TRuPtz5/r0/62KiK10/G64XPkeV20S9/Dsm8mVxE5B3veIcI7Er699hjj3V9MO985zthcXFR/Tt+/DhseNdML2bVTRopzgvcUHlEjD9kc6HdNPTgslxmVS7xdENEuDyTZFZVHpE23Hs0g1E1oIgs5GrdHUZcvkf+rTtnyWC5ieAbVJwicpZ2wdthCfZPFhJyRPxcFzFnRht4pysiPE8FlVEcprZh4FCz1fTSDKbs5u6aUWZVrX2XSjOZp+9algqz49JMXIt9N7Do2n/TzVpIXU5/iDg2IozCD6MPFBwC5CrN/OzP/iy89a1vTfyZyy/X6sk5US6Xxb+RyRHZQIg6s1fbZCKSwyNiiMimwtLk11I5+pzdOVGGq3dPiBtI3CLqagtX267kJyIZSjOnF2vwDE0JveXgbLZzjxWREW3dRYzTyIcJmumzmeCbjO510PHxx+vwwwBwqLoOVTbTpkzfFXNmlrQ5M5pHJPDcG1qaofMn06wZvWvG7loR4RwcJ8dEZ9eyoeD585ICk7D7Vjqv+1/L2bob8BHhOYKeocVjQ5MlkouI7Ny5U/y7KNAaASJCsDeciFR8tQPd2EneD5WqOlT2ooselrbDcmKICCa+/vP/+40ihj4Onna+u3mICKd18k4qoTR05xG5y7pq1wRMjxXzKSKj6g/RSdomz5kJmlU7FZEj51fhH55uwA+XAPY6KwCtsdRk1bLVglv3OABEKANEJBSWt6Fm1fD5ltI1o6bvdtm+67oefPFJeXPeFRfCFwExD8ytQxVo81jss1k1rFjnDDMLGHPxHJnW5vgMATbsbnLs2DGYm5sTH9vtNtx///3i61deeSVMTGxQ3/lmd81sINp4YjO57+dJHQV9Z4Ssu1BNN6saIrKpKGgEIjzjSEeiMVQQkWp3ROTKVwB82wcALnlhqiKyXJNk9ba0skyAiCyNvCKivFYD2NxgjghiPYKI/I9/ewrOubJcVKzNAdh2QteMvxa862XbAB6mv6c0EXifUQXh59qU0gwjIdCsmxwRbmllAvdPD50SYwnQB/PtOSaoe1Sa4XTguPLpQBWRova3sudnSDwiG0ZE3vWud8FHPvIR9f9bbrlFfPzMZz4Dd9wxBLMhVGlm83cvWaDPKuirzBcFfeFEE2/SyW3MqgOBPlm3FGNWzQIefBdWR9IPoABwy39I/BH2iDASE1U7bnze6BORq18N8Ng/ANz85k1/6qiocsTRC6vw8ftPgAOTvurJN5/I6buaKXr5hO8PCXVXoU9EEZENVUTCRKQY7xHpURFBNeR3Pv2k+P/bX3KZ8sJkAU9I59JMXPpx3zx8re4VEdHirU02fvLMMly1e4Ni+gfdNYP5IZ7ndfwbChLSpdlnUCPFN7w0Iy5uK9vgO1WaGc3OhlFFgchHw7OhVHT64jXJRUQyIOxLSTWqRt0Mh1ShzIQdVwK8/RMAV71i059av8ngOqurIRgu96Jr9vuqBrfpJ5hVBZZOxJbjpqrOgEozffaIaO27//zQaXjizApMVhx424tlYFteIlIlIuL0sFnI1NWYc+BdQBFBYy7lypw/exJe/f4vwM/+5QOqWwi2evvupkIxyhHwiGx0aQZ3O3xTwr7yJGzBybvDAIdu0DhQLXNbYQQKeldKceOIyMxYES7fkcG0GZbaR1kRGSB0MsB+h7nVBnzsPkkmcHJ0x009ioig8sXX9tLJjo4Zhq4WDEtpxuli6B0TuLVGG97/6SfE5z+QUw2JKs30dfPolCJKM/kVEVZ/RGcVnQuPPn1EEFUkIXnMuf3G1iUiKtBsBBSRBE9A37D3Jvnx8GeSf854RAYCpzymWibDJZA8sLUSj9Xnc18/rlsOzvjDuZIQXrBHuH13kOCMCL08888PnYKW68EN+6fgFiyThQlFXN4JE5TFZ2OJiG5Y3diumSylGVZEXHCs7hSRR04tda2G6MegAs36WU63I0ozyiOSfTOhp8i6VUlExlsLcOn2MfjVN94o4jcGha1LRFrD7RHRpzcWN7o0g7ju9fLjo3+X/HOma2YgKJZZEXGy3eBjYJd9lcLSSEm/FZFMRlV5QBdPaWaAwI6pIiWBsnfjHx44JT6+7qZ9HZ0v8pdi1hVWHbg0QzK+Dl0x2NBAM1yfNaNsdGmGc0TyKyLcvsvVrLe/OL8aElWa6WvgoxNlVuUcrLHcpRnEx5+Q979t1gr8j++5NTYAcbNgiEhxBBSRfhqf0ojIM18CWE1o6Urq5zfYMLR2XAf3u1fA38PLenqcYsVfuArFjSMimfwhCFOa2ZB5M2eXavDVI/I6fu2NezvSUTMpIgmlGT1LhOPlN6U8k9g1oweaZVVEgoMikYh0BTtYmunrxHQnwayaw+elR/F/4GuyXX5vcRVu2L/5AXxhbE0i0m75N9QhzRHRFZEN94ggZi8F2HMTgNcGePyf4n/OKCIDQXlsHN7Q+GX4gJ3cuZKGYsVXRApU7ukXWObGFuKbD8xk+6XwrnxINwajAJ4lgqWZf3zwlNjl33LJDBzcNhatbMSpwXwTXdS6ZhKIyIaWZvRQM3FsxT57RPxb4NvQG5KWexOHDkWkvDlm1WL2axi9Zdzef8GVXTLl1rI2P2xw2JpEhOPdh5mI6BfcZhlDr/vW9PKMMasOBCyd9jpgrKQpIrpfpB+4fMeEMKm+/NpdsRHz6YrI5qeSXizQs0T+4euyLPN6LsuECQW+7nGeACYo9cUEj4h8f7Ec1It5OhN0k21C1wxO380b8b59vCyUPCzH/EC3aoi2Ro9RoFl/SzOlzqGkXZhVdS/R5MwO8KzC0MS8b019XW9RHVYiok/w3Ojpu4zrvxXgM78CcPizchpqJUKyM2bVgeD6vVPwrTfvy+69iEGh5N/ox8f7mx0wO16Cr77z5YHhe/mJiFFEei3NHD63KoYOIs947U1UlgmXZpJ27OHvRbTvso9iQyfvZi3NWH6OSN5AMzxn/+pHXwiTlWL3aog4BPm7tuVtoFm17n/tlAwIhck9uR7q6j2T8OipJfjd770drL/YJjNl8N/kbhgktiYRYaOPmPQ5pKKQzqg3a9LtzmsAdlwNcP4JgCc+CXDTm+JnzRiPyKabEX/nzbf0d3hen0szXd2Ywgu2ISI9v/Z/fY/sdnn+pdtg95S20dLNqkkG+PD3EkozG16WCXfOJAaatbVAs+zHdVPWMmISwsTH3sD23cUTAMe+Ij/POfn9z3/wBbBSb8FOjK9HgimIyOBj3of0Lry158wgPP1E3iwikqV7xkzfHW3oN/phOP/DC7am2BjkA5OCrxyWN5bX36yVZcLKRtJ7H1ZEwt02mN02Id83bHfdcGQszdiia2YwQzlZEVHoa2mmEjSrPvwx+RHHLUxnj6HnvBlBQvT3dQgG321tIjKkYWYIyx5AaUb3iTz1rwANMkTpMGbVi4eIDIP6YEozfQO3ooqXtWDBa24IyfZhj0gWRQRbZyPOk+cenIUfednl8M7XXAcbjoxdMyLi3cpnVu0XrLBCvJFm1Yf/Rn58zhv7ozQZRWTQc2aGl4gESzObSET23gwwc4l0ZT/96c7vG4/IaGPYFJGO0owJNOsWepnkRVdsh+0TCcpGkodBv4lGqCHiRwqWICGvuH73EJRm9K6ZwSgiHce1UWbVuSMAJ+4BQKPp9d/W2+OqwXemNDPYrplhWIjjoJOPzbyo0OGmumf+Pt4jYqbvjib0G/0wKILhjrBhUGlGFLo/p6Msw68tdyVlVUQi/CGbDp2IRHUQan6QIrQCBtbNQiG8Hm6UWfVhKstc+pLeDaba4LtBY4uWZurDsxDHwNIXg81URHSfyOOfCIboIMz03dGGTr6HQX3QZ5sMyzGNKDgTA1tqX3V9TDcFZ4lk9YiEQ9AGgWo2RQRRhuZAhnJaTnETzKoNgIeoLHPDd/T+uEPkEdmaXTP7bwN4y98NtSKyd9vUYMyqiAPPB5jYDbByBuDI54PTRI1ZdbSh3+iH5fzH3WODbiCGiHSNsZJczl929c74VlRUOBaOJe/YnfTSzKYiY2kmSEQGbVbtJxGpyI/nHgNYPSf/Nlate4FRRIbgxL78ZQCXfAMMK0o8RhprgZvM7sUu9drXyc8f+4fg94xZdbShq4DDUgbRF/FhOaYRxBtu2S9adn/6FVfH/xArHEk3Sv39GIrSjN41k0JErMEQkUKHWbWPRMQmYogkBHH5N3UOA+wGhogYZJbjNrsswzhwu/y4cLQzHh9hPCKjCX3i7rAoInopwLTvdo3nHpyBv/zRFybPDmGFI2tpZhgUEVTJ+JhSFJGXXDpxESoipeD/b+ixW4ZhiIhBKuwBE5EylYbqy8GvG0VktIE7Nyy74cIekZg5EOgLrVFENhb8nmcNNBsGRQQN9Bi0iOpwVJKoCKWUcfW7mGdvuoocNqtugCLC94OcIWaZPCI8fnhA2JoekVEAM+xBKQ8VIiK1peDX2SOy2b4Vg/7hLX8LUF/x3+NBQyfbumJj0H9ga37YADrsigjie/9SlibiIs1xncS1ibM2NnvdDJeMNmL6LuLKV0aP3uiFlOLrhhvOAa4HhogMKwauiNAcknqYiLQGs+Mw6B92bUIIVR7wjQ/LBcM6cuFiwc1vlrvf68gDlnbjG4auGcTUPvkvDoqI1AdERDYy4r3c/7KM3s7dXJVR7wMkIuaqH1YMnIjEKSKcI2IUEYM+gdU10zGz8ShPAHzDDyff1O0hK83kIQKDIiIbaVatbpNlKUy5vfrV0Fcon8hgJ/AaRWTYF+dBDZdj+Q/ZMpIPVkBMsqpBv8E7PkNEhgMBRWRIfERp4PVJEZEBe0T6SUQmdwN81/+WpBCJZD+BuTKLxwaeJWKIyLBi4IqINiIeyzNVGj9vAs0M+g0+x41Rdbjej8pMf02XGwm1URpUaWYDI94R/TKoDmnnjCnNDPtiMKgSCO6KuHavl2dUoJnxiBj0CYaIDKciMixG1a5KM5u8PunKNZ7P2OkzChjjeTODVUQMERlW7L8dYOd1/TUn5QWbl3TDqpk1Y7BRNz6TITIc4BLZ+C4YPSIyqK4ZnYj0cc7MRmNIFBFTmhlWYO3ux7862GNAwyq2zOlZIsojYsyqBn2CUUSGC1e+HOCm7wa48U0wMujwiAywNDNK0QbjRERWDRExGFZEZYmYQDODDSMiZuDdUACN6m/8AxgpdCgiAzSr9nPy7hZRRExpxiBflogyqxoxzaBPYEOkISIGvRIBnFCr/38gHpERUkSm9gNsuwJgYrBlOHM3MciQJbLof80oIgb9BtfUTdeMQbcIE4+BekRGpNMIcdUr5b8BwygiBulZIrpHRBGREWL9BsMNU5ox6BXhUsxAPSIjVJoZEhgiYpBh8J1WmjGBZgb9xsHnyYX84PPNa2vQJ0VkgB6RUSrNDAlMacYgp1mVI95NjohBn3DDdwBc81qAYsJoegODYS7N2CNqVh0SGEXEIKdZ1UzfNdgAGBJiMMpEJFCaGSGPyJDAEBGDfIPvjFnVwMBg2BAmHpYpzYwSDBExyJCsasyqBgYGQ4xBm1V1X4gxq+aGISIGOc2q3DVjPCIGBgZDgoGbVbXnM2bV3DBExKC70oy52AwMDIYFw+QRMWbV3DBExCBDaUYPNONZM6bhysDAYEgQ9oSYQLORgiEiBhlKM8sAnic/N2ZVAwODYcNQeURM10xeGCJikK6IeC5AYzXkETGKiIGBwZBg4B6REY14HxIYImIQDxxCxpInG1aNImJgYDBsGLhHxCSr9gJDRAziYVl+qBkbVo1Z1cDAYNgwaCKil2aMWTU3DBExyJclYhQRAwODYcOgPSKmNNMTDBExSEZ5Otg5Y4iIgYHBsMF4REYahogY5Bt8Z6bvGhgYDBsMERlpGCJikG/wnVFEDAwMhg3D5BExXTO5YYiIQfYsEbeNvbzy/yZZ1cDAYFgwTB4Rx7Tv5oUhIgbZSzOshogzx8yaMTAwGBIMWhExZtWeYIiIQfbBdwEiokmRBgYGBoNEmHiEI983GqY00xMMETFIhp4jwkZVceaYZFUDA4Mhgb4eWQWAwibf2owi0hMMETHImCOyRB4RPnMMETEwMBgS6OvRINamgEekvPnPP+IwRMQgY44IEpHm4HYcBgYGBnHQ16NBEBFMoeZykDHy54a5mxjkN6saf4iBgcEwYdCKiE5ATPtubhgiYpA9R8SEmRkYGAw9EbEHewy2Kc3khSEiBtm6ZmqaR8T4QwwMDIbWrDpoImI6CvPCEBGD7EPv2CNiG6OqgYHBEEFXQQa1URrbLj+O7xjM848wzB3FIJsi0q4DNNbk50YRMTAwGCYMg0fk338EYPEEwPSBwTz/CMMQEYNsHhHE+pz8aMyqBgYGw4Rh8IjsuVH+M8gNU5oxSDlDbIDShPx8jYmIiXc3MDAYIgyDImLQNQwRMchenmFFxJixDAwMhgmGiIw0DBExyG5YVYqI2XEYGBgMEYbBrGrQNQwRMciuiKxdoLPGXOgGBgZDhGHwiBh0DUNEDLIbVpVZ1RARAwODIYIpzYw0DBExSIcpzRgYGAwzDBEZaRgiYpAOY1Y1MDAYGY+IKc2MGgwRMcihiMzTWWNKMwYGBkMEo4iMNAwRMUiHMasaGBgMM/T5MkYRGTkYImKQnYi01umsMYqIgYHBEMEoIiMNQ0QMspdm1FljiIiBgcEQwRCRkYYhIgbZFRGGmb5rYGAwTDCBZiMNQ0QM8g2+E2eNUUQMDAyGCCbQbKSxYUTkmWeegR/4gR+Ayy67DKrVKlxxxRXw7ne/GxqNxkY9pcGmlWaK5rU2MDAYHpjSzEhjw7a2jz32GLiuC3/wB38AV155JTz00EPwQz/0Q7C6ugrve9/7NuppDTajNGMUEQMDg2GCISIjjQ0jIq9+9avFP8bll18Ojz/+OHzwgx80RGTUUJkO/t94RAwMDIYJxiMy0tjUYv/i4iJs27Yt9vv1el38YywtLW3SkRkkwnhEDAwMhhnGIzLS2DSz6lNPPQW/+7u/Cz/yIz8S+zPvfe97YXp6Wv07ePDgZh2eQRKcMoBd9v9vSjMGBgbDBH1N0sPNDC5OIvKOd7wDLMtK/If+EB0nTpwQZZo3velNwicSh3e+851CNeF/x48f7+6vMthYw6oxqxoYGAwTjEdka5VmfvZnfxbe+ta3Jv4M+kEYJ0+ehG/6pm+CF73oRfCHf/iHib9XLpfFP4MhNayunpOfmwhlAwODYYLxiGwtIrJz507xLwtQCUESctttt8GHPvQhKBRMbMlFoYjYpn3XwMBgiGA8IiONDTOrIgm544474NChQ6JL5tw52k0DwJ49ezbqaQ02w7BqPCIGBgbDBFOaGWlsGBH51Kc+JQyq+O/AgQOB73met1FPa7AZWSLGI2JgYDBMMERkpLFhtRL0kSDhiPpnMOJZIsYjYmBgMEwwHpGRhjFtGHShiJhZMwYGBkMES7uVmfVp5GCIiEF+j4gxqxoYGAwTLMsnIEaxHTkYImLQRY6IUUQMDAyGDIqImPVp1GCIiEE2mNKMgYHBMMMoIiMLQ0QMssEoIgYGBsMMLskYRWTkYIiIQX5FxHhEDAwMhg1GERlZGCJikA2mNGNgYDDMMB6RkYUhIgZdlGbMdEsDA4MhgyEiIwtDRAyywSSrGhgYDDOMR2RkYYiIQTYYs6qBgcEwwygiIwtDRAyyoTgGYFFJxjZ9+gYGBkMGY1YdWRgiYpA9uZDTVU17nIGBwbDBKCIjC0NEDPKXZ8z0XQMDg2GD8YiMLAwRMciO298OcMkLAfY917xqBgYGw4XKTOekcIORwP/f3p2GVPX0ARwfy60wtZQ0c20BKyts14JeGLRIO0FhYQtFZWQFLRTWizCFIKiIoqB6kSUFaSVFiJolmEulZYsZSoWlUuKGrTp/Zh68j7en53lcrp3uvd8P3M49Szn8nOb85pyZcxyklFL8pZqamoSHh4dobGwU7u6dpo8CANBZ3Ush3hcKEb5GiH70sa3p/M2oQwCA9Rs65l8fWB3SRgAAYBgSEQAAYBgSEQAAYBgSEQAAYBgSEQAAYBgSEQAAYBgSEQAAYBgSEQAAYBgSEQAAYBgSEQAAYBgSEQAAYBgSEQAAYBgSEQAAYJi/+u27UkrT64QBAIB16Dhvd5zHrTYRaW5u1suAgACjiwIAAHpwHvfw8PifxzjIrqQrBmlvbxcfPnwQgwYNEg4ODhbP1lSC8/79e+Hu7m7RfxvE2ijUa2Jti6jX1hdrlVqoJMTPz0/069fPeq+IqML7+/v36c9QgSYR+TOI9Z9DrIm1LaJeW1es/9+VkA4MVgUAAIYhEQEAAIax20TExcVFHDp0SC9BrG0F9ZpY2yLqtW3H+q8erAoAAGyb3V4RAQAAxiMRAQAAhiERAQAAhiERAQAAhrHLROTUqVMiODhYuLq6iunTp4vCwkKji2T1kpKSxNSpU/VTcIcOHSqWLFkiysvLzY75+vWriIuLE15eXsLNzU0sX75c1NbWGlZmW5GcnKyfPLxjxw7TNmJtOdXV1WL16tW63g4YMECMHz9eFBcXm/ar8f4HDx4Uw4YN0/vnzJkjKioqLFgC+9DW1iYSEhJESEiIjuPIkSPF4cOHzd5VQqx77v79+2LhwoX6SaeqvUhPTzfb35XY1tfXi5iYGP2gM09PT7FhwwbR0tLSi1L9+4fbldTUVOns7CzPnz8vnz9/Ljdu3Cg9PT1lbW2t0UWzanPnzpUXLlyQZWVlsqSkRC5YsEAGBgbKlpYW0zGbN2+WAQEBMisrSxYXF8sZM2bIyMhIQ8tt7QoLC2VwcLCcMGGCjI+PN20n1pZRX18vg4KC5Nq1a2VBQYGsrKyUd+/elW/evDEdk5ycLD08PGR6erosLS2VixYtkiEhIfLLly8WKoV9SExMlF5eXjIjI0NWVVXJa9euSTc3N3n8+HHTMcS6527fvi0PHDggr1+/rjI7mZaWZra/K7GdN2+enDhxonz48KF88OCBHDVqlFy1apXsLbtLRKZNmybj4uJM621tbdLPz08mJSUZWi5bU1dXpyt7bm6uXm9oaJBOTk66cenw8uVLfUx+fr6BJbVezc3NcvTo0TIzM1POnj3blIgQa8vZu3evnDVr1n/d397eLn19feXRo0dN21T8XVxc5JUrVyxYEtsXHR0t169fb7Zt2bJlMiYmRn8n1pbzayLSldi+ePFC/72ioiLTMXfu3JEODg6yurq6V+Wxq1sz379/F48ePdKXnDq/z0at5+fnG1o2W9PY2KiXQ4YM0UsV9x8/fpjFPjQ0VAQGBhL7HlK3uaKjo81iSqwt6+bNm2LKlClixYoV+pZjeHi4OHfunGl/VVWVqKmpMfsdqPdrqFu+tCndExkZKbKyssTr16/1emlpqcjLyxPz588n1n2sK/VYLdXtGPX/oYM6Xp1DCwoKevXz/+qX3lnap0+f9H1IHx8fs+1q/dWrV4aVy9aotyar8QozZ84UYWFhepuq5M7Ozroi/xp7tQ/dk5qaKh4/fiyKior+Yx+xtpzKykpx+vRpsWvXLrF//34d7+3bt+u6HBsba6q7v2tTqNfds2/fPv3mV9VB6d+/v26rExMT9ZgEhVj3na7EVi1VMt6Zo6Oj7mz2tq7bVSKCP9dTLysr070ZWJ56PXd8fLzIzMzUA67Rt0m16gEeOXJEr6srIqpunzlzRicisJyrV6+KlJQUcfnyZTFu3DhRUlKiOzRqcCWxtm12dWvG29tbZ9q/ztRQ676+voaVy5Zs27ZNZGRkiJycHOHv72/aruKrbo01NDSYHU/su0/d5qqrqxOTJk3SPRL1yc3NFSdOnNDfVS+GWFuGmkEwduxYs21jxowR796909872g3alN7bvXu3viqycuVKPTNpzZo1YufOnXpGHrHuW12px2qp2p3Ofv78qWfS9Pb8aVeJiLqcOnnyZH0fsnOPR61HREQYWjZrp8Y/qSQkLS1NZGdn6yl4nam4Ozk5mcVeTe9VDTqx756oqCjx7Nkz3WPs+Kheu7qE3fGdWFuGur346zR0NYYhKChIf1f1XDXCneu1ur2g7plTr7untbVVjzfoTHUcVRtNrPtWV+qxWqqOpOoIdVBtvfr9qLEkvSLtcPquGgl88eJFPQp406ZNevpuTU2N0UWzalu2bNFTv+7duyc/fvxo+rS2tppNKVVTerOzs/X03YiICP1B73WeNUOsLTs92tHRUU8traiokCkpKXLgwIHy0qVLZtMeVRty48YN+fTpU7l48WKm7/ZAbGysHD58uGn6rppm6u3tLffs2UOsLTTL7smTJ/qjTv3Hjh3T39++fdvleqym74aHh+up7Hl5eXrWHtN3e+jkyZP6hKieJ6Km86o50egdVbF/91HPFumgKvTWrVvl4MGDdWO+dOlSnazA8okIsbacW7duybCwMN2BCQ0NlWfPnjXbr6Y+JiQkSB8fH31MVFSULC8vt2AJ7ENTU5Ouw6ptdnV1lSNGjNDPvfj27ZvpGGLdczk5Ob9to1UC2NXYfv78WSce6vku7u7uct26dTrB6S0H9UfvrqkAAAD0jF2NEQEAAH8XEhEAAGAYEhEAAGAYEhEAAGAYEhEAAGAYEhEAAGAYEhEAAGAYEhEAAGAYEhEAAGAYEhEAAGAYEhEAAGAYEhEAACCM8g/22LcmLk7a0wAAAABJRU5ErkJggg==", "text/plain": [ "
" ] @@ -344,7 +344,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "100%|██████████| 1000/1000 [02:55<00:00, 5.69it/s]\n" + "100%|██████████| 1000/1000 [05:48<00:00, 2.87it/s]\n" ] } ], @@ -365,7 +365,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "100%|██████████| 1000/1000 [02:55<00:00, 5.70it/s]\n" + "100%|██████████| 1000/1000 [05:53<00:00, 2.83it/s]\n" ] } ], @@ -377,7 +377,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 13, "id": "f680d58c", "metadata": {}, "outputs": [ @@ -385,6 +385,11 @@ "name": "stderr", "output_type": "stream", "text": [ + "/Users/danwaxman/Documents/dynestyx/.venv/lib/python3.12/site-packages/arviz/__init__.py:50: FutureWarning: \n", + "ArviZ is undergoing a major refactor to improve flexibility and extensibility while maintaining a user-friendly interface.\n", + "Some upcoming changes may be backward incompatible.\n", + "For details and migration guidance, visit: https://python.arviz.org/en/latest/user_guide/migration_guide.html\n", + " warn(\n", "/Users/danwaxman/Documents/dynestyx/dynestyx/inference/filters.py:296: UserWarning: PFJax stop-gradient mode requires resampling at every step for its correction term to be valid. Overriding ess_threshold_ratio from 0.7 to 1.0.\n", " run_pfjax_discrete(\n" ] @@ -424,39 +429,39 @@ " \n", " \n", " alpha\n", - " 1.576\n", - " 0.654\n", - " -0.232\n", - " 2.022\n", - " 0.263\n", - " 0.337\n", - " 12.0\n", - " 11.0\n", - " 1.11\n", + " 1.829\n", + " 0.085\n", + " 1.669\n", + " 1.981\n", + " 0.006\n", + " 0.003\n", + " 202.0\n", + " 371.0\n", + " 1.02\n", " \n", " \n", " inv_sigma_h\n", - " 1.113\n", - " 0.520\n", - " 0.020\n", - " 1.729\n", - " 0.230\n", - " 0.115\n", - " 6.0\n", - " 15.0\n", - " 1.26\n", + " 1.361\n", + " 0.239\n", + " 0.933\n", + " 1.793\n", + " 0.042\n", + " 0.011\n", + " 34.0\n", + " 171.0\n", + " 1.08\n", " \n", " \n", " rho\n", - " -0.155\n", - " 0.228\n", - " -0.442\n", - " 0.445\n", - " 0.063\n", - " 0.069\n", - " 18.0\n", - " 11.0\n", - " 1.06\n", + " -0.219\n", + " 0.108\n", + " -0.419\n", + " -0.016\n", + " 0.018\n", + " 0.009\n", + " 35.0\n", + " 45.0\n", + " 1.05\n", " \n", " \n", "\n", @@ -464,17 +469,17 @@ ], "text/plain": [ " mean sd hdi_3% hdi_97% mcse_mean mcse_sd ess_bulk \\\n", - "alpha 1.576 0.654 -0.232 2.022 0.263 0.337 12.0 \n", - "inv_sigma_h 1.113 0.520 0.020 1.729 0.230 0.115 6.0 \n", - "rho -0.155 0.228 -0.442 0.445 0.063 0.069 18.0 \n", + "alpha 1.829 0.085 1.669 1.981 0.006 0.003 202.0 \n", + "inv_sigma_h 1.361 0.239 0.933 1.793 0.042 0.011 34.0 \n", + "rho -0.219 0.108 -0.419 -0.016 0.018 0.009 35.0 \n", "\n", " ess_tail r_hat \n", - "alpha 11.0 1.11 \n", - "inv_sigma_h 15.0 1.26 \n", - "rho 11.0 1.06 " + "alpha 371.0 1.02 \n", + "inv_sigma_h 171.0 1.08 \n", + "rho 45.0 1.05 " ] }, - "execution_count": 16, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } @@ -514,7 +519,7 @@ "postprocessed_2 = jax.jit(jax.vmap(_postprocess_single))(jnp.arange(num_sample))\n", "posterior_samples_2 = {k: v[None, ...] for k, v in postprocessed_2.items()}\n", "\n", - "num_warmup = 250\n", + "num_warmup = 500\n", "posterior_samples_stacked = {k: jnp.stack([posterior_samples_1[k][..., num_warmup:], posterior_samples_2[k][..., num_warmup:]], axis=0).squeeze(1) for k in [\"alpha\", \"inv_sigma_h\", \"rho\"]}\n", "\n", "az.summary(posterior_samples_stacked, var_names=[\"alpha\", \"inv_sigma_h\", \"rho\"])\n" @@ -522,13 +527,13 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 15, "id": "323b4be3", "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] @@ -538,9 +543,12 @@ } ], "source": [ + "import arviz as az\n", + "import seaborn as sns\n", + "\n", "fig, ax = plt.subplots(1, 3, figsize=(12, 4))\n", "for i, v in enumerate([\"alpha\", \"inv_sigma_h\", \"rho\"]):\n", - " ax[i].hist(posterior_samples_stacked[v].ravel(), label=v)\n", + " sns.histplot(posterior_samples_stacked[v].ravel(), ax=ax[i], label=v)\n", " ax[i].set_title(v)\n", " ax[i].axvline(\n", " true_rho\n", From 3fe6f742c4d3eb7563def4d24d78bc4bfd249428 Mon Sep 17 00:00:00 2001 From: Dan Waxman Date: Thu, 12 Mar 2026 14:28:00 -0400 Subject: [PATCH 5/5] format after merge --- dynestyx/inference/integrations/pfjax/discrete.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dynestyx/inference/integrations/pfjax/discrete.py b/dynestyx/inference/integrations/pfjax/discrete.py index 800b8907..4a0baa40 100644 --- a/dynestyx/inference/integrations/pfjax/discrete.py +++ b/dynestyx/inference/integrations/pfjax/discrete.py @@ -6,6 +6,8 @@ import numpyro from jax import lax, random from jax.scipy.special import logsumexp +from pfjax.particle_filter import particle_filter as pfjax_particle_filter +from pfjax.particle_filter import particle_filter_rb as pfjax_particle_filter_rb from dynestyx.inference.filter_configs import ( BaseFilterConfig, @@ -20,8 +22,6 @@ _validate_control_dim, _validate_controls, ) -from pfjax.particle_filter import particle_filter as pfjax_particle_filter -from pfjax.particle_filter import particle_filter_rb as pfjax_particle_filter_rb def _config_to_filter_kwargs(config: BaseFilterConfig) -> dict: