From f712162c01f065da29fffbbed1e856a1f3876b1b Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 24 Oct 2024 23:14:17 +0000 Subject: [PATCH] feat: Add support for Python 3.13 (#13211) - [ ] Regenerate this pull request now. PiperOrigin-RevId: 689139590 Source-Link: https://github.com/googleapis/googleapis/commit/296f2ac1aa9abccb7708b639b7839faa1809087f Source-Link: https://github.com/googleapis/googleapis-gen/commit/26927362e0aa1293258fc23fe3ce83c5c21d5fbb Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLXdlYnNlY3VyaXR5c2Nhbm5lci8uT3dsQm90LnlhbWwiLCJoIjoiMjY5MjczNjJlMGFhMTI5MzI1OGZjMjNmZTNjZTgzYzVjMjFkNWZiYiJ9 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLXdvcmtmbG93cy8uT3dsQm90LnlhbWwiLCJoIjoiMjY5MjczNjJlMGFhMTI5MzI1OGZjMjNmZTNjZTgzYzVjMjFkNWZiYiJ9 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLXdvcmtzdGF0aW9ucy8uT3dsQm90LnlhbWwiLCJoIjoiMjY5MjczNjJlMGFhMTI5MzI1OGZjMjNmZTNjZTgzYzVjMjFkNWZiYiJ9 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWdlby10eXBlLy5Pd2xCb3QueWFtbCIsImgiOiIyNjkyNzM2MmUwYWExMjkzMjU4ZmMyM2ZlM2NlODNjNWMyMWQ1ZmJiIn0= Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLW1hcHMtYWRkcmVzc3ZhbGlkYXRpb24vLk93bEJvdC55YW1sIiwiaCI6IjI2OTI3MzYyZTBhYTEyOTMyNThmYzIzZmUzY2U4M2M1YzIxZDVmYmIifQ== Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLW1hcHMtYXJlYWluc2lnaHRzLy5Pd2xCb3QueWFtbCIsImgiOiIyNjkyNzM2MmUwYWExMjkzMjU4ZmMyM2ZlM2NlODNjNWMyMWQ1ZmJiIn0= Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLW1hcHMtZmxlZXRlbmdpbmUtZGVsaXZlcnkvLk93bEJvdC55YW1sIiwiaCI6IjI2OTI3MzYyZTBhYTEyOTMyNThmYzIzZmUzY2U4M2M1YzIxZDVmYmIifQ== Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLW1hcHMtZmxlZXRlbmdpbmUvLk93bEJvdC55YW1sIiwiaCI6IjI2OTI3MzYyZTBhYTEyOTMyNThmYzIzZmUzY2U4M2M1YzIxZDVmYmIifQ== Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLW1hcHMtbWFwc3BsYXRmb3JtZGF0YXNldHMvLk93bEJvdC55YW1sIiwiaCI6IjI2OTI3MzYyZTBhYTEyOTMyNThmYzIzZmUzY2U4M2M1YzIxZDVmYmIifQ== Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLW1hcHMtcGxhY2VzLy5Pd2xCb3QueWFtbCIsImgiOiIyNjkyNzM2MmUwYWExMjkzMjU4ZmMyM2ZlM2NlODNjNWMyMWQ1ZmJiIn0= Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLW1hcHMtcm91dGVvcHRpbWl6YXRpb24vLk93bEJvdC55YW1sIiwiaCI6IjI2OTI3MzYyZTBhYTEyOTMyNThmYzIzZmUzY2U4M2M1YzIxZDVmYmIifQ== Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLW1hcHMtcm91dGluZy8uT3dsQm90LnlhbWwiLCJoIjoiMjY5MjczNjJlMGFhMTI5MzI1OGZjMjNmZTNjZTgzYzVjMjFkNWZiYiJ9 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLW1hcHMtc29sYXIvLk93bEJvdC55YW1sIiwiaCI6IjI2OTI3MzYyZTBhYTEyOTMyNThmYzIzZmUzY2U4M2M1YzIxZDVmYmIifQ== Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLXNob3BwaW5nLW1lcmNoYW50LWFjY291bnRzLy5Pd2xCb3QueWFtbCIsImgiOiIyNjkyNzM2MmUwYWExMjkzMjU4ZmMyM2ZlM2NlODNjNWMyMWQ1ZmJiIn0= Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLXNob3BwaW5nLW1lcmNoYW50LWNvbnZlcnNpb25zLy5Pd2xCb3QueWFtbCIsImgiOiIyNjkyNzM2MmUwYWExMjkzMjU4ZmMyM2ZlM2NlODNjNWMyMWQ1ZmJiIn0= Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLXNob3BwaW5nLW1lcmNoYW50LWRhdGFzb3VyY2VzLy5Pd2xCb3QueWFtbCIsImgiOiIyNjkyNzM2MmUwYWExMjkzMjU4ZmMyM2ZlM2NlODNjNWMyMWQ1ZmJiIn0= Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLXNob3BwaW5nLW1lcmNoYW50LWludmVudG9yaWVzLy5Pd2xCb3QueWFtbCIsImgiOiIyNjkyNzM2MmUwYWExMjkzMjU4ZmMyM2ZlM2NlODNjNWMyMWQ1ZmJiIn0= Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLXNob3BwaW5nLW1lcmNoYW50LWxmcC8uT3dsQm90LnlhbWwiLCJoIjoiMjY5MjczNjJlMGFhMTI5MzI1OGZjMjNmZTNjZTgzYzVjMjFkNWZiYiJ9 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLXNob3BwaW5nLW1lcmNoYW50LW5vdGlmaWNhdGlvbnMvLk93bEJvdC55YW1sIiwiaCI6IjI2OTI3MzYyZTBhYTEyOTMyNThmYzIzZmUzY2U4M2M1YzIxZDVmYmIifQ== Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLXNob3BwaW5nLW1lcmNoYW50LXByb2R1Y3RzLy5Pd2xCb3QueWFtbCIsImgiOiIyNjkyNzM2MmUwYWExMjkzMjU4ZmMyM2ZlM2NlODNjNWMyMWQ1ZmJiIn0= --------- Co-authored-by: Owl Bot Co-authored-by: Anthonios Partheniou --- .../google-cloud-websecurityscanner/.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../web_security_scanner/transports/rest.py | 2 +- .../web_security_scanner/transports/rest.py | 2 +- .../web_security_scanner/transports/rest.py | 2 +- .../noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../google-cloud-websecurityscanner/setup.py | 2 ++ .../testing/constraints-3.13.txt | 6 ++++++ packages/google-cloud-workflows/.flake8 | 2 +- .../google-cloud-workflows/CONTRIBUTING.rst | 10 +++++---- packages/google-cloud-workflows/MANIFEST.in | 2 +- packages/google-cloud-workflows/docs/conf.py | 2 +- .../services/workflows/transports/rest.py | 2 +- .../services/workflows/transports/rest.py | 2 +- packages/google-cloud-workflows/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- packages/google-cloud-workflows/setup.py | 2 ++ .../testing/constraints-3.13.txt | 6 ++++++ packages/google-cloud-workstations/.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../google-cloud-workstations/MANIFEST.in | 2 +- .../google-cloud-workstations/docs/conf.py | 2 +- .../services/workstations/transports/rest.py | 2 +- .../services/workstations/transports/rest.py | 2 +- packages/google-cloud-workstations/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- packages/google-cloud-workstations/setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ packages/google-geo-type/.flake8 | 2 +- packages/google-geo-type/CONTRIBUTING.rst | 10 +++++---- packages/google-geo-type/MANIFEST.in | 2 +- packages/google-geo-type/docs/conf.py | 2 +- packages/google-geo-type/docs/index.rst | 1 + packages/google-geo-type/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- packages/google-geo-type/setup.py | 2 ++ .../testing/constraints-3.13.txt | 6 ++++++ .../google-maps-addressvalidation/.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../google-maps-addressvalidation/MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../address_validation/transports/rest.py | 2 +- .../google-maps-addressvalidation/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../google-maps-addressvalidation/setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ packages/google-maps-areainsights/.flake8 | 2 +- .../google-maps-areainsights/CONTRIBUTING.rst | 10 +++++---- packages/google-maps-areainsights/MANIFEST.in | 2 +- .../google-maps-areainsights/docs/conf.py | 2 +- .../services/area_insights/transports/rest.py | 2 +- packages/google-maps-areainsights/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- packages/google-maps-areainsights/setup.py | 2 ++ .../testing/constraints-3.13.txt | 6 ++++++ .../google-maps-fleetengine-delivery/.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../delivery_service/transports/rest.py | 2 +- .../maps-fleetengine-delivery-v1-py.tar.gz | 0 .../noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../google-maps-fleetengine-delivery/setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ packages/google-maps-fleetengine/.flake8 | 2 +- .../google-maps-fleetengine/CONTRIBUTING.rst | 10 +++++---- packages/google-maps-fleetengine/MANIFEST.in | 2 +- packages/google-maps-fleetengine/docs/conf.py | 2 +- packages/google-maps-fleetengine/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- packages/google-maps-fleetengine/setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ .../google-maps-mapsplatformdatasets/.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../maps_platform_datasets/transports/rest.py | 2 +- .../noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../google-maps-mapsplatformdatasets/setup.py | 2 ++ .../testing/constraints-3.13.txt | 6 ++++++ packages/google-maps-places/.flake8 | 2 +- packages/google-maps-places/CONTRIBUTING.rst | 10 +++++---- packages/google-maps-places/MANIFEST.in | 2 +- packages/google-maps-places/docs/conf.py | 2 +- .../services/places/transports/rest.py | 2 +- packages/google-maps-places/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- packages/google-maps-places/setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ .../google-maps-routeoptimization/.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../google-maps-routeoptimization/MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../route_optimization/transports/rest.py | 2 +- .../google-maps-routeoptimization/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../google-maps-routeoptimization/setup.py | 2 ++ .../testing/constraints-3.13.txt | 6 ++++++ packages/google-maps-routing/.flake8 | 2 +- packages/google-maps-routing/CONTRIBUTING.rst | 10 +++++---- packages/google-maps-routing/MANIFEST.in | 2 +- packages/google-maps-routing/docs/conf.py | 2 +- .../services/routes/transports/rest.py | 2 +- packages/google-maps-routing/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- packages/google-maps-routing/setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ packages/google-maps-solar/.flake8 | 2 +- packages/google-maps-solar/CONTRIBUTING.rst | 10 +++++---- packages/google-maps-solar/MANIFEST.in | 2 +- packages/google-maps-solar/docs/conf.py | 2 +- .../services/solar/transports/rest.py | 2 +- packages/google-maps-solar/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- packages/google-maps-solar/setup.py | 2 ++ .../testing/constraints-3.13.txt | 6 ++++++ .../google-shopping-merchant-accounts/.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../account_issue_service/transports/rest.py | 2 +- .../account_tax_service/transports/rest.py | 2 +- .../accounts_service/transports/rest.py | 2 +- .../transports/rest.py | 2 +- .../transports/rest.py | 2 +- .../business_info_service/transports/rest.py | 2 +- .../transports/rest.py | 2 +- .../homepage_service/transports/rest.py | 2 +- .../transports/rest.py | 2 +- .../programs_service/transports/rest.py | 2 +- .../regions_service/transports/rest.py | 2 +- .../transports/rest.py | 2 +- .../transports/rest.py | 2 +- .../transports/rest.py | 2 +- .../services/user_service/transports/rest.py | 2 +- .../merchant-accounts-v1beta-py.tar.gz | Bin 0 -> 360448 bytes .../noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ .../.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../transports/rest.py | 2 +- .../noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../setup.py | 2 ++ .../testing/constraints-3.13.txt | 6 ++++++ .../.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../data_sources_service/transports/rest.py | 2 +- .../file_uploads_service/transports/rest.py | 2 +- .../noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../setup.py | 2 ++ .../testing/constraints-3.13.txt | 6 ++++++ .../.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../transports/rest.py | 2 +- .../transports/rest.py | 2 +- .../noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ packages/google-shopping-merchant-lfp/.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../google-shopping-merchant-lfp/MANIFEST.in | 2 +- .../google-shopping-merchant-lfp/docs/conf.py | 2 +- .../lfp_inventory_service/transports/rest.py | 2 +- .../lfp_sale_service/transports/rest.py | 2 +- .../lfp_store_service/transports/rest.py | 2 +- .../google-shopping-merchant-lfp/noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../google-shopping-merchant-lfp/setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ .../.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../transports/rest.py | 2 +- .../noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ .../google-shopping-merchant-products/.flake8 | 2 +- .../CONTRIBUTING.rst | 10 +++++---- .../MANIFEST.in | 2 +- .../docs/conf.py | 2 +- .../product_inputs_service/transports/rest.py | 2 +- .../products_service/transports/rest.py | 2 +- .../noxfile.py | 20 ++++++++++++------ .../scripts/decrypt-secrets.sh | 2 +- .../setup.py | 2 ++ .../testing/constraints-3.13.txt | 7 ++++++ 204 files changed, 693 insertions(+), 321 deletions(-) create mode 100644 packages/google-cloud-websecurityscanner/testing/constraints-3.13.txt create mode 100644 packages/google-cloud-workflows/testing/constraints-3.13.txt create mode 100644 packages/google-cloud-workstations/testing/constraints-3.13.txt create mode 100644 packages/google-geo-type/testing/constraints-3.13.txt create mode 100644 packages/google-maps-addressvalidation/testing/constraints-3.13.txt create mode 100644 packages/google-maps-areainsights/testing/constraints-3.13.txt create mode 100644 packages/google-maps-fleetengine-delivery/maps-fleetengine-delivery-v1-py.tar.gz create mode 100644 packages/google-maps-fleetengine-delivery/testing/constraints-3.13.txt create mode 100644 packages/google-maps-fleetengine/testing/constraints-3.13.txt create mode 100644 packages/google-maps-mapsplatformdatasets/testing/constraints-3.13.txt create mode 100644 packages/google-maps-places/testing/constraints-3.13.txt create mode 100644 packages/google-maps-routeoptimization/testing/constraints-3.13.txt create mode 100644 packages/google-maps-routing/testing/constraints-3.13.txt create mode 100644 packages/google-maps-solar/testing/constraints-3.13.txt create mode 100644 packages/google-shopping-merchant-accounts/merchant-accounts-v1beta-py.tar.gz create mode 100644 packages/google-shopping-merchant-accounts/testing/constraints-3.13.txt create mode 100644 packages/google-shopping-merchant-conversions/testing/constraints-3.13.txt create mode 100644 packages/google-shopping-merchant-datasources/testing/constraints-3.13.txt create mode 100644 packages/google-shopping-merchant-inventories/testing/constraints-3.13.txt create mode 100644 packages/google-shopping-merchant-lfp/testing/constraints-3.13.txt create mode 100644 packages/google-shopping-merchant-notifications/testing/constraints-3.13.txt create mode 100644 packages/google-shopping-merchant-products/testing/constraints-3.13.txt diff --git a/packages/google-cloud-websecurityscanner/.flake8 b/packages/google-cloud-websecurityscanner/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-cloud-websecurityscanner/.flake8 +++ b/packages/google-cloud-websecurityscanner/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-websecurityscanner/CONTRIBUTING.rst b/packages/google-cloud-websecurityscanner/CONTRIBUTING.rst index 1ad415409657..87f0949b3143 100644 --- a/packages/google-cloud-websecurityscanner/CONTRIBUTING.rst +++ b/packages/google-cloud-websecurityscanner/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-cloud-websecurityscanner/MANIFEST.in b/packages/google-cloud-websecurityscanner/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-cloud-websecurityscanner/MANIFEST.in +++ b/packages/google-cloud-websecurityscanner/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-websecurityscanner/docs/conf.py b/packages/google-cloud-websecurityscanner/docs/conf.py index 1b3c95afd562..e9ec027bfedf 100644 --- a/packages/google-cloud-websecurityscanner/docs/conf.py +++ b/packages/google-cloud-websecurityscanner/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1/services/web_security_scanner/transports/rest.py b/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1/services/web_security_scanner/transports/rest.py index ce8df608b902..e391218e0948 100644 --- a/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1/services/web_security_scanner/transports/rest.py +++ b/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1/services/web_security_scanner/transports/rest.py @@ -47,7 +47,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1alpha/services/web_security_scanner/transports/rest.py b/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1alpha/services/web_security_scanner/transports/rest.py index 6237c1dceafc..a3f21e7077c7 100644 --- a/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1alpha/services/web_security_scanner/transports/rest.py +++ b/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1alpha/services/web_security_scanner/transports/rest.py @@ -45,7 +45,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1beta/services/web_security_scanner/transports/rest.py b/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1beta/services/web_security_scanner/transports/rest.py index 15c9c7df662f..dd1012c8d09f 100644 --- a/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1beta/services/web_security_scanner/transports/rest.py +++ b/packages/google-cloud-websecurityscanner/google/cloud/websecurityscanner_v1beta/services/web_security_scanner/transports/rest.py @@ -45,7 +45,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-cloud-websecurityscanner/noxfile.py b/packages/google-cloud-websecurityscanner/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-cloud-websecurityscanner/noxfile.py +++ b/packages/google-cloud-websecurityscanner/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-cloud-websecurityscanner/scripts/decrypt-secrets.sh b/packages/google-cloud-websecurityscanner/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-cloud-websecurityscanner/scripts/decrypt-secrets.sh +++ b/packages/google-cloud-websecurityscanner/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-websecurityscanner/setup.py b/packages/google-cloud-websecurityscanner/setup.py index 1088967ecc8b..8532449fd2d2 100644 --- a/packages/google-cloud-websecurityscanner/setup.py +++ b/packages/google-cloud-websecurityscanner/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] extras = {} @@ -84,6 +85,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-cloud-websecurityscanner/testing/constraints-3.13.txt b/packages/google-cloud-websecurityscanner/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ed7f9aed2559 --- /dev/null +++ b/packages/google-cloud-websecurityscanner/testing/constraints-3.13.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/packages/google-cloud-workflows/.flake8 b/packages/google-cloud-workflows/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-cloud-workflows/.flake8 +++ b/packages/google-cloud-workflows/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-workflows/CONTRIBUTING.rst b/packages/google-cloud-workflows/CONTRIBUTING.rst index 046ef04f44f4..8f6fefa1849c 100644 --- a/packages/google-cloud-workflows/CONTRIBUTING.rst +++ b/packages/google-cloud-workflows/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-cloud-workflows/MANIFEST.in b/packages/google-cloud-workflows/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-cloud-workflows/MANIFEST.in +++ b/packages/google-cloud-workflows/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-workflows/docs/conf.py b/packages/google-cloud-workflows/docs/conf.py index ce3e034786a3..40840d869249 100644 --- a/packages/google-cloud-workflows/docs/conf.py +++ b/packages/google-cloud-workflows/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-workflows/google/cloud/workflows_v1/services/workflows/transports/rest.py b/packages/google-cloud-workflows/google/cloud/workflows_v1/services/workflows/transports/rest.py index efa4088dcca6..2df29537d5b2 100644 --- a/packages/google-cloud-workflows/google/cloud/workflows_v1/services/workflows/transports/rest.py +++ b/packages/google-cloud-workflows/google/cloud/workflows_v1/services/workflows/transports/rest.py @@ -43,7 +43,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-cloud-workflows/google/cloud/workflows_v1beta/services/workflows/transports/rest.py b/packages/google-cloud-workflows/google/cloud/workflows_v1beta/services/workflows/transports/rest.py index 406abacf7e32..fa45293023b2 100644 --- a/packages/google-cloud-workflows/google/cloud/workflows_v1beta/services/workflows/transports/rest.py +++ b/packages/google-cloud-workflows/google/cloud/workflows_v1beta/services/workflows/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-cloud-workflows/noxfile.py b/packages/google-cloud-workflows/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-cloud-workflows/noxfile.py +++ b/packages/google-cloud-workflows/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-cloud-workflows/scripts/decrypt-secrets.sh b/packages/google-cloud-workflows/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-cloud-workflows/scripts/decrypt-secrets.sh +++ b/packages/google-cloud-workflows/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-workflows/setup.py b/packages/google-cloud-workflows/setup.py index ff67c40e6350..b51d7c2b3cc3 100644 --- a/packages/google-cloud-workflows/setup.py +++ b/packages/google-cloud-workflows/setup.py @@ -44,6 +44,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] extras = {} @@ -82,6 +83,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-cloud-workflows/testing/constraints-3.13.txt b/packages/google-cloud-workflows/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ed7f9aed2559 --- /dev/null +++ b/packages/google-cloud-workflows/testing/constraints-3.13.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/packages/google-cloud-workstations/.flake8 b/packages/google-cloud-workstations/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-cloud-workstations/.flake8 +++ b/packages/google-cloud-workstations/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-workstations/CONTRIBUTING.rst b/packages/google-cloud-workstations/CONTRIBUTING.rst index 274276f0349b..aa17c4eeebed 100644 --- a/packages/google-cloud-workstations/CONTRIBUTING.rst +++ b/packages/google-cloud-workstations/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-cloud-workstations/MANIFEST.in b/packages/google-cloud-workstations/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-cloud-workstations/MANIFEST.in +++ b/packages/google-cloud-workstations/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-workstations/docs/conf.py b/packages/google-cloud-workstations/docs/conf.py index 919d2e7028f8..666d0305f9e6 100644 --- a/packages/google-cloud-workstations/docs/conf.py +++ b/packages/google-cloud-workstations/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-workstations/google/cloud/workstations_v1/services/workstations/transports/rest.py b/packages/google-cloud-workstations/google/cloud/workstations_v1/services/workstations/transports/rest.py index 916331250cae..e14a7d180d16 100644 --- a/packages/google-cloud-workstations/google/cloud/workstations_v1/services/workstations/transports/rest.py +++ b/packages/google-cloud-workstations/google/cloud/workstations_v1/services/workstations/transports/rest.py @@ -45,7 +45,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-cloud-workstations/google/cloud/workstations_v1beta/services/workstations/transports/rest.py b/packages/google-cloud-workstations/google/cloud/workstations_v1beta/services/workstations/transports/rest.py index 6e34b9481d61..7403b20868c9 100644 --- a/packages/google-cloud-workstations/google/cloud/workstations_v1beta/services/workstations/transports/rest.py +++ b/packages/google-cloud-workstations/google/cloud/workstations_v1beta/services/workstations/transports/rest.py @@ -45,7 +45,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-cloud-workstations/noxfile.py b/packages/google-cloud-workstations/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-cloud-workstations/noxfile.py +++ b/packages/google-cloud-workstations/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-cloud-workstations/scripts/decrypt-secrets.sh b/packages/google-cloud-workstations/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-cloud-workstations/scripts/decrypt-secrets.sh +++ b/packages/google-cloud-workstations/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-cloud-workstations/setup.py b/packages/google-cloud-workstations/setup.py index e55fce16fbed..329686704260 100644 --- a/packages/google-cloud-workstations/setup.py +++ b/packages/google-cloud-workstations/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "grpc-google-iam-v1 >= 0.12.4, <1.0.0dev", ] @@ -85,6 +86,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-cloud-workstations/testing/constraints-3.13.txt b/packages/google-cloud-workstations/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ad3f0fa58e2d --- /dev/null +++ b/packages/google-cloud-workstations/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +grpc-google-iam-v1 diff --git a/packages/google-geo-type/.flake8 b/packages/google-geo-type/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-geo-type/.flake8 +++ b/packages/google-geo-type/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-geo-type/CONTRIBUTING.rst b/packages/google-geo-type/CONTRIBUTING.rst index 644229198628..b2ca014578bc 100644 --- a/packages/google-geo-type/CONTRIBUTING.rst +++ b/packages/google-geo-type/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-geo-type/MANIFEST.in b/packages/google-geo-type/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-geo-type/MANIFEST.in +++ b/packages/google-geo-type/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-geo-type/docs/conf.py b/packages/google-geo-type/docs/conf.py index 0020fbf56042..7f03cfeb63cb 100644 --- a/packages/google-geo-type/docs/conf.py +++ b/packages/google-geo-type/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-geo-type/docs/index.rst b/packages/google-geo-type/docs/index.rst index 278971d39e0e..527b02224c0e 100644 --- a/packages/google-geo-type/docs/index.rst +++ b/packages/google-geo-type/docs/index.rst @@ -7,6 +7,7 @@ API Reference .. toctree:: :maxdepth: 2 + type/services_ type/types_ diff --git a/packages/google-geo-type/noxfile.py b/packages/google-geo-type/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-geo-type/noxfile.py +++ b/packages/google-geo-type/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-geo-type/scripts/decrypt-secrets.sh b/packages/google-geo-type/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-geo-type/scripts/decrypt-secrets.sh +++ b/packages/google-geo-type/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-geo-type/setup.py b/packages/google-geo-type/setup.py index 3488b5fd8e4d..aa386670ef74 100644 --- a/packages/google-geo-type/setup.py +++ b/packages/google-geo-type/setup.py @@ -44,6 +44,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] extras = {} @@ -82,6 +83,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-geo-type/testing/constraints-3.13.txt b/packages/google-geo-type/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ed7f9aed2559 --- /dev/null +++ b/packages/google-geo-type/testing/constraints-3.13.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/packages/google-maps-addressvalidation/.flake8 b/packages/google-maps-addressvalidation/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-maps-addressvalidation/.flake8 +++ b/packages/google-maps-addressvalidation/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-addressvalidation/CONTRIBUTING.rst b/packages/google-maps-addressvalidation/CONTRIBUTING.rst index ce0ae60f2ec0..39ad9d53144e 100644 --- a/packages/google-maps-addressvalidation/CONTRIBUTING.rst +++ b/packages/google-maps-addressvalidation/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-maps-addressvalidation/MANIFEST.in b/packages/google-maps-addressvalidation/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-maps-addressvalidation/MANIFEST.in +++ b/packages/google-maps-addressvalidation/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-addressvalidation/docs/conf.py b/packages/google-maps-addressvalidation/docs/conf.py index 58bb16e08146..d9fff8311410 100644 --- a/packages/google-maps-addressvalidation/docs/conf.py +++ b/packages/google-maps-addressvalidation/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-addressvalidation/google/maps/addressvalidation_v1/services/address_validation/transports/rest.py b/packages/google-maps-addressvalidation/google/maps/addressvalidation_v1/services/address_validation/transports/rest.py index 093b346bd6af..1e3dec085175 100644 --- a/packages/google-maps-addressvalidation/google/maps/addressvalidation_v1/services/address_validation/transports/rest.py +++ b/packages/google-maps-addressvalidation/google/maps/addressvalidation_v1/services/address_validation/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-maps-addressvalidation/noxfile.py b/packages/google-maps-addressvalidation/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-maps-addressvalidation/noxfile.py +++ b/packages/google-maps-addressvalidation/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-maps-addressvalidation/scripts/decrypt-secrets.sh b/packages/google-maps-addressvalidation/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-maps-addressvalidation/scripts/decrypt-secrets.sh +++ b/packages/google-maps-addressvalidation/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-addressvalidation/setup.py b/packages/google-maps-addressvalidation/setup.py index 06e89659f89a..f0289f1140e1 100644 --- a/packages/google-maps-addressvalidation/setup.py +++ b/packages/google-maps-addressvalidation/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-geo-type >= 0.1.0, <1.0.0dev", ] @@ -85,6 +86,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-maps-addressvalidation/testing/constraints-3.13.txt b/packages/google-maps-addressvalidation/testing/constraints-3.13.txt new file mode 100644 index 000000000000..2214a366a259 --- /dev/null +++ b/packages/google-maps-addressvalidation/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-geo-type diff --git a/packages/google-maps-areainsights/.flake8 b/packages/google-maps-areainsights/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-maps-areainsights/.flake8 +++ b/packages/google-maps-areainsights/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-areainsights/CONTRIBUTING.rst b/packages/google-maps-areainsights/CONTRIBUTING.rst index f47c4696d0d8..8b147a0707a3 100644 --- a/packages/google-maps-areainsights/CONTRIBUTING.rst +++ b/packages/google-maps-areainsights/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-maps-areainsights/MANIFEST.in b/packages/google-maps-areainsights/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-maps-areainsights/MANIFEST.in +++ b/packages/google-maps-areainsights/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-areainsights/docs/conf.py b/packages/google-maps-areainsights/docs/conf.py index cab51bcbeffc..89eaf10bb31d 100644 --- a/packages/google-maps-areainsights/docs/conf.py +++ b/packages/google-maps-areainsights/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-areainsights/google/maps/areainsights_v1/services/area_insights/transports/rest.py b/packages/google-maps-areainsights/google/maps/areainsights_v1/services/area_insights/transports/rest.py index e51680fdbd9e..0ed30438f8f9 100644 --- a/packages/google-maps-areainsights/google/maps/areainsights_v1/services/area_insights/transports/rest.py +++ b/packages/google-maps-areainsights/google/maps/areainsights_v1/services/area_insights/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-maps-areainsights/noxfile.py b/packages/google-maps-areainsights/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-maps-areainsights/noxfile.py +++ b/packages/google-maps-areainsights/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-maps-areainsights/scripts/decrypt-secrets.sh b/packages/google-maps-areainsights/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-maps-areainsights/scripts/decrypt-secrets.sh +++ b/packages/google-maps-areainsights/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-areainsights/setup.py b/packages/google-maps-areainsights/setup.py index 7e952f6afe94..9870f18063a4 100644 --- a/packages/google-maps-areainsights/setup.py +++ b/packages/google-maps-areainsights/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] extras = {} @@ -84,6 +85,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-maps-areainsights/testing/constraints-3.13.txt b/packages/google-maps-areainsights/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ed7f9aed2559 --- /dev/null +++ b/packages/google-maps-areainsights/testing/constraints-3.13.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/packages/google-maps-fleetengine-delivery/.flake8 b/packages/google-maps-fleetengine-delivery/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-maps-fleetengine-delivery/.flake8 +++ b/packages/google-maps-fleetengine-delivery/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-fleetengine-delivery/CONTRIBUTING.rst b/packages/google-maps-fleetengine-delivery/CONTRIBUTING.rst index 4a5b5bbba7ae..753050dd75f3 100644 --- a/packages/google-maps-fleetengine-delivery/CONTRIBUTING.rst +++ b/packages/google-maps-fleetengine-delivery/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-maps-fleetengine-delivery/MANIFEST.in b/packages/google-maps-fleetengine-delivery/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-maps-fleetengine-delivery/MANIFEST.in +++ b/packages/google-maps-fleetengine-delivery/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-fleetengine-delivery/docs/conf.py b/packages/google-maps-fleetengine-delivery/docs/conf.py index 1f1406b09dbb..9f552bd71a71 100644 --- a/packages/google-maps-fleetengine-delivery/docs/conf.py +++ b/packages/google-maps-fleetengine-delivery/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-fleetengine-delivery/google/maps/fleetengine_delivery_v1/services/delivery_service/transports/rest.py b/packages/google-maps-fleetengine-delivery/google/maps/fleetengine_delivery_v1/services/delivery_service/transports/rest.py index f90ff33f7b31..aef58bf5045a 100644 --- a/packages/google-maps-fleetengine-delivery/google/maps/fleetengine_delivery_v1/services/delivery_service/transports/rest.py +++ b/packages/google-maps-fleetengine-delivery/google/maps/fleetengine_delivery_v1/services/delivery_service/transports/rest.py @@ -46,7 +46,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-maps-fleetengine-delivery/maps-fleetengine-delivery-v1-py.tar.gz b/packages/google-maps-fleetengine-delivery/maps-fleetengine-delivery-v1-py.tar.gz new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-maps-fleetengine-delivery/noxfile.py b/packages/google-maps-fleetengine-delivery/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-maps-fleetengine-delivery/noxfile.py +++ b/packages/google-maps-fleetengine-delivery/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-maps-fleetengine-delivery/scripts/decrypt-secrets.sh b/packages/google-maps-fleetengine-delivery/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-maps-fleetengine-delivery/scripts/decrypt-secrets.sh +++ b/packages/google-maps-fleetengine-delivery/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-fleetengine-delivery/setup.py b/packages/google-maps-fleetengine-delivery/setup.py index 0336e9cd7c8d..68a47884ddde 100644 --- a/packages/google-maps-fleetengine-delivery/setup.py +++ b/packages/google-maps-fleetengine-delivery/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-geo-type >= 0.1.0, <1.0.0dev", ] @@ -85,6 +86,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-maps-fleetengine-delivery/testing/constraints-3.13.txt b/packages/google-maps-fleetengine-delivery/testing/constraints-3.13.txt new file mode 100644 index 000000000000..2214a366a259 --- /dev/null +++ b/packages/google-maps-fleetengine-delivery/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-geo-type diff --git a/packages/google-maps-fleetengine/.flake8 b/packages/google-maps-fleetengine/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-maps-fleetengine/.flake8 +++ b/packages/google-maps-fleetengine/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-fleetengine/CONTRIBUTING.rst b/packages/google-maps-fleetengine/CONTRIBUTING.rst index 302d5c0e6475..dba9b8a9c52e 100644 --- a/packages/google-maps-fleetengine/CONTRIBUTING.rst +++ b/packages/google-maps-fleetengine/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-maps-fleetengine/MANIFEST.in b/packages/google-maps-fleetengine/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-maps-fleetengine/MANIFEST.in +++ b/packages/google-maps-fleetengine/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-fleetengine/docs/conf.py b/packages/google-maps-fleetengine/docs/conf.py index 4548280acc4d..cf9c5efaefd8 100644 --- a/packages/google-maps-fleetengine/docs/conf.py +++ b/packages/google-maps-fleetengine/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-fleetengine/noxfile.py b/packages/google-maps-fleetengine/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-maps-fleetengine/noxfile.py +++ b/packages/google-maps-fleetengine/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-maps-fleetengine/scripts/decrypt-secrets.sh b/packages/google-maps-fleetengine/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-maps-fleetengine/scripts/decrypt-secrets.sh +++ b/packages/google-maps-fleetengine/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-fleetengine/setup.py b/packages/google-maps-fleetengine/setup.py index a133aad01d84..d17cc128e0ac 100644 --- a/packages/google-maps-fleetengine/setup.py +++ b/packages/google-maps-fleetengine/setup.py @@ -44,6 +44,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-geo-type >= 0.1.0, <1.0.0dev", ] @@ -83,6 +84,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-maps-fleetengine/testing/constraints-3.13.txt b/packages/google-maps-fleetengine/testing/constraints-3.13.txt new file mode 100644 index 000000000000..2214a366a259 --- /dev/null +++ b/packages/google-maps-fleetengine/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-geo-type diff --git a/packages/google-maps-mapsplatformdatasets/.flake8 b/packages/google-maps-mapsplatformdatasets/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-maps-mapsplatformdatasets/.flake8 +++ b/packages/google-maps-mapsplatformdatasets/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-mapsplatformdatasets/CONTRIBUTING.rst b/packages/google-maps-mapsplatformdatasets/CONTRIBUTING.rst index e6b81de8d16e..4034e20ca07d 100644 --- a/packages/google-maps-mapsplatformdatasets/CONTRIBUTING.rst +++ b/packages/google-maps-mapsplatformdatasets/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-maps-mapsplatformdatasets/MANIFEST.in b/packages/google-maps-mapsplatformdatasets/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-maps-mapsplatformdatasets/MANIFEST.in +++ b/packages/google-maps-mapsplatformdatasets/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-mapsplatformdatasets/docs/conf.py b/packages/google-maps-mapsplatformdatasets/docs/conf.py index ee4dcc339a35..58688faa77ce 100644 --- a/packages/google-maps-mapsplatformdatasets/docs/conf.py +++ b/packages/google-maps-mapsplatformdatasets/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-mapsplatformdatasets/google/maps/mapsplatformdatasets_v1/services/maps_platform_datasets/transports/rest.py b/packages/google-maps-mapsplatformdatasets/google/maps/mapsplatformdatasets_v1/services/maps_platform_datasets/transports/rest.py index b21eae08ff92..2264014d5ee6 100644 --- a/packages/google-maps-mapsplatformdatasets/google/maps/mapsplatformdatasets_v1/services/maps_platform_datasets/transports/rest.py +++ b/packages/google-maps-mapsplatformdatasets/google/maps/mapsplatformdatasets_v1/services/maps_platform_datasets/transports/rest.py @@ -44,7 +44,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-maps-mapsplatformdatasets/noxfile.py b/packages/google-maps-mapsplatformdatasets/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-maps-mapsplatformdatasets/noxfile.py +++ b/packages/google-maps-mapsplatformdatasets/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-maps-mapsplatformdatasets/scripts/decrypt-secrets.sh b/packages/google-maps-mapsplatformdatasets/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-maps-mapsplatformdatasets/scripts/decrypt-secrets.sh +++ b/packages/google-maps-mapsplatformdatasets/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-mapsplatformdatasets/setup.py b/packages/google-maps-mapsplatformdatasets/setup.py index abf8c5a3ecd3..70944cc1284a 100644 --- a/packages/google-maps-mapsplatformdatasets/setup.py +++ b/packages/google-maps-mapsplatformdatasets/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] extras = {} @@ -84,6 +85,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-maps-mapsplatformdatasets/testing/constraints-3.13.txt b/packages/google-maps-mapsplatformdatasets/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ed7f9aed2559 --- /dev/null +++ b/packages/google-maps-mapsplatformdatasets/testing/constraints-3.13.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/packages/google-maps-places/.flake8 b/packages/google-maps-places/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-maps-places/.flake8 +++ b/packages/google-maps-places/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-places/CONTRIBUTING.rst b/packages/google-maps-places/CONTRIBUTING.rst index c1a2aa14dbb1..8d30cb732313 100644 --- a/packages/google-maps-places/CONTRIBUTING.rst +++ b/packages/google-maps-places/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-maps-places/MANIFEST.in b/packages/google-maps-places/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-maps-places/MANIFEST.in +++ b/packages/google-maps-places/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-places/docs/conf.py b/packages/google-maps-places/docs/conf.py index 11ceb7b517d6..674d7cdbfde5 100644 --- a/packages/google-maps-places/docs/conf.py +++ b/packages/google-maps-places/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-places/google/maps/places_v1/services/places/transports/rest.py b/packages/google-maps-places/google/maps/places_v1/services/places/transports/rest.py index 89d6b4f90d0c..ffbd77013d0d 100644 --- a/packages/google-maps-places/google/maps/places_v1/services/places/transports/rest.py +++ b/packages/google-maps-places/google/maps/places_v1/services/places/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-maps-places/noxfile.py b/packages/google-maps-places/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-maps-places/noxfile.py +++ b/packages/google-maps-places/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-maps-places/scripts/decrypt-secrets.sh b/packages/google-maps-places/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-maps-places/scripts/decrypt-secrets.sh +++ b/packages/google-maps-places/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-places/setup.py b/packages/google-maps-places/setup.py index aaee7a4dc2df..ab2b607f09c2 100644 --- a/packages/google-maps-places/setup.py +++ b/packages/google-maps-places/setup.py @@ -44,6 +44,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-geo-type >= 0.1.0, <1.0.0dev", ] @@ -83,6 +84,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-maps-places/testing/constraints-3.13.txt b/packages/google-maps-places/testing/constraints-3.13.txt new file mode 100644 index 000000000000..2214a366a259 --- /dev/null +++ b/packages/google-maps-places/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-geo-type diff --git a/packages/google-maps-routeoptimization/.flake8 b/packages/google-maps-routeoptimization/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-maps-routeoptimization/.flake8 +++ b/packages/google-maps-routeoptimization/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-routeoptimization/CONTRIBUTING.rst b/packages/google-maps-routeoptimization/CONTRIBUTING.rst index 72ac94e37ab9..004a4c491341 100644 --- a/packages/google-maps-routeoptimization/CONTRIBUTING.rst +++ b/packages/google-maps-routeoptimization/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-maps-routeoptimization/MANIFEST.in b/packages/google-maps-routeoptimization/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-maps-routeoptimization/MANIFEST.in +++ b/packages/google-maps-routeoptimization/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-routeoptimization/docs/conf.py b/packages/google-maps-routeoptimization/docs/conf.py index 380aec7e8ec2..512ff9b39bd6 100644 --- a/packages/google-maps-routeoptimization/docs/conf.py +++ b/packages/google-maps-routeoptimization/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-routeoptimization/google/maps/routeoptimization_v1/services/route_optimization/transports/rest.py b/packages/google-maps-routeoptimization/google/maps/routeoptimization_v1/services/route_optimization/transports/rest.py index 3d43a8a44ba4..ab439b3fef3b 100644 --- a/packages/google-maps-routeoptimization/google/maps/routeoptimization_v1/services/route_optimization/transports/rest.py +++ b/packages/google-maps-routeoptimization/google/maps/routeoptimization_v1/services/route_optimization/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-maps-routeoptimization/noxfile.py b/packages/google-maps-routeoptimization/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-maps-routeoptimization/noxfile.py +++ b/packages/google-maps-routeoptimization/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-maps-routeoptimization/scripts/decrypt-secrets.sh b/packages/google-maps-routeoptimization/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-maps-routeoptimization/scripts/decrypt-secrets.sh +++ b/packages/google-maps-routeoptimization/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-routeoptimization/setup.py b/packages/google-maps-routeoptimization/setup.py index a3013c482fa0..1884879a339c 100644 --- a/packages/google-maps-routeoptimization/setup.py +++ b/packages/google-maps-routeoptimization/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] extras = {} @@ -84,6 +85,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-maps-routeoptimization/testing/constraints-3.13.txt b/packages/google-maps-routeoptimization/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ed7f9aed2559 --- /dev/null +++ b/packages/google-maps-routeoptimization/testing/constraints-3.13.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/packages/google-maps-routing/.flake8 b/packages/google-maps-routing/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-maps-routing/.flake8 +++ b/packages/google-maps-routing/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-routing/CONTRIBUTING.rst b/packages/google-maps-routing/CONTRIBUTING.rst index bebb72e7ba26..ac31aa393d22 100644 --- a/packages/google-maps-routing/CONTRIBUTING.rst +++ b/packages/google-maps-routing/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-maps-routing/MANIFEST.in b/packages/google-maps-routing/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-maps-routing/MANIFEST.in +++ b/packages/google-maps-routing/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-routing/docs/conf.py b/packages/google-maps-routing/docs/conf.py index 17e8c4bdde5b..4d5b1a71f211 100644 --- a/packages/google-maps-routing/docs/conf.py +++ b/packages/google-maps-routing/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-routing/google/maps/routing_v2/services/routes/transports/rest.py b/packages/google-maps-routing/google/maps/routing_v2/services/routes/transports/rest.py index 53044250a575..7228185de516 100644 --- a/packages/google-maps-routing/google/maps/routing_v2/services/routes/transports/rest.py +++ b/packages/google-maps-routing/google/maps/routing_v2/services/routes/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-maps-routing/noxfile.py b/packages/google-maps-routing/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-maps-routing/noxfile.py +++ b/packages/google-maps-routing/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-maps-routing/scripts/decrypt-secrets.sh b/packages/google-maps-routing/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-maps-routing/scripts/decrypt-secrets.sh +++ b/packages/google-maps-routing/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-routing/setup.py b/packages/google-maps-routing/setup.py index 34ba7f2de872..461bdb63eb76 100644 --- a/packages/google-maps-routing/setup.py +++ b/packages/google-maps-routing/setup.py @@ -44,6 +44,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-geo-type >= 0.1.0, <1.0.0dev", ] @@ -83,6 +84,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-maps-routing/testing/constraints-3.13.txt b/packages/google-maps-routing/testing/constraints-3.13.txt new file mode 100644 index 000000000000..2214a366a259 --- /dev/null +++ b/packages/google-maps-routing/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-geo-type diff --git a/packages/google-maps-solar/.flake8 b/packages/google-maps-solar/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-maps-solar/.flake8 +++ b/packages/google-maps-solar/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-solar/CONTRIBUTING.rst b/packages/google-maps-solar/CONTRIBUTING.rst index 2a1d58cf94ed..965e96d7c036 100644 --- a/packages/google-maps-solar/CONTRIBUTING.rst +++ b/packages/google-maps-solar/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-maps-solar/MANIFEST.in b/packages/google-maps-solar/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-maps-solar/MANIFEST.in +++ b/packages/google-maps-solar/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-solar/docs/conf.py b/packages/google-maps-solar/docs/conf.py index f40f62c5a91d..17c24af1e7bb 100644 --- a/packages/google-maps-solar/docs/conf.py +++ b/packages/google-maps-solar/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-solar/google/maps/solar_v1/services/solar/transports/rest.py b/packages/google-maps-solar/google/maps/solar_v1/services/solar/transports/rest.py index 4078f5ec3f23..27123714fe7d 100644 --- a/packages/google-maps-solar/google/maps/solar_v1/services/solar/transports/rest.py +++ b/packages/google-maps-solar/google/maps/solar_v1/services/solar/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-maps-solar/noxfile.py b/packages/google-maps-solar/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-maps-solar/noxfile.py +++ b/packages/google-maps-solar/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-maps-solar/scripts/decrypt-secrets.sh b/packages/google-maps-solar/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-maps-solar/scripts/decrypt-secrets.sh +++ b/packages/google-maps-solar/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-maps-solar/setup.py b/packages/google-maps-solar/setup.py index a517dc74f4b4..ec0447f08702 100644 --- a/packages/google-maps-solar/setup.py +++ b/packages/google-maps-solar/setup.py @@ -44,6 +44,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] extras = {} @@ -82,6 +83,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-maps-solar/testing/constraints-3.13.txt b/packages/google-maps-solar/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ed7f9aed2559 --- /dev/null +++ b/packages/google-maps-solar/testing/constraints-3.13.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/packages/google-shopping-merchant-accounts/.flake8 b/packages/google-shopping-merchant-accounts/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-shopping-merchant-accounts/.flake8 +++ b/packages/google-shopping-merchant-accounts/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-accounts/CONTRIBUTING.rst b/packages/google-shopping-merchant-accounts/CONTRIBUTING.rst index bd53f587099a..04732365f0ef 100644 --- a/packages/google-shopping-merchant-accounts/CONTRIBUTING.rst +++ b/packages/google-shopping-merchant-accounts/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-shopping-merchant-accounts/MANIFEST.in b/packages/google-shopping-merchant-accounts/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-shopping-merchant-accounts/MANIFEST.in +++ b/packages/google-shopping-merchant-accounts/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-accounts/docs/conf.py b/packages/google-shopping-merchant-accounts/docs/conf.py index 83da92ecec22..4fdbf91e9e96 100644 --- a/packages/google-shopping-merchant-accounts/docs/conf.py +++ b/packages/google-shopping-merchant-accounts/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/account_issue_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/account_issue_service/transports/rest.py index b6c6b38c64a0..00df2d37ee7c 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/account_issue_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/account_issue_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/account_tax_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/account_tax_service/transports/rest.py index 985fa95d6269..abf839241aca 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/account_tax_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/account_tax_service/transports/rest.py @@ -44,7 +44,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/accounts_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/accounts_service/transports/rest.py index 928ae4a3e37e..e497a179734f 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/accounts_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/accounts_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/autofeed_settings_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/autofeed_settings_service/transports/rest.py index d24313bb2f19..286471f99b66 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/autofeed_settings_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/autofeed_settings_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/business_identity_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/business_identity_service/transports/rest.py index 4f276d1b7029..676645a4e162 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/business_identity_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/business_identity_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/business_info_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/business_info_service/transports/rest.py index 40b25eebeefa..7de136978256 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/business_info_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/business_info_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/email_preferences_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/email_preferences_service/transports/rest.py index bc42e6fca75f..42876f3e5661 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/email_preferences_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/email_preferences_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/homepage_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/homepage_service/transports/rest.py index 15a92ae52f30..75e036c32d11 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/homepage_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/homepage_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/online_return_policy_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/online_return_policy_service/transports/rest.py index e65c3b752bd3..61874b2f4e85 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/online_return_policy_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/online_return_policy_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/programs_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/programs_service/transports/rest.py index 332e16772f4a..9b7a57ef5356 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/programs_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/programs_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/regions_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/regions_service/transports/rest.py index 6dcd70521c82..a1928d09add4 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/regions_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/regions_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/shipping_settings_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/shipping_settings_service/transports/rest.py index cf453743199c..693d3bad2b85 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/shipping_settings_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/shipping_settings_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/terms_of_service_agreement_state_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/terms_of_service_agreement_state_service/transports/rest.py index c4d78bf43048..c39b562df96c 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/terms_of_service_agreement_state_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/terms_of_service_agreement_state_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/terms_of_service_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/terms_of_service_service/transports/rest.py index 8bff19e0c3b8..ccafb072649b 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/terms_of_service_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/terms_of_service_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/user_service/transports/rest.py b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/user_service/transports/rest.py index c1e3aec5f48a..ef09abb79ed8 100644 --- a/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/user_service/transports/rest.py +++ b/packages/google-shopping-merchant-accounts/google/shopping/merchant_accounts_v1beta/services/user_service/transports/rest.py @@ -43,7 +43,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-accounts/merchant-accounts-v1beta-py.tar.gz b/packages/google-shopping-merchant-accounts/merchant-accounts-v1beta-py.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..9ee91f5d2371277e6fd0aa29d513248732bb848e GIT binary patch literal 360448 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

d)$YG#M!%ioDNIaR2_YX|k>*|*3RM57 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 z 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

NgF)QE~&phz4znpzmJV$H*D`$;QyzEx!;9WE9 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

-k*)*J|}!Ldild@Yc~cCjBeKKg{K;ZA4`dgNF=aCB5~vsfSq7{Hzh8 zH;VTLh6CUzfWGqz7MtnOKs(gO4B=ozW_tb;=#1CqHDUIY;qVIF&-}^H-+_g}8}Ev? z`M_urp0^#tLs{Z7f0%eN8E9!nDlc?HxKD$%x4nC|=F4L%1<^JlV}048hJg=76)B>) zaMTgTiyf3kabO=_kHhBg{8CXh6aWi6e}-*!?YOq;LdHDgfRdd@5MX9{&5?Ic$%sd- zt3FBaszaBmkx=ifeZYXlYtKS(qS$A)o}>zL76{5LuPA|p9CK6_6_=nd z=txmgvck#d;rC*zgZ+20?aPiP=yJe7)tj-G2aE+{dhIurkp#I5r)SL6^+Xwq0BoyB zalN(O?;XH(+avOt3&Pfd7h&SfOGS_zzI(?VysOEDoC7t|yUx_E4K=BXgMFDu=3;yv zRxQlZfy2%I@4+^)6m$h|D1Po88ofHQNYb@z4w1c{{RMf+@|=A@-SH|~jaiAHNL-{; zGMY&B0iScEAY~8V;hh8UWKu8jEUD$4D%CAg*OTZnk9>aQJlM0+xQ#h0ox$K1z(RvL z@`!Tqufb|I;fl-i2@ce2CQM2dpWY;?5|>TwIEcOzmSio3B}9H#>r8FcI6F!QDoZYM zx}5*%_OwV=Pn(dIEeo{^m^KZlvH9L#{IEwdApLvF!PFW4*_2ZJY&O1&E zW4&TiE(S6WO%mFF<6XqlEp}2kD7Mhznrxt7b*+T!S{zU5e)#vE1~H^_Yym$?X}w3m zOEg(hFWPArJBirK(@%3kx28s9qoN;v{TGXdmm za=hpaw?T5MVY2$G;wGiSU_(O1D;wf;)boDyg8X!G?q-;Ap1UBc)9i5L(k!1>2PL?5 zYhLXEAs94um08PLK9_-spYtpFkX3vs^;1_e_d`#=!~nbz{S<`N(zXt{pQgn+^5NCOA+iKCgQ$UGsZKCIS#9$!5-LWxk$-4jv{r ze--YxSa|eUo3HBy0wfp zYtW=calsI4%5mHGXG=>C-{j*`O45Y|fl}t>5T1a+|4l3qwJORTlhE-^aJcuHBs6Bj zxj=AOF!vw?KET^WC@|xpjpxL&v_#fTNFx|Bl;B!1q~60tJQ$TO#{KhzCdM6;(NVx~ zxc7!+<22ckT)3M8bx@KK(6A0^ObKZtHmgaiOsGX?uf^88xw$?)hfx9B4r`Cb8T|^}Ru`frTb5u=k4I_t4qwSg^0^fGEK2tN{*d}C`tDSWeF-`NPDfXZ z0Xb!7wM~89pC8=e>A1gqznii6A1nvM7gFI$rL^b1p-GzXiyGcX>md542353zQ5+G` z)Kh~4;t8^dCTrQnh|!XSSx~ukX1}saa*-H`x_Uykk6j}P2z>iDuCGaYFuTSa-86nL zd<_WE>lR_pgiVQp%kGcFK0cJJcm2~EPjr3dz_2)Tfbf+n9nS_HJ>!UYY|qrN(5m$c zBH{Bd$8Q-?9*20cOX#UjA|8MLy|yfV(Z*o`&ThT!GvBQ=X9HI7L_d_5AcryaXiVwl zZMGg!SblrI$SmQWf$0DaKf5y?cXC8h(jz5H34jYgU{H0;8zH_CecqloXm%J?1{-*q zTn?I8!A#6PFgf*mjCBHA0#R;Cq-8!S4aYTXtYPg!J1-tINXcCXNB;DBdOyISf9+u8 zp4fpf3IZ?7rq7~}WS1|}!e^87#*gHR@;kKc)So^*Ix+9>9G>ehDkOH8~<(03S!$#XerY976 zKX$P}@a0sXjD*#wLI@ib>DBOJW9W8Y5B8L=Lx=l@Xgzr$(81?&)q(;OE@1V~M2y1d ze=_~h(K=tC%{{E97_`wKUiBnbRv6ItdfuI(Q{qNRK`IaEN5?J3rh0EL5loUQQGI0$ z@-T{fx_^r9qQpV^0d{6ekbz;s`C9_a`F_5=d8KBQ>#Y6P%bw62aewd{6uZ zF^XPTF+W0;Xdn4fH*7hY?9M@MzpNkMh#DQH@ep#M)YPOZMnM7&ORisavGY(r#Wz_K zSp@Sm0hS#ZR*WUwApHk^IexJ*98OVV`pa7IVwdnE%dG38u04&l zfE4^@fr+~s*Rw=b%d+*ZKGG(wgqGFt5hhxC>(X|ZM+h3)k=y+r+RES5DzQcm9#>Rq zi*}+gQr4!or~_MGLm(^RqZY+CYyy!Fo0}@~md(#B{mle}D)@s9C_Hff=uDS&FdU!8 z!!HH)b$G*5r(*yE9o0$Wo~D)a4UoNcF*0@kjbU@sJ;^9d9Q-oHO4hxB#9G z{T;@N=+Z_z!dhE+ranTx%uc(u7V2uBvq|rdw10g!Ztm`jl4X3%zv=j6vt6IG=WLCL zuh6Jq%j$6OeLTMD&!uPjcTQo9B(Op8N`5eaC(=wJu*mfk-y>>$G4ywNRu=_ANE`KG3(vIsjRPB50 zeDJqZg|00M3Spf#K{+!0>9YGQFv>YNo5D-#Wagj^(7GEb!z&Oic2hBK| zpScD|E~XAC{>z&8$YUTlvN+nSHx-Pl*D0 z=p$tD5d^bA_*@WHsPTf-O3!Pp8JSP1M|~&94a@DqOMb4{!c_uD3LUX$tu7pl}GB_W9t^sh6Um(gqXaK?JmgIoGbbDX!T^fKvU7RltlvU;0 zt*NVH#H=B|R{dXaa#HFyoa|Veg#-n_nE4N!d@9s@RjUoHH7^=!l?z%iA6pN$#lO4G zg99_g9B_;)Y0|5jFoiGT{nj{QRZ3a$YJ-EZVi#5WlVVqY^yClMra$@*@`q82S%Rj; z)I%}0%MP`IrStw+8>ysf0T?KLmDgN#qed5(2DEZ!sJuw!PFRV*bTXBt>HnaUjfDj< z9tXmY_^{@ru^o{m!iK^^MF&AbH8`mV|2LhC5w8KV@S6H^&BoS|orqU$D#=Kr<0+%5 zW(?6uW5BmLp|8j@Sx`@;QD#YSiHX)N#2A}}q(T`7cM6H}JA+(35S+J>mcmD^{&A$Z z_2zD$OZv!7Ol?^GrcXLm@N`w&(kHP-13>wgCl$$~(r+6;)tBoE#a0!JPEg&0KDKyA zZKHeRw?vrFGk?Qe)q8|45zun-yNJ^TY8=8L4$5+rh&Wvm2wv#*c18s|n&pRtC>oq&(R3qxna!vJmX#wI11<6l!RjibryM;u$q4S{hSKPi^W zNG}#Onn%>Or0pL;-^TNUE9*`)U+>a2!%GdPm8MY(es>!DXn5QCdgy)na-Vtjsn}IZ z{aSk4xKOci?o)fDsod@Jy4?K6{O3$$yzk$;vN}xPyOh6WX8Qq|Wh)pK$2(@U^{^JLCKOx=-H;#ZEA=40b9hSt4PInyDkRxEh3Bq?!f zsAMD1>VMhHH7Q~bXj5qzKogCF@QPPN-7zxaFOqHu6w(fvTp5BZaQDQHgXP_>2FZP$ zX9CwaJWu{#Z?Pp`HwJxQ6}v4PZ`s3!I>jlNM_+Hx<@#S#Q(tprblG3WcRsG4Sf5vq z*@ItQH(y;aUq1Tq!6&ZRW0dZ*79KuebVEe<4^@>#1i64=$G&U`2n5gcWCPi6E(kQT za@Kp-_U>mpAQ?-Yx9#ygn~*8jJ!@46NY!DcKm_yayplZ&0g&ZGk@Ns^5Ax(%3$R^9 z_#s*IT2rgbJ_29jQ@?3jKyWI={OdBu97IRgZWYlV+GL_K} z#oH@qU9HJv=Pj`-0G{P4@Z)!TDCx0VF4X|++=!SxXEp)}i^Rg8xpKAQLlAN^cfWnP z)bww*5;?j_Fg+6g8NWgsZ?v(e9L61XslbSIjoyf)d<(kUXgM)GTLo6Tm&=C5^{ z(Kmd_Z^aJB`?%AD#oOWe^$#n^nNf}HfdP%5(q=E%^V=HtAFdzaJH==NtRokf29F5$ zn=FXB^=j=C?b2~Uz z&z$Sv!&tEXAa(1|a6{x_Fg+UiC9yOLLuR-z$L=soL@!y4N4%QjC{@Kcsk%z=&>)u+gv4uKJ%?m+S~BR5KVaWoP21|t(|a@Ab5ho{=E z86gxnj`ext3G}~yIG>P%2tPM(JM4_x|+25Wq}l z3=N3)8YdJ{+OoVxakDf(}WU$zU-6d@Xbs1R($=z~Jh#E)o2UXSN|I z#--4rpoXxx+=yaC(MQ5A3Ru_W)z_Y`C4li}>|s2i<4AN_zr5t!;5f`>=onXe0K==h8yc9VZtuBd zCkjei`&)RBKkwML{30bq9l_S^;-$01sIm8rbSr;k)2sj7r)%{VU7$v+F_&3^6Ojk~ z_%7HE!E3!99Uq%YXft8RP>z{c5QKn-F#Y(ATQb=^J}g9J{{R!K)t#SNXUZ5lB>&Xn z0tDQwI0Ix-ESo{?BeU3ICJ9ZxH_2tAS+PN-X)oazINp%J0f>Se>E&rA&p(h)Gh~6B zi5Oe{9T?0Vedex7!PH#IO;MfdFH6`MSxWiU%J=rv6FJ^!Gg-)ttQYrZgXA(=UePS+ z*<{T@#R_QVP`Gfa=N|U5L8U*n0zG5WIU;2SE$kRkh~UnABX@@_zMqV4GWa(^1eqYM zM8kVp)bGD44T90VS?cH~YI;!-senfthc{~B@`&M~kskRp5LW7O!m_;69qWsYHPu(- z4%(=$9R}jkz)qYcwNTM+?N!{B-!BZthA2cUq2e}unp|B(9as4GdrH?MG*(UB{&7spLF|b%PK_4mqE(UxqBbY4A7^;F4_pNfNYIwB$_}N;VcaSZ zZqq^rU`HWB76XrG;c8H_k4lbyFDPKZ9lpTGg50L$-?iGC7*dYw704vRHl&jAS>Qx| zCTqmji00|@OWNFWXm1rl&mn-n*TweSU{h-8 z{6onQ%Q%AYd*NG=$Jiyv3)z$S_#SSX{)@>d9YzP~b5be2F{&A#8h{XB*z)80IKQjq zL+(vSj_W|o%I<`r0B+C|J;p4jlqDT*Z?pVZl5_=4-v&$=lNoDrJ+W1iruUGCs``N* z@dIwsAUTdg2`*@*_b7~+!}8dvL}5&Ne`$8yQ8Wu^*VqAquuj?@TrFyDI4_!E=Mvt= zd7nTOqC4VW5}FUjU?)9gqNsU;QE#cGB0GO6ecggB-s1xEG~Dj6gbvcn-p-g~Ql>hC zOpY;0Bf=f-857FAx;B*}Au&YVnG`CZ<2;ok*tN2@h(}3`j{9v&UTGw=#h= zy&0CJD`F5=Nd>iEfPTnxLf&I`uYV)E0!0hCwOgl4Wk5D^dqx9F3twY?(dJ)K;~>LD z5e@tuH8PiLb=JB74_YaElzi=y-aaccr5hX@EiF_HC>V6b@kU!$P;BNq?Z@5hj{{AU zeR4<%tW;B>7gD)?GkC*}v z9cPOl0mDw5Q)M)8bX6)L)Ihfz+VMk{-!HJO{)y5k>a=F)&xe}NpJrNMdg{9{s-}vq zS_{Se*jfjH9m%=jQ7nh{A4lUFXr;el{8mcjll>n@V-i?_gC>bXf7MlP8VLRrpy~}w zOt-Q`#IM@S!ns6JZiDKAhq@uQ@#n8Ez~#Kh`eM<7z)|PL8%$)-X7L}}h_t^z2~oH# zcD~*M&1iV=K!0wsbqA(A)TJPV38K*VgCnVvw@j8`FVzV7H<(25JsBFu|BaoO3mD@O= z!Pt>g&|7>wCge$uhZp!il}=;DB#b{|)Z)PVj>Jo&Brh4v?D&7cU57oes}m`AUprk{ zf>!BE4w5fZsE$GHuLXS+OHg2tN#bJN>GupcH_B_T^QBi>o($)9BBRF|LOPunp0>iS z7A&!J|HMb-jNk3Vg&|@kP+E#;R6?N}b^Iow!6a}Al6A;+C2HVPf6uXVX9_8#_zG)j zx*5*OVGDc!ZZ6;>PWV=a?BEsY!(z91&|P(PjF24@3{WC<17iOlTEh@PSkKP3+M#E} zl!i5^5}AO{mzYt}EDZ=TT8+G0K^GjU)d5t^J*tU^8d+G~v0!W-S}v3)7K63t|UrW7XYW>OG9Tvo-~2uxCA+1b<`56`6=AB@ntT& zNanK(jSlaFN40ru^UJM~$UewQ5G(#!U%+u+NBug3K93oG3|Z)&1X}91Sw!PD`ScF{ z_aO2=(P~dZaS1f^t3)I?bJlOQ`c{<-jQ=J@Q6G%B|Ab5A5h1@Y`i6wwmS`>#nM@g6Gjm%(vzV8#|02xsI4LGhhPd_wHUs(9mATfO*ptr#4^QZP!t!l-*h*_8! zNdy@SMCdS5$)|;#h7uP|V4|cj1iU8l&rokHC^>k}{5l${;4?7LpZl96rtUqmAP3ai zL!m$Fh~GjC2p?bMZ}LYBIYrD3FJK!81t99@B#3_}I}L}?Cy*O*E)4H)3fHcuwhoL1 z{;CSA)DT%PX!OiFj1?4`ZF^ldJW2sbK%9$N$^{gHQ_feMoIy5{fu(z&1zClZIH|zx zu#CEi#vo)?r`@~|g%vCn$(tcpC~%wh64+EEZDH8nrXu4V@%4z$LZ!ER2DbUlFPs58 zQ?kkkg2pMzc6AGrS?B;$e8`S+& z_Rtw9S%~Hdhs`G+C%BT7hWRq;w^O3OW34r66Elpu9(8 zCBsQ`A)z~)Xqo5}s&pHP$eiJ5ZPR>V4YU+?gS1PMRv#T|w52|c$hBfq-NadmoF7or zTKmg-&HLuO7^I1n6x@30v3+Sa>}74`^oeh^wUPG9(RFf@tfMQ!9Bt|c<;{t0X|NWr z%choBWrIn2KhY?yI3RXm9~$GFw2E62uO1A6v4}!p=|Bj!6eM;6cpD2zkv$t!m_3e1 z4JBaTNFPSNp^eDeZ)k(!=bP;tr%~7Hv^}R$;pH?V=K+;j*g*<|TlUQC(ll{pQV|itd}fgR_RVsJ#q2m#I>Ct(&umG@W7{1%`b% zE~NR+a8x0m4GqDh=W9_ps8B0{vTSLkt!b1C+ix>u%yyMeYJT0a zyFrj3m#h}KS}J768cR=X6vsT(zDsZTQ)n3v>?4ZIj?SQd?<~y8(04Q7Lf?JV$>UFVeQ=qfXv7Vccy)2tyA zS2Mb;#yygQ=8pq?T1UV5=#@EL8H+XhLui8TBW^)sq~7{OC&r1IKx%NeZNPEG5aJ^z z2W%%!(wjL8x|O3Ym~k)6V6THh^qJToOV?|Q2S=ZB?nfmeDSVbbAIaRK!M6AM&1|&C zs`z_ARKM}(w2#P%@NcU)DG>J>qW=C7;Eh*^I`#Sii2C$`EQ7eu$(1y(8c{mdejyF% zd#}5pY9w7{_#r6s?QH0|C3U;U84D^~5e-O`DfU}hwb<4m{J5)=1E>AuI?oH?&)yd2 zVhw5MRpNvYwmtqe?9dUH4H--IYF}ethy~|3}nV z{a4iZVSPP@MkoICbrL;Aqv?8ke=_#n=K|N>nsqHd`nmO`@$0L!)ReuW{VbIg?&*6X zLd*CnqRV03xR9x)TK>Wq;5TT5 z8ONlUJWjU0cIhbro$4jaZwFVuEmA%*@%8o7HI3t6(Lm+^!Pq0lFzE20z6#PGpy$qx zLQ>>G78imb27&(~;maQ)ZW6x!yqACZGxFq5UIe%okW^eTF%cdfPM_QJ`{dlwfm(Z< zRp;vBypwx*!xvB?ev536eJo)jqEup(vOyKk30q4RW^pdH+#ignIfaD0!a0DNdxVbn z6ofnv3uUSiWuuB0D(Z7AL_}`2F{49C_}LQ))nVZr>$#s+%YtZxaVF zTjja6edsmmlL^|nY2?F)QB5W20nJnMw7(pbY9}>O^j#J z2K?BAkxEJB6F3H!Wb!&+B44&S_Z{O(KiDj|E&BW)FUN4eCl#=CLy`plx!td6 z7dV(Ep<7G-a0XmQ?nL8D!S7kPJ*=U)qrO2=mGhl0{#AKaeQQuS0d=xgc?7xsy)Skm zHuSU^qVuT73%dPGt`|pL{oPqqcYM#a3b}a+EcE*Q$nlk%iVW$rC;N8`{c4#IZDeLd ziM^CX>o&!3Sa1sjdf?lN+kBHBDtk)MkQ{0KAp?NbDdeG&56s;4J8C3}-B$JO zv+6Q}V21f#du8|ZBuA?j#fW~A-?t)xRZfxLp(u>&{o9-=mfflI+PxM%$=xY8EF9HU zl0Il5UE#L56GbHUThH7rj{=bDKVD(IJ&ok0AkWPo*3lv8=R#R=27g)&`Pb>p-{z5QSH1D1f@FgUyyE-ylC&*OY&7aV~?s|bhW>+5sUeJUi0kC zWOF`~HGbXs%(**%`s)k_1z+ux-886L?CgPcp-6mfEvp^T4R}H)7db#n+JT{GiM(8o z5B}T$__0(#iZ2&_+2*&x0t9kMk}0z@ohl*94}=Y?DPH$~>IaP`|I`m6mjAncAZIs0 zBKV*BfvBq}zr#Kau|><<<3ig!%#o^hW&CCcL)+1*I>mW_vJmpZu%zQrKFvg9DfW%Ab6r5~?D z^_ow^m$Apy#ZnRs??=SNdI`j<1oI|A*D&)F&P>$$c1RHc+zw4^aBI&VcrnWR-SZx( zw>^0+~%Wz^mlWMeq}4a zLD=J|Li@aTnt|T*~}b!!$W`KOxse0aQ8p zLtn`20Kc3{X0#nHg2o(E$%n=LTS(|~0)w0Zh3|FjiNdvUV#lv~`?hi=tlMBrYy?b8 z5aH`F;AE6EDogP}>UD=#YUS;18S$d&*gjowBWv9Eie&?hkcH71_skg}{wUTdljj=E zqr2a3Rkn`3+{h3`bXS}BedSS1L)Y_zws>05URBdb3&CZILRI6K#mGL-ydV<~L71D! zoX~5;bE084ZJV1^e9goQRH}X699_%!oE&p}Qqh|)3k_+ZkE}!m(t@Y1e)k}l9>04K z>kLbtoF{l>2GF>(BL0irFY&%ddM$F}d(!^N+EQV+J> z->C=CB4GZ|wVuFuN3JjveT@F2vWqrTjfRa~m}TReoMo*W7n%3EaqTn%9cQQm*Qy2w zbKz!#-8&jO&SDYY*X3#=1?vJFm$9@Tz_*#oR;TaV*BNh|U`Nn_UKEJYSp zRooWqhIi>2>*m|y)5Q2kbf3+uU}J+y9#lGhR*BhRIEgyn@ASsb^SFaZnq(ti)!T}W zg0RTGng_VCiUg3%Dx?&;w5;Hi&JI}Z6j%bT=7+*Em8$ONgN<0%Qs3g*Dvn%!u31ro zeCB_)l2Y0dGMVRFf*LbpJOtzG+}An&!V;fZd0e5Fl<#B;j_^dbF&x!4l31#OHd=q{ zt@nHNsYnp!ZcgB_W%ommB46Q~1n=270~R3Upx#Hh^OFBKIKBwr0Lm8wq3yJD=M$ry z=2VNQ_()K;{@=05QQ?ldw@=%vIi&x&7oR!+89wOe*M`D25NvJ9pbw3jvcL{ z`!d27Fe{l+4P=Xj+E#2C2lP$@z)U$HUGSf`+6FEfGtY#r&G`1TNkXZx8fJ%;yw{c~{C-kR=y1G5oWhK@wWpx4M| z!$iv`kTOW=k=*cn+Df$kb+IDF9@m5;)!NNl)ZyB3jj>+rvn*lV{(R>VtdKjf|E_eb zmPYy+g&V8*PFHA+^jpq-pNTqIVFHfZWLqxk0hFm#PH*Zr#fx=qcLa@Ax(2q?cU_&^ zb}!*KY5V;e!9j+WE!Yi$bZv$3p2O4v!Pi|AylkhY#sKtq5C!W0%5-cS+>3nHizBL2{~Gy1TfAqB-g@8_?$L6SfvoG z{i(K+Qwz8DTpCYz)<`jdM|zXn4De=P9%13N_sF{0MP>V=?YTpu&`)M=dr=xh5L{H0@(P^)$gJZk3bUZYv%t7KnIX|~O1Hgd zfQ>#a&k*>G$ z+am36bUKxQQ!|hXV#ZQ2l@PoNeo>8>3WE$=)UHz)3bVpw8Ip|7W4R|1b5|1*w(F(6FYcblNp{tt51xzL^F0En&EhpOY&K$W3b#;Dp=%gvMpmMw!T@ueBcrtAt(Dm zP4I==-%--}!j!>Ol*D%LYF8DSWq(V@HIF2%`M^)sg@}$`sDA5ixp`shQ4u%MD{yu- z_h3;z_R!HNPMW_;3f+!VHA_rA4oHNL;*Q#rTJsN&2S$3pbyq_IZ9x|5^}Sa05Cv?wKZYA{?Gy=LR=NPGoNrMaH zgG)EQbs0{=xM7b`M7Sa?n;bfXJH~YoM$&b{{f$c;JG>-SHbpUbh6f|^P(B)ibn<*q zmcndF1_@lLX5_>u>CbMHqW%Iu_M7g#Cn#U&OgJ<|O&isex$U000c7@f;H-RJ5E1^1 zMB;su)=vz4lM}Am>5)OUp3{D*%8$X5H|tWTHd-NQ=elq7sB%3Hi7%_r*i0HDAdM#m zy+I?McJiUP67Sf~%VaOl4P!Bu*MobL!-0Ku?yRElj$L8P3<_ZidQTYPN-vM9Rl}Z# zD6v0scSTu|ui{KzZikp_H=WaH;r(8`+Hj}}Lcwfg_5CmqUZoBh(lunpU0S!JUCg3u z_nTfhVSYZC_)u1NNU`y5UaH4d(P8u}OFV}u>1QkQ9tU6&(*iqbn@(gHUUj86ly0xW zz1+^}!5sFbH%3KKkr2%ajNyRDgUdz|&v<*ibd9SIjYs-pm)_&7g}H?YEsWrh1WHgDS`kQB=j*QbJ^NqKRU&7a4CfC@BYCQ=Fy=+_r@}t z=&X$3XB*cv&7^Ln+tP!uolXB5r1l0bgPnh4D|!}4KO`>1agps6Y&86qE6-4j31@0Y zdhD9DJwL})cZX-gvF zG|Xq!G?F|=5O+6ojKR_BXs2#e(2~m39QRzINs_P~?KSGDgL4rz+*d1!|Jup6Js4{S z*SSvZ$%ri8E>@O-jCkF=gsSr^h;97&c`?XIrPEgwNkUH~t9K^JoupP1TVkB6hd2Et=_GsqFs?#syTE)~i+?wQ3+nfAV$L7N5?!VWrz8JZa|0;M?LdpI3 zyWruCpj!0f@3m{EeKK^=SHYtpUXZpB-n#lf1&_C`WzE33qpyO;T`a`c?2?b^K4kgKPA!f(LErp`VDfFUjTq zrQop=A4+8Y?}A5_1ZTGk9mU@Tk7vQHIWOQ;4W}h*wSN^n9NYgYc>GQ-C-sUhs3D+B zDu9WxK^!~VP3FcLPAq)<$Mw!2{M8$cD4j_Z_iIhIj!sL?OOl!rt`@u_N{z`xD(o?O@k%W3?BYZk{@);sR^L(0 z&`$POVKDl7gS4{ap1)yZP{~JF8@CbH3uzMGyl$j=M5GFbHFS1C$)?)cmSO7BLv$J* z)4z!6x#3htc9uY>P_wNG$m{M|5A}qjHx#RDhdY&y0uuFk)}V{QY{HMwT9Bf?JE!Kh z@#d}mp`Mf-J=YinY1icqF{Gh=r%F>$q7O$`{K? zt;8BixXydQTt&keC)r9!mXQ)IpX~(PWMGrg&oSEPD&6d@0`sK(c%fazn@iH$ zQ{abT43&~vH|`BCt7PoA`yJO(*3C)%*j6-o2n)f2+IK8Mf*>-)5OmIYgtV8jG~HA-f+lgj zW+zFlslks(U z0pZ>CGowpRXN+#kMgBt5SKt?rv#PX9c~*iEIfvdh_Y}!;XRAHFTZpzhT9`_$R;=!~ zai*-|Dn*!Fq@F$6V0ud}+gg@~W>&zh+LemSP)S532{~($R!kwQ5^zN^6WxYRYT! z4D*FdqPnzc$#)+Fb?kN`D%wK>10e!9ml!0s#G=%)r6n)TCi;6AdkcHWTMDFkb~s<+ zC11ix1I73p7pCi{PzyR_8lAUz`5RuWZ6X5-m9}B)6dKk<9ik>YNsgp<)G9)jF@ymP zEV7jpf)UMgjeRj}#;Ft`{m50>?CNdRte<=&O-pqym=-k1mNM;RNwQx-)A3dY2h(i$ zL^s>%5^c5iwF<_;Nz7!vuaklh_|;-gy04RhNHGffDo?g3ozNz&HTH4TNHU!tzlN)= zMjCgwu1{CYE?plob-l%A^))IDaSA6>5>CQrH6~YB{(A?14y?tjU-ZV#~C%B_7 z?n4HrVxS1!P9Q}nmoDiTFc`p}bw=)Wb(yt!XZqtze)DCF))_ty`b?UzmF}}KE^3Km z8bp=if@G1i;nInl|E%D9W5tbpKt(%@I@_ffhvTJN7BI876=F`s$J85>D#{+j7!7kC z%Ma76RvxjNIhZY~YnoMSqDZ{1}|5pw%(Dr?;Zh_;#`t%vl`mkb2)sO;*8>VtqztvrTRVU2R~YuOy&T zH5tYTqH4s)f1_dGj1<*q+7?nUZM_ajAM7Z0R;AJ%6)#l<8bFIWbh<+@LfcOR`p}v!b?F#=ryON7-H5QbCn)5 z&%?!QeS$EfU}OiUM@l#GkEO(kiO-fruAS-|8=l0-OEaFbD^ef(ygZ`jQKQg? zh)iS9uc4V+3yqv#=2Og_%C6#3Dy?X^6>}WY*|0ZE7^;v>ORuSU{C}bGiTB^GjiFdS zqh^-f@A6}Q67`2g{)p2YXAaJHSA{Un{LL$_!CEtrb?C%G=v5m2wStX=#v5)lk)E-1 z_#o-Wo{DRSF5_wzrAx947t%`ub_pCQW-(G^3bPRC4>N)P z%8yW%!6uUFj#SYsOS|C2{t5v2;&rb10L-qo4eSB7fQ8Got_^i?5QAk*^7>xpY4ohb zyzseLputish)mNWfVAmG3@2~JfSqt@eyaYjC%vz?TRmPq9gTp;g-v3Y7H~KuX^@Jn z0%=+NPNlaN&{S_eR>!dIZyg1gUfyEC^4>DGEpSb<{;L(kP}Ri2Z?9);vXm}j*|^}^ zJkjk9O6r?c?XzuN-D0-nZe5#gp~;Pxi1Njny^T8Bg_gYxN){ZWMOX6a_i;_=$(}N>+Mai-KLSw=Xu<&x*(^54(MWSp%!nFcJ5!@Z%q2nY{3^nK$UUQ}=E7K<@|KWI zUws-_hsWm!GFvoq`pbZAiaLJ*`Eao4kk+5U)FjSw!|m-^JkQ9PBXsJ9B&$;T6B`Q~ zqV?78wV|d%;63W50B)ZULhO1)3jDqAnfhi%c#a&T<2nF2YL!{>$kED$%#2<7Vo-@!XlHn~EDk+EzWSF=s{BE$LI5vAyb zAwbNpJ)I!f%p(X2HhvouP*7D)kEWPps8*z3Iv@OZCc;y%x-sd0G7+alNr9!QG*hwO zjA2eVOad0>E350Bt*ua`I5ugM@|;7vgEn^$o0FGofgA8xOzbbZ&*{>UNUA{bszFRs zyIk#gI<2Lw>BR)%4$P#zZMY^UQV0QFaEjv4hckjXM~g<~Gvw(HAPaZ1qKf5@3qT2GTdSRRfS^Mi18(QkLw5GOlZwj%%vZ z|1cD>QF-H_EGV;p$l;7pC- zVw`#l$GzNGmnnn?+`KH0z+?{}H7e78Q6njD-;g)tNkpi_JtYsD0jKh_fb4;H2QCSA z92zDk=64$~R#TPPbOI0#L1BNLcMD%HOJQ=t#l(Z_DgZ{%63g1!Iw?Qd%My3S#9qHg zJL5#t3P-zok(%bgv;!zPu4r)~LWu7Y0jbZUMT@g3R&$ruK?Y2g;GqBPR;-= zmkd?&drXC!)PX=v-LPtARv}}X;sSB}y!_{*!oHlKJgI8Wym~5%SS0j_ix`tMKVlN8 zq{>5OS5`%aNuLgz>`?E``#zXFmuhVM=>)bKnecX#ldYk6AUFP0q9cLivIozg*Fj5v zzgy;CTFMxyonwMgJWjqk+~m(pAzrW*x4JCNvR`6wlFMKr1xdpg1d)o1=*WWRFYjDy zBo&lV-VrDT<|C=K4eeyrzrIsxrDdWWKgNws&=Sg4%cvFtAAY^`5GwiBp)u)6?Vnk` zH4Iwh^81HVH%_eVp&r}pq4Gh}_m%aD=?;^tSVF%b>kF0nDGt~9*$>(&DAv{io^q!> zKHd`hh@p$Uv5h&#cDO7ss)!fW`ToVYFBriTX9i4DtF*p|YLTp4I$InOiCwEgzEB;z zcP+`bcM9dqiXJ^#IqF>)=tQWYbd<<0dz`Yr`lmK$@bOE$C&WQ-knBMYX=HKw=TJzlgamym>fG zbwyX1DE9z9TYI38xA=$mSYn?S^iHL7kC)U!ZQtU$3$WEM zqo2%idu;fGfBrh|w(Gn1XdNTV%AAld4A( zH_Q7|*x8$3WSpt>-!!waXb>wiG4h$O)d$ zN%|eh)+6*nAA1lyP(5xEr3)6X)Hg_*1447=6{(v;Xr@a@ z@%t-3yio^`7{S5^zI^HOKD7drISrMT=}kIaGw&?j;&Jy4lD(hSiEI+rRtyYDt$9Dl zuy(MHiTZ_E5#w1QL>C^<%1Qx~UEG0Z6vhNvTmK1r>sa6t#2tD}~5E*;Jycdq-W@krwz1T7MCR z4XCqn{2pz~q+_02rmEE`q4SaZoh>(55pqeiPOvu>)*ywjU$ngymq&(>IJCPw&D6Od z#%>LvaXd$T+m7_(n)u?|lwTt3Uef;^DMwa4k4HRawq5n5vdjJ#QZ7KE4lmX~v&@u! zKd?>K7;s?abxpXoNm$y``$NM1O}&ZNhyub^OM4x$0~CBH6fBi&2PJv`AL*u~$5(V6 zk=qtc4@3x#CEW`tkd9ssgo2sq|D}}2Yc-p`v^V@sloRMHEY>Dnpc+5@(yW-QFR;Ml zR(B5rf{jq1XDlU&mKvJjp6}+Ah9Qrn5XcBipD-0|5F2YwW{MPGUPVRiH6i{wb{#+7 zNxl0wN)FV>sLg--N8+^vmb;xO#>`)wmGm&>=!HM($cL)xbi(u?1Alj=vPgvel#P*L zgf7wQUZ75;bc00Njlk!!&}1Q%8v1q5-6O8TtxmKy>N3#Jz3&)>;;b&b(l1<-6dxjaE zX5ytFlR8enFDFxyEQaB#ntbJoq{MrHVe7I{O zPHDb8c!Ea`&8psyAtza|!>?g(_6pp>2+6FDb)1g;9HR*SY80*UIPKV-weQ?}ly%0e z$z3gktY=h3whnSIM7ypdN0sG$eSPv19{RYamk%x zksQe{X!+O|d~T;c@EgP;?y@CjUP&niI1>g4cKP^pYKW{~3C2~K8tn{Drm}P|*@=tS zp@^SuPu z+!c)!pQ~(WmgHz7!cXMk32UCsE+gVqo<-$<9CdRC$S(FD&s;dSc9Iy@T z1F!OL77FC$EJI4zM80SIq@Ad{cCB_y`w-dCsiAGtu?6Yc-#BH{yI8O?Tu6`=42^di ze(X5Y7=3ou%(LDo^|tC;YgIbHI&*w)Np50~s zL7^mIy^7;|sk9teyQVQg_A#bOp!adOMtEMn_vT5JHeAsYqjgILl#cpKa)=@C(2az< zJfjG|7rfBH`qW}jj!^StJX;u7=>Gcp*Uv)L$cRPz#j9X9U8P%Y^I3U}>lll)%vl1Y zQqZb&XB5(|Q2E1g?Lw_*GqDn3-L|bF-;W)koLkzFEgr}%a0p9$iGH`VMV4fIrQlaw zih}vfiANK9=f>A(FrfQw6X&P@y|6|V+sa^%4o>5=!@?n?Fzmdj;*5!B~++4>45y=-N?+qc96S_wALN^yVJ{>ZX?KO@rg-}xs-A~EoWN=D@_8S9=Yv5; z&mFBJf-Gq6mg{dWP!rehnPp9F*`QXgL03X-Z6X|9yg3d7eKW*Yk7&Y5uGCspp?AWD zvJcjjYz@Ez^J>Oy7^Gm-`NOf~5o%c7rd~ax+G$MWKUK7~>n!-}M*(n71o)9poj&{V z^}t{GZRKeFm#;0?wZ62d-R@aXU*i*>FWh}>7q3Jm zBP;P<)vbyfq`Ee&jB!WZO_}QJbhRXFMC4t(>p+g( zh0m=}dd|^ZIXq?CNq%ckeok;SLzX^S-uDY9riQvalE$_8si-F)V559#qmO2U= zCT;&MP45`)myq-ze{>r$kJD$?O%z9-squ`$pJY;2=ku~fu(W?9e?U@80qf)qrNJPC z!|AS$fH6nkX3OpmsODfvQxi$B3u1IotbYYq=nudZf7l!#B+qLx+LS?kOdKFQ9Q|f> zU6Q-K%!^LU0z*Y{h1f@F!}}F67$&t>{57h&)DRu3Bj4c?m;ZMSF3@ zrTykCOyN71Fu8HkLuo2jhJ~;(Dj_YTIR@~L)UVs^4!6j^t?#HGV4ZGbYCNO7x;zx_ zr=Qh2BSh+54q`Z=R@wHv)M3W85FQsUa0#-OMSRZz`4(r$_xF^Y>-EJ>j};=mEigmM zlTR(nan*U9)4Z?2VT_nSwBU{=9=%}aXQ6Mh;Ci{{`3 z)I>u!(0Vi1tHs0a{*{cZLp<7wC*E4oGY^-z#_B3dO~aclj}5@zEd^J>Dk577uXJk=c_ zIHT5=^co@kR~Kxe>+?Dz?~|1};nvw_*0U%3#UH@e*WnA_qN_GUgkES|U1-aYVLRy- zmq0vp$6L%Fek1oJV7omHfBS;1GAOqp7O!&%{F{4lv`!WM7}Qtr_wS7Btv+OzDSvq< z20!bjx+DAHRJJ!SpOv}*1s63c{?wTV_Wld_J_F>}j{XIF8(nzSff!aujZ^Jo4S?~Rwujb#uI2j7z6nuIB51#`>> z?oy*CRGLu6R~5mjmh9hdYPX63e?EaIg}u&TeIRwU@C&ZO{D9uJ%FN!2 z@CdY+;a^7?@hxMvL9!$F#w$(hkq9G|wbHa&Ri-ePOO{FWnxqsLZEIjE{a?H{%osGE z70)LcBsD!vH;y8Y>hc;B0y*+&gz+@|t~VA>o`nR(=m33GDuo(06ljywW-wvs=M6@p#g-Mr8Azq);84a%&4YHZsnj7;+@}q{zCqK{ zpu)M$5?S%qL_rZOj3inV*IYE7YS|T#QfOWoz8=g(c5XSxv8FVbev?bu;xE`rJ01gK z{YUz}C8J)hBF-xDub07Ftq?(ZZWyNK%G1s@Q02P6F;}ZcKdWoB#X*jG%&3A8ve8)Q znJYGuca4;o^)8P0*1K=c8yGD@GBt>3*K_7c6M?w&ckvW^Sx#wflONt3dD_YJsWotq zB+32JeeV#@uE$>EdA-N0dV3grU9_?WfAdT-l|!T$*jcY}Kh1_dWTPqCC)gXjqlzI{ z<90q#@CeoL;?kzz>rMhWsw>Kl0KYv*6brInb0RBlTNHg+NNn~!rnl-X@7)2Ph zm+ydv`@0wd?fx`=?|5o=v>5y<0FE{_8FdV__tA>JwTzsgbBQ6CL@;-^5dsvJ2@2F{ z=jGzI&FNLEHCP#1B3_T+N)D-sLD92lz~8@G!@#_ch*UsK3}nY*^q!HE&tgshHeKJZ zoF?hDyi5lSYW1KbhW^$pE32X%!Bge^>j0!E1&eM^Bw|bJ=W}NE5+7& zc%|0n?j1LEF;)R3gi`CY5z?n;3uM*7HozQQ_D)ZciOe#|(G8dncstW#z3y$Ekg|N! z9MTgmDp)#IH@)~K5uLNl;b#}Z80Z2DQ49;K5zf6pY#N$Oew2!0nZL;epn@lCi;lr z%L3*Ng*@iys#&gTUO3MUeM5rt_P$|fZ?0EwB&9-H=FgA=gg`XwpdrtdrlDM3)k5)L z^Mmi15V(gkBuAZJ{2iHjyC%3|L!IG)yz|41yZU|9e&_NU7b7;!Y8xY$bxDe76C?g76_z%+n?Prtce|k2 zStGtB6#jSeF67>RptUgk=;fWQLQX0djm=*zR8H=NJq5oVE5~~{hj~pty1v}&y{)?U zEy%Gey!&>zp1mR6)DyRi>XaKd9{V&v$V*F(*Xa9Jyk-HN@?J+gJk6N3j*P%|>Z7;` z7^Dj+C7Tn7-@|5J)pjuLMnUKANh5M`m|sV4W+euY9-*_+BL(aw5#n}jCF^}i*{cna z=wa&GF7;Z~8cy}Ec3`RE4)rAXpCcSyia ziNV&DFK{+k-7Z3d+^DFxf}G(ho#h+eWcbk;)b)wm>?E631tLh6ni={H8+ z(GxA_aPh090a+F!x5B54SdGi8ckV8c$+HPd$bLsO|v>>mU6PYDtnoy zH#kjXx|U@<<)P)NpwHHWzM47!`uiE@L+<68^V7o@#^~{K9;^>I@%Rp~L|6C@C@%-N z;6CK8JMqi16SW{s_n`wm$~IdVm*Nr;jMVOk_JCGo6b6F}`MeN$g>be8D< zz|rGsul(ecwobtuZQp8BY3IM-Xp^k?Y;I+AV_Jpqm%Q(>47_V=li%9!Pb1x;#q?iu z3@7h6O5krL;&Ue?H|U;WM`-}e6u#h8Ow1Y;q+54Ek6Pra<0f4qPJ2L~WF} zkc!9g1odmM{Hc5W^N2W1JMJbA54>?F=yg3yy}%EWKeMA>avbG%ELw zFmbI`l*!T-PD4P@^VnVYx(D?My~opRlXCCV&!Qpr#f&vkrbG6t(X z+~o;}m6kw(i}@MDjK_Kh#ceEf|7#NoZr>m4j#@2`dIX)GZmeidCABE7UuVr3I{7kr z#=ga;yaHUv`$g*{;vXmowE^p+PKE4Sj=>nC0LS5arQjgQ%Qw>1KOEri(R_ughb{vG@@} z-v#q$6j$cHkQ~e-{E5`=wL4wHh{AZ}L900HH2tpQq0NHPes3rmFh5{|{c1v@H^yK< z*KEdsj9#`5TLeOnUQJ2f6xpZ(QvVo*aN2m4D<}O&YQ}Z_zPX_PAH4r}_0M+9!fikn z?zHJwYwoG{k*L#5kwyuBXP=toHloE8UJoNn6Phb<9>ljWR9}^p4Vbauc&+?a8au|~ z9%t6abw)0B4}}!|vVFy`MrmagxuOuVj$2!OR}C!#Mg?;8#j zwFz~^pBd-iP^dbhm-$;Knyz)cY>|t|K>t?_+tv%_eK!W(CweV;8lqVP@m#En@Nfg) z7qF5<&{hylGq`2j!GT0tW2Bdc1yXzOBK!8ZLfBmk2n#mWZ$<7oTm9|=H1dY+d312y zb21z^=c=>BJue9o5QNz7b9XXrJ9Bo(#k{csPf88SVtD_|)j)sUBth>xYfXy2JZD7X zGipR$elSOt&?L#9NG6{+f>komDzgmZ`N<2lJ8K-YKTv;4o9U6hr>#p=_k&fZeZ);I z*rfh(W;K%~FtCj*xzQPHwd7N0uEw7FYU2tEaZQMJmi10(m(Y$VVDK1kmygU=TNXmi z=q$z*PpE0V6a&E=NaAPC3tnx$1}z3F-=SIw^9iBy7>s4+Vm14A7QLJRXG8|^fP(#c zzH{K4^8fS*tmHu9Hjg+gdvN^K9Ht_xOc=mBrnBIr4J~GYD#b3Ql>hCkQpPmv0{>Z*hGos045@cg7(uW? zWE?5l%g~@w_AS}9c3$%pQA$OQl0URpCn$9psj(*YqoTc2r~YSnBkOZ2Nkj2{H*0`2x?QwU`B`%|ZP+ty!tYa>>TP^y zyeBFO2eol-8c}lFIGQn!=+G%X+oXqWR4va@ypMhB&o+j01%M78`onu-W~Apf1}F;+ zgGp;^djdydbsMeSvSECif)`|8l6SXn0popx=R<5!8%SGGUa+U}h7atjz0g}UYAZRI zCfd`R;-;0w04EUk&5_wWmJ-kJtQjtfC{iVLCOk=ZAi;^NVP=$pT0bI*SoMq*Vd;4) zq)j@{ENokMxGKdNdZ?{43W1tA(-c{{53W+UK|+CLxmXphMh~dI7qSf9#}h!eMrXI? zp$0C^(5fQOBF|@8CIkv|ga4>O-XdMj1C6|Lnf@M8xZ>5{<3D^JyZ3V#Q*f$4BNgwYk&vxf$+1ym6HQOzZP3(r{}Zx~AJb6->iZ5wUzA|s zBM`Z!3N(^QRM)Ifkv~UBBaL42C@8A?klKrhbH><+w~ayAxJ$sCG^0P9srg8f5hI1A zzb{E$!%%$?4gbOZz~3h($rTWL7dORdg%_cFTr92(Y~R=Nj{3YY+yW&xVEcgZf(LU1hEi;LEayduMSHa)$LOWwiopCXcAw7JeT&E@~bUR67PN z%;^+Xwu;*-cka{wH8dr+%AZY$;tLIN8y@XAb4Q$;r8C&Ayj|2!axTYlyl%gYG? zst$_H)rkc2m{1=dS%YdO!`_{_L4c0$$@qctqCs1o__95vE=}~8h0Q{=tRR3Nhu+Y6 z>mu|-3Yb#x{mjkHco+PN5T*h`Su6_)wGzRO3HaS|0Y@v5M}nXGhX4-*LCzOHwQIH) zzptNcNdrK#LaI}CJ2u?O7QR=-+6fy+5mYA+4S7a7rQuB}fEWX@{J42=o*Y)Qf^p?3 z{ENgMv%KdSu`=ao?+N!*DaZ~^AGJ1F6GrNN+X(D0R=(_%yK^5K&m(OPKVqgq+1W0K zYC_JMH5BNE3*2&ybdCdJq!hV`MVrxId3O)|y}eJVNgz=enpAkSh4{Dy0TWtK(LE=o|erBmWul>X)17l~I2yPmW zYlYfxGsH9}z;{n%))+6vZbBE6*Sjk-p|#_5Mu+R33(N^Zdk9}3##TxW7c`H>5vFW2 zwT&R0nX6dCQV%-cB-S!f|MT3`YWc}Ie}PO-@<>(+)(g*JVaSn?5-JK6Z-ro6Mv`!? z8ej=H*ystT{>1LE1(?#Fy@NlWPU>G{k_q}D5W0P$Qv~Ez=jmbA$nx)~*c4=7`^Emb zOC#xCqpaSd{5=6e97sRAF9+u-5V(N(qfZMzYt02CJ4Zshcg@Ej?rY@SJzaTb_XeHi z9yRV9f|@fq`;s)8iycqK!thY^P`rFy%cQ$f9 zS{;`L?0{ zq5tTr-@|iEySRI`R_phL7549t-=TQVR7a<|GtNpVz-F%=5Z<>f>`zxq-&Q;(yC?)uS)pZ_q|z)=uG8MBLlgo%;M?^F~oU%9gg zVvcQDd4XEodNov`~?^15PUvAtDIZS%_~_-{qQtERytb~~4lTlveu`(; zhL&4?^>@OgQBtdQ4FlUUe+~rYM_IrjkHYi#}aBkx3~88 z6PXb#gI@E#qjDD;A&CbEDpzQ*Z#~lUfLnLd zjPqx(DjMLJ2~azg)C#mGcD&4u2{F$Qc0nv*HLQ9yi6iatS=;AO#TNQ#iHSVrl32+` zb7VenQ6#Vzjsi`JJYYYG(>{~EE5d!+qyx2d-Ie@JAwxAAh7nYAFV;M2b9HIOs9}jA zjw|;QKgGR~GgO^>>@pm@sP&r3o!s6`HYMcSc_ijkAO}P?;XmTF#6Xs%Hjfm}{~=z- zs|U@$K(~L1*JG*4G*y3#*Beq_;&pWCKjO9Gzr<@D;J?Ldnx8p)A0$q3*elcUQc6wG z$U!#x%7zm*SBc6$&W=VrvL^2mR*joUpt7}e=GzjvUTF5*gsQw@TsK=Q$A5>^z4E8& z_`xtlCClxe1+e*Ol)?5$RF_gsg!4>%Dc7i+G_qh(o5XOcz1#Ge(_at}k+Tj)dCkFu zmB|Uvp#dSbYipzpLZGKyco*jXDA&kJ2u7pimR-+`7@)NRu%GeHe`sqzop{kzC9f`* zUhi(%UbSn{-w8WYZT)IVS-H<{QF}hxk;tuomuA&!g(ZNXa<<{Lq{V##=k;Bfp?3pd z6_XR2U{?F!ilbo{THe+X0kwoaUthR@T2;QvJAh|T$H(c!mj>HCXzE?}^}FoH@9}zG zegyyruzl*&x-Y^Zn}ZZceT%3iX+dFvOrBa@&5P2;%9|FAG4xv_{tf}HnL!j}joa(u z%O@YwdrgNO3xXM!jO9ZVMV!_f@AQt@Zx?A2O`22#q4H%wb05zKbVpx5K4!}oXm#D6 zG?USLW|HSlU({<7bm>rkLbs*J(X+85VeFagI>8=ZJRB$e?$<{zSRzuLmJ_u9t^ z{Zlg;WL#@)e4#}+j0%}bJ#Y6|8y+T{pHUSs>WZ>I0DPkYkEKIXG)wn-!P;RYxFKnN z51zOLRNpTdfJed~P~x1_P1nK;H84hnkp^jbLPS1AbBgcE!(21s7-^}I-z(x)rM}ylSFf6JGN?j$3~p_b=@3~UDXE6KbIKWQrfE2=2ZAxDClV&KBi5ew-SjwYZ8yTbDW`Djq~9XjIG2dP)1J2;ZL(cq^sr z`D`X)wm;TSZ)+EgNlUI{+f|)19##v~*4f3f*KtxcouGiQgkUdP^PMCy8HyAaIq+TM z8MTs%en`^_12kJAhhLGQ`Wuh*{RZ=tX!35K=B5*X?S&ZzrW|G;rJkIm2Ln8;RiHy! z?31}WX?pyS>$BRxi%r^OIx=Ev#D!T8`_V+Ds!ljetQ7qzuUnQP;wB3-8*Q-WR=eHnlB!gW?j!}npq za%$XZtlt_BgVqx4Ldvz6FsGVU6@A-K)~S6d5d=G;?7%GDIZs%BPLe|jgt4@2OjB-NhYb_M`!B22mwP9iMD<;|X^%tK% zFhLq~R&S|AN}QF2F$}+sO>X zG`Xm6-sXU6okCa2QH64b3l27>^xQLX!MFRXor8xMENn?yD{g>9T?U+VmvySz9A_pO z3Eoj*n^%}ELL((8AszgbF3G#s8)3s6%oQaG#{9Y(FYAoJImZLA7VL51Mu+iZAT(0_M}W-Z0Ny|Z*&iTPxmfhr(%bhgBf)bH^8PfIb+CC+-T6e zJ<1yZrH+0Fz#0FbP;aF^(_yE8NpiHvajR7eL}%zWU1d8o8qIQmfMFEqX0y!Soli00 ziqH#}Upy}`(lr&$(2$3(vC)(rFz*u^tvRqBC&aJ(pxqHSTjMnUetDFWS515wJ9|f! zp5*TR-zxRwzg24a$H*_08fT5A82`?0gQk@;F_nT5AuNQL4nmY=Om#OS?MtQp+(a%e zw@k0N!N~M3q0si~2)D*Kj2k%$pR8#NrQ@ zvZjM9bwUo9q^JQhc>>c~@xVJ3YLR*boN1&|jc8n8u?j^wS1pqht*oPaiWwHXAf!CX zLt+|BfE;*Xx{5hx>W*edQHaS?%#rB_YgJCEi%Y=Ii7~632W93{nmIU6%JFTg`m|~= zARj?%rP1zq1}4Yf26>nc{v_p)@WDIJtT}UJkTKf532^Qt?Ao4r%HDtEl$(zxhAuBj zMn|{Z4m{?SDOu&{gGW8MzvbK7vBvy@ln!^+)kp-hSj859Gk))ODWx7*Q_x7`yyMh? zP8QZSGb%&d;?X5%uXy73w|mp{<{^}51Odx_z%b$g`RT{O!j&sh{7gFtV@(tT7a_n@ zhF1g+E**1QF^sd1IE{x_Egjl>W}Yu?S+8hdeqgQ7GbTF`_5T5YK!3lWBm+*|z2>}HaRT|<#E&OAj%p;<1@EXVu_ zuJa^H#&U~M0|H-TISW=qGi9?fiOWtZQLART9%N5{suE#(_MbKDpX;}z<@Nt(?@t%v zNRmWRxPS8$F{znLQj;V*s-m0jrT|rO8i58-)%4NmBtd2X(MlrnL_`YFH8l@%pXI*O z_X?kx`4YaxlB<#em`34X5K!(pSl6aF z3^R@^8W|h%MwW#S*FQ)Yeu7dWeC8W)v1v~f@*yVBHr_bl+5!(4_8#IM+h9ll24?XX zCm+mGJFEB^8e_#*bcU*%t%cDlEC$elnY=~oQ`F+o6%Ml>7D%QmJ|V}15i;MS*icd? z12b;GU9wyOHNZ+sEFcF^_K411b2Oe|KBuh>&F5^c_}x{wy^4Fp8saj|)(jQnK6~hE zfL)P_B9N~rU{R-we6@q(21MJ@7QJIHdf_oIwv>sA?9%&%J!lvEM4KzNlmP@JrZum+ zBy`7Sx?+8h7nv&Tfz6uSIsB-;R|EgsA#!WjX)K&QehtEgS|!TSM?4M)g8aVcV;&5l z|7qywAMeW&SdNx{hLzeEZ84Y*NeHdL;_*tEok-xWK>4j14qL+d3&b1IF5|szkAEc! z#z{5#`dR@EvYK$kn3Lu;_sFKXcMS~q+R^9*KfS<2So(x(bkfL1<}1d5+ukdxU1h@o zF;tX)`;GtgyFBj$QmJFKp?V-x#x`7EV<%up6ya=r77K-jV+!R|ZZ;-^nD!vmG!BP6 z%UL@Lvo~a}X&Y34o2VtZD&g=-IQPn)cNAbYK_)f<79UYQXC9*#~*8=E{J4f z68YBbHEC1k(JSI6qlPdQWTSs7He|0^xFG|)OA?h+uGY)mIMgF#?NXrDYQOoZY^=&Z zFyaET1p;v$I79*QOqEF`qXt}c;{e@*z9*yUjrFE{wd(!HFzkNty7vJ{6DT%6;+Yp1 ztnpC`A8@>V2bA<3*+vvdIOr@xAp^wc55W^`^F1}T2dU)2ABY8D%_Rsao!dTIZKI%< zSCs>3&3Cv~-sh}8%txdocNN(uEhw(Uw7(#K=fyp_VL~n`EhRST%cLts+z!-m?j7=K zAgnOzg|H$~|DXk~AR=E0xDXp!mdaI%Mb9h_sRl;SDKer6(BhLY{eXQUA?ryI?zP0_!80IDlKYNS$6En_Qv;u6C|18 zY?{&!+5=&+!Eo-WK#^T$sbe#APUu6#9icE$u%K0XYoA_L`}k{uWDR)7WC?7G;?^?1 z*Gol_67=hHhK8yb?k~VVTM8U}R=AJr-Y+2r&dXS$QQZkUh>}i!0!dgAJxJ1dJNCXfegIlC;MK8Y`Q6Kta$(K z>0+7G#}YsqM#HmK+F9HoN1ynzX-jiWlHwXIZR$*&O!=+R9Poy)C#p9X4qhu~EXV9e z{*CFXZR%NQ0~Xz3b3aQ$gaI~PMCee5_vyb*U3Z`V>(*iS#UBNTIHH)bB=?|;UaI}3 zhf)|dj0&#Ig!SwSHF6Y=VqeHJf#&W|cPc_BG(HYIh^9c$Pp7qC;ZLmF{PmeG+_=*1 z7i^B4)(h|WQ_vl9&02<3DMUolIr7T~Ji$ykoEIjKg~?+UCJ&P(eYI8(C(pFE%IR7( zOzeKSMvc-fXJWgC4!yv%A#D@VyfLO;S;Hg}JbL0hf2_xvo4s+k28*p6xozY*SUQw# z+`_3)mfJy zJG?{%^}7AQ7jfw@0%#@z;3-Kf7#BB8Fu-0yfp+5v4Qib23+-0K53)vs-k$eg-+6D2 zFJ7NqUY?wvb&ihDPL7Xq0>DT{;7LJ>eYh8O)uI50?*oae3HM@t81wa^NMMljZfNDz z!O7|IQRmIYu}lZJ2htF#1tQ-8-#vZrwV1y{V0%HL(h$Lg@A6jk{`r!i@GUXjJa$k5 zYKoJighPs6xABD4$Z^|xP)^~lENq?&o98TSp2i;b)tWqAJMA+G^)ja5%e9M^Ni!3h zMK$0BR?&t1N$KY|XMg&V3>>8zKy`?WlbgAW8egJHuk*vNQlnplpgaft-B}TFL=E0u z8*!n-v$zk2oJHWrLJ4}-N|40}zFIZN&90t_B4ka&m#YeuZwr&hi0I%K>d--agKtCyo*dZLyq$R<;2U56&w~H&ZrSypw-)?=9@m`szeu#ar~&=Vu6gnQlJ&o_y|rWV z|Lyh7Mg8Y_T#Ne8i~7&Z4>p7P&qm4BE94I6x7^I27d>U~lSQRd<158RVH-4-OBz~k zmAs-rUH(QaAJ0Sn+py)ojfMO-k84iyA2&)bq`&8OeRlb8V`FC%ls!xS+gQkd^SBoB z-$MSInf%v{`~9HH-r~~SIo3uDdPiY5TjICkRQv__Vr6Ka)S#y$Ds(KWv$VX|KCvVC zW0>I`^S216XvvtvmY3h77z_A^ymJ)$(!$e9vNtemIOcR|$rXrI7!V;kt9jxu^1^V& z>0m|7iul^7%;KlUolZZzDFu+Hho_I>NhiNm`lWC&mcGP;2T~pkV?Z3j3KauUDht8u zdd)1=@oQGUGXb`h+BQ4}E;Aq)S8af8blD52mudfS%pNK@=fIpL25SL~5#pwRW0bkA zJLDw{xFt2m47z2pUVQS}bhl*%(RN^<^o>Gzh7EnCHYF!a3C?iiFoFL z5sgLzZ?W&hmgM|iFCcYwpC|P}W(l9K_Obp3k9=alZiZo>5?k=&#+d3_Bq`!GPB<;5 zUNdOlweyM;DHZZKc2KAHzku?QNfmtL}2op)E7?wdt2t^d=Flsnb#cnNx2&99c zUsXth!hP!C)>%UpL^F^zl6a7W6pWSEYr`&;)+OYU5aE+Eg}45f;TsElka#M(!HE_ttQ%VtIPlCY8*SLZeoJj>m;zKV_trpIO0@3?*jp z7`_g3+jdb8eWAq$p2Y=CYe8b7)=!iA5vDB#b!vUZ7Xp14#*9>yJgr!PWl``cYlg5b zGz+@fW``J>D=RB?SRsWQ(p&o#3^V7If)`=|BF?|Aul295udxJD8z+sv`fG~vdRIAy zLV;_zv^aY7y2VYk>Xcqo_b`q?n#FR4gD@|n27S@$swpJLKkypgwNqfhH}R*oS^0`8 zxqWBd&f>h`@7mbGDhTwB`3!>rQ4xWSK{?4{uTpi)N{BqNl9fH840Fg`Hnev6@}i=- z{8d=(geMh}dy(;gVzpDwc| z?<@EdzyI@p5k6P`f;Twg;U52s-DbFEv8C`VNBw_cV=I5j$D>4YKHwn^ql4`SKkMG> zbSFQ+&b8;T|K z0pYg1Mj2h}0m4frH*&V!aJ1oE7#!XUDmS+$Wm8!&60H*fmXf2~jTCadr7?USlQ(s*+0JX zfm^{p-+g$*zYLB{#}PK23+|sPQ$fr$HHylY>h-3@Y8Y!$^R^9r&2Gq|=)7Uq)GJ3@6pf}# zaS%AgW!B_B7-t~dp}_0ZpuO8+zyGxQe}{gb61K@T$tt?G9ldJUg~u9gc4SSoywCq_ ziH+Ue>4A^OptP>zf2iNoZE1f&iC-JQ8~haeFL?;^7mz?=FQojb4+GF7aU8)Nt!Ql| z4@~%G0&ddyKXODUK=U7eZvXpVR{j-4HH5rkB7w`cJ!UXMvDORvAdda^d)a_3e=Loe zyCTM#E)!zeyk!~@ul>f`&1X*>SmOWInmzZBMxI7%923o_F;bjWKBigBDs=84jygAC z9}i>d^laSZoArp3Yyc^nWB%%aT%yLe`D7ap_Kn}QCckXtBar|M+8pFW1Yn{8DZpr8 zhLms{_j^IY(7^s4Z{FFrWz)^xfN5rbYle`|6KTrqmwgs1vJ=X`<=XM~#!L-kIT4 zgM^9RAU=NfW4sCGAD7K7e+8zM|CP@uzp>B%9c3Q%A&fYMqSq76o*WlW9RD%HIqSz= zm1wm|6VJw*L-F-!lei{6gL~r7l9?5+?2A7}nQUY1BhI!Q-)yE^K?FV$za}IFmk|Ul zjk;mlk9wUh=!%^*9wuFG4AH}K6tANlufxyjvo})VlGN=bM~ad4BKKPzygA984d~zC zS|oPIW8ESD_5;P6cvq*Fie7n@Yn|%*WYR@>HN>1I+}{NoUq60CgG`K$>AY{v4Z_^@ zPv_@9ogR0fL!Gym$0B&)@c82DUgtZphNWmT&oFi+=#HzJHhNW{Qjf=ls05j7J4R?Nk_)`;rM zXf*;6K@NGxu*i`+E0z)M*LH^aQE4cw?8GvQdH0wBDbmeu@`ngEZQ~!!M&;(?a>#M7 zbndqnwoU1eGZNd0%?8HsD{Ei#ml}k}nOG@t?mNO%b&6D6vO|iAbGx|X(`F$hY>(yGzrAmrDkW}<%6a`dt^Vhc<8bQJNaBi3ZvTq$%)xx}s1 z;Ww(cL*K-4zvan1mHJLx$=>wcsEm)aXcqY!ho|Rnk2*#ehI?QY+j-8SX|t~EFehzm z0pczn-+J$iZQ;G{_8nPxD8q;?VDZ{MqANuV|GnGsH?_^U4H`?3G^e~N+femfhPV!# zaGk`m*yKOQCNG<3ysvOaZrMX@x#qhvoYk@G3H4XK$=ahEw|)Q4#XCzx5w7qQa!*^K zbM?V%k~YIbR+N@lF7-e(D84mnI;;H$P{5S|(t$@mv5sn&r8$4R4~W9phHeguH&w;? zsiQcxw80lymx?jt;y(37I5A2~Y;$3?rl{ol^m7Ym#$p*!G(hTCWebX>#Z#OKjMF7( zSPRUt2n!d6rgD$C7}SobQCk{J@dBNR;71K)^+GCZh&;wZJv;wE-K0o-8F_}0qGY7z z_5o)0QG&2o%IA!qn5dY}noGBAE#PHLfQk$w(Qh>%o7DtDE< z>MADcM|0OiBzuvQUT{R}kf(Px1CLF{Xwucc?AvYFY^zL0xNQ*OaCGu>C(LS%;-~C5 zqnZpp^?tLO{Jq^+DVv0{F;A$P)k3Eg2rj&BhAg>n;MZc^_DO;grfsI^=Hz1BHV(Hr zr6c2=5;vtQm-wh`+}%(6rxk><>NfW9X|=i7*Y6@kx^W$8D!vOK|FxwHcS$ zd<|K#hK}l*tB~TWv9#`!a4WlYJY#moWh}Y<$AnnOVeO{f5Da$fnCcOlaOn)n82Ulf zG+t>V`UcIF73A9MRSMr*F%L(az<@`_qzIYQ;n04JahEX$be_Y0Dsh#XY=MO$SUg<0 zl(_0WBME~V&`n$d)d#2j=nAwmK%A2ZT{a}P;VHr7U)pEC@^`*56!%`F*AB0MmdS0@EpBrEaQfo)5>>kKhv~F$%N(Q_I<>>)$M?jp8d5 zf4GCSA;srM_KVAp(D@3D(TM6M;%v}zYO;`JoA3AuJJ}MZ+31ThE1z>1D|LVLJ-Qqy zk_QK@3}61uj$eeSi86*uOmA87Mx1EL}j2W77dj5ujuTJX0ou! zqrSs)!Xk23Z51Q1G0Wp#YU7CQ&kH7>{XQk0sxNe zLXNVgx)crbdP0+(g~WvE5E~)_4QKM0k1P8QUJhYS-No{GRoq}j6U?MA+s_8y#EA$8 zSHXjF1%ia%rIVgK_ea`BAdV`D>W3lyb^FAlXDF#3LDx@={*mQih#Y;ArAE0)QZ5`S zi;6YlKog)2rd?jZ%o&oTbc*G^)4jEAH?dpw8yG`+b;KP`ga;!9J8yEuj^BYF9_%KWG5Dz`uhvy-sSqhyb< zyCQE?9wN*P@AiaC^K_H_Q62)jBHhR0eG8!ZeG=Ra`+kyxU>SIr&AW;JtfsI^yW$jn zAysG{G2(cIGleEJz#^xA6z(6V-$%eCtgJZbdb2G=_3E$>mmSaoh%w7~bUWiG*RGIR z_u8>X5etfwm6$b5P`p24OiLN&TqHW>3e;R)p1R-){>u2G4UnV1T{~ii$4~IoI~F`x zk1edPTG1896mALDWXPS9awjuyiNJ&{dRG$N2!9s zsvZ4zP<3~hB!Hm)li_s{bYLJzkqqsa@e28|V8@pV!EG!Nnqt{dAAcsR{#_u?2rDIs zEm){)j7f{Y@|6rlex z=*I(*@=?9ujl{$H?tGLWohN?sH0^-!{De-vZe6k<6GCtOu+OI$J!^0~jiWM~K}9^a zYBf{J6T7};B7{K+wHhJChVpLEi7VGPT0oN%s59EUe)B~!=S2|wG;3CYX*s`EOp&Io z1Kv<+V#d&;OsUfH=p45#%J*cG=ctJdt3n`9J z>6RM{X17LkaJd|=jyWtrso4R;(Tp?cz3_$uG-_g{Y7o_0JivlZbw!>cbgBW_CqjX7 zR(kfhO*M?IqR%Bp!&kTs=Z#=rKLk%578+AUrw#skL(r$PfOSZQ#kR`o?uY`%Y)q!> z2-R%HJFy7)r*40k!YK8l1D7NlC){F{g`!TjL(hDHiFd;Y2pqSLM;TbBzu)q1uqeEc zut5xC%9G8xU*zenWD;U@0)EPZC=GAIeh5MUBMW5a!)Tb|HjsueBEwmg=Mk04(Z0&8 zmEM)BtJ)mdQ1yvi$iX_p8>gDBhsRqax(W&Zn<^=;Gh^eoA|R3mhyefn5AZ&EVz=f7Noy zx!|=6pf$B_t?0eZ(SfGEJziCyPCoBZE&Z~XTwT(0P5tAMs$>M1qdXZpI)_N}hrJNZ8}5#&Zx}8qBhkN+nTTolhlq}>XxL3-hJhv2hJ?nPzJS8@SIN`Wj$Y zX&zbXsh~oSP8Y~HQXeKS=s5X@Lp*umu?)r1#9qK9@yt$9m7ubc4lB0RT2t=DWDAdE zGqoiI@lHt>iWr<*)j(FZ-@yMe*{Wf)ac93@`yT>+sD_|BdJ21al;)@3+s=95pYQX3 zoo)RLi?%OXV^AH|brkHy_6V&N;}2t)S=mxn3rLVJ*E&Mb$Ugfn^`h@A#TZ~-e^ zXE{XZHmgRqvgaKIDX2=!1P|zXM1K#<;?g30DSC3qgUSYjTca^`d~5fbw5jtbV{wyF zLSD5-|5R+~UbApR2Y8p{c1gLLSoX%Daw2z^&KY$*Bhwd+RYj1ExPppA32_}5%1TkO zA)r<-RG=H?5vy9lfQ^sH6v%P+9gxs> z6ZuMs-=V9ECu@z{dpa>Lm&!oriquoTgdNh@1HM7|nu z1uko5+EtmYNJqYUikIrdCc!ce+)Kjr1NMnzttTPCgwX(vv#B;a^c6q8=}8o^?xiaf zqSWOiWE7#IL-e^Ko(K+KQe$kN`il!%bKm(Y7vj9urKp)$8!efA7o}TtbOfOze=y>2Y-C z#4O1ZStpMflkE9E@Owe>M|BXr9>cSTWSRF{egfoyoV+P+ta$%!SevBEm&8gy)ywnY;7?`MQns2HC+qI zp=0mUf1L{SKL6LP81IWe3Wk0}$sLudaiV`#1vn|0O1lNGDH(K_(lbRHhETXq3Gl?` zjBnCR!6rqBxk4;<7%wQ`LIR@LQ+N$)zFzZGh}TTX?x4ls`g&o&SQs#-Yrv>vBww#F zqXwsQ+clIWx!+KJ6k0j(!bQE`czt|v`11k9E}mT-U(C=VQaQ0-oOPuB&NQ*1q^v1N z_@&E+vM>OAlLmk(R|IsN68*VX&U9!nD2PPeFIcrDd6TT}azG3-fyqn74_1`U^E?p~g&CjVWRnU$6F3 z!qLX|#^NQa<%uGgr7w@H35}=SaFwQLl8ZH&X{#XB+sMSKhpUN&n|9%*mDgv|(!>V~ zKk33x`izv;5{_I~SuNX17v9pj>D2|h`@&)R86Bpd)r`OrI>C|(5}whC^wUO(@U2wY zQ4&UJ;65q&p-`x6Fslv-YBYfoRQ z=VzyXr@R)Zi(;CWEck>QR0J|$A}ZDC2QkjCfXsn`>VgvO)hzEZ6OPk=0YyBN+8#Y8 zotmkyho|S4$2xQk9xiOuF1tSVj#m=JIr2lPHVk)OfF^&= ztF;ecQUF2Xce^A0>U6N3P6zb=PDdV~DJ78B(#p~w7T4#y+H38#zn+4;c^XC^X4J+y zT)W%b^ezZzp=5qzV!$1bVmKrt|3S?iRb+xiQ}y7y{hM5=p{7lRiR<8 zG7Wom@Wd@iYeE}eE7Hc-xNMNFnbLyzcTF;+bnSDGcyX!MJmw!4^~;@|!u5}TZ*0F@ z-`(7WYvT{=TU%Q%cmCk*%mV@6`1*ei{C{(O)8zj+?XsH@^N~c&p#7qT>~{V{e$_#c2IqwC`S#ki1A^gLiw7g$$4ZrwbPTsB%@;2%RX)0X2l+=@_ z3dY0-egBaX*xV&N@f`HvF(IA5<)!g$_UI=8K&+fA{`& za(2`b1to(|n6r`6@q~y*bb6q9DbP9~TwOewaTmrF-3`$Rc86IL(Q4uiFs*5tl8+s8 zsJ`&};X{~lue&uUXl99fj>8DyX5y!)cfQ0@9Y3i~=7UEcKvK?Akl!nasd#?q4Ny%ugGnH+^%H_BhaUFkmP!%$PUJC(kkC;da)5kBeUw@SYx!yIb? zKV|MH9d2mtR!mW#Tr{Mx$|uE(QLzhvrkVCQB10u68FVZZ74&D32yf zHR?Jiaq#AZzt5b?G?rd)8%F%Z1tsO?o&_XZmIWew@RKKQy+jr%{V)0>O5WO!eNnu` zw(}A{3y8#IqHoF^2YkZ|MLO$~jM9{*%mvzw`yLS3Ev#=!2g~iU38olD;Dop)^UuPV zZiZn$^Em7*9^kI>^VQXxwat}3a)&t1c^G5XS!NKG^>E2chFQwnVpdp(m?xska)a*S zqGhyC_DFDgOUHflvNr=0-Z?7C9r@C!5DP~j+mxh&QV zFsZhl{dTz!z;wzsxB*gjo;neI%Ej}q|(1 z3dSkLU;)aE>Pyw77_4N5)}$OTX_f?64OLVj!M8gBtOMDeNS(8X^=kL7)!iH)ceIu< z-!3+Dt@n;632YWD3hG_VpMfx!Quze_5hhaR*@xXRJYqsj*;`MamFys#p{@aC?6+(Pn5#N0p0+GxY9!7QYGMedu**Mt?(c- z?{8+qJ@F))d>*oao#jdLJd;B6bbh{bmb%l8!LXtVOO zm8W8}a-5Z?GZSUXcv3dl_Sy$;uYT@a9-hBBzHB*G#J(#>n*c*e;1GzA^L{?RGy=H= zyLUUs%c>oXx9?78vmIxL9cNpWqKy&#uh6WShf#S{R9*=+C@oKBo$lKi^^~t<7v8<+ zisU;g=G|gd?u$B-rhTzEIt3Gh3J@Po^{f=91)RLEqbiJ~ym6;KGR1wRT|Afp%FFS`y?LT z-E$EUI{AP{F3@_B8s*d+ib`>LHH_J{>XBVvQ$(09+c^$Rhp8;?!b5-+J+fWDGMfch zuhizO!B)`6cDWc}uezfEi|pW`Gj`5Gsk$OQau#sQ4=uoOM6Do^;uLxOwGt0bak*%- z%~55OpxU$`EXE8Nx1%CV1`o5K6qJ#otob?X)#^IAN;?yA+m$<-BZwFd(pGVOKy#1Q zMzwsEI#i{)6Tx&Y+(8n4#5b@Igy=wwrtrvnbNt$4A<%8K>uC(lfj5g**x{5jEvg-_ z0+G&Z7D#ealF+fHEje~eZ#25 zQb{^^k#%9;e$#aloBNGSVNnqzH9F7*LkGNCq9Pwk6_dJ2h${d z6+Ctyrx#t}q6&T(M*FODTv)-XGW+m9=l6C$?Fp{idp)|Mxxz-G@TR5ecAPViOMJ+1 zNfRzGNscj968IN1XY%$7l71+bBaadQX26s*|!%L&EsJ%q@z6xGjWuj~xTI zb*mRv|H$6-$b07negb5aC?|d0GQUOf?idQKm{L*oB!hYGm-3++Ws|BaB=HtKdVAovFU+dxI0$8xq=_6<(G zQ!N}0FT$u&SiE~5h~xoECKMP=K-sRyipx#15{5K?3fqQL8G6Az{#s|ryFsm5iQ4Qr zEks#ST`fYLG#Y7CR=1j#L7Xy-*Zf}p`2Bk;V>643k{n*z(Spp%jU&>UQ6L|NK~Gte>T2$|el%mPEvk4DHOpvGozk@VFC zNf9Of#M8IIj5JVrmd!Wd`&IaU^%fK_wtF$xU6)tsMPG&j$eGFD1&dpuWEBA|x;)hy z$!4%b)q4~z3cJuhkg=ihNNpe{<vZ1cW_Av63rw;wsmKK)RisG2tB96ITmf>v8qBuv?CdYk8;4?_}YcA}z{KN&7 z<%sO$6J-N7QoAazn)_J}R$*+V*e>F9wKDOK!1ZdRPMtLa6hjhu>;*GaHq;TB;ye=K zSF+2|F>7OZ!8zy1Ijfe|h+MQ1+~?q^Wkfj^bFD$;&xFrb&qoo@ElUqP0;?@a{8h+e z&CsbFe}e#f`-R zOGtNg)@LmE_A5}2S#r%$cwHf$m1u6afr7<$t7Zz#+TguO0z9-l zF&J5_+4(unF?cuuJ0QwFPtvySGd1$}p&QetE0^rNr&@a0*9C@5*VpzuiRgKeUe0am zt7VEdOkdQAs%@$MaH=59eP{(#SbszX0OmE2-<8#(c9yLXuL;dcYvPV}?n|8S$67<}2-!O?M~rak2DyB*-{(8R`sK zCfmceY&i+Lm<(mrG6lw#{L;kn&e=hPr z&*_@K{EzE$A^Sg<>+{S1JL_8;4*7p`A^*?gTFCzk`F|Gje_19Fx$9||)=BYdW{~~-`9qf!6|SSIshuC;M{NyI z{nAyQ2ha_C;JD*TKDvZ;jY$hIYa6rN6`br?>BN>*tGM%;{yk#ep%xu*d%wil??J}7 z5Du`eRGig3|aFJwMX1+}wt?<%(O`st8b zbwX8U+MV#%ASdIbF8UZ@%P*|H%>1&l#Gx#vXNLv#*+jSD-{x)Of*n@r<<;HAQuw{$ zDwfQv$Q#Yr#iFsVg(nl9RYzms2&Fw`6go-=*%#D9_Gf7q*(+`o)(UxkcId3#>v^L# zKR;T>bl42@<+xvaaj&c>Y=KudFDqg$`?N3r!i@*N7m-0DE&ja`imv7}x#ty^IL3$u zc5@WSh49{MQB`k}V3n-;#;#c~)_g9{c`hf~@p4A5@10ty-6W@50pupQ#q9-NdtwJQ zalUxMJLja8#z2-YllpAYn!=)E923r8G1v(w&o#s^edcQJ6V}}6ouSDneM3huv^rZ1 za~3JSWG6~P%5=hz!o;mAw0fXT@Hxq&z;q}q`Y|Cvs$v#YzCGSnXiY_*z zTv$~|_!<`3h|{?Qay1P%d9{^`8a_<=owR!obSlXLT|TKn0U8gHaO*IW;so`JWaW!w z<>MzSFJ&!XR(5eMBWvB1;!TYcuFw$mOyX^;QL9&@cA_++Ze=1}=p*B6_H-*5bG0nD zN-|H}@(Pjz+vBP^o<;gvd3~PrwZt&K^!&BzN9umcv*a-Gjop;71Bh;!VBLeQEqOqU zS)FLmZro^*E>lmmR;Z!rZ3!To792HUedvVCvw#pWbtI(AYw_X#!tpHfnUq)tiQr zS?{kY>aAU+(5CDK+Es-Kq^e4qbi*54b&x!D7=tkn2B&#|g1GpxUE?MW1x+=*j+GTN#eD#BW`gI@u{K^)IvZUty<0wv zfkLBf6%QUzu>P_lsIOsM(y}qj4DA>k0+6#TX$p+-zOLA3r5nHDy!`$f4Da_wn?)Bi zbN+}30ZtS;5-*DL(#{D`2C~opwO?R!ysyS~wQu{VIz%0n3Yr>8kciXG_Aw8(qgyL3 z%C|k4Y{_)#WCOFHSdhl@2Y%;*gONyjEYQ9gZp682A(|E4`4;q%?0vyG^%@rV{iX|T z2FJkckRrKBoqRATv>Upbt&l5N^_u_Fu8&uj+U_y2SeoBiT}SUi#`qA|mU7tjwF^Gz z415CI(`F0rben~4QB@t5@spXz9JvTqTcNrcH*BTewN0w6|{dachtpU7)jtzZPP)ag8fx=lxKsUsz#pV&YIVE8`}{DjnQ( z>U`B6+)%fSE-B|C+i(0t={s8VGYYEWEws4%wlj=AMDZhh76$!Z$|M@sC>*?^FnXAE zO$Q=nAWc~*i!U8bZz+TH`Ba#)UM;klg*KyI->f!ME6V(vRBXnor7;C%r^bv-MeiwV z$Ew=vEmWd~N;H-LFh%XC@+8O1HKpo-K3}D&y6>M|f2!`{LX|SEg(@`-RjLMOsZ^_; zL9rXN#7#~vFSu~PrW#~$k1}Y1utfou4^M+9xDzdBUK$Tz!^|iqx#tB@JiMcD`W{y1 ze1I=#_g+rDyO_c;BdQRqhB(67IsEs3XZ!9W?UXz%mgjrDr^tT*84(s&&MCCA8_wV{ zVPArd* z{6#sz>dZ6($MJK`;b+oh2i8C_x*}DqTN8V=~>luR>4((oK_X*j|nS4QM5I+PYuVBq|(6VGh zcB}}^wMg-i@^tqUcmeWBKDvFFUU6OJvz*3bZF;Gk&34+uhEXIO9w##>Hdx0Eb4nFcq5Z_T#5Xpos zR{u_JB}ve5c+Gk)yIx--JBG=Vbmx-@9R_KRDw`vzO$*Xu>y|O5%ga-X-B?h7g00;g zdV&O^a7mHf#{gNC{Yk-IwKU)$Z57uCH20`qAWk?owV^6Wq6j7_)+R_0{6FFwAA%=O zbRb53GxFXXzxKF4UC$o{Yu$l2i&j`BDO?c-8*)ouUb8^x!ayn=&sOWg#6T*lJL%O} z45}=D*JM*!I(^Qmb4-=J`4mo_r9?WtCejDW=j?`8AOfT-i$ZD{M$c#iqT(@r*ysK8qbHa=KaHcdqjf=G zN)L{PY&!{ZPDdIH_JNi$EHiZp8GS(V*4|(OIpO)UW8x8L(QL!M$82DH%%6K@;;Xf|x21Wnv>YizXSJ_(5am3>>0Vym=0 z$39-CLAAv&6^ydk6>_b*+ZmkYg?B;>S6A7nppcMjK$0_OnUkh6Q)i~;#-lM<@SFZF z#=e=IFk1{hASo$@_n9!vs6OeH*d@{vt?o0 z%KSBb=OKc%xUsq2Aoc+>;Xf5GxZv=lsE`GMD_Mf0x%j!DLj;(!eERZfz=QJ)n?vo5 zgMivptwb9-*zb@>-)p>_Oh9D8^glYRCn|y2$vhp6Tn3q27z1%z2=Nq;>G`&9^}^~O z*_$4D@4UcIfQ%C5P?KBcwOd90s~e7Ue8!gvtKU}hVE0qTF>!kc&a7jr=F`e5?BXPnX^N~otTwJHFT!IIU&K5+4cNK8183WTKQ69Z ze_p#IV--p(nEe2o`CIVx7$?2lNz+o~lYC%K-zi`4!XA~k=sXszu_%~DCl@L)r9CTi zmi)n)sv4YU2$)qVIA)EG&gJ3xo8!ycs*09o9)YM?=Ji*_ z=4Gl4jstIs{E{EYDctXrbD@H^dI7if>cJJn`~^#J+A6gZNNPX6pu>4djuSsurKH2E zDh(bkQgv1GV_3pbY6S+uQi;1E9TKxNISGYVm)GIi3?p}J{ZC!2i0glf5h5f;OU6G2hTYoKvjHs65nSK<5BTiA*i z?`1+nmv5aIDWCvSPOYow>xi8KdG`7Nku~YlOsYZd28%$wN70v{#T=}{ z!b-9I<)3CPXLVyG#wlfg91!Pb;#7u%DUyRu0--1xcnwdOBF7}rBMI&R1|?0vAej1$ zaddQwYr!Mu$0Ms2(TM!A65QwDon@3b78|WW+RuceR?o*5kZhxzeby--VsJ~=sgy!? zth7$v@u#3Wq}pgCh;umnC|a%;_`L@__(r~nQTSqgjEL)hER4v3EZE?5*kA#*kI4Os zpnMLd=OVMQm|Y3Ij?UzaMc#gu#1AYP+$dbF5YKgTUTAY5^IqWNv2tx7xJI5g17^A` zbB1cmUc8>gDk$O>&{+9i3J(3jVDah@RBs zAbM(9nN3c^v{rtT&z`PBB-*H%gSd9K4Fu<19A93Ik#gfK&VoHPkp}#MJmVpN(c!ui z2T^*kNV{48sqMYR8O}g?e~P*?EWxK=>F{Qiz#tByGz^{&-oBnJz{!jBS zZ~nxF_-Aak`Io(Pjdt;p*CV+ibA*iu}V;dy?-Gjg9ot=Yx{LAr0?i7*Dc0yS3ctFSK zPWvv2hXX2nqy&`n<7u~z-|`9n9fr#r6~{OX=%X7vWa@I(ktL64D2L%_<9_tmxI%{$Cv8iST4hOziHiQa1PP%_F#Rrv_~vp;V|w6##7~Jt#x2P;sZlahM-7g z9ie;j8VGcNK%8ypAf>wNsr~k0&-+L`7+KMcD}s8 znqC^lkY$u-d!!q^%TXp$PS@T(4?Hco0+k#|V7FP?AX zRVuM?`fVE!s1`3!afv(#425iX(z zzmn^D#Q!boe|@fN{_%f{(7)$&eg62rjot0d9XtN-Q1DDaq*!YLdkWW>dfs99@J(Jhw_?OO60B%)wb6Y17omW8a{Sc1Qfx>8zAj zAnz5H1_zTme^HFVQDg{&Gveo@xNW@FiewoGlPx0h)&Hj8TL z3B)b7%MZucQMGEssD~K>>M_#dJoOI1j#P`T>$~qXdaeGTGGAjUgxswY^o^P2@yB`b zfFdfak4jEWO>>adgV5biFTA5TTFyuW07Z|BZ#d^xW?Yviv?fM_mEW5Ag3U13M|_f1vW6cs?^Zy5`{Vk~8IP$b0^^FhA688h}!73SNd z!EUuR?PlFL_i6m7g)a&$J6kugU4dyQj3&A=SDeh-xpP=a^YxaT zfP@s@_Kx_@jJa)4mEGRn@|t+i>~ckjq`0gcXAm&O&7MqVLwcgE6#P4Aq(uI=!z#rZ%J$2o9zd~n|g zOJS*C9Qg(njgfuZMo=71L6HR)9GkTYDIg0Uf_Rt}lp&~fioi(APo1br^)=4Gs$kB2 zkOi54#u-}ysJRX4_ljgim?9tVqn(iz#Yvq>Y#nNUyDds}?dj|M93^y~5iCz_#y2+Q zU@Yv-=O{13R-kY2)M`x9H5+8=t#VjCLdJa{z!)>iyrsSPFPi);{$}EvD@d(4@ACX| z8MCsxb}UR;sy>@Eq{-dvg^}h`kE&7=;Ej%?&z~Ii%f;Q?Qy&(f%1D-0h8#0_;xy4w zmISQ~TFsPb-)vyh^N9c1vEzSs7x6#yxaJ@Kb8&od^!m7+q+cUCzqsr3$N#KvZ0@X^ z@jqL@5*G14bGViifja_0Ib;RH<>7kRKTEHrrR(wym8y$Vc+iiBEY&*-{*oQEmsY*O z@TMPPW%#h)^W5OHl%*_XJf-uYT)p`ank;iq59R)ADuOb2x?UNfjRS;wa&9!`*J`Un zuZ3~mCNBxk8?6~y&6>QC8I$rBN$&}xh}0RD!iWKVeSG!v`O&rBB{k1tZ5%jyLSwJd z6VZtt5Yb0riln?4puk1hG6lh~guEDRW^`SEv4+5V|GC%6*Lpn*`ES?G|BCUS3;A#M z*PP@(VvQYUgjocCKcnmO%YQq&>zgmF`0tI4h5R>2UO@WqIT}ujyaz z#BNda$NMGDa1JuQ4#|34oZO&(^Q>+wZ^jpO>iG4W z(}SzyJohoev|#O*jiPP7uEBVHb$U4}AnhB5&ElSygDn0~hx_*I1eWtS~2GpLpvJ}O`*0JX;xw@?CxwF9!>LmYK@ z%=6eNDgmR8XG*PA0@KEJ8}~sP8h1#_*N%~l3A+e})^CuS{fM7>7`OKp496HIYNs5M zHXad!Ip$E*&mE%}7kVKOt?!r_c#?V0zIXI~Z1}}cgp=RQtAu`j3OqK%LW*HxDV5l9 zsvhYE-?6w_aazfUTB0KJsIGV-w38`@q1;=CDJ!p-2aRiCkg6z3ha<`kG_f-lEYTAk zlrUpgg)iVk@Wi31pJV^`yn|jZylx)p92!@0)fJi9LqLGy%6FU|n z03r_A^t%JCSU6@G*%T5$yVJoFK%I`8>Xbe)GO-E77Qja%LyCtdGQ__y9F`6`&Xp3e zx7anwzY79iPHPq@bN# z=lOvqW+YX31VH^GkDHai#lbm8M}kjbnx#1$@hX9#DA~u5KT^KVL)wkuXmg@X>UgtZ zpaV@*0^&8kP>u*2y%WrCgPpTz$fhjxJ^)$D0gFi}h8G1NgQQ`j9y%vM=g{)Gz~f5w zCsONFD+eQ+a5SG+rpPDsbxh|ZGe7L7qNcuhZbKG+XYHGWYvkeE%f9TI`AaI>hJMfOEmVbS!csh386@Gv!aBhg)t8mE;m;? zHmTG&hd{@2Z=O`XDCD@Y#F4yh;+!=bD#0{A&&3Tl(nwkqSFS7t$7zqEjd}tsV6e8m zNlaz59d$HCBOXQ}I%k4TFMjaDs33}5AG`R*W8X|=_%4{%YMvM)#%NjRWL{gOj1Dt~ zmm5AEU(~H0H=W!rS-wmp4CZJdR$AqSkgT@dZdbkip3=TFRG&n{nari8=sVj)FqL^& zI0M5WQziEIKt+%N-qUBKevd&n(ivZGx2#z_*DUDZo(?$J++;J5e+l{%|qm{N!3 z<1$oA-PNfqb_{$T#Dd~5Jk7=gS-KEo`3Y(mk#mvg zlq*nkd3oxBtL99CNw5HN^b`83QHNN$#RNPJ+$Eqh7CcywEy~AJ-WA6bZVA?8NUoD| zr-q&jt|8^`Hbqdd4bEhU4m|NLq!|t)^FIVcyItJwQLrFmf}`&aitY{*JPFZfF^@d3 zgy(#E(CwV``XYVTbkcWCUc0G|OvTyPf7YxqD&OKBUZ!f4rc2NvbDFYLzM6>>guvv^YN`KZ?z`$_ zm=qehXT|)PfrVUcGmy@bb?os7!P|c9XCf%@eO(~%%f$by9Woh(~t$^U-Cn$WvXTAX!oAyMV9O5l)TXca$03$gf$PPTQkwJ=(R)pZweF^-nKsM@1zGiE<5kW49k zLPpGrR{_rv`&7zAYsO@_=U7C7>R_dL7?1-fdqf|!IU3Kf>C=vhHhnf%{O&5;Ud63v zjV1F~Gc=d`?4hp#c7>#hV9lb)RGltz_5oTUP<+S9MI2k*3y(S7rN~ueG~X}mNxRBz z+g!0l86YPy$$^}Ap{6#|73+h%qElf%ig=wnF&~vnY~X)8M1l=FUx%~buR*RMG7^=b z?4IJmP0$(kJs%T(2vyTLB^=1UtUl#v@n=}YebFX^?GV1uNG%?(lo_i8CJXfKnlaIp zJ4=CFC0b{!z3uU@L{T=WpI={F4FGEuek5}uz2+VnUiYqn%U?U1zThWQ+Po9o{X^e! z&C)aj+NvpM+1@Lvz_o`Ov|euWH~z}+ARaqLAF2m?Wzfd;HTD7qM@6ly&tjojam=B> z%x&FdtJ5B&n(E^atodeuQuPg4kJ<)p;GS)X(8{3)C1`(T&pQe*fgqFL0CSJ1C@{xY zi_!>2jx0FpeuO)zF`Zlz@R}q8@UR?llTk;Q3Nq3^75l%}EZqMA-X+QGDYq}k-Z=C$ z+zg~-udaFABSd3WPK^`cNcjz5LOuVLRgik4ACN25RtD2T#OAZIpr!HO~@>+sm6HFdBG%D#({fD zn0~-Mk!bcLXENGbC+NYP*KK_~@ zxx;*5atyYSag(0k>!qSh35G6kW`~+0ZZyDLTM8U}oI&Q=Xdau zp8$OzD{qP$E8f3*x?m?&!~~FshY46K?JVw)zfyeJwB^Aj$$^cQHif2|sQlJw4|qq| z6Ga^i&$X3GmSgxM|Hkw|H}&MS0SjcYxuYdx!T_5tVsvQe`}AL@`n}Kpb*t6;;*SDE z98q{&l7|L}UaI}3hf<6+Y#+6nzMv#ROWEMt{N_O&<8$@a_J-2N{S)Kb0iA;jR+Y**{&FoWBkWld8(YfSa`^gOc9@0jK9WwbdGHt*+u) zhwHj@*e_8(tm3}!7m5p27B7dP}@8H6m*AN z?#_!iaJfBabAImu6LV3WnuS8NP>5!s5EZeFuUro*VQyplh6%r{o&AP5JzVzk$U4<{ zdXlCb70q|CPBb%Rrp5*{u@d8IW8pMjIE|m9;wL^>cx@M6+h?Q)m$2!&`fu58yYSu4 zPd6{v{1@)q&+oo{4yK4)Ip}nJ7*&w)Q_7^|HmYRzhO=_03-l-D{B!WB+sP=iF#H9~ z=SE>F3@L=@oQPSeMd-5Qu&=7?yU%tswH(CzMgrn?NBq_4xayx(sfc9-)Q_25N z%FtS28<^$)<<3rF{SW+G%m2T*ySe%D58lo^5b%xX|DWRg#}VxK1N+8xvD-? z6n9t>H6zG=P&1)EzG9@j#~&mc2|EM{Nc5u(3hNMLdJ>knY_-2!WET_}z0)>hh09DL zeek337HyGvz4zsxg6y0)By)-9pycd zA-}AXO@^P>%tFa!TozDQa@xfPrx-5@ge<$Dm_w8drkVzz8!uIxC70LPw!_lMFfXn& zQfh#%uf@!*{l@?Lo$p{eF4un3HniV)+=$HkFVnzE0(ymNXRZUWo0nG?Cucw9^AQan zZh~ZggWbs|pknsNn1dpSb*6!p?yH^%u^ePpS!|wJ6=5d&&;vd{8jJz&iE2i+XGICr z8K9n%q7S8s87hpj^4yZod*pu#ABGPc&qyTK*Dg{tv{F&yp3x7y*VeK*iv&2g!6UIe zKeBDhj+UEtpAZ^=wY|+VXqGoT^Sc`ijUFis3l9XyF`vt4T?wxz|E^1mOiOj`~hG&=q#Vr z1A5b=H_<544e~ORXiyG5hVd{p7I_KrqyM<=z2V6@=s2^45C65y70652PC2|uX+O&7 z3nOd8uZR@5A4WbC1+d;JrQ-C+=8H*Xa^Hm6Q2BBl;sW<62g^N6okX;uFDeOH8xbP{ zHaJF#3cKdhM!xsEvR-`9$lL;X^%KM9_(tQQgoa`7UEk zQ{cRk29dFVC_&!e5_l(PS6iDFxJ?Tjjdc9}ZPniy7~V>@29DV2?hOug5BXZt5ZOj` zsoG51bfGf0C0md^ldtCHNQ35F%;i9E6Sh_HEHf#Oj9^@i)&k%|ktnRRGuRa41uPp8 zDKh9=fj?pplrzpPb1z5EL-fT9Fj9li?Sz(z|40Kf(|1}XOZOD*nNsyTmvH!AQtd@B zK<7)(NxiR+FE0;%IxbpXcyY4ZFBU=Bsxc;P{H3#LE*-n!!o|Xc1XWz&BITb%JPc3V z)8>Q?I;ymcq-%bZf@rX|vA(&vzPr8o=j%>~O$GP!U$JagN-iLghbIYmP9~?Q;P)7> zX1*5C;ZUd|=Piun4tYzVNS6TE{rkG;(sJ1f<IQ=A{>&$TAW9ZJdoZdXg#oHCf>>Ax%Tna#_lc!Z|42xcx+BAWVG2o zZc#&7M+&C^%ISVUpYAQN<0{q6a{o_pnOY zLPymL)`W{sVtJk{c;MKP1C+*J#xKq2C`=9vTX@9v^ngr@rn>)RCIgIOelSLf<$$(3 zU5p6fd1I%KxD#mNP_*E}9QMIe`oLl>c=kGB`oPs{42D+kc$iq0s93gWD7_D9sMA|t z_~Vj8Em~ttgyt_H&9}WvH7<(weeF9IbE-mOLDT777y*O3kK3GT&Y_M4C z`D4(b9FEPKIPMoqHu=5}EJa$p=t~AqrxOWW?82!^lr3HyLqONf3;7~8Of^@UqUJ+4 zq^*!d-|G&@lpW{r@OZZX13kjy4WMS-4x?VDhuL`@_DP&FbL_f_kiHCc%(H}}lp$1X z{ye8_m-(i!O{z%7hM|2N3**^1<8};79W_S_=mht4wqdOK_ECb;`qzPBOo$-eJthLT;(qF_M0T^x|(@K*mX4G`42cElT0nK2`?p_f}|*t8ACL^ zzB>8O<0Eu%{mK)FlbWJvmliC&4=Gb$P+u`&=E8#LoCV8LYgF>*wd4V;n>*l@9?F&$YtH)m@GY?0*T)x~HwS+| zIs2(|aCr6h;I#AVxM267Z{)5|lMSm+U3^AAoDeMXR;SE~PL)^X2vIp!#b_ii!;2RB zo-59xVCgOw*|zcGgmw1zwQ&^LvaaJ5z-^a#y{Kh1Y+B+^aDzQhS@_j`v>X6RH#g1j zZRQA2;9CLQVp~v5AvLxH)kdN025cMX1K$w4fcFq~licMxz~e|-!IUd@nwdGu@XWCk z68UL@rZ9(l(i|>Ms^s+d3fc;=oDqH8LgD5iPN~$UkUyD3DqT*Qrm8;9-?6fGw$-4&e^T zro+j_rQPB6hCjy1i8J6^16o2L7Srcx+uPV_t*@`+|E!N6Kqg7yg@2QWFclEeSckUT zJ7*bCc#NerAq^O87!1a|q9PF*Bh~ z435s7cbHm#Su7cz#r6z|>-6N+@zu%e;~a|1z(8+?w`^B+0~=XZEJv#;Ln`A`Z4k~O zNNWUMB|@dL$mbzRs?E6=Gm=Pse!RO~#gA8}8eNP3HC_8th%dqalJ$NHVP5!O=~J~s zba>LC8WA}K4Q*=yYJ`M6u@{tfyePtF$Byt};B=&`UeY~Xuph78UAtWks$^Ju(HBL;vyo{M3f6FiqiN*}qDL+E^U!ld*$KH#TcDXm~KjAKg|( zW9pe=cK$u3I(AL6wiNV{-;hd1l0x4e5zOZ`Ol4wo$U?d{O9`i z=I-MB=RB^(`On4q&#&|RC-eKT*F($%0y=4DaIBI#l8MaQ!}DGLhMK4cJeK~4Zm$ixMZcYTavtp)1$RD*O5BWb zlBfRh{2NRL1neF|_J^W0e4nBSl`~GtTH&Xh;-rTUxIuue8gla_0j^zk4_BF&0&?*? zXoFISGIjlonnUA0k69$Ap|72o>%~Y;H$#Ac#2?av!UmX-gur0EiI!voUXx;v-d=*l ziJ2_vpoUhWm+7O_13>+4csEQ49V>L`Lv{gu2J9{3NCF_I2k{n0iLpQ)pLK!R^gKC1$YcVNgjHJXHiaiKmgyfnVa0BF+Fd_6g(Na7vnh`cId|} zF)SSyaL0WSiQ#ifWd>Sc68iL0oL$DmnVz(+vAljmqda-2E~#;XoJ2>p;5C>?ma&ti zs2$b(%vl!x`vySy{X>9tfuLLwi_`>kYCx}2EO+`@h7AHohmEv@hc%qhYZo#yqzCGE z#PYKVW2T(-J+r#H#tHnK7wAdfbiN?2gjf$d(yDL)l70RG`f!RlMJdDNN8_lj>=*G; zWL|y`&mas3oEV8i~0|EtN>wIewF*gTHGTbcB>BT zO!z z+{rCV>L|H8bN3-Y{*l5~Ey6(;3XhXqVLKxy3Z7(;XZ8b5w5%KLk!0H5Auw;+17)1E zvKt}=!lti%#*Y*zcKzU1*jJF{qnj>_dy=J)$4QmM+9&)+ac%*$*mE!}KuAThY>pqh z)KSvo`!l{t(kps}ab@Yfq=R(wG<%rYF|=?SR(~$7FqxJo1_0%eIef8WnbKVYOc?R) zM8qlw2$V)4HX7sHrxXbdzFO*hJSgC?oQOtH4l^+;0DTM}#f(oWXr%~|KqLN<~ zc+BbLQX3^+ZaXDjwhtzEsK8Jrhip4k6k(;FIZ}1i*igC4TtL;%^BSVXo`aUhGb?XZ zwU3uDINOb?eKh2Nv5ltNR+r4}MMF*T9y<1V8X3e&lv?0L>j zWIS4WX;X|7`qygwZm+f1{(2fmcc)?WVMc9~+ke;BH+HtPT#)M<8@ub9fACIc)F18o z#_hk;wEt@vv&k+>>8??Nw0r`K>v>%BnEwj@&+g9VmYM%^dv}rlb1v7y|FiJ_e4YNE znifo%6IA0~SoXEhn?yedXj0WisfZTy%*wq$tPM_#a9PRTvi4gjd-S_;K!nob$fq8Qfq-elRK>sP^YAy=FMePBji)*@0g(^=6BVp% zQLdpJXqO-ELYPLO`PH|VT5`JDUMW96SYu>?5#-SA_mcK73Mro!iotnq!c3<3(m!Pf zB%e!GIci@8 zOK>^<1x#z{3!f3|cGMHhSNF{2!%-%G{QM@kU#MPA&hthcuwa(Xq(mZLmbrk(=yblx z8NRWp9t)X*AzV8V;#>fG4h6$OWQHV<@$)|VxjJF6r^3)^@K;YXsJJ=P$iQzi&Be;vFICX zX2>CRR9GrFXA3Mg*X@7|RNNa9NAm=eifHxdn^~Z`D9rZsGytkp8)oQ!1Ch7o85url zgF_)7CvSKohC#6b-s{5y0V40cD!prQ4#GyzK7v1tF_ExLfgWKd0xV<(8aL`q5pV+3 zYk+xT7JgonjYGsHh#iVlmL|x`Z?6tlFb_XU_dtUhAekXf*EcAtf{A%b@kn>NTDA=5 zHtt(^zbDl&DgXcJLRDosml!Lhn5JYI8<@Eer?iMX z&0>;j@@7l=;-{DsRbYvQ;xDjRlKj3VBb^!lG}xA(xpaO-CRbHhM^|4B`+ZF6C{$+) zU-)s`pnG!#^AMV{1>DZ{=z<40xRxUfiz)210o+m{X$*c315&Or5%*k{mx{(Irl+rG zcO9?%QW@as6=JHT!rK}bk>0ac;b&FqX>8;9sFc8sextWH%@R@0%20QBQovU03%XOM zOw{!2!+dQKKl(LA|3ANr@n3qlN7eby^_OP-&y9_Z?S=n;9@oPEzwrNmo&JBpoCRo- zTRRVa`oZbDpCojEAAFy;|Nnr!dF6jHy!iP8htK})05z-9SFkMDNH1vRMm48?{#J<# zpB?l}+2KGE8I?1g!sg-~fQ}-nI`B2gq;he<&P!r>LTp-9iIk4H-A#?()O`;>-M594 z-y532iv%H82}`xI5ccHcNc2N-$&&PB+O1OM6&080#)Pitnjoju$tz6olYdqr322=f zXnUZ9qYFynk+lo+gojBD3?Jj4T0Rrim+|jRu!`ahc0TZ{7QX;OY$n=O{KIi@no(nsIb+~1g*%5 zfHT$E3Ycdd3=Qd1lc|&-O5rQxxFmTGOR=nUgjtb{&>gy1$8*Ch`%OEk?3dW}+WIcb zko_8dIn4T078uwYKZee1S88K&5*1ABY1`g-Hb_@(LTfMO=Y#UG?s-LH8?P6eb}xz= zFsabFKi8o_LOGtNPlq?F&i#VC0jk}AS6@X6ky|oPDS%rsIatK8QH){XLM#(nhW#vD z?Skl;@8fz9*s?5IMR8I|5+_rzHL&+YS8PHo>>V?xnp?0l&7xZF*KFuqT+VBX_TNq?jKT~^WW@Y`Te~}( zX8yme?UxJt?>w%B{dZyiotgcYj#i{8qatoBWxLV=J-EOJXf2d)ONG~bn{R<^uW}hF z*b}E_~ZzBn$&*-%jv})ezlHi@G76ik=varOt*JltW5@cM$asc`7>5 zd9AIZpdVz;CpiX-I#<~1R7V{?xg6dUex*Gt#CZ|I<=GJzD(D=~ozF5_%MXWHe2dxj zgnFfa$)EB>bZL$aWS#&impfZ#?Q2LSP-U9*GXcR9>N@Wjoh92VJmhFjz~=dL?x5 z8uv@;LbO}TyE?d!qX1Kg-STh|eil;g>>GUN7v-Hxme@|hNaDN1e=w%}C`@r1eZwAV z-9CxvPkAz@6Xdk))@#r#9)=I+cuJ89>0BX&a8yCZe@f!v zfd7mi*&mVx(GR0Rc2|LNmH1H_X38CEhyD30NOJe_Fg1Vvh$#qd^vLHbCdGsa2aG;Z z(i@$h5 zTm#WxEE*P_%hKn_af(KK3zMC=SjStq?_eC(Z9t86519krv{?qfYfDoW47@?^_}sL^ zy0@%I;M}fcTbjyZ2}*+m$^!%{LJ*c!@z?=S6RJy|>uvIf;%AirE#7m9&^C68J5$n6 ztBY}Xkp z%+t3MXB4WF6lvL(@e*4~xn8C0809bOq4>tDg^^8% zT4>tIDd=@b z80diH74`h2*E#-#`P*?B(;;uIc^0Y3lXU=N?tVZj%Mk$+1A_8h2pGG*Rx;t~2;xy- zH0eR$%fW$Oe7C8}M9p8ci6Xp=?fbJl}>1hR>oImj_Pr$sVSxZWeH> zz}M^Xgy<=WGCasZ?Ipn~fhDdMVwE=BSu_6whCJhXf-M$g{zUHyg?ozDFwT$~QmBvP z#7TDAX_6zX$@W0yKOXM`+8>mvY5MR5P;C7sK#~liB&J}+Fv4C$5_PjXa$zj2vFizF zaid~rV?(ooMvHm%c<1#^U^70WKV7ys6JjuqUQ7+yZg_R@Ee76^PPdVdXBe%PAB71X zMd}1|+O)64F*SK}8V5D`3T%<}&$ zQJ@v^pPTC&*7^V4twsFjT&{)wztI1`PW^xK{QsXdoxfoaC^O8{JN51O^m?`Dpd>ec zp|o`Xa+Urn>dN%^Ii$awUq))cgPyNy?Kl3)@6%4`e0_L&bdf9VR$gaHw<&WwbKamQ zUE&F^lmwes@uf`eEI0$Hx@7tBGiQEi;3U`Au%Uwt{U~&7N(yHag)9{fE0@$tU6GHT zL<4Q_=lBsL5OJU2r2z;ye#sKjV_)&U4uW_7t{>k}#~-nd1DbWNEPq4mOvhG}amZio8gg7xFpqn^eQM8YAqy<-8p=u=8Tt1lCN{!>T}+{z_;2?T?oSwSjmlZXpNr5=bP-3%c- z>GeDWoVO>q5D(s*d`UU8pLvSx$&)^or^e>iDNX@nTc>s$)+y%}KaE_H&nbIk^>#b! zB#tFw*BHnygIWjgm4byp|K|`fqLCyFb2|n3f&mFLYm=Y#PO6h_@t*1u4Xr&@QsneY z@y?c;Zcf5Y_2l}~S}!hWUlxDDOJ)WeE0-$E`fPa(VV$)Xd;#B>X=1RcNI_HK1Y6J6 z*1Wi$-!(=1KPqj`I?q-0f7f?5bo>A2%bnfLh5dgX*TVk4u>XIZ_W$|i|5dVF%-d(c zqr>HIXEZuJDT-{Thegrttc`-ubb442=x#nMP7sVQl=&0rWaUU9X&alcrEI_4WOb%y z;|!p^u72$be0}XV%7K6azivBCQGJ|10CT+M*sh3iU9IU<%`0C&7Q& zT2M<}AA>lrCZ*$vvIjBnVcdRr-7w0P&9E%rrSnIrj*-i&gRA4t+q26z$A>4cPL7Yf z=DLA2ypDoff7s8k?9)&b{Gq>bqZ&q-gHl&;-yFjpboP_i+;Bj<661xB2SJ1~1_qkm zhCH5FmR7dDq|vo5TEgTLP4 z=eV6-Un`Do_Wc+lNNHEaB4W6hWjbSyy(yXf5ZWG>%(yrO=HXJztjyX0zTMf$@eUjMu#NtIrm7KRFw5 z1=nkA#2DYR2&m7Kx2txDF-Tg1nC8x2P>R4PKfvRiR4_I7@zUZ0x*BYkA)sbWVUMLH z;sGoK3r9jU-s`=+cuts`)!o;FBgkj38E((E*I)`uB9zNmS)8C~CV=f|^KE12si`SQ(^H-hA)HRmocw zojF2Elg7=q3HkV_gIv`ayY`mH>2V_GbjSPwEK4IA_F+2Uw)HU$($(C_nLEDBXbp=$ z#}hR6_6+uhS0@**5m8&SXb&ldxe=6jKK=;d-UOJVArSTI)C<ra0I|s}CbRSSCw;CJdgexP$TvsYs2@%Lzh_&XeKLXc~c!=W)UWGeQmaaVHiA+%IQlrd}CD+But^v;OicRnS^CbV+P!i zswaU4+)+2{Nq45=Ot{1;)ZW2zz6tcu2E0C7IE96bJ%`jby*P^kf$(|8Tr6xdU&}Sk z`VT_+8Lj^J*2d1R>Hk^Z-rQZ-f97#5>^}?p&%*vQ@%c}+R`n#HD866)o|G{D5M=<& zLjN4>S9&=`x>ZyTksj8pw@B}n)Lf+JC8ZAOd2#tg$7Ahes(fBphSB{-@$pvvPVouX zynw^3Dqo2D5OuX6J0lGp6mf)?nnyoRj?6|aNY#4YfppMHU)=^C~Z(NJij*~XAxv}#D{J+%*^4zS~h-tjal$PuZuIge#-TA65w0`$LpwH2us%W zHP1zs z1QRVi3^FAbn%K~5qdR<~bD0NO_cOfG{A$S7@xL3T?b73S$(yXg+L zUs9!@^bhK;xU z5D}#`?)7AKIHwE+w4rDJBUhB6~i3 z(LHGCF%WguREpJw2u8h91mh=>q;P|{3ZpO!{eJjQd@rTk>84kb{E!0gupqsD;G>;C z3Yg>}IwkXm7~K#DpxWNyFu{{eFsZ>OpVDmSl4x2CK(g45e|MJzchr;XYjGmxAplK) z3|@FPhMbpdAXI6LE=!>#0ztWjtT*$Eo7vv^a}JT;HDTaSv1w+_D}mgqmg!^<%RbCBz4U-e-N%o=MnssW^2Z} zUo$$a!?JW!yj=8EkwR9-dc8EVG}6ga$>KG&bh6YZwU|X|x@ox_@T!!h@N&yj^tt6D zT*;SC%>=QvTG&!sP#3ew_)Ax^!f&wVWissYAh8&w0drpf8W<+9J4q0NZQI(ud}ZDO z9bQGu#=+*t74i;p5CsXR6XbpW{r2}Sohx3*+tSYV#((O^J_~RY z9FlC(d=wT0Wmtv?#D-Nv4C3u{upL$O!As(#fcNNfoqU^97l-WDlL)77U1_{=bVT#& zAT(CtAg4Xko#3FC>Sb>!*?0-gvc9F?rylPwt7u==-w+CUb=O>6OQ2z@Op!WnSJGfD ztLB-#+*vWjl9QVIBTwVwI3-MhpSC_V*{NYi)P}nqGgq5KyV!GzZxbgXDwrJ6U00i0 z;yTee6Q8zTG8rnj9ep#KaHmn4*ruU@nYoo{)O<>cLI7Rv78IG5{PqMzXle*#W0-PO zf7BkJr<;1v^8&0}9_l(=DDzOHxv&7hM9N0iJ5*jUY;?eDBMh@eHj~u42We9q9AbC7$<=@XW&Y@?0i{b9>BeNdii}gh>-5Dw4~8 z>bZ&vlND|5tmn=8$wYaOj~ubBHbt?)2+-ZS&>Ro z6Xz?!>o)9XZgnBY(*x!j z_R|&+FN?|&fYYZa^FJ9hCroCwT3uxzSQ2#nUP<0GX}%>pebcnk(&RHX<>XCftj@Uk zn?_-Il9Hy7=^XF65;@5>h)~(t9kZ{TiK|-ZBCAtAJ&wdqVl$sXZYP(VFpKm~IqBQ6 zY-4Ws3ZPm$eu=5Zl_b%MRGVq;!-YuUK-EH|sGkC{j#2CDOM>VKdmVQx9g&^PbvIQi zE5hx&@FS67V(v(aZ3FW@OMCocqy2U^+AsSo+!W7$iD>DNqSCXcn)!b=UaoJxH1q## zZY=Wu&E;C0|5}{?TAcry|M{sOIkP~3$e(*mP;3FNqd;|bIuchtVTq0CJzoFngfj)|K-(0C_)#3-$a zhavuuQ&~8SORg-Z7;7a5WXu>n4>OW0RWQDA`cUUrsq;KkO!%O=984tw$jEDk^?vlj zK5=zAk|oHKZ90D55fLoL9G!-)iDy~bYMmL}*^~`~K>NvuAR9nOF^i2Ja;7{(;kmDs zgm{b}g6K<~80!32Ix!#71mSSQ3eg`m?yz*?2p^}4&(Vd@AowQt(Fhs;$u&|{s`OKB~@6E;e>vPg= zI-urU9-m!}SiBbG)*fZ7B$t?rGX|cp1_SOn zR%4&IWN2Hc@w)eU&b=T^Y&=PM&HBzIzZLZQ==iL#v~5YZdtr|VO9-|z?!20@uVVhS znz}`^q^9vJMvAPu%T|TON6Mq$`~4yX3G{edBCm0tMSRrh1<<2pycqLp_9*Wh<;_%{ zpi#Sos-YO4Ylc};f_&hvS=Ldm^u*1IRIHb=qs;EA5kK$XLU_425nd-iD_191e+Qa5 zJUzHLKtihKM|e%Zlkjr$CA=<=PhWLdzn}+~or6m^SEBA0FL7nJ!wty!IlXUBq#WWo zG=Fw})ls|jcj}Of-&Ax6Gas-7!K`QYQ6a*Mum%?NOC>UDuxbKThEjlDm7SE2Te1|q zT zE}Z8X`u}A|DJ-s8T~mzz=nm5iB$h-RvXyCoE9yUO!~dD_AM1WWIPneF0H8#8)83&j!PFS2c*tfI^ z8rh!3Xwb?BD!cqgh5Wy{y}fJ3f3I)uZZG8jd0Y$mee2j)z_OPfVhJ0$*)L@TX zdX71s@f;Wo#B5S1v3+g4JlkSZT>FjvF`vZSlOj}wQZKg)o!_ooT7W8dvi!Hcz%DdC zR%R-m5fclPRJATc9TGWI_O*k4zY3)e`Oj|hxu1)-FkKg$ZVLcO z>%m`513Xnv1+7Vyrv|j3B|VmvJLP~lS&!P@@h2Z-jlf*P4PNBr3|3ET5QEI!Ka6|9 z0g!Z?4Gw=cEYrYrD9Gi#GbqTw>a+0KsksIxrD+w)thdQg6AjLLle8t7F%zP2AT!z` z`{?-=yU)1$<3u@9MB`IWky4Z)WoKQsiShHM#kV3y%Eo%0Bt`p_5~k2&7M6dbWlF*O zb4-Bl%mk{6ceRPQ$qPt(xe!w(6}j5Mqn^v-AtMtg*E9)jv`qRsqMMR0Ej{A zu{m-Uc~1nw9BEIu@G*m|Cl0Y@cG<;PVF04r7d8XYy@eZ@=;h@2{=jCN@L<@Uz<58Jyh{t07$+W)uBL#80E`m0g!xXM7vB>(PGlh4OL zJkim9t{zP+aMB9r)fkI9q{~eFZC7u`@sFyFYhGU>N2>eL0T$+uscW|1Xqs1vY}4ma zm)bg@1{lj($l%XET%ct=N#ELB@I z47Y!b<31fADyyfOpL_{5waJi^Ws|sWkvH<{LxKf*k_T#^b$Kl>qmpdO+2eB>iD22H zo>&gWdPU%=) z)!Me&xn<-h_;P^z*a(%dMk>w33NC?Ckc1W)u^ABcUAf0ht;U3fbW};c)g7y8Uh-UD*fv=nrx@)xROriS|gk})1 z6M0Agr3(~@Zo^Oi^_>$M?C7zuCIUC$5`x!{(QI&oL0xhurBTxWUDii&u?5R5k100* z;PH_kKtlQ+>rk*izvF*?XBHL0D~Oyf1aWDKe;pKHi9JNZcSc>k3M>qf3r~QBlZ@%^ z_dZjUn7^VQM0c27AoT`1>HUaP?;de@>wKAsFDeS475Cv)xWh3XLE_>X2i zkOClTA2`-CvV2%=IiV@-^RH!G0U?Ub8OK*!&iY@%#xyo7>!f%f;r*on_9%Bp`@bc&VAYoh2Iuo|xN&C_ zDdMg^0UEXK74qA#C}@fYyH)LW#?iQjzPx9s3sZAM>tNL`=&J9Yz6Pguc3XpLyWX8@ z?4IXV_NI1}+YMejN^L5n)9sVvWOsR=zTL3sDaQZuyJ4CR11$)+D*yB5#)c99yRo&g zzKH*w$F+$6UBv%>o$U66J(EO{NelUt?z%>*xcFN-QM{AhxPAQ zkKexFIGSa0=e!UHZa(!LLG(V{2z#mzC=0W`voF{_%J%*6pSb4fHQoc(a&B@5g(Dd! zNryTe?Mn{D(G6UjsCmeS-2DKG_q)JZI-uKT6dN*)AOWqDC%lQHyaiYI0P6{3^VCTy z@lfz5vVeHQ^b72M)zTpFq7B$i-IG=hNMjw#3 zzvlSx4l#{m;{6=-2jXuQ5~CKi$Lp5&NX-st^o5+)_wl0{jDr@aFmt8s6!cItQzvVM zQ%HzLY5A@z)7|CqFUJ>{B&{;D9gF-}-Zdug zEMpK%`cTUYOPsy^>8ImM+=RX6R%y@3W|#jF|6KCj%@w8 zynvPz_Vyur*}CCKP$_4fBQ|f+<4qc_8TLV)@BpjxrXz#3IeY%j@43u%IP_+OWw2mc zRs^Xav2#A3AE>Zxc1TXF*p@~~>dKHmRPwF#pp{asGhn04VOGP@Dp0}PtlVIl`&4la zp!-zws-l3z&fz=3DLW^3j@nkqnTj3ixSV2#7e_qzs+>G00NnS?BMo?2?u=1v|9DOA z)DYv^(*<^klF|g6c^B*?oJt2a?I$c5r@O@x&xpYe_Pi0;*7P!o7UU(6;~Jq;F82&) zYQ@##s@T-5eKU2tF-zMz=^|4)ww12|L4#vtTUCtZL<9nq+K^K@vFF*PU`!S{>&k*^ zH=_A2NSzoT!8;l-Q}q}h?yf8P++|J}^N5QEYMKXK*n1-Q8uq2{qcksoc@;b*~^xZ>ZMy)=> zEUATpqE3aJ=D4z&h?5~Sc^J;4eR@B9@S{~!npnLLb`X<)%S33=JcG`x5N34d^^b>d zR<~c~LTMJqeNe!H?3P4Q)VkJgx&v04tp!uj#V{fRg+a861xZkmzP?VA)l)xGG0N1@>A6-wQg$su4LFv+yD4{FBmNRiW_uVHSK@hI^h8{3=PcKpZYBK~6@*CPI75&!XZ#(zwZ|E;EcBp@4! z?O$z&OYS1*@Y-Yr z(DPEA&nV6Ilq#g-4qiWq=0?G(Vt^Bwvh`%u7UA(j35?|52X36_9lG@9zI@rQqfk;)r=EiVzZdZDCzi(M zR2*?4?zO zGeRaqy#`1{{lCqfUF-bc#`>cE$6T(3{dZyi{d(-bb3f4s_`Se2Qg9AWJhsp4h@f=F zG(E;O+3sx~%{e$cgw3#Xaq`p8SLH`@j)Gf%*v~|;87amx_+}XCVKtXm2WLkI7f1H- z98f``o}cuz&MCnz2S=|@&g_FY2fYVegzj(N9ACUTzj%Fcc6i*mIDT_}aRm~lePre> z4}zn$9&#`&nGpwU#BTvPe>mmH0sIaj786jvmPUPjP`3oGRCi zOIY=|iOT@P%z?$gjnfsE7pVZ};u@>=F_8o?p5{#)_sg7ozupJLRS-#{1K17+V4R8$ zjA->ya!S11efh)I>^w0O9k;2Ie2imc&qI`!xANop`Dtz^fo&Z7R0 zB#QA0emN6IdxmS-DbS3wm~}w2N9Ztmb}0R_%@~Vo%xn7jA7$YkX$GpW|7^V6 z-Zkt$o9i1J3;WMJu7&+)VgLDh>_49+qvOFHkiZ=csw5qw@>ZdQB9k#HFM}{L@Spmz zugcWZ+pVX_{|h4A22WM~|K0U1ga2=B?Yvy@|9M;s{=eY=3;sVI|98jky7mC~o5fK9 zMW-nWA_U(2e13M^!Ay~_P7V){B085>2Uo{aj20+tg55fHgc0NeLBKSYS`go!Pc~e=TeX$A9&>L_|QH{$jkqm!(QiasL-Z9a34%jw^tr`#)^_o7Va7&CQLS z#r{8!Yq9??_W!SE|9{T;|IK2bs%xGfol$Qc0aYO3tM`5din@=7sr%;PFpF<*ufhlI zF+bL&fe!j1Ozo5TsvCfa@;~yQ4yh`uv+*DO6muuK0bhXVLIq9Ln^!oo+Kt4I(lE2` zzYZfzcz2!vnUUmUz43G4!!vD+r@R8!Ne}R?^(B5(e-c0q34W4 z5n^!y)Spzms0oJVtA(Zk%KRsi&?_}$#imOy@|}0IW0||_yFYAxzdg(945E{wgChi0 zq&k9>*a~51o;b@DUwmeQEB%ZtFH4_eo)@6g12nXn^LRaq^)Y!jNHgdeFCp_ptec2~?l7U;t7ZqRZxO?QMi>OoZOO1_^luAh3FN}t zCnT0fAWWFqO3+HO3Tc!Ir+CDCbU33oJ8{>EEBv`OS9prRLf-&tcoWVn4&azbaF z-?E;jZHk`fbZ&i`uq1LE53Acb@-TD+J2AVEE5TSCDer{jGhwznM@WVtRI#4qe9_UD zT)djFH;zJ)mh8s*gLt1pMoTG9upt*p5tljru(R9GCu)=Ts8bzS@d^~KRjRSA$ryY@ zFs-Sc#St^8Mj=cxkv!&=(Dw4NqA1ngs@tXC#j+R9XiBw?Ek4FX8=#`asVD-@zSRW^ z(3OU%LyS^qZ?vAXR@6TCxYXVubb#>dkX2wlOtC|cbfGdAu$h4Z90LbqwbAVm*1QSa zQ%EvVCeN;G!M3#SQ(+2a*|yT6{7P-aNPKLzNMs{ZKKrsv$RI(+rAsi8hv`bZJJe{# zP3fWx%Q+Xc1&kUgsOn$EvxSgB+mFb?B8sy3sQ+gym#g++oRD@O^THmifgC%aEO*CS zLfTMO93XN#47n2v%~JC$7Mdkb%qNu%}%OC zTv!B+M%s%yvgU2yzX|#vWa}xQ8J#`=S4h1Ei2)fEfrnRv23up4)ZCES%Nk&5%+bDv zmYlvnP|DN6yI6ss!wOW7r!loJIg~57YpzR#3o|Y%Ve{<%V%cH)DWffYaly7V7C%Za@5Ph?KXle#0( z;9~4yDFE0LQeGj?f1tg|JLv1uBjZP6C-d_%1US_U;5{!wE|?6;-Dq|*H$~_zw0_6J z`bipeAge>mZ>%|SK&zM;*4W78=r$0U1WBNwivyIA@g#-lfjY0Lw1*DD?uVf+@ZS#m zw=i!=XJkSYh;<@U`_eJiX`z(iOhqgW4od>vhIivHZ3M#XeO8)oVPv3&QZ(czVkbx` zqc&&lhAM_z3pW>FB5vfWFoLirQBGO+c>xhKYKz;@Ll3R zOwF9sK4pO4Fu2A04}Z^-9U$?8@fMddELMD&GAlf7JkDZ~3U@9p7*KSl&eh-FR5+aFWQig4VDhOR0{I@E%vn~yJ32l+`Q`ZH??uHV3-%UD)ESBF zYu0z&`#1&F{^p5`jf_3(EuWqr9-Maa_TBX-r`kT-?TIT1Dkw5*_>) zoad*f$A{#wesg|uc2!iU^79QrsrfUA!@^pag_Nci#FP`I7Q{5>P_2wqlJFZ zG(b9Y5TbYo=a6}Ni2+NG3$I+m=EJt9^7$FNu&0eOv$ChyzIrvabG%%R0mdg79JQj6 zL1}hnNf2*IsiDdl5o#X&KI^yCG(Zf>lA*!4yW~`yqBzoKZc3+Yf){&`s;QcdRRq#D z$$8eNq~iMHPop+gYX1@oQcYOb(DWVb7t)Xk=JJ4e^WmUm}9l zN0E*N6-O$oS6HvI;@v_FUdVuJFMfNm>l&!)X)RhE+7~Xd2(Qbl^NZuoNfCYgMUK`17Uws#R=02%yg zOZ|AU-Z5vTpE6gXOm@#Y!hOtK=;)KL!yX4-uQ`c$l0;bluCJY_m;kj!SaV@GigPnH zCeG&FaQb)TNJM}Q#azULY&9M-(d(YY97O-Vf%IXb9(c05S~ei|i5r$J<=kVk#*l|} zL^y%17^lVbr42>d)t!!YReBJE;em2 zgzIaRA%SB9=?(jtOau=@>JAx0GyCZTNY;E-f(>82zCJsb3Lt2Dmsg#`w^!${UQwOO zNLo$Zn}k4=It;bTw|+mh`|Msdj&aZuV)+v=v>lm;E~~kORlG{Y5^>dA76qhkt_rI} zJ1>2x^Ul&eie?8x+9u$npKFW4t8AOX3%N-d3&!hbe8(6zH@65?YS8z)wsfjqKzcA} zmK9ML{fjpqyy}qx4#33?@p=fOVdgBUtX{9#TXhCl2;=5yW&>n{a1GHSZ@ds6rKM5T zOO{F9-EKKwuoIc6S3&N5ajjT)*jT3Cz0EPZr`@u)?mZdmTw4q)%oC%J$O^?V#^XSD z#aPTZqWV47Vd+y=Bz@GHz|zSpp16{M>YXdt1Ija5>7COvS{Z%Y8nJKkr)?iApd`~| zP)a?nq8>_b4U#G8DHZsr*Pr~u6=QUysoGI#XxpobM#~3d28t=e*>p9nS*&WT&Kmf1 zu0%Hhl%TZs>T_dMvoh@|rzs}u|Muwpcbwx`QT+?Lo3PZyaLwP9H@VAjw0QrG%^x;5 zx3~2=OaoEZ9?v*Qo6d9fFz|7+Ko?h37+ykvW~NQe$Lg^U(Ps~mIy!0`_6Ge6ai|eL z5E`C$2)eQ9E|g8D!<$uK41mQ5rQ#GF2sRJ?pkB-Ht~62s)q?~zw((WNn<@Snj&Rto zQCOReH{AGng-w-vFiuUZgrcaPL!q=?*y4#M-?%h-}|Yz!A3QS zf}Uf&QYX(}EsZT#dRrhm;5C*2t;lW~)2ZxFr5ICBD$7LyCtE8%h){!3Ri6&X2T~?X zY*t7-HF{#n6lz@h#D_Nu@XHGtQXKi%Np9;T(zOHA#}kiB$GWAqsKsSZd@iHj;J99_ zot>R^2|w2nVAd@q_}Z~Z@`Jn+o{-sf^vOIW%+C&~k-d9bP}>;A8edkTh;%u%6}2;t z_{%*{2^=18-oCFrZ%R`Y-C|*(dxfW`$Lr}2^(n0M)Ha`5B_wlC4YV3FHSl`v-YIRV z9WrAIPYpi%-D_(sVh1u9qJMFjdwOQ*30iutPNzL93rcl5PAZ)vPYI*S75LK~K@404`Dy1SH?S+Ry-E!zCWF;uC=4h-DNFX&w;tIBT zdv;P$8B5}O81Y0WhUek+$!SsO41EWx1a(Y%`nQwQ^Vi2$#}@?=E8@$1Aetgt*nKs4 zgmp}f8Bto5p(1=MDzPCuZO0?Xdq@|1Y(%4PyVd2XY1>8UCd-rOW=o2Zs0TCT3Evh! zQpH1qkf30p_WD#?927Y`r^v|sEcgU$4iDnKd`5h3^bF&2==?O}jqZWg55Z1y`qe!3 zDo>vAAn}peBu`RPI8u2=Pc&eSc-%u{YPYqzC=)~)IWqE;&LKtvV8BGkrV@iH$Sv;c z@gOXko+t9aYIp+-B0##n3GQGuUlL7yH%XSjCE0? z;<3e?I%XLMiR`&@pv~MuQf0am z>Yo^6sOAV8Z(}in#EJvMay0Rv2=RS56TVX4Eu9|T#h$JpxECB3oA1h|2p z$V@T(8!fcjEbO$gvGM3_Z2%W$V60H~x*_apFEzC#%$~}X#>0@#@Wqd~vM|B!!!V+J zd{4HMRhVRY0cNN`?V5~)VTK8O@I=+{CcmM5*;J4K`#^Yie-kJ7aoiK%4U?O6WjuWW z2B4)}!m{I-Lf1!!R0oL4uTY!g0iQnoQ=Q2UZ+hX!P_3uO4OvF)yw5VTYajQ+4*@2- z3qkvcLg-H8@Sw3m*@9W54JI_Em;PfI+yr`p#Af3^4jbd4#(@eIQ*3)JOr?}#=uN&4 zW2gW3$s27#wXYgKY_D%`joD$PM_L9T5IEwfMn|uC>L;2Q?H&5|PfEh)VHA>Fff=8Z z02*HF_It@%=HI1jOfp)-#Slkp4}KT{V`+bS=xZ@jG&w3=H{M>3Ic{Zu*0!K8?%Ap$ zxRz#H4AnuB<2P8YQLqLTlA5gpSDC}{8!A@_6vvO^uPqkxD>Hi)X7eH#dPc8jvnK-q zbuyM4y3iOTQZ(gepc~EhK#C3qqvH`k#!uUTl6To}>IJlKaRr6J#DiTN9-ninIH11yZ9MiX3lr(TQ#DW&9l2c3HOX zFmW#BpeKF7gZ%-vFFKj!8tOP0vnFmjrs6^iv2Hq3Ri!*PozsA(9tbp)EUu_)UvYC9 zQ>eZ_cWGsN9TFn7?26=1x~ZG;O7oKdGD$d30n}wxUfSNTn9Pb8N)$U1 z>}Dzp6$w@Nq($C4XR;)G_x(Ey#V~0Zrq#F^QV>epDE*=(Z+>rVwqnnMjvCeilf%x| zplmSinVFV}5Hz>sJiU42%nO#>Fm`KIHU|8!y&3Kq1)0Xf`fh!!JIX&9 z&fnSkW~)QPYxrhWT+X(;^@GMMx?8?=l$FV_Yko}_5dDLr^OY6GawAy{KX^U0`q`Mi zo~h^gYj+q=!OM#mF;j9Ompd`8xTjg~k}Ry2AMfs=*D4-hK(ung+wVQXkkd7P5UwF1 z!XN0a3qP$Vf$6_~?uSaV7n(*^i&!UN9KjW5alLaY7Jw#)fctaP{_rVC;?$<1L$$mt#Rt z&uqAeMLV{^W?wzGA*NH!KAz7HrX9BszVB_zn;e7t-j2K_QL^vt<~QH+mR~Y**H*VJ z&WXiYPjYjf?ogOA9pm623*!|nNv@Ek)wdxO+6@R+4ckGfy?`;9Vw*v^oq)c+zBURT znQHy>kvjQ6E8>XQOD!)QqS%$f02^=LTsFvE@`{a9N!jo3!;{udUNHTBRMBG>3c~^m>;p15ePq6y<3#C-EdW5Ce9a`^vE( zR~!w5=hWb2N2SiR@7_tM@86lmsl0At8$rDvXFL*yB@*(H&N$XZN9SzAUgTJ3FCfZe z^VI>EwJV(IRn52+W`xRSYBe)9)g=|p>Q*r$K(dnA^I@08ogcA|VqT>|FY7HX4s^8Y z-dmg7JL}t)zQ^XDSDqY*DkWOIM3r24nM7G>NL%@|=6hlKk6}bbT=v)ra~?a*=!$yI zb#j~ah%@L)i&%9A8hv7+sRU5S{`rx0-zfE|d{4QVto%=Sd;#XEpblJxW=F8WKfM!2FisjjmW3~RAx(D2}$6Sj*g3DxLws5 zqYy%qT>N*`us5 zE6VDdv_m_N4yoYPZcTQYw%mJ|i@=1AlKc>3Zb4G$w6~sTBz_k0F_n9LMXTBh&#y7?7L!L7>BD4dO5`=$4iBy^i?xN zQ1IK7M^Vss))uO0oc{M<-?l^}Dn5%uEI*|UNlM`|PH#Lrgf?DdGN(|YJAN!LEiWVj zYK;j3ptWXUhOR+{x-pbg1EZHi?g!Cb#%(~3nVn+-0Ht-;3^%-+mQ88zZ*-7&QEc|jcQ2(hySMv0$w z?Jml3DwYFfYFxj zLMMd!1UF=RPi3bDZjCV(tQ+SNm1a{72DM0Lo`+#S3(4R2vPu!RCYsYreky z<-5Kd0D;RMV};YS7(nDi-5BUJ9mG*jUz%u&D;rWv;bAaC)TMNVJ~Oc59Jc8U&=@hB zn$ofeb!MkxMwTkN*cxRvBrq{6BhQ2)YRVZIa~5(o!9FjT0r^@{ws;0^mdj85Ny@&f zAb=tnY93e2&+av0t6YUmaYguC)vF-3#8D8y>_=rafQqh|P3zm#Gpq_w=fJJF#L>OX z#(_O@7Xa%3S@9`Q=l4@7ephxNR$`^b!B~lvdZ*e-52lVdf|3KOcv&?9MmjhkE@#}F zxW+6LP=@2Fb!ybASn?<1doJ7F2%KzM6$1>^Iz#6x`;x=p!z|cQW^G1x>_jtYa^5vpPT&>12;;a@Zy8#niIIAa z-WVk+UIw+v7io*x*t)`Vhk@Nbu>Q!XdFywRIHiaU5yb{-+X4IDkf)1vP zR*c0Zb_23V2`i?aY^cmK%-C6_L}0GKIvYDB9wdJ&TaeV2HyohQbA!>lscmN^#!oLU zr@F~Ej40NT@_>p8?)0L*i9Vpb0;(YLaiE;l4K353X~X=jp?%QU^ETGm)$$rz9VvL! zczb!&_`T)XAMLD<^VRA`;p^{>n5QH_-*tfX36Yrz;%fY99|O_Q>WY6sHyX@<)c7;| zrE}L3VWL`q5SP%3P`O zrEkWeQ`TA?LS=7$eoDo%9!NVM?#k)2#;Zh>>PsV#;>J3Bz-V!Y{mE&Oe%Z7rrnL?+ zVwW7=;jsvj6Q4dEwFr@IDxLV2G3K#dG&#xTE=LAYqdE;vp(jkx8+mI=NT|U$#SZ;f zegyMdKBpQO>ZF`w`BTm_zteWG2@Q@TjVsFSGK{*0c(TQS%o=ZsRgjj)fQ`2!D;H^Y(Y6e z&RmN+!?(xDdb3&78wOpAA=EkNtZRVI&m6j~HY>^AVQbb1c^2WDdIP3PqdhHAY$}&g z!O~%xUL96msEmjvJ7I5hhHfilQXA5~IXOzl&&6;T#F?Mm1t`<%(y4Z5NXK}jDe#*k_AKZ__syAsu7yeggl=oMtaxQHAE1$whVMgYv&p}eU>p|4Cs zEe^uLM`}8wM&3t^;Cw*}#olvKl7@v`=Le{K?F1Jyzd0W+$+2UQEDTq(kTB~=6w8wl z%qoIMuqZ%Yv5Mf{*MU{s1rZkd$6i!}>CY&Dxuu-G;xWy%TnWtcJHf3C-D_fnZnIP> zhI$QyRvtCXj{u^?y3C9}W!YNsV-_|~@r2z;X2QB53A82-gHc*kvEgz@r_rb2OI#M93if)eZ-^9m^x3uOR!*C^Ts>B%Ex2J@8`^6 z&qLl<9?JgX`T6NsQT%e*PN4#P{V4tdmCal(v#qhAQsZokY=~K&eT5C>1X~Rir|#)g z`$Q@iJj_$6&q#KttUIipEK?CtT6TCKSSvq7JI=OmoFyA2PmMDZ%-58!X3806Se~R# z?UGTKMuH{gJP%WW2JJHU_5y?+2HQm9ku5%1S5m>ZK!p-DZ}GNnAk zJ(hq`5ur3Vxi}?7D7L+#sUx@}n3`QZ7pV+5U0BpK0Buv}C`e zf!X@E@kA{b+AO(R#psCAwG#Q!>xCtVwvng7DRxl&=Gi_j%R}mM7peC!%uX_}T>Fjx_4}FtlZw91U?Jz2K8au{ zO%d5ncy;hS06oyXG3yxTctS%H9+pDpD9lt?T0{Gif+w&)__08`jq+S^7CBSI432t? z-^61%?F5hB#~@LwiE^l>8<0>lg-LgfanD;edp-H7b7=#%K3|N>=|EfA5H{~- zN*NNHoes5fGra9|+7Esd-U6YmtStRuan0=#RK6;xe3el-D4T0+MXZSxu~xJq)@Vhb zrh1q74{3Ywq_=_bL%ZACf8e1+#=jdcw{~{^u(ADeeRp#gu8lveZ>?`{@BYDCp9cb9 zJMVG9h;K5VqQJV)XTf0kd!C-!Y6>)#~-v-Us_9+MDxAE@u~ zZH75O0ZI?6-_jPSB1`lR#;m@8iKip4ad7FKTsFKP4=ztGTL9zNldGT4-(GpY9$Z`; zoL!w9UwY>k-r@P#(aF`x`5F9r;-TT|g*-?vEwi8*4u#+L85uG_NyvrcaIw1CQ ztP%@KSQo|>-3@W4zr$RclrRaT)rT;pL&|921t|USA??Y)|{Y$(?Wc4P$u9iMnMFK>1xRH>nR#VWRodwDK{Y`cBo; zddtTVqM{i5QJ5CK@Ox`17XlJ%!dfOF>FP=_^=_ zLP(^K(O^p%z3XL7&0>JR_QU4(`sVJ&Uy|UqLwELHZtlGNVQ0Gq|NgMOzSH`D(tm`# z{g*%N?rwj-`~AlE8(W*Z@XhAx@mrZ{m19X9ISL|{vQZ{mCGz*>SeH|N4u<6s1j2lb z`1t8y5of@Nwp$qG82ZeKEGfdIQs55p5cE(@wc)*%LbPEBacD7O-(UNU|Mk0K-s;8O zA*!1!24$FpPJ7%i8w@k@8?m0fy*OoFtJfSk-XS_Ob?e)G&>sMe-UU2w|BaH)mWGfE z`TO?ASWQKb^|itpWEj=H6Dmy@xqIq&sZ6?3TfAO4lhq#vA*D@;XY|b# zDl{%pLw((Vs0;#GvffAUfIg9s(U~XQq`r|bpsCm3UEZUSI950;aV<^ADj#?-Eu89@(Ek1q1X-|hF3_AmW zl%Va49B2)aQaT{&F*vCklh2`8_Y`Da3dEGs-awz=RLPkyB0jd;SPMk2_Cm|DxYo-X z;F%%HX#&5F6`CKD*7q&EToqz2uMVz`tLwuYv6|ZA;3^Rpi((2*H zp8Rz30>R~D3tYKRoU8_~yir$)8KcqS1}#FM`E)jTb^y&C zxvSA!DXRh7qYblX&yjdvt;b?djarRGL$F$tMY)+5Wf7gkk}L|rDQl(lz_Spae09Yr zG7^r*MeM5Wg<($KDLRLng_%3{121g>Yq^Z`Zt1gAYqPdMYa6!Ql&x=!O}elXj5`Fq z(KkV7&%|~mxes&MV5FdE2^Bk(A}wI*{ITLw*n4|3!mI9vgx3@{CA_AvF{xn2+nls> z%tVi+)=Rv`JE&|C=j82dy4rEl-waP>Z>gP_rrm#Zq}9))Lfhva+k?xYIV(mfW2TBx z1V@GMkb`G^0K=BD>=spVY3ipi6yOdgnXcB4?5@cn%)%cg*o5i^n}Py4D^Hli5Hm7D zRT$HAd8tShq8GNvb+{b8R`jj3zL&Zj70nzs=}sE{(^-Nw580sX82%^9j**`@6|ITt zK;nY#4HIrF;=%n1H)T=o!(o)mK}{o^X&u8yaoZ%}nR4yR zum4dbLGo{6z!X71har`Ti_!D0SAPYx;yY~}HCg-tHo?;9p#wZ40*cI#AJ4%rS}@>l z0L-f=3_OD*_!!2+)K~~A0a1QlJjC#Z8_LM2rA~K7Uc^uO?v4GNr2|ot$fU(o6>x;4 ziGw+c)-oftlEutkm~=IZH>aeAn}V#O2&G0E8cPX6qUe+p>;a=pEld>;2eA0U{9B+x zgXDC11=BDR$+0Y^YOGTH5N5Cis(DhQ7^8Pn0dEnI?!t^sw&szgzYehEaFQ`$8JK{V z_>VNMW*YQwRTYb|7`!Wv&N56n4m=49{S1yg>BfJ4QdOUeDacxa%3Zeqk+&=j$SlPG zZO3A2yg>k}_Uk6_XDmKA9W5izh7M(J)6rwiejW3%2rQZOno9h~oj(Y>9UkChg@07U zf2?n8Zfu+JADg>di};UuT#NXRMf}Gs;y*fq9T0bJtheF+8W^zg+o#nez(k(G>VW;j zU;KT+o6>- zBpZJ42PqG<;%6|@wTm~0sW>N-7pFiT(GPDDA5%vGqd|F)$+Kw#g|&v@DcArz#mMio zkKVALEPPs5fo9)R?`nK)26eHoQ`i9>eEe<$m=n9j2MRY?pjYF7eR-0m!+_Uxmk$wh zY`DrTxOtZhy4sz5sE71Ew&?)OAF6JG27pQpSRU@AX{G|OUxAmz6zqBLj7QX;R3fz# zG8o2NdO@Y%mt24U-qMG?>Zec9Sc5;n55I5>zU&9(_Gt%lU$tWVMXFQYMpFs$>;MyO+b8$(l}wH)A%ht59F3K5RbQ{lx z+2w%8n??A3!Wl#elg!>YJ+Nl3x)U>DY&rHPU}}pg5HLq$Vhhrr2=7jYb^PFm{Wp{h z9FHPQS0ya~KGN)&Fvgm}0D*J{3Y0NsapIovnH;q<(_~}?Gcr0eTTIJznA>8BXb-14 z7fy!vbNmqC(Wj|0Is@nk2J*fiK8UYJH;UueoqO^5ND~HhGj_X3FXOfPHtJ3^;$bw& zm>H3d-#8=Anr%;$Z5#A8s-ts3WZx{2)!Kv>?5k$0-#leGx772f530!pop*i{_rvaV z?YxEHM-q~3C}Yu0Okg_faCc|G0F5+@=oz&-6OJ1o?dVT9SB;`@c1G7J7E_e>XgZ92 zv2^A$FHW{7@^nm<85%(A&!c{fe`JjDcNI)rib{L0sP+an;&@7VK(4QKH=uwoaC$bhWt6c_~M45h;+*&UggKbLWnuO^-QLu1nV%?KHP(oruRe z@UWod>P8oo>}+>BGQolo*K2n{zBQVioP3=Eh*>0Xs**?n@R4jXCXBIY#4Nlx;>5WN zb&lKz)pNC3VL^Z0kcEZ1V$r(3!bI;Rh%5KoP3y!ZmOLYiI6+DankYg zMkXD}G#PA-Ss$I*E~fsoO?@pUzF6vC_I%gaC}y}dj7%X1T};QS0~r~^J^``tIkM(9 zVK-dVIUY5hV*R*DyCdnYPtZo~+U$0c@%D}drKk|TC`uV)<5@70ube!b`_x;2IMv-r z0XVA75O(4{<8btCOy*0E`Vsm3!DTnmwNG&oOOo9{jJr1*xcIP-1vjHGuxrF>l?5CFxmWfI$;!MosM1eNxjPJe{8SsY?$-E z^Kxr*QU7Be*P{N@qW;q?>OWEK+sa}t*s(atJgtBnmL(mqnl9qjl2K2}c-&T=E-lq; zTU27@7Lrudh+#D`gyE#k3>%`Og|$1T+bHRxoyw*a4Rpfx)AI4A(;RDBXPAyqkx5aU z`Jc*1X;vSYW`iX|br!i8yKOV+V9}7vQZ`P%ap&+W(|C^C4=WK_0TN2nxJ|!t7ZR#d z`%T`D=r*oGfSCenx{a0&+?o1o-1e;mCj|p9O%F5u#$5=gP8l?AKg3D&g0VZZ5=^Zv z*HDYoY>eBi>&$Dxa4XL0&ZGw}B-A<3J#J^jNudH1I8TdBtu5DJi;q2y+bj=(E*POJ z_I+9{xyDy`US!-xtq{b5ftChvPQP*2*sFtj$L&W|v`qm{YR5y(yk9PKjTWLewJz2{ z)ohSc9~sjdKANfvhHN=OrqYIMaBkn=sQPI3G+;Ue2uIBRlB)}F>jH0$3sR^hwgxgS zh*~wai{SqbgLG=W)yu8T7&sQTO@nDcH;c7Rq4Q)ha2W@t2GpuGI_+LN8kijIsezNJ zz$z@bGX<2$Mzjh#(*&F^%4tGXOW@27?i2~asGT$IK5L+-*lmq>Orz6$Lo?RN!5xSu zcVyEY4>~vJ2pO`-%rjNsj=~`mVW^-PcVUo8S`vm5VI(TD2Tc{Yqw2sc#^A0hFqM{~ z+t_75ni^0et@*V3Y^N=sq=oJ<&0=_mFKD?}@!MP!9Sby>vJ^{Jk<{qQt!>b zy$K|ivIcEbj@88AK8}KqL4q!7=66Q>i8MFj(_fUQWL+7rA#S;pLb;YOYm#X(A#3Td zrU^LDb~R0?YCfyk!JU8#O~4%JSg^PaSXcj;(RY%u8(`H8C{qM06P!#Drjo*BR!}FH zdIKy2ISoi^4wXs9EiCMoa@6Z#jLuYH3i0yDe`3~(sX{;WlOzn1i*fmDAzW0hZm+_J z>4JqN7Q(jiG=0E8x)_)?RiKXS8nd9fp98-KYQt1vx-)XjqW7mU+v87A5uYmL*I^Vs z3?I%Dz|Jpze;8ch4n5T-aNYcr#KXaKp~jC>g*S=nSP0V~ji~~k{zP3Rew2pU^Z^rL zO%>v=eiGcr!!h^HN~k~jY0#S)AC=8axB+0WT{7$kIYoTB7>+r0-B2Sjt5lz<%O2CNmR$2za5qxF5VFtAqK6Zg93lgt*$pNl3 z+`8hWGH_<_a>)x0Fr}fu6)!o!IiqU}9y&g+h*qt9%>mLG{aNtP@wqFs(*4ZwacQ_> z#Y+xwwIlsT_@J_x8i0#ISX2kylyV!iAIEAF^rt;92DtW?oM##?32+_6e7=H&pW zMGBQX*W2U|#m}m68}XhiV#dZ!ac4^UX?4*ZJyQ6z1gCCjIs7zYD>xuQL(n zBh!N(&(MiLNGD&2+R)$$%xRu1r zEXLwzsj*k0LbcP1n{E@UM3JzL${X>cloIqcZ#FJBW)+@l#1r?ZRq;bwpR5~})ysOr z#x=J&shfC#!AQY;>GK+<8n;BE_aW#NHt1C8^X8e+!R*e+HiA0xnEM^n#q~w3C~x`_ zc0AA(Ty>GEdaC2TYx{OU!dvk7$`_m6Mku=D<^LEwkwV-nZ=*c_$NKul)~=cVV{3DL zk^f^J*9-5ppL_@smU#n{LA*JBjl2GaHFfc?W?Tx1CR99J3tZ{PO)55e~nw^7CacXnRt{C{J2bA7@8=W-SD ze{%;||7v!Cbg>1@VGDpaehQ)>@iT_D^eM{jvpDXzy`yvQ?EK0*hMxb+(mTdv-Yh@7OOAQspmk`cd8>RfYfR3~n|-j9sE8E;AUYpY&j)5l$&!Gk6%#fO$LZDE`F0 z>~scCT_mSY2Q35byD-ClzXM=h{G%I3w+Q%iFL&!IjnU`-<<`sX#r)6Xsy+YguxY!SrX#meW&c~>G4=nA?TwcU`EMRq zuiw56gMM!n)69E+_Ier575@-MtB+wXyWjIR*4GE078%^X%BynybIE0rHpsBUK4QzSun^2m*E`$piic zO{|N5H&=Q&VRVN{g4x)5Fj?I!PC(}jGMbny1pojSsRYLZZ%`k-vp7R+_!&{5-|u^a z7{-ayt9Rog1`WXAK|w{NQqs4GNEV=A)|gxm#eOm92LR6r=HCAZbm{eiTYuQk{wQu! zN3aPXd&COT!w{&~L!C9ikpLt;7lQ;{mJxE(TB(2e%M2QctS(8hMD zw{k{8TuyyJ1{)7N#1*1Z0W#VaafFz`YWp`S!GsSU{14D8z|u_`_hH4ffD+*j;w55j zE{QI*S#j^?ddmdVY_!{rl@&9od}F=6(Oz#LzE)Sc@xq+I)e$d_eBgD7G0X_l3;_{5 zU_cDCb2+#VqfZ|15O5H75+dWHqSreqdkOlw-G<&$Uk_j|{OCylkn_x^*o*uJBsqZ6 z!p!=}Yofcfjn3UCuM6Df2IoK_51>9=Bt#7yXcK|-yk*vY8(waIx4eR!g+|771Ar1o z==D`#?ep?N4dqKtVZ0WV`6L}aJow3z<7o&hB4NKBPrJyifNeP*MgAb}2XW+hggtTG z{ul<2XitJi@0a)rhc2%v9rSMd{$09+ce;H)O*_b6a23Ji+`y7)Eb)&ze64oq1H?$< zA$YjKdQR_`6o4JULg1CFWEd=|lZ#}_83gBJUKRjT$FLwixB9xGeTA>O_L6+JLkkJ} z(2@5VG(=!lz+0drA9}c!!iel^z%0_(;|`m&{m>(d;SasTpAXJ{Iz2xB2_CEf3}t_1 z$Xtc-(;gc{YY%=3^S35iXy0cK{iPJhryD@8Fo_W&=eGvH!rEofci@6?gzvZ6^Y$U# z!GMJ~bffY65|2_yhqt%kr)H3@;P%g;5+^3=7qSBOo$Yf^-UCcYIOvN{acTG-DM1K; z7RjFI9)AVV)=tu_(ekL5??vlD!~`g#ZEBZ;kgx1}%Oqv3rs3VP0DwFX=B=B7EFt+s bdkJrM;3v{l2)pd3Ms8N^dze@%d0^bci|{u5 literal 0 HcmV?d00001 diff --git a/packages/google-shopping-merchant-accounts/noxfile.py b/packages/google-shopping-merchant-accounts/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-shopping-merchant-accounts/noxfile.py +++ b/packages/google-shopping-merchant-accounts/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-shopping-merchant-accounts/scripts/decrypt-secrets.sh b/packages/google-shopping-merchant-accounts/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-shopping-merchant-accounts/scripts/decrypt-secrets.sh +++ b/packages/google-shopping-merchant-accounts/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-accounts/setup.py b/packages/google-shopping-merchant-accounts/setup.py index cd289e2d1c81..f6975541a5ec 100644 --- a/packages/google-shopping-merchant-accounts/setup.py +++ b/packages/google-shopping-merchant-accounts/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-shopping-type >= 0.1.6, <1.0.0dev", ] @@ -85,6 +86,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-shopping-merchant-accounts/testing/constraints-3.13.txt b/packages/google-shopping-merchant-accounts/testing/constraints-3.13.txt new file mode 100644 index 000000000000..4cae520d02b2 --- /dev/null +++ b/packages/google-shopping-merchant-accounts/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-shopping-type diff --git a/packages/google-shopping-merchant-conversions/.flake8 b/packages/google-shopping-merchant-conversions/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-shopping-merchant-conversions/.flake8 +++ b/packages/google-shopping-merchant-conversions/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-conversions/CONTRIBUTING.rst b/packages/google-shopping-merchant-conversions/CONTRIBUTING.rst index ccaf61f0d4b8..2661d0b9207b 100644 --- a/packages/google-shopping-merchant-conversions/CONTRIBUTING.rst +++ b/packages/google-shopping-merchant-conversions/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-shopping-merchant-conversions/MANIFEST.in b/packages/google-shopping-merchant-conversions/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-shopping-merchant-conversions/MANIFEST.in +++ b/packages/google-shopping-merchant-conversions/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-conversions/docs/conf.py b/packages/google-shopping-merchant-conversions/docs/conf.py index d84a411224fe..79e5fb1f56cc 100644 --- a/packages/google-shopping-merchant-conversions/docs/conf.py +++ b/packages/google-shopping-merchant-conversions/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-conversions/google/shopping/merchant_conversions_v1beta/services/conversion_sources_service/transports/rest.py b/packages/google-shopping-merchant-conversions/google/shopping/merchant_conversions_v1beta/services/conversion_sources_service/transports/rest.py index 196fc300bdf6..0aeab813fb6a 100644 --- a/packages/google-shopping-merchant-conversions/google/shopping/merchant_conversions_v1beta/services/conversion_sources_service/transports/rest.py +++ b/packages/google-shopping-merchant-conversions/google/shopping/merchant_conversions_v1beta/services/conversion_sources_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-conversions/noxfile.py b/packages/google-shopping-merchant-conversions/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-shopping-merchant-conversions/noxfile.py +++ b/packages/google-shopping-merchant-conversions/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-shopping-merchant-conversions/scripts/decrypt-secrets.sh b/packages/google-shopping-merchant-conversions/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-shopping-merchant-conversions/scripts/decrypt-secrets.sh +++ b/packages/google-shopping-merchant-conversions/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-conversions/setup.py b/packages/google-shopping-merchant-conversions/setup.py index 77e80b0f6063..799a7f935672 100644 --- a/packages/google-shopping-merchant-conversions/setup.py +++ b/packages/google-shopping-merchant-conversions/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] extras = {} @@ -84,6 +85,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-shopping-merchant-conversions/testing/constraints-3.13.txt b/packages/google-shopping-merchant-conversions/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ed7f9aed2559 --- /dev/null +++ b/packages/google-shopping-merchant-conversions/testing/constraints-3.13.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/packages/google-shopping-merchant-datasources/.flake8 b/packages/google-shopping-merchant-datasources/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-shopping-merchant-datasources/.flake8 +++ b/packages/google-shopping-merchant-datasources/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-datasources/CONTRIBUTING.rst b/packages/google-shopping-merchant-datasources/CONTRIBUTING.rst index d0d396fddf2d..e0504329b598 100644 --- a/packages/google-shopping-merchant-datasources/CONTRIBUTING.rst +++ b/packages/google-shopping-merchant-datasources/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-shopping-merchant-datasources/MANIFEST.in b/packages/google-shopping-merchant-datasources/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-shopping-merchant-datasources/MANIFEST.in +++ b/packages/google-shopping-merchant-datasources/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-datasources/docs/conf.py b/packages/google-shopping-merchant-datasources/docs/conf.py index 98c379590d16..d1801cca20bb 100644 --- a/packages/google-shopping-merchant-datasources/docs/conf.py +++ b/packages/google-shopping-merchant-datasources/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-datasources/google/shopping/merchant_datasources_v1beta/services/data_sources_service/transports/rest.py b/packages/google-shopping-merchant-datasources/google/shopping/merchant_datasources_v1beta/services/data_sources_service/transports/rest.py index e4de94262023..e864db17089a 100644 --- a/packages/google-shopping-merchant-datasources/google/shopping/merchant_datasources_v1beta/services/data_sources_service/transports/rest.py +++ b/packages/google-shopping-merchant-datasources/google/shopping/merchant_datasources_v1beta/services/data_sources_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-datasources/google/shopping/merchant_datasources_v1beta/services/file_uploads_service/transports/rest.py b/packages/google-shopping-merchant-datasources/google/shopping/merchant_datasources_v1beta/services/file_uploads_service/transports/rest.py index 4ad41fab303c..e54b65f178a1 100644 --- a/packages/google-shopping-merchant-datasources/google/shopping/merchant_datasources_v1beta/services/file_uploads_service/transports/rest.py +++ b/packages/google-shopping-merchant-datasources/google/shopping/merchant_datasources_v1beta/services/file_uploads_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-datasources/noxfile.py b/packages/google-shopping-merchant-datasources/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-shopping-merchant-datasources/noxfile.py +++ b/packages/google-shopping-merchant-datasources/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-shopping-merchant-datasources/scripts/decrypt-secrets.sh b/packages/google-shopping-merchant-datasources/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-shopping-merchant-datasources/scripts/decrypt-secrets.sh +++ b/packages/google-shopping-merchant-datasources/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-datasources/setup.py b/packages/google-shopping-merchant-datasources/setup.py index 7ac5bf511e28..46c6d7285a32 100644 --- a/packages/google-shopping-merchant-datasources/setup.py +++ b/packages/google-shopping-merchant-datasources/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] extras = {} @@ -84,6 +85,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-shopping-merchant-datasources/testing/constraints-3.13.txt b/packages/google-shopping-merchant-datasources/testing/constraints-3.13.txt new file mode 100644 index 000000000000..ed7f9aed2559 --- /dev/null +++ b/packages/google-shopping-merchant-datasources/testing/constraints-3.13.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/packages/google-shopping-merchant-inventories/.flake8 b/packages/google-shopping-merchant-inventories/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-shopping-merchant-inventories/.flake8 +++ b/packages/google-shopping-merchant-inventories/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-inventories/CONTRIBUTING.rst b/packages/google-shopping-merchant-inventories/CONTRIBUTING.rst index ae148622b21c..23fb3de6cbad 100644 --- a/packages/google-shopping-merchant-inventories/CONTRIBUTING.rst +++ b/packages/google-shopping-merchant-inventories/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-shopping-merchant-inventories/MANIFEST.in b/packages/google-shopping-merchant-inventories/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-shopping-merchant-inventories/MANIFEST.in +++ b/packages/google-shopping-merchant-inventories/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-inventories/docs/conf.py b/packages/google-shopping-merchant-inventories/docs/conf.py index 974f8826fcee..fab0a2d15422 100644 --- a/packages/google-shopping-merchant-inventories/docs/conf.py +++ b/packages/google-shopping-merchant-inventories/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-inventories/google/shopping/merchant_inventories_v1beta/services/local_inventory_service/transports/rest.py b/packages/google-shopping-merchant-inventories/google/shopping/merchant_inventories_v1beta/services/local_inventory_service/transports/rest.py index 7a17a0203e3c..ec939a04a0c4 100644 --- a/packages/google-shopping-merchant-inventories/google/shopping/merchant_inventories_v1beta/services/local_inventory_service/transports/rest.py +++ b/packages/google-shopping-merchant-inventories/google/shopping/merchant_inventories_v1beta/services/local_inventory_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-inventories/google/shopping/merchant_inventories_v1beta/services/regional_inventory_service/transports/rest.py b/packages/google-shopping-merchant-inventories/google/shopping/merchant_inventories_v1beta/services/regional_inventory_service/transports/rest.py index e1cbde0e8436..9c4f8f69ed40 100644 --- a/packages/google-shopping-merchant-inventories/google/shopping/merchant_inventories_v1beta/services/regional_inventory_service/transports/rest.py +++ b/packages/google-shopping-merchant-inventories/google/shopping/merchant_inventories_v1beta/services/regional_inventory_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-inventories/noxfile.py b/packages/google-shopping-merchant-inventories/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-shopping-merchant-inventories/noxfile.py +++ b/packages/google-shopping-merchant-inventories/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-shopping-merchant-inventories/scripts/decrypt-secrets.sh b/packages/google-shopping-merchant-inventories/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-shopping-merchant-inventories/scripts/decrypt-secrets.sh +++ b/packages/google-shopping-merchant-inventories/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-inventories/setup.py b/packages/google-shopping-merchant-inventories/setup.py index 417f532a2718..071f7c82c900 100644 --- a/packages/google-shopping-merchant-inventories/setup.py +++ b/packages/google-shopping-merchant-inventories/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-shopping-type >= 0.1.6, <1.0.0dev", ] @@ -85,6 +86,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-shopping-merchant-inventories/testing/constraints-3.13.txt b/packages/google-shopping-merchant-inventories/testing/constraints-3.13.txt new file mode 100644 index 000000000000..4cae520d02b2 --- /dev/null +++ b/packages/google-shopping-merchant-inventories/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-shopping-type diff --git a/packages/google-shopping-merchant-lfp/.flake8 b/packages/google-shopping-merchant-lfp/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-shopping-merchant-lfp/.flake8 +++ b/packages/google-shopping-merchant-lfp/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-lfp/CONTRIBUTING.rst b/packages/google-shopping-merchant-lfp/CONTRIBUTING.rst index c63661c0ea9d..98de2d3f49f2 100644 --- a/packages/google-shopping-merchant-lfp/CONTRIBUTING.rst +++ b/packages/google-shopping-merchant-lfp/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-shopping-merchant-lfp/MANIFEST.in b/packages/google-shopping-merchant-lfp/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-shopping-merchant-lfp/MANIFEST.in +++ b/packages/google-shopping-merchant-lfp/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-lfp/docs/conf.py b/packages/google-shopping-merchant-lfp/docs/conf.py index 6cb89ff13afe..967d922a48ad 100644 --- a/packages/google-shopping-merchant-lfp/docs/conf.py +++ b/packages/google-shopping-merchant-lfp/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_inventory_service/transports/rest.py b/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_inventory_service/transports/rest.py index 14ac9ea2bc33..f123a2fa4f5e 100644 --- a/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_inventory_service/transports/rest.py +++ b/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_inventory_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_sale_service/transports/rest.py b/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_sale_service/transports/rest.py index f01a9cf78957..e0078cda11d2 100644 --- a/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_sale_service/transports/rest.py +++ b/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_sale_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_store_service/transports/rest.py b/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_store_service/transports/rest.py index 63c289cfdd69..7a07da90e2c7 100644 --- a/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_store_service/transports/rest.py +++ b/packages/google-shopping-merchant-lfp/google/shopping/merchant_lfp_v1beta/services/lfp_store_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-lfp/noxfile.py b/packages/google-shopping-merchant-lfp/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-shopping-merchant-lfp/noxfile.py +++ b/packages/google-shopping-merchant-lfp/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-shopping-merchant-lfp/scripts/decrypt-secrets.sh b/packages/google-shopping-merchant-lfp/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-shopping-merchant-lfp/scripts/decrypt-secrets.sh +++ b/packages/google-shopping-merchant-lfp/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-lfp/setup.py b/packages/google-shopping-merchant-lfp/setup.py index fd3d3bf22fe6..bab3f71948f1 100644 --- a/packages/google-shopping-merchant-lfp/setup.py +++ b/packages/google-shopping-merchant-lfp/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-shopping-type >= 0.1.6, <1.0.0dev", ] @@ -85,6 +86,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-shopping-merchant-lfp/testing/constraints-3.13.txt b/packages/google-shopping-merchant-lfp/testing/constraints-3.13.txt new file mode 100644 index 000000000000..4cae520d02b2 --- /dev/null +++ b/packages/google-shopping-merchant-lfp/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-shopping-type diff --git a/packages/google-shopping-merchant-notifications/.flake8 b/packages/google-shopping-merchant-notifications/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-shopping-merchant-notifications/.flake8 +++ b/packages/google-shopping-merchant-notifications/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-notifications/CONTRIBUTING.rst b/packages/google-shopping-merchant-notifications/CONTRIBUTING.rst index c979593e3d94..03423bb986f3 100644 --- a/packages/google-shopping-merchant-notifications/CONTRIBUTING.rst +++ b/packages/google-shopping-merchant-notifications/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-shopping-merchant-notifications/MANIFEST.in b/packages/google-shopping-merchant-notifications/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-shopping-merchant-notifications/MANIFEST.in +++ b/packages/google-shopping-merchant-notifications/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-notifications/docs/conf.py b/packages/google-shopping-merchant-notifications/docs/conf.py index 04fcad0f4ed3..94a9bbceea5b 100644 --- a/packages/google-shopping-merchant-notifications/docs/conf.py +++ b/packages/google-shopping-merchant-notifications/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-notifications/google/shopping/merchant_notifications_v1beta/services/notifications_api_service/transports/rest.py b/packages/google-shopping-merchant-notifications/google/shopping/merchant_notifications_v1beta/services/notifications_api_service/transports/rest.py index 61128c9b493e..7c61a8e38280 100644 --- a/packages/google-shopping-merchant-notifications/google/shopping/merchant_notifications_v1beta/services/notifications_api_service/transports/rest.py +++ b/packages/google-shopping-merchant-notifications/google/shopping/merchant_notifications_v1beta/services/notifications_api_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-notifications/noxfile.py b/packages/google-shopping-merchant-notifications/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-shopping-merchant-notifications/noxfile.py +++ b/packages/google-shopping-merchant-notifications/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-shopping-merchant-notifications/scripts/decrypt-secrets.sh b/packages/google-shopping-merchant-notifications/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-shopping-merchant-notifications/scripts/decrypt-secrets.sh +++ b/packages/google-shopping-merchant-notifications/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-notifications/setup.py b/packages/google-shopping-merchant-notifications/setup.py index c86790568d0e..ae89691aa7d0 100644 --- a/packages/google-shopping-merchant-notifications/setup.py +++ b/packages/google-shopping-merchant-notifications/setup.py @@ -48,6 +48,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-shopping-type >= 0.1.6, <1.0.0dev", ] @@ -87,6 +88,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-shopping-merchant-notifications/testing/constraints-3.13.txt b/packages/google-shopping-merchant-notifications/testing/constraints-3.13.txt new file mode 100644 index 000000000000..4cae520d02b2 --- /dev/null +++ b/packages/google-shopping-merchant-notifications/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-shopping-type diff --git a/packages/google-shopping-merchant-products/.flake8 b/packages/google-shopping-merchant-products/.flake8 index 87f6e408c47d..32986c79287a 100644 --- a/packages/google-shopping-merchant-products/.flake8 +++ b/packages/google-shopping-merchant-products/.flake8 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-products/CONTRIBUTING.rst b/packages/google-shopping-merchant-products/CONTRIBUTING.rst index 9017c23d46ad..6792df47a481 100644 --- a/packages/google-shopping-merchant-products/CONTRIBUTING.rst +++ b/packages/google-shopping-merchant-products/CONTRIBUTING.rst @@ -22,7 +22,7 @@ In order to add a feature: documentation. - The feature must work fully on the following CPython versions: - 3.7, 3.8, 3.9, 3.10, 3.11 and 3.12 on both UNIX and Windows. + 3.7, 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows. - The feature must not add unnecessary dependencies (where "unnecessary" is of course subjective, but new dependencies should @@ -72,7 +72,7 @@ We use `nox `__ to instrument our tests. - To run a single unit test:: - $ nox -s unit-3.12 -- -k + $ nox -s unit-3.13 -- -k .. note:: @@ -143,12 +143,12 @@ Running System Tests $ nox -s system # Run a single system test - $ nox -s system-3.12 -- -k + $ nox -s system-3.13 -- -k .. note:: - System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11 and 3.12. + System tests are only configured to run under Python 3.8, 3.9, 3.10, 3.11, 3.12 and 3.13. For expediency, we do not run them in older versions of Python 3. This alone will not run the tests. You'll need to change some local @@ -227,6 +227,7 @@ We support: - `Python 3.10`_ - `Python 3.11`_ - `Python 3.12`_ +- `Python 3.13`_ .. _Python 3.7: https://docs.python.org/3.7/ .. _Python 3.8: https://docs.python.org/3.8/ @@ -234,6 +235,7 @@ We support: .. _Python 3.10: https://docs.python.org/3.10/ .. _Python 3.11: https://docs.python.org/3.11/ .. _Python 3.12: https://docs.python.org/3.12/ +.. _Python 3.13: https://docs.python.org/3.13/ Supported versions can be found in our ``noxfile.py`` `config`_. diff --git a/packages/google-shopping-merchant-products/MANIFEST.in b/packages/google-shopping-merchant-products/MANIFEST.in index e0a66705318e..d6814cd60037 100644 --- a/packages/google-shopping-merchant-products/MANIFEST.in +++ b/packages/google-shopping-merchant-products/MANIFEST.in @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-products/docs/conf.py b/packages/google-shopping-merchant-products/docs/conf.py index 54f7734b648e..0307610b0b6f 100644 --- a/packages/google-shopping-merchant-products/docs/conf.py +++ b/packages/google-shopping-merchant-products/docs/conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-products/google/shopping/merchant_products_v1beta/services/product_inputs_service/transports/rest.py b/packages/google-shopping-merchant-products/google/shopping/merchant_products_v1beta/services/product_inputs_service/transports/rest.py index 728fa2bcdb9f..d473a49ec5aa 100644 --- a/packages/google-shopping-merchant-products/google/shopping/merchant_products_v1beta/services/product_inputs_service/transports/rest.py +++ b/packages/google-shopping-merchant-products/google/shopping/merchant_products_v1beta/services/product_inputs_service/transports/rest.py @@ -42,7 +42,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-products/google/shopping/merchant_products_v1beta/services/products_service/transports/rest.py b/packages/google-shopping-merchant-products/google/shopping/merchant_products_v1beta/services/products_service/transports/rest.py index 99b50e2d557b..1f3b93a3bd8f 100644 --- a/packages/google-shopping-merchant-products/google/shopping/merchant_products_v1beta/services/products_service/transports/rest.py +++ b/packages/google-shopping-merchant-products/google/shopping/merchant_products_v1beta/services/products_service/transports/rest.py @@ -41,7 +41,7 @@ DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=BASE_DEFAULT_CLIENT_INFO.gapic_version, grpc_version=None, - rest_version=requests_version, + rest_version=f"requests@{requests_version}", ) diff --git a/packages/google-shopping-merchant-products/noxfile.py b/packages/google-shopping-merchant-products/noxfile.py index 67b7265f7586..a9ceef47133c 100644 --- a/packages/google-shopping-merchant-products/noxfile.py +++ b/packages/google-shopping-merchant-products/noxfile.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright 2023 Google LLC +# Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,7 +35,15 @@ DEFAULT_PYTHON_VERSION = "3.10" -UNIT_TEST_PYTHON_VERSIONS: List[str] = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] +UNIT_TEST_PYTHON_VERSIONS: List[str] = [ + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", +] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", "asyncmock", @@ -49,7 +57,7 @@ UNIT_TEST_EXTRAS: List[str] = [] UNIT_TEST_EXTRAS_BY_PYTHON: Dict[str, List[str]] = {} -SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12"] +SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", @@ -168,7 +176,7 @@ def install_unittest_dependencies(session, *constraints): def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") constraints_path = str( @@ -368,7 +376,7 @@ def docfx(session): ) -@nox.session(python="3.12") +@nox.session(python="3.13") @nox.parametrize( "protobuf_implementation", ["python", "upb", "cpp"], @@ -376,7 +384,7 @@ def docfx(session): def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" - if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12", "3.13"): session.skip("cpp implementation is not supported in python 3.11+") # Install all dependencies diff --git a/packages/google-shopping-merchant-products/scripts/decrypt-secrets.sh b/packages/google-shopping-merchant-products/scripts/decrypt-secrets.sh index 0018b421ddf8..120b0ddc4364 100755 --- a/packages/google-shopping-merchant-products/scripts/decrypt-secrets.sh +++ b/packages/google-shopping-merchant-products/scripts/decrypt-secrets.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2023 Google LLC All rights reserved. +# Copyright 2024 Google LLC All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/packages/google-shopping-merchant-products/setup.py b/packages/google-shopping-merchant-products/setup.py index 1af4ea8d2cf0..0c89d84d7782 100644 --- a/packages/google-shopping-merchant-products/setup.py +++ b/packages/google-shopping-merchant-products/setup.py @@ -46,6 +46,7 @@ # See https://github.com/googleapis/google-cloud-python/issues/12364 "google-auth >= 2.14.1, <3.0.0dev,!=2.24.0,!=2.25.0", "proto-plus >= 1.22.3, <2.0.0dev", + "proto-plus >= 1.25.0, <2.0.0dev; python_version >= '3.13'", "protobuf>=3.20.2,<6.0.0dev,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", "google-shopping-type >= 0.1.6, <1.0.0dev", ] @@ -85,6 +86,7 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Operating System :: OS Independent", "Topic :: Internet", ], diff --git a/packages/google-shopping-merchant-products/testing/constraints-3.13.txt b/packages/google-shopping-merchant-products/testing/constraints-3.13.txt new file mode 100644 index 000000000000..4cae520d02b2 --- /dev/null +++ b/packages/google-shopping-merchant-products/testing/constraints-3.13.txt @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf +google-shopping-type