From 13689709bfed074f7ec32e9a7f5b8b9427a562d6 Mon Sep 17 00:00:00 2001 From: Piotr Mardziel Date: Tue, 16 Apr 2024 23:12:49 -0700 Subject: [PATCH] configurable table prefix (#971) * prototyping * nothing * adjust ini usage * ini * Fixing docs. * satisfy abc for deprecated db * indent fix * few more formatting fixes * more format fixes * refactor db init in Tru * move large design decision sections from docstrings to a single md file. * add design.md and notes * doc fixes * cleaning up db implementation docs and some code * work * forgot some * add database_prefix to Tru * moving and renaming things * ignores * fixes from the move/renames * remove accidental file * more fixes, and fix reset_database * print arg parse exception * streamlit state fixes * forgot to remove old import * update database migration notes and copy_database * move old database to legacy databases folder * rename class * typos and doc fixes * nits * nits * testing copy_database * format * working on prefix tests * debugging the foreign keys * debugging more * clean up * typo * moved on_done_callback content into result() and added some database tests * undo non-needed * change alembic logging output * moved db revision migration check to Tru init --------- Co-authored-by: Aaron <163380706+arn-tru@users.noreply.github.com> --- docs/overrides/home.html | 2 +- docs/trulens_eval/api/database/index.md | 1 + docs/trulens_eval/api/database/migration.md | 70 +++ docs/trulens_eval/api/database/sqlalchemy.md | 5 + docs/trulens_eval/api/db.md | 5 - docs/trulens_eval/contributing/index.md | 4 + .../trulens_eval/contributing/migration.md | 61 +-- mkdocs.yml | 7 +- trulens_eval/Makefile | 4 + trulens_eval/docker/test-database.yaml | 4 +- trulens_eval/examples/experimental/.gitignore | 2 + .../examples/experimental/default.sqlite | Bin 42446848 -> 0 bytes .../examples/experimental/dev_notebook.ipynb | 91 +++- trulens_eval/setup.py | 2 + .../tests/docs_notebooks/test_notebooks.py | 8 +- .../tests/integration/test_database.py | 334 +++++++++++-- trulens_eval/trulens_eval/Leaderboard.py | 48 +- trulens_eval/trulens_eval/__init__.py | 18 +- trulens_eval/trulens_eval/app.py | 59 ++- trulens_eval/trulens_eval/database/base.py | 315 ++++++++++++ .../trulens_eval/database/exceptions.py | 45 +- .../legacy/migration.py} | 61 ++- .../{db.py => database/legacy/sqlite.py} | 362 ++------------ .../database/migrations/__init__.py | 55 ++- .../database/migrations/alembic.ini | 3 +- .../{db_data_migration.py => data.py} | 43 +- .../trulens_eval/database/migrations/env.py | 44 +- .../database/migrations/script.py.mako | 13 +- .../migrations/versions/1_first_revision.py | 32 +- trulens_eval/trulens_eval/database/orm.py | 449 +++++++++++++----- .../{sqlalchemy_db.py => sqlalchemy.py} | 340 +++++++++---- trulens_eval/trulens_eval/database/utils.py | 137 +++++- .../feedback/provider/endpoint/base.py | 4 +- .../trulens_eval/feedback/v2/feedback.py | 10 +- trulens_eval/trulens_eval/pages/Apps.py | 14 +- .../trulens_eval/pages/Evaluations.py | 24 +- trulens_eval/trulens_eval/schema.py | 8 + trulens_eval/trulens_eval/tru.py | 185 +++++--- trulens_eval/trulens_eval/tru_rails.py | 6 +- trulens_eval/trulens_eval/utils/imports.py | 1 - trulens_eval/trulens_eval/utils/python.py | 33 ++ trulens_eval/trulens_eval/utils/streamlit.py | 30 ++ trulens_eval/trulens_eval/ux/styles.py | 7 +- 43 files changed, 2049 insertions(+), 897 deletions(-) create mode 100644 docs/trulens_eval/api/database/index.md create mode 100644 docs/trulens_eval/api/database/migration.md create mode 100644 docs/trulens_eval/api/database/sqlalchemy.md delete mode 100644 docs/trulens_eval/api/db.md rename trulens_eval/trulens_eval/database/migrations/README.md => docs/trulens_eval/contributing/migration.md (61%) create mode 100644 trulens_eval/examples/experimental/.gitignore delete mode 100644 trulens_eval/examples/experimental/default.sqlite create mode 100644 trulens_eval/trulens_eval/database/base.py rename trulens_eval/trulens_eval/{db_migration.py => database/legacy/migration.py} (94%) rename trulens_eval/trulens_eval/{db.py => database/legacy/sqlite.py} (63%) rename trulens_eval/trulens_eval/database/migrations/{db_data_migration.py => data.py} (86%) rename trulens_eval/trulens_eval/database/{sqlalchemy_db.py => sqlalchemy.py} (63%) create mode 100644 trulens_eval/trulens_eval/utils/streamlit.py diff --git a/docs/overrides/home.html b/docs/overrides/home.html index a305ccaa6..821cd86dc 100644 --- a/docs/overrides/home.html +++ b/docs/overrides/home.html @@ -114,7 +114,7 @@
  • Newsletter
  • - diff --git a/docs/trulens_eval/api/database/index.md b/docs/trulens_eval/api/database/index.md new file mode 100644 index 000000000..30151f378 --- /dev/null +++ b/docs/trulens_eval/api/database/index.md @@ -0,0 +1 @@ +::: trulens_eval.database.base diff --git a/docs/trulens_eval/api/database/migration.md b/docs/trulens_eval/api/database/migration.md new file mode 100644 index 000000000..c3194613b --- /dev/null +++ b/docs/trulens_eval/api/database/migration.md @@ -0,0 +1,70 @@ +# πŸ•Έβœ¨ Database Migration + +When upgrading _TruLens-Eval_, it may sometimes be required to migrade the +database to incorporate changes in existing database created from the previously +installed version. The changes to database schemas is handled by +[Alembic](https://github.com/sqlalchemy/alembic/) while some data changes are +handled by converters in [the data +module][trulens_eval.database.migrations.data]. + +## Upgrading to the latest schema revision + +```python +from trulens_eval import Tru + +tru = Tru( + database_url="", + database_prefix="trulens_" # default, may be ommitted +) +tru.migrate_database() +``` + +## Changing database prefix + +Since `0.28.0`, all tables used by _TruLens-Eval_ are prefixed with "trulens_" +including the special `alembic_version` table used for tracking schema changes. +Upgrading to `0.28.0` for the first time will require a migration as specified +above. This migration assumes that the prefix in the existing database was +blank. + +If you need to change this prefix after migration, you may need to specify the +old prefix when invoking +[migrate_database][trulens_eval.tru.Tru.migrate_database]: + +```python +tru = Tru( + database_url="", + database_prefix="new_prefix" +) +tru.migrate_database(prior_prefix="old_prefix") +``` + +## Copying a database + +Have a look at the help text for `copy_database` and take into account all the +items under the section `Important considerations`: + +```python +from trulens_eval.database.utils import copy_database + +help(copy_database) +``` + +Copy all data from the source database into an EMPTY target database: + +```python +from trulens_eval.database.utils import copy_database + +copy_database( + src_url="", + tgt_url="", + src_prefix="", + tgt_prefix="" +) +``` + +::: trulens_eval.tru.Tru.migrate_database + +::: trulens_eval.database.utils.copy_database + +::: trulens_eval.database.migrations.data diff --git a/docs/trulens_eval/api/database/sqlalchemy.md b/docs/trulens_eval/api/database/sqlalchemy.md new file mode 100644 index 000000000..5868c05d1 --- /dev/null +++ b/docs/trulens_eval/api/database/sqlalchemy.md @@ -0,0 +1,5 @@ +# πŸ§ͺ SQLAlchemy Databases + +::: trulens_eval.database.sqlalchemy + +::: trulens_eval.database.orm diff --git a/docs/trulens_eval/api/db.md b/docs/trulens_eval/api/db.md deleted file mode 100644 index b7477336c..000000000 --- a/docs/trulens_eval/api/db.md +++ /dev/null @@ -1,5 +0,0 @@ -# πŸ—„ Database - -::: trulens_eval.db - -::: trulens_eval.database.sqlalchemy_db \ No newline at end of file diff --git a/docs/trulens_eval/contributing/index.md b/docs/trulens_eval/contributing/index.md index cd5c5b5be..4664cb728 100644 --- a/docs/trulens_eval/contributing/index.md +++ b/docs/trulens_eval/contributing/index.md @@ -110,6 +110,10 @@ Parts of the code are nuanced in ways should be avoided by new contributors. Discussions of these points are welcome to help the project rid itself of these problematic designs. See [Tech debt index](techdebt.md). +### Database Migration + +[Database migration](migration.md). + ## πŸ‘‹πŸ‘‹πŸ»πŸ‘‹πŸΌπŸ‘‹πŸ½πŸ‘‹πŸΎπŸ‘‹πŸΏ Contributors {% diff --git a/trulens_eval/trulens_eval/database/migrations/README.md b/docs/trulens_eval/contributing/migration.md similarity index 61% rename from trulens_eval/trulens_eval/database/migrations/README.md rename to docs/trulens_eval/contributing/migration.md index dbe1e05f8..b3cbcdf14 100644 --- a/trulens_eval/trulens_eval/database/migrations/README.md +++ b/docs/trulens_eval/contributing/migration.md @@ -1,18 +1,13 @@ -# Database Migrations -Database schema revisions are handled with -[Alembic](https://github.com/sqlalchemy/alembic/) +# ✨ Database Migration -## Upgrading to the latest schema revision - -```python -from trulens_eval import Tru - -tru = Tru(database_url="") -tru.migrate_database() -``` +These notes only apply to _trulens_eval_ developments that change the database +schema. +Warning: + Some of these instructions may be outdated and are in progress if being updated. ## Creating a new schema revision + If upgrading DB, You must do this step!! 1. `cd truera/trulens_eval/database/migrations` @@ -20,18 +15,19 @@ If upgrading DB, You must do this step!! * `mv trulens/trulens_eval/release_dbs/sql_alchemy_/default.sqlite` ./ -1. Edit the [SQLAlchemy models](../orm.py) +1. Edit the SQLAlchemy orm models in `trulens_eval/database/orm.py`. 1. Run `export SQLALCHEMY_URL="" && alembic revision --autogenerate -m "" --rev-id ""` -1. Look at the migration script generated at [versions](./versions) and edit if +1. Look at the migration script generated at `trulens_eval/database/migration/versions` and edit if necessary -1. Add the version to `db_data_migration.py` in variable: +1. Add the version to `database/migration/data.py` in variable: `sql_alchemy_migration_versions` -1. Make any `data_migrate` updates in `db_data_migration.py` if python changes +1. Make any `data_migrate` updates in `database/migration/data.py` if python changes were made 1. `git add truera/trulens_eval/database/migrations/versions` ## Creating a DB at the latest schema + If upgrading DB, You must do this step!! Note: You must create a new schema revision before doing this @@ -58,31 +54,18 @@ Note: You must create a new schema revision before doing this 1. `git add trulens/trulens_eval/release_dbs` ## Testing the DB -Run the below: -1. `cd trulens/trulens_eval` -1. `HUGGINGFACE_API_KEY="" OPENAI_API_KEY="" - PINECONE_API_KEY="" PINECONE_ENV="" HUGGINGFACEHUB_API_TOKEN="" python -m - pytest tests/docs_notebooks -k backwards_compat` -## Copying a database -Have a look at the help text for `_copy_database` and take into account all the -items under the section `Important considerations`: - -```python - -from trulens_eval.database.utils import _copy_database - -help(_copy_database) -``` - -Copy all data from the source database into an EMPTY target database: +Run the below: -```python +1. `cd trulens/trulens_eval` -from trulens_eval.database.utils import _copy_database +2. Run the tests with the requisite env vars. -_copy_database( - src_url="", - tgt_url="" -) -``` + ```bash + HUGGINGFACE_API_KEY="" \ + OPENAI_API_KEY="" \ + PINECONE_API_KEY="" \ + PINECONE_ENV="" \ + HUGGINGFACEHUB_API_TOKEN="" \ + python -m pytest tests/docs_notebooks -k backwards_compat + ``` diff --git a/mkdocs.yml b/mkdocs.yml index 384957186..92a6ab758 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -66,6 +66,7 @@ plugins: - https://docs.pydantic.dev/latest/objects.inv - https://typing-extensions.readthedocs.io/en/latest/objects.inv - https://docs.llamaindex.ai/en/stable/objects.inv + - https://docs.sqlalchemy.org/en/20/objects.inv options: extensions: - pydantic: { schema: true } @@ -257,7 +258,10 @@ nav: - trulens_eval/api/endpoint/index.md - OpenAI: trulens_eval/api/endpoint/openai.md - 𝄒 Instruments: trulens_eval/api/instruments.md - - πŸ—„ Database: trulens_eval/api/db.md + - πŸ—„ Database: + - trulens_eval/api/database/index.md + - ✨ Migration: trulens_eval/api/database/migration.md + - πŸ§ͺ SQLAlchemy: trulens_eval/api/database/sqlalchemy.md - Utils: # - trulens_eval/api/utils/index.md - trulens_eval/api/utils/python.md @@ -270,6 +274,7 @@ nav: - 🧭 Design: trulens_eval/contributing/design.md - βœ… Standards: trulens_eval/contributing/standards.md - πŸ’£ Tech Debt: trulens_eval/contributing/techdebt.md + - ✨ Database Migration: trulens_eval/contributing/migration.md - ❓ Explain: # PLACEHOLDER: - trulens_explain/index.md - Getting Started: diff --git a/trulens_eval/Makefile b/trulens_eval/Makefile index 20a1c7a7a..a8b7ea1c8 100644 --- a/trulens_eval/Makefile +++ b/trulens_eval/Makefile @@ -90,6 +90,10 @@ test-database: $(CONDA); python -m unittest discover tests.integration.test_database docker compose --file docker/test-database.yaml down +# These tests all operate on local file databases and don't require docker. +test-database-specification: + $(CONDA); python -m unittest discover tests.integration.test_database -k TestDBSpecifications + # The next 3 database migration/versioning tests: test-database-versioning: test-database-v2migration test-database-legacy-migration test-database-future diff --git a/trulens_eval/docker/test-database.yaml b/trulens_eval/docker/test-database.yaml index b449ff594..7001e6539 100644 --- a/trulens_eval/docker/test-database.yaml +++ b/trulens_eval/docker/test-database.yaml @@ -1,6 +1,6 @@ # Docker compose environment setup for running -# integration tests of `trulens_eval.db_v2` -# Use with `make test-it-db-v2` +# integration tests for `trulens_eval.database.sqlalchemy` +# Use with `make test-database`. version: "3.9" diff --git a/trulens_eval/examples/experimental/.gitignore b/trulens_eval/examples/experimental/.gitignore new file mode 100644 index 000000000..1c759e6b5 --- /dev/null +++ b/trulens_eval/examples/experimental/.gitignore @@ -0,0 +1,2 @@ +default.sqlite +paul_graham_essay.txt diff --git a/trulens_eval/examples/experimental/default.sqlite b/trulens_eval/examples/experimental/default.sqlite deleted file mode 100644 index e65a4a1289676b8d6b603b1b626932a2c72643dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42446848 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 z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C7hGCsehhcKVFpMu8hQ&jNVgB}ESb6y{OrKeK zOnFUtMelA@{y7Yz4O078`DWujRR2%cept`Fn~i(ENo8&G>zd<(&3jPgCiQt&`9fnJ z((?(GYxR8d`t{xEHyX27Y0mkZdcITTsrC75eWuOvnCe&6zH#-ft8Y;r*;*b{xu|?! z{qNoQ);oD`{o2#?X4Nk$U#tB`l`pK%ts4LJa!P4WqxQBqu=?lfvsv$7Rlo0+qpQEH zclWQ}ex{GA-ntfhRL^0y9Q%QCR{3M&?@=CGUeI&>MxQS2ZTMTcrn!zQ%YFZ+WHHEXBjn8)4cjkG`Uer43JK4AL_w{Svqt0Pvc^7}tH=okxAn_r+;3sF?EB2d+^6;zRqvk68#_O&`tO>vIaZ$5 z9NU#gln3{`wCp?cPqv=Q*{z#@{mQ2{&$Xqo^FLHJe%c=At!sW|eRi%-ezWDb-_Y1s zSMRsHXnnJfR`$G@RbS43VfjYcv@Fl?9+jQ@{N&2^Fzs9O&TZD&Py0>GvYY+5w$GJ} zW{;_SSMzOITKDV=Js;ir*DD*9)-@d5*v5^H?_Fm+UG`gTZS8e@Z0+yw`I(J>M>)K_ zrGEYP=f5bI)MxoyKcezs<(=iLwLh+TYM*Z2^IARMJi|RI^O(>)XCYpRIp;nS82x{f6F+4s8whto>1y|5N%+%s$q0 zV`p!y&mCH4<0kj2{A16zEgO^#%h9#(*LR*(|ITK3W#4W;EBUN6&*Im$HFoH(4SSV0 zl=_aA-(9cdG3u_*cW8|tssCsC=KU)BO-Qe6E=a$Xu-yGBW&eqibXXezLs0w$uCOTD3i(K8Kg?^7ORcUEO?rXWsfo$CUe& z`iwfOA?tbb4g2?;+vo@N{ZZpisr}sMt3JzQdS&HzOW&Nms~k|4XZ4^m?fqX%`fLTh|q} zeY-Sfa%62g_U_>F>~c_fX31n_-;&$P9%Z-k;oBxydlByIkkmWvz1K zGB1;o&&sIr|0(}2|0sVinJ%s^e=NT(*OaTvRV9bTW#!WHt8z)XxLlOWNy9LlUA|LJ zC?}Tg#qhrJ{_=tHq4Lr4sq*RanQ~hBVmUqMW#0qJGs-??@3LpvqwHSt9Cj_OZRnhb zTqk$#{MIe)ZPY$T>y&Lf+gEo^8IGE7x}5XC>SvbLFgmH6SD*jZ=SJlt?V+<6Wj4xe zIIDEt!x`mU<=5q^lEd)3^83G8gmvoa~2-LO2nJV$pecP<;3 zJCzN~?MriwZdbY=qt1WS-5CB{`YjEe+i+>?IJx%wm+stX^Rij(e=0vJ=l8rtW%ps| zjE5hW);3&M`aO-dEL)ZB$`0iTWtY-9jh<5a4UC>zI>XV^N@qISzbwz_TP`R{S*7F(nz40fqYR>5) zwdJ|kyZTD)52{~l8l6zvNo6@tYoE0C@tU$x{g!w2qS}V)JN92jljYdfJAO#@&SCWN z>c8%NhO-A(exdRawYR_VUezB~zs_aSoRfPt#}&1|zVeg3>-;B;8Fd!JPPOMaZhzCq z*1mOnxm|1ecKz;9pUZoGTKz8T-SQq}Iy|Z}=h45)f2)76e7(HC$2wYJ+-Zqs+Wqmx}KpI?q>uHW?h>BcS3 z`UmAF)qh%^R36y4S5|JDQNPbc??=z6Y(MkH&ra!Ydecn$-A$K$`rfp?PrLKeTxQqQ z_gmG!TsrSr<>c*^%Rb-i-8$7bseW{MZ_lr7{?+zU^`~gwxINE4Q#PvaRgG`1$$35RSN)>ezR~jz z)i0|&tn!@7D_cWzO;4(R*Rp^8k1EUO-&WRd{HD_V7-ccf(mw(O2oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PJ{9 z7MOl#7$!Fi!}yPte;PMr^?ygt z%dxxl{>^>o$JO`g{VjWbc>V8Mzik@-f!hDnb9)*6u6()Yuh#E~>hJ3Pw!Ld#(@dtf zYV3NIcQ47ZjKvQe|u&9 zC(Sv|a@M~-FlbhqQ0Zo*XJ(PTl-|*^VPl2V!VBQnq$0v?H?`2)~Ef?cdG6F z)t_3PSRPrntGzW$m-C!ey}t9lIiHm8Hug=GUuoQatz&t;Go;?^iyj@|?=*^S}0P?aI@;N4qpn?V}4?N9R9lO^bW(={FTW_=-TA#5yFqzw`BH7~Z`|@b-Hk;? zi`FqZw{h7`530PXoK}11y~tiu%R^_zA!)2++9YwM28a-ZG2=gRrsr8P`l~d^`Ptfbs_foOA6C}uxqZ%Z8z0m2=NjL+&$`p2 z92ZaNeczfi$6|SZ?pB}W9y_nuv5o0$M(uz6<;t(senjnmD1R>3mA^IL^2`n|jhQc< z`<={RSdJ`5HRsZ&c_+6oy`TJ`Z*>=^hgNo00Zp6cfNmVztgPe z-LH8@>-cbGJ_5Vua*Qx%y@`dt&+FI*4*Kyw; zcYns))ceqR%JgQ{8(wY~4ZrmqI z<3}r%KO2U1`_|+=Wwo|VYWqoLW}`!zYoq2kxNlt2+*wWX8J|#}FZaH6j21mVyz)OK zi}{cG&SM($g!*1l-P(6#qPL-QC*F$T6V$YZN{H(@pU3p#4x2pd2`Y-)j%e-$b zx=*9?OZ%SPzV;_qZrJmQ)%UF4U6{6~X=@p`tVMgCbtmS}=y_?lTkCm9Wow#0uXmm0 zEYI;9>wIY6Z4KjB_wHAvvBNIqu-b0gH}|EqO|Ynr19;0@{e*& zxw>4^JP)qCptU@#^32kCOukx9FCQ+Q)#T*T8YZtRFDC(5STQv7=TVsD$W_@S! zxXSi3=`O8o*t=uv*M27lR{o{u^BQxRc- z^Uc0pe%JFll^d6Plv(*!Z9lAR-?QbKcW9p4$6MvSZ120H);aoUIjwx9Tv#qD-PKX& zH0t}K_B^_#TwAVde1|_?&U53^_s6$xuJtS1(|D7zS-EfDzEkCkN_!d(X{|@suj=^e z<$&h;M7h3w{-hjNo>F!#-*26nPrgxJQ=i|L$2PW1KVDmBGRt6oSORt#h5W-$my!+^#J5+ZhZymfj7|Eo&P0`TBK!^Mfk; z?sQ)L4V61ow(m*no^4av`$@Ko=9(|9TlXTXad&sNR`r+Fp7ZF8+P>5HhgZJ8wkP!N zgr4{8xphr%THD5r>3%Qvs(%jit;>l$A6cJm>(lq9y_@&F(W$L-zxrR$_y17)F7?T8 z{N3vRQ`-&YwCdgI@sI2Os`_>oqhI!X`{wLyhUIUd_oKU4Z``nT>D|yehUb*_J=~-| zHy?)8Z&o@ze@h;#e=q+i-PhHBl{{Ae`~Qx6SkwJkGcMCIEAz4_E9FKd^EI94nzhS1C6_gw z*_w4rK5K4KR!eth%`Hp6vo*IV`L0>7tY0=L-IFyLui3C{RPIo^gKIKhbLVoGa@W$G zS#!6tY3Y2{+@svHY*y}7?p^LvHZS)r_bc}=4=fKVTa+!!R^`E^JF(^=W$W_LvQ2qd zc|_T^Y*)4~JCsM3N0lARPUX?%vE^}P=koaSg!06)OWCzNsXV#tR-RgRFME_d%US>@T~;PRaE+;T`cv>a9rFGrN;mFJfil>cMz-eV-m z@4|quALlceg8)AN5h2l@1T4heP*q*eCE;SjAzxU>a9jk)IgP5jYj%e1=^jt_obOl` zf)8^fCJEt@@Ja*;uNa3sAPIpaKma8;Sa~QCF(5$#iG&nkB@u}L3G%I;o!!~F-I>|- z`h0u$S^Kx!-Sz7F)bCM!s_*xAIm%Z@xf11TqI_+XzZm7~qP#oGvr)c2%6p=GLzHif z@|U9gruWX%C|=OwkY2o!M2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF 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 z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs 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 z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N 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 zpnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim} z0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7j zD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUg zfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7> z3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36A zpnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim} z0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7j zD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUg zfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7> z3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36A zpnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim} z0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7j zD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUg zfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7> z3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36A zpnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim} z0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7j zD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUg zfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7> z3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36A zpnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim} z0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7j zD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUg zfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7> z3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36A zpnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim} z0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7j zD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUg zfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7> z3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36A zpnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim} z0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7j zD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUg zfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7> z3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36A zpnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim}0tzUgfC36Apnw7jD4>7>3Mim} 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 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 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 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 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 z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ 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 zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly 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 zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 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 z 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

    ee<;M#+4ggy76T^L~cw-eWPDZMY-dt?y0O- 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%0AU#< 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

    la`7 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�#?A92ZcT>AaZ_^R_v-P*+8mSBXy3GEeg| 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%0DRosQi=i&&t0j|Em1E@*m27D*vVYxAH&7jy+Ya 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%0AbXuFgxy=}6) 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 G|Nj9>{v float: # noqa + """Test feedback that does nothing except return length of input""" + return float(len(text)) @contextmanager -def clean_db(alias: str) -> SqlAlchemyDB: - with TemporaryDirectory() as tmp: +def clean_db( + alias: str, + **kwargs: Dict[str, Any] +) -> Iterator[SQLAlchemyDB]: + """Yields a clean database instance for the given database type. + + Args: + alias: Database type to use from the following: `sqlite_file`, + `sqlite_memory`, `postgres`, `mysql`. + + kwargs: Additional keyword arguments to pass to the database + constructor. + """ + + with TemporaryDirectory(ignore_cleanup_errors=True) as tmp: + # NOTE: The parameters below come from the docker definition in the + # `trulens_eval/docker/test-database.yaml` file. url = { + "sqlite_memory": + "sqlite:///:memory:", + # TODO: Test this one more. + # NOTE: Sqlalchemy docs say this should be written + # "sqlite://:memory:" but that gives an error on mac at least. "sqlite_file": - f"sqlite:///{Path(tmp).joinpath('test.sqlite')}", + f"sqlite:///{Path(tmp) / 'test.sqlite'}", "postgres": "postgresql+psycopg2://pg-test-user:pg-test-pswd@localhost/pg-test-db", "mysql": "mysql+pymysql://mysql-test-user:mysql-test-pswd@localhost/mysql-test-db", }[alias] - db = SqlAlchemyDB.from_db_url(url) + db = SQLAlchemyDB.from_db_url(url, **kwargs) - downgrade_db( - db.engine, revision="base" - ) # drops all tables except `alembic_version` - - with db.engine.connect() as conn: - conn.execute(text("DROP TABLE alembic_version")) + # NOTE(piotrm): I couldn't figure out why these things were done here. + #downgrade_db( + # db.engine, revision="base" + #) # drops all tables except `db.version_table` + #with db.engine.connect() as conn: + # conn.execute(text(f"DROP TABLE {db.table_prefix}version_table")) yield db @@ -204,12 +353,15 @@ def assert_revision( engine: Engine, expected: Union[None, str], status: Literal["in_sync", "behind"] ): + """Asserts that the version of the database `engine` is `expected` and + has the `status` flag set.""" + revisions = DbRevisions.load(engine) assert revisions.current == expected, f"{revisions.current} != {expected}" assert getattr(revisions, status) -def _test_db_migration(db: SqlAlchemyDB): +def _test_db_migration(db: SQLAlchemyDB): engine = db.engine history = get_revision_history(engine) curr_rev = None @@ -231,36 +383,112 @@ def _test_db_migration(db: SqlAlchemyDB): assert_revision(engine, None, "behind") -def _test_db_consistency(db: SqlAlchemyDB): +def debug_dump(db: SQLAlchemyDB): + """Debug function to dump all tables in the database.""" + + print(" # registry") + for n, t in db.orm.registry.items(): + print(" ", n, t) + + with db.session.begin() as session: + print(" # feedback_def") + ress = session.query(db.orm.FeedbackDefinition).all() + for res in ress: + print(" feedback_def", res.feedback_definition_id) + + print(" # app") + ress = session.query(db.orm.AppDefinition).all() + for res in ress: + print(" app", res.app_id) # no feedback results + for subres in res.records: + print(" record", subres.record_id) + + print(" # record") + ress = session.query(db.orm.Record).all() + for res in ress: + print(" record", res.record_id) + for subres in res.feedback_results: + print(" feedback_result", subres.feedback_result_id) + + print(" # feedback") + ress = session.query(db.orm.FeedbackResult).all() + for res in ress: + print(" feedback_result", res.feedback_result_id, res.feedback_definition) + +def _test_db_consistency(test: TestCase, db: SQLAlchemyDB): db.migrate_database() # ensure latest revision _populate_data(db) - with db.Session.begin() as session: - session.delete( - session.query(orm.AppDefinition).one() - ) # delete the only app - assert session.query(orm.Record - ).all() == [] # records are deleted in cascade - assert session.query(orm.FeedbackResult).all() == [ - ] # feedbacks results are deleted in cascade - session.query(orm.FeedbackDefinition - ).one() # feedback defs are preserved + + print("### before delete app:") + debug_dump(db) + + with db.session.begin() as session: + # delete the only app + session.delete(session.query(db.orm.AppDefinition).one()) + + # records are deleted in cascade + test.assertEqual( + session.query(db.orm.Record).all(), + [], + "Expected no records." + ) + + # feedbacks results are deleted in cascade + test.assertEqual( + session.query(db.orm.FeedbackResult).all(), + [], + "Expected no feedback results." + ) + + # feedback defs are preserved + test.assertEqual( + len(session.query(db.orm.FeedbackDefinition).all()), 1, + "Expected exactly one feedback to be in the db." + ) _populate_data(db) - with db.Session.begin() as session: - session.delete( - session.query(orm.Record).one() - ) # delete the only record - assert session.query(orm.FeedbackResult).all() == [ - ] # feedbacks results are deleted in cascade - session.query(orm.AppDefinition).one() # apps are preserved - session.query(orm.FeedbackDefinition - ).one() # feedback defs are preserved + print("### before delete record:") + debug_dump(db) + + with db.session.begin() as session: + test.assertEqual( + len(session.query(db.orm.Record).all()), 1, + "Expected exactly one record." + ) + + test.assertEqual( + len(session.query(db.orm.FeedbackResult).all()), 1, + "Expected exactly one feedback result." + ) + + # delete the only record + session.delete(session.query(db.orm.Record).one()) + + # feedbacks results are deleted in cascade + test.assertEqual( + session.query(db.orm.FeedbackResult).all(), [], + "Expected no feedback results." + ) + + # apps are preserved + test.assertEqual( + len(session.query(db.orm.AppDefinition).all()), 1, + "Expected an app." + ) + + # feedback defs are preserved. Note that this requires us to use the + # same feedback_definition_id in _populate_data. + test.assertEqual( + len(session.query(db.orm.FeedbackDefinition).all()), 1, + "Expected a feedback definition." + ) def _populate_data(db: DB): tru = Tru() tru.db = db # because of the singleton behavior, db must be changed manually + fb = Feedback( imp=MockFeedback().length, feedback_definition_id="mock", @@ -268,14 +496,18 @@ def _populate_data(db: DB): ) app = TruBasicApp( text_to_text=lambda x: x, - app_id="test", + # app_id="test", db=db, feedbacks=[fb], - feedback_mode=FeedbackMode.WITH_APP, + feedback_mode=FeedbackMode.WITH_APP_THREAD, ) _, rec = app.with_record(app.app.__call__, "boo") - return fb, app, rec + print("waiting for feedback results") + for res in rec.wait_for_feedback_results(): + print(" ", res) + + return fb, app, rec if __name__ == '__main__': main() diff --git a/trulens_eval/trulens_eval/Leaderboard.py b/trulens_eval/trulens_eval/Leaderboard.py index bacc9114b..a48cebce2 100644 --- a/trulens_eval/trulens_eval/Leaderboard.py +++ b/trulens_eval/trulens_eval/Leaderboard.py @@ -1,18 +1,18 @@ -import argparse import asyncio import json import math -import sys # https://github.com/jerryjliu/llama_index/issues/7244: asyncio.set_event_loop(asyncio.new_event_loop()) from millify import millify -import numpy as np import streamlit as st from streamlit_extras.switch_page_button import switch_page -from trulens_eval.db_migration import MIGRATION_UNKNOWN_STR +from trulens_eval.database import base as mod_db +from trulens_eval.database.legacy.migration import MIGRATION_UNKNOWN_STR +from trulens_eval.utils.streamlit import init_from_args +from trulens_eval.ux.page_config import set_page_config from trulens_eval.ux.styles import CATEGORY st.runtime.legacy_caching.clear_cache() @@ -22,13 +22,19 @@ from trulens_eval.ux.components import draw_metadata from trulens_eval.ux.page_config import set_page_config -set_page_config(page_title="Leaderboard") +if __name__ == "__main__": + # If not imported, gets args from command line and creates Tru singleton + init_from_args() + -database_url = None +def leaderboard(): + """Render the leaderboard page.""" + set_page_config(page_title="Leaderboard") + + tru = Tru( + ) # get singletone whether this file was imported or executed from command line. -def streamlit_app(): - tru = Tru(database_url=database_url) lms = tru.db # Set the title and subtitle of the app @@ -40,9 +46,9 @@ def streamlit_app(): feedback_defs = lms.get_feedback_defs() feedback_directions = { ( - row.feedback_json.get("supplied_name", "") or - row.feedback_json["implementation"]["name"] - ): row.feedback_json.get("higher_is_better", True) + row.feedback_json.get("supplied_name", "") or row.feedback_json["implementation"]["name"] + ): + row.feedback_json.get("higher_is_better", True) for _, row in feedback_defs.iterrows() } @@ -144,23 +150,5 @@ def streamlit_app(): st.markdown("""---""") -# Define the main function to run the app -def main(): - streamlit_app() - - if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument("--database-url", default=None) - - try: - args = parser.parse_args() - except SystemExit as e: - # This exception will be raised if --help or invalid command line arguments - # are used. Currently, streamlit prevents the program from exiting normally, - # so we have to do a hard exit. - sys.exit(e.code) - - database_url = args.database_url - - main() + leaderboard() diff --git a/trulens_eval/trulens_eval/__init__.py b/trulens_eval/trulens_eval/__init__.py index 8391dff77..9e63e3699 100644 --- a/trulens_eval/trulens_eval/__init__.py +++ b/trulens_eval/trulens_eval/__init__.py @@ -10,8 +10,6 @@ - `tests/` -- `db_migration.py` - - `__init__.py` - all UI/dashboard components, `pages`, `react_components`, `ux`, `Leaderboard.py`, `appui.py` @@ -56,8 +54,6 @@ - `app.py` -- `db.py` - - `instruments.py` - `schema.py` @@ -77,14 +73,14 @@ - `python.py` `text.py` `generated.py` `containers.py` `imports.py` TO PLACE +- `database/` +- `feedback/v2/` +- `utils/command_line.py` +- `utils/notebook_utils.py` +- `utils/asynchro.py` +- `utils/text.py` +- `utils/__init__.py` -`database/` -`feedback/v2/` -`utils/command_line.py` -`utils/notebook_utils.py` -`utils/asynchro.py` -`utils/text.py` -`utils/__init__.py` """ __version_info__ = (0, 27, 2) diff --git a/trulens_eval/trulens_eval/app.py b/trulens_eval/trulens_eval/app.py index df0e786a2..89c980acf 100644 --- a/trulens_eval/trulens_eval/app.py +++ b/trulens_eval/trulens_eval/app.py @@ -1,7 +1,3 @@ -""" -Generalized root type for various libraries like `llama_index` and `langchain` . -""" - from __future__ import annotations from abc import ABC @@ -15,10 +11,9 @@ from pprint import PrettyPrinter import threading from threading import Lock -from typing import ( - Any, Awaitable, Callable, ClassVar, Dict, Hashable, Iterable, List, - Optional, Sequence, Set, Tuple, Type, TypeVar -) +from typing import (Any, Awaitable, Callable, ClassVar, Dict, Hashable, + Iterable, List, Optional, Sequence, Set, Tuple, Type, + TypeVar, Union) import pydantic @@ -442,11 +437,22 @@ def finish_record( class App(AppDefinition, WithInstrumentCallbacks, Hashable): - """ - Generalization of an app recorder. - + """Base app recorder type. + Non-serialized fields here while the serialized ones are defined in [AppDefinition][trulens_eval.schema.AppDefinition]. + + This class is abstract. Use one of these concrete subclasses as appropriate: + - [TruLlama][trulens_eval.tru_llama.TruLlama] for _LlamaIndex_ apps. + - [TruChain][trulens_eval.tru_chain.TruChain] for _LangChain_ apps. + - [TruRails][trulens_eval.tru_rails.TruRails] for _NeMo Guardrails_ + apps. + - [TruVirtual][trulens_eval.tru_virtual.TruVirtual] for recording + information about invocations of apps without access to those apps. + - [TruCustomApp][trulens_eval.tru_custom_app.TruCustomApp] for custom + apps. These need to be decorated to have appropriate data recorded. + - [TruBasicApp][trulens_eval.tru_basic_app.TruBasicApp] for apps defined + solely by a string-to-string method. """ model_config: ClassVar[dict] = { @@ -468,13 +474,13 @@ class App(AppDefinition, WithInstrumentCallbacks, Hashable): (if not already) and used. """ - db: Optional[trulens_eval.db.DB] = pydantic.Field( + db: Optional[trulens_eval.database.base.DB] = pydantic.Field( default=None, exclude=True ) """Database interface. If this is not provided, a singleton - [SqlAlchemyDB][trulens_eval.database.sqlalchemy_db.SqlAlchemyDB] will be + [SQLAlchemyDB][trulens_eval.database.sqlalchemy.SQLAlchemyDB] will be made (if not already) and used. """ @@ -766,8 +772,10 @@ def _extract_content(self, value): else: # Recursively extract content from nested pydantic models return { - k: self._extract_content(v) if - isinstance(v, (pydantic.BaseModel, dict, list)) else v + k: + self._extract_content(v) if + isinstance(v, + (pydantic.BaseModel, dict, list)) else v for k, v in value.dict().items() } elif isinstance(value, dict): @@ -779,8 +787,8 @@ def _extract_content(self, value): # Recursively extract content from nested dictionaries return { k: - self._extract_content(v) if isinstance(v, - (dict, list)) else v + self._extract_content(v) if isinstance(v, (dict, + list)) else v for k, v in value.items() } elif isinstance(value, list): @@ -1276,12 +1284,21 @@ def _throw_dep_message( """ ) - def _add_future_feedback(self, future_result: Future[FeedbackResult]): + def _add_future_feedback( + self, future_or_result: Union[FeedbackResult, Future[FeedbackResult]] + ) -> None: """ Callback used to add feedback results to the database once they are - done. See `App._handle_record`. + done. + + See [_handle_record][trulens_eval.app.App._handle_record]. """ - res = future_result.result() + + if isinstance(future_or_result, Future): + res = future_or_result.result() + else: + res = future_or_result + self.tru.add_feedback(res) def _handle_record( @@ -1479,4 +1496,4 @@ def print_instrumented_components(self) -> None: # NOTE: Cannot App.model_rebuild here due to circular imports involving tru.Tru -# and db.DB. Will rebuild each App subclass instead. +# and database.base.DB. Will rebuild each App subclass instead. diff --git a/trulens_eval/trulens_eval/database/base.py b/trulens_eval/trulens_eval/database/base.py new file mode 100644 index 000000000..731e2a19d --- /dev/null +++ b/trulens_eval/trulens_eval/database/base.py @@ -0,0 +1,315 @@ +import abc +from datetime import datetime +import logging +from pprint import PrettyPrinter +from typing import Any, Dict, Iterable, List, Optional, Sequence, Tuple, Union + +from merkle_json import MerkleJson +import pandas as pd + +from trulens_eval import __version__ +from trulens_eval.app import App +from trulens_eval.database.legacy import migration +from trulens_eval.schema import AppDefinition +from trulens_eval.schema import AppID +from trulens_eval.schema import FeedbackDefinition +from trulens_eval.schema import FeedbackDefinitionID +from trulens_eval.schema import FeedbackResult +from trulens_eval.schema import FeedbackResultID +from trulens_eval.schema import FeedbackResultStatus +from trulens_eval.schema import Record +from trulens_eval.schema import RecordID +from trulens_eval.utils.json import json_str_of_obj +from trulens_eval.utils.serial import JSON +from trulens_eval.utils.serial import JSONized +from trulens_eval.utils.serial import SerialModel + +mj = MerkleJson() +NoneType = type(None) + +logger = logging.getLogger(__name__) + +MULTI_CALL_NAME_DELIMITER = ":::" + +DEFAULT_DATABASE_PREFIX: str = "trulens_" +"""Default prefix for table names for trulens_eval to use. + +This includes alembic's version table. +""" + +DEFAULT_DATABASE_FILE: str = "default.sqlite" +"""Filename for default sqlite database. + +The sqlalchemy url for this default local sqlite database is `sqlite:///default.sqlite`. +""" + +DEFAULT_DATABASE_REDACT_KEYS: bool = False +"""Default value for option to redact secrets before writing out data to database.""" + + +class DB(SerialModel, abc.ABC): + """Abstract definition of databases used by trulens_eval. + + [SQLAlchemyDB][trulens_eval.database.sqlalchemy.SQLAlchemyDB] is the main + and default implementation of this interface. + """ + + redact_keys: bool = DEFAULT_DATABASE_REDACT_KEYS + """Redact secrets before writing out data.""" + + table_prefix: str = DEFAULT_DATABASE_PREFIX + """Prefix for table names for trulens_eval to use. + + May be useful in some databases where trulens is not the only app. + """ + + def _json_str_of_obj(self, obj: Any) -> str: + return json_str_of_obj(obj, redact_keys=self.redact_keys) + + @abc.abstractmethod + def reset_database(self): + """Delete all data.""" + + raise NotImplementedError() + + @abc.abstractmethod + def migrate_database(self, prior_prefix: Optional[str] = None): + """Migrade the stored data to the current configuration of the database. + + Args: + prior_prefix: If given, the database is assumed to have been + reconfigured from a database with the given prefix. If not + given, it may be guessed if there is only one table in the + database with the suffix `alembic_version`. + """ + raise NotImplementedError() + + @abc.abstractmethod + def check_db_revision(self): + """Check that the database is up to date with the current trulens_eval + version. + + Raises: + ValueError: If the database is not up to date. + """ + + @abc.abstractmethod + def insert_record( + self, + record: Record, + ) -> RecordID: + """ + Upsert a `record` into the database. + + Args: + record: The record to insert or update. + + Returns: + The id of the given record. + """ + + raise NotImplementedError() + + @abc.abstractmethod + def insert_app(self, app: AppDefinition) -> AppID: + """ + Upsert an `app` into the database. + + Args: + app: The app to insert or update. Note that only the + [AppDefinition][trulens_eval.schema.AppDefinition] parts are serialized + hence the type hint. + + Returns: + The id of the given app. + """ + + raise NotImplementedError() + + @abc.abstractmethod + def insert_feedback_definition( + self, feedback_definition: FeedbackDefinition + ) -> FeedbackDefinitionID: + """ + Upsert a `feedback_definition` into the databaase. + + Args: + feedback_definition: The feedback definition to insert or update. + Note that only the + [FeedbackDefinition][trulens_eval.schema.FeedbackDefinition] + parts are serialized hence the type hint. + + Returns: + The id of the given feedback definition. + """ + + raise NotImplementedError() + + @abc.abstractmethod + def get_feedback_defs( + self, + feedback_definition_id: Optional[FeedbackDefinitionID] = None + ) -> pd.DataFrame: + """Retrieve feedback definitions from the database. + + Args: + feedback_definition_id: if provided, only the + feedback definition with the given id is returned. Otherwise, + all feedback definitions are returned. + + Returns: + A dataframe with the feedback definitions. + """ + + raise NotImplementedError() + + @abc.abstractmethod + def insert_feedback( + self, + feedback_result: FeedbackResult, + ) -> FeedbackResultID: + """Upsert a `feedback_result` into the the database. + + Args: + feedback_result: The feedback result to insert or update. + + Returns: + The id of the given feedback result. + """ + + raise NotImplementedError() + + @abc.abstractmethod + def get_feedback( + self, + record_id: Optional[RecordID] = None, + feedback_result_id: Optional[FeedbackResultID] = None, + feedback_definition_id: Optional[FeedbackDefinitionID] = None, + status: Optional[Union[FeedbackResultStatus, + Sequence[FeedbackResultStatus]]] = None, + last_ts_before: Optional[datetime] = None, + offset: Optional[int] = None, + limit: Optional[int] = None, + shuffle: Optional[bool] = None + ) -> pd.DataFrame: + """Get feedback results matching a set of optional criteria: + + Args: + record_id: Get only the feedback for the given record id. + + feedback_result_id: Get only the feedback for the given feedback + result id. + + feedback_definition_id: Get only the feedback for the given feedback + definition id. + + status: Get only the feedback with the given status. If a sequence + of statuses is given, all feedback with any of the given + statuses are returned. + + last_ts_before: get only results with `last_ts` before the + given datetime. + + offset: index of the first row to return. + + limit: limit the number of rows returned. + + shuffle: shuffle the rows before returning them. + """ + + raise NotImplementedError() + + @abc.abstractmethod + def get_feedback_count_by_status( + self, + record_id: Optional[RecordID] = None, + feedback_result_id: Optional[FeedbackResultID] = None, + feedback_definition_id: Optional[FeedbackDefinitionID] = None, + status: Optional[Union[FeedbackResultStatus, + Sequence[FeedbackResultStatus]]] = None, + last_ts_before: Optional[datetime] = None, + offset: Optional[int] = None, + limit: Optional[int] = None, + shuffle: bool = False + ) -> Dict[FeedbackResultStatus, int]: + """Get count of feedback results matching a set of optional criteria grouped by + their status. + + See [get_feedback][trulens_eval.database.base.DB.get_feedback] for the meaning of + the the arguments. + + Returns: + A mapping of status to the count of feedback results of that status + that match the given filters. + """ + + raise NotImplementedError() + + @abc.abstractmethod + def get_app(self, app_id: AppID) -> Optional[JSONized[App]]: + """Get the app with the given id from the database. + + Returns: + The jsonized version of the app with the given id. Deserialization + can be done with + [App.model_validate][trulens_eval.app.App.model_validate]. + + """ + raise NotImplementedError() + + @abc.abstractmethod + def get_apps(self) -> Iterable[JSON]: + """Get all apps.""" + + raise NotImplementedError() + + @abc.abstractmethod + def get_records_and_feedback( + self, + app_ids: Optional[List[AppID]] = None + ) -> Tuple[pd.DataFrame, Sequence[str]]: + """Get records fom the database. + + Args: + app_ids: If given, retrieve only the records for the given apps. + Otherwise all apps are retrieved. + + Returns: + A dataframe with the records. + + A list of column names that contain feedback results. + """ + raise NotImplementedError() + + +def versioning_decorator(func): + """A function decorator that checks if a DB is up to date. + + Check that the database is up to date with the current + trulens_eval version (or rather the db version used in the current + trulens_eval version). + """ + + def wrapper(self, *args, **kwargs): + migration._migration_checker(db=self) + returned_value = func(self, *args, **kwargs) + return returned_value + + return wrapper + + +def for_all_methods(decorator): + """ + A class decorator that will decorate all DB Access methods except for + instantiations, db resets, or version checking. + """ + + def decorate(cls): + for attr in cls.__dict__: + if not str(attr).startswith("_") and str(attr) not in [ + "get_meta", "reset_database", "migrate_database" + ] and callable(getattr(cls, attr)): + setattr(cls, attr, decorator(getattr(cls, attr))) + return cls + + return decorate diff --git a/trulens_eval/trulens_eval/database/exceptions.py b/trulens_eval/trulens_eval/database/exceptions.py index 0391f4e0b..ee43aef9f 100644 --- a/trulens_eval/trulens_eval/database/exceptions.py +++ b/trulens_eval/trulens_eval/database/exceptions.py @@ -2,27 +2,64 @@ class DatabaseVersionException(Exception): + """Exceptions for database version problems.""" class Reason(Enum): + """Reason for the version exception.""" + AHEAD = 1 + """Initialized database is ahead of the stored version.""" + BEHIND = 2 + """Initialized database is behind the stored version.""" + + RECONFIGURED = 3 + """Initialized database differs in configuration compared to the stored + version. + + Configuration differences recognized: + - table_prefix + + """ - def __init__(self, msg: str, reason: Reason): + def __init__(self, msg: str, reason: Reason, **kwargs): self.reason = reason + for key, value in kwargs.items(): + setattr(self, key, value) super().__init__(msg) @classmethod def ahead(cls): + """Create an ahead variant of this exception.""" + return cls( "Database schema is ahead of the expected revision. " - "Please update to a later release of `trulens_eval`", + "Please update to a later release of `trulens_eval`.", cls.Reason.AHEAD ) @classmethod def behind(cls): + """Create a behind variant of this exception.""" + return cls( "Database schema is behind the expected revision. " - "Please upgrade it by running `tru.migrate_database()` or reset it by running `tru.reset_database()`", - cls.Reason.BEHIND + "Please upgrade it by running `tru.migrate_database()` " + "or reset it by running `tru.reset_database()`.", cls.Reason.BEHIND + ) + + @classmethod + def reconfigured(cls, prior_prefix: str): + """Create a reconfigured variant of this exception. + + The only present reconfiguration that is recognized is a table_prefix + change. A guess as to the prior prefix is included in the exception and + message. + """ + return cls( + "Database has been reconfigured. " + f"Please update it by running `tru.migrate_database(prior_prefix=\"{prior_prefix}\")`" + " or reset it by running `tru.reset_database()`.", + cls.Reason.RECONFIGURED, + prior_prefix=prior_prefix ) diff --git a/trulens_eval/trulens_eval/db_migration.py b/trulens_eval/trulens_eval/database/legacy/migration.py similarity index 94% rename from trulens_eval/trulens_eval/db_migration.py rename to trulens_eval/trulens_eval/database/legacy/migration.py index fc90fd27f..217dedc93 100644 --- a/trulens_eval/trulens_eval/db_migration.py +++ b/trulens_eval/trulens_eval/database/legacy/migration.py @@ -65,20 +65,26 @@ class VersionException(Exception): MIGRATION_UNKNOWN_STR = "unknown[db_migration]" -migration_versions: List[str] = ["0.19.0", "0.9.0", "0.3.0", "0.2.0", "0.1.2"] +migration_versions: List[str] = [ + "0.25.2", "0.19.0", "0.9.0", "0.3.0", "0.2.0", "0.1.2" +] def _update_db_json_col( db, table: str, old_entry: tuple, json_db_col_idx: int, new_json: dict ): - """Replaces an old json serialized db column with a migrated/new one + """Replaces an old json serialized db column with a migrated/new one. Args: db (DB): the db object + table (str): the table to update (from the current DB) + old_entry (tuple): the db tuple to update + json_db_col_idx (int): the tuple idx to update - new_json (dict): the new json object to be put in the DB + + new_json (dict): the new json object to be put in the D """ migrate_record = list(old_entry) migrate_record[json_db_col_idx] = json.dumps(new_json) @@ -146,6 +152,12 @@ def unknown_method(self): """ +def migrate_0_25_2(db): + # Change in alchemy version table name. + + pass + + def migrate_0_9_0(db): rename_classinfo = jsonlike_rename_key("__tru_class_info", "tru_class_info") rename_objserial = jsonlike_rename_value("ObjSerial", "Obj") @@ -155,7 +167,7 @@ def migrate_misc(obj): # Old Method format: if isinstance(obj, dict) and "module_name" in obj and "method_name" in obj: - logger.debug(f"migrating RecordAppCallMethod {obj}") + logger.debug("migrating RecordAppCallMethod %s", obj) # example: {'module_name': 'langchain.chains.llm', 'class_name': 'LLMChain', 'method_name': '_call'} return Method( obj=Obj( @@ -179,7 +191,7 @@ def migrate_misc(obj): conn, c = db._connect() c.execute( - f"""SELECT * FROM records""" + """SELECT * FROM records""" ) # Use hardcode names as versions could go through name change rows = c.fetchall() json_db_col_idx = 4 @@ -205,15 +217,15 @@ def migrate_misc(obj): if CLASS_INFO not in new_json: new_json[CLASS_INFO] = Class.of_class(Feedback).model_dump() - logger.debug(f"adding '{CLASS_INFO}'") + logger.debug("adding '%s'", CLASS_INFO) if "initial_app_loader" not in new_json: new_json['initial_app_loader'] = None - logger.debug(f"adding 'initial_app_loader'") + logger.debug("adding 'initial_app_loader'") if "initial_app_loader_dump" not in new_json: new_json['initial_app_loader_dump'] = None - logger.debug(f"adding 'initial_app_loader_dump'") + logger.debug("adding 'initial_app_loader_dump'") _update_db_json_col( db=db, @@ -223,7 +235,7 @@ def migrate_misc(obj): new_json=new_json ) - c.execute(f"""SELECT * FROM apps""") + c.execute("""SELECT * FROM apps""") rows = c.fetchall() json_db_col_idx = 1 for old_entry in tqdm(rows, desc="Migrating Apps DB 0.9.0 to 0.19.0"): @@ -231,11 +243,11 @@ def migrate_misc(obj): if CLASS_INFO not in new_json: new_json[CLASS_INFO] = Class.of_class(AppDefinition).model_dump() - logger.debug(f"adding `{CLASS_INFO}`") + logger.debug("adding `%s`", CLASS_INFO) if "app" not in new_json: new_json['app'] = dict() - logger.debug(f"adding `app`") + logger.debug("adding `app`") _update_db_json_col( db=db, @@ -250,8 +262,12 @@ def migrate_misc(obj): def migrate_0_3_0(db): conn, c = db._connect() - c.execute(f"""ALTER TABLE feedbacks - ADD multi_result TEXT;""") + c.execute( + """ + ALTER TABLE feedbacks + ADD multi_result TEXT; + """ + ) conn.commit() @@ -264,7 +280,7 @@ def migrate_0_2_0(db): conn, c = db._connect() c.execute( - f"""SELECT * FROM records""" + """SELECT * FROM records""" ) # Use hardcode names as versions could go through name change rows = c.fetchall() json_db_col_idx = 7 @@ -290,7 +306,7 @@ def _replace_cost_none_vals(new_json): new_json=new_json ) - c.execute(f"""SELECT * FROM feedbacks""") + c.execute("""SELECT * FROM feedbacks""") rows = c.fetchall() json_db_col_idx = 9 for old_entry in tqdm(rows, desc="Migrating Feedbacks DB 0.2.0 to 0.3.0"): @@ -305,7 +321,7 @@ def _replace_cost_none_vals(new_json): new_json=new_json ) - c.execute(f"""SELECT * FROM feedback_defs""") + c.execute("""SELECT * FROM feedback_defs""") rows = c.fetchall() json_db_col_idx = 1 for old_entry in tqdm(rows, @@ -342,7 +358,7 @@ def migrate_0_1_2(db): conn, c = db._connect() c.execute( - f"""ALTER TABLE records + """ALTER TABLE records RENAME COLUMN chain_id TO app_id; """ ) @@ -352,11 +368,11 @@ def migrate_0_1_2(db): DEFAULT "{MIGRATION_UNKNOWN_STR}";""" ) - c.execute(f"""ALTER TABLE feedbacks + c.execute("""ALTER TABLE feedbacks DROP COLUMN chain_id;""") c.execute( - f"""SELECT * FROM records""" + """SELECT * FROM records""" ) # Use hardcode names as versions could go through name change rows = c.fetchall() json_db_col_idx = 4 @@ -377,7 +393,7 @@ def migrate_0_1_2(db): new_json=new_json ) - c.execute(f"""SELECT * FROM chains""") + c.execute("""SELECT * FROM chains""") rows = c.fetchall() json_db_col_idx = 1 for old_entry in tqdm(rows, desc="Migrating Apps DB 0.1.2 to 0.2.0"): @@ -413,7 +429,8 @@ def migrate_0_1_2(db): "0.1.2": ("0.2.0", migrate_0_1_2), "0.2.0": ("0.3.0", migrate_0_2_0), "0.3.0": ("0.9.0", migrate_0_3_0), - "0.9.0": ("0.19.0", migrate_0_9_0) + "0.9.0": ("0.19.0", migrate_0_9_0), + "0.19.0": ("0.25.2.0", migrate_0_25_2) } @@ -618,7 +635,7 @@ def _serialization_asserts(db) -> None: raise VersionException( f"Migration failed on {table} {col_name} {row[col_idx]}.\n\n{tb}\n\n{validation_fail_advice}" - ) + ) from e def migrate(db) -> None: diff --git a/trulens_eval/trulens_eval/db.py b/trulens_eval/trulens_eval/database/legacy/sqlite.py similarity index 63% rename from trulens_eval/trulens_eval/db.py rename to trulens_eval/trulens_eval/database/legacy/sqlite.py index ad738c53b..979c803f7 100644 --- a/trulens_eval/trulens_eval/db.py +++ b/trulens_eval/trulens_eval/database/legacy/sqlite.py @@ -1,303 +1,39 @@ -import abc +""" +This file contains only deprecated classes and should not be used except for +migrating from very old versions of trulens_eval. +""" + from datetime import datetime import json -import logging from pathlib import Path -from pprint import PrettyPrinter import sqlite3 from typing import Any, ClassVar, Dict, List, Optional, Sequence, Tuple, Union -from merkle_json import MerkleJson import numpy as np import pandas as pd import pydantic from trulens_eval import __version__ -from trulens_eval import db_migration -from trulens_eval.app import App -from trulens_eval.db_migration import MIGRATION_UNKNOWN_STR -from trulens_eval.feedback import Feedback -from trulens_eval.schema import AppDefinition -from trulens_eval.schema import AppID -from trulens_eval.schema import Cost -from trulens_eval.schema import FeedbackDefinition -from trulens_eval.schema import FeedbackDefinitionID -from trulens_eval.schema import FeedbackResult -from trulens_eval.schema import FeedbackResultID -from trulens_eval.schema import FeedbackResultStatus -from trulens_eval.schema import Perf -from trulens_eval.schema import Record -from trulens_eval.schema import RecordID -from trulens_eval.utils.json import json_str_of_obj +from trulens_eval import schema +from trulens_eval.database.base import DB +from trulens_eval.database.base import for_all_methods +from trulens_eval.database.base import MULTI_CALL_NAME_DELIMITER +from trulens_eval.database.base import versioning_decorator +from trulens_eval.database.legacy import migration +from trulens_eval.database.legacy.migration import MIGRATION_UNKNOWN_STR from trulens_eval.utils.serial import JSON -from trulens_eval.utils.serial import JSONized -from trulens_eval.utils.serial import SerialModel from trulens_eval.utils.text import UNICODE_CHECK from trulens_eval.utils.text import UNICODE_CLOCK -mj = MerkleJson() -NoneType = type(None) - -pp = PrettyPrinter() - -logger = logging.getLogger(__name__) - -MULTI_CALL_NAME_DELIMITER = ":::" - class DBMeta(pydantic.BaseModel): """ - Databasae meta data mostly used for migrating from old db schemas. + Database meta data mostly used for migrating from old db schemas. """ trulens_version: Optional[str] - attributes: dict - - -class DB(SerialModel, abc.ABC): - """Abstract definition of databases used by trulens_eval. - - [SqlAlchemyDB][trulens_eval.database.sqlalchemy_db.SqlAlchemyDB] is the main - and default implementation if this specification. - """ - - redact_keys: bool = False - """Redact secrets before writing out data.""" - - def _json_str_of_obj(self, obj: Any) -> str: - return json_str_of_obj(obj, redact_keys=self.redact_keys) - - @abc.abstractmethod - def reset_database(self): - """Delete all data.""" - - raise NotImplementedError() - - @abc.abstractmethod - def insert_record( - self, - record: Record, - ) -> RecordID: - """ - Upsert a `record` into the database. - - Args: - record: The record to insert or update. - - Returns: - The id of the given record. - """ - - raise NotImplementedError() - - @abc.abstractmethod - def insert_app(self, app: AppDefinition) -> AppID: - """ - Upsert an `app` into the database. - - Args: - app: The app to insert or update. Note that only the - [AppDefinition][trulens_eval.schema.AppDefinition] parts are serialized - hence the type hint. - - Returns: - The id of the given app. - """ - - raise NotImplementedError() - - @abc.abstractmethod - def delete_app(self, app_id: AppID) -> None: - """ - Delete an `app` from the database. - - Args: - app_id: The id of the app to delete. - """ - - raise NotImplementedError() - - @abc.abstractmethod - def insert_feedback_definition( - self, feedback_definition: FeedbackDefinition - ) -> FeedbackDefinitionID: - """ - Upsert a `feedback_definition` into the databaase. - - Args: - feedback_definition: The feedback definition to insert or update. - Note that only the - [FeedbackDefinition][trulens_eval.schema.FeedbackDefinition] - parts are serialized hence the type hint. - - Returns: - The id of the given feedback definition. - """ - - raise NotImplementedError() - - @abc.abstractmethod - def get_feedback_defs( - self, - feedback_definition_id: Optional[FeedbackDefinitionID] = None - ) -> pd.DataFrame: - """Retrieve feedback definitions from the database. - - Args: - feedback_definition_id: if provided, only the - feedback definition with the given id is returned. Otherwise, - all feedback definitions are returned. - - Returns: - A dataframe with the feedback definitions. - """ - - raise NotImplementedError() - - @abc.abstractmethod - def insert_feedback( - self, - feedback_result: FeedbackResult, - ) -> FeedbackResultID: - """Upsert a `feedback_result` into the the database. - - Args: - feedback_result: The feedback result to insert or update. - - Returns: - The id of the given feedback result. - """ - raise NotImplementedError() - - @abc.abstractmethod - def get_feedback( - self, - record_id: Optional[RecordID] = None, - feedback_result_id: Optional[FeedbackResultID] = None, - feedback_definition_id: Optional[FeedbackDefinitionID] = None, - status: Optional[Union[FeedbackResultStatus, - Sequence[FeedbackResultStatus]]] = None, - last_ts_before: Optional[datetime] = None, - offset: Optional[int] = None, - limit: Optional[int] = None, - shuffle: Optional[bool] = None - ) -> pd.DataFrame: - """Get feedback results matching a set of optional criteria: - - Args: - record_id: Get only the feedback for the given record id. - - feedback_result_id: Get only the feedback for the given feedback - result id. - - feedback_definition_id: Get only the feedback for the given feedback - definition id. - - status: Get only the feedback with the given status. If a sequence - of statuses is given, all feedback with any of the given - statuses are returned. - - last_ts_before: get only results with `last_ts` before the - given datetime. - - offset: index of the first row to return. - - limit: limit the number of rows returned. - - shuffle: shuffle the rows before returning them. - """ - - raise NotImplementedError() - - @abc.abstractmethod - def get_feedback_count_by_status( - self, - record_id: Optional[RecordID] = None, - feedback_result_id: Optional[FeedbackResultID] = None, - feedback_definition_id: Optional[FeedbackDefinitionID] = None, - status: Optional[Union[FeedbackResultStatus, - Sequence[FeedbackResultStatus]]] = None, - last_ts_before: Optional[datetime] = None, - offset: Optional[int] = None, - limit: Optional[int] = None, - shuffle: bool = False - ) -> Dict[FeedbackResultStatus, int]: - """Get count of feedback results matching a set of optional criteria grouped by - their status. - - See [get_feedback][trulens_eval.db.DB.get_feedback] for the meaning of - the the arguments. - - Returns: - A mapping of status to the count of feedback results of that status - that match the given filters. - """ - - raise NotImplementedError() - - @abc.abstractmethod - def get_app(self, app_id: AppID) -> Optional[JSONized[App]]: - """Get the app with the given id from the database. - - Returns: - The jsonized version of the app with the given id. Deserialization - can be done with - [App.model_validate][trulens_eval.app.App.model_validate]. - - """ - raise NotImplementedError() - - @abc.abstractmethod - def get_records_and_feedback( - self, - app_ids: Optional[List[AppID]] = None - ) -> Tuple[pd.DataFrame, Sequence[str]]: - """Get records fom the database. - - Args: - app_ids: If given, retrieve only the records for the given apps. - Otherwise all apps are retrieved. - - Returns: - A dataframe with the records. - - A list of column names that contain feedback results. - """ - raise NotImplementedError() - - -def versioning_decorator(func): - """A function decorator that checks if a DB is up to date. - - Check that the database is up to date with the current - trulens_eval version (or rather the db version used in the current - trulens_eval version). - """ - - def wrapper(self, *args, **kwargs): - db_migration._migration_checker(db=self) - returned_value = func(self, *args, **kwargs) - return returned_value - - return wrapper - - -def for_all_methods(decorator): - """ - A class decorator that will decorate all DB Access methods except for - instantiations, db resets, or version checking. - """ - - def decorate(cls): - for attr in cls.__dict__: - if not str(attr).startswith("_") and str(attr) not in [ - "get_meta", "reset_database", "migrate_database" - ] and callable(getattr(cls, attr)): - setattr(cls, attr, decorator(getattr(cls, attr))) - return cls - - return decorate + attributes: dict @for_all_methods(versioning_decorator) @@ -306,8 +42,8 @@ class LocalSQLite(DB): Warning: This database implementation is deprecated and will be removed in the future. Use - [SqlAlchemyDB][trulens_eval.database.sqlalchemy_db.SqlAlchemyDB] - instead. Local sqlite databases can be initialized with SqlAlchemyDB. + [SQLAlchemyDB][trulens_eval.database.sqlalchemy.SQLAlchemyDB] + instead. """ filename: Path @@ -342,7 +78,7 @@ def __init__(self, filename: Path, redact_keys: bool = False): super().__init__(filename=filename, redact_keys=redact_keys) self._build_tables() - db_migration._migration_checker(db=self, warn=True) + migration._migration_checker(db=self, warn=True) def __str__(self) -> str: return f"SQLite({self.filename})" @@ -352,8 +88,12 @@ def reset_database(self) -> None: self._drop_tables() self._build_tables() - def migrate_database(self): - db_migration.migrate(db=self) + def migrate_database(self, prior_table_prefix: Optional[str] = None): + """Deprecated.""" + + raise RuntimeError( + "This database is deprecated and cannot be migrated to." + ) def _clear_tables(self) -> None: conn, c = self._connect() @@ -372,7 +112,7 @@ def _drop_tables(self) -> None: self._close(conn) def get_meta(self): - conn, c = self._connect() + _, c = self._connect() try: c.execute(f'''SELECT key, value FROM {self.TABLE_META}''') @@ -389,7 +129,7 @@ def get_meta(self): return DBMeta(trulens_version=trulens_version, attributes=ret) - except Exception as e: + except Exception: return DBMeta(trulens_version=None, attributes={}) def _create_db_meta_table(self, c): @@ -407,7 +147,7 @@ def _create_db_meta_table(self, c): if meta.trulens_version is None: db_version = __version__ c.execute( - f""" + """ SELECT name FROM sqlite_master WHERE type='table'; """ @@ -481,8 +221,8 @@ def _close(self, conn: sqlite3.Connection) -> None: # DB requirement def insert_record( self, - record: Record, - ) -> RecordID: + record: schema.Record, + ) -> schema.RecordID: # NOTE: Oddness here in that the entire record is put into the # record_json column while some parts of that records are also put in # other columns. Might want to keep this so we can query on the columns @@ -506,7 +246,7 @@ def insert_record( return record.record_id # DB requirement - def insert_app(self, app: AppDefinition) -> AppID: + def insert_app(self, app: schema.AppDefinition) -> schema.AppID: app_id = app.app_id app_str = app.model_dump_json() @@ -518,14 +258,14 @@ def insert_app(self, app: AppDefinition) -> AppID: return app_id def insert_feedback_definition( - self, feedback: Union[Feedback, FeedbackDefinition] - ) -> FeedbackDefinitionID: + self, feedback_definition: schema.FeedbackDefinition + ) -> schema.FeedbackDefinitionID: """ Insert a feedback definition into the database. """ - feedback_definition_id = feedback.feedback_definition_id - feedback_str = feedback.model_dump_json() + feedback_definition_id = feedback_definition.feedback_definition_id + feedback_str = feedback_definition.model_dump_json() vals = (feedback_definition_id, feedback_str) self._insert_or_replace_vals(table=self.TABLE_FEEDBACK_DEFS, vals=vals) @@ -573,8 +313,8 @@ def _insert_or_replace_vals(self, table, vals): self._close(conn) def insert_feedback( - self, feedback_result: FeedbackResult - ) -> FeedbackResultID: + self, feedback_result: schema.FeedbackResult + ) -> schema.FeedbackResultID: """ Insert a record-feedback link to db or update an existing one. """ @@ -597,7 +337,7 @@ def insert_feedback( self._insert_or_replace_vals(table=self.TABLE_FEEDBACKS, vals=vals) - if feedback_result.status == FeedbackResultStatus.DONE: + if feedback_result.status == schema.FeedbackResultStatus.DONE: print( f"{UNICODE_CHECK} feedback {feedback_result.feedback_result_id} on {feedback_result.record_id} -> {self.filename}" ) @@ -608,10 +348,10 @@ def insert_feedback( def get_feedback( self, - record_id: Optional[RecordID] = None, - feedback_result_id: Optional[FeedbackResultID] = None, - feedback_definition_id: Optional[FeedbackDefinitionID] = None, - status: Optional[FeedbackResultStatus] = None, + record_id: Optional[schema.RecordID] = None, + feedback_result_id: Optional[schema.FeedbackResultID] = None, + feedback_definition_id: Optional[schema.FeedbackDefinitionID] = None, + status: Optional[schema.FeedbackResultStatus] = None, last_ts_before: Optional[datetime] = None ) -> pd.DataFrame: @@ -707,9 +447,9 @@ def map_row(row): row.record_json ) # record_json (Record) row.app_json = json.loads(row.app_json) # app_json (App) - app = AppDefinition(**row.app_json) + app = schema.AppDefinition(**row.app_json) - row.status = FeedbackResultStatus(row.status) + row.status = schema.FeedbackResultStatus(row.status) row['total_tokens'] = row.cost_json['n_tokens'] row['total_cost'] = row.cost_json['cost'] @@ -777,10 +517,12 @@ def get_records_and_feedback( rows, columns=[description[0] for description in c.description] ) - apps = df_records['app_json'].apply(AppDefinition.model_validate_json) + apps = df_records['app_json'].apply( + schema.AppDefinition.model_validate_json + ) df_records['type'] = apps.apply(lambda row: str(row.root_class)) - cost = df_records['cost_json'].map(Cost.model_validate_json) + cost = df_records['cost_json'].map(schema.Cost.model_validate_json) df_records['total_tokens'] = cost.map(lambda v: v.n_tokens) df_records['total_cost'] = cost.map(lambda v: v.cost) @@ -846,15 +588,15 @@ def merge_feedbacks(vals): def get_feedback_count_by_status( self, - record_id: Optional[RecordID] = None, - feedback_result_id: Optional[FeedbackResultID] = None, - feedback_definition_id: Optional[FeedbackDefinitionID] = None, - status: Optional[Union[FeedbackResultStatus, - Sequence[FeedbackResultStatus]]] = None, + record_id: Optional[schema.RecordID] = None, + feedback_result_id: Optional[schema.FeedbackResultID] = None, + feedback_definition_id: Optional[schema.FeedbackDefinitionID] = None, + status: Optional[Union[schema.FeedbackResultStatus, + Sequence[schema.FeedbackResultStatus]]] = None, last_ts_before: Optional[datetime] = None, offset: Optional[int] = None, limit: Optional[int] = None, shuffle: bool = False - ) -> Dict[FeedbackResultStatus, int]: + ) -> Dict[schema.FeedbackResultStatus, int]: raise NotImplementedError("This database implementation is deprecated.") diff --git a/trulens_eval/trulens_eval/database/migrations/__init__.py b/trulens_eval/trulens_eval/database/migrations/__init__.py index 46fe59297..9bc4bdce3 100644 --- a/trulens_eval/trulens_eval/database/migrations/__init__.py +++ b/trulens_eval/trulens_eval/database/migrations/__init__.py @@ -1,7 +1,9 @@ +from __future__ import annotations + from contextlib import contextmanager import logging import os -from typing import List, Optional +from typing import Iterator, List, Optional from alembic import command from alembic.config import Config @@ -10,11 +12,17 @@ from pydantic import BaseModel from sqlalchemy import Engine +from trulens_eval.database import base as mod_db + logger = logging.getLogger(__name__) @contextmanager -def alembic_config(engine: Engine) -> Config: +def alembic_config( + engine: Engine, + prefix: str = mod_db.DEFAULT_DATABASE_PREFIX +) -> Iterator[Config]: + alembic_dir = os.path.dirname(os.path.abspath(__file__)) db_url = str(engine.url).replace("%", "%%") # Escape any '%' in db_url config = Config(os.path.join(alembic_dir, "alembic.ini")) @@ -23,31 +31,48 @@ def alembic_config(engine: Engine) -> Config: "calling_context", "PYTHON" ) # skips CLI-specific setup config.set_main_option("sqlalchemy.url", db_url) + config.set_main_option("trulens.table_prefix", prefix) config.attributes["engine"] = engine + yield config -def upgrade_db(engine: Engine, revision: str = "head"): - with alembic_config(engine) as config: +def upgrade_db( + engine: Engine, + revision: str = "head", + prefix: str = mod_db.DEFAULT_DATABASE_PREFIX +): + with alembic_config(engine, prefix=prefix) as config: command.upgrade(config, revision) -def downgrade_db(engine: Engine, revision: str = "base"): - with alembic_config(engine) as config: +def downgrade_db( + engine: Engine, + revision: str = "base", + prefix: str = mod_db.DEFAULT_DATABASE_PREFIX +): + with alembic_config(engine, prefix=prefix) as config: command.downgrade(config, revision) -def get_current_db_revision(engine: Engine) -> Optional[str]: +def get_current_db_revision( + engine: Engine, + prefix: str = mod_db.DEFAULT_DATABASE_PREFIX +) -> Optional[str]: with engine.connect() as conn: - return MigrationContext.configure(conn).get_current_revision() + return MigrationContext.configure( + conn, opts=dict(version_table=prefix + "alembic_version") + ).get_current_revision() -def get_revision_history(engine: Engine) -> List[str]: +def get_revision_history( + engine: Engine, prefix: str = mod_db.DEFAULT_DATABASE_PREFIX +) -> List[str]: """ Return list of all revisions, from base to head. Warn: Branching not supported, fails if there's more than one head. """ - with alembic_config(engine) as config: + with alembic_config(engine, prefix=prefix) as config: scripts = ScriptDirectory.from_config(config) return list( reversed( @@ -72,10 +97,14 @@ def latest(self) -> str: return self.history[-1] @classmethod - def load(cls, engine: Engine) -> "DbRevisions": + def load( + cls, + engine: Engine, + prefix: str = mod_db.DEFAULT_DATABASE_PREFIX + ) -> DbRevisions: return cls( - current=get_current_db_revision(engine), - history=get_revision_history(engine), + current=get_current_db_revision(engine, prefix=prefix), + history=get_revision_history(engine, prefix=prefix), ) @property diff --git a/trulens_eval/trulens_eval/database/migrations/alembic.ini b/trulens_eval/trulens_eval/database/migrations/alembic.ini index 147b340e3..8faeda748 100644 --- a/trulens_eval/trulens_eval/database/migrations/alembic.ini +++ b/trulens_eval/trulens_eval/database/migrations/alembic.ini @@ -57,7 +57,6 @@ version_path_separator = os # Use os.pathsep. Default configuration used for ne sqlalchemy.url = "" - [post_write_hooks] # post_write_hooks defines scripts or Python functions that are run # on newly generated revision scripts. See the documentation for further @@ -90,7 +89,7 @@ handlers = qualname = sqlalchemy.engine [logger_alembic] -level = INFO +level = WARN handlers = qualname = alembic diff --git a/trulens_eval/trulens_eval/database/migrations/db_data_migration.py b/trulens_eval/trulens_eval/database/migrations/data.py similarity index 86% rename from trulens_eval/trulens_eval/database/migrations/db_data_migration.py rename to trulens_eval/trulens_eval/database/migrations/data.py index b1d6bf79a..6e394cfc5 100644 --- a/trulens_eval/trulens_eval/database/migrations/db_data_migration.py +++ b/trulens_eval/trulens_eval/database/migrations/data.py @@ -1,3 +1,5 @@ +from __future__ import annotations + import json import traceback from typing import List @@ -5,9 +7,10 @@ from sqlalchemy import select from sqlalchemy.orm import Session +from trulens_eval.database.base import DB +from trulens_eval.database.legacy.migration import MIGRATION_UNKNOWN_STR +from trulens_eval.database.legacy.migration import VersionException from trulens_eval.database.migrations import DbRevisions -from trulens_eval.db_migration import MIGRATION_UNKNOWN_STR -from trulens_eval.db_migration import VersionException from trulens_eval.schema import AppDefinition from trulens_eval.schema import Cost from trulens_eval.schema import FeedbackCall @@ -16,11 +19,12 @@ from trulens_eval.schema import Record from trulens_eval.utils.pyschema import FunctionOrMethod -# Keeps track of any db versions that need data migration -# Should be most recent is the leftmost in the list sql_alchemy_migration_versions: List[str] = ["1"] +"""DB versions that need data migration. + +The most recent should be the first in the list. +""" -# A DAG of upgrade functions to get to most recent DB. sqlalchemy_upgrade_paths = { # Dict Structure: # "from_version":("to_version", migrate_method) @@ -28,27 +32,30 @@ # Example: # "1":("2"), migrate_alembic_1_to_2 } +"""A DAG of upgrade functions to get to most recent DB.""" def _get_sql_alchemy_compatibility_version(version: str) -> str: """Gets the last compatible version of a DB that needed data migration Args: - version (str): The alembic version + version: The alembic version Returns: str: An alembic version of the oldest compatible DB """ + compat_version = int(sql_alchemy_migration_versions[-1]) for candidate_version in sql_alchemy_migration_versions: candidate_version_int = int(candidate_version) if candidate_version_int <= int( version) and candidate_version_int > compat_version: compat_version = candidate_version_int + return compat_version -def _sql_alchemy_serialization_asserts(db: "DB") -> None: +def _sql_alchemy_serialization_asserts(db: DB) -> None: """Checks that data migrated JSONs can be deserialized from DB to Python objects. Args: @@ -129,15 +136,17 @@ def _sql_alchemy_serialization_asserts(db: "DB") -> None: ) -def data_migrate(db: "DB", from_version: str): - """Makes any data changes needed for upgrading from the from_version +def data_migrate(db: DB, from_version: str): + """Makes any data changes needed for upgrading from the from_version to the + current version. Args: - db (DB): The Database Object - from_version (str): The current version + db: The database instance. + + from_version: The version to migrate data from. Raises: - VersionException: Can raise a migration or validation upgrade error + VersionException: Can raise a migration or validation upgrade error. """ if from_version is None: @@ -148,7 +157,7 @@ def data_migrate(db: "DB", from_version: str): sql_alchemy_from_version ) to_compat_version = None - fail_advice = f"Please open a ticket on trulens github page including this error message. The migration completed so you can still proceed; but stability is not guaranteed. If needed, you can `tru.reset_database()`" + fail_advice = "Please open a ticket on trulens github page including this error message. The migration completed so you can still proceed; but stability is not guaranteed. If needed, you can `tru.reset_database()`" try: while from_compat_version in sqlalchemy_upgrade_paths: @@ -159,18 +168,18 @@ def data_migrate(db: "DB", from_version: str): from_compat_version = to_compat_version print("DB Migration complete!") - except Exception: + except Exception as e: tb = traceback.format_exc() current_revision = DbRevisions.load(db.engine).current raise VersionException( f"Migration failed on {db} from db version - {from_version} on step: {str(to_compat_version)}. The attempted DB version is {current_revision} \n\n{tb}\n\n{fail_advice}" - ) + ) from e try: _sql_alchemy_serialization_asserts(db) print("DB Validation complete!") - except Exception: + except Exception as e: tb = traceback.format_exc() current_revision = DbRevisions.load(db.engine).current raise VersionException( f"Validation failed on {db} from db version - {from_version} on step: {str(to_compat_version)}. The attempted DB version is {current_revision} \n\n{tb}\n\n{fail_advice}" - ) + ) from e diff --git a/trulens_eval/trulens_eval/database/migrations/env.py b/trulens_eval/trulens_eval/database/migrations/env.py index fef0fda87..866a2cb6b 100644 --- a/trulens_eval/trulens_eval/database/migrations/env.py +++ b/trulens_eval/trulens_eval/database/migrations/env.py @@ -5,25 +5,39 @@ from sqlalchemy import engine_from_config from sqlalchemy import pool -from trulens_eval.database.orm import Base - -# Database schema information -target_metadata = Base.metadata +from trulens_eval.database import base as mod_db +from trulens_eval.database.orm import make_orm_for_prefix # Gives access to the values within the alembic.ini file config = context.config # Run this block only if Alembic was called from the command-line -if config.get_main_option("calling_context", default="CLI") == "CLI": - # Interpret the `alembic.ini` file for Python logging. - if config.config_file_name is not None: - fileConfig(config.config_file_name) +#if config.get_main_option("calling_context", default="CLI") == "CLI": +# NOTE(piotrm): making this run always so users can configure alembic.ini as +# they see fit. + +# Interpret the `alembic.ini` file for Python logging. +if config.config_file_name is not None: + fileConfig(config.config_file_name) - # Evaluate `sqlalchemy.url` from the environment +# Get `sqlalchemy.url` from the environment. +if config.get_main_option("sqlalchemy.url", None) is None: config.set_main_option( "sqlalchemy.url", os.environ.get("SQLALCHEMY_URL", "") ) +# Get `trulens.table_prefix` from the environment. +prefix = config.get_main_option( + "trulens.table_prefix" +) or mod_db.DEFAULT_DATABASE_PREFIX + +orm = make_orm_for_prefix(table_prefix=prefix) + +# Database schema information +target_metadata = orm.metadata + +url = config.get_main_option("sqlalchemy.url") + def run_migrations_offline() -> None: """Run migrations in 'offline' mode. @@ -35,18 +49,18 @@ def run_migrations_offline() -> None: Calls to context.execute() here emit the given string to the script output. - """ - url = config.get_main_option("sqlalchemy.url") + context.configure( url=url, target_metadata=target_metadata, literal_binds=True, dialect_opts={"paramstyle": "named"}, + version_table=prefix + "alembic_version" ) with context.begin_transaction(): - context.run_migrations() + context.run_migrations(confi=config) def run_migrations_online() -> None: @@ -65,11 +79,13 @@ def run_migrations_online() -> None: with engine.connect() as connection: context.configure( - connection=connection, target_metadata=target_metadata + connection=connection, + target_metadata=target_metadata, + version_table=prefix + "alembic_version" ) with context.begin_transaction(): - context.run_migrations() + context.run_migrations(config=config) if context.is_offline_mode(): diff --git a/trulens_eval/trulens_eval/database/migrations/script.py.mako b/trulens_eval/trulens_eval/database/migrations/script.py.mako index 55df2863d..c08875a38 100644 --- a/trulens_eval/trulens_eval/database/migrations/script.py.mako +++ b/trulens_eval/trulens_eval/database/migrations/script.py.mako @@ -15,10 +15,21 @@ down_revision = ${repr(down_revision)} branch_labels = ${repr(branch_labels)} depends_on = ${repr(depends_on)} +def upgrade(config) -> None: + prefix = config.get_main_option("trulens.table_prefix") -def upgrade() -> None: + if prefix is None: + raise RuntimeError("trulens.table_prefix is not set") + + # TODO: need to prepend prefix to all table names in the upgrades ${upgrades if upgrades else "pass"} def downgrade() -> None: + prefix = config.get_main_option("trulens.table_prefix") + + if prefix is None: + raise RuntimeError("trulens.table_prefix is not set") + + # TODO: need to prepend prefix to all table names in the upgrades ${downgrades if downgrades else "pass"} diff --git a/trulens_eval/trulens_eval/database/migrations/versions/1_first_revision.py b/trulens_eval/trulens_eval/database/migrations/versions/1_first_revision.py index e311b961c..c123e8523 100644 --- a/trulens_eval/trulens_eval/database/migrations/versions/1_first_revision.py +++ b/trulens_eval/trulens_eval/database/migrations/versions/1_first_revision.py @@ -1,10 +1,10 @@ -"""first revision +"""First revision. Revision ID: 1 Revises: Create Date: 2023-08-10 23:11:37.405982 - """ + from alembic import op import sqlalchemy as sa @@ -15,22 +15,28 @@ depends_on = None -def upgrade() -> None: +def upgrade(config) -> None: + prefix = config.get_main_option("trulens.table_prefix") + + if prefix is None: + raise RuntimeError("trulens.table_prefix is not set") + # ### commands auto generated by Alembic - please adjust! ### op.create_table( - 'apps', sa.Column('app_id', sa.VARCHAR(length=256), nullable=False), + prefix + 'apps', + sa.Column('app_id', sa.VARCHAR(length=256), nullable=False), sa.Column('app_json', sa.Text(), nullable=False), sa.PrimaryKeyConstraint('app_id') ) op.create_table( - 'feedback_defs', + prefix + 'feedback_defs', sa.Column( 'feedback_definition_id', sa.VARCHAR(length=256), nullable=False ), sa.Column('feedback_json', sa.Text(), nullable=False), sa.PrimaryKeyConstraint('feedback_definition_id') ) op.create_table( - 'feedbacks', + prefix + 'feedbacks', sa.Column('feedback_result_id', sa.VARCHAR(length=256), nullable=False), sa.Column('record_id', sa.VARCHAR(length=256), nullable=False), sa.Column( @@ -46,7 +52,7 @@ def upgrade() -> None: sa.PrimaryKeyConstraint('feedback_result_id') ) op.create_table( - 'records', + prefix + 'records', sa.Column('record_id', sa.VARCHAR(length=256), nullable=False), sa.Column('app_id', sa.VARCHAR(length=256), nullable=False), sa.Column('input', sa.Text(), nullable=True), @@ -61,10 +67,12 @@ def upgrade() -> None: # ### end Alembic commands ### -def downgrade() -> None: +def downgrade(config) -> None: + prefix = config.get_main_option("trulens.prefix") + # ### commands auto generated by Alembic - please adjust! ### - op.drop_table('records') - op.drop_table('feedbacks') - op.drop_table('feedback_defs') - op.drop_table('apps') + op.drop_table(prefix + 'records') + op.drop_table(prefix + 'feedbacks') + op.drop_table(prefix + 'feedback_defs') + op.drop_table(prefix + 'apps') # ### end Alembic commands ### diff --git a/trulens_eval/trulens_eval/database/orm.py b/trulens_eval/trulens_eval/database/orm.py index 400c238d2..bf83a7f6d 100644 --- a/trulens_eval/trulens_eval/database/orm.py +++ b/trulens_eval/trulens_eval/database/orm.py @@ -1,4 +1,9 @@ +from __future__ import annotations + +import abc +import functools from sqlite3 import Connection as SQLite3Connection +from typing import ClassVar, Dict, Generic, Type, TypeVar from sqlalchemy import Column from sqlalchemy import Engine @@ -6,145 +11,365 @@ from sqlalchemy import Float from sqlalchemy import Text from sqlalchemy import VARCHAR +from sqlalchemy.ext.declarative import declared_attr from sqlalchemy.orm import backref from sqlalchemy.orm import declarative_base from sqlalchemy.orm import relationship +from sqlalchemy.schema import MetaData from trulens_eval import schema +from trulens_eval.database.base import DEFAULT_DATABASE_PREFIX from trulens_eval.utils.json import json_str_of_obj -Base = declarative_base() - TYPE_JSON = Text +"""Database type for JSON fields.""" + TYPE_TIMESTAMP = Float +"""Database type for timestamps.""" + TYPE_ENUM = Text +"""Database type for enum fields.""" +TYPE_ID = VARCHAR(256) +"""Database type for unique IDs.""" -class AppDefinition(Base): - __tablename__ = "apps" - app_id = Column(VARCHAR(256), nullable=False, primary_key=True) - app_json = Column(TYPE_JSON, nullable=False) +class BaseWithTablePrefix( +): # to be mixed into DeclarativeBase or new_declarative_base() + # Only for type hints or isinstance, issubclass checks. + """ORM base class except with `__tablename__` defined in terms + of a base name and a prefix. - @classmethod - def parse( - cls, - obj: schema.AppDefinition, - redact_keys: bool = False - ) -> "AppDefinition": - return cls( - app_id=obj.app_id, - app_json=obj.model_dump_json(redact_keys=redact_keys) - ) + A subclass should set _table_base_name and/or _table_prefix. If it does not + set both, make sure to set `__abstract__ = True`. Current design has + subclasses set `_table_base_name` and then subclasses of that subclass + setting `_table_prefix` as in `make_orm_for_prefix`. + """ + # https://stackoverflow.com/questions/38245145/how-to-set-common-prefix-for-all-tables-in-sqlalchemy + # Needed for sqlaclhemy to prevent it from creating a table for this class + # before the two following attributes are set which we do in subclasses later. + __abstract__ = True -class FeedbackDefinition(Base): - __tablename__ = "feedback_defs" + _table_base_name: str = "not set" + """Base name for the table. + + Will be prefixed by the prefix to create table names. This should be set by + subclasses. + """ - feedback_definition_id = Column( - VARCHAR(256), nullable=False, primary_key=True - ) - feedback_json = Column(TYPE_JSON, nullable=False) - - @classmethod - def parse( - cls, - obj: schema.FeedbackDefinition, - redact_keys: bool = False - ) -> "FeedbackDefinition": - return cls( - feedback_definition_id=obj.feedback_definition_id, - feedback_json=json_str_of_obj(obj, redact_keys=redact_keys) - ) + _table_prefix: str = "" + """Prefix for the table name. + + This should be set by subclasses of subclasses of this class. + """ + @declared_attr.directive + def __tablename__(cls) -> str: + return cls._table_prefix + cls._table_base_name -class Record(Base): - __tablename__ = "records" - - record_id = Column(VARCHAR(256), nullable=False, primary_key=True) - app_id = Column(VARCHAR(256), nullable=False) - input = Column(Text) - output = Column(Text) - record_json = Column(TYPE_JSON, nullable=False) - tags = Column(Text, nullable=False) - ts = Column(TYPE_TIMESTAMP, nullable=False) - cost_json = Column(TYPE_JSON, nullable=False) - perf_json = Column(TYPE_JSON, nullable=False) - - app = relationship( - 'AppDefinition', - backref=backref('records', cascade="all,delete"), - primaryjoin='AppDefinition.app_id == Record.app_id', - foreign_keys=[app_id], - ) - @classmethod - def parse(cls, obj: schema.Record, redact_keys: bool = False) -> "Record": - return cls( - record_id=obj.record_id, - app_id=obj.app_id, - input=json_str_of_obj(obj.main_input, redact_keys=redact_keys), - output=json_str_of_obj(obj.main_output, redact_keys=redact_keys), - record_json=json_str_of_obj(obj, redact_keys=redact_keys), - tags=obj.tags, - ts=obj.ts.timestamp(), - cost_json=json_str_of_obj(obj.cost, redact_keys=redact_keys), - perf_json=json_str_of_obj(obj.perf, redact_keys=redact_keys), - ) +T = TypeVar("T", bound=BaseWithTablePrefix) -class FeedbackResult(Base): - __tablename__ = "feedbacks" - - feedback_result_id = Column(VARCHAR(256), nullable=False, primary_key=True) - record_id = Column(VARCHAR(256), nullable=False) - feedback_definition_id = Column(VARCHAR(256), nullable=True) - last_ts = Column(TYPE_TIMESTAMP, nullable=False) - status = Column(TYPE_ENUM, nullable=False) - error = Column(Text) - calls_json = Column(TYPE_JSON, nullable=False) - result = Column(Float) - name = Column(Text, nullable=False) - cost_json = Column(TYPE_JSON, nullable=False) - multi_result = Column(TYPE_JSON) - - record = relationship( - 'Record', - backref=backref('feedback_results', cascade="all,delete"), - primaryjoin='Record.record_id == FeedbackResult.record_id', - foreign_keys=[record_id] - ) +# NOTE: lru_cache is important here as we don't want to create multiple classes +# of the same name for the same table name prefix as sqlalchemy will complain +# one some of our migration tools will not work. +@functools.lru_cache +def new_base(prefix: str) -> Type[T]: + """Create a new base class for ORM classes. + + Note: This is a function to be able to define classes extending different + SQLAlchemy delcarative bases. Each different such bases has a different set + of mappings from classes to table names. If we only had one of these, our + code will never be able to have two different sets of mappings at the same + time. We need to be able to have multiple mappings for performing things + such as database migrations and database copying from one database + configuration to another. + """ - feedback_definition = relationship( - "FeedbackDefinition", - backref=backref("feedback_results", cascade="all,delete"), - primaryjoin= - "FeedbackDefinition.feedback_definition_id == FeedbackResult.feedback_definition_id", - foreign_keys=[feedback_definition_id], + base = declarative_base() + return type( + f"BaseWithTablePrefix{prefix}", + (base, BaseWithTablePrefix), + { + "_table_prefix": prefix, + "__abstract__": + True # stay abstract until _table_base_name is set in a subclass + } ) - @classmethod - def parse( - cls, - obj: schema.FeedbackResult, - redact_keys: bool = False - ) -> "FeedbackResult": - return cls( - feedback_result_id=obj.feedback_result_id, - record_id=obj.record_id, - feedback_definition_id=obj.feedback_definition_id, - last_ts=obj.last_ts.timestamp(), - status=obj.status.value, - error=obj.error, - calls_json=json_str_of_obj( - dict(calls=obj.calls), redact_keys=redact_keys - ), - result=obj.result, - name=obj.name, - cost_json=json_str_of_obj(obj.cost, redact_keys=redact_keys), - multi_result=obj.multi_result + +class ORM(abc.ABC, Generic[T]): + """Abstract definition of a container for ORM classes.""" + + registry: Dict[str, Type[T]] + metadata: MetaData + + AppDefinition: Type[T] + FeedbackDefinition: Type[T] + Record: Type[T] + FeedbackResult: Type[T] + + +def new_orm(base: Type[T]) -> Type[ORM[T]]: + """Create a new orm container from the given base table class.""" + + class NewORM(ORM): + """Container for ORM classes. + + Needs to be extended with classes that set table prefix. + + Warning: + The relationships between tables established in the classes in this + container refer to class names i.e. "AppDefinition" hence these are + important and need to stay consistent between definition of one and + relationships in another. + """ + + registry: Dict[str, base] = \ + base.registry._class_registry + """Table name to ORM class mapping for tables used by trulens_eval. + + This can be used to iterate through all classes/tables. + """ + + metadata: MetaData = base.metadata + """SqlAlchemy metadata object for tables used by trulens_eval.""" + + class AppDefinition(base): + """ORM class for [AppDefinition][trulens_eval.schema.AppDefinition]. + + Warning: + We don't use any of the typical ORM features and this class is only + used as a schema to interact with database through SQLAlchemy. + """ + + _table_base_name: ClassVar[str] = "apps" + + app_id = Column(VARCHAR(256), nullable=False, primary_key=True) + app_json = Column(TYPE_JSON, nullable=False) + + # records via one-to-many on Record.app_id + # feedback_results via one-to-many on FeedbackResult.record_id + + @classmethod + def parse( + cls, + obj: schema.AppDefinition, + redact_keys: bool = False + ) -> ORM.AppDefinition: + return cls( + app_id=obj.app_id, + app_json=obj.model_dump_json(redact_keys=redact_keys) + ) + + class FeedbackDefinition(base): + """ORM class for [FeedbackDefinition][trulens_eval.schema.FeedbackDefinition]. + + Warning: + We don't use any of the typical ORM features and this class is only + used as a schema to interact with database through SQLAlchemy. + """ + + _table_base_name = "feedback_defs" + + feedback_definition_id = Column( + TYPE_ID, nullable=False, primary_key=True + ) + feedback_json = Column(TYPE_JSON, nullable=False) + + # feedback_results via one-to-many on FeedbackResult.feedback_definition_id + + @classmethod + def parse( + cls, + obj: schema.FeedbackDefinition, + redact_keys: bool = False + ) -> ORM.FeedbackDefinition: + return cls( + feedback_definition_id=obj.feedback_definition_id, + feedback_json=json_str_of_obj(obj, redact_keys=redact_keys) + ) + + class Record(base): + """ORM class for [Record][trulens_eval.schema.Record]. + + Warning: + We don't use any of the typical ORM features and this class is only + used as a schema to interact with database through SQLAlchemy. + """ + + _table_base_name = "records" + + record_id = Column(TYPE_ID, nullable=False, primary_key=True) + app_id = Column(TYPE_ID, nullable=False) # foreign key + + input = Column(Text) + output = Column(Text) + record_json = Column(TYPE_JSON, nullable=False) + tags = Column(Text, nullable=False) + ts = Column(TYPE_TIMESTAMP, nullable=False) + cost_json = Column(TYPE_JSON, nullable=False) + perf_json = Column(TYPE_JSON, nullable=False) + + app = relationship( + 'AppDefinition', + backref=backref('records', cascade="all,delete"), + primaryjoin='AppDefinition.app_id == Record.app_id', + foreign_keys=app_id, + ) + + @classmethod + def parse( + cls, + obj: schema.Record, + redact_keys: bool = False + ) -> ORM.Record: + return cls( + record_id=obj.record_id, + app_id=obj.app_id, + input=json_str_of_obj( + obj.main_input, redact_keys=redact_keys + ), + output=json_str_of_obj( + obj.main_output, redact_keys=redact_keys + ), + record_json=json_str_of_obj(obj, redact_keys=redact_keys), + tags=obj.tags, + ts=obj.ts.timestamp(), + cost_json=json_str_of_obj( + obj.cost, redact_keys=redact_keys + ), + perf_json=json_str_of_obj( + obj.perf, redact_keys=redact_keys + ), + ) + + class FeedbackResult(base): + """ + ORM class for [FeedbackResult][trulens_eval.schema.FeedbackResult]. + + Warning: + We don't use any of the typical ORM features and this class is only + used as a schema to interact with database through SQLAlchemy. + """ + + _table_base_name = "feedbacks" + + feedback_result_id = Column( + TYPE_ID, nullable=False, primary_key=True + ) + record_id = Column(TYPE_ID, nullable=False) # foreign key + feedback_definition_id = Column( + TYPE_ID, + nullable=False + ) # foreign key + last_ts = Column(TYPE_TIMESTAMP, nullable=False) + status = Column(TYPE_ENUM, nullable=False) + error = Column(Text) + calls_json = Column(TYPE_JSON, nullable=False) + result = Column(Float) + name = Column(Text, nullable=False) + cost_json = Column(TYPE_JSON, nullable=False) + multi_result = Column(TYPE_JSON) + + record = relationship( + 'Record', + backref=backref('feedback_results', cascade="all,delete"), + primaryjoin='Record.record_id == FeedbackResult.record_id', + foreign_keys=record_id, + ) + + feedback_definition = relationship( + "FeedbackDefinition", + backref=backref("feedback_results", cascade="all,delete"), + primaryjoin= + "FeedbackDefinition.feedback_definition_id == FeedbackResult.feedback_definition_id", + foreign_keys=feedback_definition_id, + ) + + @classmethod + def parse( + cls, + obj: schema.FeedbackResult, + redact_keys: bool = False + ) -> ORM.FeedbackResult: + return cls( + feedback_result_id=obj.feedback_result_id, + record_id=obj.record_id, + feedback_definition_id=obj.feedback_definition_id, + last_ts=obj.last_ts.timestamp(), + status=obj.status.value, + error=obj.error, + calls_json=json_str_of_obj( + dict(calls=obj.calls), redact_keys=redact_keys + ), + result=obj.result, + name=obj.name, + cost_json=json_str_of_obj( + obj.cost, redact_keys=redact_keys + ), + multi_result=obj.multi_result + ) + + #configure_mappers() + #base.registry.configure() + + return NewORM + + +# NOTE: lru_cache is important here as we don't want to create multiple classes for +# the same table name as sqlalchemy will complain. +@functools.lru_cache +def make_base_for_prefix( + base: Type[T], + table_prefix: str = DEFAULT_DATABASE_PREFIX, +) -> Type[T]: + """ + Create a base class for ORM classes with the given table name prefix. + + Args: + base_type: Base class to extend. Should be a subclass of + [BaseWithTablePrefix][trulens_eval.database.orm.BaseWithTablePrefix]. + + table_prefix: Prefix to use for table names. + + Returns: + A class that extends `base_type` and sets the table prefix to `table_prefix`. + """ + + if not hasattr(base, "_table_base_name"): + raise ValueError( + "Expected `base` to be a subclass of `BaseWithTablePrefix`." ) + # sqlalchemy stores a mapping of class names to the classes we defined in + # the ORM above. Here we want to create a class with the specific name + # matching base_type hence use `type` instead of `class SomeName: ...`. + return type(base.__name__, (base,), {"_table_prefix": table_prefix}) + + +# NOTE: lru_cache is important here as we don't want to create multiple classes for +# the same table name as sqlalchemy will complain. +@functools.lru_cache +def make_orm_for_prefix( + table_prefix: str = DEFAULT_DATABASE_PREFIX +) -> Type[ORM[T]]: + """ + Make a container for ORM classes. + + This is done so that we can use a dynamic table name prefix and make the ORM + classes based on that. + + Args: + table_prefix: Prefix to use for table names. + """ + + base: Type[T] = new_base(prefix=table_prefix) + + return new_orm(base) + @event.listens_for(Engine, "connect") def _set_sqlite_pragma(dbapi_connection, _): diff --git a/trulens_eval/trulens_eval/database/sqlalchemy_db.py b/trulens_eval/trulens_eval/database/sqlalchemy.py similarity index 63% rename from trulens_eval/trulens_eval/database/sqlalchemy_db.py rename to trulens_eval/trulens_eval/database/sqlalchemy.py index a9c9c7bb2..1b3fd84f5 100644 --- a/trulens_eval/trulens_eval/database/sqlalchemy_db.py +++ b/trulens_eval/trulens_eval/database/sqlalchemy.py @@ -1,11 +1,12 @@ +from __future__ import annotations + from collections import defaultdict from datetime import datetime import json import logging from sqlite3 import OperationalError -from typing import ( - Any, ClassVar, Dict, Iterable, List, Optional, Sequence, Tuple, Union -) +from typing import (Any, ClassVar, Dict, Iterable, List, Optional, Sequence, + Tuple, Type, Union) import warnings import numpy as np @@ -16,27 +17,28 @@ from sqlalchemy import func from sqlalchemy import select from sqlalchemy.orm import sessionmaker -from sqlalchemy.schema import MetaData +from sqlalchemy.sql import text as sql_text from trulens_eval import schema from trulens_eval.app import App -from trulens_eval.database import orm +from trulens_eval.database import base as mod_db +from trulens_eval.database import orm as mod_orm +from trulens_eval.database.base import DB from trulens_eval.database.exceptions import DatabaseVersionException +from trulens_eval.database.legacy.migration import MIGRATION_UNKNOWN_STR from trulens_eval.database.migrations import DbRevisions from trulens_eval.database.migrations import upgrade_db -from trulens_eval.database.migrations.db_data_migration import data_migrate -from trulens_eval.database.utils import check_db_revision -from trulens_eval.database.utils import for_all_methods +from trulens_eval.database.migrations.data import data_migrate +from trulens_eval.database.utils import \ + check_db_revision as alembic_check_db_revision from trulens_eval.database.utils import is_legacy_sqlite from trulens_eval.database.utils import is_memory_sqlite from trulens_eval.database.utils import migrate_legacy_sqlite -from trulens_eval.database.utils import run_before -from trulens_eval.db import DB -from trulens_eval.db_migration import MIGRATION_UNKNOWN_STR from trulens_eval.schema import FeedbackDefinitionID from trulens_eval.schema import FeedbackResultID from trulens_eval.schema import FeedbackResultStatus from trulens_eval.schema import RecordID +from trulens_eval.utils import text from trulens_eval.utils.pyschema import Class from trulens_eval.utils.python import locals_except from trulens_eval.utils.serial import JSON @@ -49,30 +51,53 @@ logger = logging.getLogger(__name__) -@for_all_methods( - run_before(lambda self, *args, **kwargs: check_db_revision(self.engine)), - _except=[ - "migrate_database", - "reload_engine", - "reset_database" # migrates database automatically - ] -) -class SqlAlchemyDB(DB): +class SQLAlchemyDB(DB): """Database implemented using sqlalchemy. - See abstract class [DB][trulens_eval.db.DB] for method reference. + See abstract class [DB][trulens_eval.database.base.DB] for method reference. + """ + + table_prefix: str = mod_db.DEFAULT_DATABASE_PREFIX + """The prefix to use for all table names. + + [DB][trulens_eval.database.base.DB] interface requirement. """ engine_params: dict = Field(default_factory=dict) + """Sqlalchemy-related engine params.""" + session_params: dict = Field(default_factory=dict) - engine: Engine = None - Session: sessionmaker = None + """Sqlalchemy-related session.""" + + engine: Optional[Engine] = None + """Sqlalchemy engine.""" + + session: Optional[sessionmaker] = None + """Sqlalchemy session(maker).""" + + model_config: ClassVar[dict] = {'arbitrary_types_allowed': True} + + orm: Type[mod_orm.ORM] + """ + Container of all the ORM classes for this database. - model_config: ClassVar[dict] = dict(arbitrary_types_allowed=True) + This should be set to a subclass of + [ORM][trulens_eval.database.orm.ORM] upon initialization. + """ - def __init__(self, redact_keys: bool = False, **kwargs): - super().__init__(redact_keys=redact_keys, **kwargs) - self.reload_engine() + def __init__( + self, + redact_keys: bool = mod_db.DEFAULT_DATABASE_REDACT_KEYS, + table_prefix: str = mod_db.DEFAULT_DATABASE_PREFIX, + **kwargs: Dict[str, Any] + ): + super().__init__( + redact_keys=redact_keys, + table_prefix=table_prefix, + orm=mod_orm.make_orm_for_prefix(table_prefix=table_prefix), + **kwargs + ) + self._reload_engine() if is_memory_sqlite(self.engine): warnings.warn( UserWarning( @@ -81,12 +106,82 @@ def __init__(self, redact_keys: bool = False, **kwargs): ) ) - def reload_engine(self): + def _reload_engine(self): self.engine = create_engine(**self.engine_params) - self.Session = sessionmaker(self.engine, **self.session_params) + self.session = sessionmaker(self.engine, **self.session_params) + + @classmethod + def from_tru_args( + cls, + database_url: Optional[str] = None, + database_file: Optional[str] = None, + database_redact_keys: Optional[bool] = mod_db. + DEFAULT_DATABASE_REDACT_KEYS, + database_prefix: Optional[str] = mod_db.DEFAULT_DATABASE_PREFIX, + **kwargs: Dict[str, Any] + ) -> SQLAlchemyDB: + """Process database-related configuration provided to the [Tru][trulens_eval.tru.Tru] class to + create a database. + + Emits warnings if appropriate. + """ + + if None not in (database_url, database_file): + raise ValueError( + "Please specify at most one of `database_url` and `database_file`" + ) + + if database_file: + warnings.warn( + ( + "`database_file` is deprecated, " + "use `database_url` instead as in `database_url='sqlite:///filename'." + ), + DeprecationWarning, + stacklevel=2 + ) + + if database_url is None: + database_url = f"sqlite:///{database_file or mod_db.DEFAULT_DATABASE_FILE}" + + if 'table_prefix' not in kwargs: + kwargs['table_prefix'] = database_prefix + + if 'redact_keys' not in kwargs: + kwargs['redact_keys'] = database_redact_keys + + new_db: DB = SQLAlchemyDB.from_db_url(database_url, **kwargs) + + print( + "%s Tru initialized with db url %s .", text.UNICODE_SQUID, + new_db.engine.url + ) + if database_redact_keys: + print( + f"{text.UNICODE_LOCK} Secret keys will not be included in the database." + ) + else: + print( + f"{text.UNICODE_STOP} Secret keys may be written to the database. " + "See the `database_redact_keys` option of Tru` to prevent this." + ) + + return new_db @classmethod - def from_db_url(cls, url: str, redact_keys: bool = False) -> "SqlAlchemyDB": + def from_db_url(cls, url: str, **kwargs: Dict[str, Any]) -> SQLAlchemyDB: + """ + Create a database for the given url. + + Args: + url: The database url. This includes database type. + + kwargs: Additional arguments to pass to the database constructor. + + Returns: + A database instance. + """ + # Params needed for https://github.com/truera/trulens/issues/470 # Params are from # https://stackoverflow.com/questions/55457069/how-to-fix-operationalerror-psycopg2-operationalerror-server-closed-the-conn @@ -103,19 +198,37 @@ def from_db_url(cls, url: str, redact_keys: bool = False) -> "SqlAlchemyDB": engine_params["max_overflow"] = 2 engine_params["pool_use_lifo"] = True - return cls(engine_params=engine_params, redact_keys=redact_keys) + return cls(engine_params=engine_params, **kwargs) - def migrate_database(self): - """ - Migrate database schema to the latest revision. - """ + def check_db_revision(self): + """See + [DB.check_db_revision][trulens_eval.database.base.DB.check_db_revision].""" + + if self.engine is None: + raise ValueError("Database engine not initialized.") + + alembic_check_db_revision(self.engine, self.table_prefix) + + def migrate_database(self, prior_prefix: Optional[str] = None): + """See [DB.migrate_database][trulens_eval.database.base.DB.migrate_database].""" + + if self.engine is None: + raise ValueError("Database engine not initialized.") try: # Expect to get the the behind exception. - check_db_revision(self.engine) + alembic_check_db_revision( + self.engine, + prefix=self.table_prefix, + prior_prefix=prior_prefix + ) + + # If we get here, our db revision does not need upgrade. + logger.warning("Database does not need migration.") except DatabaseVersionException as e: if e.reason == DatabaseVersionException.Reason.BEHIND: + revisions = DbRevisions.load(self.engine) from_version = revisions.current ### SCHEMA MIGRATION ### @@ -124,11 +237,13 @@ def migrate_database(self): else: ## TODO Create backups here. This is not sqlalchemy's strong suit: https://stackoverflow.com/questions/56990946/how-to-backup-up-a-sqlalchmey-database ### We might allow migrate_database to take a backup url (and suggest user to supply if not supplied ala `tru.migrate_database(backup_db_url="...")`) - ### We might try _copy_database as a backup, but it would need to automatically handle clearing the db, and also current implementation requires migrate to run first. + ### We might try copy_database as a backup, but it would need to automatically handle clearing the db, and also current implementation requires migrate to run first. ### A valid backup would need to be able to copy an old version, not the newest version - upgrade_db(self.engine, revision="head") + upgrade_db( + self.engine, revision="head", prefix=self.table_prefix + ) - self.reload_engine( + self._reload_engine( ) # let sqlalchemy recognize the migrated schema ### DATA MIGRATION ### @@ -139,61 +254,98 @@ def migrate_database(self): # Rethrow the ahead message suggesting to upgrade trulens_eval. raise e + elif e.reason == DatabaseVersionException.Reason.RECONFIGURED: + # Rename table to change prefix. + + prior_prefix = e.prior_prefix + + logger.warning( + "Renaming tables from prefix \"%s\" to \"%s\".", + prior_prefix, self.table_prefix + ) + # logger.warning("Please ignore these warnings: \"SAWarning: This declarative base already contains...\"") + + with self.engine.connect() as c: + for table_name in ['alembic_version' + ] + [c._table_base_name + for c in self.orm.registry.values() + if hasattr(c, "_table_base_name")]: + old_version_table = f"{prior_prefix}{table_name}" + new_version_table = f"{self.table_prefix}{table_name}" + + logger.warning( + " %s -> %s", old_version_table, new_version_table + ) + + c.execute( + sql_text( + """ALTER TABLE %s RENAME TO %s;""" % + (old_version_table, new_version_table) + ) + ) + else: # TODO: better message here for unhandled cases? raise e - # If we get here, our db revision does not need upgrade. - logger.info("Your database does not need migration.") - def reset_database(self): - meta = MetaData() + """See [DB.reset_database][trulens_eval.database.base.DB.reset_database].""" + + #meta = MetaData() + meta = self.orm.metadata # meta.reflect(bind=self.engine) meta.drop_all(bind=self.engine) self.migrate_database() def insert_record(self, record: schema.Record) -> schema.RecordID: + """See [DB.insert_record][trulens_eval.database.base.DB.insert_record].""" # TODO: thread safety - _rec = orm.Record.parse(record, redact_keys=self.redact_keys) - with self.Session.begin() as session: - if session.query(orm.Record).filter_by(record_id=record.record_id - ).first(): + _rec = self.orm.Record.parse(record, redact_keys=self.redact_keys) + with self.session.begin() as session: + if session.query(self.orm.Record + ).filter_by(record_id=record.record_id).first(): session.merge(_rec) # update existing else: session.merge(_rec) # add new record # .add was not thread safe - logger.info(f"{UNICODE_CHECK} added record {_rec.record_id}") + logger.info("{UNICODE_CHECK} added record %s", _rec.record_id) return _rec.record_id def get_app(self, app_id: schema.AppID) -> Optional[JSONized[App]]: - with self.Session.begin() as session: - if _app := session.query(orm.AppDefinition).filter_by(app_id=app_id - ).first(): + """See [DB.get_app][trulens_eval.database.base.DB.get_app].""" + + with self.session.begin() as session: + if _app := session.query(self.orm.AppDefinition + ).filter_by(app_id=app_id).first(): return json.loads(_app.app_json) def get_apps(self) -> Iterable[JSON]: - with self.Session.begin() as session: - for _app in session.query(orm.AppDefinition): + """See [DB.get_apps][trulens_eval.database.base.DB.get_apps].""" + + with self.session.begin() as session: + for _app in session.query(self.orm.AppDefinition): yield json.loads(_app.app_json) def insert_app(self, app: schema.AppDefinition) -> schema.AppID: + """See [DB.insert_app][trulens_eval.database.base.DB.insert_app].""" + # TODO: thread safety - with self.Session.begin() as session: - if _app := session.query(orm.AppDefinition + with self.session.begin() as session: + if _app := session.query(self.orm.AppDefinition ).filter_by(app_id=app.app_id).first(): _app.app_json = app.model_dump_json() else: - _app = orm.AppDefinition.parse( + _app = self.orm.AppDefinition.parse( app, redact_keys=self.redact_keys ) session.merge(_app) # .add was not thread safe - logger.info(f"{UNICODE_CHECK} added app {_app.app_id}") + logger.info(f"%s added app %s", UNICODE_CHECK, _app.app_id) return _app.app_id @@ -215,21 +367,24 @@ def delete_app(self, app_id: schema.AppID) -> None: def insert_feedback_definition( self, feedback_definition: schema.FeedbackDefinition ) -> schema.FeedbackDefinitionID: + """See [DB.insert_feedback_definition][trulens_eval.database.base.DB.insert_feedback_definition].""" + # TODO: thread safety - with self.Session.begin() as session: - if _fb_def := session.query(orm.FeedbackDefinition) \ + with self.session.begin() as session: + if _fb_def := session.query(self.orm.FeedbackDefinition) \ .filter_by(feedback_definition_id=feedback_definition.feedback_definition_id) \ .first(): _fb_def.app_json = feedback_definition.model_dump_json() else: - _fb_def = orm.FeedbackDefinition.parse( + _fb_def = self.orm.FeedbackDefinition.parse( feedback_definition, redact_keys=self.redact_keys ) session.merge(_fb_def) # .add was not thread safe logger.info( - f"{UNICODE_CHECK} added feedback definition {_fb_def.feedback_definition_id}" + "%s added feedback definition %s", UNICODE_CHECK, + _fb_def.feedback_definition_id ) return _fb_def.feedback_definition_id @@ -237,8 +392,10 @@ def insert_feedback_definition( def get_feedback_defs( self, feedback_definition_id: Optional[str] = None ) -> pd.DataFrame: - with self.Session.begin() as session: - q = select(orm.FeedbackDefinition) + """See [DB.get_feedback_defs][trulens_eval.database.base.DB.get_feedback_defs].""" + + with self.session.begin() as session: + q = select(self.orm.FeedbackDefinition) if feedback_definition_id: q = q.filter_by(feedback_definition_id=feedback_definition_id) fb_defs = (row[0] for row in session.execute(q)) @@ -253,13 +410,15 @@ def get_feedback_defs( def insert_feedback( self, feedback_result: schema.FeedbackResult ) -> schema.FeedbackResultID: + """See [DB.insert_feedback][trulens_eval.database.base.DB.insert_feedback].""" + # TODO: thread safety - _feedback_result = orm.FeedbackResult.parse( + _feedback_result = self.orm.FeedbackResult.parse( feedback_result, redact_keys=self.redact_keys ) - with self.Session.begin() as session: - if session.query(orm.FeedbackResult) \ + with self.session.begin() as session: + if session.query(self.orm.FeedbackResult) \ .filter_by(feedback_result_id=feedback_result.feedback_result_id).first(): session.merge(_feedback_result) # update existing else: @@ -281,7 +440,8 @@ def insert_feedback( icon = "???" logger.info( - f"{icon} feedback result {_feedback_result.name} {status.name} {_feedback_result.feedback_result_id}" + "%s feedback result %s %s %s", icon, _feedback_result.name, + status.name, _feedback_result.feedback_result_id ) return _feedback_result.feedback_result_id @@ -300,9 +460,9 @@ def _feedback_query( limit: Optional[int] = None ): if count: - q = func.count(orm.FeedbackResult.feedback_result_id) + q = func.count(self.orm.FeedbackResult.feedback_result_id) else: - q = select(orm.FeedbackResult) + q = select(self.orm.FeedbackResult) if record_id: q = q.filter_by(record_id=record_id) @@ -317,11 +477,11 @@ def _feedback_query( if isinstance(status, FeedbackResultStatus): status = [status.value] q = q.filter( - orm.FeedbackResult.status.in_([s.value for s in status]) + self.orm.FeedbackResult.status.in_([s.value for s in status]) ) if last_ts_before: q = q.filter( - orm.FeedbackResult.last_ts < last_ts_before.timestamp() + self.orm.FeedbackResult.last_ts < last_ts_before.timestamp() ) if offset is not None: @@ -347,17 +507,15 @@ def get_feedback_count_by_status( limit: Optional[int] = None, shuffle: bool = False ) -> Dict[FeedbackResultStatus, int]: - """ - Get the number of feedback results that match the given criteria grouped by status. - """ + """See [DB.get_feedback_count_by_status][trulens_eval.database.base.DB.get_feedback_count_by_status].""" - with self.Session.begin() as session: + with self.session.begin() as session: q = self._feedback_query( count=True, **locals_except("self", "session") ) - results = session.query(orm.FeedbackResult.status, - q).group_by(orm.FeedbackResult.status) + results = session.query(self.orm.FeedbackResult.status, + q).group_by(self.orm.FeedbackResult.status) return {FeedbackResultStatus(row[0]): row[1] for row in results} @@ -373,11 +531,9 @@ def get_feedback( limit: Optional[int] = None, shuffle: Optional[bool] = False ) -> pd.DataFrame: - """ - See abstract trulens_eval.db:DB.get_feedback for documentation. - """ + """See [DB.get_feedback][trulens_eval.database.base.DB.get_feedback].""" - with self.Session.begin() as session: + with self.session.begin() as session: q = self._feedback_query(**locals_except("self", "session")) results = (row[0] for row in session.execute(q)) @@ -388,26 +544,26 @@ def get_records_and_feedback( self, app_ids: Optional[List[str]] = None ) -> Tuple[pd.DataFrame, Sequence[str]]: - with self.Session.begin() as session: - stmt = select(orm.AppDefinition) + """See [DB.get_records_and_feedback][trulens_eval.database.base.DB.get_records_and_feedback].""" + + with self.session.begin() as session: + stmt = select(self.orm.AppDefinition) if app_ids: - stmt = stmt.where(orm.AppDefinition.app_id.in_(app_ids)) + stmt = stmt.where(self.orm.AppDefinition.app_id.in_(app_ids)) apps = (row[0] for row in session.execute(stmt)) return AppsExtractor().get_df_and_cols(apps) # Use this Perf for missing Perfs. # TODO: Migrate the database instead. -no_perf = schema.Perf( - start_time=datetime.min, end_time=datetime.min -).model_dump() +no_perf = schema.Perf.min().model_dump() def _extract_feedback_results( results: Iterable[orm.FeedbackResult] ) -> pd.DataFrame: - def _extract(_result: orm.FeedbackResult): + def _extract(_result: self.orm.FeedbackResult): app_json = json.loads(_result.record.app.app_json) _type = schema.AppDefinition.model_validate(app_json).root_class @@ -580,8 +736,12 @@ def extract_records(self, self.feedback_columns.add(_res.name) row = { - **{k: np.mean(v) for k, v in values.items()}, - **{k + "_calls": flatten(v) for k, v in calls.items()}, + **{ + k: np.mean(v) for k, v in values.items() + }, + **{ + k + "_calls": flatten(v) for k, v in calls.items() + }, } for col in self.rec_cols: diff --git a/trulens_eval/trulens_eval/database/utils.py b/trulens_eval/trulens_eval/database/utils.py index 43b6da9df..fb2342e85 100644 --- a/trulens_eval/trulens_eval/database/utils.py +++ b/trulens_eval/trulens_eval/database/utils.py @@ -2,6 +2,7 @@ import inspect import logging from pathlib import Path +from pprint import pformat import shutil import sqlite3 from tempfile import TemporaryDirectory @@ -14,10 +15,11 @@ from sqlalchemy import Engine from sqlalchemy import inspect as sql_inspect +from trulens_eval.database import base as mod_db from trulens_eval.database.exceptions import DatabaseVersionException +from trulens_eval.database.legacy.sqlite import LocalSQLite from trulens_eval.database.migrations import DbRevisions from trulens_eval.database.migrations import upgrade_db -from trulens_eval.db import LocalSQLite logger = logging.getLogger(__name__) @@ -42,7 +44,7 @@ def decorate(cls): if _except is not None and attr_name in _except: continue - logger.debug(f"Decorating {attr_name}") + logger.debug("Decorating %s", attr_name) setattr(cls, attr_name, decorator(attr)) return cls @@ -86,7 +88,9 @@ def is_legacy_sqlite(engine: Engine) -> bool: # brand new db, not even initialized yet return False - return not "alembic_version" in tables + version_tables = [t for t in tables if t.endswith("alembic_version")] + + return len(version_tables) == 0 #return DbRevisions.load(engine).current is None @@ -121,21 +125,79 @@ def is_memory_sqlite( ) -def check_db_revision(engine: Engine): +def check_db_revision( + engine: Engine, + prefix: str = mod_db.DEFAULT_DATABASE_PREFIX, + prior_prefix: Optional[str] = None +): """ Check if database schema is at the expected revision. + + Args: + engine: SQLAlchemy engine to check. + + prefix: Prefix used for table names including alembic_version in the + current code. + + prior_prefix: Table prefix used in the previous version of the + database. Before this configuration was an option, the prefix was + equivalent to "". """ + if not isinstance(prefix, str): + raise ValueError("prefix must be a string") + + if prefix == prior_prefix: + raise ValueError( + "prior_prefix and prefix canot be the same. Use None for prior_prefix if it is unknown." + ) + + ins = sqlalchemy.inspect(engine) + tables = ins.get_table_names() + + # Get all tables we could have made for alembic version. Other apps might + # also have made these though. + version_tables = [t for t in tables if t.endswith("alembic_version")] + + if prior_prefix is not None: + # Check if tables using the old/empty prefix exist. + if prior_prefix + "alembic_version" in version_tables: + raise DatabaseVersionException.reconfigured( + prior_prefix=prior_prefix + ) + else: + # Check if the new/expected version table exists. + + if prefix + "alembic_version" not in version_tables: + # If not, lets try to figure out the prior prefix. + + if len(version_tables) > 0: + + if len(version_tables) > 1: + # Cannot figure out prior prefix if there is more than one + # version table. + raise ValueError( + f"Found multiple alembic_version tables: {version_tables}. " + "Cannot determine prior prefix. " + "Please specify it using the `prior_prefix` argument." + ) + + # Guess prior prefix as the single one with version table name. + raise DatabaseVersionException.reconfigured( + prior_prefix=version_tables[0]. + replace("alembic_version", "") + ) + if is_legacy_sqlite(engine): logger.info("Found legacy SQLite file: %s", engine.url) raise DatabaseVersionException.behind() - revisions = DbRevisions.load(engine) + revisions = DbRevisions.load(engine, prefix=prefix) if revisions.current is None: logger.debug("Creating database") upgrade_db( - engine, revision="head" + engine, revision="head", prefix=prefix ) # create automatically if it doesn't exist elif revisions.in_sync: @@ -153,7 +215,7 @@ def check_db_revision(engine: Engine): ) -def migrate_legacy_sqlite(engine: Engine): +def migrate_legacy_sqlite(engine: Engine, prefix: str = "trulens_"): """ Migrate legacy file-based SQLite to the latest Alembic revision: @@ -176,13 +238,15 @@ def migrate_legacy_sqlite(engine: Engine): """ # 1. Make sure that original database is at the latest legacy schema - assert is_legacy_sqlite(engine) + if not is_legacy_sqlite(engine): + raise ValueError("Not a legacy SQLite database") original_file = Path(engine.url.database) saved_db_file = original_file.parent / f"{original_file.name}_saved_{uuid.uuid1()}" shutil.copy(original_file, saved_db_file) logger.info( - f"Saved original db file: `{original_file}` to new file: `{saved_db_file}`" + "Saved original db file: `%s` to new file: `%s`", original_file, + saved_db_file ) logger.info("Handling legacy SQLite file: %s", original_file) logger.debug("Applying legacy migration scripts") @@ -204,7 +268,7 @@ def migrate_legacy_sqlite(engine: Engine): pool_pre_ping=True, pool_use_lifo=True ) - upgrade_db(stg_engine, revision="1") + upgrade_db(stg_engine, revision="1", prefix=prefix) # 3. Copy records from original database to staging src_conn = sqlite3.connect(original_file) @@ -223,7 +287,7 @@ def migrate_legacy_sqlite(engine: Engine): # 4. Migrate staging database to the latest Alembic revision logger.debug("Applying Alembic migration scripts") - upgrade_db(stg_engine, revision="head") + upgrade_db(stg_engine, revision="head", prefix=prefix) # 5. Replace original database file with the staging one logger.debug("Replacing database file at %s", original_file) @@ -240,7 +304,12 @@ def coerce_ts(ts: Union[datetime, str, int, float]) -> datetime: raise ValueError(f"Cannot coerce to datetime: {ts}") -def _copy_database(src_url: str, tgt_url: str): +def copy_database( + src_url: str, + tgt_url: str, + src_prefix: str, # = mod_db.DEFAULT_DATABASE_PREFIX, + tgt_prefix: str, # = mod_db.DEFAULT_DATABASE_PREFIX +): """ Copy all data from a source database to an EMPTY target database. @@ -249,7 +318,7 @@ def _copy_database(src_url: str, tgt_url: str): important that the target database is empty. - Will fail if the databases are not at the latest schema revision. That - can be fixed with `Tru(database_url="...").migrate_database()` + can be fixed with `Tru(database_url="...", database_prefix="...").migrate_database()` - Might fail if the target database enforces relationship constraints, because then the order of inserting data matters. @@ -258,17 +327,43 @@ def _copy_database(src_url: str, tgt_url: str): the databases are NOT used by anyone while this process runs. """ - from trulens_eval.database.sqlalchemy_db import SqlAlchemyDB + from trulens_eval.database.sqlalchemy import SQLAlchemyDB + + src = SQLAlchemyDB.from_db_url(src_url, table_prefix=src_prefix) + check_db_revision(src.engine, prefix=src_prefix) - src = SqlAlchemyDB.from_db_url(src_url) - check_db_revision(src.engine) + tgt = SQLAlchemyDB.from_db_url(tgt_url, table_prefix=tgt_prefix) + check_db_revision(tgt.engine, prefix=tgt_prefix) - tgt = SqlAlchemyDB.from_db_url(tgt_url) - check_db_revision(tgt.engine) + print("Source database:") + print(pformat(src)) - for table in ["apps", "feedback_defs", "records", "feedbacks"]: + print("Target database:") + print(pformat(tgt)) + + for k, source_table_class in src.orm.registry.items(): + # ["apps", "feedback_defs", "records", "feedbacks"]: + + if not hasattr(source_table_class, "_table_base_name"): + continue + + target_table_class = tgt.orm.registry.get(k) with src.engine.begin() as src_conn: + with tgt.engine.begin() as tgt_conn: - df = pd.read_sql(f"SELECT * FROM {table}", src_conn) - df.to_sql(table, tgt_conn, index=False, if_exists="append") + + df = pd.read_sql( + f"SELECT * FROM {source_table_class.__tablename__}", + src_conn + ) + df.to_sql( + target_table_class.__tablename__, + tgt_conn, + index=False, + if_exists="append" + ) + + print( + f"Copied {len(df)} rows from {source_table_class.__tablename__} in source {target_table_class.__tablename__} in target." + ) diff --git a/trulens_eval/trulens_eval/feedback/provider/endpoint/base.py b/trulens_eval/trulens_eval/feedback/provider/endpoint/base.py index 7c04bf431..167f6d4ec 100644 --- a/trulens_eval/trulens_eval/feedback/provider/endpoint/base.py +++ b/trulens_eval/trulens_eval/feedback/provider/endpoint/base.py @@ -357,8 +357,8 @@ def print_instrumented(cls): for wrapped_thing, wrappers in cls.instrumented_methods.items(): print( - wrapped_thing if wrapped_thing != object else - "unknown dynamically generated class(es)" + wrapped_thing if wrapped_thing != + object else "unknown dynamically generated class(es)" ) for original, _, endpoint in wrappers: print( diff --git a/trulens_eval/trulens_eval/feedback/v2/feedback.py b/trulens_eval/trulens_eval/feedback/v2/feedback.py index 7a1c648fa..acebeffca 100644 --- a/trulens_eval/trulens_eval/feedback/v2/feedback.py +++ b/trulens_eval/trulens_eval/feedback/v2/feedback.py @@ -98,10 +98,12 @@ class GroundTruth(Semantics): supported_criteria = { # NOTE: typo in "response" below is intentional. Still in langchain as of Sept 26, 2023. - key.value: value.replace(" If so, response Y. If not, respond N.", '' - ) # older version of langchain had this typo - .replace(" If so, respond Y. If not, respond N.", '') # new one is fixed - if isinstance(value, str) else value + key.value: + value.replace(" If so, response Y. If not, respond N.", '' + ) # older version of langchain had this typo + .replace(" If so, respond Y. If not, respond N.", '' + ) # new one is fixed + if isinstance(value, str) else value for key, value in _SUPPORTED_CRITERIA.items() } diff --git a/trulens_eval/trulens_eval/pages/Apps.py b/trulens_eval/trulens_eval/pages/Apps.py index 9c32c3b94..d74656b0e 100644 --- a/trulens_eval/trulens_eval/pages/Apps.py +++ b/trulens_eval/trulens_eval/pages/Apps.py @@ -1,13 +1,13 @@ import asyncio from typing import Optional -import pydantic - from trulens_eval.schema import AppDefinition from trulens_eval.schema import Record +from trulens_eval.tru import Tru from trulens_eval.utils.json import jsonify_for_ui from trulens_eval.utils.serial import JSON from trulens_eval.utils.serial import Lens +from trulens_eval.utils.streamlit import init_from_args from trulens_eval.ux.apps import ChatRecord # https://github.com/jerryjliu/llama_index/issues/7244: @@ -15,6 +15,13 @@ import streamlit as st from ux.page_config import set_page_config +if __name__ == "__main__": + # If not imported, gets args from command line and creates Tru singleton + init_from_args() + +tru = Tru() +lms = tru.db + st.runtime.legacy_caching.clear_cache() set_page_config(page_title="App Runner") @@ -287,9 +294,6 @@ def end_session(): del st.session_state['records'] -# NOTE: using callbacks for all interactions as otherwise I'm seeing various -# problems. - if "records" not in st.session_state: # This field only exists after a model is selected. Here no model was # selected yet. Show all loadable models for which a new session can be diff --git a/trulens_eval/trulens_eval/pages/Evaluations.py b/trulens_eval/trulens_eval/pages/Evaluations.py index a07f3751c..3f8d2c1ae 100644 --- a/trulens_eval/trulens_eval/pages/Evaluations.py +++ b/trulens_eval/trulens_eval/pages/Evaluations.py @@ -5,6 +5,8 @@ # https://github.com/jerryjliu/llama_index/issues/7244: asyncio.set_event_loop(asyncio.new_event_loop()) +from pprint import pformat + import matplotlib.pyplot as plt import numpy as np import pandas as pd @@ -24,12 +26,13 @@ from trulens_eval.app import Other from trulens_eval.app import Prompt from trulens_eval.app import Tool -from trulens_eval.db import MULTI_CALL_NAME_DELIMITER +from trulens_eval.database.base import MULTI_CALL_NAME_DELIMITER from trulens_eval.react_components.record_viewer import record_viewer from trulens_eval.schema import Record from trulens_eval.schema import Select from trulens_eval.utils.json import jsonify_for_ui from trulens_eval.utils.serial import Lens +from trulens_eval.utils.streamlit import init_from_args from trulens_eval.ux.components import draw_agent_info from trulens_eval.ux.components import draw_call from trulens_eval.ux.components import draw_llm_info @@ -45,6 +48,10 @@ set_page_config(page_title="Evaluations") st.title("Evaluations") +if __name__ == "__main__": + # If not imported, gets args from command line and creates Tru singleton + init_from_args() + tru = Tru() lms = tru.db @@ -53,12 +60,13 @@ # TODO: remove code redundancy / redundant database calls feedback_directions = { ( - row.feedback_json.get("supplied_name", "") or - row.feedback_json["implementation"]["name"] - ): ( - "HIGHER_IS_BETTER" if row.feedback_json.get("higher_is_better", True) - else "LOWER_IS_BETTER" - ) for _, row in lms.get_feedback_defs().iterrows() + row.feedback_json.get("supplied_name", "") or row.feedback_json["implementation"]["name"] + ): + ( + "HIGHER_IS_BETTER" + if row.feedback_json.get("higher_is_better", True) else + "LOWER_IS_BETTER" + ) for _, row in lms.get_feedback_defs().iterrows() } default_direction = "HIGHER_IS_BETTER" @@ -385,7 +393,7 @@ def highlight(s): args = c['args'] for k, v in args.items(): if not isinstance(v, str): - args[k] = pprint.pformat(v) + args[k] = pformat(v) df = pd.DataFrame.from_records( c['args'] for c in call diff --git a/trulens_eval/trulens_eval/schema.py b/trulens_eval/trulens_eval/schema.py index fca9a7e13..f2a90508b 100644 --- a/trulens_eval/trulens_eval/schema.py +++ b/trulens_eval/trulens_eval/schema.py @@ -141,6 +141,14 @@ class Perf(serial.SerialModel, pydantic.BaseModel): end_time: datetime.datetime """Datetime after the recorded call.""" + @staticmethod + def min(): + """Zero-length span with start and end times at the minimum datetime.""" + + return Perf( + start_time=datetime.datetime.min, end_time=datetime.datetime.min + ) + @staticmethod def now(latency: Optional[datetime.timedelta] = None) -> Perf: """Create a `Perf` instance starting now and ending now plus latency. diff --git a/trulens_eval/trulens_eval/tru.py b/trulens_eval/trulens_eval/tru.py index f1fe14deb..5e6962e7a 100644 --- a/trulens_eval/trulens_eval/tru.py +++ b/trulens_eval/trulens_eval/tru.py @@ -14,10 +14,8 @@ import threading from threading import Thread from time import sleep -from typing import ( - Any, Callable, Dict, Iterable, List, Optional, Sequence, Tuple, Union -) -import warnings +from typing import (Any, Callable, Dict, Generic, Iterable, List, Optional, + Sequence, Tuple, TypeVar, Union) import humanize import pandas @@ -25,17 +23,18 @@ from typing_extensions import Annotated from typing_extensions import Doc -from trulens_eval import db from trulens_eval import schema -from trulens_eval.database import sqlalchemy_db +from trulens_eval.database import sqlalchemy +from trulens_eval.database.base import DB +from trulens_eval.database.exceptions import DatabaseVersionException from trulens_eval.feedback import feedback from trulens_eval.utils import notebook_utils from trulens_eval.utils import python from trulens_eval.utils import serial -from trulens_eval.utils import text from trulens_eval.utils import threading as tru_threading from trulens_eval.utils.imports import static_resource from trulens_eval.utils.python import Future # code style exception +from trulens_eval.utils.python import OpaqueWrapper pp = PrettyPrinter() @@ -80,11 +79,14 @@ class Tru(python.SingletonPerName): of methods to instrument. [TruVirtual][trulens_eval.tru_virtual.TruVirtual]: Virtual - apps that do not have a real app to instrument but have a virtual - structure and can log existing captured data as if they were trulens + apps that do not have a real app to instrument but have a virtual structure and can log existing captured data as if they were trulens records. Args: + database: Database to use. If not provided, an + [SQLAlchemyDB][trulens_eval.database.sqlalchemy.SQLAlchemyDB] database + will be initialized based on the other arguments. + database_url: Database URL. Defaults to a local SQLite database file at `"default.sqlite"` See [this article](https://docs.sqlalchemy.org/en/20/core/engines.html#database-urls) @@ -95,15 +97,13 @@ class Tru(python.SingletonPerName): **Deprecated**: Use `database_url` instead. + database_prefix: Prefix for table names for trulens_eval to use. + May be useful in some databases hosting other apps. + database_redact_keys: Whether to redact secret keys in data to be written to database (defaults to `False`) - """ - - DEFAULT_DATABASE_FILE: str = "default.sqlite" - """Filename for default sqlite database. - - The sqlalchemy url for this default local sqlite database is `sqlite:///default.sqlite`. + database_args: Additional arguments to pass to the database constructor. """ RETRY_RUNNING_SECONDS: float = 60.0 @@ -124,8 +124,11 @@ class Tru(python.SingletonPerName): DEFERRED_NUM_RUNS: int = 32 """Number of futures to wait for when evaluating deferred feedback functions.""" - db: db.DB - """Database supporting this workspace.""" + db: Union[DB, OpaqueWrapper[DB]] + """Database supporting this workspace. + + Will be an opqaue wrapper if it is not ready to use due to migration requirements. + """ _dashboard_urls: Optional[str] = None @@ -146,56 +149,58 @@ class Tru(python.SingletonPerName): def __init__( self, + database: Optional[DB] = None, database_url: Optional[str] = None, database_file: Optional[str] = None, - database_redact_keys: bool = False, + database_redact_keys: Optional[bool] = None, + database_prefix: Optional[str] = None, + database_args: Optional[Dict[str, Any]] = None, + database_check_revision: bool = True, ): + """ + Args: + database_check_revision: Whether to check the database revision on + init. This prompt determine whether database migration is required. + """ + + if database_args is None: + database_args = {} + + database_args.update( + { + k: v for k, v in { + 'database_url': database_url, + 'database_file': database_file, + 'database_redact_keys': database_redact_keys, + 'database_prefix': database_prefix + }.items() if v is not None + } + ) if python.safe_hasattr(self, "db"): - if database_url is not None or database_file is not None: + # Already initialized by SingletonByName mechanism. Give warning if + # any option was specified (not None) as it will be ignored. + if sum((1 if v is not None else 0 for v in database_args.values()) + ) > 0: logger.warning( "Tru was already initialized. " - "Cannot change database_url=%s " - "or database_file=%s .", database_url, database_file + "Cannot change database configuration after initialization." ) # Already initialized by SingletonByName mechanism. return - if None not in (database_url, database_file): - raise ValueError( - "Please specify at most one of `database_url` and `database_file`" - ) - - if database_file: - warnings.warn( - ( - "`database_file` is deprecated, " - "use `database_url` instead as in `database_url='sqlite:///filename'." - ), - DeprecationWarning, - stacklevel=2 - ) - - if database_url is None: - database_url = f"sqlite:///{database_file or self.DEFAULT_DATABASE_FILE}" - - self.db: db.DB = sqlalchemy_db.SqlAlchemyDB.from_db_url( - database_url, redact_keys=database_redact_keys - ) - - print( - f"{text.UNICODE_SQUID} Tru initialized with db url {self.db.engine.url} ." - ) - if database_redact_keys: - print( - f"{text.UNICODE_LOCK} Secret keys will not be included in the database." - ) + if database is not None: + self.db = database else: - print( - f"{text.UNICODE_STOP} Secret keys may be written to the database. " - "See the `database_redact_keys` option of Tru` to prevent this." - ) + self.db = sqlalchemy.SQLAlchemyDB.from_tru_args(**database_args) + + if database_check_revision: + try: + self.db.check_db_revision() + except DatabaseVersionException as e: + print(e) + self.db = OpaqueWrapper(obj=self.db, e=e) def Chain( self, chain: langchain.chains.base.Chain, **kwargs: dict @@ -287,18 +292,44 @@ def Virtual( return TruVirtual(tru=self, app=app, **kwargs) def reset_database(self): - """Reset the database. Clears all tables.""" + """Reset the database. Clears all tables. + + See [DB.reset_database][trulens_eval.database.base.DB.reset_database]. + """ - self.db.reset_database() + if isinstance(self.db, OpaqueWrapper): + db = self.db.unwrap() + elif isinstance(self.db, DB): + db = self.db + else: + raise RuntimeError("Unhandled database type.") - def migrate_database(self): + db.reset_database() + self.db = db + + def migrate_database(self, **kwargs: Dict[str, Any]): """Migrates the database. This should be run whenever there are breaking changes in a database - created with an older version of trulens_eval. + created with an older version of _trulens_eval_. + + Args: + **kwargs: Keyword arguments to pass to + [migrate_database][trulens_eval.database.base.DB.migrate_database] + of the current database. + + See [DB.migrate_database][trulens_eval.database.base.DB.migrate_database]. """ - self.db.migrate_database() + if isinstance(self.db, OpaqueWrapper): + db = self.db.unwrap() + elif isinstance(self.db, DB): + db = self.db + else: + raise RuntimeError("Unhandled database type.") + + db.migrate_database(**kwargs) + self.db = db def add_record( self, @@ -334,8 +365,8 @@ def _submit_feedback_functions( record: schema.Record, feedback_functions: Sequence[feedback.Feedback], app: Optional[schema.AppDefinition] = None, - on_done: Optional[Callable[[Future[schema.FeedbackResult]], - None]] = None + on_done: Optional[Callable[[Union[schema.FeedbackResult, Future[schema.FeedbackResult]], + None]]] = None ) -> List[Tuple[feedback.Feedback, Future[schema.FeedbackResult]]]: """Schedules to run the given feedback functions. @@ -359,7 +390,7 @@ def _submit_feedback_functions( app_id = record.app_id - self.db: db.DB + self.db: DB if app is None: app = schema.AppDefinition.model_validate( @@ -385,11 +416,28 @@ def _submit_feedback_functions( tp: tru_threading.TP = tru_threading.TP() for ffunc in feedback_functions: + # Run feedback function and the on_done callback. This makes sure + # that Future.result() returns only after on_done has finished. + def run_and_call_callback(ffunc, app, record): + temp = ffunc.run(app=app, record=record) + if on_done is not None: + try: + on_done(temp) + finally: + return temp + + return temp + + fut: Future[schema.FeedbackResult] = \ - tp.submit(ffunc.run, app=app, record=record) + tp.submit(run_and_call_callback, ffunc=ffunc, app=app, record=record) + + # Have to roll the on_done callback into the submitted function + # because the result() is returned before callback runs otherwise. + # We want to do db work before result is returned. - if on_done is not None: - fut.add_done_callback(on_done) + # if on_done is not None: + # fut.add_done_callback(on_done) feedbacks_and_futures.append((ffunc, fut)) @@ -811,7 +859,9 @@ def runloop(): pass tqdm_total.set_postfix( - {name: count for name, count in runs_stats.items()} + { + name: count for name, count in runs_stats.items() + } ) queue_stats = self.db.get_feedback_count_by_status() @@ -983,7 +1033,8 @@ def run_dashboard( args += [ leaderboard_path, "--", "--database-url", - self.db.engine.url.render_as_string(hide_password=False) + self.db.engine.url.render_as_string(hide_password=False), + "--database-prefix", self.db.table_prefix ] proc = subprocess.Popen( diff --git a/trulens_eval/trulens_eval/tru_rails.py b/trulens_eval/trulens_eval/tru_rails.py index 0f54518a6..70efb600d 100644 --- a/trulens_eval/trulens_eval/tru_rails.py +++ b/trulens_eval/trulens_eval/tru_rails.py @@ -279,8 +279,10 @@ async def feedback_action( selectors = { argname: - (Lens.of_string(arglens) if isinstance(arglens, str) else arglens) - for argname, arglens in selectors.items() + ( + Lens.of_string(arglens) + if isinstance(arglens, str) else arglens + ) for argname, arglens in selectors.items() } feedback_function = feedback_function.on(**selectors) diff --git a/trulens_eval/trulens_eval/utils/imports.py b/trulens_eval/trulens_eval/utils/imports.py index dc47d2028..6fd7421b4 100644 --- a/trulens_eval/trulens_eval/utils/imports.py +++ b/trulens_eval/trulens_eval/utils/imports.py @@ -8,7 +8,6 @@ from dataclasses import dataclass from importlib import metadata from importlib import resources - import inspect import logging from pathlib import Path diff --git a/trulens_eval/trulens_eval/utils/python.py b/trulens_eval/trulens_eval/utils/python.py index f60940549..b55c5d2cd 100644 --- a/trulens_eval/trulens_eval/utils/python.py +++ b/trulens_eval/trulens_eval/utils/python.py @@ -499,6 +499,39 @@ class above. # Wrapping utilities +class OpaqueWrapper(Generic[T]): + """Wrap an object preventing all access. + + Any access except to + [unwrap][trulens_eval.utils.python.OpaqueWrapper.unwrap] will result in an + exception with the given message. + + Args: + obj: The object to wrap. + + e: The exception to raise when an attribute is accessed. + """ + + def __init__(self, obj: T, e: Exception): + self._obj = obj + self._e = e + + def unwrap(self) -> T: + """Get the wrapped object back.""" + return self._obj + + def __getattr__(self, name): + raise self._e + + def __setattr__(self, name, value): + if name in ["_obj", "_e"]: + return super().__setattr__(name, value) + raise self._e + + def __call__(self, *args: Any, **kwds: Any) -> Any: + raise self._e + + def wrap_awaitable( awaitable: Awaitable[T], on_await: Optional[Callable[[], Any]] = None, diff --git a/trulens_eval/trulens_eval/utils/streamlit.py b/trulens_eval/trulens_eval/utils/streamlit.py new file mode 100644 index 000000000..ed977ec3d --- /dev/null +++ b/trulens_eval/trulens_eval/utils/streamlit.py @@ -0,0 +1,30 @@ +import argparse +import sys + +from trulens_eval.database import base as mod_db +from trulens_eval.tru import Tru + + +def init_from_args(): + """Parse command line arguments and initialize Tru with them. + + As Tru is a singleton, further Tru() uses will get the same configuration. + """ + + parser = argparse.ArgumentParser() + parser.add_argument("--database-url", default=None) + parser.add_argument( + "--database-prefix", default=mod_db.DEFAULT_DATABASE_PREFIX + ) + + try: + args = parser.parse_args() + except SystemExit as e: + print(e) + + # This exception will be raised if --help or invalid command line arguments + # are used. Currently, streamlit prevents the program from exiting normally, + # so we have to do a hard exit. + sys.exit(e.code) + + Tru(database_url=args.database_url, database_prefix=args.database_prefix) diff --git a/trulens_eval/trulens_eval/ux/styles.py b/trulens_eval/trulens_eval/ux/styles.py index e30cb5902..924f9c901 100644 --- a/trulens_eval/trulens_eval/ux/styles.py +++ b/trulens_eval/trulens_eval/ux/styles.py @@ -115,10 +115,11 @@ def of_score(score: float, higher_is_better: bool = True) -> Category: valid_directions = ["HIGHER_IS_BETTER", "LOWER_IS_BETTER"] cellstyle_jscode = { - k: f"""function(params) {{ + k: + f"""function(params) {{ let v = parseFloat(params.value); """ + "\n".join( - f""" + f""" if (v {'>=' if k == "HIGHER_IS_BETTER" else '<='} {cat.threshold}) {{ return {{ 'color': 'black', @@ -126,7 +127,7 @@ def of_score(score: float, higher_is_better: bool = True) -> Category: }}; }} """ for cat in map(operator.itemgetter(k), CATEGORY.ALL) - ) + f""" + ) + f""" // i.e. not a number return {{ 'color': 'black',