From b800fda4bf6d360e3865352b36a4a9ef37c1b603 Mon Sep 17 00:00:00 2001 From: Rirusha <95986183+Rirusha@users.noreply.github.com> Date: Sun, 28 Jan 2024 07:49:56 +0800 Subject: [PATCH 001/854] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c9b7bb0..d2ad9e0 100644 --- a/README.md +++ b/README.md @@ -78,6 +78,7 @@ flatpak install flathub io.github.Rirusha.Cassette * ```meson``` * ```ninja``` * ```cmake``` +* ```blueprint-compiler``` * ```gcc``` * ```valac``` * ```pkg``` From 55c1ffd428c4f7d5f58c814e6c676a4f6375c0d3 Mon Sep 17 00:00:00 2001 From: Rirusha <95986183+Rirusha@users.noreply.github.com> Date: Sun, 4 Feb 2024 01:28:58 +0300 Subject: [PATCH 002/854] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d2ad9e0..2db50ef 100644 --- a/README.md +++ b/README.md @@ -93,14 +93,14 @@ ninja -C builddir install ## Полезные ссылки * Телеграм-канал с девлогами: https://t.me/CassetteGNOME_Devlog -* Чат в телеграме с обсуждением: https://t.me/CassetteGNOME_Discussion +* Чат с обсуждением новых фичей и проблем: https://t.me/CassetteGNOME_Discussion * Сообщить об ошибке: https://github.com/Rirusha/Cassette/issues ## Поддержка Вы можете поддержать несколькими способами: * Создать ишью с проблемой или предложением по улучшению; * Сделать pul request с фиксом или добавлением функционала; -* [Поддержать рублём](https://www.tinkoff.ru/cf/21GCxLuFuE9) (Просьба указывать в "Сообщении получателю" свой никнейм, иначе я не смогу добавить вас в соответствующий блок окна About. Тинькофф не пишет имя отправителя (это обман, не верьте этому)); +* [Поддержать рублём](https://www.tinkoff.ru/cf/21GCxLuFuE9) (Просьба указывать в "Сообщении получателю" свой никнейм, иначе я не смогу добавить вас в соответствующий блок окна About. Тинькофф не пишет имя отправителя, если перевод выполнен с карты другого банка); * Похвалить автора в телеграм-чате :3. ## Благодарность From 2a080118a39afb7a1d4644b9a70879c7c386f340 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Sun, 4 Feb 2024 04:30:14 +0300 Subject: [PATCH 003/854] Update README.md --- README.md | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/README.md b/README.md index 2db50ef..a7ec379 100644 --- a/README.md +++ b/README.md @@ -26,16 +26,6 @@ Screenshot

-## Последний релиз: 0.1.1 -* Добавлена новая авторизация через WebView; -* Исправлена ошибка при некорректном выводе кода ошибки при попытке открыть, например, закрытый или несуществующий плейлист; -* Исправлено появление предупреждение в терминал о невозможности прочитать файл страниц при условии, что страницы ещё не были созданы; -* Исправлена ошибка с некорректной записью в логи ошибки апи; -* Исправлена невозможность добавлять любимые треки других пользователей как страницу (всё же такой же плейлист, нет плейлистному расизму); -* Исправлена ошибка с появлением подкастов и книг в любимых треках; -* Исправлена некорректная работа переключения трека в очереди при различных состояниях повтора; -* Исправлена ошибка https://t.me/CassetteGNOME_Discussion/42. - ## План основных версий * [ ] 0.2: Моя волна * [ ] 0.3: Альбомы и исполнители From 6fd00ef0bcbd78068f777ed5584f9c40b501a424 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Tue, 6 Feb 2024 05:49:00 +0300 Subject: [PATCH 004/854] Update README.md --- README.md | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index a7ec379..b0975d4 100644 --- a/README.md +++ b/README.md @@ -90,8 +90,17 @@ ninja -C builddir install Вы можете поддержать несколькими способами: * Создать ишью с проблемой или предложением по улучшению; * Сделать pul request с фиксом или добавлением функционала; -* [Поддержать рублём](https://www.tinkoff.ru/cf/21GCxLuFuE9) (Просьба указывать в "Сообщении получателю" свой никнейм, иначе я не смогу добавить вас в соответствующий блок окна About. Тинькофф не пишет имя отправителя, если перевод выполнен с карты другого банка); -* Похвалить автора в телеграм-чате :3. +* Поддержать рублём (Просьба указывать в "Сообщении получателю" свой никнейм при отправлении через Тинькофф): +

+ + Tinkoff + +

+

+ + boosty.to + +

## Благодарность Спасибо [MarshalX](https://github.com/MarshalX). Библиотека [yandex-music-api](https://github.com/MarshalX/yandex-music-api) была использована в качестве документации к api. From 072f6ea9abbdf29237b83d494402a6ee9eb00643 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Tue, 6 Feb 2024 05:50:28 +0300 Subject: [PATCH 005/854] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b0975d4..d6994ab 100644 --- a/README.md +++ b/README.md @@ -89,7 +89,7 @@ ninja -C builddir install ## Поддержка Вы можете поддержать несколькими способами: * Создать ишью с проблемой или предложением по улучшению; -* Сделать pul request с фиксом или добавлением функционала; +* Отправить pull request с фиксом или добавлением функционала; * Поддержать рублём (Просьба указывать в "Сообщении получателю" свой никнейм при отправлении через Тинькофф):

From a0f8ce5805fabe4a38151772f522c157c90f3176 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sat, 17 Feb 2024 03:48:16 +0300 Subject: [PATCH 006/854] =?UTF-8?q?=D0=97=D0=B0=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=83=D1=81=D1=82=D0=B0=D1=80=D0=B5=D0=B2=D1=88?= =?UTF-8?q?=D0=B5=D0=B5=20=D0=BF=D0=BE=D0=BB=D0=B5=20app-id=20=D0=BD=D0=B0?= =?UTF-8?q?=20id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- io.github.Rirusha.Cassette.Devel.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.github.Rirusha.Cassette.Devel.json b/io.github.Rirusha.Cassette.Devel.json index ba9e81a..3726490 100644 --- a/io.github.Rirusha.Cassette.Devel.json +++ b/io.github.Rirusha.Cassette.Devel.json @@ -1,5 +1,5 @@ { - "app-id" : "io.github.Rirusha.Cassette.Devel", + "id" : "io.github.Rirusha.Cassette.Devel", "runtime" : "org.gnome.Platform", "runtime-version" : "45", "sdk" : "org.gnome.Sdk", From f424a0e425004c925efc2b1a881d53d60396673f Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sat, 24 Feb 2024 18:55:36 +0300 Subject: [PATCH 007/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=82=D0=B0=D1=81=D0=BA=D0=B8=20laucnh.json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 --- .vscode/extensions.json | 7 ++++++ .vscode/launch.json | 16 ++++++++++++++ .vscode/tasks.json | 48 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 71 insertions(+), 3 deletions(-) create mode 100644 .vscode/extensions.json create mode 100644 .vscode/launch.json create mode 100644 .vscode/tasks.json diff --git a/.gitignore b/.gitignore index 4267269..67971d7 100644 --- a/.gitignore +++ b/.gitignore @@ -4,9 +4,6 @@ builddir* # Workspaces *.code-workspace -# Visuel Studio Code -.vscode - # Personal scripts my.* diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..6a95d4e --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,7 @@ +{ + "recommendations": [ + "prince781.vala", + "colinkiama.linter-vala", + "bilelmoussaoui.flatpak-vscode" + ] +} \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..29e46ee --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,16 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "Debug", + "type": "gdb", + "request": "launch", + "target": "${workspaceFolder}/_build/src/cassette", + "cwd": "${workspaceFolder}", + "preLaunchTask": "Compile" + } + ] +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..f241f7d --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,48 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=733558 + // for the documentation about the tasks.json format + "version": "2.0.0", + "tasks": [ + { + "label": "Meson Setup", + "type": "shell", + "command": "meson setup _build --reconfigure -Dprofile=development", + "problemMatcher": [], + "runOptions": { + "runOn": "folderOpen" + } + }, + { + "label": "Compile", + "type": "shell", + "command": "meson compile -C _build", + "problemMatcher": [], + "group": { + "kind": "build", + "isDefault": true + }, + "presentation": { + "clear": true + } + }, + { + "label": "Run", + "type": "shell", + "command": "${workspaceFolder}/_build/src/cassette", + "problemMatcher": [], + "presentation": { + "clear": true + } + }, + { + "label": "Test", + "type": "shell", + "command": "meson test -C target --verbose", + "group": { + "kind": "test", + "isDefault": true + }, + "problemMatcher": [] + } + ] +} \ No newline at end of file From 0fb614728095e38b79b1280106d5a94108265b00 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Sun, 25 Feb 2024 00:01:28 +0300 Subject: [PATCH 008/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20README.md=20=D0=B8=20=D0=B4=D0=BE=D0=B1=D0=B0?= =?UTF-8?q?=D0=B2=D0=B8=D1=82=D1=8C=20=D1=80=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB?= =?UTF-8?q?=20=D0=B4=D0=BB=D1=8F=20=D1=80=D0=B0=D0=B7=D1=80=D0=B0=D0=B1?= =?UTF-8?q?=D0=BE=D1=82=D1=87=D0=B8=D0=BA=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index d6994ab..f8816ef 100644 --- a/README.md +++ b/README.md @@ -35,15 +35,15 @@ Все запланированные фичи можете [посмотреть в бэклоге](https://github.com/users/Rirusha/projects/2) ## Установка -### Через репозиторий... +### Через репозиторий … Приложение Cassette доступно здесь: [![Packaging status](https://repology.org/badge/vertical-allrepos/cassette.svg)](https://repology.org/project/cassette/versions) -### ALT Sisyphus +#### ALT Sisyphus ``` -apt-get install cassette +sudo apt-get install cassette ``` -### ... или используя flatpak +### … или используя flatpak Вы можете скачать по [ссылке](https://flathub.org/apps/details/io.github.Rirusha.Cassette) или используя терминал ``` flatpak install flathub io.github.Rirusha.Cassette @@ -78,9 +78,30 @@ flatpak install flathub io.github.Rirusha.Cassette ``` meson setup builddir ninja -C builddir test -ninja -C builddir install ``` +Установка: +``` +sudo ninja -C builddir install +``` + +Удаление: +``` +sudo ninja -C builddir uninstall +``` + +## Для разработчиков +Для возможности запуска devel версии понадобиться подключить [gnome-nightly](https://wiki.gnome.org/Apps/Nightly) репозиторий и установить: +* org.gnome.Sdk//master +* org.gnome.Platform//master +* org.freedesktop.Sdk.Extension.vala-nightly//23.08beta +``` +flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo +flatpak install org.gnome.Sdk//master org.gnome.Platform//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta +``` +#### … использующих Visual Studio Code +Репозиторий имеет рекоммендуемые расширения и сценарии проверки линта и запуска приложения с gdb. + ## Полезные ссылки * Телеграм-канал с девлогами: https://t.me/CassetteGNOME_Devlog * Чат с обсуждением новых фичей и проблем: https://t.me/CassetteGNOME_Discussion From 56519d23ae51c88ea6339520524bca75dc909906 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 25 Feb 2024 03:10:02 +0300 Subject: [PATCH 009/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=81=D1=82=D1=80=D1=83=D0=BA=D1=82=D1=83=D1=80?= =?UTF-8?q?=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 72 +++++++++++++++++++ .vscode/settings.json | 11 +++ .../io.github.Rirusha.Cassette.Devel.json | 0 3 files changed, 83 insertions(+) create mode 100644 .github/workflows/deploy.yml create mode 100644 .vscode/settings.json rename io.github.Rirusha.Cassette.Devel.json => build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json (100%) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..e8ecca8 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,72 @@ +name: "Deploy" + +on: + schedule: + - cron: "0 0 * * *" + workflow_dispatch: + +jobs: + flatter: + name: Flatter + runs-on: ubuntu-latest + container: + image: ghcr.io/andyholmes/flatter/gnome:master + options: --privileged + + strategy: + matrix: + arch: [x86_64, aarch64] + fail-fast: false + max-parallel: 1 + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Setup QEMU + if: ${{ matrix.arch == 'aarch64' }} + id: qemu + uses: docker/setup-qemu-action@v3 + with: + platforms: arm64 + + - name: Setup GPG + id: gpg + uses: crazy-max/ghaction-import-gpg@v5 + with: + gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} + passphrase: ${{ secrets.GPG_PASSPHRASE }} + + - name: Generate CNAME + run: | + echo "flatter.andyholmes.ca" > CNAME + + - name: Build + uses: andyholmes/flatter@main + with: + files: | + build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json + arch: ${{ matrix.arch }} + gpg-sign: ${{ steps.gpg.outputs.fingerprint }} + upload-bundles: true + upload-pages-artifact: ${{ matrix.arch == 'aarch64' }} + upload-pages-includes: | + CNAME + default.css + index.html + + deploy: + name: Deploy + runs-on: ubuntu-latest + needs: flatter + permissions: + pages: write + id-token: write + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + steps: + - name: GitHub Pages + id: deployment + uses: actions/deploy-pages@v1 \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..01eee25 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,11 @@ +{ + "files.watcherExclude": { + "**/.git/objects/**": true, + "**/.git/subtree-cache/**": true, + "**/node_modules/*/**": true, + "**/.hg/store/**": true, + ".flatpak/**": true, + "_build/**": true + }, + "vala.languageServerPath": "${workspaceFolder}/.flatpak/vala-language-server.sh" +} \ No newline at end of file diff --git a/io.github.Rirusha.Cassette.Devel.json b/build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json similarity index 100% rename from io.github.Rirusha.Cassette.Devel.json rename to build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json From 7c92b8288a7a05397ffdf5f6ebb4501a2e28cb0b Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 25 Feb 2024 04:08:35 +0300 Subject: [PATCH 010/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/lbd.yml | 46 ++++++++++++++++++++++++++++++++ .github/workflows/lint-build.yml | 35 ------------------------ 2 files changed, 46 insertions(+), 35 deletions(-) create mode 100644 .github/workflows/lbd.yml delete mode 100644 .github/workflows/lint-build.yml diff --git a/.github/workflows/lbd.yml b/.github/workflows/lbd.yml new file mode 100644 index 0000000..3d3a709 --- /dev/null +++ b/.github/workflows/lbd.yml @@ -0,0 +1,46 @@ +name: "Lint, Build, Deploy" + +on: + push: + branches: + - 'dev-*' # Запускать workflow только для веток разработки + +jobs: + lint: + name: "Lint" + runs-on: ubuntu-latest + + container: + image: valalang/lint + + steps: + - uses: actions/checkout@v1 + - name: Lint + run: io.elementary.vala-lint -d . + + build: + runs-on: ubuntu-latest + + container: + image: bilelmoussaoui/flatpak-github-actions:gnome-nightly + options: --privileged + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Run tests and lint + uses: flatpak/flatpak-github-actions/flatpak-builder@v6 + with: + bundle: cassette.flatpak + manifest-path: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json + # run-tests: true + cache-key: flatpak-builder-${{ github.sha }} + + - name: Create Pull Request + if: success() + uses: stefanzweifel/git-auto-commit-action@v5 + with: + branch: deploy + commit_options: '--no-verify --signoff' + \ No newline at end of file diff --git a/.github/workflows/lint-build.yml b/.github/workflows/lint-build.yml deleted file mode 100644 index 16ed392..0000000 --- a/.github/workflows/lint-build.yml +++ /dev/null @@ -1,35 +0,0 @@ -name: "Lint & Build" - -on: - push: - pull_request: - -jobs: - lint: - name: "Lint" - runs-on: ubuntu-latest - - container: - image: valalang/lint - - steps: - - uses: actions/checkout@v1 - - name: Lint - run: io.elementary.vala-lint -d . - - build: - name: "Build" - runs-on: ubuntu-latest - - container: - image: bilelmoussaoui/flatpak-github-actions:gnome-45 - options: --privileged - - steps: - - uses: actions/checkout@v4 - - uses: flatpak/flatpak-github-actions/flatpak-builder@v6 - with: - bundle: cassette.flatpak - manifest-path: io.github.Rirusha.Cassette.Devel.json - run-tests: true - cache-key: flatpak-builder-${{ github.sha }} \ No newline at end of file From 211d22749769875b7cfd37ad4d70d7af17da6e33 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Sun, 25 Feb 2024 05:22:07 +0300 Subject: [PATCH 011/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index f8816ef..34b4554 100644 --- a/README.md +++ b/README.md @@ -91,6 +91,8 @@ sudo ninja -C builddir uninstall ``` ## Для разработчиков +Все изменения должны нужно вносить в dev-* ветки. Коммиты в master и deploy ветки будут отклонены. + Для возможности запуска devel версии понадобиться подключить [gnome-nightly](https://wiki.gnome.org/Apps/Nightly) репозиторий и установить: * org.gnome.Sdk//master * org.gnome.Platform//master From 861ede86f7f834653fa0b68fc4c21b5eac22c32f Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Sun, 25 Feb 2024 05:32:41 +0300 Subject: [PATCH 012/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 34b4554..eb969ce 100644 --- a/README.md +++ b/README.md @@ -96,10 +96,11 @@ sudo ninja -C builddir uninstall Для возможности запуска devel версии понадобиться подключить [gnome-nightly](https://wiki.gnome.org/Apps/Nightly) репозиторий и установить: * org.gnome.Sdk//master * org.gnome.Platform//master -* org.freedesktop.Sdk.Extension.vala-nightly//23.08beta +* org.freedesktop.Sdk.Extension.vala-nightly//23.08beta +* org.gnome.Builder.Devel//master ``` flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo -flatpak install org.gnome.Sdk//master org.gnome.Platform//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta +flatpak install org.gnome.Sdk//master org.gnome.Platform//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta org.gnome.Builder.Devel//master ``` #### … использующих Visual Studio Code Репозиторий имеет рекоммендуемые расширения и сценарии проверки линта и запуска приложения с gdb. From 7366c46c5691f6f40d75cc62cb694886d6261d8f Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Sun, 25 Feb 2024 15:09:38 +0300 Subject: [PATCH 013/854] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index eb969ce..8baa7aa 100644 --- a/README.md +++ b/README.md @@ -97,10 +97,10 @@ sudo ninja -C builddir uninstall * org.gnome.Sdk//master * org.gnome.Platform//master * org.freedesktop.Sdk.Extension.vala-nightly//23.08beta -* org.gnome.Builder.Devel//master +* org.gnome.Builder//stable ``` flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo -flatpak install org.gnome.Sdk//master org.gnome.Platform//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta org.gnome.Builder.Devel//master +flatpak install org.gnome.Sdk//master org.gnome.Platform//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta org.gnome.Builder//stable ``` #### … использующих Visual Studio Code Репозиторий имеет рекоммендуемые расширения и сценарии проверки линта и запуска приложения с gdb. From 0b711876a798e93c676f337ef0dce00ad6cb6153 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Mon, 26 Feb 2024 06:04:49 +0300 Subject: [PATCH 014/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 68 ++++++++++++++++++++------------ .github/workflows/lint-build.yml | 40 +++++++++++++++++++ 2 files changed, 82 insertions(+), 26 deletions(-) create mode 100644 .github/workflows/lint-build.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index e8ecca8..69b8823 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,27 +1,48 @@ -name: "Deploy" +name: Deploy on: schedule: - - cron: "0 0 * * *" + - cron: 0 0 * * * workflow_dispatch: jobs: - flatter: - name: Flatter + pr-deploy: + name: Pull Request to deploy branch + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Config git + run: | + git config --global user.name "auto-deployer" + git config --global user.email "rirusha@noreply.github.com" + + - name: Checkout branch + run: git checkout ${{ env.DEVEL_SLICE_BRANCH_NAME }} + + - name: Merge changes + run: | + git merge origin/dev-* --no-edit + git push origin ${{ env.DEVEL_SLICE_BRANCH_NAME }} + + build: + name: Build runs-on: ubuntu-latest container: - image: ghcr.io/andyholmes/flatter/gnome:master - options: --privileged - + image: bilelmoussaoui/flatpak-github-actions:gnome-nigthly + options: --priveleged + strategy: matrix: arch: [x86_64, aarch64] fail-fast: false max-parallel: 1 - + steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup QEMU if: ${{ matrix.arch == 'aarch64' }} @@ -32,33 +53,28 @@ jobs: - name: Setup GPG id: gpg - uses: crazy-max/ghaction-import-gpg@v5 + uses: crazy-max/ghaction-import-gpg@v6 with: gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} passphrase: ${{ secrets.GPG_PASSPHRASE }} - - name: Generate CNAME + - name: Build and install deps run: | - echo "flatter.andyholmes.ca" > CNAME + flatpak-builder build --user --install-deps-from=${{ env.REPO_NAME }} --gpg-sign=${{ steps.gpg.outputs.fingerprint }} --disable-rofiles-fuse --disable-updates --force-clean --repo=repo --default-branch=master ${{ env.MANIFEST_PATH }} + flatpak build-bundle --arch=${{ matrix.arch }} --gpg-sign=${{ steps.gpg.outputs.fingerprint }} repo ${{ env.DEVEL_APP_ID }}.flatpak --runtime-repo=${{ env.REPO_URL }} ${{ env.DEVEL_APP_ID }} master - - name: Build - uses: andyholmes/flatter@main + flatpak build-update-repo --gpg-sign=${{ steps.gpg.outputs.fingerprint }} --generate-static-deltas --prune repo/ + + - name: Upload artifact + uses: actions/upload-artifact@v4 with: - files: | - build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json - arch: ${{ matrix.arch }} - gpg-sign: ${{ steps.gpg.outputs.fingerprint }} - upload-bundles: true - upload-pages-artifact: ${{ matrix.arch == 'aarch64' }} - upload-pages-includes: | - CNAME - default.css - index.html + name: ${{ env.DEVEL_APP_ID }}-${{ matrix.arch }} # имя вашего артефакта + path: repo/${{ env.DEVEL_APP_ID }}.flatpak # путь к артефакту, который вы хотите сохранить deploy: name: Deploy runs-on: ubuntu-latest - needs: flatter + needs: build permissions: pages: write id-token: write @@ -69,4 +85,4 @@ jobs: steps: - name: GitHub Pages id: deployment - uses: actions/deploy-pages@v1 \ No newline at end of file + uses: actions/deploy-pages@v4 diff --git a/.github/workflows/lint-build.yml b/.github/workflows/lint-build.yml new file mode 100644 index 0000000..2b2c5d3 --- /dev/null +++ b/.github/workflows/lint-build.yml @@ -0,0 +1,40 @@ +name: Lint & Build + +on: + push: + branches: + - 'dev-*' # Запускать workflow только для веток разработки + - 'master' + +jobs: + lint: + name: Lint + runs-on: ubuntu-latest + + container: + image: valalang/lint + + steps: + - uses: actions/checkout@v4 + - name: Lint + run: io.elementary.vala-lint -d . + + build: + name: Build + runs-on: ubuntu-latest + + container: + image: bilelmoussaoui/flatpak-github-actions:gnome-nightly + options: --privileged + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Run tests and lint + uses: flatpak/flatpak-github-actions/flatpak-builder@v6 + with: + bundle: cassette.flatpak + manifest-path: ${{ env.MANIFEST_PATH }} + # run-tests: true + cache-key: flatpak-builder-${{ github.sha }} From 296f8c0e376179c6adcc0b3b005ed6ee8674638a Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Mon, 26 Feb 2024 07:20:18 +0300 Subject: [PATCH 015/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 22 ++++++++++----- .github/workflows/lbd.yml | 46 -------------------------------- .github/workflows/lint-build.yml | 2 +- 3 files changed, 16 insertions(+), 54 deletions(-) delete mode 100644 .github/workflows/lbd.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 69b8823..941b33f 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -5,6 +5,14 @@ on: - cron: 0 0 * * * workflow_dispatch: +env: + BUILD_OUTPUT_PATH: rirusha.github.io/Cassette.Devel/repo + DEVEL_APP_ID: io.github.Rirusha.Cassette.Devel + DEVEL_SLICE_BRANCH_NAME: devel-slice + MANIFEST_PATH: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json + REPO_NAME: gnome-nightly + REPO_URL: https://nightly.gnome.org/gnome-nightly.flatpakrepo + jobs: pr-deploy: name: Pull Request to deploy branch @@ -20,12 +28,12 @@ jobs: git config --global user.email "rirusha@noreply.github.com" - name: Checkout branch - run: git checkout ${{ env.DEVEL_SLICE_BRANCH_NAME }} + run: git checkout $DEVEL_SLICE_BRANCH_NAME - name: Merge changes + # Должна существовать только одна ветка dev-* run: | - git merge origin/dev-* --no-edit - git push origin ${{ env.DEVEL_SLICE_BRANCH_NAME }} + git branch | grep "dev-" | git merge origin --no-edit --strategy=ours -m "Срез devel версии" build: name: Build @@ -60,16 +68,16 @@ jobs: - name: Build and install deps run: | - flatpak-builder build --user --install-deps-from=${{ env.REPO_NAME }} --gpg-sign=${{ steps.gpg.outputs.fingerprint }} --disable-rofiles-fuse --disable-updates --force-clean --repo=repo --default-branch=master ${{ env.MANIFEST_PATH }} - flatpak build-bundle --arch=${{ matrix.arch }} --gpg-sign=${{ steps.gpg.outputs.fingerprint }} repo ${{ env.DEVEL_APP_ID }}.flatpak --runtime-repo=${{ env.REPO_URL }} ${{ env.DEVEL_APP_ID }} master + flatpak-builder build --user --install-deps-from=$REPO_NAME --gpg-sign=${{ steps.gpg.outputs.fingerprint }} --disable-rofiles-fuse --disable-updates --force-clean --repo=repo --default-branch=master build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json + flatpak build-bundle --arch=${{ matrix.arch }} --gpg-sign=${{ steps.gpg.outputs.fingerprint }} repo $DEVEL_APP_ID.flatpak --runtime-repo=$REPO_URL $DEVEL_APP_ID master flatpak build-update-repo --gpg-sign=${{ steps.gpg.outputs.fingerprint }} --generate-static-deltas --prune repo/ - name: Upload artifact uses: actions/upload-artifact@v4 with: - name: ${{ env.DEVEL_APP_ID }}-${{ matrix.arch }} # имя вашего артефакта - path: repo/${{ env.DEVEL_APP_ID }}.flatpak # путь к артефакту, который вы хотите сохранить + name: io.github.Rirusha.Cassette.Devel-${{ matrix.arch }} # имя вашего артефакта + path: repo/io.github.Rirusha.Cassette.Devel.flatpak # путь к артефакту, который вы хотите сохранить deploy: name: Deploy diff --git a/.github/workflows/lbd.yml b/.github/workflows/lbd.yml deleted file mode 100644 index 3d3a709..0000000 --- a/.github/workflows/lbd.yml +++ /dev/null @@ -1,46 +0,0 @@ -name: "Lint, Build, Deploy" - -on: - push: - branches: - - 'dev-*' # Запускать workflow только для веток разработки - -jobs: - lint: - name: "Lint" - runs-on: ubuntu-latest - - container: - image: valalang/lint - - steps: - - uses: actions/checkout@v1 - - name: Lint - run: io.elementary.vala-lint -d . - - build: - runs-on: ubuntu-latest - - container: - image: bilelmoussaoui/flatpak-github-actions:gnome-nightly - options: --privileged - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Run tests and lint - uses: flatpak/flatpak-github-actions/flatpak-builder@v6 - with: - bundle: cassette.flatpak - manifest-path: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json - # run-tests: true - cache-key: flatpak-builder-${{ github.sha }} - - - name: Create Pull Request - if: success() - uses: stefanzweifel/git-auto-commit-action@v5 - with: - branch: deploy - commit_options: '--no-verify --signoff' - \ No newline at end of file diff --git a/.github/workflows/lint-build.yml b/.github/workflows/lint-build.yml index 2b2c5d3..2e2cb8f 100644 --- a/.github/workflows/lint-build.yml +++ b/.github/workflows/lint-build.yml @@ -35,6 +35,6 @@ jobs: uses: flatpak/flatpak-github-actions/flatpak-builder@v6 with: bundle: cassette.flatpak - manifest-path: ${{ env.MANIFEST_PATH }} + manifest-path: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json # run-tests: true cache-key: flatpak-builder-${{ github.sha }} From c799dc1e24ac4ed9092201d35f537a08d6b6be67 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Mon, 26 Feb 2024 10:58:19 +0300 Subject: [PATCH 016/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=83=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA?= =?UTF-8?q?=D1=83=20devel=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D0=B8=20=D0=B2?= =?UTF-8?q?=20README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/README.md b/README.md index 8baa7aa..0115f6f 100644 --- a/README.md +++ b/README.md @@ -102,6 +102,20 @@ sudo ninja -C builddir uninstall flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo flatpak install org.gnome.Sdk//master org.gnome.Platform//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta org.gnome.Builder//stable ``` + +Также можете установить dev версию, она обновляется каждые сутки. + +__ВНИМАНИЕ!__: эта версия нестабильна. + +Для этого нужно подключить репозиторий, после чего установить приложение: +``` +flatpak remote-add -u --no-gpg-verify cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo +flatpak install io.github.Rirusha.Cassette-Devel +``` +Для удаление репозитория нужно выполнить выполнить: +``` +flatpak remote-delete cassette-nightly +``` #### … использующих Visual Studio Code Репозиторий имеет рекоммендуемые расширения и сценарии проверки линта и запуска приложения с gdb. From 4a78059e48e63a22afa856557adf2b6af9d7f75e Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Mon, 26 Feb 2024 14:29:10 +0300 Subject: [PATCH 017/854] Update README.md --- README.md | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 0115f6f..4fafbb3 100644 --- a/README.md +++ b/README.md @@ -49,6 +49,21 @@ sudo apt-get install cassette flatpak install flathub io.github.Rirusha.Cassette ``` +### Nightly версия +Также можете установить dev версию, она обновляется каждые сутки. + +__ВНИМАНИЕ!__: эта версия нестабильна. + +Для этого нужно подключить репозиторий, после чего установить приложение: +``` +flatpak remote-add -u --no-gpg-verify cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo +flatpak install io.github.Rirusha.Cassette-Devel +``` +Для удаление репозитория нужно выполнить выполнить: +``` +flatpak remote-delete cassette-nightly +``` + ### Сборка из исходного кода Зависимости: @@ -103,19 +118,6 @@ flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome flatpak install org.gnome.Sdk//master org.gnome.Platform//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta org.gnome.Builder//stable ``` -Также можете установить dev версию, она обновляется каждые сутки. - -__ВНИМАНИЕ!__: эта версия нестабильна. - -Для этого нужно подключить репозиторий, после чего установить приложение: -``` -flatpak remote-add -u --no-gpg-verify cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo -flatpak install io.github.Rirusha.Cassette-Devel -``` -Для удаление репозитория нужно выполнить выполнить: -``` -flatpak remote-delete cassette-nightly -``` #### … использующих Visual Studio Code Репозиторий имеет рекоммендуемые расширения и сценарии проверки линта и запуска приложения с gdb. From 37fc14adb417b73cc96102bbd01e6df2ffb8d1ef Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Tue, 27 Feb 2024 13:04:32 +0300 Subject: [PATCH 018/854] Update deploy.yml --- .github/workflows/deploy.yml | 65 +++++++++++++++++------------------- 1 file changed, 31 insertions(+), 34 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 941b33f..9c734c4 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -5,52 +5,50 @@ on: - cron: 0 0 * * * workflow_dispatch: -env: - BUILD_OUTPUT_PATH: rirusha.github.io/Cassette.Devel/repo - DEVEL_APP_ID: io.github.Rirusha.Cassette.Devel - DEVEL_SLICE_BRANCH_NAME: devel-slice - MANIFEST_PATH: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json - REPO_NAME: gnome-nightly - REPO_URL: https://nightly.gnome.org/gnome-nightly.flatpakrepo - jobs: - pr-deploy: + sync-branches: name: Pull Request to deploy branch runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 + with: + ref: devel-slice - name: Config git run: | git config --global user.name "auto-deployer" git config --global user.email "rirusha@noreply.github.com" - - name: Checkout branch - run: git checkout $DEVEL_SLICE_BRANCH_NAME - - - name: Merge changes + - name: Rebase branch # Должна существовать только одна ветка dev-* run: | - git branch | grep "dev-" | git merge origin --no-edit --strategy=ours -m "Срез devel версии" + git branch -a | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - build: - name: Build + - name: Push changes + run: | + git push --force + + flatter: + name: Flatter runs-on: ubuntu-latest + needs: sync-branches container: - image: bilelmoussaoui/flatpak-github-actions:gnome-nigthly - options: --priveleged - + image: ghcr.io/andyholmes/flatter/gnome:master + options: --privileged + strategy: matrix: - arch: [x86_64, aarch64] + arch: [x86_64] fail-fast: false max-parallel: 1 - + steps: - name: Checkout uses: actions/checkout@v4 + with: + ref: devel-slice - name: Setup QEMU if: ${{ matrix.arch == 'aarch64' }} @@ -66,23 +64,22 @@ jobs: gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} passphrase: ${{ secrets.GPG_PASSPHRASE }} - - name: Build and install deps - run: | - flatpak-builder build --user --install-deps-from=$REPO_NAME --gpg-sign=${{ steps.gpg.outputs.fingerprint }} --disable-rofiles-fuse --disable-updates --force-clean --repo=repo --default-branch=master build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json - flatpak build-bundle --arch=${{ matrix.arch }} --gpg-sign=${{ steps.gpg.outputs.fingerprint }} repo $DEVEL_APP_ID.flatpak --runtime-repo=$REPO_URL $DEVEL_APP_ID master - - flatpak build-update-repo --gpg-sign=${{ steps.gpg.outputs.fingerprint }} --generate-static-deltas --prune repo/ - - - name: Upload artifact - uses: actions/upload-artifact@v4 + - name: Build + uses: andyholmes/flatter@main with: - name: io.github.Rirusha.Cassette.Devel-${{ matrix.arch }} # имя вашего артефакта - path: repo/io.github.Rirusha.Cassette.Devel.flatpak # путь к артефакту, который вы хотите сохранить - + files: | + build-aux/flatpak/io.github.Rirusha.Cassette-Devel.json + arch: ${{ matrix.arch }} + gpg-sign: ${{ steps.gpg.outputs.fingerprint }} + upload-bundles: true + upload-pages-artifact: true + upload-pages-includes: | + default.css + index.html deploy: name: Deploy runs-on: ubuntu-latest - needs: build + needs: flatter permissions: pages: write id-token: write From ec7f248eed76b9b7cd53bfa68001dc136844b062 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 01:47:07 +0300 Subject: [PATCH 019/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 9c734c4..78cfcda 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -7,20 +7,21 @@ on: jobs: sync-branches: - name: Pull Request to deploy branch + name: Rebase devel-slice on dev-* runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v4 - with: - ref: devel-slice - - name: Config git run: | git config --global user.name "auto-deployer" git config --global user.email "rirusha@noreply.github.com" + - name: Checkout devel-slice + run: | + git clone -b devel-slice https://github.com/Rirusha/Cassette.git + + echo $(git branch -a) + - name: Rebase branch # Должна существовать только одна ветка dev-* run: | From 3439f41aab5ecd748423ba3464c60ba92350436d Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:10:32 +0300 Subject: [PATCH 020/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 78cfcda..d8cf64f 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -19,6 +19,7 @@ jobs: - name: Checkout devel-slice run: | git clone -b devel-slice https://github.com/Rirusha/Cassette.git + cd Cassette/ echo $(git branch -a) From 78ea125432cc722d1e2f87d6cdd8ca04f97657f4 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:17:02 +0300 Subject: [PATCH 021/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index d8cf64f..fd62a83 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -16,20 +16,18 @@ jobs: git config --global user.name "auto-deployer" git config --global user.email "rirusha@noreply.github.com" - - name: Checkout devel-slice + - name: Rebase & Push + # Должна существовать только одна ветка dev-* run: | git clone -b devel-slice https://github.com/Rirusha/Cassette.git cd Cassette/ + git checkout -b dev-0.2 origin/dev-0.2 + echo $(git branch -a) - - name: Rebase branch - # Должна существовать только одна ветка dev-* - run: | git branch -a | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - - name: Push changes - run: | git push --force flatter: From e1dd3323349bc296099155392893c71813551b34 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:19:29 +0300 Subject: [PATCH 022/854] . . . --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index fd62a83..ce7c0f4 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -28,7 +28,7 @@ jobs: git branch -a | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - git push --force + git push --force origin devel-slice flatter: name: Flatter From e9e5dcdb5374784792fb8e8a48d28d87df2cfcca Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:21:51 +0300 Subject: [PATCH 023/854] . . . --- .github/workflows/deploy.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index ce7c0f4..cc5604a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -19,14 +19,15 @@ jobs: - name: Rebase & Push # Должна существовать только одна ветка dev-* run: | - git clone -b devel-slice https://github.com/Rirusha/Cassette.git + git clone https://github.com/Rirusha/Cassette.git cd Cassette/ git checkout -b dev-0.2 origin/dev-0.2 + git checkout -b devel-slice origin/devel-slice echo $(git branch -a) - git branch -a | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done + git branch -a | grep "^dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done git push --force origin devel-slice From b776a12aa1a5a945f890ba1d45e1d1aa3a41ed0a Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:28:38 +0300 Subject: [PATCH 024/854] . . . --- .github/workflows/deploy.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index cc5604a..e698886 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -15,6 +15,8 @@ jobs: run: | git config --global user.name "auto-deployer" git config --global user.email "rirusha@noreply.github.com" + git remote set-url origin https://github.com/${{ github.repository }} + git config --global credential.helper store - name: Rebase & Push # Должна существовать только одна ветка dev-* @@ -30,6 +32,8 @@ jobs: git branch -a | grep "^dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done git push --force origin devel-slice + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} flatter: name: Flatter From d40949cc71d0faf945f554020ec2b1656916d8a5 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:29:31 +0300 Subject: [PATCH 025/854] . . . --- .github/workflows/deploy.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index e698886..87eb2b3 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -15,8 +15,6 @@ jobs: run: | git config --global user.name "auto-deployer" git config --global user.email "rirusha@noreply.github.com" - git remote set-url origin https://github.com/${{ github.repository }} - git config --global credential.helper store - name: Rebase & Push # Должна существовать только одна ветка dev-* From 45ebd7240e69b7c2973368047fd4645384cb737a Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:32:23 +0300 Subject: [PATCH 026/854] . . . --- .github/workflows/deploy.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 87eb2b3..0f3c71d 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -22,6 +22,8 @@ jobs: git clone https://github.com/Rirusha/Cassette.git cd Cassette/ + git remote set-url origin https://Rirusha:${{ secrets.GITHUB_TOKEN }}@github.com/Rirusha/Cassette.git + git checkout -b dev-0.2 origin/dev-0.2 git checkout -b devel-slice origin/devel-slice @@ -30,8 +32,6 @@ jobs: git branch -a | grep "^dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done git push --force origin devel-slice - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} flatter: name: Flatter From 7454bc01985377bf3521262f6192773be4972ad6 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:37:18 +0300 Subject: [PATCH 027/854] . . . --- .github/workflows/deploy.yml | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 0f3c71d..8e6d71c 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -7,31 +7,30 @@ on: jobs: sync-branches: - name: Rebase devel-slice on dev-* + name: Pull Request to deploy branch runs-on: ubuntu-latest steps: + - name: Checkout + uses: actions/checkout@v4 + with: + ref: devel-slice + - name: Config git run: | git config --global user.name "auto-deployer" git config --global user.email "rirusha@noreply.github.com" - - name: Rebase & Push + - name: Rebase branch # Должна существовать только одна ветка dev-* run: | - git clone https://github.com/Rirusha/Cassette.git - cd Cassette/ + echo $(git branch --list | grep "dev-") + echo $(git branch --a | grep "dev-") + git branch -a | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - git remote set-url origin https://Rirusha:${{ secrets.GITHUB_TOKEN }}@github.com/Rirusha/Cassette.git - - git checkout -b dev-0.2 origin/dev-0.2 - git checkout -b devel-slice origin/devel-slice - - echo $(git branch -a) - - git branch -a | grep "^dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - - git push --force origin devel-slice + - name: Push changes + run: | + git push --force flatter: name: Flatter From b1905e18290df434c3ddeb055aa9078479d56aa9 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:38:31 +0300 Subject: [PATCH 028/854] . . . --- .github/workflows/deploy.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 8e6d71c..3002328 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -24,8 +24,9 @@ jobs: - name: Rebase branch # Должна существовать только одна ветка dev-* run: | + echo $(git branch --all) echo $(git branch --list | grep "dev-") - echo $(git branch --a | grep "dev-") + echo $(git branch --all | grep "dev-") git branch -a | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - name: Push changes From 17ee5437e5ca09774901c82b01ffb191674fabda Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:43:44 +0300 Subject: [PATCH 029/854] . . . --- .github/workflows/deploy.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 3002328..edf7660 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -7,7 +7,7 @@ on: jobs: sync-branches: - name: Pull Request to deploy branch + name: Rebase devel-slice on dev-* runs-on: ubuntu-latest steps: @@ -21,6 +21,12 @@ jobs: git config --global user.name "auto-deployer" git config --global user.email "rirusha@noreply.github.com" + - name: Checkout all + run: | + remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') + + for branch in $remote_branches; do git checkout -b $branch origin/$branch; done + - name: Rebase branch # Должна существовать только одна ветка dev-* run: | From b0bd33be693e2a3065c47c98f94821c2d939dd64 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:44:07 +0300 Subject: [PATCH 030/854] . . . --- .github/workflows/deploy.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index edf7660..1a97e2e 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -27,6 +27,8 @@ jobs: for branch in $remote_branches; do git checkout -b $branch origin/$branch; done + git checkout devel-slice + - name: Rebase branch # Должна существовать только одна ветка dev-* run: | From b2bbce4394bee199326ec541c74b48833000b5c7 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 02:46:53 +0300 Subject: [PATCH 031/854] . . . --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 1a97e2e..7b7ebc1 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -25,7 +25,7 @@ jobs: run: | remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') - for branch in $remote_branches; do git checkout -b $branch origin/$branch; done + for branch in $remote_branches; do git checkout -B $branch origin/$branch; done git checkout devel-slice From 566f39ec5883a98cb138a53469a58ac90a74f3bd Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:00:12 +0300 Subject: [PATCH 032/854] . . . --- .github/workflows/deploy.yml | 35 ++++++++--------------------------- 1 file changed, 8 insertions(+), 27 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 7b7ebc1..1bcc750 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -9,37 +9,18 @@ jobs: sync-branches: name: Rebase devel-slice on dev-* runs-on: ubuntu-latest - steps: - name: Checkout uses: actions/checkout@v4 + + - name: Merge devel-slice -> dev-* + uses: devmasx/merge-branch@master with: - ref: devel-slice - - - name: Config git - run: | - git config --global user.name "auto-deployer" - git config --global user.email "rirusha@noreply.github.com" - - - name: Checkout all - run: | - remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') - - for branch in $remote_branches; do git checkout -B $branch origin/$branch; done - - git checkout devel-slice - - - name: Rebase branch - # Должна существовать только одна ветка dev-* - run: | - echo $(git branch --all) - echo $(git branch --list | grep "dev-") - echo $(git branch --all | grep "dev-") - git branch -a | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - - - name: Push changes - run: | - git push --force + type: now + from_branch: dev-0.2 + target_branch: devel-slice + message: Auto merge + github_token: ${{ secrets.GITHUB_TOKEN }} flatter: name: Flatter From a90e67acd09cf68b891956cf880cc0baa61e54d9 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:13:01 +0300 Subject: [PATCH 033/854] . . . --- .github/workflows/deploy.yml | 25 ++++--------------------- .github/workflows/pr.yml | 22 ++++++++++++++++++++++ 2 files changed, 26 insertions(+), 21 deletions(-) create mode 100644 .github/workflows/pr.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 1bcc750..379f29d 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,31 +1,14 @@ name: Deploy -on: - schedule: - - cron: 0 0 * * * - workflow_dispatch: +on: + push: + branches: + - 'devel-slice' jobs: - sync-branches: - name: Rebase devel-slice on dev-* - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Merge devel-slice -> dev-* - uses: devmasx/merge-branch@master - with: - type: now - from_branch: dev-0.2 - target_branch: devel-slice - message: Auto merge - github_token: ${{ secrets.GITHUB_TOKEN }} - flatter: name: Flatter runs-on: ubuntu-latest - needs: sync-branches container: image: ghcr.io/andyholmes/flatter/gnome:master options: --privileged diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml new file mode 100644 index 0000000..6f1983b --- /dev/null +++ b/.github/workflows/pr.yml @@ -0,0 +1,22 @@ +name: PR + +on: + schedule: + - cron: 0 0 * * * + workflow_dispatch: + +jobs: + create-pr: + name: Create PR + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + ref: devel-slice + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v6 + with: + base: devel-slice + branch: dev-0.2 \ No newline at end of file From 1809f40eac1e995213dc140026d04141193c308b Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:16:15 +0300 Subject: [PATCH 034/854] . . . --- .github/workflows/pr.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 6f1983b..488669e 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -18,5 +18,5 @@ jobs: - name: Create Pull Request uses: peter-evans/create-pull-request@v6 with: - base: devel-slice - branch: dev-0.2 \ No newline at end of file + base: dev-0.2 + branch: devel-slice \ No newline at end of file From e86dbb43ebadea8c04b287a76df0a02c04e17d98 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:31:49 +0300 Subject: [PATCH 035/854] . . . --- .github/workflows/deploy.yml | 44 ++++++++++++++++++++++++++++++++---- .github/workflows/pr.yml | 22 ------------------ 2 files changed, 40 insertions(+), 26 deletions(-) delete mode 100644 .github/workflows/pr.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 379f29d..5fbb18c 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,14 +1,50 @@ name: Deploy -on: - push: - branches: - - 'devel-slice' +on: + schedule: + - cron: 0 0 * * * + workflow_dispatch: jobs: + sync-branches: + name: Rebase devel-slice on dev-* + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Config git + run: | + git config --global user.name "auto-deployer" + git config --global user.email "rirusha@noreply.github.com" + + - name: Checkout all + run: | + remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') + + echo $(remote_branches) + + for branch in $remote_branches; do git checkout -B $branch origin/$branch; done + + git checkout devel-slice + + - name: Rebase & Push + # Должна существовать только одна ветка dev-* + run: | + echo $(git branch --all) + echo $(git branch --list | grep "dev-") + echo $(git branch --all | grep "dev-") + git branch -a | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done + + git push --force + flatter: name: Flatter runs-on: ubuntu-latest + needs: sync-branches container: image: ghcr.io/andyholmes/flatter/gnome:master options: --privileged diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml deleted file mode 100644 index 488669e..0000000 --- a/.github/workflows/pr.yml +++ /dev/null @@ -1,22 +0,0 @@ -name: PR - -on: - schedule: - - cron: 0 0 * * * - workflow_dispatch: - -jobs: - create-pr: - name: Create PR - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - ref: devel-slice - - - name: Create Pull Request - uses: peter-evans/create-pull-request@v6 - with: - base: dev-0.2 - branch: devel-slice \ No newline at end of file From bdfa379856c2d04a12011b6f267e3b2e613dbe10 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:42:29 +0300 Subject: [PATCH 036/854] . . . --- .github/workflows/deploy.yml | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 5fbb18c..3b686bd 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -15,31 +15,24 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 + ref: devel-slice - - name: Config git + - name: Ultra commit run: | - git config --global user.name "auto-deployer" - git config --global user.email "rirusha@noreply.github.com" + git clone -b dev-0.2 - - name: Checkout all - run: | - remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') + git branch -a | grep "^dev-" | while read -r branch; do git clone -b "$branch" tmp; done - echo $(remote_branches) + rm -rf tmp/.git - for branch in $remote_branches; do git checkout -B $branch origin/$branch; done - - git checkout devel-slice - - - name: Rebase & Push - # Должна существовать только одна ветка dev-* - run: | - echo $(git branch --all) - echo $(git branch --list | grep "dev-") - echo $(git branch --all | grep "dev-") - git branch -a | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done + mv -f tmp/* ./ + git config user.name robot-debil + git config user.email github-actions@github.com + git add . + git commit -m "Auto commit" git push --force + flatter: name: Flatter From 9368dfd28969d964ab359c3966856704f931e80a Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:42:43 +0300 Subject: [PATCH 037/854] . . . --- .github/workflows/deploy.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 3b686bd..540dab8 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -19,8 +19,6 @@ jobs: - name: Ultra commit run: | - git clone -b dev-0.2 - git branch -a | grep "^dev-" | while read -r branch; do git clone -b "$branch" tmp; done rm -rf tmp/.git From 5f60121446169cd9a953706ef35d9d0b2df1c94e Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:47:26 +0300 Subject: [PATCH 038/854] . . . --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 540dab8..636a798 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -19,7 +19,7 @@ jobs: - name: Ultra commit run: | - git branch -a | grep "^dev-" | while read -r branch; do git clone -b "$branch" tmp; done + git branch --list | grep "^dev-" | while read -r branch; do git clone -b "$branch" https://github.com/Rirusha/Cassette.git tmp; done rm -rf tmp/.git From 3f249c19e53a6c3f97cda6b59e6313f193363f7f Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:50:14 +0300 Subject: [PATCH 039/854] . . . --- .github/workflows/deploy.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 636a798..237c087 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -19,7 +19,9 @@ jobs: - name: Ultra commit run: | - git branch --list | grep "^dev-" | while read -r branch; do git clone -b "$branch" https://github.com/Rirusha/Cassette.git tmp; done + git branch --list | grep "^dev-" | while read -r branch; do git checkout -B $branch origin/$branch; git clone -b "$branch" https://github.com/Rirusha/Cassette.git tmp; done + + checkout deve-slice rm -rf tmp/.git From 38003b8f2402592894594631843d5f0054c94cc4 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:51:27 +0300 Subject: [PATCH 040/854] . . . --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 237c087..7e4a0e8 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -21,7 +21,7 @@ jobs: run: | git branch --list | grep "^dev-" | while read -r branch; do git checkout -B $branch origin/$branch; git clone -b "$branch" https://github.com/Rirusha/Cassette.git tmp; done - checkout deve-slice + git checkout devel-slice rm -rf tmp/.git From 59fb515a2ed3ed0eadebf909e13efd8f68146bd6 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:52:47 +0300 Subject: [PATCH 041/854] . . . --- .github/workflows/deploy.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 7e4a0e8..94390a3 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -19,7 +19,7 @@ jobs: - name: Ultra commit run: | - git branch --list | grep "^dev-" | while read -r branch; do git checkout -B $branch origin/$branch; git clone -b "$branch" https://github.com/Rirusha/Cassette.git tmp; done + git clone -b dev-0.2 https://github.com/Rirusha/Cassette.git tmp git checkout devel-slice @@ -27,6 +27,8 @@ jobs: mv -f tmp/* ./ + rm -rf tmp + git config user.name robot-debil git config user.email github-actions@github.com git add . From c5f48d997c3fde2f4c87b6a9e60474f228b632f8 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 03:58:26 +0300 Subject: [PATCH 042/854] . . . --- .github/workflows/deploy.yml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 94390a3..969fbea 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -23,11 +23,8 @@ jobs: git checkout devel-slice - rm -rf tmp/.git - - mv -f tmp/* ./ - - rm -rf tmp + sudo apt-get install rsync -y + rsync -av --delete tmp/ ./ git config user.name robot-debil git config user.email github-actions@github.com From 5d61dcfde79907f097446024db240fec0efa4cc3 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 04:00:32 +0300 Subject: [PATCH 043/854] . . . --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 969fbea..3e4d098 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -21,7 +21,7 @@ jobs: run: | git clone -b dev-0.2 https://github.com/Rirusha/Cassette.git tmp - git checkout devel-slice + rm -rf tmp/.git sudo apt-get install rsync -y rsync -av --delete tmp/ ./ From 89daf02ac1114dc3d1ed5595e2b5d60c7fd42c0e Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 04:16:47 +0300 Subject: [PATCH 044/854] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D1=82?= =?UTF-8?q?=D1=8C=20=D0=BF=D0=BE=D1=81=D0=BB=D0=B5=D0=B4=D0=BD=D0=B5=D0=B5?= =?UTF-8?q?=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 3e4d098..350498a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -23,8 +23,9 @@ jobs: rm -rf tmp/.git - sudo apt-get install rsync -y - rsync -av --delete tmp/ ./ + yes | cp -Rf tmp/* ./ + + rm -rf tmp git config user.name robot-debil git config user.email github-actions@github.com From a3c93e6aa13f42c1dbda6a96928d795b62c54ee0 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 04:19:01 +0300 Subject: [PATCH 045/854] . . . --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 350498a..26b7d2c 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -23,7 +23,7 @@ jobs: rm -rf tmp/.git - yes | cp -Rf tmp/* ./ + cp -Rf tmp/* ./ rm -rf tmp From 650a7bffc52485fec7176e3a66b50df3ac06f2b7 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 04:21:27 +0300 Subject: [PATCH 046/854] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20?= =?UTF-8?q?=D0=BD=D0=B5=D0=BE=D0=B1=D1=85=D0=BE=D0=B4=D0=B8=D0=BC=D0=BE?= =?UTF-8?q?=D1=81=D1=82=D1=8C=20=D0=B2=D0=B5=D1=82=D0=BA=D0=B8=20devel-sli?= =?UTF-8?q?ce?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 31 +------------------------------ 1 file changed, 1 insertion(+), 30 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 26b7d2c..508fffb 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -6,38 +6,9 @@ on: workflow_dispatch: jobs: - sync-branches: - name: Rebase devel-slice on dev-* - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - fetch-depth: 0 - ref: devel-slice - - - name: Ultra commit - run: | - git clone -b dev-0.2 https://github.com/Rirusha/Cassette.git tmp - - rm -rf tmp/.git - - cp -Rf tmp/* ./ - - rm -rf tmp - - git config user.name robot-debil - git config user.email github-actions@github.com - git add . - git commit -m "Auto commit" - git push --force - - flatter: name: Flatter runs-on: ubuntu-latest - needs: sync-branches container: image: ghcr.io/andyholmes/flatter/gnome:master options: --privileged @@ -52,7 +23,7 @@ jobs: - name: Checkout uses: actions/checkout@v4 with: - ref: devel-slice + ref: dev-0.2 - name: Setup QEMU if: ${{ matrix.arch == 'aarch64' }} From 3f0b56d74198cd783c002a3557b592d9f8b543f0 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 04:37:27 +0300 Subject: [PATCH 047/854] =?UTF-8?q?=D0=92=D0=B5=D1=80=D0=BD=D1=83=D1=82?= =?UTF-8?q?=D1=8C=20=D0=BA=D0=BB=D0=BE=D1=83=D0=BD=D0=B0=D0=B4=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 508fffb..1bcc750 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -6,9 +6,26 @@ on: workflow_dispatch: jobs: + sync-branches: + name: Rebase devel-slice on dev-* + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Merge devel-slice -> dev-* + uses: devmasx/merge-branch@master + with: + type: now + from_branch: dev-0.2 + target_branch: devel-slice + message: Auto merge + github_token: ${{ secrets.GITHUB_TOKEN }} + flatter: name: Flatter runs-on: ubuntu-latest + needs: sync-branches container: image: ghcr.io/andyholmes/flatter/gnome:master options: --privileged @@ -23,7 +40,7 @@ jobs: - name: Checkout uses: actions/checkout@v4 with: - ref: dev-0.2 + ref: devel-slice - name: Setup QEMU if: ${{ matrix.arch == 'aarch64' }} From 624026e5d5c5f072b9051fbbb4b1758077ca5c84 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 04:45:15 +0300 Subject: [PATCH 048/854] =?UTF-8?q?=D0=92=D0=BE=D1=81=D1=81=D1=82=D0=B0?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=B0=D1=82=D1=8C=20=D1=87=D0=B5=D1=81=D1=82?= =?UTF-8?q?=D1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 1bcc750..601c8c4 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -9,23 +9,39 @@ jobs: sync-branches: name: Rebase devel-slice on dev-* runs-on: ubuntu-latest + steps: - name: Checkout uses: actions/checkout@v4 - - - name: Merge devel-slice -> dev-* - uses: devmasx/merge-branch@master with: - type: now - from_branch: dev-0.2 - target_branch: devel-slice - message: Auto merge - github_token: ${{ secrets.GITHUB_TOKEN }} + fetch-depth: 0 + + - name: Config git + run: | + git config --global user.name "robot-debil" + git config --global user.email "rirusha@noreply.github.com" + + - name: Checkout all + run: | + remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') + for branch in $remote_branches; do git checkout -B $branch origin/$branch; done + git checkout devel-slice + + - name: Rebase & Push + # Должна существовать только одна ветка dev-* + run: | + git branch --list | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done + + - name: Push + run: | + git push --force + flatter: name: Flatter runs-on: ubuntu-latest needs: sync-branches + container: image: ghcr.io/andyholmes/flatter/gnome:master options: --privileged @@ -82,4 +98,4 @@ jobs: steps: - name: GitHub Pages id: deployment - uses: actions/deploy-pages@v4 + uses: actions/deploy-pages@v4 \ No newline at end of file From 828955931b83458aad4c1691b587afa62e7cef58 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 28 Feb 2024 04:48:03 +0300 Subject: [PATCH 049/854] . . . --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 601c8c4..cf0cf8a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -34,7 +34,7 @@ jobs: - name: Push run: | - git push --force + git push --force origin devel-slice flatter: From e41a533857b39ef0410f42de9c87a9fda9e83a3a Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Wed, 28 Feb 2024 05:12:47 +0300 Subject: [PATCH 050/854] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4fafbb3..0c3b395 100644 --- a/README.md +++ b/README.md @@ -59,7 +59,7 @@ __ВНИМАНИЕ!__: эта версия нестабильна. flatpak remote-add -u --no-gpg-verify cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo flatpak install io.github.Rirusha.Cassette-Devel ``` -Для удаление репозитория нужно выполнить выполнить: +Для удаления репозитория нужно выполнить выполнить: ``` flatpak remote-delete cassette-nightly ``` From a0fb8fbb73af190d062d343a1b250f29c94658c1 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov <95986183+Rirusha@users.noreply.github.com> Date: Fri, 1 Mar 2024 00:15:07 +0300 Subject: [PATCH 051/854] Update README.md --- README.md | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 0c3b395..1c9c115 100644 --- a/README.md +++ b/README.md @@ -43,6 +43,7 @@ ``` sudo apt-get install cassette ``` + ### … или используя flatpak Вы можете скачать по [ссылке](https://flathub.org/apps/details/io.github.Rirusha.Cassette) или используя терминал ``` @@ -50,15 +51,18 @@ flatpak install flathub io.github.Rirusha.Cassette ``` ### Nightly версия -Также можете установить dev версию, она обновляется каждые сутки. +Есть возможность установки nightly версии, которая обновляется каждые сутки. -__ВНИМАНИЕ!__: эта версия нестабильна. +__ВНИМАНИЕ!: эта версия нестабильна.__ -Для этого нужно подключить репозиторий, после чего установить приложение: +Для работы требуется установить org.gnome.Platform//master из gnome-nightly репозитория. Подключение репозитория описано в разделе [Для разработчиков](https://github.com/Rirusha/Cassette?tab=readme-ov-file#для-разработчиков). + +Установка приложения происходит из nightly репозитория, который также нужно подключить: ``` flatpak remote-add -u --no-gpg-verify cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo -flatpak install io.github.Rirusha.Cassette-Devel +flatpak install io.github.Rirusha.Cassette-Devel org.gnome.Platform//master ``` + Для удаления репозитория нужно выполнить выполнить: ``` flatpak remote-delete cassette-nightly @@ -67,7 +71,7 @@ flatpak remote-delete cassette-nightly ### Сборка из исходного кода Зависимости: -* ```gtk4```, version >= 4.5 +* ```gtk4```, version >= 4.12 * ```libadwaita-1```, version >= 1.4 * ```libsoup-3.0``` * ```gdk-pixbuf-2.0``` @@ -108,16 +112,25 @@ sudo ninja -C builddir uninstall ## Для разработчиков Все изменения должны нужно вносить в dev-* ветки. Коммиты в master и deploy ветки будут отклонены. -Для возможности запуска devel версии понадобиться подключить [gnome-nightly](https://wiki.gnome.org/Apps/Nightly) репозиторий и установить: +Для возможности запуска devel версии понадобиться подключить [gnome-nightly](https://wiki.gnome.org/Apps/Nightly) репозиторий: +``` +flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo +``` + +И установить: * org.gnome.Sdk//master * org.gnome.Platform//master * org.freedesktop.Sdk.Extension.vala-nightly//23.08beta * org.gnome.Builder//stable ``` -flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo flatpak install org.gnome.Sdk//master org.gnome.Platform//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta org.gnome.Builder//stable ``` +Для удаления репозитория нужно выполнить выполнить: +``` +flatpak remote-delete gnome-nightly +``` + #### … использующих Visual Studio Code Репозиторий имеет рекоммендуемые расширения и сценарии проверки линта и запуска приложения с gdb. From cbb85f4b831896197a6c4b4581efb1c76d8283f2 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sat, 2 Mar 2024 20:35:10 +0300 Subject: [PATCH 052/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20deploy.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index cf0cf8a..c310618 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -48,7 +48,7 @@ jobs: strategy: matrix: - arch: [x86_64] + arch: [x86_64, aarch64] fail-fast: false max-parallel: 1 @@ -80,10 +80,8 @@ jobs: arch: ${{ matrix.arch }} gpg-sign: ${{ steps.gpg.outputs.fingerprint }} upload-bundles: true - upload-pages-artifact: true - upload-pages-includes: | - default.css - index.html + upload-pages-artifact: ${{ matrix.arch == 'aarch64' }} + deploy: name: Deploy runs-on: ubuntu-latest From 9ba578881418039a4c2f678b6295ce0937e5db3c Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 3 Mar 2024 02:18:19 +0300 Subject: [PATCH 053/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=81=D0=BF=D0=BE=D1=81=D0=BE=D0=B1=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=B4=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=BD=D0=B8=D1=8F=20?= =?UTF-8?q?nightly=20=D1=80=D0=B5=D0=BF=D0=BE=D0=B7=D0=B8=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1c9c115..e3f2fa3 100644 --- a/README.md +++ b/README.md @@ -59,7 +59,7 @@ __ВНИМАНИЕ!: эта версия нестабильна.__ Установка приложения происходит из nightly репозитория, который также нужно подключить: ``` -flatpak remote-add -u --no-gpg-verify cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo +flatpak remote-add --if-not-exists cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo flatpak install io.github.Rirusha.Cassette-Devel org.gnome.Platform//master ``` From 0d464fc1bc89a51cfc1dd5240dc9872c7b003729 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 3 Mar 2024 02:29:11 +0300 Subject: [PATCH 054/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D1=81=D1=81=D1=8B=D0=BB=D0=BA=D0=B0=20?= =?UTF-8?q?=D0=BD=D0=B0=20milestones?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e3f2fa3..7317eb2 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,7 @@ * [ ] 0.5: Подкасты и книги Все запланированные фичи можете [посмотреть в бэклоге](https://github.com/users/Rirusha/projects/2) +Описание ближайших релизов доступно [здесь](https://github.com/Rirusha/Cassette/milestones) ## Установка ### Через репозиторий … From f45e66c504912471392ab18a0f661eb7ff940e28 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 3 Mar 2024 03:16:11 +0300 Subject: [PATCH 055/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=B2=D1=8B=D0=B2=D0=BE=D0=B4=20=D0=B4=D0=B8?= =?UTF-8?q?=D1=80=D0=B5=D0=BA=D1=82=D0=BE=D1=80=D0=B8=D0=B8=20=D0=B2=20?= =?UTF-8?q?=D0=B2=D0=B8=D0=B4=D0=B5=20=D0=B4=D0=B5=D1=80=D0=B5=D0=B2=D0=B0?= =?UTF-8?q?=20=D0=B8=20=D1=83=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20=D0=BB=D0=B8?= =?UTF-8?q?=D1=88=D0=BD=D0=B8=D0=B9=20=D1=88=D0=B0=D0=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index c310618..ad38f51 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -16,11 +16,6 @@ jobs: with: fetch-depth: 0 - - name: Config git - run: | - git config --global user.name "robot-debil" - git config --global user.email "rirusha@noreply.github.com" - - name: Checkout all run: | remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') @@ -29,11 +24,11 @@ jobs: - name: Rebase & Push # Должна существовать только одна ветка dev-* - run: | + run: | git branch --list | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - name: Push - run: | + run: | git push --force origin devel-slice @@ -81,6 +76,13 @@ jobs: gpg-sign: ${{ steps.gpg.outputs.fingerprint }} upload-bundles: true upload-pages-artifact: ${{ matrix.arch == 'aarch64' }} + upload-pages-includes: | + default.css + index.html + + - name: Echo Tree (Debug) + run: | + tree ./ deploy: name: Deploy @@ -96,4 +98,4 @@ jobs: steps: - name: GitHub Pages id: deployment - uses: actions/deploy-pages@v4 \ No newline at end of file + uses: actions/deploy-pages@v4 From 4ba85f4f641efc1899053561e83e4bad89ffd43c Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 3 Mar 2024 03:24:54 +0300 Subject: [PATCH 056/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=83=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA?= =?UTF-8?q?=D1=83=20=D0=BD=D0=B5=D0=B4=D0=BE=D1=81=D1=82=D0=B0=D1=8E=D1=89?= =?UTF-8?q?=D0=B5=D0=B9=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index ad38f51..017a4d9 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -82,6 +82,7 @@ jobs: - name: Echo Tree (Debug) run: | + sudo apt-get install -y tree tree ./ deploy: From 40663adaac10bdf1105c872b4ed534185db8a858 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 3 Mar 2024 03:33:17 +0300 Subject: [PATCH 057/854] Update deploy.yml --- .github/workflows/deploy.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 017a4d9..599c5fa 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -82,8 +82,7 @@ jobs: - name: Echo Tree (Debug) run: | - sudo apt-get install -y tree - tree ./ + ls -la ./ deploy: name: Deploy From 662fda2035644c1e9359dafdf87b115f2e58af3c Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 3 Mar 2024 03:45:38 +0300 Subject: [PATCH 058/854] Update deploy.yml --- .github/workflows/deploy.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 599c5fa..bcc5c4a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -79,10 +79,9 @@ jobs: upload-pages-includes: | default.css index.html - - - name: Echo Tree (Debug) - run: | - ls -la ./ + repo + flatpak-builder-args: | + --repo-url=https://Rirusha.github.io/Cassette/repo deploy: name: Deploy From 15b16f00dd6020d6559617da055d2bea9faefbd7 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 3 Mar 2024 03:50:37 +0300 Subject: [PATCH 059/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index bcc5c4a..61b4416 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -80,8 +80,6 @@ jobs: default.css index.html repo - flatpak-builder-args: | - --repo-url=https://Rirusha.github.io/Cassette/repo deploy: name: Deploy From 45b8db0867dabb0e54358dca0a1809c247b34582 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 13 Mar 2024 22:14:26 +0300 Subject: [PATCH 060/854] Fix README mistakes --- README.md | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 7317eb2..8c73def 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ sudo apt-get install cassette ### … или используя flatpak Вы можете скачать по [ссылке](https://flathub.org/apps/details/io.github.Rirusha.Cassette) или используя терминал ``` -flatpak install flathub io.github.Rirusha.Cassette +flatpak install io.github.Rirusha.Cassette ``` ### Nightly версия @@ -56,15 +56,15 @@ flatpak install flathub io.github.Rirusha.Cassette __ВНИМАНИЕ!: эта версия нестабильна.__ -Для работы требуется установить org.gnome.Platform//master из gnome-nightly репозитория. Подключение репозитория описано в разделе [Для разработчиков](https://github.com/Rirusha/Cassette?tab=readme-ov-file#для-разработчиков). +Для работы требуется установить org.gnome.Platform//master из gnome-nightly репозитория. Подключение репозитория и установка пакета, необходимого для запуска devel версии описаны в разделе [Для разработчиков](https://github.com/Rirusha/Cassette?tab=readme-ov-file#для-разработчиков). Установка приложения происходит из nightly репозитория, который также нужно подключить: ``` flatpak remote-add --if-not-exists cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo -flatpak install io.github.Rirusha.Cassette-Devel org.gnome.Platform//master +flatpak install io.github.Rirusha.Cassette-Devel ``` -Для удаления репозитория нужно выполнить выполнить: +Для удаления репозитория нужно выполнить: ``` flatpak remote-delete cassette-nightly ``` @@ -119,12 +119,16 @@ flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome ``` И установить: -* org.gnome.Sdk//master * org.gnome.Platform//master -* org.freedesktop.Sdk.Extension.vala-nightly//23.08beta -* org.gnome.Builder//stable ``` -flatpak install org.gnome.Sdk//master org.gnome.Platform//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta org.gnome.Builder//stable +flatpak install org.gnome.Platform//master +``` + +Для сборки devel версии нужно установить: +* org.gnome.Sdk//master +* org.freedesktop.Sdk.Extension.vala-nightly//23.08beta +``` +flatpak install org.gnome.Sdk//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta ``` Для удаления репозитория нужно выполнить выполнить: From 69f81fd365820c7d15c0613ac49551f08f71610e Mon Sep 17 00:00:00 2001 From: fiersik Date: Sat, 23 Mar 2024 23:02:45 +0400 Subject: [PATCH 061/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=BE:=20README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 126 ++++++++++++++++++++++++++++++------------------------ 1 file changed, 71 insertions(+), 55 deletions(-) diff --git a/README.md b/README.md index 8c73def..e2b8565 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@

- GTK4/Adwaita приложение, которое позволит вам использовать Я.Музыку на Linux. + GTK4/Adwaita приложение, которое позволит вам использовать Я.Музыку на Linux.


@@ -14,64 +14,84 @@
-

- -

- - Download on Flathub +
+
+ tg + +
+ + tg

- Screenshot + + Download on Flathub +

+

+ Screenshot +

+ + ## План основных версий * [ ] 0.2: Моя волна * [ ] 0.3: Альбомы и исполнители * [ ] 0.4: Поиск по сервису * [ ] 0.5: Подкасты и книги -Все запланированные фичи можете [посмотреть в бэклоге](https://github.com/users/Rirusha/projects/2) +Все запланированные фичи можете [посмотреть в бэклоге](https://github.com/users/Rirusha/projects/2) \ Описание ближайших релизов доступно [здесь](https://github.com/Rirusha/Cassette/milestones) -## Установка -### Через репозиторий … + +## Установка из репозитория + Приложение Cassette доступно здесь: [![Packaging status](https://repology.org/badge/vertical-allrepos/cassette.svg)](https://repology.org/project/cassette/versions) -#### ALT Sisyphus + +### ALT Sisyphus ``` sudo apt-get install cassette ``` -### … или используя flatpak + +## Установка c помощью Flatpak + Вы можете скачать по [ссылке](https://flathub.org/apps/details/io.github.Rirusha.Cassette) или используя терминал + ``` flatpak install io.github.Rirusha.Cassette ``` -### Nightly версия -Есть возможность установки nightly версии, которая обновляется каждые сутки. -__ВНИМАНИЕ!: эта версия нестабильна.__ +## Nightly версия -Для работы требуется установить org.gnome.Platform//master из gnome-nightly репозитория. Подключение репозитория и установка пакета, необходимого для запуска devel версии описаны в разделе [Для разработчиков](https://github.com/Rirusha/Cassette?tab=readme-ov-file#для-разработчиков). +> [!WARNING] +> Данная версия каждые сутки собирается и обновляется из dev ветки приложения, поэтому может оказаться нестабильной -Установка приложения происходит из nightly репозитория, который также нужно подключить: +#### Подключаем репозиторий gnome-nightly и устанавливаем GNOME Platform: +```shell +flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo +flatpak install gnome-nightly org.gnome.Platform//master ``` + +#### Подключаем Nightly репозиторий и устанавливаем приложение: +```shell flatpak remote-add --if-not-exists cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo -flatpak install io.github.Rirusha.Cassette-Devel +flatpak install cassette-nightly io.github.Rirusha.Cassette-Devel ``` -Для удаления репозитория нужно выполнить: +#### Для удаления репозитория нужно выполнить: ``` flatpak remote-delete cassette-nightly ``` -### Сборка из исходного кода -Зависимости: +## Сборка из исходного кода + +#### Зависимости: * ```gtk4```, version >= 4.12 * ```libadwaita-1```, version >= 1.4 * ```libsoup-3.0``` @@ -84,7 +104,7 @@ flatpak remote-delete cassette-nightly * ```webkitgtk-6.0``` * ```gio-2.0``` -Утилиты для сборки: +#### Утилиты для сборки: * ```meson``` * ```ninja``` * ```cmake``` @@ -94,71 +114,67 @@ flatpak remote-delete cassette-nightly * ```pkg``` * ```appstream-utils``` -Сборка: +### Сборка: ``` meson setup builddir ninja -C builddir test ``` -Установка: +### Установка: ``` sudo ninja -C builddir install ``` -Удаление: +### Удаление: ``` sudo ninja -C builddir uninstall ``` ## Для разработчиков -Все изменения должны нужно вносить в dev-* ветки. Коммиты в master и deploy ветки будут отклонены. -Для возможности запуска devel версии понадобиться подключить [gnome-nightly](https://wiki.gnome.org/Apps/Nightly) репозиторий: +> [!NOTE] +> Все изменения необходимо вносить в `dev-*` ветки. Коммиты в `master` и `devel-slice` будут отклонены. + +### Использование Visual Studio Code +Репозиторий имеет рекомендуемые расширения для проверки и запуска приложения с gdb. + +### Зависимости + +#### репозиторий [gnome-nightly](https://wiki.gnome.org/Apps/Nightly): ``` flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo ``` -И установить: -* org.gnome.Platform//master +#### Для запуска +`org.gnome.Platform//master` ``` flatpak install org.gnome.Platform//master ``` -Для сборки devel версии нужно установить: -* org.gnome.Sdk//master -* org.freedesktop.Sdk.Extension.vala-nightly//23.08beta +#### Для сборки +`org.gnome.Sdk//master` \ +`org.freedesktop.Sdk.Extension.vala-nightly//23.08beta` ``` flatpak install org.gnome.Sdk//master org.freedesktop.Sdk.Extension.vala-nightly//23.08beta ``` -Для удаления репозитория нужно выполнить выполнить: -``` -flatpak remote-delete gnome-nightly -``` - -#### … использующих Visual Studio Code -Репозиторий имеет рекоммендуемые расширения и сценарии проверки линта и запуска приложения с gdb. - -## Полезные ссылки -* Телеграм-канал с девлогами: https://t.me/CassetteGNOME_Devlog -* Чат с обсуждением новых фичей и проблем: https://t.me/CassetteGNOME_Discussion -* Сообщить об ошибке: https://github.com/Rirusha/Cassette/issues ## Поддержка Вы можете поддержать несколькими способами: -* Создать ишью с проблемой или предложением по улучшению; -* Отправить pull request с фиксом или добавлением функционала; -* Поддержать рублём (Просьба указывать в "Сообщении получателю" свой никнейм при отправлении через Тинькофф): -

- +- Создать ишью с проблемой или предложением по улучшению; +- Отправить pull request с фиксом или добавлением функционала; +- Поддержать рублём (Просьба указывать в "Сообщении получателю" свой никнейм при отправлении через Тинькофф): + +

+ Tinkoff - -

-

- + +

+

+ boosty.to - -

+ +

## Благодарность Спасибо [MarshalX](https://github.com/MarshalX). Библиотека [yandex-music-api](https://github.com/MarshalX/yandex-music-api) была использована в качестве документации к api. From 4bd876d6b8d4a93cadba428b23040a2fc67be2d3 Mon Sep 17 00:00:00 2001 From: fiersik Date: Tue, 26 Mar 2024 21:56:50 +0400 Subject: [PATCH 062/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=BE:=20README=20(=D0=A0=D0=B5=D1=88=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20=D0=BF=D1=80=D0=BE=D0=B1=D0=BB=D0=B5=D0=BC)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index e2b8565..c001488 100644 --- a/README.md +++ b/README.md @@ -53,7 +53,8 @@ ### ALT Sisyphus ``` -sudo apt-get install cassette +su - +apt-get install cassette ``` @@ -130,6 +131,14 @@ sudo ninja -C builddir install sudo ninja -C builddir uninstall ``` + +## Решение проблем + +Решение известных проблем описано на странице Cassette на [ALT Gnome Wiki](https://alt-gnome.wiki/cassette.html#решение-проблем). + +Также загляните во вкладку [issues](https://github.com/Rirusha/Cassette/issues), если вашей проблемы нет и там, расскажите о ней, заведя новый [issue](https://github.com/Rirusha/Cassette/issues/new). + + ## Для разработчиков > [!NOTE] @@ -161,8 +170,8 @@ flatpak install org.gnome.Sdk//master org.freedesktop.Sdk.Extension.vala-nightly ## Поддержка Вы можете поддержать несколькими способами: -- Создать ишью с проблемой или предложением по улучшению; -- Отправить pull request с фиксом или добавлением функционала; +- Создать ишью с проблемой или предложением по улучшению +- Отправить pull request с фиксом или добавлением функционала - Поддержать рублём (Просьба указывать в "Сообщении получателю" свой никнейм при отправлении через Тинькофф):

@@ -176,7 +185,9 @@ flatpak install org.gnome.Sdk//master org.freedesktop.Sdk.Extension.vala-nightly

+ ## Благодарность Спасибо [MarshalX](https://github.com/MarshalX). Библиотека [yandex-music-api](https://github.com/MarshalX/yandex-music-api) была использована в качестве документации к api. -#### Cassette - неофициальный клиент, не связан с компанией Яндекс и не одобрен ей +> [!NOTE] +Cassette - неофициальный клиент, не связан с компанией Яндекс и не одобрен ей. \ No newline at end of file From 83d8471fab69b2470d03fc1bb96b8189b8f08cd3 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sat, 30 Mar 2024 09:04:03 +0300 Subject: [PATCH 063/854] Sort buttons in README.md --- README.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index c001488..76a06f9 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,11 @@

+ + Download on Flathub + +
+
@@ -24,12 +29,6 @@

-

- - Download on Flathub - -

-

Screenshot

@@ -190,4 +189,4 @@ flatpak install org.gnome.Sdk//master org.freedesktop.Sdk.Extension.vala-nightly Спасибо [MarshalX](https://github.com/MarshalX). Библиотека [yandex-music-api](https://github.com/MarshalX/yandex-music-api) была использована в качестве документации к api. > [!NOTE] -Cassette - неофициальный клиент, не связан с компанией Яндекс и не одобрен ей. \ No newline at end of file +Cassette - неофициальный клиент, не связан с компанией Яндекс и не одобрен ей. From 0184bb570a46d4815864051751e8b3ce2b413edf Mon Sep 17 00:00:00 2001 From: fiersik Date: Tue, 2 Apr 2024 17:57:04 +0400 Subject: [PATCH 064/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=20=D1=81=D0=BF=D0=BE=D1=81=D0=BE=D0=B1=20=D1=83?= =?UTF-8?q?=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA=D0=B8=20=D0=B2=20Win?= =?UTF-8?q?dows?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- INSTALLATION_ON_WINDOWS.md | 80 ++++++++++++++++++++++++++++++++++++++ README.md | 5 +++ 2 files changed, 85 insertions(+) create mode 100644 INSTALLATION_ON_WINDOWS.md diff --git a/INSTALLATION_ON_WINDOWS.md b/INSTALLATION_ON_WINDOWS.md new file mode 100644 index 0000000..52cddeb --- /dev/null +++ b/INSTALLATION_ON_WINDOWS.md @@ -0,0 +1,80 @@ +# Установка в Windows (WSL) + +> [!WARNING] +> Данный способ использует WSL (Windows Subsystem for Linux) и не гарантирует полную работоспособность приложения. + +## Установка системы + +Перед установкой приложения необходимо поставить подсистему Ubuntu. + +#### В PowerShell: +``` +wsl --install Ubuntu +``` + +После этого в меню «Пуск» появится приложение `ubuntu`, заходим. Откроется терминал и начнётся процесс донастройки системы, по оокончании вводим логин и пароль нового пользователя. + +Далее обновляем систему и устанавливаем менеджер приложений Flatpak. + +#### В терминале Ubuntu: +``` +sudo apt update +sudo apt upgrade +sudo apt install flatpak +``` + +Перезапускаем WSL: + +#### В PowerShell: +``` +wsl -t Ubuntu +``` + +## Установка приложения + +### latest версия + +> [!NOTE] +> Данная версия является стабильной и может не содержать самых новых функций. + +Подключаем репозиторий `flathub` и устанавливаем приложение: + +#### В терминале Ubuntu: +``` +sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo +sudo flatpak install io.github.Rirusha.Cassette +``` + +> [!NOTE] +> После перезагрузки Windows в меню «Пуск» появиться ярлык Cassette, но её также можно запустить из терминала Ubuntu так: +> ``` +> flatpak run io.github.Rirusha.Cassette +> ``` + +### nightly версия + +> [!WARNING] +> Данная версия каждые сутки собирается и обновляется из dev ветки приложения, поэтому может оказаться нестабильной. + +Подключаем репозитории `gnome-nightly` и `cassette-nightly`: + +#### В терминале Ubuntu: +``` +sudo flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo +sudo flatpak remote-add --if-not-exists cassette-nightly https://rirusha.github.io/Cassette/index.flatpakrepo +``` + +Устанавливаем зависимости и приложение: + +#### В терминале Ubuntu: +``` +sudo flatpak install gnome-nightly org.gnome.Platform//master +sudo flatpak install cassette-nightly io.github.Rirusha.Cassette-Devel +``` + +> [!NOTE] +> После перезагрузки Windows в меню «Пуск» появиться ярлык Cassette-Devel, но её также можно запустить из терминала Ubuntu так: +> ``` +> flatpak run io.github.Rirusha.Cassette-Devel +> ``` + diff --git a/README.md b/README.md index 76a06f9..455f221 100644 --- a/README.md +++ b/README.md @@ -89,6 +89,11 @@ flatpak remote-delete cassette-nightly ``` +## Установка в Windows + +Способы установки приложения в Windows описаны [здесь](INSTALLATION_ON_WINDOWS.md). + + ## Сборка из исходного кода #### Зависимости: From 670bd7bd5f228c5111df97ec4c812caa8a88b4d6 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 2 Apr 2024 17:17:41 +0300 Subject: [PATCH 065/854] Fix INSTALLATION_ON_WINDOWS.md mistakes Fiersik.... :( --- INSTALLATION_ON_WINDOWS.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/INSTALLATION_ON_WINDOWS.md b/INSTALLATION_ON_WINDOWS.md index 52cddeb..6c2c057 100644 --- a/INSTALLATION_ON_WINDOWS.md +++ b/INSTALLATION_ON_WINDOWS.md @@ -12,7 +12,7 @@ wsl --install Ubuntu ``` -После этого в меню «Пуск» появится приложение `ubuntu`, заходим. Откроется терминал и начнётся процесс донастройки системы, по оокончании вводим логин и пароль нового пользователя. +После этого в меню «Пуск» появится приложение `ubuntu`, заходим. Откроется терминал и начнётся процесс донастройки системы, по окончании вводим логин и пароль нового пользователя. Далее обновляем систему и устанавливаем менеджер приложений Flatpak. @@ -46,7 +46,7 @@ sudo flatpak install io.github.Rirusha.Cassette ``` > [!NOTE] -> После перезагрузки Windows в меню «Пуск» появиться ярлык Cassette, но её также можно запустить из терминала Ubuntu так: +> После перезагрузки Windows в меню «Пуск» появиться ярлык приложения Cassette, но его также можно запустить из терминала Ubuntu так: > ``` > flatpak run io.github.Rirusha.Cassette > ``` @@ -73,7 +73,7 @@ sudo flatpak install cassette-nightly io.github.Rirusha.Cassette-Devel ``` > [!NOTE] -> После перезагрузки Windows в меню «Пуск» появиться ярлык Cassette-Devel, но её также можно запустить из терминала Ubuntu так: +> После перезагрузки Windows в меню «Пуск» появиться ярлык приложения Cassette-Devel, но его также можно запустить из терминала Ubuntu так: > ``` > flatpak run io.github.Rirusha.Cassette-Devel > ``` From cd5d40cd5d8454b0ffe4d223c66eacccb056f2a7 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 7 Apr 2024 06:47:43 +0300 Subject: [PATCH 066/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/{deploy.yml => CI-dev.yaml} | 53 ++++++++++++++----- .../workflows/{lint-build.yml => CI-master} | 14 ++--- 2 files changed, 46 insertions(+), 21 deletions(-) rename .github/workflows/{deploy.yml => CI-dev.yaml} (67%) rename .github/workflows/{lint-build.yml => CI-master} (74%) diff --git a/.github/workflows/deploy.yml b/.github/workflows/CI-dev.yaml similarity index 67% rename from .github/workflows/deploy.yml rename to .github/workflows/CI-dev.yaml index 61b4416..c40d5fb 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/CI-dev.yaml @@ -1,21 +1,24 @@ -name: Deploy +name: CI on: - schedule: - - cron: 0 0 * * * - workflow_dispatch: + push: + branches: + - 'dev-*' # Запускать workflow только для веток разработки jobs: - sync-branches: - name: Rebase devel-slice on dev-* + lint: + name: Lint runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - fetch-depth: 0 + container: + image: valalang/lint + steps: + - uses: actions/checkout@v4 + - name: Lint + run: io.elementary.vala-lint -d . + +<<<<<<< HEAD:.github/workflows/deploy.yml - name: Checkout all run: | remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') @@ -31,11 +34,33 @@ jobs: run: | git push --force origin devel-slice +======= + test-build: + name: Build + runs-on: ubuntu-latest + needs: lint + container: + image: bilelmoussaoui/flatpak-github-actions:gnome-nightly + options: --privileged + + steps: + - name: Checkout repository + uses: actions/checkout@v4 +>>>>>>> 1926849 (Изменить workflow):.github/workflows/CI-dev.yaml + + - name: Run tests and lint + uses: flatpak/flatpak-github-actions/flatpak-builder@v6 + with: + bundle: cassette.flatpak + manifest-path: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json + run-tests: true + cache-key: flatpak-builder-${{ github.sha }} + flatter: name: Flatter runs-on: ubuntu-latest - needs: sync-branches + needs: test-build container: image: ghcr.io/andyholmes/flatter/gnome:master @@ -50,8 +75,6 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 - with: - ref: devel-slice - name: Setup QEMU if: ${{ matrix.arch == 'aarch64' }} @@ -75,6 +98,7 @@ jobs: arch: ${{ matrix.arch }} gpg-sign: ${{ steps.gpg.outputs.fingerprint }} upload-bundles: true + run-tests: true upload-pages-artifact: ${{ matrix.arch == 'aarch64' }} upload-pages-includes: | default.css @@ -85,6 +109,7 @@ jobs: name: Deploy runs-on: ubuntu-latest needs: flatter + permissions: pages: write id-token: write diff --git a/.github/workflows/lint-build.yml b/.github/workflows/CI-master similarity index 74% rename from .github/workflows/lint-build.yml rename to .github/workflows/CI-master index 2e2cb8f..b6783e8 100644 --- a/.github/workflows/lint-build.yml +++ b/.github/workflows/CI-master @@ -1,10 +1,9 @@ -name: Lint & Build +name: CI -on: +on: push: branches: - - 'dev-*' # Запускать workflow только для веток разработки - - 'master' + - 'master' # Запускать workflow только для веток разработки jobs: lint: @@ -19,9 +18,10 @@ jobs: - name: Lint run: io.elementary.vala-lint -d . - build: + test-build: name: Build runs-on: ubuntu-latest + needs: lint container: image: bilelmoussaoui/flatpak-github-actions:gnome-nightly @@ -36,5 +36,5 @@ jobs: with: bundle: cassette.flatpak manifest-path: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json - # run-tests: true - cache-key: flatpak-builder-${{ github.sha }} + run-tests: true + cache-key: flatpak-builder-${{ github.sha }} \ No newline at end of file From 271f1356ac473bcc7fa8272db38bd36a115a54d7 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 7 Apr 2024 06:49:51 +0300 Subject: [PATCH 067/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=B8=D0=BC=D0=B5=D0=BD=D0=B0=20=D1=84=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/{CI-dev.yaml => CI-dev.yml} | 24 +------------------ .../workflows/{CI-master => CI-master.yml} | 0 2 files changed, 1 insertion(+), 23 deletions(-) rename .github/workflows/{CI-dev.yaml => CI-dev.yml} (72%) rename .github/workflows/{CI-master => CI-master.yml} (100%) diff --git a/.github/workflows/CI-dev.yaml b/.github/workflows/CI-dev.yml similarity index 72% rename from .github/workflows/CI-dev.yaml rename to .github/workflows/CI-dev.yml index c40d5fb..22aea87 100644 --- a/.github/workflows/CI-dev.yaml +++ b/.github/workflows/CI-dev.yml @@ -18,23 +18,6 @@ jobs: - name: Lint run: io.elementary.vala-lint -d . -<<<<<<< HEAD:.github/workflows/deploy.yml - - name: Checkout all - run: | - remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') - for branch in $remote_branches; do git checkout -B $branch origin/$branch; done - git checkout devel-slice - - - name: Rebase & Push - # Должна существовать только одна ветка dev-* - run: | - git branch --list | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - - - name: Push - run: | - git push --force origin devel-slice - -======= test-build: name: Build runs-on: ubuntu-latest @@ -47,7 +30,6 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v4 ->>>>>>> 1926849 (Изменить workflow):.github/workflows/CI-dev.yaml - name: Run tests and lint uses: flatpak/flatpak-github-actions/flatpak-builder@v6 @@ -100,10 +82,6 @@ jobs: upload-bundles: true run-tests: true upload-pages-artifact: ${{ matrix.arch == 'aarch64' }} - upload-pages-includes: | - default.css - index.html - repo deploy: name: Deploy @@ -120,4 +98,4 @@ jobs: steps: - name: GitHub Pages id: deployment - uses: actions/deploy-pages@v4 + uses: actions/deploy-pages@v4 \ No newline at end of file diff --git a/.github/workflows/CI-master b/.github/workflows/CI-master.yml similarity index 100% rename from .github/workflows/CI-master rename to .github/workflows/CI-master.yml From 42a0bfea85f3b8ba35dc5ed0a3c1b7072b18738f Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 7 Apr 2024 06:57:54 +0300 Subject: [PATCH 068/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D1=84=D0=B8=D0=BB=D1=8C=D1=82=D1=80=20?= =?UTF-8?q?=D0=B2=D0=B5=D1=82=D0=BE=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/CI-dev.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/CI-dev.yml b/.github/workflows/CI-dev.yml index 22aea87..d8135a0 100644 --- a/.github/workflows/CI-dev.yml +++ b/.github/workflows/CI-dev.yml @@ -3,7 +3,7 @@ name: CI on: push: branches: - - 'dev-*' # Запускать workflow только для веток разработки + - 'dev-**' # Запускать workflow только для веток разработки jobs: lint: @@ -98,4 +98,4 @@ jobs: steps: - name: GitHub Pages id: deployment - uses: actions/deploy-pages@v4 \ No newline at end of file + uses: actions/deploy-pages@v4 From 90c26743359057125656d0e8ee50a53a364136a2 Mon Sep 17 00:00:00 2001 From: Mika <94830731+Mikazil@users.noreply.github.com> Date: Sun, 7 Apr 2024 22:18:00 +0700 Subject: [PATCH 069/854] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 455f221..c6950ba 100644 --- a/README.md +++ b/README.md @@ -21,11 +21,11 @@
- tg + tg
- tg + tg

From bdbd17b09b838911986115eb281c840157abdb13 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 7 Apr 2024 19:35:02 +0300 Subject: [PATCH 070/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20telegtam=20=D0=BD=D0=B0=20telegram?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c6950ba..1694c41 100644 --- a/README.md +++ b/README.md @@ -21,11 +21,11 @@
- tg + tg
- tg + tg

From 6ca292a01e17a7afb9e26cbc724a8ee8cca86081 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Mon, 8 Apr 2024 03:19:13 +0300 Subject: [PATCH 071/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{CI-master.yml => CI-base-check.yml} | 15 +++-- .github/workflows/{CI-dev.yml => Deploy.yml} | 65 +++++++++---------- 2 files changed, 39 insertions(+), 41 deletions(-) rename .github/workflows/{CI-master.yml => CI-base-check.yml} (73%) rename .github/workflows/{CI-dev.yml => Deploy.yml} (59%) diff --git a/.github/workflows/CI-master.yml b/.github/workflows/CI-base-check.yml similarity index 73% rename from .github/workflows/CI-master.yml rename to .github/workflows/CI-base-check.yml index b6783e8..3c1358b 100644 --- a/.github/workflows/CI-master.yml +++ b/.github/workflows/CI-base-check.yml @@ -1,9 +1,11 @@ -name: CI +name: CI Base Check -on: +on: push: branches: - - 'master' # Запускать workflow только для веток разработки + - 'dev-*' # Запускать workflow только для веток разработки + - 'master' + pull_request: jobs: lint: @@ -18,10 +20,9 @@ jobs: - name: Lint run: io.elementary.vala-lint -d . - test-build: + build: name: Build runs-on: ubuntu-latest - needs: lint container: image: bilelmoussaoui/flatpak-github-actions:gnome-nightly @@ -36,5 +37,5 @@ jobs: with: bundle: cassette.flatpak manifest-path: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json - run-tests: true - cache-key: flatpak-builder-${{ github.sha }} \ No newline at end of file + # run-tests: true + cache-key: flatpak-builder-${{ github.sha }} diff --git a/.github/workflows/CI-dev.yml b/.github/workflows/Deploy.yml similarity index 59% rename from .github/workflows/CI-dev.yml rename to .github/workflows/Deploy.yml index d8135a0..61b4416 100644 --- a/.github/workflows/CI-dev.yml +++ b/.github/workflows/Deploy.yml @@ -1,48 +1,41 @@ -name: CI +name: Deploy on: - push: - branches: - - 'dev-**' # Запускать workflow только для веток разработки + schedule: + - cron: 0 0 * * * + workflow_dispatch: jobs: - lint: - name: Lint + sync-branches: + name: Rebase devel-slice on dev-* runs-on: ubuntu-latest - container: - image: valalang/lint - steps: - - uses: actions/checkout@v4 - - name: Lint - run: io.elementary.vala-lint -d . + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 - test-build: - name: Build - runs-on: ubuntu-latest - needs: lint + - name: Checkout all + run: | + remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') + for branch in $remote_branches; do git checkout -B $branch origin/$branch; done + git checkout devel-slice - container: - image: bilelmoussaoui/flatpak-github-actions:gnome-nightly - options: --privileged + - name: Rebase & Push + # Должна существовать только одна ветка dev-* + run: | + git branch --list | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done + + - name: Push + run: | + git push --force origin devel-slice + - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Run tests and lint - uses: flatpak/flatpak-github-actions/flatpak-builder@v6 - with: - bundle: cassette.flatpak - manifest-path: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json - run-tests: true - cache-key: flatpak-builder-${{ github.sha }} - flatter: name: Flatter runs-on: ubuntu-latest - needs: test-build + needs: sync-branches container: image: ghcr.io/andyholmes/flatter/gnome:master @@ -57,6 +50,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 + with: + ref: devel-slice - name: Setup QEMU if: ${{ matrix.arch == 'aarch64' }} @@ -80,14 +75,16 @@ jobs: arch: ${{ matrix.arch }} gpg-sign: ${{ steps.gpg.outputs.fingerprint }} upload-bundles: true - run-tests: true upload-pages-artifact: ${{ matrix.arch == 'aarch64' }} + upload-pages-includes: | + default.css + index.html + repo deploy: name: Deploy runs-on: ubuntu-latest needs: flatter - permissions: pages: write id-token: write From 09d7b69fc466f8a5f170d70f1511535f1f9fa8e0 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Mon, 8 Apr 2024 04:54:12 +0300 Subject: [PATCH 072/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20workflow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/{Deploy.yml => CI-dev.yml} | 50 ++++++------------- .../{CI-base-check.yml => CI-master.yml} | 14 +++--- 2 files changed, 23 insertions(+), 41 deletions(-) rename .github/workflows/{Deploy.yml => CI-dev.yml} (59%) rename .github/workflows/{CI-base-check.yml => CI-master.yml} (74%) diff --git a/.github/workflows/Deploy.yml b/.github/workflows/CI-dev.yml similarity index 59% rename from .github/workflows/Deploy.yml rename to .github/workflows/CI-dev.yml index 61b4416..e1800ed 100644 --- a/.github/workflows/Deploy.yml +++ b/.github/workflows/CI-dev.yml @@ -1,41 +1,27 @@ -name: Deploy +name: CI Light & Deploy on: - schedule: - - cron: 0 0 * * * - workflow_dispatch: + push: + branches: + - 'dev-**' # Запускать workflow только для веток разработки jobs: - sync-branches: - name: Rebase devel-slice on dev-* + lint: + name: Lint runs-on: ubuntu-latest + container: + image: valalang/lint + steps: - - name: Checkout - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Checkout all - run: | - remote_branches=$(git branch -r | grep -v '\->' | awk -F'/' '{print $2}') - for branch in $remote_branches; do git checkout -B $branch origin/$branch; done - git checkout devel-slice - - - name: Rebase & Push - # Должна существовать только одна ветка dev-* - run: | - git branch --list | grep "dev-" | while read -r branch; do git rebase --reapply-cherry-picks --strategy=ours "$branch"; done - - - name: Push - run: | - git push --force origin devel-slice - - + - uses: actions/checkout@v4 + - name: Lint + run: io.elementary.vala-lint -d . + flatter: name: Flatter runs-on: ubuntu-latest - needs: sync-branches + needs: lint container: image: ghcr.io/andyholmes/flatter/gnome:master @@ -50,8 +36,6 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 - with: - ref: devel-slice - name: Setup QEMU if: ${{ matrix.arch == 'aarch64' }} @@ -75,16 +59,14 @@ jobs: arch: ${{ matrix.arch }} gpg-sign: ${{ steps.gpg.outputs.fingerprint }} upload-bundles: true + # run-tests: true upload-pages-artifact: ${{ matrix.arch == 'aarch64' }} - upload-pages-includes: | - default.css - index.html - repo deploy: name: Deploy runs-on: ubuntu-latest needs: flatter + permissions: pages: write id-token: write diff --git a/.github/workflows/CI-base-check.yml b/.github/workflows/CI-master.yml similarity index 74% rename from .github/workflows/CI-base-check.yml rename to .github/workflows/CI-master.yml index 3c1358b..db02fc7 100644 --- a/.github/workflows/CI-base-check.yml +++ b/.github/workflows/CI-master.yml @@ -1,10 +1,9 @@ -name: CI Base Check +name: CI Light -on: +on: push: branches: - - 'dev-*' # Запускать workflow только для веток разработки - - 'master' + - 'master' # Запускать workflow только для веток разработки pull_request: jobs: @@ -20,9 +19,10 @@ jobs: - name: Lint run: io.elementary.vala-lint -d . - build: + test-build: name: Build runs-on: ubuntu-latest + needs: lint container: image: bilelmoussaoui/flatpak-github-actions:gnome-nightly @@ -37,5 +37,5 @@ jobs: with: bundle: cassette.flatpak manifest-path: build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json - # run-tests: true - cache-key: flatpak-builder-${{ github.sha }} + run-tests: true + cache-key: flatpak-builder-${{ github.sha }} \ No newline at end of file From ac3672c1e11c6a5044fc745e1ca785981bcd409e Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 29 Jan 2024 08:38:45 +0800 Subject: [PATCH 073/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=D0=BE=20=D0=BE=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=B5=D0=B8?= =?UTF-8?q?=20=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5=D1=82=D1=80=D0=B0=20?= =?UTF-8?q?=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- meson_options.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meson_options.txt b/meson_options.txt index 3f62c34..cfad4f7 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -6,5 +6,5 @@ option( 'development', ], value: 'default', - description: 'The build profile for Clock. One of "default" or "development".' + description: 'The build profile for app. One of "default" or "development".' ) From 27054bc805d6f9a62af28cb0bb16b4eb49700f73 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 29 Jan 2024 15:41:39 +0800 Subject: [PATCH 074/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=B3=D0=BE=D0=B4=20=D0=BA=D0=BE=D0=BF=D0=B8?= =?UTF-8?q?=D1=80=D0=B0=D0=B9=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application.vala | 4 ++-- src/authenticator.vala | 2 +- src/client/api/difference_builder.vala | 2 +- src/client/api/objects/account_info/account.vala | 2 +- src/client/api/objects/account_info/account_info.vala | 2 +- src/client/api/objects/account_info/avatar_info.vala | 2 +- src/client/api/objects/account_info/master_hub.vala | 2 +- src/client/api/objects/account_info/passport_phone.vala | 2 +- src/client/api/objects/account_info/permissions.vala | 2 +- src/client/api/objects/account_info/plus.vala | 2 +- src/client/api/objects/additional_info/lyrics.vala | 2 +- src/client/api/objects/additional_info/lyrics_major.vala | 2 +- src/client/api/objects/additional_info/similar_tracks.vala | 2 +- src/client/api/objects/album/album.vala | 2 +- src/client/api/objects/album/label.vala | 2 +- src/client/api/objects/album/volume.vala | 2 +- src/client/api/objects/api_error.vala | 2 +- src/client/api/objects/artist/artist.vala | 2 +- src/client/api/objects/artist/counts.vala | 2 +- src/client/api/objects/artist/link.vala | 2 +- src/client/api/objects/artist/ratings.vala | 2 +- src/client/api/objects/cover.vala | 2 +- src/client/api/objects/download_info.vala | 2 +- src/client/api/objects/playlist/case_forms.vala | 2 +- src/client/api/objects/playlist/liked_playlist.vala | 2 +- src/client/api/objects/playlist/made_for.vala | 2 +- src/client/api/objects/playlist/play_counter.vala | 2 +- src/client/api/objects/playlist/playlist.vala | 2 +- src/client/api/objects/playlist/playlist_absence.vala | 2 +- src/client/api/objects/playlist/playlist_recommendations.vala | 2 +- src/client/api/objects/playlist/user.vala | 2 +- src/client/api/objects/queue/context.vala | 2 +- src/client/api/objects/queue/queue.vala | 2 +- src/client/api/objects/queue/short_queue.vala | 2 +- src/client/api/objects/track/chart.vala | 2 +- src/client/api/objects/track/lyrics_info.vala | 2 +- src/client/api/objects/track/meta_data.vala | 2 +- src/client/api/objects/track/track.vala | 2 +- src/client/api/objects/track_heap.vala | 2 +- src/client/api/objects/track_short.vala | 2 +- src/client/api/yam_client.vala | 2 +- src/client/cachier/cachier.vala | 2 +- src/client/cachier/controller.vala | 2 +- src/client/cachier/info_db.vala | 2 +- src/client/cachier/job.vala | 2 +- src/client/cachier/storager.vala | 2 +- src/client/jsoner.vala | 2 +- src/client/likes_controller.vala | 2 +- src/client/logger.vala | 2 +- src/client/player/mpris.vala | 2 +- src/client/player/player.vala | 2 +- src/client/player/player_flow.vala | 2 +- src/client/player/player_track_list.vala | 2 +- src/client/player/track_local.vala | 2 +- src/client/soup_wrapper.vala | 2 +- src/client/talkers/abstract_talker.vala | 2 +- src/client/talkers/yam_talker.vala | 2 +- src/client/threader.vala | 2 +- src/client/utils.vala | 2 +- src/client/yam_object.vala | 2 +- src/main.vala | 2 +- src/main_window.vala | 2 +- src/pager.vala | 2 +- src/utils.vala | 2 +- src/widgets/account_info_window.vala | 2 +- src/widgets/begin/begin_view.vala | 2 +- src/widgets/begin/begin_window.vala | 2 +- src/widgets/cache_indicator/cache_indicator.vala | 2 +- src/widgets/cache_indicator/job_info_badge.vala | 2 +- src/widgets/clickable_label.vala | 2 +- src/widgets/cover_image.vala | 2 +- src/widgets/custom_button.vala | 2 +- src/widgets/dislike_button.vala | 2 +- src/widgets/info_marks.vala | 2 +- src/widgets/label_button.vala | 2 +- src/widgets/like_button.vala | 2 +- src/widgets/loading_widget.vala | 2 +- src/widgets/lyrics/lyrics_line.vala | 2 +- src/widgets/lyrics/lyrics_panel.vala | 2 +- src/widgets/lyrics_line.vala | 2 +- src/widgets/lyrics_panel.vala | 2 +- src/widgets/options_button/options_button.vala | 2 +- src/widgets/options_button/playlist_options_button.vala | 2 +- src/widgets/options_button/track_options_button.vala | 2 +- src/widgets/pages/abstract_loadable_page.vala | 2 +- src/widgets/pages/loading_page.vala | 2 +- src/widgets/play_button/play_button.vala | 2 +- src/widgets/play_button/play_button_action.vala | 2 +- src/widgets/play_button/play_button_context.vala | 2 +- src/widgets/play_button/play_button_default.vala | 2 +- src/widgets/play_button/play_button_track.vala | 2 +- src/widgets/player_bar.vala | 2 +- src/widgets/playlist_choose_window.vala | 2 +- src/widgets/playlist_create_button.vala | 2 +- src/widgets/playlist_micro.vala | 2 +- src/widgets/playlist_row.vala | 2 +- src/widgets/preferences/cache_deletion_preferences.vala | 2 +- src/widgets/preferences/custom_page_preferences.vala | 2 +- src/widgets/preferences/custom_pages_preferences.vala | 2 +- src/widgets/preferences/preferences_window.vala | 2 +- src/widgets/save_stack.vala | 2 +- src/widgets/sidebar.vala | 2 +- src/widgets/track_detailed.vala | 2 +- src/widgets/track_info_panel.vala | 2 +- src/widgets/track_list/track_list.vala | 2 +- src/widgets/track_list/track_row_base.vala | 2 +- src/widgets/track_list/tracks_model.vala | 2 +- src/widgets/track_list/tracks_view.vala | 2 +- src/widgets/track_row_contents/track_default_content.vala | 2 +- src/widgets/track_row_contents/track_placeholder.vala | 2 +- src/widgets/track_row_contents/track_queue_content.vala | 2 +- src/widgets/track_row_contents/track_row_content.vala | 2 +- src/widgets/track_row_contents/ya_track_row_content.vala | 2 +- src/widgets/track_rows/track_default_content.vala | 2 +- src/widgets/track_rows/track_placeholder.vala | 2 +- src/widgets/track_rows/track_queue_content.vala | 2 +- src/widgets/views/base_view.vala | 2 +- src/widgets/views/cachiable_view.vala | 2 +- src/widgets/views/cant_show_view.vala | 2 +- src/widgets/views/disliked_tracks_view.vala | 2 +- src/widgets/views/main_view.vala | 2 +- src/widgets/views/playlist_view.vala | 2 +- src/widgets/views/playlists_view.vala | 2 +- src/widgets/views/root_view.vala | 2 +- src/widgets/views/with_tracks_view.vala | 2 +- src/widgets/volume_button.vala | 2 +- 126 files changed, 127 insertions(+), 127 deletions(-) diff --git a/src/application.vala b/src/application.vala index 5984f37..0822e13 100644 --- a/src/application.vala +++ b/src/application.vala @@ -1,6 +1,6 @@ /* application.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -227,7 +227,7 @@ namespace Cassette { // Translators: NAME /n NAME translator_credits = _("translator-credits"), license_type = Gtk.License.GPL_3_0, - copyright = "© 2023 Rirusha", + copyright = "© 2023-2024 Rirusha", support_url = TELEGRAM_CHAT, issue_url = ISSUE_LINK, release_notes_version = Config.VERSION diff --git a/src/authenticator.vala b/src/authenticator.vala index 2045379..8c5acfc 100644 --- a/src/authenticator.vala +++ b/src/authenticator.vala @@ -1,6 +1,6 @@ /* authenticator.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/difference_builder.vala b/src/client/api/difference_builder.vala index cfb9ce4..52177c1 100644 --- a/src/client/api/difference_builder.vala +++ b/src/client/api/difference_builder.vala @@ -1,6 +1,6 @@ /* difference_builder.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/account.vala b/src/client/api/objects/account_info/account.vala index 5959b06..d30cdbc 100644 --- a/src/client/api/objects/account_info/account.vala +++ b/src/client/api/objects/account_info/account.vala @@ -1,6 +1,6 @@ /* account.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/account_info.vala b/src/client/api/objects/account_info/account_info.vala index d9461f6..637baaa 100644 --- a/src/client/api/objects/account_info/account_info.vala +++ b/src/client/api/objects/account_info/account_info.vala @@ -1,6 +1,6 @@ /* account_info.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/avatar_info.vala b/src/client/api/objects/account_info/avatar_info.vala index ea4e509..fc13352 100644 --- a/src/client/api/objects/account_info/avatar_info.vala +++ b/src/client/api/objects/account_info/avatar_info.vala @@ -1,6 +1,6 @@ /* account_info.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/master_hub.vala b/src/client/api/objects/account_info/master_hub.vala index d56b7dd..14be9d5 100644 --- a/src/client/api/objects/account_info/master_hub.vala +++ b/src/client/api/objects/account_info/master_hub.vala @@ -1,6 +1,6 @@ /* master_hub.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/passport_phone.vala b/src/client/api/objects/account_info/passport_phone.vala index 549cd3a..20a49cd 100644 --- a/src/client/api/objects/account_info/passport_phone.vala +++ b/src/client/api/objects/account_info/passport_phone.vala @@ -1,6 +1,6 @@ /* passport_phone.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/permissions.vala b/src/client/api/objects/account_info/permissions.vala index 8fecf49..9563da9 100644 --- a/src/client/api/objects/account_info/permissions.vala +++ b/src/client/api/objects/account_info/permissions.vala @@ -1,6 +1,6 @@ /* permissions.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/plus.vala b/src/client/api/objects/account_info/plus.vala index 5678012..b829404 100644 --- a/src/client/api/objects/account_info/plus.vala +++ b/src/client/api/objects/account_info/plus.vala @@ -1,6 +1,6 @@ /* plus.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/additional_info/lyrics.vala b/src/client/api/objects/additional_info/lyrics.vala index 92765f2..c787f9e 100644 --- a/src/client/api/objects/additional_info/lyrics.vala +++ b/src/client/api/objects/additional_info/lyrics.vala @@ -1,6 +1,6 @@ /* lyrics.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/additional_info/lyrics_major.vala b/src/client/api/objects/additional_info/lyrics_major.vala index 8ae5113..03d2873 100644 --- a/src/client/api/objects/additional_info/lyrics_major.vala +++ b/src/client/api/objects/additional_info/lyrics_major.vala @@ -1,6 +1,6 @@ /* lyrics_major.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/additional_info/similar_tracks.vala b/src/client/api/objects/additional_info/similar_tracks.vala index 83c7b76..7c5c0f6 100644 --- a/src/client/api/objects/additional_info/similar_tracks.vala +++ b/src/client/api/objects/additional_info/similar_tracks.vala @@ -1,6 +1,6 @@ /* similar_tracks.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/album/album.vala b/src/client/api/objects/album/album.vala index 761728b..d600542 100644 --- a/src/client/api/objects/album/album.vala +++ b/src/client/api/objects/album/album.vala @@ -1,6 +1,6 @@ /* album.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/album/label.vala b/src/client/api/objects/album/label.vala index a35abe9..2a69f1c 100644 --- a/src/client/api/objects/album/label.vala +++ b/src/client/api/objects/album/label.vala @@ -1,6 +1,6 @@ /* label.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/album/volume.vala b/src/client/api/objects/album/volume.vala index 681969a..a7b2a0c 100644 --- a/src/client/api/objects/album/volume.vala +++ b/src/client/api/objects/album/volume.vala @@ -1,6 +1,6 @@ /* volume.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/api_error.vala b/src/client/api/objects/api_error.vala index 6864305..797d76f 100644 --- a/src/client/api/objects/api_error.vala +++ b/src/client/api/objects/api_error.vala @@ -1,6 +1,6 @@ /* api_error.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/artist/artist.vala b/src/client/api/objects/artist/artist.vala index 055f35f..d409737 100644 --- a/src/client/api/objects/artist/artist.vala +++ b/src/client/api/objects/artist/artist.vala @@ -1,6 +1,6 @@ /* artist.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/artist/counts.vala b/src/client/api/objects/artist/counts.vala index e2757ee..42723f1 100644 --- a/src/client/api/objects/artist/counts.vala +++ b/src/client/api/objects/artist/counts.vala @@ -1,6 +1,6 @@ /* counts.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/artist/link.vala b/src/client/api/objects/artist/link.vala index ac0e3e2..c1baf4a 100644 --- a/src/client/api/objects/artist/link.vala +++ b/src/client/api/objects/artist/link.vala @@ -1,6 +1,6 @@ /* link.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/artist/ratings.vala b/src/client/api/objects/artist/ratings.vala index cdbea5d..664269f 100644 --- a/src/client/api/objects/artist/ratings.vala +++ b/src/client/api/objects/artist/ratings.vala @@ -1,6 +1,6 @@ /* ratings.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/cover.vala b/src/client/api/objects/cover.vala index 8567d63..ed0a1d0 100644 --- a/src/client/api/objects/cover.vala +++ b/src/client/api/objects/cover.vala @@ -1,6 +1,6 @@ /* cover.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/download_info.vala b/src/client/api/objects/download_info.vala index 6447068..da889b2 100644 --- a/src/client/api/objects/download_info.vala +++ b/src/client/api/objects/download_info.vala @@ -1,6 +1,6 @@ /* download_info.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/case_forms.vala b/src/client/api/objects/playlist/case_forms.vala index d8b2fd2..a197dfd 100644 --- a/src/client/api/objects/playlist/case_forms.vala +++ b/src/client/api/objects/playlist/case_forms.vala @@ -1,6 +1,6 @@ /* case_forms.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/liked_playlist.vala b/src/client/api/objects/playlist/liked_playlist.vala index bc6acc3..c951442 100644 --- a/src/client/api/objects/playlist/liked_playlist.vala +++ b/src/client/api/objects/playlist/liked_playlist.vala @@ -1,6 +1,6 @@ /* liked_playlist.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/made_for.vala b/src/client/api/objects/playlist/made_for.vala index 6dc398c..16c4156 100644 --- a/src/client/api/objects/playlist/made_for.vala +++ b/src/client/api/objects/playlist/made_for.vala @@ -1,6 +1,6 @@ /* made_for.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/play_counter.vala b/src/client/api/objects/playlist/play_counter.vala index e688e6d..9672818 100644 --- a/src/client/api/objects/playlist/play_counter.vala +++ b/src/client/api/objects/playlist/play_counter.vala @@ -1,6 +1,6 @@ /* play_counter.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/playlist.vala b/src/client/api/objects/playlist/playlist.vala index 1bf497d..f4d1524 100644 --- a/src/client/api/objects/playlist/playlist.vala +++ b/src/client/api/objects/playlist/playlist.vala @@ -1,6 +1,6 @@ /* playlist.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/playlist_absence.vala b/src/client/api/objects/playlist/playlist_absence.vala index 7fb0b0c..4e90def 100644 --- a/src/client/api/objects/playlist/playlist_absence.vala +++ b/src/client/api/objects/playlist/playlist_absence.vala @@ -1,6 +1,6 @@ /* playlist_absence.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/playlist_recommendations.vala b/src/client/api/objects/playlist/playlist_recommendations.vala index 2e71364..5fe88d4 100644 --- a/src/client/api/objects/playlist/playlist_recommendations.vala +++ b/src/client/api/objects/playlist/playlist_recommendations.vala @@ -1,6 +1,6 @@ /* playlist_recommendations.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/user.vala b/src/client/api/objects/playlist/user.vala index 770032e..5b7680a 100644 --- a/src/client/api/objects/playlist/user.vala +++ b/src/client/api/objects/playlist/user.vala @@ -1,6 +1,6 @@ /* user.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/queue/context.vala b/src/client/api/objects/queue/context.vala index 71f1cd8..4c72c28 100644 --- a/src/client/api/objects/queue/context.vala +++ b/src/client/api/objects/queue/context.vala @@ -1,6 +1,6 @@ /* context.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/queue/queue.vala b/src/client/api/objects/queue/queue.vala index 29ce5ed..f74ac08 100644 --- a/src/client/api/objects/queue/queue.vala +++ b/src/client/api/objects/queue/queue.vala @@ -1,6 +1,6 @@ /* queue.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/queue/short_queue.vala b/src/client/api/objects/queue/short_queue.vala index f1ea494..6c8a756 100644 --- a/src/client/api/objects/queue/short_queue.vala +++ b/src/client/api/objects/queue/short_queue.vala @@ -1,6 +1,6 @@ /* short_queue.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track/chart.vala b/src/client/api/objects/track/chart.vala index 1d0aa77..1480c04 100644 --- a/src/client/api/objects/track/chart.vala +++ b/src/client/api/objects/track/chart.vala @@ -1,6 +1,6 @@ /* lyrics_info.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track/lyrics_info.vala b/src/client/api/objects/track/lyrics_info.vala index 3fb53d1..df942f5 100644 --- a/src/client/api/objects/track/lyrics_info.vala +++ b/src/client/api/objects/track/lyrics_info.vala @@ -1,6 +1,6 @@ /* lyrics_info.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track/meta_data.vala b/src/client/api/objects/track/meta_data.vala index 7c21a10..e280aa0 100644 --- a/src/client/api/objects/track/meta_data.vala +++ b/src/client/api/objects/track/meta_data.vala @@ -1,6 +1,6 @@ /* meta_data.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track/track.vala b/src/client/api/objects/track/track.vala index 7047afa..8b48b68 100644 --- a/src/client/api/objects/track/track.vala +++ b/src/client/api/objects/track/track.vala @@ -1,6 +1,6 @@ /* track.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track_heap.vala b/src/client/api/objects/track_heap.vala index 45b5261..5a07aa5 100644 --- a/src/client/api/objects/track_heap.vala +++ b/src/client/api/objects/track_heap.vala @@ -1,6 +1,6 @@ /* track_heap.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track_short.vala b/src/client/api/objects/track_short.vala index 4cd89b0..2b5d76e 100644 --- a/src/client/api/objects/track_short.vala +++ b/src/client/api/objects/track_short.vala @@ -1,6 +1,6 @@ /* download_info.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 8929b24..a5cccd2 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -1,6 +1,6 @@ /* yam_client.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/cachier.vala b/src/client/cachier/cachier.vala index 6b88498..ade2629 100644 --- a/src/client/cachier/cachier.vala +++ b/src/client/cachier/cachier.vala @@ -1,6 +1,6 @@ /* cachier.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/controller.vala b/src/client/cachier/controller.vala index c87c1da..42a9ebb 100644 --- a/src/client/cachier/controller.vala +++ b/src/client/cachier/controller.vala @@ -1,6 +1,6 @@ /* controler.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/info_db.vala b/src/client/cachier/info_db.vala index 789a254..c00410f 100644 --- a/src/client/cachier/info_db.vala +++ b/src/client/cachier/info_db.vala @@ -1,6 +1,6 @@ /* info_db.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/job.vala b/src/client/cachier/job.vala index 9037bf1..fcec334 100644 --- a/src/client/cachier/job.vala +++ b/src/client/cachier/job.vala @@ -1,6 +1,6 @@ /* job.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/storager.vala b/src/client/cachier/storager.vala index bb39e1e..604e59a 100644 --- a/src/client/cachier/storager.vala +++ b/src/client/cachier/storager.vala @@ -1,6 +1,6 @@ /* storager.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 103e7ce..0196a52 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -1,6 +1,6 @@ /* jsoner.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/likes_controller.vala b/src/client/likes_controller.vala index 907c344..de51447 100644 --- a/src/client/likes_controller.vala +++ b/src/client/likes_controller.vala @@ -1,6 +1,6 @@ /* likes_controller.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/logger.vala b/src/client/logger.vala index b2a06c4..a033e9a 100644 --- a/src/client/logger.vala +++ b/src/client/logger.vala @@ -1,6 +1,6 @@ /* logger.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/mpris.vala b/src/client/player/mpris.vala index a3293d2..3c74d35 100644 --- a/src/client/player/mpris.vala +++ b/src/client/player/mpris.vala @@ -1,6 +1,6 @@ /* mpris.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/player.vala b/src/client/player/player.vala index 5e9e065..72cbd18 100644 --- a/src/client/player/player.vala +++ b/src/client/player/player.vala @@ -1,6 +1,6 @@ /* player.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/player_flow.vala b/src/client/player/player_flow.vala index 1c1f47f..548bc4b 100644 --- a/src/client/player/player_flow.vala +++ b/src/client/player/player_flow.vala @@ -1,6 +1,6 @@ /* player_flow.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/player_track_list.vala b/src/client/player/player_track_list.vala index 6310647..1577a29 100644 --- a/src/client/player/player_track_list.vala +++ b/src/client/player/player_track_list.vala @@ -1,6 +1,6 @@ /* player_track_list.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/track_local.vala b/src/client/player/track_local.vala index 483320b..1d8a693 100644 --- a/src/client/player/track_local.vala +++ b/src/client/player/track_local.vala @@ -1,6 +1,6 @@ /* track.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/soup_wrapper.vala b/src/client/soup_wrapper.vala index d6c5536..2d46305 100644 --- a/src/client/soup_wrapper.vala +++ b/src/client/soup_wrapper.vala @@ -1,6 +1,6 @@ /* soup_wrapper.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/talkers/abstract_talker.vala b/src/client/talkers/abstract_talker.vala index f560866..c2bab20 100644 --- a/src/client/talkers/abstract_talker.vala +++ b/src/client/talkers/abstract_talker.vala @@ -1,6 +1,6 @@ /* abstract_talker.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/talkers/yam_talker.vala b/src/client/talkers/yam_talker.vala index 5ad0d3b..f56006e 100644 --- a/src/client/talkers/yam_talker.vala +++ b/src/client/talkers/yam_talker.vala @@ -1,6 +1,6 @@ /* yam_talker.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/threader.vala b/src/client/threader.vala index 24ce533..e1e7f35 100644 --- a/src/client/threader.vala +++ b/src/client/threader.vala @@ -1,6 +1,6 @@ /* threader.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/utils.vala b/src/client/utils.vala index 97d8cf8..299e24d 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -1,6 +1,6 @@ /* utils.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/yam_object.vala b/src/client/yam_object.vala index 631718a..fb153af 100644 --- a/src/client/yam_object.vala +++ b/src/client/yam_object.vala @@ -1,6 +1,6 @@ /* yam_object.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/main.vala b/src/main.vala index 7a01d9e..83f9e95 100644 --- a/src/main.vala +++ b/src/main.vala @@ -1,6 +1,6 @@ /* main.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/main_window.vala b/src/main_window.vala index 17042de..80ebbc4 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -1,6 +1,6 @@ /* window.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/pager.vala b/src/pager.vala index 2d398d3..90442db 100644 --- a/src/pager.vala +++ b/src/pager.vala @@ -1,6 +1,6 @@ /* pager.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/utils.vala b/src/utils.vala index a80695f..9881a66 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -1,6 +1,6 @@ /* utils.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/account_info_window.vala b/src/widgets/account_info_window.vala index 63dca93..0efdb18 100644 --- a/src/widgets/account_info_window.vala +++ b/src/widgets/account_info_window.vala @@ -1,6 +1,6 @@ /* account_info_window.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/begin/begin_view.vala b/src/widgets/begin/begin_view.vala index 32d0478..8b68612 100644 --- a/src/widgets/begin/begin_view.vala +++ b/src/widgets/begin/begin_view.vala @@ -1,6 +1,6 @@ /* begin_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/begin/begin_window.vala b/src/widgets/begin/begin_window.vala index cb96b78..fc91deb 100644 --- a/src/widgets/begin/begin_window.vala +++ b/src/widgets/begin/begin_window.vala @@ -1,6 +1,6 @@ /* begin_window.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/cache_indicator/cache_indicator.vala b/src/widgets/cache_indicator/cache_indicator.vala index 90d93d2..7756e21 100644 --- a/src/widgets/cache_indicator/cache_indicator.vala +++ b/src/widgets/cache_indicator/cache_indicator.vala @@ -1,6 +1,6 @@ /* cache_indicator.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/cache_indicator/job_info_badge.vala b/src/widgets/cache_indicator/job_info_badge.vala index b53b53d..5f05bae 100644 --- a/src/widgets/cache_indicator/job_info_badge.vala +++ b/src/widgets/cache_indicator/job_info_badge.vala @@ -1,6 +1,6 @@ /* job_info_badge.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/clickable_label.vala b/src/widgets/clickable_label.vala index 4929ec9..8512c16 100644 --- a/src/widgets/clickable_label.vala +++ b/src/widgets/clickable_label.vala @@ -1,6 +1,6 @@ /* clickable_label.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/cover_image.vala b/src/widgets/cover_image.vala index f3695f3..220bdcb 100644 --- a/src/widgets/cover_image.vala +++ b/src/widgets/cover_image.vala @@ -1,6 +1,6 @@ /* cover_image.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/custom_button.vala b/src/widgets/custom_button.vala index 58b6bd0..6630926 100644 --- a/src/widgets/custom_button.vala +++ b/src/widgets/custom_button.vala @@ -1,6 +1,6 @@ /* custom_button.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/dislike_button.vala b/src/widgets/dislike_button.vala index f30ea9e..65c6c38 100644 --- a/src/widgets/dislike_button.vala +++ b/src/widgets/dislike_button.vala @@ -1,6 +1,6 @@ /* dislike_button.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/info_marks.vala b/src/widgets/info_marks.vala index 282ac61..0043e32 100644 --- a/src/widgets/info_marks.vala +++ b/src/widgets/info_marks.vala @@ -1,6 +1,6 @@ /* info_marks.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/label_button.vala b/src/widgets/label_button.vala index e15fb78..e5eb363 100644 --- a/src/widgets/label_button.vala +++ b/src/widgets/label_button.vala @@ -1,6 +1,6 @@ /* special_button.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/like_button.vala b/src/widgets/like_button.vala index ec66676..e3a1b9a 100644 --- a/src/widgets/like_button.vala +++ b/src/widgets/like_button.vala @@ -1,6 +1,6 @@ /* like_button.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/loading_widget.vala b/src/widgets/loading_widget.vala index 1a67bae..7ce757a 100644 --- a/src/widgets/loading_widget.vala +++ b/src/widgets/loading_widget.vala @@ -1,6 +1,6 @@ /* loading_widget.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/lyrics/lyrics_line.vala b/src/widgets/lyrics/lyrics_line.vala index 81e996a..5227e3d 100644 --- a/src/widgets/lyrics/lyrics_line.vala +++ b/src/widgets/lyrics/lyrics_line.vala @@ -1,6 +1,6 @@ /* lyrics_line.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/lyrics/lyrics_panel.vala b/src/widgets/lyrics/lyrics_panel.vala index bd3c3e1..d03f6c9 100644 --- a/src/widgets/lyrics/lyrics_panel.vala +++ b/src/widgets/lyrics/lyrics_panel.vala @@ -1,6 +1,6 @@ /* lyrics_panel.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/lyrics_line.vala b/src/widgets/lyrics_line.vala index a14b40b..01e909a 100644 --- a/src/widgets/lyrics_line.vala +++ b/src/widgets/lyrics_line.vala @@ -1,6 +1,6 @@ /* lyrics_line.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/lyrics_panel.vala b/src/widgets/lyrics_panel.vala index dc170ba..28d906b 100644 --- a/src/widgets/lyrics_panel.vala +++ b/src/widgets/lyrics_panel.vala @@ -1,6 +1,6 @@ /* lyrics_panel.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/options_button/options_button.vala b/src/widgets/options_button/options_button.vala index 6ec4ca6..da188c6 100644 --- a/src/widgets/options_button/options_button.vala +++ b/src/widgets/options_button/options_button.vala @@ -1,6 +1,6 @@ /* options_button.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/options_button/playlist_options_button.vala b/src/widgets/options_button/playlist_options_button.vala index e6e0b8b..4fd55ce 100644 --- a/src/widgets/options_button/playlist_options_button.vala +++ b/src/widgets/options_button/playlist_options_button.vala @@ -1,6 +1,6 @@ /* playlist_options_button.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/options_button/track_options_button.vala b/src/widgets/options_button/track_options_button.vala index 17ea443..88512aa 100644 --- a/src/widgets/options_button/track_options_button.vala +++ b/src/widgets/options_button/track_options_button.vala @@ -1,6 +1,6 @@ /* track_options_button.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/pages/abstract_loadable_page.vala b/src/widgets/pages/abstract_loadable_page.vala index aad5b74..1464bba 100644 --- a/src/widgets/pages/abstract_loadable_page.vala +++ b/src/widgets/pages/abstract_loadable_page.vala @@ -1,6 +1,6 @@ /* loadable_page.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/pages/loading_page.vala b/src/widgets/pages/loading_page.vala index 4d66c92..ac69a82 100644 --- a/src/widgets/pages/loading_page.vala +++ b/src/widgets/pages/loading_page.vala @@ -1,6 +1,6 @@ /* loading_page.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button.vala b/src/widgets/play_button/play_button.vala index 752c7d7..fd534a4 100644 --- a/src/widgets/play_button/play_button.vala +++ b/src/widgets/play_button/play_button.vala @@ -1,6 +1,6 @@ /* play_button.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button_action.vala b/src/widgets/play_button/play_button_action.vala index 9849649..b69471a 100644 --- a/src/widgets/play_button/play_button_action.vala +++ b/src/widgets/play_button/play_button_action.vala @@ -1,6 +1,6 @@ /* play_button_action.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button_context.vala b/src/widgets/play_button/play_button_context.vala index b13266c..15f2718 100644 --- a/src/widgets/play_button/play_button_context.vala +++ b/src/widgets/play_button/play_button_context.vala @@ -1,6 +1,6 @@ /* play_button_context.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button_default.vala b/src/widgets/play_button/play_button_default.vala index 0e3df31..f7cff31 100644 --- a/src/widgets/play_button/play_button_default.vala +++ b/src/widgets/play_button/play_button_default.vala @@ -1,6 +1,6 @@ /* play_button_default.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button_track.vala b/src/widgets/play_button/play_button_track.vala index d80d7c9..a0ea1c6 100644 --- a/src/widgets/play_button/play_button_track.vala +++ b/src/widgets/play_button/play_button_track.vala @@ -1,6 +1,6 @@ /* play_button_track.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/player_bar.vala b/src/widgets/player_bar.vala index 13981fd..75bba8b 100644 --- a/src/widgets/player_bar.vala +++ b/src/widgets/player_bar.vala @@ -1,6 +1,6 @@ /* player_bar.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/playlist_choose_window.vala b/src/widgets/playlist_choose_window.vala index 8d9da4c..97aba72 100644 --- a/src/widgets/playlist_choose_window.vala +++ b/src/widgets/playlist_choose_window.vala @@ -1,6 +1,6 @@ /* playlist_choose_window.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/playlist_create_button.vala b/src/widgets/playlist_create_button.vala index 84d0af5..809092a 100644 --- a/src/widgets/playlist_create_button.vala +++ b/src/widgets/playlist_create_button.vala @@ -1,6 +1,6 @@ /* playlist_create_button.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/playlist_micro.vala b/src/widgets/playlist_micro.vala index 19bdcd9..d7331af 100644 --- a/src/widgets/playlist_micro.vala +++ b/src/widgets/playlist_micro.vala @@ -1,6 +1,6 @@ /* playlist_micro.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/playlist_row.vala b/src/widgets/playlist_row.vala index 4101b57..3bb938a 100644 --- a/src/widgets/playlist_row.vala +++ b/src/widgets/playlist_row.vala @@ -1,6 +1,6 @@ /* playlist_row.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/preferences/cache_deletion_preferences.vala b/src/widgets/preferences/cache_deletion_preferences.vala index 596b6ea..17e8e03 100644 --- a/src/widgets/preferences/cache_deletion_preferences.vala +++ b/src/widgets/preferences/cache_deletion_preferences.vala @@ -1,6 +1,6 @@ /* cache_deletion_preferences.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/preferences/custom_page_preferences.vala b/src/widgets/preferences/custom_page_preferences.vala index ae89d27..8806248 100644 --- a/src/widgets/preferences/custom_page_preferences.vala +++ b/src/widgets/preferences/custom_page_preferences.vala @@ -1,6 +1,6 @@ /* custom_page_preferences.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/preferences/custom_pages_preferences.vala b/src/widgets/preferences/custom_pages_preferences.vala index 8a2de23..d07c2a6 100644 --- a/src/widgets/preferences/custom_pages_preferences.vala +++ b/src/widgets/preferences/custom_pages_preferences.vala @@ -1,6 +1,6 @@ /* custom_pages_preferences.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/preferences/preferences_window.vala b/src/widgets/preferences/preferences_window.vala index dca4d4c..09ce486 100644 --- a/src/widgets/preferences/preferences_window.vala +++ b/src/widgets/preferences/preferences_window.vala @@ -1,6 +1,6 @@ /* preferences_window.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/save_stack.vala b/src/widgets/save_stack.vala index ae1f934..198c6e0 100644 --- a/src/widgets/save_stack.vala +++ b/src/widgets/save_stack.vala @@ -1,6 +1,6 @@ /* save_stack.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/sidebar.vala b/src/widgets/sidebar.vala index 16f1cc4..a44d9ae 100644 --- a/src/widgets/sidebar.vala +++ b/src/widgets/sidebar.vala @@ -1,6 +1,6 @@ /* sidebar.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_detailed.vala b/src/widgets/track_detailed.vala index 542ba9d..be1e304 100644 --- a/src/widgets/track_detailed.vala +++ b/src/widgets/track_detailed.vala @@ -1,6 +1,6 @@ /* track_detailed.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_info_panel.vala b/src/widgets/track_info_panel.vala index b251245..3d9f22f 100644 --- a/src/widgets/track_info_panel.vala +++ b/src/widgets/track_info_panel.vala @@ -1,6 +1,6 @@ /* track_info_panel.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_list/track_list.vala b/src/widgets/track_list/track_list.vala index 87131ce..bc33671 100644 --- a/src/widgets/track_list/track_list.vala +++ b/src/widgets/track_list/track_list.vala @@ -1,6 +1,6 @@ /* track_list.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_list/track_row_base.vala b/src/widgets/track_list/track_row_base.vala index d5e3288..9d1cc6c 100644 --- a/src/widgets/track_list/track_row_base.vala +++ b/src/widgets/track_list/track_row_base.vala @@ -1,6 +1,6 @@ /* track_row.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_list/tracks_model.vala b/src/widgets/track_list/tracks_model.vala index b540af9..cbae6cd 100644 --- a/src/widgets/track_list/tracks_model.vala +++ b/src/widgets/track_list/tracks_model.vala @@ -1,6 +1,6 @@ /* tracks_model.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_list/tracks_view.vala b/src/widgets/track_list/tracks_view.vala index 894d434..ee4c39b 100644 --- a/src/widgets/track_list/tracks_view.vala +++ b/src/widgets/track_list/tracks_view.vala @@ -1,6 +1,6 @@ /* tracks_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/track_default_content.vala b/src/widgets/track_row_contents/track_default_content.vala index 66ed5d3..9adf959 100644 --- a/src/widgets/track_row_contents/track_default_content.vala +++ b/src/widgets/track_row_contents/track_default_content.vala @@ -1,6 +1,6 @@ /* track_default_content.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/track_placeholder.vala b/src/widgets/track_row_contents/track_placeholder.vala index 65127cf..fa5c079 100644 --- a/src/widgets/track_row_contents/track_placeholder.vala +++ b/src/widgets/track_row_contents/track_placeholder.vala @@ -1,6 +1,6 @@ /* track_placeholder.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/track_queue_content.vala b/src/widgets/track_row_contents/track_queue_content.vala index e16b124..4a0a0d2 100644 --- a/src/widgets/track_row_contents/track_queue_content.vala +++ b/src/widgets/track_row_contents/track_queue_content.vala @@ -1,6 +1,6 @@ /* track_queue_content.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/track_row_content.vala b/src/widgets/track_row_contents/track_row_content.vala index d3bf3f2..05cc99b 100644 --- a/src/widgets/track_row_contents/track_row_content.vala +++ b/src/widgets/track_row_contents/track_row_content.vala @@ -1,6 +1,6 @@ /* track_row_content.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/ya_track_row_content.vala b/src/widgets/track_row_contents/ya_track_row_content.vala index cfe86b2..d2f3b6f 100644 --- a/src/widgets/track_row_contents/ya_track_row_content.vala +++ b/src/widgets/track_row_contents/ya_track_row_content.vala @@ -1,6 +1,6 @@ /* track_row_content.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_rows/track_default_content.vala b/src/widgets/track_rows/track_default_content.vala index 98ac0d0..f675502 100644 --- a/src/widgets/track_rows/track_default_content.vala +++ b/src/widgets/track_rows/track_default_content.vala @@ -1,6 +1,6 @@ /* track_default_content.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_rows/track_placeholder.vala b/src/widgets/track_rows/track_placeholder.vala index 65127cf..fa5c079 100644 --- a/src/widgets/track_rows/track_placeholder.vala +++ b/src/widgets/track_rows/track_placeholder.vala @@ -1,6 +1,6 @@ /* track_placeholder.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_rows/track_queue_content.vala b/src/widgets/track_rows/track_queue_content.vala index 6c23db1..c9b070e 100644 --- a/src/widgets/track_rows/track_queue_content.vala +++ b/src/widgets/track_rows/track_queue_content.vala @@ -1,6 +1,6 @@ /* track_queue_content.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/base_view.vala b/src/widgets/views/base_view.vala index fddf476..220be79 100644 --- a/src/widgets/views/base_view.vala +++ b/src/widgets/views/base_view.vala @@ -1,6 +1,6 @@ /* base_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/cachiable_view.vala b/src/widgets/views/cachiable_view.vala index 152aaeb..b7f7ff4 100644 --- a/src/widgets/views/cachiable_view.vala +++ b/src/widgets/views/cachiable_view.vala @@ -1,6 +1,6 @@ /* cachiable_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/cant_show_view.vala b/src/widgets/views/cant_show_view.vala index 9ee8080..320b049 100644 --- a/src/widgets/views/cant_show_view.vala +++ b/src/widgets/views/cant_show_view.vala @@ -1,6 +1,6 @@ /* cant_show_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/disliked_tracks_view.vala b/src/widgets/views/disliked_tracks_view.vala index 2fd1d34..dcea937 100644 --- a/src/widgets/views/disliked_tracks_view.vala +++ b/src/widgets/views/disliked_tracks_view.vala @@ -1,6 +1,6 @@ /* disliked_tracks_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/main_view.vala b/src/widgets/views/main_view.vala index 6cf7241..2735aaa 100644 --- a/src/widgets/views/main_view.vala +++ b/src/widgets/views/main_view.vala @@ -1,6 +1,6 @@ /* main_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/playlist_view.vala b/src/widgets/views/playlist_view.vala index cec6ae6..719aa62 100644 --- a/src/widgets/views/playlist_view.vala +++ b/src/widgets/views/playlist_view.vala @@ -1,6 +1,6 @@ /* playlist_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/playlists_view.vala b/src/widgets/views/playlists_view.vala index dfd24b9..714493e 100644 --- a/src/widgets/views/playlists_view.vala +++ b/src/widgets/views/playlists_view.vala @@ -1,6 +1,6 @@ /* playlists_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/root_view.vala b/src/widgets/views/root_view.vala index 00f71e6..37a8c2a 100644 --- a/src/widgets/views/root_view.vala +++ b/src/widgets/views/root_view.vala @@ -1,6 +1,6 @@ /* base_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/with_tracks_view.vala b/src/widgets/views/with_tracks_view.vala index c8b8c6a..8457564 100644 --- a/src/widgets/views/with_tracks_view.vala +++ b/src/widgets/views/with_tracks_view.vala @@ -1,6 +1,6 @@ /* with_tracks_view.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/volume_button.vala b/src/widgets/volume_button.vala index f5e94ca..b41809a 100644 --- a/src/widgets/volume_button.vala +++ b/src/widgets/volume_button.vala @@ -1,6 +1,6 @@ /* track_detailed.vala * - * Copyright 2023 Rirusha + * Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From e84279605062e4374efc47ac9afe2bb94d8cec83 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 29 Jan 2024 18:24:53 +0800 Subject: [PATCH 075/854] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD?= =?UTF-8?q?=D0=B0=20=D0=BD=D0=B5=D0=BD=D1=83=D0=B6=D0=BD=D0=B0=D1=8F=20?= =?UTF-8?q?=D1=84=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main_window.vala | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/src/main_window.vala b/src/main_window.vala index 80ebbc4..b9bd230 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -64,16 +64,6 @@ namespace Cassette { [GtkChild] unowned Adw.HeaderBar header_bar; - public bool is_mobile_orientation { - get { - if ((float) get_width () / (float) get_height () < 0.6f) { - return true; - } else { - return false; - } - } - } - int reconnect_timer = 5; public Pager pager { get; construct; } From a82d1a8dc5064c1ad39018a88e8755a19a7f3358 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Sat, 3 Feb 2024 12:28:43 +0300 Subject: [PATCH 076/854] =?UTF-8?q?=D0=9D=D0=B5=D0=B7=D0=BD=D0=B0=D1=87?= =?UTF-8?q?=D0=B8=D1=82=D0=B5=D0=BB=D1=8C=D0=BD=D1=8B=D0=B5=20=D0=B8=D0=B7?= =?UTF-8?q?=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main_window.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main_window.vala b/src/main_window.vala index b9bd230..c7f4006 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -185,7 +185,7 @@ namespace Cassette { pager = new Pager (this, main_stack); - CassetteClient.storager.settings.bind ("window-width", this, "default-width", SettingsBindFlags.DEFAULT); + storager.settings.bind ("window-width", this, "default-width", SettingsBindFlags.DEFAULT); storager.settings.bind ("window-height", this, "default-height", SettingsBindFlags.DEFAULT); storager.settings.bind ("window-maximized", this, "maximized", SettingsBindFlags.DEFAULT); From b61a908d177e261661c410643b1b214034dc3fb6 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Sat, 3 Feb 2024 12:55:38 +0300 Subject: [PATCH 077/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=20=D0=BF=D0=B5=D1=80=D0=B5=D0=B2=D0=BE=D0=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- po/ru.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/po/ru.po b/po/ru.po index 17d66af..e135cda 100644 --- a/po/ru.po +++ b/po/ru.po @@ -331,7 +331,7 @@ msgstr "Постоянный" #: data/ui/cache_deletion_preferences.ui:155 msgid "Move saved" -msgstr "Прееместить сохраненное" +msgstr "Переместить сохраненное" #: data/ui/cache_indicator.ui:34 msgid "Show all cache jobs" From 46a23f0d17819862fdbff3a6ad24633de1cdd214 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Sun, 4 Feb 2024 03:36:29 +0300 Subject: [PATCH 078/854] https://github.com/Rirusha/Cassette/issues/21 --- data/ui/volume_button.blp | 4 ++-- src/widgets/volume_button.vala | 22 +++++++++++++++------- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/data/ui/volume_button.blp b/data/ui/volume_button.blp index ae6bcc0..492d4b5 100644 --- a/data/ui/volume_button.blp +++ b/data/ui/volume_button.blp @@ -50,8 +50,8 @@ Popover popover { adjustment: Adjustment { lower: 0.0; value: 0.0; - upper: 1.0; - page-increment: 0.1; + upper: 0.1; + page-increment: 0.01; }; } diff --git a/src/widgets/volume_button.vala b/src/widgets/volume_button.vala index b41809a..618a66a 100644 --- a/src/widgets/volume_button.vala +++ b/src/widgets/volume_button.vala @@ -47,11 +47,19 @@ namespace Cassette { block_widget (equalaizer_button, BlockReason.NOT_IMPLEMENTED); volume_inc_button.clicked.connect (() => { - volume = volume_level_scale.get_value () + 0.1; + volume = volume_level_scale.get_value () + volume_level_scale.adjustment.page_increment; + + if (volume > volume_level_scale.adjustment.upper) { + volume = volume_level_scale.adjustment.upper; + } }); volume_dec_button.clicked.connect (() => { - volume = volume_level_scale.get_value () - 0.1; + volume = volume_level_scale.get_value () - volume_level_scale.adjustment.page_increment; + + if (volume < volume_level_scale.adjustment.lower) { + volume = volume_level_scale.adjustment.lower; + } }); volume_level_scale.change_value.connect ((scroll, new_value) => { @@ -59,14 +67,14 @@ namespace Cassette { }); notify["volume"].connect (() => { - volume_inc_button.sensitive = volume != 1; - volume_dec_button.sensitive = volume != 0.0; + volume_inc_button.sensitive = volume != volume_level_scale.adjustment.upper; + volume_dec_button.sensitive = volume != volume_level_scale.adjustment.lower; - if (volume == 0.0) { + if (volume == volume_level_scale.adjustment.lower) { real_menu_button.icon_name = "adwaita-audio-volume-muted-symbolic"; - } else if (volume < 0.45) { + } else if (volume < volume_level_scale.adjustment.upper * 0.45) { real_menu_button.icon_name = "adwaita-audio-volume-low-symbolic"; - } else if (volume < 0.9) { + } else if (volume < volume_level_scale.adjustment.upper * 0.9) { real_menu_button.icon_name = "adwaita-audio-volume-medium-symbolic"; } else { real_menu_button.icon_name = "adwaita-audio-volume-high-symbolic"; From 6bc1895579c14fb5a5ca8a0e8d758240a3f4dd9c Mon Sep 17 00:00:00 2001 From: Rirusha Date: Sun, 4 Feb 2024 03:39:53 +0300 Subject: [PATCH 079/854] https://github.com/Rirusha/Cassette/issues/43 --- .../apps/adwaita-media-playlist-repeat-symbolic.svg | 4 ++++ data/icons/meson.build | 5 +++++ src/widgets/player_bar.vala | 6 +++--- 3 files changed, 12 insertions(+), 3 deletions(-) create mode 100644 data/icons/hicolor/symbolic/apps/adwaita-media-playlist-repeat-symbolic.svg diff --git a/data/icons/hicolor/symbolic/apps/adwaita-media-playlist-repeat-symbolic.svg b/data/icons/hicolor/symbolic/apps/adwaita-media-playlist-repeat-symbolic.svg new file mode 100644 index 0000000..76eb739 --- /dev/null +++ b/data/icons/hicolor/symbolic/apps/adwaita-media-playlist-repeat-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/data/icons/meson.build b/data/icons/meson.build index 43ae2f5..b870169 100644 --- a/data/icons/meson.build +++ b/data/icons/meson.build @@ -101,6 +101,11 @@ install_data( install_dir: join_paths(get_option('datadir'), 'icons', symbolic_dir) ) +install_data( + join_paths(symbolic_dir, 'adwaita-media-playlist-repeat-symbolic.svg'), + install_dir: join_paths(get_option('datadir'), 'icons', symbolic_dir) +) + install_data( join_paths(symbolic_dir, 'adwaita-replaced-symbolic.svg'), install_dir: join_paths(get_option('datadir'), 'icons', symbolic_dir) diff --git a/src/widgets/player_bar.vala b/src/widgets/player_bar.vala index 75bba8b..1f8ef25 100644 --- a/src/widgets/player_bar.vala +++ b/src/widgets/player_bar.vala @@ -417,17 +417,17 @@ namespace Cassette { void on_repeat_mode_changed () { switch (player.repeat_mode) { case Player.RepeatMode.REPEAT_ALL: - repeat_button.set_icon_name ("media-playlist-repeat-symbolic"); + repeat_button.set_icon_name ("adwaita-media-playlist-repeat-symbolic"); repeat_button.remove_css_class ("flat"); break; case Player.RepeatMode.REPEAT_ONE: - repeat_button.set_icon_name ("media-playlist-repeat-song-symbolic"); + repeat_button.set_icon_name ("adwaita-media-playlist-repeat-song-symbolic"); repeat_button.remove_css_class ("flat"); break; case Player.RepeatMode.OFF: - repeat_button.set_icon_name ("media-playlist-repeat-symbolic"); + repeat_button.set_icon_name ("adwaita-media-playlist-repeat-symbolic"); repeat_button.add_css_class ("flat"); break; } From 4d5d3e34108d90e48d38a3d09598bf0f9940fb77 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Sun, 4 Feb 2024 03:52:18 +0300 Subject: [PATCH 080/854] =?UTF-8?q?=D0=9D=D0=B5=D0=B7=D0=BD=D0=B0=D1=87?= =?UTF-8?q?=D0=B8=D1=82=D0=B5=D0=BB=D1=8C=D0=BD=D1=8B=D0=B5=20=D0=B8=D0=B7?= =?UTF-8?q?=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main_window.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main_window.vala b/src/main_window.vala index c7f4006..5f3810a 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -197,7 +197,7 @@ namespace Cassette { current_view.refresh (); }); - if (Config.POSTFIX == ".Devel") { + if (Cassette.application.is_devel) { add_css_class ("devel"); } From 6d16764ae02967d8af6eae179f750006a521fd92 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 5 Feb 2024 22:46:23 +0300 Subject: [PATCH 081/854] https://github.com/Rirusha/Cassette/issues/51 --- data/ui/volume_button.blp | 4 +- src/widgets/volume_button.vala | 72 ++++++++++++++++++++-------------- 2 files changed, 45 insertions(+), 31 deletions(-) diff --git a/data/ui/volume_button.blp b/data/ui/volume_button.blp index 492d4b5..8def7d1 100644 --- a/data/ui/volume_button.blp +++ b/data/ui/volume_button.blp @@ -50,8 +50,8 @@ Popover popover { adjustment: Adjustment { lower: 0.0; value: 0.0; - upper: 0.1; - page-increment: 0.01; + upper: 100.0; + page-increment: 10.0; }; } diff --git a/src/widgets/volume_button.vala b/src/widgets/volume_button.vala index 618a66a..0174956 100644 --- a/src/widgets/volume_button.vala +++ b/src/widgets/volume_button.vala @@ -35,7 +35,42 @@ namespace Cassette { [GtkChild] unowned Gtk.Scale volume_level_scale; - public double volume { get; set; } + double _volume = 0.0; + public double volume { + get { + return _volume; + } + set { + if (value < volume_lower) { + value = volume_lower; + } else if (value > volume_upper) { + value = volume_upper; + } + + volume_inc_button.sensitive = value != volume_upper; + volume_dec_button.sensitive = value != volume_lower; + + if (value == volume_lower) { + real_menu_button.icon_name = "adwaita-audio-volume-muted-symbolic"; + } else if (value < volume_upper * 0.45) { + real_menu_button.icon_name = "adwaita-audio-volume-low-symbolic"; + } else if (value < volume_upper * 0.9) { + real_menu_button.icon_name = "adwaita-audio-volume-medium-symbolic"; + } else { + real_menu_button.icon_name = "adwaita-audio-volume-high-symbolic"; + } + + volume_level_scale.set_value (value / mul); + + _volume = value; + } + } + + const double mul = 0.001; + + double volume_upper; + double volume_lower; + double volume_step; public VolumeButton () { Object (); @@ -46,41 +81,20 @@ namespace Cassette { block_widget (equalaizer_button, BlockReason.NOT_IMPLEMENTED); - volume_inc_button.clicked.connect (() => { - volume = volume_level_scale.get_value () + volume_level_scale.adjustment.page_increment; + volume_upper = volume_level_scale.adjustment.upper * mul; + volume_lower = volume_level_scale.adjustment.lower * mul; + volume_step = volume_level_scale.adjustment.page_increment * mul; - if (volume > volume_level_scale.adjustment.upper) { - volume = volume_level_scale.adjustment.upper; - } + volume_inc_button.clicked.connect (() => { + volume += volume_step; }); volume_dec_button.clicked.connect (() => { - volume = volume_level_scale.get_value () - volume_level_scale.adjustment.page_increment; - - if (volume < volume_level_scale.adjustment.lower) { - volume = volume_level_scale.adjustment.lower; - } + volume -= volume_step; }); volume_level_scale.change_value.connect ((scroll, new_value) => { - volume = new_value; - }); - - notify["volume"].connect (() => { - volume_inc_button.sensitive = volume != volume_level_scale.adjustment.upper; - volume_dec_button.sensitive = volume != volume_level_scale.adjustment.lower; - - if (volume == volume_level_scale.adjustment.lower) { - real_menu_button.icon_name = "adwaita-audio-volume-muted-symbolic"; - } else if (volume < volume_level_scale.adjustment.upper * 0.45) { - real_menu_button.icon_name = "adwaita-audio-volume-low-symbolic"; - } else if (volume < volume_level_scale.adjustment.upper * 0.9) { - real_menu_button.icon_name = "adwaita-audio-volume-medium-symbolic"; - } else { - real_menu_button.icon_name = "adwaita-audio-volume-high-symbolic"; - } - - volume_level_scale.set_value (volume); + volume = new_value * mul; }); } } From e85dfbf1b0ce8d09e9c44ae75a909bb8909273ca Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 5 Feb 2024 22:53:08 +0300 Subject: [PATCH 082/854] https://github.com/Rirusha/Cassette/issues/40 --- src/client/player/player.vala | 65 ++++++++++++++++------------------- 1 file changed, 29 insertions(+), 36 deletions(-) diff --git a/src/client/player/player.vala b/src/client/player/player.vala index 72cbd18..6748f1b 100644 --- a/src/client/player/player.vala +++ b/src/client/player/player.vala @@ -73,13 +73,13 @@ namespace CassetteClient.Player { switch (_player_state) { case PlayerState.NONE: - pipeline.set_state (Gst.State.NULL); + playbin.set_state (Gst.State.NULL); break; case PlayerState.PLAYING: - pipeline.set_state (Gst.State.PLAYING); + playbin.set_state (Gst.State.PLAYING); break; case PlayerState.PAUSED: - pipeline.set_state (Gst.State.PAUSED); + playbin.set_state (Gst.State.PAUSED); break; } } @@ -132,12 +132,23 @@ namespace CassetteClient.Player { } } - public double volume { get; set; } + public double volume { + get { + Value val = Value (Type.DOUBLE); + + playbin.get_property ("volume", ref val); + + return val.get_double (); + } + set { + playbin.set_property ("volume", value); + } + } public double playback_pos_sec { get { int64 cur; - pipeline.query_position (Gst.Format.TIME, out cur); + playbin.query_position (Gst.Format.TIME, out cur); return (double) cur / Gst.SECOND; } } @@ -145,7 +156,7 @@ namespace CassetteClient.Player { public int64 playback_pos_ms { get { int64 cur; - pipeline.query_position (Gst.Format.TIME, out cur); + playbin.query_position (Gst.Format.TIME, out cur); return cur / Gst.MSECOND; } } @@ -207,9 +218,11 @@ namespace CassetteClient.Player { } } - Gst.Pipeline pipeline; - Gst.Element source; - Gst.Element _volume_el; + Gst.Element playbin; + + // Gst.Pipeline pipeline; + // Gst.Element source; + // Gst.Element _volume_el; public Player () { Object (); @@ -218,28 +231,8 @@ namespace CassetteClient.Player { construct { init (null); - pipeline = new Gst.Pipeline (null); - var bus = pipeline.get_bus (); - - source = Gst.ElementFactory.make ("uridecodebin", null); - var audioconvert = Gst.ElementFactory.make ("audioconvert", null); - var audioresample = Gst.ElementFactory.make ("audioresample", null); - var sink = Gst.ElementFactory.make ("autoaudiosink", null); - _volume_el = Gst.ElementFactory.make ("volume", null); - - _volume_el.bind_property ("volume", this, "volume", BindingFlags.BIDIRECTIONAL); - - pipeline.add_many (source, audioconvert, audioresample, sink, _volume_el); - - source.pad_added.connect ((src, pad) => { - var sinkpad = audioconvert.get_static_pad ("sink"); - pad.link (sinkpad); - }); - - audioresample.link (_volume_el); - _volume_el.link (sink); - audioconvert.link (audioresample); - audioresample.link (sink); + playbin = Gst.ElementFactory.make ("playbin", null); + var bus = playbin.get_bus (); bus.add_signal_watch (); bus.message["eos"].connect ((bus, message) => { @@ -270,7 +263,7 @@ namespace CassetteClient.Player { } public void seek (int64 ms) { - pipeline.seek_simple (Gst.Format.TIME, Gst.SeekFlags.FLUSH | Gst.SeekFlags.KEY_UNIT, ms * Gst.MSECOND); + playbin.seek_simple (Gst.Format.TIME, Gst.SeekFlags.FLUSH | Gst.SeekFlags.KEY_UNIT, ms * Gst.MSECOND); } public async YaMAPI.Track? get_prev_track () { @@ -361,7 +354,7 @@ namespace CassetteClient.Player { } public void stop () { - source.set_property ("uri", Value (Type.STRING)); + playbin.set_property ("uri", Value (Type.STRING)); pause (); @@ -438,9 +431,9 @@ namespace CassetteClient.Player { string? track_uri = yield Cachier.get_track_uri (current_track.id); if (track_uri == null) { - source.set_property ("uri", Value (Type.STRING)); + playbin.set_property ("uri", Value (Type.STRING)); } else { - source.set_property ("uri", track_uri); + playbin.set_property ("uri", track_uri); play (); storager.clear_temp_track (); @@ -448,7 +441,7 @@ namespace CassetteClient.Player { } else { // У локальных треков id - их uri - source.set_property ("uri", current_track.id); + playbin.set_property ("uri", current_track.id); play (); } From d887ca67232322b9b1face6b842e5b03da0f6d6f Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 5 Feb 2024 23:05:56 +0300 Subject: [PATCH 083/854] https://github.com/Rirusha/Cassette/issues/52 --- src/client/cachier/cachier.vala | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/client/cachier/cachier.vala b/src/client/cachier/cachier.vala index ade2629..414865f 100644 --- a/src/client/cachier/cachier.vala +++ b/src/client/cachier/cachier.vala @@ -216,14 +216,25 @@ namespace CassetteClient.Cachier { threader.add_image (() => { for (int i = 0; i < cover_uris.size; i++) { - pixbufs[i] = storager.load_image (cover_uris[i]); - if (pixbufs[i] == null) { - pixbufs[i] = yam_talker.load_pixbuf (cover_uris[i]); + if (cover_uris[i] != null) { + pixbufs[i] = storager.load_image (cover_uris[i]); - if (pixbufs[i] != null && storager.settings.get_boolean ("can-cache")) { - storager.save_image (pixbufs[i], cover_uris[i], true); + if (pixbufs[i] == null) { + pixbufs[i] = yam_talker.load_pixbuf (cover_uris[i]); + + if (pixbufs[i] != null && storager.settings.get_boolean ("can-cache")) { + storager.save_image (pixbufs[i], cover_uris[i], true); + } } + + } else { + // Непонятна причина непустого массива с null внутри + // https://github.com/Rirusha/Cassette/issues/52 + Logger.info ("Hello, send this to developer: %s, %d".printf ( + yam_object.get_type ().to_string (), + cover_uris.size + )); } } From 05ccf31ec999715d560407865c1d2f580d7adadc Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 5 Feb 2024 23:11:25 +0300 Subject: [PATCH 084/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0=D1=80?= =?UTF-8?q?=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/talkers/yam_talker.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client/talkers/yam_talker.vala b/src/client/talkers/yam_talker.vala index f56006e..85d3896 100644 --- a/src/client/talkers/yam_talker.vala +++ b/src/client/talkers/yam_talker.vala @@ -132,7 +132,7 @@ namespace CassetteClient { } // Пересохраняет объект, если он уже сохранен во временную. - // Постоянными объектами занимается уже YaMObjectCachier + // Постоянными объектами занимается уже Cachier.Job var object_location = storager.object_cache_location (playlist_info.get_type (), playlist_info.oid); if (object_location.is_tmp && storager.settings.get_boolean ("can-cache")) { storager.save_object (playlist_info, true); From 6e675da349dfdfd7cd45f137d8f580ab8a324b83 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 5 Feb 2024 23:40:18 +0300 Subject: [PATCH 085/854] https://github.com/Rirusha/Cassette/issues/27 --- src/client/likes_controller.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client/likes_controller.vala b/src/client/likes_controller.vala index de51447..2706e19 100644 --- a/src/client/likes_controller.vala +++ b/src/client/likes_controller.vala @@ -62,7 +62,7 @@ namespace CassetteClient { liked_tracks_ids.clear (); foreach (var track in track_list) { - liked_tracks_ids.add (track.track.id); + liked_tracks_ids.add (track.track.id.dup ()); } } From 596d247a643d224c503580353da45a4e63832b87 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 5 Feb 2024 23:53:17 +0300 Subject: [PATCH 086/854] =?UTF-8?q?=D0=92=D1=8B=D0=B2=D0=BE=D0=B4=20=D0=BE?= =?UTF-8?q?=D1=88=D0=B8=D0=B1=D0=BA=D0=B8=20=D1=80=D0=B5=D0=B3=D0=B8=D1=81?= =?UTF-8?q?=D1=82=D1=80=D0=B0=D1=86=D0=B8=D0=B8=20=D0=BE=D0=B1=D1=8A=D0=B5?= =?UTF-8?q?=D0=BA=D1=82=D0=B0=20/org/mpris/MediaPlayer2=20=D0=B2=20=D0=BB?= =?UTF-8?q?=D0=BE=D0=B3=D0=B8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/player/mpris.vala | 3 ++- src/client/player/player_track_list.vala | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/client/player/mpris.vala b/src/client/player/mpris.vala index 3c74d35..3a57ccc 100644 --- a/src/client/player/mpris.vala +++ b/src/client/player/mpris.vala @@ -240,8 +240,9 @@ namespace CassetteClient.Mpris { con.register_object ("/org/mpris/MediaPlayer2", mpris); var mpris_player = new MprisPlayer (con); con.register_object ("/org/mpris/MediaPlayer2", mpris_player); + } catch (IOError e) { - message (e.message); + Logger.warning ("Error message: %s".printf (e.message)); } } } diff --git a/src/client/player/player_track_list.vala b/src/client/player/player_track_list.vala index 1577a29..c357357 100644 --- a/src/client/player/player_track_list.vala +++ b/src/client/player/player_track_list.vala @@ -159,7 +159,6 @@ namespace CassetteClient.Player { } public void remove_track_by_pos (uint position) { - message (position.to_string () + " : " + queue.tracks.size.to_string ()); var track_info = _queue.tracks[(int) position]; remove_track (track_info); } From ad84b67f4ba610708113618317f02f1b646b437f Mon Sep 17 00:00:00 2001 From: Rirusha Date: Mon, 5 Feb 2024 23:59:17 +0300 Subject: [PATCH 087/854] https://github.com/Rirusha/Cassette/issues/48 --- data/ui/main_window.blp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/ui/main_window.blp b/data/ui/main_window.blp index 08b1e1a..c237966 100644 --- a/data/ui/main_window.blp +++ b/data/ui/main_window.blp @@ -59,7 +59,7 @@ template $CassetteMainWindow : Adw.ApplicationWindow { sensitive: false; menu-model: avatar_menu; - tooltip-text: "Account mneu"; + tooltip-text: "Account menu"; Adw.Avatar avatar {} } From 1fb6df759206ad47158ce82b4a4e3825b40d8666 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 00:03:01 +0300 Subject: [PATCH 088/854] https://github.com/Rirusha/Cassette/issues/45 --- src/main_window.vala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main_window.vala b/src/main_window.vala index 5f3810a..2bdf25c 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -64,7 +64,7 @@ namespace Cassette { [GtkChild] unowned Adw.HeaderBar header_bar; - int reconnect_timer = 5; + int reconnect_timer = CassetteClient.TIMEOUT; public Pager pager { get; construct; } @@ -304,7 +304,7 @@ namespace Cassette { } else { info_banner.sensitive = true; info_banner.button_label = _("Reconnect"); - reconnect_timer = 5; + reconnect_timer = CassetteClient.TIMEOUT; return Source.REMOVE; } }); From 7afac9396bb2c339c380b856072260e99a1a68d3 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 00:17:33 +0300 Subject: [PATCH 089/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20=D0=BD=D0=BE=D0=B2=D1=8B=D1=85=20=D0=B4=D0=BE=D0=BD?= =?UTF-8?q?=D0=B0=D1=82=D0=B5=D1=80=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application.vala | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/application.vala b/src/application.vala index 0822e13..e8dcc30 100644 --- a/src/application.vala +++ b/src/application.vala @@ -237,7 +237,8 @@ namespace Cassette { about.add_link (_("Financial support"), "https://www.tinkoff.ru/cf/21GCxLuFuE9"); about.add_acknowledgement_section ("Donaters", { - "katze_942", "gen1s", "Semen Fomchenkov", "Oleg Shchavelev", "Fissium" + "katze_942", "gen1s", "Semen Fomchenkov", "Oleg Shchavelev", "Fissium", "fiersik", "belovmv", + "krylov_alexandr", }); about.present (); From febd39026aec612eaa6097341b21b710959b9f8e Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 00:19:26 +0300 Subject: [PATCH 090/854] https://github.com/Rirusha/Cassette/issues/44 --- src/application.vala | 17 ++++++++++------- src/widgets/views/cachiable_view.vala | 4 ++-- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/application.vala b/src/application.vala index e8dcc30..24f175e 100644 --- a/src/application.vala +++ b/src/application.vala @@ -189,14 +189,17 @@ namespace Cassette { } } - public void show_message (string message, bool is_notify = false) { - main_window.show_message (message); - - if (is_notify) { - var ntf = new Notification (APP_NAME); - ntf.set_body (message); - send_notification (null, ntf); + public void show_message (string message) { + if (main_window != null) { + if (main_window.is_active) { + main_window.show_message (message); + return; + } } + + var ntf = new Notification (APP_NAME); + ntf.set_body (message); + send_notification (null, ntf); } void on_about_action () { diff --git a/src/widgets/views/cachiable_view.vala b/src/widgets/views/cachiable_view.vala index b7f7ff4..7c42324 100644 --- a/src/widgets/views/cachiable_view.vala +++ b/src/widgets/views/cachiable_view.vala @@ -75,7 +75,7 @@ namespace Cassette { application.show_message (_("%s%s successfully cached").printf ( content_info[0], content_info[1] - ), true); + )); } download_stack.visible_child_name = "delete"; break; @@ -231,7 +231,7 @@ namespace Cassette { application.show_message (_("%s%s was removed from cache folder").printf ( content_info[0], content_info[1] - ), true); + )); } }); From 9bef5f8782506baf0e3d4bfda252fcd17cab0a43 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 00:19:44 +0300 Subject: [PATCH 091/854] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D1=82?= =?UTF-8?q?=D1=8C=20=D1=85=D1=83=D0=B4=D0=BE=D0=B6=D0=BD=D0=B8=D0=BA=D0=B0?= =?UTF-8?q?=20=D0=BD=D0=B5=D0=BF=D0=B5=D1=80=D0=B5=D0=B2=D0=BE=D0=B4=D0=B8?= =?UTF-8?q?=D0=BC=D1=8B=D0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/application.vala b/src/application.vala index 24f175e..76fc639 100644 --- a/src/application.vala +++ b/src/application.vala @@ -211,7 +211,7 @@ namespace Cassette { }; string[] artists = { RIRUSHA, - _("Arseniy Nechkin ") + "Arseniy Nechkin " }; string[] documenters = { From 3c576714215777a5cca4c37b2fd52cef42b71a13 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 00:20:21 +0300 Subject: [PATCH 092/854] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D1=82?= =?UTF-8?q?=D1=8C=20main=5Fwindow=20=D0=BA=D0=B0=D0=BA=20nullable=20get=20?= =?UTF-8?q?=D1=81=D0=B2=D0=BE=D0=B9=D1=81=D1=82=D0=B2=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application.vala | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/application.vala b/src/application.vala index 76fc639..9141d21 100644 --- a/src/application.vala +++ b/src/application.vala @@ -73,7 +73,11 @@ namespace Cassette { public signal void application_state_changed (ApplicationState new_state); - public MainWindow main_window = null; + public MainWindow? main_window { + get { + return (MainWindow?) active_window; + } + } public bool is_devel { get { @@ -144,21 +148,21 @@ namespace Cassette { public override void activate () { base.activate (); - if (active_window == null) { + if (main_window == null) { if (storager.settings.get_boolean ("force-mobile")) { is_mobile = true; } - main_window = new MainWindow (this); + var win = new MainWindow (this); - authenticator.success.connect (main_window.load_default_views); - authenticator.local.connect (main_window.load_local_views); + authenticator.success.connect (win.load_default_views); + authenticator.local.connect (win.load_local_views); if (_application_state == ApplicationState.OFFLINE) { _application_state = ApplicationState.ONLINE; } - // main_window.show.connect (() => { + // win.show.connect (() => { // // Detection device "mobility" // // TODO: that also can work on notebooks with touch... // if (storager.settings.get_boolean ("force-mobile")) { @@ -176,10 +180,10 @@ namespace Cassette { // } // }); - main_window.present (); + win.present (); if (_application_state == ApplicationState.LOCAL) { - main_window.load_local_views (); + win.load_local_views (); } else { authenticator.log_in (); } From 495d059866eb91740be50bba9e42e772966a0b0e Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 00:22:14 +0300 Subject: [PATCH 093/854] https://github.com/Rirusha/Cassette/issues/39 --- data/ui/player_bar.blp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/data/ui/player_bar.blp b/data/ui/player_bar.blp index 7b35654..8f18881 100644 --- a/data/ui/player_bar.blp +++ b/data/ui/player_bar.blp @@ -67,10 +67,9 @@ template $CassettePlayerBar : Adw.Bin { hexpand: true; spacing: 4; - $CassetteLikeButton like_button { + $CassetteDislikeButton dislike_button { is-flat: true; is-circular: true; - object-content-type: "track"; } Button shuffle_button { @@ -137,9 +136,10 @@ template $CassettePlayerBar : Adw.Bin { tooltip-text: _("Change repeat mode"); } - $CassetteDislikeButton dislike_button { + $CassetteLikeButton like_button { is-flat: true; is-circular: true; + object-content-type: "track"; } }; } From d152e8269baf78e92a07130a2d1739f89b926de1 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 03:00:55 +0300 Subject: [PATCH 094/854] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D0=BC=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D0=B8=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BD=D0=BD=D0=B5?= =?UTF-8?q?=D0=BA=D1=82=20=D0=BA=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D1=8E=20=D1=81=D0=BE=D1=81=D1=82=D0=BE=D1=8F=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=BF=D1=80=D0=B8=D0=BB=D0=BE=D0=B6=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=B2=20=D0=BF=D1=80=D0=B8=D0=BB=D0=BE=D0=B6?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application.vala | 15 +++++++++++++++ src/main_window.vala | 14 -------------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/application.vala b/src/application.vala index 9141d21..5e2c3e1 100644 --- a/src/application.vala +++ b/src/application.vala @@ -123,6 +123,21 @@ namespace Cassette { storager.settings.bind ("application-state", this, "application-state", SettingsBindFlags.DEFAULT); + application.application_state_changed.connect ((new_state) => { + switch (new_state) { + case ApplicationState.ONLINE: + show_message (_("Connection restored")); + main_window?.set_online (); + break; + case ApplicationState.OFFLINE: + show_message (_("Connection problems")); + main_window?.set_offline (); + break; + default: + break; + } + }); + ActionEntry[] action_entries = { { "about", on_about_action }, { "preferences", on_preferences_action }, diff --git a/src/main_window.vala b/src/main_window.vala index 2bdf25c..a55d75c 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -201,20 +201,6 @@ namespace Cassette { add_css_class ("devel"); } - Cassette.application.application_state_changed.connect ((new_state) => { - switch (new_state) { - case ApplicationState.ONLINE: - show_message (_("Connection restored")); - set_online (); - break; - case ApplicationState.OFFLINE: - set_offline (); - break; - default: - break; - } - }); - SimpleAction search_action = new SimpleAction ("search", null); search_action.activate.connect (() => { button_search.active = true; From 5695ee0ed84b89a01cddb3614c481f4d753c9a10 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 03:02:14 +0300 Subject: [PATCH 095/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20show=5Fmessage=20=D0=BD=D0=B0=20show=5Ftoast=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D0=B1=D0=BE=D0=BB=D1=8C=D1=88=D0=B5=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=BD=D1=8F=D1=82=D0=BD=D0=BE=D1=81=D1=82=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application.vala | 4 ++-- src/main_window.vala | 12 ++++++------ src/pager.vala | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/application.vala b/src/application.vala index 5e2c3e1..c515f75 100644 --- a/src/application.vala +++ b/src/application.vala @@ -211,9 +211,9 @@ namespace Cassette { public void show_message (string message) { if (main_window != null) { if (main_window.is_active) { - main_window.show_message (message); + main_window.show_toast (message); return; - } + } } var ntf = new Notification (APP_NAME); diff --git a/src/main_window.vala b/src/main_window.vala index a55d75c..70a08a6 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -270,7 +270,7 @@ namespace Cassette { } } - public void show_message (string message) { + public void show_toast (string message) { var toast = new Adw.Toast (message); toast_overlay.add_toast (toast); @@ -318,7 +318,7 @@ namespace Cassette { string url = clipboard.read_text_async.end (res); if (!url.has_prefix ("https://music.yandex.ru/")) { - show_message (_("Can't parse clipboard content")); + show_toast (_("Can't parse clipboard content")); return; } @@ -334,7 +334,7 @@ namespace Cassette { // playlists ~ if (parts[2] == "playlists") { if (parts.length == 3) { - show_message (_("Users view not implemented yet")); + show_toast (_("Users view not implemented yet")); return; // playlists 3 @@ -350,7 +350,7 @@ namespace Cassette { // string album_id = parts[1]; if (parts.length == 2) { - show_message (_("Albums view not implemented yet")); + show_toast (_("Albums view not implemented yet")); // album 87894564 track 54654 } else { @@ -364,12 +364,12 @@ namespace Cassette { show_track_by_id.begin (track_id); - show_message (_("Albums view not implemented yet")); + show_toast (_("Albums view not implemented yet")); } } } catch (Error e) { - show_message (_("Can't parse clipboard content")); + show_toast (_("Can't parse clipboard content")); } }); } diff --git a/src/pager.vala b/src/pager.vala index 90442db..da76059 100644 --- a/src/pager.vala +++ b/src/pager.vala @@ -161,7 +161,7 @@ namespace Cassette { PAGER_PAGES_DELIMETER in new_page_title ) ) { - window.show_message (_("Can't set title \"%s\" to page").printf (new_page_title)); + window.show_toast (_("Can't set title \"%s\" to page").printf (new_page_title)); return; } if ( @@ -172,7 +172,7 @@ namespace Cassette { PAGER_PAGES_DELIMETER in new_page_icon_name ) ) { - window.show_message (_("Can't set icon with name \"%s\" to page").printf (new_page_icon_name)); + window.show_toast (_("Can't set icon with name \"%s\" to page").printf (new_page_icon_name)); return; } @@ -198,13 +198,13 @@ namespace Cassette { public void add_custom_page (PageInfo page_info) { if (_custom_pages.size == 6) { - window.show_message (_("Reached max page count")); + window.show_toast (_("Reached max page count")); return; } foreach (var pg_i in _custom_pages) { if (pg_i.id == page_info.id) { - window.show_message (_("Page '%s' already added").printf (page_info.title)); + window.show_toast (_("Page '%s' already added").printf (page_info.title)); return; } } From af2c1475faf70a777a7a25aaa28596c832117a80 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 03:02:51 +0300 Subject: [PATCH 096/854] https://github.com/Rirusha/Cassette/issues/17 --- data/io.github.Rirusha.Cassette.desktop.in | 1 + 1 file changed, 1 insertion(+) diff --git a/data/io.github.Rirusha.Cassette.desktop.in b/data/io.github.Rirusha.Cassette.desktop.in index aa48cf3..efe074c 100644 --- a/data/io.github.Rirusha.Cassette.desktop.in +++ b/data/io.github.Rirusha.Cassette.desktop.in @@ -1,4 +1,5 @@ [Desktop Entry] +# Translators: this should be translated Name=Cassette GenericName=Cassette Comment=Unofficial Yandex.Music client for GNOME From ea22261f593fe3550734058d1fa5a0f900ef7bd1 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 03:03:30 +0300 Subject: [PATCH 097/854] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=BB=D0=B5=20GenericName=20=D0=B8=20=D0=B4=D0=BE?= =?UTF-8?q?=D0=B1=D0=B0=D0=B2=D0=B8=D1=82=D1=8C=20X-GNOME-UsesNotification?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/io.github.Rirusha.Cassette.Devel.desktop.in | 4 ++-- data/io.github.Rirusha.Cassette.desktop.in | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/data/io.github.Rirusha.Cassette.Devel.desktop.in b/data/io.github.Rirusha.Cassette.Devel.desktop.in index 8c12fae..56e2e90 100644 --- a/data/io.github.Rirusha.Cassette.Devel.desktop.in +++ b/data/io.github.Rirusha.Cassette.Devel.desktop.in @@ -1,6 +1,5 @@ [Desktop Entry] Name=Cassette Devel -GenericName=Cassette Devel Comment=Unofficial Yandex.Music client for GNOME (Development mode) Keywords=yandex;yandex music;yam;music; Exec=cassette @@ -8,4 +7,5 @@ Icon=io.github.Rirusha.Cassette.Devel Terminal=false Type=Application Categories=Music; -StartupNotify=true \ No newline at end of file +StartupNotify=true +X-GNOME-UsesNotifications=true \ No newline at end of file diff --git a/data/io.github.Rirusha.Cassette.desktop.in b/data/io.github.Rirusha.Cassette.desktop.in index efe074c..aef764f 100644 --- a/data/io.github.Rirusha.Cassette.desktop.in +++ b/data/io.github.Rirusha.Cassette.desktop.in @@ -1,7 +1,6 @@ [Desktop Entry] # Translators: this should be translated Name=Cassette -GenericName=Cassette Comment=Unofficial Yandex.Music client for GNOME Keywords=yandex;yandex music;yam;music; Exec=cassette @@ -9,4 +8,5 @@ Icon=io.github.Rirusha.Cassette Terminal=false Type=Application Categories=Music; -StartupNotify=true \ No newline at end of file +StartupNotify=true +X-GNOME-UsesNotifications=true \ No newline at end of file From 08c02144beadeca5d4d0d0323e6a4e52666df129 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Tue, 6 Feb 2024 03:31:37 +0300 Subject: [PATCH 098/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D1=84=D0=BE=D1=80=D0=BC=D0=B0=D1=82=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20https://github.com?= =?UTF-8?q?/Rirusha/Cassette/actions/runs/7792515951/job/21250658063?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application.vala | 2 +- src/widgets/volume_button.vala | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/application.vala b/src/application.vala index c515f75..baa2399 100644 --- a/src/application.vala +++ b/src/application.vala @@ -260,7 +260,7 @@ namespace Cassette { about.add_acknowledgement_section ("Donaters", { "katze_942", "gen1s", "Semen Fomchenkov", "Oleg Shchavelev", "Fissium", "fiersik", "belovmv", - "krylov_alexandr", + "krylov_alexandr" }); about.present (); diff --git a/src/widgets/volume_button.vala b/src/widgets/volume_button.vala index 0174956..6bce934 100644 --- a/src/widgets/volume_button.vala +++ b/src/widgets/volume_button.vala @@ -60,13 +60,13 @@ namespace Cassette { real_menu_button.icon_name = "adwaita-audio-volume-high-symbolic"; } - volume_level_scale.set_value (value / mul); + volume_level_scale.set_value (value / MUL); _volume = value; } } - const double mul = 0.001; + const double MUL = 0.001; double volume_upper; double volume_lower; @@ -81,9 +81,9 @@ namespace Cassette { block_widget (equalaizer_button, BlockReason.NOT_IMPLEMENTED); - volume_upper = volume_level_scale.adjustment.upper * mul; - volume_lower = volume_level_scale.adjustment.lower * mul; - volume_step = volume_level_scale.adjustment.page_increment * mul; + volume_upper = volume_level_scale.adjustment.upper * MUL; + volume_lower = volume_level_scale.adjustment.lower * MUL; + volume_step = volume_level_scale.adjustment.page_increment * MUL; volume_inc_button.clicked.connect (() => { volume += volume_step; @@ -94,7 +94,7 @@ namespace Cassette { }); volume_level_scale.change_value.connect ((scroll, new_value) => { - volume = new_value * mul; + volume = new_value * MUL; }); } } From 6efbe045b06962cd976559d6781adf4cfc413a88 Mon Sep 17 00:00:00 2001 From: Rirusha Date: Thu, 8 Feb 2024 23:44:22 +0300 Subject: [PATCH 099/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BD=D0=B0=D0=B7=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=20=D1=81=D0=B2=D0=BE=D0=B9=D1=81=D1=82=D0=B2=D0=B0=20=D0=BD?= =?UTF-8?q?=D0=B0=20=D0=BF=D0=BE=D0=BD=D1=8F=D1=82=D0=BD=D0=BE=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/widgets/play_button/play_button.vala | 9 +++++---- src/widgets/play_button/play_button_track.vala | 2 +- src/widgets/playlist_micro.vala | 4 ++-- .../track_row_contents/track_default_content.vala | 4 ++-- src/widgets/track_row_contents/track_queue_content.vala | 2 +- 5 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/widgets/play_button/play_button.vala b/src/widgets/play_button/play_button.vala index fd534a4..79bb004 100644 --- a/src/widgets/play_button/play_button.vala +++ b/src/widgets/play_button/play_button.vala @@ -21,7 +21,8 @@ namespace Cassette { public abstract class PlayButton : CustomButton { - public bool is_playing { get; private set; default = false; } + // Не реальное воспроизведение, а считает ли плеер данный трек текущим + public bool is_current_playing { get; private set; default = false; } construct { tooltip_text = _("Play/Pause"); @@ -31,17 +32,17 @@ namespace Cassette { public void set_playing () { icon_name = "adwaita-media-playback-pause-symbolic"; - is_playing = true; + is_current_playing = true; } public void set_paused () { icon_name = "adwaita-media-playback-start-symbolic"; - is_playing = true; + is_current_playing = true; } public void set_stopped () { set_paused (); - is_playing = false; + is_current_playing = false; } } } diff --git a/src/widgets/play_button/play_button_track.vala b/src/widgets/play_button/play_button_track.vala index a0ea1c6..4678777 100644 --- a/src/widgets/play_button/play_button_track.vala +++ b/src/widgets/play_button/play_button_track.vala @@ -79,7 +79,7 @@ namespace Cassette { set_paused (); return; } - if (is_playing == true) { + if (is_current_playing == true) { set_stopped (); } } diff --git a/src/widgets/playlist_micro.vala b/src/widgets/playlist_micro.vala index d7331af..123985c 100644 --- a/src/widgets/playlist_micro.vala +++ b/src/widgets/playlist_micro.vala @@ -110,13 +110,13 @@ namespace Cassette { buttons_box.visible = true; }); motion_controller.leave.connect ((mc) => { - if (!play_button.is_playing) { + if (!play_button.is_current_playing) { buttons_box.visible = false; } }); play_button.notify["is-playing"].connect (() => { - if (play_button.is_playing) { + if (play_button.is_current_playing) { buttons_box.visible = true; } else { buttons_box.visible = false; diff --git a/src/widgets/track_row_contents/track_default_content.vala b/src/widgets/track_row_contents/track_default_content.vala index 9adf959..cecc099 100644 --- a/src/widgets/track_row_contents/track_default_content.vala +++ b/src/widgets/track_row_contents/track_default_content.vala @@ -78,7 +78,7 @@ namespace Cassette { info_panel.show_play_button (); }); motion_controller.leave.connect ((mc) => { - if (!play_button.is_playing) { + if (!play_button.is_current_playing) { info_panel.show_cover (); } }); @@ -169,7 +169,7 @@ namespace Cassette { actions.add_action (save_action); play_button.notify["is-playing"].connect (() => { - if (play_button.is_playing) { + if (play_button.is_current_playing) { info_panel.show_play_button (); add_css_class ("track-row-playing"); } else { diff --git a/src/widgets/track_row_contents/track_queue_content.vala b/src/widgets/track_row_contents/track_queue_content.vala index 4a0a0d2..4adc306 100644 --- a/src/widgets/track_row_contents/track_queue_content.vala +++ b/src/widgets/track_row_contents/track_queue_content.vala @@ -97,7 +97,7 @@ namespace Cassette { insert_action_group ("track", actions); play_button.notify["is-playing"].connect (() => { - if (play_button.is_playing) { + if (play_button.is_current_playing) { add_css_class ("track-row-playing"); } else { remove_css_class ("track-row-playing"); From 703a01b4b62f2752151a2e33cf78646bb5bc922c Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 9 Feb 2024 00:39:52 +0300 Subject: [PATCH 100/854] https://github.com/Rirusha/Cassette/issues/35 --- data/ui/playlist_view.ui | 2 +- src/widgets/play_button/play_button.vala | 32 ++++++++++++++++++++---- 2 files changed, 28 insertions(+), 6 deletions(-) diff --git a/data/ui/playlist_view.ui b/data/ui/playlist_view.ui index e164466..7ccf53b 100644 --- a/data/ui/playlist_view.ui +++ b/data/ui/playlist_view.ui @@ -142,7 +142,7 @@ false center true - Play + true diff --git a/src/widgets/play_button/play_button.vala b/src/widgets/play_button/play_button.vala index 79bb004..7e12cc2 100644 --- a/src/widgets/play_button/play_button.vala +++ b/src/widgets/play_button/play_button.vala @@ -24,19 +24,41 @@ namespace Cassette { // Не реальное воспроизведение, а считает ли плеер данный трек текущим public bool is_current_playing { get; private set; default = false; } - construct { - tooltip_text = _("Play/Pause"); + // Фактическое воспроизведение трека + protected bool is_playing { get; set; default = false; } - icon_name = "adwaita-media-playback-start-symbolic"; + // Отображать ли текст с воспроизведении + public bool with_label { get; construct; default = false; } + + construct { + notify["is-playing"].connect (on_is_playing_notify); + on_is_playing_notify (); + } + + void on_is_playing_notify () { + if (is_playing) { + tooltip_text = _("Pause"); + icon_name = "adwaita-media-playback-pause-symbolic"; + if (with_label) { + label = _("Pause"); + } + + } else { + tooltip_text = _("Play"); + icon_name = "adwaita-media-playback-start-symbolic"; + if (with_label) { + label = _("Play"); + } + } } public void set_playing () { - icon_name = "adwaita-media-playback-pause-symbolic"; + is_playing = true; is_current_playing = true; } public void set_paused () { - icon_name = "adwaita-media-playback-start-symbolic"; + is_playing = false; is_current_playing = true; } From 0f1e9be3cc1ede48a46b2f48d2c959a28b124df9 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 9 Feb 2024 03:23:00 +0300 Subject: [PATCH 101/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BF=D0=B8=D1=80=D0=B0=D0=B9=D1=82?= =?UTF-8?q?=20=D0=B2=20=D1=84=D0=B0=D0=B9=D0=BB=D0=B0=D1=85=20=D1=81=20?= =?UTF-8?q?=D0=BA=D0=BE=D0=B4=D0=BE=D0=BC,=20=D1=83=D0=B1=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=20=D0=BD=D0=B0=D0=B7=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20?= =?UTF-8?q?=D1=84=D0=B0=D0=B9=D0=BB=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application.vala | 4 +--- src/authenticator.vala | 4 +--- src/client/api/difference_builder.vala | 4 +--- src/client/api/objects/account_info/account.vala | 4 +--- src/client/api/objects/account_info/account_info.vala | 4 +--- src/client/api/objects/account_info/avatar_info.vala | 4 +--- src/client/api/objects/account_info/master_hub.vala | 4 +--- src/client/api/objects/account_info/passport_phone.vala | 4 +--- src/client/api/objects/account_info/permissions.vala | 4 +--- src/client/api/objects/account_info/plus.vala | 4 +--- src/client/api/objects/additional_info/lyrics.vala | 4 +--- src/client/api/objects/additional_info/lyrics_major.vala | 4 +--- src/client/api/objects/additional_info/similar_tracks.vala | 4 +--- src/client/api/objects/album/album.vala | 4 +--- src/client/api/objects/album/label.vala | 4 +--- src/client/api/objects/album/volume.vala | 4 +--- src/client/api/objects/api_error.vala | 4 +--- src/client/api/objects/artist/artist.vala | 4 +--- src/client/api/objects/artist/counts.vala | 4 +--- src/client/api/objects/artist/link.vala | 4 +--- src/client/api/objects/artist/ratings.vala | 4 +--- src/client/api/objects/cover.vala | 4 +--- src/client/api/objects/download_info.vala | 4 +--- src/client/api/objects/playlist/case_forms.vala | 4 +--- src/client/api/objects/playlist/liked_playlist.vala | 4 +--- src/client/api/objects/playlist/made_for.vala | 4 +--- src/client/api/objects/playlist/play_counter.vala | 4 +--- src/client/api/objects/playlist/playlist.vala | 4 +--- src/client/api/objects/playlist/playlist_absence.vala | 4 +--- src/client/api/objects/playlist/playlist_recommendations.vala | 4 +--- src/client/api/objects/playlist/user.vala | 4 +--- src/client/api/objects/queue/context.vala | 4 +--- src/client/api/objects/queue/queue.vala | 4 +--- src/client/api/objects/queue/short_queue.vala | 4 +--- src/client/api/objects/track/chart.vala | 4 +--- src/client/api/objects/track/lyrics_info.vala | 4 +--- src/client/api/objects/track/meta_data.vala | 4 +--- src/client/api/objects/track/track.vala | 4 +--- src/client/api/objects/track_heap.vala | 4 +--- src/client/api/objects/track_short.vala | 4 +--- src/client/api/yam_client.vala | 4 +--- src/client/cachier/cachier.vala | 4 +--- src/client/cachier/controller.vala | 4 +--- src/client/cachier/info_db.vala | 4 +--- src/client/cachier/job.vala | 4 +--- src/client/cachier/storager.vala | 4 +--- src/client/jsoner.vala | 4 +--- src/client/likes_controller.vala | 4 +--- src/client/logger.vala | 4 +--- src/client/player/mpris.vala | 4 +--- src/client/player/player.vala | 4 +--- src/client/player/player_flow.vala | 4 +--- src/client/player/player_track_list.vala | 4 +--- src/client/player/track_local.vala | 4 +--- src/client/soup_wrapper.vala | 4 +--- src/client/talkers/abstract_talker.vala | 4 +--- src/client/talkers/yam_talker.vala | 4 +--- src/client/threader.vala | 4 +--- src/client/utils.vala | 4 +--- src/client/yam_object.vala | 4 +--- src/main.vala | 4 +--- src/main_window.vala | 4 +--- src/pager.vala | 4 +--- src/utils.vala | 4 +--- src/widgets/account_info_window.vala | 4 +--- src/widgets/begin/begin_view.vala | 4 +--- src/widgets/begin/begin_window.vala | 4 +--- src/widgets/cache_indicator/cache_indicator.vala | 4 +--- src/widgets/cache_indicator/job_info_badge.vala | 4 +--- src/widgets/clickable_label.vala | 4 +--- src/widgets/cover_image.vala | 4 +--- src/widgets/custom_button.vala | 4 +--- src/widgets/dislike_button.vala | 4 +--- src/widgets/info_marks.vala | 4 +--- src/widgets/label_button.vala | 4 +--- src/widgets/like_button.vala | 4 +--- src/widgets/loading_widget.vala | 4 +--- src/widgets/lyrics/lyrics_line.vala | 4 +--- src/widgets/lyrics/lyrics_panel.vala | 4 +--- src/widgets/lyrics_line.vala | 4 +--- src/widgets/lyrics_panel.vala | 4 +--- src/widgets/options_button/options_button.vala | 4 +--- src/widgets/options_button/playlist_options_button.vala | 4 +--- src/widgets/options_button/track_options_button.vala | 4 +--- src/widgets/pages/abstract_loadable_page.vala | 4 +--- src/widgets/pages/loading_page.vala | 4 +--- src/widgets/play_button/play_button.vala | 4 +--- src/widgets/play_button/play_button_action.vala | 4 +--- src/widgets/play_button/play_button_context.vala | 4 +--- src/widgets/play_button/play_button_default.vala | 4 +--- src/widgets/play_button/play_button_track.vala | 4 +--- src/widgets/player_bar.vala | 4 +--- src/widgets/playlist_choose_window.vala | 4 +--- src/widgets/playlist_create_button.vala | 4 +--- src/widgets/playlist_micro.vala | 4 +--- src/widgets/playlist_row.vala | 4 +--- src/widgets/preferences/cache_deletion_preferences.vala | 4 +--- src/widgets/preferences/custom_page_preferences.vala | 4 +--- src/widgets/preferences/custom_pages_preferences.vala | 4 +--- src/widgets/preferences/preferences_window.vala | 4 +--- src/widgets/save_stack.vala | 4 +--- src/widgets/sidebar.vala | 4 +--- src/widgets/track_detailed.vala | 4 +--- src/widgets/track_info_panel.vala | 4 +--- src/widgets/track_list/track_list.vala | 4 +--- src/widgets/track_list/track_row_base.vala | 4 +--- src/widgets/track_list/tracks_model.vala | 4 +--- src/widgets/track_list/tracks_view.vala | 4 +--- src/widgets/track_row_contents/track_default_content.vala | 4 +--- src/widgets/track_row_contents/track_placeholder.vala | 4 +--- src/widgets/track_row_contents/track_queue_content.vala | 4 +--- src/widgets/track_row_contents/track_row_content.vala | 4 +--- src/widgets/track_row_contents/ya_track_row_content.vala | 4 +--- src/widgets/track_rows/track_default_content.vala | 4 +--- src/widgets/track_rows/track_placeholder.vala | 4 +--- src/widgets/track_rows/track_queue_content.vala | 4 +--- src/widgets/views/base_view.vala | 4 +--- src/widgets/views/cachiable_view.vala | 4 +--- src/widgets/views/cant_show_view.vala | 4 +--- src/widgets/views/disliked_tracks_view.vala | 4 +--- src/widgets/views/main_view.vala | 4 +--- src/widgets/views/playlist_view.vala | 4 +--- src/widgets/views/playlists_view.vala | 4 +--- src/widgets/views/root_view.vala | 4 +--- src/widgets/views/with_tracks_view.vala | 4 +--- src/widgets/volume_button.vala | 4 +--- 126 files changed, 126 insertions(+), 378 deletions(-) diff --git a/src/application.vala b/src/application.vala index baa2399..b04346d 100644 --- a/src/application.vala +++ b/src/application.vala @@ -1,6 +1,4 @@ -/* application.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/authenticator.vala b/src/authenticator.vala index 8c5acfc..ce55312 100644 --- a/src/authenticator.vala +++ b/src/authenticator.vala @@ -1,6 +1,4 @@ -/* authenticator.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/difference_builder.vala b/src/client/api/difference_builder.vala index 52177c1..51046d1 100644 --- a/src/client/api/difference_builder.vala +++ b/src/client/api/difference_builder.vala @@ -1,6 +1,4 @@ -/* difference_builder.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/account.vala b/src/client/api/objects/account_info/account.vala index d30cdbc..00dae98 100644 --- a/src/client/api/objects/account_info/account.vala +++ b/src/client/api/objects/account_info/account.vala @@ -1,6 +1,4 @@ -/* account.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/account_info.vala b/src/client/api/objects/account_info/account_info.vala index 637baaa..e2bed3c 100644 --- a/src/client/api/objects/account_info/account_info.vala +++ b/src/client/api/objects/account_info/account_info.vala @@ -1,6 +1,4 @@ -/* account_info.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/avatar_info.vala b/src/client/api/objects/account_info/avatar_info.vala index fc13352..8e77a79 100644 --- a/src/client/api/objects/account_info/avatar_info.vala +++ b/src/client/api/objects/account_info/avatar_info.vala @@ -1,6 +1,4 @@ -/* account_info.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/master_hub.vala b/src/client/api/objects/account_info/master_hub.vala index 14be9d5..2b3ba78 100644 --- a/src/client/api/objects/account_info/master_hub.vala +++ b/src/client/api/objects/account_info/master_hub.vala @@ -1,6 +1,4 @@ -/* master_hub.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/passport_phone.vala b/src/client/api/objects/account_info/passport_phone.vala index 20a49cd..4c1a898 100644 --- a/src/client/api/objects/account_info/passport_phone.vala +++ b/src/client/api/objects/account_info/passport_phone.vala @@ -1,6 +1,4 @@ -/* passport_phone.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/permissions.vala b/src/client/api/objects/account_info/permissions.vala index 9563da9..d55cb41 100644 --- a/src/client/api/objects/account_info/permissions.vala +++ b/src/client/api/objects/account_info/permissions.vala @@ -1,6 +1,4 @@ -/* permissions.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/account_info/plus.vala b/src/client/api/objects/account_info/plus.vala index b829404..00c9b5e 100644 --- a/src/client/api/objects/account_info/plus.vala +++ b/src/client/api/objects/account_info/plus.vala @@ -1,6 +1,4 @@ -/* plus.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/additional_info/lyrics.vala b/src/client/api/objects/additional_info/lyrics.vala index c787f9e..3fff8e1 100644 --- a/src/client/api/objects/additional_info/lyrics.vala +++ b/src/client/api/objects/additional_info/lyrics.vala @@ -1,6 +1,4 @@ -/* lyrics.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/additional_info/lyrics_major.vala b/src/client/api/objects/additional_info/lyrics_major.vala index 03d2873..f7423b3 100644 --- a/src/client/api/objects/additional_info/lyrics_major.vala +++ b/src/client/api/objects/additional_info/lyrics_major.vala @@ -1,6 +1,4 @@ -/* lyrics_major.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/additional_info/similar_tracks.vala b/src/client/api/objects/additional_info/similar_tracks.vala index 7c5c0f6..76cce46 100644 --- a/src/client/api/objects/additional_info/similar_tracks.vala +++ b/src/client/api/objects/additional_info/similar_tracks.vala @@ -1,6 +1,4 @@ -/* similar_tracks.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/album/album.vala b/src/client/api/objects/album/album.vala index d600542..09357ad 100644 --- a/src/client/api/objects/album/album.vala +++ b/src/client/api/objects/album/album.vala @@ -1,6 +1,4 @@ -/* album.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/album/label.vala b/src/client/api/objects/album/label.vala index 2a69f1c..e7bfc9d 100644 --- a/src/client/api/objects/album/label.vala +++ b/src/client/api/objects/album/label.vala @@ -1,6 +1,4 @@ -/* label.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/album/volume.vala b/src/client/api/objects/album/volume.vala index a7b2a0c..048c49f 100644 --- a/src/client/api/objects/album/volume.vala +++ b/src/client/api/objects/album/volume.vala @@ -1,6 +1,4 @@ -/* volume.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/api_error.vala b/src/client/api/objects/api_error.vala index 797d76f..9ddef09 100644 --- a/src/client/api/objects/api_error.vala +++ b/src/client/api/objects/api_error.vala @@ -1,6 +1,4 @@ -/* api_error.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/artist/artist.vala b/src/client/api/objects/artist/artist.vala index d409737..714095f 100644 --- a/src/client/api/objects/artist/artist.vala +++ b/src/client/api/objects/artist/artist.vala @@ -1,6 +1,4 @@ -/* artist.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/artist/counts.vala b/src/client/api/objects/artist/counts.vala index 42723f1..3af0cd8 100644 --- a/src/client/api/objects/artist/counts.vala +++ b/src/client/api/objects/artist/counts.vala @@ -1,6 +1,4 @@ -/* counts.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/artist/link.vala b/src/client/api/objects/artist/link.vala index c1baf4a..5f95c4c 100644 --- a/src/client/api/objects/artist/link.vala +++ b/src/client/api/objects/artist/link.vala @@ -1,6 +1,4 @@ -/* link.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/artist/ratings.vala b/src/client/api/objects/artist/ratings.vala index 664269f..878252b 100644 --- a/src/client/api/objects/artist/ratings.vala +++ b/src/client/api/objects/artist/ratings.vala @@ -1,6 +1,4 @@ -/* ratings.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/cover.vala b/src/client/api/objects/cover.vala index ed0a1d0..1be5b5d 100644 --- a/src/client/api/objects/cover.vala +++ b/src/client/api/objects/cover.vala @@ -1,6 +1,4 @@ -/* cover.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/download_info.vala b/src/client/api/objects/download_info.vala index da889b2..e000499 100644 --- a/src/client/api/objects/download_info.vala +++ b/src/client/api/objects/download_info.vala @@ -1,6 +1,4 @@ -/* download_info.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/case_forms.vala b/src/client/api/objects/playlist/case_forms.vala index a197dfd..8e18521 100644 --- a/src/client/api/objects/playlist/case_forms.vala +++ b/src/client/api/objects/playlist/case_forms.vala @@ -1,6 +1,4 @@ -/* case_forms.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/liked_playlist.vala b/src/client/api/objects/playlist/liked_playlist.vala index c951442..2f6ac19 100644 --- a/src/client/api/objects/playlist/liked_playlist.vala +++ b/src/client/api/objects/playlist/liked_playlist.vala @@ -1,6 +1,4 @@ -/* liked_playlist.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/made_for.vala b/src/client/api/objects/playlist/made_for.vala index 16c4156..1977bda 100644 --- a/src/client/api/objects/playlist/made_for.vala +++ b/src/client/api/objects/playlist/made_for.vala @@ -1,6 +1,4 @@ -/* made_for.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/play_counter.vala b/src/client/api/objects/playlist/play_counter.vala index 9672818..bc2872e 100644 --- a/src/client/api/objects/playlist/play_counter.vala +++ b/src/client/api/objects/playlist/play_counter.vala @@ -1,6 +1,4 @@ -/* play_counter.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/playlist.vala b/src/client/api/objects/playlist/playlist.vala index f4d1524..d074715 100644 --- a/src/client/api/objects/playlist/playlist.vala +++ b/src/client/api/objects/playlist/playlist.vala @@ -1,6 +1,4 @@ -/* playlist.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/playlist_absence.vala b/src/client/api/objects/playlist/playlist_absence.vala index 4e90def..4254d39 100644 --- a/src/client/api/objects/playlist/playlist_absence.vala +++ b/src/client/api/objects/playlist/playlist_absence.vala @@ -1,6 +1,4 @@ -/* playlist_absence.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/playlist_recommendations.vala b/src/client/api/objects/playlist/playlist_recommendations.vala index 5fe88d4..264f56f 100644 --- a/src/client/api/objects/playlist/playlist_recommendations.vala +++ b/src/client/api/objects/playlist/playlist_recommendations.vala @@ -1,6 +1,4 @@ -/* playlist_recommendations.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/playlist/user.vala b/src/client/api/objects/playlist/user.vala index 5b7680a..191e126 100644 --- a/src/client/api/objects/playlist/user.vala +++ b/src/client/api/objects/playlist/user.vala @@ -1,6 +1,4 @@ -/* user.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/queue/context.vala b/src/client/api/objects/queue/context.vala index 4c72c28..496d00c 100644 --- a/src/client/api/objects/queue/context.vala +++ b/src/client/api/objects/queue/context.vala @@ -1,6 +1,4 @@ -/* context.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/queue/queue.vala b/src/client/api/objects/queue/queue.vala index f74ac08..07d67ec 100644 --- a/src/client/api/objects/queue/queue.vala +++ b/src/client/api/objects/queue/queue.vala @@ -1,6 +1,4 @@ -/* queue.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/queue/short_queue.vala b/src/client/api/objects/queue/short_queue.vala index 6c8a756..79c7e3a 100644 --- a/src/client/api/objects/queue/short_queue.vala +++ b/src/client/api/objects/queue/short_queue.vala @@ -1,6 +1,4 @@ -/* short_queue.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track/chart.vala b/src/client/api/objects/track/chart.vala index 1480c04..c74be30 100644 --- a/src/client/api/objects/track/chart.vala +++ b/src/client/api/objects/track/chart.vala @@ -1,6 +1,4 @@ -/* lyrics_info.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track/lyrics_info.vala b/src/client/api/objects/track/lyrics_info.vala index df942f5..6b5d679 100644 --- a/src/client/api/objects/track/lyrics_info.vala +++ b/src/client/api/objects/track/lyrics_info.vala @@ -1,6 +1,4 @@ -/* lyrics_info.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track/meta_data.vala b/src/client/api/objects/track/meta_data.vala index e280aa0..dea4d3b 100644 --- a/src/client/api/objects/track/meta_data.vala +++ b/src/client/api/objects/track/meta_data.vala @@ -1,6 +1,4 @@ -/* meta_data.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track/track.vala b/src/client/api/objects/track/track.vala index 8b48b68..74b9a20 100644 --- a/src/client/api/objects/track/track.vala +++ b/src/client/api/objects/track/track.vala @@ -1,6 +1,4 @@ -/* track.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track_heap.vala b/src/client/api/objects/track_heap.vala index 5a07aa5..23db8cd 100644 --- a/src/client/api/objects/track_heap.vala +++ b/src/client/api/objects/track_heap.vala @@ -1,6 +1,4 @@ -/* track_heap.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/objects/track_short.vala b/src/client/api/objects/track_short.vala index 2b5d76e..5b72266 100644 --- a/src/client/api/objects/track_short.vala +++ b/src/client/api/objects/track_short.vala @@ -1,6 +1,4 @@ -/* download_info.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index a5cccd2..efe1cd2 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -1,6 +1,4 @@ -/* yam_client.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/cachier.vala b/src/client/cachier/cachier.vala index 414865f..fe6f962 100644 --- a/src/client/cachier/cachier.vala +++ b/src/client/cachier/cachier.vala @@ -1,6 +1,4 @@ -/* cachier.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/controller.vala b/src/client/cachier/controller.vala index 42a9ebb..c1b10a6 100644 --- a/src/client/cachier/controller.vala +++ b/src/client/cachier/controller.vala @@ -1,6 +1,4 @@ -/* controler.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/info_db.vala b/src/client/cachier/info_db.vala index c00410f..a5295eb 100644 --- a/src/client/cachier/info_db.vala +++ b/src/client/cachier/info_db.vala @@ -1,6 +1,4 @@ -/* info_db.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/job.vala b/src/client/cachier/job.vala index fcec334..56af0a7 100644 --- a/src/client/cachier/job.vala +++ b/src/client/cachier/job.vala @@ -1,6 +1,4 @@ -/* job.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/cachier/storager.vala b/src/client/cachier/storager.vala index 604e59a..0f1b385 100644 --- a/src/client/cachier/storager.vala +++ b/src/client/cachier/storager.vala @@ -1,6 +1,4 @@ -/* storager.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 0196a52..8ec3998 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -1,6 +1,4 @@ -/* jsoner.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/likes_controller.vala b/src/client/likes_controller.vala index 2706e19..76522e2 100644 --- a/src/client/likes_controller.vala +++ b/src/client/likes_controller.vala @@ -1,6 +1,4 @@ -/* likes_controller.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/logger.vala b/src/client/logger.vala index a033e9a..8c595ad 100644 --- a/src/client/logger.vala +++ b/src/client/logger.vala @@ -1,6 +1,4 @@ -/* logger.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/mpris.vala b/src/client/player/mpris.vala index 3a57ccc..c6d9256 100644 --- a/src/client/player/mpris.vala +++ b/src/client/player/mpris.vala @@ -1,6 +1,4 @@ -/* mpris.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/player.vala b/src/client/player/player.vala index 6748f1b..259cdef 100644 --- a/src/client/player/player.vala +++ b/src/client/player/player.vala @@ -1,6 +1,4 @@ -/* player.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/player_flow.vala b/src/client/player/player_flow.vala index 548bc4b..85d2954 100644 --- a/src/client/player/player_flow.vala +++ b/src/client/player/player_flow.vala @@ -1,6 +1,4 @@ -/* player_flow.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/player_track_list.vala b/src/client/player/player_track_list.vala index c357357..d6b95c6 100644 --- a/src/client/player/player_track_list.vala +++ b/src/client/player/player_track_list.vala @@ -1,6 +1,4 @@ -/* player_track_list.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/player/track_local.vala b/src/client/player/track_local.vala index 1d8a693..7a267eb 100644 --- a/src/client/player/track_local.vala +++ b/src/client/player/track_local.vala @@ -1,6 +1,4 @@ -/* track.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/soup_wrapper.vala b/src/client/soup_wrapper.vala index 2d46305..6880cc8 100644 --- a/src/client/soup_wrapper.vala +++ b/src/client/soup_wrapper.vala @@ -1,6 +1,4 @@ -/* soup_wrapper.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/talkers/abstract_talker.vala b/src/client/talkers/abstract_talker.vala index c2bab20..fb6a1d9 100644 --- a/src/client/talkers/abstract_talker.vala +++ b/src/client/talkers/abstract_talker.vala @@ -1,6 +1,4 @@ -/* abstract_talker.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/talkers/yam_talker.vala b/src/client/talkers/yam_talker.vala index 85d3896..3b1b258 100644 --- a/src/client/talkers/yam_talker.vala +++ b/src/client/talkers/yam_talker.vala @@ -1,6 +1,4 @@ -/* yam_talker.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/threader.vala b/src/client/threader.vala index e1e7f35..11b7ca9 100644 --- a/src/client/threader.vala +++ b/src/client/threader.vala @@ -1,6 +1,4 @@ -/* threader.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/utils.vala b/src/client/utils.vala index 299e24d..7406fca 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -1,6 +1,4 @@ -/* utils.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/client/yam_object.vala b/src/client/yam_object.vala index fb153af..90399ca 100644 --- a/src/client/yam_object.vala +++ b/src/client/yam_object.vala @@ -1,6 +1,4 @@ -/* yam_object.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/main.vala b/src/main.vala index 83f9e95..00c190b 100644 --- a/src/main.vala +++ b/src/main.vala @@ -1,6 +1,4 @@ -/* main.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/main_window.vala b/src/main_window.vala index 70a08a6..efcbb16 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -1,6 +1,4 @@ -/* window.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/pager.vala b/src/pager.vala index da76059..ca1082d 100644 --- a/src/pager.vala +++ b/src/pager.vala @@ -1,6 +1,4 @@ -/* pager.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/utils.vala b/src/utils.vala index 9881a66..3c558f7 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -1,6 +1,4 @@ -/* utils.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/account_info_window.vala b/src/widgets/account_info_window.vala index 0efdb18..14de6ef 100644 --- a/src/widgets/account_info_window.vala +++ b/src/widgets/account_info_window.vala @@ -1,6 +1,4 @@ -/* account_info_window.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/begin/begin_view.vala b/src/widgets/begin/begin_view.vala index 8b68612..98e5f96 100644 --- a/src/widgets/begin/begin_view.vala +++ b/src/widgets/begin/begin_view.vala @@ -1,6 +1,4 @@ -/* begin_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/begin/begin_window.vala b/src/widgets/begin/begin_window.vala index fc91deb..41e92c5 100644 --- a/src/widgets/begin/begin_window.vala +++ b/src/widgets/begin/begin_window.vala @@ -1,6 +1,4 @@ -/* begin_window.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/cache_indicator/cache_indicator.vala b/src/widgets/cache_indicator/cache_indicator.vala index 7756e21..900e215 100644 --- a/src/widgets/cache_indicator/cache_indicator.vala +++ b/src/widgets/cache_indicator/cache_indicator.vala @@ -1,6 +1,4 @@ -/* cache_indicator.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/cache_indicator/job_info_badge.vala b/src/widgets/cache_indicator/job_info_badge.vala index 5f05bae..dbf47c7 100644 --- a/src/widgets/cache_indicator/job_info_badge.vala +++ b/src/widgets/cache_indicator/job_info_badge.vala @@ -1,6 +1,4 @@ -/* job_info_badge.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/clickable_label.vala b/src/widgets/clickable_label.vala index 8512c16..32d3769 100644 --- a/src/widgets/clickable_label.vala +++ b/src/widgets/clickable_label.vala @@ -1,6 +1,4 @@ -/* clickable_label.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/cover_image.vala b/src/widgets/cover_image.vala index 220bdcb..7cb320e 100644 --- a/src/widgets/cover_image.vala +++ b/src/widgets/cover_image.vala @@ -1,6 +1,4 @@ -/* cover_image.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/custom_button.vala b/src/widgets/custom_button.vala index 6630926..16f37af 100644 --- a/src/widgets/custom_button.vala +++ b/src/widgets/custom_button.vala @@ -1,6 +1,4 @@ -/* custom_button.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/dislike_button.vala b/src/widgets/dislike_button.vala index 65c6c38..228b46b 100644 --- a/src/widgets/dislike_button.vala +++ b/src/widgets/dislike_button.vala @@ -1,6 +1,4 @@ -/* dislike_button.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/info_marks.vala b/src/widgets/info_marks.vala index 0043e32..ed801fd 100644 --- a/src/widgets/info_marks.vala +++ b/src/widgets/info_marks.vala @@ -1,6 +1,4 @@ -/* info_marks.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/label_button.vala b/src/widgets/label_button.vala index e5eb363..dfbf9dd 100644 --- a/src/widgets/label_button.vala +++ b/src/widgets/label_button.vala @@ -1,6 +1,4 @@ -/* special_button.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/like_button.vala b/src/widgets/like_button.vala index e3a1b9a..d36b312 100644 --- a/src/widgets/like_button.vala +++ b/src/widgets/like_button.vala @@ -1,6 +1,4 @@ -/* like_button.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/loading_widget.vala b/src/widgets/loading_widget.vala index 7ce757a..dbf9fc5 100644 --- a/src/widgets/loading_widget.vala +++ b/src/widgets/loading_widget.vala @@ -1,6 +1,4 @@ -/* loading_widget.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/lyrics/lyrics_line.vala b/src/widgets/lyrics/lyrics_line.vala index 5227e3d..d82dfbf 100644 --- a/src/widgets/lyrics/lyrics_line.vala +++ b/src/widgets/lyrics/lyrics_line.vala @@ -1,6 +1,4 @@ -/* lyrics_line.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/lyrics/lyrics_panel.vala b/src/widgets/lyrics/lyrics_panel.vala index d03f6c9..a9a45d4 100644 --- a/src/widgets/lyrics/lyrics_panel.vala +++ b/src/widgets/lyrics/lyrics_panel.vala @@ -1,6 +1,4 @@ -/* lyrics_panel.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/lyrics_line.vala b/src/widgets/lyrics_line.vala index 01e909a..a622ca2 100644 --- a/src/widgets/lyrics_line.vala +++ b/src/widgets/lyrics_line.vala @@ -1,6 +1,4 @@ -/* lyrics_line.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/lyrics_panel.vala b/src/widgets/lyrics_panel.vala index 28d906b..1ca93ec 100644 --- a/src/widgets/lyrics_panel.vala +++ b/src/widgets/lyrics_panel.vala @@ -1,6 +1,4 @@ -/* lyrics_panel.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/options_button/options_button.vala b/src/widgets/options_button/options_button.vala index da188c6..879e614 100644 --- a/src/widgets/options_button/options_button.vala +++ b/src/widgets/options_button/options_button.vala @@ -1,6 +1,4 @@ -/* options_button.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/options_button/playlist_options_button.vala b/src/widgets/options_button/playlist_options_button.vala index 4fd55ce..3babd6d 100644 --- a/src/widgets/options_button/playlist_options_button.vala +++ b/src/widgets/options_button/playlist_options_button.vala @@ -1,6 +1,4 @@ -/* playlist_options_button.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/options_button/track_options_button.vala b/src/widgets/options_button/track_options_button.vala index 88512aa..215bbf9 100644 --- a/src/widgets/options_button/track_options_button.vala +++ b/src/widgets/options_button/track_options_button.vala @@ -1,6 +1,4 @@ -/* track_options_button.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/pages/abstract_loadable_page.vala b/src/widgets/pages/abstract_loadable_page.vala index 1464bba..af65947 100644 --- a/src/widgets/pages/abstract_loadable_page.vala +++ b/src/widgets/pages/abstract_loadable_page.vala @@ -1,6 +1,4 @@ -/* loadable_page.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/pages/loading_page.vala b/src/widgets/pages/loading_page.vala index ac69a82..b1e4e98 100644 --- a/src/widgets/pages/loading_page.vala +++ b/src/widgets/pages/loading_page.vala @@ -1,6 +1,4 @@ -/* loading_page.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button.vala b/src/widgets/play_button/play_button.vala index 7e12cc2..16fd25d 100644 --- a/src/widgets/play_button/play_button.vala +++ b/src/widgets/play_button/play_button.vala @@ -1,6 +1,4 @@ -/* play_button.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button_action.vala b/src/widgets/play_button/play_button_action.vala index b69471a..08007a2 100644 --- a/src/widgets/play_button/play_button_action.vala +++ b/src/widgets/play_button/play_button_action.vala @@ -1,6 +1,4 @@ -/* play_button_action.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button_context.vala b/src/widgets/play_button/play_button_context.vala index 15f2718..ceceb68 100644 --- a/src/widgets/play_button/play_button_context.vala +++ b/src/widgets/play_button/play_button_context.vala @@ -1,6 +1,4 @@ -/* play_button_context.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button_default.vala b/src/widgets/play_button/play_button_default.vala index f7cff31..0efba3b 100644 --- a/src/widgets/play_button/play_button_default.vala +++ b/src/widgets/play_button/play_button_default.vala @@ -1,6 +1,4 @@ -/* play_button_default.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/play_button/play_button_track.vala b/src/widgets/play_button/play_button_track.vala index 4678777..3dece00 100644 --- a/src/widgets/play_button/play_button_track.vala +++ b/src/widgets/play_button/play_button_track.vala @@ -1,6 +1,4 @@ -/* play_button_track.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/player_bar.vala b/src/widgets/player_bar.vala index 1f8ef25..e62fde1 100644 --- a/src/widgets/player_bar.vala +++ b/src/widgets/player_bar.vala @@ -1,6 +1,4 @@ -/* player_bar.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/playlist_choose_window.vala b/src/widgets/playlist_choose_window.vala index 97aba72..f6a3af8 100644 --- a/src/widgets/playlist_choose_window.vala +++ b/src/widgets/playlist_choose_window.vala @@ -1,6 +1,4 @@ -/* playlist_choose_window.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/playlist_create_button.vala b/src/widgets/playlist_create_button.vala index 809092a..9e958d6 100644 --- a/src/widgets/playlist_create_button.vala +++ b/src/widgets/playlist_create_button.vala @@ -1,6 +1,4 @@ -/* playlist_create_button.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/playlist_micro.vala b/src/widgets/playlist_micro.vala index 123985c..0397f21 100644 --- a/src/widgets/playlist_micro.vala +++ b/src/widgets/playlist_micro.vala @@ -1,6 +1,4 @@ -/* playlist_micro.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/playlist_row.vala b/src/widgets/playlist_row.vala index 3bb938a..97fd2f3 100644 --- a/src/widgets/playlist_row.vala +++ b/src/widgets/playlist_row.vala @@ -1,6 +1,4 @@ -/* playlist_row.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/preferences/cache_deletion_preferences.vala b/src/widgets/preferences/cache_deletion_preferences.vala index 17e8e03..c7db95e 100644 --- a/src/widgets/preferences/cache_deletion_preferences.vala +++ b/src/widgets/preferences/cache_deletion_preferences.vala @@ -1,6 +1,4 @@ -/* cache_deletion_preferences.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/preferences/custom_page_preferences.vala b/src/widgets/preferences/custom_page_preferences.vala index 8806248..22bf920 100644 --- a/src/widgets/preferences/custom_page_preferences.vala +++ b/src/widgets/preferences/custom_page_preferences.vala @@ -1,6 +1,4 @@ -/* custom_page_preferences.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/preferences/custom_pages_preferences.vala b/src/widgets/preferences/custom_pages_preferences.vala index d07c2a6..6b2256b 100644 --- a/src/widgets/preferences/custom_pages_preferences.vala +++ b/src/widgets/preferences/custom_pages_preferences.vala @@ -1,6 +1,4 @@ -/* custom_pages_preferences.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/preferences/preferences_window.vala b/src/widgets/preferences/preferences_window.vala index 09ce486..f429abd 100644 --- a/src/widgets/preferences/preferences_window.vala +++ b/src/widgets/preferences/preferences_window.vala @@ -1,6 +1,4 @@ -/* preferences_window.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/save_stack.vala b/src/widgets/save_stack.vala index 198c6e0..46b6b15 100644 --- a/src/widgets/save_stack.vala +++ b/src/widgets/save_stack.vala @@ -1,6 +1,4 @@ -/* save_stack.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/sidebar.vala b/src/widgets/sidebar.vala index a44d9ae..0ca75ae 100644 --- a/src/widgets/sidebar.vala +++ b/src/widgets/sidebar.vala @@ -1,6 +1,4 @@ -/* sidebar.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_detailed.vala b/src/widgets/track_detailed.vala index be1e304..200dc9b 100644 --- a/src/widgets/track_detailed.vala +++ b/src/widgets/track_detailed.vala @@ -1,6 +1,4 @@ -/* track_detailed.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_info_panel.vala b/src/widgets/track_info_panel.vala index 3d9f22f..a19c116 100644 --- a/src/widgets/track_info_panel.vala +++ b/src/widgets/track_info_panel.vala @@ -1,6 +1,4 @@ -/* track_info_panel.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_list/track_list.vala b/src/widgets/track_list/track_list.vala index bc33671..1c5049a 100644 --- a/src/widgets/track_list/track_list.vala +++ b/src/widgets/track_list/track_list.vala @@ -1,6 +1,4 @@ -/* track_list.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_list/track_row_base.vala b/src/widgets/track_list/track_row_base.vala index 9d1cc6c..b0afef6 100644 --- a/src/widgets/track_list/track_row_base.vala +++ b/src/widgets/track_list/track_row_base.vala @@ -1,6 +1,4 @@ -/* track_row.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_list/tracks_model.vala b/src/widgets/track_list/tracks_model.vala index cbae6cd..b0afef6 100644 --- a/src/widgets/track_list/tracks_model.vala +++ b/src/widgets/track_list/tracks_model.vala @@ -1,6 +1,4 @@ -/* tracks_model.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_list/tracks_view.vala b/src/widgets/track_list/tracks_view.vala index ee4c39b..b0afef6 100644 --- a/src/widgets/track_list/tracks_view.vala +++ b/src/widgets/track_list/tracks_view.vala @@ -1,6 +1,4 @@ -/* tracks_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/track_default_content.vala b/src/widgets/track_row_contents/track_default_content.vala index cecc099..b1d418a 100644 --- a/src/widgets/track_row_contents/track_default_content.vala +++ b/src/widgets/track_row_contents/track_default_content.vala @@ -1,6 +1,4 @@ -/* track_default_content.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/track_placeholder.vala b/src/widgets/track_row_contents/track_placeholder.vala index fa5c079..81a5393 100644 --- a/src/widgets/track_row_contents/track_placeholder.vala +++ b/src/widgets/track_row_contents/track_placeholder.vala @@ -1,6 +1,4 @@ -/* track_placeholder.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/track_queue_content.vala b/src/widgets/track_row_contents/track_queue_content.vala index 4adc306..afa600c 100644 --- a/src/widgets/track_row_contents/track_queue_content.vala +++ b/src/widgets/track_row_contents/track_queue_content.vala @@ -1,6 +1,4 @@ -/* track_queue_content.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/track_row_content.vala b/src/widgets/track_row_contents/track_row_content.vala index 05cc99b..e1219ae 100644 --- a/src/widgets/track_row_contents/track_row_content.vala +++ b/src/widgets/track_row_contents/track_row_content.vala @@ -1,6 +1,4 @@ -/* track_row_content.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_row_contents/ya_track_row_content.vala b/src/widgets/track_row_contents/ya_track_row_content.vala index d2f3b6f..d6c33bc 100644 --- a/src/widgets/track_row_contents/ya_track_row_content.vala +++ b/src/widgets/track_row_contents/ya_track_row_content.vala @@ -1,6 +1,4 @@ -/* track_row_content.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_rows/track_default_content.vala b/src/widgets/track_rows/track_default_content.vala index f675502..c654dfe 100644 --- a/src/widgets/track_rows/track_default_content.vala +++ b/src/widgets/track_rows/track_default_content.vala @@ -1,6 +1,4 @@ -/* track_default_content.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_rows/track_placeholder.vala b/src/widgets/track_rows/track_placeholder.vala index fa5c079..81a5393 100644 --- a/src/widgets/track_rows/track_placeholder.vala +++ b/src/widgets/track_rows/track_placeholder.vala @@ -1,6 +1,4 @@ -/* track_placeholder.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/track_rows/track_queue_content.vala b/src/widgets/track_rows/track_queue_content.vala index c9b070e..59c9bc8 100644 --- a/src/widgets/track_rows/track_queue_content.vala +++ b/src/widgets/track_rows/track_queue_content.vala @@ -1,6 +1,4 @@ -/* track_queue_content.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/base_view.vala b/src/widgets/views/base_view.vala index 220be79..7d6d605 100644 --- a/src/widgets/views/base_view.vala +++ b/src/widgets/views/base_view.vala @@ -1,6 +1,4 @@ -/* base_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/cachiable_view.vala b/src/widgets/views/cachiable_view.vala index 7c42324..886acec 100644 --- a/src/widgets/views/cachiable_view.vala +++ b/src/widgets/views/cachiable_view.vala @@ -1,6 +1,4 @@ -/* cachiable_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/cant_show_view.vala b/src/widgets/views/cant_show_view.vala index 320b049..dbb5adb 100644 --- a/src/widgets/views/cant_show_view.vala +++ b/src/widgets/views/cant_show_view.vala @@ -1,6 +1,4 @@ -/* cant_show_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/disliked_tracks_view.vala b/src/widgets/views/disliked_tracks_view.vala index dcea937..e1ece4a 100644 --- a/src/widgets/views/disliked_tracks_view.vala +++ b/src/widgets/views/disliked_tracks_view.vala @@ -1,6 +1,4 @@ -/* disliked_tracks_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/main_view.vala b/src/widgets/views/main_view.vala index 2735aaa..39191f9 100644 --- a/src/widgets/views/main_view.vala +++ b/src/widgets/views/main_view.vala @@ -1,6 +1,4 @@ -/* main_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/playlist_view.vala b/src/widgets/views/playlist_view.vala index 719aa62..51052e7 100644 --- a/src/widgets/views/playlist_view.vala +++ b/src/widgets/views/playlist_view.vala @@ -1,6 +1,4 @@ -/* playlist_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/playlists_view.vala b/src/widgets/views/playlists_view.vala index 714493e..14cd056 100644 --- a/src/widgets/views/playlists_view.vala +++ b/src/widgets/views/playlists_view.vala @@ -1,6 +1,4 @@ -/* playlists_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/root_view.vala b/src/widgets/views/root_view.vala index 37a8c2a..6839905 100644 --- a/src/widgets/views/root_view.vala +++ b/src/widgets/views/root_view.vala @@ -1,6 +1,4 @@ -/* base_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/views/with_tracks_view.vala b/src/widgets/views/with_tracks_view.vala index 8457564..87bdcfe 100644 --- a/src/widgets/views/with_tracks_view.vala +++ b/src/widgets/views/with_tracks_view.vala @@ -1,6 +1,4 @@ -/* with_tracks_view.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/widgets/volume_button.vala b/src/widgets/volume_button.vala index 6bce934..0384a2f 100644 --- a/src/widgets/volume_button.vala +++ b/src/widgets/volume_button.vala @@ -1,6 +1,4 @@ -/* track_detailed.vala - * - * Copyright 2023-2024 Rirusha +/* Copyright 2023-2024 Rirusha * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From 9a09e44cc51b394529319d9daa92963ef867cab4 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 11 Feb 2024 01:25:50 +0300 Subject: [PATCH 102/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BD=D0=B5=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=D1=8C=D0=BD=D0=BE=D0=B5=20=D0=BD=D0=B0=D0=B7=D0=B2=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D1=81=D0=B2=D0=BE=D0=B9=D1=81=D1=82=D0=B2?= =?UTF-8?q?=D0=B0=20=D0=B2=20notify?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/widgets/play_button/play_button.vala | 2 +- src/widgets/track_row_contents/track_default_content.vala | 2 +- src/widgets/track_row_contents/track_queue_content.vala | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/widgets/play_button/play_button.vala b/src/widgets/play_button/play_button.vala index 16fd25d..6840855 100644 --- a/src/widgets/play_button/play_button.vala +++ b/src/widgets/play_button/play_button.vala @@ -61,7 +61,7 @@ namespace Cassette { } public void set_stopped () { - set_paused (); + is_playing = false; is_current_playing = false; } } diff --git a/src/widgets/track_row_contents/track_default_content.vala b/src/widgets/track_row_contents/track_default_content.vala index b1d418a..1aa2924 100644 --- a/src/widgets/track_row_contents/track_default_content.vala +++ b/src/widgets/track_row_contents/track_default_content.vala @@ -166,7 +166,7 @@ namespace Cassette { }); actions.add_action (save_action); - play_button.notify["is-playing"].connect (() => { + play_button.notify["is-current-playing"].connect (() => { if (play_button.is_current_playing) { info_panel.show_play_button (); add_css_class ("track-row-playing"); diff --git a/src/widgets/track_row_contents/track_queue_content.vala b/src/widgets/track_row_contents/track_queue_content.vala index afa600c..8d09b9f 100644 --- a/src/widgets/track_row_contents/track_queue_content.vala +++ b/src/widgets/track_row_contents/track_queue_content.vala @@ -94,7 +94,7 @@ namespace Cassette { insert_action_group ("track", actions); - play_button.notify["is-playing"].connect (() => { + play_button.notify["is-current-playing"].connect (() => { if (play_button.is_current_playing) { add_css_class ("track-row-playing"); } else { From 7257fc8d54210551234f285e18a5270d0a57e1f1 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 11 Feb 2024 01:26:02 +0300 Subject: [PATCH 103/854] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20=D0=BB=D0=B8=D1=88=D0=BD=D0=B8=D0=B5=20=D1=84=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../track_rows/track_default_content.vala | 220 ------------------ .../track_rows/track_local_content.vala | 0 src/widgets/track_rows/track_placeholder.vala | 27 --- .../track_rows/track_queue_content.vala | 129 ---------- 4 files changed, 376 deletions(-) delete mode 100644 src/widgets/track_rows/track_default_content.vala delete mode 100644 src/widgets/track_rows/track_local_content.vala delete mode 100644 src/widgets/track_rows/track_placeholder.vala delete mode 100644 src/widgets/track_rows/track_queue_content.vala diff --git a/src/widgets/track_rows/track_default_content.vala b/src/widgets/track_rows/track_default_content.vala deleted file mode 100644 index c654dfe..0000000 --- a/src/widgets/track_rows/track_default_content.vala +++ /dev/null @@ -1,220 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-or-later - */ - - -using CassetteClient; - - -namespace Cassette { - [GtkTemplate (ui = "/com/github/Rirusha/Cassette/ui/track_default_content.ui")] - public class TrackDefault : Gtk.Frame { - - [GtkChild] - unowned CoverImage cover_image; - [GtkChild] - unowned PlayButtonTrack play_button; - [GtkChild] - unowned Gtk.Label track_name_label; - [GtkChild] - unowned Gtk.Label track_version_label; - [GtkChild] - unowned InfoMarks info_marks; - [GtkChild] - unowned Gtk.Label track_authors_label; - [GtkChild] - unowned SaveStack save_stack; - [GtkChild] - unowned LikeButton like_button; - [GtkChild] - unowned DislikeButton dislike_button; - [GtkChild] - unowned Gtk.Revealer dislike_button_revealer; - [GtkChild] - unowned Gtk.Label duration_label; - [GtkChild] - unowned TrackOptionsButton track_options_button; - - public YaMAPI.Track track_info { get; construct set; } - public HasTrackList yam_object { get; construct set; } - - public TrackDefault (YaMAPI.Track track_info, HasTrackList yam_object) { - Object (track_info: track_info, yam_object: yam_object); - } - - // ! Не стоит использовать конструктор with_dislike_button со списком, в котором есть пользовательские треки - public TrackDefault.with_dislike_button (YaMAPI.Track track_info, HasTrackList yam_object) { - Object (track_info: track_info, yam_object: yam_object); - dislike_button_revealer.reveal_child = true; - } - - construct { - play_button.clicked_not_playing.connect (form_queue); - - var actions = new SimpleActionGroup (); - - var playlist_info = yam_object as YaMAPI.Playlist; - if (playlist_info != null) { - if (playlist_info.kind != "3") { - track_options_button.add_remove_from_playlist_action (); - - SimpleAction remove_from_playlist_action = new SimpleAction ("remove-from-playlist", null); - remove_from_playlist_action.activate.connect (() => { - remove_from_playlist_async.begin (); - }); - actions.add_action (remove_from_playlist_action); - } - } - - if (track_info.ugc == false) { - SimpleAction share_action = new SimpleAction ("share", null); - share_action.activate.connect (() => { - track_share (track_info); - }); - actions.add_action (share_action); - } - - SimpleAction add_to_playlist_action = new SimpleAction ("add-to-playlist", null); - add_to_playlist_action.activate.connect (() => { - var win = new PlaylistChooseWindow (track_info) { - transient_for = Cassette.application.main_window, - }; - win.present (); - }); - actions.add_action (add_to_playlist_action); - - SimpleAction add_next_action = new SimpleAction ("add-next", null); - add_next_action.activate.connect (() => { - player.add_track (track_info, true); - }); - actions.add_action (add_next_action); - - SimpleAction add_end_action = new SimpleAction ("add-end", null); - add_end_action.activate.connect (() => { - player.add_track (track_info, false); - }); - actions.add_action (add_end_action); - - track_options_button.add_save_action (); - SimpleAction save_action = new SimpleAction ("save", null); - save_action.activate.connect (() => { - save_track.begin (track_info); - }); - actions.add_action (save_action); - - play_button.notify["is-playing"].connect (() => { - if (play_button.is_playing) { - play_button.visible = true; - add_css_class ("playing-track"); - } else { - play_button.visible = false; - remove_css_class ("playing-track"); - } - }); - - insert_action_group ("track", actions); - - set_values (); - } - - public async void remove_from_playlist_async () { - var track_info = _track_info; - var playlist = (YaMAPI.Playlist) yam_object; - - int position = -1; - for (int i = 0; i < playlist.tracks.size; i++) { - if (track_info.id == playlist.tracks[i].id) { - position = i; - break; - } - } - - threader.add (() => { - yam_talker.remove_tracks_from_playlist (playlist.kind, position, playlist.revision); - - Idle.add (remove_from_playlist_async.callback); - }); - - yield; - } - - void set_values () { - var motion_controller = new Gtk.EventControllerMotion (); - add_controller (motion_controller); - - track_name_label.label = track_info.title; - track_name_label.tooltip_text = track_info.title; - - info_marks.is_exp = track_info.explicit; - info_marks.is_child = track_info.is_suitable_for_children; - info_marks.replaced_by = track_info.substituted; - - if (track_info.version != null) { - track_version_label.label = track_info.version; - track_name_label.tooltip_text += ", " + track_info.version; - track_version_label.tooltip_text = track_name_label.tooltip_text; - } - track_authors_label.label = track_info.get_artists_names (); - track_authors_label.tooltip_text = track_info.get_artists_names (); - if (track_info.available) { - duration_label.label = ms2str (track_info.duration_ms, true); - motion_controller.enter.connect ((mc, x, y) => { - play_button.visible = true; - }); - motion_controller.leave.connect ((mc) => { - if (!play_button.is_playing) { - play_button.visible = false; - } - }); - } else { - add_css_class ("not-available"); - - track_name_label.sensitive = false; - track_authors_label.sensitive = false; - duration_label.label = ""; - track_options_button.sensitive = false; - - this.tooltip_text = _("Track is not available"); - } - - like_button.init_content (track_info.id); - dislike_button.init_content (track_info.id); - play_button.init_content (track_info.id); - cover_image.init_content (track_info, TRACK_ART_SIZE); - - cover_image.load_image.begin (); - - save_stack.init_content (track_info.id); - } - - void form_queue () { - var track_list = yam_object.get_filtered_track_list ( - storager.settings.get_boolean ("explicit-visible"), - storager.settings.get_boolean ("child-visible"), - track_info.id - ); - - var queue = new YaMAPI.Queue () { - context = YaMAPI.Context.from_obj ((HasID) yam_object), - tracks = track_list, - current_index = track_list.index_of (track_info) - }; - - player.start_queue (queue); - } - } -} diff --git a/src/widgets/track_rows/track_local_content.vala b/src/widgets/track_rows/track_local_content.vala deleted file mode 100644 index e69de29..0000000 diff --git a/src/widgets/track_rows/track_placeholder.vala b/src/widgets/track_rows/track_placeholder.vala deleted file mode 100644 index 81a5393..0000000 --- a/src/widgets/track_rows/track_placeholder.vala +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-or-later - */ - -namespace Cassette { - [GtkTemplate (ui = "/com/github/Rirusha/Cassette/ui/track_placeholder.ui")] - public class TrackPlaceholder : Gtk.Frame { - - public TrackPlaceholder () { - Object (); - } - } -} diff --git a/src/widgets/track_rows/track_queue_content.vala b/src/widgets/track_rows/track_queue_content.vala deleted file mode 100644 index 59c9bc8..0000000 --- a/src/widgets/track_rows/track_queue_content.vala +++ /dev/null @@ -1,129 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-or-later - */ - - -using CassetteClient; - - -namespace Cassette { - [GtkTemplate (ui = "/com/github/Rirusha/Cassette/ui/track_queue_content.ui")] - public class TrackQueue : Gtk.Frame { - [GtkChild] - unowned PlayButtonTrack play_button; - [GtkChild] - unowned Gtk.Label track_name_label; - [GtkChild] - unowned Gtk.Label track_version_label; - [GtkChild] - unowned Gtk.Label track_authors_label; - [GtkChild] - unowned InfoMarks info_marks; - [GtkChild] - unowned LikeButton like_button; - [GtkChild] - unowned Gtk.Label duration_label; - [GtkChild] - unowned TrackOptionsButton track_options_button; - - public YaMAPI.Track track_info { get; construct set; } - - public uint position { get; set; } - - public TrackQueue (YaMAPI.Track track_info, uint position) { - Object (track_info: track_info, position: position); - } - - construct { - play_button.clicked_not_playing.connect (() => { - player.change_track (track_info); - }); - - var actions = new SimpleActionGroup (); - - if (track_info.ugc == false) { - SimpleAction share_action = new SimpleAction ("share", null); - share_action.activate.connect (() => { - track_share (track_info); - }); - actions.add_action (share_action); - } - - SimpleAction add_to_playlist_action = new SimpleAction ("add-to-playlist", null); - add_to_playlist_action.activate.connect (() => { - var win = new PlaylistChooseWindow (track_info) { - transient_for = Cassette.application.main_window, - }; - win.present (); - }); - actions.add_action (add_to_playlist_action); - - SimpleAction add_next_action = new SimpleAction ("add-next", null); - add_next_action.activate.connect (() => { - player.add_track (track_info, true); - }); - actions.add_action (add_next_action); - - SimpleAction add_end_action = new SimpleAction ("add-end", null); - add_end_action.activate.connect (() => { - player.add_track (track_info, false); - }); - actions.add_action (add_end_action); - - track_options_button.add_remove_from_queue_action (); - - SimpleAction remove_from_queue_action = new SimpleAction ("remove-from-queue", null); - remove_from_queue_action.activate.connect (() => { - player.remove_track (position); - }); - actions.add_action (remove_from_queue_action); - - insert_action_group ("track", actions); - - play_button.notify["is-playing"].connect (() => { - if (play_button.is_playing) { - add_css_class ("playing-track"); - } else { - remove_css_class ("playing-track"); - } - }); - - set_values (); - } - - public void set_values () { - track_name_label.label = track_info.title; - track_name_label.tooltip_text = track_info.title; - - info_marks.is_exp = track_info.explicit; - info_marks.is_child = track_info.is_suitable_for_children; - info_marks.replaced_by = track_info.substituted; - - if (track_info.version != null) { - track_version_label.label = track_info.version; - track_name_label.tooltip_text += ", " + track_info.version; - track_version_label.tooltip_text = track_name_label.tooltip_text; - } - track_authors_label.label = track_info.get_artists_names (); - track_authors_label.tooltip_text = track_info.get_artists_names (); - duration_label.label = ms2str (track_info.duration_ms, true); - - like_button.init_content (track_info.id); - play_button.init_content (track_info.id); - } - } -} From 6d5c30eeedf8b3905c132538d3446542b94a78f6 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 13 Feb 2024 02:38:45 +0300 Subject: [PATCH 104/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D0=B9=20=D0=BD=D0=B0=20=D0=B1=D0=BE=D0=BB=D0=B5?= =?UTF-8?q?=D0=B5=20=D0=BA=D0=BE=D1=80=D1=80=D0=B5=D0=BA=D1=82=D0=BD=D1=8B?= =?UTF-8?q?=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/talkers/yam_talker.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client/talkers/yam_talker.vala b/src/client/talkers/yam_talker.vala index 3b1b258..c399aa3 100644 --- a/src/client/talkers/yam_talker.vala +++ b/src/client/talkers/yam_talker.vala @@ -129,7 +129,7 @@ namespace CassetteClient { } } - // Пересохраняет объект, если он уже сохранен во временную. + // Сохраняет объект, если он не сохранен в data // Постоянными объектами занимается уже Cachier.Job var object_location = storager.object_cache_location (playlist_info.get_type (), playlist_info.oid); if (object_location.is_tmp && storager.settings.get_boolean ("can-cache")) { From 85ce6bc958a91587993e7c19bacfbec38abc9042 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 13 Feb 2024 03:40:38 +0300 Subject: [PATCH 105/854] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=B2=D0=B8=D1=81=D0=B8=D0=BC=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D1=8C=20=D0=BE=D1=82=20=D0=B8=D0=BC=D0=B5=D0=BD=D0=B8=20=D0=BA?= =?UTF-8?q?=D0=BB=D0=B0=D1=81=D1=81=D0=B0=20=D0=B2=20CassetteClient.Avatar?= =?UTF-8?q?Info?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/objects/account_info/avatar_info.vala | 54 +++++++++++++------ 1 file changed, 39 insertions(+), 15 deletions(-) diff --git a/src/client/api/objects/account_info/avatar_info.vala b/src/client/api/objects/account_info/avatar_info.vala index 8e77a79..5359c09 100644 --- a/src/client/api/objects/account_info/avatar_info.vala +++ b/src/client/api/objects/account_info/avatar_info.vala @@ -18,16 +18,16 @@ namespace CassetteClient.YaMAPI { public enum AvatarSize { - ISLANDS_SMALL = 28, - ISLANDS_34 = 34, - ISLANDS_MIDDLE = 42, - ISLANDS_50 = 50, - ISLANDS_RETINA_SMALL = 56, - ISLANDS_68 = 68, - ISLANDS_75 = 75, - ISLANDS_RETINA_MIDDLE = 84, - ISLANDS_RETINA_50 = 100, - ISLANDS_200 = 200 + ISLANDS_SMALL = "islands-small", + ISLANDS_34 = "islands-34", + ISLANDS_MIDDLE = "islands-middle", + ISLANDS_50 = "islands-50", + ISLANDS_RETINA_SMALL = "islands-retina-small", + ISLANDS_68 = "islands-68", + ISLANDS_75 = "islands-75", + ISLANDS_RETINA_MIDDLE = "islands-retina-middle", + ISLANDS_RETINA_50 = "islands-retina-50", + ISLANDS_200 = "islands-200" } public class AvatarInfo : YaMObject { @@ -39,17 +39,41 @@ namespace CassetteClient.YaMAPI { Object (); } + public static AvatarSize num_size_to_avatar_size (int size) { + switch (size) { + case 28: + return AvatarSize.ISLANDS_SMALL; + case 34: + return AvatarSize.ISLANDS_34; + case 42: + return AvatarSize.ISLANDS_MIDDLE; + case 50: + return AvatarSize.ISLANDS_50; + case 56: + return AvatarSize.ISLANDS_RETINA_SMALL; + case 68: + return AvatarSize.ISLANDS_68; + case 75: + return AvatarSize.ISLANDS_75; + case 84: + return AvatarSize.ISLANDS_RETINA_MIDDLE; + case 100: + return AvatarSize.ISLANDS_RETINA_50; + case 200: + return AvatarSize.ISLANDS_200; + default: + assert_not_reached (); + } + } + public string? get_avatar_uri (int size = 200) { if (is_avatar_empty) { return null; } - var asize = (AvatarSize) size; + var avatar_size = num_size_to_avatar_size (size); - // CASSETTE_CLIENT_YA_MAPI_AVATAR_SIZE_ISLANDS_200 -> islands-200 - string size_str = snake2kebab (asize.to_string ()[36:].down ()); - - return @"https://avatars.yandex.net/get-yapic/$default_avatar_id/$size_str"; + return @"https://avatars.yandex.net/get-yapic/$default_avatar_id/$avatar_size"; } } } From 9ee47bfa553c0a0ae04aaa9686bfc463f19872bc Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 13 Feb 2024 03:54:12 +0300 Subject: [PATCH 106/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20AvatarSize?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/objects/account_info/avatar_info.vala | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/client/api/objects/account_info/avatar_info.vala b/src/client/api/objects/account_info/avatar_info.vala index 5359c09..192b735 100644 --- a/src/client/api/objects/account_info/avatar_info.vala +++ b/src/client/api/objects/account_info/avatar_info.vala @@ -17,17 +17,17 @@ */ namespace CassetteClient.YaMAPI { - public enum AvatarSize { - ISLANDS_SMALL = "islands-small", - ISLANDS_34 = "islands-34", - ISLANDS_MIDDLE = "islands-middle", - ISLANDS_50 = "islands-50", - ISLANDS_RETINA_SMALL = "islands-retina-small", - ISLANDS_68 = "islands-68", - ISLANDS_75 = "islands-75", - ISLANDS_RETINA_MIDDLE = "islands-retina-middle", - ISLANDS_RETINA_50 = "islands-retina-50", - ISLANDS_200 = "islands-200" + namespace AvatarSize { + const string ISLANDS_SMALL = "islands-small"; + const string ISLANDS_34 = "islands-34"; + const string ISLANDS_MIDDLE = "islands-middle"; + const string ISLANDS_50 = "islands-50"; + const string ISLANDS_RETINA_SMALL = "islands-retina-small"; + const string ISLANDS_68 = "islands-68"; + const string ISLANDS_75 = "islands-75"; + const string ISLANDS_RETINA_MIDDLE = "islands-retina-middle"; + const string ISLANDS_RETINA_50 = "islands-retina-50"; + const string ISLANDS_200 = "islands-200"; } public class AvatarInfo : YaMObject { @@ -39,7 +39,7 @@ namespace CassetteClient.YaMAPI { Object (); } - public static AvatarSize num_size_to_avatar_size (int size) { + public static string num_size_to_avatar_size (int size) { switch (size) { case 28: return AvatarSize.ISLANDS_SMALL; From 41b9a43b7c2d2eaaf45a9768e61efae9dfcfd827 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 13 Feb 2024 23:18:41 +0300 Subject: [PATCH 107/854] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D0=B2=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D0=B8=20main=5Fview=20=D0=B2=20.blp=20=D0=B8=20?= =?UTF-8?q?=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D1=82=D1=8C=20=D0=B2=D0=BA?= =?UTF-8?q?=D0=BB=D0=B0=D0=B4=D0=BA=D1=83=20=D0=B4=D0=BB=D1=8F=20=D1=80?= =?UTF-8?q?=D0=B0=D0=B7=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D1=87=D0=B8=D0=BA?= =?UTF-8?q?=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/io.github.Rirusha.Cassette.gresource.xml | 1 + data/meson.build | 4 +- data/ui/devel_view.blp | 12 ++++ data/ui/main_view.blp | 11 ++++ data/ui/main_view.ui | 17 ------ src/meson.build | 1 + src/pager.vala | 11 ++++ src/widgets/views/devel_view.vala | 57 +++++++++++++++++++ 8 files changed, 96 insertions(+), 18 deletions(-) create mode 100644 data/ui/devel_view.blp create mode 100644 data/ui/main_view.blp delete mode 100644 data/ui/main_view.ui create mode 100644 src/widgets/views/devel_view.vala diff --git a/data/io.github.Rirusha.Cassette.gresource.xml b/data/io.github.Rirusha.Cassette.gresource.xml index 4c88095..a40a0d1 100644 --- a/data/io.github.Rirusha.Cassette.gresource.xml +++ b/data/io.github.Rirusha.Cassette.gresource.xml @@ -39,5 +39,6 @@ ui/volume_button.ui ui/track_info_panel.ui ui/cover_image.ui + ui/devel_view.ui diff --git a/data/meson.build b/data/meson.build index ef7e4aa..a7ccec2 100644 --- a/data/meson.build +++ b/data/meson.build @@ -46,7 +46,9 @@ blueprints = custom_target('blueprints', 'ui/cover_image.blp', 'ui/sidebar.blp', 'ui/track_detailed.blp', - 'ui/track_default_content.blp' + 'ui/track_default_content.blp', + 'ui/main_view.blp', + 'ui/devel_view.blp' ), output: '.', command: [find_program('blueprint-compiler'), 'batch-compile', '@OUTPUT@', '@CURRENT_SOURCE_DIR@', '@INPUT@'], diff --git a/data/ui/devel_view.blp b/data/ui/devel_view.blp new file mode 100644 index 0000000..205a8f5 --- /dev/null +++ b/data/ui/devel_view.blp @@ -0,0 +1,12 @@ +using Gtk 4.0; +using Adw 1; + +template $CassetteDevelView : $CassetteBaseView { + ScrolledWindow { + Box { + Button ultra_button { + label: "Do some magic ;)"; + } + } + } +} \ No newline at end of file diff --git a/data/ui/main_view.blp b/data/ui/main_view.blp new file mode 100644 index 0000000..a70bcbb --- /dev/null +++ b/data/ui/main_view.blp @@ -0,0 +1,11 @@ +using Gtk 4.0; +using Adw 1; + +template $CassetteMainView : $CassetteBaseView { + ScrolledWindow { + Adw.StatusPage status_page { + title: _("Not implemented yet"); + icon-name: _("io.github.Rirusha.Cassette-symbolic"); + } + } +} \ No newline at end of file diff --git a/data/ui/main_view.ui b/data/ui/main_view.ui deleted file mode 100644 index 30fdecd..0000000 --- a/data/ui/main_view.ui +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - diff --git a/src/meson.build b/src/meson.build index 5cf64a1..a2e812b 100644 --- a/src/meson.build +++ b/src/meson.build @@ -58,6 +58,7 @@ cassette_gui_sources = files( 'widgets/track_row_contents/track_row_content.vala', 'widgets/track_row_contents/ya_track_row_content.vala', 'widgets/views/main_view.vala', + 'widgets/views/devel_view.vala', 'widgets/views/with_tracks_view.vala', 'widgets/views/base_view.vala', 'widgets/views/root_view.vala', diff --git a/src/pager.vala b/src/pager.vala index ca1082d..50c49ef 100644 --- a/src/pager.vala +++ b/src/pager.vala @@ -111,6 +111,8 @@ namespace Cassette { register = typeof (PlaylistView); register = typeof (PlaylistsView); register = typeof (MainView); + register = typeof (DevelView); + register = Type.NONE; storager.settings.changed.connect ((key) => { if ( @@ -280,6 +282,15 @@ namespace Cassette { {null} }); } + + if (application.is_devel) { + add_page ({ + "devel", + "Devel", + "face-cool-symbolic", + typeof (DevelView).name () + }); + } } void load_custom_pages () { diff --git a/src/widgets/views/devel_view.vala b/src/widgets/views/devel_view.vala new file mode 100644 index 0000000..7cb1bb8 --- /dev/null +++ b/src/widgets/views/devel_view.vala @@ -0,0 +1,57 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +namespace Cassette { + [GtkTemplate (ui = "/com/github/Rirusha/Cassette/ui/devel_view.ui")] + public class DevelView : BaseView { + [GtkChild] + unowned Gtk.Button ultra_button; + + public override bool can_refresh { get; default = false; } + + public override PageRoot root_view { get; set; } + + construct { + ultra_button.clicked.connect (on_ultra_button_clicked); + } + + void on_ultra_button_clicked () { + + } + + void set_values () { + show_ready (); + } + + public async override void first_show () { + set_values (); + } + + public async override bool try_load_from_cache () { + return true; + } + + public async override int try_load_from_web () { + return -1; + } + + public async override void refresh () { + + } + } +} From 3677ad58aac0a4c7bd987ef6491983a2d70bb7fa Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 13 Feb 2024 23:20:00 +0300 Subject: [PATCH 108/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20CassetteClient.AccountInfo=20=D0=BA=D0=BB=D0=B0?= =?UTF-8?q?=D1=81=D1=81.=20=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20alert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../objects/account_info/account_info.vala | 5 +++- .../api/objects/account_info/alert.vala | 30 +++++++++++++++++++ .../{master_hub.vala => alert_button.vala} | 9 +++--- src/client/meson.build | 3 +- 4 files changed, 41 insertions(+), 6 deletions(-) create mode 100644 src/client/api/objects/account_info/alert.vala rename src/client/api/objects/account_info/{master_hub.vala => alert_button.vala} (78%) diff --git a/src/client/api/objects/account_info/account_info.vala b/src/client/api/objects/account_info/account_info.vala index e2bed3c..257a9c5 100644 --- a/src/client/api/objects/account_info/account_info.vala +++ b/src/client/api/objects/account_info/account_info.vala @@ -33,10 +33,13 @@ namespace CassetteClient.YaMAPI { public bool subeditor { get; set; } public int subeditor_level { get; set; } public bool pretrial_active { get; set; } - public MasterHub masterhub { get; set; } public Plus plus { get; set; default = new Plus (); } public ArrayList has_options { get; set; default = new ArrayList (); } public string? default_email { get; set; } + public int skips_per_hours { get; set; } + public bool station_exists { get; set; } + public Rotor.StationData? station_data { get; set; } + public Alert? bar_below { get; set; } public AvatarInfo avatar_info { get; set; } public AccountInfo () { diff --git a/src/client/api/objects/account_info/alert.vala b/src/client/api/objects/account_info/alert.vala new file mode 100644 index 0000000..2a8ee2e --- /dev/null +++ b/src/client/api/objects/account_info/alert.vala @@ -0,0 +1,30 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +namespace CassetteClient.YaMAPI { + public class Alert : YaMObject { + + public string alert_id { get; set; } + public string text { get; set; } + public string bg_color { get; set; } + public string text_color { get; set; } + public string alert_type { get; set; } + public AlertButton button { get; set; } + public bool close_button { get; set; } + } +} diff --git a/src/client/api/objects/account_info/master_hub.vala b/src/client/api/objects/account_info/alert_button.vala similarity index 78% rename from src/client/api/objects/account_info/master_hub.vala rename to src/client/api/objects/account_info/alert_button.vala index 2b3ba78..4d57cff 100644 --- a/src/client/api/objects/account_info/master_hub.vala +++ b/src/client/api/objects/account_info/alert_button.vala @@ -17,10 +17,11 @@ */ namespace CassetteClient.YaMAPI { - public class MasterHub : YaMObject { + public class AlertButton : YaMObject { - public MasterHub () { - Object (); - } + public string text { get; set; } + public string bg_color { get; set; } + public string text_color { get; set; } + public string uri { get; set; } } } diff --git a/src/client/meson.build b/src/client/meson.build index c7f867d..ed74525 100644 --- a/src/client/meson.build +++ b/src/client/meson.build @@ -29,7 +29,8 @@ cassette_client_sources = files( 'api/objects/account_info/avatar_info.vala', 'api/objects/account_info/passport_phone.vala', 'api/objects/account_info/plus.vala', - 'api/objects/account_info/master_hub.vala', + 'api/objects/account_info/alert.vala', + 'api/objects/account_info/alert_button.vala', 'api/objects/account_info/plus.vala', 'api/objects/account_info/account.vala', 'api/objects/account_info/permissions.vala', From 2aee450aff841d927c95b386bd8b7e414088c8ce Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 13 Feb 2024 23:21:10 +0300 Subject: [PATCH 109/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BB=D0=B0=D1=81=D1=81=D1=8B=20=D0=BE?= =?UTF-8?q?=D0=B1=D1=8A=D0=B5=D0=BA=D1=82=D0=BE=D0=B2=20api=20=D1=8F.?= =?UTF-8?q?=D0=BC=D1=83=D0=B7=D1=8B=D0=BA=D0=B8,=20=D1=81=D0=B2=D1=8F?= =?UTF-8?q?=D0=B7=D0=B0=D0=BD=D0=BD=D1=8B=D1=85=20=D1=81=20=D0=B2=D0=BE?= =?UTF-8?q?=D0=BB=D0=BD=D0=BE=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/objects/icon.vala | 40 +++++++++++++++ src/client/api/objects/rotor/ad_params.vala | 33 ++++++++++++ src/client/api/objects/rotor/dashboard.vala | 29 +++++++++++ .../api/objects/rotor/discrete_scale.vala | 28 +++++++++++ src/client/api/objects/rotor/enum.vala | 29 +++++++++++ src/client/api/objects/rotor/id.vala | 26 ++++++++++ .../api/objects/rotor/restrictions.vala | 29 +++++++++++ src/client/api/objects/rotor/sequence.vala | 27 ++++++++++ src/client/api/objects/rotor/settings.vala | 50 +++++++++++++++++++ src/client/api/objects/rotor/station.vala | 37 ++++++++++++++ .../api/objects/rotor/station_data.vala | 25 ++++++++++ .../api/objects/rotor/station_info.vala | 29 +++++++++++ .../api/objects/rotor/station_tracks.vala | 31 ++++++++++++ src/client/api/objects/rotor/value.vala | 26 ++++++++++ src/client/meson.build | 17 ++++++- 15 files changed, 455 insertions(+), 1 deletion(-) create mode 100644 src/client/api/objects/icon.vala create mode 100644 src/client/api/objects/rotor/ad_params.vala create mode 100644 src/client/api/objects/rotor/dashboard.vala create mode 100644 src/client/api/objects/rotor/discrete_scale.vala create mode 100644 src/client/api/objects/rotor/enum.vala create mode 100644 src/client/api/objects/rotor/id.vala create mode 100644 src/client/api/objects/rotor/restrictions.vala create mode 100644 src/client/api/objects/rotor/sequence.vala create mode 100644 src/client/api/objects/rotor/settings.vala create mode 100644 src/client/api/objects/rotor/station.vala create mode 100644 src/client/api/objects/rotor/station_data.vala create mode 100644 src/client/api/objects/rotor/station_info.vala create mode 100644 src/client/api/objects/rotor/station_tracks.vala create mode 100644 src/client/api/objects/rotor/value.vala diff --git a/src/client/api/objects/icon.vala b/src/client/api/objects/icon.vala new file mode 100644 index 0000000..00b8849 --- /dev/null +++ b/src/client/api/objects/icon.vala @@ -0,0 +1,40 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI { + public class Icon : YaMObject { + + public string background_color { get; set; } + public string image_url { get; set; } + + public string get_internal_icon_name () { + string ya_icon_name = image_url.split ("/")[3]; + + switch (ya_icon_name) { + case "rotor-personal-station-icon": + return "adwaita-emblem-favorite-symbolic"; + default: + Logger.warning ("Unknown icon %s".printf (ya_icon_name)); + + return "adwaita-audio-x-generic-symbolic"; + } + } + } +} + \ No newline at end of file diff --git a/src/client/api/objects/rotor/ad_params.vala b/src/client/api/objects/rotor/ad_params.vala new file mode 100644 index 0000000..295e32d --- /dev/null +++ b/src/client/api/objects/rotor/ad_params.vala @@ -0,0 +1,33 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI.Rotor { + public class AdParams : YaMObject { + + public string partner_id { get; set; } + public string category_id { get; set; } + public string page_ref { get; set; } + public string target_reg { get; set; } + public string other_params { get; set; } + public int ad_volume { get; set; } + public string genre_id { get; set; } + public string genre_name { get; set; } + } +} + \ No newline at end of file diff --git a/src/client/api/objects/rotor/dashboard.vala b/src/client/api/objects/rotor/dashboard.vala new file mode 100644 index 0000000..6099b32 --- /dev/null +++ b/src/client/api/objects/rotor/dashboard.vala @@ -0,0 +1,29 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +using Gee; + +namespace CassetteClient.YaMAPI.Rotor { + public class Dashboard : YaMObject { + + public string dashboard_id { get; set; } + public ArrayList stations { get; set; default = new ArrayList (); } + public bool pumpkin { get; set; } + } +} diff --git a/src/client/api/objects/rotor/discrete_scale.vala b/src/client/api/objects/rotor/discrete_scale.vala new file mode 100644 index 0000000..2a3d3f3 --- /dev/null +++ b/src/client/api/objects/rotor/discrete_scale.vala @@ -0,0 +1,28 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI.Rotor { + public class DiscreteScale : YaMObject { + + public string type_ { get; set; } + public string name { get; set; } + public Rotor.Value min { get; set; } + public Rotor.Value max { get; set; } + } +} diff --git a/src/client/api/objects/rotor/enum.vala b/src/client/api/objects/rotor/enum.vala new file mode 100644 index 0000000..0be846b --- /dev/null +++ b/src/client/api/objects/rotor/enum.vala @@ -0,0 +1,29 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +using Gee; + +namespace CassetteClient.YaMAPI.Rotor { + public class Enum : YaMObject { + + public string type_ { get; set; } + public string name { get; set; } + public ArrayList possible_values { get; set; default = new ArrayList (); } + } +} diff --git a/src/client/api/objects/rotor/id.vala b/src/client/api/objects/rotor/id.vala new file mode 100644 index 0000000..fc7ac49 --- /dev/null +++ b/src/client/api/objects/rotor/id.vala @@ -0,0 +1,26 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI.Rotor { + public class Id : YaMObject { + + public string type_ { get; set; } + public string tag { get; set; } + } +} diff --git a/src/client/api/objects/rotor/restrictions.vala b/src/client/api/objects/rotor/restrictions.vala new file mode 100644 index 0000000..c9e8730 --- /dev/null +++ b/src/client/api/objects/rotor/restrictions.vala @@ -0,0 +1,29 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI.Rotor { + public class Restrictions : YaMObject { + + public Enum language { get; set; } + public Enum diversity { get; set; } + public DiscreteScale mood { get; set; } + public DiscreteScale energy { get; set; } + public Enum mood_energy { get; set; } + } +} diff --git a/src/client/api/objects/rotor/sequence.vala b/src/client/api/objects/rotor/sequence.vala new file mode 100644 index 0000000..c40c8be --- /dev/null +++ b/src/client/api/objects/rotor/sequence.vala @@ -0,0 +1,27 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI.Rotor { + public class Sequence : YaMObject { + + public string type_ { get; set; } + public Track track { get; set; } + public bool liked { get; set; } + } +} diff --git a/src/client/api/objects/rotor/settings.vala b/src/client/api/objects/rotor/settings.vala new file mode 100644 index 0000000..50ee667 --- /dev/null +++ b/src/client/api/objects/rotor/settings.vala @@ -0,0 +1,50 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI.Rotor { + namespace StationLanguage { + public const string NOT_RUSSIAN = "not-russian"; + public const string RUSSIAN = "russian"; + public const string ANY = "any"; + } + + namespace MoodEnergy { + public const string FUN = "fun"; + public const string ACTIVE = "active"; + public const string CALM = "calm"; + public const string SAD = "sad"; + public const string ALL = "all"; + } + + namespace Diversity { + public const string FAVORITE = "favorite"; + public const string POPULAR = "popular"; + public const string DISCOVER = "discover"; + public const string DEFAULT = "default"; + } + + public class Settings : YaMObject { + + public string language { get; set; } + public string diversity { get; set; } + public int mood { get; set; } + public int energy { get; set; } + public string mood_energy { get; set; } + } +} diff --git a/src/client/api/objects/rotor/station.vala b/src/client/api/objects/rotor/station.vala new file mode 100644 index 0000000..a38be51 --- /dev/null +++ b/src/client/api/objects/rotor/station.vala @@ -0,0 +1,37 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +using Gee; + +namespace CassetteClient.YaMAPI.Rotor { + public class Station : YaMObject { + + public Id id { get; set; } + public string name { get; set; } + public Icon icon { get; set; } + public Icon mts_icon { get; set; } + public Icon geocell_icon { get; set; } + public string id_for_from { get; set; } + public Restrictions restrictions { get; set; } + public Restrictions restrictions2 { get; set; } + public string? full_image_url { get; set; } + public string? mts_full_image_url { get; set; } + public Id parent_id { get; set; } + } +} diff --git a/src/client/api/objects/rotor/station_data.vala b/src/client/api/objects/rotor/station_data.vala new file mode 100644 index 0000000..db0bd63 --- /dev/null +++ b/src/client/api/objects/rotor/station_data.vala @@ -0,0 +1,25 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI.Rotor { + public class StationData : YaMObject { + + public string name { get; set; } + } +} diff --git a/src/client/api/objects/rotor/station_info.vala b/src/client/api/objects/rotor/station_info.vala new file mode 100644 index 0000000..d2cf136 --- /dev/null +++ b/src/client/api/objects/rotor/station_info.vala @@ -0,0 +1,29 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI.Rotor { + public class StationInfo : YaMObject { + + public Station station { get; set; } + public Settings settings { get; set; } + public Settings settings2 { get; set; } + public string rup_title { get; set; } + public string rup_description { get; set; } + } +} diff --git a/src/client/api/objects/rotor/station_tracks.vala b/src/client/api/objects/rotor/station_tracks.vala new file mode 100644 index 0000000..d9bacdd --- /dev/null +++ b/src/client/api/objects/rotor/station_tracks.vala @@ -0,0 +1,31 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +using Gee; + +namespace CassetteClient.YaMAPI.Rotor { + public class StationTracks : YaMObject { + + public Id id { get; set; } + public ArrayList sequence { get; set; default = new ArrayList (); } + public string batch_id { get; set; } + public bool pumpkin { get; set; } + public string radio_session_id { get; set; } + } +} diff --git a/src/client/api/objects/rotor/value.vala b/src/client/api/objects/rotor/value.vala new file mode 100644 index 0000000..b12a260 --- /dev/null +++ b/src/client/api/objects/rotor/value.vala @@ -0,0 +1,26 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + + +namespace CassetteClient.YaMAPI.Rotor { + public class Value : YaMObject { + + public string value { get; set; } + public string name { get; set; } + } +} diff --git a/src/client/meson.build b/src/client/meson.build index ed74525..0e4bd57 100644 --- a/src/client/meson.build +++ b/src/client/meson.build @@ -23,6 +23,7 @@ cassette_client_sources = files( 'api/objects/api_error.vala', 'api/objects/track_heap.vala', 'api/objects/cover.vala', + 'api/objects/icon.vala', 'api/objects/track_short.vala', 'api/objects/download_info.vala', 'api/objects/account_info/account_info.vala', @@ -58,5 +59,19 @@ cassette_client_sources = files( 'api/objects/queue/context.vala', 'api/objects/additional_info/similar_tracks.vala', 'api/objects/additional_info/lyrics.vala', - 'api/objects/additional_info/lyrics_major.vala' + 'api/objects/additional_info/lyrics_major.vala', + 'api/objects/rotor/station_info.vala', + 'api/objects/rotor/station_tracks.vala', + 'api/objects/rotor/settings.vala', + 'api/objects/rotor/sequence.vala', + 'api/objects/rotor/id.vala', + 'api/objects/rotor/enum.vala', + 'api/objects/rotor/value.vala', + 'api/objects/rotor/discrete_scale.vala', + 'api/objects/rotor/station_tracks.vala', + 'api/objects/rotor/restrictions.vala', + 'api/objects/rotor/dashboard.vala', + 'api/objects/rotor/station_data.vala', + 'api/objects/rotor/ad_params.vala', + 'api/objects/rotor/station.vala' ) \ No newline at end of file From e16b5cf245ecda4e364bcbeb4b8504d8ac2293dd Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 13 Feb 2024 23:27:22 +0300 Subject: [PATCH 110/854] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D0=B4=D0=B5?= =?UTF-8?q?=D0=BB=D0=B0=D1=82=D1=8C=20=D0=BF=D0=BE=D0=BB=D0=B5=20=D0=B2=20?= =?UTF-8?q?read-only=20=D1=81=D0=B2=D0=BE=D0=B9=D1=81=D1=82=D0=B2=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/talkers/yam_talker.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client/talkers/yam_talker.vala b/src/client/talkers/yam_talker.vala index c399aa3..8359b6b 100644 --- a/src/client/talkers/yam_talker.vala +++ b/src/client/talkers/yam_talker.vala @@ -27,7 +27,7 @@ namespace CassetteClient { // Класс для выполнения всяких вещей, связанных с интернетом, чтобы можно было оповестить пользователя о проблемах с соединением public class YaMTalker : AbstractTalker { - private YaMClient client = new YaMClient (create_soup_wrapper (true)); + public YaMClient client { get; default = new YaMClient (create_soup_wrapper (true)); } public LikesController likes_controller { get; default = new LikesController (); } public signal void track_likes_start_change (string track_id); From 41671883d92571b0378ac4268dcc766c29a97acd Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 14 Feb 2024 01:47:14 +0300 Subject: [PATCH 111/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=81=D0=BA=D1=80=D0=B8=D0=B0=D0=BB=D0=B8=D0=B7?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D1=8E=20GLib.Datalist=20=D0=B2=20CassetteCli?= =?UTF-8?q?ent.Jsoner?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/jsoner.vala | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 8ec3998..cf7ae37 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -77,6 +77,24 @@ namespace CassetteClient { // Serialize // ///////////////// + public static string datalist_to_json (Datalist datalist) { + var builder = new Json.Builder (); + builder.begin_object (); + + datalist.foreach ((key_id, data) => { + builder.set_member_name (key_id.to_string ()); + + Jsoner.serialize_value (builder, data); + }); + + builder.end_object (); + + var generator = new Json.Generator (); + generator.set_root (builder.get_root ()); + + return generator.to_data (null); + } + public static string serialize (YaMObject yam_obj) { var builder = new Json.Builder (); serialize_object (builder, yam_obj); From 422f32fc1b72526cb611af2a247b4ac93ded5c44 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 14 Feb 2024 01:56:33 +0300 Subject: [PATCH 112/854] =?UTF-8?q?=D0=9F=D0=BE=D0=B4=D0=BA=D0=BE=D1=80?= =?UTF-8?q?=D1=80=D0=B5=D0=BA=D1=82=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D1=82?= =?UTF-8?q?=D1=8C=20=D0=B7=D0=B0=D0=B3=D0=BE=D0=BB=D0=BE=D0=B2=D0=BE=D0=BA?= =?UTF-8?q?=20device=20=D0=B2=20=D0=B7=D0=B0=D0=BF=D1=80=D0=BE=D1=81=D0=B0?= =?UTF-8?q?=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/yam_client.vala | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index efe1cd2..1f1986c 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -33,11 +33,16 @@ namespace CassetteClient.YaMAPI { } construct { + string os = Environment.get_os_info (OsInfoKey.NAME); + string version = Environment.get_os_info (OsInfoKey.VERSION); + soup_wrapper.add_headers_preset ( - "queue", + "device", {{ "X-Yandex-Music-Device", - "os=Linux; os_version=; manufacturer=Rirusha; model=Yandex Music API; clid=; device_id=random; uuid=random" + "os=%s; os_version=%s; manufacturer=Rirusha; model=Yandex Music API; clid=; device_id=random; uuid=random".printf ( + os, version + ) }} ); } @@ -160,8 +165,7 @@ namespace CassetteClient.YaMAPI { public Gee.ArrayList queues () throws ClientError, BadStatusCodeError { Bytes bytes = soup_wrapper.get_sync ( @"$(YAM_BASE_URL)/queues", - {"default", - "queue"} + {"default", "device"} ); var jsoner = Jsoner.from_bytes (bytes, {"result", "queues"}, Case.CAMEL_CASE); @@ -185,12 +189,12 @@ namespace CassetteClient.YaMAPI { public string? create_queue (Queue queue) throws ClientError, BadStatusCodeError { Bytes bytes = soup_wrapper.post_sync ( @"$(YAM_BASE_URL)/queues", - {"default", "queue"}, + {"default", "device"}, {"application/json", queue.to_json ()} ); var jsoner = Jsoner.from_bytes (bytes, {"result", "id"}, Case.CAMEL_CASE); - Value? val_id = jsoner.deserialize_value (); + var val_id = jsoner.deserialize_value (); if (val_id == null || !val_id.holds (Type.STRING)) { return null; @@ -202,7 +206,7 @@ namespace CassetteClient.YaMAPI { public void update_position_queue (string queue_id, int position) throws ClientError, BadStatusCodeError { Bytes bytes = soup_wrapper.post_sync ( @"$(YAM_BASE_URL)/queues/$queue_id/update-position", - {"default", "queue"}, + {"default", "device"}, null, { {"currentIndex", position.to_string ()}, From 987605f5114e3b916370752b6b791d60c1d75f6c Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 14 Feb 2024 01:59:13 +0300 Subject: [PATCH 113/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5=D1=80=D0=B6=D0=BA?= =?UTF-8?q?=D1=83=20json=20=D0=B2=20PostContent?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/yam_client.vala | 24 +++++++++++------------ src/client/soup_wrapper.vala | 36 ++++++++++++++++++++++++++++++---- 2 files changed, 44 insertions(+), 16 deletions(-) diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 1f1986c..dd0cf7f 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -54,7 +54,7 @@ namespace CassetteClient.YaMAPI { datalist.set_data ("client_secret", "53bc75238f0c4d08a118e51fe9203300"); datalist.set_data ("host", "oauth.yandex.ru"); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); var bytes = soup_wrapper.post_sync ( @@ -147,7 +147,7 @@ namespace CassetteClient.YaMAPI { datalist.set_data ("track-ids", string.joinv (",", id_list)); datalist.set_data ("with-positions", with_positions.to_string ()); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); var bytes = soup_wrapper.post_sync ( @@ -190,7 +190,7 @@ namespace CassetteClient.YaMAPI { Bytes bytes = soup_wrapper.post_sync ( @"$(YAM_BASE_URL)/queues", {"default", "device"}, - {"application/json", queue.to_json ()} + {PostContentType.JSON, queue.to_json ()} ); var jsoner = Jsoner.from_bytes (bytes, {"result", "id"}, Case.CAMEL_CASE); @@ -249,7 +249,7 @@ namespace CassetteClient.YaMAPI { datalist.set_data ("playlist-id", playlist_id); datalist.set_data ("client-now", time); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); Bytes bytes = soup_wrapper.post_sync ( @@ -320,7 +320,7 @@ namespace CassetteClient.YaMAPI { var datalist = Datalist (); datalist.set_data (@"$what-ids", id); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); Bytes bytes = soup_wrapper.post_sync ( @@ -343,7 +343,7 @@ namespace CassetteClient.YaMAPI { var datalist = Datalist (); datalist.set_data (@"$what-ids", id); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); Bytes bytes = soup_wrapper.post_sync ( @@ -366,7 +366,7 @@ namespace CassetteClient.YaMAPI { var datalist = Datalist (); datalist.set_data ("track-ids", id); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); Bytes bytes = soup_wrapper.post_sync ( @@ -389,7 +389,7 @@ namespace CassetteClient.YaMAPI { var datalist = Datalist (); datalist.set_data ("track-ids", id); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); Bytes bytes = soup_wrapper.post_sync ( @@ -488,7 +488,7 @@ namespace CassetteClient.YaMAPI { datalist.set_data ("revision", revision.to_string ()); datalist.set_data ("diff", diff); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); Bytes bytes = soup_wrapper.post_sync ( @@ -512,7 +512,7 @@ namespace CassetteClient.YaMAPI { var datalist = Datalist (); datalist.set_data ("value", visibility); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); Bytes bytes = soup_wrapper.post_sync ( @@ -537,7 +537,7 @@ namespace CassetteClient.YaMAPI { datalist.set_data ("title", title); datalist.set_data ("visibility", visibility); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); Bytes bytes = soup_wrapper.post_sync ( @@ -579,7 +579,7 @@ namespace CassetteClient.YaMAPI { var datalist = Datalist (); datalist.set_data ("value", new_name); - PostContent post_content = {"application/x-www-form-urlencoded"}; + PostContent post_content = {PostContentType.X_WWW_FORM_URLENCODED}; post_content.set_datalist (datalist); Bytes bytes = soup_wrapper.post_sync ( diff --git a/src/client/soup_wrapper.vala b/src/client/soup_wrapper.vala index 6880cc8..d706512 100644 --- a/src/client/soup_wrapper.vala +++ b/src/client/soup_wrapper.vala @@ -51,12 +51,37 @@ namespace CassetteClient { } } + public enum PostContentType { + X_WWW_FORM_URLENCODED, + JSON + } + public struct PostContent { - string content_type; + PostContentType content_type; Bytes data; - public void set_datalist (Datalist datalist) { - data = new Bytes (Soup.Form.encode_datalist (datalist).data); + public string get_content_type_string () { + switch (content_type) { + case X_WWW_FORM_URLENCODED: + return "application/x-www-form-urlencoded"; + case JSON: + return "application/json"; + default: + assert_not_reached (); + } + } + + public void set_datalist (Datalist datalist) { + switch (content_type) { + case X_WWW_FORM_URLENCODED: + data = new Bytes (Soup.Form.encode_datalist (datalist).data); + break; + case JSON: + data = new Bytes (Jsoner.datalist_to_json (datalist).data); + break; + default: + assert_not_reached (); + } } } @@ -187,7 +212,10 @@ namespace CassetteClient { var msg = new Soup.Message ("POST", uri); if (post_content != null) { - msg.set_request_body_from_bytes (post_content.content_type, post_content.data); + msg.set_request_body_from_bytes ( + post_content.get_content_type_string (), + post_content.data + ); } if (header_preset_names != null) { From bb573aeec8f80c729553b657013b5295d6f5ffe9 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 14 Feb 2024 02:01:08 +0300 Subject: [PATCH 114/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BC=D0=B5=D1=82=D0=BE=D0=B4=D1=8B=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D0=BF=D0=BE=D0=BB=D1=83=D1=87=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=8F=20=D0=B8=D0=BD=D1=84=D0=BE=D1=80=D0=BC=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D0=B8=20=D0=BE=20=D1=81=D1=82=D0=B0=D0=BD=D1=86=D0=B8=D0=B8=20?= =?UTF-8?q?=D0=B8=20=D0=BD=D0=B0=D1=87=D0=B0=D1=82=D1=8C=20=D0=B4=D0=BE?= =?UTF-8?q?=D0=B1=D0=B0=D0=B2=D0=BB=D1=8F=D1=82=D1=8C=20=D0=BC=D0=B5=D1=82?= =?UTF-8?q?=D0=BE=D0=B4=D1=8B=20=D0=BE=20=D1=84=D0=B8=D0=B4=D0=B1=D0=B5?= =?UTF-8?q?=D0=BA=D0=B5=20=D0=BF=D1=80=D0=BE=D1=81=D0=BB=D1=83=D1=88=D0=B8?= =?UTF-8?q?=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D1=81=D1=82=D0=B0=D0=BD=D1=86?= =?UTF-8?q?=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/yam_client.vala | 119 +++++++++++++++++++++++++++++++++ src/client/utils.vala | 13 ++++ 2 files changed, 132 insertions(+) diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index dd0cf7f..3106ad6 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -16,6 +16,9 @@ * SPDX-License-Identifier: GPL-3.0-or-later */ + +using CassetteClient.YaMAPI.Rotor; + namespace CassetteClient.YaMAPI { public class YaMClient : Object { @@ -626,5 +629,121 @@ namespace CassetteClient.YaMAPI { return our_array; } + + /////////// + // Radio // + /////////// + + public StationInfo get_rotor_info ( + string station_type + ) throws ClientError, BadStatusCodeError { + var bytes = soup_wrapper.get_sync ( + @"$(YAM_BASE_URL)/rotor/station/$station_type/info", + {"default", "device"} + ); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + + var our_array = new Gee.ArrayList (); + jsoner.deserialize_array (ref our_array); + + if (our_array.size == 0) { + throw new ClientError.SOUP_ERROR ("Wrong station name: %s".printf (station_type)); + } + + return our_array[0]; + } + + public bool rotor_feedback_started ( + string station_type + ) throws ClientError, BadStatusCodeError { + var datalist = Datalist (); + datalist.set_data ("type", FeedbackType.STARTED); + datalist.set_data ("timestamp", new DateTime.now_utc ().format_iso8601 ()); + datalist.set_data ("from", @"mobile-radio-$station_type"); + + PostContent post_content = {PostContentType.JSON}; + post_content.set_datalist (datalist); + + Bytes bytes = soup_wrapper.post_sync ( + @"$(YAM_BASE_URL)/rotor/station/$station_type/feedback", + {"default", "device"}, + post_content + ); + + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + if (jsoner.root != null) { + return true; + } + return false; + } + + public bool rotor_feedback_track_started ( + string station_type, + string batch_id, + string track_id + ) throws ClientError, BadStatusCodeError { + var datalist = Datalist (); + datalist.set_data ("type", FeedbackType.TRACK_STARTED); + datalist.set_data ("timestamp", new DateTime.now_utc ().format_iso8601 ()); + datalist.set_data ("trackId", track_id); + + PostContent post_content = {PostContentType.JSON}; + post_content.set_datalist (datalist); + + Bytes bytes = soup_wrapper.post_sync ( + @"$(YAM_BASE_URL)/rotor/station/$station_type/feedback", + {"default"}, + post_content, + {{"batch-id", batch_id}} + ); + + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + if (jsoner.root != null) { + return true; + } + return false; + } + + public bool rotor_feedback_track_finished ( + string station_type, + string batch_id, + string track_id, + double total_played_seconds + ) throws ClientError, BadStatusCodeError { + var datalist = Datalist (); + datalist.set_data ("type", FeedbackType.TRACK_FINISHED); + datalist.set_data ("timestamp", new DateTime.now_utc ().format_iso8601 ()); + datalist.set_data ("trackId", track_id); + datalist.set_data ("totalPlayedSeconds", total_played_seconds.to_string ()); + + PostContent post_content = {PostContentType.JSON}; + post_content.set_datalist (datalist); + + Bytes bytes = soup_wrapper.post_sync ( + @"$(YAM_BASE_URL)/rotor/station/$station_type/feedback", + {"default"}, + post_content, + {{"batch-id", batch_id}} + ); + + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + if (jsoner.root != null) { + return true; + } + return false; + } + + public StationTracks get_station_tracks ( + string station_type + ) throws ClientError, BadStatusCodeError { + var bytes = soup_wrapper.get_sync ( + @"$(YAM_BASE_URL)/rotor/station/$station_type/tracks", + {"default"}, + {{"settings2", "true"}} + ); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + + return (StationTracks) jsoner.deserialize_object (typeof (StationTracks)); + } } } diff --git a/src/client/utils.vala b/src/client/utils.vala index 7406fca..5910b26 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -22,6 +22,19 @@ using Gee; namespace CassetteClient { + namespace YaMAPI.Rotor { + namespace FeedbackType { + public const string STARTED = "radioStarted"; + public const string TRACK_STARTED = "trackStarted"; + public const string TRACK_FINISHED = "trackFinished"; + public const string FINISHED = "trackFinished"; + } + + namespace StationType { + public const string ON_YOUR_WAVE = "user:onyourwave"; + } + } + public enum ArtSize { TRACK = 75, BIG_ART = 400, From d809dc1de01c8cd7d31e5b5afce9f67fe3a1c30c Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 14 Feb 2024 02:01:46 +0300 Subject: [PATCH 115/854] =?UTF-8?q?=D0=9A=D1=82=D0=BE=20=D0=BF=D1=80=D0=BE?= =?UTF-8?q?=D1=87=D0=B8=D1=82=D0=B0=D0=BB,=20=D1=83=20=D1=82=D0=BE=D0=B3?= =?UTF-8?q?=D0=BE=20=D0=B2=D1=81=D1=91=20=D0=B1=D1=83=D0=B4=D0=B5=D1=82=20?= =?UTF-8?q?=D1=85=D0=BE=D1=80=D0=BE=D1=88=D0=BE=20:3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/widgets/views/devel_view.vala | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/widgets/views/devel_view.vala b/src/widgets/views/devel_view.vala index 7cb1bb8..fe8f1fe 100644 --- a/src/widgets/views/devel_view.vala +++ b/src/widgets/views/devel_view.vala @@ -31,7 +31,15 @@ namespace Cassette { } void on_ultra_button_clicked () { - + var client = yam_talker.client; + + var a = client.get_rotor_info (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); + client.rotor_feedback_started (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); + var tra = client.get_station_tracks (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); + + foreach (var seq in tra.sequence) { + message (seq.track.title); + } } void set_values () { From 9f8f5eb088f42d402f12acac739e27d25ad1ddf9 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 14 Feb 2024 02:11:37 +0300 Subject: [PATCH 116/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D1=84=D0=BE=D1=80=D0=BC=D0=B0=D1=82=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/objects/icon.vala | 1 - src/client/api/objects/rotor/ad_params.vala | 1 - src/client/api/objects/rotor/station.vala | 2 +- 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/client/api/objects/icon.vala b/src/client/api/objects/icon.vala index 00b8849..16ee4e9 100644 --- a/src/client/api/objects/icon.vala +++ b/src/client/api/objects/icon.vala @@ -37,4 +37,3 @@ namespace CassetteClient.YaMAPI { } } } - \ No newline at end of file diff --git a/src/client/api/objects/rotor/ad_params.vala b/src/client/api/objects/rotor/ad_params.vala index 295e32d..96b5487 100644 --- a/src/client/api/objects/rotor/ad_params.vala +++ b/src/client/api/objects/rotor/ad_params.vala @@ -30,4 +30,3 @@ namespace CassetteClient.YaMAPI.Rotor { public string genre_name { get; set; } } } - \ No newline at end of file diff --git a/src/client/api/objects/rotor/station.vala b/src/client/api/objects/rotor/station.vala index a38be51..8592924 100644 --- a/src/client/api/objects/rotor/station.vala +++ b/src/client/api/objects/rotor/station.vala @@ -21,7 +21,7 @@ using Gee; namespace CassetteClient.YaMAPI.Rotor { public class Station : YaMObject { - + public Id id { get; set; } public string name { get; set; } public Icon icon { get; set; } From 8841512e4f97063e478833436d1e5c6ea9100878 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 15 Feb 2024 06:13:02 +0300 Subject: [PATCH 117/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BB=D0=B8=D1=86=D0=B5=D0=BD=D0=B7=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- COPYING | 9 ++++----- data/io.github.Rirusha.Cassette.appdata.xml.in | 2 +- meson.build | 2 +- src/application.vala | 5 ++--- src/authenticator.vala | 5 ++--- src/client/api/difference_builder.vala | 5 ++--- src/client/api/objects/account_info/account.vala | 5 ++--- src/client/api/objects/account_info/account_info.vala | 5 ++--- src/client/api/objects/account_info/alert.vala | 5 ++--- src/client/api/objects/account_info/alert_button.vala | 5 ++--- src/client/api/objects/account_info/avatar_info.vala | 5 ++--- src/client/api/objects/account_info/passport_phone.vala | 5 ++--- src/client/api/objects/account_info/permissions.vala | 5 ++--- src/client/api/objects/account_info/plus.vala | 5 ++--- src/client/api/objects/additional_info/lyrics.vala | 5 ++--- src/client/api/objects/additional_info/lyrics_major.vala | 5 ++--- .../api/objects/additional_info/similar_tracks.vala | 5 ++--- src/client/api/objects/album/album.vala | 5 ++--- src/client/api/objects/album/label.vala | 5 ++--- src/client/api/objects/album/volume.vala | 5 ++--- src/client/api/objects/api_error.vala | 5 ++--- src/client/api/objects/artist/artist.vala | 5 ++--- src/client/api/objects/artist/counts.vala | 5 ++--- src/client/api/objects/artist/link.vala | 5 ++--- src/client/api/objects/artist/ratings.vala | 5 ++--- src/client/api/objects/cover.vala | 5 ++--- src/client/api/objects/download_info.vala | 5 ++--- src/client/api/objects/icon.vala | 5 ++--- src/client/api/objects/playlist/case_forms.vala | 5 ++--- src/client/api/objects/playlist/liked_playlist.vala | 5 ++--- src/client/api/objects/playlist/made_for.vala | 5 ++--- src/client/api/objects/playlist/play_counter.vala | 5 ++--- src/client/api/objects/playlist/playlist.vala | 5 ++--- src/client/api/objects/playlist/playlist_absence.vala | 5 ++--- .../api/objects/playlist/playlist_recommendations.vala | 5 ++--- src/client/api/objects/playlist/user.vala | 5 ++--- src/client/api/objects/queue/context.vala | 5 ++--- src/client/api/objects/queue/queue.vala | 5 ++--- src/client/api/objects/queue/short_queue.vala | 5 ++--- src/client/api/objects/rotor/ad_params.vala | 5 ++--- src/client/api/objects/rotor/dashboard.vala | 5 ++--- src/client/api/objects/rotor/discrete_scale.vala | 5 ++--- src/client/api/objects/rotor/enum.vala | 5 ++--- src/client/api/objects/rotor/id.vala | 5 ++--- src/client/api/objects/rotor/restrictions.vala | 5 ++--- src/client/api/objects/rotor/sequence.vala | 5 ++--- src/client/api/objects/rotor/settings.vala | 5 ++--- src/client/api/objects/rotor/station.vala | 5 ++--- src/client/api/objects/rotor/station_data.vala | 5 ++--- src/client/api/objects/rotor/station_info.vala | 5 ++--- src/client/api/objects/rotor/station_tracks.vala | 5 ++--- src/client/api/objects/rotor/value.vala | 5 ++--- src/client/api/objects/track/chart.vala | 5 ++--- src/client/api/objects/track/lyrics_info.vala | 5 ++--- src/client/api/objects/track/meta_data.vala | 5 ++--- src/client/api/objects/track/track.vala | 5 ++--- src/client/api/objects/track_heap.vala | 5 ++--- src/client/api/objects/track_short.vala | 5 ++--- src/client/api/yam_client.vala | 5 ++--- src/client/cachier/cachier.vala | 5 ++--- src/client/cachier/controller.vala | 5 ++--- src/client/cachier/info_db.vala | 5 ++--- src/client/cachier/job.vala | 5 ++--- src/client/cachier/storager.vala | 5 ++--- src/client/jsoner.vala | 2 +- src/client/likes_controller.vala | 5 ++--- src/client/logger.vala | 5 ++--- src/client/player/mpris.vala | 5 ++--- src/client/player/player.vala | 5 ++--- src/client/player/player_flow.vala | 5 ++--- src/client/player/player_track_list.vala | 5 ++--- src/client/player/track_local.vala | 5 ++--- src/client/soup_wrapper.vala | 5 ++--- src/client/talkers/abstract_talker.vala | 5 ++--- src/client/talkers/yam_talker.vala | 5 ++--- src/client/threader.vala | 5 ++--- src/client/utils.vala | 5 ++--- src/client/yam_object.vala | 5 ++--- src/main.vala | 5 ++--- src/main_window.vala | 5 ++--- src/pager.vala | 5 ++--- src/utils.vala | 5 ++--- src/widgets/account_info_window.vala | 5 ++--- src/widgets/begin/begin_view.vala | 5 ++--- src/widgets/begin/begin_window.vala | 5 ++--- src/widgets/cache_indicator/cache_indicator.vala | 5 ++--- src/widgets/cache_indicator/job_info_badge.vala | 5 ++--- src/widgets/clickable_label.vala | 5 ++--- src/widgets/cover_image.vala | 5 ++--- src/widgets/custom_button.vala | 5 ++--- src/widgets/dislike_button.vala | 5 ++--- src/widgets/info_marks.vala | 5 ++--- src/widgets/label_button.vala | 5 ++--- src/widgets/like_button.vala | 5 ++--- src/widgets/loading_widget.vala | 5 ++--- src/widgets/lyrics/lyrics_line.vala | 5 ++--- src/widgets/lyrics/lyrics_panel.vala | 5 ++--- src/widgets/lyrics_line.vala | 5 ++--- src/widgets/lyrics_panel.vala | 5 ++--- src/widgets/options_button/options_button.vala | 5 ++--- src/widgets/options_button/playlist_options_button.vala | 5 ++--- src/widgets/options_button/track_options_button.vala | 5 ++--- src/widgets/pages/abstract_loadable_page.vala | 5 ++--- src/widgets/pages/loading_page.vala | 5 ++--- src/widgets/play_button/play_button.vala | 5 ++--- src/widgets/play_button/play_button_action.vala | 5 ++--- src/widgets/play_button/play_button_context.vala | 5 ++--- src/widgets/play_button/play_button_default.vala | 5 ++--- src/widgets/play_button/play_button_track.vala | 5 ++--- src/widgets/player_bar.vala | 5 ++--- src/widgets/playlist_choose_window.vala | 5 ++--- src/widgets/playlist_create_button.vala | 5 ++--- src/widgets/playlist_micro.vala | 5 ++--- src/widgets/playlist_row.vala | 5 ++--- src/widgets/preferences/cache_deletion_preferences.vala | 5 ++--- src/widgets/preferences/custom_page_preferences.vala | 5 ++--- src/widgets/preferences/custom_pages_preferences.vala | 5 ++--- src/widgets/preferences/preferences_window.vala | 5 ++--- src/widgets/save_stack.vala | 5 ++--- src/widgets/sidebar.vala | 5 ++--- src/widgets/track_detailed.vala | 5 ++--- src/widgets/track_info_panel.vala | 5 ++--- src/widgets/track_list/track_list.vala | 5 ++--- src/widgets/track_list/track_row_base.vala | 5 ++--- src/widgets/track_list/tracks_model.vala | 5 ++--- src/widgets/track_list/tracks_view.vala | 5 ++--- .../track_row_contents/track_default_content.vala | 5 ++--- src/widgets/track_row_contents/track_placeholder.vala | 5 ++--- src/widgets/track_row_contents/track_queue_content.vala | 5 ++--- src/widgets/track_row_contents/track_row_content.vala | 5 ++--- src/widgets/track_row_contents/ya_track_row_content.vala | 5 ++--- src/widgets/views/base_view.vala | 5 ++--- src/widgets/views/cachiable_view.vala | 5 ++--- src/widgets/views/cant_show_view.vala | 5 ++--- src/widgets/views/devel_view.vala | 5 ++--- src/widgets/views/disliked_tracks_view.vala | 5 ++--- src/widgets/views/main_view.vala | 5 ++--- src/widgets/views/playlist_view.vala | 5 ++--- src/widgets/views/playlists_view.vala | 5 ++--- src/widgets/views/root_view.vala | 5 ++--- src/widgets/views/with_tracks_view.vala | 5 ++--- src/widgets/volume_button.vala | 5 ++--- 142 files changed, 283 insertions(+), 422 deletions(-) diff --git a/COPYING b/COPYING index 10926e8..e72bfdd 100644 --- a/COPYING +++ b/COPYING @@ -1,7 +1,7 @@ GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 - Copyright (C) 2007 Free Software Foundation, Inc. + Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -645,7 +645,7 @@ the "copyright" line and a pointer to where the full notice is found. GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program. If not, see . + along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. @@ -664,12 +664,11 @@ might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see -. +. The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read -. - +. \ No newline at end of file diff --git a/data/io.github.Rirusha.Cassette.appdata.xml.in b/data/io.github.Rirusha.Cassette.appdata.xml.in index 8aab61c..f61ba12 100644 --- a/data/io.github.Rirusha.Cassette.appdata.xml.in +++ b/data/io.github.Rirusha.Cassette.appdata.xml.in @@ -3,7 +3,7 @@ Cassette io.github.Rirusha.Cassette.desktop CC0-1.0 - GPL-3.0-or-later + GPL-3.0-only

GTK/Adwaita application that allows to use Yandex Music diff --git a/meson.build b/meson.build index 3a77e71..ccf2624 100644 --- a/meson.build +++ b/meson.build @@ -3,7 +3,7 @@ project( ['c', 'vala'], version: '0.1.4', meson_version: '>= 0.62.0', - license: 'GPL-3.0-or-later', + license: 'GPL-3.0-only', ) i18n = import('i18n') diff --git a/src/application.vala b/src/application.vala index b04346d..a4f6796 100644 --- a/src/application.vala +++ b/src/application.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using CassetteClient; diff --git a/src/authenticator.vala b/src/authenticator.vala index ce55312..f4fa6a6 100644 --- a/src/authenticator.vala +++ b/src/authenticator.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/difference_builder.vala b/src/client/api/difference_builder.vala index 51046d1..30818ee 100644 --- a/src/client/api/difference_builder.vala +++ b/src/client/api/difference_builder.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/account_info/account.vala b/src/client/api/objects/account_info/account.vala index 00dae98..0188d23 100644 --- a/src/client/api/objects/account_info/account.vala +++ b/src/client/api/objects/account_info/account.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/account_info/account_info.vala b/src/client/api/objects/account_info/account_info.vala index 257a9c5..8aeedb9 100644 --- a/src/client/api/objects/account_info/account_info.vala +++ b/src/client/api/objects/account_info/account_info.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU Geneqral Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/account_info/alert.vala b/src/client/api/objects/account_info/alert.vala index 2a8ee2e..9dcb182 100644 --- a/src/client/api/objects/account_info/alert.vala +++ b/src/client/api/objects/account_info/alert.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/account_info/alert_button.vala b/src/client/api/objects/account_info/alert_button.vala index 4d57cff..79a512e 100644 --- a/src/client/api/objects/account_info/alert_button.vala +++ b/src/client/api/objects/account_info/alert_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/account_info/avatar_info.vala b/src/client/api/objects/account_info/avatar_info.vala index 192b735..77ec1e0 100644 --- a/src/client/api/objects/account_info/avatar_info.vala +++ b/src/client/api/objects/account_info/avatar_info.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/account_info/passport_phone.vala b/src/client/api/objects/account_info/passport_phone.vala index 4c1a898..42b5d8e 100644 --- a/src/client/api/objects/account_info/passport_phone.vala +++ b/src/client/api/objects/account_info/passport_phone.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/account_info/permissions.vala b/src/client/api/objects/account_info/permissions.vala index d55cb41..367faaa 100644 --- a/src/client/api/objects/account_info/permissions.vala +++ b/src/client/api/objects/account_info/permissions.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/account_info/plus.vala b/src/client/api/objects/account_info/plus.vala index 00c9b5e..6dd0ba5 100644 --- a/src/client/api/objects/account_info/plus.vala +++ b/src/client/api/objects/account_info/plus.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/additional_info/lyrics.vala b/src/client/api/objects/additional_info/lyrics.vala index 3fff8e1..c2c7c0d 100644 --- a/src/client/api/objects/additional_info/lyrics.vala +++ b/src/client/api/objects/additional_info/lyrics.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/additional_info/lyrics_major.vala b/src/client/api/objects/additional_info/lyrics_major.vala index f7423b3..421d448 100644 --- a/src/client/api/objects/additional_info/lyrics_major.vala +++ b/src/client/api/objects/additional_info/lyrics_major.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/additional_info/similar_tracks.vala b/src/client/api/objects/additional_info/similar_tracks.vala index 76cce46..115cfa3 100644 --- a/src/client/api/objects/additional_info/similar_tracks.vala +++ b/src/client/api/objects/additional_info/similar_tracks.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/album/album.vala b/src/client/api/objects/album/album.vala index 09357ad..7b12e40 100644 --- a/src/client/api/objects/album/album.vala +++ b/src/client/api/objects/album/album.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/album/label.vala b/src/client/api/objects/album/label.vala index e7bfc9d..d7bf121 100644 --- a/src/client/api/objects/album/label.vala +++ b/src/client/api/objects/album/label.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/album/volume.vala b/src/client/api/objects/album/volume.vala index 048c49f..a9c2530 100644 --- a/src/client/api/objects/album/volume.vala +++ b/src/client/api/objects/album/volume.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ // DEPROCATED diff --git a/src/client/api/objects/api_error.vala b/src/client/api/objects/api_error.vala index 9ddef09..57bd05e 100644 --- a/src/client/api/objects/api_error.vala +++ b/src/client/api/objects/api_error.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/artist/artist.vala b/src/client/api/objects/artist/artist.vala index 714095f..196ed2b 100644 --- a/src/client/api/objects/artist/artist.vala +++ b/src/client/api/objects/artist/artist.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/artist/counts.vala b/src/client/api/objects/artist/counts.vala index 3af0cd8..8a9a5fd 100644 --- a/src/client/api/objects/artist/counts.vala +++ b/src/client/api/objects/artist/counts.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/artist/link.vala b/src/client/api/objects/artist/link.vala index 5f95c4c..dc6470f 100644 --- a/src/client/api/objects/artist/link.vala +++ b/src/client/api/objects/artist/link.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/artist/ratings.vala b/src/client/api/objects/artist/ratings.vala index 878252b..24395af 100644 --- a/src/client/api/objects/artist/ratings.vala +++ b/src/client/api/objects/artist/ratings.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/cover.vala b/src/client/api/objects/cover.vala index 1be5b5d..2fdd02c 100644 --- a/src/client/api/objects/cover.vala +++ b/src/client/api/objects/cover.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/download_info.vala b/src/client/api/objects/download_info.vala index e000499..ad3aa3a 100644 --- a/src/client/api/objects/download_info.vala +++ b/src/client/api/objects/download_info.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/icon.vala b/src/client/api/objects/icon.vala index 16ee4e9..72a9cc4 100644 --- a/src/client/api/objects/icon.vala +++ b/src/client/api/objects/icon.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/playlist/case_forms.vala b/src/client/api/objects/playlist/case_forms.vala index 8e18521..6128fe3 100644 --- a/src/client/api/objects/playlist/case_forms.vala +++ b/src/client/api/objects/playlist/case_forms.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/playlist/liked_playlist.vala b/src/client/api/objects/playlist/liked_playlist.vala index 2f6ac19..cd5f499 100644 --- a/src/client/api/objects/playlist/liked_playlist.vala +++ b/src/client/api/objects/playlist/liked_playlist.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/playlist/made_for.vala b/src/client/api/objects/playlist/made_for.vala index 1977bda..2fdc371 100644 --- a/src/client/api/objects/playlist/made_for.vala +++ b/src/client/api/objects/playlist/made_for.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/playlist/play_counter.vala b/src/client/api/objects/playlist/play_counter.vala index bc2872e..40906d2 100644 --- a/src/client/api/objects/playlist/play_counter.vala +++ b/src/client/api/objects/playlist/play_counter.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/playlist/playlist.vala b/src/client/api/objects/playlist/playlist.vala index d074715..2c63cbf 100644 --- a/src/client/api/objects/playlist/playlist.vala +++ b/src/client/api/objects/playlist/playlist.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/playlist/playlist_absence.vala b/src/client/api/objects/playlist/playlist_absence.vala index 4254d39..e946a3a 100644 --- a/src/client/api/objects/playlist/playlist_absence.vala +++ b/src/client/api/objects/playlist/playlist_absence.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/playlist/playlist_recommendations.vala b/src/client/api/objects/playlist/playlist_recommendations.vala index 264f56f..09354cf 100644 --- a/src/client/api/objects/playlist/playlist_recommendations.vala +++ b/src/client/api/objects/playlist/playlist_recommendations.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/playlist/user.vala b/src/client/api/objects/playlist/user.vala index 191e126..858ee97 100644 --- a/src/client/api/objects/playlist/user.vala +++ b/src/client/api/objects/playlist/user.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/queue/context.vala b/src/client/api/objects/queue/context.vala index 496d00c..a067582 100644 --- a/src/client/api/objects/queue/context.vala +++ b/src/client/api/objects/queue/context.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/queue/queue.vala b/src/client/api/objects/queue/queue.vala index 07d67ec..85f164a 100644 --- a/src/client/api/objects/queue/queue.vala +++ b/src/client/api/objects/queue/queue.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/queue/short_queue.vala b/src/client/api/objects/queue/short_queue.vala index 79c7e3a..fa62713 100644 --- a/src/client/api/objects/queue/short_queue.vala +++ b/src/client/api/objects/queue/short_queue.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/rotor/ad_params.vala b/src/client/api/objects/rotor/ad_params.vala index 96b5487..13057b8 100644 --- a/src/client/api/objects/rotor/ad_params.vala +++ b/src/client/api/objects/rotor/ad_params.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/dashboard.vala b/src/client/api/objects/rotor/dashboard.vala index 6099b32..e86e2c7 100644 --- a/src/client/api/objects/rotor/dashboard.vala +++ b/src/client/api/objects/rotor/dashboard.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/discrete_scale.vala b/src/client/api/objects/rotor/discrete_scale.vala index 2a3d3f3..9517cd5 100644 --- a/src/client/api/objects/rotor/discrete_scale.vala +++ b/src/client/api/objects/rotor/discrete_scale.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/enum.vala b/src/client/api/objects/rotor/enum.vala index 0be846b..b142288 100644 --- a/src/client/api/objects/rotor/enum.vala +++ b/src/client/api/objects/rotor/enum.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/id.vala b/src/client/api/objects/rotor/id.vala index fc7ac49..dd6b597 100644 --- a/src/client/api/objects/rotor/id.vala +++ b/src/client/api/objects/rotor/id.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/restrictions.vala b/src/client/api/objects/rotor/restrictions.vala index c9e8730..12011a8 100644 --- a/src/client/api/objects/rotor/restrictions.vala +++ b/src/client/api/objects/rotor/restrictions.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/sequence.vala b/src/client/api/objects/rotor/sequence.vala index c40c8be..18aa19c 100644 --- a/src/client/api/objects/rotor/sequence.vala +++ b/src/client/api/objects/rotor/sequence.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/settings.vala b/src/client/api/objects/rotor/settings.vala index 50ee667..04b9892 100644 --- a/src/client/api/objects/rotor/settings.vala +++ b/src/client/api/objects/rotor/settings.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/station.vala b/src/client/api/objects/rotor/station.vala index 8592924..9c07171 100644 --- a/src/client/api/objects/rotor/station.vala +++ b/src/client/api/objects/rotor/station.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/station_data.vala b/src/client/api/objects/rotor/station_data.vala index db0bd63..4719b81 100644 --- a/src/client/api/objects/rotor/station_data.vala +++ b/src/client/api/objects/rotor/station_data.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/station_info.vala b/src/client/api/objects/rotor/station_info.vala index d2cf136..9e06eb2 100644 --- a/src/client/api/objects/rotor/station_info.vala +++ b/src/client/api/objects/rotor/station_info.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/station_tracks.vala b/src/client/api/objects/rotor/station_tracks.vala index d9bacdd..209a922 100644 --- a/src/client/api/objects/rotor/station_tracks.vala +++ b/src/client/api/objects/rotor/station_tracks.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/rotor/value.vala b/src/client/api/objects/rotor/value.vala index b12a260..f2b86df 100644 --- a/src/client/api/objects/rotor/value.vala +++ b/src/client/api/objects/rotor/value.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/api/objects/track/chart.vala b/src/client/api/objects/track/chart.vala index c74be30..b32306d 100644 --- a/src/client/api/objects/track/chart.vala +++ b/src/client/api/objects/track/chart.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/track/lyrics_info.vala b/src/client/api/objects/track/lyrics_info.vala index 6b5d679..17125af 100644 --- a/src/client/api/objects/track/lyrics_info.vala +++ b/src/client/api/objects/track/lyrics_info.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/track/meta_data.vala b/src/client/api/objects/track/meta_data.vala index dea4d3b..54e753e 100644 --- a/src/client/api/objects/track/meta_data.vala +++ b/src/client/api/objects/track/meta_data.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.YaMAPI { diff --git a/src/client/api/objects/track/track.vala b/src/client/api/objects/track/track.vala index 74b9a20..78067e2 100644 --- a/src/client/api/objects/track/track.vala +++ b/src/client/api/objects/track/track.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/track_heap.vala b/src/client/api/objects/track_heap.vala index 23db8cd..98ccf19 100644 --- a/src/client/api/objects/track_heap.vala +++ b/src/client/api/objects/track_heap.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/objects/track_short.vala b/src/client/api/objects/track_short.vala index 5b72266..6b635b7 100644 --- a/src/client/api/objects/track_short.vala +++ b/src/client/api/objects/track_short.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 3106ad6..995835a 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/cachier/cachier.vala b/src/client/cachier/cachier.vala index fe6f962..91df4de 100644 --- a/src/client/cachier/cachier.vala +++ b/src/client/cachier/cachier.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/cachier/controller.vala b/src/client/cachier/controller.vala index c1b10a6..fdcb7c5 100644 --- a/src/client/cachier/controller.vala +++ b/src/client/cachier/controller.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/cachier/info_db.vala b/src/client/cachier/info_db.vala index a5295eb..1f6f53b 100644 --- a/src/client/cachier/info_db.vala +++ b/src/client/cachier/info_db.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/cachier/job.vala b/src/client/cachier/job.vala index 56af0a7..793474c 100644 --- a/src/client/cachier/job.vala +++ b/src/client/cachier/job.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/cachier/storager.vala b/src/client/cachier/storager.vala index 0f1b385..f9959a1 100644 --- a/src/client/cachier/storager.vala +++ b/src/client/cachier/storager.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient.Cachier { diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index cf7ae37..f4ab65c 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -13,7 +13,7 @@ * You should have received a copy of the GNU General Public License * along with program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/likes_controller.vala b/src/client/likes_controller.vala index 76522e2..a7edbff 100644 --- a/src/client/likes_controller.vala +++ b/src/client/likes_controller.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/logger.vala b/src/client/logger.vala index 8c595ad..30a0c50 100644 --- a/src/client/logger.vala +++ b/src/client/logger.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/player/mpris.vala b/src/client/player/mpris.vala index c6d9256..5d49af9 100644 --- a/src/client/player/mpris.vala +++ b/src/client/player/mpris.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/player/player.vala b/src/client/player/player.vala index 259cdef..97f7773 100644 --- a/src/client/player/player.vala +++ b/src/client/player/player.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/player/player_flow.vala b/src/client/player/player_flow.vala index 85d2954..c8d331a 100644 --- a/src/client/player/player_flow.vala +++ b/src/client/player/player_flow.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/client/player/player_track_list.vala b/src/client/player/player_track_list.vala index d6b95c6..59c6433 100644 --- a/src/client/player/player_track_list.vala +++ b/src/client/player/player_track_list.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/player/track_local.vala b/src/client/player/track_local.vala index 7a267eb..feebe48 100644 --- a/src/client/player/track_local.vala +++ b/src/client/player/track_local.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using CassetteClient.YaMAPI; diff --git a/src/client/soup_wrapper.vala b/src/client/soup_wrapper.vala index d706512..d4d6daf 100644 --- a/src/client/soup_wrapper.vala +++ b/src/client/soup_wrapper.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Soup; diff --git a/src/client/talkers/abstract_talker.vala b/src/client/talkers/abstract_talker.vala index fb6a1d9..12668c0 100644 --- a/src/client/talkers/abstract_talker.vala +++ b/src/client/talkers/abstract_talker.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/talkers/yam_talker.vala b/src/client/talkers/yam_talker.vala index 8359b6b..d0a7590 100644 --- a/src/client/talkers/yam_talker.vala +++ b/src/client/talkers/yam_talker.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/threader.vala b/src/client/threader.vala index 11b7ca9..e57dfc4 100644 --- a/src/client/threader.vala +++ b/src/client/threader.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient { diff --git a/src/client/utils.vala b/src/client/utils.vala index 5910b26..05c6516 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/client/yam_object.vala b/src/client/yam_object.vala index 90399ca..0afbbc9 100644 --- a/src/client/yam_object.vala +++ b/src/client/yam_object.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace CassetteClient { diff --git a/src/main.vala b/src/main.vala index 00c190b..6949610 100644 --- a/src/main.vala +++ b/src/main.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ int main (string[] args) { diff --git a/src/main_window.vala b/src/main_window.vala index efcbb16..9258925 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/pager.vala b/src/pager.vala index 50c49ef..7cd7b74 100644 --- a/src/pager.vala +++ b/src/pager.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/utils.vala b/src/utils.vala index 3c558f7..6185470 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using CassetteClient; diff --git a/src/widgets/account_info_window.vala b/src/widgets/account_info_window.vala index 14de6ef..eafed46 100644 --- a/src/widgets/account_info_window.vala +++ b/src/widgets/account_info_window.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/begin/begin_view.vala b/src/widgets/begin/begin_view.vala index 98e5f96..edf7045 100644 --- a/src/widgets/begin/begin_view.vala +++ b/src/widgets/begin/begin_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/begin/begin_window.vala b/src/widgets/begin/begin_window.vala index 41e92c5..f32e241 100644 --- a/src/widgets/begin/begin_window.vala +++ b/src/widgets/begin/begin_window.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/cache_indicator/cache_indicator.vala b/src/widgets/cache_indicator/cache_indicator.vala index 900e215..48992c3 100644 --- a/src/widgets/cache_indicator/cache_indicator.vala +++ b/src/widgets/cache_indicator/cache_indicator.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/cache_indicator/job_info_badge.vala b/src/widgets/cache_indicator/job_info_badge.vala index dbf47c7..ccea2b4 100644 --- a/src/widgets/cache_indicator/job_info_badge.vala +++ b/src/widgets/cache_indicator/job_info_badge.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/clickable_label.vala b/src/widgets/clickable_label.vala index 32d3769..b57cbaf 100644 --- a/src/widgets/clickable_label.vala +++ b/src/widgets/clickable_label.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/cover_image.vala b/src/widgets/cover_image.vala index 7cb320e..ab8f76c 100644 --- a/src/widgets/cover_image.vala +++ b/src/widgets/cover_image.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/custom_button.vala b/src/widgets/custom_button.vala index 16f37af..abbfab1 100644 --- a/src/widgets/custom_button.vala +++ b/src/widgets/custom_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/dislike_button.vala b/src/widgets/dislike_button.vala index 228b46b..4e8c0be 100644 --- a/src/widgets/dislike_button.vala +++ b/src/widgets/dislike_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/info_marks.vala b/src/widgets/info_marks.vala index ed801fd..9cd4c55 100644 --- a/src/widgets/info_marks.vala +++ b/src/widgets/info_marks.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/label_button.vala b/src/widgets/label_button.vala index dfbf9dd..8f0a115 100644 --- a/src/widgets/label_button.vala +++ b/src/widgets/label_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/widgets/like_button.vala b/src/widgets/like_button.vala index d36b312..b1c0c89 100644 --- a/src/widgets/like_button.vala +++ b/src/widgets/like_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/loading_widget.vala b/src/widgets/loading_widget.vala index dbf9fc5..25d9179 100644 --- a/src/widgets/loading_widget.vala +++ b/src/widgets/loading_widget.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/lyrics/lyrics_line.vala b/src/widgets/lyrics/lyrics_line.vala index d82dfbf..e9f82e3 100644 --- a/src/widgets/lyrics/lyrics_line.vala +++ b/src/widgets/lyrics/lyrics_line.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/widgets/lyrics/lyrics_panel.vala b/src/widgets/lyrics/lyrics_panel.vala index a9a45d4..dbc9af7 100644 --- a/src/widgets/lyrics/lyrics_panel.vala +++ b/src/widgets/lyrics/lyrics_panel.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/lyrics_line.vala b/src/widgets/lyrics_line.vala index a622ca2..dc1d00b 100644 --- a/src/widgets/lyrics_line.vala +++ b/src/widgets/lyrics_line.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using Gee; diff --git a/src/widgets/lyrics_panel.vala b/src/widgets/lyrics_panel.vala index 1ca93ec..a82a81b 100644 --- a/src/widgets/lyrics_panel.vala +++ b/src/widgets/lyrics_panel.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/options_button/options_button.vala b/src/widgets/options_button/options_button.vala index 879e614..de287fc 100644 --- a/src/widgets/options_button/options_button.vala +++ b/src/widgets/options_button/options_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/options_button/playlist_options_button.vala b/src/widgets/options_button/playlist_options_button.vala index 3babd6d..89f0d4e 100644 --- a/src/widgets/options_button/playlist_options_button.vala +++ b/src/widgets/options_button/playlist_options_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/options_button/track_options_button.vala b/src/widgets/options_button/track_options_button.vala index 215bbf9..21c19ba 100644 --- a/src/widgets/options_button/track_options_button.vala +++ b/src/widgets/options_button/track_options_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/pages/abstract_loadable_page.vala b/src/widgets/pages/abstract_loadable_page.vala index af65947..ad18c4e 100644 --- a/src/widgets/pages/abstract_loadable_page.vala +++ b/src/widgets/pages/abstract_loadable_page.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/pages/loading_page.vala b/src/widgets/pages/loading_page.vala index b1e4e98..f463f7a 100644 --- a/src/widgets/pages/loading_page.vala +++ b/src/widgets/pages/loading_page.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/play_button/play_button.vala b/src/widgets/play_button/play_button.vala index 6840855..5f59f54 100644 --- a/src/widgets/play_button/play_button.vala +++ b/src/widgets/play_button/play_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/play_button/play_button_action.vala b/src/widgets/play_button/play_button_action.vala index 08007a2..6f353f8 100644 --- a/src/widgets/play_button/play_button_action.vala +++ b/src/widgets/play_button/play_button_action.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/play_button/play_button_context.vala b/src/widgets/play_button/play_button_context.vala index ceceb68..e709d61 100644 --- a/src/widgets/play_button/play_button_context.vala +++ b/src/widgets/play_button/play_button_context.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/play_button/play_button_default.vala b/src/widgets/play_button/play_button_default.vala index 0efba3b..83b9a92 100644 --- a/src/widgets/play_button/play_button_default.vala +++ b/src/widgets/play_button/play_button_default.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/play_button/play_button_track.vala b/src/widgets/play_button/play_button_track.vala index 3dece00..ab1b723 100644 --- a/src/widgets/play_button/play_button_track.vala +++ b/src/widgets/play_button/play_button_track.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/player_bar.vala b/src/widgets/player_bar.vala index e62fde1..6b8cb09 100644 --- a/src/widgets/player_bar.vala +++ b/src/widgets/player_bar.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/playlist_choose_window.vala b/src/widgets/playlist_choose_window.vala index f6a3af8..6bb4d5b 100644 --- a/src/widgets/playlist_choose_window.vala +++ b/src/widgets/playlist_choose_window.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/playlist_create_button.vala b/src/widgets/playlist_create_button.vala index 9e958d6..f1bc801 100644 --- a/src/widgets/playlist_create_button.vala +++ b/src/widgets/playlist_create_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/playlist_micro.vala b/src/widgets/playlist_micro.vala index 0397f21..b9e2daf 100644 --- a/src/widgets/playlist_micro.vala +++ b/src/widgets/playlist_micro.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/playlist_row.vala b/src/widgets/playlist_row.vala index 97fd2f3..73a52ca 100644 --- a/src/widgets/playlist_row.vala +++ b/src/widgets/playlist_row.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/preferences/cache_deletion_preferences.vala b/src/widgets/preferences/cache_deletion_preferences.vala index c7db95e..90cdbe2 100644 --- a/src/widgets/preferences/cache_deletion_preferences.vala +++ b/src/widgets/preferences/cache_deletion_preferences.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/preferences/custom_page_preferences.vala b/src/widgets/preferences/custom_page_preferences.vala index 22bf920..d9874b4 100644 --- a/src/widgets/preferences/custom_page_preferences.vala +++ b/src/widgets/preferences/custom_page_preferences.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/preferences/custom_pages_preferences.vala b/src/widgets/preferences/custom_pages_preferences.vala index 6b2256b..ad816bd 100644 --- a/src/widgets/preferences/custom_pages_preferences.vala +++ b/src/widgets/preferences/custom_pages_preferences.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/preferences/preferences_window.vala b/src/widgets/preferences/preferences_window.vala index f429abd..219980b 100644 --- a/src/widgets/preferences/preferences_window.vala +++ b/src/widgets/preferences/preferences_window.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/save_stack.vala b/src/widgets/save_stack.vala index 46b6b15..5c41e9e 100644 --- a/src/widgets/save_stack.vala +++ b/src/widgets/save_stack.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/sidebar.vala b/src/widgets/sidebar.vala index 0ca75ae..d353298 100644 --- a/src/widgets/sidebar.vala +++ b/src/widgets/sidebar.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/track_detailed.vala b/src/widgets/track_detailed.vala index 200dc9b..66b46f4 100644 --- a/src/widgets/track_detailed.vala +++ b/src/widgets/track_detailed.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/track_info_panel.vala b/src/widgets/track_info_panel.vala index a19c116..93c1214 100644 --- a/src/widgets/track_info_panel.vala +++ b/src/widgets/track_info_panel.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ using CassetteClient; diff --git a/src/widgets/track_list/track_list.vala b/src/widgets/track_list/track_list.vala index 1c5049a..25cfdf6 100644 --- a/src/widgets/track_list/track_list.vala +++ b/src/widgets/track_list/track_list.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/track_list/track_row_base.vala b/src/widgets/track_list/track_row_base.vala index b0afef6..a64eb54 100644 --- a/src/widgets/track_list/track_row_base.vala +++ b/src/widgets/track_list/track_row_base.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,5 +12,5 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/track_list/tracks_model.vala b/src/widgets/track_list/tracks_model.vala index b0afef6..a64eb54 100644 --- a/src/widgets/track_list/tracks_model.vala +++ b/src/widgets/track_list/tracks_model.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,5 +12,5 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/track_list/tracks_view.vala b/src/widgets/track_list/tracks_view.vala index b0afef6..a64eb54 100644 --- a/src/widgets/track_list/tracks_view.vala +++ b/src/widgets/track_list/tracks_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,5 +12,5 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/track_row_contents/track_default_content.vala b/src/widgets/track_row_contents/track_default_content.vala index 1aa2924..f6e17dd 100644 --- a/src/widgets/track_row_contents/track_default_content.vala +++ b/src/widgets/track_row_contents/track_default_content.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/track_row_contents/track_placeholder.vala b/src/widgets/track_row_contents/track_placeholder.vala index 81a5393..4109742 100644 --- a/src/widgets/track_row_contents/track_placeholder.vala +++ b/src/widgets/track_row_contents/track_placeholder.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/track_row_contents/track_queue_content.vala b/src/widgets/track_row_contents/track_queue_content.vala index 8d09b9f..caec015 100644 --- a/src/widgets/track_row_contents/track_queue_content.vala +++ b/src/widgets/track_row_contents/track_queue_content.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/track_row_contents/track_row_content.vala b/src/widgets/track_row_contents/track_row_content.vala index e1219ae..94ec4f7 100644 --- a/src/widgets/track_row_contents/track_row_content.vala +++ b/src/widgets/track_row_contents/track_row_content.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/track_row_contents/ya_track_row_content.vala b/src/widgets/track_row_contents/ya_track_row_content.vala index d6c33bc..939827e 100644 --- a/src/widgets/track_row_contents/ya_track_row_content.vala +++ b/src/widgets/track_row_contents/ya_track_row_content.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/views/base_view.vala b/src/widgets/views/base_view.vala index 7d6d605..b0d0223 100644 --- a/src/widgets/views/base_view.vala +++ b/src/widgets/views/base_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/views/cachiable_view.vala b/src/widgets/views/cachiable_view.vala index 886acec..663ddac 100644 --- a/src/widgets/views/cachiable_view.vala +++ b/src/widgets/views/cachiable_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/views/cant_show_view.vala b/src/widgets/views/cant_show_view.vala index dbb5adb..6a541dc 100644 --- a/src/widgets/views/cant_show_view.vala +++ b/src/widgets/views/cant_show_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/views/devel_view.vala b/src/widgets/views/devel_view.vala index fe8f1fe..c405acc 100644 --- a/src/widgets/views/devel_view.vala +++ b/src/widgets/views/devel_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/views/disliked_tracks_view.vala b/src/widgets/views/disliked_tracks_view.vala index e1ece4a..ce187ea 100644 --- a/src/widgets/views/disliked_tracks_view.vala +++ b/src/widgets/views/disliked_tracks_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/views/main_view.vala b/src/widgets/views/main_view.vala index 39191f9..a698c1f 100644 --- a/src/widgets/views/main_view.vala +++ b/src/widgets/views/main_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/views/playlist_view.vala b/src/widgets/views/playlist_view.vala index 51052e7..c4fe092 100644 --- a/src/widgets/views/playlist_view.vala +++ b/src/widgets/views/playlist_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/views/playlists_view.vala b/src/widgets/views/playlists_view.vala index 14cd056..2b696f4 100644 --- a/src/widgets/views/playlists_view.vala +++ b/src/widgets/views/playlists_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/views/root_view.vala b/src/widgets/views/root_view.vala index 6839905..c2bb54c 100644 --- a/src/widgets/views/root_view.vala +++ b/src/widgets/views/root_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ namespace Cassette { diff --git a/src/widgets/views/with_tracks_view.vala b/src/widgets/views/with_tracks_view.vala index 87bdcfe..2515256 100644 --- a/src/widgets/views/with_tracks_view.vala +++ b/src/widgets/views/with_tracks_view.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ diff --git a/src/widgets/volume_button.vala b/src/widgets/volume_button.vala index 0384a2f..2a7def3 100644 --- a/src/widgets/volume_button.vala +++ b/src/widgets/volume_button.vala @@ -2,8 +2,7 @@ * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * the Free Software Foundation, version 3 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,7 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . * - * SPDX-License-Identifier: GPL-3.0-or-later + * SPDX-License-Identifier: GPL-3.0-only */ From f371a5c15eab285b0bc871fae85f8b47297f5777 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 15 Feb 2024 06:13:52 +0300 Subject: [PATCH 118/854] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20=D0=BF=D0=B5=D1=80=D0=B5=D0=BC=D0=B5=D1=89=D0=B5=D0=BD?= =?UTF-8?q?=D0=BD=D1=8B=D0=B5=20=D1=84=D0=B0=D0=B9=D0=BB=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/widgets/lyrics_line.vala | 129 ---------------------------------- src/widgets/lyrics_panel.vala | 128 --------------------------------- 2 files changed, 257 deletions(-) delete mode 100644 src/widgets/lyrics_line.vala delete mode 100644 src/widgets/lyrics_panel.vala diff --git a/src/widgets/lyrics_line.vala b/src/widgets/lyrics_line.vala deleted file mode 100644 index dc1d00b..0000000 --- a/src/widgets/lyrics_line.vala +++ /dev/null @@ -1,129 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -using Gee; - -namespace Cassette { - [GtkTemplate (ui = "/com/github/Rirusha/Cassette/ui/lyrics_line.ui")] - public class LyricsLine : Adw.Bin { - [GtkChild] - unowned Gtk.Revealer line_small; - [GtkChild] - unowned Gtk.Label line_big_label; - [GtkChild] - unowned Gtk.Label line_small_label; - - public bool is_big { - get { - return line_big_label.visible; - } - } - - public bool is_empty { - get { - return line == ""; - } - } - - public string line { get; construct set; } - public int64 time_ms { get; construct set; default = -1; } - - int64 next_time; - uint diff_con = -1; - - Gtk.GestureClick? gesture_click = null; - Gtk.EventControllerMotion? event_motion = null; - - public LyricsLine.text (string line) { - Object (line: line); - } - - public LyricsLine.sync (string? line, int64 time_ms) { - Object (line: line, time_ms: time_ms); - } - - construct { - line_small_label.label = line; - line_big_label.label = line; - - line_small.bind_property ("visible", line_big_label, "visible", GLib.BindingFlags.INVERT_BOOLEAN); - line_small.bind_property ("visible", line_small, "reveal-child", BindingFlags.DEFAULT); - } - - public void big () { - line_small.visible = false; - } - - public void small () { - line_small.visible = true; - } - - public void make_text () { - line_small_label.remove_css_class ("dim-label"); - - if (gesture_click != null) { - line_small.remove_controller (gesture_click); - } - if (event_motion != null) { - line_small.remove_controller (event_motion); - } - } - - public void make_sync () { - if (line != "") { - line_small_label.add_css_class ("dim-label"); - - gesture_click = new Gtk.GestureClick (); - gesture_click.pressed.connect ((n_press, x, y) => { - player.seek (time_ms); - }); - line_small.add_controller (gesture_click); - - event_motion = new Gtk.EventControllerMotion (); - event_motion.enter.connect (() => { - line_small_label.remove_css_class ("dim-label"); - }); - event_motion.leave.connect (() => { - line_small_label.add_css_class ("dim-label"); - }); - line_small.add_controller (event_motion); - } - } - - public void wait (int64 next_time_ms) { - next_time = next_time_ms; - - if (diff_con != -1) { - Source.remove (diff_con); - } - - diff_con = Timeout.add (100, () => { - var diff = (next_time - player.play_position_ms) / 1000; - - if (diff > 6 ) { - line_big_label.label = " < . . . >"; - return Source.CONTINUE; - } else if (diff < 0) { - diff_con = -1; - return Source.REMOVE; - } - line_big_label.label = " " + (diff + 1).to_string (); - return Source.CONTINUE; - }, Priority.HIGH_IDLE); - } - } -} diff --git a/src/widgets/lyrics_panel.vala b/src/widgets/lyrics_panel.vala deleted file mode 100644 index a82a81b..0000000 --- a/src/widgets/lyrics_panel.vala +++ /dev/null @@ -1,128 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - - -using CassetteClient; -using Gee; - - -namespace Cassette { - [GtkTemplate (ui = "/com/github/Rirusha/Cassette/ui/lyrics_panel.ui")] - public class LyricsPanel : Adw.Bin { - [GtkChild] - unowned Gtk.Box lines_box; - - public string track_id { get; set; } - - bool is_text = true; - - LyricsLine? _current_line = null; - LyricsLine? current_line { - get { - return _current_line; - } - set { - if (_current_line != null && _current_line.is_big) { - _current_line.small (); - } - _current_line = value; - if (_current_line != null && !_current_line.is_big) { - _current_line.big (); - } - } - } - LinkedList line_list; - - uint? tout = null; - - public LyricsPanel () { - Object (); - } - - public void set_sync_lyrics_lines (string[] lines) { - line_list = new LinkedList (); - LyricsLine lyrics_line; - lyrics_line = new LyricsLine.sync ("", 0); - lines_box.append (lyrics_line); - line_list.add (lyrics_line); - foreach (string line in lines) { - string[] data = line.split (" ", 2); - int64 time_ms = parse_time (data[0]); - lyrics_line = new LyricsLine.sync (data[1], time_ms); - lines_box.append (lyrics_line); - line_list.add (lyrics_line); - } - - tout = Timeout.add (100, () => { - if (player.current_track == null) { - return Source.CONTINUE; - } - - if (track_id != player.current_track.id | player.player_state != Player.PlayerState.PLAYING) { - current_line = null; - show_as_text (); - } else { - show_as_sync (); - int64 current_ms = player.play_position_ms; - for (int i = 0; i < line_list.size - 1; i++) { - if (line_list[i].time_ms > current_ms) { - break; - } - if (line_list[i + 1].time_ms > current_ms && current_line != line_list[i]) { - current_line = line_list[i]; - if (current_line.is_empty) { - current_line.wait (line_list[i + 1].time_ms); - } - break; - } - } - } - - return Source.CONTINUE; - }, Priority.LOW); - - unmap.connect (() => { - if (tout != null) { - Source.remove (tout); - } - }); - } - - void show_as_text () { - if (!is_text) { - is_text = true; - foreach (var line in line_list) { - line.make_text (); - } - } - } - - void show_as_sync () { - if (is_text) { - is_text = false; - foreach (var line in line_list) { - line.make_sync (); - } - } - } - - public void set_text_lyrics_lines (string[] lines) { - string text = string.joinv ("\n", lines); - lines_box.append (new LyricsLine.text (text)); - } - } -} From ba49ad88142402287c69b90c00055b2f45facf0a Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 15 Feb 2024 06:19:58 +0300 Subject: [PATCH 119/854] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D0=BC=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D0=B8=D1=82=D1=8C=20=D0=B2=D0=BA=D0=BB=D0=B0=D0=B4?= =?UTF-8?q?=D0=BA=D1=83=20=D1=80=D0=B0=D0=B7=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D1=87=D0=B8=D0=BA=D0=B0=20=D0=BD=D0=B0=20=D0=BF=D0=B5=D1=80?= =?UTF-8?q?=D0=B2=D0=BE=D0=B5=20=D0=BC=D0=B5=D1=81=D1=82=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pager.vala | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/pager.vala b/src/pager.vala index 7cd7b74..d40bc86 100644 --- a/src/pager.vala +++ b/src/pager.vala @@ -253,6 +253,15 @@ namespace Cassette { } void load_static_pages () { + if (application.is_devel) { + add_page ({ + "devel", + "Devel", + "face-cool-symbolic", + typeof (DevelView).name () + }); + } + if (storager.settings.get_boolean ("show-main")) { add_page ({ "main", @@ -281,15 +290,6 @@ namespace Cassette { {null} }); } - - if (application.is_devel) { - add_page ({ - "devel", - "Devel", - "face-cool-symbolic", - typeof (DevelView).name () - }); - } } void load_custom_pages () { From 2f668ec0deb59f6ee6097f7c2e0c6a856be93156 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sat, 17 Feb 2024 09:12:40 +0300 Subject: [PATCH 120/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=B7=D0=B0=D0=B5=D0=B4=D0=B0=D1=8E=D1=89?= =?UTF-8?q?=D0=B8=D0=B9=20=D1=81=D0=BB=D0=B0=D0=B9=D0=B4=D0=B5=D1=80=20?= =?UTF-8?q?=D0=B2=D0=BE=D1=81=D0=BF=D1=80=D0=BE=D0=B8=D0=B7=D0=B2=D0=B5?= =?UTF-8?q?=D0=B4=D0=B5=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/widgets/player_bar.vala | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/widgets/player_bar.vala b/src/widgets/player_bar.vala index 6b8cb09..95b941a 100644 --- a/src/widgets/player_bar.vala +++ b/src/widgets/player_bar.vala @@ -99,12 +99,10 @@ namespace Cassette { slider.change_value.connect ((scroll_type, new_value) => { player.seek ((int) (new_value * 1000)); + on_playback_callback (new_value); }); - player.playback_callback.connect ((play_pos) => { - current_time_mark.label = sec2str ((int) play_pos, true); - slider.set_value (play_pos); - }); + player.playback_callback.connect (on_playback_callback); player.current_track_start_loading.connect (() => { sensitive = false; @@ -232,6 +230,11 @@ namespace Cassette { block_widget (fullscreen_button, BlockReason.NOT_IMPLEMENTED); } + void on_playback_callback (double pos) { + current_time_mark.label = sec2str ((int) pos, true); + slider.set_value (pos); + } + void on_carousel_page_changed (uint index) { if (index == 1) { centerized = true; From ab3bdbe3ff75657293f471bbb85245c5aa803590 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sat, 17 Feb 2024 17:32:17 +0300 Subject: [PATCH 121/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BD=D0=B5=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=D1=8C=D0=BD=D1=83=D1=8E=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D1=83=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA=D0=B8=20?= =?UTF-8?q?=D0=B8=20=D1=81=D0=BE=D1=85=D1=80=D0=B0=D0=BD=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=8F=20=D1=81=D0=BE=D1=85=D1=80=D0=B0=D0=BD=D0=B5=D0=BD=D0=BD?= =?UTF-8?q?=D1=8B=D1=85=20=D0=BE=D0=B1=D1=8A=D0=B5=D0=BA=D1=82=D0=BE=D0=B2?= =?UTF-8?q?=20=D0=BF=D1=80=D0=B8=20=D1=81=D1=82=D0=B0=D1=80=D1=82=D0=B5=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B8=D0=BB=D0=BE=D0=B6=D0=B5=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/cachier/cachier.vala | 27 +++++++++++++++++++++++++-- src/main_window.vala | 2 +- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/src/client/cachier/cachier.vala b/src/client/cachier/cachier.vala index 91df4de..12a3953 100644 --- a/src/client/cachier/cachier.vala +++ b/src/client/cachier/cachier.vala @@ -79,11 +79,34 @@ namespace CassetteClient.Cachier { return null; } - public void check_all_cache () { + public async void check_all_cache () { + Logger.debug ("Started full saves check"); + var objs = storager.get_saved_objects (); foreach (var obj in objs) { - start_cache (obj); + HasTrackList new_obj = null; + + threader.add (() => { + if (obj is YaMAPI.Playlist) { + var pl_obj = (YaMAPI.Playlist) obj; + + try { + new_obj = yam_talker.get_playlist_info (pl_obj.uid, pl_obj.kind); + } catch (BadStatusCodeError e) { } + + } else { + assert_not_reached (); + } + + Idle.add (check_all_cache.callback); + }); + + yield; + + if (new_obj != null) { + start_cache (new_obj); + } } } diff --git a/src/main_window.vala b/src/main_window.vala index 9258925..ab02b0b 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -239,7 +239,7 @@ namespace Cassette { app_menu_button.sensitive = true; button_refresh.sensitive = true; - cachier.check_all_cache (); + cachier.check_all_cache.begin (); notify["is-active"].connect (() => { if ( From 28f7bf1d75183c05da40c0e7f119e34da4ab761e Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sat, 17 Feb 2024 22:11:17 +0300 Subject: [PATCH 122/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=B3=D1=80=D0=BE=D0=BC=D0=BA=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D1=8C=20=D0=BF=D0=BE-=D1=83=D0=BC=D0=BE=D0=BB=D1=87=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/io.github.Rirusha.Cassette.gschema.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/io.github.Rirusha.Cassette.gschema.xml b/data/io.github.Rirusha.Cassette.gschema.xml index 8c6b345..73a2967 100644 --- a/data/io.github.Rirusha.Cassette.gschema.xml +++ b/data/io.github.Rirusha.Cassette.gschema.xml @@ -39,7 +39,7 @@ false - 0.2 + 0.1 false From 46d69b0d69bd405561608ea45a9cc101f57d4f21 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sat, 17 Feb 2024 22:43:09 +0300 Subject: [PATCH 123/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BD=D0=BE=D0=BF=D0=BA=D1=83=20=D0=BD?= =?UTF-8?q?=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9=D0=BA=D0=B8=20=D0=B2=D0=BE?= =?UTF-8?q?=D0=BB=D0=BD=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/ui/player_bar.blp | 11 +++++++ src/client/player/player.vala | 12 +++++--- src/client/player/player_flow.vala | 5 ++-- src/widgets/player_bar.vala | 46 ++++++++++++++++++++++-------- 4 files changed, 56 insertions(+), 18 deletions(-) diff --git a/data/ui/player_bar.blp b/data/ui/player_bar.blp index 8f18881..22256b3 100644 --- a/data/ui/player_bar.blp +++ b/data/ui/player_bar.blp @@ -85,6 +85,17 @@ template $CassettePlayerBar : Adw.Bin { tooltip-text: _("Change shuffle mode"); } + Button flow_settings_button { + styles [ + "flat", + "circular" + ] + + valign: center; + icon-name: "io.github.Rirusha.Cassette-symbolic"; + tooltip-text: _("Show wave settings"); + } + Button prev_track_button { styles [ "circular", diff --git a/src/client/player/player.vala b/src/client/player/player.vala index 97f7773..7fa0108 100644 --- a/src/client/player/player.vala +++ b/src/client/player/player.vala @@ -171,7 +171,7 @@ namespace CassetteClient.Player { public signal void next_done (); public signal void prev_done (); - public signal void mode_inited (); + public signal void mode_inited (PlayerModeType player_type); // playback_callback поднимается, если время воспроизведения > 0 public signal void playback_callback (double playback_pos_sec); @@ -287,8 +287,12 @@ namespace CassetteClient.Player { } } - public void start_flow () { - player_mode = new PlayerFlow (this); + public void start_flow (YaMAPI.Queue queue) { + stop (); + + player_mode = new PlayerFlow (this, queue); + + mode_inited (PlayerModeType.FLOW); } void set_queue (YaMAPI.Queue queue) { @@ -298,7 +302,7 @@ namespace CassetteClient.Player { player_mode = playertl; playertl.queue = queue; - mode_inited (); + mode_inited (PlayerModeType.TRACK_LIST); } public void start_queue (YaMAPI.Queue queue) { diff --git a/src/client/player/player_flow.vala b/src/client/player/player_flow.vala index c8d331a..f9466ba 100644 --- a/src/client/player/player_flow.vala +++ b/src/client/player/player_flow.vala @@ -21,9 +21,10 @@ namespace CassetteClient.Player { public class PlayerFlow : PlayerMode { public Player player { get; construct; } + public YaMAPI.Queue queue { get; construct set; } - public PlayerFlow (Player player) { - Object (player: player); + public PlayerFlow (Player player, YaMAPI.Queue queue) { + Object (player: player, queue: queue); } public async override YaMAPI.Track? get_prev_track () { diff --git a/src/widgets/player_bar.vala b/src/widgets/player_bar.vala index 95b941a..448944b 100644 --- a/src/widgets/player_bar.vala +++ b/src/widgets/player_bar.vala @@ -29,6 +29,8 @@ namespace Cassette { [GtkChild] unowned Gtk.Scale slider; [GtkChild] + unowned Gtk.Button flow_settings_button; + [GtkChild] unowned Gtk.Button prev_track_button; [GtkChild] unowned Gtk.Button track_detailed_button; @@ -91,6 +93,8 @@ namespace Cassette { volume_button.visible = false; } + prev_track_button.bind_property ("visible", flow_settings_button, "visible", BindingFlags.INVERT_BOOLEAN | BindingFlags.SYNC_CREATE); + carousel.page_changed.connect (on_carousel_page_changed); volume_button.bind_property ("volume", player, "volume", BindingFlags.BIDIRECTIONAL); @@ -302,11 +306,7 @@ namespace Cassette { } if (queue.context.type_ == "radio") { - if (player.player_type == Player.PlayerModeType.FLOW) { - return; - } - - // player.start_flow (queue); + player.start_flow (queue); } else { player.start_queue_init (queue); @@ -335,7 +335,7 @@ namespace Cassette { } } - void on_player_mode_inited () { + void on_player_mode_inited (Player.PlayerModeType player_type) { current_track_info = player.get_current_track (); if (info_panel_center.track_info == null) { @@ -344,6 +344,20 @@ namespace Cassette { info_panel_next.track_info = current_track_info; carousel.scroll_to (info_panel_next, true); + + switch (player_type) { + case Player.PlayerModeType.FLOW: + to_flow (); + break; + + case Player.PlayerModeType.TRACK_LIST: + to_track_list (); + break; + + default: + window.hide_player_bar (); + break; + } } void on_player_current_track_changed (YaMAPI.Track? new_track) { @@ -373,12 +387,6 @@ namespace Cassette { dislike_button.visible = true; } - if (player.player_type == Player.PlayerModeType.TRACK_LIST) { - queue_show_button.visible = true; - } else { - queue_show_button.visible = false; - } - total_time_mark.label = ms2str (current_track_info.duration_ms, true); like_button.init_content (current_track_info.id); @@ -388,6 +396,20 @@ namespace Cassette { window.show_player_bar (); } + void to_flow () { + repeat_button.visible = false; + shuffle_button.visible = false; + prev_track_button.visible = false; + queue_show_button.visible = false; + } + + void to_track_list () { + repeat_button.visible = true; + shuffle_button.visible = true; + prev_track_button.visible = true; + queue_show_button.visible = true; + } + void clear () { current_track_info = null; From 3848b019d546543e3bd870eab3ae2a3e5f268c77 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 18 Feb 2024 02:15:13 +0300 Subject: [PATCH 124/854] =?UTF-8?q?=D0=9E=D1=82=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D1=8F=D1=82=D1=8C=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D0=B2=D0=BE=D0=B7=D0=BC=D0=BE=D0=B4=D0=BD?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D0=B5=D0=B9=20=D1=83=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B4=D0=BB=D1=8F=20=D0=B1?= =?UTF-8?q?=D0=BB=D0=BE=D0=BA=D0=B8=D1=80=D0=BE=D0=B2=D0=BA=D0=B8=20=D1=83?= =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/player/mpris.vala | 73 ++++++++++++++++++++++++------------ 1 file changed, 48 insertions(+), 25 deletions(-) diff --git a/src/client/player/mpris.vala b/src/client/player/mpris.vala index 5d49af9..cdce328 100644 --- a/src/client/player/mpris.vala +++ b/src/client/player/mpris.vala @@ -44,17 +44,25 @@ namespace CassetteClient.Mpris { public bool can_control { get { - return true; + return !player.is_loading; } } - public bool can_go_next { get; private set; default = true; } - public bool can_go_previous { get; private set; default = true; } - public bool can_play { get; private set; default = true; } + public bool can_go_next { + get { + return !player.is_loading; + } + } + + public bool can_go_previous { + get { + return !player.is_loading && player.player_type == Player.PlayerModeType.TRACK_LIST; + } + } public bool can_pause { get { - return true; + return !player.is_loading; } } @@ -64,6 +72,12 @@ namespace CassetteClient.Mpris { } } + public bool can_play { + get { + return true; + } + } + public string playback_status { get { switch (player.player_state) { @@ -97,17 +111,8 @@ namespace CassetteClient.Mpris { public MprisPlayer (DBusConnection con) { this.con = con; - player.current_track_start_loading.connect (() => { - can_go_next = false; - can_go_previous = false; - can_play = false; - }); - - player.current_track_finish_loading.connect (() => { - can_go_next = true; - can_go_previous = player.player_type == Player.PlayerModeType.TRACK_LIST; - can_play = true; - }); + player.current_track_start_loading.connect (send_can_properties); + player.current_track_finish_loading.connect (send_can_properties); bind_property ("volume", player, "volume", BindingFlags.BIDIRECTIONAL); @@ -116,11 +121,19 @@ namespace CassetteClient.Mpris { }); player.notify["player-state"].connect (() => { - send_property_change ("PlaybackStatus", this.playback_status); + send_property_change ("PlaybackStatus", playback_status); send_property_change ("Metadata", _get_metadata ()); }); } + void send_can_properties () { + send_property_change ("CanGoNext", can_go_next); + send_property_change ("CanGoPrevious", can_go_previous); + send_property_change ("CanControl", can_control); + send_property_change ("CanPause", can_pause); + send_property_change ("CanSeek", can_seek); + } + HashTable _get_metadata () { HashTable metadata = new HashTable (null, null); @@ -180,41 +193,51 @@ namespace CassetteClient.Mpris { ); } catch (Error e) { - Logger.warning (@"Could not send MPRIS property change: $(e.message)"); + Logger.warning ("Could not send MPRIS property change: %s".printf (e.message)); } return false; } public void next (BusName sender) throws Error { - if (!player.is_loading) { + if (can_go_next) { player.next (); } } public void previous (BusName sender) throws Error { - if (!player.is_loading) { + if (can_go_previous) { player.prev (); } } public void play (BusName sender) throws Error { - player.play (); + if (can_control) { + player.play (); + } } public void pause (BusName sender) throws Error { - player.pause (); + if (can_control) { + player.pause (); + } } public void play_pause (BusName sender) throws Error { - player.play_pause (); + if (can_control) { + player.play_pause (); + } } public void stop (BusName sender) throws Error { - player.stop (); + if (can_control) { + player.stop (); + } } public void seek (int64 position, BusName sender) throws Error { - player.seek (position); + if (can_seek) { + player.seek (position); + } } } From 4e18df86107dbfc3e6f2a0dcf2069841d815942b Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 18 Feb 2024 02:46:29 +0300 Subject: [PATCH 125/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D1=84=D0=BE=D1=80=D0=BC=D0=B0=D1=82=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/cachier/cachier.vala | 2 +- src/client/player/mpris.vala | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/client/cachier/cachier.vala b/src/client/cachier/cachier.vala index 12a3953..740ba3c 100644 --- a/src/client/cachier/cachier.vala +++ b/src/client/cachier/cachier.vala @@ -103,7 +103,7 @@ namespace CassetteClient.Cachier { }); yield; - + if (new_obj != null) { start_cache (new_obj); } diff --git a/src/client/player/mpris.vala b/src/client/player/mpris.vala index cdce328..4b77a6a 100644 --- a/src/client/player/mpris.vala +++ b/src/client/player/mpris.vala @@ -225,7 +225,7 @@ namespace CassetteClient.Mpris { public void play_pause (BusName sender) throws Error { if (can_control) { player.play_pause (); - } + } } public void stop (BusName sender) throws Error { From 32a09515d17927542157df4286f0126a3d6e9b33 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Sun, 18 Feb 2024 02:50:32 +0300 Subject: [PATCH 126/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20.desktop=20=D1=84=D0=B0=D0=B9=D0=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/io.github.Rirusha.Cassette.desktop.in | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/data/io.github.Rirusha.Cassette.desktop.in b/data/io.github.Rirusha.Cassette.desktop.in index aef764f..1c4a6f0 100644 --- a/data/io.github.Rirusha.Cassette.desktop.in +++ b/data/io.github.Rirusha.Cassette.desktop.in @@ -1,12 +1,13 @@ [Desktop Entry] -# Translators: this should be translated +# Translators: app name should be translated Name=Cassette Comment=Unofficial Yandex.Music client for GNOME +# Translators: keep number of ';' Keywords=yandex;yandex music;yam;music; Exec=cassette Icon=io.github.Rirusha.Cassette Terminal=false Type=Application -Categories=Music; +Categories=Audio;Player StartupNotify=true X-GNOME-UsesNotifications=true \ No newline at end of file From 731e38a05f05a7dd6554480a262c7d76dcbca6c3 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Mon, 19 Feb 2024 21:21:27 +0300 Subject: [PATCH 127/854] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D1=82?= =?UTF-8?q?=D1=8C=20=D0=B8=D0=BA=D0=BE=D0=BD=D0=BA=D1=83=20=D0=B1=D0=BE?= =?UTF-8?q?=D0=BB=D0=B5=D0=B5=20=D0=BA=D0=BE=D0=BD=D1=82=D1=80=D0=B0=D1=81?= =?UTF-8?q?=D1=82=D0=BD=D0=BE=D0=B9=20=D0=BD=D0=B0=20=D1=82=D1=91=D0=BC?= =?UTF-8?q?=D0=BD=D0=BE=D0=BC=20=D1=84=D0=BE=D0=BD=D0=B5=20https://github.?= =?UTF-8?q?com/Rirusha/Cassette/issues/13?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apps/io.github.Rirusha.Cassette.Devel.svg | 28 +- .../apps/io.github.Rirusha.Cassette.svg | 544 +++++++++++++++--- 2 files changed, 463 insertions(+), 109 deletions(-) diff --git a/data/icons/hicolor/scalable/apps/io.github.Rirusha.Cassette.Devel.svg b/data/icons/hicolor/scalable/apps/io.github.Rirusha.Cassette.Devel.svg index 15afa06..38b645c 100644 --- a/data/icons/hicolor/scalable/apps/io.github.Rirusha.Cassette.Devel.svg +++ b/data/icons/hicolor/scalable/apps/io.github.Rirusha.Cassette.Devel.svg @@ -10,12 +10,12 @@ - - - - - - + + + + + + @@ -28,21 +28,21 @@ - + - + - - - - + + + + - - + + diff --git a/data/icons/hicolor/scalable/apps/io.github.Rirusha.Cassette.svg b/data/icons/hicolor/scalable/apps/io.github.Rirusha.Cassette.svg index 11a51ef..cea59ef 100644 --- a/data/icons/hicolor/scalable/apps/io.github.Rirusha.Cassette.svg +++ b/data/icons/hicolor/scalable/apps/io.github.Rirusha.Cassette.svg @@ -1,96 +1,450 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 5458c508855cc794de1f7013a3402e314808cf56 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Mon, 19 Feb 2024 21:33:02 +0300 Subject: [PATCH 128/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D1=81=D0=BA=D1=80=D0=B8=D0=BD=D1=88=D0=BE?= =?UTF-8?q?=D1=82=D1=8B=20=D0=BF=D1=80=D0=B8=D0=BB=D0=BE=D0=B6=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F,=20=D1=81=D0=B4=D0=B5=D0=BB=D0=B0=D1=82=D1=8C=20?= =?UTF-8?q?=D1=81=D1=82=D0=B0=D0=BD=D0=B4=D0=B0=D1=80=D1=82=D0=BD=D0=BE?= =?UTF-8?q?=D0=B5=20=D0=BE=D1=84=D0=BE=D1=80=D0=BC=D0=BB=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=20=D0=BE=D0=BA=D0=BD=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/images/1-liked.png | Bin 0 -> 126936 bytes data/images/2-playlists.png | Bin 0 -> 365077 bytes data/images/3-lyrics.png | Bin 0 -> 197977 bytes data/images/4-queue.png | Bin 0 -> 159422 bytes data/images/5-main-settings.png | Bin 0 -> 57975 bytes data/images/fifth.png | Bin 44596 -> 0 bytes data/images/first.png | Bin 125988 -> 0 bytes data/images/fourth.png | Bin 57784 -> 0 bytes data/images/second.png | Bin 163955 -> 0 bytes data/images/third.png | Bin 147609 -> 0 bytes data/io.github.Rirusha.Cassette.appdata.xml.in | 10 +++++----- 11 files changed, 5 insertions(+), 5 deletions(-) create mode 100644 data/images/1-liked.png create mode 100644 data/images/2-playlists.png create mode 100644 data/images/3-lyrics.png create mode 100644 data/images/4-queue.png create mode 100644 data/images/5-main-settings.png delete mode 100644 data/images/fifth.png delete mode 100644 data/images/first.png delete mode 100644 data/images/fourth.png delete mode 100644 data/images/second.png delete mode 100644 data/images/third.png diff --git a/data/images/1-liked.png b/data/images/1-liked.png new file mode 100644 index 0000000000000000000000000000000000000000..d79458f2fe7f49f33d314ef750a663d714ea92d6 GIT binary patch literal 126936 zcmd3O^;=YJxb*-^cb9ZZNq2`J(%sTs3P^W1h@iB9bhmV)0@67&3P^XydB*pAKb-&I z+t+Y0z}~Z;xNEI-Z=zI{Ut*w=qCy}L3hZ%^JyDQF^t z!xz~i68uc!CadeF;cVsh-t?^{#M;T((UR?*`CCg%r*}5aZifh+V&Eh;*h$iFElu5Q zot>yOZ5=HkO5hErAeEe@85P$HE*`2Ef0lCp!G1cc|T!sT{nSDbm_X=ezw-C3m0iELqx5rAw`K1zTxwoHu za=5J_H2*&xdF-!Vxg!WsXKTPlwNqNJ$)C$@S{;coiiZOZHDAs-*=}sJfm2BtaHQy? zyGj~~X1bkkFv8A%_1=iD&Ap*|Vmdx85*)>Kf4SBwSVGe(U1DM9%NVH@VLD|Aes|k6 zr-faRN0`M`@7^deIUgSZyC71(X!1$ZFI=aIV}XeprGM8%CC0-sKZ8y^&!SePJ0%wC zy@p*$^XjWbcroU)Iia^#@)ppqPn>i9`v4nxhw7cgFBPu-_N&Pd#y{ zlMZW)C!ATIHrD?2?_{BPPwi!)*Kc;^gTA&qeq^osvB(dbCeG&udLG-l-C|*{N&s;R{704RIU)KM-ykDo@XF{Ls zWP!A8g0K4PJ6(Gf)tE-7f@}3pm;dI3AE5u~GAR{}zf2WiN4Z3BvHKFw`AM4zN#Q%*tORd>1!$`i)KfdvG zfu*^l#?JypVg*grI!rLgf`+fcmUMsL8vpyeWP0NzjC`%d@|=nU$Tm+9+cPOyn&5Qz zZ}Nxce@RK~FBM=5NmEOtNWiLp&N^|cdl0d!3Ontk{Q~yE+LU^znpWgn+;kN!z^cf{G;qEAH^6-&d&}~MFBOwd8Z{#lbuTH0 zTyB$s^_!0f>}BIW^1?nP?J$tg#WXamFoTFWI!BU8|w-32$o`LnRq|b-(>8 z&c72Y3mZlyH5`|rVYL^CjrCQPU!OblaTm{rake@o%;?OYkPcmxAO5#`9&1u*52WnP zdeRw7LgS6IYw!jw5e+t%C1GgVNj(`IM!Rp<4(vbB)`$Gtk_9iG&h zr*tD>v!t`?P5BGV@rOWS<`mfsu%LQHKaepT{!I+u`VxY&}b*gH%e~e)w^cs6v z(R8y()@Rmv67xfas8)kbzR*v;)841N^Hwbub(v4X|C_I89h&v?Vabt7GK=Qt8CG?y z4x3Fy!WQbi`n4?f6(skZGhQB&BTm`p6uhD-dRuyBj_CIP?s;sDVMPi*yJRL&r(Jhu z>v2jy#8Y_EV*YV?}kns;|czeJ@IbZK}g6wYf;^m4b&WeB>|NyuC*7+mG8 z`VQWuLchUoCYFS|a%gy%oJB!Bn@*v;^q*(Z2Nv3v7TWSEDJlK2pDFip><)gK1Ajz? zy-4>&Dl;|}n~1#{?#pEf+?Ow`hN^f7CJXXb=S93mRQoMLa%92ci&WGz2eGKb(>x@B zKGUUIb)#apdnV7L)ya3^{@psh~vg9m=9 zM(Rf#Q+)vi6!*V`Gkc}xH`cAyR_!Vy-U*)_J{Lyta8`dSD=np9XJTrm+oYxbXG)=h z?mJV$VPRpH)Yx-*xx*f?J?!0k_e|M-vq`5t^t$Z*`U?7h!nAjbGg zJ=*v$kEdL{q->AY^qbT9%G-R;(e!tJetxV&Lqp?;SDB286zW)5&=0T2Ke_fTuBcFQ z=Z=h=cx7t3*3Y6-nTc^~vp-|++nQ*VM$i)%WcraWzlE`k+HoHqCA5=+Z84B0@LMp0 zhffL)@l!77?s=*JdHh3#Fgi`%uacS?ob&VZ5+_8s@4tRorODIK1dVRp{`~94{zNsQ zt2l98g4Vl9-kwOl74Buv(x}x(J|pT6YI^n~T{PMr`!U*Dc#{phtIQB`dU|?plBvjI z-sdbV$E_>(n4PyvhpKvdpLaIzlUv>OtIB;wDk3( zg%8{C7*(>LKz?s+ZH&L9?4K&p&{(X!5_DacDb2wC0G8|Syego-D91m#r9}vxlm~g` zW~RwyM$Z}!qFrSi$G_r>=W}@=tEPrisFD-ETh&S7<>kff{8wINdUPTkhu;LJ_>J{$D*t zHPJ3bcz3rGymg0;Z|^CGY7NJBXsPqqw;u01A0t-oHu;ad+dql<2|?cMFEqFaWi{U( zw7MSmXKl>P#$(Uy?CiMQ?l*081tCzMR<`Us_Y|RMJN+e0eTs-q9B4U|>R#M6qt=^# zjuv~qI}25Annlk*m8P%+4;D%={{So7h>St&KqArEsV$TTEf=T!KBMK z2|O{VR!@(T$~T#ahM9tKn;|(=U60;tgC=|aaz-4rNX8sr+#J6P5>!;wqdD^g)05vn zsD})FkNcU}*#|iMkI`Tw_dNN*cpPJLNAt8|U&zkRZlR4mqE7{LIbV(@XEZ`7gKy0_ z;Fe6goT)pN%>WLP|1x2qCk)N?`cIlU7`BVR#5a#bZ~sn83=9lYB+3aM46xeZ1%7n- zX6Vwogo5G7?C`;zD#_+!y$jsy@O!4jbv`o;XA}(Yzodrc({=Kv6_d20X>5kMv@~44 zU^I|G>uj$9zT&?OD%r8%Eh41)?Vq0o^%X2+0xoYdW}orcsNRuEnJ&E@V*4cI{=85* zE84*68~yai7kvG8Z{E$3jF>RA(ZP2CSI;gEm!etID3v3kvxJ-0{uX8TTyL2KetWlN zcD^%R;^eddW(=%Ht4uEH+*72uv{Xt%L&MrZqj}eR*FB)womNS4D0VEV^Jk>C?4(J* z&s@*BB|Qz-w)80$rI^T0?G4v{$&IQ*W%D{Jt8rVi(yp=BpO3Ci81vVM0gv{#*$A<2 z&%jbNZ)N)&O~i0??K%cat8t$3yy>Ir`kQz>t%h_#>AJf69AkP~>*{3aaW!M54Vi!0 z6EBrj555VSwIeN02ClaO$LWo`ySu6uZ{-#b#)3tArH*OG!7R2IZGk2KppE*onLPRx z`Fx3mbDg*|LG^Db>bZr5h!I$na_;WDZN?m#%8Vzcr{hh|E10}?WbPR2iNEm}mHSRd z#dFpP-9@c){P->omSSd20@}59+4Sp?xvh?D*<_+-#>N7{NtBjfAHxdyOcy*cRyyT+ zNInGCW_|YD`2+8%N#f@%oM^HgzEdWx5r3MTe`JTD9Fyg=vD9 zhesmS(!$EhBb86~C!CpT-R>sSuh}=4KBPTJEh&iYnh_1kKX%Xa+S!lv| zQa)hA;@O8Op>zS)yyHXZJ*nZJdb2L0qL*(@H{-q!+w}4O`fwDo%Qar6!!AO>D0Vgc zR6)(k+l$)kYGugy*qbLp6R1X@P-4~93u5uo)DMc>k%uB>lQciB~LCB4P zUVx|w{2A)rsVmf2QYLSqYrm`IVV^ye`rV^GYIavvPmcs-?!*rtJ`5XWkPEm#-mm!a zdmJpaizCTu~uNSnEe?y<N4fXTHdGk{@y}66N3r zjuPFbc1A*F4w;B`QDaIBa4fR9u<_%`;Ho_ z_S};7sCouvHYjBs?iWAxCqfp0R!(O<@sOM;8%>60U+hBF266jNEds{-zK6PC-ulNo z%wlG8vZFyS`QI!x!oSWCAj~h!PDtPRa5a*=vU<*Me3+asvm?DWm@&9vdukK=ca9-O zc?qMe?v6$NnnMB04pcGUfBx(NqfY|Ina9<=|Dw-fJBUm@1qvUI`tVdfJ@-XG!t4WC z)wTO6(dx3#VgFW6Kz!>#3ybZ(uT|x zSl(UB_BrT2-WY^~z|1F^UQyN1FmrvzU1^;t;O2A&g85=%-f^KGrPX6UR66M>q|ETh z(kK`)6Q!uUXU(ODS>gNe6JKMF^qqG#owZn`WXgHtv|kLGII8_YW~US-yN@|Jx)63= z)%~NElIqlx!u+G8^6TV^35`@z^M2zZ7IB5r>DK7rT#fm07XlWQxHzT6>d-Y3g(u|e z*RNNzoeu<;eEr3}n9pfm{TaKjK`fW?D2k17LjgG(>=qid$@%5w!P4>X4=UmN(VsIi zVqQ}E;rI9V&(&HgPAupc8DT)S=j*Kd{(xv}bZo`Rh%!de828;ZkFM z1;5LxL`quPM!fKW1c=3@Wo52gS?}}e>v?t_DF=@|@v?~2wTX9FKQ^Q&6y+j9ShUL_ zkVUsiC7jL@?AB7c4-W|wf8NR(D(B>Uf1IR2wO;E9gPFR^=?H&>(SSa4^HC2P-V!Tn zzCn|dZi^c;zU&&)TV_7XpZE@Q)o>6OFi*0{$&$B{$2#ij@Ji=qE;XV0j)D&q7#W^TcK}z5pRTFyRLqUPEN*U)jP?+r_i#y z^6jXHdeonT6csFd(2Q_HXe%~)6()g zIw+i)$TkKOA}0U7o~d+nTxubJ;r@_Uf?>WKs6nN7raHi&$=eQD#mpoKJiw)zi8@|1<40*qVR>8SBHMYF6n0{Q?@^s z+3s#PAzm@j(KPI7r8uo1xw_t6xoT=_n{@@knWjy0B%XJS%KS)4N(zEHcRp)c@%Mq@ zvMK7~^k97z75TR~XD>|@x*2s8x`)i~QT4R$=UU3}4K5r)R}Lcp>>4SNX8JCM)8=`o zIy({Cm9}d(S{oZ1n{vTpUsR9k27sneW{vqE=@ONqqN2t!1{Vhh7C;hxKRz(#FB7Gr z`rTgi10Q!iT9pLRZ^56;SVJQOEaXU~A<*`H_yxIV~o+K;TFQ zzqFQ?K-RBDv88N4og`ZThj0-va%elMLv;^ijg15*qPhcn3CM4 zizNR-%HFAGMl=wSk&xZ+(;b2W!Z?MF%fYuTxjWm@Mrg}&`{lCzlLpv$62u<_qGMuU zs|UB|_=`a4=+2cE(<9?!iv99VbU*KX0*?It;hyuvYf(Hxo!t?0O+22Vd zF!a1U_}!U`UQk$t19X$0m)C=AceBb?g5C+36#RJt9YeS#C`QpFoL=e|J6zum30)1X z>EfUA$xmccK^BZ$Zuj2EATo+&={$E_blbQbs~dGIH`wY~uClObUTnTQVNv(hEWz0~ z_EVaqd8oIBIvP2Hs7TCZ5veB2^89(vMuK=ewRHF!knmu`PyW7OUhfFSz^BpM{E<4E zY?=Nre`AdD@EzIhTr+gmS7~yl@kG}w8IxA}=H4HcYJq2PXG`K&maTzxiQ(wDg3p(W z>lxzc%si8P3F>B-t0U8?sj1v=-$=mjUSD5tLz_5iYim`twZp^15u2BsV#)X`X)pZ> zmCI{uaYsc?(Vg1QXX^L7$;&|PSCu$s;PET3}idMjrTWH*EM zik!#0t?k(=O8<+xoc_))`vu}+G|xadF(1#9)$Q;VM8u+4+;o5U_N`EV=QGsU?WQ-~ z@Kduh8()x!XnQ}x>A~?Rg_V{hT9PEwAsrZnAdVb{6?)}*#pixIrdr*LK=5f=|MqxG z%XfHUwlg((d_0&#SFw|ND zezLgsV(`ltKK4c7>9%^Xbv)ec%J9_<0e0cZ=4ehrgZ;=#1wcQhOD*mKUMCjO`ZK)S zkL)l&Wjk58_LHTmuT-mSy(K~SVPE9>_Xp-{XXb|Z-nFhO|8o{i^5QO7;gMNRezrGG zw$ySdXDZ3@`;UjTwl*AB<~LQkrm!breX2}%DLA+?Nnl{T z)!|Y=RxM9#xtPt6T_+=$G%?#TnyR8s%AjD!L@Gi^q2fzK?8(VV3Pys7puAPxzkHWDi<6#^MBw48by^i~CMU&ZBuH@CO$zwDiGq8Fi zuo9q+=GRT9AU2tSs)3l>>hYL5#>|hf%vW(HvKT?g zMI<@VVfsE7b~l{=-Q!ur^XdF`7V&JqYvh^o+126iJ?}ex5J0(`Hq}@(3896odbGy9 zB<_Egv2P^4w2%VNOhR9quQgLX!F48>r3|J6xSQAVdSo}3hY32yUQZK5PLQoe(!(f3 zy(QG}0n_uW&U$oUy+7u-Nc^7JF(h3Xs}q!eDA(E%^0T0%)-my$zPh_R9nC;&o^SKw zu53LJf)&6kR|EV>W7`_|fRe07_#4^|D zNCu3C@-1Z_U;?UvtEHr*Kp+nfmz^8Xl?Oid_A_;n+r7Ghx6U2c43%vsuV6(v6C0b7 z9aK0E7KxVIyqW?3^QH7T*g>as%7c}D_gSNeoV(wQ5O|~CR-@T*@0Yy>>npFEiz+KI z#c$_FU-(=&WClE3!@L~?4{b=7G?r*6AW)_~NM3PZiQZuYm=Tj8c8%S6dyjXuVu@uA zZMjv;6$^d%_88+I79c6POxpF0jL}}%w4ZUL`JS4bNgpE1#X13tQ&x|>h;>nO4}){kD2`22b@V`34P}` zjM8E?=^$UZ{`DRf^E8T-O#$^hfFR~`z7u9&)lPVSbKVQa8Wut6PrQ}+PWih>dPatt zkx?8d*3n>lXzX`BU7T;Kb_?iM^W*jYPrUYoAU8$AXcxd2i5_%5`UA|op4NFs5A({! zMMIIx#dpmBzi|S8T?}}Jf!4$J z7?b5&#kRAeG}V?06mf&~!LdoYSn`6r_xuo5*E4$z=%vEkJBi>?Mp{~0v>3vr$bQ9C zw>~>XDKKg&kk3N;Wj8!pH~4Bjgc_Mg=n76|c!i(f;ph!#@MG=HRt>ULwFP64@vXM( zR!YmthH-XUk7g&*p$w&Q41%Km31FZ=P=h+cs=+}3Vvm8Xu76LW{UH>}zFPv=98dur z4T?YDK)?ndLOcN?gnQD_ECiSW7$p!Ji@pd*BEU>C@86H9-Q8`8BVl`X?I#4>nWH}w z!vFK<&%m9_BReb>0)~|o{H$ANg#laXo}Qj+Q%6wn0E!buv6?j;}f&Z^dDF zXegDf7t{~Sg_cZyVAMoqIsviC$sez}E5rx7y3NN{U30rPy1=`m5QBez(QUsmM{Gdm z;^tNZ3A6MuyV;N(l${K$|K`T6Jrfxj3|nQbGHug^dRyv8$&%92;L)v+Lfb+gC{xYF zKGb@ValFESA8N_odG}URQ*#wY;R5O@p+uu-9V_4p0iaevL-%Q|xjJjCUjiHGu@s`D zVmVj=*Fz>R{O>$LUd=P<^#37}iD~^ag_%0U$HLMQ4)Xl@a~D8-R{yulpbRH_nLxpd z7>hkiK&evgydnk?y(y?C0J~Jo>G|5pi5>7np(NZ^xs8o8V2@2OBYKIo&XV?L^Mw9i zFTl$^B;ovRd|62+r%KN65wp9z4@+=CTeE`Xn4m6|iL0KYUYOG3EXTol`lB}Xt76*1 zuh!LIv}&sn(z~Mw@xI~D+^u`n6F)8{6gfx^Ia;=9SaqwZEJ$S4Tn3-LUquqXg3I>W zBv}N}5yl+GMvn!;A-n)M5|#--Ea!bVP6${9C0Q5Xz&>~}Wrd4ve@DO)fq{Edz{)m0 zvY%BZ0!c?sO-=24%O%LVHG9BpkJe*2%pM=^0Xk*`roayAQVF=xXams%;Bx3u`=Q^c z2T5L~lv+xCYY_*~*XQZ%s1j$yunlqu_rJ_>Nl_-Ub>FEv+%x`#39viGLO-QzTBF_k znLNrxD6l|6i-2JrFhcjz3~8Ax33RM}?J!D=FIWTNMd$Mw zJ)2Y+UtEk8e79N9!Ym{6jIfs!2dBosn)EMgXAGbZ&908twgKhy4>_6EkkR4beEC08 z473dh)Lj?M_kvh=6ib}TKEHEQNBmtR^4pS|kP`!99gkZ1(u|d1t7a`68|AZY( z7_gm%9bdn&&tsf`cmys6{8~EUCC-1X1x%Q93c+*=MjnuIcCV?YPoEy$-v6(JYWo_? zJ~|IfmwBANH=Rx)@s9+S>i_DpXLJh5e;dmFCYvf@+5Hn-QyyA&&VAC*?ImXK!~Scx z7#yST)z@Lm$AyhRZLs^~-y0k?QZwCu{S!2=r2qF;GPaSXU>W}Jkg5N>7fl{dAE1O_ zM@o3h?{_m3QH8c+JR@hunQ~J&3dt5XI7R<%;6Oa1E`enRnDI#-P!<=L+O^rGBWh`B zEWXNX`~WMhB~vY#qRrZNCLv;(FhIsc8s0!RS!M-90q_DI`kx{I-iYOleo~%N18%|; z4Ij}92VO;!C`FUDuXXUBLJ-Jc6QV=6S18aKJ`3DD_JrlN^GYLudT(Cka+3s&*7y0x zeJJt}9>{S=3PBU2LUKv#S2_jiTgCpbZmf>jMfB?;YPXgihw*J+q{sb!;-6*nV}6`#0yDlKyH3xntJkG$SKpwsBo| zU8<_^+ET@T5)8-eBBv^b_pA@?1zmS;Y(xO4F~XBTimCV6u+ zV;)GU@y=xZgnjltc`ndYnqg=A3>wEeHvM<3Y^Tv2&5&NF7L+Bq*g)vMoSa;^nyvX8 zm^0XLad8zQ6eF%8t>PI^uli_RjfYa+bBB&%7wU=IS9f+rd2kY3N-_$NTHr zv+a3rV1W7rCQNOel3d!t>@A6;Rg&S8e?q#h8jIh7V2aqi+Yndxtc}qv?)cJZv&;ZSl&$-W`Wje{tM4GD@AXkHPFj<(3Dg~_ z-iH#)pxnh8s){(bu1p%dv&}!gz+f3!gkdRYrPx^?4Z4 zdfn2hy?iBh;b2USpHc{&f@(Lp&&hu#;ZF6u*NZN0#8 zc5Xi>jDIE^4uG=h)~_sL!M7Hr8L*&b8)(WFbcRFKZp_iK+%QCZUNa5FSvKG>r!}G+ z%&_`a#pbgAtmVCZ;48#dKmDSoC!vH~EBJx2Z_G3l;D;q;_o8iH*M+jywC3}o>jiju z|55539lk1e)|o4;LHm+q){Ht|Y2h_Jn zSay8NfT;HjkZ--8IL-B^F_k7&LF2(QVUJbN#R0k{20~HrUYPbgfph_w63J%JI9KU2 z!aLjd=Q5@IopRJ*b?O@+KJ1>akL^sm&Sx(*bS#yzFQ>Irf9_XzjloY%rd|}I^@zad zPIQ5<_%^gXP=rJ{8AVjsZ6#`dRmV3`>EmqKu?RBmR8t4 zv}pr~WnJI4vSZeIBN*LQU<@5tF_(wyEwV|#CdFop`Y^b4LRL?&RZUD1fQUc~sFuO_ zXT3l$JX(vOGy`0t+ScGurBSO3;09r94B9Pi}48 z(0bvDHuXbjE5#Gt9)(WKpyKWQP2c|DW}VX3x6r-GO#aZA_n)|Bn`4uil3Jw0&(`Y@ zk!xPihi4|1rY|AVY9>37S!lR&^V!Y&%gd@5s-P~VHT%kE)TeIXAt|Ex7~b%>3eN-* zTKTmHGd60>9YkU5uAN@TI-76Ug5k-f^?03bngZqmhGKx011^k4+uTOfq}V9Z&qpH!}^prN18v(EaMau3KnP_zzSWq$Y&l9@@~c7Flo z97#ws?G67db=>T_;j%qO4WqFDy5!Y*<}U29*99c3jhS$ZtaqFHY z9(&m#(#Y3C28}EpqV<}2`U~{s&W;}*21tvg)a&qXBFq;O+@Vsci*q=hkMLb`u*MiN^tucGb=e!&X8X2TgE%AwnHj)+DyFp(JvL0sa z=vfHm9fXYENk&c%aXH}84?qYKsOR1B;PGaLGYwFx4%;t{=lp<|pjUN12;s|ir}NrF zo;(;;=+?kLUJZ)Ftb&J!2S{+lA&3|~yt9TOIJ9!Bz~p)rIod58wmNPPdi^e!BGmHb zJ{RKQC}oR~Wbirm00-x^n_?0HyCZPeb_x_ZbVzY|d0&QeM-8G|8C#U#-e7Yjz(UFk_tflCuX(frw)#!$9ZYLj??W+s`-8sm^!yY6k03zu z=7Rbf)>{xyE*K1mrKy>jynx3C0YHYtJ|gOkdey&s^*1J8k|9y7D{|%VWp5N-kZq5O z;U#^WzRyUvl`+ls5)JPfqxx-+f^KpB-mHE#Dr<4W-8RcBHdkft2c%61;!t?`#}}^t z&G?SPM1<91G+iwnwzuhmDI`WrVFYJBdwqVp9~)iv`LpOUqD`7pC=Q4mOWJs|t`>?* z>4nO(M7$(L5ge?Ya*rIR60zngD%%76zi``F{L*Gn=0jJ-M8xZvdKwRwgP+SBY zAz(%+8rMs567=e<)^2vIUP?;B83)|EX9~Ih6o>$F4PcZV=k8w$7o~LQ>M2sy)LMPq zb_((c8e!L=%bOsY;KdDc{=65gPP2fmH0&xt&Le%7%4*2}a@S{sYuw3S-b8JrjYA{1 zw%i=5G~SZQtEAVPYRvp$IDp4ve_HIABTGx4#}ae)G&ijQQit~E&`^!<^;;Nc2}C|37=OuX)PfJxMZoLCxl;E0 z$`W=x+g5|TSZc*V)6#-@H9W-XS7sFGSt()ystM>AIiA)rF$E;B9GNxvLk6hUAuhn} z*MShkTk0<(lLx{)*x-S-JCIOcI4ufH^3;?qgT}oYKt016G(b})r{m<|Y~k6vxw(eTI#A-H8!$eB z`?E>lo&Q?4|a;(49Wx57%j&70ORs{ZaK~J1f5`&r%cg2?xq2HZG?|)bzHn|8g zx=AW+dlXBCSh%UA^kl8t97;b|_kOP+ij2C%IP$eKHSQ^NlFPe5V9EPUvLAMRZMgi# zbZrO4>eyT3;RJeYC_P2Yh>0P5j4cqyYO@|b~}8>lvDl8juNLD*{{wAeP*gmW2z&zb@e7 zFQug=KYzOk!9FBk3h7fT?&hCA-GALcX){ot0Mk2SxqnG0DPh3)9|9KbRlxXzHXBj1 zbPjd=uOs^q_$^=1G-moTa}hA%K<{-NZIBnC^lrw5s%dKCHyG^;7NrQG+uKT@^Lz9s zdpd|Odh`-_t~Z#RhNdzHIZ%HV8}xassm-QrZOi)%Z!m;TTU5_FhwHE>r7(A7iD8?% zljUA7?-wv$YIx)OLrB`W$THorYl7c$KFu~%ao2fF-LCFIeLvYdSRpwSwC`**LY;a+ zPB7QE2Kvnv;8JRACmA$#bT&X|#XwtnI_bv!QzFAaEb%++j~_qIwfpeH>@EOssSte= zEd+QXc0d7(E&E*>IV?8gfUYxIn2EjHd~FD5=?V(D^vLhPh(SxK)2!+N0P!$ZcI=BZ zr{e+-pi^Vp&$(BeBb47Ff6 z7UR?S`uxbQlp-9>U}h)PKcx^g)d;Nu%B_NFkj*nP%VH`eJ6vCmO}yXYz3^Zf35T_5 z&Xc7{?GPPcVVb}%=G3~+2O~OxOKz`piUWSq-1u_dI;S7VnCN<`uAqf^*Qn#uuOojN-)ssiEoEY64x&@|Bp%SQ&jk>J6bSG=ltmKH$a?jY zi>s@gWKrp&(3L!LDkNny2}kWRT=yx_`3K6XRqV-<`zx;qNS%03Q4?c-W+X+uIk>RB zJaRdu2x~HHPAVUo*J^uX@+0JhQF%`k+>Zk~C?aphLE25b)4E6Bc?E%(Yx?*@-;6p) zbZ+J;wKK(4Rf9m&K!h~^Ni~Q)NHOs{|LCZzf&UZ`l z&JxzP2g<8AN2}ecS_Gi!UTvzIVbO^nBraIl1}aXH{GFYA0r;S9ao8_FhcwU{dj7hl zH-d(#Advdr0565rP>G;3$bEN)nuUeM?$T`ubWufsxM>c!;ljUQ^aK}&D+!Vzh}59M z2iXkf9zfIv3jS*GsR4_jFpp9%5I+HTtYGMW{RdEE+fGc`384GH{P*`HTTUCzX7evo z=DLc6N@&K65n=*D3t#PMIIQ=jq8^ro#Bpw?%CtNXl5Elu=NbCw(;Ir2JFqaSqzDwy zIlJW<;rOO`TsQcZh|jSK&slT!8*N`f`IZ>^{pPY>-y)#1b5NK!V^G~uYJT?>m0{qH zhEA3_f~swz!WJ^oypluyo`>muW|_q zy4!aSkOq|ir&%8|K0bcez6aT(@)_CBpe|ARn=}g0@&1X=krZG68cbOwnJfd)f%x<1 z&s-+d=;-LNA{9zlRZ_V8l-p{!tMlQUqwQkB{`=@COpeKq$Jf)M_Ez-y`FSA0;A}O?6?ni(T^Klqz+|mLFaAXr1OQjY=jI|s zeJ)mkT4Rp%x^%n_7O zo_LrZ2Y?=^R9BT;e+#a`Yqh;bo9$If`L1YSe<)}#j9YVfG*4AO^o9nC!(vb75K`Z; zfG;AiQ2uHD>w0xRziHulXw(v`Ba0KxvSRAFQb@vFXm_If-h!zhX6r_+?c}xnY%XZf z2SD5Dl0OzKw&zhd5*#GpW-=#Fdu9f-gTuNU0Q^ejbY2z_Ir&Zt%Z$~I(8lWB`yHLm z9?)&AGzrrhfhGb$)`WtFKT)uaGD~Uag7zRD=vKc8a{T%_nGU9epKgwD7cK$a;0kod z#f}1{3CKZq=Ns^Vmz~g)lN)e@OhfJ%*|nb3nF_XXk8Pe6 z6zF(YOM<00Lj|YGySwozEZc>zEGED`3L88wly~7cyRW*avl?OrZM499r*L&Tc5=(> zcOSU=ZXr~SUdaf(;_GWyM(_9X_RU=T+VV0p5PH331FTmeUUCJM$z}#h&{{#Vb&grh zW3*qd9k9NC8UYx3<#zcpwtD;669VZ3J$SCmURz&^i;-b1V*tUMCx{Z_j>)XI)%_A0 z!k?nqANmPQr7**(2S~B7K30J&WtavI8hRPBJ=ak*R1pGi4?8J!3|*gkUmnDPhEjm@ z$PzH908b8&#wIyo|}NT-gDA{el%~dEOt2Y6~55+L|)CSB;9H z+Lf;_>pz!jn!SH%+FRX*)u}P*-_uCD;Blr}@?M8Wv>e((>8f{6Y$2gxP&oh0zB+EJ z%80D#r~Y$C(0bRjH4&ULov+=zP-N4~iR+Rl!m{Fh`HMtUjp-ZU#sjFD0*@4Bf zd$iD2K@A3FjCt{&T8A&(u!fM}Rei_@^Xhr|JRvE3yxGmH{ zr})*t?HsgcL6pna;0&9fyw;XYQE$Cfu-SIqn$1nn)lI(UHjg)u1RCNeU&kQ1+kx%S zYHKu-g5&tP)UM)caxHDNs>?Oxtcp0#%Qs)vTVxA1rsqqcZW87C{MzB1m3|AZEU7v*1ZT1zz* zkEuP?IARlvdkjhA2-9(8S+64V!hU!jbp8p!UJSjS=}~KOOX5+PEelTP?EU;XD7)Wp z%(~BZd!~xW8v_V|pwUVVqJS#GW0(w&rJYJ3UyH7gOwEi+HI(>!HLxT)Hhf2jd`T;) zitn&5>6wqJUo&opm9tH0ljf~{>3cKPkZZbVTHSQzTF;zJOP}?7FBrdzA8cBYkDWb= zSg*OlGbEkA@5GHu-}aNhD*e2%Sf*Zb#lK)55h+@bae2_lO)JZ`UT6m`qS;YF z64Tx+UOYMy9W(Yw+)L8!U3v94WH;aQa3M-z1qy+Mh*IQ%dp*ABg7#eDuXCaY7KAjP z35AQ=^Szl(KerLl!pMgf7;RKYqGQAB93c;{uy-|g{<`UMqQ%yK{vI|si=OJ#O?@ZD ziDBwqF4Zvnwl}k3yB>_nc>UbXp{*BPQ{^4&8)en-Gx@BL z5tT`!);UAqr@7n1^s7S(=p;3?B-DnrbhMtPNI;UOBu2DCP~}nSl+b?DC?W8OQz?A^ zIU3ShjeXA;-@kWglCYHXfYd5>kA>;L8ZkTR@a`?^#}^u3Ul%ujZsD_IBM=&CQ66%I z$y`aI;SHEnhD1WS^oiS-HhLj1%P-^TX^Q8x;`R#lSY97vr}M&V>>b#0XN?LpQfnu( znt$(GBj$0XyFup&r(qj3E6L+M6qS6jd7iwdkGmiMb0vqnx!9d#Eu;bU-vhbS#52jo z?UGcB^cA{}+%2-GM5i^F*CdCzW*E`wBO9K=+&Qx7lL3 zf`H?mYV%25+~0u?tr7B17K&wkw|&36L>&?dY;af8ENG7uN)Z)K5z^81lBpD)=PHa* zA(WyjB!4L(wTQqA`6Yx9QmE4Vz`<`exw72;uh79mtl#W{M^K&?VLP_=r>5=gifUAX-0&fh@^6o( z@0uf0ab&b?5+Pb4o5u*zSjnu?+L;n^a=9mkPY#?XdBo{{1W8&eORm)9tKM9`uQ}j2 z%>7n_Q|PnML+>03H;Ky^r?W=Ew~ZtZvq})@73c`bWsWNw^;)lIF) zu&A$L8#CLne}VGkU<37R2hELuheFj6#dY5?Wb&^}Ck_Iq?Jv4azIt)r(rE80O5+?3 z;!2!hLAIqQ=VQ-ovY*Iv;p;HaMc}Dg$lu(*@fPNN@-kow`vhWFv-^c~8@I%6WGr1Y z(Sqca6=4cG5uG55Csrn+juYRn<~7pThXJpvqne`X03&A29FCLu7Z~Rph`gMR(O)= zkzt&)N-;efX_Bv{Z%T|beWD&Q9tVCchpx)!RJ4;vbW?Hey(I zzR%NnOcN8kl;Oi(V2l;KaY3L`;7VcTw@5?#f`abNJTj#Xz3t<<7pPxls9(Kz{-UKl z4Mhj901eU1`Rl}`pt01XtT+W7ljz{}j;pizw4?K7gl;_R`Cv6A?!y&Lt-9OSuweu5 zn~-mliacLtF^75!jFmZcvnS0Y(V5RTK8P)MGpD+wM&9dReqDJa;EFEznl8SeRnZC-z6#Ux-4uUwE9)I`X zcRbok(f0!(B2*l?^?vseZS?cFh5q+YU-aBA=(5Bbp zitpzkj;e`VZtUWEDD=Kc;O){ILwM!Eo~y9U=SfxR|DfP|mGRggKW#q}P(U4E!}n#_ z&4g?(;0JSF>GN#=8{2ZA5Jcy#!qkQl{uPH|(7She4EjtL>VK70bwmSTOW#^T4dcTO zeYb=QZDBZ>)Bo-YzX7%Y3o*dnVt4fvzseC+c&9|75{6#rhP8r+iy4DP&Z=)y>D)$# zWIR&wzRj~+SX)tvbD$lRqc?MrCt9G?vPyrXJVGJ}^-820WXtDTrIZ+?V|2_?@+ixcj8A^Q zX~&4)BWEJ{%$7hmX@HAc8vDo@2VY`KYS9W|{1FsbxWYhKzWw>|*$4fDr4J#JT*Mb` z(~P;^q-%RKXt)*@n_Fvp!U3@Z8Vv$RDiTUTT+wKpKQv+9P9aNI%Y1lBG>@?1DE|JVn_+jd_ua%Og&vfIqG~FNUk23XT0SBMUzn zo|Q`X_7B?eIu)GNbNJ=LRPe6|0t?~OqY<^FDhi&cBw|m+N#HHkvi5#XLz+(-S6BP+ zN8-~A5)}$!ed=;7E)VZqmO8TOW@U1%O8}X^R7wHLW#-c&Tm9Y}LgqE#bl_awHd1a<(^azb0)}b*? zg7g{nB{g1x=-JpEqQeqfESm@{-&<~q2jBe;@p~G2ZsQG!QBQA5Inf+;O%e^x(!7S>xYf%eEBp7mpsaLs8W0?ZzY`pz$4PGjGk-tQd)vc> z{`|VL>nW%rI^Md|`vxp3_xAxo6Nn-PzfJ8Ai^EuYb&0;UAHQ;Z77LonJ_cK$$rQj8 z=UKG-#*3#;y?>7ldDAdeLXZ9S3))hC&sKa)FCQm*aeVo~(-fx_6jG?b)`-}C{m~kr({C8e%F4*#^HI+&%Yes>1<#)U=jh~bnj}YIzdqdLppqxcGb$yzk zdQJ&r>VldBi_+I$A7p$tw8@j=J*aqt^qn`-fGI{)5>{0)2cE#idKT_kLTOa3vvi0|fTdo}Ym@u;NP2$59z zp7(%jaxQocIz^Ke{37}%JGk<9N<;2q)F^_F*F6WQ69Xf%pe+}fAaKS9f~o7gd6(2^ z+DDk#QAMkGAi=pXD{_R}6qc;mX1WC-i}Sl;g=X~*rWA!E; zUs4&=FA%t3=z|V*z=SaUB;c~a!I6}8YxoQ6;M8&nF{M*D$pzb!h) zWzdqmt&(7N+Oqy+o`}R{p_%iMC}*)>8+ttoYIuJ{5!rlU{6a>d+l&Ga7e)p5R{A`L zi>8*6m&dMiW23%<8X-7w1Idaoa1Ve(M{$rpj#0`^Q4yb)U+VE;tm9aJto2&o?$w3k z$AX>6VCvercZPkep_s`XY!;--mCbw%lRlB?&)%O4gbJ(j>G8TELDq5!A(>JQ_Ixp6 zcLdYtRP!aC?zbLqaXj3Adg0}y7nkX7k_mNcBzh`-cBNZ4qIb9D{4Q$KM{RQN-|1p0 zkjZ@S!{%83(Lj*;$bf+ckP*384mK}kgkC2coV($N?(cB#$UMKYEs`!f3nyav;+0J=|3N8#kec+*a}SWoyp^TdJlMB z7onJKFhx;d0J5cJAU=!qEK`e;GM5-Pa@~p z-@nV+8@dSs3+ii4_lEoqQ zhoSc;GpOl07ebNUED#!T%DSk0n*%D^VV>Z^YQZgq)l{{F>26kx65Krz&CIO}PEoa8 z5o9qrdZ_AD8+o1NBU&J(>>CnAgz7Ogo(6pIsHC$%1cP%3q0`MA42rkn&eiDI zhRMhb8uHEq!?HI}eB1?iJxtZR03=b|Ymzse_}DyGozTcQa9mjgk&1F5_(t{{U#uJG zOwa!W1=)LN=)xAP53*}3ursQOQK-@ox`7dW<3HE&6&j7#FVLPKe;Rep9zKEsOMAtz0H`mV9Od)la+E7nkUt1=FopE}E&>#$_Z%i<$W zQLO+zXxWL-XYC>h8zcYuFisKc8Pv z2P%-E+k}{eE)(M9Z-GGnT`m8QVzVp;-$OSZvNw8jpGR}$buINfJb`~Vln6l%l(wOK zDRhXpg|Q7C{3czH`JRhD&%B3Vowjbrj=ubrfR^?kn3;X3~?9P z>4CQ2G1x$^&KJa1QyI3xTuUzYjtoOg06Cu5KtOPij@nj?x)p8M@-}_h%pShMDO0V7 zDSp&PF(ND;8cf%UOe$EKYIsL6{XH&)F=19kmF>Eya(rkwa})SO!OV7P>|31{!r>+x%}2)kRmO*o zPXp~&+tXtFBb%FT9()X4-?oIctEqMz-nLOko1%1q-km?h`fBLNB^h{RnbUL0wE!d0 zdL#S_Pu8~0A^@2Jl{U)?i#~E#+H6!1bU$QvL#+XxruAn~!TMPk)ned38;Qn{@Iv#;P zmMf6`+LSaF4JBMpc*|CbN3u6I1{L-vfA1|AejYr1%TlA|`TX*Jdvj@@6^$shci>aQTrR;NRO#hm%?x(&8aW1vAw0!v+p+Q#p zSEFO{mo0L|=I)b~F7)n~qwco=&xQ8&&wu|N>g^SUJVU+zJrh?)#|Gwz23q z-yP6ji#? zZ6T#~Hr_iOxqjo|33%UUxXojkePv{F)4Lr6nLH$L> z9rrk%ZE)adj~B;R!hri1qrQeX!D+?vCfnfCA)}`IlZ_X90jM@B$xrx-LpTH~$g$pD zY(MMrsrUQqmhlL<^EkRq=dh$TKan$fRP_sh(u;}{e#89hK~VD@E}&K)+DYAYz8}&3 zn=oNFjG-A5J_e__RAvodNX2CCXC|cNK>!$z1)8+Ux}Kuwc`H~E z*e{~uE7zmLd*EQ?dAw}!OD0c)zrdSntfmplgO?Yn9xD1Q+-x@s16+%k*qST&HG?WH%9<=&oL8GYZqb8j(bk=2snBInF7W6f^KRjt#Y*V_G7m%tZbeO|C+ASHE)FqG3#x<(Eg>*pnr}Oz*`QH57JJQNX$A`0zu6)7j zAIgXi=)Z3yl!O29xlP(0rv<6TzZVSI+Of{+-17DvZuf_OJ$t=yRwzBDW3KTpKm{4$LTmS-dmfZ6Pg_FLk4I?a=u(@S}=SvEg|}wHbpiy z!b)}cX*)uj{d~B%jRY36b+DA>KMZoGGuuwo%*e#LnYv96XCi zz_xAAZL?WMijtqmEmi3}`L*%RI%9!b(Vsqr=R+7Bgzs)4%kB>DL12W(1oZjgk|z0Q zIi}z6>m|9cK+?q}t%QJhWTqp=(uNjq(^V->wTOF)av%Fd}%ebuS9Sv?qLf$yc6I@vWS7Vu#Fyd zHf+$;a`8WwSQ01*8%Mz(kE4r5Lege(k9T)JKM}qZ{{1W9JfJW0t=0S1^xUhD16x~^ z&D=x&(V zZFdik3#5Q^q}GSM%oThJki6}<+ zQnGs8g#a{e+<43$p9~>ik3+|54xYUG_7*908XnnS9cx$JM6du!UKOMUW=NRSV){bM!IdS&|vD*{0!MKme zy+?WO!FUEZd_SON`YI=IJth8Ev~Xdtabw^)>9ejD2YESreL>N|2L2CTeMZH1f|{3Q ztMvYfy(1btG*gWIbZb7jJNX)1i!R@Kam=uKxm@8i{-74W3+u&J%9pIZ^?NWds42|W z%_-2b%lExvj&5)|8&l)FT>=&&oxNZ^yf-ss?sAfbj;Lpa^^eaS&1QLK=W4P*jHSP)3 z-Nw9L8om59e;pROWqaPlc%fK75BmTBtV2#cwmEVi&|dZ&Uy8{ZprwCQ$=}6n3@T0X z5S#bEqzk|bxU~!jgD&oKaanEVYyBU@hut6u&uB6ebG$#a9d9<7Ffl|^WchkOaa1$( z`k3uF$iHz*tM7K=m5luqzb0r5&AunW?(V(({F|JBek{TsxR!vo59e5TKSOsF`%DvR z_1|hU-9Vr}2ncH0oQUwNd814cSefwVZbu@LYuhr^9gQ7wZQZ-RD{%T*+cacIDIuv4CigJz{@j$eGVnGvI^X(bTi> zqk#-0manODS?TGlFyxasf5|%p5o@GCxkmv9Vp z&Zl@AvmK7%e;z__5Z7h&vTHOH_wpxB$Ps--tLqYX)p?lI?FlNByl*mk;>v=G;g2qA zeAbT6uY_N(UL*PcSKcVj!Q%1IAomvMeWIDU^$m514MK7J?)3KcirI0%qvOT zY31|rF-#PxF&hB2f#z))Eju2SfcFAEE15pG;T%(-Ib)JgGU~13vGMDU11L*T2w9g> za@H=olW}Kd@wRKj-MT_A$mZ(mvo%`pO=U(4rR1Hg-d0RG3mw%To2TfGKeRe0SZ;+w zu|*Ew0~1FFRZ}>DBdnYn&g>YS#qo1CZQlE?N4TvhS)N{1&^Bf=&ZFM?!=mek{Tsc2 zl|M&2=HB|!=6Y&J3=uaq(a%EM4ngq?UoaW8kI%NyH=YdakG(zKccWkOI6*hOKCezf zR)=2x8g>J&r32Jk?(Xg`P`l4j?+56Fg2-Pl$cOLzHtwLA*rCUzZ2-D6@%*neS@>F9 zI1~f=?*E#}Y0WyJa-Csm;YXE@BZITP%#CM@^C6?jzmFKCwpyOW*;BVrs;^dyTw*&8zDqVAK%F=d8w3vtq8qXrR+~99q#^ zJuj%p0-l|HuSw6+R>Qk<7xyhzTJaxj7G`%9N!rVfxa{Af7U0NG^|4nMHxYV`p1|ljAEKqzbwJkpsczq@0 zXk-+I;UfhLY9I%qwnFlb=KaGj@|qQV_!8uPp`)5`ax zn+ffwi1~qS3^vt<5txz4?y0C*`~d~GN-LhMH31!Eg|bW3h}Z>ebm(hdYyB^w@{3;7 z@Xm83itAW-M^m#ySvpiID9Rs|vxDdNc3=n;TfdLG?^J>cAo~qxwGo;PW*-ipvM`sL zOpZ=-UE7WH&}Y|e1o>vTvIB&b$oJ_BxCJ|yAI5}a^@gs$I>Q%*+O9v+>O+PWw%>WI z-XzXh{&R(peZNtSEH9v}$fOw`$}#gin%st6S)Mx@zUpT2`l*gCxzrk(R+`(frdTVx zDGY1XBf!jmeZRfl{YtlU6K>MW7)QWHFKH9MWt!kL$5m2%JK{j5F`tzb6VbP0{^r-_ zn^#|A+qK&5w(olbA|+@d#8!9a(}z`!4hna;j?v@#xU@}-kH)5l$%IVVi-4-Aj{md( z>X-B!WZZQ04Ve^lDy3ZZ3U%KOi0pW4w8onKPp@uovh^7JPH %)lP2nz(OkZ&*rS z&6Ou>W;Hf`0vD>c|HzHnI_a3!wM2b*Z9f|f@mSTscoKTT|ObfwEszeb{%x;UOhCu-N%Hfk;00VP0}4 zK~Jko*o!)8y9tdE>^BmFFUdyE4NQvK29EjSet#T^lc*Rud51Kp9Ts4t!*3Rf=Z(-= zE6n(nR;spMd@OnJc}y7SjiJ;}*%wMMK6Y3Rx5B z>%~a6QO|7izC@K^M=rk)Y>CpDhHbX+Hnv)oMnjZ3milnTn`JyzZaP1`N(NOFb` zLzvjO*42j;XI_lppJqQZ{(C%FH3_1fcbJ_&_5z;T<$TXtx`7J@J}`|fs6>cUrnSk# zFa(X$4bmf8DI;XRGM{TMSn8E!w zMFomk`jW2RQfmbtusCh!R)<&AJ}42di3=lJ&5Iem8v12cI8ErZz$e{TTDu6oN*xXo z<$o(X$r>z85P5C347pdR;7=%tl> z#q@FUKstNQ(R13HjmQWdiGulzoTciQXYo7Yo3hJvIjH3Ux0fSMAdHUuIa07XDch#z z#dspLqJ}SKP%J{*wE9-sZ`Zn<+O>hwdrg~R4en`H(ULtz=cF|u7e(~kd2~oIo>J6P zB~uUegGSXdJ`J2sd}xpu;3H0hDjr}{bd-q~WtTz4MsY;yQ-%lTO>rxO21j;znQ4#3 z=5WVQ#eBWJ$`u9nWzoV3j-0iG!#0oB^6`^BmzVTAZ#6E3=7l`3LEU}z&v}TQ@`o4Y zc4gQ=272BQwLbKg4&2x0fLCD!(tndQvK__9@;eesrR;&b)l1qe0aqgSG}VE%ilB7L z!C8L?+@MRI`p^cN?WfQZgcgz(1wv{xW@+PH&tu0}yBmW`kW zIs0#$J+ z*LHFs5W8b90(s%u_abyv8lP+F+7!n|hZqROqANC@5sz~PL!y*~nm#`N`*8u7<|nu@ zo!K-mUp$^YccYF7?UR{8< z(a{uNg=v*6M@42Ab2*W05RNE=ZZ554awBf^x!){PJ!pzICB#4$P`){k|rD>+7&@)$VckJa_$XXz(J7qAGplB1x8;uRTm3&vEKBMUpv=glw zJ+&JRU3%ER#W6Wc)R;U=mWD;i%y}6=K(L_ihuF^=c;ZS&Kw}v%y|fQo&{VEoOF#AXXJrmiJmI5);NMNV&0i3D=dpi`sJ(8w?tV>PLH z2YCOXi3AWJsP3;+m;~yPKk+8{ts~3Td~tJ1nLh1LVVhk@$6COax&*FJwLuc6xVm!| z(r@tOpH_KwHRcX$A$5Xnw`}cArLHM4Klr-6UZvqL*=V_Jt#;P;9x@izYIzm^>1IXp zpkU)2nnbAMYiee4={T9Y9PlKH7NO{mxHGWMTso*VgWDoGF$i|&=NCX=$Z+?YL+qnk=ieETin_>c>-SeAI~s;)&b@12Foa|xHO%&ou^+Bt0-Tj*kM%9a zc($5lVd7&R$QT$j32WPb9+oD9i6%R5Gnn!J%V0czrzhO%UqMb+P}Iom*oMNpe=6X2 zt`Tg}WJNW8%41Q5fJIRw-E)^xAmKpb47H3?7BEB^H-N@z0?(B0wlbaYe~ z%EL(lsJKfC2JiH!s2?nM{1%V}xHG9Q7IA75bxjKwifFXP3xQ$P(pgv^K=u;ltUCU1p(D zBkxyz&02*1yXCylCmmedpuf4Ye(46Or><&LG7w2$3&ih&KP zxDYr9)SsQMl+%V~wNfSw6G)E2|=JSbpFOnha; zG_KGAjdn32`2sL`kR&HBR_&KhAgg{cTvm3U?ZU1KAJ1HR+3MPa8>6IHa)vsPDXIp8 zh>aOLN+g3IY$GQa`!?fz?l?xTV!;zURXiF82`WxDWxujQ|HZze5ug#Mrw(kczs?_7EfEq4Iju7))j`X>HLBZL{lMa25Z@% zN~8!0Jy zY?0gpcreP18${{|I9f+GnL)6~T!|lEWA`p+=Q$XKAt_IexrHNz|l-$TB3!y{j7vc zayxP2eD;#)Y75m zQ^()^2u6TzCd9*^hRX+Q_-BjNq~n)7e{sgTlaozul)35ow7KD@p*?jlITAOQxpU|h z$~%fq0sBGkY39UGkZ%>UeSxlT{`u7Rdt&iT+rdjPEgBccEcmSlLr2aJ#znzWEZ}8; z+Sr@=q*kJz?`=XzP_^Iu*g^(?XO6f0vpI(P#glKs&CB0ni%@Th%`Zng@9n((QEr?) zU^54wg*+N8qY9>nXT?{hEG$HCWuwMH#6p!o?u&+{aXYR;koY73+%^9O$Py8^e1!ur z+9a%&Zn(e>tVP1i3!rN-AG+1GrOXUp@ijd7D_4Oy_{_gd=uGZ;@R0`aIUcCuWe;#R zhd}W&Qu%O*<=saF&gT~rh z`&5zFR42W2{C;v&ySO3j?e`Cp3EwperQ6c-#KhG6e97Tjw;pX-_kdKX18Jy*=A|;l zjG6CjADm_}Gz!<|{KQ;ocJYpBK0_(Kqk#^RoBnkrGFWd_1d z!T5AISJ)MG%)#Hi43f-F2nDB(jPwdLiu=^-xE||7!DL7rJBmxUmS%o+oSf~F%>V%s z+D7Z1s?^;gZO2y-Ei)2ioNp>eH8Z~`;P3=+Xu#3gt_2|JO}#UJ!2s@<$ye_l31v1Q zd&>NSU@(#Gq@gpfFqtS3IzWk1c3)W%os(0oSlx&(A=jI4I9hX@bJHnYt@WDl=Q+0D z2vkDIEX(B$t9mi55W^AuSgntRv7tl6pFsERUmB6zUS=PhT4ayE#=j`%Gwib7Nv zAE>a8AE+kAf*>z-&19M@iitQPCM5yS$pomM!i1%resMTD8Wk(iY&w6#FJIJGTuB&I z)~9DbRVkq!LBx64eO8BP$7sWu374NR_EJmKv&ChpsCt})(%tZIEtYxW?$Vu7Xpf4= zrct9Pt89x%H+(ITwm0DU)2{`)1iKNUdS-vCFvrVhO=EoJP`j#Q*Y+MGGk!aalYYVU6l(NA4o1N_d-q)3;UtKmjQZuV@3M5z+TJ->Br|#@S3~TPZ+gD zfvss--0|>b#30ymh%=RzDoAx*I$GywHoE9d9TvCZGFRq=Be8a7uA*#LC5Zw?q|zW= z2ot{!DPS~EeVEE7KJq*iaA2v3n5>COqv5}pNS0nH z>JB>tkcFdWrj?BqRLN8x%qhF>rSh+;Hk3Q`|Hea1J%;4*(aEM{);MwAD7Kt^_pU9w zXZ~Yj{*zDHRq5BHn5#_i(wbKdCYi~XmIPDASyoGrSSw8!WQRR#Xl0H^bdt>e=sLg2-wA~dd$owWOTg}?NN^iV>b%f zx%SO8bQ!)}K74Bsh-6T^(yh1uVMc{gVSNgkT zZq3)ZMYjc{uOXHHRw)uFG&iC7W|xJWhyVxO8+F%bQ$np;gkg+{ zOHGA}Rp;rOporFBE|bqEjE+wk_&qnD4r@XdtfaX*u@7&zt^dury1-d%3!V^UNN74E5idZ%i$c6c6v5t+pCuN}9jR;ZwqfHDpuEIWw z$ay7L#>t#r$QEe(6d{-E6mUyq z<%Ge`V+3L9lXHgFM4Z8u`IN9h)b)Iv>{L<;3=I#w)~`avX1)z|kZ3e%XuM92*L}nUnPYkp63p2WY+Es)r z-gw`6l{=+6H|!&q2kI9M!N#+-Oy==CwrBBv~VK!GSojb>G-t-mj+2z)k#FgVj z=@^cURKAi?A%6FFlOX{b)rDXWa?{aVz=N(@)Pu0+?b74Qf4EZ~T8EDUNy(JwB~#cz zHf^3W->~u$5!%XCL=u9dRb?}_;tb?G*fZzi87c}%-0$U#ZOc-Dw{n?;FUMUr<15^W z+#m&rs{E-Nu?=&Ek>2q2^~mYacex3RHWR;VGwUbc4_(s?NNW_4{%2Ga3Ii(j7Os@A z%J7qZHwPzo1pk%adiPZd%o!Q&ss;MmQoqsyO^PP6s&HMhpV4`|Fjv9{FC;IX+2hN| zu6XQC5+hWhq^NZxW-u7$;B+hM?r^F5B#}2|o$O^qbUHmDr=SMmM=#UDB%NcO&Wf9i z@dStgjUMMmW~vyPTQIJ%`42d8b&aHCiY#S3x#YpO=2H|vGOZrnjCzg-F?oCHQZXwt zESS$tqlhf3s_XGi74R-QGfJ^Xzo_kTFHE~ zRf1KBpr)}qZK_PsAq^^JBi1b08<4{ICPiKRA}XIq+G$}&{7X)8zBGZmLiQbMmFzcX z_)+k_VPu4CHTVDl!DfLPRT>7)oD^O=Pz*lNROPXZAxSSQY^aA79qV9!?Km{%%N$1u zm+jTUX|N#%l99C5#4=z!(hFx{nPN~-=QK8f`EHtgroxNrWT9BtTw@N*-Iu!M7D}2`=P9 zMk&9OWeL)H(X2c|lO&TsCU+YJqM8M%na5F;b~0T-(z?WcST(#9!Ip})WefAFeV!QM zahzUz*>Db3kblR?%5u05$h@#Dg)2Vv`&l2PR4<*n>2Ah;fvfjZRjIJYrA1`AhT55K zU}7)Lk?n->sD-fozM%7K|H|-xBLXOZa-|>D$7jS~zoQYSFIs=S8lQBie=42);3 zLA90W{*IZVO=loz6g?lyW{q|XWzxJGdvRt7_k<&T5yP*lMc=jFSMcJ-=T9=1u*tT+ z_e{H=)ow(wX~szcSQEPQ;tZyCb}CrO) zCFf`tz>HF#z$bZ7y??fZoGF}!T{(+doQPXCocJXaS()h|p{xn@d`Fsr6WeKTg|&VA zx>JuLop2|07|H`HOdk|w$1YOK`H~=pfA&{4g!7ui;XmZ}R~S}f--?>c_=pOykTL<7 z&P#t?rtSYU-VDjiz|4NMSMpM+37fmgNUZ6?v;U3=c{U(8IxUGv)AL-4M!rq7s%f^@ zsbH`=(tMH*a_|LNsJ}_np-^$5v4zU^#ys!Wky`ZW{wIGGq1c3ew=7Iisj%?0$UVV{ zjO7$du*?Xy{ zu?@AahT3suHx?*Or1It}3OVlMX zZv?cmM`$G3b{z@`Zh!oWwsMfSjmqF|p}IYyKOrcy6_0U!aE@0D6%bphIEqrNTP@(|PBFMDz^Y z%%NoJQCJg*WD%k0F=gU9D$X7{TO^DTy16L+DEw5}dz+H3O9P0%0Vs0SDZlAuV4*27 z($p$uPc2p`xa6BvG-;wZ3wP|KGgx~;*BEEp$Z5xD|D^ERnkZaQo!=TKtTlB!uF2vt z>kqM0ob_$TCnr{UXABf^QJa$xk?d}lKJ!6V5(L&k{>3<2(5~D}BIaP&y`VY$bn$SC zdvtMnAMSDLm<_^77)LvK1?wspnTI2$YxPH#JyzTx&W2RXh9saSZH_XX6TIGrc6Tcc zvKjNv!DiK(w~OVH4=Dw5)vR1DC9|g|?H+lA#*`R#a*MBMO(hch6+Le@M~ay{zpThC z*vT7N9frrS5z=*YL8cd+h*geoI^5%|j!v|wOO&(umR|vTvavIyQx%R~{#R!0_J<>{ zz%OGGLToOYhj&udm7?dn?We!Id;jBq5}@}@J{~Q4=0jsKdOgB*xpvfXcYQE-5&p|z zK9&F5%>jiPL9j=q)hnln?etVBK|lMSImnAj7*aJ z#O1{`UJu8?EzYYPVfhaCmzUBE`IC>!$hEH)Ns;j6d?@!&raa&mc5|(Qr5EJc(yYE{rlB_5Gn8eae2X|t(KN~|3hUB? z1Zspt=F1|jGH0{4Wz~enZzZWk%!vi%AwGpcgMVJh2MDyznM+nX@{;TPT*N zCflf@;;=0cAzfw?<9a$XJb_6&w6%=BQ!bXd5=5hkJC4giTQ~roK;ERJB;?)Z3{-=C zk1wKY6{Aa}yM3gpjLrBM!9`o@p)gQ zTyY0;@pk0CO-eYg^Fz9+*=$yV{Nfy-`8VIy;{Ht!ZTfAr_SJ>s*kt?EXls^GAC7{4 zh1QkD(g}~_0Q1~qv4jFZ26!%#f>c|?>HXZ5gvovcik>ZlB=kn4q&=_|mtGj#ESr|O z7?K4!+nbMn>gSbp)%!Mld=*{$Al|)TaAW=h#el{x?msPnG=srR;U}RiD?--^J#Wx<*;#ZC1V8DzfV? z+=G|6n(v}BYuir5HQmscOMM0Gekm(azs=$A@w*dn`Uvy>-$MeRjANY%QxV8ajpn43 z;DuMG|M>YOYyBns`*?ZR7KkaQWG6I%^#-r;E~}H1I_O^Q9oEq$P>XV zmD-xgYa>kIuu~+>1K*T15VVVYK~nBh2+?;;b1ff;kP6pmV+ z-q(@ZeNpaw@Az#B)h@}k0{o#tmQ0e!=ay4VuVjX>+0KzL7W)lNt)9q9^3$0Y07Llv z&k)VO2og5)Z!($kZaO)Lz4Etlbwj_oDqC~z!dTM=!OJ!J+lT7%YLNFX6afX6oH`j` zUPE%LXtAFvgx{{J_Q!}RMn+H6khO}ZMvK4c0iD@Hz~|!L;}}Ap;F|h;>5(! zFV*Bkdp}eskt0jlwYa3&Q=%!7DHzIb5|A7D0J~^-YO~*+CD}XLxa*u15nBQ2`@lO> z{R6M$CVRY*A1PVq5o;3`aF?Lrn;`DAY1Di$N5D3&%yL+NA^|%SMFmTZD*WB*i)1nj z0{d9}zu8{;@1WTv1HR0O%1ylwboiu@n0oT-+r+4qri`Rd&#l>e{IcIk*nqh867bk_ zXPKSsYgnQCa59!E6?KIY@iCW943P+d);rJfM3=Z?Zm*M+ySHYlrlkolgEEC7?*e$rn++Fo#;=Ym5DWqHxHJOMIrs^iSd!p#GmzE|<1%`cT?VO$j*_v&hpr?uK zydl|aa>6DlDs3A$Fp3YboMk9XxxSIGmC9qZU9Ru$u3iz_zi~>_p*SjPt~nT>Sh`XK ze5_OEw?93IvCo6juZ|Tb(rL^(ttYH3R z^&2xvnHkZ=&PYy9htw@oOs_`R^-_f_QS#Ch=FgR@fH9FTc^IcZT~aBGy8isA(Y8}U>ci-mLlz)87 zO=K^yXY^w*XHwSQSE?_0vN416Hlr~pAuN>g;9W_m2`>eDvIJ&=1!>)ekkCuE}$V1=BuwGLvxpsFjd~ zQzaDjg5Oo0;}p*IzWHhY6#+n}%pmn!p4S}YCcQ-b#H*tRtFgbgHk^4dZ6AL{5|46- zB&~-XG;$4}fRQVd~?v$DjA)nfo8=34Wd{^Xcy!Q=uqL%=KVN1eJJh5Q~{@)0~wKvW%dyJhGM}! zyVPazm>%AcVHMk7k#s@@*?$Bl05Lc6%T{_Fq$2i>C%40~l{Yo(u4Bh3f$b!+!!ic0 zP8H~!j#ieWCns@&z4g7mcZCqqyX{5geT&Bmps_-i#8J{bshEWBwu~JcgiFd?%^Eb+ z>I$p0@k&AVJfrpRX)!&w{-&BgqrZw{RGJ+ewN{JIS_sww09#~sCLW+o$r1StjIjnh zVK5~$0cle!xXVXNM4LC+T2FPG7^6jn4#vmh5izQQMZ2<8>Ju@vW_9xrHCzy_I8M6o zVr@x;gA_~{i>xfZ;b_$K%ttQ|U8KE+G6aQ;;f3f<8wP9(h=d`CL^m29c&2Q+g;u;Z zdq*c#5a~>h7`d=6s?0ZN4afU|UHb>MPA)R0#gsP1JRe}}7ao9%x-fS`|0mUxZ}pzr zomzxd3(JhZMqxBDlcLnkRXL}wJ!M<@kbV+plUM7PfjobFb|$AueDdC;IN`Q7mVeVx z5a@q&2(?}NT-{vOcuS4^{Nn;Id*wxwwT<7HB*;EEglh3dBmrKzp8n-?xh)Y{0d>p? z2UT7)wAm1WiA>H=*m~||j$K8FD4nZ8eP4$RW&mTN!q_=K`XNV<_QFQIYR0aJH8iU&PP)lUJ376m@;0Z+e)9O_!$&_qlbhffo#edoovCJ{PTw zk__O>XATyF2d`F1ZqPYIF>0pp8~4Gle4U;+LD5^NiLD39P7f$vwylu(+DT=;E7Ts( z_ah&hcZ{X&9)It<=l*}6F3I1g%TDz9k59pkLR||)<&JFa=t?y2a9L<1_%QR$wypxK zlk-?B>oEm0Cxy9*38jsrc@v+zIkROi50ne07_^vAdh4-X$M`;jsf;0Rr0w%pYQ*|P zz%3s)KQB#{BOHNPk>oZ1G{Yd(eYU%Mg_y{RxH2!gMnM>-)sJmYWEpO`-_bkaer668 zh2|T1OZ4`FgRn9JyE92NN7_XIFLZ8=7~+fMu` z#lGN=Te)69z>3Yh{>jg8iSHAZ;X72Tna$LL-_T9Z6J$kVnSz|Z=J*mBJsxNOH+Jga z`K!-wO`J!H1~603kS`nfeH(SQkH!yi^9Yj`oxNoCc^%_>_m!}NW&ChX-+-92TsRJ4 zTQ}ad3|1Y(rG8gYgiS*Ms!dya+&3?_qA>vCwEs+Q+|bo%TzZI7@CI94wuB7(Kg(?m%cTkp3EM9Wu~#RtR0*ea9tCMwirEWLqg z^1=!N&r8h!0%5UeN>uyRmIZI}$?RXat0Ma5Q_brG-l{x-be3to#&r{<(D*9~)dDaG zE-co>La7QuHQ)!p>s|MExm=f|{~p(q?e9Y#F)&zeHni=GM6?^a2w>LkZK5O1KJKn= z1j0;Kam-UKDnt*)v!X?RF0-TPYsDL}kr=I}b~C~6%ri5OIY}X)Kc0R;W4oj!bA1m+ zR{0dbkRd;+X)v6+N3W_J8c&-l&GtE}7;nfvpG=~Ml|G{0o2iwGrw&fc%RC(@NC);; z?)2Yy{y$7z1y@{4vn9bLxVr@R;O-6yE(5^{?(Xic!QI_mg8Sfu1qeC;f=+PBo80@| zwcc9i5A^Bks$F~U?#d1-RcQ-HGC;BNuRKl})oN4M;*a!_vu}6^35rg?SKt-hQ2Uh? z)!DQ)s}d^t+$o@T>aY<->{|y=YfJ7W>a58+qqaxWr+1EJL<+?mOA$|_nju{M>I|-U zH8I=x@AQKIih3a_&DJW}7oNSiaI+FtQ^f9pXtdJxwdpLK{P?*PYc|WjQ&ZqAJ};lI z%_$m4q>iD&peZmGHGZzqy)Ovb^9K2frEXm~AQHsrCYepFr?@KKZOgU24#VRcMrEyO^Ic~0q`=+#rW`rw-OKtWfkhfk2CC zFHSh4SPmc3uzg2K{<;X8TJ@>?zkTJ${)_7&hSqt}j@PecA!0}ks*M=DDYEH}v~Llp zF_H88dS!_TrN5o1S~AI$7g32iu6+$8LLNyOt?&4#hDIQ zT-w_J0}mgqJ4sR%Qei_bRhmf`CHpbA)H&NnE>F6PmNPLg`-u5tUT)Vc`f;RtwWd)b z-9}{(rom3Y_h0r7wk%49~nQj9&LzRn?=vi2Uksio3ilVRMM zCncoOnr_r@Q|N?z2xZ<8+WEnb$*9VI3&rMihp7%p)5R;NetS;ydl&0ks^apVMwD-8 zev>F~;DiwaqqPe0H|>xMxifF)xpen1uL`8%4Y}XE-p{c7vTm;IjU_ z54*(I`>410vWy$H^_}*u^vN$@zqhn`Tgm^qLQt|RP+NEu;oYR^dWUVQko7I1`3UlJ zA}3-PSKb8E0<$&ZtUj>Q-$lV#Fz@SQ2gSc9_cA^ViW$S~XB&;sInpW_;fv}W;yJ`Q zVC1zOwWJ&Ie_R@m=#ckBx%#5wsQzBaM#8@=qM~U8e4w^|SC{ooJ5d%57ZaP4-#Q`^ zkyCq*QYIANNB*&+3Wqg z@7r=&`CBH`^v6Tw;~OR7Z{G2(hE?#*=CQ}@IlM#FC?{>vb?A+;=k(es@{)j4S$Jx@ z1cj3Tc^3=o>OV~jamxb9EJOyf@9-zr9|tF;^=$WN--EgfPW-(I(NK1GpC|^+FvNI` zZg|U>l|}x89p-1cS1vV34$jLuLqVVqlwA>0;=G5o7f-jBT(-G|`GgAlvNE=tnezJ* z*i^L2`gu**tO&s=Gd^56!r#=I>Co`CUFhl;aoe7{Zkpxa(6pJ$Bf7TmxrFdWo>DyJ zx$&s4*lhT?EZNjo%V3MwU1dipyv+W-Rcg?{x%5IJUoEur7*h0V_gC8bp^YP#Qis(J zO18#vO64viBskIhCOBi)OQW{l%pQe3rB3H=n_j8VK?kiq=F{^@`190ZbAR>+dV{?G zr%l2o{H3vm#N(vaZ!cdLgL(!At9#ZmC*K5-!O$SB?;mmcZ}5qvFb~K!S^j2 z$(!U$g@M1|5b^{;dNlsNlFRe836K~6c!KU#WbTyy(l^xNfX@ht%qr@?GhpOK4_2q; zNj9;mR@f97R@AFKq_L|$0*^TDrEO^N2aGDB{c-Y2Y1>5Op?;&=?6%40mskN5X%OOE zKcZUf&rztk5iIruPrF%O*be%yFAXLL`5UXjLBn4a0Jb*7g{*1F4(PZr1XTP*TGIM; znQ%W$*}M*nM{aszk1}y|R!68G+VW@4Vu#=u(TG?cl6x(40Z&nILn_A9ivnqHX%TaO z4Q`z*j^Og!xI3$;NZQ)XqFojyKfmPtem{L-r@sX0ONUy zgg|_%%V(D;o>UV8e8~aowSP#hrJULn0Db{4dmDUEUjo$&^=iN4fsx`%G0CKD`%y25&I;=_|7f0e%Ppwyj6*f@oEv7yp)@A(rlv-!V9$ZzR?VPWI&x6!W>x{$~% zI9i)+Db^C6%>aZD9OF{rHy;i;UVZ-TM%8>prTOyshGb_F&cD&KExs?KMjQkOfNECI zsm9f2vKGlR+65U^8CmJ-s+r1fxHsrF0EN{Y(#G0*5;K4jUY6j|w>U#(h$Xb-9GnhKxFIJO{ z$~S(j2x_6_do+OGaE5`2Qv0RTq?UsSvzW%sG>fo~WZ6(lW^w%MB9U$c((>oVqjt3< zK+2;aB%$*m&Z=b8^MBUQZ%}_Tbj5Mjk!^t@**D2Hl~H^<`8pp&PzNX1&7AL$Fy3C? z^Y3Lf{aF5{^%>G{O-^dW;v_vvDiTFBVWt*)@GbkTLa}fWgKtvtS>pS z@XR$*kowzqut{;1W!zfX-+{WPb9Nkb$|v(yvc*A+$=5Jg>9+t@{GRSHOb`r?N`QfW z$yqV}5V^Xb%W@zM90Yx%Jhgo>!M&JH8&Ml&LXS;iSiBcFvl=v0jDn#1jkY9+S4#JL zy{=-Ne$5N`5x~>o271cU<9O=wt$AZr{Bx_|kGf~Jau?(vzYL+~KSW&q7b@uj4qlWF z!`x133TNA&S|{_dzqJ>H8?TC5Kb3*n^lZ((dv*@#dw+uGMlw)#9nX)t{b&Y?43H=( zWC`1|4k~SPkkodh6@Odf-wcydxk2rpVsN^sI+?;`i=2zi!4h7f1f8ta(EtHWme)51R{vcfZ8bq5GZDuA=>OUc3wpCLCb179d`RdUl7vmIhLP~WuRDM|#lYbHr1 z83Yxb;vp(WXUl8AgWWwL#O*$|vJRusmihxie+GPyPcb`$=|P{=~;Sb8~$ zjrJq?-yTk7kUVTkBLjIwo>FlAjxRBHx_cU$9uLg)zKgx7>c)YOMi#J*&n_3LX63R> zUs7C1!Zx90J2_e6h3PXs^xvFMhEnqwu!}BlSiV*#)UoA=G|b4uwdLGCGB#6UhLG)h zh&$Y9i3UGRX_ZYoWTfh`!xOG@Y1Ps5$oc7O((`G&u@}YP-FYh>gT-rGeO6srcq^r} zxH@^vGXbJfQ*TR0()=I|xDycfp(JO_Ty?|qRuzRj5PGlJ_YPJc zWYSIDdg%YZV{07qmu!05IQ_dhJZ=K(;%QY1Np}7~X{VGR1aZ~2*F>$6^6gB&9y}e4 zUadATohNadug7dMgxgC6JFV0{s{yylVA^(>zlmp?u9Vv<57fBa0{R;4thoIA-NyI# zBR4y;D+XQ5hgrojuT)yiZF87RMfae|a2u7WU50>~icTO{x6l%s#NKUH_E_HQAc z`w~KjFZ>#7uz~3O@6G|Hm*`(>ZmxVB{n+y}V!!-MI!d7hh3W138{SaaXTnuSbeYT1 z6{>y<%hhXsO+1JX_jz5?ZMJkb*e~{$eVa{O1I?FBd_GKGG2<4=s>NPoWsxH&@=dQn zb&R_={G`kJ#eDe1}v7nYKJ65{bF9(UKRfb;zbD33N zqH%m_+L|7x3972HH8PY`uDEQ=+*UE8u-k-Bj2L-(OZ<~(6XXdg(8OIRxv0J^9@%QcE4!Wee5%=Mia(4YtI(u* z^p=M{1A`B1P8zIES(b^d(=FKJfE~p1l~;0+R-yX3)yiEDP8{3jgIoc=fRO?9vZ$>g zGatrIrIBLbUIzSmD(*|0dCqtc{vhL}p=%PzGF}=`14E+?$8cN>+-54a@UeiyDZ044h=L({$?!km{+9h6ly0Cwczc`aeCa1rBRC^N zH2z(C?V@0l;%QFS>TIK`-ow6r3M;4$_j{Y*$mSh_|2@6B z`i$N0n!7$88?`-EJy*Q9F(6V)mAyV;WN&>t&6*$^5R)mQ5u}+W{t=sYUi`-y^U;z}1(! z5YC>I=bekXD`=A_-O2f^07U(o9<{#l37E{fFQ2nl`Xb(8xCQo}>3jk{g%tiTAbZ1* zEY32WsX6mWrw6J(TIRTLcE~Jd>_79scESxJxBf^hS?<}?LG*e$NB)I%s>>^n1tX(z zGn$nhuLBVf&e&9cpRqFiX z2l{Wqyju3f0V_rRyKQfT2nyG-ofs8OmkNiB3o6(7Zf+aXHX0l>`fNLnc{K(@F@z(Y z2A(I5sC0Cr|J$#0=u=LdgA}HBIA#h)PtAATGin$^o6D^NL_KhWUL$L-hA_hVDCc?< z+K096IFNmFNRc01`QrhrAz0_ZbG- z5?p#$)0k{V>z~7NcEw#6;dJ(kuN$eY4@`np&ZfM2Gxmz>_%p~`eogbqG$AtdUiMP^}ki1$}!lE zBLyS4=8_{N)*0P<%dNo7QUqyzS`RSzgyG){rsUru6QTEheVsnVtN#QG#6XQ&jkpMuv zEM4Z8o#%VMg=+TvlyyeMDHi}zS_iski9w(qtQ0+Gf0Q=Q zwJrM_cD9>M|6_O1i=dq4BjRG}@x#}?4z^p20l6w%=(Mym2BaW7IPdlbiUxW|&pPzB zq7IlchBs@Ov1LR|-q{)aoH&^<A7Xs|S_IO?WpxlM)*ob}^>3i|jkGES>6{Kag~ z&P7urXp}PIEalqm?7m5%afZg9VM<}6jrJ+PpDWRhzEh~@f-T}muZEMaTvMH_`%eA- z0^eKnsxl0PYHpMkFLwluiZ}mY%~-#kR*#%kZ$BA0U(s_1IDKgXZS?sRY*{7&-=E$U zWuI^N-EG)nWZdfP?1*o35}I-5-G9(EaPKPVqX^3js!&A?}#Gn}|8A-v4S?=j89-IUw^!q{$-1vY^p&Qw1s%l+s8P+#z zFktiKf=*m^2qB|)Urnj4n`)dK23?kDr`8}wPD&;=uCdkT4B>rdKSYf-CoYqs;5i&7 zw~deUDUq#9F5;4@*t!~(h#Ow}DcnUKAEr@69k^QLI(28|Iu`b7gWf7j6b=;cszr*{ zWa_;`N@V!1sUzQY@GC9dk*WJgcpup!7)0}mjkQLz*j->|W@j&m`{2sa;x7&`;l8y& z9aT+3^|l2@CKb0h1Sd<5lp`wKAuz;FyFJgx`94VrHG&?8RjaRGb5C)RLnx7;9~V|r z`^*U98V^rqz8r%&Q@(mf4GR%I)AF7#q8tw4N6@dk%U<>iC++PcQjs59&2BHnbm0xR zgr`pT-?;~rEw|NbR(hkR^~Z!P#!zu>OK^_l;w>K3(CzU+0vGcFJ4pJz(?Feo_Ylau zTBz=TztbA-k6P9d4Cl?(Vl!v;;fr*iTE8(c<3_dgCtL@%2gAv~FoI`g@9P2lyfJ^J1AhE!Pgu2d#T|1M}HN>`t* zSPh3ldDW80tP4^U9=v|-$IWFiXqO;8fcT@@zTAmh71B*aUf{4epWQ;-CYj_NkMFVw zvzYRnMK{ge)?Ln9ShZ@)e`=-T-Uy4x_l8N7jNNzNvHP zX{L$bii(PLU5YE9c9YbA3=2ask2#MFtA=@YQbERpAGeu5j~rq>gG2BfE9!%(%qG{_ zs9f!rozLe>jef}i@$dZMTHE-`erDu)hVN@AHlEJX)Cm3zs0T1=E*RXBYuzE|b_N4?&v&Io0FtmADeK44*IIzd0ublzN0Qd!MPa-zs?smt%-dl7DZ*YlLN;gR--+fa4=(_b26Grg2sz%$q zmOz2uoSBk?OXBrXnlRoo-P$@ zjPuV{X5wJkPD{^~_+J-_0alee?8|C0?s@%PLDkYaZYzsBOPDj&&NSmqwUE5Y$GveK z(izwM+{~kxn^2jRaUZ88VrcSIDN#MBBQ-O?dejx!=V%|glha^2$oD2IN|O?ZcSVRt zsF?p)(r7+)r{=0?(zxAqjP)MhV9&0Ka=Ep5{Fv#}H1VGg-h}K}O1xOcTpv}x%eh^) z?hM>Q-Y>0$unPK$%=SpZ%jbCJ_*Up};ze_cu_oARsRhB8`I*_1JkE5LqL`D?xKnB1 zZMkwiumgu~BlB~;f8mwh>92~rQTb>p0JHzerjiuWwX8T$*8-5U7EcPmg-4!iMwQb1 zlS%Bdd`Drd9@|FCl_3$Q$qll4uN-TQHEDv!X5sQWx<_5#d0j>NBA8ub<9_e!J;YPo}(ITm#|%sf1yMf0w3}ptp=pa++P0 zamJ=(sCBMWcFBBJ!7??qvoCn)Jjgfg@HW(B)@8!tIX`^Pw?Yt&H2OCHz$(&QF*G29hh9V>VEm8;&4njXn!-!noHknR?SUj-mhIkF#IktenwGZy+?o&f+fjya6_X@$_*+*unl;SLYN^CmM}6d zvgRnxt;^|Z^_S6NrY3?!9Ri3JC?sZlm&qZdvzA5nn4G=Q7d%ZW;AeN_ccegtSd*ae zx7x!=z(5yCVv(Hop%8Bvu+;i_P}^gvdW<=?lSv{YpaIZf(=`lk2sW*3-C+oD^OCu0 zcPv(Ezu5+qMKO-qi1&p>K*ZL5iPw@@~2T$AdZFW4TFoQc>bS?~9UlPoyKKa1r+haQ9|B z&ZH{7g~7&Ist^_EWS~stqk_9l>lB4=SeO}&8Q|9u(b3s!&<9z64y*Xc85sQf52ch#!@0?i-Ome9C;B^w>UalrJH4MS+>fnAKcg5Vndurrx~&lP~shP&&YUW zU@vmrVPe_w7Eg3v_sh(32fhT^mq>9pV+s>N-v=kquA0YY;a$AlB(Zd6XjQjDU1k9= zYht?gCuS2cFhwDgkcbHxofoi#*+nGDrCTJe^w!{$v6&TZT~o7O;7ZOOc3r$77)cqv zpmCS=9bz%V!V=dbi(&QY_%y1>1oBDNeI_7y%&YRbSHUxF?|fTTl3`d&1hP2^l35^- z$vHimg)b^E*4J%cnj&W7Wx*ICvgJHOPZVi)m5r*8;{7)TjmnK|d|3QsJc?*oXZ%^k zwRNB3;3=F}+dhYwit)I)*{KFlQQ&2}=a?bubw`zi4$F@V^3@Yz{51Emm4BPppxGfP zKGa>)EprGx{Wc-nMUCLzOA-&2E<*8cDnz5{!+U;$yp}aPVXWZenNVNtFlHt^NlLDQ z)QpazB}G!6&{@|;bP|+k{v3W=5%2^aRT4Dqi}P%|qXG+2LM8++T4m^2>-D+25o|X2 z8WPy_)P}^)xt(VWE|i~n-A472#Rzne>2<$Kvg|u*dFq^$;{o%`{xHjVdG91=)#xNr z{{`eBl(}$!A>D%@)~RiFySws;?9}9A{qHWDIG20#_4HHv#i{zw-7Ki4cG!eyJ3KMM zQCzX7M0|(hLg4wLTvR#YT(R%QDnI+mKR87cAGdj+*yHiX0@E<;TVra=Los7kD5Nq= z-23Bo_e$MSDXUFI%Gv@g+Ui?C$6m=GYpIIRX@A2^9t6ue0-HfSS7%in?l<4U=jSEe z#tcnl0{IVfT$#gNi1UKEfKLgEp710*98+^Om@@CX?8{H>st!=f-=aUaFVx3rF=(xx zogVXiy>+hXjSWd^QL7EV8R8Z4=$$Zk^%>J{*-HHvu@6O4nc9bEs@TPYcr>UyXMI(; z$QmAyIyw#Jnghg=%TheWA}|7Tht#C7d`m`+1@$+0-wn2YJD=ozs&H+uv%bt86wJB~ z$kZs}Y=*Bf(1Eciv<+iQM8Q+MJ)Mb^V5*oX=EB|Xxl!samN`|`eLr2O4S8F-bi12K zH}1Z{Zzk#chU69;u7HJd-2IkyN}V7#2N)^MbV%0svzZZ9@F-+m zHR^r0Zjq_k+)61)cIK_G2Ge^Era;NqrqmijI4j3~Kza%OE!HNyG<5VZy@#+7<2ATD z@!w+`7EWVopCvy!ZNR24#VBi=-PGHm=AkI4EjCzw98-Bc+^Pg(6zi{en*Le$Y85oB zE31lzn__>|RO-55;;}z=InhKnjKj)CLSzmx9usFBCT3?z)8^l&FH3KL6ouewYCj40 zm^X(jq`BV_mXNinTa~E^N{!FU;kIVaTkiwx4Ymhmi;i*$Y)8RKfAHrVyG~4zgqB6@ zk=)eQ7b#+;#!=FMrmm4wxnemo!B}T=)xb-<_ht<56@HpwmddP|FXjqqm%KORm+2t# z#0^&~T{n+I@z&!0!@ITZ57iSe!`ZV8@ZVU23G3fizg|P_$Ov@{qv3?iMR<)k2aHT@#SJQj5jZIdh z5&HZ9>xjk+!~OH->OexwLArlVaibFyNzhbnieGpA>SXk*i&nXbYj<}`IZ4vAQyRT} z`QBMAFuL<)<_&uz?&stq+8`rl#0|m-wdK?Wyy|;xycp{t!bri0C-hHE{TWvqZLoHv zwc&pJVAPlcs#dJn>0V=335ZwT9=t4z9d_cI-f0;p(1eW)2G6FAchQ%3Al=$FU7QiX zE_Al0Ha~zVH<_A`B?92HP%Z@o%&4J;Gc9Bd@yCNi(VCOm)GpOv?VmHp;MDLiJ|qi+ zJe~&DN3>!e>_!I>byOG~`2eRRKO{c!Oyqy~a}{KO zOATPxaG$H#{C_=->{PuJQ~OlGpxlUkr6s8yIQ%pnB_-{llc35~J74F)mxUTToWcz? zy0p0E9U6Y_+n@0XWrxcUe-y&f-^H1R(xM_U=g+ksyn z$G<*#?#lNz;kx_`X-Tt=2XX^!HCe+*JvP=p(j)Q2aw1sTQLXuzBs;)5rp)!NGQ_k} z7D{m@OLhue{48R@4+nk&u&?cP#{6`FM^rlgVQ%sHE_PXqYinNmw9KL5XYpzM@ksKL z9%ir`yzwX63F*qwR5Fr~NSjPfyX(U~xwXK1ubn5R7t(O=2MYQ}d-`IPf3Qap@!wv@ z&nsRtJV~p|jwWkpnJeM_;d4!x-g;ThW8I1C${leG%X7-U41jbcgS@W<$#%aI)^>jR zQe^entDe~<#ed{w?8XJrx5CvhiyZu`NN^K`(d5vW@Zm?=FtI*&4=+eC5(ng zHORgyIZfM>-NW_!YLuc* z?jokW^E;ukgZJZujxN%nFF#uiKrWZ(Uvy#vT`~0Pjc&Jc`t}=Mo)744$5?iUH;)2V zT2ES&K3HUajlzBnQ@*D_-|}JnVUh}`)*usH*xl7-Ygnx~vXI9Z63%6;B5Rg8a>uJ{ zuN(>zvLEBT=v?ZMlut$2eMK?&=8DX2kYN1Fd8?>nsmff??hHdMzXU00xb3VvJuq(U*mn!wv{V@@_snf=BzA8=tM zunnge4qyqp2r8M)y*hR_6x=viT&>*=VYRJVwUI$8#qeJ?&yuy!n^2nO%*z!PwDo3T z*z4^%BBi^77mG3ASrsASI`M?z<@Z)(o}aR<AQyW3&le%a_2@ z+x4^PD~2*t-iVfdNah`Hzj%fy(&m@lQYA4dNz$fYhp1y0+eE)FtUC;*TzgAB>@x!D^e*a?y$A7WFx(CJxFeRP zP={HT_$`}2;FhkWPvEp6y~EW{Mj(VD&=?W4*jZ_)I#``CT%R;jCOmX@{EJa4xc(w;9B&R*p)byQpBdY^Pe{?x z^-uC|a12`nOb;K*_HQEifw<~hhuiQ=3cUIT_)mp;q)Xzc;~X&(xbcnSohmbWIo>SQ zma{rz{Z?k0rw zjvXwyWDC!`mdXilM^}#&%e!6xOW8;9s%|&V=zVef)d52I&HVXRlSC0sEnBO;{CdH9oIgEuDe- z{MB{s@oYeGLJL($3#kSAI(b$xyP)`I1u*z0v$RjgEJuhbL+h?K7w95FaqO#hjPmFP zX##-}x!KO^es17412~^+YQpJVs=o4h9yf^rkF9-?ma>}i$W2UJ>yW(K!0;TEmGDKQ z9)V9!cs4l*+AjZ!`+P;3K&HEW#N7LZE~vP_5Q^G-=+mG&}ni;3SVnZbZRqQifQ`E{To~YenuMu zf~tAhdIgwiOQ#a@MsZ<^Rmg+fbQNNj8+a?oCg@2<%pPNRzQtffw1ao}h$k_CIgENN z(4E;>?!GKT)yjp$4kpbS?vR01c38-g71H^g%r%AR$#ls4i3vPRQRn`XvcJ~Vyvc5W zr$4zPz7F2*6P^MoKbTpl+KKuz(yZH*P_SUyv8SR*y5wdlcc9(3yx)$lAX8)+wOR}! z|D$jzSCnTR*qxn~y>t5V2jEg&dj1rnO3Rs7mA%(-{*_+x=Y5MNBknzzO0^KfJTVu}H$FIcCLG&p(~%n-jTU3O@Pz zq$cG=CBP9;5^P2mQ)E6S=s@979uiwR%#3k(F9ce!^YF3*Qw6j>aeU3?n_4G{B&=QK z7=zcD?Xffb4fmBJs&E?z=Xx-0IO64GCYG)4<$JU86E93>DLBV-q7|fzCrylRfkzmr z-k#ahhL0DX-o{`%=+@|M$bIEe6zr)}d$X;ua1*Q2op*iuQ`zjDd8N7o05hD9p-h`L#>Xazxai%~5HcjMLf;R3jQ`cH{%U8NdxrHZ zM*Z)!zrbxb4H_9JyNVaFyM|~heu+&@34@*WNhf#WB3y3HU%bq`U$P*|p(MVmH5)pm ze9H?BSW=X(KL`_e6K;MES;UIWsLQD^5BNKiKr3LcM~&jU=ecRHQl>CdGN1pHmT z3EP3=w3ejSM-rB2DlbY6I}p!Uif}sx={wO=Fj5-LCtGlum3Zv3Py{e;S6RZ ziWRI}Bih>%24WMDIzMC#vJpl44mU~kY-i(K0=p*hmxZd_Cr>hyO11sw77%ne%$pB& z-LqvyZkSN(9=Fj%Nl*L|6H>bq4Dq+H{1rhvoT+;`ITgk<5Ca&c zgRo@SYcziZn&Kc9aW0HunB2g%WePs|od(lJQq?W$hBqBcV(V7eefXie+6x z?!&~Auccwn+D_g3jgPd0xAEiI-@Whd6+i8_9=(d#pYOPaB@Vc^xerrYVRpqMrDYWnpzz(hn$%JfoelzDR6kz_Sz-PZP z!rIBEB8C_OXHL&qJo?qK=4bxgn2-;+YzrtBQZn5g+>}$2|{X033C;kt- zqYE+HHlx-q0WZG+I$P{D@dJ5?cJnUGb`Ueq@3`Cwg7-Wo1_$pO<&ux*({6WO9b07-WT1j8o!6YcVN|NGOV@s#SXf%5+E{Eu1o~Ck{dfYv>mqx$ZWzL}gMVbC_d#d|TOb z37;ZEi3M%M^3^$Sn8Z`f39Wrk%IU?l7L{DYI|t0{FxMBUGwg?F19A1ZK|{g%bqjhC zQ}31~3C*1@{(?b~Z-JtH4Y+FnXZs~nmLemAnY^4ik@oM;4+HU#8@X&|k#|MV+Y_0^ z>&|`$WVSj!Owh>S;uzx)6%7Eyw#w&&54=CtteBo{w3+Mi-pLLXQ$m?7{)ODu>dT4n zn06lbS@H7BDb`dOEAxiUl~09QtV&!XHXqwcTV49^YoRJ5}xzPMGkY zqO|=iKOD8hwyZmC9(^It<|XyD2;oAs?e!SOlxnMGFn$a71}qbGQFBDb3ib=eG8?K* z8^Q`RP_@pcESK~uQzGLzi!pTMG-Aa^ZvvURgd$7MW;cGEXo7Sz%(BD@cu?iykj+Ra z;m-{$ZWnQ7%p4gDZf)BDO|@oq##=M0s?dFJ=NdWyVpnTaN)$6<{M{=RJ%p#v<7FkI*oj540*$nmWTYG7XXi} zRW+aDqW%G!Laou=lKd;tsh4&2>~PWHKOjm{leiY;!Cuj< zO{&Cyn*{&E=T>V7TyX6N_Qkjx0SCZ?lPrPDN-c&jciwltYhd3umrhf*eiw_2NlmIq zWybJkbc>g@<)JI$P#)sC__@zD4|~)=Kw!No1>e5c)i=&tioDE2hfIZqJJxnL>}7TSGYfzF_fKwR&)Y(A(XYm*|X(HZKBYSXjxB7ny`?Bf(tAPT{9~qCNF%Z zjgLpW9rgaAo2?7VhZ)DE$Ig1Vx0{I{11jbOv5YJm2T)THfTK5V)-Nn9O4D~>iI#(J zt)Vl6FdT51l=F7fxJx?Sf1=(%9|m&jwD6iW&Qk*MR$2&h*P?Gm?2#D~j;boedJtFm z0S#m;39GoF-9VKoVacdlQ1{TtGtcVNb$#|AG5fL|u4lBA4!^%D5)IztH^xKPE*mPPpOsK!r;K&wZtF0DQdgsHA(SvcMu6%&I2kaT| z+WXb58I22PqBU=$a51}X)dqm32IL2QXQF6~mg5qqbygvw4tpw$q0lT-4oI>6hmKa9 z1(0Ll!WNU*lunNY%8IM`irFaZVlj0U$7upy2BVSY`*9OVtCGQmAwE$3n_(*(w>cF- zqiLuR4h$U9_4wHCWl}vGPV){(Va<_=i|afkq@!44YW9_=cF8=8Kp|iXKQ|)#-85Py zngtnMhfE-^1q)zQRbFZPHl0!^&%t8Mp+B3wrU8i;s$3T1GT<<2e<7|ToeEkK)%yhf z6-zcmK*F?WVD?~DcOYNJM|$uT7+u@2C0sRkPP(=1i?MlC_$EPr4@ab`u6O_C7V_&a zFm0~tMLECyVq{Z)Nmkw4&$a3Ea_;w~TbsfLgYIA-tEB zGqCshFm$>mDCkVr?%W87c|HA&C~}&$9jATH-!PXG-E8Pq1kzTtXMPR=la5}D0StW( z`IquWABH=?+a7&)lHPe`KaBEoGem7FDDN(;A?%-kwbD#~%VP!e9+cODFpfA;v*|Y& zXYUXK2A#?Yfi}uV8CBm?=vQ8=hp3nQwZlEN4=c*1ry;SsiF#h{ffq46sBS~uhE95D zp9j-X!WcZ#@fYcRWHgn_6CTo)&56c5uZk~#~X`WY< zF=#kFBGDt zeY$AxH62?)rb8D^UeTUE3>Kgg`|7NJ3%*XPv+5}C_*jMa!{vRPZSNYc*|=~Y?b`UA zXWN>$_z>4eEf4aEhgY^qyni%Qs3u`Ib63P2lhdrxin)*)Ba-8n-+;7?0s`^qBb?S& z9S`+Y5sTs3>CJgkWb1AtOg-3`6et)1{6>eUQ7DGi2Ei3sm-#3y_a|XGGZwD9{@Bwd zX#2VwlkI&)NnG$o#2?n*+_t#}IJw0jCMr7@uCqx}d`9ErM$aKJn&k|W1`tSLUrpQd zJum2({JzLbYWT8I&cKa59$h>~963qmeJ(`?QRQ50upJUCdJY^<0XzF@LM{2 zK5O|n{NY6Z#A5IL^t+$YP>FKwJV0{j=STO9ed2BCxUla&r*(g4x$Po~-4CW*e8LP{ ziv2rM)bDo*#ph#dq=vWe(Oii1tf-O#Fq-H|@_Bd8(nH*D;)-TC^YsB^x1>^9{dxoQ za+ySm$AKCmr)7r^X8nL{oeYAvwL*r(C`5Nl{+=S!^v>MQXvKuZ9e^U*3>oLLtOx&} zrXu67+Q3~8pg?GZ5{O%uOBE6>mnLf)KFeBN-!xW~HoQza)m>cG4&j0HXi-W9V;I$o z9puvPCi4E)3w5~Q3ygoZERz%prjA$$ZjnKK%Z}f3_J&1ocTK?7`!RfYQh@(zh=*QM z?J*F`%7b*r+vo6e7W?aUR`2e2*{hcYg3afRuNc6GoFCBUk2RZYT-E>hykF?NGc*+O z#d`n(6zV#y@5!(;g6gaR!Vd?j%p&l+S|NX(5e5ckqKQ-%&Kl_#JO!N4c@71fCje(z zn&Hm4tB;O}?Z0J@MN2(v;nV!d_ zsrOUKp_S5wVJY`+PyOkTlRdjl^nAy5@2d5qVjgH3Co<-)@${@FRqUC6nlY_IVK0dN zk|t@nbt$vN`D&qzX^Sf(PMP*6@xh5LrtMtG_R#epjom2(l=Q^X%d(_vCaEPKyW)<- zwmD*+^SL2TD*~t;eO-p{NIyJ0*N^}$EQGL~C%t360XgvvepXzY?aObBtib8}5s~?} zSAl^S{D|W(?yu+L!1DF>=if%Z#IlYXP{;%NXKx5FYJYP>dm-(xFD;X+1F!C{FFSwo zbPT=2i;Ae&dM_mdb_oK4Ya04}$|~qtXs{8wlr=?==JdbgvGTD4{^sdm$|LT=*Y z-o+Egt9Fa_1wZ1IRr>sB08~6rMWs{t*6?JwuIyc?Rd$(rJCzMxGu+C9h{j!Thuzjh z>-S^YNb9*B9@1fZ=r@GDoKh?kloxpE4vNDY=dh{;vnfxMXN*qI8zw$Oxn%$aao5vfiD&_v0AEY^4x7ct&B^Qg z>AWr-!O@3Tp!N9{&#bY^RX%g%!}K3pocIl!jCuMob))G|etS4}+r3$=`t43nXC3Uv z{m{RHAJUfb2|5wk?~vJO_x@_%zN^bpd`C1lU;-Qq_BbeGfK8TzYC5VtCfxANrALZctD! zVq}6rj-prJ-GlZehH53$DoA1!I6KZWxju`FflAwc@r%y3>_cT>vc23J*f@qi1({3z z4S=I!eOV-_Wvf$;u_UlSS5qcKqa={Tgd|dl*)0eK{3+BGh0Ld3uVT`zvbu_eNr%vE z(zKs=s>cqra7-BR`?+Z9RHr}V&^9x`kX7Ae)ml~eVCfH-VLUs72R8c;IMmW*cZ}F^ zhj(H?w5wGha(Wi}k2-n}S^f4&c61m0{~8yNdOXhd7UU=nr40)4{At3~tJ zRR`kT+;>v_S#2x2r>cPDU7y_ck3vzcs@(7KS(-q>@D&D})&w5)xKOS+n$gC@4m_8I z5&wHy#i5DkV$GtmIQw9*iP4ZKr?wLS5%Sc!`=NNfn3?5Urh|;bIxY6cDrVEcU_6|} z@>Q+hL>E$Yy6U_Idc)f=%m2Z;%Tg|N;C0)1qibJ@LO7Kf=x}LkBsx*T{&=~N*yoy7 zFyIlk+3yl{HrHTxzH{ux3Z*L5(aEm=LXGvY|UqeLMSA75RJ6>D#0YfiI_T?w`S8b9@62Dx#3AIj2!P zoy#(I|LCWSfr80N1;e}URp(9nj{hU?E2FB~!nG9?l$P#LBm|_p1f-?ArMr>t?(P&2 z5b5sjF6qtgSe$ZHMmEnE(1_;)h4su;J3_KUb{EhktOyH~rK20Ze_^gUko^VDUV{h)_fhj*;M z%j@(X@p2cY3h|Q5X?B(Kt09#0qG0#oCWWQmA*( zYu5!nJ5RUp)r`h(TB)#F+uigb& zo~b%F2|DZ6;E|io>j5~Ss{|2ns65BdjI%u0tlbtDZAMQ}pN>)QmscN%p0TeuzXKbN z-P=@*z@qZB-(KuD-2N%L0S}t(VsAY`uC-bo{5GrA*M-VIT)_XZCro$!o|YJpCvWz; ztds^G0>TwOK6vGvdEZ!;d9SA$>F4$~x+<#~keA|w^l(jnh{n@K%M&a~tHTb6E8^)r z<=aumPD<*+e@Emlz4$pc!;Z{Yi)ow!OMJMMn3YSuQtJl!F#eKg-AO zj4MoPWun?ls(pt>f1R}!iT0NiIdtSNL|%D%^0(bhce$Suh~AJq9gz_pCzfcZ3s+oX z@b82_TP-&rPf{MukTu-U3gbTx)=2Ze|A&Z~Q4L+kr0D4aip> zEB8C>Rc=>Smxs$u&Xk{3S%B52aKs#Ue{eG6vy$VNCjUY=n$2U?R>6d9UTwrN1&|b%=Hldj8`0re=EiIW6ReY(HjWcfS3m%G_uc zL&c^4QbN`teY4#;?C6lAf2Rgn+iL=jEed5Ld`xA(8rh}qMbhxPAU|6%O*heKAKwS} zfML~_=mFLQ-xHqxVsa1}l;?q(>-J! zgq+pK%etGWr)$*KyX7MoXzDu~W*)Pd)p9!N#*hIBP^5k2W?vMnO)s7?cyMjA56RLgJcp( zm2xz7MCmZJr+Ha;>q`y2De7}=b?CQM!!|Z_p`cGSy*yeSgFYm<)?&Uhi2q*qWBnQo-?0zsxy9XO zU0X&Uv0Hc$iDxpHckhujcKe&{q_eE2n=Ee}zqSjFw&|*ft>O}CAVb3Vh`lPi9CXK7 zS9sm5dZ_wGWTfw+2wnXwML~-OAiVF`^xv{q3r4X8e7G$VHXfPy_PcTWdP=jx%n0M9 zVRmApt*y(vRGO6L^^ID-91?6-&(ak7yFEUAAIzr_uA^EhNFqc#%ewHZ{QJ`fbDoIPG-`q#u=11{YolY z0gR7FE!QYE4;Qm%0rc)Z;3Po>nXaK(cMVxW)IBe8G`(k1mz$iJ!6&7%nq#l;2IPGP zK-k2Y%^yPPLJVwerC}9|gn$9}+7f*8Y$e)#d@%KNn_cfBp!CM#P48@rm3k_P@_UXu zP6H+1Y@RmHp`n~ovo`ELz`TXNVez}(Suw1L&D{S*ShvKL$;&W+D4IWC>F8au?;d6a zIrf+qJdH-g)=Ir65Kd$I=+6t2V*Mc1w~=lgZ&}mzn{|OY{6zmRKT}7?rh>=VwqVML zu4K{$##mTSLoOaYk;k{Nnt6_y>SiO4-Y4ffF3;=Ovg7NOqQFA)`cs~)v_wih+Cah9 zt6y)PJz8P~e9GibEjfoa>tJ_-RA~IF7R3E1XqdK`E7x7wa3+N3@p|)_f!fvBNR9cd-Nm%Z*|-qu^W~g(1ngE@ z1zxuWH{b`Q=arLJQkqp`NLLUlGb?KkC2*=Z-j|)|q%TDh@dyanR9u4sc&n8|d~YnW zN|OTdN1g6YISfx27jY4AhcOA@nP%9T{-|TEM^!B7!)HY$ur(gC6&^-ntSSghTW3|3 zXkeo$z13&q;)vA8>zeEyHCfW)YvX&O-O3I)f&3oh%vSXjjR zWN$D&NCdtmt6;39XVNRrP)#OR4E>91p-frVs#dqhk?DMhMx>AJz6_DPdEBMc!$}Kc z&suqUJa0SX>|KA|<<(&1Us$^>c@-H)aJ@H+dNxdxG3Z`hZ{faB`Ot7_C(}SL=|Pu= z|AX|EWCyg`*o@?!tFyiZjH!TCzvgsI%I>-7m{x9F<~URt&HEwm+kHV_CP{OaF9A5025f zTbOnJQ&@mYNEmMxT@;@ufskyzwB7DF8Q;Yw|H_%h*lXEekTse3%2z34w}sBsZCSgm5bi+x6*V&_+6Kv? z6{n$7m4^zs1V5GSzr#C%y_%Kto$m{;>9i6{_q(`s(R%P%U>&UayqIszHM`^#WL5ae zP`@sGf>(N_2p>Mf3PEA#a4Ppv;KLc^Y9qlSti?sgOQI$s(5I>VlFQWpC)M>`u46A% zgb$owga8~otJk-ycf9ZK^qsBR?8}oCm-n9@I^gH4O)=iRdq+8ae0JBQzVsN?CvD~# z*5T)6Ga7DaeLFm4|5%IOe6b<$2%)#w%JSssDR>+UQGwU8IJ~CchtkLI37%#&thd)X z{GO$Mn^9W=^`B%dy#SgtuU;8*Hvh!BhBSUeuZFk&wb%Y=+|~K&;1E&Cq!%~kjdW%4 zeamW_@mQV-j@C)$$`ewH@44o{H9ej{HC?aYskHBQ@J>1}YboFLW%9Zq5RP)j1Ya1HIqq>BG?1 zPBMt=6in!*j~O%9XY#9|e4`DDl&W&e8JUTJOM^EvkO**R@ftG0IwBCwkGBpd`b;>; zj-!&&^)vj7p(=bYzT*-1s6j)WdOduCJnvP9d~j{vy;GApJ%?>}T{6$DURu$p`MG=6 zm^DoYVAh`>FB>b%ydp2oG^c*$%Yd`}E7bm^#M;9=#OQ4^K2T*024~06en%5;wEUqn zIxg7DiMOu0Ej_|EDl5epZTMviz^Isuik7oumXiEe7`oe*J9Z;G__-=nt{rfZ6nsDI zaa9R4>*`y-tzoJbFnkPj|1kKlNy}hF8%3D4Gwd1>7PxOwJR6#UkF&%HFTz<3XZXNm z?#?Tb!EL8SY5zTXmb1_fEFAL!1nYUO z_632FD<^5@Wi{RggrjCXn}I8`Y0{ShsVehJd4g`sFruePhWyP6zoktn6S*Y zSMB#}P;Rv|=;P|OA9DElo;W}@A^I1B2Q562N<)Ow*n{!*e&WE36k<6&7Tu4W;Mm;f#ZuBTnJ-y)+85p+Lxy25*jJm}-&uF!KKG zuTGr1hT!cB$h*@VZ^2si=_`4eA5`n4Jg(m&MDiy@ZQ>lFhn;_RQ}W&OCn z$*DW4eR{OG`!xwQt&mjKNa>Qmn$`hFtMwF>UTnpK!elSIr@SGRD4eMwFSn^<2^j$n zfvpAT1qwp7g2^8WsQ6fL@}6)wjFe2)LU?TGdmSGHk%xZATNk%v%jK3DAIYd-Ydj$2 zD@II=c@#CGY@_v`dN%3xj-au@aUc+OLuz~S=b0rRnkFwzX<&~A4^j`0$3Mpzr&-z= zd+=$ZSzy~-aJd}TS=HKU;~iZpYrNtm%N_kjRHrluv>kTK!t&oY6gL~g@R#gvCWAg9 z{4;j|^nCxBI$$PM{a`CcY6|{=IK~zxrzES2ZI$sCVFkv)6m|-=jZu!b&llUBPZ7-c ztoT*IwVn+YdshwJOBV5G3r6%@IUnjOIMg{%bUD2ZQ|&O0sfO=|{8g;GY}zb3@iQ%? z?Z@WG$Jn^PY_|@#nX-JME4DUT-QB2_$J+9D24)`!@6sEv! zszemF;wda^TW*!`d<4d%!@6xknJ=s^HtwMhB`EpIed=w}ly!fzlGE2$GN=l_(r{ZA z3UQK%uvxwxs@!Nx>e1UzVdZ-qt+6koDn@|5u;5jAJjHpT`;CEtw4ths3}So(Vub&X z(FL`|TDse7-p-L51i!u0fXIYO*}CFETkba#Dp+sTSR<7g(y42arqy)DekLG%jjt=R z8#h7>aLD^+w11&Yj5C;l+w}fsldFY@poPJFog;jkD$udAtr86mKXxd)fjT^p4N!rF`jrw{i9UIVP zAU|E;-$)wPoa&U}ZPeCDUgrXlN))ITL%-61%?DJQlyj65L5s0u_)My6%jh=$P25mr zTjsbJ#MLewn@1$e5b=$*lAa;i*)F6yp|8+XRb$oyub3JAgDALd$p_}XsCkzWXGc<* zk~573LzfAPLMbdPlBw~}h+p6fEMY{o8CQSZ^hv~XMmqk4F)i5)(C?#(s+xVCe&azF z-&cY4WFw39)@4HGk^I7ys3hqyDmSWGzl6i0C|c(}M3?UrG0cYovg?|?h%8NMap%3p*!757l|a?=S*o?nK3nNe8j1Yo%(QD zAxkJbt;tQina6)uWzo8Y{^#O0meV|DaiulTUW6HlX50rZ$%eClcBsUk55d<)0%|+D zUY((2qYLQhh!nrgSmEH|8%}0DE$1(_un`cy_1;FP5p!#`M&ArOHF@4;h6O5Hm>8sU zuDMkwg!!E#j_gyaODhV-Bl^T6y3cLds|Dw0r*krdY>LTqR{r5=ytCb!Su5V$J~>ev zQ;Q-{PSr`^Zj>d|N-FtVt94e?Hn_G%TBB|`ff%j`1@o^@;m4vYA8Go(;jltqqh1djUPShGK{bKLQS-?TB}Dw?&!cff67lL7W)oX-UbT?6QP0|7g&8FnE_~8SaW^ zNr2A^7i;&_SpD=tw5Zvl^^BI=qLKV!(xzWAeq;uQ^wG-aHQ}bJI@W&v!>ZlB3Et4e zp2J8(3f;XuWBLq7uawtyQ2MvMJQjT9N?MIchW_{x z${txV$(x#}kBBGAgVL(g9MIbxKeY(zO`yK9G{;?DWlV>eHF@KA=1W~q6U&xLqJA*@L6#Dc3Xa+lcEs{I~B) zQ3OjSOlUP;8St03IeYKZ6Mvt#<+*oH>(ejqY)JBhXS9vM~h$<)KH*5kXiH)--Q+5O%qk%Y6%y@I<*n{2^)48gS}x%;?7 z1p}5!alQcxd}R+Scee9mkF>Lof6DA;43jQi)#QDo{ikQNv&c^*_XK+lmoJxGW`%B< zHjV|EU#dgKuW69_=An@;A!Wb9a^fjK1>g}I>0RoQnGgpqBJ~n%AarXPZZV| z0H@2ef;LVpR!n@8O@{ixGbI$2gSseBlV%fcClj=y;q)`@R}U|2xSr}Q45ld9wCr9( znolC`=SJA8To&2j;NWm^aldPq(W||)fX+Lbc1C)no>V7k(wjWR2`4FYsS;&Lx4jmBob_@k*i!JS2m02lW3^6o*yFn?{*WrQGm>)7|{*$EzvI1 zFX_SctEshFd$F$gp3A5L-^@K~Xsz3h{9m28G$piC{Dh2kh$-E^r^}r7(?+beqOZ*d zbgio2ycm@KHg)Oh0(;iodaew;Lh$AP;Rki?KW#72I_ksc?teFb_`m$-N9`mA+OK&4 z%U`Xy(U0-n(Z>jf*CU#6Bmj6J9M*%Eg|elZ1dP^=rb_*}BDpJ8T=;q0pMdro+at zyTg6{p1RhHlIE+HBVlt!k$;!eU%R)r_j+XY{$IEW;BxIckJ~zxrc?P?nezh^CM+v3 zgs@1_lt*mtwF5)%%dRuFxCbgvos!(83)O3*S8>8YCsQx~<0ik|s>co-Ch?9riSm7SXBdYHWL^68QI z%Kg}n#Go&dh<8XE05Ye5%`*)!s^<9DHB{cXUH+x^Ux30kH;^oy`&!#g5zjvbo}reD zwI{P)53@@^0;1`0F@1&*!qN)`?kil*jI3HNlmV-foSgjiXr%=S35j<74IMEm?>U;j zzJBw*){**N;Xj?L42Y69OJrlPXSuY$Z|N|U`JogRbXA|Rue#eu$x1e?`6AXs=j86N zsR8@}@_q(|kfR-t3MAL<@S)=a>+8B~)+@~>_Bj9e%QKflRpceFr-x^nPRrkTR|6El z_60@3fMdh*y*t!i{m_3v# zx|r3GY0>V(?ee%|)}HOplx+4ASa1EU8aqr`ygXQR zIqraeK38LoQ|7k3Uw_g|Ky&3X$_W|foNd^_1c28);F)-#Se%r#>s0e-%|Cqvhr^JD zF3vvazn>0JnzE%e@35Bb-89wzIlA_PM^)xSjfXnPVx6_InOP`QS}-NW&Ill5{--m3 zg|bZ1JIJZPSJx^R*94T#d=S(?y8V`2IbQ$jwLfWpb@^LTpHDkW z!|Bg}Oj6%L$J~s2Wv@F^75vAL7z9zKo zexvvyfoMmq(SbTcItbNcSBL|m+U(3Yltd2!^W2Lo1nw08hD8p)!jo!3_YiCG;(^|}^*h{A2cKTloQ?5k#l*xAtrSh0-TyV_ zUo1O7bCVu?Els*@hlg9Tc4pSgN0R2{6wat=H}D=hX*`#6`u7m8M@pwv4|Whb+D%X= zpB|5%>~>O&y2GTn!?$l0x?O=pwf5%|qV|6) z`X*;*MbTbxK(43DJbR!paeMo-1c?B^PNy>kl~2|QFdZ_n)Q+Q5v(VZ+oeS%tv=8%JgZixW3yc72GeK`r_``jj*uV~e)P44;iAcUr=k@TxpbuPe@)tVgX#A6wFc)nypxGnStX%0yBV=ot+OIh(eb!IIlvHnMb@3^Qgen< z!aCYO)Ed^sU;s{IvE2CWz6Cl`X&D*RI0`BJEVf<-%LNud&Vg-bhEte>aI~F$s1@>$ z@6X1V?RUQ9P`T=JHz9(vvf2`!0R(g(>xkrMcGRSw<8e$mn@_rJFCKKvOMrz`N}N=U@eRp|61{8(bl`eM;?ziG z_>tGs-EbCvR$be}fnt#oAb3&I?aPv#+{9y_idY(Vk@of5^oNKC3P_Vy8ISFN>!loGvTEF;z^2z8-Wf@&m|^1J=pXZX zw1@t(k~UZILrXRRfmsP~p%((5R8(-}Fb^uf4)jJ4>^X3yd*1GyUtXdMzX4X?)M8Ys zT(sU|49KIhri{f!EsmwQ+C%ZQU(+AJG?TU6PM2NQ2ZsUMBy+U9JBzHyd1pRbO7!IZ zx2d77&Z%zSwdTynv1tTchLf{(S0M7{eg>}_8$kOl<|_k00BOyalPH_TQqg22oh4#h%@j`zUov@8uG*d+HnGsbKny@+K8u%l51ky}>z86=GZam%{L4YKOdX&>>IJx8KVddz+aT&}8xcT^cx;3x_ zVl5IXDl_nAC|4G>dW0+zB>1>R$-fSKc{R+{igJZY9H`wARh* zuiBA;>z&KF<4}ZD6z^~?iqFk|*NrKvJ zciQs!I9lC`D-Frhb>Ef7*n-dLX_}snO~*@cA#Hz{FgS~au|?k_mDGZ)^JISEu`v zKKstsl!UuR!R()0XHe|G@nh~g%U z9J}824e{grJ2`*FIu~B7xAbwcKbFrNGI*4~tYMU(uAbRM)gMNgLZAD0vgSBnn`5-A z%2v(98se!X#^h6jACMbo8-lc}uMF6oy)f!%FZ^}IFonSn+`!E&$*=!T{zd|MG0|6j zA)=C+AEpvb%f0nkQ(AW)uOV{eFB&?igILKLxSUddmW(4Mz)m;=#b|5}Tq02umO`nw^f zg#)&LHG=riCm~(}a)t-oPzMKJ6uLn!U(M`i1-v0ApBvzi8!nMH8MWUy3o}X``%oyM z1W?+fwhO|GQjT{^D^wC&vlL3;$#WW7i?|(E3&JCmVWr5t;*Ol7v4fTNGp=TekV7aV zl&0>zy(>O-MwN?|W!0+x5;rc4DbtyhMZx6dBkn2G}eZi@(~u+K9j=k4+t-Ea}Nh|5gcW2)TO&4QdkJ#hs6-h#y6 z>Hdy0?vR~CYSMK66c*5sZ%e4p3wD>re#BAp28*Be^n13<}S7|&ut`WYM#+gu3+Ex9H z=od}h*E%*agur67@rz;X4G|GeScMM^Oit)&k!ijqSU*ef@)>@Unf>74$&mOwqeN=W zMwKYRvHwbL&J}T0f_nSApimWI^g4AlU7nPbZwCdJ!ZmHsQiRUfPP6`Jyanyt4Y&t; zQH~9QA%^L12CV_gSTJWV)Dnq)Cw%;GdXxU~8eO_E`!CA9ao9iBR;gAr;~#E-Kd{^vQ#LpFs^X56l#WD z*n)D@m_ol@_)9~ghLOG6=e9+{xEHee(W$26CyBw@cIfSKkcR(>$p82fgK}+K1mz?n zpX~U;7sJDopPR+4CZy6ffOHS=8XJy8>AeprGgizOVz(BP#b)v94^Iw zt3^up@~2~o60h?EAQhw<)4x_tDZjlyLQKU(ZCY*yp}h=AhhbW0v8!a z-%if^1s-4f%zE{g2LnZKER*DhX>Dml@q(D2x7K-o%Oo9mjV@V)AKQ(Pq<9P~^kZhN zq^ps_Oyi=@?_kCDzwj&r$|&y&x5S$2ch4jm-XfFr6Ur3^mtl@0oW}SU<1@L4@aIW{ zm>Braw^_!_rzg%dtI9bb;Dtz~@c+(XSNQGj9g36@OGX#yul^?YWK_V*-}ZT*g_KE5 zh0CTllTLYOgJx|`Q?eR1kJB*4NLfJkAWw?WOE*UfX9F|-*BrJ2A>>OhCQ?ZFZGe)1zISpUt@hy}@Rk%35gO;VGz}&(#w)q2mqdyo)dXH6R%9nswk)2usa1xe!gn zYgi`2#_f~rUQRz|{2=)KW2*6-r%8n7y&Lr^QlwJj61h8u7~UpsjG3nMV9H z{&X?wM~!XrZGn77uue}4Rym#Nv_mB>yNSmV(aFyrx2`eG)8&#B2J z$Qf1+>#<}%!;;wY4bDs?#D(5M&nN7))TeljSTw!;*WqO5JI=FY)&-yQlG~#$^Ygaf ziZiwcrXq=s=bgk*m|;^Xy;a0T`x)NOJqhda{a?T5cqOKq_GyxqavUxfS$BwO2}_ng zCu%e`;&+zT(D}O^{d{TN&0lmcxbo+5a<#&~7o?TL+HU-;X6iIbGs}OSUZBsjLIra~ zwS}EQZCA2aAI{ko7*oh<&8{dIzR+0Ezsi z&>tQTqON!@#Y7&d{eW-hnJlPIf01fitKV>Q2v)oJ%fl@{#EHS1S*X%y@E|*Kl^|c=oVwZzf^CN1q89&ND9@V`14u zk;DFOClqV^LR0qA!xa;Y&>RI&Z z|NI>mcu=%&9ZP!t!ll7B3_%r_-zZx1m2=MgL%79Uuy$QQ>AM^?@MY&M<1!> z(3NQ^O=|K8A$*^A

#Zo5_Z=lL^vCUc*G08-HhxpZt#5>s(3NUBmstfyzSsm3`P4 zU5tXk?I#k`|7ur0P+|ou$qtkDVYnW{YQ?W`kt~)JqShUUh$6pd(OD4uJz#3_YpSlo zMgiZ;vw_2f#WT zNu>%0Hw&V2BN#@6V19tuTQ(w3(4p^wmD!%Md z1?muzds#)tsu(mBaK%nRkoXvO$#e7Q9*BM#X2uA9*5h%Bl~Z_0e1ALvTu9djTcb~K3Tz((dn829nf>%RT<-1v2Z z2z5{$O5P`Ac$UWR(cPb81cIJZys&(};@t2UfQW-GJaO&d<@H3MUGQ&=!U*xNc}?CS zXNQ7e@|H+;Zb^jqlqVtv?q-M0lshloOn%!0>#H*6RMY#s8R>!eyq_!|5vaH&HIK$i z1F1-r;J(v!k^mqn2HGfiBnoeEy<1-~>2XQN!V)l$~^bSLQtv4em)BX2t39riPa@Z5vl* zuZFT^e%s0qH~X~A66&}>W(j1;^u`IYh|w6hKxvDgPFQ%qM5>1vHS$G1=OMT}IplCg zV*DbrUFm%JoMP3f@0jFqo#c8Q)vN#h=IkGwrPcxu$Za9@d--V`>;4$MkR~uo$pB8G zOt*o#T6QAQc|1+pJ2==5XC8I#;hJLEhKkBBwQ~Qr#>NmEQlkod5fQEm@62P0DSKgw z;3A0Iy``*MvVAQeO7lndz@%}X%-qe){mFN4$z@cx_#mX5OW!EFyRz=GvXuX;WrvU5 zkJ{JD`thB4C@S8cIW1;7vCPk_dCA7ZF{6n1+o#UV&+F)XoLDq_hZA)#HW7h4{v`%BN_g7h*tX`%`TdN&0-Bihd1_+(QWS48x#RF z8%Tze9cZ+Hf-Q&O34?&*Is#89;(xjsYk0ifSF1LeknZ}2fJ&s(xD-$OZ=6`rFfuQ= zNR#T5lkBn~-7B}h=n#~O0ta?^vpEettO@6oj8JW@)GAjJ~K>SV5 zaBliCW#18i!vRUNxccbm`}JJruK8?q6WU1>fTKO9yRtV`fDuUc%sAs4_Ol}864xFs zXtNSjObuPtQvj!b%c|D+7m&z+0=d<`gmHK<1t(M%a@j+fMmzn!$)zmWa$>tyrVb5Z z)|$*oeUT}>JFQF$=B^8gzg00g4U4GZ4VA|}%I%U{tkj1fJ~`18K&Yco^Oig$d`7gM z>x$+cBdK8d4E6W#{fN%P&vN@Sl73j5w`+f!mRaZ`7VQ$7<3pai)&b%4xd=C)7V;@D z!(29WwsrknLu{+4(tRQj!%&m#C@4S2-dDD41^e~jDWHQ~TvkGk>aS~Vi87)$N2Jcl zJd|{@?|vg{v*H5zAC%=T0mRmBJYfUgY?bQpyrw8%q|avV<6^{zwj>I!#hQ*77_tj0Ll_)D~Ei;aWqv@Q_XmwiCWxQ^uKFf83Ry^;k%$JDRe;JPcOcxc- z?gJE@*male+0JN2Qx}g6&&i8kTxc&-&hJ*!Drh+BUMY9Kv1>g|C<8D%Xqn*weH?#$ ztYYU7L6o9`gU8(-XrZKwcUi07qviKtLZ$uNvx|MCd5ey-T9+bhU8JiNV>X$u1bBfM zM_Rc)`QMSQoD}S-bw~uR!JO#`MQ&?7mAXnLNt&YZlW69IAp^2A7%oz4JO|^kG4iIy z5inhna6mXq5kHii46lpsf>tzMwyQn`WmC;PV^+-feh#ypxkSi2*(T zSZD5Quq0m}?{8S}BRnRJK*ryYl`osU8FgyyYPnjGY|%DeX?D@{yxHEI^{3ZvPF}QX zihx3fD=XS7Cy`DzpeIA2Xd1<42-WkSu2dkJf93`HG5VrB&vRjy-d3zKYsoIf;tKzcwze4Q>+5?- z$h?L32Vu|pw-~dGi+v|XOQx$qa7j+|%NK0tgVH zPPsQV)B7>dSmAYGn9$sd8HaBboF6u*P8J7*iT{x3S|!>q?J&hPxeiFYN206ND_b(Q zQ~^z%kAZ-O(STYHv}sB|k~0vf1^IOWy}~^_J3ZZ_v2u#7T&&trZ8~+`P07~*NT`-B z9su!c+K;f_l~zEFhwO)T8F)AQ*CyjyKZ>^(`VDvlfr2UBi5%h0tP+4k3x{E!fTU=D zHo|^%*1ppM0l@j%UO|@8P$FIYkYObMqcixv*7^vzpQ~f2Dj?{pv9a;Gi~nBe8Q5f~ zClu@c(5bCUeF$hMIPU&d^_7L;Y(y-m=r=k3e}T{Q1(Pg!^A=D7=H3U z&%^mty7NW|lma!I{s3iCRvr$Wn7tnFGd|jb{0z*OWA8^?@2Y}C1P+r1piO}8iFu4C zjzvlhG)EnKQ< znPsu%>eO^>vkId|RbSmz>i+|#!}s%EEuA$cX*D|R@u8YSi9KMLBw2ibX9j!=GGO<==&`xO?6m$QZ?S1Ml9Cs~354QbKLJUsV}Nkn*f^I>%J4H;O7Gzk)$ zO4-jJ0hb;GSZQ0p(81*DTB-=)2L%QOZ#wh*e2y6=jKckwAro-f55zOw+2WlG0-v~p z^!+~vZT$+J1{*wQzP&EQr*1SH_`Wt%Q)wtYc-R>f}b){ zVKjr2|H=kz5DE|MYYwgVN?7W`qLc?;Vf`eCQhYni(j3v^aM~}sEe@vZ#j0$=vek!o zC7TLU!=-=Vp^*L#zwC#SAREz4fC&V-s1R6rscY?J4InBH#}}0g6#-wrIi;3ZVK9IW zN-mKKRfCygwRCVK7z088jCkz0Rb5|_?dS=hFXamrFYj8#So?+I{A>K$cj*P5uW;LO ztuez`j(eVaT6nrA(|HTtJljNC6R;#`-RI>P*Un}A!PU1PKTH#UQBPZth`l!x$Y+=w zYe??k9nN7rHRX>Jiob0a*j%t+V-bOM@%Fl1fgK;?v%{C*noJ#G{Ecv{EL}-7bY@Z^AxCKtXbTUxbnqD8kSVVQAr~Gh3OY<9VZPHF8*@*$}(FzD|S?4)h;Ki@KS> zAMJUPkx@`8E#{d#?>9;82i_-*FE5V(p0Mq@hn@r6fiUzQgYLkI#gAne5}MU-sKYAB&aXgA9LDfGmBSrS3K-(>)+vlQWqPn22r|F?o9|Tx^Z;$5}&mQJG^3o=Q+YD-w>$dSWFz zq0>YtABHI}Bt1uul`$H>Un-K3GsQPjrCzaO;3d*cbmfGDl2E>>lv9IH)MYnsV5Ra_ zfVaHW9tsSCnuuRI2huBz$Z9wj&V1~kc!J1!%vf_jpA^W-7>n|{*9XUx zx6E(xp5BakdAj3nfo8e7)jIl1WN_OMa_W3^ygPBcEfgR2D!$|HO|e<-1tzA_G0G-v zxm9%?lAj975z&m(C+>K7#c&0b0w%jvn6g)z!M5LarQ{!}9h!nr@Zy3>~K+Qi#Hm>J+H-Uon@`YNv?127Xv^b;i@6vTF zn-o38{`WKF&^2xR*m5op)T#BrXvL=-3eNm>`;%JF->-nO>2S7|6H*U05t5ZSDRpYu zXQf{?VG)b<&&8zE%w$d24|32q9vanlY)n049__q1VfY^?wArPCmgm=*Si)<&2je5jN z^{9_s_VBSxd85$<6^1^~J@i?rw=6nOXZD|pw9qL-2{;$lUMP5(v=lW(6e3|zQ^+denTLDq1CL927-!EEEMKF@oIDHK_=8OoP)jFh1RevadcbWR-;7Z zV3}xtFq^?)UFORU$jScxgXpEm(R{v5{A)QPNvCf#Y$zcaZ>R4LrT;=9m}Cy9PSXz5 zV)h3$vz5ACa9_{y%L%NTV?Y8txVq$dxlmx;E z#`_JNw(k=rvL(tX?AFB4T|vAj*5jdaL8wB;C39+Zbqp%05&AapApT2$IQ4Sc-0bOt@FY)evbk-yR5~yu8x_u3Fjm#%{3u6s_=w?wtVaSa5vTZy!IbU4zMg+l z3v(pi#9E+^QnIq#5to+@Muh5gLl;Sg5>g#<6FLFu_7X zWCOvB)l8BNm9b;32T$*i*ka(`hgwzBANSOR?d|X9YJS8Jp77zghtA$yAGDDJ2ns-Q zxhV6>@bU41UH&07DU74VqK#|^EF;K(wVx_f8aD7b;?^Q>lV#bmBWl~SzD4Rm{`_G} zlFZ$KwzajB;pwF-9`Bx7TKTz2RFcXXe)uENjyC}Ql*!OG-9w2>E?)6HI}+_ma-uq7 zWD{LKR!y(vD3c|QKl`kV;TljIo_K`Xn`pmyyMn1~zC&Rd`U#tcA#uhpN{57`QWlMrw7}A!AWKQ7(j7~j z`-8t{&Ut3eKj+MxnZwNfqr@lf`?{}qUGGa$u)ZZvdI`IhQ`M8a?(pu6!x&H(h)~`ew zD7R4KjocfGL#gMy$55~5qr5`*!;&@X5l(NOJ{n|_8vmhX`-6)1v+P=nS?-~xKx1$< zQ~EPmqhJ3`%?-hV%J4W!CLwK`davCYKtiLZ^($?tvd`8mp;XYrJFXcnJ{Q>O<&C<{ zf=T<`MIQgRz$!4TSX_EFcUd4SNHj9G&eVTJOk8KhAa{H3fqdoYJL$-__+mz}itUQJJwad$5;1Utv*NOy(78>wg+6@R>_qjJJkZ`;HXKG}Qg3 zZ`&`o|0Wh5G`+n$pd3Vl+qEh#oeeBp?cdK|Y8DdIfLSA)fjYW(dU#}3f@qqfMW$X= zCi|au_?r#psSte=gSNyC(;%^8R~YQgN~V{26}Naddb@JWahI^Y_nmliIGOQAZ)3YUuhGspI@~6SOmOtrcf!m6f;{ z45=Qfyz|{NS$2`V2|7!7W~Ua3WMW1KC0Dwff(E;|U8I_vGO0>~JZI3`<6X*xR3Uqg z1INcXCo9~xOinb1;^7aU0OHJ}2|MWn9Fj$W>|;_u(?L=Ur^i4VWa?CBlm~Q`0sht! z#HvrDa`fZsSF35pGfq?cHsfKEv5BjTjQju)$%rnvQl>$QY0KDPL1~ zrB-2?a9*;TEiTlodr)YYLTn&USg`U#s_2^@_UrnenUj%kKCtcAPkN@+-lG?0iMPnT z&MW=S=vUzw?cVJU+&u!sAu=*C`3YT zKq|la)e$3aF0Fz`xTAmgCsHUN_zd_=((IG|0d~gU{109%&pm&{R!!-Kzj&?C;qaCM z;U?XRa2CO$>I25P=Mg&r{j#W1!cBUPQUcva6ahO~&EBfDtU@M9-@QY-oTEHolKoK! z80ux~_S{x>ExT8R_r6BNU}mJWC8F@wnH z8c>!M1Olx<%&gCld-oIYI)%>cE&(w*)jZcG(RV)M;a4A~i?5fy(n;p7c>SZ}!FXt3NHqv8$f>6!7AM|2~0$BIpV-b|0gmUm81&w3k>6scBh}#c>_HAF>8lW!* zbz3<0uRBviUL5iE(mhbGRf!yUy7inR6Sl)qt4gwVqn111bs)?KHx@tX9S+L0aQ)pb z&N_1`L!!Q3f&3b!D(xGcyzyI0F$tl+WZwZDm@uTey4oyX8+U#(NBIu{%^g<{oJHR5 zr=?7R!T+&SP+~ZvhFvLFWak@NB_e;O;V9F_WEsrXzc;kXDQ9veIoN|Ryl9(5#!B?vJULhe+TP9@G(j27S$??G=Cz_#@85W#@Clv59pc7ZI< zSPEVbQ>!4*X{3>@FT?XgbAxvoRwYNT6K*XahQAZqX(m#k;*3(B+ueBGt-*M%2|Kz{^g)6Y9#WIie;VPv8(W2JZa?k8p zA4L;*k?034$B%;V3^_~<;+q@F-Vx@u-sP!V;|I3pz{+o#4$!h!WeTzjM#K!i0^|1WPGoLv&wzZB>OOHh21*sR~B8cAxPDH4*wjtv}vh98}m zFJB%_G@a?c(S-I^JC9%dYDp7Az$dK_J39XRIueFT2`mO)i%HFe%wEB*TEW0`c#(p7)W>c~Tn&HdXjFD@e^y8kY}n=T`-`IV>E#PE7!{q*qk zmw%N&0Q{G-qQ$bCxJ9M-QQRIiQpC=2!}?nsz5MOxKAWwxg|`EVB2>Hg87t1D7rZFh(` zF{I`fQ%3c5o${}5KIBrBO$T!bU|pL2-I!>nGD4ym{XJspxm#>QgH(3HTMF?BRrUu7 zwDL~<9I6%9ehuqIo46~rfbI&g-JeIdzp6{P^7%yi?2uwR1gs_<5KT^gEdv2EK zTWwy(U8KhK;3}qSTq*xVt8h?{oqJeyU+2n~B+X}(k>^iuD?F?scvZ+0e?L$b50~O@ zmq%vpVb(5o{x_)YSuh==LpBMf)EVb{e@nP5_X@Vxi!J*|zqV{!kp68?J=UpF6BAX6 zjr^g-MC-6sS8{K4tv%K`k7;ICc9@2jA!uR_(Y;yN%z6)emGgyG3Y!$Q*K&oYukYwG zb&UJTVImoYLK`<2cFrWcr2Vse`UT|{#S}fFE!v82ub^2bpP}nR{(LOsR&lI2QLbx?tk_q*eF(ZMjsJ4XSIOpg(g@f;P1Bg+)}0o>~G+TWGL^ z`v)CfDw}=r)i1X`S*&iUu=RYqez%A5LoQzm{LkDK6!pZi*L$q&^|z%Vh6(rcYAwwi zLs(ju8JxF-MP;0xXR}^ zSS;Ty>KCXeS1R%Eu+IgG4E&mZL%2fv;W7cL`8lQk9vpR=F0BO`mf-?QRVTC#=FgVT zB=&aUVdoL~xkeomH&g4wt&t3DPiNnrJUhtVLZMmKl~?clFBV`RG4+$A{_1y}g4|&E zdclXAowtJB0&nmK{b>oahf_r{zV4wA{}^mH^J&ZZz9RVj`Fcfj8Cr;2H^J8!0eG0& zVU?=+a%owLQoe8W7KtR*cI*2-SqM40(TLg%@Uh2KgD+rGZ2xcMZ zBz?-IEfy0|;zV7xm^NYR6#w#M`N)xmJ}KgR+AHwYY4M=2GSHdY%+iw0*O!sGZ)s5D zjQX{A0DVKaU2weZ($N92Rv35==V<-ySwV3LiS(Yk3eZzGLtaI-7G^x>NRgvKDi2i; z4*7FfrvX6OD{H=i=x#`6?yxIL4R4uFCE@9(XCJk{xIW`}re`rMSn+?Z!>6~Y*%{eX zO>$@JU#w+MS-HcE8ECK!7t5;u{LWTbQlW^X@H+XL_jPl=#`ENY#-|fFr zrq%rSh;LfUUqxN6+fGo|`H|ZyFn=lbcH4Jf9rUTwQC! zIol^)g|xu1kB(Qkb~pbuKAWJH4T!a!2BYE57rz`7mUk@BY!un)}%RHmN?6V zNhDCQQ`hojg$-#l-Atjf{G0dm@8z3VfBeEOHL1eJI&J6lnqAP6LSMl6~Rb!k^y>7OVRuKnozpc0)%U*2B%QZcc z-fS~5z#UBp5|1oD8Rak67}+0(uGT_0cR~R>>LrFZM?AdeBe>E6~@$=;|* z3#X|L>2_n^8G}dKvtv|WbVVU6Wr(|n)T8&_cwNK1cyt%>$_Y+b=WJ1=yWCcj`a43O)UEA@1!*I( zW0`FX9XWP;~})!Y!j$ zlW8!nZJUMvbAqU(>7ww>$Id0MXt_mY)?5pxKVyxN+z{24s*5l-@SxW*IL42`<|gV^ zyd&GWwQr&3c_&F+B&(_!BA1F=1_s0s6XEeK~)R+ywpln(mVgCLsXkJtZf zF_{Ft{=(=BXE2R!uMt(Vz$t7;&|3CHm?z$7)zkH8ds-hW>T<_&e{NfJ=(bv1%~AJ5 zE|N<#XT}SiF8v%{o1dPGtGEpO`ZKh$@n^9>-#^kVreUdnwi*B6!%wTYdEJqQERcOQ zEiy-cwLVe|BMG$D`j8;LRm*cV_Qqi$XiL>~3~+)W`Oxhy7}+frk|R2wSD|tlZYJ^? z;ce*V+asdrRXhyo=}mqxsT$ea%q^t#EG_S-1QAPMNj9|{?1z78v8mscVhFp>&G!}2 zA8+P*I<0F-o{sX1f1zKfWy6gT+j-#UHDB^kn*+A2ToDCSobM)c>nrM&42?{vsrzT< z<#xZBbVo+T=I_2IR#gyFWF&1tn=F#>{do9We@SX8W&U-?V~wuq(R+SW7thgU^#~P- zr#^X-BBB98_`1aHwi(ub4wu(4mI_SpCvBx4op^Pde35)e4_stt16x`0SEJ=V2Qe}v zmu~Xl*qBO#(eliv#Ll4%n@ZKRMHc$!iqW)c$=-UAK_Q~~VIpC0SYfn))!VLgDh94b zs|t%U1hM(H@~sr{6IqxjqPL&waXGHsJGl63dV^PaZ@YqCOHBk-sYO7iSUp{6rMu~u zqZvM`j+O0OA2BvCq}75O&JMg?T)rqF&XQWCAzM|62+iWT`AHj<=N0pqqi^tJk-sx% zMj9h)N>RwC@aOy~{BhJk5ud_r{HQ*eeweiWn$)%Sq`Afl*eE!WABjZ@KV4#kiQ3O) z)x4{+xipMCYA=eS_YQ=WKU3LMUS<6hhoxgQ_5LF{u=4TwpUu_wx3W4Tpn+Z7F#c#g7s1U(_a>JP7Fzy&pAcHe?<57TQRy8Ywh?6QA3Xai} zvofR#)rhSn?qKAP zBh{m{TXJD#$%<)%V`6wgOzVH{Z}NuZz?9z+zaWSbaw_kw%h3=<=x4ax)?X7AklhM2 z!DIFGLCM=%-M&e}L}V+F8u}ET1Q$$qO3~%^l-qK`Tz_2h@5qe-@4Ktsfty_L{eu}8 z9wNM&vciz>$n&lzIR@8+ljKZSmA7mqw~G#QTj4*S@xm=DN6%ZO(uAzR?cUcI3J(>8 zlw!%rnr{@gh!T0qy;5TcE?bbkVcRTz>+n4v?-qZMF3Jfex3NtS#5K^?X!k!3NBRd2 za=W(hr@tiw=bSXkeun30xD`&}ippsOu&ykl!-g4<_*Z8hBNj9h28CSq5p7Bu-HEv8`?4wVExBu#(~GNjh>0V z4^t|QG2sfFt92qsY)f||SmrIjL${~9ncNDBTyB{y>th{7v%=Eb=34~iwZ@3Z=G>wx z5wsH1Ub} zYrsX39X^GulG&@Tq~+1Dbkb*b@MO}LT2*fjZqUWaJHq%S8Riqp!-$zim+bkFTrC|a z4Z-Gqd5vdn!ER+fe#FIy>nht~_9h4YsfeIybVt<#ZaEEhe(gYbB=(N~n@3Mj`#0nb z2Cd0L=44XKx0I`x{hwSO8kvy8)zuJe!4xa{hkDEN7O`2`p3;Mu7jp?6yrm(0A%WVz zZtKJIL&}Yi#O)jk`jq5MCfjAS>3pMfTV5Hu0@B)nq%k*qNUd23MQ%y9(3Z~Fdi}f? zK!wY#9YLzFDWv}kwjIo=v=LAW*dmatUj82;bR-~|AhBIYdZBNG&i`~f1N6qay1P4r z+Vl@ALC=YaDKwxTCwv|o8#7LWvRDmB-hr(563{ML030Op@2^j^zDq>XTe!(^-S78P z488{vF%UQFH11G=Zqe*5C~+5jUEHd3dcOUR@xm`Hb#tJSa>k z3`UKrWqi18#f~YQcMey5ON@|Qnr(nidYeT>?&te&52PukQ&L$rkh@IW4uWO9jXa!k z<76-MuE=Y$XHQsIeZ`@O=d_VgorXrf8@R;ZBGlvGSbuix_!5Nc0j zs<947NhLm^V4g`D5aw_JYup7uug-vPA-k$6D-ZzsV}pUbL&_$o@IzhG%(0Rb0YK5q zf2Lnza{&ki59aQbW`@zSsq7X}eF*v5Yb+0{Vuo zKNUcQXKB}NGWgJWdLC3>t->myj1b_Nz8p6e9s5D4WE}6cG9rNEP8MuK)}*sa3xQ%T z7SAD8RtVrP>s8|AGt;1a&CAppN;tJFs$L0xC)MYltJCXFTU%Yz<8#Zd(H%@>gYcXpJ8^e#TjOHU?wCpQ%>f3%E%zjcxwd+4A zHL-sP#I2W)#s>V*06(i)EAIgj6Hsco6!YN(;+VNJd-IGJsh~(|o??iG76~8;d*YQC zx*!-1!lw6r$R7`;G!nGQ(ThyF-h#wC>cC2Sw+ew;(8Q1#P%Byj(g)^?-ARRj1%Whz zXs^@_u2)YtPBtDcH7beix`TxS=}quj_R|G0`8JWs7hfJ^&XkyOknc2+(K|u9Sw`0={2rpx=b={_uovlaU^2>aoNMs9XV!RC=B6-);P z*8*=i;}sl5mG2O2H7NQ0R&<0QIyYYryD-~3X zBk%BlAt>R1P{jfI9&EPmg`o66e~a~zm9#O`!4HH)!nf?IPeFMW)nr_xt@RWN)TtFg zw8|1zP(xJcLl+e5-TMemipLPib~I`*?mb;@=4^8Op69b2lD+q90frp=^GjKr4jS8i4ZkAKuPmy=MN6+8N#>rxKo`FmA<&g}X7FD7S)Wva z;1yNQ1ZxckDsw;rEp%W{iB_+#lXSn^19J@G3fOUC0fHG4LqRbHKf)|K3Clff z-#soIw|a0=l(e`Tsmr@#F+o`my2=;`WIOXf3qWCql{GEY! z|LCJFP1OR|c`FVeBIape3{>`jt`pKTG6k9&^#F}R0%;Uzo)<_J0fJ+#sPQ0ACDC(L zf4Un$dVN41=^<3=(k?N240K5#ZHyZ!jKx4i1PCF#0i~3RTFRX?R532$_lc^%YinjD z4F_{zqs{_(7K_uPZIJMF>>Pn~EJlp|r62>YMDIokX^K?;#RA)78(Cb;%?)ziet?Y_ z1cWR|Zg+W4V~t|O|31KhaFWK0v&{;CY`Kq_--(evu>$)wW9c*bm^;Wa-+@>d9MA`n z0vQwGUgm`LhrqO(>E5hQd&|ikyjPH_u*;;aEyy6pkiszdt(W(!0T=gwr0ogaPxpj5 zQ$$X1FxTIlkWa;>sIkaXcbXobnINwyMcyYcHmDfYy3-wdP-f5+>pkUDM#)FnRY;8q zVzVt+K|i%cyqgEGf)oz)KrXf!FIvEwX#s|53`jj(P9*{6M>=mc8-R?ELItgTO&~CA zK_EVd#5m;2WVVz~aG#!!mgOv#H3K7hnrb%^iZ>P5l`>Rj9`E5Zks1 zE(E%me#zZOz-NLg(P@wlgKqJ+zZ{TG1~?c`B8aL4A0M}n`!z$_AK+*eK2B52Z3!lq z?gT?#@yKHqX;wD%MVrW;cAx(EX!g?nAJifE3AWn5A(<{uXjxV9tV{ z@$mKRynHi_Ix%}lM%yr9_j*c&WuQf^ky0xdwIRkP&d1O$-Ew7Rhs+AUq;U0xeF|a<#=dc`8`+$TF zq_YJ>iUJ%+gyY_U4akSZ;$Uu$c$jk?HhQk<+rMAbmj19P#?>M0!=T4dJ^rigeFh^x zunxDfJLK;5MZ9jO_+D=7U-1|D8@aSg>Zsu84AXxW-4=(fPsNSYX|92l%dG`l_|*E8 z*=o>lz3pI8iN7VkJ5)x9v`+qW$jbQf5Yd~^zP;4fXvZo_oONU8$hVN0Ao4Kmx9y=! zhutjD_~B}{xCjKPza1NQpd4nm>+Mjxn5-jM$OV{oXr7VR?oz|rs$vwZrL2Qt!bjTX z*8|098VKkmv;9^x0^FDHKnm?STTF%}Y5SC5EQu5P zswAsA6Dp1@>##Bs2oww@a-M4|2FbU6~A=6Sck_48haeH=vy%#nRU6v>UTf zTsjA&*sA+BC!e7*=<|V43RIki+*U~-`b3-AwA0P`7U+!h^jAeQNWDy42Br>3zM&u! z_|32bUSjx}a7;0%h{E=Y1BJ5|lSs^Omb|IBC5sv9;FrlmTQfz>0?DLGigNb1ob{Q= z!W2vMS`rB5Bku3scA$v*Vrp;&No1cI(krS7w+{FX8L;mH>;obK*x$& zk@m#K{1nCWU>~=^UXU}0p(AQLvsg^fLE@p0mKp`+1L6{w-9W5al2X?0$9K*AXWWes zOLIH_>A-(QZ;BM8Mn^I}UDLgmYRZ@%oxT(?LW%tu(H*zg_*Ih^fAwp++Fdf3X?%P@ zY+?wjJrij_wF2YU#w_|HRAV^+IAOq9?Vn``1DmbXYruP|6;$O*AA@7ad%7-DslpnJ zzv6||+rUJi-)pERGG}|yF_S=y51M>{6U8W#H8nLAZ8QWT4Pc3&XrtgVZ8I!7US zJ3#LMhTp0`Aqfc*xI|(AAsB_E;;?>5Qe;QW;wUn9@vUXnELd1{lo+TF3OcvwvGE{!eanc*o>l?CQ`tC{aIh-OeRf3P?ZyFU@W^kryr;o0} zDb-l*47yk3fAWw;R)(>}s?j5VDyeU6SM2;U$wYDM3JSj->7RR~>sV0xdoZ=|!BbPh zeGkr7y&$$8O`o5%#nfb(?R7cLuZEIUKq^2d9l}JQL-!hYjY);~FV3W^7kla#Z6Ibk ziilp#OMEg1J~XatpraHmCbFQ~-(UL>JDBBnVvQ*=9sr6{)jf#n(9aJW#X;@krtv90 z*OQne0b2&!=2Y3O0xQ)_`A%Y1wgGxpmAjN@KMEtqx^7@UQp*!peY|SDg_+qEowwli zWK7Ysk&h-=>MQuj*$zT?AX#aM>Ert{S%=b1pF>q9F>QtJgG8?pD|O^4~BK1jQbL73b8CJ(A2i4B>)D14|X3Iq{H) zz74n--Nkhq3~l=a)rgM8vr)xdK7ZnA^KctMn!UZfQj0zs zzw<|9$h^@CZ8-bag23&p-`Kg*j&TH{?SwAnS;XPnoCM~h^4ZF=qZ^hjbJ7A4hqp(# zErz4`Ms2R#f+Hd;lSG*<41bzTkUz^1EGtPDN@h_>Ybi`>1v71?yfe!Bq-|mH53=Ye z`Txhs*muZ*c3eK_qG*LiY}Ft7tfP#PKn$!^Do-b0pkFjs_Y!U`>9&a*w%I2(p^wAY z?P=g)z$WWk)g}#Cdp+qXBg+m??kK8y7H_f2fgue{epnU1v2Xb1acN-ARV0oxp4V<{ zJRdF!DWvSIp3r9gx&Tfb^g4+-+KyW%3Ome!AnI?wYbpP`LJq7lyo7p{i)Gk63;pv74p05^QBsTWV(-Av#4l>46Z;U zF@Z(D_~Gxc328<`(!JHza40lgmm9uooC#$P+!m~S#3szsxQ3dSL*kI2{uj(S@$L$F zV;~Y)fijvz3&4UUGvqVdc`O8@QbExkwEa(~>SaI@^dPOvtTdU@ele96Q=qqW? z_N5c9D+LpF`1m*dFBTxNBj$sD5mO(NE2gtBH(BUzfPj;A?x$aA{<0a7&mYW7i-)s! zZ--kf#%a=dw|^7$P9ZQDeEmM+F==3p(gr!nzdCiv6_9LbTW;S`LYDPYKELh4i_2&_ z8;iJbe)la$&6G-El_Ep!)fYxGVU^BE=L?W>&&SgZPOF4BfgzE86Tq7DzRguXXI9*7 zlt7XEia57UQjHco^dx<)X6ne9{BS(yzN~G=V+|a0+1j?B2qIzJ)iQ4O&uTRF1CgtC zho)jc%JY@~#i76D`gkQcg(Fsf zg^dsNT`URRfg_p$CfD^`$MA}5TET?izuNq|0#sGGGkiC?O!Us7{}o1JLOe0n02e|_ zB8vjjvJ~BfXDS?J(|Q|Z{RB3d%$>IIlX%N4pEly#rzawX1}6k(hQ80fY_;JZIv?va z^?DB+-<`KuZ|`)P|6~12h2mNZD0AMByW3M?DwEM(OMrU(^9z?Cr|ip3B(v=%2`28q z{Y7HHK5jyW3DXfB?cCs_&lB3zHd@{o2G1E>NUs!xTR5ViHS-vp6p+K7D(Z9(>ZJ8v zuY@`-pmR_Ng(1C)f(}N|@al8iW4r_sqBAqW#lU}5H!cpGNCwwaphgvBFsYyNp-2lsL<+Z^tUN{ad8T~ zz^^6gAMVJsHTmu&W}Lonnu}wOy<75ZYmx*lO5^L6&^GIe&h#qDO3@jcGAkUh? z2g$3V+z&vZ?aGd#YC;~2_Her09S2v@u8F@A^yA$l3od4%%fp!ZD-3T~<=j-a~4e_=KgnD<@RZDW&9c7 zLB9ZJS6E*I*2>PZ;Q>l~wpx zfI(PW6h(u)cg~(~8A162%*`OSszUDSSD}G#>?rUEQ&?D3sFpbh;3Q#m>Xl25(m(dU ztHJ$dT1Msj5cT9YB+;_b}R?OfpnM-o z=%4@pFqbkRVsM9(n-|8tnj{05R@8VgW zCO40XCQ7s*qqp)oNUdDbyy_!n%~rnGLm zkP2@gD++$M-qxM}v#KBY7;l&*ObAI@tImGMonc%o0t6TQ&I`()hyTW$e}V`RGdAtZ zGzYF&TqSV2${cD#ll9dc3YT2;V(gA2ze?Iy<~uJdDPu9C`5b z$xX!Zk>-Ku7TI0_S=8g^r_Vz2sDGQb#FxX&tg>Qxx;u9Wugfb&@U=-hO1C;($aFww z_q`JFtElz7N79SFUWKH#eQzt1Q;tW&xd@1LgL@Y|$)_yy_5-?HUV3A_eEuM7+Ty}x zJLT6>FsB|QOjRTwWpm?)u)Q39{sWt-Rm*T^x+=}ql(Qk;8t2JyL3LmMOYCQu-BN6lJEGZhYMbeQFFrv9sMFu)zo%%g1*^ z=p+|(Rf(y+Hp(zRD*dD~hdEZWjQe&6ir#BJ{s>d@H*Wa2gy{WErN)KjUvVU1>RB!xjy{t}t(oo)3K@QQcjp#l3qpL=}h^y7&>^sWy?#FGD7ZH z7o({v6Lt^PJj}6oa2O8*I4KODSt-V>x2Eio|Kx_`PN(K0hRCpI98{nXv5?h<_>AGT zUW1hv@4LD_>#UIGhwlsCFZor*-9ltcDY{MIuqE9V2g5_Zq&br!z*pH~ku4=*J@iDS z_i*=Ye*E7dSuv511LN;XE$BSuv&;z`kp6ur?!Y_zT^nGj&21SwCP3Y^TKp(OJUS0aVBJ8j z^QmnyMw-o~?ELk>ymvJ2GO6`ABdt0ZAWw~!2zsx3_e!(a2P2EiSC{_2RJga>B$8FWf52G!?G6THZwLw9%RP@OP-(Z{fBec*dBSnL`@3$o@9 ziJyIbUY=uXK6a;H&yh<(Gb6g8Gx{+v3qq1%fIAlr+Uoy@`2-B2T`Dy)P3`VsmUuK< zw$aU2wVxeuS$K-WBLle=mmR_TU%lJ5(_f_V9e;rs_WtYP($N2MrU*^ zgIZd_o+Z2Q*_oL&9IM{&kXNDXCaQTkidH1ZDbfAC%bHb&nqz<2M*Hxddr28rXUcxo zZxdaJd5BTA7Nh}ufRYkX!(;G2?Ik}P z4}P{Xkjy*g{{O})7x~V2&tOgr9{yYVLm)=|5A~5mL8#;ZXOwcnEJHJD_^T3{J@)sfX8;>sR^XBsD;M}VZ5$r{|20+p{{qoAQusE~(7dnXleAIE zgR?c~!g+jr*!aVT8@dmPShE_UyZ0v4jSs~)n$Gkvg)bA%uFHgCH*1oI)n!^pHjlO( z$uD1Vn6d!sUdg@0f`K_M#v`Jan5MQ8zdf=Y_`LeXiJW2#wajmMhyjRa8thH${L(8O zp4ACHqQ6@~%I;>o3?Ri-i5m8Q_$JT&X!0w^hob}n|&mX6Z_kP_QJdC%9{6R zSN$S>_SA}$@$rP#9~fUmtj~4_j%1TF_4M(nSg_HB^SpHf+Su^O*FY2Zo#k2NX~*%V z#mMCHR-^hk5l)Nu()1So?ddZVrs+uX)`yLjpO*F6QioEuKRmrb)c!befrPL{IsIOp?EU4o@^14AUyMw`?}(>r3pM zGcI3_1Xu8z%)vr0B9}etP0Itna68wH4;RPkryEPz<*W7;Z(W*i!o64Q{dS55D1w%o zbDzww2uuy&DxLG;)b&lp<_>tuC}nT^i7Q6YxMsrbw$ihGR>>Jwd!j#lJZq zTlTm(;V6gGyJi|29lO~d`%kxvcNF?w2gq{lcCLd@1XZk5P1nF=+V;gxcggNVwl7ik za_`i|W5K_^&m_dF|9YhPw~`}j*O=VX8)R0Ee6m)Hk2qqbL>U9}^pJmYu0&-EW`g&e zd;`zp{I61P(|N@EivZ~MN;J}R6Eg>Uy}}(wyEYfHrq84DBR6aq{QVaBlexb|zTLgP zMDM@vg)^v_8NOK?nxZY!imQ}$6{McXx0~rlI&L_hV17rigr<(f6MEo zxLbM6{z#gL!HvT@x4)s{YBJjMPSHOOZ6+QuFIj@b@}>=W-@xsDH+1$Wvs|LMAiQCUeGVf7H^> zgB{=JDVkcT2ouku_TFd}=wV!fesjr(NDU+#@5|G?rDL#L9})-ZV(Eh1wlD0K>7DUL z&IWW46*kAh(HF-b7(2WN3Vq2Z*EWxxSs!J^sLdgk7(6L)cqFmUc27Sql2>dMT$nEo zhOev|suKq`ZtMpaZ#y>`enIhE=-?E(WVmB4UVs%y?p1%eG-*SH#yuPUMreury?Yf`;Xv~*;_qv!<% z%pWD#ki8PH*74cjgw^#>K9N|x;B^{jIK{F}m31B3Z&Y(WPLob_;W^@A@HUaw@!e&t zIlGf`*~Zd|3W7{fmVQ~3wZP$$TZxQS;xgM4UwVvQmi{)3St&Lb*|x&ukB-QXEbZS8 zRQIPv_TDy@u>g;kqGef!o0d{Ej6bV&`qcjR)X6Gt8hNBe&-=G)@-Ug0kP%C|69c_-UH?HnX`6r<)|-*3V<8T|TI)}>>Cc>Mn_Oyrb#bSAT-!jdALBdz)a4JKb?R^K5nLb?PjG&Wa{gVB;N zf43De4CGl0h@HOi;IkhTOi;DUb@ATthV?Lfi@Z2VA?Gtc6q9^;LC>NR%B(Ksl8$a# zwRaf>W?XWAG}veJ8lwfKKG^I051S}3oC3%J->Sb@-@{!-GxXXS;+qvN8g^Y~adO-H zj+!WVS$aE?$i+bg98r-y|Ajrbl4WSGMVOOoY;M|d*HYe$KNy;xXg^(T8el%0RP}cd zfo`ZYak>laN1VBf%SYyNVfaR%=;;LjMikx8e6SQ&xMXBtxd^Yfoj4~(h06U>K+ZkIiz&` zz8b><=e2B~IBNl8@@57X@`X+rKc2(MgKM{^y_j9dB_p;I3&7rP)puLho?JDW(UCbJ z%tb$$Aydlk-*&j@d6*=q@L!(P-l4n8af;0N?-H`DU%BL$p8}DlbV0kVy7XfEEd9f| z-P4VNFS_SgZ_(Xb#{LTU`ow`rYInBRv|@h_?Ne07-0V$lU<8Y6(|o%6%S9z+T$`NPDIz+*+1lrK{A_c7rpknD zmQS9I(EE?t_En8PV+vO{ez|*lpfd8}d~o_l#fHN9Ne<(6@pEvEj_o=ZF+=?)|5c3V zt|2ZDN+EYV#`Dvyq`83#O5~%88NkVtmeBg2`s*I0UrZJpGC0pkh#qG$j`cH-*Dq^J zqAS$7%nxg^Lt>_+Jd%f$kgI@YaOY37T&w-LS_h7CBzgab5=*JGhRL=4u-vz0%Z>7l z{V`wH-q+QfN0bEdWt`k$w8Th<+a3-aHODhoV}-&&e8PZRi0^zCReRWuoOZs(RlOs| zHDE1PHM{#`r)IbyhHUXP?vI1my>cxM+E1=SQ80npnqO`fD%{n=BHXmgR#S-bA{5KEE-TOGuU-v|d++y-HS5JdWc2#x1tvqSm z?vk0m@cWwy+=^nI(_Qn9r-)neOxUB55?ag|@N@_Lu1g#bfSWQGnw>2N>tSWxXaxS| zO6kQ-|K8PuDc3LW-Wx0@X=(=>TnyUSADuTf%w_XPg#B}jPg|Dgo$o1~{>&yn_66S1 z+6%iL&CS)>cy9;u13!oHk8b^r21YEw`EE0{XXYMTEz)c^8| zVwJV@fbQ3sl&EyU%s&-NWLUTJ8y~WcozPL)ZK))Q$Ma1`N2O5@t7NEP(7ng6FU{PV z>R;JTJo2Azh=beN?g*)9&PI{@q>VIf*XX!Aa>;GMzwPS4ke+8P6Vfs3ZkaN_pmBur zMW1`xWBoDp2aZdxTOZsFj<|YHEXT^`Fd{)f@6+OsbsKluVjVD5%bLSncTzB%aNnXJ z>7L@-g5-z?q5)Sq98(t^16)Kcv!#lT4?8Rz$U7ac<1H%>VE6S(Do0KWLr>ifE%H&7&kSf+^T#P>XLnbXbhdotRD8@-j)>J zG-u}SK}J*A&Y6hJfp5r>XrB4MX+&%8@`^Ew-@ja>D4ieDXxgpfek}ac@vG$Vhl1%D zqi8$i?o~Z)o+~r?x);^$WymLIc-n9k?!@mA>z))VnUftcDeG0K9u|KlO14I(&xsW@ zjt+TzB4?2?qo{$~-Z3oy1|6Bkeq3#0G_GIbW;mWky~=s@NoP_~m*-98g_VK)@t)X4 zZL5p4+hElfeSpyKF-%%Iuxkesc>aCQ=(1Q8yXX9$sYjgIx^d^bGjfal!D^Y`3{J|` zF_+32YoE=`$+9mn^bbBqm~YnPs}h&xXQuoe6F8j2IOX@8&*@E~-A7!0agR_{M@Ck8 z6*-(68tBv%W1Y#T%&W2cYmXeHjV?R-*N|ybUP(>o2TJcAWSoRvSd2cr<&G8L7Ax>b zv>OtPB@_?9*{UmS?Q3e~R{LenZa-w6&W){_iurcBVWW?I>0I9dJ=LFVaN|81`l3~s z#J1p+-=cLPA}BtbVQAt7biLWcnq}{aR%yN*-i3pbOuccxrJvcm-9t@8CXa{Y7*hT2 zdl+9_@x$hp41Kd77B1;B*ZjS|eob|v=XU>M%5>eEx<+5z*hv@sC*1OsVW&s5jM^_> zo-qm>b<7{y2^1_PZT=s`{bf{^+xGn@nfznE#V}5QhD)-@j-1Gg|ny1Nb z?e%i6Fv6E1i_d#u(F+S5r&N2a;LqKi|7^IL9Zi3`*I0gcKPezQ$NRYW_`#6><3Wyg z%N6He8H6isuq;;+dM&Q(4u@KAw};e+tOUG%sINH&E1ZK$T@g*gYZg13*U$%hb((Tk?m%2W`gTxJFjl^{Jzmzz zV72;`Xls(T+P$?6XE31)g*5P9%!HT)Jqzi+^+=|ezH6e;6fu- z(!7U(!FYAE=4G<$B;(PTL|6IM-SuuatrjLh-eY354I^My(J9$hfBX&Uoymp{&1_NY zn>nsd@!ouFjd@IXIz^w>BF`i|ZUNu!+&;Y(wuo!U$mXZ5@h_K#TCBd&6jX!1kBtnw z%~)~@+f2xXt)xu8%g#rvLN)&&QpI3n>qmbV!jFbN=$wA;oG_`}_s}B_IVVjc+57O=k=gyYp;X8w!Rrv0<3kZFO&pay ze){E{@rh1%DayDzf%p0b+6(R)H(yCbVWs=8{%7F=-HJ@AN`ksQDe|>csz#kFo|dn# z;O3Zov&a3PDv88%%6cYjt&lw#lVjqq8HM8Rg@e|+lEv4?_ z8Cd$iIwQ482PL;Dn6x|IPh5)q=F^t9K+0>HC^1}Im3I$$q2Yda=%ogyk93t)%tzVx>1#<dl zDx7LNtiL!>MwL`;zFKi#y!rfZ)lKD-sxGiqak0ZpY*2!XqmPvJ3bl&qP%A3Z@D-<< z7t%uhRX7n2$>!CVbTqc2SnFP-xqBOJEa1znAH54>?yanf!q+I2teQiDut1wE@Wq6n zWGm^@-^v2{L=}98dQdFMp94`SvZiW;E`C;N5Moq?F#&$=9(Hs;a&Q7UvMP5;${n758?I!}=yg7f90iN; z>C?SXtWfMONO}!p^B=EV;Aspm8UVSy>Wbg<;&UWjdt^H}7mNp##E6D*{_Jt3Ofe?> zUM|H0oWBQ;qVL_W@@@*qudZeO8n?wa29?VTzrEv@cG@=IxlHoZUW|4}AEM5?zxmzM z{!6uAV$_AWevwJ|YVt@>=nRF4G0b6ELqj9~1u!TX5O&ZL@N@>wz6q3zeQx4_TS_R1W0m*peF^%FJXjUsA@u0%yNE%4xOF86{l=Qw;8oYivZ(G;cCxh%(gf_gEDhBq(Q#OK`=rln@x z+LAz%laBa^2gIX zU2|S{=Y@=5-EK?fJb^=lFfNSsZ!X~+`K2+g@+Mbb{OCk;mwr-nj7I<-oC%=RrBDdc6CCSF||KVF&TKdFHG|XddV^iAcPNkWeN>CAGK`3JKLDyv@ z+Xf%i_o_>o0AV3bazqP7?3(~f+}64`wjWl(A-@TMqiWFFnV^QIdTbEt;%r{R(J;U=W^;b6YZtULjirSL4 zg1Fwnc(b9+OWh`K^x#X#;74Wt(4R~EfbEMa7f@<_cc1z3dgddB)rJ6s&FveOmhY!1 zm#u;0nKzcIMrmIr$emx~YD!LTNti?wGFaQ1bYwV&l%bZ?S!F#bHQDM%W2uwU2%6xU^phaAz6p21acNF2gFy;pyokb4JblXZ5LqdAXF=yq zF$7t|X_c=qE6wt<`t#qDyc>6Z*k+ZcuC~}AjMSJd{g=4NlFY$z(og-$MvWamIn@#8 zW<{HGbktb;CO&x>phg^1nOvGX7FC9wQNq0b0VWxJW;{wPu{MJ!nm}9m{srt{fz8lu z9}Z94RzeIdn<5ZBoaFV8oZ-gPoSby;oQYLc#}h+PsC0JRe%{7qTOcP9uqR4@7Zv9z z7ZD|9O^|O}(#IHuYWVWW9XUf&nfnoZ8DW7HHVbK?H3H^mENKN;-a@4$R))h;;BX+rj*#bfHDe6d zBm0oeyQtu@p#`&{$)S8OA%GWES?Iq0obGX)f@L^O4mLiRmQ=A*+fOASVO;`3(d{&V@F#UTNIn( zvuUo$3o&;oP0dL(yxu5mDJ*$vRgKUL5~@r#l^Nv0QIl+%z*;QCCt)?%@cDLxBnMnW z=0R)$1}yT0RcHvu5fd5+4sY!;elqS?gh9ObOLg~e2tq=_P~z12q%~VIl$m4DG&FlI z@70F&PdaLipF!|vn^uM*8&l(F z-BL;1z`ZuC8-h~J4EG7f#)8^|5Zc_Lg2Mw4L3&6 z;z+25m}Kl{>(41nQzQGhUZZJhYU-pR(Dj+}WR(_K6Lyg$L}XgirM%oM^Zc9}UQ_N_ zBhE7|%aO^n!k9hk=oc4QNY}S@^0nE~I2*r}Jp7PPr!>+wqby5KD32ETso82HGVx=t zi%q|6e7~e>(UfPCso1=`Pp+Fk?%$O$9i-Mh6z5Xxbzc$lx*c8aZyhl`A;>B%%ulIc z2@{Pdm9(yq^U{1_vW~;aOfI6Xsn9UNQ0mB1Ko&+(lRY@`bZf@VP+Al9l982>Y7c*) z=^!jFNgI>{bZDZQ6X+zv94-dkY-5U%$jB!m&x*HG+rIi;%zs;JyAjjO1QJ(Lp>q!_Gu9 z7(H>p=bb`Z6Z+Y!M1!kXX9paFm~SC6fn^EbBnyISLL~~s2!ev#g8y3|Y3Takmath? zEu>Dc#Y}m!DNds@oAeiwRYZYe$T326zvz&^*&?3-RTT>xA)k;x7cx;>lUQ03eL@_c zk@H1Gk&;Y9LyVRBoQhJCA_n(^0jc5i3DpEQiJ~UT55Wo?lT45v3&Ifn2u!mGyC7y+ zzz1cWPsv7bX-<zpO`9BI`A09({Kb0`!$|wlD?j&N**@tw>Mywmgsx9#k3MX#3PORCn55GXaPpsUSasGVSG zYRa2!HedJ|J}o}iz=DSk19t!qxxOtIsW@U;f-oQ-8&X*JaP0Z_u7%jQ;Tk{{pCM?mVn0AOgPLnS8sAI|ciI;ddK`_k3z-|>47 zeF-4HAP2=a^5YGk5`_giESJD5sp2VAvKcW^N@#1$Rp|`{%^OjrkDF%UD~&PYzEJJq z;sS3%Ly>jlN7g(9<-{3Mh@YUm|OWtEsU z0?~r zVG3Q5N8>YZ0&=q@7#rq`>)jqob}>wsCiMy#7?4sc$Au2$5(vCwg4%nu;f+H@Gf-$h zh?tpCfsydyy1GOlLtzzO2M7T+AJ>ip;4s#|GuCbo5II5BR7=dO1=#=AXAzz9Nlik1 z3kDV4c7fQEs;HWH?bNTpjUkDA?Q&8BPgC{SFrB+n*cdSB-QZCv7$ic|n(0v4-SEcW zPNL;}!JOd2^MC6~5V{ebN>n5kD$9EOR8omD^^5%5^T}{^UCrn{c!|#vSwSyqC8oJf zuLUbAOtWZ2Y&H)!+w6w3YYy8}s;U7|0bGB;3~_l?)vrJ9Q2k`U_9Osg6k%y%7kJi= zW7xI3U0!(K9kqZ+^fAgwd%pm5lF7 z{CfplX#ab{BlYT@ZqKbyfC3j+%oOs zAwr2b4lLzl1rpe8g;{klz-=#lmH zVqzaNLlVWXLUh_>ttCQFY@z~TLqtXL8AB4IHW>u&FqRvDW_AGSOIv1UW~ib{fq1y< zYo;tl}Euv!1at*O)8M!(KYn=+9+Q6^!?{Ma{dZf=gW zAL{ObOz{V!sRa&;>?eO$rQNVPu4G9Xx2CF`*)pyq1sW_@rwZxXU?iY2WjXEVF9L{n~X=4xp4B-qz_;aEJK`|gDO7%%z5*7`N6D3+-{PqV}1 zWLG4Gcv!w2D*Ld6=9jl;pl(=NURKdO_Qf23D+k%S6+%tH8PBb#tb_w}2ci8x+=_~d zz+?nSGw4=`cmeXqlTY@G_3;B@=A%@eETjim(>t{)bswl)Z&L#xqPY8B%K{AuPimqlPNke4+ z)(r2Ax~8F`SAEP)6yc3FugV)u>BlTY#2K!M?zTX`d!z)q+Wf8p;aE6CRaH%KT}eD{ z?pY1$XE5d*uYT#EEjKTI@_U`SgO`%7nGi83+h<0N!_G8Jo_!z@OX;SFgo+^JW=Q+P zz!*eBQvW>Y5>_w(0Ts*Z)18$zn)Kl(_9udapi(X28mL}yaFI6TbXbNe@W9+1DElvM zE`Vb-WX{n6IO9x)Z7CpFWo^X^=lTeZ163+a;G8r7{y;m4^5ma^^&`5p-%x!PRov7z ztv}TNw<5gXgv|9L^;|w^y9nyLkcnW0WRxmx?}(zi2J*8WA@c6Eb%%}W)DxR ztbNHB4X!g|FC?c#qr#~p2!s^b@F&8W;BHnh5TX`9lE-(Ddyyrzbz6Pt<PBTX_E*t6@+gA7=d39gDcy>R=<)n-P|DkTHdbR7KVbL$t6y(whW^iaG%wJlLUJ_CC_>?TkD56&6Nqx6aLWm1PXB&s6pwQ z+ok#DMYR$-)Omxq=umwMXa<5Z0%YYfytiq+_W$J#rM)&QZcn|)%Fd=|WGt$0%Mx|p**<#(NSoqz zG`$1OJU17I(iV~kZH`lulYz;sN?{~P3VoB@p}QAECxUF%e2(yeWQBALT@Z-cFyUVj zD-boH8r#=U#rflnUJ$L#52i|>j}CQzDJ?7v+TFDT>PMu|3JNN60;MtmrK^!L)gqu~ z|C~*+A*CvY_*D|P6rTWw@?W)WsyM!&(o!0h?mJfup{w<&hQq@{sE`Mg00brf0B$*i zj*)Q-m{*n5*C#=%0hDJnSn-4MZ@(}D%S8Y~{2b%6U-* z!07n}l>42Pl~q<=ZUQKx20)($AX(?G+j&0IAC;{@N-tUCv>e&riRk^&0BjSxQS&btraPCjvy$j?rw zs-izNSn#17_iZLvk`&iIabs?% zlFW@0l63h$LsSbcSl|}~5g}Jw@r*0A?aAiZr9*&g{mCKQo@W^N6InYrSbPb1qVRz) z5lAhlYHJS$Aw1P-w8jo6c}DD`zc?LuysI`hLW|< z_QnV6nSg57c)$}lPr&L1SL1PTc47dVk9XBG7`$ygef?L!Yf}|B6!;-G067t;@{L;1 z{L<2Q;4K7|-xvlWplaT8Amn%ujzfJ)OKpI*`kRH#dk=hhZJ<8H=iuPL#m!v@et4N&_(C^tEe)GV=+I2;llam7~sy6pS zPav%JZSM?PMc>`+30na>j1UtU{v1nS@B#H9fGTM$G6S>tA*gVABO|MPjgn!~Oi!5)i6 z2Jha}Xp`pfOp3+NiqYjYW%B5> z(--n2iyd&6g}kS$P_klBB#=UT!Jl#(g$lyM3jn`tvoSw&OC?8(41#&70r2CwIj!%> zvOpeWXbDrxG>bp1bnAw+)CNb2A`15CC`Y8gF4u8?+x3;fc**NjN@PlnS@Pt!C@Mqk zq>Ba^yy=53Bv6vOt(~1LHBP&R^Is8r-$AHw5Kv92m!AjTZGYAB+g}wP4O=!q)!;zg zrD9~HBrpFI=qeFfSXe+U`Cbe8gVP0Fdp9??iN(bsAlL+z)B3Y?D`N6JANZ@HOR8q@ zI1qwLc-zSLVb%Emr(1K7^%<|_pk6WESKrBral=gDU+0|2oJ^f~c-EZ+!1;wX!pO#F z3q0d*RZk)c6DBTC&TP=|#Be)0f?@eY(>#BG(m<=mK#nQ5xUeEDYzguEFk_^K$ozyR z!mPVaOBY@*S9w*n#r@K(y-qj2faS)u5K(q^odZ#28{srtq(-PYhbh=ed~xCc#HlF6 zX)uMyBdpY}rFkI_3WJ*GNl)R>6kn=PiLD)W#xsGUDq`g~R9|Ap?hS~Nomo}=TPMuk z#nj2NNki07*%OwWZs!fLFif(s40bb5z!AK(KVEhL_%J8188`B3UU&zEwK(2+KY%ODCv8*QNAF@ce=;>DVl^geH6|B`7irC5 zlE>-in&`te&s=FC2xzrr8pJ8A7St3ZHjR!pHZ>P!BOV=Pv!UgD|BmXqh(>ahjqLke zJseI7jcR4}yKvt7tckZLXQY+FI`WbhFP&IDqq7}50t>_uH;{x%Eeh=Tn;o7>VuQ#4 z-FIE(B;#iwo>JpPik4QdMDb7KNrzkm?c$Ch5~_Q=Mn z3kp#zd-jidb*Du&hoRe}nB;{s^`$n1S*1yIwZ>be7>GQ7ib~tU;+nOPee#d}Te&og zn%lArSfmfbVl}i<&GZn1!_NWt8=c8#&mk_`4X3N(xTRZobllGei8jZXsRA}rAIpzJU~4 zNUgeHHRuAhdoX=&;M{`%Eut1n>{?jLnp#GHpR)EFU%Y^d3WoYc`-24_H#Jvu_C8x9 z_y?~nD2;LTC!u32U#1By^KumGPn3j=0psqKPg1Jv51Jij1f`AOHrXf zr7V=un}eP?-yx7;z5)d>FCYc;etCpM@9RruAC@W0<}2; zW-D)A0seJ)W#uyS-qRBoSy1ryvBfZ>Mu|}9GRB#_HGDqkB6sMsN|7^`@KYgKM$356 zw6W@qvK50QL+X;j%^M2*mPu~(wM$Q@$@c&W7@y4je*Am$@?fNRs2zjX=MwSZ;m6s` z%naK_#~GbGjZUZSOJH;Pb;8}Ph%Hsbh42Z0z3u|+dGsrEbeX1!B(X)Yj2H0%&N(Wu z-xgR}!FTPmv0~0)0exqAZ~O7Ip{k<|Gf%ChH8gjAR@VNW6fAllR7eNv8D}6wtFEs< z3^Z0e4zJ%21KkyQU*Fg0=;%;rsgopbK@l{>Fj0CxX&}@e`q)*VX4T|Zpo0GpYYwsF z`&GUoGipgmTSZA!#mKPlpZod@S^xtdG(xrjAEEfI*2bnLcIWOV#D0CA1H^n;c#LV& zbIp-iH*%%9?u3lm%mr=rSvp?a1Urq*4yG$NT47u~Dvtd;$}f!*&IEay_EhkmvaU!8 zs$yDyZY7S)P!yV%WeJLlLj%_YDb$+1M2|Cg)DU?1#I<&^zn1dv`+(}1w4osh?+<6V znnTAk;%TndjWD7s;KJCMUbI|iy3zRB{UH}vs$D9A-YZ4TVWG{EbQ=%`P?C_ql?45* zLb{C7$cl;()rdVL9jy-u5uSpw`vUoh1l|SSMSEW695zWqd=?gXU=UpR#}}*hFAr!W zZDct)FYMI^r!K)J_F6RjOQ_+kqMYhI+%$;fz6*e||V053~_H4t*&8 zz(cXVO`S&5YrpX`R6Kk*%;jbkO}z0lnUB*1VWL>LNtBAbY!1;A9#72%I$+jL2)I5W zYNSSp$s1r@WmuxEVIsSui_d?v;_PFBQ&dz@S69S>r&ibP*nPJoa0VZxER;tR<6|)Y zv7{;0@1793H^7G_cI(Ei>bttSzA{a6&xA%yhU|JMUn^RxJ>fX!&?^=b+=8EaHU`;$ zAq7KdbqVFmLmB=yHa1W40f3bUOtJuSR;+C%Pm>HU`US{>Ndr5BG>gfF1>ho(BMI<{ zC`#~&hs^8s_bw5DV3;KUIAIjBd18y=_$$(>aN2uwD^5Q({QomNBHda8zKsdU+Xfd+ zwM90BVJ5}|h^03819jzC(TgAjl-h)t=-gmNmR6KyN#O?KNYWLA*GOn+Yfnz7DAVLn zrprR_tG?+!m-GrEn(c8K+uydb4-b&+HMHWqb1AfsaZJUo0aQ0zMeN_@Fl z^4p8U7GYWac%7!5|@3h=ZTAo`Zqyb>i zePxPz0o?L;^~LG$&cH3U*#Y1$*FL#p8c}Ua3|~ch&U`kTBMU%+WPiWPk;Y{7HD462 zj6peJy!h35g1AhY_Ee@^qN+)My+w#gUqFF{oB8Vz34~bp+3iyd+bZJWW-pgN_CDi9 zHO*;D-(5jyK-Apfb}J>R*G(r^i{OgYunNnt#DOQx$rRLOrG(s+Wkn%oq=k~TUHR!` zDJwz2_}i|wHh!p5Fqh&XXSIr$j~akx262-cYo3`sPihjg@dvPnW-0)7iZF-+%EQVk z!b~y*8V}QPDGLVUL9$_DZ>RY>l|4)J8oOOC`Llc1b&qg@Mea!s<9hLTj zGb}K~K5!X<0e5LhW5WTK&noyaAAe)xcRcWObEkg3R?@%) zgB7aou|BJkyow6zWXi&$X8w22K)SM%=d3;y&ToFi;#wxpQ3A)Ntsr@PZ)oofro=Y= z^#uT(QlnYBGN22ww4?`$<4krl#LG4R$KTg*3st41VZb0UuD-sW`Oo8NdN(}k&^Vs9 zK@Y&>jQE=c+T6W!2f-TKDG6O~Gyf63*)Q65Z8eP2{o9@LaRpNsWShGrZkoL_PZ6Xx zBl$`lO!o1!Oaq=5Tv24kR-5bVd)+05d+m>N4q2n-ma3_$2R~=<+0vgs&c6MX|JpeD7h3eqT-^n4%+z=Wvw6q<79zffM+GYR1hdQy~4#%I#Cz+u6y* z#W+H#4(>+>Bd;C2AT|k3cjEE>32uxRQ}MRTZLw4(8#S zd4q1Q|AQB3W;FELy=Sz9hCk%GJt!ut6Q(OuRTwdW=}hu`?ee4-hW1!Q9fdNl`47)` z#%EZFBmM`PbG0`C8Ku*!tAVL9K_s+jaC5$&5DhiiV#TJ44-x%8oKRy5-SFiYg_!p1 z*83nF^4j;E`TP*EIGM8eaS{Cn^eJnSOF9H2Ybx$;hiF~S6Q!}Gutf<9%NV-$TqgG6 zGTyDAbDzG87XQ2ZB0*>W4c6;Jy}1V0SzDe)$HLCn z{f5Hb(X)(NSO}!3>j+N(LIM!laFNIfw4w=J&KTtTgb${sG>j1%=+lkgEYBpO;%o>q z!emF9>lB{iA%N@kpy_^FoC!hud93~NuJFT_Fx2Sr8XOPCBA}woIkc<{Kv4@| zY)cCO(iTaM#aVFa1_&0we88Ei{N11v37Pws#XA`x^;0Sj_9o4it+;%OTovnUA= z8WIu`fbs=`0}5_g!HDRv>)Xl7yCBd*8<_(G14l*;j9};vv{vBPfj~G@Q$pv(oPJ|t zqcboBfSp)f1&-+k!0O_M|Kt4!pyUqKDf1Lut-fT^`(*s2NGg`0-xVZ+W1zr!G$rt_ zGr3AN1fuyNVMXc2XO?D@`p1Ywjdaa?3DU|mW-6JFY#KTDgtuqAn|K}fOW7m7kIWdv zGa@uZ`I+oY+=x+8y83~T@C6_NIFpi|I94Lt)MTo|jyAi#C)^4*%|_3O2Krz^72h}4 zZ$oTDYBF@fP%1=O()Tj0@=SgthEGo}K6&D1-e6tPBaZn)xx)Q*5fY}c$c`}@=fJvO zY?ZYQ6`H}HWhddKC4npBehw)TPprVgI^!N9vPw69_Q}JnW1#W$UI91?KLYn)lWz$W z9bli9L?!FfhQ)2=+bm(!UVmb&%T4`tzx#gO zc8!=pnH$J;m|)ZvlRX&u4vQ;UJdQ7lbDTd~qatTQgYVVT$IIb7=Y^EB7hP}QoN8|H zE~0w$8}^*95S}}qo0#c3way6OUpMot8m@hv*tm7M9QTvZ+#>&hwUoxX@lp7i9!Zg4 zxa3V+$TUq}ziLs~@td_Pe&voke5)Lu#PK)hczR0$&f+BM!zwvUTcr?#(I-f8CPzP0 zV~BlW-qjP+#vI=zY|+GQZBL4qzu=F88;mDETAbpQ2On}P zwcg47?&?+%b@3Q)n46iAP*g+*JD{+$6I_rixfJ10&4!@eCUCLI0O4$BXJ=-9p3`Zy z18gz@5+K|P714qQFL1kg2LB{?&t&<}yV_RJwgOGzLXa<)A&VDY&{_(#1<}ZaK7d}Z zJnvtiCPJAUdK1EZGGw1S!SjOmfNuBxn%=VOm`kf8XnI^I9vIx)jJEQX^=V|sF=W%F z6~EhOd*Hw2PHMud`ouL5OAy&fFDY&&jL)L?4b!nL=biG7`qrS!($1T~@s?@-V{0YB zpUz$9!n_=37rX!(!^_f&eclk!Vkhw~U3&qt7`Y?a?Qebm>&_1 z@LRFEveo1k=38J2@@jA9sqC)0f%}kosn3C)-`SN}0%UvonQ~$CDS@Bg_|}N87rsTQ zZpN?oy!-$}2W=}1X!m<|b~c8PyJDsgKYp+k=g77-6 z@HH5?H(lld{V0^J!T7b`+`v!4_-hEtYwz(wP>6s434Eod0sIw1z#eoDHn~Ul-#PY> zgO;&!GUJEJYeh2%AJLia+*+S@l6Ydh-u z-*IGagFe*iZtFM@l;^pGeCLLVjg8eGsY47+`&u&(AXs3Upt~frpC2s5QE)j2!eP^j z88F4xKJf4`&E>Me0W$|n8)tvxy~G*~xML+K@QBkS7gSfL0vQ&L?BRB+DU2F?X>NvZ z#jr|zHXO}bN>v>n#^U-lE-SZ{Yr6)hb0%R^zN~_ z8>D|!3bx_!-+50AZsY+sdKkolSsDr^{{7;HH>A~m_(Z`Wq-rmCKT(DU?$GEBB4UuO zetDJmDo)c*AcN0`pal%M>^;n<68lbAGiXG6`Fp`ihlhz4l@SRisv;48n;aw_FXe`) zr>%@hwDuazA?Bk>^K`|yrfR3^ukVfG&9{NRrqdqujA&o6oyXYhjE{GsF)8X zH0tC0@jH62%6H^HRsQty=w}epT#KiQdzA)&U1Nef|3AM4zt>bKTs?X~d`ku9swq-m z!6OHUgowrjWR>D!ixOe!U%OKs&6HI$=kq=3s+mVnO+@V5iC&`PDMN-uw=P(ewPDcB(I)-+~owaX2ylnKZg76i!xQhoaCSs3r&M;gtwZptum9ZIL}h#KmE_w*L6GJ(p&o3;ogb zI(IJz4Goq)A;x=NU+7SkmGdWe$4HrlRQ3CV`WF{ojYrkX$w%);nyVCH#E?UbK7T}}%=sEfd zBGN}OYsKR-?C+No*i<=m{i-xmbj`f!UukPIHC;IUPWujR8^fx=kMwG+n&h=-#D zbyoQA)*M#fJ2+zRAF6^4o03beFDP>+W}9+dFQw*$AJIs&EQ@+>n(VM-8kL63VUzg! z+zsG^sAXkRDbt6Ns8M3sz+`12#NqEpwa}ewwy)p$^JWA=S?eoH!$mS-)2Xz zl+&lb=7*YWIli;zcY%a)#N^UrB`oQ|W31?vP(Da9K9hEE?(lo(M}yMddP^tzvFv7w zYlEzMZ(A(U=f~A{mm)+&EH%nR&s<7boQhP2{y#imm&wt8Wh17aeN#IREKj)t!}my6M@8LMy?IS0{QERwBa0=)Jk}>ZLvi>D9B=-!!d0fyM1a zw%i=m>?K;VZ`FCF73>Op$B5(j_nk{U8r6R>aTwm3%N^nB>C0|LSauGHcl#ym4ClVg z8&57KtR9uI0OlJqO_pc7if-=i1x++jl!bJKlh(lVgM9#NkX<%uoex7zZn@s_zpb)t zlHBCN^P#G>W>~e>3*CkI*&w?K!IV8uxX}fn4XzmKSD6quHa&`vXpSVVxqNipokH=^ zJks|;&v|R54^TTh@!D>U)(h2@3*L^oaIH`>0}{b23<+H$k8{{l90sXL{kVuG3ihy3 zqIN#>9u(?eidb*qY%ONmqeIL7H@W21DY8E;*fwN_Uj#tjTUWcxsNj?~4G?f9g<$x{ z6-EHC7_gWe{_k-Gj0b^HBn7-2z2Nv(Rm0dWYxHwWCsE|clrXNzbvgcz3N%q>-*-@@ zkYfoy07e`@gun z6s9;gu;^UB+r|RnJ5$Kje;|gAR>Go41z-~l7HBzbeol%TN-pF6X`PcqjZM!&K1oQ) zKI1zzL-laJuyyy#N_a0p9MiHlnbC6-+;0!o9!WcGUavje%nIInKnmXO8YGpCJ^Jn8 zlXgLjf-!-RT`*cZ;BM&SZ@t=N&+_F=aIRW+_>0I|8t1pfnv~uUEG{CHK~fLmL1NB$h4p8j zqt*nE8MSKGB#H$U8iKgiWspO^etvaolWAFXVi@X3^Wh?H+WNr01n0#EgT(gVo$-N+ zhVb7-vvH|LzIhOI`SE01{Q0#QqN;$~Pqo6o#b*iTVLNVrc$|3nUn+5Aj(j_ZZw~4H zFAXpvZ3@~Unb+foZG_0q1yn~xqS5kzGmX1Rz{0`N0b%Ufr$vF~YBg^`~(_&xHd=jE4nLdp&;S1YGz&#%9^Hn&r2z=GSpoL{ce2vBpDddHFQPHo!PXCD z{aZ4SPT~(#-c7$bl(1gD%d7&&SUari9j- zn1+|u{`(GKfHKOOCtE_bvDY_-{jXnlhzWAQo)=&}?s?rZY7Ey`!R0E>K_Bf92Dq3t z={bCqT^a+dGh9h9SHO}kPT!PH)d+sy==;A7c)>7l&r_~d`F_WsS5_ZN3JL0TRRVwC z?iQp!s2MY`k{XBH;|aIlK1pNtBD6t^qe@hxED2UarGF{+ikzeon+`#)&y$8ih5m(& z_2@O9)Rt{mv3iZY<1xRtHpCj~BM1T;HKWXiJq5VK6{17jI zBIq$JVh{ZN%vJtqMaHtr&?msAVA0V#r+ifvhii=`^-fpYd`}wZHi4sNF=0K$Mp30H zL+JihiX?TM()EeonDjM^nj9t9=O8*p*-%PR<3<=8tfc^$Mi?`d@&R7Nm*iSm)Yas~ zPeASh!`5)h!tZGrjrKQt$@s0d1r}LY!PC|<-7=^W@%T7qe*!z;h=@m*DERjGHD1fz zx{{#u#trFLf)p&iI5E_~txTi0O|@f+0Z=0)xRGY}n`Du3n&q!cNf< zze)5K!KIoauuwBkp+ujE$xjsJZpir3JN%h1H#{xhK!uN-8c{ThI)hL0MR0`K1ifSM zpC#u1%>q=oaQ8*_T;Mg)4O|dQpsF$@)+0!!-9p|BQiKZ*E-MKT4!S(tYlNeN3bDjVN z7*YI#9T`E{ihLWjic(Pm-V>70NO`}I`VumyAW`o;Z=W`2rjzU(w^lf@gXGG=De@1L)}(#}pO91>882I2-x zASbTdJc;}|LxHXy!s^n%vh+6cwPZeg&6b)Aan=RD?6iora{}Fr%3(Ga?$ej`ty)Pl zlJugjS(L@1*GZ{%-jRjYmDe87MUAZ1s*D}xj_%*|>#hM$SeXentZ|uV#1|0!*JvZn zsMkMZsNK2$%2Goeba5$`C=4H{LW-skJLEP=@-q;!-ou+(TBc&x31T}X(> zDc1C0lb;-6!Luw$Y`YQ`poLjy52-OjpV02J-j=7Khtp^;)H=eVBu4S54KhO4+P$b7h|5lL@TE|QC# zCPqasFb=yw9Lp2lPh|UM#xS1lI~Gs&jIFy`^+^$~whg%`y|~bG6J#5nn}fqOg{<7j zId20~Tla{F2D9rn{4(Vl;3SO-TgNbvu?C_Az&Q9QuQ}20V3N^6@z;OM0P=mZv!3%+8hGTbq>Jd zdw@9&>T!uoaRuBNJE!kA`E~&|w+AJFfZ6CBK<)XlSBJj#agr2R7aKY*rwg4X#(#3% zkz@J14!a6S5Swkkl`hv-ZUwaT>~3yu27K;75rv9&uivqoWk;7PC-`T<%m83p$P|C6 zNS};*l*T9L=9*^{0$wMU(qH~~i)lAsBPlmzXLLpgW!AiZFEBvh{rz@`H`%s~sF<*#Fv594D!J6PtREc-Ek$oRb8b~BI*$Si zHnSKRtsHqWSL%vh_6^BSij0~fA%F1{EgtD;pUJ1favlb*XW~>fiC9TAgcQvqkTk*+ zvI2`x`*N9rqFDR#h-Y->#03V5I<-j>!363bRgX%#+q0L9g;hCeR9FTGmJz1161r|z zAdbAMaG!V5^xt{@0FzR!V2=0iK#}q$VGbV{aXP7s_l*Iz(MSQHXY|qMvV9Hs@cCzN z0dI%?k6?BzXP~PV-Gg^I6R;@a4c?A&L#K`ZpXRQ@E2=HrBOn3-Qc8CSD&38ABcZf( zH%OOABMs7>A`IQ#A>G}jAl*`LAMbnr!<)6Z%R6h%#6IVI`-@+|F}>z-&GP`WYdGlM zsRxtZtE*li!I&efk%PsR1VfibA!ipCM_}T60-)L|r8Bj2Ef!O+T8;vk>>y{~yYrce zi3x-@U>(;BW>z%=_&u5gfK^Xs1YBU?z~JQw_-sbY(Xv%|0lcAH5^F%c$3}N?BVd=x`^HHcjE|-9V~z$f#NGDmUuPrTy(^>hWC7ajC}wTZ97N65V&Bq%shn ztl>pRh+@A)MmH0+z}ALIt;fx8d%L?o>Bp_WU69#4c_hIeVyUD0bBW#J&j0+Cvh2KL z8e-lH*86l9zw+X{t*t7BTVR2*WZFM(=H=xDF}na#d7K?UWpCyMTen*(z@n5iUucqg zof$hRxK3#TJI{XuP!O4}CJO|+ftY#Aied1EYr@SZu%KY(3be?b8&=e{de^y0RVtvE z4M2d=%H!kXB0fGsz|{05)J>nWaxU`XAtECpKSRWijv)-BEqDbi70w1AWgqOtz`!`@ma5@w zxLJZGnUK>hI@coexX2ykEOOa$*-UkVR@+4aC}Pm~^5#uR`KyEh=)&D95W1r`PmXZm z##sh1gJA$l9{F96F$^diO(5Z+m97}@f^2JFeM5zKvw*pI{9(yP(#5X{@HOC|piu|t zFL2PhSF0J!rURmYe%RXgoQQRFTUP`SS@1x7hujYNrQhEWG#0?liO7s+hT&X#E z*2o%-f2R9es3)T&ZC?}sQ|0AqAV{Ld*6t? zMl8UF`z$eXi40iJYC~@B5dIDh%mccCLu%uYH%@t5-%(vvicN!g>+syUMP~Ij@Cw}l z)`%p)T`9=Ll7C^j;h+RfNY2$foAXaFRmAF#q7p)SW?&5cMaS7|aRR@_6rd;J27#F> z;9@}UI^e$#hSo;M>)lkn&YxaLWD0+I`5$OMs};v!A$w%NDY*XjWT5xcAISDHA!kl750~ukXwVg8W!@G9{9vqU z6IaLrn0wYCPhUWnB|K#QIQC=e6`17-fQ@DADe(UlY+XJGV40%W0<6`LWP|@!Sg($6dz|1o$0MJ#%xQ(^dQCjm57-) z(Z-?Rs8jI0sOe1N*rUeaIU5>GKc}6SDQ&-enUxCn8}&AfI>ix7BsOr(b>%=UFFlZXAnhAPr3`XRtIpN}eH>&Wg&58p+fS*$B=GDV@Mh zXa4m)L?M$Pe^OL_`KcYTIBeNSr8>iX9S2wTyBro4BDJ&_V@8(p@0SXcF(zM}`Tr&- zAGG6c)vlUo2InA+v*?Mevx^5KGrdEsf1{L0DK*AR8@9(SWB3U%*QnyL_DfmW@>tIn zoDthz$FFq?SmH#yO61C6VIk(^Axf;`Kk$|LTIXAsnVH+bKpesvLk%8qb$fvF?=ciY zT!St`Pl5jvfc9d5P(H8Y+!~{N0>!GnP=SgsKeJjP)clQ>#d>|eM$PFOD`StrZfw>M5KK^RO0HYybK`vP9 z5S1V$4Qx5T4lD<}AKSdD zX)0s%5=58h%=OM67Z(+uM^5RyZ}@?|Upv;7Q=$^~I*QQ@En+8=IDmy-Dm)>2)l9ii zI*(#9SqkANRUd8=t1&G}Y`)T)s%R94x(HcZTIzD)0>KC?8k|q-^(1sjo%Wu@YFQU| zm|qdbQ+XV(002f#SCMl8N1c2w5=O06|ly}BQIx|~<8wa8JHh?5mrK86FBYGN0jR?Gy z3m}f}y$MP=J(qMKOKrF-VCM;sMq>fkQS`v$cIDt6gnG{nq7}GRkiV?FX0aLpW|@c( zh_`mAhNQZT0VMoIhM<7@Xl*qxj~_RHaE5_a=Dx&>+6~{^dg0pCCix4unWiy1;wuwE zTx}8^XRy`Nh>X0vcho9YSxMB?xl&JPt7}h}z^_n+?dnl# z=Z%@8s}b;T>B$Kb&zOJM%k3ErLw{Q$R$d(-(X0Sd&i@!0oc(s!sXzC_+blTWXGy|Q zDAY=mLGc>=b6;XKJej_})~>QyUDe;5{oxK=!vFp*a0GvmF8HN{w%(^H*PveN2j-s* zLs#EGrPq45&}t97P4^SjYq;K?0=p{|;@&j~67-Kps@3rT%+6QWzcP`|xJ}m-sK0Ue zotJQO;L@4`q5J@w$*4&*dGzCD!;F1DO+uLLZ|`1vXN~exQL?|70R2cnU+M#)zbvMH zMDOz@zbtu2ceM7*$F`!|P&7dU3y^#Np1Q3X8Dw?a}k2j=)mRTtxGx&9qj2 z*)cTnea3!~m?4jIcZ$`%Qd-R=DLoyvo?KST<4NpGCuJ*h(Ry)s6y-WIn4Q??52%L3 z#3P-*%4sYie%>K)Pp;AMIiFHH1&d7Z8MN3SRWEOlq9_%rasyy<9UzE7_%^buwkHzl zi7k^O-WP08jpG0yUyi`s`_WO#%55NcwldYehXAt2Ti#9tj)yTLJM|CuH;>c-Px0aC z*+bdXJ>OT;GagXEq({Fx#?0e($PW7tVS~j11Pat5@0R>zD zl&@a$-(NcP=7Owu`?^j5D=&5bn;z(;#6!)$+QzSl(yLGK(Tmhz*&j)%kJyZ!!m1RL zBf1EZ_vCoG!coDTs2+yCC6gON_pLJ*1=bC(-z;6IP8r3>%Sp_>hl$j9V<#4FGA^X5 zKYk8}9zqfNoYubYN}OK^A%a}(4Q3qeMA&mB?%*RFe+9d=5Ab+MNDYM_Zs=!Tv&Rx{ z?V890ywF@I7*|e|pom?U3OW4yYnCPqP2>ju?!^6Py6bufloA!ByIZ6b97DPNHP|Gf z-T+{b@gKDzKrp`BqadM8NZTjh zqN1F>yeNKSV=-GFwP~15$^100z=6OYvz-AwE~BfXZ#K z))CNj)bSJ$rUV)kpM;8H@c5GfRE_qhF>x~(#5Dn~J&UC*e~KG60HL)L{8dghti{*O zRhmW)nsR&ueG}*U5kRTE0y}&c(3~2Epk6?~p@EDtCGjI*oLBr;uzy*4HPXs=dAT*K zp|(nL{Zp-_12P&0+ox}un*X923z}A)9R(|>{W0j?vMEn?dfWBuh)t}G7%SL~9PAbBr$o4~}5FJyc z?GzsVTlc_=zReS4Pi-c@SbIBxXIoXPl!=_xY3$)+_F}{{^qXFqGS+A3Hb#1xUnRUg zTfh`xAF_%}5mabxvvb&ElO`g&Mr5*+6&X_~emq^@+t$<}}y=sokM97sJ{zZWa5FmsPe#W+iXaH0xXz6MwKpK6Nx(VZbB?Xn>0X(d>IUj?LtqJ^ z-K}DZOaw5SpEw^1l1PDWP8ZaciBoQTkEu_YNcUL68+@_DY46UBIbcqR`KO9EYh zADdi_+|C{p`4(!Jyde5q&YjEUeZ)7QU~yXG7F@*!R6RVwp*tr7VApgl7g%#!PV6lP zj2S%B3@^@S0%uV8*9SF#)}0FpZQdrh^Ec#e-6sYb(m_8|%rv%|<%n3k=agdV7juWa z3Vfk`j6bvaJA2FALRq$=<8bOdqwjG8XV!mAcF+9!{*qcwm%a?g_N0D=filqCSEZmh z!;6IE-hUNi@`{cNtvf=)NGsHc&CQcbv6?tG7bD`V4SiH3`xY(Y@Qd6rzj!6qIP%`4 z<@*@w9;K*(+O;Q-?D<0^U~9FO7 zE@1#LGOaiS4S}+Y8I0$5Zmh&~1~4twcH8>4u+Lhjp`OP0IJv zVtMw?rNGNi3%<0-Uj$^P;bii#SAY%u#m{P8#ys4DR0mW@5($#$0VNleP|(+I$|oeB zFeS;n&gz6_%fL*D3~JQUj!jx}WTO+I?7f%E3B{$i`4A;T_RjU~BP!3Z4|HqML!X#O zXN>lLhJ!6J#v*NASZI&an)(MCc}x_$`DkzvvRaIFMueO!?h>|&DVc~7qJ%5ElIuP^ zNq3i0@E#wc#xt%x?1J}y-MPk>rbKmhg_Po=EaX?O@nI;QkyfiJbht;i(ngj0_+v87 zV*y8oKa}u%t_Bc_=>$68s%*37-7%lcDd>$fPE1*Fe1>V}N)R2OR_V3F3trZbSXWys z_Goy46l@g~k(<`G9t(`I9D2D^<{%UP*HqbX&6i8+09Lbg$2~;ALQfHtwOZkKX6%G; zTIfg5Ix#5_ljKa~j-MsSk?o09#v7BU^N%cSOjkF%Ej8x>xF*<752{bWjHVfT4pgSZ zGX)=QDRF#*sTSGW)ll-<^4@6wD5MDEn3CXU$EsGQ>&=Yuce4B_X2pDVc{bkcO`=pE z7?};LMp*n%k!Swh6XSQi)$*t~!x($DSP{Sdt7HBQVHE%3b&uo=5u{ko-%Dlj?JbPS z)o(kvdt7K*4#&gTha?CnaEC1X+F8%gRgrH2?@Y8e*BO;T9Fygn1Cu?klx}s#NocP| z_1fckt$YXK!}$%5Dj;3}q+j@0y?66~UHA;^VB2Gu8P_Xb`0AaCPgUuem`_y_Y9jEs{ny{!f`?9EoCs3)Bx#ra;D# z?@9PYO^LFHuShkHNne>8l8;48hvth=f_YVvHEwpa{&NZ~?#4bhn_=Z=*xUrNQDDu5 zIeVU{E!!8XHeolCk=84`ZSV@3r@pgRrJH$;HhD_SenURLph*{J;)gOFmBK9j z3?XHvla$u7_3up3KK~`21Ye}emcz@~hkN_!> zfg}v=v-sB+$DnGN0JUN3?LaG>XloP1HAx<#g;>xwOKbxbv>=RJdwRFZo1~BI?DKn0 z`&XNdQ8qL*NC<)qMTl%CxaNJK>Q&cE!FHe9UY{@*x@km15UNK-qF!&CTV{x@G!T|h z)yB=)W-jqlQoW_erjiOL4>3^9KBhtzi-?e>LCwRM*LsO1l_Bg_R}zUC_0&Rjg0^Ue zks@S9?^FEL>kPeDO_E67)YzFIak&w0Akvo zcmrh@elV|r(%KQvZ8o`d{v_Sobvy`84EZ!epc%tKo9ei4GBkpJ$085xJ^3nL9z&TB zAODD2%gOVW>ml0{Fqt?8;l~b$6*!KG<5^G8d{SI*1xWaR#N1A@`+sb`a5ifRgIs`)Q#nw+g2cL_ooqoZNkB|&wA|#@_&m~B14kDVG1r`TT);yYXcl=G z7bkPr-yKK#7`1(G& zBz9UnIysWHc5|umB=xps>EUm9vSLhBKqo9QS@=RkuAV zpxHa}6HQ!nrdHThalp3FVH&O6cJo&-XR5|FG~*3zz&yJ+$LyB(XN9y2W)}S3h5EL$ z&T0FKWPy;QkWH6mYZv8EuR!>e)CQ9>;F#;RZE71< zy;c#(GHYuSZVno4i_W22rXHlb*Xww#+{*i70L?L9Yf(KfC_BrV6t;iw3daosC)CT~ z20b09xPf$8Y~2R5oRhz!zy2n}fzAmuwy^JbFC4y+2n1DP+?y3RQ}RBRBHZK?0wIw8cjAX zpJ+t7Cn=S#8A~v*SuDvW41FKT+5hpm?IRPjo)#!-G7%Y+b1V?9cqLv3H4I|Ykb0f- zwiLcYgU7}28;WbEqc-O>gBTllGF^M2bVuihn> zo@{$cP1HCYjlwFXBvY^4gD+j4_nhi6%=)pm+Nf3TC#O>5YlrTpoCwiODZ?P;uU?uK z8u8~cAo#zN**|BDzV=+M`A$MU4byspCa=h5<$}%e+1JIR;IheMZM+ z$=R?GoFKrl1dZnqKoNt=2hdX0(a`}jA7f(5rIxi9)nF9?wHe$x(1dS;WV$F66n#-}(rEI&mhv4!mV5Wj$AeM?bD(z;Bp z2PaO`i=QoIygdz(_G^d(J`;`1E4d7N{H^f4v1Tlt6i!T|=Qf4HoydJsKbxOV+h_*R z(pag6bkdfLP8Kzboj>9?$W`J-f`5X_lR!O&h7sR?#aK@+X{z6_?)OK^aZA4GU5cry*=NkV8tf5D*H1!nI( ze5ojhpq^TPt$Y2mkGo-?K4G9(z5ELhXZ(6P%ohpflP7>#S_aA`lyAihfJp*ePyx8> z{`R`Agm0Omc~`F3c~UL-z~P$=?wFJ^5)s8YH%%TSm3<9RFo zq4c2p8)?g4)KlX5m$hSYEZM)5$Iv-1ZS$31$BLo*vs^_`Z+K8E;f!)CuhnDB$$c(D z1PICGcYRw@9Z_XUR0#vjro$A)ny2t31#~s>X1~qI4i_Ly?*3yL`p|C5ZUcKcnhSvu zBA#Vhi)mRBkc)Ue+^pUatqX>f}*eH(R ziMK}4illU-;JkZ8za}mpoU0;v*wM%xTIIp?%s3lDEKwfUrnR68h-E)@v3L~QKl;6w zTUtg|Vy*TCiYEJ=s(OP12a(5sn11NaPCIoj02EV91$I&6uVLi_NN6r?c8d+w9_OVW z7PpKNY&uEM8i}Dhc(@-VE7SPjFJeb(*Ntn_hz21v`W9jOGkHsST=6b@xfp6QnB=x2 zt_XQvmp!re43PRp;Zo>HcFm1z+S55S7*6G(>hBR_9{ch3;FS`BM82Rqm=MANsjjxs zMHo)Moo}=btg;8{n?*^mnByDfc0H>Q)0di*8&e2N`Np12du}4PDvn#h!&?6$*&J0N z?5CKSQr>d$Mgtf<(8w^jnGD9^J_Y7-=|1@)R-S}Ygs=KzX$cJtw6RZ0vJGYUwsHsK zl7h-u9QtaW?)p(kP~#I|U6IP5QWLH?jY^AP7yQBQ!9n;n;#h#Zrd&^@G0IYxnh zCMl&U%W#!0S*TWn8a-R|3F|pKCdgOm#!M(Pe z>g{xogSC0fQj)`WH4fKX36ZLPP0&z@kC;|5z3F{<{QmU@*#k1#&L(IeyzO#L zFqkcKa=Qn^MvA;DnCVS46x>3Ti6x`@x1?F(9NeZa(cjTkjV@J2I|vvIpV3!UJC80c ziNZ8GFWEkKox&43b#9liGA18rl1aJ@o4%isK*|XwU^|JE5qvAX%1zH(OywVBh^<*6 zC{5Ghf*VkSJw(@)z~LWll&kp00CkSCL>aRn7ylC)vhQpD@yS(`Aa{YTb7KE^WP;IP zLZcHJatf6`?CCw%5^7{z>AJo8CJ2Byz*{E22~ULsBiw|x#cygK>nHs8Z&n@z;cR_w z79RcD+d~M<7n#-lxpmUFGq!bodVTBtwH-{J6BFsEL(ofhK4a(F2gi(BP5<8CGd?L6 zHM6v(kv2r_eiNQdflTa=Gdi!F`_cA`on2Ef=oW@$nyFt5x-W)5|0y4N-HT^efwUBc z;{Vl85uXcLK3p>oPw^G8q{>%HIqjD?h^w!ZvyQ{ylr=R`H!C!9qv+^EL{(I~>~Us%z03u0i}ZUTq2E>f^PG)ONn2#T9#;?n<7Ga zoSMWUd|=1k;qk3!dVD;;IiWsvA3Kftq&c!Yi*3<01cROSwE~3mw&|rynY?kEp{yDq ztuM}-0Ac_M#wE*$zaLMPVZc;36h&I*$Phg4oj_c zpNGo4v>tLL40$RuLQ$%z$?QZaqHNWi>PLvxGU0#q!oN>E|(Zsv#bm}tg!yPLz3AUHWLC$U`~f-rb0J! zIU?k-gO0_WQ$R(xlv>%;()n(B`(NP zio@H5Stpmq#*nDm6EN)IeK*!`9x36+o+EZ^r^`IR>E~p~n?$wCJoZCe%2l6y!);C* z%f}k$;r>f!Le@>?8`|?lqo`}gf(;|yU-P4qE5bt7)^4xDU&KtdqiY_;J&{Ij@D+~f zN_ME0;Y^`Xv*R}^BGeMgT67H(>GzdVPK-#1815OXbuDNIq`GD@=0kF5V zpj31X(w7&$*{$s=8E$OeH<$eoEY)x%j&MzSh%{Ct-`a+c^u8Y)+`_{G0_`Xq@%V0E;U_dDm! z@A)#UZ{HtUoB1N6Z;KE4@4eGkl+<)51OyUx%6P(#R}*Jntj&rcRf?4Py5bRY`g9S? ze8Jty;KmM(^8IW@AaCiA^B$&pO^2N9_kSWOt12<=bsJN1w@4Efmv1ay{k zW)5A`?{XU4Ei8T<8vZa9WGYmB-&*8-ZrPYGc{eRI<&>tA9Ryo0}ud=`@_&PVwjLm=9iCQz9IC zf%r(D!lXsxr8ExOJGhgo02U;}H=1Mf-86B8A5)=Bv zgLh%0-JIMER@V~`-DaEQ-$SOANfcy0M z5rsanvZC^^+z3koyL5kf7L8?9u$3^Tdg?%MjQPd>Lg%k5M$dGI8cvsTrrO{>;ole* z1&SG9U?yPsm%`G_ESNij$7vTgHZ~UgjLVO{z&4&Sv#bV#NuVl-n{m}av0R-Rki;r0 zn|8N?=wBG3`fhFZF9+RH5olZ`SFmuGl-mnZ0_fQMwyhD-J zPD+~N6&zv7k3cb0NOccw4pRAI5K=C1V^>clZ-Q*)M-FeeH@WMWng$zp7;+97%SS8^ zBG3Dvm{iIo?Pz8a!QXGE?qJFMw#Tzl0T*;IxtgQUBRSmqT#^c46SboY67QON{@u+?PU{RTIXB+hq7gfq;Y&>v6b=`8E1zFvQ^pk9{4d3xER!A z@T(xZ(|2%)0Z`X8P}8Lkdf`M zWn7~HoN@oD@5Q@TvgoWo0DwE?XbG?!gQ;9b7SYF{l;*@(PKY8M(S9LQv=(SV~gT z8c4suS!82Rk;fqA?*n6h6V!l?iajyTY_>$Hcw^O~Df#OMYj6k$&{ z(U0}<$KG7n0bx0#lJ`5^g(`!bCOpo6@VgzN{UkAtElb@6bz+=&@U`3EN^3|AwBW!g_V0wFt|O1&gD-JMc4;J0|NsU zk#8)4At5M$-kXz?gKFU=r>N)%(9n?7C9{CQ(B0+Ah%dsE;im(4f@~iuGlKgvRn)bD z3}2@B>&qM&_<;llGazoAa+)xkoP5ObXLq6jZnP;%o`G+lFriV^31QGh7}h-e@`%14 z?NF}5xJ8U(4x; zj}B(3bCr&shXHu@(y=0XWv&VtiFvAYIO30+*j(|};YG`pskx#y>0OZ#6!j2L?d6hP z35Vj&opZpT6Vf)@0CNqdhpWhkK2QpJkF)0~7rwFCNTrgF>DG-M*g9D+t4`bg30Z9n*4 zO{e>r&sFF1nGh?n0u-a>kGd1jBwmBwS}MO=%-Y&oK(yQQ*#@WNe1x#b$Wws$jQjoj z_o;|l>qywtpO=)Zzi_9gDY(RoLzofSV?WDe$*JRKYct|VJ~FQiIp#4x=&Srp_h^II zNk}$py?hx5Nqjw1IA-LtBC@DrQFL_8Zk+X3c12{=&PhV_bk8&CK$ravEzx+>**1su zE}#u5g^Prbmc^n+VxAsVqlrkHiHm18xtp4nZu03<7&%&*{%ATM1G63lb2@n$E~Q7i(Z`F5gkz?M6DDGCxsQ#F z8T-wY-u^5-I-5{Dh2V%#-<5wvdg9ZRmv{uJz|V}kxs2mQ#}WIZRlq?)0?}^n^wB^3 zz_v790`H7Lx$DQuA%!jL>M#~u)PU2D9LES~X%_(|#q;>9?k3U76%w?!G0k2=&44xo zn#0DGJK(7Yjiw&@| zEy?`r$r&Oe!jv8C2^;v30kikIs}J6v$UOca1;CqAS{)8Dja;M!YLJCXZ@$vC{ z#rI`%AbE7_m;LClY}z3Mqi6u3a84SWyetEOc;XD>t19UjuB6hDXfZ5%Gx}aEdt7XM zMPhZzjWQ*PWG>f z?P)={cDSn!yp}c)IodQ$=^M{? z-v*2!e0^Y05MILF(8?{kii%2DL`1q8Oxt|vgYvsZ|7%BI>yf_gyHkQd3XOP%ix8sC zOr(7>k^F)JCK+`;ufOb57EbnhKbA-Qp&PFv)=c@2Q{8SG5%UZ6??~NB!oahw!@06^ z%pqiyH^#(|8|^3;HxRx8Pf=M4X0zx9FXN2O_Dnt;4uf}Wp!N8O-$ z{qR~sGcI3MhM~~IW7FZmGTW6$KiC{6_ZYItyH*z-vmTaBV?7T1z$+RvWGH}-6Jr{| z?}BegkNXrci-wE9{6p_Gu_5|&@73gIbiCyVa2DBzUS#5XpxBY*h5No$U6}Tg+mMr4Md*FVof38*$wt zFEKI-sM$tNt_p0ICp#gv=AG4cKfnj3k_ce$d2@lV%qSgmw8iA}FN5^Dxj0|SUjZBb z1x|F@nnNnC7EWWasD%i&tvQeAF8Z*49eMUU(tK8axh!ppU{rj|1s@g!w{dFg&D+%* z#iJ{n72_GP!E`Sw)mMgMYls>jsrwyS6ISJg@t-NZitopc9D$Eb~^h zdP7Ub|F2QAnA80}XKL~g=l*vMK*i7~E=F%qVC&o8Ox-Bby?a#(=zTM|b<>T|F8PkF z&k6aB>oY;PJ%KCY1kS<{j($;uq0doh887iSLe}wjLMKfaggpNcT>L@hIjImu3+GK1 zvW+o$G>c5ejjd~HvdpYy%}iV{I5O3*Ea_Du4uEtxnChadj#lYdi0O3jTBuS>%$#r5 zPU75iWa10_r*SlqQxSHKm$9!fo7zp|sima)Q93@;g);YiIo;Gy7?(NrHuc(5_3@Wg zOWy%%>Nvy#?r|2?4cwt0(|3r4yi>`M@kvQdEG#Vgofg(=X2Kj7ENiy%jELM0L5fB# z&28UNR#fGd_0wY{no4rE)kg?OPayhwNBv%J-T@3ELXZ=!{~F8rI?yPD^A{bddeWPc zk}srV-rWejxLTdxmqW~Gc2VC~gjiok#EgI1DDe#qW7lRoGn*s*5dYefNI~%lc5`F& zKnY2^5Gq9+!r#QMig5{Md4Xlixf-_Ek6C&=P~Qr#G9XD>p+{HyZzB4(;~H3f{9>2L zZ;3@q|F+%FHl_d_-td@bUx~~bE`LdKNP=gX20xkGwCxFXNWqlV`1b zW(Q5uua5LVxB_Ys4?Tl}Xu~|TFJHR#@-06q`@L}zTZ8)~zK?*?a_-U+aoT_Z zF`pzkY=90aa4ZWuXA551>qP=bxtq+p63nnaTh|k(Mo8E~-A-K1q2qnr(v>1sulUb5 zH&lxXKzHM#-=6om8hs?j@sebVEXy10xkP?>`fhP}G`D2TfJgdf^zoFt=d?ro{;pokQlg_RBL|CHSZh$Ol^;k_RRa# z=P*$a)K*$qY*s$W`5=k)2KZix5@*Y;=XU7!r@WUNB%fOjZoOw3I9T=gjJ<-ETJJS1 zxprIqc@D|B@GXy!{)k9eMYfr}xL1B*3!ln0IFdmV`ZO&3kBMNBoyk1wI@;7Oe`V!M z^SpEsH~%)i?6pMq*ISd7BjYkS+1#|U7WlSiLmULJ;*T(jpGj+_FS>=n^g1z34Ub;f zaZ}1+V)Z;PW-vf=HMGwUaU|V&+Qrymn$9nOR3cq8M{X^_jkl3TbNSntEioXtPbQ2- zOsT7{5BY!F7(~3wzb6U^2naOH0!v0Tu%bzMt$-Oh5wutBR$!<0vsr+1AM2t}_jSL2E8cPBqq76VC6SBp= zs0K+Xlpww?sWUjP`)e;JW;B6*-zPs%r><`;skU74rkyVcU4*|zXYM4B996n9RU&yk z^<|qL%25wC64tV@SU_S@C0kXpyh1v!d{*68=7_|?VP-XJrBDP)KDlba5jpGl=9^1p zTMqMjw2UgcI9XSsm|PyWbezC_UBfgM*MwMF6h=q2YdVwl8!xGmhv_*R1pf z$rkPnRv#VCPdu7!6T#rwpF#ej$5Iv&tX;yZ&wvaMY<~?5z5vv5D9~Rw8S(`@begu$ zXK-*BUeaQ3RgWiC6w7@cygQh+Z&TmD0|lcx9?jW))z5hgk>zP!sf-QnWt$Jb&v5rBh?zxbbJH(WQGt z`cUAdV)`bq*#ZBb;85R$KYd26iOuK9GYGLTe4#}b#nXFLq626}@q?^du$V~;v2IGG z!nVOr-`>cV(~=`oC5QWK7AfG0soT;8iXR2?5A{vNy%{LuB)6AOhVhJlfa$nBUFbX_ zGHge}G*QQk%HJ2>;l*iTT;zMUT7Mt77rddaFE7UEkv1Z1$)JzF-dvzuh#5!$x&zRr z014>oG&*DT9L9-S;5~MoJ3R8hLDXL!<8ksE<>V zl6$u3?X#rjEuvqd^dNTW3#WU8o$fQ6ya}MABqzr(EapQ#)P=AI$d9@La2?u{ET1}zUM@QWf0v*{>9DLH&`v7%|{i(#D$%f~Og zuV$ZJXFO~OHgO=n4epH1r+*8lu}sP{S-|sF@0hfsEyfsS=!0dJvPmL-#_HK5zxlk; zckM2PFr^GWKUvnF`f?yyT!+U{+(w5{(}Wt@)d<)j#|M|)@%HFhHM;K*<6DMwM49C1 zFtEK9J|ON1+!TED2H&rDBdzy|xBj?V(17E~;3?nXb?NOkthN5iSVWgvOl-aZLF;8( zfIj%zdH}CvUzWdo-pqB5@&YS*i>??ZTBy42M|O`>!sCv9xpGM!DfD;KV1?NdAse`S z^4nv+d)3or@B8L-6J0U6#%yvM1-8}Z+bpIO(AH*`*R{M91e7HQ6>ITdhbv=*A}S&3 z3&WC_-@|GO;QRP}(OHHKVZ9#nu^(@U{cIK8twrI9-XJn7Vrn*>a`X4RJzz+LBYLCi z?bXWTf>BwUFepu^zNb3Oy6ms^nM>L>H|dza9>ZDJd&h51T8e@1MkH;PUOX&hJ{t{@6_?Z1s~ys-@NjI6B7v z%gaw|=9iZ@%e!;RTz~lwT!h{+ny72-Kh_ut*t-|~MArFePUzuO$j6+d7Z(dl*LL$w}rBiz#qt$wEareXOV6mvUkjGd^3;P#R zA;G2u?>}6coIP&B_{nXdVir>YC?Rx*eYS z5~5%u6;;%{7;r+=wkeA~*cs~Y?{5S}cuVzp!Rvn?YstdJbqRx>_NBG7T%Wbhe1fUb z-;H5O^m}rK>6lRs{ya6KiDVR?fZ#f|u(0sSjKlc911p?Bcb}9PJdHE|y!rsF-P(=* z*5Sh^hC_}czpriG&n%0ol_@_mO1mh#3IjEFZEbY%DLn)y)w*8L62x-n@|)swo65ysQO$SLaw8SXJ4;?OU(#=) zPH!qT$l+0aZfbpQ<^jLPn&1h&ac>JMT_Sk98fK6E_LXsfO4}ec} z>0@xzu&`&p+wfq2^f|5iV78FLE7AWh4K26kzG*u3XhoF@@*sMEuG*}T&* z?lFhG_JPzh)@@$D@FqRocxi!mo}%c~H7|2&NrT1kH#6P8McAuVP29!MZoZpzN6>7Q znRh51YqXNY_b;0!s^YBhago~NKm3(zBYN{}NrTMp-iJES5fG7;pP+(l5m=3w6=@6i!Mlr&WS&B^23~VKQGF35>a-kF6QDs53Gq8X5sbG=57t47T9Y< z(0n;tNRSJyRNwZm8QWs6y7Lb+?yoHd!r|%{e?^vzRQST`&<)hJzAnF;ZZ5_d=Y3RK zt6^lSwNj~LYYeOH&x4K)1`e*i!ts_Eb4-0shtKX1794U!4v-g~3vxQDN~yaU^&J>D z=SXV~lX2(P+G<`_EE|?yH2*uYFCgBcX127UM%C5t^edBW_(k0$a@3hd?c&B%Qvw6a z_ixqbXNG$-Ruzqu(>nU6sVk`!eBeVSv^4hK;6bM#x_S?9+C7Ei;=`~zf`;wudhq5i z#n6o&+eEzrw=b-qp=NRP{%+fHk4sJK(78F%V?^}d9s6OLC|EnAw|Nb=l4{<(z%UbJ zUG&4ka?WO{2HZ61GIN@d&DsyuHYKKBE>5t@=B>rxXjzhi8>fFq=eFjx$Tk|Mm$FCo zDIG>^96pti|H!}dsXSN#sVr6UGs|e9Z&)!G zZ_!dWk2)taRhbvh^n4r1L@zqxZE^AWf=!%BUPv5yVzqOXE!+)LwL$xY%2(T{nx_LkH0cTUy9tS#U8q4mt7cY)!)^TdnI))n5njLa(czv|_J&^E`2yXgpr4mf)>5Y{6!>8x<=>M`y3r zMnJ!0rRA;$dLdSHxJF5G%_QeQK=~9>1&PvozxHRAcQrb;dRlvbw`%@3^t6UJEq}-6um1PL1&dHjmj={usu=q-krspqjY{{Ct%`Ug z4!d=2*`yxxK%Z8>2&>gt)4WN9;kGz`dgu3*jFA(2+C2fd>p3j^NdE7Q&f|+JV5+`a z=G^zy#k&2*MALd3zA%?-2~n-fhPQQs|E*d@-ro|ZQr+Lj7Bft>o;eFP4R4XDECqtj zk!rrxXwcWeO!%Nr#L}3zc=`RKY-|sRg@g%S>V88{t(NvUsXVQ>-9n)Atc}6Rh6&?X zgwep2Y-S^I;1}DKKlin+?$x1RMIU#|H?hk2_7`@((6X|zRiiah&h+E$Q|di|jG^!8)>AG2zOciv<||X8IhW=vS$%5) zErQvG+NHru!QdGs=o;NLm>(RijQ+WxscWi-X3;m>=LR#?ZSc?EGDS6e6`nE@ zw*U9-PAcc9WDk(}SjxUj=lnZ5&-Pu4f=x;qv2xAHqRWXB^kG7q`=@&!O16> z>!kg2ZClyf_TMuO!!$Uf4LTUU+YYXg|DH+6k!1z1v3a}g;L-ZuGs&{NnNE$1oda9< z_u|l!A}tx?47<}8rz(OWJG8{>4OX2ROaZY|WB;AhIc-$q*YA+$JR9<%w{WOehWoeL i|9;BEN<uJ`@$uJwF;W^u0@@UYL>dtdvyesP@y-N$Og1oQ+D2!vQeU0ELj!Eyor>EYpk z--H_8wE+LS<*le;hzC9)cu(TN&vZU2ralH9PksEM&mADo+&$bJ_`U6)J2<#|J9_x+ zVs*%Zi}=wODLr?9`Z#&Gvlu$LIY6|*H^L8CR2}SCM1(}dScD!(i9C=J6=TuWX3;j# zN-1AtfIwIv8p;ZW0q?hF1K%5r&&ur$HfxEz{uPO#tom!iD%GiCR_;{RrfY?8CKPaHH6U z30igYf*+cM?_d8LnSRhY(z^jZG%?j}?v2QjdG>EY6>8qcZHVm7iEK&kpK}%0RwlV$AI5&;D zYK<>rj``oz8@Q}JEXvcU+bvPDh;57c`yASE*vm`;=V6YM<(T?jqLOlLcw5!K5fer% zk;I!DUP;y|Ihc7rz@71^_{ql#PRh2uLSt1Y{7>)xn{1D9u61=w(4cd$W$wkIxsk0_ z%+PS!{V(s{n~&A%l;;^+yh%cQ*Qoh7>ueJ%8N2;%Q@8x@a0iRFwF>Q45*L2DF?#xu zjcHM}e>c`Pna`<-jcvGpd-4^d;>N}05qG1Fg>Dkf=Z$Ihz8vv?Gg&pVC{0B08-r!B zb?Nu)_oJK0o+_JolSj>49m9M_uv*+?k^JA4$Hn;vd1k^)eFP5L#ID@)t(oQ3!|xUN zjcJp_w}j6dDUMoY*OI~>{k!)Oji3*9cpstra6bQpu|QWxLZ5^6!yaq79K zwd6U$xllJv{%w|jqxaV6)}8QLCMJFz;9u=|*+QibTSb4Y;+>VzrE_}+0=rOic>@iVF}rWAE%Hw zYQC87a;u4z>b)SoE9oh&!V`;FXH6NNUfO2fyhcn#WmBIr5;;pj)=F~2f{x9eeGup8 z=Xa|nW3#~Pvi@%;sacBZ3)5GaQlBlG*n}SS2CjWL5rkMzc4>E#coC$;GzCNwmj>q2 z>x!oL5IQeL3Od}aJt<*TVzDRoEibzj-p0l{jHEMCJ}%~lSmuVE|5^7QlsO@V!>Pwk zu>U)b2g2IkyR{AjPe1t21=?VGE>G%e-0llnup`cW;d^sOx8v1Kse{!+e0<+e)Dw0` zDcD)|F^Khxv4UM;gMtZcCG!AVZ^j4De-F>h%zQlx<3O*4@|ax;lgxRTwe=iUHI_wy zE}<+5sq5lNQxDHw3dY|Nr%+!D_cAYg3_wiz8ev6%*H7hO*lL}d?FE3YW2KzmRD3n#9etil3%J+#Uz<1eCB<- z3qHO}LJM;lhZ6Kq#(6kKy*qe3YT5|$r>Ll?j&=-;IsUdd;iFn=0UVyFz#mD3ls7V> z0?$e?D)xGop}?KmP}87RHy2LNVc$sn=Uo%KVM#FrT0z{rwj$iHTn}jg(%j zm?D{xyJn+u*Qd+Ffq{V?t~te^Rv_LdCKANf-xVRkqN1Yu>W-t=nx2()GLR~F9U#V5 zhENOdO{E&KbBGBL7b+-vWOSk|URa~V5_x)3)Wge#seGIlLmF&oYZCc=@8U{JTzhk_ zI!i%WIo))8e7qD6*Yp#`lUG&6iBqQFh=kH!_*muQ=c8m4cp z>Pjyi1-+iVMX)d*#q~f;d-Jo;pAo%kX{+uvH5_N-NVUoHsm$o5mHgr-Z=SvegBKe{ zmRFeYhdi*ZG7o^hTwq2S>FMp;J$<@rMjT8B%4~&A2b2G-FO8;_76#8NuSROZjcZd;ffZ z+i|t+@$&WS*S|9*tTi+=YTxO4G|q=f-*=n31)+TyAe0lh`u1*P>6!1w822x27UwJ; zUfzyx-@XwD-nV0^9a48|ck!j7PuQ{2dJ9kc#4ur(%$qD;V%~N(R!}B~gETL8%C_N3 zd^NpbqNu$66PGz8qK`S8A*_R$T`lDnB;@J{HRQ{9G8ZfucBVCVp3Mcew`r$kv)X&@ zC;fC~^D2EnyLH>u@w9lu(bliqf*qI7%ZOboxXY87IP+#nq|#BJ0?J~;(EY0 zAO#|w7Lp-JJ>kr|#%wjwQQ3^@Rx|MAryP|RJmwS`*`xGiZt-atfdRvTNg(B>jCq)Xe z6wT(d!y<~Ez`{N*xebRme7%n?+tGJNkLGeh%vvA~I#3hTy;PyolKD94hgXNWr$zY% z%J~i^oh*?^z+g5Gi<;)yE>1fEo3lwyz!HAj!B6S_A3u6t>&PY;Jbu8j8a5w#!npJK z!ks}Th|-|=QP-^h{D+0i20^f;u)#H#u^NFaLYuHN2hm0@Ve?U;{^JNF%jTdEQMpAU zNjR9n{;-->jngP8Bq91R)ib}UmuR@a5k&_NQG8}WeVD);4)u&T&~Gk*q)X_-^!Y1 z;v*^3bn`!vNREySciapLd9OZt!6<$Im-b@~rc~UFjErQd`=X+^ot&J0%oO}?(7^M; zagIgo1*4+6_@t^4Qx_BF2PSlgWQ}Aa{@R9`a%E-Ku8~V$Y{XvZw}AnRdhJ`5p-1DV zNapLIQv0gr)$FJ4#61*5&cmtG`jO=D57XPdp(nF(DC#l`N68T7g7Pgq3ffh%K%GRBrhsTrlp3RnD!|=J0+kW6n;{5d6H%-&b@$y|K zf_m?{ckLq`B2e(fC9ewacl!+rWOTh5jp$fbDOtuef-5qvvYZTqS(=tPTE zrj(WYnr7WEmuNcV7teQD_(@fXUN(8bJO3afx+|OlcB-29%n4F9;jEm4*aM}?fo9~1 zS~8~93sfODS0|^Z%c*pewkOu&9F*A2v+i7pBYZNh+#|(P&*edB#A)_ioaSId<|tpv zXN~1$ZBnW2{inFDp!a}i=)A|Spp>l{;O|dKU7IYUli5WQnXY`{0XZubTtSbeg&x9; z;^N~2=SubI)2D2?Qr$T+!JfPACw7|?737P$_p}R8$nE&&~`TNGjGs$$t6$8y*|0?nxBjQV{KDQcP9NBP~>Afql6=nZ8rmXB~b+{nJ3BHDlRp1jSX{knR|H+P$UkB zx5APV`=LCAgpl(znc(Av^UbQhm+Wdo?ZN(!a%CAo7DLaV#swu%Zrx5_)%KSl>~s;= z())+FX_F^Zxk^EcM^KOy8^Nj+t87^aj>~>mKRvbtd43eIZ57PdtY3gk7#ToCx z9)Jtu=tQ696%?@9S@`+gU;X|z8j6hN_~g5d+HRar(SCOyqdNE(?c5YDQfRLeD?DO; zx63Ko=ut=g9TG#GIGal%eecef`L_K+SjD?f%BLStGaefCdtT#~J)mKK z%=7{S86Nq!R{!DkgE}VXA4$B5hKnGp~ul$c=hep0SZp z%;BLA5uL~_k~sFoZ6WR3C-dQQDGU#yz|%o@W}3-mLS%vtC0b*eg0Ds{RK^va}Rx(UH(RFPoUkMW7 zKHCDFYYSW-{;2l+4(c&>G=0R7r+Ngo>QoCjH_+*ZiXp?uca@&q>bXP`KO-tlhr}3L z$kes4h&q^a;Cx#=QY7O$`i8;SQht{>E)pS0VOVM(gX3J=POhgV4SmQqQB}xKCHIQ` zD~f{p=|6HP>YX;<@s_i-a-)|Edx%5I^g@j(@D_kdkS)PA=D^?NOk$e`985hAzpvy1HchsV-W) zyu4Tta2T2=u0Y0MKjzddv~}7!pLutDbuy17c|6a@VGOcEwQU#X;U4>YePgvX47CSKjkh@yvt91g2NA~vhQB6#q0^GL!BM6x=QHIPjx9O20EmnTHASyh={<=IDvmr6!M7Sy?!EH=kU#g!(xI84mivpq; zDxHg--J3^?u%8!R`Zl+NNz6=Je7Ko{xAyOThW{2KV*fX@RGDMir{CX1f-_~;`+|;4 z5uK;krx3j0!WuBM;1PPHxle6{+h+uIqt~*kp^;J7%5x~Fs<|jV}2m8Jx+}>}UzY-wV z{wOJFDJA~>ttjU&?Yz6Ei*Y~H{WYIFdD5+W&aSPO59figZFxEB%j58Txh+J+ zY#efi?RR;|Tv*aPRHTJly7AQKM^;3Ab>P7&3?Y|6@Iw99^N+{$!8|Vw_E(Sr`X&QKgu4IAzJcZ0%G_oY}d?%=KY&Skev}bS>+E3o#u5Y2)?IOcG zEkyOi1`*RkNim}5V3ReNao&FTkUTP?pPrdH5olv7;ff*l(qw@^AmOlwRnU zg5@T1uox223b8=9b&4?A72~Nltz5Qd5Wa{{_4SnKp!VCHV{B1#+nsBFBW#ZYvZ;X! zF6P>3g@p*=i+cQ)%H_h>j}-xx0~A-!)RfkLE>{^{(I5*+f}cxK*A5O2lZ_rWgbiH! zAQ^+?gELU8Yib$~>Okl6zPx6_#)k9OuR7d2_gy0#%!Yj1YwD)a^N4!%UXna}2e#Ue zk=MPaWm=3qP;2L-gNKLloW2rUy!u|HXFo}U>tUAN5V zA9%6XJWakWea!7CX$A23z^hC6tB;kzM@8v~Yq6D?WSJd6+?2t(E44c^O8IoYf8agT z>hIw?|G8adYAmPz$-KSQT8a^uva*{&L8i)B%fj_(?-|XcM=}Gpg8P*7ajb<=o|n5-SRt+&s`B1SbM0BYw<-DHGqC=!f(O=&_u2s zD4=|Q|Nfn4(de$OqoW3evd*|mSPIZQmikjT@$mTVR5dsemuG|Fy+0)8-@j5yozC7n zX$4$-v_z+GsV8Z;%%ln@chkS)f{}oL02Er%dU>sPI{zpy859uqrlSdqJL1}kr!{nR zbOGB4l;^B3DyDeAk=We8;&zV^(R-ldl)_89zsvoMMgEB>z|=RdF2q*RV}aStx8mSC zowF9vj08hIZ?s2*Jv`nz#Spw23~`-Y?b}-{Sxgc%zFUss0O$WraRNXXVi$oJEP{en z!>{d1G~dC<*fG*EgfM8K9TlDSw~w!$8ZY=C+QazSof!)z)Jo=CdP^GmPsb-F>Wp(e z-`00kburz~8i?80*ns`Cp)Q2;JRQtQCSjDa1xK{$e4}iCE_inlEN+^<9mtmf7u$_q zzZ|j_!TKtcJpQmZX`jkbB=rQGfb)~x)KMKd#*eDW-SOn?Ljd|ddG<^R<%>oJU?DtP zXEm6uHQh|~^vGjLnN!ws!)5K-(<#ujuPXd%(>zs>o4X5$3dzVg(#9vE(;pV*9RP|X z-#iQBRMpVH?@eV+-Cypr2Lzz$`h0U!rtR}*G|CWnnaHcJ7u%6NSR3ridgU`;l+UG?bJJ<0dve?I&|d{1y$i$6LRIPws$}fnL&`*;dY`n4{Z79bHTf z0II2cpH>=sPc3Nu!fCXaRYHOWQXO*kd~31>i}QnzenlTKgCrS{1D)8i)#F1tB;04- z{GO-}?YKUw@&e#t3ETq-vdb_ytxu)>JHoE^eoF6-wG4vz)YH|CxW2lOm_E=SpcQ>e zRQdVbnJ;LQ*mY7jzAO51cjsq1$;z_ZiHDe6aZ119Ec@>NE@V`Wt)tB>?cNE!cl{TI zb?RIJ+fnaBpswld`%<(Wrwu-J;z61$D~Bjme+2$4X3BMT(~K%KOaS_;%do!4;h&Zi zG}!w`g_KTqW@|hb6~AYT6F$ogy$?_gsBcof8!&*`?7^a#R@*9k!$IWPp8oju&H1H= zZ+sLuf!5(yM?-%Bv|-R&c#4cAeskZAUNxCMhETALOe>QQ!xlGo5gBI>NCsGLcGVPy z1T+v^%Lx_$L_B*4Q+8Y7^n%eHgstS&;pjdD&n|39Aj|9n?j3g=yqqi{ z1ns`{DCZ&FeAtDX;`AInS`I=-E#O<21GUv|(+%<4=#-)@F$)7&1!7S0m>B!dJNFj+ za6p|QlS;n@TGrY4tXk@OYnJ;``;ND#^#BM)$J^_B+TH2g27BP{%R8;RIJSecet??w z&BW;sd{=w6bh_LM{gpTrweUO$!o60oI8KYK^R{Z*HZyD z3QorxA*dpdWAB0z1}N!cKhe_U)}=(=>VSQ_%MFtbMUe4;o|*{67(ubFXITPPo3u{`;FJ@{7=a;h|foUqZZgzs3fB@ zV+FiOKpVT4_hAhy00!0$2q>W{t@an=n3n+E?FI1O>*s^D1&{EHJ4DFNV(oVe`vIO4 zX3wBNClJnE&b_(h1gJRqSxz8MgiPP+gSGe3=+FTYy!btx90qS@O@1I9XK@V6(>Di{_n$pWY{K)wV~ z0*Rop2_cWT>KO+DK{a4AL$EcHIINPKAm@>(8S{sy3(=4*eE0B+>G^_ZgE^CJf!>b6 zAPKX;I?-xq2CqrC5E0N6><`z6(PCl^;2mh*2>_qUQdJ0@PwP|UEICg8`rKJtntaK*Q9C1?XQPeC~-%u z{+#|AJhxx{t|koNbYX)uRkNi4S7H=Ua#a~~-@g5|mCr>rJvMiZ zUZ)1P=~yj+=DT(m0M`o#AG=z5^-#T$_IGdp`8B^aVHlt(NGITqq@4oRzX9Fvz2mU} z1i_w-@iMPJMOocq+Q9|Z1MqDh%GD7q!5*Mxrh-C>n`ILgn7o}EdQ7+a^FtB9TyaDut#$tJ5_;fBH;6UlQUV%t4g1f`Y4XlOy@zF<3f; zDHk}32!|~*b~XZ9z!GJz4h>$=3K#UsajB&+02?4pUv*|$mEYy!csu`(+ET`&Tq$23 zzpcs0Uv^@(+l9ew)E>+ZjU(1GP=T|ajCrSXLlN_(!$Bb{zh5V z(wKox575?=04G!a{NDH($h+c+!9a|_f`DX1<7K5xLkNz9clDF66qHm{(6LfI@s#b! z8hgii08jG(t240<xO14Ya~`w}2pTzoYa?YgCMgS(X8m;l6USnxqeU zvxY`0Kn^MGkDK2mwepXU3IBlBgxiaF_!<)LBaDb#l$9|O3l=_=qL#$_r@nVP49SI$mBDN z0%@VZe|JuDyM9zC^xUWIVyD%#`MJaQV3JSnXm(nv_i?X8?h3!|>5uM(u4pfyJS~CL zp4uc3rNkOXL>JZ8)<)kq=herU9}31vR!O3U4(7=81Bz79I7iSaU|8!o%r*mna?|mY z3z+Yibtydi`N?6C-MgvmOrBdKL-;k(n;Y4b779P`Yq8lldq}SDhUmKj?|n7X`L!J? z3$@t;ccT25c^~)rl1rGgv?)yvSF8#+i%Q9er zl*hI{pRL|G4Uv7p@Id63HY=Mmf_4IU_HzPW$yBp7J4HiBVblx0H%ybrNLV8Wm!lapmR;`KY#vg4QpUz7Ymn?>vap41Iw_e zsl1#Ir{V617{6G|Epk1!{hLelFprIley^?;fWd(177M-Gs<9na?Bpr+VM~v_pb%=x z4%}Uiky+EeBEK`Zx3@Pm`yP@WZC&aS5XOod8NHrOFLca;YU5$3)Tl*>pdS%D>QzN)aE~jz8+(<2%T~;qs|Gx4n%7hx<*v5 zIdytHfJ~t*kpTv#1Ow|~o`uL-2CigG0yO*O9KGQHpoV_8NAKhe2r=@_pu_b@5Mo|G z`;FbdzTz;gchqwPxz|QDS2k1#B*@?5iC{3Cn+#4iO_u+Nbw%%a<6ICSkn@F80|6d! zE^l4Qw4fcEia6Rtp-h4D-Ey}cxU2f)!5}^;T))2&mOL6W*awLscESi$U+_)kaBBlP zy<4^3x0|hoB88mCN@4XG=Egv8bSd8i3HJ5i#rnro)x$XwdNI74-J7e9d%2)Dh9b#k zfP$Q(EBp!-KE6(uG~Rj)R7*8JLRPfK)(~*PC0yCGMDQL+RQW4mSLcga9hVNT2U`OV zo}z11elBzPWzE+$u&Q6|2f+$a0KFC$y>e(1%A97l^%#%<=-J;D@;+d!F@Xa2$kF1{ z3JAQVWQn=X)gSNjxd?EGXd&ph-~+owj!v7Juja3h8~eX~OEjgKYi$4r)HIW7s(4e% zz2#3atl_13PUR-8$P+xEzX9b-S($vYPE|SmZgX>U(_-wMJv6jKuZ->fQcu(GS6U$N zy^6mQY~4a@3j8}~fX~3tc>ok_NuPDH!gNp!aD$Gw5)y86E~Ohh{^a!?Nh{x&j zKSV##Cxa4IB8|g~tERnfLOo++YI9ClC)m!HSy?pZjegtaGtUS3$p?=B*BvX?pX(}P#Kz-sJTwpJKY9uFARVjTL42(uXe*zx3;!21Gpg(#CPuhTQyM2 zl{VX~J(NkIZoqW*0tO&-9Bw3}En0t#=Ij#lA<-)XS@sjq z+|94N`@ME%)Jy>j7{IP8?``-`bwV@RA+ZWQD79ZPPZC`aOdO)V^Qrci)h;x zC=hup|Li#?*MF7nGXOW6!`#Pz+rXTWkA`DdZWN&?xSM~f1ev4 zpB;-X7aD#56xf2oO^zf+`T_?9@Z^N%it6fW)gE<7|G+?W-|{E&1>ihA&m|dX#T<2`QwP3%i-OXMTO+3sF8cuK+0Qh29m%2u!}baJEStyxgW%%gk_WK? z;B}={D-Z%1YIZ?b-r0BnByeUlSOxJE+YlEw3}`4mz_uxp*HMH5rT(oO6j$@gaU_gF z?lY3;f&#oETvDbl0C@<9oO(k1O22*m+I4d^e={zLQlYWB1z86$=OcQB|BEe5_l_&S z%ZvG&*!kV6nr#5{V93Szz?qxN!5d{FVM;|?u={Ar1~sDwHebZq!I~OFo$Ie!YEl>U zhVLyR0pG#~7PS@Xj?X2a!NPu9rs~}LAXOEqvRHi%35@PG2b%fbNyiN%aMz;A*zBgY z1lwWYpz_yS>gz`VZ1WK?TSx>zBha7kALMVNXYe`n0$4XE^hzwa#Pl#GnV_*&E8hp6 z3-Vw7;&Z-_0Fb}HrX#HX`}gvi8?-9c$#mTkdT~5-E;{%SZF+>i{(nspXhWVoR3-}` z>&2VS1LXbajS%aqaIw=85bjb<{imEt(6$aX1Yl>In{(7D$kx>WunfsAwkz{Pzom0G z0fzR@Cj~t?y1;slYD+ABOqEpxN|R%70NJN1VDdAe{lr8nUSK@S*`hsEZf*t8?2;Vn z59~Dpm$eW6Od#dbkQbU%Su={3i$ANPhaB$CGnW}x5b#%lgaHnmD5SOT2xP&oLXFq- zV&BDHu5q#z6fdHqkb4P4eN~P7NTG&!P!t;D+tR9jX<2uEsTfZ$BLkefH2wP(H3-Rz zt-5zdA&CV*hh(v{3h*pT1#LE9suc4!qJX!A1lsQKuOM!e4Z0iCO}wF5&9pM9nodY<9RC>zS{wI8b)NRa}{+{rGm8*O<_cDY;o*x8XVn z#5A_3M=C1VXeBp3bVKx(NSoEs;=x&-6MbdN1`oQ)ggNY#^%_W)vBflaCunkfD9O&w zZZ{2TjPqgl{S|=!(rMeCCC8Ui-2r#F?=i8+9gtEj1x%7JZrSTmV&CR``~@A|LoIt`Ghp?G3P+FJOhOYYLxAD@uiMDB z6M_c5AEbQIwGw12m#t}V2#1!f+k^6}tA+lZ*ZIp;30m0@Ng%VMDP*ArIz+$N0>tOs z1H^$?(9J_}N5cJuDKq0pl>6tir-vKky!9c+zn(1v8dc$)((oi6MJNvB3bZ9qKLg}u z$873h?|J}hT<6;8qH&1-iI(8^mp}-~-wkb@t>yU^Q;3-GeaL}@p95wvvGwB0bxHn9TW z)09h9a&x#R?HbVj?wnl9X^##yddy4ZwgTxNfQaN~H&EWiC&o*x5c@&x!ko0JnXg|* zH+!$C9*%wRn{sN}fS1|rgzqgVY|XW|{_hn;LpWYkv-dM}6oGx}*aPbY1yamp-80hX z-rmE&CqUbd=;~u}v1r4LR07PKliPnO}F$Ll6 zcHD%ON|fv5%A)%fgu^aR-(1XlB8frS>6G4Wiv~ng9_0(RUfL)37dY+vjU89SRiDp! z&=3MB@aX;krC6da1j?E)wePlsY0Nt@Ckh~8FxR+uMqrS)XAnD?xG|96T8Hebl$#?6 z(7i;7NlAL<<^(`v`uRcnqgIvxS^yPj+fxMG7$tdqJnhj3x;SId@VnJ-o1lFaG$H_> z6S(e=9Y@X*;!9V01aK$*t|cR^U=^g-#&&#hyB}eUG?paSrIGXI3toHvDT8YlEf`fX z@$u$EoVg)UV6I$tvwv3x3`AIf+R~yrIEQZd;Wj9~`$+{foyH*-Y4P)jBJex$F5Ix0 zETD2CTbxZVsvTezN!FRrROGl3Tk|h1E^k`UkgO*Yy4QtEJ^+L~P_H$di9y4n??3)^ z=Z`nd+6cECjL>rabz5Gn5lhbEn3vms9rTf7C zCc{iDkT)71+Fg)>xGgc`TMqz5D$eCCN*Lk0y(s0*OFN-2zjsFp7?;`i0G|bYN8k%e z3*6%RoKnPy7%?2KI4TA@TCGs|n?a84a5%*LM2@5_^OKC@CQ78r-kEgj+;=8ZsGP%W zZ@PIw4hN8G@CEu2!JS9NfVT@1pf8yCE~X7AKWIG!5E+;uKrxd1@N-CxqRZpL{9OR* z`3h8mC;U0mYAbTBl=Rv;tn=f9jt(j*FtJWMog0MI?Yb|89MIc-QRk8mNZgIWiqo4x`=_o2>jz8lI_n_=QPp=Lgo>DC_b655&qKk5&MhPZdkQUO z7+Q*@n2O_2O=e0X(sm}^y&#waQ!q1fo|BuE!&c)W(3zwI5m9|26jJKG9{MW6AzN2W zyr5C?^m=8*S3dQ2@IvA1*oE(+YC!6=c3YBicQN0Xt=ep>X-KL*>YCSlv9cGMUcDSO z(8VmiXF>RorqP>sgopz=#wAZIFx4n-@GK z73Vh)#o-KgRs$2Orh>Di^x9X$yA~Xd;xY>I_PFWmc!(-r>_;)k1$bQr1`5`9qoi+ z-fMoXizgQ^KYaMGRZPxd85sBg^g|4+5QKh2nScI~UsI*DVj3sRaAz5Txp1ugpp}%}Aj?u*LP#NHUr-Z7e(J``3{#gSCFX&OynM`2q7pBl9WGj!86+;ElNGM&+-GXK8D-IJ&J+gZnS&eg{R9sJlhtEYq%yWyV zg9Z*)2%3%Hz=*@?`GgdCgg3skkF`ZwK|#?cJAo6_R&Gmbn%DQ^RiqK1PX&PjgPw!q%OCyD7$4Y0v{rss4;N6V7|N0$$D-=fIaln}=>Tl#xkEEe#HhO{4 zODWWTFXc}5ymRG>DQX{>ViBMZgrn6-ScCgzW~T8oNoVe1RxePvwa=$}@7#maQWsL( zwDs}OOkBD$Y(S$Tu!94jLT~U46dfsqI4FThgn@_Wl&i%R$-;r9pn(BnW!1)4sX^i6 z<4txb(%RO{polw_Z@s8E|e_ zpI+Kn%Lh7eROU!kj9d1(fsFp@O)-AQ{2-HfK?G1R(PsU&pORkskj%SJ0+;3jQ~KZX zRJZ5yyY)*SQ(57}8+-G|+4P|$2taX6surUb+Z7SS!7mUtr)S;4gN5n&`7w)YcqV3M zbi<&7AqE7}8@EyytI#QCj|axPHdaW+O=*S^3TkD?G)fjjuW}Pjyf=}-ZIn(`nUUVy zLo6{7>C_O6e8-4-77iBMDUI)97_3n2-~!C$x|9!nwb9uiu&@d-@CZlJBgC*+wQzpY z1z2IG#bUf%jbN+AFp4Q~N`o`ERAN@!p0(|53t}5GvT4T|ZDYe=8;_!k;C^|p@7*#q z9r3{BtpG9Nxe4Smd6GWQ&?r&Er)bmr{Hh^T& z&7p`L8&q2No^MyaJ^usFcj**i9l0`07>d~u94WIF_GS^14SXz-Nz%>XWj4g@N6spT{el6dBD!uGvW2Z*Fv_P zo#`DZ(;`JXR;3SONE`P89$scfaV1u6g75P0Oc?ks{aSZ9+gq)DB9XvV#4u->`4{#4 z(DxF!MHmpkKd9jXwCx_J&-oT_6RXj%;@i-)^IM+kBG<7;+Lk5>Pwr$^H2Lzs>kxBMjxLb%1o!* zr!{|_zR;m-4Ux9`9YTqny$Y*Sx<{#9x0?_hv2vm`PRT_N(T*Gv1BotiCt~SQw9iHw z32xpWvM?;w3{uRK3<4TMlq zniwaOOvBL;mXT4+c0a%V(2MpS?r_FN08sI%%kNXYuZuBaPGEC*@&sLbcTbRFKhm$_ zSTD^hA8tJzS1aHGMK21L%!iEIB@p+`dp^Bc7&7E)bUlm$!mn&79v(3#XBm**XsT3{}@00hO|r>pMfw_ zH3L@{n=ci^0|C^e2+;ocq)_SWqqr&7+ubX$w1}0)DpD1_JZBz5?dXl6d?_EtpJJu5 za=J$NbyI|fK@cs)VM8uZm+AASGX$w-olFphF`+uyz!PiN1-J;p(L;4irpLOK)7+V= zOC@ix4S%T^v-BLJ1uGL3Ehu|UDeb?d{%5nP!roLX%C_gzy2o~We=*$IktyGhx-FA8 z{5fYUw=(yqznuQxYzDeEPl48kWgFf<54znRGU+6T+GnJs`s)~%9}Uas3{P)NA5fLa z=xYM(2$b-kj%DJ}@(NsjdGbBupoIfWr^m#V^8C8iRD_(VvuXk6%eLa_%t&cyEmN-bdKI5t6Z9|Kn83R}nkrE`Vr)&TDR#Du&O;oL!)z=iM{&kXsQmbc$!afq zO`AS9#!Yk5zTZ3qZDGG)|4zq*s?Y5rw60?0GHJrh~A z40>4@2_XnW-Ey6b{wX-SDl;c60vwOQwYoK8!dq|lt{6#hfgJxmM+O3n!2Fy}TlE(t zibur0HB)!0;(h}3oQW){V&eiL1rN4rPhulyQkvK2gb4|@HsUkI zgzV%=x29WZMm8f0c&dpAF(VV&FL54?N4%>1SYJpmOHliAbx3zxGcFyonh0+eqbCDL zd(`e)!nR0SY1gWHO&~x!q4VnL-t<8`>tri+fDQ4eqSIIMH?qu>+E`=(^W!?FUDe)N7ies!={fiELX8>vDFx_Jl)qYLo8^472_%!>QglL@2z_s(o9jy2%)^Nnj ze<1~=;t{qr(nPAJs3?VshHfSVKB@Nb;5*kY+u^h;j9aZCm_^bl_(!G$#AL@IPx@jl zF(d4=kgOb>{?Fz_UZkg&;=qJjbEdbaVoch#lQL zg3eb2Vov!6B`I8Ie@f(q9v+|Qn|3#s{!cH!U6%IoV|5j6WIk3#|5xp};$T}zU#=D` zctPB%G+}sh*Uh~sr0U1G{BQDhh)1JyeXr6Y6B=Xa9#9(NKYqqiph&+ZMIp83LrGJDCpXem3wvWIq75 zpm7gIMtk3t7H!|mw)&$2Dwk8FNkI2(X=SCVxj8+slNS71^~}r?KocLjB^4-7I_opQ z*G8MJ$tb$ACHuA$3Gm|W5<=}nzW1Z!V|l&piz-TDeMFL@DV#vtUvbo@^l>XB4*3UG zSq5C8Y^AtjCtY!D5~H|+Th}>kdncKZi&fz5sEiXG3%lyT$jN~ zh?x01oCiW+n_XJ^x6|Id-_WQOj-!5i+!`x3JuMNFwW8BgV?ZF6R9+oBb{dNxiQUnc z^s$J-yag+94=HvRrUag-`FpoC5mnD;PHjzC5LrbhgJ*2@mh-Ew93d5qM_7q)%rw7s zDyT`j;Vl*pz5yZ?JGwU;kYYe4sxi0KSN;_d;AI#13AS~rvB{-@ zcjpp7?>p%4jd3trpKcUH`1{DQ*6QFB_e0RrriceR zRq}xm2wt-RY8%?JafTtlD{JUg251L#Wa?64gBH>+Kqjts8ogHvPXzrj=+{m`x54^c zyEL%RO73;YruL1NZlt%XC9C+UN{NV$zRY-;^4^D-?$6^Vg@4rjH$0^%3;#&@j7L>E z=QHse^~?8T7(!2K@mcfmF!JMV;}~HSe61e8*gwFq0i1{V)+ z-%A2P5))(O+nkgaM2sUIofbyPSX3FMhZ=a#?iK!t)8*%i9TZ@&!;amrWN^#@kMR9c7P4+5LQOvsF{iFW&(d&_ ze*%_XD@|3Redx{+K~<2cMNh9ONP}$0zxnz@=b6#CPNfu@i7e z+*}=PTMu8zdTtztLg8=_TRg84*)SVl;~Z zQR>+n__fr^7G#clsR3&YBEzzman zQhGI#!>c_GG3qqD3me33?HjBOo_s_&=S*s-M*m2MD(vPI%M;#tdFJuaQ`_rH_&dcZ zC3bDDv@m=X__5yr?w=C{XL>_yAzx0h3@_HVr#tAL_*NPwS^Ck|iOIPpkRsI5Yv(~z znsPO;4RyG-{(BFF?=S?!FMPiZ=(dS;DL{CRCBCCL00K3CPJ){QH0jrXvoLi0>eZ_^ zMrC)V58mYDkaWy5(@R;S9?ZyMQTsH(uv48_k)NiJx9lmOzto=^f5^f*)~PEuc_N29 zKee7;uE-!gClEpLhQ$h#M4R}#cCj+ii6JF6yg<>&NWGLSQMp(N+4=JU?GOj*GvlLk z)o zWDhGA<4y5Z%X_Ctjc$H<9zXmWXHq_OF1WK!iW|1(9xlbkv0JNyQ>Ft( z<{(MzNF@&)UmK=rgebA15i~tGf3;LsWc1GEN%1Q3pP))fHjAV#OSC_faa+9T-AqXI zZzJojh`*sYkmqA!9YV-%-i+m>806sG(?8O zYlOySFOIIi1chzh)SWz4c=dj*dG0{4d3+-HgpZa8C)x@UC{OkF!;TtlxF^wL%)};%+ZrxQIM)`JA0}n_^At39a$l=ZXshu3IF3_W$5T{+7G? zwRSeqG1HgKYtm^#l3}d{BOzmhvthY^B50LRdDm#mQ0c>UGXXCUm$P)PF*f+`BZ@5d zOw%866f542@+>pDCVjs3b+eW))s5<*rS^Fkx#Ey}W5V*AA3uIDp9bhU*irYi{}63o zaUo-BTiWPK8$BR?LBr>Z`QF=6{MaY`)ktvp(U+I>Nqw4JJVr)6wIf51*xsK6Jd~b& z)vO95f2GPbynMy5(AG()6T#A$SI9Eq(Zb0@?V910(0vXsqPVMnYH@O4^f&@}d-;Jl zYSFOu>;Izat)l9RnzY?u!Civ8OK^9$;4VRfI~#`tcZZF;yL*7(uE7cJA-Fr7MgQIX z^;u(Z!^OUsYp$w#OP-P@*4->2G2HQe415a~6{d+0PoOkm*$@MNJiylU!}{qQaZQ{Q z1RWWvZR6COF4(Yx$6*`Pf)Xn3Rckgf*h74@u_`{^g07Z=p@WyWS>7ziir%tAdKs<@ z!YAr0Rx4_^5QbxzE!) zGz%v%x15qnmhJml>))K6`rp(;M{e!5c6Mvd*#)wF zD9w*BfvfDa0!~<)=a%pu;jYAIOkyJDf^A91NKCM4X4<{eALKOlDdpIH8wTHK3k+&U zeflP)%p+4p%KghZhfo@hwEUTy`_;WDg0e)3=}P$3y~_^)l54@8E}Ak*Or3)IuS=@; zxxgm6KP3+c0ngGAC%obhKekL+oT|UNOqGfp1z2o2%{QpBnQZ9FJ!v`OQ*#7eDja7q z-Lk_gl=58l&>5wxSyl0WJ^Npk2#1FFJ}EN35-t@wyE2Cm- z8r}1-j##&jG!Bw3kbWFLdcZiU$c4CrayqwBDy)1BOwssq?0$T4WpN+7&oqfVqdim;p8wYe?fPI(t@B&La%*O_fnAD2C5 z)?mOCZfaEEkqDeEUwMCe9on4pR#xG!r~kf4XI?0XwL9h&L1>h+V(G<0#0;|Z;vv5+ zT^6s_%XGQNC@XALPx$q*`6maQ-A)?vMjMj4M}$htM-PoIqlI~#)L%jBr+nJ%i;i3j?kSA4c^!b8j zS{aEB#vpnFv^)rf;G7OWtY!C&IdM+#y090Ivlk+u1rL_ct+&f%E_9gAnf&(+E8hPM zM^g_~M6MnsuS4QC_MLHI>w@qz zXIfvpv;u1W;Lpy~He}7(Q`_E2XX;xg;KX#W`0cD(M=HZdR7%M8=u_kdmo#b^=(eM? zd_gW)osQvDMaXOk;*&6DRm{&cE5h3j7Ppbr#ogbDs}dDGHHs5wFSorm{54~tjyuUD z?ULZ9vemjg!P_t+^`Wh4$$2$9j64yCj>sPa?yT-tdCZ;}6}Xp{k_kcR5|hNFi+|Jb z_3R+d2}&zDuIOHjqVEIqUh9{SQ75;-DQJFSn7twwBtH(ZASWJgAPl^0_gMy6TF_=l zaE0EUxx{EK8y!{2^{Eb4Thr;my)mjT75?_zb%A7WUg#H`(khWn>Hqz_p*n(Vc_$Nm zXA(RzwJ+B(hc48Oh@~5rzqz_5-Q3(**>*eGq^$|@zqysXpn{m$eLm=k%R4;z%_|1d z&OqmpV+DNao?nX+wfDG}2;I{R6!AmBx*vVH$koDt4bY^3CM-~qJ!I5_8cTYKns*ap zPzjP#_L8OWTcwWze!v4YOG<_?DA?wHi~^&|L(CgrE6k?9G4&UVn2d8Q>!XhG zw64gOEMhDO%`#Lo-HkRZ&@ZsD`~HI#e*H`yC3t}}4wvk{zv~URnf77f$~VxOqYesj z2zT^LHk2PYy{#=wgl=>OO(Oe93xspPDbIlX*;1JmrFS$3Q9G%c6`aUJAMHmB+6fw@s9KhmH}aaUTEhbRt{VcH9=Ni! zXCt73T%i36nV^2ANm`FYF5X)9lUeL%R8C4;lF>Of62K4gd6f-pg=6*WUMz*1a|TjD zt0H!UniB%Ui*xdA%T3zxYJ8#;3FF*^1vBWD;ULl=@(Fp$h=Ddg%t(d$4iOK31R^mB ztOY-(MyLVNeca^iRqdHxbQy77&Fr{fSFGw$n^{P?BiZO7+`cE_*F>O$)cL9?MOhZA ziqg}76d~}cxqi{z%}coRE{wD=h59+iaJ3j0ex|Y?a=n;mqktAU8_j%}ib@Nldf zAZ0j=;aFqb=@(0M%Z;1xdmXOj=QvJ=iOo!>n9F8~D!)}RbzGoG0=#TuR+u8cd0dkI znu6!)Wtbig2c0KaG_Q?O#JIWMl8sA%F-ipK^l6LrW z^yyfU&fScD+uLK!b_@r zk=*=dSjFi?$WEv!+!{z~WNhqjP$R8^)iU1QQ-uz3XC238(J@ySkas)jeV0-mp;f*rihk^;}3iw$HBIu z;vwU~C;VI(*gnD?m_9-T({LCLu>qDAtabKbqCwuM3fs%hz;*3m9X&hdtgSrXJHzu) zkfDjq_bk$wI+ZA-UTgblZ=YTC6KbB=hHB?PM#LakD`e6oE*NW1h@2QSY6&T?XZ?x; z#-Z5mBzzU!4)q|!t7)XVqm_H90NvE~9rxV*lcN9l3t@>~mX4#!CDe=^6G+{v1@%fQ zS+NAlofpIDuzzcPcuOvH{hA$+oFM?qd`YPK&-FmPd znVd!piD(Y`H(m)XA<}ZeeSshHu#FSYTJSfI?^ow7qVKeAXxl0Dt>DqXlg77q(-jO3 z58f(QeFgt}OlMx^efhBn(L$r0PW3M=n0NjBZS3o1Chi`Jc9*YPc+ESLtnw`@MJp#5 z&=4nX87C(vE0dmcUNJwL`wkqqGFrm>N78Aw&(0ZFoQ85bHO~Z@*OvConI&ll@>58e zVjJ}`4bv#V2`_9VxXCW;BjK98Cj4Z~g2)H7a_9N=wNq7OzY$F7ohYDWb+ny#S~~>4 zndOa`^ojpVbC3&CK1OvGLzUx2VUt(00Ye`G#;+Earm~R~NdRHQnt_yA{uVZ-$y~-> zz%1Ljd5t=pb7OgUnGjczG97M;l!3)GK3Ol;DZ96ozND)0`ZA%hGN?wf{;}>YVWR61 zakVt|@PtCZPwY5_xONgWsDDSX#1$j@8f8EVYdS-eE(pPVqJIGK(sK}w)jFc$` z25Tqcz|WsMH8!$S^}d=b`R zM#;l4*KVJN-EGCm3I9EHn(YTIF4=T4u@Jbkzn=o!81b-i4u}?F81#rML-Sq03tJsV z>iCsa<)*q)l)@KIA%@TL5=~)cfx_$L=V9XH>rekY|FU%RhO*;ykgf@luB^cpU9|Nq z*Z+J|2_is7U(d^@9@GxP@<88=^ah<*dU}`skK0v1{sJ>C;W56S+EaC+T-`D8 z+5&uwmF6)~tg|?xHYZF&Syk2WWaT6$>@~4${Ji!=>)whvLKCmAuXeqsj%EyF^(&_% zTM?f+(wex&RP4YFHrXA%>eZ_%ckSrVjoWCk-P%g#L`SgSJ5(DvTy)WOEgLaxkq{Qz z>11(PK80!@O#AP5R@hBuSvs;bK06rt2A-(M(x9|Dl#PVDjlVhGs<=H;RNg!vq%5|% zDYFcFd(g>1jywd1ec~o;W1@@hhn@FXE*nVAXVL#dSl1jEhx4%lx+qDY{!d{d*vH+w z|A(=5szcoj${}SsM~jbpgLEObnLX>I>K}U2cCS+$_81bD!Q5}yfhQf}oCmV6Yc!5; z&l>nAK?W_-OJB}+=xd3zMs2Ooii%dx0_c9rU&RI8ZJ&H}{d^jPif4YZ-3m$ z4(O5%4TjPh`Gw%w?=cnSooQWEX*oF-Ha15x5WEcCr<&Lq$G-ZGcY0(lSTJV$-bwhU3QXN|NNRz21Qt4=FMxE=Bg1V#1R!uMgReMx9$`R zduBRn+fUBztyzW1e|{WOvg}g^I{9cWp~PSl&fjs;JkSI$37vDlQLvRVvk(3m3{KXP zG7v%|B!^u`cA7+2U8Z?|9o^RKcvqcI2E2zYx`vITnjpAs3ZJDHTctA&3R% zjX0J>CK9)7n0lIp2O8(l&IE~emo5(Rp^kx;jALqlAq;C`fcxdqjG;10!o0@^EB=4C zxJ4`8yuy0ugnLXP74SJ|(BE_hjaW#>>h+vws8NC@+w|yNFd=Xxf6tX&lrnPKFd5@2 zR)C~g(Vc)Xzi&ER6JPmH@lRbc+b0GlCW|Kc#3u1W32_2Lk+sdCnjuv6)-qV&&L`1f z&{aqu*7t>Cvvjw;93*ln7_)CgW7P4%yW4I#sKU+>KkTi75saB&$PQ94s*lb6%xD6& z?A_=pEvm4cHpF^;-*yh}Z=;C`0y8ZpCub1^(o{07L&sg&e|7RwqMiRW5o^y|R+4}G z-nX|#ED28qiKanN;MYTI>TQ#fRK&Z_&vc%x!ftL+3Pxz|Er;aEKS9{ z2@CEQ!;K0Vfc)9k#`|s#Zg06>e&lp^c2WqxM?2?Bgj{KA9m4id&GWYJ zF2xh7$ET2N0Z!?X_OCV-O5RrfoI#=S*&T(4_d8`2&67tZ@d z#mHGX?4K_NuDrO-Xb(g$J}uks_8-)}c9pA_|L8_{!M?5YX6wYe?4~Bp=9U%*5N~Ej z4LCg_o(1Xf#;Zjmn!49PGnFVwl&gILR~$=H+onXLwNEkr-2BE`^Y3`I5}arPWlPn; z`9mzgf8@+@!)h2x#ZHr>3m{F!FIuIWF>+HVIaoPHhP|GNI$8JI3r3NX!PoT%b3ln6 zVz-?`%ixF&lr?b$F9IR!W!41LqfXD$RE=>I4OaFmOV#mVm56-n?+PT<%j~V^Q2|*v zf+Ayeuq8VAx&9wKbh)7o-zT=k>QfDkVwW%lSW6rDp+RP9dAg{+bc|SuB@8>HJ#!JP zVA?9U0yu1%``+3DD7V0{MT4Jy(R!HzoKxNlIBf~A`bWhw0w}Q!IB41jXoFjsl02b? zov4ch+n+lE8gVMHUiTpoY4+p8MYR1<%X1$1RPPJ@-H9V%EtW~VZflO6w~rw+GVrnn zc)6P0(NyE@PIn>+N0Hi`@#k&VZypvqzW<*~J>_I#W@CfM^XrkLj2MWyoL-+j6DZpT z+Ei==1z%OtOdB8%YFX&VF1hkRbNJ?8327RP5=~D}PJUZA6+aQjK&I}U+tBT~DCi!I zUYke}t|KPuG=^KYFFx}c?vHcg+Y(<-tH`h;;qCHHuozKHz;iHCv3l^Zz+`AiIhy5I zOjbFc_7l>4GQFgyjxJsp=M<|Z#FYvRNU3&jTPAWg&zmSKLb1}UZ(A%%?5}LbIL&Y{ zsoFV8alj{j>X-1=#VB=OC!k9BIo}O-eOd+Fohp+krDHlhP}Rj%S5B|A3+#rkqjZr zdQ!}H<*X?E=K9vraL)^?8h>&;OMq-O#UxS@tbyN7Rx6umUlD!n$g(={{m}Er<;EK& z>=n)ZsCy022s!xyWz{1F9hmGhJ?rVZ#jrIjh)a+H1$R~j4BQeHpUFg1*;^*_gOqV7 zse3=hJwdV@lOXYUoObb9QUq9%~)|0_pI4g%%!4Xp|I1J!1xbKnHdY`_pTdE=KHAWs@8If;mh9 z*x5QsczMCT#j0gxd}_+Hib_H4_U>+^-d2}Y!1~19#5tRBEJpuHMFsXln=9C@|I#ON z?S~>aQ=6}6cA&~&?s=(5T}IOJ0hJhSdfvWzy8{1$2i8VM{a9(EHmr`-ecN4@cxhag z{irlCe;>nQ%Q8OJw?Q)f9CM6W1mwU*(r~DSyC)92!J7{GTIZ0;6*G>}^GS+JEH6QP zMEM;{h)`y^M{n35S-3%!RLG7YuW3250ys4+Z5q00Nrvz#>992>%jU3rxIAnQOs;Cf zeUe{~X4#%^q4!lJf>R&|+p7r%{>^o)qh8()Cyz6<1LD4$$FMBB>JE>p@_hsaQfw7c zCzMCem==^H=FGUh;@@J`rdPf9ZTuxb+$Knujgb|0D**2^aUd ztt11F{nr&yNZ(c?_W60{ z;+B5B&S-sRGr8B96$gHlR6%<)1-@yqiJc}IP*TD+0GKL!+`d=bp1=r>j-lZJFzU4r zOdnCeLB5YT1H%04$|uyw>Jh??LN;#JPibLmeQh?O715K}l^hw@4N-e-I9XD|VhN6} zcYc-7Crmiu;A~}a_K3D+f`lC_>GWX5@yP|hd|Hp)U4#_(P{P7wQJu@d$*{z%xDZYK z<-@uq>)OsWv$FZk?FAwJzNn-&9K>cNKDMaOor)dP+kwIlruwg^1lKJs%U#ac8D_(j zJ$z`B+o9r**`L)t458Av4eyBwv@gIq+rbk%=8RRtEw>tsR~pcX@(IJZ;muyuXL8`HOnQ)}lBN^&*a^!J^mr zev%u)RGPflA<;A6+DgshRyBBfBsM_Ie(Xocd5YcG`;!D!s0AJEH|^2fb;Z`R3aMx_ z45|$&oXzum)0w%pl%7fVCHmhi-&OTN>G|O@!lFdxHyyVX3*TD{-(+B-^MiwClsRa+ zvdM*yNa)-j)p36uPw4S?>?JVId=c&769`bvj`B=(1MlQZ@GzhP++c;Oza3@6Vfl-MkL8NmWJ7F)zDQzsGV0?HU z3)-uI(|w4&)6bvB;^ej~#i0>spk-pOh!e4~oF#B+^))vmGbeh`M(YupiKEWNYTH^O z5eWNw>sq`;N_&!FM)f+_=Rri#9@}NG@TRh-s@1=)nXyDO?y`jxT4s0mj=oB*YwS}@ zip_~sW)ahaVsG|-bh(;_V? zGX!SCBJ7KbmfY#9OUpy;7$la3u-wDv0K^PGm|_A+46MJQCc&4>lKqgJhfTi@a*HmR ztVt-Ecl9}(Khj@4tY5Nq_B4fMz^<`%R(?vjC*z6!T$UN}Y z;yNtC=Kw!_{ZkQ1cubU=5EOcVgA1KbP>`_d9dw0-$WR%IezZc|NpYd*CzP3F`t+3Fnex-Qfkm;y-w?OvU?(6RQPs4PS;_)k{-5cL@p zv}iZ1@O@92Ooopl9VfQkB=5&S2(4=UEnr$y|EEhh(6xs)#41O(%`?b54<2Hkb%-8D2hi2_J&pG_!|O@fX4j{pxacjd(S;nFODQdDka zf1esCQM~^oz{FOnh>+7rN|yEBQ8~!871sC97_Xer+%|`5ry2Set18DZJPVaRLG45# z1~*~dJ~FWmS19HY$_~TDP@&Iq)+0rmwwWmkKeB#{0=v>Kp&~;IBZ_vOS3+!3g*l^W zQrVQ5ZF3oIvm%p+<`KbBw2WsF$%_i9ZxvUC;}JQ=BsBe36EVY#RA5~v&hdf2#;LY0 zSUrJs+Cyde^q>zb6bhc6`}pKq=Q6?=T8y^7UZVU1nJDS`q)8~$LdzqxN@OlNdJyZ0 zTWD#TtoCvqIQHi4@3X-2!%?BBl9_$g`9JkCg^9Zn0HGk)zLp))q?5;qAASF4@fSd# z=;&Ek021%fQU#+gO6uFj7^TP#A)t-u@ZZD6<`Z(}7IUNZg}*IHgEld9?xDrt0A$8s z&f7x{Xm1qz^@8Lr{zumo01^1{<9O&t6d>*2{n+dA)N2%=?DhT#(+n->ZeTDwdJxH# ztq?MvHCeZ|&x%8eF@*Gykt3kbfVM`d#WZ`C6d7oVJ~J~k07>WBfIRwX;}2~;g}g|x zy9*Q&d$#w!b|fqi#nKbwLNEPKaglDBuayeSegs3j|`^~*-Ctmfx~TqUMG!$6CJq(+e|u`z;TW#%^! zhmrf4A2~CcieD6`P!wFjhd_}bctv`gPoH!){$vQjGEw@M5B%W|_bK_L{NKG#SBmWX z{Ck}_ldeSO&D+#PyFIWZyDdMCTJEzp9*C+9yM(HukUv7bUMszUg`fL`ci&I?(1lOn zVK=ekuJf#D_R#U<59jUettAJ3zmovArtZ;U-C5&;P7g;}v%>Km%@gq7wME@Ahvz{D zppgp5Z$B;r(3lI5@Eu5lD^;}vAe;6(jh6`B(5>J7x>HzVpji|wgCzbW%A#jBtE;5P zY;m?$X_QfUb^dZQxs_Kxc$XX88!N@5w`mv7&Wi;znQVk?5c8EbdSHdn5bR-dVHLrR z(;;pos&1FZuT=xO+14<4x;;9!JF9PMkS~RLd_fmusATHq&1~`O*DkXD?D#ebrun&u<_f)7WBmPajv(Tu7JO$rv1WSt-tIn@2!kvNz1KSg+V!BD*i zYIDNS783iUsQj=YV(%z`^mGZ}b?R$tMG`1o+P`Lk{!94)(11MvZv9T`P?H`SaY~>x zc5sLlm@3&?XgCR!&hlMYzNj_&cjKkT%F9dK{qG;W9Gz|zjxu~1fK@s_RPs%~xp5V` zt&67L2sOTvGYVMJtCd=fH8i7ku(ZpTP!dcO$fATByAI*Ygnjq&s6THpD=tEE@Jmq23gKqMeh zFD6;Awi~}ky@*Pw2mAdN^$~hWtUpHL1h!|^GKZ3p{so(7-o5_!0Rk+5Q zl7)5I|Bb-Z*!zxsmTXb}eA7dNR(tX~AS8KO8v5(P*8yNP-~ZmBkniE|-WdRF1jzDR zZ3o%!$csG&!v_R_`C?{g7Y*=casW2&tR;sB0J8x6cN;0jGz`?<}AC?vZ7>)wK79|0Ib*yHZAlu|XK1{uB>u zi{5G`bW&^frgEB`cq?N%Znud2F(SW~l(E;V;}g%}h;%`nvWCoIX-F>?F&gB#Q6&A} zl@zLb?%-V5jwZM*?anhwD=u1Q+&T?xhDr@uG6ka_)I!W zOuXFI*l36ZsR~=SRW!y<&eFPZQZ#$pJJXgj=d0O9qym{Dh+ z={as8CQm_~oDq}9fsU?$u{#Kgxx5sP0!EcKpM_ijvAMF3H<&x7cOUN1u}G8y!$&6{ z!M_QHJ_cUuBL#hi!Wly5H4-e;wT;}*MCT8Y_`ubiVAv|FYvKDc!`Le+4RPcOb_~r^&I(ztP95FOWbS2>z zjuNGuePGc@W;Km0M&rUP{c@$LDH?POq3H}hFSx>43b_?#)<}mEYF*rKA3fIg|Gh z!Cz(LFX2wp5q+Zs1A3!dXf_DPv=sV!1&qjyl&JzG%8>0dgZgV^x?pe~{++erDZzZ@ z*9m?prUmQ&_pIL#YLxxVz%0DW1`hP`MabLR+Xo=^ntOVt0gSC|%?inq*{!@#;`gHm z+{brDM#e7;YFUb*K(qwf>V@Ir=BA6-PR46wK`JSx0K(-SBNjWs4$KDZ^5uy6mR~na zKq~oR+(Ia@38(7D#g~q%qM{;`$0@+PA)Ga&p0T9Ysea?Qj%L0~R>N-l2VGF^vaKrC zfQx}0m&7w|%9w0_57T7Ar0G`()jak2%R`8frT&5NQB6bTa0XT!doe$E4~z2-tNQJv z50t&_a`#}EK%gl@3e&>Ym5_{eoeT`QC8G|&H}6=cI?wsYrVY}46rkpR^# zG3Tf1$KI+EqYkkdFBT)c3~kRN1|N(`g&~`^*Pn%=llZ8>;QL;^*E8P*tMVKG zHfpng=)r6mvfBYwu@0f|{&HI1;K@}N{GW@v2{jk2I2Z}@tI zVH}fHsefgJ6i~q&)zY&B8J_PlD;;sK}{;*4*g5qp%P)3feN#YgvfXT4h;RQto zy=>X<(>{_|qIJLi$|YHYDi$9t1r)C%od_yEfcu}EDg)3w4xG#&MEz@9rtB7;kN#t; z@a?M#iQHH+JA@eL0G}Hf8EIJs$Zh>LXBaYQ0AI8XaGY6$|{cQDq#ftrxX654U3av%~J|%qLIS$Rhvd+)G)e-zRAiLrN0Mic^f1E7duWh`n z9lF^tJv}`=4;Vhf#0ovql00w10+E}ot?d^E>qNh!<(moo+Aly!-Ui4n>*+44%zrr> zXIkkv_b7vaq8H%_6xo6HAjIsFw2;r$Ex>}zNt$O&#)8|rFvb2mbWqnv#>Q-{kL_Yw zfNaPVP${Fs?-_6l^jfh?e9(p2B$A|CCfFZ80-Nu~?M!)})fNAv=2+Ou>gJ7g53o1? zyN_PwmQ=Q1XGs>{yHjQ4YXPNq>$JWlIsZzx4gDo#8Umb~`0=Wu!slgR@vnem_Koi& z{>3Oho3&9V<(f8)6<3{nB<`8hf?tLC%sGx$z$u8a%i_JSH3y@X#f zB?NXj;WQ?ymoW;V9OCOAJ&&p?B(hR?D8+b!?vervKO7PgN8XWkR70m@@gRy>)n@ZV z(Tzfpvx}J_`1ci*-}bBKMkYuRZfAAJfac1newK5pe^89l!^2j^u{}ASks|vBu^#Uo z+7xiwz1>lW{?X&8eAu7VkF+}@fyLUWAybn~B?hC&Z3>PR~?i-ebu?ugVvD3Q;f>`Jjj&$ zF%FoMFs^80!P|c6FWw-d>0Q+6Xn}K~>LyGQFRU5o6WQ$SlaItga45gxbEbrsL*PS} zWtXM@G<3nKZ2>PPndu=AP)^Y}8d_0#*Yjj;Kj|6XfR%Qu>XB%!yaTgKEHG2ip z=jvH~WADMj6H*ej?oijLW8!WV2-V(7`iM?i__3<4R|#3mdL8dS;px@)1T#Dpbv%|# zVc+bH*OQGw-7$c`J!~O#g$EG0xUo6RbX1e63hG{-`;DE*-KaxI7j(0~-|Boe=omgd zJ$1?PuDXR#YZ;W)uqAKoxO-1w*td-J_V&6=9s_fAC2RJHW_VrCV_oBbHS&EP@*M}9 z2=HEJ9~yPk;zxX^_B$0I2eLqFv*3|i?*VVr1x;)Y!@W{6Xb=BSQG$DxB9#Nx@7&mr}30bh83>F<3 zz+BmL#`J+mOdZ*56Xa<2&Ytp_B(AWox_hlF|2MbZ>F(|=;A8w!SOB_RZ>rFoUthBj zKJeT)D4JEWYGHqTA+BjR=5H>K)(>$uP^XrSm`SH(mgk^8+p$q3A4BAEYGmopBIbly zIdc7DL-hAfxe5OVq`!xjvnzb(9$S62WaW)nY_)&7m3_w|G|Mj%mRe8fIvhA?NPm&d zp=@%V!u#&8*QU{!c)?IEz_K*wb^vYX1ne~dZhl&3<~M8Waz=`%9b6kGAZ6&)8KW8j zG-x~9>$R*fjjJS0qgdY|i5)jp4oqVxB_$Le|`i-l_22Jo0s$aODS;Bm$Rc2%-Bb| zP5Hq|J&$)wsix~b26SKgo1FqE?Rf}4`f8+2~7sbp0nc#Mn` zb&}11Ejl6gEqa3+T73c$rdnB<@@UOC~~cwA_CCm??SP|h2k z>@y+q_@VMLkuP)BP4$GA!KCD2uDM_(dn^&}3vxLTEL{RHPJgkPZ5IVInfmBducp0e zXK-8}B03dH)|4%jLo3~RcqFZ%Yxs1jm3c|Vm#Hsk-2aT2*4$t*n?zmfbOv>kxAn8N z4@(LkFr-ElL_Qp0(wW+&Wh&cdl@<)tc&>c;!aVW!+L-C^V37kg5gp<{*`%kKHsg1c z0`G#TfhU!j%MPahOP)&bpg=bc|)1uo`Teg8%%e>&=rNg6LvUugCmnu5>oECtIc zZ4Q3>*=>&AuL~R{aCb?(larG_jHVfVI)Z2TMI+k_00!;W0hM+Mu#?Y+DPjSZZuj^& z5~zks^5wn%_;ojeN=ee|iD>l9$K+x@hryzvc){QEM*cqGpqbFH+&Ayxz+M{EXS}DzX_t#Exs{ z6K-PY*u-aTjoD~~Lt7g$|41%STB0eq-BLM;GIb=vHPa64Tcd3V3S&>9aw z!U;tsF$YWo5c&fV=j>tJKKrlo&+4vj%ZSWm9XtS!ch~Uk#t_J7c+2J8|Bn3umMZ80 zj6bT-J*nZ#KP?>tgZ*%tY}&P!ayUX10lJTtpI!jW-dVz;fk4+%iL)nO;q7N^`YvK! z3fX`da&@eSa+xBPUv%TJ5#K&@Z##dICFsYA$zUSl?@v*SfJ`cSeb9wyL&U*L=Ts=E z3qD+CP*I5<8KJxV+7LZ|4Y#&~ikXIlj9c{GI)Ch-Ywz1685}x7a4&5zRJMNg#jX1@ zQmEn-$g3!{km%Rlp0DW)<*Mt!`ivP&C@2l}^>6i##8Rg#qEgmZsYk)T%_`BdA8c)q z+fBJ^*4iUyuMiC+_=TZ6;G{+pm3(xHRF{6hX6b-2D|sp-K%q`MuA;$g!xNNYP48v` z8dCUHeE?lKm6MGe0ui!`OJIc$pe_%mz@QNhr>5607*Jv+si00 zOU?V^nFl!ZeIVAyHGO{rz=$Np7*Zta(YzC60j}GO6tC?-8}{8N^6U4)oG0*0k*pzJ zor;|X2f!w~cfkv+%NTo?ZAE_NrwwwPMD;udWFlKLk`5{%ZFL)~RiOI>>7s74Fl7W* ztwMDv*3WLVW@s6A)p)`6o<=fMwa^DXsA(SY9}T7-u4cnPw0rU_6nn~Y;)U}5DP)yZ zEjnLMj4M%*%J#&IvzmA=&ahLayg(+b_u9U~p52i}Qln_+U=JJhj&%1lhw)vPOY=q~$zE7ZT+gH_shN1;t$3cH-nMdY4 ze->h9etQ+Df}|;R<0sKUgTglhGc!r%MF}%A>}>e@Yi0k(B&&fhv18(i6aBau=Olsv zp1tGWX|iUAjmgzjLSWnV_~c{)CA^Zr1+>Lv=GN{=A|bDH5RlXavd%hRznTFT+^zj9 zvG<&p!9Uxk@;LnUJ77WRd!7hbTf*C<8|~FOd40_RB*w?b$7>xnezDn_85`$e#r9n- zMAXKcY)tY3^I*dU?T9L_=&tkG&O)-kQCTRMzkm7O(E;g%z-IU-)ZMSEk4#2UH%u;?iDh7y@9}R(Z?E2bFP~3txIQa{4X8Nu`(4N;WeIJoQaZ`B1SUr5 zZQSBy3p*!IUb4*`6;Kze@G$qP%7brtK<4O|g^CtPrTVFSzRhxUhGKM(CNEUc&zvCH zh!YyxqvuV>qh~FnSvV7>_lum->n;4C=yH82E#|w2+9jI&?b8MeTB$Nz1aR$u>3v>8 zZ}nVhGMU$H=GTCCYip+N`+J2G@RGoNmM;M&f1~H;HGoklhKlA~D zB$oFeH7g5PUd}`)F>2|J8GIv8?m!|v~Us9Qa~H=*+`ms z=(Y|HW7bkn$h&Hk(*O6BU&Lkn%5I`Jo-Vxv)p0(a3V#B>)1Y@-HBt>IFETTkszE)S zUH(Jyu`aslYfggOX5w~)wA`H|n@ik~`j`0EYr=44F27PzcJSXWqai<=yxY&%YqcPu zYs^fAY1$w6&$9NvoKb(Oi2uPCWDmY(2RD(%oc_ay&Gx_#H*uV#5s@Qi+}8TL0pc24 zgjR)XVU)xZ=U^2#v>_*SQm5>I=8F7(ce|FZ@FmJi-Fx|NCAIvwE`kZu`8Mup1O4_L zGcZ&F>}$CKYA4ShTUMRr>Ha;wymr(21;PST>PxJDPTbOXbgI#c z5G|_q0LTT8|Bj{_DX`c8>Hae=wxe_2 z4fcU@1TT%}1~|ueA6CbK$6F>_t@L@7h2-L|2%`znC_+9mLhu3t&E%pIN^k)!m^qM9 zLf0w#b3u--rtVk$im87;3ufhqGyN)9HF9#fkZr1jItvjauRIsR$0Xy%V2Z@khTGMn z>14c&s$y5qEO;(nobsVnI2+jtQHB{?p_7VuGV+oJ=LzQAjyHG9B#&p<{zyz)QDiMh zwb}fkIdW6M#J7O4$U1u)>j>P}PwwKHjO2Y2BOm;LK!dYl0Fh$c0A7E_Ser-edV{KA z6s?2-f;l5K8E?9q5iOBQg+(hS*U!I+}zR?^L$DIz($>TpZg&|(mWsL zywWY`0`*58*MC^=xm{oj*8Y2ycPN&GMm7P0OwA`PufNm8=(dzoV^I$-7qIJmS(C%B z_5c1z2AMa&cWZS$Y6#u6O(h+)H8#G}HQ!YdP&0dbFLsUs2VT@zb zx`3v-@%p~`98zPW(Hi~7+>v@^aA#7-Fg+~x=c0*-O{2DOw1OmU-Gh3)z&``JMo`$; zQ&*!DIb!_V--`0@+PZrv`Z`$fJhsWxhI-!)@8OdtnRaDk5K?sX6LP(X>c@Lyj^fUK zz<{UYO=}WpeS#hR8{XVM&zP{Q(`?MlOGumx z&_bciq>IoC#&4b=#u3L8PRD=|&SM4@2=rE$0BuAd6zndJyEVkSs}R!gmAoamzt{y< zAyIf&mzxxz(HcI^q_hG^q7SJ#In3gc@9T&(wY0`gBAt87l^ISMMyV1hJw+9D+SiD6 z11^7JKJTE8FUzI^XjN=m~1xn@r{Q+`xMJcKKrUaV~c+bd&0 ze{dqrP^y$WAewMrIMkXwbPm)VmFbwphF4bdKhmGv|Kh4dB?P<|YwnA*5lLCiORZ&* zvZrtItWh$KGLC))Oq%3Ts)TAzb*j!Vn{7+zX_GRDJ(W?MliJdp70e4p$uT$+|1WumqKoGtu$s!kr9BQS0MuLMW*)@OmJbA_f z-2V18pxFV~hG^BKi)%VsV{KIkNSK)L9oz##t8~Cd>m)~G8TR$nhJO9I<%--68aQ|G zdvEeOkUUfR^5wh-^+(+M(qiAI7T+Dz*G*JyeSJ!WS=D>&?HXDgMtd4ru`10zUA>i=WvE2E;&+Hh3_Y3UAWknRTQPLXb;r3GoE8>DLh>F#bM6{I^PrMnyM zp7Wh^@13>y!(t5+d%yVvmITyto}z&{U<(xUJz%I)HJ#{JM!=vNGFv=4P>pPY3_ue^ zEZ(e}o12=tME7Em193=RH#t)7#H29>neWW;bLmv!)e>5ShlAZMsCd$rna1CSlQ70#a~siI(kO6Z-G|uucVD&aQ2vM!neH!RcvIJ`1gS+0HU8M9P_W#q6)x*;KZj~n z!(N-=6IEJ+dO^(>_KmhH54G8*2VvZfObbrio?LpqJM?>k#E7lQ75}nA;*aq;*yKN9 zY@G5167xqloP7$qH6s@df4b(Tgo<%;Zc~^meiO6)s-Te_E&B3_iun#}>uw7z@FUKY z#qFM|^*gNf>@zXv7ZptZ#dJI-{|G{6^-|~AYU}(~Vn|(QxY2CZTitTM;%&OMyI@Ql ziQLaW5!)~8Dyp3K)S>%q^nO;T8#-vWNiW>fL4XhspbZ=N8fCnx?aZW|Q0&3A7|z9z z8+N2^4KO*-HWU=)A@JaD0a-6*MwCth6yLxP06IhggR$G&+fG)*tqQa}2co34nr#z$ z-Fn)vK16PGUV}oq55u@;_1cH-Mk*Jn(Ve)YE30Zj(_!Q$J^YpgD%3{~P8Q}4F6-`A z=(?$*F}6jYg^&pi*euVqKFPum$OoiDBrckz?b3gF-EChn%oS1S%TViyTdw`WpZwqf zteQ>k0_?YoC??Ar3GNmrluL5flRr7aP3?#x%5#p&kS^#;@fxV_9E;Uo^x%}=&b6@C z5uEjJsl>5^V8-d6NIkB7Vfsy$#Q}4V@-i#R20@rCBQY+uT^C%E-9H+B!cS@brn_(KnMzmM*ScqhV!&DT- z+VuPJob*#EJE03$hs%8}@1ra4XfUa&0&-}!jjM1Oo~JUPQcOurH3kq-4uzeoI|_dZ zCdr&J+Dr|2spE|lP=y2IhCD1=iQTn<0Yr9oc8V(vo{wNrNGUU_joI(OYuK_qQ6hPu zK{u@|;8N6Gg(RtGg6{h}YnxoQ^-ld|bfJKe(9vMm=C2rOy0r*atT8G@qCP%|x<$^J zmreXToSNxU3=Tw7+1Mml$Y-CVkS zS_fM69!Ilys`{vnI3lH@5t63mpBG#4esez;N8Z+re_rVMv%W^i9!7+BFAmijvt6NV z2Ilnn_~Q$|)0JDe_&%@@*ZWO?!4 zVzSdsL;f^tFLm#ya~{i8TH>s6AwH|@nx6jUlKXpi!T3<8 z1lmGcQC@@c!ee8Ecl?2$=k*Iy@QQ{EsqT?SY}sR#$siMt)HF%Dpc9A1>^s~o)q|&& z@v?br2X_|vzY6cz@uCzZNko!UOfCFpEDIk0aTk6K zw{4xa!0mR<#zW2kJd(qEN=eiar4n1a2(l;>sGkm)0t&4RTb6}p7h-9UcY)6iv@%c( z%_|buuK)~C2J@T_TBU=vsSzMdg9aW{Gfe=CGY4E5!0eEACbuqMzar^SXEisn8MS*R zd;UpXVX@S93vxt!HmuCF8%DxqdPa&Q#|To6NK7XE_p?(;x)*X`U=w7aYRZ=zeYET< zU?8?M7i?3UYm@u5`<@rX z*`nrT=BQ6Ca$5EJE4u4VNOmF7i$5So-ARQO7>zlQ^+_B?=h)|#*2&AuU(?=r(p~`f z?pM=l@WobWAt9CR?fT6|nUCiMO(%VX;G?r{Isg#iMnDDtI3(-xrXXOj{s(Fu3*mDP z1GZ)1lUAG&thz39rT|70ukyegWHfdon%=YefJHDCY|b){NkA1bHA)uFh;_YG-b$vZ z0jqaHv?q~_{e0r(`&VgyYX*0v+YW=>q*$jXPiLf*`A(ngQj#C+e2{d$*sM=BN!(iY z$=8IcAewSGVEJCg(EsVlLeu^;8QlE$DLPC6JVdUva68u28 z?7^~z_STVs=Kxh>_@zCZzSjRck-XOAq8?3y=k>o%+xtGJPb<59d}B{0Iiv!NnF#6W z>A_oyrNqZ4QO%R~YsIQ!9d<4W>nJ9KBdl2rv$z+ew0?8v|gln0Ktez&^_Mv z%jg`*)sJ>}ABTOF?4rhLiILQ2Kd)=$DzRWAw57Z~k`k!AA0e+`_oZpredKkS9DjPk zzv{Jk##|}>lJQgH7jjw~d*t*lDw|p%KiBYXx|=P!VQg=AxE zMapn6dsC(FFcugmFg^E*D0sFk4rdjeK1>Ksy}%}8>NU5pS}veQwRamyW%3x;UD^$X za~#{;4=SLY_JfzjddnuwI1tAJlO};DLjs-RE3DpU)ZyZ?yx2+-4Qj9JlmjSqCSdFs zuX^s@#&%(^tNjt(+#nua|2Jbx{N%6IgYfF^UDvP1!hvTRD0j3Zgg8#Um)h2eNl9+N zwHiA01P~FYtzkevl#UGmNL^q^4y_${gIR;1Fw-sI@AwgDlLItg6qX*YNj#E<^YiD- zXiOrMYI^d^anyyfG8>H;za1jH{+wPE-g`I;!x*>Bnz?q|Jk0x+TijUNdcagP-PBP& zM39oC72rrr<}`kmTR31UyWm3X@0#y>a?;pOKBI~y=Skm_&9Ns4iD>wF`q+r#E4LvC ziDqOWz_yI1Yrl6Q_73p1NJ#n$#}&Tv?@+`i0duvhTB( zHtY7FU+PTc`bf!%iHRSn9!5J&i)9I?O-M~mC~$dCSDhOza+WyrX@jsodM#cQW|*$W zw4Hg#Hzf1?;FbPeD`pwC;eBf4MP3XOh;M&)qSx-7ClHBnsLUw5C@bmyZ#}u!As}eI z^2$WRjqK#1td}cEuW3Vql>gWum^MsVHXT<%IO;hKtrT7F?(VLfK4AM%p1_2y^N`pN zO7imcq8;tR`xV2}!Kw3a$(om=eSvbw*fVdCNr4X>bT`@`MSQ6jIYin6-J?rRWd2BAd~XNb$UO zq$UIWPF2)lx-3z8!_T;vPTuP}o$V!m>Jhj+S7FLb`Hs^|IUH`Y2f>|}1^#1{=7}@X zWoZ3j#5(o%gG*%s9CMvLtkb;Gan+wbUq>S%K6z&+hibeXvg$-J4J{49&CNr)!g#bp zZT;Le_4z$KM6V9Cs%iaQ@S#0xW&a>P8ogUk%%;o4ZA&uGvOZ27 z{GP1D%c_}x*vA)R(7~FiN11HAxVtDkqaN7k`E}g2bgWP7*lhr(Gg>(&TpS!QjmoRJ zYyd4h0C(SuX+3HZy9hGaO66&y^7~l|dAeOUTl~`N^yF9gJAoK}*QaMlqaU%IVjYH9D=A&;d>+#c38)A_69Je*yHcVuqwQ~Oqj z>U2AsJo8f(PMVV7Sl|48u}oL#Hz-wob1sdRh7!R9-+KGs0irlCWiGmRAiDU4y9sV7 z*a+n1)Z<5B8uq@i)Y}mzpuy@t$RSW;6NqST?3md*0bY3tcAo2mi*8%#`?FR4^yQ6y zz^|2!pI;7idcfLi4H|{yd^uY$RTS65O(DmVZn9Ej#X+yRWqWwHMhktnEIUp0;eAC< z9e-9YmrB3<6|G?*bA>T-G_PZ~d8=bEvj3MuN$3la3Aq`~uF!!B$F!;Do^%^Hv%DH!%avPVPE=C!Bdy9~zV#G7nat>6VhSPjBey~iPD~^iq;a(0l@c&k zpp7;0;4fJ|wk5Yno)C9RUEy9~FCgeIT7IDAriHVKuDd*~7DHdo%MWJ|cKFossO`O0 z;1kwVWT`mB97iRZgCD~yf+0dlQRn?zG}V-27iE~C!pYWch(?ibFwJ&$XuTiUM9yU9 zwpGhkEQ`?x+EnCNdk3ZQh{V5{|E}hp-qRA8Klbi3aRF@gq=5#k^2>?qCdXmkqf&f( zOSW5Gm?*Xuzqq9$thsolgjx)zA>6UwrA47)hGLKn%qW|HwLKVGlJXdTP!5GZJ3HG-h-sg- z=DWO&&r8>GaD?f1D;i#EbeyR&e!#eD*~%w$1;DYs#YN;-8N35cft;z4a7_LQF0b=C zwWZ7$wdvNR*CW=7#LR#A4&KU7BY#xb*DCON#Wfs@SFrJ<-y~WmR6`2a{A+OnIZ+Qf-}<{CIOR)9AuyVUvTQZ! z^d1;re~zWhL;F08E}_yiEK20UM+|M~+wcAyWyc#kI>v%E+hN1o7a+V0IC*4|+ccUp z+ohjIV;`=DSeKkqO4FSOoW2m3aqt?#)2KnCaX&sW&K$Ti{yDd40C|AG4;dByX3uj@{x=xic4$0KNt0&bgN2H9z!7LA{9Bn%+?edU(Jc?t8 z=Z|w?3UBo! z@T~*?MUeH@Z!sF*DcR6mdGT?N9azoH7r*ak$J-~9r&Ob9!uX+(v4_n{;@#d)noiuW zWu#dS%V#fp5(dw7$8zWXhXp`>eZTU&{p`;Xq#<9F1?P_b_IL4?T1eN%hABX~xm~XY z4?6Y(^}ottWBJZJ-3;TL~ZZ$(=L~|6X3T`WKm{ zyU=WO*7S#{y{tOfDB=@+S*wDFnHBL`Wrx4FDeptXxMtew%O%Hk#c|sKUz2dk6qq?$ z5h@=8E1OQ+b6WK~;^#fuN5wHnHped%Y|fjX8@8%Wq|jgC&JuOm^+GqFB zJK9&BwiUB;mP>tFJPRT&2oG)FWepRTvSvgKVd25>-VCF^xv;LtDq}2LI5JdGaOxjf z`n@!BU~1zP2~v#l%5|@|c&>af(S`u;7C;(p0{#eCqZ;k=s?Q*dT5t@g{#-r7*O$6D z*}W2dhl84|M8CMLK>w0pZ32~Uk@16rP@X-FULIwwJHxNLg~h(dQ?IuXN@As@XZJHj zjZgP%^5`N6@}Jrw8Xm7&ie@OL`4OIOM%hC?Y-`48XBlxwv%XTw$-y%0I6b=m6X#Cs>{I=TkNj19x zN>t_Z&J$Cx$5S6{WCVQzL%>?$SqEB9Jz-s@Lta+5!PJjcT#Tai;gTlPRQ{s}I}R(> zi^AcVjt8Ey3ns3?ZBvAY-?1NYOpzTJ`w-7>5gxoHvFI{{JX39H$i{=b3;GxA+EZ!S zAlgNlAOzydu@FrSs-Nd#3->z+979yFqLQ4VfC2pJ7BRnz{U7I< z4VPfkr=>QFF#(TWl8n7eODeA@Vy`Hdif-qb_8_l{x&CxJFGAxQM}_s5GAC`)9;Jv) ztA&rd?ZrFsy$`q;GE?hOxATp*s?8dK^c;$x5)?7E_zeRGKX@(mjo5CxoOCtbvjz`z zh?gG0bgKw19bcd!MTW}Qx^FEMD)bcow10YyI_f0aHuv@C_vd+JHBpo@fRIzLd_aN9 zw7}NA8YlPp4q*+Wbb7ztnBT5>6%o?u0~DrB)#ysY4AH8D+*CJ0Q!K~(&FF@;4VZRt zLkDJ#D4D%p3b()87<*Xr*dAyX*zkaZNt3$9G=suGxFXLWb;@w~*XW=;ozgIXBFDh= z7`qnbB6l}z4dM&rcY=KJ8p?{;`?)Liy5 zlv8HWXls(FWs8Z16OMiI3y0?-Pt>b%YUV^uH#*yy@Kx0~HiNf>{f(}3)(N}GFi&3g zck>@3zxZr#%~jhV!ClXPAvMoSP!30q8RwzuaTw}&jeI^4z~IzgP`1!pYMH_BHr>Bb zK$p#F*KWiui6BSMn89Bav3GHHI%52sko{11?8)Mlm=-|%|LV5UZGRZ`=;96L5y>h< zJ@e+&kM48@A)_-|@W_3p1l{db2hVs`VT`J5xzdT2dM(pRPVr`Xqh{k6C{2m$yJ0@nU(GeG48%eZ)M_8}=E7RY7@czc54LFp)?(rKv z`_i03rbDI;*#mwTn7&=Ep(g)+`qRhyhpe~EOO=7E+EB4TzE%aQdv)Z0s&{m-n|QLt z@-pZ)&V%oBEfN&U*>vl55O_1)+KJZgwCyI;dc-;F^Q4iF5suwI{o5$vd+*7liPA}T zTz{4L-@30`2xGerL3isxq|Aqz5QqRXwj)uX$(5sHk>IDtyPK;>jOYy^iFY@~KXBQ+ z-$|i2-0v^g#~8U3|7Z$yCb?U6fM|;Ijv``62>)V<$@&wXT+Cf5YoB6joZUA!G={^vZmq)zX?0d;L#cwm_wH;O_~Na5t-|m3~LARQ!-mW+EU( zVQ+CTb@t(z%5SBPD|6s(C9AH@sIHBmL@YS8zmGK(N-$&=H!E(DS2$&imNm6UL2dy% zq#c2|8fqS$gEgy5f>dZc$Gd;Xr-_CfR# zY((aM%=%P)UCj!V@V*j$^uN+=i6%6wUn$*K8DM+zzJ~9QC6VRO>gXQ)Fv#_`b6u5o zT8NWVqUF!!;aJEXn#9=byEv6Q{-f)+xLIu4h7tNlt|EFNbyc*zkzeky-t)T{viA>I zCB>bY?_9jkmNwF%lgVb$wpUCpyfd1e=H>gtRHrSU>f7apImky@^BuXO!|YYuMF__r zkNq}K;1Kyl0v~I)SJ}i*9TJCf@JYY zpPS{kNKi!25(N=gB87f)u>6*D$?f@6_;F&JSbk6v8wY;v0A?@sAH0&nVFgKJxgy}bCX%?ec5!3 zSJ&aoYt#GS%|`GR*E05~n_Hhw+^)7g6khvuMvFcSEYR?S(pz^q@m&qBgP3eRt`_E; z4@d|u2vpS8f9_C~PAu(UB)qQW!b4^nvdGi_-dmNWRk1D(mI*w^`zqsj%?_OfB(*cl$;~p zS{JbLAXt7&ld-`6_wKs`IC1#NX8AG1|qrHH>cI%1e0PfSeg`#cQEj|_iTZav(5*q^Nn&urYd zkXKTQ9-zXXT|V~i_rg{)fN_XgSbjh)Z@a1MQSlFz^!E=|jHULgj|z$k$w@Y=5s5bd za^{Le{hC`~*v0^$zL>GUmoNQ`Fndf}T}BjLhB*uS(ajU*8JyW5HM1ONFkQV4Lra36 z(p!)>h!lU66DP4xd|HVmVSkS~8L>9+<&kW~)tR@y;DoJXmY@7-dQ2N2rhC<#Vs}Di zsA*^5r`8b!M>C&wQ<&fHSM%iOb53hjt396{iFESgAq^*;;i$K3G9FPx74ji+K;7yo zU`tK@^7z-e$3foeJqe#{tP}m-8$?)d{(z=AE#1WGt6d#?V=@JY1vAUZih_wlN0(Ki znwp6a&1}uFqpMlB8`NxVl&VB;VKTW}+Ba;hN)-Yq&1{Zcybv$9Zlf2>kpC`H&>#_$ z)AmoFl}X7QipW9HIfa!DxIkqO*6gEkvnV~!4&3>X63&_ZjV@l--Ku^br%euEMrAs< zXnM{^T;6iX2f$0p+DS4A`aG(S0#U0gn0U#CeKHIA}c7-TnVL5B(Aq`^f;Nq#K+tafB1>VRZ2ASC7 z^H6Nvi~&uQmzH%prDbK9Y4AU)+LyAHkE(fuM>hEDC*)$QOKVl^DxLSZaFTFB@4N^u z_=N9QMQmFx)V*Dg-*63XRr8*l%^nNdO~o#DZle7UCC-&lo2e3QwQPIOr0H%Hq!c zqO3lLkk^RlCltd(t&gdL4yf~OOe3Vi-Mj9Dx`_pZBj z$O$eFi#~j?FjXWrVxnN!Sg$#zdI!2ReDzp2g;?8VnsQ|0gpb-O{^;`maGA36az#q& zJ=zrc%cuYuxXb?5-6uI*V(RsKY>Tv2E+e z?Wc$?M;!=d-_1Dqiq9Tkq~4XZMvRfkqFag)Nr=y*O`S=5d5+3%zL8^3?faIGph$!$ z!Y>l>TH5VkN~g*)6MnUb0!ip|4=*XLaa(r~h!jFt0kSVUW6e;V=Ks)TCma^4&p+4dkPfO5HANi`c zfIlqW%UtsQx8>yaBah0G)Wi$&=Eb2-w@tsEh8q+_p-7|4f%HZDekFkWAc`BJ9;DwB zxc(WJn<7RJs}e8`XM@~k`zl=7db+3uF6PDQl}womMHput&)VN6i8c4Q(myB0m_zkV z2xbI9lliml8!IPn5V;38Y~x~Sr=H~~fZ98_LHd4=+&=F6ekIIFTTh9)JRh z`}_QzQxf-55fI_C`Ol4hwK_XhBusS+MOT-7;kDQ5UQ-c&bOH)h&g zyIfpPIS#LRs8I9l@^)WE%H|WbkML>?YqretM)D6g#!75?cJ{(0Y&HLIvwWt$Du?pN zzGLqD`|bFFKXt8A;gN3EQx{lWL;6YXCZcWTEX;T*6)aDEe|j99PVo}O3t0hL(DS96P4Fb|E$p{-BB!{tqE4Bz1E z=#e`u%fBXnAZG~lYkx$ELU`gY6t(dSv*TY=s>Bbc%(j}V5D{!h=s7Hj?(`sdmut|? z`{^(IU&LeVrKqQm;Tc`P@7~1#q~1{tbo2;Tle=D~&Ch~Yi%tMHBcz`*#$$(fk;k^% z2uSZ73Q~NI6#*@(D137aSCTD}Y@)PqlJ667$wj>!6S%M1c&{90iwgGAS zbU&rnlkVm>`xaLQg^;$vTR(a0Na8c^k}z*`ViiGZIn~0_oNMkC$Q%6=f2h81ZLEAQjZ?Eyt2h*f?^tE>7Y~4-Qp4`aMm(4(Ku)OH6ac$fbjqb^8EaK z=OYu&r3!KZQ~gDEc!8FV4n1+ESq*P}X*F8Nl%qr$XCEE_Hvg<0)UV)vqt1*qBgCXK zj@Qk1AAyX@o5nM@tH0O+Q?q9R5=E0CnZ-R~`SoKWBf(rvP1 zTmUkqoZZ;m%y-$OVc>P)c69(&8~}Tt@#P7qDe6C#)&UM*{^!s>)SSsnCaH3# zW5OsDR4Wm@(#Y4=k!ya(YDt*|P9kb0#^%$>%=gd7dsj=wo^M}GzuCFYywe-Ejb@OM zsb=yURhp-?49;DqKKSx;992vB$9%vfwWhU94HMUa@dQ@VIeL|5TI`&VB3t$E@O6ek z`{5+I=HJHQza><7u+-lS`jd$KjCTz!KuLzDLCi4`XGrl^Q>~>XLZ9YkKt(Ivi_6vf zlsMKP=<^u+EtCRND)qVIb{<{I(9chjv2HQ+IateO_@{4C(*GE4_V!*opxl6hJ8qz^s@7GH}HEvc{D3JsA(M z?d)s2S{gJLz5~o~KG;s+CduP|PRsx0@Z;U(0aUXEC?uRfxl>S$QU(TB>+D@aloqXC zR#YM$mX)vR08sQfH@~0&$X!Cwb4R%UEO;MqhNl6(d0-(B4Hm#_85$n`(g^>O5;{c( zvG0cS~07)@o@}o>%*ok67QWP?@*vL^Uo?jEJjWGvmZJV9_0Laq=Zofj18J@1~UG0 zKh5w)tdf^1=mWIhklEhNI9P`L_&&zN#{5|=pv!LvjX?9@DkV&eUbsb`KdB)c`ymWp z(vsALd?n&<&gjds?ADKCue8Q5*?;j|YJN31*DA(VR=|$y&}q?S!R8;@17JS(K~p9E$l)w+BY z$SP8BFMG0sUz!68B)~(0QW&AKeNYu~pa)=U+wtH6zRF+K5kUTOex3l>Wv&5ZQBOeQ zf-!u0d}uv%u2=_BXSwPn&@YArKuJiv&Q;=7_ZJ$X0n08*y9{6`;0uZ#hPaq6fraB%jHl4msg&sTyhm%&0 zpF2C25v)Lx!?x{0{c*$KF;KC01S@C`njbqgYn^_2#zWfzcZ%7wir22Og;VXHaNVfKS70dOC$gcyv^-*bsKZCuB%XME9nE`-k~~F!lhAp@!cW zb?PgvXPDYS<{%^A|I?BLW|K*%W4P_duuG4Z4QHJ&uaBWps8B7Ge^j(Iyf-v>>{p&a z!2>t9GabVdO2Uy)bbQmrw9d_Fuu#t{q2uR(dnPo>eF;^n_1uv&ScAfTW_%uI=71mV zjiyMVsV5MBTAj#zN%{-}lsM2ZTI#lYy0n|vyKn{axMSK*VB!u%*1ETm zWIpVhL%}srgrb0(&CP6 z*+|p-w{)YLrGkikL#~z{Sk`Ut8ey~Mt~DVnh{mO3)1fM%eQ#LC$!oj9C{<}W5S6~t zP|3cH#VK`pF?=Qv%lBNAycV_yoglv8xGcahe|Tv2CTl7OeIQh7l_Fqao6!IH%R_fq z91~bk3y7}tL;q8?#J!$)MF=|dL6cBejdL<0Zezm;)d0EaW%foV0PdXKF8y2)toI;> z8~sjZy+1Dy-WZ^-pcED+C3|Vo7qQyu3$y6HSC+-HJD!IG$l@e5WW@>c_ZWUZj3g%4gsR&#S|aq(NpXp+eI zSnwB~%QS+5>EL-Pv1{tKvg{|#l*JB?Z4uj^i z&hwp#ri1zgSCC#@SE8@JR$7>ZxUm*r9-2&5b7ooRd`qOaZH3g)b60K$a$DM3nqALG zv8;~E&}Q+feF?aU9xAw6X^#-_c&V=QcucC~xH~(s?X&yL(?q78+Rb$7MZHbwn}Ro) zXG{c2iY*M4eRZ5`@*>8nMrGpC{>;X2kX3n|UVmb#HdLGs*RHE;tr4i%fs=#8o?_$Pa1aS8(tgMW0PB$2|swqoFy|(z5 z$(Wg=tE<_7Yj2FIs1HF zA^qzNnw4M4#DZ8X$0_S={~+?Pf16O`k4&J~z=-Z=?K=)Pxc9?nH?!}MiO2gsLjG8EcqOiT8>aiki{Y$@bOQSBovk1{wFI3!EUt&;U zNj8_ni5iEt;K&B1_*S(86vKj270LiRm}zx{^=*d9sx|Kq_saK%8? zP*7EcZp{e7vGA(5C_K1=k{>=`$5AU}>onNXELJo%r8F#ir@JE zpM!(z^$WHpJL7q!1|1oouwOgj0e!$5M#f0cU>)PZ!onKWl{PjeCnn->eVTnIBZB}~ zqJ7$O@84tUHGf8!;WqAphXOUI6(Q1q8)`XIPFz=4*ZO!1sKBp;SD;i!fcY`(3PAWY zTj@JJt$us4Ck3qR85tRS)*Ya1yyD{G>+=aEXnMQ8H^FByd3Dy5CZ0suE&M~ zBRN3nFg_`X-DQ8a1CMjG=zYQH=f9x3g7X`Q;^Df#J@Z&D@nMcv%{9wAz4Q~FXwsoe zTJ}tEl0Em*_jzj?(rB@Qr!?u&Lkj6-Fz^Y$ounVx3PpK4fIS?RKkLl`u z{YFC0A{jF-hJ@DlVe?!2o|8CiMvRS3TsiFf6}CARjM7f+nav_}Y5FnAoZK{}_wbdh z5zM3NEn3_LISIW4zGR`Xh&Bl=IE2a5n&ICt#E1fwII3M7L-o-q$iYML?bvVa9$^>& z#_Sgq;v)TBS8FLSVgjIL40_G+;9EgNLfQdj>EvLS(vlq2Fd#Vw3&+vpiUAI*s85zR>p+&lx0Sr!0K=`QnG{**w z44gB%n46V?=c8h)?jRV`($lX4>gnI?aHbcAAXI!>Y>WX(gWag>rM}ODGXVhsh#}df zr3|0uv-G8eHQunn^srE#c=>MmvSRqV zkR*-6sI4f|RjD^x^57$RF|gv~ilXtTz}?uO)mkEsq-1Ks$Qs!!MCkSWdgCq;5dt1O zMdAr{AwFSdzVLqJ#>pVjy!xPsJFRDqy~bDYupG6rrA z-|U@ zBmg>8U|*l)u;7*Me1qNV#)0|Fr+f3u!#{%{fXp^JQ1J5dMi6j@fo?H2HrB5$aYX1Y zqPe+w6dPkD{=MQV&;ZH({{7jT(xr5VK73>Xj*xJs<`6I%NEjH9%~wnx0G=hl5f~hR zB=ZcnAlpC9D$2@eVYOW0PbPZAk*te8PY(>bjo$zUIRYeocIRES%Y%h}?v5LU<}XLX zeUXG!)6jps<(6Ae;B>Q*bOv}u8I_FHV!^0t8X7IK@v+iHU7W51>yPH7lCC5K-Ez?n zq1>513C+83Y-jA6ZJ)6v@~AwI%bf=AM+_c<=2NvV4`+wYNp+*JR|v(d*Jx>ft#(I3 z&dSc3Z0&u7+@4GhQ_h@RG`uCBe#}`2c$StVBkUBbHoCqTd2iv_;B9?U7yS)mifh%> zzb+gPE|l3bUYQa_GYf6}LuJGn-jA~vthtnZ&ChHtQKsLQ$C|Cf?-X0SR7`{m#TJsG zK(~lc{+i|-H(sY}Wg=n`fbufuW&CHA7mawYmhmWY(BUON67=1cS4$%w$1t_s`8@FB zoCs6=cQ$q?b-axG)h3OLNPa!3JA{W^vsF!3`#gE)#v>E+#RD#!ijEGD^Z>~=XyNHN zSa`HVqvDv?9O3{6B`AWC!8%})V*{<&g52BysNApRME=QH<`YCB90xtTx3I8q1vK&k zr#~s60P~L@KeB*`!RN9s?d>h}aC@;16tIP!f&2?`8s;t4Ye|Hb5XktV4Yq%_m)iJi z%txr%*)f-|pjX&!zp9_5?|7Z`DVhJU5#}p+P2)h!&fc~Z#PUV^ZWLq^fn>lo4Nhpz z&L+=S%0%tFzd1Yc$~5W@BFm$sp$Yc$d(r%P$8S0n^ui!#IqJfmfOZ$kR%Otx4S`ms z@~Ir5Z5~%_CVj~9s(&{(*?b;7sg*K*=PRULUsU)Em1@=e92wcF84*I7ndw_<^Z3(- zJwG?UUi@L&A{ULaj;b8lqWe0Wy4rp2Zjr}^>tqtE_K1C}Jo9vPLS_CnI=_P zO%)$|a4)%1fF?~!)5smD$#hS5fcD?4{|K)Fu<-Q*OAa)y9{K;Pql)BA2=nayca z{_Weh-&AAM(gqnD7Q4U?Mp!(!=K})+c$`*PRmtqLDZ)NN0J8;g+f139p02i>pf($Z z{6gVgL_^G@$@Gj33W9?c3eL`)-~z+yVwV*c@A7c>fgJVF_~sCt!kA1TzMPT^j`A~I z`ya4In$8RD^cv+K$Fe0Dbm|$fEWt6%v7RY6T3YafMQQ|k)NbH4%TUMd&)0=V5^~2% zQx=w%{)J9dK;~fr9XXI~;oVm|RKnZD~Oa(T-+ZyIF}y?7}LA0PiRSjv?IFFf8Mpc>Ca zZ<7FnUN0^Co$&|clDIdGygL z-!_91nTaUoQYjhl&WJKKts)YGFbOfl#Xa$B>*l8>C+#;=%vC|@H=M2K_=^hK1g!4Q z$}zWzgL>oP?uv$L~^GAUkeOT=6lA!Ef$rj2c|uijaTp-=k(P0Sc$IaGDZ1j8 z*}?c}0gO;xz%lN+Gl|G*ZH0gr?F1?#$9ctJ%cB{8GR2%e>jxv@87>dDG*RuZIBh8F3&2ZN2UrRu%u1s_BDTw zsf&quq3md-d^F1&8($Q6SBE3-AM;>gPwzta)E(ZTQef1uqE zt;T*4*+~%EV`%z&C<7rJn>FB>5iAA_d2cAys@aPwj3P>*Z{%1O;qPMN2_hu4&}*d- zm2u*vv$3x60*>GOOn)zH6cMd9OgEm*+7lu(k}f4X1B*}Tyw{1`Yg+DWr}qev^LQ_9 zy?CLuw|PRYNbuj0>X3vNk?A0BMrEdIpuA%~#8rw$SBj3&gGk6c8N+3~a`xCO(ya;h zN-OT>E*)Fc?)kMjtKRB$ciEIeM`p3yE(jeG0d^Z4M02jz5)^%oURj*cO{#=lcJ!*%T15`Or(>gT5fKxvcCQ>IA6yC(IkTImF^c-iu?y0 zLN|Xgq4g;!L3bvLFro5I9XCUE+lx)?pe|NZQ-gN2I83@f8y(h@L6`$tH(0p1HDFj* z|7orZj5}mO`$I=d`yJ#r=rFLhmLn`Ye6GofMid^@ao0c^))ky|d|_{a*MjG006J=P z{{xiS+p|>^&&nvwDG@l)6{j4PN>BLubqw8#H}rNLaFJ8|VE9YqZ{q$Jo2&uj-1$LR7+k8C3s- ziI|1vOOb1yPLsoCXw0f{fnW;i+g8JH09pj#2*$=@9mNZPL$q7 z(@{Oub`17ElGx4HhDJn0bnLm=d?=`|@Lk_*j9|_B;KhK0WZnVoXmFVIe*>!U&S(}4 zuu<5o9%RbN%JKySAaX2CsH}TrWMn_DDp+X(`7ol?w6vzf<~``}11Lc}*BylRvp`xC z)ZbeXgxpcLx9*_&>GFRq^fQW>|L4!2hNIs_bV1MshxwHWGN{WJJvXH6zsVPP%l+Y-f$lp=Gd|wHgCc%q zxe5^&&Bt-$=JSI-^8^pN9hHG$#swKU8Jdn-yg#YA3p2N>y5rC3U*hFC z7=>n&)2=XBk2|e=Blu(Ta(lUlfvG2^+R8in@JlLD-aT($ar&f@tt{V>t-*Lllw<;5 zngz3YtS-%1_*~UDu+wlg_M(QRN7duCl8CQ;CER#?@qd=PvP9`e(n>nf6^OC`kby~K?VGGCLu6qIt#x=KETzv+F7B;_5Iet7KWm}&TCAw!-(nL$Fq zNT0C3R@y;(SYI(OVWs{y{T4TPLCD*b!h?JNX}p|jtz`X)*|gOIZ|RG`7Xzsn3|Ibc zY#5bESPy|X2a?wJ>}5*NhEL2p3ty+5te9Q-;>S=sNh zyVcOn({P}I_l$cAu5^hjx^qp^sMWUoHD5Q4p7 z7Xb#=vuKh#|FHN%XC)UnYVbKZ54qPv-`0?I`R;qElJDoy$M;yiHxrsHR!l>Rs_3^d zCaHFG4>w=^1ZK4lNAAlnr|rnoW~Q?ZF(=neqjmB6i{BzMQd5tP;)0VtzP26Ot@AXz z?9gMT`}X1K+2X+q`4%t-rsn4(I61hIF+bj?yj#t90X;dwqNWaTuCK2XGf5}I8L$V! zgs84k5auCI-=_V6NYJ6zgTGtD00Wr6@?wJ|yb?h9pr;apQe7jFiDBg>u*ZQXFn+~; zAeGD94Qc+N2)=c;m*wE>jHxMuZ@)hm5JhrXatC??K=>J;j^CVaS%QBG0Q%GLjCTMS z*1L?eld{OaNAgwCXmr<6i{!X-O<7}OD#Z3{wt>ArB%)nYSC@oLe&+&m4$04gKg>IulVkKN>}9_ak7kdRB&W)l{ar=NT_w9`BkT zG{sJ5e^U{iS1cdz{h1}bO34BP=vsQUUqX=3r>Vkl)XgP+L&=cT^?8Qy19DYNf-=!N zi+it_Bu2Y6Uk8W~ba>gTUtgV$?wwjHQ3<<7ZA4glp;UbuXS!7O_~F7&2aQ)hGmgzxNVsi2c5UcFFTz{!xn#^7kEGKEltyor&}D}2CWu5`ljIQJRV)*Sw3yorFh zJNZOeeQ&zY){`5r{-i8UOV7kRR}&q*$ed3i6hc|4tGV%HtbGuGBY_udmnz=cmDv2)*+b zI9*p)S36is@hl3^3bjUp0>ePq5&C(@L2CI?WPpt0>PUWiMh4c%<5IY!paEm9k$`ig z5T5GKpSK}Vl##Fn&|0WHvW4xi0WP}p?R5s!@<=h9%%;|Ldj^(WMQv?4j9r3~$~K-Y zMGILd(0gmRy7KMx5|*@NK6%0jue9>{b5*`x2!8+svEL-0}f%;rB+eKt_S#bc{M?{ z`AN5D6yy>uc{Ke_l4d|X%=-^y|0tuN0;}jtLOleWCxbfO>lX6IcU@ERtel()YQ~tH8-U+5*XEie}ENb3;j33FCukN+m&k_ zhwRSzcWGhDzsj<7v&S z3`Da{)mS5xpVMn|i1@n*XrRM!FwJg%Ok#0tP2+JW?Ns>IXRnrh2vjpC7K(gFppM(O zh?~hVsUgD8lZKQL@O7fzNGQ7g=a0w263RD}M!#lZ%$ekT19RnHbqM^5ZTv*NbEQnf zUU2cp7;Gqm>XsHcNl8gjAYn$7&V!7MjLhM34hRU)$q|h(){}`i+Fwn}$WUibDeUMd zh>ax-CvSf7Vq$hy2aXm#et!EC2uoa9F)}sn1vq65o@rhC0b`QF0X;lhd+4El|NI;$ zWc@lhGc!^o5^7R-DBbV2V2WfKP!DMItbi?me?ZeZA(0vYX>qWZ0T&bk4E>)ycgLjD}QZb0TkW+E%u*%8hR@J_ag_+Fzplyjm(CxOq zw-F+?!>f|G8a;V|_69kk_~Epi3F;46rU~Qk8VzYBv}~!l{k0?JOw((2tr;KS>^Pex zFW1c@tP+up`IFBVEuz?Wc=!+-6VyC@Xc;E#vJ^GibmJl=CWz-@=%4EhzU=R_=jA<= z%4*!ch!ZZ|4ELtEFc99S&&czlnT&g3NN?JSJVAwV<240Nt+g?d#u95gG02eiN_eZp zBiECBdXeZd3QyYEIIMTx=X3R4syiKbKVSdO7{A+a@S*Wl^kHDM4atA_pELH;kzWii zcrD#5_9yTd-EzlrVm(8UYf4`&tajPdxQX--R{svDx(KrpLc_>ul4j` z<_HGh^~0uxo>D4X(w(tm`{URc!WnLSsRMXrS=tv0S42->0W}1i9Nm^505^f@D(#v; z&j3EM+Ht&vfpyXbXAm)iXn3w?hfJPnAj~zH&0TxfRst9ZfGS2eZ+?IW2S;|>{)imH z1VG<@Z+k9*Jk&u{Tb^aL`J-M5FRTa> zH$k8*%UW78pgZ@1GD!6PmKBtzla^;N^112$whh7(K?@_?2l)22hcFcy;AE*CppcEA z9)RqsK99rFXGD zX%v@g(3AH`eCn(!$y&ml|?G9fpDpfyrFK1E2bKWbeVddt+ztW8ISJtsl=(}A%VJluJAhKR0 zc&M>pkw8vaqRUzy#7Vf`JNxU&=f`&iO9or@39+W>&6bG-B|~#0?Z&mSCWwd)aTFPg z+~+xSPUQ8;5_mW}{LC(U@BMda=xJ$qFh+da@9Ga!oa*nizWZpI;arS#>p5nW=a`q- zgwi8U9mu3Q`Z8)LzwdnSI3@ZX2teEVc*!N?xqd%C{f-dt2Iv%^0DI|f4K=%dG=J^K zhiI<}lD>WV)B}f%nxPLAaKH}f!%ja0=x!9aI-~^vLWdhbvLJx+unGaEGp)KYUUy4L z7RC?6z5rQ?;^}W=M6*`i@@uv=4Yp@me*Q3|VnF|iV($cQDo4tbMHL^wI3)c&d^G@p z+kiftth;rkwxOj(;!f@fOkBVAF6J`@hsF+~TeEtzeH;YrWwm8X>_T^xFM!!1KtCds z;v6Vk>T7l(G2Rv~3gol^%y17;8-P632j0>C>Gq?iKs7wCvYxcBvuPLZ^P049Zm{dd zLzu5FoEHzUF$r#?-D-goGBkJ_lalWV(!EvML>X#afFus}hro?1qQ^YH-c@odpGeoWo=$@i|!H}aUG4*lU z(hU0C9xksq*1T!W0B`w?J0~rZ_%uV66#cw$tReL*My&^$VfRSljPTsEwh98~bquHD zwZ;8K$n0=c>BB{Ye$ALy({)qm9zXf77NBYC;hR6Vt8uA@E@%w<^CbPZ_6+y?b<-~o z#s(k1>1g&fZF?Ix^30ETboG=uqhaKKb=N$shf-DiZVvvb<{TBcJZhT3Cijnk+qRzb+ zL`g3veSTIxLpTDEf(;B0tK)|l#R6QK09XTixb63jV5Asmar@!}3Xq-2n_J(bCZE8g zGP-q3AEtYY^wmE+eE_6V7eZWua%rk9K+Lmk7Y`8;Ra8X7t;6zQjSY}BwegIsEKT?$ zl{Gaa&MWBa*9S&Np=n`$3{W5Z|8F{G!q-8DSl3|RONit{#>QFC_5r=MKJ)TgPEHPT zoZXpg%YmJ+5A#W3Rb4@<p4PUv_KHCedR7`BDyvCHe0=U zI964)uMTl<4nDtYhp%^!YzdWkAHT37UJP}Yh0oV_5{C5QlIEPM59k*ts2JU_-JK;Q zy-cYGYd+93ODo+b=O_1?ZZRZ`=1Z8Qjp#EEAy;`*hILh9QY(3jzC*-ANQl~$@H?aY zMh`?M@sc?oxztZS-XZ5EpsdzQZtk3RpJ=&pJB$Z+yk~lVixMvCovi=0SM=%io#{7l1ye8FZyxqXL%%u>*wmQpBVcd<+%zyZ z*MemQ>ue?0a{|tBV6cZ^$#gG))HDs@f`PaZF8qg3!P(z$+`2Ui+_yy=>;S}ts#17ga$#bsfp;V!pRY4w7I$Y zv6p*{WJNRqTSKUD)d+iX2dThjaMoKVFTvE1%Rg3+13gG}UlZnb%ZS{r@(Lxcr*zBX zi)xu{;U=`Azn84wlw$5+kV5opt47&8q`|h#508sG=Ej!Hyy$FreW85NRr1bznCZq9 z@d@*EI-=+I@dPop5_%t6k7TNqFRkJyUCs93Y29$ald}u zLD&?4qPwIzRPk*BmTBN{*0i%@13lFy_E{fOEmx5;XRVS$!JRz7<*pvb^Ytj8Rbg_D-hes z6bM}MsnR$Ab~}`h$&k_P;%;Sn{iSKBmF82zm9c7Zb3qD8VS4YalMq(7rUNq-trucE z4L5L(>6^r8uI(PAwwMGQG18})>-O2-pbG?}|qZW;b8mvzffFAjc@!9-4!*457YzJ8P0 z7<&S0$_PppLT3+b5T&JGaP)5S>SJvt!(Wx>ldm?hTPbs6zWevP#b3=lfnu}n{~%CQ zl=|mwuRlLHT+4dcff=O$t~ae0J_Tvm9^IL3@VPdDB?=PbU=X8#O_#Do9+ zt`D8mfEG|!_vz(bmzsfrfdy#re!zhV)|F@^R~P;qA_EG!cnJZPk$neXupO`*C%Z|H z8~_DCXbwOCjVvs*;XcUTKL86&QVbPOYC(ZsK!D8l+jB(#DG{KktxX=_AEa+Y5T*;c zlJ53Ui2eBS!@$xK{Y)?4f4wXVaW=%D*sH6Df#8AH{SoR95GP(C6g{**u$*~;h(qJ! ziQmO^LmxmZXxWqFT)=SSGc>>2oRrYjJY1lMd7qm2Do#$^fL@Z0@|B^8gr`{>@QZfr zJDIYc32U$^#3i%FYoH_QxX`#cF1)NUnS^YD8ie*XLlL?+!+zteQKw^3Bw-qaa4qr0 z`Li!lnac~{6>;{VOJn5%PgwDlFLZp?Yt%OT)6I`c&T_i=l8jA0{!>qe>P?CtPh6ep zL#gVFw8E2X1*ur;f8Q5;Dp_4v#5wtu^^z{DNUilJyv-a{SuyGoYmLhx=KZ~ltlumZ z+$d<{TeLRfjp}L3?Cm}eGvuKD-_w1hct-kc&86?^;uURpTOjG;Ow*S1oMZC%4#d(0 zXt0*yfstHA_tE2#u?!(K9Q0EgE2UnGz59xf0v+QQ)}K8^(j%P!9z;^X5oQhUcl#QW zn(cE$xSynSmW`l`kjj;&#kn?Fa~X0ux6NOAFlX63;6nzVAXJ!fxsDxZzJO9oh4nD; zO#jO3yBmG5bD_0F2s=a(f*?e?xsuTGU4W8m6f}l_JhMVCh>XL9^zeGdY%Nadjq0Ya z?SWG2>gq@#0CgfFE@%WAO;l9$aDnWRmZjyi_g`J~K)qdeS3h(spl(96K+sV3!-Wi| z1Sj-`9GZ#Y_M7GlS)g^pU^sw`v-?A~97HMzGM(DNO8I!L&}U;BFOPy)xwII%?UN_F z7vId^A)YqVsuY>H;2nQ=-_v#{L2O+aOM|2AofIuhPv)Q)#OeBw6RG89RW=wZNvn@v z?bW{@tTvQ(C>!(4$csA_`}-?NRW>f0Awu4-}ZTCq#Yel4%BrKC0KZuYa+!HZBVv)_7EuKW1SHW68AL+$f5_BO+LOU;N& znk54*Y3lzKZD*}d1c_od>u9+RMPi% zg0reJbhr)ChGu5{2~u30Vkm6$8wJKg0fEaIot(-D60j>KMK3*`{J>NCB5P@i)d>{tLK(;$+}GK^i8-Ar^yI3z3)U0S~(N_GHg{)x88{%Fsq$*xTQi z0h2e5DLWgN<>k_6RuSkPa*Yy`9dk>Z!F4)2a@D0JyNJFf>~)Luc)L@laFdZDLtf{1 zo`QX{CG=r_n~-(QMnzk~rQuR7$vfI2XSp%UQC9CV`zuE>B>%05ZN>+4Dsp2=j9`Hg zD~UE$w4jOs$whJcw0G>n1*!`njoGaH%35YQzE9Q7wYx1#qcJUb3$r>iwVm_}@w}a% zFNOWIx!G%kze>p$j$#N)p><`oBQes7Z=fgk=Irn;7GC^;9L&fUmCp}b4DaN0yi$iw zqC$U4Si-G;N9^p0WuSx!pQ&jVs0)A|q~z|7B3lKm?h-OJ3k08| z-c9DJ_;3NfpYeRF3wr?Q#ZR9;%?Gd`%ASwU^pWK<E)7X|m2)CnItCRA zg6(huD&%^H$(zC2BI z(GZ#d#@Zve{z0TDNPQEqqD24+)bLecT~=0A$&H}OHW`!3;HK_Z04L1b;q8ZicO(imQRRWTnIc33K>hUFJ6SAjkns@>g`E?>a}Zt1Lg&iD_veY?hEuE%|_ z5W5jtmog}W=4UYJ4}VukPH!gSm!Iw-eytv@jcw$Ac%!7WhcUt=Sv;~dU2DPa&#uyb zbX}$vzb1m*#y0^#EX zQx-vsp8^_zzC`8^0O0qWogU}N_;M?|XifALs)X?h2ykAzcJ1U0ap>%UAyU%-AlD6#W8lLF3}~Ccj=?8>6x};}XC1bAj(mV91mcoZ zxwwD%G&bfnyY!;vf?f2>)c^-aN33vePIuZf_hy0`I9irQcE1>)y^(GiZ~>r(^#KB! zw0wPUa}Zt=v_V`F5`SK;0t$q)x%f7*HH#8^pV;1;r#`v%xzh~4#)!r(yhvXB@56a~ zJRb4MF5(kzVxKQK4B>ixu${cFZ9qx0Kl{b#ar~P@?2_)MMVTWHzFV5bG#RlfjOIM% z&FfXfcIUc*FODZDpuNeNNljQHc!ThM$5?Z(ZTuCJzZaGpr_#N0ygXKPY-{?mIbE)( z&tGtjf5W57O!a1Q?`LUa=j_bxd0&PXy9hTfAsL(XU14q-v{otB<;sXOw28%kgiz9K z$1gvP-M7+z*KYSy<~h*@t;fI1qyL_c`aUsLW)*>rC%yj#j&Nw6 zb3`zB$Yl>_JG4-kcso#w>ZRizzi1&vUyB@9oG`EUaobNTl;;ud8gnh`#821Za!suj zGAt&LWx#8v}V5jKTOn3bqoau-JkH#epevuwp|IxieUR7l%3KaicP znPx-I#TvSVyTVrRPTj1ku#BRVU`RQgs-!Da_;I~CgR})>7_rYM0lZBj`7+@y$}AS` zG}L^N?$t?tXD9aXT+@r;rias-d@%=th55-6LQNyD|w11p*0UO%}%?kY>up_KOUtgE-d}ryyRMayeIk%Q*|o^#1>!*IYQ1fsg7L|L@)#nnYUhf`#g`r zavzFE^*{B;d%P)kPZ$vD!_5-1iI!&KYg~G7s<9KfZ)$S~PfUoq+;-(I3OC@k}>T3R$rH(IVXF_{xN?l&z;@&jq=0y1TdW?-z3j7koC&-h^Y}0Cb zPB|yj@|5mK=g&BbxsPcjzIb6@v;2L#RqD=N`4s%X^V7fG@h_uT9z;Xe3pe!Bx3c}* z;Rq~-aJ37+tl^MHz`M&*9zOstn}>sA;S4Hfjk0HQffNh4<5+sMGM!uvk_408*LMxk zt+Qh8$rGl@&3f$EaSwDTugi*D!*v*H(I#AHVsjiba*?n}UY_KxO}3ezuAt~!)aH3! zy0g=g#Do1(%Pr-(V5$lmikRw08iO770w9xv zpG7hGGiB-QciM46Xd|;TqTiK&rw>aN^{0)-_-la5)itEYF1CeUIhw|kh! zg?BhfH1bECZZx_svZDS!P3|t;R9kb`u+IFP7fG&Y@=#m+qp!PS`=a!cj`OR6a(#^f zuDwdX4k;)eU30f^>Sqr}yej){Iys<;gp-Hmr{PHY4;Cz*D<;0(K>Y~9=?)IK~&O?xu3P(rX3^e4bc-sj5pwVNtFtBSvQF7Lj)!>Pa$7JA@6)vCp| z&a}VgcPKpUdCt&|A!-$j61gcg@wzH?q_wpt!eMzu_l`_`(%{ci@fPuvF#`EfqFzhb z~^1HWaZoB7!p$aZu1e$ZqvhFiAv+jjB;z5wosjH}9 zOB}o>Ta8yu@6yC2jV6r8=D_}(IGESCPqo#J&F*k)WF&Ad*@v9VljujL-u>{H%M*$#EHWxxG}Ak6S`4(84^lL)ipe6h^qAy6k0L`_$evn$PKX{Rz?9rK@&j zC~fW8eXW@O-E?-^xTOFQ`v&RCUB3y8YtK?;kMYEN9bKM+RJ{lC`Jepp7#hSUj6cTo ze$>*}=Hie@h)&b|zX$(e98;~U!%U#uxZfzb(4I`ybrmdC8ee zK}W(~z(V%YJfR7d0?gZL?jZSCP9yijEMATU8Y5@UjV-j!8DU2 zdzT+E)&ZFgNar3xMi}lMUAYWMB#5D%5wmSUY(rf~qHz?7<9s2TgR|qu2fxoT+r!XUz}dLuqY;K+oHSkS-#GFHRck9Flx8k*&_Fa>RxP@ zx4+44oDeV`Z8>A7e~ZNKQ-$`lqB2EdT_T2a*A%=fcQ#6XXT`0uwZG3$Wr?CFIJ zCG`p{2T=yaqXGR!(5DZycZ7ss74t5JQ|ZkEbGYEp{{)RK_YR{jOy6b}9v(>7M`Zf7 z#+Rkp+yBbshqgWG?SaDR7Bb9Z?T{BYL~|n7Oes^&U$0scMZa_@^HL-X;hy6N7xgTY zu%Vu#F&Na}dLM9w{Y*W=TB3&9vVFxVV0-sxi=mODIB(K@#uBbyb*^Fi)ACnpL)%D)E|p_upjq z4CyZycQmGktqfsCzX~s5%P^-5ET?oR+61gv;7PTIyUrwhYi6((DE7mv{$2|F$&QX(U#xtG zf4p*4e7XwSghF5h5mp%-Yy%GH4ct{~MFuWEp*|V9RA$2->^T_}6Qx}B)kQD=YthQT zx*wX|5!90(k+t7$z#bu(3#oAUBtjvo=>0B_Z27Yy!KyNj!upzSJR$brd|O`?K?AJ@ zcRRhkax>fHyhLYBu0RVd6P{rxFG1Ny#dt|eGMnO3f{_THJ2hU|LfQ?V263JV{g5w4 zu?^ZrpngQA7)B5dq_FplEalIm>J`KDd21+^ciH`Gb}b`}+zokk=)b2cStma`3DC-K z0o!wWx)O{?Sty{BcIc%nAE~>f?A9BKSrPV~62Et%dDZ>$eKEx{M5#F6}M+u=E#$V%N?RdyQ&OAUf$BGYM(roVJ(fCa3*y&XB}5j$s55!;CD zhJdWB>{n>!T<+X)0J#OyV2VpgiGf!JoR@3c+s;6f{@4$Ac(QZ_K%7;tK|Y>+&}4ya ze_E=dz$i|H0?C3KShy~7Bud!O?W!r1+u4Vk_*5>dPU$zkd)-!Hkbk`UwG&cz!3VbF zB?_&L^6H}5nd@s?HoxZd`uh49K7@;6q(qhPdn!FIk7atYfIr>%c_>FNX>0fz#ocB@ zqnrKj<}Yl9wSUUYqTuU3yTtS^|K+z%0QCo!eVBaSv;F@4`#)Of9xDChVW$BHQTfC9 zFeG4~n2hYL$CaOCOC9#6J;$ZSE0edU(YQos5L4I|uIhdT+pz7?H}kSRX)Hl?RVT+acVmA1 zaRaWMCxK7)R_xDo`cE;Vzb*$`w{ION{XSEAbaMWu{MO&IKb}Wd>)Q50&%0VruJp=i zGWEwNCK}y1c;vCo!L@uYsiCRKCn(63JFM5IelD^5?~BiNW|7j_#d9T1)Y{is?R1Ib z-$m-J(f=%rvjY!xp3q4ceKXN^RKunD<7gsfHX-~nF_TMIz)~?ueLGM8w3-jq8hozz z>a;Rn{{Hv!fp4$U&);M>R_xUsw4D6=;%#ls%-)3nb8P|pUtu~DD04tc8L3HS`@gaQ9g5Ta)2CNp-3d!A5 zO1veTroR8I=}kFHWgQ1Ut#|vWLlr-7Wu?=dZJXPcS~KT zZ6DiPv5rVTXWZZu{Ltj)LcYp&Ph@{($no2Bl+0RTm^m;`Ksu}_YzL4bFJA^ScVqxc zZ-w%H3JK7FF_j<2#>fFjnOUVfj?p^)5|z$dhNy6mkd-*PYkigFt7(v6_J-KM%T@Gv{)7dzE8t?cWlCFQ6yQ9(8XwUTk}u55hm z2h-yGOxkZ(a`|wzyxzC@7UHZjv(NXkhkHn+%x4DRF2;4{>?<2F=hBT4#z#p|Ug?I^m?6M>)hoYz3_G#8KS2=47`myyQ(#KvmyiGh$t7~0(@(7C%M`HW@Qa2jT;9xOxiXZg|IZscptuZLB`e%rr}m%itv?m4dj z+`I~x75mfCCckwf0F?X}V|b)Dn?HhycoFo8TxkP4V43iN+6jrD5&>tZQ2TEq7~u7M zz$@jl$15y+`?8LXhZAL&85tLmdj)Lgetv#lASuPf?}Rjsu5>=T;=I2@J~0=fQeW&+ zSA2Jmz*qA8%*B`XK)Y z1N9Ht3A^oKyvnZw*XLT}8g|)h+v0Uhx!T{z@yX4*4++$j2HwFhDROlpN|Hb0g@gj9 zg{}yzyPr+1g8zKZ14}G&bbt2jhQ9edp0V>S|T?Qu(Br4M1 z$&(jT$Rktt%2T$g%RnYtdXlv^H`PDAE#E2TCVBQ!Rpa0EC4Z-3jmd|rF(wsdC!cqq zmj3wpb8n;L2Y)1#1}KJzXmA43&9^(lhC?i8$muV=ip*BlZ2OxByQ$i|Ar$c)1COiE zqR-b0&cx8@ouko51&DX(Xym@nZZF+F;%6NEiOytxAe>`W5TL7@SN~m=HvLETO`E=%F5Ua+~!x3hJB27kIGVHC3b6fwi- z%7MjAxXvL_V-P+8O=@+7X9czdv_0M3-OVpwV${7{>?!P@zA{Hs$m!pSliv2$i>~RF zjoQcbbUbd!{A$@F6D#yewIM0&&m!|8_h6;qB+-)hPJ9jVrruAmo zRv77z4)6bE9q+4d@5To&m2{)~Pkej-kwMhF)nb@A&1|*&+*`Toi9&-@>&QHt+-SJ<@UbJ;}MZ5tlpy((hJ1E#K@_Sbu0ac#DRJ zR$zWijjUIuAK;GnK#pGUhfoxrZVf0nAD#bwGzz?#&dr;b;ZO$01Q2E;KR;Ii>yaZr zhk$(a^z$&L~s_$w&;G%Is&=%>dRU`p1$E@Y5x`~nd?{iXyZO*-WW5oP#=0|lQ>dHfD zSVv%*Wn(8MAxRlQGequ?)sB?GbQqjaM&13@&x;6`*1cU z`9Dmk&ysAwNblZVweqs*rQ#BL@|Pu5K`A4#;%#LqCiy?z)cMW$gQNyb@Kw3VmmO1N zTwKd<6MPfT&K@FxW?~>1jEsspTGLb-gu>$3^2ckVA3idA3V%#GPB%Rf-m3{YkRiBB zw=WmAU0RUhD8gmJc?-KK=-(chGPCb_j=~kolNMc zjBRZ6xYMRq|LH|XHZ+Jlc<|sL=KLC{B5G<9xUOd!SX=7~Wp(rHo^%=#V!mc`S}IN% z8lw$HLQ&G5ZZza2G>_Fxv{1xLVWe5V5*cVh6{zvHLmzw3MU0W+x8F`t$?Gl_ z8C>Gl<&L5Zqsm2{5TP}TRFyeV`+-sYC8pt&xTHP!b8@HvA4{(}dv@{+^~(C&T$B+D z=!OCI43*UI35VRxyG24mu6IA84jq_2Ewtd(z1P5VW}f3^uj74?g(Hh&__Mb}#Q*YO zYj@%k_6h!1UW6xC5{k8sd{blpr;AEYe<@EyC-md>M(q+5i;ECKxdKNFTO#^~36 zFq%*CY&U5sucWCd4Y^v8B&4*(l9G}zB!mqXMY<8sh;_R0T7M6&vR|wP;3M;-pYq2nKCD@Mrw^s5wgGwKF9(4Zsvopt|#Kgp7-@m^db!YE_=nm7ts76O0^*b<%H$gfng*6dXC9GJ%#LifTvn^o5WJryBT`xkJY8Q8mBDu347sa4l z(xTP|;s(c1c@C;BBh^6+wFVoHnpJ3(d7jrox@ueZ8vae4+9=*%C}kqse3J1~ZT~oO zRg)`Afz1o)AOa zM~~RrsMW3f#?_IDYnwAKn?Uj>Dc;diW^gL!Q9_(1J80K=$FlwPV+ z7>qJN(}nI*U~QyT1nz1}N2%os->A&c`!`@OFN@mX5xOy9!Hkn4MvtSJhm-2>6-pUl z#u7hoz$HM_GT%*@P;q>mt(nryklP+JcUEZy_-6NVmPtK;|_{QNfMrN!|wf?`L% zot4xq0wgr<8Cu>Tm@C$aOptrg)HV^8NY0fmK54)o88V(dS780?+ZlHIr!kSA^o$H_ z+i{<=oN@}H6l=a(2#7k5`#BA}7qxNrS6s0hRo2mUmlzh*9m?Kx8FUEn-e7qhTeB8< zyE(Dqg+h9w>w`-lT=@sYB%8CwyQH~UE;R-ndX6rw-k8|0Bo0-?7i^@p_$G z5j=1(i=i9hmqr(RYC4Ha0e(-E!krGDD{fJE=881bYg#{02cU4yW7= zn<7(sO&k@uoxzBT^B+ePm(bK`T*LC>`YW`HXWb2LU+~op45KIhhE8+_PuP2DV>{5B z#dp0gc{Se_kaUA_+kGu;UwgWkfZZ5F(TI}uYYhn3V(7`4uZ`(HOtz_P#`c!JTEQFl zioE#gK)QV}MMPmQt70F0LMHw*YRiZY39E^kl~8(PMrsPnh<0&Z@;b}wUpI~Uf4|rE zA~Lk&BDCZ?Zlg-wp^27MwY8s%jp*<%;Z*!A1%^B)BU5jB4AjK33* z`0J20?)C=@gYWN({}DcU-sBhWY9o|Xe=oYX*TYG#=2?m7W6iUY1XYWIi&?`(vmlVH_4wacp5kVHNj5zc{P(E#k7T)2xezXs;VZcPUmW zMIyWSlkU;-P)yTT<43b9;+2J|(e|S(+0fB(xPG*4`Z$?;+O91cJJNODgLbM%7i_xT zKQqItRxc68%ZsC05-}me#}?81zr7trSWHsG& z1$$E-ri=dYVQ8KNENt-o|gaGh`$ug)s^w*i~BkzHyjDq(^& z1wVz}JvF^IW}cJ`&Co_oP8Y<_75bO3gni5|-S7@&M{#iK7(VN(m{U=aLWRi(>7u;e z^!WtdC+5_uI9?dixL`{D2F=$-C(KeBEf%VIk!6>4 zx_x0kXD^HGf1T_eZ#E^7)E4IZvnpn0bjTwe9v-I0_=8OV5d$K44-_$uU^_-ar;tr(qF2p2Wn+LO#(AzALli%jGQK~NRQn2hE~dT{CL+_?=fAQrnJVmS);SxD6! zb+PCyiv9C;McDW&oeG_k`|tauxEH9Ix-)NIJJ^3wdG|+#!IOQI24?VTOh$QWb)I_8 zZFI1XuXpsq8CLT(12b!M?d!~L(%RL@yEj{xLY$>(lg}I-(B<7O8o$YP|JA)ynbT+(j?st2Yy7;EqJ>YOp6uPwjrBMvci% zRqpqCCA!4NhDrNz|C;D!F=P?pj!%CrPV)cX?;dTt8j1%ENxMka^zN=Va@;4%{^Zq@ z-$fxmN74WlpE`qhiRtbqL&V+*ZHiYH0nZMSN}LzC)e5SV^EvMfBjo2u*b^dcOA7kI zk>)XhboCOq{!u=CwT5l8?os0R#rV_W`-~sEvidKYQ^pfjUQD3}orWB9AZb_#=Z0_NOw;tIeKaa00i?y`q z3}mpDnJULmG7SEqUrJeMwXX4BcF8vCf3K|M*lNZ5MM&22$zC?KHeBJ-OVwyKAYk=Z zeHTpsLj19AY;l62zo9maWSfZ3!B-N|ew5S28)m9feLFw?0lx|#a|fBS-{S20*i^YH zKc>Rd_*Jpm<C-@hKzEx9JlPJPCXNk4Yf{Ix@=e)#C*%ZJW8TF#8~h$P zM-kvO%4j_D@_iK zkviJA<;_njnh72G4N7p+`N|}3^|^4X-7OvCR(-?1`;}ExQrVZ3_KF|5V_(yomZ(_Q zB^P&t6jjGP7qdd0NONg7QpLduiLYvQLCHGZ0-{rtG8;5McL?-b~ud)}c+%T<7&}>%u9b z(k*4vEB;jyv#O8#>{A?j39-<MVs%Kv^E!w_NXPR7i zdy!Lte-MksEzTuPJwBNxfu0Jd9Dmw@yhfF<+{FZ?bz3{Y_! zLH{v^^zk)bRqgm26tcGxsR=8F=v%ew6*VWN+u}L{*~RsG#e0KIn0@H4RX+-ia3rZ{ zWU|Di;~wn!5f}W)WYnRsDWM_jHQQ5;+B}#E|hq@saZx zk;PlOLHyL=PqVj!@89Dq0cMY6W`b%Eux=cR1t?^B(gtvz@u#U(;cqW-igQNe))5yP z$o_Iumo2@fL6|ITS<%ubL&Tsy8Q4a>>z_WDI`G3_(ZJF`F-(+2AH_MJ!R@T-73ITL zh@xKbXUXFgEt6fB^i}y}h^LdAcIhijO?4C0zFoTJu%0M< zPs^)SRTo9M#a7g<8>hY@Kzp6D2w&N6&CEBJb^23JXBU1M8kMUOajKMGs`e9qmDv(^ zw*PmNRt z=NjoYrXYBWK}fzi#Ys#<+m(+y4J)l*cI|6>ZsHuagaj9paAVx_38te7rdBJi);&Il z!HpO+|M(QTxPr;rGLf%NwMwA%D@P6!WrnQ}4eH3q1jf^5J)8SuC{spi`dL|CHgv?4 z-H>J6E?(Ftv$p-s+VqK>kBshSC~o}hIY#!un^)^0nn%ltlEpy`B*Vt%YZA;XEZk2= zw|z-EewST?w5@pGLoc#aQ*&UFnG3Y}KM@L0Ky{jYW1zmVUV?LG!jN{e26o_BY?r^w*cDFYbCT zzKXspQcFK~lP8+2%WT10TkUc8f>r$AqC;8vI#NKzfaXa5YiDIx`Gd*ci*_{@hzEN* zjJuANfUUc<=2K2fOTck^wc}f8H{^T$iFavvLa8DE_?KzBYrf5EsXsndpSGgkD$b2a?F-ehEYU3NTCCs=_vwEi4NrzcCeoTOB8V6Xg^YM_^OHO`uH9j-oV}E+5yt2C?mq+*ig z&@m3{AtGD+oN(S*EVD0?@!5cPFJn*S-+{-<47Zxl;K}&L^vuk0;7e08Ghc{UL;Rs2 zfCb(9QZ^>BsHNrZUZ9mcOW)-*tuyl8D~qcwB5dTi5p3GZ;??}qzXARPht)s*F1Mu42+=P!>dsk2~4NI zLzzg4Zsm}lufD{cDn>&Zn#Mc7h^;snX{}hM9I^YsAHZ|{`d5S4@9 zB&ym3*Y8MuHtZSm3c2+3yUw;&3WM&SA(!l~t{kz-=hYe+%Z546lkwMZ;vD@zVa6C2 z;JQycJ#&z}kL#pcv$WaIgtj>_vY8(GU~N6bOPnTQijobBqc-H$w2&W~aE)85mPy>w z&CP!JRqpF)*T-K!uauoOlQrC_c$#={uUz-3Vn9J%f8Z$0FX?@Iw()ikGGK!nd2jOd z9v(^~_B8|rM6!v%`k8lc+7-#6DSi9)DF6+n<~`4ei><~;ZR!^dqIF|kY|Lwg;WN#PQq07!5k&!Z@tg=JM-s`fnBFQF-vPao7DmxWr zW+fpz;rBZGe!kz|=RA(?%71$JKGa=nP#P{sbpv_L#3RNpWq6WuTEI9g85OgjuqFc zn%LA_P=ZmoV5ozh3u)Hpf&UK%FTu1nzs5&!K{%5^q^^tdC*3=p(fNKAzgdxrB5sArUH^%GyCQTX<4eg zTb|)irSqlgpZO7vWlxA_7J9@KWs_K$?2BJKF?rxKnlmmWoV>A!9|M2%qZP|07k~$}*=R7g&%+|iec@378bid8cZCpxjWUmVS{parfgNB`- ze-hu{l8hgW_GkMgytRLNuWqzVm*Q={XGxi^+GazHZ@DMt>TSLCN15dlepC1&ho3bK z9}8td&G6}7i-*MM_MVrww+F0tFUrd5xVdfG8I@uTZrtcYsw^-rLj3WG49vl^K$!_t zjC|Mtz@6@^RP~FO4(IBkj=6VniCUCH8ZQw;^@J*oor{!JN3xJl<3N6fv|4x}hd+}z z$Thr64d*J#fpn0ANiDTUn_hOPCu&A&o1`SJ)3s8Emx#-SSN}wwr7Kcuuq8gQRj(GNr9231Cp{R{f*dD%kwi3SVMgroT z9KC)|a@wpix@gq|CZnCO>^-z-f^8!5jU(TN5Zhd1PV{D@mBlfd;rY)(6jq{-AQK#b z$<)*&Q8;k276AQU;bXz@|7rnB=m6!R>inTlJ^m2M;qhrdwruUK$!1A-DswoS1!*$D*Z z7P;cG9+NIdH66M2SiI0Kmx1LC%SB%RjRkC617`cJpy1a9zu%>g3GV?YhLgYIZE zEus1D2d1mCYdkPE?+8BLxa4<28ij*c8z2(%xZA@*e2tQp2shBz&Cs+(!l49HsUENH zB2L7#gdLN~^ZM2WU7E^Qy#)P+>S{z3$p`uMbMb7hLN~(co@j+mOj*ZUOB$z>;Jp7c z=Mp=|9dVy+okhotj{4S@s@i2d-t5ox;;U6Lnh88FD>dc=sS`N{7t$%#4*SG@k#Lgr zgiAagd9mDW8+S*@>&QABJwYuZ66p_KnBl`uvMUqceM=%!j9Adgp6Ye0?(HNw`XnT} zS)r1HR<`luiWA*yUvK|j%K9y9^fU)qiz82gy`5boEH67cun@EkLiPq|-=+e%KF;jW zeZceZg?OlU^d=U{Fn`ICz+dRz2=fR_00--Fh7e)q?H!4g!5r`!GLzx!8W&SJ+ z@r{2PK2I-RZ>gFt*-*7Iu(w;^z%7U?VpFzpJ$nCVX`@eiZi+I+%RwVcBb96Fx%0W$ zY{5UzD+av#X3_8`^J}{`?bKyDM_r!71;&NAEQ?2hj`-#*&&A$)4lDK3H=ZRhpKj;* z?J}GtF`v(WS&;jD8@ocFsI@V9!AglHdEWb6sNAnxA8IXgXEy|_$Cq6#9t;TH&16Db z37l=S>x20zj4*Y;&KCx(`^}F)CBZ_-;*N!EQsC@EtpBj}!~(}d_eSHa;+pAIObduZ zE`oEX5Oqj2b1v3WOSo<_`kO>`&#f(wFf0x9-LXkWa;Vv{*G_=z;G-?t$7AP)}zArd7Ad1jeWP7E6j&G#cR&OCCP8WGV z*GKAWzkQEvgLSai_aj#_HYyR0#=KR&X%ZkzVthCZn0@psZ9nwe_}lk(Du}EbHal$>zoT>GpZJUNn1&- z&0zj(%GwNbW3y@-{7<(-6ijaU@d7scJ0hC}4?YlZ<_xG=njmUtX1}2kQvVQmKeFP6 z_Z}i&B2@}5gO(3*{^6G}B; zT7Y7AF1|Z~@<8mCSlzGHf|7z%pS&ZbGT}Y4#3YZY0R4sXddm6M6_9t_0dNEog7k$y zYblJ74LR>&ni2yDbHGbAfxZw64RJVY>+6f#{p|fRF$cN(`wxIn1g7c_-^FuwF!iSV zoO>gE7|QSu0?9PWN8gWgN>=gLc`%n4B7Ac$P`#O}@H58D9#C9h+k^^RQrpxEvtznW zy%PJhKOlon^O$3ZM32U-Q53h6^3X29r-gU-e(Z7hrJk<_%v2Dn2x)zHs1|!7MW2 z;*b^a8(KgqoEC29>zf4*7VHwbl^joscK9x2f%gy>7Z(BZ(~;okcm^JJvzNYj;e7wu zI;>knDarecZ*nTh_cgS!1;coM|C@OGpTT;I?ZlA9*Y-X;-K?s0iOPKef;;D1yj!YV zMfF=II;HIMdgyN-kvwZVu^Li1v12;Nre=3}rAEu{t?rY=m(K~AFUn4+z6*=l$vE>< zxKes!r#d-jxKsGU-`(n!HJ4fSzC@#2EcWB>?_WH*G=4C6H+t%p^~TA;C~fcVk$+j1 zwx{UjgZ1J)xOiU*?`?HR20t9dzN^bhK#rE@CdtvuvaJO-~ z2Z%uxb>#{vq)Wvh3maHLArdE8yx(81Z2XOcjfIYm8tyCY*+pMEjrRGZ=JMFGzgw_0 zq%3B^4}h*wxnPEOK3 zRhtTdGY-1C`QPtEVaw+E**a!>$fu2VQvrdk!mmgE$d0ij5V+i+Du17=@Ps=FZSxz= zD|O9~Bwd`dcO*cKxl4oIcN0@cwB5^5n0A?*mu&=dz=-z>w8tu%*{qsr>Y6e&f_V0k zt3lYdG#<9phL})sYu)iUetx#7P7>c(mDna6!}Aj6+*3ug+nBww1Y*O(1?rNtYJCIq zqI%-RU2Wi)DxYADtRKfGv;MGKV!5_HA{d5N?tjfupRIfr5f zaRbX#sJ3Wm&qqu$Rn~Ii_2P-2Uqi+IN>=ZK(&3>8Ow`r5l`mEV%P9M}bKhVOdMKjnAIR)668aKE3u(CYrg z`=^>q>Hgo@ zak@87H7Wm4m;Gbn`GnCNuQ6@J|FFHiO=X!^1u2FId}Ok_-t4ItOrR|)ertn zn;UZKmmrRy2odxsd>(Uy_RSPw19|_wc>m9|p0!reyki@pL#kwy@`VxeFop#c>Jnj+ zr~@3G`Btv3#cJ(4rsq~v`ENdS6W7t4qaO-QrCMSiqfE;uzoViaI+pL!q;!XhY)Bx% z2&3juG_X3SLw%=%)cm}~_fb2nm`MVDrVROeQlocDJBzwZ3*!tl3a--$;s!RkZQ|>% z_L16%stCjwQJbrySaUkG94#cuS9zN-=Qv-GT_x>1c7HRet=!mY&-IW9TOu-_9&3|^ z!Qi|kjx2M}liHBS3^s$C|NUJ+wyOx*5h)O0W@jf+u;mA9*uRJUN_{f@Ko3OHJ3x;7 z9p-e4FoVx!N&E}z${s^a)?R8&7G=e=_Rj$as29&KZX6s8$$Xl5^Bna&PA-a$K^Y%A z(I%ZpkXn|>*nn1)k(TzRt&b%C@?>>MT2`I-RNsE~cL4MrpU#*|aJ%=`vn^8prGAqnMZR4jYd(7S9P9`5`0yfrWY$v*R+J>)jCE2P) z0tM!U61fM!sO5KlUfiu`Nt$jVgXCeJq_>c!Pxd3s=G!V;mV1 zMCi2^B^=$Na-Vni-s#hQI#|=&Uf{C|(r3b*VV}RDMah3qHxGW!ZB;M&9`gIR-@Ou9 zOi$GhrNuBH4OiFJ3IISPsVClNl>jo`LtId)*#VH(BIINb;fU4M*H;7R4CI)w=0na| zgr@d$wmr}JRqHu)(~G-ifZUN5j`2{=ER-+CW6%+xGDI8Eg-gidMIGX8s_?XXvZZtL zdQ}Lps-^hG)YJEb?{ucr%-~nAu=deaE5fw*{Op|r+KBEL8%GA6=NX0^e0BI(G|XxN zJ<&El850eu%k?A1m*{Vq$x{~wqP{%{r%9F~Dd9?gWs~w=>YX6BnpW)gf&on!&ZhBx zHlC=J`g~7}*E=EaahypxgYe(7o=Y9^{D~I|2s)g_!qHJC0t@n}yw-d8WgHXfF*a-M z2e^;N^+hJ{|Ic;$WVCh8->Yl&9 zeA*WgNc7XEPZ@2I&<#Y?_xt+*5*h@ek<)&iRGucKi0IMA0CMjr8eHdsy~~5yVX7FP zjUJBAJOwsUxF0!a)EH9Al2lF%it`0}1PY~|8^_Saznvi&OcygGH%%5%%O^AXgh|MY ztRv^R`p#fB@_D6Z#*Yz&)}C!_**CP$EiK7pemD>$-kYzJscl}UdDl_m<>hTuR=#*_ z67=|vXln=YZP|D`XE_ceeF=)m1aai#k%uZ1+2bMTN#t}zLNP@l^cT@;dMx&Bm+J?` zVdE0G!#2yapVepUcQHe$EyC7-=RzUnoAuRn+BBL?P$oOWI_>Q(0JHuQ%VK8awn=F%fGh>=KS6_LA+0 zb^Ci6l?g@biBXi^4|$yfPMWCK*!t~RwOnRITA#bG>0n&LsUuJyZ#!+YYEq>-U79RG zTV5`~?}-|c;wBmHyw&X9Iunrd-Dabkhrt<=3Xm&gPYCE!P>G)!$~y}q4I8MfOIll> z0#mvM-UKIS=f^-NMVc1a9$+IZIixIuJi`?XchYJ|3s6uH84aKT$2Qwqq1Q=w()qcu zQDpnukW6+(Vmaf@;hll>sYr`zSJ}djEQBb=qbFOQq7J$KK^xYtnF5Q&&)5}-926_)^2{*A-}v6 zp&RNf5`k#B>8a)=xlc908|F#5k|`OY?N@D`nZLnv!ot`m*PqOu?3o0I>r+55G24>E`4Os>*Fee3ty`nS%7rXZiJgr8K`5Yw)zf-z-(|8=m9oHII=XSijEb#xq?x zPCyegMqEgO`E9xq3*N;9Zu6B6x~+w(b86F7J{qeTwDhmXEXt1hQX;q2DQ_6HI3$n` z@zAKl~=h=^@CtYRlR+i z9U>^@karv*IwH3iK@cFCUC21@WbBR?ZF>v-`VjD`ki)<+TLQpwb(0l08cZXwd` zT8~AILevk2PT^@sKQt|g z9v&o1jCmSb7QN5dwgm(e*S=NbKQSJ?#T~0D6Ti6@K67%I)bMcE-pSy3iAV}>&p zD)Sv8O=y8^ z5z?{48v&j^qr_^*$4y3ju@{Q9>FsS@n9};LTbTEjifh-aWcOIT_{>9FW@?cd{k?nQ z?uq>!_&du+9m+vsM+;t$B*~XHizB_u3v_P6j^^arY0~jO4=7qbq|#iIq!`2V@K`mx zGA3j=I!{B|fa92;*X3J~NbAC4`|eI)Jh(Qn|`iUFb7? zEq+vcFufd&Xf!j`cJher=V!}Ax4b*}sHl72UikkW4H(;1!I~G5zx<0K7Y#Xjw@J&6 z#jTMr2Z!i9{DD9?a_|95v4Da?9>OS*IBj@M9wjAFARrU4!}KG{Iry|hdnN(wD2<1h zmDMs3Cb?eZgbR_+a)ZvT{kY6TK<#a^?K_5h-HDlC+_cQ7S|z(U%L)H>S$L(2OGi32 z|L(on1ZnEmrd{k3Owm%D+U#CGyBixjJCvJ(mJCWONI3-BjQI4T>eoM2m$U*D;|fit zfb_@O2Rm|sd!BiB7GH|=ktH$SF0<{?`p|JAcc^Bm^F{WC+n0ocS|lC~$db!Q6AnoX zU|xb;ytg1*`OGeRA0CVQJ=B_8KyYt3BU>5HOFqbjc?|4Mk)HJQ?-BCDLe~a8S@KqS zQSygyNtM9XE3D=L>0_7!UsATbW_31`YTuGAJIlM~9D5iZQ-15Z;Zk3razge@aTP5? zyejMTQNQ>-P777PPRGOp?PWXSxow+jGw;yt@QaGfU&xZuyCNcbNt)$Ff2yO^~*q z@3q+;j+`QVjP~GC0!=K!=|tR5NYMmy?0=0}vV1CXwjyy`@U^T43^YJ^5Z6vC;r_+8 zJ3@~2G1Cn`_dkcyxHXcN8tYG`g@G;$~!s+zj%8M z6{^^;&vx{En3k!zOWszSh#Pc=Ac-wDj#ajDj>g?1PB>gTx9RIZ?#4~O-H(l9SF+^q#8jdLi#NtSB&#a z0utMHko_LwhJ`mh3P6}opykd_UjXY7kKVQ5v*THKZjrAY3}~$f(*=;JT=wg*IeGzY zs$db?yE-wuy+6;A(eWtt=eFsizM1*zBZb?8MJRmgA`2}QFMO_*(NYY9UUAJWsi)ql z+Kk87icyAWLzLTPAsw=$kx$FKyLkeY0w_H}Lef{>H~56rt}gNt$!tVTM5I)(Uv+FT zQ8OQr<=QJKX2Nqd4td|c!<%rf;?kjzf>ErBeKWfb@zt)=C!^MyqIgk}#{n#|5-563 zbc+vNV1fxrC07ekibyC;U0h92^9Z3mX}*Uk$yrF?_xq;|1HI-~|6N136%hUyLN=Q< z+4_4HiGkYq3h1_wTW$t~Gu!^8C1})F5H|-hoP;7D2m$z^>mggXQ_~06TxRt)A6g5o zx#a))MqbC_O}9Q3kiygJN9joOpi(|R>Rb84*K-tK>f(%PEQ|@RbFI0mu5l4I+$*`P zJ3VuQz^VUrqx40mBJ17V$G*a-%*e^yjrXii!URjU2`*Nplo{i)T29cB z=_Pif>(;T_&=2*BQb|S%|2=K zB(b~|hs;nA(dwYUGclLXV!goJz51Tu`G+k^aKQ3U~~ig5LSSGMbK~_vekR=`PBJ6w&$8J5kmcUN;n&)I?Pp z^6fq+#zFN2(9zIbxR^P@Dl|8AWbpRCZY(IfW|rCp*UAXw%9 z2|IP5yXu^UMKAq@!#WBVe0uc>vhzCC1xW??dfzzH^7CaJ`z*AKdKg{mpLm^7v_|2l|N`vd&lQq5~-e^%WA{m<4e?l($ za=IroDKG3G*GM2T2kF27ERI`1CzoU!*Sl~$R1Ucb;IXKN!UG_xFhfAHEs+2o5cG0! z1#ZXRwga;fQpUZ>Y!4%>6XXbGh?#RADpFHHM_=+)F^ER#^F+PJ_QXUQt5uSbaC$%9 z;^>{inKPuZ_HwUPBlK9V;;c3#9%?pV6Aq_MEPFVKqQOzGo5ZYgtR|?u;9`sMy+VH_ zy?5t{R+=vZi`<5Rxow(cz`bM>f|%ZXRfjl=?Ni?f25kD=+ZX87%24T%RWuuEb2!e4 z{RLYN#qAimhq01|9Bd`rIoB8~YsWl@*9sic%ib^5&Z%xZX-vwYOqRETyjA3aS}lTN zL^*KMWT|ynC;Qv+y=RVta8^yvK6}thZ{iMQsf!S@HYC5JyMSH>I4hwQ#K<6~n=j+Z zHVy&IF9K{zGv1h8%#UqdihL_uY=kc_@(Z6bwJ-gJ!1Td`>U+asLS!?xX}4UyCe{kH zne%xEHO<`H{YB#PE#~L1u6xeh8#7?wN!DMaqI6^N_^LVeNm(lK%hb50-i`wS+f~{VYQukL6JrLmSrrfg#Nonc( z@N`BilvAQ5_;cKG08;Q3VDX5KI1rc@D{#_iIKwQ|sJy3NabFyQ*;I834$#$T_Hfm$ zd>*tCrr$Z9p;I6nHBRx2=dZ_$xBIVHhNh`hH)|}#DwVbQR&`f}E{2cUHPY)il9Wao z5sZRL+WdS%+=w8T1hvk2F50gGCTq6+*-I^N?w@Zx_Ax9XRZA%_h!g9@=|yqHk(C-m zIOvrda|x!8^wP)*8VF7l6f%*N$a)ooW-)nHM+&54bcIu5QFL*15S42XkyN;qRjO8P zplU2+Bs4+&n8@|V$n!{Xb&}VilO&)BRxmUjMQs=w5*vn(@z#wwuv)wimqx{QH9aG= zz3;Zt&7*XZ^Pj8za*5GAG9E_MIiOdwhfj|~<(D@;qQG7uM`G*%D>?^fJUz)=+z$j6c>yKN~Kw-BsP3CJW^}PAK zPk#LJ;&QF^q6UC+VuLS@nZEUd4t5gqqITY1y)EgI$rjV%P)ol%40T$>RAJk;inMlASC+e1ZMtP3ZV-K%s( z@u;PXF+(vI`IXDLhHln5l6gW8L3}ZA&T|sl))RpHt0^zxot(GrJ=4$Acthuoz+lTCe|7t9e zrk8pDs|EO|GTJk$_)uY zOHi%OA@pEarddH5idZL+8AdmSTmq8i8!vjsWs-ABmC=cx>pI&XX3B}nC7EsPXRMso zgtx?Um8B20Q2d@<`nqqUt5OVwtJ)fuwnb;DxWe&tb-)|n08M_6aja+x=fVM>k-hzU z8fwvDma5{KNtC1OHzIb7duj??m8Odyt#L`&OdH-9sPb9@Wy3}$5_RS#n>`TZEBt-EDiK>7i3~oNR-nF*9O1II8iCsm*23Q6m z$>b0Y{b!STu(V{hS$_52l%$5*Voj1%OW(p4O484 zZ}FL%YbFfAy|uj^-+sBA%6h=&MA%H!LMvgHXfiGFUi6r2C7o|)3Rj_a{G-+Yw=-8rdMPO!wwXxNfJu@NcrnqR2W_GR0={C4P1 zh->D>l@O)>tF8x*ur^zEC`ycCfplMxzJPp*k#`uxdyKY>kefsGU=j(42Y2Ci@PRAL zz8xwbL(JDq0Bj7AsCXnS=J5TcS4%&f+tuwP{YQvWlPGpO3K*ZvrLXy9w;Z5Zq_gW*OqxVaY>f_q-(LW+of*848}V)3&yME z`y5<|=8%|{Z};{(&F^+2G^Y{89#^3rz`}_| zW510vhn+)X3cDxo@{BJ$pv0x0tXUb`bbViAZ8F{oZR%= zI|#|2y2+cEwv|hzpG`8X2{}|xUJ?%f*lC7wZ9Q#$}yv%|*;Gi*5v%J9(yw#dvOvU@TE_}cD;o&C! z9b-nB45G}t-<*HV$*jPXjqCrWY%(F?2f4F=+_ebY?me*$)DZw+ir_y_yz5lm!A7GV zFt-WW1F5LzA&+MfI6EtDr^{|s)QB7L`A0$MuDBp+!x~oUE%n>3r%iwFNdMZrd_-4X z$+@;sY;aA5(j_$amjTX(!trbWErLfI4lC7r(=zKAYpu>XEk9FO zNEY#jPMg6l{lQG@lm)c~gbXIt&lB!bE8YAf`y_z2uQ8!;xYWz#o3h7uE!jqw&iy_2 zt|}Vx-dhdcUPV~b-=fkl*Oity9DTa|H!`|gsS9%FRKA~d5(QBs`W~d@hDniWgUfkj zjD(m5VEPWNbu!X4|NUvN1P}3y6*LimyF#{Ch*TRSfA1081`_&=;B*(-*e-89zQ8|N zXdEU+B%quSX|Lg@8K;^M{dvLAH>{XRE!$2!t~{0M5oeOIQJgltF7>PMMKu`=H#Z6M zdE-Yz4jC$S8h+SM@zXH*Jv;Al+Y8q(U(%Ku62zA;r(7{CH$ED^{Y`T=?CP?Gmw414 zPSXsI=b^k!PUc_cP7A23Bdz)k9G>zKvnAV=pI+7Ut=uZb90&~3ykt&vP#zN`dc3o& zRoQ!Yn~oFJ6Vno6!n?=zibw5mnr@VOCVHnYv-5&QLo#XxXEdanUvxz@CBFWDzwDGF zlam@(u3R~DrM3oV39=7^D2J2b;C54?R33PjfRG8AZ1^sIf2c~KET9gHLL~GHrY*?t z&KBSYFrd8lcO%2Zu)?i}_c{r8wjqTJo$|(Iui@Y-6(O7`oJroV%{3XSKgjyooW$y- zR^N`8P(F3t92r4B8hb0g%2`yVJ$Ts3%0u|THiKJ`PQb*L?RH!AZ2g0azJCjvjD&-p zek%q6M=tK02L(F3Ly8C76}PuVdOwfOFx0k5-?8~l#Z9N?vAg`K{QVIRG4XOQ&ry-`gMjZYncV{NOL? zW8e4UtJ&DaL)^VKpN-Sfc(PC|(O`_^6@D<`JXiX{>m@Kjad@^LHh3hO z_Fp$VKi&T}Nv;-Ac9xuv2;9bi+08hjG(Norn5o`{x(=y$TVQYwl=u4(kx~tN(MN4{ z>B($9Ec$xyV3xrM2OJxqCmyC0YqPgKqmivjS8-JTB6F^_ z`njyKADq+gx?r6iCjIp>IT$UZH7@dIvN>=p=Nj&!cukE|u_d@P*M?AY) z)Zm9_SkN;hM3 z*PTTcZ z1FakWcdHM1)ajkJXBINJNk;xp9r-IGP?co7v=_ewOuOGk9@=0b7Y2QpRRY@TV&alWo8 zy2Sp{R2iRa<1XJKnx|3GrWK(Lga_~CC!;l9&mEeLsF;_}^)AxJ$2y7GxSMbFpebV+ z>E>0su;*A3qaVK7kyDgvV3gQM@PZBrjAbMU1+Mi`|~og>B@sN1^-`12Ab zvteVUbti;b&vEeevsvry-}H3O>zJoYp7uF|J`BP(e=5xCWMb~!3ws&V)OOXYc)PsB zPV!}2?#q|BLjI2Ym$JC}Sdw8-JSQdse`r@5@tO-HfU z<(nRmPWtDZBOqhdC^6`|POB3^=xG&@&~5ZPoBqv(T^ZGlDuTi8q~g{Cnf<*7V+LMy zIYsyO`Bz=O^-K?+@*~S>$Ltz#`yg=D(9`c7z^2bYvfvR$FOpuO>?L*Sk|(sIkuN1S zkJ!%^L#jaW3DR~X5HS9na3Q4H-nnTmE{IXYy6~&jSYt)2rB`kXZDIPBq&9rYHi$~l z9B;*vZ!(aGk~-#hIDNdP)^!rbmUnEbVKkk#)kEO}Dh3>Alh}TNcSDoH73OU;PfUA8 z^NLqn$=!%V=UXbf?T#I)H<#9qH&x?prpi6Hb*i*Ud{cYoTf0g!w)`vmt*LCwONqJS zCd>k*ZPvgJ5l>3X?2r1UR54|EJ=|XuS#X$0Nyd0s z%7=TWVs!p*ae80zvaRjn@q-!)2}q}ck>_7~C1(hCg)uS|F`(M|hw6uz&PnsS$(-On z@;3rkoR-PUwiZG?=t!yQ*BvTe%-@_nlnpred3OtASm)EGF4+`ocj#UmL}+xAw3R+- zO8}QN?xSrV=f=j@-#@ONCiiTQ4p8I%AmmVe@@0i=-O2e&y*H^z(u1GVuOnVCw0Fc! zwyJs8m(?W*YWRxp)-`g2%WLy<7>|I6L;_n`^Fgze%jOjsKNVVjSN|}(LA4vM!7<5Y z3Kc(Slg@hhj}{et44(_!Urapf3dgtifZ4Y@>;tL##g7j*?O~pPgp5FbL<)o)(DsWX zE2G8!34VQ zPw(Y;NICu7UWi>$!AsvkksnI#R?w3=&==qZ-Y_R8xgxH%{)Wz0x81>5hgRUjlMA;7 zdaTa5EKru3WsCh;3*Um^lPghll&>khc6wg@DrqZ-CBCT7^>R1d@p4IPv39s1WBRqj zpR(wtCo8Nv=Ur0m%G#)P`J zEYyc)>{4%0OJ}_LW3lMx14YM5y7#LeL6AFg?O;Qla%w|pT3`Tb?1SO95V71_YK)N2 z4tU|YYk7a@+QC)W49(clVa^x%vqKiyOyL4yS4~0jNfKzi{>}=_@Mu)7_?@no8DR zYLtG5%p6&=S+vJnZak$UAPa?>_t6wK?i#KBch;z|2n7RgCV{A`KZmG|dg&zXP1KlFWRy)C*niT&GO(R3YN#LEXYCL%WsCqiYILZZ}1 zr+;a$z$w2Eu*h8oM|P;+7n7BScrz_e%7Jd+vDII4r>NOS;00T1mpSxh|+lf7^sBOX21Sz_lKs?1k4+gH3IX`?hT zToDZVZuW%ClNG$><~g36PD%j^CrfLGLgC_`T`gRCtW2vv&>gl1r*gOD@6$v@hxu+h z2+SAZ^qCtlZL)IlVYK8iq_K(8>ZIs(LoUpuuc(7M` zC?>p!G4-4)qk~q|Ui)o6ipo4Ba?UdBOh3*}O#UN?xPSUuYrIa0V{wjsj__Lscps~Q z{GxP$6hbd0!9lpu9@GZ`c~H$RwmxgPi^UMKw&`~2S=aB_Ybyrj#=bz7KszoA zJ#hV^YsWRl`sBRNA&;77*=M7R?pXLm0`#OgbUq$lC0#^xniF)N1M|B~a&PsQ`^XPS ze~ZMF8ldj4Us*3JEE_doQXnaRp{%2xL-b97o`8%^$HSeQjwEY}E2>Z9w912UkPbyw zwv>avQselRv*PEkrO)Rt`ZZY))-D&4eGWPvRUX1aNYhu0efQuURm>PuPoW;8 z{>RrC2@+QI!?#w2IDK@Zd_T@)nT*_SJ zOkQ+d@?64(!@{NhP@pX;W)OlfEBlu`!(5jG2Rzhtm zKT$=UH$4fX8<_;-yPhl}TN1h=oKh;zskz!#U11Viu5<}TY+*xpsoHSYjCWC#8DGu* zv-*POd}Cvy*l|#mQlSR|dwfA&Syo<-G-S4&;rRb@ai7Z4I}5|05<`T{7t?HJmHQ5##_5boy zikNl1Yz;85zx{r~HpzOYRJcMwdTab_z0u+%<5g-gF>;i{D3%QgR)}GJz{o7^Vzo9_ z0t(%N`cjZS^j{as&PWm&qJ?n&Ycf5YNQuAxG%L?1=ZahG!>Mrr|Dg2kFs zk^~%k0y<%RF(+bqHGbb@pMR8mLol2r9y9Xi*EzgD@vW33#}PR6qMPauFb0*TlR}n* zyUm{EtkUV9qdd%FD7^7?ih`<^)gmYOR<*2iND6plx%7l}WYjL?G!~4QlP-WrqK?sG z`E7wDK6OPSk-nd$?sh;#?V_ZUMzFoV-mzF--8B$6{HoD8pciX@y|4$1=D$*1R3@?Pz2Qehjz61H;-$Ip=eMp_b zvIh+Gs0^L2VC_ND?Lk|z{Nc%Yxd%eX_7G%Z1muPItd8m8R%A9@VkED~Y$O%6h&gsK z0wvf3`!Df~sae%gmPF#G=K1*}8n(J&D3W_QaU{y$SHYRHfH(R)WR}!T+Y(2ym;X`g zoBg>ox=!1tw(pj2c!g~Bck=YPPphmN@0ekcux$#9c>kPkeL}B)Mi{OdNF-orGpbXN zp;^vh)EhC%N9VyD#SnoKGmIQ1DC)pq8#<_%HQr$2&u>vZ#@i4cnl@m(Cp;5ClNtFO zi!uq%@SMG^g$w5%%D!qcZR&gbiD%Xh8^C}5rzl8Eq`6OY;X;EOFiG++YJp%cp{d9j$PZRu-X5)3>)(0S`b)4&dP~gpp=x9?`HG&)GMFc zg5(fj1|rr~Q&q)v%tnlBNCgbyV@62bLDUrBTP=azA`&i}$b9KHY%eZ)EU3MH^9EtB zAj$${zM-k~hZ@0dG^vQaYvCg;(^TUmvAE$@tX3y3MN*ciebN9cKTqv!P5>+>MQih~wg73)K^0B|ert42+?+;VX zTS^ucw%z>W?KO;kieJ=U>vw$a7JBPkjF*o`XH=dwaOV*^($c%k+J*Y-EgvPb&R^75 zaYTlX$f)9k^FoM#!x9Jb96-L`-|6-f<{_EaP&7c+Y_ClUsO+AAtRlrWNv57eOkxk^minHpWKLaahSY|ZPzWNYj`+TvMk_NRb>^hV0vH=a83SIJrlWmh-W z*4aHJ3%4T;DAlTbCBre?dz>$f{FJwdtUwjf8?f-X+H?BW{^pmVsxaJ<0(Pv-8@1b4 zmB;9wNuo7v=(&hxX=8Hd>SA}$)emD$H)(QAlzaFD6mfb|WXVN1s|8Hsc?2+XX^bz( zs3Jac7$lBYv zfw8)=aR;&+p#pCMHUCAY2^6ADK{QjzA%AVbKZ-Rhze5IZAi{13?h>535I%);VQc-m zE8(P~Hiu;?@&G=Engz7r>OgTS(nu_8K&3q`WOGDd~Yuy%d7>p-oaq0^Di_P)k9WpC#!?!=L9Rfklx_ zgFvB>XAE&_n^=0&BU-_&+-t^A?1H%yC{Q*KnDuunMyc4S9KnPCW(PMQ;%WK{{R23i zSAwvG2)~uccrJ_i{Q7#D=L$>;#2pGx>$+|Zn!1F}gJp-(=P$aLT`+=yLFZ-Ajie2h zAstMG$vJ!BnG!T>D(h3qwJ7tjcPdJF#D;%nI2D<%y}#vYULIZJtRniv^PC~4=4kVM z)Z9KrCHIU)JqdIBC%NU;en0*8+zgPFdnl`&4g_2%Hf!^FG$ixq^$V{CA2BXHk0p{@ z#9Rc`0+_zLmiG(kb!MimcW!7ck_<*4CQn4$+@tO+IhU!RpN%7}k&g4+H*X05O*){Y_Pu%AxUHzvm$>3&}IqK2*gHM#5pK%Cx2aGUJPcbgQS`{xLpm+etj- zkt;hCdEo*m3-h}N`>dua4*iG3A6%wiGv`ION^aC<1zkQCD#NWooo&q+efeDYp+$OK zp^vd;vRFhTwo~S^|HoCLo9FJdz}lgv27tw149u6?4IpSISOrX<$@0I6zygURd?N4U(9qS~z~9=492*vbfEsoA zQWK>dL9n;k40WY991+z}o<9A{G-#;NOrV3e6_SwtKh)^ebwRaGbKG&S78_> ztsp>Ph+g;(upt!e{4hjNA;N~h;O5Qgv%}6W#;B56=CJqsJ@Se_UldSxyj3?!bI8WkeYWB{&(Pwr`mM?2Wra!e9P))qrkKQ<`?sYq0=z7;NA3jD z(lrl0{xR@pJvTTLay6v$5zW9<4faY@QiB3dtHL~!E^!G>&Uii@Nn-7FwdZJtC=#qY z)UH%4+S!F#)Ro;*{MHu6DXFCy95g{F;sYIPSNxlmR>h&2beSKyczo69w{i_+I7re} z(o&c1F9&LUxA~8LmVZSb&Db979#RQ;*f!N~x8}RQG`g`vS=bYx4_7;_F&qqzdB46* z{I3?^+0)68Gq5Tk#wSEQ3txiIkR*(tk(+mhm)U8e zESSL^8e1buwJ&G`al2Z6ms}h8EhkZnwo@Xr<-RpAsbv>&=Uas+SNM(VE|>RWHPe!Tg@b@X-JuX-c3^tkIH@kB(Z z8x2*oMAmw56(2wL9NIZve4n6fF!F+C?l`!0S?Z$wa?Vc9-gkRu z{|!^w5^F)R%{7ZeThBZ3XJj1-3)4@H=hxppUhef!ATJH0ja^V%WOSJF`E@xnSHWSn zgf=7Kpt{wCpWsl+Q>P@g?z?>olNH|Ct$F_F(r7JPsjC%XP3zVK3t6SNqe>Gv1~H3k z9HowjX%R(RU(tLXg;!ZDGP72!zYyfw=cnUN@%{2QWny7fb)+1Q2)#2-_l59fmv^?o z-J0iD!)mq`49V_b@oCg9mn^(ZwbLWwjHFt)Xj5(a!vpf*L5j;w6T1a5Jb>BIfFg74 zOD#V_4S{q?1jw6^kT4+&9(*`(kgAS0R&8~v{sIzv0tOI^2Vd?$Flp>S8owtD0VLqm z&-GhAFFy>ECUNIUAp$bS4zLEHP$;X-nbz{Oli{m9tuUl4)qSku=qLaOi(N-3Hll@w zBVry+fus{dSmpPnrId^eb$@@^R{uSqEXKi-^C=LpX%aQeU^C1fe8>r^0K0=<-^kb% zbASLb3(&?Y(13v1w;MiO1F#M6=m^7&)hIH3)C+C(Bd0M&k|?7k9X_wzm1>x#1n(BH zSHnKyk&syz)ZC_Ev3G0TJ7;EQhI}wVLUX5mQHSqcbXXqR5o?JujFRzg&Fo{HpQ59U zgP!6UVMct}=qb;W8Z^@#2a8Iv7E`BYqX&hLl6p|7BGK#fPJ~MWEc({-3$hd`f6Q}C z$?(0Ds`>At5<^|Ze}{YeZuB}%T>n_I-1Fz>LHf@#2Z#0>!e1=LuEizX_%e4G5sVJC zc4iSxvVLua(%qOhCm3wlx>D{TKfY;epOrO;#UB^8^l6A%Rff%@@+8GU1y@+8U-t~LhkFbCs(|-jbLYBAwIaj8ckd8L3s}^j0pJrE`(Ne=oy>-R32R&u zsA8IjFb4qSzcuXi$(STDw_5$hga7(YzO;OY_{QK)AAWEP?grALyCp-v2eL0jM8>rI zSHB|+pw+PwQlwaQn{7kP&j@!|ZnGur=T8?ty=*lx#_xy>0xD%*npiRT4uO1V0OTXk zEKxQ$HzVM2B>p%jE z21`3%g#b-wtXz|W%DmVdHBqthYvtk7Rx^ne-1gkzag=I-e8}86tP-ia3vM0yaetMy zU8aj&gBA5sG|1j*$Qc%HGnTS;co#M0#<N6U%r-Ggj(c`iNm$U`By4^E@iU*(e&hOc}K#`@=r1S>~m zw>6R-kGzzS;-UhA1Zd>t4#6X*uAxDYq7{iqt9O5VbZ&QLpr_wP%Ku|mS}UMK%O8DD zgEttu;J1*13`Yf$IE5fz;6I7sA+-ha z`2rrZJt$fcmkA7>u0j4bJP-qegN6EeipXqM9()*Z=xjsxaUXh;XM9_^AU1+;mHkM* zGOX4SOg+r_-wq5E=sl7C3o5jg2uejOaDW}_-NB+FBlrTd4fweVfxZGc+z{=D1h6AA z3~=l(K)`nqJgc7@KBNm=!}Kq{e=3)GnWF=q9Dd;M`Tnf#XS{fq4BRpKO-)(8@=5eW z;bW$ySo*pra_C6w73x+F>UNxfGljx~VW40-r?vJOahrSLLA%%`5?%#U8 zx&-gBmO7R!U)f0>-;B9Cmwfp=Nz~gxXVvkBr+7H$rXrf|bx~x+s!@j=24QVbK2#~x zNdHdsF!Y(y2Bn!rx~9gB3pPm+u7umqGA_C+472<4h`(paWbc`>_g+!R9*L5Wz4wYl z_NZ)bdv8hzN%r2q^ZIy{~f|$8jDfE6IH}wsm<@g|{RO zBwyY zv-_0zkUA)lk#ICb9|a4{Yxl?Xkvd6mDOT$XYgl&nz3%RAn;-Rj?d|R0h*(&d1v}4` z6FCFn0DnL-9SnKKWMm8=kS_F89_v*TlNHtkV8j95Oi=CwYQBS2R7hkPl?#0Iyug)T}ti9h`YdMkQQM<}ZKF{5Kv zY=<)M!@bzc^F&o#ODxXHj!+pcT!J3;T9@!Op~ULYwGIt>vLmAOJ0X&u-5I;RBa^mw zad7mB3P0U7p-7CsqGoERQe23hw^wjqoPJqSY53@T{_HwBZ+Zqw!%(|#c6FqTEyX=e zIA)4I@_n(xduO!Iy!lW8VPIgXhrS+tCTq*sT6%q#x7LM{pmAA)MILwYSu#mH`gHiK z=UkO@qZ&y#7!;pHm0PdQNZ12!Y^Sk$t`9*C0r07>c3&C`y?!UY1w6VaGyR|%!@gGf*gF`N?(uBGAT|g+`@9nuF?&EM3Yhf&R^~cwT2soj59HTN* zoi^?MqH8&-E36g>3)uI)vm$<(gm}OrV_UFGk+Fz&h3f0B;B{8c(0fLBK<}Qcm2UyHX)vAj=?gB+#c*RE~dxb7%n8 zF5k{}dSVk2h;V{Epe_G1{+S{!E)Mn<^T5;z>~f@pG^qqsIg*Evaa%A6L%ARakj7^V z9buK=op8*ZZ@fgN&9^;L!DJWF0RPtk=rEaCRZV{^7s#+NkU*>rEh+^^yCzoArsAUw{QLEB^43El) zTKxjfXR25nlVqHc$}XERoK|iw6{1#NXG8xh>nA7mZB2KvF2WzgxP0a-nmYVkb#M6h zm$UB#q4o(2c=|S4gCXhyLD{MdALa^qvU(kGg#*gZh&h*!&yOnC0`oMcudLrXG}GyB zQQ2$U{nqw-CNz*C&h(e;ntFU-xiT)x??~EE$t3!cl}LKqNpxr45_hfLQA?~=Hlc_} zx9DOj^bk{%8U85w-}0m~Z%Mk`3>{{~GLO}jV%{&kcQsqq}K6zYS1L|`>H22gs2M92={%e4ZxtLg*KE}~hB z?EI>ZT@hwxX2ce{!g|08ri79FhZLqT3kj{aAmV=yUKKF^M#sYwQ&hw(^l~FrXj{#_ z5Haz4vC@yMQ?>j%T8JD1II>7T4#hL4N(|T?QG5JCkJapjwMI(pbry{ct`UoaaB9#X zILb|w7*2t8DfDQ$FxY~?r;wzO6$QgZ+ALuI;t3H7S!axR(g$G?vkAk@)Hutquhv>Y-7hgN`ew>oHnzDTu5WZuLp#! zP563}w^nnyc4ja)y}%A0>FVtV7gdI2Hu8|3hIi|+jvUOp#BV(icjx4n^8ZZ4OnS&7HRBI z_BJ7-CMQ~AGPob{CcLG!QaN_#>$Fb3IB}!9@~f*~9E7=;QjLWRcp0@!nK@%yu$e_B zN^kSx#k4%BV-t&rw2UtH?a}l#aG;o}wzaXL6%{>~Csle&k^`Hdp_Fx;VLM?q+STdr z#EbEjq#x7&8vzp?HeBUuopkpf&Ssm}c~Z*Viwe4+xBrYFpU5m6f^)XLy#;GB5pPli zxrT6n0{jg@zJVH3;}b3}DOrZW>HNY%rZMp!yCMb?aC1i?%V5B+Dbndjy$dW%a6u$s zAaX_YVVRGD!0L#BFm!Nqv<=E&W$2i|O}`PDNbca^wgO zHh!cO*$Tle0R0@A2~wez1W41^z3L*u&xTS*u65EF{YrU+g3h6BBcS zZ`Cz?N_mKWR6?$3nQ%-YOCuBW1@MOK+#mXE$9bo1p~{?V8zW-3Z&Lltu=BH8RGYAo1{!7Bp{P1X!XJeBn1 z69P`DwQIMOZ!ENnx^K?P94v?bzD+z>pNVam^s9|a+5dv4m6HpXlZ|L%`;6U+`K@W- zFbO$lY-mSoxw5!!n?f&UK^ZGio&)i<5Yyw`k~{fxRsCB9@|?Ib8c*!YdARjmDQVW| zbWh_Slz!2TmtiE%E>Tt8cx}T@9XSGM{-}W%+y0yRin7!h7NuyuyUAVaaqu80rq8AX zN{Wk>AK0g_z^FqT)Xy!@46Cq`NHMj8Ckf<{;$l{~08uWAgkD*a{2>V^grhB z1*)*iGab$cy;?f%(fRAAurLC+AtVmMJ!JyVg6w%LB>#eJ1%MEh-yk>P29CXmg%dI< zTUp8L{%^7wVvr|DPY|pT96x_SCzb_eGN1kUhxBw+6%{=H)0sJ7Q3(Jm#{v^rvXDm! z?1u76O6G94{a#ra866C;#N;Hxu=beV47$C0Hot%FWO*&*;Pi$)2iLnS)65@jsUzeD z4{=K5X2Wx+2-Z6|hiaYfSDo59|4@$QRv7r=d^@q3wgfAG+{1-*Vt+-H=RKMbbxyt= z&AyvTZ<=TZ-rB>F9BYPZr)fz>Vyn3lX7{K3uMWKPla69M`ba=*+*d2(D6880 z%Y=5tQkVB4?LbN+%BI?A$8*Pue&ci7;&0z4tR(tJ4Bm3`8xhsv&?lMiaq|OoWYQSXXSdF_v5x5>qP-# zoT!8ZIaU&LXusf$+@R&t`;CaS4;v0eAzXx+k|A_H5(H+!xV6&hM>2p1NTZHSEd3fe zuBsgOfzfJY(h|y{!O!{+%PT6hmJ%O6qlQaqVP!=aD*f@}M_S02h>pZrp!Z~dElJE* z2pYME{$OW^L^@>rHpFxg5DO$33Q*=7eszbATzpKKTX*B+#A|qX7@?yOlVHH8jEa&L zU=t*=VH+7wMoud58c2TzC7Z(xJ-pQRB8mw6s^;7xl!=~@?a?|11{f&uk!_x^zZycF z2{LmN(hS`kveybuB`u&Pv$F<}QoBI7fPm~EY*+PF?OM(XF?H_Qq;4w@3TRQkrsruh zaAk?XaeB~ZqLmxBvCG1&NybvQ&755kwM|Jn5xO8lp;6l=O1jj+B@(3WMLyKwWq=uf zo0g0GddW&w<(ow>fgukwVmZ>h+ba8Rh|H^;ZWOHIotD{=c}{diFBs~Usvc8 z^>?=6hj6h4bK|nkw3MGWONg9>;nUgesmuO-QN?=0vVQa*3*_H_67>1DraJr~rfWV5;9tGc8bIEJnQC=tv`{wjFF)l+^nmR_s#TBJslh|< z+1V`mw9{#ZyqM&w`*c(P?g{EW2GSxaDM_wgN0O2Y>g~crdHxy!a^A?Lvvl%@e-$tJ zTny}IINqG43(9G;K8#$1h2XFpF%itIKr8EBB->lgiclO7Fc4Ez7=*|K*bu@MR6*3~ zekZnwP7xuy9AUm_@In+i!5rg8KP=ICHYTR5++2&sp$9R2gv}W%0K;Q_=0g>)AtIdkbk57B?cZ&`KQNW0B(9VYW6( zhgFu7j1CTtfk7{5e?r^MARd{|@R#Y}qFk_pCBey+UYloP7PnAOA@AG zXxIlBLM=EZ{247I`ZdAXaCvcBSf~e&?0{F0hM`Bn%d_2~k~fQd4^A?e)GubOFYeTY z*-kSqJ$$o=8ywV9eTDJ!+1>RjIbP~Vf-VaxDjtgFHUtmJW$dvW?I|N?-Eurl$W-bO3cN0mjW|ou$exRbgi91XjO7zmaHsZ~S zhaU}J>n72PO=DzYT;e9{hEQ&>L*=X9C$?8xY%ku1<=?xBP1vh^pSTy^N?EBL$9{PD zYf008nJSFL61vsmf8N}tBg6isOFn{|N!UlH(z>;x#dFt$Jd-NBs;UixKmJZ@#EN{J+Ip=3R90^Yd%!>$C7VEYv>M*H01B zz`1%wPUS^dQ2TS!OOf78rvH4$Rnv%BLs-x3*u=%a*jNoNCKvAgxMH`B*(7AG=HtiG zHBLVe6d(!01Qf_tfM-H5XgtQxXj9GkkX!A=OF}NWT$~WJ8;e>;LK*>)UoJ$#?~;CoIFm zBU>WjwllR(loP?V?}pTk)fmY-@I$b#D)$Ct6i+qNHk;gZ3|O>LCMq@&V%8Y5Ni<2h zmL8#DTtOjhW3F$TXoV(~#MnchRD34{(?*p>BvtH(sz}kokq&*=^sQkZr-a|T;BgF+ z>MyKH*Qjoxg24-Sl=HmLpEx4F&H$gJ$I+W~Wtds_}Mb1Z&* zzZBG7rui<8dHbEigj=dH)=c&+ljvWiR#+X4uZm2bNP z&S7kPU*rMmLQKIy5`yLMlqr}rG6y%f08gDhB6mK1Mwe9KLC->{M8wD9*L@4!}t}Ozp?|D(}yCSI`#Fe3oZQGRoSG#Pa zM61RqT+B4M%V*4z>4);MRe2+FM2ij{FWN2&5gsfq4Is=YgHfbG=PSC1sK0st(mEL%rQq|VBeoZ)ZI zG+ryf#i*Ratzdeh!bnMf6WdJpkqGHO32fA^eLP-kru`f0z4hrg-)6t%aKk-6Y`u=H zWb_>tsCkH}@{&Iw4=0R7X^B$?w)JjHQmz|JsPN@%ix3EJ=MdsvD|0;kc%gChO{b*P zA=l6QezbCg|v#lUw)y3xHKEl-)4yr;Yw&5KC zONk$CUn;t2LIK8J6cC7r(PM8LViwHGx776;32)oG-L=$pH&A~#vL)d`8EXU<%8ONr zGHkJVh#ZA7FQ@OL)el%+Uy7-+t#&L}Hs2QEaH~>#o1?w+H`SD^ke;-QCP>QgmYAMA zEBs6ubq^tG!Na*2wOuA1T}5*5&dsh+hLo2jj($W7HgVr1C(aZNmA=^>`XevphLS>F z%KXRnO%w`8VO)>)I?3G#Ji;DH%5%Di;G1&8fiVFHH7W^z2`td*5+VP%DfyN}9vZU$ ze%U7Q|MQo#gApnopc#?j_L~d(BhmD?ofIr@!E;AjXgX|HrNEjbWZDN9iUI%^78cA9 zx(ZN$i}3Y|!ourND7v;GQFFQB)H59-gh-w^njqVq!b6S->K~3z6w-FuB*eC0VbRtorg5*D3%5)7=FyDt|r-1%SXy= zNWHcI(M$Y&wlVX?dVm@+8>?{oA%xqS39zQzKa0-~;$+@FgDpk+9$<8fklILQ2U{0} zeHk9syZ{mhs(gg`MWpL!$afL%U}z23yg8>$v>FX-Iu zN;=LoQNv35%ZETc z{7$wnG5ysPIOnB{$d#bGMFGlR`>(vGv%C9byl0TG=U!V)p8w?ql53zkAldRyDTRS= zgxiMhM-YCQW5AS^dC8ajFIN0vJe%zH?c47u9!9`eK?GbVC{a9{+zG1s5sf);sAK}p zwBR~+Sxun-HYc6Ve!+geo*hvKuCA^k3*8E(@y?{_rix49fPtl7OiRmul=`3zKo%?j zJqNtn7C@64(EkLWV<6ZkXafLL+69ia3|zNC111I6Ul0~Q*23?6{puBjQ-cMs!f5bo z;REFh9y90-&R;XMfq4T^N*P!hSY{vwzkq?)Y9926Cz&XpkI&Cn{4cDFY&+pq(Ehg~ z_J`w#Uw>)B*$HYQG-SRA`PEY%KBI>qtC}X{0^5GJVL{`;i^!*MOBd8#7CfmDCrad| z`s%)(4P!S3Ze!XAlL+d^oy?h3Xdf{#G0_lO511f?d;!y&%e^_+MEqEiDVJy7~;^UCe^N!kelLM3W1B zf-?fuLCcBZ3`GFKB102Qisn>1e+}tEfbhgZ*mMPj>r+!x$c08j_GE%FRxsRu@j!yZ zA_&6zmz({7=At*v*1f1ZKbR2&^Gq;9_r~{Pm846`Pf{F>t{i8~>+I{Zgwlo8us$|| zN;v-_BJABeGA^^Lh(rP;Ita*e`q^J#4e{GUe1Y@fY#D&;%Lm45=laoaxV-<+&%R)< z0qf=I2(zpQ(k-m5{pY={VH6)xVgch1dkwKnfMi9SLI4H+k8?DLcaSZhAoU=_Er+TH zVR!+X2^~*Hh7#ObUVz{$zgpDi$Qj%Uibi)irZ<{J;0+-CJ}wz&0D?clv4Dc!}F2LPzT6BKEFe)u7T9~rV z$U{yTv<6t;sKeSl;9?M51mkRDlCbHuAu>Ef_79&zB7g~STnjx;97axnCA{MI&u4tT zc%)E^0rVM{RWxsIqHYxG5*deqXcwK5TSLjtXr>aPE20R8+P3$Z-!4Vd=GkTA{Q2U^(CdN8I#NO45cha5UMaL9)NlzJ2Oj&8S+7|2GAEYdb5JyWo#!7C=Db+Buj3e&RwQM#LFFzL@gq3&BDS08GobN z^G0AuWOX%o=QLHXV;K3vnj$UKy|#pHh>l#KG(l^b=LE@hZAlLxN9YG%2e0Jnb;AtL zW`Lt_oZIW0#t}&Ljry0`2yZ~D;UO9B#?y*QFu+AabV#r~vV6`vg&<-JlyqBg=|I#N zHV(59$sDr-^A3j<@4~{g7-Zodz&fMX$XE&M)>c=SfIA=QK|#|87ZQ82k$!7;@847m zG@#46`w%NAH2!IEl>c-(ukOe_(ojdM-sYxn;92JmuBnb6O#Vwhru!yfY zA7J>EzXTy*8QjvNF32J_NW2)%W7_NSpBCr7gx$?rp-QN(|; zXE}aL(nm15IJ8s-bZcC=L7YwX?d-^M7CVy86!<(p(8adEVn!3RzM^L!%i| zliZ_6=wO4D4~9q}_xk(6QfSnj;DP7Z#jdQiNa}wMb+OU+WQ3vs_64M9?ZC9)*KGoD zY2W;b;-H+m0Me%%2Ic{CI8^$B267tlL1<6mA~8X& zqUbP_4;(epqOz3K!ZvaeWD_&S#m&<`(9)v|9Bo>a8?Pnk%3*IW$!9>l2GtkhSv;_d z2+5f^IOaC@ml^mn#vtb4wweH3`uq3qL8K(?t9C?`Hpu)Alp)~hppcd-7!flqyOaB= zq-5hujW;L2CWVd=9FM! zUU`iMtO@WT6Mj9>e9fQrsU2%P) zPFz?x1=$z}8qnP2_dXhR(JFVXdlS*W%t>JO)$lpZ)}D8Nf%|HsevKWeT7YGIvD}L; z&vz;`x$QSbZ?|yd{!swxdT+bVb)@iP3$4n!t{+>}5F6lD0FpjUYyQ(^;Rr>r9dYAex7 z>{&n!6i)bU1<@d%E?g~wwO!IHh!I+0B0Gpwp^61ls_U(s$j}w~<;%0>lxNG}u(psJ zqnZsT1cw0nBEZt(b{;Xv(M5-4ZW;3+DLDo7CBS_& zIzwJT3Jze$5UL-5AW+k;+?Ys%QW~J@CQe)=J;CB!839UJ`#uOZh~zQea(i6=*${*l z3|VUm7>0y0gdKtyB6S0TpX&KnEZ`1VkOCH@iHyw53$S|lH(W&J?|!X#4?m=&^gv#h z_3}Eo+k=@wZv*%`3{4zm&geDzo%^k|ExLfD?FhQBc32b=p!qJ8h=JSn&*1;9tj-VT z24Kir4R9wAsF(vr27>~=g}w;>1*a+wq9LqflYr3c2@*CJ+TG7L!KQrfp$D%#0fsC$QBc?y+7M^s23m4MF9Im z+|%KXq^x9egF3!;tK|k03k%}@B=E~^rW(m;@KWGe$6X~NEPR@&!VoMF%Whcj3}qH1 z&K|hgVVNy5Ftr2|QTLIwh1STlgA7t4pBSty?&|4590ZjOoo!~S*#LRZM1(xcb#L_K ze1OxLbQ!$$ynSdh#ZJoQ<2v;}w=oCLou2}oyUUwg$)6K^(!V8zdb4Z`cxK!VYbWsw zHNS-lg&OMlix)}IBTUr)fc?-&jVK#V-VRe1`&CZ*2%vCJFb=g6&gor@{r^UiG?yOG zT&x)S7~z# zc$8GAs!s7%+5Y=OS)Dc?BFa~`;YABO8$#@94M62|IbtZhWfAF%@9Tj ze4B``LjwpGl&YuPg7MNkfH#QvKe)&O<3c?N{W)D2GDa2kfV9&*+F?}J|33;|D9`zJf>Kxq^W z@)*+HgKL@KGGWzX9G(4t!5B)*WCjNX7!_GY_6f{8A7RHU`=tFZD6_yAt2_zOple_N zDQu%ZQkmxtB>(5_-OO$mramq18a)4>Cwf5byEnwKe*uE7RSM?NBYt@v`TvXZTb%h^pta|5cQOQVTJ8TWsbsCv%D(5{#>{qPZMM=iagEsFP+Fm^H4f_Ih~!q z20JKPK$62{hrDjg4-#^ZJTXhs=Nc8`&A9enGKl}oQZZ-HLobI@!oEp@1y4w$3NPSI zhs1o~wb(0;5@tPmw#3vp7-|gT8W(Y-;nxN*^3d_R(L{)uT`)C|!zvT>o_f=h;p6mh z5YUZ3z2N6WLviFB91`H<5iTiFQe0S_PY|Z4hoVdZ6Q+fz$t$miBnYr$;_$NDg#G@h zA+#;%d$JlkrULD?nJ$SUlQJHAvgm1%j$wUBQSvo_;-r9m#JGl=S)2JG#D>V<@2>)X zv9VgghUj34Tme4Soyi&w{ce7BgW2?s4*KMKTu)+4a*gN2T>q-~M(nJ=enkRY9~lsJ z@;OfrHykFvMb*rCCbYP(|54Xz+VnqUxEBr-;8Lzui2CElZ4k!83izZ31j4i3Wh(7w z;?oW539;Ykl>d|Ju3rDO7{{VfozGeNf!eTsxJsYlUKBQT8G9Q;G2KOqJJ0oFsFlqp zN<_b1ET_b7PRhXWw~Wj>BOBWTVw~utIOLtUt7{nQ_W(-@LEaoHOk(2O+&)Lx-QCq1 z+EtO2d$(R|Ssj#QWH8-n!@m`Cn)kEa6}2%>zSeB=!GtsM zBud_BU3l8Zh?OM|giy4U_z0o@lr>l&*)tvV3OS&w0%gFxs7|h1JsG5^6fmtg9sf+0 zZ|2?Zp5MS9ejO@_3N_KzI|aClG#rhRr}*tx9VpaT?AF%)Osz?K?XM{r8j7aWI9QEz zxINa^=K42ky7zY^a_8MT?s32RPj7#8hSWhAzN6?)xjbVqtar*Qc@z^YhB&_ zk}351HI8{%CDa&i`D6fPv&gqb9Dgcz)P5OGv{ySCOtedAK#vUdnf-Wtc2)k133izD z!?a9x{pWhc_RcCmUa%)tCV@z(%x_(&GNd^OYoyMe)W~yRTgYvrr7^)@`SKCQ9p{~! zR#yy|(bntk`?x zk)~wVrUdH@_G3QjHoDv|JvS#$n$CTK^4Q+@cRu9sYmV3c#FfMTnY(3_kKg2)L#*ko zu=X!k9$oUh`+5}voi{ne=Cui<^x7qWwNsr&-#Lv zlbj^|8FH0Oij2hfs3QyP>d*{;1ShX8xsi`324wFI?FpDJV@l(1$EAp zSJz5cN>XhNVPwpqZkdk5e1bsyGv%G`v_*kJ8qt9t(oZ_Xu`yRpLP}*f-0^{TzZZl%#sfakL7tT#@ z(rE5zm{*2|15rLQC=Z#tOy@mlx)dj#zKXo%y$s*S}m-hH4FD zF*l$%$mb%@sx=gz{#|L+`Rmaio!Al8JBq4nDl)N$S|@sO|AHl_HZXwm~ef5p|{)fbt7A#kxivcRs{Fp$%gq~@ry?}L{dy) zFf6n>SQ4QYo&d5zz` z_xJggDmT2}E6bc`u`$?_{3S&9$!(jeKR@P<`BwCj_gsLIHNI*b)N#@2>3+Fk3~dif zfYs^lR*cn@b7ZAqji_;$ZtH~&z5ric&kf!hd|&6m%GkbP_*JLgh6_{B5gSX=b!{vS ze&R`~p`4>3mG9|(R(*ZM#&<6>eR}i}6VMeuUjMY*=6B9CqbEB+bjrOQpTV;jo-{hH zjX-Y$P7O&R9kPGd{wD5jILKyP`u_Aib^PhIi+2r=Qev(5iSp^`<16vOYo1rHpo@38 zQpIZeMO%_VlmXQ;HQGIuTa=k|0T;#kT8gUf{BC?zphVuP%*eIna5MWkI{Mnu*Q*3k z-a(M@W%H>k|Ot#$uBm1y$cB4%#o6eEn2?G!nG6ej6=dOdBGL0;fr+6)pTnmR&- zbwxyc2vfztj z%5;bqOf@oEW{Q%sL=8T;B#F~3Bxip}BI8Z%&iE&TNQWeS<@h154QUVV%}5k%N>fv0 z6UR?UPR7>pyW*6be|bpwl2e6e|Dtx~`S{08mm$l9p*rsx5(-qHgbA5CMs2{zzn@AX z2gyHNEA)2+`_e}o0N-1)icArHY&}-`o#)eNG1c9^(w{Op8UTlu_4yCij}c|^P4CB0 zgdeap@!BlWQ+pp>e;=qx9{c8i_4510_<0IHXKcn_rbaKOTMpD8Ey5F1bV@WrRL?@| z7+a+l19zS&&V;^VAYvnpQ^app!(?lE#1w{?!kx5J!1n&ch=0O3p);>4kY6NvJN?_= z#iw1z`s(jSU-)OC>mBojGFG}jN@CQ?sob&OuAE>se|VlO*xR;}J5;D9kyV)_zi>8i z)A48^?u~mgRk)^~WC1aH4?RZ>o_@EO8R}pi!H9d`;{t3yS^u3Sb&b|T*dU}`lgs{l7o#fW0u>8GsKC){q>KE)`WQCv((PI2GoY)H<4*NZof zkMEn%x!Xb+*-EP5s}VH{S*_gAkb18tB|47=#2BIz(o|GGDT}OYJe`xzF#7Inn2^Pg zrflen-fR+(_Vr*;hx9IwXv#3(nua2mMQ2y>+!vA_9Osi&>mzZ-`1bCxyx-NfO0+j= zr-}3AYS>+wo#Z|_zvWTA^D0Z3b>!^w-*-5q{ODZurW>prm5%^9i&OeX{EPtK%j~M&zU144M)X4}cjxx5Hatrwb4}|J0jj4qyUG;A8Zmk5ZcUc#nBMNnGW*%vD6t#HzWy?O^}QfeS`!Uy;+u%lkCPof+p3je4Ga zFY-D9cd)aQfw!2A8t5d{+H8jE#2?78O`l3A1@pD+PcnSu)Z4gIm~%C&_HkSEXr;d* z=C8*R@lBS$q%ppu$Zd_&_Zv#@$y8E>Pt`HbXZB5{+#sxJabmiyt{uhm4kw^3NbW`$ z`o$tcPG!|`-2x7U8axOxnV2O8 zPD!qd>`B7{GF{05JtFPx2=w_Ulag42QMHU8<7?Pgz}0&1kcJ^id9cpzcD`+N z-|{w=6s^INm+sj(=kfe533OhmNz_ix;D3Ua?dSy+iN#EbG zKlRN#Uthj}`AX>V&%|haQ4ua%O)q#y8OoGn%nIK+{ps!RjW&|kA`L5hd00`&%aO&D z)K*2cIW;uec5!|x=w2LoT&HWmbm!0JN?hsLeObAXE>`w0=M!ompgjLz5BocRO1<&; z(~PAND9_nB+D6wUEegRxoAIaUSRA&@DBTCNI)jL*Dc#4~`@f5haWT$OwoXQpUZz>q zS%r+hYWXD@|J2uT+3S+j4>WDv`I!7}gXe9#nNEZh9ZAk(*5|+iZ-I5=2Ze$tbe!e0bNv{((0OU|Jj)cXdQdX8RL7Tvv0X?`dq^#m`$ao z%JcVlYa$}c9@8GD{xku0o2QPYeM(AAwJt51%qkmar5Yrz>OC#a0&1#)>f%f1zfJIN|rZJ8%}hR?l1;ePJhIneaAag zM)i6DJ-foPIC;5?U(_uMi{ukp|5M$B$LMkSpX3wBy_dOOSf7-Vzt^&aMyoxFJ;E|) z&8wYi(NK6m>^p{xhR(>yi~jv>*s~Q1eNFm6{Pzzsrz*vh{)f9S^816TNDC=Z&Aci* z$0GG7v_nmYk0#{{@4xQuin(=h{xzDzcW7y@aSgb%Yf`P`pFjJV4G~fge&o~`{;Gl9 z?!79>csq&Cnxu_S!DPvN$-Chcqw8e@U;pQ4xLJ&Yj4x&VX|sOIV%P>W#Rm^2o5}$tmZ)( znqzD?C4ER{urKBc#nJp25H7JF(SFNkMUF(garbJemnBiN`W+cY`KN;SQN`R5x5qy> zQLx;=4VTQ4@8XS;f2^I!NUPq-%1#*Baq~+0bX`!{(5-qQVL{L50gLD7Hp#MJn*vUO zxapKlDw*1)AUTLV@(*nZ2RZY@J z9zOA&p@v2I>uzpb7YiJ75sO0aRo|CA+eDYek{i?xYG^=D_q2Klvq6HQ6yx)X6sRf% z`WW0)GP%1k;vDyyy zVoHfANqG%-`$v0mi=1d(sqWGy+5B2iNvYc|>d~z!i8;|p9Ak-hIhN6%^cn)Um`bAS z*KXB&b-X#sn8m*>(^}?8Ia9Ry+n>gLr+;Hfg4UV(V_NCu_HFE|F!pFxcH}+MV|}=N zF5VdP%zriP=eAn(K`GSs`#0T`a=a^l(7mgg^<+iY2w!E<=4oEv`ewcK{Eo_q z-Dc3hAX9>3tkQ$W+U=aUkK1?aAOWzZbaZr(hmqjF0nw_8el@4_&ed=g6>J$!LB6gB z`ZeW%%}|b9Wx7LgCm3gKv7W!E=vHKVrxnj0!Cs82bz*w@4*%)vmc1joAO_Vh&)acG zmX|e%1GU**7LHtSrdUfBX>*nCW-!DhqpH8HJOO*0uq52P=o$^3PEwtrpQ?6#)P*f( zcIXv4EiMmMC8NTCmTSED+L%-2h&iIQNGa}@+N@OoTa0_2+g9rt!iulGjqR~SBi7z0 z>3sLf%0r^BdYxQn!Y!@!^pGeVWo!JyQ+0p)Qu>R#(Y51ykNGYpcvUD*dH3Dsw#X-k z9)0vV74~cJMBOY|94%=`vW*Kw2gfVe#<~&rZFL+syE}V6@b1JAGi_1JGlftIjCqen z9k0uh$C9!J#Ci#KlO^HiH+b7)n zN@W6Y_TA78m|Su(G`DBns1gM$LD_dP;NKcD!x>wxv2>a6+yi(qExLSW=u={Dd+JH?`}n*=kPHr zW<}E{V>h19Y;2Pe!ApOR&e4h63-7e$twk4?9vW3-f9SI4TzU>3Y#&&D+kT8h+(Rkm zoLPKPCr6_N;xcsxCg2(Pu}GGdQg+O>ypR`#Pc{E1E6CuB3&xQA+r5Q*Fv?)%W?fK& zQOFqU7^7U*R!V(*8}e1h30?lWCSywFOSkzOWR&aTfsXnXq@>%Y=SObhKtfqa-LKCY z94d=GejF0orGVQQ=}h}JpE=#<_dnmD%UoCE51L|zL(}$EjPoz5`Zp|@mONJ%p$>?% zgGoROi{FRY2?HC8BMfRgeH=bn3mAln5n)yy&)q8Sak2bwjDSeMK2>VGXLRqyN_ z6f{NA{WVKm;ttzoqU<^NCS9*;WqQk>v#DiP*j28Kc2xS%)qACl9W zt0))dv7eMlGbI$19%8>JBt}Mj3RKfTZsGE0@NP-Ng5t*4l>}O1%9(pqH z!1E){6#i%Vjg1)w>|sTZCq(>e4GFK5w6P{|`CNOK ze=k^q$JKQ{kg1i^?)&p<*0Jh7J;lYT-jvv3B|yGeN1Dr7n=s6v6ftghD*IqWcN6>9 zv?^Zjv8&n!a~}L}w8kS9ERM120s)Oqs@f@w#F= z?eVKe{6t%4PeRtwnRIWn*2}-b4e#i(aHaMY=^XrZrPR}rxN)EaP3Y0o9#QzQI`N=e z4~D?7zN>JAY!?paLsFR$T-VRsp5E(*KpW@Q#y7GIf5fdE)fih}^=?C9rGtj%-KA zowURSP-W$6-T*Mt)o^9i@GCg#!5|WhdIy%Q_73z#4J^4(B`iPa1DWH(B)(?Ltk1iH z1Afgy&)#yGIvo>BIV`s_Q0!7>F~KYGY|6ToXuA@6H?RAhTKDF5UEDDD|tIaFBx88SP2e%s3TJn%O z{L3m~k607>`0iEKDkFYwg)Zex-gh^_p6Mr?+(I2~|5zDRGptNaqhOx@<|`QKy@?yF zt0O;B{VjYvuaB(0fATjjf#`|Ao0Ah=W$Ug4m9s#!YRjyrPJ0})U%lo{bhSsm^lGw& z{xzT)K5j8mrH|puKtY69=`nxFozyG%qle?);xqqkCERq8;6dKM6yyqYYf0&8?S&2` z?9c3TY`X|~RdQh9*sM^xM90Lz=Y6@Q*;o8NHnxw+vg`?vzz$E#s0L`3Yw_D9sbz-1 zS`HmO%K7z)wCHCgeIQ*3>?d6R(@XF_%&{lO!l$H-OJ3QUH!^c`i&cpUZkHh;CB1&_ z74Z$s+{NKKFFtc~^D4}5*^D~KICl{p4Gfw5?Rz84($o@1*i-#|)bcJPG0tR!3Vnjq z&|_ISxw_xON*ZoyQE)S7M0&9HcMjg1QYMiaVTx0nERkvWkfXyoe|V}pJuTUwLq{0K z#Um^QRfuNAi^M#_5_2u)_#r$he@=-kgBJFrt7m?*?+8AT$7cUcUeVGb2DA@x`v3!7 z30isfghk=GQ+D(Wnu)R|ms>?0%RTIiK^bRcBdfeil1UaK&7-4a;^*6u*N@I7^SIyL z|E|tGCajikX@2A*P=e9&`AY;ntqUcEE|+8NZ6?#W@aN1;9q!FhCSTdB?Ss%zWz3~r z&4X^wUQD@Z5ED4dtS$WB@thW#b}@Wo!2eWfp_toLyD{-Tm8(jDI^(FMrNc}Idx}j_ zh^0Osm$uur%vfqAa19Dq38$8qB8+TjBng{T<*ShxwP*^IXfl^zLFYL(i1_@}$fbX8 z8={2IxpApo3plCBzr=1V!&vqD${nNisNrDju0xOHBh#6DeD;63?VWp9O6%%Fs}uWj zPNRL!OE7%q512|C%7a5JZZT1n>xQ4wbe4NZ$~G`I2QFKM5BPOFxXEe%)P(;j3Ux7+ zzo~Q0kce1GD|VeQJ`e3DUUwXG#^tLnp0B$;e`x;J{u};=daDq~rtRnH|K8ir_I|E{ zko``+{#xzD3GVjW)!=kmE+71A-Q{L1)ryyDggx%tSa@OwLtgv`y@B^0;ZQ2A6ujhj zUK!9FW$vH) ztxcGm#-Ol+vu*ye4&SzkbBJXo3Vkf3EbL&YhE3O}*@c9KVI05J`sx>pvW5G^o!ug@VE}P(ZceR1N8+hA)L}KX zAiVNuU2}RsLZJ1Ov~}~aqPQwFoMM8Li?2tj(d&I^;hlSKT>MT3sL{QvVtA5KoFM~| zXbvbVv6$tdf|?wPYd_Y;x%haL1jx+?0)s5dJvGB_fHDl^Ie#{cS_iiTUhx*FWh`6R z^K3hR=$i73ILOHS_lgCVo^+T}XdKl};WhciDvlxRh{H>ok=)&KrS!xo)&7Qvhabm{ zyZr@X>3~wc!U>k_9T>E%xPVMAo2@7!sj(&+X% z7;PZJI+*BSUtV6;i5sZcA6BZ{`TI$oH}0QVGO{Dn+I{^uPsRoArVnan=yq_nwj^zt za*8^me4T-$i$RE5Mt;Sou&3Y7md^gIyd->o_0Q_+{Ki+mzy*0L2MQUjTSb!DV$Dat zc}rq(!*NF@KUmmo@p61U$P?LKGhQUXTwN32K<81beB&s5RjQf1hn@x9GcbT)#{J`` zuoy))59O$$^88OJ_kB?!$7W&#EjI@Az(EAd+gn%1ps89^;a7_f&L^E6NnJ{;yN`H8 zFyE8#LLdU1$zh_!g(|y@thL}xCu@EvY7wYZ-aFP@6>puu=H~7{$szOjGqLWa@|WK~ z;*>0A7m~j#i5gfzrsP3iDK&vNJv~h(;u5WyCBgWs)!o1WeWLM9c6r1$Hy<8$R8#7c zwpP*@-M_&ud!h!+nz}2o+>(FM#x-s6cMJ=%-Vj1^&umU_^|L9se4 zf9+#YLx<%hLImSRuZ!r{4%w%{~jQu5~-#k+a zZoK$JIPgz(E4@)%L5QNmg$SGVn+|@En*X>NN-Jj8d4#*9k-e8eJWXcgicWm#^PoeL zkx-$a_F!VoanF0LisnBrw=`krcFyefKK>K8SkHBeWtjgkW%cH(Y3Sc;qP{Y*PfgOJ zm*UZ*Z%#Q`y8A20*XOS>uiw%6%@89r1ANN&yFr^OL-oo#$1}Ix*N2Yx3h=W-wa<<- z2GmtD{{3U!BA|(7{CIY>;t0#GV?@qJ?{U=4#uzato}Cg9SBrZl{~wypGODUJT-Qi< zcej9x?(XiA5F{6kG}1_ScXuNV($b4=q`ONRY0muiKKs9e;ec81^W67!of@qS32u__ z8T~e`zc~hF9^{zm(S7+;t-sKAz;2H&@fn-uLqWMzpdU}o1wA%8Cc5mjR?x-ECBm7g zYq+FrT%r=~(#=^T?a4`Jp4QB-TBDBCA5*IDBRERYF?A-p@GRYz5`8m>^}4vfw|6rv z-EU@3ze<=%VoNiOE2-R^o~zco9I}vBY~4H~!2*RvaV(}9sAGX@z4Z`lJ=C~di$hJp zw(Wi1x=L?uS@<}Y-R4D1L^w=rE$RM2@JJ#p@46#%qsxuYJA&x;l|%+0+Q8>%qt1{B zDBo0cRJ7y}s{hWq`u)5heyXuGohC=cY!!XmIQ<7Ju;-||^0H6Fwus+ER(gw83R}8{AWYwo917)XEtG~Rcis%P3rnvjVzv(Pjg;JMEWs?@d)&>;vF3Na*l)FC&1W z$8Dm-t)>>w%adT48ebwz>Ms&{o9;IN%-)@k%nmz{&3CHGQ?<#1E4V;fViF?xiR-)f z2P$7#_=j7FsEV34;mL(1*jw=5hA%G!9Ql$H3khRfNS};agk(4kO)awjUv}f2|S(E$Sgy_P*Pk2#I z9-?SjY$-ULMepW+_6g7?GVNhwNEv&0`B0r0!qho$CX4LK{G+su+p~bK>o6-m(U}Tz zS&`HPtdUeVuh9Q?U8F^0V3=4DmzYLq+b%lp-z_#e-Oyv-x!vXw=2v;6b$mZJor)D^ z;Au@gpWt!J;Z%ReleZKiFJr+vUGaHML(GCGnarPdM9 zI8WsQl83<$YskhLSgjfb7v)jO`1v%!2vP@!W=r3ae_+w(F;gbPS3(cZ2j)S@$p^%@ zQ?q=lzwnNAZ0b!xMA<`2b#q}Q?rsw+;Bdx9lO~q%TE<=4&X?Gu%u9KG|d2xF86B9rFl%X8idpYyw335bxdt3i-Qsl{V z$8fgvwSLirvc3RXM)(m-x3mXZ7ITBhsdw%v1LNc7!k~nDr(FKdIE}Wwm}{0);GP0r zA@oBK_AxLJNsvH%ilz8S9_4aXlE&uh6>kMsoHEV<{I!5l#uwK1@F6MT59=5jv++vK zuZp!M-@bi-q*R|7Of2m&Y`zTr>NHo?q1F~30nK?Iv1uml8u*?o0<{QI5s&b}acZ)k zip!nWI15hO?KL!N;WE_ak)wheSD*dv=Q@DWng4L+Uv7ieim-fgbM~ymh#bMT_wBIw zSjFLK&+7;XR^;eYF1c&ogfH2y%oE?XO+>C)^Jo+8^1Ebr*WVw+yRX}(65Q<3Z|_WCUqMD4p{lQUn`%r1 zo|_$S_`wQo2KO)Wty_G!je1|7uG4OYY2vnSJUO02Q!OkA2;_LU67>!8%R0g!6yDLF zYC5qY?nHUnrX#cXPw?>5s5$-}yQieWYhy3tAl36FaS*9R{%;B><;D0|<6Src$GuAv z9}$WI$8;r@I9xRbJgThT%V(%*v>=V{;s2~A`pO)&M^}czY1FwEP1qQ;cy#zC#12c*ux?E#Fugo9Y zG)EX)d>f_C+NQ_4DlyDe^o%Plubt*YCkF*zuO7AE*AH(z3n=X>c(ZchaIZwfpEsGvu#xI-kCnPMHe15F@Kq~bofms{Zp!_E%DFm zbDQ%j4;OIl!`7TkBrLe1t+re}cHS7ErH>rCY_;-%akSNK6)15XqBgjcwFU)cnyFKM zl2`5W-I6a|$cs$P08f$H|Nj(mo@p-7hb~kj#pldb5?}CbEfu@6ZtW}3gHx ziv5H|j5~&1i~(8TbLQ$(y+}Uuu|ZuWznaY<9eL?gDaRA?DBMv9z(TCEYl|5$ai0t` z6U^q@o?T-2L~WF1ry{K*{9_jl!sAF5Gw+Hd{m(Q|oJw6M;TSY6zw@i zTm?BQBzU~fO}rfZDZMS)!8G|<`F%c+Z z6CQ_%U(m+}THAU^wlc%3JZ5B)i?jPMl&4IKBV{TS9DPot=z_xjg*{9id;ph)I3>$1 zBJv+L0z1NkmtnC$4OCFhG^3jhU{}^&gl4Rg-PUb06enCx1^|jOpg@W65s~%P1hzK` z_p#`G^$e+}$K7W2gcH4#p*2ZU2f!*uoNY^1TZ@!7@)Q#hA)<|qi(_>CcPE0fX4}jnCHDZT%Znfo|rrXI+o{^HUkK%42R44N@}C9V0tEWkEape*MOf zBvlRpJ~^|(+;M|UW3JJWxqd#0Z5QBCa{TB??!P5|f3Y@LQ|3--5av^_#6UU(N^~qTSWF%SS0}*bwg_NH@U*(?w}Wvc2>GSFX|945e83>8pOR7Hw{cGp5VO85s1L5ZD*N8BG z?rpSSS8)dDen-SmNnB+5OqMP^+nPh!PpP;U21PkURFn&xyQoY-ZIT6Q=kRB(EYcn0 zjR^Pb92`TbQ7jUCiKU_N3i})oRn#p3^#ANC8%;=gCXTnm>M}#JdNVVU^hd(Bk%~N~dN3@u<1n8p=Q~1BJ$sl)%8@(BXI%U*p&_ccn2a zL@Cv@pl9uc)ZcZ^ty+IZrRUIWWR{Lp*g0CaGj=3{2>DTHcXu~g0Y4R-Fa;K0sXj57 zSm8DV8O`4; zMB0O$CcUc|0KTSly)_fWvK#|L5%rGw% ziKww0H02E3 zwFGJ~rVF;`XC6L$IIuu#t3_LaA#gbZh@6r3!Oyv6sIWHNUE5c$J5xn9x*SQE9Gb;( ziVB`SKBA^HXv*ZrPiYTPgshi9Jz4uaU z5mq~M8`GWazyCW$@q@VCvwY-j6kZA(j@-21frXYC)Eh!VFLHMG)*B@prYHG54UrOcaefjvL zB%ljCoFj6Z!8=!!gPns{A4XEq0^1%DB~(oGSu{>k(%()%0>>kukf?a{Sv)0{@vHgC z97NcdD_TR_cB`)q$^BivsHoZI{q4eTp){(k(&A+{c``nDoOsZjx4OZS94rh6&qb@qy#upo#@SM z^fj}3GG07o{i|zD7l#hnOy%NKbnuZ{;B;+!kd zEd{)_@>op;=tFB9w@cBu{(L+V+<;sTGvMGPJp_uQll?8SoPamb-e2~8uD2V;SB|9+ zRWSsq_(~?u)U&U(;YLVhPh{~lf_G&SXAno)`6{U$4I)abT-`yCiZh(~fw*fWjF(cc z0>ejx%|UNJ*1TGR#T|ruRPHdNc`HPbLaVuhAO0Yt$vMW3mh_z2R)9u~=Ibm>Gm46hehVWlP6=+TRKVPSL zt~38)<8w^xoeQ#xJj7F^Pb$`6{IBP(k}V*wIi}%$u{pM{^Hmvybr|E&8Dq3@=fd)P z2l;RJ%^~dT+lt#Z5DY04R`v66SL&>+Y{lj>yrRA;DXy|b^E|#D6#Pp`7~yo;7G$v0 zm>}A57lSxw>g*HE>U)KP_&XqKFW~v_E||3=ATNWyT@CTU=Rb;fKoYQX4l?A&msX$V zI`_O8Q7GX=8eEvFYLJsw@8q|SJXqeryYQn4<}D_5qPMR{7OSG@-)0Mu=#6@>h3e4= znQ%+cjg29XxsC%ATs4&(SqkcTc2bBbrUk*GTm92+pv9!?&q+m9SMS=>V8YOU-^ZwN zQU6Rj;6-PYMwCVpf6)ccS2j#DO$+HfKVWoC%Km$gt;!V8X21;(`Tk>gL4sL8fQ#Hq zuD}4Bp>pd4h1e>l>P#r%aOqgjV4K=t+Lc1_i6*oAbB zU8$r0s!p#~v2$mb3`X*?w#`Csmk6mS9o^osTrVZ*4OtK$ix#j6bBW;l#)w!3FI_(E*Y^ z7V_u2B%$x+X$|Mbf-I6WH07C-quQU4U;}|YEw%d8*|?BK-~p!^TFzC3lL3SZKW4!v zz|p<&o#0mp!OQoybO1{x;&3qDre*o>`ti}`_p4VuKI~z@y2Eb^OUtR{uOc0B{*Os{ zl(=xR?I7DPD$Diayblke@0@YMZ8^;(Jaq+SVHbXMNd`eLR4lYm#;tbdavj7L^y0WU(b(IHK+04-uch0T#wz3Md z9XJ9T>(fKLyq7ypiLy;2o^-Rj&3pk^75tntlS?=1AGca6Zc$Y)_QCl9*hh(6I}z2+ z8sN+R>iMOK#c)y+pr6fgYJ!ZqvwaH0xQM|Ix5xUZFAXjG%mDt$DPf`ixASV2SED(6c=hZ9L}3PeUicka{&Y6=qx#X}Lhs^& zzi5C{pc~k{PHaCmnmeT^M{jvTNR$M8`{Z~19Ccl`J4@I@z8hEC=bsgnhE!61`4#H9 zXyh&MO;7%dkgtBpd-0f}5pl7bHIlR&zaym*ZK=yLPxz1>E^R{i;2mq!+@j^xLlOPI zwL{}&lRrN{eb!fX9HE1MEeljqDdk&9vs_?G$uiQL+RE>5UK~}ZDFRSy@VcO2-EkX4 z&{r2lLMpUOV*Afcp1x|DVOM8WLcMFXlL*SR=8(4FsCQH!rb}5h8;7?N&TKB&ZQeGo)A< zvf9rgKBQ-6Y%g8yjw>l)MMweCT!gVNUzXcFlX!oP9a?U_!6>Pyen^z#8%WVHoP6mM znsd1!74b>ev{UEC;qa@!zCjS6wu>AlQb04|i(S{HlBy%1nVn7=^L zect}n9Z_iwvi{n~z4&#kph)&1>iZja|L*QMkSF)*_bUEGB+M;EP2P`{m=si&o{?Fa z%{txGlmQGXK7apd;qH~0PyjfLmL)6H%za#=>Cj^M204H#Ntp^d2RCO7E9Tx102yid z^*d**wlfphon6-&y9zJ4lpq!eakq*QMUv(|?} zpMZcjvuHFlpjV^PAR^93OoJPnsIQyv;zrP-x78+zkPw+~mCBeh7Ofl&?Ake98UZeK zfH9B}$&wa8Uu9Vj)nifz;R4}VX~|wSZok_girM+;o`Bb9pdfOE@S>!mj1v)BZ-=t# zE{@pH28}JxKngZ>#wO@pXNNvvWbZceccFtb-hj@$xsXVT=;_Qtq+dNS^xu*mybwJMuoh=Dp+2U2Eb&v z1inGlTcK)eTPyMWH>sw?gc8$C(RcMt(Sx>mYph)BLT;_3{0ZOLL(=*RjTfOwB)xk> z)I6PBsWah}txp)9jNM@ zv9z>YC-QZf3T%i&w|9p~93<4W4h{|(Q@WZBtGi<(D&#?s(vs$s$47nxh&UFq-|x+= z4*jbN?Jmy+4&|i9t~>ifDT;ShSldHzJgX@qwI<3;{103v65hSm-K!(={N21bt%Ly?1(W1ve7kN8D6kJR<)1(Ic6JNf~_2!5xsOPvTvl(Ay zsHUiCUxaRrT5ot|K^K4G?1IAGxDECE=3NwUS}b1f(KwFVvm<=b5YLzY(950Bu(w{! z1WJ)|90YsTv>NoMSc?T}JshgCcsc5=cyP$YX)5vTJGSbtHEi7VzZNhuVJ-$b1?516XY z?riLwgNZ}*pMP4FQ7!j8Jn*gNUGC&7L+AlQIB*S&K0^2Y01g@0NS(Lsr@Ae!NL7M5 z>>NU)x8p+f9=wbdo0MeUm@)c8DXN57QCG>5-|3nbdTFgOw}Zmxhg@f@6`LGS z-n|b(=GP3G-FO9Nw%><(uKlVYEJ&^G+V!XoHcFTr9tWwAbMjqIPW3mV5q_UdL8C*l z9NV5V-USDNp&O{b7{9psFZWC;6}q){?i^ZELQ7>@3~#Wz-zh`^Yb?Ya5grD}+`O!j zCgJQZfe{uGxW0oVZQ_l_8(Zs!cg}>w*TXD2?AnaUDy=nHl0CKv{;6%o?+w?R8Muyo zrk{5Xo}3}otWau=v|5>O|ptsII|_B zpz1xV>tAfcP31+G=yOGxvcv4S6<1M>dLxMF%U?8|=$H>U3T(7g0hrhx1Zm0AavR?h zQr5C^rLj#l``{!fKkynjN`6bMHr4BjD?aYZerxL51ag_NV2OHVtdY!3{aLxPU!Ie1 ze;ta{KwIhXL9dop)eh!fK8g2}(uh=-#d~{OP!<9s*LSvUJF{aR|2j4&mW~)oBoh2z z)(-1lVFiK4xGn>S5Z7>F$T`463o4#v1kIV=NE0|cTw>Lx}~S#O0=Ai9a=Z zQD9;Nr$Ic>m-=Y4k1CfjwXY<$Ky2TFN73F__@inrtr3WwU2xD+I4AcH0t+*(KXUFB%np&)ck2oON&j6Z;8Z{s>KeP0ty~CqF?-TZ`Qp7$ zX7rlI?EwDh;>Z3X>gJaVbuQ~g1MA@zjtM=7IXt~cQYc>XMXqzF7e|W|HjvWC&Gq+>VGQ{d`94Z1 z#3Tt!r$IMf%9LK0FL^Xrp4q}~kqK`f{MM!#aur-b7owrT`7CpA??^in)c5m8sEkzaKdaI_{xc@tdxCa1=Ons4}!Y2c|T zrHHju#%_ZL*dh&_tTV=1jwCD#K*0=ysM!VmcRPbW!(B+UQH5{cVHp&Ic&3F7B?8$@ z#R$eeRM{nUGl#%y%AthstVViEm|m6ymzOi$-Gy{#YeXw_`Pqm@r zF;t*VG$PT^quh1bP)5)nuyI3aVjF&AuE4dxX;h)yIV=p)s9ej@A|5Y9A?H7ITl@`8 z+zD8&Ds(Lz9Wfd4{BW%%+Nd1KvdkMYG%5y$?nrM~{@1#=p}X3<0oQ39IMF1lq2}E%Xz1?y&|c{_wV^r@Axk(XY=KYD|Z& z`{JaA*-G@6zIo0S;byAU4HB^#aIOh8kP0sZ|;e+{#yl?Wtq<41~@ zoA_0pIY~o9!-&X8%wlvAN+as3mlW@8Leju`PJv*u2&qKwQ(iTuw2Gg$1M;+&isa09 zXstcZo1O$10O&GolsxZw?DyVQH;j~t+}0x{>?!NYc!+}+4kLt03t5$cSWs|SapZg~ zEzuPRK=}Q53iZN9N}DMVhku%612&J}++!PqVD_9n$zL{bI&TmC15R7#7ys0oO@00R z?;bGcY=U=7qmFEh2L3?u_8P`EgQKC{FIJ=pt@7L~ZNjKJ^W+=BB_qq(Yt$QpK-fd_OG-ij z_M&z`#Kki$c7#qq67p_}5`8@=%Aj6~KFI_iOrEW^;Z)Fm9`9RjiHQ!h$xj9AJ#?d6 zRo%7#b@9G`ZWvj~TYM2r#)<;;`#lII*vLl)?ZK{w%oVQ4iwzHJo9}oIZQC+xku+g< zH#Ouz!S{c-7q}b#hkw2T*twF;E<3yrRe(gBYp5)RZ*oDec#d48#V0Zd6>crO1s;E~ z{c5d3U3Q+)%m3WMCh>g@&g_!OG0O~CoamYIGbpY}3NV@Qym)e@7%2LIANP zghp-MS8aMl?M{7YG9wC3C3V~&f{Z#NALdgD4pGWX2 zevc!}MI#rwG$W@F_*n%kj}I7Y@06^-DcRi}-2{CV<&sr?? zmi|l*4Aq!}vGjXsK*6 zVS00`V}bYoqkL6TR-S3L!df3o<>2J(FL*^bIyy22F57apzB;8fslY@ddSqYh5n6(8 z8v_f*H(8r|6TEA%5?h{B5w6Ihs0kd=MJsq?IyID9zL@%8Ol)so07)>QDpY4OhP#cgRCe_2bi*CgoSO zW&9mnXZTPM?Py2>O`(ZMY-3Br=Nmfo1TU~E$me|zVoJ(TrBPKnO0wf}&5MmLp@Fw?L8(t%$%tO@9%*i}GSqs3O5h z%2_cK&Q#c;`d2IY!oD6ZRI;=J>It90X!R0Z4f%@ZarR41g)vGj{Zy-PWP*>}H()KU zse#1aaxY(^!L7mRS;b&6V`?Pe21v(OP(T|9?qO>}9cWlfH_@zxQm5lS{TNP{L3|`% zf+>OUQ%>9D{MKGtqoJ}03oVuPDx3UM zBC9N35;Zjh*4@CuTU0I2t|e4Z8U@#2xyf?_c>l+UU8A(LS<$Cqt)8m+bb!l zBupI0(P^fKhO95EaAeF+DKk>jMNp4qG+N5jCY=e_<(U@9N&1p8%_8i)J{uhX++6Cs zv4jacLNby=@3_q}6Bj}aCPtNPzTS#%kv>Z5w6PCQTffV@lHT4vNR*V<+8Vq11WJa* zZQ(^#AARk6>krfW?M_yZ3_8=5E9B`vx+HwHe6luLn_SQ_7y?Mc{B9?>A#Hl-mX=ob z)-)MPY$75uZ3ci@3uvX))Wm93NL6UQX4YAM!L8y=EJucr69_B6I(%CNKIraik zcsba4CV?=yw#ZBUW(jRRDV$x~jS0alHHv7dqB|3^DD-dCwZ(jWhVzg?H7asas0liQ03ra8!p}d#O2{;FbaHeP&|D=_(#@*3-7|& z2xLafkcU8HeGQ<|?yz`)vt5IH-4EK(hT`moA)BpRt#t`MuTu+gwpG)?opnGMCqL-4Q?Jc*-?I(;5PVWof-C!<8bqi?n z*guaho>$VNo00oLDOTAkr%%YKv!A?cu>9I#Cgjc4Um`_knug|te^763i+JXG1bk=o> z$&zGFX9AHu1oOIBINkDQOamB+xGAbpSOM1g$q~3%aoxBL{>ChRsPLnhwCl8wlo*Hx zt8_UPz#L&aZH%FU&+!4gqQ7!qhVc}A&TWn2 zmPIBskQevg5Xem@o|>hg3n^*yrh-b4fPu>S&$E@bs4>>A^t-OAVT;Be)W~#}Q|Jk< zz{YDM=$tTlOoaJoOms|~<~V^>c`bm-N$5>5xh~;IJyrvy*4c;EOsZg4a5cKj&CeIt zDM>R(CS%fSS`(9GWn@meJPbRr82$=)(n8)v=(I_B|BTv6s$! zPvMIN+qN^-lP>?Fb-P-fC%&oH*YCtZ49F2e6p)tmtlT};x3k8VZA%f!+4|$Z$J;pX zQy(7&Afl5gi-xM-FKjd_lK;LUODK&EVFxlKdgQ9|q*;Em0OI*_Wplv$aYKeQcR^7)#TbC7J%C6 z6^ivTqVI>Z$UvQar%!CLwbRoyRrgh`5w+QhR6v;64j)T^TJoqg=@@;2v%11bv2lOT z(AGfrtIw_Pcb8XXUZ;Px?*ivh?U$n>B&k0s$M^MC8>1yerUrW0$e2+W_OB89X>&&E zTrN~Vl4CG5qQz0BE|>WJYwIrl%`tG@mWc*7yqRAu!a^(Rv(nQEf4V1sSojfT zvzS(Gw}cD`UXJPY=9eQF#Y3=cKmR;9+NOc^`@u{@y0~CMls?Qh5J$}{t)+keQ9YQW z((C-wadb~raXcQsvE&yLz#(G-u)_h}1TYk6snGk_&sJwQp>)h)Q}y(w)nl|TTqTsJ zaBYq&&BevDljc*?b!TDIA)xykjN)rK#m3Gt8knhnf3_qekddD}CP_Fmw?1(@V6Htx z6e`f$0DSTTZCWT9S+~)qi{}N73+J|Iv*S|$4IGK0&OFu^t*vwT2Ukun0S;k&>M;u# zk(?Ok);dL0V14ksTFlXIw1oQw)})X6cqgs(4yNsDFAxI2b8m>oLh?&!^QSW=vRB^`<5&$p_?BOt;x4#o~NOruFe4ixJNkAh>@} zqbv$v$t0dVM%Cn;GbSXIP)iz#cektQzSZ!%tLYe?oUAYJiZQ1yK%35;a+$K<-43I$ z=pRB^22=%0v66nyiN_g4Y_QEETpWlM%Ha5d0ap<4XvRr0OCE(&@cRKi#jUdAiNmBH zDV|s}NHt(lH8Z0L@yP|~O9CsauHr`+8BDs*p0B18Q>^A+Kb1duerV!FKKc5|%8NPw z><;Re=k)!UXkSY>bY8Go{r;>X5^nLy>EltD$bh$~Bd-La``?X0fEX^`eRJ+`BTMoo zN)0Or^mA@Xm4SDI9i#%Dvsj~|(uh$bG1HuwNajBm6M#l;k<_$B0p1^oTk}^q^TnE^ z{2sxIwVl{=E$R}N*STqz$aE4!>gcXNq;W$LQTyaR&*3mH(&bHYI_}UmA9JCdlL2L< zceqk5!qWK!i_jjF+dh#Dm19CrToXc*Rdz%v$|x{s%=9z}<7)gn1zmzl{ZnBK=tN)2 z)|Lck7l)xlj#d*jF1De(EK9Mb9h);!x5WypKS(kQDtHu9s5X*41y&GwIv_+_X23wSF;1&pDe1 z;}M$K!p`YH9NO`$=R+{?G-3}?5#q8(p>s|4D=)s^%%aBg-jO_$5uQ_>|#+CvHrMea>yDn4CsDp(a?;A-6`?2+6b+gyWE)*W2engGA~sqEJ!c8_~($hn>QH& zNW~cbgHE-rsmu4_h%_G?8;x3z>tb}~1e4;6F-rLIr+j-|_;VBiD|>seolo|hD{QdzQR_gv*V`}1z?FDJTf9b zI@kaoo;uOqY}=w8z8u7yXZz>`!S7?o||dv zZj&j&K2^C;CAY$&W9ZHp)q#%%{{bz7Sf7NLi%G`6B4vy&yI4|Z%JlE+EWxqYHIQOE zQ21{`TcAaoHO0;^BF>RetP7$J&NpDelBQB%Yyh0n;O$l(1?!9|3hRS;E_={eX$_Ag zwaHw!F;(hSKON3tX4*nqM8bF&_sjQ;Jh%seJk(VZlliYvO;^o+euv_#tQWWn(kCP* zPT8>k*{T*Yo9)`{Q2zNI3KAwr5Ch-*z3Ugg6#lQj{KE=*T1cN%vh%yzG6=rV#e z;Q*n5FE&Vr=~RuL_dlu*4Gj(GOGC14O$+@Twxr{`zA4nO9$HvT{jBuPRb z#XQ@LU$g6Ybub~+Xu)h!EZHX{N_k9=DDfK^Re2S*KR=%Jh~<|-f}|u(wt#DT6Bt`s zB-8{)`bvOmmL%pIbphB*V+)Qd)x>le-(-*G6$*||UYv?|tj6-!b>KykJor*LPL3(r z#PRgp0o-4iBJ_0rZvOrT)7kl*^;jzsIJw6=8YoF(!eX^K2Po0U=rBkSvUBo_6NWZ% zakC2wR=w^h?6lYX{ftvPeEex^92Y(mY|4n(7hYOQk7f{J?Cu;H_SgHz%$%j1AbPIR zP@S?;Ked*C#by(8Aj3dkZ=3{K_WqKqt2^85cj9Rf&JlXIvtH020DY;n+UI5n4-X%& zA*wGyqgg#r^MWpGR+T5G8Fk4RAwJW`$B7$>1__0p(fX4f#J zOzCPl;pS4}Vr;^62AI?)fok1+HHoV~+)w=7o+UlF;AE6v)zeheieC&`Kp&{d*r;dT zW33^&&SepuQXB;rQ(Z4U`=TGeeXdS zBCZs3b3mXD<2^hy^vMR>atq-$=WKWSt$$oaDaoo?x88?;%v;Ch{?=Ma6IcOf zB)r?u^?%lz0QZ@x1xwhW=dj%D;&)=)HNREnddsQsApN(~aYfSi=SfwRhK(an(Fw5s zQYSv!-7d>>64at?M0;*r|Jy!EKSxG(ZXvy)A}yWwzwUuVu%h0^+(g3b^ODa5p52ni z2g4|W-DeT_z@8hifZf(LuhX9ZZRJcCT1T(k8(=+kv@@hAB9>U$S@l2xK6eW!;2TJc zsiy5(0hsjVW`do)LIWBtJ+H4IPQ`lZz}A4xki`j){MajSO$Kp7#fXt1Zj2sqN~!7V5@2)0mm=eQ> zQUU+d0j>#~*&TogfEX0eEABN0#&2rc_GE!zkoAobJe>UYgR8g=wFfwPA7jb;-Ru>l z4TH}G&=Zny^yrbIyD_4~`rAuR@QfypOR;I;5=pBP(-A#sN>&w$A1D;~%8%V3O$$XFOY;Z#_;1N^^Xc0YxlOSV`UV`7(V8Dnw{KQT0pNZ=~$l-;zUAH66 z`nn-18ivzxs-pFUZqGGXk>B|Yws9G{#%ykSUZSA9U&%|S#`HLmoZR~isaWf(5ub~f zr_TC@{+>c$U@N0B+fG#68zPa)d?LkwC_!O@*mAxS5>1;!My8~y3~Xr!E{_UX zn`-osC&=QhrpZyrk0SaioDe%u0Uu6yvM{2FJ@WG6JgM5B{91nF_qpdhX8hD-(T~*Q z*~xC@G(mkbsKqE&o)Evqb|;K{aorI|nRz0c&np@n)!})4T*heWQamT`Tmo&;C!JpB zGDW`eG%3hVM#AYgX1_QjR`!=zT`DH4=TmAqCma(pzvp#v>RK4qu9=yXxZGw0j-B^C zW1$)cADft^4zFTrO}?!>#$C)rQw#F|JTsb(yjqcb_TMGIv(Pe`R0fDF7LoSdX1VAw@=3ll{<@DV#p{r0I91vIX|+b z<_+vDliRdg}n zG3@+;SMTlZbx*Hf%#&TBPG|7>iEmJy$`tVRbjwh+?k`)lUOgRaHrf)Q^4pUrb=E{j za#?Ri>OYXvsV}CK3)mpSQ*w4YDr90xDH=#)$^>aJ8D}7kAqXMZC!o-=DaVJ~e0~u5 zFGMsA+t17xAIJZEha0C;-%P{`F!7!Vhd|Le#*33un2k!LRGk-BwT8dUGN=W9(9AF3 z;FR0t1>TwJA?4Mws3Xsk>OC(@2+r^fITxZ?+rmAhh54wSQ@?;qd_U01*T%+h~vL>=T~W@X1I zg{3QgXlC|GhrDc+YI*eV%FpCc#e-NiHaohWYab$Yl@*r5eAT5n*7D8z9quDSN!$@w zxduap?pOt{SGvG+DkEUYNpR%wB zrldjP%1|MN(Y%gV|qQ-MK%K;SVIT1s$)sMiL? zQ7=HxRaRC4lBC^!7`-KmczMU`=r1bTYNHPiFkmIZ(k@>=iELeft9q@_{ga|?+X_5t z5Ig$zQfqZ}gLrs&!p~tFnwxjp5K)L1mDu7zxuXul1GqCwOEHF@bsUE&SD%BcHWaE8kQ0uI(he7AZuB1>(li|>jP4=u#}@6>0j0Aj zz`j=CepReYeYQ+fL>!A2AOG*=h+x(6wv-_!qZ}>3=aDBYTct^ZE=|Mo85qE#A?REz zY#iMM`&6qYS6y%sFWnFlLRO`g*XeO)jG}B*%Uy!Yf>#>9+a13JE5mJ{)yM1W$j_r3 zmm`!XCIO)&K56Py<4>GcOV87KI8BWX=Ldpd?R5`=*i|>7$c)UgS{tT~7DVRhjYySE zH2`%b!0&M(bOmsg?j@ggqj22j^KSZGnv{s@APZ?Cc_V`5R~rJP(WaW9%`3U)i_4Ao z4`xUbNj7XOydx%Da&(FF@vj!G+1QBfEMd4%5efv%-3bw;#O`5bm#l0}(Hcz0-7Hw) zE#g{bNRb$5l5O;JsL-mzp!f)T>rAgQX|`-~WKo8N{KCRSHEN~Fwbn48kuZNdM+xjw zD~~Ca7KIXPe|Pga$75RtK%#zCmQnJ30WU75nNfWDkl)}9Y?4gI&?d&m)D!WFXW!aL z;m}h|4L{@bvH=zAUip4D+6a_9J|}o~oo^nU?&lr9NV^qU5X6+P1mwlaQ~!R~ZhZ>* za((f7KlR6!k$}tAgeiAt-Sdo+24|_=RzUJ(bY$-uG*kBbw|EFTMj#DB4I}2LBHF{A zdu2YDzO{E~`Ng%R0V}kI_nR#!yyn4`? zfvMxKYz^Z+6;-WysY4cMSs|wu?e6TAp z-Z#(d$_099jlWYJ$=h&3x2OhGCK=7Z9uFPtrs*A2puMU({4J) zO40lv7G&g^X-P}U%fL96A>f2ua5}zSn9?2Cgqo zyF=)!s|*`2BO0`+BkiX)ZjLj18kQxalf-skP)sw@GejjKhVFrKn|vLHqbhl*5X<)8 za$}tG%lMf9njkrha0IK_)F*~2IJDxkr#s7FLBWyV>I9|w*d zq$;Z``Dw99i_w8gArW{~SOz_M5sx;-@6{R!tMoS=AZZaC3YjDk0vv9y8El`Q-j}F!>4i z4H9Ig5OaI`xS(STO7-@fQIqN2IxV2+NZRbjWkyC?R@!8aZ=V5BmTLm!LRk70K<+@2 z^j|r)R4nn_xd=#xG69fJC#hl?|2*z_g?Ij8frb%GHiMZsH+>diKJKDRs5Z*2yHKo7 z7cWy>UN`Y*JpGvcZ);$FKW}5*@>e!XyrAuu_Y>d7UcqQ{)`wXRi!!@k2Vx}ecmRon z_qDL}*IN?X?-5$1v!%%2m0Nti&phjwmm52e&%}n~$r=~MLeEw|QruX%`1-Dvlkr47 zJClILJ3J(3_r_dEu1IuQ`;V6ARIt}x=6lcN64cZ4gff#yg-%D*ehh4bi)-BLAKxP1 z6J&VT)584vPt;o&k_ks;GEXQZlzf8W8aKbnMp-zygW{bnE%b+ggLfOAxFpQ|%`>*{ zS7D^6rrC)w35gHH)BUa|l!ueO2YLnQl8etU6=-mCjbpKqO=Ne*_2R8s=`Hxu5q@>T z;k3k{7OFVa=)t3KtPwcfVZ0QMo@D8?vgURaXk9D(yY*AGCTK{3{bmvKWpCr1Qc2(m zOUc$dq6|Pn%aBu!;>P#WSO284AS1jW(24~pYcM)HJ0H$gn*=PENV;}5gvwL(-P!P2 zSo|`Vfv8GKN&W;H;9G7PoB!gy>EIat4fGN7{J?p{;i=~n-Z^6~Q#u2}kl}}vmeq!f zllK5UT{Ou^MOM?mu>Rv5Gb0%c;E6OdGYfICN>S5x!_MmHvXG#Jv+8?iJ7vpBD6dPAx$-MOpoT7Hu zBh_=ATk>^X*Bg!cWX$+X@3;%3^0@iTlb(jkko!(s3Z30JL2~s8U$?0v$dQY^rGvfv z-`;#||D19Wx4nz}u(AU9T?-3q(hIR1uNxIM&PE4bTbwTSL3^7hQc?jhCz;xB18 zx8aE1J~WQ`g?|V0vdg8c>3&HGnk+DMHH8GS^fF_)-vi&)Hs|i}&0WV#IIb>R`EwL( zNHyp!O@aAXRQB6LDvoNHUOOA_*>ClwpU+7^6by0bz_+SbnV$`nbDMr1?qM>`V_hlV z<~KlnFq}w@xYP0!;l_YK!OP1Fq`XWPs&o;^ew$9o()N;eyAl>8z{QH=r!9tr@3kz7 z_*teGCCDH*ypkgPTM5TY|IlwUHCm=}8HVv$nwh#h^h4RWZ?r?QffqiUSy^6A%gC5M z$wY(k31dVS6%tOz0k#Scf31e#(COl4zcgQEl035HJ|+s~`x^M6cAk5mxO>q5$?+v- zM|r5x4ZUwa?>JfS2xa&7{w4ia)pAByQc#+pi!ednyygT(OK8*0_x-;049H`r=N31W z`LiHhQb>$A#Py2uqP*WcLI8l_g&3f=2>Z6wH$D@so&QAWo92WTkp?Ec!0$(N30%kE zk;1TblR#WDD8=J)1#-E)ZA*}%O&A8%FY%C54v+6ylv(vNdm>~tZ+$GFY(+K1R7}zS?Cxu)&i@TX%Jf^4`XIK(eVNrz1`G4J zEe4}z__$49nG0voZ&UAn-yUxV+Y?&Jy%eJ){ku?4x}9(<3EY859)?0KPIboW8p{v0 zniGIeMkJ)Od-wyq*3Z+%q*3CKnwq3=7H7k4Sh>{tqYSHutJE{f#40kaM9Gi@0m#{a zGDaUOcg=z6AThpSOLeXynAEU@`)%lTw^>L@%!x5PS3=&UxEi}IGn$Z`bj>4d zK&?}d*ME}VAubX=m}3jr?6b?i{l$`XhBgIJBzzj*Es>-hPeLo!s$09CO^sDdz>CE{2jvvp}n6C8E&uJ-$- zf`_L@z1_P{yJLFQ1XIrH69=$ykRKakVdEKIy#ZzGMh=-wbIi@wxtcPAV~Ncludo@k znv#kI)(H8%!gj#1R)g~CY2;j*1UM6z_h9Ke*9p)kYCvdJL*uQ^C~61hFFp$DpBKc`@{9jD}G>2myn-3gb}%bhSZP` zhy@IVu^>nfSoS81TFlIDkg4Lqn39av#>;*XUuhUBnogpZ*FsZazy)*}nRcD&J5sR@ zCyT7W=aVgEOF~6@`2JUUx$$kpT#(_=>MEf>i4h+33QG^FbUK$Qa>feZ;ol>}s@*AH z*SOj@%m!D6?FFCf=7$5{7iw2K-*}rJLZ1pKeT4Pv|;-4F65`9_#i%%Qg=XQDliM_re$3~NXh^-x#G12)_ z)t>*?KlrLLZ&ylh`nG>wQHZ@y9AdKg2RBEbALo>OF}`G1Xl}dDV5d3^C#M!FpZGrh z$2RHlchH1UZkczfp#=9UQ!ROV3H{M@^Q**FJuLo}8pw*>CO#>&J;gv46(^Sf;ajwyIWkH(5Wzr$6|7`(P2+3it2+OFry49(9@#7* zuroBU@Kf`qmRXpmV2JEy2D3rO?to*a0sjHZq7q$lzatUS9`t~yKOlw<09FerOuC9R z6caf_d4RIGK*QvGz2l}zQ-(Lu@N#<~Dk{c^i6bm&cQ5t6&U?kxw)M!&dd1YjIW6h9 z&O!xud|W|ZG3rB`xYNd)H=&SAQevs%7B>n3mo@MOn!>C-IFbElsE8fd13Ce(XE=B` z8XTmk7?d4Nt|RA+Xo4>oLt!O@IB=mMz;(1#lSY*Wr>x8d2Fho1MpMMe~M z9*ILyNvO~@ko@#|VN`;|-4a4y9bdjL+lJ87j@7a?Peaa$Nfl zU^EQgRzxBU(mkqG7*#(I475KeH3$!(2QEs%#o}yD(=pNJc3l!*!Oq-Famlpu_Srbs z2}H13L$tPWJ$C=Ih~4~r1|n!x?bdOA?+skHz@F>Zf`TtwsK%AieHHX(Rxzrz$Bm87 z&MuqoC_N@QFN=7gp0QIvR1jDb336q53X*t1{yeVYc6N8^K9hJ|yq-&`&(fa*4}onT z;WDF4&wme|ZI1|Xu3_~hYORg#(D!Y~Wnmm9b<9qT2M1la8p;qaaXd+0k;ypE!6a{K zbf-Vm`o(_pg}(kfa{)`YlYlkWyl@;EG%bjcaU78COnu?*2M}HKVhsF1be6Aah9&C# zDk!h7um4hF4FAIo`)#^I~j-{>j z?qNKIaE0veyWiA_!;9@jKKDBh~gs>smMRt!Zc^YEyk3IPbdlT`bYQT-jMTCN#lQs zfnc^CU@*b4i9;@1_qJfOI%SMBio&38JLBncJ|`@;JThVnst6_No?DVd5kxG*CA85* zl4G-m2~0W0JPs?-+}F5?88ZsDw~iw_uUI~pSY`F|I}>G6NWu2lXsmbr#Q5_SqQ`zm zTRzUi2VkK$R+m<|zsH#ffng>4RKTACF#u5jA(>N68w+b|Ao~6E=}?q^ZWoO{c(XiS1vBgg-!KdOSZbwt3S( zmhlIx`WLZsaB{}~LI!pyRT$9*le{Ji6GSjnq+1>h&5i8*9An}BA|at6hbL*HmCfrT zi;H*^eSJkUmi!BQ1(95i_t|dsj(gBlR8)AxM20^+0FmXlt4CV2fQc$5wj~C5RFYm9 znyU6IB;b6NKM&ujV5r(H_{dyToR8ixKqtbL9ZppLn;se{zvhiu;ajSw%4H3I-P3E- znsnv;TMXTp>hU^Y?OAoo+?1nq=KiTBZ)suu~-5;sH+ zFhDN#{{3oR=LBJTF$$+N&mC`{Py~`yJS}cQToFbG?Gd0!Cjox2K)T`H&K?-)5? z;9l@}tn~8f{Uw;0jgv=aS}w0}@p4jyRTzy*??SaIuoiB?iR@~r?Gbm?ZB$97c$$W6 zm>Y#0S%wthLv$gGOS-l7Y`#bv({#XrdyopAxgQb`WHMp<96(b9v;tw9SM{QPm@WeW znwiTY4fYordBy4JWmPNIxPGRYaHJ1~bXy}1H__q_7>Kbr6-qvyIO*HQKjh91#^-H zlY@H2;fl8*)_sH5mkNF&zZ=_^q9P_)dY3(`e#aT_+XE_~G+lRqUz1CT8!vMI zF^UNyLM0fGq@GrVVrG(+At%#vxbx_IAX#uUau2H1&J~AdLtgUQc$G&%r7*=N{fR|I zz4Z8i$?=6FQNH+bI<;#Ie&f-zW!U89i5^3oOnuC;sX1}nWJ*OS`qL-=CT~8u6sF=* zb3r?g;}w}=Rpgs&gP!)s)u;Mgc3zf#x325#2hH-J&`?8Zv|w&qLbCiu$yPkT`@8IzZkmH;(wTZ@={(v(IE z1<4=V4y`BZ%=$c-e8B{Oo;5eUgu^~)@TU{)5ytxJPi`|NssQI1!iqV0;$uoWoFSKq zLT)Y@%X_A};|as7ezXFf;A%=mE1bqBofF78rG=#*1(-BZ(iI|Q=2=tBKlsp6B|3Xh zBa0DpKLcF;4u>rh4ssOKGYmZzi0e*2(wwY_{5FNcfQ#d z=JKnA1Gu&1=JeZGQPV}CCF3hok*3imwA)kau?3^Z1tFaD!|aKoW8zHliW}4zhNX@I z?N~k;nFlOiBG9CPMy<4!B@qB3R!{A__g-FE2B>;cPq*_yh1Qm;zylA?<|21{OnD`x zdf#`Srt?(*N-<|`E)1O7LZ_mp8X6x>m@uJ9l^r`xlf#p=-e?VcKJOwa2CX#Nl>#&` z>_-ngLZV`wyWxXtB|g{h-@jXAvxmOSVtL-37&===wO;cAx`{j%fxf5uiS6#r*BgdI zGe^e+z({u;8A_g@7Z3;!6waoUrqPW}uFv;8xg1;O&cw*lx}GdfU~0R86$TUo2)gdQ z_s5ToZndoN2=Ptmga#xIbi1b|B8~nSS(WW`sH19I(f`LVf06@ZJO|ZFRZQkiXoprt6X)-gJDWmp?=0|LEQCj0dbV~y> z#|Zed)>y|)r^^A{+P87L{e6|bn;WeEI)V5V3Px}^L(GmU%7{Zn6gF1LNB+x2 z9Qj`|9>eZX)0&Ry$OA^m7NVGgIIr_)e-SkNS;!1&^U9baNrJdl{aCTVJKRd+Kl(6Z z?ZT>yD9FEZ% zC|h9dWwdd@Xhuf51-RL$q{=#7yV-4TP7rZ(>9wd=_5K*&0tAK6sF#OgnXLyop6=&= zHilo$Y^g#+l(7w}2&wg=DsQgFE$s@iBr9}lBf!KjuoQ)bUfbt_!_i-SQo+QYSma{6 z@K~iK=r~De(k7L-lP+t^qLyXqqF;Nf)XLOPCM%UProVb_sg+>~E5KHfS?!7L{oQcAsa}@>6w}BN3n1)Rf_EPox zqu+0;+mG$uF>H_r@r&X(IKI@HgB71p2zyEJ3tP)#=I>f7It~djj*xA+`uZ=$r1!|x zSekxfMjup|nr)Iohi)4%|4?Mt(?tO*u(Wv+)OnJr^3J-9i@`%_D!7}V+GdAt_~OOi zv$n$6PD>De?ji2Np3)1&Pm{zQaW9|8_;e#u6}7O8QBS|zBjfIVggj%IuBtDT4!ees zUjxB{JS+8y8rH;u>9?{M)yMeT&y0QPN` z<5zgnH5eD#hM-?M*t5!NkEuK82s*Z3g?}UGx_gR-TF80XY_4BMW=Ki8~$;1~L92389gr5urF? zoGk~yBCr7(?Yq;J!?U9v2kcjG>TOJmrGrv%OrmtLR)am+k~L9$waE7f!}LISlsUKq z$JU{{Y;CAtR=-M{@9}(UqtuaT$+BhH`1$)GwynYYgJ$b@Q(va$=0iBCCiM6arnyB#nPGIruf-J6waPj0~`&?cnw9=%1t66`0 zmEw#QKZQV91~KLFeC1hv-wYK0J~O}GQ;X?sz|o{BjM($RZ3B3#l>-}ThiX8U+81Z- z9m9gavg{X4-46t%wx!QifZpUx*{jLd`@%lb9Bz6E1JR;yEqWM!>bxSgn&SD=)EGgA zemnh4-ksr$7v&gVf(Cf$^k~>q*2Umy75Cz&Rb#v=8b}!tj|M9LtHOlm2_;j(^WRZr z!aby)0FF(`5xMOaBqBKOn0{tlS}gvAoX|P6Z&wpZ$Ld8f*#G@v7%tNIVE&cXggl;f zIs?!q)HpA(opl^A71e^0L(wBX6J2_q`!aVuKa*?@GitXy{@FNq1LuNNiK!we%##W) z3d#3+k%b<6P%neTMt~HJDjvhIbHpTGlClM@G!OB{>)@@|-g5P38{&MWUg$x~g9waj zUXmDBVu@ht{>R*Bc){m%h`qr()P%r2zmLPc?xG`dRXki0W&8xI+asGGkckNx*}JGL zF0RbBE^Qyqmq;*K@XMP5>*WJKcR|Cd}^)0H1e5+O5 zFvt-GM?_7VzA~H0B=b9Woj0me#&THFpp``)M|>%NMyWboKs14I(#|$bDMsXfs)#z& zdd~k1nW@%#&3zT;?Y-vr+5j&v>b3zGrk9|SE>|c?(l)F$X1siVBqZm6tf;cqy57a( z2Tn!y;CJs!iPh%~A?iu=)XpP(DtsqoA|BbQ#-k+6Klv%;l3DPsx5s+mso+1gqAZR^ zelLeK-te&nHqr;}C==E;{Y~yPLU~>$@QDLr(qE)zT5(kcYly5k487s?+&&h@TIUX)IR``@3n2Hy`)) z?s%=0O?Kb3Rh(Arc|D{lr^ik_uz;Q#=VPzIT#q1eD|pwO0V_)=n{*x@!sdLGWM>-G zPx(s7%3Y2E;no7t)txW|DF~8CzjzqMRfM+yhSLOt7Q2sv!XfP7h9g$+2>~2?U+Zzp z+Z!?FU}6#^-rFZmW{8I-2^AkhP!>Ip{0T*sE+u`V(XV75PPL39RqyHtu&s%;`5Bdx zLIqp^LiFkCfxPhD$(kHi2+(fruzN_xR>p8W@h8r?4aE-_lvO}MoY1GqB^X!%|6@sK zYx>5^_(I|xhWuWsg{>{sf-eCO+CZPd*EgqP zvV{?Ljrbc3LLrZ&mj{@1>l9KXt!5tqCH_lsWMvZuiO2>?#Nij%>mvcjB!7P>LWpUb zCg`Y59@i`lP;=(zLkUF{>i)*WHsp`^e-^+<%kbfcqL*P<0&C#c#zxe>n*C)Brc|K5 zEmK*Pm7iZ6OQLb7Xv8*O3`3706e}#FzeYV~DU}BKGZB%gyGc^c87$#qa~IbU2~fst z?OriIs_q>u>3DQ`e$GMVwF>xTEee>4P#ETqgRTn3+Z=KFJ~_%s?15(Vfe2<&c174s3F5Y$U9s-R0J zBNOU%7}%u*^v~(h1=a-A6*?q;6irYj{^EP?iHsV1an$t+A49}57QT)N%(L?f0kUq7 zM*JtSWb4@R+5Ylz6~%v7#Tax)WJv|JWl%ftI&OW0d7Hho;kEX|>dZ8he9xBvcpj^K0Xu;0BEE1;n*A;C(L_ zNDeM8`~KzVnQ&yj5fUWFaSj`Kjls55sT~vDcz11^l+o1+sW7sYE@yH9Fawr^ydu!? zsWtkwQcx00f^~%_v)=W))xWdC<8-b%KflUf%GZ%ziN8I(_0&nr;b@>VE6A8v7oi5b zZ39n^MGcgewf|=4^?@i!(_;|n+b`&n^6lrSGF9=(2m1*h`s`?*h%_pT$44eb8&Cn;Q*X15lxU>**O@+PY1SWkHC0;(txw6+|cC`SS1YZgH&B=+Ns zzkv}mnbN~CVqQ)^P`)LKXie_NEpL(RR#6==FONw7)?O??b2Q!V`r+|SkH3^y7eTsl zoNR_C^@z_-j8WfTl{nngyx{LK4Mbj~Ot_#7+p*RQ6hEZgb*3Xr@tWm1@d&s*vj3d7 zVp@@p6tgKPFz#OOXkv~s=eQevRKbd~*A1G(E(?_i6*<8x=A3zyL3uQ_*YOg{t3Jmo zQx9Q@XxWKbNzckMS(+|}F_b=^Dl}2E3*hbm^d89clmd@>bvg+qK*vg_LYLgKQ}qX^QPhK^(`(fInEMP$!n`jJ|9km3 zYEbbV(y;9-_;aUXYKUIH8b~B)Ozlm=nmbN`-nZ*_aTCU1$M9EpR5Tc< zuGhgYjwcq(zz|oG7sYC!%5)(nyY^%5{Op%miW!-g9q<&FUfAh(mfWp;G7Q@+|F5S9 zzwvpqc(vxg?{L?-GR3LRGc5Tp@28Dd2f$OHFml2@!-hRE->1?=8uBA< zm}2tBb-nec!7tmi@Ij(9q5t)0ufOrNAAcY*sM8c}VWQhIitb)SsO-rI%L)FdjFBi2~Oha&RSa$_%} z08$R*=xF=LWDPc6UeW2>#aeH^`HYBW5ke;75GWN89XRT@_uW_0Di?;wsDfWqN|l35 z>Yt>ikDP;#_;_Nz7AJk3$^LEa*rcd59?&?WDJsjQ=SX&7t*KOif%NmoS6>=v5ltp` zRt{lxlpd$Fm1*&rTCuPJo1rLj($HDB7nxNev4_ft{yV6ony@$4mRm!%c{1zq0(fGP z7$rkh+Jr|ol^q}TU*TwrA;?pd^oG_Lc6;eTf!<-4M>4P9u z03>=ys5<6aS3DCIK{ zEN3yFAjDxjGdymRk}gV2qKbg=k0BVL-%xXbWfhFacg9lPnDkRkSYOuzBmpAQI81-H zfcBU^7oz3m72t)@{ax?|-nY9iR&eC5l8^S8(#Q2Uwye6^c^(X?nDXw7x>wotHy8|_bIVwer@k4~ z0M1>9gN}Rqfv?qD|Ge;}La(&aJ#Qc2-FNI>ahg{h>1Wh_0uvV=#~TEf|6>Z;=RW(~L=Pew<#-V-LWLQ1gphvo@7u#Ty?h7VBHHfL`CIq7(}V=> zcdwEQ>BTCqk)nqVkg+xD=|9dG$vbIs0eE9p$D|; zfJZ?-5_%Tu6@-9+M+sD$je4+{*XQo1&$#hO9cvi2gn0wacn+`;@4aX|4NDkCKCu^ z6%zm_x>OhSuAELZF>*pL)iw->H zJENTU)^%|GsV@`hwUK7U!OFePt(Wj=@l8`l(gLS;mrl%%KkMw=0k`oU9kK6=1J$(} z!}q!%&hl?geF__f?gn8R9e>$U7_=vJ-PS+L%>^6W{$_7|o!2&EM-s~O+!A%QUJ2m} znJd?*_XeX7?$wx`eqXZp4UA~17_W&}hzkJkq? zGc$eRnAF_Bxg#bf#wnxIXjj2?*#!3`e)|$kVh)ZW8q53=3;6Hsdth;EEN7^Y2FR5J z9znns>py9*A@D{7&J>{g5IW#HRmO2!ZG#E|u;T)v2;3<7F`uMJ&t~XTM}gdb#;BRM z7||=(_@E)Agi7#kSm|mr1+3}29!!djD8(wsKQc7QA{9$$=x&h){6?2~d4a+uW7xpJ zKEm_U0cPAO0fE_KRYHD`q`~=b>z6Uj*Tufi7|VFj8wVTjucHla%%Hf0p7t84zVn$XS7)h zIAv(psBV(t5fScQ=RPuMv_G*4UKcY1A={Cyz)(%6d5;E+qBY~!Z}WLQfLyg zzQ$)sqc}4^A7Q+MgDVsfr@ECoa&t#KkW0J$xi3@C_mi)~!RgS*fo^i|H_G3_gsG%E ztm3j-PW}}mpUZnrWTgqqe)v@qKDZCVbe>~cekx^vQ-^Y6$VYxN_l>H*ZODMNDy@y; zL@*S zWFs7GtY6JmD74YjL7$GOf}E8tLj_)`X&y~g=Sf$wJl=FLh{nUVSlcDmxMM=&0sv)F zkp0D|DHT`>F%XRi76G16iIq#QpA|h?k9~=UQCcJ3ULeTcJ}6H)tLKui-Eno6fgS@@ ziz(j9f^;U1Y;H-x+go5=0cfqybwg&1q`1vyO{ZGRhfP~`Vo91}I1_+gAizggJwNnnb~b9Tzx zDr$<}3s~F4@>wu5TR1p?4!_{@(Apd5uQO-b4hf&KbLO#LRkK=m+8*}Uj^tx4~|Cn*bl9G~^gLO~KUv_zwjmg4NK`Q;5lcbMcIe>GDikcdDkQZxSSz7-nXtY5o zR!u+4fgL+O`PY7}DTVeo46u9=d%ifx^O*QZfoG^PyEvwNa&}%*&+d`;$H#ah+sSWL z{gRFqORtuJKcZkH%N%xLO=qnB}yV4Fy_jtm+uc%1iIu4$phX z&2A{$u2)y`N?`Kp!L;a3R@g@YXsJR04$n9$|IeSyjmPYbt*7H^>U4R*)5c=pU|?W( zMN4Ts_%#A5NB$&?7OZI%-W!%~kO2S1&ZrMtBQFc4jnKbb8l6&2NB5aGyR!4#g- zwiMg~eu6EAj>MAq0~I+<@>0j13>y$pN^-Y_mXf|ZUkfeAisa>c?9zWB=gVW$x>$`;0=ZJX^#Mro6AN z%}A?e$2W5)rM~#(nly3c<<&!niayx9$Ouigluiw}Dolpii?{HGQ#3U=g&&j+05Lu6 z)Dvfe*RD5E8~y{Q1{kzCy`P<0>(s`yYP929k)L&*qBP}lk4QU^Pf*3f2AsZz0rZvh zNep%EcjKT4MxRDFG7;^h17KDxDq8_3g-C8Si5AF;6;qDT2VM4j=zBaG!L^_!FWKr=$$1%jtXCRC2*Fev42(u1K zQ3=j>HtyiZq31vdi$bN0WF{2HBPI4gc#R7@;KnQLsnxWhMT#6Lsf8m1OCZQJO32en zXloO&v%?0kpVWeBUvUvGWB)w{@cUmA-5tlWv(Uh7a1L#W~_&OBM=SF3;HLZ9UvpC5Qk zXm#IB(<6xCXKF9H83_G52;3cyzcIC3klQ{@M01!p5%MjM?#^NXH+i3z9TKPYp9Fwv zcM{dz(tWQQXd6VtW0BbghT4e(dvk(E#yEx}& zP5-OIpz`mmE}zTp4;HkoPmR^4OLco$o@a1?b!KE@&C~rR9(=)HZT2l*o+`ZH7mm;A zPdx_TsF%bk_+)Tpn`nwGrAI80m=yZ7aFN)AW-Fbmj(D76aZlrHGZ#4{peqd;OreSh zChyb-W!g~Xk{A!yNfZeTL@#(pc6JI1Uf$=Lojwxa;eXyru<{Ay#I*y7Ivts&US7Vx zs&H8^cJD3d1SYeb!gI^SLjKK5yWS6D9~XQdp?xn8d=cSnJN6EKsRw)_VA@K|eM6Sy zwE*{w7Fk+mit%QWWy()>v=HpIid$rv1azZny4)?jJfvtp^y~X(ed*lCe>*!D9B=z{ z;2&X(-K#3io8F5GZH<+OL0n06Doy0*1<`Bbf1+6uXFEHc$*^XVW6Gw~NX@TzViJ1W z|8gl#X!jp$Upf#1rOS1}PW#&9&{$f7)C6?b@e3|4(tsw>_Z)f57BGn8!}pR0j%b|+ zI<9B+`hOF;H7V-9!I0a2W_1g^hwGLPUcLk8MPOj>d+Y{)Dj5 zr{{nOBpC$M0;%oUER!O98?HS(ewB~bzO>ilosn$!@Y$IkOo_=SU-?N$!O=q(B^Z!i zi4`RyNEs9&FcLXqjh=n4zm-oxLO^EUV?%^cM!}emYxkIJI=Nr4RC~{1^FQ=cMLa@> zhQ^>73QH5_TiB(K=D(2kI-ubx2TcBm!KNN61D)z->v#~!RGTK;bN<3~}~JB%#Ch)8(w+8Tql51i1$6zZ?hd52NP=GwCp zr=5EWqb9p+3e?Lpw>RSW`KSYM>+1xcit03%xuQbXnFrJHeC_~n*9;5{1c)qreEfg& zNh>{ExfEt&6O$wgso4K6v=`b_Oa&s-GDfarn%mQ>_1pyPTJ~Mq-#EKOvQt3~Q;`{@ zLK`rDkj8!_PRmx2Za-?ZEqT0oko|WM?AN4^ThpPrc_;erQ)R;})uH?$L9MwX&Km+Z zt4HHrzP_)aTRqQU;AuIxJRjnyoAEtk>1sC-lxPVT0(Z%us{6;yVQ_okL8N%T*Wo6Qv?MRxva?)R7^UI_3iuD9P31#VK@j=N|dK78OzFFb$d%yX@)W&}vlxwN>y ztiWiNC3$dLo=(>@=C{d&x})CtpZj%gAJW7D7ebG=Kc9(+4ULS*UE9&wBMABIyW0U4_mKDjVJmVFr(6r&YV8UkXr|jch z1d)XoNttWF3js(uz`y|@)O+@RjB5&i$2>|K)<>fsH&NAsIJoe8u;EeAm&%0X1Dch^hck>^jp0>ocir z#8ITn6($Q?$(ari&|=eNZ|A<>>bE}6uRJV*1qZFFeiEHO7orwApyiM^;7|x_E08Cf z*dFNMj9Ko50y;!vZ-FL4_3o4s;9s0*1^90lIK)B#ej+<)!3yLiVT_js^fdW(?%!ei z=ZG7A=S$B8l_0GX7H|K8g$frB00Iuf%uX{3Uqp&Gl+{;BlU0=xbvjjdPOUp?{`a2f zr$r7#gC+_l{IkQgdcGRUh{ekKIdA~O^5e9K6h<)vhwJ3cKo>b1R636n3vUq%w{(+> zB4w_EGO(O0uWk#-?*nVP-|?DoMPfUo755Y{($J!PBTW+D&ijuZIX+3c(89)=f(UmdlKMB>w`=`bRG3p{-Hm|Yg`?jR9)%F6eOb{EI z3cST+6^`A(dwQG9JVE@|+9c{022;H6!;nBPjWSW?v+_TUv2*G z|AA1@5r%T7IWc#_>HhV8lC?BYAy!bHDzg~aTw_uz)>tpG0nBF0Mf=CYa}tyDiH`r{ z=`5q7{@!R$GlWRWNOyOabT>mtN|%5zG)Sj(cS%ck%YbwbAdR$ufPi$v{r>*z-pd=_ zu@-C1Jm;MK?7crFO~O;lE*w>QwF4f6lWK8bbD_`2Bq*E8!BWG8^KjwU&G7bW<0g#_ zQ}RoGD0c9-$2Vb7N!ble4NIIYAJ{ZM7do!QAlh>Zu3kHy9(A<7KYHI_U;Zgj!0gf( zdy%)`B|M~r81p_~gXYc=E{e4j@YK1pGGr zdzNHBt6+5%tVs2FK-rmg2M~JgQg<|2(niVvWurAUE9))A=W`6>QbiqA>gu>P@)~Y# z+V=-gEE$OtHJ--4FSkPR+KARj1cqVBEu;P|AyksWILesS@tO;o*;z$wC@Ge-L`ua{ z1cS-X?!eAn62W>yp<>BN%OR97QK^iHC`OSUP&H*)l)lo2K|!zD2P|QhsQIog?})4T zXUBx@85^OmjcAm>XiyvzT+LHoV}Ob!b~)1jxEU!}{2gVN$_#o0>0_e#sjr~jNJNfu zNqJzs2t)SUU)|Vl?K=HkCw@&_l3LQz5l#gXo{{M73EX83E0m%mB;^n)c=ms|%WL}{ zCvpET(xBCynN_b2@VU^Ekm#>a*;-93Ng4X6GOL#CaDF?gwy`@B++XtQ&q$(b*}ob&eyh=zw%MO+ z{fn?$xf1SFBuc@gZ^5R_DBG!KM_kxH#-dNN=(7|Tw<+uK7q9-s4C)_(QS`S1_}(+g zqGGe^M)`abQqap|ndpaiirGvjx|_ zFeWRT$ed!uNXOgGeGhJN5ovhHF5%-_9P)P)K1Wk!UM^sI)Y7j5MYW%N74BWqWJy(4 z#uIfA=@~y9G!dBr$-}>o8f*Ue7|8~7P!Y>Ubi)? z^3CP;7p^3if8S98{t!e^mqI$qHUx*L!h2Qd^qcLtl{<}_&+ySA?}7M3iMA5J_MNJ1 zaf(gQ09bczygWg^-Xs6d3&11KVDi$8@xi0_6Hw2fKmH>W9Snv^&zy_97fzqKPmkZvVJqW%^mjkz|?=sD~th%v}P zb*%Ga|9fCwcX~0`>I8J>0PD(&eRz3CMbwWZ>ODR|%Q*U+(do~(Ao62!I(!VWQoB>T z@<6*pp!Pt;lAuC1`Eia9cd0;75RzA#<;RtC2g>3 zjG?9GG8=K!s!?FMZGi@Xp6J6$OmI=0F5L==yOoPEddv^QP|9#%O`-*+(Is2(|8ckP zwjcU>Hc=HX%|d<}2^5@$=_Cclg$%remFTeOIqu3-*Z*Da&LD;PBX2y+Bz$xDXm%8z z$7a$gmVXM4nTdcDhRx#v|Esajt}Y#~z4&dR#O6E7JAX3Er5;;KDcnYjUFBF!?p30< zV#DS?*KW*W=wX)~aN6*%6&^Slrv9($?j|>^*0<$Sp%|f5dL4?vbW<%@PfG*ER>%xv zsIG4N|0p+L@$i@a^1ID0pgDE@B>(=PtEEdEe$FW%j)o~+=W4+xj;~SjsS47YB^KJxKOPM zE}E>=?!&j;d%b<$#y7}Zi4{ZJ$@|1t7+c^wb^!5#KcWE5M!zZabCG~+PsxUOQ$7fcx6_$M;e{o8`! zB1Oyv{?6~vGH_}g`2hn-#cJEk(TPq*DheSZ%meRDEalw6%XWOxED4s>TMRw#^c6(pzFwa;Kl5uEoYD0Lib+{Cs(;;1uL<3+Yej*D0gF zg^sFQ{Ej6k8S5cwJ0=)}p2f&u;@2`gc>fiwW zS?rPUe~fM}Y+>(zR8Rg-#uqD921{%GGqegz0Al+>RP?~knK5Vb{NeNkVb$wov(wo> zCuz$(IljN~BwxSQLdr14)e_}Vy1mwxbRw`~@i_H($uvK9)xhR>u{HzwTQ}kL-!wF5 z&dYb=P5E%L-*ZQBYut0?`8wK|TvSKSK$DlNqmJz{*4q(Ezs$8Rpmc829M~py75lqS z=8dPL2L$s+oJCt=|_uK;b?f1V43bNs*VAUyU#fs-a&vl7t-DzLm4FUE>@` zx&eF6VKbiY2M$6ebi@j)WJL$y!BGJK#%!7Z7fI9g)8x^ig@r}YtR-R7N8MpL2PgIz zb^$7Geu0uh6n*QNSZ+d=?vH@67g7<1Tf_i$Ba7sk<0l@a0)12ung764mwdFhd#G66 zR4wL4ly|Ym&Br$ZgpVWe-Y}!)@9^;R%ZVh(E-f8sf`UT_Z(>Tm)5(!TwEBv}Wi9da zjfacLQgP#BH?#@O;)arv6JB;r&$lEVX%9(BmRkK8mpjP-9xFVCK9``l7#kaVTGKS) z44KD67!Uy7tlvG~6voN1WRzCDCy>kjR`gqPD4CEzj<0-nq|uZc!mSz?|F7HG1g<9N zm!o?$wf!#e5ih;Q@a_I;+BjW!D2`uj3kqx~33Hd}vA4XVDUZ|t*x~Wk=8A->nPQmJ9JHLojGI$_opFV=HOdQ5ucqeJDP+I$M6LOUNzeVxR%h z=*TVTr^)1te3C7^E4A#z{6nUImxa4{k(r-WVU0 zUJ|+m6Pl`6eg^h99B--emsKW@BZAVXj*S4okH{w6V zAF5mOuf$I;e%)}9E1EitAdDu{msHm~-|>@9A9Au?mD zlylM$MjxawYP)PM+ZOC@MN$lClyNIV_rB8`U%*H)`th~PG;9G3B%m&5toC@4zJA`q zTV?*UWYbXuj%x^#$81L0O_h`#5b2xO#K+WdKthBi4fF-+DVpwbW&e65}X z;o#E}`h#H4p_FI$yTn|>8im%cw2UP`Mjli)TO+n})BNG!Gu(?PTv z?7Q4j{Qr8^*_=(m!Gr(`K#ATTs0R<9>i(v`quBOW&5~5LxF&mHp@#G=3CV!QEs8l} zVPR`4Ai;KfS0Eb0Y4s3?z!8y=W3HW@A}M=a6i8A(!x#)1+Zx;4UO!wP7Xx01^z=6j zYL3>UeRA#6jV?c=_oi~Nf=+$fXUz`>qEtJ6L*8&24*;211J85(Y*G@uKC>|Sk6L+m zVz7t%X@tLX+=zW4nS2MJSuuULESxGsK{c z)`^m12yyjH&c7@|RTxb7;y;rKAYT%I>X z4D=|iTzhhH35_@hT(Ls3vRz-8j(`7NIG!uz{l?XJei@#dmZV@2Gy=A&{t`8|4c-(= zX41K>?bmpI=*gTD$*Nlahvtih#!QGgkuO+>DL{VkwK$X5R6jJ)Wj)K*?QS>YB0=!w zognOnAuJ*!dM4?IhjGcyrcXfD5XOOQba{byh$@R*iG@XRRGj(Y<$-bFlhNH7JYa}3 z;M(ok>J)e@QLamO1q$jvDe+)*4AIdvgd;(y36i zl2mNVK0vBm)*FU8c3YHG-AE47b)PS#&n`Vww!&&Z?g#B~6?SBicX>+Pd9WJjmSay3 zVGhL(M@2#FJ&|bRk>tIO8D7#TcWm73G=>CWJeHqu=Lq4*VQFeM*gL|w znd`yk0>|qgJFXkHC*0tcKO5E~NBup6dm!(wRZF#m;>&`IOs zSD>nw1;0anXg_W+J!@sgGWZzXK8u?Lq9!Zh5_=fnotvA(4Z~Ar6%+hXqLc#cAg%VN z@(5#u#Wv&=WjG{4SiFoO?E?++Xw;=4?0*B8GvqpP%r#j;@m>v4l{CL9X@CjyXJL~r z)b+ce#t?Isa%d0#u?yBtFHol*X@c&^-{0Tk%5MuL3qe4yI5@P+)c*_511rQN_3}|V z-tQ;pi|5;&E!eNHx4=r=*x$}lyl16^`p$p70@uv+ZP&lmF5|KsOFi_jc%{E{4!V9kYA(5h=aB}gL!eWyC!5); zXZ_e6#jF+ykEimX2Fx@a*y&kN8?@K+FZ8%&@x1pmAW|!ubls1f@}a9|r*g3;pSdPw z8D@>X-jsWN^HoIv(_KuHvLvkR(W(v!NJqHLlul05J z+|pm{Pg=uk1@zvXGqoIGOI0Y&UV(Np{RD<*Q#5P<0+^@tq(@Z*?oy$+(G8G?m>JS@bX#8LHzkFq3JrD*ynx}*dSA&nS=jO z_JWOgzLwA={abE@($-~)6O>}-JIA%NvV_$hCBdyL)JnmJr@K?DJ%j9R{&9W{vRqMmw44kEv*4 zO3QNF&`r$R`+@|A|B@fl>5-&T<3_(a5;!jtH2z^voNM%yPr6XEyDxF~HnhJVfr)^+ zw3kVS4oT%=4u1zsw+X^U_A#chu>4XQIi0-(==neJB0e@zhdG&r9lH<$yrOAu>929U zigJO*CE(!!64*vd+>J&K{LupA?Vz1G7YRqtqweJ^oayQ5ks-C5KXw}c)H4@4^fou( zKI@m)hJTp3q=^Z;({UGKoB$>|aacq6Gz2K)9<>UA5bB{S{Z$~EN1GG(1XNuC8Dv@z zAHr;%LuhZ<4Q2Z@aP7ls>Cj{f_35%yX&Rn>7Vv)&wTtz;lybNJ_cXjLAWHh!$e3We z_&jmz7PNAP)YK#3B077$1>+?%(6{>g(&+lgnT0Ak3!@Egk|BR_LtOPHGkP4heTiEb zO#yB++iow<&ecNuZ25ur%mH36Pq~5Xm=OvQH9Tfsg1|+fH690er2vX|_c6I@wonpa z%P=%DVtx~Yoe(>{JU=LGn?D%C2^*OQQrM3WP=^X1L+r7zK*VA68n^bkxws zTCC7yShS{^nZtuCnOkeLlIPj7A(+9a>^>-aCd=Y{X)?w( z*YD9`3d`9NrQCp_EccTmi`f!A3!+uk!kr+2{|a{QE)1>)EWe*3pE8Pag%O0F-u-&M za&`gk4Jof^ViD>-rdcso5Y*as2*t}(HYB|c{3Bxwy&?rB-^rA^=keNjnsfWgLIo>U z7~uZ}iVJo`+cwk%1VdCAMum~IGfGM;f;9rKO`&m{SOqU+fiFo3=fMenUjVv8^y!)p zBl+hQB?l$20v!PbRA0K2BVdein!A?vjGWj6^SH!?1|vQ+x~S5^uC$~GQa6~K|6xpy*mNSbLYtX+u$WU!t-?91!p#;kvd^tdo46~RAc++!fVL&6 z$zo9--pyXaK9TK-j}*nq_KGV$71bwRD(cH~AMWbCrxp+Q7w}ey3%PQoEHh{NRLHMT~Dr|)Z$BJ&u9eWLpP+`JX8Vi=0KE1kGmtaKrsyipFqZhbdjGz8DkPP*8B+y+X*V~039u=#Q2x_M@1=0{!N1!?E? zX*sMR3215vxW6bkJ9-F^5fD{|B^KB95HEVTm>B3C=?LL~?5Bqyq8H(8wXDag76zYs z`nbKw$`9jsJ;rouz1PxI3j|U+0oId;XOb$NCNwOX==k^;=sy7Pj#oU|$~CW)S%KFA z;FP|AOBCz^=nmjxY|v@NTp`<7t&hQ3YpOtv4J!JQ*X3E9TB|Jd9&LI^zt`7T<<2K9 ze#g4bW4ia=Wq2rpX^{>#;+t`!ri_hh&d~Zbj!0K$CXW+Ihjg%Uq2$kjH&fy_WDB(>F$JpsDgy6p?-e4y zlo{e>qYC(C|UX=lRF)QJ%TU*7JOyykD6xkJHO|;7j&|O z{vmIhW0Z&-a@0kEphkP1teo1y>)+uZvy!%)!V{^J=Yxdhb{krbdb1OnfU_#one`2g zhrQ!Jh8b1sx4r=nBRjutsva_%91+)DqMStA@CUj5&Eua|S2Mk~vaA&3UC1M)VTvp% zLy9?`iz}NC6jI#H(Gi9OX!L*ys^ZFF)av8G+mlxOUg@tUQC#?8NL%=FtxzQ)94Ru3 zu+8^3FWI)H-tnqDll;!#BQ8wcgc&FE)dDvVD%l=vgEM!#F_6outC>ouKr}@oB(^l< zv8{WnpkQZ|F~w3U;cHB^C$f`-Z%YGL~=aD5XQ*79~E4w_I4j$V-vo%TKE7f$OwKo#EM03Egm|e+tWPcDH!B076S2EVu4xN?Cq9queW4QDG=VP~^EJVUlAh987+Zp0&3UdjW?Uevf9 z_S`*B*VP_Q@_@7cuG+9A8A~r0zQAq-#J-r!cW2`kP^>Yteqzc-yaJq-*p zrqy6v)~0p(st(rLO%FZD$Si5TgTS@biXc zvNXY3*;JULRy?f{V(~T5mQ=leG9s-pfRmx!yw9*1tskr>_ z-CNtdxZD=laB-9!{NRk(p)5}D)E;eIG&++4AZVIy;z3lN=S$-Jvg*ZkRg%*FyHVxL zIHT8&wG&U_8&J|hwtiQ8Q*Sl{k$#V_ggZnYg!Tmo)Hcx$8s<(m4Yrkoc*;=&J6=3p`)BnOa@# zRE=gdPGpLwNOP#XxTN!Q)>7xG{%oy@3y$~4#`#+gs|XJBoKf?LwL(vtEhKa(5@HY) z8&KQ;MP*|{3|piTfL;pb=Gl1(zXsfT=%lF4rb{I!YSRyya|NgFI~zaTK53sY+-gxIp$ybM>ro*+`ML?-kN zewtEoOTAo!{N|PcC!eE$CdRZho;-f4{9E&bFYz)~guyy`BQhYXW0Y0}S`f1q3ktUA zj#dQvXAC*VxL)X=ql5DD@|>h3DS*~6I{gpy(AkO5zxjtsN^=10Z3LE z1M0_xA1eu#0g4^;7YDZQ7?oOX62e62eR-DFd~82_Va(BU3E8e6_%}`E z5%%kXO#(4d` z{l7xhA6!FYtPXLrMEkAW%dahu7E)V}&V*daurx&>@_XLFD~0)i&8o8vY?0$7i$A}@aTp6tYz0`BbI?mz4s7&|;}xt~s+skyV=7;x;em)M&7nX%Ie8>82ZyUUg; z-eI`=K(v`c<1PF)sH2gKgz9@$!f!E%hlzrU^x1fP&aD7qGjQQxks`#e0Fx=z>d*OO>IsN=PpJnUTlkE4~QSvtbl-Gg3EeBv4)NIMMO4QTs z)~E{T_Gu+M;3QQ@tn@gDC)&hGlo=eisyS@i%=(Tst zYZ7$s{Bjkbmg7x-qO-Y51^s4sj1q_)Vm^SSbP+>h&h#2%7CXP>HNHwey8A5=m|XSY z=3~HPjWdDQRr1>MkM|N!&fmAr7hRt`oVQA{n(p=looyFk-G0aUT^+kXpk@q}b%fdI zoH`WOfGtU$%F$l*15ea`CtbJ-O%g)=f|PZ1k&!@yr-_jUhTGy{uTA6pX zKE)9se-4%iPSvw`Sz)a!F(0z})P5cJc>M6mqW`2ORhizx(&Yim@3KHbY2zPNRe|3x z-{e$VInUD-H9~o-LkFla&=mBs9eZV4VmK33=kR_pZ46fwXJ7^%3BP{xIJ*8eWU5PC$ZKi{=5+GmYN{!ct zXd&wN9<$J*`P=QZJqgA~dXphzn5!g2FQ7_JbQOtQ!rH14AO8^GE;x z^8z?=cA}K>2Mhca@Cln^8pbteB0Rr^sW>>WhRPt*{j`te23igPCjfP`-aOJLQSYCU z);4SBgVr6HHwcO|1JHrllnhO6Z5cJS2q8U`(!|cr&X2`8igaH*RNYjt0=<8mQv_U^ zpWl(y?$=ukc9i^NUIoVhw_eU#qj8PEdq5b3b`nu1C9jEk&Mq&HUS{#0B`Xm|=!mGj zUlflXMA*>a${ojdU@doSMl8isHo6bzexn%oHdoJfd2Ii!^)yK{57=7rt*m2kCiCgf z%JX~78jI#=ZY|V5B!ESW)!h+Y%8=Bebck)o?pP5jCV8y+5KsJ#9LJ3OcT zsVRK_Py#x5jIB!7FosN%zML9=??ZGy^vFEb&;|Xj7;H;nlE6Xzi@%Vji+jZkT z4#S`VW&CfMV3{z6p-no!UnR~>YStbj4ele#aYkgrj;oERaF2tdBY=~x$Lw6Yuh-<6 zwlBX+!pvOyuKX7|zktB`2yFsY7*%wUYx;1DBc{2%yB1-Rk}be0v}pKp`T!`t01INc z(YoAajJcf0>E1m(&lR(FpS#6_r!)!g`RHLIQhy6m$((OEKmJ{Ar=PG9&@?zSkwu6Z zUKxZL!Gg*aZ)rh9i94s64I$(?Dp~&Z^047{-e~>nF`;0)so=>=MD%7G16|?mHWeL? zw0x6+`UhX0uGUjJiEJ5?f8qTpRTMk9P4KcrPMUB!CNxF5{2l7pdVaGH$&02Q{1SIp z-F^pErln;KNp*owq<%mhl=aYM#p6vvz=-IEKdmY3xazN?^ZvEyNl{l|kYmG0+^Ns& zeb~0NG%_7QSfB49rb1D$Bq|DvB$h5w%3FsuERmQ|ZiA20ZA^r}?czAMn zz-?=8Zb47VU=Vxt=7}Y(RXT$_fq;02Z-fARMd?k-9z#r^K;3r+KK!MkGu9ONp13XG z;t0^HZ1~i+qpRwy=MU$6dFJZLxTcgP5eDVCiGhwuI|A8@^ z9zN*XMUy`GrAvtdz;oAk82>jAf)(BiI;x^4r&P6i+77F= zF?w{}sR}Qv|NQ!`c?EeVb_5NgB65)p68_zka zrfo@SvH`k=OIR<|(UU!z=KPNBwb(z=5J=L>y>D_9T~cdPuE@gW#M|@?O=m`Pc>k zpMt2tBou}EOx!#?(i^=9>;#OBoNKfQah zI{b*J#*ifqMn+rd5&?4E07WCsp7}iJZx5aj8k&LvP{gD}kUgFy4C(`i$@Hb6zxt5( zQqi;ha=Pu!!#RvJhqF%caI5+C#4aJhbE+Xgd@~arPl4dK(A>SE&aedk5X@`$EU7ht z?xX9sC-eedieUgH|2(#LxnV zE`!B8I4w*1$gb;u>aEzt1n-EeDMag$6bmhud!C;x(fM_8;?~wyR7ZXfQK^;v4kS>7*giyS&*C3|4@GfEg=M!PE;Vp%YJBr1g zt7ALVBU9t?Xe_)_Ph~2Jm?-!&4BCkgAI@vIUPwG+K|}_u zUF>41K}c0o2Kg?i)Apl~La^ozhoAI$5 zD}o8Nps}7rgRoDBdsDmN8;|)^UvME*R_yOqJ(KgfvP_@;MFL=%K$!+jDs5909X4Q6 z2W~!Ia1`N&{c;`80EN)RH;>6P4-bP!WAEIQ%CwnE&$N^2ZP}W{ye!?UJ+4}I4FuK7 z3TMVfXt+gaAedW1nL=pxwtkS>1U;YBsBhzQ+%?u{dGC%v*hzr#0HW_=(<~(vqJO}% z0rMNjIC8cLtKm#RvM7a)89OK_Ih5IBL+p&VzQ!Vto_m{5h~O)|Eq-UqM)E!t*FB*a_{akPk*U@+O&z^}yCbZP`7`aM1=c?}S5`9B#R z0C$h0l2;czEu<*hQQYj|IHW(5B+VVeO5V7vMdLKR)ZB`I)t71xtQo;haq!Xt;I9-| z2*kLPS@|pw;9%?R2-)nE#r-|8D+a76Gmh!0F3aD22s(r|m-*p8fo^}GhT6?$@&{DR z_wxgWg`B5*D)B;{^~~d4E_CG}78{3~kEah1GyWVM{YOatysxer^#@U1C*h)p-Rj!VgaPkcbce|JVr!Lnl(~2!5c&9Xv2|p;=X27B z8_iSy62RbagcO+I{KRldexq^s?t}CM$XKjN@8oDJDMa+uDYg4M4)c4f$pF zX0dGnNkjaO4p^VWaC}d+r7((%B{aSJyMKGb84zXk@{cORVm#CY)+;QF0r(np)a=S2E<_gt8GU7S*BLp-JK^? z?-8HBZ$Mh?>O@QSP_pFx=wU%to!5)oS9w*+;~^`Bx2VB&d)Wlg>!o$S3K(dVV7049 zkMfo``izsnp5p3U_k=U1muG^ZWY@M$s*3dbS4$r;!^PqgZ!sc;bl4p8rX1E?=?5WE z!OtJATTZ2faGLhv{T_7j?pzRDIZTC>>cv$1l=j=SjI(jm=U?ZOaX-MQI6{5Y3^r!p zUMqA8)%Fk7kbY^A2P4MIevH$@t36uIX3~P9GmkHbB2hb9YsUf+rZQGT=0IzUMDeWM zm>H8}FnJLf1_O#%>WsBCgLj`CBE*4gCow%@+MCIQ4nLb}BAE7|)=BclFo-dZ!xjtG zfM~YD!sacdeYH^3k4lYN-`g8P6+~(M!?J}C#j1=MQWNH}OJwt-hD2*z2CW9&$ZB_2 zC|R-f@{O!vAdxw~wa9z@d~zMT@oHIg>cVzbY*p94=YvKXTj;$M8xDO(7g|gnEhhPTdLO* z_uyqFsubl}SY2dC(>}feHP$|y;fnMT){Vzk_RMK9pE5_|OE zxX~23p8tXMU(qXY|5PiEF&qe3g-zzPxlJB%GUjkjFRV-1-UQ?u^(2LzHth}a=MoGW zyB`)2oV7g$dXT;P2F!}k1WHyH5k1`Na-?QUL?`sXx?;rE{@|R3)nQr+*Y=5pttrvu z+u^O=*#@LWnZd321msrBn3a{4%6oHqQGO8-OnqHx_zg&zy2%!91C%HLg;z%DP^i#D}vn}s-f>y^F_jm7i)^` zx9QZ4zGuF4?o*^feq9%sT0+L@n5v{fW_& z{HRPzI4?{HNc9gz=2Od+)nO@W0m!KhHj^Y_xNJtP)tKtKK7H>8x%>P3|Ldj)Mxx6* zK=c|c1vr=A2p2yDBHQM6=3c?y4M#e6Mk%Ej3Iz@d&n+whwxK9h206gE_Icxlf*5vg zVS)WYBq}<36I=y}D;>bpg5ivr(a7~(QA2*ctUlbq>(=Cf?9}Pwsu#EAy`yxgB8|&; zlq^+t?Q%8CoA^9FbvujuU&6Vf2af6zK5uWH{|rCgc%8OJY>lP+g_(aj!b}xI7-2cW zq-w&PFFMpEmcu*HQRDA7yn}buYE!t`Ez}q(06$lPbqLQ~*rp5Ov7s#lq&sHEDDq?q zboln?%XoegQb&zH!4&{=s4W25lupU#Eg+{obagGY*O7B_sb&i#Knf+)^m`_%qS|YljVz8}Z~0x!{_jlQy!v!(q&qe&LUZIOBf zL;`gKU&*76Kp$uMs||XB?NiFP8Ocd<4F8-Q?Qg4am|vt%0<7ErPTsw#Je5Tlhcd9Q zLi_ECii;z?3TMK*yu8-4HH;ag3Dob%w!ockXd@_n#R*&^{`~`K5uW$TB*cfdNKnV4 z*u{JP-F#9&(vDmS6f-;FL|uwUQ+ypyt3|j2bp}-kD(y@`IBE z*>=vSR1oeDJW^iHoJo4Bb|0+(N~u`OJ+v8*uT7OEPpPS^CbUAk{4D3;q*#+}c6#Z{ z&SyIe_L>^S#a&j@j<^f~M@f=?Ai!zY|8ApaxRR)?#fbg~Pm5Fa`)uwq5%2evY#63` zX*x5AGRI8OxU)Llok8cl>orJSQ7MMYZO)V~lHNt<#*0lJE}=4^6PdyUi0-GWrl>Gw zgC6+U6_GSoLkBADf7F!>fu68wZeJG!c5;~4V&23%dx0@K2K6jyP0Vq4oBJd{F*AZ| z8Wh4;xx?6O?}5n(3JKC@ZsunD@I6!QNDz8xUyfUx#eYNhW-9ZCTSAS+#ZcU(hu6jW z?zoWks5In&uu|vu7CObI4CN!g@*oqUUECLDRu{v10y*mZBdru=EvDH2knk6iKo6rO zcERnyq-p^-GR7P~AC+Iih~4Y~pLV&b`C+Oa2`Q;TqdP{$3iih1y&#Zj#VY8$v(c;d zi~Rxn&?k-8Jfz_}(nz(a|J9gVq7LCGnlKy^ZN+oPqxoKIGIpok*Eu0RUN2mkOOLHK z*`zA>ePKiV|MesFU$8NXYa7`H$IK9hA{dW~uDieMUKTSiRFtOsrXBM44=w>i^Yn64 zf%GTB;WR6VNA+q`S}Cu3S?MRF)0bX!yZn{D0p^-pSi(_fYa(B)mNb{OD^?3Xe<~)m zRKnaPH?*q!~c#?^)6M0H3#a4+1^E z;)$S{>`?Q!^YkgA7pGmZ_e+6YN^2@;0DpIZlJ}v-B?@|r4VJGNN{1We823olg`J24 zo>&_uH8y@ZTY6Dcnz;&@t6D!{bT~B=oX>z$M9NCKq(0!2nOZd}W{qlTOREK9r>ak? zdP}}42v>Kdh{JZ%Jx#kK>;>M9B&xt}F^>$iJH-iHL!4<@@_?uN|(+5D4qhr(SdHdhPj#QyQc0`#zpJ&XUDU_a8SuOS6=h!^C81N8Jz+VF(D_4Z`}be&eoh#)hxOd$klKH=D=B5@5AC@pa!b$eW46tc z(`Imbu&`vTE%1MSTf{?unNRr`L|hOU?{l$#@#A$*0bun?mDWT$_}Yv(O#LPTQX$K7 z!0j|<^}+kuhXY_RHHVR}ww;BZZpf%PMHuy5sWD9E$Q=C=zC2zXKB*B^R7NMys7!vm zy1LR8Ex^>g@L%L99qVx*l=J>n1NtJ$_Za+!(`1@fk!; zD)#oQLgR%%dv8LLS;XU%plVgkJE3nV$^X|agEHB| zZhSK&$PK->str7P6}#6ccAJBKJJ>Bj3zCV|nk$F=y30FFWZhj_o%yl3i7N#@pZlrN z_-V&CmB)N>XrMEo}6opO;P}K8mA~sOwxg?%#qg&k!VQYOqYBqO}E^U z@=O8xHHG9MC*f_FGU9hXF8*sWb5#TXiQ1PhwYsD2_PPQfK`=8DA(l|z50w%ZV`6H0 zL;Ip+RJS5k)s``uBDN(?M+K9B*BedIGpQFAcYb(b7CS0NiIDoPnpf~E)3RFIzl(_0 zKboh_O0DZ#qRxXV^Kp^lq|+Ihxy-gV5ln2pTMB(7!}&(`x>uOYj`Tl`@j!F%#+9$GM zpy{X!^TU5x4U2doOrT=LipQXalqF3WMM{z*gEmDOs0_1N{X{*zGClWef~c-51b{{b z4O4!ORjR2mhVJV6Z31nmgQ&#+ZY>iUyhrhECh`ZBnly^Qskc4q5^*{#gJBW!o^37A zEB?iQbBDt&5R6ZLa5Y(}5t-NTWN%>pU&1uldIz{GtnllrV})Y5`fN`xgX zhmspN{_fS4SzVZ!4xj9)IbsZf&N8h+S%y3Y%ouN&inex2cl^+1I-=>|bQit=s~zvh zRNd^*ud+pt6tf;9`);cCPV}UNiI9Jrp|8*8IUmt6dc90axN}<^-#RQh@43C)YM_{p zY|~>YK45%$>dU|#B~&NdQPe_}mL~<)R)WTX$aO+TWa2L!aL7+hg+fgWCc)?wMcm3v zS)Mp~0>X>-*;zi(l@+0jYTjwXpNkTbxbl9xRi@U@MW}PCc62->3L+@WV*TC7)d9b? z0s`PBm!3CNbA>+`&=T)`@dq~ zw6Z@p>Af!)UxM8kCY!b2T=d1jAtWc(7whEi;%!mPP36=<_Yr8Kyl5q}_TP0vP|Mk@ zf2!oX{j;F~<3jJ5vffKZ{cG42<^TDb*GHc9KoyNB!(qyOqGU7$w1d>dIQ3gMqdVGE z?2;5M675SrjW9cNC7vGJyO=wy{iZ+F+CKlhdWw4-5CoaCxa~3Pdd^t_d`>x|biQy= zKw-VrsBW43UN~m9XV)HH4FOMvs#y%d0x12+bDI{;G}4>OZ7dg*4pFSw0X*Rq&hq@_ z=HB4rG7vobHK(IoaT31oebZ$;c81iOKl%o-bl3yg(?rd2IQ2pTVD{eYI^8o|OPw@= zlP|9FHQ4pB^&U2QAeki*K6BD{B{4IpQmM^D8$+5|Gtxm^-0@#mq_TyiN#f?XD}A)zMExnp_g zr0NB!=?D-jD95aXmF5@K)JNxyVzW2sR5UWh)xYoi!$ZYpD#I4>bGP%0@+;DyhUUP} zoK%_viU(vQPtTn3#fZt4?*jPD1Uw%!m+M1$EiD&cw1bW{kNQm_L(##*$y%bfXQmbv zR=h*Ctc%Ci(N*aF3o^mY4a4!_C%5|)FB^nJ2tNUP6;Oj$p%X1#C<$zD(ME{Q!PFQs zITau6?CL*Q&YHVh5r$D|8}$SCe~+tIdU4Z9a|?4WFUU9AeJ+!vwL=K3l!3VsLn5Az z8+|Q{uq>dqmbzef@#ZO_sxE+bl05|=4_ezAi8}i{h$cc@4?FgO*Dhavz_wE7^~s=$ ztNfv}rnBH`tLxfzu_DD?ix+oyD_$&6TnZG| zV8z{vyKAxH?(Xg-xO;)(1n1k&IpZB8KOh-N)}CwLa&4weROEE285OyFaWKM= z7|n3!YvjfW2J-~bCCMNK#fARF$vj$Wg(L5cWUDfr%4$W8LRC#wu0M$Xy7qdWD~qc@ zk2;x1SD-PVY9v+}9gP}$pemo+?)%7v0t*nIqVIpw7!v(ysp_BEqKI+1zdGz5Nm}O8 zZgA%SGb(8YeJT1G7}wjGeV;RYG(wM)ksk+ie*2 z1gsVvMY^*FYoiY?4tV~s8Gi24*va72A51LIrD636N6`JB7a%n03PJEkBgfM0pmcQ? z>b8)ju^g?pvdFFr;JQ+^X={hp-=;UVK{y{kGB!zm|h;2sHtZb*R~=TnFPnBDA2*n^e0!hVxN8Z_jKk!^!JRK5h0JI^K8O{ z?z)-Whn%4MvT^O9a`kw%D-3WtVp$k?izb?@><89Qn?bVP!aAWbP0T{&UVb)}WXf#< zVPmcBWo_k&f?CaOB&B$kSj;px!NHSK?}KXDeNC6#zlmjX=k!Vuk{Hv#z}l9EU{W9> zm$u`rv$$6Lt;(A3bUit6@7wSSfes5E{y9^mMgAC)`?uXR)_H2<=^rUXfAjf3KP(}l zZYE3AIYQ=ISl;@12hlHQ`fcArq_GCwG6^tEOwsUL2!m$>HC)R=*|qZ}EW-Z^9}#mh z_uL?XDPu(h1C!C2oT3_~qjJbY+F+Vdg+;_i+A^qPQm3OZ@1VR!hT|l*(P2p(?+Yde z!&2ZZXm!1uPtAE__R)H}moqm>Tlg`!#j~LH^Pk`>)W-6XXjLgZL{!M0fymOiL+J_6 z!-FIJHoIm)Wv^hg>-%$@)W=QUL1H#lswmo;sUW5Dcu3%^rC$FMG31kW<~Q5WS_a*c z4R@Y#_H>vJbArLjU>!79Vyr|Z{@xle0G#uaA6EJDX;C%c2G zhI@lrh6ig896(jY@zLL_&}r}l08G9AiQ(v!rTENRTOXNMwvN1Qxy1sdk zX`0lHgtW=aNBu%NTsvWgEd&7>?Km@{#Kc66@{RG+rOVwUU0r_fdv+7_;sI7;it;O5dxHs=d1CX+Z)Uf7*lHM=knaQ)aMD6 zH!h(6Wt7wH-_qz#A63b847(7YY?U^J5p&%3NEX4Pg6j|nWLm0AsibahVV<6mweyf_ zSomi{UV}NFNGhSQFx^2cIx2=!K(u#TDvaOfZ(%j^JQ20U^iI_NLTB~W&Advz@4Dce zZuD>aD&NN&qPx>&VD*g1@BEK+p)fRpItoR*+m%G@aaU|AM(CU-5xdV{&%Ql-y`9{| z@tgm3LBZY!1g8*KK8J21It2K#jmkER^b!A>O=CEy;$deO9E4*0zp;9H>gl95fLd@^MITH-!`xI zhwUG)n6+cGdPgQz9db`)FbAKC9jC6NQx6D!Yjm`IJuia^<*hgjIm|uO+w@KWnwqW- z$lU`|?>fZ2EC@ghuz3FOY?vY1jwv4sEOc~rP5M*NkoLLQQlj*K9~~c=+wZ|jV6yYI zk9he$(jiHOBqXR;18hq3P%#M*eQW1xOo07 z7YaN{%itS-nQ>G~<^Xj$y1b?L&Sp;K@7cLN5GLlA<)mN*BY2*7CbJ{;>f(-N+M7B~ z<(=?oAX*H~=<)J+^^oAECW9Wv0bTv-0d^y)9%dpXdv%<fuDmq}u_o*}nKDbO@XKy{9b363~8IdI|^wql%4;DkqBGVym!O75?H6_QB{;dap@f5N{ci>D&j zaWWcQNomStaL#Ggcw!Y0#EqKxJW?_03>1FV*X;jpX6pu5!Lwt%T#&rWcI!d=&XGmj zbRU|Ws|9D43Mb*G-3{hWr&qxJenk-b}*F>@H*th#wD?2M=U-Ov7yVL!D zLgzcl1V%gQCEW_88YV6-Ne1oqz(2qFYUMSER0N#WEOrTxh)(*ezC7~U)YQf8M?H94 zGbUF+D!(yV>~(;yb^lK2h>Y~Ri#IIV#8*b)=OxqcQ)=@>$_j;7+%gP-2Y0;U8l@W6 zbJ!n3Bymv{yC@b@B7Dc~E$XCEKAxM=k{;AJHcJMpV zQxo^F56FE=&)t7}?on|%?EFzs3)K8vJ~www-t6J3m403z_PuTv9k6p~iM%Elic{FG zpj8x3gg?B0)ao7z{c3X`ZS=we^z<)ztX5`yB#{V#0eXSiQAhWkz6Dk%R7H#MU-22watsx%3NtvFLepf^TF=l37z}BZ64mD`L z81UK{oEf?Wio?%i^Ofrn| zkZIzwI5pgtm-TSI9ftul;yu@><4!L%XT_EYP^R85=S72ob&-yMXeev=)8j~I}OxL@Vgz*OL}6&Pe~#= z`0Uwb3A)6YSO`hv9UYx*^)Pu6>UY1#3)Uwjr&GdyM0~;|%mPQTOt-tPUbm#2MmW@qcQ5hWQh)-9zqJdeKyB5k(Qa&|epVaXhR0iGUEU~Ez~fF?87>xgN-E%vz3t9VwdGV;?g2v?n4Qh*zL4~ zv59wJy(z&`jU7qzrZe9srKJYf57XWc01L$q4yAZE6?W#;3<-<~Ro0>yb;Jo*G0=|74{#I9!1CtnpXvWQQbA>~wJ zfTe10=XtOq2Z5SY*&hr^l^}7D@}DFmCN?>JM)>Hy1*1VoF(BQ|XTbuVicCkg&`C=- z^R*5gJ0(@uy>{@s+`KpZy4yED~D#a9Cl?A>r95Me4v6Nfx+lfP2d*EfigBq>7LXkKf&?hwU8p|TQ~T`cWvsAD?i!c{3-Q#2I}430qY zIVqYOH}{$Mi{#G;Q`rKMNqO^0G~yT;|{e?+hO;mxi3UR!>o=wGgx<>cf>j= zSi|6YXGtW9A`oSak0y8OIM1MIidW-$_z3}D&x&i*L#(KL0Ft^hZW-R3ir6Hm5R**$ zkI#>Izv~xL?_(ZML7_Oi$~5MFLMhV2a3_uh>yVsYdp9vBa*>zLioeGQhx83eadRad zUW=#&^GUiqMZ(RW&5Q$qNm7Kiq+RT{`D>UK|54Jz9-ho$SNfQ2Nz zU;7mQVwZNTqmd6^{Sj8OqH@ObnpdHbLGbC5fJlH}ctj6LsH`-ndcPo>NgZ^H$po+~~Bs-|4l0zVc-5<&^GDm-@0Ts1W&{Wgpy1)0L1fY{%BL!_=> z6~eHIzmn4hOEIdTHBJR}c;{ilGQ;8_?JPwmYTNxTBASyZq~Q-sEK6VK5|q+&Fs3M! zw2>;r1@U|jVflJ!!f)Q9Nj|7-%8AH<88>w<=pyERm6Ly;D72g z|H>-9x^U;^p|4oEvM;{k^sd3_dCZLY&8Je_-lNIfgV*n&srtFoJEuILD|zc2wCNBW z8_K6c7^<{;2)HCgbD?#wQ%-;XF#KyfVa@Tm)3I*URR^~MQ!dj$R7?zna|b$AQ`|SWdF(T`>o5+I)>;7-|J%}Jwv>EvT@jr z8@G;IZBRuOaawUHbO$7wI0u1*Hm0<;3IGdMbv&Hy3<`*V5mcjmA>*TkB+`3C#Pk;S z4ci+&;V$Bc9-B2|BpKwK>J+tILv+} zJw~NuH4ic&`j&{wKtV8odV{X2$IP`f-|ygiB&J@O^st=!qQjo?_9{d!qbtiA0ZuPY zq3PI{^$SMRYrd2PV&`HvQ{rykIA4CVa@Ud^Y?g`qKN_KO=mLtxh*h| zD$~71d|+P^@hmqjWfgUejQORmFbF6bESVBf%|7`HDO z@#Y!alWDm+dt2AQbkG=a+iYum+Z1df`=LJ4EGnq5?X$`zF_6=2_aJLjNDdhkP|g;S zH!2-54H?Fg1dW62yKdcl520d#;5cG9$W|~MRvb~kg&36J`M~cLvm8Ln`#f?h>#~P_ zH%H%v?;}b=oq;fMG9J%R!Q06RM&wywRlcOX-7@z6{rWvD7F$qhLE-xkzJmb-&fR)X zZgTO26v>|tH2uVE7neJ=L9Tg}e~0Grw@Lc~YDIDOlj%=}wfq4c4>qb)&-jBHq9}Sm zHHIpo#yUIhHWDyq$&Ijo?!!b-2t#Gf>UU(sQay@2>@Co4PtxKB&On`23XoSwa)G zVH`#@m!&2Z!D_sO$E3AqL}4~=sE#e!O0Vlx5vFF`$B?CK5k|jXjz4Di(^G^jTo-4(lZu^zQ(MKe}1xU#{mY3xXZ#H1$EU0S2$ z^mV%_+1mL4Yj{ghMXX=!jX-Re$?NVL_;k&cWWJuOVznk`&?#hcwFy+J;Rx&5=5_q{ zw6Fsx!!aG!*4N+bMI_&=?!H-!Qu=aHJiHm`crhU4m)3nhuQID=Es*5!qh=>UA9^C_w)tj@iy3i}rk9FK~KdZ@s#{Vnxzh9CSRjAdreXKV& z@*_i`oPpFhA1aGNTc@#P1;jQ4HrI*X(@e3m3&Vqe&)oN5cXoVCiPBlxq)L#^_?lKS z5R&%A24w1Slpppmc&93ZsBc2_VK}{zn;<@6CN(&b?$4y_e9{)nkWHoZQUN$YV;fvvYq|F*3qAf-TfR z0nKbK4wnV^%BhP!jjA|(fAe*c%&Voxt92fB`wtg35b|NbSPoQ48E_qW$nW=v`k?>n zpxQ#R=mV$!R49JBs()+uWa!KKEEP`j?aXs1zyJH{k2n(Iy!|HM;5fsViw(W>$H#i$ zD-g`&wJTiNlvgnl1CuWLl#;f3e>|j6!p1j04F4dIpb+x2e%A%#XL@6P)^%?g@FaYoV>FOD|Hf)X9aQs)Qmd_3W#e$m-g&rZZe2!H)bw*9QF6r8YMf z9Zc}^5e%mmwccFE{e+hGwaSL9P3^$nR|#FARU~JutvDSS{V@(9o)~9_eAp7$C?4(d z(WrtQW^w?gIE-_CFX4OG?3YR7%umN*hfs*h;r>`aOOb-Uxw1&}dC!~x(_%Ui0UhiV zytVxlXL=$ZqlEJz;ON9S+F(!-(NN}(RjA~{O6%nya?-ot0YO3)rjOwQDlAFk#9t%~ zUQ}B>htSwQr3(guVD+X`M%(h6ei``_C~mA3XunuG7|u!nGkvVP)32Zm8nV zZ~81kZY+)Vegt`E*28<&+#}^?^C@qJ>1sCKy#6a=V5Vjp+HW|L`q%>otW}@GIyAqz zQMbE2SaNG;I|GmCV(m~+#4cS2qFFJIkbP^i&(mGJ8PS91oD+~#6oKG zZ2P$zPESy;QSS8m>;VMg2uVmxzkTz!2JI?2czl2efGFAbIm;hCbvoV1J`k|F|MgnO zC1M3#lDG_o)`TZv7Zz%kg8_;z_^3xB*R^#1iR90S44ST~PBf}PhB-XwGJV=Rls_hu zThN9@ZHvoj<-3w=Z%&nc*K4!`<}e4JUHi|MCn#Haejr7J`$hgbGf{5u$?4zX&Utm% zO7MW%=U-gG7f{0#GvM#VqckIv_`%foNOp5l$Zrdg-}fI4`9ndh+Fx6`YO2>4wioQC z6spF{S9=-tQBFZmFR&#a`4yA(fOo z_;xIx7WN7V0}#a1WYVo5 zJcwaz-%0(HRzAVp&N%4r(r=6Fk9NH$Id6PBkArA6Ze;!5USeG8fnU4taVAqMY5|{L z!Fl|8me&LOU3Iq%6poxGN-~NE_?b2;48CL< zf6GCRudpCjEZnO<=-G5Uq5h;+79V{+RhDZDkiu3>e-YTlR0zBo?ANuyb+2akhNF)o zh%D-*tdv4o#5Mkj;Eo{6rd}QVSs@(u{1$tpZJ8dEem^?jRfaWK{JyNeZIgm)P}1;zUgc#s+E&xm zwUf(uGVX{?{J(Bp{Rs3{Vf*ikUDv7#yvMN;dHzGK1oZjrx1L+`B`Vax1O`A`;{ouC z4+aot$w@%kS3F^A0`q;>r_%3LQ4c2dQ z3{YqVwyVD?3pyXXRTc6t&2ZJK{71RfD5nAMGq+VrUiQ$phb39DzWf(NOLdq}qnP+R zk~#TbNsdnc$-GZEPPZy9{zQ~Zx*G-@9}GhRzGqsm)JCs6srR>=_bL?z%`vUIAvN0K zmO(YJSlL|Q{RQnuUcU;4rOTUk>`>{5ZNdAV?*8_f% z!q|zToX_y7COepyy;E0WvL)7@Zqu!9 zLr`esC7Ef+M6#KuSUm+yw)uSlD$`W%cYEWM>w0zE9a!?W^-YW0$AvFZ(WY4ix`tGB zl_kl(R(+c0$)rz3VYEFBjRFuX~%R8z0<0S|f$h?oB z7>QH(RYZeA1EEjyXGdiRN~=A#7(V;YzQ+rZ+f6gd3Q2K;{Oce&p&7C+HZR6Z|NL11 z_oFJBt7|+BvV4N$-Hpz{ApscDt--}i(o{jWz+hk?5@nROzw}zrfUi5#$KFyF25I62 zWt&9N^1Lrl2jO6rk+6mCU#^=kR3+)OuQ^pEu{_zAu)KAwL7B`}G$B(ybpB^f;%M#$ za5tcDcC-|F$YUw$>kcZmK)DmooZ8eyP-LV50K`r zkOWsY#ZtNX0rjiIsIuP)pEklDCerI0nq0qCXc6UP=ThU~3F@v|ogY!fI0;`IQNs@k z^KF7jIxd8Pg(TaG?!f_pYQBlD?|--HP_1=|N=@pqeQoAc!0cG4TROA49zB2!kA21s z<{0h@deUyU=Lth6H(#tWurx&q=|TRf86osTY{2hj#$i#2p%c-PGNz+OmXL=Q8hwW= zdDtV+4`51{-&VScOY6V{=aVwU%%gL~5ry?J{HX<+<#P)w(q3L9!)Z_spZ|FQVo7N+ z`+kJODtoFlQAC_jQN@62KUeOEteO{pikA%J+5<$}MqE?U1qHMS4_G{$-~QdNa|HjL zk$+0(8(dxfqYmKE=f1?}Q&CI7fb@dDelPtr4ywSFBjWJcAyj$o9j4!>{%tlQZcOwb<(!1Kuu5jUU7h-MA#I%r+pbWJqOlacj!ojf0!+41|O>#o%jVpk41c zvvIh&1y}f9+qGK>$rtzX`|gEpj(&S%2ZB7}a!02pG~qrn3`n?O(NE!$5k*u(+TVX; zDqs%4Km-%4lSgr=lL*SP1biZjxXr#l!v2&mE&l4cD(L=9=5Tm(%*8x0Sq}uI+aMSh zPj4^OIm&dj?`!77G{{7Qj=W(AAv#@;x7E(mA`TQ$G|DJ}gE~p`{M(pw{=bcrWEjtS zLxT0;-L5gse}_1_6OtgdSVz!MeEe(S{XOY2ouQ&>qh4t%xh(jcp$>w{FRfJy=XjgY zGz2#q8R0HiP#z1N@8GVwby5DSkjx(ivCLlhP)Vy;O1seYzPd9_3R$Vx<~MzD8Cmj| zni`F3TuBSdQHEf7ONImF!h%ko={6oI+vSdc7znQ>20C?i4}T;cdSszRUSdriJ8Mr_ z_+W-ium_UUcUEc~N;{GACGUAwb9_c^Jd=KZZ?6wBCG@DZF2UNKkB@|g%`iH)bemjX zDpP74rav0`TzV*GM+eZQ_N)D(3#vONel8jo70~POElEgN z*=iPPRytX3!o-{k^(?ij{qydBadEqKe9CTbd3s$%)=&Omq2lQMCh=)1$HJaLI+9fV z8rhU9`NUE7wLiQ&vSMXHd__SVnvKfT3n>cSce-QhoJjHO&Om(|J0BmeBxU6}(>>^( z6RaN0Jac;TYTdSe2UX}_m^$3A3bL6LH?$_&R5XsFO&tf)2cnV9iE8eR5@9H?S+IBr z8uP@Apx-l@NDgZq@lHii{T>{EN~KE3u+-#CS4}3^bM0klzIu1&a(Blm!Z!?fZ8v={ zJpdt*5IAA05myTczbu~BtpVN;l=a|)p!ND3X`6X zynJ!#;BjzvvqXJX7MqFsi#Xev-uO_Z95)t~P$W`3q(>`QZ)2~^;&g2QNnC*;B_&0> z*`93Q>0#$?O9{Akh3v6pBkdXXm1brViUxoBD@@;sg1>>61OwGV|jekn@X)9`s_p-vyCwLS!C4v|Kgmg%^ zB1ppq+ipfOzRkZ?LE-BMZpsi4o!!~G3ltT5Uoo7bIE9##={F4nCrYhx4(J>+sjX!< zzPavY%4?RYP@jvLbs;S+4HkY%r-Qw#Ac6SPL5dve7nVP1)kMXqAbssThg-o%$oaQn z5eE}iG-L%h!Uai|uk>HPQ^H_1$2*+;Dk?xEYG&_D!*0I2sv>`Tm)T^$d)eHXy?Wk} zn*a4=`6Y$!z8Bh=`!9wS;-D?%rN^X(iH(q7;(x>#G6G@_4X3AI#SPaGSFGw;=Cb(x ziAQjCH9aR|068)$vM^X9+Jph`H~sX4WXJ$RnT$a<$u+s7zKv$(^rXwxs#=GcoP%jUZ>WyCLYv{=Ab z#$(L-$(0z70kmt=;XEi@qMZAEa%I8g_U2;4?>Tn)Wu$*kPjA`tdeXMjOvuj1=lRL# zjYozp>T;$ZBXJxrO;3L>I#yV+RkujDa&~rMw0>H2{Ldd;FX-v^(QE-K28Q#hUGwb9 zibB3BMHIEQRbXREe;5XrfXF04*F{LNn2waI+8+ry8!x?1pp*@kjd3pS58u6RjZATc zHY50AMxq$#B7;s{h5Be}71+PyqYSRLL6OSw{LA13o;aAy?7S*$PYW>ow~9az&Z`&BCM#!_JKOc&vy)6Lkt;q}c}TN<_`lXeJ&7 zGgrprBux8Usb>khgwG(G;3X`0`!oz<9hmSstm;k==zR1!ReF9MehZ)K@)f-f={A9y z#>NZE=4;!oU~$(yqrsqSAzGzH8kXq-+82sS$IBW2;r$7lUwTfLD5x9^!rXUWb3X5M zxpTo8!YZ9|gx&Fu$!^||#0;@rYKS*c{7Ivvh7O>2BjvICR4EJD!j?PinCMh;5iDW1 zhH6jG&mCZ|hFTri5ff-UvXR>$89)_vVUqXbeC`30(E|!Z7l1y$bOG`yKA&aWB8S4d z!Jgk=kuScx0{SUxt3P1P8PoLmKqN$iRjZ$iI)GO&2Sp*Z(MYX*KXKP>vOhuh9ooi4 zaTqdeNCL;CY}l;vXE}`m;^gFDPa&vOna4Q3c82 zLcSABoqPpLL*D?trE-xiV_89hU{slb!N?-rBOsF{kMT-eCk~5G=<0_0eMeEMp@!}> zxRx|(wb3zC=*0wME>JW_>+e}W1R~ry@hb%N#_4$m#=QOme`~l4`abH44&#FV`VWz@ z*%vnU22U1KYSSc~{)-vwp_1bJ+8R5GgH z%uOOP?G0rc^^MJ~1E^({XEs(<;%v54yqb-z03Xv-)W!7N$Dxzg*!2r^A(WION z`9+t;={oHW&V(!SlvSsEZJ#@5VmT2SEi*ugGho;~SR3?A9-sVC>RR#a+sHhBrOm+V zBoGiUvujOTRD0Q)^}bbDs>Yk7>a$q~w%rwIweuOeU>P0lQT;i#L-%YYIps|Rug}7z zkNzs!bbm8;5HuPDV}Yrigk;6ksLH&To-Hp|#^WT?nMEuxyuB;C>@+|5n}0Zi=Y-xO z<45Ot=jS4-Z1CqIkQ96b&nG?M(P~xw}v#mrfB!@_5sXO102RH+3EgIs>M7)6IYvBuedW zdl5R799zRh1%sPq>vzrjXsJX3r;Omz^lSt?Z;ql5`(0xIeMC^EAk}6o8iW0{@8iu+uHbX8 zz?jBz`liOjKiFjp#FC6OG0eBcy>@4IYo4oidng=ggp?tLe(p%exFzW1yBmCB3PAn; z1HHMDkr+nzzS4xIwJ@|#>tXJCnzO^03@UtwnVzJ5Li;0nc4L509;C>wJHN6LSP8Y> zzvf79x6wN5-DBJ+h0=eR`$}bWKbG3rP*H=Fk5qK%$hUV?``*-tS8k!`SbF`} z@>a)K$}K``ZBoNch4jJ!mSQ9llMh+C&0bqD+a3=w*f+`1NeEmUboDdwyCijyv}-f? z^8ZrT`H9J?eBfS!_Jl#Ye~`_mu1vN<_)9#$KG?*Nqs9ZVc^!;F7fV{m zDWovnW9|8VQB@~vU(xTChWc=d-LoTj6a=wd=^dw|i=TSR3&`tWpJb}`{vbbgv|Qid z;sWf>bLM3+uI`04CTD}5!WAlQTRjlzl(V-;jGjqrYxWe*KFjz0b@K|E6MNHuBOlN8(54Muk397;}ioLlU*$@JSF1yDeP!}>mc_K zpICC6XtJ7mNLfBSroNqznRZ;=SHo*C^=^-~Kvo*c2hn=mu)c8DiJ{fTGmk$zGu)n6 z7lLRv<7JTtf$W4%3J0H1rX4^K=G$L($%?n6)^87HRuM>^flQMeG4bl_dxQ z501Lp2m5*@nXHGRX)_@8h0|Oww}vR7l_n98)#Dch7MHeQ23j|+OmOo4;Z+JUKeBur z?R=P(O;5}CrNLb1_vRa_RV_pRAAWv?xM6nkG^O#MNpY2LH(y<<0)q*I0C+#WY+mgC&{^ebP^-fb#Tz`P{yq8P zEN7^-18b4Z-oNpL*i|9ZxuL>naxT~JXBEFnZ6%q%f(LRyzhz|q_$~@Vykwo#Fn*l| zm*+ETc~ga%``J4ih@Ek%a2P0}$@_zp4POnn&}iQdscg*0A;O=@8JkZ7xivrDd^et( zhL;_$@f&VC<*hO(u(VA9OV`L8E*?A*7G`jawd>E2Rw7V#o_h4q{5xj}gW^TxEAY?E z_k8M8AeoZs`XuIup=9UZJ@X13F5TBdv#{R7@z=vrdSBj2l!j}5)xO!G8S?MjepgA8 z|5al?ik|sbXs8+(-YhZ+qPT}~mnh~%NJ(aSu@Z@Gg8=eOW~1vU{jCu}uL@M|ptMqH z(vLL;TUUP3(_>ODvCPcR9<&}7fv!(pn$nFZe^rI#7v|AR9h92|s&aI)M@LZW{!$K} zN=whRxOql6I5c*Gac4clcFMp9v6bXRmum=<%F7 z?$0cUgv27ksd5o8-EZX)N|iV`Wk@8{1Yk>-I*du`=j(ynIJK6w+4>ga-I-X=&KfiM z{exeB?MwB=pWHXBdgsV3c*bzc6RV;&_9=~`FS0CV?A@USh|qe^bd0Y8~s4COMGHIu>V<(c-6h~$+^_I%lmQv-DV@>XJ58JzC-vQ>#lq+FE9VK*6m$O zTQ?Hxn5!~=W|RgtrAG91+N{(Xa+8FBq|o9A4f?{$>NqWh0g~qeOd7510=+&Mr|)Tx zY|jr?r~NXAKYB%VZTMC+HZ(K_B=OT_lzA&HLmz$Wgr740R>(Vl=#Q(dzHuNeFj>BVxuaJy<4wxoSFVUT)^PVDULybri?fwnwBK|w$SzNTVu-HsjdA(O#svUj)!NapM3Qa0owtK`KQ zB)_ns2{t5wl6(*POmtrdV!bD@85KEr8wm2sXO#8$WgYT|;Mzm6TsQfOfF0<&7#bzy zLK@YG5$)F#hgUjtx*-O+ka%o6E=&{~ZZNCLSBo`|X%WjGYM*KAhu{oPB%&>~aYt$% z^sTcBWKz@^_Fv?p39!{AvGJU|PcdHop&d`M>6zJPrrDn|#`nF$#4)!jOszc=M7-|) z+gA8rXh4Ppzi-(*(gZRqvJ3VL2F(*OB59{(mNaUZn0tm+RQ<{t-ZR5aNMff%gtMHK3PWMf z^!R=?-eG)3+#f_SJ(Nky%{XX!I;TLAdVK%HfAbeBxT;Rqt_S8p@{6nduf(L+1s~h> z+GsH!C${b@azBJK5Ht2Z&CjVNXGe0j?zXVpr%}HlvRF}np00d{sDhN@hNi}ZW7IGy z3kF5!4^c5$`+qJAmL^O>emmDEvl-%H)55P00=}2_w2vauJR5A%{2{zVb3|D+NQVre zQ>~AjJ;=EhiDOcntIILM;3>s!>KSEhMx?A>qL8HbU*3_~eQtKRIvpwu<-(>$;M%91 ziZ$pVRyni1sVk+p`e^v8YKf+oe^T{?{RB}EIVf&9gjQyFSiYXPvXUiOft|x6p!bf| zF|fb7qi@1Hq<7mjOVo|figQP`*6sGaX65>XRBUI6Mc18@E=r(-=nJkf>%nvDd>1|| zIz7ILu5RQFT9w&TjKLRW{cmqJZ;`LtlMT?D8qZ1VK>nTkTAUl#=Glezh>Z=H;zM(v z7gFx8Ed7!nnm2sJ4wZAwUH!<_NWs20xTR?&MFr8jC9*9i0b#X_ze>u3mO~g>)`L*1 zRwcpq@vr$`{R=vadg43T0u{9D&3Wp%=GVN3U-lF$lWd6W3|^S0ST1%xOeZQU#TVm+ zI=8!cWhUQFOq>8G8KJcKaf~)8$9w-27}Gm(jE0mE9TAHour#&R`Mev>23y z*RK0#;|VXQT;u5P(Koh|OjCT9(Z0g~di!BkTnyp>YjIIfwMs%E)_-0&| z$`|7w9I@>kpOeF$y{y>lb|wyT|3A;RrJZ(J5)j1zN+O%47BdiGn*L3u7h7?0)pfYB zB6&xret@M3tg2%5%iifV#0}*??hXBllGMkqSjO|9kLub3$#WMxZ1EUYMkf=5zegP( z8Ie=ZGHLDB4SH`CMH$t1&^h-XL}6~~`B~U11F(EO@XKhcsMxBWH$Z-~|6=dJX?!)- zKUDsH&U^58_|@s_Sb9KfglQFQNxb-nnLauwZN(Y>DWTI^qr~iD0%kBa5&f&t-GfKjbexqkT0RuJMo^)G7JYbr-Xi0kB1 z@N^=^Vkm)DH$hsyVS*+CnIwF<|M3hivYd0OI0s0dXw26ujJ)&1^s!n(#x=L=}R}VKv zo_sqa4&9nlT)*W?iyDeb`Ps*~?}Wfa%REK1I27Z*W|AK$>5H_9+&qJYxE2|-BA;( zqzAd4dOFW9_aX}M&QWNT!IqXgR?T5^e!ew5^}3b*WN{d-)-+P*at72_sLp5DmHb#{ zWHgSBOVcK<>rzaz9FHK1hL5Vv-q76;q9@xWM2wdB5P;jKEAk$uDtO7C2^H(TEI%Y? zY1EiBXsHQ-?@&)k3fnX||2JCDAsah4e*`}AZGlN40E}Z^v9wkGxaH1T-mc|b;Xux) zrcpq+-9p1CSsGlUYx)xE>eA3m8P$8OcdV>0m|9Ik@||7@O|2Y%xzPsE-NRf_`s3qP zn7sdb^V;N}k$1bh)V8awnR7RUAUX{uyo0g&tWNj$MIucbj$-ZhD?#$OiR!x*`pf-~ zJmW3y|KOz#Rlxb@+;EAsdZO=a?Hp+q1}^4o!oaAOM2@>k%{9EuQ3_W0Vp`%b*U2c! z3L&X?BIE1lZLyWBZr3>&Z=6OCa|G$JWIHuOH#hvs#%qLNJ{FJn8zhKJuJbH6 zRmT^P{a-MDp*JCJE{m(-%F6VsdeloI*zCEyfxlQ z=EJ;>-L?PWJLl+&-Q`MeGVav7E<^*hO@yzK0(*w~-9GpQ{4~X;z3{=j z@6xwYsdw~GN2W;BgJh`bj&v?h!?yClU@@a8UGbsRO0N({h=B=VO9AnCMbHh}`6Oz% z{)Qs)i6VwdR~O}T{G|NJ`FTlaW%mC1cz8kD(?2ghz=^Oog5{ZV3l!U<{9^z7XIaU( z$JwAvaL7{L;ankxTr4Is5;u@u?db8oj7YdR9^YF9hH%OGOL{|t(o2slgHoktK}ks% z0NV<6-n(t#1(Q`6^#8^?9C3A9&M*bV>2!ylLNtZN@^}U843dDVV^01YDLvNVAfP~A zN>_7oKjwMo`lNn)p=RO#c>%D& zzbaiog1iA*NKKVXpMS{Gb=p9j_qI-O6}kBR`|#CoLKJaH8fsg?F>yczCw`}Kc(3+W zSisl-eK9^2f;$qnahxS7w)ggS8(tK891(dG4XX;(^Sfw?2Dbz&49BaFpI{gOXpy*S zRE=$JO`RN*p1(G++nOWO!W`;?b^3O^S}-WsIQm}`zBhwTqZPs7bhi0R6UnmkuF&uQ zqv%f zl4tK**1DEmUtBXVP*PK`N*4%z#wpGu3)&ZS3R;9;doGC5t2g5Y^EnRm<3eUxAUUXP zw}ob2e)&fH8%R=IM%4|jr(TKOw`dtFBEl^f+x^9hsBWx=XTrZ--WXR5gcS1$ABUzE zJWEZ(%e@!q#BQz&w{AWc*c=uZWEYT8FRnzc&MNs&DYa~K3iAFp)nJYAI#9NvlN-v; z&fjbCUYmf{2w#O_6lLe-NTP+!qv7wR)b8!u6k1!lq<3C)6*?Mt>7!Pkrpizm586C! zkTQH?$`^Y1prwVcFjUbDNtjtC=BhoIzUv;Ek*3#e4CEKmAsDjBu9>*L_Ff-}b?me~ zKI_G$Ffv+?$Nai~^-462;>Iev*Z_VV9x|7>P+Dah_|E$Ls|waO4z>m2Hci;U%w{=H z2-h4@bnf=WvHseGC6kLt@4KqL5XZ+iRhy-}q-IdEvW1!ITJKB6kghG->`%i{4okB< z6UE84rPrWbm?eW4B}238$d5X=5JZR@F+EE5kAXYk!&G_+m>*aEn{q=b&hi&4|R@D3Q&Su2V9e`<-Q%E2jXZ{kC zc`PeY`jD%NVX4su+yC~=u1+75ujOLitPbNdTNYpm`}{ept0JDRcHqcwVlv)ixgJb} zeA^XWJI^sIB#yj{0kbTH4lz$rBKR9q_=J!Yw9mZPpofuLr&E8|#Rnp&rPml;nMpeu zd?`c~(Z-w89M)pZP*k{r9~*89LTWs~38%zH@j zggswAn4%c(8Yl&c)((xvbJN47AJ$NjqPQPMuKX^9U#T7FU_QjEzw|7g_nAHVbnyMW z`Ja!aZiu}m03W8yfy-p_?cO0e`S6f`6)cPeI#8;WjOXR72ilB z;mwg5?uu{Y84UOMH1*~B`SjoEKvXz#fZp$8y(S&c3YX=qYz|1ibFY#3Vl5E;^wt4z z3Uy0=!w-i||Lty=ZV_!yXo0f3rSLS%IlFS~-yJveMZG0AXXaa_piE6<@4LfUzhO}sPx*a z%5VOW);^#c*>6B_ zG^#!|8d$pWz3sZkFmP@oU$mtww-NBVrxd>181^pkjU4$c2FyVYdQN}L1YcmF{NCO4 z36I~cv%j{6IxR^~Z%Ai`v*xwzC`;2SF{ojFnYqal@fpNfWQxbYob$dF`EeN>0X39R zF7CaXoIZvM=P6^ZGj1$ek8^PD!?S?E? zYz-iFFcLTVa=7)@{LiU~A*HDw#Lv8WMLh7`RT;W$2)1#}$5Pa(12n0NAuF>fQ+oix z43m`a>dd3G__jq!|6lvCI+S=_N+Z1en4t{ZuS5tL+-I1m6 zIif1DPYAvl3hr+$^vN&S7d0d!E9!z^F1jyw*?9N$l%=FavX)gR6l+%UppjGrQhw!7 zaBtFF)_14SCs=lalS2;=`DT2l1^!5fpPa2Mm`+YkPH=b_Qxa`RHx`3WU)|9?Nd|f1 z9puUGqEQ4U$C!H7kHIk41Ll1_KtYr5>Al^(+nOvYyaDCQXCQgC|J5^`v|CHjLmYqz z;VC#wJBr>H9dpG{nR*w~Y%P1KRCWrzK4ibSoHvEc{NQjN-3Cvtx*HLZgE?B#lXeBZ z2^9bMk@UNm3RbL#w>o+DfJV-O$0tS#^mru&66bd`^`+2wSeZ3&xEz@pT zLc6MD6_iQJe{Q}X$%=7fBvH8}#DHdp9(=&PR_94n5&7i%um!HxTNpEJkG^2u@e_~A zo1n5%G2eO~X*A4kQ)t&gVkxB#msBERG|b#z9celk_IP)6uGhDw9WyeEvHvYpwFmbL z56E$y65_$xLI~Rnisu3lyx%j>QdV7HTxcz#Kje#FEkiYOyo9Bu{jprSN6 zRUwh-aOIRb@YiR)WudOht-fM2)}mz*vjM zC$^wfF0re6HC)n(C-Fzc$wINw06VN=3$ESWw#2?$&(oX&=0@Kq!qib7_Q1PUntk6g zG+eBI)yC2U3nw=VXK~aiMPCuNY1iBiCz|#RvO(n5-2zkp9AajEHv-P?LAC;VEa`)> zPoahdnVE2{>t5XC>tjCK?KaEZ7W{yntw|fa7Ia$Uu--;N9@Vb_!1Modb_lHsdYz%D z1@GonZ#0Dv6$GHw@N_zNge2~FA%unfY`R1&;n+E@DBOD>DzI8jH1hbN-Bro@o+o1 zk93e_u=pIT?AQwG(Ldu>t}(&LXGJPwqxUt$$Tq6=S~f3ou?Clg#_xh6-eGrq3dB7!hpZw65m&&%={j zkZ?A z!S!=KmYjM7iP$z5q%oL0ZD;(sb0N21(1%Y(p#laOm=+2DeD@v+O>F`UN`Sm4xy0-lB#U&T!jWW#h~DW= zKi;avAJUAnIF_#Dh4}Q?u6-L_;Tk|G)6>dC$Iaa*9&pY1`1mN`xkCfAtOOM{u4QF4 zH5qk6NtZs9l(7z&{58BmbhZkl+&LJ)&D&w6DMquhzo$n+`hWo=;fW@;BvRw!b^p8U z4tIV6W!h&UkYjCzx9A3dC4<(QeaqC@snr>MJ2b%!x{z+m} zn&NbEO_s34QO&#v9oq2TkfSQx)hc|YrDMmaci7c;T6RZg@BT;Dde)JWh1JzNB=(3) zSFWsG#hZVP1fhvhV%Rg#%e*w5TS<7HJPb~{CPKR37<&@*e-$Zxc>&UP>3pAz8kl6VA1lpzqmsc5Mq*b{1~d)=9Eyh z&D}RKw87V)A;N7!siHDg%X1pEu&9|{Ld`))In^miK4ns;H?sbKf?2fu5Kb?|aaZnf zaFAgli({6g*fwq6W(dL7K>VX!!VDTC;vsthwZ=4bMK+oB>M;cWz8la~@%-reS=h~8 z(Y{-3(&NsX)g3}2#ujp^m5*(AX()*|*?2lA3`B3pTbwSxQ-{td_}{w?YDKvo(S2mr+T|1D8sCA-qJI}|)Tl;^OTZRc`?w*TS8 z>UtLG(Esho$RWxp>1~6}{JF*~V3nAsm-@X)H_9Vp2%nPs38Jw8lFiH+to z+Aw643kL3CvfbWsa*0HzM{aL(D!I!l;9dAm`3v|xGiY7QuF>p_nLOh0ue%a;I{!?$ z>w1HCSnvMIZ|oZ*?HrKQSTQ->X#MW}{Z-evs;VZ-WXesT*Sa6+>fM?I#IU@v6n)zV z1ffD5Q5wklb+viq;7r}_^zJ#Zo7c8!4_+Bv=(A+} zXaPzKJ_5ZHKh|_@KKP-CAzh#6F{7afO2_TLQ5l?Ux9x>=lwQ1?JRIX438YtHU;2iU zu0yZ`qgAM;L@#~Wl|U51CyYV2hho3GvrMd?CXGB;Ps?=+TCE9YWrcKt+5$Y;3p{-O zI=@De`+IA}Q8&R*OISz(;El{KS9aL?d{SNdfsT400|@h$)icInG9i?IlU{=$EZs5` z#=?VIUQsFLQos~JiniLYJ+)LmQN2cAFCQUbiaMT}Ai#tole1iduV^`d{=Dkg)Y#jR z?(Jeq`mO~$_a!cT?d3XqpTB4BE!UyGP^ueo2otAZNcu7uMLZ2sjv<*0(Wy$FIwYNp zuAD)dHYL&O%W5h_mNeZo(=A_fH|+iH*e7MceA#hF0nBBBaB!GE8dkdX)viYi6mzHT zKQD8OJoMwA`M(O5KTefW8_<0qwM4=3*l+A_#^H~J1sC8&Xi!I~5Pz)E{*X7phi1^) z-0Zs3kNP(PurL5uGwkQbPEHoe5-3zG!ryo$`K0}A=z%fLfV)wZtx{%Y zfJss-eQj7X7-aP8&5kR=iOyt6{(k?mr`*f!*B`+H8>KyiYX!#2bTFBSPqu+`R~Y8$ z;&rRZ8`Isd({%)2@JsHLwSXwk=tNM@%VlTb%a5)eWn>dNY7wZz=J2Co;&GeYQ;LSg3j^iTPyQw`Qk%6J!ue0BBl(Cv*u_KyfdkPxz_DUAXZ?qDX` zw7#Sf5msb1C(8T0Kge51lLOgs~xPfoEnJN-^< zmfYLeS)E0WvqDLhrCB2dF{Dy061FY2(8K0m_d~W(?f(6531!Q5D(roUCY$S@al3MQ zy0%Lju}Q#>uG+3^e&^`j;CbjYdQA)W+2wZJF0@y9{=kNDLKQcH3i&QD%aF1%BQ9G; zog2*&!?im5YYvqLuaKKwIFx3zDBklZ|0_E;mzMeW%q=v7rqvV@N1B0Uy~%tuyOGCm zYHASG)eBkIY%$@$mVkC?v=Tvaa=h9{4iUc5i0hYX)Vb-dk)^ z;#)pUcU}&Swf>!O4vfO|Q|3JZP}ve0vF1V+uQ)J=5oK{c>k1 z2ETfk}qRP|Q+8P2_;Og(m2hz!CwHBEV+;9)VB*;P~@Jf8M~ zL!6U?PcH8tH-BT+Dy|x_^*5Yb23`EH7611h3vy zRf~fuyoTE{zCH-<<}|e>21w%5Qqkp?$x%bTpQW%L31=CCdiU0q%6Q$F0 z$~cxIfmbgoKlGI!)&%V#c(pb*9Ar~eu~HjvugJqKmVjKamphX5vOSC=79b`%EY(Fq zvBi7#uG(tS=nTn@Q(Xfkw*1*h`F~Jr1Nj9hvyyq)pO~}eIxWzVO?FIyQqKsA{Pc@harXLwv6HXLjv?Un{~>p zOhze732$}-3YVCq!Fjq^Yi|Az&L)w(*BkIEIUl6_dKS;l&!t1FDzYf>KUu9_{h3!# zK%vCF8*rWSrexv1=Z-+=~K= z+YL8i(nV);zktvk!XT`+*Djh1gB7p@+xT?vcov)%zZKvC*@Dn2;2+XNQ8x3kqOn zV+nEInGGa}q)K#gH0FU?`OIZbj89B(0&Ed~fB!C#M5zzzG4?R*Z640$4TA&>yzmeI zHtZ>EE4G*r32zHp9+m|cOMm@(PZd59Hg=%b>4iyzj6^c4RKvUAHqhYj$)U$UuwiLZ z*kCtNh}xH|VpLzu|LgtR>l=VIs%|Aw?KzuxqaM*FZhcdvV}9r4KlF7xUC9!SRbUt? zEmQxx;_Oq{1Oar3wi*hY`~B4dVT?I-b7tPS6E*Z)?b^q zyTWPjXMqCFe=SWVU_P5_CJZH78KrF>RdNOBCB7q$W`p&Mek=sf9fGGI*$t7<^v+T# z6h}`;F%I}63xujHb$YW8CB1iE)2gK5LM+oD2&ua>MH5J)k%U?m1E+i7zhOb2tB8lu z?V|6slaTX90#2xl<^1F`gS5XqsbU=DN1V;%%mP#uZm*2B8-yTszHUSoaAD=O;mUpK zGh`%kz2==$mEp5H@N(9@t3&ZJy2)k28tS6hWL~SYJzr^Y)^SS5cfR)9yD%U&?S=ji zg2HAgmtbGL1wAo{^n;=lmt>+_?iZ%Yu=gLuHV4lQ?xs84;pa-zR6b730?vE9n7k>x z1i9x?da((5u{&jvn2Z}&I> z8ggd>y@*P)%4{%Fvll$UVUfU8IN#dz#vs72!<7r;Q-B?1Sm8de)^87~Bg3_HPcLEW zc$NAti#yP+XKs}|i9s}VM@1H*O|mca@9wJ{F$$XFxay~5DXlJ_)H=hR037u^QfXOS zDX<4Zj8b$7hU8XhLWw48DTF2#uc;-x*eaWhd4LCrv6zH;?3OAzf%oJ`1ZNDP0)i9+ zv+{K2K98+=jmAnx3?rmcn<-y3FqK0UC$VXT)XaqwpjHD`bHMObu3xhwfcI5_j1ib! z5ge8S(TJtmwcCqv;ZrJ!+~VB7hlg=q4kx*|xZs!$&f3MSW8W3rM-2hlN%GS(%Oiq zr~HOhP7fCNah&$(i>!!kgipW5YD{8hI`E1*QmumZHxHEr9h5m8;_8jjf9sFJuvkKK zf9qeXG5xXcMmjE{&yZmqghJ};aBj^TM*a!&DAQ%xPgR*gb0rt02x}e!g7qa9u}Ol& zlm!!)n*vF(j|zc{M{~7)S8QgB*T!2&l%U&RgcKd^UJ{^n_3&nG#E(^sKV76<*W_7B zbZb{pR*oZIBIPhlT`KpLsnkQhqT5aM*xDSwD2G2fAS*Rw1D?tA681Gy-u_R7CgEoS zebVdt)n2QNx14LZV4qP}A@NGR)JH8bAZp4fAH_q!F zsIj~LYj-{Vf-XRBm@cCjs!E_}2_9q(VC$%jJM933j)`9dCKLGAhk@88>eABt?yfhy zjH3FXBYo(^-kzmJgAzSzqD!qff32$_GI)^(VbC_b?(5DhI(eCgy3p_IKtpU*a?ybq zeyn=0eI_|MI*_1$L6`S>qzg?=4dTY1=`QU9=79U%_g3aUvD`2853`#=8P67**0z2a z?X4LW9Bk=4lUiTmFUdE+W2r3ve;#w$He{O@-0^y5|w8?e_QuVC{m5>r(hPWi9 zNLILg4|c=b>lwehU*`+BM$;(iHv3XjN6FoHZ9W)Xw7oecQV8`By^ax~RzdYfzx9uD zhQ~EeBfH?xfN1oNlh>!^d~|V(Yu10jepcs4)rijMI^xILo|KX4MB+I0cd-Vim&p`6 z7G$&x)M1jyw*ewR+{h>Rm zjDJr_7S$#s&-0!N!Ww5v&USvb+P{ZT8^dTBfT14up}H4HG$1-&2@u^zNpE>&ujd3o z{**~ONYIjm)5Nk?5#AHd%PpWBFZ&PPRC~JR)9~qm4Em;ASrot+e4e4z%8pH{E)Z$4 zEGxY!G&aMZ3Uv6C@t(}W{s$NjQW7>c*ziPAxSEtIz4H#J2yIf75Hs5=xNFFV5~pJk z=xpzZ#n7~CybDj_;oQdZ#2EW8d+;7&XlBpuFe$RY<0CAe!-kUgC6gFHRY>sQt~U7< zsU^R$^*~Q?C@uap(pt~{df&gVTR(>RmuPipUt-<-sT1!@CyC&$lxa({YiEAV+x}iw zT;Sq>#DaOe{%9E_xT46>tn6_1=Uaqnb&ei*(#`-Qn|1ITYl{;j2Xw6fz18mZHLm&X z=J(>=P%dWPNNe*J0<3}8h3Uhnu}_ z-dp~=`_OluX+duCbJ#oSqMh(>1$h8KZg`KyKP9y3-}P~s9CzKd2=WZ@*6f^qnxAVkuNJu{W`&maABC*%kwx%A|E8U+XdfdtK1qO+*B2@c79*dy+Cb=mYfswE*OX#~Nrh*|jRA94ID57Gc!qrp75QUS}U{0Ed24qbyw0OtxPjaX4%3 zw|5E1Xi{5(uuL&}>&>wyFXPTs?pV#oAJVujJZ@{Z6TLT7-;Uj%)!ufnkMtKl+O-S^ zKQ_Mg&j*am-uH%5QJvH(3lQcDVacrq@UjzawX~`qJ4nVa!aSMJDU@-xY2w*R2Uz2z zIQNN)hEn824c7r!#RDa7?LN@1LOd4=S#oGW?Y_wK_8q_(cja^LN}KJb&t|3fk)t$B zl2Il@Hbj*pEu)Uck8lyi2$iAF{uT+}uklVEt~Sg7SynNSPpbsgFzoQbmQ@3#mx1oL z>4~6kZvVjyFVaVna0y1~5|%G2cwv`Nn_C)NNU{@<%E@rqm;0l*2 zP|TV~9c$r2qd~(!bciC7HCbS_XW*`qptkM9mYDS$q+4(Pt_te3Rc>%;8sHFKu+i+W z-V&!mw>2IU7I66I*U+DapLg3yje(aG_GZJoN#e4u0ng``$>Qd&g6dG90(NL!y8Udv znfa)P!N5A;XN2{WcZ`B))tYn5i`TS<_?sbWHSb$l8i}1D);J5&>=*v}4-*)xQpA>x z;g0o%2bT>5rk%5bYz}u-%dZvW{U682XPQg0{!^rEO5e>vXGR`=OEyHnAt#b;Pj+r9 z63EW?ew(RP6jG$CPG4WyH%Q*?U<39jDr^S7h-m6NEW48GRfD9ILLDN%5$cZxg+-orQmf-ai6t6 zzg(Pp>#9kA#-kTgeS^37^cg~bT8-uma(T4#_>1sz}DviRW^RqK^H#a;LDa7omPp;&OgRZtC zmRBNqt?Wi2|HyU}{v7dB0L8f5=F8>&RtUVqMl<>5jey$`N3%dfT5~}hGwb!CAX~xd ziclq8G0CT8K+<#9eQ3Plvx`~c)*k=~kF(tB^$kx~=s9|{Y@fDt7x!zA7XSD^?ND}M zo~&2LHyXNc^euF*D%x0fj+c}e;Q8;o9sYjz%OL@FqnL)u|+iJs#nFVDOL85RQ3Zm3a zIw)dhX<|yWb1RygGrkdORz)ySxsc^msn>kM)#UhGTUXsl%6>&mLI%sT426rx6dCOC zs1Glkm|jV(5CtZ$mE2^4E(BJTnO7HgmX+fl|9%}RFatPoZTi$PyzFAvG{8oFAFvcs z{(1!enmm0n@gw!$N%AsGr1EEe(q(8gXftekwGUY}->S~R1sfZWxa`@-%V!EX`EA50 zz7nq7@WYp<%Yt8x<3jkio_h2i{e=Y7vU>7#n;;Uan&K0i+iv4428fPv>qN@+p5h6v z*EOvgHJ^MhrLpn8ho{uLLaPmi9ur7&a&tcb%cPga^mZ4rDEozuoAP$?W3H}RyH~Ai z8_gD$4Cz7FwI%PBi{n5+PEJYp4PAHRg$tuj3DWMH8~KMl_5eJHgK>L02OpP`V^9Gr z=^{6$sN`l2w?Hr9_O0mqZM|C+yRb~G+Fd@~VoH>6nal{1Fq(MusI#~X5J$$)r04CV zvYg?C$iaQ~Lal(;(w5DRL0)-h=Obu=Y<-3U_1r^Pl3MFK4h>h7B(exOfU^ICQE@bf;gF5xKi_a)MlDo_4Bg%FR0!EM6wXPDZAW`+tywp~*a)$BSuUW)e%2xJ#0 zg-*pulCD}kKjrRHCQtUM#xq!P6hVR7-Z05$Uy{N+=)j@jg}eC2OK3$f2S9CI0!&Xr9ZF zFkl$82*R^7tLXXdupGX6U~2ssuB5@e-LM{uBQ zFOl&xDx~w$NGf1>R&A6cyOi-Xy2}PkHPUg}VuW&_&B#$k^l+-@Hml@QpOfn_5i(9q z?cR&Me|k{k665W=+Je!i@0X1HXwc#|)p=>*duLA*`gU9RW+FFPh*%txhOme|+@ei< zBtEq%ehV7w==2GE69cfToA>mWVT(e9-7r6HBiabs>|X<^v>KPZ(32j*8o8ve= zC_QXL)vPTJNMF!HR(emf;L3Q8#a@IbF71%)kKL#!!AP8Tn@UN`;{~kEhA6YSl4}OA zj#(B^!cJ$l*7XIL#t4{;3fO6@zk))U?0u%{Am9)x=l9!UusTAE`I_gQCrQD4Xo~JR znsX@uVpD(`XE}zNhr}GR~8Gl#jpGx*8t4suU(r3|#3D44(Eh($3fY6xZZwW^j!-I5;?rNDN4W z4O*S4HDUwUhFV`QE`7E;r;0EY7;VAMLktn{fU+J)E8P6&0Bo$&$Mz#rl=b6uTq-9m zcvVsGWjk>Q0zxE`Z{RUneEb%AwA4ft>C%d63oAMs)4u66PK~#rTB3gY1SW9v9o^?j z+}(N#3LBWPYH()qqmaeTp|lkd*5b}Nb#>ek(go~N88+%l8abdrqxM9V?g*Mh27;C7 zwEj^%POmyggxX7Jnrc=4x%h~oCt(eKxW|7l5!ZWN;lb8QD<_vWS`hC)pzYU%6Itpu zeCyGt^9fp*A#RloZOQky9W7J}1P2JQg99hBJOV{?83j_sHAx)T`h*b7wYr zq1o!k&JiNFXd!jdc8=k>%}2fhkIEd9SrFOK5J+|h&h8?rP9;rJpE;Ov*Gfa5T1Fj}5xz*6!|EbZY#w2)R7CRbZQ9M1F# zv^SDjSkJ78OKix)Y(w9TSjSpGeJ%68 z>~tY2um(cI#whcebgV{fgCe|#5Z3+YYzlDk+8;NGbGOB3WHV?jLT#r0+Z@bjW^7`C z6JCwa%e3Ui+tpOEZ9)p%r_Z`=H$Ur|u3T$$z%b1o$%QN5Dv&7V=H{AOTJWGBJ5u|_ zR%iX$$T8>@Ll0&xrO*grIyyUnNt;i>Vq26Jl5@AV6j=BVttc`P5m`*!cAUvQ_-_t| z*6x36qC{?PS+`}8`Va+a+V9&|T-C;%xh9VTCVOC$XE2*_o9X6PC5?|~cgiOZN+e;1 z?nG{P&8$8zNyM9i)=QoGb>6(UMm04C71U*4F$NAQtioXAl_s$Ycc+V`0cBUC=MxrP zdHFDc*xTmYbp?ho*|)}AIC&-TBy4;_BA1VA51|;*?MD*^0v7eELn$=yQ*DHV`f!Oeqg(}9$NnBZ6Nt~@k z_Z6cds=Ve|!&2VFbQ;(A?O99dlklAKBLJ-nUXWP~1B@}ba)t$8a_maJCmFYdGN4sE z{;Hb{TCt69(e@yaRWPgk+ZY)5^K}qRh{BNIS`DenctM3@?_1fg^4SW+c3bVd04Vf% zG4-f;5Ky}S0B%4Aq)7rOVM^xVoG9|8)QGC)ChGGyCxc(+Dao3YTnv$|s{8)}Ig^M% z*Nwj>4oF+lMi4y-mEl8w1U=vm+8nA2NrIw!u+{10n2FMs9MkKuqGw%aZaSRUmPj0G zlfIAdDunTc_M^Zt!X^+}?Jd!`Y0)dLo=0P4E%}ChkJalmV|`Mi=-$ixhR@SNw;aG& z#v?eE>sdAODA+4dmaQ!q@W>FOp`9?uOPI}g0#A#8hYT+xBw5j*RNb$M7DA0#{>s&Q z+i|Ix4QALzm(TkN0lX4Q-Z^ zEM|ri)Vd*ts>D1fCwC>1v_F>R{$~f#Urb4zCG)Bbo*`Vrl#ItTo=#~QzA`!^3j`nPNvO{74)Zo54%nBU3#8hXxhX*5}B;hcOq#?2v+h<|^i3k*XeW;nUiN-eqd z+zM#iMEw?>Oc!#S9X5Vu)Yqf3<%><`SZwZ2|CSz~$gGvkdQM5GvRbP>a94&6t6Dy& z;c&_tGc&+gVnsU1^hIJ~dMldk<0rhr)CCS<33YY=_ZaHL^ZHL@yZ*!_ z_PXqKM!Nuy5VV~PQx8LYAMk4OO10{B){F8x!QW|%{cUfPzdP%)ds$Ci$!=5h^4Z4O zB<$zMKR5hagPxw&Mre7=*)$*sP(t>)k{Jg*STSXA0c+g*oG*rP6I3d_ByX>quO>2P z(Gq+rYw4N_RMU#R$ACWcPZrL%M{X&*gj%%&B+soM8FETyA$M?sbf8`Vv!6U_Hf(W~ zIwO``KAsYnC^4FRzr?df8Uh~Nz$7IEh*S)d?_9&}6g)yAe{!<66fnrD+st_c_6o1_ zp#%lc{t!p~U#}M(73DHiQCt-^8f#}gm85xeBBc;Rk0>R9H`HIBfrdm}=mr@Cng-hM z11Mz~OeYAN?lEcEgyKULVz0^~&*<+5(a)46m&PA++5M*vG6n|$9N8EetX zm+hfit=>?^PTHJcQ1{7~N`k>rGE^Of`gh8nyRUY;3LXhfqSgL%kr5t&alPE%XUR|# z-)sRgL@n8B+fsdx>!5qkWKLZoI{r#f3tl?Z2^|`q}r;G%?I)} zGgzB07h7|Tf=k|PI;~(v;lv3Tm3YK_z8p3439Vd6{A~mo{mrts^g7(45&=1Etwk#@ z+*ay(YkFw^lGK*sOYvnV-j55i%BEh_fbbcg#NXF6W@orVmGiiUYCCOk5R1r2BWMc3q=*&b~YX);-c(vgF|d-?|IW(nW)t@PB8$;ll7`V?B(LGSWz zzOXAnyqQ~v0;?)emyuF3EJ`6o(hnb^JFGXn6BGzfk9~O1n>0GI**|H2-w-_!KsNLH1_iphnVBGGA7L_!FcYz{<#Z)Yj=2Rw#yIh6%e=cc{WYR z%bEgAnE<)x@0+;)A-T=SCzFTEuGa6yCu^c}b7?$+%B3t+Gzh7~l&MxdNTlPjymbP# zdj5|2-kdFZWE^xBjV-Qpq&Skq5gH^DwheT59%^cbi|pEMcNgzlPj2$O?#81Ln-d=S z3-6AP7e8GtRDJ*KIVF1Nty&qLo(eFPBcq~xpH?^J+6@n8hTfMpHl}?7F9MWEW3fN< z!G5>in-OP}bxSnc#ZSMY6!EfX^TbwGSBc+~N-M-Hbl^&Dw7sEMFpSdm$lBBGD)Li+ zYPIcdX5Fc}$^{u6rv=zmN{A^a%C(ucpTx3ETm_NuE-l;|RB-Mm8CXQwnHj+bmQZJ1hsY@?8dOFkfZ44VU*-Q;C2HD$g-}wCqZ$J4z?)L` z!~U%Cp8+`zNsL#Q(daejN`#QXc05O!CYH#SlLM^SpFeXb5YB#-eVRbcFAaFK_&=Fz z`!99FXQ;GZDpGVqH;mISIr-d>wnL&3ec&QY6%F_eeyl{MhXzo|S9V2=SNG*2WGLyT z=V!jyowiKvC~!uFuxRQZ!sJM#+TMNM?y8!K=%Znr!DpgDt4&0ZE-Z!Jvg)(denb&W>=xGm_L=D5fTZhEPb-$|P`c z24(qBP@!L)rBKSg{5$)^c&8ER3ruc{>RNUAc-H==STZ>G@1BDs^k}st%UBZiM zssU`C;wepvIxFIc*8iHHG?T#7tL;3bCf@4UYa{?pNSwVm!xl$)cp#!I_zl)LU@Wd+ zzT^;cPEr1y20kK#47WC`PD(p*~a?%U7YMi`yoZ`uUEe>jhQp`cKNN6 zI7KW0Ct8I&&8-``T)d;i8N>oUSCoVLB{aVuQ>&c2bMBsZ*rzwvBM3uB1j@YuWT{Ad z+(^9!(R__|Y0?Od9fQ~C!9!M;XAstSqq<3;h;{E9)}qmqNMzKcddIiubU1OMx;Agl zJMnwU8pj$#--(5JdtOxv;YpL=v)$vpDq9Xa-JwuaDgn294vnrz9wac2LPQ0@ji0Dz zFcfHE)eG`Hlo(l{TV#!mn97heCYL|37no*B;8+2|g}Xo^%#@`@I+(I_V67JCRa5D__px)93cV;o6hF&Fp z@yMtvU;g!Bta`ZvIx{7S1#BZD?hDe;oK}9uSY7(^qxc*ZMEM5XQExG3rgz*oo4jE{ z9ap#how~+r7H}8igzB@(fG0{eDD=^5RJ7^8`bIV1Ln#qdPi%Rl9!&GOQ*dTO2&w8S zn=ZCyy0rVEB~XJdv0wRHf9=}%yed1%`Nqz@gvDbdX~s#9n&s#d2=$bvpSCs#w9>*V z`SvS@^CT|d>sDVyN0d)5_RVXPTfAdB$DOki&&0!{n$u0kM5!ix$n#le(7yurj zrBtFRou(_S7|D(S4ZTE_!Q){z)-YEu^62MAh0?Wa~KkKsPuD*n6wD*kAXO9+v3eoW!~_-x$GcU-(uxZQ%L1 z-@Jd&UsvMg6A<#L$&@iE zG@0|vNlIw|HX=|?~bZN3ywx&l73q}1^)eBm%g!8Ke{qm4O&C%=B0^JuI>t- z$TW1lk*ts8*!4@}t!-VVIqe4pRp_DWEX`b;oFSUAlas0?3?E`GhO9@MUIsd#gkYo9 zFuvS>Naq)$(2pOIpx;^S86lj~_3o>Qyi$sQH{j^KfNZn=fbB#dwrKxc6!z@K%t-Up zufzmWez&)myGHOL8$T=+jU-O~f-~xz=E&J&hx)Y^a4Qq5vQ9>n-IowouI)e#vFwAg z-nWy@y;E8>eHf# zNnmX5u!a);+Tzk;(dA*{%}`L;c`QxuAA!-b`Cvw6H9vENSCfgp#s$@-7F$`UjwU{$-@J*cQWh%@ z6hhCUgp!_OTdC0fV)U1JGn~nX#-emdopSL8Hd8X0jHZ9j}h?0UOmhe*dzlaLrE(t^{?4sS)Z74h0L8a1T6E zvr6rX=mhkO7Lw|^NrC|yHUZL)UHTBAPgM0znL1Y7V+E2-KvFb~4bqdMd4e{qK6{$%bKCXM7uGVZ}8mE)SQoa&p~CyaLbX-HgBYi7rwb2)Pjx(&WW$i(YO}5 ztQIS^mUCiD=1Y^zV>NLs$8e)d?wo%4`Vz#}!+XtLcRY48--be3Hp2=*mFdKb$ z>8hb*;%@1lRXQnU)djzAKzd-Hi5Xh_`KZ&&&_4<{tDqmg^D2DNj}4~-nCeYlZ|Ey^ zKMvs2cz!fyl)$4evg~OXPzH%S^UUhUFNC{33gQu!v8GEHJ+JtRa80S6v)?s9EV4u9 z!sdI0&W*nQ+(Klh3}YPZP&{CN?Gxv4X?PDa(;usEsMgt|{xzGXT3bE&7EMTkJkl(z zU1=w~rNyg!R7>?ZO-M3S>tMLrNCu7HEdQg|Zn}nsL-x1ue@#tzKHc!CvxucbDBXQo7QVW1?Xi^T)T*vPweymdR zWqaxag^$A&TSQt?^)SUHSST1WKqRS$sp{(5NN1qG_g?Pi8Upb%w9>LuTvryWX=0^H z1n5i{+9hl){)Bxouk6YBE$JoloPElj)@wC|Iy(%P$LCNH##&V`$K_bz{51u6PLn8n zl?}{N@Rw{C%F{<7&o(ulwuL&R`B>184_AthcP>$%SDay+mP|uJg*XaAHm-rmOTH5= z=})n*?V6ZqQv@&(L?z!H=*B!~!(Dn9tWMGiD*I(Cs=rI7RWgw!|I3ikO^`CpaN#F0 zbjnXgV)v|=j~P_h|A3b+U&5Q&f3vVH#$Vv^;y!z`m(yRe3#uMavy!c;p)G4tVEkrJ z^o4?6(f((H`r&tULpyr&_f|0;nSp8dfIt4J2MPo=Ky4kq(YT?A##F?Y;=O4@5q6g>_ju$5<7jkf& zUgtZ1mDx-6y|H|h7`-pU2I~`dK}D{{mSa{gwmG7YOG}{ttc!^N3rEjl9b=1;YQ|NH z)1-(Z0-)#Ax$P^(bMA$H(eIM0_lywsj)+Ups65U-^bNmBepjXA_I&Rua@x=&vVXm| zQQ>o*x6wcK^XaR0IPISRkCG8&*boA3d(WTd=%Ydp!D7Q2T4-lHVXWcqUsYB<@7_5U zR+RodTQKcPpv|kb>YEkOAhW0*D4&%BvuY~-A5CW!RM*xm;Sk(4xVyW%!^YiRLvVKp z9)i1TkPzJ6T{rFocZcA1*ZHe%6>mII#hi1j(cNFi67mncdH#hiszfi-bRF`b+rLO(7}(Y{?ewTLg7Ps&T`YNY=Di) zSpmdn>rZERpJ;}(aB|DB`?gCz_FUa2L^H1fAkzwGG?LRh0Awsq)Cf0#=Ys{!nP)$+yTlhdL) z0m{Yj(>zZm(QlFo>^jGvN+1L)iZ$qKd^V(s174lon4lQYxVdt!u=Hq@o~=dYNbI>j zN5#6WGM~EWgr+Q0N_!LIMi3BhzF^6ST!{^pNE=dc0yU3_eBC1!jS7jp*evMO=N~S= zB|wp^7)+ux*vDeN`V4)vp;v_C7RYLkaOX|(e*+kvuT&)?EN-SQ#r1JOTt&-&r2(D@ z?jD>*EW75(&{p~P7=7*?SiV=|5c|y0(#5H-RfmjoJQi#A zl~hV0l^aqEhBb{-Fdm7la??X9W3b6Lx%xxA3|}R!JmSMN7?P1#&7P&pLJ6?2AW0CR z#)e5*0b9(_Fog<&GQSoJ4HowyCe`X49e*E&X-qu{HjFVS+G7o0Z@Q&dCLb$^oi@_7 zfjw2l)-4f@Cic317Q)&zhM?gSHAqyp!TJ0616Gjj7s}eyV)-;6)4e_M$a|+!dXe$d zr&1bM3!VaJJ$ImX4M&=XvJ}zXLkQD}8%HJmiN9V*gn(3F)7&a>^#O9;>b){UH|zXR zAz~z>({>V*W^zIYX4R_P%EtVbf70YU<8zZML~Co$hQY8IH^`!CV{+V>mQ??fqqVlY zJfiaX>fqItlf>8&xxU$ns_YahzJeXL5|NbZ?t|S<&x8NXlVAT%cX9E4h55nD9Fjbi z6js#WP#x?8iOI`gTD&AWP(^QYok%sm3kP+iqt1wBpb_`!m=0l({NrYjrS97xg4W(o zNzqy%a0vs;Zt33_hp_~XkIzxoy^`ofY@({TreOm^Y&5Y%5@G0FrTG5Jc(T`v8-ie& zgO&0eNC?|!Msm#{N`A3671f4Czf)V|{#A{nACPJn%L1*xXYjKqvrj}K=N{S-c1!bR00v1EB;ZI9a@6`)wMAd&=7(CN?anML2crv z9==Fvy4wRf)Kk2Z1^nSSBFNLd7U$KE)Hl0O_tK@Au*`0~<(FHX$c2Wg)#zG>PxjH~ z)zR)8q+-kwvIL1SY{}#5%aX1$t0~FY&8|E1s#uAORVbde1>OoF9fw5l2<0D?AdM(^8hp(al4+w8dxDhZTz0UFm5j?ydCm zhXZ#j^J6RXM=OWT)}G_Avk+^a=*+m$r`T7}QT)N}si7Xg(LZxuRS z!8Zd?gW^Fz8gh1VRgO7NrkEN-7ge>1$rOW)o%`oM!Q{(boSSG3`qweXH|oez+J;6_ zbSN!$ZdTde+xQ`~Iak3`*YU%sn6pYdlUzKFGR-CM8k=|1=?n#%IH<4zm5>h3{P2h0 z%`zLx#m15fw&g7$HJ5Eae}8rDwy7k4f^DUuM7_L1%6QDF3~%_`gL1zqW%Y43jL_m24T=M)@-?Y^qwmNoBDLZ9Gc~5JW9S zC9?8zg9<4qE{>s%&gPsfDp;m#Pvz>&EP(*&>nD^~w_ubbMZ(XhsYjKv_Ep9ue^qDmnE&81OB=Kj)&Y&jwpZ87=@jc=CF21Qyo@OV`jHaCg!K8+U7%ho8wA}M|(dV(d zGVl2Gftj6w*V`O|Gb}q7kSKftW9&#s4>!vl$3O7DIxGeZDYMR>A^l zfwd5yI`+IS+y^UZ>$~A^F746;_RRw zLl^`Sg-olmZf22Yimk+K=(d0G#qB}SqGafclUOH|((!GU2(r;+u}IEEAPk8@WY7+h zY~R4~kvV58X?~-I#nHb{zMjIp+aa(ztIY#kT1%K7!tcDL5ip{77!2^gG#Xj3nH6<~ z=EU9~Zrfbn-rt0+PW7{p^K;~3_?FDM^A}&!;b${RI3U(IoU^lIdVQ($o-$Z%aeSh4 zkJ)lh9l@GT-1W)H|IrCAJ0E~F#q1|-RV=PgYFdl@%^hd03XAC(aTbSY3d6z{E+8@} z+{3PB;F^=3$`*qMxElrK^*Lt3!?hGLEjzR4zyddMV1S=`{O_0#qY$`1?Ppr&BNbr# zy<=R2)xCnN9Ddo2ec5DTwnEwiScn%PW3u*aWd_me=2I59@SV@d=HmqRUX*YiPn* zUi+hNYI~`vRW3a)cKe46;3h-cmLy#?I!}f1JJ$z}-PWvTSp1j|6wU+BsGlih@QP(i z($f7%gj1GX>W3NNceX-by~_a68OAq4gl563<<7MzFN{k%%jOGKEc|n4I#Br_qoz;7 zoxK9G;p>w0Og(Lg;WUh^{8LJ}Q8)fYH!7f22^z!QN@>zR>XM~O@$1S%!nu522I=H&-w%MFXjOLZA22`k(aR-a~Hn=^*UTsuDuFovu^dj@&F zRc~%xZ~RMbt|06zk)?@!aN}RQ>RW?UsUc7wurR~p_s_H(PgSj4QYkBokaMkMAAg;= zLthVINE-)ctnki2ZnAhL)Qj27T1{MR6Jhq#3-#was-N>0X?}ip0|Ajjuu{C z$xXRR2w{S_)@BJ0Hy7zNLwvAHCrG(RfJHNGamu4Z<1@+9H(4mYZdskm>(n)e-R8d^ zr;HaTJC=@*Y#13PwMeLWVg!m6Tu**o=!*G81Nt7vsQ%r7C#5*fqc{22FPJpsf1g@8 z4&T;L%kT5#TKrOalIHlL)#P%QuYcIW*JNbbmBfO4FXo&jEWaTX*JZQEsg)()m#hpy zz5XrDgE6_yY_uLtw;wCiHJxM2gi0{Nv|>HS`<|qx7AelZlWtZ!;^m$Ag+c482NE^@ zHbnZ;bWvu7kZwj0J^_3PzxxAVQ(v^~qF^)W4XkZmqg=EdI^17uyhv;uBD!DbeX_mP z;U=P8>Q7gvf#qv)6;b6XFrP7#tE7sCuEZSvh9|$}ONu4nu?`-2L{k&Xp2x$-&9ASf z$q{nK`OIQ@O36H|U>gGBg!_7VW?|un%W|n&J&#TfX(!Bo-aOWa-v~h`L^-tIRGcYB zrv@uUF-xEh1(&Fyb$!)43}VIIUN4RYDKbSTp(ue_#e+{n)YM2*z<(Oc%Lv!vIN7+} zd9V;ZLyCJ3Y-4~!?sq7@tyvKc8cpU*8J$lWv-#VzBCa_uu3&FMzYIk7b|l+lP+Bf3 zx?0Oh3!{O$&S5q!qbxd_G`wkIK4wf~6?o#71Ay-lSmQ(T!ZO!S@OT=_!lutc|3)B_ zt%&;U#Qgyy7MyH^a8Rc!;c1Sx98M@vJWFEU&4kW4y|W4qU%|~^`92s{BX#IAVXaUna{)#(Sqi2=9g#FXfabL<-nR} zMB=|GGt4%2%jbPVnS1HF5#=BnfexTPcV_KzZda58ekMVdK5hp76FUJZbe8cb>8xAi z;?&eR(owPGe;hd@SV7wp5q%|#6pZ7Y(QwPjKCE?q^YJ5l9LambqfQS%hfB1&C5v>q^;R6z0hyx5t?u2iBT`&MI@Zr0&#@=l33xB z@5G9m+MdQ-i)e8B$%>$F_-2M5`q)|<6E%Hqui;n@uY0eMoN}$go;jJZiq-MbXK>Eg zBNA}pm27wX_LY@>y9Ar0Y2(F9>^x;ydoGl#-l(!H?nRs^`P${0cFBqZ{E?Si(`b2* z|4O}XffYyl=4~#?iLmi+*QL)oS;J#pCTczv8!h-31Izdib!!Z;Y zV`P(;c!|~ph7A)ODg#n3ryD9tVO)-w4yse??IJA(Qf|sL3i)F4-)m{=_pP{5)YMVq zdWcF)Y$hXdW@9t2EzYcFyM4>*0Qd+0L!+Nee9T?8&nzTjMATKT(!184LgwJcQ<7E0av+#Bhfn z)q+%T5kW;cP}nq}gfbaW;=q&*`-tjSd$KeJ@=($WE%;w(=CcqX&@A>U^%tQOT=3B4 z&cYN9T9co}>G|7zXjA0&f(aKT6%>@zsuwcowWk*|B55}zq;=%2Uz=h-RfGiD28ZjrQF z4-UNgvsUQoyAY=0Y}4UGkq_^H8%0M4K@zEicA8RuNxb@0N>D$D6S2cV*lI>802xoE^JtL2w@7u_e(&D#9>MOxmLf-g4R&|$I zyomAor%2KmIi!p+mWYGordZ@Dl)%Yt7r?{Av+qc2qzj?W{wZY(d()tVf2a?01znf` z%YYX1P%~7*9G|IHyKM5BqLwbX3rdM4!bm<$-#`-NW+^X{Q|!tnoNW}v6}~+NUvp^z9(c}Y}%~2_v?6Jsz+?zUuC8$K2J)*GAVL48Dws622%1LYq@v$%_aJOmKu56vjPg}_AZ?i0-l zz3xo#>&meAztQ2*0`EESE0(kz3d!B zXz=mzD+TRy+o>aIuS(7zVDCyt?C%Dfcw8s@Al^5nzN5DR39R_g7t3BFud>^`{RK-ft5!-@y zfzE4M#5h0C!IGmYqJd8?)T%@a*906ek-O=mqo9*J&W9=d%8jO{Oe`PhQ__G zOwhPQ6#inDCzi1}UxKf{Wz5X5jivl-Z`KLXzUq}*as>)7U%D*(_BhS^Asw37s4SSO zN+)r%s770Q>vLds<>W#&mPwrbUr{rO+NU1`mR^iTxF_%V>nnK(TGHVS*iDv^Vy*Pw z{d(-JF7-I-4_@B8AsumM15+#KULVdL6xcbJ4l|JjC!4yN-2(IEpLt2XpUdEpF7C#Q zcl9hru~;2e(b(AA?(Uqgq01%Wo=;#G!uHc^nsUzL4x!0PF-884Rdl-C z@SK}#PX~6SNw)S>@aCV7Rq2#xW;UcMu~q56c=aMWZdq^M&%LgGJW~C42}aZ@DUrZS zeeY9Rz$L=pvEF9e-h`uKDFkwxTz82f=~ zTO#m=%m`rZC9kgG<)s%MJ;jG2{UaHcTiOhDmNv$7-I%TQ>p~r`H|n=6RpJ+7o%Xr_ z79^pjLeL5}%6P%wDy7Q?=?X%zqH}~5b;@^(4;AEX5hX$-rbZ+{($dma|Ag_2#>7Xg zTRn_*2C}+D<}Uk<#RB zxS<$d?P;+Q00{54ukbAH&)MC_E(wuWqHYz}Mc~~7*V&N7*N$)w4B{tIFA?-`#Y#IT zPgTe!kIXErj7v6(VzUeC@k`|NBu;t#&^(yR$8k~&%R^PIS5rd<#H&|)@36w0$TP`#5FL*@3sL&oDbnGjNjAm`VYlVBRM{KU1^kr5SlrVKU z;V`bYgLdHD_uxPuY=Zmhs$5D$B2wT#Un+F#bH5c!7wBwh2i$1`gRjNXZo6(;Kf>ue( z{fRA{3tx2OW3Eg=y!E$l!PzW)ZdYh;r7$|p0Tk*f2&y|)rDOZ>T9taEW$MG9?$iLa4#ns`;@;c$Z=FL&1C%K~vSpnysi|6pKFD-X zhD13!at+OmXj15yn3zbp!ituEqSdgMF74JoNqkp}$4RU$NQ#yZqM`cSZ?l~Ve6W#l;BU);&O+3`bEL3!kWEJM|-;=3YA#-aO=A z5`GG}zxG>-W9NPGOkqbhH#hG%Sg5A{Ne-)*h28Hj|GoAP(8~-?j2{1KO_8#@1c}e$>{;ogw5+ z;&saLo%`~m=Yu>_;%3acP;cMx^0oSPz4{e{#cySjQm3Lu5+pvoDh{Meo7Ms|*Z$sE z1zf&e9==_^IvO;XLCfR{56FD%usrtRbdNob!0ksm!zkwzHP?q&`pe_;x+x$cD~<`%5@gC8vocjJhMkeJxR zt{R$%1{hpwV>jLiWzB{wz5r5!Edm*+FkQC9KXquwSJ()jtwH5h`+qh-y{JS4DyGF{ z>8>yAuKli`7!MCwrGLd(o|kY5w%)2T!jv(}c`@oXK(Tw0oz|_s-vgXF$Bk>Ez7}c1 z2+GwA!*~cWvKqMO2pGH*5jlBV*!@WK!}oOVDSE1eu^^EKj+d*Vh!m61)8fA1G8!+r zf>|VH3a%m#Y^8v-$~WCZMEWi2)J!O z^ZphZyGwJ02)$_kSNvl;VD*McLm`HXDaT-8WfXiF@I7`)sp~z)vBv70-iN>aKX+PA zj$w3cEXJZOp^!^5>(6N&YMP;yW^2^t(79srHJ0{Fz_xk26@pp|Jc>%l*+BVK)b$K{ zxQsNAo2HV9C9(c`q`;5s8f{MPS!h#Jnyj!vR0{qQO8OI-+NBm|5uqq??}p07JLq!o zx8VFA%PFK-HRd=I=UDUq)b|1%EEBH9uhHmGV-g^lbzO7xpdM42C@wZ^v25M|HV{y) zom!iL9tn*$5R)O|sjiwqAioNmW^owhe%Q(lv-$9KfTHM>8u20Y<1!ObWy0V<{NrB1 z=u*5mki*!Q8?@b;Y766tr>0EvAcX(^G9Vqvy=;yB&AWlLEw9Se>=2egD&P!>#?W zD~!S0cZO5@^*T#Lpwp!NqAg0h<3!V|EXaj+=ll+xMbIUx(mA1H?e;AKo=Xf3zX zIwd6~>6whTP0igomm99AEI#|=J!zDnXc{Ixy|%VCppvn>FDvk-k`h0 za&?58M+|A|2(N2Jo?97UQWbeT-?X~BSA-*LITYC3`Dt4<6lLzRc(YsWOXSUP1$AW6 z=BSPkG}1WrVCubCZos2K|E0;uuXddNOK>2{XSrf*YU&|$@#&4Zr2B_tEXy@i!-1z-eJ_*{?@u z_@1hSB+lQOt^nI2E?dYeXX85FB+ujg;fcec8JGSiC1=oAM~Z$}mQcti8TEZT0vDGT zgrScHzX%t4We}GP5`ES=T?Qg|59@(Evk%#j30P$lY#hIw4DH3ezYigJ&RmBcuKx_R zxaMQZ5$Q}OECHy|@_zFYNY&Vr!a!B)6_TRF@ zz&qp={pJJufUGT>2Z9-i&suyOQFtU7d4W#5sZiYIvY5SDHb;mAp|A_oFXS*kMB8RN z)BTea1;yyPmus5GG;ly>Eu@T>Sk(YkWz?v03>ozpE~2vF6Xha)?s_MtC05rZ8z(2! zcdSH-2$Y19?d#=VaofHa$~t5Fpo^|kCGvCTZ!#z(LkOeCb0INN>lWS^p<4ryyN_i9 zT4A@g7VN5U;(YzkzTz8fsVo6qG*g*X%lKELaj0U+m zSl{oaK?s?j7#Jf#2Fs0_l#x=q6ABehhb2ku{IK#_nGI~hMFRJaCZX7o-?j!!@zuwN}q)L2g77g3`e+ubRE zc3aaMtfp_@f~Uit!P+aI8a3z(lFind>|ubOH(w`ozcI?dC|%=xyruEAeW3l4=oftNf%H3NFy7Yq0J&)8f1>C?^s_dw zL^5KAHF5|*9TU{3uwgX-o@9+N%jcIDI&8#$_sn8h6QG1}b?(I-Q148C#I@h%D2VAS z@R@avQ;(j-=8wNj>_i)K)?!63UWkG*jwSy}?%guagN)v3PbOOMp`kC6fair9lHnP^ z%9fL)Pn%dA6*WME(mD0P;^3K^falO})@^H50SEkNO{yrkW^Xm9Vk6aFyjHayl3uQN zWch{p<^F6%9?;v`nKeYdJ3eSO{kkx#6Yh3;i{WQtS7GQ024D zG;fREet&+D7}Z?sv+n|>iUI-cZ=D9@9KO z@NKoLORB5W)Jv7nsZDm`^WMsM>U^HmxDDO~7Y%(Tb%)8?Nr~t##Ne_rAN3W!1)HkJ zv^16pIW`$3b*#-zbS4o22^6 z6@9>>D(o&8!WL<^bVM9`K}ErwD&9IFXYCw!x*q*|xUJOt9R~b7zmLfy|K~Ry>h#>4 zOdJFfP35x6#cb3{&?d8lb#`W?1V{MhKX%hyS|=_x+FS2eZRrkfqES#?4|6v6X@I%C z>k<4RX)MD-B}l)E`8xhUY_;DMWAOZH+xoau8LB$cA15@1%+eO=*?Df?ag~~-(-;65 zcqKz3sT_TClV#kOn${gG^8QO?FEh)*Z2bNlE95f(uP7Nr<#qYTO9DWPc|DF;n>X%Z zj6R0erZIAbT|!?jy3#Jp7|5e(NqL*BNm|t)lzsMG`8tBZR~Z~$aDK(IeMfu(vRHCv zjew{4M3HwP6?s!D)hd}r`R{2uXJt;{XeV6Z5)f~go|!*Ii^^>Y?acPg!mR+n+>E&=fI zq0{Mse9lyPCh*Fs1}6+N*;%$q}q`V7L{;FZ~RxB@RYi5?hX}8Cp0)|-Fq{H zP{ccU)BEE^x2q-1M`PcT#hb04!d!<)RgpaOidE-if&T4{X7tb{Iu@z^cWFfJHCv%y z&PA-2gYO1IBp2}5g#JhI-LLiw>wkj;R&=T{-`w1q<~BNi1O?3j4r+8LZx~pm+v<N!QxM)UW0>sGqgSvd+uGT+H?&RTQ%KcIbSrvuKSpM1CL|g@zj{M2Q)g`2_p`! zSEn8jpKjG;aIfXF(S<*|=&=D&7^Gw0c~m`?4)nw~blN1sT^_wi#j1 zGjvIMr81^J)P8>JR06DA<)v8zM?>r@t??kT6enp_IXDzzL0MZ{1{S|<#2M%4nN0KH zIM+$8rK<%Nzo246L&i(J0oZ`Iw`@TdBta>m>c^LAKR`lsaOoOe&^C&c#R&L-B-z>! zd0`g*VEK@}oTVaM73hgs>i(|p(3Ro&(Z_OyYWz;_x$cc~1Xac*K6EHd@+wg$#jN^QN>-`obKH?yT!BCM1Mnj#L#1QWqg8R2XAuJ_668=xM>b5D?j zNcu4s7W9~HzU0TX(cJ8HZH5pQ40%{Ku-ZsvF_(fJwzYS?3zVL07svjrw6|Bt$uyfg z;hOXII}WAq$>p@RA8%{4(GRls!j{c2v@KbnL0$qS{f(%M@^D#`Xv>B)|G0|#kQKhH zdvx0|BX(&e)H{;C%wQW5D$V&k1pRFZA1T*-r{uC9ajE^O61s*vZh`R^x;Q88S=$^x6O;~{M-=W*5`Viu^D}2F0rz+^@{jk%LA1i@{T@aJO+V8 zcX~N;-aj|mJ!);%w6NXXrWY1})`s6`q}XTi{AxV#);3h+>xeU8Ho5u-Fr@G+i&5^+ zg?^v~GgNnEhD6-&dPDH6Uwy9Yx!mx*pVk`XuDyv8hYGoEa(x%s+U|~>+9QIj6e3G@h3PT<` z^jq932IS^GX)6(vsijVJ2BUEXcq+@)%)MDI^0U$>BVKbawn~;2;Zilho%}0>Q#SSz94fX zAk}#1$^b=C4{w}9lDW{!Q+LF!_DfH~FLu?=WO@EoOZ-bO21ln%^I>UdQ-nntw6jY~ zGC*zj?Cp<2xP4`UMOm`4rPCPrpc<{iveMi>?Vs+aiwP{)rHcH?!zsWE4@k{3Rze=a z4I#$Qr`;vLmgV%VVV#AFHg2EZKHkgy&Rp|~iEUr~z8~(l>_4A+KQlRQSBiKL@O18B zKcfmx+8X&YY(Cw4>H=<5k&mtibT5Qrj=<4r95%|CpC_y;XZ&*h|?9(gs$$3*gm)b_M@)L1l-caNF6z-JzUIlSs7tZun zoml0)u6wvPzb(+o!o%TuQIahU*Ye_ImAl6vg&WRzqBC)H^!rqZaxy;}vm!H<3xUnP zg;LF_^(veX8*2^AukE#o#s6VDrMvElpA;T>z0-pPjgsHw_g5@04iyjY?rD_ z8!N+rh-;n00)1hD>P7pd5ir5am(7cJshGS_rF};OkO=_S0pzJovvGc2p|cu+hN0~9 z)qXkfh&2QHl=WvCxqYqCg15MS#l&%`xrOz z$bf=!*RLpOXe!`IO^1rTl{2!b_;;^$=;z$3uFhZ~Ah{xTiS>L+9EGGE%UEK-j^Kng&DtBHZ zb!p3cRzRG#-c|G^l2$4_oV%7zL1*Wl^KUjyzzkTu@ZmV|;-qK9oR5hv+A+s+xX!bi zhn{_OUFHqeaEVxTU9_e*tq89fZ!-jUeo2P_vSixbFq8XZntvEmrI zp(|hfog7?a0f0tSRClbBv}kHTMnUJd2E9Rp3sn>j(|`Xgv@R&|z*YRh%IvWW=3EFz;SGlEwd>JFzH_&p~+iGjNkKIUdjB75?$J1`({VT=G)|^#kth@(**F!*^9hW z|DnJXd>T~rukEm*#wiWPI#p;sx*oM*1;$kJ~;^@;O4K5tSBEJ*;aaq9@4IU^HO zr9yNZ50WjrZva_O<^f0(UvvVOC(@zb3oWZvyaeKiJnA^VHku3DT=7@nq%vfq@%v5M z?Fu*`RlGnHOR51&J~jcf#54di%v545tJWV^u@Okq(YGy!F9JCjyPC28Hz6jg0sDPb zS}fplqg+ILB!0?{)0keHlV~&;!bvm}1~+$k;@o`;JJ)Zn@m<2qCd4&)y4nACcjvs- z198#yBEV?W@xxx9=Qf{vEn-{P+02)q=s z=(mL)Zh8@Y{8KjW(UY>45orEc`sf4ZQdks{t?QijtCZpJyVIxjk2hF=;!_>?X1iSH zj+r8t@%&+a+1Y>AHs<>Q)@#oew)R<)%}kKSA3dqF(C2PqbI>3NfltSfC8O+ix*d0I zrGsh-?SU32rTlJFfa?^ES<~COMJ``wxl-rDGUqE`ebBJ6_-1~|fse{TZ$iO*Bn0;M z*nBx_oHFwDUwZKGcKo})(^&59a?6cEd|FgdfkcOFFf6u26>C4Y;Ea__jvZNZoQRBt z;7vGeX=KjyAaqY#rjZGam|0d{CLPY{aVhY98hMBVPeI~W+n?0CaxK^6%#?v7wzhWP z=^`agj9(pf(X(II9j_WlFMjUOE@lYyA%LyBk}rdgNWPIm5enh&{>|I>c8*ZwH&@N% z)NNLBIbBoCJSc|PO-3xVCQar@$?fqpRVGHjPAaH3yGgO513pRYaoZj;gw1%7njLR8RjLTS|~78rP0jZ=1e zz4AJ?Ri*s-Bd7)^2;O8)mfUvvS^u)pw8_bfsm}6TZ#}2f49@sItWX`a@=3*+(~F-r ztILmiS_{fyZiB{Jf6?6^p<>b_wzW$8HHIS%>}Fh_a(VpeVkPz452 zqx6_RDz$-~lUq(#iZ4u@3@su4t2k^K85faYT4b%WxOm;$(_!mlo&4{LKLhRtf=g66 zO1E3!z$tkF36#h7*K~DJmjoC;*^;R!+$Bt$f0`ue5};ir;YCE=rN7DXl1X4)qYFMii6^ z@t((5I}tqs&OYl1#8HRlMNp*3JyGy#LHtlq-R4^>DYFq?`0~Yqn#Lw`X#g-%;Q|DM zs;1ZyXhdKJhJ(Goq{*5rB#cm?mba;k_Urn---Z+u8$YHH-&ogichEeoV;r};x?Cm3 zODHDiN$*{HBS_Cc{~9hPH+#&Pl$12Tw8W7ysiK)+F`7uVem~{ueAOc+3|wz2v=%ns zzKPGdkzey>ITxOO&E}r7t+EN4_ z3VNL63|FMe2^ND#(_N6b=_g`wAFnD1@m-NFf&=}{ufwi}!LL(DC|?Qr3R_Mc9!W?X zwl^;2D1wW?agLxlmGD z5SkjM`=JsFo@o6{g><#9?ig%_WZ0vHKCtEuN4O+vl4Ay)f~3=JQl#?uNret4h#UIR zBK{`?RY;!wV?OTZd`qR;?}NA^AA(}YUsY7GuT#d8Nqi5X%_wM%@uhx}(`p2@j6(ZT z+4GxZ!LNq$e!*m0b9T*fe11I^1+P@)!RH=){>qU;6!n6Q$FpVm0*11;hFm{z$q-EQ z&4%BbDq*x+}_D3!!+&B=Ea9yUq3ApGgIYQ5nG*pJPa0 zUxjhbI#!@-Jct$PM7Es-iHDsD!-u7h&q+wLz~=4DIp^oeDU_{V8~A41fO(2Y*aSWT zI1A)iZu6@9zHgaZXv)P;+wdbV*&+D0bgF|F}Y@HSuN^Lqt3Kl$49eaIR;@nK7bd=!tWF zo-{QbkZogPFC3ISJkZ${3ukasEmif^W9E^hht;B^i_?LO_e|lxd(_(_Ol3A+e(CYo zrv^@z{6C$z0tJIe>Y))zV&wJ=t(kwG)rXhk|f6?*`nR@v#El;6Wd@E7YPVaPIp=pqc+m2D0mDJ5q;yHz^r$|EzEUaNZT%#^HC zzr)WeKW|IdJP*9V1NmRXR@`9ht#TW7o_=1451tR+4Vp*62SnxDGpCKr{TI~{n$)7U z)=#Zp7-X=)5&e6HjS%LCGZbI_V~N+1_{op>svrAjnH60axQp% zB*8gZPGce2lZ52qcH0{GNE^G40WVWah=b0p<2pzk;5BK>7K+O38XKiQk}#@ZvW6W_ z9XV(&X%2t0LMY_l$vMAd_65PN?bRi~?;-9<1XwF&mH>(@`}>`(vFYYw>C;qmcg*4P z{Nm#5##{)u+m+@e?Zru*ju6;yDi(AOaw{cmuo@pj+eii(eg|AlTf?3rmp$mqc-9WhJJ{COLHw6xzS%$~_#H zz18zK1gInKb|4y0Wiq|q8B9(|L1(8}rpFnegEx+r=ow34;PZQA%`m{0n0s90>6)ZU zGw2i8yk<@;b{-o`4DB~P;99KtwxH(o65(}}FbrHLl&Yx~3xD?iq5i{|B}@Hb9^MDn z<4hzyOGoT`V1qPQWdG#y3>)zyjdG>S73Vk->DR8gPO6mpoZ#weDnNAzAsrk|qTyTA zk+Bh!+nk1bK_w~P3ZhYX9#T6Kc8W)4(5`VgChwkeU*sYSuFgvnMH?|$FwWmxR zU*xP07$oP19rAk7iQQJQ01d2q?y8(?2?f_-TDy(pSxC-G)m`G zP^EO3Cvu1$siUrAVOAHd9I(2*6~r0NJhJ~n$Lnn;;N*x!oICrtlg60q&)mQHZitt~ zJoy-%j=?LpYyCje`e2PBu3JRS`1h@fy{esA(WdW4N?9eH3}=}BY73HPrM44e?HW!- zQTVBwL8sAd8C6N;^Ah*tb)e?8v1go`DxR6$`a#<%zSpL&Ph=A?Uz~yFCm)F0E}Jm!hCWrR3X6&?@H>49+tD(X+uyq4al8K-?jB za>%#ix8+V^3u%R=Ex8m)@)pRloyyLOBFjYSD=9zDi5$%wKX-n1#NOHGi?DKF_*}E{ zeKo^?Tp4!NikL(DDI2+-Ti-ipyw(+Bq`vc@^|fo$k^v2_b3y31k0 zkJxyXk$wLXt#2C1DHyXzU3Uv>PyG+;L+?VqynbiA4B8b%o#jc;Op`@2;j+L0q^=)@ z7VQ6WUmLIsbE5^}hOGZIy78-)H_hmlU%X_%S&-9B54+iA2Fz3AdWzk)+753+Hk%q^ zEh|k!GlM?Rhfd9I6H6j6RG5k#ODrr-PF!lg!p`X=WDfEFUI4ODWh+_>4#AHz59V$! zNCFp;+SaM@&4gn>-v>2y%Tubp&f?-w z!S|Tcvtwx?k_2r@2=8P;;tTuGPj zSFjx|zC7&@m!)+b+2>#pWpCXTtS{A|Q7It!1RuudcShT}kyByNmg_U&lKZzQ$Bw%H@sYAj17X-XQf60D9GyLbv#LB{^2>7l11aVT zXQ10!yH2wi6-B@KzgQHuj7hY}&=KXmE0y`=)EYBqj`1``Y71Nz^RHGOI@a!u>OqoS zG*2sF#IE>o7g1XBl74~3Z%2A~`l!lRSBq>$yu9B_gDm%3E(5YqUkmc|D=XG_Bm$|Q zqC~*AXRiCN3&tcAT2wxW#J!8~1mCkhWfH+Q*)viKE1uGs(vvKqgdh@M+0ggEaQ zu8zw$kVn_otE~{&r-_f5r)?rO1qwv3vvtie)UHkCUBN+|Zqk*ejjj5;l`v-P>)}8_ zUMkKyFXz$A(|otoKo4vB1TzzOA&p+Fw$8z?#O?a$<* zHTAT6ceKAuV$YY^rQCtQ?K1VMLL56SQTLL!sk@HB{fxE11xNJcN$4pnS24!eSL`qe zD|tO3ea7{Fwv!zn87B5^@_Py%_S8SJ#x-4-KWQ5Ta#yUkvU-&23uo~QXW4gOl2(3| zau=NAtYwS>kUexuvP}y{;WE>>Gh6;+Mu3xSUN!Ejc zUpGzv7e$C)QLo2w7=A7?qeA@ z<9+iiTU(*1`RylYnK~_Z-j1zXTG=Sm#?=iC2YcQj{_0a?hYMN9`qWaK19Zw2 zu3o`CNUo{r)UG+Tx1$Wf8CL=D0Gcn7R$kktl7Xzcv@KbNqvON4&mRp z84g|dW;K({(FCUIu{9Hl^*?W00r&Ujm)OkVI*&Wgi#q2(VoH&7|CGco9h0+Dk?Xq~ zm*2d)z-74DZ2w{V&^4Es_|s3TY4Ef&!FxCb1*#A_UeWvhJNLV!v&}@Iz_IzZidy65 z(63mQ{#1i$`aj&>1~EzulCo{jf2H+`%O}KrtnC94qTVDVv+wBrY0F>h38bT^(;zz* zav@lV=iuOx=F2Ow+?4#A$zlo#8B8CNtTmb&i5-sP;1NlV74y?Nkl%ciq}2TG?F_p- z6N2qiFB7nmh1KEh7rPwPiNkI~%L`waO0sfRl8#2u^9?REC50wYS8^ymHD`><0v8@V zxy;;@Ea)DdEmeOF+w9?zQuMh5`Sn6;^6cTnE!De0xwpWz~Yr0G>-_|I-&hWRv8BOlR( zbLH2^K`bUku3A0HrArS?qo^3B*c^3_UT{CkDKxO;^1@k{M z6=`A%3C?uq*(hVvBkd~IkUebd9N&|zM)yW1ZU{HANnS#K9(s>awNKm9giHM;>z_FX zPWydLxn{#R<=ZFZHPk_I5N8H>5dgcY4VAV#b#RqV$t()$Im)S!9iQ_M#B5z-IU4ZZ z7TS@mO-)s4DI6{D=g*%HPEV~&l~8EMxzZgkI_-@|#}*0NEGa$F43d&fAKy&XTzt+% zMW6A5Cj6ZI*w6g${3y#oG6OAa#)@x^PHoPJ?d1|C>v zf$M(0kB8F^0bjVyeoMA^_L7^h2Ap$>UJQi^KisoNhd;k!JI!W+>}!o$Q|Ftws7gQq zBC9*x=$i7z$=~?JcfTBHN+FO>&$^0W;1AEY@r7gZCrUkydl~s`B7pu{uw#CriaydU zg#4)((E`CzQ&UsGPfw%RI@p+4ScDt!DG8H|fZlhWKexM7fIF`VO%3lBRI@2@fYOFb zz7OkeD7uE8xP~ID!q*D5k)i2qBFAmZFEb+{Ja@yIFi(A6c{N3)ZWjM7dU#+nmKgs*-KLT(N&ls7~ zp)%Kj6wD86E+QBrm;7QK`$q5IzyH*2M_cWYEAoUf-(&)-YuJgTVkdlmFi0Ze8ruIF zD4D{LX;@t6iIi!{nWCtb%0f++(6k+4czungZmg@K6+mi9%lQ|N7ieWsP*^N(YJpc_ zf|Gc5=L(u)ZpT05D!g^ivy}xwu*Z@U=?&a`QBdFQegem0cEE%lPiI78D8ySfi)3&Z=gWzHkafiDR=)<(O@#FRJS#g;@) zO5WJ0y_q^8Y;r-3Wb=@IQ2wwuouc3m<^ZDZgJgD4Z+9wv(J>vb*T5Nws*!|LOyb9M z%C_kvqF{;@h_D=2one-@NkELU4FoUWC7vt;TE*u>a$7e1p0(WYZmW_VV)4%kuKjSq z-Ew|r=(|dhs`W1`xV8?Mzt>O9r~93!+QP*76DZp70x~ANX}o#pi&pQP+&P1}30t^1 z?e-^HR2mw%L%Ns#7{gfhb}qG%(u~|j;Im8)cp7e9@E7hsP@!cG&-TH*6A7?bz-ezA z9^a<_T3ubzR#F&}LYYV^rfTVlyX25b>*$DjjbWNgXSu7uwZwvR$WwXx?RY6M%<#Ow z_?rRIKl^AH@4y$Y(~j+^6_3efB$)w^0{(u#^%tYlt|Qeo|08{0vny_YU}6Wl*qrxr zkDSE`iFS2x!?!uvI-a?}M107m2PC3j!YBSQO-aK|HZ~e&0SxVe`!h{hz&j5zp?;CK z8yw~7J`PVHDi`>yh4}b*Oq2)>`l3ira{l$-SHz7o^gT-Zi>`|18a!A-bvc4c%YS_W z_f_qfzY&n!NdP-%hWc$YeB_>}^rFcT#Lp7WQ~;Cs0~x>xcvD4c#>V71s>eMuY!D0#Y_*qka0nH1Cmprl*}hrA3VD>-Qis*nVD&rJv-ixL&m zhOm*??3}F5*18?mdkWToj9N_^bJuecmPxuavQbpI|LPhC4|x>(PS&6K-d;0;#2~F# zPxb%};M?+vg)d|3_l>ZdYRJBK4^YGR;fSq=V3WzNrUqy#CK3Ds5Am#SXs|xX|A|GG1)CO}xB*56xHz1o;qMN_w7jxf+a8|Y)I14I zO>VcOf}z_!*PfnflP5Gq7{A~|c9U2XBourZF@*0abd5b}^Z1;~TPqN_w~{1PH7E-u zF|chr>k$jrH+Xn{apw}5Ufu2!D5)h+S`m^F?jJ`aXq0)OQ#a1!3avxRKYtsWP;IOi#s^t7Eb3ov@%U;N8yW z6FGeDpq?GAH=Ze%AR;ODrU2w!0fya8Jmkeha%!7gHsmaM;rM-pa1Sg=YLY);HjNBl zNhAfz=?72~EnOY6Qn6#;WJes*H7)2Ig?VCq=keI0slo?-(Q4Y*2zZqc z$S{S<`k9Bg6I&l2X)P}7->K^Qqh5~!Dt?y2GSIvg+^<6uJAl8-SytVD@5?6cSbv#Q zC%n&e)@->mGr|_!yr6#(V8BwP&cHLQ7%WCmZA%2;;dqP$Og8okF>Ki^K|sE{;tLJB zJTOnXOw?Z=FByz#|JT|u_{(GO!!&hd&z0SI8^?%IVF`k1ZCB`_ulOn1~D(EqO zF!Ce4TYtfkW`h*0KjU@U&Nh9`sV%5#{+YH`NY?Xo;(U=r{>G1j$2yP_I`e9jY0#4Y zi6w-1=aPt=l-exf;P7mBoBWO8E#M3iGg1nISRT$-_@AH{n;nMYopv6Lep+I|Vr)dl zWA8bqI>1(u=Sm}#?2sDkSsm-t*>ChR3b=ao+P*oHvm>g%{95!OsbmhT#?DT!*HnbG zV6}zChR*L8M6a4ZM9|;C6!hwOI>%ludo|Yz-@l%o{uTWB;Q?kj0N_%lhdFy^SJfM+FDkyL4Nql@11XfcLAYqdEY6TML?ncZuD#kTd zQaVSDqL!Xce`v&wf%{GC^X}W7ZhTTzfM>CCB7RX&;pUvFu-e6WS(3}n0hZ`(%9{-T z=h$n1U7;8X{jucfopCF73oZc`=l~DR5wy0vvos%=9p>kjWSpJJOKj3t{m`4t4i$w} zwjc0~hP+IutX&UgDJN1Zw6%5Sf3GHd5LWc{WweLZTCUdUXlK%VWnq>{gM(@vM2>9j zRWhnYFz$~QlMC%1JhRtbAn-irYC*bkF-(>vzmx|{PhPoc%z%VTq z4oFWN)E{e!pr}-~!^Ibs$nd8QjG9D)SwlW~t3DA-r7i_uJP&!IODBf;iNcpvz^a}% z{=Hzj!-~s(0iu;(gftRsV$0{k=Wd9Vk6XpPN*-s1z7UkQ&94>gDENt)EU3-Iu`+5s{ra+$1jzOOz+c}?Z{_>Py?zb*${lYqQ2wt=yjDvgL_CtXo)O{`#wyYGTe7`-M zCkC7<6!cuQ;_`BHpsA^+F>NUJhy^HMwpg8e2@OB=UqweyUweCKeoWnY5_^U%FkJQD zp(gKdC8ZnDVyJKlyQhhPfhL7CrSGtdy(-8yAruDuvkgBoRaAh+cmeCXjvGhk?Zh*G z3}~BPlfQu8WM%U7)k>Ov$AjSyvkvt7qsyJ`-i?3E^%OK4hCjLz(f}N|yfi$IJLyXL zwa%FWF9~3@Wu7PZ#gyc)p8Ms&xnTab-MD-kK}q@i7qQW2QbhZi9=|zHZh1IXTZhkm zDckgV9K8|NMXRc|o@hYcJuUUNZJXGS0w5eAKZ71GDJ?HQA5K^Es^TW15=)83#!+9j z|2F3{v#~hxCjBvEThaic-D`7osLzc!7kR`bT$@vk6nc=#DFA0$!;1c&6-}(ZnN-!&Sb+kW1T^=lnJNyR)@n(wDN|LGda<7H(HGvkc zNqRs->-6)afT6g;606PfqWdhUDDjqzWfZ7E;oukUyZ`jJYB@uaG0R_6j!8sS*Ba4L zNx$PFlGp~&+~|D!$khu(3tjNMT{*uM_C6K`O(vZ_A_?6cSCswCI(>!Z@{JquRRPpI z;Rq;rz~2K3#7KeZJ^Qr8G?I>v-{qcTRYZj0W@1QyQD^g;=_3ukv(LLf`3jtZ};b!kM4N#20fMI^>5oRRf6mLfJ6O1iG}>@-Jby2MoZ%+s2==10AO zfV+JG|CYpSX%fo#zLG(y&3PWNQ1$o5Z?c(kgVqbAvTvFeA7 zgUSokUX?j2Y&BVN;d zVtGHe42%aktX>LFvlkepXZV8n?ykQDLMq8-w4?Sfi`q?^^<80#Z6YLLg>j!TJZ?{y zqnr-X(=$qQ=x(lvZ1UHo`HKG25ju4Gm#Hb4tT>(Au zoES%+$lZ#Rni}L+ko_b#!cN)dz;(lH%C^1gA zcCWg5g^Evztr>8+juC|xJb`k53Cq&-lN4J!M^h=-l*5>F!wQKU83yXRj zlE<1Hwi@|?y)ucQN3@s^#L;1?6E}PVr|6yrFvJ2b!)jQz;Yq}V(m95sKXumr{v^wd zVcGJbT@GZQ&kNndB;a;^85$16_58iUtONeK*M^EJ#+2Y7M?{ZqYk&NxxxUzELATx9 z59a{IIALh#Q_5uB=G8Tx_WZCm))@zFv_3O>kBF#Izt8O)0jIg3kWTZpx{lH!n;U+_)JTJ8r%P(2CkxuzI>qdfCzY`lH}r13o!V9oo6<2GD=ao5DFm@v?+U6~Ml- zqO3X1Kol}I2FP^CDKZo_bl3YfHZWga!T_TMfQg(01%(*CF_d+7A}?@&4o9@JwJtE+ zWMSxIpB{u{Tga(pfU}7_>lwE@nI`-^OHi0>aVa>LihWB)T+tl_Pl+lFp(5dX7{F() z{?;fi&Xr>=EK(FA5m%>Ae|S80S^0tX@YJ=smZ`+km5qQyi^Z_?;Go9DW6{iKaj&&O zC3$kNiLc<{3OTTh6&w&|>EXr9=ft7M-#g|ZQ2V(gd+H;{Vv*_kT3{}|%u+k&jPa{X z@-vsZzOb+6_Bm&geM7?hVzQhanUMF00u36U;d@#I#2BiS?;WR)n&@OL55wkocWe7* zLav$YkOv<{B({#Bo%0KZfPgY!95J1vO8C*$5sE`^P~Rbo(3uD9VkOo_li&Tx;b}$~;;^6Zo49l z`C{}xkE7q+u`HBlLTU2;VEv6W=$SrfXzS0%Hiy8-R%YE)Wt#ivDzV8p$jQdj`UCn^ z?jEP}tMG`XIf${kwsz;dWYECx1g-0J+Ib{icJXBZ9bgKPB2b4I0XgO2JRj8@L)qZF zv4^}FYtL@GJ<%YczxSLD%XAjGEXIwYB7V2?v$K6Zf--+57G}GGf7?Sbm4*%vkG3N} ztc(>J{*0C>1N>x&Yp^hIwgfD8jIB||L`2stBAd|s-S3AJ%pF^;x^rFS8F_1u zAHVoL0mSf7BTG4U;Bz@P1Jd>(57fY~?oG&Wm>c3inZr`i{4)=L3fDij1YUntiQbTd z4NF1`$6F4k&OC&myX!=Lt&uB6jNj?3^$L5E^1W7+O)3$zM6%gc(=sg`g`)g?Wu}{0 zfOX{H;NbJ_sOX5gnpi|v1P^Ly3dj7pW#B%$!PxmM%%MlF4Ub}pI)%kQpL#hR8Cs~Z z-@CZaxre03)(#H&GAMYOI(jl{Y8d9!Wj=*byMi=n3LopcqC<5kh&Wv$HhP}OO$Pto zOxb_kJ&#HA@bYjy%x$Gn!m)5e=()UczT6m0qDn9AY)TD!*b;MZYAz@{DL7v2DX>ro zt*KG0U%4j2Yh^Jz;$D`o(5(I3n2*bxX-*(mzdySG9X&q>MTADAr{>n!jcDN<1GK9! z0__F-o$x(O%sdy}=z_9^=3-kyJz}gueOx*bGRG9h_@(ARi4t;S8T2p0)^Y zPusLDJZe$n@XTK@dWHH3i7r+$P?wXL=Cr?YbCfxt-C6A z?2oq&{AQYQA$lRC9Vs3rTo8OU$&e0t|Nb;lD}(AhC=8oo#pLTOgtcl`yg#P@OiNEs zfdy}nM~znI#j)`aa@k}#8Cc<-kEDzXTmX7i?^K7+JmwM(kE~R!XCTjbII3zzGx^>m z)^>qyy9;$dnS$jqz$JDWx%xheOd)XX!}&CG`V2oDayl$zS-GbJX2x(dR)Y&2a7r0TTE}wOd`$FFJwn8qi_ZJyeR6QjtuFczGL#Y8=QW8^bJ;9>_ z2%V*hl@iEbHxRoHD?b2kh)Lip@&_LCk0z3CUqZVguZQ5r=V=<%vjhC@ObOltoMIeX zCup(>6g4Qn(KnMtKuo&Xk9fMBQ&lM0$);f_*U6TP$uFN19l`zoT7b*M;k&bEH7CD2 zM}wEYP^`pJ8^g7cnwz7q&IWzbbW%E=yzOi$$>VcjQH&OD9-gfLNhZ_p{%P^=L`H)z z+TF^_diKCZWuCK@g-7;T;9;Eb&CqsFQ}IzTih{6_WW7nsv=wJKg~t(TbWO#6hpx(R?r_2-)H}DA!Aih z@xQowQ?~O!E%8^KLday(m+dNtSAi0$Rk%3hC2o(NJ4BUgmVsa2#Ox`i79EF0|BbjY5C)bob331^FgPoo(k*POW#utbR`rk z@w?@u)fYj*l(xbCZa>0Pa&cXn5L+)NHly$Q2fN%C^rp!{4aVl8> zc&dO*ecT`26iIo(s<<~R#^L>@Z#zPqj0(!9MmK~=CztaLiE{9wSIFNQ#c;=kU!T;P zXcQbhaU~zh*frDQD;9*W56m6>oP?NlTNi+f67SAXg8H>6ZdPiJ?Alqg&x zVal~AE2*4jJ-v^SE+($_2mB-Kh*n!rK|cllOP6!QaU2#Hn9k13x|AZ^r+u!8uV|?|-xt zr9&=3CG9p#@ORJU;dKz5rX$+87$k`%<;K9e@!=y!b>H$mdh9zL+>2EV5o3kMF``WY zuxV~G8JzL32I$-%VgT3^#>Pg&3=ho#l6Rn9Q4?JfIUP|EiH1zkMm@d=r@tGea_1aN z1{wnct}bQo+H2N>U({j9HnS9VfFe4G+JHHR{Tb7bo_;IAO4>4*4r)IWf;Jy}^%>y< zQDNY5XvG)%oi(&zW}{Nk8^{jd-YTa@QeSFDaiJ|VIlZ+0#i7-u0eEnK02^t3~BA(F6iaTo} zEtz%AWCv(G(NqqAUd~K5dvgbe_+R5Z^_R0M@5=j{9Eq~nDtTM-zcut`iU@gqw_k34 zhLVbjf9au+Y41vpxFW93hxQG$@nzP1>UTWrK~uty$8CyMkCq*vHQLw8_20)6*bwTbH~KrG+h>|7Z^=Ecnx@(4KMHgnPoY- zY@`2oZ{K!KxtuOqx)iWETOKb5Q5?7^0o$3F3_2TU=Q~27$*mmg!V+hbj?I-xQ=0}Lk@_GDdIzCoQs#g!X0d~BdK>{ z{C$oq3rCcEAI#>0C{2}qR&>g(C7M03aG^(!d5=m2d#@=8?q+(~j_57Y9Kcu7xR<0x z4xfF;u~(dqxAHR|?jte|3d zBJLx>LYf=YWV?I%K|$vH_Q~Eoq?tRUZGjY#9g(Xl?NE#u>5b|F=abmrZUXvZF4wa1&QK zjn!VC5dzs^$(VDiz@>|s2u_@o@VJc(xs@uu)SoiXS}pW4gJ$M5fV3L6x1Mwp1$*Ws z;b+j~$65;BoXw#N^RBzqv(52Qa%(_hr0Zt*vB404#T+*YXxh3TIk^M} z=FCUGJD?aY*y_(u_%Nve9DPDU0!`^$mgg62T3QyvKe97xqdhNAzN^0*HZPg$K?b{E zul_yjyVv{z_8$2!!V$@#tw&IEBFgmrl0&*mTbET&XtVFK)jzv`het<)jRst*nZTBD zn;(7o$60Y#Eigc#|92At%!uXkA4h|L2ik+&NH&D|D*(6A733C|mxt5V)j0%u300>< z4DN2c%8)QraDM&L*82ESRZdrTmhp;1B@A#HmLym8_L2vWPtilQAh zFk6{1carjZfenj51f?E*vItHg_sV4$K0L96v;Hnx;T95ASnB~A4}>S;wxHdTUyOh3 zW5+dzKe2B9q{btpgQE4t4P1ediH+SChEZtFbTm%aa41NG)#Q*7)gGMECE=YC6s0yF zpqfUQqj)gPyUbinn_+YzkoU1B1((@y`lpNq(|xp3%rgk$(^B#-A|ZWwZV_NfxsBjd zhE0_aGsdpq>Z_|d1z5#J2HJNS)9V3w33HD++GJJikUvX>_Psfcj{5_})9-&(a$C8p zY=YzXUW}~aI;o0t(SOA%f4=ZS-uL|KGr+cAN|N~ zQ}NUNK)G5>LuP$;+HK&vs{;TWK|w(qd;LT<-dY1PZVPPmDBs&9>!o&AYVTD~d|e}7 zS|EB5V8)vMmHy^WR8f(^RTF&%83w#8<_=*K`7$#4aO6yHA${sGqb2@eFaUi$v44Ie zfAhOEBHR3Xkeg`DEWEjIpi?i$k6qD2sqCr4`gt)Z3z^c@F>kIP*6Hnz{i=-oB^l#o zsVJ32MRUwT{Xy7NYSh&r-3=sDx^v|V9M^{`(Ilf@BE40wo^Qv{CYQ>zy=!)tOqPo7 z?t*})JDj8u`GmyHcG2csZwGWT(QwV!RO!&DGrwqrt31GiwH>kV%@JgZ)9UG&uB!ux z26qC2E+t-{dJvOyX^J4!2<0Oq3_DFAaN&M$l&9gKXSY_Lu{;Sx*O|@i10_Z6Vfv`~ zSg~P#p?BSVf^6B&rSEa5On;JhUn6N`ROC{t{RgFx#}T^ACAgx;9r}kb{dEbp6MChy z(_Ag6H`gw_t>0;><#3BEaHm&rzxw*V?P($}9C^bcJ| z`#1Sl*MX-;J@t?q)0zAwZRHw}MToV{P7jNid>6Pj;Ha0ny&grn35M>g>w6=Z7WL-T zzFJ4I5E_lre5O#w?%;;|x-oMwoBiNOSE`x}&>m3{rJ4#RCtT?;aRN-a#W4AQB=Y8)or9wVeq86@DxV1~@a zvb)zBerJQ+<>=_gmLNR1N>I)^%;7vjH*n$Y>Vn{TT^+g1cGEfcnXD^Cu88et6*b1!BgFW(*66*d1M zV#K!YQ*6m%LX44Lph_e__AL|gD*g4wdegguS=dez5DoL2*+P z7e^k4ic!$ZO}G@Gw~uf{e2-OALj^*ms)S_s19+2=gvjbO^nrqQcz8HHGkxa+41VntRKB6Ub5J(v9V!P1wBXRcJJri+n;N`wZD2o8*K;Og-bltE5;bIs8(I^c)`Ahrkl)B_PGA1^ZTshk3MHP$$ov;IPA3VZK ziytxPQD=;s(tCid$OScdWspg5s7?H-Ljs%OZ}o`C(r+}_3X+?_0;my^?T}~U5tX}O ztHNRCTkCLp&imQk?{&SFEiCdAids4v<0fw~k)~AI8Q89#i%LWco40jiq4@#R(>ZkdFxjg>YuSl?y-Qp7HF&1 zSl9)KB%W}6bERvx=5cLmPU|@(`*&oQEojL!e+Os?N8Lz0Y_}dlOr`!#aB%R;zwEpx z`?8}U&SibeQt0ErTJPw3l>oi!$LJ|?VTd;+7}By0ylsAJaxk8KqE=2r40^+K$DbO+ z*${9l-uwe6xqsvABcjjeY&u=D%aY9C!s}Ke?}ESK@y|+`LpVq zc<2jat{!g?AzcLA#e?o_F&Y|MqBp|gPY&_wY~fB$~c(B@(G(i#A%ftWeBd4d5l>L3obl$ zvKnP4Jj8>lk4H09y{Q7Gyx=4yO=3pZsLaUf=`h@-xsL_q67#+X_41_Y@nNMS7$$tz z<4O?^m6__kto`|fvr^U{e(fu~`xvrTY1MeUsl(_94^1L#v@Kb8o1*Q|u-8C&`83V& zI~@r{Tw@>MwpB~-Cl@bra5=!knpzD;3_+v3PO+aM>=9MPbB^I=;oMOIJ%<4 z{OQXut%3iMiZ;(L%-=logRVW7)9gU5)&h%BM|wlh?&R}v&(n9wlD=#u5SWH?aLC)R zd>>1#ihztz_6o3uhiYPuFhph7#12T-qFAog19{v#4z;#9Vh3tGC#f5ewGa zQ$Oa8KVPJU*FXK$>$VEA^HB@Hvn)n{fg=A4lhuB=+;o27Vt_HM1!#aLn7`%lmBp;J znUje4L|5jh2%qOY5fUiO&y$pNccT5s%kx?MZ3Bh@ITmvW89ACr5WnH`@X3$0iLqIZGzTpThr! z#fZ49?>^($9)lEf(9ymP3Wm@D7x20(V?21{r)W({iagE1$q`+FLTVc+kD(N(e@q^Z zQhUI(U~>~|>jJ)_qJjnoDKat=xMZa@MtTe6h~2E)$vUgefAaMt(`dzzh)zs^b^QIc z!R2RL53u$TXVlubjPBhQPA;z*EK<9OZP&5taJNj%h~S-&VuuumkWls}7$$r1EhVv| zQ7n0^h_OrOK$snWhztnLSkYe?+=ML;x>bv2xu4`shkXuay|OeJJ3yddm-9f98NO?p zDy5m7v9^rq0bQPhX~$NjzHT5D+7r?_4Q9BjoCewje_+LMKZ~Q5H+5O);#d#zN+!mO z5a7x;abcK7WM>9k+L}IJxxOCa=QqPdFiHA8APD039ZIYm_AUAxWrM!&LOzg*k0IKa z_b>UdKz%42OSi`wZOrvr{fpfN%~LK=Wr0{TVGdrbdqJFKugcxgfbXk75Qu~>Ul?%&V#oqKi`UY%!8fWwlX1ig=#!ZB-{ zxAkkRqM$hfw&AGk?*wtl>grF2;E#0EfUWbE< zf|qMx{^5%7;NRZS`m^rs>ECIU59?EJPfKbsVCjzSx*u03&i(}$L6^-NKjmdo+gSY} z)Y!<|fBCvay31?9hyA7la|Ep_3ogP*-x_*yjbC=?YrA~Vrt9ihjGJ?Bl0;Rfcp426 zRnT_6%%|PYlb+0`Yi^P2C-rVlGT=W?>UBFc@U2+)gnOPVP#gr${5JF;L4>-8c}2m8 zOX~X(E3w3F&1nZ`Sq9{BFLUjTzqwX}2xw}bqJ^>x*@QzzLf{O4)ddY|2T&O0ESb%DrH z`ibfy9f|$*WMCbcRu-b8BSv;MQwyJL7Zye5{SHBUYwnql)@A}pT!vgp6&+SwTwIU4 zYnSU!%#ERNU%qrA$&{j^qpE+@mh|+bjjVhZV(G$_QQCUL(6i6^)Ar-JIPv2_=fWY+ z(;aznLqn1>6An)>FRaSgD1|8Ai*BQx3y;vBGmXuS-$|xwz{)=)@QzxQ!P#0?rA%8xI z`UQ{+I#~wt+t-IQ3yc8fd;IbRDQcixlQA6Ag3DHz-9?LtkWki!D6*QmVyx2%VJf-i zpG~f+hAC`GvZ{&>Z!TAl--eR=r{^pc;%+=i6Foj`^@vdQ=7=_#jXwv1Y?2!1xR_kY zy*@orm3AR;>R9(=40fs`S(B?87Zp)pE*GzfP7-7UuyKDH7mPGq__>D01r~_>xpu*< zFOU&7dtw4L%sh1o{|9;ShaHAI0uED)-`RRZPU$k#CW~&xsv6BtMDp0USS-})=gm$T z{S$CkIEhuEPVpeQ5n~hUl`F!?sxO z6=|#)Con8NRkHe@&v-X~8CDc^gFfZ_u)qS8A}Ipy`YixYA@rdy93Ej&WPaJn+Bu@`biRhP92JSPvm7sKeaD5Ym-FBFUEhPmus#%R z%EBZjZEfywcG|=vGXlZFYr@56cP7tw&ck8_t8sV8gMt697X8Sip*MXmT8&s-?YH%3 zoYhUK=>>G6Jn@zP9M&7d1SV&;ZfY{F@jKBk_bi9%F z*T44n+i8Gya95G*kf#TOa>3#@KIeHf>kUmuV{WLrGf*;GBP?g7{n^{%w40)0$kWgO zN*X}Et0=Y;xZIYo@B6hTcDqBmGy;_#hvicX$XMf3ujxDPTq`bq{`jK~hvmkC|5gK# zpiLCvAFp~|4y&qfeH3U~{|^5h4-gWS)^!(bJ38LO4a|Xl^YU6hOmw$xlYA12!$L-6 z7cBv8#qh^ceP=H?22dkhM2gBrldhto$bce%WVM$` zdIm;DGEX88hp0c9A8$|AAnIo@CCCXm+*TasGY){CC$*6q z)Awc9oczz*m{W+3vz4te<4 z($Z3R9|e@)q)<0xX)F${5FSn&iuVKzDEUo)9u)cF?td|`Hw=lleX5-JTF^ViI|f7P zLDLbMgFJS;oj>R*u#(+6iUDH-(-VHJ;VE(i$;SQih|S1LLl%n+hek;&3LBT5_63 zRbB+oGn*GfuDT7(voZB14_@P_utul8bh}lyljZ zV;Z>3MHqPR{vOiKh^uc8y~1PNus44FkVs-@^}Pyl_%;S9|+1cfwfH^&wv-3K3 zl97p7DhYf(@?&L$J@DRq#R6Le38q{fVZQA`hxcoEbxnveyM@~lZPxdT2xHU4>r&&# zj@~sAKInkq6XD9>(X3~{FOA0U-;;fW6HC8l*8qVzK1*F)$|JI0nV?4Qti6HPrn!4F zgRLZqB=-BaKYHIWXY6evlJ{|-ie7t@o9$f_I;^#2;4UH1RA0FDIj>-Vvc zqZF*>4P2*xTaXZsUUghfFdq^V?3|};Yis}J@N=RDDCXyj#?k8P`klJ7_5x@B6EXg! zh3Tovoa@`$WQEF{58iB18050}Ov8->%>f9;3$Ez31;YoTOA+)DV|%pCk*eE|obZ0v-R&*iunpvsqFDv;FiRHjb#%*PH6O|`5(@Aq^xpqJpv8Mz7Y zFf}2d+=_umTlgp7yy;(>f*Er0tTc$iA|{I_4Svu>6fDZ(a`awt9sP<0NQN*2L_~(3 z5VKodU^THEjCu=svy5d0Gpx38)Z7kvb;}}^Nr0?753tH48>Bj4EXDpSLaHV>Bx8nx zH0rg)6y0%oe1e$`kdyJv{aM2sgL8k%Hs6D*Pk<9qo=~u?NQj4HHw*zDMD|Y~%1G1F znui4Ql)5AAe2PN^uimhLFlpp6z<_o>FoMQn@I5*u#q__?_7m}^2wInv%ycg z_yVOtxE9fbvUax79Fj{o{B3z7OfX^F2g=XjU8i_ZCesgtXxcsgEcZd|a1 zDfBxP@H$zW9({cm{G=J6c2EAMGJ%%qlxojwU1;0I>8TY%g@~8|?Sh%cE{NAeh)?j)RnJ{F=$)h9l zo5$aH{!3TF?l;}JIcU_8V69Pi?Eas6DGi$XBNGOuLew55#&>;`G{B0<;cp92R-GuS zvPP|Asc%%xU@`ZZGmpW)+Uc9YMGK zP7j18T}gOUhy%p-Q0)yqWXnNs<^sYw=e=b5$Km)PcSv$n09I9A81f>~)}c55DUVR! zyZOE_@KoTxUelC6=3qQrw^v_4-TNwh>=C(k>g3e(V8t?N_Bs$@;Qvt3a=Z?CM1ycS z|8Wo$Qq|Pa8SW25gysKoeem`gA%tJ{zZ)TX7&&GX2LSG7xs>6Rlp^@cZJ@l_g#{@Y z8HAdedFXOnMk6R<(7^roZ}156;o)J$gA2E#~-G$|4C8`t( zN9);XarSj6G|Eu`h%7P5rMx{|QsD>FVI?)2J-Ge*XQ$2+@n3IinBVE}1bk{afb=JD znI*mo-`;N@ue!r5U%2Wvm?*wjpsGkI7U}G>mVNt%vdR-Px(&2GE^_F7H-QDDzq>$G zEnR_X2?KKd_NH%YYN}bSvii#0EnJQ9LTIk*oDDn#!>wAfgrn`OR32@5_S_JI^x)XW z+Rc~HivQV7DutVOYb3ts%J6I|6K0IdT;>BH9=Nft02PyS9_ z(B0RL@+cd2rLZHjsff$it^>HEpTO<>`deI3Ssf zt+Qa{MrHsVb~kwJd;&$FKE8jy*kj2JC`%>fv&HPuTmO%ybB?O?eY^Nnlg-Jl$+m54 zvW>~sWZSke*>;m{+qT~4`&;Y%zgC^I&U2sp+SlHnjjp=xGVzc(4hIaczNjhZdC&w? zPYQv30z7#8ViMr0s@Ep5e@m?VtW~8TiO>TTkY@!M8!8tX;m*U8{zxhZ`sZ6fsW=Ua z-}Is~+12y>pbwj4{Ovp0CI`8w3tgW~A2bes2ZDZ$0y(_SQ)0B1SUFEaKobpaiMsF$ z2eIWaAcYyrZ+}UjJK^1)n9zkBdOruWkDTk*-^29oc>BKx*SG5RfIRPVwJzx_3typD zWoSAlb8g+GM&~=i5IOT!n_mYi3N(BB?NpqvwMEhU-YO5Yw;@?X)Ku?P=$FI?ve+bU z#C1hnxpPzpD5zu_hi_;#)fvs1CRb^X>Rfe4NYl5a(gRHQhUO*|=pg@08@=nXHy=rN zXV#_8O9&a+lFF9Ur}YOA02Ddcpiy6=WRai8kbQ{?6M}_{Wq7&%((7Ak0nsymM?pz# zGWFTX(bV5`*l)en0WRuqv=Z1y!~+P3{ViP~<={%~tX6c!0A&i0!VOZ5nK059WDZlB z4Rqgq6@GNQSnJ7sTi59xSij)~v>!m%&z_JS<1KmGa3$C=Cyi}wi|_RVDLl%{-}c0B zGMQPikN?4LP5PU2Jau&>DMfcY0!J_Rz?>Qq5l@H_j_<38{^mZ|tmSFbvvogSTD{E; znkn32iy}D>}*1I`-qiB;Y^B5=H;^cx;on>hfqm__jsP) zwv<&=1`;Wiuf1}_v)wX*m?W_91MIFWtP{QSvL5Z87C_|`(2B|?B_%zr0zce110N85 zDK}fj5(TdeJ=}NB3)J}40f)|b1}}~uz?d{M+< zLMY43?aY)C(qLxKEUzRzCT_O!Nb%CwjA0Udn`C80=v#)%1d~q_E;2+$k z86F;vg^8&@ndx4s(~O|QeC;gBlZ|Q8;{ZQk%oL@7hNcSGDbY@hxaq2y`&fVJOgg9N z$ywOLZLo}(T6Z>-WHG+*d}4z6GcFmut(I_nl~aqCe6LJ3-T*^%+{3XgF72>(+SJ;- z#prsT@iiT7dl>J!&ld=mh*dd!+dLkdchsqr3C@c7OQNRNKQc;(T_U^FC62#$yS6p- z4y!g>YefHbJ>$Dw{nU}tkRlWZVwBXt%rY-8CQ&-y*8#*xcW|~oxlR%TsxhBoWYSee z{xko|^W2ff{PhekS^9fqrT5;=LYEbB?`^%-%K!%f`O4T&o_&EDCYq+A9JaTdNa>%Z zjNN*_8=(jvrTRk$s%^;5mf&^zTQIVirkdI*OnAOOl|ms@s>nA=s51XhjX!1B9J2+5 zg{ixCsS*Z6io7zaI;^5WWE@ShW1GDH@v@@Oh5qFm%xKS+p<%K210dpWKSM&U=a(?l zabVlX4JU`*vTz{jr}}Z}^=R3*mQBb(En4mOYAst2e#Ubh4jp_`_-v>>3sNSeZT<-R zvwG6A>c)tyj)Pbe1#W|i6&=Zb;lwoZ3ubeOo8Bm9$7xK~Y29d8{{GEr?sJhOr^?w| zl46Ym10@=dH~1$RSy55J5}&Its0ax%oba%05!Uhf;U2;Bw_-!jNtg%>FNz?e3Ne$A21oFb)NJ3dE3N_> z5X-f&OrQA0_rgrsaF5eV&J>qp2K!~%gAV;mDfO84kJcCWkp zOQ-8e?`s0A`-3&-{U`=#H^HiL3idP6D5y-cSu@u-F^X0k^J~dG2}J_!XAlcXwuwoP zfg%!LTg&UUHE0h;{j$2M3A{@l93lo9lo`#o1-ZF@eq{T`0pIY&vNnYk^%0F$ zIs0u(IzN`LhsBXBw;5EFl!a)pP1Yta8t{4LSg^^^V2m`_fMY9Ai0E)CN1iJS@G0D$ z*W=vOsk9^c7l;Ejj2t8Ht;`fOZRt55w?2oosbjDiyP4-Frmy!W%hh9_$);?!tKZ|DB+Pb43bdYlN+pf_p>O^iIOs7koyt+ z&Zgc+di35!LnA&(LY;X!Z`SQ971fy~*2|&q%%XQBua=9V(yuUNCVL>K^vS3BL||N4 zf=F$GOih*hB?2k6Tv%9~UUWo1f9KplI65Ts2tDMm{Mg7*!zuxA%Hzvp6?d&so7Mnb+2`-piWoZrd(mU z;|E^zt|uK+5~-4I7@!XhKpwljOLo0h{jIyKb*}U_-Oziscw38@^J8->BiVNwi+8`? zzR1?_+GoXwj8mjh%$3v9hjs_gEjN~vPDxvF@a5%i%L*%V-qnBS?v4RN^~6X@k=Xl$ z0>7M@0)zvD`XH~|fF>6xRro_z*4b**L`Ow*Tp~poJYHP#EGeVl{=zv6FW^~sW)UUJ zk^#o}<+4_~{C&Dam-g(w}X7^L$&kq11 zVq@z8yY;cy{1OuL$&Ab_()TYnckd0q`Yb;5Cz16oCmqQRhbe`OmvLZ{bV|)-bGLB1 zLEjEkJx)oj)zoiXc7|mov>*ViLoS;>u+uL-%>qxI(93ZD2di!t4ShhOWX{}%-msZ3 zr0ZI?RC*I3=!+Wy-JuZ7cgdTh{c3pHIXJ1@S}q-B-?^1eXf*k|B02`0wuG6PS?m+t zcM}s6Cs$1<)&5!=q2kd|R6LI4AaYXqzgoj3{0|lg%?%1_YQbm<>Y8F7i4c`e{(%2y zu~MTy`3Kugn!Im#*QPG9#vMD6NKf%$8Pct6vTpoWY8L;<+OGi6wQ}r4g=;W{t2f=6 zEv5WYDk0U@&tM$)=Q#0^Wxsk8={w|fM10~T8D(9?QCjwmzM&`_^YoPgdY?~6Q<-+op>Apg~V&R?&x8W--YdhQ&sbfW) z{q6RPv;ktud~DWU2+Y`qQo>-$IK{bTRE?_6iAl2g?e!7TYI*`K6yavvg-RA;!NK;> zw^hkBnj#h&l-`}4P$1DqyCfRzH{garjFA$lZ@wSYhvR7z)f?@#OjxI9ry6hL%1*AX zbKD#fW_kquVBYf!^2ND?QW}-9?y`>Ne9PmJSj=f`opD2D%FFG(1b`F-VnnX0g505? z$ilLbYdK2_Fxay9keHk|UxzX@+VuGj$OfPLrjq%t{Zg12jd1Lk&eYst3bR0eeH)aG zI`@5a$I!Kh{-%|^GLoNkq^POG*%sY{$C&E7=>MXTdmK|OY)Te+5*cNI-GFaty0K^F zKK!;NEUE)GcQj#m`c4kG-ZHW`B*wBkS#&%o(;|b2Sy;-5(eOkmXe={(XQk-0kpa(bG6x&Z2X5K?%=y-t`?#MKV zyBhdhlatF@5hsL#f$|#fa#{pGUi3K5Cdy?Au`mj4R2KIH#rOEl-tqR49Spp+OCS~_ zpAd<;;0x-y5P>EsXpph~?M9e(@5gJlACz61VMh95&Z+6%;J~|Mo9Qs})Be1Fw@3A3 z-8SL0=CosD3pscCLku}G1R8r&`8o{RSi8oVuY$c>Y4n-ttZC0d7T8> z_->R6r65008s)k<{N_Waiwy%Rs%mc+2MQA&A)$qlecyVJthL`W9Jm6>wI#}b#4!Q^LoDhGWf8!s=*?Qx{pjRKbaP11Q^*PgWx_?q;_okXVoY*xM zhfK#1V(xpt-UJj__Rh4izunnbvdqv}9@|Kr-mpRolvEiaMsqZ9a{{ca=^0N2W=!vo z!%xIKlIxFdU;H1u<@t3cOZb6^5{Ppw6jW5Z*E{_bP+m)ds^D$ayRG=)#So2MEbxe7 z^n~?iDXEYI0xX>f>DA&@8u$DT7w?lgcE?0O!^e+rwDJxsNh!5ED-W2#f>db(ETELY z3sOKs86~w^suo3uDOb2D><@bcq|je8K9#(7+mAeQ+2(ugTknW;ZKqPzosU%6UZ;}L z4NVS5o?GJ1Ht;ibN=+Bby@^9&;Z#+~%Uowwm!eCVWVPyZE^pD$-|OEXb5Vnj}-_a*+TB4?nle0k-tS;nR@?%;QRG z;dtCG3}&XNGyb61*x1MCr$SX~*M(ES71s?AE&nU%o_0=%u1*k{fam1=5Gz$IQLHooBQ5ynVmT2FeU`8U6!EbwJoLIe1?iQweqR(tw;)d~k{lREMIBFf)n|)6UQfKVw$f8YtRGJP3 zS;a~K+C;z=hk3b}MN6zjk~2*fH)NV5Gc#@xpY`l(A32J!q!h|WAS^6JD0+XkPNwU_ zLg-jLN4F0YtEHh6!p=l>UrympD)hSu`>qI_(I#dna67z+c>#Ko5Uo-kU$Srur0P=9xjv32 z;rt5@;Q7kl3{8;S;lvVqY*J#e#fG6HM(af-OVn+GIC(2A_7l)goe{V#w+L*wk!F0S z9af)a#V5=#&#wJL%}&eyyW?PJ&FAy|WslsjXb7~dwm-~}M}Qqac5Lfu-NVnGEcWlb z{&(HqJN)>i*i+%Y)_iMjJr_;_7fDPOMpF+bsf{<$^uDVie*mQ&b>dDFdg>{T*e!%R z8{i<%-ZBXVk0M^RhFJaW#86d?>w@IN6at?TC(~c?c}*a=TYr5(vk=6OtIl%x5s67; zy+mZB1!xKmFX+GQ?#-!L6V8rLPy4PAuup<5>dZ$`vOPR#(;6b|yz_UUgg-vag<>Vi zB*}IK%WzMS;jvg`Go(~4pb_66n`zW*{_N(XYyx{auN%jlqb|JM!fC!Y#*dSI3Sc1!p%N z2)okk3{Y{oCtThiA0Q+_xF!oMvS6aylB11FI>U}rd^i-2+CNU-0KP|QODfxHz|q1} zSWF}mHO2NQKc8Q|xp~{n`=wM2X_Zb_o zh4nw<0Fq$a90*TaUsi#MfRV{*ju1O+dd0JPa&;xrQU8JlC~M)9FsMw;&sV}-D{81r zJQ!1}@qD5Kx@n{Cy`-eVC5x1SMLnLVvf}q;HHaza5o0Ex4vEM_U+s2U7*SDCRZ?1- z8eX}C!S_>}%ZSnCa#eN!4mC<-gfwA(VbS4zAKK+|bM$(IVbm!;_DWe(GdyiUVAzn+ z|I314%5k~b6|u?I=oCUVN%h|8X&PWQ$*U3H9v8&SZf(ii$|J@}d>3A7-S%g#^fsh* zJYr+u;E<5lqX#a?2PO$X4GRcSX;lS@rhNQ<5>o?jP5dp~8Vh8I=vUr#d|VwXbsGEshYfLk`Jtbr=xCa@p%==J1)4QztKW#qEj9f_b5e-X!A*>iqAOY%zlW`1RIjs z!J*F4h@^s=>Bsgyx{RyiE#7R5n1d98f6nmXo*1aiGpuigXG1G$v!kAKuvRSPmimE_ zgCoy=RE3HV`A7^;lj6mE;8yu??SxYfV2l$p+r{q(;{~SBi2kJzLZ%Y>1(Nb<14*IF zfjCtk_LMmwt(ED?`(eR|Z#PDe6Tw`ouopE3g0O7@w|3H$#Lvf0OOSftuy8B5st!5g z1!2nryfFE zclU>jrj`~Z9o=NI1F{=d1OPQxB7rWRmp>eY$AQiu(q0o4RKSd|Kg-wxARzC_0}`2u zNxg75$H6de9M#e~-td5mK(wbRQDzh@e1HFN8w@O$_eT?WIxi`KiQPK*dCJx&E5`SH zkLPnl7!8xF|ASXOj0@p%bFhT(6S_^VVQ!isNZ#j_x#M9`Yvua9-s_3`Yjo>lk3W7= zJ@JtJPv|kW<$?f!@JT#%51>1ik)R1bxk` z|H6MjX$6YFq{-Y6pqRM?{_v$I258a`V}$HQ@h z3*|H5&#T)*`#$#*xIMLR_6{9on*cw+^K{M(Y-aI9`jI~`r1cE9E_t7`L(J9+8odz- z_##y%JC!F*Gp*pW200uG)9UJAEVY0533-{vrmtF_8^_P~{nx6ZsxcTxLW{fJO~6}O zaE2ZHJCg4?dheUR8;=|SiD`ejG?>XJn^*ZYw=_34y-ip<3NDhb2(0Z{7g#x>$1XcP z-44^t6jXzN4mV|8T{+=?mA2Q{5o4O*kPyAPzXt~gGUcWEZpMLNkOH_;i($iKMg7Wf+vbUajaIzhtvB+s@Y0sD20^*GQ%l}y>)9Fg7ilSSpn@nYI zSg*Ab4BIQPB;&NkT~8Yt(MayjChmeNw| z@7xw?`>ah!Obtp6NV?(|89TsR&_^jUV@>?+btO{L^h?ASwi&ipmNaZkkbFRl+w6|< zA3S27pNXP?HFAepEd-qhAB#og57NUuR>ZY{K z<8H&L-CbU$7fyd{XqK_*N-(Q_Vi#nvY?%EF7Y|$8oC$kbbg4!I`~$~ zK!_?%!^0DO2S8!D<(cQF`NieoH5RuY?N@n)HKAB@*e?t6R|m&C7%H;;jvu-B8Tq&G z!AH}o0W#zPu@*En?f5LtSGMq|c3G`r-JVGQk^v$DOxpt;Yj4 z2Axh{W$PWLB&mcM6B-5@@kXxt)7@0{&wPr3e8%+RDgBMZqqKFFgt$CGI)Gbw`36Kv z-rpktN!4o!hgZ*X^CQ!?Dc@q1LIL(P$)s+G$MD|$kq7bQey@=)VCfZ32$`d+u&#}2 z#IK$P04Mh#THoui>zCYa!Q*!rueDX1!MbFqB+45uRqOZ}gxEwa(keIP7LYMA_4&Wt zt+ZSHzz5Ngw`~3{*FW%)e#Yy&<(&14>QbsMy!-z)oa> zQF%91(9xNUPFX6Qfi_6kT@W^=xI|Gifh0zOb7lV1NpV{5<^-vs1La9u7|gDlbk zSp0RhYbWfK{mY5`CGZc6EEK{xsSd)4*O8mBF{h_Xa4)X7kxq%SeU>zcnR$%Gumf=A(ji4!>{W}2bVZ|if%_5Sezi8fSGT|LxnO{Ti6*jfqvMkGEj4>?<>J6pvg z5LXEpz#IU>OuNffepeno5h;+YYia7g-bMl%&k3_-6crQ%NKp>Vtckf>Y=RD6-V!<2=tA93!)&?{*rZMpk4`e{d;aFg^M`%rY7Tz5-Nje3W^rxp?bjR45&y7< zB68RLj4He=qSSx{e{9K1wm60H?An^Jswg;-u-S+5S<7y`^mL&9OPvXjnhHS$$k_<+ zJCe}Z^5h9XMgnrOqb<7F^8V>wNl8V>)r`H9mp72uAU-*$XV^t2nNDx$S|a{GoR-^h z9)B*3-_i2A$C{S9%cpzbIFik9blssp>~ft2s(1$CUJ-NYGlkH!!!rY~&c=8)Z-_hW z;axw$`yZUGYl!*SFvP^96jUZz6}{O7m&_7;-^keVU1MA}n@y47(S&u6GaL)<*?%P6 z-hULUtY(fDI>si;Pp&Ga2R9tHIf$q z*>da;>;CKqx%~PrwyGJeZ?35jAQ!4wGMwqe(!Hp4x#Gg}LsmJCPY}d9FV7si`W`tv z{F)a?8R9^=4E0Sr$EU$1Jv4TFOu9NgU;oF+7gJS5uLsHz0O1V{9erkPEyCc~t!qla zmtQm}=zOa=#fhi4_=j#`!3T$E5aVK{t}uC;;mgYyhtoEpl2oKZXxFEYTD9&V@MZi( zmA&_$*@FK&jlc9s3|92V{&2;|$1l{QR3HHmokb@929AzfbjK(L)n2aXUt|nI+ zOZq%Icr_Ku$5&lb{L9amR3sh56=3)_J|cpE`llC;TwXo|=4taP<`f@691N+@__Y>b6?%BnG!W+o!C>--7SBeVNr5ry8N9fFU8-mafzmiZ-&o*QE z>8aaY#+Jyx2TVMyqU!4C@KdTw&ut$z+ZF$_Wha-0gt2G<{m5+E7&mn^OrVGsH+F!D zg99d@9)Eafih$1}ffT%)J?4ItCC-*X_KO0r!~S5f8iGS1qtcaUgX5fZW<^fy-2K@9 z?u639ec^wn@l@dnr7|FD+Z~;k4&#B?s63;*^w16?wK0#8HM&O1nxwET?$0`_AT)@}m5rHpDieRqUHaeuF<0yzk(f#{eYgI&$0Qs2Bkp+Vb& zmwaTd`IE0Q*`V}AsIASeoVpf;ZE#a} zKCVE8RwpQ>EdMYbmeIg3mp)`cT^ERMc8sXC%M>>|d7E zW^>1LThTXm&{+*D3`I5D{CQNu>bs*1XYB|w>mNO zaQ1vt#eYa^>w#+aS9dJuWAJGCdR+PaT%4brKiSOO9E#Mf3@tfUL{NZAN798xyjo#E z(#`8SAxB?RnpyAtT`zXxh+}nanDa;v=xGN@PuDu;cKA-e^Ivl`j1ecq>nlSKU>20? zyQ?V@(e$r$_#U&)E(s2K_Qyt!tqCn#g=OI1sZFSe38DQm# zC#cj<4~2wZ)4i5mWhdh^v2s4 z>aDTFMao6G33;=ZiO3UrxS+&W> zUQE67nrU^*F3f)u=ld=>6|)6h=Pn|kKl3zxG6GA?5oUQC!UQ>{0%tB}vq|HP{+Q|c z<&l0w-arP3wK_$`fyyQg>&=drsCEYVK}yq$Zf^3)U1xkwF*fdhmmA#fCq-5FkGMto z`NUm}qQTYG!obA}MGT~Rk1!HH<>f@_#&KL1+_;_u4h|kDFYL{G1Z!|@VCLeIdWs{# z<*@s6dP-$^c8Z023|WPBN|0;wNE7XZmv?q;P+o48%IOFZfk7)I8vZlKE53G}!ogq3ql_$YV@%3<4b z05&T@`5(mK*4>}*cPQTxt4tc|GkTs$i~46Br_y6b2AmxZ?tTXfQp*~UjtPkWXkYwWV7BB^ ztZHn28)BZS5wx)xG#QoO$7A^>czhCaDy0NQVP9C%8*6@ z4|1koG!l=g&5>YcT5-IK7Y%<);Q8A0KCUx0iW>Ouf@P z8*a4B_EgyRO6a6YSmFH|9fM;x@fPuO>6DT1M&iG%g>{r8vYbZwTM@FP46*#!y#drE zyi||^W`9L>e_5%(x26liIg7+1D5Zt3U*o%Y^q<_RjiWc3%k@iRi5%*tmyh&8i!{KsV%6j{MqJkKVcW6hw-~G7}yuyMvq*}kIMKG_GmpjZ@ysa$x)zn zy>`G?O&gPpLk4)K8+w`i3ul1ZikoJ=S0;AfJFR_y(DD4dx2#$32o%hDSb`-vH@c;< zTzOv+)ZB#qv@Z-p;kiht`ZBA zkef%wz#6V>PxD@3uyfzciQ!{;UTxfAG6pbmfs>o!>_L;DQgcM& zZ@CiX#MoRXiD`oJUuyvEVHc2VwIXG~6ZYoT=|k^iV}RmI#?9q_)B>#7;&HGJsP*1a z!~iGs=Syji*-_I496on2{P(;VWPghAv-L5ikvba3T~?yX*@2{4(o9kxOe9NLVP#mW zNo}C?qn&~L6IZ1a3F2L%R{sRWbRuK;@`C%A!zmOJ-{aew%W|vLkEabsdT9*WLv>sF zCq6rR(e9CYdH(*)mHJT=aeJB!6X|4!sf}*a+`l;^h?w};Pr zAYX5L>1jh!Rh0~IwU)HCrN6#HL_4_}6pBFsjs{QW6kRWn2Oze&klQ20!I3OG*B~aR z)sedC=f@Go7%Nxu^61(v?&`{3edYjAx0xBHFHCSbYVLi%~Pwg3!Xoz?C@z#P^AJ?@ShBmkGk&=u(oT8GzLf;V0K$`g;BE0 zv4VKs5S$$0a^#YcXknI*hC$&_er0l~IxT1r!S*S1KhHTMF~^PE*$noPtF=R!S3@pv zjP)=s$nqE>AEF}^J!5j4E`|3&=VxD*kLbR!hv7Z9RNVoe$uU1890H0FD1kjsV2d=m<3?wTagrs9 zng-l#f=F5`;);Q1EyoOfjygiSnbZkVMxOZa3#yf#`^a@*-hqRET)X!!fIP)@)L-u? zl8cMwf3XhMeGCJMs~?zfa%IW#XDzKQncrC8YZ=4!Xtr1JAtXqZML_vpZ(@u{*KZSSf5O5E&e`N|jxgT0(%#wl@B3o~U28Bqj-(05#e=BfSca+4eM zwa5guveoB#-`-G94ziMt3@@`O0_AE)P*hY5V}n4oC}g52KvoI}OMo47n8tKM%L5s6 zx#odfYNWsbaAX<)PO9~*i|=qkOF&hX^=ZqKz}9n3tE{@>pbL^fe=3`IetvO!Wo0lN zoqFV8*zL8fM7`0H6&3?<)-O&_m>?0mgjbeT^(Wu_GOdg?JB!9!_ucZQ(dbBJtypC6 zodk-^f{%F|Qm4%^Xws)7TvGk~KwQq(#hjgOc&J&Ee`b~SEwi=Of-b1C-owKiB&A1^ zDodVX&BzvGLrya2ZL zieWrUQi-aNIt&6K;p$XOCL@|msq_)yJl`)d;22v>y9xBooPH;buGc(N!ju6%iG!0s zd87a|%G|PNF<5^If57~k=FavGBp{awHiS~(t0R&i6JJj!i#&w19XKec6uH3_ny_waP7VPtO$QW=qq>BEb}0kUGA% z_6qVyGcvIR{?dZ&8W|gGrXY?ZUs>%tP6jK*YuA5p|9j#8N`N~IX82R{3CMAa ztff&Y(t|aWEmD5jQ0dzduk0INv(0E5*IA5+*ga_eS>3UF5Y5J^M-Yt&j^0&WzfcYy(Z2Eh_oWTwp4==n^x1cUvd>sWDZK8 z#aC7uly2WeCSgOisNp*LGpctNA(15inlY) ziAxgmJ6gD?O6d$$wt!@j5^&%Y4!Y5*y(mJc9cb1QLfO&c(BSav0j1)FHgQrWc4R6G zs?6&I&G1S>QCm2>XQZ1sY{-hG!)HB(iGgv5eSL`zLD7>giQ!QBp@nC04ZNV}O83GI z4W+i`0^-PlRBU{L2A*_cgHnVFZcQShAew#SSXGtU?p*xuPXzXr?HO|^^d?u)cpcB@ zj!t-7fmUmQKKSBTxMSo>RMlE&7|F;IM0$)b`y2@V%P)*cQplpnfe;qELrd#y+f1gwmz<9m|@7+1vlWL#a z;dYbH{(Snr5v{C$0Us#@aDKwglJb@MP5Oazx^*2>Ndjo(88sEZ`9LZ#WG}3%oDNM{ z$+lLDdxG6#2kBNPO{&&^%xs-sWJMB5kB&xQvtI8R8DXHMoq!^eaD&Fi!N$bGH$7XV zZIHD!0_>Fl6fj@4k|Ifofh{>^g=LLg3E3}PCrV6Q+}&w|3t)$&ElvyM68BN$mo$d} zJSbr4jD?S14DcwtdP|C%l7lUx&|pMYO{WaStf+xd*5I>WD@<(Kx`#B{P$&OW6ulC*q7s58&SXN%z(m*|@DV5&8V(u=-(;@&pAI*`Bx%azWB7_i@&K4z|*U-1Nzk(J4S z6TFXzn_E~#98pB&Rn!Lv>%INNK0A|KSjO^4aJFcFM1Lhv9B*&ankYd-kruV=5+;a3&%9}JIC0mp%+zfxX6Rl}HiUzU)fTqXcG+T;A8TKwQAkYJc1+C1)5(~uE=IPE`CUJ0h~nF> zy{1sU6ige1ihA^51OQC!a|jI=q|s>rv~m^xB~7Daw{gW|&Fw&GC1biNO@TuoNl#(hAh2u&KR{ zpgW*S@!))+!hO5;fv4s-?@;{tYC8@ig8*L!nGs7|FvBb+CB=85`oqbCa#;F9=A19b zNj@{$cGt`N<}b_$wJO3m$(w6o#KG<_)rGxWZaCo66-`!DvI`&a-ox>DBCikJZvIWKDQ{le#3OR2H@ z1ZA0aZ~2cEN7r#J1tjmlLhnF9oExCq+J1UjT3V{t8AJa!iUsvRQUZDz zNGI>GolS%^T}SK~T^Hbc^-2AVLk7g*p3}Ks|3L}5h&8~TC+L>`cG!QJ)~U&9kByf5 z47Sy36^51I650O07a)w=XynL2MMW*ixR_oKn+gu9$(m?m(~km!!A1K$l%e$bGDhtN z(GLT37+Iu3uHL`;HHzh-~>4W_!RqBt}`SnOF6&VVaD<1|&)L zrtsgr(p7%t-FU1tqGCm5S{w4E@n*DG-!_qtk;s##WkRk0Gs=4ZbR)bl)@U5v%NQ5< zU=vt7Gg|JQ z8+=&0dv~PYCXH`NgG;omI~>>Qxt2(-QP0h9N-l5XsuYPg77cDRtKPBtdY|&z_GY(R zG5Ima%``BRT|mlg;W0c^Qy64ofq-Xe2CSaq>Ct+cYH1~@vJUH{=?}8GuXeMpeE9|Q zLN7p@L>Ug16;(xbv}oTR&vzc%eFqPI=#1Y@@lToj(vf9^xsDLMe7%{fp~Zm}+=tYM zgW=7NNX+}SB2Z|psz~-r=zYVCR_JlO61DMI?Wz63SGj^i#Q(H>r6<)$ zccLTJRaI6*^AMlWV`DgE}i z{)E^m7Gg7FoEb_m|Kg>WqJFM8@->kRYrzGs+C91-p-9FSt@@ygdR_Mu>`lI19*q9b z-R9cgQpv z?pd%)SQWIigk7JIX^1Ewzz-W5YwczXf4?2rsF+fQy-xR7Q z{#)Gj#5$2FcFNY1({BjpxE(17<<22g9M6LOdTTFrv)ztCTp9@U8yG+_RSFr21vF7uM0`S7Pz+#Y z(DIC}c}M_^fbyUnQHTJu8qIDif&nRq(GW^7SWW;hWb5nhnEUP^{JyvY?m4eWAOulu zkf^dZETotRQWM@+kEZ`L1=pRhiaK<9akE2j&=0%q9wLOUnjqt1P&~=RnLk0XT&DAZ zJ*p66(F&Tw&OxAoVO7<_1=FiyC(CLY*a0XYY$(!hPzK0>$jM0GyU1CviQp`cle|BD ze(dp&RpTM9%f9=_5B^R{k>8v&wuAWl-8$iHjC`p{7JQLBpl(!Y1l6yxEL+|wI{N8d z^V?blNPR+_vYf6cNAz%I*0_DP%zJe}Gyhk_RE^h*gU{<-4p6Uha(qszM`P$o zS5-w@ICs**#vXoF>TeGoEMkuL^FWB$2G&HT45328S(Y_}&DM0H^(fB5a(C9MnhYhr zDF}A=k<&#oju2cBt{C6RlJV(qAKU{2UVHZP+JV)>~~+PE4bon@=F0`vp1s7grvLE~_|Z1KB=@7OTnh z`X84mE!*dJ=9?Yhc)`!$IV2&7jt|bZ`R#8|pW75qo6bL=*TOaskfGpao1pr>ReUce zgwQaFg&-qIq3B{K)kf6PG)JcY3p{sl!uX!nyrUxPgl*Or{Py`~#3Z&F7(j2%)ZI|Z zQG_Uvy(D;wMYm7#T+t>ag)s6#sxiFOcDdT*?aHbH31^A-4<9L{{_mv_oQYFj$3u&~ zLXIMuFbXQH(k(~BYeq49Mei9pX?qfg&a}wXdsSIg4Nqv$jP+4Ua*S0cR-d7W@g<)D zifvP@S#N&Ov*Mo%PIIG{`+pVBmxw+BHqz8vtq0=9mS-a&MA(AD%FJ?9VT(Wq0PyfD z;7kX%wRy~{THsoL?iXjcO|@^yc9q2VBcwI!6Cs{@rm@@dA@V*WNlpo?$9vJq8?#tV zaYf_~AY_NLlgs%vvNI%3kN?gX+?k}i^@~AbT*k)1*}M6%R7`z)<>L}5;C;IwsnDlA- z7o1kWrfK8;9v@5v&NTMB&q(*zzS^XEV|XV3&AFZ?qQOewAz4Aj*Z88Ch?=l=d$gEM zgJWf7#pQGe1X3CfmCY%RQ(PgJm-sGM%d%9;z3I$Lb=D_J0 zQ7O1!39MK)s(AHezjRZ}ua^iBF2arFP&J~~Y3Q1-FRyHk|+J2j%t5J zOqnnZYG`4j1hHxg1yX0NY1uIJ1Igq6kEXK>imU6EFu^T21ed|xCAc%V6WrZ`1qtpB z!GpU7_u%eMaA(jE-2I-nZhe2}2USCz*=Oxu-A`kcGZWeZ!K(l-&cg6iqf_G7`If}g(0 z@YK|)@J{6FvDQ`MB*KI(6afz?p<)@ASpDkk6iTo?N>ssFr~^Rb0=teWS2}g(i=Ynl zXM!Td!5~G;KQt`<+&qA6lHrLuEMS#nqzo_gt}}CI8}QG(g%?*l)3zgNDIM9I1pS}l z?UTlU^NB-uUTJ%#Z#Y`L%cD)DQFo5(lu+91^Zj)>x<6|D@1Of(?>kx<{L)i%A?Phqzis@>-JW~&}-mn9(dP!76!D$$i z*v!aK-NDIvl1yN$1DGfJ5JY@n-VdL*Xpg@`++THvCv*GR2EIWKc5@D6jm{r^*0-8e znC8~!u(nF+(lKo$@acW3ob@w94owO$U}NIq1|CzO>8bLysH$+(7}anIbTjnu|DDS$ z}ByEAosj*h}f9N%RwSaXsF@?#!Z5%xM6i4$rxgA&)Ze#5@n0QRDw*yu?tLcfq0%d z(GcxF?V1t5SM)n$EvxudYBw$Rc0ox-rLOZ)yw+ijNBAWl-TB#}C4q#b*kQ`PkzMfd zPg0i04&2ufZZC#iKDfor9&3AR;?fH{TU%g_?W|VC?Rq#-aKEg2_4v~2sI9wS1RgZ# zQqVWr_u{EO*$Edm!3Qd%AiJ8X3=_D{=gGfa4^3pluczC8$a=L=SO65jq{klH z+e<;}x%~my@PJDz3=>|GlgdjP5+tUlM|6EK(JxOkvhQ+3c4B7i z1VutWrRz;oE}1CwdkB&`=Hw?b*^@qVTAHrlebM*(JceG!MDXe0?NcZ_ z^?(5V7gcF9fn-z%8!Maxg`e$@<^|s z;AugrdJ}lvwBFnS{MNVZuZNGrIpQ)OP!5=l*W~pQK=7{B4kjUDp~&>i3|U+boF$yg zTf_f!qDLOhh^<9NbQr(P&$^<@BO{9i{+?euIueL6lTGF+TIWJy%rhPqfwf#0Liszd zNz7SD{EuIB&gBvd&5FsWZ>(X;bl>Z6W@UD2!((f3o`{!?k4qFkR6$u2lT?66ewmJh zq8O_1hjoZWZ7i%=exn!|WgPq>YP=Fakz-s7D~`fc7y)YyS|^wU7yrPMT$T)=fch|& z)yCaBI!+Sb^5VJuu_RR@2W+xl@-j?72a#rJdvS3q zT5fkm2jG$RK6eE0VPRg|`Qbk~zoPy3MCX@e0E%D+!g*U}a+;`$g^3N|9|hzh{A?3(mZ_=!c@91{}{j&1;TCX`fSx>|h{&3$*2IcAno_F9%!Ii!cBg z?_zE$8#n@jcz|id!3I=S%S51T`YWQzZn6Gyv~>625W0w2m47qdiE6HS6hSJPS{5j- zZNx}5x3-2d;Yu}2yW&vi;EmK&l^v!*E_D7~!cGHU&bDcXX4nR#R2 z^@F@rBxxji&90N{p@0W5Q@*-0Y^p!}aSeb6+hdSBg#W7P05COpm-$4Fd0ow68Bg$_ zVpXh=#+d}*i3V0ql=oZxlUpx5=RRA{)_S!V+34kVwg+{?OG!jTg~i38-e>KsjvL!; zZf{>p0w?-zAM70>?>&n%-}Y&YEPC^RCXKdE6}LA>^+6*HYPH z4jdP=iQFv(mM_M=L7}MV=mp7^XX|jliWpapcb6QIZ~fa(lC>7s#?o*A?6uR%1Dq)# zCL?dJ&&R^+li$7=^=CD&G?MWTYz9B4udK?ss$-`sgvI;s75;}A)$?;>^c{{%sCB?= zo|GQZ4yTLlb=gII_xxBxI}~X-M@!?5oyKXi;wg?;Lx*~bO4hAsE~tJXTl&R&9@qtPKc{W@8$AV? zsebKv*yRLF{fu>uO&$XuM8Z3yr8`H2gXnY-6U>$;6=6r*Sd7_9_d!h(pArd< zDuiaA?_pIs^h0W+sq8P3X%<^1;$w2HX^9Z5PTHVJZ#HQYd4Zf_+$i;eXg(U4(j++R zB!VUvg~7_s)i>JUib!sIby-T<;HsdYdTU;&+4p2uaHINyr3x-}kRM z2^u>yW=Hnwl(_G(g_Lj8bBHT=e4on9eKc47J zCnO0ej&vybx#iWMfr8)Vk%cmGY}yr}^-Ph>%!s%-KmIK@M#c-jifvv7-d_*rzN5T= zDKM>ZO)%WtzHwMh5jRGCkorag(130k-5u7X$Lc-b%0Jrsm!vBL zL=EnGB1zjP)Hq|22EW48q0Yv8AAXJt?j2xBZXRH+b1}h50Jnk_Dy!L(&E@ePdk&eu z7!9r*=7f)ZTB)-j0{rp#HQBBX2u6cH=M#&C-AewnJN9+5JATC|U9m80by2s6>eem- z{1yNrVd;S$mor)1R5oy5`{nA>d+*98!-*pRkNCEGIQq$#uvEFU;e^esuyFmUpX_4U z_ulmx-G8KQI5+Rx0jluju}DctUEu1FbVf!-MAQdh--`ZzwNP_a9`6%$zjYx7t;f-6 zLda<~X>Qz_dw#w-eKf*G87xtUs)o2O2`ts~K5r0ncKuI2jREp$7k!-53FDTRg%}|W zxW_|Sh`0oe9D74ot<^-+%_(%>RO^G9m@>`#s8i&UMAk#2xKbPCliLQGnPYh9ikCaR z1tcVbTXUkx_Am(<7#NPN&--N2j0MmVqQ33+_e&HP$;Z=vsy-#h0HU6=f7T_Jc9h!M z+kwX8qWt_on^;9ab;j2N<1yClUlb-9{dsIhRojCY{Egug~Z%t5?N;zATZ4 z^diRoG3^Lnvx_XpYA)YXb)M9H#N0|7USfvunc=V30YM)}+RuDJ?$oI#1;`)N1`ly; zDBVI5@JuZk7yqR{Tw9v4>h**fiS#v3zV~WVm~ZwfWn`3GuJyYgMvz|BwnF>BhVOta4(k4=?2zEk&A;!Ozr59LkqdPpq9WO6H&&Z2m%fh z;I^+qm&{YPYzvDLi5VpfyVY@P)o~nioqj?y%OQckpP*}s`Tmd_1sRs?;aNCIvRDLs zt~A4vPCU+JNe+)j%!aW--puvGTQu5?BJVr_YokzrV9JlFlF4@l32go%(2U(Fj9U|9 zcAD*T?!6^J)OtBY^jN6;h8f&1;dbkWElpv?BJy#~xvp56NRcAf%FuvWGlkoYSTLm4 zq3b23d!V`!u%9M53C$47ON=RA#BaUf$uCt$+Qr25USere%Rd42%WSFBX))|v%9Y;9 zWbYSvtGapwf-d-x1M*a(pRS5JsG6PeNr|^3hZnD>fEBF(uuyzOxPy4Ih_u~m=~_+a zca^6DZ>Id9AOEaVEB+E%YA(1|-s7v5dt_=wO-->F`dmtFK23RC#d&l`Q!^?JYvT>l ziGykt1!vtyHNOBr-7iV!B-@a404wb4OTHU6xBtEAirYHvdsNDPjK%N}IkGcAXiASL z&cP)>YieTwO-2>gd{C zT{{Z$xu|sJD#7=cYoIa{6VG&Cwg|+;$a7cg9MO1i+I{ct?zq+arTc<9?D@%=31um6 z|7Si~?kD*nc(YWCVZ|m3)R(a&_39H)v5<)=BaeX?Vv)rTHC7C8N3aRQuqH`s1v6?r zNQw>Qq`AA?lXzS-17CC_8{t1Po+!Ppm4cOe%rd@z*1SRcPk;e4^+JVhtI^Lu`ZM6-7v$}Kxs~HlAKo=oB2Tu0aM3~+F1wW zOHrb1lvn^y2CyxPG1~NdCi2&dxQF8%RwN&dU?2c$UqLF}Vm1ZDQ4raTi6W}P z#tgb+f|T?uHYI3#YAB3g&cHeBip@p}WM64?VygS5Tr;cTnYbY=JWHndI;NYbVpxIp z+CpNGj?D6+XgIq$qn!;{bN4P*O?`gkS=bf(3T;;dP);MGXKq-w-zTN$~iO)%qj z&#V$hq~EHoE?{RoSngpHKs%GR3B{#f%<@GOXm)^HZM_Q>StNi<(tkS%x4hq!t~)>1 z;E!4&iIWwg>M{`T@9^;iMn#v!Mv02f%!kv8W#GH7fKs2d=kgkRIkjHQ=u9{Kid+#* z((Ds@F%t_AMZraQ+Q+v12yKr~5Ra?PR4FD-IC~pJ#Rv>%?0NM|7vgwD?<)V?iDpH3 z8+CT){eAWHNCm$)2cfZNA8t#BtCKGR;Ymhh=y{5M??#t&xx`Ut80$#oH+`v9UO|hf6h6 z0kTq3)PU1`8=+-=;?w)zni)S*k+gnRSdCK7J=f1&@4=amLm8a4s1Lg8GlYd)xbBHg zT=AJMs`>F_xSkI=M)Mj5p@@{g(N0bRG__GNp;Y-wYa~<*eg9kW_xEjhOT80t@ZXXZ z_Q~%ax@39Z>BQin02_X_9C`lif+!sS*CnHTXWfs%;R0ouizD5Bhg;yKKUdvvZ)DaP zBDB@B9IWG)DQem|!Lva#A)e3x1sLf&nn$7=iFh&4vl|l|o1j3WT1>NIQHuqv5dH|H zOENlD;&+h4Nh7B+=}C8K7nMHK-D);DXJDw*$&-#%lcQiYD16EbCLlms1= zNCQs!NJ?s@zFs=TB1*TSS`q{!S(c6)jvU`78)%W9L}#@`_xXn|n=a-e3pQU1U;YQW zg#OwGlO1p%GgV-OQzvZTd0{_>40uj^{iW(_y~PRM+uzKsyhCerpodqAPGb1Y_lSHi zUib!c^BUp&AnK&rYJQQ~+|`Q#6gvZ5i;*f;lGt%Q6wm&35P7l6KStT-0>10&H|t!3 zH!HAF8KR<61g7e;1{6waKb-%}W|A($td0`D)HV0Mnvd{)hw2`8-cR{bYkVmV`1$2Z zlyhb4@Ru^G3_CMgI`)~(IW&tB2?&WYA_{(5E|vU|GQ{s=gW9zkZbs}6phJ!~uAf6uC3iFK>gReG93(e_=C znlNk*2n*9yPz;)WJ+=bV%s;HCV&SF~sp0Vd6V?v8jn3{8q@AMkpbu^~El6XfZ4@trs$pE*y z?3T`Beytq;yN7$nwbaS=x9GJavLjklpJX&Kh8T{JG1{0bXB0#ntXkNJKw_S{6-6rI zWS)m+DAZIox(}*?LO|?N%09F*V!s$GmeN#u8La59k%u9LgY)v7AVgdV4m6_-9YA!| z@9<+VjQf(*njOP+W**Rcx%fC;tFV7qPMT_=__)b1+D$7Q*YeU->0RKfbo0?(XXNT zeed1pz3OfhS7P|aCwwak3{s%d`Ahx20&TOF4?rlH!4QblBPHriR9o}TGRa0bu zC3?`*d7XUV{?!w!&TTV>9ZZ4fOBOIp>W$icWQKxbvU^@}(k41Fr_(VkUk&p=FTnb0 zVTUh0#5Z;ABZ<(uV&5g3bRK1}nq`L+RvkTPy88m!5aigO7faBx!g|PvDA9NQa1ky{ z48vj?j3%!OSyEo0&R%JK^`<(2moC*JVchC6Q8q>u+tQ)R83}seBbA<>Zu+KRFi>1#ycX0c z;L%|G2Cacp07|>Na|iI92x!Fk-N(?@4l26rf`SSdu=?&R78CaAQYlSY{0{} zyV`4aXUIZ^)P<^}ezA53ovma1TB^)%?+&)G({hrS-cZQkjujVW_54E+Ev7Yr^Il>|CtnW z8h0XAfUHU^E=jm$+X!W%$P`nE+kS(g8;(zpRB60*!FGKzobTNLCd%&MB%z2)79v`6 zuUv{x(Gk$qIWgj%5zQv4|E?46$8yd&hb>|x5q=E@>&ezha7dJ3!GL*M@FqmAD(<` zicJjr!ytLdWN5Lf80OM9qx>tvd61cZBVE*3lljcj(y$XxG$oZBgZ-nBnjA=kJPH~s zj_5f&l|CF#dV!*l4wNpJ2&S_BDgreGVk#_|D%^6SxOl~aI$5fMF@@dK9MWjIcuyXY}A^AZKENSjsDa8QCagjsEIN&aS|mv^3W4_g9mVr?h@*V-5aMG6i zA_(|JndVEf`g%k~te6caRJO9@{*Ew(rrTKeuGJ0sXatl|=V$8=o5tl8%zAvVs?7<5ejxRNNc@U9Qtl^m=6o|tw z+w$sWg#(rFKXlR%p5&ok>^(CfYi<8tw5)XDl z?1wUAMk>B2gkpq^7rbNCs@9Q`;+UKS2K_|48q1-ZV*q`aFQbS;B|c=tX40FQA`^=9 z;0MN+2E%|ux$7Qz#J6<Ajo

G{%zw+rm&mP4M7YLG~!(D-mZ>^`_ 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%0Ai1Y@NZilw*N1vVO(|QV@ww>JxtA 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 BY99aq literal 0 HcmV?d00001 diff --git a/data/images/3-lyrics.png b/data/images/3-lyrics.png new file mode 100644 index 0000000000000000000000000000000000000000..8ea84222151134026ff855908287a52520dea269 GIT binary patch literal 197977 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%0D-Cy@0*3R!L*UhNG+-GpDN+K&z+v4D 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%0A6Mq5to^6Z$TT(b+suBmm( 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®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 V{RO3bnaju(r6nGV7m7ah{9kntwcG#z literal 0 HcmV?d00001 diff --git a/data/images/fifth.png b/data/images/fifth.png deleted file mode 100644 index b9098689971ee1870b1fedee405236ec290db930..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44596 zcmdqJbySuA_b+%rL{L%?kVZ;LLApc1KoL}sZc!SfTTntuL{drtQHeu$N=btt-6YSKAKsDD3rI(ym{E6b%0G5ZTp4%qq%=D@x6!@wtnga;J2`?^ug^sFq{r30qEV0| zdyIGXLEb|twVT^{Nyk#+?ZP_`q;SN0DX=_WkI4FaK7P1LeoZ+{Nbw%aoBr{Ywe^VW z?JLjVFki1j5mLlvfgpy28#Uu%RkrdZaCriku6?>n}~FY_tf(>{L!2x zm8g0X{=5oq^{243}`?Y_4B`)#L!h&(|tzWvvxd&t3Sgz);&s8v2sDD_x?#D|9h zj#p#eYEdeajcH}C?|J@2Fu*X*06FU?xz+%8InJ}M#_D#S4WH##O+n7~!Q9V-Q=tTsh?30Vy{;7Q^>`au$@OCE0$z3*Xn? zN8YcQe$X&xx|2O;%gskdTaj}ut@4iV*z_5r6XgEi;FgEkYSJww-zGVd5ZKtm b$ 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%0DU5)qkLPOGeG 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 diff --git a/data/images/first.png b/data/images/first.png deleted file mode 100644 index 877c46cee96a8bb4faf0a811a5153023993c4a0c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125988 zcmdSBgs;p_I9?7C!}C0M?7i1sYu$cSQ@Hx7?@xOn&;aq$WBatl8fdL*Ut zh?Pt5{hv|ri;u7rUPx(qe%+Yz`by)LcD<`(I3;$RY##S1NJ096{7w1W4E$CKjXtYgl37m7r{ml=RI3r{H_ik32fkIwy7L-7cO5u z*5-P{N|H}S_dCoikp;-LDaiA|j5EJ={YT)R#As&3G z`2B}`6zbLAp_nI?w9lG25^-+tKb-&$GW*S;?r!FMrXOtIL5ef;B0ys2@MZb>!KUG`msk2pWY=xn=x!568Z?<4&-xYWI}YXC&Zf z9+{J`QtNh&B`e`#{eCR>cLp+tA*&0=(Ki;DS4F4_C2X6r z4~C?q{MpqCuW;2{`Y#-@<83n&90n|(d49b$c);L@qhBBKN$X2Sm(zJCekFLTIl4-r zJLSJ6Nhr)Kn-`@kv0is0p~y9w*bNTm-cbu!yf9I4rEdIbCLxk@AhHG>8|-`~7&_H2ynau=WTczHC7Jt2@i z0XmA0G+{k3Eh*Suq`NQ0bsKSa^?%1j zF;dpicRAeHJFEfGyl$7*8F&#^55R=`M_RmH&^vNN27uWJl5z)r8LKg2K!JJ z{i|FxO)#`e--8Q{!aM&yRjlqntFEiZ%hXGP^3l0}A4~n8Y%~L@5c|l10Y~J)OMm6V z8qW|t)bdc$>SPm}ZYkMi^?&Q-k`+<5a;^AvJ9}B(wB94bqd{k0RPJkr!fwr#@|XKH z93!|-27Ct}_^RZn4Vu=o1kXIoUgl0XDAA3-A^-3ATAUJ8ADhWtR=vMx^5AM?^FS1K z;NwQ{W2IyZTAk659Z~zj_;EW9T9U-Hlx(7v`>5u{;4`EjyLu*UuvU#1YdeyXw_Z(K z+a1xjoI1Pf*`)>PeO;i(Mez>_zQx+2h9w0qUCguP?gUiLV=ot(y`|8FUZT!a>No*` ze;ggmSxf9E+_@<1j?XXYE32v`jt1oD>+amTP43{33Hwpiq+jf`Wn)b`B2lMHcp7qU!3R!GMfoo`JIFXW);&8Q+ z9Ycm~xUtS+Q(A(_n4`DkvZr&x z{(nDI5ei{%mcrO*axbP`)5y@!_pORbZ}sLx73X7vuTpz@Pjr=Zk@#zIFlnf+QZ5AK z5!^aFVrTzooje=K-LFC}TSa+!g8cVxFSv&Fp(*dH4DP(E6S@q!87H6v7U18ZpR=;C zG_47Js{tN553+CM&?ndAer#=-`RSk7^ zV`T)ltA5B<71qqi&E)pl>niat_%rIGL$$i~_`xc%jt&V9wz&Jc>JNnzi){QbCLtwF z>z|%hJ;<>M&oW1yn{BMa;VEBupG41_=xUcp9K;Fm{!_Bh%ik&Dvu~U7(#uQ8sN{>X zfg&xZBjVlXf93>L7YKb(hh5*VmLL$)nD!v_Is*wlk@b|herua$;yc--Z$>XG7Y?*6X&gINv7%4x!G zMqqkL!Ro(G46)D^a%|FukU}8)?(Y?*H{$+h3%|@lk&=>9+N(q)^r22yq!S&CAP{as z?1mYMZ;M@5Uoo5eZ7dpL&%(k2JM*a@_CDGelinsP9las-fQaViIhuUH?FD14nx#P| zDRdXs?OKq6OQMo4dMe&s)-_dpZ;PJrm{3-jrhWBTb&byCR5+X2OEXnx5B3tXNmLxC z8`G=u@@{AJec3|=i8&(omsm>RaKY#xo0Lnvbm)(TUXsq#X;hrYwGEb!_{^EHKX=^~W!3Swu;Nj1I(tX_Zx`f$iEN85^&~eZvg@yG zY((}*knF#FMSY&M&|ANPvaqnILy8j*qoU_YE{-4&x1U8&F4VDAC#%MMVbQ zo0X{RtMgb3;v7^y8?Uh!*!hCj7yCk2C-cng>=w zDS)6fpVm|r3SlilJ!s~7jj*G{lB4(K19?wmt2$^o-J64FQ>`O4+F+TTm32N=j&AlR z_T9@hTS*P;pfP5J=6*Ttv-M3Y3d5$SU0{w4fLnj(K4ozL~2U{NQ9a#-E0=*MVy} zO29tTeujV(#pRHR>vS|`)y_VI#i;tV!)rN>{J2K?*ZNzUFg2#nUp7-?vTOvGXo=fP zl=c*-uNFX}Yv$@2McunYIrUy)iK?#k*{>H^nI`TffaHkV;+Ibhr?mW z_-gD=)la8dQaJ~pvd5iKQ|j?5+gFXZL!^Z^J=nY$N<<7ro0&`cmgkpJ9WA#eYl5X8 z`<-?hAK6NsZ#w#STV?pRL39jTbsEkfwoquz7IOXet(!qSoP^PvwI+>$etqX5oIU}y zTS(TueUlFA-pe01Yi8;}X-ctF^wKFY>U|tWbMq%yWfCt@r6{Ny4RT)f!ewpA#9dJA9e@}MGqDzS)!)xR_$ie(GeUS zrrtvgNN2=(`NKn(to6a)UZPfIhJ`trIY-a!%QUe|(PgdPQ!7L%JjaAmS>+G6ekEB? zo0p_+JW;NqmKXQSl%JmNQ=0beWAL8J{Cs>qb1m+&{0oG32(-8+^se}cNyBNn_m&XC zVX6xRWD|EgO*6w6gQhf(={tn=s4bUHqpEudM_F0fhGlk6&h10Ys2%Gj@A}kC*XNUQ ztr}$~_Ly{}D#+}fxY2}dZ8?BAv~hIIt`!m0e&4s8jY545561@y_uUkfbL?Ha{*x8Zh6x=ABs?Nw_g$UyvWr|GA7RkkoaxN~tgWK_vILz$KJc@L(OT=4yQeYq0+=)9WX-73dfpDL3zH7f-jo7iW%Rm|>dg`jlW} zY(T>%U&*81=WqhAle$jzk=HrT&>o$~q%)SmyVaa?Qrm(3qSvK?N}P2h?;pMrb#Ac1 zRhq6R={lPF@kT~MS$&83J|o)&Fs6>; zPa*w8Wepn4b6NU>afcQv3a$^`D^?iCFSVH(b%S2)x2k58@Jc@NGK}-cn2qyT=!nHC z)UV>0U9TA|F{~xKeb?_ks6uX}XGfRK^jAN@ivKS0qW9h?z2qT(H*KC(d;4Yg(a~l> zs|_d{vD+X`lb(vF-FP|2JcJtKNs2L^K#bM6JnL17%7X`GiYTXJ4X%+A8k$XTr1grp z9r2I3o@1X}PJw$Sj*s70PU3pJWzT{yTPHizA)l06eV8N znV9^*<9psHcA>;&%zSUW^_kC=bf@<8-rn1`NJ<$mFRy=$p-@&4kFD=TMfM$wD*Tsf zll7f2`be+shU=@2u)YLVowu_gqE-b%)V_R>SsS;Io}p_3)|3>Fl>zXPm{ln(3;bUQ&G%}sK&<`ZA!yj zO?615y?g(7S*lo+R7wif%G#Rgc!fxseA*z9-{n z|CAttoKtnR@~mqD{jOcLgbDxf@Gz2242j;SiwV2`^d*;R%We0qNy@7bdcvhmY$@0t zOxU6Qntjym9;T5j4p+5U#)}s+>@uK=X~AxIwdp|w-~k8C0=_lis;3J2)GyJ z@oD3yD$YcUMT>Jr78CKam8X_HNjHANAq7ujaz%d1KM6?`n82Obt#w&e4Q%9K>84dp zE_pjJX7n@^xPm6qV*};>sR&OR|{JkFNB5HqEo-z9Qk0AZic0~ezu8v~ES_)pv zo^Kr@Y9A3L6E{iiA9*P$DS5j++j<4C@Z8ZO1-XM=>RQ#^5fNReX((a%2*QpGdg&Xc znar7n{?(P}?oqsgP1qDNE_OWG{9Pgbb-ATViFi#u-<#UOe^UCm2$ctwt6gf_V(9xe zt7d);S_EhcP?S4M=<`%z3FPLHY@(zK^vtY@$}`ud8w zxw*YgY(>~lfa!m9@AjX=ca+?wx4`y^AbCs8Zzs>}2(#dEM6Kc>eR);(+P-{*GUCci zHzIuL{V$vWGHvb^nEARR9BsnYafmkVgO=2dET4fetsg~1*`x@~)bHXafkfnkrJxbN zjjG{)9X%5rO`MWSwfm0d%B{X@kzD&Xsc?9uH*rp7ZIb#!{Um;Su`p!UAD%eQzM?ExS%QZ+ZC}8{^|7h`PlKrIlXeM>E{gS?=DXWypMg318Bcaw>|T8> ztrv1~a^^_aD#rt1q8A6d`UVEd-rn9N%Y(g2XV0aK{rk`Le_9mnP_wZ^FB692M9&BV zvY52AwO`^_vg;$9T1j;d&OVW!2XMYyc1aD0e~wc-Sc~VHg>83nvMYMA)2s!7l)9~J z)4f}HJneUG@4h|V+w$?D&{|&h$(Bb$Hz==7W-(%IV^$fxn4Rc8J<3+PPS5EG8j@_e zm^OsHc9Guj`lHRQt)=ol@$8zK>_ndW0ui z@acZxrN-orzkd1gSTp*oZp*XOT2Ct#202>(ARD=_@=&Fx>sNauITkq-p|SC(Q?fc= zH^XhW2P~SPLO7P(fAaWnv%p4AG3ev>E-^nbx<0>l%`%h%LPzTGXLm)WM&Y9U(;AV< z5BHxw2^nANO~oKI8#_B?;cZFr+erU!rhR)hDQ!hn(~2N>fJ7)RaWQ+>J56B><;9DE znWxJc%Om=Z762Dr?0soa_M$x#&K^Ubp@)ZO1&Q^m9HzGI!VBu^((ES?+(fZH$%%DRI;UgW8Bqn2+*xCV+W1 ze>-M)=*8Y0PGT#$;0NW}0Y#?M!$`>Qcy()wk%G`>ug0*81^=J*OSAd~3? zi0-5Nl>?tYe_r}$TV0NJ zc-`u_?iYhc^49w&tMYE|s!WtT&KcJl|GYb0{BjCdgzBrabsKwooTm8)7YDf#i~TZp zqr81;+e_N#GYbk>a}Kw|qy~CRIZtVj62muHQ>U1Dv$C=Ry|-$@I^&<^8su37dhh?T zzTV@!ZaP>U9IN%zf!#3kr`zPkJpDm1K3bXyXZOr;zwMEaAgs2gx zEQ2^I2N$U=wV8y^0)>KEHhtBs9X_mcr=sWy$r=n`LX&;V2>S`$I@NBj$m*Em1c3pc zVi2@kW^IHH4VOn9b^8vroBYIL2WkK=ra09TF88|EeX0u0%=}%J2s#4Dq{ob}5a*D= z){Uhro^!B;2!rJ$l-yx+vtjhAt3lRJF2$Oc>2?AnAFaA>?Uyz@GTmS5lKf>&9K6sQ zHHzXy?cAKXSQ4lKt>D97`+fdb<>(J1u78!4|_r=--S~xN7N{{ZDUv$v+2zOZStEM6l?k{6FdQf9V#efMK%ZRVDEJOL$ z9it6ghyZlN!=v+jR5jx#5D1AH$byiX;)Xc`zc%dZ7}-Ggn7d z%E>$-hwJG5x^3SW0RO6eSIRrZezJ9kyNYt z+UEIdYLB0MBuf+ca@l(xFYpjBLNAuxA}T;x=P_;h@O}R|AKy+B0p|{A7!RN|A)h>$ z?2M1cM_z>LP1jd9%tIi(Hq!v%<4zz-?Y&Gqb8Cf%~rp7fu>&aXE1Pt{1QH{m$#SR$e+8Bu{*EqqX>Z`SyaMdTmdlT`l( zM<&AOqCC6Y%j+5&-APc>mvZzy+S5WVOaJr|oEOLR9355Ki^Q=Ho|k(^y+%#|^f{Mb zT)c#sa4>5Mz7q=_YKx+7#{eJD5hqmKc#O=|flqi;$C}!|Pf1NZoj$H7XCB=Gcv`-3 z$>@N_adhnUrPzttvVOTGQ9F$bA;3uUul&z6Gxl|~v;Y+iiu1%-<;BXOJcA>c9ufBq zlb$4Q@HYt5lTxcbI?(-zXK-qCNI8^cb)Ahq{(p z<>=k1*_*``g`d@!KEU%Cu5=*YiDZP?+a*wz7HmT{=5?= zaS`w=!{_Z!j~qOWU$xHjFWomr0cil*seq?3qHzHKB#xC^@xE!gr3GQ2AT*`GEw}7l zb0K+hOs-gbcg@Gn7|`ZVypF{Vr)$ea^bH6<>nD%P#ZnI}WWNWCa>;CX6 zukoEXETFHGU=5Eu@JE)UMW$AjNNF>^O796JqJC0j4IWUA*mnBd zJHzN(=f1J8IApe^^L)vQVTt>Ad1ZU*TCY#1ZrS@7+Dcx(6H;}Kq^OgajD4J|oZJLc zNqxd@w?$uIuF|pl%le;q>vt-Ho-3JQ0LW6Y>J%^hR^p8Ep3(tnq-y#dD~4Nxjug&r zl=uDW`1W)Q`8}=*&<{X=P%|=$Zl4Dfx~$$bvbHu^$c2%Cfx*?yt@Q0;ml1%UASohH%xd8<*6II?PS0tpGd0b;oy#+ zOMEw>V5pB*eRf4bI<}iaCICvZ#$^AdFY()W;$!S7$vxFH;RL`LMMQ8QKY)Vz{VU+0 zVXA3eCH|MtU!cATi--tqqxLaFds5ZiQK7sLMe3bOEaca0IL2>3{^GLboda^03?<^w(0Fnh(S1-Z24g zL@+nQPZ(fDrf_M{IYp4M&*kT)&jEO52{NpK@8K{d>(KAciII^u5E)H-i`}|NSLW-B zWeHu7Yyg9ND@aQGVn;?;SeS{0We#AtsS1(;Lw)^Jh`@l!{q zLlW{V-7`>*&g&nW>9sZ6rC({(lq9*J-_KD)l++pm@Qj8|gYF&tKnd*UHXe`?44i3l zb)a%tZUy=IfIBeygL%~~r_WD&Z!cEQN3TCuL3)|#j{*WGS*GLz0NnQn3-8DhB}08p=)_?8d)zdB3W5d&qy9VSs4#^ zbz5;c-vRa>cx{m4G9y3}?XT;^KbVOO4M(Z2)^%%5Uv;$|RkE?pT909mWnB9Cf2TG_ zZpT>Y21{o~E+3v>Ds0D7IG$T}d|NY4E`g5hoiWysb6A#1IzNB@d=~>rFlg(1N{MYu zHY>RTv|aW4Y1>ZS>{VR$<9x+n$5sy(8P%m^Tr51pt~X+j4Ok)ykuKD$Wcl6X-tjo> zhiPlL`0^khyTkDpyYAtmC05XORsLz<_6MeYHa z0JmatWw8i=U=TFx3b_*Vk-Pv{vu606t-eo8wVhU`R&95*(WT7E*}S-##RJeD(({!& zA}IGW7xGuc+$}Zh=4^-T-{sNxGaQO2qEW?X`Uu^NG7vW+fPih-y}x8rZNVlBSf=wJcd0q4_R%d{|%FM;Iixn5LtGS=tU2H1i&`s))pV!=P}Z}uayRoJT$A(_aIJ4m_@y}ju9bQz}44(8l`Ze?Ri8g~0^?>=i z|9)8!!=dzN}l94sT7K{Xdo1{|)O${z)Ui{!JjcZ!ONnC8n1AidLu>vM_vv*D7r z;Q4Plf!53geA1T2I0(p9LD~kl>~(8L$NAGQS8Y=bHSr?b$k^xG7oS^b$!uDmJWFH~IiqtDyfw z!!S2GI$FH;4Ga$EzQ~R0&k?N_yG?1?aG7?$V|cBLT#QzN(tv=7@}Xpen0H*4Pol*x zC^@@x5u9_x!zrD-Px7g(r-5#v5s@O2F~MM#=VfNa8uHu7dKsXwzVar2-WodDfC%A|fJ#!Z)_Nn!l8{oo$Q)GG*EA82d$&(?tHvw`wecW#UYUvD!*WcU=Pq(`?S8TYlKbxN?xwnAASYgSr8>M~=02&FvU~wcaUD!3 z;h_A_CBgz+BBCdMf_&EXXH2_3GmD-s#Mh-?cj?qOxuFf)=VK&(#rPdO{kARft`uEl z8E7|iS)^Y@{Jzh3%LOY|D!hI-%F$`uCYKv5NxJ9U9aqCwHQgGImwQ8B&{wDXo!R)E zG}FHw(Y4z2P?kIy{{@7a&mbxiGeG5!ZTHxk>^wVM7Xqvyrrs(gvME&CK_I6m^D%(G z>K-ezARsqzx*^dfWJRz=t&cv zCJC0NgNkKUsOCbHGmqXr9vm9_T=DbcR0ehcrfbt>4ZrY{0H55t8Sr@@7AMmpV5dJ~ zx_BOGSp{v^oX4C3rG!119V`+AF5GAkW51-Swib_iJs_~tu znorxCsofaR0@5`T2M4UU*dLvBh*lH!n}Uu4{RY@pC_?WGo!*))1ZJ4-vM0vn?C;V< z>F%b$Hmg)&HV^PafP^Zfo11C-nhe@0ZnC&eZjD4+n};v-f?O$r-3y)I2Nl6PQ(|al_TS zD?nGj9fs)a4rW|^2Kg}&NX?%x%DYM`f2rT)yF^aoUov;aT9U2OJDuBU+Y3tS$Cuv` zE?w40OrkpNrcud&&`AZAFEHbB!>SNK9^;ESayH|76uQ@Cs`yiZc2O1vBzsLwOkhRQ zOQg$2ka0Uq3Ia~K8p!xq)qwF7TrVuIJ{-|M#RzLzvJn&#em*5OfNM_MOwFJ7Vxn)@ zm7fkMXDjHtPvVk>=IiZnmbhKaO#Qj6^7&xhW5oGuV}Vv}GuX%a$L?JMt?2@eMi~OF zzuJkvlo&HT@^X>dTZ;ZWW67vo12|7CdVY7O<>9LxiR*m{(esUR=02SjAf3TRu^}s7 zKv1xpQR~$=GWrEF%2-CKsoV@jYF@_2cWeo%rtyDDUDIEs8k8qWiX&ex6ey7b1`_m) zPciv&NmX3j)#3?;JPm1|e*?nErdOw9LV)^Q5=16$XR0rd!qlE^TR(XF-Xde6mlk{{ zPQW8nbJ}O>o;!d~5?7x5cB4Pj#k_x~SE=n=t|L>WdsEp#TNSE5ooV;ls5~*+=b$v2 z4woPO*C!E+8Uv}iZ~OSzJ82_;N`9K!q56$vH%AL?Z-e$BWNZ%F(?c<(Z%MmH>-_`8}pMQ+AwFlo~I6 z?T(d4vHc3#S$1o|k&< zzw`gsBIlk2QvmG?XqQfW#9a;Pe|woNLeG)MAG+Kl^a?ZUCE9^4iFI(u)G) z`9Yn?4m}-L;I-f?@%ERW&Q#eWwvY3$jz`I)F3^sHX>P;>TU1n3MMZ_V+cP%;>F%;0 z_Ng2)jipk~B(BW_;WwiLv*4rdCvEGq6B^k9mV(EJ=w`aF)?T6;B)zw(b{$Znknm8tU4r`rg#u$NY2YJGTX5gXRwS z^e6Zqvj)Qt_*z&FkPWqquT91TiJ8QXN0>B8v>>vBd^JC{{xymoq-HUJR>h~}r4eDb zX)mBZcRk-~6pmr!EedgL5|5Lid(qihHb$Z^?-?iw6mR{;v&mz%e`vJl0+v zl@~W##Pe@D&hbU)7!ISGQq(bcqI7ue+yg{+Q{WHwCQQ5rAe_SZi1~JR;U9JcT6iSX z?Zn1}wiLLC#Xo|ILvOVvO?#bbv>?r8_TWRsO$wxH2cd?M?n`?Wc3!LAg>ON`S>@#b za-0TliXa9je@pA?Qa&DRX>43Syhj+aWBso0f-xL!8hX=O@74V!K_)mAvpoACen~F; z;N9IxQ698VbmbWz0nI_dc8j!$7lLg!e zI6RadonRzj=;|VO{hvi%B6QuV^NnHQ;#!lU$FjyiBd$s%^U;`cvQbz`2dt(h0Mvw7N@#3YuHpr8*TI4Kh=MD>vgyq%4tG=owW&!*13>J%y(eb+VAVI-75fRSDWzqy`DuG@C1$iY!b* zOKeb|FApX4#cfJhBi7bD%n!?AJz^w^HYo4{gXqAr6so}LOJ}& zv5ZQh?M0L`#G}0Zk44DXg(J=s4ht`w7y{nYPxS-V`ya?KBsfrtikfR!trEyZ@WwDyF6?B=|JO#jYs>t zZIbgf4d3%%bUAsuofHmVdqf~EJjym$4T7Tr%(A%Q@O!s$)wIIm;-08pR%r^F9%Zh) z^Ze;QNVvBPj~T6a!%Nqz#AITYN{obM3i3zWbNfwNvvft+j8}q9@e}m2JEUHvU+=}k zBA36H_}uZg;^nncUWzQaWHlDPdflZc_9ux+aD^%_e6mXBZ_EXN0wX8wE&wkM#lv&v zV^eA*9AlDLbA?*T_$* z)%w%=xFl(qiLnpao>&?+(IvaLg%Gs) zZBE$yry9o?_$UEh6Ec~6U1;*&W{^0mdZ<0Ims+>hfe2Y#X4z{iEIj_hp85yx@5Nn= zYB7a$0~VcVfY1GYZrA1LySbGIvp4? zO%o|6jW;?I*i!1;B?gvkYm)gSsuXY@x^yWeYmm?cs{ zK2;l(j|W=X9Ft_)QCOh8$S5Mj!Fm+Y*^`X7f7(Z{@Ti{%-_^t8;q6;@aAoXf5UgvA z<5Wn8Kint^cyv*oRwRuqlezlyx3_NizlW#jjZcUGKf%Jj9DOfpei^hSd^C7~%WNfI zrtcedo_C_bY2E>v-x^k}6tc*cv;O3X(ie`Lva&cJIvu3IKxzhHG#PX^7&gSYli|yc zw~LB?J3;h><`4g#x=>d$=j)(Rx1&!S4sl3&t@_A-Z;aGur_a*X*0rmPb%&&Kj{Qhe z*HFqvRzyW*iccUpk_NB_Iro_OlTFw8HusTEQG zyyIp|Y_dWper_ic71b+<2!yYBiq4)_jzvdReGmRbX*w)dFk1aaEI<;=aL@)grminf z`&?Zs<`46SUZqRgDBQ30*lb(hRoB$)UQmc1t1GxMflycL*CO)9%9cuZ{jC6$CQR$} z5@;w*Ap}CR!4HAwSJylRg$47t9zTihzfTg8$RinXaM@XtW z(U49YnTB+EUgo?M*Sr6OgiVTDIZ*o{X@ZfhZTPMSQw86Ob@-PQDo(R!)-*>o_iqKM zKOHX%6ok+9B-cnP%5} z*t)ZFDigLO?+y2t+Nb_1=D692bybX|$*A&XK2!yDd7J}i|Cv*hRz(uo<}$m$DJd;2 zw(iV^S_q)$0edkIyh$y5D$}0xM0OKP!4FkGRE(&66^z9U)2y9XRb-Qoqx#QHBcI(? zWqZc|h8l_)>b&6jcq+|ZLE979h&FSmX3tFexU9|TZN|Qx{?%`Q`T@SiltNa|o-+T9Nf?eBjg26h3cyN%|6$#G6LMj9X~!By%a1KHI9BS5 z2YT_@!B^-9_{l?B!~LWE@3#&Q&&AFF_epaKhtCGSf>P~uZqE%j z<78^s^$*kjLvcGGJD7mGy>0b0*Jd_rV2zSeL$=+Sgl3{~$4f2Xlf;WhqrHH=YA-ef z`gTbZH!WF1J#e1#gHW)xwQbYXinP!bOe6}8J@O_I!#B6vb!)ow3^4ilk?H8ojSZTP zrN8wc>yLs!hk-iV&ztQ{rD;x5!Nl-D8zBl?BK;B8LSuUq9NS&0MH15W$UN38xVA;# zFKy)bP}xDA@KtoBzUc8mF?|Gf#W?c?t$x65N!4HmjulP_M0Sp?30J; z0Ai484NJY5Au4Q^IW5Sut#;y7iBRjfMZ>3(TTmWRnNe)fdcIx$wpCGBq_*EJ?bj~{ z5(ZJ%1~U<{V*{nW&&-;b#pwRRX$9D)*lP!9sz~rP5DTzQ=Exg9w9nu8^AvyW^%#&-2qhjlzmT(NwP)jyS-SOysAq85t{|grQkcRO6`Z;0nj_kE zUND)@9iHuYHVq0Pf`0ck%1&xmqK*CQ(DUmfMP?HS`$%emXq!RUE+A=lfaJvOJof^_ zk!{tVJJerpI^H#D#()P-1A+Y>rw86mGRi?a#>IoI6h)gO=3~9 zEwZSU-WpGdf#P=Nx;U!-LC>d zZQMYLlxSF(elJaT)B65{+rgl#xcO*^_UFz!=dV|lg=rw+{=8~UIUfZQNi)c|fO~ue zj8}d?i3BEpf&*5-?KcmmYT;n;)iyI9=3J?IURQVbDd31&fZ6j&Om8x87${5_4-N3$ zfUCGX>5BqHE>LB{%%X)t0m(D)`*&RY;lZg-PpUu+z`>fp$OyWA$GSr@D7tvcQBPJq z2~dxC^gdjbm6ag>V-^OZtK0-vJe^z?ZwF{H4=`~Qgk^7C}#>Sn%TBbCHq3CO33dUswiH;(WH6TMk&uiZ84Hxqq0fIry#Q4a{yp$G!;OS4rXf z2u|aiPr44OjOkT=$jW;13xq1a<8+Vl^_dRfPR-h*RXpo1fK@J;>&;C^)GjVi3Nhp- zNJISt1C3yh1{SY>PE6bbZld3y&rISr6FghV7Fzut?}@p0`m=Eixf~@h4Qh!2us{nL zB39@@)|KUUrXejf)q=>Vlh7asNbuSR-aEZ9&(30o6#C>wNy=eAyIl8#(TWBh_45-` zKZ1^C$I%8FAsoIVapasqD7fTZ(;kXiROiN4F$n=jvE@Hi&sVw zL6j9vcBCpg>OY!&AKL?r{G|CzKk*}+2yez8Mg0B%Dmv-;rhe+NapoVDvbnoZG z`MPmbJj_P~s8I>d*FUh{V&rC!}^9B^czNfA1u)= z55>qxd;6f|05VY&V><%mKqhDgbd0At_XZIGbe2VWe*>H6qxo5nvWLYSnejh zeAcQL&BQXQU2XN|MBK`~+9bktO7r%NqVf&V*Ntz*Pk*EtP6#+}+=@TB@jqSw@|Qer z?}%g>7$RvF{|vBtd7M&7!-C9Gty84FiCmEWEK{~)mGsC}P*5N(3fR$22dcTd0N=NK zDo|5@54MD5F^S234~N59glV;!X44e!ox6+Me-I|J#z9NL1S%evw2xRK0D}f2tykA4tE{N_vww<_%YZ{s z6ztYXpyB8m!Z4*2*I{$KvgfN%x$*u|7GBgF3gAsONny-QbEkUvO!a%Mh|hTz@My@v z)>l@(0mtd=I*rrM8-=>%Fti!qo`7qd*OCw%+Swd_`-K(bsREfg+%?Dm<>~wjE%jY4 zyprZlOv@=>>eW2|S+{VENGLcg2%0BgX5`ZiF~LB2Fy>`JJk zlUPbJ69m#ofKyf1+}s>nj(iU-(Stvs)DE9!&+%?hA|=8mZ?>~LOoC(jO4Q+jQQ@oB zql)+QDo00{_$=5Oe_AJAoAJ^blC?7AoYczrpln%Hyn|jR2EwU=9qTtuJYCtk&4=>z zmU@H&^YMls61oPO&2saRgrsXf&sn~5Bt9?@TQ(wJD$bD6iX9sqhhdHK!)#2GwO4kwvWr*H}x>o4eV9M^zsGJ z(|{8G3B;;dLoD4FfJN-9rrPR`r@H}a!Pp(1hQ#0dC|{cRG=cr`Vg+9WZNphBZV$_!t`!zrdF`rAL= zG`FRvnv>7(t|+H#^(j0{lXQ+H$02BtFsKlU4uaWuisGig-c0ZV*=7PUz(>@~#YKp% zGTelQ9g=*Vtu+aA4Bk9&A(6+RcS25#^%e8jiqAaQyXTfAu7w%^=y3UA**`TEWj_IY zPnGC-z&QINf>)8hY;x1uz^T*MrKYlzHZ<*-;J_J3S|LDcURz)1MQr6)gQImA@e-uG z&jXL}?yTY_KZV)6^kc4()jv42E$%oDk6L|g0?i8#FS<1lAuU*;362`*LkYyQlhhj2CSSjdaJIsKWMnNuE3z7itM%wPIVPrhW=i-;~ zoRaA6PHbW&jkEs1BpKpGP}B?LOVezY$65@x;UBYbrS4=h;oBEYQM_YL#91V5rSWUw zBNp@F36R7~OY=isN~P$JJFE5crAdBEO-v+1B8690tY?8EYHr=*ni)f^#fD?d78uFUSx(l@-hL7IMtZ$6aWQ?W zB{+n;F;iVu z1BKMp8-wpW6a-yvUSXj*pp=CAp5c<)=yu<)dfv-EWExR z;PZo z#3HVY;w9VHlp&+zVb_IWeK~mKF-$Xa$OPWqD;~K8HKFq>=A|d;dupi@ZSH_O>46`0C2@+;`Q| znA$bHPiWg~241x`Qj~Q!H>1AKm!rY|!iI`!LT%yyu=dtLS$5IaFd!{b5;xrl2m(r{ zgn*=kNJ@8ubT`r^9U>*tjkI(~E8Qs|-Tj^mpWpYre|$6V%r~zy&O8G?a9`&-XP>>- zUTf_!vLlN^-<3MuqfYW-PKLLrU6*}Fns1!)6{|#txm=>|cMXLB#7PW&S^|WkNPzhZ zS7tTC1y}_`fK3)9oe9{lU64>2%7-A*-}Lmf%k@Dw=G9nU#XwQsdD6rh-n-aMo|0 zNU>;{I9aC{S?8tia8${%K`Kl#%qfclzxR%UpAeQi_N(^wF_jUJcGG;4&MNAQsycZa zc6>uhzt7%`rN?F)somo00{1)D=)%=HvQh>IABr#`w?SAGgMbhAM%oVWhQ=l*U8)+6 zKUM)R1AWCfAVQCN%h>~@q(I-p`S=e4It_84^Vr$cvHO%)X&cu~&1S95hSkiTgZCA2 z9M4|^g69=nA(nS-q;HrVu^RHknD9y>zZ8v~jp6GnGT>vUFqc@ETG%XSUmCkLjCs^C zMvySl;jngMVd$B%(RUF0J8>Mi#Jl{YL#^Q8=FW=G%dG|kT|}`U6`(l}D5v^v`SSJ0 z;O%-^cejt?)Z)}J`mILj+eP^OH+xCJPvDcGiyu?M!QsU_ZAW}P80MvE9Cr6}v~lF# z$j%ZLy%xCqyR%_dveAG#4Szc-S>5=yY0`0I29z4^-*H~K$>MEP>BsCM_)O~~^CN-V zbpcsFj@)FHkKyE_F+>r9TxR+ny<)0;ha}2Y(l*xP{0uiHEWu-J zK<`)rN`ob!`T{3-neB$;@8|0EX^YaegKmlqKw4`5oH%&H6Ae9;s7D3fHxZCxTr`5} zM6!WjU%01dn$oU{9#yPu_;Wn9qLSYRUz+RscVL%sG$MII8~55nnBtGPKKp1gUW`=y z{QP@q10&OwtWWeCR~<5aA>v;QJ#3p8nkle@gtq5(`ombCt+hQA9{5@xlM^d={+*+# zX^vJ|FlWrHVv6*;7UqPVUA3e_-xK19vxpufwN$K0W&+_<2}%89Cuf`!{eZ66-n6ui4}{c9%Dv*Ja4Sf;y2Z zE0ZxwwsCoGMTWi|3q;LWH$+?vT&eU^#SGg-wD68JHp-< zxX{z^T+%+W#}4em4uF?_I+)=~Kt{IH*m5e!oDe&TOFe?h@amr7Nq50(H$SAr#wtlm;{sxrA0YGs7R#SM ze<+E=-Y6={Q^)k6`1_!-B+DWfA0ml0ehsErx23^Mw#51aH=$ftGDCQNVTw0pNg&%? zpF55sz|0j|geF~TBO%G^%2 zmN}n3eX3qzh!$OHeFB(35bLV~V0G4YOF>OF)s=vA21sI2`+zHZ2ri9KaK2Y~pwVj!8VJ@BX80Ooz|LQm=~(Ecr0QIp@VKv{vBJnZ>V zS|yS9EDxv(iMXwq^F7R&3?wFS!d?-*aN`(<0ntN<1Wh=MHw|QffFFL;j}SmmtX-5< z$Lzx%)YpeDpUEC^Sb=DgArvvnV^FvxplS(dQW9>i|^)0AFLC?Lc=?uYVih?qv&J+;CMEMwAunorH*J0QA4q_Kso`Loc8X=QhaJq9@Gkfh^h zI)5Vff`>!q*>Au>uWh-pg0d&bDFI*+KoC6VRsB{;sSOemLka!tcZUnWf)nLSN2ZMH zwcX53gjk0aQ4Ks5i%rk(CAh@f!^dX-#+j@~@H~ zTsYt2uR&;GF@>e^Va{W;cIL+lX;KObSdhxI&d%UKE0OJ(kulDNwXo(|+r$>LH zJt37GJC%@_h%g$=2Y4TK zfDa9n+ZX_KpWfjGG+Bg2!j^L+IAOq+bKR+)2>s1__Uk<@E|hqJ6AKCklw;Nysr^ZV zDEK#kfQ|9KjV%WRkp5>4;W0Fl5QPm$UQef0@7%rin$FI_Iq~&u#5yCqG??30; zx6rqRsyhc7Abpy#fJ>L6bvYi91YOD8+S)`&zyZ$m?g7!x4&Qx9UEYt;wTdEl%1y>kE@#-%G>kYr6(nLP%l ziygoK9~@70BYq669a?-&j^5f@f(&kcf&dRVX=Ud_LkD-a3v}Ytuy=%wdLW zWo6}((G5t>Q_V(CeVv?`8C`q;{pzKoBj;GYg30f1ZyP)oW@h@K#)Yu=twdeTyP|4j+xR z|E%Hfb4m(4Az;M=m*#QU3!xm>Ae2F+?lOq&?T&LzHE+RA>>JJ!bG~X+D!_xZz|gLP z+RnfR0Vu(DPc@=hn-<2#D!Xf%0izkgcE+mK4x&B+O1xpzkg38MbcKWbiS@NVDKkB7 zkFjFc@bs^a^$3zAo&%REKXK;JZ5|Fz%X~9;8v1=SPl`7{%2VO#E;v&=QRy_$z@u>l z&eh1TNhwJa5>4UhHo&b&=GYW}?|s7=TR;o85TN#@m6VVZuzF?auv~MJ?Pv#N<$nJj z(bZ*KWxu((nN?l=(G-I|jg43)XgtA+`SysS;46dP)-T5Rgm|`Z#vJ%YVrE}$vI=P; zI75NjA%qRX6-Wco+M~r?>7+ryOH}4Hdn=u*q;n)4d2@nStS z&9)5 zO;nnVNmM!g+5L-{>v|QzT}Ev06pDgHw&OpHcwV z=Z1We?q0$>TWvx~erCW`V-*`w9=+i;x5>;reme% zivgR_`T0TMgyL826tw|tES_Gk2;b5`+V!K2ArsK+oOPP9>h$_s&;)K<`vK00{fi-Q zua-TtgXK=BXa)xb@Cdt7I4w>aih-;FO4Z0c_JPWkfAi0u#ngps`tMqiYRp|gw->bG zYWSQ8Qc;6T(Am8hsGmY0g$OX8!SP{K&RgWc1T~~#Z!BGB4Rs7E;2A>zD8l5*i|H}J z`wn?X`}U$&p%6$T&ziPsTlPzwE9dTDb9;?#PD^XYO%0xz5BKoF!Pl{)9pBv=(g>?g z0LR)hQ&rf1Jd_P%Um#ePz8&hD33>8?A8$Ebg_g@9Z8ohj(`yLQZy$ClI=bAPu}zN? z$)Tr%B!@R1ZW;pQ`3()JQp}+g#v{{o1Tw2*mqlNSssaov5(_fm@BN6$U~)l7X)HTcnJQC7wYMLb54}$d!FyT=lmmcDa0bzI-vU<(dwXE18*_Gwn8P z=B1jNnJoc*gDBB) z^DUp}Z`D1t@kZ%FaP%e%R0QFGn*-011D`NJ^^)bvY_S8GVPN zc5E*#ON5;GV>J6IQjPDX#UHy@)F=}NaL(aJ)QW7LCH1jtq#u3keq0wBoY}wR`b^}{ zV?-)zTEC4~y~g(O9goj_6|fCQG|H_s9{{zU@Y>H83LAfuO%w|S`RbKBsObP=J@$BK zvF>1nf#qYl>mL+L8*_vHar*lDQ8gpBEb4@ixYzVy*~U|rTsrj&%4$V99b^XYfvKDJ zDgHO@dn?uugZnxKLyWYzRYMl$r)pYU-WAQj_ygvziazl>!1sqEsi?uxL+u9Z1;4S2 zlabK^juF!|NaM+YN)bg36nL1i^wgrs;mWMuVcp&IRv%tnQuc;|mYY>!Vy5V&DH`k(*v_`T=HWGc4>xE^(Y9Cias6+Nk%zyL!X zAJ09nO5!9UHrXQ}u-x-?iF6iOL^)ODR^f!6*rEU13tn4k^{N%!tKDIJc6y!J_9HE= z9bMUwYz}F4=8Kna)>6CeNQ-<=Yvktv+x$@~m#)8$i-5EMju<0qTeK9dC@pc;w{Lz2 zkGpW9++RvP+Zdaf`bZe2SB{t!<;1~|TFUYzi-Y*7YLGyz!}$Ge+3`e&nZV%cbmyTD z^Mj479RXo0=c5744_8T4V6(qu{7q=MCOL*qqr*h;F)O~!aSq;BPN?T$8B?alR~1z0 zEIdyO4Rz7Og%j=E(&ZeMlHgAic9n>}Q8V0^#^If?OC@}kDXrMItSxQdjQR^mbh-fm zs-&zOF`lrM^%g4qVDW+M1`^7eFG5)~HC%S8YXNvfgMpycO^5NIsN8hzZyh&OV}P!g zNE}G7&OJB%0^>W=B~#;-9yGtu3n?eCV0<>NmGm$#z6~MNcSB4lq7)m(7pY7-m7T9NtoRyfhTSLs#^TiCwZ8)LbJ~ifVv2U>FIiaJmO8O%_BG|YQT||Oz2soty zK|vBA%$nI)00Q0PZpZQ^_N(B3G$Se@Ra!L?+Q>m+^T+EOSpW`yi(Z`OG5j`ZJNFWy zbQzVTGls_iW3pMXzFDPjnSrdHr*Hi3{FcU%Us-yI0mT4+{L&QvRROl}cHC>@o@0)q zkpy}?^r0}lh)z2JTsn(4(qg9j{ytjIf=@h$k?g_&2I^mQ zqpPE+#)i)Kp(o@S8QrZBG#>16{2io-tjC$`l70x6?MKEj0JPoT3V#D}BtfEt`T#OI%7k!KoO-qe7{d^QmP*bI~7wtU}HbGy`7Gvqe6#| zq{4VakKyBC=G|@gQ6f9Q6Fzmkh9@)#srW<7k@G_0?Mxu&n-SGXsSG&(Y{;*k{z@WX}2eG-VCu5$>yQ z{6d;9H^~k%bdvJ(s1V;oKfK~w-VIqp-#8)jn;)VGjE!9u#6MOz`+N87{ul=ExZE$4 zN{1-6@;L?y>@!(A`dOuec|M}$eHkQ5DgXe>AG_$D9=NZg>HnSGC7K`8lv@-(Jw_3@ z(1!o}L5;L({L-{_|CyHmjhH{9`u7t+_cImI;=lj4!-&=W$5BV6iWI^9&u5vcgI&t+ zAJ-n>Kgh4k{{5l=>~2c5e~}HKlrY*K|G7|$lKRuC{abm_5QFId^AGP4oF+SO>C6tyiYZI6JYA5Wp=} z%)9D7iWJ85KU{#5O5SVBNH(cxhNtj{@FY@vIsZivF%UtDu*;0bro=FRS?c^W2>;=z zRrKhfol=fmBM3n%*q>zs-h#23WMWG!|1I)+se6%P}&x&PuAfh-FNf-_wS+ji&Z5if4zX z^27jJ)ZX*QUD;J)Z=DHE(%doe@!wW)a4yGEM7W#&82Wmr`?O?Rzg;(R8?Sb!1t$1a2 zw~lZW%G$NVQdt+5OzpcqlP0b_Q84Z+$RD1M>wwA3{V9)+PdFvB=`nVws^S=%oDCgM zaTv^$d%N}~!+ZU8#hf<3#PDTAj#-06=3lQaEfn{Kf9n(?(6lGkF`|pFhIi9W_G)34 zGj4$dCT5D!E)i)st!@%6Ycf2YRbh|1W`y7I#cp|or(7ycocYHvReMO+GVK^qipES5 z-wwy1(3uwX2!jahv&wC^o->V}>W=s4|IQxI2M`&?@ET;^{EGCqK?o0wJ+vQ8=Si}}TQ0dW%)OsdKOWb*&RUa!D{*~xQ$aIQFy=E_~_K6l$a^QQx+rOGF0VQ6(gG~ zW&C0lfnwX7ufAcj#*<%NIFVIt*)1Ro-oj2Rm<<($ndrYE7BB&@E-RMJjXgewJ*KqM z(?d(a@O=*FU$Zhsx6DVsGdBq~<+!^6i32Tp7<(VlD+h~*n!=Z;po(~tu=@dbAt0wh zU1^FVcWsTIpp0JFjbJw(nNj4w@elqoqm)r*4HA;*sD5zWc5gIB#>eG7SDf_Ad6Kmf zY6hKDIY_6K zEeBO3Es;8jcu+G_n1b~7>`7c;T zk^)4Dwo9X^Tm`Fe{g<+W(H3K-{!hD=uLUHpzBGob2}DvLUT_YEE)5SpEnX{VR^&Bc z0aT-xUIDu~y>UENTPj`Qq^})~@HyMRfm+UylXF#x@x7NBQ9+3{?t8@4qml7g`CL1} zL@n6oDtb1mEY60a%7ndvnDp9HKu?4?fB-kHp4npshz=x@1pQ9TZO4@Z9?*p8balUi zAe$o4L`b{=4K0evGChcRH{x^ikbrp+G!NDwwwKQh)Kmlxk`NPyXMb>S6)@%2Au|%_ zU+^zn3{utp8q>Dj|(d8Gw_Ag%-hY( zea}qcyNe+YfZzxJ%DBIcc5M6|-$^r)7GD`xGA@_%6sVx%6Xz+U_cbc$v`(hPgv0m(hyV@Aj6>R$dhm6ef}yN7 zOK*m?-v@O3pw$X>&^%JX0{(T;(v4~uxtv`o+NJJ>j~!eS)qQ=Fj5$2iff9i5(S`@^1{?A5htd9x^1mQcM(`wcXCd$C8{&o|1kgOIzc zb7EgJNk8tOR9F2)3V>hkbc_N-zR0HMEiwZT1NUSbKzpZN|&;dqP&?a(GCks z0D2V)7wYS^`Xh^yR|1xGG+;={F-5o!3n~KS!Et!l&q{bUXWRaWHm*J{va)UfpUf4|E&kHnOx}~vBy@8;2HKv_>imyi0$jxGfOAMCU|j$_ zJJc+(1w0H~9Y9-ofi@ent{C{R+h-2lb2UUsT>(KriZu5~L>2opoG|KSl^spF6kaYK za1mY4iOXaAFv(``8$}qgYv+}ejYp5ss^-?Eh zB6t$OZbcTp*;H`mJ#D_)U4b0*09{Z3oCgS71pZ07t=E;1p$8;shs+oad$6sWFO0#K zdj!eML%UgkY0K4K3xy8=_K*m*S|QpMAR=m5K+1SXA@#TNt{HIX*Q5o8AfgW(;3CFB z_~^pTt}`6;E?OgTYDLjkZ{MFmhNlUd)>NOQ%K>dI!*xA**%?yWLjw27M%N>e>gtyN zSwMBLfNJ5dEMA$m9tqet51j_>s96vReSj6SumHdatitgp{3%6aL&{vvfQ#=I1sUWu z9%V>mQEXqngyOTZ8f?8*mNI#PNdM9-&>k-rf6b8FXsW{TVS#0kB0k^em3|J z0MI2YK6&`Q#tnWw%HU7EuWOX3*~ zwWBU3KH@DRzAE6r-<%@LC8>)sr4^Z|;~BVcyQ}CH*QA0;)aD&3_ik_JeF-fCmRKVPoCr_CDf<_Mi97gg0Gc|0AAVV5)(#2u`3L zup@oYT=?}XgV*k#KMWaHz%Ul-%2f|}fiWGQAoB$P3@NIse^d$ujx{&+!M8`_ko$AI zQfFTbBnbmeXx=C3A8;YZFAA^oC7+m+^?9bL;T7rmJc{)2mo1w5bXDk`TpY#t`d+)91%)aL5 zXQy9Akf>i@XY%d_9E6iNlWNv@brb?kM3-FZ!42~ycF~UjD#dQP^xoK?7YqjFSw9rf zQC@X~`3So8>)t_Dut%A90)U3W4V3!85{d?J(lL4Rva=uf;6GK}2Z~tM2hB5Mv)`^~ ze|UlcHwH^>fuMD>pT6f245W&?HL`aZz+opQFOMEva}XD(d5`eH7tt~&VCw<8+AxA= zS}v^p{$QYUg04z52!6%b?o;*vZHdALu zqX&C#)Q1N;pqpD;d|xf_5$bNUB|wMa33*iIhfSsTUKeZ4$G<$#Exg@R+pEE?4(%Y@ zwNLLrE2R|AAL2GYMuZ0`%Uipvm!%EDm^H=iC-*zw&Jyx%fmV22W4CSv6H<$1&(W1* z;TAoL^)NROVheF$2OpktBfFYDPI~D(IX&vI2F{6qo16Q-leC!1>O)Um&KOg~Y%+6m z350}_Nco^gWYX?tXm3AdyWBOM*$NP{;^tQ8ej4Tm+=JN1Pe`FC#qrywJEFt3x(gYe z9%F4SXzpl*Nd0yi*9n_0L`09QvW^i?Rp02dXg#R+_r z>lY>%e=0ZJoX)s{zP8JvFN&$9CE{V{Yk{Gs1pJ$KvS8IfGj0W(ku?+HE23UQ`8*#TNL(J_lh6oFX+~r3Ynz zAjgASjFow&cYA%2=Cb?|TsDvq*a5IzN*Wv-%$_}pY5~NDhB}X7$c7zo$Rq8eI+~@- zYDMr6z3gb|mtPGtfIBbSA~GzW>`RH{^C>Yif%1)@BD#%@;Yj+J9*V^NwPAG9;vVBs zM6bwUtdM$gz;9JieaqhH#p#xmRc-P{U4=n}@ZuTyK3%v{!X@Grn9q{S7*GYc2 zr^6E1hZDixf9HMj4zgZ?F2x6fS0G<-*3i&^6tNwvy>ZTF&KHMklg%ol>4c5XuIaXc z4lyS`Kflh~yQHB7Gq7No4fdkof5D-CSjATnH1Cjs$4t@YP?;hdncHw)+ zO~AwnhT7NwLwP7foZ)%$w5`Jf^)7XL^q%jKN`R# z&iKkyw9z!+Th`kTXCLCEa{==cfZA^S4Ts!c$%_1jVL=nW4%Yx9c||^{Re4BYVEttK zkC}~#g`B6@15lXtQHf2>PljwuB-@X^uBxd5#|{LC7p|j*)2XR0j-4_dRYoKkD~rd1 zqm&r7Rbw{3)-!va3&LFZzu&rK1h4Qg3;E0~-?T$dh zEutV>9gwFTfPJ@f3e9a;J`_k#PyaPOZV!yy#(w|qgkUW=g8HvwP0??z82s ziRz>2(fjdw=Q+vTHuEBx{3e5GA`i#uWs_P#0_OsJ9M9aeo+lfEmT>0|aOobIn;S@M zKF;;GK9bU?|6pcU{O;g@(k$A)LzKOX2zyISh6DGCH`Z)9j!t1rk6p0In%V1Fw|acfe)m`j!UQsDgJb)6 z)Xbs}T+)WTPAdgKw>vXRg4>$Do3odS;*`J(4Po8zBym znfS!`ipzmo7jX1OG+wyk?X_=UwvX8Gz-jGJ9 zV%~Zs)ZLqfOzLb;lnVcGm?+kChPhWjM5yfMW@ta|on8U5rc%K#A5UpU{c_k!ca#a> zT7Y`skIytIGuVU1fYSxhK$Wys4MZV&o0Se-clz1W^io7K4Bx#mpgBvx63WT_9tehl z91hOx>4q{ydOoS*q7jR+DF3e)OlA?W&dwQJp80jI;yLqJ*X?FAmh z9bzawrk7p3*vMR1VQ;yb+jCN{JqCH!5_D&P4EG5^82-c79h+4D+&7Qx0b~VnZvHV^ z)2g$3m|BUevU@Ksq+=qTV9M{h!z+gjE!tf)h*M3a^VC|b1v6H@R7)g#Ea4VweG7gh z$rub+25i8)pO1g~W2gQHasK@(N&4ijFmYRIam?e1z*1|f}(h%^zO3sBJ=KoVs!IZq?QqJwUCA!Ex3?)b$8zRwlP0( z_iX+Szp%JCJ#)Yq3vkvmpoVL*ig6+d9N;JwW#(4p#Is@auG@Q@F9maO*Xpu?8htuN zGo&7;A{m1LNdpHaWAq!lE0Uypm`Y5MKpGbf_!3KS5a+t7aXMyiy^$V!v*0rtYPZr= z?&<#E62J#~y!x!lh8&v@goaEdpIN)l@U=xugXVo!sIp3{N6uG}e2CXC8e`oe(k55R9`MaCNA4jud@=@}!VFghYjW9X%>^#?A2VpwH;I_x| z+JEq654rB$qsC_9wS;G#vD?uOl0#{70Tf4(tU>0^&V%Uh{P1oLO zs>mHs&&Lk&8XP-gkUKS~$RmQeJj*E-B}7#(cV23NlpJDX!GYW+0a%ugK@bDb8gxaH z^>-5L$bv8i;5ME$3yccMn{$4{vUD30c7q6 z5qyEl9?IQqZ1xm)cS>@ISG$K|E*-CJ2h_(Jrgpu10thVdt!YK+dq$?ldX>X6^0I3mKiM4}E_+0x(WdqCs0KNf zY>vmb?JYUzI8=3g^T5t87SS6S*ZkEBrw!&N19v-H6TKoh=n|OK)(Buu@ltJ z!e5W-ZdujA^gMv1!F|rkS~9>d1M#WM{P(xymxR~|A}#-fASanEs*`yOTsNmXjZF=% zHh=XNd_BBd4Gni-pA-T)bYEr_b3_p-rcdxp1Y<+A% zb|i}{@Xw@$BzZt_2X;w1uozh}b(Z{#0-9)42_9hnLEwcYK^R>tuBq5(40x(6v=EnP zO>=WeMGCV=f2{W?V;DM@ho@4PJKw#}Yc7l^CS&>K>|EAV8y89GFD3oLB&RUJuaSJb>k+;MeWH zmcXLhW7i>b#>g8Sy25v*&<%q!YvKdQ@;ged(opvD<;|l*V2HetoA{n@dJgAG#JrNi z;P0TOv|dlCgDUDeg79Zr0=iFwhwFXsc&{2A0Aq~$cdBRuj%Bpb$~em}P6b+&__uGf zs@l~2L%V?=aL#tRb)IZWcr}$33t1Hh*UGd94z8$}E&^%yj;29z3k_k>|F<#&RK#s| zr;W6_U~UC)?bWo4-Sge@_VR|@BYi#gkAPew7RVevpU?f!GBJsfg6wZx6I-`H+@Xq* zB2~%!hyOeYMzrYWF@pb;*>0@j#ZUe*Rz7dPks)=$2F}9F$|5_zFiwiY&mIp@s|_o8 zE4rf5G;OsL0X>|9n2tPZY-YS`lHH(}HqP?O_8~n6<1Y(EpN(~y3$fe!OVoTZw~TIx zl74-01d-d}rYsY{ePxolL2PgiKA-*YgwU@eEY)X;(5xgdRsgE$;c!19LM&$Bb1?pX zNKnI*;Qq?@mjn$ez3J0WbyfT|)ksDxeXBZ(tZhMO6HAN(f7OAKkfl>2Y;OaE*481T z&7G|;+0_yAyVkfPJS!4WuZRNCFxrDKvm0~pijRcRyEH^)%W+qAiGa2p6cC*+t(?KH zh4`D0BeXhzFf%WI<->s*gXhDaH;|SBNN6!3doGB)?FyWH)#_}iK)$!IeQ{Nhe+vgq zh7ka0G$bkqfM{k#Ma5jr0br-w149eE+S0mZbaMB<>=jeY(F)E`^56>e%3ycCI+#qq z@&GQgz(-1<%yfkM77#!Uq8^6-Bd$eZfitD|fZ%5hKYCPvm(NE1g?S8t{s;_zZB2{A z1T!vQmYyIC@EyCRIrn1wbEq)vs=qX3$7%5mBq9u0RR;^J6pdb0Vfv%IA;+tS4;kf3t->R z0-0Yx9}wJ*r_p==C>*5PAkMWH_2pBpPiW1QhtzDi0`}-QvBjft*cJ)#q-smVm^^<( zmRK({LD~%rt19Y*q{^T$!~msVB7DIUUx2>Rmi#9s4ydL7%wN&S`P}lCiHa*kPJ6-)=NM z4#w-jleKrWgp%50e8}kh&89hp{VucV3e%>t{z~{37~8t`I5o!c@Uu_xQ~A?^^aYP0 zFkzIybSdj4iUMOi0V)80j(saG;E^<>Ws;H5^^l)a@)+_we4cLA?cNJ~r?ziz^kgQ> z<&fW_WllJ5#_kqmr;heh4Dv2Krk?cJOQ?Td3&L_tY-}4SetQN61eY(oT3Xr-g7o%* zoXG*4!6Oi5SB@^qrYwv5;5C^E{yJSH&TptyH7bB!2QM!#H2qG}(Mnz(6T;DN|^;#y8wa@20_K3y5@Fb+`RhRukw(Pke=64f)-6GE@mfi$W#u>dm6)R zsL8Sc%*KB74=my%ma^rk7zICl#>u&B^*#51r&fa4A`2wE;OKiJ!&}%B9*UR@Le#w49|6_yeQf7}Ax#@))J^>l00*f_BiIW$>#(lANopD2zvjgG!Z=5)rq!X*D( zU*Tu=LO!=<-2W+iOw1Hbfz9z~t&VWTrO8N(xA5rLD7)yJ_ZnTNL$ya!CYlV-m~y(b z0~uimg^$`Sz7fgwBUcel$|7qkc|eNw&*0NRI2btEiNN3x%prn|34YPKvZa18x??0ySm=;Cc*2;0sX9@i)>x zc@mtKmd14jc^QDPqz1YuAdEnE0GpX|4?$ad)@{33;CNUJc)V14UO9n@esh~GGSE`g zzk3&9$v^5j!*6X~E_`imZPKvDyG}3>SliAjbJS3M;c!03X*QZeT07&3A-pk36y&Q1 z1Cu_0i_C7tHyWK^hiC^Y*3vKaT?1ect*yA^V=}A!oUcibwkOKnPRv6w z@p1N1TG_zCRAVu|A6NCc;B4@h0LCaA_f6^a@hg039O%!c5V}QEJQ`athA7p8$|=9! zmQ+$9(Rzzzl4E}g@<+D2$KGHWKhEwB|6y5!gBk$icOxyglgIG0oI3^cXetBxLeYy< z9|qwd(gbwsQ!Snulxt8K>cSCJBE68yz4Fh>s~(3|K|IIgPwBz?Zw1`_0ljRTo|r^Q z7%Af-4-w0B>G4o?(SyD^HWZY6qsK;#O^OfiH1FI#QBr@~`|a)1g5qN1UtcYsKOg%T z6-9@=&mHlYGnI`<=NLWpCp`v+Xx5t?+#I*x_rJs~s12-NRZR+7yE(nCuMe+O4`~~v zIKyH$DTZ!s(gC*%6*h1=Nkh(z`ZKA9K<{54q*1dw*|xqz@=+m@hVO^(3wDBb<1RyZ zi+H5M&VXJ+-5QuKI?nTyAT465$LrB(m3m#c=ES&W2%_}1 z=9h`7e!}wBFCqqN*@&=>!horhK5X&m>gyR-*&T3fQN%pN!XJ6F(Y0Asc9?xut|ph0 z^F*&&66b4iJITI*S_*pbWcC-+Fs%b_rH%? zCjvaFF;@uQg=sHpAhko^PlAUfIpVX9)xUmC03!gAcp~s%Kmm@w(iKJ3M-Yhi)oub9 z#jqzACs`@VE#RQ*n~%ITh9Mir@oBw+7SAo^mT7NIqr?Q805veBZ{xu_1IgyiB`%w& z%J1(79B%u_Bxc7~FkUy>0><8eYbxo`&|YDeXbBq{)rLnVTFlLFP}>d7nP~NI_2oF* ze{pVq{RrZCNY99}+P1!SMORWm0Za<@flU0T)hd;u5k>G*UvH)cv96j-hGb#DqF=Rc zbo+fwpQ%+&@ZJ%v5-T|XI>9q=76imDp& zih4N4ae)Cso>J1Uvqok@ri{UiEM2Y#15174%2=s-uz;W4gf*6@UsXlqvgDxES)F7o za?G;bi=DFU+6@s}FB>1R?Z~5qAu@x|4Ay?I4(5lS`*-rY|D-9&+gpimGNJn_4UA8V zDPbH^(sJ~4g8mHd9F8ZCk}OsI9w8gc$_Y9yoy^MVu;@;ajU){ipOoA$mj@Ct@>FM= zZ|82=N{A!*Sap})o}O_WQR?r|PRlM!u9Xu`5Tdda%+YUkLt-oJrTdr|7z;l)R)qS% z_nK`QJ|Y#*j8_qbB{Apaxta%!aIluRYFA^+Jv1B>DV>gC65-QNpCofa;)E73rW9PV z+6<(sZ4YJnSMk=Zk97;5H{Rmal2e^Pz`+%IJ5zakr4R2xymvco2QsC4~NGoXtSI ze-TUEjVkbdnQ&s>OX=NzbnzTQCAIs#_y6agStxKX8X7v$8_1CaPyNPvoR?u83H@%V zL^d|m?+;PqE$LNs=EnwjHyMf?pI5#}{<^fmkOOUtp4USGXkmrI#_xnZ8s?RBw++EA z=`Au_!TSY0+p0xp0Gh>gU50hnYe~K0xMb}cw|cbum70_HMsXGjtd`GvfB!5Oe4`6L z(iQ%1JkI}}#aRuAi6K>xu=h~l7K5H8M^nwc9-dl{bcJS#j^vr5_RR2>S~yK8 zH+dt05AVBqg{BF~s=1)w`gzSiBzxGXH=L^O#=Pgnn{!<#h}jU4slylL8W;SS&;X2|64||-xx!2M9`#KybMM)z zuQ$s|NoIQYD--#}mZvq*u)WpkFq0Ps*Vv=6%U^BXUA#}6$UXJwB5q%V0C?v#JG)MYv_rb!|!zpF1*7iVgAgALofyPw`3@xOc%Y*>x*SGd^f!R z?+c97?J!hv3! zA4!?N34C+<#mS*GF)S56Hm~xlW7}ZKF-ko0Oh#t0IJnecJb+5zu&qyZ;=SEfrR8MC z!g|J7H|BDMLw>n|4*S{7QM*%%^P2@B42tMJu=!9Cfk~Mj7FGLVxEam)*us1}8|71) zkFLr=$|~>Mb6ajne04)wt`9{A)4Zhfg;DN98em==R&#u{p@5So;}2nBU6|fVdOB|R z>#ST-{o}_->Xw|8mq%LVBVsQu=D#q?!bURB>r6osi&j3UI>C8~u!GDQEEwA0b@>Q< z(fRg-%;Q$KVZnX8Ku(NuD1{xj@_PZwPs`^qv9Rt*J^-HTV~@09P3qZbcsL`tSCp)y;%iCN3^$mR zFtDy2T&B(LzinJUzNm`91zXx0-ye#T*pD zS1rvE`9Hdmj=I3>ALiP?*vxE;_UbKKaEdM`T)=nrJPK+7c6J(Ea40FkY=bFm@eG>E zwj{z|bPC-ayBx5=75uo}>~ZknkH^9$n=8W5W)Pes6O#A zm`JuA;pIKYy^n+tvr{WH-&f%jYWa6s2O&RVDevi^;o7A@hTF+w;u~Mgvv(65(aBrO z`H4T5_U^O?yoDw^Y6)dmzYE_+*S_gnQOtKcI{a!lkL_@@$sz)J<1-XWY@SQ|OYlYTZLIG*-h=D46U@tgI@g~xqPXn^ z8f&KeP8u|{YoD})i{<`4mXXl~N6l%MRc|E{f!^?JC9t8?&{;&i&~XY*`l&_KHgu*) zOV5)`OX_XukMfP6aJ8pPbmwxUtja~$ufgL$`!0<;T~ECr{++v8v-OjxmTUIk1KA?0 z=X19!uX5-+;mgjqUZpwivoh3)`u+8Yxml^rylkcvr4}^DM*5lav1xUox_E#?2@H{Y`*PIx;I+gA&X;1+{8Ug7J=?($u zlt!clL`q6Zy3Sm<|L1c4Ar;rfJMx3paM@UlV)Tklly zPcFQ%Y|8n>Y@{}$a%{Fjk^gyv`5pzy~)ClUWx^(I>+NrmXA3dR1W^KeZpYW}e!pr2I_P zeL8X$WsOU1;&v~Bf~#8s^+*F<6vapmGm2=tjG88YcaUGLbagZUU$zD|!f8^_Y~>4L zu-q`aVjZMLSQ3X`@J$!TvlY3-Tps25abHk|EBT#ZKtgLhr!~n;9RC{`?j6Dj{wPy@ zjP0*kb)+h>cmOS>3O~k<+>X1!;r%Lsgnqoay*xEtajt0= zDrpw@LKJiUOAf}n3qv&63wz{D&CFPy`>m7t6Q4g#)@z1@Hpg{JS}cF!Ry$e_NwRw9 z?|&7gpHaOfxv1gi=R%LgU^(vUCzg-2t0DkC-3aznxUC<{ZOC!Ahqz;Bqp*V+>!o%* zr=3+$3${Qy)4&SZv=~1)NaCzT1x)Q%vQF=wD0}m4ne@dWZq^~tNyTzudDK4Sutr>4 zYy1x@Ut&RVkBqVmFZ|e*z&vODHhfkEtqhv>O3tcOP8-g(N|odF%B=b@jH2`GzFUW^ z*Uc{goh6yO6{pwP@v%>co=1!hZR-oUy6)RW`77@}Rw%!i6iDxv(~@?G*XQ#>Y2X*o zb6>4?C{z>AkoY>7FqDYAex%a(=UVbD8%fT2nhmfDu)FYp5>>8$)*a#Bwm+@*hyGuxz;I31p>t#;J*x1T5xAJ5LuvED!UbHZABB{RaQ_+hE_*lVR%q_n(Q_BGEw z6J;cD0Ng|#bLx-x6YkG{3h!p`I!}`1Z8=vT?e{yHKerbXFZuah@ptq`f&3v^qkuqw zGlp`Wgi%&FC`-Mh-I0TrC`S=D({%bFmem!dM3#H*-M-<$YbACIerM?=e+LoXf9pUs zV#(WR7?`|JqRB*2C&z>0n`u>eI=8dNtu(m44w4QJ6Iec|89%PreYuVOvD9^k4+VUD zq1qM4N6m(&hL4Ioi{Go?e#h+5a}O-Hi_0BSeX!D|H1Hgnv| zcG93(?+rMthQD4wQq;1lDt&r&u7!zC4+N;swMw&k&rUwjCwV!YMo%A`^etoOVz~U0 zSL2qn_z~XkvvwA~eq(YcbR`B^XgP+w+=Z^0GvInpDNHT-6i@XHaBw0uqxQ*~Eh!R& zE#EMkh^?hbTy>KB(z~vj9E=Jd_xAalTg%F8@+u=ItEwlip=pc?nnLcTnjJh z-rGKO+dg{r?3^qVEK{==`R8|4Wc6Sd{T!XA0b_g$Wyl(??`~iTUTt_!EtfVwraxi#*UF8dx3OtQgsSWGhsRL^M^M>fd1)RR$ zKKPZx#7X9nyg zs^f$~`JUvs-j6T*UiW!aB8Rc={UUt&t<_>SR}-4mDpCU-Bl1PLej`IGG8Fv4SnYEY z)S(V62scVB)@8|DJuf3Jx}@cJyNg$~WPYx{damUD$^MzST7@YNrYx^7H<@O0Zm=5x ze;WDIm+Z+t&JVzzpPUt0mu)=1Y*h9hC+UEbGk%ZNOah}RtSQmUgBuqep6X=FcnO{W zBQ>naGPM3H;JfOLc5CE!esurKi8AVCO_q75;!C-MaP9izc$xW=IkBwspJXUvH@^N< zRegAmqE9e$vc=KM9aa0@*q;i&NkEUEXHO5-E0zYBp1gslvis4`1L%?eY>lUs^+U0G zFVFr6SCS|1r(XNh^*QT`$;$5;97$hJ-4f0lLN75}_6XG1+OVFx^)tlu(x{xCMgszW zN_E8;6t^h*adZ|BD1K~u550e1S!QW{tBSwUr{<_KqAS^T{Wi>&nj+tfa<@0R(M#20 zv0PH7g&)VOQdhE&;H>6A;g9PIDRxv1x5X#q%v)!|@oE2()1qEsiv#b!?dWo{R%;Ki z4E-&Ikqkj|N{>PP)=mcsr7(4}%ben(T=!x~$BZ7_K3GrGSVaqc+dGIku6wH0S><_1jq>$c3D2o3R1uV!owjZM9JcvBJX%gCc!%0J$K=)8 z^ozdUeuUbp#+@&k$@Ak=RnK-nxT4JyU%s|f|Jw6<>*C{5u;_MIb z%ZP|hdt!Ok{72D(2x7$Yhx&X!g&LnYok`Fd=&%af+fO>5_48BWo&3_V2uh5Own9lM zZEt}M7L*iy^nOeBWy5*Lm-w=RUVC03i)I`#U25`T`c&LAwQ`tA-EQ0QB=F$uQ9p8e zZ$u|HMa@8;ZvP`|`_MK3GLc+8K^EW(Ev&xO2| zh}8pw5q|sqJ3*-;+fljxxwOOEYTKKRC#QYnKLZ?@9sdfT>@7yK-J=TEJU6CL6vt^@ z!g=MK3=!tOUFGfTPcBDZ8$TU)O!4t}brmhCu>;>bsmh8g}!5NPm*20iIK0<97c>A+Mjf^&$4{vST*pGC99}mz4^V zv!&)(cl|yBKCRja*P@~p`(B#cUdK~7&Z~0;;nN%!YZTrb_xJiWTUq)aWHega5Bg5W z&*y$5pYkI&-dMIDBMv`;XMZU)ymtK_KZg^&+{60v7Prg7sVbA~d6~nTTxH`TN|ATG zQs`{P((8Zguwy~UdT{cFeg8%>j?B_S&8k4a8HRvQH`}`&iBI*Z8RJQAu~_br_f`Om zeSCBRuTi}l{!~IX2%J_!x8Y1o-#0lYhXZLYRy!MvhK4`H^A^+H+DWHjzeXJJerxMmftAi+UwkjBc=k4&!)zxaApkDROnHV)Xtf3l+q|WiVjOWr^m`wl&l~k zfy7VYX?FX!CQlZ-`qki*)e@Ow}JNWOkZypg@Z$;akCmGajEN~>z znr`l&n-j8i;LzM>`S`9q#4VnS^&x}r_6k?!IvwSN6&2gCXv$%-VE595{3QJpnL@-b z0=|^x@g%NS%q4wPOmfABOBC;nGU0rqq?pR;IqcZ~?mRu$Xy-jwlXA2?y|rAE(S_l1^C7R*7SISTU3NJNxUo@2cis0t64i zJ7emiq(*-h%B9Z#=>@2-en-p{-!HoJz@|m}Y-n+MVc7AZ=UpL`SVJ|wMA5Ug_<+Q^+LwVU27fS z{jFt5@dNwv?mv^$wu*tLvrhKhlaKmYsy;J*A@x*`nEMOWQ{sO(Imtq{ zR2{y0WSToDNp70(o~&B$gg)gnJgxLj{K0y073Es8jBDoW|DOtoCR^2+*j?46yIcBM zx?z+ZbS%?fi_db9WYUlfe9*1%h%f;0wi=JkA9s(eTd*m~U!+9X0Cl?;_zJb#;=FPH zvtE(-gXrSBnX--lUr2ZVpXP@vWQ}zGI^0H{NTeq54Eqmcs}dj1GyYzt0iOsl0rx5C zk3+l>F7*_Hva`Im$ltja5D=hCvF|&u$#Nmzt)v}dJ*tU5b$HzpxyE)1Y|K|{cDB}C z1D|`i$UR-k&|hE1NC*wweH~56Bifv zbygz=5jNe$dh#gMGz9uyitm`?H1*ba2H)+>lf>S_b5S{*AA@>D>PKF4vd~YT;)g7G z$mD8wwl5xf{x{Tm!dn9U5-jY$*9Sp6L24j^bo~AQVq7x<``7Vw3i%zBiK4m% zezDRtAmdOxxz3R&o0gs~DJ6y0s8Dk4(P(9a?v zA#sm}=H1DOdyf%Yx>&Ft%w|GQkRLGIht|36ZzG*~Fn^V}wq}7%#?yJQ1$pp?8K6`L zl>W0jhm@-cz7<%;vxf$=I!il;{s94?X!Xt4o1&)z8|X$gIX9vH`8FA_@u$SAB&n#)>I${~#N# za5(FmbEBovtm2nlwGCI|XDvqPK=Ka_?XX~nc`5=^V-F9H=rbeaSl{Ag-Ob-E=5^ac zw4Zg##cx+DtZqsX8>&~9N^K_`xF#! znwy0J0s>4-Oj3aC1h*J_W1NW7j+#9_7=~ToSlV(Wwzjr114%O48x)YEsG5|qwPmrY zif?akPjV)?I6>c}bqnr-lK9yAD>x2UF}$g1XjtKa;U}O?lm>pu=g%BQJu!l&rgYeT zAmk}<@1_p0H_k6DiMtMBwZKWciG@LRoUg*be=>`sUg!D*VJ!uL0}4*gSRG~wDXHtw ztpaSWb2c0tb3tr2wNqbUvXA%hqHRZ{eh(^&F}eh>PM}256UbEWuS-BpOv;Y2T0bMu0lbalbbU(zCPU!?^;P zf(#yh0XW>r?%UT;fEF21IFLzYf?LL--(GA!$_T3fGuF`0ArH@T8w=xWXJ_O3EAe`U zAMvAi5T!s_7y`r&oq;Z*FEID_V*8(Is0(hMxRz^JAyzgXG_*`jK|xVkv|!U|V?zvG z;KReia2@v6C;i|c@$!vKKbQuDRN655MLV>gfdXaYf}OmE1`!>#9&2o|+QYTUs?g`OB5=cDj2$&@v2z#S z8{-Bg6H`&|>SDY##yvW^_lVRa4&T9R7-SEEDP^0T-lzIilT`cg;|PTU!oLobpYIU@ zaP=~yEf_GWa@+Xwh39B*y&GgIT+R-csP@%imfgk01!)Bh_dv*dVWKa@!r0ij%B>Fu zd8j5wwd`-eHz49$;dA0gWEY0XCC7Lj9q*5fca|PGkSMepmFZSZ<`fluDl7~E_w;LS zj*gxl8gznS3BwZ-Ko{`Q;o%|Nx7)XGd-oazV%Y`-1W?|*`g8x716}=2*2KEg2sckt()_zn+z=RH5 z1uQVMi2DIQ%KC$a082qx*>`56W7dY*~G8@!xU!Ne_C~6NlAT9^*f}<6G9{6q?z*)@EfDX z02eg!R**4A2s73_k-=g~nDD6I-T=0EV*mH=XMy`xGK1bk)&2i^Bb3>;g4CP`kF-#~ zf&X#f+B!ak+lz2$z?2F2pd~O#K0*{Ua!JzQQJ~xUlh^qfTszX}Zc$fPE@*%R*Fw+0 z080R-2rLX}J%a6p??s3-z%Tq=pM0v|lkwEIf(g2L2@0VLn?^Q4LP!XWCgQ!14>}6a zqr7R;n}xXmu0Jl$K)!r((80e58hVRP4aYBPJ9f6WxxP#@8 zt7K*4%3h(F5Qf0jHh393vl03*?1ido2Rt(&vknSS6@VS@)A{k)He4SDCEz_^CJWw> z`u_dd{o`@yq`Y?R8V9r!>FFVTn{cg~W^KTRgX6=)$43kVw2|ih9E->w$vW>F7#!&F zJUv1tUs=q)(^^$8;KQ)jz>2el#X|uDj^!<6E_l4sk{J4hmp2m-ZeQdJX!u___W}7Y zMkBCv16JTH+_*685dhMdMqY+$I2V)wq#HI1_6dRW6BZl$erVa?_dx3W!a@l&ew&$@ zZ62R0DJ$P1CVnO)B$V+@-x<}ig<0a+Gkti)@McQPyNs;>nJP3SB_#Z@;@2MSj2!K6 z;M~kHaQO@&$*c_rqDug7GOM%{*Mx}uda?BkAIf51;$-gc&cQg4(1cHzM_BFsc!S&8 z+K>Zu@da(0mLa2~ql#b+J@%(MezgU{Mu-2R?AYc-46C?4h`0giZUFR$#~>oV4)*i3 zi2rC#{c2Se5gslG2XNE1?(>ut=t#qbGX{kaK%k()AR#Mj1nwEU2pnixdHGv}goJ7Z zDnKnSq@sck`f$j=9MHeBva!JwHukGp(oaKQfi4L?4W%y4cwLU(LzA>40u(x;ex*ditTsrZ$BV&0 zc?L`m&(+irz8c(XX)m^rcjN6{u(Jj8Sq6*-Fs9Q1tR5XO@kqw$36lrgpgU3mcLdPV zS6CCOA%gk5Ll|}!0CNo|80mh#DD@)8vqbG7ToJe#aCsguFa(0`{Ny?f*lN&9faAz% z^AjKsvw}n`+`lbn#C5~OU{HQP{_Wesf`X`UOAw`uyuz9QP@G5tO#?-c0@Bl?L~wfD zO9W7>J%lzZb%WYZh)cu*XVyXPg|s7Ay7hs{yciUi|L_dqSVFk^Ic$Ck7!abpPCl7` z@WXwl7kEAx6z;HcaUEq(0Fg%<_>VEVhAVMG^KfP_6pIid8EBbrXFLQ;AD)CqPTmjj zr!$N~nDRJFHnHn_j-t!<*9Rq&>&PHoxPEMGEb<40XXY7WwGZ@BGn&UwSsDLoeQ#iF z91#=a-@l~apTr9+>^$4#1(OjUKehw8OlM~&(y0tnxOSUAn_l%-j9VZb=4;b+@!--@ z@;n0)L~3&5=Oy+nH$LaIoo&`uC$4{7iqX`%JB{7&uyG&3$A9HqIBo$Pt)i|4&8vyNGpRY^42+B+0E; z+p_Fn_j`Z>P&}3LWn!@Dl9E8l8-OSdzy@e(k)UwDg1#7*aJXUNV3QH4)z_$(BxGbV zKYxz-^-B*KnD9oQP!?B*q)4u$yNr%&%D_jgQGm|sIj1OAd<`^P!?`K@zMGK>VD z>wX{X63-v=rT*lZ_m51w=eCMrI%#`n2l|E$m--Ts$Oemy=W~mBmUL`0fF|`SD^ds> zfM5p(zscY)zb*dQ{2l?kNe&DB2MP=-`8wcRk!$im>G?6&5OXIP{vTy?7+t;f=kS?? z1oE%wXsCeFg<-JQfIuIH&=6Aus0C(sdB||!HiFBCkjGb-ApG1L_SYB;wL1(;fQbX) zZ&7%C78Vxp?WMq{0=QJb&W;tJ`26DHhp;dK*jsRmMlik}em&@ofWSp!AY@!M)@|hW z&Iq`nY~T;F(1uw;Xiyh%ZG)pZsboG~X{ni4p^Xa7nSgzM0r7|){L&XQHk_uk5DY%2 z{hnK+?~EPSGOP2m@eLyU@uK!s3DEF#a_JhC5hnNh4V&F(VhSA_Q$yHY5YWr(0LVH# zi9NJK*u{l2*<+8;*47qcuwv-Yhwuu4Spe{`Ku86^AvhpP!F)K>V6otdKsV$5&8sL6 z`nZrPekNDh%$6Ht*5bE>GSiUX1vC=Uv2nKfYxEd&=- zJ0%MQCk9eoh)lY}@0$<=tq&Hn1K9~Ma`5XAV8AdPF%aRel~i^P%B!vF!m{fy`@{Xc zc@<(_FcdmqeOfy@kX^oxiTNJ>`|I%J@#CB1KdhdnKEDcK1WYEuVpDK)#{+K|0_g#=AYKrr3c<8S!7IQygQ=hnvkI}rS-N6q z)$A-eg0ZRgQy|ZRt_PTWO#BhI*9%q-pfsvXQ}?oiSV$eP-h}thE<_L!6KlSh85n@! ziL66+KCw`;UND%>U?*#9mc{W3F|OG_q?qe|eoa8PAlhWSy8Fz^y;@K*tmTUBZgQNk%c%)Y%p%Y0Slj(@W-=Q^r`zzN#>pP|rd0p3ej)uZdfD06w+P&6TP!d3LHZbO)Hg;mW%E3hf?qII z)wE#80(3u!csoM>#eP{><6S8Tn{=LS9u>e?87#W}Vytl~h!b_<-M#Z7LSJ_|?f8|- zlg_~5h-v>+HJUaVkWm5-?4!F1QM&lASTJW7%_6Z;w46!zt zZQ#Y}?Cx$^-NnVi&{WRj`CyZC-hzoFpgKo2VI~Re08Ac{Z*6$%Fn1z!IFPTHk|{WT zJGyGPFqb1>e72pz&Pz`!Cv#)bgi(12qL zr}#(~`k<8E!fCA5i3#SNG6AN5##KSfeGJ!h$W_5kC1DVmzL?$G>Lv61+Zmp3so5)ZVxh;!Bmu$>_FkvB|q&0}_&Ge!CE+=e1z zleyhS2NN9)5CoiDxU+x>E6j#wE$;w?Jj?}=T=js!z-pKSq~w+N+c|Xq;XD_NM0ry` zYDORj;kTL(LtZRkaKUEX8GowR>fd=%Q#I`x2w!=_PmB{C@tbst#ijQB@&voy!-Kw9 zgTC=u`(|AREfE7i&VVsMG)D}E4e03T5SI=NU=Y|*je_BgLA`_la8*)QS2yDUX1yBr zJ(BOR!}BpyR-xz>n+cU4M@iRR%}C|@kp>WVV0+pNi;wSyQPfFv_NvKV2-(^oAp35) zj=*)GKnRc~mz0w;2I|JYtD~V1^xOpR02569-3tMKORJ}>AVw9Z#S2iHOky>>4q92S z3}WVI-(iym=n||=)mBYbmLtIs0=m(-WjU}WSHL_95_G3$K*@K3GMKnvg%mf6??16 zq4v&CBKHB3lCAj$e(f`0D@2$Y(j6!%DJidkDynp{1&Nm634Af{;*yigL0k$w_6W^N zcxHqaqiUYQ8MteNl>|`)f;ck@=J{Vb&-$vgP`celdS)Dyoy3iI^J6E+tz1H4E9*>W zqcabuCQdj{{=_{tRgiW5V61v=U;6UJG?cHe?|RbRKfBlWd3={5r{D-cP;&;tvW*XQ)?=@I7>tr6~~ z@bhd)2GOL!B5i&ESv&y9AgchmQSrX1GGiPF@gG0}4_v$rqV)yDbKvaw_>v&y2*8to z)!-_^mI?!VjDY=VAYL^vG=v>*hLk~Pe?M~6Aln1UI7l!b5J#c4e zX=!z4>OHVXIG9UO<^Y{g-PbEnVStT?Y#$1Y1p0T(>GmaX0&)P)Px%b}z?~103CrMn zHLI+6|I8F{A`aH>A-EE%K#6Cg&!2RrPyc!H*to#2Vol!suo_M%pyg7pb5BHO6oMnj zd);G?zwsIn7*O!R6I}x#Dg;J`hd059uq4D>Fq{c7*UwkA<28;9U{HX#3DQeoT+>TR z!U45{2M6#=1^He0kZ?%cs5^6$kiB8QbHBC=$V!<&RPe644(t8>H}g+$&3VV#a7pFcD{`#|Ws?th4}O8ec%aV2%Z7@hBk|7~Spr)u4IS zMnvkoNV|ay5)uv$kAc|H07Ux2XQL3)CSXANG`W9tLGaPq(P|Mw8-(%$;@B5w9;6_w z^$4M!Lv*;oYhIXed*CP3>+0@ao~&XjYB=M9(a-N0FOXpUPztiYEP-u8kRVjai-Ncm z+z(|7_3FwB<-&1#dOG5K-w3>h{2UZqAS4CAC+6A$b_O;9qz7^1d&K|=B9#b0E}&`Z z3l0$AVPli`6#y?3aA3hKrI?a%-X!chaLmD7-Z@0FHX+Lw+Yld5yo`#N{9Bwa>6yO; zW@cpA^l>hM&O9K6bjZkrlT`pXgIQKM)1LsT!7Mby*ocxgzzFIG55z~5F>!QzAR`O2 zcR*eTr{DSfbl(Mr$bS!g!huT(l@N&K0w7bhu^;i_gOHJt(fmft?Vq zw1&B9&rNS~of5UquU}{Tz0TMWy+WkU0AazEI5g|e(b)GO6_4ndS3ZzU=mZv^o-5?; zjY#wiSsAL)h531rK1Ayt3EL|fAbbLx%3?Y37!gJKHZ%m>uW}QoXNYPfguJ;eGic0^ zH3HLk84_c>NYD=H`Hf{TdpAw+Q3I>ZVRtW(Kf}~z&=^X#Z8GwlOBC1a?SzMGnXIG7AQe7~} z!9;#h{ShKz`aFI|PhY#j&TD8E4s3UZVvaYE6P>+S2W6al1z344WXEq6fy^U`!p#YWZIiOA$ME|zp=Czxr zZ3_p}Ni8)Of-ccOd|No@%n%tMv)Vv%64GhAbZ)%S*Rqzo;(p#Rs^P|=*c+v^=z}E? z#;GNEQ;0f<{qeo2fN3jB3%|-bfu}=`CLSWyq2<$)167vjC*!gOW76zstnUTUH6)*eB2L=ZP3slmJib6p& zJEDJS94IwANbIrJ*VjoLzsswcBl4b6Qoaf~J{!kAx}7B*WFVtjUQwYNWU2&evJZjT z6X8RwtgLLeLj|^j%-Y)8l0}V7h17zA8`-LLAE?KR_DMTfARFO4uAzP9Sr#KwE_WgBk&7vUfBRfSP1;Lvik1>0nSy5>1yhHQUkHY7*M8z zR1hHv3H4R9{EA4a`$!N7&>8aE+^`rVz*hr26i|i*U9^d19YK_TV5YMZ-uHO3o|py z_e<*?e0wZFr@Y8p6T1IpiT4W>-)hk(sU;8KRQ4l5lGxnGsi|(LdT;{sG_kT^Y|({A z!dAz#8bPv*@{yh--uR{_L3Yatk!Q~^k^H#YLsrKXCCG<}0V~XLp)3}}0*pl^;PYNARtNVyn*|k?Sy@@_dx(DlhhEif zOdoaqe9r46bkzN+ByI@jVoduUJS$uU6ALCF2M0^CzUKz{-l>JUQB9F;a5K}VGV6;c z=f_^>8!z@Y{=9?}UqAZg9~b-CfrJ{j1YPD;gsYPdKM)HGYXIi_)toGCY{C+`ok}4u z4|fw{Yj)V;gL=7}=+u(U0Q!)#{=Dcrq5g9z`G@$NKpRXPRekR&5Q*H-CHMw9oKQ=X zgD5=FB$)93NH_qvioDo-Om$jvpYq~@?eShSzmmfdf>h_| z@UD~Cw%&ROq~E~gHvqze2%!=P`Vj>Sw}+C;IXOA$kLiP^V~G9-YSYI(NLdK(9*|TG zef!o7D*|jXBv1)x*XV|ui4e$iF74EoAMnHVKxk$=$lM-2i)Qpt6h_-`|C6gnWmU7B z)xNsZ&z}tcv_@LOywAP-^5U^t>mPujQ_dSk$e$qTX#UV0n381(-X%DElSJ+XqKr5+ zQL^cSjD2PMW(WMT=Q&EnBfpOMj1z1zVAUO*oSu#-#{>Nb z91ufzmHd}=aqfIG*)epPL^Gtz0S9oyp3qxe*moiS5(-^QtToFAqUP(2sHW7N%6ZB` zEWwUn0@^4cX(eJFj4&2zn5WU|0WjLueI6A&u_bxh{3B0u zBlK+gx71i?Soa`>%{-5F`K$j#S@dSYx+Xl?akKX_2j7^_9~5CLQt4V!rM|r`h{1I ziX08H=R5Ts(sA{%>Nn1t1TrhE+_MyN)+z(4xO0?Np6oMSe2mW+n}YgeD9qJsn8T%t zk}^ytc^Z(`z8bE>j@vBO|A3hD{I_m6)y~wkMOoP3l55%2y|QtOIW64p|NT5S?#NzQ zcq6C?yifB_O-=Q1J(+T}BRO^byO&fsJrl2T3Qh(D1+JO>Tc0nY@B``L#jFaaW)QAC zcn#QF>wIDOxpQ6|jP^e9=1>>YGUz%a{0XOU&)4w>UiNpM2K|xdJo5OrrL9R3#q1a_U--Iy@+nu1_#Z8; zdgRlCvDr4t8);Dg(JJ|SJZqjnrJNPJ*v6|{ew}F-#Ivxkwl_cgZ*8nA6xaT@s@DH+ zf4w1~-AK-`^y5vv4{)tIrZ5R!Jfy!9-ZgW56Y7+@p|?ceH%zIEC2jtbMk_#GTg3m0Aqn8GU|5Mv)O$tXo z0WGfL<9_l`^A)CqPFrze-2QM5-x2J)Z%X)**u$tz7W@;$==>D0KjGd(yG#_ zFU`hTO22|ig{5z#Kd;0(^9ndIVE zrhm*ap;60h^jaz>;MvOX-5N^;HS`7{4HpOrBeV`VMcYUsS9Tz2fk+-8$xrk`{dn_A zmi#02%0F7|48(UH$#728Dr5{1QeJt7XSNqU z*O{@MErrKd4D}<2q=c5Vv=GVtR@vx{V16-macjnANEYtnN)gbbpnYmhax(xgLKbUs@)0=a~qz0>2 zWJPB8U900=u;p)Qh6<@T4ZdglBfa0#UfxTstMmOhLZhW%WRsmNl_?ZsNxA9H)$TYj z&KaVR+V#A?@%ao9{Q}ysR4hkMYKh5>K0>8ms4UmL(TedGNZvmRlO^UM)x)BFaX*69 zAP#GS;EO;i?`2nKk_;*42`WjHg_YUo%dSu4+GrbIM&*fqRQeeasYi0{J)_-;ZIk&Q zZM6TnLSo1jQh2e$`lLKbgn)hMhmnMwm7$Oe*QvKRNDqW0UOJtB#+yx@mO~e~aVQdn zTcQx@cq^SZ(zvtY@UbJAXoW(S5+jTS?^E-nQQNaZHV(OTT z6p7fsNs?(Ix^)tTh;ioJb_3$<)HKP@VyJfyEt0kdH0Ba0ZC~$QMN8Hj{Lq_G%t#rc zXkz*LY}BFl-;Vuntu!d#WRqyLq<0`$MP0(V$JD|zQGu)xQyZt@) zPM6^`5@o?r312=>os~O}Np&oPrP+nqBZMpD(iIpK305*Sen?iRQHDHrzT?g$6wRC8 z_4*Q=S~UU#=9dDvhMnx1&C<6DZrCO?>t%~x%V~TqYhrfo_cWJ?<}>c!M3=k?-%9(S zZC@g#eL;?$BZE;+Rk4y;f3; zf*1Z-g}ZoEA}K%<-`0jrL=wa^6wal?gM;!TmClGXBEZ43e~TBRhb1b_@k(#uP9ka zXF2kmdeB9N40v7#&9;Qk4t% zs$|{?Tu>=q-TEk@Mod*Imit^BKIi21ZgUaAe7UlUMx%QPys_Bklep*Mr+lylsDeh%tL4MCZ-+QB72d zUb(9Rw~zKMv+$!W2_>RA&GO)4`5RhqRr79j+%L84&4{N-w+x=)Ki7=JHnB9NTv7ac z1B1X7ngGLrkySahh5h1Q&NiY`Zh}G7 zs5KUS&Mjqnj$cP_M{K1@h9y1_^%3Qc;2xoxh-WGZGbAr&y)vtaX%@f@Zhm{6 zyK?puk6C7n5_?AV{iZxlw0_}b0?Sez)}ISDj3PM%{LCDaeFF8#dpW0ST-jpRnN%~i zVth0Gqu1ML6rX4L^jUR?QIt$d{<1THv{T;0=0Rfnv0yJz~{}(>wMwlG%_Ek)yyT0hiEh3jdIwxvNwIiU||&G487O$ z{Nb>_E&9aGgE%$At3#q@vU8WQMJ3j--dr2(N_kAX5b+y7s4(?~2W`52BG%tmIy`~w zEPbwOqap(aO=yLrw>fY>Q7BW6klB7{Zzr1wm6UiB{e9Ho_Hm+u6jAjB!204X3Ad(? z?iU9|h&cz7n9H>hWqH{-7qa>d#R3%&yO*XB&QWRxS;zAzYRNgKMcV`rpSyY~h(!&T zXYMuzS@?}D5Ar+c=(cZ{t~h&MU%x`oFCLF)5=t8&z5w~KM5Nobk0(a4{~BHh@%f*MG*84Rz=B%%l-`op zYAZt>HWQ)0tQ$iUKpD`+YMT(&y9lU*HdnVm*gSaYvI*&PvbA(I`oV8_VP6*|GFeU1 zSzh{+`~1FlPvT*HG*C8wdXh5u@--_($%75>Ah#hqK#&F{AA%bImx}K z>svg+ByHd64by0w+xY~;C?_MSN?0ngyMF#eVV5`2-^*>1P*l9_wf(@W8S+NXNL6A! zOc-efcb++(?x?EYeS{>7JkD30iGlm~*WRSHF*LwI4iCD?A%(&}5dAMDwnqgwQf&5^ zENNHb1Ntul<3}0{z;M086U4%?R6L@Wn68lXD?!*?nBWKn0>rLNTn+PPrR(daX|$BG zBuN|TUvAF%W#1F%_-ezkBi}Aeh~sdoevExPYcMOSm5T)9YVksU*#QswaGEdM&J5lJZcBFlf5gD+5wD?I4i;;(Q#78wxDdplNbA*>I|vVntH`nUoi0T*lSxf5UHMt*_Ke>HySnozUFH@}^KxgY1Mg8GMC zQS;}K16^UVSAwfelXA|@%2kW9@7oFuk1UlF&ZS1S@nB-1$glE zkIb;~shE~8rSp(4T&8XOMXO9z{wUoQCUyIVUXVz2pQj=pU#Nq&N;Dhb?nc`rKi?uhfpRfIwykCN^*)ka0(mZ? z*O0vf6%(c{5c7*c)G;7yW(RF5HXwLn4+P$&&Rf5xlBz)K15}eRv#%7udz(j}y4g!- zt73Wqr8f&?eUQeu(bFID;-qa2r;`mO_DiymuqBh_*%CQB+c-~JTr@)Xc%fPAEz3Kk zF&*@Qx)CmCCHgy%@W-y-EwFyF$h!CU?`BkyyD!qV?&P)a1R_2smk@=&m-h9{ScgBB z`1Wf?sV>eeHa1vu3B7y8s7Ylawy1NZ2B!~I7=q}+B@Jykz9fjZwJAxzEmWq}d=}Q1 z`U_p^PN~|v1genR&CIR)inLf=m^NLh4j2liX?8?Rw7TVDv5&6*EloAhf$ybp4?GxLy{I`!6F2jxCtI;1?*4QGy6AqNlP zawR_=>p+^4L68>xC-fIGL(AP#xH#GDT3P>M07Ib;v=5)a<-Y=HsIAQw93(|(%(p`b z4JoygJ02%<Ymdf>vT*Cx=f`V(!H|Jak`diw_Ccejq5xfvheRDMM zjF(kgCiY0fx=T;8k&efbIji15;1|jJGIS077jG3>)@PN`XjkZZFD(spfyLzXvvVzq z3k*V1X~3`yrx>!Jn|a!&0g%(Lo88CZUSlpF;eje*tF6c3YlH@z*y{5eXaw3AezG2_ z9})v3+e{57tk20Yj$jqgAQOl*ZyYvW;cJA-1R)WTnfnqn&`^cwgW^Op=yN(EVvS;I zkR5cLb4EGe)jr>ivzLuwek13xqUa8U+Di=Dhh3UAo)=)O#0zoOx;KBCeH1E@P^8b$ zdX$pbro7Fw)9rV-p4Ks5?Q;7~uxW2rXNF>Vh4He4OSyr9K}{CR(%+pNN9ndv!8-1Y z!3+gD*5$_<=6KiBF9l(jyu5BnRi5kjxPPb7nYKR<=S8b99cEWYwd-(?1~W|~mqaWc zJ6&2nnyNKbT0*;?={$?EJT}R-F3tot6GI&)js1osAmhIA8m@5ttntwDV*&lby8`r4 z&79&nN)vfI8@(*NMQ0r=!}go6mOx?_0|q>L%}1o;LB15lSLlsUDoW#RIiA6*K~%je zpvLuza~h^p#6W2d>UoclFQn`Q)pCoqhCel{2)92%Ret}U#5>76geu|LDu62ZuV$-s zKdv$yD}QyTp?=jW$>V4gT{ob*gQRUu7{~C}{MVElg3m%44>RhpDq5+Y+G4XOwzsiJ zDp0-Gr;nnqFH~)f+>=j&48x_{#`GySq|77PcXQ+R2D-!AxxE=K2Dl$eR z4sd#tfU4zedcS^uE7;oI+pMAs+Lh#`>T-&!ib6QSo~7{J{ey#u8X!%I2pUQYWYh!g zKc0i1-t%^x(4o{ZFmMxk&s#VhA@7@ScWNyHQYSpl%gOqZivYR zdg;1bBS-@L7sn!~-bS{S!^QLG7eZtb5%6Tww*{ol;SWGLO+fpD^CbkZE**>b5~M%Q zVK$fwh&~A2@CZHIEwcG0`JnXYsh3cVJ&z$)?8jFDnYh*ELh(j%aWu~vqP|`Zc&<#F zRjNeKCqtHcKi|5iV=Nd9d1Q3E2QuiP$r3$3D65B_36iht#hLZI#h28&J^L5XUmu)G~(aZY;>VL@&po@|hygT6& z*)2LiR-ttJmQ3p~?y%V%{!Lr_$U+=HX^T6ndN%mHTBoI5Z!33oKTKe$j$lcdmcMJ| zOpx(U$GzmCX)FK6uH>%egNPL#jO?N-SF)0t656ntgj3{q2aF!2H0B(+>`~^6%EO-U zG~E&>Y5Mvgxd&y? zI~)+R{sQvP$kroH>xW^;1WcZOUihd9c?ysze0P4xfBpa}-N8^?JoWk;7znv_j!nM( z>V8{L%S7EhKSQ*!77?`q5YI@}Vzh_RjEL@qF{q|Py=Ly)Go}S#tzUvU4^Kr!tm*5S zcu0UEPGXA=+7fuzFM~1PzCs+32$+||zK5mu%To@HPNaq$*MC%xRC;Zp>AM9c9xD5b zw7=}E)qWLqd-Y>#T{V50+-0P8oa~g4cg2lrk_w0IWbH-+nTr*o1UKaE?d@j6?bgRR zs>b~=fKr9W>7n_R^Eh`yG}3V_oRbqz>}3o6#UCzzm2(fe(sD%urZicGDJxFyc~&N7 zEn?Z?rn9QoWRXdY@sK6<6&tO}y7yDj;hUJ7XR3|Ar=g_Z#oaBSX1x2J;SxuIWK|zU zkF4O+igd*S0@9xh!f7O91Pi#4C4V=5NR@c8oldHR_qvw%bCAwub{cSJtLU$+z8H-r ze?5C$vu>Q9UDoD3r9QiT=e*b4iw>ri{nK_LJL}9Xe{Ig zhqYp1@39X3=`pFWLY=pds0$nWESXqLw{MM&r8%Nd(VNsN(2ZMe`G1 z!2jAKL@^Ri6p?ZY9wbK^`7gxHVQp;twwC3*Y6e>w0w|GL8)O;IPWsQ?8~iE|TLg#u zNhQLs585X&&;qdfuHxR+Y$bZ2=1%Vgm0swe+JdftjUn^t+sNkvB;?guy6Ywjkj=JF zNBXq_25|@aONlhnN!7EDP;Y&!?nnNW1rs0lin{AFmOK2^*^zX^lwFMXu*!T=n=nL2 zc#mn9h5b5ZIMDh1C2@nv&3V>u;o#URX^bYzx9ogh5tP5tudevrPwb=R^$1zT)ky(@ zsO-qDR>o&?Ucp0hUN|b3mFCd-?}W8t7btSz^|iMIx=$W4OBmbYCw%-Tay7*bp*85A zbTGF3P32QM*C#(FNLrFFP;nZ++rfeW)iM3hsg2R9S`01dBd}nf96KB9;A;o}N*q;k z@9H#jcIJ>N(hv%*S8uAm{0%*rqtvy`H^EuOdvh&2lrQLBVX6M{J7HUbb3e+Y<%P>yd({IGIl- z2p+f0%9sYR$ISlBlIJM+-E;Z39n;k0%b(%3UOklsy!lh({g=;A)3N5COjH@f|1ZYA zDy*tCYF7*pL=dD?I;Dk0E8VG*f^;lEx;v%2OIoD6l#=dF=@#kk^G)6V`7h78@Mb@c z?m6fBVvKjZVWZmY7@AXAHt)Esh9jxD&~?#&{l6tjAlZaIRt+1<~bYx$-*H zchR{+9A4h>8NZ40vG6_^ZpXbVoGpz;cV8W)2{28 zK(5vYWhR7_NOeaJ>aI`c7q&e8vRrc_fZzjU#FKcMOT{3!QCLHR zus5Fh(|3o-4-N-_NX%7D3Nm{jav;#_bo*AD;YRE;ftKeq zor1rs{yq)q03Ca{&TMrm->na6ne~n}YM4=)K+qHBi)XRw-Urz4r!RHEtRtzi$2wsz=pSRI$Zg0=-7y*Ex_GCf>TrDKfMs5JbOoA4i zDSid|v4=AO^c)LXX>i37lyI3%HAAT;c>*VN;Cu#aBL(O+u1{;446^G|IX*mh5dzy^ zQI$_#IV|dOdDJAm&6uww@jCA0J6w)1HnpVGW=^WQu{>;~`NfT7oFO(VleuxXK{v0k zLyo`HBdito?^6^UD9jVKoDPv9YaN=eicl?TEqO)~M>2j>V5RC&mf~xyU$o1!@6B}{ z^;HZWWby81Dlom)%qEzu-7|8q`F-ujQ5E*!MKuPD|NDz-VTMOi!^Wt8=YR)1QIt!d z+1&uY92<0tK;bbU_}8NyxEI)80NKIH`L07#?@|Ei0LW|a1DvL+h1t{abte*tz6NEh zY>ni&9M9d}x&w9v2*!fM;4G-zK$HU|4c{B8zdfq}RGTz$5+`5a>9KRP?ZFRWMTB!N znn3zV*tApoJT&mp)VKOs@I*g^Op-`3WijoAnIg4D3Gi zi3ckZ4z@~+F<;I8=(rY1Xp@m?HTnPfg}f>&G4Ym`>VbYM^|BYAFTQ3Y>01%C&dM*t zJbrI{-fh~l`?(4h;fJ5VwbnDl-8%wl(gURF9oNWm9Xetfgsablb69*8F=meP-}P=% zhKoL@!bx2~K%qCcF)k>~G^JjI`yA=p7D1P^J+mYx1jm#CX&IzZcR!3y-=72-?V(H| zK&AFK?Fa;OZ$Jh3-L}UK^PjHzH+rw({g8sfCJcIgm+KplN8ZYk4fu$FlUgK~wul`*{XG2Up$I_=q<0JwQV%F~7&^q1H2?0ZWNS!H2@aBBK#7ufKYTua zHGgIe(5*ud?h^yukl}ad;jTMyZNkwnxiQP&z69K|Xs7{s{ln|?-c{(JCWs%0s7v<% z-DrUSOcT(drI_ONpiFt&VNs|`ou8j)ZLl~Ppo*P2GD9zx;Pb8vbkJslu{>`Udv^@PB>IfDgI zBe#Nn_T|f$fRpuVK71ts5U_4IUcF-F;AjIOe-OW_Rz6=zr!>My`BP-KP2PUpwt(#0;s|ClO6zwWRfAMLjll!CSkh_EQQG{c(#}ub zT~ElVYa}@u%rVF$vikIvT;7MP{AiZduJsn~#82w%U(HsQ%buDPUg&s=iiWe5z~^V@ zM?dO=ur6noxpLgpfi8Uc_W5+S6!my#2)^Lz=1Sbkl|VP{>MlVLgkVlxJm9wG+p$60s(pVKLST0&;sAx(;iNq1h^ZZlgl9@dOiFs&Of^} zX+QQe)H%eA-85No?}zi%$v5;*ZzHERu%G0E{_;`~0cC~HwMfxef%SP_zy9yCBPXkN z;SlkqdU#0kh*(i&OqIqZEjIn}8LA>+Asu0Vi=_H=|C^geU?J7s2&#H`abOXV+p=OG z?+J&{0u58A$iPpNuapGOX}*_UQ^g53MPV0AvRbt2Bi1)KIi1k2_a*c{8N80#78LAC zI$>rnHKCE!it9E?>&w8^7E4iWm5P)ilOI2V>GaZTIi24L%fh@fUvaz(e&~fD7;KYu z$M|oMRR*%@yr7&?K!~g|9rtP^B10p9fDBH5n0>@UJPyB>`}vjROxWC){CUI4`K3p7 zIcCJP6`7e|Q7!aeyoyAQM%Po`qn}Bd#h1F2xInnr4Xu<ehgnU!O#O?|m-LL56SJKwR!KAbKcu?LzW9`BI!0$W-#87AI$l1kZeCts zBu7JiGbQs%&bTOsbuHoBi9(<}oJYJ{t@`97YHzm17oR4B-Td4NUDDhWQ*ET>EB5`r zNb`L5$@V1arnF;cv_-@xK?rsZX(_qSDMa@e&PpvQLH`Z~t?y6t*PUavgKM^#8I3J7 zMVX_K>&fypB9C7jN#69`zG&W+;tQF?G6aHtw;2Mc7&~=X5ByRci^V(!?+r4#N2UuN zqCTj4$Se_ksGeVssc44mgH>WSFX3+d%mDQrk$bd`kOg1bR_-!mT8Rm%U}{UFJ4!75 zx2ot2S5kaj<$_p8lY>u*uB%(wow8rl^A$pgp~C>M+d|r^5y#0De@U;B+ZKXJ+@=yq^hw|cnM_PW8Tdxm3Yv~) z&roXklw$DLIyM}1Y4!(H(mVz%)e=laTboG|FDFn>)|?Fb)j2=SH2cfmU`b(XPWh%= z7=EdV&scsogO>>-OO;bDcqf^|2Bz}PSr*@;#HooV8s5_P2hybW?Qs=~2H+H+WZRIu z886*kvpaV9w00AJOT{mVy+&S{PF{^BzvHIx;IX$S6oX!Z3@5$W6o<;w1Fro5elX7b zi|O~(zTX`&{6lr4*zI$fq;xC+8N`|t?un*13uM*Lu zI^MT2l+kIo3EtGcel}n-!tOZoePgENo2v#S%Lzg?@)A7nKn^AK7NDLM`md6$!b zgTS}`Y2F>H9nq$VGQ(^8Ge(iAuBh&p3hrmg*vGiaSeopyungT^{c>5_ooKj;UTbA{ zACD{No`3;~IFTF7>b~#=`2=0%h9aQg(lQbR3%dxYyHJ)THX*?M^h27Bq; z!B@!MRz_a@w%ZXcd5?l%(|_bywdNP@I3C1 zyaiDWafW=&*JSkNRYpj&)jJJr8r_>P+ECf6F6I z2iSgmQ4b3%XyeBkg1`GAQUFpoRS-D@P`fT{JRm*4CwS2hkBdcgyiRvu?x1sJirtHMtwR7NaAxG5dQn?ojX(pkf1AM=5r~m<9e-!ar(b6xe=ukp(lcmo`;2e!k3lb z#7R$0O#e;z2GzbKOMz~fy)tkeEX8Zi)*eG=F0M#f1AO&{sH7lT6Hz$)`8N&`lPg1V z;t11p37$D2rb%g@S&{eLh*@|!PXTq{0zdPscc>``m%;fW74Bi*o_nvjz@ei1#kpRJ z&2FOEOl_=alXFt^psV0bJDCzkmcQ0gELmsaPx zMH!x5-!V7_G&u7Or3y63`$a@igZe$F8v?2D`0R$j6$

Wa0a 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 diff --git a/data/images/fourth.png b/data/images/fourth.png deleted file mode 100644 index 8f026b8db1de0f8abf66e4839531a34fccb50d49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57784 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 Yandex.Music client From d570fd71d1104785155d27dba3c60f04de4eb5bf Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Mon, 19 Feb 2024 21:36:59 +0300 Subject: [PATCH 129/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BF=D1=83=D1=82=D1=8C=20=D0=BA=20=D0=BF?= =?UTF-8?q?=D0=B5=D1=80=D0=B2=D0=BE=D0=BC=D1=83=20=D1=81=D0=BA=D1=80=D0=B8?= =?UTF-8?q?=D0=BD=D1=88=D0=BE=D1=82=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1694c41..a295b61 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@

- Screenshot + Screenshot

From dd4609cab31dcd1f9f2f822e398f1321ab08351f Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 04:55:20 +0300 Subject: [PATCH 130/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=84=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D1=8E=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=BB=D1=83=D1=87=D0=B5=D0=BD=D0=B8=D1=8F=20=D1=8F?= =?UTF-8?q?=D0=B7=D1=8B=D0=BA=D0=B0=20=D1=81=D0=B8=D1=81=D1=82=D0=B5=D0=BC?= =?UTF-8?q?=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/utils.vala | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/client/utils.vala b/src/client/utils.vala index 05c6516..f9ec791 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -48,6 +48,17 @@ namespace CassetteClient { public static YaMTalker yam_talker; public static Player.Player player; + public static void get_language () { + string? locale = Environment.get_variable ("LANG"); + string language = "en"; + + if (locale != null) { + language = locale.split ("_")[0]; + } + + return language; + } + public static void init (string application_id, bool is_devel) { cachier = new Cachier.Cachier (); storager = new Cachier.Storager (application_id); From f860cc7d074fe180436ddad9a758a4638f581262 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 04:56:45 +0300 Subject: [PATCH 131/854] -_- --- src/client/utils.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client/utils.vala b/src/client/utils.vala index f9ec791..c0fe4fe 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -48,7 +48,7 @@ namespace CassetteClient { public static YaMTalker yam_talker; public static Player.Player player; - public static void get_language () { + public static string get_language () { string? locale = Environment.get_variable ("LANG"); string language = "en"; From fbe823b16a78f2b5652cb51e19c98d6a5de88b27 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 04:58:07 +0300 Subject: [PATCH 132/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BF=D0=B5=D1=80=D0=B5=D0=B4=D0=B0=D1=87=D1=83?= =?UTF-8?q?=20=D1=83=D1=81=D1=82=D1=80=D0=BE=D0=B9=D1=81=D1=82=D0=B2=D0=B0?= =?UTF-8?q?=20=D0=B2=20=D0=BC=D0=B5=D1=82=D0=BE=D0=B4=D1=8B=20=D0=B2=D0=BE?= =?UTF-8?q?=D0=BB=D0=BD=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/yam_client.vala | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 995835a..3015215 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -691,7 +691,7 @@ namespace CassetteClient.YaMAPI { Bytes bytes = soup_wrapper.post_sync ( @"$(YAM_BASE_URL)/rotor/station/$station_type/feedback", - {"default"}, + {"default", "device"}, post_content, {{"batch-id", batch_id}} ); @@ -720,7 +720,7 @@ namespace CassetteClient.YaMAPI { Bytes bytes = soup_wrapper.post_sync ( @"$(YAM_BASE_URL)/rotor/station/$station_type/feedback", - {"default"}, + {"default", "device"}, post_content, {{"batch-id", batch_id}} ); @@ -737,7 +737,7 @@ namespace CassetteClient.YaMAPI { ) throws ClientError, BadStatusCodeError { var bytes = soup_wrapper.get_sync ( @"$(YAM_BASE_URL)/rotor/station/$station_type/tracks", - {"default"}, + {"default", "device"}, {{"settings2", "true"}} ); var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); From dd7b53e718da5fc1b1c867fb686950ab7e0f68de Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 07:09:05 +0300 Subject: [PATCH 133/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BE=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=20=D1=84=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D0=B8=20CassetteClient.?= =?UTF-8?q?strip=20()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/utils.vala | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/client/utils.vala b/src/client/utils.vala index c0fe4fe..810e134 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -108,6 +108,10 @@ namespace CassetteClient { } public string strip (string str, char ch) { + /* + Delete `ch` from start and end of `str` + */ + int start = 0; int end = str.length; From dee85a6fb1b41dddd5035b1bfec37d6fb1b8b652 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 07:15:13 +0300 Subject: [PATCH 134/854] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D0=B8=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D0=BE=D0=B2=D0=B0=D1=82=D1=8C=20=D0=BC=D0=B5=D1=82?= =?UTF-8?q?=D0=BE=D0=B4=20=D1=81=D0=B5=D1=80=D0=B8=D0=B0=D0=BB=D0=B8=D0=B7?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D0=B8=20GLib.Datalist?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/jsoner.vala | 2 +- src/client/soup_wrapper.vala | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index f4ab65c..73a04a8 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -77,7 +77,7 @@ namespace CassetteClient { // Serialize // ///////////////// - public static string datalist_to_json (Datalist datalist) { + public static string serialize_datalist (Datalist datalist) { var builder = new Json.Builder (); builder.begin_object (); diff --git a/src/client/soup_wrapper.vala b/src/client/soup_wrapper.vala index d4d6daf..e45d797 100644 --- a/src/client/soup_wrapper.vala +++ b/src/client/soup_wrapper.vala @@ -76,7 +76,7 @@ namespace CassetteClient { data = new Bytes (Soup.Form.encode_datalist (datalist).data); break; case JSON: - data = new Bytes (Jsoner.datalist_to_json (datalist).data); + data = new Bytes (Jsoner.serialize_datalist (datalist).data); break; default: assert_not_reached (); From ebd06ee3197fd9d9025955a4e969abc91fab8f57 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 07:39:24 +0300 Subject: [PATCH 135/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BE=D0=B1=D1=8A=D0=B5=D0=BA=D1=82=20Play?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/objects/play.vala | 41 ++++++++++++++++++++++++++++++++ src/client/meson.build | 1 + 2 files changed, 42 insertions(+) create mode 100644 src/client/api/objects/play.vala diff --git a/src/client/api/objects/play.vala b/src/client/api/objects/play.vala new file mode 100644 index 0000000..b07f150 --- /dev/null +++ b/src/client/api/objects/play.vala @@ -0,0 +1,41 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 3 + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-only + */ + + +namespace CassetteClient.YaMAPI { + public class Play : YaMObject { + /* + Объект для отправки фидбека о прослушивании трека + */ + + public string play_id { get; set; } + public string timestamp { get; set; } + public double total_played_seconds { get; set; } + public double end_position_seconds { get; set; } + public double track_length_seconds { get; set; } + public string track_id { get; set; } + public string album_id { get; set; } + public string from { get; set; } + public string context { get; set; } + public string context_item { get; set; } + public string add_tracks_to_player_time { get; set; } + public string audio_auto { get; set; } + public string audio_output_name { get; set; } + public string audio_output_type { get; set; } + public string radio_session_id { get; set; } + } +} diff --git a/src/client/meson.build b/src/client/meson.build index 0e4bd57..46b1ffb 100644 --- a/src/client/meson.build +++ b/src/client/meson.build @@ -24,6 +24,7 @@ cassette_client_sources = files( 'api/objects/track_heap.vala', 'api/objects/cover.vala', 'api/objects/icon.vala', + 'api/objects/play.vala', 'api/objects/track_short.vala', 'api/objects/download_info.vala', 'api/objects/account_info/account_info.vala', From c2fd9e785e641c6d3a6f1927103f911c7f37d995 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 07:40:45 +0300 Subject: [PATCH 136/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BE=D0=B1=D1=8A=D0=B5=D0=BA=D1=82=D1=8B=20?= =?UTF-8?q?=D1=81=20=D0=B8=D0=BD=D1=84=D0=BE=D1=80=D0=BC=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D0=B5=D0=B9=20=D0=B0=20=D0=BB=D0=B0=D0=B9=D0=BA=D0=B0=D1=85/?= =?UTF-8?q?=D0=B4=D0=B8=D0=B7=D0=BB=D0=B0=D0=B9=D0=BA=D0=B0=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/objects/likes_data/likes_block.vala | 30 ++++++++++++++++ .../api/objects/likes_data/likes_data.vala | 35 +++++++++++++++++++ src/client/meson.build | 2 ++ 3 files changed, 67 insertions(+) create mode 100644 src/client/api/objects/likes_data/likes_block.vala create mode 100644 src/client/api/objects/likes_data/likes_data.vala diff --git a/src/client/api/objects/likes_data/likes_block.vala b/src/client/api/objects/likes_data/likes_block.vala new file mode 100644 index 0000000..c6c5d67 --- /dev/null +++ b/src/client/api/objects/likes_data/likes_block.vala @@ -0,0 +1,30 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 3 + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-only + */ + + +using Gee; + +namespace CassetteClient.YaMAPI { + public class LikesBlock : YaMObject { + /* + Объект для хранения данных о лайках/дизлайках пользователя + */ + + public ArrayList liked { get; set; default = new ArrayList (); } + public ArrayList disliked { get; set; default = new ArrayList (); } + } +} diff --git a/src/client/api/objects/likes_data/likes_data.vala b/src/client/api/objects/likes_data/likes_data.vala new file mode 100644 index 0000000..01e85e7 --- /dev/null +++ b/src/client/api/objects/likes_data/likes_data.vala @@ -0,0 +1,35 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 3 + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-only + */ + + +namespace CassetteClient.YaMAPI { + public class LikesData : YaMObject { + /* + Объект для хранения блоков с информацией о лайках/дизлайках + различных сущностей + */ + + public LikesBlock default_library { get; default = new LikesBlock (); } + public LikesBlock artists { get; default = new LikesBlock (); } + public LikesBlock albums { get; default = new LikesBlock (); } + public LikesBlock playlists { get; default = new LikesBlock (); } + public LikesBlock users { get; default = new LikesBlock (); } + public LikesBlock genres { get; default = new LikesBlock (); } + public LikesBlock labels { get; default = new LikesBlock (); } + public LikesBlock library { get; default = new LikesBlock (); } + } +} diff --git a/src/client/meson.build b/src/client/meson.build index 46b1ffb..6cdfe7d 100644 --- a/src/client/meson.build +++ b/src/client/meson.build @@ -27,6 +27,8 @@ cassette_client_sources = files( 'api/objects/play.vala', 'api/objects/track_short.vala', 'api/objects/download_info.vala', + 'api/objects/likes_data/likes_data.vala', + 'api/objects/likes_data/likes_block.vala', 'api/objects/account_info/account_info.vala', 'api/objects/account_info/avatar_info.vala', 'api/objects/account_info/passport_phone.vala', From c7e777c3c4c8237658fac524d3e2d67dc09595fd Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 08:29:24 +0300 Subject: [PATCH 137/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D0=B5=20=D0=BE=20?= =?UTF-8?q?=D0=B1=D0=B8=D0=B1=D0=BB=D0=B8=D0=BE=D1=82=D0=B5=D0=BA=D0=B5=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D0=B5?= =?UTF-8?q?=D0=BB=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../likes_data.vala => library_data.vala} | 21 +++++++------ .../api/objects/likes_data/likes_block.vala | 30 ------------------- src/client/meson.build | 3 +- 3 files changed, 13 insertions(+), 41 deletions(-) rename src/client/api/objects/{likes_data/likes_data.vala => library_data.vala} (50%) delete mode 100644 src/client/api/objects/likes_data/likes_block.vala diff --git a/src/client/api/objects/likes_data/likes_data.vala b/src/client/api/objects/library_data.vala similarity index 50% rename from src/client/api/objects/likes_data/likes_data.vala rename to src/client/api/objects/library_data.vala index 01e85e7..d3a1ace 100644 --- a/src/client/api/objects/likes_data/likes_data.vala +++ b/src/client/api/objects/library_data.vala @@ -16,20 +16,23 @@ */ +using Gee; + namespace CassetteClient.YaMAPI { - public class LikesData : YaMObject { + public class LibraryData : YaMObject { /* Объект для хранения блоков с информацией о лайках/дизлайках различных сущностей */ - public LikesBlock default_library { get; default = new LikesBlock (); } - public LikesBlock artists { get; default = new LikesBlock (); } - public LikesBlock albums { get; default = new LikesBlock (); } - public LikesBlock playlists { get; default = new LikesBlock (); } - public LikesBlock users { get; default = new LikesBlock (); } - public LikesBlock genres { get; default = new LikesBlock (); } - public LikesBlock labels { get; default = new LikesBlock (); } - public LikesBlock library { get; default = new LikesBlock (); } + public ArrayList liked_tracks { get; set; default = new ArrayList (); } + public ArrayList disliked_tracks { get; set; default = new ArrayList (); } + public ArrayList artists { get; set; default = new ArrayList (); } + public ArrayList albums { get; set; default = new ArrayList (); } + public ArrayList playlists { get; set; default = new ArrayList (); } + public ArrayList users { get; set; default = new ArrayList (); } + public ArrayList genres { get; set; default = new ArrayList (); } + public ArrayList labels { get; set; default = new ArrayList (); } + public ArrayList library { get; set; default = new ArrayList (); } } } diff --git a/src/client/api/objects/likes_data/likes_block.vala b/src/client/api/objects/likes_data/likes_block.vala deleted file mode 100644 index c6c5d67..0000000 --- a/src/client/api/objects/likes_data/likes_block.vala +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - - -using Gee; - -namespace CassetteClient.YaMAPI { - public class LikesBlock : YaMObject { - /* - Объект для хранения данных о лайках/дизлайках пользователя - */ - - public ArrayList liked { get; set; default = new ArrayList (); } - public ArrayList disliked { get; set; default = new ArrayList (); } - } -} diff --git a/src/client/meson.build b/src/client/meson.build index 6cdfe7d..d527055 100644 --- a/src/client/meson.build +++ b/src/client/meson.build @@ -27,8 +27,7 @@ cassette_client_sources = files( 'api/objects/play.vala', 'api/objects/track_short.vala', 'api/objects/download_info.vala', - 'api/objects/likes_data/likes_data.vala', - 'api/objects/likes_data/likes_block.vala', + 'api/objects/library_data.vala', 'api/objects/account_info/account_info.vala', 'api/objects/account_info/avatar_info.vala', 'api/objects/account_info/passport_phone.vala', From 6a85a681e5f00dfae8b3efc925d9eb40f243151f Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 09:00:26 +0300 Subject: [PATCH 138/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=84=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D1=8E=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D0=B4=D0=B5=D1=81=D0=B5=D1=80=D0=B8=D0=B0?= =?UTF-8?q?=D0=BB=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D0=B8=20=D1=81=D0=BF=D0=B8?= =?UTF-8?q?=D1=81=D0=BA=D0=B0=20id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/jsoner.vala | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 73a04a8..3131cd4 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -206,6 +206,45 @@ namespace CassetteClient { // Deserialize // /////////////////// + public YaMAPI.LibraryData deserialize_lib_data () throws ClientError { + var lib_data = new YaMAPI.LibraryData (); + + var node = root; + + if (node.get_node_type () != Json.NodeType.OBJECT) { + Logger.warning (_("Wrong type: expected %s, got %s").printf (Json.NodeType.OBJECT.to_string (), node.get_node_type ().to_string ())); + throw new ClientError.PARSE_ERROR ("Node isn't object"); + } + + var ld_obj = node.get_object (); + + foreach (var ld_type_name in ld_obj.get_members ()) { + var ld_type_obj = ld_obj.get_member (ld_type_name).get_object (); + + if (ld_type_name == "defaultLibrary") { + foreach (var ld_val_name in ld_type_obj.get_members ()) { + if (ld_type_obj.get_int_member (ld_val_name) == 1) { + lib_data.liked_tracks.add (ld_val_name); + } else { + lib_data.disliked_tracks.add (ld_val_name); + } + } + + } else { + var tval = Value (); + lib_data.get_property (camel2kebab (ld_type_name), ref tval); + + var lb = (Gee.ArrayList) tval.get_object (); + + foreach (var ld_val_name in ld_type_obj.get_members ()) { + lb.add (ld_val_name); + } + } + } + + return lib_data; + } + public YaMObject? deserialize_object (GLib.Type obj_type, Json.Node? node = null) throws ClientError { if (node == null) { node = root; From 3e470c017777bca8525af8553b94463d1df3031e Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 09:01:26 +0300 Subject: [PATCH 139/854] -_- --- src/client/jsoner.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 3131cd4..4079862 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -231,7 +231,7 @@ namespace CassetteClient { } } else { - var tval = Value (); + var tval = Value (Type.OBJECT); lib_data.get_property (camel2kebab (ld_type_name), ref tval); var lb = (Gee.ArrayList) tval.get_object (); From 02c61b3ab6782d3a982602d7f7bd2058708d46f5 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 09:11:39 +0300 Subject: [PATCH 140/854] =?UTF-8?q?=D0=92=D1=8B=D0=BD=D0=B5=D1=81=D1=82?= =?UTF-8?q?=D0=B8=20=D0=BF=D0=BE=D0=BB=D1=83=D1=87=D0=B5=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=20"=D0=A1=D0=B5=D0=B9=D1=87=D0=B0=D1=81=20=D0=B2=20=D0=BE?= =?UTF-8?q?=D1=82=D0=B4=D0=B5=D0=BB=D1=8C=D0=BD=D1=83=D1=8E=20=D1=84=D1=83?= =?UTF-8?q?=D0=BD=D0=BA=D1=86=D0=B8=D1=8E"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/utils.vala | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/client/utils.vala b/src/client/utils.vala index 810e134..9c3e96a 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -59,6 +59,10 @@ namespace CassetteClient { return language; } + public static string get_timestamp () { + return new DateTime.now_utc ().format_iso8601 (); + } + public static void init (string application_id, bool is_devel) { cachier = new Cachier.Cachier (); storager = new Cachier.Storager (application_id); From e1ed8c087c4cc45457ada65f0c4c378cc0975da9 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 09:12:00 +0300 Subject: [PATCH 141/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BD=D0=BE=D0=B2=D0=BE=D0=B5=20=D0=B7=D0=BD?= =?UTF-8?q?=D0=B0=D1=87=D0=B5=D0=BD=D0=B8=D0=B5=20=D1=84=D0=B8=D0=B4=D0=B1?= =?UTF-8?q?=D0=B5=D0=BA=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/utils.vala | 1 + 1 file changed, 1 insertion(+) diff --git a/src/client/utils.vala b/src/client/utils.vala index 9c3e96a..ac97d3a 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -25,6 +25,7 @@ namespace CassetteClient { namespace FeedbackType { public const string STARTED = "radioStarted"; public const string TRACK_STARTED = "trackStarted"; + public const string SKIP = "skip"; public const string TRACK_FINISHED = "trackFinished"; public const string FINISHED = "trackFinished"; } From 357ca6ab478d9859dc55608ced35544686a988ab Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 09:12:20 +0300 Subject: [PATCH 142/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BD=D0=BE=D0=B2=D1=8B=D0=B9=20=D1=82=D0=B8?= =?UTF-8?q?=D0=BF=20=D1=81=D1=82=D0=B0=D0=BD=D1=86=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/utils.vala | 1 + 1 file changed, 1 insertion(+) diff --git a/src/client/utils.vala b/src/client/utils.vala index ac97d3a..c4aa723 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -32,6 +32,7 @@ namespace CassetteClient { namespace StationType { public const string ON_YOUR_WAVE = "user:onyourwave"; + public const string COLLECTION = "personal:collection"; } } From 954a1f664cf924ecf859e3ac28253e54fd789901 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 09:12:53 +0300 Subject: [PATCH 143/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BD=D0=BE=D0=B2=D1=8B=D0=B5=20=D1=8D=D0=BD?= =?UTF-8?q?=D0=B4=D0=BF=D0=BE=D0=B9=D0=BD=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/yam_client.vala | 44 ++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 3015215..4d45e83 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -633,6 +633,31 @@ namespace CassetteClient.YaMAPI { // Radio // /////////// + public Dashboard get_rotor_dashboard () throws ClientError, BadStatusCodeError { + var bytes = soup_wrapper.get_sync ( + @"$(YAM_BASE_URL)/rotor/stations/dashboard", + {"default", "device"}, + {{"language", get_language ()}} + ); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + + return (Dashboard) jsoner.deserialize_object (typeof (Dashboard)); + } + + public Gee.ArrayList get_station_list () throws ClientError, BadStatusCodeError { + var bytes = soup_wrapper.get_sync ( + @"$(YAM_BASE_URL)/rotor/stations/list", + {"default", "device"}, + {{"language", get_language ()}} + ); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + + var our_array = new Gee.ArrayList (); + jsoner.deserialize_array (ref our_array); + + return our_array; + } + public StationInfo get_rotor_info ( string station_type ) throws ClientError, BadStatusCodeError { @@ -744,5 +769,24 @@ namespace CassetteClient.YaMAPI { return (StationTracks) jsoner.deserialize_object (typeof (StationTracks)); } + + ///////// + // New // + ///////// + + public LibraryData library_all_ids () throws ClientError, BadStatusCodeError { + /* + Получение id треков пользователя + */ + + var bytes = soup_wrapper.get_sync ( + @"$(YAM_BASE_URL)/library/all-ids", + {"default"} + ); + + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + + return jsoner.deserialize_lib_data (); + } } } From 37d6c661827ba00f50bdf7e81a68604d1577a4c8 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 09:13:24 +0300 Subject: [PATCH 144/854] ;) --- src/widgets/views/devel_view.vala | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/src/widgets/views/devel_view.vala b/src/widgets/views/devel_view.vala index c405acc..8fdc1d9 100644 --- a/src/widgets/views/devel_view.vala +++ b/src/widgets/views/devel_view.vala @@ -32,13 +32,30 @@ namespace Cassette { void on_ultra_button_clicked () { var client = yam_talker.client; - var a = client.get_rotor_info (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); - client.rotor_feedback_started (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); - var tra = client.get_station_tracks (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); + // var a = client.get_rotor_info (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); + // client.rotor_feedback_started (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); + // var tra = client.get_station_tracks (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); - foreach (var seq in tra.sequence) { - message (seq.track.title); - } + // var n = client.get_rotor_dashboard (); + // foreach (var m in n.stations) { + // message (m.station.name); + // } + + // var c =client.get_station_list (); + // foreach (var k in c) { + // message (k.station.name); + // } + + // var tra = client.get_tracks ({"102553949", "111654151", "54261186"}); + + // foreach (var seq in tra) { + // message (seq.title); + // } + + var lib = client.library_all_ids (); + + message (lib.liked_tracks[0]); + message (lib.playlists[0]); } void set_values () { From f330b12b403758c90a53fc341a6b9cfc938b9fb3 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Tue, 20 Feb 2024 20:17:40 +0300 Subject: [PATCH 145/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5=D1=80=D0=B6=D0=BA?= =?UTF-8?q?=D1=83=20=D0=B8=D0=BD=D1=8B=D1=85=20=D0=BE=D1=82=20kebab-case?= =?UTF-8?q?=20=D0=BD=D0=B5=D0=B9=D0=BC=20=D0=BA=D0=B5=D0=B9=D1=81=D0=BE?= =?UTF-8?q?=D0=B2=20=D0=BF=D1=80=D0=B8=20=D1=81=D0=B5=D1=80=D0=B8=D0=B0?= =?UTF-8?q?=D0=BB=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D0=B8=20=D0=BE=D0=B1=D1=8A?= =?UTF-8?q?=D0=B5=D0=BA=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/jsoner.vala | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 4079862..f974bb5 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -95,19 +95,19 @@ namespace CassetteClient { return generator.to_data (null); } - public static string serialize (YaMObject yam_obj) { + public static string serialize (YaMObject yam_obj, Case names_case = Case.KEBAB_CASE) { var builder = new Json.Builder (); - serialize_object (builder, yam_obj); + serialize_object (builder, yam_obj, names_case); return Json.to_string (builder.get_root (), false); } - static void serialize_array (Json.Builder builder, ArrayList array_list, Type element_type) { + static void serialize_array (Json.Builder builder, ArrayList array_list, Type element_type, Case names_case = Case.KEBAB_CASE) { builder.begin_array (); if (element_type.parent () == typeof (YaMObject)) { foreach (var yam_obj in (ArrayList) array_list) { - serialize_object (builder, yam_obj); + serialize_object (builder, yam_obj, names_case); } } else if (element_type == typeof (ArrayList)) { @@ -138,7 +138,7 @@ namespace CassetteClient { builder.end_array (); } - static void serialize_object (Json.Builder builder, YaMObject? yam_obj) { + static void serialize_object (Json.Builder builder, YaMObject? yam_obj, Case names_case = Case.KEBAB_CASE) { if (yam_obj == null) { builder.add_null_value (); return; @@ -150,7 +150,23 @@ namespace CassetteClient { continue; } - builder.set_member_name (strip (property.name, '-')); + switch (names_case) { + case Case.CAMEL_CASE: + builder.set_member_name (kebab2camel (strip (property.name, '-'))); + break; + + case Case.SNAKE_CASE: + builder.set_member_name (kebab2snake (strip (property.name, '-'))); + break; + + case Case.KEBAB_CASE: + builder.set_member_name (strip (property.name, '-')); + break; + + default: + Logger.error ("Unknown case - %s".printf (names_case.to_string ())); + assert_not_reached (); + } var prop_val = Value (property.value_type); yam_obj.get_property (property.name, ref prop_val); @@ -162,7 +178,7 @@ namespace CassetteClient { serialize_array (builder, array_list, element_type); } else if (property.value_type.parent () == typeof (YaMObject)) { - serialize_object (builder, (YaMObject) prop_val.get_object ()); + serialize_object (builder, (YaMObject) prop_val.get_object (), names_case); } else { serialize_value (builder, prop_val); } From fdde94f1c7331a37740691e30954ea7f3634b17e Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 21 Feb 2024 01:22:47 +0300 Subject: [PATCH 146/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=84=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D1=8E=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D0=B2=D1=8B=D1=87=D0=B8=D1=81=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D1=8F=20=D0=BA=D0=BE=D1=80=D0=BD=D1=8F=20=D1=82?= =?UTF-8?q?=D1=80=D0=B5=D1=82=D1=8C=D0=B5=D0=B9=20=D1=81=D1=82=D0=B5=D0=BF?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/utils.vala b/src/utils.vala index 6185470..69f732b 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -223,4 +223,30 @@ namespace Cassette { static double max (double a, double b) { return a > b ? a : b; } + + static double cube (double x) { + double low = 0.0; + double high = x; + double mid, approx, epsilon = 0.00001; // точность + + if (x < 0) { + // Обработка отрицательных чисел (для простоты примера) + // Можно добавить нужную логику обработки + warning("Error: Negative number"); + return -1.0; + } + + while (high - low > epsilon) { + mid = (low + high) / 2.0; + approx = mid * mid * mid; + + if (approx > x) { + high = mid; + } else { + low = mid; + } + } + + return (low + high) / 2.0; + } } From 70dec6ddcf5ced64a74c93167f2e9c33fd951818 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 21 Feb 2024 01:23:09 +0300 Subject: [PATCH 147/854] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20?= =?UTF-8?q?=D0=B1=D0=BB=D0=BE=D0=BA=D0=B8=D1=80=D0=BE=D0=B2=D0=BA=D1=83=20?= =?UTF-8?q?=D0=B2=D0=B8=D0=B4=D0=B6=D0=B5=D1=82=D0=BE=D0=B2=20=D0=B2=20dev?= =?UTF-8?q?el=20=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/utils.vala b/src/utils.vala index 69f732b..b1842a1 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -32,7 +32,9 @@ namespace Cassette { } public static void block_widget (Gtk.Widget widget, BlockReason reason) { - widget.sensitive = false; + if (!application.is_devel) { + widget.sensitive = false; + } switch (reason) { case BlockReason.NOT_IMPLEMENTED: From 3dfb8799af72570431780a34cb70161778a60a25 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 21 Feb 2024 03:29:32 +0300 Subject: [PATCH 148/854] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD?= =?UTF-8?q?=D0=B0=20=D1=84=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D1=8F=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D0=BF=D0=BE=D0=B8=D1=81=D0=BA=D0=B0=20=D0=BA?= =?UTF-8?q?=D1=83=D0=B1=D0=B8=D1=87=D0=B5=D1=81=D0=BA=D0=BE=D0=B3=D0=BE=20?= =?UTF-8?q?=D0=BA=D0=BE=D1=80=D0=BD=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/src/utils.vala b/src/utils.vala index b1842a1..a50f8e6 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -225,30 +225,4 @@ namespace Cassette { static double max (double a, double b) { return a > b ? a : b; } - - static double cube (double x) { - double low = 0.0; - double high = x; - double mid, approx, epsilon = 0.00001; // точность - - if (x < 0) { - // Обработка отрицательных чисел (для простоты примера) - // Можно добавить нужную логику обработки - warning("Error: Negative number"); - return -1.0; - } - - while (high - low > epsilon) { - mid = (low + high) / 2.0; - approx = mid * mid * mid; - - if (approx > x) { - high = mid; - } else { - low = mid; - } - } - - return (low + high) / 2.0; - } } From e40a28663f4a2e86b99b3a4221a473c215905e30 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 21 Feb 2024 03:29:54 +0300 Subject: [PATCH 149/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BB=D1=8E=D1=87=20=D0=BD=D0=B0=D1=81?= =?UTF-8?q?=D1=82=D1=80=D0=BE=D0=B5=D0=BA=20mute?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/io.github.Rirusha.Cassette.gschema.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/data/io.github.Rirusha.Cassette.gschema.xml b/data/io.github.Rirusha.Cassette.gschema.xml index 73a2967..a6f45b7 100644 --- a/data/io.github.Rirusha.Cassette.gschema.xml +++ b/data/io.github.Rirusha.Cassette.gschema.xml @@ -39,7 +39,10 @@ false - 0.1 + 1.0 + + + false false From 6cdc18614b9735a67bc6dd4e7f4352658bb15e00 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 21 Feb 2024 03:37:55 +0300 Subject: [PATCH 150/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BB=D0=B8=D0=BD=D0=BA=D0=BE=D0=B2=D0=BA=D1=83?= =?UTF-8?q?=20math=20=D0=B1=D0=B8=D0=B1=D0=BB=D0=B8=D0=BE=D1=82=D0=B5?= =?UTF-8?q?=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/meson.build | 1 + 1 file changed, 1 insertion(+) diff --git a/src/meson.build b/src/meson.build index a2e812b..7f90d15 100644 --- a/src/meson.build +++ b/src/meson.build @@ -98,6 +98,7 @@ executable( include_directories: config_h_dir, vala_args: cassette_vala_args, c_args: cassette_c_args, + link_args: ['-lm'], dependencies: cassette_dependencies, install: true, ) \ No newline at end of file From 50e52edcfa00279e98c1a0f54d5e05f6d6701058 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Wed, 21 Feb 2024 03:39:11 +0300 Subject: [PATCH 151/854] =?UTF-8?q?=D0=92=D1=8B=D1=80=D0=BE=D0=B2=D0=BD?= =?UTF-8?q?=D1=8F=D1=82=D1=8C=20=D0=B7=D0=B2=D1=83=D0=BA,=20=D0=B8=20?= =?UTF-8?q?=D0=B8=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D1=82=D1=8C=20=D1=80?= =?UTF-8?q?=D0=B0=D0=B7=D0=BB=D0=B8=D1=87=D0=BD=D1=8B=D0=B5=20=D0=BD=D0=B5?= =?UTF-8?q?=D0=B4=D0=BE=D1=87=D1=91=D1=82=D1=8B=20=D0=B2=20=D1=80=D0=B0?= =?UTF-8?q?=D0=B1=D0=BE=D1=82=D0=B5=20=D0=BA=D0=BD=D0=BE=D0=BF=D0=BA=D0=B8?= =?UTF-8?q?=20=D1=83=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F?= =?UTF-8?q?=20=D0=B3=D1=80=D0=BE=D0=BC=D0=BA=D0=BE=D1=81=D1=82=D0=B8.=20?= =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D1=82=D1=8C=20=D0=BE=D1=82?= =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=BA=D1=83=20=D0=B3=D1=80=D0=BE=D0=BC?= =?UTF-8?q?=D0=BA=D0=BE=D1=81=D1=82=D0=B8=20=D0=B2=20mpris?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/ui/volume_button.blp | 4 +- src/client/player/mpris.vala | 12 ++++- src/client/player/player.vala | 20 ++++---- src/widgets/player_bar.vala | 3 +- src/widgets/volume_button.vala | 88 +++++++++++++++++++++------------- 5 files changed, 76 insertions(+), 51 deletions(-) diff --git a/data/ui/volume_button.blp b/data/ui/volume_button.blp index 8def7d1..e2c2c66 100644 --- a/data/ui/volume_button.blp +++ b/data/ui/volume_button.blp @@ -49,9 +49,9 @@ Popover popover { adjustment: Adjustment { lower: 0.0; - value: 0.0; + value: 100.0; upper: 100.0; - page-increment: 10.0; + step-increment: 5.0; }; } diff --git a/src/client/player/mpris.vala b/src/client/player/mpris.vala index 4b77a6a..e6527e8 100644 --- a/src/client/player/mpris.vala +++ b/src/client/player/mpris.vala @@ -98,7 +98,15 @@ namespace CassetteClient.Mpris { return player.playback_pos_ms; } } - public double volume { get; set; } + + public double volume { + get { + return storager.settings.get_double ("volume"); + } + set { + send_property_change ("Volume", value); + } + } public signal void seeked (int64 position); @@ -114,7 +122,7 @@ namespace CassetteClient.Mpris { player.current_track_start_loading.connect (send_can_properties); player.current_track_finish_loading.connect (send_can_properties); - bind_property ("volume", player, "volume", BindingFlags.BIDIRECTIONAL); + storager.settings.bind ("volume", this, "volume", SettingsBindFlags.DEFAULT); player.playback_callback.connect ((position) => { seeked ((int64) position); diff --git a/src/client/player/player.vala b/src/client/player/player.vala index 7fa0108..225136b 100644 --- a/src/client/player/player.vala +++ b/src/client/player/player.vala @@ -129,18 +129,8 @@ namespace CassetteClient.Player { } } - public double volume { - get { - Value val = Value (Type.DOUBLE); - - playbin.get_property ("volume", ref val); - - return val.get_double (); - } - set { - playbin.set_property ("volume", value); - } - } + public double volume { get; set; } + public bool mute { get; set; } public double playback_pos_sec { get { @@ -246,6 +236,12 @@ namespace CassetteClient.Player { is_loading = false; }); + bind_property ("volume", playbin, "volume", BindingFlags.BIDIRECTIONAL | BindingFlags.SYNC_CREATE); + storager.settings.bind ("volume", this, "volume", SettingsBindFlags.DEFAULT); + + bind_property ("mute", playbin, "mute", BindingFlags.BIDIRECTIONAL | BindingFlags.SYNC_CREATE); + storager.settings.bind ("mute", this, "mute", SettingsBindFlags.DEFAULT); + Timeout.add ((int) (PLAY_STEP * 1000), () => { if (playback_pos_sec > 0.0) { playback_callback (playback_pos_sec); diff --git a/src/widgets/player_bar.vala b/src/widgets/player_bar.vala index 448944b..7fa789f 100644 --- a/src/widgets/player_bar.vala +++ b/src/widgets/player_bar.vala @@ -97,9 +97,8 @@ namespace Cassette { carousel.page_changed.connect (on_carousel_page_changed); - volume_button.bind_property ("volume", player, "volume", BindingFlags.BIDIRECTIONAL); - storager.settings.bind ("volume", volume_button, "volume", SettingsBindFlags.DEFAULT); + storager.settings.bind ("mute", volume_button, "mute", SettingsBindFlags.DEFAULT); slider.change_value.connect ((scroll_type, new_value) => { player.seek ((int) (new_value * 1000)); diff --git a/src/widgets/volume_button.vala b/src/widgets/volume_button.vala index 2a7def3..02a5455 100644 --- a/src/widgets/volume_button.vala +++ b/src/widgets/volume_button.vala @@ -32,67 +32,89 @@ namespace Cassette { [GtkChild] unowned Gtk.Scale volume_level_scale; - double _volume = 0.0; + double _volume; public double volume { get { return _volume; } set { - if (value < volume_lower) { - value = volume_lower; - } else if (value > volume_upper) { - value = volume_upper; - } - - volume_inc_button.sensitive = value != volume_upper; - volume_dec_button.sensitive = value != volume_lower; - - if (value == volume_lower) { - real_menu_button.icon_name = "adwaita-audio-volume-muted-symbolic"; - } else if (value < volume_upper * 0.45) { - real_menu_button.icon_name = "adwaita-audio-volume-low-symbolic"; - } else if (value < volume_upper * 0.9) { - real_menu_button.icon_name = "adwaita-audio-volume-medium-symbolic"; - } else { - real_menu_button.icon_name = "adwaita-audio-volume-high-symbolic"; - } - - volume_level_scale.set_value (value / MUL); - _volume = value; + + mute = false; + + volume_level_scale.set_value (Math.pow (_volume, 1.0 / 3.0) / MUL); + + check_button_sensetivity (); } } - const double MUL = 0.001; + bool _mute; + public bool mute { + get { + return _mute; + } + set { + _mute = value; + + check_icon (); + } + } + + const double MUL = 0.01; double volume_upper; double volume_lower; double volume_step; - public VolumeButton () { - Object (); - } - construct { equalaizer_button.bind_property ("active", revealer, "reveal-child", BindingFlags.DEFAULT); block_widget (equalaizer_button, BlockReason.NOT_IMPLEMENTED); + volume_level_scale.change_value.connect ((range, type, new_val) => { + var val = new_val * MUL; + + volume = Math.pow (val, 3.0); + + return true; + }); + volume_upper = volume_level_scale.adjustment.upper * MUL; volume_lower = volume_level_scale.adjustment.lower * MUL; - volume_step = volume_level_scale.adjustment.page_increment * MUL; + volume_step = volume_level_scale.adjustment.step_increment * MUL; volume_inc_button.clicked.connect (() => { - volume += volume_step; + if (volume + volume_step > volume_upper) { + volume = volume_upper; + } else { + volume += volume_step; + } }); volume_dec_button.clicked.connect (() => { - volume -= volume_step; + if (volume - volume_step < volume_lower) { + volume = volume_lower; + } else { + volume -= volume_step; + } }); + } - volume_level_scale.change_value.connect ((scroll, new_value) => { - volume = new_value * MUL; - }); + void check_button_sensetivity () { + volume_inc_button.sensitive = volume < volume_upper; + volume_dec_button.sensitive = volume > volume_lower; + } + + void check_icon () { + if (volume == volume_lower || mute) { + real_menu_button.icon_name = "adwaita-audio-volume-muted-symbolic"; + } else if (volume < 0.025) { + real_menu_button.icon_name = "adwaita-audio-volume-low-symbolic"; + } else if (volume < 0.35) { + real_menu_button.icon_name = "adwaita-audio-volume-medium-symbolic"; + } else { + real_menu_button.icon_name = "adwaita-audio-volume-high-symbolic"; + } } } } From 927d24650a98456056a7f9fb8c7fe80cf974bd1a Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 03:37:17 +0300 Subject: [PATCH 152/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=82=D0=B8=D0=BF=20=D1=81=D0=B2=D0=BE=D0=B9?= =?UTF-8?q?=D1=81=D1=82=D0=B2=D0=B0=20oid=20=D0=B8=D0=BD=D1=82=D0=B5=D1=80?= =?UTF-8?q?=D1=84=D0=B5=D0=B9=D1=81=D0=B0=20CassetteClient.HasId?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/objects/account_info/account_info.vala | 2 +- src/client/api/objects/additional_info/similar_tracks.vala | 4 ++-- src/client/api/objects/album/album.vala | 2 +- src/client/api/objects/artist/artist.vala | 2 +- src/client/api/objects/playlist/playlist.vala | 2 +- src/client/api/objects/track_heap.vala | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/client/api/objects/account_info/account_info.vala b/src/client/api/objects/account_info/account_info.vala index 8aeedb9..ac29874 100644 --- a/src/client/api/objects/account_info/account_info.vala +++ b/src/client/api/objects/account_info/account_info.vala @@ -21,7 +21,7 @@ namespace CassetteClient.YaMAPI { public class AccountInfo : YaMObject, HasID, HasCover { - public string? oid { + public string oid { owned get { return account.uid; } diff --git a/src/client/api/objects/additional_info/similar_tracks.vala b/src/client/api/objects/additional_info/similar_tracks.vala index 115cfa3..0272d15 100644 --- a/src/client/api/objects/additional_info/similar_tracks.vala +++ b/src/client/api/objects/additional_info/similar_tracks.vala @@ -20,9 +20,9 @@ using Gee; namespace CassetteClient.YaMAPI { public class SimilarTracks : YaMObject, HasID, HasTrackList { - public string? oid { + public string oid { owned get { - return null; + return ""; } } diff --git a/src/client/api/objects/album/album.vala b/src/client/api/objects/album/album.vala index 7b12e40..32cdaf7 100644 --- a/src/client/api/objects/album/album.vala +++ b/src/client/api/objects/album/album.vala @@ -20,7 +20,7 @@ using Gee; namespace CassetteClient.YaMAPI { public class Album : YaMObject, HasID { - public string? oid { + public string oid { owned get { return id; } diff --git a/src/client/api/objects/artist/artist.vala b/src/client/api/objects/artist/artist.vala index 196ed2b..3a1024f 100644 --- a/src/client/api/objects/artist/artist.vala +++ b/src/client/api/objects/artist/artist.vala @@ -20,7 +20,7 @@ using Gee; namespace CassetteClient.YaMAPI { public class Artist : YaMObject, HasID { - public string? oid { + public string oid { owned get { return id; } diff --git a/src/client/api/objects/playlist/playlist.vala b/src/client/api/objects/playlist/playlist.vala index 2c63cbf..88faba1 100644 --- a/src/client/api/objects/playlist/playlist.vala +++ b/src/client/api/objects/playlist/playlist.vala @@ -31,7 +31,7 @@ namespace CassetteClient.YaMAPI { } } - public string? oid { + public string oid { owned get { return @"$uid:$kind"; } diff --git a/src/client/api/objects/track_heap.vala b/src/client/api/objects/track_heap.vala index 98ccf19..3ebb872 100644 --- a/src/client/api/objects/track_heap.vala +++ b/src/client/api/objects/track_heap.vala @@ -20,7 +20,7 @@ using Gee; namespace CassetteClient.YaMAPI { public class TrackHeap : YaMObject, HasID, HasTrackList { - public string? oid { + public string oid { owned get { return ""; } From 017a0884c2d4ac201afc0a7bf91d1f59a17dea71 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 03:38:06 +0300 Subject: [PATCH 153/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=82=D0=B8=D0=BF=20=D1=81=D0=B2=D0=BE=D0=B9?= =?UTF-8?q?=D1=81=D1=82=D0=B2=D0=B0=20id=20=D0=BA=D0=BB=D0=B0=D1=81=D1=81?= =?UTF-8?q?=D0=B0=20CassetteCLient.YaMAPI.Artist?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/objects/artist/artist.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client/api/objects/artist/artist.vala b/src/client/api/objects/artist/artist.vala index 3a1024f..e25a2de 100644 --- a/src/client/api/objects/artist/artist.vala +++ b/src/client/api/objects/artist/artist.vala @@ -26,7 +26,7 @@ namespace CassetteClient.YaMAPI { } } - public string? id { get; set; } + public string id { get; set; } public string? reason { get; set; } public string? name { get; set; } public Cover cover { get; set; } From a682401965575f57e85e7f03ec9823e5c7b8e024 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 03:39:05 +0300 Subject: [PATCH 154/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/yam_object.vala | 41 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/src/client/yam_object.vala b/src/client/yam_object.vala index 0afbbc9..b221b3e 100644 --- a/src/client/yam_object.vala +++ b/src/client/yam_object.vala @@ -19,18 +19,55 @@ namespace CassetteClient { public delegate void ObjectChangedFunc (YaMObject yam_obj); + /** + * Интерфейс объектов, имеющих уникальный идентификатор. + * Существует, так как, например + * CassetteClient.YaMAPI.Playlist имеют составной id, разделенный + * на свойства uid и kind + */ public interface HasID : YaMObject { - public abstract string? oid { owned get; } + /** + * Уникальный идентификатор объекта + */ + public abstract string oid { owned get; } } + /** + * Интерфейс объектов, имеющих обложку. + */ public interface HasCover : YaMObject { + /** + * Получение списка изображений, которые входят в обложку. + * + * @param size размер изображений в частности + * + * @return список изображений, которые входят в обложку + */ public abstract Gee.ArrayList get_cover_items_by_size (int size); } + /** + * Интерфейс объектов, имеющих список треков. + */ public interface HasTrackList : YaMObject, HasID { + /** + * Получение отфильтрованного по переданным параметрам списка треков. + * Функция также не включает в список недоступные треки. + * + * @param show_explicit включать треки, непредназначенные для несовершеннолетних + * @param show_child включать детские треки + * @param exception_track_id id трека, на который фильтрация работать не будет. + * Нужно в случае включения трека из результатов поиска внутри списка треков, + * который не виден пользоваетлю вне поиска. + * + * @return отфильтрованный список треков + */ public abstract Gee.ArrayList get_filtered_track_list (bool show_explicit, bool show_child, string? exception_track_id = null); } - // Класс, от которого наследуются все ямобъекты. Функционал на будущее + /** + * Абстрактный класс, от которого наследуются все ямобъекты. + * Функционал на будущее + */ public abstract class YaMObject : Object { } } From 73fece4df78eec71e6a95b25ea9fb8466da7b038 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 03:44:59 +0300 Subject: [PATCH 155/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=B8=D0=BC=D0=B5=D0=BD=D0=B0=20=D1=8D=D0=BB?= =?UTF-8?q?=D0=B5=D0=BC=D0=B5=D0=BD=D1=82=D0=BE=D0=B2=20=D0=BF=D0=B5=D1=80?= =?UTF-8?q?=D0=B5=D1=87=D0=B8=D1=81=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F=20Casset?= =?UTF-8?q?teClient.Case=20=D0=B4=D0=BB=D1=8F=20=D0=B8=D0=B7=D0=B1=D0=B5?= =?UTF-8?q?=D0=B3=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=BF=D0=BE=D0=B2=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B5=D0=BD=D0=B8=D1=8F=20=D1=81=D0=BB=D0=BE=D0=B2=D0=B0?= =?UTF-8?q?=20case?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/yam_client.vala | 68 +++++++++++++++++----------------- src/client/jsoner.vala | 30 +++++++-------- src/client/soup_wrapper.vala | 4 +- 3 files changed, 51 insertions(+), 51 deletions(-) diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 4d45e83..446f257 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -64,7 +64,7 @@ namespace CassetteClient.YaMAPI { null, post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"access_token"}, Case.SNAKE_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"access_token"}, Case.SNAKE); string token = jsoner.deserialize_value ().get_string (); @@ -112,7 +112,7 @@ namespace CassetteClient.YaMAPI { @"$(YAM_BASE_URL)/account/status", {"default"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); me = (AccountInfo) jsoner.deserialize_object (typeof (AccountInfo)); @@ -122,7 +122,7 @@ namespace CassetteClient.YaMAPI { {{"format", "json"}}, {{"Host", "login.yandex.ru"}} ); - jsoner = Jsoner.from_bytes (bytes, null, Case.SNAKE_CASE); + jsoner = Jsoner.from_bytes (bytes, null, Case.SNAKE); me.avatar_info = (AvatarInfo) jsoner.deserialize_object (typeof (AvatarInfo)); @@ -136,7 +136,7 @@ namespace CassetteClient.YaMAPI { @"$(YAM_BASE_URL)/users/$uid/playlists/$kind", {"default"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return (Playlist) jsoner.deserialize_object (typeof (Playlist)); } @@ -157,7 +157,7 @@ namespace CassetteClient.YaMAPI { {"default"}, post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); var array_list = new Gee.ArrayList (); jsoner.deserialize_array (ref array_list); @@ -169,7 +169,7 @@ namespace CassetteClient.YaMAPI { @"$(YAM_BASE_URL)/queues", {"default", "device"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result", "queues"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result", "queues"}, Case.CAMEL); var queue_list = new Gee.ArrayList (); jsoner.deserialize_array (ref queue_list); @@ -181,7 +181,7 @@ namespace CassetteClient.YaMAPI { @"$(YAM_BASE_URL)/queues/$queue_id", {"default"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); Queue queue = (Queue) jsoner.deserialize_object (typeof (Queue)); @@ -195,7 +195,7 @@ namespace CassetteClient.YaMAPI { {PostContentType.JSON, queue.to_json ()} ); - var jsoner = Jsoner.from_bytes (bytes, {"result", "id"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result", "id"}, Case.CAMEL); var val_id = jsoner.deserialize_value (); if (val_id == null || !val_id.holds (Type.STRING)) { @@ -216,7 +216,7 @@ namespace CassetteClient.YaMAPI { } ); - var jsoner = Jsoner.from_bytes (bytes, {"result", "status"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result", "status"}, Case.CAMEL); string res = jsoner.deserialize_value ().get_string (); if (res != "ok") { @@ -260,7 +260,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); string res = jsoner.deserialize_value ().get_string (); if (res != "ok") { @@ -270,7 +270,7 @@ namespace CassetteClient.YaMAPI { public string? get_download_uri (string track_id, bool hq = true) throws ClientError, BadStatusCodeError { Bytes bytes = soup_wrapper.get_sync (@"$(YAM_BASE_URL)/tracks/$track_id/download-info", {"default"}); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); var di_array = new Gee.ArrayList (); jsoner.deserialize_array (ref di_array); @@ -331,7 +331,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); if (jsoner.root != null) { return true; } @@ -354,7 +354,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); if (jsoner.root != null) { return true; } @@ -377,7 +377,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); if (jsoner.root != null) { return true; } @@ -400,7 +400,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); if (jsoner.root != null) { return true; } @@ -414,7 +414,7 @@ namespace CassetteClient.YaMAPI { @"$(YAM_BASE_URL)/users/$uid/playlists/list", {"default"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); var playlist_array = new Gee.ArrayList (); jsoner.deserialize_array (ref playlist_array); @@ -431,7 +431,7 @@ namespace CassetteClient.YaMAPI { @"$(YAM_BASE_URL)/users/$uid/likes/playlists", {"default"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); var playlist_array = new Gee.ArrayList (); jsoner.deserialize_array (ref playlist_array); @@ -443,7 +443,7 @@ namespace CassetteClient.YaMAPI { @"$(YAM_BASE_URL)/tracks/$track_id/similar", {"default"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return (SimilarTracks) jsoner.deserialize_object (typeof (SimilarTracks)); } @@ -469,7 +469,7 @@ namespace CassetteClient.YaMAPI { {"sign", sign} } ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); var lyrics = (Lyrics) jsoner.deserialize_object (typeof (Lyrics)); lyrics.is_sync = is_sync; @@ -499,7 +499,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return (Playlist) jsoner.deserialize_object (typeof (Playlist)); } @@ -523,7 +523,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return (Playlist) jsoner.deserialize_object (typeof (Playlist)); } @@ -548,7 +548,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return (Playlist) jsoner.deserialize_object (typeof (Playlist)); } @@ -564,7 +564,7 @@ namespace CassetteClient.YaMAPI { {"default"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); if (jsoner.root != null) { return true; } @@ -590,7 +590,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return (Playlist) jsoner.deserialize_object (typeof (Playlist)); } @@ -605,7 +605,7 @@ namespace CassetteClient.YaMAPI { @"$(YAM_BASE_URL)/users/$uid/playlists/$kind/recommendations", {"default"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return (PlaylistRecommendations) jsoner.deserialize_object (typeof (PlaylistRecommendations)); } @@ -621,7 +621,7 @@ namespace CassetteClient.YaMAPI { {"default"}, {{"if_modified_since_revision", if_modified_since_revision.to_string ()}} ); - var jsoner = Jsoner.from_bytes (bytes, {"result", "library", "tracks"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result", "library", "tracks"}, Case.CAMEL); var our_array = new Gee.ArrayList (); jsoner.deserialize_array (ref our_array); @@ -639,7 +639,7 @@ namespace CassetteClient.YaMAPI { {"default", "device"}, {{"language", get_language ()}} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return (Dashboard) jsoner.deserialize_object (typeof (Dashboard)); } @@ -650,7 +650,7 @@ namespace CassetteClient.YaMAPI { {"default", "device"}, {{"language", get_language ()}} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); var our_array = new Gee.ArrayList (); jsoner.deserialize_array (ref our_array); @@ -665,7 +665,7 @@ namespace CassetteClient.YaMAPI { @"$(YAM_BASE_URL)/rotor/station/$station_type/info", {"default", "device"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); var our_array = new Gee.ArrayList (); jsoner.deserialize_array (ref our_array); @@ -694,7 +694,7 @@ namespace CassetteClient.YaMAPI { post_content ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); if (jsoner.root != null) { return true; } @@ -721,7 +721,7 @@ namespace CassetteClient.YaMAPI { {{"batch-id", batch_id}} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); if (jsoner.root != null) { return true; } @@ -750,7 +750,7 @@ namespace CassetteClient.YaMAPI { {{"batch-id", batch_id}} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); if (jsoner.root != null) { return true; } @@ -765,7 +765,7 @@ namespace CassetteClient.YaMAPI { {"default", "device"}, {{"settings2", "true"}} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return (StationTracks) jsoner.deserialize_object (typeof (StationTracks)); } @@ -784,7 +784,7 @@ namespace CassetteClient.YaMAPI { {"default"} ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); return jsoner.deserialize_lib_data (); } diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index f974bb5..0f22f6d 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -21,9 +21,9 @@ using Gee; namespace CassetteClient { public enum Case { - SNAKE_CASE, - KEBAB_CASE, - CAMEL_CASE + SNAKE, + KEBAB, + CAMEL } // Класс для сериализации и десериализации YaMObject'ов @@ -32,7 +32,7 @@ namespace CassetteClient { public Case names_case { get; construct; } public Json.Node root { get; construct; } - public Jsoner (string json_string, string[]? sub_members = null, Case names_case = Case.KEBAB_CASE) throws ClientError { + public Jsoner (string json_string, string[]? sub_members = null, Case names_case = Case.KEBAB) throws ClientError { Json.Node? node; try { node = Json.from_string (json_string); @@ -51,11 +51,11 @@ namespace CassetteClient { Object (root: node, names_case: names_case); } - public static Jsoner from_bytes (Bytes bytes, string[]? sub_members = null, Case names_case = Case.KEBAB_CASE) throws ClientError { + public static Jsoner from_bytes (Bytes bytes, string[]? sub_members = null, Case names_case = Case.KEBAB) throws ClientError { return new Jsoner ((string) bytes.get_data (), sub_members, names_case); } - public static Jsoner from_data (uint8[] data, string[]? sub_members = null, Case names_case = Case.KEBAB_CASE) throws ClientError { + public static Jsoner from_data (uint8[] data, string[]? sub_members = null, Case names_case = Case.KEBAB) throws ClientError { return new Jsoner ((string) data, sub_members, names_case); } @@ -95,14 +95,14 @@ namespace CassetteClient { return generator.to_data (null); } - public static string serialize (YaMObject yam_obj, Case names_case = Case.KEBAB_CASE) { + public static string serialize (YaMObject yam_obj, Case names_case = Case.KEBAB) { var builder = new Json.Builder (); serialize_object (builder, yam_obj, names_case); return Json.to_string (builder.get_root (), false); } - static void serialize_array (Json.Builder builder, ArrayList array_list, Type element_type, Case names_case = Case.KEBAB_CASE) { + static void serialize_array (Json.Builder builder, ArrayList array_list, Type element_type, Case names_case = Case.KEBAB) { builder.begin_array (); if (element_type.parent () == typeof (YaMObject)) { @@ -138,7 +138,7 @@ namespace CassetteClient { builder.end_array (); } - static void serialize_object (Json.Builder builder, YaMObject? yam_obj, Case names_case = Case.KEBAB_CASE) { + static void serialize_object (Json.Builder builder, YaMObject? yam_obj, Case names_case = Case.KEBAB) { if (yam_obj == null) { builder.add_null_value (); return; @@ -151,15 +151,15 @@ namespace CassetteClient { } switch (names_case) { - case Case.CAMEL_CASE: + case Case.CAMEL: builder.set_member_name (kebab2camel (strip (property.name, '-'))); break; - case Case.SNAKE_CASE: + case Case.SNAKE: builder.set_member_name (kebab2snake (strip (property.name, '-'))); break; - case Case.KEBAB_CASE: + case Case.KEBAB: builder.set_member_name (strip (property.name, '-')); break; @@ -286,15 +286,15 @@ namespace CassetteClient { string member_name; switch (names_case) { - case Case.CAMEL_CASE: + case Case.CAMEL: member_name = kebab2camel (strip (property.name, '-')); break; - case Case.SNAKE_CASE: + case Case.SNAKE: member_name = kebab2snake (strip (property.name, '-')); break; - case Case.KEBAB_CASE: + case Case.KEBAB: member_name = strip (property.name, '-'); break; diff --git a/src/client/soup_wrapper.vala b/src/client/soup_wrapper.vala index e45d797..f339f42 100644 --- a/src/client/soup_wrapper.vala +++ b/src/client/soup_wrapper.vala @@ -237,11 +237,11 @@ namespace CassetteClient { YaMAPI.ApiError error = new YaMAPI.ApiError (); try { - var jsoner = Jsoner.from_bytes (bytes, {"error"}, Case.CAMEL_CASE); + var jsoner = Jsoner.from_bytes (bytes, {"error"}, Case.CAMEL); if (jsoner.root.get_node_type () == Json.NodeType.OBJECT) { error = (YaMAPI.ApiError) jsoner.deserialize_object (typeof (YaMAPI.ApiError)); } else { - jsoner = Jsoner.from_bytes (bytes, null, Case.SNAKE_CASE); + jsoner = Jsoner.from_bytes (bytes, null, Case.SNAKE); error = (YaMAPI.ApiError) jsoner.deserialize_object (typeof (YaMAPI.ApiError)); } } catch (ClientError e) { } From 5111f3cff8dbafa49905bc81fd09e95718283c55 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 03:51:22 +0300 Subject: [PATCH 156/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/yam_object.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client/yam_object.vala b/src/client/yam_object.vala index b221b3e..668c0ae 100644 --- a/src/client/yam_object.vala +++ b/src/client/yam_object.vala @@ -22,7 +22,7 @@ namespace CassetteClient { /** * Интерфейс объектов, имеющих уникальный идентификатор. * Существует, так как, например - * CassetteClient.YaMAPI.Playlist имеют составной id, разделенный + * ``CassetteClient.YaMAPI.Playlist`` имеют составной id, разделенный * на свойства uid и kind */ public interface HasID : YaMObject { From d67d948691c73605b1f83840902b4dad89dd1da7 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 04:42:07 +0300 Subject: [PATCH 157/854] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20?= =?UTF-8?q?=D0=BB=D0=B8=D1=88=D0=BD=D0=B8=D0=B5=20=D0=BF=D1=83=D1=81=D1=82?= =?UTF-8?q?=D1=8B=D0=B5=20=D1=81=D1=82=D1=80=D0=BE=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/jsoner.vala | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 0f22f6d..d8a356b 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -132,8 +132,6 @@ namespace CassetteClient { } break; } - - } builder.end_array (); } From a905e92c3e294fcf3276bc1b083c4426b9aea6b2 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 05:24:11 +0300 Subject: [PATCH 158/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/jsoner.vala | 129 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 128 insertions(+), 1 deletion(-) diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index d8a356b..310a860 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -20,18 +20,41 @@ using Gee; namespace CassetteClient { + /** + * Перечисление нейм кейсов. + */ public enum Case { SNAKE, KEBAB, CAMEL } - // Класс для сериализации и десериализации YaMObject'ов + /** + * Класс для сериализации и десериализации объектов ``CassetteClient.YaMObject``. + * Умеет работать с ``CassetteClient.YaMAPI.YaMObject``, ``Gee.ArrayList`` и ``GLib.Value`` + */ public class Jsoner : Object { + /** + * Нейм кейс для десериализации + */ public Case names_case { get; construct; } + + /** + * Корневая нода, получается после прохождения по названиям элементов json, + * указанных в sub_members конструктора + */ public Json.Node root { get; construct; } + /** + * Базовый конструктор класса. Выполняет инициализацию для десериализации. + * Принимает json строку. В случе ошибки при парсинге, + * выбрасывает ``CassetteCLient.ClientError.PARSE_ERROR`` + * + * @param json_string json строка + * @param sub_members массив имён элементов json, по которым нужно пройти до целевой ноды + * @param names_case нейм кейс имён элементов в json строке + */ public Jsoner (string json_string, string[]? sub_members = null, Case names_case = Case.KEBAB) throws ClientError { Json.Node? node; try { @@ -51,14 +74,41 @@ namespace CassetteClient { Object (root: node, names_case: names_case); } + /** + * Конструктор класса. Выполняет инициализацию для десериализации. + * Принимает json строку в виде байтов, объекта ``GLib.Bytes``. В случе ошибки при парсинге, + * выбрасывает ``CassetteCLient.ClientError.PARSE_ERROR`` + * + * @param bytes json строка в виде байтов, объекта ``GLib.Bytes`` + * @param sub_members массив имён элементов json, по которым нужно пройти до целевой ноды + * @param names_case нейм кейс имён элементов в json строке + */ public static Jsoner from_bytes (Bytes bytes, string[]? sub_members = null, Case names_case = Case.KEBAB) throws ClientError { return new Jsoner ((string) bytes.get_data (), sub_members, names_case); } + /** + * Конструктор класса. Выполняет инициализацию для десериализации. + * Принимает json строку в виде байтов, массива ``uint8``. В случе ошибки при парсинге, + * выбрасывает ``CassetteCLient.ClientError.PARSE_ERROR`` + * + * @param bytes json строка в виде байтов, массива ``uint8`` + * @param sub_members массив имён элементов json, по которым нужно пройти до целевой ноды + * @param names_case нейм кейс имён элементов в json строке + */ public static Jsoner from_data (uint8[] data, string[]? sub_members = null, Case names_case = Case.KEBAB) throws ClientError { return new Jsoner ((string) data, sub_members, names_case); } + /** + * Функция для выполнения перехода в переданной ноде по названиям элементов. + * В случае, если элемент не найден, будет выкинута ``CassetteClient.ClientError.PARSE_ERROR`` + * + * @param node исходная json нода + * @param sub_members массив "путь" имён элементов, по которому нужно пройти + * + * @return целевая json нода + */ static Json.Node? steps (Json.Node node, string[] sub_members) throws ClientError { string has_members = ""; @@ -77,6 +127,13 @@ namespace CassetteClient { // Serialize // ///////////////// + /** + * Функция для сериализации ``GLib.Datalist`` в json строку. + * + * @param datalist объект ``Glib.Datalist``, который нужно сериализовать + * + * @return json строка + */ public static string serialize_datalist (Datalist datalist) { var builder = new Json.Builder (); builder.begin_object (); @@ -95,6 +152,14 @@ namespace CassetteClient { return generator.to_data (null); } + /** + * Функция для сериализации ``YaMObject`` в json строку. + * + * @param datalist объект ``YaMObject``, который нужно сериализовать + * @param names_case нейм кейс имён элементов в json строке + * + * @return json строка + */ public static string serialize (YaMObject yam_obj, Case names_case = Case.KEBAB) { var builder = new Json.Builder (); serialize_object (builder, yam_obj, names_case); @@ -102,6 +167,21 @@ namespace CassetteClient { return Json.to_string (builder.get_root (), false); } + /** + * Функция для сериализации ``Gee.ArrayList``. + * Элементы списка могут быть: + * - ``CassetteClient.YaMObject`` + * - ``string`` + * - ``int32`` + * - ``int64`` + * - ``double`` + * - ``Gee.ArrayList`` + * + * @param builder объект ``Json.Builder`` + * @param array_list объект ``Gee.ArrayList``, который нужно сериализовать + * @param element_type тип элементов в array_list + * @param names_case нейм кейс имён элементов в json строке + */ static void serialize_array (Json.Builder builder, ArrayList array_list, Type element_type, Case names_case = Case.KEBAB) { builder.begin_array (); @@ -136,6 +216,14 @@ namespace CassetteClient { builder.end_array (); } + /** + * Функция для сериализации ``CassetteClient.YaMAPI.YaMObject`` или ``null``. + * + * @param builder объект ``Json.Builder`` + * @param yam_obj объект ``CassetteClient.YaMAPI.YaMObject``, который нужно сериализовать. + * Может быть ``null`` + * @param names_case нейм кейс имён элементов в json строке + */ static void serialize_object (Json.Builder builder, YaMObject? yam_obj, Case names_case = Case.KEBAB) { if (yam_obj == null) { builder.add_null_value (); @@ -184,6 +272,13 @@ namespace CassetteClient { builder.end_object (); } + /** + * Функция для сериализации ``GLib.Value`` или ``null``. + * + * @param builder объект ``Json.Builder`` + * @param prop_val значение базового типа, который нужно сериализовать. + * Может содержать ``null`` + */ static void serialize_value (Json.Builder builder, Value prop_val) { switch (prop_val.type ()) { case Type.INT: @@ -220,6 +315,13 @@ namespace CassetteClient { // Deserialize // /////////////////// + /** + * Метод для десериализации данных о библиотеке пользователя. + * Существует, так как API возвращает json, в котором вместо списков с id + * решили каждый элемент списка сделать отдельным элементом json объекта. + * + * @return десериализованный объект + */ public YaMAPI.LibraryData deserialize_lib_data () throws ClientError { var lib_data = new YaMAPI.LibraryData (); @@ -259,6 +361,15 @@ namespace CassetteClient { return lib_data; } + /** + * Метод для десериализации объекта ``CassetteClient.YaMAPI.YaMObject``. + * + * @param obj_type тип объекта, по которому будет десериализован json + * @param node нода, которая будет десериализована. Будет использовано свойство + * root, если передан ``null`` + * + * @return десериализованный объект + */ public YaMObject? deserialize_object (GLib.Type obj_type, Json.Node? node = null) throws ClientError { if (node == null) { node = root; @@ -354,6 +465,14 @@ namespace CassetteClient { return yam_object; } + /** + * Метод для десериализации значения. + * + * @param node нода, которая будет десериализована. Будет использовано свойство + * root, если передан ``null`` + * + * @return десериализованное значение + */ public Value? deserialize_value (Json.Node? node = null) throws ClientError { if (node == null) { node = root; @@ -367,6 +486,14 @@ namespace CassetteClient { return node.get_value (); } + /** + * Метод для десериализации ``Gee.ArrayList``. + * Поддерживает только одиночную вложенность (список в списке). + * + * @param array_list ссылка на ``Gee.ArrayList``, который будет заполнен значениями + * @param node нода, которая будет десериализована. Будет использовано свойство + * root, если передан ``null`` + */ public void deserialize_array (ref ArrayList array_list, Json.Node? node = null) throws ClientError { if (node == null) { node = root; From aafad59fb0cab1f84f4f90d1355bd662244cc08e Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 05:26:01 +0300 Subject: [PATCH 159/854] =?UTF-8?q?=D0=94=D0=BE=D0=BF=D0=BE=D0=BB=D0=BD?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82?= =?UTF-8?q?=D0=B0=D1=80=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/jsoner.vala | 1 + 1 file changed, 1 insertion(+) diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 310a860..7ad8d10 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -489,6 +489,7 @@ namespace CassetteClient { /** * Метод для десериализации ``Gee.ArrayList``. * Поддерживает только одиночную вложенность (список в списке). + * В сучае вложенности, массив должен содержать в себе массив с определенным типом элементов * * @param array_list ссылка на ``Gee.ArrayList``, который будет заполнен значениями * @param node нода, которая будет десериализована. Будет использовано свойство From c3b2f0e4c6afdb1a62a3bd53fc4a9e4d60cdda14 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 05:28:19 +0300 Subject: [PATCH 160/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D1=84=D0=BE=D1=80=D0=BC=D0=B0=D1=82=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=B8=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=B2=D1=8B=D1=81=D0=B8=D1=82=D1=8C=20=D1=87=D0=B8=D1=82?= =?UTF-8?q?=D0=B0=D0=B5=D0=BC=D0=BE=D1=81=D1=82=D1=8C=20=D0=BA=D0=BE=D0=B4?= =?UTF-8?q?=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/jsoner.vala | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 7ad8d10..ab64cdf 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -116,6 +116,7 @@ namespace CassetteClient { if (node.get_object ().has_member (member_name)) { node = node.get_object ().get_member (member_name); has_members += member_name + "-"; + } else { throw new ClientError.PARSE_ERROR ("Json has no %s%s".printf (has_members, member_name)); } @@ -198,6 +199,7 @@ namespace CassetteClient { serialize_array (builder, sub_array_list, sub_element_type); } } + } else { switch (element_type) { case Type.STRING: @@ -229,8 +231,10 @@ namespace CassetteClient { builder.add_null_value (); return; } + builder.begin_object (); var cls = (ObjectClass) yam_obj.get_type ().class_ref (); + foreach (ParamSpec property in cls.list_properties ()) { if ((property.flags & ParamFlags.READABLE) == 0 || (property.flags & ParamFlags.WRITABLE) == 0) { continue; @@ -263,12 +267,15 @@ namespace CassetteClient { Type element_type = array_list.element_type; serialize_array (builder, array_list, element_type); + } else if (property.value_type.parent () == typeof (YaMObject)) { serialize_object (builder, (YaMObject) prop_val.get_object (), names_case); + } else { serialize_value (builder, prop_val); } } + builder.end_object (); } @@ -341,6 +348,7 @@ namespace CassetteClient { foreach (var ld_val_name in ld_type_obj.get_members ()) { if (ld_type_obj.get_int_member (ld_val_name) == 1) { lib_data.liked_tracks.add (ld_val_name); + } else { lib_data.disliked_tracks.add (ld_val_name); } @@ -445,6 +453,7 @@ namespace CassetteClient { property.name, val.get_int64 ().to_string () ); + } else { yam_object.set_property ( property.name, @@ -452,6 +461,7 @@ namespace CassetteClient { ); } break; + case Json.NodeType.NULL: yam_object.set_property ( property.name, @@ -476,7 +486,7 @@ namespace CassetteClient { public Value? deserialize_value (Json.Node? node = null) throws ClientError { if (node == null) { node = root; - } + } if (node.get_node_type () != Json.NodeType.VALUE) { Logger.warning (_("Wrong type: expected %s, got %s").printf (Json.NodeType.VALUE.to_string (), node.get_node_type ().to_string ())); @@ -498,7 +508,7 @@ namespace CassetteClient { public void deserialize_array (ref ArrayList array_list, Json.Node? node = null) throws ClientError { if (node == null) { node = root; - } + } if (node.get_node_type () != Json.NodeType.ARRAY) { Logger.warning (_("Wrong type: expected %s, got %s").printf (Json.NodeType.ARRAY.to_string (), node.get_node_type ().to_string ())); @@ -532,6 +542,7 @@ namespace CassetteClient { // Добавлять новые типы при необходимости if (sub_element_type == typeof (YaMAPI.Track)) { new_array_list = new ArrayList (); + } else { Logger.warning ("Unknown type of element of subarray - %s".printf (sub_element_type.name ())); return; @@ -546,6 +557,7 @@ namespace CassetteClient { } else { array_list.clear (); + switch (array_list.element_type) { case Type.STRING: var narray_list = array_list as ArrayList; From b0814de6ee6b7e37d74e1d866921a2c07b6586c3 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 06:08:39 +0300 Subject: [PATCH 161/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/jsoner_test.vala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/jsoner_test.vala b/tests/jsoner_test.vala index d7eff66..3351934 100644 --- a/tests/jsoner_test.vala +++ b/tests/jsoner_test.vala @@ -246,7 +246,7 @@ public int main (string[] args) { Test.add_func ("/jsoner/deserialize/object_camel", () => { try { - var jsoner = new Jsoner ("{\"stringValue\":\"test\"}", null, Case.CAMEL_CASE); + var jsoner = new Jsoner ("{\"stringValue\":\"test\"}", null, Case.CAMEL); var result = (TestObjectStringCamel) jsoner.deserialize_object (typeof (TestObjectStringCamel)); if (result.string_value != "test") { @@ -259,7 +259,7 @@ public int main (string[] args) { Test.add_func ("/jsoner/deserialize/object_camel_", () => { try { - var jsoner = new Jsoner ("{\"stringValue\":\"test\"}", null, Case.CAMEL_CASE); + var jsoner = new Jsoner ("{\"stringValue\":\"test\"}", null, Case.CAMEL); var result = (TestObjectStringCamelW) jsoner.deserialize_object (typeof (TestObjectStringCamelW)); if (result.string_value_ != "test") { From bd8361b340b0a906f587ee6a5e522234b678867b Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 06:08:50 +0300 Subject: [PATCH 162/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/utils.vala | 67 +++++++++++++++++++++++++++++++++++++------ 1 file changed, 58 insertions(+), 9 deletions(-) diff --git a/src/client/utils.vala b/src/client/utils.vala index c4aa723..b060513 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -36,12 +36,18 @@ namespace CassetteClient { } } + /** + * Перечисление со значениями предопределенных размеров для виджетов + */ public enum ArtSize { TRACK = 75, BIG_ART = 400, BIG_SMALL = 200 } + /** + * Таймаут всех запросов + */ public const int TIMEOUT = 10; public static Cachier.Cachier cachier; @@ -50,6 +56,10 @@ namespace CassetteClient { public static YaMTalker yam_talker; public static Player.Player player; + /** + * Получение кода языка для передачи в запросах api. + * Получает язык из системы и делает "ru_RU.UTF-8" -> "ru" штуку + */ public static string get_language () { string? locale = Environment.get_variable ("LANG"); string language = "en"; @@ -61,10 +71,16 @@ namespace CassetteClient { return language; } + /** + * Функция удобства. Получение текущей временной метки. + */ public static string get_timestamp () { return new DateTime.now_utc ().format_iso8601 (); } + /** + * Инициализация клиента. Создание синглтонов. + */ public static void init (string application_id, bool is_devel) { cachier = new Cachier.Cachier (); storager = new Cachier.Storager (application_id); @@ -90,19 +106,37 @@ namespace CassetteClient { Mpris.init (); } - // Если переместить домен в другое место, то Jsoner перестанет его видеть + /** + * Ошибки клиента. + */ public errordomain ClientError { - // Не получается спарсить ответ + /** + * Не получается спарсить ответ + */ PARSE_ERROR, - // Не получается получить ответ + /** + * Не получается получить ответ + */ SOUP_ERROR, - // Ответом пришла ошибка + /** + * Ответом пришла ошибка + */ ANSWER_ERROR, - // Ошибка авторизации + /** + * Ошибка при авторизации + */ AUTH_ERROR } + /** + * Утилиты, зависимые от типа. + */ public class TypeUtils { + /** + * Перемешивание списка + * + * @param list ссылка на список ``Gee.ArrayList``, который будет перемешан + */ public void shuffle (ref ArrayList list) { for (int i = 0; i < list.size; i++) { int random_index = Random.int_range (0, list.size); @@ -113,6 +147,9 @@ namespace CassetteClient { } } + /** + * Утилиты, зависимые от типа. + */ public string strip (string str, char ch) { /* Delete `ch` from start and end of `str` @@ -131,7 +168,10 @@ namespace CassetteClient { return str[start:end]; } - // Переделывает camelCase строку в kebab-case. Входная строка должна быть корректной camelCase + /** + * Функция для перевода camelCase строки в kebab-case. + * Входная строка должна быть корректной camelCase + */ public string camel2kebab (string camel_string) { var builder = new StringBuilder (); @@ -150,7 +190,10 @@ namespace CassetteClient { return builder.free_and_steal (); } - // Переделывает kebab-case строку в camelCase. Входная строка должна быть корректной kebab-case + /** + * Функция для перевода kebab-case строки в camelCase. + * Входная строка должна быть корректной kebab-case + */ public string kebab2camel (string kebab_string) { var builder = new StringBuilder (); @@ -169,7 +212,10 @@ namespace CassetteClient { return builder.free_and_steal (); } - // Переделывает kebab-case строку в snake_case. Входная строка должна быть корректной kebab-case + /** + * Функция для перевода kebab-case строки в snake_case. + * Входная строка должна быть корректной kebab-case + */ public string kebab2snake (string kebab_string) { var builder = new StringBuilder (); @@ -187,7 +233,10 @@ namespace CassetteClient { return builder.free_and_steal (); } - // Переделывает snake_case строку в kebab-case. Входная строка должна быть корректной snake_case + /** + * Функция для перевода snake_case строки в kebab-case. + * Входная строка должна быть корректной snake_case + */ public string snake2kebab (string snake_string) { var builder = new StringBuilder (); From a12b6f514f7eb2297011d08dcfea12c7fe19ec9a Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 06:20:17 +0300 Subject: [PATCH 163/854] =?UTF-8?q?=D0=94=D0=BE=D0=BF=D0=BE=D0=BB=D0=BD?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20share=20=D1=81=D1=81=D1=8B=D0=BB=D0=BA?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/utils.vala b/src/utils.vala index a50f8e6..f6bee57 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -75,7 +75,7 @@ namespace Cassette { } public static void track_share (CassetteClient.YaMAPI.Track track_info) { - string url = @"https://music.yandex.ru/album/$(track_info.albums[0].id)/track/$(track_info.id)"; + string url = @"https://music.yandex.ru/album/$(track_info.albums[0].id)/track/$(track_info.id)?utm_medium=copy_link"; Gdk.Display? display = Gdk.Display.get_default (); Gdk.Clipboard clipboard = display.get_clipboard (); @@ -84,7 +84,7 @@ namespace Cassette { } public static void playlist_share (CassetteClient.YaMAPI.Playlist playlist_info) { - string url = @"https://music.yandex.ru/users/$(playlist_info.owner.login)/playlists/$(playlist_info.kind)"; + string url = @"https://music.yandex.ru/users/$(playlist_info.owner.login)/playlists/$(playlist_info.kind)?utm_medium=copy_link"; Gdk.Display? display = Gdk.Display.get_default (); Gdk.Clipboard clipboard = display.get_clipboard (); From 7029f71bd8aae2d1af9d4b48f35da897f7eb5dea Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 06:57:14 +0300 Subject: [PATCH 164/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 167 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 163 insertions(+), 4 deletions(-) diff --git a/src/utils.vala b/src/utils.vala index f6bee57..7851a58 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -19,18 +19,48 @@ using CassetteClient; using Gee; namespace Cassette { + /** + * Интерйес инициализируемых виджетов. Такие виджеты зависят от id содержимого. + */ public interface Initable { + /** + * Id контента. Не ставится напрямую, используется метод {@link init_content} + */ protected abstract string content_id { get; set; } + /** + * Абстрактный метод инициализации контента. + * Сюда могут входить дополнительные действия + * + * @param content_id id инициализируемого контента + */ public abstract void init_content (string content_id); } + /** + * Перечисление с причинами блокировки виджета + */ public enum BlockReason { + /** + * Виджет не реализован + */ NOT_IMPLEMENTED, + /** + * Виджет может работать только, если выполнена авторизация + */ NEED_ONLINE, + /** + * Виджет может работать только, если подключена подписка Я.Плюс + */ NEED_PLUS } + /** + * Фукция блокировки виджета + * + * @param widget блокируемый виджет + * @param reason причина блокировки + */ public static void block_widget (Gtk.Widget widget, BlockReason reason) { if (!application.is_devel) { widget.sensitive = false; @@ -49,6 +79,11 @@ namespace Cassette { } } + /** + * Переключить режим перемешивания на следующий. + * ON -> OFF + * OFF -> ON + */ public static void roll_shuffle_mode () { switch (player.shuffle_mode) { case Player.ShuffleMode.OFF: @@ -60,6 +95,12 @@ namespace Cassette { } } + /** + * Переключить режим повтора на следующий. + * OFF -> REPEAT_ALL + * REPEAT_ALL -> REPEAT_ONE + * REPEAT_ONE -> OFF + */ public static void roll_repeat_mode () { switch (player.repeat_mode) { case Player.RepeatMode.OFF: @@ -74,6 +115,11 @@ namespace Cassette { } } + /** + * Поместить ссылку на трек в буфер обмена + * + * @param track_info объект трека, ссылка на который будет скопирована в буфер обмена + */ public static void track_share (CassetteClient.YaMAPI.Track track_info) { string url = @"https://music.yandex.ru/album/$(track_info.albums[0].id)/track/$(track_info.id)?utm_medium=copy_link"; @@ -83,6 +129,11 @@ namespace Cassette { application.show_message (_("Link copied to clipboard")); } + /** + * Поместить ссылку на плейлист в буфер обмена + * + * @param playlist_info объект плейлиста, ссылка на который будет скопирована в буфер обмена + */ public static void playlist_share (CassetteClient.YaMAPI.Playlist playlist_info) { string url = @"https://music.yandex.ru/users/$(playlist_info.owner.login)/playlists/$(playlist_info.kind)?utm_medium=copy_link"; @@ -92,6 +143,11 @@ namespace Cassette { application.show_message (_("Link copied to clipboard")); } + /** + * Асинхронная функция для показа трека по его id. + * + * @param track_id id трека + */ public static async void show_track_by_id (string track_id) { threader.add (() => { var track_infos = yam_talker.get_tracks_info ({track_id}); @@ -106,10 +162,27 @@ namespace Cassette { yield; } + /** + * Функция удобства для преобразования миллисекунд в секунды. + * + * @param ms миллисекунды + * + * @return секунды + */ public static int ms2sec (int ms) { return ms / 1000; } + /** + * Функция для формирования текстового представления времени. + * Короткое представление: 66 -> 1:06 + * Длинное: Длительность: 1 мин. + * + * @param seconds секунды + * @param is_short короткое ли представление нужно + * + * @return строка представления + */ public static string sec2str (int seconds, bool is_short) { int minutes = (int) seconds / 60; int oth_seconds = (seconds - minutes * 60); @@ -133,12 +206,32 @@ namespace Cassette { } } + /** + * Функция для формирования текстового представления времени. + * ``ms2str (66110, true) -> "1:06"`` + * ``ms2str (66110, false) -> "Длительность: 1 мин."`` + * + * @param ms миллисекунды + * @param is_short короткое ли представление нужно + * + * @return строка представления + */ public static string ms2str (int ms, bool is_short) { int seconds = ms2sec (ms); return sec2str (seconds, is_short); } - // ("111", 6) -> "000111" + /** + * Функция для заполнение строки символами слева. + * ``zfill ("56", 5) -> "00056"`` + * ``zfill ("56", 2) -> "56"`` + * ``zfill ("56", 1) -> "56"`` + * + * @param str исходная строка + * @param width целевая ширина + * + * @return результат + */ public static string zfill (string str, int width) { if (str.length >= width) { return str; @@ -148,7 +241,16 @@ namespace Cassette { } } - // (1, 6, 1) -> {1, 2, 3, 4, 5} + /** + * Функция для получения заполненного множества + * ``range_set (1, 6, 1) -> {1, 2, 3, 4, 5}`` + * + * @param start стартовое значение + * @param end целевое значение + * @param step размер шага + * + * @return множество + */ public static HashSet range_set (int start, int end, int step = 1) { var rng = new HashSet (); for (int item = start; item < end; item += step) { @@ -157,7 +259,15 @@ namespace Cassette { return rng; } - // set_1 - set_2 + /** + * Функция для поиска разницы численных множеств + * ``difference ({1, 2, 3}, {2, 3, 4}) -> {1}`` + * + * @param set_1 первое множество + * @param set_2 второе множество + * + * @return результирующее множество + */ public static HashSet difference (HashSet set_1, HashSet set_2) { var out_set = new HashSet (); foreach (int el in set_1) { @@ -168,7 +278,14 @@ namespace Cassette { return out_set; } - // [2:23.24] -> 143240 + /** + * Функция для парсинга строки определенного вида в миллисекунды. + * ``parse_time ("[2:23.24]") -> 143240`` + * + * @param time_str строка вида [hh:mm.ms] + * + * @return миллисекунды + */ public static int64 parse_time (owned string time_str) { time_str.strip (); time_str = time_str[1:time_str.length - 1]; @@ -183,6 +300,15 @@ namespace Cassette { return mins_ms + secs_ms + pure_ms; } + /** + * Функция для получения человеческого "когда?". + * get_when ("2006-04-30T03:01:38") -> "30.04.2006" + * get_when ("2006-04-30T03:01:38") -> "yesterday" + * + * @param iso8601_datetime_str временная метка в формате iso8601 + * + * @return человеческое "когда?" + */ public static string get_when (string iso8601_datetime_str) { var dt = new DateTime.from_iso8601 (iso8601_datetime_str, null); var now_dt = new DateTime.now (); @@ -198,12 +324,29 @@ namespace Cassette { } } + /** + * Функция для создания отступов между тысячами в числе в строковом формате. + * prettify_num (5124421) -> "5 124 421" + * + * @param num число + * + * @return преобразованное число в строковом формате + */ public static string prettify_num (int num) { string num_str = num.to_string (); return prettify_chunk (num_str, num_str.length - 3, ""); } + /** + * Функция для создания отступов между тысячами одной секции. + * + * @param num_str строка, содержащая числовое значение + * @param start_pos начальная позиция куска в строке + * @param res_str рекурсивный аргумент + * + * @return строка с отступами + */ static string prettify_chunk (string num_str, int start_pos, string res_str) { if (start_pos == -3) { return res_str; @@ -218,10 +361,26 @@ namespace Cassette { return prettify_chunk (num_str, start_pos - 3, num_str[start_pos:end_pos] + " " + res_str); } + /** + * Функция для нахождения меньшего значения из двух ``double`` чисел + * + * @param a первое число + * @param b второе число + * + * @return меньшее из двух чисел + */ static double min (double a, double b) { return a < b ? a : b; } + /** + * Функция для нахождения большего значения из двух ``double`` чисел + * + * @param a первое число + * @param b второе число + * + * @return большее из двух чисел + */ static double max (double a, double b) { return a > b ? a : b; } From 54ac5039c8d4f2868815dd7d22dd31c6ac040ace Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 06:59:01 +0300 Subject: [PATCH 165/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BF=D1=80=D0=B8=D1=87=D0=B8=D0=BD=D1=83=20?= =?UTF-8?q?=D0=B1=D0=BB=D0=BE=D0=BA=D0=B8=D1=80=D0=BE=D0=B2=D0=BA=D0=B8=20?= =?UTF-8?q?-=20=D0=BE=D1=82=D1=81=D1=83=D1=82=D1=81=D1=82=D0=B2=D0=B8?= =?UTF-8?q?=D0=B5=20=D0=BF=D0=BE=D0=B4=D0=BF=D0=B8=D1=81=D0=BA=D0=B8=20?= =?UTF-8?q?=D0=91=D1=83=D0=BA=D0=BC=D0=B5=D0=B9=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/utils.vala b/src/utils.vala index 7851a58..cd4f3a1 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -52,7 +52,11 @@ namespace Cassette { /** * Виджет может работать только, если подключена подписка Я.Плюс */ - NEED_PLUS + NEED_PLUS, + /** + * Виджет может работать только, если подключена подписка Букмейт + */ + NEED_BOOKMATE } /** From 35b1c4a9792eb946a33f87b8f08fecf291c4b890 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 06:59:22 +0300 Subject: [PATCH 166/854] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82?= =?UTF-8?q?=D0=B0=D1=80=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/utils.vala b/src/utils.vala index cd4f3a1..1d90faf 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -42,16 +42,16 @@ namespace Cassette { */ public enum BlockReason { /** - * Виджет не реализован - */ + * Виджет не реализован + */ NOT_IMPLEMENTED, /** - * Виджет может работать только, если выполнена авторизация - */ + * Виджет может работать только, если выполнена авторизация + */ NEED_ONLINE, /** - * Виджет может работать только, если подключена подписка Я.Плюс - */ + * Виджет может работать только, если подключена подписка Я.Плюс + */ NEED_PLUS, /** * Виджет может работать только, если подключена подписка Букмейт From f1224507b5b91c1f93f5580219abb602adbef01f Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 07:03:19 +0300 Subject: [PATCH 167/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20BlockReason.NEED=5FBOOKMATE=20=D0=B2=20Cassette.?= =?UTF-8?q?block=5Fwidget=20()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/utils.vala b/src/utils.vala index 1d90faf..7b9ba50 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -80,6 +80,11 @@ namespace Cassette { case BlockReason.NEED_PLUS: widget.tooltip_text = _("Need Plus subscription"); break; + case BlockReason.NEED_BOOKMATE: + widget.tooltip_text = _("Need Bookmate subscription"); + break; + default: + assert_not_reached (); } } From 4d27385b108eaa213336f1b0dcd0f1a0b2645b24 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 08:19:51 +0300 Subject: [PATCH 168/854] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/utils.vala b/src/utils.vala index 7b9ba50..8b5d3e1 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -42,19 +42,19 @@ namespace Cassette { */ public enum BlockReason { /** - * Виджет не реализован + * Функционал не реализован */ NOT_IMPLEMENTED, /** - * Виджет может работать только, если выполнена авторизация + * Для работы функционала требуется выполнить авторизацию */ NEED_ONLINE, /** - * Виджет может работать только, если подключена подписка Я.Плюс + * Для работы функционала требуется активная подписка Я.Плюс */ NEED_PLUS, /** - * Виджет может работать только, если подключена подписка Букмейт + * Для работы функционала требуется активная подписка Букмейт */ NEED_BOOKMATE } From 10797040056a1ead2121e270106d226995d6d724 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 08:21:02 +0300 Subject: [PATCH 169/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BD=D0=B0=D0=B7=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=20=D1=8D=D0=BB=D0=B5=D0=BC=D0=B5=D0=BD=D1=82=D0=B0=20=D0=BF?= =?UTF-8?q?=D0=B5=D1=80=D0=B5=D1=87=D0=B8=D1=81=D0=BB=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=8F=20=D0=BD=D0=B0=20=D0=B1=D0=BE=D0=BB=D0=B5=D0=B5=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=BD=D1=8F=D1=82=D0=BD=D0=BE=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils.vala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/utils.vala b/src/utils.vala index 8b5d3e1..0f5d579 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -48,7 +48,7 @@ namespace Cassette { /** * Для работы функционала требуется выполнить авторизацию */ - NEED_ONLINE, + NEED_AUTH, /** * Для работы функционала требуется активная подписка Я.Плюс */ @@ -74,7 +74,7 @@ namespace Cassette { case BlockReason.NOT_IMPLEMENTED: widget.tooltip_text = _("Not implemented yet"); break; - case BlockReason.NEED_ONLINE: + case BlockReason.NEED_AUTH: widget.tooltip_text = _("Need authorization"); break; case BlockReason.NEED_PLUS: From 4a11d932fc6bb776d427f8e582e2e5f3342339e9 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 11:17:40 +0300 Subject: [PATCH 170/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=8D=D0=BD=D0=B4=D0=BF=D0=BE=D0=B9=D0=BD=D1=82?= =?UTF-8?q?=20account/about?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/objects/account/about.vala | 111 ++++++++++++++++++ .../api/objects/account_info/account.vala | 6 +- .../objects/account_info/account_info.vala | 2 +- .../all_ids.vala} | 44 ++++++- src/client/api/yam_client.vala | 21 +++- src/client/jsoner.vala | 4 +- src/client/meson.build | 3 +- 7 files changed, 172 insertions(+), 19 deletions(-) create mode 100644 src/client/api/objects/account/about.vala rename src/client/api/objects/{library_data.vala => library/all_ids.vala} (64%) diff --git a/src/client/api/objects/account/about.vala b/src/client/api/objects/account/about.vala new file mode 100644 index 0000000..7fd79d0 --- /dev/null +++ b/src/client/api/objects/account/about.vala @@ -0,0 +1,111 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 3 + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-only + */ + + +namespace CassetteClient.YaMAPI.Account { + + namespace AvatarSize { + const string ISLANDS_SMALL = "islands-small"; + const string ISLANDS_34 = "islands-34"; + const string ISLANDS_MIDDLE = "islands-middle"; + const string ISLANDS_50 = "islands-50"; + const string ISLANDS_RETINA_SMALL = "islands-retina-small"; + const string ISLANDS_68 = "islands-68"; + const string ISLANDS_75 = "islands-75"; + const string ISLANDS_RETINA_MIDDLE = "islands-retina-middle"; + const string ISLANDS_RETINA_50 = "islands-retina-50"; + const string ISLANDS_200 = "islands-200"; + } + + public class About : YaMObject { + + /* + * Id пользователя + */ + public string uid { get; set; } + + /* + * Имеет ли пользователь активную подписку Я.Плюс + */ + public bool has_plus { get; set; } + + /* + * Логин пользователя + */ + public string login { get; set; } + + /* + * Id аватара пользователя + */ + public string? avatar_id { get; set; } + + /* + * TODO + */ + public string public_id { get; set; } + + /* + * Публичное имя пользователя + */ + public string public_name { get; set; } + + /* + * Является ли аккаунт детским + */ + public bool is_child { get; set; } + + public static string num_size_to_avatar_size (int size) { + switch (size) { + case 28: + return AvatarSize.ISLANDS_SMALL; + case 34: + return AvatarSize.ISLANDS_34; + case 42: + return AvatarSize.ISLANDS_MIDDLE; + case 50: + return AvatarSize.ISLANDS_50; + case 56: + return AvatarSize.ISLANDS_RETINA_SMALL; + case 68: + return AvatarSize.ISLANDS_68; + case 75: + return AvatarSize.ISLANDS_75; + case 84: + return AvatarSize.ISLANDS_RETINA_MIDDLE; + case 100: + return AvatarSize.ISLANDS_RETINA_50; + case 200: + return AvatarSize.ISLANDS_200; + default: + assert_not_reached (); + } + } + + public string? get_avatar_uri (int size = 200) { + if (avatar_id == null) { + return null; + } + + var avatar_size = num_size_to_avatar_size (size); + + return "https://avatars.yandex.net/get-yapic/%s/%s".printf ( + avatar_id, + avatar_size + ); + } + } +} diff --git a/src/client/api/objects/account_info/account.vala b/src/client/api/objects/account_info/account.vala index 0188d23..438839d 100644 --- a/src/client/api/objects/account_info/account.vala +++ b/src/client/api/objects/account_info/account.vala @@ -18,7 +18,7 @@ using Gee; namespace CassetteClient.YaMAPI { - public class Account : YaMObject { + public class AccountStatus : YaMObject { public string uid { get; set; } public string? login { get; set; } @@ -32,10 +32,6 @@ namespace CassetteClient.YaMAPI { public ArrayList passport_phones { get; set; default = new ArrayList (); } public bool child { get; set; } - public Account () { - Object (); - } - public string get_user_name () { if (display_name != null) { return display_name; diff --git a/src/client/api/objects/account_info/account_info.vala b/src/client/api/objects/account_info/account_info.vala index ac29874..87a5b92 100644 --- a/src/client/api/objects/account_info/account_info.vala +++ b/src/client/api/objects/account_info/account_info.vala @@ -27,7 +27,7 @@ namespace CassetteClient.YaMAPI { } } - public Account account { get; set; default = new Account (); } + public AccountStatus account { get; set; default = new AccountStatus (); } public Permissions permissions { get; set; } public bool subeditor { get; set; } public int subeditor_level { get; set; } diff --git a/src/client/api/objects/library_data.vala b/src/client/api/objects/library/all_ids.vala similarity index 64% rename from src/client/api/objects/library_data.vala rename to src/client/api/objects/library/all_ids.vala index d3a1ace..cc29790 100644 --- a/src/client/api/objects/library_data.vala +++ b/src/client/api/objects/library/all_ids.vala @@ -18,21 +18,53 @@ using Gee; -namespace CassetteClient.YaMAPI { - public class LibraryData : YaMObject { - /* - Объект для хранения блоков с информацией о лайках/дизлайках - различных сущностей - */ +namespace CassetteClient.YaMAPI.Library { + public class AllIds : YaMObject { + + /* + * Лайкнутые пользователем треки + */ public ArrayList liked_tracks { get; set; default = new ArrayList (); } + + /* + * Дизлайкнутые пользователем треки + */ public ArrayList disliked_tracks { get; set; default = new ArrayList (); } + + /* + * Любимые исполнители пользователя + */ public ArrayList artists { get; set; default = new ArrayList (); } + + /* + * Любимые альбомы пользователя + */ public ArrayList albums { get; set; default = new ArrayList (); } + + /* + * Любимые плейлисты пользователя + */ public ArrayList playlists { get; set; default = new ArrayList (); } + + /* + * TODO + */ public ArrayList users { get; set; default = new ArrayList (); } + + /* + * Любимые жанры пользователя + */ public ArrayList genres { get; set; default = new ArrayList (); } + + /* + * Любимые лейблы пользователя + */ public ArrayList labels { get; set; default = new ArrayList (); } + + /* + * Все треки в библиотеке пользователя + */ public ArrayList library { get; set; default = new ArrayList (); } } } diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 446f257..9d0e622 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -774,11 +774,24 @@ namespace CassetteClient.YaMAPI { // New // ///////// - public LibraryData library_all_ids () throws ClientError, BadStatusCodeError { - /* - Получение id треков пользователя - */ + /* + * Получение информации о текущем пользователе + */ + public Account.About account_about () throws ClientError, BadStatusCodeError { + var bytes = soup_wrapper.get_sync ( + @"$(YAM_BASE_URL)/account/about", + {"default"} + ); + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); + + return (Account.About) jsoner.deserialize_object (typeof (Account.About)); + } + + /* + * Получение данных о библиотеке пользователя + */ + public Library.AllIds library_all_ids () throws ClientError, BadStatusCodeError { var bytes = soup_wrapper.get_sync ( @"$(YAM_BASE_URL)/library/all-ids", {"default"} diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index ab64cdf..7bda668 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -329,8 +329,8 @@ namespace CassetteClient { * * @return десериализованный объект */ - public YaMAPI.LibraryData deserialize_lib_data () throws ClientError { - var lib_data = new YaMAPI.LibraryData (); + public YaMAPI.Library.AllIds deserialize_lib_data () throws ClientError { + var lib_data = new YaMAPI.Library.AllIds (); var node = root; diff --git a/src/client/meson.build b/src/client/meson.build index d527055..3dd4773 100644 --- a/src/client/meson.build +++ b/src/client/meson.build @@ -27,7 +27,8 @@ cassette_client_sources = files( 'api/objects/play.vala', 'api/objects/track_short.vala', 'api/objects/download_info.vala', - 'api/objects/library_data.vala', + 'api/objects/account/about.vala', + 'api/objects/library/all_ids.vala', 'api/objects/account_info/account_info.vala', 'api/objects/account_info/avatar_info.vala', 'api/objects/account_info/passport_phone.vala', From 3de360eb1413b4bd67d0ebd59f4367b3f02c55d4 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Thu, 22 Feb 2024 11:48:57 +0300 Subject: [PATCH 171/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=8D=D0=BD=D0=B4=D0=BF=D0=BE=D0=B9=D0=BD=D1=82?= =?UTF-8?q?=20rotor/wave/last?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/objects/rotor/wave.vala | 45 ++++++++++++++++++++++++++ src/client/api/yam_client.vala | 14 ++++++++ src/client/meson.build | 1 + 3 files changed, 60 insertions(+) create mode 100644 src/client/api/objects/rotor/wave.vala diff --git a/src/client/api/objects/rotor/wave.vala b/src/client/api/objects/rotor/wave.vala new file mode 100644 index 0000000..70decc1 --- /dev/null +++ b/src/client/api/objects/rotor/wave.vala @@ -0,0 +1,45 @@ +/* Copyright 2023-2024 Rirusha + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 3 + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * SPDX-License-Identifier: GPL-3.0-only + */ + + +using Gee; + +namespace CassetteClient.YaMAPI.Rotor { + + public class Wave : YaMObject { + + /* + * TODO + */ + public string name { get; set; } + + /* + * TODO + */ + public string station_id { get; set; } + + /* + * TODO + */ + public ArrayList seeds { get; set; default = new ArrayList (); } + + /* + * TODO + */ + public string if_for_from { get; set; } + } +} diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 9d0e622..5dfd025 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -801,5 +801,19 @@ namespace CassetteClient.YaMAPI { return jsoner.deserialize_lib_data (); } + + /* + * Получение последней прослушиваемой волны текущим пользователем + */ + public Rotor.Wave rotor_wave_last () { + var bytes = soup_wrapper.get_sync ( + @"$(YAM_BASE_URL)/rotor/wave/last", + {"default"} + ); + + var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); + + return (Rotor.Wave) jsoner.deserialize_object (typeof (Rotor.Wave)); + } } } diff --git a/src/client/meson.build b/src/client/meson.build index 3dd4773..bad7f2b 100644 --- a/src/client/meson.build +++ b/src/client/meson.build @@ -64,6 +64,7 @@ cassette_client_sources = files( 'api/objects/additional_info/lyrics.vala', 'api/objects/additional_info/lyrics_major.vala', 'api/objects/rotor/station_info.vala', + 'api/objects/rotor/wave.vala', 'api/objects/rotor/station_tracks.vala', 'api/objects/rotor/settings.vala', 'api/objects/rotor/sequence.vala', From db619289629871d9f47f22d3cbffbca0b61b03af Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 05:27:07 +0300 Subject: [PATCH 172/854] =?UTF-8?q?=D0=A1=D0=BE=D0=B7=D0=B4=D0=B0=D1=82?= =?UTF-8?q?=D1=8C=20=D0=B3=D1=80=D1=83=D0=BF=D0=BF=D1=8B=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0=BA:=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D0=BF=D1=80=D0=B8=D0=BB=D0=BE=D0=B6=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D1=8F=20=D0=B8=20=D0=B4=D0=BB=D1=8F=20=D0=BA=D0=BB?= =?UTF-8?q?=D0=B8=D0=B5=D0=BD=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/io.github.Rirusha.Cassette.gschema.xml | 94 ++++++++++--------- data/meson.build | 2 +- src/application.vala | 30 ++---- src/client/cachier/cachier.vala | 8 +- src/client/cachier/job.vala | 4 +- src/client/cachier/storager.vala | 10 +- src/client/player/mpris.vala | 4 +- src/client/player/player.vala | 20 ++-- src/client/talkers/yam_talker.vala | 20 ++-- src/client/threader.vala | 2 +- src/client/utils.vala | 9 +- src/main_window.vala | 7 +- src/pager.vala | 20 ++-- src/widgets/info_marks.vala | 4 +- src/widgets/player_bar.vala | 4 +- src/widgets/playlist_micro.vala | 9 +- src/widgets/playlist_row.vala | 4 +- .../preferences/preferences_window.vala | 38 ++++---- src/widgets/save_stack.vala | 6 +- src/widgets/track_list/track_list.vala | 8 +- .../track_default_content.vala | 4 +- src/widgets/views/playlist_view.vala | 4 +- src/widgets/views/playlists_view.vala | 2 +- src/widgets/views/with_tracks_view.vala | 4 +- tests/storager_test.vala | 2 +- 25 files changed, 158 insertions(+), 161 deletions(-) diff --git a/data/io.github.Rirusha.Cassette.gschema.xml b/data/io.github.Rirusha.Cassette.gschema.xml index a6f45b7..594033b 100644 --- a/data/io.github.Rirusha.Cassette.gschema.xml +++ b/data/io.github.Rirusha.Cassette.gschema.xml @@ -1,33 +1,25 @@ - + + + + + + + + - - - - - - - - - - + - + "begin" - - "off" - - - "off" - 600 @@ -38,12 +30,6 @@ false - - 1.0 - - - false - false @@ -53,30 +39,15 @@ true - - 6 - - - true - - - true - false true - - true - false - - false - false @@ -89,11 +60,50 @@ true + + + + + + + + + + + + + + + + + + "off" + + + "off" + + + + 1.0 + + + false + + + 6 + + + true + + + true + + + true + false - - false - + diff --git a/data/meson.build b/data/meson.build index a7ccec2..cb8a8ff 100644 --- a/data/meson.build +++ b/data/meson.build @@ -26,7 +26,7 @@ if appstream_util.found() endif install_data('io.github.Rirusha.Cassette.gschema.xml', - install_dir: join_paths(get_option('datadir'), 'glib-2.0/schemas') + install_dir: join_paths(get_option('datadir'), 'glib-2.0', 'schemas') ) compile_schemas = find_program('glib-compile-schemas', required: false) diff --git a/src/application.vala b/src/application.vala index a4f6796..9b19ada 100644 --- a/src/application.vala +++ b/src/application.vala @@ -29,6 +29,8 @@ namespace Cassette { public static CassetteClient.YaMTalker yam_talker; public static CassetteClient.Player.Player player; + public static Settings settings; + public enum ApplicationState { BEGIN, LOCAL, @@ -92,6 +94,8 @@ namespace Cassette { construct { application = this; + settings = new Settings ("io.github.Rirusha.Cassette.application"); + CassetteClient.init ("io.github.Rirusha.Cassette", is_devel); CassetteClient.Mpris.mpris.quit_triggered.connect (() => { @@ -116,9 +120,9 @@ namespace Cassette { application_state = ApplicationState.OFFLINE; }); - _application_state = (ApplicationState) storager.settings.get_enum ("application-state"); + _application_state = (ApplicationState) settings.get_enum ("application-state"); - storager.settings.bind ("application-state", this, "application-state", SettingsBindFlags.DEFAULT); + settings.bind ("application-state", this, "application-state", SettingsBindFlags.DEFAULT); application.application_state_changed.connect ((new_state) => { switch (new_state) { @@ -161,10 +165,6 @@ namespace Cassette { base.activate (); if (main_window == null) { - if (storager.settings.get_boolean ("force-mobile")) { - is_mobile = true; - } - var win = new MainWindow (this); authenticator.success.connect (win.load_default_views); @@ -174,24 +174,6 @@ namespace Cassette { _application_state = ApplicationState.ONLINE; } - // win.show.connect (() => { - // // Detection device "mobility" - // // TODO: that also can work on notebooks with touch... - // if (storager.settings.get_boolean ("force-mobile")) { - // is_mobile = true; - - // } else { - // var display = Gdk.Display.get_default (); - // var seat = display?.get_default_seat (); - - // foreach (var device in seat?.get_devices (Gdk.SeatCapabilities.TOUCH)) { - // is_mobile = true; - - // storager.settings.set_double ("volume", 100.0); - // } - // } - // }); - win.present (); if (_application_state == ApplicationState.LOCAL) { diff --git a/src/client/cachier/cachier.vala b/src/client/cachier/cachier.vala index 740ba3c..b4d4eea 100644 --- a/src/client/cachier/cachier.vala +++ b/src/client/cachier/cachier.vala @@ -158,11 +158,11 @@ namespace CassetteClient.Cachier { if (track_uri == null) { track_uri = yam_talker.get_download_uri ( track_id, - storager.settings.get_boolean ("is-hq") + settings.get_boolean ("is-hq") ); } - if (track_uri != null && (storager.settings.get_boolean ("can-cache") || !is_tmp)) { + if (track_uri != null && (settings.get_boolean ("can-cache") || !is_tmp)) { Bytes audio_bytes = yam_talker.load_track (track_uri); if (audio_bytes != null) { storager.save_audio (audio_bytes, track_id, is_tmp); @@ -205,7 +205,7 @@ namespace CassetteClient.Cachier { threader.add_audio (() => { track_uri = yam_talker.get_download_uri ( track_id, - storager.settings.get_boolean ("is-hq") + settings.get_boolean ("is-hq") ); Idle.add (get_track_uri.callback); @@ -243,7 +243,7 @@ namespace CassetteClient.Cachier { if (pixbufs[i] == null) { pixbufs[i] = yam_talker.load_pixbuf (cover_uris[i]); - if (pixbufs[i] != null && storager.settings.get_boolean ("can-cache")) { + if (pixbufs[i] != null && settings.get_boolean ("can-cache")) { storager.save_image (pixbufs[i], cover_uris[i], true); } } diff --git a/src/client/cachier/job.vala b/src/client/cachier/job.vala index 793474c..60d89ee 100644 --- a/src/client/cachier/job.vala +++ b/src/client/cachier/job.vala @@ -299,7 +299,7 @@ namespace CassetteClient.Cachier { var object_location = storager.object_cache_location (yam_object.get_type (), yam_object.oid); yield object_location.move_to_temp_async (); - if (storager.settings.get_boolean ("can-cache")) { + if (settings.get_boolean ("can-cache")) { cachier.controller.change_state (object_type, object_id, CacheingState.TEMP); } else { cachier.controller.change_state (object_type, object_id, CacheingState.NONE); @@ -323,7 +323,7 @@ namespace CassetteClient.Cachier { if (storager.db.get_content_ref_count (track_info.id) == 0) { var track_location = storager.audio_cache_location (track_info.id); yield track_location.move_to_temp_async (); - if (track_location.file != null && storager.settings.get_boolean ("can-cache")) { + if (track_location.file != null && settings.get_boolean ("can-cache")) { cachier.controller.change_state (ContentType.TRACK, track_info.id, CacheingState.TEMP); } else { cachier.controller.change_state (ContentType.TRACK, track_info.id, CacheingState.NONE); diff --git a/src/client/cachier/storager.vala b/src/client/cachier/storager.vala index f9959a1..366b9a3 100644 --- a/src/client/cachier/storager.vala +++ b/src/client/cachier/storager.vala @@ -56,7 +56,7 @@ namespace CassetteClient.Cachier { */ if (file != null && is_tmp == false) { - if (storager.settings.get_boolean ("can-cache")) { + if (settings.get_boolean ("can-cache")) { storager.move_file_to (file, true); } else { storager.remove_file (file); @@ -71,7 +71,7 @@ namespace CassetteClient.Cachier { if (file != null && is_tmp == false) { threader.add (() => { - if (storager.settings.get_boolean ("can-cache")) { + if (settings.get_boolean ("can-cache")) { storager.move_file_to (file, true); } else { storager.remove_file (file); @@ -115,8 +115,6 @@ namespace CassetteClient.Cachier { A class for working with client files */ - public Settings settings { get; construct; } - InfoDB? _db = null; public InfoDB db { get { @@ -256,8 +254,8 @@ namespace CassetteClient.Cachier { string temp_audio_path; string temp_audio_uri; - public Storager (string application_id) { - Object (settings: new Settings (application_id)); + public Storager () { + Object (); } construct { diff --git a/src/client/player/mpris.vala b/src/client/player/mpris.vala index e6527e8..c4ca449 100644 --- a/src/client/player/mpris.vala +++ b/src/client/player/mpris.vala @@ -101,7 +101,7 @@ namespace CassetteClient.Mpris { public double volume { get { - return storager.settings.get_double ("volume"); + return settings.get_double ("volume"); } set { send_property_change ("Volume", value); @@ -122,7 +122,7 @@ namespace CassetteClient.Mpris { player.current_track_start_loading.connect (send_can_properties); player.current_track_finish_loading.connect (send_can_properties); - storager.settings.bind ("volume", this, "volume", SettingsBindFlags.DEFAULT); + settings.bind ("volume", this, "volume", SettingsBindFlags.DEFAULT); player.playback_callback.connect ((position) => { seeked ((int64) position); diff --git a/src/client/player/player.vala b/src/client/player/player.vala index 225136b..488683f 100644 --- a/src/client/player/player.vala +++ b/src/client/player/player.vala @@ -121,7 +121,7 @@ namespace CassetteClient.Player { break; } - if (storager.settings.get_boolean ("can-cache")) { + if (settings.get_boolean ("can-cache")) { prepare_next_track.begin (); } @@ -226,8 +226,8 @@ namespace CassetteClient.Player { next_repeat (); }); - storager.settings.bind ("repeat-mode", this, "repeat-mode", SettingsBindFlags.DEFAULT); - storager.settings.bind ("shuffle-mode", this, "shuffle-mode", SettingsBindFlags.DEFAULT); + settings.bind ("repeat-mode", this, "repeat-mode", SettingsBindFlags.DEFAULT); + settings.bind ("shuffle-mode", this, "shuffle-mode", SettingsBindFlags.DEFAULT); current_track_start_loading.connect (() => { is_loading = true; @@ -237,10 +237,10 @@ namespace CassetteClient.Player { }); bind_property ("volume", playbin, "volume", BindingFlags.BIDIRECTIONAL | BindingFlags.SYNC_CREATE); - storager.settings.bind ("volume", this, "volume", SettingsBindFlags.DEFAULT); + settings.bind ("volume", this, "volume", SettingsBindFlags.DEFAULT); bind_property ("mute", playbin, "mute", BindingFlags.BIDIRECTIONAL | BindingFlags.SYNC_CREATE); - storager.settings.bind ("mute", this, "mute", SettingsBindFlags.DEFAULT); + settings.bind ("mute", this, "mute", SettingsBindFlags.DEFAULT); Timeout.add ((int) (PLAY_STEP * 1000), () => { if (playback_pos_sec > 0.0) { @@ -445,7 +445,7 @@ namespace CassetteClient.Player { current_track_finish_loading (); - if (storager.settings.get_boolean ("can-cache")) { + if (settings.get_boolean ("can-cache")) { prepare_next_track.begin (); } } @@ -484,7 +484,7 @@ namespace CassetteClient.Player { player_tl.add_track_end (track_info); } - if (storager.settings.get_boolean ("can-cache")) { + if (settings.get_boolean ("can-cache")) { prepare_next_track.begin (); } } @@ -496,7 +496,7 @@ namespace CassetteClient.Player { if (player_tl != null) { player_tl.add_many_end (track_list); - if (storager.settings.get_boolean ("can-cache")) { + if (settings.get_boolean ("can-cache")) { prepare_next_track.begin (); } } @@ -508,7 +508,7 @@ namespace CassetteClient.Player { var player_tl = player_mode as PlayerTrackList; player_tl.remove_track_by_pos (position); - if (player_tl.queue.tracks.size != 0 && storager.settings.get_boolean ("can-cache")) { + if (player_tl.queue.tracks.size != 0 && settings.get_boolean ("can-cache")) { prepare_next_track.begin (); } } @@ -520,7 +520,7 @@ namespace CassetteClient.Player { if (player_tl != null) { player_tl.remove_track (track_info); - if (player_tl.queue.tracks.size != 0 && storager.settings.get_boolean ("can-cache")) { + if (player_tl.queue.tracks.size != 0 && settings.get_boolean ("can-cache")) { prepare_next_track.begin (); } } diff --git a/src/client/talkers/yam_talker.vala b/src/client/talkers/yam_talker.vala index d0a7590..6592915 100644 --- a/src/client/talkers/yam_talker.vala +++ b/src/client/talkers/yam_talker.vala @@ -131,7 +131,7 @@ namespace CassetteClient { // Сохраняет объект, если он не сохранен в data // Постоянными объектами занимается уже Cachier.Job var object_location = storager.object_cache_location (playlist_info.get_type (), playlist_info.oid); - if (object_location.is_tmp && storager.settings.get_boolean ("can-cache")) { + if (object_location.is_tmp && settings.get_boolean ("can-cache")) { storager.save_object (playlist_info, true); cachier.controller.change_state ( Cachier.ContentType.PLAYLIST, @@ -406,19 +406,27 @@ namespace CassetteClient { return content; } - public Playlist? add_track_to_playlist (string kind, Track track, int position, int revision) { - return add_tracks_to_playlist (kind, {track}, position, revision); + public Playlist? add_track_to_playlist (Track track_info, Playlist playlist_info) { + return add_tracks_to_playlist ({track_info}, playlist_info); } - public Playlist? add_tracks_to_playlist (string kind, Track[] tracks, int position, int revision) { + // playlist_info.kind, + // track_info, + // storager.settings.get_boolean ("add-tracks-to-start") ? 0 : playlist_info.track_count, + // playlist_info.revision + + public Playlist? add_tracks_to_playlist (Track[] tracks, Playlist playlist_info) { Playlist? new_playlist = null; var diff = new DifferenceBuilder (); - diff.add_insert (position, tracks); + diff.add_insert ( + settings.get_boolean ("add-tracks-to-start") ? 0 : playlist_info.track_count, + tracks + ); net_run_wout_code (() => { - new_playlist = client.change_playlist (null, kind, diff.to_json (), revision); + new_playlist = client.change_playlist (null, playlist_info.kind, diff.to_json (), playlist_info.revision); playlist_changed (new_playlist); }); diff --git a/src/client/threader.vala b/src/client/threader.vala index e57dfc4..e05e59c 100644 --- a/src/client/threader.vala +++ b/src/client/threader.vala @@ -106,7 +106,7 @@ namespace CassetteClient { WorkManager single_pool; construct { - int max_size = storager.settings.get_int ("max-thread-number"); + int max_size = settings.get_int ("max-thread-number"); default_pool = new WorkManager (max_size); image_pool = new WorkManager (max_size); diff --git a/src/client/utils.vala b/src/client/utils.vala index b060513..0c7fe41 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -55,6 +55,7 @@ namespace CassetteClient { public static Threader threader; public static YaMTalker yam_talker; public static Player.Player player; + public static Settings settings; /** * Получение кода языка для передачи в запросах api. @@ -82,15 +83,17 @@ namespace CassetteClient { * Инициализация клиента. Создание синглтонов. */ public static void init (string application_id, bool is_devel) { + settings = new Settings ("io.github.Rirusha.Cassette.client"); + cachier = new Cachier.Cachier (); - storager = new Cachier.Storager (application_id); + storager = new Cachier.Storager (); if (is_devel) { Logger.log_level = LogLevel.DEVEL; } else { - storager.settings.changed.connect ((key) => { + settings.changed.connect ((key) => { if (key == "debug-mode") { - if (storager.settings.get_boolean ("debug-mode")) { + if (settings.get_boolean ("debug-mode")) { Logger.log_level = LogLevel.DEBUG; } else { Logger.log_level = LogLevel.USER; diff --git a/src/main_window.vala b/src/main_window.vala index ab02b0b..70cfd4b 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -182,9 +182,9 @@ namespace Cassette { pager = new Pager (this, main_stack); - storager.settings.bind ("window-width", this, "default-width", SettingsBindFlags.DEFAULT); - storager.settings.bind ("window-height", this, "default-height", SettingsBindFlags.DEFAULT); - storager.settings.bind ("window-maximized", this, "maximized", SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("window-width", this, "default-width", SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("window-height", this, "default-height", SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("window-maximized", this, "maximized", SettingsBindFlags.DEFAULT); button_backward.clicked.connect ((obj) => { current_view.backward (); @@ -244,7 +244,6 @@ namespace Cassette { notify["is-active"].connect (() => { if ( is_active && - storager.settings.get_boolean ("try-load-queue-every-activate") && player.player_state != Player.PlayerState.PLAYING ) { player_bar.update_queue.begin (); diff --git a/src/pager.vala b/src/pager.vala index d40bc86..7f948b4 100644 --- a/src/pager.vala +++ b/src/pager.vala @@ -113,12 +113,12 @@ namespace Cassette { register = typeof (DevelView); register = Type.NONE; - storager.settings.changed.connect ((key) => { + Cassette.settings.changed.connect ((key) => { if ( (key == "show-main" || key == "show-liked" || key == "show-playlists") && - storager.settings.get_boolean ("default-pages-set") + Cassette.settings.get_boolean ("default-pages-set") ) { load_pages (); } @@ -223,7 +223,7 @@ namespace Cassette { clear_pages (); if (pages_type_if_failed != null) { - if (!storager.settings.get_boolean ("default-pages-set")) { + if (!Cassette.settings.get_boolean ("default-pages-set")) { switch (pages_type_if_failed) { case PagesType.ONLINE: set_online_default_pages (); @@ -234,7 +234,7 @@ namespace Cassette { default: assert_not_reached (); } - storager.settings.set_boolean ("default-pages-set", true); + Cassette.settings.set_boolean ("default-pages-set", true); } } @@ -243,9 +243,9 @@ namespace Cassette { } void set_online_default_pages () { - storager.settings.set_boolean ("show-main", true); - storager.settings.set_boolean ("show-liked", true); - storager.settings.set_boolean ("show-playlists", true); + Cassette.settings.set_boolean ("show-main", true); + Cassette.settings.set_boolean ("show-liked", true); + Cassette.settings.set_boolean ("show-playlists", true); } void set_local_default_pages () { @@ -262,7 +262,7 @@ namespace Cassette { }); } - if (storager.settings.get_boolean ("show-main")) { + if (Cassette.settings.get_boolean ("show-main")) { add_page ({ "main", _("Main"), @@ -271,7 +271,7 @@ namespace Cassette { }); } - if (storager.settings.get_boolean ("show-liked")) { + if (Cassette.settings.get_boolean ("show-liked")) { add_page ({ "liked", _("Liked"), @@ -281,7 +281,7 @@ namespace Cassette { }); } - if (storager.settings.get_boolean ("show-playlists")) { + if (Cassette.settings.get_boolean ("show-playlists")) { add_page ({ "playlists", _("Playlists"), diff --git a/src/widgets/info_marks.vala b/src/widgets/info_marks.vala index 9cd4c55..44a1335 100644 --- a/src/widgets/info_marks.vala +++ b/src/widgets/info_marks.vala @@ -60,7 +60,7 @@ namespace Cassette { } construct { - storager.settings.changed.connect ((key) => { + Cassette.settings.changed.connect ((key) => { if (key == "show-replaced-mark") { check_replaced_mark_visible (); } @@ -68,7 +68,7 @@ namespace Cassette { } void check_replaced_mark_visible () { - if (_replaced_by != null && storager.settings.get_boolean ("show-replaced-mark")) { + if (_replaced_by != null && Cassette.settings.get_boolean ("show-replaced-mark")) { track_replaced_mark.visible = true; } else { track_replaced_mark.visible = false; diff --git a/src/widgets/player_bar.vala b/src/widgets/player_bar.vala index 7fa789f..8a1e7db 100644 --- a/src/widgets/player_bar.vala +++ b/src/widgets/player_bar.vala @@ -97,8 +97,8 @@ namespace Cassette { carousel.page_changed.connect (on_carousel_page_changed); - storager.settings.bind ("volume", volume_button, "volume", SettingsBindFlags.DEFAULT); - storager.settings.bind ("mute", volume_button, "mute", SettingsBindFlags.DEFAULT); + CassetteClient.settings.bind ("volume", volume_button, "volume", SettingsBindFlags.DEFAULT); + CassetteClient.settings.bind ("mute", volume_button, "mute", SettingsBindFlags.DEFAULT); slider.change_value.connect ((scroll_type, new_value) => { player.seek ((int) (new_value * 1000)); diff --git a/src/widgets/playlist_micro.vala b/src/widgets/playlist_micro.vala index b9e2daf..062352d 100644 --- a/src/widgets/playlist_micro.vala +++ b/src/widgets/playlist_micro.vala @@ -196,8 +196,8 @@ namespace Cassette { } var track_list = playlist_info.get_filtered_track_list ( - storager.settings.get_boolean ("explicit-visible"), - storager.settings.get_boolean ("child-visible") + Cassette.settings.get_boolean ("explicit-visible"), + Cassette.settings.get_boolean ("child-visible") ); var queue = new YaMAPI.Queue () { @@ -205,6 +205,7 @@ namespace Cassette { context = YaMAPI.Context.from_obj (playlist_info), tracks = track_list }; + if (player.shuffle_mode == Player.ShuffleMode.ON) { queue.randomize_index (); } @@ -251,8 +252,8 @@ namespace Cassette { } var track_list = playlist_info.get_filtered_track_list ( - storager.settings.get_boolean ("explicit-visible"), - storager.settings.get_boolean ("child-visible") + Cassette.settings.get_boolean ("explicit-visible"), + Cassette.settings.get_boolean ("child-visible") ); player.add_many (track_list); diff --git a/src/widgets/playlist_row.vala b/src/widgets/playlist_row.vala index 73a52ca..1b68491 100644 --- a/src/widgets/playlist_row.vala +++ b/src/widgets/playlist_row.vala @@ -59,10 +59,8 @@ namespace Cassette { threader.add (() => { new_playlist = yam_talker.add_track_to_playlist ( - playlist_info.kind, track_info, - storager.settings.get_boolean ("add-tracks-to-start") ? 0 : playlist_info.track_count, - playlist_info.revision + playlist_info ); Idle.add (add_button_clicked_async.callback); diff --git a/src/widgets/preferences/preferences_window.vala b/src/widgets/preferences/preferences_window.vala index 219980b..c77b133 100644 --- a/src/widgets/preferences/preferences_window.vala +++ b/src/widgets/preferences/preferences_window.vala @@ -62,36 +62,34 @@ namespace Cassette { show_save_stack_switch.notify["active"].connect (on_show_save_stack_switch_changed); - max_thread_number_spin.value = storager.settings.get_int ("max-thread-number"); - can_cache_switch.active = storager.settings.get_boolean ("can-cache"); - can_cache_switch.active = storager.settings.get_boolean ("debug-mode"); + max_thread_number_spin.value = CassetteClient.settings.get_int ("max-thread-number"); + can_cache_switch.active = CassetteClient.settings.get_boolean ("can-cache"); + can_cache_switch.active = CassetteClient.settings.get_boolean ("debug-mode"); can_cache_switch.notify["active"].connect (() => { if (!can_cache_switch.active) { ask_about_deletion (); } else { - storager.settings.set_boolean ("can-cache", true); + CassetteClient.settings.set_boolean ("can-cache", true); } }); - storager.settings.bind ("add-tracks-to-start", add_tracks_to_start_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("available-visible", available_visible_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("child-visible", child_visible_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("explicit-visible", explicit_visible_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("show-replaced-mark", show_replaced_mark_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("show-save-stack", show_save_stack_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("show-temp-save-mark", show_temp_save_stack_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("is-hq", is_hq_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("force-mobile", force_mobile_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("debug-mode", debug_mode_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("try-load-queue-every-activate", try_load_queue_every_activate_switch, "active", GLib.SettingsBindFlags.DEFAULT); + CassetteClient.settings.bind ("add-tracks-to-start", add_tracks_to_start_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("available-visible", available_visible_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("child-visible", child_visible_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("explicit-visible", explicit_visible_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("show-replaced-mark", show_replaced_mark_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("show-save-stack", show_save_stack_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("show-temp-save-mark", show_temp_save_stack_switch, "active", GLib.SettingsBindFlags.DEFAULT); + CassetteClient.settings.bind ("is-hq", is_hq_switch, "active", GLib.SettingsBindFlags.DEFAULT); + CassetteClient.settings.bind ("debug-mode", debug_mode_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("show-main", show_main_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("show-liked", show_liked_switch, "active", GLib.SettingsBindFlags.DEFAULT); - storager.settings.bind ("show-playlists", show_playlists_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("show-main", show_main_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("show-liked", show_liked_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.settings.bind ("show-playlists", show_playlists_switch, "active", GLib.SettingsBindFlags.DEFAULT); max_thread_number_spin.notify["value"].connect (() => { - storager.settings.set_int ("max-thread-number", (int) max_thread_number_spin.value); + CassetteClient.settings.set_int ("max-thread-number", (int) max_thread_number_spin.value); }); on_show_save_stack_switch_changed (); @@ -126,7 +124,7 @@ namespace Cassette { dialog.response.connect ((dialog, response) => { if (response == "delete") { deletion_preferences.delete_files (true); - storager.settings.set_boolean ("can-cache", can_cache_switch.active); + CassetteClient.settings.set_boolean ("can-cache", can_cache_switch.active); } else { can_cache_switch.active = true; } diff --git a/src/widgets/save_stack.vala b/src/widgets/save_stack.vala index 5c41e9e..ae9fc4e 100644 --- a/src/widgets/save_stack.vala +++ b/src/widgets/save_stack.vala @@ -60,7 +60,7 @@ namespace Cassette { } construct { - storager.settings.changed.connect ((key) => { + Cassette.settings.changed.connect ((key) => { if (content_id == null) { return; } @@ -111,7 +111,7 @@ namespace Cassette { } void cache_state_changed (owned Cachier.CacheingState state) { - if (!storager.settings.get_boolean ("show-save-stack")) { + if (!Cassette.settings.get_boolean ("show-save-stack")) { state = Cachier.CacheingState.NONE; } @@ -125,7 +125,7 @@ namespace Cassette { save_spin.start (); break; case Cachier.CacheingState.TEMP: - if (storager.settings.get_boolean ("show-temp-save-mark")) { + if (Cassette.settings.get_boolean ("show-temp-save-mark")) { save_stack.visible_child_name = "temp"; } else { save_stack.visible_child_name = "none"; diff --git a/src/widgets/track_list/track_list.vala b/src/widgets/track_list/track_list.vala index 25cfdf6..f78ff40 100644 --- a/src/widgets/track_list/track_list.vala +++ b/src/widgets/track_list/track_list.vala @@ -187,7 +187,7 @@ namespace Cassette { loaded_rows.clear (); }); - storager.settings.changed.connect ((key) => { + Cassette.settings.changed.connect ((key) => { if (key == "explicit-visible" || key == "child-visible" || key == "available-visible") { search_entry.search_changed (); } @@ -262,9 +262,9 @@ namespace Cassette { filtered_rows.clear (); foreach (var track_row in sorted_rows) { if (search_entry.text == "") { - bool show_explicit = storager.settings.get_boolean ("explicit-visible"); - bool show_child = storager.settings.get_boolean ("child-visible"); - bool is_available = storager.settings.get_boolean ("available-visible"); + bool show_explicit = Cassette.settings.get_boolean ("explicit-visible"); + bool show_child = Cassette.settings.get_boolean ("child-visible"); + bool is_available = Cassette.settings.get_boolean ("available-visible"); bool track_can_show = track_row.track_info.track_type == track_type && (track_row.track_info.available | is_available) && (!track_row.track_info.is_explicit | show_explicit) && (!track_row.track_info.is_suitable_for_children | show_child); if (track_can_show | track_row is TrackQueueRow) { filtered_rows.add (track_row); diff --git a/src/widgets/track_row_contents/track_default_content.vala b/src/widgets/track_row_contents/track_default_content.vala index f6e17dd..5542a8e 100644 --- a/src/widgets/track_row_contents/track_default_content.vala +++ b/src/widgets/track_row_contents/track_default_content.vala @@ -99,8 +99,8 @@ namespace Cassette { void form_queue () { var track_list = yam_object.get_filtered_track_list ( - storager.settings.get_boolean ("explicit-visible"), - storager.settings.get_boolean ("child-visible"), + Cassette.settings.get_boolean ("explicit-visible"), + Cassette.settings.get_boolean ("child-visible"), track_info.id ); diff --git a/src/widgets/views/playlist_view.vala b/src/widgets/views/playlist_view.vala index c4fe092..95d7148 100644 --- a/src/widgets/views/playlist_view.vala +++ b/src/widgets/views/playlist_view.vala @@ -78,8 +78,8 @@ namespace Cassette { var playlist_info = (YaMAPI.Playlist) object_info; var track_list = playlist_info.get_filtered_track_list ( - storager.settings.get_boolean ("explicit-visible"), - storager.settings.get_boolean ("child-visible") + Cassette.settings.get_boolean ("explicit-visible"), + Cassette.settings.get_boolean ("child-visible") ); player.add_many (track_list); diff --git a/src/widgets/views/playlists_view.vala b/src/widgets/views/playlists_view.vala index 2b696f4..1ee355b 100644 --- a/src/widgets/views/playlists_view.vala +++ b/src/widgets/views/playlists_view.vala @@ -74,7 +74,7 @@ namespace Cassette { // storager.settings.changed["show-liked"].connect (on_show_liked_change); // on_show_liked_change (); - if (!storager.settings.get_boolean ("show-liked")) { + if (!Cassette.settings.get_boolean ("show-liked")) { flow_box.append (liked_micro); } flow_box.append (new PlaylistCreateButton ()); diff --git a/src/widgets/views/with_tracks_view.vala b/src/widgets/views/with_tracks_view.vala index 2515256..0f0a581 100644 --- a/src/widgets/views/with_tracks_view.vala +++ b/src/widgets/views/with_tracks_view.vala @@ -31,8 +31,8 @@ namespace Cassette { public virtual void start_playing () { var track_list = object_info.get_filtered_track_list ( - storager.settings.get_boolean ("explicit-visible"), - storager.settings.get_boolean ("child-visible") + Cassette.settings.get_boolean ("explicit-visible"), + Cassette.settings.get_boolean ("child-visible") ); var queue = new YaMAPI.Queue () { diff --git a/tests/storager_test.vala b/tests/storager_test.vala index 105eff1..6a2b808 100644 --- a/tests/storager_test.vala +++ b/tests/storager_test.vala @@ -12,7 +12,7 @@ public int main (string[] args) { Test.init (ref args); Test.add_func ("/storager/init", () => { - storager = new Storager ("io.github.Rirusha.Cassette"); + storager = new Storager (); }); Test.add_func ("/storager/move", () => { From 7571039fe1ad0946f92873bc82e252f2b58ab075 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 05:27:26 +0300 Subject: [PATCH 173/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=B2=D1=8B=D0=B1=D1=80=D0=B0=D1=81=D1=8B=D0=B2?= =?UTF-8?q?=D0=B0=D0=B5=D0=BC=D1=8B=D0=B5=20=D0=B8=D1=81=D0=BA=D0=BB=D1=8E?= =?UTF-8?q?=D1=87=D0=B5=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/yam_client.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 5dfd025..0639407 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -805,7 +805,7 @@ namespace CassetteClient.YaMAPI { /* * Получение последней прослушиваемой волны текущим пользователем */ - public Rotor.Wave rotor_wave_last () { + public Rotor.Wave rotor_wave_last () throws ClientError, BadStatusCodeError { var bytes = soup_wrapper.get_sync ( @"$(YAM_BASE_URL)/rotor/wave/last", {"default"} From 014f68bee5c9bc46237a1f033625ce80c9fa2884 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 05:31:10 +0300 Subject: [PATCH 174/854] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D0=B8=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D0=BE=D0=B2=D0=B0=D1=82=D1=8C=20=D0=BD=D0=B5=D0=B9?= =?UTF-8?q?=D0=BC=D1=81=D0=BF=D0=B5=D0=B9=D1=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application.vala | 28 +++++++++---------- src/authenticator.vala | 2 +- src/client/api/difference_builder.vala | 2 +- src/client/api/objects/account/about.vala | 2 +- .../api/objects/account_info/account.vala | 2 +- .../objects/account_info/account_info.vala | 2 +- .../api/objects/account_info/alert.vala | 2 +- .../objects/account_info/alert_button.vala | 2 +- .../api/objects/account_info/avatar_info.vala | 2 +- .../objects/account_info/passport_phone.vala | 2 +- .../api/objects/account_info/permissions.vala | 2 +- src/client/api/objects/account_info/plus.vala | 2 +- .../api/objects/additional_info/lyrics.vala | 2 +- .../objects/additional_info/lyrics_major.vala | 2 +- .../additional_info/similar_tracks.vala | 2 +- src/client/api/objects/album/album.vala | 2 +- src/client/api/objects/album/label.vala | 2 +- src/client/api/objects/album/volume.vala | 2 +- src/client/api/objects/api_error.vala | 2 +- src/client/api/objects/artist/artist.vala | 2 +- src/client/api/objects/artist/counts.vala | 2 +- src/client/api/objects/artist/link.vala | 2 +- src/client/api/objects/artist/ratings.vala | 2 +- src/client/api/objects/cover.vala | 2 +- src/client/api/objects/download_info.vala | 2 +- src/client/api/objects/icon.vala | 2 +- src/client/api/objects/library/all_ids.vala | 2 +- src/client/api/objects/play.vala | 2 +- .../api/objects/playlist/case_forms.vala | 2 +- .../api/objects/playlist/liked_playlist.vala | 2 +- src/client/api/objects/playlist/made_for.vala | 2 +- .../api/objects/playlist/play_counter.vala | 2 +- src/client/api/objects/playlist/playlist.vala | 2 +- .../objects/playlist/playlist_absence.vala | 2 +- .../playlist/playlist_recommendations.vala | 2 +- src/client/api/objects/playlist/user.vala | 2 +- src/client/api/objects/queue/context.vala | 2 +- src/client/api/objects/queue/queue.vala | 2 +- src/client/api/objects/queue/short_queue.vala | 2 +- src/client/api/objects/rotor/ad_params.vala | 2 +- src/client/api/objects/rotor/dashboard.vala | 2 +- .../api/objects/rotor/discrete_scale.vala | 2 +- src/client/api/objects/rotor/enum.vala | 2 +- src/client/api/objects/rotor/id.vala | 2 +- .../api/objects/rotor/restrictions.vala | 2 +- src/client/api/objects/rotor/sequence.vala | 2 +- src/client/api/objects/rotor/settings.vala | 2 +- src/client/api/objects/rotor/station.vala | 2 +- .../api/objects/rotor/station_data.vala | 2 +- .../api/objects/rotor/station_info.vala | 2 +- .../api/objects/rotor/station_tracks.vala | 2 +- src/client/api/objects/rotor/value.vala | 2 +- src/client/api/objects/rotor/wave.vala | 2 +- src/client/api/objects/track/chart.vala | 2 +- src/client/api/objects/track/lyrics_info.vala | 2 +- src/client/api/objects/track/meta_data.vala | 2 +- src/client/api/objects/track/track.vala | 2 +- src/client/api/objects/track_heap.vala | 2 +- src/client/api/objects/track_short.vala | 2 +- src/client/api/yam_client.vala | 4 +-- src/client/cachier/cachier.vala | 2 +- src/client/cachier/controller.vala | 2 +- src/client/cachier/info_db.vala | 2 +- src/client/cachier/job.vala | 2 +- src/client/cachier/storager.vala | 2 +- src/client/jsoner.vala | 22 +++++++-------- src/client/likes_controller.vala | 2 +- src/client/logger.vala | 2 +- src/client/player/mpris.vala | 2 +- src/client/player/player.vala | 2 +- src/client/player/player_flow.vala | 2 +- src/client/player/player_track_list.vala | 4 +-- src/client/player/track_local.vala | 4 +-- src/client/soup_wrapper.vala | 2 +- src/client/talkers/abstract_talker.vala | 2 +- src/client/talkers/yam_talker.vala | 8 +++--- src/client/threader.vala | 2 +- src/client/utils.vala | 2 +- src/client/yam_object.vala | 4 +-- src/main_window.vala | 6 ++-- src/pager.vala | 2 +- src/utils.vala | 6 ++-- src/widgets/account_info_window.vala | 2 +- src/widgets/begin/begin_view.vala | 2 +- src/widgets/begin/begin_window.vala | 2 +- .../cache_indicator/cache_indicator.vala | 2 +- .../cache_indicator/job_info_badge.vala | 2 +- src/widgets/cover_image.vala | 2 +- src/widgets/dislike_button.vala | 2 +- src/widgets/info_marks.vala | 2 +- src/widgets/like_button.vala | 2 +- src/widgets/lyrics/lyrics_panel.vala | 2 +- .../play_button/play_button_action.vala | 2 +- .../play_button/play_button_context.vala | 2 +- .../play_button/play_button_track.vala | 2 +- src/widgets/player_bar.vala | 6 ++-- src/widgets/playlist_choose_window.vala | 2 +- src/widgets/playlist_create_button.vala | 2 +- src/widgets/playlist_micro.vala | 2 +- src/widgets/playlist_row.vala | 2 +- .../cache_deletion_preferences.vala | 4 +-- .../preferences/custom_page_preferences.vala | 2 +- .../preferences/custom_pages_preferences.vala | 2 +- .../preferences/preferences_window.vala | 20 ++++++------- src/widgets/save_stack.vala | 2 +- src/widgets/sidebar.vala | 2 +- src/widgets/track_detailed.vala | 2 +- src/widgets/track_info_panel.vala | 2 +- src/widgets/track_list/track_list.vala | 2 +- .../track_default_content.vala | 2 +- .../track_queue_content.vala | 2 +- .../track_row_contents/track_row_content.vala | 2 +- .../ya_track_row_content.vala | 2 +- src/widgets/views/cachiable_view.vala | 2 +- src/widgets/views/cant_show_view.vala | 2 +- src/widgets/views/devel_view.vala | 6 ++-- src/widgets/views/disliked_tracks_view.vala | 2 +- src/widgets/views/playlist_view.vala | 2 +- src/widgets/views/playlists_view.vala | 2 +- src/widgets/views/with_tracks_view.vala | 2 +- tests/client_utils_test.vala | 2 +- tests/info_db_test.vala | 4 +-- tests/jsoner_test.vala | 4 +-- tests/storager_test.vala | 6 ++-- 124 files changed, 176 insertions(+), 176 deletions(-) diff --git a/src/application.vala b/src/application.vala index 9b19ada..512da5a 100644 --- a/src/application.vala +++ b/src/application.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -using CassetteClient; +using Cassette.Client; namespace Cassette { @@ -23,11 +23,11 @@ namespace Cassette { static Authenticator authenticator; public static Application application; - public static CassetteClient.Cachier.Cachier cachier; - public static CassetteClient.Cachier.Storager storager; - public static CassetteClient.Threader threader; - public static CassetteClient.YaMTalker yam_talker; - public static CassetteClient.Player.Player player; + public static Cassette.Client.Cachier.Cachier cachier; + public static Cassette.Client.Cachier.Storager storager; + public static Cassette.Client.Threader threader; + public static Cassette.Client.YaMTalker yam_talker; + public static Cassette.Client.Player.Player player; public static Settings settings; @@ -96,22 +96,22 @@ namespace Cassette { settings = new Settings ("io.github.Rirusha.Cassette.application"); - CassetteClient.init ("io.github.Rirusha.Cassette", is_devel); + Cassette.Client.init ("io.github.Rirusha.Cassette", is_devel); - CassetteClient.Mpris.mpris.quit_triggered.connect (() => { + Cassette.Client.Mpris.mpris.quit_triggered.connect (() => { quit (); }); - CassetteClient.Mpris.mpris.raise_triggered.connect (() => { + Cassette.Client.Mpris.mpris.raise_triggered.connect (() => { main_window.present (); }); // Shortcuts - cachier = CassetteClient.cachier; - storager = CassetteClient.storager; - threader = CassetteClient.threader; + cachier = Cassette.Client.cachier; + storager = Cassette.Client.storager; + threader = Cassette.Client.threader; authenticator = new Authenticator (); - yam_talker = CassetteClient.yam_talker; - player = CassetteClient.player; + yam_talker = Cassette.Client.yam_talker; + player = Cassette.Client.player; yam_talker.connection_established.connect (() => { application_state = ApplicationState.ONLINE; diff --git a/src/authenticator.vala b/src/authenticator.vala index f4fa6a6..073468e 100644 --- a/src/authenticator.vala +++ b/src/authenticator.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/client/api/difference_builder.vala b/src/client/api/difference_builder.vala index 30818ee..0c070d6 100644 --- a/src/client/api/difference_builder.vala +++ b/src/client/api/difference_builder.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class InsertOperation: Object { diff --git a/src/client/api/objects/account/about.vala b/src/client/api/objects/account/about.vala index 7fd79d0..d3e89f9 100644 --- a/src/client/api/objects/account/about.vala +++ b/src/client/api/objects/account/about.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Account { +namespace Cassette.Client.YaMAPI.Account { namespace AvatarSize { const string ISLANDS_SMALL = "islands-small"; diff --git a/src/client/api/objects/account_info/account.vala b/src/client/api/objects/account_info/account.vala index 438839d..df8a317 100644 --- a/src/client/api/objects/account_info/account.vala +++ b/src/client/api/objects/account_info/account.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class AccountStatus : YaMObject { public string uid { get; set; } diff --git a/src/client/api/objects/account_info/account_info.vala b/src/client/api/objects/account_info/account_info.vala index 87a5b92..5f4084c 100644 --- a/src/client/api/objects/account_info/account_info.vala +++ b/src/client/api/objects/account_info/account_info.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class AccountInfo : YaMObject, HasID, HasCover { diff --git a/src/client/api/objects/account_info/alert.vala b/src/client/api/objects/account_info/alert.vala index 9dcb182..68db503 100644 --- a/src/client/api/objects/account_info/alert.vala +++ b/src/client/api/objects/account_info/alert.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Alert : YaMObject { public string alert_id { get; set; } diff --git a/src/client/api/objects/account_info/alert_button.vala b/src/client/api/objects/account_info/alert_button.vala index 79a512e..5b6654d 100644 --- a/src/client/api/objects/account_info/alert_button.vala +++ b/src/client/api/objects/account_info/alert_button.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class AlertButton : YaMObject { public string text { get; set; } diff --git a/src/client/api/objects/account_info/avatar_info.vala b/src/client/api/objects/account_info/avatar_info.vala index 77ec1e0..d550183 100644 --- a/src/client/api/objects/account_info/avatar_info.vala +++ b/src/client/api/objects/account_info/avatar_info.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { namespace AvatarSize { const string ISLANDS_SMALL = "islands-small"; const string ISLANDS_34 = "islands-34"; diff --git a/src/client/api/objects/account_info/passport_phone.vala b/src/client/api/objects/account_info/passport_phone.vala index 42b5d8e..bc1d120 100644 --- a/src/client/api/objects/account_info/passport_phone.vala +++ b/src/client/api/objects/account_info/passport_phone.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class PassportPhone : YaMObject { public string phone { get; set; } diff --git a/src/client/api/objects/account_info/permissions.vala b/src/client/api/objects/account_info/permissions.vala index 367faaa..b1f67ec 100644 --- a/src/client/api/objects/account_info/permissions.vala +++ b/src/client/api/objects/account_info/permissions.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Permissions : YaMObject { public string? until { get; set; } diff --git a/src/client/api/objects/account_info/plus.vala b/src/client/api/objects/account_info/plus.vala index 6dd0ba5..0b05948 100644 --- a/src/client/api/objects/account_info/plus.vala +++ b/src/client/api/objects/account_info/plus.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ - namespace CassetteClient.YaMAPI { + namespace Cassette.Client.YaMAPI { public class Plus : YaMObject { public bool has_plus { get; set; default = false; } diff --git a/src/client/api/objects/additional_info/lyrics.vala b/src/client/api/objects/additional_info/lyrics.vala index c2c7c0d..10b4ba4 100644 --- a/src/client/api/objects/additional_info/lyrics.vala +++ b/src/client/api/objects/additional_info/lyrics.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Lyrics : YaMObject { public string download_url { get; set; } diff --git a/src/client/api/objects/additional_info/lyrics_major.vala b/src/client/api/objects/additional_info/lyrics_major.vala index 421d448..c5109e8 100644 --- a/src/client/api/objects/additional_info/lyrics_major.vala +++ b/src/client/api/objects/additional_info/lyrics_major.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class LyricsMajor : YaMObject { public string name { get; set; } diff --git a/src/client/api/objects/additional_info/similar_tracks.vala b/src/client/api/objects/additional_info/similar_tracks.vala index 0272d15..cf95431 100644 --- a/src/client/api/objects/additional_info/similar_tracks.vala +++ b/src/client/api/objects/additional_info/similar_tracks.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class SimilarTracks : YaMObject, HasID, HasTrackList { public string oid { diff --git a/src/client/api/objects/album/album.vala b/src/client/api/objects/album/album.vala index 32cdaf7..01d47b6 100644 --- a/src/client/api/objects/album/album.vala +++ b/src/client/api/objects/album/album.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Album : YaMObject, HasID { public string oid { diff --git a/src/client/api/objects/album/label.vala b/src/client/api/objects/album/label.vala index d7bf121..9212d02 100644 --- a/src/client/api/objects/album/label.vala +++ b/src/client/api/objects/album/label.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Label : YaMObject { public string name { get; set; } diff --git a/src/client/api/objects/album/volume.vala b/src/client/api/objects/album/volume.vala index a9c2530..46a473b 100644 --- a/src/client/api/objects/album/volume.vala +++ b/src/client/api/objects/album/volume.vala @@ -19,7 +19,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Volume : YaMObject { public string id { get; set; } diff --git a/src/client/api/objects/api_error.vala b/src/client/api/objects/api_error.vala index 57bd05e..ff68c7d 100644 --- a/src/client/api/objects/api_error.vala +++ b/src/client/api/objects/api_error.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class ApiError : YaMObject { public string msg { diff --git a/src/client/api/objects/artist/artist.vala b/src/client/api/objects/artist/artist.vala index e25a2de..d897f2d 100644 --- a/src/client/api/objects/artist/artist.vala +++ b/src/client/api/objects/artist/artist.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Artist : YaMObject, HasID { public string oid { diff --git a/src/client/api/objects/artist/counts.vala b/src/client/api/objects/artist/counts.vala index 8a9a5fd..abd5a73 100644 --- a/src/client/api/objects/artist/counts.vala +++ b/src/client/api/objects/artist/counts.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Counts : YaMObject { public int tracks { get; set; } diff --git a/src/client/api/objects/artist/link.vala b/src/client/api/objects/artist/link.vala index dc6470f..ef6ca24 100644 --- a/src/client/api/objects/artist/link.vala +++ b/src/client/api/objects/artist/link.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Link : YaMObject { public string? href { get; set; } diff --git a/src/client/api/objects/artist/ratings.vala b/src/client/api/objects/artist/ratings.vala index 24395af..a64fdb1 100644 --- a/src/client/api/objects/artist/ratings.vala +++ b/src/client/api/objects/artist/ratings.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Ratings : YaMObject { public int month { get; set; } diff --git a/src/client/api/objects/cover.vala b/src/client/api/objects/cover.vala index 2fdd02c..92d5ae9 100644 --- a/src/client/api/objects/cover.vala +++ b/src/client/api/objects/cover.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Cover : YaMObject { public ArrayList uris { diff --git a/src/client/api/objects/download_info.vala b/src/client/api/objects/download_info.vala index ad3aa3a..bf55d6e 100644 --- a/src/client/api/objects/download_info.vala +++ b/src/client/api/objects/download_info.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class DownloadInfo : YaMObject { public string codec { get; set; } diff --git a/src/client/api/objects/icon.vala b/src/client/api/objects/icon.vala index 72a9cc4..30ec21d 100644 --- a/src/client/api/objects/icon.vala +++ b/src/client/api/objects/icon.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Icon : YaMObject { public string background_color { get; set; } diff --git a/src/client/api/objects/library/all_ids.vala b/src/client/api/objects/library/all_ids.vala index cc29790..5ccd597 100644 --- a/src/client/api/objects/library/all_ids.vala +++ b/src/client/api/objects/library/all_ids.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.YaMAPI.Library { +namespace Cassette.Client.YaMAPI.Library { public class AllIds : YaMObject { diff --git a/src/client/api/objects/play.vala b/src/client/api/objects/play.vala index b07f150..8854584 100644 --- a/src/client/api/objects/play.vala +++ b/src/client/api/objects/play.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Play : YaMObject { /* Объект для отправки фидбека о прослушивании трека diff --git a/src/client/api/objects/playlist/case_forms.vala b/src/client/api/objects/playlist/case_forms.vala index 6128fe3..c2a18f5 100644 --- a/src/client/api/objects/playlist/case_forms.vala +++ b/src/client/api/objects/playlist/case_forms.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class CaseForms : YaMObject { public string? nominative { get; set; } diff --git a/src/client/api/objects/playlist/liked_playlist.vala b/src/client/api/objects/playlist/liked_playlist.vala index cd5f499..71c6c0f 100644 --- a/src/client/api/objects/playlist/liked_playlist.vala +++ b/src/client/api/objects/playlist/liked_playlist.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class LikedPlaylist : YaMObject { public Playlist playlist { get; set; } diff --git a/src/client/api/objects/playlist/made_for.vala b/src/client/api/objects/playlist/made_for.vala index 2fdc371..1790f55 100644 --- a/src/client/api/objects/playlist/made_for.vala +++ b/src/client/api/objects/playlist/made_for.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class MadeFor : YaMObject { public User user_info { get; set; } diff --git a/src/client/api/objects/playlist/play_counter.vala b/src/client/api/objects/playlist/play_counter.vala index 40906d2..fb544d0 100644 --- a/src/client/api/objects/playlist/play_counter.vala +++ b/src/client/api/objects/playlist/play_counter.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class PlayCounter : YaMObject { public int value { get; set; } diff --git a/src/client/api/objects/playlist/playlist.vala b/src/client/api/objects/playlist/playlist.vala index 88faba1..64efa5d 100644 --- a/src/client/api/objects/playlist/playlist.vala +++ b/src/client/api/objects/playlist/playlist.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Playlist : YaMObject, HasCover, HasID, HasTrackList { public bool is_public { diff --git a/src/client/api/objects/playlist/playlist_absence.vala b/src/client/api/objects/playlist/playlist_absence.vala index e946a3a..6bf39bc 100644 --- a/src/client/api/objects/playlist/playlist_absence.vala +++ b/src/client/api/objects/playlist/playlist_absence.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class PlaylistAbsence : YaMObject { public int kind { get; set; } diff --git a/src/client/api/objects/playlist/playlist_recommendations.vala b/src/client/api/objects/playlist/playlist_recommendations.vala index 09354cf..6d606a4 100644 --- a/src/client/api/objects/playlist/playlist_recommendations.vala +++ b/src/client/api/objects/playlist/playlist_recommendations.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class PlaylistRecommendations : YaMObject { public ArrayList tracks { get; set; default = new ArrayList (); } diff --git a/src/client/api/objects/playlist/user.vala b/src/client/api/objects/playlist/user.vala index 858ee97..a38ed82 100644 --- a/src/client/api/objects/playlist/user.vala +++ b/src/client/api/objects/playlist/user.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class User : YaMObject { public string uid { get; set; } diff --git a/src/client/api/objects/queue/context.vala b/src/client/api/objects/queue/context.vala index a067582..5ed832c 100644 --- a/src/client/api/objects/queue/context.vala +++ b/src/client/api/objects/queue/context.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Context : YaMObject { public string? id { get; set; default = null; } diff --git a/src/client/api/objects/queue/queue.vala b/src/client/api/objects/queue/queue.vala index 85f164a..74f49f7 100644 --- a/src/client/api/objects/queue/queue.vala +++ b/src/client/api/objects/queue/queue.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Queue : YaMObject { public string id { get; set; } diff --git a/src/client/api/objects/queue/short_queue.vala b/src/client/api/objects/queue/short_queue.vala index fa62713..0130a66 100644 --- a/src/client/api/objects/queue/short_queue.vala +++ b/src/client/api/objects/queue/short_queue.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class ShortQueue : YaMObject { public string id { get; set; } diff --git a/src/client/api/objects/rotor/ad_params.vala b/src/client/api/objects/rotor/ad_params.vala index 13057b8..7d4f551 100644 --- a/src/client/api/objects/rotor/ad_params.vala +++ b/src/client/api/objects/rotor/ad_params.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class AdParams : YaMObject { public string partner_id { get; set; } diff --git a/src/client/api/objects/rotor/dashboard.vala b/src/client/api/objects/rotor/dashboard.vala index e86e2c7..173a417 100644 --- a/src/client/api/objects/rotor/dashboard.vala +++ b/src/client/api/objects/rotor/dashboard.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class Dashboard : YaMObject { public string dashboard_id { get; set; } diff --git a/src/client/api/objects/rotor/discrete_scale.vala b/src/client/api/objects/rotor/discrete_scale.vala index 9517cd5..de6679a 100644 --- a/src/client/api/objects/rotor/discrete_scale.vala +++ b/src/client/api/objects/rotor/discrete_scale.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class DiscreteScale : YaMObject { public string type_ { get; set; } diff --git a/src/client/api/objects/rotor/enum.vala b/src/client/api/objects/rotor/enum.vala index b142288..3edf402 100644 --- a/src/client/api/objects/rotor/enum.vala +++ b/src/client/api/objects/rotor/enum.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class Enum : YaMObject { public string type_ { get; set; } diff --git a/src/client/api/objects/rotor/id.vala b/src/client/api/objects/rotor/id.vala index dd6b597..9194ffa 100644 --- a/src/client/api/objects/rotor/id.vala +++ b/src/client/api/objects/rotor/id.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class Id : YaMObject { public string type_ { get; set; } diff --git a/src/client/api/objects/rotor/restrictions.vala b/src/client/api/objects/rotor/restrictions.vala index 12011a8..15d77dc 100644 --- a/src/client/api/objects/rotor/restrictions.vala +++ b/src/client/api/objects/rotor/restrictions.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class Restrictions : YaMObject { public Enum language { get; set; } diff --git a/src/client/api/objects/rotor/sequence.vala b/src/client/api/objects/rotor/sequence.vala index 18aa19c..bd71072 100644 --- a/src/client/api/objects/rotor/sequence.vala +++ b/src/client/api/objects/rotor/sequence.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class Sequence : YaMObject { public string type_ { get; set; } diff --git a/src/client/api/objects/rotor/settings.vala b/src/client/api/objects/rotor/settings.vala index 04b9892..02e9135 100644 --- a/src/client/api/objects/rotor/settings.vala +++ b/src/client/api/objects/rotor/settings.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { namespace StationLanguage { public const string NOT_RUSSIAN = "not-russian"; public const string RUSSIAN = "russian"; diff --git a/src/client/api/objects/rotor/station.vala b/src/client/api/objects/rotor/station.vala index 9c07171..20629dc 100644 --- a/src/client/api/objects/rotor/station.vala +++ b/src/client/api/objects/rotor/station.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class Station : YaMObject { public Id id { get; set; } diff --git a/src/client/api/objects/rotor/station_data.vala b/src/client/api/objects/rotor/station_data.vala index 4719b81..d09f1d3 100644 --- a/src/client/api/objects/rotor/station_data.vala +++ b/src/client/api/objects/rotor/station_data.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class StationData : YaMObject { public string name { get; set; } diff --git a/src/client/api/objects/rotor/station_info.vala b/src/client/api/objects/rotor/station_info.vala index 9e06eb2..6c4a094 100644 --- a/src/client/api/objects/rotor/station_info.vala +++ b/src/client/api/objects/rotor/station_info.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class StationInfo : YaMObject { public Station station { get; set; } diff --git a/src/client/api/objects/rotor/station_tracks.vala b/src/client/api/objects/rotor/station_tracks.vala index 209a922..5e7c272 100644 --- a/src/client/api/objects/rotor/station_tracks.vala +++ b/src/client/api/objects/rotor/station_tracks.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class StationTracks : YaMObject { public Id id { get; set; } diff --git a/src/client/api/objects/rotor/value.vala b/src/client/api/objects/rotor/value.vala index f2b86df..a709ed4 100644 --- a/src/client/api/objects/rotor/value.vala +++ b/src/client/api/objects/rotor/value.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class Value : YaMObject { public string value { get; set; } diff --git a/src/client/api/objects/rotor/wave.vala b/src/client/api/objects/rotor/wave.vala index 70decc1..61801bc 100644 --- a/src/client/api/objects/rotor/wave.vala +++ b/src/client/api/objects/rotor/wave.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.YaMAPI.Rotor { +namespace Cassette.Client.YaMAPI.Rotor { public class Wave : YaMObject { diff --git a/src/client/api/objects/track/chart.vala b/src/client/api/objects/track/chart.vala index b32306d..2471c2d 100644 --- a/src/client/api/objects/track/chart.vala +++ b/src/client/api/objects/track/chart.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class Chart : YaMObject { public string id { get; set; } diff --git a/src/client/api/objects/track/lyrics_info.vala b/src/client/api/objects/track/lyrics_info.vala index 17125af..2cdec23 100644 --- a/src/client/api/objects/track/lyrics_info.vala +++ b/src/client/api/objects/track/lyrics_info.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class LyricsInfo : YaMObject { public bool has_available_sync_lyrics { get; set; } diff --git a/src/client/api/objects/track/meta_data.vala b/src/client/api/objects/track/meta_data.vala index 54e753e..7908c02 100644 --- a/src/client/api/objects/track/meta_data.vala +++ b/src/client/api/objects/track/meta_data.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class MetaData : YaMObject { public string? album { get; set; } diff --git a/src/client/api/objects/track/track.vala b/src/client/api/objects/track/track.vala index 78067e2..b80beb4 100644 --- a/src/client/api/objects/track/track.vala +++ b/src/client/api/objects/track/track.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public enum TrackType { MUSIC, AUDIOBOOK, diff --git a/src/client/api/objects/track_heap.vala b/src/client/api/objects/track_heap.vala index 3ebb872..cea7951 100644 --- a/src/client/api/objects/track_heap.vala +++ b/src/client/api/objects/track_heap.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class TrackHeap : YaMObject, HasID, HasTrackList { public string oid { diff --git a/src/client/api/objects/track_short.vala b/src/client/api/objects/track_short.vala index 6b635b7..3db2994 100644 --- a/src/client/api/objects/track_short.vala +++ b/src/client/api/objects/track_short.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class TrackShort : YaMObject { public string id { get; set; } diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 0639407..8db82d6 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -16,9 +16,9 @@ */ -using CassetteClient.YaMAPI.Rotor; +using Cassette.Client.YaMAPI.Rotor; -namespace CassetteClient.YaMAPI { +namespace Cassette.Client.YaMAPI { public class YaMClient : Object { diff --git a/src/client/cachier/cachier.vala b/src/client/cachier/cachier.vala index b4d4eea..d75ffdc 100644 --- a/src/client/cachier/cachier.vala +++ b/src/client/cachier/cachier.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.Cachier { +namespace Cassette.Client.Cachier { public class Cachier : Object { public ArrayList job_list { get; default = new ArrayList (); } diff --git a/src/client/cachier/controller.vala b/src/client/cachier/controller.vala index fdcb7c5..7b9c0ed 100644 --- a/src/client/cachier/controller.vala +++ b/src/client/cachier/controller.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.Cachier { +namespace Cassette.Client.Cachier { public enum ContentType { TRACK, PLAYLIST, diff --git a/src/client/cachier/info_db.vala b/src/client/cachier/info_db.vala index 1f6f53b..51f4ddf 100644 --- a/src/client/cachier/info_db.vala +++ b/src/client/cachier/info_db.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient.Cachier { +namespace Cassette.Client.Cachier { public class InfoDB : Object { /* Класс-обёртка для базы данных diff --git a/src/client/cachier/job.vala b/src/client/cachier/job.vala index 60d89ee..dfead64 100644 --- a/src/client/cachier/job.vala +++ b/src/client/cachier/job.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.Cachier { +namespace Cassette.Client.Cachier { public enum JobDoneStatus { SUCCESS, diff --git a/src/client/cachier/storager.vala b/src/client/cachier/storager.vala index 366b9a3..59b7a6d 100644 --- a/src/client/cachier/storager.vala +++ b/src/client/cachier/storager.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient.Cachier { +namespace Cassette.Client.Cachier { namespace Filenames { public const string ROOT_DIR_NAME = "cassette"; diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 7bda668..1e23abc 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -18,7 +18,7 @@ using Gee; -namespace CassetteClient { +namespace Cassette.Client { /** * Перечисление нейм кейсов. @@ -30,8 +30,8 @@ namespace CassetteClient { } /** - * Класс для сериализации и десериализации объектов ``CassetteClient.YaMObject``. - * Умеет работать с ``CassetteClient.YaMAPI.YaMObject``, ``Gee.ArrayList`` и ``GLib.Value`` + * Класс для сериализации и десериализации объектов ``Cassette.Client.YaMObject``. + * Умеет работать с ``Cassette.Client.YaMAPI.YaMObject``, ``Gee.ArrayList`` и ``GLib.Value`` */ public class Jsoner : Object { @@ -49,7 +49,7 @@ namespace CassetteClient { /** * Базовый конструктор класса. Выполняет инициализацию для десериализации. * Принимает json строку. В случе ошибки при парсинге, - * выбрасывает ``CassetteCLient.ClientError.PARSE_ERROR`` + * выбрасывает ``Cassette.Client.ClientError.PARSE_ERROR`` * * @param json_string json строка * @param sub_members массив имён элементов json, по которым нужно пройти до целевой ноды @@ -77,7 +77,7 @@ namespace CassetteClient { /** * Конструктор класса. Выполняет инициализацию для десериализации. * Принимает json строку в виде байтов, объекта ``GLib.Bytes``. В случе ошибки при парсинге, - * выбрасывает ``CassetteCLient.ClientError.PARSE_ERROR`` + * выбрасывает ``Cassette.Client.ClientError.PARSE_ERROR`` * * @param bytes json строка в виде байтов, объекта ``GLib.Bytes`` * @param sub_members массив имён элементов json, по которым нужно пройти до целевой ноды @@ -90,7 +90,7 @@ namespace CassetteClient { /** * Конструктор класса. Выполняет инициализацию для десериализации. * Принимает json строку в виде байтов, массива ``uint8``. В случе ошибки при парсинге, - * выбрасывает ``CassetteCLient.ClientError.PARSE_ERROR`` + * выбрасывает ``Cassette.Client.ClientError.PARSE_ERROR`` * * @param bytes json строка в виде байтов, массива ``uint8`` * @param sub_members массив имён элементов json, по которым нужно пройти до целевой ноды @@ -102,7 +102,7 @@ namespace CassetteClient { /** * Функция для выполнения перехода в переданной ноде по названиям элементов. - * В случае, если элемент не найден, будет выкинута ``CassetteClient.ClientError.PARSE_ERROR`` + * В случае, если элемент не найден, будет выкинута ``Cassette.Client.ClientError.PARSE_ERROR`` * * @param node исходная json нода * @param sub_members массив "путь" имён элементов, по которому нужно пройти @@ -171,7 +171,7 @@ namespace CassetteClient { /** * Функция для сериализации ``Gee.ArrayList``. * Элементы списка могут быть: - * - ``CassetteClient.YaMObject`` + * - ``Cassette.Client.YaMObject`` * - ``string`` * - ``int32`` * - ``int64`` @@ -219,10 +219,10 @@ namespace CassetteClient { } /** - * Функция для сериализации ``CassetteClient.YaMAPI.YaMObject`` или ``null``. + * Функция для сериализации ``Cassette.Client.YaMAPI.YaMObject`` или ``null``. * * @param builder объект ``Json.Builder`` - * @param yam_obj объект ``CassetteClient.YaMAPI.YaMObject``, который нужно сериализовать. + * @param yam_obj объект ``Cassette.Client.YaMAPI.YaMObject``, который нужно сериализовать. * Может быть ``null`` * @param names_case нейм кейс имён элементов в json строке */ @@ -370,7 +370,7 @@ namespace CassetteClient { } /** - * Метод для десериализации объекта ``CassetteClient.YaMAPI.YaMObject``. + * Метод для десериализации объекта ``Cassette.Client.YaMAPI.YaMObject``. * * @param obj_type тип объекта, по которому будет десериализован json * @param node нода, которая будет десериализована. Будет использовано свойство diff --git a/src/client/likes_controller.vala b/src/client/likes_controller.vala index a7edbff..d21deb2 100644 --- a/src/client/likes_controller.vala +++ b/src/client/likes_controller.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient { +namespace Cassette.Client { public enum LikableType { TRACK, diff --git a/src/client/logger.vala b/src/client/logger.vala index 30a0c50..cf4a9e5 100644 --- a/src/client/logger.vala +++ b/src/client/logger.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient { +namespace Cassette.Client { public enum LogLevel { // Включают все логи полностью diff --git a/src/client/player/mpris.vala b/src/client/player/mpris.vala index c4ca449..092eeff 100644 --- a/src/client/player/mpris.vala +++ b/src/client/player/mpris.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient.Mpris { +namespace Cassette.Client.Mpris { [DBus (name = "org.mpris.MediaPlayer2")] public class Mpris : Object { public bool can_quit { get; set; default = true; } diff --git a/src/client/player/player.vala b/src/client/player/player.vala index 488683f..a71097a 100644 --- a/src/client/player/player.vala +++ b/src/client/player/player.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.Player { +namespace Cassette.Client.Player { public enum PlayerModeType { NONE, diff --git a/src/client/player/player_flow.vala b/src/client/player/player_flow.vala index f9466ba..c4aebea 100644 --- a/src/client/player/player_flow.vala +++ b/src/client/player/player_flow.vala @@ -17,7 +17,7 @@ using Gee; -namespace CassetteClient.Player { +namespace Cassette.Client.Player { public class PlayerFlow : PlayerMode { public Player player { get; construct; } diff --git a/src/client/player/player_track_list.vala b/src/client/player/player_track_list.vala index 59c6433..e978bb5 100644 --- a/src/client/player/player_track_list.vala +++ b/src/client/player/player_track_list.vala @@ -16,10 +16,10 @@ */ -using CassetteClient.YaMAPI; +using Cassette.Client.YaMAPI; using Gee; -namespace CassetteClient.Player { +namespace Cassette.Client.Player { public class PlayerTrackList : PlayerMode { YaMAPI.Queue _queue; diff --git a/src/client/player/track_local.vala b/src/client/player/track_local.vala index feebe48..8f4f459 100644 --- a/src/client/player/track_local.vala +++ b/src/client/player/track_local.vala @@ -15,10 +15,10 @@ * SPDX-License-Identifier: GPL-3.0-only */ -using CassetteClient.YaMAPI; +using Cassette.Client.YaMAPI; using Gee; -namespace CassetteClient { +namespace Cassette.Client { public class TrackLocal : Track { construct { diff --git a/src/client/soup_wrapper.vala b/src/client/soup_wrapper.vala index f339f42..c03c82f 100644 --- a/src/client/soup_wrapper.vala +++ b/src/client/soup_wrapper.vala @@ -17,7 +17,7 @@ using Soup; -namespace CassetteClient { +namespace Cassette.Client { public errordomain BadStatusCodeError { BAD_REQUEST = 400, diff --git a/src/client/talkers/abstract_talker.vala b/src/client/talkers/abstract_talker.vala index 12668c0..01062f3 100644 --- a/src/client/talkers/abstract_talker.vala +++ b/src/client/talkers/abstract_talker.vala @@ -16,7 +16,7 @@ */ -namespace CassetteClient { +namespace Cassette.Client { public abstract class AbstractTalker : Object { /* diff --git a/src/client/talkers/yam_talker.vala b/src/client/talkers/yam_talker.vala index 6592915..f1c2e0a 100644 --- a/src/client/talkers/yam_talker.vala +++ b/src/client/talkers/yam_talker.vala @@ -16,10 +16,10 @@ */ -using CassetteClient.YaMAPI; +using Cassette.Client.YaMAPI; -namespace CassetteClient { +namespace Cassette.Client { delegate void NetFunc () throws ClientError, BadStatusCodeError; @@ -218,8 +218,8 @@ namespace CassetteClient { client.update_position_queue (queue.id, queue.current_index); }); - } catch (CassetteClient.BadStatusCodeError e) { - if (e is CassetteClient.BadStatusCodeError.NOT_FOUND) { + } catch (Cassette.Client.BadStatusCodeError e) { + if (e is Cassette.Client.BadStatusCodeError.NOT_FOUND) { queue.id = null; update_position_queue (queue); diff --git a/src/client/threader.vala b/src/client/threader.vala index e05e59c..a2a316a 100644 --- a/src/client/threader.vala +++ b/src/client/threader.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient { +namespace Cassette.Client { public delegate void ThreadFunc (); // public delegate void SourceFunc (); diff --git a/src/client/utils.vala b/src/client/utils.vala index 0c7fe41..80b03b0 100644 --- a/src/client/utils.vala +++ b/src/client/utils.vala @@ -19,7 +19,7 @@ using Gee; -namespace CassetteClient { +namespace Cassette.Client { namespace YaMAPI.Rotor { namespace FeedbackType { diff --git a/src/client/yam_object.vala b/src/client/yam_object.vala index 668c0ae..0dd6ff0 100644 --- a/src/client/yam_object.vala +++ b/src/client/yam_object.vala @@ -15,14 +15,14 @@ * SPDX-License-Identifier: GPL-3.0-only */ -namespace CassetteClient { +namespace Cassette.Client { public delegate void ObjectChangedFunc (YaMObject yam_obj); /** * Интерфейс объектов, имеющих уникальный идентификатор. * Существует, так как, например - * ``CassetteClient.YaMAPI.Playlist`` имеют составной id, разделенный + * ``Cassette.Client.YaMAPI.Playlist`` имеют составной id, разделенный * на свойства uid и kind */ public interface HasID : YaMObject { diff --git a/src/main_window.vala b/src/main_window.vala index 70cfd4b..eb62403 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { @@ -61,7 +61,7 @@ namespace Cassette { [GtkChild] unowned Adw.HeaderBar header_bar; - int reconnect_timer = CassetteClient.TIMEOUT; + int reconnect_timer = Cassette.Client.TIMEOUT; public Pager pager { get; construct; } @@ -286,7 +286,7 @@ namespace Cassette { } else { info_banner.sensitive = true; info_banner.button_label = _("Reconnect"); - reconnect_timer = CassetteClient.TIMEOUT; + reconnect_timer = Cassette.Client.TIMEOUT; return Source.REMOVE; } }); diff --git a/src/pager.vala b/src/pager.vala index 7f948b4..ec02492 100644 --- a/src/pager.vala +++ b/src/pager.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using Gee; diff --git a/src/utils.vala b/src/utils.vala index 0f5d579..64853eb 100644 --- a/src/utils.vala +++ b/src/utils.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -using CassetteClient; +using Cassette.Client; using Gee; namespace Cassette { @@ -129,7 +129,7 @@ namespace Cassette { * * @param track_info объект трека, ссылка на который будет скопирована в буфер обмена */ - public static void track_share (CassetteClient.YaMAPI.Track track_info) { + public static void track_share (Cassette.Client.YaMAPI.Track track_info) { string url = @"https://music.yandex.ru/album/$(track_info.albums[0].id)/track/$(track_info.id)?utm_medium=copy_link"; Gdk.Display? display = Gdk.Display.get_default (); @@ -143,7 +143,7 @@ namespace Cassette { * * @param playlist_info объект плейлиста, ссылка на который будет скопирована в буфер обмена */ - public static void playlist_share (CassetteClient.YaMAPI.Playlist playlist_info) { + public static void playlist_share (Cassette.Client.YaMAPI.Playlist playlist_info) { string url = @"https://music.yandex.ru/users/$(playlist_info.owner.login)/playlists/$(playlist_info.kind)?utm_medium=copy_link"; Gdk.Display? display = Gdk.Display.get_default (); diff --git a/src/widgets/account_info_window.vala b/src/widgets/account_info_window.vala index eafed46..b3ed70a 100644 --- a/src/widgets/account_info_window.vala +++ b/src/widgets/account_info_window.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/begin/begin_view.vala b/src/widgets/begin/begin_view.vala index edf7045..ead15f0 100644 --- a/src/widgets/begin/begin_view.vala +++ b/src/widgets/begin/begin_view.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using WebKit; diff --git a/src/widgets/begin/begin_window.vala b/src/widgets/begin/begin_window.vala index f32e241..d8abce8 100644 --- a/src/widgets/begin/begin_window.vala +++ b/src/widgets/begin/begin_window.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using WebKit; diff --git a/src/widgets/cache_indicator/cache_indicator.vala b/src/widgets/cache_indicator/cache_indicator.vala index 48992c3..70dda69 100644 --- a/src/widgets/cache_indicator/cache_indicator.vala +++ b/src/widgets/cache_indicator/cache_indicator.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { [GtkTemplate (ui = "/com/github/Rirusha/Cassette/ui/cache_indicator.ui")] diff --git a/src/widgets/cache_indicator/job_info_badge.vala b/src/widgets/cache_indicator/job_info_badge.vala index ccea2b4..8895e29 100644 --- a/src/widgets/cache_indicator/job_info_badge.vala +++ b/src/widgets/cache_indicator/job_info_badge.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { [GtkTemplate (ui = "/com/github/Rirusha/Cassette/ui/job_info_badge.ui")] diff --git a/src/widgets/cover_image.vala b/src/widgets/cover_image.vala index ab8f76c..364dd2c 100644 --- a/src/widgets/cover_image.vala +++ b/src/widgets/cover_image.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using Gee; diff --git a/src/widgets/dislike_button.vala b/src/widgets/dislike_button.vala index 4e8c0be..6784a21 100644 --- a/src/widgets/dislike_button.vala +++ b/src/widgets/dislike_button.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using Gee; diff --git a/src/widgets/info_marks.vala b/src/widgets/info_marks.vala index 44a1335..498605c 100644 --- a/src/widgets/info_marks.vala +++ b/src/widgets/info_marks.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using Gee; diff --git a/src/widgets/like_button.vala b/src/widgets/like_button.vala index b1c0c89..3edf2fc 100644 --- a/src/widgets/like_button.vala +++ b/src/widgets/like_button.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using Gee; diff --git a/src/widgets/lyrics/lyrics_panel.vala b/src/widgets/lyrics/lyrics_panel.vala index dbc9af7..909840f 100644 --- a/src/widgets/lyrics/lyrics_panel.vala +++ b/src/widgets/lyrics/lyrics_panel.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using Gee; diff --git a/src/widgets/play_button/play_button_action.vala b/src/widgets/play_button/play_button_action.vala index 6f353f8..cac61de 100644 --- a/src/widgets/play_button/play_button_action.vala +++ b/src/widgets/play_button/play_button_action.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/play_button/play_button_context.vala b/src/widgets/play_button/play_button_context.vala index e709d61..977db03 100644 --- a/src/widgets/play_button/play_button_context.vala +++ b/src/widgets/play_button/play_button_context.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/play_button/play_button_track.vala b/src/widgets/play_button/play_button_track.vala index ab1b723..c1cbb47 100644 --- a/src/widgets/play_button/play_button_track.vala +++ b/src/widgets/play_button/play_button_track.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/player_bar.vala b/src/widgets/player_bar.vala index 8a1e7db..c647af0 100644 --- a/src/widgets/player_bar.vala +++ b/src/widgets/player_bar.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { @@ -97,8 +97,8 @@ namespace Cassette { carousel.page_changed.connect (on_carousel_page_changed); - CassetteClient.settings.bind ("volume", volume_button, "volume", SettingsBindFlags.DEFAULT); - CassetteClient.settings.bind ("mute", volume_button, "mute", SettingsBindFlags.DEFAULT); + Cassette.Client.settings.bind ("volume", volume_button, "volume", SettingsBindFlags.DEFAULT); + Cassette.Client.settings.bind ("mute", volume_button, "mute", SettingsBindFlags.DEFAULT); slider.change_value.connect ((scroll_type, new_value) => { player.seek ((int) (new_value * 1000)); diff --git a/src/widgets/playlist_choose_window.vala b/src/widgets/playlist_choose_window.vala index 6bb4d5b..8852888 100644 --- a/src/widgets/playlist_choose_window.vala +++ b/src/widgets/playlist_choose_window.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/playlist_create_button.vala b/src/widgets/playlist_create_button.vala index f1bc801..7b6eeff 100644 --- a/src/widgets/playlist_create_button.vala +++ b/src/widgets/playlist_create_button.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/playlist_micro.vala b/src/widgets/playlist_micro.vala index 062352d..7c43754 100644 --- a/src/widgets/playlist_micro.vala +++ b/src/widgets/playlist_micro.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/playlist_row.vala b/src/widgets/playlist_row.vala index 1b68491..2338665 100644 --- a/src/widgets/playlist_row.vala +++ b/src/widgets/playlist_row.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/preferences/cache_deletion_preferences.vala b/src/widgets/preferences/cache_deletion_preferences.vala index 90cdbe2..492ba98 100644 --- a/src/widgets/preferences/cache_deletion_preferences.vala +++ b/src/widgets/preferences/cache_deletion_preferences.vala @@ -16,8 +16,8 @@ */ -using CassetteClient; -using CassetteClient.Cachier; +using Cassette.Client; +using Cassette.Client.Cachier; using Gee; diff --git a/src/widgets/preferences/custom_page_preferences.vala b/src/widgets/preferences/custom_page_preferences.vala index d9874b4..efb399e 100644 --- a/src/widgets/preferences/custom_page_preferences.vala +++ b/src/widgets/preferences/custom_page_preferences.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/preferences/custom_pages_preferences.vala b/src/widgets/preferences/custom_pages_preferences.vala index ad816bd..b44e844 100644 --- a/src/widgets/preferences/custom_pages_preferences.vala +++ b/src/widgets/preferences/custom_pages_preferences.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using Gee; diff --git a/src/widgets/preferences/preferences_window.vala b/src/widgets/preferences/preferences_window.vala index c77b133..fa1b7ac 100644 --- a/src/widgets/preferences/preferences_window.vala +++ b/src/widgets/preferences/preferences_window.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { @@ -62,34 +62,34 @@ namespace Cassette { show_save_stack_switch.notify["active"].connect (on_show_save_stack_switch_changed); - max_thread_number_spin.value = CassetteClient.settings.get_int ("max-thread-number"); - can_cache_switch.active = CassetteClient.settings.get_boolean ("can-cache"); - can_cache_switch.active = CassetteClient.settings.get_boolean ("debug-mode"); + max_thread_number_spin.value = Cassette.Client.settings.get_int ("max-thread-number"); + can_cache_switch.active = Cassette.Client.settings.get_boolean ("can-cache"); + can_cache_switch.active = Cassette.Client.settings.get_boolean ("debug-mode"); can_cache_switch.notify["active"].connect (() => { if (!can_cache_switch.active) { ask_about_deletion (); } else { - CassetteClient.settings.set_boolean ("can-cache", true); + Cassette.Client.settings.set_boolean ("can-cache", true); } }); - CassetteClient.settings.bind ("add-tracks-to-start", add_tracks_to_start_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.Client.settings.bind ("add-tracks-to-start", add_tracks_to_start_switch, "active", GLib.SettingsBindFlags.DEFAULT); Cassette.settings.bind ("available-visible", available_visible_switch, "active", GLib.SettingsBindFlags.DEFAULT); Cassette.settings.bind ("child-visible", child_visible_switch, "active", GLib.SettingsBindFlags.DEFAULT); Cassette.settings.bind ("explicit-visible", explicit_visible_switch, "active", GLib.SettingsBindFlags.DEFAULT); Cassette.settings.bind ("show-replaced-mark", show_replaced_mark_switch, "active", GLib.SettingsBindFlags.DEFAULT); Cassette.settings.bind ("show-save-stack", show_save_stack_switch, "active", GLib.SettingsBindFlags.DEFAULT); Cassette.settings.bind ("show-temp-save-mark", show_temp_save_stack_switch, "active", GLib.SettingsBindFlags.DEFAULT); - CassetteClient.settings.bind ("is-hq", is_hq_switch, "active", GLib.SettingsBindFlags.DEFAULT); - CassetteClient.settings.bind ("debug-mode", debug_mode_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.Client.settings.bind ("is-hq", is_hq_switch, "active", GLib.SettingsBindFlags.DEFAULT); + Cassette.Client.settings.bind ("debug-mode", debug_mode_switch, "active", GLib.SettingsBindFlags.DEFAULT); Cassette.settings.bind ("show-main", show_main_switch, "active", GLib.SettingsBindFlags.DEFAULT); Cassette.settings.bind ("show-liked", show_liked_switch, "active", GLib.SettingsBindFlags.DEFAULT); Cassette.settings.bind ("show-playlists", show_playlists_switch, "active", GLib.SettingsBindFlags.DEFAULT); max_thread_number_spin.notify["value"].connect (() => { - CassetteClient.settings.set_int ("max-thread-number", (int) max_thread_number_spin.value); + Cassette.Client.settings.set_int ("max-thread-number", (int) max_thread_number_spin.value); }); on_show_save_stack_switch_changed (); @@ -124,7 +124,7 @@ namespace Cassette { dialog.response.connect ((dialog, response) => { if (response == "delete") { deletion_preferences.delete_files (true); - CassetteClient.settings.set_boolean ("can-cache", can_cache_switch.active); + Cassette.Client.settings.set_boolean ("can-cache", can_cache_switch.active); } else { can_cache_switch.active = true; } diff --git a/src/widgets/save_stack.vala b/src/widgets/save_stack.vala index ae9fc4e..f43a941 100644 --- a/src/widgets/save_stack.vala +++ b/src/widgets/save_stack.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/sidebar.vala b/src/widgets/sidebar.vala index d353298..d3db6fb 100644 --- a/src/widgets/sidebar.vala +++ b/src/widgets/sidebar.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/track_detailed.vala b/src/widgets/track_detailed.vala index 66b46f4..d85d9aa 100644 --- a/src/widgets/track_detailed.vala +++ b/src/widgets/track_detailed.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using Gee; diff --git a/src/widgets/track_info_panel.vala b/src/widgets/track_info_panel.vala index 93c1214..9ba30c6 100644 --- a/src/widgets/track_info_panel.vala +++ b/src/widgets/track_info_panel.vala @@ -15,7 +15,7 @@ * SPDX-License-Identifier: GPL-3.0-only */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/track_list/track_list.vala b/src/widgets/track_list/track_list.vala index f78ff40..8b8cd57 100644 --- a/src/widgets/track_list/track_list.vala +++ b/src/widgets/track_list/track_list.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; using Gee; namespace Cassette { diff --git a/src/widgets/track_row_contents/track_default_content.vala b/src/widgets/track_row_contents/track_default_content.vala index 5542a8e..e5446a7 100644 --- a/src/widgets/track_row_contents/track_default_content.vala +++ b/src/widgets/track_row_contents/track_default_content.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/track_row_contents/track_queue_content.vala b/src/widgets/track_row_contents/track_queue_content.vala index caec015..9956bca 100644 --- a/src/widgets/track_row_contents/track_queue_content.vala +++ b/src/widgets/track_row_contents/track_queue_content.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/track_row_contents/track_row_content.vala b/src/widgets/track_row_contents/track_row_content.vala index 94ec4f7..e063f54 100644 --- a/src/widgets/track_row_contents/track_row_content.vala +++ b/src/widgets/track_row_contents/track_row_content.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; diff --git a/src/widgets/track_row_contents/ya_track_row_content.vala b/src/widgets/track_row_contents/ya_track_row_content.vala index 939827e..d8b7692 100644 --- a/src/widgets/track_row_contents/ya_track_row_content.vala +++ b/src/widgets/track_row_contents/ya_track_row_content.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/views/cachiable_view.vala b/src/widgets/views/cachiable_view.vala index 663ddac..d71c810 100644 --- a/src/widgets/views/cachiable_view.vala +++ b/src/widgets/views/cachiable_view.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { public abstract class CachiableView : HasTracksView { diff --git a/src/widgets/views/cant_show_view.vala b/src/widgets/views/cant_show_view.vala index 6a541dc..ced1b5f 100644 --- a/src/widgets/views/cant_show_view.vala +++ b/src/widgets/views/cant_show_view.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/views/devel_view.vala b/src/widgets/views/devel_view.vala index 8fdc1d9..2688acf 100644 --- a/src/widgets/views/devel_view.vala +++ b/src/widgets/views/devel_view.vala @@ -32,9 +32,9 @@ namespace Cassette { void on_ultra_button_clicked () { var client = yam_talker.client; - // var a = client.get_rotor_info (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); - // client.rotor_feedback_started (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); - // var tra = client.get_station_tracks (CassetteClient.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); + // var a = client.get_rotor_info (Cassette.Client.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); + // client.rotor_feedback_started (Cassette.Client.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); + // var tra = client.get_station_tracks (Cassette.Client.YaMAPI.Rotor.StationType.ON_YOUR_WAVE); // var n = client.get_rotor_dashboard (); // foreach (var m in n.stations) { diff --git a/src/widgets/views/disliked_tracks_view.vala b/src/widgets/views/disliked_tracks_view.vala index ce187ea..f82bdca 100644 --- a/src/widgets/views/disliked_tracks_view.vala +++ b/src/widgets/views/disliked_tracks_view.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/views/playlist_view.vala b/src/widgets/views/playlist_view.vala index 95d7148..fdb3ee2 100644 --- a/src/widgets/views/playlist_view.vala +++ b/src/widgets/views/playlist_view.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/views/playlists_view.vala b/src/widgets/views/playlists_view.vala index 1ee355b..c78bfc8 100644 --- a/src/widgets/views/playlists_view.vala +++ b/src/widgets/views/playlists_view.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/src/widgets/views/with_tracks_view.vala b/src/widgets/views/with_tracks_view.vala index 0f0a581..4ec7442 100644 --- a/src/widgets/views/with_tracks_view.vala +++ b/src/widgets/views/with_tracks_view.vala @@ -16,7 +16,7 @@ */ -using CassetteClient; +using Cassette.Client; namespace Cassette { diff --git a/tests/client_utils_test.vala b/tests/client_utils_test.vala index f3ecadf..814362d 100644 --- a/tests/client_utils_test.vala +++ b/tests/client_utils_test.vala @@ -1,4 +1,4 @@ -using CassetteClient; +using Cassette.Client; public int main (string[] args) { diff --git a/tests/info_db_test.vala b/tests/info_db_test.vala index e057011..0574c43 100644 --- a/tests/info_db_test.vala +++ b/tests/info_db_test.vala @@ -1,5 +1,5 @@ -using CassetteClient; -using CassetteClient.Cachier; +using Cassette.Client; +using Cassette.Client.Cachier; public int main (string[] args) { diff --git a/tests/jsoner_test.vala b/tests/jsoner_test.vala index 3351934..6feaa98 100644 --- a/tests/jsoner_test.vala +++ b/tests/jsoner_test.vala @@ -1,5 +1,5 @@ -using CassetteClient; -using CassetteClient.YaMAPI; +using Cassette.Client; +using Cassette.Client.YaMAPI; diff --git a/tests/storager_test.vala b/tests/storager_test.vala index 6a2b808..4b614b6 100644 --- a/tests/storager_test.vala +++ b/tests/storager_test.vala @@ -1,6 +1,6 @@ -using CassetteClient; -using CassetteClient.Cachier; -using CassetteClient.YaMAPI; +using Cassette.Client; +using Cassette.Client.Cachier; +using Cassette.Client.YaMAPI; public static Storager storager; From 5aea879ed4d4e124fd158f22208106921e28091c Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 05:46:26 +0300 Subject: [PATCH 175/854] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20?= =?UTF-8?q?=D1=81=D1=82=D0=B0=D1=80=D1=8B=D0=B5=20=D1=81=D1=82=D1=80=D0=BE?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5=D1=82=D1=80?= =?UTF-8?q?=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/ui/preferences_window.ui | 17 ++--------------- src/widgets/preferences/preferences_window.vala | 4 ---- 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/data/ui/preferences_window.ui b/data/ui/preferences_window.ui index 29f8df5..4c1cb29 100644 --- a/data/ui/preferences_window.ui +++ b/data/ui/preferences_window.ui @@ -28,14 +28,6 @@ - - - - Try to load queue every window activation - - Every time it is expanded or the focus changes from another window queue will loaded from the device on which you listened to music last time. - - @@ -122,16 +114,11 @@ - + diff --git a/src/widgets/preferences/preferences_window.vala b/src/widgets/preferences/preferences_window.vala index fa1b7ac..a7868cb 100644 --- a/src/widgets/preferences/preferences_window.vala +++ b/src/widgets/preferences/preferences_window.vala @@ -47,15 +47,11 @@ namespace Cassette { [GtkChild] unowned Adw.SwitchRow can_cache_switch; [GtkChild] - unowned Adw.SwitchRow try_load_queue_every_activate_switch; - [GtkChild] unowned Adw.SpinRow max_thread_number_spin; [GtkChild] unowned CacheDeletionPreferences deletion_preferences; [GtkChild] unowned Adw.SwitchRow debug_mode_switch; - [GtkChild] - unowned Adw.SwitchRow force_mobile_switch; construct { // deletion_preferences.pref_win = this; From d018d76ee17f146d230c4b3c9e9db1fe35ab589a Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 06:33:23 +0300 Subject: [PATCH 176/854] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D1=8B=20=D0=B4=D0=B8=D0=B7=D0=BB=D0=B0=D0=B9=D0=BA?= =?UTF-8?q?=D0=BD=D1=83=D1=82=D1=8B=D0=B5=20=D0=BF=D0=BE=D0=BB=D1=8C=D0=B7?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB=D0=B5=D0=BC=20=D0=B8=D1=81?= =?UTF-8?q?=D0=BF=D0=BE=D0=BB=D0=BD=D0=B8=D1=82=D0=B5=D0=BB=D0=B8=20=D0=B2?= =?UTF-8?q?=20=D0=BE=D0=B1=D1=85=D0=B5=D0=BA=D1=82=20Cassette.Client.YaMAP?= =?UTF-8?q?I.Library.AllIds?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/objects/library/all_ids.vala | 7 ++++++- src/client/jsoner.vala | 10 ++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/client/api/objects/library/all_ids.vala b/src/client/api/objects/library/all_ids.vala index 5ccd597..49c5a1b 100644 --- a/src/client/api/objects/library/all_ids.vala +++ b/src/client/api/objects/library/all_ids.vala @@ -35,7 +35,12 @@ namespace Cassette.Client.YaMAPI.Library { /* * Любимые исполнители пользователя */ - public ArrayList artists { get; set; default = new ArrayList (); } + public ArrayList liked_artists { get; set; default = new ArrayList (); } + + /* + * Нелюбимые исполнители пользователя + */ + public ArrayList disliked_artists { get; set; default = new ArrayList (); } /* * Любимые альбомы пользователя diff --git a/src/client/jsoner.vala b/src/client/jsoner.vala index 1e23abc..95e46af 100644 --- a/src/client/jsoner.vala +++ b/src/client/jsoner.vala @@ -354,6 +354,16 @@ namespace Cassette.Client { } } + } else if (ld_type_name == "artists") { + foreach (var ld_val_name in ld_type_obj.get_members ()) { + if (ld_type_obj.get_int_member (ld_val_name) == 1) { + lib_data.liked_artists.add (ld_val_name); + + } else { + lib_data.disliked_artists.add (ld_val_name); + } + } + } else { var tval = Value (Type.OBJECT); lib_data.get_property (camel2kebab (ld_type_name), ref tval); From 16e89c09624672d2af57e07c683208e4033fc10e Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 06:45:18 +0300 Subject: [PATCH 177/854] =?UTF-8?q?=D0=A0=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D1=82=D1=8C=20=D0=B8=D0=BD=D1=82=D0=B5=D1=80?= =?UTF-8?q?=D1=84=D0=B5=D0=B9=D1=81=20Cassette.Client.HasId=20=D0=B2=20?= =?UTF-8?q?=D0=BA=D0=BB=D0=B0=D1=81=D1=81=D0=B5=20Cassette.Client.YaMAPI.A?= =?UTF-8?q?ccount.About?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/api/objects/account/about.vala | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/client/api/objects/account/about.vala b/src/client/api/objects/account/about.vala index d3e89f9..fd5b22b 100644 --- a/src/client/api/objects/account/about.vala +++ b/src/client/api/objects/account/about.vala @@ -31,7 +31,13 @@ namespace Cassette.Client.YaMAPI.Account { const string ISLANDS_200 = "islands-200"; } - public class About : YaMObject { + public class About : YaMObject, HasID { + + public string oid { + owned get { + return uid; + } + } /* * Id пользователя From 2674a37b421993211b9d47224a8fe905342080b3 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 08:20:43 +0300 Subject: [PATCH 178/854] =?UTF-8?q?=D0=97=D0=B0=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20AccountInfo=20=D0=BD=D0=B0=20Account.About?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/style.css | 8 +- data/ui/account_info_window.blp | 118 +++--------------- src/client/api/objects/account/about.vala | 19 ++- .../api/objects/account_info/account.vala | 42 ------- .../objects/account_info/account_info.vala | 59 --------- .../api/objects/account_info/alert.vala | 29 ----- .../objects/account_info/alert_button.vala | 26 ---- .../api/objects/account_info/avatar_info.vala | 78 ------------ .../objects/account_info/passport_phone.vala | 27 ---- .../api/objects/account_info/permissions.vala | 30 ----- src/client/api/objects/account_info/plus.vala | 28 ----- src/client/api/yam_client.vala | 32 +---- src/client/meson.build | 9 -- src/client/talkers/yam_talker.vala | 10 +- src/main_window.vala | 2 +- src/widgets/account_info_window.vala | 84 +++---------- 16 files changed, 64 insertions(+), 537 deletions(-) delete mode 100644 src/client/api/objects/account_info/account.vala delete mode 100644 src/client/api/objects/account_info/account_info.vala delete mode 100644 src/client/api/objects/account_info/alert.vala delete mode 100644 src/client/api/objects/account_info/alert_button.vala delete mode 100644 src/client/api/objects/account_info/avatar_info.vala delete mode 100644 src/client/api/objects/account_info/passport_phone.vala delete mode 100644 src/client/api/objects/account_info/permissions.vala delete mode 100644 src/client/api/objects/account_info/plus.vala diff --git a/data/style.css b/data/style.css index 02f543f..e2f1370 100644 --- a/data/style.css +++ b/data/style.css @@ -34,4 +34,10 @@ frame { .disliked { color: #ff1f2a; -} \ No newline at end of file +} + +.plus-background { + border-radius: 16px; + color: white; + background-image: linear-gradient(90deg,#ff5c4d,#eb469f 30%,#8341ef 75%,#3f68f9); +} diff --git a/data/ui/account_info_window.blp b/data/ui/account_info_window.blp index 3ecb78b..0e9fa80 100644 --- a/data/ui/account_info_window.blp +++ b/data/ui/account_info_window.blp @@ -2,142 +2,60 @@ using Gtk 4.0; using Adw 1; template $CassetteAccountInfoWindow : Adw.Window { - content: Adw.ToolbarView { + title: _("Account information"); + default-width: 300; + default-height: 420; + + content: Adw.ToolbarView { [top] - Adw.HeaderBar { - } - content: - Adw.Clamp { + Adw.HeaderBar { } + + content: Adw.Clamp { margin-top: 16; margin-bottom: 16; margin-start: 16; margin-end: 16; - maximum-size: 600; + maximum-size: 900; Box { spacing: 32; + orientation: vertical; - Adw.Avatar avatar { - } + Adw.Avatar avatar { } Box { valign: center; orientation: vertical; spacing: 8; - Label login_format_label { + Label public_name_label { styles [ "title-1", ] - halign: start; + halign: center; hexpand: true; - visible: false; wrap: true; - label: C_("account info window", "Login: %s"); } - Label phone_format_label { + Label login_label { styles [ "title-2", ] - halign: start; + halign: center; hexpand: true; - visible: false; - ellipsize: middle; - label: C_("account info window", "Phone number: %s"); + wrap: true; } Label plus_label { styles [ - "title-4", - "accent", + "title-4" ] - halign: start; + halign: center; hexpand: true; - visible: false; wrap: true; - label: C_("account info window", "Has Plus"); - } - - Separator { - styles [ - "spacer", - ] - } - - Label first_name_format_label { - styles [ - "title-4", - ] - - halign: start; - hexpand: true; - visible: false; - wrap: true; - label: C_("account info window", "First name: %s"); - } - - Label second_name_format_label { - styles [ - "title-4", - ] - - halign: start; - hexpand: true; - visible: false; - wrap: true; - label: C_("account info window", "Second name: %s"); - } - - Label display_name_format_label { - styles [ - "title-4", - ] - - halign: start; - hexpand: true; - visible: false; - wrap: true; - label: C_("account info window", "Display name: %s"); - } - - Label birthday_format_label { - styles [ - "title-4", - ] - - halign: start; - hexpand: true; - visible: false; - wrap: true; - label: C_("account info window", "Birthday: %s"); - } - - Separator { - styles [ - "spacer", - ] - } - - Label add_label { - styles [ - "title-4", - ] - - halign: start; - hexpand: true; - visible: false; - wrap: true; - label: C_("account info window", "Additional options:"); - } - - Box options_box { - orientation: vertical; - spacing: 4; - visible: false; } } } diff --git a/src/client/api/objects/account/about.vala b/src/client/api/objects/account/about.vala index fd5b22b..d781b9b 100644 --- a/src/client/api/objects/account/about.vala +++ b/src/client/api/objects/account/about.vala @@ -31,7 +31,7 @@ namespace Cassette.Client.YaMAPI.Account { const string ISLANDS_200 = "islands-200"; } - public class About : YaMObject, HasID { + public class About : YaMObject, HasCover, HasID { public string oid { owned get { @@ -47,12 +47,12 @@ namespace Cassette.Client.YaMAPI.Account { /* * Имеет ли пользователь активную подписку Я.Плюс */ - public bool has_plus { get; set; } + public bool has_plus { get; set; default = false; } /* * Логин пользователя */ - public string login { get; set; } + public string login { get; set; default = ""; } /* * Id аватара пользователя @@ -67,7 +67,7 @@ namespace Cassette.Client.YaMAPI.Account { /* * Публичное имя пользователя */ - public string public_name { get; set; } + public string public_name { get; set; default = ""; } /* * Является ли аккаунт детским @@ -113,5 +113,16 @@ namespace Cassette.Client.YaMAPI.Account { avatar_size ); } + + public Gee.ArrayList get_cover_items_by_size (int size) { + var uris = new Gee.ArrayList (); + + string avatar_uri = get_avatar_uri (size); + if (avatar_uri != null) { + uris.add (avatar_uri); + } + + return uris; + } } } diff --git a/src/client/api/objects/account_info/account.vala b/src/client/api/objects/account_info/account.vala deleted file mode 100644 index df8a317..0000000 --- a/src/client/api/objects/account_info/account.vala +++ /dev/null @@ -1,42 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -using Gee; - -namespace Cassette.Client.YaMAPI { - public class AccountStatus : YaMObject { - - public string uid { get; set; } - public string? login { get; set; } - public int region { get; set; } - public string? full_name { get; set; } - public string? second_name { get; set; } - public string? first_name { get; set; } - public string? display_name { get; set; } - public string? birthday { get; set; } - public bool service_available { get; set; } - public ArrayList passport_phones { get; set; default = new ArrayList (); } - public bool child { get; set; } - - public string get_user_name () { - if (display_name != null) { - return display_name; - } - return full_name; - } - } -} diff --git a/src/client/api/objects/account_info/account_info.vala b/src/client/api/objects/account_info/account_info.vala deleted file mode 100644 index 5f4084c..0000000 --- a/src/client/api/objects/account_info/account_info.vala +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU Geneqral Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -using Gee; - -namespace Cassette.Client.YaMAPI { - - public class AccountInfo : YaMObject, HasID, HasCover { - - public string oid { - owned get { - return account.uid; - } - } - - public AccountStatus account { get; set; default = new AccountStatus (); } - public Permissions permissions { get; set; } - public bool subeditor { get; set; } - public int subeditor_level { get; set; } - public bool pretrial_active { get; set; } - public Plus plus { get; set; default = new Plus (); } - public ArrayList has_options { get; set; default = new ArrayList (); } - public string? default_email { get; set; } - public int skips_per_hours { get; set; } - public bool station_exists { get; set; } - public Rotor.StationData? station_data { get; set; } - public Alert? bar_below { get; set; } - public AvatarInfo avatar_info { get; set; } - - public AccountInfo () { - Object (); - } - - public Gee.ArrayList get_cover_items_by_size (int size) { - var uris = new Gee.ArrayList (); - - string avatar_uri = avatar_info.get_avatar_uri (size); - if (avatar_info != null) { - uris.add (avatar_uri); - } - - return uris; - } - } -} diff --git a/src/client/api/objects/account_info/alert.vala b/src/client/api/objects/account_info/alert.vala deleted file mode 100644 index 68db503..0000000 --- a/src/client/api/objects/account_info/alert.vala +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -namespace Cassette.Client.YaMAPI { - public class Alert : YaMObject { - - public string alert_id { get; set; } - public string text { get; set; } - public string bg_color { get; set; } - public string text_color { get; set; } - public string alert_type { get; set; } - public AlertButton button { get; set; } - public bool close_button { get; set; } - } -} diff --git a/src/client/api/objects/account_info/alert_button.vala b/src/client/api/objects/account_info/alert_button.vala deleted file mode 100644 index 5b6654d..0000000 --- a/src/client/api/objects/account_info/alert_button.vala +++ /dev/null @@ -1,26 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -namespace Cassette.Client.YaMAPI { - public class AlertButton : YaMObject { - - public string text { get; set; } - public string bg_color { get; set; } - public string text_color { get; set; } - public string uri { get; set; } - } -} diff --git a/src/client/api/objects/account_info/avatar_info.vala b/src/client/api/objects/account_info/avatar_info.vala deleted file mode 100644 index d550183..0000000 --- a/src/client/api/objects/account_info/avatar_info.vala +++ /dev/null @@ -1,78 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -namespace Cassette.Client.YaMAPI { - namespace AvatarSize { - const string ISLANDS_SMALL = "islands-small"; - const string ISLANDS_34 = "islands-34"; - const string ISLANDS_MIDDLE = "islands-middle"; - const string ISLANDS_50 = "islands-50"; - const string ISLANDS_RETINA_SMALL = "islands-retina-small"; - const string ISLANDS_68 = "islands-68"; - const string ISLANDS_75 = "islands-75"; - const string ISLANDS_RETINA_MIDDLE = "islands-retina-middle"; - const string ISLANDS_RETINA_50 = "islands-retina-50"; - const string ISLANDS_200 = "islands-200"; - } - - public class AvatarInfo : YaMObject { - - public string? default_avatar_id { get; set; } - public bool is_avatar_empty { get; set; } - - public AvatarInfo () { - Object (); - } - - public static string num_size_to_avatar_size (int size) { - switch (size) { - case 28: - return AvatarSize.ISLANDS_SMALL; - case 34: - return AvatarSize.ISLANDS_34; - case 42: - return AvatarSize.ISLANDS_MIDDLE; - case 50: - return AvatarSize.ISLANDS_50; - case 56: - return AvatarSize.ISLANDS_RETINA_SMALL; - case 68: - return AvatarSize.ISLANDS_68; - case 75: - return AvatarSize.ISLANDS_75; - case 84: - return AvatarSize.ISLANDS_RETINA_MIDDLE; - case 100: - return AvatarSize.ISLANDS_RETINA_50; - case 200: - return AvatarSize.ISLANDS_200; - default: - assert_not_reached (); - } - } - - public string? get_avatar_uri (int size = 200) { - if (is_avatar_empty) { - return null; - } - - var avatar_size = num_size_to_avatar_size (size); - - return @"https://avatars.yandex.net/get-yapic/$default_avatar_id/$avatar_size"; - } - } -} diff --git a/src/client/api/objects/account_info/passport_phone.vala b/src/client/api/objects/account_info/passport_phone.vala deleted file mode 100644 index bc1d120..0000000 --- a/src/client/api/objects/account_info/passport_phone.vala +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -namespace Cassette.Client.YaMAPI { - public class PassportPhone : YaMObject { - - public string phone { get; set; } - - public PassportPhone () { - Object (); - } - } -} diff --git a/src/client/api/objects/account_info/permissions.vala b/src/client/api/objects/account_info/permissions.vala deleted file mode 100644 index b1f67ec..0000000 --- a/src/client/api/objects/account_info/permissions.vala +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -using Gee; - -namespace Cassette.Client.YaMAPI { - public class Permissions : YaMObject { - - public string? until { get; set; } - public ArrayList values { get; set; default = new ArrayList (); } - - public Permissions () { - Object (); - } - } -} diff --git a/src/client/api/objects/account_info/plus.vala b/src/client/api/objects/account_info/plus.vala deleted file mode 100644 index 0b05948..0000000 --- a/src/client/api/objects/account_info/plus.vala +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2023-2024 Rirusha - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * SPDX-License-Identifier: GPL-3.0-only - */ - - namespace Cassette.Client.YaMAPI { - public class Plus : YaMObject { - - public bool has_plus { get; set; default = false; } - public bool is_tutorial_completed { get; set; } - - public Plus () { - Object (); - } - } -} diff --git a/src/client/api/yam_client.vala b/src/client/api/yam_client.vala index 8db82d6..01373c4 100644 --- a/src/client/api/yam_client.vala +++ b/src/client/api/yam_client.vala @@ -26,7 +26,7 @@ namespace Cassette.Client.YaMAPI { public SoupWrapper soup_wrapper { get; construct; } - public AccountInfo? me { get; private set; default = null; } + public Account.About? me { get; private set; default = null; } public bool is_init_complete { get; set; default = false; } @@ -82,7 +82,7 @@ namespace Cassette.Client.YaMAPI { } ); - get_account_info (); + me = account_about (); is_init_complete = true; } @@ -96,39 +96,13 @@ namespace Cassette.Client.YaMAPI { throw new ClientError.AUTH_ERROR ("Auth Error"); } - uid = me.oid; + uid = me.uid; if (uid == null) { throw new ClientError.AUTH_ERROR ("Auth Error"); } } } - public AccountInfo get_account_info () throws ClientError, BadStatusCodeError { - if (me != null) { - return me; - } - - Bytes bytes = soup_wrapper.get_sync ( - @"$(YAM_BASE_URL)/account/status", - {"default"} - ); - var jsoner = Jsoner.from_bytes (bytes, {"result"}, Case.CAMEL); - - me = (AccountInfo) jsoner.deserialize_object (typeof (AccountInfo)); - - bytes = soup_wrapper.get_sync ( - "https://login.yandex.ru/info", - {"auth"}, - {{"format", "json"}}, - {{"Host", "login.yandex.ru"}} - ); - jsoner = Jsoner.from_bytes (bytes, null, Case.SNAKE); - - me.avatar_info = (AvatarInfo) jsoner.deserialize_object (typeof (AvatarInfo)); - - return me; - } - public Playlist get_playlist_info (owned string? uid = null, string kind = "3") throws ClientError, BadStatusCodeError { check_uid (ref uid); diff --git a/src/client/meson.build b/src/client/meson.build index bad7f2b..6036632 100644 --- a/src/client/meson.build +++ b/src/client/meson.build @@ -29,15 +29,6 @@ cassette_client_sources = files( 'api/objects/download_info.vala', 'api/objects/account/about.vala', 'api/objects/library/all_ids.vala', - 'api/objects/account_info/account_info.vala', - 'api/objects/account_info/avatar_info.vala', - 'api/objects/account_info/passport_phone.vala', - 'api/objects/account_info/plus.vala', - 'api/objects/account_info/alert.vala', - 'api/objects/account_info/alert_button.vala', - 'api/objects/account_info/plus.vala', - 'api/objects/account_info/account.vala', - 'api/objects/account_info/permissions.vala', 'api/objects/playlist/playlist_recommendations.vala', 'api/objects/playlist/playlist.vala', 'api/objects/playlist/user.vala', diff --git a/src/client/talkers/yam_talker.vala b/src/client/talkers/yam_talker.vala index f1c2e0a..9b6831d 100644 --- a/src/client/talkers/yam_talker.vala +++ b/src/client/talkers/yam_talker.vala @@ -42,8 +42,8 @@ namespace Cassette.Client { public signal void init_end (); - AccountInfo? _me = null; - public AccountInfo me { + Account.About? _me = null; + public Account.About me { owned get { if (_me != null) { return _me; @@ -53,11 +53,11 @@ namespace Cassette.Client { if (_me == null) { string my_uid = storager.db.get_additional_data ("me"); if (my_uid != null) { - _me = (AccountInfo) storager.load_object (typeof (AccountInfo), my_uid); + _me = (Account.About) storager.load_object (typeof (Account.About), my_uid); } if (_me == null) { - return new AccountInfo (); + return new Account.About (); } } @@ -80,7 +80,7 @@ namespace Cassette.Client { } public bool is_me (string? uid) { - return uid == null || uid == me.oid; + return uid == null || uid == me.uid; } public bool is_my_liked (string? uid, string kind) { diff --git a/src/main_window.vala b/src/main_window.vala index eb62403..8e74deb 100644 --- a/src/main_window.vala +++ b/src/main_window.vala @@ -295,7 +295,7 @@ namespace Cassette { } async void load_avatar () { - avatar.text = yam_talker.me.account.get_user_name (); + avatar.text = yam_talker.me.public_name; avatar.size = 22; var pixbuf = yield Cachier.get_image (yam_talker.me, 28); if (pixbuf != null) { diff --git a/src/widgets/account_info_window.vala b/src/widgets/account_info_window.vala index b3ed70a..b58bab4 100644 --- a/src/widgets/account_info_window.vala +++ b/src/widgets/account_info_window.vala @@ -25,93 +25,39 @@ namespace Cassette { [GtkChild] unowned Adw.Avatar avatar; [GtkChild] - unowned Gtk.Label login_format_label; - [GtkChild] - unowned Gtk.Label phone_format_label; + unowned Gtk.Label login_label; [GtkChild] unowned Gtk.Label plus_label; [GtkChild] - unowned Gtk.Label add_label; - [GtkChild] - unowned Gtk.Box options_box; - [GtkChild] - unowned Gtk.Label first_name_format_label; - [GtkChild] - unowned Gtk.Label second_name_format_label; - [GtkChild] - unowned Gtk.Label display_name_format_label; - [GtkChild] - unowned Gtk.Label birthday_format_label; + unowned Gtk.Label public_name_label; - public YaMAPI.AccountInfo account_info { get; construct; } + public YaMAPI.Account.About account_info { get; construct; } - public AccountInfoWindow (YaMAPI.AccountInfo account_info) { + public AccountInfoWindow (YaMAPI.Account.About account_info) { Object (account_info: account_info); } construct { load_avatar.begin (); - if (account_info.account.login != null) { - login_format_label.label = login_format_label.label.printf (account_info.account.login); - login_format_label.visible = true; + public_name_label.label = account_info.public_name; + login_label.label = account_info.login; + + if (account_info.has_plus) { + plus_label.label = " %s ".printf (_("Has Plus")); + plus_label.add_css_class ("plus-background"); + + } else { + plus_label.label = _("No Plus"); } - if (account_info.account.passport_phones.size != 0) { - phone_format_label.label = phone_format_label.label.printf (account_info.account.passport_phones[0].phone); - phone_format_label.visible = true; - } - - plus_label.visible = account_info.plus.has_plus; - - if (account_info.has_options.size != 0) { - add_label.visible = true; - options_box.visible = true; - - foreach (var option in account_info.has_options) { - string name; - - switch (option) { - case "bookmate": - name = "Bookmate"; - break; - default: - assert_not_reached (); - } - - var label = new Gtk.Label (name) { halign = Gtk.Align.START, margin_start = 4 }; - label.add_css_class ("title-5"); - options_box.append (label); - } - } - - if (account_info.account.first_name != null) { - first_name_format_label.label = first_name_format_label.label.printf (account_info.account.first_name); - first_name_format_label.visible = true; - } - - if (account_info.account.second_name != null) { - second_name_format_label.label = second_name_format_label.label.printf (account_info.account.second_name); - second_name_format_label.visible = true; - } - - if (account_info.account.display_name != null) { - display_name_format_label.label = display_name_format_label.label.printf (account_info.account.display_name); - display_name_format_label.visible = true; - } - - if (account_info.account.birthday != null) { - birthday_format_label.label = birthday_format_label.label.printf (account_info.account.birthday); - birthday_format_label.visible = true; - } - - if (Config.POSTFIX == ".Devel") { + if (Cassette.application.is_devel) { add_css_class ("devel"); } } async void load_avatar () { - avatar.text = account_info.account.get_user_name (); + avatar.text = account_info.public_name; avatar.size = 200; var pixbuf = yield Cachier.get_image (account_info, 200); if (pixbuf != null) { From f7b331cf14da2a7641408bb8dc40bb95bccc4d69 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 09:22:51 +0300 Subject: [PATCH 179/854] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=B4=D0=B8=D0=B7=D0=B0=D0=B9=D0=BD=20=D0=BA?= =?UTF-8?q?=D1=80=D0=B0=D0=B9=D0=BD=D0=B8=D1=85=20=D0=BA=D0=BD=D0=BE=D0=BF?= =?UTF-8?q?=D0=BE=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/ui/player_bar.blp | 9 +++------ data/ui/volume_button.blp | 12 ++++-------- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/data/ui/player_bar.blp b/data/ui/player_bar.blp index 22256b3..53d7c59 100644 --- a/data/ui/player_bar.blp +++ b/data/ui/player_bar.blp @@ -210,7 +210,7 @@ template $CassettePlayerBar : Adw.Bin { } Box { - spacing: 8; + spacing: 4; halign: end; $CassetteSaveStack save_stack { @@ -220,8 +220,7 @@ template $CassettePlayerBar : Adw.Bin { Button queue_show_button { styles [ - "flat", - "circular" + "flat" ] valign: center; @@ -231,7 +230,6 @@ template $CassettePlayerBar : Adw.Bin { $CassetteTrackOptionsButton track_options_button { is-flat: true; - is-circular: true; valign: center; } @@ -242,8 +240,7 @@ template $CassettePlayerBar : Adw.Bin { Button fullscreen_button { styles [ - "flat", - "circular" + "flat" ] valign: center; diff --git a/data/ui/volume_button.blp b/data/ui/volume_button.blp index e2c2c66..225daf7 100644 --- a/data/ui/volume_button.blp +++ b/data/ui/volume_button.blp @@ -26,8 +26,7 @@ Popover popover { ToggleButton equalaizer_button { styles [ - "flat", - "circular" + "flat" ] icon-name: "il-sound-wave-alt-symbolic"; @@ -35,8 +34,7 @@ Popover popover { Button volume_inc_button { styles [ - "flat", - "circular" + "flat" ] icon-name: "adwaita-list-add-symbolic"; @@ -57,8 +55,7 @@ Popover popover { Button volume_dec_button { styles [ - "flat", - "circular" + "flat" ] icon-name: "adwaita-list-remove-symbolic"; @@ -70,8 +67,7 @@ Popover popover { template $CassetteVolumeButton : Adw.Bin { MenuButton real_menu_button { styles [ - "flat", - "circular" + "flat" ] popover: popover; From e3823a1aa4a0ba5b4e57cbb4e5fb7ee1b8d0fbb5 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 09:24:12 +0300 Subject: [PATCH 180/854] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D0=BC=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D0=B8=D1=82=D1=8C=20=D1=84=D0=B0=D0=B9=D0=BB=20?= =?UTF-8?q?=D0=BC=D0=B0=D0=BD=D0=B8=D1=84=D0=B5=D1=81=D1=82=D0=B0=20=D0=B8?= =?UTF-8?q?=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8=D1=82=D1=8C=20=D0=B2=20?= =?UTF-8?q?=D0=BD=D1=91=D0=BC=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D1=8E=20Sdk?= =?UTF-8?q?=20=D0=B8=20Platform=20=D0=BD=D0=B0=20master?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json b/build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json index 3726490..01f3282 100644 --- a/build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json +++ b/build-aux/flatpak/io.github.Rirusha.Cassette.Devel.json @@ -1,10 +1,10 @@ { "id" : "io.github.Rirusha.Cassette.Devel", "runtime" : "org.gnome.Platform", - "runtime-version" : "45", + "runtime-version" : "master", "sdk" : "org.gnome.Sdk", "sdk-extensions" : [ - "org.freedesktop.Sdk.Extension.vala" + "org.freedesktop.Sdk.Extension.vala-nightly" ], "command" : "cassette", "finish-args" : [ From 8575aa65e1667121554ba7d43a239a6b1ae67a79 Mon Sep 17 00:00:00 2001 From: Vladimir Vaskov Date: Fri, 23 Feb 2024 10:51:55 +0300 Subject: [PATCH 181/854] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D0=B9=D1=82?= =?UTF-8?q?=D0=B8=20=D0=BD=D0=B0=20Adw.Dialog?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/io.github.Rirusha.Cassette.gresource.xml | 6 +- data/meson.build | 2 +- ...nfo_window.blp => account_info_dialog.blp} | 10 +-- data/ui/main_window.blp | 5 +- data/ui/player_bar.blp | 17 +++-- ...se_window.ui => playlist_choose_dialog.ui} | 11 ++- ...rences_window.ui => preferences_dialog.ui} | 74 +++++++++---------- data/ui/track_default_content.blp | 3 - data/ui/track_detailed.blp | 9 +-- src/application.vala | 13 +--- src/authenticator.vala | 11 +-- src/main_window.vala | 7 +- src/meson.build | 8 +- src/utils.vala | 12 +++ ...o_window.vala => account_info_dialog.vala} | 9 ++- .../{begin_window.vala => begin_dialog.vala} | 26 +++---- src/widgets/player_bar.vala | 11 +-- ...indow.vala => playlist_choose_dialog.vala} | 6 +- .../cache_deletion_preferences.vala | 5 +- ...es_window.vala => preferences_dialog.vala} | 11 ++- src/widgets/theme_switcher.vala | 0 src/widgets/track_detailed.vala | 5 +- .../track_default_content.vala | 5 +- .../track_queue_content.vala | 5 +- src/widgets/views/playlist_view.vala | 5 +- 25 files changed, 126 insertions(+), 150 deletions(-) rename data/ui/{account_info_window.blp => account_info_dialog.blp} (88%) rename data/ui/{playlist_choose_window.ui => playlist_choose_dialog.ui} (91%) rename data/ui/{preferences_window.ui => preferences_dialog.ui} (81%) rename src/widgets/{account_info_window.vala => account_info_dialog.vala} (88%) rename src/widgets/begin/{begin_window.vala => begin_dialog.vala} (59%) rename src/widgets/{playlist_choose_window.vala => playlist_choose_dialog.vala} (93%) rename src/widgets/preferences/{preferences_window.vala => preferences_dialog.vala} (95%) create mode 100644 src/widgets/theme_switcher.vala diff --git a/data/io.github.Rirusha.Cassette.gresource.xml b/data/io.github.Rirusha.Cassette.gresource.xml index a40a0d1..2932c53 100644 --- a/data/io.github.Rirusha.Cassette.gresource.xml +++ b/data/io.github.Rirusha.Cassette.gresource.xml @@ -13,7 +13,7 @@ ui/player_bar.ui ui/track_default_content.ui ui/track_queue_content.ui - ui/preferences_window.ui + ui/preferences_dialog.ui ui/track_row.ui ui/sidebar.ui ui/track_list.ui @@ -25,12 +25,12 @@ ui/lyrics_panel.ui ui/label_button.ui ui/save_stack.ui - ui/playlist_choose_window.ui + ui/playlist_choose_dialog.ui ui/playlist_row.ui ui/disliked_tracks_view.ui ui/playlist_create_button.ui ui/info_marks.ui - ui/account_info_window.ui + ui/account_info_dialog.ui ui/cache_deletion_preferences.ui ui/custom_pages_preferences.ui ui/custom_page_preferences.ui diff --git a/data/meson.build b/data/meson.build index cb8a8ff..1af48e1 100644 --- a/data/meson.build +++ b/data/meson.build @@ -38,7 +38,7 @@ endif blueprints = custom_target('blueprints', input: files( - 'ui/account_info_window.blp', + 'ui/account_info_dialog.blp', 'ui/player_bar.blp', 'ui/volume_button.blp', 'ui/main_window.blp', diff --git a/data/ui/account_info_window.blp b/data/ui/account_info_dialog.blp similarity index 88% rename from data/ui/account_info_window.blp rename to data/ui/account_info_dialog.blp index 0e9fa80..aa55272 100644 --- a/data/ui/account_info_window.blp +++ b/data/ui/account_info_dialog.blp @@ -1,12 +1,12 @@ using Gtk 4.0; using Adw 1; -template $CassetteAccountInfoWindow : Adw.Window { +template $CassetteAccountInfoDialog : Adw.Dialog { title: _("Account information"); - default-width: 300; - default-height: 420; + content-width: 300; + content-height: 420; - content: Adw.ToolbarView { + Adw.ToolbarView { [top] Adw.HeaderBar { } @@ -60,5 +60,5 @@ template $CassetteAccountInfoWindow : Adw.Window { } } }; - }; + } } diff --git a/data/ui/main_window.blp b/data/ui/main_window.blp index c237966..73cd73b 100644 --- a/data/ui/main_window.blp +++ b/data/ui/main_window.blp @@ -123,7 +123,10 @@ template $CassetteMainWindow : Adw.ApplicationWindow { StackPage { name: "done"; - child: Adw.ViewStack main_stack {}; + child: Adw.ViewStack main_stack { + vhomogeneous: false; + hhomogeneous: false; + }; } }; }; diff --git a/data/ui/player_bar.blp b/data/ui/player_bar.blp index 53d7c59..8cc81f0 100644 --- a/data/ui/player_bar.blp +++ b/data/ui/player_bar.blp @@ -156,7 +156,7 @@ template $CassettePlayerBar : Adw.Bin { } Box { - spacing: 8; + spacing: 4; Label current_time_mark { styles [ @@ -238,14 +238,15 @@ template $CassettePlayerBar : Adw.Bin { tooltip-text: _("Change volume"); } - Button fullscreen_button { - styles [ - "flat" - ] + // Button fullscreen_button { + // styles [ + // "flat" + // ] - valign: center; - icon-name: "adwaita-view-fullscreen-symbolic"; - } + // valign: center; + // visible: false; + // icon-name: "adwaita-view-fullscreen-symbolic"; + // } layout { column: 5; diff --git a/data/ui/playlist_choose_window.ui b/data/ui/playlist_choose_dialog.ui similarity index 91% rename from data/ui/playlist_choose_window.ui rename to data/ui/playlist_choose_dialog.ui index 0fa782e..d0c4a8e 100644 --- a/data/ui/playlist_choose_window.ui +++ b/data/ui/playlist_choose_dialog.ui @@ -2,12 +2,11 @@ -

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 diff --git a/data/images/second.png b/data/images/second.png deleted file mode 100644 index d175b2b79810efbef473d66553b291208922d475..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 163955 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�nhE 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ÎUsE7eNq##sL@ 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 z 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 diff --git a/data/images/third.png b/data/images/third.png deleted file mode 100644 index 8cb816915338cece9c87c0e6c79cbc6565b8748f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 147609 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 o*s - https://github.com/Rirusha/Cassette/blob/master/data/images/first.png?raw=true + https://github.com/Rirusha/Cassette/blob/master/data/images/1-liked.png?raw=true - https://github.com/Rirusha/Cassette/blob/master/data/images/second.png?raw=true + https://github.com/Rirusha/Cassette/blob/master/data/images/2-playlists.png?raw=true - https://github.com/Rirusha/Cassette/blob/master/data/images/third.png?raw=true + https://github.com/Rirusha/Cassette/blob/master/data/images/3-lyrics.png?raw=true - https://github.com/Rirusha/Cassette/blob/master/data/images/fourth.png?raw=true + https://github.com/Rirusha/Cassette/blob/master/data/images/4-queue.png?raw=true - https://github.com/Rirusha/Cassette/blob/master/data/images/fifth.png?raw=true + https://github.com/Rirusha/Cassette/blob/master/data/images/5-main-settings.png?raw=true